From 7750140d08d5c0de4c4c0ceade4bce7652e85c4e Mon Sep 17 00:00:00 2001 From: Tiago Silva Date: Fri, 20 Sep 2024 15:09:26 +0100 Subject: [PATCH] Add audit events to Crown Jewel methods (#46641) * Add audit events to Crown Jewel methods This PR adds the audit events for the crown jewel functionatlity. Part of https://github.com/gravitational/access-graph/issues/1193 Signed-off-by: Tiago Silva * fix lint --------- Signed-off-by: Tiago Silva --- .../teleport/legacy/types/events/events.proto | 126 + api/types/events/events.go | 12 + api/types/events/events.pb.go | 8440 ++++++++++------- api/types/events/oneof.go | 12 + lib/auth/crownjewel/crownjewelv1/service.go | 128 +- .../crownjewel/crownjewelv1/service_test.go | 8 + lib/auth/grpcserver.go | 1 + lib/events/api.go | 7 + lib/events/codes.go | 7 + lib/events/dynamic.go | 7 +- lib/events/events_test.go | 4 + .../src/Audit/EventList/EventTypeCell.tsx | 3 + .../teleport/src/services/audit/makeEvent.ts | 21 + .../teleport/src/services/audit/types.ts | 15 + 14 files changed, 5308 insertions(+), 3483 deletions(-) diff --git a/api/proto/teleport/legacy/types/events/events.proto b/api/proto/teleport/legacy/types/events/events.proto index 6895afc7a845a..c6948d2655041 100644 --- a/api/proto/teleport/legacy/types/events/events.proto +++ b/api/proto/teleport/legacy/types/events/events.proto @@ -4603,6 +4603,9 @@ message OneOf { events.StaticHostUserCreate StaticHostUserCreate = 179; events.StaticHostUserUpdate StaticHostUserUpdate = 180; events.StaticHostUserDelete StaticHostUserDelete = 181; + events.CrownJewelCreate CrownJewelCreate = 182; + events.CrownJewelUpdate CrownJewelUpdate = 183; + events.CrownJewelDelete CrownJewelDelete = 184; } } @@ -7174,3 +7177,126 @@ message StaticHostUserDelete { (gogoproto.jsontag) = "" ]; } + +// CrownJewelCreate is emitted when a Access Graph CrownJewel is created. +message CrownJewelCreate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // Status indicates whether the update was successful. + Status Status = 2 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // User is a common user event metadata + UserMetadata User = 3 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ConnectionMetadata holds information about the connection + ConnectionMetadata Connection = 4 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata. + ResourceMetadata resource = 5 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // CrownJewelQuery is the query used to track the crown jewel. + string CrownJewelQuery = 6 [(gogoproto.jsontag) = "crown_jewel_query"]; +} + +// CrownJewelUpdate is emitted when a Access Graph CrownJewel is updated. +message CrownJewelUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // Status indicates whether the update was successful. + Status Status = 2 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // User is a common user event metadata + UserMetadata User = 3 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ConnectionMetadata holds information about the connection + ConnectionMetadata Connection = 4 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata. + ResourceMetadata resource = 5 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // CurrentCrownJewelQuery is the current query used to track the crown jewel. + string CurrentCrownJewelQuery = 6 [(gogoproto.jsontag) = "current_crown_jewel_query"]; + + // UpdatedCrownJewelQuery is the new query used to track the crown jewel. + string UpdatedCrownJewelQuery = 7 [(gogoproto.jsontag) = "updated_crown_jewel_query"]; +} + +// CrownJewelDelete is emitted when a Access Graph CrownJewel is deleted. +message CrownJewelDelete { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // Status indicates whether the update was successful. + Status Status = 2 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // User is a common user event metadata + UserMetadata User = 3 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ConnectionMetadata holds information about the connection + ConnectionMetadata Connection = 4 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata. + ResourceMetadata resource = 5 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; +} diff --git a/api/types/events/events.go b/api/types/events/events.go index a3b99878a7b5d..8cf32f7160efe 100644 --- a/api/types/events/events.go +++ b/api/types/events/events.go @@ -214,3 +214,15 @@ func computeEventID(evt AuditEvent, payload []byte) string { hash := sha256.Sum256(payload) return hex.EncodeToString(hash[:]) } + +func (m *CrownJewelCreate) TrimToMaxSize(_ int) AuditEvent { + return m +} + +func (m *CrownJewelUpdate) TrimToMaxSize(_ int) AuditEvent { + return m +} + +func (m *CrownJewelDelete) TrimToMaxSize(_ int) AuditEvent { + return m +} diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index f528c2f540359..6746e785d0e4f 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -7724,6 +7724,9 @@ type OneOf struct { // *OneOf_StaticHostUserCreate // *OneOf_StaticHostUserUpdate // *OneOf_StaticHostUserDelete + // *OneOf_CrownJewelCreate + // *OneOf_CrownJewelUpdate + // *OneOf_CrownJewelDelete Event isOneOf_Event `protobuf_oneof:"Event"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -8309,6 +8312,15 @@ type OneOf_StaticHostUserUpdate struct { type OneOf_StaticHostUserDelete struct { StaticHostUserDelete *StaticHostUserDelete `protobuf:"bytes,181,opt,name=StaticHostUserDelete,proto3,oneof" json:"StaticHostUserDelete,omitempty"` } +type OneOf_CrownJewelCreate struct { + CrownJewelCreate *CrownJewelCreate `protobuf:"bytes,182,opt,name=CrownJewelCreate,proto3,oneof" json:"CrownJewelCreate,omitempty"` +} +type OneOf_CrownJewelUpdate struct { + CrownJewelUpdate *CrownJewelUpdate `protobuf:"bytes,183,opt,name=CrownJewelUpdate,proto3,oneof" json:"CrownJewelUpdate,omitempty"` +} +type OneOf_CrownJewelDelete struct { + CrownJewelDelete *CrownJewelDelete `protobuf:"bytes,184,opt,name=CrownJewelDelete,proto3,oneof" json:"CrownJewelDelete,omitempty"` +} func (*OneOf_UserLogin) isOneOf_Event() {} func (*OneOf_UserCreate) isOneOf_Event() {} @@ -8490,6 +8502,9 @@ func (*OneOf_AutoUpdateVersionDelete) isOneOf_Event() {} func (*OneOf_StaticHostUserCreate) isOneOf_Event() {} func (*OneOf_StaticHostUserUpdate) isOneOf_Event() {} func (*OneOf_StaticHostUserDelete) isOneOf_Event() {} +func (*OneOf_CrownJewelCreate) isOneOf_Event() {} +func (*OneOf_CrownJewelUpdate) isOneOf_Event() {} +func (*OneOf_CrownJewelDelete) isOneOf_Event() {} func (m *OneOf) GetEvent() isOneOf_Event { if m != nil { @@ -9758,6 +9773,27 @@ func (m *OneOf) GetStaticHostUserDelete() *StaticHostUserDelete { return nil } +func (m *OneOf) GetCrownJewelCreate() *CrownJewelCreate { + if x, ok := m.GetEvent().(*OneOf_CrownJewelCreate); ok { + return x.CrownJewelCreate + } + return nil +} + +func (m *OneOf) GetCrownJewelUpdate() *CrownJewelUpdate { + if x, ok := m.GetEvent().(*OneOf_CrownJewelUpdate); ok { + return x.CrownJewelUpdate + } + return nil +} + +func (m *OneOf) GetCrownJewelDelete() *CrownJewelDelete { + if x, ok := m.GetEvent().(*OneOf_CrownJewelDelete); ok { + return x.CrownJewelDelete + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OneOf) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -9941,6 +9977,9 @@ func (*OneOf) XXX_OneofWrappers() []interface{} { (*OneOf_StaticHostUserCreate)(nil), (*OneOf_StaticHostUserUpdate)(nil), (*OneOf_StaticHostUserDelete)(nil), + (*OneOf_CrownJewelCreate)(nil), + (*OneOf_CrownJewelUpdate)(nil), + (*OneOf_CrownJewelDelete)(nil), } } @@ -14299,6 +14338,162 @@ func (m *StaticHostUserDelete) XXX_DiscardUnknown() { var xxx_messageInfo_StaticHostUserDelete proto.InternalMessageInfo +// CrownJewelCreate is emitted when a Access Graph CrownJewel is created. +type CrownJewelCreate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // Status indicates whether the update was successful. + Status `protobuf:"bytes,2,opt,name=Status,proto3,embedded=Status" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + // ConnectionMetadata holds information about the connection + ConnectionMetadata `protobuf:"bytes,4,opt,name=Connection,proto3,embedded=Connection" json:""` + // ResourceMetadata is a common resource event metadata. + ResourceMetadata `protobuf:"bytes,5,opt,name=resource,proto3,embedded=resource" json:""` + // CrownJewelQuery is the query used to track the crown jewel. + CrownJewelQuery string `protobuf:"bytes,6,opt,name=CrownJewelQuery,proto3" json:"crown_jewel_query"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CrownJewelCreate) Reset() { *m = CrownJewelCreate{} } +func (m *CrownJewelCreate) String() string { return proto.CompactTextString(m) } +func (*CrownJewelCreate) ProtoMessage() {} +func (*CrownJewelCreate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{224} +} +func (m *CrownJewelCreate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CrownJewelCreate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CrownJewelCreate.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CrownJewelCreate) XXX_Merge(src proto.Message) { + xxx_messageInfo_CrownJewelCreate.Merge(m, src) +} +func (m *CrownJewelCreate) XXX_Size() int { + return m.Size() +} +func (m *CrownJewelCreate) XXX_DiscardUnknown() { + xxx_messageInfo_CrownJewelCreate.DiscardUnknown(m) +} + +var xxx_messageInfo_CrownJewelCreate proto.InternalMessageInfo + +// CrownJewelUpdate is emitted when a Access Graph CrownJewel is updated. +type CrownJewelUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // Status indicates whether the update was successful. + Status `protobuf:"bytes,2,opt,name=Status,proto3,embedded=Status" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + // ConnectionMetadata holds information about the connection + ConnectionMetadata `protobuf:"bytes,4,opt,name=Connection,proto3,embedded=Connection" json:""` + // ResourceMetadata is a common resource event metadata. + ResourceMetadata `protobuf:"bytes,5,opt,name=resource,proto3,embedded=resource" json:""` + // CurrentCrownJewelQuery is the current query used to track the crown jewel. + CurrentCrownJewelQuery string `protobuf:"bytes,6,opt,name=CurrentCrownJewelQuery,proto3" json:"current_crown_jewel_query"` + // UpdatedCrownJewelQuery is the new query used to track the crown jewel. + UpdatedCrownJewelQuery string `protobuf:"bytes,7,opt,name=UpdatedCrownJewelQuery,proto3" json:"updated_crown_jewel_query"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CrownJewelUpdate) Reset() { *m = CrownJewelUpdate{} } +func (m *CrownJewelUpdate) String() string { return proto.CompactTextString(m) } +func (*CrownJewelUpdate) ProtoMessage() {} +func (*CrownJewelUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{225} +} +func (m *CrownJewelUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CrownJewelUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CrownJewelUpdate.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CrownJewelUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_CrownJewelUpdate.Merge(m, src) +} +func (m *CrownJewelUpdate) XXX_Size() int { + return m.Size() +} +func (m *CrownJewelUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_CrownJewelUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_CrownJewelUpdate proto.InternalMessageInfo + +// CrownJewelDelete is emitted when a Access Graph CrownJewel is deleted. +type CrownJewelDelete struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // Status indicates whether the update was successful. + Status `protobuf:"bytes,2,opt,name=Status,proto3,embedded=Status" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + // ConnectionMetadata holds information about the connection + ConnectionMetadata `protobuf:"bytes,4,opt,name=Connection,proto3,embedded=Connection" json:""` + // ResourceMetadata is a common resource event metadata. + ResourceMetadata `protobuf:"bytes,5,opt,name=resource,proto3,embedded=resource" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CrownJewelDelete) Reset() { *m = CrownJewelDelete{} } +func (m *CrownJewelDelete) String() string { return proto.CompactTextString(m) } +func (*CrownJewelDelete) ProtoMessage() {} +func (*CrownJewelDelete) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{226} +} +func (m *CrownJewelDelete) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CrownJewelDelete) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CrownJewelDelete.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CrownJewelDelete) XXX_Merge(src proto.Message) { + xxx_messageInfo_CrownJewelDelete.Merge(m, src) +} +func (m *CrownJewelDelete) XXX_Size() int { + return m.Size() +} +func (m *CrownJewelDelete) XXX_DiscardUnknown() { + xxx_messageInfo_CrownJewelDelete.DiscardUnknown(m) +} + +var xxx_messageInfo_CrownJewelDelete proto.InternalMessageInfo + func init() { proto.RegisterEnum("events.UserKind", UserKind_name, UserKind_value) proto.RegisterEnum("events.EventAction", EventAction_name, EventAction_value) @@ -14547,6 +14742,9 @@ func init() { proto.RegisterType((*StaticHostUserCreate)(nil), "events.StaticHostUserCreate") proto.RegisterType((*StaticHostUserUpdate)(nil), "events.StaticHostUserUpdate") proto.RegisterType((*StaticHostUserDelete)(nil), "events.StaticHostUserDelete") + proto.RegisterType((*CrownJewelCreate)(nil), "events.CrownJewelCreate") + proto.RegisterType((*CrownJewelUpdate)(nil), "events.CrownJewelUpdate") + proto.RegisterType((*CrownJewelDelete)(nil), "events.CrownJewelDelete") } func init() { @@ -14554,1019 +14752,1029 @@ func init() { } var fileDescriptor_007ba1c3d6266d56 = []byte{ - // 16182 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x74, 0x24, 0xc7, - 0x75, 0x18, 0x8c, 0x79, 0x60, 0x00, 0x14, 0x1e, 0x0b, 0xd4, 0xbe, 0x7a, 0x97, 0xbb, 0x0b, 0xb2, - 0x49, 0xae, 0x76, 0x29, 0x72, 0x97, 0x5c, 0x2e, 0x49, 0xf1, 0x25, 0x72, 0x80, 0x01, 0x16, 0xc3, - 0xc5, 0x8b, 0x3d, 0xd8, 0x5d, 0x51, 0xaf, 0x71, 0x63, 0xba, 0x30, 0x68, 0x62, 0xa6, 0x7b, 0xd4, - 0xdd, 0xb3, 0x58, 0xf0, 0x7b, 0xc4, 0x72, 0xfc, 0x90, 0x1c, 0x4a, 0x56, 0xe4, 0xd8, 0xf2, 0x2b, - 0xb1, 0x6c, 0xc7, 0x89, 0xed, 0xd8, 0x96, 0x1f, 0x8a, 0x6d, 0xd9, 0xd1, 0x89, 0x1d, 0xe5, 0x41, - 0x47, 0xc7, 0x3e, 0xb6, 0x93, 0xf8, 0xf8, 0x24, 0x0e, 0xe4, 0x28, 0xf1, 0x1f, 0x9c, 0xe4, 0x1c, - 0x27, 0xd1, 0x89, 0x15, 0xc7, 0xc9, 0xc9, 0xa9, 0x5b, 0xd5, 0xdd, 0x55, 0xfd, 0x18, 0x3c, 0x69, - 0x10, 0x04, 0xfe, 0xec, 0x62, 0xee, 0xbd, 0x75, 0xab, 0xfa, 0xd6, 0xad, 0xaa, 0x5b, 0x55, 0xb7, - 0xee, 0x45, 0x97, 0x3d, 0xd2, 0x20, 0x2d, 0xdb, 0xf1, 0xae, 0x36, 0x48, 0x5d, 0xaf, 0xad, 0x5d, - 0xf5, 0xd6, 0x5a, 0xc4, 0xbd, 0x4a, 0xee, 0x12, 0xcb, 0xf3, 0xff, 0xbb, 0xd2, 0x72, 0x6c, 0xcf, - 0xc6, 0x05, 0xf6, 0xeb, 0xec, 0x89, 0xba, 0x5d, 0xb7, 0x01, 0x74, 0x95, 0xfe, 0xc5, 0xb0, 0x67, - 0xcf, 0xd5, 0x6d, 0xbb, 0xde, 0x20, 0x57, 0xe1, 0xd7, 0x62, 0x7b, 0xe9, 0xaa, 0xeb, 0x39, 0xed, - 0x9a, 0xc7, 0xb1, 0xa3, 0x51, 0xac, 0x67, 0x36, 0x89, 0xeb, 0xe9, 0xcd, 0x16, 0x27, 0xb8, 0x10, - 0x25, 0x58, 0x75, 0xf4, 0x56, 0x8b, 0x38, 0xbc, 0xf2, 0xb3, 0x0f, 0x24, 0xb7, 0x13, 0xfe, 0xe5, - 0x24, 0x8f, 0x25, 0x93, 0xf8, 0x8c, 0x22, 0x1c, 0xd5, 0xcf, 0x66, 0x51, 0xef, 0x0c, 0xf1, 0x74, - 0x43, 0xf7, 0x74, 0x7c, 0x0e, 0x75, 0x97, 0x2d, 0x83, 0xdc, 0x53, 0x32, 0xf7, 0x67, 0x2e, 0xe5, - 0xc6, 0x0a, 0x1b, 0xeb, 0xa3, 0x59, 0x62, 0x6a, 0x0c, 0x88, 0xcf, 0xa3, 0xfc, 0xc2, 0x5a, 0x8b, - 0x28, 0xd9, 0xfb, 0x33, 0x97, 0xfa, 0xc6, 0xfa, 0x36, 0xd6, 0x47, 0xbb, 0x41, 0x16, 0x1a, 0x80, - 0xf1, 0x03, 0x28, 0x5b, 0x2e, 0x29, 0x39, 0x40, 0x8e, 0x6c, 0xac, 0x8f, 0x0e, 0xb6, 0x4d, 0xe3, - 0x51, 0xbb, 0x69, 0x7a, 0xa4, 0xd9, 0xf2, 0xd6, 0xb4, 0x6c, 0xb9, 0x84, 0x2f, 0xa2, 0xfc, 0xb8, - 0x6d, 0x10, 0x25, 0x0f, 0x44, 0x78, 0x63, 0x7d, 0x74, 0xa8, 0x66, 0x1b, 0x44, 0xa0, 0x02, 0x3c, - 0x7e, 0x19, 0xe5, 0x17, 0xcc, 0x26, 0x51, 0xba, 0xef, 0xcf, 0x5c, 0xea, 0xbf, 0x76, 0xf6, 0x0a, - 0x93, 0xca, 0x15, 0x5f, 0x2a, 0x57, 0x16, 0x7c, 0xb1, 0x8d, 0x0d, 0xbf, 0xb5, 0x3e, 0xda, 0xb5, - 0xb1, 0x3e, 0x9a, 0xa7, 0x92, 0xfc, 0xcc, 0xd7, 0x46, 0x33, 0x1a, 0x94, 0xc4, 0x2f, 0xa0, 0xfe, - 0xf1, 0x46, 0xdb, 0xf5, 0x88, 0x33, 0xab, 0x37, 0x89, 0x52, 0x80, 0x0a, 0xcf, 0x6e, 0xac, 0x8f, - 0x9e, 0xaa, 0x31, 0x70, 0xd5, 0xd2, 0x9b, 0x62, 0xc5, 0x22, 0xb9, 0xfa, 0x6b, 0x19, 0x74, 0xac, - 0x42, 0x5c, 0xd7, 0xb4, 0xad, 0x40, 0x36, 0x0f, 0xa3, 0x3e, 0x0e, 0x2a, 0x97, 0x40, 0x3e, 0x7d, - 0x63, 0x3d, 0x1b, 0xeb, 0xa3, 0x39, 0xd7, 0x34, 0xb4, 0x10, 0x83, 0x1f, 0x47, 0x3d, 0x77, 0x4c, - 0x6f, 0x79, 0x66, 0xb2, 0xc8, 0xe5, 0x74, 0x6a, 0x63, 0x7d, 0x14, 0xaf, 0x9a, 0xde, 0x72, 0xb5, - 0xb9, 0xa4, 0x0b, 0x15, 0xfa, 0x64, 0x78, 0x1a, 0x0d, 0xcf, 0x3b, 0xe6, 0x5d, 0xdd, 0x23, 0x37, - 0xc9, 0xda, 0xbc, 0xdd, 0x30, 0x6b, 0x6b, 0x5c, 0x8a, 0xf7, 0x6f, 0xac, 0x8f, 0x9e, 0x6b, 0x31, - 0x5c, 0x75, 0x85, 0xac, 0x55, 0x5b, 0x80, 0x15, 0x98, 0xc4, 0x4a, 0xaa, 0xbf, 0x5e, 0x40, 0x03, - 0xb7, 0x5c, 0xe2, 0x04, 0xed, 0xbe, 0x88, 0xf2, 0xf4, 0x37, 0x6f, 0x32, 0xc8, 0xbc, 0xed, 0x12, - 0x47, 0x94, 0x39, 0xc5, 0xe3, 0xcb, 0xa8, 0x7b, 0xda, 0xae, 0x9b, 0x16, 0x6f, 0xf6, 0xf1, 0x8d, - 0xf5, 0xd1, 0x63, 0x0d, 0x0a, 0x10, 0x28, 0x19, 0x05, 0x7e, 0x3f, 0x1a, 0x28, 0x37, 0xa9, 0x0e, - 0xd9, 0x96, 0xee, 0xd9, 0x0e, 0x6f, 0x2d, 0x48, 0xd7, 0x14, 0xe0, 0x42, 0x41, 0x89, 0x1e, 0x3f, - 0x87, 0x50, 0xf1, 0x4e, 0x45, 0xb3, 0x1b, 0xa4, 0xa8, 0xcd, 0x72, 0x65, 0x80, 0xd2, 0xfa, 0xaa, - 0x5b, 0x75, 0xec, 0x06, 0xa9, 0xea, 0x8e, 0x58, 0xad, 0x40, 0x8d, 0x27, 0xd0, 0x50, 0xb1, 0x56, - 0x23, 0xae, 0xab, 0x91, 0x8f, 0xb5, 0x89, 0xeb, 0xb9, 0x4a, 0xf7, 0xfd, 0xb9, 0x4b, 0x7d, 0x63, - 0xe7, 0x37, 0xd6, 0x47, 0xcf, 0xe8, 0x80, 0xa9, 0x3a, 0x1c, 0x25, 0xb0, 0x88, 0x14, 0xc2, 0x63, - 0x68, 0xb0, 0xf8, 0x46, 0xdb, 0x21, 0x65, 0x83, 0x58, 0x9e, 0xe9, 0xad, 0x71, 0x0d, 0x39, 0xb7, - 0xb1, 0x3e, 0xaa, 0xe8, 0x14, 0x51, 0x35, 0x39, 0x46, 0x60, 0x22, 0x17, 0xc1, 0x73, 0x68, 0xe4, - 0xc6, 0xf8, 0x7c, 0x85, 0x38, 0x77, 0xcd, 0x1a, 0x29, 0xd6, 0x6a, 0x76, 0xdb, 0xf2, 0x94, 0x1e, - 0xe0, 0xf3, 0xc0, 0xc6, 0xfa, 0xe8, 0xf9, 0x7a, 0xad, 0x55, 0x75, 0x19, 0xb6, 0xaa, 0x33, 0xb4, - 0xc0, 0x2c, 0x5e, 0x16, 0x7f, 0x10, 0x0d, 0x2e, 0x38, 0x54, 0x0b, 0x8d, 0x12, 0xa1, 0x70, 0xa5, - 0x17, 0xf4, 0xff, 0xd4, 0x15, 0x3e, 0x01, 0x31, 0xa8, 0xdf, 0xb3, 0xac, 0xb1, 0x1e, 0x2b, 0x50, - 0x35, 0x00, 0x27, 0x36, 0x56, 0x62, 0x85, 0x09, 0x52, 0xe8, 0xc7, 0x9b, 0x0e, 0x31, 0x62, 0xda, - 0xd6, 0x07, 0x6d, 0xbe, 0xbc, 0xb1, 0x3e, 0xfa, 0xb0, 0xc3, 0x69, 0xaa, 0x1d, 0xd5, 0x2e, 0x95, - 0x15, 0x9e, 0x40, 0xbd, 0x54, 0x9b, 0x6e, 0x9a, 0x96, 0xa1, 0xa0, 0xfb, 0x33, 0x97, 0x86, 0xae, - 0x0d, 0xfb, 0xad, 0xf7, 0xe1, 0x63, 0xa7, 0x37, 0xd6, 0x47, 0x8f, 0x53, 0x1d, 0xac, 0xae, 0x98, - 0x96, 0x38, 0x45, 0x04, 0x45, 0xe9, 0x28, 0x1a, 0xb3, 0x3d, 0x18, 0xba, 0xfd, 0xe1, 0x28, 0x5a, - 0xb4, 0xbd, 0xe8, 0xb0, 0xf5, 0xc9, 0xf0, 0x38, 0x1a, 0x1c, 0xb3, 0xbd, 0xb2, 0xe5, 0x7a, 0xba, - 0x55, 0x23, 0xe5, 0x92, 0x32, 0x00, 0xe5, 0x40, 0x2d, 0x68, 0x39, 0x93, 0x63, 0xaa, 0xd2, 0xa4, - 0x24, 0x97, 0x51, 0xff, 0x3c, 0x8f, 0x86, 0x68, 0x9f, 0x08, 0xc3, 0xa7, 0x48, 0x67, 0x02, 0x0a, - 0xa1, 0xb5, 0xb8, 0x2d, 0xbd, 0x46, 0xf8, 0x48, 0x82, 0xaf, 0xb0, 0x7c, 0xa0, 0xc0, 0x33, 0x4a, - 0x8f, 0x2f, 0xa3, 0x5e, 0x06, 0x2a, 0x97, 0xf8, 0xe0, 0x1a, 0xdc, 0x58, 0x1f, 0xed, 0x73, 0x01, - 0x56, 0x35, 0x0d, 0x2d, 0x40, 0x53, 0xed, 0x66, 0x7f, 0x4f, 0xd9, 0xae, 0x47, 0x99, 0xf3, 0xb1, - 0x05, 0x9f, 0xc1, 0x0b, 0x2c, 0x73, 0x94, 0xa8, 0xdd, 0x72, 0x21, 0xfc, 0x2c, 0x42, 0x0c, 0x52, - 0x34, 0x0c, 0x87, 0x0f, 0xb0, 0x33, 0x1b, 0xeb, 0xa3, 0x27, 0x39, 0x0b, 0xdd, 0x30, 0xc4, 0xd1, - 0x29, 0x10, 0xe3, 0x26, 0x1a, 0x60, 0xbf, 0xa6, 0xf5, 0x45, 0xd2, 0x60, 0xa3, 0xab, 0xff, 0xda, - 0x25, 0xbf, 0x13, 0x65, 0xe9, 0x5c, 0x11, 0x49, 0x27, 0x2c, 0xcf, 0x59, 0x1b, 0x1b, 0xe5, 0x13, - 0xf2, 0x69, 0x5e, 0x55, 0x03, 0x70, 0xe2, 0x54, 0x20, 0x96, 0xa1, 0xf3, 0xf4, 0xa4, 0xed, 0xac, - 0xea, 0x8e, 0x41, 0x8c, 0xb1, 0x35, 0x71, 0x9e, 0x5e, 0xf2, 0xc1, 0xd5, 0x45, 0x51, 0xf5, 0x44, - 0x72, 0xda, 0xe9, 0x8c, 0x5b, 0xa5, 0xbd, 0x08, 0x2a, 0xd7, 0x13, 0x93, 0x96, 0xdb, 0x5e, 0x8c, - 0xaa, 0x99, 0x5c, 0x86, 0x4e, 0x05, 0x0c, 0x70, 0x9b, 0x38, 0x74, 0x12, 0x87, 0x51, 0xc7, 0xa7, - 0x02, 0xce, 0xe4, 0x2e, 0xc3, 0xc4, 0x79, 0xf0, 0x22, 0x67, 0x5f, 0x42, 0x23, 0x31, 0x51, 0xe0, - 0x61, 0x94, 0x5b, 0x21, 0x6b, 0x4c, 0x5d, 0x34, 0xfa, 0x27, 0x3e, 0x81, 0xba, 0xef, 0xea, 0x8d, - 0x36, 0x5f, 0x42, 0x35, 0xf6, 0xe3, 0xb9, 0xec, 0xfb, 0x32, 0x74, 0xc5, 0xc1, 0xe3, 0xb6, 0x65, - 0x91, 0x9a, 0x27, 0x2e, 0x3a, 0x4f, 0xa3, 0xbe, 0x69, 0xbb, 0xa6, 0x37, 0xa0, 0x1f, 0x99, 0xde, - 0x29, 0x1b, 0xeb, 0xa3, 0x27, 0x68, 0x07, 0x5e, 0x69, 0x50, 0x8c, 0xd0, 0xa6, 0x90, 0x94, 0x2a, - 0x80, 0x46, 0x9a, 0xb6, 0x47, 0xa0, 0x60, 0x36, 0x54, 0x00, 0x28, 0xe8, 0x00, 0x4a, 0x54, 0x80, - 0x90, 0x18, 0x5f, 0x45, 0xbd, 0xf3, 0x74, 0x9d, 0xad, 0xd9, 0x0d, 0xae, 0x7c, 0xb0, 0x14, 0xc0, - 0xda, 0x2b, 0x8e, 0x55, 0x9f, 0x48, 0x9d, 0x42, 0x43, 0xe3, 0x0d, 0x93, 0x58, 0x9e, 0xd8, 0x6a, - 0x3a, 0x92, 0x8b, 0x75, 0x62, 0x79, 0x62, 0xab, 0x61, 0xcc, 0xeb, 0x14, 0x2a, 0xb6, 0x3a, 0x20, - 0x55, 0x7f, 0x37, 0x87, 0xce, 0xdc, 0x6c, 0x2f, 0x12, 0xc7, 0x22, 0x1e, 0x71, 0xf9, 0x82, 0x1c, - 0x70, 0x9d, 0x45, 0x23, 0x31, 0x24, 0xe7, 0x0e, 0x0b, 0xe5, 0x4a, 0x80, 0xac, 0xf2, 0x35, 0x5e, - 0x9c, 0x6d, 0x63, 0x45, 0xf1, 0x14, 0x3a, 0x16, 0x02, 0x69, 0x23, 0x5c, 0x25, 0x0b, 0x4b, 0xc9, - 0x85, 0x8d, 0xf5, 0xd1, 0xb3, 0x02, 0x37, 0xda, 0x6c, 0x51, 0x83, 0xa3, 0xc5, 0xf0, 0x4d, 0x34, - 0x1c, 0x82, 0x6e, 0x38, 0x76, 0xbb, 0xe5, 0x2a, 0x39, 0x60, 0x35, 0xba, 0xb1, 0x3e, 0x7a, 0x9f, - 0xc0, 0xaa, 0x0e, 0x48, 0x71, 0x01, 0x8f, 0x16, 0xc4, 0xdf, 0x9e, 0x11, 0xb9, 0xf1, 0x51, 0x98, - 0x87, 0x51, 0xf8, 0x8c, 0x3f, 0x0a, 0x53, 0x85, 0x74, 0x25, 0x5a, 0x92, 0x0f, 0xca, 0x48, 0x33, - 0x62, 0x83, 0x32, 0x56, 0xe3, 0xd9, 0x71, 0x74, 0x32, 0x91, 0xd7, 0xb6, 0xb4, 0xfa, 0x4f, 0x73, - 0x22, 0x97, 0x79, 0xdb, 0x08, 0x3a, 0x73, 0x4e, 0xec, 0xcc, 0x79, 0xdb, 0x80, 0xa9, 0x3e, 0x13, - 0xae, 0x9d, 0x42, 0x63, 0x5b, 0xb6, 0x11, 0x9d, 0xf5, 0xe3, 0x65, 0xf1, 0x47, 0xd1, 0xa9, 0x18, - 0x90, 0x4d, 0xd7, 0x4c, 0xfb, 0x2f, 0x6e, 0xac, 0x8f, 0xaa, 0x09, 0x5c, 0xa3, 0xb3, 0x77, 0x0a, - 0x17, 0xac, 0xa3, 0xd3, 0x82, 0xd4, 0x6d, 0xcb, 0xd3, 0x4d, 0x8b, 0x1b, 0x97, 0x6c, 0x94, 0xbc, - 0x67, 0x63, 0x7d, 0xf4, 0x41, 0x51, 0x07, 0x7d, 0x9a, 0x68, 0xe3, 0xd3, 0xf8, 0x60, 0x03, 0x29, - 0x09, 0xa8, 0x72, 0x53, 0xaf, 0xfb, 0x16, 0xf3, 0xa5, 0x8d, 0xf5, 0xd1, 0x87, 0x12, 0xeb, 0x30, - 0x29, 0x95, 0xb8, 0x42, 0xa7, 0x71, 0xc2, 0x1a, 0xc2, 0x21, 0x6e, 0xd6, 0x36, 0x08, 0x7c, 0x43, - 0x37, 0xf0, 0x57, 0x37, 0xd6, 0x47, 0x2f, 0x08, 0xfc, 0x2d, 0xdb, 0x20, 0xd1, 0xe6, 0x27, 0x94, - 0x56, 0x7f, 0x2d, 0x87, 0x2e, 0x54, 0x8a, 0x33, 0xd3, 0x65, 0xc3, 0x37, 0x69, 0xe6, 0x1d, 0xfb, - 0xae, 0x69, 0x08, 0xa3, 0x77, 0x11, 0x9d, 0x8e, 0xa0, 0x26, 0xc0, 0x8a, 0x0a, 0x8c, 0x69, 0xf8, - 0x36, 0xdf, 0x5c, 0x6a, 0x71, 0x9a, 0x2a, 0x33, 0xb5, 0xe4, 0x45, 0x3b, 0x8d, 0x11, 0xed, 0xa3, - 0x08, 0xaa, 0xb2, 0x6c, 0x3b, 0x5e, 0xad, 0xed, 0x71, 0x25, 0x80, 0x3e, 0x8a, 0xd5, 0xe1, 0x72, - 0xa2, 0x0e, 0x55, 0xf8, 0x7c, 0xf0, 0x27, 0x33, 0x68, 0xb8, 0xe8, 0x79, 0x8e, 0xb9, 0xd8, 0xf6, - 0xc8, 0x8c, 0xde, 0x6a, 0x99, 0x56, 0x1d, 0xc6, 0x7a, 0xff, 0xb5, 0x17, 0x82, 0x35, 0xb2, 0xa3, - 0x24, 0xae, 0x44, 0x8b, 0x0b, 0x43, 0x54, 0xf7, 0x51, 0xd5, 0x26, 0xc3, 0x89, 0x43, 0x34, 0x5a, - 0x8e, 0x0e, 0xd1, 0x44, 0x5e, 0xdb, 0x1a, 0xa2, 0x9f, 0xcd, 0xa1, 0x73, 0x73, 0x2b, 0x9e, 0xae, - 0x11, 0xd7, 0x6e, 0x3b, 0x35, 0xe2, 0xde, 0x6a, 0x19, 0xba, 0x47, 0xc2, 0x91, 0x3a, 0x8a, 0xba, - 0x8b, 0x86, 0x41, 0x0c, 0x60, 0xd7, 0xcd, 0xb6, 0x7d, 0x3a, 0x05, 0x68, 0x0c, 0x8e, 0x1f, 0x46, - 0x3d, 0xbc, 0x0c, 0x70, 0xef, 0x1e, 0xeb, 0xdf, 0x58, 0x1f, 0xed, 0x69, 0x33, 0x90, 0xe6, 0xe3, - 0x28, 0x59, 0x89, 0x34, 0x08, 0x25, 0xcb, 0x85, 0x64, 0x06, 0x03, 0x69, 0x3e, 0x0e, 0xbf, 0x8a, - 0x86, 0x80, 0x6d, 0xd0, 0x1e, 0x3e, 0xf7, 0x9d, 0xf0, 0xa5, 0x2b, 0x36, 0x96, 0x2d, 0x4d, 0xd0, - 0x9a, 0xaa, 0xe3, 0x17, 0xd0, 0x22, 0x0c, 0xf0, 0x1d, 0x34, 0xcc, 0x1b, 0x11, 0x32, 0xed, 0xee, - 0xc0, 0xf4, 0xe4, 0xc6, 0xfa, 0xe8, 0x08, 0x6f, 0xbf, 0xc0, 0x36, 0xc6, 0x84, 0x32, 0xe6, 0xcd, - 0x0e, 0x19, 0x17, 0x36, 0x63, 0xcc, 0xbf, 0x58, 0x64, 0x1c, 0x65, 0xa2, 0xbe, 0x86, 0x06, 0xc4, - 0x82, 0xf8, 0x14, 0x6c, 0xad, 0xd9, 0x38, 0x81, 0x4d, 0xb9, 0x69, 0xc0, 0x7e, 0xfa, 0x09, 0xd4, - 0x5f, 0x22, 0x6e, 0xcd, 0x31, 0x5b, 0xd4, 0x6a, 0xe0, 0x4a, 0x7e, 0x6c, 0x63, 0x7d, 0xb4, 0xdf, - 0x08, 0xc1, 0x9a, 0x48, 0xa3, 0xfe, 0x8f, 0x0c, 0x3a, 0x45, 0x79, 0x17, 0x5d, 0xd7, 0xac, 0x5b, - 0x4d, 0x71, 0xd9, 0x7e, 0x14, 0x15, 0x2a, 0x50, 0x1f, 0xaf, 0xe9, 0xc4, 0xc6, 0xfa, 0xe8, 0x30, - 0x6b, 0x81, 0xa0, 0x87, 0x9c, 0x26, 0xd8, 0x57, 0x66, 0x37, 0xd9, 0x57, 0x52, 0x93, 0xd6, 0xd3, - 0x1d, 0xcf, 0xb4, 0xea, 0x15, 0x4f, 0xf7, 0xda, 0xae, 0x64, 0xd2, 0x72, 0x4c, 0xd5, 0x05, 0x94, - 0x64, 0xd2, 0x4a, 0x85, 0xf0, 0x4b, 0x68, 0x60, 0xc2, 0x32, 0x42, 0x26, 0x6c, 0x42, 0xbc, 0x8f, - 0x5a, 0x9a, 0x04, 0xe0, 0x71, 0x16, 0x52, 0x01, 0xf5, 0xe7, 0x32, 0x48, 0x61, 0x9b, 0xc0, 0x69, - 0xd3, 0xf5, 0x66, 0x48, 0x73, 0x51, 0x98, 0x9d, 0x26, 0xfd, 0x5d, 0x25, 0xc5, 0x09, 0x6b, 0x11, - 0x98, 0x02, 0x7c, 0x57, 0xd9, 0x30, 0xdd, 0xd8, 0xf6, 0x23, 0x52, 0x0a, 0x97, 0x51, 0x0f, 0xe3, - 0xcc, 0x6c, 0x89, 0xfe, 0x6b, 0x8a, 0xaf, 0x08, 0xd1, 0xaa, 0x99, 0x32, 0x34, 0x19, 0xb1, 0xb8, - 0xa1, 0xe1, 0xe5, 0xd5, 0x5f, 0xc8, 0xa2, 0xe1, 0x68, 0x21, 0x7c, 0x07, 0xf5, 0xbe, 0x62, 0x9b, - 0x16, 0x31, 0xe6, 0x2c, 0x68, 0x61, 0xe7, 0xc3, 0x11, 0xdf, 0x16, 0x3f, 0xfe, 0x3a, 0x94, 0xa9, - 0x8a, 0x16, 0x2c, 0x9c, 0x95, 0x04, 0xcc, 0xf0, 0x07, 0x51, 0x1f, 0xb5, 0x01, 0xef, 0x02, 0xe7, - 0xec, 0xa6, 0x9c, 0xef, 0xe7, 0x9c, 0x4f, 0x38, 0xac, 0x50, 0x9c, 0x75, 0xc8, 0x8e, 0xea, 0x95, - 0x46, 0x74, 0xd7, 0xb6, 0x78, 0xcf, 0x83, 0x5e, 0x39, 0x00, 0x11, 0xf5, 0x8a, 0xd1, 0x50, 0xd3, - 0x95, 0x7d, 0x2c, 0x74, 0x83, 0xb0, 0x77, 0x61, 0xb2, 0x8a, 0xf6, 0x80, 0x40, 0xac, 0x7e, 0x67, - 0x16, 0x3d, 0x16, 0x8a, 0x4c, 0x23, 0x77, 0x4d, 0xb2, 0xca, 0xc5, 0xb9, 0x6c, 0xb6, 0xf8, 0x9e, - 0x95, 0xaa, 0xbc, 0x3b, 0xbe, 0xac, 0x5b, 0x75, 0x62, 0xe0, 0xcb, 0xa8, 0x5b, 0xb3, 0x1b, 0xc4, - 0x55, 0x32, 0x60, 0xae, 0xc1, 0x74, 0xe2, 0x50, 0x80, 0x78, 0xe8, 0x01, 0x14, 0xd8, 0x46, 0x85, - 0x05, 0x47, 0x37, 0x3d, 0xbf, 0x67, 0x8b, 0xf1, 0x9e, 0xdd, 0x42, 0x8d, 0x57, 0x18, 0x0f, 0x36, - 0xe7, 0x83, 0x20, 0x3c, 0x00, 0x88, 0x82, 0x60, 0x24, 0x67, 0x9f, 0x45, 0xfd, 0x02, 0xf1, 0xb6, - 0x26, 0xf5, 0x2f, 0xe5, 0x45, 0x5d, 0xf7, 0x9b, 0xc5, 0x75, 0xfd, 0x2a, 0xd5, 0x51, 0xd7, 0xa5, - 0x56, 0x05, 0x53, 0x72, 0xae, 0x89, 0x00, 0x92, 0x35, 0x11, 0x40, 0xf8, 0x49, 0xd4, 0xcb, 0x58, - 0x04, 0xfb, 0x57, 0xd8, 0xfb, 0x3a, 0x00, 0x93, 0x97, 0xe6, 0x80, 0x10, 0xff, 0x4c, 0x06, 0x9d, - 0xef, 0x28, 0x09, 0x50, 0x86, 0xfe, 0x6b, 0x4f, 0xed, 0x48, 0x8c, 0x63, 0x8f, 0x6d, 0xac, 0x8f, - 0x5e, 0x6e, 0x06, 0x24, 0x55, 0x47, 0xa0, 0xa9, 0xd6, 0x18, 0x91, 0xd0, 0xae, 0xce, 0x4d, 0xa1, - 0xc6, 0x23, 0xab, 0x74, 0x12, 0x8e, 0x8e, 0xac, 0xda, 0x9a, 0xdf, 0xc8, 0x7c, 0x68, 0x3c, 0xf2, - 0xef, 0x5d, 0xf2, 0x49, 0x12, 0xaa, 0x49, 0xe1, 0x82, 0x6b, 0xe8, 0x34, 0xc3, 0x94, 0xf4, 0xb5, - 0xb9, 0xa5, 0x19, 0xdb, 0xf2, 0x96, 0xfd, 0x0a, 0xba, 0xc5, 0xb3, 0x17, 0xa8, 0xc0, 0xd0, 0xd7, - 0xaa, 0xf6, 0x52, 0xb5, 0x49, 0xa9, 0x12, 0xea, 0x48, 0xe3, 0x44, 0x27, 0x5a, 0x3e, 0xe6, 0xfc, - 0x29, 0xa8, 0x10, 0x9e, 0x8c, 0xf9, 0xe3, 0x34, 0x3e, 0xe1, 0x44, 0x0a, 0xa9, 0x65, 0x34, 0x30, - 0x6d, 0xd7, 0x56, 0x02, 0x75, 0x79, 0x16, 0x15, 0x16, 0x74, 0xa7, 0x4e, 0x3c, 0x90, 0x45, 0xff, - 0xb5, 0x91, 0x2b, 0xec, 0xb4, 0x99, 0x12, 0x31, 0xc4, 0xd8, 0x10, 0x9f, 0x0d, 0x0a, 0x1e, 0xfc, - 0xd6, 0x78, 0x01, 0xf5, 0x6b, 0xdd, 0x68, 0x80, 0x9f, 0x8c, 0xc2, 0x6c, 0x8e, 0x9f, 0x0b, 0xcf, - 0x9a, 0xf9, 0xf4, 0x15, 0x9c, 0x0e, 0x05, 0xa7, 0x5a, 0x03, 0x94, 0xd9, 0xef, 0xad, 0x8f, 0x66, - 0x36, 0xd6, 0x47, 0xbb, 0xb4, 0x5e, 0x61, 0x53, 0x19, 0xae, 0x37, 0xc2, 0x02, 0x2b, 0x9e, 0x75, - 0x46, 0xca, 0xb2, 0xf5, 0xe7, 0x25, 0xd4, 0xc3, 0xdb, 0xc0, 0x35, 0xee, 0x74, 0x78, 0x96, 0x21, - 0x9d, 0xf0, 0x46, 0x4a, 0xfb, 0xa5, 0xf0, 0x0b, 0xa8, 0xc0, 0xf6, 0xf6, 0x5c, 0x00, 0xa7, 0x92, - 0xcf, 0x42, 0x22, 0xc5, 0x79, 0x19, 0x3c, 0x85, 0x50, 0xb8, 0xaf, 0x0f, 0x0e, 0xb4, 0x39, 0x87, - 0xf8, 0x8e, 0x3f, 0xc2, 0x45, 0x28, 0x8b, 0x9f, 0x46, 0x03, 0x0b, 0xc4, 0x69, 0x9a, 0x96, 0xde, - 0xa8, 0x98, 0x6f, 0xf8, 0x67, 0xda, 0xb0, 0xf0, 0xba, 0xe6, 0x1b, 0xe2, 0xc8, 0x95, 0xe8, 0xf0, - 0x47, 0x92, 0xf6, 0xcd, 0x3d, 0xd0, 0x90, 0x07, 0x36, 0xdd, 0x50, 0x46, 0xda, 0x93, 0xb0, 0x8d, - 0x7e, 0x15, 0x0d, 0x4a, 0x5b, 0x26, 0x7e, 0x68, 0x79, 0x3e, 0xce, 0x5a, 0xd8, 0xff, 0x45, 0xd8, - 0xca, 0x1c, 0xa8, 0x26, 0x97, 0x2d, 0xd3, 0x33, 0xf5, 0xc6, 0xb8, 0xdd, 0x6c, 0xea, 0x96, 0xa1, - 0xf4, 0x85, 0x9a, 0x6c, 0x32, 0x4c, 0xb5, 0xc6, 0x50, 0xa2, 0x26, 0xcb, 0x85, 0xe8, 0xb6, 0x9c, - 0xf7, 0xa1, 0x46, 0x6a, 0xb6, 0x43, 0x6d, 0x01, 0x38, 0x93, 0xe4, 0xdb, 0x72, 0x97, 0xe1, 0xaa, - 0x8e, 0x8f, 0x14, 0x8d, 0xed, 0x68, 0xc1, 0x57, 0xf2, 0xbd, 0xfd, 0xc3, 0x03, 0xd1, 0x63, 0x64, - 0xf5, 0xa7, 0x73, 0xa8, 0x9f, 0x93, 0xd2, 0xa5, 0xf4, 0x48, 0xc1, 0x77, 0xa3, 0xe0, 0x89, 0x8a, - 0x5a, 0xd8, 0x2b, 0x45, 0x55, 0xdf, 0xcc, 0x06, 0xb3, 0xd1, 0xbc, 0x63, 0x5a, 0xbb, 0x9b, 0x8d, - 0x2e, 0x22, 0x34, 0xbe, 0xdc, 0xb6, 0x56, 0xd8, 0x75, 0x59, 0x36, 0xbc, 0x2e, 0xab, 0x99, 0x9a, - 0x80, 0xc1, 0xe7, 0x51, 0xbe, 0x44, 0xf9, 0xd3, 0x9e, 0x19, 0x18, 0xeb, 0x7b, 0x8b, 0x71, 0xca, - 0x3c, 0xa6, 0x01, 0x98, 0x6e, 0xae, 0xc6, 0xd6, 0x3c, 0xc2, 0xcc, 0xd9, 0x1c, 0xdb, 0x5c, 0x2d, - 0x52, 0x80, 0xc6, 0xe0, 0xf8, 0x3a, 0x1a, 0x29, 0x91, 0x86, 0xbe, 0x36, 0x63, 0x36, 0x1a, 0xa6, - 0x4b, 0x6a, 0xb6, 0x65, 0xb8, 0x20, 0x64, 0x5e, 0x5d, 0xd3, 0xd5, 0xe2, 0x04, 0x58, 0x45, 0x85, - 0xb9, 0xa5, 0x25, 0x97, 0x78, 0x20, 0xbe, 0xdc, 0x18, 0xa2, 0x93, 0xb3, 0x0d, 0x10, 0x8d, 0x63, - 0xd4, 0x2f, 0x64, 0xe8, 0xee, 0xc5, 0x5d, 0xf1, 0xec, 0x56, 0xa0, 0xe5, 0xbb, 0x12, 0xc9, 0xe5, - 0xd0, 0xae, 0xc8, 0xc2, 0xd7, 0x1e, 0xe3, 0x5f, 0xdb, 0xc3, 0x6d, 0x8b, 0xd0, 0xa2, 0x48, 0xfc, - 0xaa, 0xdc, 0x26, 0x5f, 0xa5, 0xfe, 0x59, 0x16, 0x9d, 0xe6, 0x2d, 0x1e, 0x6f, 0x98, 0xad, 0x45, - 0x5b, 0x77, 0x0c, 0x8d, 0xd4, 0x88, 0x79, 0x97, 0x1c, 0xcc, 0x81, 0x27, 0x0f, 0x9d, 0xfc, 0x2e, - 0x86, 0xce, 0x35, 0xd8, 0x08, 0x52, 0xc9, 0xc0, 0x81, 0x2f, 0x33, 0x2a, 0x86, 0x37, 0xd6, 0x47, - 0x07, 0x0c, 0x06, 0x86, 0x23, 0x7f, 0x4d, 0x24, 0xa2, 0x4a, 0x32, 0x4d, 0xac, 0xba, 0xb7, 0x0c, - 0x4a, 0xd2, 0xcd, 0x94, 0xa4, 0x01, 0x10, 0x8d, 0x63, 0xd4, 0xff, 0x92, 0x45, 0x27, 0xa2, 0x22, - 0xaf, 0x10, 0xcb, 0x38, 0x92, 0xf7, 0xdb, 0x23, 0xef, 0x6f, 0xe4, 0xd0, 0x7d, 0xbc, 0x4c, 0x65, - 0x59, 0x77, 0x88, 0x51, 0x32, 0x1d, 0x52, 0xf3, 0x6c, 0x67, 0xed, 0x00, 0x1b, 0x50, 0x7b, 0x27, - 0xf6, 0xeb, 0xa8, 0xc0, 0xb7, 0xff, 0x6c, 0x9d, 0x19, 0x0a, 0x5a, 0x02, 0xd0, 0xd8, 0x0a, 0xc5, - 0x8e, 0x0e, 0x22, 0x9d, 0x55, 0xd8, 0x4a, 0x67, 0xbd, 0x0f, 0x0d, 0x06, 0xa2, 0x87, 0x8d, 0x68, - 0x4f, 0x68, 0x6d, 0x19, 0x3e, 0x02, 0xf6, 0xa2, 0x9a, 0x4c, 0x08, 0xb5, 0xf9, 0x80, 0x72, 0x09, - 0xac, 0xa1, 0x41, 0x5e, 0x5b, 0x50, 0xce, 0x34, 0x34, 0x91, 0x48, 0x5d, 0xcf, 0xa3, 0xb3, 0xc9, - 0xdd, 0xae, 0x11, 0xdd, 0x38, 0xea, 0xf5, 0x77, 0x65, 0xaf, 0xe3, 0x07, 0x50, 0x7e, 0x5e, 0xf7, - 0x96, 0xf9, 0xf5, 0x3b, 0xdc, 0x09, 0x2f, 0x99, 0x0d, 0x52, 0x6d, 0xe9, 0xde, 0xb2, 0x06, 0x28, - 0x61, 0xce, 0x40, 0xc0, 0x31, 0x61, 0xce, 0x10, 0x16, 0xfb, 0xfe, 0xfb, 0x33, 0x97, 0xf2, 0x89, - 0x8b, 0xfd, 0xd7, 0xf2, 0x69, 0xf3, 0xca, 0x1d, 0xc7, 0xf4, 0xc8, 0x91, 0x86, 0x1d, 0x69, 0xd8, - 0x2e, 0x35, 0xec, 0x0f, 0xb2, 0x68, 0x30, 0xd8, 0x34, 0xbd, 0x4e, 0x6a, 0xfb, 0xb3, 0x56, 0x85, - 0x5b, 0x99, 0xdc, 0xae, 0xb7, 0x32, 0xbb, 0x51, 0x28, 0x35, 0x38, 0xf2, 0x64, 0xa6, 0x01, 0x48, - 0x8c, 0x1d, 0x79, 0x06, 0x07, 0x9d, 0x0f, 0xa0, 0x9e, 0x19, 0xfd, 0x9e, 0xd9, 0x6c, 0x37, 0xb9, - 0x95, 0x0e, 0xee, 0x64, 0x4d, 0xfd, 0x9e, 0xe6, 0xc3, 0xd5, 0x7f, 0x9d, 0x41, 0x43, 0x5c, 0xa8, - 0x9c, 0xf9, 0xae, 0xa4, 0x1a, 0x4a, 0x27, 0xbb, 0x6b, 0xe9, 0xe4, 0x76, 0x2e, 0x1d, 0xf5, 0x47, - 0x72, 0x48, 0x99, 0x34, 0x1b, 0x64, 0xc1, 0xd1, 0x2d, 0x77, 0x89, 0x38, 0x7c, 0x3b, 0x3d, 0x41, - 0x59, 0xed, 0xea, 0x03, 0x85, 0x29, 0x25, 0xbb, 0xa3, 0x29, 0xe5, 0xbd, 0xa8, 0x8f, 0x37, 0x26, - 0x70, 0x65, 0x84, 0x51, 0xe3, 0xf8, 0x40, 0x2d, 0xc4, 0x53, 0xe2, 0x62, 0xab, 0xe5, 0xd8, 0x77, - 0x89, 0xc3, 0x6e, 0xa9, 0x38, 0xb1, 0xee, 0x03, 0xb5, 0x10, 0x2f, 0x70, 0x26, 0xbe, 0xbd, 0x28, - 0x72, 0x26, 0x8e, 0x16, 0xe2, 0xf1, 0x25, 0xd4, 0x3b, 0x6d, 0xd7, 0x74, 0x10, 0x34, 0x9b, 0x56, - 0x06, 0x36, 0xd6, 0x47, 0x7b, 0x1b, 0x1c, 0xa6, 0x05, 0x58, 0x4a, 0x59, 0xb2, 0x57, 0xad, 0x86, - 0xad, 0x33, 0xe7, 0x97, 0x5e, 0x46, 0x69, 0x70, 0x98, 0x16, 0x60, 0x29, 0x25, 0x95, 0x39, 0x38, - 0x15, 0xf5, 0x86, 0x3c, 0x97, 0x38, 0x4c, 0x0b, 0xb0, 0xea, 0x17, 0xf2, 0x54, 0x7b, 0x5d, 0xf3, - 0x8d, 0x43, 0xbf, 0x2e, 0x84, 0x03, 0xa6, 0x7b, 0x07, 0x03, 0xe6, 0xd0, 0x1c, 0xd8, 0xa9, 0x7f, - 0xde, 0x83, 0x10, 0x97, 0xfe, 0xc4, 0xd1, 0xe6, 0x70, 0x77, 0x5a, 0x53, 0x42, 0x23, 0x13, 0xd6, - 0xb2, 0x6e, 0xd5, 0x88, 0x11, 0x1e, 0x5b, 0x16, 0x60, 0x68, 0x83, 0x13, 0x24, 0xe1, 0xc8, 0xf0, - 0xdc, 0x52, 0x8b, 0x17, 0xc0, 0x4f, 0xa0, 0xfe, 0xb2, 0xe5, 0x11, 0x47, 0xaf, 0x79, 0xe6, 0x5d, - 0xc2, 0xa7, 0x06, 0xb8, 0x19, 0x36, 0x43, 0xb0, 0x26, 0xd2, 0xe0, 0xeb, 0x68, 0x60, 0x5e, 0x77, - 0x3c, 0xb3, 0x66, 0xb6, 0x74, 0xcb, 0x73, 0x95, 0x5e, 0x98, 0xd1, 0xc0, 0xc2, 0x68, 0x09, 0x70, - 0x4d, 0xa2, 0xc2, 0x1f, 0x41, 0x7d, 0xb0, 0x35, 0x05, 0x7f, 0xed, 0xbe, 0x4d, 0x2f, 0x0e, 0x1f, - 0x0c, 0xdd, 0x03, 0xd9, 0xe9, 0x2b, 0xdc, 0x00, 0x47, 0xef, 0x0e, 0x03, 0x8e, 0xf8, 0x03, 0xa8, - 0x67, 0xc2, 0x32, 0x80, 0x39, 0xda, 0x94, 0xb9, 0xca, 0x99, 0x9f, 0x0a, 0x99, 0xdb, 0xad, 0x08, - 0x6f, 0x9f, 0x5d, 0xf2, 0x28, 0xeb, 0x7f, 0xfb, 0x46, 0xd9, 0xc0, 0xdb, 0x70, 0x2c, 0x3e, 0xb8, - 0x57, 0xc7, 0xe2, 0x43, 0x3b, 0x3c, 0x16, 0x57, 0xdf, 0x40, 0xfd, 0x63, 0xf3, 0x93, 0xc1, 0xe8, - 0x3d, 0x83, 0x72, 0xf3, 0xdc, 0x53, 0x21, 0xcf, 0xec, 0x99, 0x96, 0x69, 0x68, 0x14, 0x86, 0x2f, - 0xa3, 0xde, 0x71, 0x70, 0x7f, 0xe3, 0xb7, 0x88, 0x79, 0xb6, 0xfe, 0xd5, 0x00, 0x06, 0x5e, 0xb0, - 0x3e, 0x1a, 0x3f, 0x8c, 0x7a, 0xe6, 0x1d, 0xbb, 0xee, 0xe8, 0x4d, 0xbe, 0x06, 0x83, 0xab, 0x48, - 0x8b, 0x81, 0x34, 0x1f, 0xa7, 0x7e, 0x6f, 0xc6, 0x37, 0xdb, 0x69, 0x89, 0x4a, 0x1b, 0x8e, 0xe6, - 0xa1, 0xee, 0x5e, 0x56, 0xc2, 0x65, 0x20, 0xcd, 0xc7, 0xe1, 0xcb, 0xa8, 0x7b, 0xc2, 0x71, 0x6c, - 0x47, 0xf4, 0x71, 0x27, 0x14, 0x20, 0x5e, 0xf7, 0x02, 0x05, 0x7e, 0x06, 0xf5, 0xb3, 0x39, 0x87, - 0x9d, 0x68, 0xe6, 0x3a, 0xdd, 0x94, 0x8a, 0x94, 0xea, 0x57, 0x72, 0x82, 0xcd, 0xc6, 0x24, 0x7e, - 0x08, 0x6f, 0x05, 0x9e, 0x44, 0xb9, 0xb1, 0xf9, 0x49, 0x3e, 0x01, 0x1e, 0xf7, 0x8b, 0x0a, 0xaa, - 0x12, 0x29, 0x47, 0xa9, 0xf1, 0x39, 0x94, 0x9f, 0xa7, 0xea, 0x53, 0x00, 0xf5, 0xe8, 0xdd, 0x58, - 0x1f, 0xcd, 0xb7, 0xa8, 0xfe, 0x00, 0x14, 0xb0, 0x74, 0x33, 0xc3, 0x76, 0x4c, 0x0c, 0x1b, 0xee, - 0x63, 0xce, 0xa1, 0x7c, 0xd1, 0xa9, 0xdf, 0xe5, 0xb3, 0x16, 0x60, 0x75, 0xa7, 0x7e, 0x57, 0x03, - 0x28, 0xbe, 0x8a, 0x90, 0x46, 0xbc, 0xb6, 0x63, 0xc1, 0xf3, 0x93, 0x3e, 0x38, 0x7f, 0x83, 0xd9, - 0xd0, 0x01, 0x68, 0xb5, 0x66, 0x1b, 0x44, 0x13, 0x48, 0xd4, 0x9f, 0x0c, 0x2f, 0x76, 0x4a, 0xa6, - 0xbb, 0x72, 0xd4, 0x85, 0xdb, 0xe8, 0x42, 0x9d, 0x1f, 0x71, 0xc6, 0x3b, 0x69, 0x14, 0x75, 0x4f, - 0x36, 0xf4, 0xba, 0x0b, 0x7d, 0xc8, 0x7d, 0xc9, 0x96, 0x28, 0x40, 0x63, 0xf0, 0x48, 0x3f, 0xf5, - 0x6e, 0xde, 0x4f, 0x9f, 0xeb, 0x0e, 0x46, 0xdb, 0x2c, 0xf1, 0x56, 0x6d, 0xe7, 0xa8, 0xab, 0xb6, - 0xda, 0x55, 0x17, 0x51, 0x4f, 0xc5, 0xa9, 0x09, 0x47, 0x17, 0xb0, 0x1f, 0x70, 0x9d, 0x1a, 0x3b, - 0xb6, 0xf0, 0x91, 0x94, 0xae, 0xe4, 0x7a, 0x40, 0xd7, 0x13, 0xd2, 0x19, 0xae, 0xc7, 0xe9, 0x38, - 0x92, 0xd3, 0xcd, 0xdb, 0x8e, 0xc7, 0x3b, 0x2e, 0xa0, 0x6b, 0xd9, 0x8e, 0xa7, 0xf9, 0x48, 0xfc, - 0x5e, 0x84, 0x16, 0xc6, 0xe7, 0x7d, 0x67, 0xfb, 0xbe, 0xd0, 0x17, 0x90, 0x7b, 0xd9, 0x6b, 0x02, - 0x1a, 0x2f, 0xa0, 0xbe, 0xb9, 0x16, 0x71, 0xd8, 0x56, 0x88, 0x3d, 0x28, 0x79, 0x4f, 0x44, 0xb4, - 0xbc, 0xdf, 0xaf, 0xf0, 0xff, 0x03, 0x72, 0xb6, 0xbe, 0xd8, 0xfe, 0x4f, 0x2d, 0x64, 0x84, 0x9f, - 0x41, 0x85, 0x22, 0xb3, 0xf3, 0xfa, 0x81, 0x65, 0x20, 0x32, 0xd8, 0x82, 0x32, 0x14, 0xdb, 0xb3, - 0xeb, 0xf0, 0xb7, 0xc6, 0xc9, 0xd5, 0xcb, 0x68, 0x38, 0x5a, 0x0d, 0xee, 0x47, 0x3d, 0xe3, 0x73, - 0xb3, 0xb3, 0x13, 0xe3, 0x0b, 0xc3, 0x5d, 0xb8, 0x17, 0xe5, 0x2b, 0x13, 0xb3, 0xa5, 0xe1, 0x8c, - 0xfa, 0xb3, 0xc2, 0x0c, 0x42, 0x55, 0xeb, 0xe8, 0x6a, 0x78, 0x57, 0xf7, 0x2d, 0xc3, 0x70, 0x1f, - 0x0a, 0x27, 0x06, 0x4d, 0xd3, 0xf3, 0x88, 0xc1, 0x57, 0x09, 0xb8, 0x2f, 0xf4, 0xee, 0x69, 0x31, - 0x3c, 0x7e, 0x14, 0x0d, 0x02, 0x8c, 0x5f, 0x11, 0xb2, 0xfd, 0x31, 0x2f, 0xe0, 0xdc, 0xd3, 0x64, - 0xa4, 0xfa, 0xd5, 0xf0, 0x76, 0x78, 0x9a, 0xe8, 0x07, 0xf5, 0x46, 0xf1, 0x1d, 0xd2, 0x5f, 0xea, - 0x5f, 0xe6, 0xd9, 0x13, 0x10, 0xf6, 0x5e, 0x70, 0x3f, 0x44, 0x19, 0x1e, 0xe9, 0xe6, 0xb6, 0x71, - 0xa4, 0xfb, 0x28, 0x2a, 0xcc, 0x10, 0x6f, 0xd9, 0xf6, 0x1d, 0xbf, 0xc0, 0x43, 0xaf, 0x09, 0x10, - 0xd1, 0x43, 0x8f, 0xd1, 0xe0, 0x15, 0x84, 0xfd, 0xc7, 0x80, 0x81, 0x23, 0xb6, 0x7f, 0x84, 0x7c, - 0x3a, 0xb6, 0x4f, 0xa9, 0xc0, 0x4b, 0x60, 0xf0, 0xb1, 0x3f, 0x11, 0x38, 0x7a, 0x0b, 0x9e, 0x58, - 0x7f, 0xb1, 0x3e, 0x5a, 0x60, 0x34, 0x5a, 0x02, 0x5b, 0xfc, 0x2a, 0xea, 0x9b, 0x99, 0x2c, 0xf2, - 0x87, 0x81, 0xcc, 0x2b, 0xe2, 0x4c, 0x20, 0x45, 0x1f, 0x11, 0x88, 0x04, 0xde, 0xdb, 0x34, 0x97, - 0xf4, 0xf8, 0xbb, 0xc0, 0x90, 0x0b, 0xd5, 0x16, 0xf6, 0x72, 0x87, 0x9f, 0x2e, 0x04, 0xda, 0x22, - 0xbf, 0xe7, 0x89, 0xca, 0x8a, 0x61, 0x23, 0xda, 0xd2, 0xbb, 0x8b, 0xd1, 0x3d, 0x87, 0x46, 0x8a, - 0xad, 0x56, 0xc3, 0x24, 0x06, 0xe8, 0x8b, 0xd6, 0x6e, 0x10, 0x97, 0xbb, 0xfc, 0xc0, 0x63, 0x10, - 0x9d, 0x21, 0xab, 0xf0, 0x1c, 0xb5, 0xea, 0xb4, 0x65, 0xff, 0xcc, 0x78, 0x59, 0xf5, 0xfb, 0xb3, - 0xe8, 0xd4, 0xb8, 0x43, 0x74, 0x8f, 0xcc, 0x4c, 0x16, 0x8b, 0x6d, 0xf0, 0x91, 0x6b, 0x34, 0x88, - 0x55, 0xdf, 0x9f, 0x61, 0xfd, 0x3c, 0x1a, 0x0a, 0x1a, 0x50, 0xa9, 0xd9, 0x2d, 0x22, 0x3e, 0xac, - 0xaa, 0xf9, 0x98, 0xaa, 0x4b, 0x51, 0x5a, 0x84, 0x14, 0xdf, 0x44, 0xc7, 0x03, 0x48, 0xb1, 0xd1, - 0xb0, 0x57, 0x35, 0xd2, 0x76, 0x99, 0x63, 0x6c, 0x2f, 0x73, 0x8c, 0x0d, 0x39, 0xe8, 0x14, 0x5f, - 0x75, 0x28, 0x81, 0x96, 0x54, 0x4a, 0xfd, 0x7c, 0x0e, 0x9d, 0xbe, 0xad, 0x37, 0x4c, 0x23, 0x14, - 0x8d, 0x46, 0xdc, 0x96, 0x6d, 0xb9, 0xe4, 0x00, 0x8d, 0x52, 0x69, 0x28, 0xe4, 0xf7, 0x64, 0x28, - 0xc4, 0xbb, 0xa8, 0x7b, 0xd7, 0x5d, 0x54, 0xd8, 0x51, 0x17, 0xfd, 0xe7, 0x0c, 0x1a, 0xf6, 0x1d, - 0xff, 0xc5, 0x47, 0xdc, 0x82, 0x57, 0x3a, 0x1c, 0x21, 0x46, 0xfc, 0xa0, 0x01, 0x8f, 0x2b, 0xa8, - 0x67, 0xe2, 0x5e, 0xcb, 0x74, 0x88, 0xbb, 0x05, 0x27, 0xee, 0xf3, 0xfc, 0xb8, 0x64, 0x84, 0xb0, - 0x22, 0xb1, 0x93, 0x12, 0x06, 0x86, 0xe7, 0x7c, 0xec, 0xe9, 0xc3, 0x98, 0xff, 0x32, 0x9d, 0x3d, - 0xe7, 0xe3, 0x4f, 0x24, 0xa4, 0xf7, 0x99, 0x21, 0x29, 0x7e, 0x10, 0xe5, 0x16, 0x16, 0xa6, 0xf9, - 0x4c, 0x0a, 0x11, 0x01, 0x3c, 0x4f, 0x7c, 0xaf, 0x48, 0xb1, 0xea, 0x1f, 0x67, 0x11, 0xa2, 0xaa, - 0xc0, 0x86, 0xeb, 0xbe, 0x28, 0xe1, 0x18, 0xea, 0xf5, 0x05, 0xce, 0xd5, 0x30, 0xf0, 0xda, 0x8f, - 0x76, 0x44, 0xb4, 0xee, 0xe0, 0x85, 0xc6, 0xa8, 0xef, 0x48, 0xce, 0xee, 0x01, 0x60, 0x67, 0x03, - 0x8e, 0xe4, 0xbe, 0xfb, 0xf8, 0x7b, 0x51, 0x1f, 0x9f, 0xf1, 0x6c, 0xe9, 0xfc, 0xbf, 0xe6, 0x03, - 0xb5, 0x10, 0x1f, 0x99, 0x5a, 0x0b, 0xbb, 0x58, 0x88, 0x7d, 0xf1, 0xb2, 0x5e, 0x39, 0x12, 0xef, - 0x1e, 0x8b, 0xf7, 0xd3, 0x5c, 0xbc, 0xec, 0x05, 0xcf, 0x81, 0x15, 0xef, 0x9e, 0x9d, 0x7d, 0xab, - 0x7f, 0x90, 0x41, 0x98, 0x36, 0x6b, 0x5e, 0x77, 0xdd, 0x55, 0xdb, 0x31, 0x98, 0x73, 0xfa, 0xbe, - 0x08, 0x66, 0xef, 0xee, 0x2b, 0xbf, 0xd2, 0x8b, 0x8e, 0x4b, 0x8e, 0xbf, 0x07, 0x7c, 0xb2, 0xba, - 0x2c, 0x8f, 0xa6, 0x4e, 0xaf, 0x5e, 0x1e, 0x12, 0x2f, 0x44, 0xbb, 0xa5, 0x07, 0x68, 0xc2, 0x4d, - 0xe8, 0x63, 0x68, 0x80, 0xff, 0xa0, 0x2b, 0xb4, 0x7f, 0xd3, 0x05, 0xa3, 0xd4, 0xa5, 0x00, 0x4d, - 0x42, 0xe3, 0xa7, 0x50, 0x1f, 0x1d, 0x30, 0x75, 0x08, 0x1e, 0xd2, 0x13, 0xbe, 0x28, 0x31, 0x7c, - 0xa0, 0xb8, 0x9e, 0x04, 0x94, 0xc2, 0x3b, 0xa2, 0xde, 0x2d, 0xbc, 0x23, 0xfa, 0x28, 0xea, 0x2f, - 0x5a, 0x96, 0xed, 0xc1, 0x26, 0xdd, 0xe5, 0x57, 0x13, 0xa9, 0x56, 0xf9, 0x83, 0xf0, 0x38, 0x3e, - 0xa4, 0x4f, 0x34, 0xcb, 0x45, 0x86, 0xf8, 0x9a, 0xff, 0x2a, 0x86, 0x38, 0xdc, 0xab, 0x1c, 0xae, - 0x67, 0x1c, 0x0e, 0x8b, 0x3f, 0x8a, 0x81, 0xce, 0x1b, 0x9c, 0x77, 0xec, 0x96, 0xed, 0x12, 0x83, - 0x09, 0xaa, 0x3f, 0x0c, 0x35, 0xd0, 0xe2, 0x08, 0x78, 0xc7, 0x26, 0x05, 0xf2, 0x90, 0x8a, 0xe0, - 0x25, 0x74, 0xc2, 0xbf, 0x28, 0x0e, 0x5e, 0x0c, 0x96, 0x4b, 0xae, 0x32, 0x00, 0xaf, 0x92, 0x70, - 0x54, 0x19, 0xca, 0xa5, 0xb1, 0x0b, 0xfe, 0xb5, 0x88, 0xff, 0xe4, 0xb0, 0x6a, 0x1a, 0x62, 0x57, - 0x27, 0xf2, 0xc3, 0xdf, 0x82, 0xfa, 0x67, 0xf4, 0x7b, 0xa5, 0x36, 0x3f, 0x7b, 0x19, 0xdc, 0xfa, - 0xed, 0x4b, 0x53, 0xbf, 0x57, 0x35, 0x78, 0xb9, 0x88, 0x4d, 0x21, 0xb2, 0xc4, 0x55, 0x74, 0x6a, - 0xde, 0xb1, 0x9b, 0xb6, 0x47, 0x8c, 0xc8, 0xe3, 0xbb, 0x63, 0xe1, 0x6b, 0xdd, 0x16, 0xa7, 0xa8, - 0x76, 0x78, 0x85, 0x97, 0xc2, 0x06, 0x37, 0xd1, 0xb1, 0xa2, 0xeb, 0xb6, 0x9b, 0x24, 0xbc, 0xa1, - 0x1a, 0xde, 0xf4, 0x33, 0xde, 0xc3, 0xbd, 0x96, 0xef, 0xd3, 0xa1, 0x28, 0xbb, 0xa0, 0xaa, 0x7a, - 0xa6, 0x58, 0x23, 0x7c, 0x4b, 0x94, 0xf7, 0x2b, 0xf9, 0xde, 0xa1, 0xe1, 0x63, 0xda, 0xe9, 0x78, - 0x63, 0x16, 0x4c, 0xaf, 0x41, 0xd4, 0x2f, 0x67, 0x10, 0x0a, 0x05, 0x8c, 0x1f, 0x93, 0x23, 0x14, - 0x65, 0xc2, 0x8b, 0x0e, 0x1e, 0xbd, 0x40, 0x0a, 0x49, 0x84, 0xcf, 0xa1, 0x3c, 0x44, 0xb8, 0xc8, - 0x86, 0x07, 0xab, 0x2b, 0xa6, 0x65, 0x68, 0x00, 0xa5, 0x58, 0xe1, 0x29, 0x3a, 0x60, 0xe1, 0x52, - 0x9f, 0x59, 0x85, 0x25, 0x74, 0xac, 0xd2, 0x5e, 0xf4, 0xeb, 0x16, 0xde, 0xd5, 0x41, 0xa0, 0x0d, - 0xb7, 0xbd, 0x18, 0x3c, 0x46, 0x95, 0xc2, 0x98, 0xc8, 0x45, 0xd4, 0x2f, 0x64, 0x22, 0xb3, 0xe0, - 0x3e, 0x2e, 0x7a, 0x0f, 0xc5, 0xfd, 0x34, 0xe2, 0xd3, 0x92, 0xfa, 0xa3, 0x59, 0xd4, 0x3f, 0x6f, - 0x3b, 0x1e, 0x0f, 0x19, 0x72, 0xb0, 0x57, 0x21, 0x61, 0xaf, 0x94, 0xdf, 0xc6, 0x5e, 0xe9, 0x1c, - 0xca, 0x0b, 0x2e, 0xca, 0xec, 0x5e, 0xc4, 0x30, 0x1c, 0x0d, 0xa0, 0xea, 0xb7, 0x66, 0x11, 0xfa, - 0xc0, 0x13, 0x4f, 0x1c, 0x62, 0x01, 0xa9, 0x3f, 0x9c, 0x41, 0xc7, 0xf8, 0x45, 0x9d, 0x10, 0xeb, - 0xab, 0xc7, 0xbf, 0x62, 0x15, 0xc7, 0x25, 0x03, 0x69, 0x3e, 0x8e, 0x2e, 0x01, 0x13, 0xf7, 0x4c, - 0x0f, 0xee, 0x2a, 0x84, 0x60, 0x5f, 0x84, 0xc3, 0xc4, 0x25, 0xc0, 0xa7, 0xc3, 0x8f, 0xf9, 0x57, - 0x90, 0xb9, 0x70, 0xdd, 0xa3, 0x05, 0x26, 0x12, 0xaf, 0x21, 0xd5, 0x5f, 0xc9, 0xa3, 0xfc, 0xc4, - 0x3d, 0x52, 0x3b, 0xe0, 0x5d, 0x23, 0x1c, 0x6c, 0xe6, 0x77, 0x79, 0xb0, 0xb9, 0x13, 0x9f, 0x8a, - 0x97, 0xc2, 0xfe, 0x2c, 0xc8, 0xd5, 0x47, 0x7a, 0x3e, 0x5a, 0xbd, 0xdf, 0xd3, 0x07, 0xcf, 0x25, - 0xe7, 0x9f, 0xe5, 0x50, 0xae, 0x32, 0x3e, 0x7f, 0xa4, 0x37, 0xfb, 0xaa, 0x37, 0x9d, 0xef, 0xac, - 0xd5, 0xe0, 0x1a, 0xaa, 0x37, 0xf4, 0x12, 0x8d, 0xdc, 0x38, 0x7d, 0x23, 0x87, 0x86, 0x2a, 0x93, - 0x0b, 0xf3, 0xc2, 0x49, 0xf0, 0x4d, 0xe6, 0xc9, 0x07, 0x3e, 0x65, 0xac, 0x4b, 0xcf, 0xc5, 0xec, - 0x99, 0x5b, 0x65, 0xcb, 0x7b, 0xfa, 0xfa, 0x6d, 0xbd, 0xd1, 0x26, 0x70, 0xf4, 0xc2, 0xfc, 0x7e, - 0x5d, 0xf3, 0x0d, 0xf2, 0x79, 0x78, 0xf8, 0xef, 0x33, 0xc0, 0xcf, 0xa3, 0xdc, 0x2d, 0xee, 0x91, - 0x91, 0xc6, 0xe7, 0xc9, 0x6b, 0x8c, 0x0f, 0x9d, 0x04, 0x73, 0x6d, 0xd3, 0x00, 0x0e, 0xb4, 0x14, - 0x2d, 0x7c, 0x83, 0x2f, 0xc0, 0x5b, 0x2a, 0x5c, 0xf7, 0x0b, 0xdf, 0x28, 0x97, 0x70, 0x05, 0xf5, - 0xcf, 0x13, 0xa7, 0x69, 0x42, 0x47, 0xf9, 0x73, 0x76, 0x67, 0x26, 0x74, 0xa7, 0xd2, 0xdf, 0x0a, - 0x0b, 0x01, 0x33, 0x91, 0x0b, 0x7e, 0x0d, 0x21, 0x66, 0xa3, 0x6c, 0x31, 0x7e, 0xe4, 0x79, 0xb0, - 0xfb, 0x99, 0x69, 0x99, 0x60, 0xe3, 0x09, 0xcc, 0xf0, 0x0a, 0x1a, 0x9e, 0xb1, 0x0d, 0x73, 0xc9, - 0x64, 0xae, 0x97, 0x50, 0x41, 0x61, 0x73, 0x87, 0x27, 0x6a, 0x4a, 0x36, 0x85, 0x72, 0x49, 0xd5, - 0xc4, 0x18, 0xab, 0xff, 0xb8, 0x1b, 0xe5, 0x69, 0xb7, 0x1f, 0x8d, 0xdf, 0xdd, 0x8c, 0xdf, 0x22, - 0x1a, 0xbe, 0x63, 0x3b, 0x2b, 0xa6, 0x55, 0x0f, 0xbc, 0xe2, 0xf9, 0xde, 0x14, 0x3c, 0x79, 0x56, - 0x19, 0xae, 0x1a, 0x38, 0xd0, 0x6b, 0x31, 0xf2, 0x4d, 0x46, 0xf0, 0xb3, 0x08, 0xb1, 0xb7, 0xee, - 0x40, 0xd3, 0x1b, 0x06, 0xab, 0x60, 0x2f, 0xe1, 0xc1, 0xd1, 0x5e, 0x0c, 0x56, 0x11, 0x12, 0xd3, - 0x4d, 0x38, 0xf3, 0x85, 0xe8, 0x03, 0xbf, 0x7b, 0xd8, 0x84, 0x83, 0x2f, 0x84, 0x68, 0x04, 0x30, - 0xaf, 0x88, 0x79, 0x84, 0x84, 0xfb, 0x25, 0x14, 0x11, 0x84, 0x34, 0x39, 0xf0, 0xf0, 0x70, 0x09, - 0xd7, 0x4b, 0x9a, 0xc0, 0x03, 0x3f, 0x1d, 0xb9, 0x00, 0xc7, 0x12, 0xb7, 0xd4, 0xfb, 0xef, 0xd0, - 0x81, 0x6a, 0x60, 0x33, 0x07, 0x2a, 0xf5, 0xcd, 0x2c, 0xea, 0xab, 0xb4, 0x17, 0xdd, 0x35, 0xd7, - 0x23, 0xcd, 0x03, 0xae, 0xc6, 0xfe, 0xf6, 0x2a, 0x9f, 0xb8, 0xbd, 0x7a, 0xd0, 0x17, 0x8a, 0x70, - 0xee, 0x18, 0x98, 0x74, 0xbe, 0x38, 0x7e, 0x29, 0x8b, 0x86, 0xd9, 0xc5, 0x59, 0xc9, 0x74, 0x6b, - 0x7b, 0xe0, 0xcc, 0xbf, 0xff, 0x52, 0xd9, 0xdd, 0x65, 0xf3, 0x16, 0x9e, 0x48, 0xa8, 0x1f, 0xcf, - 0xa2, 0xfe, 0x62, 0xdb, 0x5b, 0x2e, 0x7a, 0xa0, 0x5b, 0x87, 0x72, 0x7f, 0xf2, 0xdb, 0x19, 0x74, - 0x8c, 0x36, 0x64, 0xc1, 0x5e, 0x21, 0xd6, 0x1e, 0x1c, 0x3c, 0x8a, 0x07, 0x88, 0xd9, 0x1d, 0x1e, - 0x20, 0xfa, 0xb2, 0xcc, 0x6d, 0x4f, 0x96, 0x70, 0x5c, 0xae, 0xd9, 0x0d, 0x72, 0xb0, 0x3f, 0x63, - 0x0f, 0x8f, 0xcb, 0x7d, 0x81, 0xec, 0xc1, 0xf5, 0xcc, 0xbb, 0x4b, 0x20, 0x7b, 0x70, 0xb6, 0xf4, - 0xee, 0x10, 0xc8, 0x57, 0x32, 0xa8, 0x6f, 0xcc, 0xf6, 0x0e, 0xf8, 0xc0, 0xe7, 0x5f, 0x71, 0xb0, - 0xd5, 0xdc, 0xff, 0x8a, 0x83, 0xad, 0x9b, 0xea, 0x0f, 0x64, 0xd1, 0x09, 0x1e, 0x1b, 0x9c, 0x9f, - 0x3f, 0x1c, 0x4d, 0xc7, 0x7c, 0xb0, 0xc5, 0x45, 0x73, 0x34, 0x0f, 0x71, 0xd1, 0xfc, 0x54, 0x0e, - 0x9d, 0x80, 0x50, 0xa6, 0x74, 0x5b, 0xf6, 0x2e, 0xb0, 0x45, 0x70, 0x4d, 0xbe, 0x04, 0x9d, 0x49, - 0xb8, 0x04, 0xfd, 0x8b, 0xf5, 0xd1, 0xa7, 0xeb, 0xa6, 0xb7, 0xdc, 0x5e, 0xbc, 0x52, 0xb3, 0x9b, - 0x57, 0xeb, 0x8e, 0x7e, 0xd7, 0x64, 0xd7, 0x7f, 0x7a, 0xe3, 0x6a, 0x90, 0x66, 0x43, 0x6f, 0x99, - 0x3c, 0x01, 0x47, 0x05, 0xf6, 0x3a, 0x94, 0xab, 0x7f, 0x7d, 0xea, 0x22, 0xf4, 0x8a, 0x6d, 0x5a, - 0xdc, 0xa7, 0x90, 0x19, 0xba, 0x15, 0xba, 0x3f, 0x7c, 0xdd, 0x36, 0xad, 0x6a, 0xd4, 0xb1, 0x70, - 0xbb, 0xf5, 0x85, 0xac, 0x35, 0xa1, 0x1a, 0xf5, 0x5f, 0x65, 0xd0, 0x19, 0x59, 0x8b, 0xdf, 0x0d, - 0xb6, 0xe3, 0x0f, 0x66, 0xd1, 0xc9, 0x1b, 0x20, 0x9c, 0xc0, 0x91, 0xe3, 0x68, 0xde, 0xe2, 0x83, - 0x33, 0x41, 0x36, 0x47, 0x16, 0x65, 0xba, 0x6c, 0x8e, 0x26, 0x75, 0x2e, 0x9b, 0xdf, 0xc9, 0xa0, - 0xe3, 0x73, 0xe5, 0xd2, 0xf8, 0xbb, 0x64, 0x44, 0xc5, 0xbf, 0xe7, 0x80, 0x1b, 0x9c, 0xb1, 0xef, - 0x39, 0xe0, 0xa6, 0xe7, 0x67, 0xb3, 0xe8, 0x78, 0xa5, 0x38, 0x33, 0xfd, 0x6e, 0x99, 0xc1, 0xc7, - 0x45, 0xaf, 0x43, 0xff, 0x10, 0x8c, 0xdb, 0x02, 0xe2, 0x67, 0xde, 0xbe, 0x96, 0xee, 0x8d, 0x18, - 0x17, 0xca, 0x01, 0x9f, 0xba, 0xf7, 0x44, 0x28, 0x54, 0xf3, 0x25, 0xea, 0x03, 0xae, 0xf9, 0xff, - 0xb4, 0x80, 0xfa, 0x6f, 0xb6, 0x17, 0x09, 0x77, 0x4e, 0x39, 0xd4, 0x27, 0xbf, 0xd7, 0x50, 0x3f, - 0x17, 0x03, 0xdc, 0x9a, 0x08, 0xc1, 0xf3, 0x78, 0x30, 0x14, 0x16, 0x9f, 0x48, 0x24, 0xc2, 0xe7, - 0x50, 0xfe, 0x36, 0x71, 0x16, 0xc5, 0x77, 0xa5, 0x77, 0x89, 0xb3, 0xa8, 0x01, 0x14, 0x4f, 0x87, - 0x2e, 0xf3, 0xc5, 0xf9, 0x32, 0x24, 0x52, 0xe1, 0x17, 0x36, 0x90, 0x19, 0x26, 0xf0, 0x7b, 0xd3, - 0x5b, 0x26, 0x4b, 0xc1, 0x22, 0xbe, 0x69, 0x8f, 0x96, 0xc4, 0xb3, 0x68, 0x44, 0x74, 0x7c, 0x62, - 0x59, 0x44, 0x7a, 0x13, 0xd8, 0x25, 0xe5, 0x0f, 0x89, 0x17, 0xc5, 0x2f, 0xa1, 0x01, 0x1f, 0x08, - 0x2e, 0x5c, 0x7d, 0x61, 0xe8, 0xfa, 0x80, 0x55, 0x24, 0x45, 0x91, 0x54, 0x40, 0x64, 0x00, 0xd7, - 0x10, 0x28, 0x81, 0x41, 0xc4, 0x25, 0x4e, 0x2a, 0x80, 0x9f, 0x02, 0x06, 0xf0, 0xcc, 0x03, 0x9c, - 0x55, 0xfa, 0xe1, 0xd1, 0x25, 0xb8, 0xe4, 0x3b, 0x1c, 0xce, 0x9e, 0xd6, 0x4a, 0x64, 0x78, 0x0e, - 0xa1, 0xd0, 0xa9, 0x80, 0x07, 0x30, 0xd8, 0xb6, 0xbb, 0x83, 0xc0, 0x42, 0xbc, 0x0e, 0x1c, 0xdc, - 0xc9, 0x75, 0xa0, 0xfa, 0xfb, 0x59, 0xd4, 0x5f, 0x6c, 0xb5, 0x82, 0xa1, 0xf0, 0x18, 0x2a, 0x14, - 0x5b, 0xad, 0x5b, 0x5a, 0x59, 0x0c, 0x65, 0xae, 0xb7, 0x5a, 0xd5, 0xb6, 0x63, 0x8a, 0x3e, 0xa1, - 0x8c, 0x08, 0x8f, 0xa3, 0xc1, 0x62, 0xab, 0x35, 0xdf, 0x5e, 0x6c, 0x98, 0x35, 0x21, 0x33, 0x12, - 0xcb, 0x1d, 0xd7, 0x6a, 0x55, 0x5b, 0x80, 0x89, 0xa6, 0xc7, 0x92, 0xcb, 0xe0, 0x8f, 0x42, 0xd8, - 0x1f, 0x9e, 0x98, 0x87, 0xa5, 0xfe, 0x50, 0x83, 0x20, 0xe6, 0x61, 0xdb, 0xae, 0x04, 0x44, 0x2c, - 0xd8, 0xfb, 0x39, 0x3f, 0x64, 0x3e, 0xad, 0x28, 0x96, 0x80, 0x27, 0x64, 0x89, 0x1f, 0x47, 0x3d, - 0xc5, 0x56, 0x4b, 0xb8, 0x6f, 0x02, 0xa7, 0x22, 0x5a, 0x2a, 0x9a, 0xfb, 0x8c, 0x93, 0x9d, 0x7d, - 0x01, 0x0d, 0xc9, 0x95, 0x6d, 0x2b, 0x58, 0xfc, 0x37, 0x33, 0xf0, 0x41, 0x07, 0xdc, 0xa7, 0xf9, - 0x49, 0x94, 0x2b, 0xb6, 0x5a, 0x7c, 0x3e, 0x3a, 0x9e, 0xd0, 0x1f, 0xd1, 0x27, 0xd0, 0xc5, 0x56, - 0xcb, 0xff, 0xf4, 0x03, 0xfe, 0x38, 0x62, 0x47, 0x9f, 0xfe, 0x15, 0xf6, 0xe9, 0x07, 0xfb, 0xe1, - 0x82, 0xfa, 0x2b, 0x39, 0x74, 0xac, 0xd8, 0x6a, 0x1d, 0x05, 0x99, 0xdf, 0xab, 0x87, 0xd6, 0x4f, - 0x20, 0x24, 0x4c, 0x8f, 0x3d, 0xc1, 0xd3, 0xad, 0x7e, 0x61, 0x6a, 0x54, 0x32, 0x9a, 0x40, 0xe4, - 0xab, 0x5f, 0xef, 0xb6, 0xd4, 0xef, 0xe3, 0x39, 0x98, 0x8a, 0x0f, 0x7a, 0xd0, 0xa8, 0x77, 0x4a, - 0xb7, 0xf1, 0x3e, 0x28, 0x6c, 0xab, 0x0f, 0x7e, 0x4b, 0x1a, 0x3c, 0x10, 0xb4, 0xfc, 0xa8, 0x17, - 0xba, 0x77, 0x65, 0x16, 0x0f, 0x89, 0xc2, 0xe4, 0x91, 0x6c, 0xfc, 0x44, 0x4a, 0x3c, 0xae, 0x52, - 0x8d, 0xa2, 0xaa, 0xa6, 0xa1, 0x45, 0x68, 0xfd, 0x3e, 0xec, 0xd9, 0x56, 0x1f, 0xae, 0x67, 0xe1, - 0xed, 0x74, 0x10, 0x97, 0x69, 0xf7, 0xbb, 0x8b, 0xab, 0x08, 0x31, 0xcf, 0x83, 0xc0, 0xad, 0x79, - 0x90, 0x85, 0x60, 0x61, 0xf9, 0x95, 0x78, 0x08, 0x96, 0x90, 0x24, 0xf0, 0x90, 0xca, 0x25, 0x7a, - 0x48, 0x5d, 0x46, 0xbd, 0x9a, 0xbe, 0xfa, 0x6a, 0x9b, 0x38, 0x6b, 0xdc, 0x9c, 0x61, 0x61, 0x0f, - 0xf5, 0xd5, 0xea, 0xc7, 0x28, 0x50, 0x0b, 0xd0, 0x58, 0x0d, 0x1e, 0xdf, 0x0b, 0x1e, 0x21, 0xec, - 0x8c, 0x3c, 0x78, 0x72, 0xbf, 0x13, 0x45, 0xc7, 0xcf, 0xa1, 0x5c, 0xf1, 0x4e, 0x85, 0x4b, 0x36, - 0xe8, 0xda, 0xe2, 0x9d, 0x0a, 0x97, 0x57, 0x6a, 0xd9, 0x3b, 0x15, 0xf5, 0xe3, 0x59, 0x84, 0xe3, - 0x94, 0xf8, 0x69, 0xd4, 0x07, 0xd0, 0x3a, 0xd5, 0x19, 0x31, 0x31, 0xe7, 0xaa, 0x5b, 0x75, 0x00, - 0x2a, 0x19, 0x77, 0x3e, 0x29, 0x7e, 0x16, 0x52, 0x1f, 0xf3, 0xd4, 0x70, 0x52, 0x62, 0xce, 0x55, - 0xd7, 0x4f, 0x16, 0x1c, 0xc9, 0x7c, 0xcc, 0x89, 0xc1, 0x2e, 0xbc, 0x53, 0x99, 0xb2, 0x5d, 0x8f, - 0x8b, 0x9a, 0xd9, 0x85, 0xab, 0x2e, 0x64, 0x84, 0x95, 0xec, 0x42, 0x46, 0x06, 0x59, 0xad, 0xee, - 0x54, 0xd8, 0x33, 0x15, 0x43, 0xb3, 0x1b, 0xbe, 0x41, 0xc9, 0xb2, 0x5a, 0xad, 0xba, 0x55, 0xf6, - 0xc4, 0xc5, 0x80, 0x9c, 0xcb, 0x52, 0x56, 0x2b, 0xa9, 0x94, 0xfa, 0xa9, 0x5e, 0x34, 0x5c, 0xd2, - 0x3d, 0x7d, 0x51, 0x77, 0x89, 0xb0, 0x9b, 0x3e, 0xe6, 0xc3, 0xfc, 0xcf, 0x11, 0xe4, 0x60, 0x2c, - 0x26, 0x7c, 0x4d, 0xb4, 0x00, 0x7e, 0x3e, 0xe4, 0x1b, 0xe4, 0x1c, 0x15, 0x93, 0x98, 0x2d, 0x56, - 0x5b, 0x1c, 0xac, 0xc5, 0x08, 0xf1, 0xa3, 0xa8, 0xdf, 0x87, 0xd1, 0x0d, 0x40, 0x2e, 0xd4, 0x19, - 0x63, 0x91, 0xda, 0xff, 0x9a, 0x88, 0xc6, 0xcf, 0xa2, 0x01, 0xff, 0xa7, 0x60, 0x5a, 0xb3, 0x8c, - 0x6c, 0x8b, 0xb1, 0xdd, 0x93, 0x48, 0x2a, 0x16, 0x85, 0xf9, 0xad, 0x5b, 0x2a, 0x1a, 0x49, 0x7a, - 0x26, 0x91, 0xe2, 0x8f, 0xa1, 0x21, 0xff, 0x37, 0xdf, 0x30, 0xb0, 0xfc, 0x70, 0x8f, 0x06, 0x29, - 0x9d, 0x23, 0x62, 0xbd, 0x22, 0x93, 0xb3, 0xad, 0xc3, 0x7d, 0x7e, 0x1e, 0x2f, 0x63, 0x31, 0xbe, - 0x73, 0x88, 0x54, 0x80, 0xcb, 0x68, 0xc4, 0x87, 0x84, 0x1a, 0xda, 0x13, 0xee, 0x18, 0x8d, 0xc5, - 0x6a, 0xa2, 0x92, 0xc6, 0x4b, 0xe1, 0x06, 0x3a, 0x27, 0x01, 0x0d, 0x77, 0xd9, 0x5c, 0xf2, 0xf8, - 0x76, 0x8f, 0xc7, 0x20, 0xe6, 0x89, 0x1b, 0x03, 0xae, 0x8c, 0xc6, 0xcf, 0xc0, 0x2a, 0x67, 0x87, - 0xea, 0xc8, 0x0d, 0x57, 0xd0, 0x09, 0x1f, 0x7f, 0x63, 0x7c, 0x7e, 0xde, 0xb1, 0x5f, 0x27, 0x35, - 0xaf, 0x5c, 0xe2, 0xdb, 0x65, 0x88, 0x4d, 0x67, 0x2c, 0x56, 0xeb, 0xb5, 0x16, 0x55, 0x0a, 0x8a, - 0x93, 0x99, 0x27, 0x16, 0xc6, 0xb7, 0xd1, 0x49, 0x01, 0x2e, 0xa4, 0x87, 0x46, 0xe1, 0x7e, 0x9e, - 0x73, 0x4d, 0xce, 0x10, 0x9d, 0x5c, 0x1c, 0xbf, 0x80, 0x06, 0x7d, 0x04, 0xbb, 0x45, 0xec, 0x87, - 0x5b, 0x44, 0x18, 0x92, 0xc6, 0x62, 0x35, 0xfa, 0x9a, 0x52, 0x26, 0x16, 0x35, 0x0a, 0x32, 0xea, - 0x0f, 0x48, 0x1a, 0xe5, 0xad, 0xb5, 0x12, 0x95, 0x11, 0xb2, 0xec, 0xbf, 0x14, 0x6a, 0xd4, 0x9c, - 0x63, 0xd6, 0x4d, 0xb6, 0x93, 0xf6, 0x1f, 0x50, 0x2e, 0x56, 0x6d, 0x00, 0x26, 0xe9, 0x07, 0x23, - 0x3f, 0x5b, 0x44, 0xc7, 0x13, 0x74, 0x6c, 0x5b, 0x3b, 0xc6, 0x37, 0xb3, 0x61, 0x23, 0x0e, 0xf8, - 0xb6, 0x71, 0x0c, 0xf5, 0xfa, 0x5f, 0xc2, 0x8d, 0x07, 0x25, 0x6d, 0x68, 0x46, 0x79, 0xf8, 0x78, - 0x49, 0x1c, 0x07, 0x7c, 0x2b, 0xb9, 0x17, 0xe2, 0x78, 0x2b, 0x13, 0x8a, 0xe3, 0x80, 0x6f, 0x2f, - 0x7f, 0x27, 0x17, 0xce, 0x49, 0x47, 0x7b, 0xcc, 0xbd, 0x32, 0x93, 0x43, 0x3f, 0xd8, 0xc2, 0x36, - 0x1e, 0x32, 0x8a, 0xaa, 0xd9, 0xb3, 0x43, 0xd5, 0xfc, 0xc3, 0x78, 0x7f, 0x32, 0xd3, 0xf3, 0x40, - 0xf6, 0xe7, 0x1e, 0x0c, 0x56, 0x7c, 0x2d, 0x5c, 0xc7, 0x98, 0x8d, 0xde, 0x2d, 0x84, 0xf8, 0x5b, - 0xe4, 0x26, 0xba, 0x4c, 0x82, 0x3f, 0x84, 0x4e, 0x4b, 0x80, 0x79, 0xdd, 0xd1, 0x9b, 0xc4, 0x0b, - 0x33, 0x0e, 0x42, 0xd0, 0x26, 0xbf, 0x74, 0xb5, 0x15, 0xa0, 0xc5, 0x2c, 0x86, 0x29, 0x1c, 0x04, - 0xe5, 0xe8, 0xd9, 0x86, 0x93, 0xf4, 0xe7, 0x72, 0xa1, 0xa9, 0x22, 0x07, 0x5f, 0xd5, 0x88, 0xdb, - 0x6e, 0x78, 0x87, 0xb7, 0x83, 0x77, 0x96, 0xda, 0x62, 0x0a, 0x1d, 0x2b, 0x2e, 0x2d, 0x91, 0x9a, - 0xe7, 0xc7, 0x94, 0x76, 0x79, 0xb8, 0x3d, 0xb6, 0x75, 0xe0, 0x28, 0x1e, 0x23, 0x58, 0xca, 0x8d, - 0x1f, 0x29, 0xa6, 0xfe, 0x51, 0x1e, 0x29, 0x81, 0xe9, 0x1e, 0x3c, 0xd4, 0xda, 0xc7, 0x65, 0xf2, - 0x1d, 0xd1, 0x2b, 0x26, 0x1a, 0x09, 0x85, 0x51, 0x69, 0x37, 0x9b, 0x3a, 0x0c, 0x3d, 0xba, 0x35, - 0x18, 0x8d, 0x32, 0x0b, 0x09, 0xd9, 0x6e, 0xe0, 0x2c, 0xdf, 0x0d, 0xe0, 0xf0, 0x21, 0x5c, 0xd5, - 0x65, 0x2c, 0xb4, 0x38, 0x57, 0xfc, 0xe9, 0x0c, 0x3a, 0xe1, 0x77, 0xca, 0xdc, 0x22, 0x35, 0x8b, - 0xc7, 0xed, 0xb6, 0xe5, 0xf9, 0x3b, 0x91, 0xe7, 0xd2, 0xab, 0x63, 0x9d, 0x74, 0x25, 0xa9, 0x30, - 0x6b, 0x49, 0x10, 0x58, 0x22, 0x50, 0x08, 0x1b, 0x68, 0xaa, 0x35, 0x20, 0xd2, 0x12, 0xeb, 0x3d, - 0x7b, 0x03, 0x9d, 0x49, 0x65, 0xb9, 0x99, 0x19, 0xda, 0x2d, 0x9a, 0xa1, 0xff, 0x26, 0x13, 0x4e, - 0x44, 0x11, 0x21, 0xe1, 0x2b, 0x08, 0x85, 0x20, 0xbe, 0x31, 0x1d, 0xda, 0x58, 0x1f, 0x45, 0xa1, - 0xd0, 0x34, 0x81, 0x02, 0xcf, 0xa1, 0x02, 0x17, 0x0b, 0xcb, 0xee, 0xfb, 0xde, 0x4d, 0x7a, 0xe1, - 0x8a, 0x28, 0x07, 0xd8, 0x74, 0xf2, 0x6f, 0xe6, 0x6c, 0xce, 0x3e, 0x8b, 0xfa, 0x77, 0xfa, 0x5d, - 0x9f, 0xce, 0x21, 0x2c, 0xee, 0x22, 0xf7, 0xd1, 0xc4, 0x3e, 0xc0, 0x53, 0xd8, 0x25, 0xd4, 0x4b, - 0x3f, 0x01, 0xf2, 0x5d, 0x08, 0xf1, 0x6d, 0xdb, 0x1c, 0xa6, 0x05, 0xd8, 0x30, 0xb8, 0x54, 0x4f, - 0x72, 0x70, 0x29, 0xf5, 0xfb, 0x72, 0xe8, 0x94, 0xd8, 0x21, 0x25, 0x02, 0x21, 0xf3, 0x8f, 0x3a, - 0xe5, 0x6d, 0xec, 0x14, 0x15, 0x15, 0xd8, 0xe6, 0x81, 0xe7, 0x2e, 0x60, 0x07, 0x3b, 0x00, 0xd1, - 0x38, 0x46, 0xfd, 0x8f, 0x59, 0x34, 0x38, 0x6f, 0xbb, 0x5e, 0xdd, 0x21, 0xee, 0xbc, 0xee, 0xb8, - 0x87, 0xb8, 0x3b, 0xde, 0x87, 0x06, 0x21, 0x3c, 0x50, 0x93, 0x58, 0x2c, 0x84, 0x4e, 0xb7, 0x90, - 0x6c, 0xc4, 0x47, 0xf0, 0xbc, 0x52, 0x12, 0x21, 0xd5, 0x7e, 0x66, 0xf9, 0x09, 0x41, 0x9b, 0x98, - 0xd9, 0xc7, 0xe0, 0xea, 0x8f, 0xe7, 0xd0, 0x80, 0x2f, 0xe5, 0x31, 0xf3, 0xa0, 0xde, 0xd4, 0xec, - 0xaf, 0x90, 0xaf, 0x22, 0x34, 0x6f, 0x3b, 0x9e, 0xde, 0x98, 0x0d, 0x35, 0x1f, 0x8e, 0x38, 0x5b, - 0x00, 0x65, 0x65, 0x04, 0x12, 0x58, 0xbf, 0x42, 0xb3, 0x9a, 0x4d, 0x4c, 0x6c, 0xfd, 0x0a, 0xa0, - 0x9a, 0x40, 0xa1, 0xfe, 0x46, 0x16, 0x1d, 0xf3, 0x3b, 0x69, 0xe2, 0x1e, 0xa9, 0xb5, 0x0f, 0xf3, - 0xdc, 0x24, 0x4b, 0xbb, 0x7b, 0x53, 0x69, 0xab, 0xff, 0x5d, 0x98, 0x48, 0xc6, 0x1b, 0xf6, 0xd1, - 0x44, 0xf2, 0x57, 0xa1, 0xe3, 0xea, 0xb7, 0xe7, 0xd0, 0x09, 0x5f, 0xea, 0x93, 0x6d, 0x0b, 0x0e, - 0x07, 0xc6, 0xf5, 0x46, 0xe3, 0x30, 0xef, 0xc6, 0xfb, 0x7d, 0x41, 0xcc, 0xf1, 0x78, 0x7b, 0x3c, - 0xc7, 0xdf, 0x12, 0x07, 0x57, 0x6d, 0xd3, 0xd0, 0x44, 0x22, 0xfc, 0x12, 0x1a, 0xf0, 0x7f, 0x16, - 0x9d, 0xba, 0xbf, 0x05, 0x87, 0xa3, 0xfe, 0xa0, 0x90, 0xee, 0x48, 0x61, 0x05, 0xa4, 0x02, 0xea, - 0xc7, 0x7b, 0xd0, 0xd9, 0x3b, 0xa6, 0x65, 0xd8, 0xab, 0xae, 0x9f, 0x22, 0xf2, 0xc0, 0x1f, 0x75, - 0xed, 0x77, 0x6a, 0xc8, 0x57, 0xd1, 0xc9, 0xa8, 0x48, 0x9d, 0x20, 0x70, 0x37, 0xef, 0x9d, 0x55, - 0x46, 0x50, 0xf5, 0x93, 0x45, 0xf2, 0xfb, 0x32, 0x2d, 0xb9, 0x64, 0x34, 0xdb, 0x64, 0xcf, 0x56, - 0xb2, 0x4d, 0x3e, 0x82, 0x0a, 0x25, 0xbb, 0xa9, 0x9b, 0x7e, 0x80, 0x19, 0x18, 0xc5, 0x41, 0xbd, - 0x80, 0xd1, 0x38, 0x05, 0xe5, 0xcf, 0x2b, 0x86, 0x2e, 0xeb, 0x0b, 0xf9, 0xfb, 0x05, 0xa8, 0x95, - 0xa6, 0x89, 0x44, 0xd8, 0x46, 0x83, 0xbc, 0x3a, 0x7e, 0xbb, 0x85, 0x60, 0xf3, 0xf4, 0x94, 0x2f, - 0xa3, 0x74, 0xb5, 0xba, 0x22, 0x95, 0x63, 0xdb, 0x28, 0x96, 0x04, 0x93, 0x7f, 0x0c, 0xbb, 0xe7, - 0xd2, 0x64, 0xfe, 0x82, 0x10, 0x60, 0x92, 0xe9, 0x8f, 0x0b, 0x01, 0x66, 0x19, 0x91, 0x08, 0x4f, - 0xa0, 0x11, 0x08, 0xaf, 0x1c, 0x6c, 0xa5, 0xa8, 0x4a, 0x0c, 0x80, 0x51, 0x09, 0x97, 0x26, 0x2c, - 0x22, 0x33, 0xfd, 0xb8, 0x6a, 0x8d, 0xa3, 0xb5, 0x78, 0x09, 0x7c, 0x06, 0xe5, 0x66, 0xa7, 0x8b, - 0x70, 0xdb, 0xd2, 0xcb, 0x52, 0x1b, 0x59, 0x0d, 0x5d, 0xa3, 0xb0, 0xb3, 0x2f, 0x23, 0x1c, 0xff, - 0x9c, 0x6d, 0xdd, 0xa8, 0xfc, 0x73, 0x61, 0xcb, 0x77, 0xd0, 0x7d, 0x62, 0xf6, 0x62, 0x22, 0x94, - 0xb2, 0x8a, 0x75, 0xbf, 0x9d, 0x59, 0xc5, 0x0a, 0x7b, 0x9a, 0x55, 0x4c, 0xfd, 0xf9, 0x0c, 0x1a, - 0x89, 0x85, 0x20, 0xc7, 0x4f, 0x22, 0xc4, 0x20, 0x42, 0xa8, 0x47, 0x88, 0x9d, 0x12, 0x86, 0x25, - 0xe7, 0xcb, 0x63, 0x48, 0x86, 0xaf, 0xa2, 0x5e, 0xf6, 0x8b, 0x87, 0x67, 0x8a, 0x17, 0x69, 0xb7, - 0x4d, 0x43, 0x0b, 0x88, 0xc2, 0x5a, 0xe0, 0x4e, 0x31, 0x97, 0x58, 0xc4, 0x5b, 0x6b, 0x05, 0xb5, - 0x50, 0x32, 0xf5, 0x53, 0x59, 0x34, 0x10, 0x34, 0xb8, 0x68, 0xec, 0x97, 0xce, 0x15, 0x78, 0x34, - 0xf7, 0xdc, 0x66, 0xd1, 0xdc, 0x23, 0xf3, 0x2d, 0x0f, 0xdf, 0xbe, 0x77, 0x4f, 0xa2, 0x3e, 0x93, - 0x45, 0xc7, 0x82, 0x5a, 0xf7, 0xf1, 0xfa, 0xea, 0x1d, 0x24, 0x92, 0x4f, 0x67, 0x90, 0x32, 0x66, - 0x36, 0x1a, 0xa6, 0x55, 0x2f, 0x5b, 0x4b, 0xb6, 0xd3, 0x84, 0x09, 0x71, 0xff, 0x8e, 0x70, 0xd5, - 0xef, 0xca, 0xa0, 0x11, 0xde, 0xa0, 0x71, 0xdd, 0x31, 0xf6, 0xef, 0x7c, 0x2c, 0xda, 0x92, 0xfd, - 0xd3, 0x17, 0xf5, 0x4b, 0x59, 0x84, 0xa6, 0xed, 0xda, 0xca, 0x01, 0x7f, 0x51, 0xf5, 0x3c, 0x2a, - 0xb0, 0x18, 0x59, 0x5c, 0x63, 0x47, 0xf8, 0xcb, 0x21, 0xfa, 0x69, 0x0c, 0x31, 0x36, 0xcc, 0xe7, - 0xe3, 0x02, 0x8b, 0xb1, 0xa5, 0x64, 0x34, 0x5e, 0x84, 0x56, 0x4a, 0xe9, 0xf8, 0x82, 0x11, 0x54, - 0x4a, 0x61, 0x72, 0xa5, 0x1b, 0xeb, 0xa3, 0xf9, 0x86, 0x5d, 0x5b, 0xd1, 0x80, 0x5e, 0xfd, 0xcb, - 0x0c, 0x93, 0xdd, 0x01, 0x7f, 0x17, 0xea, 0x7f, 0x7e, 0x7e, 0x9b, 0x9f, 0xff, 0xdd, 0x19, 0x74, - 0x42, 0x23, 0x35, 0xfb, 0x2e, 0x71, 0xd6, 0xc6, 0x6d, 0x83, 0xdc, 0x20, 0x16, 0x71, 0xf6, 0x6b, - 0x44, 0xfd, 0x23, 0x48, 0x7f, 0x11, 0x36, 0xe6, 0x96, 0x4b, 0x8c, 0x83, 0x93, 0x9a, 0x44, 0xfd, - 0x62, 0x0f, 0x52, 0x12, 0xad, 0xde, 0x03, 0x6b, 0xce, 0xa5, 0x6e, 0x65, 0xf2, 0x7b, 0xb5, 0x95, - 0xe9, 0xde, 0xde, 0x56, 0xa6, 0xb0, 0xdd, 0xad, 0x4c, 0xcf, 0x56, 0xb6, 0x32, 0xcd, 0xe8, 0x56, - 0xa6, 0x17, 0xb6, 0x32, 0x4f, 0x76, 0xdc, 0xca, 0x4c, 0x58, 0xc6, 0x0e, 0x37, 0x32, 0x07, 0x36, - 0x6d, 0xee, 0x4e, 0x76, 0x60, 0x97, 0xe8, 0xa4, 0x58, 0xb3, 0x1d, 0x83, 0x18, 0x7c, 0xe3, 0x05, - 0xa7, 0xfe, 0x0e, 0x87, 0x69, 0x01, 0x36, 0x96, 0x83, 0x78, 0x70, 0x2b, 0x39, 0x88, 0xf7, 0x60, - 0xff, 0xf5, 0x66, 0x16, 0x8d, 0x8c, 0x13, 0xc7, 0x63, 0x41, 0x38, 0xf7, 0xc2, 0xa9, 0xad, 0x88, - 0x8e, 0x09, 0x0c, 0xc1, 0x22, 0xcf, 0x86, 0x8e, 0x7a, 0x35, 0xe2, 0x78, 0x51, 0x3f, 0xbf, 0x28, - 0x3d, 0xad, 0xde, 0xcf, 0x03, 0xc6, 0xc7, 0x6e, 0x50, 0xbd, 0x0f, 0x67, 0x82, 0x34, 0xf9, 0x2f, - 0x2d, 0xa0, 0x17, 0x52, 0x7b, 0xe5, 0xb7, 0x9f, 0xda, 0x4b, 0xfd, 0xd9, 0x0c, 0xba, 0xa8, 0x11, - 0x8b, 0xac, 0xea, 0x8b, 0x0d, 0x22, 0x34, 0x8b, 0xaf, 0x0c, 0x74, 0xd6, 0x30, 0xdd, 0xa6, 0xee, - 0xd5, 0x96, 0x77, 0x25, 0xa3, 0x49, 0x34, 0x20, 0xce, 0x5f, 0xdb, 0x98, 0xdb, 0xa4, 0x72, 0xea, - 0x17, 0xf3, 0xa8, 0x67, 0xcc, 0xf6, 0x5e, 0xb1, 0x77, 0x99, 0x6b, 0x2e, 0x9c, 0xf2, 0xb3, 0xdb, - 0x38, 0xeb, 0x79, 0x1c, 0x2a, 0x17, 0xc2, 0xef, 0x83, 0x13, 0xe8, 0xa2, 0x1d, 0x4b, 0x53, 0xe0, - 0x93, 0x6d, 0x33, 0xcb, 0xdc, 0xd3, 0xa8, 0x0f, 0xe2, 0xb7, 0x08, 0xa7, 0xb1, 0xe0, 0x62, 0xed, - 0x51, 0x60, 0xb4, 0x8e, 0x90, 0x14, 0x7f, 0x48, 0x8a, 0x1a, 0x5a, 0xd8, 0x7d, 0x56, 0x3a, 0x31, - 0x80, 0xe8, 0x93, 0xec, 0x22, 0x0f, 0xda, 0x24, 0x64, 0xf0, 0x80, 0x53, 0x94, 0x48, 0x93, 0x02, - 0xc2, 0x3d, 0xcc, 0x18, 0x37, 0x8e, 0x06, 0xc7, 0x6c, 0x4f, 0x70, 0xe7, 0xed, 0x0b, 0x1f, 0x72, - 0x52, 0xc9, 0x27, 0xfb, 0xf2, 0xca, 0x65, 0xd4, 0x6f, 0xe4, 0xd1, 0x80, 0xff, 0x73, 0x9f, 0x74, - 0xe7, 0x31, 0x54, 0x98, 0xb2, 0x85, 0x24, 0x06, 0xe0, 0x02, 0xbc, 0x6c, 0xbb, 0x11, 0xdf, 0x66, - 0x4e, 0x44, 0xa5, 0x3e, 0x6b, 0x1b, 0xa2, 0x03, 0x3b, 0x48, 0xdd, 0xb2, 0x8d, 0xd8, 0x03, 0xe0, - 0x80, 0x10, 0x5f, 0x44, 0x79, 0xf0, 0xfd, 0x17, 0x0e, 0xf2, 0x23, 0xfe, 0xfe, 0x80, 0x17, 0xb4, - 0xb2, 0xb0, 0x5d, 0xad, 0xec, 0xd9, 0xa9, 0x56, 0xf6, 0xee, 0xad, 0x56, 0xbe, 0x86, 0x06, 0xa0, - 0x26, 0x3f, 0x07, 0xda, 0xe6, 0x0b, 0xeb, 0x19, 0xbe, 0xf6, 0x0d, 0xb2, 0x76, 0xf3, 0x4c, 0x68, - 0xb0, 0xe4, 0x49, 0xac, 0x22, 0xba, 0x8b, 0x76, 0xb1, 0x9d, 0xfe, 0xc3, 0x0c, 0xea, 0xb9, 0x65, - 0xad, 0x58, 0xf6, 0xea, 0xee, 0x34, 0xee, 0x49, 0xd4, 0xcf, 0xd9, 0x08, 0xab, 0x0b, 0xbc, 0xe9, - 0x6e, 0x33, 0x70, 0x15, 0x38, 0x69, 0x22, 0x15, 0x7e, 0x21, 0x28, 0x04, 0xcf, 0x7b, 0x72, 0x61, - 0x1a, 0x10, 0xbf, 0x50, 0x4d, 0xce, 0x5c, 0x20, 0x92, 0xe3, 0x73, 0x28, 0x5f, 0xa2, 0x4d, 0x15, - 0xe2, 0xe0, 0xd2, 0xa6, 0x68, 0x00, 0x55, 0xdf, 0xcc, 0xa3, 0xa1, 0xc8, 0xc1, 0xd7, 0x23, 0xa8, - 0x8f, 0x1f, 0x3c, 0x99, 0x7e, 0x2a, 0x05, 0x78, 0xfe, 0x13, 0x00, 0xb5, 0x5e, 0xf6, 0x67, 0xd9, - 0xc0, 0xef, 0x47, 0x3d, 0xb6, 0x0b, 0x8b, 0x22, 0x7c, 0xcb, 0x50, 0x38, 0x84, 0xe6, 0x2a, 0xb4, - 0xed, 0x6c, 0x70, 0x70, 0x12, 0x51, 0x23, 0x6d, 0x17, 0x3e, 0xed, 0x3a, 0xea, 0xd3, 0x5d, 0x97, - 0x78, 0x55, 0x4f, 0xaf, 0x8b, 0xd9, 0x15, 0x02, 0xa0, 0x38, 0x3a, 0x00, 0xb8, 0xa0, 0xd7, 0xf1, - 0xcb, 0x68, 0xb0, 0xe6, 0x10, 0x58, 0x36, 0xf5, 0x06, 0x6d, 0xa5, 0x60, 0xd6, 0x4a, 0x08, 0xf1, - 0xfe, 0x24, 0x44, 0x94, 0x0d, 0x7c, 0x1b, 0x0d, 0xf2, 0xcf, 0x61, 0xbe, 0xf7, 0x30, 0xd0, 0x86, - 0xc2, 0x65, 0x8c, 0x89, 0x84, 0x79, 0xdf, 0xf3, 0x27, 0x18, 0x22, 0xb9, 0xc8, 0xd7, 0x10, 0x48, - 0xf1, 0x1c, 0xc2, 0xab, 0x64, 0xb1, 0xaa, 0xb7, 0xbd, 0x65, 0x5a, 0x17, 0x0b, 0x0e, 0xce, 0x93, - 0x0a, 0xc2, 0xbb, 0x85, 0x38, 0x56, 0x7c, 0xce, 0xb1, 0x4a, 0x16, 0x8b, 0x12, 0x12, 0xdf, 0x41, - 0x27, 0xe3, 0x45, 0xe8, 0x27, 0xb3, 0xcb, 0x81, 0x07, 0x37, 0xd6, 0x47, 0x47, 0x13, 0x09, 0x04, - 0xb6, 0xc7, 0x63, 0x6c, 0xcb, 0xc6, 0x2b, 0xf9, 0xde, 0x9e, 0xe1, 0x5e, 0x6d, 0x88, 0x96, 0xf5, - 0x4d, 0x48, 0xd3, 0x50, 0xbf, 0x9a, 0xa1, 0xa6, 0x22, 0xfd, 0x20, 0xc8, 0xaa, 0x4c, 0x75, 0xbd, - 0xb9, 0x4d, 0x5d, 0x6f, 0x86, 0xf9, 0x0f, 0x0b, 0x6e, 0x87, 0xd9, 0x55, 0xe3, 0x58, 0x7c, 0x05, - 0x15, 0x0c, 0xf1, 0xd4, 0xec, 0x94, 0xdc, 0x09, 0x7e, 0x3d, 0x1a, 0xa7, 0xc2, 0x97, 0x50, 0x9e, - 0x2e, 0x59, 0xd1, 0x2d, 0xb3, 0x68, 0x5d, 0x68, 0x40, 0xa1, 0x7e, 0x6b, 0x16, 0x0d, 0x08, 0x5f, - 0x73, 0x6d, 0x57, 0x9f, 0xf3, 0xdc, 0xd6, 0x9a, 0xe9, 0x3b, 0xbd, 0xc0, 0x5e, 0xca, 0x6f, 0xf2, - 0xf5, 0x40, 0x14, 0x5b, 0xba, 0x90, 0xe2, 0x82, 0x79, 0x9a, 0x7f, 0x68, 0x61, 0xeb, 0xdb, 0x47, - 0x4a, 0xff, 0x4a, 0xbe, 0x37, 0x3b, 0x9c, 0x7b, 0x25, 0xdf, 0x9b, 0x1f, 0xee, 0x86, 0x48, 0x5a, - 0x10, 0xbc, 0x9a, 0xed, 0xcd, 0xad, 0x25, 0xb3, 0x7e, 0xc0, 0x5f, 0x7f, 0xec, 0x6d, 0x94, 0xb1, - 0x88, 0x6c, 0x0e, 0xf8, 0x53, 0x90, 0xb7, 0x55, 0x36, 0x47, 0xf9, 0x12, 0xb9, 0x6c, 0xfe, 0x28, - 0x83, 0x94, 0x44, 0xd9, 0x14, 0xf7, 0xc9, 0x0f, 0x62, 0xef, 0xb2, 0x26, 0x7e, 0x3d, 0x8b, 0x46, - 0xca, 0x96, 0x47, 0xea, 0x6c, 0xc7, 0x78, 0xc0, 0xa7, 0x8a, 0x9b, 0xa8, 0x5f, 0xf8, 0x18, 0xde, - 0xe7, 0xf7, 0x05, 0xfb, 0xf1, 0x10, 0x95, 0xc2, 0x49, 0x2c, 0xbd, 0x87, 0x89, 0xd6, 0x23, 0x42, - 0x3e, 0xe0, 0x73, 0xce, 0xc1, 0x10, 0xf2, 0x01, 0x9f, 0xbc, 0xde, 0xa1, 0x42, 0xfe, 0xaf, 0x19, - 0x74, 0x3c, 0xa1, 0x72, 0x7c, 0x11, 0xf5, 0x54, 0xda, 0x8b, 0x10, 0x38, 0x2b, 0x13, 0x7a, 0x0c, - 0xbb, 0xed, 0x45, 0x88, 0x99, 0xa5, 0xf9, 0x48, 0xbc, 0x00, 0xcf, 0xe3, 0xe7, 0xca, 0xa5, 0x71, - 0x2e, 0x55, 0x55, 0x78, 0xe8, 0x4f, 0xc1, 0x49, 0x5f, 0x16, 0x3c, 0xa1, 0xb7, 0x4d, 0xa3, 0x16, - 0x79, 0x42, 0x4f, 0xcb, 0xe0, 0x0f, 0xa3, 0xbe, 0xe2, 0x1b, 0x6d, 0x87, 0x00, 0x5f, 0x26, 0xf1, - 0x87, 0x02, 0xbe, 0x3e, 0x22, 0x89, 0x33, 0x8b, 0x06, 0x40, 0x29, 0xa2, 0xbc, 0x43, 0x86, 0xea, - 0xa7, 0x32, 0xe8, 0x6c, 0x7a, 0xeb, 0xf0, 0xe3, 0xa8, 0x87, 0xee, 0xcc, 0x8b, 0xda, 0x2c, 0xff, - 0x74, 0x96, 0x61, 0xd4, 0x6e, 0x90, 0xaa, 0xee, 0x88, 0xc6, 0xbe, 0x4f, 0x86, 0x5f, 0x44, 0xfd, - 0x65, 0xd7, 0x6d, 0x13, 0xa7, 0xf2, 0xe4, 0x2d, 0xad, 0xcc, 0xf7, 0x84, 0xb0, 0xe7, 0x30, 0x01, - 0x5c, 0x75, 0x9f, 0x8c, 0x84, 0xc6, 0x12, 0xe9, 0xd5, 0x4f, 0x64, 0xd0, 0xb9, 0x4e, 0x5f, 0x85, - 0x9f, 0x44, 0xbd, 0x0b, 0xc4, 0xd2, 0x2d, 0xaf, 0x5c, 0xe2, 0x4d, 0x82, 0x2d, 0x96, 0x07, 0x30, - 0x79, 0xa7, 0x10, 0x10, 0xd2, 0x42, 0xec, 0x5c, 0x31, 0x70, 0x64, 0x60, 0x67, 0xa0, 0x00, 0x8b, - 0x14, 0xf2, 0x09, 0xd5, 0xdf, 0xcd, 0xa2, 0x81, 0xf9, 0x46, 0xbb, 0x6e, 0x0a, 0x0b, 0xc7, 0x8e, - 0xed, 0x6d, 0xdf, 0xfa, 0xcd, 0x6e, 0xcf, 0xfa, 0xa5, 0xc3, 0xcd, 0xd9, 0xe1, 0x70, 0xf3, 0xcb, - 0xe1, 0x17, 0x50, 0xa1, 0x05, 0xdf, 0x11, 0x3d, 0x89, 0x65, 0x5f, 0x97, 0x76, 0x12, 0xcb, 0xca, - 0xd0, 0xf1, 0x55, 0xdb, 0xc5, 0xf8, 0x0a, 0xcb, 0x0a, 0x02, 0x0d, 0x17, 0x89, 0x23, 0x81, 0xee, - 0x89, 0x40, 0xc3, 0x05, 0xe1, 0x48, 0xa0, 0xbb, 0x10, 0xe8, 0x17, 0xb3, 0x68, 0x48, 0xae, 0x12, - 0x3f, 0x8e, 0xfa, 0x59, 0x35, 0xec, 0x5c, 0x28, 0x23, 0x38, 0x15, 0x87, 0x60, 0x0d, 0xb1, 0x1f, - 0xfc, 0x80, 0xeb, 0xd8, 0xb2, 0xee, 0x56, 0xc3, 0x13, 0x1a, 0x76, 0x7f, 0xdb, 0xcb, 0x3c, 0xa1, - 0x22, 0x28, 0x6d, 0x68, 0x59, 0x77, 0xc7, 0xc3, 0xdf, 0x78, 0x02, 0x61, 0x87, 0xb4, 0x5d, 0x22, - 0x33, 0xc8, 0x03, 0x03, 0x9e, 0xde, 0x39, 0x8a, 0xd5, 0x46, 0x18, 0x4c, 0x64, 0xf3, 0x91, 0xa0, - 0xd9, 0xa0, 0x0c, 0xdd, 0x5b, 0xc8, 0x3d, 0x2d, 0xd0, 0x27, 0x1f, 0x73, 0x32, 0x82, 0x92, 0xee, - 0xe9, 0x6c, 0x53, 0xee, 0x77, 0x80, 0xfa, 0x1b, 0x2b, 0xa8, 0x7b, 0xce, 0x22, 0x73, 0x4b, 0xf8, - 0x09, 0xd4, 0x47, 0x15, 0x66, 0xda, 0xa6, 0x7d, 0x99, 0xe1, 0xfe, 0x13, 0x82, 0x26, 0x01, 0x62, - 0xaa, 0x4b, 0x0b, 0xa9, 0xf0, 0x75, 0x96, 0xbf, 0x9e, 0xcd, 0xb1, 0x5c, 0xfb, 0xb0, 0x58, 0x86, - 0x61, 0xa6, 0xba, 0x34, 0x81, 0xce, 0x2f, 0xc5, 0x1f, 0xe8, 0xe4, 0xe2, 0xa5, 0x18, 0xc6, 0x2f, - 0xc5, 0xc7, 0xc7, 0x74, 0x52, 0x6a, 0xf8, 0xe8, 0xee, 0x29, 0x4e, 0x31, 0xd5, 0xa5, 0x25, 0xa7, - 0x94, 0x1f, 0x10, 0x1d, 0x4a, 0xa3, 0x4e, 0x1f, 0x22, 0x6e, 0xaa, 0x4b, 0x93, 0x68, 0xf1, 0x33, - 0xa8, 0x9f, 0xff, 0x7e, 0xc5, 0xe6, 0x37, 0xca, 0x42, 0x34, 0x21, 0x01, 0x35, 0xd5, 0xa5, 0x89, - 0x94, 0x42, 0xa5, 0xf3, 0x8e, 0x69, 0x79, 0xfc, 0x8d, 0x72, 0xb4, 0x52, 0xc0, 0x09, 0x95, 0xc2, - 0x6f, 0xfc, 0x22, 0x1a, 0x0c, 0xc2, 0x34, 0xbd, 0x4e, 0x6a, 0x1e, 0x3f, 0xfc, 0x3e, 0x19, 0x29, - 0xcc, 0x90, 0x53, 0x5d, 0x9a, 0x4c, 0x8d, 0x2f, 0xa1, 0x82, 0x46, 0x5c, 0xf3, 0x0d, 0xff, 0xba, - 0x78, 0x48, 0x18, 0xe7, 0xe6, 0x1b, 0x54, 0x4a, 0x1c, 0x4f, 0x7b, 0x27, 0xbc, 0x9f, 0xe6, 0x47, - 0xd5, 0x38, 0x52, 0xcb, 0x84, 0x65, 0xd0, 0xde, 0x11, 0x9c, 0x13, 0x5e, 0x0e, 0x83, 0x57, 0xf1, - 0x94, 0x97, 0xfd, 0xd1, 0x28, 0x01, 0x22, 0x76, 0xaa, 0x4b, 0x8b, 0xd0, 0x0b, 0x52, 0x2d, 0x99, - 0xee, 0x0a, 0x8f, 0x17, 0x1a, 0x95, 0x2a, 0x45, 0x09, 0x52, 0xa5, 0x3f, 0x85, 0xaa, 0x67, 0x89, - 0xb7, 0x6a, 0x3b, 0x2b, 0x3c, 0x3a, 0x68, 0xb4, 0x6a, 0x8e, 0x15, 0xaa, 0xe6, 0x10, 0xb1, 0x6a, - 0x3a, 0xe0, 0x86, 0x92, 0xab, 0xd6, 0x3d, 0x5d, 0xac, 0x9a, 0x9d, 0xc4, 0xf9, 0x9d, 0x34, 0x4d, - 0xf4, 0xbb, 0x2c, 0xf3, 0x78, 0xbc, 0x43, 0x01, 0x27, 0x74, 0x28, 0xfc, 0xa6, 0x95, 0x0a, 0xd9, - 0xa5, 0x79, 0x6a, 0xf1, 0xa0, 0x52, 0x01, 0x45, 0x2b, 0x15, 0xf3, 0x50, 0x5f, 0x17, 0x93, 0x2e, - 0x2b, 0x23, 0x72, 0x07, 0x85, 0x18, 0xda, 0x41, 0x42, 0x72, 0xe6, 0x51, 0x48, 0xe8, 0xaa, 0x60, - 0x20, 0xef, 0x0f, 0x5a, 0x38, 0x3e, 0x3f, 0xd5, 0xa5, 0x41, 0xaa, 0x57, 0x95, 0xa5, 0x0a, 0x56, - 0x8e, 0x03, 0xc5, 0x80, 0x4f, 0x41, 0x61, 0x53, 0x5d, 0x1a, 0x4b, 0x23, 0xfc, 0x84, 0x90, 0x94, - 0x4f, 0x39, 0x21, 0x4f, 0x11, 0x01, 0x82, 0x4e, 0x11, 0x61, 0xea, 0xbe, 0xc9, 0x78, 0xe2, 0x3a, - 0xe5, 0xa4, 0xbc, 0xd4, 0x44, 0xf1, 0x53, 0x5d, 0x5a, 0x3c, 0xd9, 0xdd, 0x33, 0x52, 0x2e, 0x37, - 0xe5, 0x54, 0x24, 0x84, 0x57, 0x88, 0xa2, 0xe2, 0x12, 0xb3, 0xbe, 0xcd, 0x45, 0xf2, 0x8e, 0xf3, - 0xc9, 0xea, 0xb4, 0xbc, 0x71, 0x49, 0x20, 0x99, 0xea, 0xd2, 0x92, 0x4a, 0xe2, 0xf1, 0x58, 0x46, - 0x35, 0x45, 0x91, 0x7d, 0x63, 0x22, 0xe8, 0xa9, 0x2e, 0x2d, 0x96, 0x83, 0xed, 0xba, 0x98, 0xca, - 0x4c, 0x39, 0x23, 0x77, 0x62, 0x88, 0xa1, 0x9d, 0x28, 0xa4, 0x3c, 0xbb, 0x2e, 0xa6, 0xb7, 0x52, - 0xce, 0xc6, 0x4b, 0x85, 0x33, 0xa7, 0x90, 0x06, 0x4b, 0x4b, 0xce, 0xd8, 0xa3, 0xdc, 0xc7, 0x73, - 0xa6, 0xf2, 0xf2, 0x49, 0x34, 0x53, 0x5d, 0x5a, 0x72, 0xb6, 0x1f, 0x2d, 0x39, 0xd5, 0x8d, 0x72, - 0xae, 0x13, 0xcf, 0xa0, 0x75, 0xc9, 0x69, 0x72, 0xf4, 0x0e, 0x89, 0x47, 0x94, 0xf3, 0x72, 0xfc, - 0xe0, 0x54, 0xc2, 0xa9, 0x2e, 0xad, 0x43, 0xfa, 0x92, 0x5b, 0x29, 0x59, 0x40, 0x94, 0x0b, 0x72, - 0xca, 0xe4, 0x44, 0xa2, 0xa9, 0x2e, 0x2d, 0x25, 0x87, 0xc8, 0xad, 0x94, 0x24, 0x11, 0xca, 0x68, - 0x47, 0xb6, 0x81, 0x3c, 0x52, 0x52, 0x4c, 0xcc, 0x25, 0xe6, 0x57, 0x50, 0xee, 0x97, 0x55, 0x37, - 0x81, 0x84, 0xaa, 0x6e, 0x52, 0x66, 0x86, 0xb9, 0xc4, 0x84, 0x00, 0xca, 0x03, 0x1d, 0x18, 0x06, - 0x6d, 0x4c, 0x4c, 0x25, 0x30, 0x97, 0x18, 0x91, 0x5f, 0x51, 0x65, 0x86, 0x09, 0x24, 0x94, 0x61, - 0x52, 0x2c, 0xff, 0xb9, 0xc4, 0xc0, 0xed, 0xca, 0x83, 0x1d, 0x18, 0x86, 0x2d, 0x4c, 0x0a, 0xf9, - 0xfe, 0x8c, 0x14, 0x39, 0x5d, 0x79, 0x48, 0x9e, 0x37, 0x04, 0x14, 0x9d, 0x37, 0xc4, 0x18, 0xeb, - 0xe3, 0xb1, 0xd8, 0xb0, 0xca, 0xc3, 0xf2, 0x30, 0x8f, 0xa0, 0xe9, 0x30, 0x8f, 0x46, 0x93, 0x1d, - 0x8f, 0xc5, 0xc8, 0x54, 0x2e, 0xa6, 0x31, 0x01, 0xb4, 0xcc, 0x84, 0x45, 0xd5, 0x2c, 0x27, 0x04, - 0x69, 0x54, 0xde, 0x23, 0xfb, 0x75, 0xc7, 0x08, 0xa6, 0xba, 0xb4, 0x84, 0xd0, 0x8e, 0x5a, 0x72, - 0x44, 0x22, 0xe5, 0x92, 0x3c, 0x6c, 0x93, 0x68, 0xe8, 0xb0, 0x4d, 0x8c, 0x66, 0x34, 0x9d, 0xf4, - 0xf8, 0x44, 0xb9, 0x2c, 0x1b, 0x66, 0x71, 0x0a, 0x6a, 0x98, 0x25, 0x3c, 0x5a, 0xd1, 0x92, 0x63, - 0xec, 0x28, 0x8f, 0x74, 0x6c, 0x21, 0xd0, 0x24, 0xb4, 0x90, 0x85, 0x9c, 0x09, 0x6d, 0xa7, 0x5b, - 0xad, 0x86, 0xad, 0x1b, 0xca, 0x7b, 0x13, 0x6d, 0x27, 0x86, 0x14, 0x6c, 0x27, 0x06, 0xa0, 0xab, - 0xbc, 0xf8, 0xc6, 0x41, 0x79, 0x54, 0x5e, 0xe5, 0x45, 0x1c, 0x5d, 0xe5, 0xa5, 0xf7, 0x10, 0xe3, - 0xb1, 0xf7, 0x00, 0xca, 0x63, 0xb2, 0x02, 0x44, 0xd0, 0x54, 0x01, 0xa2, 0x2f, 0x08, 0x3e, 0x9a, - 0xee, 0x41, 0xaf, 0x5c, 0x01, 0x6e, 0xf7, 0xfb, 0xdc, 0xd2, 0xe8, 0xa6, 0xba, 0xb4, 0x74, 0x2f, - 0xfc, 0x72, 0x82, 0x43, 0xbc, 0x72, 0x55, 0x56, 0xb0, 0x18, 0x01, 0x55, 0xb0, 0xb8, 0x1b, 0x7d, - 0x39, 0xc1, 0xa3, 0x5d, 0x79, 0x3c, 0x95, 0x55, 0xf0, 0xcd, 0x09, 0x7e, 0xf0, 0xd7, 0x45, 0x97, - 0x74, 0xe5, 0x09, 0x79, 0xb1, 0x0b, 0x31, 0x74, 0xb1, 0x13, 0x5c, 0xd7, 0xaf, 0x8b, 0xce, 0xd8, - 0xca, 0xb5, 0x78, 0xa9, 0x70, 0x89, 0x14, 0x9c, 0xb6, 0xb5, 0x64, 0x1f, 0x66, 0xe5, 0x49, 0x59, - 0xeb, 0x92, 0x68, 0xa8, 0xd6, 0x25, 0xfa, 0x3f, 0x4f, 0xc6, 0x5d, 0x91, 0x95, 0xeb, 0xd1, 0x4d, - 0xb6, 0x8c, 0xa7, 0x96, 0x4f, 0xcc, 0x7d, 0xf9, 0xe5, 0x68, 0xb8, 0x3c, 0xe5, 0xa9, 0xc8, 0xb5, - 0xaf, 0x84, 0xa5, 0xf6, 0x6d, 0x24, 0xbc, 0xde, 0xcb, 0xd1, 0x08, 0x73, 0xca, 0xd3, 0xc9, 0x1c, - 0x02, 0x5d, 0x89, 0x46, 0xa4, 0x7b, 0x39, 0x1a, 0x94, 0x4d, 0x79, 0x26, 0x99, 0x43, 0x20, 0xdd, - 0x68, 0x10, 0xb7, 0x27, 0x84, 0x30, 0xf1, 0xca, 0xfb, 0x64, 0xd3, 0x31, 0x40, 0x50, 0xd3, 0x31, - 0x0c, 0x26, 0xff, 0x84, 0x10, 0x5e, 0x5d, 0x79, 0x36, 0x56, 0x24, 0x68, 0xac, 0x10, 0x84, 0xfd, - 0x09, 0x21, 0x2c, 0xb9, 0xf2, 0x5c, 0xac, 0x48, 0xd0, 0x3a, 0x21, 0x78, 0xb9, 0xd1, 0xe9, 0xfd, - 0xaa, 0xf2, 0xbc, 0x7c, 0x18, 0x9c, 0x4e, 0x39, 0xd5, 0xa5, 0x75, 0x7a, 0x07, 0xfb, 0xd1, 0x74, - 0xc7, 0x6e, 0xe5, 0x05, 0x79, 0x08, 0xa7, 0xd1, 0xd1, 0x21, 0x9c, 0xea, 0x1c, 0xfe, 0x62, 0x24, - 0x96, 0x85, 0xf2, 0xa2, 0x3c, 0xc5, 0x49, 0x48, 0x3a, 0xc5, 0x45, 0x23, 0x5f, 0x48, 0x41, 0x1a, - 0x94, 0xf7, 0xcb, 0x53, 0x9c, 0x88, 0xa3, 0x53, 0x9c, 0x14, 0xd0, 0x61, 0x3c, 0x16, 0x3b, 0x40, - 0x79, 0x49, 0x9e, 0xe2, 0x22, 0x68, 0x3a, 0xc5, 0x45, 0xa3, 0x0d, 0xbc, 0x18, 0x79, 0x42, 0xaf, - 0xbc, 0x9c, 0xdc, 0x7e, 0x40, 0x8a, 0xed, 0x67, 0x0f, 0xee, 0xb5, 0xe4, 0xb7, 0xe0, 0x4a, 0x51, - 0x1e, 0xbf, 0x49, 0x34, 0x74, 0xfc, 0x26, 0xbe, 0x23, 0x8f, 0x6e, 0x1c, 0xb8, 0x56, 0x8d, 0x75, - 0xd8, 0x38, 0x84, 0xa6, 0x48, 0x02, 0x58, 0xda, 0x23, 0xb3, 0x8d, 0xd0, 0x78, 0xca, 0x1e, 0xd9, - 0xdf, 0x06, 0x45, 0xe8, 0xe9, 0xec, 0x1a, 0xf3, 0x33, 0x56, 0x4a, 0xf2, 0xec, 0x1a, 0x23, 0xa0, - 0xb3, 0x6b, 0xdc, 0x3b, 0x79, 0x12, 0x0d, 0x73, 0x2d, 0x62, 0xee, 0xd3, 0xa6, 0x55, 0x57, 0x26, - 0x22, 0xef, 0x2d, 0x23, 0x78, 0x3a, 0x3b, 0x45, 0x61, 0xb0, 0x5e, 0x33, 0xd8, 0x78, 0xc3, 0x6c, - 0x2d, 0xda, 0xba, 0x63, 0x54, 0x88, 0x65, 0x28, 0x93, 0x91, 0xf5, 0x3a, 0x81, 0x06, 0xd6, 0xeb, - 0x04, 0x38, 0x84, 0x88, 0x8b, 0xc0, 0x35, 0x52, 0x23, 0xe6, 0x5d, 0xa2, 0xdc, 0x00, 0xb6, 0xa3, - 0x69, 0x6c, 0x39, 0xd9, 0x54, 0x97, 0x96, 0xc6, 0x81, 0xda, 0xea, 0x33, 0x6b, 0x95, 0x57, 0xa7, - 0x83, 0xf0, 0x03, 0xf3, 0x0e, 0x69, 0xe9, 0x0e, 0x51, 0xa6, 0x64, 0x5b, 0x3d, 0x91, 0x88, 0xda, - 0xea, 0x89, 0x88, 0x38, 0x5b, 0x7f, 0x2c, 0x94, 0x3b, 0xb1, 0x0d, 0x47, 0x44, 0x72, 0x69, 0x3a, - 0x3b, 0xc9, 0x08, 0x2a, 0xa0, 0x69, 0xdb, 0xaa, 0xc3, 0x49, 0xc5, 0x2b, 0xf2, 0xec, 0x94, 0x4e, - 0x49, 0x67, 0xa7, 0x74, 0x2c, 0x55, 0x75, 0x19, 0xcb, 0xc6, 0xe0, 0x4d, 0x59, 0xd5, 0x13, 0x48, - 0xa8, 0xaa, 0x27, 0x80, 0xe3, 0x0c, 0x35, 0xe2, 0x12, 0x4f, 0x99, 0xee, 0xc4, 0x10, 0x48, 0xe2, - 0x0c, 0x01, 0x1c, 0x67, 0x38, 0x49, 0xbc, 0xda, 0xb2, 0x32, 0xd3, 0x89, 0x21, 0x90, 0xc4, 0x19, - 0x02, 0x98, 0x6e, 0x36, 0x65, 0xf0, 0x58, 0xbb, 0xb1, 0xe2, 0xf7, 0xd9, 0xac, 0xbc, 0xd9, 0x4c, - 0x25, 0xa4, 0x9b, 0xcd, 0x54, 0x24, 0xfe, 0xc4, 0x96, 0xfd, 0xe0, 0x95, 0x39, 0xa8, 0xf0, 0x4a, - 0x68, 0x17, 0x6c, 0xa5, 0xd4, 0x54, 0x97, 0xb6, 0x55, 0x3f, 0xfb, 0xf7, 0x06, 0x4e, 0xa3, 0xca, - 0x3c, 0x54, 0x75, 0x2c, 0x38, 0xab, 0x60, 0xe0, 0xa9, 0x2e, 0x2d, 0x70, 0x2b, 0x7d, 0x06, 0xf5, - 0xc3, 0x47, 0x95, 0x2d, 0xd3, 0x2b, 0x8d, 0x29, 0xaf, 0xca, 0x5b, 0x26, 0x01, 0x45, 0xb7, 0x4c, - 0xc2, 0x4f, 0x3a, 0x89, 0xc3, 0x4f, 0x36, 0xc5, 0x94, 0xc6, 0x14, 0x4d, 0x9e, 0xc4, 0x25, 0x24, - 0x9d, 0xc4, 0x25, 0x40, 0x50, 0x6f, 0xc9, 0xb1, 0x5b, 0xa5, 0x31, 0xa5, 0x92, 0x50, 0x2f, 0x43, - 0x05, 0xf5, 0xb2, 0x9f, 0x41, 0xbd, 0x95, 0xe5, 0xb6, 0x57, 0xa2, 0xdf, 0xb8, 0x90, 0x50, 0xaf, - 0x8f, 0x0c, 0xea, 0xf5, 0x01, 0x74, 0x2a, 0x04, 0xc0, 0xbc, 0x63, 0xd3, 0x49, 0xfb, 0xa6, 0xd9, - 0x68, 0x28, 0xb7, 0xe4, 0xa9, 0x30, 0x8a, 0xa7, 0x53, 0x61, 0x14, 0x46, 0x4d, 0x4f, 0xd6, 0x2a, - 0xb2, 0xd8, 0xae, 0x2b, 0xb7, 0x65, 0xd3, 0x33, 0xc4, 0x50, 0xd3, 0x33, 0xfc, 0x05, 0xbb, 0x0b, - 0xfa, 0x4b, 0x23, 0x4b, 0x0e, 0x71, 0x97, 0x95, 0x3b, 0x91, 0xdd, 0x85, 0x80, 0x83, 0xdd, 0x85, - 0xf0, 0x1b, 0xd7, 0xd1, 0x7d, 0xd2, 0x42, 0xe3, 0x5f, 0xda, 0x54, 0x88, 0xee, 0xd4, 0x96, 0x95, - 0x0f, 0x00, 0xab, 0x07, 0x13, 0x97, 0x2a, 0x99, 0x74, 0xaa, 0x4b, 0xeb, 0xc4, 0x09, 0xb6, 0xe5, - 0xaf, 0x4e, 0xb3, 0x58, 0xae, 0xda, 0xfc, 0xb8, 0xbf, 0x09, 0x7d, 0x2d, 0xb2, 0x2d, 0x8f, 0x93, - 0xc0, 0xb6, 0x3c, 0x0e, 0xc6, 0x2d, 0x74, 0x21, 0xb2, 0x55, 0x9b, 0xd1, 0x1b, 0x74, 0x5f, 0x42, - 0x8c, 0x79, 0xbd, 0xb6, 0x42, 0x3c, 0xe5, 0x83, 0xc0, 0xfb, 0x62, 0xca, 0x86, 0x2f, 0x42, 0x3d, - 0xd5, 0xa5, 0x6d, 0xc2, 0x0f, 0xab, 0x28, 0x5f, 0x99, 0x5c, 0x98, 0x57, 0x3e, 0x24, 0x9f, 0x6f, - 0x52, 0xd8, 0x54, 0x97, 0x06, 0x38, 0x6a, 0xa5, 0xdd, 0x6a, 0xd5, 0x1d, 0xdd, 0x20, 0xcc, 0xd0, - 0x02, 0xdb, 0x8d, 0x1b, 0xa0, 0x1f, 0x96, 0xad, 0xb4, 0x34, 0x3a, 0x6a, 0xa5, 0xa5, 0xe1, 0xa8, - 0xa2, 0x4a, 0x69, 0x4b, 0x94, 0x8f, 0xc8, 0x8a, 0x2a, 0x21, 0xa9, 0xa2, 0xca, 0x49, 0x4e, 0x3e, - 0x80, 0x4e, 0x05, 0xfb, 0x79, 0xbe, 0xfe, 0xb2, 0x4e, 0x53, 0x3e, 0x0a, 0x7c, 0x2e, 0xc4, 0x2e, - 0x03, 0x24, 0xaa, 0xa9, 0x2e, 0x2d, 0xa5, 0x3c, 0x5d, 0x71, 0x63, 0x19, 0xb9, 0xb8, 0x79, 0xf1, - 0x2d, 0xf2, 0x8a, 0x9b, 0x42, 0x46, 0x57, 0xdc, 0x14, 0x54, 0x22, 0x73, 0x2e, 0x54, 0x7d, 0x13, - 0xe6, 0x81, 0x4c, 0xd3, 0x38, 0x24, 0x32, 0xe7, 0x96, 0xda, 0xe2, 0x26, 0xcc, 0x03, 0x6b, 0x2d, - 0x8d, 0x03, 0xbe, 0x84, 0x0a, 0x95, 0xca, 0x8c, 0xd6, 0xb6, 0x94, 0x5a, 0xc4, 0x5b, 0x16, 0xa0, - 0x53, 0x5d, 0x1a, 0xc7, 0x53, 0x33, 0x68, 0xa2, 0xa1, 0xbb, 0x9e, 0x59, 0x73, 0x61, 0xc4, 0xf8, - 0x23, 0xc4, 0x90, 0xcd, 0xa0, 0x24, 0x1a, 0x6a, 0x06, 0x25, 0xc1, 0xa9, 0xbd, 0x38, 0xae, 0xbb, - 0xae, 0x6e, 0x19, 0x8e, 0x3e, 0x06, 0xcb, 0x04, 0x89, 0xbc, 0xc6, 0x92, 0xb0, 0xd4, 0x5e, 0x94, - 0x21, 0x70, 0xf8, 0xee, 0x43, 0x7c, 0x33, 0x67, 0x29, 0x72, 0xf8, 0x1e, 0xc1, 0xc3, 0xe1, 0x7b, - 0x04, 0x06, 0x76, 0xa7, 0x0f, 0xd3, 0x48, 0xdd, 0xa4, 0x22, 0x52, 0xea, 0x11, 0xbb, 0x33, 0x4a, - 0x00, 0x76, 0x67, 0x14, 0x28, 0x35, 0xc9, 0x5f, 0x6e, 0x97, 0x53, 0x9a, 0x14, 0xae, 0xb2, 0xb1, - 0x32, 0x74, 0xfd, 0x0e, 0x07, 0x47, 0x69, 0xcd, 0xd2, 0x9b, 0x76, 0x69, 0xcc, 0x97, 0xba, 0x29, - 0xaf, 0xdf, 0xa9, 0x84, 0x74, 0xfd, 0x4e, 0x45, 0xd2, 0xd9, 0xd5, 0xdf, 0x68, 0x2d, 0xeb, 0x0e, - 0x31, 0x4a, 0xa6, 0x03, 0x27, 0x8b, 0x6b, 0x6c, 0x6b, 0xf8, 0xba, 0x3c, 0xbb, 0x76, 0x20, 0xa5, - 0xb3, 0x6b, 0x07, 0x34, 0x35, 0xf2, 0x92, 0xd1, 0x1a, 0xd1, 0x0d, 0x65, 0x45, 0x36, 0xf2, 0xd2, - 0x29, 0xa9, 0x91, 0x97, 0x8e, 0x4d, 0xff, 0x9c, 0x3b, 0x8e, 0xe9, 0x11, 0xa5, 0xb1, 0x95, 0xcf, - 0x01, 0xd2, 0xf4, 0xcf, 0x01, 0x34, 0xdd, 0x10, 0x46, 0x3b, 0xa4, 0x29, 0x6f, 0x08, 0xe3, 0xdd, - 0x10, 0x2d, 0x41, 0x2d, 0x16, 0xfe, 0x28, 0x4f, 0xb1, 0x64, 0x8b, 0x85, 0x83, 0xa9, 0xc5, 0x12, - 0x3e, 0xdb, 0x93, 0x9e, 0x62, 0x29, 0xb6, 0xbc, 0x86, 0x8a, 0x38, 0xba, 0x86, 0x4a, 0xcf, 0xb6, - 0x9e, 0x91, 0xde, 0x19, 0x28, 0x2d, 0xd9, 0xea, 0x10, 0x50, 0xd4, 0xea, 0x10, 0x5f, 0x24, 0x8c, - 0xa3, 0x63, 0x70, 0x0b, 0xae, 0xb5, 0x83, 0x7b, 0x9c, 0x8f, 0xc9, 0x9f, 0x19, 0x41, 0xd3, 0xcf, - 0x8c, 0x80, 0x24, 0x26, 0x7c, 0xda, 0x72, 0x52, 0x98, 0x84, 0xe7, 0x83, 0x11, 0x10, 0x9e, 0x46, - 0xb8, 0x52, 0x9c, 0x99, 0x2e, 0x1b, 0xf3, 0xe2, 0x15, 0x99, 0x2b, 0x9f, 0xc0, 0xc6, 0x29, 0xa6, - 0xba, 0xb4, 0x84, 0x72, 0xf8, 0x75, 0x74, 0x8e, 0x43, 0xf9, 0x8b, 0x6b, 0x48, 0xdc, 0x6f, 0x04, - 0x0b, 0x82, 0x27, 0xfb, 0xb1, 0x75, 0xa2, 0x9d, 0xea, 0xd2, 0x3a, 0xf2, 0x4a, 0xaf, 0x8b, 0xaf, - 0x0f, 0xed, 0xad, 0xd4, 0x15, 0x2c, 0x12, 0x1d, 0x79, 0xa5, 0xd7, 0xc5, 0xe5, 0x7e, 0x77, 0x2b, - 0x75, 0x05, 0x9d, 0xd0, 0x91, 0x17, 0x76, 0xd1, 0x68, 0x27, 0x7c, 0xb1, 0xd1, 0x50, 0x56, 0xa1, - 0xba, 0xf7, 0x6c, 0xa5, 0xba, 0x22, 0x18, 0x9c, 0x9b, 0x71, 0xa4, 0xb3, 0xf4, 0x5c, 0x8b, 0x58, - 0x15, 0x69, 0x01, 0xba, 0x27, 0xcf, 0xd2, 0x31, 0x02, 0x3a, 0x4b, 0xc7, 0x80, 0x74, 0x40, 0x89, - 0xcf, 0x55, 0x94, 0x35, 0x79, 0x40, 0x89, 0x38, 0x3a, 0xa0, 0xa4, 0xa7, 0x2d, 0x73, 0xe8, 0xf8, - 0xdc, 0x8a, 0xa7, 0xfb, 0x16, 0xa4, 0xcb, 0xbb, 0xf2, 0x8d, 0xc8, 0x25, 0x53, 0x9c, 0x04, 0x2e, - 0x99, 0xe2, 0x60, 0x3a, 0x46, 0x28, 0xb8, 0xb2, 0x66, 0xd5, 0x26, 0x75, 0xb3, 0xd1, 0x76, 0x88, - 0xf2, 0xff, 0xc8, 0x63, 0x24, 0x82, 0xa6, 0x63, 0x24, 0x02, 0xa2, 0x0b, 0x34, 0x05, 0x15, 0x5d, - 0xd7, 0xac, 0x5b, 0x7c, 0x5f, 0xd9, 0x6e, 0x78, 0xca, 0xff, 0x2b, 0x2f, 0xd0, 0x49, 0x34, 0x74, - 0x81, 0x4e, 0x82, 0xc3, 0xa9, 0x13, 0xed, 0x05, 0xba, 0x78, 0x88, 0x77, 0x95, 0xff, 0x5f, 0xe4, - 0xd4, 0x29, 0x81, 0x06, 0x4e, 0x9d, 0x12, 0xe0, 0x74, 0x7d, 0x64, 0x36, 0xd9, 0xb4, 0x19, 0xdc, - 0x55, 0xff, 0xff, 0xf2, 0xfa, 0x18, 0xc5, 0xd3, 0xf5, 0x31, 0x0a, 0x93, 0xf9, 0xf0, 0x2e, 0xf8, - 0x6b, 0x69, 0x7c, 0x02, 0xf9, 0xc7, 0xca, 0xe0, 0x1b, 0x22, 0x1f, 0x3e, 0x52, 0xbe, 0x35, 0x93, - 0xc6, 0x28, 0x18, 0x1e, 0xb1, 0x42, 0x32, 0x23, 0x8d, 0xdc, 0x35, 0xc9, 0xaa, 0xf2, 0xf1, 0x54, - 0x46, 0x8c, 0x40, 0x66, 0xc4, 0x60, 0xf8, 0x35, 0x74, 0x2a, 0x84, 0xcd, 0x90, 0xe6, 0x62, 0x30, - 0x33, 0x7d, 0x5b, 0x46, 0x36, 0x83, 0x93, 0xc9, 0xa8, 0x19, 0x9c, 0x8c, 0x49, 0x62, 0xcd, 0x45, - 0xf7, 0xd7, 0x37, 0x61, 0x1d, 0x48, 0x30, 0x85, 0x41, 0x12, 0x6b, 0x2e, 0xcd, 0x6f, 0xdf, 0x84, - 0x75, 0x20, 0xd3, 0x14, 0x06, 0xf8, 0x93, 0x19, 0x74, 0x31, 0x19, 0x55, 0x6c, 0x34, 0x26, 0x6d, - 0x27, 0xc4, 0x29, 0xdf, 0x91, 0x91, 0x0f, 0x1a, 0xb6, 0x56, 0x6c, 0xaa, 0x4b, 0xdb, 0x62, 0x05, - 0xf8, 0xfd, 0x68, 0xb0, 0xd8, 0x36, 0x4c, 0x0f, 0x2e, 0xde, 0xa8, 0xe1, 0xfc, 0x9d, 0x99, 0xc8, - 0x16, 0x47, 0xc4, 0xc2, 0x16, 0x47, 0x04, 0xe0, 0x57, 0xd0, 0x48, 0x85, 0xd4, 0xda, 0x8e, 0xe9, - 0xad, 0x69, 0xa4, 0x65, 0x3b, 0x1e, 0xe5, 0xf1, 0x5d, 0x19, 0x79, 0x12, 0x8b, 0x51, 0xd0, 0x49, - 0x2c, 0x06, 0xc4, 0xb7, 0x63, 0xb7, 0xf2, 0xbc, 0x33, 0x3f, 0x91, 0xe9, 0x78, 0x2d, 0x1f, 0xf4, - 0x65, 0x72, 0x71, 0x3c, 0x1f, 0xb9, 0x45, 0xe7, 0x5c, 0x3f, 0x99, 0xe9, 0x70, 0x8d, 0x2e, 0xcc, - 0x70, 0x71, 0x30, 0xe5, 0x98, 0x90, 0xc3, 0x5d, 0xf9, 0xee, 0x4c, 0x87, 0x6b, 0xef, 0x90, 0x63, - 0x52, 0xfa, 0xf7, 0xa7, 0x98, 0xa7, 0x08, 0x67, 0xf4, 0x37, 0x32, 0x71, 0x57, 0x91, 0xa0, 0xbc, - 0x40, 0x48, 0x8b, 0xdd, 0x72, 0x03, 0xa5, 0x7f, 0x33, 0x13, 0xf7, 0xcd, 0x0b, 0x8b, 0x85, 0xbf, - 0x30, 0x41, 0x67, 0x27, 0xee, 0x79, 0xc4, 0xb1, 0xf4, 0x06, 0x74, 0x67, 0xc5, 0xb3, 0x1d, 0xbd, - 0x4e, 0x26, 0x2c, 0x7d, 0xb1, 0x41, 0x94, 0x4f, 0x65, 0x64, 0x0b, 0x36, 0x9d, 0x94, 0x5a, 0xb0, - 0xe9, 0x58, 0xbc, 0x8c, 0xee, 0x4b, 0xc2, 0x96, 0x4c, 0x17, 0xea, 0xf9, 0x74, 0x46, 0x36, 0x61, - 0x3b, 0xd0, 0x52, 0x13, 0xb6, 0x03, 0x1a, 0x5f, 0x43, 0x7d, 0x63, 0xb6, 0x3f, 0xfd, 0x7e, 0x4f, - 0xc4, 0x19, 0x32, 0xc0, 0x4c, 0x75, 0x69, 0x21, 0x19, 0x2f, 0xc3, 0x07, 0xf5, 0x67, 0xe2, 0x65, - 0xc2, 0xcb, 0xa7, 0xe0, 0x07, 0x2f, 0xc3, 0xc5, 0xfd, 0x37, 0xe3, 0x65, 0xc2, 0x3b, 0xae, 0xe0, - 0x07, 0x9d, 0x49, 0x58, 0x8d, 0x33, 0x93, 0x45, 0x6a, 0xb7, 0x8d, 0x2f, 0xeb, 0x8d, 0x06, 0xb1, - 0xea, 0x44, 0xf9, 0x6c, 0x64, 0x26, 0x49, 0x26, 0xa3, 0x33, 0x49, 0x32, 0x06, 0x7f, 0x18, 0x9d, - 0xbe, 0xad, 0x37, 0x4c, 0x23, 0xc4, 0xf9, 0x19, 0xbd, 0x95, 0xef, 0xcd, 0xc8, 0xbb, 0xe9, 0x14, - 0x3a, 0xba, 0x9b, 0x4e, 0x41, 0xe1, 0x19, 0x84, 0x61, 0x19, 0x0d, 0x66, 0x0b, 0xba, 0x3e, 0x2b, - 0x7f, 0x2b, 0x23, 0xdb, 0xa9, 0x71, 0x12, 0x6a, 0xa7, 0xc6, 0xa1, 0xb8, 0x9a, 0x9e, 0x1a, 0x44, - 0xf9, 0xbe, 0x8c, 0x7c, 0x5a, 0x93, 0x46, 0x38, 0xd5, 0xa5, 0xa5, 0xe7, 0x17, 0xb9, 0x81, 0x86, - 0x2b, 0xf3, 0xe5, 0xc9, 0xc9, 0x89, 0xca, 0xed, 0x72, 0x09, 0x1e, 0x3a, 0x18, 0xca, 0xf7, 0x47, - 0x56, 0xac, 0x28, 0x01, 0x5d, 0xb1, 0xa2, 0x30, 0xfc, 0x3c, 0x1a, 0xa0, 0xed, 0xa7, 0x03, 0x06, - 0x3e, 0xf9, 0x73, 0x19, 0xd9, 0x9c, 0x12, 0x91, 0xd4, 0x9c, 0x12, 0x7f, 0xe3, 0x0a, 0x3a, 0x41, - 0xa5, 0x38, 0xef, 0x90, 0x25, 0xe2, 0x10, 0xab, 0xe6, 0x8f, 0xe9, 0x1f, 0xc8, 0xc8, 0x56, 0x46, - 0x12, 0x11, 0xb5, 0x32, 0x92, 0xe0, 0x78, 0x05, 0x9d, 0x8b, 0x9e, 0x04, 0x89, 0xcf, 0x4e, 0x95, - 0x1f, 0xcc, 0x44, 0x8c, 0xe1, 0x0e, 0xc4, 0x60, 0x0c, 0x77, 0xc0, 0x63, 0x0b, 0x9d, 0xe7, 0xc7, - 0x2a, 0xdc, 0xe1, 0x32, 0x5a, 0xdb, 0x0f, 0xb1, 0xda, 0x1e, 0x0e, 0x1d, 0x02, 0x3b, 0x50, 0x4f, - 0x75, 0x69, 0x9d, 0xd9, 0x51, 0x3d, 0x8b, 0x27, 0xc0, 0x50, 0x7e, 0x38, 0x93, 0xec, 0x91, 0x22, - 0xb9, 0x29, 0x27, 0x65, 0xce, 0x78, 0x2d, 0x2d, 0x7d, 0x83, 0xf2, 0x23, 0x91, 0xf1, 0x96, 0x4c, - 0x46, 0xc7, 0x5b, 0x4a, 0xfe, 0x87, 0x57, 0xd0, 0x08, 0x53, 0xea, 0x79, 0x1d, 0x86, 0xa1, 0x55, - 0x27, 0x86, 0xf2, 0xb7, 0x23, 0xab, 0x5d, 0x8c, 0x02, 0x5c, 0x7b, 0xa2, 0x40, 0x3a, 0x75, 0x57, - 0x5a, 0xba, 0x65, 0xc1, 0x31, 0xab, 0xf2, 0x77, 0x22, 0x53, 0x77, 0x88, 0x02, 0xc7, 0xdd, 0xe0, - 0x17, 0xd5, 0x84, 0x4e, 0xa9, 0x8f, 0x94, 0x1f, 0x8d, 0x68, 0x42, 0x27, 0x62, 0xaa, 0x09, 0x1d, - 0xf3, 0x28, 0xdd, 0x4e, 0x79, 0x02, 0xae, 0x7c, 0x3e, 0xb2, 0x22, 0x27, 0x52, 0xd1, 0x15, 0x39, - 0xf9, 0x05, 0xf9, 0xed, 0x94, 0xe7, 0xd3, 0xca, 0x8f, 0x75, 0xe6, 0x1b, 0xae, 0xf4, 0xc9, 0xaf, - 0xaf, 0x6f, 0xa7, 0x3c, 0x3d, 0x56, 0x7e, 0xbc, 0x33, 0xdf, 0xd0, 0xb1, 0x2f, 0xf9, 0xe5, 0x72, - 0x35, 0xfd, 0xd9, 0xae, 0xf2, 0x13, 0xd1, 0xa9, 0x2b, 0x85, 0x10, 0xa6, 0xae, 0xb4, 0xb7, 0xbf, - 0x8b, 0xe8, 0x0c, 0xd3, 0x90, 0x1b, 0x8e, 0xde, 0x5a, 0xae, 0x10, 0xcf, 0x33, 0xad, 0xba, 0xbf, - 0x13, 0xfb, 0xbb, 0x99, 0xc8, 0xf1, 0x58, 0x1a, 0x25, 0x1c, 0x8f, 0xa5, 0x21, 0xa9, 0xf2, 0xc6, - 0x1e, 0xe8, 0x2a, 0x3f, 0x19, 0x51, 0xde, 0x18, 0x05, 0x55, 0xde, 0xf8, 0xbb, 0xde, 0x57, 0x12, - 0xde, 0xa1, 0x2a, 0x7f, 0x2f, 0x9d, 0x57, 0xd0, 0xbe, 0x84, 0xe7, 0xab, 0xaf, 0x24, 0x3c, 0xb7, - 0x54, 0xfe, 0x7e, 0x3a, 0xaf, 0xd0, 0x07, 0x29, 0xfe, 0x4a, 0xf3, 0x35, 0x74, 0x8a, 0xcd, 0xe6, - 0x93, 0xc4, 0x20, 0xd2, 0x87, 0xfe, 0x54, 0x64, 0xec, 0x27, 0x93, 0xc1, 0x91, 0x7b, 0x22, 0x26, - 0x89, 0x35, 0x6f, 0xeb, 0x4f, 0x6f, 0xc2, 0x3a, 0xdc, 0x10, 0x24, 0x63, 0xe8, 0x7a, 0x23, 0x3e, - 0x7e, 0x53, 0x7e, 0x26, 0xb2, 0xde, 0x88, 0x48, 0x70, 0xe7, 0x10, 0x5f, 0xca, 0x3d, 0x2f, 0x3f, - 0xf4, 0x52, 0xfe, 0x41, 0x62, 0xe1, 0xa0, 0x03, 0xe4, 0x57, 0x61, 0xcf, 0xcb, 0x8f, 0x9a, 0x94, - 0x9f, 0x4d, 0x2c, 0x1c, 0x7c, 0x80, 0xfc, 0x02, 0x8a, 0x6e, 0x91, 0xda, 0x9e, 0xcd, 0x58, 0x49, - 0xd3, 0xc3, 0xcf, 0x45, 0xb7, 0x48, 0x89, 0x64, 0xb0, 0x45, 0x4a, 0xc4, 0x24, 0xb1, 0xe6, 0x9f, - 0xf7, 0xf3, 0x9b, 0xb0, 0x16, 0x36, 0x76, 0x89, 0x98, 0x24, 0xd6, 0xfc, 0xe3, 0xbf, 0xb0, 0x09, - 0x6b, 0x61, 0x63, 0x97, 0x88, 0xa1, 0xe6, 0x58, 0x88, 0xb9, 0x4d, 0x1c, 0x37, 0x54, 0xbf, 0x5f, - 0x88, 0x98, 0x63, 0x29, 0x74, 0xd4, 0x1c, 0x4b, 0x41, 0x25, 0x72, 0xe7, 0x42, 0xf9, 0xc5, 0xcd, - 0xb8, 0x87, 0xf7, 0x32, 0x29, 0xa8, 0x44, 0xee, 0x5c, 0x2e, 0xbf, 0xb4, 0x19, 0xf7, 0xf0, 0x62, - 0x26, 0x05, 0x45, 0x8d, 0xa2, 0x8a, 0xa7, 0x7b, 0x66, 0x6d, 0xca, 0x76, 0x3d, 0x61, 0x91, 0xff, - 0xe5, 0x88, 0x51, 0x94, 0x44, 0x44, 0x8d, 0xa2, 0x24, 0x78, 0x9c, 0x29, 0x97, 0xc6, 0x17, 0x3b, - 0x32, 0x0d, 0x2d, 0xad, 0x24, 0x78, 0x9c, 0x29, 0x17, 0xc2, 0x3f, 0xec, 0xc8, 0x34, 0xf4, 0x94, - 0x4f, 0x82, 0x8f, 0xf5, 0xa0, 0x6e, 0x38, 0x6c, 0x53, 0x3f, 0x9f, 0x41, 0x03, 0x15, 0xcf, 0x21, - 0x7a, 0x93, 0x87, 0x04, 0x3b, 0x8b, 0x7a, 0x99, 0xd7, 0xaa, 0xff, 0xc4, 0x56, 0x0b, 0x7e, 0xe3, - 0x8b, 0x68, 0x68, 0x5a, 0x77, 0x3d, 0x28, 0x59, 0xb6, 0x0c, 0x72, 0x0f, 0x5e, 0x6c, 0xe5, 0xb4, - 0x08, 0x14, 0x4f, 0x33, 0x3a, 0x56, 0x0e, 0xa2, 0x40, 0xe6, 0x36, 0x8d, 0x84, 0xd5, 0xfb, 0xd6, - 0xfa, 0x68, 0x17, 0x04, 0xbe, 0x8a, 0x94, 0x55, 0xbf, 0x9a, 0x41, 0x31, 0x7f, 0xda, 0x9d, 0x3f, - 0x7d, 0x9f, 0x43, 0xc7, 0x22, 0x91, 0x47, 0xf9, 0xb3, 0xb3, 0x2d, 0x06, 0x26, 0x8d, 0x96, 0xc6, - 0xef, 0x09, 0x9e, 0x3b, 0xdd, 0xd2, 0xa6, 0x79, 0x94, 0x33, 0x88, 0xcf, 0xdf, 0x76, 0x1a, 0x9a, - 0x80, 0xe2, 0x51, 0x6c, 0xbe, 0x39, 0x1c, 0x86, 0x55, 0xc4, 0x17, 0xf9, 0x3b, 0xfc, 0x4c, 0x18, - 0x1b, 0x2d, 0x92, 0xcf, 0x9b, 0xbd, 0xbb, 0x7f, 0x3f, 0x1a, 0x28, 0x37, 0x5b, 0xc4, 0x71, 0x6d, - 0x4b, 0xf7, 0x6c, 0x87, 0x3f, 0x63, 0x86, 0xb8, 0x59, 0xa6, 0x00, 0x17, 0x63, 0x39, 0x89, 0xf4, - 0xf8, 0xb2, 0x9f, 0x62, 0x2c, 0x07, 0x01, 0x2d, 0xe1, 0x2d, 0x62, 0x34, 0x47, 0x34, 0xa3, 0xa0, - 0xa4, 0xb7, 0x5c, 0x1d, 0x1e, 0xc6, 0x05, 0xa4, 0x6d, 0x0a, 0x10, 0x49, 0x81, 0x02, 0x3f, 0x8a, - 0x0a, 0x70, 0x91, 0xe0, 0x42, 0xea, 0x40, 0x1e, 0xb1, 0xad, 0x01, 0x10, 0x31, 0x3e, 0x16, 0xa3, - 0xc1, 0x37, 0xd1, 0x70, 0x78, 0x4b, 0x7a, 0xc3, 0xb1, 0xdb, 0x2d, 0x3f, 0x59, 0x08, 0xe4, 0xd6, - 0x5e, 0x09, 0x70, 0xd5, 0x3a, 0x20, 0x05, 0x16, 0xb1, 0x82, 0x78, 0x0a, 0x1d, 0x0b, 0x61, 0x54, - 0x44, 0x7e, 0x92, 0x22, 0x48, 0x10, 0x29, 0xf0, 0xa2, 0xe2, 0x94, 0x12, 0x44, 0x46, 0x8a, 0xe1, - 0x32, 0xea, 0xf1, 0xc3, 0xb5, 0xf5, 0x6e, 0xaa, 0xa4, 0xc7, 0x79, 0xb8, 0xb6, 0x1e, 0x31, 0x50, - 0x9b, 0x5f, 0x1e, 0x4f, 0xa2, 0x21, 0xcd, 0x6e, 0x7b, 0x64, 0xc1, 0xe6, 0xdb, 0x0b, 0x1e, 0x16, - 0x10, 0xda, 0xe4, 0x50, 0x4c, 0xd5, 0xb3, 0xfd, 0xd4, 0xe4, 0x62, 0x8a, 0x6c, 0xb9, 0x14, 0x9e, - 0x45, 0x23, 0xb1, 0xfb, 0x64, 0x31, 0x61, 0xb8, 0xf0, 0x79, 0x71, 0x66, 0xf1, 0xa2, 0xf8, 0x3b, - 0x33, 0xa8, 0xb0, 0xe0, 0xe8, 0xa6, 0xe7, 0xf2, 0x37, 0x75, 0x27, 0xaf, 0xac, 0x3a, 0x7a, 0x8b, - 0xea, 0xc7, 0x15, 0x88, 0x58, 0x7a, 0x5b, 0x6f, 0xb4, 0x89, 0x3b, 0x76, 0x87, 0x7e, 0xdd, 0xbf, - 0x5d, 0x1f, 0x7d, 0xbe, 0x0e, 0xa7, 0x56, 0x57, 0x6a, 0x76, 0xf3, 0x6a, 0xdd, 0xd1, 0xef, 0x9a, - 0x1e, 0xd8, 0x06, 0x7a, 0xe3, 0xaa, 0x47, 0x1a, 0x70, 0x38, 0x76, 0x55, 0x6f, 0x99, 0x57, 0x21, - 0x32, 0xf6, 0xd5, 0x80, 0x13, 0xab, 0x81, 0xaa, 0x80, 0x07, 0x7f, 0x89, 0x2a, 0xc0, 0x70, 0x78, - 0x16, 0x21, 0xfe, 0xa9, 0xc5, 0x56, 0x8b, 0x3f, 0xd0, 0x13, 0x8e, 0x94, 0x7c, 0x0c, 0x53, 0xec, - 0x40, 0x60, 0x7a, 0x4b, 0x88, 0x06, 0xab, 0x09, 0x1c, 0xa8, 0x16, 0x2c, 0xf0, 0x16, 0xf9, 0x62, - 0x1a, 0x0c, 0x25, 0xee, 0x37, 0x36, 0x41, 0x48, 0xd1, 0x62, 0x78, 0x11, 0x1d, 0xe3, 0x7c, 0x83, - 0xdc, 0x11, 0x43, 0xf2, 0xac, 0x10, 0x41, 0x33, 0xa5, 0x0d, 0xda, 0x68, 0x70, 0xb0, 0x58, 0x47, - 0xa4, 0x04, 0x1e, 0x0b, 0x73, 0xdd, 0xce, 0xea, 0x4d, 0xe2, 0x2a, 0xc7, 0x40, 0x63, 0xcf, 0x6d, - 0xac, 0x8f, 0x2a, 0x7e, 0x79, 0x88, 0x5c, 0x98, 0x98, 0xb9, 0x1d, 0x8a, 0x88, 0x3c, 0x98, 0xd6, - 0x0f, 0x27, 0xf0, 0x88, 0xea, 0xbc, 0x5c, 0x04, 0x8f, 0xa3, 0xc1, 0xe0, 0x7d, 0xc0, 0xad, 0x5b, - 0xe5, 0x12, 0xbc, 0x00, 0xe4, 0xc1, 0x2b, 0x23, 0xd9, 0x1d, 0x44, 0x26, 0x52, 0x19, 0x21, 0xa8, - 0x02, 0x7b, 0x12, 0x18, 0x09, 0xaa, 0xd0, 0x4a, 0x08, 0xaa, 0x30, 0x8f, 0x5f, 0x44, 0xfd, 0xc5, - 0x3b, 0x15, 0x1e, 0x2c, 0xc2, 0x55, 0x8e, 0x87, 0xa9, 0x82, 0xf4, 0x55, 0xb7, 0xea, 0x07, 0x96, - 0x10, 0x9b, 0x2e, 0xd2, 0xe3, 0x09, 0x34, 0x24, 0xb9, 0x18, 0xb9, 0xca, 0x09, 0xe0, 0x00, 0x2d, - 0xd7, 0x01, 0x53, 0x75, 0x38, 0x4a, 0x1c, 0x5e, 0x72, 0x21, 0xaa, 0x35, 0x25, 0xd3, 0x85, 0xb4, - 0x2b, 0x1a, 0x81, 0xb8, 0x14, 0xf0, 0x9e, 0xb0, 0x97, 0x69, 0x8d, 0xc1, 0x51, 0x55, 0x87, 0xe1, - 0xc4, 0x1e, 0x8d, 0x14, 0xc3, 0xaf, 0x23, 0x0c, 0x89, 0x5a, 0x88, 0xe1, 0xdf, 0x38, 0x95, 0x4b, - 0xae, 0x72, 0x0a, 0x22, 0x37, 0xe3, 0xe8, 0x3b, 0xf8, 0x72, 0x69, 0xec, 0x22, 0x9f, 0x3e, 0x2e, - 0xe8, 0xac, 0x54, 0xd5, 0x7f, 0x03, 0x5f, 0x35, 0xa5, 0x2c, 0xb6, 0x09, 0x5c, 0xf1, 0x2a, 0x3a, - 0x3d, 0xef, 0x90, 0xbb, 0xa6, 0xdd, 0x76, 0xfd, 0xe5, 0xc3, 0x9f, 0xb7, 0x4e, 0x6f, 0x3a, 0x6f, - 0x3d, 0xc0, 0x2b, 0x3e, 0xd9, 0x72, 0xc8, 0xdd, 0xaa, 0x1f, 0xaf, 0x57, 0x0a, 0x37, 0x99, 0xc6, - 0x1d, 0x72, 0xf1, 0xbe, 0xd1, 0x76, 0x08, 0x87, 0x9b, 0xc4, 0x55, 0x94, 0x70, 0xaa, 0x65, 0x21, - 0x46, 0xcc, 0x00, 0x27, 0xe5, 0xe2, 0x95, 0x8b, 0x61, 0x0d, 0xe1, 0x1b, 0xe3, 0xfe, 0xed, 0x63, - 0xb1, 0xc6, 0x32, 0x96, 0x2a, 0x67, 0x80, 0x99, 0x4a, 0xc5, 0x52, 0xaf, 0x05, 0xb1, 0xbb, 0xab, - 0x3a, 0xc7, 0x8b, 0x62, 0x89, 0x97, 0xc6, 0xd3, 0x68, 0x78, 0xde, 0x81, 0xb3, 0x90, 0x9b, 0x64, - 0x6d, 0xde, 0x6e, 0x98, 0xb5, 0x35, 0x78, 0xd6, 0xc8, 0xa7, 0xca, 0x16, 0xc3, 0x55, 0x57, 0xc8, - 0x5a, 0xb5, 0x05, 0x58, 0x71, 0x59, 0x89, 0x96, 0x14, 0x63, 0xe9, 0xde, 0xb7, 0xb5, 0x58, 0xba, - 0x04, 0x0d, 0xf3, 0xbb, 0xcb, 0x7b, 0x1e, 0xb1, 0xe8, 0x52, 0xef, 0xf2, 0x27, 0x8c, 0x4a, 0xe4, - 0xae, 0x33, 0xc0, 0xb3, 0xa9, 0x83, 0x8f, 0x32, 0x12, 0x80, 0xc5, 0x86, 0x45, 0x8b, 0xc4, 0x03, - 0xce, 0x9e, 0xdf, 0x41, 0xc0, 0xd9, 0x5f, 0xce, 0x89, 0xf3, 0x2f, 0x3e, 0x87, 0xf2, 0x42, 0x3e, - 0x18, 0x88, 0xa6, 0x09, 0xb1, 0xb3, 0xf3, 0x3c, 0x48, 0x70, 0x1f, 0xb7, 0x5d, 0x82, 0xb0, 0x29, - 0x90, 0x00, 0x30, 0x8c, 0xb0, 0xa8, 0x85, 0x04, 0x90, 0x7c, 0xad, 0xbd, 0xd8, 0x30, 0x6b, 0x10, - 0x51, 0x3d, 0x27, 0xc4, 0x49, 0x00, 0x28, 0x0b, 0xa8, 0x2e, 0x90, 0xe0, 0x6b, 0xa8, 0xdf, 0x3f, - 0x83, 0x0b, 0xa3, 0xc9, 0x42, 0xa0, 0x6d, 0x3e, 0x5b, 0xf3, 0x38, 0xde, 0x02, 0x11, 0x7e, 0x0e, - 0xa1, 0x70, 0x3a, 0xe0, 0x96, 0x16, 0x2c, 0x15, 0xe2, 0xec, 0x21, 0x2e, 0x15, 0x21, 0x35, 0x9d, - 0x38, 0x45, 0x75, 0xf4, 0xd3, 0x4d, 0xc2, 0xc4, 0x29, 0xe9, 0xb0, 0xa8, 0x20, 0x72, 0x11, 0x3c, - 0x87, 0x46, 0x62, 0x1a, 0xc8, 0x63, 0xcf, 0x42, 0xca, 0xf1, 0x04, 0xf5, 0x15, 0x17, 0xe6, 0x58, - 0x59, 0xfc, 0x20, 0xca, 0xdd, 0xd2, 0xca, 0x3c, 0xfe, 0x25, 0x0b, 0x9d, 0x2a, 0x05, 0xc7, 0xa1, - 0x58, 0xf5, 0xdb, 0xb2, 0xb1, 0xb5, 0x89, 0x4a, 0x8f, 0xb3, 0x12, 0x7a, 0x10, 0xa4, 0xe7, 0xd7, - 0xcf, 0xa4, 0x27, 0x10, 0xe1, 0x4b, 0xa8, 0x77, 0x9e, 0xce, 0x0c, 0x35, 0xbb, 0xc1, 0xfb, 0x13, - 0x22, 0x19, 0xb5, 0x38, 0x4c, 0x0b, 0xb0, 0xf8, 0x9a, 0x90, 0x25, 0x55, 0x08, 0x29, 0xed, 0x67, - 0x49, 0x8d, 0xc6, 0x56, 0x86, 0x7c, 0xa9, 0xd7, 0x22, 0x59, 0x97, 0x78, 0x99, 0x84, 0x75, 0x31, - 0xcc, 0xb2, 0x14, 0x58, 0xa5, 0xdd, 0x9b, 0x59, 0xa5, 0xea, 0x6f, 0x66, 0xe2, 0xe3, 0x0c, 0x5f, - 0x8f, 0x47, 0x77, 0x85, 0x45, 0x28, 0x00, 0x8a, 0xb5, 0x06, 0x71, 0x5e, 0xa5, 0x38, 0xad, 0xd9, - 0x1d, 0xc7, 0x69, 0xcd, 0x6d, 0x33, 0x4e, 0xab, 0xfa, 0xbf, 0xf2, 0x1d, 0x7d, 0x6d, 0xf7, 0x25, - 0x9e, 0xd7, 0xb3, 0x74, 0x67, 0x45, 0x6b, 0x2f, 0xba, 0xb1, 0xfd, 0x01, 0x73, 0x25, 0xac, 0xea, - 0x6c, 0x68, 0xb9, 0x9a, 0x4c, 0x89, 0x5f, 0x42, 0x03, 0xfe, 0x07, 0x40, 0xfc, 0x5f, 0x21, 0x6e, - 0x6d, 0xb0, 0xaa, 0x45, 0x22, 0xe5, 0x4a, 0x05, 0xf0, 0x53, 0xa8, 0x0f, 0x6c, 0x9a, 0x96, 0x5e, - 0xf3, 0x83, 0x43, 0xb3, 0x68, 0xd2, 0x3e, 0x50, 0x8c, 0x59, 0x15, 0x50, 0xe2, 0x8f, 0xa0, 0x02, - 0xcf, 0x90, 0xc0, 0x12, 0x88, 0x5f, 0xdd, 0x82, 0x73, 0xf2, 0x15, 0x31, 0x3b, 0x02, 0xdb, 0xa5, - 0x00, 0x40, 0xda, 0xa5, 0xb0, 0xc4, 0x08, 0x0b, 0xe8, 0xf8, 0xbc, 0x43, 0x0c, 0x70, 0x83, 0x9f, - 0xb8, 0xd7, 0x72, 0x78, 0xee, 0x0a, 0x36, 0xca, 0x61, 0x91, 0x6a, 0xf9, 0x68, 0xba, 0x7c, 0x72, - 0xbc, 0x18, 0xa1, 0x36, 0xa1, 0x38, 0xb5, 0x5c, 0x58, 0x4b, 0x6e, 0x92, 0xb5, 0x55, 0x48, 0x67, - 0xdf, 0x1b, 0x5a, 0x2e, 0x5c, 0xd0, 0x2b, 0x1c, 0x25, 0x5a, 0x2e, 0x72, 0xa1, 0xb3, 0xcf, 0xa2, - 0xfe, 0x9d, 0x66, 0x18, 0xf8, 0xc5, 0x6c, 0xca, 0xab, 0x95, 0xc3, 0x9b, 0xe4, 0x2d, 0xc8, 0x3c, - 0xdc, 0x9d, 0x92, 0x79, 0xf8, 0x1b, 0xd9, 0x94, 0x27, 0x39, 0x87, 0x3a, 0x43, 0x68, 0x20, 0x0c, - 0x39, 0x43, 0x68, 0x98, 0x9c, 0xd5, 0x34, 0x34, 0x91, 0x28, 0x92, 0x4b, 0xb8, 0xb0, 0x69, 0x2e, - 0xe1, 0x9f, 0xca, 0x75, 0x7a, 0xb2, 0x74, 0x24, 0xfb, 0xed, 0xc8, 0xfe, 0x1a, 0xea, 0x0f, 0x24, - 0x5b, 0x2e, 0x81, 0xd1, 0x33, 0x18, 0xe4, 0x33, 0x61, 0x60, 0x28, 0x23, 0x10, 0xe1, 0xcb, 0xac, - 0xad, 0x15, 0xf3, 0x0d, 0x16, 0x59, 0x7f, 0x90, 0xc7, 0x4c, 0xd7, 0x3d, 0xbd, 0xea, 0x9a, 0x6f, - 0x10, 0x2d, 0x40, 0xab, 0xff, 0x24, 0x9b, 0xf8, 0xee, 0xeb, 0xa8, 0x8f, 0xb6, 0xd1, 0x47, 0x09, - 0x42, 0x64, 0x2f, 0xd6, 0x8e, 0x84, 0xb8, 0x0d, 0x21, 0xfe, 0x59, 0x36, 0xf1, 0x7d, 0xdf, 0x91, - 0x10, 0xb7, 0x33, 0x5b, 0x3c, 0x8a, 0xfa, 0x34, 0x7b, 0xd5, 0x1d, 0x87, 0x8d, 0x0d, 0x9b, 0x2b, - 0x60, 0xa2, 0x76, 0xec, 0x55, 0xb7, 0x0a, 0x5b, 0x16, 0x2d, 0x24, 0x50, 0xbf, 0x99, 0xed, 0xf0, - 0x02, 0xf2, 0x48, 0xf0, 0x6f, 0xe7, 0x12, 0xf9, 0xab, 0x59, 0xe9, 0x85, 0xe5, 0xa1, 0x4e, 0xb5, - 0x5f, 0xa9, 0x2d, 0x93, 0xa6, 0x1e, 0x4d, 0xb5, 0xef, 0x02, 0x94, 0x67, 0xb5, 0x0d, 0x49, 0xd4, - 0x2f, 0x65, 0x23, 0x4f, 0x4c, 0x8f, 0x64, 0xb7, 0x65, 0xd9, 0x05, 0x5a, 0xc7, 0x5f, 0xcd, 0x1e, - 0x49, 0x6e, 0xab, 0x92, 0xfb, 0x44, 0x36, 0xf2, 0xc0, 0xf8, 0xd0, 0xca, 0x8e, 0x0e, 0xc0, 0xf8, - 0xc3, 0xe7, 0x43, 0xab, 0x49, 0x8f, 0xa2, 0x3e, 0x2e, 0x87, 0x60, 0xa9, 0x60, 0xf3, 0x3e, 0x03, - 0xc2, 0x29, 0x6b, 0x40, 0xa0, 0x7e, 0x47, 0x16, 0xc9, 0x0f, 0xbf, 0x0f, 0xa9, 0x0e, 0xfd, 0x6a, - 0x56, 0x7e, 0xf2, 0x7e, 0x78, 0xf5, 0xe7, 0x0a, 0x42, 0x95, 0xf6, 0x62, 0x8d, 0x47, 0x4c, 0xed, - 0x16, 0x8e, 0xe9, 0x03, 0xa8, 0x26, 0x50, 0xa8, 0xff, 0x3b, 0x9b, 0xf8, 0x0e, 0xff, 0xf0, 0x0a, - 0xf0, 0x49, 0x38, 0x15, 0xaf, 0x59, 0xe1, 0x44, 0x0e, 0x87, 0x90, 0x74, 0xfc, 0xc5, 0x52, 0xda, - 0xf9, 0x84, 0xf8, 0x7d, 0x09, 0xe6, 0x1a, 0x04, 0xdc, 0x0f, 0xcd, 0x35, 0xf1, 0x1a, 0x42, 0x30, - 0xdc, 0xfe, 0x65, 0x76, 0xb3, 0xb0, 0x05, 0x87, 0x79, 0x55, 0xed, 0x99, 0xd7, 0xd7, 0x20, 0xbc, - 0x1e, 0xed, 0x89, 0x01, 0x96, 0x70, 0xad, 0xc5, 0x40, 0xe2, 0xdd, 0x1b, 0xa7, 0x52, 0xff, 0xb4, - 0x3b, 0xf9, 0xcd, 0xfc, 0xe1, 0x15, 0xe1, 0x39, 0x94, 0x9f, 0xd7, 0xbd, 0x65, 0xae, 0xc9, 0x70, - 0xa5, 0xd7, 0xd2, 0xbd, 0x65, 0x0d, 0xa0, 0xf8, 0x32, 0xea, 0xd5, 0xf4, 0x55, 0x76, 0xe6, 0x59, - 0x08, 0x93, 0xe1, 0x39, 0xfa, 0x6a, 0x95, 0x9d, 0x7b, 0x06, 0x68, 0xac, 0x06, 0xc9, 0x18, 0xd9, - 0xc9, 0x37, 0x64, 0x02, 0x63, 0xc9, 0x18, 0x83, 0x14, 0x8c, 0xe7, 0x50, 0x7e, 0xcc, 0x36, 0xd6, - 0xe0, 0xfa, 0x6a, 0x80, 0x55, 0xb6, 0x68, 0x1b, 0x6b, 0x1a, 0x40, 0xf1, 0x27, 0x33, 0xa8, 0x67, - 0x8a, 0xe8, 0x06, 0x1d, 0x21, 0x7d, 0x9d, 0xbc, 0x4e, 0x3e, 0xb0, 0x37, 0x5e, 0x27, 0x23, 0xcb, - 0xac, 0x32, 0x51, 0x51, 0x78, 0xfd, 0xf8, 0x06, 0xea, 0x1d, 0xd7, 0x3d, 0x52, 0xb7, 0x9d, 0x35, - 0xf0, 0xa3, 0x19, 0x0a, 0xfd, 0xae, 0x25, 0xfd, 0xf1, 0x89, 0xd8, 0xcd, 0x58, 0x8d, 0xff, 0xd2, - 0x82, 0xc2, 0x54, 0x2c, 0x3c, 0x3d, 0x7c, 0x7f, 0x28, 0x16, 0x96, 0x07, 0x3e, 0xc8, 0x02, 0x1f, - 0x1c, 0x2b, 0x0f, 0x24, 0x1f, 0x2b, 0x83, 0xf5, 0x08, 0xbe, 0x76, 0x90, 0x02, 0x71, 0x10, 0x16, - 0x7d, 0x66, 0x3d, 0x02, 0x14, 0x32, 0x20, 0x6a, 0x02, 0x89, 0xfa, 0xb5, 0x6e, 0x94, 0xf8, 0xc2, - 0xf6, 0x48, 0xc9, 0x8f, 0x94, 0x3c, 0x54, 0xf2, 0x52, 0x4c, 0xc9, 0xcf, 0xc6, 0xdf, 0x6c, 0xbf, - 0x43, 0x35, 0xfc, 0x73, 0xf9, 0x58, 0xc4, 0x87, 0xc3, 0xbd, 0xbb, 0x0c, 0xa5, 0xd7, 0xbd, 0xa9, - 0xf4, 0x82, 0x01, 0x51, 0xd8, 0x74, 0x40, 0xf4, 0x6c, 0x75, 0x40, 0xf4, 0xa6, 0x0e, 0x88, 0x50, - 0x41, 0xfa, 0x52, 0x15, 0xa4, 0xcc, 0x07, 0x0d, 0xea, 0x9c, 0x78, 0xe2, 0xdc, 0xc6, 0xfa, 0xe8, - 0x10, 0x1d, 0x4d, 0x89, 0x19, 0x27, 0x80, 0x85, 0xfa, 0xd5, 0x7c, 0x87, 0x30, 0x2d, 0xfb, 0xa2, - 0x23, 0x4f, 0xa2, 0x5c, 0xb1, 0xd5, 0xe2, 0xfa, 0x71, 0x5c, 0x88, 0x10, 0x93, 0x52, 0x8a, 0x52, - 0xe3, 0xe7, 0x50, 0xae, 0x78, 0xa7, 0x12, 0x4d, 0x36, 0x51, 0xbc, 0x53, 0xe1, 0x5f, 0x92, 0x5a, - 0xf6, 0x4e, 0x05, 0xbf, 0x10, 0x46, 0x7d, 0x5c, 0x6e, 0x5b, 0x2b, 0x7c, 0xa3, 0xc8, 0xdd, 0x6d, - 0x7d, 0x77, 0x9c, 0x1a, 0x45, 0xd1, 0xed, 0x62, 0x84, 0x36, 0xa2, 0x4d, 0x85, 0xad, 0x6b, 0x53, - 0xcf, 0xa6, 0xda, 0xd4, 0xbb, 0x55, 0x6d, 0xea, 0xdb, 0x82, 0x36, 0xa1, 0x4d, 0xb5, 0xa9, 0x7f, - 0xf7, 0xda, 0xd4, 0x42, 0x67, 0xe3, 0xa1, 0xb5, 0x02, 0x8d, 0xd0, 0x10, 0x8e, 0x63, 0xb9, 0x63, - 0x09, 0x5c, 0xfd, 0xb7, 0x19, 0xb6, 0xba, 0x0a, 0xe8, 0xaa, 0x4b, 0xf1, 0xa2, 0x7f, 0x5a, 0xbc, - 0xb4, 0xfa, 0x8b, 0xd9, 0xf4, 0x88, 0x60, 0x07, 0x73, 0x8a, 0xfb, 0x96, 0x44, 0x29, 0xe5, 0xe5, - 0x17, 0xda, 0xe9, 0x52, 0x8e, 0xb0, 0x4d, 0x92, 0xd9, 0x57, 0x32, 0x69, 0x61, 0xca, 0x76, 0x25, - 0xb1, 0x87, 0xe3, 0x1e, 0x6d, 0xe0, 0xa7, 0xef, 0xca, 0xae, 0x6c, 0x93, 0x48, 0xca, 0xee, 0xcf, - 0xa5, 0xb4, 0x15, 0x01, 0x4b, 0xe5, 0xd4, 0xdf, 0xcc, 0xa0, 0xe3, 0x37, 0xdb, 0x8b, 0x84, 0x7b, - 0xb0, 0x05, 0xcd, 0x78, 0x1d, 0x21, 0x0a, 0xe6, 0x4e, 0x2c, 0x19, 0x70, 0x62, 0x79, 0xaf, 0x18, - 0x62, 0x2c, 0x52, 0xe0, 0x4a, 0x48, 0xcd, 0x1c, 0x58, 0xce, 0xfb, 0xce, 0x9c, 0x2b, 0xed, 0x45, - 0x52, 0x8d, 0x79, 0xb2, 0x08, 0xdc, 0xcf, 0xbe, 0xc8, 0xdc, 0xe4, 0x77, 0xea, 0x34, 0xf2, 0xf3, - 0xd9, 0xd4, 0xa8, 0x6e, 0x07, 0x36, 0xfd, 0xe0, 0x87, 0x12, 0x7b, 0x25, 0x9a, 0x86, 0x30, 0x81, - 0x24, 0xc2, 0x31, 0x89, 0x4b, 0xb2, 0xc0, 0x0e, 0x78, 0x52, 0xcc, 0xb7, 0x55, 0x60, 0xbf, 0x9f, - 0x49, 0x8d, 0xbe, 0x77, 0x50, 0x05, 0xa6, 0xfe, 0xa7, 0x9c, 0x1f, 0xf4, 0x6f, 0x57, 0x9f, 0xf0, - 0x28, 0xea, 0xe3, 0x6f, 0x9f, 0x65, 0x07, 0x5c, 0x7e, 0x94, 0x07, 0x47, 0xc3, 0x01, 0x01, 0x5d, - 0xe6, 0x05, 0xef, 0x60, 0xc1, 0x01, 0x57, 0xf0, 0x0c, 0xd6, 0x04, 0x12, 0xba, 0x90, 0x4f, 0xdc, - 0x33, 0x3d, 0xb0, 0x0a, 0x68, 0x5f, 0xe6, 0xd8, 0x42, 0x4e, 0xee, 0x99, 0x1e, 0xb3, 0x09, 0x02, - 0x34, 0x5d, 0xa4, 0x2b, 0x61, 0xca, 0x6f, 0xbe, 0x48, 0xbb, 0x3c, 0xf3, 0x39, 0x7f, 0x36, 0xf6, - 0x28, 0xea, 0xe3, 0x5e, 0xad, 0xdc, 0xcd, 0x84, 0xb7, 0x96, 0xfb, 0xc1, 0x42, 0x6b, 0x03, 0x02, - 0xca, 0x51, 0x23, 0xf5, 0xd0, 0xb1, 0x0e, 0x38, 0x3a, 0x00, 0xd1, 0x38, 0x06, 0x5f, 0x43, 0x43, - 0x15, 0x4f, 0xb7, 0x0c, 0xdd, 0x31, 0xe6, 0xda, 0x5e, 0xab, 0xed, 0x89, 0x46, 0xa9, 0xeb, 0x19, - 0x76, 0xdb, 0xd3, 0x22, 0x14, 0xf8, 0x71, 0x34, 0xe8, 0x43, 0x26, 0x1c, 0xc7, 0x76, 0x44, 0xcb, - 0xc3, 0xf5, 0x0c, 0xe2, 0x38, 0x9a, 0x4c, 0x80, 0xdf, 0x87, 0x06, 0xcb, 0xd6, 0x5d, 0x9b, 0xe5, - 0x92, 0xbf, 0xa5, 0x4d, 0x73, 0x3b, 0x04, 0x9e, 0x62, 0x99, 0x01, 0xa2, 0xda, 0x76, 0x1a, 0x9a, - 0x4c, 0xa8, 0x6e, 0x64, 0xe3, 0xb1, 0x11, 0x0f, 0xef, 0xa6, 0xe5, 0xb2, 0xec, 0x4c, 0x07, 0x1e, - 0xa4, 0x60, 0x10, 0x8a, 0xbe, 0xbc, 0xcc, 0x2e, 0xbc, 0x86, 0x7a, 0x6f, 0x92, 0x35, 0xe6, 0xf7, - 0x59, 0x08, 0x5d, 0x85, 0x57, 0x38, 0x4c, 0x3c, 0x71, 0xf5, 0xe9, 0xd4, 0x2f, 0x67, 0xe3, 0x51, - 0x1f, 0x0f, 0xaf, 0xb0, 0x1f, 0x47, 0x3d, 0x20, 0xca, 0xb2, 0x7f, 0xe4, 0x0f, 0x02, 0x04, 0x71, - 0xcb, 0x1e, 0xc8, 0x3e, 0x99, 0xfa, 0x63, 0x85, 0x68, 0x28, 0xd0, 0xc3, 0x2b, 0xbd, 0xe7, 0x51, - 0xff, 0xb8, 0x6d, 0xb9, 0xa6, 0xeb, 0x11, 0xab, 0xe6, 0x2b, 0xec, 0x19, 0x6a, 0x50, 0xd5, 0x42, - 0xb0, 0xf8, 0x06, 0x49, 0xa0, 0xde, 0x89, 0xf2, 0xe2, 0xa7, 0x51, 0x1f, 0x88, 0x1c, 0xfc, 0xa4, - 0xd9, 0x84, 0x07, 0xb7, 0x05, 0x8b, 0x14, 0x18, 0x75, 0x92, 0x0e, 0x49, 0xf1, 0x2d, 0xd4, 0x3b, - 0xbe, 0x6c, 0x36, 0x0c, 0x87, 0x58, 0xe0, 0x2f, 0x2c, 0x44, 0x5c, 0x90, 0xfb, 0xf2, 0x0a, 0xfc, - 0x0b, 0xb4, 0xac, 0x39, 0x35, 0x5e, 0x4c, 0x7a, 0x85, 0xc5, 0x61, 0x67, 0xbf, 0x2f, 0x8b, 0x50, - 0x58, 0x00, 0xdf, 0x8f, 0xb2, 0x41, 0x36, 0x5d, 0x70, 0x53, 0x91, 0x34, 0x28, 0x0b, 0x4b, 0x05, - 0x1f, 0xdb, 0xd9, 0x4d, 0xc7, 0xf6, 0x2d, 0x54, 0x60, 0x27, 0x5e, 0xe0, 0x49, 0x2e, 0x44, 0x27, - 0x4c, 0x6d, 0xf0, 0x15, 0xa0, 0x67, 0x9b, 0x59, 0xb0, 0x3c, 0x25, 0xaf, 0x6c, 0xc6, 0xec, 0x6c, - 0x0d, 0x75, 0xc3, 0x5f, 0xf8, 0x22, 0xca, 0x2f, 0xf8, 0x99, 0x38, 0x07, 0xd9, 0x2c, 0x1d, 0x91, - 0x1f, 0xe0, 0x69, 0x37, 0x8d, 0xdb, 0x96, 0x47, 0xab, 0x86, 0x56, 0x0f, 0x70, 0xb9, 0x70, 0x98, - 0x24, 0x17, 0x0e, 0x53, 0xff, 0x45, 0x36, 0x21, 0x48, 0xed, 0xe1, 0x1d, 0x26, 0xcf, 0x22, 0x04, - 0x4f, 0xba, 0xa9, 0x3c, 0xfd, 0x27, 0x1a, 0x30, 0x4a, 0x80, 0x11, 0xa8, 0xad, 0xb4, 0xed, 0x08, - 0x89, 0xd5, 0xdf, 0xce, 0xc4, 0x22, 0x9b, 0xee, 0x4a, 0x8e, 0xa2, 0x55, 0x96, 0xdd, 0xa1, 0x19, - 0xeb, 0xf7, 0x45, 0x6e, 0x7b, 0x7d, 0x21, 0x7f, 0xcb, 0x1e, 0x58, 0xa6, 0xfb, 0xf9, 0x2d, 0x5f, - 0xcb, 0x26, 0xc5, 0x79, 0x3d, 0x98, 0x2a, 0x7e, 0x3d, 0x30, 0x4a, 0xf3, 0x91, 0xc8, 0xda, 0x00, - 0x8d, 0x66, 0x0b, 0xe6, 0x66, 0xea, 0x47, 0xd1, 0xb1, 0x48, 0xf4, 0x53, 0x9e, 0xb8, 0xf5, 0x62, - 0xe7, 0x30, 0xaa, 0xe9, 0xc1, 0x00, 0x24, 0x32, 0xf5, 0xff, 0x64, 0x3a, 0xc7, 0xbe, 0xdd, 0x77, - 0xd5, 0x49, 0x10, 0x40, 0xee, 0xaf, 0x46, 0x00, 0x7b, 0xb0, 0x0d, 0x3e, 0xd8, 0x02, 0x78, 0x87, - 0x4c, 0x1e, 0x6f, 0xb7, 0x00, 0x7e, 0x2c, 0xb3, 0x69, 0xe8, 0xe2, 0xfd, 0x96, 0x81, 0xfa, 0xef, - 0x33, 0x89, 0x21, 0x86, 0x77, 0xd5, 0xae, 0x17, 0x50, 0x81, 0xb9, 0xd5, 0xf0, 0x56, 0x09, 0x49, - 0x99, 0x28, 0x34, 0x2d, 0x8d, 0x39, 0xc3, 0xe2, 0x69, 0xd4, 0xc3, 0xda, 0x60, 0xf0, 0xde, 0x78, - 0xa8, 0x43, 0x9c, 0x63, 0x23, 0x6d, 0x72, 0xe4, 0x68, 0xf5, 0xb7, 0x32, 0xb1, 0x88, 0xc7, 0xfb, - 0xf8, 0x6d, 0xe1, 0x54, 0x9d, 0xdb, 0xfa, 0x54, 0xad, 0xfe, 0x49, 0x36, 0x39, 0xe0, 0xf2, 0x3e, - 0x7e, 0xc8, 0x5e, 0x1c, 0xa7, 0xed, 0x6c, 0xdd, 0x5a, 0x40, 0x43, 0xb2, 0x2c, 0xf8, 0xb2, 0x75, - 0x21, 0x39, 0xec, 0x74, 0x4a, 0x2b, 0x22, 0x3c, 0xd4, 0xb7, 0x32, 0xf1, 0x58, 0xd1, 0xfb, 0x3e, - 0x3f, 0xed, 0x4c, 0x5b, 0xe4, 0x4f, 0x79, 0x87, 0xac, 0x35, 0x7b, 0xf1, 0x29, 0xef, 0x90, 0x55, - 0x63, 0x67, 0x9f, 0xf2, 0x33, 0xd9, 0xb4, 0x50, 0xdb, 0xfb, 0xfe, 0x41, 0x1f, 0x14, 0x85, 0xcc, - 0x5a, 0xc6, 0x3f, 0xed, 0xfe, 0xb4, 0xd8, 0xd6, 0x29, 0x3c, 0x63, 0x7c, 0x76, 0x36, 0xc6, 0x13, - 0x85, 0xf5, 0x0e, 0x51, 0xe4, 0x83, 0x21, 0xac, 0x77, 0xc8, 0x50, 0x79, 0xe7, 0x09, 0xeb, 0xd7, - 0xb3, 0x5b, 0x8d, 0xef, 0x7e, 0x24, 0xbc, 0x98, 0xf0, 0x3e, 0x93, 0x8d, 0xe7, 0x1d, 0xd8, 0x77, - 0x31, 0x4d, 0xa2, 0x02, 0xcf, 0x80, 0x90, 0x2a, 0x1c, 0x86, 0x4f, 0xb3, 0x68, 0xf8, 0x77, 0x5c, - 0x47, 0xfc, 0x22, 0x67, 0x6b, 0x22, 0x61, 0xb4, 0xea, 0x37, 0x33, 0x91, 0x20, 0xfd, 0xfb, 0x72, - 0x84, 0xb0, 0xa3, 0x25, 0x09, 0xbf, 0xe8, 0x1f, 0x66, 0xe6, 0x23, 0x41, 0x92, 0x83, 0xef, 0x29, - 0x11, 0x4f, 0x37, 0x1b, 0xd1, 0xf2, 0x3c, 0x26, 0xc0, 0x97, 0xb3, 0x68, 0x24, 0x46, 0x8a, 0x2f, - 0x4a, 0xa1, 0x74, 0xe0, 0x58, 0x32, 0xe2, 0x3c, 0xce, 0x82, 0xea, 0x6c, 0xe3, 0x24, 0xf5, 0x22, - 0xca, 0x97, 0xf4, 0x35, 0xf6, 0x6d, 0xdd, 0x8c, 0xa5, 0xa1, 0xaf, 0x89, 0x27, 0x6e, 0x80, 0xc7, - 0x8b, 0xe8, 0x24, 0xbb, 0x0f, 0x31, 0x6d, 0x6b, 0xc1, 0x6c, 0x92, 0xb2, 0x35, 0x63, 0x36, 0x1a, - 0xa6, 0xcb, 0x2f, 0xf5, 0x1e, 0xdd, 0x58, 0x1f, 0xbd, 0xe4, 0xd9, 0x9e, 0xde, 0xa8, 0x12, 0x9f, - 0xac, 0xea, 0x99, 0x4d, 0x52, 0x35, 0xad, 0x6a, 0x13, 0x28, 0x05, 0x96, 0xc9, 0xac, 0x70, 0x99, - 0xc5, 0xc3, 0xae, 0xd4, 0x74, 0xcb, 0x22, 0x46, 0xd9, 0x1a, 0x5b, 0xf3, 0x08, 0xbb, 0x0c, 0xcc, - 0xb1, 0x23, 0x41, 0xf6, 0x36, 0x9c, 0xa1, 0x29, 0xe3, 0x45, 0x4a, 0xa0, 0x25, 0x14, 0x52, 0x7f, - 0x23, 0x9f, 0x90, 0x9f, 0xe1, 0x00, 0xa9, 0x8f, 0xdf, 0xd3, 0xf9, 0x4d, 0x7a, 0xfa, 0x2a, 0xea, - 0xe1, 0x01, 0x47, 0xf9, 0x05, 0x03, 0x38, 0xb3, 0xdf, 0x65, 0x20, 0xf1, 0x86, 0x86, 0x53, 0xe1, - 0x06, 0x3a, 0xbb, 0x40, 0xbb, 0x29, 0xb9, 0x33, 0x0b, 0x3b, 0xe8, 0xcc, 0x0e, 0xfc, 0xf0, 0x6b, - 0xe8, 0x34, 0x60, 0x13, 0xba, 0xb5, 0x07, 0xaa, 0x82, 0x18, 0x55, 0xac, 0xaa, 0xe4, 0xce, 0x4d, - 0x2b, 0x8f, 0x3f, 0x88, 0x06, 0x82, 0x01, 0x62, 0x12, 0x97, 0xdf, 0x5c, 0x74, 0x18, 0x67, 0x2c, - 0x00, 0x1c, 0x05, 0x83, 0x0b, 0x99, 0x1c, 0x44, 0x4c, 0xe2, 0xa5, 0xfe, 0xbb, 0x4c, 0xa7, 0x3c, - 0x11, 0xfb, 0x3e, 0x2b, 0xbf, 0x88, 0x7a, 0x0c, 0xf6, 0x51, 0x5c, 0xa7, 0x3a, 0x67, 0x92, 0x60, - 0xa4, 0x9a, 0x5f, 0x46, 0xfd, 0xe3, 0x4c, 0xc7, 0xf4, 0x14, 0x07, 0xfd, 0xf3, 0x3e, 0x93, 0x4b, - 0xf9, 0x3c, 0x3e, 0x89, 0x5e, 0x46, 0xc3, 0x66, 0x18, 0x3f, 0xbb, 0x1a, 0x86, 0x9f, 0xd2, 0x8e, - 0x09, 0x70, 0x18, 0x5d, 0xd7, 0xd1, 0x29, 0xdf, 0xf1, 0xd1, 0xf1, 0x3d, 0xc4, 0xdc, 0x6a, 0xdb, - 0x31, 0xd9, 0xb8, 0xd4, 0x4e, 0xb8, 0x11, 0xf7, 0x31, 0xf7, 0x96, 0x63, 0xd2, 0x0a, 0x74, 0x6f, - 0x99, 0x58, 0x7a, 0x75, 0xd5, 0x76, 0x56, 0x20, 0xca, 0x28, 0x1b, 0x9c, 0xda, 0x31, 0x06, 0xbf, - 0xe3, 0x83, 0xf1, 0x83, 0x68, 0xb0, 0xde, 0x68, 0x93, 0x20, 0xae, 0x23, 0xbb, 0xeb, 0xd3, 0x06, - 0x28, 0x30, 0xb8, 0x21, 0x39, 0x8f, 0x10, 0x10, 0x79, 0x90, 0x3c, 0x04, 0x2e, 0xf6, 0xb4, 0x3e, - 0x0a, 0x59, 0xe0, 0xdd, 0x75, 0x96, 0x69, 0x35, 0x13, 0x52, 0xb5, 0x61, 0x5b, 0xf5, 0xaa, 0x47, - 0x9c, 0x26, 0x34, 0x14, 0x9c, 0x19, 0xb4, 0x53, 0x40, 0x01, 0x57, 0x27, 0xee, 0xb4, 0x6d, 0xd5, - 0x17, 0x88, 0xd3, 0xa4, 0x4d, 0x7d, 0x14, 0x61, 0xde, 0x54, 0x07, 0x0e, 0x3d, 0xd8, 0xc7, 0x81, - 0x37, 0x83, 0xc6, 0x3f, 0x82, 0x9d, 0x86, 0xc0, 0x87, 0x8d, 0xa2, 0x7e, 0x16, 0xdc, 0x8e, 0x09, - 0x0d, 0x5c, 0x18, 0x34, 0xc4, 0x40, 0x20, 0xaf, 0x53, 0x88, 0x7b, 0x57, 0x30, 0xaf, 0x6e, 0x8d, - 0xff, 0x52, 0xdf, 0xcc, 0x25, 0x65, 0xd4, 0xd8, 0x95, 0xa2, 0x85, 0xd3, 0x6a, 0x76, 0x5b, 0xd3, - 0xea, 0x31, 0xab, 0xdd, 0xac, 0xea, 0xad, 0x56, 0x75, 0xc9, 0x6c, 0xc0, 0xb3, 0x2a, 0x58, 0xf8, - 0xb4, 0x41, 0xab, 0xdd, 0x2c, 0xb6, 0x5a, 0x93, 0x0c, 0x88, 0x1f, 0x41, 0x23, 0x94, 0x0e, 0x3a, - 0x29, 0xa0, 0xcc, 0x03, 0x25, 0x65, 0x00, 0xd1, 0x61, 0x7d, 0xda, 0x33, 0xa8, 0x97, 0xf3, 0x64, - 0x6b, 0x55, 0xb7, 0xd6, 0xc3, 0x98, 0xb9, 0xb4, 0xe7, 0x02, 0x36, 0x6c, 0x72, 0xed, 0xd6, 0xfa, - 0xfc, 0xf2, 0x10, 0x03, 0xd9, 0x6a, 0x37, 0x59, 0x44, 0xac, 0x1e, 0x40, 0x06, 0xbf, 0xf1, 0x45, - 0x34, 0x44, 0xb9, 0x04, 0x02, 0x63, 0x61, 0x63, 0xbb, 0xb5, 0x08, 0x14, 0x5f, 0x43, 0x27, 0x24, - 0x08, 0xb3, 0x41, 0xd9, 0x33, 0x81, 0x6e, 0x2d, 0x11, 0xa7, 0x7e, 0x29, 0x27, 0xe7, 0xf9, 0xd8, - 0x87, 0x8e, 0x38, 0x8d, 0x7a, 0x6c, 0xa7, 0x5e, 0x6d, 0x3b, 0x0d, 0x3e, 0xf6, 0x0a, 0xb6, 0x53, - 0xbf, 0xe5, 0x34, 0xf0, 0x49, 0x54, 0xa0, 0xbd, 0x63, 0x1a, 0x7c, 0x88, 0x75, 0xeb, 0xad, 0x56, - 0xd9, 0xc0, 0x45, 0xd6, 0x21, 0x10, 0x72, 0xb4, 0x5a, 0x83, 0xad, 0x3d, 0x73, 0x4a, 0xe8, 0x66, - 0x2b, 0x5e, 0x0c, 0x09, 0xfd, 0x04, 0x81, 0x48, 0xd9, 0x41, 0x40, 0x84, 0x85, 0x01, 0xdb, 0x12, - 0x83, 0xf5, 0x49, 0x94, 0x05, 0x47, 0x86, 0x2c, 0xd8, 0x26, 0xc6, 0xc0, 0x25, 0x84, 0x43, 0xaa, - 0xa6, 0x6d, 0x98, 0x4b, 0x26, 0x61, 0xaf, 0x3a, 0xba, 0xd9, 0xc5, 0x6f, 0x1c, 0xab, 0x0d, 0xfb, - 0x4c, 0x66, 0x38, 0x04, 0x3f, 0xcf, 0x94, 0x90, 0xd1, 0xc1, 0xda, 0xc7, 0xfa, 0x96, 0xd9, 0x69, - 0x11, 0x14, 0x68, 0x26, 0x94, 0x87, 0x85, 0x50, 0x7d, 0x2b, 0x17, 0x4f, 0xf6, 0xb2, 0x2f, 0x76, - 0xcd, 0x14, 0x42, 0x3c, 0x97, 0x53, 0x78, 0xb9, 0x16, 0x78, 0x9c, 0x87, 0x98, 0x14, 0x1e, 0x42, - 0x59, 0x7c, 0x19, 0xf5, 0xb2, 0x2f, 0x2a, 0x97, 0xb8, 0xbd, 0x03, 0x2e, 0x62, 0x6e, 0xcb, 0x5c, - 0x5a, 0x02, 0x7f, 0xb2, 0x00, 0x8d, 0x2f, 0xa2, 0x9e, 0xd2, 0x6c, 0xa5, 0x52, 0x9c, 0xf5, 0x6f, - 0x8a, 0xe1, 0x7d, 0x89, 0x61, 0xb9, 0x55, 0x57, 0xb7, 0x5c, 0xcd, 0x47, 0xe2, 0x07, 0x51, 0xa1, - 0x3c, 0x0f, 0x64, 0xec, 0xd5, 0x64, 0xff, 0xc6, 0xfa, 0x68, 0x8f, 0xd9, 0x62, 0x54, 0x1c, 0x05, - 0xf5, 0xde, 0x2e, 0x97, 0x04, 0x77, 0x09, 0x56, 0xef, 0x5d, 0xd3, 0x80, 0x6b, 0x67, 0x2d, 0x40, - 0xe3, 0xa7, 0xd0, 0x40, 0x85, 0x38, 0xa6, 0xde, 0x98, 0x6d, 0xc3, 0x56, 0x51, 0x08, 0xa5, 0xe8, - 0x02, 0xbc, 0x6a, 0x01, 0x42, 0x93, 0xc8, 0xf0, 0x39, 0x94, 0x9f, 0x32, 0x2d, 0xff, 0x09, 0x03, - 0xf8, 0xb8, 0x2f, 0x9b, 0x96, 0xa7, 0x01, 0x54, 0xfd, 0x6f, 0xd9, 0xe4, 0x8c, 0x39, 0xfb, 0x30, - 0x1c, 0x77, 0x78, 0xd3, 0x1b, 0x51, 0x82, 0xfc, 0x2e, 0x94, 0x60, 0x09, 0x1d, 0x2b, 0x1a, 0x4d, - 0xd3, 0x2a, 0xc2, 0x4f, 0x77, 0x66, 0xb2, 0x08, 0xc3, 0x5b, 0x78, 0x42, 0x17, 0x41, 0xf3, 0xef, - 0x61, 0x41, 0x79, 0x29, 0xaa, 0xaa, 0x33, 0x5c, 0xb5, 0xb9, 0xa4, 0x57, 0x6b, 0x2c, 0xd9, 0x8c, - 0x16, 0x65, 0xaa, 0x7e, 0x6f, 0x76, 0x93, 0x24, 0x3f, 0x87, 0x51, 0xfa, 0xea, 0x67, 0xb3, 0x9d, - 0xf3, 0x2c, 0x1d, 0x4a, 0xa1, 0xfc, 0x59, 0x36, 0x21, 0xeb, 0xd1, 0xae, 0x24, 0x71, 0x19, 0xf5, - 0x32, 0x36, 0x81, 0xab, 0x2d, 0xcc, 0x38, 0x4c, 0x59, 0x61, 0xa6, 0xf3, 0xd1, 0x78, 0x16, 0x9d, - 0x28, 0x2e, 0x2d, 0x91, 0x9a, 0x17, 0x86, 0x67, 0x9e, 0x0d, 0x03, 0xa5, 0xb2, 0x70, 0xb4, 0x1c, - 0x1f, 0x86, 0x77, 0x86, 0x80, 0x20, 0x89, 0xe5, 0xf0, 0x02, 0x3a, 0x15, 0x85, 0x57, 0x98, 0x99, - 0x9e, 0x17, 0x22, 0xd4, 0xc6, 0x38, 0xb2, 0xff, 0xb4, 0x94, 0xb2, 0x49, 0xad, 0x84, 0xe9, 0xb4, - 0xbb, 0x53, 0x2b, 0x61, 0x6e, 0x4d, 0x2c, 0xa7, 0x7e, 0x39, 0x27, 0x26, 0x87, 0x3a, 0xbc, 0x4e, - 0x51, 0xd7, 0x25, 0x57, 0xe8, 0xad, 0x0e, 0x99, 0xa7, 0x78, 0x94, 0x0f, 0xa3, 0xed, 0xf8, 0x5e, - 0x83, 0x41, 0x94, 0x01, 0x00, 0x8a, 0xfe, 0x7f, 0x01, 0x25, 0x2e, 0xa3, 0x7c, 0xd1, 0xa9, 0x33, - 0x13, 0x74, 0xb3, 0x87, 0x4f, 0xba, 0x53, 0x77, 0x93, 0x1f, 0x3e, 0x51, 0x16, 0xea, 0xf7, 0x64, - 0x3b, 0xe4, 0x73, 0x3a, 0x94, 0x93, 0xc8, 0x0f, 0x65, 0xd3, 0x32, 0x33, 0x1d, 0x54, 0xf7, 0xae, - 0xb7, 0x59, 0x38, 0x07, 0xdb, 0xf7, 0x6d, 0x8f, 0x85, 0x93, 0x92, 0x25, 0xea, 0x48, 0x38, 0x6f, - 0x66, 0xd3, 0x12, 0x65, 0x1d, 0xda, 0x59, 0x26, 0x25, 0x37, 0xd7, 0x91, 0xae, 0xfc, 0x70, 0x36, - 0x35, 0x3d, 0xd9, 0x91, 0x74, 0xd4, 0x4f, 0x65, 0x53, 0xd3, 0xab, 0x1d, 0xca, 0xa1, 0x94, 0xa8, - 0x2d, 0x47, 0x63, 0x89, 0x4b, 0xe7, 0x77, 0xb3, 0xc9, 0x09, 0xed, 0xf6, 0x41, 0x55, 0xf6, 0xc2, - 0x4b, 0xce, 0x17, 0x68, 0x7e, 0x57, 0x02, 0xed, 0xde, 0x53, 0x81, 0xee, 0xdb, 0xd8, 0x7b, 0xb7, - 0x0a, 0x74, 0x0f, 0x06, 0xef, 0x21, 0x16, 0xe8, 0x23, 0x33, 0x2c, 0x4d, 0xcb, 0x4d, 0xd3, 0x32, - 0xf0, 0x19, 0x74, 0xf2, 0x56, 0x65, 0x42, 0xab, 0xde, 0x2c, 0xcf, 0x96, 0xaa, 0xb7, 0x66, 0x2b, - 0xf3, 0x13, 0xe3, 0xe5, 0xc9, 0xf2, 0x44, 0x69, 0xb8, 0x0b, 0x1f, 0x47, 0xc7, 0x42, 0xd4, 0xd4, - 0xad, 0x99, 0xe2, 0xec, 0x70, 0x06, 0x8f, 0xa0, 0xc1, 0x10, 0x38, 0x36, 0xb7, 0x30, 0x9c, 0x7d, - 0xe4, 0x3d, 0xa8, 0x1f, 0xee, 0xa1, 0xd8, 0x99, 0x1c, 0x1e, 0x40, 0xbd, 0x73, 0x63, 0x95, 0x09, - 0xed, 0x36, 0x30, 0x41, 0xa8, 0x50, 0x9a, 0x98, 0xa5, 0x0c, 0x33, 0x8f, 0xfc, 0xcf, 0x0c, 0x42, - 0x95, 0xc9, 0x85, 0x79, 0x4e, 0xd8, 0x8f, 0x7a, 0xca, 0xb3, 0xb7, 0x8b, 0xd3, 0x65, 0x4a, 0xd7, - 0x8b, 0xf2, 0x73, 0xf3, 0x13, 0xb4, 0x86, 0x3e, 0xd4, 0x3d, 0x3e, 0x3d, 0x57, 0x99, 0x18, 0xce, - 0x52, 0xa0, 0x36, 0x51, 0x2c, 0x0d, 0xe7, 0x28, 0xf0, 0x8e, 0x56, 0x5e, 0x98, 0x18, 0xce, 0xd3, - 0x3f, 0xa7, 0x2b, 0x0b, 0xc5, 0x85, 0xe1, 0x6e, 0xfa, 0xe7, 0x24, 0xfc, 0x59, 0xa0, 0xcc, 0x2a, - 0x13, 0x0b, 0xf0, 0xa3, 0x87, 0x36, 0x61, 0xd2, 0xff, 0xd5, 0x4b, 0x51, 0x94, 0x75, 0xa9, 0xac, - 0x0d, 0xf7, 0xd1, 0x1f, 0x94, 0x25, 0xfd, 0x81, 0x68, 0xe3, 0xb4, 0x89, 0x99, 0xb9, 0xdb, 0x13, - 0xc3, 0xfd, 0x94, 0xd7, 0xcc, 0x4d, 0x0a, 0x1e, 0xa0, 0x7f, 0x6a, 0x33, 0xf4, 0xcf, 0x41, 0xca, - 0x49, 0x9b, 0x28, 0x4e, 0xcf, 0x17, 0x17, 0xa6, 0x86, 0x87, 0x68, 0x7b, 0x80, 0xe7, 0x31, 0x56, - 0x72, 0xb6, 0x38, 0x33, 0x31, 0x3c, 0xcc, 0x69, 0x4a, 0xd3, 0xe5, 0xd9, 0x9b, 0xc3, 0x23, 0xd0, - 0x90, 0xd7, 0x66, 0xe0, 0x07, 0xa6, 0x05, 0xe0, 0xaf, 0xe3, 0x8f, 0x7c, 0x18, 0x15, 0xe6, 0x2a, - 0x70, 0xf2, 0x7c, 0x1a, 0x1d, 0x9f, 0xab, 0x54, 0x17, 0x5e, 0x9b, 0x9f, 0x88, 0xc8, 0x7b, 0x04, - 0x0d, 0xfa, 0x88, 0xe9, 0xf2, 0xec, 0xad, 0x0f, 0x30, 0x69, 0xfb, 0xa0, 0x99, 0xe2, 0xf8, 0x5c, - 0x65, 0x38, 0x4b, 0x7b, 0xc5, 0x07, 0xdd, 0x29, 0xcf, 0x96, 0xe6, 0xee, 0x54, 0x86, 0x73, 0x8f, - 0xdc, 0x45, 0x03, 0x2c, 0xc9, 0xcd, 0x9c, 0x63, 0xd6, 0x4d, 0x0b, 0x9f, 0x47, 0x67, 0x4a, 0x13, - 0xb7, 0xcb, 0xe3, 0x13, 0xd5, 0x39, 0xad, 0x7c, 0xa3, 0x3c, 0x1b, 0xa9, 0xe9, 0x24, 0x1a, 0x91, - 0xd1, 0xc5, 0xf9, 0xf2, 0x70, 0x06, 0x9f, 0x42, 0x58, 0x06, 0xbf, 0x52, 0x9c, 0x99, 0x1c, 0xce, - 0x62, 0x05, 0x9d, 0x90, 0xe1, 0xe5, 0xd9, 0x85, 0x5b, 0xb3, 0x13, 0xc3, 0xb9, 0x47, 0x7e, 0x22, - 0x83, 0x4e, 0x26, 0x06, 0x42, 0xc3, 0x2a, 0xba, 0x30, 0x31, 0x5d, 0xac, 0x2c, 0x94, 0xc7, 0x2b, - 0x13, 0x45, 0x6d, 0x7c, 0xaa, 0x3a, 0x5e, 0x5c, 0x98, 0xb8, 0x31, 0xa7, 0xbd, 0x56, 0xbd, 0x31, - 0x31, 0x3b, 0xa1, 0x15, 0xa7, 0x87, 0xbb, 0xf0, 0x83, 0x68, 0x34, 0x85, 0xa6, 0x32, 0x31, 0x7e, - 0x4b, 0x2b, 0x2f, 0xbc, 0x36, 0x9c, 0xc1, 0x0f, 0xa0, 0xf3, 0xa9, 0x44, 0xf4, 0xf7, 0x70, 0x16, - 0x5f, 0x40, 0x67, 0xd3, 0x48, 0x5e, 0x9d, 0x1e, 0xce, 0x3d, 0xf2, 0x03, 0x19, 0x84, 0xe3, 0x91, - 0xac, 0xf0, 0xfd, 0xe8, 0x1c, 0xd5, 0x8b, 0x6a, 0x7a, 0x03, 0x1f, 0x40, 0xe7, 0x13, 0x29, 0x84, - 0xe6, 0x8d, 0xa2, 0xfb, 0x52, 0x48, 0x78, 0xe3, 0xce, 0x21, 0x25, 0x99, 0x00, 0x9a, 0xf6, 0x2b, - 0x19, 0x74, 0x32, 0xf1, 0x18, 0x1c, 0x5f, 0x42, 0x0f, 0x15, 0x4b, 0x33, 0xb4, 0x6f, 0xc6, 0x17, - 0xca, 0x73, 0xb3, 0x95, 0xea, 0xcc, 0x64, 0xb1, 0x4a, 0xb5, 0xef, 0x56, 0x25, 0xd2, 0x9b, 0x17, - 0x91, 0xda, 0x81, 0x72, 0x7c, 0xaa, 0x38, 0x7b, 0x83, 0x0e, 0x3f, 0xfc, 0x10, 0xba, 0x3f, 0x95, - 0x6e, 0x62, 0xb6, 0x38, 0x36, 0x3d, 0x51, 0x1a, 0xce, 0xe2, 0x87, 0xd1, 0x03, 0xa9, 0x54, 0xa5, - 0x72, 0x85, 0x91, 0xe5, 0xc6, 0x4a, 0x6f, 0xfd, 0x87, 0x0b, 0x5d, 0x6f, 0x7d, 0xfd, 0x42, 0xe6, - 0xf7, 0xbe, 0x7e, 0x21, 0xf3, 0x27, 0x5f, 0xbf, 0x90, 0xf9, 0xe0, 0xb5, 0xed, 0x44, 0x28, 0x63, - 0xd3, 0xd6, 0x62, 0x01, 0x8e, 0xa4, 0x9e, 0xfc, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xfc, 0x14, - 0x4c, 0xa3, 0xc7, 0x6e, 0x01, 0x00, + // 16341 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x5b, 0x74, 0x24, 0x49, + 0x76, 0x18, 0x86, 0x7a, 0xa0, 0x00, 0x5c, 0xbc, 0xa3, 0x5f, 0x39, 0x3d, 0x3d, 0x8d, 0x99, 0x9c, + 0xdd, 0xde, 0xee, 0xd9, 0x99, 0xee, 0x9d, 0x9e, 0x9e, 0x99, 0x9d, 0xd7, 0xce, 0x16, 0x50, 0x40, + 0xa3, 0xba, 0xf1, 0x9a, 0x2c, 0xa0, 0x7b, 0x67, 0xc9, 0xdd, 0x62, 0xa2, 0x32, 0x00, 0xe4, 0x74, + 0x55, 0x66, 0x31, 0x33, 0xab, 0xd1, 0x18, 0xbf, 0xb8, 0x32, 0x45, 0x91, 0xd2, 0xee, 0x6a, 0xbd, + 0x34, 0x1f, 0x12, 0x65, 0x8b, 0x94, 0x2c, 0x9b, 0xa2, 0x29, 0x52, 0x94, 0x68, 0x3e, 0x24, 0xf3, + 0x58, 0xf2, 0xfa, 0xb1, 0x12, 0x8f, 0x78, 0x24, 0xd9, 0xd6, 0xd1, 0xb1, 0x65, 0xac, 0x4c, 0x5b, + 0x3f, 0x38, 0xf6, 0x39, 0xb4, 0xbd, 0xc7, 0x5a, 0xcb, 0xb2, 0x8f, 0x4f, 0xdc, 0x88, 0xcc, 0x8c, + 0x7c, 0x15, 0x9e, 0x23, 0x0c, 0x06, 0xf8, 0xe9, 0x46, 0xdd, 0x7b, 0xe3, 0x46, 0xe4, 0x8d, 0x1b, + 0x11, 0x37, 0x22, 0x6e, 0xdc, 0x0b, 0x37, 0x3c, 0xda, 0xa4, 0x6d, 0xdb, 0xf1, 0x6e, 0x35, 0xe9, + 0xba, 0xde, 0xd8, 0xba, 0xe5, 0x6d, 0xb5, 0xa9, 0x7b, 0x8b, 0x3e, 0xa6, 0x96, 0xe7, 0xff, 0x77, + 0xb3, 0xed, 0xd8, 0x9e, 0x4d, 0x4a, 0xfc, 0xd7, 0xe5, 0xf3, 0xeb, 0xf6, 0xba, 0x8d, 0xa0, 0x5b, + 0xec, 0x2f, 0x8e, 0xbd, 0x7c, 0x65, 0xdd, 0xb6, 0xd7, 0x9b, 0xf4, 0x16, 0xfe, 0x5a, 0xed, 0xac, + 0xdd, 0x72, 0x3d, 0xa7, 0xd3, 0xf0, 0x04, 0x76, 0x22, 0x8e, 0xf5, 0xcc, 0x16, 0x75, 0x3d, 0xbd, + 0xd5, 0x16, 0x04, 0x57, 0xe3, 0x04, 0x9b, 0x8e, 0xde, 0x6e, 0x53, 0x47, 0x54, 0x7e, 0xf9, 0xb9, + 0xf4, 0x76, 0xe2, 0xbf, 0x82, 0xe4, 0xa5, 0x74, 0x12, 0x9f, 0x51, 0x8c, 0xa3, 0xfa, 0xed, 0x3c, + 0xf4, 0xcf, 0x53, 0x4f, 0x37, 0x74, 0x4f, 0x27, 0x57, 0xa0, 0xb7, 0x6a, 0x19, 0xf4, 0x89, 0x92, + 0x7b, 0x36, 0x77, 0xbd, 0x30, 0x59, 0xda, 0xd9, 0x9e, 0xc8, 0x53, 0x53, 0xe3, 0x40, 0xf2, 0x0c, + 0x14, 0x97, 0xb7, 0xda, 0x54, 0xc9, 0x3f, 0x9b, 0xbb, 0x3e, 0x30, 0x39, 0xb0, 0xb3, 0x3d, 0xd1, + 0x8b, 0xb2, 0xd0, 0x10, 0x4c, 0x9e, 0x83, 0x7c, 0xb5, 0xa2, 0x14, 0x10, 0x39, 0xbe, 0xb3, 0x3d, + 0x31, 0xdc, 0x31, 0x8d, 0x17, 0xed, 0x96, 0xe9, 0xd1, 0x56, 0xdb, 0xdb, 0xd2, 0xf2, 0xd5, 0x0a, + 0xb9, 0x06, 0xc5, 0x29, 0xdb, 0xa0, 0x4a, 0x11, 0x89, 0xc8, 0xce, 0xf6, 0xc4, 0x48, 0xc3, 0x36, + 0xa8, 0x44, 0x85, 0x78, 0xf2, 0x45, 0x28, 0x2e, 0x9b, 0x2d, 0xaa, 0xf4, 0x3e, 0x9b, 0xbb, 0x3e, + 0x78, 0xfb, 0xf2, 0x4d, 0x2e, 0x95, 0x9b, 0xbe, 0x54, 0x6e, 0x2e, 0xfb, 0x62, 0x9b, 0x1c, 0xfb, + 0xee, 0xf6, 0x44, 0xcf, 0xce, 0xf6, 0x44, 0x91, 0x49, 0xf2, 0x5b, 0xdf, 0x9b, 0xc8, 0x69, 0x58, + 0x92, 0xbc, 0x0d, 0x83, 0x53, 0xcd, 0x8e, 0xeb, 0x51, 0x67, 0x41, 0x6f, 0x51, 0xa5, 0x84, 0x15, + 0x5e, 0xde, 0xd9, 0x9e, 0xb8, 0xd8, 0xe0, 0xe0, 0xba, 0xa5, 0xb7, 0xe4, 0x8a, 0x65, 0x72, 0xf5, + 0x77, 0x72, 0x30, 0x5a, 0xa3, 0xae, 0x6b, 0xda, 0x56, 0x20, 0x9b, 0x4f, 0xc3, 0x80, 0x00, 0x55, + 0x2b, 0x28, 0x9f, 0x81, 0xc9, 0xbe, 0x9d, 0xed, 0x89, 0x82, 0x6b, 0x1a, 0x5a, 0x88, 0x21, 0x9f, + 0x83, 0xbe, 0x87, 0xa6, 0xb7, 0x31, 0x3f, 0x53, 0x16, 0x72, 0xba, 0xb8, 0xb3, 0x3d, 0x41, 0x36, + 0x4d, 0x6f, 0xa3, 0xde, 0x5a, 0xd3, 0xa5, 0x0a, 0x7d, 0x32, 0x32, 0x07, 0x63, 0x4b, 0x8e, 0xf9, + 0x58, 0xf7, 0xe8, 0x7d, 0xba, 0xb5, 0x64, 0x37, 0xcd, 0xc6, 0x96, 0x90, 0xe2, 0xb3, 0x3b, 0xdb, + 0x13, 0x57, 0xda, 0x1c, 0x57, 0x7f, 0x44, 0xb7, 0xea, 0x6d, 0xc4, 0x4a, 0x4c, 0x12, 0x25, 0xd5, + 0xbf, 0x51, 0x82, 0xa1, 0x15, 0x97, 0x3a, 0x41, 0xbb, 0xaf, 0x41, 0x91, 0xfd, 0x16, 0x4d, 0x46, + 0x99, 0x77, 0x5c, 0xea, 0xc8, 0x32, 0x67, 0x78, 0x72, 0x03, 0x7a, 0xe7, 0xec, 0x75, 0xd3, 0x12, + 0xcd, 0x3e, 0xb7, 0xb3, 0x3d, 0x31, 0xda, 0x64, 0x00, 0x89, 0x92, 0x53, 0x90, 0x2f, 0xc0, 0x50, + 0xb5, 0xc5, 0x74, 0xc8, 0xb6, 0x74, 0xcf, 0x76, 0x44, 0x6b, 0x51, 0xba, 0xa6, 0x04, 0x97, 0x0a, + 0x46, 0xe8, 0xc9, 0x9b, 0x00, 0xe5, 0x87, 0x35, 0xcd, 0x6e, 0xd2, 0xb2, 0xb6, 0x20, 0x94, 0x01, + 0x4b, 0xeb, 0x9b, 0x6e, 0xdd, 0xb1, 0x9b, 0xb4, 0xae, 0x3b, 0x72, 0xb5, 0x12, 0x35, 0x99, 0x86, + 0x91, 0x72, 0xa3, 0x41, 0x5d, 0x57, 0xa3, 0x3f, 0xda, 0xa1, 0xae, 0xe7, 0x2a, 0xbd, 0xcf, 0x16, + 0xae, 0x0f, 0x4c, 0x3e, 0xb3, 0xb3, 0x3d, 0xf1, 0x94, 0x8e, 0x98, 0xba, 0x23, 0x50, 0x12, 0x8b, + 0x58, 0x21, 0x32, 0x09, 0xc3, 0xe5, 0x0f, 0x3b, 0x0e, 0xad, 0x1a, 0xd4, 0xf2, 0x4c, 0x6f, 0x4b, + 0x68, 0xc8, 0x95, 0x9d, 0xed, 0x09, 0x45, 0x67, 0x88, 0xba, 0x29, 0x30, 0x12, 0x93, 0x68, 0x11, + 0xb2, 0x08, 0xe3, 0x77, 0xa7, 0x96, 0x6a, 0xd4, 0x79, 0x6c, 0x36, 0x68, 0xb9, 0xd1, 0xb0, 0x3b, + 0x96, 0xa7, 0xf4, 0x21, 0x9f, 0xe7, 0x76, 0xb6, 0x27, 0x9e, 0x59, 0x6f, 0xb4, 0xeb, 0x2e, 0xc7, + 0xd6, 0x75, 0x8e, 0x96, 0x98, 0x25, 0xcb, 0x92, 0x2f, 0xc3, 0xf0, 0xb2, 0xc3, 0xb4, 0xd0, 0xa8, + 0x50, 0x06, 0x57, 0xfa, 0x51, 0xff, 0x2f, 0xde, 0x14, 0x13, 0x10, 0x87, 0xfa, 0x3d, 0xcb, 0x1b, + 0xeb, 0xf1, 0x02, 0x75, 0x03, 0x71, 0x72, 0x63, 0x23, 0xac, 0x08, 0x05, 0x85, 0x7d, 0xbc, 0xe9, + 0x50, 0x23, 0xa1, 0x6d, 0x03, 0xd8, 0xe6, 0x1b, 0x3b, 0xdb, 0x13, 0x9f, 0x76, 0x04, 0x4d, 0xbd, + 0xab, 0xda, 0x65, 0xb2, 0x22, 0xd3, 0xd0, 0xcf, 0xb4, 0xe9, 0xbe, 0x69, 0x19, 0x0a, 0x3c, 0x9b, + 0xbb, 0x3e, 0x72, 0x7b, 0xcc, 0x6f, 0xbd, 0x0f, 0x9f, 0xbc, 0xb4, 0xb3, 0x3d, 0x71, 0x8e, 0xe9, + 0x60, 0xfd, 0x91, 0x69, 0xc9, 0x53, 0x44, 0x50, 0x94, 0x8d, 0xa2, 0x49, 0xdb, 0xc3, 0xa1, 0x3b, + 0x18, 0x8e, 0xa2, 0x55, 0xdb, 0x8b, 0x0f, 0x5b, 0x9f, 0x8c, 0x4c, 0xc1, 0xf0, 0xa4, 0xed, 0x55, + 0x2d, 0xd7, 0xd3, 0xad, 0x06, 0xad, 0x56, 0x94, 0x21, 0x2c, 0x87, 0x6a, 0xc1, 0xca, 0x99, 0x02, + 0x53, 0x8f, 0x4c, 0x4a, 0xd1, 0x32, 0xea, 0x3f, 0x2f, 0xc2, 0x08, 0xeb, 0x13, 0x69, 0xf8, 0x94, + 0xd9, 0x4c, 0xc0, 0x20, 0xac, 0x16, 0xb7, 0xad, 0x37, 0xa8, 0x18, 0x49, 0xf8, 0x15, 0x96, 0x0f, + 0x94, 0x78, 0xc6, 0xe9, 0xc9, 0x0d, 0xe8, 0xe7, 0xa0, 0x6a, 0x45, 0x0c, 0xae, 0xe1, 0x9d, 0xed, + 0x89, 0x01, 0x17, 0x61, 0x75, 0xd3, 0xd0, 0x02, 0x34, 0xd3, 0x6e, 0xfe, 0xf7, 0xac, 0xed, 0x7a, + 0x8c, 0xb9, 0x18, 0x5b, 0xf8, 0x19, 0xa2, 0xc0, 0x86, 0x40, 0xc9, 0xda, 0x1d, 0x2d, 0x44, 0xde, + 0x00, 0xe0, 0x90, 0xb2, 0x61, 0x38, 0x62, 0x80, 0x3d, 0xb5, 0xb3, 0x3d, 0x71, 0x41, 0xb0, 0xd0, + 0x0d, 0x43, 0x1e, 0x9d, 0x12, 0x31, 0x69, 0xc1, 0x10, 0xff, 0x35, 0xa7, 0xaf, 0xd2, 0x26, 0x1f, + 0x5d, 0x83, 0xb7, 0xaf, 0xfb, 0x9d, 0x18, 0x95, 0xce, 0x4d, 0x99, 0x74, 0xda, 0xf2, 0x9c, 0xad, + 0xc9, 0x09, 0x31, 0x21, 0x5f, 0x12, 0x55, 0x35, 0x11, 0x27, 0x4f, 0x05, 0x72, 0x19, 0x36, 0x4f, + 0xcf, 0xd8, 0xce, 0xa6, 0xee, 0x18, 0xd4, 0x98, 0xdc, 0x92, 0xe7, 0xe9, 0x35, 0x1f, 0x5c, 0x5f, + 0x95, 0x55, 0x4f, 0x26, 0x67, 0x9d, 0xce, 0xb9, 0xd5, 0x3a, 0xab, 0xa8, 0x72, 0x7d, 0x09, 0x69, + 0xb9, 0x9d, 0xd5, 0xb8, 0x9a, 0x45, 0xcb, 0xb0, 0xa9, 0x80, 0x03, 0x1e, 0x50, 0x87, 0x4d, 0xe2, + 0x38, 0xea, 0xc4, 0x54, 0x20, 0x98, 0x3c, 0xe6, 0x98, 0x24, 0x0f, 0x51, 0xe4, 0xf2, 0xbb, 0x30, + 0x9e, 0x10, 0x05, 0x19, 0x83, 0xc2, 0x23, 0xba, 0xc5, 0xd5, 0x45, 0x63, 0x7f, 0x92, 0xf3, 0xd0, + 0xfb, 0x58, 0x6f, 0x76, 0xc4, 0x12, 0xaa, 0xf1, 0x1f, 0x6f, 0xe6, 0x3f, 0x9f, 0x63, 0x2b, 0x0e, + 0x99, 0xb2, 0x2d, 0x8b, 0x36, 0x3c, 0x79, 0xd1, 0x79, 0x0d, 0x06, 0xe6, 0xec, 0x86, 0xde, 0xc4, + 0x7e, 0xe4, 0x7a, 0xa7, 0xec, 0x6c, 0x4f, 0x9c, 0x67, 0x1d, 0x78, 0xb3, 0xc9, 0x30, 0x52, 0x9b, + 0x42, 0x52, 0xa6, 0x00, 0x1a, 0x6d, 0xd9, 0x1e, 0xc5, 0x82, 0xf9, 0x50, 0x01, 0xb0, 0xa0, 0x83, + 0x28, 0x59, 0x01, 0x42, 0x62, 0x72, 0x0b, 0xfa, 0x97, 0xd8, 0x3a, 0xdb, 0xb0, 0x9b, 0x42, 0xf9, + 0x70, 0x29, 0xc0, 0xb5, 0x57, 0x1e, 0xab, 0x3e, 0x91, 0x3a, 0x0b, 0x23, 0x53, 0x4d, 0x93, 0x5a, + 0x9e, 0xdc, 0x6a, 0x36, 0x92, 0xcb, 0xeb, 0xd4, 0xf2, 0xe4, 0x56, 0xe3, 0x98, 0xd7, 0x19, 0x54, + 0x6e, 0x75, 0x40, 0xaa, 0xfe, 0x41, 0x01, 0x9e, 0xba, 0xdf, 0x59, 0xa5, 0x8e, 0x45, 0x3d, 0xea, + 0x8a, 0x05, 0x39, 0xe0, 0xba, 0x00, 0xe3, 0x09, 0xa4, 0xe0, 0x8e, 0x0b, 0xe5, 0xa3, 0x00, 0x59, + 0x17, 0x6b, 0xbc, 0x3c, 0xdb, 0x26, 0x8a, 0x92, 0x59, 0x18, 0x0d, 0x81, 0xac, 0x11, 0xae, 0x92, + 0xc7, 0xa5, 0xe4, 0xea, 0xce, 0xf6, 0xc4, 0x65, 0x89, 0x1b, 0x6b, 0xb6, 0xac, 0xc1, 0xf1, 0x62, + 0xe4, 0x3e, 0x8c, 0x85, 0xa0, 0xbb, 0x8e, 0xdd, 0x69, 0xbb, 0x4a, 0x01, 0x59, 0x4d, 0xec, 0x6c, + 0x4f, 0x3c, 0x2d, 0xb1, 0x5a, 0x47, 0xa4, 0xbc, 0x80, 0xc7, 0x0b, 0x92, 0x1f, 0xcf, 0xc9, 0xdc, + 0xc4, 0x28, 0x2c, 0xe2, 0x28, 0x7c, 0xdd, 0x1f, 0x85, 0x99, 0x42, 0xba, 0x19, 0x2f, 0x29, 0x06, + 0x65, 0xac, 0x19, 0x89, 0x41, 0x99, 0xa8, 0xf1, 0xf2, 0x14, 0x5c, 0x48, 0xe5, 0xb5, 0x2f, 0xad, + 0xfe, 0x67, 0x05, 0x99, 0xcb, 0x92, 0x6d, 0x04, 0x9d, 0xb9, 0x28, 0x77, 0xe6, 0x92, 0x6d, 0xe0, + 0x54, 0x9f, 0x0b, 0xd7, 0x4e, 0xa9, 0xb1, 0x6d, 0xdb, 0x88, 0xcf, 0xfa, 0xc9, 0xb2, 0xe4, 0xab, + 0x70, 0x31, 0x01, 0xe4, 0xd3, 0x35, 0xd7, 0xfe, 0x6b, 0x3b, 0xdb, 0x13, 0x6a, 0x0a, 0xd7, 0xf8, + 0xec, 0x9d, 0xc1, 0x85, 0xe8, 0x70, 0x49, 0x92, 0xba, 0x6d, 0x79, 0xba, 0x69, 0x09, 0xe3, 0x92, + 0x8f, 0x92, 0xcf, 0xec, 0x6c, 0x4f, 0x3c, 0x2f, 0xeb, 0xa0, 0x4f, 0x13, 0x6f, 0x7c, 0x16, 0x1f, + 0x62, 0x80, 0x92, 0x82, 0xaa, 0xb6, 0xf4, 0x75, 0xdf, 0x62, 0xbe, 0xbe, 0xb3, 0x3d, 0xf1, 0xa9, + 0xd4, 0x3a, 0x4c, 0x46, 0x25, 0xaf, 0xd0, 0x59, 0x9c, 0x88, 0x06, 0x24, 0xc4, 0x2d, 0xd8, 0x06, + 0xc5, 0x6f, 0xe8, 0x45, 0xfe, 0xea, 0xce, 0xf6, 0xc4, 0x55, 0x89, 0xbf, 0x65, 0x1b, 0x34, 0xde, + 0xfc, 0x94, 0xd2, 0xea, 0xef, 0x14, 0xe0, 0x6a, 0xad, 0x3c, 0x3f, 0x57, 0x35, 0x7c, 0x93, 0x66, + 0xc9, 0xb1, 0x1f, 0x9b, 0x86, 0x34, 0x7a, 0x57, 0xe1, 0x52, 0x0c, 0x35, 0x8d, 0x56, 0x54, 0x60, + 0x4c, 0xe3, 0xb7, 0xf9, 0xe6, 0x52, 0x5b, 0xd0, 0xd4, 0xb9, 0xa9, 0x15, 0x5d, 0xb4, 0xb3, 0x18, + 0xb1, 0x3e, 0x8a, 0xa1, 0x6a, 0x1b, 0xb6, 0xe3, 0x35, 0x3a, 0x9e, 0x50, 0x02, 0xec, 0xa3, 0x44, + 0x1d, 0xae, 0x20, 0xea, 0x52, 0x85, 0xcf, 0x87, 0xfc, 0x54, 0x0e, 0xc6, 0xca, 0x9e, 0xe7, 0x98, + 0xab, 0x1d, 0x8f, 0xce, 0xeb, 0xed, 0xb6, 0x69, 0xad, 0xe3, 0x58, 0x1f, 0xbc, 0xfd, 0x76, 0xb0, + 0x46, 0x76, 0x95, 0xc4, 0xcd, 0x78, 0x71, 0x69, 0x88, 0xea, 0x3e, 0xaa, 0xde, 0xe2, 0x38, 0x79, + 0x88, 0xc6, 0xcb, 0xb1, 0x21, 0x9a, 0xca, 0x6b, 0x5f, 0x43, 0xf4, 0xdb, 0x05, 0xb8, 0xb2, 0xf8, + 0xc8, 0xd3, 0x35, 0xea, 0xda, 0x1d, 0xa7, 0x41, 0xdd, 0x95, 0xb6, 0xa1, 0x7b, 0x34, 0x1c, 0xa9, + 0x13, 0xd0, 0x5b, 0x36, 0x0c, 0x6a, 0x20, 0xbb, 0x5e, 0xbe, 0xed, 0xd3, 0x19, 0x40, 0xe3, 0x70, + 0xf2, 0x69, 0xe8, 0x13, 0x65, 0x90, 0x7b, 0xef, 0xe4, 0xe0, 0xce, 0xf6, 0x44, 0x5f, 0x87, 0x83, + 0x34, 0x1f, 0xc7, 0xc8, 0x2a, 0xb4, 0x49, 0x19, 0x59, 0x21, 0x24, 0x33, 0x38, 0x48, 0xf3, 0x71, + 0xe4, 0x3d, 0x18, 0x41, 0xb6, 0x41, 0x7b, 0xc4, 0xdc, 0x77, 0xde, 0x97, 0xae, 0xdc, 0x58, 0xbe, + 0x34, 0x61, 0x6b, 0xea, 0x8e, 0x5f, 0x40, 0x8b, 0x31, 0x20, 0x0f, 0x61, 0x4c, 0x34, 0x22, 0x64, + 0xda, 0xdb, 0x85, 0xe9, 0x85, 0x9d, 0xed, 0x89, 0x71, 0xd1, 0x7e, 0x89, 0x6d, 0x82, 0x09, 0x63, + 0x2c, 0x9a, 0x1d, 0x32, 0x2e, 0xed, 0xc6, 0x58, 0x7c, 0xb1, 0xcc, 0x38, 0xce, 0x44, 0x7d, 0x1f, + 0x86, 0xe4, 0x82, 0xe4, 0x22, 0x6e, 0xad, 0xf9, 0x38, 0xc1, 0x4d, 0xb9, 0x69, 0xe0, 0x7e, 0xfa, + 0x65, 0x18, 0xac, 0x50, 0xb7, 0xe1, 0x98, 0x6d, 0x66, 0x35, 0x08, 0x25, 0x1f, 0xdd, 0xd9, 0x9e, + 0x18, 0x34, 0x42, 0xb0, 0x26, 0xd3, 0xa8, 0xff, 0x57, 0x0e, 0x2e, 0x32, 0xde, 0x65, 0xd7, 0x35, + 0xd7, 0xad, 0x96, 0xbc, 0x6c, 0xbf, 0x08, 0xa5, 0x1a, 0xd6, 0x27, 0x6a, 0x3a, 0xbf, 0xb3, 0x3d, + 0x31, 0xc6, 0x5b, 0x20, 0xe9, 0xa1, 0xa0, 0x09, 0xf6, 0x95, 0xf9, 0x5d, 0xf6, 0x95, 0xcc, 0xa4, + 0xf5, 0x74, 0xc7, 0x33, 0xad, 0xf5, 0x9a, 0xa7, 0x7b, 0x1d, 0x37, 0x62, 0xd2, 0x0a, 0x4c, 0xdd, + 0x45, 0x54, 0xc4, 0xa4, 0x8d, 0x14, 0x22, 0xef, 0xc2, 0xd0, 0xb4, 0x65, 0x84, 0x4c, 0xf8, 0x84, + 0xf8, 0x34, 0xb3, 0x34, 0x29, 0xc2, 0x93, 0x2c, 0x22, 0x05, 0xd4, 0xbf, 0x92, 0x03, 0x85, 0x6f, + 0x02, 0xe7, 0x4c, 0xd7, 0x9b, 0xa7, 0xad, 0x55, 0x69, 0x76, 0x9a, 0xf1, 0x77, 0x95, 0x0c, 0x27, + 0xad, 0x45, 0x68, 0x0a, 0x88, 0x5d, 0x65, 0xd3, 0x74, 0x13, 0xdb, 0x8f, 0x58, 0x29, 0x52, 0x85, + 0x3e, 0xce, 0x99, 0xdb, 0x12, 0x83, 0xb7, 0x15, 0x5f, 0x11, 0xe2, 0x55, 0x73, 0x65, 0x68, 0x71, + 0x62, 0x79, 0x43, 0x23, 0xca, 0xab, 0x7f, 0x35, 0x0f, 0x63, 0xf1, 0x42, 0xe4, 0x21, 0xf4, 0xdf, + 0xb3, 0x4d, 0x8b, 0x1a, 0x8b, 0x16, 0xb6, 0xb0, 0xfb, 0xe1, 0x88, 0x6f, 0x8b, 0x9f, 0xfb, 0x00, + 0xcb, 0xd4, 0x65, 0x0b, 0x16, 0xcf, 0x4a, 0x02, 0x66, 0xe4, 0xcb, 0x30, 0xc0, 0x6c, 0xc0, 0xc7, + 0xc8, 0x39, 0xbf, 0x2b, 0xe7, 0x67, 0x05, 0xe7, 0xf3, 0x0e, 0x2f, 0x94, 0x64, 0x1d, 0xb2, 0x63, + 0x7a, 0xa5, 0x51, 0xdd, 0xb5, 0x2d, 0xd1, 0xf3, 0xa8, 0x57, 0x0e, 0x42, 0x64, 0xbd, 0xe2, 0x34, + 0xcc, 0x74, 0xe5, 0x1f, 0x8b, 0xdd, 0x20, 0xed, 0x5d, 0xb8, 0xac, 0xe2, 0x3d, 0x20, 0x11, 0xab, + 0x3f, 0x91, 0x87, 0x97, 0x42, 0x91, 0x69, 0xf4, 0xb1, 0x49, 0x37, 0x85, 0x38, 0x37, 0xcc, 0xb6, + 0xd8, 0xb3, 0x32, 0x95, 0x77, 0xa7, 0x36, 0x74, 0x6b, 0x9d, 0x1a, 0xe4, 0x06, 0xf4, 0x6a, 0x76, + 0x93, 0xba, 0x4a, 0x0e, 0xcd, 0x35, 0x9c, 0x4e, 0x1c, 0x06, 0x90, 0x0f, 0x3d, 0x90, 0x82, 0xd8, + 0x50, 0x5a, 0x76, 0x74, 0xd3, 0xf3, 0x7b, 0xb6, 0x9c, 0xec, 0xd9, 0x3d, 0xd4, 0x78, 0x93, 0xf3, + 0xe0, 0x73, 0x3e, 0x0a, 0xc2, 0x43, 0x80, 0x2c, 0x08, 0x4e, 0x72, 0xf9, 0x0d, 0x18, 0x94, 0x88, + 0xf7, 0x35, 0xa9, 0xff, 0x6e, 0x51, 0xd6, 0x75, 0xbf, 0x59, 0x42, 0xd7, 0x6f, 0x31, 0x1d, 0x75, + 0x5d, 0x66, 0x55, 0x70, 0x25, 0x17, 0x9a, 0x88, 0xa0, 0xa8, 0x26, 0x22, 0x88, 0xbc, 0x02, 0xfd, + 0x9c, 0x45, 0xb0, 0x7f, 0xc5, 0xbd, 0xaf, 0x83, 0xb0, 0xe8, 0xd2, 0x1c, 0x10, 0x92, 0x5f, 0xc9, + 0xc1, 0x33, 0x5d, 0x25, 0x81, 0xca, 0x30, 0x78, 0xfb, 0xd5, 0x03, 0x89, 0x71, 0xf2, 0xa5, 0x9d, + 0xed, 0x89, 0x1b, 0xad, 0x80, 0xa4, 0xee, 0x48, 0x34, 0xf5, 0x06, 0x27, 0x92, 0xda, 0xd5, 0xbd, + 0x29, 0xcc, 0x78, 0xe4, 0x95, 0xce, 0xe0, 0xd1, 0x91, 0xd5, 0xd8, 0xf2, 0x1b, 0x59, 0x0c, 0x8d, + 0x47, 0xf1, 0xbd, 0x6b, 0x3e, 0x49, 0x4a, 0x35, 0x19, 0x5c, 0x48, 0x03, 0x2e, 0x71, 0x4c, 0x45, + 0xdf, 0x5a, 0x5c, 0x9b, 0xb7, 0x2d, 0x6f, 0xc3, 0xaf, 0xa0, 0x57, 0x3e, 0x7b, 0xc1, 0x0a, 0x0c, + 0x7d, 0xab, 0x6e, 0xaf, 0xd5, 0x5b, 0x8c, 0x2a, 0xa5, 0x8e, 0x2c, 0x4e, 0x6c, 0xa2, 0x15, 0x63, + 0xce, 0x9f, 0x82, 0x4a, 0xe1, 0xc9, 0x98, 0x3f, 0x4e, 0x93, 0x13, 0x4e, 0xac, 0x90, 0x5a, 0x85, + 0xa1, 0x39, 0xbb, 0xf1, 0x28, 0x50, 0x97, 0x37, 0xa0, 0xb4, 0xac, 0x3b, 0xeb, 0xd4, 0x43, 0x59, + 0x0c, 0xde, 0x1e, 0xbf, 0xc9, 0x4f, 0x9b, 0x19, 0x11, 0x47, 0x4c, 0x8e, 0x88, 0xd9, 0xa0, 0xe4, + 0xe1, 0x6f, 0x4d, 0x14, 0x50, 0xbf, 0xd7, 0x0b, 0x43, 0xe2, 0x64, 0x14, 0x67, 0x73, 0xf2, 0x66, + 0x78, 0xd6, 0x2c, 0xa6, 0xaf, 0xe0, 0x74, 0x28, 0x38, 0xd5, 0x1a, 0x62, 0xcc, 0xfe, 0xfe, 0xf6, + 0x44, 0x6e, 0x67, 0x7b, 0xa2, 0x47, 0xeb, 0x97, 0x36, 0x95, 0xe1, 0x7a, 0x23, 0x2d, 0xb0, 0xf2, + 0x59, 0x67, 0xac, 0x2c, 0x5f, 0x7f, 0xde, 0x85, 0x3e, 0xd1, 0x06, 0xa1, 0x71, 0x97, 0xc2, 0xb3, + 0x8c, 0xc8, 0x09, 0x6f, 0xac, 0xb4, 0x5f, 0x8a, 0xbc, 0x0d, 0x25, 0xbe, 0xb7, 0x17, 0x02, 0xb8, + 0x98, 0x7e, 0x16, 0x12, 0x2b, 0x2e, 0xca, 0x90, 0x59, 0x80, 0x70, 0x5f, 0x1f, 0x1c, 0x68, 0x0b, + 0x0e, 0xc9, 0x1d, 0x7f, 0x8c, 0x8b, 0x54, 0x96, 0xbc, 0x06, 0x43, 0xcb, 0xd4, 0x69, 0x99, 0x96, + 0xde, 0xac, 0x99, 0x1f, 0xfa, 0x67, 0xda, 0xb8, 0xf0, 0xba, 0xe6, 0x87, 0xf2, 0xc8, 0x8d, 0xd0, + 0x91, 0xaf, 0xa4, 0xed, 0x9b, 0xfb, 0xb0, 0x21, 0xcf, 0xed, 0xba, 0xa1, 0x8c, 0xb5, 0x27, 0x65, + 0x1b, 0xfd, 0x1e, 0x0c, 0x47, 0xb6, 0x4c, 0xe2, 0xd0, 0xf2, 0x99, 0x24, 0x6b, 0x69, 0xff, 0x17, + 0x63, 0x1b, 0xe5, 0xc0, 0x34, 0xb9, 0x6a, 0x99, 0x9e, 0xa9, 0x37, 0xa7, 0xec, 0x56, 0x4b, 0xb7, + 0x0c, 0x65, 0x20, 0xd4, 0x64, 0x93, 0x63, 0xea, 0x0d, 0x8e, 0x92, 0x35, 0x39, 0x5a, 0x88, 0x6d, + 0xcb, 0x45, 0x1f, 0x6a, 0xb4, 0x61, 0x3b, 0xcc, 0x16, 0xc0, 0x33, 0x49, 0xb1, 0x2d, 0x77, 0x39, + 0xae, 0xee, 0xf8, 0x48, 0xd9, 0xd8, 0x8e, 0x17, 0xbc, 0x57, 0xec, 0x1f, 0x1c, 0x1b, 0x8a, 0x1f, + 0x23, 0xab, 0x7f, 0xb9, 0x00, 0x83, 0x82, 0x94, 0x2d, 0xa5, 0x67, 0x0a, 0x7e, 0x18, 0x05, 0x4f, + 0x55, 0xd4, 0xd2, 0x51, 0x29, 0xaa, 0xfa, 0xf5, 0x7c, 0x30, 0x1b, 0x2d, 0x39, 0xa6, 0x75, 0xb8, + 0xd9, 0xe8, 0x1a, 0xc0, 0xd4, 0x46, 0xc7, 0x7a, 0xc4, 0xaf, 0xcb, 0xf2, 0xe1, 0x75, 0x59, 0xc3, + 0xd4, 0x24, 0x0c, 0x79, 0x06, 0x8a, 0x15, 0xc6, 0x9f, 0xf5, 0xcc, 0xd0, 0xe4, 0xc0, 0x77, 0x39, + 0xa7, 0xdc, 0x4b, 0x1a, 0x82, 0xd9, 0xe6, 0x6a, 0x72, 0xcb, 0xa3, 0xdc, 0x9c, 0x2d, 0xf0, 0xcd, + 0xd5, 0x2a, 0x03, 0x68, 0x1c, 0x4e, 0xee, 0xc0, 0x78, 0x85, 0x36, 0xf5, 0xad, 0x79, 0xb3, 0xd9, + 0x34, 0x5d, 0xda, 0xb0, 0x2d, 0xc3, 0x45, 0x21, 0x8b, 0xea, 0x5a, 0xae, 0x96, 0x24, 0x20, 0x2a, + 0x94, 0x16, 0xd7, 0xd6, 0x5c, 0xea, 0xa1, 0xf8, 0x0a, 0x93, 0xc0, 0x26, 0x67, 0x1b, 0x21, 0x9a, + 0xc0, 0xa8, 0xbf, 0x9e, 0x63, 0xbb, 0x17, 0xf7, 0x91, 0x67, 0xb7, 0x03, 0x2d, 0x3f, 0x94, 0x48, + 0x6e, 0x84, 0x76, 0x45, 0x1e, 0xbf, 0x76, 0x54, 0x7c, 0x6d, 0x9f, 0xb0, 0x2d, 0x42, 0x8b, 0x22, + 0xf5, 0xab, 0x0a, 0xbb, 0x7c, 0x95, 0xfa, 0x47, 0x79, 0xb8, 0x24, 0x5a, 0x3c, 0xd5, 0x34, 0xdb, + 0xab, 0xb6, 0xee, 0x18, 0x1a, 0x6d, 0x50, 0xf3, 0x31, 0x3d, 0x99, 0x03, 0x2f, 0x3a, 0x74, 0x8a, + 0x87, 0x18, 0x3a, 0xb7, 0x71, 0x23, 0xc8, 0x24, 0x83, 0x07, 0xbe, 0xdc, 0xa8, 0x18, 0xdb, 0xd9, + 0x9e, 0x18, 0x32, 0x38, 0x18, 0x8f, 0xfc, 0x35, 0x99, 0x88, 0x29, 0xc9, 0x1c, 0xb5, 0xd6, 0xbd, + 0x0d, 0x54, 0x92, 0x5e, 0xae, 0x24, 0x4d, 0x84, 0x68, 0x02, 0xa3, 0xfe, 0x6f, 0x79, 0x38, 0x1f, + 0x17, 0x79, 0x8d, 0x5a, 0xc6, 0x99, 0xbc, 0x3f, 0x1a, 0x79, 0x7f, 0xbf, 0x00, 0x4f, 0x8b, 0x32, + 0xb5, 0x0d, 0xdd, 0xa1, 0x46, 0xc5, 0x74, 0x68, 0xc3, 0xb3, 0x9d, 0xad, 0x13, 0x6c, 0x40, 0x1d, + 0x9d, 0xd8, 0xef, 0x40, 0x49, 0x6c, 0xff, 0xf9, 0x3a, 0x33, 0x12, 0xb4, 0x04, 0xa1, 0x89, 0x15, + 0x8a, 0x1f, 0x1d, 0xc4, 0x3a, 0xab, 0xb4, 0x97, 0xce, 0xfa, 0x3c, 0x0c, 0x07, 0xa2, 0xc7, 0x8d, + 0x68, 0x5f, 0x68, 0x6d, 0x19, 0x3e, 0x02, 0xf7, 0xa2, 0x5a, 0x94, 0x10, 0x6b, 0xf3, 0x01, 0xd5, + 0x0a, 0x5a, 0x43, 0xc3, 0xa2, 0xb6, 0xa0, 0x9c, 0x69, 0x68, 0x32, 0x91, 0xba, 0x5d, 0x84, 0xcb, + 0xe9, 0xdd, 0xae, 0x51, 0xdd, 0x38, 0xeb, 0xf5, 0x4f, 0x64, 0xaf, 0x93, 0xe7, 0xa0, 0xb8, 0xa4, + 0x7b, 0x1b, 0xe2, 0xfa, 0x1d, 0xef, 0x84, 0xd7, 0xcc, 0x26, 0xad, 0xb7, 0x75, 0x6f, 0x43, 0x43, + 0x94, 0x34, 0x67, 0x00, 0x72, 0x4c, 0x99, 0x33, 0xa4, 0xc5, 0x7e, 0xf0, 0xd9, 0xdc, 0xf5, 0x62, + 0xea, 0x62, 0xff, 0xbd, 0x62, 0xd6, 0xbc, 0xf2, 0xd0, 0x31, 0x3d, 0x7a, 0xa6, 0x61, 0x67, 0x1a, + 0x76, 0x48, 0x0d, 0xfb, 0x87, 0x79, 0x18, 0x0e, 0x36, 0x4d, 0x1f, 0xd0, 0xc6, 0xf1, 0xac, 0x55, + 0xe1, 0x56, 0xa6, 0x70, 0xe8, 0xad, 0xcc, 0x61, 0x14, 0x4a, 0x0d, 0x8e, 0x3c, 0xb9, 0x69, 0x80, + 0x12, 0xe3, 0x47, 0x9e, 0xc1, 0x41, 0xe7, 0x73, 0xd0, 0x37, 0xaf, 0x3f, 0x31, 0x5b, 0x9d, 0x96, + 0xb0, 0xd2, 0xd1, 0x9d, 0xac, 0xa5, 0x3f, 0xd1, 0x7c, 0xb8, 0xfa, 0xdf, 0xe6, 0x60, 0x44, 0x08, + 0x55, 0x30, 0x3f, 0x94, 0x54, 0x43, 0xe9, 0xe4, 0x0f, 0x2d, 0x9d, 0xc2, 0xc1, 0xa5, 0xa3, 0xfe, + 0xb9, 0x02, 0x28, 0x33, 0x66, 0x93, 0x2e, 0x3b, 0xba, 0xe5, 0xae, 0x51, 0x47, 0x6c, 0xa7, 0xa7, + 0x19, 0xab, 0x43, 0x7d, 0xa0, 0x34, 0xa5, 0xe4, 0x0f, 0x34, 0xa5, 0x7c, 0x16, 0x06, 0x44, 0x63, + 0x02, 0x57, 0x46, 0x1c, 0x35, 0x8e, 0x0f, 0xd4, 0x42, 0x3c, 0x23, 0x2e, 0xb7, 0xdb, 0x8e, 0xfd, + 0x98, 0x3a, 0xfc, 0x96, 0x4a, 0x10, 0xeb, 0x3e, 0x50, 0x0b, 0xf1, 0x12, 0x67, 0xea, 0xdb, 0x8b, + 0x32, 0x67, 0xea, 0x68, 0x21, 0x9e, 0x5c, 0x87, 0xfe, 0x39, 0xbb, 0xa1, 0xa3, 0xa0, 0xf9, 0xb4, + 0x32, 0xb4, 0xb3, 0x3d, 0xd1, 0xdf, 0x14, 0x30, 0x2d, 0xc0, 0x32, 0xca, 0x8a, 0xbd, 0x69, 0x35, + 0x6d, 0x9d, 0x3b, 0xbf, 0xf4, 0x73, 0x4a, 0x43, 0xc0, 0xb4, 0x00, 0xcb, 0x28, 0x99, 0xcc, 0xd1, + 0xa9, 0xa8, 0x3f, 0xe4, 0xb9, 0x26, 0x60, 0x5a, 0x80, 0x55, 0x7f, 0xbd, 0xc8, 0xb4, 0xd7, 0x35, + 0x3f, 0x3c, 0xf5, 0xeb, 0x42, 0x38, 0x60, 0x7a, 0x0f, 0x30, 0x60, 0x4e, 0xcd, 0x81, 0x9d, 0xfa, + 0xcf, 0xfb, 0x00, 0x84, 0xf4, 0xa7, 0xcf, 0x36, 0x87, 0x87, 0xd3, 0x9a, 0x0a, 0x8c, 0x4f, 0x5b, + 0x1b, 0xba, 0xd5, 0xa0, 0x46, 0x78, 0x6c, 0x59, 0xc2, 0xa1, 0x8d, 0x4e, 0x90, 0x54, 0x20, 0xc3, + 0x73, 0x4b, 0x2d, 0x59, 0x80, 0xbc, 0x0c, 0x83, 0x55, 0xcb, 0xa3, 0x8e, 0xde, 0xf0, 0xcc, 0xc7, + 0x54, 0x4c, 0x0d, 0x78, 0x33, 0x6c, 0x86, 0x60, 0x4d, 0xa6, 0x21, 0x77, 0x60, 0x68, 0x49, 0x77, + 0x3c, 0xb3, 0x61, 0xb6, 0x75, 0xcb, 0x73, 0x95, 0x7e, 0x9c, 0xd1, 0xd0, 0xc2, 0x68, 0x4b, 0x70, + 0x2d, 0x42, 0x45, 0xbe, 0x02, 0x03, 0xb8, 0x35, 0x45, 0x7f, 0xed, 0x81, 0x5d, 0x2f, 0x0e, 0x9f, + 0x0f, 0xdd, 0x03, 0xf9, 0xe9, 0x2b, 0xde, 0x00, 0xc7, 0xef, 0x0e, 0x03, 0x8e, 0xe4, 0x4b, 0xd0, + 0x37, 0x6d, 0x19, 0xc8, 0x1c, 0x76, 0x65, 0xae, 0x0a, 0xe6, 0x17, 0x43, 0xe6, 0x76, 0x3b, 0xc6, + 0xdb, 0x67, 0x97, 0x3e, 0xca, 0x06, 0x3f, 0xba, 0x51, 0x36, 0xf4, 0x11, 0x1c, 0x8b, 0x0f, 0x1f, + 0xd5, 0xb1, 0xf8, 0xc8, 0x01, 0x8f, 0xc5, 0xd5, 0x0f, 0x61, 0x70, 0x72, 0x69, 0x26, 0x18, 0xbd, + 0x4f, 0x41, 0x61, 0x49, 0x78, 0x2a, 0x14, 0xb9, 0x3d, 0xd3, 0x36, 0x0d, 0x8d, 0xc1, 0xc8, 0x0d, + 0xe8, 0x9f, 0x42, 0xf7, 0x37, 0x71, 0x8b, 0x58, 0xe4, 0xeb, 0x5f, 0x03, 0x61, 0xe8, 0x05, 0xeb, + 0xa3, 0xc9, 0xa7, 0xa1, 0x6f, 0xc9, 0xb1, 0xd7, 0x1d, 0xbd, 0x25, 0xd6, 0x60, 0x74, 0x15, 0x69, + 0x73, 0x90, 0xe6, 0xe3, 0xd4, 0x9f, 0xce, 0xf9, 0x66, 0x3b, 0x2b, 0x51, 0xeb, 0xe0, 0xd1, 0x3c, + 0xd6, 0xdd, 0xcf, 0x4b, 0xb8, 0x1c, 0xa4, 0xf9, 0x38, 0x72, 0x03, 0x7a, 0xa7, 0x1d, 0xc7, 0x76, + 0x64, 0x1f, 0x77, 0xca, 0x00, 0xf2, 0x75, 0x2f, 0x52, 0x90, 0xd7, 0x61, 0x90, 0xcf, 0x39, 0xfc, + 0x44, 0xb3, 0xd0, 0xed, 0xa6, 0x54, 0xa6, 0x54, 0xbf, 0x53, 0x90, 0x6c, 0x36, 0x2e, 0xf1, 0x53, + 0x78, 0x2b, 0xf0, 0x0a, 0x14, 0x26, 0x97, 0x66, 0xc4, 0x04, 0x78, 0xce, 0x2f, 0x2a, 0xa9, 0x4a, + 0xac, 0x1c, 0xa3, 0x26, 0x57, 0xa0, 0xb8, 0xc4, 0xd4, 0xa7, 0x84, 0xea, 0xd1, 0xbf, 0xb3, 0x3d, + 0x51, 0x6c, 0x33, 0xfd, 0x41, 0x28, 0x62, 0xd9, 0x66, 0x86, 0xef, 0x98, 0x38, 0x36, 0xdc, 0xc7, + 0x5c, 0x81, 0x62, 0xd9, 0x59, 0x7f, 0x2c, 0x66, 0x2d, 0xc4, 0xea, 0xce, 0xfa, 0x63, 0x0d, 0xa1, + 0xe4, 0x16, 0x80, 0x46, 0xbd, 0x8e, 0x63, 0xe1, 0xf3, 0x93, 0x01, 0x3c, 0x7f, 0xc3, 0xd9, 0xd0, + 0x41, 0x68, 0xbd, 0x61, 0x1b, 0x54, 0x93, 0x48, 0xd4, 0xbf, 0x14, 0x5e, 0xec, 0x54, 0x4c, 0xf7, + 0xd1, 0x59, 0x17, 0xee, 0xa3, 0x0b, 0x75, 0x71, 0xc4, 0x99, 0xec, 0xa4, 0x09, 0xe8, 0x9d, 0x69, + 0xea, 0xeb, 0x2e, 0xf6, 0xa1, 0xf0, 0x25, 0x5b, 0x63, 0x00, 0x8d, 0xc3, 0x63, 0xfd, 0xd4, 0xbf, + 0x7b, 0x3f, 0xfd, 0x5c, 0x6f, 0x30, 0xda, 0x16, 0xa8, 0xb7, 0x69, 0x3b, 0x67, 0x5d, 0xb5, 0xd7, + 0xae, 0xba, 0x06, 0x7d, 0x35, 0xa7, 0x21, 0x1d, 0x5d, 0xe0, 0x7e, 0xc0, 0x75, 0x1a, 0xfc, 0xd8, + 0xc2, 0x47, 0x32, 0xba, 0x8a, 0xeb, 0x21, 0x5d, 0x5f, 0x48, 0x67, 0xb8, 0x9e, 0xa0, 0x13, 0x48, + 0x41, 0xb7, 0x64, 0x3b, 0x9e, 0xe8, 0xb8, 0x80, 0xae, 0x6d, 0x3b, 0x9e, 0xe6, 0x23, 0xc9, 0x67, + 0x01, 0x96, 0xa7, 0x96, 0x7c, 0x67, 0xfb, 0x81, 0xd0, 0x17, 0x50, 0x78, 0xd9, 0x6b, 0x12, 0x9a, + 0x2c, 0xc3, 0xc0, 0x62, 0x9b, 0x3a, 0x7c, 0x2b, 0xc4, 0x1f, 0x94, 0x7c, 0x26, 0x26, 0x5a, 0xd1, + 0xef, 0x37, 0xc5, 0xff, 0x01, 0x39, 0x5f, 0x5f, 0x6c, 0xff, 0xa7, 0x16, 0x32, 0x22, 0xaf, 0x43, + 0xa9, 0xcc, 0xed, 0xbc, 0x41, 0x64, 0x19, 0x88, 0x0c, 0xb7, 0xa0, 0x1c, 0xc5, 0xf7, 0xec, 0x3a, + 0xfe, 0xad, 0x09, 0x72, 0xf5, 0x06, 0x8c, 0xc5, 0xab, 0x21, 0x83, 0xd0, 0x37, 0xb5, 0xb8, 0xb0, + 0x30, 0x3d, 0xb5, 0x3c, 0xd6, 0x43, 0xfa, 0xa1, 0x58, 0x9b, 0x5e, 0xa8, 0x8c, 0xe5, 0xd4, 0x5f, + 0x95, 0x66, 0x10, 0xa6, 0x5a, 0x67, 0x57, 0xc3, 0x87, 0xba, 0x6f, 0x19, 0xc3, 0xfb, 0x50, 0x3c, + 0x31, 0x68, 0x99, 0x9e, 0x47, 0x0d, 0xb1, 0x4a, 0xe0, 0x7d, 0xa1, 0xf7, 0x44, 0x4b, 0xe0, 0xc9, + 0x8b, 0x30, 0x8c, 0x30, 0x71, 0x45, 0xc8, 0xf7, 0xc7, 0xa2, 0x80, 0xf3, 0x44, 0x8b, 0x22, 0xd5, + 0xdf, 0x0f, 0x6f, 0x87, 0xe7, 0xa8, 0x7e, 0x52, 0x6f, 0x14, 0x3f, 0x26, 0xfd, 0xa5, 0xfe, 0xcb, + 0x22, 0x7f, 0x02, 0xc2, 0xdf, 0x0b, 0x1e, 0x87, 0x28, 0xc3, 0x23, 0xdd, 0xc2, 0x3e, 0x8e, 0x74, + 0x5f, 0x84, 0xd2, 0x3c, 0xf5, 0x36, 0x6c, 0xdf, 0xf1, 0x0b, 0x3d, 0xf4, 0x5a, 0x08, 0x91, 0x3d, + 0xf4, 0x38, 0x0d, 0x79, 0x04, 0xc4, 0x7f, 0x0c, 0x18, 0x38, 0x62, 0xfb, 0x47, 0xc8, 0x97, 0x12, + 0xfb, 0x94, 0x1a, 0xbe, 0x04, 0x46, 0x1f, 0xfb, 0xf3, 0x81, 0xa3, 0xb7, 0xe4, 0x89, 0xf5, 0x2f, + 0xb6, 0x27, 0x4a, 0x9c, 0x46, 0x4b, 0x61, 0x4b, 0xde, 0x83, 0x81, 0xf9, 0x99, 0xb2, 0x78, 0x18, + 0xc8, 0xbd, 0x22, 0x9e, 0x0a, 0xa4, 0xe8, 0x23, 0x02, 0x91, 0xe0, 0x7b, 0x9b, 0xd6, 0x9a, 0x9e, + 0x7c, 0x17, 0x18, 0x72, 0x61, 0xda, 0xc2, 0x5f, 0xee, 0x88, 0xd3, 0x85, 0x40, 0x5b, 0xa2, 0xef, + 0x79, 0xe2, 0xb2, 0xe2, 0xd8, 0x98, 0xb6, 0xf4, 0x1f, 0x62, 0x74, 0x2f, 0xc2, 0x78, 0xb9, 0xdd, + 0x6e, 0x9a, 0xd4, 0x40, 0x7d, 0xd1, 0x3a, 0x4d, 0xea, 0x0a, 0x97, 0x1f, 0x7c, 0x0c, 0xa2, 0x73, + 0x64, 0x1d, 0x9f, 0xa3, 0xd6, 0x9d, 0x4e, 0xd4, 0x3f, 0x33, 0x59, 0x56, 0xfd, 0xd9, 0x3c, 0x5c, + 0x9c, 0x72, 0xa8, 0xee, 0xd1, 0xf9, 0x99, 0x72, 0xb9, 0x83, 0x3e, 0x72, 0xcd, 0x26, 0xb5, 0xd6, + 0x8f, 0x67, 0x58, 0xbf, 0x05, 0x23, 0x41, 0x03, 0x6a, 0x0d, 0xbb, 0x4d, 0xe5, 0x87, 0x55, 0x0d, + 0x1f, 0x53, 0x77, 0x19, 0x4a, 0x8b, 0x91, 0x92, 0xfb, 0x70, 0x2e, 0x80, 0x94, 0x9b, 0x4d, 0x7b, + 0x53, 0xa3, 0x1d, 0x97, 0x3b, 0xc6, 0xf6, 0x73, 0xc7, 0xd8, 0x90, 0x83, 0xce, 0xf0, 0x75, 0x87, + 0x11, 0x68, 0x69, 0xa5, 0xd4, 0x5f, 0x2c, 0xc0, 0xa5, 0x07, 0x7a, 0xd3, 0x34, 0x42, 0xd1, 0x68, + 0xd4, 0x6d, 0xdb, 0x96, 0x4b, 0x4f, 0xd0, 0x28, 0x8d, 0x0c, 0x85, 0xe2, 0x91, 0x0c, 0x85, 0x64, + 0x17, 0xf5, 0x1e, 0xba, 0x8b, 0x4a, 0x07, 0xea, 0xa2, 0xff, 0x35, 0x07, 0x63, 0xbe, 0xe3, 0xbf, + 0xfc, 0x88, 0x5b, 0xf2, 0x4a, 0xc7, 0x23, 0xc4, 0x98, 0x1f, 0x34, 0xe2, 0x49, 0x0d, 0xfa, 0xa6, + 0x9f, 0xb4, 0x4d, 0x87, 0xba, 0x7b, 0x70, 0xe2, 0x7e, 0x46, 0x1c, 0x97, 0x8c, 0x53, 0x5e, 0x24, + 0x71, 0x52, 0xc2, 0xc1, 0xf8, 0x9c, 0x8f, 0x3f, 0x7d, 0x98, 0xf4, 0x5f, 0xa6, 0xf3, 0xe7, 0x7c, + 0xe2, 0x89, 0x44, 0xe4, 0x7d, 0x66, 0x48, 0x4a, 0x9e, 0x87, 0xc2, 0xf2, 0xf2, 0x9c, 0x98, 0x49, + 0x31, 0x22, 0x80, 0xe7, 0xc9, 0xef, 0x15, 0x19, 0x56, 0xfd, 0x27, 0x79, 0x00, 0xa6, 0x0a, 0x7c, + 0xb8, 0x1e, 0x8b, 0x12, 0x4e, 0x42, 0xbf, 0x2f, 0x70, 0xa1, 0x86, 0x81, 0xd7, 0x7e, 0xbc, 0x23, + 0xe2, 0x75, 0x07, 0x2f, 0x34, 0x26, 0x7c, 0x47, 0x72, 0x7e, 0x0f, 0x80, 0x3b, 0x1b, 0x74, 0x24, + 0xf7, 0xdd, 0xc7, 0x3f, 0x0b, 0x03, 0x62, 0xc6, 0xb3, 0x23, 0xe7, 0xff, 0x0d, 0x1f, 0xa8, 0x85, + 0xf8, 0xd8, 0xd4, 0x5a, 0x3a, 0xc4, 0x42, 0xec, 0x8b, 0x97, 0xf7, 0xca, 0x99, 0x78, 0x8f, 0x58, + 0xbc, 0xdf, 0x14, 0xe2, 0xe5, 0x2f, 0x78, 0x4e, 0xac, 0x78, 0x8f, 0xec, 0xec, 0x5b, 0xfd, 0x87, + 0x39, 0x20, 0xac, 0x59, 0x4b, 0xba, 0xeb, 0x6e, 0xda, 0x8e, 0xc1, 0x9d, 0xd3, 0x8f, 0x45, 0x30, + 0x47, 0x77, 0x5f, 0xf9, 0x9d, 0x7e, 0x38, 0x17, 0x71, 0xfc, 0x3d, 0xe1, 0x93, 0xd5, 0x8d, 0xe8, + 0x68, 0xea, 0xf6, 0xea, 0xe5, 0x53, 0xf2, 0x85, 0x68, 0x6f, 0xe4, 0x01, 0x9a, 0x74, 0x13, 0xfa, + 0x12, 0x0c, 0x89, 0x1f, 0x6c, 0x85, 0xf6, 0x6f, 0xba, 0x70, 0x94, 0xba, 0x0c, 0xa0, 0x45, 0xd0, + 0xe4, 0x55, 0x18, 0x60, 0x03, 0x66, 0x1d, 0x83, 0x87, 0xf4, 0x85, 0x2f, 0x4a, 0x0c, 0x1f, 0x28, + 0xaf, 0x27, 0x01, 0xa5, 0xf4, 0x8e, 0xa8, 0x7f, 0x0f, 0xef, 0x88, 0xbe, 0x0a, 0x83, 0x65, 0xcb, + 0xb2, 0x3d, 0xdc, 0xa4, 0xbb, 0xe2, 0x6a, 0x22, 0xd3, 0x2a, 0x7f, 0x1e, 0x1f, 0xc7, 0x87, 0xf4, + 0xa9, 0x66, 0xb9, 0xcc, 0x90, 0xdc, 0xf6, 0x5f, 0xc5, 0x50, 0x47, 0x78, 0x95, 0xe3, 0xf5, 0x8c, + 0x23, 0x60, 0xc9, 0x47, 0x31, 0xd8, 0x79, 0xc3, 0x4b, 0x8e, 0xdd, 0xb6, 0x5d, 0x6a, 0x70, 0x41, + 0x0d, 0x86, 0xa1, 0x06, 0xda, 0x02, 0x81, 0xef, 0xd8, 0x22, 0x81, 0x3c, 0x22, 0x45, 0xc8, 0x1a, + 0x9c, 0xf7, 0x2f, 0x8a, 0x83, 0x17, 0x83, 0xd5, 0x8a, 0xab, 0x0c, 0xe1, 0xab, 0x24, 0x12, 0x57, + 0x86, 0x6a, 0x65, 0xf2, 0xaa, 0x7f, 0x2d, 0xe2, 0x3f, 0x39, 0xac, 0x9b, 0x86, 0xdc, 0xd5, 0xa9, + 0xfc, 0xc8, 0x8f, 0xc0, 0xe0, 0xbc, 0xfe, 0xa4, 0xd2, 0x11, 0x67, 0x2f, 0xc3, 0x7b, 0xbf, 0x7d, + 0x69, 0xe9, 0x4f, 0xea, 0x86, 0x28, 0x17, 0xb3, 0x29, 0x64, 0x96, 0xa4, 0x0e, 0x17, 0x97, 0x1c, + 0xbb, 0x65, 0x7b, 0xd4, 0x88, 0x3d, 0xbe, 0x1b, 0x0d, 0x5f, 0xeb, 0xb6, 0x05, 0x45, 0xbd, 0xcb, + 0x2b, 0xbc, 0x0c, 0x36, 0xa4, 0x05, 0xa3, 0x65, 0xd7, 0xed, 0xb4, 0x68, 0x78, 0x43, 0x35, 0xb6, + 0xeb, 0x67, 0x7c, 0x46, 0x78, 0x2d, 0x3f, 0xad, 0x63, 0x51, 0x7e, 0x41, 0x55, 0xf7, 0x4c, 0xb9, + 0x46, 0xfc, 0x96, 0x38, 0xef, 0x7b, 0xc5, 0xfe, 0x91, 0xb1, 0x51, 0xed, 0x52, 0xb2, 0x31, 0xcb, + 0xa6, 0xd7, 0xa4, 0xea, 0xef, 0xe5, 0x00, 0x42, 0x01, 0x93, 0x97, 0xa2, 0x11, 0x8a, 0x72, 0xe1, + 0x45, 0x87, 0x88, 0x5e, 0x10, 0x09, 0x49, 0x44, 0xae, 0x40, 0x11, 0x23, 0x5c, 0xe4, 0xc3, 0x83, + 0xd5, 0x47, 0xa6, 0x65, 0x68, 0x08, 0x65, 0x58, 0xe9, 0x29, 0x3a, 0x62, 0xf1, 0x52, 0x9f, 0x5b, + 0x85, 0x15, 0x18, 0xad, 0x75, 0x56, 0xfd, 0xba, 0xa5, 0x77, 0x75, 0x18, 0x68, 0xc3, 0xed, 0xac, + 0x06, 0x8f, 0x51, 0x23, 0x61, 0x4c, 0xa2, 0x45, 0xd4, 0x5f, 0xcf, 0xc5, 0x66, 0xc1, 0x63, 0x5c, + 0xf4, 0x3e, 0x95, 0xf4, 0xd3, 0x48, 0x4e, 0x4b, 0xea, 0x9f, 0xcf, 0xc3, 0xe0, 0x92, 0xed, 0x78, + 0x22, 0x64, 0xc8, 0xc9, 0x5e, 0x85, 0xa4, 0xbd, 0x52, 0x71, 0x1f, 0x7b, 0xa5, 0x2b, 0x50, 0x94, + 0x5c, 0x94, 0xf9, 0xbd, 0x88, 0x61, 0x38, 0x1a, 0x42, 0xd5, 0x1f, 0xcb, 0x03, 0x7c, 0xe9, 0xe5, + 0x97, 0x4f, 0xb1, 0x80, 0xd4, 0x5f, 0xc8, 0xc1, 0xa8, 0xb8, 0xa8, 0x93, 0x62, 0x7d, 0xf5, 0xf9, + 0x57, 0xac, 0xf2, 0xb8, 0xe4, 0x20, 0xcd, 0xc7, 0xb1, 0x25, 0x60, 0xfa, 0x89, 0xe9, 0xe1, 0x5d, + 0x85, 0x14, 0xec, 0x8b, 0x0a, 0x98, 0xbc, 0x04, 0xf8, 0x74, 0xe4, 0x25, 0xff, 0x0a, 0xb2, 0x10, + 0xae, 0x7b, 0xac, 0xc0, 0x74, 0xea, 0x35, 0xa4, 0xfa, 0x5b, 0x45, 0x28, 0x4e, 0x3f, 0xa1, 0x8d, + 0x13, 0xde, 0x35, 0xd2, 0xc1, 0x66, 0xf1, 0x90, 0x07, 0x9b, 0x07, 0xf1, 0xa9, 0x78, 0x37, 0xec, + 0xcf, 0x52, 0xb4, 0xfa, 0x58, 0xcf, 0xc7, 0xab, 0xf7, 0x7b, 0xfa, 0xe4, 0xb9, 0xe4, 0xfc, 0x97, + 0x05, 0x28, 0xd4, 0xa6, 0x96, 0xce, 0xf4, 0xe6, 0x58, 0xf5, 0xa6, 0xfb, 0x9d, 0xb5, 0x1a, 0x5c, + 0x43, 0xf5, 0x87, 0x5e, 0xa2, 0xb1, 0x1b, 0xa7, 0xef, 0x17, 0x60, 0xa4, 0x36, 0xb3, 0xbc, 0x24, + 0x9d, 0x04, 0xdf, 0xe7, 0x9e, 0x7c, 0xe8, 0x53, 0xc6, 0xbb, 0xf4, 0x4a, 0xc2, 0x9e, 0x59, 0xa9, + 0x5a, 0xde, 0x6b, 0x77, 0x1e, 0xe8, 0xcd, 0x0e, 0xc5, 0xa3, 0x17, 0xee, 0xf7, 0xeb, 0x9a, 0x1f, + 0xd2, 0x5f, 0xc4, 0x87, 0xff, 0x3e, 0x03, 0xf2, 0x16, 0x14, 0x56, 0x84, 0x47, 0x46, 0x16, 0x9f, + 0x57, 0x6e, 0x73, 0x3e, 0x6c, 0x12, 0x2c, 0x74, 0x4c, 0x03, 0x39, 0xb0, 0x52, 0xac, 0xf0, 0x5d, + 0xb1, 0x00, 0xef, 0xa9, 0xf0, 0xba, 0x5f, 0xf8, 0x6e, 0xb5, 0x42, 0x6a, 0x30, 0xb8, 0x44, 0x9d, + 0x96, 0x89, 0x1d, 0xe5, 0xcf, 0xd9, 0xdd, 0x99, 0xb0, 0x9d, 0xca, 0x60, 0x3b, 0x2c, 0x84, 0xcc, + 0x64, 0x2e, 0xe4, 0x7d, 0x00, 0x6e, 0xa3, 0xec, 0x31, 0x7e, 0xe4, 0x33, 0x68, 0xf7, 0x73, 0xd3, + 0x32, 0xc5, 0xc6, 0x93, 0x98, 0x91, 0x47, 0x30, 0x36, 0x6f, 0x1b, 0xe6, 0x9a, 0xc9, 0x5d, 0x2f, + 0xb1, 0x82, 0xd2, 0xee, 0x0e, 0x4f, 0xcc, 0x94, 0x6c, 0x49, 0xe5, 0xd2, 0xaa, 0x49, 0x30, 0x56, + 0xff, 0xb3, 0x5e, 0x28, 0xb2, 0x6e, 0x3f, 0x1b, 0xbf, 0x87, 0x19, 0xbf, 0x65, 0x18, 0x7b, 0x68, + 0x3b, 0x8f, 0x4c, 0x6b, 0x3d, 0xf0, 0x8a, 0x17, 0x7b, 0x53, 0xf4, 0xe4, 0xd9, 0xe4, 0xb8, 0x7a, + 0xe0, 0x40, 0xaf, 0x25, 0xc8, 0x77, 0x19, 0xc1, 0x6f, 0x00, 0xf0, 0xb7, 0xee, 0x48, 0xd3, 0x1f, + 0x06, 0xab, 0xe0, 0x2f, 0xe1, 0xd1, 0xd1, 0x5e, 0x0e, 0x56, 0x11, 0x12, 0xb3, 0x4d, 0x38, 0xf7, + 0x85, 0x18, 0x40, 0xbf, 0x7b, 0xdc, 0x84, 0xa3, 0x2f, 0x84, 0x6c, 0x04, 0x70, 0xaf, 0x88, 0x25, + 0x00, 0xe9, 0x7e, 0x09, 0x62, 0x82, 0x88, 0x4c, 0x0e, 0x22, 0x3c, 0x5c, 0xca, 0xf5, 0x92, 0x26, + 0xf1, 0x20, 0xaf, 0xc5, 0x2e, 0xc0, 0x49, 0x84, 0x5b, 0xe6, 0xfd, 0x77, 0xe8, 0x40, 0x35, 0xb4, + 0x9b, 0x03, 0x95, 0xfa, 0xf5, 0x3c, 0x0c, 0xd4, 0x3a, 0xab, 0xee, 0x96, 0xeb, 0xd1, 0xd6, 0x09, + 0x57, 0x63, 0x7f, 0x7b, 0x55, 0x4c, 0xdd, 0x5e, 0x3d, 0xef, 0x0b, 0x45, 0x3a, 0x77, 0x0c, 0x4c, + 0x3a, 0x5f, 0x1c, 0x7f, 0x2d, 0x0f, 0x63, 0xfc, 0xe2, 0xac, 0x62, 0xba, 0x8d, 0x23, 0x70, 0xe6, + 0x3f, 0x7e, 0xa9, 0x1c, 0xee, 0xb2, 0x79, 0x0f, 0x4f, 0x24, 0xd4, 0xaf, 0xe5, 0x61, 0xb0, 0xdc, + 0xf1, 0x36, 0xca, 0x1e, 0xea, 0xd6, 0xa9, 0xdc, 0x9f, 0xfc, 0x9d, 0x1c, 0x8c, 0xb2, 0x86, 0x2c, + 0xdb, 0x8f, 0xa8, 0x75, 0x04, 0x07, 0x8f, 0xf2, 0x01, 0x62, 0xfe, 0x80, 0x07, 0x88, 0xbe, 0x2c, + 0x0b, 0xfb, 0x93, 0x25, 0x1e, 0x97, 0x6b, 0x76, 0x93, 0x9e, 0xec, 0xcf, 0x38, 0xc2, 0xe3, 0x72, + 0x5f, 0x20, 0x47, 0x70, 0x3d, 0xf3, 0xc9, 0x12, 0xc8, 0x11, 0x9c, 0x2d, 0x7d, 0x32, 0x04, 0xf2, + 0x9d, 0x1c, 0x0c, 0x4c, 0xda, 0xde, 0x09, 0x1f, 0xf8, 0xe2, 0x2b, 0x4e, 0xb6, 0x9a, 0xfb, 0x5f, + 0x71, 0xb2, 0x75, 0x53, 0xfd, 0xf9, 0x3c, 0x9c, 0x17, 0xb1, 0xc1, 0xc5, 0xf9, 0xc3, 0xd9, 0x74, + 0x2c, 0x06, 0x5b, 0x52, 0x34, 0x67, 0xf3, 0x90, 0x10, 0xcd, 0x2f, 0x17, 0xe0, 0x3c, 0x86, 0x32, + 0x65, 0xdb, 0xb2, 0x4f, 0x80, 0x2d, 0x42, 0x1a, 0xd1, 0x4b, 0xd0, 0xf9, 0x94, 0x4b, 0xd0, 0x7f, + 0xb1, 0x3d, 0xf1, 0xda, 0xba, 0xe9, 0x6d, 0x74, 0x56, 0x6f, 0x36, 0xec, 0xd6, 0xad, 0x75, 0x47, + 0x7f, 0x6c, 0xf2, 0xeb, 0x3f, 0xbd, 0x79, 0x2b, 0x48, 0xb3, 0xa1, 0xb7, 0x4d, 0x91, 0x80, 0xa3, + 0x86, 0x7b, 0x1d, 0xc6, 0xd5, 0xbf, 0x3e, 0x75, 0x01, 0xee, 0xd9, 0xa6, 0x25, 0x7c, 0x0a, 0xb9, + 0xa1, 0x5b, 0x63, 0xfb, 0xc3, 0x0f, 0x6c, 0xd3, 0xaa, 0xc7, 0x1d, 0x0b, 0xf7, 0x5b, 0x5f, 0xc8, + 0x5a, 0x93, 0xaa, 0x51, 0xff, 0x9b, 0x1c, 0x3c, 0x15, 0xd5, 0xe2, 0x4f, 0x82, 0xed, 0xf8, 0x67, + 0xf2, 0x70, 0xe1, 0x2e, 0x0a, 0x27, 0x70, 0xe4, 0x38, 0x9b, 0xb7, 0xc4, 0xe0, 0x4c, 0x91, 0xcd, + 0x99, 0x45, 0x99, 0x2d, 0x9b, 0xb3, 0x49, 0x5d, 0xc8, 0xe6, 0xef, 0xe5, 0xe0, 0xdc, 0x62, 0xb5, + 0x32, 0xf5, 0x09, 0x19, 0x51, 0xc9, 0xef, 0x39, 0xe1, 0x06, 0x67, 0xe2, 0x7b, 0x4e, 0xb8, 0xe9, + 0xf9, 0xed, 0x3c, 0x9c, 0xab, 0x95, 0xe7, 0xe7, 0x3e, 0x29, 0x33, 0xf8, 0x94, 0xec, 0x75, 0xe8, + 0x1f, 0x82, 0x09, 0x5b, 0x40, 0xfe, 0xcc, 0x07, 0xb7, 0xb3, 0xbd, 0x11, 0x93, 0x42, 0x39, 0xe1, + 0x53, 0xf7, 0x91, 0x08, 0x85, 0x69, 0x7e, 0x84, 0xfa, 0x84, 0x6b, 0xfe, 0x7f, 0x51, 0x82, 0xc1, + 0xfb, 0x9d, 0x55, 0x2a, 0x9c, 0x53, 0x4e, 0xf5, 0xc9, 0xef, 0x6d, 0x18, 0x14, 0x62, 0xc0, 0x5b, + 0x13, 0x29, 0x78, 0x9e, 0x08, 0x86, 0xc2, 0xe3, 0x13, 0xc9, 0x44, 0xe4, 0x0a, 0x14, 0x1f, 0x50, + 0x67, 0x55, 0x7e, 0x57, 0xfa, 0x98, 0x3a, 0xab, 0x1a, 0x42, 0xc9, 0x5c, 0xe8, 0x32, 0x5f, 0x5e, + 0xaa, 0x62, 0x22, 0x15, 0x71, 0x61, 0x83, 0x99, 0x61, 0x02, 0xbf, 0x37, 0xbd, 0x6d, 0xf2, 0x14, + 0x2c, 0xf2, 0x9b, 0xf6, 0x78, 0x49, 0xb2, 0x00, 0xe3, 0xb2, 0xe3, 0x13, 0xcf, 0x22, 0xd2, 0x9f, + 0xc2, 0x2e, 0x2d, 0x7f, 0x48, 0xb2, 0x28, 0x79, 0x17, 0x86, 0x7c, 0x20, 0xba, 0x70, 0x0d, 0x84, + 0xa1, 0xeb, 0x03, 0x56, 0xb1, 0x14, 0x45, 0x91, 0x02, 0x32, 0x03, 0xbc, 0x86, 0x80, 0x14, 0x06, + 0x31, 0x97, 0xb8, 0x48, 0x01, 0xf2, 0x2a, 0x32, 0xc0, 0x67, 0x1e, 0xe8, 0xac, 0x32, 0x88, 0x8f, + 0x2e, 0xd1, 0x25, 0xdf, 0x11, 0x70, 0xfe, 0xb4, 0x36, 0x42, 0x46, 0x16, 0x01, 0x42, 0xa7, 0x02, + 0x11, 0xc0, 0x60, 0xdf, 0xee, 0x0e, 0x12, 0x0b, 0xf9, 0x3a, 0x70, 0xf8, 0x20, 0xd7, 0x81, 0xea, + 0x3f, 0xc8, 0xc3, 0x60, 0xb9, 0xdd, 0x0e, 0x86, 0xc2, 0x4b, 0x50, 0x2a, 0xb7, 0xdb, 0x2b, 0x5a, + 0x55, 0x0e, 0x65, 0xae, 0xb7, 0xdb, 0xf5, 0x8e, 0x63, 0xca, 0x3e, 0xa1, 0x9c, 0x88, 0x4c, 0xc1, + 0x70, 0xb9, 0xdd, 0x5e, 0xea, 0xac, 0x36, 0xcd, 0x86, 0x94, 0x19, 0x89, 0xe7, 0x8e, 0x6b, 0xb7, + 0xeb, 0x6d, 0xc4, 0xc4, 0xd3, 0x63, 0x45, 0xcb, 0x90, 0xaf, 0x62, 0xd8, 0x1f, 0x91, 0x98, 0x87, + 0xa7, 0xfe, 0x50, 0x83, 0x20, 0xe6, 0x61, 0xdb, 0x6e, 0x06, 0x44, 0x3c, 0xd8, 0xfb, 0x15, 0x3f, + 0x64, 0x3e, 0xab, 0x28, 0x91, 0x80, 0x27, 0x64, 0x49, 0x3e, 0x07, 0x7d, 0xe5, 0x76, 0x5b, 0xba, + 0x6f, 0x42, 0xa7, 0x22, 0x56, 0x2a, 0x9e, 0xfb, 0x4c, 0x90, 0x5d, 0x7e, 0x1b, 0x46, 0xa2, 0x95, + 0xed, 0x2b, 0x58, 0xfc, 0x0f, 0x72, 0xf8, 0x41, 0x27, 0xdc, 0xa7, 0xf9, 0x15, 0x28, 0x94, 0xdb, + 0x6d, 0x31, 0x1f, 0x9d, 0x4b, 0xe9, 0x8f, 0xf8, 0x13, 0xe8, 0x72, 0xbb, 0xed, 0x7f, 0xfa, 0x09, + 0x7f, 0x1c, 0x71, 0xa0, 0x4f, 0xff, 0x0e, 0xff, 0xf4, 0x93, 0xfd, 0x70, 0x41, 0xfd, 0xad, 0x02, + 0x8c, 0x96, 0xdb, 0xed, 0xb3, 0x20, 0xf3, 0x47, 0xf5, 0xd0, 0xfa, 0x65, 0x00, 0x69, 0x7a, 0xec, + 0x0b, 0x9e, 0x6e, 0x0d, 0x4a, 0x53, 0xa3, 0x92, 0xd3, 0x24, 0x22, 0x5f, 0xfd, 0xfa, 0xf7, 0xa5, + 0x7e, 0x5f, 0x2b, 0xe0, 0x54, 0x7c, 0xd2, 0x83, 0x46, 0x7d, 0x5c, 0xba, 0x4d, 0xf4, 0x41, 0x69, + 0x5f, 0x7d, 0xf0, 0xb7, 0x23, 0x83, 0x07, 0x83, 0x96, 0x9f, 0xf5, 0x42, 0xef, 0xa1, 0xcc, 0xe2, + 0x11, 0x59, 0x98, 0x22, 0x92, 0x8d, 0x9f, 0x48, 0x49, 0xc4, 0x55, 0x6a, 0x30, 0x54, 0xdd, 0x34, + 0xb4, 0x18, 0xad, 0xdf, 0x87, 0x7d, 0xfb, 0xea, 0xc3, 0xed, 0x3c, 0xbe, 0x9d, 0x0e, 0xe2, 0x32, + 0x1d, 0x7e, 0x77, 0x71, 0x0b, 0x80, 0x7b, 0x1e, 0x04, 0x6e, 0xcd, 0xc3, 0x3c, 0x04, 0x0b, 0xcf, + 0xaf, 0x24, 0x42, 0xb0, 0x84, 0x24, 0x81, 0x87, 0x54, 0x21, 0xd5, 0x43, 0xea, 0x06, 0xf4, 0x6b, + 0xfa, 0xe6, 0x7b, 0x1d, 0xea, 0x6c, 0x09, 0x73, 0x86, 0x87, 0x3d, 0xd4, 0x37, 0xeb, 0x3f, 0xca, + 0x80, 0x5a, 0x80, 0x26, 0x6a, 0xf0, 0xf8, 0x5e, 0xf2, 0x08, 0xe1, 0x67, 0xe4, 0xc1, 0x93, 0xfb, + 0x83, 0x28, 0x3a, 0x79, 0x13, 0x0a, 0xe5, 0x87, 0x35, 0x21, 0xd9, 0xa0, 0x6b, 0xcb, 0x0f, 0x6b, + 0x42, 0x5e, 0x99, 0x65, 0x1f, 0xd6, 0xd4, 0xaf, 0xe5, 0x81, 0x24, 0x29, 0xc9, 0x6b, 0x30, 0x80, + 0xd0, 0x75, 0xa6, 0x33, 0x72, 0x62, 0xce, 0x4d, 0xb7, 0xee, 0x20, 0x34, 0x62, 0xdc, 0xf9, 0xa4, + 0xe4, 0x0d, 0x4c, 0x7d, 0x2c, 0x52, 0xc3, 0x45, 0x12, 0x73, 0x6e, 0xba, 0x7e, 0xb2, 0xe0, 0x58, + 0xe6, 0x63, 0x41, 0x8c, 0x76, 0xe1, 0xc3, 0xda, 0xac, 0xed, 0x7a, 0x42, 0xd4, 0xdc, 0x2e, 0xdc, + 0x74, 0x31, 0x23, 0x6c, 0xc4, 0x2e, 0xe4, 0x64, 0x98, 0xd5, 0xea, 0x61, 0x8d, 0x3f, 0x53, 0x31, + 0x34, 0xbb, 0xe9, 0x1b, 0x94, 0x3c, 0xab, 0xd5, 0xa6, 0x5b, 0xe7, 0x4f, 0x5c, 0x0c, 0xcc, 0xb9, + 0x1c, 0xc9, 0x6a, 0x15, 0x29, 0xa5, 0x7e, 0xa3, 0x1f, 0xc6, 0x2a, 0xba, 0xa7, 0xaf, 0xea, 0x2e, + 0x95, 0x76, 0xd3, 0xa3, 0x3e, 0xcc, 0xff, 0x1c, 0x49, 0x0e, 0xc6, 0x6a, 0xca, 0xd7, 0xc4, 0x0b, + 0x90, 0xb7, 0x42, 0xbe, 0x41, 0xce, 0x51, 0x39, 0x89, 0xd9, 0x6a, 0xbd, 0x2d, 0xc0, 0x5a, 0x82, + 0x90, 0xbc, 0x08, 0x83, 0x3e, 0x8c, 0x6d, 0x00, 0x0a, 0xa1, 0xce, 0x18, 0xab, 0xcc, 0xfe, 0xd7, + 0x64, 0x34, 0x79, 0x03, 0x86, 0xfc, 0x9f, 0x92, 0x69, 0xcd, 0x33, 0xb2, 0xad, 0x26, 0x76, 0x4f, + 0x32, 0xa9, 0x5c, 0x14, 0xe7, 0xb7, 0xde, 0x48, 0xd1, 0x58, 0xd2, 0xb3, 0x08, 0x29, 0xf9, 0x51, + 0x18, 0xf1, 0x7f, 0x8b, 0x0d, 0x03, 0xcf, 0x0f, 0xf7, 0x62, 0x90, 0xd2, 0x39, 0x26, 0xd6, 0x9b, + 0x51, 0x72, 0xbe, 0x75, 0x78, 0xda, 0xcf, 0xe3, 0x65, 0xac, 0x26, 0x77, 0x0e, 0xb1, 0x0a, 0x48, + 0x15, 0xc6, 0x7d, 0x48, 0xa8, 0xa1, 0x7d, 0xe1, 0x8e, 0xd1, 0x58, 0xad, 0xa7, 0x2a, 0x69, 0xb2, + 0x14, 0x69, 0xc2, 0x95, 0x08, 0xd0, 0x70, 0x37, 0xcc, 0x35, 0x4f, 0x6c, 0xf7, 0x44, 0x0c, 0x62, + 0x91, 0xb8, 0x31, 0xe0, 0xca, 0x69, 0xfc, 0x0c, 0xac, 0xd1, 0xec, 0x50, 0x5d, 0xb9, 0x91, 0x1a, + 0x9c, 0xf7, 0xf1, 0x77, 0xa7, 0x96, 0x96, 0x1c, 0xfb, 0x03, 0xda, 0xf0, 0xaa, 0x15, 0xb1, 0x5d, + 0xc6, 0xd8, 0x74, 0xc6, 0x6a, 0x7d, 0xbd, 0xd1, 0x66, 0x4a, 0xc1, 0x70, 0x51, 0xe6, 0xa9, 0x85, + 0xc9, 0x03, 0xb8, 0x20, 0xc1, 0xa5, 0xf4, 0xd0, 0x10, 0xee, 0xe7, 0x05, 0xd7, 0xf4, 0x0c, 0xd1, + 0xe9, 0xc5, 0xc9, 0xdb, 0x30, 0xec, 0x23, 0xf8, 0x2d, 0xe2, 0x20, 0xde, 0x22, 0xe2, 0x90, 0x34, + 0x56, 0xeb, 0xf1, 0xd7, 0x94, 0x51, 0x62, 0x59, 0xa3, 0x30, 0xa3, 0xfe, 0x50, 0x44, 0xa3, 0xbc, + 0xad, 0x76, 0xaa, 0x32, 0x62, 0x96, 0xfd, 0x77, 0x43, 0x8d, 0x5a, 0x74, 0xcc, 0x75, 0x93, 0xef, + 0xa4, 0xfd, 0x07, 0x94, 0xab, 0x75, 0x1b, 0x81, 0x69, 0xfa, 0xc1, 0xc9, 0x2f, 0x97, 0xe1, 0x5c, + 0x8a, 0x8e, 0xed, 0x6b, 0xc7, 0xf8, 0xf5, 0x7c, 0xd8, 0x88, 0x13, 0xbe, 0x6d, 0x9c, 0x84, 0x7e, + 0xff, 0x4b, 0x84, 0xf1, 0xa0, 0x64, 0x0d, 0xcd, 0x38, 0x0f, 0x1f, 0x1f, 0x11, 0xc7, 0x09, 0xdf, + 0x4a, 0x1e, 0x85, 0x38, 0xbe, 0x9b, 0x0b, 0xc5, 0x71, 0xc2, 0xb7, 0x97, 0x7f, 0xaf, 0x10, 0xce, + 0x49, 0x67, 0x7b, 0xcc, 0xa3, 0x32, 0x93, 0x43, 0x3f, 0xd8, 0xd2, 0x3e, 0x1e, 0x32, 0xca, 0xaa, + 0xd9, 0x77, 0x40, 0xd5, 0xfc, 0x47, 0xc9, 0xfe, 0xe4, 0xa6, 0xe7, 0x89, 0xec, 0xcf, 0x23, 0x18, + 0xac, 0xe4, 0x76, 0xb8, 0x8e, 0x71, 0x1b, 0xbd, 0x57, 0x0a, 0xf1, 0xb7, 0x2a, 0x4c, 0xf4, 0x28, + 0x09, 0xf9, 0x21, 0xb8, 0x14, 0x01, 0x2c, 0xe9, 0x8e, 0xde, 0xa2, 0x5e, 0x98, 0x71, 0x10, 0x83, + 0x36, 0xf9, 0xa5, 0xeb, 0xed, 0x00, 0x2d, 0x67, 0x31, 0xcc, 0xe0, 0x20, 0x29, 0x47, 0xdf, 0x3e, + 0x9c, 0xa4, 0x7f, 0xae, 0x10, 0x9a, 0x2a, 0xd1, 0xe0, 0xab, 0x1a, 0x75, 0x3b, 0x4d, 0xef, 0xf4, + 0x76, 0xf0, 0xc1, 0x52, 0x5b, 0xcc, 0xc2, 0x68, 0x79, 0x6d, 0x8d, 0x36, 0x3c, 0x3f, 0xa6, 0xb4, + 0x2b, 0xc2, 0xed, 0xf1, 0xad, 0x83, 0x40, 0x89, 0x18, 0xc1, 0x91, 0xdc, 0xf8, 0xb1, 0x62, 0xea, + 0x3f, 0x2e, 0x82, 0x12, 0x98, 0xee, 0xc1, 0x43, 0xad, 0x63, 0x5c, 0x26, 0x3f, 0x16, 0xbd, 0x62, + 0xc2, 0x78, 0x28, 0x8c, 0x5a, 0xa7, 0xd5, 0xd2, 0x71, 0xe8, 0xb1, 0xad, 0xc1, 0x44, 0x9c, 0x59, + 0x48, 0xc8, 0x77, 0x03, 0x97, 0xc5, 0x6e, 0x80, 0x84, 0x0f, 0xe1, 0xea, 0x2e, 0x67, 0xa1, 0x25, + 0xb9, 0x92, 0x6f, 0xe6, 0xe0, 0xbc, 0xdf, 0x29, 0x8b, 0xab, 0xcc, 0x2c, 0x9e, 0xb2, 0x3b, 0x96, + 0xe7, 0xef, 0x44, 0xde, 0xcc, 0xae, 0x8e, 0x77, 0xd2, 0xcd, 0xb4, 0xc2, 0xbc, 0x25, 0x41, 0x60, + 0x89, 0x40, 0x21, 0x6c, 0xa4, 0xa9, 0x37, 0x90, 0x48, 0x4b, 0xad, 0xf7, 0xf2, 0x5d, 0x78, 0x2a, + 0x93, 0xe5, 0x6e, 0x66, 0x68, 0xaf, 0x6c, 0x86, 0xfe, 0x77, 0xb9, 0x70, 0x22, 0x8a, 0x09, 0x89, + 0xdc, 0x04, 0x08, 0x41, 0x62, 0x63, 0x3a, 0xb2, 0xb3, 0x3d, 0x01, 0xa1, 0xd0, 0x34, 0x89, 0x82, + 0x2c, 0x42, 0x49, 0x88, 0x85, 0x67, 0xf7, 0xfd, 0xec, 0x2e, 0xbd, 0x70, 0x53, 0x96, 0x03, 0x6e, + 0x3a, 0xc5, 0x37, 0x0b, 0x36, 0x97, 0xdf, 0x80, 0xc1, 0x83, 0x7e, 0xd7, 0x37, 0x0b, 0x40, 0xe4, + 0x5d, 0xe4, 0x31, 0x9a, 0xd8, 0x27, 0x78, 0x0a, 0xbb, 0x0e, 0xfd, 0xec, 0x13, 0x30, 0xdf, 0x85, + 0x14, 0xdf, 0xb6, 0x23, 0x60, 0x5a, 0x80, 0x0d, 0x83, 0x4b, 0xf5, 0xa5, 0x07, 0x97, 0x52, 0x7f, + 0xa6, 0x00, 0x17, 0xe5, 0x0e, 0xa9, 0x50, 0x0c, 0x99, 0x7f, 0xd6, 0x29, 0x1f, 0x61, 0xa7, 0xa8, + 0x50, 0xe2, 0x9b, 0x07, 0x91, 0xbb, 0x80, 0x1f, 0xec, 0x20, 0x44, 0x13, 0x18, 0xf5, 0x7f, 0xce, + 0xc3, 0xf0, 0x92, 0xed, 0x7a, 0xeb, 0x0e, 0x75, 0x97, 0x74, 0xc7, 0x3d, 0xc5, 0xdd, 0xf1, 0x79, + 0x18, 0xc6, 0xf0, 0x40, 0x2d, 0x6a, 0xf1, 0x10, 0x3a, 0xbd, 0x52, 0xb2, 0x11, 0x1f, 0x21, 0xf2, + 0x4a, 0x45, 0x08, 0x99, 0xf6, 0x73, 0xcb, 0x4f, 0x0a, 0xda, 0xc4, 0xcd, 0x3e, 0x0e, 0x57, 0xff, + 0x42, 0x01, 0x86, 0x7c, 0x29, 0x4f, 0x9a, 0x27, 0xf5, 0xa6, 0xe6, 0x78, 0x85, 0x7c, 0x0b, 0x60, + 0xc9, 0x76, 0x3c, 0xbd, 0xb9, 0x10, 0x6a, 0x3e, 0x1e, 0x71, 0xb6, 0x11, 0xca, 0xcb, 0x48, 0x24, + 0xb8, 0x7e, 0x85, 0x66, 0x35, 0x9f, 0x98, 0xf8, 0xfa, 0x15, 0x40, 0x35, 0x89, 0x42, 0xfd, 0x9b, + 0x79, 0x18, 0xf5, 0x3b, 0x69, 0xfa, 0x09, 0x6d, 0x74, 0x4e, 0xf3, 0xdc, 0x14, 0x95, 0x76, 0xef, + 0xae, 0xd2, 0x56, 0xff, 0x4f, 0x69, 0x22, 0x99, 0x6a, 0xda, 0x67, 0x13, 0xc9, 0xbf, 0x0a, 0x1d, + 0x57, 0x7f, 0xbc, 0x00, 0xe7, 0x7d, 0xa9, 0xcf, 0x74, 0x2c, 0x3c, 0x1c, 0x98, 0xd2, 0x9b, 0xcd, + 0xd3, 0xbc, 0x1b, 0x1f, 0xf4, 0x05, 0xb1, 0x28, 0xe2, 0xed, 0x89, 0x1c, 0x7f, 0x6b, 0x02, 0x5c, + 0xb7, 0x4d, 0x43, 0x93, 0x89, 0xc8, 0xbb, 0x30, 0xe4, 0xff, 0x2c, 0x3b, 0xeb, 0xfe, 0x16, 0x1c, + 0x8f, 0xfa, 0x83, 0x42, 0xba, 0x13, 0x09, 0x2b, 0x10, 0x29, 0xa0, 0x7e, 0xad, 0x0f, 0x2e, 0x3f, + 0x34, 0x2d, 0xc3, 0xde, 0x74, 0xfd, 0x14, 0x91, 0x27, 0xfe, 0xa8, 0xeb, 0xb8, 0x53, 0x43, 0xbe, + 0x07, 0x17, 0xe2, 0x22, 0x75, 0x82, 0xc0, 0xdd, 0xa2, 0x77, 0x36, 0x39, 0x41, 0xdd, 0x4f, 0x16, + 0x29, 0xee, 0xcb, 0xb4, 0xf4, 0x92, 0xf1, 0x6c, 0x93, 0x7d, 0x7b, 0xc9, 0x36, 0xf9, 0x02, 0x94, + 0x2a, 0x76, 0x4b, 0x37, 0xfd, 0x00, 0x33, 0x38, 0x8a, 0x83, 0x7a, 0x11, 0xa3, 0x09, 0x0a, 0xc6, + 0x5f, 0x54, 0x8c, 0x5d, 0x36, 0x10, 0xf2, 0xf7, 0x0b, 0x30, 0x2b, 0x4d, 0x93, 0x89, 0x88, 0x0d, + 0xc3, 0xa2, 0x3a, 0x71, 0xbb, 0x05, 0xb8, 0x79, 0x7a, 0xd5, 0x97, 0x51, 0xb6, 0x5a, 0xdd, 0x8c, + 0x94, 0xe3, 0xdb, 0x28, 0x9e, 0x04, 0x53, 0x7c, 0x0c, 0xbf, 0xe7, 0xd2, 0xa2, 0xfc, 0x25, 0x21, + 0xe0, 0x24, 0x33, 0x98, 0x14, 0x02, 0xce, 0x32, 0x32, 0x11, 0x99, 0x86, 0x71, 0x0c, 0xaf, 0x1c, + 0x6c, 0xa5, 0x98, 0x4a, 0x0c, 0xa1, 0x51, 0x89, 0x97, 0x26, 0x3c, 0x22, 0x33, 0xfb, 0xb8, 0x7a, + 0x43, 0xa0, 0xb5, 0x64, 0x09, 0xf2, 0x14, 0x14, 0x16, 0xe6, 0xca, 0x78, 0xdb, 0xd2, 0xcf, 0x53, + 0x1b, 0x59, 0x4d, 0x5d, 0x63, 0xb0, 0xcb, 0x5f, 0x04, 0x92, 0xfc, 0x9c, 0x7d, 0xdd, 0xa8, 0xfc, + 0x57, 0xd2, 0x96, 0xef, 0xa4, 0xfb, 0xc4, 0x1c, 0xc5, 0x44, 0x18, 0xc9, 0x2a, 0xd6, 0xfb, 0x51, + 0x66, 0x15, 0x2b, 0x1d, 0x69, 0x56, 0x31, 0xf5, 0xd7, 0x72, 0x30, 0x9e, 0x08, 0x41, 0x4e, 0x5e, + 0x01, 0xe0, 0x10, 0x29, 0xd4, 0x23, 0xc6, 0x4e, 0x09, 0xc3, 0x92, 0x8b, 0xe5, 0x31, 0x24, 0x23, + 0xb7, 0xa0, 0x9f, 0xff, 0x12, 0xe1, 0x99, 0x92, 0x45, 0x3a, 0x1d, 0xd3, 0xd0, 0x02, 0xa2, 0xb0, + 0x16, 0xbc, 0x53, 0x2c, 0xa4, 0x16, 0xf1, 0xb6, 0xda, 0x41, 0x2d, 0x8c, 0x4c, 0xfd, 0x46, 0x1e, + 0x86, 0x82, 0x06, 0x97, 0x8d, 0xe3, 0xd2, 0xb9, 0x92, 0x88, 0xe6, 0x5e, 0xd8, 0x2d, 0x9a, 0x7b, + 0x6c, 0xbe, 0x15, 0xe1, 0xdb, 0x8f, 0xee, 0x49, 0xd4, 0xb7, 0xf2, 0x30, 0x1a, 0xd4, 0x7a, 0x8c, + 0xd7, 0x57, 0x1f, 0x23, 0x91, 0x7c, 0x33, 0x07, 0xca, 0xa4, 0xd9, 0x6c, 0x9a, 0xd6, 0x7a, 0xd5, + 0x5a, 0xb3, 0x9d, 0x16, 0x4e, 0x88, 0xc7, 0x77, 0x84, 0xab, 0xfe, 0x89, 0x1c, 0x8c, 0x8b, 0x06, + 0x4d, 0xe9, 0x8e, 0x71, 0x7c, 0xe7, 0x63, 0xf1, 0x96, 0x1c, 0x9f, 0xbe, 0xa8, 0xbf, 0x9b, 0x07, + 0x98, 0xb3, 0x1b, 0x8f, 0x4e, 0xf8, 0x8b, 0xaa, 0xb7, 0xa0, 0xc4, 0x63, 0x64, 0x09, 0x8d, 0x1d, + 0x17, 0x2f, 0x87, 0xd8, 0xa7, 0x71, 0xc4, 0xe4, 0x98, 0x98, 0x8f, 0x4b, 0x3c, 0xc6, 0x96, 0x92, + 0xd3, 0x44, 0x11, 0x56, 0x29, 0xa3, 0x13, 0x0b, 0x46, 0x50, 0x29, 0x83, 0x45, 0x2b, 0xdd, 0xd9, + 0x9e, 0x28, 0x36, 0xed, 0xc6, 0x23, 0x0d, 0xe9, 0xd5, 0x7f, 0x99, 0xe3, 0xb2, 0x3b, 0xe1, 0xef, + 0x42, 0xfd, 0xcf, 0x2f, 0xee, 0xf3, 0xf3, 0xff, 0x64, 0x0e, 0xce, 0x6b, 0xb4, 0x61, 0x3f, 0xa6, + 0xce, 0xd6, 0x94, 0x6d, 0xd0, 0xbb, 0xd4, 0xa2, 0xce, 0x71, 0x8d, 0xa8, 0xff, 0x14, 0xd3, 0x5f, + 0x84, 0x8d, 0x59, 0x71, 0xa9, 0x71, 0x72, 0x52, 0x93, 0xa8, 0xbf, 0xd9, 0x07, 0x4a, 0xaa, 0xd5, + 0x7b, 0x62, 0xcd, 0xb9, 0xcc, 0xad, 0x4c, 0xf1, 0xa8, 0xb6, 0x32, 0xbd, 0xfb, 0xdb, 0xca, 0x94, + 0xf6, 0xbb, 0x95, 0xe9, 0xdb, 0xcb, 0x56, 0xa6, 0x15, 0xdf, 0xca, 0xf4, 0xe3, 0x56, 0xe6, 0x95, + 0xae, 0x5b, 0x99, 0x69, 0xcb, 0x38, 0xe0, 0x46, 0xe6, 0xc4, 0xa6, 0xcd, 0x3d, 0xc8, 0x0e, 0xec, + 0x3a, 0x9b, 0x14, 0x1b, 0xb6, 0x63, 0x50, 0x43, 0x6c, 0xbc, 0xf0, 0xd4, 0xdf, 0x11, 0x30, 0x2d, + 0xc0, 0x26, 0x72, 0x10, 0x0f, 0xef, 0x25, 0x07, 0xf1, 0x11, 0xec, 0xbf, 0xbe, 0x9e, 0x87, 0xf1, + 0x29, 0xea, 0x78, 0x3c, 0x08, 0xe7, 0x51, 0x38, 0xb5, 0x95, 0x61, 0x54, 0x62, 0x88, 0x16, 0x79, + 0x3e, 0x74, 0xd4, 0x6b, 0x50, 0xc7, 0x8b, 0xfb, 0xf9, 0xc5, 0xe9, 0x59, 0xf5, 0x7e, 0x1e, 0x30, + 0x31, 0x76, 0x83, 0xea, 0x7d, 0x38, 0x17, 0xa4, 0x29, 0x7e, 0x69, 0x01, 0xbd, 0x94, 0xda, 0xab, + 0xb8, 0xff, 0xd4, 0x5e, 0xea, 0xaf, 0xe6, 0xe0, 0x9a, 0x46, 0x2d, 0xba, 0xa9, 0xaf, 0x36, 0xa9, + 0xd4, 0x2c, 0xb1, 0x32, 0xb0, 0x59, 0xc3, 0x74, 0x5b, 0xba, 0xd7, 0xd8, 0x38, 0x94, 0x8c, 0x66, + 0x60, 0x48, 0x9e, 0xbf, 0xf6, 0x31, 0xb7, 0x45, 0xca, 0xa9, 0xbf, 0x59, 0x84, 0xbe, 0x49, 0xdb, + 0xbb, 0x67, 0x1f, 0x32, 0xd7, 0x5c, 0x38, 0xe5, 0xe7, 0xf7, 0x71, 0xd6, 0xf3, 0x39, 0xac, 0x5c, + 0x0a, 0xbf, 0x8f, 0x4e, 0xa0, 0xab, 0x76, 0x22, 0x4d, 0x81, 0x4f, 0xb6, 0xcf, 0x2c, 0x73, 0xaf, + 0xc1, 0x00, 0xc6, 0x6f, 0x91, 0x4e, 0x63, 0xd1, 0xc5, 0xda, 0x63, 0xc0, 0x78, 0x1d, 0x21, 0x29, + 0xf9, 0xa1, 0x48, 0xd4, 0xd0, 0xd2, 0xe1, 0xb3, 0xd2, 0xc9, 0x01, 0x44, 0x5f, 0xe1, 0x17, 0x79, + 0xd8, 0x26, 0x29, 0x83, 0x07, 0x9e, 0xa2, 0xc4, 0x9a, 0x14, 0x10, 0x1e, 0x61, 0xc6, 0xb8, 0x29, + 0x18, 0x9e, 0xb4, 0x3d, 0xc9, 0x9d, 0x77, 0x20, 0x7c, 0xc8, 0xc9, 0x24, 0x9f, 0xee, 0xcb, 0x1b, + 0x2d, 0xa3, 0x7e, 0xbf, 0x08, 0x43, 0xfe, 0xcf, 0x63, 0xd2, 0x9d, 0x97, 0xa0, 0x34, 0x6b, 0x4b, + 0x49, 0x0c, 0xd0, 0x05, 0x78, 0xc3, 0x76, 0x63, 0xbe, 0xcd, 0x82, 0x88, 0x49, 0x7d, 0xc1, 0x36, + 0x64, 0x07, 0x76, 0x94, 0xba, 0x65, 0x1b, 0x89, 0x07, 0xc0, 0x01, 0x21, 0xb9, 0x06, 0x45, 0xf4, + 0xfd, 0x97, 0x0e, 0xf2, 0x63, 0xfe, 0xfe, 0x88, 0x97, 0xb4, 0xb2, 0xb4, 0x5f, 0xad, 0xec, 0x3b, + 0xa8, 0x56, 0xf6, 0x1f, 0xad, 0x56, 0xbe, 0x0f, 0x43, 0x58, 0x93, 0x9f, 0x03, 0x6d, 0xf7, 0x85, + 0xf5, 0x29, 0xb1, 0xf6, 0x0d, 0xf3, 0x76, 0x8b, 0x4c, 0x68, 0xb8, 0xe4, 0x45, 0x58, 0xc5, 0x74, + 0x17, 0x0e, 0xb1, 0x9d, 0xfe, 0x47, 0x39, 0xe8, 0x5b, 0xb1, 0x1e, 0x59, 0xf6, 0xe6, 0xe1, 0x34, + 0xee, 0x15, 0x18, 0x14, 0x6c, 0xa4, 0xd5, 0x05, 0xdf, 0x74, 0x77, 0x38, 0xb8, 0x8e, 0x9c, 0x34, + 0x99, 0x8a, 0xbc, 0x1d, 0x14, 0xc2, 0xe7, 0x3d, 0x85, 0x30, 0x0d, 0x88, 0x5f, 0xa8, 0x11, 0xcd, + 0x5c, 0x20, 0x93, 0x93, 0x2b, 0x50, 0xac, 0xb0, 0xa6, 0x4a, 0x71, 0x70, 0x59, 0x53, 0x34, 0x84, + 0xaa, 0x5f, 0x2f, 0xc2, 0x48, 0xec, 0xe0, 0xeb, 0x05, 0x18, 0x10, 0x07, 0x4f, 0xa6, 0x9f, 0x4a, + 0x01, 0x9f, 0xff, 0x04, 0x40, 0xad, 0x9f, 0xff, 0x59, 0x35, 0xc8, 0x17, 0xa0, 0xcf, 0x76, 0x71, + 0x51, 0xc4, 0x6f, 0x19, 0x09, 0x87, 0xd0, 0x62, 0x8d, 0xb5, 0x9d, 0x0f, 0x0e, 0x41, 0x22, 0x6b, + 0xa4, 0xed, 0xe2, 0xa7, 0xdd, 0x81, 0x01, 0xdd, 0x75, 0xa9, 0x57, 0xf7, 0xf4, 0x75, 0x39, 0xbb, + 0x42, 0x00, 0x94, 0x47, 0x07, 0x02, 0x97, 0xf5, 0x75, 0xf2, 0x45, 0x18, 0x6e, 0x38, 0x14, 0x97, + 0x4d, 0xbd, 0xc9, 0x5a, 0x29, 0x99, 0xb5, 0x11, 0x84, 0x7c, 0x7f, 0x12, 0x22, 0xaa, 0x06, 0x79, + 0x00, 0xc3, 0xe2, 0x73, 0xb8, 0xef, 0x3d, 0x0e, 0xb4, 0x91, 0x70, 0x19, 0xe3, 0x22, 0xe1, 0xde, + 0xf7, 0xe2, 0x09, 0x86, 0x4c, 0x2e, 0xf3, 0x35, 0x24, 0x52, 0xb2, 0x08, 0x64, 0x93, 0xae, 0xd6, + 0xf5, 0x8e, 0xb7, 0xc1, 0xea, 0xe2, 0xc1, 0xc1, 0x45, 0x52, 0x41, 0x7c, 0xb7, 0x90, 0xc4, 0xca, + 0xcf, 0x39, 0x36, 0xe9, 0x6a, 0x39, 0x82, 0x24, 0x0f, 0xe1, 0x42, 0xb2, 0x08, 0xfb, 0x64, 0x7e, + 0x39, 0xf0, 0xfc, 0xce, 0xf6, 0xc4, 0x44, 0x2a, 0x81, 0xc4, 0xf6, 0x5c, 0x82, 0x6d, 0xd5, 0xb8, + 0x57, 0xec, 0xef, 0x1b, 0xeb, 0xd7, 0x46, 0x58, 0x59, 0xdf, 0x84, 0x34, 0x0d, 0xf5, 0xf7, 0x73, + 0xcc, 0x54, 0x64, 0x1f, 0x84, 0x59, 0x95, 0x99, 0xae, 0xb7, 0xf6, 0xa9, 0xeb, 0xad, 0x30, 0xff, + 0x61, 0xc9, 0xed, 0x32, 0xbb, 0x6a, 0x02, 0x4b, 0x6e, 0x42, 0xc9, 0x90, 0x4f, 0xcd, 0x2e, 0x46, + 0x3b, 0xc1, 0xaf, 0x47, 0x13, 0x54, 0xe4, 0x3a, 0x14, 0xd9, 0x92, 0x15, 0xdf, 0x32, 0xcb, 0xd6, + 0x85, 0x86, 0x14, 0xea, 0x8f, 0xe5, 0x61, 0x48, 0xfa, 0x9a, 0xdb, 0x87, 0xfa, 0x9c, 0x37, 0xf7, + 0xd6, 0x4c, 0xdf, 0xe9, 0x05, 0xf7, 0x52, 0x7e, 0x93, 0xef, 0x04, 0xa2, 0xd8, 0xd3, 0x85, 0x94, + 0x10, 0xcc, 0x6b, 0xe2, 0x43, 0x4b, 0x7b, 0xdf, 0x3e, 0x32, 0xfa, 0x7b, 0xc5, 0xfe, 0xfc, 0x58, + 0xe1, 0x5e, 0xb1, 0xbf, 0x38, 0xd6, 0x8b, 0x91, 0xb4, 0x30, 0x78, 0x35, 0xdf, 0x9b, 0x5b, 0x6b, + 0xe6, 0xfa, 0x09, 0x7f, 0xfd, 0x71, 0xb4, 0x51, 0xc6, 0x62, 0xb2, 0x39, 0xe1, 0x4f, 0x41, 0x3e, + 0x52, 0xd9, 0x9c, 0xe5, 0x4b, 0x14, 0xb2, 0xf9, 0xc7, 0x39, 0x50, 0x52, 0x65, 0x53, 0x3e, 0x26, + 0x3f, 0x88, 0xa3, 0xcb, 0x9a, 0xf8, 0x87, 0x79, 0x18, 0xaf, 0x5a, 0x1e, 0x5d, 0xe7, 0x3b, 0xc6, + 0x13, 0x3e, 0x55, 0xdc, 0x87, 0x41, 0xe9, 0x63, 0x44, 0x9f, 0x3f, 0x1d, 0xec, 0xc7, 0x43, 0x54, + 0x06, 0x27, 0xb9, 0xf4, 0x11, 0x26, 0x5a, 0x8f, 0x09, 0xf9, 0x84, 0xcf, 0x39, 0x27, 0x43, 0xc8, + 0x27, 0x7c, 0xf2, 0xfa, 0x98, 0x0a, 0xf9, 0x7f, 0xcf, 0xc1, 0xb9, 0x94, 0xca, 0xc9, 0x35, 0xe8, + 0xab, 0x75, 0x56, 0x31, 0x70, 0x56, 0x2e, 0xf4, 0x18, 0x76, 0x3b, 0xab, 0x18, 0x33, 0x4b, 0xf3, + 0x91, 0x64, 0x19, 0x9f, 0xc7, 0x2f, 0x56, 0x2b, 0x53, 0x42, 0xaa, 0xaa, 0xf4, 0xd0, 0x9f, 0x81, + 0xd3, 0xbe, 0x2c, 0x78, 0x42, 0x6f, 0x9b, 0x46, 0x23, 0xf6, 0x84, 0x9e, 0x95, 0x21, 0x3f, 0x0c, + 0x03, 0xe5, 0x0f, 0x3b, 0x0e, 0x45, 0xbe, 0x5c, 0xe2, 0x9f, 0x0a, 0xf8, 0xfa, 0x88, 0x34, 0xce, + 0x3c, 0x1a, 0x00, 0xa3, 0x88, 0xf3, 0x0e, 0x19, 0xaa, 0xdf, 0xc8, 0xc1, 0xe5, 0xec, 0xd6, 0x91, + 0xcf, 0x41, 0x1f, 0xdb, 0x99, 0x97, 0xb5, 0x05, 0xf1, 0xe9, 0x3c, 0xc3, 0xa8, 0xdd, 0xa4, 0x75, + 0xdd, 0x91, 0x8d, 0x7d, 0x9f, 0x8c, 0xbc, 0x03, 0x83, 0x55, 0xd7, 0xed, 0x50, 0xa7, 0xf6, 0xca, + 0x8a, 0x56, 0x15, 0x7b, 0x42, 0xdc, 0x73, 0x98, 0x08, 0xae, 0xbb, 0xaf, 0xc4, 0x42, 0x63, 0xc9, + 0xf4, 0xea, 0x4f, 0xe6, 0xe0, 0x4a, 0xb7, 0xaf, 0x22, 0xaf, 0x40, 0xff, 0x32, 0xb5, 0x74, 0xcb, + 0xab, 0x56, 0x44, 0x93, 0x70, 0x8b, 0xe5, 0x21, 0x2c, 0xba, 0x53, 0x08, 0x08, 0x59, 0x21, 0x7e, + 0xae, 0x18, 0x38, 0x32, 0xf0, 0x33, 0x50, 0x84, 0xc5, 0x0a, 0xf9, 0x84, 0xea, 0x1f, 0xe4, 0x61, + 0x68, 0xa9, 0xd9, 0x59, 0x37, 0xa5, 0x85, 0xe3, 0xc0, 0xf6, 0xb6, 0x6f, 0xfd, 0xe6, 0xf7, 0x67, + 0xfd, 0xb2, 0xe1, 0xe6, 0x1c, 0x70, 0xb8, 0xf9, 0xe5, 0xc8, 0xdb, 0x50, 0x6a, 0xe3, 0x77, 0xc4, + 0x4f, 0x62, 0xf9, 0xd7, 0x65, 0x9d, 0xc4, 0xf2, 0x32, 0x6c, 0x7c, 0x35, 0x0e, 0x31, 0xbe, 0xc2, + 0xb2, 0x92, 0x40, 0xc3, 0x45, 0xe2, 0x4c, 0xa0, 0x47, 0x22, 0xd0, 0x70, 0x41, 0x38, 0x13, 0xe8, + 0x21, 0x04, 0xfa, 0x9b, 0x79, 0x18, 0x89, 0x56, 0x49, 0x3e, 0x07, 0x83, 0xbc, 0x1a, 0x7e, 0x2e, + 0x94, 0x93, 0x9c, 0x8a, 0x43, 0xb0, 0x06, 0xfc, 0x87, 0x38, 0xe0, 0x1a, 0xdd, 0xd0, 0xdd, 0x7a, + 0x78, 0x42, 0xc3, 0xef, 0x6f, 0xfb, 0xb9, 0x27, 0x54, 0x0c, 0xa5, 0x8d, 0x6c, 0xe8, 0xee, 0x54, + 0xf8, 0x9b, 0x4c, 0x03, 0x71, 0x68, 0xc7, 0xa5, 0x51, 0x06, 0x45, 0x64, 0x20, 0xd2, 0x3b, 0xc7, + 0xb1, 0xda, 0x38, 0x87, 0xc9, 0x6c, 0xbe, 0x12, 0x34, 0x1b, 0x95, 0xa1, 0x77, 0x0f, 0xb9, 0xa7, + 0x25, 0xfa, 0xf4, 0x63, 0x4e, 0x4e, 0x50, 0xd1, 0x3d, 0x9d, 0x6f, 0xca, 0xfd, 0x0e, 0x50, 0x7f, + 0xb6, 0x05, 0xbd, 0x8b, 0x16, 0x5d, 0x5c, 0x23, 0x2f, 0xc3, 0x00, 0x53, 0x98, 0x39, 0x9b, 0xf5, + 0x65, 0x4e, 0xf8, 0x4f, 0x48, 0x9a, 0x84, 0x88, 0xd9, 0x1e, 0x2d, 0xa4, 0x22, 0x77, 0x78, 0xfe, + 0x7a, 0x3e, 0xc7, 0x0a, 0xed, 0x23, 0x72, 0x19, 0x8e, 0x99, 0xed, 0xd1, 0x24, 0x3a, 0xbf, 0x94, + 0x78, 0xa0, 0x53, 0x48, 0x96, 0xe2, 0x18, 0xbf, 0x94, 0x18, 0x1f, 0x73, 0x69, 0xa9, 0xe1, 0xe3, + 0xbb, 0xa7, 0x24, 0xc5, 0x6c, 0x8f, 0x96, 0x9e, 0x52, 0x7e, 0x48, 0x76, 0x28, 0x8d, 0x3b, 0x7d, + 0xc8, 0xb8, 0xd9, 0x1e, 0x2d, 0x42, 0x4b, 0x5e, 0x87, 0x41, 0xf1, 0xfb, 0x9e, 0x2d, 0x6e, 0x94, + 0xa5, 0x68, 0x42, 0x12, 0x6a, 0xb6, 0x47, 0x93, 0x29, 0xa5, 0x4a, 0x97, 0x1c, 0xd3, 0xf2, 0xc4, + 0x1b, 0xe5, 0x78, 0xa5, 0x88, 0x93, 0x2a, 0xc5, 0xdf, 0xe4, 0x1d, 0x18, 0x0e, 0xc2, 0x34, 0x7d, + 0x40, 0x1b, 0x9e, 0x38, 0xfc, 0xbe, 0x10, 0x2b, 0xcc, 0x91, 0xb3, 0x3d, 0x5a, 0x94, 0x9a, 0x5c, + 0x87, 0x92, 0x46, 0x5d, 0xf3, 0x43, 0xff, 0xba, 0x78, 0x44, 0x1a, 0xe7, 0xe6, 0x87, 0x4c, 0x4a, + 0x02, 0xcf, 0x7a, 0x27, 0xbc, 0x9f, 0x16, 0x47, 0xd5, 0x24, 0x56, 0xcb, 0xb4, 0x65, 0xb0, 0xde, + 0x91, 0x9c, 0x13, 0xbe, 0x18, 0x06, 0xaf, 0x12, 0x29, 0x2f, 0x07, 0xe3, 0x51, 0x02, 0x64, 0xec, + 0x6c, 0x8f, 0x16, 0xa3, 0x97, 0xa4, 0x5a, 0x31, 0xdd, 0x47, 0x22, 0x5e, 0x68, 0x5c, 0xaa, 0x0c, + 0x25, 0x49, 0x95, 0xfd, 0x94, 0xaa, 0x5e, 0xa0, 0xde, 0xa6, 0xed, 0x3c, 0x12, 0xd1, 0x41, 0xe3, + 0x55, 0x0b, 0xac, 0x54, 0xb5, 0x80, 0xc8, 0x55, 0xb3, 0x01, 0x37, 0x92, 0x5e, 0xb5, 0xee, 0xe9, + 0x72, 0xd5, 0xfc, 0x24, 0xce, 0xef, 0xa4, 0x39, 0xaa, 0x3f, 0xe6, 0x99, 0xc7, 0x93, 0x1d, 0x8a, + 0x38, 0xa9, 0x43, 0xf1, 0x37, 0xab, 0x54, 0xca, 0x2e, 0x2d, 0x52, 0x8b, 0x07, 0x95, 0x4a, 0x28, + 0x56, 0xa9, 0x9c, 0x87, 0xfa, 0x8e, 0x9c, 0x74, 0x59, 0x19, 0x8f, 0x76, 0x50, 0x88, 0x61, 0x1d, + 0x24, 0x25, 0x67, 0x9e, 0xc0, 0x84, 0xae, 0x0a, 0x41, 0xf2, 0xc1, 0xa0, 0x85, 0x53, 0x4b, 0xb3, + 0x3d, 0x1a, 0xa6, 0x7a, 0x55, 0x79, 0xaa, 0x60, 0xe5, 0x1c, 0x52, 0x0c, 0xf9, 0x14, 0x0c, 0x36, + 0xdb, 0xa3, 0xf1, 0x34, 0xc2, 0x2f, 0x4b, 0x49, 0xf9, 0x94, 0xf3, 0xd1, 0x29, 0x22, 0x40, 0xb0, + 0x29, 0x22, 0x4c, 0xdd, 0x37, 0x93, 0x4c, 0x5c, 0xa7, 0x5c, 0x88, 0x2e, 0x35, 0x71, 0xfc, 0x6c, + 0x8f, 0x96, 0x4c, 0x76, 0xf7, 0x7a, 0x24, 0x97, 0x9b, 0x72, 0x31, 0x16, 0xc2, 0x2b, 0x44, 0x31, + 0x71, 0xc9, 0x59, 0xdf, 0x16, 0x63, 0x79, 0xc7, 0xc5, 0x64, 0x75, 0x29, 0xba, 0x71, 0x49, 0x21, + 0x99, 0xed, 0xd1, 0xd2, 0x4a, 0x92, 0xa9, 0x44, 0x46, 0x35, 0x45, 0x89, 0xfa, 0xc6, 0xc4, 0xd0, + 0xb3, 0x3d, 0x5a, 0x22, 0x07, 0xdb, 0x1d, 0x39, 0x95, 0x99, 0xf2, 0x54, 0xb4, 0x13, 0x43, 0x0c, + 0xeb, 0x44, 0x29, 0xe5, 0xd9, 0x1d, 0x39, 0xbd, 0x95, 0x72, 0x39, 0x59, 0x2a, 0x9c, 0x39, 0xa5, + 0x34, 0x58, 0x5a, 0x7a, 0xc6, 0x1e, 0xe5, 0x69, 0x91, 0x33, 0x55, 0x94, 0x4f, 0xa3, 0x99, 0xed, + 0xd1, 0xd2, 0xb3, 0xfd, 0x68, 0xe9, 0xa9, 0x6e, 0x94, 0x2b, 0xdd, 0x78, 0x06, 0xad, 0x4b, 0x4f, + 0x93, 0xa3, 0x77, 0x49, 0x3c, 0xa2, 0x3c, 0x13, 0x8d, 0x1f, 0x9c, 0x49, 0x38, 0xdb, 0xa3, 0x75, + 0x49, 0x5f, 0xb2, 0x92, 0x91, 0x05, 0x44, 0xb9, 0x1a, 0x4d, 0x99, 0x9c, 0x4a, 0x34, 0xdb, 0xa3, + 0x65, 0xe4, 0x10, 0x59, 0xc9, 0x48, 0x12, 0xa1, 0x4c, 0x74, 0x65, 0x1b, 0xc8, 0x23, 0x23, 0xc5, + 0xc4, 0x62, 0x6a, 0x7e, 0x05, 0xe5, 0xd9, 0xa8, 0xea, 0xa6, 0x90, 0x30, 0xd5, 0x4d, 0xcb, 0xcc, + 0xb0, 0x98, 0x9a, 0x10, 0x40, 0x79, 0xae, 0x0b, 0xc3, 0xa0, 0x8d, 0xa9, 0xa9, 0x04, 0x16, 0x53, + 0x23, 0xf2, 0x2b, 0x6a, 0x94, 0x61, 0x0a, 0x09, 0x63, 0x98, 0x16, 0xcb, 0x7f, 0x31, 0x35, 0x70, + 0xbb, 0xf2, 0x7c, 0x17, 0x86, 0x61, 0x0b, 0xd3, 0x42, 0xbe, 0xbf, 0x1e, 0x89, 0x9c, 0xae, 0x7c, + 0x2a, 0x3a, 0x6f, 0x48, 0x28, 0x36, 0x6f, 0xc8, 0x31, 0xd6, 0xa7, 0x12, 0xb1, 0x61, 0x95, 0x4f, + 0x47, 0x87, 0x79, 0x0c, 0xcd, 0x86, 0x79, 0x3c, 0x9a, 0xec, 0x54, 0x22, 0x46, 0xa6, 0x72, 0x2d, + 0x8b, 0x09, 0xa2, 0xa3, 0x4c, 0x78, 0x54, 0xcd, 0x6a, 0x4a, 0x90, 0x46, 0xe5, 0x33, 0x51, 0xbf, + 0xee, 0x04, 0xc1, 0x6c, 0x8f, 0x96, 0x12, 0xda, 0x51, 0x4b, 0x8f, 0x48, 0xa4, 0x5c, 0x8f, 0x0e, + 0xdb, 0x34, 0x1a, 0x36, 0x6c, 0x53, 0xa3, 0x19, 0xcd, 0xa5, 0x3d, 0x3e, 0x51, 0x6e, 0x44, 0x0d, + 0xb3, 0x24, 0x05, 0x33, 0xcc, 0x52, 0x1e, 0xad, 0x68, 0xe9, 0x31, 0x76, 0x94, 0x17, 0xba, 0xb6, + 0x10, 0x69, 0x52, 0x5a, 0xc8, 0x43, 0xce, 0x84, 0xb6, 0xd3, 0x4a, 0xbb, 0x69, 0xeb, 0x86, 0xf2, + 0xd9, 0x54, 0xdb, 0x89, 0x23, 0x25, 0xdb, 0x89, 0x03, 0xd8, 0x2a, 0x2f, 0xbf, 0x71, 0x50, 0x5e, + 0x8c, 0xae, 0xf2, 0x32, 0x8e, 0xad, 0xf2, 0x91, 0xf7, 0x10, 0x53, 0x89, 0xf7, 0x00, 0xca, 0x4b, + 0x51, 0x05, 0x88, 0xa1, 0x99, 0x02, 0xc4, 0x5f, 0x10, 0x7c, 0x35, 0xdb, 0x83, 0x5e, 0xb9, 0x89, + 0xdc, 0x9e, 0xf5, 0xb9, 0x65, 0xd1, 0xcd, 0xf6, 0x68, 0xd9, 0x5e, 0xf8, 0xd5, 0x14, 0x87, 0x78, + 0xe5, 0x56, 0x54, 0xc1, 0x12, 0x04, 0x4c, 0xc1, 0x92, 0x6e, 0xf4, 0xd5, 0x14, 0x8f, 0x76, 0xe5, + 0x73, 0x99, 0xac, 0x82, 0x6f, 0x4e, 0xf1, 0x83, 0xbf, 0x23, 0xbb, 0xa4, 0x2b, 0x2f, 0x47, 0x17, + 0xbb, 0x10, 0xc3, 0x16, 0x3b, 0xc9, 0x75, 0xfd, 0x8e, 0xec, 0x8c, 0xad, 0xdc, 0x4e, 0x96, 0x0a, + 0x97, 0x48, 0xc9, 0x69, 0x5b, 0x4b, 0xf7, 0x61, 0x56, 0x5e, 0x89, 0x6a, 0x5d, 0x1a, 0x0d, 0xd3, + 0xba, 0x54, 0xff, 0xe7, 0x99, 0xa4, 0x2b, 0xb2, 0x72, 0x27, 0xbe, 0xc9, 0x8e, 0xe2, 0x99, 0xe5, + 0x93, 0x70, 0x5f, 0xfe, 0x62, 0x3c, 0x5c, 0x9e, 0xf2, 0x6a, 0xec, 0xda, 0x37, 0x82, 0x65, 0xf6, + 0x6d, 0x2c, 0xbc, 0xde, 0x17, 0xe3, 0x11, 0xe6, 0x94, 0xd7, 0xd2, 0x39, 0x04, 0xba, 0x12, 0x8f, + 0x48, 0xf7, 0xc5, 0x78, 0x50, 0x36, 0xe5, 0xf5, 0x74, 0x0e, 0x81, 0x74, 0xe3, 0x41, 0xdc, 0x5e, + 0x96, 0xc2, 0xc4, 0x2b, 0x9f, 0x8f, 0x9a, 0x8e, 0x01, 0x82, 0x99, 0x8e, 0x61, 0x30, 0xf9, 0x97, + 0xa5, 0xf0, 0xea, 0xca, 0x1b, 0x89, 0x22, 0x41, 0x63, 0xa5, 0x20, 0xec, 0x2f, 0x4b, 0x61, 0xc9, + 0x95, 0x37, 0x13, 0x45, 0x82, 0xd6, 0x49, 0xc1, 0xcb, 0x8d, 0x6e, 0xef, 0x57, 0x95, 0xb7, 0xa2, + 0x87, 0xc1, 0xd9, 0x94, 0xb3, 0x3d, 0x5a, 0xb7, 0x77, 0xb0, 0x5f, 0xcd, 0x76, 0xec, 0x56, 0xde, + 0x8e, 0x0e, 0xe1, 0x2c, 0x3a, 0x36, 0x84, 0x33, 0x9d, 0xc3, 0xdf, 0x89, 0xc5, 0xb2, 0x50, 0xde, + 0x89, 0x4e, 0x71, 0x11, 0x24, 0x9b, 0xe2, 0xe2, 0x91, 0x2f, 0x22, 0x41, 0x1a, 0x94, 0x2f, 0x44, + 0xa7, 0x38, 0x19, 0xc7, 0xa6, 0xb8, 0x48, 0x40, 0x87, 0xa9, 0x44, 0xec, 0x00, 0xe5, 0xdd, 0xe8, + 0x14, 0x17, 0x43, 0xb3, 0x29, 0x2e, 0x1e, 0x6d, 0xe0, 0x9d, 0xd8, 0x13, 0x7a, 0xe5, 0x8b, 0xe9, + 0xed, 0x47, 0xa4, 0xdc, 0x7e, 0xfe, 0xe0, 0x5e, 0x4b, 0x7f, 0x0b, 0xae, 0x94, 0xa3, 0xe3, 0x37, + 0x8d, 0x86, 0x8d, 0xdf, 0xd4, 0x77, 0xe4, 0xf1, 0x8d, 0x83, 0xd0, 0xaa, 0xc9, 0x2e, 0x1b, 0x87, + 0xd0, 0x14, 0x49, 0x01, 0x47, 0xf6, 0xc8, 0x7c, 0x23, 0x34, 0x95, 0xb1, 0x47, 0xf6, 0xb7, 0x41, + 0x31, 0x7a, 0x36, 0xbb, 0x26, 0xfc, 0x8c, 0x95, 0x4a, 0x74, 0x76, 0x4d, 0x10, 0xb0, 0xd9, 0x35, + 0xe9, 0x9d, 0x3c, 0x03, 0x63, 0x42, 0x8b, 0xb8, 0xfb, 0xb4, 0x69, 0xad, 0x2b, 0xd3, 0xb1, 0xf7, + 0x96, 0x31, 0x3c, 0x9b, 0x9d, 0xe2, 0x30, 0x5c, 0xaf, 0x39, 0x6c, 0xaa, 0x69, 0xb6, 0x57, 0x6d, + 0xdd, 0x31, 0x6a, 0xd4, 0x32, 0x94, 0x99, 0xd8, 0x7a, 0x9d, 0x42, 0x83, 0xeb, 0x75, 0x0a, 0x1c, + 0x43, 0xc4, 0xc5, 0xe0, 0x1a, 0x6d, 0x50, 0xf3, 0x31, 0x55, 0xee, 0x22, 0xdb, 0x89, 0x2c, 0xb6, + 0x82, 0x6c, 0xb6, 0x47, 0xcb, 0xe2, 0xc0, 0x6c, 0xf5, 0xf9, 0xad, 0xda, 0x7b, 0x73, 0x41, 0xf8, + 0x81, 0x25, 0x87, 0xb6, 0x75, 0x87, 0x2a, 0xb3, 0x51, 0x5b, 0x3d, 0x95, 0x88, 0xd9, 0xea, 0xa9, + 0x88, 0x24, 0x5b, 0x7f, 0x2c, 0x54, 0xbb, 0xb1, 0x0d, 0x47, 0x44, 0x7a, 0x69, 0x36, 0x3b, 0x45, + 0x11, 0x4c, 0x40, 0x73, 0xb6, 0xb5, 0x8e, 0x27, 0x15, 0xf7, 0xa2, 0xb3, 0x53, 0x36, 0x25, 0x9b, + 0x9d, 0xb2, 0xb1, 0x4c, 0xd5, 0xa3, 0x58, 0x3e, 0x06, 0xef, 0x47, 0x55, 0x3d, 0x85, 0x84, 0xa9, + 0x7a, 0x0a, 0x38, 0xc9, 0x50, 0xa3, 0x2e, 0xf5, 0x94, 0xb9, 0x6e, 0x0c, 0x91, 0x24, 0xc9, 0x10, + 0xc1, 0x49, 0x86, 0x33, 0xd4, 0x6b, 0x6c, 0x28, 0xf3, 0xdd, 0x18, 0x22, 0x49, 0x92, 0x21, 0x82, + 0xd9, 0x66, 0x33, 0x0a, 0x9e, 0xec, 0x34, 0x1f, 0xf9, 0x7d, 0xb6, 0x10, 0xdd, 0x6c, 0x66, 0x12, + 0xb2, 0xcd, 0x66, 0x26, 0x92, 0xfc, 0xe4, 0x9e, 0xfd, 0xe0, 0x95, 0x45, 0xac, 0xf0, 0x66, 0x68, + 0x17, 0xec, 0xa5, 0xd4, 0x6c, 0x8f, 0xb6, 0x57, 0x3f, 0xfb, 0xcf, 0x06, 0x4e, 0xa3, 0xca, 0x12, + 0x56, 0x35, 0x1a, 0x9c, 0x55, 0x70, 0xf0, 0x6c, 0x8f, 0x16, 0xb8, 0x95, 0xbe, 0x0e, 0x83, 0xf8, + 0x51, 0x55, 0xcb, 0xf4, 0x2a, 0x93, 0xca, 0x7b, 0xd1, 0x2d, 0x93, 0x84, 0x62, 0x5b, 0x26, 0xe9, + 0x27, 0x9b, 0xc4, 0xf1, 0x27, 0x9f, 0x62, 0x2a, 0x93, 0x8a, 0x16, 0x9d, 0xc4, 0x23, 0x48, 0x36, + 0x89, 0x47, 0x00, 0x41, 0xbd, 0x15, 0xc7, 0x6e, 0x57, 0x26, 0x95, 0x5a, 0x4a, 0xbd, 0x1c, 0x15, + 0xd4, 0xcb, 0x7f, 0x06, 0xf5, 0xd6, 0x36, 0x3a, 0x5e, 0x85, 0x7d, 0xe3, 0x72, 0x4a, 0xbd, 0x3e, + 0x32, 0xa8, 0xd7, 0x07, 0xb0, 0xa9, 0x10, 0x01, 0x4b, 0x8e, 0xcd, 0x26, 0xed, 0xfb, 0x66, 0xb3, + 0xa9, 0xac, 0x44, 0xa7, 0xc2, 0x38, 0x9e, 0x4d, 0x85, 0x71, 0x18, 0x33, 0x3d, 0x79, 0xab, 0xe8, + 0x6a, 0x67, 0x5d, 0x79, 0x10, 0x35, 0x3d, 0x43, 0x0c, 0x33, 0x3d, 0xc3, 0x5f, 0xb8, 0xbb, 0x60, + 0xbf, 0x34, 0xba, 0xe6, 0x50, 0x77, 0x43, 0x79, 0x18, 0xdb, 0x5d, 0x48, 0x38, 0xdc, 0x5d, 0x48, + 0xbf, 0xc9, 0x3a, 0x3c, 0x1d, 0x59, 0x68, 0xfc, 0x4b, 0x9b, 0x1a, 0xd5, 0x9d, 0xc6, 0x86, 0xf2, + 0x25, 0x64, 0xf5, 0x7c, 0xea, 0x52, 0x15, 0x25, 0x9d, 0xed, 0xd1, 0xba, 0x71, 0xc2, 0x6d, 0xf9, + 0x7b, 0x73, 0x3c, 0x96, 0xab, 0xb6, 0x34, 0xe5, 0x6f, 0x42, 0xdf, 0x8f, 0x6d, 0xcb, 0x93, 0x24, + 0xb8, 0x2d, 0x4f, 0x82, 0x49, 0x1b, 0xae, 0xc6, 0xb6, 0x6a, 0xf3, 0x7a, 0x93, 0xed, 0x4b, 0xa8, + 0xb1, 0xa4, 0x37, 0x1e, 0x51, 0x4f, 0xf9, 0x32, 0xf2, 0xbe, 0x96, 0xb1, 0xe1, 0x8b, 0x51, 0xcf, + 0xf6, 0x68, 0xbb, 0xf0, 0x23, 0x2a, 0x14, 0x6b, 0x33, 0xcb, 0x4b, 0xca, 0x0f, 0x45, 0xcf, 0x37, + 0x19, 0x6c, 0xb6, 0x47, 0x43, 0x1c, 0xb3, 0xd2, 0x56, 0xda, 0xeb, 0x8e, 0x6e, 0x50, 0x6e, 0x68, + 0xa1, 0xed, 0x26, 0x0c, 0xd0, 0x1f, 0x8e, 0x5a, 0x69, 0x59, 0x74, 0xcc, 0x4a, 0xcb, 0xc2, 0x31, + 0x45, 0x8d, 0xa4, 0x2d, 0x51, 0xbe, 0x12, 0x55, 0xd4, 0x08, 0x92, 0x29, 0x6a, 0x34, 0xc9, 0xc9, + 0x97, 0xe0, 0x62, 0xb0, 0x9f, 0x17, 0xeb, 0x2f, 0xef, 0x34, 0xe5, 0xab, 0xc8, 0xe7, 0x6a, 0xe2, + 0x32, 0x20, 0x42, 0x35, 0xdb, 0xa3, 0x65, 0x94, 0x67, 0x2b, 0x6e, 0x22, 0x23, 0x97, 0x30, 0x2f, + 0x7e, 0x24, 0xba, 0xe2, 0x66, 0x90, 0xb1, 0x15, 0x37, 0x03, 0x95, 0xca, 0x5c, 0x08, 0x55, 0xdf, + 0x85, 0x79, 0x20, 0xd3, 0x2c, 0x0e, 0xa9, 0xcc, 0x85, 0xa5, 0xb6, 0xba, 0x0b, 0xf3, 0xc0, 0x5a, + 0xcb, 0xe2, 0x40, 0xae, 0x43, 0xa9, 0x56, 0x9b, 0xd7, 0x3a, 0x96, 0xd2, 0x88, 0x79, 0xcb, 0x22, + 0x74, 0xb6, 0x47, 0x13, 0x78, 0x66, 0x06, 0x4d, 0x37, 0x75, 0xd7, 0x33, 0x1b, 0x2e, 0x8e, 0x18, + 0x7f, 0x84, 0x18, 0x51, 0x33, 0x28, 0x8d, 0x86, 0x99, 0x41, 0x69, 0x70, 0x66, 0x2f, 0x4e, 0xe9, + 0xae, 0xab, 0x5b, 0x86, 0xa3, 0x4f, 0xe2, 0x32, 0x41, 0x63, 0xaf, 0xb1, 0x22, 0x58, 0x66, 0x2f, + 0x46, 0x21, 0x78, 0xf8, 0xee, 0x43, 0x7c, 0x33, 0x67, 0x2d, 0x76, 0xf8, 0x1e, 0xc3, 0xe3, 0xe1, + 0x7b, 0x0c, 0x86, 0x76, 0xa7, 0x0f, 0xd3, 0xe8, 0xba, 0xc9, 0x44, 0xa4, 0xac, 0xc7, 0xec, 0xce, + 0x38, 0x01, 0xda, 0x9d, 0x71, 0x60, 0xa4, 0x49, 0xfe, 0x72, 0xbb, 0x91, 0xd1, 0xa4, 0x70, 0x95, + 0x4d, 0x94, 0x61, 0xeb, 0x77, 0x38, 0x38, 0x2a, 0x5b, 0x96, 0xde, 0xb2, 0x2b, 0x93, 0xbe, 0xd4, + 0xcd, 0xe8, 0xfa, 0x9d, 0x49, 0xc8, 0xd6, 0xef, 0x4c, 0x24, 0x9b, 0x5d, 0xfd, 0x8d, 0xd6, 0x86, + 0xee, 0x50, 0xa3, 0x62, 0x3a, 0x78, 0xb2, 0xb8, 0xc5, 0xb7, 0x86, 0x1f, 0x44, 0x67, 0xd7, 0x2e, + 0xa4, 0x6c, 0x76, 0xed, 0x82, 0x66, 0x46, 0x5e, 0x3a, 0x5a, 0xa3, 0xba, 0xa1, 0x3c, 0x8a, 0x1a, + 0x79, 0xd9, 0x94, 0xcc, 0xc8, 0xcb, 0xc6, 0x66, 0x7f, 0xce, 0x43, 0xc7, 0xf4, 0xa8, 0xd2, 0xdc, + 0xcb, 0xe7, 0x20, 0x69, 0xf6, 0xe7, 0x20, 0x9a, 0x6d, 0x08, 0xe3, 0x1d, 0xd2, 0x8a, 0x6e, 0x08, + 0x93, 0xdd, 0x10, 0x2f, 0xc1, 0x2c, 0x16, 0xf1, 0x28, 0x4f, 0xb1, 0xa2, 0x16, 0x8b, 0x00, 0x33, + 0x8b, 0x25, 0x7c, 0xb6, 0x17, 0x79, 0x8a, 0xa5, 0xd8, 0xd1, 0x35, 0x54, 0xc6, 0xb1, 0x35, 0x34, + 0xf2, 0x6c, 0xeb, 0xf5, 0xc8, 0x3b, 0x03, 0xa5, 0x1d, 0xb5, 0x3a, 0x24, 0x14, 0xb3, 0x3a, 0xe4, + 0x17, 0x09, 0x53, 0x30, 0x8a, 0xb7, 0xe0, 0x5a, 0x27, 0xb8, 0xc7, 0xf9, 0xd1, 0xe8, 0x67, 0xc6, + 0xd0, 0xec, 0x33, 0x63, 0xa0, 0x08, 0x13, 0x31, 0x6d, 0x39, 0x19, 0x4c, 0xc2, 0xf3, 0xc1, 0x18, + 0x88, 0xcc, 0x01, 0xa9, 0x95, 0xe7, 0xe7, 0xaa, 0xc6, 0x92, 0x7c, 0x45, 0xe6, 0x46, 0x4f, 0x60, + 0x93, 0x14, 0xb3, 0x3d, 0x5a, 0x4a, 0x39, 0xf2, 0x01, 0x5c, 0x11, 0x50, 0xf1, 0xe2, 0x1a, 0x13, + 0xf7, 0x1b, 0xc1, 0x82, 0xe0, 0x45, 0xfd, 0xd8, 0xba, 0xd1, 0xce, 0xf6, 0x68, 0x5d, 0x79, 0x65, + 0xd7, 0x25, 0xd6, 0x87, 0xce, 0x5e, 0xea, 0x0a, 0x16, 0x89, 0xae, 0xbc, 0xb2, 0xeb, 0x12, 0x72, + 0x7f, 0xbc, 0x97, 0xba, 0x82, 0x4e, 0xe8, 0xca, 0x8b, 0xb8, 0x30, 0xd1, 0x0d, 0x5f, 0x6e, 0x36, + 0x95, 0x4d, 0xac, 0xee, 0x33, 0x7b, 0xa9, 0xae, 0x8c, 0x06, 0xe7, 0x6e, 0x1c, 0xd9, 0x2c, 0xbd, + 0xd8, 0xa6, 0x56, 0x2d, 0xb2, 0x00, 0x3d, 0x89, 0xce, 0xd2, 0x09, 0x02, 0x36, 0x4b, 0x27, 0x80, + 0x6c, 0x40, 0xc9, 0xcf, 0x55, 0x94, 0xad, 0xe8, 0x80, 0x92, 0x71, 0x6c, 0x40, 0x45, 0x9e, 0xb6, + 0x2c, 0xc2, 0xb9, 0xc5, 0x47, 0x9e, 0xee, 0x5b, 0x90, 0xae, 0xe8, 0xca, 0x0f, 0x63, 0x97, 0x4c, + 0x49, 0x12, 0xbc, 0x64, 0x4a, 0x82, 0xd9, 0x18, 0x61, 0xe0, 0xda, 0x96, 0xd5, 0x98, 0xd1, 0xcd, + 0x66, 0xc7, 0xa1, 0xca, 0xbf, 0x16, 0x1d, 0x23, 0x31, 0x34, 0x1b, 0x23, 0x31, 0x10, 0x5b, 0xa0, + 0x19, 0xa8, 0xec, 0xba, 0xe6, 0xba, 0x25, 0xf6, 0x95, 0x9d, 0xa6, 0xa7, 0xfc, 0xeb, 0xd1, 0x05, + 0x3a, 0x8d, 0x86, 0x2d, 0xd0, 0x69, 0x70, 0x3c, 0x75, 0x62, 0xbd, 0xc0, 0x16, 0x0f, 0xf9, 0xae, + 0xf2, 0xdf, 0x88, 0x9d, 0x3a, 0xa5, 0xd0, 0xe0, 0xa9, 0x53, 0x0a, 0x9c, 0xad, 0x8f, 0xdc, 0x26, + 0x9b, 0x33, 0x83, 0xbb, 0xea, 0x7f, 0x33, 0xba, 0x3e, 0xc6, 0xf1, 0x6c, 0x7d, 0x8c, 0xc3, 0xa2, + 0x7c, 0x44, 0x17, 0xfc, 0x5b, 0x59, 0x7c, 0x02, 0xf9, 0x27, 0xca, 0x90, 0xbb, 0x32, 0x1f, 0x31, + 0x52, 0x7e, 0x2c, 0x97, 0xc5, 0x28, 0x18, 0x1e, 0x89, 0x42, 0x51, 0x46, 0x1a, 0x7d, 0x6c, 0xd2, + 0x4d, 0xe5, 0x6b, 0x99, 0x8c, 0x38, 0x41, 0x94, 0x11, 0x87, 0x91, 0xf7, 0xe1, 0x62, 0x08, 0x9b, + 0xa7, 0xad, 0xd5, 0x60, 0x66, 0xfa, 0x63, 0xb9, 0xa8, 0x19, 0x9c, 0x4e, 0xc6, 0xcc, 0xe0, 0x74, + 0x4c, 0x1a, 0x6b, 0x21, 0xba, 0x7f, 0x7b, 0x17, 0xd6, 0x81, 0x04, 0x33, 0x18, 0xa4, 0xb1, 0x16, + 0xd2, 0xfc, 0xf1, 0x5d, 0x58, 0x07, 0x32, 0xcd, 0x60, 0x40, 0x7e, 0x2a, 0x07, 0xd7, 0xd2, 0x51, + 0xe5, 0x66, 0x73, 0xc6, 0x76, 0x42, 0x9c, 0xf2, 0xc7, 0x73, 0xd1, 0x83, 0x86, 0xbd, 0x15, 0x9b, + 0xed, 0xd1, 0xf6, 0x58, 0x01, 0xf9, 0x02, 0x0c, 0x97, 0x3b, 0x86, 0xe9, 0xe1, 0xc5, 0x1b, 0x33, + 0x9c, 0x7f, 0x22, 0x17, 0xdb, 0xe2, 0xc8, 0x58, 0xdc, 0xe2, 0xc8, 0x00, 0x72, 0x0f, 0xc6, 0x6b, + 0xb4, 0xd1, 0x71, 0x4c, 0x6f, 0x4b, 0xa3, 0x6d, 0xdb, 0xf1, 0x18, 0x8f, 0x3f, 0x91, 0x8b, 0x4e, + 0x62, 0x09, 0x0a, 0x36, 0x89, 0x25, 0x80, 0xe4, 0x41, 0xe2, 0x56, 0x5e, 0x74, 0xe6, 0x4f, 0xe6, + 0xba, 0x5e, 0xcb, 0x07, 0x7d, 0x99, 0x5e, 0x9c, 0x2c, 0xc5, 0x6e, 0xd1, 0x05, 0xd7, 0x9f, 0xca, + 0x75, 0xb9, 0x46, 0x97, 0x66, 0xb8, 0x24, 0x98, 0x71, 0x4c, 0xc9, 0xe1, 0xae, 0xfc, 0xc9, 0x5c, + 0x97, 0x6b, 0xef, 0x90, 0x63, 0x5a, 0xfa, 0xf7, 0x57, 0xb9, 0xa7, 0x88, 0x60, 0xf4, 0xa7, 0x72, + 0x49, 0x57, 0x91, 0xa0, 0xbc, 0x44, 0xc8, 0x8a, 0xad, 0xb8, 0x81, 0xd2, 0x7f, 0x3d, 0x97, 0xf4, + 0xcd, 0x0b, 0x8b, 0x85, 0xbf, 0x08, 0x85, 0xcb, 0xd3, 0x4f, 0x3c, 0xea, 0x58, 0x7a, 0x13, 0xbb, + 0xb3, 0xe6, 0xd9, 0x8e, 0xbe, 0x4e, 0xa7, 0x2d, 0x7d, 0xb5, 0x49, 0x95, 0x6f, 0xe4, 0xa2, 0x16, + 0x6c, 0x36, 0x29, 0xb3, 0x60, 0xb3, 0xb1, 0x64, 0x03, 0x9e, 0x4e, 0xc3, 0x56, 0x4c, 0x17, 0xeb, + 0xf9, 0x66, 0x2e, 0x6a, 0xc2, 0x76, 0xa1, 0x65, 0x26, 0x6c, 0x17, 0x34, 0xb9, 0x0d, 0x03, 0x93, + 0xb6, 0x3f, 0xfd, 0xfe, 0xe9, 0x98, 0x33, 0x64, 0x80, 0x99, 0xed, 0xd1, 0x42, 0x32, 0x51, 0x46, + 0x0c, 0xea, 0x6f, 0x25, 0xcb, 0x84, 0x97, 0x4f, 0xc1, 0x0f, 0x51, 0x46, 0x88, 0xfb, 0xdf, 0x49, + 0x96, 0x09, 0xef, 0xb8, 0x82, 0x1f, 0x6c, 0x26, 0xe1, 0x35, 0xce, 0xcf, 0x94, 0x99, 0xdd, 0x36, + 0xb5, 0xa1, 0x37, 0x9b, 0xd4, 0x5a, 0xa7, 0xca, 0xb7, 0x63, 0x33, 0x49, 0x3a, 0x19, 0x9b, 0x49, + 0xd2, 0x31, 0xe4, 0x87, 0xe1, 0xd2, 0x03, 0xbd, 0x69, 0x1a, 0x21, 0xce, 0xcf, 0xe8, 0xad, 0xfc, + 0x74, 0x2e, 0xba, 0x9b, 0xce, 0xa0, 0x63, 0xbb, 0xe9, 0x0c, 0x14, 0x99, 0x07, 0x82, 0xcb, 0x68, + 0x30, 0x5b, 0xb0, 0xf5, 0x59, 0xf9, 0x77, 0x73, 0x51, 0x3b, 0x35, 0x49, 0xc2, 0xec, 0xd4, 0x24, + 0x94, 0xd4, 0xb3, 0x53, 0x83, 0x28, 0x3f, 0x93, 0x8b, 0x9e, 0xd6, 0x64, 0x11, 0xce, 0xf6, 0x68, + 0xd9, 0xf9, 0x45, 0xee, 0xc2, 0x58, 0x6d, 0xa9, 0x3a, 0x33, 0x33, 0x5d, 0x7b, 0x50, 0xad, 0xe0, + 0x43, 0x07, 0x43, 0xf9, 0xd9, 0xd8, 0x8a, 0x15, 0x27, 0x60, 0x2b, 0x56, 0x1c, 0x46, 0xde, 0x82, + 0x21, 0xd6, 0x7e, 0x36, 0x60, 0xf0, 0x93, 0x7f, 0x2e, 0x17, 0x35, 0xa7, 0x64, 0x24, 0x33, 0xa7, + 0xe4, 0xdf, 0xa4, 0x06, 0xe7, 0x99, 0x14, 0x97, 0x1c, 0xba, 0x46, 0x1d, 0x6a, 0x35, 0xfc, 0x31, + 0xfd, 0xf3, 0xb9, 0xa8, 0x95, 0x91, 0x46, 0xc4, 0xac, 0x8c, 0x34, 0x38, 0x79, 0x04, 0x57, 0xe2, + 0x27, 0x41, 0xf2, 0xb3, 0x53, 0xe5, 0xcf, 0xe4, 0x62, 0xc6, 0x70, 0x17, 0x62, 0x34, 0x86, 0xbb, + 0xe0, 0x89, 0x05, 0xcf, 0x88, 0x63, 0x15, 0xe1, 0x70, 0x19, 0xaf, 0xed, 0xcf, 0xf2, 0xda, 0x3e, + 0x1d, 0x3a, 0x04, 0x76, 0xa1, 0x9e, 0xed, 0xd1, 0xba, 0xb3, 0x63, 0x7a, 0x96, 0x4c, 0x80, 0xa1, + 0xfc, 0x42, 0x2e, 0xdd, 0x23, 0x25, 0xe2, 0xa6, 0x9c, 0x96, 0x39, 0xe3, 0xfd, 0xac, 0xf4, 0x0d, + 0xca, 0x9f, 0x8b, 0x8d, 0xb7, 0x74, 0x32, 0x36, 0xde, 0x32, 0xf2, 0x3f, 0xdc, 0x83, 0x71, 0xae, + 0xd4, 0x4b, 0x3a, 0x0e, 0x43, 0x6b, 0x9d, 0x1a, 0xca, 0xbf, 0x17, 0x5b, 0xed, 0x12, 0x14, 0xe8, + 0xda, 0x13, 0x07, 0xb2, 0xa9, 0xbb, 0xd6, 0xd6, 0x2d, 0x0b, 0x8f, 0x59, 0x95, 0x7f, 0x3f, 0x36, + 0x75, 0x87, 0x28, 0x74, 0xdc, 0x0d, 0x7e, 0x31, 0x4d, 0xe8, 0x96, 0xfa, 0x48, 0xf9, 0xf3, 0x31, + 0x4d, 0xe8, 0x46, 0xcc, 0x34, 0xa1, 0x6b, 0x1e, 0xa5, 0x07, 0x19, 0x4f, 0xc0, 0x95, 0x5f, 0x8c, + 0xad, 0xc8, 0xa9, 0x54, 0x6c, 0x45, 0x4e, 0x7f, 0x41, 0xfe, 0x20, 0xe3, 0xf9, 0xb4, 0xf2, 0x4b, + 0xdd, 0xf9, 0x86, 0x2b, 0x7d, 0xfa, 0xeb, 0xeb, 0x07, 0x19, 0x4f, 0x8f, 0x95, 0xbf, 0xd0, 0x9d, + 0x6f, 0xe8, 0xd8, 0x97, 0xfe, 0x72, 0xb9, 0x9e, 0xfd, 0x6c, 0x57, 0xf9, 0x8b, 0xf1, 0xa9, 0x2b, + 0x83, 0x10, 0xa7, 0xae, 0xac, 0xb7, 0xbf, 0xab, 0xf0, 0x14, 0xd7, 0x90, 0xbb, 0x8e, 0xde, 0xde, + 0xa8, 0x51, 0xcf, 0x33, 0xad, 0x75, 0x7f, 0x27, 0xf6, 0x1f, 0xe4, 0x62, 0xc7, 0x63, 0x59, 0x94, + 0x78, 0x3c, 0x96, 0x85, 0x64, 0xca, 0x9b, 0x78, 0xa0, 0xab, 0xfc, 0xa5, 0x98, 0xf2, 0x26, 0x28, + 0x98, 0xf2, 0x26, 0xdf, 0xf5, 0xde, 0x4b, 0x79, 0x87, 0xaa, 0xfc, 0x87, 0xd9, 0xbc, 0x82, 0xf6, + 0xa5, 0x3c, 0x5f, 0xbd, 0x97, 0xf2, 0xdc, 0x52, 0xf9, 0x8f, 0xb2, 0x79, 0x85, 0x3e, 0x48, 0xc9, + 0x57, 0x9a, 0xef, 0xc3, 0x45, 0x3e, 0x9b, 0xcf, 0x50, 0x83, 0x46, 0x3e, 0xf4, 0x97, 0x63, 0x63, + 0x3f, 0x9d, 0x0c, 0x8f, 0xdc, 0x53, 0x31, 0x69, 0xac, 0x45, 0x5b, 0xff, 0xf2, 0x2e, 0xac, 0xc3, + 0x0d, 0x41, 0x3a, 0x86, 0xad, 0x37, 0xf2, 0xe3, 0x37, 0xe5, 0x57, 0x62, 0xeb, 0x8d, 0x8c, 0x44, + 0x77, 0x0e, 0xf9, 0xa5, 0xdc, 0x5b, 0xd1, 0x87, 0x5e, 0xca, 0x7f, 0x9c, 0x5a, 0x38, 0xe8, 0x80, + 0xe8, 0xab, 0xb0, 0xb7, 0xa2, 0x8f, 0x9a, 0x94, 0x5f, 0x4d, 0x2d, 0x1c, 0x7c, 0x40, 0xf4, 0x05, + 0x14, 0xdb, 0x22, 0x75, 0x3c, 0x9b, 0xb3, 0x8a, 0x4c, 0x0f, 0x7f, 0x25, 0xbe, 0x45, 0x4a, 0x25, + 0xc3, 0x2d, 0x52, 0x2a, 0x26, 0x8d, 0xb5, 0xf8, 0xbc, 0x5f, 0xdb, 0x85, 0xb5, 0xb4, 0xb1, 0x4b, + 0xc5, 0xa4, 0xb1, 0x16, 0x1f, 0xff, 0xeb, 0xbb, 0xb0, 0x96, 0x36, 0x76, 0xa9, 0x18, 0x66, 0x8e, + 0x85, 0x98, 0x07, 0xd4, 0x71, 0x43, 0xf5, 0xfb, 0xab, 0x31, 0x73, 0x2c, 0x83, 0x8e, 0x99, 0x63, + 0x19, 0xa8, 0x54, 0xee, 0x42, 0x28, 0xbf, 0xb1, 0x1b, 0xf7, 0xf0, 0x5e, 0x26, 0x03, 0x95, 0xca, + 0x5d, 0xc8, 0xe5, 0xaf, 0xed, 0xc6, 0x3d, 0xbc, 0x98, 0xc9, 0x40, 0x31, 0xa3, 0xa8, 0xe6, 0xe9, + 0x9e, 0xd9, 0x98, 0xb5, 0x5d, 0x4f, 0x5a, 0xe4, 0xff, 0x7a, 0xcc, 0x28, 0x4a, 0x23, 0x62, 0x46, + 0x51, 0x1a, 0x3c, 0xc9, 0x54, 0x48, 0xe3, 0x37, 0xbb, 0x32, 0x0d, 0x2d, 0xad, 0x34, 0x78, 0x92, + 0xa9, 0x10, 0xc2, 0x7f, 0xd2, 0x95, 0x69, 0xe8, 0x29, 0x9f, 0x06, 0x67, 0x96, 0xe9, 0x94, 0x63, + 0x6f, 0x5a, 0xf7, 0xe8, 0x26, 0x6d, 0x8a, 0x4f, 0xff, 0xad, 0x98, 0x65, 0x1a, 0x27, 0xc0, 0x5b, + 0x94, 0x18, 0x2c, 0xca, 0x48, 0x7c, 0xee, 0x6f, 0x67, 0x32, 0x0a, 0x8f, 0x89, 0xe2, 0xb0, 0x28, + 0x23, 0xf1, 0x89, 0xbf, 0x93, 0xc9, 0x28, 0x3c, 0x26, 0x8a, 0xc3, 0x26, 0xfb, 0xa0, 0x17, 0xcf, + 0x11, 0xd5, 0x5f, 0xcc, 0xc1, 0x50, 0xcd, 0x73, 0xa8, 0xde, 0x12, 0xd1, 0xce, 0x2e, 0x43, 0x3f, + 0x77, 0xc8, 0xf5, 0x5f, 0x0f, 0x6b, 0xc1, 0x6f, 0x72, 0x0d, 0x46, 0xe6, 0x74, 0xd7, 0xc3, 0x92, + 0x55, 0xcb, 0xa0, 0x4f, 0xf0, 0x31, 0x5a, 0x41, 0x8b, 0x41, 0xc9, 0x1c, 0xa7, 0xe3, 0xe5, 0x30, + 0xc0, 0x65, 0x61, 0xd7, 0x20, 0x5f, 0xfd, 0xdf, 0xdd, 0x9e, 0xe8, 0xc1, 0x98, 0x5e, 0xb1, 0xb2, + 0xea, 0xef, 0xe7, 0x20, 0xe1, 0x2a, 0x7c, 0xf0, 0x57, 0xfd, 0x8b, 0x30, 0x1a, 0x0b, 0xaa, 0x2a, + 0x5e, 0xd4, 0xed, 0x31, 0xe6, 0x6a, 0xbc, 0x34, 0xf9, 0x4c, 0xf0, 0x92, 0x6b, 0x45, 0x9b, 0x13, + 0x01, 0xdc, 0x30, 0xf5, 0x40, 0xc7, 0x69, 0x6a, 0x12, 0x4a, 0x04, 0xe8, 0xf9, 0xc1, 0x58, 0x18, + 0x31, 0x92, 0x5c, 0x13, 0x21, 0x06, 0x72, 0x61, 0xd8, 0xb7, 0x58, 0xaa, 0x72, 0x1e, 0x52, 0xe0, + 0x0b, 0x30, 0x54, 0x6d, 0xb5, 0xa9, 0xe3, 0xda, 0x96, 0xee, 0xd9, 0x8e, 0x78, 0xa1, 0x8d, 0x21, + 0xc1, 0x4c, 0x09, 0x2e, 0x87, 0xa9, 0x92, 0xe9, 0xc9, 0x0d, 0x3f, 0x7b, 0x5a, 0x01, 0x63, 0x75, + 0xe2, 0x33, 0xcb, 0x78, 0xfa, 0x6b, 0x4e, 0xc1, 0x48, 0x57, 0x5c, 0x1d, 0xdf, 0xfc, 0x05, 0xa4, + 0x1d, 0x06, 0x90, 0x49, 0x91, 0x82, 0xbc, 0x08, 0x25, 0xbc, 0x23, 0x71, 0x31, 0x2b, 0xa2, 0x08, + 0x46, 0xd7, 0x44, 0x88, 0x1c, 0xfa, 0x8b, 0xd3, 0x90, 0xfb, 0x30, 0x16, 0x5e, 0x00, 0xdf, 0x75, + 0xec, 0x4e, 0xdb, 0xcf, 0x83, 0x82, 0x69, 0xc3, 0x1f, 0x05, 0xb8, 0xfa, 0x3a, 0x22, 0x25, 0x16, + 0x89, 0x82, 0x64, 0x16, 0x46, 0x43, 0x18, 0x13, 0x91, 0x9f, 0x7f, 0x09, 0x73, 0x5f, 0x4a, 0xbc, + 0x98, 0x38, 0x23, 0xb9, 0x2f, 0x63, 0xc5, 0x48, 0x15, 0xfa, 0xfc, 0x48, 0x74, 0xfd, 0xbb, 0x2a, + 0xe9, 0x39, 0x11, 0x89, 0xae, 0x4f, 0x8e, 0x41, 0xe7, 0x97, 0x27, 0x33, 0x30, 0xa2, 0xd9, 0x1d, + 0x8f, 0x2e, 0xdb, 0x62, 0xe7, 0x24, 0x22, 0x1e, 0x62, 0x9b, 0x1c, 0x86, 0xa9, 0x7b, 0xb6, 0x9f, + 0x75, 0x5d, 0xce, 0xfe, 0x1d, 0x2d, 0x45, 0x16, 0x60, 0x3c, 0x71, 0x55, 0x2e, 0xe7, 0x42, 0x97, + 0x3e, 0x2f, 0xc9, 0x2c, 0x59, 0x94, 0xfc, 0x44, 0x0e, 0x4a, 0xcb, 0x8e, 0x6e, 0x7a, 0xae, 0x78, + 0x2e, 0x78, 0xe1, 0xe6, 0xa6, 0xa3, 0xb7, 0x99, 0x7e, 0xdc, 0xc4, 0x60, 0xac, 0x0f, 0xf4, 0x66, + 0x87, 0xba, 0x93, 0x0f, 0xd9, 0xd7, 0xfd, 0xf7, 0xdb, 0x13, 0x6f, 0xad, 0xe3, 0x81, 0xdc, 0xcd, + 0x86, 0xdd, 0xba, 0xb5, 0xee, 0xe8, 0x8f, 0x4d, 0x0f, 0xcd, 0x1e, 0xbd, 0x79, 0xcb, 0xa3, 0x4d, + 0x3c, 0xf7, 0xbb, 0xa5, 0xb7, 0xcd, 0x5b, 0x18, 0xf4, 0xfb, 0x56, 0xc0, 0x89, 0xd7, 0xc0, 0x54, + 0xc0, 0xc3, 0xbf, 0x64, 0x15, 0xe0, 0x38, 0xb2, 0x00, 0x20, 0x3e, 0xb5, 0xdc, 0x6e, 0x8b, 0xb7, + 0x87, 0xd2, 0x69, 0x99, 0x8f, 0xe1, 0x8a, 0x1d, 0x08, 0x4c, 0x6f, 0x4b, 0x81, 0x6e, 0x35, 0x89, + 0x03, 0xd3, 0x82, 0x65, 0xd1, 0x22, 0x5f, 0x4c, 0xc3, 0xa1, 0xc4, 0xfd, 0xc6, 0xa6, 0x08, 0x29, + 0x5e, 0x8c, 0xac, 0xc2, 0xa8, 0xe0, 0x1b, 0xa4, 0xc5, 0x18, 0x89, 0xce, 0x0a, 0x31, 0x34, 0x57, + 0xda, 0xa0, 0x8d, 0x86, 0x00, 0xcb, 0x75, 0xc4, 0x4a, 0x90, 0xc9, 0x30, 0x8d, 0xef, 0x82, 0xde, + 0xa2, 0xae, 0x32, 0x8a, 0x1a, 0x7b, 0x65, 0x67, 0x7b, 0x42, 0xf1, 0xcb, 0x63, 0x50, 0xc6, 0xd4, + 0xa4, 0xf4, 0x58, 0x44, 0xe6, 0xc1, 0xb5, 0x7e, 0x2c, 0x85, 0x47, 0x5c, 0xe7, 0xa3, 0x45, 0xc8, + 0x14, 0x0c, 0x07, 0x4f, 0x1f, 0x56, 0x56, 0xaa, 0x15, 0x7c, 0xdc, 0x28, 0xe2, 0x72, 0xc6, 0x12, + 0x57, 0xc8, 0x4c, 0x22, 0x65, 0xa4, 0x78, 0x11, 0xfc, 0xb5, 0x63, 0x2c, 0x5e, 0x44, 0x3b, 0x25, + 0x5e, 0xc4, 0x12, 0x79, 0x07, 0x06, 0xcb, 0x0f, 0x6b, 0x22, 0x0e, 0x86, 0xab, 0x9c, 0x0b, 0xb3, + 0x20, 0xe9, 0x9b, 0x6e, 0xdd, 0x8f, 0x99, 0x21, 0x37, 0x5d, 0xa6, 0x27, 0xd3, 0x30, 0x12, 0xf1, + 0x9e, 0x72, 0x95, 0xf3, 0xc8, 0x01, 0x5b, 0xae, 0x23, 0xa6, 0xee, 0x08, 0x94, 0x3c, 0xbc, 0xa2, + 0x85, 0x98, 0xd6, 0x54, 0x4c, 0x17, 0x33, 0xca, 0x68, 0x14, 0x43, 0x6e, 0xe0, 0x53, 0xc9, 0x7e, + 0xae, 0x35, 0x86, 0x40, 0xd5, 0x1d, 0x8e, 0x93, 0x7b, 0x34, 0x56, 0x8c, 0x7c, 0x00, 0x04, 0x73, + 0xd0, 0x50, 0xc3, 0xbf, 0x4c, 0xab, 0x56, 0x5c, 0xe5, 0x22, 0x06, 0xa5, 0x26, 0xf1, 0x27, 0xfe, + 0xd5, 0xca, 0xe4, 0x35, 0x31, 0x7d, 0x5c, 0xd5, 0x79, 0xa9, 0xba, 0xff, 0xbc, 0xbf, 0x6e, 0x46, + 0x12, 0xf4, 0xa6, 0x70, 0x25, 0x9b, 0x70, 0x69, 0xc9, 0xa1, 0x8f, 0x4d, 0xbb, 0xe3, 0xfa, 0xcb, + 0x87, 0x3f, 0x6f, 0x5d, 0xda, 0x75, 0xde, 0x7a, 0x4e, 0x54, 0x7c, 0xa1, 0xed, 0xd0, 0xc7, 0x75, + 0x3f, 0x14, 0x71, 0x24, 0x92, 0x66, 0x16, 0x77, 0x4c, 0x33, 0xfc, 0x61, 0xc7, 0xa1, 0x02, 0x6e, + 0x52, 0x57, 0x51, 0xc2, 0xa9, 0x96, 0x47, 0x4f, 0x31, 0x03, 0x5c, 0x24, 0xcd, 0x70, 0xb4, 0x18, + 0xd1, 0x80, 0xdc, 0x9d, 0xf2, 0x2f, 0x56, 0xcb, 0x0d, 0x9e, 0x8c, 0x55, 0x79, 0x0a, 0x99, 0xa9, + 0x4c, 0x2c, 0xeb, 0x8d, 0x20, 0x2c, 0x79, 0x5d, 0x17, 0x78, 0x59, 0x2c, 0xc9, 0xd2, 0x64, 0x0e, + 0xc6, 0x96, 0x1c, 0x3c, 0xe6, 0xb9, 0x4f, 0xb7, 0x96, 0xec, 0xa6, 0xd9, 0xd8, 0xc2, 0x17, 0x9b, + 0x62, 0xaa, 0x6c, 0x73, 0x5c, 0xfd, 0x11, 0xdd, 0xaa, 0xb7, 0x11, 0x2b, 0x2f, 0x2b, 0xf1, 0x92, + 0x72, 0x98, 0xe0, 0xa7, 0xf7, 0x16, 0x26, 0x98, 0xc2, 0x98, 0xb8, 0x96, 0x7d, 0xe2, 0x51, 0x8b, + 0x2d, 0xf5, 0xae, 0x78, 0x9d, 0xa9, 0xc4, 0xae, 0x71, 0x03, 0x3c, 0x9f, 0x3a, 0xc4, 0x28, 0xa3, + 0x01, 0x58, 0x6e, 0x58, 0xbc, 0x48, 0x32, 0x96, 0xee, 0x33, 0x07, 0x88, 0xa5, 0xfb, 0xd7, 0x0b, + 0xf2, 0xfc, 0x4b, 0xae, 0x40, 0x51, 0x4a, 0x75, 0x83, 0x81, 0x42, 0x31, 0x2c, 0x78, 0x51, 0xc4, + 0x3f, 0x1e, 0x10, 0xb6, 0x4b, 0x10, 0x11, 0x06, 0x73, 0x1b, 0x86, 0xc1, 0x23, 0xb5, 0x90, 0x00, + 0xf3, 0xca, 0x75, 0x56, 0x9b, 0x66, 0x03, 0x83, 0xc5, 0x17, 0xa4, 0x10, 0x10, 0x08, 0xe5, 0xb1, + 0xe2, 0x25, 0x12, 0x72, 0x1b, 0x06, 0xfd, 0xe3, 0xc5, 0x30, 0x50, 0x2e, 0xc6, 0x10, 0x17, 0xb3, + 0xb5, 0x08, 0x51, 0x2e, 0x11, 0x91, 0x37, 0x01, 0xc2, 0xe9, 0x40, 0x58, 0x5a, 0xb8, 0x54, 0xc8, + 0xb3, 0x87, 0xbc, 0x54, 0x84, 0xd4, 0x6c, 0xe2, 0x94, 0xd5, 0xd1, 0xcf, 0xa4, 0x89, 0x13, 0x67, + 0x44, 0x87, 0x65, 0x05, 0x89, 0x16, 0x21, 0x8b, 0x30, 0x9e, 0xd0, 0x40, 0x11, 0x56, 0x17, 0xb3, + 0xa9, 0xa7, 0xa8, 0xaf, 0xbc, 0x30, 0x27, 0xca, 0x92, 0xe7, 0xa1, 0xb0, 0xa2, 0x55, 0x45, 0x68, + 0x4f, 0x1e, 0x15, 0x36, 0x12, 0xf7, 0x87, 0x61, 0xd5, 0x3f, 0x96, 0x4f, 0xac, 0x4d, 0x4c, 0x7a, + 0x82, 0x95, 0xd4, 0x83, 0x28, 0x3d, 0xbf, 0x7e, 0x2e, 0x3d, 0x89, 0x88, 0x5c, 0x87, 0xfe, 0x25, + 0x36, 0x33, 0x34, 0xec, 0xa6, 0xe8, 0x4f, 0x0c, 0xd2, 0xd4, 0x16, 0x30, 0x2d, 0xc0, 0x92, 0xdb, + 0x52, 0x02, 0x58, 0x29, 0x5a, 0xb6, 0x9f, 0x00, 0x36, 0x1e, 0x36, 0x1a, 0x53, 0xc1, 0xde, 0x8e, + 0x25, 0x94, 0x12, 0x65, 0x52, 0xd6, 0xc5, 0x30, 0x81, 0x54, 0x60, 0x95, 0xf6, 0xee, 0x66, 0x95, + 0xaa, 0x7f, 0x2b, 0x97, 0x1c, 0x67, 0xe4, 0x4e, 0x32, 0x70, 0x2d, 0x2e, 0x42, 0x01, 0x50, 0xae, + 0x35, 0x08, 0x61, 0x1b, 0x09, 0x41, 0x9b, 0x3f, 0x70, 0x08, 0xda, 0xc2, 0x3e, 0x43, 0xd0, 0xaa, + 0xff, 0x4f, 0xb1, 0xab, 0x1b, 0xf1, 0xb1, 0x84, 0x2a, 0x7b, 0x83, 0xed, 0xac, 0x58, 0xed, 0x65, + 0x37, 0xb1, 0x3f, 0xe0, 0x5e, 0x92, 0x75, 0x9d, 0x0f, 0x2d, 0x57, 0x8b, 0x52, 0x92, 0x77, 0x61, + 0xc8, 0xff, 0x00, 0x0c, 0x6d, 0x2c, 0x85, 0xe4, 0x0d, 0x56, 0xb5, 0x58, 0x10, 0xe0, 0x48, 0x01, + 0xf2, 0x2a, 0x0c, 0xa0, 0x4d, 0xd3, 0xd6, 0x1b, 0x7e, 0xdc, 0x6b, 0x1e, 0x28, 0xdb, 0x07, 0xca, + 0xe1, 0xb8, 0x02, 0x4a, 0xf2, 0x15, 0x28, 0x89, 0xe4, 0x0f, 0x3c, 0x37, 0xfa, 0xad, 0x3d, 0xf8, + 0x5d, 0xdf, 0x94, 0x13, 0x3f, 0xf0, 0x5d, 0x0a, 0x02, 0x22, 0xbb, 0x14, 0x9e, 0xf3, 0x61, 0x19, + 0xce, 0x2d, 0x39, 0xd4, 0x40, 0x0f, 0xff, 0xe9, 0x27, 0x6d, 0x47, 0xa4, 0xe5, 0xe0, 0xa3, 0x1c, + 0x17, 0xa9, 0xb6, 0x8f, 0x66, 0xcb, 0xa7, 0xc0, 0xcb, 0xc1, 0x77, 0x53, 0x8a, 0x33, 0xcb, 0x85, + 0xb7, 0xe4, 0x3e, 0xdd, 0xda, 0xc4, 0x4c, 0xfd, 0xfd, 0xa1, 0xe5, 0x22, 0x04, 0xfd, 0x48, 0xa0, + 0x64, 0xcb, 0x25, 0x5a, 0xe8, 0xf2, 0x1b, 0x30, 0x78, 0xd0, 0xe4, 0x09, 0xbf, 0x91, 0xcf, 0x78, + 0x90, 0x73, 0x7a, 0xf3, 0xd7, 0x05, 0x49, 0x95, 0x7b, 0x33, 0x92, 0x2a, 0x7f, 0x3f, 0x9f, 0xf1, + 0xda, 0xe8, 0x54, 0x27, 0x3f, 0x0d, 0x84, 0x11, 0x4d, 0x7e, 0x1a, 0xe6, 0x9d, 0x35, 0x0d, 0x4d, + 0x26, 0x8a, 0xa5, 0x49, 0x2e, 0xed, 0x9a, 0x26, 0xf9, 0x97, 0x0b, 0xdd, 0x5e, 0x63, 0x9d, 0xc9, + 0x7e, 0x3f, 0xb2, 0xbf, 0x0d, 0x83, 0x81, 0x64, 0xab, 0x15, 0x34, 0x7a, 0x86, 0x83, 0x54, 0x2d, + 0x1c, 0x8c, 0x65, 0x24, 0x22, 0x72, 0x83, 0xb7, 0xb5, 0x66, 0x7e, 0xc8, 0x93, 0x06, 0x0c, 0x8b, + 0x70, 0xf0, 0xba, 0xa7, 0xd7, 0x5d, 0xf3, 0x43, 0xaa, 0x05, 0x68, 0xf5, 0x3f, 0xcf, 0xa7, 0x3e, + 0x69, 0x3b, 0xeb, 0xa3, 0x7d, 0xf4, 0x51, 0x8a, 0x10, 0xf9, 0x63, 0xbc, 0x33, 0x21, 0xee, 0x43, + 0x88, 0x7f, 0x94, 0x4f, 0x7d, 0xba, 0x78, 0x26, 0xc4, 0xfd, 0xcc, 0x16, 0x2f, 0xc2, 0x80, 0x66, + 0x6f, 0xba, 0x53, 0xb8, 0xb1, 0xe1, 0x73, 0x05, 0x4e, 0xd4, 0x8e, 0xbd, 0xe9, 0xd6, 0x71, 0xcb, + 0xa2, 0x85, 0x04, 0xea, 0x0f, 0xf2, 0x5d, 0x1e, 0x77, 0x9e, 0x09, 0xfe, 0xa3, 0x5c, 0x22, 0x7f, + 0x3b, 0x1f, 0x79, 0x3c, 0x7a, 0x7a, 0x85, 0x7d, 0x0b, 0xa0, 0xd6, 0xd8, 0xa0, 0x2d, 0x5d, 0x4a, + 0xbc, 0x84, 0xe7, 0x0e, 0x2e, 0x42, 0x45, 0xc2, 0xde, 0x90, 0x44, 0xfd, 0xdd, 0x7c, 0xec, 0xf5, + 0xec, 0x99, 0xec, 0xf6, 0x2c, 0xbb, 0x40, 0xeb, 0xc4, 0x83, 0xe0, 0x33, 0xc9, 0xed, 0x55, 0x72, + 0x3f, 0x99, 0x8f, 0xbd, 0x9d, 0x3e, 0xb5, 0xb2, 0x63, 0x03, 0x30, 0xf9, 0xa6, 0xfb, 0xd4, 0x6a, + 0xd2, 0x8b, 0x30, 0x20, 0xe4, 0x10, 0x2c, 0x15, 0x7c, 0xde, 0xe7, 0x40, 0x3c, 0x65, 0x0d, 0x08, + 0xd4, 0x3f, 0x9e, 0x87, 0xe8, 0x9b, 0xf6, 0x53, 0xaa, 0x43, 0xbf, 0x9d, 0x8f, 0xbe, 0xe6, 0x3f, + 0xbd, 0xfa, 0x73, 0x13, 0xa0, 0xd6, 0x59, 0x6d, 0x88, 0x60, 0xb0, 0xbd, 0xd2, 0x31, 0x7d, 0x00, + 0xd5, 0x24, 0x0a, 0xf5, 0xff, 0xcd, 0xa7, 0x86, 0x18, 0x38, 0xbd, 0x02, 0x7c, 0x05, 0x4f, 0xc5, + 0x1b, 0x56, 0x38, 0x91, 0xe3, 0x21, 0x24, 0x1b, 0x7f, 0x89, 0x6c, 0x7d, 0x3e, 0x21, 0xf9, 0x7c, + 0x8a, 0xb9, 0x86, 0xb9, 0x04, 0x42, 0x73, 0x4d, 0xbe, 0x86, 0x90, 0x0c, 0xb7, 0xbf, 0x9b, 0xdf, + 0x2d, 0x22, 0xc3, 0x69, 0x5e, 0x55, 0xfb, 0x96, 0xf4, 0x2d, 0x8c, 0x1c, 0xc8, 0x7a, 0x62, 0x88, + 0xe7, 0x92, 0x6b, 0x73, 0x90, 0x7c, 0xf7, 0x26, 0xa8, 0xd4, 0x7f, 0xd6, 0x9b, 0x1e, 0x0e, 0xe0, + 0xf4, 0x8a, 0xf0, 0x0a, 0x14, 0x97, 0x74, 0x6f, 0x43, 0x68, 0x32, 0x5e, 0xe9, 0xb5, 0x75, 0x6f, + 0x43, 0x43, 0x28, 0xb9, 0x01, 0xfd, 0x9a, 0xbe, 0xc9, 0xcf, 0x3c, 0x4b, 0x61, 0x9e, 0x3f, 0x47, + 0xdf, 0xac, 0xf3, 0x73, 0xcf, 0x00, 0x4d, 0xd4, 0x20, 0xcf, 0x24, 0x3f, 0xf9, 0xc6, 0x24, 0x67, + 0x3c, 0xcf, 0x64, 0x90, 0x5d, 0xf2, 0x0a, 0x14, 0x27, 0x6d, 0x63, 0x0b, 0xaf, 0xaf, 0x86, 0x78, + 0x65, 0xab, 0xb6, 0xb1, 0xa5, 0x21, 0x94, 0xfc, 0x54, 0x0e, 0xfa, 0x66, 0xa9, 0x6e, 0xb0, 0x11, + 0x32, 0xd0, 0xcd, 0xeb, 0xe4, 0x4b, 0x47, 0xe3, 0x75, 0x32, 0xbe, 0xc1, 0x2b, 0x93, 0x15, 0x45, + 0xd4, 0x4f, 0xee, 0x42, 0xff, 0x94, 0xee, 0xd1, 0x75, 0xdb, 0xd9, 0x42, 0x3f, 0x9a, 0x91, 0xd0, + 0xa5, 0x3c, 0xa2, 0x3f, 0x3e, 0x11, 0xbf, 0x19, 0x6b, 0x88, 0x5f, 0x5a, 0x50, 0x98, 0x89, 0x45, + 0x64, 0xbe, 0x1f, 0x0c, 0xc5, 0xc2, 0x53, 0xdc, 0x07, 0x09, 0xee, 0x83, 0x63, 0xe5, 0xa1, 0xf4, + 0x63, 0x65, 0xb4, 0x1e, 0xd1, 0xd7, 0x0e, 0xb3, 0x3b, 0x0e, 0xe3, 0xa2, 0xcf, 0xad, 0x47, 0x84, + 0x62, 0x72, 0x47, 0x4d, 0x22, 0x51, 0xbf, 0xd7, 0x0b, 0xa9, 0x8f, 0x87, 0xcf, 0x94, 0xfc, 0x4c, + 0xc9, 0x43, 0x25, 0xaf, 0x24, 0x94, 0xfc, 0x72, 0xf2, 0x39, 0xfa, 0xc7, 0x54, 0xc3, 0x7f, 0xae, + 0x98, 0x08, 0x66, 0x71, 0xba, 0x77, 0x97, 0xa1, 0xf4, 0x7a, 0x77, 0x95, 0x5e, 0x30, 0x20, 0x4a, + 0xbb, 0x0e, 0x88, 0xbe, 0xbd, 0x0e, 0x88, 0xfe, 0xcc, 0x01, 0x11, 0x2a, 0xc8, 0x40, 0xa6, 0x82, + 0x54, 0xc5, 0xa0, 0x81, 0xee, 0x39, 0x35, 0xae, 0xec, 0x6c, 0x4f, 0x8c, 0xb0, 0xd1, 0x94, 0x9a, + 0x4c, 0x03, 0x59, 0xa8, 0xbf, 0x5f, 0xec, 0x12, 0x81, 0xe6, 0x58, 0x74, 0xe4, 0x15, 0x28, 0x94, + 0xdb, 0x6d, 0xa1, 0x1f, 0xe7, 0xa4, 0xe0, 0x37, 0x19, 0xa5, 0x18, 0x35, 0x79, 0x13, 0x0a, 0xe5, + 0x87, 0xb5, 0x78, 0x1e, 0x8d, 0xf2, 0xc3, 0x9a, 0xf8, 0x92, 0xcc, 0xb2, 0x0f, 0x6b, 0xe4, 0xed, + 0x30, 0xa0, 0xe5, 0x46, 0xc7, 0x7a, 0x24, 0x36, 0x8a, 0xc2, 0xdd, 0xd6, 0x77, 0xc7, 0x69, 0x30, + 0x14, 0xdb, 0x2e, 0xc6, 0x68, 0x63, 0xda, 0x54, 0xda, 0xbb, 0x36, 0xf5, 0xed, 0xaa, 0x4d, 0xfd, + 0x7b, 0xd5, 0xa6, 0x81, 0x3d, 0x68, 0x13, 0xec, 0xaa, 0x4d, 0x83, 0x87, 0xd7, 0xa6, 0x36, 0x5c, + 0x4e, 0x46, 0x0d, 0x0b, 0x34, 0x42, 0x03, 0x92, 0xc4, 0x0a, 0xc7, 0x12, 0xbc, 0xfa, 0xef, 0x70, + 0x6c, 0x7d, 0x13, 0xd1, 0x75, 0x97, 0xe1, 0x65, 0xff, 0xb4, 0x64, 0x69, 0xf5, 0x37, 0xf2, 0xd9, + 0xc1, 0xce, 0x4e, 0xe6, 0x14, 0xf7, 0x23, 0xa9, 0x52, 0x2a, 0x46, 0x1f, 0x9f, 0x67, 0x4b, 0x39, + 0xc6, 0x36, 0x4d, 0x66, 0xdf, 0xc9, 0x65, 0x45, 0x60, 0x3b, 0x94, 0xc4, 0x3e, 0x9d, 0xf4, 0x68, + 0x43, 0x3f, 0x7d, 0x37, 0xea, 0xca, 0x36, 0x03, 0x43, 0xb2, 0x10, 0x85, 0x94, 0xf6, 0x22, 0xe0, + 0x48, 0x39, 0xf5, 0x6f, 0xe5, 0xe0, 0xdc, 0xfd, 0xce, 0x2a, 0x15, 0x1e, 0x6c, 0x41, 0x33, 0x3e, + 0x00, 0x60, 0x60, 0xe1, 0xc4, 0x92, 0x43, 0x27, 0x96, 0xcf, 0xca, 0xd1, 0xd3, 0x62, 0x05, 0x6e, + 0x86, 0xd4, 0xdc, 0x81, 0xe5, 0x19, 0xdf, 0x99, 0xf3, 0x51, 0x67, 0x95, 0xd6, 0x13, 0x9e, 0x2c, + 0x12, 0xf7, 0xcb, 0xef, 0x70, 0x37, 0xf9, 0x83, 0x3a, 0x8d, 0xfc, 0x5a, 0x3e, 0x33, 0x60, 0xdd, + 0x89, 0xcd, 0xac, 0xf8, 0x43, 0xa9, 0xbd, 0x12, 0xcf, 0xb0, 0x98, 0x42, 0x12, 0xe3, 0x98, 0xc6, + 0x25, 0x5d, 0x60, 0x27, 0x3c, 0xdf, 0xe7, 0x47, 0x2a, 0xb0, 0x7f, 0x90, 0xcb, 0x0c, 0x2c, 0x78, + 0x52, 0x05, 0xa6, 0xfe, 0x2f, 0x05, 0x3f, 0x9e, 0xe1, 0xa1, 0x3e, 0xe1, 0x45, 0x18, 0x10, 0xcf, + 0xba, 0xa3, 0x0e, 0xb8, 0xe2, 0x28, 0x0f, 0x8f, 0x86, 0x03, 0x02, 0xb6, 0xcc, 0x4b, 0xde, 0xc1, + 0x92, 0x03, 0xae, 0xe4, 0x19, 0xac, 0x49, 0x24, 0x6c, 0x21, 0x9f, 0x7e, 0x62, 0x7a, 0x68, 0x15, + 0xb0, 0xbe, 0x2c, 0xf0, 0x85, 0x9c, 0x3e, 0x31, 0x3d, 0x6e, 0x13, 0x04, 0x68, 0xb6, 0x48, 0xd7, + 0xc2, 0x6c, 0xe6, 0x62, 0x91, 0x76, 0x45, 0x52, 0x77, 0xf1, 0x6c, 0xec, 0x45, 0x18, 0x10, 0x5e, + 0xad, 0xc2, 0xcd, 0x44, 0xb4, 0x56, 0xf8, 0xc1, 0x62, 0x6b, 0x03, 0x02, 0xc6, 0x51, 0xa3, 0xeb, + 0xa1, 0x63, 0x1d, 0x72, 0x74, 0x10, 0xa2, 0x09, 0x0c, 0xb9, 0x0d, 0x23, 0x35, 0x4f, 0xb7, 0x0c, + 0xdd, 0x31, 0x16, 0x3b, 0x5e, 0xbb, 0xe3, 0xc9, 0x46, 0xa9, 0xeb, 0x19, 0x76, 0xc7, 0xd3, 0x62, + 0x14, 0xe4, 0x73, 0x30, 0xec, 0x43, 0xa6, 0x1d, 0xc7, 0x76, 0x64, 0xcb, 0xc3, 0xf5, 0x0c, 0xea, + 0x38, 0x5a, 0x94, 0x80, 0x7c, 0x1e, 0x86, 0xab, 0xd6, 0x63, 0x9b, 0xa7, 0xc9, 0x5f, 0xd1, 0xe6, + 0x84, 0x1d, 0x82, 0x4f, 0xb1, 0xcc, 0x00, 0x51, 0xef, 0x38, 0x4d, 0x2d, 0x4a, 0xa8, 0xee, 0xe4, + 0x93, 0x61, 0x1f, 0x4f, 0xef, 0xa6, 0xe5, 0x46, 0xd4, 0x99, 0x0e, 0x3d, 0x48, 0xd1, 0x20, 0x94, + 0x7d, 0x79, 0xb9, 0x5d, 0x78, 0x1b, 0xfa, 0xef, 0xd3, 0x2d, 0xee, 0xf7, 0x59, 0x0a, 0x5d, 0x85, + 0x1f, 0x09, 0x98, 0x7c, 0xe2, 0xea, 0xd3, 0xa9, 0xbf, 0x97, 0x4f, 0x06, 0xb4, 0x3c, 0xbd, 0xc2, + 0xfe, 0x1c, 0xf4, 0xa1, 0x28, 0xab, 0xfe, 0x91, 0x3f, 0x0a, 0x10, 0xc5, 0x1d, 0xf5, 0x40, 0xf6, + 0xc9, 0xd4, 0x5f, 0x2a, 0xc5, 0xa3, 0x9c, 0x9e, 0x5e, 0xe9, 0xbd, 0x05, 0x83, 0x53, 0xb6, 0xe5, + 0x9a, 0xae, 0x47, 0xad, 0x86, 0xaf, 0xb0, 0x4f, 0x31, 0x83, 0xaa, 0x11, 0x82, 0xe5, 0x37, 0x48, + 0x12, 0xf5, 0x41, 0x94, 0x97, 0xbc, 0x06, 0x03, 0x28, 0x72, 0xf4, 0x93, 0xe6, 0x13, 0x1e, 0xde, + 0x16, 0xac, 0x32, 0x60, 0xdc, 0x49, 0x3a, 0x24, 0x25, 0x2b, 0xd0, 0x3f, 0xb5, 0x61, 0x36, 0x0d, + 0x87, 0x5a, 0xe8, 0x2f, 0x2c, 0x05, 0x93, 0x88, 0xf6, 0xe5, 0x4d, 0xfc, 0x17, 0x69, 0x79, 0x73, + 0x1a, 0xa2, 0x58, 0xe4, 0x15, 0x96, 0x80, 0x5d, 0xfe, 0x99, 0x3c, 0x40, 0x58, 0x80, 0x3c, 0x0b, + 0xf9, 0x20, 0x51, 0x30, 0xba, 0xa9, 0x44, 0x34, 0x28, 0x8f, 0x4b, 0x85, 0x18, 0xdb, 0xf9, 0x5d, + 0xc7, 0xf6, 0x0a, 0x94, 0xf8, 0x89, 0x17, 0x7a, 0x92, 0x4b, 0x81, 0x17, 0x33, 0x1b, 0x7c, 0x13, + 0xe9, 0xf9, 0x66, 0x16, 0x2d, 0xcf, 0x88, 0x57, 0x36, 0x67, 0x76, 0xb9, 0x01, 0xbd, 0xf8, 0x17, + 0xb9, 0x06, 0xc5, 0x65, 0x3f, 0xc9, 0xe8, 0x30, 0x9f, 0xa5, 0x63, 0xf2, 0x43, 0x3c, 0xeb, 0xa6, + 0x29, 0xdb, 0xf2, 0x58, 0xd5, 0xd8, 0xea, 0x21, 0x21, 0x17, 0x01, 0x8b, 0xc8, 0x45, 0xc0, 0xd4, + 0xff, 0x3a, 0x9f, 0x12, 0x7f, 0xf7, 0xf4, 0x0e, 0x93, 0x37, 0x00, 0xf0, 0x49, 0x37, 0x93, 0xa7, + 0xff, 0x44, 0x03, 0x47, 0x09, 0x32, 0x42, 0xb5, 0x8d, 0x6c, 0x3b, 0x42, 0x62, 0xf5, 0xef, 0xe4, + 0x12, 0x41, 0x5b, 0x0f, 0x25, 0x47, 0xd9, 0x2a, 0xcb, 0x1f, 0xd0, 0x8c, 0xf5, 0xfb, 0xa2, 0xb0, + 0xbf, 0xbe, 0x88, 0x7e, 0xcb, 0x11, 0x58, 0xa6, 0xc7, 0xf9, 0x2d, 0xdf, 0xcb, 0xa7, 0x85, 0xb0, + 0x3d, 0x99, 0x2a, 0x7e, 0x27, 0x30, 0x4a, 0x8b, 0xb1, 0xa0, 0xe1, 0x08, 0x8d, 0x27, 0x42, 0x16, + 0x66, 0xea, 0x57, 0x61, 0x34, 0x16, 0xd8, 0x55, 0xe4, 0xa4, 0xbd, 0xd6, 0x3d, 0x42, 0x6c, 0x76, + 0x30, 0x80, 0x08, 0x99, 0xfa, 0xff, 0xe5, 0xba, 0x87, 0xf5, 0x3d, 0x76, 0xd5, 0x49, 0x11, 0x40, + 0xe1, 0x5f, 0x8d, 0x00, 0x8e, 0x60, 0x1b, 0x7c, 0xb2, 0x05, 0xf0, 0x31, 0x99, 0x3c, 0x3e, 0x6a, + 0x01, 0xfc, 0x52, 0x6e, 0xd7, 0xa8, 0xcc, 0xc7, 0x2d, 0x03, 0xf5, 0x7f, 0xcc, 0xa5, 0x46, 0x4f, + 0x3e, 0x54, 0xbb, 0xde, 0x86, 0x12, 0x77, 0xab, 0x11, 0xad, 0x92, 0xf2, 0x4d, 0x31, 0x68, 0x56, + 0x86, 0x76, 0x8e, 0x25, 0x73, 0xd0, 0xc7, 0xdb, 0x60, 0x88, 0xde, 0xf8, 0x54, 0x97, 0x10, 0xce, + 0x46, 0xd6, 0xe4, 0x28, 0xd0, 0xea, 0xdf, 0xce, 0x25, 0x82, 0x39, 0x1f, 0xe3, 0xb7, 0x85, 0x53, + 0x75, 0x61, 0xef, 0x53, 0xb5, 0xfa, 0x4f, 0xf3, 0xe9, 0xb1, 0xa4, 0x8f, 0xf1, 0x43, 0x8e, 0xe2, + 0x38, 0xed, 0x60, 0xeb, 0xd6, 0x32, 0x8c, 0x44, 0x65, 0x21, 0x96, 0xad, 0xab, 0xe9, 0x11, 0xb5, + 0x33, 0x5a, 0x11, 0xe3, 0xa1, 0x7e, 0x37, 0x97, 0x0c, 0x83, 0x7d, 0xec, 0xf3, 0xd3, 0xc1, 0xb4, + 0x25, 0xfa, 0x29, 0x1f, 0x93, 0xb5, 0xe6, 0x28, 0x3e, 0xe5, 0x63, 0xb2, 0x6a, 0x1c, 0xec, 0x53, + 0x7e, 0x25, 0x9f, 0x15, 0x45, 0xfc, 0xd8, 0x3f, 0xe8, 0xcb, 0xb2, 0x90, 0x79, 0xcb, 0xc4, 0xa7, + 0x3d, 0x9b, 0x15, 0xb6, 0x3b, 0x83, 0x67, 0x82, 0xcf, 0xc1, 0xc6, 0x78, 0xaa, 0xb0, 0x3e, 0x26, + 0x8a, 0x7c, 0x32, 0x84, 0xf5, 0x31, 0x19, 0x2a, 0x1f, 0x3f, 0x61, 0xfd, 0x8d, 0xfc, 0x5e, 0x43, + 0xd7, 0x9f, 0x09, 0x2f, 0x21, 0xbc, 0x6f, 0xe5, 0x93, 0x29, 0x15, 0x8e, 0x5d, 0x4c, 0x33, 0x50, + 0x12, 0xc9, 0x1d, 0x32, 0x85, 0xc3, 0xf1, 0x59, 0x16, 0x8d, 0xf8, 0x8e, 0x3b, 0x20, 0x2e, 0x72, + 0xf6, 0x26, 0x12, 0x4e, 0xab, 0xfe, 0x20, 0x17, 0xcb, 0x3f, 0x70, 0x2c, 0x47, 0x08, 0x07, 0x5a, + 0x92, 0xc8, 0x3b, 0xfe, 0x61, 0x66, 0x31, 0x16, 0xff, 0x39, 0xf8, 0x9e, 0x0a, 0xf5, 0x74, 0xb3, + 0x19, 0x2f, 0x2f, 0x62, 0x02, 0xfc, 0x5e, 0x1e, 0xc6, 0x13, 0xa4, 0xe4, 0x5a, 0x24, 0x94, 0x0e, + 0x1e, 0x4b, 0xc6, 0x9c, 0xc7, 0x79, 0x50, 0x9d, 0x7d, 0x9c, 0xa4, 0x5e, 0x83, 0x62, 0x45, 0xdf, + 0xe2, 0xdf, 0xd6, 0xcb, 0x59, 0x1a, 0xfa, 0x96, 0x7c, 0xe2, 0x86, 0x78, 0xb2, 0x0a, 0x17, 0xf8, + 0x7d, 0x88, 0x69, 0x5b, 0xcb, 0x66, 0x8b, 0x56, 0xad, 0x79, 0xb3, 0xd9, 0x34, 0x5d, 0x71, 0xa9, + 0xf7, 0xe2, 0xce, 0xf6, 0xc4, 0x75, 0xcf, 0xf6, 0xf4, 0x66, 0x9d, 0xfa, 0x64, 0x75, 0xcf, 0x6c, + 0xd1, 0xba, 0x69, 0xd5, 0x5b, 0x48, 0x29, 0xb1, 0x4c, 0x67, 0x45, 0xaa, 0x3c, 0xd4, 0x77, 0xad, + 0xa1, 0x5b, 0x16, 0x35, 0xaa, 0xd6, 0xe4, 0x96, 0x47, 0xf9, 0x65, 0x60, 0x81, 0x1f, 0x09, 0xf2, + 0xb7, 0xe1, 0x1c, 0xcd, 0x18, 0xaf, 0x32, 0x02, 0x2d, 0xa5, 0x90, 0xfa, 0x37, 0x8b, 0x29, 0xa9, + 0x27, 0x4e, 0x90, 0xfa, 0xf8, 0x3d, 0x5d, 0xdc, 0xa5, 0xa7, 0x6f, 0x41, 0x9f, 0x88, 0xa5, 0x2a, + 0x2e, 0x18, 0xd0, 0x99, 0xfd, 0x31, 0x07, 0xc9, 0x37, 0x34, 0x82, 0x8a, 0x34, 0xe1, 0xf2, 0x32, + 0xeb, 0xa6, 0xf4, 0xce, 0x2c, 0x1d, 0xa0, 0x33, 0xbb, 0xf0, 0x23, 0xef, 0xc3, 0x25, 0xc4, 0xa6, + 0x74, 0x6b, 0x1f, 0x56, 0x85, 0x31, 0xaa, 0x78, 0x55, 0xe9, 0x9d, 0x9b, 0x55, 0x9e, 0x7c, 0x19, + 0x86, 0x82, 0x01, 0x62, 0x52, 0x57, 0xdc, 0x5c, 0x74, 0x19, 0x67, 0x3c, 0x00, 0x1c, 0x03, 0xa3, + 0x0b, 0x59, 0x34, 0x88, 0x58, 0x84, 0x97, 0xfa, 0x3f, 0xe4, 0xba, 0xa5, 0xc0, 0x38, 0xf6, 0x59, + 0xf9, 0x1d, 0xe8, 0x33, 0xf8, 0x47, 0x09, 0x9d, 0xea, 0x9e, 0x24, 0x83, 0x93, 0x6a, 0x7e, 0x19, + 0xf5, 0x9f, 0xe4, 0xba, 0x66, 0xde, 0x38, 0xe9, 0x9f, 0xf7, 0xad, 0x42, 0xc6, 0xe7, 0x89, 0x49, + 0xf4, 0x06, 0x8c, 0x99, 0x61, 0x68, 0xf0, 0x7a, 0x18, 0x7e, 0x4a, 0x1b, 0x95, 0xe0, 0x38, 0xba, + 0xee, 0xc0, 0x45, 0xdf, 0xf1, 0xd1, 0xf1, 0x3d, 0xc4, 0xdc, 0x7a, 0xc7, 0x31, 0xf9, 0xb8, 0xd4, + 0xce, 0xbb, 0x31, 0xf7, 0x31, 0x77, 0xc5, 0x31, 0x59, 0x05, 0xba, 0xb7, 0x41, 0x2d, 0xbd, 0xbe, + 0x69, 0x3b, 0x8f, 0x30, 0xca, 0x28, 0x1f, 0x9c, 0xda, 0x28, 0x87, 0x3f, 0xf4, 0xc1, 0xe4, 0x79, + 0x18, 0x5e, 0x6f, 0x76, 0x68, 0x10, 0xd7, 0x91, 0xdf, 0xf5, 0x69, 0x43, 0x0c, 0x18, 0xdc, 0x90, + 0x3c, 0x03, 0x80, 0x44, 0x1e, 0xe6, 0x45, 0xc1, 0x8b, 0x3d, 0x6d, 0x80, 0x41, 0x96, 0x45, 0x77, + 0x5d, 0xe6, 0x5a, 0xcd, 0x85, 0x54, 0x6f, 0xda, 0xd6, 0x7a, 0xdd, 0xa3, 0x4e, 0x0b, 0x1b, 0x8a, + 0xce, 0x0c, 0xda, 0x45, 0xa4, 0xc0, 0xab, 0x13, 0x77, 0xce, 0xb6, 0xd6, 0x97, 0xa9, 0xd3, 0x62, + 0x4d, 0x7d, 0x11, 0x88, 0x68, 0xaa, 0x83, 0x87, 0x1e, 0xfc, 0xe3, 0xd0, 0x9b, 0x41, 0x13, 0x1f, + 0xc1, 0x4f, 0x43, 0xf0, 0xc3, 0x26, 0x60, 0x90, 0x07, 0xb7, 0xe3, 0x42, 0x43, 0x17, 0x06, 0x0d, + 0x38, 0x08, 0xe5, 0x75, 0x11, 0x84, 0x77, 0x05, 0xf7, 0xea, 0xd6, 0xc4, 0x2f, 0xf5, 0xeb, 0x85, + 0xb4, 0x64, 0x21, 0x87, 0x52, 0xb4, 0x70, 0x5a, 0xcd, 0xef, 0x6b, 0x5a, 0x1d, 0xb5, 0x3a, 0xad, + 0xba, 0xde, 0x6e, 0xd7, 0xd7, 0xcc, 0x26, 0x3e, 0xab, 0xc2, 0x85, 0x4f, 0x1b, 0xb6, 0x3a, 0xad, + 0x72, 0xbb, 0x3d, 0xc3, 0x81, 0xe4, 0x05, 0x18, 0x67, 0x74, 0xd8, 0x49, 0x01, 0x65, 0x11, 0x29, + 0x19, 0x03, 0x8c, 0x0e, 0xeb, 0xd3, 0x3e, 0x05, 0xfd, 0x82, 0x27, 0x5f, 0xab, 0x7a, 0xb5, 0x3e, + 0xce, 0xcc, 0x65, 0x3d, 0x17, 0xb0, 0xe1, 0x93, 0x6b, 0xaf, 0x36, 0xe0, 0x97, 0xc7, 0x18, 0xc8, + 0x56, 0xa7, 0xc5, 0x23, 0x62, 0xf5, 0x21, 0x32, 0xf8, 0x4d, 0xae, 0xc1, 0x08, 0xe3, 0x12, 0x08, + 0x8c, 0x87, 0x8d, 0xed, 0xd5, 0x62, 0x50, 0x72, 0x1b, 0xce, 0x47, 0x20, 0xdc, 0x06, 0xe5, 0xcf, + 0x04, 0x7a, 0xb5, 0x54, 0x9c, 0xfa, 0xbb, 0x85, 0x68, 0x0a, 0x93, 0x63, 0xe8, 0x88, 0x4b, 0xd0, + 0x67, 0x3b, 0xeb, 0xf5, 0x8e, 0xd3, 0x14, 0x63, 0xaf, 0x64, 0x3b, 0xeb, 0x2b, 0x4e, 0x93, 0x5c, + 0x80, 0x12, 0xeb, 0x1d, 0xd3, 0x10, 0x43, 0xac, 0x57, 0x6f, 0xb7, 0xab, 0x06, 0x29, 0xf3, 0x0e, + 0xc1, 0x90, 0xa3, 0xf5, 0x06, 0x6e, 0xed, 0xb9, 0x53, 0x42, 0x2f, 0x5f, 0xf1, 0x12, 0x48, 0xec, + 0x27, 0x0c, 0x44, 0xca, 0x0f, 0x02, 0x62, 0x2c, 0x0c, 0xdc, 0x96, 0x18, 0xbc, 0x4f, 0xe2, 0x2c, + 0x04, 0x32, 0x64, 0xc1, 0x37, 0x31, 0x06, 0xa9, 0x00, 0x09, 0xa9, 0x5a, 0xb6, 0x61, 0xae, 0x99, + 0x94, 0xbf, 0xea, 0xe8, 0xe5, 0x17, 0xbf, 0x49, 0xac, 0x36, 0xe6, 0x33, 0x99, 0x17, 0x10, 0xf2, + 0x16, 0x57, 0x42, 0x4e, 0x87, 0x6b, 0x1f, 0xef, 0x5b, 0x6e, 0xa7, 0xc5, 0x50, 0xa8, 0x99, 0x58, + 0x1e, 0x17, 0x42, 0xf5, 0xbb, 0x85, 0x64, 0x1e, 0x9b, 0x63, 0xb1, 0x6b, 0x66, 0x01, 0x44, 0x9a, + 0xaa, 0xf0, 0x72, 0x2d, 0xf0, 0x38, 0x0f, 0x31, 0x19, 0x3c, 0xa4, 0xb2, 0xe4, 0x06, 0xf4, 0xf3, + 0x2f, 0xaa, 0x56, 0x84, 0xbd, 0x83, 0x2e, 0x62, 0x6e, 0xdb, 0x5c, 0x5b, 0x43, 0x7f, 0xb2, 0x00, + 0x4d, 0xae, 0x41, 0x5f, 0x65, 0xa1, 0x56, 0x2b, 0x2f, 0xf8, 0x37, 0xc5, 0xf8, 0xbe, 0xc4, 0xb0, + 0xdc, 0xba, 0xab, 0x5b, 0xae, 0xe6, 0x23, 0xc9, 0xf3, 0x50, 0xaa, 0x2e, 0x21, 0x19, 0x7f, 0x35, + 0x39, 0xb8, 0xb3, 0x3d, 0xd1, 0x67, 0xb6, 0x39, 0x95, 0x40, 0x61, 0xbd, 0x0f, 0xaa, 0x15, 0xc9, + 0x5d, 0x82, 0xd7, 0xfb, 0xd8, 0x34, 0xf0, 0xda, 0x59, 0x0b, 0xd0, 0xe4, 0x55, 0x18, 0xaa, 0x51, + 0xc7, 0xd4, 0x9b, 0x0b, 0x1d, 0xdc, 0x2a, 0x4a, 0xa1, 0x14, 0x5d, 0x84, 0xd7, 0x2d, 0x44, 0x68, + 0x11, 0x32, 0x72, 0x05, 0x8a, 0xb3, 0xa6, 0xe5, 0x3f, 0x61, 0x40, 0x1f, 0xf7, 0x0d, 0xd3, 0xf2, + 0x34, 0x84, 0xaa, 0xff, 0x47, 0x3e, 0x3d, 0x19, 0xd0, 0x31, 0x0c, 0xc7, 0x03, 0xde, 0xf4, 0xc6, + 0x94, 0xa0, 0x78, 0x08, 0x25, 0x58, 0x83, 0xd1, 0xb2, 0xd1, 0x32, 0xad, 0x32, 0xfe, 0x74, 0xe7, + 0x67, 0xca, 0x38, 0xbc, 0xa5, 0x27, 0x74, 0x31, 0xb4, 0xf8, 0x1e, 0x1e, 0x94, 0x97, 0xa1, 0xea, + 0x3a, 0xc7, 0xd5, 0x5b, 0x6b, 0x7a, 0xbd, 0xc1, 0xf3, 0xe8, 0x68, 0x71, 0xa6, 0xea, 0x4f, 0xe7, + 0x77, 0xc9, 0x5f, 0x74, 0x1a, 0xa5, 0xaf, 0x7e, 0x3b, 0xdf, 0x3d, 0x85, 0xd4, 0xa9, 0x14, 0xca, + 0x1f, 0xe5, 0x53, 0x12, 0x3a, 0x1d, 0x4a, 0x12, 0x37, 0xa0, 0x9f, 0xb3, 0x09, 0x5c, 0x6d, 0x71, + 0xc6, 0xe1, 0xca, 0x8a, 0x33, 0x9d, 0x8f, 0x26, 0x0b, 0x70, 0xbe, 0xbc, 0xb6, 0x46, 0x1b, 0x5e, + 0x18, 0x9e, 0x79, 0x21, 0x0c, 0x94, 0xca, 0xc3, 0xd1, 0x0a, 0x7c, 0x18, 0xde, 0x19, 0x03, 0x82, + 0xa4, 0x96, 0x23, 0xcb, 0x70, 0x31, 0x0e, 0xaf, 0x71, 0x33, 0xbd, 0x28, 0x45, 0xa8, 0x4d, 0x70, + 0xe4, 0xff, 0x69, 0x19, 0x65, 0xd3, 0x5a, 0x89, 0xd3, 0x69, 0x6f, 0xb7, 0x56, 0xe2, 0xdc, 0x9a, + 0x5a, 0x4e, 0xfd, 0xbd, 0x82, 0x9c, 0xf7, 0xea, 0xf4, 0x3a, 0x45, 0xdd, 0x89, 0xb8, 0x42, 0xef, + 0x75, 0xc8, 0xbc, 0x2a, 0xa2, 0x7c, 0x18, 0x1d, 0xc7, 0xf7, 0x1a, 0x0c, 0xa2, 0x0c, 0x20, 0x50, + 0xf6, 0xff, 0x0b, 0x28, 0x49, 0x15, 0x8a, 0x65, 0x67, 0x9d, 0x9b, 0xa0, 0xbb, 0x3d, 0x7c, 0xd2, + 0x9d, 0x75, 0x37, 0xfd, 0xe1, 0x13, 0x63, 0xa1, 0xfe, 0xe9, 0x7c, 0x97, 0x54, 0x55, 0xa7, 0x72, + 0x12, 0xf9, 0xb3, 0xf9, 0xac, 0xa4, 0x53, 0x27, 0xd5, 0xbd, 0xeb, 0x23, 0x16, 0xce, 0xc9, 0xf6, + 0x7d, 0x3b, 0x62, 0xe1, 0x64, 0x24, 0xc0, 0x3a, 0x13, 0xce, 0xd7, 0xf3, 0x59, 0x39, 0xc0, 0x4e, + 0xed, 0x2c, 0x93, 0x91, 0x76, 0xec, 0x4c, 0x57, 0x7e, 0x21, 0x9f, 0x99, 0x79, 0xed, 0x4c, 0x3a, + 0xea, 0x37, 0xf2, 0x99, 0x99, 0xe3, 0x4e, 0xe5, 0x50, 0x4a, 0xd5, 0x96, 0xb3, 0xb1, 0x24, 0xa4, + 0xf3, 0x07, 0xf9, 0xf4, 0x5c, 0x7d, 0xc7, 0xa0, 0x2a, 0x47, 0xe1, 0x25, 0xe7, 0x0b, 0xb4, 0x78, + 0x28, 0x81, 0xf6, 0x1e, 0xa9, 0x40, 0x8f, 0x6d, 0xec, 0x7d, 0x52, 0x05, 0x7a, 0x04, 0x83, 0xf7, + 0x34, 0x0b, 0xf4, 0x4f, 0x15, 0x92, 0xf9, 0x29, 0x4f, 0xe5, 0x11, 0xe5, 0x24, 0xf4, 0xfb, 0x67, + 0x18, 0x42, 0xa0, 0x7b, 0xee, 0x4e, 0xbf, 0x1c, 0x79, 0x17, 0x46, 0x43, 0x59, 0xca, 0xd1, 0xa3, + 0xf0, 0x0a, 0xa2, 0xc1, 0x50, 0xf5, 0x0f, 0x18, 0x4e, 0x84, 0x39, 0x89, 0x53, 0xab, 0x3f, 0x28, + 0x24, 0x93, 0x7c, 0x9e, 0xf5, 0xc6, 0x01, 0x7b, 0x63, 0x05, 0x2e, 0x4e, 0x75, 0x1c, 0x87, 0x5a, + 0x5e, 0x7a, 0xa7, 0xe0, 0xe1, 0x72, 0x83, 0x53, 0xd4, 0x93, 0x9d, 0x93, 0x51, 0x98, 0xb1, 0x15, + 0x1e, 0xf2, 0x71, 0xb6, 0x7d, 0x21, 0xdb, 0x0e, 0xa7, 0x48, 0x63, 0x9b, 0x5e, 0x58, 0xfd, 0xbb, + 0xf9, 0x64, 0x5a, 0xd6, 0xb3, 0xae, 0x3f, 0x58, 0xd7, 0xbf, 0x30, 0xcf, 0x93, 0x4f, 0xdd, 0x37, + 0x2d, 0x83, 0x3c, 0x05, 0x17, 0x56, 0x6a, 0xd3, 0x5a, 0xfd, 0x7e, 0x75, 0xa1, 0x52, 0x5f, 0x59, + 0xa8, 0x2d, 0x4d, 0x4f, 0x55, 0x67, 0xaa, 0xd3, 0x95, 0xb1, 0x1e, 0x72, 0x0e, 0x46, 0x43, 0xd4, + 0xec, 0xca, 0x7c, 0x79, 0x61, 0x2c, 0x47, 0xc6, 0x61, 0x38, 0x04, 0x4e, 0x2e, 0x2e, 0x8f, 0xe5, + 0x5f, 0xf8, 0x0c, 0x0c, 0xe2, 0xed, 0x3a, 0xbf, 0x69, 0x20, 0x43, 0xd0, 0xbf, 0x38, 0x59, 0x9b, + 0xd6, 0x1e, 0x20, 0x13, 0x80, 0x52, 0x65, 0x7a, 0x81, 0x31, 0xcc, 0xbd, 0xf0, 0x7f, 0xe7, 0x00, + 0x6a, 0x33, 0xcb, 0x4b, 0x82, 0x70, 0x10, 0xfa, 0xaa, 0x0b, 0x0f, 0xca, 0x73, 0x55, 0x46, 0xd7, + 0x0f, 0xc5, 0xc5, 0xa5, 0x69, 0x56, 0xc3, 0x00, 0xf4, 0x4e, 0xcd, 0x2d, 0xd6, 0xa6, 0xc7, 0xf2, + 0x0c, 0xa8, 0x4d, 0x97, 0x2b, 0x63, 0x05, 0x06, 0x7c, 0xa8, 0x55, 0x97, 0xa7, 0xc7, 0x8a, 0xec, + 0xcf, 0xb9, 0xda, 0x72, 0x79, 0x79, 0xac, 0x97, 0xfd, 0x39, 0x83, 0x7f, 0x96, 0x18, 0xb3, 0xda, + 0xf4, 0x32, 0xfe, 0xe8, 0x63, 0x4d, 0x98, 0xf1, 0x7f, 0xf5, 0x33, 0x14, 0x63, 0x5d, 0xa9, 0x6a, + 0x63, 0x03, 0xec, 0x07, 0x63, 0xc9, 0x7e, 0x00, 0x6b, 0x9c, 0x36, 0x3d, 0xbf, 0xf8, 0x60, 0x7a, + 0x6c, 0x90, 0xf1, 0x9a, 0xbf, 0xcf, 0xc0, 0x43, 0xec, 0x4f, 0x6d, 0x9e, 0xfd, 0x39, 0xcc, 0x38, + 0x69, 0xd3, 0xe5, 0xb9, 0xa5, 0xf2, 0xf2, 0xec, 0xd8, 0x08, 0x6b, 0x0f, 0xf2, 0x1c, 0xe5, 0x25, + 0x17, 0xca, 0xf3, 0xd3, 0x63, 0x63, 0x82, 0xa6, 0x32, 0x57, 0x5d, 0xb8, 0x3f, 0x36, 0x8e, 0x0d, + 0x79, 0x7f, 0x1e, 0x7f, 0x10, 0x56, 0x00, 0xff, 0x3a, 0xf7, 0xc2, 0x0f, 0x43, 0x69, 0xb1, 0x86, + 0xf7, 0x69, 0x97, 0xe0, 0xdc, 0x62, 0xad, 0xbe, 0xfc, 0xfe, 0xd2, 0x74, 0x4c, 0xde, 0xe3, 0x30, + 0xec, 0x23, 0xe6, 0xaa, 0x0b, 0x2b, 0x5f, 0xe2, 0xd2, 0xf6, 0x41, 0xf3, 0xe5, 0xa9, 0xc5, 0xda, + 0x58, 0x9e, 0xf5, 0x8a, 0x0f, 0x7a, 0x58, 0x5d, 0xa8, 0x2c, 0x3e, 0xac, 0x8d, 0x15, 0x5e, 0x78, + 0x0c, 0x43, 0x3c, 0x75, 0xd7, 0xa2, 0x63, 0xae, 0x9b, 0x16, 0x79, 0x06, 0x9e, 0xaa, 0x4c, 0x3f, + 0xa8, 0x4e, 0x4d, 0xd7, 0x17, 0xb5, 0xea, 0xdd, 0xea, 0x42, 0xac, 0xa6, 0x0b, 0x30, 0x1e, 0x45, + 0x97, 0x97, 0xaa, 0x63, 0x39, 0x72, 0x11, 0x48, 0x14, 0x7c, 0xaf, 0x3c, 0x3f, 0x33, 0x96, 0x27, + 0x0a, 0x9c, 0x8f, 0xc2, 0xab, 0x0b, 0xcb, 0x2b, 0x0b, 0xd3, 0x63, 0x85, 0x17, 0xfe, 0x62, 0x0e, + 0x2e, 0xa4, 0x86, 0x77, 0x24, 0x2a, 0x5c, 0x9d, 0x9e, 0x2b, 0xd7, 0x96, 0xab, 0x53, 0xb5, 0xe9, + 0xb2, 0x36, 0x35, 0x5b, 0x9f, 0x2a, 0x2f, 0x4f, 0xdf, 0x5d, 0xd4, 0xde, 0xaf, 0xdf, 0x9d, 0x5e, + 0x98, 0xd6, 0xca, 0x73, 0x63, 0x3d, 0xe4, 0x79, 0x98, 0xc8, 0xa0, 0xa9, 0x4d, 0x4f, 0xad, 0x68, + 0xd5, 0xe5, 0xf7, 0xc7, 0x72, 0xe4, 0x39, 0x78, 0x26, 0x93, 0x88, 0xfd, 0x1e, 0xcb, 0x93, 0xab, + 0x70, 0x39, 0x8b, 0xe4, 0xbd, 0xb9, 0xb1, 0xc2, 0x0b, 0x3f, 0x9f, 0x03, 0x92, 0x8c, 0xcf, 0x47, + 0x9e, 0x85, 0x2b, 0x4c, 0x2f, 0xea, 0xd9, 0x0d, 0x7c, 0x0e, 0x9e, 0x49, 0xa5, 0x90, 0x9a, 0x37, + 0x01, 0x4f, 0x67, 0x90, 0x88, 0xc6, 0x5d, 0x01, 0x25, 0x9d, 0x00, 0x9b, 0xf6, 0x5b, 0x39, 0xb8, + 0x90, 0x7a, 0xb9, 0x47, 0xae, 0xc3, 0xa7, 0xca, 0x95, 0x79, 0xd6, 0x37, 0x53, 0xcb, 0xd5, 0xc5, + 0x85, 0x5a, 0x7d, 0x7e, 0xa6, 0x5c, 0x67, 0xda, 0xb7, 0x52, 0x8b, 0xf5, 0xe6, 0x35, 0x50, 0xbb, + 0x50, 0x4e, 0xcd, 0x96, 0x17, 0xee, 0xb2, 0xe1, 0x47, 0x3e, 0x05, 0xcf, 0x66, 0xd2, 0x4d, 0x2f, + 0x94, 0x27, 0xe7, 0xa6, 0x2b, 0x63, 0x79, 0xf2, 0x69, 0x78, 0x2e, 0x93, 0xaa, 0x52, 0xad, 0x71, + 0xb2, 0xc2, 0x64, 0xe5, 0xbb, 0xff, 0xd3, 0xd5, 0x9e, 0xef, 0xfe, 0xe1, 0xd5, 0xdc, 0xdf, 0xff, + 0xc3, 0xab, 0xb9, 0x7f, 0xfa, 0x87, 0x57, 0x73, 0x5f, 0xbe, 0xbd, 0x9f, 0xb8, 0x8b, 0x7c, 0xca, + 0x5a, 0x2d, 0xe1, 0x41, 0xfb, 0x2b, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x08, 0x81, 0x99, + 0x4f, 0x78, 0x74, 0x01, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -30219,6 +30427,75 @@ func (m *OneOf_StaticHostUserDelete) MarshalToSizedBuffer(dAtA []byte) (int, err } return len(dAtA) - i, nil } +func (m *OneOf_CrownJewelCreate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_CrownJewelCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CrownJewelCreate != nil { + { + size, err := m.CrownJewelCreate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xb2 + } + return len(dAtA) - i, nil +} +func (m *OneOf_CrownJewelUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_CrownJewelUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CrownJewelUpdate != nil { + { + size, err := m.CrownJewelUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xba + } + return len(dAtA) - i, nil +} +func (m *OneOf_CrownJewelDelete) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_CrownJewelDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.CrownJewelDelete != nil { + { + size, err := m.CrownJewelDelete.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xb + i-- + dAtA[i] = 0xc2 + } + return len(dAtA) - i, nil +} func (m *StreamStatus) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -30243,12 +30520,12 @@ func (m *StreamStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n642, err642 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) - if err642 != nil { - return 0, err642 + n645, err645 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) + if err645 != nil { + return 0, err645 } - i -= n642 - i = encodeVarintEvents(dAtA, i, uint64(n642)) + i -= n645 + i = encodeVarintEvents(dAtA, i, uint64(n645)) i-- dAtA[i] = 0x1a if m.LastEventIndex != 0 { @@ -30407,12 +30684,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xc2 } } - n646, err646 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) - if err646 != nil { - return 0, err646 + n649, err649 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) + if err649 != nil { + return 0, err649 } - i -= n646 - i = encodeVarintEvents(dAtA, i, uint64(n646)) + i -= n649 + i = encodeVarintEvents(dAtA, i, uint64(n649)) i-- dAtA[i] = 0x1 i-- @@ -30560,12 +30837,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x4a } - n650, err650 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err650 != nil { - return 0, err650 + n653, err653 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err653 != nil { + return 0, err653 } - i -= n650 - i = encodeVarintEvents(dAtA, i, uint64(n650)) + i -= n653 + i = encodeVarintEvents(dAtA, i, uint64(n653)) i-- dAtA[i] = 0x42 if len(m.KubernetesUsers) > 0 { @@ -36533,6 +36810,258 @@ func (m *StaticHostUserDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *CrownJewelCreate) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CrownJewelCreate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CrownJewelCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.CrownJewelQuery) > 0 { + i -= len(m.CrownJewelQuery) + copy(dAtA[i:], m.CrownJewelQuery) + i = encodeVarintEvents(dAtA, i, uint64(len(m.CrownJewelQuery))) + i-- + dAtA[i] = 0x32 + } + { + size, err := m.ResourceMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + { + size, err := m.ConnectionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.Status.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *CrownJewelUpdate) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CrownJewelUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CrownJewelUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.UpdatedCrownJewelQuery) > 0 { + i -= len(m.UpdatedCrownJewelQuery) + copy(dAtA[i:], m.UpdatedCrownJewelQuery) + i = encodeVarintEvents(dAtA, i, uint64(len(m.UpdatedCrownJewelQuery))) + i-- + dAtA[i] = 0x3a + } + if len(m.CurrentCrownJewelQuery) > 0 { + i -= len(m.CurrentCrownJewelQuery) + copy(dAtA[i:], m.CurrentCrownJewelQuery) + i = encodeVarintEvents(dAtA, i, uint64(len(m.CurrentCrownJewelQuery))) + i-- + dAtA[i] = 0x32 + } + { + size, err := m.ResourceMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + { + size, err := m.ConnectionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.Status.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *CrownJewelDelete) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CrownJewelDelete) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CrownJewelDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + { + size, err := m.ResourceMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + { + size, err := m.ConnectionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.Status.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { offset -= sovEvents(v) base := offset @@ -42522,6 +43051,42 @@ func (m *OneOf_StaticHostUserDelete) Size() (n int) { } return n } +func (m *OneOf_CrownJewelCreate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CrownJewelCreate != nil { + l = m.CrownJewelCreate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_CrownJewelUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CrownJewelUpdate != nil { + l = m.CrownJewelUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_CrownJewelDelete) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CrownJewelDelete != nil { + l = m.CrownJewelDelete.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} func (m *StreamStatus) Size() (n int) { if m == nil { return 0 @@ -44795,6 +45360,84 @@ func (m *StaticHostUserDelete) Size() (n int) { return n } +func (m *CrownJewelCreate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ConnectionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.CrownJewelQuery) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *CrownJewelUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ConnectionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.CurrentCrownJewelQuery) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.UpdatedCrownJewelQuery) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *CrownJewelDelete) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.Status.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ConnectionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func sovEvents(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -82687,111 +83330,9 @@ func (m *OneOf) Unmarshal(dAtA []byte) error { } m.Event = &OneOf_StaticHostUserDelete{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *StreamStatus) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: StreamStatus: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: StreamStatus: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UploadID", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.UploadID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field LastEventIndex", wireType) - } - m.LastEventIndex = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.LastEventIndex |= int64(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 3: + case 182: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field LastUploadTime", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrownJewelCreate", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82818,64 +83359,15 @@ func (m *StreamStatus) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.LastUploadTime, dAtA[iNdEx:postIndex]); err != nil { + v := &CrownJewelCreate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Event = &OneOf_CrownJewelCreate{v} iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SessionUpload) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SessionUpload: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SessionUpload: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 183: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrownJewelUpdate", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82902,13 +83394,15 @@ func (m *SessionUpload) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &CrownJewelUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } + m.Event = &OneOf_CrownJewelUpdate{v} iNdEx = postIndex - case 2: + case 184: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrownJewelDelete", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -82935,41 +83429,11 @@ func (m *SessionUpload) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + v := &CrownJewelDelete{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionURL", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SessionURL = string(dAtA[iNdEx:postIndex]) + m.Event = &OneOf_CrownJewelDelete{v} iNdEx = postIndex default: iNdEx = preIndex @@ -82993,7 +83457,7 @@ func (m *SessionUpload) Unmarshal(dAtA []byte) error { } return nil } -func (m *Identity) Unmarshal(dAtA []byte) error { +func (m *StreamStatus) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -83016,15 +83480,15 @@ func (m *Identity) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: Identity: wiretype end group for non-group") + return fmt.Errorf("proto: StreamStatus: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: Identity: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: StreamStatus: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field User", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UploadID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83052,13 +83516,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.User = string(dAtA[iNdEx:postIndex]) + m.UploadID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Impersonator", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field LastEventIndex", wireType) } - var stringLen uint64 + m.LastEventIndex = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83068,29 +83532,16 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.LastEventIndex |= int64(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Impersonator = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field LastUploadTime", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83100,29 +83551,81 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.LastUploadTime, dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 4: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SessionUpload) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SessionUpload: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SessionUpload: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Usage", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83132,29 +83635,30 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Usage = append(m.Usage, string(dAtA[iNdEx:postIndex])) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 5: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Logins", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83164,27 +83668,28 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Logins = append(m.Logins, string(dAtA[iNdEx:postIndex])) + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KubernetesGroups", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionURL", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83212,11 +83717,62 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.KubernetesGroups = append(m.KubernetesGroups, string(dAtA[iNdEx:postIndex])) + m.SessionURL = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 7: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Identity) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Identity: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Identity: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUsers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field User", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83244,13 +83800,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.KubernetesUsers = append(m.KubernetesUsers, string(dAtA[iNdEx:postIndex])) + m.User = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Expires", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Impersonator", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83260,28 +83816,27 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Expires, dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Impersonator = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 9: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteToCluster", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83309,11 +83864,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RouteToCluster = string(dAtA[iNdEx:postIndex]) + m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 10: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KubernetesCluster", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Usage", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83341,13 +83896,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.KubernetesCluster = string(dAtA[iNdEx:postIndex]) + m.Usage = append(m.Usage, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 11: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Traits", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Logins", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83357,30 +83912,29 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Traits.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Logins = append(m.Logins, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 12: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteToApp", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesGroups", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83390,31 +83944,27 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.RouteToApp == nil { - m.RouteToApp = &RouteToApp{} - } - if err := m.RouteToApp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.KubernetesGroups = append(m.KubernetesGroups, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 13: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field TeleportCluster", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesUsers", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83442,11 +83992,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.TeleportCluster = string(dAtA[iNdEx:postIndex]) + m.KubernetesUsers = append(m.KubernetesUsers, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 14: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RouteToDatabase", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Expires", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83473,16 +84023,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.RouteToDatabase == nil { - m.RouteToDatabase = &RouteToDatabase{} - } - if err := m.RouteToDatabase.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.Expires, dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 15: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseNames", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteToCluster", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83510,11 +84057,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DatabaseNames = append(m.DatabaseNames, string(dAtA[iNdEx:postIndex])) + m.RouteToCluster = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 16: + case 10: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseUsers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field KubernetesCluster", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83542,13 +84089,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DatabaseUsers = append(m.DatabaseUsers, string(dAtA[iNdEx:postIndex])) + m.KubernetesCluster = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 17: + case 11: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field MFADeviceUUID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Traits", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83558,29 +84105,30 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.MFADeviceUUID = string(dAtA[iNdEx:postIndex]) + if err := m.Traits.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 18: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClientIP", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteToApp", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83590,27 +84138,31 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.ClientIP = string(dAtA[iNdEx:postIndex]) + if m.RouteToApp == nil { + m.RouteToApp = &RouteToApp{} + } + if err := m.RouteToApp.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 19: + case 13: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARNs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field TeleportCluster", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83638,63 +84190,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AWSRoleARNs = append(m.AWSRoleARNs, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 20: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AccessRequests", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.AccessRequests = append(m.AccessRequests, string(dAtA[iNdEx:postIndex])) + m.TeleportCluster = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 21: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DisallowReissue", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.DisallowReissue = bool(v != 0) - case 22: + case 14: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AllowedResourceIDs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RouteToDatabase", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -83721,16 +84221,18 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AllowedResourceIDs = append(m.AllowedResourceIDs, ResourceID{}) - if err := m.AllowedResourceIDs[len(m.AllowedResourceIDs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.RouteToDatabase == nil { + m.RouteToDatabase = &RouteToDatabase{} + } + if err := m.RouteToDatabase.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 23: + case 15: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PreviousIdentityExpires", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseNames", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83740,28 +84242,27 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.PreviousIdentityExpires, dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.DatabaseNames = append(m.DatabaseNames, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 24: + case 16: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AzureIdentities", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseUsers", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83789,11 +84290,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AzureIdentities = append(m.AzureIdentities, string(dAtA[iNdEx:postIndex])) + m.DatabaseUsers = append(m.DatabaseUsers, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 25: + case 17: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GCPServiceAccounts", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field MFADeviceUUID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83821,11 +84322,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GCPServiceAccounts = append(m.GCPServiceAccounts, string(dAtA[iNdEx:postIndex])) + m.MFADeviceUUID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 26: + case 18: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PrivateKeyPolicy", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClientIP", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83853,11 +84354,11 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PrivateKeyPolicy = string(dAtA[iNdEx:postIndex]) + m.ClientIP = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 27: + case 19: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARNs", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -83885,13 +84386,13 @@ func (m *Identity) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.BotName = string(dAtA[iNdEx:postIndex]) + m.AWSRoleARNs = append(m.AWSRoleARNs, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 28: + case 20: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DeviceExtensions", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AccessRequests", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83901,33 +84402,29 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.DeviceExtensions == nil { - m.DeviceExtensions = &DeviceExtensions{} - } - if err := m.DeviceExtensions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.AccessRequests = append(m.AccessRequests, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 29: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field BotInstanceID", wireType) + case 21: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field DisallowReissue", wireType) } - var stringLen uint64 + var v int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -83937,80 +84434,17 @@ func (m *Identity) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + v |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.BotInstanceID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *RouteToApp) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: RouteToApp: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: RouteToApp: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + m.DisallowReissue = bool(v != 0) + case 22: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AllowedResourceIDs", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84020,29 +84454,31 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Name = string(dAtA[iNdEx:postIndex]) + m.AllowedResourceIDs = append(m.AllowedResourceIDs, ResourceID{}) + if err := m.AllowedResourceIDs[len(m.AllowedResourceIDs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 2: + case 23: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PreviousIdentityExpires", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84052,27 +84488,28 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SessionID = string(dAtA[iNdEx:postIndex]) + if err := github_com_gogo_protobuf_types.StdTimeUnmarshal(&m.PreviousIdentityExpires, dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 3: + case 24: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PublicAddr", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureIdentities", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84100,11 +84537,11 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PublicAddr = string(dAtA[iNdEx:postIndex]) + m.AzureIdentities = append(m.AzureIdentities, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 4: + case 25: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GCPServiceAccounts", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84132,11 +84569,11 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ClusterName = string(dAtA[iNdEx:postIndex]) + m.GCPServiceAccounts = append(m.GCPServiceAccounts, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 5: + case 26: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARN", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PrivateKeyPolicy", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84164,11 +84601,11 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AWSRoleARN = string(dAtA[iNdEx:postIndex]) + m.PrivateKeyPolicy = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 6: + case 27: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AzureIdentity", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84196,13 +84633,13 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AzureIdentity = string(dAtA[iNdEx:postIndex]) + m.BotName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 7: + case 28: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GCPServiceAccount", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DeviceExtensions", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84212,27 +84649,31 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.GCPServiceAccount = string(dAtA[iNdEx:postIndex]) + if m.DeviceExtensions == nil { + m.DeviceExtensions = &DeviceExtensions{} + } + if err := m.DeviceExtensions.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 8: + case 29: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field URI", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field BotInstanceID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84260,7 +84701,7 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.URI = string(dAtA[iNdEx:postIndex]) + m.BotInstanceID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -84284,7 +84725,7 @@ func (m *RouteToApp) Unmarshal(dAtA []byte) error { } return nil } -func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { +func (m *RouteToApp) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84307,15 +84748,15 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: RouteToDatabase: wiretype end group for non-group") + return fmt.Errorf("proto: RouteToApp: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: RouteToDatabase: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteToApp: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Name", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84343,11 +84784,11 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ServiceName = string(dAtA[iNdEx:postIndex]) + m.Name = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84375,11 +84816,11 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Protocol = string(dAtA[iNdEx:postIndex]) + m.SessionID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PublicAddr", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84407,11 +84848,11 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Username = string(dAtA[iNdEx:postIndex]) + m.PublicAddr = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Database", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84439,11 +84880,11 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Database = string(dAtA[iNdEx:postIndex]) + m.ClusterName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AWSRoleARN", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84471,62 +84912,11 @@ func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + m.AWSRoleARN = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: DeviceExtensions: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: DeviceExtensions: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DeviceId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AzureIdentity", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84554,11 +84944,11 @@ func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.DeviceId = string(dAtA[iNdEx:postIndex]) + m.AzureIdentity = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 2: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AssetTag", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field GCPServiceAccount", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84586,11 +84976,11 @@ func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AssetTag = string(dAtA[iNdEx:postIndex]) + m.GCPServiceAccount = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CredentialId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field URI", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84618,7 +85008,7 @@ func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.CredentialId = string(dAtA[iNdEx:postIndex]) + m.URI = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -84642,7 +85032,7 @@ func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { } return nil } -func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { +func (m *RouteToDatabase) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -84665,17 +85055,17 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AccessRequestResourceSearch: wiretype end group for non-group") + return fmt.Errorf("proto: RouteToDatabase: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AccessRequestResourceSearch: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: RouteToDatabase: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ServiceName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84685,30 +85075,29 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.ServiceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Protocol", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84718,28 +85107,27 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Protocol = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SearchAsRoles", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Username", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84767,11 +85155,11 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SearchAsRoles = append(m.SearchAsRoles, string(dAtA[iNdEx:postIndex])) + m.Username = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceType", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Database", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84799,11 +85187,11 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.ResourceType = string(dAtA[iNdEx:postIndex]) + m.Database = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Roles", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84831,13 +85219,64 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Namespace = string(dAtA[iNdEx:postIndex]) + m.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 6: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DeviceExtensions) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DeviceExtensions: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DeviceExtensions: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DeviceId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -84847,122 +85286,27 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Labels == nil { - m.Labels = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthEvents - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthEvents - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthEvents - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthEvents - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.Labels[mapkey] = mapvalue + m.DeviceId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 7: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PredicateExpression", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AssetTag", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -84990,11 +85334,11 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PredicateExpression = string(dAtA[iNdEx:postIndex]) + m.AssetTag = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SearchKeywords", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CredentialId", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -85022,7 +85366,7 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SearchKeywords = append(m.SearchKeywords, string(dAtA[iNdEx:postIndex])) + m.CredentialId = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -85046,7 +85390,7 @@ func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { +func (m *AccessRequestResourceSearch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85069,10 +85413,10 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementPrepare: wiretype end group for non-group") + return fmt.Errorf("proto: AccessRequestResourceSearch: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementPrepare: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AccessRequestResourceSearch: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -85143,9 +85487,9 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SearchAsRoles", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -85155,28 +85499,91 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SearchAsRoles = append(m.SearchAsRoles, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ResourceType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Namespace", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Namespace = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Labels", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -85203,13 +85610,107 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + if m.Labels == nil { + m.Labels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthEvents + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthEvents + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthEvents + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthEvents + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } } + m.Labels[mapkey] = mapvalue iNdEx = postIndex - case 5: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field PredicateExpression", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -85237,7 +85738,39 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Query = string(dAtA[iNdEx:postIndex]) + m.PredicateExpression = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SearchKeywords", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SearchKeywords = append(m.SearchKeywords, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -85261,7 +85794,7 @@ func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementPrepare) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85284,10 +85817,10 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementExecute: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementPrepare: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementExecute: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementPrepare: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -85423,27 +85956,8 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) - } - m.StatementID = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -85471,7 +85985,7 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) + m.Query = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -85495,7 +86009,7 @@ func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementExecute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85518,10 +86032,10 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementSendLongData: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementExecute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementSendLongData: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementExecute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -85676,10 +86190,10 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } } case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ParameterID", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) } - m.ParameterID = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -85689,30 +86203,24 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.ParameterID |= uint32(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - case 7: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field DataSize", wireType) + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents } - m.DataSize = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.DataSize |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -85735,7 +86243,7 @@ func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementSendLongData) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -85758,10 +86266,10 @@ func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementClose: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementSendLongData: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementClose: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementSendLongData: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -85915,161 +86423,11 @@ func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { break } } - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementReset: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementReset: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ParameterID", wireType) } - var msglen int + m.ParameterID = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -86079,30 +86437,16 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.ParameterID |= uint32(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: + case 7: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DataSize", wireType) } - m.StatementID = 0 + m.DataSize = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -86112,7 +86456,7 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.StatementID |= uint32(b&0x7F) << shift + m.DataSize |= uint32(b&0x7F) << shift if b < 0x80 { break } @@ -86139,7 +86483,7 @@ func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementClose) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86162,10 +86506,10 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementFetch: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementClose: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementFetch: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementClose: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -86319,25 +86663,6 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { break } } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field RowsCount", wireType) - } - m.RowsCount = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.RowsCount |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -86360,7 +86685,7 @@ func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementReset) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86383,10 +86708,10 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLStatementBulkExecute: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementReset: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLStatementBulkExecute: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementReset: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -86540,38 +86865,6 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { break } } - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -86594,7 +86887,7 @@ func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementFetch) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86617,10 +86910,10 @@ func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLInitDB: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementFetch: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLInitDB: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementFetch: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -86756,10 +87049,10 @@ func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) } - var stringLen uint64 + m.StatementID = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -86769,24 +87062,30 @@ func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.StatementID |= uint32(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field RowsCount", wireType) } - if postIndex > l { - return io.ErrUnexpectedEOF + m.RowsCount = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.RowsCount |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - m.SchemaName = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -86809,7 +87108,7 @@ func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { +func (m *MySQLStatementBulkExecute) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -86832,10 +87131,10 @@ func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLCreateDB: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLStatementBulkExecute: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLCreateDB: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLStatementBulkExecute: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -86971,8 +87270,27 @@ func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatementID", wireType) + } + m.StatementID = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatementID |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -87000,7 +87318,7 @@ func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SchemaName = string(dAtA[iNdEx:postIndex]) + m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex default: iNdEx = preIndex @@ -87024,7 +87342,7 @@ func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLDropDB) Unmarshal(dAtA []byte) error { +func (m *MySQLInitDB) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87047,10 +87365,10 @@ func (m *MySQLDropDB) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLDropDB: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLInitDB: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLDropDB: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLInitDB: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -87239,7 +87557,7 @@ func (m *MySQLDropDB) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { +func (m *MySQLCreateDB) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87262,10 +87580,10 @@ func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLShutDown: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLCreateDB: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLShutDown: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLCreateDB: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -87400,6 +87718,38 @@ func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SchemaName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -87422,7 +87772,7 @@ func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { +func (m *MySQLDropDB) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87445,10 +87795,10 @@ func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLProcessKill: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLDropDB: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLProcessKill: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLDropDB: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -87584,10 +87934,10 @@ func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field ProcessID", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SchemaName", wireType) } - m.ProcessID = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -87597,11 +87947,24 @@ func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.ProcessID |= uint32(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SchemaName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -87624,7 +87987,7 @@ func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLDebug) Unmarshal(dAtA []byte) error { +func (m *MySQLShutDown) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87647,10 +88010,10 @@ func (m *MySQLDebug) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLDebug: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLShutDown: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLDebug: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLShutDown: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -87807,7 +88170,7 @@ func (m *MySQLDebug) Unmarshal(dAtA []byte) error { } return nil } -func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { +func (m *MySQLProcessKill) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -87830,10 +88193,10 @@ func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: MySQLRefresh: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLProcessKill: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: MySQLRefresh: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLProcessKill: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -87969,10 +88332,10 @@ func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Subcommand", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field ProcessID", wireType) } - var stringLen uint64 + m.ProcessID = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -87982,24 +88345,11 @@ func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.ProcessID |= uint32(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Subcommand = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -88022,7 +88372,7 @@ func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { } return nil } -func (m *SQLServerRPCRequest) Unmarshal(dAtA []byte) error { +func (m *MySQLDebug) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88045,10 +88395,10 @@ func (m *SQLServerRPCRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SQLServerRPCRequest: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLDebug: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SQLServerRPCRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLDebug: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -88183,70 +88533,6 @@ func (m *SQLServerRPCRequest) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Procname", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Procname = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -88269,7 +88555,7 @@ func (m *SQLServerRPCRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { +func (m *MySQLRefresh) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88292,10 +88578,10 @@ func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DatabaseSessionMalformedPacket: wiretype end group for non-group") + return fmt.Errorf("proto: MySQLRefresh: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DatabaseSessionMalformedPacket: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: MySQLRefresh: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -88432,9 +88718,9 @@ func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Payload", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Subcommand", wireType) } - var byteLen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -88444,25 +88730,23 @@ func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + byteLen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Payload = append(m.Payload[:0], dAtA[iNdEx:postIndex]...) - if m.Payload == nil { - m.Payload = []byte{} - } + m.Subcommand = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -88486,7 +88770,7 @@ func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { } return nil } -func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { +func (m *SQLServerRPCRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88509,10 +88793,10 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ElasticsearchRequest: wiretype end group for non-group") + return fmt.Errorf("proto: SQLServerRPCRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ElasticsearchRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SQLServerRPCRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -88649,7 +88933,7 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Procname", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -88677,11 +88961,11 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Path = string(dAtA[iNdEx:postIndex]) + m.Procname = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RawQuery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Parameters", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -88709,13 +88993,64 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RawQuery = string(dAtA[iNdEx:postIndex]) + m.Parameters = append(m.Parameters, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 7: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *DatabaseSessionMalformedPacket) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: DatabaseSessionMalformedPacket: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: DatabaseSessionMalformedPacket: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Method", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -88725,29 +89060,30 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Method = string(dAtA[iNdEx:postIndex]) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 8: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var byteLen int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -88757,29 +89093,28 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - byteLen |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - if byteLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + byteLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Body = append(m.Body[:0], dAtA[iNdEx:postIndex]...) - if m.Body == nil { - m.Body = []byte{} + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } iNdEx = postIndex - case 9: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -88806,34 +89141,15 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Headers.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 10: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Category", wireType) - } - m.Category = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.Category |= ElasticsearchCategory(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 11: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -88843,29 +89159,30 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Target = string(dAtA[iNdEx:postIndex]) + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 12: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Payload", wireType) } - var stringLen uint64 + var byteLen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -88875,43 +89192,26 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + byteLen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if byteLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + byteLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Query = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 13: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatusCode", wireType) - } - m.StatusCode = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.StatusCode |= uint32(b&0x7F) << shift - if b < 0x80 { - break - } + m.Payload = append(m.Payload[:0], dAtA[iNdEx:postIndex]...) + if m.Payload == nil { + m.Payload = []byte{} } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -88934,7 +89234,7 @@ func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *OpenSearchRequest) Unmarshal(dAtA []byte) error { +func (m *ElasticsearchRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -88957,10 +89257,10 @@ func (m *OpenSearchRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OpenSearchRequest: wiretype end group for non-group") + return fmt.Errorf("proto: ElasticsearchRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OpenSearchRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ElasticsearchRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -89272,7 +89572,7 @@ func (m *OpenSearchRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.Category |= OpenSearchCategory(b&0x7F) << shift + m.Category |= ElasticsearchCategory(b&0x7F) << shift if b < 0x80 { break } @@ -89382,7 +89682,7 @@ func (m *OpenSearchRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { +func (m *OpenSearchRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -89405,10 +89705,10 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: DynamoDBRequest: wiretype end group for non-group") + return fmt.Errorf("proto: OpenSearchRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: DynamoDBRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: OpenSearchRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -89544,10 +89844,10 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field StatusCode", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } - m.StatusCode = 0 + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -89557,14 +89857,27 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.StatusCode |= uint32(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RawQuery", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -89592,11 +89905,11 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Path = string(dAtA[iNdEx:postIndex]) + m.RawQuery = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field RawQuery", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Method", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -89624,13 +89937,13 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.RawQuery = string(dAtA[iNdEx:postIndex]) + m.Method = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Method", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType) } - var stringLen uint64 + var byteLen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -89640,25 +89953,79 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + byteLen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if byteLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + byteLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Method = string(dAtA[iNdEx:postIndex]) + m.Body = append(m.Body[:0], dAtA[iNdEx:postIndex]...) + if m.Body == nil { + m.Body = []byte{} + } iNdEx = postIndex case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Headers", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Headers.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 10: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Category", wireType) + } + m.Category = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.Category |= OpenSearchCategory(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 11: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) } @@ -89690,11 +90057,11 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } m.Target = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 10: + case 12: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Query", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -89704,28 +90071,43 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Body == nil { - m.Body = &Struct{} + m.Query = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 13: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatusCode", wireType) } - if err := m.Body.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.StatusCode = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.StatusCode |= uint32(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -89748,7 +90130,7 @@ func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { +func (m *DynamoDBRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -89771,10 +90153,10 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AppSessionDynamoDBRequest: wiretype end group for non-group") + return fmt.Errorf("proto: DynamoDBRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AppSessionDynamoDBRequest: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: DynamoDBRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -89845,7 +90227,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89872,13 +90254,13 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.AppMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AWSRequestMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -89905,43 +90287,11 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.AWSRequestMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionChunkID", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.SessionChunkID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 6: if wireType != 0 { return fmt.Errorf("proto: wrong wireType = %d for field StatusCode", wireType) } @@ -89960,7 +90310,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { break } } - case 7: + case 6: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } @@ -89992,7 +90342,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { } m.Path = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: + case 7: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field RawQuery", wireType) } @@ -90024,7 +90374,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { } m.RawQuery = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 9: + case 8: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Method", wireType) } @@ -90056,7 +90406,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { } m.Method = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 10: + case 9: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) } @@ -90088,7 +90438,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { } m.Target = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 11: + case 10: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType) } @@ -90146,7 +90496,7 @@ func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { } return nil } -func (m *UpgradeWindowStartMetadata) Unmarshal(dAtA []byte) error { +func (m *AppSessionDynamoDBRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -90169,17 +90519,17 @@ func (m *UpgradeWindowStartMetadata) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: UpgradeWindowStartMetadata: wiretype end group for non-group") + return fmt.Errorf("proto: AppSessionDynamoDBRequest: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: UpgradeWindowStartMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AppSessionDynamoDBRequest: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UpgradeWindowStart", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -90189,78 +90539,28 @@ func (m *UpgradeWindowStartMetadata) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.UpgradeWindowStart = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: UpgradeWindowStartUpdate: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: UpgradeWindowStartUpdate: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90287,13 +90587,13 @@ func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90320,13 +90620,13 @@ func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.AppMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 3: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AWSRequestMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90353,15 +90653,15 @@ func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.AWSRequestMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 4: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UpgradeWindowStartMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionChunkID", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -90371,81 +90671,29 @@ func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UpgradeWindowStartMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SessionChunkID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: SessionRecordingAccess: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: SessionRecordingAccess: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field StatusCode", wireType) } - var msglen int + m.StatusCode = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -90455,28 +90703,14 @@ func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + m.StatusCode |= uint32(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -90504,11 +90738,107 @@ func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SessionID = string(dAtA[iNdEx:postIndex]) + m.Path = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field RawQuery", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RawQuery = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Method", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Method = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Target", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Target = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Body", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90535,7 +90865,10 @@ func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Body == nil { + m.Body = &Struct{} + } + if err := m.Body.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -90561,7 +90894,7 @@ func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { } return nil } -func (m *KubeClusterMetadata) Unmarshal(dAtA []byte) error { +func (m *UpgradeWindowStartMetadata) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -90584,17 +90917,17 @@ func (m *KubeClusterMetadata) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: KubeClusterMetadata: wiretype end group for non-group") + return fmt.Errorf("proto: UpgradeWindowStartMetadata: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: KubeClusterMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: UpgradeWindowStartMetadata: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KubeLabels", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UpgradeWindowStart", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -90604,118 +90937,23 @@ func (m *KubeClusterMetadata) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.KubeLabels == nil { - m.KubeLabels = make(map[string]string) - } - var mapkey string - var mapvalue string - for iNdEx < postIndex { - entryPreIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - if fieldNum == 1 { - var stringLenmapkey uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapkey |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapkey := int(stringLenmapkey) - if intStringLenmapkey < 0 { - return ErrInvalidLengthEvents - } - postStringIndexmapkey := iNdEx + intStringLenmapkey - if postStringIndexmapkey < 0 { - return ErrInvalidLengthEvents - } - if postStringIndexmapkey > l { - return io.ErrUnexpectedEOF - } - mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) - iNdEx = postStringIndexmapkey - } else if fieldNum == 2 { - var stringLenmapvalue uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLenmapvalue |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLenmapvalue := int(stringLenmapvalue) - if intStringLenmapvalue < 0 { - return ErrInvalidLengthEvents - } - postStringIndexmapvalue := iNdEx + intStringLenmapvalue - if postStringIndexmapvalue < 0 { - return ErrInvalidLengthEvents - } - if postStringIndexmapvalue > l { - return io.ErrUnexpectedEOF - } - mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) - iNdEx = postStringIndexmapvalue - } else { - iNdEx = entryPreIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > postIndex { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - m.KubeLabels[mapkey] = mapvalue + m.UpgradeWindowStart = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -90739,7 +90977,7 @@ func (m *KubeClusterMetadata) Unmarshal(dAtA []byte) error { } return nil } -func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { +func (m *UpgradeWindowStartUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -90762,10 +91000,10 @@ func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: KubernetesClusterCreate: wiretype end group for non-group") + return fmt.Errorf("proto: UpgradeWindowStartUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: KubernetesClusterCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: UpgradeWindowStartUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -90836,7 +91074,7 @@ func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90863,13 +91101,13 @@ func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field KubeClusterMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UpgradeWindowStartMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -90896,7 +91134,7 @@ func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.KubeClusterMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UpgradeWindowStartMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -90922,7 +91160,7 @@ func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *KubernetesClusterUpdate) Unmarshal(dAtA []byte) error { +func (m *SessionRecordingAccess) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -90945,10 +91183,10 @@ func (m *KubernetesClusterUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: KubernetesClusterUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: SessionRecordingAccess: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: KubernetesClusterUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SessionRecordingAccess: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -90986,9 +91224,9 @@ func (m *KubernetesClusterUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionID", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -90998,28 +91236,538 @@ func (m *KubernetesClusterUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.SessionID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *KubeClusterMetadata) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: KubeClusterMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: KubeClusterMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubeLabels", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.KubeLabels == nil { + m.KubeLabels = make(map[string]string) + } + var mapkey string + var mapvalue string + for iNdEx < postIndex { + entryPreIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + if fieldNum == 1 { + var stringLenmapkey uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapkey |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapkey := int(stringLenmapkey) + if intStringLenmapkey < 0 { + return ErrInvalidLengthEvents + } + postStringIndexmapkey := iNdEx + intStringLenmapkey + if postStringIndexmapkey < 0 { + return ErrInvalidLengthEvents + } + if postStringIndexmapkey > l { + return io.ErrUnexpectedEOF + } + mapkey = string(dAtA[iNdEx:postStringIndexmapkey]) + iNdEx = postStringIndexmapkey + } else if fieldNum == 2 { + var stringLenmapvalue uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLenmapvalue |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLenmapvalue := int(stringLenmapvalue) + if intStringLenmapvalue < 0 { + return ErrInvalidLengthEvents + } + postStringIndexmapvalue := iNdEx + intStringLenmapvalue + if postStringIndexmapvalue < 0 { + return ErrInvalidLengthEvents + } + if postStringIndexmapvalue > l { + return io.ErrUnexpectedEOF + } + mapvalue = string(dAtA[iNdEx:postStringIndexmapvalue]) + iNdEx = postStringIndexmapvalue + } else { + iNdEx = entryPreIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > postIndex { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + m.KubeLabels[mapkey] = mapvalue + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *KubernetesClusterCreate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: KubernetesClusterCreate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: KubernetesClusterCreate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field KubeClusterMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.KubeClusterMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *KubernetesClusterUpdate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: KubernetesClusterUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: KubernetesClusterUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96673,15 +97421,790 @@ func (m *ExternalAuditStorageDisable) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Details", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Details == nil { + m.Details = &ExternalAuditStorageDetails{} + } + if err := m.Details.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ExternalAuditStorageDetails: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ExternalAuditStorageDetails: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IntegrationName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.IntegrationName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionRecordingsUri", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SessionRecordingsUri = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AthenaWorkgroup", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AthenaWorkgroup = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GlueDatabase", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GlueDatabase = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GlueTable", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GlueTable = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AuditEventsLongTermUri", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AuditEventsLongTermUri = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AthenaResultsUri", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AthenaResultsUri = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 10: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field PolicyName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.PolicyName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 11: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Region = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OktaAccessListSync: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OktaAccessListSync: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumAppFilters", wireType) + } + m.NumAppFilters = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumAppFilters |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 4: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumGroupFilters", wireType) + } + m.NumGroupFilters = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumGroupFilters |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumApps", wireType) + } + m.NumApps = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumApps |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumGroups", wireType) + } + m.NumGroups = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumGroups |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumRoles", wireType) + } + m.NumRoles = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumRoles |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumAccessLists", wireType) + } + m.NumAccessLists = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumAccessLists |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 9: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumAccessListMembers", wireType) + } + m.NumAccessListMembers = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumAccessListMembers |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *OktaUserSync) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: OktaUserSync: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OktaUserSync: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field OrgUrl", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96691,30 +98214,29 @@ func (m *ExternalAuditStorageDisable) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.OrgUrl = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 3: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Details", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AppId", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96724,28 +98246,100 @@ func (m *ExternalAuditStorageDisable) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if m.Details == nil { - m.Details = &ExternalAuditStorageDetails{} + m.AppId = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumUsersCreated", wireType) } - if err := m.Details.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.NumUsersCreated = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumUsersCreated |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 6: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumUsersDeleted", wireType) + } + m.NumUsersDeleted = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumUsersDeleted |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 7: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumUsersModified", wireType) + } + m.NumUsersModified = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumUsersModified |= int32(b&0x7F) << shift + if b < 0x80 { + break + } + } + case 8: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field NumUsersTotal", wireType) + } + m.NumUsersTotal = 0 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + m.NumUsersTotal |= int32(b&0x7F) << shift + if b < 0x80 { + break + } } - iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -96768,7 +98362,7 @@ func (m *ExternalAuditStorageDisable) Unmarshal(dAtA []byte) error { } return nil } -func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { +func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -96791,17 +98385,17 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ExternalAuditStorageDetails: wiretype end group for non-group") + return fmt.Errorf("proto: SPIFFESVIDIssued: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ExternalAuditStorageDetails: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SPIFFESVIDIssued: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { - case 3: + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IntegrationName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96811,29 +98405,30 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.IntegrationName = string(dAtA[iNdEx:postIndex]) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 4: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionRecordingsUri", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96843,29 +98438,30 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SessionRecordingsUri = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 5: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AthenaWorkgroup", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96875,27 +98471,28 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.AthenaWorkgroup = string(dAtA[iNdEx:postIndex]) + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GlueDatabase", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SPIFFEID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -96923,11 +98520,11 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GlueDatabase = string(dAtA[iNdEx:postIndex]) + m.SPIFFEID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 7: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field GlueTable", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DNSSANs", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -96955,11 +98552,11 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.GlueTable = string(dAtA[iNdEx:postIndex]) + m.DNSSANs = append(m.DNSSANs, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 8: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AuditEventsLongTermUri", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field IPSANs", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -96987,11 +98584,11 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AuditEventsLongTermUri = string(dAtA[iNdEx:postIndex]) + m.IPSANs = append(m.IPSANs, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex - case 9: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AthenaResultsUri", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SVIDType", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97019,11 +98616,11 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AthenaResultsUri = string(dAtA[iNdEx:postIndex]) + m.SVIDType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 10: + case 8: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field PolicyName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SerialNumber", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97051,11 +98648,11 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.PolicyName = string(dAtA[iNdEx:postIndex]) + m.SerialNumber = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 11: + case 9: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Hint", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97083,7 +98680,7 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Region = string(dAtA[iNdEx:postIndex]) + m.Hint = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -97107,7 +98704,7 @@ func (m *ExternalAuditStorageDetails) Unmarshal(dAtA []byte) error { } return nil } -func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { +func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97130,10 +98727,10 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OktaAccessListSync: wiretype end group for non-group") + return fmt.Errorf("proto: AuthPreferenceUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OktaAccessListSync: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AuthPreferenceUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -97203,10 +98800,10 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 3: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumAppFilters", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - m.NumAppFilters = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97216,54 +98813,30 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.NumAppFilters |= int32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 4: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumGroupFilters", wireType) + if msglen < 0 { + return ErrInvalidLengthEvents } - m.NumGroupFilters = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumGroupFilters |= int32(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents } - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumApps", wireType) + if postIndex > l { + return io.ErrUnexpectedEOF } - m.NumApps = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumApps |= int32(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumGroups", wireType) + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - m.NumGroups = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97273,54 +98846,30 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.NumGroups |= int32(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - case 7: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumRoles", wireType) + if msglen < 0 { + return ErrInvalidLengthEvents } - m.NumRoles = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumRoles |= int32(b&0x7F) << shift - if b < 0x80 { - break - } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents } - case 8: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumAccessLists", wireType) + if postIndex > l { + return io.ErrUnexpectedEOF } - m.NumAccessLists = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumAccessLists |= int32(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - case 9: + iNdEx = postIndex + case 5: if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumAccessListMembers", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AdminActionsMFA", wireType) } - m.NumAccessListMembers = 0 + m.AdminActionsMFA = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97330,7 +98879,7 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.NumAccessListMembers |= int32(b&0x7F) << shift + m.AdminActionsMFA |= AdminActionsMFAStatus(b&0x7F) << shift if b < 0x80 { break } @@ -97357,7 +98906,7 @@ func (m *OktaAccessListSync) Unmarshal(dAtA []byte) error { } return nil } -func (m *OktaUserSync) Unmarshal(dAtA []byte) error { +func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97380,10 +98929,10 @@ func (m *OktaUserSync) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: OktaUserSync: wiretype end group for non-group") + return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: OktaUserSync: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -97454,9 +99003,9 @@ func (m *OktaUserSync) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field OrgUrl", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97466,29 +99015,30 @@ func (m *OktaUserSync) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.OrgUrl = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AppId", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97498,100 +99048,25 @@ func (m *OktaUserSync) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.AppId = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumUsersCreated", wireType) - } - m.NumUsersCreated = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumUsersCreated |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 6: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumUsersDeleted", wireType) - } - m.NumUsersDeleted = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumUsersDeleted |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 7: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumUsersModified", wireType) - } - m.NumUsersModified = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumUsersModified |= int32(b&0x7F) << shift - if b < 0x80 { - break - } - } - case 8: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field NumUsersTotal", wireType) - } - m.NumUsersTotal = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.NumUsersTotal |= int32(b&0x7F) << shift - if b < 0x80 { - break - } + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -97614,7 +99089,7 @@ func (m *OktaUserSync) Unmarshal(dAtA []byte) error { } return nil } -func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { +func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97637,10 +99112,10 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SPIFFESVIDIssued: wiretype end group for non-group") + return fmt.Errorf("proto: SessionRecordingConfigUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SPIFFESVIDIssued: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SessionRecordingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -97678,7 +99153,7 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97705,13 +99180,13 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97738,15 +99213,15 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SPIFFEID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97756,29 +99231,81 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SPIFFEID = string(dAtA[iNdEx:postIndex]) + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 5: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AccessPathChanged: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AccessPathChanged: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DNSSANs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97788,27 +99315,28 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.DNSSANs = append(m.DNSSANs, string(dAtA[iNdEx:postIndex])) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 6: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IPSANs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ChangeID", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97836,11 +99364,11 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.IPSANs = append(m.IPSANs, string(dAtA[iNdEx:postIndex])) + m.ChangeID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 7: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SVIDType", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceName", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97868,11 +99396,11 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SVIDType = string(dAtA[iNdEx:postIndex]) + m.AffectedResourceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SerialNumber", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceSource", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97900,11 +99428,11 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.SerialNumber = string(dAtA[iNdEx:postIndex]) + m.AffectedResourceSource = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 9: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Hint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceType", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -97932,7 +99460,7 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Hint = string(dAtA[iNdEx:postIndex]) + m.AffectedResourceType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -97956,7 +99484,7 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } return nil } -func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { +func (m *SpannerRPC) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97979,10 +99507,10 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AuthPreferenceUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: SpannerRPC: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AuthPreferenceUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SpannerRPC: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -98019,39 +99547,6 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } @@ -98080,48 +99575,15 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AdminActionsMFA", wireType) + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } - m.AdminActionsMFA = 0 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98131,65 +99593,28 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - m.AdminActionsMFA |= AdminActionsMFAStatus(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents } - if iNdEx >= l { + if postIndex > l { return io.ErrUnexpectedEOF } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + iNdEx = postIndex + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98216,11 +99641,11 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } @@ -98253,11 +99678,11 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 3: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Procedure", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98267,28 +99692,27 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Procedure = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98315,7 +99739,10 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Args == nil { + m.Args = &Struct{} + } + if err := m.Args.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -98341,7 +99768,7 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { +func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -98364,10 +99791,10 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SessionRecordingConfigUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: AccessGraphSettingsUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SessionRecordingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AccessGraphSettingsUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -98524,7 +99951,7 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { +func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -98547,10 +99974,10 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AccessPathChanged: wiretype end group for non-group") + return fmt.Errorf("proto: SPIFFEFederationCreate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AccessPathChanged: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SPIFFEFederationCreate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -98588,9 +100015,9 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChangeID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98600,29 +100027,30 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.ChangeID = string(dAtA[iNdEx:postIndex]) + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98632,29 +100060,30 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.AffectedResourceName = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceSource", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98664,55 +100093,24 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.AffectedResourceSource = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceType", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.AffectedResourceType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -98736,7 +100134,7 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } return nil } -func (m *SpannerRPC) Unmarshal(dAtA []byte) error { +func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -98759,10 +100157,10 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SpannerRPC: wiretype end group for non-group") + return fmt.Errorf("proto: SPIFFEFederationDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SpannerRPC: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SPIFFEFederationDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -98800,7 +100198,7 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98827,13 +100225,13 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98860,13 +100258,13 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98893,13 +100291,64 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AutoUpdateConfigCreate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AutoUpdateConfigCreate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AutoUpdateConfigCreate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98926,15 +100375,15 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 6: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Procedure", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -98944,27 +100393,28 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Procedure = string(dAtA[iNdEx:postIndex]) + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 7: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -98991,10 +100441,40 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Args == nil { - m.Args = &Struct{} + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - if err := m.Args.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -99020,7 +100500,7 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { } return nil } -func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { +func (m *AutoUpdateConfigUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -99043,10 +100523,10 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AccessGraphSettingsUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: AutoUpdateConfigUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AccessGraphSettingsUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AutoUpdateConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -99203,7 +100683,7 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { +func (m *AutoUpdateConfigDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -99226,10 +100706,10 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SPIFFEFederationCreate: wiretype end group for non-group") + return fmt.Errorf("proto: AutoUpdateConfigDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SPIFFEFederationCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AutoUpdateConfigDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -99386,7 +100866,7 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { +func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -99409,10 +100889,10 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SPIFFEFederationDelete: wiretype end group for non-group") + return fmt.Errorf("proto: AutoUpdateVersionCreate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SPIFFEFederationDelete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AutoUpdateVersionCreate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -99569,7 +101049,190 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoUpdateConfigCreate) Unmarshal(dAtA []byte) error { +func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AutoUpdateVersionUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AutoUpdateVersionUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -99592,10 +101255,10 @@ func (m *AutoUpdateConfigCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateConfigCreate: wiretype end group for non-group") + return fmt.Errorf("proto: AutoUpdateVersionDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateConfigCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AutoUpdateVersionDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -99752,7 +101415,7 @@ func (m *AutoUpdateConfigCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoUpdateConfigUpdate) Unmarshal(dAtA []byte) error { +func (m *StaticHostUserCreate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -99775,10 +101438,10 @@ func (m *AutoUpdateConfigUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateConfigUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: StaticHostUserCreate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: StaticHostUserCreate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -99848,156 +101511,6 @@ func (m *AutoUpdateConfigUpdate) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AutoUpdateConfigDelete) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateConfigDelete: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateConfigDelete: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } @@ -100030,7 +101543,7 @@ func (m *AutoUpdateConfigDelete) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 3: + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } @@ -100063,7 +101576,7 @@ func (m *AutoUpdateConfigDelete) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } @@ -100118,7 +101631,7 @@ func (m *AutoUpdateConfigDelete) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { +func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -100141,10 +101654,10 @@ func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateVersionCreate: wiretype end group for non-group") + return fmt.Errorf("proto: StaticHostUserUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateVersionCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: StaticHostUserUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -100181,6 +101694,39 @@ func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } @@ -100213,7 +101759,7 @@ func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 3: + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } @@ -100246,7 +101792,7 @@ func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } @@ -100301,7 +101847,7 @@ func (m *AutoUpdateVersionCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { +func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -100324,10 +101870,10 @@ func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateVersionUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: StaticHostUserDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateVersionUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: StaticHostUserDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -100397,6 +101943,39 @@ func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { } iNdEx = postIndex case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } @@ -100429,7 +102008,7 @@ func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } @@ -100484,7 +102063,7 @@ func (m *AutoUpdateVersionUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { +func (m *CrownJewelCreate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -100507,10 +102086,10 @@ func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AutoUpdateVersionDelete: wiretype end group for non-group") + return fmt.Errorf("proto: CrownJewelCreate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AutoUpdateVersionDelete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CrownJewelCreate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -100548,7 +102127,7 @@ func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -100575,7 +102154,7 @@ func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -100645,124 +102224,7 @@ func (m *AutoUpdateVersionDelete) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *StaticHostUserCreate) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: StaticHostUserCreate: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: StaticHostUserCreate: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 3: + case 5: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } @@ -100795,44 +102257,11 @@ func (m *StaticHostUserCreate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 5: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field CrownJewelQuery", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -100842,24 +102271,23 @@ func (m *StaticHostUserCreate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.CrownJewelQuery = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -100883,7 +102311,7 @@ func (m *StaticHostUserCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { +func (m *CrownJewelUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -100906,10 +102334,10 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: StaticHostUserUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: CrownJewelUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: StaticHostUserUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CrownJewelUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -100980,7 +102408,7 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101007,13 +102435,13 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101040,13 +102468,13 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101073,10 +102501,74 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CurrentCrownJewelQuery", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CurrentCrownJewelQuery = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UpdatedCrownJewelQuery", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UpdatedCrownJewelQuery = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -101099,7 +102591,7 @@ func (m *StaticHostUserUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { +func (m *CrownJewelDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -101122,10 +102614,10 @@ func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: StaticHostUserDelete: wiretype end group for non-group") + return fmt.Errorf("proto: CrownJewelDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: StaticHostUserDelete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: CrownJewelDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -101196,7 +102688,7 @@ func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101223,13 +102715,13 @@ func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101256,13 +102748,13 @@ func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -101289,7 +102781,7 @@ func (m *StaticHostUserDelete) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex diff --git a/api/types/events/oneof.go b/api/types/events/oneof.go index 6319a6c17fe10..4d18b2bd7a689 100644 --- a/api/types/events/oneof.go +++ b/api/types/events/oneof.go @@ -736,6 +736,18 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_StaticHostUserDelete{ StaticHostUserDelete: e, } + case *CrownJewelCreate: + out.Event = &OneOf_CrownJewelCreate{ + CrownJewelCreate: e, + } + case *CrownJewelUpdate: + out.Event = &OneOf_CrownJewelUpdate{ + CrownJewelUpdate: e, + } + case *CrownJewelDelete: + out.Event = &OneOf_CrownJewelDelete{ + CrownJewelDelete: e, + } default: slog.ErrorContext(context.Background(), "Attempted to convert dynamic event of unknown type into protobuf event.", "event_type", in.GetType()) unknown := &Unknown{} diff --git a/lib/auth/crownjewel/crownjewelv1/service.go b/lib/auth/crownjewel/crownjewelv1/service.go index e4b8bc051f0de..c980e1ed9adfa 100644 --- a/lib/auth/crownjewel/crownjewelv1/service.go +++ b/lib/auth/crownjewel/crownjewelv1/service.go @@ -20,14 +20,20 @@ package crownjewelv1 import ( "context" + "log/slog" + "time" "github.com/gravitational/trace" "google.golang.org/protobuf/types/known/emptypb" + "google.golang.org/protobuf/types/known/timestamppb" crownjewelv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/crownjewel/v1" "github.com/gravitational/teleport/api/types" + "github.com/gravitational/teleport/api/types/events" + apievents "github.com/gravitational/teleport/api/types/events" "github.com/gravitational/teleport/lib/auth/crownjewel" "github.com/gravitational/teleport/lib/authz" + libevents "github.com/gravitational/teleport/lib/events" "github.com/gravitational/teleport/lib/services" ) @@ -41,6 +47,9 @@ type ServiceConfig struct { // Reader is the cache for storing CrownJewel. Reader Reader + + // Emitter is the event emitter. + Emitter events.Emitter } // CheckAndSetDefaults checks the ServiceConfig fields and returns an error if @@ -56,6 +65,9 @@ func (s *ServiceConfig) CheckAndSetDefaults() error { if s.Reader == nil { return trace.BadParameter("cache is required") } + if s.Emitter == nil { + return trace.BadParameter("emitter is required") + } return nil } @@ -72,6 +84,7 @@ type Service struct { authorizer authz.Authorizer backend services.CrownJewels reader Reader + emitter events.Emitter } // NewService returns a new CrownJewel gRPC service. @@ -84,11 +97,12 @@ func NewService(cfg ServiceConfig) (*Service, error) { authorizer: cfg.Authorizer, backend: cfg.Backend, reader: cfg.Reader, + emitter: cfg.Emitter, }, nil } // CreateCrownJewel creates crown jewel resource. -func (s *Service) CreateCrownJewel(ctx context.Context, req *crownjewelv1.CreateCrownJewelRequest) (*crownjewelv1.CrownJewel, error) { +func (s *Service) CreateCrownJewel(ctx context.Context, req *crownjewelv1.CreateCrownJewelRequest) (rec *crownjewelv1.CrownJewel, err error) { authCtx, err := s.authorizer.Authorize(ctx) if err != nil { return nil, trace.Wrap(err) @@ -107,11 +121,30 @@ func (s *Service) CreateCrownJewel(ctx context.Context, req *crownjewelv1.Create } rsp, err := s.backend.CreateCrownJewel(ctx, req.CrownJewel) - if err != nil { - return nil, trace.Wrap(err) - } - return rsp, nil + s.emmitCreateAuditEvent(ctx, rsp, authCtx, err) + + return rsp, trace.Wrap(err) +} + +func (s *Service) emmitCreateAuditEvent(ctx context.Context, req *crownjewelv1.CrownJewel, authCtx *authz.Context, err error) { + if auditErr := s.emitter.EmitAuditEvent(ctx, &apievents.CrownJewelCreate{ + Metadata: apievents.Metadata{ + Type: libevents.CrownJewelCreateEvent, + Code: libevents.CrownJewelCreateCode, + }, + UserMetadata: authCtx.GetUserMetadata(), + ConnectionMetadata: authz.ConnectionMetadata(ctx), + Status: eventStatus(err), + ResourceMetadata: apievents.ResourceMetadata{ + Name: req.GetMetadata().GetName(), + Expires: getExpires(req.GetMetadata().GetExpires()), + UpdatedBy: authCtx.Identity.GetIdentity().Username, + }, + CrownJewelQuery: req.GetSpec().GetQuery(), + }); auditErr != nil { + slog.WarnContext(ctx, "Failed to emit crown jewel create event.", "error", err) + } } // ListCrownJewels returns a list of crown jewels. @@ -175,12 +208,37 @@ func (s *Service) UpdateCrownJewel(ctx context.Context, req *crownjewelv1.Update return nil, trace.Wrap(err) } - rsp, err := s.backend.UpdateCrownJewel(ctx, req.CrownJewel) + oldCrownJewel, err := s.reader.GetCrownJewel(ctx, req.GetCrownJewel().GetMetadata().GetName()) if err != nil { return nil, trace.Wrap(err) } - return rsp, nil + rsp, err := s.backend.UpdateCrownJewel(ctx, req.CrownJewel) + + s.emmitUpdateAuditEvent(ctx, oldCrownJewel, req.GetCrownJewel(), authCtx, err) + + return rsp, trace.Wrap(err) +} + +func (s *Service) emmitUpdateAuditEvent(ctx context.Context, old, new *crownjewelv1.CrownJewel, authCtx *authz.Context, err error) { + if auditErr := s.emitter.EmitAuditEvent(ctx, &apievents.CrownJewelUpdate{ + Metadata: apievents.Metadata{ + Type: libevents.CrownJewelUpdateEvent, + Code: libevents.CrownJewelUpdateCode, + }, + UserMetadata: authCtx.GetUserMetadata(), + ConnectionMetadata: authz.ConnectionMetadata(ctx), + Status: eventStatus(err), + ResourceMetadata: apievents.ResourceMetadata{ + Name: new.GetMetadata().GetName(), + Expires: getExpires(new.GetMetadata().GetExpires()), + UpdatedBy: authCtx.Identity.GetIdentity().Username, + }, + CurrentCrownJewelQuery: old.GetSpec().GetQuery(), + UpdatedCrownJewelQuery: new.GetSpec().GetQuery(), + }); auditErr != nil { + slog.WarnContext(ctx, "Failed to emit crown jewel update event.", "error", err) + } } // UpsertCrownJewel upserts crown jewel resource. @@ -202,7 +260,15 @@ func (s *Service) UpsertCrownJewel(ctx context.Context, req *crownjewelv1.Upsert return nil, trace.Wrap(err) } + oldCrownJewel, err := s.reader.GetCrownJewel(ctx, req.GetCrownJewel().GetMetadata().GetName()) + if err != nil && !trace.IsNotFound(err) { // ignore not found errors + return nil, trace.Wrap(err) + } + rsp, err := s.backend.UpsertCrownJewel(ctx, req.CrownJewel) + + s.emmitUpsertAuditEvent(ctx, oldCrownJewel, req.GetCrownJewel(), authCtx, err) + if err != nil { return nil, trace.Wrap(err) } @@ -211,6 +277,14 @@ func (s *Service) UpsertCrownJewel(ctx context.Context, req *crownjewelv1.Upsert } +func (s *Service) emmitUpsertAuditEvent(ctx context.Context, old, new *crownjewelv1.CrownJewel, authCtx *authz.Context, err error) { + if old == nil { + s.emmitCreateAuditEvent(ctx, new, authCtx, err) + return + } + s.emmitUpdateAuditEvent(ctx, old, new, authCtx, err) +} + // DeleteCrownJewel deletes crown jewel resource. func (s *Service) DeleteCrownJewel(ctx context.Context, req *crownjewelv1.DeleteCrownJewelRequest) (*emptypb.Empty, error) { authCtx, err := s.authorizer.Authorize(ctx) @@ -226,9 +300,47 @@ func (s *Service) DeleteCrownJewel(ctx context.Context, req *crownjewelv1.Delete return nil, trace.Wrap(err) } - if err := s.backend.DeleteCrownJewel(ctx, req.GetName()); err != nil { + err = s.backend.DeleteCrownJewel(ctx, req.GetName()) + + if auditErr := s.emitter.EmitAuditEvent(ctx, &apievents.CrownJewelDelete{ + Metadata: apievents.Metadata{ + Type: libevents.CrownJewelDeleteEvent, + Code: libevents.CrownJewelDeleteCode, + }, + UserMetadata: authCtx.GetUserMetadata(), + ConnectionMetadata: authz.ConnectionMetadata(ctx), + Status: eventStatus(err), + ResourceMetadata: apievents.ResourceMetadata{ + Name: req.GetName(), + UpdatedBy: authCtx.Identity.GetIdentity().Username, + }, + }); auditErr != nil { + slog.WarnContext(ctx, "Failed to emit crown jewel delete event.", "error", err) + } + + if err != nil { return nil, trace.Wrap(err) } return &emptypb.Empty{}, nil } + +func eventStatus(err error) apievents.Status { + var msg string + if err != nil { + msg = err.Error() + } + + return apievents.Status{ + Success: err == nil, + Error: msg, + UserMessage: msg, + } +} + +func getExpires(cj *timestamppb.Timestamp) time.Time { + if cj == nil { + return time.Time{} + } + return cj.AsTime() +} diff --git a/lib/auth/crownjewel/crownjewelv1/service_test.go b/lib/auth/crownjewel/crownjewelv1/service_test.go index fdf44559ecd89..734325a2e8eec 100644 --- a/lib/auth/crownjewel/crownjewelv1/service_test.go +++ b/lib/auth/crownjewel/crownjewelv1/service_test.go @@ -31,8 +31,10 @@ import ( "github.com/gravitational/teleport/api/types" "github.com/gravitational/teleport/lib/authz" "github.com/gravitational/teleport/lib/backend/memory" + "github.com/gravitational/teleport/lib/events" "github.com/gravitational/teleport/lib/services" "github.com/gravitational/teleport/lib/services/local" + "github.com/gravitational/teleport/lib/tlsca" "github.com/gravitational/teleport/lib/utils" ) @@ -206,6 +208,11 @@ func newService(t *testing.T, authState authz.AdminActionAuthState, checker serv User: user, Checker: checker, AdminActionAuthState: authState, + Identity: authz.LocalUser{ + Identity: tlsca.Identity{ + Username: user.GetName(), + }, + }, }, nil }) @@ -213,6 +220,7 @@ func newService(t *testing.T, authState authz.AdminActionAuthState, checker serv Authorizer: authorizer, Backend: backendService, Reader: backendService, + Emitter: events.NewDiscardEmitter(), }) require.NoError(t, err) return service diff --git a/lib/auth/grpcserver.go b/lib/auth/grpcserver.go index 6c9b5f5d57f9d..48311bbead11a 100644 --- a/lib/auth/grpcserver.go +++ b/lib/auth/grpcserver.go @@ -5335,6 +5335,7 @@ func NewGRPCServer(cfg GRPCServerConfig) (*GRPCServer, error) { Authorizer: cfg.Authorizer, Backend: cfg.AuthServer.Services, Reader: cfg.AuthServer.Cache, + Emitter: cfg.Emitter, }) if err != nil { return nil, trace.Wrap(err) diff --git a/lib/events/api.go b/lib/events/api.go index e729ba176c85d..5d4a3d13848ed 100644 --- a/lib/events/api.go +++ b/lib/events/api.go @@ -806,6 +806,13 @@ const ( StaticHostUserUpdateEvent = "static_host_user.update" // StaticHostUserDeleteEvent is emitted when a static host user resource is deleted. StaticHostUserDeleteEvent = "static_host_user.delete" + + // CrownJewelCreateEvent is emitted when a crown jewel resource is created. + CrownJewelCreateEvent = "access_graph.crown_jewel.create" + //CrownJewelUpdateEvent is emitted when a crown jewel resource is updated. + CrownJewelUpdateEvent = "access_graph.crown_jewel.update" + // CrownJewelDeleteEvent is emitted when a crown jewel resource is deleted. + CrownJewelDeleteEvent = "access_graph.crown_jewel.delete" ) // Add an entry to eventsMap in lib/events/events_test.go when you add diff --git a/lib/events/codes.go b/lib/events/codes.go index b55d533b5b959..a5a2f737f9c1c 100644 --- a/lib/events/codes.go +++ b/lib/events/codes.go @@ -657,6 +657,13 @@ const ( // StaticHostUserDeleteCode is the static host user resource delete event code. StaticHostUserDeleteCode = "SHU003I" + // CrownJewelCreateCode is the crown jewel create event code. + CrownJewelCreateCode = "CJ001I" + // CrownJewelUpdateCode is the crown jewel update event code. + CrownJewelUpdateCode = "CJ002I" + // CrownJewelDeleteCode is the crown jewel delete event code. + CrownJewelDeleteCode = "CJ003I" + // UnknownCode is used when an event of unknown type is encountered. UnknownCode = apievents.UnknownCode ) diff --git a/lib/events/dynamic.go b/lib/events/dynamic.go index 6b74556386473..17ce3ca1ffca1 100644 --- a/lib/events/dynamic.go +++ b/lib/events/dynamic.go @@ -427,7 +427,12 @@ func FromEventFields(fields EventFields) (events.AuditEvent, error) { e = &events.StaticHostUserUpdate{} case StaticHostUserDeleteEvent: e = &events.StaticHostUserDelete{} - + case CrownJewelCreateEvent: + e = &events.CrownJewelCreate{} + case CrownJewelUpdateEvent: + e = &events.CrownJewelUpdate{} + case CrownJewelDeleteEvent: + e = &events.CrownJewelDelete{} default: log.Errorf("Attempted to convert dynamic event of unknown type %q into protobuf event.", eventType) unknown := &events.Unknown{} diff --git a/lib/events/events_test.go b/lib/events/events_test.go index bacdfe44de3dd..85d0aea985926 100644 --- a/lib/events/events_test.go +++ b/lib/events/events_test.go @@ -199,6 +199,7 @@ var eventsMap = map[string]apievents.AuditEvent{ AuthPreferenceUpdateEvent: &apievents.AuthPreferenceUpdate{}, ClusterNetworkingConfigUpdateEvent: &apievents.ClusterNetworkingConfigUpdate{}, SessionRecordingConfigUpdateEvent: &apievents.SessionRecordingConfigUpdate{}, + AccessGraphSettingsUpdateEvent: &apievents.AccessGraphSettingsUpdate{}, DatabaseSessionSpannerRPCEvent: &apievents.SpannerRPC{}, UnknownEvent: &apievents.Unknown{}, DatabaseSessionCassandraBatchEvent: &apievents.CassandraBatch{}, @@ -217,6 +218,9 @@ var eventsMap = map[string]apievents.AuditEvent{ PluginCreateEvent: &apievents.PluginCreate{}, PluginUpdateEvent: &apievents.PluginUpdate{}, PluginDeleteEvent: &apievents.PluginDelete{}, + CrownJewelCreateEvent: &apievents.CrownJewelCreate{}, + CrownJewelUpdateEvent: &apievents.CrownJewelUpdate{}, + CrownJewelDeleteEvent: &apievents.CrownJewelDelete{}, } // TestJSON tests JSON marshal events diff --git a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx index c3ee2b148ac90..b36b3df635807 100644 --- a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx +++ b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx @@ -291,6 +291,9 @@ const EventIconMap: Record = { [eventCodes.STATIC_HOST_USER_CREATE]: Icons.User, [eventCodes.STATIC_HOST_USER_UPDATE]: Icons.User, [eventCodes.STATIC_HOST_USER_DELETE]: Icons.User, + [eventCodes.CROWN_JEWEL_CREATE]: Icons.Info, + [eventCodes.CROWN_JEWEL_UPDATE]: Icons.Info, + [eventCodes.CROWN_JEWEL_DELETE]: Icons.Info, [eventCodes.UNKNOWN]: Icons.Question, }; diff --git a/web/packages/teleport/src/services/audit/makeEvent.ts b/web/packages/teleport/src/services/audit/makeEvent.ts index 2ec8a7bdf2a62..6847751948a53 100644 --- a/web/packages/teleport/src/services/audit/makeEvent.ts +++ b/web/packages/teleport/src/services/audit/makeEvent.ts @@ -1929,6 +1929,27 @@ export const formatters: Formatters = { return `User [${user}] deleted a static host user [${name}]`; }, }, + [eventCodes.CROWN_JEWEL_CREATE]: { + type: 'access_graph.crown_jewel.create', + desc: 'Crown Jewel Created', + format: ({ user, name }) => { + return `User [${user}] created a crown jewel [${name}]`; + }, + }, + [eventCodes.CROWN_JEWEL_UPDATE]: { + type: 'access_graph.crown_jewel.update', + desc: 'Crown Jewel Updated', + format: ({ user, name }) => { + return `User [${user}] updated a crown jewel [${name}]`; + }, + }, + [eventCodes.CROWN_JEWEL_DELETE]: { + type: 'access_graph.crown_jewel.delete', + desc: 'Crown Jewel Deleted', + format: ({ user, name }) => { + return `User [${user}] deleted a crown jewel [${name}]`; + }, + }, [eventCodes.UNKNOWN]: { type: 'unknown', desc: 'Unknown Event', diff --git a/web/packages/teleport/src/services/audit/types.ts b/web/packages/teleport/src/services/audit/types.ts index 9264e13a72a31..5af66ef558b32 100644 --- a/web/packages/teleport/src/services/audit/types.ts +++ b/web/packages/teleport/src/services/audit/types.ts @@ -311,6 +311,9 @@ export const eventCodes = { STATIC_HOST_USER_CREATE: 'SHU001I', STATIC_HOST_USER_UPDATE: 'SHU002I', STATIC_HOST_USER_DELETE: 'SHU003I', + CROWN_JEWEL_CREATE: 'CJ001I', + CROWN_JEWEL_UPDATE: 'CJ002I', + CROWN_JEWEL_DELETE: 'CJ003I', } as const; /** @@ -1716,6 +1719,18 @@ export type RawEvents = { typeof eventCodes.STATIC_HOST_USER_DELETE, HasName >; + [eventCodes.CROWN_JEWEL_CREATE]: RawEvent< + typeof eventCodes.CROWN_JEWEL_CREATE, + HasName + >; + [eventCodes.CROWN_JEWEL_UPDATE]: RawEvent< + typeof eventCodes.CROWN_JEWEL_UPDATE, + HasName + >; + [eventCodes.CROWN_JEWEL_DELETE]: RawEvent< + typeof eventCodes.CROWN_JEWEL_DELETE, + HasName + >; }; /**