1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/bigtable/admin/v2/instance.proto 3 4package admin 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 _ "google.golang.org/genproto/googleapis/api/annotations" 12) 13 14// Reference imports to suppress errors if they are not otherwise used. 15var _ = proto.Marshal 16var _ = fmt.Errorf 17var _ = math.Inf 18 19// This is a compile-time assertion to ensure that this generated file 20// is compatible with the proto package it is being compiled against. 21// A compilation error at this line likely means your copy of the 22// proto package needs to be updated. 23const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 24 25// Possible states of an instance. 26type Instance_State int32 27 28const ( 29 // The state of the instance could not be determined. 30 Instance_STATE_NOT_KNOWN Instance_State = 0 31 // The instance has been successfully created and can serve requests 32 // to its tables. 33 Instance_READY Instance_State = 1 34 // The instance is currently being created, and may be destroyed 35 // if the creation process encounters an error. 36 Instance_CREATING Instance_State = 2 37) 38 39var Instance_State_name = map[int32]string{ 40 0: "STATE_NOT_KNOWN", 41 1: "READY", 42 2: "CREATING", 43} 44 45var Instance_State_value = map[string]int32{ 46 "STATE_NOT_KNOWN": 0, 47 "READY": 1, 48 "CREATING": 2, 49} 50 51func (x Instance_State) String() string { 52 return proto.EnumName(Instance_State_name, int32(x)) 53} 54 55func (Instance_State) EnumDescriptor() ([]byte, []int) { 56 return fileDescriptor_712127d2a900984d, []int{0, 0} 57} 58 59// The type of the instance. 60type Instance_Type int32 61 62const ( 63 // The type of the instance is unspecified. If set when creating an 64 // instance, a `PRODUCTION` instance will be created. If set when updating 65 // an instance, the type will be left unchanged. 66 Instance_TYPE_UNSPECIFIED Instance_Type = 0 67 // An instance meant for production use. `serve_nodes` must be set 68 // on the cluster. 69 Instance_PRODUCTION Instance_Type = 1 70 // The instance is meant for development and testing purposes only; it has 71 // no performance or uptime guarantees and is not covered by SLA. 72 // After a development instance is created, it can be upgraded by 73 // updating the instance to type `PRODUCTION`. An instance created 74 // as a production instance cannot be changed to a development instance. 75 // When creating a development instance, `serve_nodes` on the cluster must 76 // not be set. 77 Instance_DEVELOPMENT Instance_Type = 2 78) 79 80var Instance_Type_name = map[int32]string{ 81 0: "TYPE_UNSPECIFIED", 82 1: "PRODUCTION", 83 2: "DEVELOPMENT", 84} 85 86var Instance_Type_value = map[string]int32{ 87 "TYPE_UNSPECIFIED": 0, 88 "PRODUCTION": 1, 89 "DEVELOPMENT": 2, 90} 91 92func (x Instance_Type) String() string { 93 return proto.EnumName(Instance_Type_name, int32(x)) 94} 95 96func (Instance_Type) EnumDescriptor() ([]byte, []int) { 97 return fileDescriptor_712127d2a900984d, []int{0, 1} 98} 99 100// Possible states of a cluster. 101type Cluster_State int32 102 103const ( 104 // The state of the cluster could not be determined. 105 Cluster_STATE_NOT_KNOWN Cluster_State = 0 106 // The cluster has been successfully created and is ready to serve requests. 107 Cluster_READY Cluster_State = 1 108 // The cluster is currently being created, and may be destroyed 109 // if the creation process encounters an error. 110 // A cluster may not be able to serve requests while being created. 111 Cluster_CREATING Cluster_State = 2 112 // The cluster is currently being resized, and may revert to its previous 113 // node count if the process encounters an error. 114 // A cluster is still capable of serving requests while being resized, 115 // but may exhibit performance as if its number of allocated nodes is 116 // between the starting and requested states. 117 Cluster_RESIZING Cluster_State = 3 118 // The cluster has no backing nodes. The data (tables) still 119 // exist, but no operations can be performed on the cluster. 120 Cluster_DISABLED Cluster_State = 4 121) 122 123var Cluster_State_name = map[int32]string{ 124 0: "STATE_NOT_KNOWN", 125 1: "READY", 126 2: "CREATING", 127 3: "RESIZING", 128 4: "DISABLED", 129} 130 131var Cluster_State_value = map[string]int32{ 132 "STATE_NOT_KNOWN": 0, 133 "READY": 1, 134 "CREATING": 2, 135 "RESIZING": 3, 136 "DISABLED": 4, 137} 138 139func (x Cluster_State) String() string { 140 return proto.EnumName(Cluster_State_name, int32(x)) 141} 142 143func (Cluster_State) EnumDescriptor() ([]byte, []int) { 144 return fileDescriptor_712127d2a900984d, []int{1, 0} 145} 146 147// A collection of Bigtable [Tables][google.bigtable.admin.v2.Table] and 148// the resources that serve them. 149// All tables in an instance are served from a single 150// [Cluster][google.bigtable.admin.v2.Cluster]. 151type Instance struct { 152 // (`OutputOnly`) 153 // The unique name of the instance. Values are of the form 154 // `projects/<project>/instances/[a-z][a-z0-9\\-]+[a-z0-9]`. 155 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 156 // The descriptive name for this instance as it appears in UIs. 157 // Can be changed at any time, but should be kept globally unique 158 // to avoid confusion. 159 DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 160 // (`OutputOnly`) 161 // The current state of the instance. 162 State Instance_State `protobuf:"varint,3,opt,name=state,proto3,enum=google.bigtable.admin.v2.Instance_State" json:"state,omitempty"` 163 // The type of the instance. Defaults to `PRODUCTION`. 164 Type Instance_Type `protobuf:"varint,4,opt,name=type,proto3,enum=google.bigtable.admin.v2.Instance_Type" json:"type,omitempty"` 165 // Labels are a flexible and lightweight mechanism for organizing cloud 166 // resources into groups that reflect a customer's organizational needs and 167 // deployment strategies. They can be used to filter resources and aggregate 168 // metrics. 169 // 170 // * Label keys must be between 1 and 63 characters long and must conform to 171 // the regular expression: `[\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62}`. 172 // * Label values must be between 0 and 63 characters long and must conform to 173 // the regular expression: `[\p{Ll}\p{Lo}\p{N}_-]{0,63}`. 174 // * No more than 64 labels can be associated with a given resource. 175 // * Keys and values must both be under 128 bytes. 176 Labels map[string]string `protobuf:"bytes,5,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 177 XXX_NoUnkeyedLiteral struct{} `json:"-"` 178 XXX_unrecognized []byte `json:"-"` 179 XXX_sizecache int32 `json:"-"` 180} 181 182func (m *Instance) Reset() { *m = Instance{} } 183func (m *Instance) String() string { return proto.CompactTextString(m) } 184func (*Instance) ProtoMessage() {} 185func (*Instance) Descriptor() ([]byte, []int) { 186 return fileDescriptor_712127d2a900984d, []int{0} 187} 188 189func (m *Instance) XXX_Unmarshal(b []byte) error { 190 return xxx_messageInfo_Instance.Unmarshal(m, b) 191} 192func (m *Instance) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 193 return xxx_messageInfo_Instance.Marshal(b, m, deterministic) 194} 195func (m *Instance) XXX_Merge(src proto.Message) { 196 xxx_messageInfo_Instance.Merge(m, src) 197} 198func (m *Instance) XXX_Size() int { 199 return xxx_messageInfo_Instance.Size(m) 200} 201func (m *Instance) XXX_DiscardUnknown() { 202 xxx_messageInfo_Instance.DiscardUnknown(m) 203} 204 205var xxx_messageInfo_Instance proto.InternalMessageInfo 206 207func (m *Instance) GetName() string { 208 if m != nil { 209 return m.Name 210 } 211 return "" 212} 213 214func (m *Instance) GetDisplayName() string { 215 if m != nil { 216 return m.DisplayName 217 } 218 return "" 219} 220 221func (m *Instance) GetState() Instance_State { 222 if m != nil { 223 return m.State 224 } 225 return Instance_STATE_NOT_KNOWN 226} 227 228func (m *Instance) GetType() Instance_Type { 229 if m != nil { 230 return m.Type 231 } 232 return Instance_TYPE_UNSPECIFIED 233} 234 235func (m *Instance) GetLabels() map[string]string { 236 if m != nil { 237 return m.Labels 238 } 239 return nil 240} 241 242// A resizable group of nodes in a particular cloud location, capable 243// of serving all [Tables][google.bigtable.admin.v2.Table] in the parent 244// [Instance][google.bigtable.admin.v2.Instance]. 245type Cluster struct { 246 // (`OutputOnly`) 247 // The unique name of the cluster. Values are of the form 248 // `projects/<project>/instances/<instance>/clusters/[a-z][-a-z0-9]*`. 249 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 250 // (`CreationOnly`) 251 // The location where this cluster's nodes and storage reside. For best 252 // performance, clients should be located as close as possible to this 253 // cluster. Currently only zones are supported, so values should be of the 254 // form `projects/<project>/locations/<zone>`. 255 Location string `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"` 256 // (`OutputOnly`) 257 // The current state of the cluster. 258 State Cluster_State `protobuf:"varint,3,opt,name=state,proto3,enum=google.bigtable.admin.v2.Cluster_State" json:"state,omitempty"` 259 // The number of nodes allocated to this cluster. More nodes enable higher 260 // throughput and more consistent performance. 261 ServeNodes int32 `protobuf:"varint,4,opt,name=serve_nodes,json=serveNodes,proto3" json:"serve_nodes,omitempty"` 262 // (`CreationOnly`) 263 // The type of storage used by this cluster to serve its 264 // parent instance's tables, unless explicitly overridden. 265 DefaultStorageType StorageType `protobuf:"varint,5,opt,name=default_storage_type,json=defaultStorageType,proto3,enum=google.bigtable.admin.v2.StorageType" json:"default_storage_type,omitempty"` 266 XXX_NoUnkeyedLiteral struct{} `json:"-"` 267 XXX_unrecognized []byte `json:"-"` 268 XXX_sizecache int32 `json:"-"` 269} 270 271func (m *Cluster) Reset() { *m = Cluster{} } 272func (m *Cluster) String() string { return proto.CompactTextString(m) } 273func (*Cluster) ProtoMessage() {} 274func (*Cluster) Descriptor() ([]byte, []int) { 275 return fileDescriptor_712127d2a900984d, []int{1} 276} 277 278func (m *Cluster) XXX_Unmarshal(b []byte) error { 279 return xxx_messageInfo_Cluster.Unmarshal(m, b) 280} 281func (m *Cluster) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 282 return xxx_messageInfo_Cluster.Marshal(b, m, deterministic) 283} 284func (m *Cluster) XXX_Merge(src proto.Message) { 285 xxx_messageInfo_Cluster.Merge(m, src) 286} 287func (m *Cluster) XXX_Size() int { 288 return xxx_messageInfo_Cluster.Size(m) 289} 290func (m *Cluster) XXX_DiscardUnknown() { 291 xxx_messageInfo_Cluster.DiscardUnknown(m) 292} 293 294var xxx_messageInfo_Cluster proto.InternalMessageInfo 295 296func (m *Cluster) GetName() string { 297 if m != nil { 298 return m.Name 299 } 300 return "" 301} 302 303func (m *Cluster) GetLocation() string { 304 if m != nil { 305 return m.Location 306 } 307 return "" 308} 309 310func (m *Cluster) GetState() Cluster_State { 311 if m != nil { 312 return m.State 313 } 314 return Cluster_STATE_NOT_KNOWN 315} 316 317func (m *Cluster) GetServeNodes() int32 { 318 if m != nil { 319 return m.ServeNodes 320 } 321 return 0 322} 323 324func (m *Cluster) GetDefaultStorageType() StorageType { 325 if m != nil { 326 return m.DefaultStorageType 327 } 328 return StorageType_STORAGE_TYPE_UNSPECIFIED 329} 330 331// A configuration object describing how Cloud Bigtable should treat traffic 332// from a particular end user application. 333type AppProfile struct { 334 // (`OutputOnly`) 335 // The unique name of the app profile. Values are of the form 336 // `projects/<project>/instances/<instance>/appProfiles/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`. 337 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 338 // Strongly validated etag for optimistic concurrency control. Preserve the 339 // value returned from `GetAppProfile` when calling `UpdateAppProfile` to 340 // fail the request if there has been a modification in the mean time. The 341 // `update_mask` of the request need not include `etag` for this protection 342 // to apply. 343 // See [Wikipedia](https://en.wikipedia.org/wiki/HTTP_ETag) and 344 // [RFC 7232](https://tools.ietf.org/html/rfc7232#section-2.3) for more 345 // details. 346 Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"` 347 // Optional long form description of the use case for this AppProfile. 348 Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"` 349 // The routing policy for all read/write requests which use this app profile. 350 // A value must be explicitly set. 351 // 352 // Types that are valid to be assigned to RoutingPolicy: 353 // *AppProfile_MultiClusterRoutingUseAny_ 354 // *AppProfile_SingleClusterRouting_ 355 RoutingPolicy isAppProfile_RoutingPolicy `protobuf_oneof:"routing_policy"` 356 XXX_NoUnkeyedLiteral struct{} `json:"-"` 357 XXX_unrecognized []byte `json:"-"` 358 XXX_sizecache int32 `json:"-"` 359} 360 361func (m *AppProfile) Reset() { *m = AppProfile{} } 362func (m *AppProfile) String() string { return proto.CompactTextString(m) } 363func (*AppProfile) ProtoMessage() {} 364func (*AppProfile) Descriptor() ([]byte, []int) { 365 return fileDescriptor_712127d2a900984d, []int{2} 366} 367 368func (m *AppProfile) XXX_Unmarshal(b []byte) error { 369 return xxx_messageInfo_AppProfile.Unmarshal(m, b) 370} 371func (m *AppProfile) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 372 return xxx_messageInfo_AppProfile.Marshal(b, m, deterministic) 373} 374func (m *AppProfile) XXX_Merge(src proto.Message) { 375 xxx_messageInfo_AppProfile.Merge(m, src) 376} 377func (m *AppProfile) XXX_Size() int { 378 return xxx_messageInfo_AppProfile.Size(m) 379} 380func (m *AppProfile) XXX_DiscardUnknown() { 381 xxx_messageInfo_AppProfile.DiscardUnknown(m) 382} 383 384var xxx_messageInfo_AppProfile proto.InternalMessageInfo 385 386func (m *AppProfile) GetName() string { 387 if m != nil { 388 return m.Name 389 } 390 return "" 391} 392 393func (m *AppProfile) GetEtag() string { 394 if m != nil { 395 return m.Etag 396 } 397 return "" 398} 399 400func (m *AppProfile) GetDescription() string { 401 if m != nil { 402 return m.Description 403 } 404 return "" 405} 406 407type isAppProfile_RoutingPolicy interface { 408 isAppProfile_RoutingPolicy() 409} 410 411type AppProfile_MultiClusterRoutingUseAny_ struct { 412 MultiClusterRoutingUseAny *AppProfile_MultiClusterRoutingUseAny `protobuf:"bytes,5,opt,name=multi_cluster_routing_use_any,json=multiClusterRoutingUseAny,proto3,oneof"` 413} 414 415type AppProfile_SingleClusterRouting_ struct { 416 SingleClusterRouting *AppProfile_SingleClusterRouting `protobuf:"bytes,6,opt,name=single_cluster_routing,json=singleClusterRouting,proto3,oneof"` 417} 418 419func (*AppProfile_MultiClusterRoutingUseAny_) isAppProfile_RoutingPolicy() {} 420 421func (*AppProfile_SingleClusterRouting_) isAppProfile_RoutingPolicy() {} 422 423func (m *AppProfile) GetRoutingPolicy() isAppProfile_RoutingPolicy { 424 if m != nil { 425 return m.RoutingPolicy 426 } 427 return nil 428} 429 430func (m *AppProfile) GetMultiClusterRoutingUseAny() *AppProfile_MultiClusterRoutingUseAny { 431 if x, ok := m.GetRoutingPolicy().(*AppProfile_MultiClusterRoutingUseAny_); ok { 432 return x.MultiClusterRoutingUseAny 433 } 434 return nil 435} 436 437func (m *AppProfile) GetSingleClusterRouting() *AppProfile_SingleClusterRouting { 438 if x, ok := m.GetRoutingPolicy().(*AppProfile_SingleClusterRouting_); ok { 439 return x.SingleClusterRouting 440 } 441 return nil 442} 443 444// XXX_OneofWrappers is for the internal use of the proto package. 445func (*AppProfile) XXX_OneofWrappers() []interface{} { 446 return []interface{}{ 447 (*AppProfile_MultiClusterRoutingUseAny_)(nil), 448 (*AppProfile_SingleClusterRouting_)(nil), 449 } 450} 451 452// Read/write requests may be routed to any cluster in the instance, and will 453// fail over to another cluster in the event of transient errors or delays. 454// Choosing this option sacrifices read-your-writes consistency to improve 455// availability. 456type AppProfile_MultiClusterRoutingUseAny struct { 457 XXX_NoUnkeyedLiteral struct{} `json:"-"` 458 XXX_unrecognized []byte `json:"-"` 459 XXX_sizecache int32 `json:"-"` 460} 461 462func (m *AppProfile_MultiClusterRoutingUseAny) Reset() { *m = AppProfile_MultiClusterRoutingUseAny{} } 463func (m *AppProfile_MultiClusterRoutingUseAny) String() string { return proto.CompactTextString(m) } 464func (*AppProfile_MultiClusterRoutingUseAny) ProtoMessage() {} 465func (*AppProfile_MultiClusterRoutingUseAny) Descriptor() ([]byte, []int) { 466 return fileDescriptor_712127d2a900984d, []int{2, 0} 467} 468 469func (m *AppProfile_MultiClusterRoutingUseAny) XXX_Unmarshal(b []byte) error { 470 return xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny.Unmarshal(m, b) 471} 472func (m *AppProfile_MultiClusterRoutingUseAny) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 473 return xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny.Marshal(b, m, deterministic) 474} 475func (m *AppProfile_MultiClusterRoutingUseAny) XXX_Merge(src proto.Message) { 476 xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny.Merge(m, src) 477} 478func (m *AppProfile_MultiClusterRoutingUseAny) XXX_Size() int { 479 return xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny.Size(m) 480} 481func (m *AppProfile_MultiClusterRoutingUseAny) XXX_DiscardUnknown() { 482 xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny.DiscardUnknown(m) 483} 484 485var xxx_messageInfo_AppProfile_MultiClusterRoutingUseAny proto.InternalMessageInfo 486 487// Unconditionally routes all read/write requests to a specific cluster. 488// This option preserves read-your-writes consistency, but does not improve 489// availability. 490type AppProfile_SingleClusterRouting struct { 491 // The cluster to which read/write requests should be routed. 492 ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"` 493 // Whether or not `CheckAndMutateRow` and `ReadModifyWriteRow` requests are 494 // allowed by this app profile. It is unsafe to send these requests to 495 // the same table/row/column in multiple clusters. 496 AllowTransactionalWrites bool `protobuf:"varint,2,opt,name=allow_transactional_writes,json=allowTransactionalWrites,proto3" json:"allow_transactional_writes,omitempty"` 497 XXX_NoUnkeyedLiteral struct{} `json:"-"` 498 XXX_unrecognized []byte `json:"-"` 499 XXX_sizecache int32 `json:"-"` 500} 501 502func (m *AppProfile_SingleClusterRouting) Reset() { *m = AppProfile_SingleClusterRouting{} } 503func (m *AppProfile_SingleClusterRouting) String() string { return proto.CompactTextString(m) } 504func (*AppProfile_SingleClusterRouting) ProtoMessage() {} 505func (*AppProfile_SingleClusterRouting) Descriptor() ([]byte, []int) { 506 return fileDescriptor_712127d2a900984d, []int{2, 1} 507} 508 509func (m *AppProfile_SingleClusterRouting) XXX_Unmarshal(b []byte) error { 510 return xxx_messageInfo_AppProfile_SingleClusterRouting.Unmarshal(m, b) 511} 512func (m *AppProfile_SingleClusterRouting) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 513 return xxx_messageInfo_AppProfile_SingleClusterRouting.Marshal(b, m, deterministic) 514} 515func (m *AppProfile_SingleClusterRouting) XXX_Merge(src proto.Message) { 516 xxx_messageInfo_AppProfile_SingleClusterRouting.Merge(m, src) 517} 518func (m *AppProfile_SingleClusterRouting) XXX_Size() int { 519 return xxx_messageInfo_AppProfile_SingleClusterRouting.Size(m) 520} 521func (m *AppProfile_SingleClusterRouting) XXX_DiscardUnknown() { 522 xxx_messageInfo_AppProfile_SingleClusterRouting.DiscardUnknown(m) 523} 524 525var xxx_messageInfo_AppProfile_SingleClusterRouting proto.InternalMessageInfo 526 527func (m *AppProfile_SingleClusterRouting) GetClusterId() string { 528 if m != nil { 529 return m.ClusterId 530 } 531 return "" 532} 533 534func (m *AppProfile_SingleClusterRouting) GetAllowTransactionalWrites() bool { 535 if m != nil { 536 return m.AllowTransactionalWrites 537 } 538 return false 539} 540 541func init() { 542 proto.RegisterEnum("google.bigtable.admin.v2.Instance_State", Instance_State_name, Instance_State_value) 543 proto.RegisterEnum("google.bigtable.admin.v2.Instance_Type", Instance_Type_name, Instance_Type_value) 544 proto.RegisterEnum("google.bigtable.admin.v2.Cluster_State", Cluster_State_name, Cluster_State_value) 545 proto.RegisterType((*Instance)(nil), "google.bigtable.admin.v2.Instance") 546 proto.RegisterMapType((map[string]string)(nil), "google.bigtable.admin.v2.Instance.LabelsEntry") 547 proto.RegisterType((*Cluster)(nil), "google.bigtable.admin.v2.Cluster") 548 proto.RegisterType((*AppProfile)(nil), "google.bigtable.admin.v2.AppProfile") 549 proto.RegisterType((*AppProfile_MultiClusterRoutingUseAny)(nil), "google.bigtable.admin.v2.AppProfile.MultiClusterRoutingUseAny") 550 proto.RegisterType((*AppProfile_SingleClusterRouting)(nil), "google.bigtable.admin.v2.AppProfile.SingleClusterRouting") 551} 552 553func init() { 554 proto.RegisterFile("google/bigtable/admin/v2/instance.proto", fileDescriptor_712127d2a900984d) 555} 556 557var fileDescriptor_712127d2a900984d = []byte{ 558 // 765 bytes of a gzipped FileDescriptorProto 559 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x54, 0xdd, 0x8e, 0xdb, 0x44, 560 0x14, 0x8e, 0xf3, 0xb3, 0x64, 0x4f, 0xca, 0xd6, 0x1a, 0x22, 0x94, 0x86, 0x16, 0x42, 0xa4, 0xaa, 561 0xb9, 0x72, 0xa4, 0x20, 0x24, 0x4a, 0xd9, 0x4a, 0xf9, 0x71, 0x5b, 0x8b, 0xad, 0x13, 0x1c, 0xef, 562 0xae, 0xba, 0x8a, 0x64, 0x4d, 0xec, 0x59, 0xcb, 0x62, 0x32, 0x63, 0x3c, 0x93, 0xac, 0x7c, 0xcb, 563 0xe3, 0x70, 0xc5, 0x1d, 0x4f, 0xc0, 0x0d, 0x8f, 0xc3, 0x13, 0x20, 0x8f, 0x6d, 0x76, 0x17, 0x12, 564 0xb4, 0xe2, 0x6e, 0xce, 0x39, 0xdf, 0x77, 0xbe, 0x33, 0xdf, 0xb1, 0x07, 0x5e, 0x84, 0x9c, 0x87, 565 0x94, 0x0c, 0xd7, 0x51, 0x28, 0xf1, 0x9a, 0x92, 0x21, 0x0e, 0x36, 0x11, 0x1b, 0xee, 0x46, 0xc3, 566 0x88, 0x09, 0x89, 0x99, 0x4f, 0x8c, 0x38, 0xe1, 0x92, 0xa3, 0x4e, 0x0e, 0x34, 0x4a, 0xa0, 0xa1, 567 0x80, 0xc6, 0x6e, 0xd4, 0x7d, 0x5a, 0xb4, 0xc0, 0x71, 0x34, 0xc4, 0x8c, 0x71, 0x89, 0x65, 0xc4, 568 0x99, 0xc8, 0x79, 0xdd, 0xe7, 0x07, 0x05, 0x7c, 0xbe, 0xd9, 0x70, 0x96, 0xc3, 0xfa, 0xbf, 0xd5, 569 0xa0, 0x69, 0x15, 0x8a, 0x08, 0x41, 0x9d, 0xe1, 0x0d, 0xe9, 0x68, 0x3d, 0x6d, 0x70, 0xec, 0xa8, 570 0x33, 0xfa, 0x12, 0x1e, 0x05, 0x91, 0x88, 0x29, 0x4e, 0x3d, 0x55, 0xab, 0xaa, 0x5a, 0xab, 0xc8, 571 0xd9, 0x19, 0xe4, 0x35, 0x34, 0x84, 0xc4, 0x92, 0x74, 0x6a, 0x3d, 0x6d, 0x70, 0x32, 0x1a, 0x18, 572 0x87, 0x46, 0x36, 0x4a, 0x25, 0x63, 0x99, 0xe1, 0x9d, 0x9c, 0x86, 0x5e, 0x41, 0x5d, 0xa6, 0x31, 573 0xe9, 0xd4, 0x15, 0xfd, 0xc5, 0x03, 0xe8, 0x6e, 0x1a, 0x13, 0x47, 0x91, 0xd0, 0x1b, 0x38, 0xa2, 574 0x78, 0x4d, 0xa8, 0xe8, 0x34, 0x7a, 0xb5, 0x41, 0x6b, 0x64, 0x3c, 0x80, 0x7e, 0xa6, 0x08, 0x26, 575 0x93, 0x49, 0xea, 0x14, 0xec, 0xee, 0x4b, 0x68, 0xdd, 0x49, 0x23, 0x1d, 0x6a, 0x3f, 0x92, 0xb4, 576 0x70, 0x22, 0x3b, 0xa2, 0x36, 0x34, 0x76, 0x98, 0x6e, 0x4b, 0x07, 0xf2, 0xe0, 0xdb, 0xea, 0x37, 577 0x5a, 0xff, 0x6b, 0x68, 0xa8, 0xfb, 0xa0, 0x4f, 0xe0, 0xf1, 0xd2, 0x1d, 0xbb, 0xa6, 0x67, 0xcf, 578 0x5d, 0xef, 0x7b, 0x7b, 0x7e, 0x69, 0xeb, 0x15, 0x74, 0x0c, 0x0d, 0xc7, 0x1c, 0xcf, 0x3e, 0xe8, 579 0x1a, 0x7a, 0x04, 0xcd, 0xa9, 0x63, 0x8e, 0x5d, 0xcb, 0x7e, 0xab, 0x57, 0xfb, 0xa7, 0x50, 0xcf, 580 0xee, 0x81, 0xda, 0xa0, 0xbb, 0x1f, 0x16, 0xa6, 0x77, 0x6e, 0x2f, 0x17, 0xe6, 0xd4, 0x7a, 0x63, 581 0x99, 0x33, 0xbd, 0x82, 0x4e, 0x00, 0x16, 0xce, 0x7c, 0x76, 0x3e, 0x75, 0xad, 0xb9, 0xad, 0x6b, 582 0xe8, 0x31, 0xb4, 0x66, 0xe6, 0x85, 0x79, 0x36, 0x5f, 0xbc, 0x37, 0x6d, 0x57, 0xaf, 0xf6, 0x7f, 583 0xaf, 0xc2, 0x47, 0x53, 0xba, 0x15, 0x92, 0x24, 0x7b, 0x17, 0xd7, 0x85, 0x26, 0xe5, 0xbe, 0xfa, 584 0x26, 0x8a, 0x91, 0xff, 0x8e, 0xd1, 0xe9, 0xfd, 0x8d, 0xfd, 0x87, 0xe5, 0x85, 0xc2, 0xfd, 0x85, 585 0x7d, 0x01, 0x2d, 0x41, 0x92, 0x1d, 0xf1, 0x18, 0x0f, 0x88, 0x50, 0x7b, 0x6b, 0x38, 0xa0, 0x52, 586 0x76, 0x96, 0x41, 0x97, 0xd0, 0x0e, 0xc8, 0x35, 0xde, 0x52, 0xe9, 0x09, 0xc9, 0x13, 0x1c, 0x12, 587 0x4f, 0x6d, 0xb8, 0xa1, 0xe4, 0x9e, 0x1f, 0x96, 0x5b, 0xe6, 0x68, 0xb5, 0x5f, 0x54, 0xb4, 0xb8, 588 0x93, 0xeb, 0xff, 0xf0, 0xbf, 0xac, 0xce, 0x22, 0xc7, 0x5c, 0x5a, 0x57, 0x59, 0x54, 0xcb, 0xa2, 589 0x99, 0xb5, 0x1c, 0x4f, 0xce, 0xcc, 0x99, 0x5e, 0xef, 0xff, 0x59, 0x03, 0x18, 0xc7, 0xf1, 0x22, 590 0xe1, 0xd7, 0x11, 0xdd, 0xff, 0x0f, 0x20, 0xa8, 0x13, 0x89, 0xc3, 0xc2, 0x46, 0x75, 0x46, 0x3d, 591 0x68, 0x05, 0x44, 0xf8, 0x49, 0x14, 0x2b, 0x87, 0x6b, 0xc5, 0x6f, 0x71, 0x9b, 0x42, 0x3f, 0x6b, 592 0xf0, 0x6c, 0xb3, 0xa5, 0x32, 0xf2, 0xfc, 0xdc, 0x44, 0x2f, 0xe1, 0x5b, 0x19, 0xb1, 0xd0, 0xdb, 593 0x0a, 0xe2, 0x61, 0x96, 0x2a, 0x3b, 0x5a, 0xa3, 0xd7, 0x87, 0xed, 0xb8, 0x9d, 0xcb, 0x78, 0x9f, 594 0x75, 0x2a, 0xb6, 0xe1, 0xe4, 0x7d, 0xce, 0x05, 0x19, 0xb3, 0xf4, 0x5d, 0xc5, 0x79, 0xb2, 0x39, 595 0x54, 0x44, 0x3f, 0xc1, 0xa7, 0x22, 0x62, 0x21, 0x25, 0xff, 0x1c, 0xa2, 0x73, 0xa4, 0xc4, 0x5f, 596 0x3e, 0x48, 0x7c, 0xa9, 0x5a, 0xdc, 0x17, 0x78, 0x57, 0x71, 0xda, 0x62, 0x4f, 0xbe, 0xfb, 0x19, 597 0x3c, 0x39, 0x38, 0x6c, 0x57, 0x40, 0x7b, 0x5f, 0x33, 0xf4, 0x0c, 0xa0, 0x1c, 0x30, 0x0a, 0x0a, 598 0xf3, 0x8f, 0x8b, 0x8c, 0x15, 0xa0, 0xef, 0xa0, 0x8b, 0x29, 0xe5, 0x37, 0x9e, 0x4c, 0x30, 0x13, 599 0xd8, 0xcf, 0x0c, 0xc6, 0xd4, 0xbb, 0x49, 0x22, 0x49, 0x84, 0xda, 0x4b, 0xd3, 0xe9, 0x28, 0x84, 600 0x7b, 0x17, 0x70, 0xa9, 0xea, 0x13, 0x1d, 0x4e, 0x4a, 0xeb, 0x63, 0x4e, 0x23, 0x3f, 0x9d, 0xfc, 601 0xaa, 0xc1, 0x53, 0x9f, 0x6f, 0x0e, 0x5e, 0x7e, 0xf2, 0x71, 0xf9, 0x58, 0x2c, 0xb2, 0x67, 0x72, 602 0xa1, 0x5d, 0x9d, 0x16, 0xd0, 0x90, 0x53, 0xcc, 0x42, 0x83, 0x27, 0xe1, 0x30, 0x24, 0x4c, 0x3d, 603 0xa2, 0xc3, 0xbc, 0x84, 0xe3, 0x48, 0xfc, 0xfb, 0xb9, 0x7d, 0xa5, 0x0e, 0xbf, 0x54, 0x3f, 0x7f, 604 0x9b, 0xf3, 0xa7, 0x94, 0x6f, 0x03, 0x63, 0x52, 0x0a, 0x8e, 0x95, 0xe0, 0xc5, 0xe8, 0x8f, 0x12, 605 0xb0, 0x52, 0x80, 0x55, 0x09, 0x58, 0x29, 0xc0, 0xea, 0x62, 0xb4, 0x3e, 0x52, 0x5a, 0x5f, 0xfd, 606 0x15, 0x00, 0x00, 0xff, 0xff, 0xd9, 0x04, 0x3d, 0xfc, 0x3a, 0x06, 0x00, 0x00, 607} 608