1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/api/expr/v1alpha1/checked.proto 3 4package expr 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 empty "github.com/golang/protobuf/ptypes/empty" 12 _struct "github.com/golang/protobuf/ptypes/struct" 13) 14 15// Reference imports to suppress errors if they are not otherwise used. 16var _ = proto.Marshal 17var _ = fmt.Errorf 18var _ = math.Inf 19 20// This is a compile-time assertion to ensure that this generated file 21// is compatible with the proto package it is being compiled against. 22// A compilation error at this line likely means your copy of the 23// proto package needs to be updated. 24const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 25 26// CEL primitive types. 27type Type_PrimitiveType int32 28 29const ( 30 // Unspecified type. 31 Type_PRIMITIVE_TYPE_UNSPECIFIED Type_PrimitiveType = 0 32 // Boolean type. 33 Type_BOOL Type_PrimitiveType = 1 34 // Int64 type. 35 // 36 // Proto-based integer values are widened to int64. 37 Type_INT64 Type_PrimitiveType = 2 38 // Uint64 type. 39 // 40 // Proto-based unsigned integer values are widened to uint64. 41 Type_UINT64 Type_PrimitiveType = 3 42 // Double type. 43 // 44 // Proto-based float values are widened to double values. 45 Type_DOUBLE Type_PrimitiveType = 4 46 // String type. 47 Type_STRING Type_PrimitiveType = 5 48 // Bytes type. 49 Type_BYTES Type_PrimitiveType = 6 50) 51 52var Type_PrimitiveType_name = map[int32]string{ 53 0: "PRIMITIVE_TYPE_UNSPECIFIED", 54 1: "BOOL", 55 2: "INT64", 56 3: "UINT64", 57 4: "DOUBLE", 58 5: "STRING", 59 6: "BYTES", 60} 61 62var Type_PrimitiveType_value = map[string]int32{ 63 "PRIMITIVE_TYPE_UNSPECIFIED": 0, 64 "BOOL": 1, 65 "INT64": 2, 66 "UINT64": 3, 67 "DOUBLE": 4, 68 "STRING": 5, 69 "BYTES": 6, 70} 71 72func (x Type_PrimitiveType) String() string { 73 return proto.EnumName(Type_PrimitiveType_name, int32(x)) 74} 75 76func (Type_PrimitiveType) EnumDescriptor() ([]byte, []int) { 77 return fileDescriptor_30a741de3e790389, []int{1, 0} 78} 79 80// Well-known protobuf types treated with first-class support in CEL. 81type Type_WellKnownType int32 82 83const ( 84 // Unspecified type. 85 Type_WELL_KNOWN_TYPE_UNSPECIFIED Type_WellKnownType = 0 86 // Well-known protobuf.Any type. 87 // 88 // Any types are a polymorphic message type. During type-checking they are 89 // treated like `DYN` types, but at runtime they are resolved to a specific 90 // message type specified at evaluation time. 91 Type_ANY Type_WellKnownType = 1 92 // Well-known protobuf.Timestamp type, internally referenced as `timestamp`. 93 Type_TIMESTAMP Type_WellKnownType = 2 94 // Well-known protobuf.Duration type, internally referenced as `duration`. 95 Type_DURATION Type_WellKnownType = 3 96) 97 98var Type_WellKnownType_name = map[int32]string{ 99 0: "WELL_KNOWN_TYPE_UNSPECIFIED", 100 1: "ANY", 101 2: "TIMESTAMP", 102 3: "DURATION", 103} 104 105var Type_WellKnownType_value = map[string]int32{ 106 "WELL_KNOWN_TYPE_UNSPECIFIED": 0, 107 "ANY": 1, 108 "TIMESTAMP": 2, 109 "DURATION": 3, 110} 111 112func (x Type_WellKnownType) String() string { 113 return proto.EnumName(Type_WellKnownType_name, int32(x)) 114} 115 116func (Type_WellKnownType) EnumDescriptor() ([]byte, []int) { 117 return fileDescriptor_30a741de3e790389, []int{1, 1} 118} 119 120// A CEL expression which has been successfully type checked. 121type CheckedExpr struct { 122 // A map from expression ids to resolved references. 123 // 124 // The following entries are in this table: 125 // 126 // - An Ident or Select expression is represented here if it resolves to a 127 // declaration. For instance, if `a.b.c` is represented by 128 // `select(select(id(a), b), c)`, and `a.b` resolves to a declaration, 129 // while `c` is a field selection, then the reference is attached to the 130 // nested select expression (but not to the id or or the outer select). 131 // In turn, if `a` resolves to a declaration and `b.c` are field selections, 132 // the reference is attached to the ident expression. 133 // - Every Call expression has an entry here, identifying the function being 134 // called. 135 // - Every CreateStruct expression for a message has an entry, identifying 136 // the message. 137 ReferenceMap map[int64]*Reference `protobuf:"bytes,2,rep,name=reference_map,json=referenceMap,proto3" json:"reference_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 138 // A map from expression ids to types. 139 // 140 // Every expression node which has a type different than DYN has a mapping 141 // here. If an expression has type DYN, it is omitted from this map to save 142 // space. 143 TypeMap map[int64]*Type `protobuf:"bytes,3,rep,name=type_map,json=typeMap,proto3" json:"type_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 144 // The source info derived from input that generated the parsed `expr` and 145 // any optimizations made during the type-checking pass. 146 SourceInfo *SourceInfo `protobuf:"bytes,5,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"` 147 // The checked expression. Semantically equivalent to the parsed `expr`, but 148 // may have structural differences. 149 Expr *Expr `protobuf:"bytes,4,opt,name=expr,proto3" json:"expr,omitempty"` 150 XXX_NoUnkeyedLiteral struct{} `json:"-"` 151 XXX_unrecognized []byte `json:"-"` 152 XXX_sizecache int32 `json:"-"` 153} 154 155func (m *CheckedExpr) Reset() { *m = CheckedExpr{} } 156func (m *CheckedExpr) String() string { return proto.CompactTextString(m) } 157func (*CheckedExpr) ProtoMessage() {} 158func (*CheckedExpr) Descriptor() ([]byte, []int) { 159 return fileDescriptor_30a741de3e790389, []int{0} 160} 161 162func (m *CheckedExpr) XXX_Unmarshal(b []byte) error { 163 return xxx_messageInfo_CheckedExpr.Unmarshal(m, b) 164} 165func (m *CheckedExpr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 166 return xxx_messageInfo_CheckedExpr.Marshal(b, m, deterministic) 167} 168func (m *CheckedExpr) XXX_Merge(src proto.Message) { 169 xxx_messageInfo_CheckedExpr.Merge(m, src) 170} 171func (m *CheckedExpr) XXX_Size() int { 172 return xxx_messageInfo_CheckedExpr.Size(m) 173} 174func (m *CheckedExpr) XXX_DiscardUnknown() { 175 xxx_messageInfo_CheckedExpr.DiscardUnknown(m) 176} 177 178var xxx_messageInfo_CheckedExpr proto.InternalMessageInfo 179 180func (m *CheckedExpr) GetReferenceMap() map[int64]*Reference { 181 if m != nil { 182 return m.ReferenceMap 183 } 184 return nil 185} 186 187func (m *CheckedExpr) GetTypeMap() map[int64]*Type { 188 if m != nil { 189 return m.TypeMap 190 } 191 return nil 192} 193 194func (m *CheckedExpr) GetSourceInfo() *SourceInfo { 195 if m != nil { 196 return m.SourceInfo 197 } 198 return nil 199} 200 201func (m *CheckedExpr) GetExpr() *Expr { 202 if m != nil { 203 return m.Expr 204 } 205 return nil 206} 207 208// Represents a CEL type. 209type Type struct { 210 // The kind of type. 211 // 212 // Types that are valid to be assigned to TypeKind: 213 // *Type_Dyn 214 // *Type_Null 215 // *Type_Primitive 216 // *Type_Wrapper 217 // *Type_WellKnown 218 // *Type_ListType_ 219 // *Type_MapType_ 220 // *Type_Function 221 // *Type_MessageType 222 // *Type_TypeParam 223 // *Type_Type 224 // *Type_Error 225 // *Type_AbstractType_ 226 TypeKind isType_TypeKind `protobuf_oneof:"type_kind"` 227 XXX_NoUnkeyedLiteral struct{} `json:"-"` 228 XXX_unrecognized []byte `json:"-"` 229 XXX_sizecache int32 `json:"-"` 230} 231 232func (m *Type) Reset() { *m = Type{} } 233func (m *Type) String() string { return proto.CompactTextString(m) } 234func (*Type) ProtoMessage() {} 235func (*Type) Descriptor() ([]byte, []int) { 236 return fileDescriptor_30a741de3e790389, []int{1} 237} 238 239func (m *Type) XXX_Unmarshal(b []byte) error { 240 return xxx_messageInfo_Type.Unmarshal(m, b) 241} 242func (m *Type) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 243 return xxx_messageInfo_Type.Marshal(b, m, deterministic) 244} 245func (m *Type) XXX_Merge(src proto.Message) { 246 xxx_messageInfo_Type.Merge(m, src) 247} 248func (m *Type) XXX_Size() int { 249 return xxx_messageInfo_Type.Size(m) 250} 251func (m *Type) XXX_DiscardUnknown() { 252 xxx_messageInfo_Type.DiscardUnknown(m) 253} 254 255var xxx_messageInfo_Type proto.InternalMessageInfo 256 257type isType_TypeKind interface { 258 isType_TypeKind() 259} 260 261type Type_Dyn struct { 262 Dyn *empty.Empty `protobuf:"bytes,1,opt,name=dyn,proto3,oneof"` 263} 264 265type Type_Null struct { 266 Null _struct.NullValue `protobuf:"varint,2,opt,name=null,proto3,enum=google.protobuf.NullValue,oneof"` 267} 268 269type Type_Primitive struct { 270 Primitive Type_PrimitiveType `protobuf:"varint,3,opt,name=primitive,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"` 271} 272 273type Type_Wrapper struct { 274 Wrapper Type_PrimitiveType `protobuf:"varint,4,opt,name=wrapper,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"` 275} 276 277type Type_WellKnown struct { 278 WellKnown Type_WellKnownType `protobuf:"varint,5,opt,name=well_known,json=wellKnown,proto3,enum=google.api.expr.v1alpha1.Type_WellKnownType,oneof"` 279} 280 281type Type_ListType_ struct { 282 ListType *Type_ListType `protobuf:"bytes,6,opt,name=list_type,json=listType,proto3,oneof"` 283} 284 285type Type_MapType_ struct { 286 MapType *Type_MapType `protobuf:"bytes,7,opt,name=map_type,json=mapType,proto3,oneof"` 287} 288 289type Type_Function struct { 290 Function *Type_FunctionType `protobuf:"bytes,8,opt,name=function,proto3,oneof"` 291} 292 293type Type_MessageType struct { 294 MessageType string `protobuf:"bytes,9,opt,name=message_type,json=messageType,proto3,oneof"` 295} 296 297type Type_TypeParam struct { 298 TypeParam string `protobuf:"bytes,10,opt,name=type_param,json=typeParam,proto3,oneof"` 299} 300 301type Type_Type struct { 302 Type *Type `protobuf:"bytes,11,opt,name=type,proto3,oneof"` 303} 304 305type Type_Error struct { 306 Error *empty.Empty `protobuf:"bytes,12,opt,name=error,proto3,oneof"` 307} 308 309type Type_AbstractType_ struct { 310 AbstractType *Type_AbstractType `protobuf:"bytes,14,opt,name=abstract_type,json=abstractType,proto3,oneof"` 311} 312 313func (*Type_Dyn) isType_TypeKind() {} 314 315func (*Type_Null) isType_TypeKind() {} 316 317func (*Type_Primitive) isType_TypeKind() {} 318 319func (*Type_Wrapper) isType_TypeKind() {} 320 321func (*Type_WellKnown) isType_TypeKind() {} 322 323func (*Type_ListType_) isType_TypeKind() {} 324 325func (*Type_MapType_) isType_TypeKind() {} 326 327func (*Type_Function) isType_TypeKind() {} 328 329func (*Type_MessageType) isType_TypeKind() {} 330 331func (*Type_TypeParam) isType_TypeKind() {} 332 333func (*Type_Type) isType_TypeKind() {} 334 335func (*Type_Error) isType_TypeKind() {} 336 337func (*Type_AbstractType_) isType_TypeKind() {} 338 339func (m *Type) GetTypeKind() isType_TypeKind { 340 if m != nil { 341 return m.TypeKind 342 } 343 return nil 344} 345 346func (m *Type) GetDyn() *empty.Empty { 347 if x, ok := m.GetTypeKind().(*Type_Dyn); ok { 348 return x.Dyn 349 } 350 return nil 351} 352 353func (m *Type) GetNull() _struct.NullValue { 354 if x, ok := m.GetTypeKind().(*Type_Null); ok { 355 return x.Null 356 } 357 return _struct.NullValue_NULL_VALUE 358} 359 360func (m *Type) GetPrimitive() Type_PrimitiveType { 361 if x, ok := m.GetTypeKind().(*Type_Primitive); ok { 362 return x.Primitive 363 } 364 return Type_PRIMITIVE_TYPE_UNSPECIFIED 365} 366 367func (m *Type) GetWrapper() Type_PrimitiveType { 368 if x, ok := m.GetTypeKind().(*Type_Wrapper); ok { 369 return x.Wrapper 370 } 371 return Type_PRIMITIVE_TYPE_UNSPECIFIED 372} 373 374func (m *Type) GetWellKnown() Type_WellKnownType { 375 if x, ok := m.GetTypeKind().(*Type_WellKnown); ok { 376 return x.WellKnown 377 } 378 return Type_WELL_KNOWN_TYPE_UNSPECIFIED 379} 380 381func (m *Type) GetListType() *Type_ListType { 382 if x, ok := m.GetTypeKind().(*Type_ListType_); ok { 383 return x.ListType 384 } 385 return nil 386} 387 388func (m *Type) GetMapType() *Type_MapType { 389 if x, ok := m.GetTypeKind().(*Type_MapType_); ok { 390 return x.MapType 391 } 392 return nil 393} 394 395func (m *Type) GetFunction() *Type_FunctionType { 396 if x, ok := m.GetTypeKind().(*Type_Function); ok { 397 return x.Function 398 } 399 return nil 400} 401 402func (m *Type) GetMessageType() string { 403 if x, ok := m.GetTypeKind().(*Type_MessageType); ok { 404 return x.MessageType 405 } 406 return "" 407} 408 409func (m *Type) GetTypeParam() string { 410 if x, ok := m.GetTypeKind().(*Type_TypeParam); ok { 411 return x.TypeParam 412 } 413 return "" 414} 415 416func (m *Type) GetType() *Type { 417 if x, ok := m.GetTypeKind().(*Type_Type); ok { 418 return x.Type 419 } 420 return nil 421} 422 423func (m *Type) GetError() *empty.Empty { 424 if x, ok := m.GetTypeKind().(*Type_Error); ok { 425 return x.Error 426 } 427 return nil 428} 429 430func (m *Type) GetAbstractType() *Type_AbstractType { 431 if x, ok := m.GetTypeKind().(*Type_AbstractType_); ok { 432 return x.AbstractType 433 } 434 return nil 435} 436 437// XXX_OneofWrappers is for the internal use of the proto package. 438func (*Type) XXX_OneofWrappers() []interface{} { 439 return []interface{}{ 440 (*Type_Dyn)(nil), 441 (*Type_Null)(nil), 442 (*Type_Primitive)(nil), 443 (*Type_Wrapper)(nil), 444 (*Type_WellKnown)(nil), 445 (*Type_ListType_)(nil), 446 (*Type_MapType_)(nil), 447 (*Type_Function)(nil), 448 (*Type_MessageType)(nil), 449 (*Type_TypeParam)(nil), 450 (*Type_Type)(nil), 451 (*Type_Error)(nil), 452 (*Type_AbstractType_)(nil), 453 } 454} 455 456// List type with typed elements, e.g. `list<example.proto.MyMessage>`. 457type Type_ListType struct { 458 // The element type. 459 ElemType *Type `protobuf:"bytes,1,opt,name=elem_type,json=elemType,proto3" json:"elem_type,omitempty"` 460 XXX_NoUnkeyedLiteral struct{} `json:"-"` 461 XXX_unrecognized []byte `json:"-"` 462 XXX_sizecache int32 `json:"-"` 463} 464 465func (m *Type_ListType) Reset() { *m = Type_ListType{} } 466func (m *Type_ListType) String() string { return proto.CompactTextString(m) } 467func (*Type_ListType) ProtoMessage() {} 468func (*Type_ListType) Descriptor() ([]byte, []int) { 469 return fileDescriptor_30a741de3e790389, []int{1, 0} 470} 471 472func (m *Type_ListType) XXX_Unmarshal(b []byte) error { 473 return xxx_messageInfo_Type_ListType.Unmarshal(m, b) 474} 475func (m *Type_ListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 476 return xxx_messageInfo_Type_ListType.Marshal(b, m, deterministic) 477} 478func (m *Type_ListType) XXX_Merge(src proto.Message) { 479 xxx_messageInfo_Type_ListType.Merge(m, src) 480} 481func (m *Type_ListType) XXX_Size() int { 482 return xxx_messageInfo_Type_ListType.Size(m) 483} 484func (m *Type_ListType) XXX_DiscardUnknown() { 485 xxx_messageInfo_Type_ListType.DiscardUnknown(m) 486} 487 488var xxx_messageInfo_Type_ListType proto.InternalMessageInfo 489 490func (m *Type_ListType) GetElemType() *Type { 491 if m != nil { 492 return m.ElemType 493 } 494 return nil 495} 496 497// Map type with parameterized key and value types, e.g. `map<string, int>`. 498type Type_MapType struct { 499 // The type of the key. 500 KeyType *Type `protobuf:"bytes,1,opt,name=key_type,json=keyType,proto3" json:"key_type,omitempty"` 501 // The type of the value. 502 ValueType *Type `protobuf:"bytes,2,opt,name=value_type,json=valueType,proto3" json:"value_type,omitempty"` 503 XXX_NoUnkeyedLiteral struct{} `json:"-"` 504 XXX_unrecognized []byte `json:"-"` 505 XXX_sizecache int32 `json:"-"` 506} 507 508func (m *Type_MapType) Reset() { *m = Type_MapType{} } 509func (m *Type_MapType) String() string { return proto.CompactTextString(m) } 510func (*Type_MapType) ProtoMessage() {} 511func (*Type_MapType) Descriptor() ([]byte, []int) { 512 return fileDescriptor_30a741de3e790389, []int{1, 1} 513} 514 515func (m *Type_MapType) XXX_Unmarshal(b []byte) error { 516 return xxx_messageInfo_Type_MapType.Unmarshal(m, b) 517} 518func (m *Type_MapType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 519 return xxx_messageInfo_Type_MapType.Marshal(b, m, deterministic) 520} 521func (m *Type_MapType) XXX_Merge(src proto.Message) { 522 xxx_messageInfo_Type_MapType.Merge(m, src) 523} 524func (m *Type_MapType) XXX_Size() int { 525 return xxx_messageInfo_Type_MapType.Size(m) 526} 527func (m *Type_MapType) XXX_DiscardUnknown() { 528 xxx_messageInfo_Type_MapType.DiscardUnknown(m) 529} 530 531var xxx_messageInfo_Type_MapType proto.InternalMessageInfo 532 533func (m *Type_MapType) GetKeyType() *Type { 534 if m != nil { 535 return m.KeyType 536 } 537 return nil 538} 539 540func (m *Type_MapType) GetValueType() *Type { 541 if m != nil { 542 return m.ValueType 543 } 544 return nil 545} 546 547// Function type with result and arg types. 548type Type_FunctionType struct { 549 // Result type of the function. 550 ResultType *Type `protobuf:"bytes,1,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"` 551 // Argument types of the function. 552 ArgTypes []*Type `protobuf:"bytes,2,rep,name=arg_types,json=argTypes,proto3" json:"arg_types,omitempty"` 553 XXX_NoUnkeyedLiteral struct{} `json:"-"` 554 XXX_unrecognized []byte `json:"-"` 555 XXX_sizecache int32 `json:"-"` 556} 557 558func (m *Type_FunctionType) Reset() { *m = Type_FunctionType{} } 559func (m *Type_FunctionType) String() string { return proto.CompactTextString(m) } 560func (*Type_FunctionType) ProtoMessage() {} 561func (*Type_FunctionType) Descriptor() ([]byte, []int) { 562 return fileDescriptor_30a741de3e790389, []int{1, 2} 563} 564 565func (m *Type_FunctionType) XXX_Unmarshal(b []byte) error { 566 return xxx_messageInfo_Type_FunctionType.Unmarshal(m, b) 567} 568func (m *Type_FunctionType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 569 return xxx_messageInfo_Type_FunctionType.Marshal(b, m, deterministic) 570} 571func (m *Type_FunctionType) XXX_Merge(src proto.Message) { 572 xxx_messageInfo_Type_FunctionType.Merge(m, src) 573} 574func (m *Type_FunctionType) XXX_Size() int { 575 return xxx_messageInfo_Type_FunctionType.Size(m) 576} 577func (m *Type_FunctionType) XXX_DiscardUnknown() { 578 xxx_messageInfo_Type_FunctionType.DiscardUnknown(m) 579} 580 581var xxx_messageInfo_Type_FunctionType proto.InternalMessageInfo 582 583func (m *Type_FunctionType) GetResultType() *Type { 584 if m != nil { 585 return m.ResultType 586 } 587 return nil 588} 589 590func (m *Type_FunctionType) GetArgTypes() []*Type { 591 if m != nil { 592 return m.ArgTypes 593 } 594 return nil 595} 596 597// Application defined abstract type. 598type Type_AbstractType struct { 599 // The fully qualified name of this abstract type. 600 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 601 // Parameter types for this abstract type. 602 ParameterTypes []*Type `protobuf:"bytes,2,rep,name=parameter_types,json=parameterTypes,proto3" json:"parameter_types,omitempty"` 603 XXX_NoUnkeyedLiteral struct{} `json:"-"` 604 XXX_unrecognized []byte `json:"-"` 605 XXX_sizecache int32 `json:"-"` 606} 607 608func (m *Type_AbstractType) Reset() { *m = Type_AbstractType{} } 609func (m *Type_AbstractType) String() string { return proto.CompactTextString(m) } 610func (*Type_AbstractType) ProtoMessage() {} 611func (*Type_AbstractType) Descriptor() ([]byte, []int) { 612 return fileDescriptor_30a741de3e790389, []int{1, 3} 613} 614 615func (m *Type_AbstractType) XXX_Unmarshal(b []byte) error { 616 return xxx_messageInfo_Type_AbstractType.Unmarshal(m, b) 617} 618func (m *Type_AbstractType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 619 return xxx_messageInfo_Type_AbstractType.Marshal(b, m, deterministic) 620} 621func (m *Type_AbstractType) XXX_Merge(src proto.Message) { 622 xxx_messageInfo_Type_AbstractType.Merge(m, src) 623} 624func (m *Type_AbstractType) XXX_Size() int { 625 return xxx_messageInfo_Type_AbstractType.Size(m) 626} 627func (m *Type_AbstractType) XXX_DiscardUnknown() { 628 xxx_messageInfo_Type_AbstractType.DiscardUnknown(m) 629} 630 631var xxx_messageInfo_Type_AbstractType proto.InternalMessageInfo 632 633func (m *Type_AbstractType) GetName() string { 634 if m != nil { 635 return m.Name 636 } 637 return "" 638} 639 640func (m *Type_AbstractType) GetParameterTypes() []*Type { 641 if m != nil { 642 return m.ParameterTypes 643 } 644 return nil 645} 646 647// Represents a declaration of a named value or function. 648// 649// A declaration is part of the contract between the expression, the agent 650// evaluating that expression, and the caller requesting evaluation. 651type Decl struct { 652 // The fully qualified name of the declaration. 653 // 654 // Declarations are organized in containers and this represents the full path 655 // to the declaration in its container, as in `google.api.expr.Decl`. 656 // 657 // Declarations used as [FunctionDecl.Overload][google.api.expr.v1alpha1.Decl.FunctionDecl.Overload] parameters may or may not 658 // have a name depending on whether the overload is function declaration or a 659 // function definition containing a result [Expr][google.api.expr.v1alpha1.Expr]. 660 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 661 // Required. The declaration kind. 662 // 663 // Types that are valid to be assigned to DeclKind: 664 // *Decl_Ident 665 // *Decl_Function 666 DeclKind isDecl_DeclKind `protobuf_oneof:"decl_kind"` 667 XXX_NoUnkeyedLiteral struct{} `json:"-"` 668 XXX_unrecognized []byte `json:"-"` 669 XXX_sizecache int32 `json:"-"` 670} 671 672func (m *Decl) Reset() { *m = Decl{} } 673func (m *Decl) String() string { return proto.CompactTextString(m) } 674func (*Decl) ProtoMessage() {} 675func (*Decl) Descriptor() ([]byte, []int) { 676 return fileDescriptor_30a741de3e790389, []int{2} 677} 678 679func (m *Decl) XXX_Unmarshal(b []byte) error { 680 return xxx_messageInfo_Decl.Unmarshal(m, b) 681} 682func (m *Decl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 683 return xxx_messageInfo_Decl.Marshal(b, m, deterministic) 684} 685func (m *Decl) XXX_Merge(src proto.Message) { 686 xxx_messageInfo_Decl.Merge(m, src) 687} 688func (m *Decl) XXX_Size() int { 689 return xxx_messageInfo_Decl.Size(m) 690} 691func (m *Decl) XXX_DiscardUnknown() { 692 xxx_messageInfo_Decl.DiscardUnknown(m) 693} 694 695var xxx_messageInfo_Decl proto.InternalMessageInfo 696 697func (m *Decl) GetName() string { 698 if m != nil { 699 return m.Name 700 } 701 return "" 702} 703 704type isDecl_DeclKind interface { 705 isDecl_DeclKind() 706} 707 708type Decl_Ident struct { 709 Ident *Decl_IdentDecl `protobuf:"bytes,2,opt,name=ident,proto3,oneof"` 710} 711 712type Decl_Function struct { 713 Function *Decl_FunctionDecl `protobuf:"bytes,3,opt,name=function,proto3,oneof"` 714} 715 716func (*Decl_Ident) isDecl_DeclKind() {} 717 718func (*Decl_Function) isDecl_DeclKind() {} 719 720func (m *Decl) GetDeclKind() isDecl_DeclKind { 721 if m != nil { 722 return m.DeclKind 723 } 724 return nil 725} 726 727func (m *Decl) GetIdent() *Decl_IdentDecl { 728 if x, ok := m.GetDeclKind().(*Decl_Ident); ok { 729 return x.Ident 730 } 731 return nil 732} 733 734func (m *Decl) GetFunction() *Decl_FunctionDecl { 735 if x, ok := m.GetDeclKind().(*Decl_Function); ok { 736 return x.Function 737 } 738 return nil 739} 740 741// XXX_OneofWrappers is for the internal use of the proto package. 742func (*Decl) XXX_OneofWrappers() []interface{} { 743 return []interface{}{ 744 (*Decl_Ident)(nil), 745 (*Decl_Function)(nil), 746 } 747} 748 749// Identifier declaration which specifies its type and optional `Expr` value. 750// 751// An identifier without a value is a declaration that must be provided at 752// evaluation time. An identifier with a value should resolve to a constant, 753// but may be used in conjunction with other identifiers bound at evaluation 754// time. 755type Decl_IdentDecl struct { 756 // Required. The type of the identifier. 757 Type *Type `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` 758 // The constant value of the identifier. If not specified, the identifier 759 // must be supplied at evaluation time. 760 Value *Constant `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 761 // Documentation string for the identifier. 762 Doc string `protobuf:"bytes,3,opt,name=doc,proto3" json:"doc,omitempty"` 763 XXX_NoUnkeyedLiteral struct{} `json:"-"` 764 XXX_unrecognized []byte `json:"-"` 765 XXX_sizecache int32 `json:"-"` 766} 767 768func (m *Decl_IdentDecl) Reset() { *m = Decl_IdentDecl{} } 769func (m *Decl_IdentDecl) String() string { return proto.CompactTextString(m) } 770func (*Decl_IdentDecl) ProtoMessage() {} 771func (*Decl_IdentDecl) Descriptor() ([]byte, []int) { 772 return fileDescriptor_30a741de3e790389, []int{2, 0} 773} 774 775func (m *Decl_IdentDecl) XXX_Unmarshal(b []byte) error { 776 return xxx_messageInfo_Decl_IdentDecl.Unmarshal(m, b) 777} 778func (m *Decl_IdentDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 779 return xxx_messageInfo_Decl_IdentDecl.Marshal(b, m, deterministic) 780} 781func (m *Decl_IdentDecl) XXX_Merge(src proto.Message) { 782 xxx_messageInfo_Decl_IdentDecl.Merge(m, src) 783} 784func (m *Decl_IdentDecl) XXX_Size() int { 785 return xxx_messageInfo_Decl_IdentDecl.Size(m) 786} 787func (m *Decl_IdentDecl) XXX_DiscardUnknown() { 788 xxx_messageInfo_Decl_IdentDecl.DiscardUnknown(m) 789} 790 791var xxx_messageInfo_Decl_IdentDecl proto.InternalMessageInfo 792 793func (m *Decl_IdentDecl) GetType() *Type { 794 if m != nil { 795 return m.Type 796 } 797 return nil 798} 799 800func (m *Decl_IdentDecl) GetValue() *Constant { 801 if m != nil { 802 return m.Value 803 } 804 return nil 805} 806 807func (m *Decl_IdentDecl) GetDoc() string { 808 if m != nil { 809 return m.Doc 810 } 811 return "" 812} 813 814// Function declaration specifies one or more overloads which indicate the 815// function's parameter types and return type, and may optionally specify a 816// function definition in terms of CEL expressions. 817// 818// Functions have no observable side-effects (there may be side-effects like 819// logging which are not observable from CEL). 820type Decl_FunctionDecl struct { 821 // Required. List of function overloads, must contain at least one overload. 822 Overloads []*Decl_FunctionDecl_Overload `protobuf:"bytes,1,rep,name=overloads,proto3" json:"overloads,omitempty"` 823 XXX_NoUnkeyedLiteral struct{} `json:"-"` 824 XXX_unrecognized []byte `json:"-"` 825 XXX_sizecache int32 `json:"-"` 826} 827 828func (m *Decl_FunctionDecl) Reset() { *m = Decl_FunctionDecl{} } 829func (m *Decl_FunctionDecl) String() string { return proto.CompactTextString(m) } 830func (*Decl_FunctionDecl) ProtoMessage() {} 831func (*Decl_FunctionDecl) Descriptor() ([]byte, []int) { 832 return fileDescriptor_30a741de3e790389, []int{2, 1} 833} 834 835func (m *Decl_FunctionDecl) XXX_Unmarshal(b []byte) error { 836 return xxx_messageInfo_Decl_FunctionDecl.Unmarshal(m, b) 837} 838func (m *Decl_FunctionDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 839 return xxx_messageInfo_Decl_FunctionDecl.Marshal(b, m, deterministic) 840} 841func (m *Decl_FunctionDecl) XXX_Merge(src proto.Message) { 842 xxx_messageInfo_Decl_FunctionDecl.Merge(m, src) 843} 844func (m *Decl_FunctionDecl) XXX_Size() int { 845 return xxx_messageInfo_Decl_FunctionDecl.Size(m) 846} 847func (m *Decl_FunctionDecl) XXX_DiscardUnknown() { 848 xxx_messageInfo_Decl_FunctionDecl.DiscardUnknown(m) 849} 850 851var xxx_messageInfo_Decl_FunctionDecl proto.InternalMessageInfo 852 853func (m *Decl_FunctionDecl) GetOverloads() []*Decl_FunctionDecl_Overload { 854 if m != nil { 855 return m.Overloads 856 } 857 return nil 858} 859 860// An overload indicates a function's parameter types and return type, and 861// may optionally include a function body described in terms of [Expr][google.api.expr.v1alpha1.Expr] 862// values. 863// 864// Functions overloads are declared in either a function or method 865// call-style. For methods, the `params[0]` is the expected type of the 866// target receiver. 867// 868// Overloads must have non-overlapping argument types after erasure of all 869// parameterized type variables (similar as type erasure in Java). 870type Decl_FunctionDecl_Overload struct { 871 // Required. Globally unique overload name of the function which reflects 872 // the function name and argument types. 873 // 874 // This will be used by a [Reference][google.api.expr.v1alpha1.Reference] to indicate the `overload_id` that 875 // was resolved for the function `name`. 876 OverloadId string `protobuf:"bytes,1,opt,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"` 877 // List of function parameter [Type][google.api.expr.v1alpha1.Type] values. 878 // 879 // Param types are disjoint after generic type parameters have been 880 // replaced with the type `DYN`. Since the `DYN` type is compatible with 881 // any other type, this means that if `A` is a type parameter, the 882 // function types `int<A>` and `int<int>` are not disjoint. Likewise, 883 // `map<string, string>` is not disjoint from `map<K, V>`. 884 // 885 // When the `result_type` of a function is a generic type param, the 886 // type param name also appears as the `type` of on at least one params. 887 Params []*Type `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` 888 // The type param names associated with the function declaration. 889 // 890 // For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield 891 // the type params of `K, V`. 892 TypeParams []string `protobuf:"bytes,3,rep,name=type_params,json=typeParams,proto3" json:"type_params,omitempty"` 893 // Required. The result type of the function. For example, the operator 894 // `string.isEmpty()` would have `result_type` of `kind: BOOL`. 895 ResultType *Type `protobuf:"bytes,4,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"` 896 // Whether the function is to be used in a method call-style `x.f(...)` 897 // of a function call-style `f(x, ...)`. 898 // 899 // For methods, the first parameter declaration, `params[0]` is the 900 // expected type of the target receiver. 901 IsInstanceFunction bool `protobuf:"varint,5,opt,name=is_instance_function,json=isInstanceFunction,proto3" json:"is_instance_function,omitempty"` 902 // Documentation string for the overload. 903 Doc string `protobuf:"bytes,6,opt,name=doc,proto3" json:"doc,omitempty"` 904 XXX_NoUnkeyedLiteral struct{} `json:"-"` 905 XXX_unrecognized []byte `json:"-"` 906 XXX_sizecache int32 `json:"-"` 907} 908 909func (m *Decl_FunctionDecl_Overload) Reset() { *m = Decl_FunctionDecl_Overload{} } 910func (m *Decl_FunctionDecl_Overload) String() string { return proto.CompactTextString(m) } 911func (*Decl_FunctionDecl_Overload) ProtoMessage() {} 912func (*Decl_FunctionDecl_Overload) Descriptor() ([]byte, []int) { 913 return fileDescriptor_30a741de3e790389, []int{2, 1, 0} 914} 915 916func (m *Decl_FunctionDecl_Overload) XXX_Unmarshal(b []byte) error { 917 return xxx_messageInfo_Decl_FunctionDecl_Overload.Unmarshal(m, b) 918} 919func (m *Decl_FunctionDecl_Overload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 920 return xxx_messageInfo_Decl_FunctionDecl_Overload.Marshal(b, m, deterministic) 921} 922func (m *Decl_FunctionDecl_Overload) XXX_Merge(src proto.Message) { 923 xxx_messageInfo_Decl_FunctionDecl_Overload.Merge(m, src) 924} 925func (m *Decl_FunctionDecl_Overload) XXX_Size() int { 926 return xxx_messageInfo_Decl_FunctionDecl_Overload.Size(m) 927} 928func (m *Decl_FunctionDecl_Overload) XXX_DiscardUnknown() { 929 xxx_messageInfo_Decl_FunctionDecl_Overload.DiscardUnknown(m) 930} 931 932var xxx_messageInfo_Decl_FunctionDecl_Overload proto.InternalMessageInfo 933 934func (m *Decl_FunctionDecl_Overload) GetOverloadId() string { 935 if m != nil { 936 return m.OverloadId 937 } 938 return "" 939} 940 941func (m *Decl_FunctionDecl_Overload) GetParams() []*Type { 942 if m != nil { 943 return m.Params 944 } 945 return nil 946} 947 948func (m *Decl_FunctionDecl_Overload) GetTypeParams() []string { 949 if m != nil { 950 return m.TypeParams 951 } 952 return nil 953} 954 955func (m *Decl_FunctionDecl_Overload) GetResultType() *Type { 956 if m != nil { 957 return m.ResultType 958 } 959 return nil 960} 961 962func (m *Decl_FunctionDecl_Overload) GetIsInstanceFunction() bool { 963 if m != nil { 964 return m.IsInstanceFunction 965 } 966 return false 967} 968 969func (m *Decl_FunctionDecl_Overload) GetDoc() string { 970 if m != nil { 971 return m.Doc 972 } 973 return "" 974} 975 976// Describes a resolved reference to a declaration. 977type Reference struct { 978 // The fully qualified name of the declaration. 979 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 980 // For references to functions, this is a list of `Overload.overload_id` 981 // values which match according to typing rules. 982 // 983 // If the list has more than one element, overload resolution among the 984 // presented candidates must happen at runtime because of dynamic types. The 985 // type checker attempts to narrow down this list as much as possible. 986 // 987 // Empty if this is not a reference to a [Decl.FunctionDecl][google.api.expr.v1alpha1.Decl.FunctionDecl]. 988 OverloadId []string `protobuf:"bytes,3,rep,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"` 989 // For references to constants, this may contain the value of the 990 // constant if known at compile time. 991 Value *Constant `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` 992 XXX_NoUnkeyedLiteral struct{} `json:"-"` 993 XXX_unrecognized []byte `json:"-"` 994 XXX_sizecache int32 `json:"-"` 995} 996 997func (m *Reference) Reset() { *m = Reference{} } 998func (m *Reference) String() string { return proto.CompactTextString(m) } 999func (*Reference) ProtoMessage() {} 1000func (*Reference) Descriptor() ([]byte, []int) { 1001 return fileDescriptor_30a741de3e790389, []int{3} 1002} 1003 1004func (m *Reference) XXX_Unmarshal(b []byte) error { 1005 return xxx_messageInfo_Reference.Unmarshal(m, b) 1006} 1007func (m *Reference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1008 return xxx_messageInfo_Reference.Marshal(b, m, deterministic) 1009} 1010func (m *Reference) XXX_Merge(src proto.Message) { 1011 xxx_messageInfo_Reference.Merge(m, src) 1012} 1013func (m *Reference) XXX_Size() int { 1014 return xxx_messageInfo_Reference.Size(m) 1015} 1016func (m *Reference) XXX_DiscardUnknown() { 1017 xxx_messageInfo_Reference.DiscardUnknown(m) 1018} 1019 1020var xxx_messageInfo_Reference proto.InternalMessageInfo 1021 1022func (m *Reference) GetName() string { 1023 if m != nil { 1024 return m.Name 1025 } 1026 return "" 1027} 1028 1029func (m *Reference) GetOverloadId() []string { 1030 if m != nil { 1031 return m.OverloadId 1032 } 1033 return nil 1034} 1035 1036func (m *Reference) GetValue() *Constant { 1037 if m != nil { 1038 return m.Value 1039 } 1040 return nil 1041} 1042 1043func init() { 1044 proto.RegisterEnum("google.api.expr.v1alpha1.Type_PrimitiveType", Type_PrimitiveType_name, Type_PrimitiveType_value) 1045 proto.RegisterEnum("google.api.expr.v1alpha1.Type_WellKnownType", Type_WellKnownType_name, Type_WellKnownType_value) 1046 proto.RegisterType((*CheckedExpr)(nil), "google.api.expr.v1alpha1.CheckedExpr") 1047 proto.RegisterMapType((map[int64]*Reference)(nil), "google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry") 1048 proto.RegisterMapType((map[int64]*Type)(nil), "google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry") 1049 proto.RegisterType((*Type)(nil), "google.api.expr.v1alpha1.Type") 1050 proto.RegisterType((*Type_ListType)(nil), "google.api.expr.v1alpha1.Type.ListType") 1051 proto.RegisterType((*Type_MapType)(nil), "google.api.expr.v1alpha1.Type.MapType") 1052 proto.RegisterType((*Type_FunctionType)(nil), "google.api.expr.v1alpha1.Type.FunctionType") 1053 proto.RegisterType((*Type_AbstractType)(nil), "google.api.expr.v1alpha1.Type.AbstractType") 1054 proto.RegisterType((*Decl)(nil), "google.api.expr.v1alpha1.Decl") 1055 proto.RegisterType((*Decl_IdentDecl)(nil), "google.api.expr.v1alpha1.Decl.IdentDecl") 1056 proto.RegisterType((*Decl_FunctionDecl)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl") 1057 proto.RegisterType((*Decl_FunctionDecl_Overload)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl.Overload") 1058 proto.RegisterType((*Reference)(nil), "google.api.expr.v1alpha1.Reference") 1059} 1060 1061func init() { 1062 proto.RegisterFile("google/api/expr/v1alpha1/checked.proto", fileDescriptor_30a741de3e790389) 1063} 1064 1065var fileDescriptor_30a741de3e790389 = []byte{ 1066 // 1144 bytes of a gzipped FileDescriptorProto 1067 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x5f, 0x6f, 0xdb, 0xb6, 1068 0x17, 0x8d, 0x6c, 0xd9, 0x96, 0xae, 0x9c, 0xfe, 0xfc, 0x23, 0x86, 0x41, 0x50, 0x8b, 0x36, 0x70, 1069 0xb7, 0x2e, 0xd8, 0x06, 0xb9, 0xf5, 0x82, 0xae, 0x5d, 0x37, 0x6c, 0x71, 0xa2, 0x24, 0x42, 0xfd, 1070 0x0f, 0x8a, 0x93, 0x20, 0xc5, 0x00, 0x81, 0x91, 0x19, 0x57, 0xb0, 0x2c, 0x09, 0x94, 0x9c, 0xc4, 1071 0x7b, 0xdd, 0xd3, 0xb0, 0x7d, 0x9b, 0x7d, 0x89, 0x7d, 0x9a, 0xbd, 0x6e, 0x8f, 0x03, 0x29, 0xc9, 1072 0x71, 0xfe, 0x38, 0xb6, 0xdf, 0xae, 0xc8, 0x73, 0x0e, 0x2f, 0x2f, 0xcf, 0x25, 0x05, 0x2f, 0x06, 1073 0x41, 0x30, 0xf0, 0x48, 0x0d, 0x87, 0x6e, 0x8d, 0x5c, 0x85, 0xb4, 0x76, 0xf1, 0x0a, 0x7b, 0xe1, 1074 0x47, 0xfc, 0xaa, 0xe6, 0x7c, 0x24, 0xce, 0x90, 0xf4, 0xf5, 0x90, 0x06, 0x71, 0x80, 0xd4, 0x04, 1075 0xa7, 0xe3, 0xd0, 0xd5, 0x19, 0x4e, 0xcf, 0x70, 0xda, 0xe7, 0x73, 0x15, 0xa2, 0x89, 0x1f, 0xe3, 1076 0xab, 0x44, 0x40, 0x7b, 0x9c, 0xc2, 0xf8, 0xd7, 0xd9, 0xf8, 0xbc, 0x46, 0x46, 0x61, 0x3c, 0x49, 1077 0x27, 0x9f, 0xdc, 0x9e, 0x8c, 0x62, 0x3a, 0x76, 0xe2, 0x64, 0xb6, 0xfa, 0x4f, 0x1e, 0x94, 0x9d, 1078 0x24, 0x1b, 0xe3, 0x2a, 0xa4, 0xe8, 0x67, 0x58, 0xa7, 0xe4, 0x9c, 0x50, 0xe2, 0x3b, 0xc4, 0x1e, 1079 0xe1, 0x50, 0xcd, 0x6d, 0xe4, 0x37, 0x95, 0xfa, 0xb7, 0xfa, 0xbc, 0x1c, 0xf5, 0x19, 0xb6, 0x6e, 1080 0x65, 0xd4, 0x16, 0x0e, 0x0d, 0x3f, 0xa6, 0x13, 0xab, 0x4c, 0x67, 0x86, 0x50, 0x0b, 0xa4, 0x78, 1081 0x12, 0x26, 0xc2, 0x79, 0x2e, 0x5c, 0x5f, 0x4e, 0xb8, 0x37, 0x09, 0xaf, 0x35, 0x4b, 0x71, 0xf2, 1082 0x85, 0x0c, 0x50, 0xa2, 0x60, 0x4c, 0x1d, 0x62, 0xbb, 0xfe, 0x79, 0xa0, 0x16, 0x36, 0x84, 0x4d, 1083 0xa5, 0xfe, 0xd9, 0x7c, 0xc5, 0x43, 0x0e, 0x36, 0xfd, 0xf3, 0xc0, 0x82, 0x68, 0x1a, 0xa3, 0x3a, 1084 0x88, 0x0c, 0xa7, 0x8a, 0x9c, 0xff, 0x74, 0x3e, 0x9f, 0xa5, 0x62, 0x71, 0xac, 0xd6, 0x87, 0xff, 1085 0xdf, 0xd9, 0x2c, 0xaa, 0x40, 0x7e, 0x48, 0x26, 0xaa, 0xb0, 0x21, 0x6c, 0xe6, 0x2d, 0x16, 0xa2, 1086 0xb7, 0x50, 0xb8, 0xc0, 0xde, 0x98, 0xa8, 0x39, 0xae, 0xfd, 0x7c, 0xbe, 0xf6, 0x54, 0xcd, 0x4a, 1087 0x18, 0xdf, 0xe5, 0xde, 0x08, 0xda, 0x07, 0x28, 0xcf, 0xee, 0xfc, 0x9e, 0x05, 0xb6, 0x6e, 0x2e, 1088 0xf0, 0x40, 0xf2, 0x4c, 0x68, 0x46, 0xbb, 0xfa, 0x97, 0x02, 0x22, 0x1b, 0x43, 0x5f, 0x42, 0xbe, 1089 0x3f, 0xf1, 0xb9, 0xa8, 0x52, 0xff, 0x34, 0x13, 0xc8, 0xec, 0xa2, 0x1b, 0xcc, 0x4b, 0x07, 0x6b, 1090 0x16, 0x03, 0xa1, 0x97, 0x20, 0xfa, 0x63, 0xcf, 0xe3, 0xab, 0x3d, 0xaa, 0x6b, 0x77, 0xc0, 0xed, 1091 0xb1, 0xe7, 0x1d, 0xb3, 0x25, 0x0e, 0xd6, 0x2c, 0x8e, 0x44, 0x4d, 0x90, 0x43, 0xea, 0x8e, 0xdc, 1092 0xd8, 0xbd, 0x20, 0x6a, 0x9e, 0xd3, 0xbe, 0x7e, 0x38, 0x49, 0xbd, 0x9b, 0xe1, 0xd9, 0xd7, 0xc1, 1093 0x9a, 0x75, 0x2d, 0x80, 0x0e, 0xa0, 0x74, 0x49, 0x71, 0x18, 0x92, 0xe4, 0xb4, 0x56, 0xd7, 0xca, 1094 0xe8, 0xa8, 0x05, 0x70, 0x49, 0x3c, 0xcf, 0x1e, 0xfa, 0xc1, 0xa5, 0xcf, 0xad, 0xb3, 0x58, 0xec, 1095 0x84, 0x78, 0xde, 0x7b, 0x86, 0xcf, 0x12, 0xbb, 0xcc, 0x06, 0xd0, 0x1e, 0xc8, 0x9e, 0x1b, 0xc5, 1096 0x36, 0xb3, 0xa6, 0x5a, 0xe4, 0xa5, 0xfc, 0x62, 0x81, 0x5a, 0xd3, 0x8d, 0xe2, 0x54, 0x48, 0xf2, 1097 0xd2, 0x18, 0xed, 0x80, 0x34, 0xc2, 0x61, 0x22, 0x53, 0xe2, 0x32, 0x2f, 0x16, 0xc8, 0xb4, 0x70, 1098 0x98, 0xed, 0x6d, 0x94, 0x84, 0xc8, 0x04, 0xe9, 0x7c, 0xec, 0x3b, 0xb1, 0x1b, 0xf8, 0xaa, 0xc4, 1099 0x45, 0xbe, 0x5a, 0x20, 0xb2, 0x97, 0xc2, 0xb3, 0x7c, 0x32, 0x3a, 0x7a, 0x0e, 0xe5, 0x11, 0x89, 1100 0x22, 0x3c, 0x20, 0x49, 0x4e, 0xf2, 0x86, 0xb0, 0x29, 0x1f, 0xac, 0x59, 0x4a, 0x3a, 0xca, 0xd7, 1101 0x7b, 0x06, 0xc0, 0xdb, 0x3a, 0xc4, 0x14, 0x8f, 0x54, 0x48, 0x21, 0x32, 0x1b, 0xeb, 0xb2, 0x21, 1102 0xb4, 0x05, 0x22, 0x67, 0x2b, 0xcb, 0x98, 0x94, 0x59, 0x87, 0xa1, 0x91, 0x0e, 0x05, 0x42, 0x69, 1103 0x40, 0xd5, 0xf2, 0x02, 0x6b, 0x26, 0x30, 0x64, 0xc1, 0x3a, 0x3e, 0x8b, 0x62, 0x8a, 0x9d, 0xf4, 1104 0x1c, 0x1e, 0x2d, 0xb5, 0xf7, 0xed, 0x94, 0x93, 0xae, 0x5d, 0xc6, 0x33, 0xdf, 0xda, 0x3e, 0x48, 1105 0xd9, 0x39, 0xa1, 0x77, 0x20, 0x13, 0x8f, 0x8c, 0x12, 0x6d, 0x61, 0xa9, 0x7e, 0x93, 0x18, 0x81, 1106 0x0b, 0xfd, 0x2a, 0x40, 0x29, 0x3d, 0x2a, 0xf4, 0x16, 0xa4, 0x21, 0x99, 0xac, 0xa2, 0x53, 0x1a, 1107 0x92, 0x09, 0xa7, 0xfe, 0x00, 0xc0, 0x5b, 0x38, 0x21, 0x2f, 0xd7, 0xf4, 0x32, 0x67, 0xf0, 0x2c, 1108 0xfe, 0x10, 0xa0, 0x3c, 0x7b, 0xd6, 0xe8, 0x47, 0x50, 0x28, 0x89, 0xc6, 0x5e, 0xbc, 0x4a, 0x36, 1109 0x90, 0x50, 0xb2, 0xa2, 0x60, 0x3a, 0xe0, 0xec, 0x28, 0x7d, 0x2c, 0x16, 0x16, 0x05, 0xd3, 0x01, 1110 0x0b, 0x22, 0x6d, 0x08, 0xe5, 0xd9, 0xea, 0x23, 0x04, 0xa2, 0x8f, 0x47, 0x49, 0x1a, 0xb2, 0xc5, 1111 0x63, 0xb4, 0x0f, 0xff, 0xe3, 0xbe, 0x22, 0x31, 0xa1, 0x2b, 0x2d, 0xf3, 0x68, 0x4a, 0xe3, 0x8b, 1112 0x55, 0x23, 0x58, 0xbf, 0x71, 0x1b, 0xa0, 0xa7, 0xa0, 0x75, 0x2d, 0xb3, 0x65, 0xf6, 0xcc, 0x63, 1113 0xc3, 0xee, 0x9d, 0x76, 0x0d, 0xfb, 0xa8, 0x7d, 0xd8, 0x35, 0x76, 0xcc, 0x3d, 0xd3, 0xd8, 0xad, 1114 0xac, 0x21, 0x09, 0xc4, 0x46, 0xa7, 0xd3, 0xac, 0x08, 0x48, 0x86, 0x82, 0xd9, 0xee, 0xbd, 0xde, 1115 0xaa, 0xe4, 0x10, 0x40, 0xf1, 0x28, 0x89, 0xf3, 0x2c, 0xde, 0xed, 0x1c, 0x35, 0x9a, 0x46, 0x45, 1116 0x64, 0xf1, 0x61, 0xcf, 0x32, 0xdb, 0xfb, 0x95, 0x02, 0x83, 0x37, 0x4e, 0x7b, 0xc6, 0x61, 0xa5, 1117 0x58, 0x3d, 0x86, 0xf5, 0x1b, 0xb7, 0x06, 0x7a, 0x06, 0x8f, 0x4f, 0x8c, 0x66, 0xd3, 0x7e, 0xdf, 1118 0xee, 0x9c, 0xb4, 0xef, 0x5b, 0xb5, 0x04, 0xf9, 0xed, 0xf6, 0x69, 0x45, 0x40, 0xeb, 0x20, 0xf7, 1119 0xcc, 0x96, 0x71, 0xd8, 0xdb, 0x6e, 0x75, 0x2b, 0x39, 0x54, 0x06, 0x69, 0xf7, 0xc8, 0xda, 0xee, 1120 0x99, 0x9d, 0x76, 0x25, 0xdf, 0x50, 0x80, 0xb7, 0x97, 0x3d, 0x74, 0xfd, 0x7e, 0xf5, 0xcf, 0x02, 1121 0x88, 0xbb, 0xc4, 0xf1, 0xee, 0xad, 0xdf, 0x4f, 0x50, 0x70, 0xfb, 0xc4, 0x8f, 0x53, 0xb3, 0x6c, 1122 0xce, 0xaf, 0x1a, 0x93, 0xd0, 0x4d, 0x86, 0x65, 0x11, 0xeb, 0x2b, 0x4e, 0xbc, 0x71, 0x9d, 0xe4, 1123 0x17, 0xb5, 0x14, 0x17, 0xc9, 0x2c, 0x96, 0xea, 0x4c, 0xe9, 0xda, 0xef, 0x02, 0xc8, 0xd3, 0x15, 1124 0xd8, 0xc3, 0xbb, 0x82, 0xeb, 0x92, 0x4b, 0xe1, 0xcd, 0xcd, 0x07, 0xaf, 0xfa, 0xc0, 0xff, 0x43, 1125 0xe0, 0x47, 0x31, 0xf6, 0xe3, 0xf4, 0xd1, 0x63, 0x8f, 0x67, 0x3f, 0x70, 0xf8, 0x0e, 0x64, 0x8b, 1126 0x85, 0xda, 0xdf, 0xb9, 0xeb, 0x6e, 0xe0, 0x09, 0x59, 0x20, 0x07, 0x17, 0x84, 0x7a, 0x01, 0xee, 1127 0x47, 0xaa, 0xc0, 0x5d, 0xb6, 0xb5, 0xc2, 0x56, 0xf5, 0x4e, 0x4a, 0xb6, 0xae, 0x65, 0xb4, 0xdf, 1128 0x72, 0x20, 0x65, 0xe3, 0xe8, 0x19, 0x28, 0xd9, 0x8c, 0xed, 0xf6, 0xd3, 0x73, 0x82, 0x6c, 0xc8, 1129 0xec, 0xa3, 0xd7, 0x50, 0xe4, 0xb6, 0x5d, 0xd6, 0xe4, 0x29, 0x9a, 0x09, 0x5f, 0x5f, 0xc1, 0x11, 1130 0xff, 0xb9, 0x92, 0x2d, 0x98, 0xde, 0xc0, 0xd1, 0xed, 0x46, 0x17, 0x57, 0x6e, 0xf4, 0x97, 0xf0, 1131 0x89, 0x1b, 0xd9, 0x2e, 0xaf, 0xa9, 0x43, 0xec, 0xa9, 0x23, 0xd8, 0xd3, 0x29, 0x59, 0xc8, 0x8d, 1132 0xcc, 0x74, 0x2a, 0xab, 0x48, 0x56, 0xf0, 0xe2, 0xb4, 0xe0, 0xcc, 0xb5, 0x7d, 0xe2, 0x78, 0x89, 1133 0x6b, 0x7f, 0x01, 0x79, 0xfa, 0xd3, 0x73, 0xaf, 0x73, 0x6f, 0x15, 0x2b, 0xdd, 0xd3, 0x4c, 0xb1, 1134 0xa6, 0x5e, 0x10, 0x57, 0xf4, 0x42, 0xc3, 0x83, 0x27, 0x4e, 0x30, 0x9a, 0x8b, 0x6f, 0xc8, 0xec, 1135 0x38, 0xbb, 0xec, 0x9d, 0xe9, 0x0a, 0x1f, 0xbe, 0x4f, 0x61, 0x83, 0xc0, 0xc3, 0xfe, 0x40, 0x0f, 1136 0xe8, 0xa0, 0x36, 0x20, 0x3e, 0x7f, 0x85, 0x6a, 0xc9, 0x14, 0x0e, 0xdd, 0xe8, 0xee, 0x4f, 0xfa, 1137 0x3b, 0xf6, 0xf5, 0xaf, 0x20, 0x9c, 0x15, 0x39, 0xf6, 0x9b, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 1138 0xee, 0x02, 0xe6, 0x8f, 0x11, 0x0c, 0x00, 0x00, 1139} 1140