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
658	// [FunctionDecl.Overload][google.api.expr.v1alpha1.Decl.FunctionDecl.Overload]
659	// parameters may or may not have a name depending on whether the overload is
660	// function declaration or a function definition containing a result
661	// [Expr][google.api.expr.v1alpha1.Expr].
662	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
663	// Required. The declaration kind.
664	//
665	// Types that are valid to be assigned to DeclKind:
666	//	*Decl_Ident
667	//	*Decl_Function
668	DeclKind             isDecl_DeclKind `protobuf_oneof:"decl_kind"`
669	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
670	XXX_unrecognized     []byte          `json:"-"`
671	XXX_sizecache        int32           `json:"-"`
672}
673
674func (m *Decl) Reset()         { *m = Decl{} }
675func (m *Decl) String() string { return proto.CompactTextString(m) }
676func (*Decl) ProtoMessage()    {}
677func (*Decl) Descriptor() ([]byte, []int) {
678	return fileDescriptor_30a741de3e790389, []int{2}
679}
680
681func (m *Decl) XXX_Unmarshal(b []byte) error {
682	return xxx_messageInfo_Decl.Unmarshal(m, b)
683}
684func (m *Decl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
685	return xxx_messageInfo_Decl.Marshal(b, m, deterministic)
686}
687func (m *Decl) XXX_Merge(src proto.Message) {
688	xxx_messageInfo_Decl.Merge(m, src)
689}
690func (m *Decl) XXX_Size() int {
691	return xxx_messageInfo_Decl.Size(m)
692}
693func (m *Decl) XXX_DiscardUnknown() {
694	xxx_messageInfo_Decl.DiscardUnknown(m)
695}
696
697var xxx_messageInfo_Decl proto.InternalMessageInfo
698
699func (m *Decl) GetName() string {
700	if m != nil {
701		return m.Name
702	}
703	return ""
704}
705
706type isDecl_DeclKind interface {
707	isDecl_DeclKind()
708}
709
710type Decl_Ident struct {
711	Ident *Decl_IdentDecl `protobuf:"bytes,2,opt,name=ident,proto3,oneof"`
712}
713
714type Decl_Function struct {
715	Function *Decl_FunctionDecl `protobuf:"bytes,3,opt,name=function,proto3,oneof"`
716}
717
718func (*Decl_Ident) isDecl_DeclKind() {}
719
720func (*Decl_Function) isDecl_DeclKind() {}
721
722func (m *Decl) GetDeclKind() isDecl_DeclKind {
723	if m != nil {
724		return m.DeclKind
725	}
726	return nil
727}
728
729func (m *Decl) GetIdent() *Decl_IdentDecl {
730	if x, ok := m.GetDeclKind().(*Decl_Ident); ok {
731		return x.Ident
732	}
733	return nil
734}
735
736func (m *Decl) GetFunction() *Decl_FunctionDecl {
737	if x, ok := m.GetDeclKind().(*Decl_Function); ok {
738		return x.Function
739	}
740	return nil
741}
742
743// XXX_OneofWrappers is for the internal use of the proto package.
744func (*Decl) XXX_OneofWrappers() []interface{} {
745	return []interface{}{
746		(*Decl_Ident)(nil),
747		(*Decl_Function)(nil),
748	}
749}
750
751// Identifier declaration which specifies its type and optional `Expr` value.
752//
753// An identifier without a value is a declaration that must be provided at
754// evaluation time. An identifier with a value should resolve to a constant,
755// but may be used in conjunction with other identifiers bound at evaluation
756// time.
757type Decl_IdentDecl struct {
758	// Required. The type of the identifier.
759	Type *Type `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
760	// The constant value of the identifier. If not specified, the identifier
761	// must be supplied at evaluation time.
762	Value *Constant `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
763	// Documentation string for the identifier.
764	Doc                  string   `protobuf:"bytes,3,opt,name=doc,proto3" json:"doc,omitempty"`
765	XXX_NoUnkeyedLiteral struct{} `json:"-"`
766	XXX_unrecognized     []byte   `json:"-"`
767	XXX_sizecache        int32    `json:"-"`
768}
769
770func (m *Decl_IdentDecl) Reset()         { *m = Decl_IdentDecl{} }
771func (m *Decl_IdentDecl) String() string { return proto.CompactTextString(m) }
772func (*Decl_IdentDecl) ProtoMessage()    {}
773func (*Decl_IdentDecl) Descriptor() ([]byte, []int) {
774	return fileDescriptor_30a741de3e790389, []int{2, 0}
775}
776
777func (m *Decl_IdentDecl) XXX_Unmarshal(b []byte) error {
778	return xxx_messageInfo_Decl_IdentDecl.Unmarshal(m, b)
779}
780func (m *Decl_IdentDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
781	return xxx_messageInfo_Decl_IdentDecl.Marshal(b, m, deterministic)
782}
783func (m *Decl_IdentDecl) XXX_Merge(src proto.Message) {
784	xxx_messageInfo_Decl_IdentDecl.Merge(m, src)
785}
786func (m *Decl_IdentDecl) XXX_Size() int {
787	return xxx_messageInfo_Decl_IdentDecl.Size(m)
788}
789func (m *Decl_IdentDecl) XXX_DiscardUnknown() {
790	xxx_messageInfo_Decl_IdentDecl.DiscardUnknown(m)
791}
792
793var xxx_messageInfo_Decl_IdentDecl proto.InternalMessageInfo
794
795func (m *Decl_IdentDecl) GetType() *Type {
796	if m != nil {
797		return m.Type
798	}
799	return nil
800}
801
802func (m *Decl_IdentDecl) GetValue() *Constant {
803	if m != nil {
804		return m.Value
805	}
806	return nil
807}
808
809func (m *Decl_IdentDecl) GetDoc() string {
810	if m != nil {
811		return m.Doc
812	}
813	return ""
814}
815
816// Function declaration specifies one or more overloads which indicate the
817// function's parameter types and return type, and may optionally specify a
818// function definition in terms of CEL expressions.
819//
820// Functions have no observable side-effects (there may be side-effects like
821// logging which are not observable from CEL).
822type Decl_FunctionDecl struct {
823	// Required. List of function overloads, must contain at least one overload.
824	Overloads            []*Decl_FunctionDecl_Overload `protobuf:"bytes,1,rep,name=overloads,proto3" json:"overloads,omitempty"`
825	XXX_NoUnkeyedLiteral struct{}                      `json:"-"`
826	XXX_unrecognized     []byte                        `json:"-"`
827	XXX_sizecache        int32                         `json:"-"`
828}
829
830func (m *Decl_FunctionDecl) Reset()         { *m = Decl_FunctionDecl{} }
831func (m *Decl_FunctionDecl) String() string { return proto.CompactTextString(m) }
832func (*Decl_FunctionDecl) ProtoMessage()    {}
833func (*Decl_FunctionDecl) Descriptor() ([]byte, []int) {
834	return fileDescriptor_30a741de3e790389, []int{2, 1}
835}
836
837func (m *Decl_FunctionDecl) XXX_Unmarshal(b []byte) error {
838	return xxx_messageInfo_Decl_FunctionDecl.Unmarshal(m, b)
839}
840func (m *Decl_FunctionDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
841	return xxx_messageInfo_Decl_FunctionDecl.Marshal(b, m, deterministic)
842}
843func (m *Decl_FunctionDecl) XXX_Merge(src proto.Message) {
844	xxx_messageInfo_Decl_FunctionDecl.Merge(m, src)
845}
846func (m *Decl_FunctionDecl) XXX_Size() int {
847	return xxx_messageInfo_Decl_FunctionDecl.Size(m)
848}
849func (m *Decl_FunctionDecl) XXX_DiscardUnknown() {
850	xxx_messageInfo_Decl_FunctionDecl.DiscardUnknown(m)
851}
852
853var xxx_messageInfo_Decl_FunctionDecl proto.InternalMessageInfo
854
855func (m *Decl_FunctionDecl) GetOverloads() []*Decl_FunctionDecl_Overload {
856	if m != nil {
857		return m.Overloads
858	}
859	return nil
860}
861
862// An overload indicates a function's parameter types and return type, and
863// may optionally include a function body described in terms of
864// [Expr][google.api.expr.v1alpha1.Expr] values.
865//
866// Functions overloads are declared in either a function or method
867// call-style. For methods, the `params[0]` is the expected type of the
868// target receiver.
869//
870// Overloads must have non-overlapping argument types after erasure of all
871// parameterized type variables (similar as type erasure in Java).
872type Decl_FunctionDecl_Overload struct {
873	// Required. Globally unique overload name of the function which reflects
874	// the function name and argument types.
875	//
876	// This will be used by a [Reference][google.api.expr.v1alpha1.Reference]
877	// to indicate the `overload_id` that was resolved for the function
878	// `name`.
879	OverloadId string `protobuf:"bytes,1,opt,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"`
880	// List of function parameter [Type][google.api.expr.v1alpha1.Type]
881	// values.
882	//
883	// Param types are disjoint after generic type parameters have been
884	// replaced with the type `DYN`. Since the `DYN` type is compatible with
885	// any other type, this means that if `A` is a type parameter, the
886	// function types `int<A>` and `int<int>` are not disjoint. Likewise,
887	// `map<string, string>` is not disjoint from `map<K, V>`.
888	//
889	// When the `result_type` of a function is a generic type param, the
890	// type param name also appears as the `type` of on at least one params.
891	Params []*Type `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"`
892	// The type param names associated with the function declaration.
893	//
894	// For example, `function ex<K,V>(K key, map<K, V> map) : V` would yield
895	// the type params of `K, V`.
896	TypeParams []string `protobuf:"bytes,3,rep,name=type_params,json=typeParams,proto3" json:"type_params,omitempty"`
897	// Required. The result type of the function. For example, the operator
898	// `string.isEmpty()` would have `result_type` of `kind: BOOL`.
899	ResultType *Type `protobuf:"bytes,4,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"`
900	// Whether the function is to be used in a method call-style `x.f(...)`
901	// of a function call-style `f(x, ...)`.
902	//
903	// For methods, the first parameter declaration, `params[0]` is the
904	// expected type of the target receiver.
905	IsInstanceFunction bool `protobuf:"varint,5,opt,name=is_instance_function,json=isInstanceFunction,proto3" json:"is_instance_function,omitempty"`
906	// Documentation string for the overload.
907	Doc                  string   `protobuf:"bytes,6,opt,name=doc,proto3" json:"doc,omitempty"`
908	XXX_NoUnkeyedLiteral struct{} `json:"-"`
909	XXX_unrecognized     []byte   `json:"-"`
910	XXX_sizecache        int32    `json:"-"`
911}
912
913func (m *Decl_FunctionDecl_Overload) Reset()         { *m = Decl_FunctionDecl_Overload{} }
914func (m *Decl_FunctionDecl_Overload) String() string { return proto.CompactTextString(m) }
915func (*Decl_FunctionDecl_Overload) ProtoMessage()    {}
916func (*Decl_FunctionDecl_Overload) Descriptor() ([]byte, []int) {
917	return fileDescriptor_30a741de3e790389, []int{2, 1, 0}
918}
919
920func (m *Decl_FunctionDecl_Overload) XXX_Unmarshal(b []byte) error {
921	return xxx_messageInfo_Decl_FunctionDecl_Overload.Unmarshal(m, b)
922}
923func (m *Decl_FunctionDecl_Overload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
924	return xxx_messageInfo_Decl_FunctionDecl_Overload.Marshal(b, m, deterministic)
925}
926func (m *Decl_FunctionDecl_Overload) XXX_Merge(src proto.Message) {
927	xxx_messageInfo_Decl_FunctionDecl_Overload.Merge(m, src)
928}
929func (m *Decl_FunctionDecl_Overload) XXX_Size() int {
930	return xxx_messageInfo_Decl_FunctionDecl_Overload.Size(m)
931}
932func (m *Decl_FunctionDecl_Overload) XXX_DiscardUnknown() {
933	xxx_messageInfo_Decl_FunctionDecl_Overload.DiscardUnknown(m)
934}
935
936var xxx_messageInfo_Decl_FunctionDecl_Overload proto.InternalMessageInfo
937
938func (m *Decl_FunctionDecl_Overload) GetOverloadId() string {
939	if m != nil {
940		return m.OverloadId
941	}
942	return ""
943}
944
945func (m *Decl_FunctionDecl_Overload) GetParams() []*Type {
946	if m != nil {
947		return m.Params
948	}
949	return nil
950}
951
952func (m *Decl_FunctionDecl_Overload) GetTypeParams() []string {
953	if m != nil {
954		return m.TypeParams
955	}
956	return nil
957}
958
959func (m *Decl_FunctionDecl_Overload) GetResultType() *Type {
960	if m != nil {
961		return m.ResultType
962	}
963	return nil
964}
965
966func (m *Decl_FunctionDecl_Overload) GetIsInstanceFunction() bool {
967	if m != nil {
968		return m.IsInstanceFunction
969	}
970	return false
971}
972
973func (m *Decl_FunctionDecl_Overload) GetDoc() string {
974	if m != nil {
975		return m.Doc
976	}
977	return ""
978}
979
980// Describes a resolved reference to a declaration.
981type Reference struct {
982	// The fully qualified name of the declaration.
983	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
984	// For references to functions, this is a list of `Overload.overload_id`
985	// values which match according to typing rules.
986	//
987	// If the list has more than one element, overload resolution among the
988	// presented candidates must happen at runtime because of dynamic types. The
989	// type checker attempts to narrow down this list as much as possible.
990	//
991	// Empty if this is not a reference to a
992	// [Decl.FunctionDecl][google.api.expr.v1alpha1.Decl.FunctionDecl].
993	OverloadId []string `protobuf:"bytes,3,rep,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"`
994	// For references to constants, this may contain the value of the
995	// constant if known at compile time.
996	Value                *Constant `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
997	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
998	XXX_unrecognized     []byte    `json:"-"`
999	XXX_sizecache        int32     `json:"-"`
1000}
1001
1002func (m *Reference) Reset()         { *m = Reference{} }
1003func (m *Reference) String() string { return proto.CompactTextString(m) }
1004func (*Reference) ProtoMessage()    {}
1005func (*Reference) Descriptor() ([]byte, []int) {
1006	return fileDescriptor_30a741de3e790389, []int{3}
1007}
1008
1009func (m *Reference) XXX_Unmarshal(b []byte) error {
1010	return xxx_messageInfo_Reference.Unmarshal(m, b)
1011}
1012func (m *Reference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
1013	return xxx_messageInfo_Reference.Marshal(b, m, deterministic)
1014}
1015func (m *Reference) XXX_Merge(src proto.Message) {
1016	xxx_messageInfo_Reference.Merge(m, src)
1017}
1018func (m *Reference) XXX_Size() int {
1019	return xxx_messageInfo_Reference.Size(m)
1020}
1021func (m *Reference) XXX_DiscardUnknown() {
1022	xxx_messageInfo_Reference.DiscardUnknown(m)
1023}
1024
1025var xxx_messageInfo_Reference proto.InternalMessageInfo
1026
1027func (m *Reference) GetName() string {
1028	if m != nil {
1029		return m.Name
1030	}
1031	return ""
1032}
1033
1034func (m *Reference) GetOverloadId() []string {
1035	if m != nil {
1036		return m.OverloadId
1037	}
1038	return nil
1039}
1040
1041func (m *Reference) GetValue() *Constant {
1042	if m != nil {
1043		return m.Value
1044	}
1045	return nil
1046}
1047
1048func init() {
1049	proto.RegisterEnum("google.api.expr.v1alpha1.Type_PrimitiveType", Type_PrimitiveType_name, Type_PrimitiveType_value)
1050	proto.RegisterEnum("google.api.expr.v1alpha1.Type_WellKnownType", Type_WellKnownType_name, Type_WellKnownType_value)
1051	proto.RegisterType((*CheckedExpr)(nil), "google.api.expr.v1alpha1.CheckedExpr")
1052	proto.RegisterMapType((map[int64]*Reference)(nil), "google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry")
1053	proto.RegisterMapType((map[int64]*Type)(nil), "google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry")
1054	proto.RegisterType((*Type)(nil), "google.api.expr.v1alpha1.Type")
1055	proto.RegisterType((*Type_ListType)(nil), "google.api.expr.v1alpha1.Type.ListType")
1056	proto.RegisterType((*Type_MapType)(nil), "google.api.expr.v1alpha1.Type.MapType")
1057	proto.RegisterType((*Type_FunctionType)(nil), "google.api.expr.v1alpha1.Type.FunctionType")
1058	proto.RegisterType((*Type_AbstractType)(nil), "google.api.expr.v1alpha1.Type.AbstractType")
1059	proto.RegisterType((*Decl)(nil), "google.api.expr.v1alpha1.Decl")
1060	proto.RegisterType((*Decl_IdentDecl)(nil), "google.api.expr.v1alpha1.Decl.IdentDecl")
1061	proto.RegisterType((*Decl_FunctionDecl)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl")
1062	proto.RegisterType((*Decl_FunctionDecl_Overload)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl.Overload")
1063	proto.RegisterType((*Reference)(nil), "google.api.expr.v1alpha1.Reference")
1064}
1065
1066func init() {
1067	proto.RegisterFile("google/api/expr/v1alpha1/checked.proto", fileDescriptor_30a741de3e790389)
1068}
1069
1070var fileDescriptor_30a741de3e790389 = []byte{
1071	// 1144 bytes of a gzipped FileDescriptorProto
1072	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x5f, 0x6f, 0xdb, 0xb6,
1073	0x17, 0x8d, 0x6c, 0xd9, 0x96, 0xae, 0x9c, 0xfe, 0xfc, 0x23, 0x86, 0x41, 0x50, 0x8b, 0x36, 0x70,
1074	0xb7, 0x2e, 0xd8, 0x06, 0xb9, 0xf5, 0x82, 0xae, 0x5d, 0x37, 0x6c, 0x71, 0xa2, 0x24, 0x42, 0xfd,
1075	0x0f, 0x8a, 0x93, 0x20, 0xc5, 0x00, 0x81, 0x91, 0x19, 0x57, 0xb0, 0x2c, 0x09, 0x94, 0x9c, 0xc4,
1076	0x7b, 0xdd, 0xd3, 0xb0, 0x7d, 0x9b, 0x7d, 0x89, 0x7d, 0x9a, 0xbd, 0x6e, 0x8f, 0x03, 0x29, 0xc9,
1077	0x71, 0xfe, 0x38, 0xb6, 0xdf, 0xae, 0xc8, 0x73, 0x0e, 0x2f, 0x2f, 0xcf, 0x25, 0x05, 0x2f, 0x06,
1078	0x41, 0x30, 0xf0, 0x48, 0x0d, 0x87, 0x6e, 0x8d, 0x5c, 0x85, 0xb4, 0x76, 0xf1, 0x0a, 0x7b, 0xe1,
1079	0x47, 0xfc, 0xaa, 0xe6, 0x7c, 0x24, 0xce, 0x90, 0xf4, 0xf5, 0x90, 0x06, 0x71, 0x80, 0xd4, 0x04,
1080	0xa7, 0xe3, 0xd0, 0xd5, 0x19, 0x4e, 0xcf, 0x70, 0xda, 0xe7, 0x73, 0x15, 0xa2, 0x89, 0x1f, 0xe3,
1081	0xab, 0x44, 0x40, 0x7b, 0x9c, 0xc2, 0xf8, 0xd7, 0xd9, 0xf8, 0xbc, 0x46, 0x46, 0x61, 0x3c, 0x49,
1082	0x27, 0x9f, 0xdc, 0x9e, 0x8c, 0x62, 0x3a, 0x76, 0xe2, 0x64, 0xb6, 0xfa, 0x4f, 0x1e, 0x94, 0x9d,
1083	0x24, 0x1b, 0xe3, 0x2a, 0xa4, 0xe8, 0x67, 0x58, 0xa7, 0xe4, 0x9c, 0x50, 0xe2, 0x3b, 0xc4, 0x1e,
1084	0xe1, 0x50, 0xcd, 0x6d, 0xe4, 0x37, 0x95, 0xfa, 0xb7, 0xfa, 0xbc, 0x1c, 0xf5, 0x19, 0xb6, 0x6e,
1085	0x65, 0xd4, 0x16, 0x0e, 0x0d, 0x3f, 0xa6, 0x13, 0xab, 0x4c, 0x67, 0x86, 0x50, 0x0b, 0xa4, 0x78,
1086	0x12, 0x26, 0xc2, 0x79, 0x2e, 0x5c, 0x5f, 0x4e, 0xb8, 0x37, 0x09, 0xaf, 0x35, 0x4b, 0x71, 0xf2,
1087	0x85, 0x0c, 0x50, 0xa2, 0x60, 0x4c, 0x1d, 0x62, 0xbb, 0xfe, 0x79, 0xa0, 0x16, 0x36, 0x84, 0x4d,
1088	0xa5, 0xfe, 0xd9, 0x7c, 0xc5, 0x43, 0x0e, 0x36, 0xfd, 0xf3, 0xc0, 0x82, 0x68, 0x1a, 0xa3, 0x3a,
1089	0x88, 0x0c, 0xa7, 0x8a, 0x9c, 0xff, 0x74, 0x3e, 0x9f, 0xa5, 0x62, 0x71, 0xac, 0xd6, 0x87, 0xff,
1090	0xdf, 0xd9, 0x2c, 0xaa, 0x40, 0x7e, 0x48, 0x26, 0xaa, 0xb0, 0x21, 0x6c, 0xe6, 0x2d, 0x16, 0xa2,
1091	0xb7, 0x50, 0xb8, 0xc0, 0xde, 0x98, 0xa8, 0x39, 0xae, 0xfd, 0x7c, 0xbe, 0xf6, 0x54, 0xcd, 0x4a,
1092	0x18, 0xdf, 0xe5, 0xde, 0x08, 0xda, 0x07, 0x28, 0xcf, 0xee, 0xfc, 0x9e, 0x05, 0xb6, 0x6e, 0x2e,
1093	0xf0, 0x40, 0xf2, 0x4c, 0x68, 0x46, 0xbb, 0xfa, 0x97, 0x02, 0x22, 0x1b, 0x43, 0x5f, 0x42, 0xbe,
1094	0x3f, 0xf1, 0xb9, 0xa8, 0x52, 0xff, 0x34, 0x13, 0xc8, 0xec, 0xa2, 0x1b, 0xcc, 0x4b, 0x07, 0x6b,
1095	0x16, 0x03, 0xa1, 0x97, 0x20, 0xfa, 0x63, 0xcf, 0xe3, 0xab, 0x3d, 0xaa, 0x6b, 0x77, 0xc0, 0xed,
1096	0xb1, 0xe7, 0x1d, 0xb3, 0x25, 0x0e, 0xd6, 0x2c, 0x8e, 0x44, 0x4d, 0x90, 0x43, 0xea, 0x8e, 0xdc,
1097	0xd8, 0xbd, 0x20, 0x6a, 0x9e, 0xd3, 0xbe, 0x7e, 0x38, 0x49, 0xbd, 0x9b, 0xe1, 0xd9, 0xd7, 0xc1,
1098	0x9a, 0x75, 0x2d, 0x80, 0x0e, 0xa0, 0x74, 0x49, 0x71, 0x18, 0x92, 0xe4, 0xb4, 0x56, 0xd7, 0xca,
1099	0xe8, 0xa8, 0x05, 0x70, 0x49, 0x3c, 0xcf, 0x1e, 0xfa, 0xc1, 0xa5, 0xcf, 0xad, 0xb3, 0x58, 0xec,
1100	0x84, 0x78, 0xde, 0x7b, 0x86, 0xcf, 0x12, 0xbb, 0xcc, 0x06, 0xd0, 0x1e, 0xc8, 0x9e, 0x1b, 0xc5,
1101	0x36, 0xb3, 0xa6, 0x5a, 0xe4, 0xa5, 0xfc, 0x62, 0x81, 0x5a, 0xd3, 0x8d, 0xe2, 0x54, 0x48, 0xf2,
1102	0xd2, 0x18, 0xed, 0x80, 0x34, 0xc2, 0x61, 0x22, 0x53, 0xe2, 0x32, 0x2f, 0x16, 0xc8, 0xb4, 0x70,
1103	0x98, 0xed, 0x6d, 0x94, 0x84, 0xc8, 0x04, 0xe9, 0x7c, 0xec, 0x3b, 0xb1, 0x1b, 0xf8, 0xaa, 0xc4,
1104	0x45, 0xbe, 0x5a, 0x20, 0xb2, 0x97, 0xc2, 0xb3, 0x7c, 0x32, 0x3a, 0x7a, 0x0e, 0xe5, 0x11, 0x89,
1105	0x22, 0x3c, 0x20, 0x49, 0x4e, 0xf2, 0x86, 0xb0, 0x29, 0x1f, 0xac, 0x59, 0x4a, 0x3a, 0xca, 0xd7,
1106	0x7b, 0x06, 0xc0, 0xdb, 0x3a, 0xc4, 0x14, 0x8f, 0x54, 0x48, 0x21, 0x32, 0x1b, 0xeb, 0xb2, 0x21,
1107	0xb4, 0x05, 0x22, 0x67, 0x2b, 0xcb, 0x98, 0x94, 0x59, 0x87, 0xa1, 0x91, 0x0e, 0x05, 0x42, 0x69,
1108	0x40, 0xd5, 0xf2, 0x02, 0x6b, 0x26, 0x30, 0x64, 0xc1, 0x3a, 0x3e, 0x8b, 0x62, 0x8a, 0x9d, 0xf4,
1109	0x1c, 0x1e, 0x2d, 0xb5, 0xf7, 0xed, 0x94, 0x93, 0xae, 0x5d, 0xc6, 0x33, 0xdf, 0xda, 0x3e, 0x48,
1110	0xd9, 0x39, 0xa1, 0x77, 0x20, 0x13, 0x8f, 0x8c, 0x12, 0x6d, 0x61, 0xa9, 0x7e, 0x93, 0x18, 0x81,
1111	0x0b, 0xfd, 0x2a, 0x40, 0x29, 0x3d, 0x2a, 0xf4, 0x16, 0xa4, 0x21, 0x99, 0xac, 0xa2, 0x53, 0x1a,
1112	0x92, 0x09, 0xa7, 0xfe, 0x00, 0xc0, 0x5b, 0x38, 0x21, 0x2f, 0xd7, 0xf4, 0x32, 0x67, 0xf0, 0x2c,
1113	0xfe, 0x10, 0xa0, 0x3c, 0x7b, 0xd6, 0xe8, 0x47, 0x50, 0x28, 0x89, 0xc6, 0x5e, 0xbc, 0x4a, 0x36,
1114	0x90, 0x50, 0xb2, 0xa2, 0x60, 0x3a, 0xe0, 0xec, 0x28, 0x7d, 0x2c, 0x16, 0x16, 0x05, 0xd3, 0x01,
1115	0x0b, 0x22, 0x6d, 0x08, 0xe5, 0xd9, 0xea, 0x23, 0x04, 0xa2, 0x8f, 0x47, 0x49, 0x1a, 0xb2, 0xc5,
1116	0x63, 0xb4, 0x0f, 0xff, 0xe3, 0xbe, 0x22, 0x31, 0xa1, 0x2b, 0x2d, 0xf3, 0x68, 0x4a, 0xe3, 0x8b,
1117	0x55, 0x23, 0x58, 0xbf, 0x71, 0x1b, 0xa0, 0xa7, 0xa0, 0x75, 0x2d, 0xb3, 0x65, 0xf6, 0xcc, 0x63,
1118	0xc3, 0xee, 0x9d, 0x76, 0x0d, 0xfb, 0xa8, 0x7d, 0xd8, 0x35, 0x76, 0xcc, 0x3d, 0xd3, 0xd8, 0xad,
1119	0xac, 0x21, 0x09, 0xc4, 0x46, 0xa7, 0xd3, 0xac, 0x08, 0x48, 0x86, 0x82, 0xd9, 0xee, 0xbd, 0xde,
1120	0xaa, 0xe4, 0x10, 0x40, 0xf1, 0x28, 0x89, 0xf3, 0x2c, 0xde, 0xed, 0x1c, 0x35, 0x9a, 0x46, 0x45,
1121	0x64, 0xf1, 0x61, 0xcf, 0x32, 0xdb, 0xfb, 0x95, 0x02, 0x83, 0x37, 0x4e, 0x7b, 0xc6, 0x61, 0xa5,
1122	0x58, 0x3d, 0x86, 0xf5, 0x1b, 0xb7, 0x06, 0x7a, 0x06, 0x8f, 0x4f, 0x8c, 0x66, 0xd3, 0x7e, 0xdf,
1123	0xee, 0x9c, 0xb4, 0xef, 0x5b, 0xb5, 0x04, 0xf9, 0xed, 0xf6, 0x69, 0x45, 0x40, 0xeb, 0x20, 0xf7,
1124	0xcc, 0x96, 0x71, 0xd8, 0xdb, 0x6e, 0x75, 0x2b, 0x39, 0x54, 0x06, 0x69, 0xf7, 0xc8, 0xda, 0xee,
1125	0x99, 0x9d, 0x76, 0x25, 0xdf, 0x50, 0x80, 0xb7, 0x97, 0x3d, 0x74, 0xfd, 0x7e, 0xf5, 0xcf, 0x02,
1126	0x88, 0xbb, 0xc4, 0xf1, 0xee, 0xad, 0xdf, 0x4f, 0x50, 0x70, 0xfb, 0xc4, 0x8f, 0x53, 0xb3, 0x6c,
1127	0xce, 0xaf, 0x1a, 0x93, 0xd0, 0x4d, 0x86, 0x65, 0x11, 0xeb, 0x2b, 0x4e, 0xbc, 0x71, 0x9d, 0xe4,
1128	0x17, 0xb5, 0x14, 0x17, 0xc9, 0x2c, 0x96, 0xea, 0x4c, 0xe9, 0xda, 0xef, 0x02, 0xc8, 0xd3, 0x15,
1129	0xd8, 0xc3, 0xbb, 0x82, 0xeb, 0x92, 0x4b, 0xe1, 0xcd, 0xcd, 0x07, 0xaf, 0xfa, 0xc0, 0xff, 0x43,
1130	0xe0, 0x47, 0x31, 0xf6, 0xe3, 0xf4, 0xd1, 0x63, 0x8f, 0x67, 0x3f, 0x70, 0xf8, 0x0e, 0x64, 0x8b,
1131	0x85, 0xda, 0xdf, 0xb9, 0xeb, 0x6e, 0xe0, 0x09, 0x59, 0x20, 0x07, 0x17, 0x84, 0x7a, 0x01, 0xee,
1132	0x47, 0xaa, 0xc0, 0x5d, 0xb6, 0xb5, 0xc2, 0x56, 0xf5, 0x4e, 0x4a, 0xb6, 0xae, 0x65, 0xb4, 0xdf,
1133	0x72, 0x20, 0x65, 0xe3, 0xe8, 0x19, 0x28, 0xd9, 0x8c, 0xed, 0xf6, 0xd3, 0x73, 0x82, 0x6c, 0xc8,
1134	0xec, 0xa3, 0xd7, 0x50, 0xe4, 0xb6, 0x5d, 0xd6, 0xe4, 0x29, 0x9a, 0x09, 0x5f, 0x5f, 0xc1, 0x11,
1135	0xff, 0xb9, 0x92, 0x2d, 0x98, 0xde, 0xc0, 0xd1, 0xed, 0x46, 0x17, 0x57, 0x6e, 0xf4, 0x97, 0xf0,
1136	0x89, 0x1b, 0xd9, 0x2e, 0xaf, 0xa9, 0x43, 0xec, 0xa9, 0x23, 0xd8, 0xd3, 0x29, 0x59, 0xc8, 0x8d,
1137	0xcc, 0x74, 0x2a, 0xab, 0x48, 0x56, 0xf0, 0xe2, 0xb4, 0xe0, 0xcc, 0xb5, 0x7d, 0xe2, 0x78, 0x89,
1138	0x6b, 0x7f, 0x01, 0x79, 0xfa, 0xd3, 0x73, 0xaf, 0x73, 0x6f, 0x15, 0x2b, 0xdd, 0xd3, 0x4c, 0xb1,
1139	0xa6, 0x5e, 0x10, 0x57, 0xf4, 0x42, 0xc3, 0x83, 0x27, 0x4e, 0x30, 0x9a, 0x8b, 0x6f, 0xc8, 0xec,
1140	0x38, 0xbb, 0xec, 0x9d, 0xe9, 0x0a, 0x1f, 0xbe, 0x4f, 0x61, 0x83, 0xc0, 0xc3, 0xfe, 0x40, 0x0f,
1141	0xe8, 0xa0, 0x36, 0x20, 0x3e, 0x7f, 0x85, 0x6a, 0xc9, 0x14, 0x0e, 0xdd, 0xe8, 0xee, 0x4f, 0xfa,
1142	0x3b, 0xf6, 0xf5, 0xaf, 0x20, 0x9c, 0x15, 0x39, 0xf6, 0x9b, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff,
1143	0xee, 0x02, 0xe6, 0x8f, 0x11, 0x0c, 0x00, 0x00,
1144}
1145