1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/datastore/v1beta3/query.proto 3 4package datastore 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 wrappers "github.com/golang/protobuf/ptypes/wrappers" 12 _ "google.golang.org/genproto/googleapis/api/annotations" 13 _ "google.golang.org/genproto/googleapis/type/latlng" 14) 15 16// Reference imports to suppress errors if they are not otherwise used. 17var _ = proto.Marshal 18var _ = fmt.Errorf 19var _ = math.Inf 20 21// This is a compile-time assertion to ensure that this generated file 22// is compatible with the proto package it is being compiled against. 23// A compilation error at this line likely means your copy of the 24// proto package needs to be updated. 25const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 26 27// Specifies what data the 'entity' field contains. 28// A `ResultType` is either implied (for example, in `LookupResponse.missing` 29// from `datastore.proto`, it is always `KEY_ONLY`) or specified by context 30// (for example, in message `QueryResultBatch`, field `entity_result_type` 31// specifies a `ResultType` for all the values in field `entity_results`). 32type EntityResult_ResultType int32 33 34const ( 35 // Unspecified. This value is never used. 36 EntityResult_RESULT_TYPE_UNSPECIFIED EntityResult_ResultType = 0 37 // The key and properties. 38 EntityResult_FULL EntityResult_ResultType = 1 39 // A projected subset of properties. The entity may have no key. 40 EntityResult_PROJECTION EntityResult_ResultType = 2 41 // Only the key. 42 EntityResult_KEY_ONLY EntityResult_ResultType = 3 43) 44 45var EntityResult_ResultType_name = map[int32]string{ 46 0: "RESULT_TYPE_UNSPECIFIED", 47 1: "FULL", 48 2: "PROJECTION", 49 3: "KEY_ONLY", 50} 51 52var EntityResult_ResultType_value = map[string]int32{ 53 "RESULT_TYPE_UNSPECIFIED": 0, 54 "FULL": 1, 55 "PROJECTION": 2, 56 "KEY_ONLY": 3, 57} 58 59func (x EntityResult_ResultType) String() string { 60 return proto.EnumName(EntityResult_ResultType_name, int32(x)) 61} 62 63func (EntityResult_ResultType) EnumDescriptor() ([]byte, []int) { 64 return fileDescriptor_7ed60bbcd54eb2b7, []int{0, 0} 65} 66 67// The sort direction. 68type PropertyOrder_Direction int32 69 70const ( 71 // Unspecified. This value must not be used. 72 PropertyOrder_DIRECTION_UNSPECIFIED PropertyOrder_Direction = 0 73 // Ascending. 74 PropertyOrder_ASCENDING PropertyOrder_Direction = 1 75 // Descending. 76 PropertyOrder_DESCENDING PropertyOrder_Direction = 2 77) 78 79var PropertyOrder_Direction_name = map[int32]string{ 80 0: "DIRECTION_UNSPECIFIED", 81 1: "ASCENDING", 82 2: "DESCENDING", 83} 84 85var PropertyOrder_Direction_value = map[string]int32{ 86 "DIRECTION_UNSPECIFIED": 0, 87 "ASCENDING": 1, 88 "DESCENDING": 2, 89} 90 91func (x PropertyOrder_Direction) String() string { 92 return proto.EnumName(PropertyOrder_Direction_name, int32(x)) 93} 94 95func (PropertyOrder_Direction) EnumDescriptor() ([]byte, []int) { 96 return fileDescriptor_7ed60bbcd54eb2b7, []int{5, 0} 97} 98 99// A composite filter operator. 100type CompositeFilter_Operator int32 101 102const ( 103 // Unspecified. This value must not be used. 104 CompositeFilter_OPERATOR_UNSPECIFIED CompositeFilter_Operator = 0 105 // The results are required to satisfy each of the combined filters. 106 CompositeFilter_AND CompositeFilter_Operator = 1 107) 108 109var CompositeFilter_Operator_name = map[int32]string{ 110 0: "OPERATOR_UNSPECIFIED", 111 1: "AND", 112} 113 114var CompositeFilter_Operator_value = map[string]int32{ 115 "OPERATOR_UNSPECIFIED": 0, 116 "AND": 1, 117} 118 119func (x CompositeFilter_Operator) String() string { 120 return proto.EnumName(CompositeFilter_Operator_name, int32(x)) 121} 122 123func (CompositeFilter_Operator) EnumDescriptor() ([]byte, []int) { 124 return fileDescriptor_7ed60bbcd54eb2b7, []int{7, 0} 125} 126 127// A property filter operator. 128type PropertyFilter_Operator int32 129 130const ( 131 // Unspecified. This value must not be used. 132 PropertyFilter_OPERATOR_UNSPECIFIED PropertyFilter_Operator = 0 133 // Less than. 134 PropertyFilter_LESS_THAN PropertyFilter_Operator = 1 135 // Less than or equal. 136 PropertyFilter_LESS_THAN_OR_EQUAL PropertyFilter_Operator = 2 137 // Greater than. 138 PropertyFilter_GREATER_THAN PropertyFilter_Operator = 3 139 // Greater than or equal. 140 PropertyFilter_GREATER_THAN_OR_EQUAL PropertyFilter_Operator = 4 141 // Equal. 142 PropertyFilter_EQUAL PropertyFilter_Operator = 5 143 // Has ancestor. 144 PropertyFilter_HAS_ANCESTOR PropertyFilter_Operator = 11 145) 146 147var PropertyFilter_Operator_name = map[int32]string{ 148 0: "OPERATOR_UNSPECIFIED", 149 1: "LESS_THAN", 150 2: "LESS_THAN_OR_EQUAL", 151 3: "GREATER_THAN", 152 4: "GREATER_THAN_OR_EQUAL", 153 5: "EQUAL", 154 11: "HAS_ANCESTOR", 155} 156 157var PropertyFilter_Operator_value = map[string]int32{ 158 "OPERATOR_UNSPECIFIED": 0, 159 "LESS_THAN": 1, 160 "LESS_THAN_OR_EQUAL": 2, 161 "GREATER_THAN": 3, 162 "GREATER_THAN_OR_EQUAL": 4, 163 "EQUAL": 5, 164 "HAS_ANCESTOR": 11, 165} 166 167func (x PropertyFilter_Operator) String() string { 168 return proto.EnumName(PropertyFilter_Operator_name, int32(x)) 169} 170 171func (PropertyFilter_Operator) EnumDescriptor() ([]byte, []int) { 172 return fileDescriptor_7ed60bbcd54eb2b7, []int{8, 0} 173} 174 175// The possible values for the `more_results` field. 176type QueryResultBatch_MoreResultsType int32 177 178const ( 179 // Unspecified. This value is never used. 180 QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED QueryResultBatch_MoreResultsType = 0 181 // There may be additional batches to fetch from this query. 182 QueryResultBatch_NOT_FINISHED QueryResultBatch_MoreResultsType = 1 183 // The query is finished, but there may be more results after the limit. 184 QueryResultBatch_MORE_RESULTS_AFTER_LIMIT QueryResultBatch_MoreResultsType = 2 185 // The query is finished, but there may be more results after the end 186 // cursor. 187 QueryResultBatch_MORE_RESULTS_AFTER_CURSOR QueryResultBatch_MoreResultsType = 4 188 // The query is finished, and there are no more results. 189 QueryResultBatch_NO_MORE_RESULTS QueryResultBatch_MoreResultsType = 3 190) 191 192var QueryResultBatch_MoreResultsType_name = map[int32]string{ 193 0: "MORE_RESULTS_TYPE_UNSPECIFIED", 194 1: "NOT_FINISHED", 195 2: "MORE_RESULTS_AFTER_LIMIT", 196 4: "MORE_RESULTS_AFTER_CURSOR", 197 3: "NO_MORE_RESULTS", 198} 199 200var QueryResultBatch_MoreResultsType_value = map[string]int32{ 201 "MORE_RESULTS_TYPE_UNSPECIFIED": 0, 202 "NOT_FINISHED": 1, 203 "MORE_RESULTS_AFTER_LIMIT": 2, 204 "MORE_RESULTS_AFTER_CURSOR": 4, 205 "NO_MORE_RESULTS": 3, 206} 207 208func (x QueryResultBatch_MoreResultsType) String() string { 209 return proto.EnumName(QueryResultBatch_MoreResultsType_name, int32(x)) 210} 211 212func (QueryResultBatch_MoreResultsType) EnumDescriptor() ([]byte, []int) { 213 return fileDescriptor_7ed60bbcd54eb2b7, []int{11, 0} 214} 215 216// The result of fetching an entity from Datastore. 217type EntityResult struct { 218 // The resulting entity. 219 Entity *Entity `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"` 220 // The version of the entity, a strictly positive number that monotonically 221 // increases with changes to the entity. 222 // 223 // This field is set for 224 // [`FULL`][google.datastore.v1beta3.EntityResult.ResultType.FULL] entity 225 // results. 226 // 227 // For [missing][google.datastore.v1beta3.LookupResponse.missing] entities in 228 // `LookupResponse`, this is the version of the snapshot that was used to look 229 // up the entity, and it is always set except for eventually consistent reads. 230 Version int64 `protobuf:"varint,4,opt,name=version,proto3" json:"version,omitempty"` 231 // A cursor that points to the position after the result entity. 232 // Set only when the `EntityResult` is part of a `QueryResultBatch` message. 233 Cursor []byte `protobuf:"bytes,3,opt,name=cursor,proto3" json:"cursor,omitempty"` 234 XXX_NoUnkeyedLiteral struct{} `json:"-"` 235 XXX_unrecognized []byte `json:"-"` 236 XXX_sizecache int32 `json:"-"` 237} 238 239func (m *EntityResult) Reset() { *m = EntityResult{} } 240func (m *EntityResult) String() string { return proto.CompactTextString(m) } 241func (*EntityResult) ProtoMessage() {} 242func (*EntityResult) Descriptor() ([]byte, []int) { 243 return fileDescriptor_7ed60bbcd54eb2b7, []int{0} 244} 245 246func (m *EntityResult) XXX_Unmarshal(b []byte) error { 247 return xxx_messageInfo_EntityResult.Unmarshal(m, b) 248} 249func (m *EntityResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 250 return xxx_messageInfo_EntityResult.Marshal(b, m, deterministic) 251} 252func (m *EntityResult) XXX_Merge(src proto.Message) { 253 xxx_messageInfo_EntityResult.Merge(m, src) 254} 255func (m *EntityResult) XXX_Size() int { 256 return xxx_messageInfo_EntityResult.Size(m) 257} 258func (m *EntityResult) XXX_DiscardUnknown() { 259 xxx_messageInfo_EntityResult.DiscardUnknown(m) 260} 261 262var xxx_messageInfo_EntityResult proto.InternalMessageInfo 263 264func (m *EntityResult) GetEntity() *Entity { 265 if m != nil { 266 return m.Entity 267 } 268 return nil 269} 270 271func (m *EntityResult) GetVersion() int64 { 272 if m != nil { 273 return m.Version 274 } 275 return 0 276} 277 278func (m *EntityResult) GetCursor() []byte { 279 if m != nil { 280 return m.Cursor 281 } 282 return nil 283} 284 285// A query for entities. 286type Query struct { 287 // The projection to return. Defaults to returning all properties. 288 Projection []*Projection `protobuf:"bytes,2,rep,name=projection,proto3" json:"projection,omitempty"` 289 // The kinds to query (if empty, returns entities of all kinds). 290 // Currently at most 1 kind may be specified. 291 Kind []*KindExpression `protobuf:"bytes,3,rep,name=kind,proto3" json:"kind,omitempty"` 292 // The filter to apply. 293 Filter *Filter `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"` 294 // The order to apply to the query results (if empty, order is unspecified). 295 Order []*PropertyOrder `protobuf:"bytes,5,rep,name=order,proto3" json:"order,omitempty"` 296 // The properties to make distinct. The query results will contain the first 297 // result for each distinct combination of values for the given properties 298 // (if empty, all results are returned). 299 DistinctOn []*PropertyReference `protobuf:"bytes,6,rep,name=distinct_on,json=distinctOn,proto3" json:"distinct_on,omitempty"` 300 // A starting point for the query results. Query cursors are 301 // returned in query result batches and 302 // [can only be used to continue the same 303 // query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets). 304 StartCursor []byte `protobuf:"bytes,7,opt,name=start_cursor,json=startCursor,proto3" json:"start_cursor,omitempty"` 305 // An ending point for the query results. Query cursors are 306 // returned in query result batches and 307 // [can only be used to limit the same 308 // query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets). 309 EndCursor []byte `protobuf:"bytes,8,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"` 310 // The number of results to skip. Applies before limit, but after all other 311 // constraints. Optional. Must be >= 0 if specified. 312 Offset int32 `protobuf:"varint,10,opt,name=offset,proto3" json:"offset,omitempty"` 313 // The maximum number of results to return. Applies after all other 314 // constraints. Optional. 315 // Unspecified is interpreted as no limit. 316 // Must be >= 0 if specified. 317 Limit *wrappers.Int32Value `protobuf:"bytes,12,opt,name=limit,proto3" json:"limit,omitempty"` 318 XXX_NoUnkeyedLiteral struct{} `json:"-"` 319 XXX_unrecognized []byte `json:"-"` 320 XXX_sizecache int32 `json:"-"` 321} 322 323func (m *Query) Reset() { *m = Query{} } 324func (m *Query) String() string { return proto.CompactTextString(m) } 325func (*Query) ProtoMessage() {} 326func (*Query) Descriptor() ([]byte, []int) { 327 return fileDescriptor_7ed60bbcd54eb2b7, []int{1} 328} 329 330func (m *Query) XXX_Unmarshal(b []byte) error { 331 return xxx_messageInfo_Query.Unmarshal(m, b) 332} 333func (m *Query) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 334 return xxx_messageInfo_Query.Marshal(b, m, deterministic) 335} 336func (m *Query) XXX_Merge(src proto.Message) { 337 xxx_messageInfo_Query.Merge(m, src) 338} 339func (m *Query) XXX_Size() int { 340 return xxx_messageInfo_Query.Size(m) 341} 342func (m *Query) XXX_DiscardUnknown() { 343 xxx_messageInfo_Query.DiscardUnknown(m) 344} 345 346var xxx_messageInfo_Query proto.InternalMessageInfo 347 348func (m *Query) GetProjection() []*Projection { 349 if m != nil { 350 return m.Projection 351 } 352 return nil 353} 354 355func (m *Query) GetKind() []*KindExpression { 356 if m != nil { 357 return m.Kind 358 } 359 return nil 360} 361 362func (m *Query) GetFilter() *Filter { 363 if m != nil { 364 return m.Filter 365 } 366 return nil 367} 368 369func (m *Query) GetOrder() []*PropertyOrder { 370 if m != nil { 371 return m.Order 372 } 373 return nil 374} 375 376func (m *Query) GetDistinctOn() []*PropertyReference { 377 if m != nil { 378 return m.DistinctOn 379 } 380 return nil 381} 382 383func (m *Query) GetStartCursor() []byte { 384 if m != nil { 385 return m.StartCursor 386 } 387 return nil 388} 389 390func (m *Query) GetEndCursor() []byte { 391 if m != nil { 392 return m.EndCursor 393 } 394 return nil 395} 396 397func (m *Query) GetOffset() int32 { 398 if m != nil { 399 return m.Offset 400 } 401 return 0 402} 403 404func (m *Query) GetLimit() *wrappers.Int32Value { 405 if m != nil { 406 return m.Limit 407 } 408 return nil 409} 410 411// A representation of a kind. 412type KindExpression struct { 413 // The name of the kind. 414 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 415 XXX_NoUnkeyedLiteral struct{} `json:"-"` 416 XXX_unrecognized []byte `json:"-"` 417 XXX_sizecache int32 `json:"-"` 418} 419 420func (m *KindExpression) Reset() { *m = KindExpression{} } 421func (m *KindExpression) String() string { return proto.CompactTextString(m) } 422func (*KindExpression) ProtoMessage() {} 423func (*KindExpression) Descriptor() ([]byte, []int) { 424 return fileDescriptor_7ed60bbcd54eb2b7, []int{2} 425} 426 427func (m *KindExpression) XXX_Unmarshal(b []byte) error { 428 return xxx_messageInfo_KindExpression.Unmarshal(m, b) 429} 430func (m *KindExpression) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 431 return xxx_messageInfo_KindExpression.Marshal(b, m, deterministic) 432} 433func (m *KindExpression) XXX_Merge(src proto.Message) { 434 xxx_messageInfo_KindExpression.Merge(m, src) 435} 436func (m *KindExpression) XXX_Size() int { 437 return xxx_messageInfo_KindExpression.Size(m) 438} 439func (m *KindExpression) XXX_DiscardUnknown() { 440 xxx_messageInfo_KindExpression.DiscardUnknown(m) 441} 442 443var xxx_messageInfo_KindExpression proto.InternalMessageInfo 444 445func (m *KindExpression) GetName() string { 446 if m != nil { 447 return m.Name 448 } 449 return "" 450} 451 452// A reference to a property relative to the kind expressions. 453type PropertyReference struct { 454 // The name of the property. 455 // If name includes "."s, it may be interpreted as a property name path. 456 Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` 457 XXX_NoUnkeyedLiteral struct{} `json:"-"` 458 XXX_unrecognized []byte `json:"-"` 459 XXX_sizecache int32 `json:"-"` 460} 461 462func (m *PropertyReference) Reset() { *m = PropertyReference{} } 463func (m *PropertyReference) String() string { return proto.CompactTextString(m) } 464func (*PropertyReference) ProtoMessage() {} 465func (*PropertyReference) Descriptor() ([]byte, []int) { 466 return fileDescriptor_7ed60bbcd54eb2b7, []int{3} 467} 468 469func (m *PropertyReference) XXX_Unmarshal(b []byte) error { 470 return xxx_messageInfo_PropertyReference.Unmarshal(m, b) 471} 472func (m *PropertyReference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 473 return xxx_messageInfo_PropertyReference.Marshal(b, m, deterministic) 474} 475func (m *PropertyReference) XXX_Merge(src proto.Message) { 476 xxx_messageInfo_PropertyReference.Merge(m, src) 477} 478func (m *PropertyReference) XXX_Size() int { 479 return xxx_messageInfo_PropertyReference.Size(m) 480} 481func (m *PropertyReference) XXX_DiscardUnknown() { 482 xxx_messageInfo_PropertyReference.DiscardUnknown(m) 483} 484 485var xxx_messageInfo_PropertyReference proto.InternalMessageInfo 486 487func (m *PropertyReference) GetName() string { 488 if m != nil { 489 return m.Name 490 } 491 return "" 492} 493 494// A representation of a property in a projection. 495type Projection struct { 496 // The property to project. 497 Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 498 XXX_NoUnkeyedLiteral struct{} `json:"-"` 499 XXX_unrecognized []byte `json:"-"` 500 XXX_sizecache int32 `json:"-"` 501} 502 503func (m *Projection) Reset() { *m = Projection{} } 504func (m *Projection) String() string { return proto.CompactTextString(m) } 505func (*Projection) ProtoMessage() {} 506func (*Projection) Descriptor() ([]byte, []int) { 507 return fileDescriptor_7ed60bbcd54eb2b7, []int{4} 508} 509 510func (m *Projection) XXX_Unmarshal(b []byte) error { 511 return xxx_messageInfo_Projection.Unmarshal(m, b) 512} 513func (m *Projection) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 514 return xxx_messageInfo_Projection.Marshal(b, m, deterministic) 515} 516func (m *Projection) XXX_Merge(src proto.Message) { 517 xxx_messageInfo_Projection.Merge(m, src) 518} 519func (m *Projection) XXX_Size() int { 520 return xxx_messageInfo_Projection.Size(m) 521} 522func (m *Projection) XXX_DiscardUnknown() { 523 xxx_messageInfo_Projection.DiscardUnknown(m) 524} 525 526var xxx_messageInfo_Projection proto.InternalMessageInfo 527 528func (m *Projection) GetProperty() *PropertyReference { 529 if m != nil { 530 return m.Property 531 } 532 return nil 533} 534 535// The desired order for a specific property. 536type PropertyOrder struct { 537 // The property to order by. 538 Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 539 // The direction to order by. Defaults to `ASCENDING`. 540 Direction PropertyOrder_Direction `protobuf:"varint,2,opt,name=direction,proto3,enum=google.datastore.v1beta3.PropertyOrder_Direction" json:"direction,omitempty"` 541 XXX_NoUnkeyedLiteral struct{} `json:"-"` 542 XXX_unrecognized []byte `json:"-"` 543 XXX_sizecache int32 `json:"-"` 544} 545 546func (m *PropertyOrder) Reset() { *m = PropertyOrder{} } 547func (m *PropertyOrder) String() string { return proto.CompactTextString(m) } 548func (*PropertyOrder) ProtoMessage() {} 549func (*PropertyOrder) Descriptor() ([]byte, []int) { 550 return fileDescriptor_7ed60bbcd54eb2b7, []int{5} 551} 552 553func (m *PropertyOrder) XXX_Unmarshal(b []byte) error { 554 return xxx_messageInfo_PropertyOrder.Unmarshal(m, b) 555} 556func (m *PropertyOrder) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 557 return xxx_messageInfo_PropertyOrder.Marshal(b, m, deterministic) 558} 559func (m *PropertyOrder) XXX_Merge(src proto.Message) { 560 xxx_messageInfo_PropertyOrder.Merge(m, src) 561} 562func (m *PropertyOrder) XXX_Size() int { 563 return xxx_messageInfo_PropertyOrder.Size(m) 564} 565func (m *PropertyOrder) XXX_DiscardUnknown() { 566 xxx_messageInfo_PropertyOrder.DiscardUnknown(m) 567} 568 569var xxx_messageInfo_PropertyOrder proto.InternalMessageInfo 570 571func (m *PropertyOrder) GetProperty() *PropertyReference { 572 if m != nil { 573 return m.Property 574 } 575 return nil 576} 577 578func (m *PropertyOrder) GetDirection() PropertyOrder_Direction { 579 if m != nil { 580 return m.Direction 581 } 582 return PropertyOrder_DIRECTION_UNSPECIFIED 583} 584 585// A holder for any type of filter. 586type Filter struct { 587 // The type of filter. 588 // 589 // Types that are valid to be assigned to FilterType: 590 // *Filter_CompositeFilter 591 // *Filter_PropertyFilter 592 FilterType isFilter_FilterType `protobuf_oneof:"filter_type"` 593 XXX_NoUnkeyedLiteral struct{} `json:"-"` 594 XXX_unrecognized []byte `json:"-"` 595 XXX_sizecache int32 `json:"-"` 596} 597 598func (m *Filter) Reset() { *m = Filter{} } 599func (m *Filter) String() string { return proto.CompactTextString(m) } 600func (*Filter) ProtoMessage() {} 601func (*Filter) Descriptor() ([]byte, []int) { 602 return fileDescriptor_7ed60bbcd54eb2b7, []int{6} 603} 604 605func (m *Filter) XXX_Unmarshal(b []byte) error { 606 return xxx_messageInfo_Filter.Unmarshal(m, b) 607} 608func (m *Filter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 609 return xxx_messageInfo_Filter.Marshal(b, m, deterministic) 610} 611func (m *Filter) XXX_Merge(src proto.Message) { 612 xxx_messageInfo_Filter.Merge(m, src) 613} 614func (m *Filter) XXX_Size() int { 615 return xxx_messageInfo_Filter.Size(m) 616} 617func (m *Filter) XXX_DiscardUnknown() { 618 xxx_messageInfo_Filter.DiscardUnknown(m) 619} 620 621var xxx_messageInfo_Filter proto.InternalMessageInfo 622 623type isFilter_FilterType interface { 624 isFilter_FilterType() 625} 626 627type Filter_CompositeFilter struct { 628 CompositeFilter *CompositeFilter `protobuf:"bytes,1,opt,name=composite_filter,json=compositeFilter,proto3,oneof"` 629} 630 631type Filter_PropertyFilter struct { 632 PropertyFilter *PropertyFilter `protobuf:"bytes,2,opt,name=property_filter,json=propertyFilter,proto3,oneof"` 633} 634 635func (*Filter_CompositeFilter) isFilter_FilterType() {} 636 637func (*Filter_PropertyFilter) isFilter_FilterType() {} 638 639func (m *Filter) GetFilterType() isFilter_FilterType { 640 if m != nil { 641 return m.FilterType 642 } 643 return nil 644} 645 646func (m *Filter) GetCompositeFilter() *CompositeFilter { 647 if x, ok := m.GetFilterType().(*Filter_CompositeFilter); ok { 648 return x.CompositeFilter 649 } 650 return nil 651} 652 653func (m *Filter) GetPropertyFilter() *PropertyFilter { 654 if x, ok := m.GetFilterType().(*Filter_PropertyFilter); ok { 655 return x.PropertyFilter 656 } 657 return nil 658} 659 660// XXX_OneofWrappers is for the internal use of the proto package. 661func (*Filter) XXX_OneofWrappers() []interface{} { 662 return []interface{}{ 663 (*Filter_CompositeFilter)(nil), 664 (*Filter_PropertyFilter)(nil), 665 } 666} 667 668// A filter that merges multiple other filters using the given operator. 669type CompositeFilter struct { 670 // The operator for combining multiple filters. 671 Op CompositeFilter_Operator `protobuf:"varint,1,opt,name=op,proto3,enum=google.datastore.v1beta3.CompositeFilter_Operator" json:"op,omitempty"` 672 // The list of filters to combine. 673 // Must contain at least one filter. 674 Filters []*Filter `protobuf:"bytes,2,rep,name=filters,proto3" json:"filters,omitempty"` 675 XXX_NoUnkeyedLiteral struct{} `json:"-"` 676 XXX_unrecognized []byte `json:"-"` 677 XXX_sizecache int32 `json:"-"` 678} 679 680func (m *CompositeFilter) Reset() { *m = CompositeFilter{} } 681func (m *CompositeFilter) String() string { return proto.CompactTextString(m) } 682func (*CompositeFilter) ProtoMessage() {} 683func (*CompositeFilter) Descriptor() ([]byte, []int) { 684 return fileDescriptor_7ed60bbcd54eb2b7, []int{7} 685} 686 687func (m *CompositeFilter) XXX_Unmarshal(b []byte) error { 688 return xxx_messageInfo_CompositeFilter.Unmarshal(m, b) 689} 690func (m *CompositeFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 691 return xxx_messageInfo_CompositeFilter.Marshal(b, m, deterministic) 692} 693func (m *CompositeFilter) XXX_Merge(src proto.Message) { 694 xxx_messageInfo_CompositeFilter.Merge(m, src) 695} 696func (m *CompositeFilter) XXX_Size() int { 697 return xxx_messageInfo_CompositeFilter.Size(m) 698} 699func (m *CompositeFilter) XXX_DiscardUnknown() { 700 xxx_messageInfo_CompositeFilter.DiscardUnknown(m) 701} 702 703var xxx_messageInfo_CompositeFilter proto.InternalMessageInfo 704 705func (m *CompositeFilter) GetOp() CompositeFilter_Operator { 706 if m != nil { 707 return m.Op 708 } 709 return CompositeFilter_OPERATOR_UNSPECIFIED 710} 711 712func (m *CompositeFilter) GetFilters() []*Filter { 713 if m != nil { 714 return m.Filters 715 } 716 return nil 717} 718 719// A filter on a specific property. 720type PropertyFilter struct { 721 // The property to filter by. 722 Property *PropertyReference `protobuf:"bytes,1,opt,name=property,proto3" json:"property,omitempty"` 723 // The operator to filter by. 724 Op PropertyFilter_Operator `protobuf:"varint,2,opt,name=op,proto3,enum=google.datastore.v1beta3.PropertyFilter_Operator" json:"op,omitempty"` 725 // The value to compare the property to. 726 Value *Value `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` 727 XXX_NoUnkeyedLiteral struct{} `json:"-"` 728 XXX_unrecognized []byte `json:"-"` 729 XXX_sizecache int32 `json:"-"` 730} 731 732func (m *PropertyFilter) Reset() { *m = PropertyFilter{} } 733func (m *PropertyFilter) String() string { return proto.CompactTextString(m) } 734func (*PropertyFilter) ProtoMessage() {} 735func (*PropertyFilter) Descriptor() ([]byte, []int) { 736 return fileDescriptor_7ed60bbcd54eb2b7, []int{8} 737} 738 739func (m *PropertyFilter) XXX_Unmarshal(b []byte) error { 740 return xxx_messageInfo_PropertyFilter.Unmarshal(m, b) 741} 742func (m *PropertyFilter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 743 return xxx_messageInfo_PropertyFilter.Marshal(b, m, deterministic) 744} 745func (m *PropertyFilter) XXX_Merge(src proto.Message) { 746 xxx_messageInfo_PropertyFilter.Merge(m, src) 747} 748func (m *PropertyFilter) XXX_Size() int { 749 return xxx_messageInfo_PropertyFilter.Size(m) 750} 751func (m *PropertyFilter) XXX_DiscardUnknown() { 752 xxx_messageInfo_PropertyFilter.DiscardUnknown(m) 753} 754 755var xxx_messageInfo_PropertyFilter proto.InternalMessageInfo 756 757func (m *PropertyFilter) GetProperty() *PropertyReference { 758 if m != nil { 759 return m.Property 760 } 761 return nil 762} 763 764func (m *PropertyFilter) GetOp() PropertyFilter_Operator { 765 if m != nil { 766 return m.Op 767 } 768 return PropertyFilter_OPERATOR_UNSPECIFIED 769} 770 771func (m *PropertyFilter) GetValue() *Value { 772 if m != nil { 773 return m.Value 774 } 775 return nil 776} 777 778// A [GQL 779// query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). 780type GqlQuery struct { 781 // A string of the format described 782 // [here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). 783 QueryString string `protobuf:"bytes,1,opt,name=query_string,json=queryString,proto3" json:"query_string,omitempty"` 784 // When false, the query string must not contain any literals and instead must 785 // bind all values. For example, 786 // `SELECT * FROM Kind WHERE a = 'string literal'` is not allowed, while 787 // `SELECT * FROM Kind WHERE a = @value` is. 788 AllowLiterals bool `protobuf:"varint,2,opt,name=allow_literals,json=allowLiterals,proto3" json:"allow_literals,omitempty"` 789 // For each non-reserved named binding site in the query string, there must be 790 // a named parameter with that name, but not necessarily the inverse. 791 // 792 // Key must match regex `[A-Za-z_$][A-Za-z_$0-9]*`, must not match regex 793 // `__.*__`, and must not be `""`. 794 NamedBindings map[string]*GqlQueryParameter `protobuf:"bytes,5,rep,name=named_bindings,json=namedBindings,proto3" json:"named_bindings,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 795 // Numbered binding site @1 references the first numbered parameter, 796 // effectively using 1-based indexing, rather than the usual 0. 797 // 798 // For each binding site numbered i in `query_string`, there must be an i-th 799 // numbered parameter. The inverse must also be true. 800 PositionalBindings []*GqlQueryParameter `protobuf:"bytes,4,rep,name=positional_bindings,json=positionalBindings,proto3" json:"positional_bindings,omitempty"` 801 XXX_NoUnkeyedLiteral struct{} `json:"-"` 802 XXX_unrecognized []byte `json:"-"` 803 XXX_sizecache int32 `json:"-"` 804} 805 806func (m *GqlQuery) Reset() { *m = GqlQuery{} } 807func (m *GqlQuery) String() string { return proto.CompactTextString(m) } 808func (*GqlQuery) ProtoMessage() {} 809func (*GqlQuery) Descriptor() ([]byte, []int) { 810 return fileDescriptor_7ed60bbcd54eb2b7, []int{9} 811} 812 813func (m *GqlQuery) XXX_Unmarshal(b []byte) error { 814 return xxx_messageInfo_GqlQuery.Unmarshal(m, b) 815} 816func (m *GqlQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 817 return xxx_messageInfo_GqlQuery.Marshal(b, m, deterministic) 818} 819func (m *GqlQuery) XXX_Merge(src proto.Message) { 820 xxx_messageInfo_GqlQuery.Merge(m, src) 821} 822func (m *GqlQuery) XXX_Size() int { 823 return xxx_messageInfo_GqlQuery.Size(m) 824} 825func (m *GqlQuery) XXX_DiscardUnknown() { 826 xxx_messageInfo_GqlQuery.DiscardUnknown(m) 827} 828 829var xxx_messageInfo_GqlQuery proto.InternalMessageInfo 830 831func (m *GqlQuery) GetQueryString() string { 832 if m != nil { 833 return m.QueryString 834 } 835 return "" 836} 837 838func (m *GqlQuery) GetAllowLiterals() bool { 839 if m != nil { 840 return m.AllowLiterals 841 } 842 return false 843} 844 845func (m *GqlQuery) GetNamedBindings() map[string]*GqlQueryParameter { 846 if m != nil { 847 return m.NamedBindings 848 } 849 return nil 850} 851 852func (m *GqlQuery) GetPositionalBindings() []*GqlQueryParameter { 853 if m != nil { 854 return m.PositionalBindings 855 } 856 return nil 857} 858 859// A binding parameter for a GQL query. 860type GqlQueryParameter struct { 861 // The type of parameter. 862 // 863 // Types that are valid to be assigned to ParameterType: 864 // *GqlQueryParameter_Value 865 // *GqlQueryParameter_Cursor 866 ParameterType isGqlQueryParameter_ParameterType `protobuf_oneof:"parameter_type"` 867 XXX_NoUnkeyedLiteral struct{} `json:"-"` 868 XXX_unrecognized []byte `json:"-"` 869 XXX_sizecache int32 `json:"-"` 870} 871 872func (m *GqlQueryParameter) Reset() { *m = GqlQueryParameter{} } 873func (m *GqlQueryParameter) String() string { return proto.CompactTextString(m) } 874func (*GqlQueryParameter) ProtoMessage() {} 875func (*GqlQueryParameter) Descriptor() ([]byte, []int) { 876 return fileDescriptor_7ed60bbcd54eb2b7, []int{10} 877} 878 879func (m *GqlQueryParameter) XXX_Unmarshal(b []byte) error { 880 return xxx_messageInfo_GqlQueryParameter.Unmarshal(m, b) 881} 882func (m *GqlQueryParameter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 883 return xxx_messageInfo_GqlQueryParameter.Marshal(b, m, deterministic) 884} 885func (m *GqlQueryParameter) XXX_Merge(src proto.Message) { 886 xxx_messageInfo_GqlQueryParameter.Merge(m, src) 887} 888func (m *GqlQueryParameter) XXX_Size() int { 889 return xxx_messageInfo_GqlQueryParameter.Size(m) 890} 891func (m *GqlQueryParameter) XXX_DiscardUnknown() { 892 xxx_messageInfo_GqlQueryParameter.DiscardUnknown(m) 893} 894 895var xxx_messageInfo_GqlQueryParameter proto.InternalMessageInfo 896 897type isGqlQueryParameter_ParameterType interface { 898 isGqlQueryParameter_ParameterType() 899} 900 901type GqlQueryParameter_Value struct { 902 Value *Value `protobuf:"bytes,2,opt,name=value,proto3,oneof"` 903} 904 905type GqlQueryParameter_Cursor struct { 906 Cursor []byte `protobuf:"bytes,3,opt,name=cursor,proto3,oneof"` 907} 908 909func (*GqlQueryParameter_Value) isGqlQueryParameter_ParameterType() {} 910 911func (*GqlQueryParameter_Cursor) isGqlQueryParameter_ParameterType() {} 912 913func (m *GqlQueryParameter) GetParameterType() isGqlQueryParameter_ParameterType { 914 if m != nil { 915 return m.ParameterType 916 } 917 return nil 918} 919 920func (m *GqlQueryParameter) GetValue() *Value { 921 if x, ok := m.GetParameterType().(*GqlQueryParameter_Value); ok { 922 return x.Value 923 } 924 return nil 925} 926 927func (m *GqlQueryParameter) GetCursor() []byte { 928 if x, ok := m.GetParameterType().(*GqlQueryParameter_Cursor); ok { 929 return x.Cursor 930 } 931 return nil 932} 933 934// XXX_OneofWrappers is for the internal use of the proto package. 935func (*GqlQueryParameter) XXX_OneofWrappers() []interface{} { 936 return []interface{}{ 937 (*GqlQueryParameter_Value)(nil), 938 (*GqlQueryParameter_Cursor)(nil), 939 } 940} 941 942// A batch of results produced by a query. 943type QueryResultBatch struct { 944 // The number of results skipped, typically because of an offset. 945 SkippedResults int32 `protobuf:"varint,6,opt,name=skipped_results,json=skippedResults,proto3" json:"skipped_results,omitempty"` 946 // A cursor that points to the position after the last skipped result. 947 // Will be set when `skipped_results` != 0. 948 SkippedCursor []byte `protobuf:"bytes,3,opt,name=skipped_cursor,json=skippedCursor,proto3" json:"skipped_cursor,omitempty"` 949 // The result type for every entity in `entity_results`. 950 EntityResultType EntityResult_ResultType `protobuf:"varint,1,opt,name=entity_result_type,json=entityResultType,proto3,enum=google.datastore.v1beta3.EntityResult_ResultType" json:"entity_result_type,omitempty"` 951 // The results for this batch. 952 EntityResults []*EntityResult `protobuf:"bytes,2,rep,name=entity_results,json=entityResults,proto3" json:"entity_results,omitempty"` 953 // A cursor that points to the position after the last result in the batch. 954 EndCursor []byte `protobuf:"bytes,4,opt,name=end_cursor,json=endCursor,proto3" json:"end_cursor,omitempty"` 955 // The state of the query after the current batch. 956 MoreResults QueryResultBatch_MoreResultsType `protobuf:"varint,5,opt,name=more_results,json=moreResults,proto3,enum=google.datastore.v1beta3.QueryResultBatch_MoreResultsType" json:"more_results,omitempty"` 957 // The version number of the snapshot this batch was returned from. 958 // This applies to the range of results from the query's `start_cursor` (or 959 // the beginning of the query if no cursor was given) to this batch's 960 // `end_cursor` (not the query's `end_cursor`). 961 // 962 // In a single transaction, subsequent query result batches for the same query 963 // can have a greater snapshot version number. Each batch's snapshot version 964 // is valid for all preceding batches. 965 // The value will be zero for eventually consistent queries. 966 SnapshotVersion int64 `protobuf:"varint,7,opt,name=snapshot_version,json=snapshotVersion,proto3" json:"snapshot_version,omitempty"` 967 XXX_NoUnkeyedLiteral struct{} `json:"-"` 968 XXX_unrecognized []byte `json:"-"` 969 XXX_sizecache int32 `json:"-"` 970} 971 972func (m *QueryResultBatch) Reset() { *m = QueryResultBatch{} } 973func (m *QueryResultBatch) String() string { return proto.CompactTextString(m) } 974func (*QueryResultBatch) ProtoMessage() {} 975func (*QueryResultBatch) Descriptor() ([]byte, []int) { 976 return fileDescriptor_7ed60bbcd54eb2b7, []int{11} 977} 978 979func (m *QueryResultBatch) XXX_Unmarshal(b []byte) error { 980 return xxx_messageInfo_QueryResultBatch.Unmarshal(m, b) 981} 982func (m *QueryResultBatch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 983 return xxx_messageInfo_QueryResultBatch.Marshal(b, m, deterministic) 984} 985func (m *QueryResultBatch) XXX_Merge(src proto.Message) { 986 xxx_messageInfo_QueryResultBatch.Merge(m, src) 987} 988func (m *QueryResultBatch) XXX_Size() int { 989 return xxx_messageInfo_QueryResultBatch.Size(m) 990} 991func (m *QueryResultBatch) XXX_DiscardUnknown() { 992 xxx_messageInfo_QueryResultBatch.DiscardUnknown(m) 993} 994 995var xxx_messageInfo_QueryResultBatch proto.InternalMessageInfo 996 997func (m *QueryResultBatch) GetSkippedResults() int32 { 998 if m != nil { 999 return m.SkippedResults 1000 } 1001 return 0 1002} 1003 1004func (m *QueryResultBatch) GetSkippedCursor() []byte { 1005 if m != nil { 1006 return m.SkippedCursor 1007 } 1008 return nil 1009} 1010 1011func (m *QueryResultBatch) GetEntityResultType() EntityResult_ResultType { 1012 if m != nil { 1013 return m.EntityResultType 1014 } 1015 return EntityResult_RESULT_TYPE_UNSPECIFIED 1016} 1017 1018func (m *QueryResultBatch) GetEntityResults() []*EntityResult { 1019 if m != nil { 1020 return m.EntityResults 1021 } 1022 return nil 1023} 1024 1025func (m *QueryResultBatch) GetEndCursor() []byte { 1026 if m != nil { 1027 return m.EndCursor 1028 } 1029 return nil 1030} 1031 1032func (m *QueryResultBatch) GetMoreResults() QueryResultBatch_MoreResultsType { 1033 if m != nil { 1034 return m.MoreResults 1035 } 1036 return QueryResultBatch_MORE_RESULTS_TYPE_UNSPECIFIED 1037} 1038 1039func (m *QueryResultBatch) GetSnapshotVersion() int64 { 1040 if m != nil { 1041 return m.SnapshotVersion 1042 } 1043 return 0 1044} 1045 1046func init() { 1047 proto.RegisterEnum("google.datastore.v1beta3.EntityResult_ResultType", EntityResult_ResultType_name, EntityResult_ResultType_value) 1048 proto.RegisterEnum("google.datastore.v1beta3.PropertyOrder_Direction", PropertyOrder_Direction_name, PropertyOrder_Direction_value) 1049 proto.RegisterEnum("google.datastore.v1beta3.CompositeFilter_Operator", CompositeFilter_Operator_name, CompositeFilter_Operator_value) 1050 proto.RegisterEnum("google.datastore.v1beta3.PropertyFilter_Operator", PropertyFilter_Operator_name, PropertyFilter_Operator_value) 1051 proto.RegisterEnum("google.datastore.v1beta3.QueryResultBatch_MoreResultsType", QueryResultBatch_MoreResultsType_name, QueryResultBatch_MoreResultsType_value) 1052 proto.RegisterType((*EntityResult)(nil), "google.datastore.v1beta3.EntityResult") 1053 proto.RegisterType((*Query)(nil), "google.datastore.v1beta3.Query") 1054 proto.RegisterType((*KindExpression)(nil), "google.datastore.v1beta3.KindExpression") 1055 proto.RegisterType((*PropertyReference)(nil), "google.datastore.v1beta3.PropertyReference") 1056 proto.RegisterType((*Projection)(nil), "google.datastore.v1beta3.Projection") 1057 proto.RegisterType((*PropertyOrder)(nil), "google.datastore.v1beta3.PropertyOrder") 1058 proto.RegisterType((*Filter)(nil), "google.datastore.v1beta3.Filter") 1059 proto.RegisterType((*CompositeFilter)(nil), "google.datastore.v1beta3.CompositeFilter") 1060 proto.RegisterType((*PropertyFilter)(nil), "google.datastore.v1beta3.PropertyFilter") 1061 proto.RegisterType((*GqlQuery)(nil), "google.datastore.v1beta3.GqlQuery") 1062 proto.RegisterMapType((map[string]*GqlQueryParameter)(nil), "google.datastore.v1beta3.GqlQuery.NamedBindingsEntry") 1063 proto.RegisterType((*GqlQueryParameter)(nil), "google.datastore.v1beta3.GqlQueryParameter") 1064 proto.RegisterType((*QueryResultBatch)(nil), "google.datastore.v1beta3.QueryResultBatch") 1065} 1066 1067func init() { 1068 proto.RegisterFile("google/datastore/v1beta3/query.proto", fileDescriptor_7ed60bbcd54eb2b7) 1069} 1070 1071var fileDescriptor_7ed60bbcd54eb2b7 = []byte{ 1072 // 1323 bytes of a gzipped FileDescriptorProto 1073 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0xcb, 0x6e, 0xdb, 0x46, 1074 0x14, 0x35, 0xa9, 0x87, 0xa5, 0xab, 0x17, 0x33, 0x69, 0x53, 0xc6, 0x79, 0xd4, 0x21, 0x92, 0x46, 1075 0x41, 0x51, 0x09, 0x56, 0x10, 0x34, 0x48, 0xdb, 0x85, 0x1e, 0xb4, 0xad, 0x46, 0x16, 0x95, 0x91, 1076 0x6c, 0x20, 0x85, 0x0b, 0x82, 0x96, 0xc6, 0x0a, 0x1b, 0x8a, 0x64, 0xc8, 0x71, 0x12, 0x7f, 0x48, 1077 0x81, 0x7e, 0x43, 0x77, 0xfd, 0x83, 0x2e, 0xba, 0x2a, 0xd0, 0x6d, 0xb7, 0xfd, 0x80, 0x6e, 0xfa, 1078 0x07, 0x2d, 0x38, 0x33, 0xd4, 0xcb, 0x51, 0xe4, 0x02, 0xd9, 0x69, 0xee, 0x9c, 0x73, 0xee, 0xcc, 1079 0xe1, 0x9d, 0x99, 0x2b, 0xb8, 0x3b, 0xf6, 0xbc, 0xb1, 0x43, 0xaa, 0x23, 0x8b, 0x5a, 0x21, 0xf5, 1080 0x02, 0x52, 0x7d, 0xbd, 0x73, 0x42, 0xa8, 0xf5, 0xb0, 0xfa, 0xea, 0x8c, 0x04, 0xe7, 0x15, 0x3f, 1081 0xf0, 0xa8, 0x87, 0x54, 0x8e, 0xaa, 0x4c, 0x51, 0x15, 0x81, 0xda, 0xba, 0x29, 0xf8, 0x96, 0x6f, 1082 0x57, 0x2d, 0xd7, 0xf5, 0xa8, 0x45, 0x6d, 0xcf, 0x0d, 0x39, 0x6f, 0xeb, 0xde, 0x4a, 0x75, 0xe2, 1083 0x52, 0x9b, 0x0a, 0xf9, 0xad, 0xdb, 0x02, 0xc6, 0x46, 0x27, 0x67, 0xa7, 0xd5, 0x37, 0x81, 0xe5, 1084 0xfb, 0x24, 0x88, 0x65, 0x44, 0xfa, 0x2a, 0x3d, 0xf7, 0x49, 0xd5, 0xb1, 0xa8, 0xe3, 0x8e, 0xf9, 1085 0x8c, 0xf6, 0x87, 0x04, 0x79, 0x9d, 0x49, 0x61, 0x12, 0x9e, 0x39, 0x14, 0x3d, 0x86, 0x34, 0x97, 1086 0x56, 0xa5, 0x6d, 0xa9, 0x9c, 0xab, 0x6d, 0x57, 0x56, 0x2d, 0xbd, 0x22, 0x78, 0x02, 0x8f, 0x54, 1087 0xd8, 0x7c, 0x4d, 0x82, 0xd0, 0xf6, 0x5c, 0x35, 0xb9, 0x2d, 0x95, 0x13, 0x38, 0x1e, 0xa2, 0x6b, 1088 0x90, 0x1e, 0x9e, 0x05, 0xa1, 0x17, 0xa8, 0x89, 0x6d, 0xa9, 0x9c, 0xc7, 0x62, 0xa4, 0x3d, 0x03, 1089 0xe0, 0x59, 0x07, 0xe7, 0x3e, 0x41, 0x37, 0xe0, 0x13, 0xac, 0xf7, 0x0f, 0x3b, 0x03, 0x73, 0xf0, 1090 0xbc, 0xa7, 0x9b, 0x87, 0xdd, 0x7e, 0x4f, 0x6f, 0xb6, 0x77, 0xdb, 0x7a, 0x4b, 0xd9, 0x40, 0x19, 1091 0x48, 0xee, 0x1e, 0x76, 0x3a, 0x8a, 0x84, 0x8a, 0x00, 0x3d, 0x6c, 0x7c, 0xab, 0x37, 0x07, 0x6d, 1092 0xa3, 0xab, 0xc8, 0x28, 0x0f, 0x99, 0xa7, 0xfa, 0x73, 0xd3, 0xe8, 0x76, 0x9e, 0x2b, 0x09, 0xed, 1093 0xaf, 0x04, 0xa4, 0x9e, 0x45, 0xc6, 0xa3, 0x16, 0x80, 0x1f, 0x78, 0x3f, 0x90, 0x61, 0xe4, 0xa7, 1094 0x2a, 0x6f, 0x27, 0xca, 0xb9, 0xda, 0xdd, 0xd5, 0x9b, 0xe9, 0x4d, 0xb1, 0x78, 0x8e, 0x87, 0xbe, 1095 0x86, 0xe4, 0x4b, 0xdb, 0x1d, 0xa9, 0x09, 0xc6, 0x2f, 0xaf, 0xe6, 0x3f, 0xb5, 0xdd, 0x91, 0xfe, 1096 0xd6, 0x0f, 0x48, 0x18, 0x6d, 0x19, 0x33, 0x56, 0x64, 0xe6, 0xa9, 0xed, 0x50, 0x12, 0x30, 0x47, 1097 0xde, 0x6b, 0xe6, 0x2e, 0xc3, 0x61, 0x81, 0x47, 0xdf, 0x40, 0xca, 0x0b, 0x46, 0x24, 0x50, 0x53, 1098 0x2c, 0xf1, 0xfd, 0xf7, 0x2e, 0xdc, 0x27, 0x01, 0x3d, 0x37, 0x22, 0x38, 0xe6, 0x2c, 0xd4, 0x81, 1099 0xdc, 0xc8, 0x0e, 0xa9, 0xed, 0x0e, 0xa9, 0xe9, 0xb9, 0x6a, 0x9a, 0x89, 0x7c, 0xbe, 0x5e, 0x04, 1100 0x93, 0x53, 0x12, 0x10, 0x77, 0x48, 0x30, 0xc4, 0x7c, 0xc3, 0x45, 0x77, 0x20, 0x1f, 0x52, 0x2b, 1101 0xa0, 0xa6, 0xf8, 0x8a, 0x9b, 0xec, 0x2b, 0xe6, 0x58, 0xac, 0xc9, 0x42, 0xe8, 0x16, 0x00, 0x71, 1102 0x47, 0x31, 0x20, 0xc3, 0x00, 0x59, 0xe2, 0x8e, 0xc4, 0xf4, 0x35, 0x48, 0x7b, 0xa7, 0xa7, 0x21, 1103 0xa1, 0x2a, 0x6c, 0x4b, 0xe5, 0x14, 0x16, 0x23, 0xb4, 0x03, 0x29, 0xc7, 0x9e, 0xd8, 0x54, 0xcd, 1104 0x33, 0x7f, 0x6e, 0xc4, 0x2b, 0x8c, 0x0b, 0xb9, 0xd2, 0x76, 0xe9, 0xc3, 0xda, 0x91, 0xe5, 0x9c, 1105 0x11, 0xcc, 0x91, 0xda, 0x5d, 0x28, 0x2e, 0x7a, 0x8d, 0x10, 0x24, 0x5d, 0x6b, 0x42, 0x58, 0xc1, 1106 0x66, 0x31, 0xfb, 0xad, 0xdd, 0x87, 0x2b, 0x17, 0xf6, 0x34, 0x05, 0xca, 0x73, 0xc0, 0x43, 0x80, 1107 0xd9, 0xa7, 0x47, 0x7b, 0x90, 0xf1, 0x05, 0x4d, 0xd4, 0xff, 0xff, 0x32, 0x6d, 0x4a, 0xd6, 0xfe, 1108 0x91, 0xa0, 0xb0, 0xf0, 0x65, 0x3e, 0x98, 0x34, 0x32, 0x20, 0x3b, 0xb2, 0x83, 0x69, 0x5d, 0x4b, 1109 0xe5, 0x62, 0x6d, 0xe7, 0x92, 0xe5, 0x51, 0x69, 0xc5, 0x44, 0x3c, 0xd3, 0xd0, 0x74, 0xc8, 0x4e, 1110 0xe3, 0xe8, 0x3a, 0x7c, 0xdc, 0x6a, 0x63, 0x7e, 0xba, 0x96, 0xce, 0x60, 0x01, 0xb2, 0xf5, 0x7e, 1111 0x53, 0xef, 0xb6, 0xda, 0xdd, 0x3d, 0x7e, 0x10, 0x5b, 0xfa, 0x74, 0x2c, 0x6b, 0xbf, 0x49, 0x90, 1112 0xe6, 0x55, 0x8c, 0x8e, 0x40, 0x19, 0x7a, 0x13, 0xdf, 0x0b, 0x6d, 0x4a, 0x4c, 0x71, 0x02, 0xf8, 1113 0x9e, 0x1f, 0xac, 0x5e, 0x69, 0x33, 0x66, 0x70, 0x91, 0xfd, 0x0d, 0x5c, 0x1a, 0x2e, 0x86, 0x50, 1114 0x1f, 0x4a, 0xb1, 0x0d, 0xb1, 0xac, 0xcc, 0x64, 0xcb, 0xeb, 0x0d, 0x98, 0xaa, 0x16, 0xfd, 0x85, 1115 0x48, 0xa3, 0x00, 0x39, 0xae, 0x65, 0x46, 0xd7, 0xa3, 0xf6, 0xab, 0x04, 0xa5, 0xa5, 0xa5, 0xa0, 1116 0x06, 0xc8, 0x9e, 0xcf, 0x76, 0x50, 0xac, 0xd5, 0x2e, 0xbd, 0x83, 0x8a, 0xe1, 0x93, 0xc0, 0xa2, 1117 0x5e, 0x80, 0x65, 0xcf, 0x47, 0x4f, 0x60, 0x93, 0xa7, 0x09, 0xc5, 0x65, 0xb4, 0xfe, 0x32, 0x88, 1118 0x09, 0xda, 0x17, 0x90, 0x89, 0xb5, 0x90, 0x0a, 0x1f, 0x19, 0x3d, 0x1d, 0xd7, 0x07, 0x06, 0x5e, 1119 0xfa, 0x3e, 0x9b, 0x90, 0xa8, 0x77, 0x5b, 0x8a, 0xa4, 0xfd, 0x2d, 0x43, 0x71, 0x71, 0xdb, 0x1f, 1120 0xae, 0xfa, 0xea, 0xcc, 0x8a, 0x4b, 0x97, 0xdd, 0xbb, 0x9c, 0x78, 0x04, 0xa9, 0xd7, 0xd1, 0x89, 1121 0x66, 0xaf, 0x41, 0xae, 0xf6, 0xe9, 0x6a, 0x15, 0x71, 0xf0, 0x19, 0x5a, 0xfb, 0x51, 0xba, 0x94, 1122 0x0b, 0x05, 0xc8, 0x76, 0xf4, 0x7e, 0xdf, 0x1c, 0xec, 0xd7, 0xbb, 0x8a, 0x84, 0xae, 0x01, 0x9a, 1123 0x0e, 0x4d, 0x03, 0x9b, 0xfa, 0xb3, 0xc3, 0x7a, 0x47, 0x91, 0x91, 0x02, 0xf9, 0x3d, 0xac, 0xd7, 1124 0x07, 0x3a, 0xe6, 0xc8, 0x44, 0x54, 0xf9, 0xf3, 0x91, 0x19, 0x38, 0x89, 0xb2, 0x90, 0xe2, 0x3f, 1125 0x53, 0x11, 0x6f, 0xbf, 0xde, 0x37, 0xeb, 0xdd, 0xa6, 0xde, 0x1f, 0x18, 0x58, 0xc9, 0x69, 0xff, 1126 0xca, 0x90, 0xd9, 0x7b, 0xe5, 0xf0, 0x57, 0xe7, 0x0e, 0xe4, 0xd9, 0xbb, 0x6f, 0x86, 0x34, 0xb0, 1127 0xdd, 0xb1, 0xb8, 0x93, 0x72, 0x2c, 0xd6, 0x67, 0x21, 0x74, 0x0f, 0x8a, 0x96, 0xe3, 0x78, 0x6f, 1128 0x4c, 0xc7, 0xa6, 0x24, 0xb0, 0x9c, 0x90, 0xb9, 0x99, 0xc1, 0x05, 0x16, 0xed, 0x88, 0x20, 0x3a, 1129 0x86, 0x62, 0x74, 0x41, 0x8d, 0xcc, 0x13, 0xdb, 0x1d, 0xd9, 0xee, 0x38, 0x14, 0x4f, 0xc1, 0xa3, 1130 0xd5, 0x76, 0xc5, 0xab, 0xa8, 0x74, 0x23, 0x62, 0x43, 0xf0, 0x74, 0x97, 0x06, 0xe7, 0xb8, 0xe0, 1131 0xce, 0xc7, 0xd0, 0x31, 0x5c, 0x65, 0xa5, 0x6a, 0x7b, 0xae, 0xe5, 0xcc, 0x52, 0x24, 0xd7, 0x3d, 1132 0x14, 0x71, 0x8a, 0x9e, 0x15, 0x58, 0x13, 0x12, 0x15, 0x29, 0x9a, 0xe9, 0xc4, 0xea, 0x5b, 0x13, 1133 0x40, 0x17, 0x97, 0x80, 0x14, 0x48, 0xbc, 0x24, 0xe7, 0xc2, 0x92, 0xe8, 0x27, 0xaa, 0xc7, 0x95, 1134 0x20, 0xaf, 0x2b, 0xc9, 0x8b, 0x79, 0x39, 0xf3, 0x89, 0xfc, 0x58, 0xd2, 0xde, 0xc2, 0x95, 0x0b, 1135 0xf3, 0xe8, 0xcb, 0x45, 0xed, 0x75, 0x55, 0xb6, 0xbf, 0x21, 0x14, 0x91, 0xba, 0xd8, 0xad, 0xec, 1136 0x6f, 0xc4, 0xfd, 0x4a, 0x43, 0x81, 0xa2, 0x1f, 0xeb, 0xf3, 0xcb, 0xe2, 0xcf, 0x24, 0x28, 0x2c, 1137 0x2f, 0xef, 0x63, 0x1a, 0x16, 0x1d, 0xbe, 0x40, 0xf7, 0xa1, 0x14, 0xbe, 0xb4, 0x7d, 0x9f, 0x8c, 1138 0xcc, 0x80, 0x85, 0x43, 0x35, 0xcd, 0x5e, 0xbd, 0xa2, 0x08, 0x73, 0x70, 0x18, 0x55, 0x42, 0x0c, 1139 0x5c, 0xe8, 0x8f, 0x0a, 0x22, 0x2a, 0x1e, 0x4f, 0x13, 0x10, 0x6f, 0xb1, 0x84, 0x1c, 0x4b, 0x2d, 1140 0x6e, 0xa3, 0x9d, 0xb5, 0xed, 0x19, 0xa3, 0x54, 0x66, 0x7d, 0x16, 0x56, 0xc8, 0xdc, 0x04, 0xeb, 1141 0xbc, 0x0e, 0xa0, 0xb8, 0x90, 0x20, 0xbe, 0xa1, 0x3e, 0xbb, 0x9c, 0x38, 0x2e, 0xcc, 0x2b, 0x86, 1142 0x4b, 0xbd, 0x40, 0x72, 0xb9, 0x17, 0xf8, 0x1e, 0xf2, 0x13, 0x2f, 0x20, 0xd3, 0x5c, 0x29, 0xb6, 1143 0x91, 0x27, 0xab, 0x73, 0x2d, 0x1b, 0x5c, 0x39, 0xf0, 0x02, 0x22, 0x92, 0xb1, 0x1d, 0xe5, 0x26, 1144 0xb3, 0x00, 0x7a, 0x00, 0x4a, 0xe8, 0x5a, 0x7e, 0xf8, 0xc2, 0xa3, 0x66, 0xdc, 0x8f, 0x6e, 0xb2, 1145 0x7e, 0xb4, 0x14, 0xc7, 0x8f, 0x78, 0x58, 0xfb, 0x49, 0x82, 0xd2, 0x92, 0x16, 0xba, 0x03, 0xb7, 1146 0x0e, 0x0c, 0xac, 0x9b, 0xbc, 0x15, 0xed, 0xbf, 0xab, 0x17, 0x55, 0x20, 0xdf, 0x35, 0x06, 0xe6, 1147 0x6e, 0xbb, 0xdb, 0xee, 0xef, 0xeb, 0x2d, 0x45, 0x42, 0x37, 0x41, 0x5d, 0x20, 0xd5, 0x77, 0xa3, 1148 0x5b, 0xa4, 0xd3, 0x3e, 0x68, 0x0f, 0x14, 0x19, 0xdd, 0x82, 0xeb, 0xef, 0x98, 0x6d, 0x1e, 0xe2, 1149 0xbe, 0x81, 0x95, 0x24, 0xba, 0x0a, 0xa5, 0xae, 0x61, 0xce, 0x23, 0x94, 0x44, 0xe3, 0x17, 0x09, 1150 0x6e, 0x0e, 0xbd, 0xc9, 0x4a, 0x53, 0x1a, 0xc0, 0xcb, 0x3d, 0xea, 0x93, 0x7a, 0xd2, 0x77, 0x75, 1151 0x81, 0x1b, 0x7b, 0x8e, 0xe5, 0x8e, 0x2b, 0x5e, 0x30, 0xae, 0x8e, 0x89, 0xcb, 0xba, 0xa8, 0x2a, 1152 0x9f, 0xb2, 0x7c, 0x3b, 0xbc, 0xf8, 0x37, 0xe2, 0xab, 0x69, 0xe4, 0x67, 0xf9, 0xf6, 0x1e, 0xd7, 1153 0x68, 0x3a, 0xde, 0xd9, 0xa8, 0xd2, 0x9a, 0x66, 0x3c, 0xda, 0x69, 0x44, 0xd0, 0xdf, 0x63, 0xc0, 1154 0x31, 0x03, 0x1c, 0x4f, 0x01, 0xc7, 0x47, 0x5c, 0xeb, 0x24, 0xcd, 0xf2, 0x3d, 0xfc, 0x2f, 0x00, 1155 0x00, 0xff, 0xff, 0x61, 0xdf, 0x90, 0xd9, 0x13, 0x0d, 0x00, 0x00, 1156} 1157