diff --git a/api/proto/teleport/legacy/types/events/events.proto b/api/proto/teleport/legacy/types/events/events.proto index 58e183caade..8b8f9e97a94 100644 --- a/api/proto/teleport/legacy/types/events/events.proto +++ b/api/proto/teleport/legacy/types/events/events.proto @@ -1231,7 +1231,7 @@ message ResourceMetadata { string TTL = 4 [(gogoproto.jsontag) = "ttl,omitempty"]; } -// UserCreate is emitted when the user is created or updated (upsert). +// UserCreate is emitted when the user is created or upserted. message UserCreate { // Metadata is a common event metadata Metadata Metadata = 1 [ @@ -1261,6 +1261,36 @@ message UserCreate { string Connector = 5 [(gogoproto.jsontag) = "connector"]; } +// UserUpdate is emitted when the user is updated. +message UserUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // User is a common user event metadata + UserMetadata User = 2 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata + ResourceMetadata Resource = 3 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // Roles is a list of roles for the user. + repeated string Roles = 4 [(gogoproto.jsontag) = "roles"]; + + // Connector is the connector used to create the user. + string Connector = 5 [(gogoproto.jsontag) = "connector"]; +} + // UserDelete is emitted when a user gets deleted message UserDelete { // Metadata is a common event metadata @@ -1874,6 +1904,30 @@ message RoleCreate { ]; } +// RoleUpdate is emitted when a role is updated. +message RoleUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata + ResourceMetadata Resource = 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) = "" + ]; +} + // RoleDelete is emitted when a role is deleted message RoleDelete { // Metadata is a common event metadata @@ -2005,7 +2059,7 @@ message TrustedClusterTokenCreate { ]; } -// GithubConnectorCreate fires when a Github connector is created/updated. +// GithubConnectorCreate fires when a Github connector is created. message GithubConnectorCreate { // Metadata is a common event metadata Metadata Metadata = 1 [ @@ -2029,6 +2083,30 @@ message GithubConnectorCreate { ]; } +// GithubConnectorUpdate fires when a Github connector is updated. +message GithubConnectorUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata + ResourceMetadata Resource = 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) = "" + ]; +} + // GithubConnectorDelete fires when a Github connector is deleted. message GithubConnectorDelete { // Metadata is a common event metadata @@ -2053,7 +2131,7 @@ message GithubConnectorDelete { ]; } -// OIDCConnectorCreate fires when OIDC connector is created/updated. +// OIDCConnectorCreate fires when OIDC connector is created. message OIDCConnectorCreate { // Metadata is a common event metadata Metadata Metadata = 1 [ @@ -2077,6 +2155,30 @@ message OIDCConnectorCreate { ]; } +// OIDCConnectorUpdate fires when OIDC connector is updated. +message OIDCConnectorUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata + ResourceMetadata Resource = 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) = "" + ]; +} + // OIDCConnectorDelete fires when OIDC connector is deleted. message OIDCConnectorDelete { // Metadata is a common event metadata @@ -2125,6 +2227,30 @@ message SAMLConnectorCreate { ]; } +// SAMLConnectorUpdate fires when SAML connector is updated. +message SAMLConnectorUpdate { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ResourceMetadata is a common resource event metadata + ResourceMetadata Resource = 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) = "" + ]; +} + // SAMLConnectorDelete fires when SAML connector is deleted. message SAMLConnectorDelete { // Metadata is a common event metadata @@ -3531,6 +3657,11 @@ message OneOf { events.AccessListMemberDeleteAllForAccessList AccessListMemberDeleteAllForAccessList = 133; events.AuditQueryRun AuditQueryRun = 134; events.SecurityReportRun SecurityReportRun = 135; + events.GithubConnectorUpdate GithubConnectorUpdate = 136; + events.OIDCConnectorUpdate OIDCConnectorUpdate = 137; + events.SAMLConnectorUpdate SAMLConnectorUpdate = 138; + events.RoleUpdate RoleUpdate = 139; + events.UserUpdate UserUpdate = 140; } } diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index 88a341b982a..7f8df64c7aa 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -2366,7 +2366,7 @@ func (m *ResourceMetadata) XXX_DiscardUnknown() { var xxx_messageInfo_ResourceMetadata proto.InternalMessageInfo -// UserCreate is emitted when the user is created or updated (upsert). +// UserCreate is emitted when the user is created or upserted. type UserCreate struct { // Metadata is a common event metadata Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` @@ -2416,6 +2416,56 @@ func (m *UserCreate) XXX_DiscardUnknown() { var xxx_messageInfo_UserCreate proto.InternalMessageInfo +// UserUpdate is emitted when the user is updated. +type UserUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // ResourceMetadata is a common resource event metadata + ResourceMetadata `protobuf:"bytes,3,opt,name=Resource,proto3,embedded=Resource" json:""` + // Roles is a list of roles for the user. + Roles []string `protobuf:"bytes,4,rep,name=Roles,proto3" json:"roles"` + // Connector is the connector used to create the user. + Connector string `protobuf:"bytes,5,opt,name=Connector,proto3" json:"connector"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *UserUpdate) Reset() { *m = UserUpdate{} } +func (m *UserUpdate) String() string { return proto.CompactTextString(m) } +func (*UserUpdate) ProtoMessage() {} +func (*UserUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{40} +} +func (m *UserUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *UserUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_UserUpdate.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 *UserUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_UserUpdate.Merge(m, src) +} +func (m *UserUpdate) XXX_Size() int { + return m.Size() +} +func (m *UserUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_UserUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_UserUpdate proto.InternalMessageInfo + // UserDelete is emitted when a user gets deleted type UserDelete struct { // Metadata is a common event metadata @@ -2433,7 +2483,7 @@ func (m *UserDelete) Reset() { *m = UserDelete{} } func (m *UserDelete) String() string { return proto.CompactTextString(m) } func (*UserDelete) ProtoMessage() {} func (*UserDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{40} + return fileDescriptor_007ba1c3d6266d56, []int{41} } func (m *UserDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2477,7 +2527,7 @@ func (m *UserPasswordChange) Reset() { *m = UserPasswordChange{} } func (m *UserPasswordChange) String() string { return proto.CompactTextString(m) } func (*UserPasswordChange) ProtoMessage() {} func (*UserPasswordChange) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{41} + return fileDescriptor_007ba1c3d6266d56, []int{42} } func (m *UserPasswordChange) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2552,7 +2602,7 @@ func (m *AccessRequestCreate) Reset() { *m = AccessRequestCreate{} } func (m *AccessRequestCreate) String() string { return proto.CompactTextString(m) } func (*AccessRequestCreate) ProtoMessage() {} func (*AccessRequestCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{42} + return fileDescriptor_007ba1c3d6266d56, []int{43} } func (m *AccessRequestCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2606,7 +2656,7 @@ func (m *ResourceID) Reset() { *m = ResourceID{} } func (m *ResourceID) String() string { return proto.CompactTextString(m) } func (*ResourceID) ProtoMessage() {} func (*ResourceID) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{43} + return fileDescriptor_007ba1c3d6266d56, []int{44} } func (m *ResourceID) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2652,7 +2702,7 @@ func (m *AccessRequestDelete) Reset() { *m = AccessRequestDelete{} } func (m *AccessRequestDelete) String() string { return proto.CompactTextString(m) } func (*AccessRequestDelete) ProtoMessage() {} func (*AccessRequestDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{44} + return fileDescriptor_007ba1c3d6266d56, []int{45} } func (m *AccessRequestDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2702,7 +2752,7 @@ func (m *PortForward) Reset() { *m = PortForward{} } func (m *PortForward) String() string { return proto.CompactTextString(m) } func (*PortForward) ProtoMessage() {} func (*PortForward) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{45} + return fileDescriptor_007ba1c3d6266d56, []int{46} } func (m *PortForward) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2750,7 +2800,7 @@ func (m *X11Forward) Reset() { *m = X11Forward{} } func (m *X11Forward) String() string { return proto.CompactTextString(m) } func (*X11Forward) ProtoMessage() {} func (*X11Forward) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{46} + return fileDescriptor_007ba1c3d6266d56, []int{47} } func (m *X11Forward) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2796,7 +2846,7 @@ func (m *CommandMetadata) Reset() { *m = CommandMetadata{} } func (m *CommandMetadata) String() string { return proto.CompactTextString(m) } func (*CommandMetadata) ProtoMessage() {} func (*CommandMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{47} + return fileDescriptor_007ba1c3d6266d56, []int{48} } func (m *CommandMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2853,7 +2903,7 @@ func (m *Exec) Reset() { *m = Exec{} } func (m *Exec) String() string { return proto.CompactTextString(m) } func (*Exec) ProtoMessage() {} func (*Exec) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{48} + return fileDescriptor_007ba1c3d6266d56, []int{49} } func (m *Exec) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2909,7 +2959,7 @@ func (m *SCP) Reset() { *m = SCP{} } func (m *SCP) String() string { return proto.CompactTextString(m) } func (*SCP) ProtoMessage() {} func (*SCP) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{49} + return fileDescriptor_007ba1c3d6266d56, []int{50} } func (m *SCP) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2961,7 +3011,7 @@ func (m *SFTPAttributes) Reset() { *m = SFTPAttributes{} } func (m *SFTPAttributes) String() string { return proto.CompactTextString(m) } func (*SFTPAttributes) ProtoMessage() {} func (*SFTPAttributes) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{50} + return fileDescriptor_007ba1c3d6266d56, []int{51} } func (m *SFTPAttributes) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3028,7 +3078,7 @@ func (m *SFTP) Reset() { *m = SFTP{} } func (m *SFTP) String() string { return proto.CompactTextString(m) } func (*SFTP) ProtoMessage() {} func (*SFTP) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{51} + return fileDescriptor_007ba1c3d6266d56, []int{52} } func (m *SFTP) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3078,7 +3128,7 @@ func (m *Subsystem) Reset() { *m = Subsystem{} } func (m *Subsystem) String() string { return proto.CompactTextString(m) } func (*Subsystem) ProtoMessage() {} func (*Subsystem) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{52} + return fileDescriptor_007ba1c3d6266d56, []int{53} } func (m *Subsystem) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3130,7 +3180,7 @@ func (m *ClientDisconnect) Reset() { *m = ClientDisconnect{} } func (m *ClientDisconnect) String() string { return proto.CompactTextString(m) } func (*ClientDisconnect) ProtoMessage() {} func (*ClientDisconnect) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{53} + return fileDescriptor_007ba1c3d6266d56, []int{54} } func (m *ClientDisconnect) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3178,7 +3228,7 @@ func (m *AuthAttempt) Reset() { *m = AuthAttempt{} } func (m *AuthAttempt) String() string { return proto.CompactTextString(m) } func (*AuthAttempt) ProtoMessage() {} func (*AuthAttempt) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{54} + return fileDescriptor_007ba1c3d6266d56, []int{55} } func (m *AuthAttempt) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3224,7 +3274,7 @@ func (m *UserTokenCreate) Reset() { *m = UserTokenCreate{} } func (m *UserTokenCreate) String() string { return proto.CompactTextString(m) } func (*UserTokenCreate) ProtoMessage() {} func (*UserTokenCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{55} + return fileDescriptor_007ba1c3d6266d56, []int{56} } func (m *UserTokenCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3270,7 +3320,7 @@ func (m *RoleCreate) Reset() { *m = RoleCreate{} } func (m *RoleCreate) String() string { return proto.CompactTextString(m) } func (*RoleCreate) ProtoMessage() {} func (*RoleCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{56} + return fileDescriptor_007ba1c3d6266d56, []int{57} } func (m *RoleCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3299,6 +3349,52 @@ func (m *RoleCreate) XXX_DiscardUnknown() { var xxx_messageInfo_RoleCreate proto.InternalMessageInfo +// RoleUpdate is emitted when a role is updated. +type RoleUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // ResourceMetadata is a common resource event metadata + ResourceMetadata `protobuf:"bytes,2,opt,name=Resource,proto3,embedded=Resource" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RoleUpdate) Reset() { *m = RoleUpdate{} } +func (m *RoleUpdate) String() string { return proto.CompactTextString(m) } +func (*RoleUpdate) ProtoMessage() {} +func (*RoleUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{58} +} +func (m *RoleUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RoleUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RoleUpdate.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 *RoleUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_RoleUpdate.Merge(m, src) +} +func (m *RoleUpdate) XXX_Size() int { + return m.Size() +} +func (m *RoleUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_RoleUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_RoleUpdate proto.InternalMessageInfo + // RoleDelete is emitted when a role is deleted type RoleDelete struct { // Metadata is a common event metadata @@ -3316,7 +3412,7 @@ func (m *RoleDelete) Reset() { *m = RoleDelete{} } func (m *RoleDelete) String() string { return proto.CompactTextString(m) } func (*RoleDelete) ProtoMessage() {} func (*RoleDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{57} + return fileDescriptor_007ba1c3d6266d56, []int{59} } func (m *RoleDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3362,7 +3458,7 @@ func (m *TrustedClusterCreate) Reset() { *m = TrustedClusterCreate{} } func (m *TrustedClusterCreate) String() string { return proto.CompactTextString(m) } func (*TrustedClusterCreate) ProtoMessage() {} func (*TrustedClusterCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{58} + return fileDescriptor_007ba1c3d6266d56, []int{60} } func (m *TrustedClusterCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3408,7 +3504,7 @@ func (m *TrustedClusterDelete) Reset() { *m = TrustedClusterDelete{} } func (m *TrustedClusterDelete) String() string { return proto.CompactTextString(m) } func (*TrustedClusterDelete) ProtoMessage() {} func (*TrustedClusterDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{59} + return fileDescriptor_007ba1c3d6266d56, []int{61} } func (m *TrustedClusterDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3454,7 +3550,7 @@ func (m *ProvisionTokenCreate) Reset() { *m = ProvisionTokenCreate{} } func (m *ProvisionTokenCreate) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenCreate) ProtoMessage() {} func (*ProvisionTokenCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{60} + return fileDescriptor_007ba1c3d6266d56, []int{62} } func (m *ProvisionTokenCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3503,7 +3599,7 @@ func (m *TrustedClusterTokenCreate) Reset() { *m = TrustedClusterTokenCr func (m *TrustedClusterTokenCreate) String() string { return proto.CompactTextString(m) } func (*TrustedClusterTokenCreate) ProtoMessage() {} func (*TrustedClusterTokenCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{61} + return fileDescriptor_007ba1c3d6266d56, []int{63} } func (m *TrustedClusterTokenCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3532,7 +3628,7 @@ func (m *TrustedClusterTokenCreate) XXX_DiscardUnknown() { var xxx_messageInfo_TrustedClusterTokenCreate proto.InternalMessageInfo -// GithubConnectorCreate fires when a Github connector is created/updated. +// GithubConnectorCreate fires when a Github connector is created. type GithubConnectorCreate struct { // Metadata is a common event metadata Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` @@ -3549,7 +3645,7 @@ func (m *GithubConnectorCreate) Reset() { *m = GithubConnectorCreate{} } func (m *GithubConnectorCreate) String() string { return proto.CompactTextString(m) } func (*GithubConnectorCreate) ProtoMessage() {} func (*GithubConnectorCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{62} + return fileDescriptor_007ba1c3d6266d56, []int{64} } func (m *GithubConnectorCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3578,6 +3674,52 @@ func (m *GithubConnectorCreate) XXX_DiscardUnknown() { var xxx_messageInfo_GithubConnectorCreate proto.InternalMessageInfo +// GithubConnectorUpdate fires when a Github connector is updated. +type GithubConnectorUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // ResourceMetadata is a common resource event metadata + ResourceMetadata `protobuf:"bytes,2,opt,name=Resource,proto3,embedded=Resource" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GithubConnectorUpdate) Reset() { *m = GithubConnectorUpdate{} } +func (m *GithubConnectorUpdate) String() string { return proto.CompactTextString(m) } +func (*GithubConnectorUpdate) ProtoMessage() {} +func (*GithubConnectorUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{65} +} +func (m *GithubConnectorUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GithubConnectorUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GithubConnectorUpdate.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 *GithubConnectorUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_GithubConnectorUpdate.Merge(m, src) +} +func (m *GithubConnectorUpdate) XXX_Size() int { + return m.Size() +} +func (m *GithubConnectorUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_GithubConnectorUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_GithubConnectorUpdate proto.InternalMessageInfo + // GithubConnectorDelete fires when a Github connector is deleted. type GithubConnectorDelete struct { // Metadata is a common event metadata @@ -3595,7 +3737,7 @@ func (m *GithubConnectorDelete) Reset() { *m = GithubConnectorDelete{} } func (m *GithubConnectorDelete) String() string { return proto.CompactTextString(m) } func (*GithubConnectorDelete) ProtoMessage() {} func (*GithubConnectorDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{63} + return fileDescriptor_007ba1c3d6266d56, []int{66} } func (m *GithubConnectorDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3624,7 +3766,7 @@ func (m *GithubConnectorDelete) XXX_DiscardUnknown() { var xxx_messageInfo_GithubConnectorDelete proto.InternalMessageInfo -// OIDCConnectorCreate fires when OIDC connector is created/updated. +// OIDCConnectorCreate fires when OIDC connector is created. type OIDCConnectorCreate struct { // Metadata is a common event metadata Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` @@ -3641,7 +3783,7 @@ func (m *OIDCConnectorCreate) Reset() { *m = OIDCConnectorCreate{} } func (m *OIDCConnectorCreate) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorCreate) ProtoMessage() {} func (*OIDCConnectorCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{64} + return fileDescriptor_007ba1c3d6266d56, []int{67} } func (m *OIDCConnectorCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3670,6 +3812,52 @@ func (m *OIDCConnectorCreate) XXX_DiscardUnknown() { var xxx_messageInfo_OIDCConnectorCreate proto.InternalMessageInfo +// OIDCConnectorUpdate fires when OIDC connector is updated. +type OIDCConnectorUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // ResourceMetadata is a common resource event metadata + ResourceMetadata `protobuf:"bytes,2,opt,name=Resource,proto3,embedded=Resource" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *OIDCConnectorUpdate) Reset() { *m = OIDCConnectorUpdate{} } +func (m *OIDCConnectorUpdate) String() string { return proto.CompactTextString(m) } +func (*OIDCConnectorUpdate) ProtoMessage() {} +func (*OIDCConnectorUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{68} +} +func (m *OIDCConnectorUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *OIDCConnectorUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_OIDCConnectorUpdate.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 *OIDCConnectorUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_OIDCConnectorUpdate.Merge(m, src) +} +func (m *OIDCConnectorUpdate) XXX_Size() int { + return m.Size() +} +func (m *OIDCConnectorUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_OIDCConnectorUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_OIDCConnectorUpdate proto.InternalMessageInfo + // OIDCConnectorDelete fires when OIDC connector is deleted. type OIDCConnectorDelete struct { // Metadata is a common event metadata @@ -3687,7 +3875,7 @@ func (m *OIDCConnectorDelete) Reset() { *m = OIDCConnectorDelete{} } func (m *OIDCConnectorDelete) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorDelete) ProtoMessage() {} func (*OIDCConnectorDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{65} + return fileDescriptor_007ba1c3d6266d56, []int{69} } func (m *OIDCConnectorDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3733,7 +3921,7 @@ func (m *SAMLConnectorCreate) Reset() { *m = SAMLConnectorCreate{} } func (m *SAMLConnectorCreate) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorCreate) ProtoMessage() {} func (*SAMLConnectorCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{66} + return fileDescriptor_007ba1c3d6266d56, []int{70} } func (m *SAMLConnectorCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3762,6 +3950,52 @@ func (m *SAMLConnectorCreate) XXX_DiscardUnknown() { var xxx_messageInfo_SAMLConnectorCreate proto.InternalMessageInfo +// SAMLConnectorUpdate fires when SAML connector is updated. +type SAMLConnectorUpdate struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // ResourceMetadata is a common resource event metadata + ResourceMetadata `protobuf:"bytes,2,opt,name=Resource,proto3,embedded=Resource" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,3,opt,name=User,proto3,embedded=User" json:""` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SAMLConnectorUpdate) Reset() { *m = SAMLConnectorUpdate{} } +func (m *SAMLConnectorUpdate) String() string { return proto.CompactTextString(m) } +func (*SAMLConnectorUpdate) ProtoMessage() {} +func (*SAMLConnectorUpdate) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{71} +} +func (m *SAMLConnectorUpdate) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *SAMLConnectorUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_SAMLConnectorUpdate.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 *SAMLConnectorUpdate) XXX_Merge(src proto.Message) { + xxx_messageInfo_SAMLConnectorUpdate.Merge(m, src) +} +func (m *SAMLConnectorUpdate) XXX_Size() int { + return m.Size() +} +func (m *SAMLConnectorUpdate) XXX_DiscardUnknown() { + xxx_messageInfo_SAMLConnectorUpdate.DiscardUnknown(m) +} + +var xxx_messageInfo_SAMLConnectorUpdate proto.InternalMessageInfo + // SAMLConnectorDelete fires when SAML connector is deleted. type SAMLConnectorDelete struct { // Metadata is a common event metadata @@ -3779,7 +4013,7 @@ func (m *SAMLConnectorDelete) Reset() { *m = SAMLConnectorDelete{} } func (m *SAMLConnectorDelete) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorDelete) ProtoMessage() {} func (*SAMLConnectorDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{67} + return fileDescriptor_007ba1c3d6266d56, []int{72} } func (m *SAMLConnectorDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3845,7 +4079,7 @@ func (m *KubeRequest) Reset() { *m = KubeRequest{} } func (m *KubeRequest) String() string { return proto.CompactTextString(m) } func (*KubeRequest) ProtoMessage() {} func (*KubeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{68} + return fileDescriptor_007ba1c3d6266d56, []int{73} } func (m *KubeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3893,7 +4127,7 @@ func (m *AppMetadata) Reset() { *m = AppMetadata{} } func (m *AppMetadata) String() string { return proto.CompactTextString(m) } func (*AppMetadata) ProtoMessage() {} func (*AppMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{69} + return fileDescriptor_007ba1c3d6266d56, []int{74} } func (m *AppMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3941,7 +4175,7 @@ func (m *AppCreate) Reset() { *m = AppCreate{} } func (m *AppCreate) String() string { return proto.CompactTextString(m) } func (*AppCreate) ProtoMessage() {} func (*AppCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{70} + return fileDescriptor_007ba1c3d6266d56, []int{75} } func (m *AppCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3989,7 +4223,7 @@ func (m *AppUpdate) Reset() { *m = AppUpdate{} } func (m *AppUpdate) String() string { return proto.CompactTextString(m) } func (*AppUpdate) ProtoMessage() {} func (*AppUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{71} + return fileDescriptor_007ba1c3d6266d56, []int{76} } func (m *AppUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4035,7 +4269,7 @@ func (m *AppDelete) Reset() { *m = AppDelete{} } func (m *AppDelete) String() string { return proto.CompactTextString(m) } func (*AppDelete) ProtoMessage() {} func (*AppDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{72} + return fileDescriptor_007ba1c3d6266d56, []int{77} } func (m *AppDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4090,7 +4324,7 @@ func (m *AppSessionStart) Reset() { *m = AppSessionStart{} } func (m *AppSessionStart) String() string { return proto.CompactTextString(m) } func (*AppSessionStart) ProtoMessage() {} func (*AppSessionStart) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{73} + return fileDescriptor_007ba1c3d6266d56, []int{78} } func (m *AppSessionStart) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4142,7 +4376,7 @@ func (m *AppSessionEnd) Reset() { *m = AppSessionEnd{} } func (m *AppSessionEnd) String() string { return proto.CompactTextString(m) } func (*AppSessionEnd) ProtoMessage() {} func (*AppSessionEnd) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{74} + return fileDescriptor_007ba1c3d6266d56, []int{79} } func (m *AppSessionEnd) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4199,7 +4433,7 @@ func (m *AppSessionChunk) Reset() { *m = AppSessionChunk{} } func (m *AppSessionChunk) String() string { return proto.CompactTextString(m) } func (*AppSessionChunk) ProtoMessage() {} func (*AppSessionChunk) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{75} + return fileDescriptor_007ba1c3d6266d56, []int{80} } func (m *AppSessionChunk) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4253,7 +4487,7 @@ func (m *AppSessionRequest) Reset() { *m = AppSessionRequest{} } func (m *AppSessionRequest) String() string { return proto.CompactTextString(m) } func (*AppSessionRequest) ProtoMessage() {} func (*AppSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{76} + return fileDescriptor_007ba1c3d6266d56, []int{81} } func (m *AppSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4301,7 +4535,7 @@ func (m *AWSRequestMetadata) Reset() { *m = AWSRequestMetadata{} } func (m *AWSRequestMetadata) String() string { return proto.CompactTextString(m) } func (*AWSRequestMetadata) ProtoMessage() {} func (*AWSRequestMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{77} + return fileDescriptor_007ba1c3d6266d56, []int{82} } func (m *AWSRequestMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4367,7 +4601,7 @@ func (m *DatabaseMetadata) Reset() { *m = DatabaseMetadata{} } func (m *DatabaseMetadata) String() string { return proto.CompactTextString(m) } func (*DatabaseMetadata) ProtoMessage() {} func (*DatabaseMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{78} + return fileDescriptor_007ba1c3d6266d56, []int{83} } func (m *DatabaseMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4415,7 +4649,7 @@ func (m *DatabaseCreate) Reset() { *m = DatabaseCreate{} } func (m *DatabaseCreate) String() string { return proto.CompactTextString(m) } func (*DatabaseCreate) ProtoMessage() {} func (*DatabaseCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{79} + return fileDescriptor_007ba1c3d6266d56, []int{84} } func (m *DatabaseCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4463,7 +4697,7 @@ func (m *DatabaseUpdate) Reset() { *m = DatabaseUpdate{} } func (m *DatabaseUpdate) String() string { return proto.CompactTextString(m) } func (*DatabaseUpdate) ProtoMessage() {} func (*DatabaseUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{80} + return fileDescriptor_007ba1c3d6266d56, []int{85} } func (m *DatabaseUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4509,7 +4743,7 @@ func (m *DatabaseDelete) Reset() { *m = DatabaseDelete{} } func (m *DatabaseDelete) String() string { return proto.CompactTextString(m) } func (*DatabaseDelete) ProtoMessage() {} func (*DatabaseDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{81} + return fileDescriptor_007ba1c3d6266d56, []int{86} } func (m *DatabaseDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4563,7 +4797,7 @@ func (m *DatabaseSessionStart) Reset() { *m = DatabaseSessionStart{} } func (m *DatabaseSessionStart) String() string { return proto.CompactTextString(m) } func (*DatabaseSessionStart) ProtoMessage() {} func (*DatabaseSessionStart) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{82} + return fileDescriptor_007ba1c3d6266d56, []int{87} } func (m *DatabaseSessionStart) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4617,7 +4851,7 @@ func (m *DatabaseSessionQuery) Reset() { *m = DatabaseSessionQuery{} } func (m *DatabaseSessionQuery) String() string { return proto.CompactTextString(m) } func (*DatabaseSessionQuery) ProtoMessage() {} func (*DatabaseSessionQuery) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{83} + return fileDescriptor_007ba1c3d6266d56, []int{88} } func (m *DatabaseSessionQuery) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4670,7 +4904,7 @@ func (m *PostgresParse) Reset() { *m = PostgresParse{} } func (m *PostgresParse) String() string { return proto.CompactTextString(m) } func (*PostgresParse) ProtoMessage() {} func (*PostgresParse) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{84} + return fileDescriptor_007ba1c3d6266d56, []int{89} } func (m *PostgresParse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4725,7 +4959,7 @@ func (m *PostgresBind) Reset() { *m = PostgresBind{} } func (m *PostgresBind) String() string { return proto.CompactTextString(m) } func (*PostgresBind) ProtoMessage() {} func (*PostgresBind) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{85} + return fileDescriptor_007ba1c3d6266d56, []int{90} } func (m *PostgresBind) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4776,7 +5010,7 @@ func (m *PostgresExecute) Reset() { *m = PostgresExecute{} } func (m *PostgresExecute) String() string { return proto.CompactTextString(m) } func (*PostgresExecute) ProtoMessage() {} func (*PostgresExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{86} + return fileDescriptor_007ba1c3d6266d56, []int{91} } func (m *PostgresExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4829,7 +5063,7 @@ func (m *PostgresClose) Reset() { *m = PostgresClose{} } func (m *PostgresClose) String() string { return proto.CompactTextString(m) } func (*PostgresClose) ProtoMessage() {} func (*PostgresClose) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{87} + return fileDescriptor_007ba1c3d6266d56, []int{92} } func (m *PostgresClose) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4882,7 +5116,7 @@ func (m *PostgresFunctionCall) Reset() { *m = PostgresFunctionCall{} } func (m *PostgresFunctionCall) String() string { return proto.CompactTextString(m) } func (*PostgresFunctionCall) ProtoMessage() {} func (*PostgresFunctionCall) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{88} + return fileDescriptor_007ba1c3d6266d56, []int{93} } func (m *PostgresFunctionCall) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4947,7 +5181,7 @@ func (m *WindowsDesktopSessionStart) Reset() { *m = WindowsDesktopSessio func (m *WindowsDesktopSessionStart) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopSessionStart) ProtoMessage() {} func (*WindowsDesktopSessionStart) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{89} + return fileDescriptor_007ba1c3d6266d56, []int{94} } func (m *WindowsDesktopSessionStart) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4995,7 +5229,7 @@ func (m *DatabaseSessionEnd) Reset() { *m = DatabaseSessionEnd{} } func (m *DatabaseSessionEnd) String() string { return proto.CompactTextString(m) } func (*DatabaseSessionEnd) ProtoMessage() {} func (*DatabaseSessionEnd) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{90} + return fileDescriptor_007ba1c3d6266d56, []int{95} } func (m *DatabaseSessionEnd) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5041,7 +5275,7 @@ func (m *MFADeviceMetadata) Reset() { *m = MFADeviceMetadata{} } func (m *MFADeviceMetadata) String() string { return proto.CompactTextString(m) } func (*MFADeviceMetadata) ProtoMessage() {} func (*MFADeviceMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{91} + return fileDescriptor_007ba1c3d6266d56, []int{96} } func (m *MFADeviceMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5087,7 +5321,7 @@ func (m *MFADeviceAdd) Reset() { *m = MFADeviceAdd{} } func (m *MFADeviceAdd) String() string { return proto.CompactTextString(m) } func (*MFADeviceAdd) ProtoMessage() {} func (*MFADeviceAdd) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{92} + return fileDescriptor_007ba1c3d6266d56, []int{97} } func (m *MFADeviceAdd) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5133,7 +5367,7 @@ func (m *MFADeviceDelete) Reset() { *m = MFADeviceDelete{} } func (m *MFADeviceDelete) String() string { return proto.CompactTextString(m) } func (*MFADeviceDelete) ProtoMessage() {} func (*MFADeviceDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{93} + return fileDescriptor_007ba1c3d6266d56, []int{98} } func (m *MFADeviceDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5177,7 +5411,7 @@ func (m *BillingInformationUpdate) Reset() { *m = BillingInformationUpda func (m *BillingInformationUpdate) String() string { return proto.CompactTextString(m) } func (*BillingInformationUpdate) ProtoMessage() {} func (*BillingInformationUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{94} + return fileDescriptor_007ba1c3d6266d56, []int{99} } func (m *BillingInformationUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5221,7 +5455,7 @@ func (m *BillingCardCreate) Reset() { *m = BillingCardCreate{} } func (m *BillingCardCreate) String() string { return proto.CompactTextString(m) } func (*BillingCardCreate) ProtoMessage() {} func (*BillingCardCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{95} + return fileDescriptor_007ba1c3d6266d56, []int{100} } func (m *BillingCardCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5265,7 +5499,7 @@ func (m *BillingCardDelete) Reset() { *m = BillingCardDelete{} } func (m *BillingCardDelete) String() string { return proto.CompactTextString(m) } func (*BillingCardDelete) ProtoMessage() {} func (*BillingCardDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{96} + return fileDescriptor_007ba1c3d6266d56, []int{101} } func (m *BillingCardDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5316,7 +5550,7 @@ func (m *LockCreate) Reset() { *m = LockCreate{} } func (m *LockCreate) String() string { return proto.CompactTextString(m) } func (*LockCreate) ProtoMessage() {} func (*LockCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{97} + return fileDescriptor_007ba1c3d6266d56, []int{102} } func (m *LockCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5362,7 +5596,7 @@ func (m *LockDelete) Reset() { *m = LockDelete{} } func (m *LockDelete) String() string { return proto.CompactTextString(m) } func (*LockDelete) ProtoMessage() {} func (*LockDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{98} + return fileDescriptor_007ba1c3d6266d56, []int{103} } func (m *LockDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5406,7 +5640,7 @@ func (m *RecoveryCodeGenerate) Reset() { *m = RecoveryCodeGenerate{} } func (m *RecoveryCodeGenerate) String() string { return proto.CompactTextString(m) } func (*RecoveryCodeGenerate) ProtoMessage() {} func (*RecoveryCodeGenerate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{99} + return fileDescriptor_007ba1c3d6266d56, []int{104} } func (m *RecoveryCodeGenerate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5453,7 +5687,7 @@ func (m *RecoveryCodeUsed) Reset() { *m = RecoveryCodeUsed{} } func (m *RecoveryCodeUsed) String() string { return proto.CompactTextString(m) } func (*RecoveryCodeUsed) ProtoMessage() {} func (*RecoveryCodeUsed) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{100} + return fileDescriptor_007ba1c3d6266d56, []int{105} } func (m *RecoveryCodeUsed) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5519,7 +5753,7 @@ func (m *WindowsDesktopSessionEnd) Reset() { *m = WindowsDesktopSessionE func (m *WindowsDesktopSessionEnd) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopSessionEnd) ProtoMessage() {} func (*WindowsDesktopSessionEnd) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{101} + return fileDescriptor_007ba1c3d6266d56, []int{106} } func (m *WindowsDesktopSessionEnd) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5565,7 +5799,7 @@ func (m *CertificateCreate) Reset() { *m = CertificateCreate{} } func (m *CertificateCreate) String() string { return proto.CompactTextString(m) } func (*CertificateCreate) ProtoMessage() {} func (*CertificateCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{102} + return fileDescriptor_007ba1c3d6266d56, []int{107} } func (m *CertificateCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5613,7 +5847,7 @@ func (m *RenewableCertificateGenerationMismatch) Reset() { func (m *RenewableCertificateGenerationMismatch) String() string { return proto.CompactTextString(m) } func (*RenewableCertificateGenerationMismatch) ProtoMessage() {} func (*RenewableCertificateGenerationMismatch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{103} + return fileDescriptor_007ba1c3d6266d56, []int{108} } func (m *RenewableCertificateGenerationMismatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5665,7 +5899,7 @@ func (m *BotJoin) Reset() { *m = BotJoin{} } func (m *BotJoin) String() string { return proto.CompactTextString(m) } func (*BotJoin) ProtoMessage() {} func (*BotJoin) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{104} + return fileDescriptor_007ba1c3d6266d56, []int{109} } func (m *BotJoin) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5725,7 +5959,7 @@ func (m *InstanceJoin) Reset() { *m = InstanceJoin{} } func (m *InstanceJoin) String() string { return proto.CompactTextString(m) } func (*InstanceJoin) ProtoMessage() {} func (*InstanceJoin) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{105} + return fileDescriptor_007ba1c3d6266d56, []int{110} } func (m *InstanceJoin) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5773,7 +6007,7 @@ func (m *Unknown) Reset() { *m = Unknown{} } func (m *Unknown) String() string { return proto.CompactTextString(m) } func (*Unknown) ProtoMessage() {} func (*Unknown) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{106} + return fileDescriptor_007ba1c3d6266d56, []int{111} } func (m *Unknown) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5823,7 +6057,7 @@ func (m *DeviceMetadata) Reset() { *m = DeviceMetadata{} } func (m *DeviceMetadata) String() string { return proto.CompactTextString(m) } func (*DeviceMetadata) ProtoMessage() {} func (*DeviceMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{107} + return fileDescriptor_007ba1c3d6266d56, []int{112} } func (m *DeviceMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5874,7 +6108,7 @@ func (m *DeviceEvent) Reset() { *m = DeviceEvent{} } func (m *DeviceEvent) String() string { return proto.CompactTextString(m) } func (*DeviceEvent) ProtoMessage() {} func (*DeviceEvent) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{108} + return fileDescriptor_007ba1c3d6266d56, []int{113} } func (m *DeviceEvent) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5926,7 +6160,7 @@ func (m *DeviceEvent2) Reset() { *m = DeviceEvent2{} } func (m *DeviceEvent2) String() string { return proto.CompactTextString(m) } func (*DeviceEvent2) ProtoMessage() {} func (*DeviceEvent2) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{109} + return fileDescriptor_007ba1c3d6266d56, []int{114} } func (m *DeviceEvent2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6094,6 +6328,11 @@ type OneOf struct { // *OneOf_AccessListMemberDeleteAllForAccessList // *OneOf_AuditQueryRun // *OneOf_SecurityReportRun + // *OneOf_GithubConnectorUpdate + // *OneOf_OIDCConnectorUpdate + // *OneOf_SAMLConnectorUpdate + // *OneOf_RoleUpdate + // *OneOf_UserUpdate Event isOneOf_Event `protobuf_oneof:"Event"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -6104,7 +6343,7 @@ func (m *OneOf) Reset() { *m = OneOf{} } func (m *OneOf) String() string { return proto.CompactTextString(m) } func (*OneOf) ProtoMessage() {} func (*OneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{110} + return fileDescriptor_007ba1c3d6266d56, []int{115} } func (m *OneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6541,6 +6780,21 @@ type OneOf_AuditQueryRun struct { type OneOf_SecurityReportRun struct { SecurityReportRun *SecurityReportRun `protobuf:"bytes,135,opt,name=SecurityReportRun,proto3,oneof" json:"SecurityReportRun,omitempty"` } +type OneOf_GithubConnectorUpdate struct { + GithubConnectorUpdate *GithubConnectorUpdate `protobuf:"bytes,136,opt,name=GithubConnectorUpdate,proto3,oneof" json:"GithubConnectorUpdate,omitempty"` +} +type OneOf_OIDCConnectorUpdate struct { + OIDCConnectorUpdate *OIDCConnectorUpdate `protobuf:"bytes,137,opt,name=OIDCConnectorUpdate,proto3,oneof" json:"OIDCConnectorUpdate,omitempty"` +} +type OneOf_SAMLConnectorUpdate struct { + SAMLConnectorUpdate *SAMLConnectorUpdate `protobuf:"bytes,138,opt,name=SAMLConnectorUpdate,proto3,oneof" json:"SAMLConnectorUpdate,omitempty"` +} +type OneOf_RoleUpdate struct { + RoleUpdate *RoleUpdate `protobuf:"bytes,139,opt,name=RoleUpdate,proto3,oneof" json:"RoleUpdate,omitempty"` +} +type OneOf_UserUpdate struct { + UserUpdate *UserUpdate `protobuf:"bytes,140,opt,name=UserUpdate,proto3,oneof" json:"UserUpdate,omitempty"` +} func (*OneOf_UserLogin) isOneOf_Event() {} func (*OneOf_UserCreate) isOneOf_Event() {} @@ -6676,6 +6930,11 @@ func (*OneOf_AccessListMemberDelete) isOneOf_Event() {} func (*OneOf_AccessListMemberDeleteAllForAccessList) isOneOf_Event() {} func (*OneOf_AuditQueryRun) isOneOf_Event() {} func (*OneOf_SecurityReportRun) isOneOf_Event() {} +func (*OneOf_GithubConnectorUpdate) isOneOf_Event() {} +func (*OneOf_OIDCConnectorUpdate) isOneOf_Event() {} +func (*OneOf_SAMLConnectorUpdate) isOneOf_Event() {} +func (*OneOf_RoleUpdate) isOneOf_Event() {} +func (*OneOf_UserUpdate) isOneOf_Event() {} func (m *OneOf) GetEvent() isOneOf_Event { if m != nil { @@ -7622,6 +7881,41 @@ func (m *OneOf) GetSecurityReportRun() *SecurityReportRun { return nil } +func (m *OneOf) GetGithubConnectorUpdate() *GithubConnectorUpdate { + if x, ok := m.GetEvent().(*OneOf_GithubConnectorUpdate); ok { + return x.GithubConnectorUpdate + } + return nil +} + +func (m *OneOf) GetOIDCConnectorUpdate() *OIDCConnectorUpdate { + if x, ok := m.GetEvent().(*OneOf_OIDCConnectorUpdate); ok { + return x.OIDCConnectorUpdate + } + return nil +} + +func (m *OneOf) GetSAMLConnectorUpdate() *SAMLConnectorUpdate { + if x, ok := m.GetEvent().(*OneOf_SAMLConnectorUpdate); ok { + return x.SAMLConnectorUpdate + } + return nil +} + +func (m *OneOf) GetRoleUpdate() *RoleUpdate { + if x, ok := m.GetEvent().(*OneOf_RoleUpdate); ok { + return x.RoleUpdate + } + return nil +} + +func (m *OneOf) GetUserUpdate() *UserUpdate { + if x, ok := m.GetEvent().(*OneOf_UserUpdate); ok { + return x.UserUpdate + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OneOf) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -7759,6 +8053,11 @@ func (*OneOf) XXX_OneofWrappers() []interface{} { (*OneOf_AccessListMemberDeleteAllForAccessList)(nil), (*OneOf_AuditQueryRun)(nil), (*OneOf_SecurityReportRun)(nil), + (*OneOf_GithubConnectorUpdate)(nil), + (*OneOf_OIDCConnectorUpdate)(nil), + (*OneOf_SAMLConnectorUpdate)(nil), + (*OneOf_RoleUpdate)(nil), + (*OneOf_UserUpdate)(nil), } } @@ -7779,7 +8078,7 @@ func (m *StreamStatus) Reset() { *m = StreamStatus{} } func (m *StreamStatus) String() string { return proto.CompactTextString(m) } func (*StreamStatus) ProtoMessage() {} func (*StreamStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{111} + return fileDescriptor_007ba1c3d6266d56, []int{116} } func (m *StreamStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7825,7 +8124,7 @@ func (m *SessionUpload) Reset() { *m = SessionUpload{} } func (m *SessionUpload) String() string { return proto.CompactTextString(m) } func (*SessionUpload) ProtoMessage() {} func (*SessionUpload) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{112} + return fileDescriptor_007ba1c3d6266d56, []int{117} } func (m *SessionUpload) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7935,7 +8234,7 @@ func (m *Identity) Reset() { *m = Identity{} } func (m *Identity) String() string { return proto.CompactTextString(m) } func (*Identity) ProtoMessage() {} func (*Identity) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{113} + return fileDescriptor_007ba1c3d6266d56, []int{118} } func (m *Identity) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7989,7 +8288,7 @@ func (m *RouteToApp) Reset() { *m = RouteToApp{} } func (m *RouteToApp) String() string { return proto.CompactTextString(m) } func (*RouteToApp) ProtoMessage() {} func (*RouteToApp) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{114} + return fileDescriptor_007ba1c3d6266d56, []int{119} } func (m *RouteToApp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8037,7 +8336,7 @@ func (m *RouteToDatabase) Reset() { *m = RouteToDatabase{} } func (m *RouteToDatabase) String() string { return proto.CompactTextString(m) } func (*RouteToDatabase) ProtoMessage() {} func (*RouteToDatabase) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{115} + return fileDescriptor_007ba1c3d6266d56, []int{120} } func (m *RouteToDatabase) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8094,7 +8393,7 @@ func (m *AccessRequestResourceSearch) Reset() { *m = AccessRequestResour func (m *AccessRequestResourceSearch) String() string { return proto.CompactTextString(m) } func (*AccessRequestResourceSearch) ProtoMessage() {} func (*AccessRequestResourceSearch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{116} + return fileDescriptor_007ba1c3d6266d56, []int{121} } func (m *AccessRequestResourceSearch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8145,7 +8444,7 @@ func (m *MySQLStatementPrepare) Reset() { *m = MySQLStatementPrepare{} } func (m *MySQLStatementPrepare) String() string { return proto.CompactTextString(m) } func (*MySQLStatementPrepare) ProtoMessage() {} func (*MySQLStatementPrepare) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{117} + return fileDescriptor_007ba1c3d6266d56, []int{122} } func (m *MySQLStatementPrepare) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8198,7 +8497,7 @@ func (m *MySQLStatementExecute) Reset() { *m = MySQLStatementExecute{} } func (m *MySQLStatementExecute) String() string { return proto.CompactTextString(m) } func (*MySQLStatementExecute) ProtoMessage() {} func (*MySQLStatementExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{118} + return fileDescriptor_007ba1c3d6266d56, []int{123} } func (m *MySQLStatementExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8253,7 +8552,7 @@ func (m *MySQLStatementSendLongData) Reset() { *m = MySQLStatementSendLo func (m *MySQLStatementSendLongData) String() string { return proto.CompactTextString(m) } func (*MySQLStatementSendLongData) ProtoMessage() {} func (*MySQLStatementSendLongData) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{119} + return fileDescriptor_007ba1c3d6266d56, []int{124} } func (m *MySQLStatementSendLongData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8304,7 +8603,7 @@ func (m *MySQLStatementClose) Reset() { *m = MySQLStatementClose{} } func (m *MySQLStatementClose) String() string { return proto.CompactTextString(m) } func (*MySQLStatementClose) ProtoMessage() {} func (*MySQLStatementClose) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{120} + return fileDescriptor_007ba1c3d6266d56, []int{125} } func (m *MySQLStatementClose) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8355,7 +8654,7 @@ func (m *MySQLStatementReset) Reset() { *m = MySQLStatementReset{} } func (m *MySQLStatementReset) String() string { return proto.CompactTextString(m) } func (*MySQLStatementReset) ProtoMessage() {} func (*MySQLStatementReset) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{121} + return fileDescriptor_007ba1c3d6266d56, []int{126} } func (m *MySQLStatementReset) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8408,7 +8707,7 @@ func (m *MySQLStatementFetch) Reset() { *m = MySQLStatementFetch{} } func (m *MySQLStatementFetch) String() string { return proto.CompactTextString(m) } func (*MySQLStatementFetch) ProtoMessage() {} func (*MySQLStatementFetch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{122} + return fileDescriptor_007ba1c3d6266d56, []int{127} } func (m *MySQLStatementFetch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8461,7 +8760,7 @@ func (m *MySQLStatementBulkExecute) Reset() { *m = MySQLStatementBulkExe func (m *MySQLStatementBulkExecute) String() string { return proto.CompactTextString(m) } func (*MySQLStatementBulkExecute) ProtoMessage() {} func (*MySQLStatementBulkExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{123} + return fileDescriptor_007ba1c3d6266d56, []int{128} } func (m *MySQLStatementBulkExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8512,7 +8811,7 @@ func (m *MySQLInitDB) Reset() { *m = MySQLInitDB{} } func (m *MySQLInitDB) String() string { return proto.CompactTextString(m) } func (*MySQLInitDB) ProtoMessage() {} func (*MySQLInitDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{124} + return fileDescriptor_007ba1c3d6266d56, []int{129} } func (m *MySQLInitDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8562,7 +8861,7 @@ func (m *MySQLCreateDB) Reset() { *m = MySQLCreateDB{} } func (m *MySQLCreateDB) String() string { return proto.CompactTextString(m) } func (*MySQLCreateDB) ProtoMessage() {} func (*MySQLCreateDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{125} + return fileDescriptor_007ba1c3d6266d56, []int{130} } func (m *MySQLCreateDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8612,7 +8911,7 @@ func (m *MySQLDropDB) Reset() { *m = MySQLDropDB{} } func (m *MySQLDropDB) String() string { return proto.CompactTextString(m) } func (*MySQLDropDB) ProtoMessage() {} func (*MySQLDropDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{126} + return fileDescriptor_007ba1c3d6266d56, []int{131} } func (m *MySQLDropDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8660,7 +8959,7 @@ func (m *MySQLShutDown) Reset() { *m = MySQLShutDown{} } func (m *MySQLShutDown) String() string { return proto.CompactTextString(m) } func (*MySQLShutDown) ProtoMessage() {} func (*MySQLShutDown) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{127} + return fileDescriptor_007ba1c3d6266d56, []int{132} } func (m *MySQLShutDown) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8711,7 +9010,7 @@ func (m *MySQLProcessKill) Reset() { *m = MySQLProcessKill{} } func (m *MySQLProcessKill) String() string { return proto.CompactTextString(m) } func (*MySQLProcessKill) ProtoMessage() {} func (*MySQLProcessKill) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{128} + return fileDescriptor_007ba1c3d6266d56, []int{133} } func (m *MySQLProcessKill) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8760,7 +9059,7 @@ func (m *MySQLDebug) Reset() { *m = MySQLDebug{} } func (m *MySQLDebug) String() string { return proto.CompactTextString(m) } func (*MySQLDebug) ProtoMessage() {} func (*MySQLDebug) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{129} + return fileDescriptor_007ba1c3d6266d56, []int{134} } func (m *MySQLDebug) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8810,7 +9109,7 @@ func (m *MySQLRefresh) Reset() { *m = MySQLRefresh{} } func (m *MySQLRefresh) String() string { return proto.CompactTextString(m) } func (*MySQLRefresh) ProtoMessage() {} func (*MySQLRefresh) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{130} + return fileDescriptor_007ba1c3d6266d56, []int{135} } func (m *MySQLRefresh) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8862,7 +9161,7 @@ func (m *SQLServerRPCRequest) Reset() { *m = SQLServerRPCRequest{} } func (m *SQLServerRPCRequest) String() string { return proto.CompactTextString(m) } func (*SQLServerRPCRequest) ProtoMessage() {} func (*SQLServerRPCRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{131} + return fileDescriptor_007ba1c3d6266d56, []int{136} } func (m *SQLServerRPCRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8912,7 +9211,7 @@ func (m *DatabaseSessionMalformedPacket) Reset() { *m = DatabaseSessionM func (m *DatabaseSessionMalformedPacket) String() string { return proto.CompactTextString(m) } func (*DatabaseSessionMalformedPacket) ProtoMessage() {} func (*DatabaseSessionMalformedPacket) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{132} + return fileDescriptor_007ba1c3d6266d56, []int{137} } func (m *DatabaseSessionMalformedPacket) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8979,7 +9278,7 @@ func (m *ElasticsearchRequest) Reset() { *m = ElasticsearchRequest{} } func (m *ElasticsearchRequest) String() string { return proto.CompactTextString(m) } func (*ElasticsearchRequest) ProtoMessage() {} func (*ElasticsearchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{133} + return fileDescriptor_007ba1c3d6266d56, []int{138} } func (m *ElasticsearchRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9045,7 +9344,7 @@ func (m *OpenSearchRequest) Reset() { *m = OpenSearchRequest{} } func (m *OpenSearchRequest) String() string { return proto.CompactTextString(m) } func (*OpenSearchRequest) ProtoMessage() {} func (*OpenSearchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{134} + return fileDescriptor_007ba1c3d6266d56, []int{139} } func (m *OpenSearchRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9105,7 +9404,7 @@ func (m *DynamoDBRequest) Reset() { *m = DynamoDBRequest{} } func (m *DynamoDBRequest) String() string { return proto.CompactTextString(m) } func (*DynamoDBRequest) ProtoMessage() {} func (*DynamoDBRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{135} + return fileDescriptor_007ba1c3d6266d56, []int{140} } func (m *DynamoDBRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9171,7 +9470,7 @@ func (m *AppSessionDynamoDBRequest) Reset() { *m = AppSessionDynamoDBReq func (m *AppSessionDynamoDBRequest) String() string { return proto.CompactTextString(m) } func (*AppSessionDynamoDBRequest) ProtoMessage() {} func (*AppSessionDynamoDBRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{136} + return fileDescriptor_007ba1c3d6266d56, []int{141} } func (m *AppSessionDynamoDBRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9213,7 +9512,7 @@ func (m *UpgradeWindowStartMetadata) Reset() { *m = UpgradeWindowStartMe func (m *UpgradeWindowStartMetadata) String() string { return proto.CompactTextString(m) } func (*UpgradeWindowStartMetadata) ProtoMessage() {} func (*UpgradeWindowStartMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{137} + return fileDescriptor_007ba1c3d6266d56, []int{142} } func (m *UpgradeWindowStartMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9261,7 +9560,7 @@ func (m *UpgradeWindowStartUpdate) Reset() { *m = UpgradeWindowStartUpda func (m *UpgradeWindowStartUpdate) String() string { return proto.CompactTextString(m) } func (*UpgradeWindowStartUpdate) ProtoMessage() {} func (*UpgradeWindowStartUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{138} + return fileDescriptor_007ba1c3d6266d56, []int{143} } func (m *UpgradeWindowStartUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9308,7 +9607,7 @@ func (m *SessionRecordingAccess) Reset() { *m = SessionRecordingAccess{} func (m *SessionRecordingAccess) String() string { return proto.CompactTextString(m) } func (*SessionRecordingAccess) ProtoMessage() {} func (*SessionRecordingAccess) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{139} + return fileDescriptor_007ba1c3d6266d56, []int{144} } func (m *SessionRecordingAccess) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9350,7 +9649,7 @@ func (m *KubeClusterMetadata) Reset() { *m = KubeClusterMetadata{} } func (m *KubeClusterMetadata) String() string { return proto.CompactTextString(m) } func (*KubeClusterMetadata) ProtoMessage() {} func (*KubeClusterMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{140} + return fileDescriptor_007ba1c3d6266d56, []int{145} } func (m *KubeClusterMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9398,7 +9697,7 @@ func (m *KubernetesClusterCreate) Reset() { *m = KubernetesClusterCreate func (m *KubernetesClusterCreate) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterCreate) ProtoMessage() {} func (*KubernetesClusterCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{141} + return fileDescriptor_007ba1c3d6266d56, []int{146} } func (m *KubernetesClusterCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9446,7 +9745,7 @@ func (m *KubernetesClusterUpdate) Reset() { *m = KubernetesClusterUpdate func (m *KubernetesClusterUpdate) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterUpdate) ProtoMessage() {} func (*KubernetesClusterUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{142} + return fileDescriptor_007ba1c3d6266d56, []int{147} } func (m *KubernetesClusterUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9492,7 +9791,7 @@ func (m *KubernetesClusterDelete) Reset() { *m = KubernetesClusterDelete func (m *KubernetesClusterDelete) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterDelete) ProtoMessage() {} func (*KubernetesClusterDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{143} + return fileDescriptor_007ba1c3d6266d56, []int{148} } func (m *KubernetesClusterDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9546,7 +9845,7 @@ func (m *SSMRun) Reset() { *m = SSMRun{} } func (m *SSMRun) String() string { return proto.CompactTextString(m) } func (*SSMRun) ProtoMessage() {} func (*SSMRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{144} + return fileDescriptor_007ba1c3d6266d56, []int{149} } func (m *SSMRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9599,7 +9898,7 @@ func (m *CassandraPrepare) Reset() { *m = CassandraPrepare{} } func (m *CassandraPrepare) String() string { return proto.CompactTextString(m) } func (*CassandraPrepare) ProtoMessage() {} func (*CassandraPrepare) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{145} + return fileDescriptor_007ba1c3d6266d56, []int{150} } func (m *CassandraPrepare) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9649,7 +9948,7 @@ func (m *CassandraExecute) Reset() { *m = CassandraExecute{} } func (m *CassandraExecute) String() string { return proto.CompactTextString(m) } func (*CassandraExecute) ProtoMessage() {} func (*CassandraExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{146} + return fileDescriptor_007ba1c3d6266d56, []int{151} } func (m *CassandraExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9705,7 +10004,7 @@ func (m *CassandraBatch) Reset() { *m = CassandraBatch{} } func (m *CassandraBatch) String() string { return proto.CompactTextString(m) } func (*CassandraBatch) ProtoMessage() {} func (*CassandraBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{147} + return fileDescriptor_007ba1c3d6266d56, []int{152} } func (m *CassandraBatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9751,7 +10050,7 @@ func (m *CassandraBatch_BatchChild) Reset() { *m = CassandraBatch_BatchC func (m *CassandraBatch_BatchChild) String() string { return proto.CompactTextString(m) } func (*CassandraBatch_BatchChild) ProtoMessage() {} func (*CassandraBatch_BatchChild) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{147, 0} + return fileDescriptor_007ba1c3d6266d56, []int{152, 0} } func (m *CassandraBatch_BatchChild) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9795,7 +10094,7 @@ func (m *CassandraBatch_BatchChild_Value) Reset() { *m = CassandraBatch_ func (m *CassandraBatch_BatchChild_Value) String() string { return proto.CompactTextString(m) } func (*CassandraBatch_BatchChild_Value) ProtoMessage() {} func (*CassandraBatch_BatchChild_Value) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{147, 0, 0} + return fileDescriptor_007ba1c3d6266d56, []int{152, 0, 0} } func (m *CassandraBatch_BatchChild_Value) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9846,7 +10145,7 @@ func (m *CassandraRegister) Reset() { *m = CassandraRegister{} } func (m *CassandraRegister) String() string { return proto.CompactTextString(m) } func (*CassandraRegister) ProtoMessage() {} func (*CassandraRegister) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{148} + return fileDescriptor_007ba1c3d6266d56, []int{153} } func (m *CassandraRegister) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9892,7 +10191,7 @@ func (m *LoginRuleCreate) Reset() { *m = LoginRuleCreate{} } func (m *LoginRuleCreate) String() string { return proto.CompactTextString(m) } func (*LoginRuleCreate) ProtoMessage() {} func (*LoginRuleCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{149} + return fileDescriptor_007ba1c3d6266d56, []int{154} } func (m *LoginRuleCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9938,7 +10237,7 @@ func (m *LoginRuleDelete) Reset() { *m = LoginRuleDelete{} } func (m *LoginRuleDelete) String() string { return proto.CompactTextString(m) } func (*LoginRuleDelete) ProtoMessage() {} func (*LoginRuleDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{150} + return fileDescriptor_007ba1c3d6266d56, []int{155} } func (m *LoginRuleDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9988,7 +10287,7 @@ func (m *SAMLIdPAuthAttempt) Reset() { *m = SAMLIdPAuthAttempt{} } func (m *SAMLIdPAuthAttempt) String() string { return proto.CompactTextString(m) } func (*SAMLIdPAuthAttempt) ProtoMessage() {} func (*SAMLIdPAuthAttempt) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{151} + return fileDescriptor_007ba1c3d6266d56, []int{156} } func (m *SAMLIdPAuthAttempt) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10034,7 +10333,7 @@ func (m *SAMLIdPServiceProviderCreate) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderCreate) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderCreate) ProtoMessage() {} func (*SAMLIdPServiceProviderCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{152} + return fileDescriptor_007ba1c3d6266d56, []int{157} } func (m *SAMLIdPServiceProviderCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10080,7 +10379,7 @@ func (m *SAMLIdPServiceProviderUpdate) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderUpdate) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderUpdate) ProtoMessage() {} func (*SAMLIdPServiceProviderUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{153} + return fileDescriptor_007ba1c3d6266d56, []int{158} } func (m *SAMLIdPServiceProviderUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10126,7 +10425,7 @@ func (m *SAMLIdPServiceProviderDelete) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderDelete) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderDelete) ProtoMessage() {} func (*SAMLIdPServiceProviderDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{154} + return fileDescriptor_007ba1c3d6266d56, []int{159} } func (m *SAMLIdPServiceProviderDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10170,7 +10469,7 @@ func (m *SAMLIdPServiceProviderDeleteAll) Reset() { *m = SAMLIdPServiceP func (m *SAMLIdPServiceProviderDeleteAll) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderDeleteAll) ProtoMessage() {} func (*SAMLIdPServiceProviderDeleteAll) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{155} + return fileDescriptor_007ba1c3d6266d56, []int{160} } func (m *SAMLIdPServiceProviderDeleteAll) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10216,7 +10515,7 @@ func (m *OktaResourcesUpdate) Reset() { *m = OktaResourcesUpdate{} } func (m *OktaResourcesUpdate) String() string { return proto.CompactTextString(m) } func (*OktaResourcesUpdate) ProtoMessage() {} func (*OktaResourcesUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{156} + return fileDescriptor_007ba1c3d6266d56, []int{161} } func (m *OktaResourcesUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10262,7 +10561,7 @@ func (m *OktaSyncFailure) Reset() { *m = OktaSyncFailure{} } func (m *OktaSyncFailure) String() string { return proto.CompactTextString(m) } func (*OktaSyncFailure) ProtoMessage() {} func (*OktaSyncFailure) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{157} + return fileDescriptor_007ba1c3d6266d56, []int{162} } func (m *OktaSyncFailure) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10312,7 +10611,7 @@ func (m *OktaAssignmentResult) Reset() { *m = OktaAssignmentResult{} } func (m *OktaAssignmentResult) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentResult) ProtoMessage() {} func (*OktaAssignmentResult) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{158} + return fileDescriptor_007ba1c3d6266d56, []int{163} } func (m *OktaAssignmentResult) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10358,7 +10657,7 @@ func (m *AccessListCreate) Reset() { *m = AccessListCreate{} } func (m *AccessListCreate) String() string { return proto.CompactTextString(m) } func (*AccessListCreate) ProtoMessage() {} func (*AccessListCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{159} + return fileDescriptor_007ba1c3d6266d56, []int{164} } func (m *AccessListCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10404,7 +10703,7 @@ func (m *AccessListUpdate) Reset() { *m = AccessListUpdate{} } func (m *AccessListUpdate) String() string { return proto.CompactTextString(m) } func (*AccessListUpdate) ProtoMessage() {} func (*AccessListUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{160} + return fileDescriptor_007ba1c3d6266d56, []int{165} } func (m *AccessListUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10450,7 +10749,7 @@ func (m *AccessListDelete) Reset() { *m = AccessListDelete{} } func (m *AccessListDelete) String() string { return proto.CompactTextString(m) } func (*AccessListDelete) ProtoMessage() {} func (*AccessListDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{161} + return fileDescriptor_007ba1c3d6266d56, []int{166} } func (m *AccessListDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10498,7 +10797,7 @@ func (m *AccessListMemberCreate) Reset() { *m = AccessListMemberCreate{} func (m *AccessListMemberCreate) String() string { return proto.CompactTextString(m) } func (*AccessListMemberCreate) ProtoMessage() {} func (*AccessListMemberCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{162} + return fileDescriptor_007ba1c3d6266d56, []int{167} } func (m *AccessListMemberCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10546,7 +10845,7 @@ func (m *AccessListMemberUpdate) Reset() { *m = AccessListMemberUpdate{} func (m *AccessListMemberUpdate) String() string { return proto.CompactTextString(m) } func (*AccessListMemberUpdate) ProtoMessage() {} func (*AccessListMemberUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{163} + return fileDescriptor_007ba1c3d6266d56, []int{168} } func (m *AccessListMemberUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10594,7 +10893,7 @@ func (m *AccessListMemberDelete) Reset() { *m = AccessListMemberDelete{} func (m *AccessListMemberDelete) String() string { return proto.CompactTextString(m) } func (*AccessListMemberDelete) ProtoMessage() {} func (*AccessListMemberDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{164} + return fileDescriptor_007ba1c3d6266d56, []int{169} } func (m *AccessListMemberDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10644,7 +10943,7 @@ func (m *AccessListMemberDeleteAllForAccessList) Reset() { func (m *AccessListMemberDeleteAllForAccessList) String() string { return proto.CompactTextString(m) } func (*AccessListMemberDeleteAllForAccessList) ProtoMessage() {} func (*AccessListMemberDeleteAllForAccessList) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{165} + return fileDescriptor_007ba1c3d6266d56, []int{170} } func (m *AccessListMemberDeleteAllForAccessList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10692,7 +10991,7 @@ func (m *AccessListReview) Reset() { *m = AccessListReview{} } func (m *AccessListReview) String() string { return proto.CompactTextString(m) } func (*AccessListReview) ProtoMessage() {} func (*AccessListReview) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{166} + return fileDescriptor_007ba1c3d6266d56, []int{171} } func (m *AccessListReview) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10740,7 +11039,7 @@ func (m *AuditQueryRun) Reset() { *m = AuditQueryRun{} } func (m *AuditQueryRun) String() string { return proto.CompactTextString(m) } func (*AuditQueryRun) ProtoMessage() {} func (*AuditQueryRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{167} + return fileDescriptor_007ba1c3d6266d56, []int{172} } func (m *AuditQueryRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10790,7 +11089,7 @@ func (m *AuditQueryDetails) Reset() { *m = AuditQueryDetails{} } func (m *AuditQueryDetails) String() string { return proto.CompactTextString(m) } func (*AuditQueryDetails) ProtoMessage() {} func (*AuditQueryDetails) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{168} + return fileDescriptor_007ba1c3d6266d56, []int{173} } func (m *AuditQueryDetails) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10846,7 +11145,7 @@ func (m *SecurityReportRun) Reset() { *m = SecurityReportRun{} } func (m *SecurityReportRun) String() string { return proto.CompactTextString(m) } func (*SecurityReportRun) ProtoMessage() {} func (*SecurityReportRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{169} + return fileDescriptor_007ba1c3d6266d56, []int{174} } func (m *SecurityReportRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10926,6 +11225,7 @@ func init() { proto.RegisterType((*UserLogin)(nil), "events.UserLogin") proto.RegisterType((*ResourceMetadata)(nil), "events.ResourceMetadata") proto.RegisterType((*UserCreate)(nil), "events.UserCreate") + proto.RegisterType((*UserUpdate)(nil), "events.UserUpdate") proto.RegisterType((*UserDelete)(nil), "events.UserDelete") proto.RegisterType((*UserPasswordChange)(nil), "events.UserPasswordChange") proto.RegisterType((*AccessRequestCreate)(nil), "events.AccessRequestCreate") @@ -10943,16 +11243,20 @@ func init() { proto.RegisterType((*AuthAttempt)(nil), "events.AuthAttempt") proto.RegisterType((*UserTokenCreate)(nil), "events.UserTokenCreate") proto.RegisterType((*RoleCreate)(nil), "events.RoleCreate") + proto.RegisterType((*RoleUpdate)(nil), "events.RoleUpdate") proto.RegisterType((*RoleDelete)(nil), "events.RoleDelete") proto.RegisterType((*TrustedClusterCreate)(nil), "events.TrustedClusterCreate") proto.RegisterType((*TrustedClusterDelete)(nil), "events.TrustedClusterDelete") proto.RegisterType((*ProvisionTokenCreate)(nil), "events.ProvisionTokenCreate") proto.RegisterType((*TrustedClusterTokenCreate)(nil), "events.TrustedClusterTokenCreate") proto.RegisterType((*GithubConnectorCreate)(nil), "events.GithubConnectorCreate") + proto.RegisterType((*GithubConnectorUpdate)(nil), "events.GithubConnectorUpdate") proto.RegisterType((*GithubConnectorDelete)(nil), "events.GithubConnectorDelete") proto.RegisterType((*OIDCConnectorCreate)(nil), "events.OIDCConnectorCreate") + proto.RegisterType((*OIDCConnectorUpdate)(nil), "events.OIDCConnectorUpdate") proto.RegisterType((*OIDCConnectorDelete)(nil), "events.OIDCConnectorDelete") proto.RegisterType((*SAMLConnectorCreate)(nil), "events.SAMLConnectorCreate") + proto.RegisterType((*SAMLConnectorUpdate)(nil), "events.SAMLConnectorUpdate") proto.RegisterType((*SAMLConnectorDelete)(nil), "events.SAMLConnectorDelete") proto.RegisterType((*KubeRequest)(nil), "events.KubeRequest") proto.RegisterType((*AppMetadata)(nil), "events.AppMetadata") @@ -11071,797 +11375,806 @@ func init() { } var fileDescriptor_007ba1c3d6266d56 = []byte{ - // 12637 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x6c, 0x24, 0x47, - 0x76, 0x18, 0xce, 0xf9, 0xe0, 0xcc, 0xb0, 0xf8, 0x35, 0xac, 0xfd, 0x6a, 0x51, 0xbb, 0x3b, 0xab, - 0x96, 0xb4, 0xda, 0x95, 0x56, 0xdc, 0xd3, 0xee, 0x9e, 0xf6, 0xa4, 0x93, 0x4e, 0x1a, 0xce, 0x0c, - 0x97, 0xa3, 0xe5, 0xc7, 0xa8, 0x87, 0xab, 0x95, 0x74, 0x3e, 0x8d, 0x9b, 0xd3, 0xb5, 0x64, 0x8b, - 0x33, 0xd3, 0x73, 0xdd, 0x3d, 0xcb, 0xa5, 0x7e, 0xbf, 0x24, 0xbe, 0xc4, 0x9f, 0x81, 0x6d, 0x18, - 0x0e, 0x02, 0x07, 0x49, 0x80, 0xd8, 0x09, 0x02, 0x38, 0x86, 0x63, 0xc7, 0x49, 0x60, 0xc7, 0x71, - 0x8c, 0xc4, 0xb9, 0x4b, 0x22, 0xe7, 0x62, 0xc7, 0x4e, 0x0c, 0x07, 0x08, 0x10, 0x9e, 0xed, 0xc0, - 0x09, 0x40, 0x24, 0x80, 0x81, 0x18, 0xc9, 0xc5, 0x71, 0x3e, 0x50, 0xaf, 0xaa, 0xbb, 0xab, 0xba, - 0x7b, 0xf8, 0xb9, 0x32, 0x45, 0x91, 0xff, 0xec, 0x72, 0xde, 0x7b, 0xf5, 0xaa, 0xfa, 0xd5, 0xab, - 0xaa, 0x57, 0x55, 0xef, 0xbd, 0x42, 0x57, 0x5d, 0xd2, 0x22, 0x5d, 0xcb, 0x76, 0xaf, 0xb7, 0xc8, - 0x8a, 0xde, 0xdc, 0xb8, 0xee, 0x6e, 0x74, 0x89, 0x73, 0x9d, 0x3c, 0x24, 0x1d, 0xd7, 0xfb, 0x6f, - 0xaa, 0x6b, 0x5b, 0xae, 0x85, 0x33, 0xec, 0xd7, 0xe4, 0xe9, 0x15, 0x6b, 0xc5, 0x02, 0xd0, 0x75, - 0xfa, 0x17, 0xc3, 0x4e, 0x9e, 0x5f, 0xb1, 0xac, 0x95, 0x16, 0xb9, 0x0e, 0xbf, 0x96, 0x7b, 0x0f, - 0xae, 0x3b, 0xae, 0xdd, 0x6b, 0xba, 0x1c, 0x5b, 0x08, 0x63, 0x5d, 0xb3, 0x4d, 0x1c, 0x57, 0x6f, - 0x77, 0x39, 0xc1, 0xc5, 0x30, 0xc1, 0xba, 0xad, 0x77, 0xbb, 0xc4, 0xe6, 0x95, 0x4f, 0x3e, 0x15, - 0xdf, 0x4e, 0xf8, 0x97, 0x93, 0xbc, 0x18, 0x4f, 0xe2, 0x31, 0x0a, 0x71, 0x54, 0x7f, 0x34, 0x89, - 0x72, 0xf3, 0xc4, 0xd5, 0x0d, 0xdd, 0xd5, 0xf1, 0x79, 0x34, 0x58, 0xed, 0x18, 0xe4, 0x91, 0x92, - 0xb8, 0x94, 0xb8, 0x92, 0x9a, 0xce, 0x6c, 0x6d, 0x16, 0x92, 0xc4, 0xd4, 0x18, 0x10, 0x5f, 0x40, - 0xe9, 0xa5, 0x8d, 0x2e, 0x51, 0x92, 0x97, 0x12, 0x57, 0x86, 0xa6, 0x87, 0xb6, 0x36, 0x0b, 0x83, - 0x20, 0x0b, 0x0d, 0xc0, 0xf8, 0x29, 0x94, 0xac, 0x96, 0x95, 0x14, 0x20, 0x27, 0xb6, 0x36, 0x0b, - 0xa3, 0x3d, 0xd3, 0xb8, 0x66, 0xb5, 0x4d, 0x97, 0xb4, 0xbb, 0xee, 0x86, 0x96, 0xac, 0x96, 0xf1, - 0x65, 0x94, 0x2e, 0x59, 0x06, 0x51, 0xd2, 0x40, 0x84, 0xb7, 0x36, 0x0b, 0x63, 0x4d, 0xcb, 0x20, - 0x02, 0x15, 0xe0, 0xf1, 0x9b, 0x28, 0xbd, 0x64, 0xb6, 0x89, 0x32, 0x78, 0x29, 0x71, 0x65, 0xf8, - 0xc6, 0xe4, 0x14, 0x93, 0xca, 0x94, 0x27, 0x95, 0xa9, 0x25, 0x4f, 0x6c, 0xd3, 0xf9, 0x8f, 0x37, - 0x0b, 0x03, 0x5b, 0x9b, 0x85, 0x34, 0x95, 0xe4, 0x8f, 0x7c, 0xab, 0x90, 0xd0, 0xa0, 0x24, 0x7e, - 0x0d, 0x0d, 0x97, 0x5a, 0x3d, 0xc7, 0x25, 0xf6, 0x82, 0xde, 0x26, 0x4a, 0x06, 0x2a, 0x9c, 0xdc, - 0xda, 0x2c, 0x9c, 0x6d, 0x32, 0x70, 0xa3, 0xa3, 0xb7, 0xc5, 0x8a, 0x45, 0x72, 0xf5, 0x1f, 0x24, - 0xd0, 0x78, 0x9d, 0x38, 0x8e, 0x69, 0x75, 0x7c, 0xd9, 0x3c, 0x8b, 0x86, 0x38, 0xa8, 0x5a, 0x06, - 0xf9, 0x0c, 0x4d, 0x67, 0xb7, 0x36, 0x0b, 0x29, 0xc7, 0x34, 0xb4, 0x00, 0x83, 0x3f, 0x87, 0xb2, - 0xf7, 0x4d, 0x77, 0x75, 0x7e, 0xa6, 0xc8, 0xe5, 0x74, 0x76, 0x6b, 0xb3, 0x80, 0xd7, 0x4d, 0x77, - 0xb5, 0xd1, 0x7e, 0xa0, 0x0b, 0x15, 0x7a, 0x64, 0x78, 0x0e, 0xe5, 0x6b, 0xb6, 0xf9, 0x50, 0x77, - 0xc9, 0x5d, 0xb2, 0x51, 0xb3, 0x5a, 0x66, 0x73, 0x83, 0x4b, 0xf1, 0xd2, 0xd6, 0x66, 0xe1, 0x7c, - 0x97, 0xe1, 0x1a, 0x6b, 0x64, 0xa3, 0xd1, 0x05, 0xac, 0xc0, 0x24, 0x52, 0x52, 0xfd, 0xe3, 0x34, - 0x1a, 0xb9, 0xe7, 0x10, 0xdb, 0x6f, 0xf7, 0x65, 0x94, 0xa6, 0xbf, 0x79, 0x93, 0x41, 0xe6, 0x3d, - 0x87, 0xd8, 0xa2, 0xcc, 0x29, 0x1e, 0x5f, 0x45, 0x83, 0x73, 0xd6, 0x8a, 0xd9, 0xe1, 0xcd, 0x3e, - 0xb5, 0xb5, 0x59, 0x18, 0x6f, 0x51, 0x80, 0x40, 0xc9, 0x28, 0xf0, 0x97, 0xd0, 0x48, 0xb5, 0x4d, + // 12770 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0x7d, 0x6d, 0x6c, 0x24, 0x47, + 0x76, 0x18, 0xe7, 0x83, 0x33, 0xc3, 0xe2, 0xd7, 0xb0, 0xf6, 0xab, 0x45, 0xed, 0xee, 0x48, 0xad, + 0xbb, 0xbd, 0x5d, 0xdd, 0x8a, 0x7b, 0x5a, 0xad, 0xa4, 0x93, 0x4e, 0x3a, 0x69, 0x38, 0x33, 0x5c, + 0x8e, 0x96, 0x1f, 0xa3, 0x1e, 0xee, 0xee, 0xe9, 0xce, 0xa7, 0x71, 0x73, 0xba, 0x96, 0x6c, 0x71, + 0x66, 0x7a, 0xae, 0xbb, 0x67, 0xb9, 0x54, 0xbe, 0x7c, 0x89, 0x3f, 0xce, 0xce, 0xd9, 0x30, 0x1c, + 0x04, 0x0e, 0x92, 0x00, 0xb1, 0x13, 0x04, 0x70, 0x0c, 0xc7, 0x8e, 0x93, 0xc0, 0x8e, 0xe3, 0x18, + 0x89, 0x73, 0x97, 0x44, 0xce, 0xc5, 0x8e, 0x9d, 0x18, 0x0e, 0x10, 0x20, 0x3c, 0xc7, 0x81, 0x13, + 0x80, 0x48, 0x00, 0x03, 0x31, 0x12, 0xc7, 0x71, 0x3e, 0x50, 0xaf, 0xaa, 0xbb, 0xab, 0xba, 0x7b, + 0x86, 0x5f, 0x2b, 0x53, 0x14, 0xf9, 0x67, 0x97, 0xf3, 0xde, 0xab, 0x57, 0xd5, 0xaf, 0x5e, 0x55, + 0xbd, 0xaa, 0x7a, 0xf5, 0x1e, 0xba, 0xe6, 0x92, 0x16, 0xe9, 0x5a, 0xb6, 0x7b, 0xa3, 0x45, 0xd6, + 0xf4, 0xe6, 0xd6, 0x0d, 0x77, 0xab, 0x4b, 0x9c, 0x1b, 0xe4, 0x21, 0xe9, 0xb8, 0xde, 0x7f, 0x33, + 0x5d, 0xdb, 0x72, 0x2d, 0x9c, 0x61, 0xbf, 0xa6, 0xcf, 0xae, 0x59, 0x6b, 0x16, 0x80, 0x6e, 0xd0, + 0xbf, 0x18, 0x76, 0xfa, 0xe2, 0x9a, 0x65, 0xad, 0xb5, 0xc8, 0x0d, 0xf8, 0xb5, 0xda, 0x7b, 0x70, + 0xc3, 0x71, 0xed, 0x5e, 0xd3, 0xe5, 0xd8, 0x42, 0x18, 0xeb, 0x9a, 0x6d, 0xe2, 0xb8, 0x7a, 0xbb, + 0xcb, 0x09, 0x2e, 0x87, 0x09, 0x36, 0x6d, 0xbd, 0xdb, 0x25, 0x36, 0xaf, 0x7c, 0xfa, 0xe9, 0xf8, + 0x76, 0xc2, 0xbf, 0x9c, 0xe4, 0xb9, 0x78, 0x12, 0x8f, 0x51, 0x88, 0xa3, 0xfa, 0x23, 0x49, 0x94, + 0x5b, 0x24, 0xae, 0x6e, 0xe8, 0xae, 0x8e, 0x2f, 0xa2, 0xe1, 0x6a, 0xc7, 0x20, 0x8f, 0x94, 0xc4, + 0x53, 0x89, 0xab, 0xa9, 0xd9, 0xcc, 0xce, 0x76, 0x21, 0x49, 0x4c, 0x8d, 0x01, 0xf1, 0x25, 0x94, + 0x5e, 0xd9, 0xea, 0x12, 0x25, 0xf9, 0x54, 0xe2, 0xea, 0xc8, 0xec, 0xc8, 0xce, 0x76, 0x61, 0x18, + 0x64, 0xa1, 0x01, 0x18, 0x3f, 0x8d, 0x92, 0xd5, 0xb2, 0x92, 0x02, 0xe4, 0xd4, 0xce, 0x76, 0x61, + 0xbc, 0x67, 0x1a, 0xd7, 0xad, 0xb6, 0xe9, 0x92, 0x76, 0xd7, 0xdd, 0xd2, 0x92, 0xd5, 0x32, 0xbe, + 0x82, 0xd2, 0x25, 0xcb, 0x20, 0x4a, 0x1a, 0x88, 0xf0, 0xce, 0x76, 0x61, 0xa2, 0x69, 0x19, 0x44, + 0xa0, 0x02, 0x3c, 0x7e, 0x13, 0xa5, 0x57, 0xcc, 0x36, 0x51, 0x86, 0x9f, 0x4a, 0x5c, 0x1d, 0xbd, + 0x39, 0x3d, 0xc3, 0xa4, 0x32, 0xe3, 0x49, 0x65, 0x66, 0xc5, 0x13, 0xdb, 0x6c, 0xfe, 0x83, 0xed, + 0xc2, 0xd0, 0xce, 0x76, 0x21, 0x4d, 0x25, 0xf9, 0xc3, 0xdf, 0x2e, 0x24, 0x34, 0x28, 0x89, 0x5f, + 0x43, 0xa3, 0xa5, 0x56, 0xcf, 0x71, 0x89, 0xbd, 0xa4, 0xb7, 0x89, 0x92, 0x81, 0x0a, 0xa7, 0x77, + 0xb6, 0x0b, 0xe7, 0x9b, 0x0c, 0xdc, 0xe8, 0xe8, 0x6d, 0xb1, 0x62, 0x91, 0x5c, 0xfd, 0x07, 0x09, + 0x34, 0x59, 0x27, 0x8e, 0x63, 0x5a, 0x1d, 0x5f, 0x36, 0x9f, 0x44, 0x23, 0x1c, 0x54, 0x2d, 0x83, + 0x7c, 0x46, 0x66, 0xb3, 0x3b, 0xdb, 0x85, 0x94, 0x63, 0x1a, 0x5a, 0x80, 0xc1, 0x9f, 0x41, 0xd9, + 0xfb, 0xa6, 0xbb, 0xbe, 0x38, 0x57, 0xe4, 0x72, 0x3a, 0xbf, 0xb3, 0x5d, 0xc0, 0x9b, 0xa6, 0xbb, + 0xde, 0x68, 0x3f, 0xd0, 0x85, 0x0a, 0x3d, 0x32, 0xbc, 0x80, 0xf2, 0x35, 0xdb, 0x7c, 0xa8, 0xbb, + 0xe4, 0x0e, 0xd9, 0xaa, 0x59, 0x2d, 0xb3, 0xb9, 0xc5, 0xa5, 0xf8, 0xd4, 0xce, 0x76, 0xe1, 0x62, + 0x97, 0xe1, 0x1a, 0x1b, 0x64, 0xab, 0xd1, 0x05, 0xac, 0xc0, 0x24, 0x52, 0x52, 0xfd, 0xa3, 0x34, + 0x1a, 0xbb, 0xeb, 0x10, 0xdb, 0x6f, 0xf7, 0x15, 0x94, 0xa6, 0xbf, 0x79, 0x93, 0x41, 0xe6, 0x3d, + 0x87, 0xd8, 0xa2, 0xcc, 0x29, 0x1e, 0x5f, 0x43, 0xc3, 0x0b, 0xd6, 0x9a, 0xd9, 0xe1, 0xcd, 0x3e, + 0xb3, 0xb3, 0x5d, 0x98, 0x6c, 0x51, 0x80, 0x40, 0xc9, 0x28, 0xf0, 0xe7, 0xd1, 0x58, 0xb5, 0x4d, 0x75, 0xc8, 0xea, 0xe8, 0xae, 0x65, 0xf3, 0xd6, 0x82, 0x74, 0x4d, 0x01, 0x2e, 0x14, 0x94, 0xe8, - 0xf1, 0xab, 0x08, 0x15, 0xef, 0xd7, 0x35, 0xab, 0x45, 0x8a, 0xda, 0x02, 0x57, 0x06, 0x28, 0xad, - 0xaf, 0x3b, 0x0d, 0xdb, 0x6a, 0x91, 0x86, 0x6e, 0x8b, 0xd5, 0x0a, 0xd4, 0xb8, 0x82, 0xc6, 0x8a, - 0xcd, 0x26, 0x71, 0x1c, 0x8d, 0x7c, 0xb5, 0x47, 0x1c, 0xd7, 0x51, 0x06, 0x2f, 0xa5, 0xae, 0x0c, - 0x4d, 0x5f, 0xd8, 0xda, 0x2c, 0x3c, 0xa1, 0x03, 0xa6, 0x61, 0x73, 0x94, 0xc0, 0x22, 0x54, 0x08, - 0x4f, 0xa3, 0xd1, 0xe2, 0x47, 0x3d, 0x9b, 0x54, 0x0d, 0xd2, 0x71, 0x4d, 0x77, 0x83, 0x6b, 0xc8, - 0xf9, 0xad, 0xcd, 0x82, 0xa2, 0x53, 0x44, 0xc3, 0xe4, 0x18, 0x81, 0x89, 0x5c, 0x04, 0x2f, 0xa2, - 0x89, 0x3b, 0xa5, 0x5a, 0x9d, 0xd8, 0x0f, 0xcd, 0x26, 0x29, 0x36, 0x9b, 0x56, 0xaf, 0xe3, 0x2a, - 0x59, 0xe0, 0xf3, 0xd4, 0xd6, 0x66, 0xe1, 0xc2, 0x4a, 0xb3, 0xdb, 0x70, 0x18, 0xb6, 0xa1, 0x33, - 0xb4, 0xc0, 0x2c, 0x5a, 0x16, 0xbf, 0x8f, 0x46, 0x97, 0x6c, 0xaa, 0x85, 0x46, 0x99, 0x50, 0xb8, - 0x92, 0x03, 0xfd, 0x3f, 0x3b, 0xc5, 0x27, 0x20, 0x06, 0xf5, 0x7a, 0x96, 0x35, 0xd6, 0x65, 0x05, - 0x1a, 0x06, 0xe0, 0xc4, 0xc6, 0x4a, 0xac, 0x30, 0x41, 0x0a, 0xfd, 0x78, 0xd3, 0x26, 0x46, 0x44, - 0xdb, 0x86, 0xa0, 0xcd, 0x57, 0xb7, 0x36, 0x0b, 0xcf, 0xda, 0x9c, 0xa6, 0xb1, 0xad, 0xda, 0xf5, - 0x65, 0xa5, 0xfe, 0xbd, 0x34, 0x1a, 0xa3, 0x5f, 0x25, 0x28, 0x60, 0x91, 0x8e, 0x25, 0x0a, 0xa1, - 0x43, 0xcb, 0xe9, 0xea, 0x4d, 0xc2, 0x75, 0xf1, 0xdc, 0xd6, 0x66, 0xe1, 0x54, 0xc7, 0x03, 0x0a, - 0xec, 0xc3, 0xf4, 0xf8, 0x2a, 0xca, 0x31, 0x50, 0xb5, 0xcc, 0xd5, 0x73, 0x74, 0x6b, 0xb3, 0x30, - 0xe4, 0x00, 0xac, 0x61, 0x1a, 0x9a, 0x8f, 0xa6, 0xfa, 0xc1, 0xfe, 0x9e, 0xb5, 0x1c, 0x97, 0x32, - 0xe7, 0xda, 0x09, 0xfa, 0xc1, 0x0b, 0xac, 0x72, 0x94, 0xa8, 0x1f, 0x72, 0x21, 0xfc, 0x0a, 0x42, - 0x0c, 0x52, 0x34, 0x0c, 0x9b, 0xab, 0xe8, 0x13, 0x5b, 0x9b, 0x85, 0x33, 0x9c, 0x85, 0x6e, 0x18, - 0xa2, 0x7e, 0x0b, 0xc4, 0xb8, 0x8d, 0x46, 0xd8, 0xaf, 0x39, 0x7d, 0x99, 0xb4, 0x98, 0x7e, 0x0e, - 0xdf, 0xb8, 0xe2, 0x75, 0xa2, 0x2c, 0x9d, 0x29, 0x91, 0xb4, 0xd2, 0x71, 0xed, 0x8d, 0xe9, 0x02, - 0x9f, 0xd2, 0xce, 0xf1, 0xaa, 0x5a, 0x80, 0x13, 0x07, 0x93, 0x58, 0x86, 0xce, 0x74, 0x33, 0x96, - 0xbd, 0xae, 0xdb, 0x06, 0x31, 0xa6, 0x37, 0xc4, 0x99, 0xee, 0x81, 0x07, 0x6e, 0x2c, 0x8b, 0x9d, - 0x27, 0x92, 0xe3, 0x12, 0x1a, 0x65, 0xdc, 0xea, 0xbd, 0xe5, 0xbb, 0x66, 0xc7, 0xe0, 0xfa, 0x2b, - 0x4a, 0xcb, 0xe9, 0x2d, 0x37, 0xd6, 0xcc, 0x8e, 0x38, 0x97, 0xcb, 0x65, 0x26, 0xdf, 0x40, 0x13, - 0x91, 0xcf, 0xc0, 0x79, 0x94, 0x5a, 0x23, 0x1b, 0xac, 0xab, 0x35, 0xfa, 0x27, 0x3e, 0x8d, 0x06, - 0x1f, 0xea, 0xad, 0x1e, 0x5f, 0x40, 0x34, 0xf6, 0xe3, 0xd5, 0xe4, 0x17, 0x12, 0x74, 0xbe, 0xc5, - 0x25, 0xab, 0xd3, 0x21, 0x4d, 0x57, 0x9c, 0x72, 0x5f, 0x46, 0x43, 0x73, 0x56, 0x53, 0x6f, 0x41, - 0x1f, 0x30, 0x9d, 0x51, 0xb6, 0x36, 0x0b, 0xa7, 0xa9, 0xf0, 0xa7, 0x5a, 0x14, 0x23, 0xb4, 0x29, - 0x20, 0xa5, 0x9d, 0xa7, 0x91, 0xb6, 0xe5, 0x12, 0x28, 0x98, 0x0c, 0x3a, 0x0f, 0x0a, 0xda, 0x80, - 0x12, 0x3b, 0x2f, 0x20, 0xc6, 0xd7, 0x51, 0xae, 0x46, 0x57, 0x99, 0xa6, 0xd5, 0xe2, 0x8a, 0x03, - 0x13, 0x21, 0xac, 0x3c, 0x42, 0x11, 0x9f, 0x48, 0x9d, 0x45, 0x63, 0xa5, 0x96, 0x49, 0x3a, 0xae, - 0xd8, 0x6a, 0x3a, 0xa1, 0x16, 0x57, 0x48, 0xc7, 0x15, 0x5b, 0x4d, 0x67, 0xdd, 0x86, 0x4e, 0xa1, - 0x62, 0xab, 0x7d, 0x52, 0xf5, 0xd7, 0x53, 0xe8, 0x89, 0xbb, 0xbd, 0x65, 0x62, 0x77, 0x88, 0x4b, - 0x1c, 0xbe, 0x1c, 0xf9, 0x5c, 0x17, 0xd0, 0x44, 0x04, 0xc9, 0xb9, 0xc3, 0x32, 0xb1, 0xe6, 0x23, - 0x1b, 0x7c, 0x85, 0x13, 0xe7, 0x9a, 0x48, 0x51, 0x3c, 0x8b, 0xc6, 0x03, 0x20, 0x6d, 0x84, 0xa3, - 0x24, 0x61, 0x22, 0xbd, 0xb8, 0xb5, 0x59, 0x98, 0x14, 0xb8, 0xd1, 0x66, 0x8b, 0xda, 0x17, 0x2e, - 0x86, 0xef, 0xa2, 0x7c, 0x00, 0xba, 0x63, 0x5b, 0xbd, 0xae, 0xa3, 0xa4, 0x80, 0x55, 0x61, 0x6b, - 0xb3, 0xf0, 0xa4, 0xc0, 0x6a, 0x05, 0x90, 0xe2, 0xf2, 0x15, 0x2e, 0x88, 0xbf, 0x3b, 0x21, 0x72, - 0xe3, 0x23, 0x28, 0x0d, 0x23, 0xe8, 0xb6, 0x37, 0x82, 0xfa, 0x0a, 0x69, 0x2a, 0x5c, 0x92, 0x0f, - 0xa8, 0x50, 0x33, 0x22, 0x03, 0x2a, 0x52, 0xe3, 0x64, 0x09, 0x9d, 0x89, 0xe5, 0xb5, 0x27, 0xad, - 0xfe, 0xfd, 0x94, 0xc8, 0xa5, 0x66, 0x19, 0x7e, 0x67, 0x2e, 0x8a, 0x9d, 0x59, 0xb3, 0x0c, 0xb0, - 0x51, 0x12, 0xc1, 0xca, 0x21, 0x34, 0xb6, 0x6b, 0x19, 0x61, 0x53, 0x25, 0x5a, 0x16, 0x7f, 0x80, - 0xce, 0x46, 0x80, 0x6c, 0xaa, 0x65, 0xda, 0x7f, 0x79, 0x6b, 0xb3, 0xa0, 0xc6, 0x70, 0x0d, 0xcf, - 0xbc, 0x7d, 0xb8, 0x60, 0x1d, 0x9d, 0x13, 0xa4, 0x6e, 0x75, 0x5c, 0xdd, 0xec, 0x70, 0xd3, 0x8a, - 0x8d, 0x92, 0xe7, 0xb6, 0x36, 0x0b, 0x4f, 0x8b, 0x3a, 0xe8, 0xd1, 0x84, 0x1b, 0xdf, 0x8f, 0x0f, - 0x36, 0x90, 0x12, 0x83, 0xaa, 0xb6, 0xf5, 0x15, 0xcf, 0x5e, 0xbc, 0xb2, 0xb5, 0x59, 0x78, 0x26, - 0xb6, 0x0e, 0x93, 0x52, 0x89, 0xeb, 0x53, 0x3f, 0x4e, 0x58, 0x43, 0x38, 0xc0, 0x2d, 0x58, 0x06, - 0x81, 0x6f, 0x18, 0x04, 0xfe, 0xea, 0xd6, 0x66, 0xe1, 0xa2, 0xc0, 0xbf, 0x63, 0x19, 0x24, 0xdc, - 0xfc, 0x98, 0xd2, 0xea, 0x7f, 0x4e, 0xa0, 0x8b, 0xf5, 0xe2, 0xfc, 0x5c, 0xd5, 0xf0, 0x16, 0xf4, - 0x9a, 0x6d, 0x3d, 0x34, 0x0d, 0x61, 0xf4, 0x2e, 0xa3, 0x73, 0x21, 0x54, 0x05, 0x6c, 0x08, 0xdf, - 0x94, 0x84, 0x6f, 0xf3, 0x8c, 0x85, 0x2e, 0xa7, 0x69, 0x30, 0x43, 0xa3, 0x21, 0xd9, 0xd1, 0xfd, - 0x18, 0xd1, 0x3e, 0x0a, 0xa1, 0xea, 0xab, 0x96, 0xed, 0x36, 0x7b, 0x2e, 0x57, 0x02, 0xe8, 0xa3, - 0x48, 0x1d, 0x0e, 0x27, 0xda, 0xa6, 0x0a, 0x8f, 0x8f, 0xfa, 0xa3, 0x29, 0x74, 0x7e, 0x71, 0xcd, - 0xd5, 0x35, 0xe2, 0x58, 0x3d, 0xbb, 0x49, 0x9c, 0x7b, 0x5d, 0x43, 0x77, 0x49, 0xa0, 0xd8, 0x05, - 0x34, 0x58, 0x34, 0x0c, 0x62, 0xc0, 0x57, 0x0d, 0xb2, 0x3d, 0x82, 0x4e, 0x01, 0x1a, 0x83, 0xe3, - 0x67, 0x51, 0x96, 0x97, 0x81, 0x46, 0x0d, 0x4e, 0x0f, 0x6f, 0x6d, 0x16, 0xb2, 0x3d, 0x06, 0xd2, - 0x3c, 0x1c, 0x25, 0x2b, 0x93, 0x16, 0xa1, 0x64, 0xa9, 0x80, 0xcc, 0x60, 0x20, 0xcd, 0xc3, 0xe1, - 0xb7, 0xd1, 0x18, 0xb0, 0xf5, 0xdb, 0xc3, 0xa7, 0x8a, 0xd3, 0xde, 0x54, 0x21, 0x36, 0x96, 0xcd, - 0xe4, 0xd0, 0x9a, 0x86, 0xed, 0x15, 0xd0, 0x42, 0x0c, 0xf0, 0x7d, 0x94, 0xe7, 0x8d, 0x08, 0x98, - 0x0e, 0x6e, 0xc3, 0xf4, 0xcc, 0xd6, 0x66, 0x61, 0x82, 0xb7, 0x5f, 0x60, 0x1b, 0x61, 0x42, 0x19, - 0xf3, 0x66, 0x07, 0x8c, 0x33, 0x3b, 0x31, 0xe6, 0x5f, 0x2c, 0x32, 0x0e, 0x33, 0x51, 0xdf, 0x43, - 0x23, 0x62, 0x41, 0x7c, 0x16, 0xf6, 0x61, 0x4c, 0xad, 0x60, 0x07, 0x67, 0x1a, 0xb0, 0xf9, 0x7a, - 0x09, 0x0d, 0x97, 0x89, 0xd3, 0xb4, 0xcd, 0x2e, 0x5d, 0x64, 0xb9, 0x4e, 0x8c, 0x6f, 0x6d, 0x16, - 0x86, 0x8d, 0x00, 0xac, 0x89, 0x34, 0xea, 0x7f, 0x4f, 0xa0, 0xb3, 0x94, 0x77, 0xd1, 0x71, 0xcc, - 0x95, 0x4e, 0x5b, 0x5c, 0xe5, 0xae, 0xa1, 0x4c, 0x1d, 0xea, 0xe3, 0x35, 0x9d, 0xde, 0xda, 0x2c, - 0xe4, 0x59, 0x0b, 0x04, 0x4d, 0xe2, 0x34, 0xfe, 0x26, 0x24, 0xb9, 0xc3, 0x26, 0x84, 0x5a, 0x6f, - 0xae, 0x6e, 0xbb, 0x66, 0x67, 0xa5, 0xee, 0xea, 0x6e, 0xcf, 0x91, 0xac, 0x37, 0x8e, 0x69, 0x38, - 0x80, 0x92, 0xac, 0x37, 0xa9, 0x10, 0x7e, 0x03, 0x8d, 0x54, 0x3a, 0x46, 0xc0, 0x84, 0xcd, 0x1f, - 0x4f, 0x52, 0xa3, 0x8a, 0x00, 0x3c, 0xca, 0x42, 0x2a, 0xa0, 0xfe, 0xed, 0x04, 0x52, 0xd8, 0x8e, - 0x61, 0xce, 0x74, 0xdc, 0x79, 0xd2, 0x5e, 0x16, 0x06, 0xf3, 0x8c, 0xb7, 0x05, 0xa1, 0x38, 0x61, - 0xea, 0x86, 0x95, 0x93, 0x6f, 0x41, 0x5a, 0xa6, 0xe3, 0x86, 0xe7, 0x8e, 0x50, 0x29, 0x5c, 0x45, - 0x59, 0xc6, 0x99, 0x2d, 0xbd, 0xc3, 0x37, 0x14, 0x4f, 0x11, 0xc2, 0x55, 0x33, 0x65, 0x68, 0x33, - 0x62, 0x71, 0x0f, 0xc9, 0xcb, 0xab, 0x7f, 0x27, 0x89, 0xf2, 0xe1, 0x42, 0xf8, 0x3e, 0xca, 0xbd, - 0x65, 0x99, 0x1d, 0x62, 0x2c, 0x76, 0xa0, 0x85, 0xdb, 0xef, 0xa4, 0x3d, 0xb3, 0xf3, 0xd4, 0x87, - 0x50, 0xa6, 0x61, 0x09, 0x3b, 0x30, 0xd8, 0x58, 0xfb, 0xcc, 0xf0, 0xfb, 0x68, 0x88, 0x9a, 0x4c, - 0x0f, 0x81, 0x73, 0x72, 0x47, 0xce, 0x97, 0x38, 0xe7, 0xd3, 0x36, 0x2b, 0x14, 0x65, 0x1d, 0xb0, - 0xa3, 0x7a, 0xa5, 0x11, 0xdd, 0xb1, 0x3a, 0xbc, 0xe7, 0x41, 0xaf, 0x6c, 0x80, 0x88, 0x7a, 0xc5, - 0x68, 0xa8, 0xa5, 0xc7, 0x3e, 0x16, 0xba, 0x41, 0x30, 0xd3, 0x99, 0xac, 0xc2, 0x3d, 0x20, 0x10, - 0xab, 0xdf, 0x9b, 0x44, 0x2f, 0x06, 0x22, 0xd3, 0xc8, 0x43, 0x93, 0xac, 0x73, 0x71, 0xae, 0x9a, - 0x5d, 0xbe, 0xc1, 0xa1, 0x2a, 0xef, 0x94, 0x56, 0xf5, 0xce, 0x0a, 0x31, 0xe8, 0x0e, 0x99, 0xee, - 0x42, 0x1d, 0x25, 0x01, 0xd6, 0x0d, 0x4c, 0x27, 0x74, 0xb7, 0x2a, 0xf6, 0x08, 0xa3, 0xc0, 0x16, - 0xca, 0x2c, 0xd9, 0xba, 0xe9, 0x7a, 0x3d, 0x5b, 0x8c, 0xf6, 0xec, 0x2e, 0x6a, 0x9c, 0x62, 0x3c, - 0x98, 0x15, 0x03, 0x82, 0x70, 0x01, 0x20, 0x0a, 0x82, 0x91, 0x4c, 0xbe, 0x82, 0x86, 0x05, 0xe2, - 0x3d, 0x99, 0x29, 0xbf, 0x98, 0x16, 0x75, 0xdd, 0x6b, 0x16, 0xd7, 0xf5, 0xeb, 0x54, 0x47, 0x1d, - 0x87, 0x2e, 0xc2, 0x4c, 0xc9, 0xb9, 0x26, 0x02, 0x48, 0xd6, 0x44, 0x00, 0xe1, 0x9b, 0x28, 0xc7, - 0x58, 0xf8, 0x5b, 0x35, 0xd8, 0xe6, 0xd9, 0x00, 0x93, 0x57, 0x32, 0x9f, 0x10, 0xff, 0x54, 0x02, - 0x5d, 0xd8, 0x56, 0x12, 0xa0, 0x0c, 0xc3, 0x37, 0x3e, 0xbf, 0x2f, 0x31, 0x4e, 0xbf, 0xb8, 0xb5, - 0x59, 0xb8, 0xda, 0xf6, 0x49, 0x1a, 0xb6, 0x40, 0xd3, 0x68, 0x32, 0x22, 0xa1, 0x5d, 0xdb, 0x37, - 0x85, 0xda, 0x5a, 0xac, 0xd2, 0x19, 0x38, 0x67, 0xe8, 0x34, 0x37, 0xbc, 0x46, 0xa6, 0x03, 0x5b, - 0x8b, 0x7f, 0xef, 0x03, 0x8f, 0x24, 0xa6, 0x9a, 0x3e, 0x5c, 0x70, 0x13, 0x9d, 0x63, 0x98, 0xb2, - 0xbe, 0xb1, 0xf8, 0x60, 0xde, 0xea, 0xb8, 0xab, 0x5e, 0x05, 0x83, 0xe2, 0x46, 0x1d, 0x2a, 0x30, - 0xf4, 0x8d, 0x86, 0xf5, 0xa0, 0xd1, 0xa6, 0x54, 0x31, 0x75, 0xf4, 0xe3, 0x44, 0x27, 0x5a, 0x3e, - 0xe6, 0xbc, 0x29, 0x28, 0x13, 0x1c, 0xa3, 0x78, 0xe3, 0x34, 0x3a, 0xe1, 0x84, 0x0a, 0xa9, 0xdf, - 0x1a, 0xa4, 0x9b, 0x5d, 0x38, 0xfb, 0x82, 0x29, 0x18, 0xbf, 0x1a, 0x9c, 0x26, 0xf2, 0x39, 0x27, - 0xef, 0xf5, 0x99, 0x7f, 0x6e, 0x31, 0x42, 0xe7, 0x83, 0xdf, 0xd8, 0x2c, 0x24, 0xb6, 0x36, 0x0b, - 0x03, 0x5a, 0x4e, 0xd8, 0x38, 0x05, 0x8b, 0x84, 0xb0, 0x2a, 0x8a, 0xa7, 0x59, 0xa1, 0xb2, 0x6c, - 0xd1, 0x78, 0x03, 0x65, 0x79, 0x1b, 0xb8, 0x9a, 0x9c, 0x0b, 0xf6, 0xda, 0xd2, 0x19, 0x5e, 0xa8, - 0xb4, 0x57, 0x0a, 0xbf, 0x86, 0x32, 0x6c, 0xff, 0x0a, 0x3d, 0x28, 0x1c, 0xb8, 0xc8, 0x7b, 0xf5, - 0x50, 0x71, 0x5e, 0x06, 0xcf, 0x22, 0x14, 0xec, 0x5d, 0xfd, 0x23, 0x4b, 0xce, 0x21, 0xba, 0xab, - 0x0d, 0x71, 0x11, 0xca, 0xe2, 0x97, 0xd1, 0xc8, 0x12, 0xb1, 0xdb, 0x66, 0x47, 0x6f, 0xd5, 0xcd, - 0x8f, 0xbc, 0x53, 0x4b, 0x58, 0x2d, 0x1d, 0xf3, 0x23, 0x71, 0xb8, 0x49, 0x74, 0xf8, 0x2b, 0x71, - 0x7b, 0xc3, 0x2c, 0x34, 0xe4, 0xa9, 0x1d, 0x37, 0x4d, 0xa1, 0xf6, 0xc4, 0x6c, 0x15, 0xdf, 0x46, - 0xa3, 0xd2, 0xb6, 0x80, 0x1f, 0x4b, 0x5d, 0x88, 0xb2, 0x16, 0xf6, 0x38, 0x21, 0xb6, 0x32, 0x07, - 0xaa, 0x7e, 0xd5, 0x8e, 0xe9, 0x9a, 0x7a, 0xab, 0x64, 0xb5, 0xdb, 0x7a, 0xc7, 0x50, 0x86, 0x02, - 0xf5, 0x33, 0x19, 0xa6, 0xd1, 0x64, 0x28, 0x51, 0xfd, 0xe4, 0x42, 0x74, 0xeb, 0xc9, 0xfb, 0x50, - 0x23, 0x4d, 0xcb, 0xa6, 0x0b, 0xb8, 0x82, 0x40, 0x68, 0xb0, 0xe7, 0x73, 0x18, 0xae, 0x61, 0x7b, - 0x48, 0x71, 0xcf, 0x17, 0x2e, 0xf8, 0x56, 0x3a, 0x37, 0x9c, 0x1f, 0x09, 0x1f, 0x14, 0xaa, 0x7f, - 0x2b, 0x85, 0x86, 0x39, 0x29, 0x5d, 0xff, 0x4e, 0x14, 0xfc, 0x20, 0x0a, 0x1e, 0xab, 0xa8, 0x99, - 0xc7, 0xa5, 0xa8, 0xea, 0x0f, 0x26, 0xfd, 0xd9, 0xa8, 0x66, 0x9b, 0x9d, 0x83, 0xcd, 0x46, 0x97, - 0x11, 0x2a, 0xad, 0xf6, 0x3a, 0x6b, 0xec, 0x42, 0x24, 0x19, 0x5c, 0x88, 0x34, 0x4d, 0x4d, 0xc0, - 0xe0, 0x0b, 0x28, 0x5d, 0xa6, 0xfc, 0x69, 0xcf, 0x8c, 0x4c, 0x0f, 0x7d, 0xcc, 0x38, 0x25, 0x5e, - 0xd4, 0x00, 0x4c, 0x77, 0x44, 0xd3, 0x1b, 0x2e, 0x61, 0x36, 0x68, 0x8a, 0xed, 0x88, 0x96, 0x29, - 0x40, 0x63, 0x70, 0x7c, 0x0b, 0x4d, 0x94, 0x49, 0x4b, 0xdf, 0x98, 0x37, 0x5b, 0x2d, 0xd3, 0x21, - 0x4d, 0xab, 0x63, 0x38, 0x20, 0x64, 0x5e, 0x5d, 0xdb, 0xd1, 0xa2, 0x04, 0x58, 0x45, 0x99, 0xc5, - 0x07, 0x0f, 0x1c, 0xe2, 0x82, 0xf8, 0x52, 0xd3, 0x68, 0x6b, 0xb3, 0x90, 0xb1, 0x00, 0xa2, 0x71, - 0x8c, 0xfa, 0xb3, 0x09, 0xba, 0xe5, 0x70, 0xd6, 0x5c, 0xab, 0xeb, 0x6b, 0xf9, 0x81, 0x44, 0x72, - 0x35, 0x30, 0x06, 0x92, 0xf0, 0xb5, 0xe3, 0xfc, 0x6b, 0xb3, 0xdc, 0x20, 0x08, 0xcc, 0x80, 0xd8, - 0xaf, 0x4a, 0xed, 0xf0, 0x55, 0xea, 0x1f, 0x24, 0xd1, 0x39, 0xde, 0xe2, 0x52, 0xcb, 0xec, 0x2e, - 0x5b, 0xba, 0x6d, 0x68, 0xa4, 0x49, 0xcc, 0x87, 0xe4, 0x68, 0x0e, 0x3c, 0x79, 0xe8, 0xa4, 0x0f, - 0x30, 0x74, 0x6e, 0xc0, 0xee, 0x8d, 0x4a, 0x06, 0x0e, 0x35, 0x99, 0x25, 0x90, 0xdf, 0xda, 0x2c, - 0x8c, 0x18, 0x0c, 0x0c, 0x47, 0xd2, 0x9a, 0x48, 0x44, 0x95, 0x64, 0x8e, 0x74, 0x56, 0xdc, 0x55, - 0x50, 0x92, 0x41, 0xa6, 0x24, 0x2d, 0x80, 0x68, 0x1c, 0xa3, 0xfe, 0xd7, 0x24, 0x3a, 0x1d, 0x16, - 0x79, 0x9d, 0x74, 0x8c, 0x13, 0x79, 0x7f, 0x32, 0xf2, 0xfe, 0xc3, 0x14, 0x7a, 0x92, 0x97, 0xa9, - 0xaf, 0xea, 0x36, 0x31, 0xca, 0xa6, 0x4d, 0x9a, 0xae, 0x65, 0x6f, 0x1c, 0x61, 0x03, 0xea, 0xf1, - 0x89, 0xfd, 0x16, 0xca, 0xf0, 0x3d, 0x3b, 0x5b, 0x67, 0xc6, 0xfc, 0x96, 0x00, 0x34, 0xb2, 0x42, - 0xb1, 0xfd, 0x7e, 0xa8, 0xb3, 0x32, 0xbb, 0xe9, 0xac, 0x2f, 0xa0, 0x51, 0x5f, 0xf4, 0xb0, 0x7b, - 0xcc, 0x06, 0xd6, 0x96, 0xe1, 0x21, 0x60, 0x03, 0xa9, 0xc9, 0x84, 0x50, 0x9b, 0x07, 0xa8, 0x96, - 0xc1, 0x1a, 0x1a, 0xe5, 0xb5, 0xf9, 0xe5, 0x4c, 0x43, 0x13, 0x89, 0xd4, 0xcd, 0x34, 0x9a, 0x8c, - 0xef, 0x76, 0x8d, 0xe8, 0xc6, 0x49, 0xaf, 0x7f, 0x26, 0x7b, 0x1d, 0x3f, 0x85, 0xd2, 0x35, 0xdd, - 0x5d, 0xe5, 0x17, 0xac, 0x70, 0x67, 0xf9, 0xc0, 0x6c, 0x91, 0x46, 0x57, 0x77, 0x57, 0x35, 0x40, - 0x09, 0x73, 0x06, 0x02, 0x8e, 0x31, 0x73, 0x86, 0xb0, 0xd8, 0x0f, 0x5f, 0x4a, 0x5c, 0x49, 0xc7, - 0x2e, 0xf6, 0xdf, 0x4a, 0xf7, 0x9b, 0x57, 0xee, 0xdb, 0xa6, 0x4b, 0x4e, 0x34, 0xec, 0x44, 0xc3, - 0x0e, 0xa8, 0x61, 0xff, 0x26, 0x89, 0x46, 0xfd, 0x4d, 0xd3, 0x87, 0xa4, 0x79, 0x38, 0x6b, 0x55, - 0xb0, 0x95, 0x49, 0x1d, 0x78, 0x2b, 0x73, 0x10, 0x85, 0x52, 0xfd, 0x73, 0x4a, 0x66, 0x1a, 0x80, - 0xc4, 0xd8, 0x39, 0xa5, 0x7f, 0x3a, 0xf9, 0x14, 0xca, 0xce, 0xeb, 0x8f, 0xcc, 0x76, 0xaf, 0xcd, - 0xad, 0x74, 0x70, 0x18, 0x6a, 0xeb, 0x8f, 0x34, 0x0f, 0xae, 0xfe, 0x56, 0x02, 0x8d, 0x71, 0xa1, - 0x72, 0xe6, 0x07, 0x92, 0x6a, 0x20, 0x9d, 0xe4, 0x81, 0xa5, 0x93, 0xda, 0xbf, 0x74, 0xd4, 0xbf, - 0x9a, 0x42, 0xca, 0x8c, 0xd9, 0x22, 0x4b, 0xb6, 0xde, 0x71, 0x1e, 0x10, 0x9b, 0x6f, 0xa7, 0x2b, - 0x94, 0xd5, 0x81, 0x3e, 0x50, 0x98, 0x52, 0x92, 0xfb, 0x9a, 0x52, 0x5e, 0x40, 0x43, 0xbc, 0x31, - 0xbe, 0xb3, 0x1a, 0x8c, 0x1a, 0xdb, 0x03, 0x6a, 0x01, 0x9e, 0x12, 0x17, 0xbb, 0x5d, 0xdb, 0x7a, - 0x48, 0x6c, 0x76, 0xb5, 0xc4, 0x89, 0x75, 0x0f, 0xa8, 0x05, 0x78, 0x81, 0x33, 0xf1, 0xec, 0x45, - 0x91, 0x33, 0xb1, 0xb5, 0x00, 0x8f, 0xaf, 0xa0, 0xdc, 0x9c, 0xd5, 0xd4, 0x41, 0xd0, 0x6c, 0x5a, - 0x19, 0xd9, 0xda, 0x2c, 0xe4, 0x5a, 0x1c, 0xa6, 0xf9, 0x58, 0x4a, 0x59, 0xb6, 0xd6, 0x3b, 0x2d, - 0x4b, 0x67, 0xce, 0x19, 0x39, 0x46, 0x69, 0x70, 0x98, 0xe6, 0x63, 0x29, 0x25, 0x95, 0x39, 0x38, - 0xbd, 0xe4, 0x02, 0x9e, 0x0f, 0x38, 0x4c, 0xf3, 0xb1, 0xea, 0xcf, 0xa6, 0xa9, 0xf6, 0x3a, 0xe6, - 0x47, 0xc7, 0x7e, 0x5d, 0x08, 0x06, 0xcc, 0xe0, 0x3e, 0x06, 0xcc, 0xb1, 0x39, 0xb0, 0x53, 0xff, - 0x47, 0x16, 0x21, 0x2e, 0xfd, 0xca, 0xc9, 0xe6, 0xf0, 0x60, 0x5a, 0x53, 0x46, 0x13, 0x95, 0xce, - 0xaa, 0xde, 0x69, 0x12, 0x23, 0x38, 0xb6, 0xcc, 0xc0, 0xd0, 0x06, 0x67, 0x51, 0xc2, 0x91, 0xc1, - 0xb9, 0xa5, 0x16, 0x2d, 0x80, 0x5f, 0x42, 0xc3, 0xd5, 0x8e, 0x4b, 0x6c, 0xbd, 0xe9, 0x9a, 0x0f, - 0x09, 0x9f, 0x1a, 0xe0, 0x3a, 0xd7, 0x0c, 0xc0, 0x9a, 0x48, 0x83, 0x6f, 0xa1, 0x91, 0x9a, 0x6e, - 0xbb, 0x66, 0xd3, 0xec, 0xea, 0x1d, 0xd7, 0x51, 0x72, 0x30, 0xa3, 0x81, 0x85, 0xd1, 0x15, 0xe0, - 0x9a, 0x44, 0x85, 0xbf, 0x82, 0x86, 0x60, 0x6b, 0x0a, 0x1e, 0xb9, 0x43, 0x3b, 0xde, 0xf6, 0x3d, - 0x1d, 0xb8, 0xaf, 0xb1, 0xd3, 0x57, 0xb8, 0xb6, 0x0d, 0x5f, 0xf8, 0xf9, 0x1c, 0xf1, 0xbb, 0x28, - 0x5b, 0xe9, 0x18, 0xc0, 0x1c, 0xed, 0xc8, 0x5c, 0xe5, 0xcc, 0xcf, 0x06, 0xcc, 0xad, 0x6e, 0x88, - 0xb7, 0xc7, 0x2e, 0x7e, 0x94, 0x0d, 0x7f, 0x72, 0xa3, 0x6c, 0xe4, 0x13, 0x38, 0x16, 0x1f, 0x7d, - 0x5c, 0xc7, 0xe2, 0x63, 0xfb, 0x3c, 0x16, 0x57, 0x3f, 0x42, 0xc3, 0xd3, 0xb5, 0x19, 0x7f, 0xf4, - 0x3e, 0x81, 0x52, 0x35, 0xee, 0x5e, 0x90, 0x66, 0xf6, 0x4c, 0xd7, 0x34, 0x34, 0x0a, 0xc3, 0x57, - 0x51, 0xae, 0x04, 0x2e, 0x5e, 0xfc, 0xea, 0x2f, 0xcd, 0xd6, 0xbf, 0x26, 0xc0, 0xc0, 0x4b, 0xd3, - 0x43, 0xe3, 0x67, 0x51, 0xb6, 0x66, 0x5b, 0x2b, 0xb6, 0xde, 0xe6, 0x6b, 0x30, 0xf8, 0x77, 0x74, - 0x19, 0x48, 0xf3, 0x70, 0xea, 0x5f, 0x48, 0x78, 0x66, 0x3b, 0x2d, 0x51, 0xef, 0xc1, 0xd1, 0x3c, - 0xd4, 0x9d, 0x63, 0x25, 0x1c, 0x06, 0xd2, 0x3c, 0x1c, 0xbe, 0x8a, 0x06, 0x2b, 0xb6, 0x6d, 0xd9, - 0xa2, 0x17, 0x33, 0xa1, 0x00, 0xf1, 0x8e, 0x16, 0x28, 0xf0, 0x6d, 0x34, 0xcc, 0xe6, 0x1c, 0x76, - 0xa2, 0x99, 0xda, 0xee, 0x7a, 0x53, 0xa4, 0x54, 0xbf, 0x9e, 0x12, 0x6c, 0x36, 0x26, 0xf1, 0x63, - 0x78, 0x2b, 0x70, 0x13, 0xa5, 0xa6, 0x6b, 0x33, 0x7c, 0x02, 0x3c, 0xe5, 0x15, 0x15, 0x54, 0x25, - 0x54, 0x8e, 0x52, 0xe3, 0xf3, 0x28, 0x5d, 0xa3, 0xea, 0x93, 0x01, 0xf5, 0xc8, 0x6d, 0x6d, 0x16, - 0xd2, 0x5d, 0xaa, 0x3f, 0x00, 0x05, 0x2c, 0xdd, 0xcc, 0xb0, 0x1d, 0x13, 0xc3, 0x06, 0xfb, 0x98, - 0xf3, 0x28, 0x5d, 0xb4, 0x57, 0x1e, 0xf2, 0x59, 0x0b, 0xb0, 0xba, 0xbd, 0xf2, 0x50, 0x03, 0x28, - 0xbe, 0x8e, 0x90, 0x46, 0xdc, 0x9e, 0xdd, 0x81, 0x00, 0x83, 0x21, 0x38, 0x7f, 0x83, 0xd9, 0xd0, - 0x06, 0x68, 0xa3, 0x69, 0x19, 0x44, 0x13, 0x48, 0xd4, 0xbf, 0x19, 0x5c, 0xec, 0x94, 0x4d, 0x67, - 0xed, 0xa4, 0x0b, 0xf7, 0xd0, 0x85, 0x3a, 0x3f, 0xe2, 0x8c, 0x76, 0x52, 0x01, 0x0d, 0xce, 0xb4, - 0xf4, 0x15, 0x07, 0xfa, 0x90, 0x3b, 0x80, 0x3d, 0xa0, 0x00, 0x8d, 0xc1, 0x43, 0xfd, 0x94, 0xdb, - 0xb9, 0x9f, 0x7e, 0x6c, 0xd0, 0x1f, 0x6d, 0x0b, 0xc4, 0x5d, 0xb7, 0xec, 0x93, 0xae, 0xda, 0x6d, - 0x57, 0x5d, 0x46, 0xd9, 0xba, 0xdd, 0x14, 0x8e, 0x2e, 0x60, 0x3f, 0xe0, 0xd8, 0x4d, 0x76, 0x6c, - 0xe1, 0x21, 0x29, 0x5d, 0xd9, 0x71, 0x81, 0x2e, 0x1b, 0xd0, 0x19, 0x8e, 0xcb, 0xe9, 0x38, 0x92, - 0xd3, 0xd5, 0x2c, 0xdb, 0xe5, 0x1d, 0xe7, 0xd3, 0x75, 0x2d, 0xdb, 0xd5, 0x3c, 0x24, 0x7e, 0x01, - 0xa1, 0xa5, 0x52, 0xed, 0x1d, 0x62, 0x83, 0xb8, 0x86, 0x02, 0x07, 0xbe, 0x87, 0x0c, 0xa4, 0x09, - 0x68, 0xbc, 0x84, 0x86, 0x16, 0xbb, 0xc4, 0x66, 0x5b, 0x21, 0x6a, 0x01, 0x8c, 0xdd, 0x78, 0x2e, - 0x24, 0x5a, 0xde, 0xef, 0x53, 0xfc, 0x7f, 0x9f, 0x9c, 0xad, 0x2f, 0x96, 0xf7, 0x53, 0x0b, 0x18, - 0xe1, 0xdb, 0x28, 0x53, 0x64, 0x76, 0xde, 0x30, 0xb0, 0xf4, 0x45, 0x06, 0x5b, 0x50, 0x86, 0x62, - 0x7b, 0x76, 0x1d, 0xfe, 0xd6, 0x38, 0xb9, 0x7a, 0x15, 0xe5, 0xc3, 0xd5, 0xe0, 0x61, 0x94, 0x2d, - 0x2d, 0x2e, 0x2c, 0x54, 0x4a, 0x4b, 0xf9, 0x01, 0x9c, 0x43, 0xe9, 0x7a, 0x65, 0xa1, 0x9c, 0x4f, - 0xa8, 0x3f, 0x2d, 0xcc, 0x20, 0x54, 0xb5, 0x4e, 0xae, 0x86, 0x0f, 0x74, 0xdf, 0x92, 0x87, 0xfb, - 0x50, 0x38, 0x31, 0x68, 0x9b, 0xae, 0x4b, 0x0c, 0xbe, 0x4a, 0xc0, 0x7d, 0xa1, 0xfb, 0x48, 0x8b, - 0xe0, 0xf1, 0x35, 0x34, 0x0a, 0x30, 0x7e, 0x45, 0xc8, 0xf6, 0xc7, 0xbc, 0x80, 0xfd, 0x48, 0x93, - 0x91, 0xea, 0x37, 0x83, 0xdb, 0xe1, 0x39, 0xa2, 0x1f, 0xd5, 0x1b, 0xc5, 0x4f, 0x49, 0x7f, 0xa9, - 0x7f, 0x9c, 0x66, 0x61, 0x0e, 0x2c, 0x22, 0xec, 0x30, 0x44, 0x19, 0x1c, 0xe9, 0xa6, 0xf6, 0x70, - 0xa4, 0x7b, 0x0d, 0x65, 0xe6, 0x89, 0xbb, 0x6a, 0x79, 0xde, 0x5a, 0xe0, 0x56, 0xd7, 0x06, 0x88, - 0xe8, 0x56, 0xc7, 0x68, 0xf0, 0x1a, 0xc2, 0x5e, 0xb8, 0x57, 0xd1, 0x75, 0x6d, 0x73, 0xb9, 0xe7, - 0x12, 0xef, 0x08, 0xf9, 0x5c, 0x64, 0x9f, 0x52, 0x87, 0x58, 0x4f, 0xf0, 0x23, 0x3f, 0xad, 0xfb, - 0xe4, 0x01, 0xdb, 0x3f, 0xda, 0x2c, 0x64, 0x18, 0x8d, 0x16, 0xc3, 0x16, 0xbf, 0x8d, 0x86, 0xe6, - 0x67, 0x8a, 0x3c, 0xf4, 0x8b, 0x79, 0x45, 0x3c, 0xe1, 0x4b, 0xd1, 0x43, 0xf8, 0x22, 0x81, 0x98, - 0x92, 0xf6, 0x03, 0x3d, 0x1a, 0xf9, 0x15, 0x70, 0xa1, 0xda, 0xc2, 0xa2, 0x53, 0xf8, 0xe9, 0x82, - 0xaf, 0x2d, 0x72, 0xcc, 0x4a, 0x58, 0x56, 0x0c, 0x1b, 0xd2, 0x96, 0xdc, 0x01, 0x46, 0xf7, 0x22, - 0x9a, 0x28, 0x76, 0xbb, 0x2d, 0x93, 0x18, 0xa0, 0x2f, 0x5a, 0xaf, 0x45, 0x1c, 0xee, 0xf2, 0x03, - 0x01, 0x0f, 0x3a, 0x43, 0x36, 0x20, 0xe0, 0xb0, 0x61, 0xf7, 0x64, 0xa7, 0xca, 0x68, 0x59, 0xf5, - 0xbf, 0x24, 0x50, 0xde, 0xf3, 0x78, 0x16, 0x43, 0x1d, 0x05, 0x77, 0x5c, 0x38, 0x86, 0x09, 0x39, - 0x80, 0x02, 0x1e, 0xd7, 0x51, 0xb6, 0xf2, 0xa8, 0x6b, 0xda, 0xc4, 0xd9, 0x85, 0xf7, 0xea, 0x05, - 0xbe, 0xe5, 0x9c, 0x20, 0xac, 0x48, 0x64, 0xb7, 0xc9, 0xc0, 0x10, 0xf6, 0xc3, 0x7c, 0xbe, 0xa7, - 0xbd, 0xf8, 0x4d, 0x16, 0xf6, 0xc3, 0x7d, 0xc3, 0xa5, 0x18, 0xac, 0x80, 0x14, 0x3f, 0x8d, 0x52, - 0x4b, 0x4b, 0x73, 0x5c, 0x1b, 0x21, 0x6e, 0xd6, 0x75, 0xc5, 0xb8, 0x26, 0x8a, 0x55, 0x7f, 0x34, - 0x89, 0x10, 0x55, 0xfa, 0x92, 0x4d, 0xf4, 0x43, 0xba, 0xcc, 0x99, 0x46, 0x39, 0x4f, 0xe0, 0x7c, - 0xc0, 0xf9, 0xee, 0xca, 0xe1, 0x8e, 0x08, 0xd7, 0xed, 0xbb, 0xa6, 0x17, 0x3c, 0x0f, 0x5a, 0x76, - 0x96, 0x0a, 0xd6, 0x21, 0x78, 0xd0, 0x7a, 0x7e, 0xb3, 0x2f, 0xa0, 0x21, 0xae, 0x35, 0x96, 0x74, - 0x86, 0xda, 0xf4, 0x80, 0x5a, 0x80, 0x57, 0xbf, 0x91, 0x60, 0x42, 0x61, 0x1e, 0xf1, 0x47, 0x55, - 0x28, 0xea, 0xf7, 0x27, 0x10, 0xa6, 0xcc, 0x6a, 0xba, 0xe3, 0xac, 0x5b, 0xb6, 0xc1, 0x5c, 0x34, - 0x0f, 0xe3, 0x73, 0xd4, 0xdf, 0xca, 0xa2, 0x53, 0x92, 0xff, 0xdb, 0x11, 0xd7, 0xb7, 0xab, 0xb2, - 0xbe, 0x6d, 0xe7, 0xb1, 0xfd, 0x8c, 0x78, 0x2f, 0x30, 0x28, 0x05, 0x4f, 0x08, 0x17, 0x02, 0x2f, - 0xa2, 0x11, 0xfe, 0x83, 0x2e, 0x27, 0xde, 0x81, 0x2f, 0xe8, 0xb1, 0x43, 0x01, 0x9a, 0x84, 0xc6, - 0x9f, 0x47, 0x43, 0x54, 0x39, 0x57, 0x20, 0x4a, 0x3a, 0x1b, 0x78, 0x43, 0x1b, 0x1e, 0x50, 0x9c, - 0x12, 0x7c, 0x4a, 0xc1, 0x07, 0x3e, 0xb7, 0x0b, 0x1f, 0xf8, 0x0f, 0xd0, 0x70, 0xb1, 0xd3, 0xb1, - 0x5c, 0xb0, 0x55, 0x1d, 0x7e, 0x42, 0xd7, 0x77, 0x71, 0x7a, 0x1a, 0xe2, 0x20, 0x03, 0xfa, 0xd8, - 0xd5, 0x49, 0x64, 0x88, 0x6f, 0x78, 0x1e, 0xdd, 0xc4, 0xe6, 0xce, 0x95, 0x70, 0x4a, 0x69, 0x73, - 0x58, 0xd4, 0xa1, 0x1b, 0x3a, 0x6f, 0xb4, 0x66, 0x5b, 0x5d, 0xcb, 0x21, 0x06, 0x13, 0xd4, 0x70, - 0x10, 0x5e, 0xdd, 0xe5, 0x08, 0x88, 0xc1, 0x90, 0x22, 0x96, 0xa5, 0x22, 0xf8, 0x01, 0x3a, 0xed, - 0xdd, 0x97, 0xf8, 0xd1, 0x2e, 0xd5, 0xb2, 0xa3, 0x8c, 0x80, 0x47, 0x3d, 0x0e, 0x2b, 0x43, 0xb5, - 0x3c, 0x7d, 0xd1, 0x3b, 0x1d, 0xf4, 0xc2, 0x65, 0x1a, 0xa6, 0x21, 0x76, 0x75, 0x2c, 0x3f, 0xfc, - 0x9d, 0x68, 0x78, 0x5e, 0x7f, 0x54, 0xee, 0xf1, 0x2d, 0xc8, 0xe8, 0xee, 0x0f, 0x21, 0xdb, 0xfa, - 0xa3, 0x86, 0xc1, 0xcb, 0x85, 0x96, 0x05, 0x91, 0x25, 0x6e, 0xa0, 0xb3, 0x35, 0xdb, 0x6a, 0x5b, - 0x2e, 0x31, 0x42, 0x81, 0x23, 0xe3, 0x41, 0x60, 0x56, 0x97, 0x53, 0x34, 0xb6, 0x89, 0x20, 0xe9, - 0xc3, 0xe6, 0xad, 0x74, 0x6e, 0x2c, 0x3f, 0xae, 0x9d, 0x8b, 0x62, 0x97, 0x4c, 0xb7, 0x45, 0xd4, - 0x5f, 0x4e, 0xd0, 0x4d, 0xb7, 0xf7, 0xc5, 0xf8, 0x45, 0x39, 0x37, 0x42, 0x22, 0x38, 0x80, 0xe3, - 0x91, 0xa3, 0x52, 0x32, 0x04, 0xba, 0xe1, 0x87, 0xc8, 0xe0, 0x64, 0xb0, 0xe1, 0x5f, 0x33, 0x3b, - 0x86, 0x06, 0x50, 0x8a, 0x15, 0xc2, 0x00, 0x01, 0x0b, 0x97, 0x4d, 0x6c, 0xa5, 0x2d, 0xa3, 0xf1, - 0x7a, 0x6f, 0xd9, 0xab, 0x5b, 0x08, 0xd2, 0x80, 0x00, 0x65, 0xa7, 0xb7, 0xec, 0x47, 0x36, 0x49, - 0xe1, 0xdf, 0x72, 0x11, 0xf5, 0x67, 0x13, 0xa1, 0x69, 0xe9, 0x10, 0x67, 0xfc, 0x67, 0xa2, 0xf7, - 0x87, 0xd1, 0x79, 0x42, 0xfd, 0x6b, 0x49, 0x34, 0x4c, 0xb7, 0xc2, 0x3c, 0xd4, 0xfa, 0x50, 0x5a, - 0xfa, 0xd8, 0x6e, 0x73, 0x05, 0x4b, 0x3b, 0xbd, 0x07, 0x4b, 0xfb, 0x3c, 0x4a, 0x0b, 0xae, 0x73, - 0xec, 0xbc, 0xce, 0x30, 0x6c, 0x0d, 0xa0, 0xea, 0x77, 0x25, 0x11, 0x7a, 0xf7, 0xa5, 0x97, 0x8e, - 0xb1, 0x80, 0xd4, 0xbf, 0x92, 0x40, 0xe3, 0xfc, 0x00, 0x59, 0xc8, 0x32, 0x92, 0xf5, 0x8e, 0xfe, - 0xc5, 0x71, 0xc9, 0x40, 0x9a, 0x87, 0xa3, 0x73, 0x72, 0xe5, 0x91, 0xe9, 0xc2, 0x19, 0x9a, 0x90, - 0x66, 0x84, 0x70, 0x98, 0x38, 0x27, 0x7b, 0x74, 0xf8, 0x45, 0xef, 0x68, 0x3c, 0x15, 0x2c, 0x44, - 0xb4, 0x40, 0x25, 0xf6, 0x78, 0x5c, 0xfd, 0xf9, 0x34, 0x4a, 0x57, 0x1e, 0x91, 0xe6, 0x11, 0xef, - 0x1a, 0x61, 0xc3, 0x9d, 0x3e, 0xe0, 0x86, 0x7b, 0x3f, 0x77, 0x7d, 0x6f, 0x04, 0xfd, 0x99, 0x91, - 0xab, 0x0f, 0xf5, 0x7c, 0xb8, 0x7a, 0xaf, 0xa7, 0x8f, 0xde, 0x55, 0xf1, 0x3f, 0x4b, 0xa1, 0x54, - 0xbd, 0x54, 0x3b, 0xd1, 0x9b, 0x43, 0xd5, 0x9b, 0xed, 0xef, 0x52, 0x54, 0xff, 0x78, 0x34, 0x17, - 0x78, 0x2f, 0x85, 0x4e, 0x42, 0xff, 0x30, 0x85, 0xc6, 0xea, 0x33, 0x4b, 0x35, 0xe1, 0x84, 0xe2, - 0x2e, 0xf3, 0x30, 0x01, 0x5f, 0x07, 0xd6, 0xa5, 0xe7, 0x23, 0x76, 0xd2, 0xbd, 0x6a, 0xc7, 0x7d, - 0xf9, 0xd6, 0x3b, 0x7a, 0xab, 0x47, 0x60, 0x3b, 0xcb, 0xfc, 0xd1, 0x1c, 0xf3, 0x23, 0xf2, 0xe3, - 0x10, 0x45, 0xea, 0x31, 0xc0, 0x5f, 0x44, 0xa9, 0x7b, 0xfc, 0xa6, 0xb0, 0x1f, 0x9f, 0x9b, 0x37, - 0x18, 0x1f, 0x3a, 0x09, 0xa6, 0x7a, 0xa6, 0x01, 0x1c, 0x68, 0x29, 0x5a, 0xf8, 0x0e, 0x5f, 0x80, - 0x77, 0x55, 0x78, 0xc5, 0x2b, 0x7c, 0xa7, 0x5a, 0xc6, 0x75, 0x34, 0x5c, 0x23, 0x76, 0xdb, 0x84, - 0x8e, 0xf2, 0xe6, 0xec, 0xed, 0x99, 0xd0, 0xad, 0xc3, 0x70, 0x37, 0x28, 0x04, 0xcc, 0x44, 0x2e, - 0xf8, 0x3d, 0x84, 0x98, 0x8d, 0xb2, 0xcb, 0xcc, 0x55, 0x17, 0xc0, 0x10, 0x67, 0xb6, 0x9e, 0x6b, - 0x8a, 0x66, 0x1e, 0x18, 0x90, 0x02, 0x33, 0xbc, 0x86, 0xf2, 0xf3, 0x96, 0x61, 0x3e, 0x30, 0x99, - 0x4b, 0x10, 0x54, 0x90, 0xd9, 0xf9, 0x22, 0x7e, 0x6b, 0xb3, 0xf0, 0x64, 0x5b, 0x28, 0x17, 0x57, - 0x4d, 0x84, 0xb1, 0xfa, 0x8f, 0x07, 0x51, 0x9a, 0x76, 0xfb, 0xc9, 0xf8, 0x3d, 0xc8, 0xf8, 0x2d, - 0xa2, 0xfc, 0x7d, 0xcb, 0x5e, 0x33, 0x3b, 0x2b, 0xbe, 0xb7, 0x26, 0xdf, 0x2c, 0xc2, 0x0d, 0xf3, - 0x3a, 0xc3, 0x35, 0x7c, 0xc7, 0x4e, 0x2d, 0x42, 0xbe, 0xc3, 0x08, 0x7e, 0x05, 0xa1, 0x25, 0xdd, - 0x5e, 0x21, 0x2e, 0xd0, 0xe4, 0x82, 0xc8, 0x67, 0x17, 0xa0, 0xe0, 0x00, 0x2a, 0x46, 0x3e, 0x07, - 0xc4, 0x74, 0x57, 0xcc, 0xee, 0xe8, 0x86, 0xc0, 0x1f, 0x14, 0x76, 0xc5, 0x70, 0x47, 0x27, 0x1a, - 0x01, 0xec, 0xb6, 0xae, 0x86, 0x90, 0x70, 0xee, 0x89, 0x42, 0x82, 0x90, 0x26, 0x07, 0x9e, 0x9a, - 0x27, 0xe6, 0xd8, 0x53, 0x13, 0x78, 0xe0, 0x97, 0x43, 0x17, 0x33, 0x58, 0xe2, 0xd6, 0xf7, 0x5e, - 0x26, 0xb8, 0xd8, 0x1f, 0xd9, 0xe9, 0x62, 0x5f, 0xfd, 0xc1, 0x24, 0x1a, 0xaa, 0xf7, 0x96, 0x9d, - 0x0d, 0xc7, 0x25, 0xed, 0x23, 0xae, 0xc6, 0xde, 0xf6, 0x2a, 0x1d, 0xbb, 0xbd, 0x7a, 0xda, 0x13, - 0x8a, 0x70, 0x54, 0xe6, 0x9b, 0x74, 0x9e, 0x38, 0xfe, 0x6e, 0x12, 0xe5, 0xd9, 0x81, 0x6e, 0xd9, - 0x74, 0x9a, 0x8f, 0xc1, 0xc9, 0xf4, 0xf0, 0xa5, 0x72, 0xb0, 0x4b, 0x90, 0x5d, 0xb8, 0xee, 0xaa, - 0x5f, 0x4b, 0xa2, 0xe1, 0x62, 0xcf, 0x5d, 0x2d, 0xba, 0xa0, 0x5b, 0xc7, 0x72, 0x7f, 0xf2, 0xab, - 0x09, 0x34, 0x4e, 0x1b, 0xb2, 0x64, 0xad, 0x91, 0xce, 0x63, 0x38, 0x09, 0x14, 0x4f, 0xf4, 0x92, - 0xfb, 0x3c, 0xd1, 0xf3, 0x64, 0x99, 0xda, 0xe3, 0xc9, 0xe6, 0x37, 0x12, 0x08, 0x69, 0x56, 0x8b, - 0x7c, 0x46, 0x3e, 0xe3, 0x31, 0x1c, 0x80, 0x1c, 0xe6, 0x67, 0xfc, 0x7a, 0x02, 0x9d, 0xe6, 0xe9, - 0x09, 0xf9, 0x46, 0xe4, 0x88, 0xf7, 0x4b, 0xf4, 0x83, 0x8e, 0x78, 0x0f, 0xfd, 0x64, 0x0a, 0x9d, - 0x86, 0xf4, 0x4f, 0xd4, 0x16, 0xfa, 0x0c, 0x4c, 0x00, 0xb8, 0x29, 0x5f, 0x05, 0xcc, 0xc7, 0x5c, - 0x05, 0xfc, 0xd1, 0x66, 0xe1, 0xe5, 0x15, 0xd3, 0x5d, 0xed, 0x2d, 0x4f, 0x35, 0xad, 0xf6, 0xf5, - 0x15, 0x5b, 0x7f, 0x68, 0xb2, 0x43, 0x70, 0xbd, 0x75, 0xdd, 0xcf, 0xaa, 0xab, 0x77, 0x4d, 0x9e, - 0x6f, 0xb7, 0x0e, 0x06, 0x06, 0xe5, 0xea, 0x5d, 0x22, 0x38, 0x08, 0xbd, 0x65, 0x99, 0x1d, 0x7e, - 0xc1, 0xcc, 0x56, 0x97, 0x3a, 0x35, 0xca, 0x3e, 0xb4, 0xcc, 0x4e, 0x23, 0x7c, 0xcb, 0xbc, 0xd7, - 0xfa, 0x02, 0xd6, 0x9a, 0x50, 0x8d, 0xfa, 0x6f, 0x13, 0xe8, 0x09, 0x59, 0xf7, 0x3e, 0x0b, 0x13, - 0xf6, 0xbf, 0x4e, 0xa0, 0x33, 0x77, 0x40, 0x38, 0xfe, 0x85, 0xdf, 0x67, 0xef, 0x8b, 0x8e, 0xf8, - 0x24, 0xf1, 0x6b, 0x09, 0x74, 0x6a, 0xb1, 0x5a, 0x2e, 0x7d, 0x56, 0x7a, 0x28, 0xf2, 0x3d, 0x9f, - 0x81, 0xfe, 0xa9, 0x17, 0xe7, 0xe7, 0x3e, 0x4b, 0xfd, 0x23, 0x7d, 0xcf, 0x11, 0xef, 0x9f, 0x6f, - 0x64, 0xd0, 0xf0, 0xdd, 0xde, 0x32, 0xe1, 0xf7, 0x46, 0xc7, 0x7a, 0x53, 0x76, 0x03, 0x0d, 0x73, - 0x31, 0xc0, 0x81, 0x86, 0x90, 0x6f, 0x81, 0xc7, 0xcf, 0xb1, 0x90, 0x56, 0x91, 0x88, 0x6e, 0x8e, - 0xdf, 0x21, 0xf6, 0xb2, 0xe8, 0x8a, 0xfc, 0x90, 0xd8, 0xcb, 0x1a, 0x40, 0xf1, 0x5c, 0xe0, 0x21, - 0x54, 0xac, 0x55, 0x21, 0xbf, 0x2c, 0x3f, 0x4b, 0x81, 0x84, 0xb9, 0xfe, 0x1d, 0xb1, 0xde, 0x35, - 0x59, 0x66, 0x5a, 0x31, 0x0c, 0x22, 0x5c, 0x12, 0x2f, 0xa0, 0x09, 0xf1, 0x4e, 0x92, 0x25, 0x57, - 0xcd, 0xc5, 0xb0, 0x8b, 0x4b, 0xab, 0x1a, 0x2d, 0x8a, 0xdf, 0x40, 0x23, 0x1e, 0x10, 0x6e, 0x57, - 0x87, 0x82, 0x14, 0x85, 0x3e, 0xab, 0x50, 0xd6, 0x65, 0xa9, 0x80, 0xc8, 0x00, 0x4e, 0x08, 0x50, - 0x0c, 0x83, 0xd0, 0xf5, 0xb1, 0x54, 0x00, 0x7f, 0x1e, 0x18, 0x74, 0xad, 0x8e, 0x43, 0xe0, 0x1e, - 0x69, 0x18, 0xfc, 0x74, 0xc1, 0x03, 0xc9, 0xe6, 0x70, 0xe6, 0x8d, 0x2d, 0x91, 0xe1, 0x45, 0x84, - 0x82, 0xf3, 0x7e, 0x1e, 0xf3, 0xb2, 0xe7, 0x9b, 0x08, 0x81, 0x85, 0x78, 0x52, 0x37, 0xba, 0x9f, - 0x93, 0x3a, 0xf5, 0x37, 0xe9, 0x5e, 0xbd, 0xdb, 0xf5, 0x87, 0xc2, 0x8b, 0x28, 0x53, 0xec, 0x76, - 0xef, 0x69, 0x55, 0x31, 0x65, 0x9d, 0xde, 0xed, 0x36, 0x7a, 0xb6, 0x29, 0xfa, 0x4f, 0x30, 0x22, - 0x5c, 0x42, 0xa3, 0xc5, 0x6e, 0xb7, 0xd6, 0x5b, 0x6e, 0x99, 0x4d, 0x21, 0x61, 0x34, 0x4b, 0x28, - 0xdf, 0xed, 0x36, 0xba, 0x80, 0x09, 0x67, 0xfc, 0x96, 0xcb, 0xe0, 0x0f, 0x20, 0x52, 0x94, 0xe7, - 0x2b, 0x4e, 0x81, 0x87, 0x82, 0xea, 0x27, 0xab, 0x0b, 0xda, 0x36, 0xe5, 0x13, 0xb1, 0xa4, 0x7e, - 0xe7, 0xbd, 0xd4, 0x88, 0xb4, 0xa2, 0x48, 0x5e, 0xe2, 0x80, 0x25, 0xfe, 0x1c, 0xca, 0x16, 0xbb, - 0x5d, 0xe1, 0x28, 0x08, 0xee, 0xfb, 0x68, 0xa9, 0x50, 0x1f, 0x7b, 0x64, 0x93, 0xaf, 0xa1, 0x31, - 0xb9, 0xb2, 0x3d, 0x25, 0x05, 0xfc, 0x76, 0x02, 0x3e, 0xe8, 0x88, 0xfb, 0xff, 0xdc, 0x44, 0xa9, - 0x62, 0xb7, 0xcb, 0xe7, 0xa3, 0x53, 0x31, 0xfd, 0x11, 0xf6, 0x9a, 0x2f, 0x76, 0xbb, 0xde, 0xa7, - 0x33, 0x0f, 0xbd, 0xe3, 0xf5, 0xe9, 0x5f, 0x67, 0x9f, 0x7e, 0xc4, 0x1d, 0xea, 0x7e, 0x3e, 0x85, - 0xc6, 0x8b, 0xdd, 0xee, 0x49, 0x5e, 0xc2, 0xc7, 0xe5, 0x9b, 0xff, 0x12, 0x42, 0xc2, 0xf4, 0x98, - 0xf5, 0x3d, 0x55, 0x87, 0x85, 0xa9, 0x51, 0x49, 0x68, 0x02, 0x91, 0xa7, 0x7e, 0xb9, 0x3d, 0xa9, - 0xdf, 0xd7, 0x52, 0x30, 0x15, 0x1f, 0xf5, 0x38, 0xe3, 0x4f, 0x4b, 0xb7, 0xf1, 0x3e, 0xc8, 0xec, - 0xa9, 0x0f, 0x7e, 0x45, 0x1a, 0x3c, 0x90, 0xe7, 0xee, 0xa4, 0x17, 0x06, 0x0f, 0x64, 0x16, 0x8f, - 0x89, 0xc2, 0xe4, 0xc1, 0x8f, 0x5e, 0xc2, 0x6c, 0x1e, 0x8a, 0xdb, 0xa4, 0xa8, 0x86, 0x69, 0x68, - 0x21, 0x5a, 0xaf, 0x0f, 0xb3, 0x7b, 0xea, 0xc3, 0xcd, 0x24, 0xb8, 0xdb, 0xfb, 0xa1, 0xbc, 0x07, - 0xdf, 0x5d, 0x5c, 0x47, 0x88, 0x5d, 0x0a, 0xf8, 0x1e, 0x47, 0xa3, 0x2c, 0x6a, 0x8f, 0xe5, 0xd1, - 0xe6, 0x51, 0x7b, 0x01, 0x89, 0x7f, 0x79, 0x99, 0x8a, 0xbd, 0xbc, 0xbc, 0x8a, 0x72, 0x9a, 0xbe, - 0xfe, 0x76, 0x8f, 0xd8, 0x1b, 0xdc, 0x9c, 0x61, 0x99, 0x32, 0xf4, 0xf5, 0xc6, 0x57, 0x29, 0x50, - 0xf3, 0xd1, 0x58, 0xf5, 0xe3, 0x35, 0x84, 0xcb, 0x1a, 0x76, 0x92, 0xe6, 0x47, 0x69, 0xec, 0x47, - 0xd1, 0xf1, 0xab, 0x28, 0x55, 0xbc, 0x5f, 0xe7, 0x92, 0xf5, 0xbb, 0xb6, 0x78, 0xbf, 0xce, 0xe5, - 0xd5, 0xb7, 0xec, 0xfd, 0xba, 0xfa, 0xb5, 0x24, 0xc2, 0x51, 0x4a, 0xfc, 0x32, 0x1a, 0x02, 0xe8, - 0x0a, 0xd5, 0x19, 0xf1, 0xbd, 0x92, 0x75, 0xa7, 0x61, 0x03, 0x54, 0x32, 0xee, 0x3c, 0x52, 0xfc, - 0x0a, 0xbc, 0x87, 0xc4, 0x93, 0xee, 0x4b, 0xef, 0x95, 0xac, 0x3b, 0xde, 0x0b, 0x42, 0xa1, 0xe7, - 0x90, 0x38, 0x31, 0xd8, 0x85, 0xf7, 0xeb, 0xb3, 0x96, 0xe3, 0x72, 0x51, 0x33, 0xbb, 0x70, 0xdd, - 0x81, 0x47, 0x6e, 0x24, 0xbb, 0x90, 0x91, 0x41, 0xf6, 0xf2, 0xfb, 0xf5, 0xa2, 0xe3, 0xf4, 0xda, - 0xc4, 0xd0, 0xac, 0x96, 0x67, 0x50, 0xb2, 0xec, 0xe5, 0xeb, 0x4e, 0x43, 0x67, 0x28, 0x78, 0x88, - 0x49, 0xca, 0x5e, 0x2e, 0x95, 0x52, 0x7f, 0x28, 0x87, 0xf2, 0x65, 0xdd, 0xd5, 0x97, 0x75, 0x87, - 0x08, 0xbb, 0xe9, 0x71, 0x0f, 0xe6, 0x7d, 0x8e, 0x20, 0x07, 0x63, 0x39, 0xe6, 0x6b, 0xc2, 0x05, - 0xf0, 0x17, 0x03, 0xbe, 0xfe, 0x53, 0x2c, 0x62, 0xb2, 0xfa, 0xe5, 0x46, 0x97, 0x83, 0xb5, 0x08, - 0x21, 0xbe, 0x86, 0x86, 0x3d, 0x18, 0xdd, 0x00, 0xa4, 0x02, 0x9d, 0x31, 0x96, 0xa9, 0xfd, 0xaf, - 0x89, 0x68, 0xfc, 0x0a, 0x1a, 0xf1, 0x7e, 0x0a, 0xa6, 0x35, 0xcb, 0xbc, 0xbf, 0x1c, 0xd9, 0x3d, - 0x89, 0xa4, 0x62, 0x51, 0x98, 0xdf, 0x06, 0xa5, 0xa2, 0xa1, 0xe4, 0xf6, 0x12, 0x29, 0xfe, 0x2a, - 0x1a, 0xf3, 0x7e, 0xf3, 0x0d, 0x03, 0x7b, 0x07, 0xe0, 0x9a, 0xff, 0xce, 0x53, 0x48, 0xac, 0x53, - 0x32, 0x39, 0xdb, 0x3a, 0x3c, 0xe9, 0xe5, 0x6b, 0x37, 0x96, 0xa3, 0x3b, 0x87, 0x50, 0x05, 0xb8, - 0x8a, 0x26, 0x3c, 0x48, 0xa0, 0xa1, 0xd9, 0x60, 0xc7, 0x68, 0x2c, 0x37, 0x62, 0x95, 0x34, 0x5a, - 0x0a, 0xb7, 0xd0, 0x79, 0x09, 0x68, 0x38, 0xab, 0xe6, 0x03, 0x97, 0x6f, 0xf7, 0x78, 0xda, 0x2a, - 0xfe, 0x9e, 0x85, 0xcf, 0x95, 0xd1, 0x78, 0x0f, 0xd3, 0xc8, 0x59, 0xc0, 0xb7, 0xe5, 0x86, 0xeb, - 0xe8, 0xb4, 0x87, 0xbf, 0x53, 0xaa, 0xd5, 0x6c, 0xeb, 0x43, 0xd2, 0x74, 0xab, 0x65, 0xbe, 0x5d, - 0x86, 0x74, 0x06, 0xc6, 0x72, 0x63, 0xa5, 0xd9, 0xa5, 0x4a, 0x41, 0x71, 0x32, 0xf3, 0xd8, 0xc2, - 0xf8, 0x1d, 0x74, 0x46, 0x80, 0x57, 0x3b, 0x8e, 0xab, 0x77, 0x9a, 0xa4, 0x5a, 0xe6, 0x7b, 0x68, - 0xd8, 0xcf, 0x73, 0xae, 0x26, 0x47, 0xca, 0x6c, 0xe3, 0x8b, 0xe3, 0xd7, 0xd0, 0xa8, 0x87, 0x60, - 0x77, 0x0d, 0xc3, 0x70, 0xd7, 0x00, 0x43, 0xd2, 0x58, 0x6e, 0x84, 0x23, 0x0f, 0x64, 0x62, 0x51, - 0xa3, 0xe0, 0x99, 0xbd, 0x11, 0x49, 0xa3, 0xdc, 0x8d, 0x6e, 0xac, 0x32, 0xc2, 0xd3, 0x7b, 0x6f, - 0x04, 0x1a, 0xb5, 0x68, 0x9b, 0x2b, 0x26, 0xdb, 0x49, 0x7b, 0xc1, 0x06, 0xcb, 0x0d, 0x0b, 0x80, - 0x71, 0xfa, 0xc1, 0xc8, 0x27, 0x8b, 0xe8, 0x54, 0x8c, 0x8e, 0xed, 0x69, 0xc7, 0xf8, 0x83, 0xc9, - 0xa0, 0x11, 0x47, 0x7c, 0xdb, 0x38, 0x8d, 0x72, 0xde, 0x97, 0x70, 0xe3, 0x41, 0xe9, 0x37, 0x34, - 0xc3, 0x3c, 0x3c, 0xbc, 0x24, 0x8e, 0x23, 0xbe, 0x95, 0x7c, 0x1c, 0xe2, 0xf8, 0x38, 0x11, 0x88, - 0xe3, 0x88, 0x6f, 0x2f, 0x7f, 0x2d, 0x15, 0xcc, 0x49, 0x27, 0x7b, 0xcc, 0xc7, 0x65, 0x26, 0x07, - 0x2e, 0x2a, 0x99, 0x3d, 0xc4, 0x18, 0x88, 0xaa, 0x99, 0xdd, 0xa7, 0x6a, 0xfe, 0x76, 0xb4, 0x3f, - 0x99, 0xe9, 0x79, 0x24, 0xfb, 0xf3, 0x31, 0x0c, 0x56, 0x7c, 0x23, 0x58, 0xc7, 0x98, 0x8d, 0x3e, - 0x28, 0x64, 0x85, 0x58, 0xe6, 0x26, 0xba, 0x4c, 0x82, 0xbf, 0x8c, 0xce, 0x49, 0x80, 0x9a, 0x6e, - 0xeb, 0x6d, 0xe2, 0x06, 0x2f, 0x4b, 0x40, 0x9c, 0xaf, 0x57, 0xba, 0xd1, 0xf5, 0xd1, 0xe2, 0x6b, - 0x15, 0x7d, 0x38, 0x08, 0xca, 0x91, 0xdd, 0x83, 0xff, 0xd2, 0x7f, 0x4c, 0xa2, 0xd1, 0x9a, 0xe5, - 0xb8, 0x2b, 0x36, 0x71, 0x6a, 0xba, 0xed, 0x90, 0xe3, 0xdb, 0xa3, 0x5f, 0x40, 0xa3, 0x10, 0x54, - 0xd7, 0x26, 0x1d, 0x57, 0x78, 0xf1, 0x8c, 0x65, 0xaa, 0xf3, 0x10, 0x3c, 0x29, 0xa9, 0x44, 0x88, - 0x0b, 0x68, 0x90, 0xe9, 0x80, 0x10, 0xea, 0xc8, 0x14, 0x80, 0xc1, 0xd5, 0xbf, 0x9e, 0x42, 0x23, - 0x9e, 0x94, 0xa7, 0xcd, 0xa3, 0x7a, 0x66, 0x73, 0xb8, 0x42, 0xbe, 0x8e, 0x50, 0xcd, 0xb2, 0x5d, - 0xbd, 0x25, 0x3c, 0x56, 0x0c, 0x9b, 0x9d, 0x2e, 0x40, 0x59, 0x19, 0x81, 0x04, 0x4f, 0x21, 0x24, - 0x0c, 0xb0, 0x2c, 0x0c, 0xb0, 0xb1, 0xad, 0xcd, 0x02, 0x0a, 0xc6, 0x95, 0x26, 0x50, 0xa8, 0xbf, - 0x94, 0x44, 0xe3, 0x5e, 0x27, 0x55, 0x1e, 0x91, 0x66, 0xcf, 0x3d, 0xc6, 0x83, 0x41, 0x96, 0xf6, - 0xe0, 0x8e, 0xd2, 0x56, 0xff, 0x9b, 0x30, 0x91, 0x94, 0x5a, 0xd6, 0xc9, 0x44, 0xf2, 0x27, 0xa1, - 0xe3, 0xea, 0x77, 0xa7, 0xd0, 0x69, 0x4f, 0xea, 0x33, 0xbd, 0x0e, 0x98, 0x09, 0x25, 0xbd, 0xd5, - 0x3a, 0xce, 0xeb, 0xf2, 0xb0, 0x27, 0x88, 0x45, 0x1e, 0xa5, 0xce, 0x13, 0x44, 0x3f, 0xe0, 0xe0, - 0x86, 0x65, 0x1a, 0x9a, 0x48, 0x84, 0xdf, 0x40, 0x23, 0xde, 0xcf, 0xa2, 0xbd, 0xe2, 0x2d, 0xc6, - 0xb0, 0xe9, 0xf7, 0x0b, 0xe9, 0xb6, 0xe4, 0xfb, 0x2f, 0x15, 0x50, 0xff, 0x53, 0x06, 0x4d, 0xde, - 0x37, 0x3b, 0x86, 0xb5, 0xee, 0x78, 0xf9, 0xc5, 0x8f, 0xbc, 0xd1, 0x7b, 0xd8, 0x79, 0xc5, 0xdf, - 0x46, 0x67, 0xc2, 0x22, 0xb5, 0xfd, 0xac, 0x2f, 0xbc, 0x77, 0xd6, 0x19, 0x41, 0xc3, 0xcb, 0x34, - 0xce, 0x4f, 0xce, 0xb4, 0xf8, 0x92, 0xe1, 0x54, 0xe5, 0xd9, 0xdd, 0xa4, 0x2a, 0x7f, 0x1e, 0x65, - 0xca, 0x56, 0x5b, 0x37, 0xbd, 0x28, 0x30, 0x18, 0xc5, 0x7e, 0xbd, 0x80, 0xd1, 0x38, 0x05, 0xe5, - 0xcf, 0x2b, 0x86, 0x2e, 0x1b, 0x0a, 0xf8, 0x7b, 0x05, 0x7a, 0x0e, 0xb1, 0x35, 0x91, 0x08, 0x5b, - 0x68, 0x94, 0x57, 0xc7, 0xcf, 0xb9, 0x10, 0x9c, 0x73, 0xf9, 0xaf, 0xb8, 0xf5, 0x57, 0xab, 0x29, - 0xa9, 0x1c, 0x3b, 0xf0, 0x62, 0x19, 0xd4, 0xf9, 0xc7, 0xb0, 0x13, 0x2f, 0x4d, 0xe6, 0x2f, 0x08, - 0x01, 0x26, 0x99, 0xe1, 0xa8, 0x10, 0x60, 0x96, 0x11, 0x89, 0x70, 0x05, 0x4d, 0x14, 0x5b, 0x2d, - 0x6b, 0xdd, 0x4f, 0xaf, 0x42, 0x55, 0x62, 0x04, 0x52, 0x4c, 0xc2, 0xf1, 0x89, 0x4e, 0x91, 0xf0, - 0x71, 0x8d, 0x26, 0x47, 0x6b, 0xd1, 0x12, 0x93, 0x6f, 0x22, 0x1c, 0x6d, 0xf3, 0x9e, 0x0e, 0x50, - 0x7e, 0x28, 0x89, 0x70, 0x68, 0x1f, 0x52, 0x39, 0xc6, 0xe6, 0x94, 0xfa, 0x33, 0x09, 0x34, 0x11, - 0x49, 0x7b, 0x84, 0x6f, 0x22, 0xc4, 0x20, 0x42, 0xee, 0x02, 0x08, 0x06, 0x0a, 0x52, 0x21, 0xf1, - 0xa5, 0x24, 0x20, 0xc3, 0xd7, 0x51, 0x8e, 0xfd, 0xf2, 0x1f, 0x25, 0x0c, 0x17, 0xe9, 0xf5, 0x4c, - 0x43, 0xf3, 0x89, 0x82, 0x5a, 0xe0, 0x24, 0x2e, 0x15, 0x5b, 0xc4, 0xdd, 0xe8, 0xfa, 0xb5, 0x50, - 0x32, 0xf5, 0xeb, 0x09, 0x34, 0xe2, 0x37, 0xb8, 0x68, 0x1c, 0x56, 0xd7, 0x65, 0x78, 0x06, 0xa9, - 0xd4, 0x4e, 0x19, 0xa4, 0x42, 0x73, 0x13, 0xc3, 0xaa, 0xff, 0x3c, 0x81, 0xc6, 0x7d, 0xda, 0x43, - 0x3c, 0xaa, 0x39, 0xf0, 0x87, 0xfc, 0x70, 0x02, 0x29, 0xd3, 0x66, 0xab, 0x65, 0x76, 0x56, 0xaa, - 0x9d, 0x07, 0x96, 0xdd, 0x86, 0x81, 0x7a, 0x78, 0x67, 0x71, 0xea, 0xf7, 0x25, 0xd0, 0x04, 0x6f, - 0x50, 0x49, 0xb7, 0x8d, 0xc3, 0x3b, 0x24, 0x0d, 0xb7, 0xe4, 0xf0, 0x7a, 0x59, 0xfd, 0xbf, 0x09, - 0x84, 0xe6, 0xac, 0xe6, 0xda, 0x11, 0x8f, 0x2e, 0x78, 0x05, 0x65, 0x58, 0x80, 0x25, 0x9f, 0xed, - 0x26, 0xa6, 0x98, 0xcb, 0x3e, 0xfd, 0x34, 0x86, 0x98, 0x1e, 0xe3, 0xf7, 0x35, 0x19, 0x16, 0xa0, - 0xa9, 0xf1, 0x02, 0x10, 0xd2, 0x43, 0xc9, 0x8e, 0xb8, 0x2f, 0xeb, 0x9f, 0x4f, 0xa0, 0xd3, 0x1a, - 0x69, 0x5a, 0x0f, 0x89, 0xbd, 0x51, 0xb2, 0x0c, 0x72, 0x87, 0x74, 0x88, 0x7d, 0x58, 0xfa, 0xfd, - 0x8f, 0x20, 0x3b, 0x5c, 0xd0, 0x98, 0x7b, 0x0e, 0x31, 0x8e, 0x4e, 0x8e, 0x42, 0xf5, 0xef, 0x67, - 0x91, 0x12, 0x6b, 0x1b, 0x1d, 0x59, 0x7b, 0xa0, 0xaf, 0xc1, 0x9b, 0x7e, 0x5c, 0x06, 0xef, 0xe0, - 0xde, 0x0c, 0xde, 0xcc, 0x5e, 0x0d, 0xde, 0xec, 0x6e, 0x0c, 0xde, 0x76, 0xd8, 0xe0, 0xcd, 0x81, - 0xc1, 0x7b, 0x73, 0x5b, 0x83, 0xb7, 0xd2, 0x31, 0xf6, 0x69, 0xee, 0x1e, 0xd9, 0xcc, 0xfc, 0xfb, - 0xb1, 0xd3, 0xaf, 0xd0, 0xc9, 0xad, 0x69, 0xd9, 0x06, 0x31, 0xb8, 0x79, 0x0e, 0xe7, 0xd1, 0x36, - 0x87, 0x69, 0x3e, 0x36, 0xf2, 0xcc, 0xc1, 0xe8, 0x6e, 0x9e, 0x39, 0x78, 0x0c, 0x06, 0xfc, 0xaf, - 0x27, 0xd0, 0x44, 0x89, 0xd8, 0x2e, 0xcb, 0xa7, 0xf0, 0x38, 0x2e, 0x41, 0x8b, 0x68, 0x5c, 0x60, - 0x08, 0xb6, 0xa8, 0xf0, 0xa6, 0x76, 0x93, 0xd8, 0x6e, 0xf8, 0x5e, 0x38, 0x4c, 0x4f, 0xab, 0xf7, - 0x52, 0x8d, 0xf2, 0xb1, 0xeb, 0x57, 0xef, 0xc1, 0x99, 0x20, 0x4d, 0xfe, 0x4b, 0xf3, 0xe9, 0xd5, - 0x9f, 0x4e, 0xa0, 0xcb, 0x1a, 0xe9, 0x90, 0x75, 0x7d, 0xb9, 0x45, 0x04, 0xc6, 0x7c, 0x6e, 0xa7, - 0xe3, 0xde, 0x74, 0xda, 0xba, 0xdb, 0x5c, 0x3d, 0xd0, 0x57, 0xce, 0xa0, 0x11, 0x71, 0x06, 0xda, - 0xc3, 0xec, 0x24, 0x95, 0x53, 0xff, 0x20, 0x89, 0xb2, 0xd3, 0x96, 0x7b, 0xe0, 0x67, 0x7a, 0x83, - 0x49, 0x3b, 0xb9, 0x87, 0x3d, 0xfd, 0xe7, 0xa0, 0x72, 0x21, 0x17, 0x1a, 0x5c, 0xfb, 0x2f, 0x5b, - 0x91, 0x24, 0x6e, 0x1e, 0xd9, 0x1e, 0x53, 0xd1, 0xbe, 0x8c, 0x86, 0x20, 0xae, 0x4f, 0x38, 0x75, - 0x03, 0xa7, 0x1a, 0x97, 0x02, 0xc3, 0x75, 0x04, 0xa4, 0xf8, 0xcb, 0x52, 0x0a, 0x87, 0xcc, 0xc1, - 0x53, 0xd7, 0x0a, 0xec, 0xd4, 0x9f, 0x4a, 0xa3, 0x11, 0xcf, 0x01, 0xe2, 0x90, 0xe4, 0xfe, 0x22, - 0xca, 0xcc, 0x5a, 0x42, 0x36, 0x36, 0x70, 0x98, 0x58, 0xb5, 0x9c, 0x90, 0x27, 0x08, 0x27, 0xc2, - 0x37, 0x51, 0x6e, 0xc1, 0x32, 0x44, 0x77, 0x1f, 0x18, 0x4b, 0x1d, 0xcb, 0x88, 0x84, 0x4b, 0xf8, - 0x84, 0xf8, 0x32, 0x4a, 0x83, 0xa7, 0x94, 0x70, 0xd8, 0x19, 0xf2, 0x8e, 0x02, 0xbc, 0xd0, 0xa3, - 0x99, 0xbd, 0xf6, 0x68, 0x76, 0xbf, 0x3d, 0x9a, 0x7b, 0xac, 0x3d, 0x8a, 0xdf, 0x43, 0x23, 0x50, - 0x93, 0x97, 0x20, 0x77, 0xe7, 0x65, 0xe5, 0x09, 0x3e, 0xf3, 0x8f, 0xb2, 0x76, 0xf3, 0x34, 0xb9, - 0x30, 0xe1, 0x4b, 0xac, 0xd4, 0xdf, 0x4e, 0xa0, 0xec, 0xbd, 0xce, 0x5a, 0xc7, 0x5a, 0x3f, 0x98, - 0x9e, 0xdc, 0x44, 0xc3, 0x9c, 0x8d, 0x30, 0x23, 0x42, 0xdc, 0x4a, 0x8f, 0x81, 0x1b, 0xc0, 0x49, - 0x13, 0xa9, 0xf0, 0x6b, 0x7e, 0x21, 0x70, 0x61, 0x4c, 0x05, 0x59, 0x08, 0xbd, 0x42, 0x4d, 0x39, - 0x71, 0x9a, 0x48, 0x8e, 0xcf, 0xf3, 0x47, 0x9e, 0x85, 0x34, 0x1c, 0xb4, 0x29, 0xec, 0x8d, 0x67, - 0xf5, 0x5f, 0x25, 0xd1, 0x58, 0xe8, 0x98, 0xe2, 0x79, 0x34, 0xc4, 0x8f, 0x09, 0x4c, 0x2f, 0x93, - 0x1b, 0xb8, 0x38, 0xfa, 0x40, 0x2d, 0xc7, 0xfe, 0xac, 0x1a, 0xf8, 0x4b, 0x28, 0x6b, 0x39, 0x30, - 0x91, 0xc3, 0xb7, 0x8c, 0x05, 0x8a, 0xbf, 0x58, 0xa7, 0x6d, 0x67, 0x2a, 0xcd, 0x49, 0x44, 0x3d, - 0xb2, 0x1c, 0xf8, 0xb4, 0x5b, 0x68, 0x48, 0x77, 0x1c, 0xe2, 0x36, 0x5c, 0x7d, 0x45, 0x4c, 0xee, - 0xe6, 0x03, 0x45, 0x9d, 0x06, 0xe0, 0x92, 0xbe, 0x82, 0xdf, 0x44, 0xa3, 0x4d, 0x9b, 0xc0, 0x54, - 0xaf, 0xb7, 0x68, 0x2b, 0x05, 0x53, 0x4c, 0x42, 0x88, 0x27, 0xc3, 0x01, 0xa2, 0x6a, 0xe0, 0x77, - 0xd0, 0x28, 0xff, 0x1c, 0xe6, 0x5f, 0x04, 0xc3, 0x63, 0x2c, 0x98, 0xb8, 0x99, 0x48, 0x98, 0x87, - 0x11, 0x77, 0x33, 0x13, 0xc9, 0x45, 0xbe, 0x86, 0x40, 0xaa, 0x7e, 0x33, 0x41, 0xcd, 0x03, 0x0a, - 0xf0, 0xdf, 0x8b, 0x6b, 0xef, 0x51, 0x57, 0xda, 0x41, 0x4a, 0xe8, 0x8c, 0xb3, 0xcd, 0x9c, 0xa2, - 0x71, 0x2c, 0x9e, 0x42, 0x19, 0x43, 0x3c, 0x6d, 0x38, 0x2b, 0x7f, 0x84, 0x57, 0x8f, 0xc6, 0xa9, - 0xf0, 0x15, 0x94, 0xa6, 0xe6, 0x1f, 0xdf, 0xee, 0xc5, 0xae, 0x55, 0x1a, 0x50, 0xa8, 0xdf, 0x95, - 0x44, 0x23, 0xc2, 0xd7, 0xdc, 0x38, 0xd0, 0xe7, 0xbc, 0xba, 0xbb, 0x66, 0x72, 0x8f, 0x47, 0x80, - 0xf9, 0x4d, 0xbe, 0xe5, 0x8b, 0x62, 0x57, 0x47, 0xd5, 0x5c, 0x30, 0x2f, 0xf3, 0x0f, 0xcd, 0xec, - 0x7e, 0xcb, 0x40, 0xe9, 0xdf, 0x4a, 0xe7, 0x92, 0xf9, 0xd4, 0x5b, 0xe9, 0x5c, 0x3a, 0x3f, 0xa8, - 0xfe, 0xee, 0x3c, 0x1a, 0x5c, 0xec, 0x90, 0xc5, 0x07, 0xf8, 0x25, 0x21, 0x69, 0x3c, 0xff, 0xf8, - 0x09, 0x91, 0x25, 0x20, 0x66, 0x07, 0x34, 0x21, 0xb5, 0xfc, 0x2d, 0x31, 0xf3, 0x35, 0xef, 0x45, - 0x2c, 0x96, 0x61, 0x98, 0xd9, 0x01, 0x4d, 0xcc, 0x90, 0x7d, 0x4b, 0x4c, 0x0d, 0xcd, 0x85, 0x25, - 0x95, 0x62, 0x18, 0xaf, 0x14, 0xdf, 0x7c, 0xcf, 0xc5, 0x65, 0x62, 0x0e, 0xdf, 0x0f, 0x44, 0x29, - 0x66, 0x07, 0xb4, 0xf8, 0x0c, 0xce, 0x23, 0xe2, 0x99, 0x36, 0x17, 0xfb, 0xe9, 0xd0, 0xd6, 0x09, - 0x70, 0xb3, 0x03, 0x9a, 0x44, 0x8b, 0x6f, 0xfb, 0x4f, 0x4b, 0xd0, 0x65, 0x35, 0xec, 0xda, 0x2c, - 0xa0, 0x66, 0x07, 0x34, 0x91, 0x52, 0xa8, 0x14, 0x9e, 0xc0, 0xe7, 0x0e, 0x13, 0xe1, 0x4a, 0x01, - 0x27, 0x54, 0xca, 0x9e, 0xcb, 0x7f, 0x3d, 0xf4, 0xc0, 0x27, 0x5f, 0x5b, 0xce, 0x84, 0x0a, 0x33, - 0xe4, 0xec, 0x80, 0x16, 0x7a, 0x0e, 0xf4, 0x8a, 0xf7, 0xa8, 0x20, 0x5f, 0x34, 0xc6, 0x84, 0xc3, - 0x07, 0xf3, 0x23, 0x2a, 0x25, 0xef, 0xd1, 0xc1, 0x5b, 0xe2, 0x63, 0x72, 0x7c, 0x73, 0x81, 0x43, - 0xb5, 0x54, 0x3a, 0x06, 0xed, 0x1d, 0x61, 0xe7, 0xfb, 0x66, 0xf8, 0xd9, 0x25, 0xfe, 0x98, 0xd7, - 0xd9, 0x50, 0x49, 0x8e, 0x9d, 0x1d, 0xd0, 0xc2, 0xcf, 0x34, 0xdd, 0x96, 0x9e, 0xfc, 0xe1, 0xc1, - 0x8b, 0x61, 0xa9, 0x52, 0x94, 0x20, 0x55, 0x78, 0x1c, 0xe8, 0xcd, 0xf0, 0x1b, 0x34, 0x3c, 0x54, - 0xf1, 0x6c, 0xfc, 0x4b, 0x25, 0x42, 0xd5, 0xde, 0x9b, 0x35, 0xb7, 0xa5, 0xb7, 0x42, 0xe0, 0x39, - 0xae, 0x98, 0xaa, 0x75, 0x57, 0x17, 0xab, 0x66, 0x43, 0x5e, 0x7a, 0xb5, 0x02, 0x52, 0x06, 0x47, - 0x3b, 0x14, 0x70, 0x42, 0x87, 0xb2, 0x17, 0x2e, 0x6e, 0x4b, 0x59, 0x68, 0x95, 0xbc, 0x5c, 0xa9, - 0x80, 0xa2, 0x95, 0x8a, 0xf9, 0x6a, 0x6f, 0x89, 0xc9, 0x59, 0x95, 0x09, 0xb9, 0x83, 0x02, 0x0c, - 0xed, 0x20, 0x21, 0x89, 0x6b, 0x01, 0x12, 0x3f, 0x2a, 0x18, 0xc8, 0x87, 0xfd, 0x16, 0x96, 0x6a, - 0xb3, 0x03, 0x1a, 0xa4, 0x84, 0x54, 0x59, 0x4a, 0x51, 0xe5, 0x14, 0x50, 0x8c, 0xf8, 0x6f, 0xb2, - 0x3c, 0x22, 0xcd, 0xd9, 0x01, 0x8d, 0xa5, 0x1b, 0x7d, 0x49, 0x48, 0xde, 0xa5, 0x9c, 0x96, 0xa7, - 0x08, 0x1f, 0x41, 0xa7, 0x88, 0x20, 0xc5, 0xd7, 0x4c, 0x34, 0xc1, 0x95, 0x72, 0x46, 0x3e, 0xff, - 0x0a, 0xe3, 0x67, 0x07, 0xb4, 0x68, 0x52, 0xac, 0xdb, 0x52, 0xce, 0x27, 0xe5, 0x6c, 0x28, 0x9e, - 0x20, 0x40, 0x51, 0x71, 0x89, 0xd9, 0xa1, 0x16, 0x63, 0xd3, 0xa6, 0x2b, 0xe7, 0x80, 0xc1, 0x93, - 0x3e, 0x83, 0x28, 0xc9, 0xec, 0x80, 0x16, 0x9b, 0x70, 0xbd, 0x14, 0xc9, 0xbc, 0xa4, 0x28, 0xf2, - 0xc1, 0x4b, 0x08, 0x3d, 0x3b, 0xa0, 0x45, 0x72, 0x35, 0xdd, 0x12, 0x53, 0x1e, 0x29, 0x4f, 0xc8, - 0x9d, 0x18, 0x60, 0x68, 0x27, 0x0a, 0xa9, 0x91, 0x6e, 0x89, 0x19, 0x86, 0x94, 0xc9, 0x68, 0xa9, - 0x60, 0xe6, 0x14, 0x32, 0x11, 0x69, 0xf1, 0x09, 0x7d, 0x94, 0x27, 0x79, 0x6e, 0x45, 0x5e, 0x3e, - 0x8e, 0x66, 0x76, 0x40, 0x8b, 0x4f, 0x06, 0xa4, 0xc5, 0xe7, 0xd4, 0x51, 0xce, 0x6f, 0xc7, 0xd3, - 0x6f, 0x5d, 0x7c, 0x3e, 0x1e, 0x7d, 0x9b, 0x5c, 0x29, 0xca, 0x05, 0x39, 0x98, 0xb9, 0x2f, 0xe1, - 0xec, 0x80, 0xb6, 0x4d, 0xc6, 0x95, 0x7b, 0x7d, 0x12, 0x97, 0x28, 0x17, 0xe5, 0xd4, 0xaa, 0xb1, - 0x44, 0xb3, 0x03, 0x5a, 0x9f, 0xb4, 0x27, 0xf7, 0xfa, 0x64, 0x0f, 0x51, 0x0a, 0xdb, 0xb2, 0xf5, - 0xe5, 0xd1, 0x27, 0xf7, 0xc8, 0x62, 0x6c, 0x0a, 0x0f, 0xe5, 0x92, 0xac, 0xba, 0x31, 0x24, 0x54, - 0x75, 0xe3, 0x92, 0x7f, 0x2c, 0xc6, 0xe6, 0xd0, 0x50, 0x9e, 0xda, 0x86, 0xa1, 0xdf, 0xc6, 0xd8, - 0xec, 0x1b, 0x8b, 0xb1, 0x49, 0x2c, 0x14, 0x55, 0x66, 0x18, 0x43, 0x42, 0x19, 0xc6, 0xa5, 0xbf, - 0x58, 0x8c, 0xcd, 0x22, 0xa1, 0x3c, 0xbd, 0x0d, 0xc3, 0xa0, 0x85, 0x71, 0xf9, 0x27, 0x6e, 0x4b, - 0x69, 0x1c, 0x94, 0x67, 0xe4, 0x79, 0x43, 0x40, 0xd1, 0x79, 0x43, 0x4c, 0xf8, 0x50, 0x8a, 0x04, - 0xaa, 0x2a, 0xcf, 0xca, 0xc3, 0x3c, 0x84, 0xa6, 0xc3, 0x3c, 0x1c, 0xda, 0x5a, 0x8a, 0x04, 0xec, - 0x29, 0x97, 0xfb, 0x31, 0x01, 0xb4, 0xcc, 0x84, 0x85, 0xf8, 0x55, 0x63, 0x22, 0xc6, 0x94, 0xe7, - 0xe4, 0x8b, 0xb7, 0x08, 0xc1, 0xec, 0x80, 0x16, 0x13, 0x67, 0xa6, 0xc5, 0xbb, 0x47, 0x2b, 0x57, - 0xe4, 0x61, 0x1b, 0x47, 0x43, 0x87, 0x6d, 0xac, 0x6b, 0xf5, 0x5c, 0xdc, 0xd5, 0xb8, 0x72, 0x55, - 0x36, 0xcc, 0xa2, 0x14, 0xd4, 0x30, 0x8b, 0xb9, 0x52, 0xd7, 0xe2, 0x1d, 0x7e, 0x95, 0xe7, 0xb7, - 0x6d, 0x21, 0xd0, 0xc4, 0xb4, 0x90, 0xf9, 0xbf, 0x06, 0xb6, 0xd3, 0xbd, 0x2e, 0xbc, 0xd5, 0xfc, - 0x42, 0xac, 0xed, 0xc4, 0x90, 0x82, 0xed, 0xc4, 0x00, 0x74, 0x95, 0x17, 0xaf, 0x8e, 0x95, 0x6b, - 0xf2, 0x2a, 0x2f, 0xe2, 0xe8, 0x2a, 0x2f, 0x5d, 0x33, 0x97, 0x22, 0x17, 0xb6, 0xca, 0x8b, 0xb2, - 0x02, 0x84, 0xd0, 0x54, 0x01, 0xc2, 0x57, 0xbc, 0x1f, 0xf4, 0xbf, 0x2c, 0x55, 0xa6, 0x80, 0xdb, - 0x25, 0xff, 0xd5, 0xb9, 0x3e, 0x74, 0xb3, 0x03, 0x5a, 0xff, 0x0b, 0xd7, 0x6a, 0xcc, 0xdd, 0xa7, - 0x72, 0x5d, 0x56, 0xb0, 0x08, 0x01, 0x55, 0xb0, 0xe8, 0x8d, 0x69, 0x35, 0xe6, 0xf2, 0x52, 0xf9, - 0x5c, 0x5f, 0x56, 0xfe, 0x37, 0xc7, 0x5c, 0x79, 0xde, 0x12, 0x6f, 0x1f, 0x95, 0x97, 0xe4, 0xc5, - 0x2e, 0xc0, 0xd0, 0xc5, 0x4e, 0xb8, 0xa5, 0xbc, 0x25, 0xde, 0xd8, 0x29, 0x37, 0xa2, 0xa5, 0x82, - 0x25, 0x52, 0xb8, 0xd9, 0xd3, 0xe2, 0x2f, 0xc8, 0x94, 0x9b, 0xb2, 0xd6, 0xc5, 0xd1, 0x50, 0xad, - 0x8b, 0xbd, 0x5c, 0x9b, 0x89, 0xde, 0x73, 0x29, 0xb7, 0xc2, 0x37, 0x7f, 0x32, 0x9e, 0x5a, 0x3e, - 0x91, 0xbb, 0xb1, 0x37, 0xc3, 0xb1, 0x3b, 0xca, 0xe7, 0x43, 0xfb, 0x4b, 0x09, 0x4b, 0xed, 0xdb, - 0x50, 0xac, 0xcf, 0x9b, 0xe1, 0x70, 0x17, 0xe5, 0xe5, 0x78, 0x0e, 0xbe, 0xae, 0x84, 0xc3, 0x63, - 0xde, 0x0c, 0x47, 0x88, 0x28, 0xb7, 0xe3, 0x39, 0xf8, 0xd2, 0x0d, 0x47, 0x94, 0xbc, 0x24, 0xe4, - 0xac, 0x50, 0xbe, 0x20, 0x9b, 0x8e, 0x3e, 0x82, 0x9a, 0x8e, 0x41, 0x66, 0x8b, 0x97, 0x84, 0x5c, - 0x0f, 0xca, 0x2b, 0x91, 0x22, 0x7e, 0x63, 0x85, 0x8c, 0x10, 0x2f, 0x09, 0x39, 0x12, 0x94, 0x57, - 0x23, 0x45, 0xfc, 0xd6, 0x09, 0x99, 0x14, 0x8c, 0xed, 0x5c, 0xe8, 0x94, 0x2f, 0x02, 0x0f, 0x75, - 0x67, 0xaf, 0xa8, 0xd9, 0x01, 0x6d, 0x3b, 0x57, 0xbc, 0x0f, 0xfa, 0xdf, 0x1a, 0x2a, 0xaf, 0xc9, - 0x43, 0xb8, 0x1f, 0x1d, 0x1d, 0xc2, 0x7d, 0x6f, 0x1e, 0x5f, 0x0f, 0xb9, 0xd3, 0x2b, 0xaf, 0xcb, - 0x53, 0x9c, 0x84, 0xa4, 0x53, 0x5c, 0xd8, 0xf9, 0x5e, 0xf2, 0x13, 0x57, 0xbe, 0x24, 0x4f, 0x71, - 0x22, 0x8e, 0x4e, 0x71, 0x92, 0x4f, 0x79, 0x29, 0xe2, 0xbe, 0xac, 0xbc, 0x21, 0x4f, 0x71, 0x21, - 0x34, 0x9d, 0xe2, 0xc2, 0x0e, 0xcf, 0xaf, 0x87, 0xbc, 0x78, 0x95, 0x37, 0xe3, 0xdb, 0x0f, 0x48, - 0xb1, 0xfd, 0xcc, 0xe7, 0x57, 0x8b, 0x77, 0x47, 0x55, 0x8a, 0xf2, 0xf8, 0x8d, 0xa3, 0xa1, 0xe3, - 0x37, 0xd6, 0x95, 0x75, 0x31, 0xf6, 0x61, 0x13, 0x65, 0x7a, 0x9b, 0x8d, 0x43, 0x60, 0x8a, 0xc4, - 0x3d, 0x89, 0x22, 0xee, 0x91, 0xd9, 0x46, 0xa8, 0xd4, 0x67, 0x8f, 0xec, 0x6d, 0x83, 0x42, 0xf4, - 0x74, 0x76, 0x8d, 0x5c, 0x62, 0x29, 0x65, 0x79, 0x76, 0x8d, 0x10, 0xd0, 0xd9, 0x35, 0x7a, 0xf5, - 0x35, 0x83, 0xf2, 0x5c, 0x8b, 0x82, 0x77, 0xa8, 0x2b, 0x21, 0x6f, 0xb0, 0x10, 0x9e, 0xce, 0x4e, - 0x61, 0x18, 0xac, 0xd7, 0x0c, 0x56, 0x6a, 0x99, 0xdd, 0x65, 0x4b, 0xb7, 0x8d, 0x3a, 0xe9, 0x18, - 0xca, 0x4c, 0x68, 0xbd, 0x8e, 0xa1, 0x81, 0xf5, 0x3a, 0x06, 0x0e, 0xf1, 0x2a, 0x21, 0x38, 0x7f, - 0x29, 0x52, 0xb9, 0x03, 0x6c, 0x0b, 0xfd, 0xd8, 0x72, 0xb2, 0xd9, 0x01, 0xad, 0x1f, 0x07, 0x6a, - 0xab, 0xcf, 0x6f, 0xd4, 0xdf, 0x9e, 0xf3, 0x3d, 0xa0, 0x6b, 0x36, 0xe9, 0xea, 0x36, 0x51, 0x66, - 0x65, 0x5b, 0x3d, 0x96, 0x88, 0xda, 0xea, 0xb1, 0x88, 0x28, 0x5b, 0x6f, 0x2c, 0x54, 0xb7, 0x63, - 0x1b, 0x8c, 0x88, 0xf8, 0xd2, 0x74, 0x76, 0x92, 0x11, 0x54, 0x40, 0x73, 0x56, 0x67, 0x05, 0x4e, - 0x2a, 0xde, 0x92, 0x67, 0xa7, 0xfe, 0x94, 0x74, 0x76, 0xea, 0x8f, 0xa5, 0xaa, 0x2e, 0x63, 0xd9, - 0x18, 0xbc, 0x2b, 0xab, 0x7a, 0x0c, 0x09, 0x55, 0xf5, 0x18, 0x70, 0x94, 0xa1, 0x46, 0x1c, 0xe2, - 0x2a, 0x73, 0xdb, 0x31, 0x04, 0x92, 0x28, 0x43, 0x00, 0x47, 0x19, 0xce, 0x10, 0xb7, 0xb9, 0xaa, - 0xcc, 0x6f, 0xc7, 0x10, 0x48, 0xa2, 0x0c, 0x01, 0x4c, 0x37, 0x9b, 0x32, 0x78, 0xba, 0xd7, 0x5a, - 0xf3, 0xfa, 0x6c, 0x41, 0xde, 0x6c, 0xf6, 0x25, 0xa4, 0x9b, 0xcd, 0xbe, 0x48, 0xfc, 0xfd, 0xbb, - 0xbe, 0xa2, 0x55, 0x16, 0xa1, 0xc2, 0xa9, 0xc0, 0x2e, 0xd8, 0x4d, 0xa9, 0xd9, 0x01, 0x6d, 0xb7, - 0x57, 0xc0, 0x2f, 0xf8, 0xb7, 0x3b, 0x4a, 0x0d, 0xaa, 0x1a, 0xf7, 0xcf, 0x2a, 0x18, 0x78, 0x76, - 0x40, 0xf3, 0xef, 0x7f, 0x6e, 0xa3, 0x61, 0xf8, 0xa8, 0x6a, 0xc7, 0x74, 0xcb, 0xd3, 0xca, 0xdb, - 0xf2, 0x96, 0x49, 0x40, 0xd1, 0x2d, 0x93, 0xf0, 0x93, 0x4e, 0xe2, 0xf0, 0x93, 0x4d, 0x31, 0xe5, - 0x69, 0x45, 0x93, 0x27, 0x71, 0x09, 0x49, 0x27, 0x71, 0x09, 0xe0, 0xd7, 0x5b, 0xb6, 0xad, 0x6e, - 0x79, 0x5a, 0xa9, 0xc7, 0xd4, 0xcb, 0x50, 0x7e, 0xbd, 0xec, 0xa7, 0x5f, 0x6f, 0x7d, 0xb5, 0xe7, - 0x96, 0xe9, 0x37, 0x2e, 0xc5, 0xd4, 0xeb, 0x21, 0xfd, 0x7a, 0x3d, 0x00, 0x9d, 0x0a, 0x01, 0x50, - 0xb3, 0x2d, 0x3a, 0x69, 0xdf, 0x35, 0x5b, 0x2d, 0xe5, 0x9e, 0x3c, 0x15, 0x86, 0xf1, 0x74, 0x2a, - 0x0c, 0xc3, 0xa8, 0xe9, 0xc9, 0x5a, 0x45, 0x96, 0x7b, 0x2b, 0xca, 0x3b, 0xb2, 0xe9, 0x19, 0x60, - 0xa8, 0xe9, 0x19, 0xfc, 0x82, 0xdd, 0x05, 0xfd, 0xa5, 0x91, 0x07, 0x36, 0x71, 0x56, 0x95, 0xfb, - 0xa1, 0xdd, 0x85, 0x80, 0x83, 0xdd, 0x85, 0xf0, 0x1b, 0xaf, 0xa0, 0x27, 0xa5, 0x85, 0xc6, 0xf3, - 0x14, 0xab, 0x13, 0xdd, 0x6e, 0xae, 0x2a, 0xef, 0x02, 0xab, 0xa7, 0x63, 0x97, 0x2a, 0x99, 0x74, - 0x76, 0x40, 0xdb, 0x8e, 0x13, 0x6c, 0xcb, 0xdf, 0x9e, 0x63, 0x81, 0xa5, 0x5a, 0xad, 0xe4, 0x6d, - 0x42, 0xdf, 0x0b, 0x6d, 0xcb, 0xa3, 0x24, 0xb0, 0x2d, 0x8f, 0x82, 0x71, 0x17, 0x5d, 0x0c, 0x6d, - 0xd5, 0xe6, 0xf5, 0x16, 0xdd, 0x97, 0x10, 0xa3, 0xa6, 0x37, 0xd7, 0x88, 0xab, 0xbc, 0x0f, 0xbc, - 0x2f, 0xf7, 0xd9, 0xf0, 0x85, 0xa8, 0x67, 0x07, 0xb4, 0x1d, 0xf8, 0x61, 0x95, 0x3d, 0x9d, 0xa1, - 0x7c, 0x59, 0x3e, 0xdf, 0xa4, 0xb0, 0xd9, 0x01, 0x8d, 0x3d, 0xab, 0xf1, 0x01, 0x52, 0xee, 0x75, - 0x57, 0x6c, 0xdd, 0x20, 0xcc, 0xd0, 0x02, 0xdb, 0x8d, 0x1b, 0xa0, 0xdf, 0x21, 0x5b, 0x69, 0xfd, - 0xe8, 0xa8, 0x95, 0xd6, 0x0f, 0x47, 0x15, 0x55, 0xca, 0xa1, 0xa4, 0x7c, 0x45, 0x56, 0x54, 0x09, - 0x49, 0x15, 0x55, 0xce, 0xb8, 0xf4, 0x2e, 0x3a, 0xeb, 0xef, 0xe7, 0xf9, 0xfa, 0xcb, 0x3a, 0x4d, - 0xf9, 0x00, 0xf8, 0x5c, 0x8c, 0x5c, 0x06, 0x48, 0x54, 0xb3, 0x03, 0x5a, 0x9f, 0xf2, 0x74, 0xc5, - 0x8d, 0xa4, 0x07, 0xe4, 0xe6, 0xc5, 0x77, 0xca, 0x2b, 0x6e, 0x1f, 0x32, 0xba, 0xe2, 0xf6, 0x41, - 0xc5, 0x32, 0xe7, 0x42, 0xd5, 0x77, 0x60, 0xee, 0xcb, 0xb4, 0x1f, 0x87, 0x58, 0xe6, 0xdc, 0x52, - 0x5b, 0xde, 0x81, 0xb9, 0x6f, 0xad, 0xf5, 0xe3, 0x80, 0xaf, 0xa0, 0x4c, 0xbd, 0x3e, 0xaf, 0xf5, - 0x3a, 0x4a, 0x33, 0x74, 0x2d, 0x07, 0xd0, 0xd9, 0x01, 0x8d, 0xe3, 0xa9, 0x19, 0x54, 0x69, 0xe9, - 0x8e, 0x6b, 0x36, 0x1d, 0x18, 0x31, 0xde, 0x08, 0x31, 0x64, 0x33, 0x28, 0x8e, 0x86, 0x9a, 0x41, - 0x71, 0x70, 0x6a, 0x2f, 0x96, 0x74, 0xc7, 0xd1, 0x3b, 0x86, 0xad, 0x4f, 0xc3, 0x32, 0x41, 0x42, - 0x0f, 0x05, 0x4b, 0x58, 0x6a, 0x2f, 0xca, 0x10, 0x38, 0x7c, 0xf7, 0x20, 0x9e, 0x99, 0xf3, 0x20, - 0x74, 0xf8, 0x1e, 0xc2, 0xc3, 0xe1, 0x7b, 0x08, 0x06, 0x76, 0xa7, 0x07, 0xd3, 0xc8, 0x8a, 0x09, - 0x0f, 0x5d, 0xad, 0x84, 0xec, 0xce, 0x30, 0x01, 0xd8, 0x9d, 0x61, 0xa0, 0xd4, 0x24, 0x6f, 0xb9, - 0x5d, 0xed, 0xd3, 0xa4, 0x60, 0x95, 0x8d, 0x94, 0xa1, 0xeb, 0x77, 0x30, 0x38, 0xca, 0x1b, 0x1d, - 0xbd, 0x6d, 0x95, 0xa7, 0x3d, 0xa9, 0x9b, 0xf2, 0xfa, 0xdd, 0x97, 0x90, 0xae, 0xdf, 0x7d, 0x91, - 0x74, 0x76, 0xf5, 0x36, 0x5a, 0xab, 0xba, 0x4d, 0x0c, 0xff, 0xf9, 0x17, 0xb6, 0x35, 0xfc, 0x50, - 0x9e, 0x5d, 0xb7, 0x21, 0xa5, 0xb3, 0xeb, 0x36, 0x68, 0x6a, 0xe4, 0xc5, 0xa3, 0x35, 0xa2, 0x1b, - 0xca, 0x9a, 0x6c, 0xe4, 0xf5, 0xa7, 0xa4, 0x46, 0x5e, 0x7f, 0x6c, 0xff, 0xcf, 0xb9, 0x6f, 0x9b, - 0x2e, 0x51, 0x5a, 0xbb, 0xf9, 0x1c, 0x20, 0xed, 0xff, 0x39, 0x80, 0xa6, 0x1b, 0xc2, 0x70, 0x87, - 0xb4, 0xe5, 0x0d, 0x61, 0xb4, 0x1b, 0xc2, 0x25, 0xa8, 0xc5, 0xc2, 0xfd, 0xc5, 0x94, 0x8e, 0x6c, - 0xb1, 0x70, 0x30, 0xb5, 0x58, 0x02, 0x8f, 0x32, 0xc9, 0xd3, 0x49, 0xb1, 0xe4, 0x35, 0x54, 0xc4, - 0xd1, 0x35, 0x54, 0xf2, 0x8a, 0xba, 0x2d, 0x39, 0x34, 0x28, 0x5d, 0xd9, 0xea, 0x10, 0x50, 0xd4, - 0xea, 0x10, 0x5d, 0x1f, 0x4a, 0x68, 0xdc, 0x7f, 0xf4, 0x9a, 0xcf, 0x95, 0x5f, 0x95, 0x3f, 0x33, - 0x84, 0xa6, 0x9f, 0x19, 0x02, 0x49, 0x4c, 0xf8, 0xb4, 0x65, 0xf7, 0x61, 0x12, 0x9c, 0x0f, 0x86, - 0x40, 0x78, 0x0e, 0xe1, 0x7a, 0x71, 0x7e, 0xae, 0x6a, 0xd4, 0xc4, 0x2b, 0x32, 0x47, 0x3e, 0x81, - 0x8d, 0x52, 0xcc, 0x0e, 0x68, 0x31, 0xe5, 0xf0, 0x87, 0xe8, 0x3c, 0x87, 0x72, 0x77, 0x5e, 0x78, - 0x6b, 0xc0, 0xf0, 0x17, 0x04, 0x17, 0xf8, 0x3e, 0x13, 0xe2, 0x1b, 0x4b, 0x3b, 0x3b, 0xa0, 0x6d, - 0xcb, 0xab, 0x7f, 0x5d, 0x7c, 0x7d, 0xe8, 0xed, 0xa6, 0x2e, 0x7f, 0x91, 0xd8, 0x96, 0x57, 0xff, - 0xba, 0xb8, 0xdc, 0x1f, 0xee, 0xa6, 0x2e, 0xbf, 0x13, 0xb6, 0xe5, 0x85, 0x1d, 0x54, 0xd8, 0x0e, - 0x5f, 0x6c, 0xb5, 0x94, 0x75, 0xa8, 0xee, 0xb9, 0xdd, 0x54, 0x57, 0x04, 0x83, 0x73, 0x27, 0x8e, - 0x74, 0x96, 0x5e, 0xec, 0x92, 0x4e, 0x5d, 0x5a, 0x80, 0x1e, 0xc9, 0xb3, 0x74, 0x84, 0x80, 0xce, - 0xd2, 0x11, 0x20, 0x1d, 0x50, 0xa2, 0x5f, 0x8c, 0xb2, 0x21, 0x0f, 0x28, 0x11, 0x47, 0x07, 0x94, - 0xe4, 0x43, 0xb3, 0x88, 0x4e, 0x2d, 0xae, 0xb9, 0xba, 0x67, 0x41, 0x3a, 0xbc, 0x2b, 0x3f, 0x0a, - 0x5d, 0x32, 0x45, 0x49, 0xe0, 0x92, 0x29, 0x0a, 0xa6, 0x63, 0x84, 0x82, 0xeb, 0x1b, 0x9d, 0xe6, - 0x8c, 0x6e, 0xb6, 0x7a, 0x36, 0x51, 0xfe, 0x3f, 0x79, 0x8c, 0x84, 0xd0, 0x74, 0x8c, 0x84, 0x40, - 0x74, 0x81, 0xa6, 0xa0, 0xa2, 0xe3, 0x98, 0x2b, 0x1d, 0xbe, 0xaf, 0xec, 0xb5, 0x5c, 0xe5, 0xff, - 0x97, 0x17, 0xe8, 0x38, 0x1a, 0xba, 0x40, 0xc7, 0xc1, 0xe1, 0xd4, 0x29, 0xe6, 0x1d, 0x0e, 0xe5, - 0x4f, 0x85, 0x4e, 0x9d, 0x62, 0x68, 0xe0, 0xd4, 0x29, 0xee, 0x0d, 0x8f, 0x19, 0x94, 0x0f, 0x9e, - 0x08, 0xe6, 0xfc, 0xfe, 0xb4, 0xbc, 0x3e, 0x86, 0xf1, 0x74, 0x7d, 0x0c, 0xc3, 0x64, 0x3e, 0xbc, - 0x0b, 0xfe, 0x4c, 0x3f, 0x3e, 0xbe, 0xfc, 0x23, 0x65, 0xf0, 0x1d, 0x91, 0x0f, 0x1f, 0x29, 0xdf, - 0x95, 0xe8, 0xc7, 0xc8, 0x1f, 0x1e, 0x91, 0x42, 0x32, 0x23, 0xf6, 0x18, 0xb5, 0xf2, 0xb5, 0xbe, - 0x8c, 0x18, 0x81, 0xcc, 0x88, 0xc1, 0xf0, 0x7b, 0xe8, 0x6c, 0x00, 0x9b, 0x27, 0xed, 0x65, 0x7f, - 0x66, 0xfa, 0xb3, 0x09, 0xd9, 0x0c, 0x8e, 0x27, 0xa3, 0x66, 0x70, 0x3c, 0x26, 0x8e, 0x35, 0x17, - 0xdd, 0x9f, 0xdb, 0x81, 0xb5, 0x2f, 0xc1, 0x3e, 0x0c, 0xe2, 0x58, 0x73, 0x69, 0x7e, 0xf7, 0x0e, - 0xac, 0x7d, 0x99, 0xf6, 0x61, 0x80, 0x7f, 0x20, 0x81, 0x2e, 0xc7, 0xa3, 0x8a, 0xad, 0xd6, 0x8c, - 0x65, 0x07, 0x38, 0xe5, 0x7b, 0x12, 0xf2, 0x41, 0xc3, 0xee, 0x8a, 0xcd, 0x0e, 0x68, 0xbb, 0xac, - 0x00, 0x7f, 0x09, 0x8d, 0x16, 0x7b, 0x86, 0xe9, 0xc2, 0xc5, 0x1b, 0x35, 0x9c, 0xbf, 0x37, 0x11, - 0xda, 0xe2, 0x88, 0x58, 0xd8, 0xe2, 0x88, 0x00, 0xfc, 0x16, 0x9a, 0xa8, 0x93, 0x66, 0xcf, 0x36, - 0xdd, 0x0d, 0x0d, 0xde, 0x58, 0xa1, 0x3c, 0xbe, 0x2f, 0x21, 0x4f, 0x62, 0x11, 0x0a, 0x3a, 0x89, - 0x45, 0x80, 0xd3, 0x59, 0x34, 0x08, 0x53, 0x92, 0xfa, 0xe3, 0x09, 0x34, 0x52, 0x77, 0x6d, 0xa2, - 0xb7, 0xb9, 0x5f, 0xf2, 0x24, 0xca, 0xb1, 0xbb, 0xbd, 0x6a, 0x99, 0x87, 0x0f, 0xf8, 0xbf, 0xf1, - 0x65, 0x34, 0x36, 0xa7, 0x3b, 0x2e, 0x94, 0xac, 0x76, 0x0c, 0xf2, 0x08, 0xfc, 0xda, 0x52, 0x5a, - 0x08, 0x8a, 0xe7, 0x18, 0x1d, 0x2b, 0x07, 0x81, 0x18, 0xa9, 0x1d, 0xdd, 0x71, 0x73, 0x1f, 0x6f, - 0x16, 0x06, 0xc0, 0xfb, 0x36, 0x54, 0x56, 0xfd, 0x66, 0x02, 0x45, 0x6e, 0x1d, 0xf7, 0xef, 0x85, - 0xbb, 0x88, 0xc6, 0x43, 0xc1, 0x3f, 0xdc, 0x39, 0x6f, 0x97, 0xb1, 0x41, 0xe1, 0xd2, 0xf8, 0x39, - 0xdf, 0x29, 0xec, 0x9e, 0x36, 0xc7, 0x5d, 0xad, 0xb3, 0xf0, 0xf0, 0xa7, 0xdd, 0xd2, 0x04, 0x14, - 0x77, 0x2a, 0xfc, 0xcb, 0xe3, 0x41, 0x64, 0x03, 0xbe, 0xcc, 0x03, 0x9b, 0x12, 0x81, 0x83, 0x76, - 0x28, 0x05, 0x23, 0x0b, 0x64, 0xfa, 0x12, 0x1a, 0xa9, 0xb6, 0xbb, 0xc4, 0x76, 0xac, 0x0e, 0xbc, - 0xc9, 0x9f, 0x0c, 0xdc, 0x80, 0x4d, 0x01, 0x2e, 0xba, 0xa6, 0x8a, 0xf4, 0xf8, 0xaa, 0xf7, 0x8a, - 0x50, 0x0a, 0x62, 0x4a, 0x4e, 0xc5, 0xbc, 0x22, 0xe4, 0xbd, 0x05, 0x74, 0x15, 0x0d, 0xde, 0x73, - 0x74, 0x70, 0x1f, 0xf4, 0x49, 0x7b, 0x14, 0x20, 0x92, 0x02, 0x05, 0xbe, 0x86, 0x32, 0x60, 0x6e, - 0x39, 0xca, 0x20, 0xd0, 0x82, 0xdb, 0x78, 0x0b, 0x20, 0xa2, 0xbb, 0x2f, 0xa3, 0xc1, 0x77, 0x51, - 0x3e, 0xd8, 0x4b, 0xc2, 0xe3, 0x04, 0x5e, 0x56, 0x07, 0x48, 0x87, 0xb8, 0xe6, 0xe3, 0xd8, 0xab, - 0x06, 0x22, 0x8b, 0x48, 0x41, 0x3c, 0x8b, 0xc6, 0x03, 0x18, 0x15, 0x91, 0x97, 0x4d, 0x06, 0xd2, - 0x81, 0x0a, 0xbc, 0xa8, 0x38, 0x45, 0x56, 0xe1, 0x62, 0xb8, 0x8a, 0xb2, 0x9e, 0xcf, 0x78, 0x6e, - 0x47, 0x25, 0x3d, 0xc5, 0x7d, 0xc6, 0xb3, 0xa2, 0xb7, 0xb8, 0x57, 0x1e, 0xcf, 0xa0, 0x31, 0xcd, - 0xea, 0xb9, 0x64, 0xc9, 0xf2, 0x1e, 0x3c, 0x1e, 0x0a, 0x52, 0x94, 0xda, 0x14, 0xd3, 0x70, 0x2d, - 0x2f, 0x9b, 0xa4, 0x98, 0xd5, 0x50, 0x2e, 0x85, 0x17, 0xe2, 0xde, 0x4e, 0x16, 0x72, 0x3c, 0x0a, - 0x9f, 0x17, 0x65, 0x16, 0xf3, 0x58, 0xf2, 0xf7, 0x26, 0x50, 0x66, 0xc9, 0xd6, 0x4d, 0xd7, 0xe1, - 0x9e, 0x87, 0x67, 0xa6, 0xd6, 0x6d, 0xbd, 0x4b, 0xf5, 0x63, 0x0a, 0x82, 0x86, 0xe0, 0xad, 0x58, - 0x67, 0xfa, 0x3e, 0xfd, 0xba, 0x7f, 0xbf, 0x59, 0xf8, 0xe2, 0x1e, 0x5e, 0x77, 0xba, 0xee, 0x73, - 0x62, 0x35, 0x50, 0x15, 0x70, 0xe1, 0x2f, 0x51, 0x05, 0x18, 0x0e, 0x2f, 0x20, 0xc4, 0x3f, 0xb5, - 0xd8, 0xed, 0x72, 0x37, 0x46, 0xc1, 0x47, 0xcb, 0xc3, 0x30, 0xc5, 0xf6, 0x05, 0xa6, 0x77, 0xc5, - 0x27, 0x2e, 0x04, 0x0e, 0x54, 0x0b, 0x96, 0x78, 0x8b, 0x3c, 0x31, 0x8d, 0x06, 0x12, 0xf7, 0x1a, - 0x1b, 0x23, 0xa4, 0x70, 0x31, 0xbc, 0x8c, 0xc6, 0x39, 0x5f, 0x3f, 0xfe, 0x7f, 0x4c, 0x9e, 0x15, - 0x42, 0x68, 0xa6, 0xb4, 0x7e, 0x1b, 0x0d, 0x0e, 0x16, 0xeb, 0x08, 0x95, 0xc0, 0xd3, 0x41, 0x7a, - 0x32, 0x78, 0x4f, 0x43, 0x19, 0x07, 0x8d, 0x3d, 0xbf, 0xb5, 0x59, 0x50, 0xbc, 0xf2, 0xec, 0x19, - 0x8e, 0xb8, 0x64, 0x9b, 0x50, 0x44, 0xe4, 0xc1, 0xb4, 0x3e, 0x1f, 0xc3, 0x23, 0xac, 0xf3, 0x72, - 0x11, 0x5c, 0x42, 0xa3, 0xbe, 0x17, 0xc5, 0xbd, 0x7b, 0xd5, 0x32, 0xf8, 0x49, 0xf2, 0x87, 0x23, - 0x42, 0xa9, 0x05, 0x44, 0x26, 0x52, 0x19, 0x7c, 0x13, 0xe5, 0x98, 0x1f, 0x62, 0x95, 0x39, 0x4e, - 0x7a, 0xb1, 0x5d, 0x00, 0x6b, 0x98, 0x62, 0x8f, 0xf9, 0x84, 0xf8, 0x75, 0x34, 0x5c, 0xbc, 0x5f, - 0xa7, 0xf3, 0x4c, 0x51, 0x5b, 0x70, 0x94, 0x53, 0x41, 0x4e, 0x17, 0xc8, 0xb7, 0x6a, 0xb5, 0x48, - 0x43, 0xb7, 0xa5, 0xc9, 0x43, 0xa4, 0xc7, 0x15, 0x34, 0x26, 0x1d, 0xc4, 0x3a, 0xca, 0x69, 0xe0, - 0xc0, 0x9e, 0xbc, 0x60, 0x4f, 0x12, 0xf3, 0x57, 0x57, 0xa4, 0xa4, 0xb2, 0x72, 0x21, 0xaa, 0x35, - 0x65, 0xd3, 0x81, 0xfc, 0x18, 0x1a, 0x31, 0x1d, 0xa7, 0x47, 0xc0, 0xeb, 0x32, 0xc7, 0xb4, 0xc6, - 0xe0, 0xa8, 0x86, 0xcd, 0x70, 0x52, 0xca, 0x5f, 0xb9, 0x18, 0xfe, 0x10, 0x61, 0xc8, 0xa8, 0x41, - 0x0c, 0xcf, 0x2e, 0xaf, 0x96, 0x1d, 0xe5, 0x2c, 0x04, 0x4f, 0xe2, 0x70, 0x08, 0x73, 0xb5, 0x3c, - 0x7d, 0x99, 0x4f, 0x1f, 0x17, 0x75, 0x56, 0xaa, 0xe1, 0xbf, 0x78, 0x62, 0x1a, 0x62, 0x8b, 0x63, - 0xb8, 0xe2, 0x75, 0x74, 0xae, 0x66, 0x93, 0x87, 0xa6, 0xd5, 0x73, 0xbc, 0xe5, 0xc3, 0x9b, 0xb7, - 0xce, 0xed, 0x38, 0x6f, 0x3d, 0xc5, 0x2b, 0x3e, 0xd3, 0xb5, 0xc9, 0xc3, 0x86, 0x17, 0x32, 0x27, - 0xc5, 0xbc, 0xf4, 0xe3, 0x4e, 0xc5, 0x55, 0xfc, 0xa8, 0x67, 0x13, 0x0e, 0x37, 0x89, 0xa3, 0x28, - 0xc1, 0x54, 0xab, 0x53, 0x94, 0xc7, 0xd1, 0x94, 0x54, 0x37, 0x5c, 0x0c, 0x6b, 0x08, 0xdf, 0x29, - 0x79, 0x7b, 0xb4, 0x62, 0xb3, 0x69, 0xf5, 0x3a, 0xae, 0xa3, 0x3c, 0x01, 0xcc, 0x54, 0x2a, 0x96, - 0x95, 0xa6, 0x1f, 0x3e, 0xdb, 0xd0, 0x39, 0x5e, 0x14, 0x4b, 0xb4, 0x34, 0x9e, 0x43, 0xf9, 0x9a, - 0x6d, 0x3e, 0xd4, 0x5d, 0x72, 0x97, 0x6c, 0xd4, 0xac, 0x96, 0xd9, 0xdc, 0x00, 0xe7, 0x4f, 0x3e, - 0x55, 0x76, 0x19, 0xae, 0xb1, 0x46, 0x36, 0x1a, 0x5d, 0xc0, 0x8a, 0xcb, 0x4a, 0xb8, 0xa4, 0xfa, - 0xc3, 0x29, 0x71, 0x86, 0xf2, 0x5f, 0xb1, 0x4d, 0xc4, 0xbe, 0x62, 0x7b, 0x0d, 0x0d, 0xf1, 0xd5, - 0xdd, 0x4f, 0xcf, 0x01, 0xb9, 0xcc, 0xbc, 0x48, 0x52, 0xd3, 0xd0, 0x02, 0x02, 0xc8, 0x23, 0x15, - 0x3c, 0x46, 0x90, 0x12, 0xf2, 0x48, 0x05, 0x8f, 0x11, 0x48, 0x4f, 0x11, 0xdc, 0x40, 0xc3, 0x7c, - 0x76, 0x12, 0x82, 0xbe, 0x20, 0x1a, 0xd4, 0xcb, 0x47, 0xcc, 0x82, 0x4d, 0x05, 0x22, 0xfc, 0x2a, - 0x64, 0xe4, 0xe6, 0x03, 0x86, 0xdb, 0x22, 0x30, 0x99, 0x8a, 0xe3, 0x2b, 0x94, 0x92, 0x9b, 0x53, - 0xd3, 0xa9, 0x45, 0xec, 0x30, 0x2f, 0x73, 0x1e, 0x4c, 0x2d, 0x52, 0x2f, 0x6f, 0x48, 0xcf, 0xc9, - 0x88, 0x45, 0xf0, 0x22, 0x9a, 0x88, 0xf4, 0x11, 0x0f, 0x11, 0x83, 0x3c, 0x8a, 0x31, 0x1d, 0x2c, - 0x2e, 0x5d, 0x91, 0xb2, 0xea, 0xbf, 0x4b, 0x44, 0x26, 0x66, 0x2a, 0x18, 0x4e, 0x25, 0x74, 0x0e, - 0x08, 0xc6, 0x63, 0xcd, 0x04, 0x23, 0x10, 0xe1, 0x2b, 0x28, 0x17, 0x4a, 0xca, 0x0d, 0xc1, 0xa3, - 0x7e, 0x46, 0x6e, 0x1f, 0x8b, 0x6f, 0xa0, 0x1c, 0x9d, 0x26, 0x3b, 0xa1, 0x80, 0xc8, 0x1e, 0x87, - 0x89, 0xf3, 0x9a, 0x47, 0x47, 0xcb, 0x48, 0x69, 0x63, 0xbc, 0xdc, 0xc9, 0xd1, 0x45, 0x21, 0x48, - 0x13, 0xf3, 0xbf, 0xd2, 0xdb, 0x5e, 0x50, 0x1d, 0x4a, 0xbc, 0xfc, 0x2b, 0xd4, 0xd0, 0xa6, 0xb5, - 0x17, 0x9d, 0x88, 0xb9, 0xc8, 0xce, 0xdf, 0x1b, 0x3a, 0xd3, 0x23, 0x47, 0x93, 0x29, 0xc5, 0x67, - 0x9d, 0x20, 0xba, 0x2d, 0x1d, 0xf3, 0xac, 0x53, 0x38, 0x17, 0xb4, 0x58, 0x00, 0x7f, 0x1e, 0x0d, - 0x05, 0x0f, 0x54, 0x0d, 0x0a, 0x11, 0x8e, 0x31, 0xef, 0x52, 0x05, 0x94, 0xf8, 0x2b, 0x28, 0x23, - 0x25, 0x23, 0xbf, 0xbe, 0x8b, 0x1b, 0xbd, 0x29, 0x31, 0x5e, 0x9d, 0x19, 0xad, 0xe1, 0x44, 0xe4, - 0x9c, 0x29, 0x5e, 0x42, 0xa7, 0x6a, 0x36, 0x31, 0xe0, 0xee, 0xb8, 0xf2, 0xa8, 0x6b, 0xf3, 0x6c, - 0x02, 0x4c, 0xa5, 0x61, 0xce, 0xea, 0x7a, 0x68, 0x3a, 0x9b, 0x72, 0xbc, 0xc0, 0x28, 0xae, 0x38, - 0x5d, 0xc8, 0x58, 0x4b, 0xee, 0x92, 0x8d, 0x75, 0xcb, 0x36, 0x58, 0xc0, 0x3d, 0x5f, 0xc8, 0xb8, - 0xa0, 0xd7, 0x38, 0x4a, 0x5c, 0xc8, 0xe4, 0x42, 0x93, 0xaf, 0xa0, 0xe1, 0xfd, 0xc6, 0x7c, 0xff, - 0x5c, 0xb2, 0x8f, 0xab, 0xc7, 0xf1, 0xcd, 0x52, 0xe7, 0x67, 0x0c, 0x1d, 0xec, 0x93, 0x31, 0xf4, - 0x0f, 0x93, 0x7d, 0xfc, 0x58, 0x8e, 0x75, 0x66, 0x3f, 0x5f, 0x18, 0x72, 0x66, 0xbf, 0x20, 0xa9, - 0xa2, 0x69, 0x68, 0x22, 0x51, 0x28, 0x07, 0x68, 0x66, 0xc7, 0x1c, 0xa0, 0x3f, 0x99, 0xda, 0xce, - 0xcf, 0xe7, 0x44, 0xf6, 0x7b, 0x91, 0xfd, 0x0d, 0x34, 0xec, 0x4b, 0x96, 0xbf, 0xe8, 0x32, 0xea, - 0x67, 0x98, 0x60, 0x60, 0x28, 0x23, 0x10, 0xe1, 0xab, 0xac, 0xad, 0x75, 0xf3, 0x23, 0x16, 0xed, - 0x3d, 0xca, 0x23, 0x82, 0x75, 0x57, 0x6f, 0x38, 0xe6, 0x47, 0x44, 0xf3, 0xd1, 0xea, 0x3f, 0x4d, - 0xc6, 0x3a, 0x4b, 0x9d, 0xf4, 0xd1, 0x1e, 0xfa, 0x28, 0x46, 0x88, 0xcc, 0xcd, 0xeb, 0x44, 0x88, - 0x7b, 0x10, 0xe2, 0x1f, 0x24, 0x63, 0x9d, 0xe2, 0x4e, 0x84, 0xb8, 0x97, 0xd9, 0xe2, 0x1a, 0x1a, - 0xd2, 0xac, 0x75, 0xa7, 0x04, 0x56, 0x3c, 0x9b, 0x2b, 0x60, 0xa2, 0xb6, 0xad, 0x75, 0xa7, 0x01, - 0xf6, 0xb9, 0x16, 0x10, 0xa8, 0xdf, 0x4e, 0x6e, 0xe3, 0x36, 0x78, 0x22, 0xf8, 0x4f, 0x72, 0x89, - 0xfc, 0x85, 0xa4, 0xe4, 0x96, 0x78, 0xac, 0x53, 0x64, 0xd7, 0x9b, 0xab, 0xa4, 0xad, 0x87, 0x53, - 0x64, 0x3b, 0x00, 0xe5, 0x19, 0x36, 0x03, 0x12, 0xf5, 0x17, 0x93, 0x21, 0xbf, 0xcc, 0x13, 0xd9, - 0xed, 0x5a, 0x76, 0xbe, 0xd6, 0x71, 0x57, 0xd3, 0x13, 0xc9, 0xed, 0x56, 0x72, 0xdf, 0x9f, 0x0c, - 0x79, 0xe5, 0x1e, 0xdf, 0x6c, 0xb9, 0xbf, 0x98, 0x8c, 0x7a, 0x18, 0x1f, 0x5f, 0x4d, 0xba, 0x86, - 0x86, 0xb8, 0x1c, 0xfc, 0xa5, 0x82, 0xcd, 0xfb, 0x0c, 0x08, 0x47, 0x8a, 0x3e, 0x81, 0xfa, 0x3d, - 0x49, 0x24, 0x7b, 0x4b, 0x1f, 0x53, 0x1d, 0xfa, 0x85, 0xa4, 0xec, 0x27, 0x7e, 0x7c, 0xf5, 0x67, - 0x0a, 0xa1, 0x7a, 0x6f, 0xb9, 0xc9, 0xd3, 0x8c, 0x0c, 0x0a, 0x67, 0xd2, 0x3e, 0x54, 0x13, 0x28, - 0xd4, 0xff, 0x9d, 0x8c, 0x75, 0x5e, 0x3f, 0xbe, 0x02, 0xbc, 0x09, 0xe7, 0xc4, 0xcd, 0x4e, 0x30, - 0x91, 0xc3, 0x21, 0x24, 0x1d, 0x7f, 0x91, 0x34, 0x6b, 0x1e, 0x21, 0xfe, 0x42, 0x8c, 0xb9, 0x06, - 0x19, 0xd1, 0x62, 0x5f, 0x0b, 0x12, 0x0d, 0xb7, 0x7f, 0x99, 0xdc, 0xc9, 0xd7, 0xff, 0x38, 0xaf, - 0xaa, 0xd9, 0x9a, 0xbe, 0x01, 0x31, 0xe9, 0xb4, 0x27, 0x46, 0x58, 0x3a, 0xb1, 0x2e, 0x03, 0x89, - 0x79, 0x09, 0x39, 0x95, 0xfa, 0xfb, 0x83, 0xf1, 0x8e, 0xe6, 0xc7, 0x57, 0x84, 0xde, 0x6b, 0xb6, - 0x83, 0x3b, 0xbe, 0x66, 0x9b, 0xd9, 0xed, 0x6b, 0xb6, 0xd9, 0xbe, 0xaf, 0xd9, 0x9e, 0x47, 0xe9, - 0x69, 0xcb, 0xd8, 0x00, 0x2f, 0x8a, 0x11, 0x56, 0xd9, 0xb2, 0x65, 0x6c, 0x68, 0x00, 0xc5, 0x3f, - 0x90, 0x40, 0xd9, 0x59, 0xa2, 0x1b, 0x74, 0x84, 0x0c, 0x6d, 0xe7, 0x84, 0xf0, 0xee, 0xe3, 0x71, - 0x42, 0x98, 0x58, 0x65, 0x95, 0x89, 0x8a, 0xc2, 0xeb, 0xc7, 0x77, 0x50, 0xae, 0xa4, 0xbb, 0x64, - 0xc5, 0xb2, 0x37, 0xc0, 0xad, 0x62, 0x2c, 0x08, 0x41, 0x94, 0xf4, 0xc7, 0x23, 0x62, 0x77, 0x45, - 0x4d, 0xfe, 0x4b, 0xf3, 0x0b, 0x53, 0xb1, 0xf0, 0xf4, 0xd9, 0xc3, 0x81, 0x58, 0xe4, 0x3c, 0xd9, - 0xc1, 0xb1, 0xf2, 0x48, 0xfc, 0xb1, 0x72, 0xe8, 0x8d, 0xe2, 0xd1, 0x1d, 0xdf, 0x28, 0x56, 0xbf, - 0x35, 0x88, 0x62, 0xdd, 0x52, 0x4f, 0x94, 0xfc, 0x44, 0xc9, 0x03, 0x25, 0x2f, 0x47, 0x94, 0x7c, - 0x32, 0xea, 0xe8, 0xfc, 0x29, 0xd5, 0xf0, 0x1f, 0x4b, 0x47, 0xc2, 0x24, 0x8e, 0xf7, 0xee, 0x32, - 0x90, 0xde, 0xe0, 0xee, 0xdf, 0x30, 0xcf, 0xec, 0x38, 0x20, 0xb2, 0xbb, 0x1d, 0x10, 0xb9, 0xbe, - 0x03, 0x22, 0x50, 0x90, 0xa1, 0xbe, 0x0a, 0x52, 0xe5, 0x83, 0x06, 0x6d, 0x9f, 0xf2, 0xf5, 0xfc, - 0xd6, 0x66, 0x61, 0x8c, 0x8e, 0xa6, 0xd8, 0x64, 0xaf, 0xc0, 0x42, 0xfd, 0x66, 0x7a, 0x9b, 0xd8, - 0xa6, 0x43, 0xd1, 0x11, 0xfe, 0x88, 0x7b, 0x6a, 0x3f, 0x8f, 0xb8, 0xa7, 0xf7, 0xf1, 0x88, 0x7b, - 0xcc, 0xc3, 0xfc, 0x83, 0x7b, 0x78, 0x98, 0x5f, 0xd6, 0xa6, 0xcc, 0xee, 0xb5, 0x29, 0xbb, 0xa3, - 0x36, 0xe5, 0x76, 0xab, 0x4d, 0x43, 0xbb, 0xd0, 0x26, 0xb4, 0xa3, 0x36, 0x0d, 0x1f, 0x5c, 0x9b, - 0xba, 0x68, 0x32, 0x1a, 0x8f, 0xea, 0x6b, 0x84, 0x86, 0x70, 0x14, 0xcb, 0xdd, 0x4d, 0xe0, 0xea, - 0xbf, 0xc7, 0xb0, 0x0d, 0x96, 0x58, 0x3f, 0x9c, 0x96, 0x5e, 0x8b, 0x29, 0xad, 0xfe, 0x5c, 0xb2, - 0x7f, 0x18, 0xed, 0xd1, 0x9c, 0xe2, 0xbe, 0x33, 0x56, 0x4a, 0x69, 0x39, 0x30, 0xaf, 0xbf, 0x94, - 0x43, 0x6c, 0xe3, 0x64, 0xf6, 0xf5, 0x44, 0xbf, 0xd8, 0xde, 0x03, 0x49, 0xec, 0xd9, 0xa8, 0xfb, - 0x16, 0xb8, 0x6d, 0x3b, 0xb2, 0xdf, 0x56, 0x38, 0xcb, 0x7b, 0x6a, 0x9f, 0x59, 0xde, 0xff, 0x49, - 0x02, 0x9d, 0xba, 0xdb, 0x5b, 0x26, 0xdc, 0x5d, 0xcb, 0x6f, 0xc6, 0x87, 0x08, 0x51, 0x30, 0x77, - 0x62, 0x49, 0x80, 0x13, 0xcb, 0x0b, 0x62, 0x5c, 0x6e, 0xa8, 0xc0, 0x54, 0x40, 0xcd, 0x1c, 0x58, - 0x2e, 0x78, 0xbe, 0x7d, 0x6b, 0xbd, 0x65, 0x12, 0x7d, 0x52, 0x5f, 0xe0, 0x3e, 0xf9, 0x3a, 0xf3, - 0x9a, 0xde, 0xaf, 0xd3, 0xc8, 0xcf, 0x24, 0xfb, 0x86, 0x42, 0x1f, 0xd9, 0x47, 0xc2, 0xbf, 0x1c, - 0xdb, 0x2b, 0x5c, 0x7f, 0x9f, 0xdc, 0xa6, 0x1f, 0x42, 0x1c, 0xe3, 0xb8, 0xc4, 0x0b, 0xec, 0x88, - 0xbf, 0xaa, 0xfe, 0x89, 0x0a, 0xec, 0x37, 0x13, 0x7d, 0x43, 0xd6, 0x8f, 0xec, 0xbb, 0xeb, 0xdf, - 0x48, 0x7a, 0x91, 0xf2, 0x07, 0xfa, 0x84, 0x6b, 0x68, 0x88, 0xa7, 0x03, 0x96, 0xbd, 0x4d, 0xf9, - 0x51, 0x1e, 0x1c, 0x0d, 0xfb, 0x04, 0x74, 0x99, 0xf7, 0x22, 0x79, 0xfd, 0x17, 0x06, 0x60, 0x99, - 0x37, 0x39, 0x94, 0xd2, 0x0b, 0x24, 0x74, 0x21, 0xaf, 0x3c, 0x32, 0x5d, 0xb0, 0x0a, 0x68, 0x5f, - 0xa6, 0xd8, 0x42, 0x4e, 0x1e, 0x99, 0x2e, 0xb3, 0x09, 0x7c, 0x34, 0x5d, 0xa4, 0x85, 0xb7, 0x23, - 0xf9, 0x22, 0xed, 0xf0, 0xbc, 0xe4, 0x3c, 0x8a, 0xe8, 0x1a, 0x1a, 0xe2, 0x2e, 0x9c, 0xdc, 0xcd, - 0x84, 0xb7, 0x96, 0x3b, 0x7d, 0x42, 0x6b, 0x7d, 0x02, 0xca, 0x51, 0x23, 0x2b, 0x81, 0x63, 0x1d, - 0x70, 0xb4, 0x01, 0xa2, 0x71, 0x8c, 0xba, 0x95, 0x8c, 0x06, 0xec, 0x1f, 0xdf, 0x4d, 0xc1, 0x55, - 0xd9, 0x59, 0x0d, 0x3c, 0x34, 0xc1, 0xe0, 0x12, 0xa3, 0x74, 0x98, 0xdd, 0x75, 0x03, 0xe5, 0xee, - 0x92, 0x0d, 0xe6, 0x57, 0x99, 0x09, 0x9c, 0x53, 0xd7, 0x38, 0x4c, 0x3c, 0xd1, 0xf4, 0xe8, 0xd4, - 0x5f, 0x4e, 0x46, 0x53, 0x11, 0x1c, 0x5f, 0x61, 0x7f, 0x0e, 0x65, 0x41, 0x94, 0x55, 0xef, 0x48, - 0x1d, 0x04, 0xc8, 0x1e, 0x84, 0x97, 0x62, 0x24, 0x3c, 0x32, 0xf5, 0x27, 0x32, 0xe1, 0xfc, 0x14, - 0xc7, 0x57, 0x7a, 0x5f, 0x44, 0xc3, 0x25, 0xab, 0xe3, 0x98, 0x8e, 0x4b, 0x3a, 0x4d, 0x4f, 0x61, - 0x9f, 0xa0, 0x06, 0x4b, 0x33, 0x00, 0x8b, 0x21, 0x1f, 0x02, 0xf5, 0x7e, 0x94, 0x17, 0xbf, 0x8c, - 0x86, 0x40, 0xe4, 0xe0, 0x87, 0x2c, 0xbc, 0x4f, 0xb2, 0x4c, 0x81, 0x61, 0x27, 0xe4, 0x80, 0x14, - 0xdf, 0x43, 0xb9, 0xd2, 0xaa, 0xd9, 0x32, 0x6c, 0xd2, 0xe1, 0x0f, 0x60, 0x3d, 0x15, 0x9f, 0x4d, - 0x64, 0x0a, 0xfe, 0x05, 0x5a, 0xd6, 0x9c, 0x26, 0x2f, 0x26, 0x05, 0xbd, 0x70, 0xd8, 0xe4, 0x5f, - 0x4c, 0x22, 0x14, 0x14, 0xc0, 0x97, 0x50, 0xd2, 0x8b, 0xac, 0x64, 0x6e, 0x20, 0x92, 0x06, 0x25, - 0x61, 0x2a, 0xe6, 0x63, 0x3b, 0xb9, 0xe3, 0xd8, 0xbe, 0x87, 0x32, 0xec, 0x44, 0x09, 0x3c, 0xb5, - 0x85, 0x90, 0xf9, 0xbe, 0x0d, 0x9e, 0x02, 0x7a, 0xb6, 0x59, 0x04, 0xcb, 0x4e, 0xf2, 0x7a, 0x66, - 0xcc, 0x26, 0x9b, 0x68, 0x10, 0xfe, 0xc2, 0x97, 0x51, 0x1a, 0xa4, 0x98, 0x80, 0x7d, 0x22, 0xc4, - 0x27, 0x86, 0xe4, 0x07, 0x78, 0xda, 0x4d, 0x25, 0xab, 0xe3, 0xd2, 0xaa, 0xa1, 0xd5, 0x23, 0x5c, - 0x2e, 0x1c, 0x26, 0xc9, 0x85, 0xc3, 0xd4, 0x7f, 0x91, 0x8c, 0xc9, 0x9c, 0x72, 0x7c, 0x87, 0xc9, - 0x2b, 0x08, 0x41, 0x04, 0x2d, 0x95, 0xa7, 0x17, 0x50, 0x09, 0xa3, 0x04, 0x18, 0x81, 0xda, 0x4a, - 0x66, 0x7d, 0x40, 0xac, 0xfe, 0x6a, 0x22, 0x92, 0x6e, 0xe3, 0xc8, 0xbe, 0xc7, 0x28, 0x7d, 0xcb, - 0x11, 0x7f, 0x5b, 0xf2, 0x5b, 0xc9, 0xb8, 0xe4, 0x23, 0x47, 0x53, 0xc5, 0x83, 0x47, 0xae, 0xd2, - 0x7b, 0x78, 0xe4, 0xea, 0x03, 0x34, 0x1e, 0x4a, 0xc9, 0xc1, 0x5f, 0x13, 0xb9, 0xbc, 0x7d, 0x6e, - 0x8f, 0xfe, 0xb1, 0xd7, 0x12, 0x99, 0xfa, 0x7f, 0x12, 0xdb, 0x27, 0x64, 0x39, 0x74, 0xd5, 0x89, - 0x11, 0x40, 0xea, 0x4f, 0x46, 0x00, 0x8f, 0x61, 0x9b, 0x79, 0xb4, 0x05, 0xf0, 0x29, 0x99, 0x3c, - 0x3e, 0x69, 0x01, 0xfc, 0x44, 0x62, 0xc7, 0x7c, 0x3a, 0x87, 0x2d, 0x03, 0xf5, 0x3f, 0x24, 0x62, - 0xf3, 0xde, 0x1c, 0xa8, 0x5d, 0xaf, 0xa1, 0x0c, 0x73, 0x5b, 0xe1, 0xad, 0x12, 0x32, 0x05, 0x53, - 0x68, 0xbf, 0x47, 0xb6, 0x19, 0x16, 0xcf, 0xa1, 0x2c, 0x6b, 0x83, 0xc1, 0x7b, 0xe3, 0x99, 0x6d, - 0x92, 0xef, 0x18, 0xfd, 0x26, 0x47, 0x8e, 0x56, 0x7f, 0x25, 0x11, 0x49, 0xc3, 0x73, 0x88, 0xdf, - 0xb6, 0xbf, 0xc7, 0x7b, 0x7f, 0x27, 0x19, 0x9f, 0x05, 0xe8, 0x10, 0x3f, 0xe4, 0x71, 0x1c, 0x57, - 0xed, 0x6f, 0xdd, 0x5a, 0x42, 0x63, 0xb2, 0x2c, 0xf8, 0xb2, 0x75, 0x31, 0x3e, 0x17, 0x52, 0x9f, - 0x56, 0x84, 0x78, 0xa8, 0x1f, 0x27, 0xa2, 0x09, 0x8c, 0x0e, 0x7d, 0x7e, 0xda, 0x9f, 0xb6, 0xc8, - 0x9f, 0xf2, 0x29, 0x59, 0x6b, 0x1e, 0xc7, 0xa7, 0x7c, 0x4a, 0x56, 0x8d, 0xfd, 0x7d, 0xca, 0x4f, - 0x25, 0xfb, 0xe5, 0x7f, 0x3a, 0xf4, 0x0f, 0x7a, 0x5f, 0x14, 0x32, 0x6b, 0x19, 0xff, 0xb4, 0x4b, - 0xfd, 0x12, 0x2e, 0xf5, 0xe1, 0x19, 0xe1, 0xb3, 0xbf, 0x31, 0x1e, 0x2b, 0xac, 0x4f, 0x89, 0x22, - 0x1f, 0x0d, 0x61, 0x7d, 0x4a, 0x86, 0xca, 0xa7, 0x4f, 0x58, 0xff, 0x30, 0xb9, 0xdb, 0xa4, 0x63, - 0x27, 0xc2, 0x8b, 0x08, 0xef, 0x47, 0x92, 0xd1, 0x64, 0x78, 0x87, 0x2e, 0xa6, 0x19, 0x94, 0xe1, - 0x69, 0xf9, 0xfa, 0x0a, 0x87, 0xe1, 0xfb, 0x59, 0x34, 0xfc, 0x3b, 0x82, 0xb7, 0x4c, 0xd3, 0xbb, - 0x7f, 0xcb, 0x54, 0xfd, 0x76, 0x22, 0x94, 0x39, 0xee, 0x50, 0x8e, 0x10, 0xf6, 0xb5, 0x24, 0xe1, - 0xd7, 0xbd, 0xc3, 0xcc, 0x74, 0xe8, 0x51, 0x2e, 0xff, 0x7b, 0xca, 0xc4, 0xd5, 0xcd, 0x56, 0xb8, - 0x3c, 0x8f, 0xb9, 0xff, 0xe5, 0x24, 0x9a, 0x88, 0x90, 0xe2, 0xcb, 0x52, 0x5e, 0x16, 0x38, 0x96, - 0x0c, 0x39, 0x67, 0xb3, 0x0c, 0x2d, 0x7b, 0x38, 0x49, 0xbd, 0x8c, 0xd2, 0x65, 0x7d, 0x83, 0x7d, - 0xdb, 0x20, 0x63, 0x69, 0xe8, 0x1b, 0xe2, 0x89, 0x1b, 0xe0, 0xf1, 0x32, 0x3a, 0xc3, 0xee, 0x43, - 0x4c, 0xab, 0xb3, 0x64, 0xb6, 0x49, 0xb5, 0x33, 0x6f, 0xb6, 0x5a, 0xa6, 0xc3, 0x2f, 0xcd, 0xae, - 0x6d, 0x6d, 0x16, 0xae, 0xb8, 0x96, 0xab, 0xb7, 0x1a, 0xc4, 0x23, 0x6b, 0xb8, 0x66, 0x9b, 0x34, - 0xcc, 0x4e, 0xa3, 0x0d, 0x94, 0x02, 0xcb, 0x78, 0x56, 0xb8, 0xca, 0x5e, 0x0d, 0xab, 0x37, 0xf5, - 0x4e, 0x87, 0x18, 0xd5, 0xce, 0xf4, 0x86, 0x4b, 0xd8, 0x65, 0x5b, 0x8a, 0x1d, 0x09, 0xb2, 0xd8, - 0x6b, 0x86, 0xa6, 0x8c, 0x97, 0x29, 0x81, 0x16, 0x53, 0x48, 0xfd, 0xa5, 0x74, 0x4c, 0xd2, 0xc0, - 0x23, 0xa4, 0x3e, 0x5e, 0x4f, 0xa7, 0x77, 0xe8, 0xe9, 0xeb, 0x28, 0xfb, 0x0e, 0xb1, 0xe1, 0x7c, - 0x6b, 0x30, 0x78, 0x4e, 0xfd, 0x21, 0x03, 0x89, 0x37, 0x34, 0x9c, 0x0a, 0xb7, 0xd0, 0xe4, 0x12, - 0xed, 0xa6, 0xf8, 0xce, 0xcc, 0xec, 0xa3, 0x33, 0xb7, 0xe1, 0x87, 0xdf, 0x43, 0xe7, 0x00, 0x1b, - 0xd3, 0xad, 0x59, 0xa8, 0x0a, 0xb2, 0x89, 0xb1, 0xaa, 0xe2, 0x3b, 0xb7, 0x5f, 0x79, 0xfc, 0x3e, - 0x1a, 0xf1, 0x07, 0x88, 0x49, 0x1c, 0x7e, 0x73, 0xb1, 0xcd, 0x38, 0x63, 0xf9, 0xb6, 0x28, 0x18, - 0x5c, 0xb4, 0xe4, 0x9c, 0x4d, 0x12, 0xaf, 0xe7, 0x9f, 0x43, 0xc3, 0x70, 0xcc, 0x5c, 0x84, 0x97, - 0x7f, 0xf0, 0x08, 0xca, 0x2d, 0x4e, 0xd7, 0x2b, 0xda, 0x3b, 0x95, 0x72, 0x7e, 0x00, 0x23, 0x94, - 0x29, 0x57, 0x16, 0xaa, 0x95, 0x72, 0x3e, 0xf1, 0xfc, 0xff, 0x4c, 0x20, 0x54, 0x9f, 0x59, 0xaa, - 0x71, 0xc2, 0x61, 0x94, 0xad, 0x2e, 0xbc, 0x53, 0x9c, 0xab, 0x52, 0xba, 0x1c, 0x4a, 0x2f, 0xd6, - 0x2a, 0x0b, 0xf9, 0x04, 0x1e, 0x42, 0x83, 0xa5, 0xb9, 0xc5, 0x7a, 0x25, 0x9f, 0xa4, 0x40, 0xad, - 0x52, 0x2c, 0xe7, 0x53, 0x14, 0x78, 0x5f, 0xab, 0x2e, 0x55, 0xf2, 0x69, 0xfa, 0xe7, 0x5c, 0x7d, - 0xa9, 0xb8, 0x94, 0x1f, 0xa4, 0x7f, 0xce, 0xc0, 0x9f, 0x19, 0xca, 0xac, 0x5e, 0x59, 0x82, 0x1f, - 0x59, 0xda, 0x84, 0x19, 0xef, 0x57, 0x8e, 0xa2, 0x28, 0xeb, 0x72, 0x55, 0xcb, 0x0f, 0xd1, 0x1f, - 0x94, 0x25, 0xfd, 0x81, 0x68, 0xe3, 0xb4, 0xca, 0xfc, 0xe2, 0x3b, 0x95, 0xfc, 0x30, 0xe5, 0x35, - 0x7f, 0x97, 0x82, 0x47, 0xe8, 0x9f, 0xda, 0x3c, 0xfd, 0x73, 0x94, 0x72, 0xd2, 0x2a, 0xc5, 0xb9, - 0x5a, 0x71, 0x69, 0x36, 0x3f, 0x46, 0xdb, 0x03, 0x3c, 0xc7, 0x59, 0xc9, 0x85, 0xe2, 0x7c, 0x25, - 0x9f, 0xe7, 0x34, 0xe5, 0xb9, 0xea, 0xc2, 0xdd, 0xfc, 0x04, 0x34, 0xe4, 0xbd, 0x79, 0xf8, 0x81, - 0x69, 0x01, 0xf8, 0xeb, 0xd4, 0xf3, 0xdf, 0x81, 0x32, 0xec, 0xbd, 0x73, 0x7c, 0x0e, 0x9d, 0x5a, - 0xac, 0x37, 0x96, 0xde, 0xab, 0x55, 0x1a, 0xf7, 0x16, 0xea, 0xb5, 0x4a, 0xa9, 0x3a, 0x53, 0x05, - 0x51, 0x4d, 0xa0, 0x51, 0x0f, 0x31, 0x57, 0x5d, 0xb8, 0xf7, 0x6e, 0x3e, 0x21, 0x82, 0xe6, 0x8b, - 0xa5, 0xc5, 0x7a, 0x3e, 0x89, 0x4f, 0xa1, 0x71, 0x0f, 0x74, 0xbf, 0xba, 0x50, 0x5e, 0xbc, 0x5f, - 0xcf, 0xa7, 0x9e, 0x7f, 0xe8, 0x65, 0x1b, 0x66, 0x8f, 0x8c, 0xe3, 0x0b, 0xe8, 0x89, 0x72, 0xe5, - 0x9d, 0x6a, 0xa9, 0xd2, 0x58, 0xd4, 0xaa, 0x77, 0xaa, 0x0b, 0xa1, 0x9a, 0xce, 0xa0, 0x09, 0x19, - 0x5d, 0xac, 0x55, 0xf3, 0x09, 0x7c, 0x16, 0x61, 0x19, 0xfc, 0x56, 0x71, 0x7e, 0x26, 0x9f, 0xc4, - 0x0a, 0x3a, 0x2d, 0xc3, 0xab, 0x0b, 0x4b, 0xf7, 0x16, 0x2a, 0xf9, 0xd4, 0xf3, 0x7f, 0x23, 0x81, - 0xce, 0xc4, 0x3a, 0xc3, 0x63, 0x15, 0x5d, 0xac, 0xcc, 0x15, 0xeb, 0x4b, 0xd5, 0x52, 0xbd, 0x52, - 0xd4, 0x4a, 0xb3, 0x8d, 0x52, 0x71, 0xa9, 0x72, 0x67, 0x51, 0x7b, 0xaf, 0x71, 0xa7, 0xb2, 0x50, - 0xd1, 0x8a, 0x73, 0xf9, 0x01, 0xfc, 0x34, 0x2a, 0xf4, 0xa1, 0xa9, 0x57, 0x4a, 0xf7, 0xb4, 0xea, - 0xd2, 0x7b, 0xf9, 0x04, 0x7e, 0x0a, 0x5d, 0xe8, 0x4b, 0x44, 0x7f, 0xe7, 0x93, 0xf8, 0x22, 0x9a, - 0xec, 0x47, 0xf2, 0xf6, 0x5c, 0x3e, 0xf5, 0xfc, 0x5f, 0x4a, 0x20, 0x1c, 0xf5, 0x66, 0xc6, 0x97, - 0xd0, 0x79, 0xaa, 0x17, 0x8d, 0xfe, 0x0d, 0x7c, 0x0a, 0x5d, 0x88, 0xa5, 0x10, 0x9a, 0x57, 0x40, - 0x4f, 0xf6, 0x21, 0xe1, 0x8d, 0x3b, 0x8f, 0x94, 0x78, 0x02, 0xda, 0xb4, 0xe9, 0xf2, 0xc7, 0xbf, - 0x7b, 0x71, 0xe0, 0xe3, 0xdf, 0xbb, 0x98, 0xf8, 0x8d, 0xdf, 0xbb, 0x98, 0xf8, 0x9d, 0xdf, 0xbb, - 0x98, 0x78, 0xff, 0xc6, 0x5e, 0x9c, 0xbd, 0xd9, 0xf0, 0x5d, 0xce, 0x80, 0x5b, 0xe3, 0xcd, 0xff, - 0x17, 0x00, 0x00, 0xff, 0xff, 0xc5, 0xb2, 0xad, 0x5a, 0xe9, 0x13, 0x01, 0x00, + 0xf1, 0xab, 0x08, 0x15, 0xef, 0xd7, 0x35, 0xab, 0x45, 0x8a, 0xda, 0x12, 0x57, 0x06, 0x28, 0xad, + 0x6f, 0x3a, 0x0d, 0xdb, 0x6a, 0x91, 0x86, 0x6e, 0x8b, 0xd5, 0x0a, 0xd4, 0xb8, 0x82, 0x26, 0x8a, + 0xcd, 0x26, 0x71, 0x1c, 0x8d, 0x7c, 0xa5, 0x47, 0x1c, 0xd7, 0x51, 0x86, 0x9f, 0x4a, 0x5d, 0x1d, + 0x99, 0xbd, 0xb4, 0xb3, 0x5d, 0x78, 0x42, 0x07, 0x4c, 0xc3, 0xe6, 0x28, 0x81, 0x45, 0xa8, 0x10, + 0x9e, 0x45, 0xe3, 0xc5, 0xf7, 0x7b, 0x36, 0xa9, 0x1a, 0xa4, 0xe3, 0x9a, 0xee, 0x16, 0xd7, 0x90, + 0x8b, 0x3b, 0xdb, 0x05, 0x45, 0xa7, 0x88, 0x86, 0xc9, 0x31, 0x02, 0x13, 0xb9, 0x08, 0x5e, 0x46, + 0x53, 0xb7, 0x4b, 0xb5, 0x3a, 0xb1, 0x1f, 0x9a, 0x4d, 0x52, 0x6c, 0x36, 0xad, 0x5e, 0xc7, 0x55, + 0xb2, 0xc0, 0xe7, 0xe9, 0x9d, 0xed, 0xc2, 0xa5, 0xb5, 0x66, 0xb7, 0xe1, 0x30, 0x6c, 0x43, 0x67, + 0x68, 0x81, 0x59, 0xb4, 0x2c, 0xfe, 0x22, 0x1a, 0x5f, 0xb1, 0xa9, 0x16, 0x1a, 0x65, 0x42, 0xe1, + 0x4a, 0x0e, 0xf4, 0xff, 0xfc, 0x0c, 0x9f, 0x80, 0x18, 0xd4, 0xeb, 0x59, 0xd6, 0x58, 0x97, 0x15, + 0x68, 0x18, 0x80, 0x13, 0x1b, 0x2b, 0xb1, 0xc2, 0x04, 0x29, 0xf4, 0xe3, 0x4d, 0x9b, 0x18, 0x11, + 0x6d, 0x1b, 0x81, 0x36, 0x5f, 0xdb, 0xd9, 0x2e, 0x7c, 0xd2, 0xe6, 0x34, 0x8d, 0x81, 0x6a, 0xd7, + 0x97, 0x95, 0xfa, 0xf7, 0xd2, 0x68, 0x82, 0x7e, 0x95, 0xa0, 0x80, 0x45, 0x3a, 0x96, 0x28, 0x84, + 0x0e, 0x2d, 0xa7, 0xab, 0x37, 0x09, 0xd7, 0xc5, 0x0b, 0x3b, 0xdb, 0x85, 0x33, 0x1d, 0x0f, 0x28, + 0xb0, 0x0f, 0xd3, 0xe3, 0x6b, 0x28, 0xc7, 0x40, 0xd5, 0x32, 0x57, 0xcf, 0xf1, 0x9d, 0xed, 0xc2, + 0x88, 0x03, 0xb0, 0x86, 0x69, 0x68, 0x3e, 0x9a, 0xea, 0x07, 0xfb, 0x7b, 0xde, 0x72, 0x5c, 0xca, + 0x9c, 0x6b, 0x27, 0xe8, 0x07, 0x2f, 0xb0, 0xce, 0x51, 0xa2, 0x7e, 0xc8, 0x85, 0xf0, 0x2b, 0x08, + 0x31, 0x48, 0xd1, 0x30, 0x6c, 0xae, 0xa2, 0x4f, 0xec, 0x6c, 0x17, 0xce, 0x71, 0x16, 0xba, 0x61, + 0x88, 0xfa, 0x2d, 0x10, 0xe3, 0x36, 0x1a, 0x63, 0xbf, 0x16, 0xf4, 0x55, 0xd2, 0x62, 0xfa, 0x39, + 0x7a, 0xf3, 0xaa, 0xd7, 0x89, 0xb2, 0x74, 0x66, 0x44, 0xd2, 0x4a, 0xc7, 0xb5, 0xb7, 0x66, 0x0b, + 0x7c, 0x4a, 0xbb, 0xc0, 0xab, 0x6a, 0x01, 0x4e, 0x1c, 0x4c, 0x62, 0x19, 0x3a, 0xd3, 0xcd, 0x59, + 0xf6, 0xa6, 0x6e, 0x1b, 0xc4, 0x98, 0xdd, 0x12, 0x67, 0xba, 0x07, 0x1e, 0xb8, 0xb1, 0x2a, 0x76, + 0x9e, 0x48, 0x8e, 0x4b, 0x68, 0x9c, 0x71, 0xab, 0xf7, 0x56, 0xef, 0x98, 0x1d, 0x83, 0xeb, 0xaf, + 0x28, 0x2d, 0xa7, 0xb7, 0xda, 0xd8, 0x30, 0x3b, 0xe2, 0x5c, 0x2e, 0x97, 0x99, 0x7e, 0x03, 0x4d, + 0x45, 0x3e, 0x03, 0xe7, 0x51, 0x6a, 0x83, 0x6c, 0xb1, 0xae, 0xd6, 0xe8, 0x9f, 0xf8, 0x2c, 0x1a, + 0x7e, 0xa8, 0xb7, 0x7a, 0x7c, 0x01, 0xd1, 0xd8, 0x8f, 0x57, 0x93, 0x9f, 0x4d, 0xd0, 0xf9, 0x16, + 0x97, 0xac, 0x4e, 0x87, 0x34, 0x5d, 0x71, 0xca, 0x7d, 0x09, 0x8d, 0x2c, 0x58, 0x4d, 0xbd, 0x05, + 0x7d, 0xc0, 0x74, 0x46, 0xd9, 0xd9, 0x2e, 0x9c, 0xa5, 0xc2, 0x9f, 0x69, 0x51, 0x8c, 0xd0, 0xa6, + 0x80, 0x94, 0x76, 0x9e, 0x46, 0xda, 0x96, 0x4b, 0xa0, 0x60, 0x32, 0xe8, 0x3c, 0x28, 0x68, 0x03, + 0x4a, 0xec, 0xbc, 0x80, 0x18, 0xdf, 0x40, 0xb9, 0x1a, 0x5d, 0x65, 0x9a, 0x56, 0x8b, 0x2b, 0x0e, + 0x4c, 0x84, 0xb0, 0xf2, 0x08, 0x45, 0x7c, 0x22, 0x75, 0x1e, 0x4d, 0x94, 0x5a, 0x26, 0xe9, 0xb8, + 0x62, 0xab, 0xe9, 0x84, 0x5a, 0x5c, 0x23, 0x1d, 0x57, 0x6c, 0x35, 0x9d, 0x75, 0x1b, 0x3a, 0x85, + 0x8a, 0xad, 0xf6, 0x49, 0xd5, 0x5f, 0x4b, 0xa1, 0x27, 0xee, 0xf4, 0x56, 0x89, 0xdd, 0x21, 0x2e, + 0x71, 0xf8, 0x72, 0xe4, 0x73, 0x5d, 0x42, 0x53, 0x11, 0x24, 0xe7, 0x0e, 0xcb, 0xc4, 0x86, 0x8f, + 0x6c, 0xf0, 0x15, 0x4e, 0x9c, 0x6b, 0x22, 0x45, 0xf1, 0x3c, 0x9a, 0x0c, 0x80, 0xb4, 0x11, 0x8e, + 0x92, 0x84, 0x89, 0xf4, 0xf2, 0xce, 0x76, 0x61, 0x5a, 0xe0, 0x46, 0x9b, 0x2d, 0x6a, 0x5f, 0xb8, + 0x18, 0xbe, 0x83, 0xf2, 0x01, 0xe8, 0xb6, 0x6d, 0xf5, 0xba, 0x8e, 0x92, 0x02, 0x56, 0x85, 0x9d, + 0xed, 0xc2, 0x93, 0x02, 0xab, 0x35, 0x40, 0x8a, 0xcb, 0x57, 0xb8, 0x20, 0xfe, 0xee, 0x84, 0xc8, + 0x8d, 0x8f, 0xa0, 0x34, 0x8c, 0xa0, 0x97, 0xbd, 0x11, 0xd4, 0x57, 0x48, 0x33, 0xe1, 0x92, 0x7c, + 0x40, 0x85, 0x9a, 0x11, 0x19, 0x50, 0x91, 0x1a, 0xa7, 0x4b, 0xe8, 0x5c, 0x2c, 0xaf, 0x7d, 0x69, + 0xf5, 0xef, 0xa6, 0x44, 0x2e, 0x35, 0xcb, 0xf0, 0x3b, 0x73, 0x59, 0xec, 0xcc, 0x9a, 0x65, 0x80, + 0x8d, 0x92, 0x08, 0x56, 0x0e, 0xa1, 0xb1, 0x5d, 0xcb, 0x08, 0x9b, 0x2a, 0xd1, 0xb2, 0xf8, 0x5d, + 0x74, 0x3e, 0x02, 0x64, 0x53, 0x2d, 0xd3, 0xfe, 0x2b, 0x3b, 0xdb, 0x05, 0x35, 0x86, 0x6b, 0x78, + 0xe6, 0xed, 0xc3, 0x05, 0xeb, 0xe8, 0x82, 0x20, 0x75, 0xab, 0xe3, 0xea, 0x66, 0x87, 0x9b, 0x56, + 0x6c, 0x94, 0x7c, 0x6a, 0x67, 0xbb, 0xf0, 0x8c, 0xa8, 0x83, 0x1e, 0x4d, 0xb8, 0xf1, 0xfd, 0xf8, + 0x60, 0x03, 0x29, 0x31, 0xa8, 0x6a, 0x5b, 0x5f, 0xf3, 0xec, 0xc5, 0xab, 0x3b, 0xdb, 0x85, 0x4f, + 0xc4, 0xd6, 0x61, 0x52, 0x2a, 0x71, 0x7d, 0xea, 0xc7, 0x09, 0x6b, 0x08, 0x07, 0xb8, 0x25, 0xcb, + 0x20, 0xf0, 0x0d, 0xc3, 0xc0, 0x5f, 0xdd, 0xd9, 0x2e, 0x5c, 0x16, 0xf8, 0x77, 0x2c, 0x83, 0x84, + 0x9b, 0x1f, 0x53, 0x5a, 0xfd, 0x2f, 0x09, 0x74, 0xb9, 0x5e, 0x5c, 0x5c, 0xa8, 0x1a, 0xde, 0x82, + 0x5e, 0xb3, 0xad, 0x87, 0xa6, 0x21, 0x8c, 0xde, 0x55, 0x74, 0x21, 0x84, 0xaa, 0x80, 0x0d, 0xe1, + 0x9b, 0x92, 0xf0, 0x6d, 0x9e, 0xb1, 0xd0, 0xe5, 0x34, 0x0d, 0x66, 0x68, 0x34, 0x24, 0x3b, 0xba, + 0x1f, 0x23, 0xda, 0x47, 0x21, 0x54, 0x7d, 0xdd, 0xb2, 0xdd, 0x66, 0xcf, 0xe5, 0x4a, 0x00, 0x7d, + 0x14, 0xa9, 0xc3, 0xe1, 0x44, 0x03, 0xaa, 0xf0, 0xf8, 0xa8, 0x3f, 0x92, 0x42, 0x17, 0x97, 0x37, + 0x5c, 0x5d, 0x23, 0x8e, 0xd5, 0xb3, 0x9b, 0xc4, 0xb9, 0xdb, 0x35, 0x74, 0x97, 0x04, 0x8a, 0x5d, + 0x40, 0xc3, 0x45, 0xc3, 0x20, 0x06, 0x7c, 0xd5, 0x30, 0xdb, 0x23, 0xe8, 0x14, 0xa0, 0x31, 0x38, + 0xfe, 0x24, 0xca, 0xf2, 0x32, 0xd0, 0xa8, 0xe1, 0xd9, 0xd1, 0x9d, 0xed, 0x42, 0xb6, 0xc7, 0x40, + 0x9a, 0x87, 0xa3, 0x64, 0x65, 0xd2, 0x22, 0x94, 0x2c, 0x15, 0x90, 0x19, 0x0c, 0xa4, 0x79, 0x38, + 0xfc, 0x36, 0x9a, 0x00, 0xb6, 0x7e, 0x7b, 0xf8, 0x54, 0x71, 0xd6, 0x9b, 0x2a, 0xc4, 0xc6, 0xb2, + 0x99, 0x1c, 0x5a, 0xd3, 0xb0, 0xbd, 0x02, 0x5a, 0x88, 0x01, 0xbe, 0x8f, 0xf2, 0xbc, 0x11, 0x01, + 0xd3, 0xe1, 0x01, 0x4c, 0xcf, 0xed, 0x6c, 0x17, 0xa6, 0x78, 0xfb, 0x05, 0xb6, 0x11, 0x26, 0x94, + 0x31, 0x6f, 0x76, 0xc0, 0x38, 0xb3, 0x1b, 0x63, 0xfe, 0xc5, 0x22, 0xe3, 0x30, 0x13, 0xf5, 0x1d, + 0x34, 0x26, 0x16, 0xc4, 0xe7, 0x61, 0x1f, 0xc6, 0xd4, 0x0a, 0x76, 0x70, 0xa6, 0x01, 0x9b, 0xaf, + 0xe7, 0xd1, 0x68, 0x99, 0x38, 0x4d, 0xdb, 0xec, 0xd2, 0x45, 0x96, 0xeb, 0xc4, 0xe4, 0xce, 0x76, + 0x61, 0xd4, 0x08, 0xc0, 0x9a, 0x48, 0xa3, 0xfe, 0x8f, 0x04, 0x3a, 0x4f, 0x79, 0x17, 0x1d, 0xc7, + 0x5c, 0xeb, 0xb4, 0xc5, 0x55, 0xee, 0x3a, 0xca, 0xd4, 0xa1, 0x3e, 0x5e, 0xd3, 0xd9, 0x9d, 0xed, + 0x42, 0x9e, 0xb5, 0x40, 0xd0, 0x24, 0x4e, 0xe3, 0x6f, 0x42, 0x92, 0xbb, 0x6c, 0x42, 0xa8, 0xf5, + 0xe6, 0xea, 0xb6, 0x6b, 0x76, 0xd6, 0xea, 0xae, 0xee, 0xf6, 0x1c, 0xc9, 0x7a, 0xe3, 0x98, 0x86, + 0x03, 0x28, 0xc9, 0x7a, 0x93, 0x0a, 0xe1, 0x37, 0xd0, 0x58, 0xa5, 0x63, 0x04, 0x4c, 0xd8, 0xfc, + 0xf1, 0x24, 0x35, 0xaa, 0x08, 0xc0, 0xa3, 0x2c, 0xa4, 0x02, 0xea, 0xdf, 0x4e, 0x20, 0x85, 0xed, + 0x18, 0x16, 0x4c, 0xc7, 0x5d, 0x24, 0xed, 0x55, 0x61, 0x30, 0xcf, 0x79, 0x5b, 0x10, 0x8a, 0x13, + 0xa6, 0x6e, 0x58, 0x39, 0xf9, 0x16, 0xa4, 0x65, 0x3a, 0x6e, 0x78, 0xee, 0x08, 0x95, 0xc2, 0x55, + 0x94, 0x65, 0x9c, 0xd9, 0xd2, 0x3b, 0x7a, 0x53, 0xf1, 0x14, 0x21, 0x5c, 0x35, 0x53, 0x86, 0x36, + 0x23, 0x16, 0xf7, 0x90, 0xbc, 0xbc, 0xfa, 0x77, 0x92, 0x28, 0x1f, 0x2e, 0x84, 0xef, 0xa3, 0xdc, + 0x5b, 0x96, 0xd9, 0x21, 0xc6, 0x72, 0x07, 0x5a, 0x38, 0x78, 0x27, 0xed, 0x99, 0x9d, 0x67, 0xde, + 0x83, 0x32, 0x0d, 0x4b, 0xd8, 0x81, 0xc1, 0xc6, 0xda, 0x67, 0x86, 0xbf, 0x88, 0x46, 0xa8, 0xc9, + 0xf4, 0x10, 0x38, 0x27, 0x77, 0xe5, 0xfc, 0x14, 0xe7, 0x7c, 0xd6, 0x66, 0x85, 0xa2, 0xac, 0x03, + 0x76, 0x54, 0xaf, 0x34, 0xa2, 0x3b, 0x56, 0x87, 0xf7, 0x3c, 0xe8, 0x95, 0x0d, 0x10, 0x51, 0xaf, + 0x18, 0x0d, 0xb5, 0xf4, 0xd8, 0xc7, 0x42, 0x37, 0x08, 0x66, 0x3a, 0x93, 0x55, 0xb8, 0x07, 0x04, + 0x62, 0xf5, 0x7b, 0x93, 0xe8, 0xb9, 0x40, 0x64, 0x1a, 0x79, 0x68, 0x92, 0x4d, 0x2e, 0xce, 0x75, + 0xb3, 0xcb, 0x37, 0x38, 0x54, 0xe5, 0x9d, 0xd2, 0xba, 0xde, 0x59, 0x23, 0x06, 0xdd, 0x21, 0xd3, + 0x5d, 0xa8, 0xa3, 0x24, 0xc0, 0xba, 0x81, 0xe9, 0x84, 0xee, 0x56, 0xc5, 0x1e, 0x61, 0x14, 0xd8, + 0x42, 0x99, 0x15, 0x5b, 0x37, 0x5d, 0xaf, 0x67, 0x8b, 0xd1, 0x9e, 0xdd, 0x43, 0x8d, 0x33, 0x8c, + 0x07, 0xb3, 0x62, 0x40, 0x10, 0x2e, 0x00, 0x44, 0x41, 0x30, 0x92, 0xe9, 0x57, 0xd0, 0xa8, 0x40, + 0xbc, 0x2f, 0x33, 0xe5, 0x17, 0xd2, 0xa2, 0xae, 0x7b, 0xcd, 0xe2, 0xba, 0x7e, 0x83, 0xea, 0xa8, + 0xe3, 0xd0, 0x45, 0x98, 0x29, 0x39, 0xd7, 0x44, 0x00, 0xc9, 0x9a, 0x08, 0x20, 0xfc, 0x02, 0xca, + 0x31, 0x16, 0xfe, 0x56, 0x0d, 0xb6, 0x79, 0x36, 0xc0, 0xe4, 0x95, 0xcc, 0x27, 0xc4, 0x3f, 0x99, + 0x40, 0x97, 0x06, 0x4a, 0x02, 0x94, 0x61, 0xf4, 0xe6, 0x8b, 0x07, 0x12, 0xe3, 0xec, 0x73, 0x3b, + 0xdb, 0x85, 0x6b, 0x6d, 0x9f, 0xa4, 0x61, 0x0b, 0x34, 0x8d, 0x26, 0x23, 0x12, 0xda, 0x35, 0xb8, + 0x29, 0xd4, 0xd6, 0x62, 0x95, 0xce, 0xc1, 0x39, 0x43, 0xa7, 0xb9, 0xe5, 0x35, 0x32, 0x1d, 0xd8, + 0x5a, 0xfc, 0x7b, 0x1f, 0x78, 0x24, 0x31, 0xd5, 0xf4, 0xe1, 0x82, 0x9b, 0xe8, 0x02, 0xc3, 0x94, + 0xf5, 0xad, 0xe5, 0x07, 0x8b, 0x56, 0xc7, 0x5d, 0xf7, 0x2a, 0x18, 0x16, 0x37, 0xea, 0x50, 0x81, + 0xa1, 0x6f, 0x35, 0xac, 0x07, 0x8d, 0x36, 0xa5, 0x8a, 0xa9, 0xa3, 0x1f, 0x27, 0x3a, 0xd1, 0xf2, + 0x31, 0xe7, 0x4d, 0x41, 0x99, 0xe0, 0x18, 0xc5, 0x1b, 0xa7, 0xd1, 0x09, 0x27, 0x54, 0x48, 0xfd, + 0xf6, 0x30, 0xdd, 0xec, 0xc2, 0xd9, 0x17, 0x4c, 0xc1, 0xf8, 0xd5, 0xe0, 0x34, 0x91, 0xcf, 0x39, + 0x79, 0xaf, 0xcf, 0xfc, 0x73, 0x8b, 0x31, 0x3a, 0x1f, 0xfc, 0xfa, 0x76, 0x21, 0xb1, 0xb3, 0x5d, + 0x18, 0xd2, 0x72, 0xc2, 0xc6, 0x29, 0x58, 0x24, 0x84, 0x55, 0x51, 0x3c, 0xcd, 0x0a, 0x95, 0x65, + 0x8b, 0xc6, 0x1b, 0x28, 0xcb, 0xdb, 0xc0, 0xd5, 0xe4, 0x42, 0xb0, 0xd7, 0x96, 0xce, 0xf0, 0x42, + 0xa5, 0xbd, 0x52, 0xf8, 0x35, 0x94, 0x61, 0xfb, 0x57, 0xe8, 0x41, 0xe1, 0xc0, 0x45, 0xde, 0xab, + 0x87, 0x8a, 0xf3, 0x32, 0x78, 0x1e, 0xa1, 0x60, 0xef, 0xea, 0x1f, 0x59, 0x72, 0x0e, 0xd1, 0x5d, + 0x6d, 0x88, 0x8b, 0x50, 0x16, 0xbf, 0x84, 0xc6, 0x56, 0x88, 0xdd, 0x36, 0x3b, 0x7a, 0xab, 0x6e, + 0xbe, 0xef, 0x9d, 0x5a, 0xc2, 0x6a, 0xe9, 0x98, 0xef, 0x8b, 0xc3, 0x4d, 0xa2, 0xc3, 0x5f, 0x8e, + 0xdb, 0x1b, 0x66, 0xa1, 0x21, 0x4f, 0xef, 0xba, 0x69, 0x0a, 0xb5, 0x27, 0x66, 0xab, 0xf8, 0x36, + 0x1a, 0x97, 0xb6, 0x05, 0xfc, 0x58, 0xea, 0x52, 0x94, 0xb5, 0xb0, 0xc7, 0x09, 0xb1, 0x95, 0x39, + 0x50, 0xf5, 0xab, 0x76, 0x4c, 0xd7, 0xd4, 0x5b, 0x25, 0xab, 0xdd, 0xd6, 0x3b, 0x86, 0x32, 0x12, + 0xa8, 0x9f, 0xc9, 0x30, 0x8d, 0x26, 0x43, 0x89, 0xea, 0x27, 0x17, 0xa2, 0x5b, 0x4f, 0xde, 0x87, + 0x1a, 0x69, 0x5a, 0x36, 0x5d, 0xc0, 0x15, 0x04, 0x42, 0x83, 0x3d, 0x9f, 0xc3, 0x70, 0x0d, 0xdb, + 0x43, 0x8a, 0x7b, 0xbe, 0x70, 0xc1, 0xb7, 0xd2, 0xb9, 0xd1, 0xfc, 0x58, 0xf8, 0xa0, 0x50, 0xfd, + 0x5b, 0x29, 0x34, 0xca, 0x49, 0xe9, 0xfa, 0x77, 0xaa, 0xe0, 0x87, 0x51, 0xf0, 0x58, 0x45, 0xcd, + 0x3c, 0x2e, 0x45, 0x55, 0xbf, 0x9e, 0xf4, 0x67, 0xa3, 0x9a, 0x6d, 0x76, 0x0e, 0x37, 0x1b, 0x5d, + 0x41, 0xa8, 0xb4, 0xde, 0xeb, 0x6c, 0xb0, 0x0b, 0x91, 0x64, 0x70, 0x21, 0xd2, 0x34, 0x35, 0x01, + 0x83, 0x2f, 0xa1, 0x74, 0x99, 0xf2, 0xa7, 0x3d, 0x33, 0x36, 0x3b, 0xf2, 0x01, 0xe3, 0x94, 0x78, + 0x4e, 0x03, 0x30, 0xdd, 0x11, 0xcd, 0x6e, 0xb9, 0x84, 0xd9, 0xa0, 0x29, 0xb6, 0x23, 0x5a, 0xa5, + 0x00, 0x8d, 0xc1, 0xf1, 0x2d, 0x34, 0x55, 0x26, 0x2d, 0x7d, 0x6b, 0xd1, 0x6c, 0xb5, 0x4c, 0x87, + 0x34, 0xad, 0x8e, 0xe1, 0x80, 0x90, 0x79, 0x75, 0x6d, 0x47, 0x8b, 0x12, 0x60, 0x15, 0x65, 0x96, + 0x1f, 0x3c, 0x70, 0x88, 0x0b, 0xe2, 0x4b, 0xcd, 0xa2, 0x9d, 0xed, 0x42, 0xc6, 0x02, 0x88, 0xc6, + 0x31, 0xea, 0xcf, 0x24, 0xe8, 0x96, 0xc3, 0xd9, 0x70, 0xad, 0xae, 0xaf, 0xe5, 0x87, 0x12, 0xc9, + 0xb5, 0xc0, 0x18, 0x48, 0xc2, 0xd7, 0x4e, 0xf2, 0xaf, 0xcd, 0x72, 0x83, 0x20, 0x30, 0x03, 0x62, + 0xbf, 0x2a, 0xb5, 0xcb, 0x57, 0xa9, 0xbf, 0x97, 0x44, 0x17, 0x78, 0x8b, 0x4b, 0x2d, 0xb3, 0xbb, + 0x6a, 0xe9, 0xb6, 0xa1, 0x91, 0x26, 0x31, 0x1f, 0x92, 0xe3, 0x39, 0xf0, 0xe4, 0xa1, 0x93, 0x3e, + 0xc4, 0xd0, 0xb9, 0x09, 0xbb, 0x37, 0x2a, 0x19, 0x38, 0xd4, 0x64, 0x96, 0x40, 0x7e, 0x67, 0xbb, + 0x30, 0x66, 0x30, 0x30, 0x1c, 0x49, 0x6b, 0x22, 0x11, 0x55, 0x92, 0x05, 0xd2, 0x59, 0x73, 0xd7, + 0x41, 0x49, 0x86, 0x99, 0x92, 0xb4, 0x00, 0xa2, 0x71, 0x8c, 0xfa, 0xdf, 0x92, 0xe8, 0x6c, 0x58, + 0xe4, 0x75, 0xd2, 0x31, 0x4e, 0xe5, 0xfd, 0xe1, 0xc8, 0xfb, 0xf7, 0x53, 0xe8, 0x49, 0x5e, 0xa6, + 0xbe, 0xae, 0xdb, 0xc4, 0x28, 0x9b, 0x36, 0x69, 0xba, 0x96, 0xbd, 0x75, 0x8c, 0x0d, 0xa8, 0xc7, + 0x27, 0xf6, 0x5b, 0x28, 0xc3, 0xf7, 0xec, 0x6c, 0x9d, 0x99, 0xf0, 0x5b, 0x02, 0xd0, 0xc8, 0x0a, + 0xc5, 0xf6, 0xfb, 0xa1, 0xce, 0xca, 0xec, 0xa5, 0xb3, 0x3e, 0x8b, 0xc6, 0x7d, 0xd1, 0xc3, 0xee, + 0x31, 0x1b, 0x58, 0x5b, 0x86, 0x87, 0x80, 0x0d, 0xa4, 0x26, 0x13, 0x42, 0x6d, 0x1e, 0xa0, 0x5a, + 0x06, 0x6b, 0x68, 0x9c, 0xd7, 0xe6, 0x97, 0x33, 0x0d, 0x4d, 0x24, 0x52, 0xb7, 0xd3, 0x68, 0x3a, + 0xbe, 0xdb, 0x35, 0xa2, 0x1b, 0xa7, 0xbd, 0xfe, 0xb1, 0xec, 0x75, 0xfc, 0x34, 0x4a, 0xd7, 0x74, + 0x77, 0x9d, 0x5f, 0xb0, 0xc2, 0x9d, 0xe5, 0x03, 0xb3, 0x45, 0x1a, 0x5d, 0xdd, 0x5d, 0xd7, 0x00, + 0x25, 0xcc, 0x19, 0x08, 0x38, 0xc6, 0xcc, 0x19, 0xc2, 0x62, 0x3f, 0xfa, 0x54, 0xe2, 0x6a, 0x3a, + 0x76, 0xb1, 0xff, 0x76, 0xba, 0xdf, 0xbc, 0x72, 0xdf, 0x36, 0x5d, 0x72, 0xaa, 0x61, 0xa7, 0x1a, + 0x76, 0x48, 0x0d, 0xfb, 0x37, 0x49, 0x34, 0xee, 0x6f, 0x9a, 0xde, 0x23, 0xcd, 0xa3, 0x59, 0xab, + 0x82, 0xad, 0x4c, 0xea, 0xd0, 0x5b, 0x99, 0xc3, 0x28, 0x94, 0xea, 0x9f, 0x53, 0x32, 0xd3, 0x00, + 0x24, 0xc6, 0xce, 0x29, 0xfd, 0xd3, 0xc9, 0xa7, 0x51, 0x76, 0x51, 0x7f, 0x64, 0xb6, 0x7b, 0x6d, + 0x6e, 0xa5, 0x83, 0xc3, 0x50, 0x5b, 0x7f, 0xa4, 0x79, 0x70, 0xf5, 0x37, 0x13, 0x68, 0x82, 0x0b, + 0x95, 0x33, 0x3f, 0x94, 0x54, 0x03, 0xe9, 0x24, 0x0f, 0x2d, 0x9d, 0xd4, 0xc1, 0xa5, 0xa3, 0xfe, + 0xd5, 0x14, 0x52, 0xe6, 0xcc, 0x16, 0x59, 0xb1, 0xf5, 0x8e, 0xf3, 0x80, 0xd8, 0x7c, 0x3b, 0x5d, + 0xa1, 0xac, 0x0e, 0xf5, 0x81, 0xc2, 0x94, 0x92, 0x3c, 0xd0, 0x94, 0xf2, 0x69, 0x34, 0xc2, 0x1b, + 0xe3, 0x3b, 0xab, 0xc1, 0xa8, 0xb1, 0x3d, 0xa0, 0x16, 0xe0, 0x29, 0x71, 0xb1, 0xdb, 0xb5, 0xad, + 0x87, 0xc4, 0x66, 0x57, 0x4b, 0x9c, 0x58, 0xf7, 0x80, 0x5a, 0x80, 0x17, 0x38, 0x13, 0xcf, 0x5e, + 0x14, 0x39, 0x13, 0x5b, 0x0b, 0xf0, 0xf8, 0x2a, 0xca, 0x2d, 0x58, 0x4d, 0x1d, 0x04, 0xcd, 0xa6, + 0x95, 0xb1, 0x9d, 0xed, 0x42, 0xae, 0xc5, 0x61, 0x9a, 0x8f, 0xa5, 0x94, 0x65, 0x6b, 0xb3, 0xd3, + 0xb2, 0x74, 0xe6, 0x9c, 0x91, 0x63, 0x94, 0x06, 0x87, 0x69, 0x3e, 0x96, 0x52, 0x52, 0x99, 0x83, + 0xd3, 0x4b, 0x2e, 0xe0, 0xf9, 0x80, 0xc3, 0x34, 0x1f, 0xab, 0xfe, 0x4c, 0x9a, 0x6a, 0xaf, 0x63, + 0xbe, 0x7f, 0xe2, 0xd7, 0x85, 0x60, 0xc0, 0x0c, 0x1f, 0x60, 0xc0, 0x9c, 0x98, 0x03, 0x3b, 0xf5, + 0x7f, 0x66, 0x11, 0xe2, 0xd2, 0xaf, 0x9c, 0x6e, 0x0e, 0x0f, 0xa7, 0x35, 0x65, 0x34, 0x55, 0xe9, + 0xac, 0xeb, 0x9d, 0x26, 0x31, 0x82, 0x63, 0xcb, 0x0c, 0x0c, 0x6d, 0x70, 0x16, 0x25, 0x1c, 0x19, + 0x9c, 0x5b, 0x6a, 0xd1, 0x02, 0xf8, 0x79, 0x34, 0x5a, 0xed, 0xb8, 0xc4, 0xd6, 0x9b, 0xae, 0xf9, + 0x90, 0xf0, 0xa9, 0x01, 0xae, 0x73, 0xcd, 0x00, 0xac, 0x89, 0x34, 0xf8, 0x16, 0x1a, 0xab, 0xe9, + 0xb6, 0x6b, 0x36, 0xcd, 0xae, 0xde, 0x71, 0x1d, 0x25, 0x07, 0x33, 0x1a, 0x58, 0x18, 0x5d, 0x01, + 0xae, 0x49, 0x54, 0xf8, 0xcb, 0x68, 0x04, 0xb6, 0xa6, 0xe0, 0x91, 0x3b, 0xb2, 0xeb, 0x6d, 0xdf, + 0x33, 0x81, 0xfb, 0x1a, 0x3b, 0x7d, 0x85, 0x6b, 0xdb, 0xf0, 0x85, 0x9f, 0xcf, 0x11, 0x7f, 0x01, + 0x65, 0x2b, 0x1d, 0x03, 0x98, 0xa3, 0x5d, 0x99, 0xab, 0x9c, 0xf9, 0xf9, 0x80, 0xb9, 0xd5, 0x0d, + 0xf1, 0xf6, 0xd8, 0xc5, 0x8f, 0xb2, 0xd1, 0x0f, 0x6f, 0x94, 0x8d, 0x7d, 0x08, 0xc7, 0xe2, 0xe3, + 0x8f, 0xeb, 0x58, 0x7c, 0xe2, 0x80, 0xc7, 0xe2, 0xea, 0xfb, 0x68, 0x74, 0xb6, 0x36, 0xe7, 0x8f, + 0xde, 0x27, 0x50, 0xaa, 0xc6, 0xdd, 0x0b, 0xd2, 0xcc, 0x9e, 0xe9, 0x9a, 0x86, 0x46, 0x61, 0xf8, + 0x1a, 0xca, 0x95, 0xc0, 0xc5, 0x8b, 0x5f, 0xfd, 0xa5, 0xd9, 0xfa, 0xd7, 0x04, 0x18, 0x78, 0x69, + 0x7a, 0x68, 0xfc, 0x49, 0x94, 0xad, 0xd9, 0xd6, 0x9a, 0xad, 0xb7, 0xf9, 0x1a, 0x0c, 0xfe, 0x1d, + 0x5d, 0x06, 0xd2, 0x3c, 0x9c, 0xfa, 0x17, 0x12, 0x9e, 0xd9, 0x4e, 0x4b, 0xd4, 0x7b, 0x70, 0x34, + 0x0f, 0x75, 0xe7, 0x58, 0x09, 0x87, 0x81, 0x34, 0x0f, 0x87, 0xaf, 0xa1, 0xe1, 0x8a, 0x6d, 0x5b, + 0xb6, 0xe8, 0xc5, 0x4c, 0x28, 0x40, 0xbc, 0xa3, 0x05, 0x0a, 0xfc, 0x32, 0x1a, 0x65, 0x73, 0x0e, + 0x3b, 0xd1, 0x4c, 0x0d, 0xba, 0xde, 0x14, 0x29, 0xd5, 0x6f, 0xa4, 0x04, 0x9b, 0x8d, 0x49, 0xfc, + 0x04, 0xde, 0x0a, 0xbc, 0x80, 0x52, 0xb3, 0xb5, 0x39, 0x3e, 0x01, 0x9e, 0xf1, 0x8a, 0x0a, 0xaa, + 0x12, 0x2a, 0x47, 0xa9, 0xf1, 0x45, 0x94, 0xae, 0x51, 0xf5, 0xc9, 0x80, 0x7a, 0xe4, 0x76, 0xb6, + 0x0b, 0xe9, 0x2e, 0xd5, 0x1f, 0x80, 0x02, 0x96, 0x6e, 0x66, 0xd8, 0x8e, 0x89, 0x61, 0x83, 0x7d, + 0xcc, 0x45, 0x94, 0x2e, 0xda, 0x6b, 0x0f, 0xf9, 0xac, 0x05, 0x58, 0xdd, 0x5e, 0x7b, 0xa8, 0x01, + 0x14, 0xdf, 0x40, 0x48, 0x23, 0x6e, 0xcf, 0xee, 0xc0, 0x03, 0x83, 0x11, 0x38, 0x7f, 0x83, 0xd9, + 0xd0, 0x06, 0x68, 0xa3, 0x69, 0x19, 0x44, 0x13, 0x48, 0xd4, 0xbf, 0x19, 0x5c, 0xec, 0x94, 0x4d, + 0x67, 0xe3, 0xb4, 0x0b, 0xf7, 0xd1, 0x85, 0x3a, 0x3f, 0xe2, 0x8c, 0x76, 0x52, 0x01, 0x0d, 0xcf, + 0xb5, 0xf4, 0x35, 0x07, 0xfa, 0x90, 0x3b, 0x80, 0x3d, 0xa0, 0x00, 0x8d, 0xc1, 0x43, 0xfd, 0x94, + 0xdb, 0xbd, 0x9f, 0x7e, 0x74, 0xd8, 0x1f, 0x6d, 0x4b, 0xc4, 0xdd, 0xb4, 0xec, 0xd3, 0xae, 0xda, + 0x6b, 0x57, 0x5d, 0x41, 0xd9, 0xba, 0xdd, 0x14, 0x8e, 0x2e, 0x60, 0x3f, 0xe0, 0xd8, 0x4d, 0x76, + 0x6c, 0xe1, 0x21, 0x29, 0x5d, 0xd9, 0x71, 0x81, 0x2e, 0x1b, 0xd0, 0x19, 0x8e, 0xcb, 0xe9, 0x38, + 0x92, 0xd3, 0xd5, 0x2c, 0xdb, 0xe5, 0x1d, 0xe7, 0xd3, 0x75, 0x2d, 0xdb, 0xd5, 0x3c, 0x24, 0xfe, + 0x34, 0x42, 0x2b, 0xa5, 0xda, 0x3d, 0x62, 0x83, 0xb8, 0x46, 0x02, 0x07, 0xbe, 0x87, 0x0c, 0xa4, + 0x09, 0x68, 0xbc, 0x82, 0x46, 0x96, 0xbb, 0xc4, 0x66, 0x5b, 0x21, 0x6a, 0x01, 0x4c, 0xdc, 0xfc, + 0x54, 0x48, 0xb4, 0xbc, 0xdf, 0x67, 0xf8, 0xff, 0x3e, 0x39, 0x5b, 0x5f, 0x2c, 0xef, 0xa7, 0x16, + 0x30, 0xc2, 0x2f, 0xa3, 0x4c, 0x91, 0xd9, 0x79, 0xa3, 0xc0, 0xd2, 0x17, 0x19, 0x6c, 0x41, 0x19, + 0x8a, 0xed, 0xd9, 0x75, 0xf8, 0x5b, 0xe3, 0xe4, 0xea, 0x35, 0x94, 0x0f, 0x57, 0x83, 0x47, 0x51, + 0xb6, 0xb4, 0xbc, 0xb4, 0x54, 0x29, 0xad, 0xe4, 0x87, 0x70, 0x0e, 0xa5, 0xeb, 0x95, 0xa5, 0x72, + 0x3e, 0xa1, 0xfe, 0x94, 0x30, 0x83, 0x50, 0xd5, 0x3a, 0xbd, 0x1a, 0x3e, 0xd4, 0x7d, 0x4b, 0x1e, + 0xee, 0x43, 0xe1, 0xc4, 0xa0, 0x6d, 0xba, 0x2e, 0x31, 0xf8, 0x2a, 0x01, 0xf7, 0x85, 0xee, 0x23, + 0x2d, 0x82, 0xc7, 0xd7, 0xd1, 0x38, 0xc0, 0xf8, 0x15, 0x21, 0xdb, 0x1f, 0xf3, 0x02, 0xf6, 0x23, + 0x4d, 0x46, 0xaa, 0xdf, 0x0a, 0x6e, 0x87, 0x17, 0x88, 0x7e, 0x5c, 0x6f, 0x14, 0x3f, 0x22, 0xfd, + 0xa5, 0xfe, 0x51, 0x9a, 0x3d, 0x73, 0x60, 0x2f, 0xc2, 0x8e, 0x42, 0x94, 0xc1, 0x91, 0x6e, 0x6a, + 0x1f, 0x47, 0xba, 0xd7, 0x51, 0x66, 0x91, 0xb8, 0xeb, 0x96, 0xe7, 0xad, 0x05, 0x6e, 0x75, 0x6d, + 0x80, 0x88, 0x6e, 0x75, 0x8c, 0x06, 0x6f, 0x20, 0xec, 0x3d, 0xf7, 0x2a, 0xba, 0xae, 0x6d, 0xae, + 0xf6, 0x5c, 0xe2, 0x1d, 0x21, 0x5f, 0x88, 0xec, 0x53, 0xea, 0xf0, 0xd6, 0x13, 0xfc, 0xc8, 0xcf, + 0xea, 0x3e, 0x79, 0xc0, 0xf6, 0x0f, 0xb7, 0x0b, 0x19, 0x46, 0xa3, 0xc5, 0xb0, 0xc5, 0x6f, 0xa3, + 0x91, 0xc5, 0xb9, 0x22, 0x7f, 0xfa, 0xc5, 0xbc, 0x22, 0x9e, 0xf0, 0xa5, 0xe8, 0x21, 0x7c, 0x91, + 0xc0, 0x9b, 0x92, 0xf6, 0x03, 0x3d, 0xfa, 0xf2, 0x2b, 0xe0, 0x42, 0xb5, 0x85, 0xbd, 0x4e, 0xe1, + 0xa7, 0x0b, 0xbe, 0xb6, 0xc8, 0x6f, 0x56, 0xc2, 0xb2, 0x62, 0xd8, 0x90, 0xb6, 0xe4, 0x0e, 0x31, + 0xba, 0x97, 0xd1, 0x54, 0xb1, 0xdb, 0x6d, 0x99, 0xc4, 0x00, 0x7d, 0xd1, 0x7a, 0x2d, 0xe2, 0x70, + 0x97, 0x1f, 0x78, 0xf0, 0xa0, 0x33, 0x64, 0x03, 0x1e, 0x1c, 0x36, 0xec, 0x9e, 0xec, 0x54, 0x19, + 0x2d, 0xab, 0xfe, 0xd7, 0x04, 0xca, 0x7b, 0x1e, 0xcf, 0xe2, 0x53, 0x47, 0xc1, 0x1d, 0x17, 0x8e, + 0x61, 0x42, 0x0e, 0xa0, 0x80, 0xc7, 0x75, 0x94, 0xad, 0x3c, 0xea, 0x9a, 0x36, 0x71, 0xf6, 0xe0, + 0xbd, 0x7a, 0x89, 0x6f, 0x39, 0xa7, 0x08, 0x2b, 0x12, 0xd9, 0x6d, 0x32, 0x30, 0x3c, 0xfb, 0x61, + 0x3e, 0xdf, 0xb3, 0xde, 0xfb, 0x4d, 0xf6, 0xec, 0x87, 0xfb, 0x86, 0x4b, 0x6f, 0xb0, 0x02, 0x52, + 0xfc, 0x0c, 0x4a, 0xad, 0xac, 0x2c, 0x70, 0x6d, 0x84, 0x77, 0xb3, 0xae, 0x2b, 0xbe, 0x6b, 0xa2, + 0x58, 0xf5, 0x47, 0x92, 0x08, 0x51, 0xa5, 0x2f, 0xd9, 0x44, 0x3f, 0xa2, 0xcb, 0x9c, 0x59, 0x94, + 0xf3, 0x04, 0xce, 0x07, 0x9c, 0xef, 0xae, 0x1c, 0xee, 0x88, 0x70, 0xdd, 0xbe, 0x6b, 0x7a, 0xc1, + 0xf3, 0xa0, 0x65, 0x67, 0xa9, 0x60, 0x1d, 0x82, 0x07, 0xad, 0xe7, 0x37, 0xfb, 0x69, 0x34, 0xc2, + 0xb5, 0xc6, 0x92, 0xce, 0x50, 0x9b, 0x1e, 0x50, 0x0b, 0xf0, 0xbe, 0x50, 0x98, 0x2c, 0x4f, 0x85, + 0x02, 0x42, 0xf9, 0x66, 0x82, 0x09, 0x85, 0x3d, 0x13, 0x38, 0xae, 0x42, 0x51, 0xbf, 0x96, 0x40, + 0x98, 0x32, 0xab, 0xe9, 0x8e, 0xb3, 0x69, 0xd9, 0x06, 0xf3, 0x5b, 0x3d, 0x8a, 0xcf, 0x51, 0x7f, + 0x33, 0x8b, 0xce, 0x48, 0x4e, 0x81, 0xc7, 0x7c, 0x10, 0x5e, 0x93, 0xf5, 0x6d, 0x90, 0x1b, 0xfb, + 0x27, 0xc4, 0xcb, 0x92, 0x61, 0xe9, 0x45, 0x89, 0x70, 0x4b, 0xf2, 0x1c, 0x1a, 0xe3, 0x3f, 0xe8, + 0x1a, 0xeb, 0x9d, 0x82, 0x83, 0x1e, 0x3b, 0x14, 0xa0, 0x49, 0x68, 0xfc, 0x22, 0x1a, 0xa1, 0xca, + 0xb9, 0x06, 0x4f, 0xc7, 0xb3, 0x81, 0x8b, 0xb8, 0xe1, 0x01, 0xc5, 0x79, 0xd2, 0xa7, 0x14, 0x1e, + 0x06, 0xe4, 0xf6, 0xf0, 0x30, 0xe0, 0x5d, 0x34, 0x5a, 0xec, 0x74, 0x2c, 0x17, 0x0c, 0x78, 0x87, + 0x1f, 0x5b, 0xf6, 0x5d, 0xb1, 0x9f, 0x81, 0xc7, 0xa1, 0x01, 0x7d, 0xec, 0x92, 0x2d, 0x32, 0xc4, + 0x37, 0x3d, 0x37, 0x77, 0x62, 0x73, 0x8f, 0x53, 0x38, 0xba, 0xb5, 0x39, 0x2c, 0xea, 0xe5, 0x0e, + 0x9d, 0x37, 0x5e, 0xb3, 0xad, 0xae, 0xe5, 0x10, 0x83, 0x09, 0x6a, 0x34, 0x78, 0x73, 0xde, 0xe5, + 0x08, 0x78, 0x98, 0x22, 0x3d, 0xe3, 0x96, 0x8a, 0xe0, 0x07, 0xe8, 0xac, 0x77, 0x89, 0xe4, 0x3f, + 0x01, 0xaa, 0x96, 0x1d, 0x65, 0x0c, 0x9e, 0x19, 0xe0, 0xb0, 0x32, 0x54, 0xcb, 0xb3, 0x97, 0xbd, + 0x23, 0x53, 0xef, 0x0d, 0x51, 0xc3, 0x34, 0xc4, 0xae, 0x8e, 0xe5, 0x87, 0xbf, 0x13, 0x8d, 0x2e, + 0xea, 0x8f, 0xca, 0x3d, 0xbe, 0x2f, 0x1b, 0xdf, 0xfb, 0xc9, 0x6c, 0x5b, 0x7f, 0xd4, 0x30, 0x78, + 0xb9, 0xd0, 0x5a, 0x29, 0xb2, 0xc4, 0x0d, 0x74, 0xbe, 0x66, 0x5b, 0x6d, 0xcb, 0x25, 0x46, 0xe8, + 0x35, 0xcd, 0x64, 0xf0, 0x5a, 0xad, 0xcb, 0x29, 0x1a, 0x03, 0x9e, 0xd5, 0xf4, 0x61, 0xf3, 0x56, + 0x3a, 0x37, 0x91, 0x9f, 0xd4, 0x2e, 0x44, 0xb1, 0x2b, 0xa6, 0xdb, 0x22, 0xea, 0x2f, 0x25, 0x10, + 0x0a, 0xbe, 0x18, 0x3f, 0x27, 0x07, 0x8c, 0x48, 0x04, 0xa7, 0x92, 0xfc, 0x39, 0xad, 0x14, 0x21, + 0x02, 0x5f, 0x44, 0x69, 0x78, 0x2e, 0x9d, 0x0c, 0x4e, 0x41, 0x36, 0xcc, 0x8e, 0xa1, 0x01, 0x94, + 0x62, 0x85, 0xb7, 0x91, 0x80, 0x85, 0x1b, 0x38, 0x66, 0x7e, 0x94, 0xd1, 0x64, 0xbd, 0xb7, 0xea, + 0xd5, 0x2d, 0xbc, 0x5c, 0x81, 0x57, 0xdb, 0x4e, 0x6f, 0xd5, 0x7f, 0xee, 0x25, 0xbd, 0x89, 0x97, + 0x8b, 0xa8, 0x3f, 0x93, 0x08, 0x4d, 0x4b, 0x47, 0x38, 0xe3, 0x7f, 0x22, 0x7a, 0xa9, 0x1a, 0x9d, + 0x27, 0xd4, 0xbf, 0x96, 0x44, 0xa3, 0x35, 0xcb, 0x76, 0xf9, 0xfb, 0xf3, 0x23, 0x69, 0xe9, 0x63, + 0xbb, 0xe2, 0x16, 0xb6, 0x1f, 0xe9, 0x7d, 0x6c, 0x3f, 0x2e, 0xa2, 0xb4, 0xe0, 0x4f, 0xc8, 0x0e, + 0x31, 0x0d, 0xc3, 0xd6, 0x00, 0xaa, 0x7e, 0x57, 0x12, 0xa1, 0x2f, 0x3c, 0xff, 0xfc, 0x09, 0x16, + 0x90, 0xfa, 0x57, 0x12, 0x68, 0x92, 0x9f, 0xaa, 0x0b, 0xa1, 0x57, 0xb2, 0xde, 0x7d, 0x88, 0x38, + 0x2e, 0x19, 0x48, 0xf3, 0x70, 0x74, 0x4e, 0xae, 0x3c, 0x32, 0x5d, 0x38, 0x58, 0x14, 0x62, 0xaf, + 0x10, 0x0e, 0x13, 0xe7, 0x64, 0x8f, 0x0e, 0x3f, 0xe7, 0xdd, 0x17, 0xa4, 0x82, 0x85, 0x88, 0x16, + 0xa8, 0xc4, 0xde, 0x19, 0xa8, 0x3f, 0x97, 0x46, 0xe9, 0xca, 0x23, 0xd2, 0x3c, 0xe6, 0x5d, 0x23, + 0x9c, 0x42, 0xa4, 0x0f, 0x79, 0x0a, 0x71, 0x90, 0x0b, 0xd0, 0x37, 0x82, 0xfe, 0xcc, 0xc8, 0xd5, + 0x87, 0x7a, 0x3e, 0x5c, 0xbd, 0xd7, 0xd3, 0xc7, 0xef, 0xfe, 0xfc, 0x9f, 0xa5, 0x50, 0xaa, 0x5e, + 0xaa, 0x9d, 0xea, 0xcd, 0x91, 0xea, 0xcd, 0xe0, 0x0b, 0x26, 0xd5, 0x3f, 0x33, 0xce, 0x05, 0x2e, + 0x5d, 0xa1, 0xe3, 0xe1, 0xdf, 0x4f, 0xa1, 0x89, 0xfa, 0xdc, 0x4a, 0x4d, 0x38, 0xb6, 0xb9, 0xc3, + 0xdc, 0x6e, 0xc0, 0x01, 0x84, 0x75, 0xe9, 0xc5, 0x88, 0x9d, 0x74, 0xb7, 0xda, 0x71, 0x5f, 0xba, + 0x75, 0x4f, 0x6f, 0xf5, 0x08, 0xec, 0xf1, 0x99, 0x93, 0x9e, 0x63, 0xbe, 0x4f, 0x7e, 0x0c, 0x9e, + 0xd6, 0x7a, 0x0c, 0xf0, 0xe7, 0x50, 0xea, 0x2e, 0xbf, 0x3e, 0xed, 0xc7, 0xe7, 0x85, 0x9b, 0x8c, + 0x0f, 0x9d, 0x04, 0x53, 0x3d, 0xd3, 0x00, 0x0e, 0xb4, 0x14, 0x2d, 0x7c, 0x9b, 0x2f, 0xc0, 0x7b, + 0x2a, 0xbc, 0xe6, 0x15, 0xbe, 0x5d, 0x2d, 0xe3, 0x3a, 0x1a, 0xad, 0x11, 0xbb, 0x6d, 0x42, 0x47, + 0x79, 0x73, 0xf6, 0x60, 0x26, 0x74, 0xeb, 0x30, 0xda, 0x0d, 0x0a, 0x01, 0x33, 0x91, 0x0b, 0x7e, + 0x07, 0x21, 0x66, 0xa3, 0xec, 0x31, 0x9c, 0xd7, 0x25, 0x30, 0xc4, 0x99, 0xad, 0xe7, 0x9a, 0xa2, + 0x99, 0x07, 0x06, 0xa4, 0xc0, 0x0c, 0x6f, 0xa0, 0xfc, 0xa2, 0x65, 0x98, 0x0f, 0x4c, 0xe6, 0x27, + 0x05, 0x15, 0x64, 0x76, 0xf7, 0x4e, 0xd8, 0xd9, 0x2e, 0x3c, 0xd9, 0x16, 0xca, 0xc5, 0x55, 0x13, + 0x61, 0xac, 0xfe, 0xe3, 0x61, 0x94, 0xa6, 0xdd, 0x7e, 0x3a, 0x7e, 0x0f, 0x33, 0x7e, 0x8b, 0x28, + 0x7f, 0xdf, 0xb2, 0x37, 0xcc, 0xce, 0x9a, 0xef, 0xc2, 0xca, 0x37, 0x8b, 0x70, 0xed, 0xbe, 0xc9, + 0x70, 0x0d, 0xdf, 0xdb, 0x55, 0x8b, 0x90, 0xef, 0x32, 0x82, 0x5f, 0x41, 0x68, 0x45, 0xb7, 0xd7, + 0x88, 0x0b, 0x34, 0xb9, 0xe0, 0x39, 0xb8, 0x0b, 0x50, 0xf0, 0x8a, 0x15, 0x9f, 0x83, 0x07, 0xc4, + 0x74, 0x57, 0xcc, 0x2e, 0x2e, 0x47, 0xc0, 0x49, 0x16, 0x76, 0xc5, 0x70, 0x71, 0x29, 0x1a, 0x01, + 0xec, 0x0a, 0xb3, 0x86, 0x90, 0x70, 0x18, 0x8c, 0x42, 0x82, 0x90, 0x26, 0x07, 0x1e, 0xaf, 0x28, + 0xe6, 0x2c, 0x58, 0x13, 0x78, 0xe0, 0x97, 0x42, 0xb7, 0x55, 0x58, 0xe2, 0xd6, 0xf7, 0xb2, 0x2a, + 0xf0, 0x76, 0x18, 0xdb, 0xcd, 0xdb, 0x41, 0xfd, 0x7a, 0x12, 0x8d, 0xd4, 0x7b, 0xab, 0xce, 0x96, + 0xe3, 0x92, 0xf6, 0x31, 0x57, 0x63, 0x6f, 0x7b, 0x95, 0x8e, 0xdd, 0x5e, 0x3d, 0xe3, 0x09, 0x45, + 0x38, 0x2a, 0xf3, 0x4d, 0x3a, 0x4f, 0x1c, 0x7f, 0x37, 0x89, 0xf2, 0xec, 0x94, 0xbb, 0x6c, 0x3a, + 0xcd, 0xc7, 0xe0, 0x79, 0x7b, 0xf4, 0x52, 0x39, 0xdc, 0xcd, 0xd0, 0x1e, 0xfc, 0x99, 0xd5, 0xaf, + 0x26, 0xd1, 0x68, 0xb1, 0xe7, 0xae, 0x17, 0x5d, 0xd0, 0xad, 0x13, 0xb9, 0x3f, 0xf9, 0x95, 0x04, + 0x9a, 0xa4, 0x0d, 0x59, 0xb1, 0x36, 0x48, 0xe7, 0x31, 0x9c, 0x04, 0x8a, 0x27, 0x7a, 0xc9, 0x03, + 0x9e, 0xe8, 0x79, 0xb2, 0x4c, 0xed, 0xf3, 0x64, 0xf3, 0x9b, 0x09, 0x84, 0x34, 0xab, 0x45, 0x3e, + 0x26, 0x9f, 0xf1, 0x18, 0xee, 0x01, 0x3e, 0x0a, 0x9f, 0xf1, 0x18, 0xce, 0x71, 0x8e, 0xf2, 0x33, + 0x7e, 0x2d, 0x81, 0xce, 0xf2, 0xd0, 0x93, 0x7c, 0x3f, 0x75, 0xcc, 0xd5, 0x2b, 0xfa, 0x41, 0xc7, + 0xbc, 0x87, 0x7e, 0x22, 0x85, 0xce, 0x42, 0x68, 0x2f, 0x6a, 0xd2, 0x7d, 0x0c, 0xe6, 0x31, 0xdc, + 0x94, 0x6f, 0x34, 0x16, 0x63, 0x6e, 0x34, 0xfe, 0x70, 0xbb, 0xf0, 0xd2, 0x9a, 0xe9, 0xae, 0xf7, + 0x56, 0x67, 0x9a, 0x56, 0xfb, 0xc6, 0x9a, 0xad, 0x3f, 0x34, 0xd9, 0x59, 0xbe, 0xde, 0xba, 0xe1, + 0x47, 0x4c, 0xd6, 0xbb, 0x26, 0x8f, 0xa5, 0x5c, 0x07, 0x3b, 0x89, 0x72, 0xf5, 0xee, 0x42, 0x1c, + 0x84, 0xde, 0xb2, 0xcc, 0x0e, 0x77, 0x1e, 0x60, 0x8b, 0x64, 0x9d, 0xda, 0x96, 0xef, 0x59, 0x66, + 0xa7, 0x11, 0xf6, 0x20, 0xd8, 0x6f, 0x7d, 0x01, 0x6b, 0x4d, 0xa8, 0x46, 0xfd, 0xb7, 0x09, 0xf4, + 0x84, 0xac, 0x7b, 0x1f, 0x87, 0x75, 0xe7, 0x5f, 0x27, 0xd0, 0xb9, 0xdb, 0x20, 0x1c, 0xff, 0xde, + 0xf2, 0xe3, 0xf7, 0x45, 0xc7, 0x7c, 0x35, 0x8a, 0xf9, 0xa2, 0x63, 0x3e, 0xed, 0xfd, 0x6a, 0x02, + 0x9d, 0x59, 0xae, 0x96, 0x4b, 0x1f, 0x17, 0x9d, 0x8b, 0x7c, 0xcf, 0x31, 0xd7, 0xb8, 0xc8, 0xf7, + 0x7c, 0x0c, 0xf4, 0xad, 0x5e, 0x5c, 0x5c, 0xf8, 0x38, 0xe9, 0x9b, 0xf4, 0x3d, 0x1f, 0x03, 0x7d, + 0x93, 0xbe, 0xe7, 0x98, 0xeb, 0xdb, 0x37, 0x33, 0x68, 0xf4, 0x4e, 0x6f, 0x95, 0xf0, 0x0b, 0xd7, + 0x13, 0x7d, 0x9a, 0x71, 0x13, 0x8d, 0x72, 0x31, 0xc0, 0x49, 0xa0, 0x10, 0xbd, 0x85, 0xbf, 0xc6, + 0x65, 0x0f, 0xe4, 0x45, 0x22, 0x7c, 0x11, 0xa5, 0xef, 0x11, 0x7b, 0x55, 0x7c, 0xd8, 0xf0, 0x90, + 0xd8, 0xab, 0x1a, 0x40, 0xf1, 0x42, 0xe0, 0x6f, 0x58, 0xac, 0x55, 0x21, 0x5a, 0x35, 0x3f, 0x84, + 0x84, 0xf0, 0xdb, 0xbe, 0x73, 0x85, 0xde, 0x35, 0x59, 0x9c, 0x6b, 0xf1, 0x51, 0x55, 0xb8, 0x24, + 0x5e, 0x42, 0x53, 0xe2, 0x65, 0x3e, 0x0b, 0xd5, 0x9c, 0x8b, 0x61, 0x17, 0x17, 0xa4, 0x39, 0x5a, + 0x14, 0xbf, 0x81, 0xc6, 0x3c, 0x20, 0xb8, 0x25, 0x8c, 0x04, 0x01, 0x4f, 0x7d, 0x56, 0xa1, 0x18, + 0xee, 0x52, 0x01, 0x91, 0x01, 0x1c, 0xad, 0xa1, 0x18, 0x06, 0x21, 0xbf, 0x0b, 0xa9, 0x00, 0x7e, + 0x11, 0x18, 0x74, 0xad, 0x8e, 0x43, 0xe0, 0x02, 0x76, 0x14, 0xbc, 0xfe, 0xc1, 0x9f, 0xd1, 0xe6, + 0x70, 0xf6, 0xb6, 0x43, 0x22, 0xc3, 0xcb, 0x08, 0x05, 0x17, 0x65, 0xfc, 0x05, 0xdd, 0xbe, 0xaf, + 0xf0, 0x04, 0x16, 0xe2, 0x11, 0xf7, 0xf8, 0x41, 0x8e, 0xb8, 0xd5, 0xdf, 0x48, 0xa2, 0xd1, 0x62, + 0xb7, 0xeb, 0x0f, 0x85, 0xe7, 0x50, 0xa6, 0xd8, 0xed, 0xde, 0xd5, 0xaa, 0x62, 0x00, 0x4c, 0xbd, + 0xdb, 0x6d, 0xf4, 0x6c, 0x53, 0x74, 0x3c, 0x62, 0x44, 0xb8, 0x84, 0xc6, 0x8b, 0xdd, 0x6e, 0xad, + 0xb7, 0xda, 0x32, 0x9b, 0x42, 0xf8, 0x79, 0x96, 0x9e, 0xa2, 0xdb, 0x6d, 0x74, 0x01, 0x13, 0xce, + 0x1f, 0x20, 0x97, 0xc1, 0xef, 0xc2, 0xbb, 0x73, 0x1e, 0xfd, 0x3c, 0x05, 0xae, 0x3d, 0xaa, 0x1f, + 0xfa, 0x32, 0x68, 0xdb, 0x8c, 0x4f, 0xc4, 0x42, 0x84, 0x5e, 0xf4, 0x02, 0xad, 0xd2, 0x8a, 0x22, + 0x51, 0xce, 0x03, 0x96, 0xf8, 0x33, 0x28, 0x5b, 0xec, 0x76, 0x85, 0x33, 0x54, 0xb8, 0x28, 0xa7, + 0xa5, 0x42, 0x7d, 0xec, 0x91, 0x4d, 0xbf, 0x86, 0x26, 0xe4, 0xca, 0xf6, 0x15, 0x62, 0xf4, 0x0f, + 0x12, 0xf0, 0x41, 0xc7, 0xdc, 0x71, 0xee, 0x05, 0x94, 0x2a, 0x76, 0xbb, 0x7c, 0x3e, 0x3a, 0x13, + 0xd3, 0x1f, 0xe1, 0x37, 0x38, 0xc5, 0x6e, 0xd7, 0xfb, 0xf4, 0x63, 0xee, 0xa3, 0x7a, 0xa0, 0x4f, + 0xff, 0x06, 0xfb, 0xf4, 0x63, 0xee, 0x89, 0xfa, 0x73, 0x29, 0x34, 0x59, 0xec, 0x76, 0x4f, 0xa3, + 0x9c, 0x3e, 0xae, 0x97, 0x3e, 0xcf, 0x23, 0x24, 0x4c, 0x8f, 0x59, 0xdf, 0xef, 0x7d, 0x54, 0x98, + 0x1a, 0x95, 0x84, 0x26, 0x10, 0x79, 0xea, 0x97, 0xdb, 0x97, 0xfa, 0x7d, 0x35, 0x05, 0x53, 0xf1, + 0x71, 0x8f, 0x5a, 0xf0, 0x51, 0xe9, 0x36, 0xde, 0x07, 0x99, 0x7d, 0xf5, 0xc1, 0x2f, 0x4b, 0x83, + 0x07, 0xa2, 0x66, 0x9e, 0xf6, 0xc2, 0xf0, 0xa1, 0xcc, 0xe2, 0x09, 0x51, 0x98, 0xfc, 0x29, 0xb5, + 0x17, 0x7e, 0x9f, 0x3f, 0xec, 0x6f, 0x52, 0x54, 0xc3, 0x34, 0xb4, 0x10, 0xad, 0xd7, 0x87, 0xd9, + 0x7d, 0xf5, 0xe1, 0x76, 0x12, 0x1e, 0xef, 0xf8, 0x81, 0x01, 0x0e, 0xbf, 0xbb, 0xb8, 0x81, 0x10, + 0xbb, 0x4d, 0xf3, 0x5d, 0xf5, 0xc6, 0xd9, 0x1b, 0x60, 0x16, 0x95, 0x9f, 0xbf, 0x01, 0x0e, 0x48, + 0xfc, 0x5b, 0xff, 0x54, 0xec, 0xad, 0xff, 0x35, 0x94, 0xd3, 0xf4, 0xcd, 0xb7, 0x7b, 0xc4, 0xde, + 0xe2, 0xe6, 0x0c, 0x8b, 0xbb, 0xa3, 0x6f, 0x36, 0xbe, 0x42, 0x81, 0x9a, 0x8f, 0xc6, 0xaa, 0xff, + 0xfa, 0x4b, 0xb8, 0xe5, 0x64, 0x67, 0xb7, 0xfe, 0x9b, 0xaf, 0x83, 0x28, 0x3a, 0x7e, 0x15, 0xa5, + 0x8a, 0xf7, 0xeb, 0x5c, 0xb2, 0x7e, 0xd7, 0x16, 0xef, 0xd7, 0xb9, 0xbc, 0xfa, 0x96, 0xbd, 0x5f, + 0x57, 0xbf, 0x9a, 0x44, 0x38, 0x4a, 0x89, 0x5f, 0x42, 0x23, 0x00, 0x5d, 0xa3, 0x3a, 0x23, 0x66, + 0x3f, 0xda, 0x74, 0x1a, 0x36, 0x40, 0x25, 0xe3, 0xce, 0x23, 0xc5, 0xaf, 0x40, 0x76, 0x35, 0x9e, + 0xc2, 0x43, 0xca, 0x7e, 0xb4, 0xe9, 0x78, 0xf9, 0xc8, 0x42, 0xc9, 0xd5, 0x38, 0x31, 0xd8, 0x85, + 0xf7, 0xeb, 0xf3, 0x96, 0xe3, 0x72, 0x51, 0x33, 0xbb, 0x70, 0xd3, 0x81, 0x94, 0x59, 0x92, 0x5d, + 0xc8, 0xc8, 0x20, 0x17, 0xc2, 0xfd, 0x7a, 0xd1, 0x71, 0x7a, 0x6d, 0x62, 0x68, 0x56, 0xcb, 0x33, + 0x28, 0x59, 0x2e, 0x84, 0x4d, 0xa7, 0xa1, 0x33, 0x14, 0xa4, 0x75, 0x93, 0x72, 0x21, 0x48, 0xa5, + 0xd4, 0x1f, 0xcc, 0xa1, 0x7c, 0x59, 0x77, 0xf5, 0x55, 0xdd, 0x21, 0xc2, 0x6e, 0x7a, 0xd2, 0x83, + 0x79, 0x9f, 0x23, 0xc8, 0xc1, 0x58, 0x8d, 0xf9, 0x9a, 0x70, 0x01, 0xfc, 0xb9, 0x80, 0xaf, 0x9f, + 0xd8, 0x49, 0x4c, 0x7d, 0xb1, 0xda, 0xe8, 0x72, 0xb0, 0x16, 0x21, 0xc4, 0xd7, 0xd1, 0xa8, 0x07, + 0xa3, 0x1b, 0x80, 0x54, 0xa0, 0x33, 0xc6, 0x2a, 0xb5, 0xff, 0x35, 0x11, 0x8d, 0x5f, 0x41, 0x63, + 0xde, 0x4f, 0xc1, 0xb4, 0x66, 0x79, 0x3c, 0x56, 0x23, 0xbb, 0x27, 0x91, 0x54, 0x2c, 0x0a, 0xf3, + 0xdb, 0xb0, 0x54, 0x34, 0x94, 0x2a, 0x43, 0x22, 0xc5, 0x5f, 0x41, 0x13, 0xde, 0x6f, 0xbe, 0x61, + 0x60, 0x59, 0x45, 0xae, 0xfb, 0x59, 0xe3, 0x42, 0x62, 0x9d, 0x91, 0xc9, 0xd9, 0xd6, 0xe1, 0x49, + 0x2f, 0xfb, 0x83, 0xb1, 0x1a, 0xdd, 0x39, 0x84, 0x2a, 0xc0, 0x55, 0x34, 0xe5, 0x41, 0x02, 0x0d, + 0xcd, 0x06, 0x3b, 0x46, 0x63, 0xb5, 0x11, 0xab, 0xa4, 0xd1, 0x52, 0xb8, 0x85, 0x2e, 0x4a, 0x40, + 0xc3, 0x59, 0x37, 0x1f, 0xb8, 0x7c, 0xbb, 0xc7, 0x83, 0xe0, 0xf1, 0xec, 0x38, 0x3e, 0x57, 0x46, + 0xe3, 0xa5, 0xb9, 0x92, 0x73, 0x0a, 0x0c, 0xe4, 0x86, 0xeb, 0xe8, 0xac, 0x87, 0xbf, 0x5d, 0xaa, + 0xd5, 0x6c, 0xeb, 0x3d, 0xd2, 0x74, 0xab, 0x65, 0xbe, 0x5d, 0x86, 0xe0, 0x28, 0xc6, 0x6a, 0x63, + 0xad, 0xd9, 0xa5, 0x4a, 0x41, 0x71, 0x32, 0xf3, 0xd8, 0xc2, 0xf8, 0x1e, 0x3a, 0x27, 0xc0, 0xab, + 0x1d, 0xc7, 0xd5, 0x3b, 0x4d, 0x52, 0x2d, 0xf3, 0x3d, 0x34, 0xec, 0xe7, 0x39, 0x57, 0x93, 0x23, + 0x65, 0xb6, 0xf1, 0xc5, 0xf1, 0x6b, 0x68, 0xdc, 0x43, 0xb0, 0xdb, 0xad, 0x51, 0xb8, 0xdd, 0x82, + 0x21, 0x69, 0xac, 0x36, 0xc2, 0x4f, 0x76, 0x64, 0x62, 0x51, 0xa3, 0x20, 0x69, 0xe7, 0x98, 0xa4, + 0x51, 0xee, 0x56, 0x37, 0x56, 0x19, 0x21, 0x91, 0xe7, 0x1b, 0x81, 0x46, 0x2d, 0xdb, 0xe6, 0x9a, + 0xc9, 0x76, 0xd2, 0xde, 0x2b, 0x9d, 0xd5, 0x86, 0x05, 0xc0, 0x38, 0xfd, 0x60, 0xe4, 0xd3, 0x45, + 0x74, 0x26, 0x46, 0xc7, 0xf6, 0xb5, 0x63, 0xfc, 0x7a, 0x32, 0x68, 0xc4, 0x31, 0xdf, 0x36, 0xce, + 0xa2, 0x9c, 0xf7, 0x25, 0xdc, 0x78, 0x50, 0xfa, 0x0d, 0xcd, 0x30, 0x0f, 0x0f, 0x2f, 0x89, 0xe3, + 0x98, 0x6f, 0x25, 0x1f, 0x87, 0x38, 0x3e, 0x48, 0x04, 0xe2, 0x38, 0xe6, 0xdb, 0xcb, 0x5f, 0x4d, + 0x05, 0x73, 0xd2, 0xe9, 0x1e, 0xf3, 0x71, 0x99, 0xc9, 0x81, 0x6f, 0x57, 0x66, 0x1f, 0x8f, 0x73, + 0x44, 0xd5, 0xcc, 0x1e, 0x50, 0x35, 0x7f, 0x2b, 0xda, 0x9f, 0xcc, 0xf4, 0x3c, 0x96, 0xfd, 0xf9, + 0x18, 0x06, 0x2b, 0xbe, 0x19, 0xac, 0x63, 0xcc, 0x46, 0x1f, 0x16, 0x62, 0xcc, 0xac, 0x72, 0x13, + 0x5d, 0x26, 0xc1, 0x5f, 0x42, 0x17, 0x24, 0x40, 0x4d, 0xb7, 0xf5, 0x36, 0x71, 0x83, 0x3c, 0x35, + 0x10, 0x35, 0xc0, 0x2b, 0xdd, 0xe8, 0xfa, 0x68, 0x31, 0xf7, 0x4d, 0x1f, 0x0e, 0x82, 0x72, 0x64, + 0xf7, 0xe1, 0xf8, 0xf7, 0x9f, 0x92, 0x68, 0xbc, 0x66, 0x39, 0xee, 0x9a, 0x4d, 0x9c, 0x9a, 0x6e, + 0x3b, 0xe4, 0xe4, 0xf6, 0xe8, 0x67, 0xd1, 0x38, 0xbc, 0x46, 0x6d, 0x93, 0x8e, 0x2b, 0xe4, 0x4f, + 0x64, 0x71, 0x2f, 0x3d, 0x04, 0x0f, 0x71, 0x2c, 0x11, 0xe2, 0x02, 0x1a, 0x66, 0x3a, 0x20, 0xbc, + 0x11, 0x66, 0x0a, 0xc0, 0xe0, 0xea, 0x5f, 0x4f, 0xa1, 0x31, 0x4f, 0xca, 0xb3, 0xe6, 0x71, 0x3d, + 0xb3, 0x39, 0x5a, 0x21, 0xdf, 0x40, 0xa8, 0x66, 0xd9, 0xae, 0xde, 0x12, 0x52, 0x9f, 0xc3, 0x66, + 0xa7, 0x0b, 0x50, 0x56, 0x46, 0x20, 0xc1, 0x33, 0x08, 0x09, 0x03, 0x2c, 0x0b, 0x03, 0x6c, 0x62, + 0x67, 0xbb, 0x80, 0x82, 0x71, 0xa5, 0x09, 0x14, 0xea, 0x2f, 0x26, 0xd1, 0xa4, 0xd7, 0x49, 0x95, + 0x47, 0xa4, 0xd9, 0x73, 0x4f, 0xf0, 0x60, 0x90, 0xa5, 0x3d, 0xbc, 0xab, 0xb4, 0xd5, 0xff, 0x2e, + 0x4c, 0x24, 0xa5, 0x96, 0x75, 0x3a, 0x91, 0xfc, 0x71, 0xe8, 0xb8, 0xfa, 0xdd, 0x29, 0x74, 0xd6, + 0x93, 0xfa, 0x5c, 0xaf, 0x03, 0x66, 0x42, 0x49, 0x6f, 0xb5, 0x4e, 0xf2, 0xba, 0x3c, 0xea, 0x09, + 0x62, 0x99, 0x87, 0x77, 0xe0, 0xe1, 0xe6, 0x1f, 0x70, 0x70, 0xc3, 0x32, 0x0d, 0x4d, 0x24, 0xc2, + 0x6f, 0xa0, 0x31, 0xef, 0x67, 0xd1, 0x5e, 0xf3, 0x16, 0x63, 0xd8, 0xf4, 0xfb, 0x85, 0x74, 0x5b, + 0x7a, 0x34, 0x23, 0x15, 0x50, 0xff, 0x73, 0x06, 0x4d, 0xdf, 0x37, 0x3b, 0x86, 0xb5, 0xe9, 0x78, + 0xd9, 0x0a, 0x8e, 0xbd, 0xd1, 0x7b, 0xd4, 0x59, 0x0a, 0xde, 0x46, 0xe7, 0xc2, 0x22, 0xb5, 0xfd, + 0x18, 0x52, 0xbc, 0x77, 0x36, 0x19, 0x41, 0xc3, 0xcb, 0x5b, 0xc0, 0x4f, 0xce, 0xb4, 0xf8, 0x92, + 0xe1, 0xc4, 0x07, 0xd9, 0xbd, 0x24, 0x3e, 0x78, 0x16, 0x65, 0xca, 0x56, 0x5b, 0x37, 0xbd, 0xe7, + 0x93, 0x30, 0x8a, 0xfd, 0x7a, 0x01, 0xa3, 0x71, 0x0a, 0xca, 0x9f, 0x57, 0x0c, 0x5d, 0x36, 0x12, + 0xf0, 0xf7, 0x0a, 0xf4, 0x1c, 0x62, 0x6b, 0x22, 0x11, 0xb6, 0xd0, 0x38, 0xaf, 0x8e, 0x9f, 0x73, + 0x21, 0x38, 0xe7, 0xf2, 0x73, 0x42, 0xf6, 0x57, 0xab, 0x19, 0xa9, 0x1c, 0x3b, 0xf0, 0x62, 0xf9, + 0x18, 0xf8, 0xc7, 0xb0, 0x13, 0x2f, 0x4d, 0xe6, 0x2f, 0x08, 0x01, 0x26, 0x99, 0xd1, 0xa8, 0x10, + 0x60, 0x96, 0x11, 0x89, 0x70, 0x05, 0x4d, 0x15, 0x5b, 0x2d, 0x6b, 0xd3, 0x0f, 0xd6, 0x44, 0x55, + 0x62, 0x0c, 0x02, 0xd6, 0xc2, 0xf1, 0x89, 0x4e, 0x91, 0xf0, 0x71, 0x8d, 0x26, 0x47, 0x6b, 0xd1, + 0x12, 0xd3, 0x6f, 0x22, 0x1c, 0x6d, 0xf3, 0xbe, 0x0e, 0x50, 0x7e, 0x30, 0x89, 0x70, 0x68, 0x1f, + 0x52, 0x39, 0xc1, 0xe6, 0x94, 0xfa, 0xd3, 0x09, 0x34, 0x15, 0x09, 0xa2, 0x86, 0x5f, 0x40, 0x88, + 0x41, 0x84, 0xa0, 0x1f, 0xf0, 0x8a, 0x2e, 0x08, 0xac, 0xc6, 0x97, 0x92, 0x80, 0x0c, 0xdf, 0x40, + 0x39, 0xf6, 0xcb, 0x4f, 0x71, 0x1a, 0x2e, 0xd2, 0xeb, 0x99, 0x86, 0xe6, 0x13, 0x05, 0xb5, 0xc0, + 0x49, 0x5c, 0x2a, 0xb6, 0x88, 0xbb, 0xd5, 0xf5, 0x6b, 0xa1, 0x64, 0xea, 0x37, 0x12, 0x68, 0xcc, + 0x6f, 0x70, 0xd1, 0x38, 0xaa, 0xae, 0xcb, 0xf0, 0x78, 0x74, 0xa9, 0xdd, 0xe2, 0xd1, 0x85, 0xe6, + 0x26, 0x86, 0x55, 0xff, 0x79, 0x02, 0x4d, 0xfa, 0xb4, 0x47, 0x78, 0x54, 0x73, 0xe8, 0x0f, 0xf9, + 0xa1, 0x04, 0x52, 0x66, 0xcd, 0x56, 0xcb, 0xec, 0xac, 0x55, 0x3b, 0x0f, 0x2c, 0xbb, 0x0d, 0x03, + 0xf5, 0xe8, 0xce, 0xe2, 0xd4, 0xef, 0x4b, 0xa0, 0x29, 0xde, 0xa0, 0x92, 0x6e, 0x1b, 0x47, 0x77, + 0x48, 0x1a, 0x6e, 0xc9, 0xd1, 0xf5, 0xb2, 0xfa, 0xff, 0x12, 0x08, 0x2d, 0x58, 0xcd, 0x8d, 0x63, + 0xfe, 0x9e, 0xe5, 0x15, 0x94, 0x61, 0x2f, 0x93, 0xf9, 0x6c, 0x37, 0x35, 0xc3, 0x1e, 0x89, 0xd0, + 0x4f, 0x63, 0x88, 0xd9, 0x09, 0x7e, 0x5f, 0x93, 0x61, 0x2f, 0x9b, 0x35, 0x5e, 0x00, 0x1e, 0x91, + 0x51, 0xb2, 0x63, 0xee, 0xcb, 0xfa, 0x03, 0x09, 0x74, 0x56, 0x23, 0x4d, 0xeb, 0x21, 0xb1, 0xb7, + 0x4a, 0x96, 0x41, 0x6e, 0x93, 0x0e, 0xb1, 0x8f, 0x4a, 0xbf, 0xff, 0x11, 0xc4, 0x9a, 0x0c, 0x1a, + 0x73, 0xd7, 0x21, 0xc6, 0xf1, 0x89, 0x78, 0xaa, 0xfe, 0xfd, 0x2c, 0x52, 0x62, 0x6d, 0xa3, 0x63, + 0x6b, 0x0f, 0xf4, 0x35, 0x78, 0xd3, 0x8f, 0xcb, 0xe0, 0x1d, 0xde, 0x9f, 0xc1, 0x9b, 0xd9, 0xaf, + 0xc1, 0x9b, 0xdd, 0x8b, 0xc1, 0xdb, 0x0e, 0x1b, 0xbc, 0x39, 0x30, 0x78, 0x5f, 0x18, 0x68, 0xf0, + 0x56, 0x3a, 0xc6, 0x01, 0xcd, 0xdd, 0x63, 0x9b, 0xe7, 0xe3, 0x20, 0x76, 0xfa, 0x55, 0x3a, 0xb9, + 0x35, 0x2d, 0xdb, 0x20, 0x06, 0x37, 0xcf, 0xe1, 0x3c, 0xda, 0xe6, 0x30, 0xcd, 0xc7, 0x46, 0x92, + 0xa6, 0x8c, 0xef, 0x25, 0x69, 0xca, 0x63, 0x30, 0xe0, 0x7f, 0x2d, 0x81, 0xa6, 0x4a, 0xc4, 0x76, + 0x59, 0x20, 0x92, 0xc7, 0x71, 0x09, 0x5a, 0x44, 0x93, 0x02, 0x43, 0xb0, 0x45, 0x85, 0x0c, 0xfd, + 0x4d, 0x62, 0xbb, 0xe1, 0x7b, 0xe1, 0x30, 0x3d, 0xad, 0xde, 0x0b, 0x5c, 0xcc, 0xc7, 0xae, 0x5f, + 0xbd, 0x07, 0x67, 0x82, 0x34, 0xf9, 0x2f, 0xcd, 0xa7, 0x57, 0x7f, 0x2a, 0x81, 0xae, 0x68, 0xa4, + 0x43, 0x36, 0xf5, 0xd5, 0x16, 0x11, 0x18, 0xf3, 0xb9, 0x9d, 0x8e, 0x7b, 0xd3, 0x69, 0xeb, 0x6e, + 0x73, 0xfd, 0x50, 0x5f, 0x39, 0x87, 0xc6, 0xc4, 0x19, 0x68, 0x1f, 0xb3, 0x93, 0x54, 0x4e, 0xfd, + 0xbd, 0x24, 0xca, 0xce, 0x5a, 0xee, 0xa1, 0x93, 0x7e, 0x07, 0x93, 0x76, 0x72, 0x1f, 0x7b, 0xfa, + 0xcf, 0x40, 0xe5, 0x42, 0x10, 0x41, 0xb8, 0xf6, 0x5f, 0xb5, 0x22, 0xd1, 0x0f, 0x3d, 0xb2, 0x7d, + 0x06, 0xb6, 0x7e, 0x09, 0x8d, 0xc0, 0x4b, 0x52, 0xe1, 0xd4, 0x0d, 0x9c, 0x6a, 0x5c, 0x0a, 0x0c, + 0xd7, 0x11, 0x90, 0xe2, 0x2f, 0x49, 0xb1, 0x4f, 0x32, 0x87, 0x0f, 0x84, 0x2d, 0xb0, 0x53, 0x7f, + 0x32, 0x8d, 0xc6, 0x3c, 0x07, 0x88, 0x23, 0x92, 0xfb, 0x73, 0x28, 0x33, 0x6f, 0x09, 0x61, 0x0c, + 0xc1, 0x61, 0x62, 0xdd, 0x72, 0x42, 0x9e, 0x20, 0x9c, 0x08, 0xbf, 0x80, 0x72, 0x4b, 0x96, 0x21, + 0xba, 0xfb, 0xc0, 0x58, 0xea, 0x58, 0x46, 0xe4, 0xb9, 0x84, 0x4f, 0x88, 0xaf, 0xa0, 0x34, 0x78, + 0x4a, 0x09, 0x87, 0x9d, 0x21, 0xef, 0x28, 0xc0, 0x0b, 0x3d, 0x9a, 0xd9, 0x6f, 0x8f, 0x66, 0x0f, + 0xda, 0xa3, 0xb9, 0xc7, 0xda, 0xa3, 0xf8, 0x1d, 0x34, 0x06, 0x35, 0x79, 0xe1, 0xb6, 0x77, 0x5f, + 0x56, 0x9e, 0xe0, 0x33, 0xff, 0x38, 0x6b, 0x37, 0x0f, 0xba, 0x0d, 0x13, 0xbe, 0xc4, 0x4a, 0xfd, + 0xad, 0x04, 0xca, 0xde, 0xed, 0x6c, 0x74, 0xac, 0xcd, 0xc3, 0xe9, 0xc9, 0x0b, 0x68, 0x94, 0xb3, + 0x11, 0x66, 0x44, 0x78, 0xb7, 0xd2, 0x63, 0xe0, 0x06, 0x70, 0xd2, 0x44, 0x2a, 0xfc, 0x9a, 0x5f, + 0x08, 0x5c, 0x18, 0x53, 0x41, 0xf8, 0x4e, 0xaf, 0x50, 0x53, 0x8e, 0x38, 0x28, 0x92, 0xe3, 0x8b, + 0x3c, 0x65, 0xbc, 0x10, 0xbf, 0x86, 0x36, 0x85, 0x65, 0x8c, 0x57, 0xff, 0x55, 0x12, 0x4d, 0x84, + 0x8e, 0x29, 0x9e, 0x45, 0x23, 0xfc, 0x98, 0xc0, 0xf4, 0x42, 0x20, 0x82, 0x8b, 0xa3, 0x0f, 0xd4, + 0x72, 0xec, 0xcf, 0xaa, 0x81, 0x3f, 0x8f, 0xb2, 0x96, 0x03, 0x13, 0x39, 0x7c, 0xcb, 0x44, 0xa0, + 0xf8, 0xcb, 0x75, 0xda, 0x76, 0xa6, 0xd2, 0x9c, 0x44, 0xd4, 0x23, 0xcb, 0x81, 0x4f, 0xbb, 0x85, + 0x46, 0x74, 0xc7, 0x21, 0x6e, 0xc3, 0xd5, 0xd7, 0xc4, 0xa8, 0x88, 0x3e, 0x50, 0xd4, 0x69, 0x00, + 0xae, 0xe8, 0x6b, 0xf8, 0x4d, 0x34, 0xde, 0xb4, 0x09, 0x4c, 0xf5, 0x7a, 0x8b, 0xb6, 0x52, 0x30, + 0xc5, 0x24, 0x84, 0x78, 0x32, 0x1c, 0x20, 0xaa, 0x06, 0xbe, 0x87, 0xc6, 0xf9, 0xe7, 0x30, 0xff, + 0x22, 0x18, 0x1e, 0x13, 0xc1, 0xc4, 0xcd, 0x44, 0xc2, 0x3c, 0x8c, 0xb8, 0x9b, 0x99, 0x48, 0x2e, + 0xf2, 0x35, 0x04, 0x52, 0xf5, 0x5b, 0x09, 0x6a, 0x1e, 0x50, 0x80, 0x9f, 0x7d, 0xb2, 0xbd, 0x4f, + 0x5d, 0x69, 0x07, 0x01, 0xe6, 0x33, 0xce, 0x80, 0x39, 0x45, 0xe3, 0x58, 0x3c, 0x83, 0x32, 0x86, + 0x78, 0xda, 0x70, 0x5e, 0xfe, 0x08, 0xaf, 0x1e, 0x8d, 0x53, 0xe1, 0xab, 0x28, 0x4d, 0xcd, 0x3f, + 0xbe, 0xdd, 0x8b, 0x5d, 0xab, 0x34, 0xa0, 0x50, 0xbf, 0x2b, 0x89, 0xc6, 0x84, 0xaf, 0xb9, 0x79, + 0xa8, 0xcf, 0x79, 0x75, 0x6f, 0xcd, 0xe4, 0x1e, 0x8f, 0x00, 0xf3, 0x9b, 0x7c, 0xcb, 0x17, 0xc5, + 0x9e, 0x8e, 0xaa, 0xb9, 0x60, 0x5e, 0xe2, 0x1f, 0x9a, 0xd9, 0xfb, 0x96, 0x81, 0xd2, 0xbf, 0x95, + 0xce, 0x25, 0xf3, 0xa9, 0xb7, 0xd2, 0xb9, 0x74, 0x7e, 0x58, 0xfd, 0x56, 0x0d, 0x0d, 0x2f, 0x77, + 0xc8, 0xf2, 0x03, 0xfc, 0xbc, 0x90, 0x82, 0x82, 0x7f, 0xfc, 0x94, 0xc8, 0x12, 0x10, 0xf3, 0x43, + 0x9a, 0x90, 0xa8, 0xe2, 0x96, 0x18, 0x47, 0x9f, 0xf7, 0x22, 0x16, 0xcb, 0x30, 0xcc, 0xfc, 0x90, + 0x26, 0xc6, 0xdb, 0xbf, 0x25, 0xc6, 0x54, 0xe7, 0xc2, 0x92, 0x4a, 0x31, 0x8c, 0x57, 0x8a, 0x6f, + 0xbe, 0x17, 0xe2, 0x42, 0x98, 0x87, 0xef, 0x07, 0xa2, 0x14, 0xf3, 0x43, 0x5a, 0x7c, 0xe8, 0xf3, + 0x31, 0xf1, 0x4c, 0x9b, 0x8b, 0xfd, 0x6c, 0x68, 0xeb, 0x04, 0xb8, 0xf9, 0x21, 0x4d, 0xa2, 0xc5, + 0x2f, 0xfb, 0x89, 0x6a, 0xe8, 0xb2, 0x1a, 0x76, 0x6d, 0x16, 0x50, 0xf3, 0x43, 0x9a, 0x48, 0x29, + 0x54, 0x5a, 0xb3, 0x4d, 0x3f, 0x8b, 0x44, 0xb8, 0x52, 0xc0, 0x09, 0x95, 0xc2, 0x6f, 0xfc, 0x7a, + 0x28, 0x5d, 0x30, 0x5f, 0x5b, 0xce, 0x85, 0x0a, 0x33, 0xe4, 0xfc, 0x90, 0x16, 0x4a, 0x2e, 0x7c, + 0xd5, 0x4b, 0x51, 0xca, 0x17, 0x8d, 0x09, 0xe1, 0xf0, 0xc1, 0x7c, 0x9f, 0x4a, 0xc9, 0x4b, 0x61, + 0x7a, 0x4b, 0x4c, 0x4d, 0xc9, 0x37, 0x17, 0x38, 0x54, 0x4b, 0xa5, 0x63, 0xd0, 0xde, 0x11, 0x76, + 0xbe, 0x6f, 0x86, 0x93, 0xb8, 0xf1, 0xd4, 0x80, 0xe7, 0x43, 0x25, 0x39, 0x76, 0x7e, 0x48, 0x0b, + 0x27, 0x7d, 0x7b, 0x59, 0x4a, 0x20, 0xc6, 0x1f, 0x2f, 0x86, 0xa5, 0x4a, 0x51, 0x82, 0x54, 0x21, + 0xd5, 0xd8, 0x9b, 0xe1, 0x8c, 0x56, 0xfc, 0xa9, 0xe2, 0xf9, 0xf8, 0xbc, 0x47, 0x42, 0xd5, 0x5e, + 0x06, 0xac, 0x97, 0xa5, 0xcc, 0x43, 0x90, 0xdc, 0x2f, 0xa6, 0x6a, 0xdd, 0xd5, 0xc5, 0xaa, 0xd9, + 0x90, 0x97, 0x72, 0xe0, 0x40, 0xac, 0xed, 0x68, 0x87, 0x02, 0x4e, 0xe8, 0x50, 0x96, 0x2f, 0xe7, + 0x65, 0x29, 0x7c, 0xb3, 0x92, 0x97, 0x2b, 0x15, 0x50, 0xb4, 0x52, 0x31, 0xd0, 0xf3, 0x2d, 0x31, + 0xaa, 0xb1, 0x32, 0x25, 0x77, 0x50, 0x80, 0xa1, 0x1d, 0x24, 0x44, 0x3f, 0x2e, 0x40, 0xc4, 0x54, + 0x05, 0x03, 0xf9, 0xa8, 0xdf, 0xc2, 0x52, 0x6d, 0x7e, 0x48, 0x83, 0x58, 0xaa, 0x2a, 0x8b, 0xc5, + 0xab, 0x9c, 0x01, 0x8a, 0x31, 0x3f, 0xc3, 0xd3, 0x23, 0xd2, 0x9c, 0x1f, 0xd2, 0x58, 0x9c, 0xde, + 0xe7, 0x85, 0xa8, 0x77, 0xca, 0x59, 0x79, 0x8a, 0xf0, 0x11, 0x74, 0x8a, 0x08, 0x62, 0xe3, 0xcd, + 0x45, 0x23, 0xc3, 0x29, 0xe7, 0xe4, 0xf3, 0xaf, 0x30, 0x7e, 0x7e, 0x48, 0x8b, 0x46, 0x93, 0x7b, + 0x59, 0x0a, 0x96, 0xa6, 0x9c, 0x0f, 0xbd, 0x27, 0x08, 0x50, 0x54, 0x5c, 0x62, 0x58, 0xb5, 0xe5, + 0xd8, 0x7c, 0x03, 0xca, 0x05, 0x60, 0xf0, 0xa4, 0xcf, 0x20, 0x4a, 0x32, 0x3f, 0xa4, 0xc5, 0x66, + 0x2a, 0x28, 0x45, 0x42, 0x96, 0x29, 0x8a, 0x7c, 0xf0, 0x12, 0x42, 0xcf, 0x0f, 0x69, 0x91, 0x20, + 0x67, 0xb7, 0xc4, 0x58, 0x61, 0xca, 0x13, 0x72, 0x27, 0x06, 0x18, 0xda, 0x89, 0x42, 0x4c, 0xb1, + 0x5b, 0x62, 0x4c, 0x2b, 0x65, 0x3a, 0x5a, 0x2a, 0x98, 0x39, 0x85, 0xd8, 0x57, 0x5a, 0x7c, 0x08, + 0x29, 0xe5, 0x49, 0x1e, 0x94, 0x94, 0x97, 0x8f, 0xa3, 0x99, 0x1f, 0xd2, 0xe2, 0xc3, 0x4f, 0x69, + 0xf1, 0x51, 0x9c, 0x94, 0x8b, 0x83, 0x78, 0xfa, 0xad, 0x8b, 0x8f, 0x00, 0xa5, 0x0f, 0x88, 0xce, + 0xa3, 0x5c, 0x92, 0x1f, 0x33, 0xf7, 0x25, 0x9c, 0x1f, 0xd2, 0x06, 0xc4, 0xf8, 0xb9, 0xdb, 0x27, + 0x54, 0x8e, 0x72, 0x59, 0x8e, 0x49, 0x1c, 0x4b, 0x34, 0x3f, 0xa4, 0xf5, 0x09, 0xb4, 0x73, 0xb7, + 0x4f, 0x74, 0x17, 0xa5, 0x30, 0x90, 0xad, 0x2f, 0x8f, 0x3e, 0xb1, 0x61, 0x96, 0x63, 0x43, 0xac, + 0x28, 0x4f, 0xc9, 0xaa, 0x1b, 0x43, 0x42, 0x55, 0x37, 0x2e, 0x38, 0xcb, 0x72, 0x6c, 0x4c, 0x10, + 0xe5, 0xe9, 0x01, 0x0c, 0xfd, 0x36, 0xc6, 0x46, 0x13, 0x59, 0x8e, 0x0d, 0xca, 0xa1, 0xa8, 0x32, + 0xc3, 0x18, 0x12, 0xca, 0x30, 0x2e, 0x9c, 0xc7, 0x72, 0x6c, 0x14, 0x09, 0xe5, 0x99, 0x01, 0x0c, + 0x83, 0x16, 0xc6, 0xc5, 0x9f, 0x78, 0x59, 0x0a, 0xe3, 0xa0, 0x7c, 0x42, 0x9e, 0x37, 0x04, 0x14, + 0x9d, 0x37, 0xc4, 0x80, 0x0f, 0xa5, 0xc8, 0x43, 0x55, 0xe5, 0x93, 0xf2, 0x30, 0x0f, 0xa1, 0xe9, + 0x30, 0x0f, 0x3f, 0x6d, 0x2d, 0x45, 0x1e, 0xec, 0x29, 0x57, 0xfa, 0x31, 0x01, 0xb4, 0xcc, 0x84, + 0x3d, 0xf1, 0xab, 0xc6, 0xbc, 0x18, 0x53, 0x3e, 0x25, 0x5f, 0xbc, 0x45, 0x08, 0xe6, 0x87, 0xb4, + 0x98, 0x77, 0x66, 0x5a, 0xbc, 0x7b, 0xb4, 0x72, 0x55, 0x1e, 0xb6, 0x71, 0x34, 0x74, 0xd8, 0xc6, + 0xba, 0x56, 0x2f, 0xc4, 0x5d, 0x8d, 0x2b, 0xd7, 0x64, 0xc3, 0x2c, 0x4a, 0x41, 0x0d, 0xb3, 0x98, + 0x2b, 0x75, 0x2d, 0xde, 0xe1, 0x57, 0x79, 0x76, 0x60, 0x0b, 0x81, 0x26, 0xa6, 0x85, 0xcc, 0xff, + 0x35, 0xb0, 0x9d, 0xee, 0x76, 0x21, 0xf3, 0xfb, 0xa7, 0x63, 0x6d, 0x27, 0x86, 0x14, 0x6c, 0x27, + 0x06, 0xa0, 0xab, 0xbc, 0x78, 0x75, 0xac, 0x5c, 0x97, 0x57, 0x79, 0x11, 0x47, 0x57, 0x79, 0xe9, + 0x9a, 0xb9, 0x14, 0xb9, 0xb0, 0x55, 0x9e, 0x93, 0x15, 0x20, 0x84, 0xa6, 0x0a, 0x10, 0xbe, 0xe2, + 0x7d, 0xb7, 0xff, 0x65, 0xa9, 0x32, 0x03, 0xdc, 0x9e, 0xf2, 0x73, 0x58, 0xf6, 0xa1, 0x9b, 0x1f, + 0xd2, 0xfa, 0x5f, 0xb8, 0x56, 0x63, 0xee, 0x3e, 0x95, 0x1b, 0xb2, 0x82, 0x45, 0x08, 0xa8, 0x82, + 0x45, 0x6f, 0x4c, 0xab, 0x31, 0x97, 0x97, 0xca, 0x67, 0xfa, 0xb2, 0xf2, 0xbf, 0x39, 0xe6, 0xca, + 0xf3, 0x96, 0x78, 0xfb, 0xa8, 0x3c, 0x2f, 0x2f, 0x76, 0x01, 0x86, 0x2e, 0x76, 0xc2, 0x2d, 0xe5, + 0x2d, 0xf1, 0xc6, 0x4e, 0xb9, 0x19, 0x2d, 0x15, 0x2c, 0x91, 0xc2, 0xcd, 0x9e, 0x16, 0x7f, 0x41, + 0xa6, 0xbc, 0x20, 0x6b, 0x5d, 0x1c, 0x0d, 0xd5, 0xba, 0xd8, 0xcb, 0xb5, 0xb9, 0xe8, 0x3d, 0x97, + 0x72, 0x2b, 0x7c, 0xf3, 0x27, 0xe3, 0xa9, 0xe5, 0x13, 0xb9, 0x1b, 0x7b, 0x33, 0xfc, 0x76, 0x47, + 0x79, 0x31, 0xb4, 0xbf, 0x94, 0xb0, 0xd4, 0xbe, 0x0d, 0xbd, 0xf5, 0x79, 0x33, 0xfc, 0xdc, 0x45, + 0x79, 0x29, 0x9e, 0x83, 0xaf, 0x2b, 0xe1, 0xe7, 0x31, 0x6f, 0x86, 0x5f, 0x88, 0x28, 0x2f, 0xc7, + 0x73, 0xf0, 0xa5, 0x1b, 0x7e, 0x51, 0xf2, 0xbc, 0x10, 0xb3, 0x42, 0xf9, 0xac, 0x6c, 0x3a, 0xfa, + 0x08, 0x6a, 0x3a, 0x06, 0x91, 0x2d, 0x9e, 0x17, 0x62, 0x3d, 0x28, 0xaf, 0x44, 0x8a, 0xf8, 0x8d, + 0x15, 0x22, 0x42, 0x3c, 0x2f, 0xc4, 0x48, 0x50, 0x5e, 0x8d, 0x14, 0xf1, 0x5b, 0x27, 0x44, 0x52, + 0x30, 0x06, 0xb9, 0xd0, 0x29, 0x9f, 0x03, 0x1e, 0xea, 0xee, 0x5e, 0x51, 0xf3, 0x43, 0xda, 0x20, + 0x57, 0xbc, 0x77, 0xfb, 0xdf, 0x1a, 0x2a, 0xaf, 0xc9, 0x43, 0xb8, 0x1f, 0x1d, 0x1d, 0xc2, 0x7d, + 0x6f, 0x1e, 0x5f, 0x0f, 0xb9, 0xd3, 0x2b, 0xaf, 0xcb, 0x53, 0x9c, 0x84, 0xa4, 0x53, 0x5c, 0xd8, + 0xf9, 0x5e, 0xf2, 0x13, 0x57, 0x3e, 0x2f, 0x4f, 0x71, 0x22, 0x8e, 0x4e, 0x71, 0x92, 0x4f, 0x79, + 0x29, 0xe2, 0xbe, 0xac, 0xbc, 0x21, 0x4f, 0x71, 0x21, 0x34, 0x9d, 0xe2, 0xc2, 0x0e, 0xcf, 0xaf, + 0x87, 0xbc, 0x78, 0x95, 0x37, 0xe3, 0xdb, 0x0f, 0x48, 0xb1, 0xfd, 0xcc, 0xe7, 0x57, 0x8b, 0x77, + 0x47, 0x55, 0x8a, 0xf2, 0xf8, 0x8d, 0xa3, 0xa1, 0xe3, 0x37, 0xd6, 0x95, 0x75, 0x39, 0x36, 0x23, + 0x90, 0x32, 0x3b, 0x60, 0xe3, 0x10, 0x98, 0x22, 0x71, 0xb9, 0x84, 0xc4, 0x3d, 0x32, 0xdb, 0x08, + 0x95, 0xfa, 0xec, 0x91, 0xbd, 0x6d, 0x50, 0x88, 0x9e, 0xce, 0xae, 0x91, 0x4b, 0x2c, 0xa5, 0x2c, + 0xcf, 0xae, 0x11, 0x02, 0x3a, 0xbb, 0x46, 0xaf, 0xbe, 0xe6, 0x50, 0x9e, 0x6b, 0x51, 0x90, 0xd5, + 0xbe, 0x12, 0xf2, 0x06, 0x0b, 0xe1, 0xe9, 0xec, 0x14, 0x86, 0xc1, 0x7a, 0xcd, 0x60, 0xa5, 0x96, + 0xd9, 0x5d, 0xb5, 0x74, 0xdb, 0xa8, 0x93, 0x8e, 0xa1, 0xcc, 0x85, 0xd6, 0xeb, 0x18, 0x1a, 0x58, + 0xaf, 0x63, 0xe0, 0xf0, 0x5e, 0x25, 0x04, 0xe7, 0x79, 0x67, 0x95, 0xdb, 0xc0, 0xb6, 0xd0, 0x8f, + 0x2d, 0x27, 0x9b, 0x1f, 0xd2, 0xfa, 0x71, 0xa0, 0xb6, 0xfa, 0xe2, 0x56, 0xfd, 0xed, 0x05, 0xdf, + 0x03, 0xba, 0x66, 0x93, 0xae, 0x6e, 0x13, 0x65, 0x5e, 0xb6, 0xd5, 0x63, 0x89, 0xa8, 0xad, 0x1e, + 0x8b, 0x88, 0xb2, 0xf5, 0xc6, 0x42, 0x75, 0x10, 0xdb, 0x60, 0x44, 0xc4, 0x97, 0xa6, 0xb3, 0x93, + 0x8c, 0xa0, 0x02, 0x5a, 0xb0, 0x3a, 0x6b, 0x70, 0x52, 0xf1, 0x96, 0x3c, 0x3b, 0xf5, 0xa7, 0xa4, + 0xb3, 0x53, 0x7f, 0x2c, 0x55, 0x75, 0x19, 0xcb, 0xc6, 0xe0, 0x1d, 0x59, 0xd5, 0x63, 0x48, 0xa8, + 0xaa, 0xc7, 0x80, 0xa3, 0x0c, 0x35, 0xe2, 0x10, 0x57, 0x59, 0x18, 0xc4, 0x10, 0x48, 0xa2, 0x0c, + 0x01, 0x1c, 0x65, 0x38, 0x47, 0xdc, 0xe6, 0xba, 0xb2, 0x38, 0x88, 0x21, 0x90, 0x44, 0x19, 0x02, + 0x98, 0x6e, 0x36, 0x65, 0xf0, 0x6c, 0xaf, 0xb5, 0xe1, 0xf5, 0xd9, 0x92, 0xbc, 0xd9, 0xec, 0x4b, + 0x48, 0x37, 0x9b, 0x7d, 0x91, 0xf8, 0x6b, 0x7b, 0xbe, 0xa2, 0x55, 0x96, 0xa1, 0xc2, 0x99, 0xc0, + 0x2e, 0xd8, 0x4b, 0xa9, 0xf9, 0x21, 0x6d, 0xaf, 0x57, 0xc0, 0x9f, 0xf6, 0x6f, 0x77, 0x94, 0x1a, + 0x54, 0x35, 0xe9, 0x9f, 0x55, 0x30, 0xf0, 0xfc, 0x90, 0xe6, 0xdf, 0xff, 0xbc, 0x8c, 0x46, 0xe1, + 0xa3, 0xaa, 0x1d, 0xd3, 0x2d, 0xcf, 0x2a, 0x6f, 0xcb, 0x5b, 0x26, 0x01, 0x45, 0xb7, 0x4c, 0xc2, + 0x4f, 0x3a, 0x89, 0xc3, 0x4f, 0x36, 0xc5, 0x94, 0x67, 0x15, 0x4d, 0x9e, 0xc4, 0x25, 0x24, 0x9d, + 0xc4, 0x25, 0x80, 0x5f, 0x6f, 0xd9, 0xb6, 0xba, 0xe5, 0x59, 0xa5, 0x1e, 0x53, 0x2f, 0x43, 0xf9, + 0xf5, 0xb2, 0x9f, 0x7e, 0xbd, 0xf5, 0xf5, 0x9e, 0x5b, 0xa6, 0xdf, 0xb8, 0x12, 0x53, 0xaf, 0x87, + 0xf4, 0xeb, 0xf5, 0x00, 0x74, 0x2a, 0x04, 0x40, 0xcd, 0xb6, 0xe8, 0xa4, 0x7d, 0xc7, 0x6c, 0xb5, + 0x94, 0xbb, 0xf2, 0x54, 0x18, 0xc6, 0xd3, 0xa9, 0x30, 0x0c, 0xa3, 0xa6, 0x27, 0x6b, 0x15, 0x59, + 0xed, 0xad, 0x29, 0xf7, 0x64, 0xd3, 0x33, 0xc0, 0x50, 0xd3, 0x33, 0xf8, 0x05, 0xbb, 0x0b, 0xfa, + 0x4b, 0x23, 0x0f, 0x6c, 0xe2, 0xac, 0x2b, 0xf7, 0x43, 0xbb, 0x0b, 0x01, 0x07, 0xbb, 0x0b, 0xe1, + 0x37, 0x5e, 0x43, 0x4f, 0x4a, 0x0b, 0x8d, 0xe7, 0x29, 0x56, 0x27, 0xba, 0xdd, 0x5c, 0x57, 0xbe, + 0x00, 0xac, 0x9e, 0x89, 0x5d, 0xaa, 0x64, 0xd2, 0xf9, 0x21, 0x6d, 0x10, 0x27, 0xd8, 0x96, 0xbf, + 0xbd, 0xc0, 0x1e, 0x96, 0x6a, 0xb5, 0x92, 0xb7, 0x09, 0x7d, 0x27, 0xb4, 0x2d, 0x8f, 0x92, 0xc0, + 0xb6, 0x3c, 0x0a, 0xc6, 0x5d, 0x74, 0x39, 0xb4, 0x55, 0x5b, 0xd4, 0x5b, 0x74, 0x5f, 0x42, 0x8c, + 0x9a, 0xde, 0xdc, 0x20, 0xae, 0xf2, 0x45, 0xe0, 0x7d, 0xa5, 0xcf, 0x86, 0x2f, 0x44, 0x3d, 0x3f, + 0xa4, 0xed, 0xc2, 0x0f, 0xab, 0x2c, 0xe7, 0x8c, 0xf2, 0x25, 0xf9, 0x7c, 0x93, 0xc2, 0xe6, 0x87, + 0x34, 0x96, 0x8f, 0xe6, 0x5d, 0xa4, 0xdc, 0xed, 0xae, 0xd9, 0xba, 0x41, 0x98, 0xa1, 0x05, 0xb6, + 0x1b, 0x37, 0x40, 0xbf, 0x43, 0xb6, 0xd2, 0xfa, 0xd1, 0x51, 0x2b, 0xad, 0x1f, 0x8e, 0x2a, 0xaa, + 0x14, 0x43, 0x49, 0xf9, 0xb2, 0xac, 0xa8, 0x12, 0x92, 0x2a, 0xaa, 0x1c, 0x71, 0xe9, 0x0b, 0xe8, + 0xbc, 0xbf, 0x9f, 0xe7, 0xeb, 0x2f, 0xeb, 0x34, 0xe5, 0x5d, 0xe0, 0x73, 0x39, 0x72, 0x19, 0x20, + 0x51, 0xcd, 0x0f, 0x69, 0x7d, 0xca, 0xd3, 0x15, 0x37, 0x12, 0x1e, 0x90, 0x9b, 0x17, 0xdf, 0x29, + 0xaf, 0xb8, 0x7d, 0xc8, 0xe8, 0x8a, 0xdb, 0x07, 0x15, 0xcb, 0x9c, 0x0b, 0x55, 0xdf, 0x85, 0xb9, + 0x2f, 0xd3, 0x7e, 0x1c, 0x62, 0x99, 0x73, 0x4b, 0x6d, 0x75, 0x17, 0xe6, 0xbe, 0xb5, 0xd6, 0x8f, + 0x03, 0xbe, 0x8a, 0x32, 0xf5, 0xfa, 0xa2, 0xd6, 0xeb, 0x28, 0xcd, 0xd0, 0xb5, 0x1c, 0x40, 0xe7, + 0x87, 0x34, 0x8e, 0xa7, 0x66, 0x50, 0xa5, 0xa5, 0x3b, 0xae, 0xd9, 0x74, 0x60, 0xc4, 0x78, 0x23, + 0xc4, 0x90, 0xcd, 0xa0, 0x38, 0x1a, 0x6a, 0x06, 0xc5, 0xc1, 0xa9, 0xbd, 0x58, 0xd2, 0x1d, 0x47, + 0xef, 0x18, 0xb6, 0x3e, 0x0b, 0xcb, 0x04, 0x09, 0xa5, 0x1d, 0x97, 0xb0, 0xd4, 0x5e, 0x94, 0x21, + 0x70, 0xf8, 0xee, 0x41, 0x3c, 0x33, 0xe7, 0x41, 0xe8, 0xf0, 0x3d, 0x84, 0x87, 0xc3, 0xf7, 0x10, + 0x0c, 0xec, 0x4e, 0x0f, 0xa6, 0x91, 0x35, 0x13, 0x32, 0xc4, 0xad, 0x85, 0xec, 0xce, 0x30, 0x01, + 0xd8, 0x9d, 0x61, 0xa0, 0xd4, 0x24, 0x6f, 0xb9, 0x5d, 0xef, 0xd3, 0xa4, 0x60, 0x95, 0x8d, 0x94, + 0xa1, 0xeb, 0x77, 0x30, 0x38, 0xca, 0x5b, 0x1d, 0xbd, 0x6d, 0x95, 0x67, 0x3d, 0xa9, 0x9b, 0xf2, + 0xfa, 0xdd, 0x97, 0x90, 0xae, 0xdf, 0x7d, 0x91, 0x74, 0x76, 0xf5, 0x36, 0x5a, 0xeb, 0xba, 0x4d, + 0x0c, 0x3f, 0x6f, 0x12, 0xdb, 0x1a, 0xbe, 0x27, 0xcf, 0xae, 0x03, 0x48, 0xe9, 0xec, 0x3a, 0x00, + 0x4d, 0x8d, 0xbc, 0x78, 0xb4, 0x46, 0x74, 0x43, 0xd9, 0x90, 0x8d, 0xbc, 0xfe, 0x94, 0xd4, 0xc8, + 0xeb, 0x8f, 0xed, 0xff, 0x39, 0xf7, 0x6d, 0xd3, 0x25, 0x4a, 0x6b, 0x2f, 0x9f, 0x03, 0xa4, 0xfd, + 0x3f, 0x07, 0xd0, 0x74, 0x43, 0x18, 0xee, 0x90, 0xb6, 0xbc, 0x21, 0x8c, 0x76, 0x43, 0xb8, 0x04, + 0xb5, 0x58, 0xb8, 0xbf, 0x98, 0xd2, 0x91, 0x2d, 0x16, 0x0e, 0xa6, 0x16, 0x4b, 0xe0, 0x51, 0x26, + 0x79, 0x3a, 0x29, 0x96, 0xbc, 0x86, 0x8a, 0x38, 0xba, 0x86, 0x4a, 0x5e, 0x51, 0x2f, 0x4b, 0x0e, + 0x0d, 0x4a, 0x57, 0xb6, 0x3a, 0x04, 0x14, 0xb5, 0x3a, 0x44, 0xd7, 0x87, 0x12, 0x9a, 0xf4, 0x53, + 0xe8, 0xf3, 0xb9, 0xf2, 0x2b, 0xf2, 0x67, 0x86, 0xd0, 0xf4, 0x33, 0x43, 0x20, 0x89, 0x09, 0x9f, + 0xb6, 0xec, 0x3e, 0x4c, 0x82, 0xf3, 0xc1, 0x10, 0x08, 0x2f, 0x20, 0x5c, 0x2f, 0x2e, 0x2e, 0x54, + 0x8d, 0x9a, 0x78, 0x45, 0xe6, 0xc8, 0x27, 0xb0, 0x51, 0x8a, 0xf9, 0x21, 0x2d, 0xa6, 0x1c, 0x7e, + 0x0f, 0x5d, 0xe4, 0x50, 0xee, 0xce, 0x0b, 0xd9, 0x2d, 0x0c, 0x7f, 0x41, 0x70, 0x81, 0xef, 0x27, + 0x42, 0x7c, 0x63, 0x69, 0xe7, 0x87, 0xb4, 0x81, 0xbc, 0xfa, 0xd7, 0xc5, 0xd7, 0x87, 0xde, 0x5e, + 0xea, 0xf2, 0x17, 0x89, 0x81, 0xbc, 0xfa, 0xd7, 0xc5, 0xe5, 0xfe, 0x70, 0x2f, 0x75, 0xf9, 0x9d, + 0x30, 0x90, 0x17, 0x76, 0x50, 0x61, 0x10, 0xbe, 0xd8, 0x6a, 0x29, 0x9b, 0x50, 0xdd, 0xa7, 0xf6, + 0x52, 0x5d, 0x11, 0x0c, 0xce, 0xdd, 0x38, 0xd2, 0x59, 0x7a, 0xb9, 0x4b, 0x3a, 0x75, 0x69, 0x01, + 0x7a, 0x24, 0xcf, 0xd2, 0x11, 0x02, 0x3a, 0x4b, 0x47, 0x80, 0x74, 0x40, 0x89, 0x7e, 0x31, 0xca, + 0x96, 0x3c, 0xa0, 0x44, 0x1c, 0x1d, 0x50, 0x92, 0x0f, 0xcd, 0x32, 0x3a, 0xb3, 0xbc, 0xe1, 0xea, + 0x9e, 0x05, 0xe9, 0xf0, 0xae, 0x7c, 0x3f, 0x74, 0xc9, 0x14, 0x25, 0x81, 0x4b, 0xa6, 0x28, 0x98, + 0x8e, 0x11, 0x0a, 0xae, 0x6f, 0x75, 0x9a, 0x73, 0xba, 0xd9, 0xea, 0xd9, 0x44, 0xf9, 0x13, 0xf2, + 0x18, 0x09, 0xa1, 0xe9, 0x18, 0x09, 0x81, 0xe8, 0x02, 0x4d, 0x41, 0x45, 0xc7, 0x31, 0xd7, 0x3a, + 0x7c, 0x5f, 0xd9, 0x6b, 0xb9, 0xca, 0x9f, 0x94, 0x17, 0xe8, 0x38, 0x1a, 0xba, 0x40, 0xc7, 0xc1, + 0xe1, 0xd4, 0x29, 0x26, 0xf3, 0x8b, 0xf2, 0xa7, 0x42, 0xa7, 0x4e, 0x31, 0x34, 0x70, 0xea, 0x14, + 0x97, 0x35, 0x66, 0x0e, 0xe5, 0x83, 0xdc, 0xda, 0x9c, 0xdf, 0x9f, 0x96, 0xd7, 0xc7, 0x30, 0x9e, + 0xae, 0x8f, 0x61, 0x98, 0xcc, 0x87, 0x77, 0xc1, 0x9f, 0xe9, 0xc7, 0xc7, 0x97, 0x7f, 0xa4, 0x0c, + 0xbe, 0x2d, 0xf2, 0xe1, 0x23, 0xe5, 0xbb, 0x12, 0xfd, 0x18, 0xf9, 0xc3, 0x23, 0x52, 0x48, 0x66, + 0xc4, 0xb2, 0xb8, 0x2b, 0x5f, 0xed, 0xcb, 0x88, 0x11, 0xc8, 0x8c, 0x18, 0x0c, 0xbf, 0x83, 0xce, + 0x07, 0xb0, 0x45, 0xd2, 0x5e, 0xf5, 0x67, 0xa6, 0x3f, 0x9b, 0x90, 0xcd, 0xe0, 0x78, 0x32, 0x6a, + 0x06, 0xc7, 0x63, 0xe2, 0x58, 0x73, 0xd1, 0xfd, 0xb9, 0x5d, 0x58, 0xfb, 0x12, 0xec, 0xc3, 0x20, + 0x8e, 0x35, 0x97, 0xe6, 0x77, 0xef, 0xc2, 0xda, 0x97, 0x69, 0x1f, 0x06, 0xf8, 0xfb, 0x13, 0xe8, + 0x4a, 0x3c, 0xaa, 0xd8, 0x6a, 0xcd, 0x59, 0x76, 0x80, 0x53, 0xbe, 0x27, 0x21, 0x1f, 0x34, 0xec, + 0xad, 0xd8, 0xfc, 0x90, 0xb6, 0xc7, 0x0a, 0xf0, 0xe7, 0xd1, 0x78, 0xb1, 0x67, 0x98, 0x2e, 0x5c, + 0xbc, 0x51, 0xc3, 0xf9, 0x7b, 0x13, 0xa1, 0x2d, 0x8e, 0x88, 0x85, 0x2d, 0x8e, 0x08, 0xc0, 0x6f, + 0xa1, 0xa9, 0x3a, 0x69, 0xf6, 0x6c, 0xd3, 0xdd, 0xd2, 0x20, 0xab, 0x0f, 0xe5, 0xf1, 0x7d, 0x09, + 0x79, 0x12, 0x8b, 0x50, 0xd0, 0x49, 0x2c, 0x02, 0xc4, 0xf7, 0xfa, 0x64, 0x91, 0x51, 0xbe, 0x96, + 0x18, 0x78, 0x2d, 0xef, 0xf7, 0x65, 0x9f, 0x24, 0x34, 0xb5, 0xd8, 0x4c, 0x21, 0xca, 0xf7, 0x27, + 0x06, 0x5c, 0xa3, 0x0b, 0x33, 0x5c, 0x4c, 0x92, 0x91, 0x5a, 0x6c, 0x2e, 0x08, 0xe5, 0x07, 0x12, + 0x03, 0xae, 0xbd, 0x03, 0x8e, 0x71, 0x69, 0x24, 0x5e, 0x14, 0x93, 0xb8, 0x29, 0x7f, 0x3e, 0x11, + 0x75, 0x15, 0xf1, 0xcb, 0x8b, 0xd9, 0xde, 0x5e, 0x64, 0xae, 0x79, 0xbc, 0xd8, 0xd7, 0x13, 0x51, + 0xdf, 0xbc, 0xa0, 0x58, 0xf0, 0x6b, 0x36, 0x8b, 0x86, 0x61, 0xf2, 0x57, 0x7f, 0x2c, 0x81, 0xc6, + 0xea, 0xae, 0x4d, 0xf4, 0x36, 0xf7, 0x00, 0x9f, 0x46, 0x39, 0x76, 0x8b, 0x5a, 0x2d, 0xf3, 0x87, + 0x1a, 0xfe, 0x6f, 0x7c, 0x05, 0x4d, 0x2c, 0xe8, 0x8e, 0x0b, 0x25, 0xab, 0x1d, 0x83, 0x3c, 0x02, + 0x0f, 0xc2, 0x94, 0x16, 0x82, 0xe2, 0x05, 0x46, 0xc7, 0xca, 0xc1, 0x93, 0x97, 0xd4, 0xae, 0x8e, + 0xcf, 0xb9, 0x0f, 0xb6, 0x0b, 0x43, 0xe0, 0xe7, 0x1c, 0x2a, 0xab, 0x7e, 0x2b, 0x81, 0x22, 0xf7, + 0xbb, 0x07, 0xf7, 0x77, 0x5e, 0x46, 0x93, 0xa1, 0x67, 0x56, 0xdc, 0x0d, 0x72, 0x8f, 0xaf, 0xb0, + 0xc2, 0xa5, 0xf1, 0xa7, 0x7c, 0xf7, 0xbb, 0xbb, 0xda, 0x02, 0x77, 0x6a, 0xcf, 0x42, 0x6e, 0x62, + 0xbb, 0xa5, 0x09, 0x28, 0xee, 0xbe, 0xf9, 0x97, 0x27, 0x83, 0x37, 0x24, 0xf8, 0x0a, 0x7f, 0x42, + 0x96, 0x08, 0x5c, 0xe1, 0x43, 0xc1, 0x2e, 0xd9, 0x93, 0xb1, 0xcf, 0xa3, 0xb1, 0x6a, 0xbb, 0x4b, + 0x6c, 0xc7, 0xea, 0xe8, 0xae, 0xe5, 0x05, 0xd5, 0x07, 0x87, 0x6b, 0x53, 0x80, 0x8b, 0x4e, 0xc0, + 0x22, 0x3d, 0xbe, 0xe6, 0x65, 0x08, 0x4b, 0xc1, 0xeb, 0x9d, 0x33, 0x31, 0x19, 0xc2, 0xbc, 0x3c, + 0x5f, 0xd7, 0xd0, 0xf0, 0x5d, 0x47, 0x07, 0x47, 0x4d, 0x9f, 0xb4, 0x47, 0x01, 0x22, 0x29, 0x50, + 0xe0, 0xeb, 0x28, 0x03, 0x86, 0xad, 0xa3, 0x0c, 0x03, 0x2d, 0x38, 0xe8, 0xb7, 0x00, 0x22, 0x3a, + 0x56, 0x33, 0x1a, 0x7c, 0x07, 0xe5, 0x83, 0x5d, 0x3b, 0xa4, 0x81, 0xf0, 0xe2, 0x67, 0x40, 0xe0, + 0xc9, 0x0d, 0x1f, 0xc7, 0xf2, 0x47, 0x88, 0x2c, 0x22, 0x05, 0xf1, 0x3c, 0x9a, 0x0c, 0x60, 0x54, + 0x44, 0x5e, 0xdc, 0x1e, 0x08, 0xbc, 0x2a, 0xf0, 0xa2, 0xe2, 0x14, 0x59, 0x85, 0x8b, 0xe1, 0x2a, + 0xca, 0x7a, 0xde, 0xf9, 0xb9, 0x5d, 0x95, 0xf4, 0x0c, 0xf7, 0xce, 0xcf, 0x8a, 0x7e, 0xf9, 0x5e, + 0x79, 0x3c, 0x87, 0x26, 0x34, 0xab, 0xe7, 0x92, 0x15, 0xcb, 0xcb, 0xc9, 0x3e, 0x12, 0x04, 0x83, + 0xb5, 0x29, 0xa6, 0xe1, 0x5a, 0x5e, 0xdc, 0x4e, 0x31, 0x7e, 0xa4, 0x5c, 0x0a, 0x2f, 0xc5, 0xa5, + 0x77, 0x17, 0xa2, 0x69, 0x0a, 0x9f, 0x17, 0x65, 0x16, 0x93, 0xcf, 0xfd, 0x7b, 0x13, 0x28, 0xb3, + 0x62, 0xeb, 0xa6, 0xeb, 0x70, 0x1f, 0xcf, 0x73, 0x33, 0x9b, 0xb6, 0xde, 0xa5, 0xfa, 0x31, 0x03, + 0xcf, 0xb3, 0x20, 0x9d, 0xb5, 0x33, 0x7b, 0x9f, 0x7e, 0xdd, 0xbf, 0xdf, 0x2e, 0x7c, 0x6e, 0x1f, + 0x99, 0xdb, 0x6e, 0xf8, 0x9c, 0x58, 0x0d, 0x54, 0x05, 0x5c, 0xf8, 0x4b, 0x54, 0x01, 0x86, 0xc3, + 0x4b, 0x74, 0x8e, 0x83, 0x4f, 0x2d, 0x76, 0xbb, 0xdc, 0x61, 0x54, 0x98, 0xe2, 0x3c, 0x0c, 0x53, + 0x6c, 0x5f, 0x60, 0x7a, 0x57, 0x4c, 0x26, 0x22, 0x70, 0xa0, 0x5a, 0xb0, 0xc2, 0x5b, 0xe4, 0x89, + 0x69, 0x3c, 0x90, 0xb8, 0xd7, 0xd8, 0x18, 0x21, 0x85, 0x8b, 0xe1, 0x55, 0x34, 0xc9, 0xf9, 0xfa, + 0x91, 0x16, 0x26, 0xe4, 0x59, 0x21, 0x84, 0x66, 0x4a, 0xeb, 0xb7, 0xd1, 0xe0, 0x60, 0xb1, 0x8e, + 0x50, 0x09, 0x3c, 0x1b, 0x04, 0x82, 0x83, 0xcc, 0x25, 0xca, 0x24, 0x68, 0xec, 0xc5, 0x9d, 0xed, + 0x82, 0xe2, 0x95, 0x67, 0x09, 0x4f, 0xe2, 0xc2, 0x9a, 0x42, 0x11, 0x91, 0x07, 0xd3, 0xfa, 0x7c, + 0x0c, 0x8f, 0xb0, 0xce, 0xcb, 0x45, 0x70, 0x09, 0x8d, 0xfb, 0xfe, 0x2a, 0x77, 0xef, 0x56, 0xcb, + 0xe0, 0x91, 0xca, 0x53, 0x74, 0x84, 0x82, 0x38, 0x88, 0x4c, 0xa4, 0x32, 0xf8, 0x05, 0x94, 0x63, + 0x1e, 0x9f, 0x55, 0xe6, 0xa2, 0xea, 0xbd, 0xa2, 0x03, 0x58, 0xc3, 0x14, 0x7b, 0xcc, 0x27, 0xc4, + 0xaf, 0xa3, 0xd1, 0xe2, 0xfd, 0x3a, 0x9d, 0x67, 0x8a, 0xda, 0x92, 0xa3, 0x9c, 0x09, 0xa2, 0xe7, + 0x40, 0x64, 0x5b, 0xab, 0x45, 0x1a, 0xba, 0x2d, 0x4d, 0x1e, 0x22, 0x3d, 0xae, 0xa0, 0x09, 0xe9, + 0xc8, 0xdb, 0x51, 0xce, 0x02, 0x07, 0x96, 0x5c, 0x84, 0x65, 0x4d, 0xe7, 0xf9, 0x6d, 0xa4, 0xf0, + 0xbd, 0x72, 0x21, 0xaa, 0x35, 0x65, 0xd3, 0x81, 0x48, 0x24, 0x1a, 0x31, 0x1d, 0xa7, 0x47, 0xc0, + 0xbf, 0x35, 0xc7, 0xb4, 0xc6, 0xe0, 0xa8, 0x86, 0xcd, 0x70, 0x52, 0x70, 0x65, 0xb9, 0x18, 0x7e, + 0x0f, 0x61, 0x88, 0x5d, 0x42, 0x0c, 0x6f, 0x07, 0x54, 0x2d, 0x3b, 0xca, 0x79, 0x78, 0xa6, 0x8a, + 0xc3, 0x8f, 0xc5, 0xab, 0xe5, 0xd9, 0x2b, 0x7c, 0xfa, 0xb8, 0xac, 0xb3, 0x52, 0x0d, 0x3f, 0xb7, + 0x8c, 0x69, 0x88, 0x2d, 0x8e, 0xe1, 0x8a, 0x37, 0xd1, 0x85, 0x9a, 0x4d, 0x1e, 0x9a, 0x56, 0xcf, + 0xf1, 0x96, 0x0f, 0x6f, 0xde, 0xba, 0xb0, 0xeb, 0xbc, 0xf5, 0x34, 0xaf, 0xf8, 0x5c, 0xd7, 0x26, + 0x0f, 0x1b, 0xde, 0xe3, 0x44, 0xe9, 0x75, 0x51, 0x3f, 0xee, 0x54, 0x5c, 0xc5, 0xf7, 0x7b, 0x36, + 0xe1, 0x70, 0x93, 0x38, 0x8a, 0x12, 0x4c, 0xb5, 0x3a, 0x45, 0x79, 0x1c, 0x4d, 0x49, 0x75, 0xc3, + 0xc5, 0xb0, 0x86, 0xf0, 0xed, 0x92, 0xb7, 0x1b, 0x2e, 0x36, 0x9b, 0x56, 0xaf, 0xe3, 0x3a, 0xca, + 0x13, 0xc0, 0x4c, 0xa5, 0x62, 0x59, 0x6b, 0xfa, 0x0f, 0x95, 0x1b, 0x3a, 0xc7, 0x8b, 0x62, 0x89, + 0x96, 0xc6, 0x0b, 0x28, 0x5f, 0xb3, 0xcd, 0x87, 0xba, 0x4b, 0xee, 0x90, 0xad, 0x9a, 0xd5, 0x32, + 0x9b, 0x5b, 0xe0, 0x66, 0xcb, 0xa7, 0xca, 0x2e, 0xc3, 0x35, 0x36, 0xc8, 0x56, 0xa3, 0x0b, 0x58, + 0x71, 0x59, 0x09, 0x97, 0x54, 0x7f, 0x28, 0x25, 0xce, 0x50, 0x7e, 0xa2, 0xed, 0x44, 0x6c, 0xa2, + 0xed, 0xeb, 0x68, 0x84, 0xaf, 0xee, 0x7e, 0x20, 0x14, 0x88, 0x1a, 0xe7, 0xbd, 0xd9, 0x35, 0x0d, + 0x2d, 0x20, 0x80, 0x88, 0x5d, 0x41, 0xda, 0x87, 0x94, 0x10, 0xb1, 0x2b, 0x48, 0xfb, 0x20, 0x25, + 0x7d, 0xb8, 0x89, 0x46, 0xf9, 0xec, 0x24, 0x3c, 0xaf, 0x83, 0x77, 0xb7, 0x5e, 0xe4, 0x67, 0xf6, + 0xac, 0x57, 0x20, 0xc2, 0xaf, 0x42, 0xec, 0x73, 0x3e, 0x60, 0xb8, 0x2d, 0x02, 0x93, 0xa9, 0x38, + 0xbe, 0x42, 0xc1, 0xcf, 0x39, 0x35, 0x9d, 0x5a, 0xc4, 0x0e, 0xf3, 0x62, 0x14, 0xc2, 0xd4, 0x22, + 0xf5, 0xf2, 0x96, 0x94, 0xb8, 0x47, 0x2c, 0x82, 0x97, 0xd1, 0x54, 0xa4, 0x8f, 0xf8, 0x63, 0x3c, + 0x88, 0x58, 0x19, 0xd3, 0xc1, 0xe2, 0xd2, 0x15, 0x29, 0xab, 0xfe, 0xbb, 0x44, 0x64, 0x62, 0xa6, + 0x82, 0xe1, 0x54, 0x42, 0xe7, 0x80, 0x60, 0x3c, 0xd6, 0x4c, 0x30, 0x02, 0x11, 0xbe, 0x8a, 0x72, + 0xa1, 0xf0, 0xe7, 0xf0, 0x4c, 0xd7, 0x8f, 0x7d, 0xee, 0x63, 0xf1, 0x4d, 0x94, 0xa3, 0xd3, 0x64, + 0x27, 0xf4, 0xf4, 0xb4, 0xc7, 0x61, 0xe2, 0xbc, 0xe6, 0xd1, 0xd1, 0x32, 0x52, 0x80, 0x1e, 0x2f, + 0x4a, 0x75, 0x74, 0x51, 0x08, 0x02, 0xf2, 0xfc, 0xef, 0xf4, 0xc0, 0xab, 0xc0, 0x23, 0x89, 0x4c, + 0xf0, 0x0a, 0x35, 0xb4, 0x69, 0xed, 0x45, 0x27, 0x62, 0x2e, 0xb2, 0x9b, 0x8e, 0x86, 0xce, 0xf4, + 0xc8, 0xd1, 0x64, 0x4a, 0x31, 0x81, 0x16, 0xbc, 0x23, 0x4c, 0xc7, 0x24, 0xd0, 0x0a, 0x47, 0xdd, + 0x16, 0x0b, 0xe0, 0x17, 0xd1, 0x48, 0x90, 0x0a, 0x6c, 0x58, 0x78, 0x4b, 0x1a, 0x93, 0x01, 0x2c, + 0xa0, 0xc4, 0x5f, 0x46, 0x19, 0x29, 0xec, 0xfb, 0x8d, 0x3d, 0xdc, 0x9d, 0xce, 0x88, 0x91, 0x01, + 0x98, 0xd1, 0x1a, 0x0e, 0xf9, 0xce, 0x99, 0xe2, 0x15, 0x74, 0xa6, 0x66, 0x13, 0x03, 0x6e, 0xe9, + 0x2b, 0x8f, 0xba, 0x36, 0x8f, 0xdb, 0xc0, 0x54, 0x1a, 0xe6, 0xac, 0xae, 0x87, 0xa6, 0xb3, 0x29, + 0xc7, 0x0b, 0x8c, 0xe2, 0x8a, 0xd3, 0x85, 0x8c, 0xb5, 0xe4, 0x0e, 0xd9, 0xda, 0xb4, 0x6c, 0x83, + 0x85, 0x36, 0xe0, 0x0b, 0x19, 0x17, 0xf4, 0x06, 0x47, 0x89, 0x0b, 0x99, 0x5c, 0x68, 0xfa, 0x15, + 0x34, 0x7a, 0xd0, 0xd7, 0xf5, 0x3f, 0x9b, 0xec, 0xe3, 0x54, 0x73, 0x72, 0xe3, 0x01, 0xfa, 0xb1, + 0x59, 0x87, 0xfb, 0xc4, 0x66, 0xfd, 0xfd, 0x64, 0x1f, 0x8f, 0xa1, 0x13, 0x1d, 0x43, 0xd1, 0x17, + 0x86, 0x1c, 0x43, 0x31, 0x08, 0x5f, 0x69, 0x1a, 0x9a, 0x48, 0x14, 0x8a, 0xb6, 0x9a, 0xd9, 0x35, + 0xda, 0xea, 0x4f, 0xa4, 0x06, 0x79, 0x54, 0x9d, 0xca, 0x7e, 0x3f, 0xb2, 0xbf, 0x89, 0x46, 0x7d, + 0xc9, 0xf2, 0xdc, 0x39, 0xe3, 0x7e, 0x2c, 0x0f, 0x06, 0x86, 0x32, 0x02, 0x11, 0xbe, 0xc6, 0xda, + 0x5a, 0x37, 0xdf, 0x67, 0xef, 0xea, 0xc7, 0xf9, 0xdb, 0x6b, 0xdd, 0xd5, 0x1b, 0x8e, 0xf9, 0x3e, + 0xd1, 0x7c, 0xb4, 0xfa, 0x4f, 0x93, 0xb1, 0x6e, 0x69, 0xa7, 0x7d, 0xb4, 0x8f, 0x3e, 0x8a, 0x11, + 0x22, 0x73, 0xa8, 0x3b, 0x15, 0xe2, 0x3e, 0x84, 0xf8, 0x7b, 0xc9, 0x58, 0xf7, 0xc3, 0x53, 0x21, + 0xee, 0x67, 0xb6, 0xb8, 0x8e, 0x46, 0x34, 0x6b, 0xd3, 0x29, 0x81, 0x15, 0xcf, 0xe6, 0x0a, 0x98, + 0xa8, 0x6d, 0x6b, 0xd3, 0x69, 0x80, 0x7d, 0xae, 0x05, 0x04, 0xea, 0x1f, 0x24, 0x07, 0x38, 0x68, + 0x9e, 0x0a, 0xfe, 0xc3, 0x5c, 0x22, 0x7f, 0x3e, 0x29, 0x39, 0x80, 0x9e, 0xe8, 0x60, 0xe4, 0xf5, + 0xe6, 0x3a, 0x69, 0xeb, 0xe1, 0x60, 0xe4, 0x0e, 0x40, 0x79, 0x2c, 0xd3, 0x80, 0x44, 0xfd, 0x85, + 0x64, 0xc8, 0x03, 0xf6, 0x54, 0x76, 0x7b, 0x96, 0x9d, 0xaf, 0x75, 0xdc, 0xa9, 0xf7, 0x54, 0x72, + 0x7b, 0x95, 0xdc, 0xd7, 0x92, 0x21, 0xff, 0xe7, 0x93, 0x1b, 0x97, 0xf8, 0x17, 0x92, 0x51, 0x5f, + 0xee, 0x93, 0xab, 0x49, 0xd7, 0xd1, 0x08, 0x97, 0x83, 0xbf, 0x54, 0xb0, 0x79, 0x9f, 0x01, 0xe1, + 0x48, 0xd1, 0x27, 0x50, 0xbf, 0x27, 0x89, 0x64, 0xbf, 0xf4, 0x13, 0xaa, 0x43, 0x3f, 0x9f, 0x94, + 0x3d, 0xf2, 0x4f, 0xae, 0xfe, 0xcc, 0x20, 0x54, 0xef, 0xad, 0x36, 0x79, 0x40, 0x97, 0x61, 0xe1, + 0x4c, 0xda, 0x87, 0x6a, 0x02, 0x85, 0xfa, 0x7f, 0x92, 0xb1, 0xcf, 0x04, 0x4e, 0xae, 0x00, 0x5f, + 0x80, 0x73, 0xe2, 0x66, 0x27, 0x98, 0xc8, 0xe1, 0x10, 0x92, 0x8e, 0xbf, 0x48, 0x40, 0x3b, 0x8f, + 0x10, 0x7f, 0x36, 0xc6, 0x5c, 0x83, 0xd8, 0x73, 0xb1, 0x79, 0x99, 0x44, 0xc3, 0xed, 0x5f, 0x26, + 0x77, 0x7b, 0x55, 0x71, 0x92, 0x57, 0xd5, 0x6c, 0x4d, 0xdf, 0x82, 0xd7, 0xff, 0xb4, 0x27, 0xc6, + 0x58, 0xe0, 0xb6, 0x2e, 0x03, 0x89, 0x11, 0x20, 0x39, 0x95, 0xfa, 0xbb, 0xc3, 0xf1, 0x2e, 0xfd, + 0x27, 0x57, 0x84, 0x5e, 0xde, 0xe0, 0xe1, 0x5d, 0xf3, 0x06, 0x67, 0xf6, 0x9a, 0x37, 0x38, 0xdb, + 0x37, 0x6f, 0xf0, 0x45, 0x94, 0x9e, 0xb5, 0x8c, 0x2d, 0xf0, 0xa2, 0x18, 0x63, 0x95, 0xad, 0x5a, + 0xc6, 0x96, 0x06, 0x50, 0xfc, 0xfd, 0x09, 0x94, 0x9d, 0x27, 0xba, 0x41, 0x47, 0xc8, 0xc8, 0x20, + 0x27, 0x84, 0x2f, 0x3c, 0x1e, 0x27, 0x84, 0xa9, 0x75, 0x56, 0x99, 0xa8, 0x28, 0xbc, 0x7e, 0x7c, + 0x1b, 0xe5, 0x4a, 0xba, 0x4b, 0xd6, 0x2c, 0x7b, 0x0b, 0xdc, 0x2a, 0x26, 0x02, 0xc7, 0x32, 0x49, + 0x7f, 0x3c, 0x22, 0x76, 0x57, 0xd4, 0xe4, 0xbf, 0x34, 0xbf, 0x30, 0x15, 0x0b, 0x0f, 0x54, 0x3e, + 0x1a, 0x88, 0x45, 0x8e, 0x48, 0x1e, 0x1c, 0x2b, 0x8f, 0xc5, 0x1f, 0x2b, 0x87, 0xb2, 0x41, 0x8f, + 0xef, 0x9a, 0x0d, 0x5a, 0xfd, 0xf6, 0x30, 0x8a, 0x75, 0x00, 0x3e, 0x55, 0xf2, 0x53, 0x25, 0x0f, + 0x94, 0xbc, 0x1c, 0x51, 0xf2, 0xe9, 0xa8, 0x4b, 0xf9, 0x47, 0x54, 0xc3, 0x7f, 0x34, 0x1d, 0x79, + 0x90, 0x72, 0xb2, 0x77, 0x97, 0x81, 0xf4, 0x86, 0xf7, 0x9e, 0x2d, 0x3e, 0xb3, 0xeb, 0x80, 0xc8, + 0xee, 0x75, 0x40, 0xe4, 0xfa, 0x0e, 0x88, 0x40, 0x41, 0x46, 0xfa, 0x2a, 0x48, 0x95, 0x0f, 0x1a, + 0x34, 0x38, 0xb8, 0xee, 0xc5, 0x9d, 0xed, 0xc2, 0x04, 0x1d, 0x4d, 0xb1, 0x61, 0x75, 0x81, 0x85, + 0xfa, 0xad, 0xf4, 0x80, 0x57, 0x64, 0x47, 0xa2, 0x23, 0x3c, 0x5d, 0x7e, 0xea, 0x20, 0xe9, 0xf2, + 0xd3, 0x07, 0x48, 0x97, 0x8f, 0x5f, 0x0b, 0x82, 0x52, 0xac, 0xf7, 0x3a, 0x1b, 0x7c, 0xa3, 0xc8, + 0xbd, 0x2f, 0x3d, 0xdf, 0x93, 0x26, 0x45, 0xd1, 0xed, 0x62, 0x88, 0x36, 0xa4, 0x4d, 0x99, 0xbd, + 0x6b, 0x53, 0x76, 0x57, 0x6d, 0xca, 0xed, 0x55, 0x9b, 0x46, 0xf6, 0xa0, 0x4d, 0x68, 0x57, 0x6d, + 0x1a, 0x3d, 0xbc, 0x36, 0x75, 0xd1, 0x74, 0xf4, 0xe5, 0xaf, 0xaf, 0x11, 0x1a, 0xc2, 0x51, 0x2c, + 0x77, 0x37, 0x81, 0xab, 0xff, 0x1e, 0xc3, 0x36, 0x58, 0x0a, 0x83, 0x70, 0x02, 0x00, 0x2d, 0xa6, + 0xb4, 0xfa, 0xb3, 0xc9, 0xfe, 0x0f, 0x96, 0x8f, 0xe7, 0x14, 0xf7, 0x9d, 0xb1, 0x52, 0x4a, 0xcb, + 0x4f, 0x20, 0xfb, 0x4b, 0x39, 0xc4, 0x36, 0x4e, 0x66, 0xdf, 0x48, 0xf4, 0x7b, 0x45, 0x7d, 0x28, + 0x89, 0x7d, 0x32, 0xea, 0xbe, 0x05, 0x6e, 0xdb, 0x8e, 0xec, 0xb7, 0x15, 0x8e, 0xa7, 0x9f, 0x3a, + 0x60, 0x3c, 0xfd, 0x7f, 0x92, 0x40, 0x67, 0xee, 0xf4, 0x56, 0x09, 0x77, 0xd7, 0xf2, 0x9b, 0xf1, + 0x1e, 0x42, 0x14, 0xcc, 0x9d, 0x58, 0x12, 0xe0, 0xc4, 0xf2, 0x69, 0xf1, 0x05, 0x74, 0xa8, 0xc0, + 0x4c, 0x40, 0xcd, 0x1c, 0x58, 0x2e, 0x79, 0xbe, 0x7d, 0x1b, 0xbd, 0x55, 0xd2, 0x88, 0x78, 0xb2, + 0x08, 0xdc, 0xa7, 0x5f, 0x67, 0x5e, 0xd3, 0x07, 0x75, 0x1a, 0xf9, 0xe9, 0x64, 0xdf, 0x47, 0xe7, + 0xc7, 0x36, 0x1d, 0xfb, 0x97, 0x62, 0x7b, 0x85, 0xeb, 0xef, 0x93, 0x03, 0xfa, 0x21, 0xc4, 0x31, + 0x8e, 0x4b, 0xbc, 0xc0, 0x8e, 0x79, 0xfe, 0xfa, 0x0f, 0x55, 0x60, 0xbf, 0x91, 0xe8, 0x1b, 0x1c, + 0xe0, 0xd8, 0x66, 0xb8, 0xff, 0x66, 0xd2, 0x8b, 0x49, 0x70, 0xa8, 0x4f, 0xb8, 0x8e, 0x46, 0x78, + 0xe0, 0x65, 0xd9, 0xdb, 0x94, 0x1f, 0xe5, 0xc1, 0xd1, 0xb0, 0x4f, 0x40, 0x97, 0x79, 0xef, 0xcd, + 0xb4, 0x9f, 0xcb, 0x01, 0x96, 0x79, 0x93, 0x43, 0x29, 0xbd, 0x40, 0x42, 0x17, 0xf2, 0xca, 0x23, + 0xd3, 0x05, 0xab, 0x80, 0xf6, 0x65, 0x8a, 0x2d, 0xe4, 0xe4, 0x91, 0xe9, 0x32, 0x9b, 0xc0, 0x47, + 0xd3, 0x45, 0x5a, 0xc8, 0xd2, 0xc9, 0x17, 0x69, 0x87, 0x47, 0x80, 0xe7, 0xaf, 0x88, 0xae, 0xa3, + 0x11, 0xee, 0xc2, 0xc9, 0xdd, 0x4c, 0x78, 0x6b, 0xb9, 0xd3, 0x27, 0xb4, 0xd6, 0x27, 0xa0, 0x1c, + 0x35, 0xb2, 0x16, 0x38, 0xd6, 0x01, 0x47, 0x1b, 0x20, 0x1a, 0xc7, 0xa8, 0x3b, 0xc9, 0x68, 0x68, + 0x84, 0x93, 0xbb, 0x29, 0xb8, 0x26, 0x3b, 0xab, 0x81, 0x87, 0x26, 0x18, 0x5c, 0xe2, 0x2b, 0x1d, + 0x66, 0x77, 0xdd, 0x44, 0xb9, 0x3b, 0x64, 0x8b, 0xf9, 0x55, 0x66, 0x02, 0xe7, 0xd4, 0x0d, 0x0e, + 0x13, 0x4f, 0x34, 0x3d, 0x3a, 0xf5, 0x97, 0x92, 0xd1, 0xa0, 0x0f, 0x27, 0x57, 0xd8, 0x9f, 0x41, + 0x59, 0x10, 0x65, 0xd5, 0x3b, 0x52, 0x07, 0x01, 0xb2, 0xd4, 0xfb, 0xd2, 0x1b, 0x09, 0x8f, 0x4c, + 0xfd, 0xf1, 0x4c, 0x38, 0x12, 0xc8, 0xc9, 0x95, 0xde, 0xe7, 0xd0, 0x68, 0xc9, 0xea, 0x38, 0xa6, + 0xe3, 0x92, 0x4e, 0xd3, 0x53, 0xd8, 0x27, 0xa8, 0xc1, 0xd2, 0x0c, 0xc0, 0xe2, 0x93, 0x0f, 0x81, + 0xfa, 0x20, 0xca, 0x8b, 0x5f, 0x42, 0x23, 0x20, 0x72, 0xf0, 0x43, 0x16, 0x32, 0xc1, 0xac, 0x52, + 0x60, 0xd8, 0x09, 0x39, 0x20, 0xc5, 0x77, 0x51, 0xae, 0xb4, 0x6e, 0xb6, 0x0c, 0x9b, 0x74, 0x78, + 0xaa, 0xb1, 0xa7, 0xe3, 0xe3, 0xb6, 0xcc, 0xc0, 0xbf, 0x40, 0xcb, 0x9a, 0xd3, 0xe4, 0xc5, 0xa4, + 0x47, 0x2f, 0x1c, 0x36, 0xfd, 0x17, 0x93, 0x08, 0x05, 0x05, 0xf0, 0x53, 0x28, 0xe9, 0xbd, 0xac, + 0x64, 0x6e, 0x20, 0x92, 0x06, 0x25, 0x61, 0x2a, 0xe6, 0x63, 0x3b, 0xb9, 0xeb, 0xd8, 0xbe, 0x8b, + 0x32, 0xec, 0x44, 0x09, 0x3c, 0xb5, 0x85, 0xe0, 0x04, 0x7d, 0x1b, 0x3c, 0x03, 0xf4, 0x6c, 0xb3, + 0x08, 0x96, 0x9d, 0xe4, 0xf5, 0xcc, 0x98, 0x4d, 0x37, 0xd1, 0x30, 0xfc, 0x85, 0xaf, 0xa0, 0x34, + 0x48, 0x31, 0x01, 0xfb, 0x44, 0x78, 0x9f, 0x18, 0x92, 0x1f, 0xe0, 0x69, 0x37, 0x95, 0xac, 0x8e, + 0x4b, 0xab, 0x86, 0x56, 0x8f, 0x71, 0xb9, 0x70, 0x98, 0x24, 0x17, 0x0e, 0x53, 0xff, 0x45, 0x32, + 0x26, 0x46, 0xcd, 0xc9, 0x1d, 0x26, 0xaf, 0x20, 0x04, 0x2f, 0x68, 0xa9, 0x3c, 0xbd, 0x07, 0x95, + 0x30, 0x4a, 0x80, 0x11, 0xa8, 0xad, 0x64, 0xd6, 0x07, 0xc4, 0xea, 0xaf, 0x24, 0x22, 0x81, 0x4d, + 0x8e, 0x6d, 0xe6, 0x4b, 0xe9, 0x5b, 0x8e, 0x79, 0x16, 0xcf, 0x6f, 0x27, 0xe3, 0xc2, 0xbc, 0x1c, + 0x4f, 0x15, 0x0f, 0xd2, 0x89, 0xa5, 0xf7, 0x91, 0x4e, 0xec, 0x5d, 0x34, 0x19, 0x0a, 0x7e, 0xc2, + 0xf3, 0xb6, 0x5c, 0x19, 0x1c, 0x45, 0xa5, 0xff, 0xdb, 0x6b, 0x89, 0x4c, 0xfd, 0xbf, 0x89, 0xc1, + 0xa1, 0x6f, 0x8e, 0x5c, 0x75, 0x62, 0x04, 0x90, 0xfa, 0xe3, 0x11, 0xc0, 0x63, 0xd8, 0x66, 0x1e, + 0x6f, 0x01, 0x7c, 0x44, 0x26, 0x8f, 0x0f, 0x5b, 0x00, 0x3f, 0x9e, 0xd8, 0x35, 0x72, 0xd1, 0x51, + 0xcb, 0x40, 0xfd, 0x0f, 0x89, 0xd8, 0x08, 0x43, 0x87, 0x6a, 0xd7, 0x6b, 0x28, 0xc3, 0xdc, 0x56, + 0x78, 0xab, 0x84, 0x98, 0xcc, 0x14, 0xda, 0x2f, 0x9d, 0x39, 0xc3, 0xe2, 0x05, 0x94, 0x65, 0x6d, + 0x30, 0x78, 0x6f, 0x7c, 0x62, 0x40, 0x98, 0x23, 0xa3, 0xdf, 0xe4, 0xc8, 0xd1, 0xea, 0x2f, 0x27, + 0x22, 0x01, 0x8f, 0x8e, 0xf0, 0xdb, 0x0e, 0x96, 0x26, 0xf9, 0xb7, 0x93, 0xf1, 0xf1, 0x96, 0x8e, + 0xf0, 0x43, 0x1e, 0xc7, 0x71, 0xd5, 0xc1, 0xd6, 0xad, 0x15, 0x34, 0x21, 0xcb, 0x82, 0x2f, 0x5b, + 0x97, 0xe3, 0xa3, 0x4e, 0xf5, 0x69, 0x45, 0x88, 0x87, 0xfa, 0x41, 0x22, 0x1a, 0x2a, 0xea, 0xc8, + 0xe7, 0xa7, 0x83, 0x69, 0x8b, 0xfc, 0x29, 0x1f, 0x91, 0xb5, 0xe6, 0x71, 0x7c, 0xca, 0x47, 0x64, + 0xd5, 0x38, 0xd8, 0xa7, 0xfc, 0x64, 0xb2, 0x5f, 0xa4, 0xad, 0x23, 0xff, 0xa0, 0x2f, 0x8a, 0x42, + 0x66, 0x2d, 0xe3, 0x9f, 0xf6, 0x54, 0xbf, 0xd0, 0x56, 0x7d, 0x78, 0x46, 0xf8, 0x1c, 0x6c, 0x8c, + 0xc7, 0x0a, 0xeb, 0x23, 0xa2, 0xc8, 0xc7, 0x43, 0x58, 0x1f, 0x91, 0xa1, 0xf2, 0xd1, 0x13, 0xd6, + 0x3f, 0x4c, 0xee, 0x35, 0xbc, 0xdb, 0xa9, 0xf0, 0x22, 0xc2, 0xfb, 0xe1, 0x64, 0x34, 0xec, 0xe0, + 0x91, 0x8b, 0x69, 0x0e, 0x65, 0x78, 0x00, 0xc4, 0xbe, 0xc2, 0x61, 0xf8, 0x7e, 0x16, 0x0d, 0xff, + 0x8e, 0x20, 0x6b, 0x6c, 0x7a, 0xef, 0x59, 0x63, 0xd5, 0x3f, 0x48, 0x84, 0x62, 0xf4, 0x1d, 0xc9, + 0x11, 0xc2, 0x81, 0x96, 0x24, 0xfc, 0xba, 0x77, 0x98, 0x99, 0x0e, 0xa5, 0x3f, 0xf3, 0xbf, 0xa7, + 0x4c, 0x5c, 0xdd, 0x6c, 0x85, 0xcb, 0xf3, 0x37, 0xf7, 0xbf, 0x94, 0x44, 0x53, 0x11, 0x52, 0x7c, + 0x45, 0x8a, 0xcb, 0x02, 0xc7, 0x92, 0x21, 0xe7, 0x6c, 0x16, 0xa1, 0x65, 0x1f, 0x27, 0xa9, 0x57, + 0x50, 0xba, 0xac, 0x6f, 0xb1, 0x6f, 0x1b, 0x66, 0x2c, 0x0d, 0x7d, 0x4b, 0x3c, 0x71, 0x03, 0x3c, + 0x5e, 0x45, 0xe7, 0xd8, 0x7d, 0x88, 0x69, 0x75, 0x56, 0xcc, 0x36, 0xa9, 0x76, 0x16, 0xcd, 0x56, + 0xcb, 0x74, 0xf8, 0xa5, 0xd9, 0xf5, 0x9d, 0xed, 0xc2, 0x55, 0xd7, 0x72, 0xf5, 0x56, 0x83, 0x78, + 0x64, 0x0d, 0xd7, 0x6c, 0x93, 0x86, 0xd9, 0x69, 0xb4, 0x81, 0x52, 0x60, 0x19, 0xcf, 0x0a, 0x57, + 0x59, 0x7e, 0xb6, 0x7a, 0x53, 0xef, 0x74, 0x88, 0x51, 0xed, 0xcc, 0x6e, 0xb9, 0x84, 0x5d, 0xb6, + 0xa5, 0xd8, 0x91, 0x20, 0x7b, 0x7b, 0xcd, 0xd0, 0x94, 0xf1, 0x2a, 0x25, 0xd0, 0x62, 0x0a, 0xa9, + 0xbf, 0x98, 0x8e, 0x09, 0xcf, 0x78, 0x8c, 0xd4, 0xc7, 0xeb, 0xe9, 0xf4, 0x2e, 0x3d, 0x7d, 0x03, + 0x65, 0xef, 0x11, 0x1b, 0xce, 0xb7, 0x86, 0x83, 0xc4, 0xf5, 0x0f, 0x19, 0x48, 0xbc, 0xa1, 0xe1, + 0x54, 0xb8, 0x85, 0xa6, 0x57, 0x68, 0x37, 0xc5, 0x77, 0x66, 0xe6, 0x00, 0x9d, 0x39, 0x80, 0x1f, + 0x7e, 0x07, 0x5d, 0x00, 0x6c, 0x4c, 0xb7, 0x66, 0xa1, 0x2a, 0x88, 0x26, 0xc6, 0xaa, 0x8a, 0xef, + 0xdc, 0x7e, 0xe5, 0xf1, 0x17, 0xd1, 0x98, 0x3f, 0x40, 0x4c, 0xe2, 0xf0, 0x9b, 0x8b, 0x01, 0xe3, + 0x8c, 0xc5, 0xdb, 0xa2, 0x60, 0x70, 0xd1, 0x92, 0x63, 0x36, 0x49, 0xbc, 0x9e, 0xfd, 0x14, 0x1a, + 0x85, 0x63, 0xe6, 0x22, 0xe4, 0x58, 0xc2, 0x63, 0x28, 0xb7, 0x3c, 0x5b, 0xaf, 0x68, 0xf7, 0x2a, + 0xe5, 0xfc, 0x10, 0x46, 0x28, 0x53, 0xae, 0x2c, 0x55, 0x2b, 0xe5, 0x7c, 0xe2, 0xd9, 0xff, 0x95, + 0x40, 0xa8, 0x3e, 0xb7, 0x52, 0xe3, 0x84, 0xa3, 0x28, 0x5b, 0x5d, 0xba, 0x57, 0x5c, 0xa8, 0x52, + 0xba, 0x1c, 0x4a, 0x2f, 0xd7, 0x2a, 0x4b, 0xf9, 0x04, 0x1e, 0x41, 0xc3, 0xa5, 0x85, 0xe5, 0x7a, + 0x25, 0x9f, 0xa4, 0x40, 0xad, 0x52, 0x2c, 0xe7, 0x53, 0x14, 0x78, 0x5f, 0xab, 0xae, 0x54, 0xf2, + 0x69, 0xfa, 0xe7, 0x42, 0x7d, 0xa5, 0xb8, 0x92, 0x1f, 0xa6, 0x7f, 0xce, 0xc1, 0x9f, 0x19, 0xca, + 0xac, 0x5e, 0x59, 0x81, 0x1f, 0x59, 0xda, 0x84, 0x39, 0xef, 0x57, 0x8e, 0xa2, 0x28, 0xeb, 0x72, + 0x55, 0xcb, 0x8f, 0xd0, 0x1f, 0x94, 0x25, 0xfd, 0x81, 0x68, 0xe3, 0xb4, 0xca, 0xe2, 0xf2, 0xbd, + 0x4a, 0x7e, 0x94, 0xf2, 0x5a, 0xbc, 0x43, 0xc1, 0x63, 0xf4, 0x4f, 0x6d, 0x91, 0xfe, 0x39, 0x4e, + 0x39, 0x69, 0x95, 0xe2, 0x42, 0xad, 0xb8, 0x32, 0x9f, 0x9f, 0xa0, 0xed, 0x01, 0x9e, 0x93, 0xac, + 0xe4, 0x52, 0x71, 0xb1, 0x92, 0xcf, 0x73, 0x9a, 0xf2, 0x42, 0x75, 0xe9, 0x4e, 0x7e, 0x0a, 0x1a, + 0xf2, 0xce, 0x22, 0xfc, 0xc0, 0xb4, 0x00, 0xfc, 0x75, 0xe6, 0xd9, 0xef, 0x40, 0x19, 0x96, 0x59, + 0x1e, 0x5f, 0x40, 0x67, 0x96, 0xeb, 0x8d, 0x95, 0x77, 0x6a, 0x95, 0xc6, 0xdd, 0xa5, 0x7a, 0xad, + 0x52, 0xaa, 0xce, 0x55, 0x41, 0x54, 0x53, 0x68, 0xdc, 0x43, 0x2c, 0x54, 0x97, 0xee, 0x7e, 0x21, + 0x9f, 0x10, 0x41, 0x8b, 0xc5, 0xd2, 0x72, 0x3d, 0x9f, 0xc4, 0x67, 0xd0, 0xa4, 0x07, 0xba, 0x5f, + 0x5d, 0x2a, 0x2f, 0xdf, 0xaf, 0xe7, 0x53, 0xcf, 0x3e, 0xf4, 0xe2, 0x3a, 0xb3, 0x74, 0xee, 0xf8, + 0x12, 0x7a, 0xa2, 0x5c, 0xb9, 0x57, 0x2d, 0x55, 0x1a, 0xcb, 0x5a, 0xf5, 0x76, 0x75, 0x29, 0x54, + 0xd3, 0x39, 0x34, 0x25, 0xa3, 0x8b, 0xb5, 0x6a, 0x3e, 0x81, 0xcf, 0x23, 0x2c, 0x83, 0xdf, 0x2a, + 0x2e, 0xce, 0xe5, 0x93, 0x58, 0x41, 0x67, 0x65, 0x78, 0x75, 0x69, 0xe5, 0xee, 0x52, 0x25, 0x9f, + 0x7a, 0xf6, 0x6f, 0x24, 0xd0, 0xb9, 0x58, 0x67, 0x78, 0xac, 0xa2, 0xcb, 0x95, 0x85, 0x62, 0x7d, + 0xa5, 0x5a, 0xaa, 0x57, 0x8a, 0x5a, 0x69, 0xbe, 0x51, 0x2a, 0xae, 0x54, 0x6e, 0x2f, 0x6b, 0xef, + 0x34, 0x6e, 0x57, 0x96, 0x2a, 0x5a, 0x71, 0x21, 0x3f, 0x84, 0x9f, 0x41, 0x85, 0x3e, 0x34, 0xf5, + 0x4a, 0xe9, 0xae, 0x56, 0x5d, 0x79, 0x27, 0x9f, 0xc0, 0x4f, 0xa3, 0x4b, 0x7d, 0x89, 0xe8, 0xef, + 0x7c, 0x12, 0x5f, 0x46, 0xd3, 0xfd, 0x48, 0xde, 0x5e, 0xc8, 0xa7, 0x9e, 0xfd, 0x4b, 0x09, 0x84, + 0xa3, 0xde, 0xcc, 0xf8, 0x29, 0x74, 0x91, 0xea, 0x45, 0xa3, 0x7f, 0x03, 0x9f, 0x46, 0x97, 0x62, + 0x29, 0x84, 0xe6, 0x15, 0xd0, 0x93, 0x7d, 0x48, 0x78, 0xe3, 0x2e, 0x22, 0x25, 0x9e, 0x80, 0x36, + 0x6d, 0xb6, 0xfc, 0xc1, 0x7f, 0xbc, 0x3c, 0xf4, 0xc1, 0xef, 0x5c, 0x4e, 0xfc, 0xfa, 0xef, 0x5c, + 0x4e, 0xfc, 0xf6, 0xef, 0x5c, 0x4e, 0x7c, 0xf1, 0xe6, 0x7e, 0x9c, 0xbd, 0xd9, 0xf0, 0x5d, 0xcd, + 0x80, 0x5b, 0xe3, 0x0b, 0xff, 0x3f, 0x00, 0x00, 0xff, 0xff, 0x12, 0xad, 0xe5, 0x6a, 0xa1, 0x19, + 0x01, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -14942,6 +15255,79 @@ func (m *UserCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *UserUpdate) 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 *UserUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *UserUpdate) 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.Connector) > 0 { + i -= len(m.Connector) + copy(dAtA[i:], m.Connector) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Connector))) + i-- + dAtA[i] = 0x2a + } + if len(m.Roles) > 0 { + for iNdEx := len(m.Roles) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Roles[iNdEx]) + copy(dAtA[i:], m.Roles[iNdEx]) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Roles[iNdEx]))) + i-- + dAtA[i] = 0x22 + } + } + { + size, err := m.ResourceMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.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 *UserDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -15077,12 +15463,12 @@ func (m *AccessRequestCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x7a } - n110, err110 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.MaxDuration, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.MaxDuration):]) - if err110 != nil { - return 0, err110 + n113, err113 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.MaxDuration, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.MaxDuration):]) + if err113 != nil { + return 0, err113 } - i -= n110 - i = encodeVarintEvents(dAtA, i, uint64(n110)) + i -= n113 + i = encodeVarintEvents(dAtA, i, uint64(n113)) i-- dAtA[i] = 0x6a if len(m.RequestedResourceIDs) > 0 { @@ -15726,63 +16112,63 @@ func (m *SFTPAttributes) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.XXX_unrecognized) } if m.ModificationTime != nil { - n139, err139 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.ModificationTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.ModificationTime):]) - if err139 != nil { - return 0, err139 - } - i -= n139 - i = encodeVarintEvents(dAtA, i, uint64(n139)) - i-- - dAtA[i] = 0x32 - } - if m.AccessTime != nil { - n140, err140 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AccessTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AccessTime):]) - if err140 != nil { - return 0, err140 - } - i -= n140 - i = encodeVarintEvents(dAtA, i, uint64(n140)) - i-- - dAtA[i] = 0x2a - } - if m.Permissions != nil { - n141, err141 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.Permissions, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.Permissions):]) - if err141 != nil { - return 0, err141 - } - i -= n141 - i = encodeVarintEvents(dAtA, i, uint64(n141)) - i-- - dAtA[i] = 0x22 - } - if m.GID != nil { - n142, err142 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.GID, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.GID):]) + n142, err142 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.ModificationTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.ModificationTime):]) if err142 != nil { return 0, err142 } i -= n142 i = encodeVarintEvents(dAtA, i, uint64(n142)) i-- - dAtA[i] = 0x1a + dAtA[i] = 0x32 } - if m.UID != nil { - n143, err143 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.UID, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.UID):]) + if m.AccessTime != nil { + n143, err143 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AccessTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AccessTime):]) if err143 != nil { return 0, err143 } i -= n143 i = encodeVarintEvents(dAtA, i, uint64(n143)) i-- - dAtA[i] = 0x12 + dAtA[i] = 0x2a } - if m.FileSize != nil { - n144, err144 := github_com_gogo_protobuf_types.StdUInt64MarshalTo(*m.FileSize, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt64(*m.FileSize):]) + if m.Permissions != nil { + n144, err144 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.Permissions, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.Permissions):]) if err144 != nil { return 0, err144 } i -= n144 i = encodeVarintEvents(dAtA, i, uint64(n144)) i-- + dAtA[i] = 0x22 + } + if m.GID != nil { + n145, err145 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.GID, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.GID):]) + if err145 != nil { + return 0, err145 + } + i -= n145 + i = encodeVarintEvents(dAtA, i, uint64(n145)) + i-- + dAtA[i] = 0x1a + } + if m.UID != nil { + n146, err146 := github_com_gogo_protobuf_types.StdUInt32MarshalTo(*m.UID, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt32(*m.UID):]) + if err146 != nil { + return 0, err146 + } + i -= n146 + i = encodeVarintEvents(dAtA, i, uint64(n146)) + i-- + dAtA[i] = 0x12 + } + if m.FileSize != nil { + n147, err147 := github_com_gogo_protobuf_types.StdUInt64MarshalTo(*m.FileSize, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdUInt64(*m.FileSize):]) + if err147 != nil { + return 0, err147 + } + i -= n147 + i = encodeVarintEvents(dAtA, i, uint64(n147)) + i-- dAtA[i] = 0xa } return len(dAtA) - i, nil @@ -16241,6 +16627,63 @@ func (m *RoleCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *RoleUpdate) 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 *RoleUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RoleUpdate) 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.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.ResourceMetadata.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 *RoleDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -16599,6 +17042,63 @@ func (m *GithubConnectorCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GithubConnectorUpdate) 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 *GithubConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GithubConnectorUpdate) 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.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.ResourceMetadata.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 *GithubConnectorDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -16713,6 +17213,63 @@ func (m *OIDCConnectorCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *OIDCConnectorUpdate) 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 *OIDCConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OIDCConnectorUpdate) 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.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.ResourceMetadata.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 *OIDCConnectorDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -16827,6 +17384,63 @@ func (m *SAMLConnectorCreate) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *SAMLConnectorUpdate) 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 *SAMLConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *SAMLConnectorUpdate) 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.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.ResourceMetadata.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 *SAMLConnectorDelete) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -19398,20 +20012,20 @@ func (m *WindowsDesktopSessionEnd) MarshalToSizedBuffer(dAtA []byte) (int, error i-- dAtA[i] = 0x5a } - n315, err315 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndTime):]) - if err315 != nil { - return 0, err315 + n330, err330 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndTime):]) + if err330 != nil { + return 0, err330 } - i -= n315 - i = encodeVarintEvents(dAtA, i, uint64(n315)) + i -= n330 + i = encodeVarintEvents(dAtA, i, uint64(n330)) i-- dAtA[i] = 0x52 - n316, err316 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartTime):]) - if err316 != nil { - return 0, err316 + n331, err331 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartTime):]) + if err331 != nil { + return 0, err331 } - i -= n316 - i = encodeVarintEvents(dAtA, i, uint64(n316)) + i -= n331 + i = encodeVarintEvents(dAtA, i, uint64(n331)) i-- dAtA[i] = 0x4a if len(m.DesktopLabels) > 0 { @@ -19701,12 +20315,12 @@ func (m *InstanceJoin) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n327, err327 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.TokenExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.TokenExpires):]) - if err327 != nil { - return 0, err327 + n342, err342 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.TokenExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.TokenExpires):]) + if err342 != nil { + return 0, err342 } - i -= n327 - i = encodeVarintEvents(dAtA, i, uint64(n327)) + i -= n342 + i = encodeVarintEvents(dAtA, i, uint64(n342)) i-- dAtA[i] = 0x4a if m.Attributes != nil { @@ -23125,6 +23739,121 @@ func (m *OneOf_SecurityReportRun) MarshalToSizedBuffer(dAtA []byte) (int, error) } return len(dAtA) - i, nil } +func (m *OneOf_GithubConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_GithubConnectorUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GithubConnectorUpdate != nil { + { + size, err := m.GithubConnectorUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xc2 + } + return len(dAtA) - i, nil +} +func (m *OneOf_OIDCConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_OIDCConnectorUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.OIDCConnectorUpdate != nil { + { + size, err := m.OIDCConnectorUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xca + } + return len(dAtA) - i, nil +} +func (m *OneOf_SAMLConnectorUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_SAMLConnectorUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.SAMLConnectorUpdate != nil { + { + size, err := m.SAMLConnectorUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xd2 + } + return len(dAtA) - i, nil +} +func (m *OneOf_RoleUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_RoleUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.RoleUpdate != nil { + { + size, err := m.RoleUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xda + } + return len(dAtA) - i, nil +} +func (m *OneOf_UserUpdate) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_UserUpdate) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.UserUpdate != nil { + { + size, err := m.UserUpdate.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x8 + i-- + dAtA[i] = 0xe2 + } + return len(dAtA) - i, nil +} func (m *StreamStatus) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -23149,12 +23878,12 @@ func (m *StreamStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n474, err474 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) - if err474 != nil { - return 0, err474 + n494, err494 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) + if err494 != nil { + return 0, err494 } - i -= n474 - i = encodeVarintEvents(dAtA, i, uint64(n474)) + i -= n494 + i = encodeVarintEvents(dAtA, i, uint64(n494)) i-- dAtA[i] = 0x1a if m.LastEventIndex != 0 { @@ -23281,12 +24010,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xc2 } } - n477, err477 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) - if err477 != nil { - return 0, err477 + n497, err497 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) + if err497 != nil { + return 0, err497 } - i -= n477 - i = encodeVarintEvents(dAtA, i, uint64(n477)) + i -= n497 + i = encodeVarintEvents(dAtA, i, uint64(n497)) i-- dAtA[i] = 0x1 i-- @@ -23434,12 +24163,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x4a } - n481, err481 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err481 != nil { - return 0, err481 + n501, err501 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err501 != nil { + return 0, err501 } - i -= n481 - i = encodeVarintEvents(dAtA, i, uint64(n481)) + i -= n501 + i = encodeVarintEvents(dAtA, i, uint64(n501)) i-- dAtA[i] = 0x42 if len(m.KubernetesUsers) > 0 { @@ -28891,6 +29620,34 @@ func (m *UserCreate) Size() (n int) { return n } +func (m *UserUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if len(m.Roles) > 0 { + for _, s := range m.Roles { + l = len(s) + n += 1 + l + sovEvents(uint64(l)) + } + } + l = len(m.Connector) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *UserDelete) Size() (n int) { if m == nil { return 0 @@ -29355,6 +30112,24 @@ func (m *RoleCreate) Size() (n int) { return n } +func (m *RoleUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *RoleDelete) Size() (n int) { if m == nil { return 0 @@ -29473,6 +30248,24 @@ func (m *GithubConnectorCreate) Size() (n int) { return n } +func (m *GithubConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *GithubConnectorDelete) Size() (n int) { if m == nil { return 0 @@ -29509,6 +30302,24 @@ func (m *OIDCConnectorCreate) Size() (n int) { return n } +func (m *OIDCConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *OIDCConnectorDelete) Size() (n int) { if m == nil { return 0 @@ -29545,6 +30356,24 @@ func (m *SAMLConnectorCreate) Size() (n int) { return n } +func (m *SAMLConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ResourceMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *SAMLConnectorDelete) Size() (n int) { if m == nil { return 0 @@ -32325,6 +33154,66 @@ func (m *OneOf_SecurityReportRun) Size() (n int) { } return n } +func (m *OneOf_GithubConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GithubConnectorUpdate != nil { + l = m.GithubConnectorUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_OIDCConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.OIDCConnectorUpdate != nil { + l = m.OIDCConnectorUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_SAMLConnectorUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SAMLConnectorUpdate != nil { + l = m.SAMLConnectorUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_RoleUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.RoleUpdate != nil { + l = m.RoleUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} +func (m *OneOf_UserUpdate) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.UserUpdate != nil { + l = m.UserUpdate.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} func (m *StreamStatus) Size() (n int) { if m == nil { return 0 @@ -43524,6 +44413,220 @@ func (m *UserCreate) Unmarshal(dAtA []byte) error { } return nil } +func (m *UserUpdate) 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: UserUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: UserUpdate: 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 Roles", 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.Roles = append(m.Roles, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Connector", 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.Connector = 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 *UserDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -47398,6 +48501,156 @@ func (m *RoleCreate) Unmarshal(dAtA []byte) error { } return nil } +func (m *RoleUpdate) 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: RoleUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RoleUpdate: 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) + } + 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 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 *RoleDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -48362,6 +49615,156 @@ func (m *GithubConnectorCreate) Unmarshal(dAtA []byte) error { } return nil } +func (m *GithubConnectorUpdate) 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: GithubConnectorUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GithubConnectorUpdate: 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) + } + 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 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 *GithubConnectorDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -48662,6 +50065,156 @@ func (m *OIDCConnectorCreate) Unmarshal(dAtA []byte) error { } return nil } +func (m *OIDCConnectorUpdate) 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: OIDCConnectorUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: OIDCConnectorUpdate: 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) + } + 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 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 *OIDCConnectorDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -48962,6 +50515,156 @@ func (m *SAMLConnectorCreate) Unmarshal(dAtA []byte) error { } return nil } +func (m *SAMLConnectorUpdate) 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: SAMLConnectorUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SAMLConnectorUpdate: 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) + } + 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 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 *SAMLConnectorDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -63464,6 +65167,181 @@ func (m *OneOf) Unmarshal(dAtA []byte) error { } m.Event = &OneOf_SecurityReportRun{v} iNdEx = postIndex + case 136: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GithubConnectorUpdate", 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 + } + v := &GithubConnectorUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_GithubConnectorUpdate{v} + iNdEx = postIndex + case 137: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field OIDCConnectorUpdate", 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 + } + v := &OIDCConnectorUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_OIDCConnectorUpdate{v} + iNdEx = postIndex + case 138: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SAMLConnectorUpdate", 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 + } + v := &SAMLConnectorUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_SAMLConnectorUpdate{v} + iNdEx = postIndex + case 139: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleUpdate", 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 + } + v := &RoleUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_RoleUpdate{v} + iNdEx = postIndex + case 140: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserUpdate", 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 + } + v := &UserUpdate{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_UserUpdate{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) diff --git a/api/types/events/oneof.go b/api/types/events/oneof.go index 7c7434bb8ea..0441a746fcf 100644 --- a/api/types/events/oneof.go +++ b/api/types/events/oneof.go @@ -47,6 +47,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_UserCreate{ UserCreate: e, } + case *UserUpdate: + out.Event = &OneOf_UserUpdate{ + UserUpdate: e, + } case *UserDelete: out.Event = &OneOf_UserDelete{ UserDelete: e, @@ -139,6 +143,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_RoleCreate{ RoleCreate: e, } + case *RoleUpdate: + out.Event = &OneOf_RoleUpdate{ + RoleUpdate: e, + } case *RoleDelete: out.Event = &OneOf_RoleDelete{ RoleDelete: e, @@ -167,6 +175,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_GithubConnectorCreate{ GithubConnectorCreate: e, } + case *GithubConnectorUpdate: + out.Event = &OneOf_GithubConnectorUpdate{ + GithubConnectorUpdate: e, + } case *GithubConnectorDelete: out.Event = &OneOf_GithubConnectorDelete{ GithubConnectorDelete: e, @@ -175,6 +187,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_OIDCConnectorCreate{ OIDCConnectorCreate: e, } + case *OIDCConnectorUpdate: + out.Event = &OneOf_OIDCConnectorUpdate{ + OIDCConnectorUpdate: e, + } case *OIDCConnectorDelete: out.Event = &OneOf_OIDCConnectorDelete{ OIDCConnectorDelete: e, @@ -183,6 +199,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_SAMLConnectorCreate{ SAMLConnectorCreate: e, } + case *SAMLConnectorUpdate: + out.Event = &OneOf_SAMLConnectorUpdate{ + SAMLConnectorUpdate: e, + } case *SAMLConnectorDelete: out.Event = &OneOf_SAMLConnectorDelete{ SAMLConnectorDelete: e, diff --git a/lib/auth/access.go b/lib/auth/access.go index d048a6fa6b5..2f1d72ab1df 100644 --- a/lib/auth/access.go +++ b/lib/auth/access.go @@ -59,14 +59,10 @@ func (a *Server) UpdateRole(ctx context.Context, role types.Role) (types.Role, e return nil, trace.Wrap(err) } - // TODO(tross): add a RoleUpdate type, RoleUpdatedEvent/Code for metadata - // and convert this to use them instead of a create event. As is this matches - // existing behavior since all updates to a role were done vie upsert which - // only ever emits a create event. - if err := a.emitter.EmitAuditEvent(a.closeCtx, &apievents.RoleCreate{ + if err := a.emitter.EmitAuditEvent(a.closeCtx, &apievents.RoleUpdate{ Metadata: apievents.Metadata{ - Type: events.RoleCreatedEvent, - Code: events.RoleCreatedCode, + Type: events.RoleUpdatedEvent, + Code: events.RoleUpdatedCode, }, UserMetadata: authz.ClientUserMetadata(ctx), ResourceMetadata: apievents.ResourceMetadata{ diff --git a/lib/auth/access_test.go b/lib/auth/access_test.go index 25187284cad..4043bc790f2 100644 --- a/lib/auth/access_test.go +++ b/lib/auth/access_test.go @@ -45,17 +45,25 @@ func TestUpsertDeleteRoleEventsEmitted(t *testing.T) { require.NoError(t, err) // Creating a role should emit a RoleCreatedEvent. + role, err = p.a.CreateRole(ctx, role) + require.NoError(t, err) + require.Equal(t, p.mockEmitter.LastEvent().GetType(), events.RoleCreatedEvent) + require.Equal(t, p.mockEmitter.LastEvent().(*apievents.RoleCreate).Name, role.GetName()) + p.mockEmitter.Reset() + + // Upserting a role should emit a RoleCreatedEvent. role, err = p.a.UpsertRole(ctx, role) require.NoError(t, err) require.Equal(t, p.mockEmitter.LastEvent().GetType(), events.RoleCreatedEvent) require.Equal(t, p.mockEmitter.LastEvent().(*apievents.RoleCreate).Name, role.GetName()) p.mockEmitter.Reset() - // Updating a role should emit a RoleCreatedEvent. - role, err = p.a.UpsertRole(ctx, role) + // Updating a role should emit a RoleUpdatedEvent. + role.SetLogins(types.Allow, []string{"llama"}) + role, err = p.a.UpdateRole(ctx, role) require.NoError(t, err) - require.Equal(t, p.mockEmitter.LastEvent().GetType(), events.RoleCreatedEvent) - require.Equal(t, p.mockEmitter.LastEvent().(*apievents.RoleCreate).Name, role.GetName()) + require.Equal(t, p.mockEmitter.LastEvent().GetType(), events.RoleUpdatedEvent) + require.Equal(t, p.mockEmitter.LastEvent().(*apievents.RoleUpdate).Name, role.GetName()) p.mockEmitter.Reset() // Deleting a role should emit a RoleDeletedEvent. diff --git a/lib/auth/auth_test.go b/lib/auth/auth_test.go index 930174fd6c3..5bc56a3ebb8 100644 --- a/lib/auth/auth_test.go +++ b/lib/auth/auth_test.go @@ -805,7 +805,7 @@ func TestCreateAndUpdateUserEventsEmitted(t *testing.T) { _, err = s.a.UpdateUser(ctx, user) require.NoError(t, err) require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.UserUpdatedEvent) - require.Equal(t, s.mockEmitter.LastEvent().(*apievents.UserCreate).User, teleport.UserSystem) + require.Equal(t, s.mockEmitter.LastEvent().(*apievents.UserUpdate).User, teleport.UserSystem) } func TestTrustedClusterCRUDEventEmitted(t *testing.T) { @@ -882,8 +882,8 @@ func TestGithubConnectorCRUDEventsEmitted(t *testing.T) { github.SetDisplay("llama") github, err = s.a.updateGithubConnector(ctx, github) require.NoError(t, err) - require.IsType(t, &apievents.GithubConnectorCreate{}, s.mockEmitter.LastEvent()) - require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.GithubConnectorCreatedEvent) + require.IsType(t, &apievents.GithubConnectorUpdate{}, s.mockEmitter.LastEvent()) + require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.GithubConnectorUpdatedEvent) s.mockEmitter.Reset() // test github upsert event @@ -930,8 +930,8 @@ func TestOIDCConnectorCRUDEventsEmitted(t *testing.T) { oidc.SetDisplay("llama") oidc, err = s.a.UpdateOIDCConnector(ctx, oidc) require.NoError(t, err) - require.IsType(t, &apievents.OIDCConnectorCreate{}, s.mockEmitter.LastEvent()) - require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.OIDCConnectorCreatedEvent) + require.IsType(t, &apievents.OIDCConnectorUpdate{}, s.mockEmitter.LastEvent()) + require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.OIDCConnectorUpdatedEvent) s.mockEmitter.Reset() // test oidc upsert event @@ -1002,8 +1002,8 @@ func TestSAMLConnectorCRUDEventsEmitted(t *testing.T) { saml.SetDisplay("llama") saml, err = s.a.UpdateSAMLConnector(ctx, saml) require.NoError(t, err) - require.IsType(t, &apievents.SAMLConnectorCreate{}, s.mockEmitter.LastEvent()) - require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.SAMLConnectorCreatedEvent) + require.IsType(t, &apievents.SAMLConnectorUpdate{}, s.mockEmitter.LastEvent()) + require.Equal(t, s.mockEmitter.LastEvent().GetType(), events.SAMLConnectorUpdatedEvent) s.mockEmitter.Reset() // test saml upsert event diff --git a/lib/auth/auth_with_roles.go b/lib/auth/auth_with_roles.go index 158e95b17f6..2511f77a246 100644 --- a/lib/auth/auth_with_roles.go +++ b/lib/auth/auth_with_roles.go @@ -3411,7 +3411,7 @@ func (a *ServerWithRoles) UpdateUser(ctx context.Context, user types.User) (type return nil, trace.Wrap(err) } - updated, err := a.authServer.UpdateUserWithContext(ctx, user) + updated, err := a.authServer.UpdateUser(ctx, user) return updated, trace.Wrap(err) } diff --git a/lib/auth/github.go b/lib/auth/github.go index 4d306e6809a..e6ca89118d8 100644 --- a/lib/auth/github.go +++ b/lib/auth/github.go @@ -209,14 +209,10 @@ func (a *Server) updateGithubConnector(ctx context.Context, connector types.Gith return nil, trace.Wrap(err) } - // TODO(tross): add a GithubConnectorUpdate type, GithubConnectorUpdatedEvent/Code for metadata - // and convert this to use them instead of a create event. As is this matches - // existing behavior since all updates to a connector were done via upsert which - // only ever emits a create event. - if err := a.emitter.EmitAuditEvent(ctx, &apievents.GithubConnectorCreate{ + if err := a.emitter.EmitAuditEvent(ctx, &apievents.GithubConnectorUpdate{ Metadata: apievents.Metadata{ - Type: events.GithubConnectorCreatedEvent, - Code: events.GithubConnectorCreatedCode, + Type: events.GithubConnectorUpdatedEvent, + Code: events.GithubConnectorUpdatedCode, }, UserMetadata: authz.ClientUserMetadata(ctx), ResourceMetadata: apievents.ResourceMetadata{ diff --git a/lib/auth/oidc.go b/lib/auth/oidc.go index 06e00044607..073b2636eb8 100644 --- a/lib/auth/oidc.go +++ b/lib/auth/oidc.go @@ -63,10 +63,10 @@ func (a *Server) UpdateOIDCConnector(ctx context.Context, connector types.OIDCCo if err != nil { return nil, trace.Wrap(err) } - if err := a.emitter.EmitAuditEvent(ctx, &apievents.OIDCConnectorCreate{ + if err := a.emitter.EmitAuditEvent(ctx, &apievents.OIDCConnectorUpdate{ Metadata: apievents.Metadata{ - Type: events.OIDCConnectorCreatedEvent, - Code: events.OIDCConnectorCreatedCode, + Type: events.OIDCConnectorUpdatedEvent, + Code: events.OIDCConnectorUpdatedCode, }, UserMetadata: authz.ClientUserMetadata(ctx), ResourceMetadata: apievents.ResourceMetadata{ diff --git a/lib/auth/saml.go b/lib/auth/saml.go index d05671e68fa..bdcb892da60 100644 --- a/lib/auth/saml.go +++ b/lib/auth/saml.go @@ -40,7 +40,7 @@ var ErrSAMLRequiresEnterprise = trace.AccessDenied("SAML is only available in Te // SAMLService are the methods that the auth server delegates to a plugin for // implementing the SAML connector. These are the core functions of SAML // authentication - the connector CRUD operations and Get methods are -// implemeneted in auth.Server and provide no connector-specific logic. +// implemented in auth.Server and provide no connector-specific logic. type SAMLService interface { // CreateSAMLAuthRequest creates SAML AuthnRequest CreateSAMLAuthRequest(ctx context.Context, req types.SAMLAuthRequest) (*types.SAMLAuthRequest, error) @@ -87,10 +87,10 @@ func (a *Server) UpdateSAMLConnector(ctx context.Context, connector types.SAMLCo if err != nil { return nil, trace.Wrap(err) } - if err := a.emitter.EmitAuditEvent(ctx, &apievents.SAMLConnectorCreate{ + if err := a.emitter.EmitAuditEvent(ctx, &apievents.SAMLConnectorUpdate{ Metadata: apievents.Metadata{ - Type: events.SAMLConnectorCreatedEvent, - Code: events.SAMLConnectorCreatedCode, + Type: events.SAMLConnectorUpdatedEvent, + Code: events.SAMLConnectorUpdatedCode, }, UserMetadata: authz.ClientUserMetadata(ctx), ResourceMetadata: apievents.ResourceMetadata{ diff --git a/lib/auth/user.go b/lib/auth/user.go index 3bf7b128e71..cf7e03e4e44 100644 --- a/lib/auth/user.go +++ b/lib/auth/user.go @@ -80,12 +80,6 @@ func (s *Server) CreateUser(ctx context.Context, user types.User) (types.User, e // UpdateUser updates an existing user in a backend. func (s *Server) UpdateUser(ctx context.Context, user types.User) (types.User, error) { - updated, err := s.UpdateUserWithContext(ctx, user) - return updated, trace.Wrap(err) -} - -// UpdateUserWithContext updates an existing user in a backend. -func (s *Server) UpdateUserWithContext(ctx context.Context, user types.User) (types.User, error) { prevUser, err := s.GetUser(ctx, user.GetName(), false) var omitEditorEvent bool if err != nil { @@ -106,7 +100,7 @@ func (s *Server) UpdateUserWithContext(ctx context.Context, user types.User) (ty connectorName = updated.GetCreatedBy().Connector.ID } - if err := s.emitter.EmitAuditEvent(ctx, &apievents.UserCreate{ + if err := s.emitter.EmitAuditEvent(ctx, &apievents.UserUpdate{ Metadata: apievents.Metadata{ Type: events.UserUpdatedEvent, Code: events.UserUpdateCode, @@ -199,7 +193,7 @@ func (s *Server) CompareAndSwapUser(ctx context.Context, new, existing types.Use connectorName = new.GetCreatedBy().Connector.ID } - if err := s.emitter.EmitAuditEvent(ctx, &apievents.UserCreate{ + if err := s.emitter.EmitAuditEvent(ctx, &apievents.UserUpdate{ Metadata: apievents.Metadata{ Type: events.UserUpdatedEvent, Code: events.UserUpdateCode, @@ -220,7 +214,7 @@ func (s *Server) CompareAndSwapUser(ctx context.Context, new, existing types.Use return nil } -// DeleteUser deletes an existng user in a backend by username. +// DeleteUser deletes an existing user in a backend by username. func (s *Server) DeleteUser(ctx context.Context, user string) error { prevUser, err := s.GetUser(ctx, user, false) var omitEditorEvent bool diff --git a/lib/events/api.go b/lib/events/api.go index ab427274f9a..b1c9cdb8c32 100644 --- a/lib/events/api.go +++ b/lib/events/api.go @@ -342,8 +342,10 @@ const ( // TCPVersion is the version of TCP (4 or 6). TCPVersion = "version" - // RoleCreatedEvent fires when role is created/updated. + // RoleCreatedEvent fires when role is created or upserted. RoleCreatedEvent = "role.created" + // RoleUpdatedEvent fires when role is updated. + RoleUpdatedEvent = "role.updated" // RoleDeletedEvent fires when role is deleted. RoleDeletedEvent = "role.deleted" @@ -360,24 +362,30 @@ const ( // also known as Join Token. See [types.ProvisionToken]. ProvisionTokenCreateEvent = "join_token.create" - // GithubConnectorCreatedEvent fires when a Github connector is created/updated. + // GithubConnectorCreatedEvent fires when a Github connector is created. GithubConnectorCreatedEvent = "github.created" + // GithubConnectorUpdatedEvent fires when a Github connector is updated. + GithubConnectorUpdatedEvent = "github.updated" // GithubConnectorDeletedEvent fires when a Github connector is deleted. GithubConnectorDeletedEvent = "github.deleted" - // OIDCConnectorCreatedEvent fires when OIDC connector is created/updated. + // OIDCConnectorCreatedEvent fires when OIDC connector is created. OIDCConnectorCreatedEvent = "oidc.created" + // OIDCConnectorUpdatedEvent fires when OIDC connector is updated. + OIDCConnectorUpdatedEvent = "oidc.updated" // OIDCConnectorDeletedEvent fires when OIDC connector is deleted. OIDCConnectorDeletedEvent = "oidc.deleted" - // SAMLConnectorCreatedEvent fires when SAML connector is created/updated. + // SAMLConnectorCreatedEvent fires when SAML connector is created. SAMLConnectorCreatedEvent = "saml.created" + // SAMLConnectorUpdatedEvent fires when SAML connector is updated. + SAMLConnectorUpdatedEvent = "saml.updated" // SAMLConnectorDeletedEvent fires when SAML connector is deleted. SAMLConnectorDeletedEvent = "saml.deleted" - // SessionRejected fires when a user's attempt to create an authenticated + // SessionRejectedEvent fires when a user's attempt to create an authenticated // session has been rejected due to exceeding a session control limit. SessionRejectedEvent = "session.rejected" - // SessionConnect is emitted when any ssh connection is made + // SessionConnectEvent is emitted when any ssh connection is made SessionConnectEvent = "session.connect" // AppCreateEvent is emitted when an application resource is created. diff --git a/lib/events/codes.go b/lib/events/codes.go index 587e13cf2f8..5a77c36e36f 100644 --- a/lib/events/codes.go +++ b/lib/events/codes.go @@ -371,21 +371,29 @@ const ( GithubConnectorCreatedCode = "T8000I" // GithubConnectorDeletedCode is the Github connector deleted event code. GithubConnectorDeletedCode = "T8001I" + // GithubConnectorUpdatedCode is the Github connector updated event code. + GithubConnectorUpdatedCode = "T80002I" // OIDCConnectorCreatedCode is the OIDC connector created event code. OIDCConnectorCreatedCode = "T8100I" // OIDCConnectorDeletedCode is the OIDC connector deleted event code. OIDCConnectorDeletedCode = "T8101I" + // OIDCConnectorUpdatedCode is the OIDC connector updated event code. + OIDCConnectorUpdatedCode = "T8102I" // SAMLConnectorCreatedCode is the SAML connector created event code. SAMLConnectorCreatedCode = "T8200I" // SAMLConnectorDeletedCode is the SAML connector deleted event code. SAMLConnectorDeletedCode = "T8201I" + // SAMLConnectorUpdatedCode is the SAML connector updated event code. + SAMLConnectorUpdatedCode = "T8202I" // RoleCreatedCode is the role created event code. RoleCreatedCode = "T9000I" // RoleDeletedCode is the role deleted event code. RoleDeletedCode = "T9001I" + // RoleUpdatedCode is the role created event code. + RoleUpdatedCode = "T9002I" // BotJoinCode is the 'bot.join' event code. BotJoinCode = "TJ001I" diff --git a/lib/events/dynamic.go b/lib/events/dynamic.go index 6b2fd0a029d..c73278f377f 100644 --- a/lib/events/dynamic.go +++ b/lib/events/dynamic.go @@ -74,9 +74,7 @@ func FromEventFields(fields EventFields) (events.AuditEvent, error) { case UserCreateEvent: e = &events.UserCreate{} case UserUpdatedEvent: - // note: user.update is a custom code applied on top of the same data as the user.create event - // and they are thus functionally identical. There exists no direct gRPC version of user.update. - e = &events.UserCreate{} + e = &events.UserUpdate{} case UserPasswordChangeEvent: e = &events.UserPasswordChange{} case AccessRequestCreateEvent: @@ -121,6 +119,8 @@ func FromEventFields(fields EventFields) (events.AuditEvent, error) { e = &events.SessionNetwork{} case RoleCreatedEvent: e = &events.RoleCreate{} + case RoleUpdatedEvent: + e = &events.RoleUpdate{} case RoleDeletedEvent: e = &events.RoleDelete{} case TrustedClusterCreateEvent: @@ -135,14 +135,20 @@ func FromEventFields(fields EventFields) (events.AuditEvent, error) { e = &events.ProvisionTokenCreate{} case GithubConnectorCreatedEvent: e = &events.GithubConnectorCreate{} + case GithubConnectorUpdatedEvent: + e = &events.GithubConnectorUpdate{} case GithubConnectorDeletedEvent: e = &events.GithubConnectorDelete{} case OIDCConnectorCreatedEvent: e = &events.OIDCConnectorCreate{} + case OIDCConnectorUpdatedEvent: + e = &events.OIDCConnectorUpdate{} case OIDCConnectorDeletedEvent: e = &events.OIDCConnectorDelete{} case SAMLConnectorCreatedEvent: e = &events.SAMLConnectorCreate{} + case SAMLConnectorUpdatedEvent: + e = &events.SAMLConnectorUpdate{} case SAMLConnectorDeletedEvent: e = &events.SAMLConnectorDelete{} case SessionRejectedEvent: diff --git a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx index cea2822ed60..7c74edb3b89 100644 --- a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx +++ b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx @@ -32,13 +32,17 @@ const EventIconMap: Record = { [eventCodes.PROVISION_TOKEN_CREATED]: Icons.Info, [eventCodes.GITHUB_CONNECTOR_CREATED]: Icons.Info, [eventCodes.GITHUB_CONNECTOR_DELETED]: Icons.Info, + [eventCodes.GITHUB_CONNECTOR_UPDATED]: Icons.Info, [eventCodes.OIDC_CONNECTOR_CREATED]: Icons.Info, [eventCodes.OIDC_CONNECTOR_DELETED]: Icons.Info, + [eventCodes.OIDC_CONNECTOR_UPDATED]: Icons.Info, [eventCodes.SAML_CONNECTOR_CREATED]: Icons.Info, [eventCodes.SAML_CONNECTOR_CREATED]: Icons.Info, [eventCodes.SAML_CONNECTOR_DELETED]: Icons.Info, + [eventCodes.SAML_CONNECTOR_UPDATED]: Icons.Info, [eventCodes.ROLE_CREATED]: Icons.Info, [eventCodes.ROLE_DELETED]: Icons.Info, + [eventCodes.ROLE_UPDATED]: Icons.Info, [eventCodes.SCP_DOWNLOAD_FAILURE]: Icons.Download, [eventCodes.SCP_DOWNLOAD]: Icons.Download, [eventCodes.SCP_UPLOAD_FAILURE]: Icons.Upload, diff --git a/web/packages/teleport/src/Audit/__snapshots__/Audit.story.test.tsx.snap b/web/packages/teleport/src/Audit/__snapshots__/Audit.story.test.tsx.snap index a051f5f72d5..c89d34a4393 100644 --- a/web/packages/teleport/src/Audit/__snapshots__/Audit.story.test.tsx.snap +++ b/web/packages/teleport/src/Audit/__snapshots__/Audit.story.test.tsx.snap @@ -437,12 +437,12 @@ exports[`list of all events 1`] = ` - - 218 + 224 of - 218 + 224 + + + + +
+ + + + + + + + SAML Connector Deleted +
+ + + User [unimplemented] deleted SAML connector [new_saml_connector] + + + 2020-06-05T19:29:14Z + + + + + + + +
+ + + + + + + + SAML Connector Created +
+ + + User [unimplemented] created SAML connector [new_saml_connector] + + + 2020-06-05T19:29:14Z + + + + + + + +
+ + + + + + + + OIDC Auth Connector Updated +
+ + + User [unimplemented] updated OIDC connector [new_oidc_connector] + + + 2020-06-05T19:29:14Z + + + + + + + +
+ + + + + + + + OIDC Auth Connector Deleted +
+ + + User [unimplemented] deleted OIDC connector [new_oidc_connector] + + + 2020-06-05T19:29:14Z + + + + + + + +
+ + + + + + + + GITHUB Auth Connector Updated +
+ + + User [unimplemented] updated GitHub connector [new_github_connector] + + + 2020-06-05T19:28:28Z + + + + + - User [unimplemented] created GitHub connector [new_github_connector] has been created + User [unimplemented] created GitHub connector [new_github_connector] - - 5 + 8 of - 5 + 8 @@ -12567,6 +12891,168 @@ exports[`loaded audit log screen 1`] = ` + + +
+ + + + + + + + User Role Deleted +
+ + + User [moe] deleted a role [editor] + + + 2023-10-26T22:10:50.076Z + + + + + + + +
+ + + + + + + + User Role Updated +
+ + + User [larry] updated a role [editor] + + + 2023-10-26T22:09:23.29Z + + + + + + + +
+ + + + + + + + User Role Created +
+ + + User [system] created a role [editor] + + + 2023-10-26T16:08:43.426Z + + + + + - `User [${user}] created GitHub connector [${name}] has been created`, + `User [${user}] created GitHub connector [${name}]`, }, [eventCodes.GITHUB_CONNECTOR_DELETED]: { type: 'github.deleted', @@ -193,6 +193,12 @@ export const formatters: Formatters = { format: ({ user, name }) => `User [${user}] deleted GitHub connector [${name}]`, }, + [eventCodes.GITHUB_CONNECTOR_UPDATED]: { + type: 'github.updated', + desc: 'GITHUB Auth Connector Updated', + format: ({ user, name }) => + `User [${user}] updated GitHub connector [${name}]`, + }, [eventCodes.OIDC_CONNECTOR_CREATED]: { type: 'oidc.created', desc: 'OIDC Auth Connector Created', @@ -205,6 +211,12 @@ export const formatters: Formatters = { format: ({ user, name }) => `User [${user}] deleted OIDC connector [${name}]`, }, + [eventCodes.OIDC_CONNECTOR_UPDATED]: { + type: 'oidc.updated', + desc: 'OIDC Auth Connector Updated', + format: ({ user, name }) => + `User [${user}] updated OIDC connector [${name}]`, + }, [eventCodes.PORTFORWARD]: { type: 'port', desc: 'Port Forwarding Started', @@ -228,6 +240,12 @@ export const formatters: Formatters = { format: ({ user, name }) => `User [${user}] deleted SAML connector [${name}]`, }, + [eventCodes.SAML_CONNECTOR_UPDATED]: { + type: 'saml.updated', + desc: 'SAML Connector Updated', + format: ({ user, name }) => + `User [${user}] updated SAML connector [${name}]`, + }, [eventCodes.SCP_DOWNLOAD]: { type: 'scp', desc: 'SCP Download', @@ -731,6 +749,11 @@ export const formatters: Formatters = { desc: 'User Role Deleted', format: ({ user, name }) => `User [${user}] deleted a role [${name}]`, }, + [eventCodes.ROLE_UPDATED]: { + type: 'role.updated', + desc: 'User Role Updated', + format: ({ user, name }) => `User [${user}] updated a role [${name}]`, + }, [eventCodes.TRUSTED_CLUSTER_TOKEN_CREATED]: { type: 'trusted_cluster_token.create', desc: 'Trusted Cluster Token Created', diff --git a/web/packages/teleport/src/services/audit/types.ts b/web/packages/teleport/src/services/audit/types.ts index 6cde8d61fe3..9a51a267cf2 100644 --- a/web/packages/teleport/src/services/audit/types.ts +++ b/web/packages/teleport/src/services/audit/types.ts @@ -120,6 +120,7 @@ export const eventCodes = { EXEC: 'T3002I', GITHUB_CONNECTOR_CREATED: 'T8000I', GITHUB_CONNECTOR_DELETED: 'T8001I', + GITHUB_CONNECTOR_UPDATED: 'T8002I', KUBE_REQUEST: 'T3009I', KUBE_CREATED: 'T3010I', KUBE_UPDATED: 'T3011I', @@ -130,6 +131,7 @@ export const eventCodes = { MFA_DEVICE_DELETE: 'T1007I', OIDC_CONNECTOR_CREATED: 'T8100I', OIDC_CONNECTOR_DELETED: 'T8101I', + OIDC_CONNECTOR_UPDATED: 'T8102I', PORTFORWARD_FAILURE: 'T3003E', PORTFORWARD: 'T3003I', RECOVERY_TOKEN_CREATED: 'T6001I', @@ -140,8 +142,10 @@ export const eventCodes = { RESET_PASSWORD_TOKEN_CREATED: 'T6000I', ROLE_CREATED: 'T9000I', ROLE_DELETED: 'T9001I', + ROLE_UPDATED: 'T9002I', SAML_CONNECTOR_CREATED: 'T8200I', SAML_CONNECTOR_DELETED: 'T8201I', + SAML_CONNECTOR_UPDATED: 'T8202I', SCP_DOWNLOAD_FAILURE: 'T3004E', SCP_DOWNLOAD: 'T3004I', SCP_UPLOAD_FAILURE: 'T3005E', @@ -337,12 +341,18 @@ export type RawEvents = { [eventCodes.GITHUB_CONNECTOR_DELETED]: RawEventConnector< typeof eventCodes.GITHUB_CONNECTOR_DELETED >; + [eventCodes.GITHUB_CONNECTOR_UPDATED]: RawEventConnector< + typeof eventCodes.GITHUB_CONNECTOR_UPDATED + >; [eventCodes.OIDC_CONNECTOR_CREATED]: RawEventConnector< typeof eventCodes.OIDC_CONNECTOR_CREATED >; [eventCodes.OIDC_CONNECTOR_DELETED]: RawEventConnector< typeof eventCodes.OIDC_CONNECTOR_DELETED >; + [eventCodes.OIDC_CONNECTOR_UPDATED]: RawEventConnector< + typeof eventCodes.OIDC_CONNECTOR_UPDATED + >; [eventCodes.PORTFORWARD]: RawEvent; [eventCodes.PORTFORWARD_FAILURE]: RawEvent< typeof eventCodes.PORTFORWARD_FAILURE, @@ -356,6 +366,9 @@ export type RawEvents = { [eventCodes.SAML_CONNECTOR_DELETED]: RawEventConnector< typeof eventCodes.SAML_CONNECTOR_DELETED >; + [eventCodes.SAML_CONNECTOR_UPDATED]: RawEventConnector< + typeof eventCodes.SAML_CONNECTOR_UPDATED + >; [eventCodes.SCP_DOWNLOAD]: RawEvent< typeof eventCodes.SCP_DOWNLOAD, { @@ -617,6 +630,7 @@ export type RawEvents = { >; [eventCodes.ROLE_CREATED]: RawEvent; [eventCodes.ROLE_DELETED]: RawEvent; + [eventCodes.ROLE_UPDATED]: RawEvent; [eventCodes.TRUSTED_CLUSTER_TOKEN_CREATED]: RawEvent< typeof eventCodes.TRUSTED_CLUSTER_TOKEN_CREATED >;