1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/genomics/v1/annotations.proto 3 4/* 5Package genomics is a generated protocol buffer package. 6 7It is generated from these files: 8 google/genomics/v1/annotations.proto 9 google/genomics/v1/cigar.proto 10 google/genomics/v1/datasets.proto 11 google/genomics/v1/operations.proto 12 google/genomics/v1/position.proto 13 google/genomics/v1/range.proto 14 google/genomics/v1/readalignment.proto 15 google/genomics/v1/readgroup.proto 16 google/genomics/v1/readgroupset.proto 17 google/genomics/v1/reads.proto 18 google/genomics/v1/references.proto 19 google/genomics/v1/variants.proto 20 21It has these top-level messages: 22 AnnotationSet 23 Annotation 24 VariantAnnotation 25 Transcript 26 ExternalId 27 CreateAnnotationSetRequest 28 GetAnnotationSetRequest 29 UpdateAnnotationSetRequest 30 DeleteAnnotationSetRequest 31 SearchAnnotationSetsRequest 32 SearchAnnotationSetsResponse 33 CreateAnnotationRequest 34 BatchCreateAnnotationsRequest 35 BatchCreateAnnotationsResponse 36 GetAnnotationRequest 37 UpdateAnnotationRequest 38 DeleteAnnotationRequest 39 SearchAnnotationsRequest 40 SearchAnnotationsResponse 41 CigarUnit 42 Dataset 43 ListDatasetsRequest 44 ListDatasetsResponse 45 CreateDatasetRequest 46 UpdateDatasetRequest 47 DeleteDatasetRequest 48 UndeleteDatasetRequest 49 GetDatasetRequest 50 OperationMetadata 51 OperationEvent 52 Position 53 Range 54 LinearAlignment 55 Read 56 ReadGroup 57 ReadGroupSet 58 SearchReadGroupSetsRequest 59 SearchReadGroupSetsResponse 60 ImportReadGroupSetsRequest 61 ImportReadGroupSetsResponse 62 ExportReadGroupSetRequest 63 UpdateReadGroupSetRequest 64 DeleteReadGroupSetRequest 65 GetReadGroupSetRequest 66 ListCoverageBucketsRequest 67 CoverageBucket 68 ListCoverageBucketsResponse 69 SearchReadsRequest 70 SearchReadsResponse 71 StreamReadsRequest 72 StreamReadsResponse 73 Reference 74 ReferenceSet 75 SearchReferenceSetsRequest 76 SearchReferenceSetsResponse 77 GetReferenceSetRequest 78 SearchReferencesRequest 79 SearchReferencesResponse 80 GetReferenceRequest 81 ListBasesRequest 82 ListBasesResponse 83 VariantSetMetadata 84 VariantSet 85 Variant 86 VariantCall 87 CallSet 88 ReferenceBound 89 ImportVariantsRequest 90 ImportVariantsResponse 91 CreateVariantSetRequest 92 ExportVariantSetRequest 93 GetVariantSetRequest 94 SearchVariantSetsRequest 95 SearchVariantSetsResponse 96 DeleteVariantSetRequest 97 UpdateVariantSetRequest 98 SearchVariantsRequest 99 SearchVariantsResponse 100 CreateVariantRequest 101 UpdateVariantRequest 102 DeleteVariantRequest 103 GetVariantRequest 104 MergeVariantsRequest 105 SearchCallSetsRequest 106 SearchCallSetsResponse 107 CreateCallSetRequest 108 UpdateCallSetRequest 109 DeleteCallSetRequest 110 GetCallSetRequest 111 StreamVariantsRequest 112 StreamVariantsResponse 113*/ 114package genomics 115 116import proto "github.com/golang/protobuf/proto" 117import fmt "fmt" 118import math "math" 119import _ "google.golang.org/genproto/googleapis/api/annotations" 120import google_protobuf1 "github.com/golang/protobuf/ptypes/empty" 121import google_protobuf2 "google.golang.org/genproto/protobuf/field_mask" 122import google_protobuf3 "github.com/golang/protobuf/ptypes/struct" 123import google_protobuf4 "github.com/golang/protobuf/ptypes/wrappers" 124import google_rpc "google.golang.org/genproto/googleapis/rpc/status" 125 126import ( 127 context "golang.org/x/net/context" 128 grpc "google.golang.org/grpc" 129) 130 131// Reference imports to suppress errors if they are not otherwise used. 132var _ = proto.Marshal 133var _ = fmt.Errorf 134var _ = math.Inf 135 136// This is a compile-time assertion to ensure that this generated file 137// is compatible with the proto package it is being compiled against. 138// A compilation error at this line likely means your copy of the 139// proto package needs to be updated. 140const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package 141 142// When an [Annotation][google.genomics.v1.Annotation] or 143// [AnnotationSet][google.genomics.v1.AnnotationSet] is created, if `type` is 144// not specified it will be set to `GENERIC`. 145type AnnotationType int32 146 147const ( 148 AnnotationType_ANNOTATION_TYPE_UNSPECIFIED AnnotationType = 0 149 // A `GENERIC` annotation type should be used when no other annotation 150 // type will suffice. This represents an untyped annotation of the reference 151 // genome. 152 AnnotationType_GENERIC AnnotationType = 1 153 // A `VARIANT` annotation type. 154 AnnotationType_VARIANT AnnotationType = 2 155 // A `GENE` annotation type represents the existence of a gene at the 156 // associated reference coordinates. The start coordinate is typically the 157 // gene's transcription start site and the end is typically the end of the 158 // gene's last exon. 159 AnnotationType_GENE AnnotationType = 3 160 // A `TRANSCRIPT` annotation type represents the assertion that a 161 // particular region of the reference genome may be transcribed as RNA. 162 AnnotationType_TRANSCRIPT AnnotationType = 4 163) 164 165var AnnotationType_name = map[int32]string{ 166 0: "ANNOTATION_TYPE_UNSPECIFIED", 167 1: "GENERIC", 168 2: "VARIANT", 169 3: "GENE", 170 4: "TRANSCRIPT", 171} 172var AnnotationType_value = map[string]int32{ 173 "ANNOTATION_TYPE_UNSPECIFIED": 0, 174 "GENERIC": 1, 175 "VARIANT": 2, 176 "GENE": 3, 177 "TRANSCRIPT": 4, 178} 179 180func (x AnnotationType) String() string { 181 return proto.EnumName(AnnotationType_name, int32(x)) 182} 183func (AnnotationType) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } 184 185type VariantAnnotation_Type int32 186 187const ( 188 VariantAnnotation_TYPE_UNSPECIFIED VariantAnnotation_Type = 0 189 // `TYPE_OTHER` should be used when no other Type will suffice. 190 // Further explanation of the variant type may be included in the 191 // [info][google.genomics.v1.Annotation.info] field. 192 VariantAnnotation_TYPE_OTHER VariantAnnotation_Type = 1 193 // `INSERTION` indicates an insertion. 194 VariantAnnotation_INSERTION VariantAnnotation_Type = 2 195 // `DELETION` indicates a deletion. 196 VariantAnnotation_DELETION VariantAnnotation_Type = 3 197 // `SUBSTITUTION` indicates a block substitution of 198 // two or more nucleotides. 199 VariantAnnotation_SUBSTITUTION VariantAnnotation_Type = 4 200 // `SNP` indicates a single nucleotide polymorphism. 201 VariantAnnotation_SNP VariantAnnotation_Type = 5 202 // `STRUCTURAL` indicates a large structural variant, 203 // including chromosomal fusions, inversions, etc. 204 VariantAnnotation_STRUCTURAL VariantAnnotation_Type = 6 205 // `CNV` indicates a variation in copy number. 206 VariantAnnotation_CNV VariantAnnotation_Type = 7 207) 208 209var VariantAnnotation_Type_name = map[int32]string{ 210 0: "TYPE_UNSPECIFIED", 211 1: "TYPE_OTHER", 212 2: "INSERTION", 213 3: "DELETION", 214 4: "SUBSTITUTION", 215 5: "SNP", 216 6: "STRUCTURAL", 217 7: "CNV", 218} 219var VariantAnnotation_Type_value = map[string]int32{ 220 "TYPE_UNSPECIFIED": 0, 221 "TYPE_OTHER": 1, 222 "INSERTION": 2, 223 "DELETION": 3, 224 "SUBSTITUTION": 4, 225 "SNP": 5, 226 "STRUCTURAL": 6, 227 "CNV": 7, 228} 229 230func (x VariantAnnotation_Type) String() string { 231 return proto.EnumName(VariantAnnotation_Type_name, int32(x)) 232} 233func (VariantAnnotation_Type) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2, 0} } 234 235type VariantAnnotation_Effect int32 236 237const ( 238 VariantAnnotation_EFFECT_UNSPECIFIED VariantAnnotation_Effect = 0 239 // `EFFECT_OTHER` should be used when no other Effect 240 // will suffice. 241 VariantAnnotation_EFFECT_OTHER VariantAnnotation_Effect = 1 242 // `FRAMESHIFT` indicates a mutation in which the insertion or 243 // deletion of nucleotides resulted in a frameshift change. 244 VariantAnnotation_FRAMESHIFT VariantAnnotation_Effect = 2 245 // `FRAME_PRESERVING_INDEL` indicates a mutation in which a 246 // multiple of three nucleotides has been inserted or deleted, resulting 247 // in no change to the reading frame of the coding sequence. 248 VariantAnnotation_FRAME_PRESERVING_INDEL VariantAnnotation_Effect = 3 249 // `SYNONYMOUS_SNP` indicates a single nucleotide polymorphism 250 // mutation that results in no amino acid change. 251 VariantAnnotation_SYNONYMOUS_SNP VariantAnnotation_Effect = 4 252 // `NONSYNONYMOUS_SNP` indicates a single nucleotide 253 // polymorphism mutation that results in an amino acid change. 254 VariantAnnotation_NONSYNONYMOUS_SNP VariantAnnotation_Effect = 5 255 // `STOP_GAIN` indicates a mutation that leads to the creation 256 // of a stop codon at the variant site. Frameshift mutations creating 257 // downstream stop codons do not count as `STOP_GAIN`. 258 VariantAnnotation_STOP_GAIN VariantAnnotation_Effect = 6 259 // `STOP_LOSS` indicates a mutation that eliminates a 260 // stop codon at the variant site. 261 VariantAnnotation_STOP_LOSS VariantAnnotation_Effect = 7 262 // `SPLICE_SITE_DISRUPTION` indicates that this variant is 263 // found in a splice site for the associated transcript, and alters the 264 // normal splicing pattern. 265 VariantAnnotation_SPLICE_SITE_DISRUPTION VariantAnnotation_Effect = 8 266) 267 268var VariantAnnotation_Effect_name = map[int32]string{ 269 0: "EFFECT_UNSPECIFIED", 270 1: "EFFECT_OTHER", 271 2: "FRAMESHIFT", 272 3: "FRAME_PRESERVING_INDEL", 273 4: "SYNONYMOUS_SNP", 274 5: "NONSYNONYMOUS_SNP", 275 6: "STOP_GAIN", 276 7: "STOP_LOSS", 277 8: "SPLICE_SITE_DISRUPTION", 278} 279var VariantAnnotation_Effect_value = map[string]int32{ 280 "EFFECT_UNSPECIFIED": 0, 281 "EFFECT_OTHER": 1, 282 "FRAMESHIFT": 2, 283 "FRAME_PRESERVING_INDEL": 3, 284 "SYNONYMOUS_SNP": 4, 285 "NONSYNONYMOUS_SNP": 5, 286 "STOP_GAIN": 6, 287 "STOP_LOSS": 7, 288 "SPLICE_SITE_DISRUPTION": 8, 289} 290 291func (x VariantAnnotation_Effect) String() string { 292 return proto.EnumName(VariantAnnotation_Effect_name, int32(x)) 293} 294func (VariantAnnotation_Effect) EnumDescriptor() ([]byte, []int) { return fileDescriptor0, []int{2, 1} } 295 296type VariantAnnotation_ClinicalSignificance int32 297 298const ( 299 VariantAnnotation_CLINICAL_SIGNIFICANCE_UNSPECIFIED VariantAnnotation_ClinicalSignificance = 0 300 // `OTHER` should be used when no other clinical significance 301 // value will suffice. 302 VariantAnnotation_CLINICAL_SIGNIFICANCE_OTHER VariantAnnotation_ClinicalSignificance = 1 303 VariantAnnotation_UNCERTAIN VariantAnnotation_ClinicalSignificance = 2 304 VariantAnnotation_BENIGN VariantAnnotation_ClinicalSignificance = 3 305 VariantAnnotation_LIKELY_BENIGN VariantAnnotation_ClinicalSignificance = 4 306 VariantAnnotation_LIKELY_PATHOGENIC VariantAnnotation_ClinicalSignificance = 5 307 VariantAnnotation_PATHOGENIC VariantAnnotation_ClinicalSignificance = 6 308 VariantAnnotation_DRUG_RESPONSE VariantAnnotation_ClinicalSignificance = 7 309 VariantAnnotation_HISTOCOMPATIBILITY VariantAnnotation_ClinicalSignificance = 8 310 VariantAnnotation_CONFERS_SENSITIVITY VariantAnnotation_ClinicalSignificance = 9 311 VariantAnnotation_RISK_FACTOR VariantAnnotation_ClinicalSignificance = 10 312 VariantAnnotation_ASSOCIATION VariantAnnotation_ClinicalSignificance = 11 313 VariantAnnotation_PROTECTIVE VariantAnnotation_ClinicalSignificance = 12 314 // `MULTIPLE_REPORTED` should be used when multiple clinical 315 // signficances are reported for a variant. The original clinical 316 // significance values may be provided in the `info` field. 317 VariantAnnotation_MULTIPLE_REPORTED VariantAnnotation_ClinicalSignificance = 13 318) 319 320var VariantAnnotation_ClinicalSignificance_name = map[int32]string{ 321 0: "CLINICAL_SIGNIFICANCE_UNSPECIFIED", 322 1: "CLINICAL_SIGNIFICANCE_OTHER", 323 2: "UNCERTAIN", 324 3: "BENIGN", 325 4: "LIKELY_BENIGN", 326 5: "LIKELY_PATHOGENIC", 327 6: "PATHOGENIC", 328 7: "DRUG_RESPONSE", 329 8: "HISTOCOMPATIBILITY", 330 9: "CONFERS_SENSITIVITY", 331 10: "RISK_FACTOR", 332 11: "ASSOCIATION", 333 12: "PROTECTIVE", 334 13: "MULTIPLE_REPORTED", 335} 336var VariantAnnotation_ClinicalSignificance_value = map[string]int32{ 337 "CLINICAL_SIGNIFICANCE_UNSPECIFIED": 0, 338 "CLINICAL_SIGNIFICANCE_OTHER": 1, 339 "UNCERTAIN": 2, 340 "BENIGN": 3, 341 "LIKELY_BENIGN": 4, 342 "LIKELY_PATHOGENIC": 5, 343 "PATHOGENIC": 6, 344 "DRUG_RESPONSE": 7, 345 "HISTOCOMPATIBILITY": 8, 346 "CONFERS_SENSITIVITY": 9, 347 "RISK_FACTOR": 10, 348 "ASSOCIATION": 11, 349 "PROTECTIVE": 12, 350 "MULTIPLE_REPORTED": 13, 351} 352 353func (x VariantAnnotation_ClinicalSignificance) String() string { 354 return proto.EnumName(VariantAnnotation_ClinicalSignificance_name, int32(x)) 355} 356func (VariantAnnotation_ClinicalSignificance) EnumDescriptor() ([]byte, []int) { 357 return fileDescriptor0, []int{2, 2} 358} 359 360// An annotation set is a logical grouping of annotations that share consistent 361// type information and provenance. Examples of annotation sets include 'all 362// genes from refseq', and 'all variant annotations from ClinVar'. 363type AnnotationSet struct { 364 // The server-generated annotation set ID, unique across all annotation sets. 365 Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` 366 // The dataset to which this annotation set belongs. 367 DatasetId string `protobuf:"bytes,2,opt,name=dataset_id,json=datasetId" json:"dataset_id,omitempty"` 368 // The ID of the reference set that defines the coordinate space for this 369 // set's annotations. 370 ReferenceSetId string `protobuf:"bytes,3,opt,name=reference_set_id,json=referenceSetId" json:"reference_set_id,omitempty"` 371 // The display name for this annotation set. 372 Name string `protobuf:"bytes,4,opt,name=name" json:"name,omitempty"` 373 // The source URI describing the file from which this annotation set was 374 // generated, if any. 375 SourceUri string `protobuf:"bytes,5,opt,name=source_uri,json=sourceUri" json:"source_uri,omitempty"` 376 // The type of annotations contained within this set. 377 Type AnnotationType `protobuf:"varint,6,opt,name=type,enum=google.genomics.v1.AnnotationType" json:"type,omitempty"` 378 // A map of additional read alignment information. This must be of the form 379 // map<string, string[]> (string key mapping to a list of string values). 380 Info map[string]*google_protobuf3.ListValue `protobuf:"bytes,17,rep,name=info" json:"info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` 381} 382 383func (m *AnnotationSet) Reset() { *m = AnnotationSet{} } 384func (m *AnnotationSet) String() string { return proto.CompactTextString(m) } 385func (*AnnotationSet) ProtoMessage() {} 386func (*AnnotationSet) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} } 387 388func (m *AnnotationSet) GetId() string { 389 if m != nil { 390 return m.Id 391 } 392 return "" 393} 394 395func (m *AnnotationSet) GetDatasetId() string { 396 if m != nil { 397 return m.DatasetId 398 } 399 return "" 400} 401 402func (m *AnnotationSet) GetReferenceSetId() string { 403 if m != nil { 404 return m.ReferenceSetId 405 } 406 return "" 407} 408 409func (m *AnnotationSet) GetName() string { 410 if m != nil { 411 return m.Name 412 } 413 return "" 414} 415 416func (m *AnnotationSet) GetSourceUri() string { 417 if m != nil { 418 return m.SourceUri 419 } 420 return "" 421} 422 423func (m *AnnotationSet) GetType() AnnotationType { 424 if m != nil { 425 return m.Type 426 } 427 return AnnotationType_ANNOTATION_TYPE_UNSPECIFIED 428} 429 430func (m *AnnotationSet) GetInfo() map[string]*google_protobuf3.ListValue { 431 if m != nil { 432 return m.Info 433 } 434 return nil 435} 436 437// An annotation describes a region of reference genome. The value of an 438// annotation may be one of several canonical types, supplemented by arbitrary 439// info tags. An annotation is not inherently associated with a specific 440// sample or individual (though a client could choose to use annotations in 441// this way). Example canonical annotation types are `GENE` and 442// `VARIANT`. 443type Annotation struct { 444 // The server-generated annotation ID, unique across all annotations. 445 Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"` 446 // The annotation set to which this annotation belongs. 447 AnnotationSetId string `protobuf:"bytes,2,opt,name=annotation_set_id,json=annotationSetId" json:"annotation_set_id,omitempty"` 448 // The display name of this annotation. 449 Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` 450 // The ID of the Google Genomics reference associated with this range. 451 ReferenceId string `protobuf:"bytes,4,opt,name=reference_id,json=referenceId" json:"reference_id,omitempty"` 452 // The display name corresponding to the reference specified by 453 // `referenceId`, for example `chr1`, `1`, or `chrX`. 454 ReferenceName string `protobuf:"bytes,5,opt,name=reference_name,json=referenceName" json:"reference_name,omitempty"` 455 // The start position of the range on the reference, 0-based inclusive. 456 Start int64 `protobuf:"varint,6,opt,name=start" json:"start,omitempty"` 457 // The end position of the range on the reference, 0-based exclusive. 458 End int64 `protobuf:"varint,7,opt,name=end" json:"end,omitempty"` 459 // Whether this range refers to the reverse strand, as opposed to the forward 460 // strand. Note that regardless of this field, the start/end position of the 461 // range always refer to the forward strand. 462 ReverseStrand bool `protobuf:"varint,8,opt,name=reverse_strand,json=reverseStrand" json:"reverse_strand,omitempty"` 463 // The data type for this annotation. Must match the containing annotation 464 // set's type. 465 Type AnnotationType `protobuf:"varint,9,opt,name=type,enum=google.genomics.v1.AnnotationType" json:"type,omitempty"` 466 // Types that are valid to be assigned to Value: 467 // *Annotation_Variant 468 // *Annotation_Transcript 469 Value isAnnotation_Value `protobuf_oneof:"value"` 470 // A map of additional read alignment information. This must be of the form 471 // map<string, string[]> (string key mapping to a list of string values). 472 Info map[string]*google_protobuf3.ListValue `protobuf:"bytes,12,rep,name=info" json:"info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` 473} 474 475func (m *Annotation) Reset() { *m = Annotation{} } 476func (m *Annotation) String() string { return proto.CompactTextString(m) } 477func (*Annotation) ProtoMessage() {} 478func (*Annotation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} } 479 480type isAnnotation_Value interface { 481 isAnnotation_Value() 482} 483 484type Annotation_Variant struct { 485 Variant *VariantAnnotation `protobuf:"bytes,10,opt,name=variant,oneof"` 486} 487type Annotation_Transcript struct { 488 Transcript *Transcript `protobuf:"bytes,11,opt,name=transcript,oneof"` 489} 490 491func (*Annotation_Variant) isAnnotation_Value() {} 492func (*Annotation_Transcript) isAnnotation_Value() {} 493 494func (m *Annotation) GetValue() isAnnotation_Value { 495 if m != nil { 496 return m.Value 497 } 498 return nil 499} 500 501func (m *Annotation) GetId() string { 502 if m != nil { 503 return m.Id 504 } 505 return "" 506} 507 508func (m *Annotation) GetAnnotationSetId() string { 509 if m != nil { 510 return m.AnnotationSetId 511 } 512 return "" 513} 514 515func (m *Annotation) GetName() string { 516 if m != nil { 517 return m.Name 518 } 519 return "" 520} 521 522func (m *Annotation) GetReferenceId() string { 523 if m != nil { 524 return m.ReferenceId 525 } 526 return "" 527} 528 529func (m *Annotation) GetReferenceName() string { 530 if m != nil { 531 return m.ReferenceName 532 } 533 return "" 534} 535 536func (m *Annotation) GetStart() int64 { 537 if m != nil { 538 return m.Start 539 } 540 return 0 541} 542 543func (m *Annotation) GetEnd() int64 { 544 if m != nil { 545 return m.End 546 } 547 return 0 548} 549 550func (m *Annotation) GetReverseStrand() bool { 551 if m != nil { 552 return m.ReverseStrand 553 } 554 return false 555} 556 557func (m *Annotation) GetType() AnnotationType { 558 if m != nil { 559 return m.Type 560 } 561 return AnnotationType_ANNOTATION_TYPE_UNSPECIFIED 562} 563 564func (m *Annotation) GetVariant() *VariantAnnotation { 565 if x, ok := m.GetValue().(*Annotation_Variant); ok { 566 return x.Variant 567 } 568 return nil 569} 570 571func (m *Annotation) GetTranscript() *Transcript { 572 if x, ok := m.GetValue().(*Annotation_Transcript); ok { 573 return x.Transcript 574 } 575 return nil 576} 577 578func (m *Annotation) GetInfo() map[string]*google_protobuf3.ListValue { 579 if m != nil { 580 return m.Info 581 } 582 return nil 583} 584 585// XXX_OneofFuncs is for the internal use of the proto package. 586func (*Annotation) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { 587 return _Annotation_OneofMarshaler, _Annotation_OneofUnmarshaler, _Annotation_OneofSizer, []interface{}{ 588 (*Annotation_Variant)(nil), 589 (*Annotation_Transcript)(nil), 590 } 591} 592 593func _Annotation_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { 594 m := msg.(*Annotation) 595 // value 596 switch x := m.Value.(type) { 597 case *Annotation_Variant: 598 b.EncodeVarint(10<<3 | proto.WireBytes) 599 if err := b.EncodeMessage(x.Variant); err != nil { 600 return err 601 } 602 case *Annotation_Transcript: 603 b.EncodeVarint(11<<3 | proto.WireBytes) 604 if err := b.EncodeMessage(x.Transcript); err != nil { 605 return err 606 } 607 case nil: 608 default: 609 return fmt.Errorf("Annotation.Value has unexpected type %T", x) 610 } 611 return nil 612} 613 614func _Annotation_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { 615 m := msg.(*Annotation) 616 switch tag { 617 case 10: // value.variant 618 if wire != proto.WireBytes { 619 return true, proto.ErrInternalBadWireType 620 } 621 msg := new(VariantAnnotation) 622 err := b.DecodeMessage(msg) 623 m.Value = &Annotation_Variant{msg} 624 return true, err 625 case 11: // value.transcript 626 if wire != proto.WireBytes { 627 return true, proto.ErrInternalBadWireType 628 } 629 msg := new(Transcript) 630 err := b.DecodeMessage(msg) 631 m.Value = &Annotation_Transcript{msg} 632 return true, err 633 default: 634 return false, nil 635 } 636} 637 638func _Annotation_OneofSizer(msg proto.Message) (n int) { 639 m := msg.(*Annotation) 640 // value 641 switch x := m.Value.(type) { 642 case *Annotation_Variant: 643 s := proto.Size(x.Variant) 644 n += proto.SizeVarint(10<<3 | proto.WireBytes) 645 n += proto.SizeVarint(uint64(s)) 646 n += s 647 case *Annotation_Transcript: 648 s := proto.Size(x.Transcript) 649 n += proto.SizeVarint(11<<3 | proto.WireBytes) 650 n += proto.SizeVarint(uint64(s)) 651 n += s 652 case nil: 653 default: 654 panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) 655 } 656 return n 657} 658 659type VariantAnnotation struct { 660 // Type has been adapted from ClinVar's list of variant types. 661 Type VariantAnnotation_Type `protobuf:"varint,1,opt,name=type,enum=google.genomics.v1.VariantAnnotation_Type" json:"type,omitempty"` 662 // Effect of the variant on the coding sequence. 663 Effect VariantAnnotation_Effect `protobuf:"varint,2,opt,name=effect,enum=google.genomics.v1.VariantAnnotation_Effect" json:"effect,omitempty"` 664 // The alternate allele for this variant. If multiple alternate alleles 665 // exist at this location, create a separate variant for each one, as they 666 // may represent distinct conditions. 667 AlternateBases string `protobuf:"bytes,3,opt,name=alternate_bases,json=alternateBases" json:"alternate_bases,omitempty"` 668 // Google annotation ID of the gene affected by this variant. This should 669 // be provided when the variant is created. 670 GeneId string `protobuf:"bytes,4,opt,name=gene_id,json=geneId" json:"gene_id,omitempty"` 671 // Google annotation IDs of the transcripts affected by this variant. These 672 // should be provided when the variant is created. 673 TranscriptIds []string `protobuf:"bytes,5,rep,name=transcript_ids,json=transcriptIds" json:"transcript_ids,omitempty"` 674 // The set of conditions associated with this variant. 675 // A condition describes the way a variant influences human health. 676 Conditions []*VariantAnnotation_ClinicalCondition `protobuf:"bytes,6,rep,name=conditions" json:"conditions,omitempty"` 677 // Describes the clinical significance of a variant. 678 // It is adapted from the ClinVar controlled vocabulary for clinical 679 // significance described at: 680 // http://www.ncbi.nlm.nih.gov/clinvar/docs/clinsig/ 681 ClinicalSignificance VariantAnnotation_ClinicalSignificance `protobuf:"varint,7,opt,name=clinical_significance,json=clinicalSignificance,enum=google.genomics.v1.VariantAnnotation_ClinicalSignificance" json:"clinical_significance,omitempty"` 682} 683 684func (m *VariantAnnotation) Reset() { *m = VariantAnnotation{} } 685func (m *VariantAnnotation) String() string { return proto.CompactTextString(m) } 686func (*VariantAnnotation) ProtoMessage() {} 687func (*VariantAnnotation) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} } 688 689func (m *VariantAnnotation) GetType() VariantAnnotation_Type { 690 if m != nil { 691 return m.Type 692 } 693 return VariantAnnotation_TYPE_UNSPECIFIED 694} 695 696func (m *VariantAnnotation) GetEffect() VariantAnnotation_Effect { 697 if m != nil { 698 return m.Effect 699 } 700 return VariantAnnotation_EFFECT_UNSPECIFIED 701} 702 703func (m *VariantAnnotation) GetAlternateBases() string { 704 if m != nil { 705 return m.AlternateBases 706 } 707 return "" 708} 709 710func (m *VariantAnnotation) GetGeneId() string { 711 if m != nil { 712 return m.GeneId 713 } 714 return "" 715} 716 717func (m *VariantAnnotation) GetTranscriptIds() []string { 718 if m != nil { 719 return m.TranscriptIds 720 } 721 return nil 722} 723 724func (m *VariantAnnotation) GetConditions() []*VariantAnnotation_ClinicalCondition { 725 if m != nil { 726 return m.Conditions 727 } 728 return nil 729} 730 731func (m *VariantAnnotation) GetClinicalSignificance() VariantAnnotation_ClinicalSignificance { 732 if m != nil { 733 return m.ClinicalSignificance 734 } 735 return VariantAnnotation_CLINICAL_SIGNIFICANCE_UNSPECIFIED 736} 737 738type VariantAnnotation_ClinicalCondition struct { 739 // A set of names for the condition. 740 Names []string `protobuf:"bytes,1,rep,name=names" json:"names,omitempty"` 741 // The set of external IDs for this condition. 742 ExternalIds []*ExternalId `protobuf:"bytes,2,rep,name=external_ids,json=externalIds" json:"external_ids,omitempty"` 743 // The MedGen concept id associated with this gene. 744 // Search for these IDs at http://www.ncbi.nlm.nih.gov/medgen/ 745 ConceptId string `protobuf:"bytes,3,opt,name=concept_id,json=conceptId" json:"concept_id,omitempty"` 746 // The OMIM id for this condition. 747 // Search for these IDs at http://omim.org/ 748 OmimId string `protobuf:"bytes,4,opt,name=omim_id,json=omimId" json:"omim_id,omitempty"` 749} 750 751func (m *VariantAnnotation_ClinicalCondition) Reset() { *m = VariantAnnotation_ClinicalCondition{} } 752func (m *VariantAnnotation_ClinicalCondition) String() string { return proto.CompactTextString(m) } 753func (*VariantAnnotation_ClinicalCondition) ProtoMessage() {} 754func (*VariantAnnotation_ClinicalCondition) Descriptor() ([]byte, []int) { 755 return fileDescriptor0, []int{2, 0} 756} 757 758func (m *VariantAnnotation_ClinicalCondition) GetNames() []string { 759 if m != nil { 760 return m.Names 761 } 762 return nil 763} 764 765func (m *VariantAnnotation_ClinicalCondition) GetExternalIds() []*ExternalId { 766 if m != nil { 767 return m.ExternalIds 768 } 769 return nil 770} 771 772func (m *VariantAnnotation_ClinicalCondition) GetConceptId() string { 773 if m != nil { 774 return m.ConceptId 775 } 776 return "" 777} 778 779func (m *VariantAnnotation_ClinicalCondition) GetOmimId() string { 780 if m != nil { 781 return m.OmimId 782 } 783 return "" 784} 785 786// A transcript represents the assertion that a particular region of the 787// reference genome may be transcribed as RNA. 788type Transcript struct { 789 // The annotation ID of the gene from which this transcript is transcribed. 790 GeneId string `protobuf:"bytes,1,opt,name=gene_id,json=geneId" json:"gene_id,omitempty"` 791 // The <a href="http://en.wikipedia.org/wiki/Exon">exons</a> that compose 792 // this transcript. This field should be unset for genomes where transcript 793 // splicing does not occur, for example prokaryotes. 794 // 795 // Introns are regions of the transcript that are not included in the 796 // spliced RNA product. Though not explicitly modeled here, intron ranges can 797 // be deduced; all regions of this transcript that are not exons are introns. 798 // 799 // Exonic sequences do not necessarily code for a translational product 800 // (amino acids). Only the regions of exons bounded by the 801 // [codingSequence][google.genomics.v1.Transcript.coding_sequence] correspond 802 // to coding DNA sequence. 803 // 804 // Exons are ordered by start position and may not overlap. 805 Exons []*Transcript_Exon `protobuf:"bytes,2,rep,name=exons" json:"exons,omitempty"` 806 // The range of the coding sequence for this transcript, if any. To determine 807 // the exact ranges of coding sequence, intersect this range with those of the 808 // [exons][google.genomics.v1.Transcript.exons], if any. If there are any 809 // [exons][google.genomics.v1.Transcript.exons], the 810 // [codingSequence][google.genomics.v1.Transcript.coding_sequence] must start 811 // and end within them. 812 // 813 // Note that in some cases, the reference genome will not exactly match the 814 // observed mRNA transcript e.g. due to variance in the source genome from 815 // reference. In these cases, 816 // [exon.frame][google.genomics.v1.Transcript.Exon.frame] will not necessarily 817 // match the expected reference reading frame and coding exon reference bases 818 // cannot necessarily be concatenated to produce the original transcript mRNA. 819 CodingSequence *Transcript_CodingSequence `protobuf:"bytes,3,opt,name=coding_sequence,json=codingSequence" json:"coding_sequence,omitempty"` 820} 821 822func (m *Transcript) Reset() { *m = Transcript{} } 823func (m *Transcript) String() string { return proto.CompactTextString(m) } 824func (*Transcript) ProtoMessage() {} 825func (*Transcript) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} } 826 827func (m *Transcript) GetGeneId() string { 828 if m != nil { 829 return m.GeneId 830 } 831 return "" 832} 833 834func (m *Transcript) GetExons() []*Transcript_Exon { 835 if m != nil { 836 return m.Exons 837 } 838 return nil 839} 840 841func (m *Transcript) GetCodingSequence() *Transcript_CodingSequence { 842 if m != nil { 843 return m.CodingSequence 844 } 845 return nil 846} 847 848type Transcript_Exon struct { 849 // The start position of the exon on this annotation's reference sequence, 850 // 0-based inclusive. Note that this is relative to the reference start, and 851 // **not** the containing annotation start. 852 Start int64 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` 853 // The end position of the exon on this annotation's reference sequence, 854 // 0-based exclusive. Note that this is relative to the reference start, and 855 // *not* the containing annotation start. 856 End int64 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` 857 // The frame of this exon. Contains a value of 0, 1, or 2, which indicates 858 // the offset of the first coding base of the exon within the reading frame 859 // of the coding DNA sequence, if any. This field is dependent on the 860 // strandedness of this annotation (see 861 // [Annotation.reverse_strand][google.genomics.v1.Annotation.reverse_strand]). 862 // For forward stranded annotations, this offset is relative to the 863 // [exon.start][google.genomics.v1.Transcript.Exon.start]. For reverse 864 // strand annotations, this offset is relative to the 865 // [exon.end][google.genomics.v1.Transcript.Exon.end] `- 1`. 866 // 867 // Unset if this exon does not intersect the coding sequence. Upon creation 868 // of a transcript, the frame must be populated for all or none of the 869 // coding exons. 870 Frame *google_protobuf4.Int32Value `protobuf:"bytes,3,opt,name=frame" json:"frame,omitempty"` 871} 872 873func (m *Transcript_Exon) Reset() { *m = Transcript_Exon{} } 874func (m *Transcript_Exon) String() string { return proto.CompactTextString(m) } 875func (*Transcript_Exon) ProtoMessage() {} 876func (*Transcript_Exon) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3, 0} } 877 878func (m *Transcript_Exon) GetStart() int64 { 879 if m != nil { 880 return m.Start 881 } 882 return 0 883} 884 885func (m *Transcript_Exon) GetEnd() int64 { 886 if m != nil { 887 return m.End 888 } 889 return 0 890} 891 892func (m *Transcript_Exon) GetFrame() *google_protobuf4.Int32Value { 893 if m != nil { 894 return m.Frame 895 } 896 return nil 897} 898 899type Transcript_CodingSequence struct { 900 // The start of the coding sequence on this annotation's reference sequence, 901 // 0-based inclusive. Note that this position is relative to the reference 902 // start, and *not* the containing annotation start. 903 Start int64 `protobuf:"varint,1,opt,name=start" json:"start,omitempty"` 904 // The end of the coding sequence on this annotation's reference sequence, 905 // 0-based exclusive. Note that this position is relative to the reference 906 // start, and *not* the containing annotation start. 907 End int64 `protobuf:"varint,2,opt,name=end" json:"end,omitempty"` 908} 909 910func (m *Transcript_CodingSequence) Reset() { *m = Transcript_CodingSequence{} } 911func (m *Transcript_CodingSequence) String() string { return proto.CompactTextString(m) } 912func (*Transcript_CodingSequence) ProtoMessage() {} 913func (*Transcript_CodingSequence) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3, 1} } 914 915func (m *Transcript_CodingSequence) GetStart() int64 { 916 if m != nil { 917 return m.Start 918 } 919 return 0 920} 921 922func (m *Transcript_CodingSequence) GetEnd() int64 { 923 if m != nil { 924 return m.End 925 } 926 return 0 927} 928 929type ExternalId struct { 930 // The name of the source of this data. 931 SourceName string `protobuf:"bytes,1,opt,name=source_name,json=sourceName" json:"source_name,omitempty"` 932 // The id used by the source of this data. 933 Id string `protobuf:"bytes,2,opt,name=id" json:"id,omitempty"` 934} 935 936func (m *ExternalId) Reset() { *m = ExternalId{} } 937func (m *ExternalId) String() string { return proto.CompactTextString(m) } 938func (*ExternalId) ProtoMessage() {} 939func (*ExternalId) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} } 940 941func (m *ExternalId) GetSourceName() string { 942 if m != nil { 943 return m.SourceName 944 } 945 return "" 946} 947 948func (m *ExternalId) GetId() string { 949 if m != nil { 950 return m.Id 951 } 952 return "" 953} 954 955type CreateAnnotationSetRequest struct { 956 // The annotation set to create. 957 AnnotationSet *AnnotationSet `protobuf:"bytes,1,opt,name=annotation_set,json=annotationSet" json:"annotation_set,omitempty"` 958} 959 960func (m *CreateAnnotationSetRequest) Reset() { *m = CreateAnnotationSetRequest{} } 961func (m *CreateAnnotationSetRequest) String() string { return proto.CompactTextString(m) } 962func (*CreateAnnotationSetRequest) ProtoMessage() {} 963func (*CreateAnnotationSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} } 964 965func (m *CreateAnnotationSetRequest) GetAnnotationSet() *AnnotationSet { 966 if m != nil { 967 return m.AnnotationSet 968 } 969 return nil 970} 971 972type GetAnnotationSetRequest struct { 973 // The ID of the annotation set to be retrieved. 974 AnnotationSetId string `protobuf:"bytes,1,opt,name=annotation_set_id,json=annotationSetId" json:"annotation_set_id,omitempty"` 975} 976 977func (m *GetAnnotationSetRequest) Reset() { *m = GetAnnotationSetRequest{} } 978func (m *GetAnnotationSetRequest) String() string { return proto.CompactTextString(m) } 979func (*GetAnnotationSetRequest) ProtoMessage() {} 980func (*GetAnnotationSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} } 981 982func (m *GetAnnotationSetRequest) GetAnnotationSetId() string { 983 if m != nil { 984 return m.AnnotationSetId 985 } 986 return "" 987} 988 989type UpdateAnnotationSetRequest struct { 990 // The ID of the annotation set to be updated. 991 AnnotationSetId string `protobuf:"bytes,1,opt,name=annotation_set_id,json=annotationSetId" json:"annotation_set_id,omitempty"` 992 // The new annotation set. 993 AnnotationSet *AnnotationSet `protobuf:"bytes,2,opt,name=annotation_set,json=annotationSet" json:"annotation_set,omitempty"` 994 // An optional mask specifying which fields to update. Mutable fields are 995 // [name][google.genomics.v1.AnnotationSet.name], 996 // [source_uri][google.genomics.v1.AnnotationSet.source_uri], and 997 // [info][google.genomics.v1.AnnotationSet.info]. If unspecified, all 998 // mutable fields will be updated. 999 UpdateMask *google_protobuf2.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask" json:"update_mask,omitempty"` 1000} 1001 1002func (m *UpdateAnnotationSetRequest) Reset() { *m = UpdateAnnotationSetRequest{} } 1003func (m *UpdateAnnotationSetRequest) String() string { return proto.CompactTextString(m) } 1004func (*UpdateAnnotationSetRequest) ProtoMessage() {} 1005func (*UpdateAnnotationSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} } 1006 1007func (m *UpdateAnnotationSetRequest) GetAnnotationSetId() string { 1008 if m != nil { 1009 return m.AnnotationSetId 1010 } 1011 return "" 1012} 1013 1014func (m *UpdateAnnotationSetRequest) GetAnnotationSet() *AnnotationSet { 1015 if m != nil { 1016 return m.AnnotationSet 1017 } 1018 return nil 1019} 1020 1021func (m *UpdateAnnotationSetRequest) GetUpdateMask() *google_protobuf2.FieldMask { 1022 if m != nil { 1023 return m.UpdateMask 1024 } 1025 return nil 1026} 1027 1028type DeleteAnnotationSetRequest struct { 1029 // The ID of the annotation set to be deleted. 1030 AnnotationSetId string `protobuf:"bytes,1,opt,name=annotation_set_id,json=annotationSetId" json:"annotation_set_id,omitempty"` 1031} 1032 1033func (m *DeleteAnnotationSetRequest) Reset() { *m = DeleteAnnotationSetRequest{} } 1034func (m *DeleteAnnotationSetRequest) String() string { return proto.CompactTextString(m) } 1035func (*DeleteAnnotationSetRequest) ProtoMessage() {} 1036func (*DeleteAnnotationSetRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} } 1037 1038func (m *DeleteAnnotationSetRequest) GetAnnotationSetId() string { 1039 if m != nil { 1040 return m.AnnotationSetId 1041 } 1042 return "" 1043} 1044 1045type SearchAnnotationSetsRequest struct { 1046 // Required. The dataset IDs to search within. Caller must have `READ` access 1047 // to these datasets. 1048 DatasetIds []string `protobuf:"bytes,1,rep,name=dataset_ids,json=datasetIds" json:"dataset_ids,omitempty"` 1049 // If specified, only annotation sets associated with the given reference set 1050 // are returned. 1051 ReferenceSetId string `protobuf:"bytes,2,opt,name=reference_set_id,json=referenceSetId" json:"reference_set_id,omitempty"` 1052 // Only return annotations sets for which a substring of the name matches this 1053 // string (case insensitive). 1054 Name string `protobuf:"bytes,3,opt,name=name" json:"name,omitempty"` 1055 // If specified, only annotation sets that have any of these types are 1056 // returned. 1057 Types []AnnotationType `protobuf:"varint,4,rep,packed,name=types,enum=google.genomics.v1.AnnotationType" json:"types,omitempty"` 1058 // The continuation token, which is used to page through large result sets. 1059 // To get the next page of results, set this parameter to the value of 1060 // `nextPageToken` from the previous response. 1061 PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken" json:"page_token,omitempty"` 1062 // The maximum number of results to return in a single page. If unspecified, 1063 // defaults to 128. The maximum value is 1024. 1064 PageSize int32 `protobuf:"varint,6,opt,name=page_size,json=pageSize" json:"page_size,omitempty"` 1065} 1066 1067func (m *SearchAnnotationSetsRequest) Reset() { *m = SearchAnnotationSetsRequest{} } 1068func (m *SearchAnnotationSetsRequest) String() string { return proto.CompactTextString(m) } 1069func (*SearchAnnotationSetsRequest) ProtoMessage() {} 1070func (*SearchAnnotationSetsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} } 1071 1072func (m *SearchAnnotationSetsRequest) GetDatasetIds() []string { 1073 if m != nil { 1074 return m.DatasetIds 1075 } 1076 return nil 1077} 1078 1079func (m *SearchAnnotationSetsRequest) GetReferenceSetId() string { 1080 if m != nil { 1081 return m.ReferenceSetId 1082 } 1083 return "" 1084} 1085 1086func (m *SearchAnnotationSetsRequest) GetName() string { 1087 if m != nil { 1088 return m.Name 1089 } 1090 return "" 1091} 1092 1093func (m *SearchAnnotationSetsRequest) GetTypes() []AnnotationType { 1094 if m != nil { 1095 return m.Types 1096 } 1097 return nil 1098} 1099 1100func (m *SearchAnnotationSetsRequest) GetPageToken() string { 1101 if m != nil { 1102 return m.PageToken 1103 } 1104 return "" 1105} 1106 1107func (m *SearchAnnotationSetsRequest) GetPageSize() int32 { 1108 if m != nil { 1109 return m.PageSize 1110 } 1111 return 0 1112} 1113 1114type SearchAnnotationSetsResponse struct { 1115 // The matching annotation sets. 1116 AnnotationSets []*AnnotationSet `protobuf:"bytes,1,rep,name=annotation_sets,json=annotationSets" json:"annotation_sets,omitempty"` 1117 // The continuation token, which is used to page through large result sets. 1118 // Provide this value in a subsequent request to return the next page of 1119 // results. This field will be empty if there aren't any additional results. 1120 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"` 1121} 1122 1123func (m *SearchAnnotationSetsResponse) Reset() { *m = SearchAnnotationSetsResponse{} } 1124func (m *SearchAnnotationSetsResponse) String() string { return proto.CompactTextString(m) } 1125func (*SearchAnnotationSetsResponse) ProtoMessage() {} 1126func (*SearchAnnotationSetsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} } 1127 1128func (m *SearchAnnotationSetsResponse) GetAnnotationSets() []*AnnotationSet { 1129 if m != nil { 1130 return m.AnnotationSets 1131 } 1132 return nil 1133} 1134 1135func (m *SearchAnnotationSetsResponse) GetNextPageToken() string { 1136 if m != nil { 1137 return m.NextPageToken 1138 } 1139 return "" 1140} 1141 1142type CreateAnnotationRequest struct { 1143 // The annotation to be created. 1144 Annotation *Annotation `protobuf:"bytes,1,opt,name=annotation" json:"annotation,omitempty"` 1145} 1146 1147func (m *CreateAnnotationRequest) Reset() { *m = CreateAnnotationRequest{} } 1148func (m *CreateAnnotationRequest) String() string { return proto.CompactTextString(m) } 1149func (*CreateAnnotationRequest) ProtoMessage() {} 1150func (*CreateAnnotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} } 1151 1152func (m *CreateAnnotationRequest) GetAnnotation() *Annotation { 1153 if m != nil { 1154 return m.Annotation 1155 } 1156 return nil 1157} 1158 1159type BatchCreateAnnotationsRequest struct { 1160 // The annotations to be created. At most 4096 can be specified in a single 1161 // request. 1162 Annotations []*Annotation `protobuf:"bytes,1,rep,name=annotations" json:"annotations,omitempty"` 1163 // A unique request ID which enables the server to detect duplicated requests. 1164 // If provided, duplicated requests will result in the same response; if not 1165 // provided, duplicated requests may result in duplicated data. For a given 1166 // annotation set, callers should not reuse `request_id`s when writing 1167 // different batches of annotations - behavior in this case is undefined. 1168 // A common approach is to use a UUID. For batch jobs where worker crashes are 1169 // a possibility, consider using some unique variant of a worker or run ID. 1170 RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId" json:"request_id,omitempty"` 1171} 1172 1173func (m *BatchCreateAnnotationsRequest) Reset() { *m = BatchCreateAnnotationsRequest{} } 1174func (m *BatchCreateAnnotationsRequest) String() string { return proto.CompactTextString(m) } 1175func (*BatchCreateAnnotationsRequest) ProtoMessage() {} 1176func (*BatchCreateAnnotationsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} } 1177 1178func (m *BatchCreateAnnotationsRequest) GetAnnotations() []*Annotation { 1179 if m != nil { 1180 return m.Annotations 1181 } 1182 return nil 1183} 1184 1185func (m *BatchCreateAnnotationsRequest) GetRequestId() string { 1186 if m != nil { 1187 return m.RequestId 1188 } 1189 return "" 1190} 1191 1192type BatchCreateAnnotationsResponse struct { 1193 // The resulting per-annotation entries, ordered consistently with the 1194 // original request. 1195 Entries []*BatchCreateAnnotationsResponse_Entry `protobuf:"bytes,1,rep,name=entries" json:"entries,omitempty"` 1196} 1197 1198func (m *BatchCreateAnnotationsResponse) Reset() { *m = BatchCreateAnnotationsResponse{} } 1199func (m *BatchCreateAnnotationsResponse) String() string { return proto.CompactTextString(m) } 1200func (*BatchCreateAnnotationsResponse) ProtoMessage() {} 1201func (*BatchCreateAnnotationsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} } 1202 1203func (m *BatchCreateAnnotationsResponse) GetEntries() []*BatchCreateAnnotationsResponse_Entry { 1204 if m != nil { 1205 return m.Entries 1206 } 1207 return nil 1208} 1209 1210type BatchCreateAnnotationsResponse_Entry struct { 1211 // The creation status. 1212 Status *google_rpc.Status `protobuf:"bytes,1,opt,name=status" json:"status,omitempty"` 1213 // The created annotation, if creation was successful. 1214 Annotation *Annotation `protobuf:"bytes,2,opt,name=annotation" json:"annotation,omitempty"` 1215} 1216 1217func (m *BatchCreateAnnotationsResponse_Entry) Reset() { *m = BatchCreateAnnotationsResponse_Entry{} } 1218func (m *BatchCreateAnnotationsResponse_Entry) String() string { return proto.CompactTextString(m) } 1219func (*BatchCreateAnnotationsResponse_Entry) ProtoMessage() {} 1220func (*BatchCreateAnnotationsResponse_Entry) Descriptor() ([]byte, []int) { 1221 return fileDescriptor0, []int{13, 0} 1222} 1223 1224func (m *BatchCreateAnnotationsResponse_Entry) GetStatus() *google_rpc.Status { 1225 if m != nil { 1226 return m.Status 1227 } 1228 return nil 1229} 1230 1231func (m *BatchCreateAnnotationsResponse_Entry) GetAnnotation() *Annotation { 1232 if m != nil { 1233 return m.Annotation 1234 } 1235 return nil 1236} 1237 1238type GetAnnotationRequest struct { 1239 // The ID of the annotation to be retrieved. 1240 AnnotationId string `protobuf:"bytes,1,opt,name=annotation_id,json=annotationId" json:"annotation_id,omitempty"` 1241} 1242 1243func (m *GetAnnotationRequest) Reset() { *m = GetAnnotationRequest{} } 1244func (m *GetAnnotationRequest) String() string { return proto.CompactTextString(m) } 1245func (*GetAnnotationRequest) ProtoMessage() {} 1246func (*GetAnnotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} } 1247 1248func (m *GetAnnotationRequest) GetAnnotationId() string { 1249 if m != nil { 1250 return m.AnnotationId 1251 } 1252 return "" 1253} 1254 1255type UpdateAnnotationRequest struct { 1256 // The ID of the annotation to be updated. 1257 AnnotationId string `protobuf:"bytes,1,opt,name=annotation_id,json=annotationId" json:"annotation_id,omitempty"` 1258 // The new annotation. 1259 Annotation *Annotation `protobuf:"bytes,2,opt,name=annotation" json:"annotation,omitempty"` 1260 // An optional mask specifying which fields to update. Mutable fields are 1261 // [name][google.genomics.v1.Annotation.name], 1262 // [variant][google.genomics.v1.Annotation.variant], 1263 // [transcript][google.genomics.v1.Annotation.transcript], and 1264 // [info][google.genomics.v1.Annotation.info]. If unspecified, all mutable 1265 // fields will be updated. 1266 UpdateMask *google_protobuf2.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask" json:"update_mask,omitempty"` 1267} 1268 1269func (m *UpdateAnnotationRequest) Reset() { *m = UpdateAnnotationRequest{} } 1270func (m *UpdateAnnotationRequest) String() string { return proto.CompactTextString(m) } 1271func (*UpdateAnnotationRequest) ProtoMessage() {} 1272func (*UpdateAnnotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} } 1273 1274func (m *UpdateAnnotationRequest) GetAnnotationId() string { 1275 if m != nil { 1276 return m.AnnotationId 1277 } 1278 return "" 1279} 1280 1281func (m *UpdateAnnotationRequest) GetAnnotation() *Annotation { 1282 if m != nil { 1283 return m.Annotation 1284 } 1285 return nil 1286} 1287 1288func (m *UpdateAnnotationRequest) GetUpdateMask() *google_protobuf2.FieldMask { 1289 if m != nil { 1290 return m.UpdateMask 1291 } 1292 return nil 1293} 1294 1295type DeleteAnnotationRequest struct { 1296 // The ID of the annotation to be deleted. 1297 AnnotationId string `protobuf:"bytes,1,opt,name=annotation_id,json=annotationId" json:"annotation_id,omitempty"` 1298} 1299 1300func (m *DeleteAnnotationRequest) Reset() { *m = DeleteAnnotationRequest{} } 1301func (m *DeleteAnnotationRequest) String() string { return proto.CompactTextString(m) } 1302func (*DeleteAnnotationRequest) ProtoMessage() {} 1303func (*DeleteAnnotationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{16} } 1304 1305func (m *DeleteAnnotationRequest) GetAnnotationId() string { 1306 if m != nil { 1307 return m.AnnotationId 1308 } 1309 return "" 1310} 1311 1312type SearchAnnotationsRequest struct { 1313 // Required. The annotation sets to search within. The caller must have 1314 // `READ` access to these annotation sets. 1315 // All queried annotation sets must have the same type. 1316 AnnotationSetIds []string `protobuf:"bytes,1,rep,name=annotation_set_ids,json=annotationSetIds" json:"annotation_set_ids,omitempty"` 1317 // Required. `reference_id` or `reference_name` must be set. 1318 // 1319 // Types that are valid to be assigned to Reference: 1320 // *SearchAnnotationsRequest_ReferenceId 1321 // *SearchAnnotationsRequest_ReferenceName 1322 Reference isSearchAnnotationsRequest_Reference `protobuf_oneof:"reference"` 1323 // The start position of the range on the reference, 0-based inclusive. If 1324 // specified, 1325 // [referenceId][google.genomics.v1.SearchAnnotationsRequest.reference_id] or 1326 // [referenceName][google.genomics.v1.SearchAnnotationsRequest.reference_name] 1327 // must be specified. Defaults to 0. 1328 Start int64 `protobuf:"varint,4,opt,name=start" json:"start,omitempty"` 1329 // The end position of the range on the reference, 0-based exclusive. If 1330 // [referenceId][google.genomics.v1.SearchAnnotationsRequest.reference_id] or 1331 // [referenceName][google.genomics.v1.SearchAnnotationsRequest.reference_name] 1332 // must be specified, Defaults to the length of the reference. 1333 End int64 `protobuf:"varint,5,opt,name=end" json:"end,omitempty"` 1334 // The continuation token, which is used to page through large result sets. 1335 // To get the next page of results, set this parameter to the value of 1336 // `nextPageToken` from the previous response. 1337 PageToken string `protobuf:"bytes,6,opt,name=page_token,json=pageToken" json:"page_token,omitempty"` 1338 // The maximum number of results to return in a single page. If unspecified, 1339 // defaults to 256. The maximum value is 2048. 1340 PageSize int32 `protobuf:"varint,7,opt,name=page_size,json=pageSize" json:"page_size,omitempty"` 1341} 1342 1343func (m *SearchAnnotationsRequest) Reset() { *m = SearchAnnotationsRequest{} } 1344func (m *SearchAnnotationsRequest) String() string { return proto.CompactTextString(m) } 1345func (*SearchAnnotationsRequest) ProtoMessage() {} 1346func (*SearchAnnotationsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{17} } 1347 1348type isSearchAnnotationsRequest_Reference interface { 1349 isSearchAnnotationsRequest_Reference() 1350} 1351 1352type SearchAnnotationsRequest_ReferenceId struct { 1353 ReferenceId string `protobuf:"bytes,2,opt,name=reference_id,json=referenceId,oneof"` 1354} 1355type SearchAnnotationsRequest_ReferenceName struct { 1356 ReferenceName string `protobuf:"bytes,3,opt,name=reference_name,json=referenceName,oneof"` 1357} 1358 1359func (*SearchAnnotationsRequest_ReferenceId) isSearchAnnotationsRequest_Reference() {} 1360func (*SearchAnnotationsRequest_ReferenceName) isSearchAnnotationsRequest_Reference() {} 1361 1362func (m *SearchAnnotationsRequest) GetReference() isSearchAnnotationsRequest_Reference { 1363 if m != nil { 1364 return m.Reference 1365 } 1366 return nil 1367} 1368 1369func (m *SearchAnnotationsRequest) GetAnnotationSetIds() []string { 1370 if m != nil { 1371 return m.AnnotationSetIds 1372 } 1373 return nil 1374} 1375 1376func (m *SearchAnnotationsRequest) GetReferenceId() string { 1377 if x, ok := m.GetReference().(*SearchAnnotationsRequest_ReferenceId); ok { 1378 return x.ReferenceId 1379 } 1380 return "" 1381} 1382 1383func (m *SearchAnnotationsRequest) GetReferenceName() string { 1384 if x, ok := m.GetReference().(*SearchAnnotationsRequest_ReferenceName); ok { 1385 return x.ReferenceName 1386 } 1387 return "" 1388} 1389 1390func (m *SearchAnnotationsRequest) GetStart() int64 { 1391 if m != nil { 1392 return m.Start 1393 } 1394 return 0 1395} 1396 1397func (m *SearchAnnotationsRequest) GetEnd() int64 { 1398 if m != nil { 1399 return m.End 1400 } 1401 return 0 1402} 1403 1404func (m *SearchAnnotationsRequest) GetPageToken() string { 1405 if m != nil { 1406 return m.PageToken 1407 } 1408 return "" 1409} 1410 1411func (m *SearchAnnotationsRequest) GetPageSize() int32 { 1412 if m != nil { 1413 return m.PageSize 1414 } 1415 return 0 1416} 1417 1418// XXX_OneofFuncs is for the internal use of the proto package. 1419func (*SearchAnnotationsRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { 1420 return _SearchAnnotationsRequest_OneofMarshaler, _SearchAnnotationsRequest_OneofUnmarshaler, _SearchAnnotationsRequest_OneofSizer, []interface{}{ 1421 (*SearchAnnotationsRequest_ReferenceId)(nil), 1422 (*SearchAnnotationsRequest_ReferenceName)(nil), 1423 } 1424} 1425 1426func _SearchAnnotationsRequest_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { 1427 m := msg.(*SearchAnnotationsRequest) 1428 // reference 1429 switch x := m.Reference.(type) { 1430 case *SearchAnnotationsRequest_ReferenceId: 1431 b.EncodeVarint(2<<3 | proto.WireBytes) 1432 b.EncodeStringBytes(x.ReferenceId) 1433 case *SearchAnnotationsRequest_ReferenceName: 1434 b.EncodeVarint(3<<3 | proto.WireBytes) 1435 b.EncodeStringBytes(x.ReferenceName) 1436 case nil: 1437 default: 1438 return fmt.Errorf("SearchAnnotationsRequest.Reference has unexpected type %T", x) 1439 } 1440 return nil 1441} 1442 1443func _SearchAnnotationsRequest_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { 1444 m := msg.(*SearchAnnotationsRequest) 1445 switch tag { 1446 case 2: // reference.reference_id 1447 if wire != proto.WireBytes { 1448 return true, proto.ErrInternalBadWireType 1449 } 1450 x, err := b.DecodeStringBytes() 1451 m.Reference = &SearchAnnotationsRequest_ReferenceId{x} 1452 return true, err 1453 case 3: // reference.reference_name 1454 if wire != proto.WireBytes { 1455 return true, proto.ErrInternalBadWireType 1456 } 1457 x, err := b.DecodeStringBytes() 1458 m.Reference = &SearchAnnotationsRequest_ReferenceName{x} 1459 return true, err 1460 default: 1461 return false, nil 1462 } 1463} 1464 1465func _SearchAnnotationsRequest_OneofSizer(msg proto.Message) (n int) { 1466 m := msg.(*SearchAnnotationsRequest) 1467 // reference 1468 switch x := m.Reference.(type) { 1469 case *SearchAnnotationsRequest_ReferenceId: 1470 n += proto.SizeVarint(2<<3 | proto.WireBytes) 1471 n += proto.SizeVarint(uint64(len(x.ReferenceId))) 1472 n += len(x.ReferenceId) 1473 case *SearchAnnotationsRequest_ReferenceName: 1474 n += proto.SizeVarint(3<<3 | proto.WireBytes) 1475 n += proto.SizeVarint(uint64(len(x.ReferenceName))) 1476 n += len(x.ReferenceName) 1477 case nil: 1478 default: 1479 panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) 1480 } 1481 return n 1482} 1483 1484type SearchAnnotationsResponse struct { 1485 // The matching annotations. 1486 Annotations []*Annotation `protobuf:"bytes,1,rep,name=annotations" json:"annotations,omitempty"` 1487 // The continuation token, which is used to page through large result sets. 1488 // Provide this value in a subsequent request to return the next page of 1489 // results. This field will be empty if there aren't any additional results. 1490 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"` 1491} 1492 1493func (m *SearchAnnotationsResponse) Reset() { *m = SearchAnnotationsResponse{} } 1494func (m *SearchAnnotationsResponse) String() string { return proto.CompactTextString(m) } 1495func (*SearchAnnotationsResponse) ProtoMessage() {} 1496func (*SearchAnnotationsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{18} } 1497 1498func (m *SearchAnnotationsResponse) GetAnnotations() []*Annotation { 1499 if m != nil { 1500 return m.Annotations 1501 } 1502 return nil 1503} 1504 1505func (m *SearchAnnotationsResponse) GetNextPageToken() string { 1506 if m != nil { 1507 return m.NextPageToken 1508 } 1509 return "" 1510} 1511 1512func init() { 1513 proto.RegisterType((*AnnotationSet)(nil), "google.genomics.v1.AnnotationSet") 1514 proto.RegisterType((*Annotation)(nil), "google.genomics.v1.Annotation") 1515 proto.RegisterType((*VariantAnnotation)(nil), "google.genomics.v1.VariantAnnotation") 1516 proto.RegisterType((*VariantAnnotation_ClinicalCondition)(nil), "google.genomics.v1.VariantAnnotation.ClinicalCondition") 1517 proto.RegisterType((*Transcript)(nil), "google.genomics.v1.Transcript") 1518 proto.RegisterType((*Transcript_Exon)(nil), "google.genomics.v1.Transcript.Exon") 1519 proto.RegisterType((*Transcript_CodingSequence)(nil), "google.genomics.v1.Transcript.CodingSequence") 1520 proto.RegisterType((*ExternalId)(nil), "google.genomics.v1.ExternalId") 1521 proto.RegisterType((*CreateAnnotationSetRequest)(nil), "google.genomics.v1.CreateAnnotationSetRequest") 1522 proto.RegisterType((*GetAnnotationSetRequest)(nil), "google.genomics.v1.GetAnnotationSetRequest") 1523 proto.RegisterType((*UpdateAnnotationSetRequest)(nil), "google.genomics.v1.UpdateAnnotationSetRequest") 1524 proto.RegisterType((*DeleteAnnotationSetRequest)(nil), "google.genomics.v1.DeleteAnnotationSetRequest") 1525 proto.RegisterType((*SearchAnnotationSetsRequest)(nil), "google.genomics.v1.SearchAnnotationSetsRequest") 1526 proto.RegisterType((*SearchAnnotationSetsResponse)(nil), "google.genomics.v1.SearchAnnotationSetsResponse") 1527 proto.RegisterType((*CreateAnnotationRequest)(nil), "google.genomics.v1.CreateAnnotationRequest") 1528 proto.RegisterType((*BatchCreateAnnotationsRequest)(nil), "google.genomics.v1.BatchCreateAnnotationsRequest") 1529 proto.RegisterType((*BatchCreateAnnotationsResponse)(nil), "google.genomics.v1.BatchCreateAnnotationsResponse") 1530 proto.RegisterType((*BatchCreateAnnotationsResponse_Entry)(nil), "google.genomics.v1.BatchCreateAnnotationsResponse.Entry") 1531 proto.RegisterType((*GetAnnotationRequest)(nil), "google.genomics.v1.GetAnnotationRequest") 1532 proto.RegisterType((*UpdateAnnotationRequest)(nil), "google.genomics.v1.UpdateAnnotationRequest") 1533 proto.RegisterType((*DeleteAnnotationRequest)(nil), "google.genomics.v1.DeleteAnnotationRequest") 1534 proto.RegisterType((*SearchAnnotationsRequest)(nil), "google.genomics.v1.SearchAnnotationsRequest") 1535 proto.RegisterType((*SearchAnnotationsResponse)(nil), "google.genomics.v1.SearchAnnotationsResponse") 1536 proto.RegisterEnum("google.genomics.v1.AnnotationType", AnnotationType_name, AnnotationType_value) 1537 proto.RegisterEnum("google.genomics.v1.VariantAnnotation_Type", VariantAnnotation_Type_name, VariantAnnotation_Type_value) 1538 proto.RegisterEnum("google.genomics.v1.VariantAnnotation_Effect", VariantAnnotation_Effect_name, VariantAnnotation_Effect_value) 1539 proto.RegisterEnum("google.genomics.v1.VariantAnnotation_ClinicalSignificance", VariantAnnotation_ClinicalSignificance_name, VariantAnnotation_ClinicalSignificance_value) 1540} 1541 1542// Reference imports to suppress errors if they are not otherwise used. 1543var _ context.Context 1544var _ grpc.ClientConn 1545 1546// This is a compile-time assertion to ensure that this generated file 1547// is compatible with the grpc package it is being compiled against. 1548const _ = grpc.SupportPackageIsVersion4 1549 1550// Client API for AnnotationServiceV1 service 1551 1552type AnnotationServiceV1Client interface { 1553 // Creates a new annotation set. Caller must have WRITE permission for the 1554 // associated dataset. 1555 // 1556 // The following fields are required: 1557 // 1558 // * [datasetId][google.genomics.v1.AnnotationSet.dataset_id] 1559 // * [referenceSetId][google.genomics.v1.AnnotationSet.reference_set_id] 1560 // 1561 // All other fields may be optionally specified, unless documented as being 1562 // server-generated (for example, the `id` field). 1563 CreateAnnotationSet(ctx context.Context, in *CreateAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) 1564 // Gets an annotation set. Caller must have READ permission for 1565 // the associated dataset. 1566 GetAnnotationSet(ctx context.Context, in *GetAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) 1567 // Updates an annotation set. The update must respect all mutability 1568 // restrictions and other invariants described on the annotation set resource. 1569 // Caller must have WRITE permission for the associated dataset. 1570 UpdateAnnotationSet(ctx context.Context, in *UpdateAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) 1571 // Deletes an annotation set. Caller must have WRITE permission 1572 // for the associated annotation set. 1573 DeleteAnnotationSet(ctx context.Context, in *DeleteAnnotationSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) 1574 // Searches for annotation sets that match the given criteria. Annotation sets 1575 // are returned in an unspecified order. This order is consistent, such that 1576 // two queries for the same content (regardless of page size) yield annotation 1577 // sets in the same order across their respective streams of paginated 1578 // responses. Caller must have READ permission for the queried datasets. 1579 SearchAnnotationSets(ctx context.Context, in *SearchAnnotationSetsRequest, opts ...grpc.CallOption) (*SearchAnnotationSetsResponse, error) 1580 // Creates a new annotation. Caller must have WRITE permission 1581 // for the associated annotation set. 1582 // 1583 // The following fields are required: 1584 // 1585 // * [annotationSetId][google.genomics.v1.Annotation.annotation_set_id] 1586 // * [referenceName][google.genomics.v1.Annotation.reference_name] or 1587 // [referenceId][google.genomics.v1.Annotation.reference_id] 1588 // 1589 // ### Transcripts 1590 // 1591 // For annotations of type TRANSCRIPT, the following fields of 1592 // [transcript][google.genomics.v1.Annotation.transcript] must be provided: 1593 // 1594 // * [exons.start][google.genomics.v1.Transcript.Exon.start] 1595 // * [exons.end][google.genomics.v1.Transcript.Exon.end] 1596 // 1597 // All other fields may be optionally specified, unless documented as being 1598 // server-generated (for example, the `id` field). The annotated 1599 // range must be no longer than 100Mbp (mega base pairs). See the 1600 // [Annotation resource][google.genomics.v1.Annotation] 1601 // for additional restrictions on each field. 1602 CreateAnnotation(ctx context.Context, in *CreateAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) 1603 // Creates one or more new annotations atomically. All annotations must 1604 // belong to the same annotation set. Caller must have WRITE 1605 // permission for this annotation set. For optimal performance, batch 1606 // positionally adjacent annotations together. 1607 // 1608 // If the request has a systemic issue, such as an attempt to write to 1609 // an inaccessible annotation set, the entire RPC will fail accordingly. For 1610 // lesser data issues, when possible an error will be isolated to the 1611 // corresponding batch entry in the response; the remaining well formed 1612 // annotations will be created normally. 1613 // 1614 // For details on the requirements for each individual annotation resource, 1615 // see 1616 // [CreateAnnotation][google.genomics.v1.AnnotationServiceV1.CreateAnnotation]. 1617 BatchCreateAnnotations(ctx context.Context, in *BatchCreateAnnotationsRequest, opts ...grpc.CallOption) (*BatchCreateAnnotationsResponse, error) 1618 // Gets an annotation. Caller must have READ permission 1619 // for the associated annotation set. 1620 GetAnnotation(ctx context.Context, in *GetAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) 1621 // Updates an annotation. Caller must have 1622 // WRITE permission for the associated dataset. 1623 UpdateAnnotation(ctx context.Context, in *UpdateAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) 1624 // Deletes an annotation. Caller must have WRITE permission for 1625 // the associated annotation set. 1626 DeleteAnnotation(ctx context.Context, in *DeleteAnnotationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) 1627 // Searches for annotations that match the given criteria. Results are 1628 // ordered by genomic coordinate (by reference sequence, then position). 1629 // Annotations with equivalent genomic coordinates are returned in an 1630 // unspecified order. This order is consistent, such that two queries for the 1631 // same content (regardless of page size) yield annotations in the same order 1632 // across their respective streams of paginated responses. Caller must have 1633 // READ permission for the queried annotation sets. 1634 SearchAnnotations(ctx context.Context, in *SearchAnnotationsRequest, opts ...grpc.CallOption) (*SearchAnnotationsResponse, error) 1635} 1636 1637type annotationServiceV1Client struct { 1638 cc *grpc.ClientConn 1639} 1640 1641func NewAnnotationServiceV1Client(cc *grpc.ClientConn) AnnotationServiceV1Client { 1642 return &annotationServiceV1Client{cc} 1643} 1644 1645func (c *annotationServiceV1Client) CreateAnnotationSet(ctx context.Context, in *CreateAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) { 1646 out := new(AnnotationSet) 1647 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/CreateAnnotationSet", in, out, c.cc, opts...) 1648 if err != nil { 1649 return nil, err 1650 } 1651 return out, nil 1652} 1653 1654func (c *annotationServiceV1Client) GetAnnotationSet(ctx context.Context, in *GetAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) { 1655 out := new(AnnotationSet) 1656 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/GetAnnotationSet", in, out, c.cc, opts...) 1657 if err != nil { 1658 return nil, err 1659 } 1660 return out, nil 1661} 1662 1663func (c *annotationServiceV1Client) UpdateAnnotationSet(ctx context.Context, in *UpdateAnnotationSetRequest, opts ...grpc.CallOption) (*AnnotationSet, error) { 1664 out := new(AnnotationSet) 1665 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/UpdateAnnotationSet", in, out, c.cc, opts...) 1666 if err != nil { 1667 return nil, err 1668 } 1669 return out, nil 1670} 1671 1672func (c *annotationServiceV1Client) DeleteAnnotationSet(ctx context.Context, in *DeleteAnnotationSetRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { 1673 out := new(google_protobuf1.Empty) 1674 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/DeleteAnnotationSet", in, out, c.cc, opts...) 1675 if err != nil { 1676 return nil, err 1677 } 1678 return out, nil 1679} 1680 1681func (c *annotationServiceV1Client) SearchAnnotationSets(ctx context.Context, in *SearchAnnotationSetsRequest, opts ...grpc.CallOption) (*SearchAnnotationSetsResponse, error) { 1682 out := new(SearchAnnotationSetsResponse) 1683 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/SearchAnnotationSets", in, out, c.cc, opts...) 1684 if err != nil { 1685 return nil, err 1686 } 1687 return out, nil 1688} 1689 1690func (c *annotationServiceV1Client) CreateAnnotation(ctx context.Context, in *CreateAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) { 1691 out := new(Annotation) 1692 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/CreateAnnotation", in, out, c.cc, opts...) 1693 if err != nil { 1694 return nil, err 1695 } 1696 return out, nil 1697} 1698 1699func (c *annotationServiceV1Client) BatchCreateAnnotations(ctx context.Context, in *BatchCreateAnnotationsRequest, opts ...grpc.CallOption) (*BatchCreateAnnotationsResponse, error) { 1700 out := new(BatchCreateAnnotationsResponse) 1701 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/BatchCreateAnnotations", in, out, c.cc, opts...) 1702 if err != nil { 1703 return nil, err 1704 } 1705 return out, nil 1706} 1707 1708func (c *annotationServiceV1Client) GetAnnotation(ctx context.Context, in *GetAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) { 1709 out := new(Annotation) 1710 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/GetAnnotation", in, out, c.cc, opts...) 1711 if err != nil { 1712 return nil, err 1713 } 1714 return out, nil 1715} 1716 1717func (c *annotationServiceV1Client) UpdateAnnotation(ctx context.Context, in *UpdateAnnotationRequest, opts ...grpc.CallOption) (*Annotation, error) { 1718 out := new(Annotation) 1719 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/UpdateAnnotation", in, out, c.cc, opts...) 1720 if err != nil { 1721 return nil, err 1722 } 1723 return out, nil 1724} 1725 1726func (c *annotationServiceV1Client) DeleteAnnotation(ctx context.Context, in *DeleteAnnotationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) { 1727 out := new(google_protobuf1.Empty) 1728 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/DeleteAnnotation", in, out, c.cc, opts...) 1729 if err != nil { 1730 return nil, err 1731 } 1732 return out, nil 1733} 1734 1735func (c *annotationServiceV1Client) SearchAnnotations(ctx context.Context, in *SearchAnnotationsRequest, opts ...grpc.CallOption) (*SearchAnnotationsResponse, error) { 1736 out := new(SearchAnnotationsResponse) 1737 err := grpc.Invoke(ctx, "/google.genomics.v1.AnnotationServiceV1/SearchAnnotations", in, out, c.cc, opts...) 1738 if err != nil { 1739 return nil, err 1740 } 1741 return out, nil 1742} 1743 1744// Server API for AnnotationServiceV1 service 1745 1746type AnnotationServiceV1Server interface { 1747 // Creates a new annotation set. Caller must have WRITE permission for the 1748 // associated dataset. 1749 // 1750 // The following fields are required: 1751 // 1752 // * [datasetId][google.genomics.v1.AnnotationSet.dataset_id] 1753 // * [referenceSetId][google.genomics.v1.AnnotationSet.reference_set_id] 1754 // 1755 // All other fields may be optionally specified, unless documented as being 1756 // server-generated (for example, the `id` field). 1757 CreateAnnotationSet(context.Context, *CreateAnnotationSetRequest) (*AnnotationSet, error) 1758 // Gets an annotation set. Caller must have READ permission for 1759 // the associated dataset. 1760 GetAnnotationSet(context.Context, *GetAnnotationSetRequest) (*AnnotationSet, error) 1761 // Updates an annotation set. The update must respect all mutability 1762 // restrictions and other invariants described on the annotation set resource. 1763 // Caller must have WRITE permission for the associated dataset. 1764 UpdateAnnotationSet(context.Context, *UpdateAnnotationSetRequest) (*AnnotationSet, error) 1765 // Deletes an annotation set. Caller must have WRITE permission 1766 // for the associated annotation set. 1767 DeleteAnnotationSet(context.Context, *DeleteAnnotationSetRequest) (*google_protobuf1.Empty, error) 1768 // Searches for annotation sets that match the given criteria. Annotation sets 1769 // are returned in an unspecified order. This order is consistent, such that 1770 // two queries for the same content (regardless of page size) yield annotation 1771 // sets in the same order across their respective streams of paginated 1772 // responses. Caller must have READ permission for the queried datasets. 1773 SearchAnnotationSets(context.Context, *SearchAnnotationSetsRequest) (*SearchAnnotationSetsResponse, error) 1774 // Creates a new annotation. Caller must have WRITE permission 1775 // for the associated annotation set. 1776 // 1777 // The following fields are required: 1778 // 1779 // * [annotationSetId][google.genomics.v1.Annotation.annotation_set_id] 1780 // * [referenceName][google.genomics.v1.Annotation.reference_name] or 1781 // [referenceId][google.genomics.v1.Annotation.reference_id] 1782 // 1783 // ### Transcripts 1784 // 1785 // For annotations of type TRANSCRIPT, the following fields of 1786 // [transcript][google.genomics.v1.Annotation.transcript] must be provided: 1787 // 1788 // * [exons.start][google.genomics.v1.Transcript.Exon.start] 1789 // * [exons.end][google.genomics.v1.Transcript.Exon.end] 1790 // 1791 // All other fields may be optionally specified, unless documented as being 1792 // server-generated (for example, the `id` field). The annotated 1793 // range must be no longer than 100Mbp (mega base pairs). See the 1794 // [Annotation resource][google.genomics.v1.Annotation] 1795 // for additional restrictions on each field. 1796 CreateAnnotation(context.Context, *CreateAnnotationRequest) (*Annotation, error) 1797 // Creates one or more new annotations atomically. All annotations must 1798 // belong to the same annotation set. Caller must have WRITE 1799 // permission for this annotation set. For optimal performance, batch 1800 // positionally adjacent annotations together. 1801 // 1802 // If the request has a systemic issue, such as an attempt to write to 1803 // an inaccessible annotation set, the entire RPC will fail accordingly. For 1804 // lesser data issues, when possible an error will be isolated to the 1805 // corresponding batch entry in the response; the remaining well formed 1806 // annotations will be created normally. 1807 // 1808 // For details on the requirements for each individual annotation resource, 1809 // see 1810 // [CreateAnnotation][google.genomics.v1.AnnotationServiceV1.CreateAnnotation]. 1811 BatchCreateAnnotations(context.Context, *BatchCreateAnnotationsRequest) (*BatchCreateAnnotationsResponse, error) 1812 // Gets an annotation. Caller must have READ permission 1813 // for the associated annotation set. 1814 GetAnnotation(context.Context, *GetAnnotationRequest) (*Annotation, error) 1815 // Updates an annotation. Caller must have 1816 // WRITE permission for the associated dataset. 1817 UpdateAnnotation(context.Context, *UpdateAnnotationRequest) (*Annotation, error) 1818 // Deletes an annotation. Caller must have WRITE permission for 1819 // the associated annotation set. 1820 DeleteAnnotation(context.Context, *DeleteAnnotationRequest) (*google_protobuf1.Empty, error) 1821 // Searches for annotations that match the given criteria. Results are 1822 // ordered by genomic coordinate (by reference sequence, then position). 1823 // Annotations with equivalent genomic coordinates are returned in an 1824 // unspecified order. This order is consistent, such that two queries for the 1825 // same content (regardless of page size) yield annotations in the same order 1826 // across their respective streams of paginated responses. Caller must have 1827 // READ permission for the queried annotation sets. 1828 SearchAnnotations(context.Context, *SearchAnnotationsRequest) (*SearchAnnotationsResponse, error) 1829} 1830 1831func RegisterAnnotationServiceV1Server(s *grpc.Server, srv AnnotationServiceV1Server) { 1832 s.RegisterService(&_AnnotationServiceV1_serviceDesc, srv) 1833} 1834 1835func _AnnotationServiceV1_CreateAnnotationSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1836 in := new(CreateAnnotationSetRequest) 1837 if err := dec(in); err != nil { 1838 return nil, err 1839 } 1840 if interceptor == nil { 1841 return srv.(AnnotationServiceV1Server).CreateAnnotationSet(ctx, in) 1842 } 1843 info := &grpc.UnaryServerInfo{ 1844 Server: srv, 1845 FullMethod: "/google.genomics.v1.AnnotationServiceV1/CreateAnnotationSet", 1846 } 1847 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1848 return srv.(AnnotationServiceV1Server).CreateAnnotationSet(ctx, req.(*CreateAnnotationSetRequest)) 1849 } 1850 return interceptor(ctx, in, info, handler) 1851} 1852 1853func _AnnotationServiceV1_GetAnnotationSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1854 in := new(GetAnnotationSetRequest) 1855 if err := dec(in); err != nil { 1856 return nil, err 1857 } 1858 if interceptor == nil { 1859 return srv.(AnnotationServiceV1Server).GetAnnotationSet(ctx, in) 1860 } 1861 info := &grpc.UnaryServerInfo{ 1862 Server: srv, 1863 FullMethod: "/google.genomics.v1.AnnotationServiceV1/GetAnnotationSet", 1864 } 1865 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1866 return srv.(AnnotationServiceV1Server).GetAnnotationSet(ctx, req.(*GetAnnotationSetRequest)) 1867 } 1868 return interceptor(ctx, in, info, handler) 1869} 1870 1871func _AnnotationServiceV1_UpdateAnnotationSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1872 in := new(UpdateAnnotationSetRequest) 1873 if err := dec(in); err != nil { 1874 return nil, err 1875 } 1876 if interceptor == nil { 1877 return srv.(AnnotationServiceV1Server).UpdateAnnotationSet(ctx, in) 1878 } 1879 info := &grpc.UnaryServerInfo{ 1880 Server: srv, 1881 FullMethod: "/google.genomics.v1.AnnotationServiceV1/UpdateAnnotationSet", 1882 } 1883 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1884 return srv.(AnnotationServiceV1Server).UpdateAnnotationSet(ctx, req.(*UpdateAnnotationSetRequest)) 1885 } 1886 return interceptor(ctx, in, info, handler) 1887} 1888 1889func _AnnotationServiceV1_DeleteAnnotationSet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1890 in := new(DeleteAnnotationSetRequest) 1891 if err := dec(in); err != nil { 1892 return nil, err 1893 } 1894 if interceptor == nil { 1895 return srv.(AnnotationServiceV1Server).DeleteAnnotationSet(ctx, in) 1896 } 1897 info := &grpc.UnaryServerInfo{ 1898 Server: srv, 1899 FullMethod: "/google.genomics.v1.AnnotationServiceV1/DeleteAnnotationSet", 1900 } 1901 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1902 return srv.(AnnotationServiceV1Server).DeleteAnnotationSet(ctx, req.(*DeleteAnnotationSetRequest)) 1903 } 1904 return interceptor(ctx, in, info, handler) 1905} 1906 1907func _AnnotationServiceV1_SearchAnnotationSets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1908 in := new(SearchAnnotationSetsRequest) 1909 if err := dec(in); err != nil { 1910 return nil, err 1911 } 1912 if interceptor == nil { 1913 return srv.(AnnotationServiceV1Server).SearchAnnotationSets(ctx, in) 1914 } 1915 info := &grpc.UnaryServerInfo{ 1916 Server: srv, 1917 FullMethod: "/google.genomics.v1.AnnotationServiceV1/SearchAnnotationSets", 1918 } 1919 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1920 return srv.(AnnotationServiceV1Server).SearchAnnotationSets(ctx, req.(*SearchAnnotationSetsRequest)) 1921 } 1922 return interceptor(ctx, in, info, handler) 1923} 1924 1925func _AnnotationServiceV1_CreateAnnotation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1926 in := new(CreateAnnotationRequest) 1927 if err := dec(in); err != nil { 1928 return nil, err 1929 } 1930 if interceptor == nil { 1931 return srv.(AnnotationServiceV1Server).CreateAnnotation(ctx, in) 1932 } 1933 info := &grpc.UnaryServerInfo{ 1934 Server: srv, 1935 FullMethod: "/google.genomics.v1.AnnotationServiceV1/CreateAnnotation", 1936 } 1937 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1938 return srv.(AnnotationServiceV1Server).CreateAnnotation(ctx, req.(*CreateAnnotationRequest)) 1939 } 1940 return interceptor(ctx, in, info, handler) 1941} 1942 1943func _AnnotationServiceV1_BatchCreateAnnotations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1944 in := new(BatchCreateAnnotationsRequest) 1945 if err := dec(in); err != nil { 1946 return nil, err 1947 } 1948 if interceptor == nil { 1949 return srv.(AnnotationServiceV1Server).BatchCreateAnnotations(ctx, in) 1950 } 1951 info := &grpc.UnaryServerInfo{ 1952 Server: srv, 1953 FullMethod: "/google.genomics.v1.AnnotationServiceV1/BatchCreateAnnotations", 1954 } 1955 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1956 return srv.(AnnotationServiceV1Server).BatchCreateAnnotations(ctx, req.(*BatchCreateAnnotationsRequest)) 1957 } 1958 return interceptor(ctx, in, info, handler) 1959} 1960 1961func _AnnotationServiceV1_GetAnnotation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1962 in := new(GetAnnotationRequest) 1963 if err := dec(in); err != nil { 1964 return nil, err 1965 } 1966 if interceptor == nil { 1967 return srv.(AnnotationServiceV1Server).GetAnnotation(ctx, in) 1968 } 1969 info := &grpc.UnaryServerInfo{ 1970 Server: srv, 1971 FullMethod: "/google.genomics.v1.AnnotationServiceV1/GetAnnotation", 1972 } 1973 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1974 return srv.(AnnotationServiceV1Server).GetAnnotation(ctx, req.(*GetAnnotationRequest)) 1975 } 1976 return interceptor(ctx, in, info, handler) 1977} 1978 1979func _AnnotationServiceV1_UpdateAnnotation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1980 in := new(UpdateAnnotationRequest) 1981 if err := dec(in); err != nil { 1982 return nil, err 1983 } 1984 if interceptor == nil { 1985 return srv.(AnnotationServiceV1Server).UpdateAnnotation(ctx, in) 1986 } 1987 info := &grpc.UnaryServerInfo{ 1988 Server: srv, 1989 FullMethod: "/google.genomics.v1.AnnotationServiceV1/UpdateAnnotation", 1990 } 1991 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1992 return srv.(AnnotationServiceV1Server).UpdateAnnotation(ctx, req.(*UpdateAnnotationRequest)) 1993 } 1994 return interceptor(ctx, in, info, handler) 1995} 1996 1997func _AnnotationServiceV1_DeleteAnnotation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1998 in := new(DeleteAnnotationRequest) 1999 if err := dec(in); err != nil { 2000 return nil, err 2001 } 2002 if interceptor == nil { 2003 return srv.(AnnotationServiceV1Server).DeleteAnnotation(ctx, in) 2004 } 2005 info := &grpc.UnaryServerInfo{ 2006 Server: srv, 2007 FullMethod: "/google.genomics.v1.AnnotationServiceV1/DeleteAnnotation", 2008 } 2009 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2010 return srv.(AnnotationServiceV1Server).DeleteAnnotation(ctx, req.(*DeleteAnnotationRequest)) 2011 } 2012 return interceptor(ctx, in, info, handler) 2013} 2014 2015func _AnnotationServiceV1_SearchAnnotations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2016 in := new(SearchAnnotationsRequest) 2017 if err := dec(in); err != nil { 2018 return nil, err 2019 } 2020 if interceptor == nil { 2021 return srv.(AnnotationServiceV1Server).SearchAnnotations(ctx, in) 2022 } 2023 info := &grpc.UnaryServerInfo{ 2024 Server: srv, 2025 FullMethod: "/google.genomics.v1.AnnotationServiceV1/SearchAnnotations", 2026 } 2027 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2028 return srv.(AnnotationServiceV1Server).SearchAnnotations(ctx, req.(*SearchAnnotationsRequest)) 2029 } 2030 return interceptor(ctx, in, info, handler) 2031} 2032 2033var _AnnotationServiceV1_serviceDesc = grpc.ServiceDesc{ 2034 ServiceName: "google.genomics.v1.AnnotationServiceV1", 2035 HandlerType: (*AnnotationServiceV1Server)(nil), 2036 Methods: []grpc.MethodDesc{ 2037 { 2038 MethodName: "CreateAnnotationSet", 2039 Handler: _AnnotationServiceV1_CreateAnnotationSet_Handler, 2040 }, 2041 { 2042 MethodName: "GetAnnotationSet", 2043 Handler: _AnnotationServiceV1_GetAnnotationSet_Handler, 2044 }, 2045 { 2046 MethodName: "UpdateAnnotationSet", 2047 Handler: _AnnotationServiceV1_UpdateAnnotationSet_Handler, 2048 }, 2049 { 2050 MethodName: "DeleteAnnotationSet", 2051 Handler: _AnnotationServiceV1_DeleteAnnotationSet_Handler, 2052 }, 2053 { 2054 MethodName: "SearchAnnotationSets", 2055 Handler: _AnnotationServiceV1_SearchAnnotationSets_Handler, 2056 }, 2057 { 2058 MethodName: "CreateAnnotation", 2059 Handler: _AnnotationServiceV1_CreateAnnotation_Handler, 2060 }, 2061 { 2062 MethodName: "BatchCreateAnnotations", 2063 Handler: _AnnotationServiceV1_BatchCreateAnnotations_Handler, 2064 }, 2065 { 2066 MethodName: "GetAnnotation", 2067 Handler: _AnnotationServiceV1_GetAnnotation_Handler, 2068 }, 2069 { 2070 MethodName: "UpdateAnnotation", 2071 Handler: _AnnotationServiceV1_UpdateAnnotation_Handler, 2072 }, 2073 { 2074 MethodName: "DeleteAnnotation", 2075 Handler: _AnnotationServiceV1_DeleteAnnotation_Handler, 2076 }, 2077 { 2078 MethodName: "SearchAnnotations", 2079 Handler: _AnnotationServiceV1_SearchAnnotations_Handler, 2080 }, 2081 }, 2082 Streams: []grpc.StreamDesc{}, 2083 Metadata: "google/genomics/v1/annotations.proto", 2084} 2085 2086func init() { proto.RegisterFile("google/genomics/v1/annotations.proto", fileDescriptor0) } 2087 2088var fileDescriptor0 = []byte{ 2089 // 2188 bytes of a gzipped FileDescriptorProto 2090 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x59, 0xcd, 0x6f, 0xdb, 0xc8, 2091 0x15, 0x0f, 0xf5, 0x69, 0x3f, 0xd9, 0x32, 0x3d, 0xf1, 0xda, 0x5a, 0x39, 0x1f, 0x0e, 0xf3, 0x65, 2092 0xb8, 0x89, 0xbc, 0x51, 0x80, 0x36, 0x75, 0xda, 0x74, 0x65, 0x9a, 0xb6, 0xa7, 0xab, 0x50, 0xc2, 2093 0x90, 0x72, 0xe1, 0x5e, 0x08, 0x86, 0x1a, 0x7b, 0x89, 0xd8, 0x94, 0x4a, 0xd2, 0x6e, 0xbc, 0xc5, 2094 0x02, 0x8b, 0xc5, 0x16, 0x3d, 0xf5, 0xb2, 0xbb, 0xf7, 0x5e, 0x0a, 0xb4, 0xff, 0x43, 0x2f, 0x05, 2095 0x7a, 0x6f, 0x0f, 0x45, 0xff, 0x83, 0x5e, 0xf6, 0xda, 0x53, 0x81, 0x5e, 0x8a, 0x19, 0x92, 0x12, 2096 0x45, 0x51, 0xb6, 0xdc, 0x00, 0xbd, 0x71, 0xde, 0xbc, 0xf7, 0xe6, 0x37, 0xbf, 0x99, 0xf7, 0x31, 2097 0x12, 0x3c, 0x38, 0xee, 0xf5, 0x8e, 0x4f, 0xe8, 0xe6, 0x31, 0x75, 0x7a, 0xa7, 0xb6, 0xe5, 0x6d, 2098 0x9e, 0x3f, 0xdb, 0x34, 0x1d, 0xa7, 0xe7, 0x9b, 0xbe, 0xdd, 0x73, 0xbc, 0x5a, 0xdf, 0xed, 0xf9, 2099 0x3d, 0x84, 0x02, 0xad, 0x5a, 0xa4, 0x55, 0x3b, 0x7f, 0x56, 0xbd, 0x15, 0x5a, 0x9a, 0x7d, 0x7b, 2100 0xdc, 0xa2, 0xba, 0x1a, 0xce, 0xf2, 0xd1, 0x9b, 0xb3, 0xa3, 0x4d, 0x7a, 0xda, 0xf7, 0x2f, 0xc2, 2101 0xc9, 0xb5, 0xe4, 0xe4, 0x91, 0x4d, 0x4f, 0xba, 0xc6, 0xa9, 0xe9, 0xbd, 0x0d, 0x35, 0x6e, 0x25, 2102 0x35, 0x3c, 0xdf, 0x3d, 0xb3, 0xfc, 0x70, 0xf6, 0x4e, 0x72, 0xf6, 0x97, 0xae, 0xd9, 0xef, 0x53, 2103 0x37, 0x5a, 0x7c, 0x25, 0x9c, 0x77, 0xfb, 0xd6, 0xa6, 0xe7, 0x9b, 0xfe, 0x59, 0x38, 0x21, 0x7d, 2104 0x97, 0x81, 0xf9, 0xc6, 0x00, 0xab, 0x46, 0x7d, 0x54, 0x86, 0x8c, 0xdd, 0xad, 0x08, 0x6b, 0xc2, 2105 0xfa, 0x2c, 0xc9, 0xd8, 0x5d, 0x74, 0x1b, 0xa0, 0x6b, 0xfa, 0xa6, 0x47, 0x7d, 0xc3, 0xee, 0x56, 2106 0x32, 0x5c, 0x3e, 0x1b, 0x4a, 0x70, 0x17, 0xad, 0x83, 0xe8, 0xd2, 0x23, 0xea, 0x52, 0xc7, 0xa2, 2107 0x46, 0xa8, 0x94, 0xe5, 0x4a, 0xe5, 0x81, 0x5c, 0xe3, 0x9a, 0x08, 0x72, 0x8e, 0x79, 0x4a, 0x2b, 2108 0x39, 0x3e, 0xcb, 0xbf, 0x99, 0x73, 0xaf, 0x77, 0xe6, 0x5a, 0xd4, 0x38, 0x73, 0xed, 0x4a, 0x3e, 2109 0x70, 0x1e, 0x48, 0x3a, 0xae, 0x8d, 0xbe, 0x0f, 0x39, 0xff, 0xa2, 0x4f, 0x2b, 0x85, 0x35, 0x61, 2110 0xbd, 0x5c, 0x97, 0x6a, 0xe3, 0xa4, 0xd7, 0x86, 0xe0, 0xf5, 0x8b, 0x3e, 0x25, 0x5c, 0x1f, 0xfd, 2111 0x04, 0x72, 0xb6, 0x73, 0xd4, 0xab, 0x2c, 0xae, 0x65, 0xd7, 0x4b, 0xf5, 0xef, 0x5d, 0x6e, 0xa7, 2112 0x51, 0xbf, 0x86, 0x9d, 0xa3, 0x9e, 0xe2, 0xf8, 0xee, 0x05, 0xe1, 0x86, 0x55, 0x0d, 0x66, 0x07, 2113 0x22, 0x24, 0x42, 0xf6, 0x2d, 0xbd, 0x08, 0x29, 0x61, 0x9f, 0xe8, 0x23, 0xc8, 0x9f, 0x9b, 0x27, 2114 0x67, 0x94, 0xd3, 0x51, 0xaa, 0x57, 0xa3, 0x05, 0x22, 0xfa, 0x6b, 0x4d, 0xdb, 0xf3, 0x0f, 0x98, 2115 0x06, 0x09, 0x14, 0xb7, 0x32, 0x2f, 0x04, 0xe9, 0xaf, 0x39, 0x80, 0xe1, 0xb2, 0x63, 0x44, 0x6f, 2116 0xc0, 0xe2, 0xf0, 0xd6, 0x18, 0x23, 0x7c, 0x2f, 0x98, 0x71, 0xb4, 0x31, 0x2e, 0xb3, 0x31, 0x2e, 2117 0xef, 0xc1, 0xdc, 0xf0, 0x24, 0xec, 0x6e, 0xc8, 0x73, 0x69, 0x20, 0xc3, 0x5d, 0xf4, 0x10, 0x86, 2118 0x87, 0x62, 0x70, 0x07, 0x01, 0xe5, 0xf3, 0x03, 0xa9, 0xca, 0x3c, 0x2d, 0x41, 0xde, 0xf3, 0x4d, 2119 0xd7, 0xe7, 0xbc, 0x67, 0x49, 0x30, 0x60, 0x34, 0x50, 0xa7, 0x5b, 0x29, 0x72, 0x19, 0xfb, 0x0c, 2120 0xdc, 0x9d, 0x53, 0xd7, 0xa3, 0x86, 0xe7, 0xbb, 0xa6, 0xd3, 0xad, 0xcc, 0xac, 0x09, 0xeb, 0x33, 2121 0xcc, 0x1d, 0x97, 0x6a, 0x5c, 0x38, 0x38, 0xc5, 0xd9, 0x6b, 0x9e, 0x62, 0x03, 0x8a, 0xe7, 0xa6, 2122 0x6b, 0x9b, 0x8e, 0x5f, 0x01, 0xce, 0xf3, 0xc3, 0x34, 0xd3, 0x83, 0x40, 0x65, 0xe8, 0x61, 0xff, 2123 0x06, 0x89, 0xec, 0xd0, 0xc7, 0x00, 0x0c, 0x83, 0x67, 0xb9, 0x76, 0xdf, 0xaf, 0x94, 0xb8, 0x97, 2124 0x3b, 0x69, 0x5e, 0xf4, 0x81, 0xd6, 0xfe, 0x0d, 0x12, 0xb3, 0x41, 0x3f, 0x0a, 0xaf, 0xd2, 0x1c, 2125 0xbf, 0x4a, 0xeb, 0x97, 0x83, 0xff, 0xbf, 0xdc, 0xa3, 0xed, 0x62, 0x68, 0x25, 0xfd, 0x67, 0x16, 2126 0x16, 0xc7, 0xb6, 0x8f, 0x5e, 0x85, 0x74, 0x0b, 0x9c, 0xee, 0x8d, 0xa9, 0x38, 0xab, 0xc5, 0x68, 2127 0xdf, 0x81, 0x02, 0x3d, 0x3a, 0xa2, 0x96, 0xcf, 0x51, 0x95, 0xeb, 0x4f, 0xa6, 0xf3, 0xa0, 0x70, 2128 0x1b, 0x12, 0xda, 0xa2, 0xc7, 0xb0, 0x60, 0x9e, 0xf8, 0xd4, 0x75, 0x4c, 0x9f, 0x1a, 0x6f, 0x4c, 2129 0x8f, 0x7a, 0x51, 0x5a, 0x18, 0x88, 0xb7, 0x99, 0x14, 0xad, 0x40, 0xf1, 0x98, 0x3a, 0xb1, 0x1b, 2130 0x5b, 0x60, 0xc3, 0xe0, 0xb2, 0x0e, 0xcf, 0xc1, 0xb0, 0xbb, 0x5e, 0x25, 0xbf, 0x96, 0x65, 0x97, 2131 0x75, 0x28, 0xc5, 0x5d, 0x0f, 0xfd, 0x0c, 0xc0, 0xea, 0x39, 0x5d, 0x9b, 0xe7, 0xda, 0x4a, 0x81, 2132 0x1f, 0xd3, 0x0f, 0xa6, 0x83, 0x2c, 0x9f, 0xd8, 0x8e, 0x6d, 0x99, 0x27, 0x72, 0x64, 0x4f, 0x62, 2133 0xae, 0x50, 0x0f, 0x3e, 0xb0, 0x42, 0x05, 0xc3, 0xb3, 0x8f, 0x1d, 0xfb, 0xc8, 0xb6, 0x4c, 0xc7, 2134 0xa2, 0x3c, 0x02, 0xca, 0xf5, 0xad, 0xeb, 0xad, 0xa1, 0xc5, 0x3c, 0x90, 0x25, 0x2b, 0x45, 0x5a, 2135 0xfd, 0xbd, 0x00, 0x8b, 0x63, 0x90, 0x58, 0x30, 0xb2, 0x48, 0xf5, 0x2a, 0x02, 0xdf, 0x7d, 0x30, 2136 0x40, 0x0d, 0x98, 0xa3, 0xef, 0x38, 0x8f, 0x27, 0x9c, 0x9a, 0x0c, 0xdf, 0x77, 0xea, 0xd5, 0x56, 2137 0x42, 0x3d, 0xdc, 0x25, 0x25, 0x3a, 0xf8, 0xf6, 0x58, 0xee, 0xb5, 0x7a, 0x8e, 0x45, 0xfb, 0xb1, 2138 0x9c, 0x3d, 0x1b, 0x4a, 0x70, 0x97, 0x9d, 0x4b, 0xef, 0xd4, 0x3e, 0x8d, 0x9d, 0x0b, 0x1b, 0xe2, 2139 0xae, 0xf4, 0x39, 0xe4, 0xd8, 0x6d, 0x41, 0x4b, 0x20, 0xea, 0x87, 0x6d, 0xc5, 0xe8, 0xa8, 0x5a, 2140 0x5b, 0x91, 0xf1, 0x2e, 0x56, 0x76, 0xc4, 0x1b, 0xa8, 0x0c, 0xc0, 0xa5, 0x2d, 0x7d, 0x5f, 0x21, 2141 0xa2, 0x80, 0xe6, 0x61, 0x16, 0xab, 0x9a, 0x42, 0x74, 0xdc, 0x52, 0xc5, 0x0c, 0x9a, 0x83, 0x99, 2142 0x1d, 0xa5, 0xa9, 0xf0, 0x51, 0x16, 0x89, 0x30, 0xa7, 0x75, 0xb6, 0x35, 0x1d, 0xeb, 0x1d, 0x2e, 2143 0xc9, 0xa1, 0x22, 0x64, 0x35, 0xb5, 0x2d, 0xe6, 0x99, 0x1f, 0x4d, 0x27, 0x1d, 0x59, 0xef, 0x90, 2144 0x46, 0x53, 0x2c, 0xb0, 0x09, 0x59, 0x3d, 0x10, 0x8b, 0xd2, 0x5f, 0x04, 0x28, 0x04, 0x77, 0x0d, 2145 0x2d, 0x03, 0x52, 0x76, 0x77, 0x15, 0x59, 0x4f, 0x60, 0x10, 0x61, 0x2e, 0x94, 0x47, 0x28, 0xca, 2146 0x00, 0xbb, 0xa4, 0xf1, 0x5a, 0xd1, 0xf6, 0xf1, 0xae, 0x2e, 0x66, 0x50, 0x15, 0x96, 0xf9, 0xd8, 2147 0x68, 0x13, 0x45, 0x53, 0xc8, 0x01, 0x56, 0xf7, 0x0c, 0xac, 0xee, 0x28, 0x4d, 0x31, 0x8b, 0x10, 2148 0x94, 0xb5, 0x43, 0xb5, 0xa5, 0x1e, 0xbe, 0x6e, 0x75, 0x34, 0x83, 0xa1, 0xc9, 0xa1, 0x0f, 0x60, 2149 0x51, 0x6d, 0xa9, 0x09, 0x71, 0x9e, 0x6d, 0x4e, 0xd3, 0x5b, 0x6d, 0x63, 0xaf, 0x81, 0x55, 0xb1, 2150 0x30, 0x18, 0x36, 0x5b, 0x9a, 0x26, 0x16, 0xd9, 0x22, 0x5a, 0xbb, 0x89, 0x65, 0xc5, 0xd0, 0xb0, 2151 0xae, 0x18, 0x3b, 0x58, 0x23, 0x9d, 0x36, 0xdf, 0xe7, 0x8c, 0xf4, 0xe7, 0x0c, 0x2c, 0xa5, 0x5d, 2152 0x0d, 0xf4, 0x10, 0xee, 0xc9, 0x4d, 0xac, 0x62, 0xb9, 0xd1, 0x34, 0x34, 0xbc, 0xa7, 0xe2, 0x5d, 2153 0x2c, 0x37, 0x54, 0x39, 0x49, 0xf3, 0x5d, 0x58, 0x4d, 0x57, 0x8b, 0xf1, 0xde, 0x51, 0x65, 0x85, 2154 0xe8, 0x0c, 0x5a, 0x06, 0x01, 0x14, 0xb6, 0x15, 0x15, 0xef, 0x31, 0xd6, 0x17, 0x61, 0xbe, 0x89, 2155 0x3f, 0x51, 0x9a, 0x87, 0x46, 0x28, 0xe2, 0xfb, 0x0b, 0x45, 0xed, 0x86, 0xbe, 0xdf, 0xda, 0x53, 2156 0x54, 0x2c, 0x07, 0x87, 0x10, 0x1b, 0x17, 0x98, 0xe5, 0x0e, 0xe9, 0xec, 0x19, 0x44, 0xd1, 0xda, 2157 0x2d, 0x55, 0x53, 0xc4, 0x22, 0x3b, 0x83, 0x7d, 0xac, 0xe9, 0x2d, 0xb9, 0xf5, 0xba, 0xdd, 0xd0, 2158 0xf1, 0x36, 0x6e, 0x62, 0xfd, 0x50, 0x9c, 0x41, 0x2b, 0x70, 0x53, 0x6e, 0xa9, 0xbb, 0x0a, 0xd1, 2159 0x0c, 0x4d, 0x51, 0x35, 0xac, 0xe3, 0x03, 0x36, 0x31, 0x8b, 0x16, 0xa0, 0x44, 0xb0, 0xf6, 0x89, 2160 0xb1, 0xdb, 0x90, 0xf5, 0x16, 0x11, 0x81, 0x09, 0x1a, 0x9a, 0xd6, 0x92, 0x71, 0x83, 0x73, 0x53, 2161 0xe2, 0xab, 0x92, 0x96, 0xae, 0xc8, 0x3a, 0x3e, 0x50, 0xc4, 0x39, 0x06, 0xee, 0x75, 0xa7, 0xa9, 2162 0xe3, 0x76, 0x53, 0x31, 0x88, 0xd2, 0x6e, 0x11, 0x5d, 0xd9, 0x11, 0xe7, 0xa5, 0x7f, 0x64, 0x00, 2163 0x86, 0x69, 0x3b, 0x9e, 0x47, 0x84, 0x91, 0x3c, 0xf2, 0x43, 0xc8, 0xd3, 0x77, 0x2c, 0x37, 0x04, 2164 0x31, 0x72, 0xff, 0xf2, 0xf4, 0x5f, 0x53, 0xde, 0xf5, 0x1c, 0x12, 0x58, 0xa0, 0x03, 0x58, 0xb0, 2165 0x7a, 0x5d, 0xdb, 0x39, 0x36, 0x3c, 0xfa, 0x8b, 0x33, 0x56, 0x1f, 0x79, 0x9c, 0x94, 0xea, 0x4f, 2166 0xaf, 0x70, 0x22, 0x73, 0x2b, 0x2d, 0x34, 0x22, 0x65, 0x6b, 0x64, 0x5c, 0x35, 0x21, 0xc7, 0x96, 2167 0x19, 0x16, 0x5a, 0x21, 0xa5, 0xd0, 0x66, 0x86, 0x85, 0xf6, 0x19, 0xe4, 0x8f, 0xdc, 0xa8, 0xde, 2168 0x97, 0xea, 0xab, 0x63, 0x75, 0x02, 0x3b, 0xfe, 0xf3, 0x7a, 0x58, 0x28, 0xb8, 0x66, 0xf5, 0x05, 2169 0x94, 0x47, 0x41, 0x4c, 0xbb, 0x98, 0xf4, 0x63, 0x80, 0x61, 0xca, 0x40, 0x77, 0xa1, 0x14, 0x76, 2170 0x68, 0xbc, 0x5f, 0x08, 0xa8, 0x0d, 0x9b, 0x36, 0xde, 0x2c, 0x04, 0x6d, 0x4c, 0x26, 0x6a, 0x63, 2171 0xa4, 0x23, 0xa8, 0xca, 0x2e, 0x35, 0x7d, 0x3a, 0xd2, 0x61, 0x11, 0x86, 0xc2, 0xf3, 0xd1, 0x3e, 2172 0x94, 0x47, 0x9b, 0x1c, 0xee, 0xb1, 0x54, 0xbf, 0x77, 0x65, 0x8f, 0x46, 0xe6, 0x47, 0x9a, 0x20, 2173 0x49, 0x81, 0x95, 0x3d, 0xea, 0xa7, 0x2e, 0x92, 0xda, 0x49, 0x09, 0xa9, 0x9d, 0x94, 0xf4, 0x37, 2174 0x01, 0xaa, 0x9d, 0x7e, 0x77, 0x12, 0xde, 0x6b, 0xb8, 0x4a, 0xd9, 0x5b, 0xe6, 0x7f, 0xdb, 0x1b, 2175 0x7a, 0x09, 0xa5, 0x33, 0x8e, 0x89, 0xbf, 0x00, 0xc2, 0x53, 0x1f, 0xef, 0x0e, 0x76, 0xd9, 0x23, 2176 0xe1, 0xb5, 0xe9, 0xbd, 0x25, 0x10, 0xa8, 0xb3, 0x6f, 0x69, 0x1f, 0xaa, 0x3b, 0xf4, 0x84, 0xbe, 2177 0xff, 0x86, 0xa4, 0x7f, 0x09, 0xb0, 0xaa, 0x51, 0xd3, 0xb5, 0x3e, 0x1d, 0x71, 0xe5, 0x45, 0xbe, 2178 0xee, 0x42, 0x69, 0xf8, 0x34, 0x88, 0x0a, 0x14, 0x0c, 0xde, 0x06, 0x5e, 0xea, 0xe3, 0x20, 0x73, 2179 0xe9, 0xe3, 0x20, 0xde, 0xd0, 0xbe, 0x80, 0x3c, 0x6b, 0x48, 0xbc, 0x4a, 0x6e, 0x2d, 0x3b, 0x65, 2180 0xe3, 0x18, 0x18, 0xb0, 0xd2, 0xd6, 0x37, 0x8f, 0xa9, 0xe1, 0xf7, 0xde, 0x52, 0x27, 0x7a, 0x56, 2181 0x30, 0x89, 0xce, 0x04, 0x68, 0x15, 0xf8, 0xc0, 0xf0, 0xec, 0xcf, 0x82, 0xb7, 0x45, 0x9e, 0xcc, 2182 0x30, 0x81, 0x66, 0x7f, 0x46, 0xa5, 0xaf, 0x05, 0xb8, 0x95, 0xbe, 0x69, 0xaf, 0xdf, 0x73, 0x3c, 2183 0x8a, 0x7e, 0x0a, 0x0b, 0xa3, 0x0c, 0x06, 0x3b, 0x9f, 0xea, 0x9c, 0xcb, 0x23, 0x14, 0x7b, 0xe8, 2184 0x11, 0x2c, 0x38, 0xf4, 0x9d, 0x6f, 0xc4, 0xd0, 0x06, 0xfc, 0xcc, 0x33, 0x71, 0x3b, 0x42, 0x2c, 2185 0x1d, 0xc2, 0x4a, 0x32, 0xa8, 0xa2, 0x43, 0x78, 0x05, 0x30, 0x74, 0x1a, 0x46, 0xd3, 0x9d, 0xcb, 2186 0x91, 0x90, 0x98, 0x85, 0xf4, 0x85, 0x00, 0xb7, 0xb7, 0x4d, 0xdf, 0xfa, 0x34, 0xb9, 0xc0, 0xe0, 2187 0x98, 0x3f, 0x86, 0x52, 0xec, 0x39, 0x1b, 0x6e, 0xf6, 0xaa, 0x25, 0xe2, 0x26, 0xec, 0x3c, 0xdc, 2188 0xc0, 0x59, 0xec, 0x0d, 0x19, 0x4a, 0x70, 0x57, 0xfa, 0x4e, 0x80, 0x3b, 0x93, 0x20, 0x84, 0xa4, 2189 0x13, 0x28, 0x52, 0xc7, 0x77, 0x6d, 0x1a, 0xad, 0xff, 0x22, 0x6d, 0xfd, 0xcb, 0x9d, 0xd4, 0x82, 2190 0xce, 0x3c, 0x72, 0x54, 0xf5, 0x20, 0x1f, 0x34, 0xe6, 0x1b, 0x50, 0x08, 0x1e, 0xc5, 0x21, 0x7d, 2191 0x28, 0xf2, 0xed, 0xf6, 0xad, 0x9a, 0xc6, 0x67, 0x48, 0xa8, 0x91, 0xa0, 0x3b, 0x73, 0x6d, 0xba, 2192 0x5f, 0xc2, 0xd2, 0x48, 0xda, 0x8a, 0x48, 0xbe, 0x0f, 0xb1, 0x1c, 0x30, 0x8c, 0xc9, 0xb9, 0xa1, 2193 0x10, 0x77, 0xa5, 0x3f, 0x09, 0xb0, 0x92, 0x4c, 0x56, 0xd7, 0x71, 0xf0, 0xbe, 0xe8, 0xdf, 0x2f, 2194 0x31, 0xbd, 0x82, 0x95, 0x64, 0x62, 0xba, 0xd6, 0xee, 0x7f, 0x93, 0x81, 0x4a, 0x32, 0x32, 0x07, 2195 0x97, 0xf4, 0x09, 0xa0, 0xb1, 0xbc, 0x16, 0xa5, 0x24, 0x31, 0x91, 0xd8, 0x3c, 0x74, 0x3f, 0xf1, 2196 0x56, 0xe6, 0x57, 0x72, 0xff, 0xc6, 0xe8, 0x6b, 0xf9, 0xf1, 0xd8, 0x6b, 0x39, 0x1b, 0xaa, 0x4d, 2197 0x7a, 0x2f, 0xe7, 0x52, 0x2a, 0x6b, 0x7e, 0x58, 0xc6, 0x47, 0xd3, 0x52, 0xe1, 0xd2, 0xb4, 0x54, 2198 0x1c, 0x4d, 0x4b, 0xdb, 0x25, 0x98, 0x1d, 0x2c, 0x2a, 0xfd, 0x5a, 0x80, 0x0f, 0x53, 0x98, 0x08, 2199 0x63, 0xe5, 0xfd, 0xe3, 0x75, 0xca, 0xb4, 0xb4, 0x41, 0xa1, 0x3c, 0x9a, 0x80, 0x59, 0x5f, 0xda, 2200 0x50, 0xd5, 0x96, 0xce, 0x7b, 0x39, 0x23, 0xe5, 0x7d, 0x50, 0x82, 0xe2, 0x9e, 0xa2, 0x2a, 0x04, 2201 0xcb, 0xa2, 0xc0, 0x06, 0x07, 0x0d, 0x82, 0x1b, 0x2a, 0xeb, 0xc9, 0x67, 0x20, 0xc7, 0x66, 0xc4, 2202 0x2c, 0x7f, 0x43, 0x90, 0x86, 0xaa, 0xc9, 0x04, 0xb7, 0x75, 0x31, 0x57, 0xff, 0x6a, 0x1e, 0x6e, 2203 0xc6, 0xf3, 0xa8, 0x7b, 0x6e, 0x5b, 0xf4, 0xe0, 0x19, 0xfa, 0x56, 0x80, 0x9b, 0x29, 0xbd, 0x06, 2204 0xaa, 0xa5, 0xed, 0x75, 0x72, 0x53, 0x52, 0xbd, 0x3a, 0x71, 0x4b, 0x1b, 0x5f, 0xfe, 0xfd, 0x9f, 2205 0xdf, 0x64, 0x1e, 0x48, 0x28, 0xf1, 0x73, 0x20, 0xf5, 0xbd, 0xad, 0x44, 0xd5, 0x47, 0x5f, 0x0b, 2206 0x20, 0x26, 0x5b, 0x13, 0x94, 0xfa, 0x23, 0xd4, 0x84, 0x06, 0x66, 0x1a, 0x40, 0x35, 0x0e, 0x68, 2207 0x1d, 0x3d, 0x1a, 0x07, 0xb4, 0xf9, 0xab, 0xb1, 0x48, 0xf8, 0x1c, 0xfd, 0x51, 0x80, 0x9b, 0x29, 2208 0x7d, 0x4e, 0x3a, 0x57, 0x93, 0x1b, 0xa2, 0x69, 0xa0, 0xbd, 0xe2, 0xd0, 0x5e, 0x54, 0xa7, 0x84, 2209 0x36, 0xc6, 0xdf, 0x6f, 0x05, 0xb8, 0x99, 0xd2, 0xc1, 0xa4, 0x43, 0x9d, 0xdc, 0xea, 0x54, 0x97, 2210 0xc7, 0xf2, 0x92, 0x72, 0xda, 0xf7, 0x2f, 0x22, 0xea, 0x36, 0xa6, 0xa5, 0xee, 0x77, 0x02, 0x2c, 2211 0xa5, 0x75, 0x04, 0x68, 0x33, 0x0d, 0xd0, 0x25, 0x0d, 0x53, 0xf5, 0xa3, 0xe9, 0x0d, 0x82, 0x58, 2212 0x96, 0x1e, 0x70, 0xac, 0x77, 0xa4, 0x0f, 0x53, 0xb0, 0x7a, 0xdc, 0x70, 0x4b, 0xd8, 0x40, 0x5f, 2213 0x09, 0x20, 0x26, 0xef, 0x77, 0xfa, 0x8d, 0x9b, 0xd0, 0x45, 0x54, 0xaf, 0x48, 0x0f, 0xd2, 0x7d, 2214 0x8e, 0xe3, 0xb6, 0xb4, 0x90, 0xc0, 0xb1, 0x15, 0xaf, 0x0e, 0x7f, 0x10, 0x60, 0x39, 0xbd, 0x04, 2215 0xa3, 0x67, 0xd7, 0x29, 0xd7, 0x01, 0xa4, 0xfa, 0xf5, 0x2b, 0xbc, 0xf4, 0x88, 0xc3, 0x5c, 0x93, 2216 0x56, 0x93, 0x30, 0xdf, 0x0c, 0xed, 0x18, 0x61, 0x5f, 0x0a, 0x30, 0x3f, 0x12, 0x7c, 0x68, 0xfd, 2217 0xca, 0xf8, 0x9c, 0x96, 0xaa, 0xc7, 0x1c, 0xc3, 0x3d, 0x74, 0x37, 0x81, 0x61, 0xe4, 0x6e, 0xb1, 2218 0x7b, 0xf5, 0xad, 0x00, 0x62, 0x32, 0xd2, 0xd2, 0x4f, 0x6d, 0x42, 0xcd, 0xbf, 0x12, 0xca, 0x73, 2219 0x0e, 0xe5, 0x69, 0xf5, 0x2a, 0x28, 0x23, 0xa7, 0xf8, 0x85, 0x00, 0x62, 0x32, 0xaa, 0xd2, 0x61, 2220 0x4d, 0xa8, 0xe6, 0x13, 0x03, 0x2f, 0x64, 0x66, 0xe3, 0x4a, 0x66, 0xbe, 0x11, 0x60, 0x71, 0xac, 2221 0xbe, 0xa1, 0x27, 0xd3, 0x44, 0xcf, 0xe0, 0xfa, 0x3c, 0x9d, 0x52, 0x3b, 0xbc, 0x39, 0xf7, 0x38, 2222 0xb6, 0x55, 0x69, 0x39, 0x89, 0x6d, 0x10, 0x65, 0xdb, 0x6f, 0x61, 0xd9, 0xea, 0x9d, 0xa6, 0xb8, 2223 0xdd, 0x16, 0x63, 0x1e, 0xdb, 0x6c, 0xcf, 0x6d, 0xe1, 0xe7, 0x5b, 0x91, 0x5e, 0xef, 0xc4, 0x74, 2224 0x8e, 0x6b, 0x3d, 0xf7, 0x78, 0xf3, 0x98, 0x3a, 0x9c, 0x91, 0xcd, 0x60, 0xca, 0xec, 0xdb, 0x5e, 2225 0xfc, 0x6f, 0xa6, 0x97, 0xd1, 0xf7, 0xbf, 0x05, 0xe1, 0x4d, 0x81, 0x6b, 0x3e, 0xff, 0x6f, 0x00, 2226 0x00, 0x00, 0xff, 0xff, 0xf4, 0x94, 0x75, 0x44, 0x8f, 0x1a, 0x00, 0x00, 2227} 2228