diff --git a/api/client/proto/authservice.pb.go b/api/client/proto/authservice.pb.go index bfd512d622ed5..fc303e6fe0c95 100644 --- a/api/client/proto/authservice.pb.go +++ b/api/client/proto/authservice.pb.go @@ -2204,10 +2204,12 @@ type Features struct { // AccessMonitoringConfigured contributes to the enablement of access monitoring. // NOTE: this flag is used to signal that Access Monitoring is *enabled* on a cluster. // *Access* to the feature is gated on the `AccessMonitoring` entitlement. - AccessMonitoringConfigured bool `protobuf:"varint,36,opt,name=AccessMonitoringConfigured,proto3" json:"AccessMonitoringConfigured,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + AccessMonitoringConfigured bool `protobuf:"varint,36,opt,name=AccessMonitoringConfigured,proto3" json:"AccessMonitoringConfigured,omitempty"` + // CloudAnonymizationKey is a hash of the Salesforce ID used to anonymize usage events + CloudAnonymizationKey []byte `protobuf:"bytes,37,opt,name=CloudAnonymizationKey,proto3" json:"cloud_anonymization_key,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *Features) Reset() { *m = Features{} } @@ -2474,6 +2476,13 @@ func (m *Features) GetAccessMonitoringConfigured() bool { return false } +func (m *Features) GetCloudAnonymizationKey() []byte { + if m != nil { + return m.CloudAnonymizationKey + } + return nil +} + // EntitlementInfo is the state and limits of a particular entitlement type EntitlementInfo struct { // enabled indicates the feature is 'on' if true @@ -15786,947 +15795,949 @@ func init() { } var fileDescriptor_0ffcffcda38ae159 = []byte{ - // 15036 bytes of a gzipped FileDescriptorProto + // 15071 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x59, 0x6c, 0x64, 0x49, 0x76, 0x18, 0xca, 0x4c, 0xee, 0x87, 0x4b, 0x65, 0x05, 0xc9, 0x62, 0x16, 0x6b, 0xc9, 0xaa, 0x5b, 0xbd, 0x54, 0xd7, 0xf4, 0xd4, 0xc2, 0x5e, 0xa6, 0xb7, 0xe9, 0xee, 0xe4, 0x52, 0x24, 0xab, 0xb8, 0xf5, 0x4d, 0x92, 0xd5, 0x9b, 0x26, 0xe7, 0x32, 0x33, 0x8a, 0xbc, 0xaa, 0xe4, 0xbd, 0x39, 0xf7, - 0xde, 0xac, 0xea, 0x1a, 0x3d, 0xe9, 0x41, 0xd2, 0x5b, 0xf4, 0xf3, 0xde, 0x93, 0x80, 0xf7, 0x04, - 0xbd, 0xf7, 0x3e, 0x64, 0x03, 0x36, 0x60, 0x18, 0xb0, 0xe1, 0x1f, 0x43, 0x3f, 0x16, 0x0c, 0x7f, - 0x79, 0x2c, 0xc0, 0xb0, 0x0d, 0x49, 0x3f, 0x06, 0x4c, 0xd9, 0x03, 0xe8, 0x87, 0xb0, 0x3f, 0x04, - 0xc3, 0x06, 0x3c, 0x80, 0x00, 0x23, 0x4e, 0x2c, 0x37, 0xe2, 0x2e, 0x99, 0x64, 0x75, 0xf5, 0xc8, - 0x3f, 0x55, 0xcc, 0x13, 0xe7, 0x9c, 0x88, 0x7b, 0x62, 0x3b, 0x71, 0xe2, 0xc4, 0x39, 0x70, 0x3b, - 0xa2, 0x2d, 0xda, 0xf6, 0x83, 0xe8, 0x4e, 0x8b, 0x1e, 0x38, 0x8d, 0xe7, 0x77, 0x1a, 0x2d, 0x97, - 0x7a, 0xd1, 0x9d, 0x76, 0xe0, 0x47, 0xfe, 0x1d, 0xa7, 0x13, 0x1d, 0x86, 0x34, 0x78, 0xea, 0x36, - 0xe8, 0x6d, 0x84, 0x90, 0x41, 0xfc, 0x6f, 0x6e, 0xfa, 0xc0, 0x3f, 0xf0, 0x39, 0x0e, 0xfb, 0x8b, - 0x17, 0xce, 0x5d, 0x3a, 0xf0, 0xfd, 0x83, 0x16, 0xe5, 0xc4, 0xfb, 0x9d, 0xc7, 0x77, 0xe8, 0x51, - 0x3b, 0x7a, 0x2e, 0x0a, 0x2b, 0xc9, 0xc2, 0xc8, 0x3d, 0xa2, 0x61, 0xe4, 0x1c, 0xb5, 0x05, 0xc2, - 0x1b, 0xaa, 0x29, 0x4e, 0x14, 0xb1, 0x92, 0xc8, 0xf5, 0xbd, 0x3b, 0x4f, 0xef, 0xe9, 0x3f, 0x05, - 0xea, 0xcd, 0xae, 0xad, 0x6e, 0xd0, 0x20, 0x0a, 0x4f, 0x85, 0x49, 0x9f, 0x52, 0x2f, 0x4a, 0x55, - 0x2f, 0x30, 0xa3, 0xe7, 0x6d, 0x1a, 0x72, 0x14, 0xf9, 0x9f, 0x40, 0xbd, 0x9e, 0x8d, 0x8a, 0xff, - 0x0a, 0x94, 0xef, 0x67, 0xa3, 0x3c, 0xa3, 0xfb, 0x4c, 0xa6, 0x9e, 0xfa, 0xa3, 0x07, 0x7a, 0xe0, - 0xb4, 0xdb, 0x34, 0x88, 0xff, 0x10, 0xe8, 0x17, 0x15, 0xfa, 0xd1, 0x63, 0x87, 0x89, 0xe8, 0xe8, - 0xb1, 0x93, 0xfa, 0x8c, 0x4e, 0xe8, 0x1c, 0x50, 0xd1, 0xfc, 0xa7, 0xf7, 0xf4, 0x9f, 0x1c, 0xd5, - 0xfa, 0xc3, 0x02, 0x0c, 0x3e, 0x72, 0xa2, 0xc6, 0x21, 0xf9, 0x04, 0x06, 0x1f, 0xba, 0x5e, 0x33, - 0x2c, 0x17, 0xae, 0xf5, 0xdf, 0x1c, 0x9b, 0x2f, 0xdd, 0xe6, 0x9f, 0x82, 0x85, 0xac, 0x60, 0x61, - 0xf6, 0x67, 0xc7, 0x95, 0xbe, 0x93, 0xe3, 0xca, 0xb9, 0x27, 0x0c, 0xed, 0x4d, 0xff, 0xc8, 0x8d, - 0xb0, 0x6f, 0x6d, 0x4e, 0x47, 0x76, 0x61, 0xaa, 0xda, 0x6a, 0xf9, 0xcf, 0xb6, 0x9d, 0x20, 0x72, - 0x9d, 0x56, 0xad, 0xd3, 0x68, 0xd0, 0x30, 0x2c, 0x17, 0xaf, 0x15, 0x6e, 0x8e, 0x2c, 0xdc, 0x38, - 0x39, 0xae, 0x54, 0x1c, 0x56, 0x5c, 0x6f, 0xf3, 0xf2, 0x7a, 0xc8, 0x11, 0x34, 0x46, 0x59, 0xf4, - 0xd6, 0x9f, 0x0c, 0x41, 0x69, 0xd5, 0x0f, 0xa3, 0x45, 0xd6, 0xa3, 0x36, 0xfd, 0x49, 0x87, 0x86, - 0x11, 0xb9, 0x01, 0x43, 0x0c, 0xb6, 0xb6, 0x54, 0x2e, 0x5c, 0x2b, 0xdc, 0x1c, 0x5d, 0x18, 0x3b, - 0x39, 0xae, 0x0c, 0x1f, 0xfa, 0x61, 0x54, 0x77, 0x9b, 0xb6, 0x28, 0x22, 0x6f, 0xc0, 0xc8, 0xa6, - 0xdf, 0xa4, 0x9b, 0xce, 0x11, 0xc5, 0x56, 0x8c, 0x2e, 0x4c, 0x9c, 0x1c, 0x57, 0x46, 0x3d, 0xbf, - 0x49, 0xeb, 0x9e, 0x73, 0x44, 0x6d, 0x55, 0x4c, 0xf6, 0x60, 0xc0, 0xf6, 0x5b, 0xb4, 0xdc, 0x8f, - 0x68, 0x0b, 0x27, 0xc7, 0x95, 0x81, 0xc0, 0x6f, 0xd1, 0x5f, 0x1c, 0x57, 0xde, 0x3d, 0x70, 0xa3, - 0xc3, 0xce, 0xfe, 0xed, 0x86, 0x7f, 0x74, 0xe7, 0x20, 0x70, 0x9e, 0xba, 0x7c, 0x10, 0x3a, 0xad, - 0x3b, 0xf1, 0x50, 0x6d, 0xbb, 0xa2, 0xdf, 0x6b, 0xcf, 0xc3, 0x88, 0x1e, 0x31, 0x4e, 0x36, 0xf2, - 0x23, 0x8f, 0x60, 0xba, 0xda, 0x6c, 0xba, 0x9c, 0x62, 0x3b, 0x70, 0xbd, 0x86, 0xdb, 0x76, 0x5a, - 0x61, 0x79, 0xe0, 0x5a, 0xff, 0xcd, 0x51, 0x21, 0x14, 0x55, 0x5e, 0x6f, 0x2b, 0x04, 0x4d, 0x28, - 0x99, 0x0c, 0xc8, 0x5b, 0x30, 0xb2, 0xb4, 0x59, 0x63, 0x6d, 0x0f, 0xcb, 0x83, 0xc8, 0x6c, 0xf6, - 0xe4, 0xb8, 0x32, 0xd5, 0xf4, 0x42, 0xfc, 0x34, 0x9d, 0x81, 0x42, 0x24, 0xef, 0xc2, 0xf8, 0x76, - 0x67, 0xbf, 0xe5, 0x36, 0x76, 0xd6, 0x6b, 0x0f, 0xe9, 0xf3, 0xf2, 0xd0, 0xb5, 0xc2, 0xcd, 0xf1, - 0x05, 0x72, 0x72, 0x5c, 0x99, 0x6c, 0x23, 0xbc, 0x1e, 0xb5, 0xc2, 0xfa, 0x13, 0xfa, 0xdc, 0x36, - 0xf0, 0x62, 0xba, 0x5a, 0x6d, 0x95, 0xd1, 0x0d, 0xa7, 0xe8, 0xc2, 0xf0, 0x50, 0xa7, 0xe3, 0x78, - 0xe4, 0x0e, 0x80, 0x4d, 0x8f, 0xfc, 0x88, 0x56, 0x9b, 0xcd, 0xa0, 0x3c, 0x82, 0xb2, 0x3d, 0x77, - 0x72, 0x5c, 0x19, 0x0b, 0x10, 0x5a, 0x77, 0x9a, 0xcd, 0xc0, 0xd6, 0x50, 0xc8, 0x22, 0x8c, 0xd8, - 0x3e, 0x17, 0x70, 0x79, 0xf4, 0x5a, 0xe1, 0xe6, 0xd8, 0xfc, 0x39, 0x31, 0x0c, 0x25, 0x78, 0xe1, - 0xc2, 0xc9, 0x71, 0x85, 0x04, 0xe2, 0x97, 0xfe, 0x95, 0x12, 0x83, 0x54, 0x60, 0x78, 0xd3, 0x5f, - 0x74, 0x1a, 0x87, 0xb4, 0x0c, 0x38, 0xf6, 0x06, 0x4f, 0x8e, 0x2b, 0x85, 0xef, 0xdb, 0x12, 0x4a, - 0x9e, 0xc2, 0x58, 0xdc, 0x51, 0x61, 0x79, 0x0c, 0xc5, 0xb7, 0x73, 0x72, 0x5c, 0xb9, 0x10, 0x22, - 0xb8, 0xce, 0xba, 0x5e, 0x93, 0xe0, 0xb7, 0x18, 0x05, 0x7a, 0x45, 0xe4, 0x6b, 0x98, 0x89, 0x7f, - 0x56, 0xc3, 0x90, 0x06, 0x8c, 0xc7, 0xda, 0x52, 0x79, 0x02, 0x25, 0xf3, 0xda, 0xc9, 0x71, 0xc5, - 0xd2, 0x5a, 0x50, 0x77, 0x24, 0x4a, 0xdd, 0x6d, 0x6a, 0x5f, 0x9a, 0xcd, 0xe4, 0xc1, 0xc0, 0xc8, - 0x78, 0x69, 0xc2, 0xbe, 0xb2, 0xeb, 0x85, 0x91, 0xb3, 0xdf, 0xa2, 0x99, 0x48, 0xd6, 0x5f, 0x17, - 0x80, 0x6c, 0xb5, 0xa9, 0x57, 0xab, 0xad, 0xb2, 0xf9, 0x24, 0xa7, 0xd3, 0x9b, 0x30, 0xca, 0x3b, - 0x8e, 0xf5, 0x6e, 0x11, 0x7b, 0x77, 0xf2, 0xe4, 0xb8, 0x02, 0xa2, 0x77, 0x59, 0xcf, 0xc6, 0x08, - 0xe4, 0x55, 0xe8, 0xdf, 0xd9, 0x59, 0xc7, 0xb9, 0xd2, 0xbf, 0x30, 0x75, 0x72, 0x5c, 0xe9, 0x8f, - 0xa2, 0xd6, 0x2f, 0x8e, 0x2b, 0x23, 0x4b, 0x9d, 0x00, 0xc5, 0x62, 0xb3, 0x72, 0xf2, 0x2a, 0x0c, - 0x2f, 0xb6, 0x3a, 0x61, 0x44, 0x83, 0xf2, 0x40, 0x3c, 0x49, 0x1b, 0x1c, 0x64, 0xcb, 0x32, 0xf2, - 0x3d, 0x18, 0xd8, 0x0d, 0x69, 0x50, 0x1e, 0xc4, 0xfe, 0x9e, 0x10, 0xfd, 0xcd, 0x40, 0x7b, 0xf3, - 0x0b, 0x23, 0x6c, 0x26, 0x76, 0x42, 0x1a, 0xd8, 0x88, 0x44, 0x6e, 0xc3, 0x20, 0xef, 0xb4, 0x21, - 0x5c, 0xa4, 0x26, 0xd4, 0xe8, 0x68, 0xd1, 0xbd, 0x77, 0x17, 0x46, 0x4f, 0x8e, 0x2b, 0x83, 0xd8, - 0x79, 0x36, 0x47, 0x7b, 0x30, 0x30, 0x52, 0x28, 0x15, 0xed, 0x11, 0x46, 0xcb, 0xa6, 0x85, 0xf5, - 0x3d, 0x18, 0xd3, 0x3e, 0x9f, 0x5c, 0x86, 0x01, 0xf6, 0x3f, 0x2e, 0x22, 0xe3, 0xbc, 0x32, 0xb6, - 0x71, 0xd8, 0x08, 0xb5, 0xfe, 0xd6, 0x14, 0x94, 0x18, 0xa5, 0xb1, 0xf2, 0xdc, 0xd6, 0x45, 0xc5, - 0xe9, 0x4a, 0xa6, 0xa8, 0xca, 0x05, 0x5d, 0x58, 0x37, 0x41, 0xd5, 0x2e, 0x16, 0xa1, 0xf1, 0x93, - 0xe3, 0xca, 0x48, 0x47, 0xc0, 0xe2, 0xb6, 0x91, 0x1a, 0x0c, 0x2f, 0x7f, 0xd3, 0x76, 0x03, 0x1a, - 0xa2, 0x68, 0xc7, 0xe6, 0xe7, 0x6e, 0xf3, 0xed, 0xf2, 0xb6, 0xdc, 0x2e, 0x6f, 0xef, 0xc8, 0xed, - 0x72, 0xe1, 0x8a, 0x58, 0x8c, 0xcf, 0x53, 0x4e, 0x12, 0x8f, 0x8f, 0xdf, 0xfd, 0x8b, 0x4a, 0xc1, - 0x96, 0x9c, 0xc8, 0x9b, 0x30, 0x74, 0xdf, 0x0f, 0x8e, 0x9c, 0x48, 0xf4, 0xc1, 0xf4, 0xc9, 0x71, - 0xa5, 0xf4, 0x18, 0x21, 0xda, 0x90, 0x12, 0x38, 0xe4, 0x3e, 0x4c, 0xda, 0x7e, 0x27, 0xa2, 0x3b, - 0xbe, 0xec, 0xb9, 0x41, 0xa4, 0xba, 0x7a, 0x72, 0x5c, 0x99, 0x0b, 0x58, 0x49, 0x3d, 0xf2, 0xeb, - 0xa2, 0x0b, 0x35, 0xfa, 0x04, 0x15, 0x59, 0x86, 0xc9, 0x2a, 0xae, 0xde, 0x42, 0x6a, 0xbc, 0xbf, - 0x46, 0x17, 0xae, 0x9c, 0x1c, 0x57, 0x2e, 0x3a, 0x58, 0x52, 0x0f, 0x44, 0x91, 0xce, 0xc6, 0x24, - 0x22, 0x9b, 0x70, 0xfe, 0x61, 0x67, 0x9f, 0x06, 0x1e, 0x8d, 0x68, 0x28, 0x5b, 0x34, 0x8c, 0x2d, - 0xba, 0x76, 0x72, 0x5c, 0xb9, 0xfc, 0x44, 0x15, 0x66, 0xb4, 0x29, 0x4d, 0x4a, 0x28, 0x9c, 0x13, - 0x0d, 0x5d, 0x72, 0x22, 0x67, 0xdf, 0x09, 0x29, 0x2e, 0x4a, 0x63, 0xf3, 0x17, 0xb8, 0x88, 0x6f, - 0x27, 0x4a, 0x17, 0x6e, 0x08, 0x29, 0x5f, 0x52, 0xdf, 0xde, 0x14, 0x45, 0x5a, 0x45, 0x49, 0x9e, - 0x6c, 0x6d, 0x56, 0xfb, 0xce, 0x28, 0xb6, 0x16, 0xd7, 0x66, 0xb5, 0xef, 0xe8, 0xab, 0x96, 0xda, - 0x81, 0xd6, 0x61, 0x70, 0x97, 0xed, 0xce, 0xb8, 0x66, 0x4d, 0xce, 0x5f, 0x17, 0x2d, 0x4a, 0x8e, - 0xbf, 0xdb, 0xec, 0x07, 0x22, 0xe2, 0xcc, 0x3b, 0x87, 0x3b, 0xba, 0xbe, 0x17, 0x63, 0x19, 0xf9, - 0x0c, 0x40, 0xb4, 0xaa, 0xda, 0x6e, 0x97, 0xc7, 0xf0, 0x23, 0xcf, 0x9b, 0x1f, 0x59, 0x6d, 0xb7, - 0x17, 0xae, 0x8a, 0xef, 0xbb, 0xa0, 0xbe, 0xcf, 0x69, 0xb7, 0x35, 0x6e, 0x1a, 0x13, 0xf2, 0x09, - 0x8c, 0xe3, 0x92, 0x26, 0x7b, 0x74, 0x1c, 0x7b, 0xf4, 0xd2, 0xc9, 0x71, 0x65, 0x16, 0x57, 0xab, - 0x8c, 0xfe, 0x34, 0x08, 0xc8, 0x6f, 0xc0, 0x8c, 0x60, 0xf7, 0xc8, 0xf5, 0x9a, 0xfe, 0xb3, 0x70, - 0x89, 0x86, 0x4f, 0x22, 0xbf, 0x8d, 0xcb, 0xdf, 0xd8, 0xfc, 0x65, 0xb3, 0x79, 0x26, 0xce, 0xc2, - 0x2d, 0xd1, 0x52, 0x4b, 0xb5, 0xf4, 0x19, 0x47, 0xa8, 0x37, 0x39, 0x86, 0xbe, 0x40, 0x66, 0xb2, - 0x20, 0x6b, 0x70, 0x6e, 0x37, 0xa4, 0xc6, 0x37, 0x4c, 0xe2, 0xfe, 0x50, 0x61, 0x3d, 0xdc, 0x09, - 0x69, 0x3d, 0xef, 0x3b, 0x92, 0x74, 0xc4, 0x06, 0xb2, 0x14, 0xf8, 0xed, 0xc4, 0x18, 0x3f, 0x87, - 0x12, 0xb1, 0x4e, 0x8e, 0x2b, 0x57, 0x9b, 0x81, 0xdf, 0xae, 0xe7, 0x0f, 0xf4, 0x0c, 0x6a, 0xf2, - 0x23, 0xb8, 0xb0, 0xe8, 0x7b, 0x1e, 0x6d, 0xb0, 0x15, 0x74, 0xc9, 0x75, 0x0e, 0x3c, 0x3f, 0x8c, - 0xdc, 0xc6, 0xda, 0x52, 0xb9, 0x14, 0x6f, 0x0f, 0x0d, 0x85, 0x51, 0x6f, 0x2a, 0x14, 0x73, 0x7b, - 0xc8, 0xe1, 0x42, 0xbe, 0x82, 0x09, 0x51, 0x17, 0x0d, 0x70, 0x68, 0x9e, 0xef, 0x3e, 0xd0, 0x14, - 0x32, 0xdf, 0xe8, 0x03, 0xf9, 0x93, 0xab, 0x4e, 0x26, 0x2f, 0xf2, 0x35, 0x8c, 0x6d, 0xdc, 0xaf, - 0xda, 0x34, 0x6c, 0xfb, 0x5e, 0x48, 0xcb, 0x04, 0x7b, 0xf4, 0xaa, 0x60, 0xbd, 0x71, 0xbf, 0x5a, - 0xed, 0x44, 0x87, 0xd4, 0x8b, 0xdc, 0x86, 0x13, 0x51, 0x89, 0xb5, 0x30, 0xc7, 0x46, 0xde, 0xd1, - 0x63, 0xa7, 0x1e, 0x08, 0x88, 0xf6, 0x15, 0x3a, 0x3b, 0x32, 0x07, 0x23, 0xb5, 0xda, 0xea, 0xba, - 0x7f, 0xe0, 0x7a, 0xe5, 0x29, 0x26, 0x0c, 0x5b, 0xfd, 0x26, 0x8f, 0x61, 0x46, 0x3b, 0x1b, 0xd4, - 0xd9, 0xff, 0xf4, 0x88, 0x7a, 0x51, 0x79, 0x1a, 0xdb, 0xf0, 0x7d, 0x75, 0xb8, 0xb9, 0xad, 0x1f, - 0x21, 0x9e, 0xde, 0xbb, 0x5d, 0x8d, 0x7f, 0xd6, 0x24, 0xd1, 0x42, 0xb1, 0x5c, 0xb0, 0xa7, 0x9d, - 0x8c, 0x12, 0xb2, 0x03, 0xc3, 0xdb, 0x9d, 0xa0, 0xed, 0x87, 0xb4, 0x3c, 0x83, 0x82, 0xbb, 0xd1, - 0x6d, 0x86, 0x0a, 0xd4, 0x85, 0x19, 0xb6, 0x44, 0xb7, 0xf9, 0x0f, 0xed, 0xeb, 0x24, 0x2b, 0xf2, - 0x29, 0x8c, 0xd7, 0x6a, 0xab, 0xf1, 0x86, 0x72, 0x01, 0x37, 0x94, 0xcb, 0x27, 0xc7, 0x95, 0x32, - 0x53, 0xa9, 0xe2, 0x4d, 0x45, 0x9f, 0x55, 0x3a, 0x05, 0xe3, 0xb0, 0xb3, 0x5e, 0x8b, 0x39, 0xcc, - 0xc6, 0x1c, 0x98, 0x32, 0x97, 0xcd, 0x41, 0xa7, 0x20, 0xff, 0xa0, 0x00, 0xd7, 0x74, 0x96, 0x59, - 0x82, 0x29, 0x5f, 0x7c, 0x11, 0x69, 0xce, 0x9f, 0x1c, 0x57, 0x6e, 0x9b, 0xdf, 0x51, 0xcf, 0xec, - 0x2c, 0xad, 0x6d, 0x3d, 0x9b, 0x82, 0xed, 0xd5, 0x3f, 0x20, 0xb3, 0xbd, 0x73, 0x2f, 0xdc, 0x5e, - 0x53, 0x6a, 0xbd, 0xdb, 0xdb, 0xab, 0x29, 0xd6, 0xe7, 0x30, 0xaa, 0x16, 0x6d, 0x32, 0x0c, 0xfd, - 0xd5, 0x56, 0xab, 0xd4, 0xc7, 0xfe, 0xa8, 0xd5, 0x56, 0x4b, 0x05, 0x32, 0x09, 0x10, 0xef, 0x54, - 0xa5, 0x22, 0x19, 0x87, 0x11, 0xb9, 0x93, 0x94, 0xfa, 0x11, 0xbf, 0xdd, 0x2e, 0x0d, 0x10, 0x02, - 0x93, 0xe6, 0x7a, 0x56, 0x1a, 0xb4, 0x7e, 0xaf, 0x00, 0xa3, 0x6a, 0x1e, 0x92, 0x73, 0x30, 0xb6, - 0xbb, 0x59, 0xdb, 0x5e, 0x5e, 0x5c, 0xbb, 0xbf, 0xb6, 0xbc, 0x54, 0xea, 0x23, 0x57, 0xe0, 0xe2, - 0x4e, 0x6d, 0xb5, 0xbe, 0xb4, 0x50, 0x5f, 0xdf, 0x5a, 0xac, 0xae, 0xd7, 0xb7, 0xed, 0xad, 0xcf, - 0xbf, 0xa8, 0xef, 0xec, 0x6e, 0x6e, 0x2e, 0xaf, 0x97, 0x0a, 0xa4, 0x0c, 0xd3, 0xac, 0xf8, 0xe1, - 0xee, 0xc2, 0xb2, 0x8e, 0x50, 0x2a, 0x92, 0xeb, 0x70, 0x25, 0xab, 0xa4, 0xbe, 0xba, 0x5c, 0x5d, - 0x5a, 0x5f, 0xae, 0xd5, 0x4a, 0xfd, 0x64, 0x16, 0xa6, 0x18, 0x4a, 0x75, 0x7b, 0xdb, 0xa0, 0x1d, - 0xb0, 0x5a, 0x30, 0xa6, 0x4d, 0x00, 0x72, 0x19, 0xca, 0x8b, 0xcb, 0xf6, 0x4e, 0x7d, 0x7b, 0xd7, - 0xde, 0xde, 0xaa, 0x2d, 0xd7, 0xcd, 0x16, 0x26, 0x4b, 0xd7, 0xb7, 0x56, 0xd6, 0x36, 0xeb, 0x0c, - 0x54, 0x2b, 0x15, 0x58, 0x33, 0x8c, 0xd2, 0xda, 0xda, 0xe6, 0xca, 0xfa, 0x72, 0x7d, 0xb7, 0xb6, - 0x2c, 0x50, 0x8a, 0xd6, 0x6f, 0x15, 0x53, 0x5b, 0x3a, 0x99, 0x87, 0xb1, 0x1a, 0xb7, 0x57, 0xe0, - 0x32, 0xc7, 0x0f, 0x88, 0x4c, 0x47, 0x1b, 0x17, 0x66, 0x0c, 0xbe, 0x82, 0xe9, 0x48, 0x4c, 0x4b, - 0xdb, 0x66, 0xb3, 0xb9, 0xe1, 0xb7, 0x74, 0x2d, 0xad, 0x2d, 0x60, 0xb6, 0x2a, 0x25, 0xf3, 0x9a, - 0x3e, 0xc7, 0x4f, 0x8b, 0x78, 0x22, 0x91, 0xfa, 0x9c, 0xbe, 0xb7, 0x2b, 0xcd, 0x6e, 0x3e, 0xee, - 0x52, 0xa1, 0x86, 0x21, 0x4d, 0x86, 0x2e, 0xa1, 0xf0, 0xc8, 0x1b, 0x52, 0xd3, 0xe5, 0xa7, 0x3b, - 0xdc, 0xec, 0x13, 0xe7, 0x12, 0xa1, 0xe4, 0x5a, 0x9d, 0x9c, 0x8d, 0x95, 0x7c, 0x98, 0x1c, 0x33, - 0x42, 0x18, 0xc8, 0x2c, 0xb1, 0x7f, 0xda, 0x09, 0x54, 0x52, 0x81, 0x41, 0xbe, 0xe2, 0x72, 0x79, - 0xa0, 0x6e, 0xdd, 0x62, 0x00, 0x9b, 0xc3, 0xad, 0xdf, 0xef, 0xd7, 0x95, 0x0c, 0xa6, 0x4b, 0x6b, - 0xf2, 0x46, 0x5d, 0x1a, 0xe5, 0x8c, 0x50, 0x76, 0x14, 0xe4, 0xb3, 0x04, 0x8f, 0x82, 0xfd, 0xf1, - 0x51, 0x50, 0x4c, 0x35, 0x7e, 0x14, 0x8c, 0x51, 0x58, 0x2f, 0x0a, 0xb5, 0x0d, 0xb9, 0x0e, 0xc4, - 0xbd, 0x28, 0x54, 0x3d, 0xd1, 0x8b, 0x1a, 0x12, 0xf9, 0x00, 0xa0, 0xfa, 0xa8, 0x86, 0x67, 0x1e, - 0x7b, 0x53, 0xa8, 0xae, 0xb8, 0xc9, 0x38, 0xcf, 0x42, 0x71, 0xa4, 0x0a, 0xf4, 0x33, 0xa3, 0x86, - 0x4d, 0x16, 0x60, 0xa2, 0xfa, 0xd3, 0x4e, 0x40, 0xd7, 0x9a, 0x6c, 0x9f, 0x8a, 0xf8, 0xe1, 0x78, - 0x94, 0x2f, 0xa4, 0x0e, 0x2b, 0xa8, 0xbb, 0xa2, 0x44, 0x63, 0x60, 0x92, 0x90, 0x2d, 0x38, 0xbf, - 0xb2, 0xb8, 0x2d, 0xc6, 0x55, 0xb5, 0xd1, 0xf0, 0x3b, 0x5e, 0x24, 0xf4, 0xd5, 0xeb, 0x27, 0xc7, - 0x95, 0x2b, 0x07, 0x8d, 0x76, 0x5d, 0x8e, 0x41, 0x87, 0x17, 0xeb, 0x0a, 0x6b, 0x8a, 0x96, 0xdc, - 0x80, 0xfe, 0x5d, 0x7b, 0x4d, 0x9c, 0x9c, 0xcf, 0x9f, 0x1c, 0x57, 0x26, 0x3a, 0x81, 0xab, 0x91, - 0xb0, 0xd2, 0x07, 0x03, 0x23, 0xc5, 0x52, 0xbf, 0x3d, 0x5a, 0xa3, 0x61, 0xc8, 0x0f, 0x79, 0x2d, - 0x98, 0x5c, 0xa1, 0x11, 0x1b, 0x7d, 0xf2, 0xd0, 0xd2, 0xbd, 0x6f, 0x3e, 0x82, 0xb1, 0x47, 0x6e, - 0x74, 0x58, 0xa3, 0x8d, 0x80, 0x46, 0xd2, 0x60, 0x83, 0x72, 0x7b, 0xe6, 0x46, 0x87, 0xf5, 0x90, - 0xc3, 0xf5, 0xcd, 0x59, 0x43, 0xb7, 0x96, 0xe1, 0x9c, 0xa8, 0x4d, 0x9d, 0x91, 0xe6, 0x4d, 0x86, - 0x05, 0x64, 0x88, 0x7d, 0xa7, 0x33, 0x34, 0xd9, 0xfc, 0xe3, 0x22, 0xcc, 0x2c, 0x1e, 0x3a, 0xde, - 0x01, 0xdd, 0x76, 0xc2, 0xf0, 0x99, 0x1f, 0x34, 0xb5, 0xc6, 0xe3, 0x01, 0x31, 0xd5, 0x78, 0x3c, - 0x11, 0xce, 0xc3, 0xd8, 0x56, 0xab, 0x29, 0x69, 0xc4, 0xe1, 0x15, 0xeb, 0xf2, 0x5b, 0xcd, 0x7a, - 0x5b, 0xf2, 0xd2, 0x91, 0x18, 0xcd, 0x26, 0x7d, 0xa6, 0x68, 0xfa, 0x63, 0x1a, 0x8f, 0x3e, 0xd3, - 0x68, 0x34, 0x24, 0xb2, 0x0c, 0xe7, 0x6b, 0xb4, 0xe1, 0x7b, 0xcd, 0xfb, 0x4e, 0x23, 0xf2, 0x83, - 0x1d, 0xff, 0x09, 0xf5, 0xc4, 0xa8, 0x44, 0xed, 0x3e, 0xc4, 0xc2, 0xfa, 0x63, 0x2c, 0xad, 0x47, - 0xac, 0xd8, 0x4e, 0x53, 0x90, 0x2d, 0x18, 0x79, 0x24, 0xcc, 0x7e, 0xe2, 0xc4, 0xfb, 0xea, 0x6d, - 0x65, 0x07, 0x5c, 0x0c, 0x28, 0x0e, 0x25, 0xa7, 0xa5, 0xce, 0xec, 0x4a, 0x59, 0xc2, 0xf5, 0x48, - 0x62, 0xda, 0x8a, 0x89, 0xb5, 0x0b, 0x13, 0xdb, 0xad, 0xce, 0x81, 0xeb, 0xb1, 0x95, 0xa3, 0x46, - 0x7f, 0x42, 0x96, 0x00, 0x62, 0x80, 0x30, 0xe6, 0x4d, 0x89, 0x73, 0x72, 0x5c, 0xb0, 0xf7, 0x96, - 0x98, 0x7e, 0x08, 0xc1, 0x63, 0x8d, 0xad, 0xd1, 0x59, 0xff, 0xad, 0x1f, 0x88, 0xe8, 0x00, 0xdc, - 0xc9, 0x6a, 0x34, 0x62, 0x7b, 0xcc, 0x05, 0x28, 0x2a, 0x9b, 0xdb, 0xd0, 0xc9, 0x71, 0xa5, 0xe8, - 0x36, 0xed, 0xe2, 0xda, 0x12, 0x79, 0x1b, 0x06, 0x11, 0x0d, 0xe5, 0x3f, 0xa9, 0xea, 0xd3, 0x39, - 0xf0, 0x15, 0x04, 0xb7, 0x50, 0x9b, 0x23, 0x93, 0x77, 0x60, 0x74, 0x89, 0xb6, 0xe8, 0x81, 0x13, - 0xf9, 0x72, 0x4d, 0xe0, 0x56, 0x2c, 0x09, 0xd4, 0xc6, 0x5c, 0x8c, 0xc9, 0xce, 0xb4, 0x36, 0x75, - 0x42, 0xdf, 0xd3, 0xcf, 0xb4, 0x01, 0x42, 0xf4, 0x33, 0x2d, 0xc7, 0x21, 0xff, 0x4f, 0x01, 0xc6, - 0xaa, 0x9e, 0x27, 0xac, 0x43, 0xa1, 0x90, 0xfa, 0xcc, 0x6d, 0x65, 0x4e, 0x5d, 0x77, 0xf6, 0x69, - 0x6b, 0xcf, 0x69, 0x75, 0x68, 0xb8, 0xf0, 0x35, 0x3b, 0x66, 0xfc, 0xdb, 0xe3, 0xca, 0x87, 0x67, - 0xb0, 0xf7, 0xc4, 0x86, 0xd9, 0x9d, 0xc0, 0x71, 0xa3, 0xf0, 0xe4, 0xb8, 0x32, 0xe3, 0xc4, 0x15, - 0xea, 0xf3, 0x46, 0x6b, 0x47, 0xbc, 0xc0, 0x0f, 0xf5, 0x5a, 0xe0, 0xc9, 0x11, 0x9c, 0xab, 0x86, - 0x61, 0xe7, 0x88, 0xd6, 0x22, 0x27, 0x88, 0x76, 0xdc, 0x23, 0x8a, 0xab, 0x4a, 0x77, 0x0b, 0xc1, - 0xeb, 0x3f, 0x3b, 0xae, 0x14, 0xd8, 0xc9, 0xc6, 0x41, 0x52, 0xa6, 0xbc, 0x04, 0x51, 0x3d, 0x72, - 0xf5, 0x3d, 0x0a, 0x6d, 0x05, 0x49, 0xde, 0xd6, 0x0d, 0xa5, 0x55, 0xac, 0x2d, 0xe5, 0xf5, 0xb8, - 0xb5, 0x08, 0x97, 0x57, 0x68, 0x64, 0xd3, 0x90, 0x46, 0x72, 0x8e, 0xe0, 0x08, 0x8f, 0x2d, 0xb4, - 0xc3, 0xf8, 0x5b, 0x11, 0x63, 0xf7, 0xf3, 0x79, 0x21, 0x4b, 0xac, 0xff, 0xa5, 0x00, 0x95, 0xc5, - 0x80, 0xf2, 0x43, 0x41, 0x0e, 0xa3, 0xee, 0x6b, 0xd7, 0x65, 0x18, 0xd8, 0x79, 0xde, 0x96, 0xa6, - 0x15, 0x2c, 0x65, 0x9d, 0x62, 0x23, 0xf4, 0x94, 0x96, 0x2a, 0xeb, 0x31, 0xcc, 0xd8, 0xd4, 0xa3, - 0xcf, 0x9c, 0xfd, 0x16, 0x35, 0x8c, 0x3d, 0x15, 0x18, 0xe4, 0x13, 0x3d, 0xf5, 0x09, 0x1c, 0x7e, - 0x36, 0xc3, 0x99, 0x35, 0x01, 0x63, 0xdb, 0xae, 0x77, 0x20, 0xb8, 0x5b, 0x7f, 0x39, 0x00, 0xe3, - 0xfc, 0xb7, 0x38, 0xe7, 0x24, 0xf6, 0xbc, 0xc2, 0x69, 0xf6, 0xbc, 0xf7, 0x60, 0x82, 0x6d, 0x1a, - 0x34, 0xd8, 0xa3, 0x01, 0x5b, 0xff, 0x85, 0x24, 0xf0, 0xcc, 0x16, 0x62, 0x41, 0xfd, 0x29, 0x2f, - 0xb1, 0x4d, 0x44, 0xb2, 0x0e, 0x93, 0x1c, 0x70, 0x9f, 0x3a, 0x51, 0x27, 0x36, 0x3b, 0x9d, 0x13, - 0x07, 0x1b, 0x09, 0xe6, 0x43, 0x53, 0xf0, 0x7a, 0x2c, 0x80, 0x76, 0x82, 0x96, 0x7c, 0x02, 0xe7, - 0xb6, 0x03, 0xff, 0x9b, 0xe7, 0xda, 0x2e, 0xcf, 0x67, 0x27, 0x3f, 0x02, 0xb1, 0xa2, 0xba, 0xbe, - 0xd7, 0x27, 0xb1, 0xc9, 0x1b, 0x30, 0xb2, 0x16, 0x2e, 0xf8, 0x81, 0xeb, 0x1d, 0xe0, 0x1c, 0x1d, - 0xe1, 0xd6, 0x7a, 0x37, 0xac, 0xef, 0x23, 0xd0, 0x56, 0xc5, 0x09, 0xbb, 0xf2, 0x70, 0x6f, 0xbb, - 0xf2, 0x5d, 0x80, 0x75, 0xdf, 0x69, 0x56, 0x5b, 0xad, 0xc5, 0x6a, 0x88, 0xdb, 0xa9, 0xd8, 0x8f, - 0x5a, 0xbe, 0xd3, 0xac, 0x3b, 0xad, 0x56, 0xbd, 0xe1, 0x84, 0xb6, 0x86, 0x43, 0xbe, 0x84, 0x8b, - 0xa1, 0x7b, 0xe0, 0xe1, 0xc7, 0xd5, 0x9d, 0xd6, 0x81, 0x1f, 0xb8, 0xd1, 0xe1, 0x51, 0x3d, 0xec, - 0xb8, 0x11, 0x37, 0xea, 0x4c, 0xce, 0x5f, 0x15, 0x8b, 0x5c, 0x4d, 0xe2, 0x55, 0x25, 0x5a, 0x8d, - 0x61, 0xd9, 0xb3, 0x61, 0x76, 0x01, 0x79, 0x04, 0x13, 0xeb, 0x6e, 0x83, 0x7a, 0x21, 0x45, 0x2b, - 0xdd, 0x73, 0x34, 0xf9, 0x74, 0x9f, 0xcc, 0x4c, 0x88, 0x13, 0x2d, 0x9d, 0x08, 0xa7, 0xae, 0xc9, - 0xe7, 0xc1, 0xc0, 0xc8, 0x50, 0x69, 0xd8, 0x3e, 0x27, 0x80, 0x8f, 0x9c, 0xc0, 0x73, 0xbd, 0x83, - 0xd0, 0xfa, 0x87, 0xe7, 0x61, 0x44, 0xf5, 0xd3, 0x6d, 0xfd, 0xb8, 0x21, 0xb6, 0x66, 0x1c, 0xb2, - 0xb1, 0x31, 0xcd, 0xd6, 0x30, 0xc8, 0x45, 0x3c, 0x80, 0x08, 0xa5, 0x60, 0x98, 0x4d, 0x21, 0xa7, - 0xdd, 0xb6, 0x19, 0x8c, 0x2d, 0x0d, 0x4b, 0x0b, 0x38, 0x68, 0x46, 0xf8, 0xd2, 0xd0, 0xdc, 0xb7, - 0x8b, 0x4b, 0x0b, 0x6c, 0x4e, 0x6e, 0xad, 0x2d, 0x2d, 0x62, 0xff, 0x8f, 0xf0, 0x39, 0xe9, 0xbb, - 0xcd, 0x86, 0x8d, 0x50, 0x56, 0x5a, 0xab, 0x6e, 0xac, 0x8b, 0x3e, 0xc6, 0xd2, 0xd0, 0x39, 0x6a, - 0xd9, 0x08, 0x65, 0x2a, 0x2b, 0xb7, 0x8b, 0x2c, 0xfa, 0x5e, 0x14, 0xf8, 0xad, 0x10, 0xf5, 0xb0, - 0x11, 0x3e, 0x06, 0x85, 0x41, 0xa5, 0x21, 0x8a, 0xec, 0x04, 0x2a, 0x79, 0x04, 0xb3, 0xd5, 0xe6, - 0x53, 0xc7, 0x6b, 0xd0, 0x26, 0x2f, 0x79, 0xe4, 0x07, 0x4f, 0x1e, 0xb7, 0xfc, 0x67, 0x21, 0x0e, - 0x92, 0x11, 0x61, 0x7f, 0x14, 0x28, 0xd2, 0x3e, 0xf3, 0x4c, 0x22, 0xd9, 0x79, 0xd4, 0x6c, 0x1d, - 0x58, 0x6c, 0xf9, 0x9d, 0xa6, 0x18, 0x3a, 0xb8, 0x0e, 0x34, 0x18, 0xc0, 0xe6, 0x70, 0x26, 0xa5, - 0xd5, 0xda, 0x06, 0x0e, 0x0c, 0x21, 0xa5, 0xc3, 0xf0, 0xc8, 0x66, 0x30, 0xf2, 0x2a, 0x0c, 0x4b, - 0xed, 0x9b, 0x5f, 0x47, 0xa0, 0x19, 0x5c, 0x6a, 0xdd, 0xb2, 0x8c, 0xcd, 0x63, 0x9b, 0x36, 0xfc, - 0xa7, 0x34, 0x78, 0xbe, 0xe8, 0x37, 0xa9, 0xb4, 0x4d, 0x09, 0xdb, 0x0b, 0x2f, 0xa8, 0x37, 0x58, - 0x89, 0x6d, 0x22, 0xb2, 0x0a, 0xf8, 0xc6, 0x1d, 0x96, 0xcf, 0xc5, 0x15, 0xf0, 0x8d, 0x3d, 0xb4, - 0x65, 0x19, 0x59, 0x82, 0xf3, 0xd5, 0x4e, 0xe4, 0x1f, 0x39, 0x91, 0xdb, 0xd8, 0x6d, 0x1f, 0x04, - 0x0e, 0xab, 0xa4, 0x84, 0x04, 0x78, 0x1a, 0x71, 0x64, 0x61, 0xbd, 0x23, 0x4a, 0xed, 0x34, 0x01, - 0x79, 0x17, 0xc6, 0xd7, 0x42, 0x6e, 0x7f, 0x74, 0x42, 0xda, 0x44, 0x23, 0x92, 0x68, 0xa5, 0x1b, - 0xd6, 0xd1, 0x1a, 0x59, 0x67, 0xe7, 0x97, 0xa6, 0x6d, 0xe0, 0x11, 0x0b, 0x86, 0xaa, 0x61, 0xe8, - 0x86, 0x11, 0xda, 0x86, 0x46, 0x16, 0xe0, 0xe4, 0xb8, 0x32, 0xe4, 0x20, 0xc4, 0x16, 0x25, 0xe4, - 0x11, 0x8c, 0x2d, 0x51, 0xa6, 0xfe, 0xee, 0x04, 0x9d, 0x30, 0x42, 0x4b, 0xcf, 0xd8, 0xfc, 0x45, - 0xb1, 0x1a, 0x69, 0x25, 0x62, 0x2c, 0x73, 0x15, 0xb5, 0x89, 0xf0, 0x7a, 0xc4, 0x0a, 0xf4, 0xad, - 0x56, 0xc3, 0x67, 0xba, 0xbd, 0xa0, 0x59, 0x75, 0x9b, 0x6c, 0x7d, 0x99, 0xc6, 0x36, 0xa0, 0x6e, - 0x2f, 0x16, 0xb4, 0xfa, 0x21, 0x96, 0xe8, 0xba, 0xbd, 0x41, 0x42, 0x1a, 0x29, 0x93, 0xf6, 0x8c, - 0x61, 0xb6, 0x34, 0x0b, 0x65, 0x13, 0xcf, 0x68, 0xf0, 0xfe, 0x08, 0xc6, 0x16, 0x3b, 0x61, 0xe4, - 0x1f, 0xed, 0x1c, 0xd2, 0x23, 0x8a, 0xd6, 0x20, 0x71, 0x82, 0x69, 0x20, 0xb8, 0x1e, 0x31, 0xb8, - 0xfe, 0x99, 0x1a, 0x3a, 0xf9, 0x0c, 0x88, 0x3c, 0x8a, 0xac, 0xb0, 0xf1, 0xe1, 0xb1, 0xb1, 0x8c, - 0x06, 0xa1, 0x11, 0x7e, 0xfe, 0x90, 0x27, 0x98, 0xfa, 0x81, 0x2a, 0xd6, 0x8d, 0x92, 0x69, 0x62, - 0xd6, 0x20, 0xde, 0xc4, 0x95, 0xc0, 0x69, 0x1f, 0x96, 0xcb, 0xf1, 0xd1, 0x40, 0x7c, 0xd4, 0x01, - 0x83, 0x1b, 0x2a, 0x4e, 0x8c, 0x4e, 0x6a, 0x00, 0xfc, 0xe7, 0x3a, 0xeb, 0x78, 0x6e, 0x42, 0x2a, - 0x1b, 0xf2, 0x62, 0x05, 0x52, 0x56, 0x17, 0x51, 0x71, 0xe2, 0x6c, 0x5b, 0xae, 0xd1, 0x9b, 0x1a, - 0x1b, 0xf2, 0x04, 0x4a, 0xfc, 0xd7, 0x86, 0xef, 0xb9, 0x11, 0xdf, 0x2f, 0xe6, 0x0c, 0x7b, 0x63, - 0xb2, 0x58, 0x56, 0x80, 0x76, 0x5e, 0x51, 0xc1, 0x91, 0x2a, 0xd5, 0xaa, 0x49, 0x31, 0x26, 0xdb, - 0x30, 0xb6, 0x1d, 0xf8, 0xcd, 0x4e, 0x23, 0x42, 0x2d, 0xe3, 0x12, 0x2e, 0xfc, 0x44, 0xd4, 0xa3, - 0x95, 0x70, 0x99, 0xb4, 0x39, 0xa0, 0xce, 0xf6, 0x05, 0x5d, 0x26, 0x1a, 0x22, 0x59, 0x80, 0xa1, - 0x6d, 0xbf, 0xe5, 0x36, 0x9e, 0x97, 0x2f, 0x63, 0xa3, 0xa7, 0x25, 0x33, 0x04, 0xca, 0xa6, 0xa2, - 0x4a, 0xdb, 0x46, 0x90, 0xae, 0xd2, 0x72, 0x24, 0x52, 0x85, 0x89, 0xcf, 0xd8, 0x80, 0x71, 0x7d, - 0xcf, 0x73, 0xdc, 0x80, 0x96, 0xaf, 0x60, 0xbf, 0xa0, 0x2d, 0xfe, 0x27, 0x7a, 0x81, 0x3e, 0x9c, - 0x0d, 0x0a, 0xb2, 0x06, 0xe7, 0xd6, 0xc2, 0x5a, 0x14, 0xb8, 0x6d, 0xba, 0xe1, 0x78, 0xce, 0x01, - 0x6d, 0x96, 0xaf, 0xc6, 0xc6, 0x70, 0x37, 0xac, 0x87, 0x58, 0x56, 0x3f, 0xe2, 0x85, 0xba, 0x31, - 0x3c, 0x41, 0x47, 0x3e, 0x87, 0xe9, 0xe5, 0x6f, 0x22, 0x36, 0x62, 0x5a, 0xd5, 0x4e, 0xd3, 0x8d, - 0x6a, 0x91, 0x1f, 0x38, 0x07, 0xb4, 0x5c, 0x41, 0x7e, 0xaf, 0x9c, 0x1c, 0x57, 0xae, 0x51, 0x51, - 0x5e, 0x77, 0x18, 0x42, 0x3d, 0xe4, 0x18, 0xfa, 0x25, 0x77, 0x16, 0x07, 0x26, 0xfd, 0x5a, 0xa7, - 0xcd, 0xb4, 0x6d, 0x94, 0xfe, 0x35, 0x43, 0xfa, 0x5a, 0x09, 0x97, 0x7e, 0xc8, 0x01, 0x29, 0xe9, - 0x6b, 0x88, 0xc4, 0x06, 0xf2, 0xc0, 0x77, 0xbd, 0x6a, 0x23, 0x72, 0x9f, 0x52, 0x71, 0x62, 0x0e, - 0xcb, 0xd7, 0xb1, 0xa5, 0x68, 0xb8, 0xff, 0x55, 0xdf, 0xf5, 0xea, 0x0e, 0x16, 0xd7, 0x43, 0x51, - 0xae, 0xcf, 0x91, 0x34, 0x35, 0xf9, 0x11, 0x5c, 0xd8, 0xf0, 0xf7, 0xdd, 0x16, 0xe5, 0x4b, 0x0e, - 0x17, 0x0b, 0x1a, 0x21, 0x2d, 0xe4, 0x8b, 0x86, 0xfb, 0x23, 0xc4, 0xa8, 0x8b, 0xd5, 0xea, 0x48, - 0xe1, 0xe8, 0x86, 0xfb, 0x6c, 0x2e, 0x64, 0x19, 0xc6, 0x71, 0x5e, 0xb6, 0xf0, 0x67, 0x58, 0xbe, - 0x81, 0x47, 0xba, 0xeb, 0x09, 0x2d, 0xed, 0xf6, 0xb2, 0x86, 0xb3, 0xec, 0x45, 0xc1, 0x73, 0xdb, - 0x20, 0x23, 0x1f, 0xc3, 0x5c, 0x72, 0x78, 0x2f, 0xfa, 0xde, 0x63, 0xf7, 0xa0, 0x13, 0xd0, 0x66, - 0xf9, 0x15, 0xd6, 0x54, 0xbb, 0x0b, 0xc6, 0xdc, 0x23, 0x38, 0x9f, 0xaa, 0x82, 0x94, 0xa0, 0xff, - 0x89, 0xb8, 0x07, 0x1d, 0xb5, 0xd9, 0x9f, 0xe4, 0x4d, 0x18, 0x7c, 0xca, 0xce, 0x52, 0xa8, 0x31, - 0xc4, 0x37, 0x6b, 0x1a, 0xe9, 0x9a, 0xf7, 0xd8, 0xb7, 0x39, 0xd2, 0x07, 0xc5, 0xf7, 0x0a, 0x0f, - 0x06, 0x46, 0xc6, 0x4a, 0xe3, 0xfc, 0xfa, 0xfa, 0xc1, 0xc0, 0xc8, 0x44, 0x69, 0xd2, 0xaa, 0xc2, - 0xb9, 0x04, 0x3e, 0x29, 0xc3, 0x30, 0xf5, 0x98, 0x7e, 0xde, 0xe4, 0x3a, 0x8b, 0x2d, 0x7f, 0x92, - 0x69, 0x18, 0x6c, 0xb9, 0x47, 0x6e, 0x84, 0x15, 0x0e, 0xda, 0xfc, 0x87, 0xf5, 0x07, 0x05, 0x20, - 0xe9, 0x2d, 0x83, 0xdc, 0x49, 0xb0, 0xe1, 0xda, 0xa9, 0x00, 0xe9, 0x06, 0x7a, 0xc9, 0xfd, 0x33, - 0x98, 0xe2, 0x7d, 0x26, 0x37, 0x37, 0xad, 0x2e, 0xbe, 0xa8, 0x66, 0x14, 0xeb, 0x46, 0x1d, 0x51, - 0x8c, 0x5b, 0xe1, 0x3a, 0x36, 0xad, 0x03, 0x33, 0x99, 0x9b, 0x05, 0xd9, 0x80, 0x99, 0x23, 0xdf, - 0x8b, 0x0e, 0x5b, 0xcf, 0xe5, 0x5e, 0x21, 0x6a, 0x2b, 0x60, 0x6d, 0xb8, 0x3e, 0x66, 0x22, 0xd8, - 0x53, 0x02, 0x2c, 0x38, 0x62, 0x3d, 0xc2, 0x2e, 0x24, 0xbf, 0xc4, 0xb2, 0xe1, 0x7c, 0x6a, 0xcd, - 0x25, 0x3f, 0x84, 0xf1, 0x06, 0x9e, 0xbf, 0x8c, 0x9a, 0xf8, 0x8e, 0xa3, 0xc1, 0xf5, 0xe9, 0xc4, - 0xe1, 0xfc, 0x53, 0xfe, 0x6e, 0x01, 0x66, 0x73, 0x56, 0xdb, 0xb3, 0x8b, 0xfa, 0x0b, 0xb8, 0x70, - 0xe4, 0x7c, 0x53, 0x0f, 0xf0, 0x78, 0x5d, 0x0f, 0x1c, 0x2f, 0x21, 0x6d, 0x5c, 0x49, 0xb2, 0x31, - 0x74, 0x1f, 0xa2, 0x23, 0xe7, 0x1b, 0x1b, 0x11, 0x6c, 0x56, 0xce, 0xdb, 0xf9, 0x29, 0x4c, 0x18, - 0xeb, 0xeb, 0x99, 0x1b, 0x67, 0xdd, 0x83, 0xf3, 0x4b, 0xb4, 0x45, 0x23, 0x7a, 0x6a, 0xb3, 0x9a, - 0xb5, 0x0d, 0x50, 0xa3, 0x47, 0x4e, 0xfb, 0xd0, 0x67, 0x7a, 0xf7, 0x82, 0xfe, 0x4b, 0x98, 0x65, - 0x88, 0x3c, 0x41, 0xc8, 0x82, 0xbd, 0xb7, 0xb8, 0x2e, 0x1e, 0x2a, 0x4c, 0x5b, 0xa3, 0xb2, 0xfe, - 0x65, 0x11, 0x88, 0x58, 0x20, 0x03, 0xea, 0x1c, 0xc9, 0x66, 0xbc, 0x0f, 0xe3, 0xfc, 0x10, 0xcd, - 0xc1, 0xd8, 0x9c, 0xb1, 0xf9, 0x29, 0x31, 0xf3, 0xf4, 0xa2, 0xd5, 0x3e, 0xdb, 0x40, 0x65, 0xa4, - 0x36, 0xe5, 0xa7, 0x7f, 0x24, 0x2d, 0x1a, 0xa4, 0x7a, 0x11, 0x23, 0xd5, 0x7f, 0x93, 0x4f, 0x60, - 0x72, 0xd1, 0x3f, 0x6a, 0x33, 0x99, 0x08, 0xe2, 0x7e, 0x61, 0x59, 0x11, 0xf5, 0x1a, 0x85, 0xab, - 0x7d, 0x76, 0x02, 0x9d, 0x6c, 0xc2, 0xd4, 0xfd, 0x56, 0x27, 0x3c, 0xac, 0x7a, 0xcd, 0xc5, 0x96, - 0x1f, 0x4a, 0x2e, 0x03, 0xe2, 0x30, 0x24, 0x96, 0xb7, 0x34, 0xc6, 0x6a, 0x9f, 0x9d, 0x45, 0x48, - 0x5e, 0x85, 0xc1, 0xe5, 0xa7, 0x6c, 0xd9, 0x95, 0x9e, 0x24, 0xc2, 0xd1, 0x6d, 0xcb, 0xa3, 0x5b, - 0x8f, 0x57, 0xfb, 0x6c, 0x5e, 0xba, 0x30, 0x0a, 0xc3, 0xf2, 0x00, 0x7e, 0x87, 0xa9, 0xc4, 0x4a, - 0x9c, 0xb5, 0xc8, 0x89, 0x3a, 0x21, 0x99, 0x83, 0x91, 0xdd, 0x36, 0x3b, 0x17, 0x4a, 0xcb, 0x85, - 0xad, 0x7e, 0x5b, 0x6f, 0x9a, 0x92, 0x26, 0x97, 0x21, 0x36, 0xbb, 0x0a, 0x64, 0xcd, 0x0e, 0xbb, - 0x6a, 0x0a, 0xb7, 0x3b, 0xb6, 0x51, 0x6f, 0x31, 0x51, 0x6f, 0x29, 0x29, 0x6b, 0x6b, 0x26, 0x53, - 0x78, 0xd6, 0xe7, 0x70, 0x75, 0xb7, 0x1d, 0xd2, 0x20, 0xaa, 0xb6, 0xdb, 0x2d, 0xb7, 0xc1, 0x6f, - 0xa2, 0xf0, 0xa0, 0x2e, 0x07, 0xcb, 0xbb, 0x30, 0xc4, 0x01, 0x62, 0x98, 0xc8, 0x31, 0x58, 0x6d, - 0xb7, 0x85, 0x79, 0xe0, 0x2d, 0xae, 0x9c, 0xf3, 0x03, 0xbf, 0x2d, 0xb0, 0xad, 0xdf, 0x2d, 0xc0, - 0x55, 0x3e, 0x03, 0x72, 0x59, 0x7f, 0x0f, 0x46, 0xd1, 0xcf, 0xac, 0xed, 0x34, 0xe4, 0x9c, 0xe0, - 0x0e, 0x77, 0x12, 0x68, 0xc7, 0xe5, 0x9a, 0x07, 0x5f, 0x31, 0xdf, 0x83, 0x4f, 0x4e, 0xb0, 0xfe, - 0xcc, 0x09, 0xf6, 0x19, 0x58, 0xa2, 0x45, 0xad, 0x56, 0xaa, 0x51, 0xe1, 0x8b, 0xb4, 0xca, 0xfa, - 0x4f, 0x45, 0x98, 0x5d, 0xa1, 0x1e, 0x0d, 0x1c, 0xfc, 0x4e, 0xc3, 0x10, 0xa5, 0x7b, 0xf2, 0x14, - 0xba, 0x7a, 0xf2, 0x54, 0xa4, 0x69, 0xaf, 0x88, 0xa6, 0xbd, 0x94, 0x5b, 0x12, 0x3b, 0x2e, 0xee, - 0xda, 0x6b, 0xe2, 0xb3, 0xf0, 0xb8, 0xd8, 0x09, 0x5c, 0xb4, 0xe6, 0x93, 0xb5, 0xd8, 0x0b, 0x68, - 0xa0, 0xa7, 0x59, 0x60, 0x4a, 0x78, 0x45, 0x0c, 0x0b, 0x2f, 0x20, 0xd3, 0xf7, 0x67, 0x13, 0x86, - 0xb8, 0x45, 0x12, 0xef, 0x90, 0xc6, 0xe6, 0x6f, 0x89, 0x39, 0x95, 0xf3, 0x81, 0xc2, 0x7c, 0x89, - 0x1b, 0x3b, 0x1f, 0x02, 0x11, 0x02, 0x6c, 0xc1, 0x65, 0xee, 0x33, 0x18, 0xd3, 0x50, 0x4e, 0xb3, - 0xf7, 0x2b, 0xcb, 0x28, 0xd3, 0x18, 0xbd, 0x03, 0x6e, 0x64, 0xd5, 0xf6, 0x7e, 0xeb, 0x43, 0x28, - 0xa7, 0x5b, 0x23, 0xac, 0x61, 0xbd, 0x8c, 0x6f, 0xd6, 0x12, 0x4c, 0xaf, 0xd0, 0x08, 0x07, 0x2e, - 0x4e, 0x22, 0xcd, 0x9b, 0x2d, 0x31, 0xcf, 0xe4, 0xaa, 0x8a, 0x40, 0x36, 0xc0, 0xb4, 0x59, 0x5a, - 0x83, 0x99, 0x04, 0x17, 0x51, 0xff, 0x07, 0x30, 0x2c, 0x40, 0x6a, 0x45, 0x15, 0x2e, 0xb1, 0x74, - 0x5f, 0x14, 0xec, 0xcd, 0xf3, 0x71, 0x2b, 0x38, 0xdb, 0x92, 0xc0, 0x3a, 0x84, 0x0b, 0x6c, 0x9b, - 0x8d, 0xb9, 0xaa, 0xe1, 0x78, 0x09, 0x46, 0xdb, 0x4c, 0x51, 0x08, 0xdd, 0x9f, 0xf2, 0x61, 0x34, - 0x68, 0x8f, 0x30, 0x40, 0xcd, 0xfd, 0x29, 0x25, 0x57, 0x00, 0xb0, 0x10, 0x3f, 0x53, 0xac, 0x02, - 0x88, 0xce, 0xad, 0x8d, 0x04, 0xd0, 0x17, 0x8e, 0x8f, 0x1b, 0x1b, 0xff, 0xb6, 0x02, 0x98, 0x4d, - 0xd5, 0x24, 0x3e, 0xe0, 0x0e, 0x8c, 0x48, 0x15, 0x36, 0x71, 0x0f, 0xa0, 0x7f, 0x81, 0xad, 0x90, - 0xc8, 0x6b, 0x70, 0xce, 0xa3, 0xdf, 0x44, 0xf5, 0x54, 0x1b, 0x26, 0x18, 0x78, 0x5b, 0xb6, 0xc3, - 0xfa, 0x15, 0xb4, 0xfd, 0xd6, 0x3c, 0xff, 0xd9, 0xe3, 0x96, 0xf3, 0x84, 0xa6, 0x2a, 0xfe, 0x21, - 0x8c, 0xd4, 0x7a, 0x57, 0xcc, 0xa7, 0x8f, 0xac, 0xdc, 0x56, 0x24, 0x56, 0x0b, 0xe6, 0xd8, 0x27, - 0xd5, 0xaa, 0x1b, 0xeb, 0x6b, 0xcd, 0xed, 0xef, 0x5a, 0x80, 0x4f, 0xe1, 0x52, 0x66, 0x6d, 0xdf, - 0xb5, 0x10, 0xff, 0x78, 0x00, 0x66, 0xf9, 0x66, 0x92, 0x1e, 0xc1, 0xa7, 0x5f, 0x6a, 0x7e, 0x29, - 0xf7, 0xaa, 0x77, 0x33, 0xee, 0x55, 0x91, 0x44, 0xbf, 0x57, 0x35, 0x6e, 0x53, 0xdf, 0xcb, 0xbe, - 0x4d, 0x45, 0x3b, 0x91, 0x79, 0x9b, 0x9a, 0xbc, 0x43, 0x5d, 0xce, 0xbf, 0x43, 0xc5, 0xbb, 0xa1, - 0x8c, 0x3b, 0xd4, 0xac, 0x9b, 0xd3, 0x84, 0x43, 0xd2, 0xc8, 0xcb, 0x75, 0x48, 0x7a, 0x0d, 0x86, - 0xab, 0xed, 0xb6, 0xe6, 0xe0, 0x87, 0xdd, 0xe3, 0xb4, 0xdb, 0x5c, 0x78, 0xb2, 0x50, 0xae, 0xf3, - 0x90, 0xb1, 0xce, 0xbf, 0x0f, 0xb0, 0x88, 0xcf, 0x10, 0xb0, 0xe3, 0xc6, 0x10, 0x03, 0x35, 0x7c, - 0xfe, 0x38, 0x01, 0x3b, 0x4e, 0xb7, 0x80, 0xc4, 0xc8, 0x5c, 0xb1, 0xb7, 0xf6, 0xa0, 0x9c, 0x1e, - 0x3e, 0x2f, 0x61, 0xe9, 0xfa, 0xa3, 0x02, 0x5c, 0x11, 0x4a, 0x4e, 0x62, 0x82, 0x9f, 0x7d, 0x74, - 0xbe, 0x03, 0xe3, 0x82, 0x76, 0x27, 0x9e, 0x08, 0xfc, 0x22, 0x5b, 0x2e, 0xc6, 0x7c, 0x45, 0x37, - 0xd0, 0xc8, 0x3b, 0x30, 0x82, 0x7f, 0xc4, 0x77, 0x37, 0x4c, 0x32, 0xa3, 0x88, 0x5a, 0x4f, 0xde, - 0xe0, 0x28, 0x54, 0xeb, 0x6b, 0xb8, 0x9a, 0xd7, 0xf0, 0x97, 0x20, 0x97, 0x7f, 0x56, 0x80, 0x4b, - 0x82, 0xbd, 0xb1, 0x54, 0xbc, 0xd0, 0xae, 0x73, 0x06, 0xb7, 0xe0, 0x07, 0x30, 0xc6, 0x2a, 0x94, - 0xed, 0xee, 0x17, 0x5b, 0xab, 0x38, 0x39, 0xc4, 0x25, 0x4b, 0x4e, 0xe4, 0x08, 0x37, 0x17, 0xe7, - 0xa8, 0x25, 0x8d, 0x17, 0xb6, 0x4e, 0x6c, 0x7d, 0x09, 0x97, 0xb3, 0x3f, 0xe1, 0x25, 0xc8, 0xe7, - 0x01, 0xcc, 0x65, 0x6c, 0x0a, 0x2f, 0xb6, 0x27, 0x7f, 0x01, 0x97, 0x32, 0x79, 0xbd, 0x84, 0x66, - 0xae, 0x32, 0x8d, 0x23, 0x7a, 0x09, 0x5d, 0x68, 0x3d, 0x82, 0x8b, 0x19, 0x9c, 0x5e, 0x42, 0x13, - 0x57, 0x60, 0x56, 0x69, 0xda, 0xdf, 0xaa, 0x85, 0x1b, 0x70, 0x85, 0x33, 0x7a, 0x39, 0xbd, 0xf2, - 0x10, 0x2e, 0x09, 0x76, 0x2f, 0x41, 0x7a, 0xab, 0x70, 0x39, 0x3e, 0x50, 0x67, 0xe8, 0x49, 0xa7, - 0x5e, 0x64, 0xac, 0x75, 0xb8, 0x16, 0x73, 0xca, 0x51, 0x1a, 0x4e, 0xcf, 0x8d, 0xab, 0x83, 0x71, - 0x2f, 0xbd, 0x94, 0x1e, 0x7d, 0x04, 0x17, 0x0c, 0xa6, 0x2f, 0x4d, 0x55, 0x5a, 0x83, 0x29, 0xce, - 0xd8, 0x54, 0x9d, 0xe7, 0x75, 0xd5, 0x79, 0x6c, 0xfe, 0x7c, 0xcc, 0x12, 0xc1, 0x7b, 0x6f, 0x65, - 0x68, 0xd3, 0x1b, 0xa8, 0x4d, 0x4b, 0x94, 0xb8, 0x85, 0xef, 0xc0, 0x10, 0x87, 0x88, 0xf6, 0x65, - 0x30, 0xe3, 0x87, 0x05, 0x4e, 0x26, 0x90, 0xad, 0x1f, 0xc1, 0x15, 0x7e, 0x12, 0x8d, 0xef, 0x12, - 0xcd, 0xd3, 0xe2, 0x0f, 0x13, 0x07, 0xd1, 0x8b, 0x82, 0x6f, 0x12, 0x3f, 0xe7, 0x3c, 0xba, 0x2f, - 0xc7, 0x76, 0x1e, 0xff, 0x53, 0x3d, 0x11, 0x93, 0x07, 0xcc, 0x62, 0xe6, 0x01, 0xf3, 0x06, 0x5c, - 0x57, 0x07, 0xcc, 0x64, 0x35, 0x72, 0x68, 0x59, 0x5f, 0xc2, 0x25, 0xfe, 0xa1, 0xd2, 0x75, 0xcf, - 0x6c, 0xc6, 0x87, 0x89, 0xcf, 0x9c, 0x15, 0x9f, 0x69, 0x62, 0xe7, 0x7c, 0xe4, 0xff, 0x51, 0x90, - 0x53, 0x2e, 0x9b, 0xf9, 0x2f, 0xfb, 0xc4, 0xbd, 0x09, 0x15, 0x25, 0x10, 0xb3, 0x45, 0x2f, 0x76, - 0xdc, 0xde, 0x80, 0x19, 0x9d, 0x8d, 0xdb, 0xa0, 0x7b, 0xf7, 0xf0, 0x92, 0xe7, 0x6d, 0x36, 0x2d, - 0x10, 0x20, 0x87, 0x5d, 0x39, 0x43, 0x6e, 0x88, 0x6f, 0x2b, 0x4c, 0xab, 0x0e, 0x97, 0xd3, 0x5d, - 0xe1, 0x36, 0xa4, 0xdf, 0x3e, 0xf9, 0x84, 0x4d, 0x61, 0x84, 0x88, 0xce, 0xc8, 0x65, 0x2a, 0xe7, - 0x31, 0x27, 0x97, 0x54, 0x96, 0x25, 0x97, 0x9a, 0xc4, 0xf7, 0xb3, 0xda, 0xe5, 0x78, 0xf8, 0x75, - 0x20, 0xb2, 0x68, 0xb1, 0x66, 0xcb, 0xaa, 0x2f, 0x42, 0xff, 0x62, 0xcd, 0x16, 0x0f, 0x86, 0x50, - 0x13, 0x6c, 0x84, 0x81, 0xcd, 0x60, 0x49, 0x8d, 0xbc, 0x78, 0x0a, 0x8d, 0xfc, 0xc1, 0xc0, 0x48, - 0x7f, 0x69, 0xc0, 0x26, 0x35, 0xf7, 0xc0, 0x7b, 0xe4, 0x46, 0x87, 0xaa, 0xc2, 0xaa, 0xf5, 0x15, - 0x4c, 0x19, 0xd5, 0x8b, 0x59, 0xdc, 0xf5, 0xa5, 0x13, 0xd3, 0x67, 0x17, 0xab, 0xe8, 0xf9, 0x82, - 0x26, 0x8b, 0x71, 0xbe, 0xde, 0x34, 0x9c, 0x3a, 0x3e, 0xa3, 0xb5, 0x65, 0xa1, 0xf5, 0x77, 0x06, - 0x34, 0xee, 0xda, 0xfb, 0xb1, 0x2e, 0x5f, 0x77, 0x0f, 0x80, 0x8f, 0x10, 0xed, 0xe3, 0x98, 0x02, - 0x38, 0x26, 0x1c, 0x4a, 0xf8, 0x92, 0x6c, 0x6b, 0x48, 0xa7, 0x7d, 0x5f, 0x26, 0xfc, 0x7c, 0x39, - 0x91, 0x7c, 0x52, 0xa9, 0xfc, 0x7c, 0x05, 0xeb, 0xd0, 0xd6, 0x91, 0xc8, 0x8f, 0x92, 0x8f, 0x20, - 0x06, 0xf1, 0x4e, 0xe9, 0x15, 0x79, 0xc9, 0x9c, 0xfe, 0xb6, 0xb3, 0xbd, 0x83, 0x78, 0x06, 0x33, - 0x8c, 0xd6, 0x7d, 0x8c, 0x07, 0x8b, 0xe5, 0x6f, 0x22, 0xea, 0xf1, 0xb5, 0x7d, 0x08, 0xeb, 0x79, - 0xb5, 0x4b, 0x3d, 0x31, 0xb2, 0xb0, 0xbf, 0xc7, 0x7c, 0xea, 0x54, 0x95, 0xd9, 0xd9, 0xfc, 0x71, - 0x10, 0xd9, 0xeb, 0xcb, 0x5e, 0xb3, 0xed, 0xbb, 0xea, 0xc0, 0xc4, 0x07, 0x51, 0xd0, 0xaa, 0x53, - 0x01, 0xb7, 0x75, 0x24, 0xeb, 0xb5, 0xae, 0xde, 0xe3, 0x23, 0x30, 0xb0, 0xb3, 0xb8, 0xb3, 0x5e, - 0x2a, 0x58, 0x77, 0x00, 0xb4, 0x9a, 0x00, 0x86, 0x36, 0xb7, 0xec, 0x8d, 0xea, 0x7a, 0xa9, 0x8f, - 0xcc, 0xc0, 0xf9, 0x47, 0x6b, 0x9b, 0x4b, 0x5b, 0x8f, 0x6a, 0xf5, 0xda, 0x46, 0xd5, 0xde, 0x59, - 0xac, 0xda, 0x4b, 0xa5, 0x82, 0xf5, 0x35, 0x4c, 0x9b, 0x5f, 0xf8, 0x52, 0x07, 0x61, 0x04, 0x53, - 0x4a, 0x9f, 0x79, 0xf0, 0x68, 0x47, 0x73, 0x3a, 0x15, 0x87, 0xbf, 0xa4, 0xf3, 0x94, 0x38, 0x26, - 0x8a, 0x69, 0xa4, 0x21, 0x91, 0x37, 0xb8, 0x5a, 0x90, 0x7c, 0x21, 0xcc, 0xd4, 0x82, 0x7a, 0xac, - 0x17, 0xe0, 0xd2, 0xf7, 0x03, 0x98, 0x36, 0x6b, 0x3d, 0xad, 0x95, 0xea, 0x15, 0xf4, 0xc6, 0xd5, - 0x9e, 0x0f, 0x11, 0xa2, 0x5f, 0x1b, 0x88, 0x95, 0xf5, 0x07, 0x50, 0x12, 0x58, 0xf1, 0xce, 0x7b, - 0x43, 0x9a, 0x11, 0x0b, 0x19, 0x8f, 0x1d, 0xa5, 0xf3, 0xb7, 0x0f, 0x25, 0xb6, 0x62, 0x0a, 0x4a, - 0x5e, 0xc1, 0x34, 0x0c, 0xae, 0xc7, 0xd7, 0x39, 0x36, 0xff, 0x81, 0xaf, 0x68, 0x22, 0x27, 0x88, - 0xa4, 0xab, 0xda, 0xa8, 0xad, 0x7e, 0x93, 0x37, 0x60, 0xe8, 0xbe, 0xdb, 0x8a, 0x84, 0x69, 0x24, - 0xde, 0xe4, 0x19, 0x5b, 0x5e, 0x60, 0x0b, 0x04, 0xcb, 0x86, 0xf3, 0x5a, 0x85, 0x67, 0x68, 0x2a, - 0x29, 0xc3, 0xf0, 0x26, 0xfd, 0x46, 0xab, 0x5f, 0xfe, 0xb4, 0xde, 0x85, 0xf3, 0xc2, 0x0d, 0x50, - 0x13, 0xd3, 0x75, 0xf1, 0x26, 0xbb, 0x60, 0x3c, 0x0c, 0x15, 0x2c, 0xb1, 0x88, 0xd1, 0xed, 0xb6, - 0x9b, 0x2f, 0x48, 0xc7, 0x36, 0x8a, 0x33, 0xd2, 0xbd, 0x2e, 0x6f, 0x81, 0x7a, 0x75, 0xe7, 0xff, - 0x56, 0x84, 0x72, 0xc2, 0xca, 0xb0, 0x78, 0xe8, 0xb4, 0x5a, 0xd4, 0x3b, 0xa0, 0xe4, 0x26, 0x0c, - 0xec, 0x6c, 0xed, 0x6c, 0x0b, 0x2b, 0xa9, 0x74, 0x00, 0x60, 0x20, 0x85, 0x63, 0x23, 0x06, 0x79, - 0x08, 0xe7, 0xa5, 0xa3, 0xaf, 0x2a, 0x12, 0x3d, 0x74, 0xa5, 0xbb, 0xdb, 0x70, 0x9a, 0x8e, 0xbc, - 0x2d, 0x4c, 0x22, 0x3f, 0xe9, 0xb8, 0x01, 0x6d, 0xa2, 0xe5, 0x27, 0xbe, 0x4d, 0xd7, 0x4a, 0x6c, - 0x1d, 0x8d, 0xfc, 0x00, 0xc6, 0x6b, 0xb5, 0xad, 0xb8, 0xf6, 0x41, 0xe3, 0x86, 0x48, 0x2f, 0xb2, - 0x0d, 0x44, 0xfe, 0xf4, 0xd6, 0xfa, 0xe3, 0x02, 0xcc, 0xe6, 0x98, 0x5b, 0xc8, 0x1b, 0x86, 0x1c, - 0xa6, 0x34, 0x39, 0x48, 0x94, 0xd5, 0x3e, 0x21, 0x88, 0x45, 0xcd, 0x6d, 0xba, 0xff, 0x0c, 0x6e, - 0xd3, 0xab, 0x7d, 0xb1, 0xab, 0x34, 0x79, 0x0d, 0xfa, 0x6b, 0xb5, 0x2d, 0x61, 0x56, 0x27, 0xf1, - 0x17, 0x68, 0xc8, 0x0c, 0x61, 0x01, 0x60, 0x44, 0x82, 0xac, 0x73, 0x30, 0x61, 0x74, 0x8c, 0x65, - 0xc1, 0xb8, 0xde, 0x42, 0xd6, 0xfb, 0x8b, 0x7e, 0x53, 0xf5, 0x3e, 0xfb, 0xdb, 0xda, 0x36, 0x65, - 0x46, 0xae, 0x00, 0xc8, 0xfb, 0x5a, 0xb7, 0x29, 0x6f, 0x7e, 0x04, 0x64, 0xad, 0x49, 0xae, 0xc3, - 0x78, 0x40, 0x9b, 0x6e, 0x40, 0x1b, 0x51, 0xbd, 0x13, 0x88, 0x07, 0x28, 0xf6, 0x98, 0x84, 0xed, - 0x06, 0x2d, 0x6b, 0x01, 0xc6, 0xb4, 0x86, 0xf6, 0x62, 0x38, 0x0d, 0x83, 0xba, 0xe1, 0x91, 0xff, - 0xb0, 0x7e, 0xaf, 0x00, 0xd3, 0xd8, 0xb3, 0x07, 0x2e, 0x5b, 0xf1, 0xe3, 0xe6, 0xcd, 0x1b, 0xfd, - 0x70, 0xd9, 0xe8, 0x87, 0x04, 0xae, 0xea, 0x90, 0x0f, 0x52, 0x1d, 0x72, 0x39, 0xab, 0x43, 0x70, - 0x56, 0xbb, 0xbe, 0xa7, 0xf7, 0x83, 0x7e, 0x03, 0xf7, 0x07, 0x05, 0x98, 0xd2, 0xda, 0xa4, 0x3e, - 0xf0, 0x9e, 0xd1, 0xa4, 0x4b, 0x19, 0x4d, 0x4a, 0x0d, 0x91, 0x85, 0x54, 0x8b, 0x5e, 0xe9, 0xd6, - 0xa2, 0xac, 0x11, 0x62, 0xf4, 0xfc, 0x5f, 0x16, 0x60, 0x26, 0x53, 0x06, 0xe4, 0x02, 0x53, 0xe9, - 0x1b, 0x01, 0x8d, 0x84, 0xe4, 0xc5, 0x2f, 0x06, 0x5f, 0x0b, 0xc3, 0x0e, 0x0d, 0x84, 0xdc, 0xc5, - 0x2f, 0xf2, 0x0a, 0x4c, 0x6c, 0xd3, 0xc0, 0xf5, 0x9b, 0xfc, 0x39, 0x00, 0xf7, 0xb3, 0x9d, 0xb0, - 0x4d, 0x20, 0xb9, 0x0c, 0xa3, 0xca, 0x4f, 0x94, 0x9b, 0x65, 0xed, 0x18, 0xc0, 0x78, 0x2f, 0xb9, - 0x07, 0xfc, 0x2e, 0x87, 0x11, 0x8b, 0x5f, 0x6c, 0x4d, 0x95, 0x46, 0xd2, 0x21, 0xbe, 0xa6, 0x4a, - 0x0b, 0xe8, 0x05, 0x18, 0xfa, 0xcc, 0xc6, 0xa1, 0x89, 0xe1, 0x1a, 0x6c, 0xf1, 0x8b, 0x4c, 0xa2, - 0x43, 0x37, 0x3e, 0x29, 0x41, 0x47, 0xee, 0x0f, 0x60, 0x3a, 0x4b, 0xae, 0x59, 0x03, 0x5b, 0xd0, - 0x16, 0x15, 0xed, 0x97, 0x30, 0x55, 0x6d, 0x36, 0x37, 0xee, 0x57, 0xb9, 0xab, 0x85, 0xe8, 0x55, - 0x3e, 0xf5, 0xb9, 0x99, 0x52, 0x68, 0xaa, 0x03, 0x6b, 0x9e, 0x1b, 0xd9, 0x53, 0xcb, 0xdf, 0xb8, - 0x61, 0xe4, 0x7a, 0x07, 0x9a, 0x2d, 0xd5, 0xbe, 0xb0, 0x49, 0x9f, 0x65, 0x0c, 0x01, 0xa6, 0x44, - 0x98, 0xbc, 0x39, 0x3c, 0x83, 0xf9, 0xb4, 0xc6, 0x36, 0x5e, 0x8d, 0x66, 0x4d, 0xbe, 0x71, 0x41, - 0x7f, 0xb5, 0xf1, 0xc4, 0xfa, 0x01, 0x5c, 0xe0, 0x2b, 0x79, 0xb7, 0xc6, 0x8b, 0x66, 0xeb, 0xa6, - 0x5f, 0xeb, 0x3d, 0x69, 0x9c, 0xe9, 0xda, 0x32, 0x7b, 0xdc, 0x68, 0x0b, 0x56, 0xf9, 0x1f, 0x0b, - 0x30, 0x97, 0x20, 0xad, 0x3d, 0xf7, 0x1a, 0x72, 0x1b, 0x79, 0x2d, 0xe9, 0x30, 0x8f, 0xea, 0x0f, - 0xb7, 0x79, 0xba, 0x4d, 0xe5, 0x33, 0x4f, 0xee, 0x00, 0x70, 0x62, 0x4d, 0x6b, 0x41, 0x8b, 0xbf, - 0xf0, 0x2d, 0x42, 0xbd, 0x45, 0x43, 0x21, 0x1d, 0xc8, 0x92, 0xbb, 0x98, 0x23, 0xbd, 0x4c, 0xe2, - 0x18, 0xa2, 0x84, 0x0a, 0xf2, 0x7a, 0x8e, 0x6d, 0x3c, 0x8b, 0xbf, 0xf5, 0x7f, 0xf6, 0xc3, 0xac, - 0xde, 0x81, 0x2f, 0xf2, 0xad, 0xdb, 0x30, 0xb6, 0xe8, 0x7b, 0x11, 0xfd, 0x26, 0xd2, 0x42, 0x44, - 0x10, 0xe5, 0x60, 0xa0, 0x4a, 0x84, 0xc6, 0xcc, 0x01, 0x75, 0xa6, 0xbe, 0x19, 0x3e, 0x92, 0x31, - 0x22, 0x59, 0x84, 0x89, 0x4d, 0xfa, 0x2c, 0x25, 0x40, 0xf4, 0xd3, 0xf4, 0xe8, 0xb3, 0xba, 0x26, - 0x44, 0xdd, 0x79, 0xce, 0xa0, 0x21, 0xfb, 0x30, 0x29, 0x07, 0x97, 0x21, 0xcc, 0x39, 0x7d, 0x33, - 0x35, 0x87, 0x33, 0x0f, 0xa1, 0xc0, 0x6a, 0xc8, 0x91, 0x61, 0x82, 0x23, 0xfb, 0x74, 0x5e, 0x23, - 0x8f, 0x0a, 0x60, 0xee, 0xd6, 0x5a, 0x89, 0xe1, 0x05, 0x9b, 0x8c, 0x06, 0xa0, 0xb3, 0xb0, 0xb6, - 0xa1, 0x9c, 0xee, 0x0f, 0x51, 0xdb, 0xdb, 0x30, 0xc4, 0xa1, 0x42, 0xfb, 0x91, 0xd1, 0x7f, 0x14, - 0x36, 0x37, 0x4f, 0xf0, 0x6a, 0x6c, 0x81, 0x6b, 0xad, 0xa2, 0xc9, 0x48, 0xe1, 0x28, 0xfd, 0xf3, - 0x6e, 0xb2, 0x7b, 0xd1, 0xc1, 0x58, 0x76, 0xaf, 0xee, 0x5e, 0x23, 0x1f, 0x82, 0x2c, 0xa2, 0xd5, - 0x4d, 0xe7, 0x24, 0x1a, 0x76, 0x0b, 0x86, 0x05, 0x28, 0x11, 0x97, 0x28, 0x9e, 0x7e, 0x12, 0xc1, - 0xfa, 0x00, 0x2e, 0xa2, 0x09, 0xd0, 0xf5, 0x0e, 0x5a, 0x74, 0x37, 0x34, 0x9e, 0x72, 0xf4, 0x9a, - 0xd6, 0x1f, 0xc1, 0x5c, 0x16, 0x6d, 0xcf, 0x99, 0xcd, 0x23, 0x85, 0xfc, 0x79, 0x11, 0xa6, 0xd7, - 0x42, 0x5d, 0x87, 0x52, 0xd1, 0x42, 0x32, 0x22, 0x58, 0xa0, 0x4c, 0x56, 0xfb, 0xb2, 0x22, 0x54, - 0xbc, 0xad, 0xbd, 0x14, 0x2d, 0x76, 0x0b, 0x4d, 0xc1, 0xb6, 0x2d, 0xf5, 0x56, 0xf4, 0x35, 0x18, - 0xd8, 0x64, 0x4b, 0x75, 0xbf, 0xe8, 0x3b, 0x4e, 0xc1, 0x40, 0xf8, 0x52, 0x93, 0x6d, 0x91, 0xec, - 0x07, 0xb9, 0x9f, 0x7a, 0x0f, 0x3a, 0xd0, 0x3b, 0xf4, 0xc2, 0x6a, 0x5f, 0xea, 0x69, 0xe8, 0xbb, - 0x30, 0x56, 0x6d, 0x1e, 0x71, 0x47, 0x48, 0xdf, 0x4b, 0x4c, 0x4b, 0xad, 0x64, 0xb5, 0xcf, 0xd6, - 0x11, 0xd9, 0xc1, 0xbe, 0xda, 0x6e, 0xe3, 0x46, 0x95, 0x15, 0x8e, 0x82, 0xe9, 0x5f, 0xd5, 0x76, - 0x7b, 0x61, 0x04, 0x86, 0x76, 0x9c, 0xe0, 0x80, 0x46, 0xd6, 0x97, 0x30, 0x27, 0x7c, 0x73, 0xb8, - 0xc1, 0x13, 0x3d, 0x78, 0xc2, 0xd8, 0xfd, 0xaa, 0x9b, 0x3f, 0xcd, 0x55, 0x00, 0x3c, 0xde, 0xac, - 0x79, 0x4d, 0xfa, 0x8d, 0x70, 0x0e, 0xd4, 0x20, 0xd6, 0x3b, 0x30, 0xaa, 0x24, 0x84, 0x3a, 0xbc, - 0xb6, 0xd9, 0xa1, 0xb4, 0xa6, 0x8d, 0x07, 0xb0, 0xf2, 0xd5, 0xeb, 0x45, 0xe3, 0xdb, 0x45, 0x80, - 0x19, 0xae, 0xf4, 0xbb, 0x30, 0x93, 0x18, 0x04, 0x71, 0xfc, 0x02, 0xa5, 0x76, 0x73, 0xef, 0x45, - 0xf5, 0x3b, 0xa9, 0x95, 0x17, 0x4f, 0xa5, 0x95, 0x5b, 0x7f, 0xbf, 0x88, 0xe7, 0xc5, 0x94, 0x3c, - 0x12, 0xa6, 0x37, 0xdd, 0xfc, 0xb7, 0x00, 0xa3, 0xf8, 0xf5, 0x4b, 0xf2, 0x99, 0x5e, 0x77, 0xd7, - 0x92, 0x91, 0x9f, 0x1d, 0x57, 0xfa, 0xd0, 0x9f, 0x24, 0x26, 0x23, 0x1f, 0xc3, 0xf0, 0xb2, 0xd7, - 0x44, 0x0e, 0xfd, 0x67, 0xe0, 0x20, 0x89, 0x58, 0x9f, 0x60, 0x93, 0x77, 0xd8, 0x14, 0xe6, 0x16, - 0x1b, 0x5b, 0x83, 0xc4, 0x07, 0xd7, 0xc1, 0xbc, 0x83, 0xeb, 0x50, 0xe2, 0xe0, 0x6a, 0xc1, 0xe0, - 0x56, 0xd0, 0x14, 0x61, 0x61, 0x26, 0xe7, 0xc7, 0x85, 0xe0, 0x10, 0x66, 0xf3, 0x22, 0xeb, 0x3f, - 0x17, 0x60, 0x76, 0x85, 0x46, 0x99, 0x63, 0xc8, 0x90, 0x4a, 0xe1, 0x5b, 0x4b, 0xa5, 0xf8, 0x22, - 0x52, 0x51, 0x5f, 0xdd, 0x9f, 0xf7, 0xd5, 0x03, 0x79, 0x5f, 0x3d, 0x98, 0xff, 0xd5, 0x2b, 0x30, - 0xc4, 0x3f, 0x95, 0x1d, 0xce, 0xd7, 0x22, 0x7a, 0x14, 0x1f, 0xce, 0x75, 0xc7, 0x38, 0x9b, 0x97, - 0x31, 0x45, 0x72, 0xdd, 0x09, 0xf5, 0xc3, 0xb9, 0xf8, 0x69, 0xfd, 0x18, 0x1f, 0xf8, 0xae, 0xfb, - 0x8d, 0x27, 0x9a, 0x91, 0x77, 0x98, 0xcf, 0xd0, 0xe4, 0xa5, 0x00, 0xc3, 0xe2, 0x25, 0xb6, 0xc4, - 0x20, 0xd7, 0x60, 0x6c, 0xcd, 0xbb, 0xef, 0x07, 0x0d, 0xba, 0xe5, 0xb5, 0x38, 0xf7, 0x11, 0x5b, - 0x07, 0x09, 0xe3, 0x87, 0xa8, 0x21, 0xb6, 0x28, 0x20, 0x20, 0x61, 0x51, 0x60, 0xb0, 0xbd, 0x79, - 0x9b, 0x97, 0x09, 0xdb, 0x0a, 0xfb, 0xbb, 0xdb, 0x61, 0x5c, 0x9d, 0xda, 0x7b, 0x21, 0xee, 0xc3, - 0x45, 0x9b, 0xb6, 0x5b, 0x0e, 0xd3, 0xe9, 0x8e, 0x7c, 0x8e, 0xaf, 0xbe, 0xf9, 0x5a, 0xc6, 0xe3, - 0x3c, 0xd3, 0x4d, 0x42, 0x35, 0xb9, 0xd8, 0xa5, 0xc9, 0x47, 0x70, 0x7d, 0x85, 0x46, 0xe6, 0x82, - 0x1a, 0x9b, 0x90, 0xc5, 0xc7, 0xaf, 0xc2, 0x48, 0x68, 0x9a, 0xbf, 0xe5, 0x63, 0xb3, 0x4c, 0xc2, - 0xbd, 0xb7, 0xe4, 0x05, 0x91, 0xe0, 0xa3, 0xfe, 0xb2, 0x3e, 0x81, 0x4a, 0x5e, 0x75, 0xa7, 0xf3, - 0x62, 0x75, 0xe1, 0x5a, 0x3e, 0x03, 0xd1, 0xdc, 0x65, 0x90, 0xa6, 0x72, 0x31, 0x85, 0x7a, 0xb5, - 0xd6, 0xb4, 0xae, 0x8b, 0x3f, 0xac, 0x05, 0xe9, 0xcf, 0xf7, 0x2d, 0x9a, 0x5b, 0xc7, 0x5b, 0x68, - 0x93, 0x41, 0x2c, 0xd7, 0x2a, 0x8c, 0x48, 0x98, 0x90, 0xeb, 0x6c, 0x66, 0x4b, 0xa5, 0x40, 0x9b, - 0x92, 0x81, 0x22, 0xb3, 0x7e, 0x2c, 0x6f, 0x64, 0x4c, 0x8a, 0xd3, 0xbd, 0x56, 0x3d, 0xcd, 0x15, - 0x8c, 0xe5, 0xc3, 0x45, 0x93, 0xb7, 0x6e, 0x69, 0x2f, 0x69, 0x96, 0x76, 0x6e, 0x60, 0xbf, 0x66, - 0x5a, 0x7e, 0x85, 0xf1, 0x40, 0x03, 0x91, 0xab, 0xba, 0x3d, 0x7d, 0x3c, 0xfd, 0xfc, 0xf5, 0x2e, - 0xcc, 0x65, 0x55, 0xa8, 0x9d, 0x03, 0x95, 0xd1, 0x56, 0xe8, 0x3b, 0x4b, 0x70, 0x55, 0x06, 0x66, - 0xf2, 0xfd, 0x28, 0x8c, 0x02, 0xa7, 0x5d, 0x6b, 0x04, 0x6e, 0x3b, 0xa6, 0xb2, 0x60, 0x88, 0x43, - 0x84, 0x24, 0xf8, 0xed, 0x16, 0xc7, 0x11, 0x25, 0xd6, 0x6f, 0x16, 0xc0, 0x32, 0x5c, 0xaf, 0xb0, - 0x9f, 0xb7, 0x03, 0xff, 0xa9, 0xdb, 0xd4, 0x6e, 0x94, 0xde, 0x30, 0xac, 0x99, 0xfc, 0x25, 0x60, - 0xd2, 0xeb, 0x5b, 0xac, 0x99, 0x77, 0x13, 0x16, 0x46, 0xae, 0x78, 0xa2, 0x3b, 0x96, 0x19, 0x01, - 0x47, 0x59, 0x1e, 0xff, 0x6b, 0x01, 0x6e, 0x74, 0x6d, 0x83, 0xf8, 0x9e, 0x7d, 0x28, 0x25, 0xcb, - 0xc4, 0x08, 0xaa, 0x68, 0xae, 0x18, 0x69, 0x0e, 0x7b, 0xf7, 0xb8, 0x6b, 0xb9, 0x74, 0x59, 0x6a, - 0x2b, 0xce, 0x29, 0x7e, 0x67, 0x6f, 0x3d, 0x79, 0x1f, 0x60, 0xc7, 0x8f, 0x9c, 0xd6, 0x22, 0x1a, - 0x00, 0xfa, 0xe3, 0x67, 0x02, 0x11, 0x83, 0xd6, 0x93, 0x11, 0x26, 0x34, 0x64, 0xeb, 0x53, 0x9c, - 0xd7, 0xd9, 0x8d, 0x3e, 0xdd, 0x54, 0x5b, 0x84, 0x1b, 0x09, 0x77, 0x80, 0x17, 0x60, 0x12, 0xc1, - 0x0c, 0x13, 0x3f, 0xd3, 0xbd, 0x57, 0x02, 0xbf, 0xd3, 0xfe, 0xe5, 0xf4, 0xfa, 0x9f, 0x14, 0xb8, - 0x7f, 0xa6, 0x5e, 0xad, 0xe8, 0xe8, 0x45, 0x80, 0x18, 0x9a, 0xf0, 0xd3, 0x57, 0x05, 0x7b, 0xf7, - 0xf8, 0x91, 0x1b, 0x2f, 0x0a, 0x0e, 0x38, 0x03, 0x8d, 0xec, 0x97, 0xdb, 0x93, 0x6f, 0xa1, 0x0f, - 0x80, 0xaa, 0xfd, 0x74, 0x72, 0x7f, 0x57, 0xda, 0x3f, 0xce, 0x48, 0x77, 0x08, 0xd3, 0x6c, 0x05, - 0xa8, 0x76, 0xa2, 0x43, 0x3f, 0x70, 0x23, 0xf9, 0xe2, 0x84, 0x6c, 0x8b, 0x77, 0xf8, 0x9c, 0xea, - 0xa3, 0x5f, 0x1c, 0x57, 0xde, 0x3b, 0x4b, 0xc8, 0x4c, 0xc9, 0x73, 0x47, 0xbd, 0xdd, 0xb7, 0x66, - 0xa1, 0x7f, 0xd1, 0x5e, 0xc7, 0x05, 0xcf, 0x5e, 0x57, 0x0b, 0x9e, 0xbd, 0x6e, 0xfd, 0x55, 0x11, - 0x2a, 0x3c, 0x52, 0x08, 0xba, 0x8e, 0xc4, 0x56, 0x0b, 0xcd, 0x17, 0xe5, 0xb4, 0x06, 0x86, 0x44, - 0x24, 0x90, 0xe2, 0x69, 0x22, 0x81, 0xfc, 0x1a, 0xe4, 0x98, 0xac, 0x4e, 0x61, 0x05, 0x78, 0xfd, - 0xe4, 0xb8, 0x72, 0x23, 0xb6, 0x02, 0xf0, 0xd2, 0x2c, 0x73, 0x40, 0x4e, 0x15, 0x69, 0xfb, 0xc5, - 0xc0, 0x0b, 0xd8, 0x2f, 0xee, 0xc2, 0x30, 0x1e, 0x66, 0xd6, 0xb6, 0x85, 0x33, 0x27, 0x0e, 0x4f, - 0x0c, 0xee, 0x53, 0x77, 0xf5, 0x48, 0x7a, 0x12, 0xcd, 0xfa, 0xfd, 0x22, 0x5c, 0xcb, 0x97, 0xb9, - 0x68, 0xdb, 0x12, 0x40, 0xec, 0xb4, 0xd2, 0xcd, 0x49, 0x06, 0xe7, 0xce, 0x33, 0xba, 0xaf, 0x9c, - 0xd4, 0x34, 0x3a, 0xa6, 0xfb, 0xc8, 0xf7, 0xcd, 0x89, 0x1b, 0x12, 0xe3, 0xd9, 0xb3, 0x08, 0x04, - 0x2b, 0x40, 0x46, 0x20, 0x58, 0x01, 0x23, 0xfb, 0x30, 0xbb, 0x1d, 0xb8, 0x4f, 0x9d, 0x88, 0x3e, - 0xa4, 0xcf, 0xf9, 0xfb, 0x9f, 0x65, 0xf1, 0xe8, 0x87, 0x3f, 0x5a, 0xbf, 0x79, 0x72, 0x5c, 0x79, - 0xa5, 0xcd, 0x51, 0x30, 0xd8, 0x17, 0x7f, 0x71, 0x59, 0x4f, 0xbf, 0x03, 0xca, 0x63, 0x64, 0xfd, - 0x8b, 0x02, 0x5c, 0x42, 0xb5, 0x5c, 0x98, 0x5d, 0x65, 0xe5, 0x2f, 0xe4, 0x2b, 0xa9, 0x7f, 0xa0, - 0x18, 0x8b, 0xe8, 0x2b, 0x69, 0xbc, 0xff, 0xb6, 0x0d, 0x34, 0xb2, 0x06, 0x63, 0xe2, 0x37, 0xce, - 0xbf, 0x7e, 0x3c, 0x10, 0xcc, 0x68, 0x0b, 0x16, 0x0e, 0x75, 0x6e, 0x2a, 0xc2, 0x81, 0x2d, 0x98, - 0xe1, 0x33, 0x49, 0x5b, 0xa7, 0xb5, 0x7e, 0x5e, 0x84, 0xcb, 0x7b, 0x34, 0x70, 0x1f, 0x3f, 0xcf, - 0xf9, 0x98, 0x2d, 0x98, 0x96, 0x20, 0x1e, 0x2d, 0xc4, 0x98, 0x62, 0x3c, 0x14, 0xa4, 0x6c, 0xaa, - 0x08, 0x37, 0x22, 0x67, 0x5c, 0x26, 0xe1, 0x19, 0xbc, 0x20, 0xdf, 0x86, 0x91, 0x44, 0xbc, 0x1e, - 0xec, 0x7f, 0x39, 0x43, 0xe3, 0xae, 0x5a, 0xed, 0xb3, 0x15, 0x26, 0xf9, 0xed, 0xfc, 0xdb, 0x27, - 0x61, 0xfa, 0xe8, 0x65, 0xff, 0xc4, 0x09, 0xcb, 0x26, 0xab, 0xa3, 0x95, 0x66, 0x4c, 0xd8, 0xd5, - 0x3e, 0x3b, 0xaf, 0xa6, 0x85, 0x31, 0x18, 0xad, 0xe2, 0x55, 0x1c, 0x3b, 0xb9, 0xff, 0x97, 0x22, - 0x5c, 0x95, 0x6f, 0x79, 0x72, 0xc4, 0xfc, 0x39, 0xcc, 0x4a, 0x50, 0xb5, 0xcd, 0x14, 0x06, 0xda, - 0x34, 0x25, 0xcd, 0xc3, 0xb1, 0x4a, 0x49, 0x3b, 0x02, 0x27, 0x16, 0x76, 0x1e, 0xf9, 0xcb, 0xb1, - 0x7e, 0x7e, 0x9c, 0x15, 0x3d, 0x09, 0xad, 0x90, 0xfa, 0x9a, 0x69, 0x88, 0xc6, 0x58, 0x3f, 0x9b, - 0x29, 0xeb, 0xe9, 0xc0, 0xb7, 0xb5, 0x9e, 0xae, 0xf6, 0x25, 0xed, 0xa7, 0x0b, 0x93, 0x30, 0xbe, - 0x49, 0x9f, 0xc5, 0x72, 0xff, 0x5f, 0x0b, 0x89, 0x00, 0x0b, 0x4c, 0xc3, 0xe0, 0x91, 0x16, 0x0a, - 0x71, 0x00, 0x1e, 0x0c, 0xb0, 0xa0, 0x6b, 0x18, 0x1c, 0x75, 0x0d, 0x86, 0xf9, 0xfd, 0x74, 0xf3, - 0x14, 0x27, 0x7c, 0xf5, 0x28, 0x87, 0xbf, 0x94, 0x6c, 0xf2, 0xc3, 0xbe, 0xa0, 0xb7, 0x1e, 0xc2, - 0x75, 0xe1, 0xb6, 0x6d, 0x76, 0x3e, 0x56, 0x74, 0xc6, 0xed, 0xcb, 0x72, 0xe0, 0xea, 0x0a, 0x4d, - 0x2e, 0x3d, 0xc6, 0xa3, 0xa5, 0x4f, 0xe0, 0x9c, 0x01, 0x57, 0x1c, 0x51, 0x2b, 0x55, 0x63, 0x48, - 0xb1, 0x4e, 0x62, 0x5b, 0xd7, 0xb2, 0xaa, 0xd0, 0x1b, 0x6b, 0x51, 0x8c, 0xab, 0x1a, 0xc4, 0x57, - 0x6c, 0xe1, 0x19, 0x56, 0xbd, 0x9b, 0xda, 0xbc, 0xe6, 0x2b, 0x1e, 0x0f, 0xbc, 0x27, 0x77, 0x5e, - 0x55, 0x6a, 0x4d, 0x18, 0x77, 0x01, 0xd6, 0x24, 0x8c, 0xcb, 0xa2, 0x16, 0x0d, 0x43, 0xeb, 0xdf, - 0x0d, 0x82, 0x25, 0x04, 0x9b, 0x75, 0xe9, 0x2e, 0xe5, 0xb1, 0x9f, 0x6a, 0xac, 0xd8, 0xa8, 0x2e, - 0xe8, 0xe1, 0x3c, 0xe3, 0x52, 0x3e, 0xf2, 0x50, 0xcf, 0x6b, 0xc4, 0x50, 0x63, 0xe4, 0xa5, 0xbe, - 0xfe, 0xab, 0x9c, 0x65, 0x92, 0x4f, 0xb6, 0x57, 0x4f, 0x8e, 0x2b, 0xd7, 0x73, 0x96, 0x49, 0x83, - 0x6f, 0xf6, 0x92, 0x69, 0x9b, 0x57, 0x22, 0xfd, 0x2f, 0x72, 0x25, 0xc2, 0x66, 0xa4, 0x7e, 0x29, - 0xb2, 0x6b, 0xca, 0x52, 0xcc, 0x47, 0x79, 0x21, 0xaf, 0x17, 0x89, 0x38, 0x07, 0x1a, 0xc4, 0xe0, - 0x6a, 0xb0, 0x21, 0x2e, 0x94, 0x34, 0x9b, 0xe5, 0xe2, 0x21, 0x6d, 0x3c, 0x11, 0xb6, 0x62, 0x79, - 0xa1, 0x9b, 0x65, 0x33, 0xe7, 0xa1, 0x9d, 0xf9, 0x3c, 0xe7, 0x05, 0xf5, 0x06, 0x23, 0xd5, 0xe3, - 0x34, 0x24, 0xd9, 0x92, 0x9f, 0xc2, 0x94, 0xea, 0xea, 0x84, 0xd7, 0xd5, 0xd8, 0xfc, 0x2b, 0x71, - 0x14, 0xd0, 0xa3, 0xc7, 0xce, 0xed, 0xa7, 0xf7, 0x6e, 0x67, 0xe0, 0xf2, 0xe7, 0xff, 0x0d, 0x59, - 0xa0, 0xb9, 0x5c, 0xe9, 0x17, 0x5d, 0x19, 0x84, 0xe4, 0x0b, 0x98, 0xae, 0xd5, 0xb6, 0xf8, 0xfb, - 0x0c, 0x5b, 0xde, 0xd9, 0xdb, 0xeb, 0xc2, 0x07, 0x0b, 0xbb, 0x3b, 0x0c, 0xfd, 0xba, 0x78, 0xd7, - 0xa1, 0xdf, 0xf4, 0xeb, 0x01, 0x10, 0xb2, 0x58, 0xe8, 0x37, 0xe5, 0xff, 0xb7, 0x7a, 0x7e, 0xc0, - 0x54, 0x11, 0xb7, 0x45, 0xc5, 0x3b, 0x22, 0x39, 0xb0, 0x73, 0x6e, 0xf9, 0x0a, 0xdf, 0xf1, 0x2d, - 0xdf, 0x3f, 0x2a, 0xca, 0x47, 0x17, 0xe9, 0x8b, 0xd6, 0x33, 0x5f, 0xf6, 0x65, 0x7e, 0xc1, 0xa9, - 0xf6, 0xe9, 0xcc, 0xc6, 0x91, 0x05, 0x79, 0x55, 0xaa, 0x42, 0x84, 0x4d, 0xaa, 0x6b, 0x87, 0xb8, - 0xc0, 0xb8, 0x3d, 0x45, 0xad, 0x48, 0xa3, 0x4a, 0xde, 0xc3, 0xf5, 0x7f, 0xfb, 0x7b, 0xb8, 0x7f, - 0x32, 0x0a, 0xe7, 0xb7, 0x9d, 0x03, 0xd7, 0x63, 0xfb, 0x81, 0x4d, 0x43, 0xbf, 0x13, 0x34, 0x28, - 0xa9, 0xc2, 0xa4, 0xe9, 0x51, 0xdb, 0xc3, 0x5f, 0x98, 0x6d, 0x79, 0x26, 0x8c, 0xcc, 0xc3, 0xa8, - 0x7a, 0xc5, 0x2b, 0xf6, 0xa9, 0x8c, 0xd7, 0xbd, 0xab, 0x7d, 0x76, 0x8c, 0x46, 0xde, 0x37, 0xae, - 0x8e, 0xce, 0xa9, 0x07, 0xe9, 0x88, 0x3b, 0xcf, 0x5d, 0x1e, 0x3d, 0xbf, 0x69, 0xee, 0xb5, 0xfc, - 0x7e, 0xe4, 0xc7, 0xa9, 0xdb, 0xa4, 0x41, 0xa3, 0xc5, 0x29, 0x93, 0x1a, 0xaa, 0x19, 0xb9, 0x61, - 0xbb, 0x33, 0xee, 0x99, 0xbe, 0x84, 0xb1, 0x87, 0x9d, 0x7d, 0x2a, 0xef, 0xcd, 0x86, 0xc4, 0xd6, - 0x9b, 0xf4, 0x13, 0x17, 0xe5, 0x7b, 0x6f, 0xf1, 0x3e, 0x78, 0xd2, 0xd9, 0xa7, 0xe9, 0x78, 0xf0, - 0x6c, 0xcd, 0xd3, 0x98, 0x91, 0x43, 0x28, 0x25, 0x5d, 0xba, 0x45, 0x50, 0xbd, 0x2e, 0x8e, 0xe8, - 0x18, 0x1c, 0x45, 0x8b, 0x3a, 0xcf, 0x1d, 0x4d, 0x8d, 0x4a, 0x52, 0x5c, 0xc9, 0xaf, 0xc3, 0x4c, - 0xa6, 0x41, 0x53, 0x3d, 0x4a, 0xeb, 0x6e, 0x2b, 0xc5, 0x05, 0x24, 0x21, 0x35, 0xf9, 0x02, 0xce, - 0xa8, 0x39, 0xbb, 0x16, 0xd2, 0x84, 0x73, 0x09, 0x57, 0x65, 0x91, 0x5a, 0x23, 0xdf, 0xf9, 0x19, - 0xf7, 0x3c, 0x19, 0x9d, 0x36, 0xb3, 0xae, 0x24, 0x4b, 0xb2, 0x0e, 0xa3, 0xca, 0x92, 0x20, 0xe2, - 0x99, 0x65, 0x59, 0x4d, 0xca, 0x27, 0xc7, 0x95, 0xe9, 0xd8, 0x6a, 0x62, 0xf0, 0x8c, 0x19, 0x90, - 0xdf, 0x80, 0xeb, 0x6a, 0x88, 0x6e, 0x05, 0xd9, 0xf6, 0x25, 0x11, 0xd5, 0xfe, 0x56, 0x72, 0x84, - 0xe7, 0xe1, 0xef, 0xdd, 0x5b, 0x28, 0x96, 0x0b, 0xab, 0x7d, 0x76, 0x6f, 0xd6, 0xe4, 0xb7, 0x0a, - 0x70, 0x21, 0xa7, 0xd6, 0x71, 0xac, 0xb5, 0xa7, 0xd1, 0x0f, 0xcf, 0x0d, 0xf8, 0x10, 0xcb, 0x6d, - 0xc6, 0x0f, 0x16, 0xa5, 0xf5, 0xcf, 0xf8, 0xee, 0x9c, 0x9a, 0xc8, 0x9b, 0x30, 0x84, 0xc7, 0xef, - 0xb0, 0x3c, 0x81, 0x0a, 0x2a, 0xc6, 0x04, 0xc2, 0x43, 0xba, 0xbe, 0x25, 0x09, 0x1c, 0xb2, 0xca, - 0x14, 0x3d, 0xdc, 0x12, 0xa5, 0x62, 0x26, 0x22, 0x88, 0x89, 0xc3, 0x02, 0x2f, 0x92, 0x71, 0x43, - 0x8c, 0xf4, 0x05, 0x26, 0xd9, 0x02, 0xc0, 0x48, 0x20, 0x56, 0xa5, 0x07, 0x03, 0x23, 0x03, 0xa5, - 0x41, 0x3e, 0x71, 0xa4, 0x0f, 0xfc, 0xef, 0x8c, 0xf0, 0x07, 0xb3, 0xbb, 0x9e, 0xfb, 0xd8, 0x8d, - 0x17, 0x30, 0xdd, 0x70, 0x17, 0xe7, 0x11, 0x12, 0x6a, 0x75, 0x4e, 0xc6, 0x20, 0x65, 0xe3, 0x2b, - 0xf6, 0xb4, 0xf1, 0xbd, 0xa5, 0xdd, 0x86, 0x69, 0x91, 0x42, 0xb9, 0xfa, 0x64, 0xda, 0xd4, 0xe2, - 0x6b, 0xb2, 0xaf, 0x61, 0x08, 0x83, 0x7b, 0xf2, 0xab, 0xc6, 0xb1, 0xf9, 0xdb, 0x62, 0xd9, 0xee, - 0xd2, 0x7c, 0x1e, 0x0d, 0x54, 0x3c, 0x82, 0xe7, 0x12, 0x47, 0x80, 0x21, 0x71, 0x84, 0x90, 0x1d, - 0x98, 0xda, 0x66, 0xbb, 0x39, 0xf7, 0xc4, 0x6e, 0x07, 0xc2, 0xee, 0xc1, 0x2d, 0x2a, 0xa8, 0x4d, - 0xb4, 0x65, 0x71, 0x9d, 0xaa, 0x72, 0x7d, 0x43, 0xcd, 0x20, 0x27, 0xcb, 0x30, 0x59, 0xa3, 0x4e, - 0xd0, 0x38, 0x7c, 0x48, 0x9f, 0x33, 0x4d, 0xca, 0x48, 0x9d, 0x11, 0x62, 0x09, 0xfb, 0x5e, 0x2c, - 0xd2, 0xdd, 0x47, 0x4c, 0x22, 0xf2, 0x29, 0x0c, 0xd5, 0xfc, 0x20, 0x5a, 0x78, 0x2e, 0x16, 0x35, - 0x79, 0x19, 0xc5, 0x81, 0x0b, 0x17, 0x65, 0xfa, 0x90, 0xd0, 0x0f, 0xa2, 0xfa, 0xbe, 0x11, 0x64, - 0x8a, 0xa3, 0x90, 0xe7, 0x30, 0x6d, 0x2e, 0x28, 0xc2, 0x41, 0x78, 0x44, 0x68, 0x70, 0x59, 0xab, - 0x16, 0x47, 0x59, 0xb8, 0x29, 0xb8, 0x5f, 0x4b, 0x2e, 0x5b, 0x8f, 0xb1, 0x5c, 0x57, 0x7b, 0xb2, - 0xe8, 0xc9, 0x06, 0xe6, 0x5d, 0xe1, 0x5f, 0x54, 0x0d, 0xb9, 0x63, 0xf1, 0x68, 0x1c, 0xc6, 0xac, - 0x83, 0x8b, 0x12, 0x4a, 0xc2, 0x09, 0x93, 0xc9, 0x7a, 0xec, 0x14, 0x29, 0xd9, 0x86, 0xf3, 0xbb, - 0x21, 0xdd, 0x0e, 0xe8, 0x53, 0x97, 0x3e, 0x93, 0xfc, 0x20, 0x8e, 0xf9, 0xc4, 0xf8, 0xb5, 0x79, - 0x69, 0x16, 0xc3, 0x34, 0x31, 0x79, 0x1f, 0x60, 0xdb, 0xf5, 0x3c, 0xda, 0xc4, 0x1b, 0xcd, 0x31, - 0x64, 0x85, 0xd6, 0xda, 0x36, 0x42, 0xeb, 0xbe, 0xd7, 0xd2, 0x45, 0xaa, 0x21, 0x93, 0x05, 0x98, - 0x58, 0xf3, 0x1a, 0xad, 0x8e, 0xf0, 0x3c, 0x08, 0x71, 0x41, 0x11, 0xb1, 0xe8, 0x5c, 0x5e, 0x50, - 0x4f, 0x4d, 0x72, 0x93, 0x84, 0x3c, 0x04, 0x22, 0x00, 0x62, 0xd4, 0x3a, 0xfb, 0x2d, 0x2a, 0xa6, - 0x3b, 0x5a, 0x61, 0x24, 0x23, 0x1c, 0xee, 0x46, 0x88, 0xb7, 0x14, 0xd9, 0xdc, 0xfb, 0x30, 0xa6, - 0x8d, 0xf9, 0x8c, 0xa8, 0x0e, 0xd3, 0x7a, 0x54, 0x87, 0x51, 0x3d, 0x7a, 0xc3, 0xdf, 0x2e, 0xc0, - 0xe5, 0xec, 0xb9, 0x24, 0x14, 0xb0, 0x2d, 0x18, 0x55, 0x40, 0xf5, 0x8e, 0x47, 0x9e, 0x2a, 0x12, - 0x1a, 0x10, 0x9f, 0xd0, 0x72, 0xe5, 0xd1, 0xbf, 0x3e, 0xe6, 0xf1, 0x02, 0xa6, 0xfe, 0xff, 0x7d, - 0x04, 0xa6, 0xd1, 0x5f, 0x3d, 0xb9, 0x4e, 0x7d, 0x82, 0xd1, 0x59, 0x10, 0xa6, 0x59, 0xae, 0x85, - 0x11, 0x8b, 0xc3, 0x93, 0xa1, 0xc4, 0x0c, 0x02, 0xf2, 0x8e, 0xee, 0x6e, 0x51, 0xd4, 0xf2, 0xbc, - 0x48, 0xa0, 0xfe, 0x09, 0xb1, 0x1f, 0xc6, 0x1b, 0xc6, 0x6d, 0xff, 0xa9, 0x17, 0xbd, 0x81, 0xd3, - 0x2e, 0x7a, 0xbb, 0x6a, 0xd1, 0xe3, 0x51, 0x3f, 0x5e, 0xd7, 0x16, 0xbd, 0x97, 0xbf, 0xda, 0x0d, - 0xbd, 0xec, 0xd5, 0x6e, 0xf8, 0xdb, 0xad, 0x76, 0x23, 0x2f, 0xb8, 0xda, 0xdd, 0x87, 0xc9, 0x4d, - 0x4a, 0x9b, 0xda, 0x1d, 0xcc, 0x68, 0xbc, 0x7b, 0x7a, 0x14, 0xad, 0x6b, 0x59, 0x17, 0x31, 0x09, - 0xaa, 0xdc, 0x55, 0x13, 0xfe, 0x66, 0x56, 0xcd, 0xb1, 0x97, 0xbc, 0x6a, 0x8e, 0x7f, 0x9b, 0x55, - 0x33, 0xb5, 0xf4, 0x4d, 0x9c, 0x79, 0xe9, 0xfb, 0x36, 0xab, 0xd5, 0xc7, 0xe8, 0xad, 0x58, 0xab, - 0xad, 0x0a, 0xc7, 0x14, 0xcd, 0x13, 0x64, 0xd5, 0x0f, 0xa5, 0x33, 0x37, 0xfe, 0xcd, 0x60, 0xdb, - 0x7e, 0x20, 0x6f, 0xd3, 0xf1, 0x6f, 0x6b, 0x01, 0x7d, 0x14, 0x75, 0x7a, 0xf5, 0x8e, 0x61, 0x58, - 0x3c, 0x82, 0x14, 0x6b, 0x5c, 0xf2, 0x18, 0x65, 0xcb, 0x72, 0xeb, 0xcf, 0x0b, 0xfc, 0xbe, 0xf3, - 0x7f, 0xc4, 0xa5, 0xf2, 0xdb, 0xdc, 0x41, 0xfe, 0x76, 0x1c, 0x1c, 0x41, 0x04, 0x72, 0x08, 0x9c, - 0xc6, 0x93, 0xf8, 0x12, 0xf8, 0x47, 0x6c, 0x9e, 0xeb, 0x05, 0x18, 0xaa, 0x36, 0x3e, 0x2b, 0x9a, - 0x85, 0x7b, 0xf7, 0xe4, 0x02, 0x20, 0x62, 0x44, 0x70, 0xb0, 0xb9, 0x00, 0xe8, 0x04, 0xe8, 0x86, - 0x77, 0xce, 0xb2, 0xf9, 0xdb, 0xfe, 0xcc, 0x16, 0xbc, 0x9b, 0x7e, 0x9d, 0x8e, 0x87, 0x91, 0xf8, - 0x75, 0xba, 0x2e, 0xc6, 0xf8, 0x9d, 0xfa, 0x2e, 0x5c, 0xb2, 0xe9, 0x91, 0xff, 0x94, 0xbe, 0x5c, - 0xb6, 0x5f, 0xc1, 0x45, 0x93, 0x21, 0x7f, 0xc7, 0xc4, 0xe3, 0xe2, 0x7f, 0x9c, 0x1d, 0x4d, 0x5f, - 0x10, 0xf0, 0x68, 0xfa, 0x3c, 0x28, 0x37, 0xfb, 0x53, 0xdf, 0x37, 0xb0, 0xcc, 0xf2, 0xe1, 0xb2, - 0xc9, 0xbc, 0xda, 0x6c, 0x62, 0x56, 0xcd, 0x86, 0xdb, 0x76, 0xbc, 0x88, 0x6c, 0xc1, 0x98, 0xf6, - 0x33, 0x61, 0x2a, 0xd0, 0x4a, 0x84, 0x4e, 0x13, 0x03, 0x8c, 0xa0, 0xa6, 0x31, 0xd8, 0xa2, 0x50, - 0x49, 0x8a, 0x87, 0x89, 0x4c, 0xaf, 0x73, 0x01, 0x26, 0xb4, 0x9f, 0xca, 0x1a, 0x8a, 0x93, 0x5f, - 0xab, 0xc1, 0x14, 0x98, 0x49, 0x62, 0x35, 0x60, 0x2e, 0x4b, 0x68, 0x3c, 0xfa, 0x35, 0x59, 0x8e, - 0x23, 0x67, 0xf5, 0x76, 0xe4, 0x3b, 0x97, 0x17, 0x35, 0xcb, 0xfa, 0xbf, 0x06, 0xe0, 0x92, 0xe8, - 0x8c, 0x97, 0xd9, 0xe3, 0xe4, 0xc7, 0x30, 0xa6, 0xf5, 0xb1, 0x10, 0xfa, 0x35, 0xf9, 0x0a, 0x29, - 0x6f, 0x2c, 0x70, 0x93, 0x46, 0x07, 0x01, 0xf5, 0x44, 0x77, 0xaf, 0xf6, 0xd9, 0x3a, 0x4b, 0xd2, - 0x82, 0x49, 0xb3, 0xa3, 0x85, 0x55, 0xe7, 0x46, 0x66, 0x25, 0x26, 0xaa, 0x0c, 0x8d, 0xdd, 0xac, - 0x67, 0x76, 0xf7, 0x6a, 0x9f, 0x9d, 0xe0, 0x4d, 0xbe, 0x81, 0xf3, 0xa9, 0x5e, 0x16, 0xc6, 0xba, - 0xd7, 0x32, 0x2b, 0x4c, 0x61, 0x73, 0x4b, 0x6f, 0x80, 0xe0, 0xdc, 0x6a, 0xd3, 0x95, 0x90, 0x26, - 0x8c, 0xeb, 0x1d, 0x2f, 0xcc, 0x4e, 0xd7, 0xbb, 0x88, 0x92, 0x23, 0x72, 0xe5, 0x4e, 0xc8, 0x12, - 0xfb, 0xfe, 0xb9, 0x69, 0xbd, 0x36, 0x90, 0x47, 0x60, 0x88, 0xff, 0x66, 0x4b, 0xc0, 0x76, 0x40, - 0x43, 0xea, 0x35, 0xa8, 0xe1, 0xfb, 0xfd, 0x2d, 0x97, 0x80, 0x7f, 0x5e, 0x80, 0x72, 0x16, 0xdf, - 0x1a, 0xf5, 0x9a, 0x64, 0x1b, 0x4a, 0xc9, 0x8a, 0xc4, 0xa8, 0xb6, 0x54, 0xf4, 0xe1, 0xdc, 0x26, - 0xad, 0xf6, 0xd9, 0x29, 0x6a, 0xb2, 0x09, 0xe7, 0x35, 0x98, 0x30, 0xae, 0x16, 0x4f, 0x63, 0x5c, - 0x65, 0xbd, 0x90, 0x22, 0xd5, 0x6d, 0xd3, 0xab, 0xb8, 0x33, 0x2e, 0xf9, 0x47, 0x8e, 0xeb, 0x31, - 0x45, 0x57, 0x0b, 0x9e, 0x05, 0x31, 0x54, 0xc8, 0x86, 0x5b, 0x5b, 0x11, 0x2a, 0xdf, 0xaa, 0x28, - 0x14, 0xeb, 0x23, 0x5c, 0xc1, 0x85, 0x8d, 0x8e, 0x3f, 0xf8, 0x55, 0xcc, 0xae, 0xc1, 0xe0, 0xce, - 0x7a, 0x6d, 0xb1, 0x2a, 0x9e, 0x0f, 0xf3, 0xa0, 0x13, 0xad, 0xb0, 0xde, 0x70, 0x6c, 0x5e, 0x60, - 0x7d, 0x08, 0x64, 0x85, 0x46, 0x22, 0xfc, 0xbd, 0xa2, 0x7b, 0x15, 0x86, 0x05, 0x48, 0x50, 0xa2, - 0xd7, 0x9d, 0x08, 0xa6, 0x6f, 0xcb, 0x32, 0x6b, 0x5b, 0x9e, 0x13, 0x5a, 0xd4, 0x09, 0xb5, 0x8d, - 0xf9, 0x3d, 0x18, 0x09, 0x04, 0x4c, 0xec, 0xcb, 0x93, 0x2a, 0xbb, 0x09, 0x82, 0xb9, 0x3d, 0x5b, - 0xe2, 0xd8, 0xea, 0x2f, 0x6b, 0x1d, 0x03, 0xc4, 0x6c, 0xad, 0x2d, 0x2d, 0x32, 0xa9, 0x0a, 0x61, - 0xc9, 0xee, 0xb8, 0x83, 0xee, 0xe9, 0x11, 0xd5, 0x1f, 0x0f, 0xa3, 0x68, 0x70, 0x92, 0x8b, 0xb0, - 0x48, 0x1a, 0x8a, 0xf5, 0x96, 0x0a, 0x37, 0x93, 0xc1, 0x2d, 0x2f, 0x4b, 0xc7, 0x26, 0x06, 0xd2, - 0x59, 0x41, 0x4f, 0x9c, 0x97, 0xd1, 0x08, 0x07, 0xe6, 0xf8, 0x36, 0xcf, 0xbe, 0x4a, 0x24, 0x1a, - 0xf4, 0xd5, 0xd2, 0xb8, 0x08, 0xa3, 0x0a, 0xa6, 0xae, 0xd5, 0xb8, 0xac, 0x0c, 0xfc, 0xbd, 0xb7, - 0xf8, 0x3b, 0xeb, 0x86, 0x62, 0x10, 0xd3, 0xb1, 0x2a, 0xf8, 0xbc, 0xfb, 0x8e, 0xab, 0x08, 0x69, - 0x10, 0x7d, 0xa7, 0x55, 0xc4, 0x91, 0x96, 0xce, 0x52, 0x85, 0x81, 0xbf, 0x37, 0x7f, 0x1a, 0x41, - 0x7d, 0xc7, 0x55, 0x30, 0x41, 0x7d, 0x77, 0x55, 0x50, 0x19, 0x92, 0x8a, 0x0f, 0xd2, 0x54, 0x25, - 0xcb, 0xe9, 0x4a, 0xa4, 0xe1, 0x3a, 0x41, 0xd1, 0xb5, 0x3f, 0x28, 0x5c, 0xe6, 0xc2, 0xfa, 0x25, - 0x54, 0xc3, 0x04, 0xf6, 0xdd, 0x56, 0xf3, 0xff, 0x16, 0x78, 0x80, 0xac, 0xda, 0x96, 0x96, 0xe2, - 0xd3, 0x7b, 0xec, 0x6b, 0xb7, 0xfe, 0xda, 0x6c, 0x7f, 0xe8, 0x7a, 0x4d, 0xfd, 0xd6, 0xdf, 0xe9, - 0x44, 0x87, 0x2a, 0x80, 0xf4, 0x13, 0xd7, 0x6b, 0xda, 0x49, 0x6c, 0xf2, 0x3e, 0x4c, 0x68, 0x20, - 0xa5, 0xad, 0xf1, 0x2c, 0x1c, 0x3a, 0xb9, 0xdb, 0xb4, 0x4d, 0x4c, 0xeb, 0xaf, 0x0b, 0x30, 0x95, - 0x91, 0x7c, 0x1a, 0x8d, 0x19, 0x78, 0x0a, 0x52, 0x0b, 0x95, 0xc8, 0x9b, 0x85, 0xb1, 0x3a, 0x8c, - 0x4d, 0x52, 0x21, 0x62, 0xfe, 0x01, 0x2d, 0x51, 0x76, 0x51, 0x4b, 0xe9, 0x96, 0x9d, 0x1c, 0x5b, - 0x47, 0x27, 0x21, 0x40, 0xdc, 0x12, 0x61, 0x36, 0xae, 0x31, 0x95, 0x56, 0xcb, 0xb2, 0xfd, 0x52, - 0xd2, 0x7c, 0x6b, 0xd5, 0x58, 0xbf, 0x5d, 0x84, 0x0b, 0x19, 0xdf, 0x5f, 0xa3, 0xd1, 0xdf, 0x84, - 0x08, 0x12, 0xb9, 0xce, 0xfb, 0x7f, 0x49, 0xb9, 0xce, 0xad, 0x7f, 0x53, 0x84, 0x0b, 0xbb, 0xed, - 0x10, 0x1f, 0x6f, 0xad, 0x79, 0x4f, 0xa9, 0x17, 0xf9, 0xc1, 0x73, 0x7c, 0x70, 0x42, 0xde, 0x81, - 0xc1, 0x55, 0xda, 0x6a, 0xf9, 0x62, 0xfc, 0x5f, 0x91, 0x8e, 0x17, 0x49, 0x6c, 0x44, 0x5a, 0xed, - 0xb3, 0x39, 0x36, 0x79, 0x1f, 0x46, 0x57, 0xa9, 0x13, 0x44, 0xfb, 0xd4, 0x91, 0x47, 0x16, 0x99, - 0x1b, 0x44, 0x23, 0x11, 0x08, 0xab, 0x7d, 0x76, 0x8c, 0x4d, 0xe6, 0xd9, 0x69, 0xde, 0x3b, 0x50, - 0x0f, 0xd5, 0x73, 0x2a, 0x64, 0x38, 0xab, 0x7d, 0x36, 0xe2, 0x92, 0x0d, 0x98, 0xa8, 0x1e, 0x50, - 0x2f, 0xda, 0xa0, 0x91, 0xd3, 0x74, 0x22, 0x47, 0xa8, 0xb6, 0xaf, 0xe6, 0x11, 0x1b, 0xc8, 0xab, - 0x7d, 0xb6, 0x49, 0x4d, 0x3e, 0x84, 0xe1, 0x15, 0xdf, 0x6f, 0xee, 0x3f, 0x97, 0x11, 0x14, 0x2a, - 0x79, 0x8c, 0x04, 0xda, 0x6a, 0x9f, 0x2d, 0x29, 0x16, 0x06, 0xa1, 0x7f, 0x23, 0x3c, 0xb0, 0x8e, - 0x0b, 0x50, 0x5e, 0xf2, 0x9f, 0x79, 0x99, 0x52, 0xfd, 0x81, 0x29, 0x55, 0xc9, 0x3e, 0x03, 0x3f, - 0x21, 0xd7, 0xb7, 0x61, 0x60, 0xdb, 0xf5, 0x0e, 0x12, 0xaa, 0x60, 0x06, 0x1d, 0xc3, 0x42, 0xf1, - 0xb8, 0xde, 0x01, 0x59, 0x97, 0x3a, 0xb8, 0xb0, 0x35, 0xf6, 0x1b, 0x8a, 0x7f, 0x06, 0xb5, 0x8e, - 0x1d, 0xeb, 0xda, 0xfc, 0xb7, 0xfc, 0xc0, 0x37, 0x60, 0x36, 0xa7, 0x5e, 0xf1, 0xf2, 0x9c, 0x7d, - 0xdb, 0x00, 0x2a, 0x36, 0xaf, 0xc3, 0x4c, 0x66, 0xff, 0xa5, 0x10, 0xff, 0x5e, 0xd6, 0x40, 0xe4, - 0x5f, 0x5e, 0x86, 0x61, 0x99, 0x34, 0x8b, 0xdb, 0x7e, 0xe4, 0x4f, 0x7c, 0x7b, 0x25, 0x27, 0xaa, - 0x0c, 0x95, 0x22, 0xe7, 0xe3, 0x9e, 0x16, 0x9a, 0x8a, 0x4f, 0xa7, 0x0f, 0xbe, 0xc5, 0xa4, 0x51, - 0xbc, 0x58, 0x9d, 0xab, 0x7e, 0x18, 0x79, 0xca, 0xa9, 0xd7, 0x56, 0xbf, 0xc9, 0x2d, 0x28, 0xc9, - 0x04, 0x19, 0x22, 0x13, 0x8f, 0xc8, 0xcc, 0x6e, 0xa7, 0xe0, 0xe4, 0x3d, 0x98, 0x4d, 0xc2, 0xe4, - 0x57, 0xf2, 0xc7, 0x73, 0x79, 0xc5, 0xd6, 0x9f, 0x15, 0x31, 0x7a, 0x78, 0x97, 0x71, 0xcd, 0xa4, - 0xbb, 0x55, 0x13, 0xd2, 0x2a, 0x6e, 0xd5, 0xc8, 0x65, 0x18, 0xdd, 0xaa, 0x19, 0x99, 0xc7, 0xec, - 0x18, 0xc0, 0x9a, 0xcd, 0x3e, 0xa1, 0x1a, 0x34, 0x0e, 0xdd, 0x88, 0x36, 0xa2, 0x4e, 0x20, 0x56, - 0x61, 0x3b, 0x05, 0x27, 0x16, 0x8c, 0xaf, 0xb4, 0xdc, 0xfd, 0x86, 0x64, 0xc6, 0x45, 0x60, 0xc0, - 0xc8, 0x6b, 0x30, 0xb9, 0xe6, 0x85, 0x91, 0xd3, 0x6a, 0x6d, 0xd0, 0xe8, 0xd0, 0x6f, 0x8a, 0xe4, - 0xa8, 0x76, 0x02, 0xca, 0xea, 0x5d, 0xf4, 0xbd, 0xc8, 0x71, 0x3d, 0x1a, 0xd8, 0x1d, 0x2f, 0x72, - 0x8f, 0xa8, 0xf8, 0xf6, 0x14, 0x9c, 0xbc, 0x0d, 0x33, 0x0a, 0xb6, 0x15, 0x34, 0x0e, 0x69, 0x18, - 0x05, 0x98, 0x8f, 0x10, 0xdd, 0x77, 0xec, 0xec, 0x42, 0xac, 0xa1, 0xe5, 0x77, 0x9a, 0xcb, 0xde, - 0x53, 0x37, 0xf0, 0x3d, 0xcc, 0xf6, 0x31, 0x22, 0x6a, 0x48, 0xc0, 0xad, 0x3f, 0x1c, 0xc9, 0x9c, - 0xb6, 0xdf, 0x66, 0x0c, 0x7e, 0x01, 0xe3, 0x8b, 0x4e, 0xdb, 0xd9, 0x77, 0x5b, 0x6e, 0xe4, 0xaa, - 0xc4, 0x6d, 0xef, 0xf4, 0x98, 0xf3, 0x32, 0x65, 0x0a, 0x6d, 0xea, 0xc4, 0xb6, 0xc1, 0x6a, 0xee, - 0xaf, 0x86, 0x60, 0x26, 0x13, 0x8f, 0xdc, 0x14, 0x19, 0xde, 0xd4, 0xba, 0x2a, 0xd2, 0x87, 0xd9, - 0x49, 0x30, 0xeb, 0x4b, 0x04, 0x2d, 0xb6, 0xa8, 0xe3, 0x75, 0x44, 0xf2, 0x30, 0xdb, 0x80, 0xb1, - 0xbe, 0x64, 0x7a, 0x83, 0xc6, 0x0c, 0x7d, 0xb2, 0xed, 0x04, 0x94, 0x5c, 0x83, 0x31, 0x06, 0x91, - 0xac, 0x06, 0xf8, 0xeb, 0x41, 0x0d, 0xc4, 0x38, 0x6d, 0xfa, 0x4d, 0xaa, 0x71, 0x1a, 0xe4, 0x9c, - 0x4c, 0x28, 0xe3, 0xc4, 0x20, 0x92, 0xd3, 0x10, 0xe7, 0xa4, 0x81, 0xc8, 0x2b, 0x30, 0x51, 0x6d, - 0xb7, 0x35, 0x46, 0x98, 0x35, 0xcc, 0x36, 0x81, 0xe4, 0x2a, 0x40, 0xb5, 0xdd, 0x96, 0x6c, 0x30, - 0x23, 0x98, 0xad, 0x41, 0xc8, 0xed, 0x38, 0x00, 0x9c, 0xc6, 0x0a, 0xaf, 0x13, 0xec, 0x8c, 0x12, - 0x26, 0x57, 0x15, 0x2d, 0x4b, 0x30, 0x05, 0x2e, 0xd7, 0x04, 0x98, 0x7c, 0x04, 0x17, 0x13, 0x7e, - 0x17, 0x5a, 0x05, 0x68, 0xea, 0xb7, 0xf3, 0x11, 0xc8, 0xbb, 0x70, 0x21, 0x51, 0x28, 0xab, 0x43, - 0xab, 0xbe, 0x9d, 0x53, 0x4a, 0x3e, 0x80, 0x72, 0xe2, 0x45, 0x78, 0x5c, 0x29, 0x5a, 0xf0, 0xed, - 0xdc, 0x72, 0x36, 0xbb, 0x12, 0x4f, 0xcb, 0x44, 0x95, 0x78, 0x59, 0x69, 0x67, 0x17, 0x92, 0x55, - 0xa8, 0x64, 0xfa, 0xb2, 0x68, 0x15, 0x63, 0xa6, 0x33, 0xbb, 0x17, 0x1a, 0x59, 0x80, 0xcb, 0x99, - 0x28, 0xb2, 0x19, 0x98, 0xff, 0xcc, 0xee, 0x8a, 0x43, 0xe6, 0x61, 0x3a, 0xf6, 0xe9, 0xd1, 0x9a, - 0x80, 0xa9, 0xcf, 0xec, 0xcc, 0x32, 0xf2, 0xa6, 0xf9, 0xee, 0x9f, 0x57, 0x86, 0x99, 0xcf, 0xec, - 0x74, 0x81, 0x75, 0x52, 0x80, 0xcb, 0x99, 0x1b, 0xa5, 0xd4, 0xe7, 0xe7, 0x92, 0x8a, 0xa3, 0xb6, - 0x16, 0xdc, 0x82, 0x01, 0x54, 0xf0, 0xb9, 0xad, 0x58, 0xba, 0xb1, 0x22, 0x3d, 0x67, 0xc5, 0x4a, - 0x6d, 0xc4, 0x21, 0x2b, 0xea, 0x6e, 0xb0, 0x1f, 0x2d, 0x19, 0x77, 0x92, 0x0a, 0x54, 0x46, 0xe5, - 0xfa, 0x1d, 0xa1, 0xbc, 0x0d, 0xfc, 0x36, 0xd7, 0x30, 0x7f, 0x56, 0x80, 0x4a, 0x0f, 0xfd, 0x40, - 0x7d, 0x53, 0xe1, 0x14, 0xdf, 0xf4, 0x40, 0x7d, 0x13, 0x7f, 0x76, 0x3b, 0x7f, 0x3a, 0x1d, 0xe4, - 0x65, 0x7f, 0xd6, 0x5f, 0x17, 0x80, 0xa4, 0xf5, 0x50, 0xf2, 0x7d, 0x18, 0xad, 0xd5, 0x56, 0x0d, - 0x8f, 0xbe, 0xd4, 0xed, 0x50, 0x8c, 0x41, 0xee, 0x9e, 0xca, 0x85, 0x4f, 0x77, 0xe0, 0xfb, 0x24, - 0xe5, 0x37, 0xd8, 0xdf, 0xd5, 0x6f, 0x30, 0xe5, 0x35, 0xb8, 0x9c, 0xe1, 0x08, 0x37, 0xd0, 0xc3, - 0x11, 0x2e, 0xed, 0xe5, 0x66, 0x2d, 0x41, 0x39, 0x4f, 0x95, 0xc5, 0x15, 0x8e, 0x87, 0x4d, 0xd3, - 0x6e, 0xb8, 0xf8, 0x0a, 0x67, 0x82, 0xad, 0x77, 0xe1, 0x82, 0xa2, 0xe6, 0xf9, 0x58, 0xb4, 0xe0, - 0x06, 0xe2, 0xfc, 0xab, 0x82, 0x28, 0xc4, 0x00, 0xeb, 0x4f, 0x07, 0x52, 0x84, 0xb5, 0xce, 0xd1, - 0x91, 0x13, 0x3c, 0x27, 0x55, 0x93, 0xb0, 0xbf, 0xe7, 0x91, 0x63, 0x61, 0xe0, 0x67, 0xc7, 0x95, - 0x3e, 0x8d, 0x3b, 0xdb, 0x17, 0x50, 0xc3, 0xf0, 0x1a, 0x94, 0xdf, 0x8d, 0x15, 0x79, 0x00, 0x27, - 0x03, 0x48, 0xf6, 0x60, 0x42, 0xec, 0xdd, 0xf8, 0x5b, 0xce, 0xb1, 0xbb, 0xc9, 0x39, 0x66, 0x34, - 0xef, 0xb6, 0x41, 0xc2, 0x47, 0xa3, 0xc9, 0x86, 0x7c, 0x01, 0x93, 0x52, 0x53, 0x13, 0x8c, 0xb9, - 0x37, 0xd3, 0xbd, 0xee, 0x8c, 0x4d, 0x1a, 0xce, 0x39, 0xc1, 0x88, 0x35, 0x59, 0x2e, 0x76, 0x9c, - 0xf3, 0xe0, 0x69, 0x9a, 0x6c, 0x90, 0x88, 0x26, 0x1b, 0xb0, 0xb9, 0x4f, 0x81, 0xa4, 0xbf, 0xab, - 0xd7, 0x74, 0x9a, 0xd0, 0xa6, 0xd3, 0x5c, 0x15, 0xa6, 0x32, 0x3e, 0xe0, 0x4c, 0x2c, 0x3e, 0x05, - 0x92, 0x6e, 0xe9, 0x59, 0x38, 0x58, 0x37, 0xe1, 0x35, 0x25, 0x02, 0x35, 0x1a, 0x0c, 0x9e, 0xd2, - 0x02, 0xfe, 0x9b, 0x45, 0xa8, 0xf4, 0x40, 0x25, 0xff, 0x7f, 0x21, 0x29, 0x6d, 0x3e, 0x1a, 0xdf, - 0x4f, 0x4a, 0x3b, 0x9b, 0x3e, 0x43, 0xec, 0x0b, 0x1f, 0xfc, 0xd6, 0x5f, 0xbc, 0xf0, 0xc9, 0x23, - 0xdd, 0x65, 0x67, 0x97, 0xd6, 0x80, 0x2e, 0x2d, 0x1b, 0xa6, 0x8d, 0x33, 0xdb, 0x69, 0x36, 0xaf, - 0xab, 0x00, 0x22, 0x7b, 0xeb, 0xba, 0x7f, 0x20, 0xf4, 0x44, 0x0d, 0x62, 0xdd, 0x87, 0x99, 0x04, - 0x4f, 0x61, 0x95, 0xff, 0x3e, 0xa8, 0x47, 0xec, 0xc8, 0xb4, 0x7f, 0xe1, 0xfc, 0x2f, 0x8e, 0x2b, - 0x13, 0x4c, 0xa5, 0xbf, 0x1d, 0xa7, 0x06, 0x90, 0x7f, 0x59, 0x1b, 0xfa, 0xbd, 0x42, 0xb5, 0xa5, - 0x07, 0xf7, 0x21, 0xf7, 0x60, 0x88, 0x43, 0x12, 0x01, 0xb8, 0x75, 0x6c, 0xb1, 0x26, 0x08, 0x44, - 0x6b, 0x06, 0x9f, 0xdc, 0xe2, 0x8f, 0x6a, 0x1c, 0x22, 0xc2, 0xda, 0xe5, 0x09, 0x69, 0x62, 0xb0, - 0x0a, 0xf2, 0x3d, 0x50, 0x8d, 0x43, 0x59, 0x48, 0x27, 0x10, 0x89, 0xe7, 0xf9, 0xcf, 0x5a, 0xb4, - 0xc9, 0x93, 0xfd, 0x2d, 0x8c, 0x0b, 0x27, 0x90, 0x01, 0x87, 0x31, 0x40, 0x32, 0xeb, 0x13, 0x98, - 0x61, 0x9a, 0x42, 0x90, 0xac, 0x0f, 0xd3, 0x50, 0x30, 0x98, 0xe9, 0x59, 0xef, 0x30, 0x10, 0x7a, - 0xd6, 0x8b, 0x42, 0x6b, 0x1d, 0x2e, 0x72, 0xab, 0xa4, 0xfe, 0x49, 0xf1, 0x1d, 0xc0, 0x20, 0xfe, - 0x4e, 0x3c, 0xd8, 0xcc, 0xf8, 0x7a, 0x8e, 0x67, 0x7d, 0x8c, 0x2f, 0x82, 0xc4, 0x20, 0x75, 0x7d, - 0x2f, 0x36, 0x41, 0x9e, 0xee, 0x09, 0xf1, 0xff, 0x0c, 0x97, 0xab, 0xed, 0x36, 0xf5, 0x9a, 0x31, - 0xe1, 0x4e, 0xe0, 0x9c, 0x32, 0xc0, 0x03, 0xa9, 0xc2, 0x20, 0x62, 0xab, 0x0b, 0x54, 0xd1, 0xdc, - 0x8c, 0xe6, 0x20, 0x9e, 0x88, 0xc8, 0x8a, 0x15, 0x70, 0x4a, 0xab, 0x09, 0xb3, 0xb5, 0xce, 0xfe, - 0x91, 0x1b, 0xa1, 0x3f, 0x3e, 0x06, 0x49, 0x91, 0x75, 0xaf, 0xc9, 0x1c, 0x62, 0x5c, 0x18, 0x37, - 0xe3, 0x97, 0x23, 0xe8, 0xd2, 0x2f, 0x02, 0xa7, 0x3c, 0xbd, 0x77, 0x3b, 0x26, 0x45, 0xf3, 0x0b, - 0xaf, 0x05, 0x8b, 0x45, 0x9e, 0x31, 0x6b, 0x0a, 0xce, 0xeb, 0x97, 0x51, 0x7c, 0x84, 0xcc, 0xc0, - 0x94, 0x79, 0xc9, 0xc4, 0xc1, 0x5f, 0xc3, 0x34, 0x37, 0x82, 0xf3, 0x88, 0xea, 0xf3, 0x71, 0xf0, - 0xf0, 0xe2, 0xde, 0x7c, 0xe2, 0x21, 0x00, 0xfa, 0x07, 0xab, 0x5c, 0x19, 0x7b, 0xf3, 0xfc, 0x55, - 0xe7, 0xd3, 0x79, 0xe3, 0x2a, 0xb3, 0xb8, 0x37, 0xbf, 0x30, 0x2c, 0x22, 0xd3, 0x32, 0xee, 0xbc, - 0xfb, 0xbf, 0x13, 0xee, 0xf3, 0x18, 0x48, 0x60, 0x95, 0x3a, 0xf8, 0xe8, 0x27, 0xfb, 0x39, 0xf6, - 0x24, 0x14, 0x55, 0x9c, 0xca, 0xa2, 0xdb, 0xb4, 0xfe, 0xa8, 0x00, 0x37, 0xb9, 0x32, 0x96, 0x4d, - 0x87, 0x37, 0x4e, 0x39, 0xc4, 0xe4, 0x3d, 0x18, 0x0c, 0x35, 0xef, 0x08, 0x4b, 0xb4, 0xbc, 0x1b, - 0x27, 0x4e, 0x40, 0xaa, 0x30, 0xae, 0xbf, 0x6d, 0x39, 0x5d, 0x08, 0x3c, 0x7b, 0xec, 0xe8, 0xb1, - 0xa3, 0xde, 0xbb, 0x3c, 0x81, 0x4b, 0xcb, 0xdf, 0xb0, 0x01, 0x21, 0x76, 0x27, 0x71, 0x72, 0x88, - 0x9f, 0xfb, 0x9e, 0xdb, 0x11, 0x23, 0xc6, 0x3c, 0xd6, 0x27, 0xc1, 0xec, 0x8c, 0x2c, 0x37, 0x38, - 0xa5, 0xbe, 0x8f, 0xda, 0x06, 0xcc, 0xfa, 0xd3, 0x02, 0x5c, 0xce, 0xae, 0x4d, 0x2c, 0x2c, 0x6b, - 0x70, 0x7e, 0xd1, 0xf1, 0x7c, 0xcf, 0x6d, 0x38, 0xad, 0x5a, 0xe3, 0x90, 0x36, 0x3b, 0x2a, 0x7e, - 0xad, 0x5a, 0x65, 0x0e, 0xa8, 0x27, 0xc9, 0x25, 0x8a, 0x9d, 0xa6, 0x62, 0xa7, 0x43, 0x7c, 0x1e, - 0xc1, 0xd7, 0xde, 0x16, 0x0d, 0x14, 0x3f, 0xde, 0xb2, 0x9c, 0x52, 0x72, 0x57, 0x5a, 0xfb, 0x9b, - 0xbb, 0x9e, 0x1b, 0x29, 0x22, 0x6e, 0xe6, 0xc9, 0x2a, 0xb2, 0xfe, 0x55, 0x01, 0x2e, 0x62, 0xca, - 0x2a, 0x23, 0x09, 0x66, 0x1c, 0xc6, 0x59, 0x46, 0x22, 0x2e, 0x18, 0xcf, 0x3d, 0x0c, 0x6c, 0x33, - 0x24, 0x31, 0x79, 0x13, 0x06, 0x6a, 0xd2, 0x5b, 0x6b, 0x32, 0x91, 0x61, 0x58, 0x50, 0xb0, 0x72, - 0x1b, 0xb1, 0xd8, 0x9e, 0xb3, 0x44, 0xc3, 0x06, 0xf5, 0x30, 0x15, 0x34, 0xb7, 0x3a, 0x68, 0x90, - 0x38, 0x1c, 0xd3, 0x40, 0x5e, 0x38, 0xa6, 0x41, 0x33, 0x1c, 0x93, 0xf5, 0x94, 0x27, 0xac, 0x4a, - 0x7e, 0x90, 0xe8, 0xa4, 0x8f, 0x53, 0x99, 0xa3, 0xf9, 0x3e, 0x70, 0x21, 0xeb, 0xcb, 0x98, 0x82, - 0x9e, 0x48, 0x0a, 0x9d, 0x1f, 0x36, 0x79, 0x1b, 0x5e, 0x31, 0x70, 0xab, 0xad, 0x96, 0xff, 0x8c, - 0x36, 0xb7, 0x03, 0xff, 0xc8, 0x8f, 0x8c, 0x84, 0x3d, 0x22, 0x75, 0x7a, 0x7c, 0x9f, 0x23, 0x46, - 0x65, 0x02, 0x6c, 0xfd, 0x4f, 0xf0, 0x6a, 0x0f, 0x8e, 0xe2, 0xa3, 0x6a, 0x70, 0xde, 0x49, 0x94, - 0x49, 0xb7, 0x9b, 0x57, 0xb3, 0xbe, 0x2b, 0xc9, 0x28, 0xb4, 0xd3, 0xf4, 0xb7, 0x76, 0x8c, 0x6c, - 0xcb, 0xa4, 0x0c, 0xd3, 0xdb, 0xf6, 0xd6, 0xd2, 0xee, 0xe2, 0x4e, 0x7d, 0xe7, 0x8b, 0xed, 0xe5, - 0xfa, 0xee, 0xe6, 0xc3, 0xcd, 0xad, 0x47, 0x9b, 0x3c, 0xee, 0xb8, 0x51, 0xb2, 0xb3, 0x5c, 0xdd, - 0x28, 0x15, 0xc8, 0x34, 0x94, 0x0c, 0xf0, 0xf2, 0xee, 0x42, 0xa9, 0x78, 0xeb, 0x6b, 0x23, 0x8b, - 0x30, 0xb9, 0x0c, 0xe5, 0xda, 0xee, 0xf6, 0xf6, 0x96, 0xad, 0xb8, 0xea, 0x51, 0xcf, 0x67, 0xe0, - 0xbc, 0x51, 0x7a, 0xdf, 0x5e, 0x5e, 0x2e, 0x15, 0x58, 0x53, 0x0c, 0xf0, 0xb6, 0xbd, 0xbc, 0xb1, - 0xb6, 0xbb, 0x51, 0x2a, 0xde, 0xaa, 0xeb, 0x6f, 0xcc, 0xc8, 0x25, 0x98, 0x5d, 0x5a, 0xde, 0x5b, - 0x5b, 0x5c, 0xce, 0xe2, 0x3d, 0x0d, 0x25, 0xbd, 0x70, 0x67, 0x6b, 0x67, 0x9b, 0xb3, 0xd6, 0xa1, - 0x8f, 0x96, 0x17, 0xaa, 0xbb, 0x3b, 0xab, 0x9b, 0xa5, 0x7e, 0x6b, 0x60, 0xa4, 0x58, 0x2a, 0xde, - 0xfa, 0xb1, 0xf1, 0x00, 0x8d, 0x35, 0x5f, 0xa0, 0xef, 0xd6, 0xaa, 0x2b, 0xf9, 0x55, 0xf0, 0xd2, - 0x8d, 0xfb, 0xd5, 0x52, 0x81, 0x5c, 0x81, 0x8b, 0x06, 0x74, 0xbb, 0x5a, 0xab, 0x3d, 0xda, 0xb2, - 0x97, 0xd6, 0x97, 0x6b, 0xb5, 0x52, 0xf1, 0xd6, 0x9e, 0x11, 0x82, 0x8e, 0xd5, 0xb0, 0x71, 0xbf, - 0x5a, 0xb7, 0x97, 0x3f, 0xdb, 0x5d, 0xb3, 0x97, 0x97, 0xd2, 0x35, 0x18, 0xa5, 0x5f, 0x2c, 0xd7, - 0x4a, 0x05, 0x32, 0x05, 0xe7, 0x0c, 0xe8, 0xe6, 0x56, 0xa9, 0x78, 0xeb, 0x35, 0x11, 0xa5, 0x8c, - 0x4c, 0x02, 0x2c, 0x2d, 0xd7, 0x16, 0x97, 0x37, 0x97, 0xd6, 0x36, 0x57, 0x4a, 0x7d, 0x64, 0x02, - 0x46, 0xab, 0xea, 0x67, 0xe1, 0xd6, 0x07, 0x70, 0x2e, 0x71, 0xb4, 0x67, 0x18, 0xea, 0x50, 0x5c, - 0xea, 0x43, 0xf1, 0xcb, 0x9f, 0x68, 0x5f, 0xe5, 0xa7, 0xf4, 0x52, 0xe1, 0xd6, 0x82, 0xcc, 0x6a, - 0xab, 0xcd, 0x73, 0x32, 0x06, 0xc3, 0x4b, 0xcb, 0xf7, 0xab, 0xbb, 0xeb, 0x3b, 0xa5, 0x3e, 0xf6, - 0x63, 0xd1, 0x5e, 0xae, 0xee, 0x2c, 0x2f, 0x95, 0x0a, 0x64, 0x14, 0x06, 0x6b, 0x3b, 0xd5, 0x9d, - 0xe5, 0x52, 0x91, 0x8c, 0xc0, 0xc0, 0x6e, 0x6d, 0xd9, 0x2e, 0xf5, 0xcf, 0xff, 0xd3, 0xff, 0xaf, - 0xc0, 0x8d, 0x8c, 0xf2, 0x31, 0xd3, 0xd7, 0xda, 0x61, 0x52, 0x2c, 0x79, 0x22, 0x85, 0x67, 0xee, - 0xc9, 0x11, 0xb5, 0x80, 0xb9, 0x2e, 0xb7, 0x2e, 0x88, 0x70, 0xb3, 0x70, 0xb7, 0x40, 0x6c, 0xf4, - 0x52, 0x49, 0x9c, 0xad, 0x14, 0xe7, 0xec, 0xe3, 0xef, 0xdc, 0x95, 0xae, 0x47, 0x32, 0xf2, 0x6b, - 0x60, 0xe9, 0x3c, 0x73, 0x4e, 0x20, 0xdf, 0x3f, 0xdd, 0x49, 0x43, 0xd6, 0xf9, 0xda, 0xe9, 0xd0, - 0xc9, 0x03, 0x98, 0x60, 0xba, 0xb9, 0x42, 0x23, 0x97, 0x92, 0x84, 0xda, 0x71, 0x60, 0xee, 0x72, - 0x76, 0xa1, 0xca, 0xb2, 0x33, 0x8e, 0x1f, 0xc2, 0x0f, 0xd6, 0x21, 0x91, 0x91, 0x2c, 0x24, 0x84, - 0xaf, 0xf8, 0x73, 0xe7, 0x13, 0xe0, 0xbd, 0x7b, 0x77, 0x0b, 0xa4, 0x86, 0x61, 0xe4, 0x0c, 0x25, - 0x9f, 0xc8, 0xd7, 0x75, 0x69, 0xed, 0x9f, 0xb7, 0xa6, 0xa2, 0x72, 0x62, 0xe6, 0x9c, 0x0e, 0x36, - 0x81, 0xa4, 0x75, 0x67, 0x72, 0x2d, 0x1e, 0x07, 0xd9, 0x6a, 0xf5, 0xdc, 0x85, 0x94, 0xf3, 0xe1, - 0x32, 0xd3, 0x9e, 0xc8, 0x32, 0x4c, 0x8a, 0x67, 0xea, 0x42, 0x9b, 0x27, 0xdd, 0xce, 0x03, 0xb9, - 0x6c, 0x56, 0x50, 0x4e, 0xea, 0x44, 0x40, 0xe6, 0xe2, 0xef, 0x48, 0x1e, 0x13, 0xe6, 0x2e, 0x65, - 0x96, 0x89, 0xef, 0xbb, 0x0f, 0x93, 0xe6, 0xe1, 0x82, 0xc8, 0x0e, 0xca, 0x3c, 0x73, 0xe4, 0x36, - 0xa8, 0x0e, 0xb3, 0x1b, 0x8e, 0x8b, 0x77, 0x25, 0xc2, 0xc5, 0x4d, 0x3a, 0xa8, 0x91, 0x4a, 0x17, - 0x8f, 0xb5, 0x1a, 0xf5, 0x9a, 0xaa, 0x13, 0xf2, 0x22, 0xe6, 0xe3, 0xb4, 0xa9, 0x49, 0x1d, 0xd9, - 0x74, 0xf0, 0x23, 0x96, 0x99, 0xe7, 0x38, 0xcb, 0x67, 0x73, 0x2e, 0xcf, 0xcd, 0x98, 0x6c, 0xa0, - 0x92, 0x9e, 0xe0, 0xa8, 0x8d, 0x89, 0x33, 0xb3, 0x2b, 0x63, 0xb0, 0x04, 0x2d, 0x3f, 0xbc, 0x28, - 0x0c, 0x49, 0x8e, 0xe0, 0x72, 0x99, 0xdd, 0x2d, 0x90, 0xaf, 0x71, 0x56, 0x67, 0xb2, 0x7b, 0xe4, - 0x46, 0x87, 0x42, 0xfb, 0xb9, 0x94, 0xc9, 0x40, 0x4c, 0x94, 0x2e, 0xdc, 0x6d, 0x98, 0xce, 0xf2, - 0x6c, 0x56, 0x02, 0xed, 0xe2, 0xf6, 0x9c, 0x3b, 0x0a, 0x6c, 0x76, 0xd4, 0x68, 0xe6, 0x77, 0x52, - 0x17, 0xc7, 0xda, 0x5c, 0x9e, 0x1f, 0xc1, 0x24, 0x1b, 0x25, 0x0f, 0x29, 0x6d, 0x57, 0x5b, 0xee, - 0x53, 0x1a, 0x12, 0x19, 0x03, 0x58, 0x81, 0xf2, 0x68, 0x6f, 0x16, 0xc8, 0xf7, 0x60, 0xec, 0x91, - 0x13, 0x35, 0x0e, 0x45, 0x2c, 0x4c, 0x19, 0x2a, 0x13, 0x61, 0x73, 0xf2, 0x17, 0x16, 0xde, 0x2d, - 0x90, 0x1f, 0xc2, 0xf0, 0x0a, 0x8d, 0xf0, 0x75, 0xf3, 0x75, 0xe5, 0xe4, 0xc7, 0x6d, 0x93, 0x6b, - 0x9e, 0x7a, 0xc2, 0x23, 0x1b, 0x9c, 0x34, 0xe4, 0x92, 0x3b, 0x00, 0x7c, 0x41, 0x40, 0x0e, 0xc9, - 0xe2, 0xb9, 0x54, 0xb3, 0xc9, 0x0a, 0x53, 0x1e, 0x5a, 0x34, 0xa2, 0xa7, 0xad, 0x32, 0x4f, 0x46, - 0xeb, 0x30, 0xa9, 0x12, 0x13, 0x6d, 0x62, 0xc8, 0x12, 0x2b, 0xc1, 0x2c, 0x3c, 0x03, 0xb7, 0x0f, - 0xd8, 0xac, 0xe0, 0x59, 0x79, 0x31, 0xb6, 0x05, 0xae, 0xa4, 0xb3, 0x7a, 0x80, 0x0c, 0x7d, 0x09, - 0x95, 0x42, 0xe4, 0x68, 0x1a, 0xed, 0xaa, 0x1f, 0x46, 0x26, 0xad, 0x82, 0x64, 0xd3, 0xfe, 0x2a, - 0xcc, 0xe9, 0xf5, 0x9a, 0xc1, 0x98, 0xe3, 0x35, 0x37, 0x2f, 0xc6, 0xf3, 0xdc, 0xf5, 0x2e, 0x18, - 0xe2, 0xfc, 0xd6, 0xff, 0x3b, 0xc5, 0x02, 0x2e, 0x27, 0x4b, 0x30, 0x25, 0xeb, 0xda, 0x6a, 0x53, - 0xaf, 0x56, 0x5b, 0xc5, 0x24, 0x34, 0xd2, 0xa5, 0x44, 0x83, 0x49, 0xee, 0x24, 0x5d, 0xc4, 0xb6, - 0x3e, 0x23, 0x86, 0x05, 0xe9, 0x16, 0xd9, 0x22, 0xde, 0xfa, 0x32, 0xa3, 0x04, 0x3f, 0xe4, 0x46, - 0x25, 0x43, 0xf9, 0xdf, 0x9b, 0x27, 0x5d, 0x0e, 0x40, 0x73, 0x39, 0x47, 0x88, 0xbb, 0x05, 0xf2, - 0x05, 0x90, 0xf4, 0x91, 0x44, 0x89, 0x30, 0xf7, 0xf8, 0xa5, 0x44, 0xd8, 0xe5, 0x3c, 0xb3, 0x02, - 0x33, 0x2a, 0x82, 0x8d, 0x56, 0xeb, 0x3c, 0xc9, 0x69, 0x4d, 0x5e, 0x2b, 0xc9, 0x27, 0x30, 0x25, - 0x06, 0xad, 0x5e, 0x40, 0x4a, 0x6a, 0xfd, 0x11, 0xa7, 0x92, 0xdc, 0x71, 0xfa, 0x00, 0x66, 0x6a, - 0x09, 0x89, 0x71, 0x4f, 0xf8, 0x8b, 0x26, 0x0b, 0x04, 0xd6, 0x68, 0xc4, 0x45, 0x96, 0xcd, 0xeb, - 0x21, 0x10, 0x6e, 0x14, 0x92, 0xec, 0x9e, 0xba, 0xf4, 0x19, 0xb9, 0x92, 0x68, 0x3a, 0x03, 0x22, - 0x1a, 0x2e, 0x60, 0xb9, 0x5f, 0xb6, 0xc3, 0x73, 0x4a, 0x23, 0xd4, 0xb8, 0x43, 0xbf, 0x66, 0x10, - 0x18, 0xd7, 0xf0, 0xa2, 0x03, 0x2e, 0xe6, 0x62, 0x90, 0xdf, 0xc0, 0xd0, 0xb1, 0xdd, 0x8f, 0x55, - 0xe4, 0x7b, 0x59, 0xa7, 0xdf, 0x9c, 0x83, 0xe1, 0xdc, 0x9b, 0xa7, 0x43, 0x56, 0x07, 0xd9, 0x89, - 0x15, 0x1a, 0x6d, 0xb7, 0x3a, 0x07, 0x2e, 0x66, 0x1b, 0x25, 0xca, 0x68, 0xa4, 0x40, 0x62, 0x5c, - 0xca, 0x88, 0x6d, 0x71, 0x41, 0x8d, 0xfe, 0x84, 0xac, 0x41, 0x89, 0xaf, 0xff, 0x1a, 0x8b, 0x2b, - 0x29, 0x16, 0x02, 0xc5, 0x09, 0x9c, 0xa3, 0x30, 0xb7, 0xb7, 0xee, 0x70, 0xa7, 0x25, 0x22, 0xe7, - 0xa4, 0xae, 0x60, 0x4e, 0x19, 0x30, 0x15, 0x4e, 0x9f, 0xf5, 0x88, 0x4d, 0x43, 0x1a, 0xc9, 0x18, - 0x35, 0x3c, 0xd7, 0xec, 0x8d, 0x78, 0xb3, 0x4f, 0x97, 0xc6, 0x53, 0x3f, 0x11, 0x4f, 0x6d, 0xef, - 0x2d, 0xa2, 0xf2, 0xef, 0x66, 0x30, 0x7d, 0xcd, 0xd0, 0x49, 0xce, 0xc6, 0xf7, 0x6d, 0xdc, 0x83, - 0x30, 0x2e, 0xcf, 0x4c, 0xdc, 0x36, 0xf6, 0x5b, 0x52, 0x4d, 0x68, 0x54, 0x7b, 0xf3, 0xb8, 0xa4, - 0xb1, 0x4d, 0x92, 0xa9, 0xb0, 0x9d, 0x20, 0xa0, 0x1e, 0x27, 0xce, 0xd3, 0x37, 0xb2, 0xa8, 0x3f, - 0xc6, 0xa5, 0x47, 0xa3, 0xe6, 0x0f, 0xf6, 0x7a, 0xb1, 0xe0, 0xb9, 0x91, 0xee, 0x16, 0xc8, 0x7b, - 0x30, 0x22, 0xda, 0xc8, 0x88, 0x8c, 0x46, 0x87, 0x5d, 0x5a, 0x8d, 0x94, 0xc0, 0x85, 0x84, 0x6d, - 0x36, 0x71, 0xf2, 0x7a, 0x9f, 0xb7, 0xf9, 0x3d, 0xb6, 0xd9, 0x36, 0x5f, 0x84, 0x72, 0x51, 0xee, - 0xba, 0x48, 0x59, 0x56, 0xb1, 0x5c, 0x24, 0xa8, 0xc7, 0xf6, 0xc8, 0x99, 0x30, 0xbd, 0x19, 0x03, - 0x22, 0xaa, 0xb8, 0x66, 0x4a, 0x6f, 0x36, 0xc0, 0xbd, 0xf6, 0xda, 0x35, 0x28, 0x55, 0x1b, 0xb8, - 0x13, 0xd4, 0xe8, 0x91, 0xd3, 0x3e, 0xf4, 0x03, 0xaa, 0x0e, 0x2d, 0xc9, 0x02, 0xc9, 0x6b, 0x46, - 0x69, 0x16, 0xa2, 0x60, 0x9d, 0x3a, 0x18, 0x35, 0x7a, 0x56, 0xa9, 0x16, 0x89, 0xa2, 0x6c, 0x8a, - 0x2e, 0x87, 0x94, 0xe9, 0x45, 0x76, 0xac, 0x6a, 0x7d, 0x3b, 0x36, 0x1f, 0xe0, 0x82, 0xa1, 0x90, - 0x43, 0xb5, 0x43, 0x28, 0x90, 0x3a, 0xce, 0xc9, 0xb7, 0x3b, 0x0a, 0xb5, 0x2a, 0xef, 0x8c, 0x63, - 0xb1, 0xe4, 0x51, 0xe7, 0x55, 0xff, 0x03, 0x98, 0x5c, 0x66, 0x0b, 0x7a, 0xa7, 0xe9, 0xf2, 0x48, - 0xf9, 0xc4, 0x0c, 0x7d, 0x9e, 0x4b, 0xb8, 0x2a, 0xd3, 0x91, 0x21, 0xa9, 0x38, 0xfa, 0xcb, 0x3d, - 0x45, 0x83, 0xc9, 0xfe, 0x98, 0x96, 0x6c, 0x45, 0xb2, 0x02, 0x3c, 0x9a, 0x8b, 0xb3, 0xfe, 0x2c, - 0xd7, 0x08, 0xab, 0xed, 0x76, 0x4b, 0x9a, 0xa4, 0xf9, 0xbd, 0xfb, 0xab, 0xc6, 0x11, 0x32, 0x55, - 0x2e, 0x79, 0xa7, 0x95, 0xc6, 0xcf, 0xb5, 0xf4, 0xc0, 0x39, 0x3c, 0x73, 0xca, 0x7b, 0x8d, 0x45, - 0x15, 0xdb, 0xba, 0xda, 0x6a, 0xa5, 0x88, 0x43, 0xf2, 0x86, 0xc9, 0x3d, 0x0b, 0xa7, 0x57, 0x0d, - 0x78, 0x44, 0xe7, 0x5a, 0x57, 0xb5, 0xdd, 0xe6, 0x8b, 0xe5, 0x55, 0xb5, 0x60, 0x98, 0x05, 0xe9, - 0x23, 0x7a, 0xb2, 0x5c, 0xac, 0xed, 0x0f, 0x70, 0x98, 0xc5, 0x39, 0x84, 0x89, 0x7e, 0xe0, 0x4d, - 0xa6, 0x50, 0x56, 0x4a, 0x58, 0xa2, 0x50, 0xed, 0x13, 0xe7, 0x50, 0xf5, 0x89, 0x13, 0x12, 0x2b, - 0xcb, 0x4c, 0x02, 0x2e, 0xf9, 0x5d, 0xcd, 0x2b, 0x56, 0x96, 0xd2, 0x52, 0x32, 0x4f, 0xbb, 0xfa, - 0xe4, 0x9c, 0xfc, 0xff, 0xea, 0x93, 0x73, 0x13, 0xbc, 0x3f, 0x80, 0x52, 0x32, 0x45, 0xb4, 0x62, - 0x9a, 0x93, 0x3b, 0x3a, 0xb7, 0x4f, 0xee, 0xc3, 0xb4, 0xde, 0xa3, 0xea, 0xbb, 0xf3, 0x56, 0xff, - 0x3c, 0x3e, 0x3b, 0x30, 0x93, 0x99, 0xd1, 0x59, 0x6d, 0xb1, 0xdd, 0xf2, 0x3d, 0xe7, 0x72, 0xa5, - 0x70, 0x21, 0x3b, 0xa9, 0x3b, 0x79, 0xc5, 0x3c, 0xf8, 0x67, 0xa7, 0xb8, 0x9e, 0x7b, 0xb5, 0x07, - 0x96, 0x10, 0xe8, 0xd7, 0xb8, 0x03, 0xa6, 0xea, 0xb8, 0xae, 0x99, 0x02, 0x72, 0x2a, 0xb0, 0xba, - 0xa1, 0xa8, 0x31, 0x30, 0x9d, 0x51, 0x9c, 0x2f, 0xe2, 0x1b, 0xf9, 0x3c, 0xe3, 0x81, 0xb5, 0x27, - 0x43, 0x38, 0xe7, 0x4a, 0xa6, 0x6b, 0xf2, 0xef, 0x2e, 0x67, 0xc9, 0x39, 0x35, 0x1e, 0x4e, 0xdf, - 0xe4, 0x3c, 0x6e, 0x4d, 0x65, 0xb6, 0x31, 0x32, 0x73, 0x27, 0xcd, 0x36, 0x59, 0x19, 0xc5, 0x95, - 0x18, 0xba, 0xe5, 0xac, 0xe7, 0xbb, 0xf1, 0x57, 0xdc, 0x8e, 0x63, 0x56, 0xa1, 0xdb, 0x71, 0x32, - 0xf9, 0x5f, 0xcb, 0x47, 0xd0, 0x99, 0x3b, 0xfc, 0xd2, 0x36, 0x91, 0x5a, 0x9c, 0xe8, 0x47, 0xa5, - 0xec, 0xb4, 0xe3, 0x6a, 0x6c, 0x64, 0xa2, 0xe8, 0x55, 0x3c, 0x92, 0x73, 0x30, 0x47, 0x4a, 0x5d, - 0xf2, 0xae, 0x77, 0x57, 0x53, 0xb6, 0xa0, 0x1c, 0x77, 0x66, 0xe2, 0x03, 0xce, 0xd8, 0x95, 0x52, - 0x18, 0x17, 0x73, 0xb3, 0xad, 0x93, 0xd7, 0x53, 0x33, 0x3d, 0x47, 0x30, 0x5d, 0xab, 0xe0, 0xeb, - 0xb9, 0x16, 0x12, 0xfa, 0x52, 0x6c, 0xc4, 0xd5, 0x13, 0xb3, 0xa7, 0xd6, 0xf3, 0x8c, 0xac, 0xed, - 0x2b, 0xa8, 0x17, 0x6b, 0x99, 0xd7, 0x73, 0xbf, 0xfa, 0x4a, 0x16, 0x9f, 0x30, 0xbd, 0xe2, 0x6a, - 0xed, 0x92, 0x7a, 0x5a, 0xb2, 0xe0, 0x2c, 0x2b, 0xee, 0x69, 0x9a, 0x96, 0xc7, 0x67, 0x09, 0xc6, - 0xb4, 0x94, 0xed, 0xe4, 0xa2, 0x21, 0x26, 0x63, 0x0f, 0x9d, 0x33, 0x3e, 0xce, 0xdc, 0x3e, 0x17, - 0xd1, 0x94, 0xac, 0x12, 0xbf, 0xe7, 0xb6, 0xe2, 0x52, 0x9a, 0x87, 0x61, 0x46, 0x56, 0x52, 0xe0, - 0xad, 0xb9, 0x9c, 0x14, 0x8e, 0xd1, 0xa0, 0xfc, 0x4f, 0x22, 0xba, 0x68, 0x7a, 0x34, 0x29, 0x5f, - 0x7f, 0x9d, 0x12, 0x79, 0x61, 0x31, 0x8f, 0x8b, 0x8c, 0xf9, 0x77, 0x41, 0xd9, 0xc4, 0x34, 0x28, - 0x1a, 0x28, 0xb2, 0xd9, 0x6c, 0xe3, 0xd3, 0x91, 0x8c, 0x1c, 0xf6, 0x6a, 0x85, 0xed, 0x9a, 0xe2, - 0x3e, 0x43, 0x77, 0x53, 0x6b, 0x76, 0x2e, 0xc7, 0xae, 0x49, 0xed, 0x73, 0x5b, 0xfa, 0x23, 0x6d, - 0xcd, 0x4e, 0x65, 0xaa, 0x27, 0x37, 0x93, 0x8a, 0x5b, 0x5e, 0x32, 0xfb, 0x2e, 0x7b, 0xc2, 0x74, - 0x56, 0x92, 0x7b, 0xcd, 0xae, 0x9b, 0x9b, 0x01, 0x3f, 0x43, 0x0a, 0xb6, 0x1c, 0xff, 0x39, 0xdc, - 0xba, 0xa4, 0xbc, 0xcf, 0x6d, 0xe1, 0x97, 0xda, 0x42, 0x97, 0x48, 0x4d, 0xaf, 0x8e, 0xe3, 0x3d, - 0x72, 0xd7, 0xe7, 0xf2, 0xde, 0xc4, 0xc7, 0x46, 0xe9, 0xbc, 0xf2, 0x4a, 0xb3, 0xe9, 0x96, 0x75, - 0x3e, 0xd3, 0xec, 0x3b, 0x93, 0xfe, 0x44, 0xc6, 0xef, 0x42, 0xc2, 0x68, 0xdb, 0xab, 0x61, 0x5f, - 0xcb, 0xc5, 0x38, 0x23, 0x1f, 0x7d, 0x62, 0x31, 0xce, 0xcf, 0x58, 0xdf, 0xe5, 0x18, 0x74, 0xae, - 0xe6, 0x1e, 0x78, 0x5a, 0x3a, 0x79, 0x75, 0x08, 0x4a, 0x67, 0xb8, 0x57, 0x4b, 0x4c, 0x56, 0xf6, - 0xf9, 0x2d, 0xa6, 0xff, 0x70, 0xed, 0x5d, 0x4f, 0x0c, 0x4e, 0xe6, 0xf2, 0xf3, 0xa1, 0xab, 0xe5, - 0x26, 0x33, 0x93, 0xb8, 0xc6, 0x50, 0xcf, 0xca, 0xad, 0x18, 0x66, 0x24, 0x08, 0x57, 0x0c, 0x33, - 0xd3, 0x78, 0xdf, 0x41, 0xab, 0x8b, 0xed, 0xb7, 0xa8, 0x6e, 0x75, 0xd1, 0xd2, 0x3c, 0x27, 0x8c, - 0x1e, 0xe4, 0x63, 0x18, 0x55, 0x69, 0xb0, 0x95, 0x7d, 0x3b, 0x99, 0x89, 0x7b, 0xae, 0x9c, 0x2e, - 0x10, 0x15, 0xbe, 0x23, 0x0d, 0x1f, 0x58, 0x67, 0xd9, 0x34, 0x18, 0xe5, 0x57, 0xfb, 0x8e, 0xb4, - 0x7a, 0x18, 0x64, 0xa9, 0x24, 0xd8, 0x49, 0xb2, 0x1f, 0xc0, 0x78, 0x9c, 0xf0, 0x7a, 0x6f, 0x5e, - 0x23, 0x4c, 0x64, 0xc1, 0x4e, 0x12, 0xbe, 0x27, 0xaf, 0x34, 0xb0, 0x3e, 0xb3, 0xb0, 0xfb, 0x2e, - 0xfe, 0xb1, 0xb4, 0xb2, 0x18, 0x2d, 0x4d, 0xa5, 0xcf, 0xee, 0xb2, 0xf8, 0x8e, 0xeb, 0xe9, 0x2a, - 0x55, 0xd7, 0x66, 0x24, 0x9c, 0x55, 0x5d, 0x9b, 0x95, 0x30, 0x36, 0x36, 0xf9, 0x7f, 0x21, 0x4d, - 0x0a, 0x31, 0xd3, 0x2b, 0x46, 0xb3, 0x52, 0x7c, 0xaf, 0xe6, 0x15, 0x27, 0x59, 0xd7, 0xa0, 0x94, - 0xcc, 0xad, 0xa9, 0xce, 0x63, 0x39, 0x49, 0x50, 0xd5, 0x21, 0x2f, 0x37, 0x29, 0xe7, 0xb6, 0xb4, - 0x8f, 0x9b, 0x7c, 0xaf, 0x67, 0x37, 0x4a, 0x67, 0x9d, 0x6f, 0x30, 0x9f, 0x30, 0xd2, 0x6c, 0xea, - 0x27, 0xe5, 0x54, 0x1a, 0x4f, 0x5d, 0xb3, 0xca, 0xc8, 0xcc, 0xe9, 0xca, 0x88, 0x4f, 0xd9, 0x49, - 0xce, 0xdf, 0x30, 0x8f, 0xb0, 0x5d, 0x62, 0xb2, 0xf7, 0xbc, 0xfe, 0x25, 0xbf, 0x02, 0xb3, 0x39, - 0x31, 0xa6, 0xc9, 0xab, 0x09, 0x4b, 0x6b, 0x76, 0x0c, 0x6a, 0x35, 0x40, 0x32, 0xf3, 0x5f, 0x6f, - 0xa0, 0xdf, 0x80, 0x11, 0xdb, 0x21, 0x75, 0x17, 0xf7, 0xc8, 0x8d, 0x0e, 0x79, 0x9a, 0x67, 0x6d, - 0xd9, 0xcc, 0x0c, 0x0a, 0x41, 0x6a, 0x78, 0x16, 0x31, 0xa0, 0x19, 0xd7, 0x71, 0x19, 0x0c, 0xe7, - 0xb2, 0x19, 0xb2, 0xb5, 0x83, 0x8d, 0x85, 0x8c, 0xc0, 0x1b, 0x6a, 0x2c, 0xe4, 0x07, 0xe5, 0xc8, - 0x6d, 0xe6, 0xb6, 0xd4, 0x91, 0xb2, 0x39, 0xe6, 0xc7, 0xe0, 0xc8, 0xe5, 0xf8, 0x80, 0x71, 0x4c, - 0x85, 0xd5, 0x20, 0x39, 0xe8, 0xdd, 0x57, 0x0f, 0x5b, 0x6e, 0xb9, 0x26, 0xd5, 0xbc, 0xd6, 0xbe, - 0xbc, 0x00, 0x1e, 0xb9, 0xed, 0x5b, 0x96, 0xf3, 0x29, 0xbb, 0x7d, 0xa7, 0xdd, 0x74, 0xd5, 0xfd, - 0x57, 0x22, 0xb2, 0x8b, 0xf1, 0xa1, 0x1a, 0x7c, 0x2e, 0x07, 0x4e, 0x36, 0xd1, 0x11, 0x28, 0x09, - 0xd5, 0x0e, 0xa5, 0xd9, 0xa1, 0x63, 0x72, 0xf9, 0xf1, 0x71, 0x6c, 0x84, 0xde, 0x38, 0xcb, 0x38, - 0x4e, 0xc4, 0xec, 0x10, 0xe3, 0xd8, 0x80, 0x9e, 0x6d, 0x1c, 0x27, 0x18, 0x9a, 0xe3, 0x38, 0xd9, - 0xcc, 0xe4, 0x49, 0x3f, 0xb7, 0x57, 0x93, 0xcd, 0x54, 0xe3, 0x38, 0x9b, 0x63, 0x7e, 0x88, 0x94, - 0x5c, 0x8e, 0x6a, 0x1c, 0x9b, 0x1c, 0x73, 0xd0, 0x4f, 0x39, 0x8e, 0x93, 0x95, 0x98, 0xe3, 0xf8, - 0x4c, 0xed, 0x53, 0xe3, 0x38, 0xbb, 0x7d, 0x67, 0x1e, 0xc7, 0x89, 0x98, 0x42, 0xc6, 0x87, 0x66, - 0x8d, 0xe3, 0x24, 0x3e, 0x1f, 0xc7, 0x49, 0x68, 0xc2, 0xb8, 0xd2, 0x65, 0x1c, 0x27, 0x29, 0x3f, - 0x43, 0x7e, 0x89, 0x78, 0x28, 0xa7, 0x19, 0xc9, 0xb9, 0xa1, 0x54, 0xc8, 0x23, 0x34, 0xef, 0x25, - 0xe0, 0xa7, 0x1b, 0xcd, 0x97, 0xf3, 0x98, 0xe2, 0x78, 0xde, 0x93, 0x42, 0x4c, 0x36, 0xd7, 0xb4, - 0x5d, 0x65, 0x87, 0x83, 0xe9, 0xd2, 0xe0, 0x3d, 0x36, 0x6e, 0x9a, 0x5d, 0xf8, 0x76, 0x8b, 0x66, - 0xd3, 0x85, 0xaf, 0x3a, 0xca, 0x24, 0xf9, 0xe6, 0x92, 0x74, 0x1f, 0xdf, 0x9f, 0xcb, 0x0b, 0x8e, - 0x24, 0xdd, 0x7c, 0xe2, 0x70, 0x74, 0xe6, 0x96, 0xaa, 0x43, 0x52, 0xb2, 0xa5, 0x67, 0x1d, 0xe7, - 0x1b, 0x52, 0x7b, 0x48, 0x85, 0xc1, 0x4a, 0x7c, 0xb4, 0x3e, 0xd6, 0x73, 0x4b, 0xc8, 0x0e, 0xda, - 0x72, 0xd3, 0x70, 0xcd, 0x0e, 0x9c, 0x17, 0x6f, 0xab, 0x27, 0xd7, 0x54, 0x40, 0x1f, 0x9d, 0x6b, - 0x5e, 0xb4, 0x1f, 0xc5, 0x35, 0x4d, 0xfd, 0x09, 0x5a, 0xbf, 0xc4, 0x6b, 0x2b, 0xef, 0xb1, 0x9f, - 0x6f, 0x49, 0x99, 0x32, 0x9c, 0x95, 0x18, 0x2e, 0xfa, 0x88, 0x7d, 0x24, 0x6e, 0xf0, 0x24, 0x30, - 0x57, 0xf8, 0x59, 0xf4, 0xe4, 0x13, 0x28, 0x89, 0xe5, 0x2d, 0x66, 0x90, 0x85, 0x98, 0xdb, 0x75, - 0x0b, 0xd2, 0xe8, 0x76, 0x8a, 0x16, 0x9c, 0xc6, 0xd8, 0x76, 0x1a, 0x49, 0xe4, 0x5b, 0xa6, 0xd8, - 0x76, 0xb8, 0x13, 0x74, 0xc2, 0x88, 0x36, 0xd3, 0x16, 0x25, 0xb3, 0x31, 0xd2, 0x33, 0xc2, 0x44, - 0xdf, 0x9b, 0x27, 0x6b, 0xb8, 0xb6, 0x99, 0xe0, 0x6e, 0x26, 0xb7, 0x6c, 0x36, 0xb8, 0xf4, 0xac, - 0xaa, 0x67, 0x3d, 0x66, 0x9b, 0xf2, 0xea, 0xce, 0x6f, 0x94, 0x12, 0xd1, 0x29, 0xbf, 0x2e, 0x4f, - 0x44, 0x1f, 0xa2, 0x1b, 0x00, 0x37, 0xff, 0xf5, 0x92, 0x4c, 0xf2, 0xa1, 0x11, 0xf9, 0x14, 0x46, - 0x25, 0x71, 0x6f, 0x81, 0x24, 0xa9, 0x51, 0x20, 0x4b, 0x30, 0x61, 0xbc, 0xa2, 0x52, 0xa7, 0x9b, - 0xac, 0xb7, 0x55, 0x5d, 0xfa, 0x79, 0xc2, 0x78, 0x2d, 0xa5, 0xb8, 0x64, 0xbd, 0xa1, 0xca, 0xe5, - 0xf2, 0x43, 0x18, 0x13, 0x22, 0xed, 0x2a, 0x8d, 0x7c, 0x7b, 0xdb, 0x8c, 0xe6, 0x91, 0xdc, 0x69, - 0xba, 0xd1, 0xa2, 0xef, 0x3d, 0x76, 0x0f, 0x7a, 0x0a, 0x26, 0x4d, 0xb2, 0x37, 0x4f, 0xbe, 0xc2, - 0xa4, 0xc8, 0x32, 0x55, 0x35, 0x8d, 0x9e, 0xf9, 0xc1, 0x13, 0xd7, 0x3b, 0xe8, 0xc1, 0xf2, 0x9a, - 0xc9, 0x32, 0x49, 0x27, 0x7d, 0x47, 0xbe, 0x82, 0xb9, 0x5a, 0x3e, 0xf3, 0x9e, 0x4c, 0xba, 0x6f, - 0x2f, 0x35, 0xb8, 0x8c, 0xde, 0x33, 0x67, 0x6d, 0x7b, 0x57, 0xa6, 0x5f, 0xf0, 0x48, 0x8a, 0xd2, - 0x56, 0xdf, 0xf0, 0x83, 0x66, 0x6f, 0x8e, 0x15, 0xd3, 0x91, 0x36, 0x41, 0x26, 0x85, 0xf1, 0x05, - 0x5c, 0xac, 0xe5, 0xb2, 0xee, 0xc5, 0xa2, 0x97, 0x26, 0x79, 0x09, 0x45, 0x71, 0xc6, 0x76, 0x77, - 0xe5, 0xb9, 0x86, 0x6b, 0x1a, 0xdb, 0x87, 0xb6, 0x03, 0xfa, 0x98, 0x06, 0xe8, 0xae, 0xdd, 0xcb, - 0x51, 0xd9, 0x44, 0x97, 0x5f, 0xbe, 0x06, 0xe7, 0x6b, 0x29, 0x56, 0x79, 0x24, 0xbd, 0xee, 0x7f, - 0xa6, 0xf0, 0x4b, 0x4f, 0xd9, 0xae, 0x1e, 0x5e, 0x42, 0x63, 0x2b, 0x34, 0xda, 0x5d, 0xeb, 0x21, - 0x25, 0xf9, 0x9e, 0x40, 0x22, 0xee, 0xdd, 0x63, 0x94, 0x35, 0x8d, 0x32, 0x8d, 0x91, 0x3b, 0x79, - 0x3f, 0x95, 0x77, 0x21, 0x3d, 0xab, 0xcd, 0xe3, 0xf0, 0x16, 0xae, 0x85, 0xc2, 0x65, 0x79, 0x36, - 0x56, 0x01, 0x38, 0x24, 0x36, 0xd5, 0x69, 0xde, 0xcb, 0x21, 0xa9, 0xf2, 0xe3, 0x1f, 0x1f, 0x1e, - 0x02, 0x76, 0x35, 0xe5, 0xca, 0xde, 0x95, 0x05, 0xb7, 0x82, 0xae, 0xfb, 0x8d, 0x27, 0xba, 0x15, - 0x54, 0x4b, 0x9b, 0x3f, 0x67, 0x26, 0xb5, 0x17, 0x2b, 0x3e, 0x66, 0xb6, 0xd7, 0x1d, 0xbf, 0xf4, - 0xc4, 0xf9, 0x73, 0xb3, 0x29, 0xb8, 0xb0, 0x20, 0xbd, 0x25, 0x6d, 0x8b, 0x58, 0xa1, 0xc9, 0x39, - 0x57, 0x34, 0xca, 0xac, 0x88, 0x44, 0xa6, 0x59, 0x51, 0x6f, 0x68, 0xbe, 0x2d, 0x9f, 0xa4, 0x73, - 0xfc, 0xab, 0xc3, 0x4a, 0x6e, 0xfa, 0xff, 0x2e, 0xfe, 0x5b, 0x53, 0xc2, 0xeb, 0xc7, 0x10, 0xbc, - 0x8a, 0x46, 0x9c, 0x2e, 0x8b, 0x45, 0xa9, 0x3b, 0x23, 0xdd, 0x2d, 0x90, 0x4d, 0xb8, 0xb0, 0x42, - 0x23, 0xb1, 0xc6, 0xd9, 0x34, 0x8c, 0x02, 0xb7, 0x11, 0x75, 0xbd, 0x18, 0x94, 0x67, 0x93, 0x0c, - 0x9a, 0xbd, 0xb7, 0x19, 0xbf, 0x5a, 0x36, 0xbf, 0xae, 0x74, 0x5d, 0x5c, 0x64, 0xc5, 0x6d, 0xc3, - 0x59, 0x9a, 0x98, 0x3f, 0xc4, 0x87, 0xb9, 0x07, 0x4e, 0x3e, 0x69, 0x29, 0x8e, 0x7c, 0x22, 0x4e, - 0x5b, 0xb7, 0x61, 0x88, 0x13, 0xe5, 0x6e, 0xa8, 0xe3, 0x3a, 0x0d, 0xb9, 0x07, 0xa3, 0xca, 0x85, - 0x86, 0x18, 0x45, 0xb9, 0xed, 0xba, 0x07, 0xa3, 0xfc, 0x68, 0x75, 0x7a, 0x92, 0x0f, 0x61, 0x54, - 0xf9, 0xdc, 0x9c, 0x79, 0xa7, 0xff, 0x04, 0x26, 0x74, 0xef, 0x9b, 0xb3, 0x0b, 0xf2, 0x87, 0x78, - 0x7d, 0x2b, 0x6f, 0x49, 0xf2, 0xe9, 0x67, 0x12, 0x01, 0x61, 0x84, 0x48, 0xf9, 0x02, 0x29, 0x81, - 0xb9, 0xcd, 0x3f, 0x9f, 0xa2, 0x26, 0x1f, 0xca, 0x97, 0x4c, 0x8a, 0x38, 0x8d, 0xd4, 0x45, 0x66, - 0x93, 0x5c, 0xcc, 0x2f, 0x42, 0xac, 0x16, 0xd8, 0x9e, 0xcd, 0x3e, 0xcd, 0x35, 0x73, 0x6f, 0xd1, - 0xe5, 0x71, 0xd9, 0x42, 0x2d, 0x2d, 0x95, 0x88, 0x2e, 0x9f, 0xd1, 0xd5, 0xfc, 0xdc, 0x75, 0xd8, - 0x19, 0x0f, 0xf0, 0x14, 0x98, 0x2a, 0xcd, 0xfd, 0xbc, 0x2e, 0xb9, 0xf0, 0xe2, 0x63, 0x6f, 0x9a, - 0x5d, 0x17, 0xb2, 0x6e, 0xa7, 0x68, 0xf1, 0x3e, 0xf3, 0xa5, 0xb0, 0x5b, 0x93, 0x4e, 0x8c, 0xa7, - 0xff, 0xd8, 0xfc, 0x96, 0x5d, 0xca, 0xb8, 0xd8, 0xee, 0xd9, 0x17, 0x79, 0xec, 0x7e, 0x05, 0xb5, - 0xc3, 0xcc, 0x88, 0x60, 0xf9, 0xcc, 0x6e, 0x6a, 0xbe, 0x11, 0x99, 0x94, 0x6a, 0xd3, 0x7b, 0x82, - 0x4f, 0xc4, 0xb2, 0x53, 0xf5, 0xbd, 0xd6, 0x83, 0x8b, 0x94, 0xc4, 0xeb, 0x3d, 0xf1, 0xd4, 0x35, - 0xe9, 0x25, 0xbe, 0xc3, 0x66, 0xd7, 0xd7, 0x23, 0xf5, 0x60, 0xc6, 0xcd, 0xb5, 0xf2, 0x10, 0xcd, - 0x66, 0x68, 0x7a, 0x88, 0x76, 0xfd, 0x86, 0x3c, 0xf1, 0x7f, 0x06, 0x95, 0xd8, 0x01, 0xe4, 0x6c, - 0x9d, 0x90, 0xef, 0x98, 0x48, 0x52, 0x92, 0x0a, 0x49, 0xb7, 0x5c, 0x3c, 0x73, 0xd7, 0xf3, 0x24, - 0xac, 0x3f, 0x83, 0x11, 0x8e, 0x6d, 0x89, 0xa4, 0x95, 0x79, 0xe9, 0x2f, 0xbb, 0xd8, 0x61, 0xc5, - 0x9b, 0xb9, 0x97, 0xc2, 0x28, 0xdd, 0xdb, 0x67, 0x67, 0xa4, 0xfc, 0x33, 0x12, 0x8c, 0xac, 0x2e, - 0xdd, 0xdb, 0xfb, 0xea, 0xb1, 0x9c, 0xd3, 0xaf, 0x67, 0xef, 0x50, 0x27, 0x7e, 0x27, 0x96, 0x08, - 0x20, 0xa8, 0xbf, 0xcd, 0x4d, 0x17, 0x25, 0x1f, 0x39, 0x65, 0x61, 0x28, 0xa7, 0xa8, 0xb2, 0xac, - 0x82, 0xc1, 0xd9, 0x51, 0xc4, 0x0f, 0xdc, 0xe8, 0xf9, 0xa2, 0xbd, 0x1e, 0x9b, 0x15, 0xf4, 0x02, - 0xc9, 0x1b, 0x64, 0xa1, 0xbd, 0x4e, 0xbe, 0xc4, 0xa5, 0x44, 0xb0, 0x5f, 0xf0, 0xfd, 0x28, 0x8c, - 0x02, 0xa7, 0x5d, 0x6b, 0x04, 0x6e, 0x3b, 0xca, 0xfd, 0xe8, 0xd8, 0x87, 0x3b, 0x8b, 0x4c, 0x73, - 0x29, 0x15, 0x01, 0xe6, 0xb3, 0x22, 0xdf, 0xa8, 0x67, 0x35, 0x59, 0x85, 0x5d, 0x4e, 0x2e, 0x35, - 0x19, 0x52, 0xfe, 0x65, 0x32, 0xad, 0xc3, 0x6c, 0x4e, 0xbc, 0x20, 0x75, 0x7b, 0xdb, 0x3d, 0x9e, - 0xd0, 0x5c, 0xf7, 0x8a, 0xc9, 0x57, 0x30, 0x93, 0x19, 0x50, 0x48, 0x59, 0xa0, 0xbb, 0x85, 0x1b, - 0xea, 0xc5, 0xfc, 0x09, 0x94, 0xf9, 0x83, 0x0e, 0xf4, 0x5b, 0x36, 0x62, 0xcb, 0xc4, 0xcf, 0x7c, - 0x72, 0x10, 0x92, 0xeb, 0x75, 0x3e, 0x9e, 0x7a, 0x6c, 0x3e, 0x8d, 0x41, 0x45, 0x12, 0xe9, 0xd6, - 0xd5, 0xc4, 0xcb, 0x2a, 0xec, 0xf6, 0x96, 0x68, 0x1b, 0x66, 0xf6, 0x68, 0xe0, 0x3e, 0x7e, 0x9e, - 0x64, 0x28, 0x25, 0x93, 0x59, 0xda, 0x8d, 0xe3, 0xe7, 0x30, 0xbb, 0xe8, 0x1f, 0xb5, 0xc5, 0xab, - 0x3d, 0x83, 0xa7, 0xba, 0x8a, 0xcf, 0x2e, 0xef, 0xed, 0xcb, 0x34, 0x97, 0x9f, 0x18, 0x5f, 0xb9, - 0xb0, 0xf5, 0xcc, 0x9d, 0xaf, 0xde, 0x9e, 0x99, 0xf4, 0x3b, 0x38, 0x08, 0xb3, 0x32, 0xe5, 0xeb, - 0x83, 0xb0, 0x4b, 0x26, 0xfd, 0x9c, 0x37, 0x60, 0xb3, 0x39, 0xc9, 0xf1, 0xbb, 0x70, 0x3d, 0x45, - 0x6b, 0x37, 0xe5, 0xde, 0x62, 0xe6, 0xfa, 0x4e, 0x38, 0x4d, 0x67, 0x26, 0x02, 0xcf, 0x6c, 0xa7, - 0x16, 0x55, 0xa1, 0xd5, 0xea, 0xa2, 0x62, 0x11, 0x3d, 0xac, 0x02, 0xc3, 0x44, 0x23, 0xfe, 0x84, - 0x4e, 0xdb, 0x6d, 0xb5, 0x4e, 0x11, 0xa3, 0x52, 0xfb, 0x01, 0x8c, 0xd7, 0xf4, 0xca, 0x33, 0x2a, - 0xc9, 0x1d, 0x14, 0xea, 0x15, 0x50, 0xef, 0xb6, 0x77, 0xf1, 0x05, 0x55, 0x1b, 0xcf, 0xa9, 0xbe, - 0x22, 0xd7, 0x75, 0xc6, 0x48, 0xdc, 0xa6, 0x76, 0x81, 0xac, 0xbc, 0x8a, 0xca, 0x75, 0x26, 0x3b, - 0xd7, 0x5b, 0x9d, 0xa7, 0x9a, 0x49, 0xa6, 0xcd, 0x24, 0x56, 0xef, 0xfc, 0xb4, 0xca, 0x27, 0xbe, - 0x6b, 0xde, 0x4d, 0xee, 0xe7, 0x13, 0xa7, 0xaa, 0xd3, 0xfd, 0x7c, 0x52, 0x09, 0xf0, 0x74, 0x3f, - 0x9f, 0x8c, 0xec, 0x76, 0xcb, 0xc8, 0x2b, 0xce, 0xd1, 0xd3, 0xc5, 0x18, 0xa1, 0xd8, 0x64, 0xa4, - 0x02, 0x7a, 0xa8, 0x07, 0xe7, 0xe0, 0x99, 0x7d, 0xba, 0xd8, 0x5a, 0x93, 0x41, 0x39, 0x12, 0xa9, - 0x80, 0xee, 0x43, 0x89, 0x27, 0x39, 0x88, 0xe3, 0x19, 0xc6, 0xae, 0x7f, 0xe9, 0xdc, 0x0b, 0x5d, - 0x3a, 0xb5, 0x94, 0x8c, 0x04, 0xa7, 0x4c, 0x66, 0x39, 0x21, 0xe2, 0xba, 0x0c, 0x55, 0x88, 0xe3, - 0xbd, 0x29, 0xc3, 0x54, 0x2a, 0x04, 0xdc, 0xdc, 0xc5, 0x8c, 0x12, 0xa5, 0x52, 0x8e, 0xeb, 0xd1, - 0xe1, 0xd4, 0x27, 0x65, 0x84, 0x8c, 0x9b, 0xbb, 0x94, 0x59, 0x26, 0x18, 0x45, 0x3c, 0x45, 0x73, - 0x76, 0x62, 0xe9, 0xf8, 0x21, 0x57, 0x17, 0x1c, 0x59, 0xcd, 0xad, 0xd3, 0xa0, 0x8a, 0x5a, 0xa9, - 0xca, 0x50, 0x94, 0x91, 0xcd, 0xfa, 0xf5, 0x8c, 0xb7, 0x16, 0x06, 0x46, 0xec, 0x0d, 0xd6, 0x3d, - 0xb5, 0x36, 0x79, 0x24, 0x33, 0xc6, 0xe4, 0xd4, 0xd4, 0x8b, 0x41, 0x6e, 0x0f, 0x3e, 0x92, 0x39, - 0x62, 0x5e, 0x36, 0xe3, 0x7d, 0xb8, 0x9c, 0x78, 0xc0, 0x61, 0x32, 0xbe, 0x95, 0xfd, 0xca, 0x23, - 0x53, 0x3c, 0xf9, 0x3a, 0xfb, 0xb5, 0xf4, 0x43, 0x8f, 0x44, 0xbf, 0x9f, 0x75, 0xcd, 0xdb, 0x80, - 0x49, 0x5c, 0x66, 0x64, 0x5e, 0xf6, 0x38, 0x36, 0x8c, 0x09, 0x4e, 0x06, 0x29, 0x4a, 0x96, 0xaa, - 0xf7, 0xe3, 0xe3, 0xe2, 0x51, 0x30, 0xcf, 0xf2, 0x3e, 0x67, 0xbe, 0x14, 0x46, 0x60, 0xd6, 0x2e, - 0x26, 0x92, 0xc7, 0x93, 0x1f, 0xc2, 0xb9, 0xf8, 0xad, 0x30, 0x67, 0x91, 0x81, 0xd6, 0xc5, 0x50, - 0x76, 0x2e, 0x7e, 0x30, 0x7c, 0x76, 0xf2, 0x55, 0xb9, 0x15, 0xc5, 0xe4, 0x57, 0x52, 0xcf, 0x5d, - 0x8c, 0x6f, 0x38, 0xcd, 0x8e, 0xa4, 0xc9, 0xf6, 0xac, 0xbd, 0xd3, 0xc0, 0xe9, 0x96, 0x1d, 0xf6, - 0x50, 0x9f, 0x6e, 0x5d, 0x43, 0x33, 0x2a, 0xf5, 0x37, 0x87, 0xcf, 0x06, 0xdc, 0xc0, 0x50, 0x29, - 0xdb, 0x3c, 0x38, 0x5e, 0x36, 0x56, 0x7e, 0xdb, 0x93, 0x01, 0x56, 0x5a, 0x70, 0xbd, 0x67, 0xdc, - 0x47, 0x72, 0xc7, 0x70, 0x71, 0xe9, 0x1d, 0x21, 0xb2, 0xcb, 0xc9, 0x63, 0x3a, 0x2b, 0x7c, 0xa2, - 0xda, 0x67, 0xbb, 0x44, 0x72, 0x54, 0xfb, 0x6c, 0xd7, 0xf8, 0x8b, 0x9f, 0x63, 0x1a, 0x26, 0xb1, - 0x47, 0x61, 0xf8, 0x23, 0xea, 0xf1, 0x80, 0xd0, 0x5d, 0xaf, 0x7d, 0xae, 0x9b, 0x97, 0xa2, 0x29, - 0x42, 0x3c, 0xd3, 0x5c, 0x15, 0x27, 0xb1, 0x3c, 0xe6, 0xbd, 0x99, 0x74, 0x71, 0xad, 0xbe, 0xca, - 0x07, 0xe0, 0x99, 0x5b, 0x9e, 0x03, 0x5f, 0x58, 0xfa, 0xd9, 0x7f, 0xb8, 0x5a, 0xf8, 0xd9, 0xcf, - 0xaf, 0x16, 0xfe, 0xf5, 0xcf, 0xaf, 0x16, 0xfe, 0xfd, 0xcf, 0xaf, 0x16, 0xbe, 0x9c, 0x3f, 0x5d, - 0x58, 0xe2, 0x46, 0xcb, 0xa5, 0x5e, 0x74, 0x87, 0xb3, 0x1b, 0xc2, 0xff, 0xde, 0xfa, 0xef, 0x01, - 0x00, 0x00, 0xff, 0xff, 0x61, 0x3e, 0x6a, 0x54, 0x91, 0xea, 0x00, 0x00, + 0xde, 0xac, 0xea, 0x1a, 0x3d, 0xe9, 0x41, 0xd2, 0x5b, 0x04, 0x3c, 0xbc, 0xf7, 0x24, 0xe0, 0x3d, + 0x41, 0xef, 0xf9, 0x43, 0x36, 0x60, 0x03, 0x86, 0x01, 0x03, 0xfe, 0x31, 0xf4, 0x63, 0xc1, 0xf0, + 0x97, 0xc7, 0x02, 0x0c, 0xdb, 0x90, 0xf4, 0x63, 0xc0, 0x94, 0x3d, 0x80, 0x7e, 0x08, 0xfb, 0x43, + 0x30, 0x6c, 0xc0, 0x03, 0x08, 0x30, 0xe2, 0xc4, 0x72, 0x23, 0xee, 0x92, 0x49, 0x56, 0x57, 0x8f, + 0xfc, 0x53, 0xc5, 0x3c, 0x71, 0xce, 0x89, 0xb8, 0x27, 0xb6, 0x13, 0x27, 0x4e, 0x9c, 0x03, 0xb7, + 0x23, 0xda, 0xa2, 0x6d, 0x3f, 0x88, 0xee, 0xb4, 0xe8, 0x81, 0xd3, 0x78, 0x7e, 0xa7, 0xd1, 0x72, + 0xa9, 0x17, 0xdd, 0x69, 0x07, 0x7e, 0xe4, 0xdf, 0x71, 0x3a, 0xd1, 0x61, 0x48, 0x83, 0xa7, 0x6e, + 0x83, 0xde, 0x46, 0x08, 0x19, 0xc4, 0xff, 0xe6, 0xa6, 0x0f, 0xfc, 0x03, 0x9f, 0xe3, 0xb0, 0xbf, + 0x78, 0xe1, 0xdc, 0xa5, 0x03, 0xdf, 0x3f, 0x68, 0x51, 0x4e, 0xbc, 0xdf, 0x79, 0x7c, 0x87, 0x1e, + 0xb5, 0xa3, 0xe7, 0xa2, 0xb0, 0x92, 0x2c, 0x8c, 0xdc, 0x23, 0x1a, 0x46, 0xce, 0x51, 0x5b, 0x20, + 0xbc, 0xa1, 0x9a, 0xe2, 0x44, 0x11, 0x2b, 0x89, 0x5c, 0xdf, 0xbb, 0xf3, 0xf4, 0x9e, 0xfe, 0x53, + 0xa0, 0xde, 0xec, 0xda, 0xea, 0x06, 0x0d, 0xa2, 0xf0, 0x54, 0x98, 0xf4, 0x29, 0xf5, 0xa2, 0x54, + 0xf5, 0x02, 0x33, 0x7a, 0xde, 0xa6, 0x21, 0x47, 0x91, 0xff, 0x09, 0xd4, 0xeb, 0xd9, 0xa8, 0xf8, + 0xaf, 0x40, 0xf9, 0x7e, 0x36, 0xca, 0x33, 0xba, 0xcf, 0x64, 0xea, 0xa9, 0x3f, 0x7a, 0xa0, 0x07, + 0x4e, 0xbb, 0x4d, 0x83, 0xf8, 0x0f, 0x81, 0x7e, 0x51, 0xa1, 0x1f, 0x3d, 0x76, 0x98, 0x88, 0x8e, + 0x1e, 0x3b, 0xa9, 0xcf, 0xe8, 0x84, 0xce, 0x01, 0x15, 0xcd, 0x7f, 0x7a, 0x4f, 0xff, 0xc9, 0x51, + 0xad, 0x3f, 0x2c, 0xc0, 0xe0, 0x23, 0x27, 0x6a, 0x1c, 0x92, 0x4f, 0x60, 0xf0, 0xa1, 0xeb, 0x35, + 0xc3, 0x72, 0xe1, 0x5a, 0xff, 0xcd, 0xb1, 0xf9, 0xd2, 0x6d, 0xfe, 0x29, 0x58, 0xc8, 0x0a, 0x16, + 0x66, 0x7f, 0x76, 0x5c, 0xe9, 0x3b, 0x39, 0xae, 0x9c, 0x7b, 0xc2, 0xd0, 0xde, 0xf4, 0x8f, 0xdc, + 0x08, 0xfb, 0xd6, 0xe6, 0x74, 0x64, 0x17, 0xa6, 0xaa, 0xad, 0x96, 0xff, 0x6c, 0xdb, 0x09, 0x22, + 0xd7, 0x69, 0xd5, 0x3a, 0x8d, 0x06, 0x0d, 0xc3, 0x72, 0xf1, 0x5a, 0xe1, 0xe6, 0xc8, 0xc2, 0x8d, + 0x93, 0xe3, 0x4a, 0xc5, 0x61, 0xc5, 0xf5, 0x36, 0x2f, 0xaf, 0x87, 0x1c, 0x41, 0x63, 0x94, 0x45, + 0x6f, 0xfd, 0xc9, 0x10, 0x94, 0x56, 0xfd, 0x30, 0x5a, 0x64, 0x3d, 0x6a, 0xd3, 0x9f, 0x74, 0x68, + 0x18, 0x91, 0x1b, 0x30, 0xc4, 0x60, 0x6b, 0x4b, 0xe5, 0xc2, 0xb5, 0xc2, 0xcd, 0xd1, 0x85, 0xb1, + 0x93, 0xe3, 0xca, 0xf0, 0xa1, 0x1f, 0x46, 0x75, 0xb7, 0x69, 0x8b, 0x22, 0xf2, 0x06, 0x8c, 0x6c, + 0xfa, 0x4d, 0xba, 0xe9, 0x1c, 0x51, 0x6c, 0xc5, 0xe8, 0xc2, 0xc4, 0xc9, 0x71, 0x65, 0xd4, 0xf3, + 0x9b, 0xb4, 0xee, 0x39, 0x47, 0xd4, 0x56, 0xc5, 0x64, 0x0f, 0x06, 0x6c, 0xbf, 0x45, 0xcb, 0xfd, + 0x88, 0xb6, 0x70, 0x72, 0x5c, 0x19, 0x08, 0xfc, 0x16, 0xfd, 0xc5, 0x71, 0xe5, 0xdd, 0x03, 0x37, + 0x3a, 0xec, 0xec, 0xdf, 0x6e, 0xf8, 0x47, 0x77, 0x0e, 0x02, 0xe7, 0xa9, 0xcb, 0x07, 0xa1, 0xd3, + 0xba, 0x13, 0x0f, 0xd5, 0xb6, 0x2b, 0xfa, 0xbd, 0xf6, 0x3c, 0x8c, 0xe8, 0x11, 0xe3, 0x64, 0x23, + 0x3f, 0xf2, 0x08, 0xa6, 0xab, 0xcd, 0xa6, 0xcb, 0x29, 0xb6, 0x03, 0xd7, 0x6b, 0xb8, 0x6d, 0xa7, + 0x15, 0x96, 0x07, 0xae, 0xf5, 0xdf, 0x1c, 0x15, 0x42, 0x51, 0xe5, 0xf5, 0xb6, 0x42, 0xd0, 0x84, + 0x92, 0xc9, 0x80, 0xbc, 0x05, 0x23, 0x4b, 0x9b, 0x35, 0xd6, 0xf6, 0xb0, 0x3c, 0x88, 0xcc, 0x66, + 0x4f, 0x8e, 0x2b, 0x53, 0x4d, 0x2f, 0xc4, 0x4f, 0xd3, 0x19, 0x28, 0x44, 0xf2, 0x2e, 0x8c, 0x6f, + 0x77, 0xf6, 0x5b, 0x6e, 0x63, 0x67, 0xbd, 0xf6, 0x90, 0x3e, 0x2f, 0x0f, 0x5d, 0x2b, 0xdc, 0x1c, + 0x5f, 0x20, 0x27, 0xc7, 0x95, 0xc9, 0x36, 0xc2, 0xeb, 0x51, 0x2b, 0xac, 0x3f, 0xa1, 0xcf, 0x6d, + 0x03, 0x2f, 0xa6, 0xab, 0xd5, 0x56, 0x19, 0xdd, 0x70, 0x8a, 0x2e, 0x0c, 0x0f, 0x75, 0x3a, 0x8e, + 0x47, 0xee, 0x00, 0xd8, 0xf4, 0xc8, 0x8f, 0x68, 0xb5, 0xd9, 0x0c, 0xca, 0x23, 0x28, 0xdb, 0x73, + 0x27, 0xc7, 0x95, 0xb1, 0x00, 0xa1, 0x75, 0xa7, 0xd9, 0x0c, 0x6c, 0x0d, 0x85, 0x2c, 0xc2, 0x88, + 0xed, 0x73, 0x01, 0x97, 0x47, 0xaf, 0x15, 0x6e, 0x8e, 0xcd, 0x9f, 0x13, 0xc3, 0x50, 0x82, 0x17, + 0x2e, 0x9c, 0x1c, 0x57, 0x48, 0x20, 0x7e, 0xe9, 0x5f, 0x29, 0x31, 0x48, 0x05, 0x86, 0x37, 0xfd, + 0x45, 0xa7, 0x71, 0x48, 0xcb, 0x80, 0x63, 0x6f, 0xf0, 0xe4, 0xb8, 0x52, 0xf8, 0xbe, 0x2d, 0xa1, + 0xe4, 0x29, 0x8c, 0xc5, 0x1d, 0x15, 0x96, 0xc7, 0x50, 0x7c, 0x3b, 0x27, 0xc7, 0x95, 0x0b, 0x21, + 0x82, 0xeb, 0xac, 0xeb, 0x35, 0x09, 0x7e, 0x8b, 0x51, 0xa0, 0x57, 0x44, 0xbe, 0x86, 0x99, 0xf8, + 0x67, 0x35, 0x0c, 0x69, 0xc0, 0x78, 0xac, 0x2d, 0x95, 0x27, 0x50, 0x32, 0xaf, 0x9d, 0x1c, 0x57, + 0x2c, 0xad, 0x05, 0x75, 0x47, 0xa2, 0xd4, 0xdd, 0xa6, 0xf6, 0xa5, 0xd9, 0x4c, 0x1e, 0x0c, 0x8c, + 0x8c, 0x97, 0x26, 0xec, 0x2b, 0xbb, 0x5e, 0x18, 0x39, 0xfb, 0x2d, 0x9a, 0x89, 0x64, 0xfd, 0x75, + 0x01, 0xc8, 0x56, 0x9b, 0x7a, 0xb5, 0xda, 0x2a, 0x9b, 0x4f, 0x72, 0x3a, 0xbd, 0x09, 0xa3, 0xbc, + 0xe3, 0x58, 0xef, 0x16, 0xb1, 0x77, 0x27, 0x4f, 0x8e, 0x2b, 0x20, 0x7a, 0x97, 0xf5, 0x6c, 0x8c, + 0x40, 0x5e, 0x85, 0xfe, 0x9d, 0x9d, 0x75, 0x9c, 0x2b, 0xfd, 0x0b, 0x53, 0x27, 0xc7, 0x95, 0xfe, + 0x28, 0x6a, 0xfd, 0xe2, 0xb8, 0x32, 0xb2, 0xd4, 0x09, 0x50, 0x2c, 0x36, 0x2b, 0x27, 0xaf, 0xc2, + 0xf0, 0x62, 0xab, 0x13, 0x46, 0x34, 0x28, 0x0f, 0xc4, 0x93, 0xb4, 0xc1, 0x41, 0xb6, 0x2c, 0x23, + 0xdf, 0x83, 0x81, 0xdd, 0x90, 0x06, 0xe5, 0x41, 0xec, 0xef, 0x09, 0xd1, 0xdf, 0x0c, 0xb4, 0x37, + 0xbf, 0x30, 0xc2, 0x66, 0x62, 0x27, 0xa4, 0x81, 0x8d, 0x48, 0xe4, 0x36, 0x0c, 0xf2, 0x4e, 0x1b, + 0xc2, 0x45, 0x6a, 0x42, 0x8d, 0x8e, 0x16, 0xdd, 0x7b, 0x77, 0x61, 0xf4, 0xe4, 0xb8, 0x32, 0x88, + 0x9d, 0x67, 0x73, 0xb4, 0x07, 0x03, 0x23, 0x85, 0x52, 0xd1, 0x1e, 0x61, 0xb4, 0x6c, 0x5a, 0x58, + 0xdf, 0x83, 0x31, 0xed, 0xf3, 0xc9, 0x65, 0x18, 0x60, 0xff, 0xe3, 0x22, 0x32, 0xce, 0x2b, 0x63, + 0x1b, 0x87, 0x8d, 0x50, 0xeb, 0x6f, 0x4f, 0x41, 0x89, 0x51, 0x1a, 0x2b, 0xcf, 0x6d, 0x5d, 0x54, + 0x9c, 0xae, 0x64, 0x8a, 0xaa, 0x5c, 0xd0, 0x85, 0x75, 0x13, 0x54, 0xed, 0x62, 0x11, 0x1a, 0x3f, + 0x39, 0xae, 0x8c, 0x74, 0x04, 0x2c, 0x6e, 0x1b, 0xa9, 0xc1, 0xf0, 0xf2, 0x37, 0x6d, 0x37, 0xa0, + 0x21, 0x8a, 0x76, 0x6c, 0x7e, 0xee, 0x36, 0xdf, 0x2e, 0x6f, 0xcb, 0xed, 0xf2, 0xf6, 0x8e, 0xdc, + 0x2e, 0x17, 0xae, 0x88, 0xc5, 0xf8, 0x3c, 0xe5, 0x24, 0xf1, 0xf8, 0xf8, 0xdd, 0xbf, 0xa8, 0x14, + 0x6c, 0xc9, 0x89, 0xbc, 0x09, 0x43, 0xf7, 0xfd, 0xe0, 0xc8, 0x89, 0x44, 0x1f, 0x4c, 0x9f, 0x1c, + 0x57, 0x4a, 0x8f, 0x11, 0xa2, 0x0d, 0x29, 0x81, 0x43, 0xee, 0xc3, 0xa4, 0xed, 0x77, 0x22, 0xba, + 0xe3, 0xcb, 0x9e, 0x1b, 0x44, 0xaa, 0xab, 0x27, 0xc7, 0x95, 0xb9, 0x80, 0x95, 0xd4, 0x23, 0xbf, + 0x2e, 0xba, 0x50, 0xa3, 0x4f, 0x50, 0x91, 0x65, 0x98, 0xac, 0xe2, 0xea, 0x2d, 0xa4, 0xc6, 0xfb, + 0x6b, 0x74, 0xe1, 0xca, 0xc9, 0x71, 0xe5, 0xa2, 0x83, 0x25, 0xf5, 0x40, 0x14, 0xe9, 0x6c, 0x4c, + 0x22, 0xb2, 0x09, 0xe7, 0x1f, 0x76, 0xf6, 0x69, 0xe0, 0xd1, 0x88, 0x86, 0xb2, 0x45, 0xc3, 0xd8, + 0xa2, 0x6b, 0x27, 0xc7, 0x95, 0xcb, 0x4f, 0x54, 0x61, 0x46, 0x9b, 0xd2, 0xa4, 0x84, 0xc2, 0x39, + 0xd1, 0xd0, 0x25, 0x27, 0x72, 0xf6, 0x9d, 0x90, 0xe2, 0xa2, 0x34, 0x36, 0x7f, 0x81, 0x8b, 0xf8, + 0x76, 0xa2, 0x74, 0xe1, 0x86, 0x90, 0xf2, 0x25, 0xf5, 0xed, 0x4d, 0x51, 0xa4, 0x55, 0x94, 0xe4, + 0xc9, 0xd6, 0x66, 0xb5, 0xef, 0x8c, 0x62, 0x6b, 0x71, 0x6d, 0x56, 0xfb, 0x8e, 0xbe, 0x6a, 0xa9, + 0x1d, 0x68, 0x1d, 0x06, 0x77, 0xd9, 0xee, 0x8c, 0x6b, 0xd6, 0xe4, 0xfc, 0x75, 0xd1, 0xa2, 0xe4, + 0xf8, 0xbb, 0xcd, 0x7e, 0x20, 0x22, 0xce, 0xbc, 0x73, 0xb8, 0xa3, 0xeb, 0x7b, 0x31, 0x96, 0x91, + 0xcf, 0x00, 0x44, 0xab, 0xaa, 0xed, 0x76, 0x79, 0x0c, 0x3f, 0xf2, 0xbc, 0xf9, 0x91, 0xd5, 0x76, + 0x7b, 0xe1, 0xaa, 0xf8, 0xbe, 0x0b, 0xea, 0xfb, 0x9c, 0x76, 0x5b, 0xe3, 0xa6, 0x31, 0x21, 0x9f, + 0xc0, 0x38, 0x2e, 0x69, 0xb2, 0x47, 0xc7, 0xb1, 0x47, 0x2f, 0x9d, 0x1c, 0x57, 0x66, 0x71, 0xb5, + 0xca, 0xe8, 0x4f, 0x83, 0x80, 0xfc, 0x06, 0xcc, 0x08, 0x76, 0x8f, 0x5c, 0xaf, 0xe9, 0x3f, 0x0b, + 0x97, 0x68, 0xf8, 0x24, 0xf2, 0xdb, 0xb8, 0xfc, 0x8d, 0xcd, 0x5f, 0x36, 0x9b, 0x67, 0xe2, 0x2c, + 0xdc, 0x12, 0x2d, 0xb5, 0x54, 0x4b, 0x9f, 0x71, 0x84, 0x7a, 0x93, 0x63, 0xe8, 0x0b, 0x64, 0x26, + 0x0b, 0xb2, 0x06, 0xe7, 0x76, 0x43, 0x6a, 0x7c, 0xc3, 0x24, 0xee, 0x0f, 0x15, 0xd6, 0xc3, 0x9d, + 0x90, 0xd6, 0xf3, 0xbe, 0x23, 0x49, 0x47, 0x6c, 0x20, 0x4b, 0x81, 0xdf, 0x4e, 0x8c, 0xf1, 0x73, + 0x28, 0x11, 0xeb, 0xe4, 0xb8, 0x72, 0xb5, 0x19, 0xf8, 0xed, 0x7a, 0xfe, 0x40, 0xcf, 0xa0, 0x26, + 0x3f, 0x82, 0x0b, 0x8b, 0xbe, 0xe7, 0xd1, 0x06, 0x5b, 0x41, 0x97, 0x5c, 0xe7, 0xc0, 0xf3, 0xc3, + 0xc8, 0x6d, 0xac, 0x2d, 0x95, 0x4b, 0xf1, 0xf6, 0xd0, 0x50, 0x18, 0xf5, 0xa6, 0x42, 0x31, 0xb7, + 0x87, 0x1c, 0x2e, 0xe4, 0x2b, 0x98, 0x10, 0x75, 0xd1, 0x00, 0x87, 0xe6, 0xf9, 0xee, 0x03, 0x4d, + 0x21, 0xf3, 0x8d, 0x3e, 0x90, 0x3f, 0xb9, 0xea, 0x64, 0xf2, 0x22, 0x5f, 0xc3, 0xd8, 0xc6, 0xfd, + 0xaa, 0x4d, 0xc3, 0xb6, 0xef, 0x85, 0xb4, 0x4c, 0xb0, 0x47, 0xaf, 0x0a, 0xd6, 0x1b, 0xf7, 0xab, + 0xd5, 0x4e, 0x74, 0x48, 0xbd, 0xc8, 0x6d, 0x38, 0x11, 0x95, 0x58, 0x0b, 0x73, 0x6c, 0xe4, 0x1d, + 0x3d, 0x76, 0xea, 0x81, 0x80, 0x68, 0x5f, 0xa1, 0xb3, 0x23, 0x73, 0x30, 0x52, 0xab, 0xad, 0xae, + 0xfb, 0x07, 0xae, 0x57, 0x9e, 0x62, 0xc2, 0xb0, 0xd5, 0x6f, 0xf2, 0x18, 0x66, 0xb4, 0xb3, 0x41, + 0x9d, 0xfd, 0x4f, 0x8f, 0xa8, 0x17, 0x95, 0xa7, 0xb1, 0x0d, 0xdf, 0x57, 0x87, 0x9b, 0xdb, 0xfa, + 0x11, 0xe2, 0xe9, 0xbd, 0xdb, 0xd5, 0xf8, 0x67, 0x4d, 0x12, 0x2d, 0x14, 0xcb, 0x05, 0x7b, 0xda, + 0xc9, 0x28, 0x21, 0x3b, 0x30, 0xbc, 0xdd, 0x09, 0xda, 0x7e, 0x48, 0xcb, 0x33, 0x28, 0xb8, 0x1b, + 0xdd, 0x66, 0xa8, 0x40, 0x5d, 0x98, 0x61, 0x4b, 0x74, 0x9b, 0xff, 0xd0, 0xbe, 0x4e, 0xb2, 0x22, + 0x9f, 0xc2, 0x78, 0xad, 0xb6, 0x1a, 0x6f, 0x28, 0x17, 0x70, 0x43, 0xb9, 0x7c, 0x72, 0x5c, 0x29, + 0x33, 0x95, 0x2a, 0xde, 0x54, 0xf4, 0x59, 0xa5, 0x53, 0x30, 0x0e, 0x3b, 0xeb, 0xb5, 0x98, 0xc3, + 0x6c, 0xcc, 0x81, 0x29, 0x73, 0xd9, 0x1c, 0x74, 0x0a, 0xf2, 0x0f, 0x0b, 0x70, 0x4d, 0x67, 0x99, + 0x25, 0x98, 0xf2, 0xc5, 0x17, 0x91, 0xe6, 0xfc, 0xc9, 0x71, 0xe5, 0xb6, 0xf9, 0x1d, 0xf5, 0xcc, + 0xce, 0xd2, 0xda, 0xd6, 0xb3, 0x29, 0xd8, 0x5e, 0xfd, 0x03, 0x32, 0xdb, 0x3b, 0xf7, 0xc2, 0xed, + 0x35, 0xa5, 0xd6, 0xbb, 0xbd, 0xbd, 0x9a, 0x62, 0x7d, 0x0e, 0xa3, 0x6a, 0xd1, 0x26, 0xc3, 0xd0, + 0x5f, 0x6d, 0xb5, 0x4a, 0x7d, 0xec, 0x8f, 0x5a, 0x6d, 0xb5, 0x54, 0x20, 0x93, 0x00, 0xf1, 0x4e, + 0x55, 0x2a, 0x92, 0x71, 0x18, 0x91, 0x3b, 0x49, 0xa9, 0x1f, 0xf1, 0xdb, 0xed, 0xd2, 0x00, 0x21, + 0x30, 0x69, 0xae, 0x67, 0xa5, 0x41, 0xeb, 0xf7, 0x0a, 0x30, 0xaa, 0xe6, 0x21, 0x39, 0x07, 0x63, + 0xbb, 0x9b, 0xb5, 0xed, 0xe5, 0xc5, 0xb5, 0xfb, 0x6b, 0xcb, 0x4b, 0xa5, 0x3e, 0x72, 0x05, 0x2e, + 0xee, 0xd4, 0x56, 0xeb, 0x4b, 0x0b, 0xf5, 0xf5, 0xad, 0xc5, 0xea, 0x7a, 0x7d, 0xdb, 0xde, 0xfa, + 0xfc, 0x8b, 0xfa, 0xce, 0xee, 0xe6, 0xe6, 0xf2, 0x7a, 0xa9, 0x40, 0xca, 0x30, 0xcd, 0x8a, 0x1f, + 0xee, 0x2e, 0x2c, 0xeb, 0x08, 0xa5, 0x22, 0xb9, 0x0e, 0x57, 0xb2, 0x4a, 0xea, 0xab, 0xcb, 0xd5, + 0xa5, 0xf5, 0xe5, 0x5a, 0xad, 0xd4, 0x4f, 0x66, 0x61, 0x8a, 0xa1, 0x54, 0xb7, 0xb7, 0x0d, 0xda, + 0x01, 0xab, 0x05, 0x63, 0xda, 0x04, 0x20, 0x97, 0xa1, 0xbc, 0xb8, 0x6c, 0xef, 0xd4, 0xb7, 0x77, + 0xed, 0xed, 0xad, 0xda, 0x72, 0xdd, 0x6c, 0x61, 0xb2, 0x74, 0x7d, 0x6b, 0x65, 0x6d, 0xb3, 0xce, + 0x40, 0xb5, 0x52, 0x81, 0x35, 0xc3, 0x28, 0xad, 0xad, 0x6d, 0xae, 0xac, 0x2f, 0xd7, 0x77, 0x6b, + 0xcb, 0x02, 0xa5, 0x68, 0xfd, 0x56, 0x31, 0xb5, 0xa5, 0x93, 0x79, 0x18, 0xab, 0x71, 0x7b, 0x05, + 0x2e, 0x73, 0xfc, 0x80, 0xc8, 0x74, 0xb4, 0x71, 0x61, 0xc6, 0xe0, 0x2b, 0x98, 0x8e, 0xc4, 0xb4, + 0xb4, 0x6d, 0x36, 0x9b, 0x1b, 0x7e, 0x4b, 0xd7, 0xd2, 0xda, 0x02, 0x66, 0xab, 0x52, 0x32, 0xaf, + 0xe9, 0x73, 0xfc, 0xb4, 0x88, 0x27, 0x12, 0xa9, 0xcf, 0xe9, 0x7b, 0xbb, 0xd2, 0xec, 0xe6, 0xe3, + 0x2e, 0x15, 0x6a, 0x18, 0xd2, 0x64, 0xe8, 0x12, 0x0a, 0x8f, 0xbc, 0x21, 0x35, 0x5d, 0x7e, 0xba, + 0xc3, 0xcd, 0x3e, 0x71, 0x2e, 0x11, 0x4a, 0xae, 0xd5, 0xc9, 0xd9, 0x58, 0xc9, 0x87, 0xc9, 0x31, + 0x23, 0x84, 0x81, 0xcc, 0x12, 0xfb, 0xa7, 0x9d, 0x40, 0x25, 0x15, 0x18, 0xe4, 0x2b, 0x2e, 0x97, + 0x07, 0xea, 0xd6, 0x2d, 0x06, 0xb0, 0x39, 0xdc, 0xfa, 0xfd, 0x7e, 0x5d, 0xc9, 0x60, 0xba, 0xb4, + 0x26, 0x6f, 0xd4, 0xa5, 0x51, 0xce, 0x08, 0x65, 0x47, 0x41, 0x3e, 0x4b, 0xf0, 0x28, 0xd8, 0x1f, + 0x1f, 0x05, 0xc5, 0x54, 0xe3, 0x47, 0xc1, 0x18, 0x85, 0xf5, 0xa2, 0x50, 0xdb, 0x90, 0xeb, 0x40, + 0xdc, 0x8b, 0x42, 0xd5, 0x13, 0xbd, 0xa8, 0x21, 0x91, 0x0f, 0x00, 0xaa, 0x8f, 0x6a, 0x78, 0xe6, + 0xb1, 0x37, 0x85, 0xea, 0x8a, 0x9b, 0x8c, 0xf3, 0x2c, 0x14, 0x47, 0xaa, 0x40, 0x3f, 0x33, 0x6a, + 0xd8, 0x64, 0x01, 0x26, 0xaa, 0x3f, 0xed, 0x04, 0x74, 0xad, 0xc9, 0xf6, 0xa9, 0x88, 0x1f, 0x8e, + 0x47, 0xf9, 0x42, 0xea, 0xb0, 0x82, 0xba, 0x2b, 0x4a, 0x34, 0x06, 0x26, 0x09, 0xd9, 0x82, 0xf3, + 0x2b, 0x8b, 0xdb, 0x62, 0x5c, 0x55, 0x1b, 0x0d, 0xbf, 0xe3, 0x45, 0x42, 0x5f, 0xbd, 0x7e, 0x72, + 0x5c, 0xb9, 0x72, 0xd0, 0x68, 0xd7, 0xe5, 0x18, 0x74, 0x78, 0xb1, 0xae, 0xb0, 0xa6, 0x68, 0xc9, + 0x0d, 0xe8, 0xdf, 0xb5, 0xd7, 0xc4, 0xc9, 0xf9, 0xfc, 0xc9, 0x71, 0x65, 0xa2, 0x13, 0xb8, 0x1a, + 0x09, 0x2b, 0x7d, 0x30, 0x30, 0x52, 0x2c, 0xf5, 0xdb, 0xa3, 0x35, 0x1a, 0x86, 0xfc, 0x90, 0xd7, + 0x82, 0xc9, 0x15, 0x1a, 0xb1, 0xd1, 0x27, 0x0f, 0x2d, 0xdd, 0xfb, 0xe6, 0x23, 0x18, 0x7b, 0xe4, + 0x46, 0x87, 0x35, 0xda, 0x08, 0x68, 0x24, 0x0d, 0x36, 0x28, 0xb7, 0x67, 0x6e, 0x74, 0x58, 0x0f, + 0x39, 0x5c, 0xdf, 0x9c, 0x35, 0x74, 0x6b, 0x19, 0xce, 0x89, 0xda, 0xd4, 0x19, 0x69, 0xde, 0x64, + 0x58, 0x40, 0x86, 0xd8, 0x77, 0x3a, 0x43, 0x93, 0xcd, 0x3f, 0x2e, 0xc2, 0xcc, 0xe2, 0xa1, 0xe3, + 0x1d, 0xd0, 0x6d, 0x27, 0x0c, 0x9f, 0xf9, 0x41, 0x53, 0x6b, 0x3c, 0x1e, 0x10, 0x53, 0x8d, 0xc7, + 0x13, 0xe1, 0x3c, 0x8c, 0x6d, 0xb5, 0x9a, 0x92, 0x46, 0x1c, 0x5e, 0xb1, 0x2e, 0xbf, 0xd5, 0xac, + 0xb7, 0x25, 0x2f, 0x1d, 0x89, 0xd1, 0x6c, 0xd2, 0x67, 0x8a, 0xa6, 0x3f, 0xa6, 0xf1, 0xe8, 0x33, + 0x8d, 0x46, 0x43, 0x22, 0xcb, 0x70, 0xbe, 0x46, 0x1b, 0xbe, 0xd7, 0xbc, 0xef, 0x34, 0x22, 0x3f, + 0xd8, 0xf1, 0x9f, 0x50, 0x4f, 0x8c, 0x4a, 0xd4, 0xee, 0x43, 0x2c, 0xac, 0x3f, 0xc6, 0xd2, 0x7a, + 0xc4, 0x8a, 0xed, 0x34, 0x05, 0xd9, 0x82, 0x91, 0x47, 0xc2, 0xec, 0x27, 0x4e, 0xbc, 0xaf, 0xde, + 0x56, 0x76, 0xc0, 0xc5, 0x80, 0xe2, 0x50, 0x72, 0x5a, 0xea, 0xcc, 0xae, 0x94, 0x25, 0x5c, 0x8f, + 0x24, 0xa6, 0xad, 0x98, 0x58, 0xbb, 0x30, 0xb1, 0xdd, 0xea, 0x1c, 0xb8, 0x1e, 0x5b, 0x39, 0x6a, + 0xf4, 0x27, 0x64, 0x09, 0x20, 0x06, 0x08, 0x63, 0xde, 0x94, 0x38, 0x27, 0xc7, 0x05, 0x7b, 0x6f, + 0x89, 0xe9, 0x87, 0x10, 0x3c, 0xd6, 0xd8, 0x1a, 0x9d, 0xf5, 0xdf, 0xfa, 0x81, 0x88, 0x0e, 0xc0, + 0x9d, 0xac, 0x46, 0x23, 0xb6, 0xc7, 0x5c, 0x80, 0xa2, 0xb2, 0xb9, 0x0d, 0x9d, 0x1c, 0x57, 0x8a, + 0x6e, 0xd3, 0x2e, 0xae, 0x2d, 0x91, 0xb7, 0x61, 0x10, 0xd1, 0x50, 0xfe, 0x93, 0xaa, 0x3e, 0x9d, + 0x03, 0x5f, 0x41, 0x70, 0x0b, 0xb5, 0x39, 0x32, 0x79, 0x07, 0x46, 0x97, 0x68, 0x8b, 0x1e, 0x38, + 0x91, 0x2f, 0xd7, 0x04, 0x6e, 0xc5, 0x92, 0x40, 0x6d, 0xcc, 0xc5, 0x98, 0xec, 0x4c, 0x6b, 0x53, + 0x27, 0xf4, 0x3d, 0xfd, 0x4c, 0x1b, 0x20, 0x44, 0x3f, 0xd3, 0x72, 0x1c, 0xf2, 0xff, 0x16, 0x60, + 0xac, 0xea, 0x79, 0xc2, 0x3a, 0x14, 0x0a, 0xa9, 0xcf, 0xdc, 0x56, 0xe6, 0xd4, 0x75, 0x67, 0x9f, + 0xb6, 0xf6, 0x9c, 0x56, 0x87, 0x86, 0x0b, 0x5f, 0xb3, 0x63, 0xc6, 0xbf, 0x3d, 0xae, 0x7c, 0x78, + 0x06, 0x7b, 0x4f, 0x6c, 0x98, 0xdd, 0x09, 0x1c, 0x37, 0x0a, 0x4f, 0x8e, 0x2b, 0x33, 0x4e, 0x5c, + 0xa1, 0x3e, 0x6f, 0xb4, 0x76, 0xc4, 0x0b, 0xfc, 0x50, 0xaf, 0x05, 0x9e, 0x1c, 0xc1, 0xb9, 0x6a, + 0x18, 0x76, 0x8e, 0x68, 0x2d, 0x72, 0x82, 0x68, 0xc7, 0x3d, 0xa2, 0xb8, 0xaa, 0x74, 0xb7, 0x10, + 0xbc, 0xfe, 0xb3, 0xe3, 0x4a, 0x81, 0x9d, 0x6c, 0x1c, 0x24, 0x65, 0xca, 0x4b, 0x10, 0xd5, 0x23, + 0x57, 0xdf, 0xa3, 0xd0, 0x56, 0x90, 0xe4, 0x6d, 0xdd, 0x50, 0x5a, 0xc5, 0xda, 0x52, 0x5e, 0x8f, + 0x5b, 0x8b, 0x70, 0x79, 0x85, 0x46, 0x36, 0x0d, 0x69, 0x24, 0xe7, 0x08, 0x8e, 0xf0, 0xd8, 0x42, + 0x3b, 0x8c, 0xbf, 0x15, 0x31, 0x76, 0x3f, 0x9f, 0x17, 0xb2, 0xc4, 0xfa, 0x5f, 0x0a, 0x50, 0x59, + 0x0c, 0x28, 0x3f, 0x14, 0xe4, 0x30, 0xea, 0xbe, 0x76, 0x5d, 0x86, 0x81, 0x9d, 0xe7, 0x6d, 0x69, + 0x5a, 0xc1, 0x52, 0xd6, 0x29, 0x36, 0x42, 0x4f, 0x69, 0xa9, 0xb2, 0x1e, 0xc3, 0x8c, 0x4d, 0x3d, + 0xfa, 0xcc, 0xd9, 0x6f, 0x51, 0xc3, 0xd8, 0x53, 0x81, 0x41, 0x3e, 0xd1, 0x53, 0x9f, 0xc0, 0xe1, + 0x67, 0x33, 0x9c, 0x59, 0x13, 0x30, 0xb6, 0xed, 0x7a, 0x07, 0x82, 0xbb, 0xf5, 0x97, 0x03, 0x30, + 0xce, 0x7f, 0x8b, 0x73, 0x4e, 0x62, 0xcf, 0x2b, 0x9c, 0x66, 0xcf, 0x7b, 0x0f, 0x26, 0xd8, 0xa6, + 0x41, 0x83, 0x3d, 0x1a, 0xb0, 0xf5, 0x5f, 0x48, 0x02, 0xcf, 0x6c, 0x21, 0x16, 0xd4, 0x9f, 0xf2, + 0x12, 0xdb, 0x44, 0x24, 0xeb, 0x30, 0xc9, 0x01, 0xf7, 0xa9, 0x13, 0x75, 0x62, 0xb3, 0xd3, 0x39, + 0x71, 0xb0, 0x91, 0x60, 0x3e, 0x34, 0x05, 0xaf, 0xc7, 0x02, 0x68, 0x27, 0x68, 0xc9, 0x27, 0x70, + 0x6e, 0x3b, 0xf0, 0xbf, 0x79, 0xae, 0xed, 0xf2, 0x7c, 0x76, 0xf2, 0x23, 0x10, 0x2b, 0xaa, 0xeb, + 0x7b, 0x7d, 0x12, 0x9b, 0xbc, 0x01, 0x23, 0x6b, 0xe1, 0x82, 0x1f, 0xb8, 0xde, 0x01, 0xce, 0xd1, + 0x11, 0x6e, 0xad, 0x77, 0xc3, 0xfa, 0x3e, 0x02, 0x6d, 0x55, 0x9c, 0xb0, 0x2b, 0x0f, 0xf7, 0xb6, + 0x2b, 0xdf, 0x05, 0x58, 0xf7, 0x9d, 0x66, 0xb5, 0xd5, 0x5a, 0xac, 0x86, 0xb8, 0x9d, 0x8a, 0xfd, + 0xa8, 0xe5, 0x3b, 0xcd, 0xba, 0xd3, 0x6a, 0xd5, 0x1b, 0x4e, 0x68, 0x6b, 0x38, 0xe4, 0x4b, 0xb8, + 0x18, 0xba, 0x07, 0x1e, 0x7e, 0x5c, 0xdd, 0x69, 0x1d, 0xf8, 0x81, 0x1b, 0x1d, 0x1e, 0xd5, 0xc3, + 0x8e, 0x1b, 0x71, 0xa3, 0xce, 0xe4, 0xfc, 0x55, 0xb1, 0xc8, 0xd5, 0x24, 0x5e, 0x55, 0xa2, 0xd5, + 0x18, 0x96, 0x3d, 0x1b, 0x66, 0x17, 0x90, 0x47, 0x30, 0xb1, 0xee, 0x36, 0xa8, 0x17, 0x52, 0xb4, + 0xd2, 0x3d, 0x47, 0x93, 0x4f, 0xf7, 0xc9, 0xcc, 0x84, 0x38, 0xd1, 0xd2, 0x89, 0x70, 0xea, 0x9a, + 0x7c, 0x1e, 0x0c, 0x8c, 0x0c, 0x95, 0x86, 0xed, 0x73, 0x02, 0xf8, 0xc8, 0x09, 0x3c, 0xd7, 0x3b, + 0x08, 0xad, 0xff, 0x83, 0xc0, 0x88, 0xea, 0xa7, 0xdb, 0xfa, 0x71, 0x43, 0x6c, 0xcd, 0x38, 0x64, + 0x63, 0x63, 0x9a, 0xad, 0x61, 0x90, 0x8b, 0x78, 0x00, 0x11, 0x4a, 0xc1, 0x30, 0x9b, 0x42, 0x4e, + 0xbb, 0x6d, 0x33, 0x18, 0x5b, 0x1a, 0x96, 0x16, 0x70, 0xd0, 0x8c, 0xf0, 0xa5, 0xa1, 0xb9, 0x6f, + 0x17, 0x97, 0x16, 0xd8, 0x9c, 0xdc, 0x5a, 0x5b, 0x5a, 0xc4, 0xfe, 0x1f, 0xe1, 0x73, 0xd2, 0x77, + 0x9b, 0x0d, 0x1b, 0xa1, 0xac, 0xb4, 0x56, 0xdd, 0x58, 0x17, 0x7d, 0x8c, 0xa5, 0xa1, 0x73, 0xd4, + 0xb2, 0x11, 0xca, 0x54, 0x56, 0x6e, 0x17, 0x59, 0xf4, 0xbd, 0x28, 0xf0, 0x5b, 0x21, 0xea, 0x61, + 0x23, 0x7c, 0x0c, 0x0a, 0x83, 0x4a, 0x43, 0x14, 0xd9, 0x09, 0x54, 0xf2, 0x08, 0x66, 0xab, 0xcd, + 0xa7, 0x8e, 0xd7, 0xa0, 0x4d, 0x5e, 0xf2, 0xc8, 0x0f, 0x9e, 0x3c, 0x6e, 0xf9, 0xcf, 0x42, 0x1c, + 0x24, 0x23, 0xc2, 0xfe, 0x28, 0x50, 0xa4, 0x7d, 0xe6, 0x99, 0x44, 0xb2, 0xf3, 0xa8, 0xd9, 0x3a, + 0xb0, 0xd8, 0xf2, 0x3b, 0x4d, 0x31, 0x74, 0x70, 0x1d, 0x68, 0x30, 0x80, 0xcd, 0xe1, 0x4c, 0x4a, + 0xab, 0xb5, 0x0d, 0x1c, 0x18, 0x42, 0x4a, 0x87, 0xe1, 0x91, 0xcd, 0x60, 0xe4, 0x55, 0x18, 0x96, + 0xda, 0x37, 0xbf, 0x8e, 0x40, 0x33, 0xb8, 0xd4, 0xba, 0x65, 0x19, 0x9b, 0xc7, 0x36, 0x6d, 0xf8, + 0x4f, 0x69, 0xf0, 0x7c, 0xd1, 0x6f, 0x52, 0x69, 0x9b, 0x12, 0xb6, 0x17, 0x5e, 0x50, 0x6f, 0xb0, + 0x12, 0xdb, 0x44, 0x64, 0x15, 0xf0, 0x8d, 0x3b, 0x2c, 0x9f, 0x8b, 0x2b, 0xe0, 0x1b, 0x7b, 0x68, + 0xcb, 0x32, 0xb2, 0x04, 0xe7, 0xab, 0x9d, 0xc8, 0x3f, 0x72, 0x22, 0xb7, 0xb1, 0xdb, 0x3e, 0x08, + 0x1c, 0x56, 0x49, 0x09, 0x09, 0xf0, 0x34, 0xe2, 0xc8, 0xc2, 0x7a, 0x47, 0x94, 0xda, 0x69, 0x02, + 0xf2, 0x2e, 0x8c, 0xaf, 0x85, 0xdc, 0xfe, 0xe8, 0x84, 0xb4, 0x89, 0x46, 0x24, 0xd1, 0x4a, 0x37, + 0xac, 0xa3, 0x35, 0xb2, 0xce, 0xce, 0x2f, 0x4d, 0xdb, 0xc0, 0x23, 0x16, 0x0c, 0x55, 0xc3, 0xd0, + 0x0d, 0x23, 0xb4, 0x0d, 0x8d, 0x2c, 0xc0, 0xc9, 0x71, 0x65, 0xc8, 0x41, 0x88, 0x2d, 0x4a, 0xc8, + 0x23, 0x18, 0x5b, 0xa2, 0x4c, 0xfd, 0xdd, 0x09, 0x3a, 0x61, 0x84, 0x96, 0x9e, 0xb1, 0xf9, 0x8b, + 0x62, 0x35, 0xd2, 0x4a, 0xc4, 0x58, 0xe6, 0x2a, 0x6a, 0x13, 0xe1, 0xf5, 0x88, 0x15, 0xe8, 0x5b, + 0xad, 0x86, 0xcf, 0x74, 0x7b, 0x41, 0xb3, 0xea, 0x36, 0xd9, 0xfa, 0x32, 0x8d, 0x6d, 0x40, 0xdd, + 0x5e, 0x2c, 0x68, 0xf5, 0x43, 0x2c, 0xd1, 0x75, 0x7b, 0x83, 0x84, 0x34, 0x52, 0x26, 0xed, 0x19, + 0xc3, 0x6c, 0x69, 0x16, 0xca, 0x26, 0x9e, 0xd1, 0xe0, 0xfd, 0x11, 0x8c, 0x2d, 0x76, 0xc2, 0xc8, + 0x3f, 0xda, 0x39, 0xa4, 0x47, 0x14, 0xad, 0x41, 0xe2, 0x04, 0xd3, 0x40, 0x70, 0x3d, 0x62, 0x70, + 0xfd, 0x33, 0x35, 0x74, 0xf2, 0x19, 0x10, 0x79, 0x14, 0x59, 0x61, 0xe3, 0xc3, 0x63, 0x63, 0x19, + 0x0d, 0x42, 0x23, 0xfc, 0xfc, 0x21, 0x4f, 0x30, 0xf5, 0x03, 0x55, 0xac, 0x1b, 0x25, 0xd3, 0xc4, + 0xac, 0x41, 0xbc, 0x89, 0x2b, 0x81, 0xd3, 0x3e, 0x2c, 0x97, 0xe3, 0xa3, 0x81, 0xf8, 0xa8, 0x03, + 0x06, 0x37, 0x54, 0x9c, 0x18, 0x9d, 0xd4, 0x00, 0xf8, 0xcf, 0x75, 0xd6, 0xf1, 0xdc, 0x84, 0x54, + 0x36, 0xe4, 0xc5, 0x0a, 0xa4, 0xac, 0x2e, 0xa2, 0xe2, 0xc4, 0xd9, 0xb6, 0x5c, 0xa3, 0x37, 0x35, + 0x36, 0xe4, 0x09, 0x94, 0xf8, 0xaf, 0x0d, 0xdf, 0x73, 0x23, 0xbe, 0x5f, 0xcc, 0x19, 0xf6, 0xc6, + 0x64, 0xb1, 0xac, 0x00, 0xed, 0xbc, 0xa2, 0x82, 0x23, 0x55, 0xaa, 0x55, 0x93, 0x62, 0x4c, 0xb6, + 0x61, 0x6c, 0x3b, 0xf0, 0x9b, 0x9d, 0x46, 0x84, 0x5a, 0xc6, 0x25, 0x5c, 0xf8, 0x89, 0xa8, 0x47, + 0x2b, 0xe1, 0x32, 0x69, 0x73, 0x40, 0x9d, 0xed, 0x0b, 0xba, 0x4c, 0x34, 0x44, 0xb2, 0x00, 0x43, + 0xdb, 0x7e, 0xcb, 0x6d, 0x3c, 0x2f, 0x5f, 0xc6, 0x46, 0x4f, 0x4b, 0x66, 0x08, 0x94, 0x4d, 0x45, + 0x95, 0xb6, 0x8d, 0x20, 0x5d, 0xa5, 0xe5, 0x48, 0xa4, 0x0a, 0x13, 0x9f, 0xb1, 0x01, 0xe3, 0xfa, + 0x9e, 0xe7, 0xb8, 0x01, 0x2d, 0x5f, 0xc1, 0x7e, 0x41, 0x5b, 0xfc, 0x4f, 0xf4, 0x02, 0x7d, 0x38, + 0x1b, 0x14, 0x64, 0x0d, 0xce, 0xad, 0x85, 0xb5, 0x28, 0x70, 0xdb, 0x74, 0xc3, 0xf1, 0x9c, 0x03, + 0xda, 0x2c, 0x5f, 0x8d, 0x8d, 0xe1, 0x6e, 0x58, 0x0f, 0xb1, 0xac, 0x7e, 0xc4, 0x0b, 0x75, 0x63, + 0x78, 0x82, 0x8e, 0x7c, 0x0e, 0xd3, 0xcb, 0xdf, 0x44, 0x6c, 0xc4, 0xb4, 0xaa, 0x9d, 0xa6, 0x1b, + 0xd5, 0x22, 0x3f, 0x70, 0x0e, 0x68, 0xb9, 0x82, 0xfc, 0x5e, 0x39, 0x39, 0xae, 0x5c, 0xa3, 0xa2, + 0xbc, 0xee, 0x30, 0x84, 0x7a, 0xc8, 0x31, 0xf4, 0x4b, 0xee, 0x2c, 0x0e, 0x4c, 0xfa, 0xb5, 0x4e, + 0x9b, 0x69, 0xdb, 0x28, 0xfd, 0x6b, 0x86, 0xf4, 0xb5, 0x12, 0x2e, 0xfd, 0x90, 0x03, 0x52, 0xd2, + 0xd7, 0x10, 0x89, 0x0d, 0xe4, 0x81, 0xef, 0x7a, 0xd5, 0x46, 0xe4, 0x3e, 0xa5, 0xe2, 0xc4, 0x1c, + 0x96, 0xaf, 0x63, 0x4b, 0xd1, 0x70, 0xff, 0xab, 0xbe, 0xeb, 0xd5, 0x1d, 0x2c, 0xae, 0x87, 0xa2, + 0x5c, 0x9f, 0x23, 0x69, 0x6a, 0xf2, 0x23, 0xb8, 0xb0, 0xe1, 0xef, 0xbb, 0x2d, 0xca, 0x97, 0x1c, + 0x2e, 0x16, 0x34, 0x42, 0x5a, 0xc8, 0x17, 0x0d, 0xf7, 0x47, 0x88, 0x51, 0x17, 0xab, 0xd5, 0x91, + 0xc2, 0xd1, 0x0d, 0xf7, 0xd9, 0x5c, 0xc8, 0x32, 0x8c, 0xe3, 0xbc, 0x6c, 0xe1, 0xcf, 0xb0, 0x7c, + 0x03, 0x8f, 0x74, 0xd7, 0x13, 0x5a, 0xda, 0xed, 0x65, 0x0d, 0x67, 0xd9, 0x8b, 0x82, 0xe7, 0xb6, + 0x41, 0x46, 0x3e, 0x86, 0xb9, 0xe4, 0xf0, 0x5e, 0xf4, 0xbd, 0xc7, 0xee, 0x41, 0x27, 0xa0, 0xcd, + 0xf2, 0x2b, 0xac, 0xa9, 0x76, 0x17, 0x0c, 0xf2, 0x15, 0xcc, 0xe0, 0x5e, 0x57, 0xf5, 0x7c, 0xef, + 0xf9, 0x91, 0xfb, 0x53, 0xd4, 0x9f, 0x99, 0xda, 0xfb, 0x2a, 0xaa, 0xbd, 0xaf, 0x9e, 0x1c, 0x57, + 0xae, 0xe3, 0x9e, 0x58, 0x77, 0x74, 0x8c, 0x84, 0xe9, 0x39, 0x9b, 0xc7, 0xdc, 0x23, 0x38, 0x9f, + 0x6a, 0x3f, 0x29, 0x41, 0xff, 0x13, 0x71, 0xc9, 0x3a, 0x6a, 0xb3, 0x3f, 0xc9, 0x9b, 0x30, 0xf8, + 0x94, 0x1d, 0xd4, 0x50, 0x1d, 0x89, 0xaf, 0xed, 0x34, 0xd2, 0x35, 0xef, 0xb1, 0x6f, 0x73, 0xa4, + 0x0f, 0x8a, 0xef, 0x15, 0x1e, 0x0c, 0x8c, 0x8c, 0x95, 0xc6, 0xf9, 0xdd, 0xf8, 0x83, 0x81, 0x91, + 0x89, 0xd2, 0xa4, 0x55, 0x85, 0x73, 0x09, 0x7c, 0x52, 0x86, 0x61, 0xea, 0x31, 0xe5, 0xbf, 0xc9, + 0x15, 0x22, 0x5b, 0xfe, 0x24, 0xd3, 0x30, 0xd8, 0x72, 0x8f, 0xdc, 0x08, 0x2b, 0x1c, 0xb4, 0xf9, + 0x0f, 0xeb, 0x0f, 0x0a, 0x40, 0xd2, 0xfb, 0x11, 0xb9, 0x93, 0x60, 0xc3, 0x55, 0x5f, 0x01, 0xd2, + 0xad, 0xff, 0x92, 0xfb, 0x67, 0x30, 0xc5, 0x07, 0x84, 0xdc, 0x39, 0xb5, 0xba, 0xf8, 0x8a, 0x9d, + 0x51, 0xac, 0x5b, 0x8c, 0x44, 0x31, 0xee, 0xb3, 0xeb, 0xd8, 0xb4, 0x0e, 0xcc, 0x64, 0xee, 0x44, + 0x64, 0x03, 0x66, 0x8e, 0x7c, 0x2f, 0x3a, 0x6c, 0x3d, 0x97, 0x1b, 0x91, 0xa8, 0xad, 0x80, 0xb5, + 0xe1, 0xe2, 0x9b, 0x89, 0x60, 0x4f, 0x09, 0xb0, 0xe0, 0x88, 0xf5, 0x08, 0xa3, 0x93, 0xfc, 0x12, + 0xcb, 0x86, 0xf3, 0xa9, 0x05, 0x9d, 0xfc, 0x10, 0xc6, 0x1b, 0x78, 0xb8, 0x33, 0x6a, 0xe2, 0xdb, + 0x99, 0x06, 0xd7, 0xe7, 0x2a, 0x87, 0xf3, 0x4f, 0xf9, 0x7b, 0x05, 0x98, 0xcd, 0x59, 0xca, 0xcf, + 0x2e, 0xea, 0x2f, 0xe0, 0xc2, 0x91, 0xf3, 0x4d, 0x3d, 0xc0, 0xb3, 0x7b, 0x3d, 0x70, 0xbc, 0x84, + 0xb4, 0x71, 0x99, 0xca, 0xc6, 0xd0, 0x1d, 0x94, 0x8e, 0x9c, 0x6f, 0x6c, 0x44, 0xb0, 0x59, 0x39, + 0x6f, 0xe7, 0xa7, 0x30, 0x61, 0x2c, 0xde, 0x67, 0x6e, 0x9c, 0x75, 0x0f, 0xce, 0x2f, 0xd1, 0x16, + 0x8d, 0xe8, 0xa9, 0x6d, 0x76, 0xd6, 0x36, 0x40, 0x8d, 0x1e, 0x39, 0xed, 0x43, 0x9f, 0x29, 0xf5, + 0x0b, 0xfa, 0x2f, 0x61, 0xf3, 0x21, 0xf2, 0x78, 0x22, 0x0b, 0xf6, 0xde, 0xe2, 0x8a, 0x7e, 0xa8, + 0x30, 0x6d, 0x8d, 0xca, 0xfa, 0x97, 0x45, 0x20, 0x62, 0xf5, 0x0d, 0xa8, 0x73, 0x24, 0x9b, 0xf1, + 0x3e, 0x8c, 0xf3, 0x13, 0x3a, 0x07, 0x63, 0x73, 0xc6, 0xe6, 0xa7, 0xc4, 0xcc, 0xd3, 0x8b, 0x56, + 0xfb, 0x6c, 0x03, 0x95, 0x91, 0xda, 0x94, 0x9b, 0x16, 0x90, 0xb4, 0x68, 0x90, 0xea, 0x45, 0x8c, + 0x54, 0xff, 0x4d, 0x3e, 0x81, 0xc9, 0x45, 0xff, 0xa8, 0xcd, 0x64, 0x22, 0x88, 0xfb, 0x85, 0xd9, + 0x46, 0xd4, 0x6b, 0x14, 0xae, 0xf6, 0xd9, 0x09, 0x74, 0xb2, 0x09, 0x53, 0xf7, 0x5b, 0x9d, 0xf0, + 0xb0, 0xea, 0x35, 0x17, 0x5b, 0x7e, 0x28, 0xb9, 0x0c, 0x88, 0x93, 0x96, 0x58, 0x3b, 0xd3, 0x18, + 0xab, 0x7d, 0x76, 0x16, 0x21, 0x79, 0x15, 0x06, 0x97, 0x9f, 0xb2, 0x35, 0x5d, 0xba, 0xa9, 0x08, + 0x2f, 0xba, 0x2d, 0x8f, 0x6e, 0x3d, 0x5e, 0xed, 0xb3, 0x79, 0xe9, 0xc2, 0x28, 0x0c, 0xcb, 0xd3, + 0xfd, 0x1d, 0xa6, 0x6f, 0x2b, 0x71, 0xd6, 0x22, 0x27, 0xea, 0x84, 0x64, 0x0e, 0x46, 0x76, 0xdb, + 0xec, 0xd0, 0x29, 0xcd, 0x22, 0xb6, 0xfa, 0x6d, 0xbd, 0x69, 0x4a, 0x9a, 0x5c, 0x86, 0xd8, 0xa6, + 0x2b, 0x90, 0x35, 0x23, 0xef, 0xaa, 0x29, 0xdc, 0xee, 0xd8, 0x46, 0xbd, 0xc5, 0x44, 0xbd, 0xa5, + 0xa4, 0xac, 0xad, 0x99, 0x4c, 0xe1, 0x59, 0x9f, 0xc3, 0xd5, 0xdd, 0x76, 0x48, 0x83, 0xa8, 0xda, + 0x6e, 0xb7, 0xdc, 0x06, 0xbf, 0xe6, 0x42, 0x2b, 0x80, 0x1c, 0x2c, 0xef, 0xc2, 0x10, 0x07, 0x88, + 0x61, 0x22, 0xc7, 0x60, 0xb5, 0xdd, 0x16, 0xb6, 0x87, 0xb7, 0xb8, 0xe6, 0xcf, 0xad, 0x09, 0xb6, + 0xc0, 0xb6, 0x7e, 0xb7, 0x00, 0x57, 0xf9, 0x0c, 0xc8, 0x65, 0xfd, 0x3d, 0x18, 0x45, 0x27, 0xb6, + 0xb6, 0xd3, 0x90, 0x73, 0x82, 0x7b, 0xf3, 0x49, 0xa0, 0x1d, 0x97, 0x6b, 0xee, 0x81, 0xc5, 0x7c, + 0xf7, 0x40, 0x39, 0xc1, 0xfa, 0x33, 0x27, 0xd8, 0x67, 0x60, 0x89, 0x16, 0xb5, 0x5a, 0xa9, 0x46, + 0x85, 0x2f, 0xd2, 0x2a, 0xeb, 0x3f, 0x15, 0x61, 0x76, 0x85, 0x7a, 0x34, 0x70, 0xf0, 0x3b, 0x0d, + 0x2b, 0x97, 0xee, 0x26, 0x54, 0xe8, 0xea, 0x26, 0x54, 0x91, 0x76, 0xc3, 0x22, 0xda, 0x0d, 0x53, + 0x3e, 0x4f, 0xec, 0x2c, 0xba, 0x6b, 0xaf, 0x89, 0xcf, 0xc2, 0xb3, 0x68, 0x27, 0x70, 0xf1, 0xaa, + 0x80, 0xac, 0xc5, 0x2e, 0x46, 0x03, 0x3d, 0x6d, 0x0e, 0x53, 0xc2, 0xe5, 0x62, 0x58, 0xb8, 0x18, + 0x99, 0x8e, 0x45, 0x9b, 0x30, 0xc4, 0xcd, 0x9d, 0x78, 0x41, 0x35, 0x36, 0x7f, 0x4b, 0xcc, 0xa9, + 0x9c, 0x0f, 0x14, 0xb6, 0x51, 0xdc, 0xd8, 0xf9, 0x10, 0x88, 0x10, 0x60, 0x0b, 0x2e, 0x73, 0x9f, + 0xc1, 0x98, 0x86, 0x72, 0x9a, 0xbd, 0x5f, 0x99, 0x5d, 0x99, 0x3a, 0xea, 0x1d, 0x70, 0x0b, 0xae, + 0xb6, 0xf7, 0x5b, 0x1f, 0x42, 0x39, 0xdd, 0x1a, 0x61, 0x6a, 0xeb, 0x65, 0xd9, 0xb3, 0x96, 0x60, + 0x7a, 0x85, 0x46, 0x38, 0x70, 0x71, 0x12, 0x69, 0xae, 0x72, 0x89, 0x79, 0x26, 0x57, 0x55, 0x04, + 0xb2, 0x01, 0xa6, 0xcd, 0xd2, 0x1a, 0xcc, 0x24, 0xb8, 0x88, 0xfa, 0x3f, 0x80, 0x61, 0x01, 0x52, + 0x2b, 0xaa, 0xf0, 0xb7, 0xa5, 0xfb, 0xa2, 0x60, 0x6f, 0x9e, 0x8f, 0x5b, 0xc1, 0xd9, 0x96, 0x04, + 0xd6, 0x21, 0x5c, 0x60, 0xdb, 0x6c, 0xcc, 0x55, 0x0d, 0xc7, 0x4b, 0x30, 0xda, 0x66, 0x8a, 0x42, + 0xe8, 0xfe, 0x94, 0x0f, 0xa3, 0x41, 0x7b, 0x84, 0x01, 0x6a, 0xee, 0x4f, 0x29, 0xb9, 0x02, 0x80, + 0x85, 0xf8, 0x99, 0x62, 0x15, 0x40, 0x74, 0x6e, 0xca, 0x24, 0x80, 0x8e, 0x76, 0x7c, 0xdc, 0xd8, + 0xf8, 0xb7, 0x15, 0xc0, 0x6c, 0xaa, 0x26, 0xf1, 0x01, 0x77, 0x60, 0x44, 0xea, 0xc7, 0x89, 0x4b, + 0x06, 0xfd, 0x0b, 0x6c, 0x85, 0x44, 0x5e, 0x83, 0x73, 0x1e, 0xfd, 0x26, 0xaa, 0xa7, 0xda, 0x30, + 0xc1, 0xc0, 0xdb, 0xb2, 0x1d, 0xd6, 0xaf, 0xa0, 0x61, 0xb9, 0xe6, 0xf9, 0xcf, 0x1e, 0xb7, 0x9c, + 0x27, 0x34, 0x55, 0xf1, 0x0f, 0x61, 0xa4, 0xd6, 0xbb, 0x62, 0x3e, 0x7d, 0x64, 0xe5, 0xb6, 0x22, + 0xb1, 0x5a, 0x30, 0xc7, 0x3e, 0xa9, 0x56, 0xdd, 0x58, 0x5f, 0x6b, 0x6e, 0x7f, 0xd7, 0x02, 0x7c, + 0x0a, 0x97, 0x32, 0x6b, 0xfb, 0xae, 0x85, 0xf8, 0xc7, 0x03, 0x30, 0xcb, 0x37, 0x93, 0xf4, 0x08, + 0x3e, 0xfd, 0x52, 0xf3, 0x4b, 0xb9, 0xb4, 0xbd, 0x9b, 0x71, 0x69, 0x8b, 0x24, 0xfa, 0xa5, 0xad, + 0x71, 0x55, 0xfb, 0x5e, 0xf6, 0x55, 0x2d, 0x1a, 0xa1, 0xcc, 0xab, 0xda, 0xe4, 0x05, 0xed, 0x72, + 0xfe, 0x05, 0x2d, 0x5e, 0x3c, 0x65, 0x5c, 0xd0, 0x66, 0x5d, 0xcb, 0x26, 0xbc, 0x9d, 0x46, 0x5e, + 0xae, 0xb7, 0xd3, 0x6b, 0x30, 0x5c, 0x6d, 0xb7, 0x35, 0xef, 0x41, 0xec, 0x1e, 0xa7, 0xdd, 0xe6, + 0xc2, 0x93, 0x85, 0x72, 0x9d, 0x87, 0x8c, 0x75, 0xfe, 0x7d, 0x80, 0x45, 0x7c, 0xe3, 0x80, 0x1d, + 0x37, 0x86, 0x18, 0xa8, 0xe1, 0xf3, 0x97, 0x0f, 0xd8, 0x71, 0xba, 0x79, 0x25, 0x46, 0xe6, 0x8a, + 0xbd, 0xb5, 0x07, 0xe5, 0xf4, 0xf0, 0x79, 0x09, 0x4b, 0xd7, 0x1f, 0x15, 0xe0, 0x8a, 0x50, 0x72, + 0x12, 0x13, 0xfc, 0xec, 0xa3, 0xf3, 0x1d, 0x18, 0x17, 0xb4, 0x3b, 0xf1, 0x44, 0xe0, 0xb7, 0xe4, + 0x72, 0x31, 0xe6, 0x2b, 0xba, 0x81, 0x46, 0xde, 0x81, 0x11, 0xfc, 0x23, 0xbe, 0x18, 0x62, 0x92, + 0x19, 0x45, 0xd4, 0x7a, 0xf2, 0x7a, 0x48, 0xa1, 0x5a, 0x5f, 0xc3, 0xd5, 0xbc, 0x86, 0xbf, 0x04, + 0xb9, 0xfc, 0xb3, 0x02, 0x5c, 0x12, 0xec, 0x8d, 0xa5, 0xe2, 0x85, 0x76, 0x9d, 0x33, 0xf8, 0x1c, + 0x3f, 0x80, 0x31, 0x56, 0xa1, 0x6c, 0x77, 0xbf, 0xd8, 0x5a, 0xc5, 0xc9, 0x21, 0x2e, 0x59, 0x72, + 0x22, 0x47, 0xf8, 0xd0, 0x38, 0x47, 0x2d, 0x69, 0x19, 0xb1, 0x75, 0x62, 0xeb, 0x4b, 0xb8, 0x9c, + 0xfd, 0x09, 0x2f, 0x41, 0x3e, 0x0f, 0x60, 0x2e, 0x63, 0x53, 0x78, 0xb1, 0x3d, 0xf9, 0x0b, 0xb8, + 0x94, 0xc9, 0xeb, 0x25, 0x34, 0x73, 0x95, 0x69, 0x1c, 0xd1, 0x4b, 0xe8, 0x42, 0xeb, 0x11, 0x5c, + 0xcc, 0xe0, 0xf4, 0x12, 0x9a, 0xb8, 0x02, 0xb3, 0x4a, 0xd3, 0xfe, 0x56, 0x2d, 0xdc, 0x80, 0x2b, + 0x9c, 0xd1, 0xcb, 0xe9, 0x95, 0x87, 0x70, 0x49, 0xb0, 0x7b, 0x09, 0xd2, 0x5b, 0x85, 0xcb, 0xf1, + 0x81, 0x3a, 0x43, 0x4f, 0x3a, 0xf5, 0x22, 0x63, 0xad, 0xc3, 0xb5, 0x98, 0x53, 0x8e, 0xd2, 0x70, + 0x7a, 0x6e, 0x5c, 0x1d, 0x8c, 0x7b, 0xe9, 0xa5, 0xf4, 0xe8, 0x23, 0xb8, 0x60, 0x30, 0x7d, 0x69, + 0xaa, 0xd2, 0x1a, 0x4c, 0x71, 0xc6, 0xa6, 0xea, 0x3c, 0xaf, 0xab, 0xce, 0x63, 0xf3, 0xe7, 0x63, + 0x96, 0x08, 0xde, 0x7b, 0x2b, 0x43, 0x9b, 0xde, 0x40, 0x6d, 0x5a, 0xa2, 0xc4, 0x2d, 0x7c, 0x07, + 0x86, 0x38, 0x44, 0xb4, 0x2f, 0x83, 0x19, 0x3f, 0x2c, 0x70, 0x32, 0x81, 0x6c, 0xfd, 0x08, 0xae, + 0xf0, 0x93, 0x68, 0x7c, 0x51, 0x69, 0x9e, 0x16, 0x7f, 0x98, 0x38, 0x88, 0x5e, 0x14, 0x7c, 0x93, + 0xf8, 0x39, 0xe7, 0xd1, 0x7d, 0x39, 0xb6, 0xf3, 0xf8, 0x9f, 0xea, 0xfd, 0x99, 0x3c, 0x60, 0x16, + 0x33, 0x0f, 0x98, 0x37, 0xe0, 0xba, 0x3a, 0x60, 0x26, 0xab, 0x91, 0x43, 0xcb, 0xfa, 0x12, 0x2e, + 0xf1, 0x0f, 0x95, 0x7e, 0x81, 0x66, 0x33, 0x3e, 0x4c, 0x7c, 0xe6, 0xac, 0xf8, 0x4c, 0x13, 0x3b, + 0xe7, 0x23, 0xff, 0xcf, 0x82, 0x9c, 0x72, 0xd9, 0xcc, 0x7f, 0xd9, 0x27, 0xee, 0x4d, 0xa8, 0x28, + 0x81, 0x98, 0x2d, 0x7a, 0xb1, 0xe3, 0xf6, 0x06, 0xcc, 0xe8, 0x6c, 0xdc, 0x06, 0xdd, 0xbb, 0x87, + 0x37, 0x48, 0x6f, 0xb3, 0x69, 0x81, 0x00, 0x39, 0xec, 0xca, 0x19, 0x72, 0x43, 0x7c, 0x5b, 0x61, + 0x5a, 0x75, 0xb8, 0x9c, 0xee, 0x0a, 0xb7, 0x21, 0x1f, 0x05, 0x90, 0x4f, 0xd8, 0x14, 0x46, 0x88, + 0xe8, 0x8c, 0x5c, 0xa6, 0x72, 0x1e, 0x73, 0x72, 0x49, 0x65, 0x59, 0x72, 0xa9, 0x49, 0x7c, 0x3f, + 0xab, 0x5d, 0x8e, 0x87, 0x5f, 0x07, 0x22, 0x8b, 0x16, 0x6b, 0xb6, 0xac, 0xfa, 0x22, 0xf4, 0x2f, + 0xd6, 0x6c, 0xf1, 0x1a, 0x09, 0x35, 0xc1, 0x46, 0x18, 0xd8, 0x0c, 0x96, 0xd4, 0xc8, 0x8b, 0xa7, + 0xd0, 0xc8, 0x1f, 0x0c, 0x8c, 0xf4, 0x97, 0x06, 0x6c, 0x52, 0x73, 0x0f, 0xbc, 0x47, 0x6e, 0x74, + 0xa8, 0x2a, 0xac, 0x5a, 0x5f, 0xc1, 0x94, 0x51, 0xbd, 0x98, 0xc5, 0x5d, 0x9f, 0x51, 0x31, 0x7d, + 0x76, 0xb1, 0x8a, 0x6e, 0x35, 0x68, 0xb2, 0x18, 0xe7, 0xeb, 0x4d, 0xc3, 0xa9, 0xe3, 0x1b, 0x5d, + 0x5b, 0x16, 0x5a, 0x7f, 0x77, 0x40, 0xe3, 0xae, 0x3d, 0x4e, 0xeb, 0xf2, 0x75, 0xf7, 0x00, 0xf8, + 0x08, 0xd1, 0x3e, 0x8e, 0x29, 0x80, 0x63, 0xc2, 0x5b, 0x85, 0x2f, 0xc9, 0xb6, 0x86, 0x74, 0xda, + 0xc7, 0x6b, 0xc2, 0x89, 0x98, 0x13, 0xc9, 0xf7, 0x9a, 0xca, 0x89, 0x58, 0xb0, 0x0e, 0x6d, 0x1d, + 0x89, 0xfc, 0x28, 0xf9, 0xc2, 0x62, 0x10, 0x2f, 0xac, 0x5e, 0x91, 0x37, 0xd8, 0xe9, 0x6f, 0x3b, + 0xdb, 0x23, 0x8b, 0x67, 0x30, 0xc3, 0x68, 0xdd, 0xc7, 0x78, 0xb0, 0x58, 0xfe, 0x26, 0xa2, 0x1e, + 0x5f, 0xdb, 0x87, 0xb0, 0x9e, 0x57, 0xbb, 0xd4, 0x13, 0x23, 0x0b, 0xfb, 0x7b, 0xcc, 0xa7, 0x4e, + 0x55, 0x99, 0x9d, 0xcd, 0x1f, 0x07, 0x91, 0xbd, 0xbe, 0xec, 0x35, 0xdb, 0xbe, 0xab, 0x0e, 0x4c, + 0x7c, 0x10, 0x05, 0xad, 0x3a, 0x15, 0x70, 0x5b, 0x47, 0xb2, 0x5e, 0xeb, 0xea, 0x9a, 0x3e, 0x02, + 0x03, 0x3b, 0x8b, 0x3b, 0xeb, 0xa5, 0x82, 0x75, 0x07, 0x40, 0xab, 0x09, 0x60, 0x68, 0x73, 0xcb, + 0xde, 0xa8, 0xae, 0x97, 0xfa, 0xc8, 0x0c, 0x9c, 0x7f, 0xb4, 0xb6, 0xb9, 0xb4, 0xf5, 0xa8, 0x56, + 0xaf, 0x6d, 0x54, 0xed, 0x9d, 0xc5, 0xaa, 0xbd, 0x54, 0x2a, 0x58, 0x5f, 0xc3, 0xb4, 0xf9, 0x85, + 0x2f, 0x75, 0x10, 0x46, 0x30, 0xa5, 0xf4, 0x99, 0x07, 0x8f, 0x76, 0x34, 0x8f, 0x56, 0x71, 0xf8, + 0x4b, 0x7a, 0x66, 0x89, 0x63, 0xa2, 0x98, 0x46, 0x1a, 0x12, 0x79, 0x83, 0xab, 0x05, 0xc9, 0xe7, + 0xc7, 0x4c, 0x2d, 0xa8, 0xc7, 0x7a, 0x01, 0x2e, 0x7d, 0x3f, 0x80, 0x69, 0xb3, 0xd6, 0xd3, 0x5a, + 0xa9, 0x5e, 0x41, 0x57, 0x5f, 0xed, 0x6d, 0x12, 0x21, 0xfa, 0xb5, 0x81, 0x58, 0x59, 0x7f, 0x00, + 0x25, 0x81, 0x15, 0xef, 0xbc, 0x37, 0xa4, 0x19, 0xb1, 0x90, 0xf1, 0x92, 0x52, 0x7a, 0x96, 0xfb, + 0x50, 0x62, 0x2b, 0xa6, 0xa0, 0xe4, 0x15, 0x4c, 0xc3, 0xe0, 0x7a, 0x7c, 0x9d, 0x63, 0xf3, 0x1f, + 0xf8, 0x44, 0x27, 0x72, 0x82, 0x48, 0xfa, 0xc1, 0x8d, 0xda, 0xea, 0x37, 0x79, 0x03, 0x86, 0xee, + 0xbb, 0xad, 0x48, 0x98, 0x46, 0xe2, 0x4d, 0x9e, 0xb1, 0xe5, 0x05, 0xb6, 0x40, 0xb0, 0x6c, 0x38, + 0xaf, 0x55, 0x78, 0x86, 0xa6, 0x92, 0x32, 0x0c, 0x6f, 0xd2, 0x6f, 0xb4, 0xfa, 0xe5, 0x4f, 0xeb, + 0x5d, 0x38, 0x2f, 0x7c, 0x0c, 0x35, 0x31, 0x5d, 0x17, 0x0f, 0xbe, 0x0b, 0xc6, 0xab, 0x53, 0xc1, + 0x12, 0x8b, 0x18, 0xdd, 0x6e, 0xbb, 0xf9, 0x82, 0x74, 0x6c, 0xa3, 0x38, 0x23, 0xdd, 0xeb, 0xf2, + 0x16, 0xa8, 0x57, 0x77, 0xfe, 0x6f, 0x45, 0x28, 0x27, 0xac, 0x0c, 0x8b, 0x87, 0x4e, 0xab, 0x45, + 0xbd, 0x03, 0x4a, 0x6e, 0xc2, 0xc0, 0xce, 0xd6, 0xce, 0xb6, 0xb0, 0x92, 0x4a, 0xef, 0x02, 0x06, + 0x52, 0x38, 0x36, 0x62, 0x90, 0x87, 0x70, 0x5e, 0x7a, 0x11, 0xab, 0x22, 0xd1, 0x43, 0x57, 0xba, + 0xfb, 0x24, 0xa7, 0xe9, 0xc8, 0xdb, 0xc2, 0x24, 0xf2, 0x93, 0x8e, 0x1b, 0xd0, 0x26, 0x5a, 0x7e, + 0xe2, 0xab, 0x7a, 0xad, 0xc4, 0xd6, 0xd1, 0xc8, 0x0f, 0x60, 0xbc, 0x56, 0xdb, 0x8a, 0x6b, 0x1f, + 0x34, 0x6e, 0x88, 0xf4, 0x22, 0xdb, 0x40, 0xe4, 0xef, 0x7a, 0xad, 0x3f, 0x2e, 0xc0, 0x6c, 0x8e, + 0xb9, 0x85, 0xbc, 0x61, 0xc8, 0x61, 0x4a, 0x93, 0x83, 0x44, 0x59, 0xed, 0x13, 0x82, 0x58, 0xd4, + 0x7c, 0xb2, 0xfb, 0xcf, 0xe0, 0x93, 0xbd, 0xda, 0x17, 0xfb, 0x61, 0x93, 0xd7, 0xa0, 0xbf, 0x56, + 0xdb, 0x12, 0x66, 0x75, 0x12, 0x7f, 0x81, 0x86, 0xcc, 0x10, 0x16, 0x00, 0x46, 0x24, 0xc8, 0x3a, + 0x07, 0x13, 0x46, 0xc7, 0x58, 0x16, 0x8c, 0xeb, 0x2d, 0x64, 0xbd, 0xbf, 0xe8, 0x37, 0x55, 0xef, + 0xb3, 0xbf, 0xad, 0x6d, 0x53, 0x66, 0xe4, 0x0a, 0x80, 0xbc, 0xaf, 0x75, 0x9b, 0xf2, 0xe6, 0x47, + 0x40, 0xd6, 0x9a, 0xe4, 0x3a, 0x8c, 0x07, 0xb4, 0xe9, 0x06, 0xb4, 0x11, 0xd5, 0x3b, 0x81, 0x78, + 0xdd, 0x62, 0x8f, 0x49, 0xd8, 0x6e, 0xd0, 0xb2, 0x16, 0x60, 0x4c, 0x6b, 0x68, 0x2f, 0x86, 0xd3, + 0x30, 0xa8, 0x1b, 0x1e, 0xf9, 0x0f, 0xeb, 0xf7, 0x0a, 0x30, 0x8d, 0x3d, 0x7b, 0xe0, 0xb2, 0x15, + 0x3f, 0x6e, 0xde, 0xbc, 0xd1, 0x0f, 0x97, 0x8d, 0x7e, 0x48, 0xe0, 0xaa, 0x0e, 0xf9, 0x20, 0xd5, + 0x21, 0x97, 0xb3, 0x3a, 0x04, 0x67, 0xb5, 0xeb, 0x7b, 0x7a, 0x3f, 0xe8, 0x37, 0x70, 0x7f, 0x50, + 0x80, 0x29, 0xad, 0x4d, 0xea, 0x03, 0xef, 0x19, 0x4d, 0xba, 0x94, 0xd1, 0xa4, 0xd4, 0x10, 0x59, + 0x48, 0xb5, 0xe8, 0x95, 0x6e, 0x2d, 0xca, 0x1a, 0x21, 0x46, 0xcf, 0xff, 0x65, 0x01, 0x66, 0x32, + 0x65, 0x40, 0x2e, 0x30, 0x95, 0xbe, 0x11, 0xd0, 0x48, 0x48, 0x5e, 0xfc, 0x62, 0xf0, 0xb5, 0x30, + 0xec, 0xd0, 0x40, 0xc8, 0x5d, 0xfc, 0x22, 0xaf, 0xc0, 0xc4, 0x36, 0x0d, 0x5c, 0xbf, 0xc9, 0xdf, + 0x1a, 0x70, 0x27, 0xde, 0x09, 0xdb, 0x04, 0x92, 0xcb, 0x30, 0xaa, 0x9c, 0x50, 0xb9, 0x59, 0xd6, + 0x8e, 0x01, 0x8c, 0xf7, 0x92, 0x7b, 0xc0, 0xef, 0x72, 0x18, 0xb1, 0xf8, 0xc5, 0xd6, 0x54, 0x69, + 0x24, 0x1d, 0xe2, 0x6b, 0xaa, 0xb4, 0x80, 0x5e, 0x80, 0xa1, 0xcf, 0x6c, 0x1c, 0x9a, 0x18, 0x0b, + 0xc2, 0x16, 0xbf, 0xc8, 0x24, 0x7a, 0x8b, 0xe3, 0x7b, 0x15, 0xf4, 0x12, 0xff, 0x00, 0xa6, 0xb3, + 0xe4, 0x9a, 0x35, 0xb0, 0x05, 0x6d, 0x51, 0xd1, 0x7e, 0x09, 0x53, 0xd5, 0x66, 0x73, 0xe3, 0x7e, + 0x95, 0xbb, 0x5a, 0x88, 0x5e, 0xe5, 0x53, 0x9f, 0x9b, 0x29, 0x85, 0xa6, 0x3a, 0xb0, 0xe6, 0xb9, + 0x91, 0x3d, 0xb5, 0xfc, 0x8d, 0x1b, 0x46, 0xae, 0x77, 0xa0, 0xd9, 0x52, 0xed, 0x0b, 0x9b, 0xf4, + 0x59, 0xc6, 0x10, 0x60, 0x4a, 0x84, 0xc9, 0x9b, 0xc3, 0x33, 0x98, 0x4f, 0x6b, 0x6c, 0xe3, 0xd5, + 0x68, 0xd6, 0xe4, 0x1b, 0x17, 0xf4, 0x57, 0x1b, 0x4f, 0xac, 0x1f, 0xc0, 0x05, 0xbe, 0x92, 0x77, + 0x6b, 0xbc, 0x68, 0xb6, 0x6e, 0xfa, 0xb5, 0xde, 0x93, 0xc6, 0x99, 0xae, 0x2d, 0xb3, 0xc7, 0x8d, + 0xb6, 0x60, 0x95, 0xff, 0xb1, 0x00, 0x73, 0x09, 0xd2, 0xda, 0x73, 0xaf, 0x21, 0xb7, 0x91, 0xd7, + 0x92, 0xde, 0xf8, 0xa8, 0xfe, 0x70, 0x9b, 0xa7, 0xdb, 0x54, 0x0e, 0xf9, 0xe4, 0x0e, 0x00, 0x27, + 0xd6, 0xb4, 0x16, 0xb4, 0xf8, 0x0b, 0xc7, 0x25, 0xd4, 0x5b, 0x34, 0x14, 0xd2, 0x81, 0x2c, 0xb9, + 0x8b, 0x39, 0xd2, 0xcb, 0x24, 0x8e, 0xf1, 0x4f, 0xa8, 0x20, 0xaf, 0xe7, 0xd8, 0xc6, 0xb3, 0xf8, + 0x5b, 0xff, 0x57, 0x3f, 0xcc, 0xea, 0x1d, 0xf8, 0x22, 0xdf, 0xba, 0x0d, 0x63, 0x8b, 0xbe, 0x17, + 0xd1, 0x6f, 0x22, 0x2d, 0xfe, 0x04, 0x51, 0x0e, 0x06, 0xaa, 0x44, 0x68, 0xcc, 0x1c, 0x50, 0x67, + 0xea, 0x9b, 0xe1, 0x80, 0x19, 0x23, 0x92, 0x45, 0x98, 0xd8, 0xa4, 0xcf, 0x52, 0x02, 0x44, 0x27, + 0x50, 0x8f, 0x3e, 0xab, 0x6b, 0x42, 0xd4, 0x3d, 0xf3, 0x0c, 0x1a, 0xb2, 0x0f, 0x93, 0x72, 0x70, + 0x19, 0xc2, 0x9c, 0xd3, 0x37, 0x53, 0x73, 0x38, 0xf3, 0xf8, 0x0c, 0xac, 0x86, 0x1c, 0x19, 0x26, + 0x38, 0xb2, 0x4f, 0xe7, 0x35, 0xf2, 0x90, 0x03, 0xe6, 0x6e, 0xad, 0x95, 0x18, 0x2e, 0xb6, 0xc9, + 0x50, 0x03, 0x3a, 0x0b, 0x6b, 0x1b, 0xca, 0xe9, 0xfe, 0x10, 0xb5, 0xbd, 0x0d, 0x43, 0x1c, 0x2a, + 0xb4, 0x1f, 0x19, 0x5a, 0x48, 0x61, 0x73, 0xf3, 0x04, 0xaf, 0xc6, 0x16, 0xb8, 0xd6, 0x2a, 0x9a, + 0x8c, 0x14, 0x8e, 0xd2, 0x3f, 0xef, 0x26, 0xbb, 0x17, 0xbd, 0x97, 0x65, 0xf7, 0xea, 0xee, 0x35, + 0xf2, 0x95, 0xc9, 0x22, 0x5a, 0xdd, 0x74, 0x4e, 0xa2, 0x61, 0xb7, 0x60, 0x58, 0x80, 0x12, 0x41, + 0x8f, 0xe2, 0xe9, 0x27, 0x11, 0xac, 0x0f, 0xe0, 0x22, 0x9a, 0x00, 0x5d, 0xef, 0xa0, 0x45, 0x77, + 0x43, 0xe3, 0x9d, 0x48, 0xaf, 0x69, 0xfd, 0x11, 0xcc, 0x65, 0xd1, 0xf6, 0x9c, 0xd9, 0x3c, 0x0c, + 0xc9, 0x9f, 0x17, 0x61, 0x7a, 0x2d, 0xd4, 0x75, 0x28, 0x15, 0x8a, 0x24, 0x23, 0x3c, 0x06, 0xca, + 0x64, 0xb5, 0x2f, 0x2b, 0xfc, 0xc5, 0xdb, 0xda, 0x33, 0xd4, 0x62, 0xb7, 0xb8, 0x17, 0x6c, 0xdb, + 0x52, 0x0f, 0x51, 0x5f, 0x83, 0x81, 0x4d, 0xb6, 0x54, 0xf7, 0x8b, 0xbe, 0xe3, 0x14, 0x0c, 0x84, + 0xcf, 0x40, 0xd9, 0x16, 0xc9, 0x7e, 0x90, 0xfb, 0xa9, 0xc7, 0xa6, 0x03, 0xbd, 0xe3, 0x3a, 0xac, + 0xf6, 0xa5, 0xde, 0x9d, 0xbe, 0x0b, 0x63, 0xd5, 0xe6, 0x11, 0xf7, 0xb2, 0xf4, 0xbd, 0xc4, 0xb4, + 0xd4, 0x4a, 0x56, 0xfb, 0x6c, 0x1d, 0x91, 0x1d, 0xec, 0xab, 0xed, 0x36, 0x6e, 0x54, 0x59, 0xb1, + 0x2e, 0x98, 0xfe, 0x55, 0x6d, 0xb7, 0x17, 0x46, 0x60, 0x68, 0xc7, 0x09, 0x0e, 0x68, 0x64, 0x7d, + 0x09, 0x73, 0xc2, 0x37, 0x87, 0x1b, 0x3c, 0xd1, 0x83, 0x27, 0x8c, 0xdd, 0xaf, 0xba, 0xf9, 0xd3, + 0x5c, 0x05, 0xc0, 0xe3, 0xcd, 0x9a, 0xd7, 0xa4, 0xdf, 0x08, 0xe7, 0x40, 0x0d, 0x62, 0xbd, 0x03, + 0xa3, 0x4a, 0x42, 0xa8, 0xc3, 0x6b, 0x9b, 0x1d, 0x4a, 0x6b, 0xda, 0x78, 0x5d, 0x2b, 0x9f, 0xd4, + 0x5e, 0x34, 0xbe, 0x5d, 0x44, 0xaf, 0xe1, 0x4a, 0xbf, 0x0b, 0x33, 0x89, 0x41, 0x10, 0x07, 0x47, + 0x50, 0x6a, 0x37, 0xf7, 0x5e, 0x54, 0xbf, 0x93, 0x5a, 0x79, 0xf1, 0x54, 0x5a, 0xb9, 0xf5, 0x0f, + 0x8a, 0x78, 0x5e, 0x4c, 0xc9, 0x23, 0x61, 0x7a, 0xd3, 0xcd, 0x7f, 0x0b, 0x30, 0x8a, 0x5f, 0xbf, + 0x24, 0xdf, 0x00, 0x76, 0x77, 0x2d, 0x19, 0xf9, 0xd9, 0x71, 0xa5, 0x0f, 0xfd, 0x49, 0x62, 0x32, + 0xf2, 0x31, 0x0c, 0x2f, 0x7b, 0x4d, 0xe4, 0xd0, 0x7f, 0x06, 0x0e, 0x92, 0x88, 0xf5, 0x09, 0x36, + 0x79, 0x87, 0x4d, 0x61, 0x6e, 0xb1, 0xb1, 0x35, 0x48, 0x7c, 0x70, 0x1d, 0xcc, 0x3b, 0xb8, 0x0e, + 0x25, 0x0e, 0xae, 0x16, 0x0c, 0x6e, 0x05, 0x4d, 0x11, 0x73, 0x66, 0x72, 0x7e, 0x5c, 0x08, 0x0e, + 0x61, 0x36, 0x2f, 0xb2, 0xfe, 0x73, 0x01, 0x66, 0x57, 0x68, 0x94, 0x39, 0x86, 0x0c, 0xa9, 0x14, + 0xbe, 0xb5, 0x54, 0x8a, 0x2f, 0x22, 0x15, 0xf5, 0xd5, 0xfd, 0x79, 0x5f, 0x3d, 0x90, 0xf7, 0xd5, + 0x83, 0xf9, 0x5f, 0xbd, 0x02, 0x43, 0xfc, 0x53, 0xd9, 0xe1, 0x7c, 0x2d, 0xa2, 0x47, 0xf1, 0xe1, + 0x5c, 0x77, 0x8c, 0xb3, 0x79, 0x19, 0x53, 0x24, 0xd7, 0x9d, 0x50, 0x3f, 0x9c, 0x8b, 0x9f, 0xd6, + 0x8f, 0xf1, 0xf5, 0xf0, 0xba, 0xdf, 0x78, 0xa2, 0x19, 0x79, 0x87, 0xf9, 0x0c, 0x4d, 0x5e, 0x0a, + 0x30, 0x2c, 0x5e, 0x62, 0x4b, 0x0c, 0x72, 0x0d, 0xc6, 0xd6, 0xbc, 0xfb, 0x7e, 0xd0, 0xa0, 0x5b, + 0x5e, 0x8b, 0x73, 0x1f, 0xb1, 0x75, 0x90, 0x30, 0x7e, 0x88, 0x1a, 0x62, 0x8b, 0x02, 0x02, 0x12, + 0x16, 0x05, 0x06, 0xdb, 0x9b, 0xb7, 0x79, 0x99, 0xb0, 0xad, 0xb0, 0xbf, 0xbb, 0x1d, 0xc6, 0xd5, + 0xa9, 0xbd, 0x17, 0xe2, 0x3e, 0x5c, 0xb4, 0x69, 0xbb, 0xe5, 0x30, 0x9d, 0xee, 0xc8, 0xe7, 0xf8, + 0xea, 0x9b, 0xaf, 0x65, 0xbc, 0xfc, 0x33, 0xdd, 0x24, 0x54, 0x93, 0x8b, 0x5d, 0x9a, 0x7c, 0x04, + 0xd7, 0x57, 0x68, 0x64, 0x2e, 0xa8, 0xb1, 0x09, 0x59, 0x7c, 0xfc, 0x2a, 0x8c, 0x84, 0xa6, 0xf9, + 0x5b, 0xbe, 0x64, 0xcb, 0x24, 0xdc, 0x7b, 0x4b, 0x5e, 0x10, 0x09, 0x3e, 0xea, 0x2f, 0xeb, 0x13, + 0xa8, 0xe4, 0x55, 0x77, 0x3a, 0x2f, 0x56, 0x17, 0xae, 0xe5, 0x33, 0x10, 0xcd, 0x5d, 0x06, 0x69, + 0x2a, 0x17, 0x53, 0xa8, 0x57, 0x6b, 0x4d, 0xeb, 0xba, 0xf8, 0xc3, 0x5a, 0x90, 0xfe, 0x7c, 0xdf, + 0xa2, 0xb9, 0x75, 0xbc, 0x85, 0x36, 0x19, 0xc4, 0x72, 0xad, 0xc2, 0x88, 0x84, 0x09, 0xb9, 0xce, + 0x66, 0xb6, 0x54, 0x0a, 0xb4, 0x29, 0x19, 0x28, 0x32, 0xeb, 0xc7, 0xf2, 0x46, 0xc6, 0xa4, 0x38, + 0xdd, 0x53, 0xd8, 0xd3, 0x5c, 0xc1, 0x58, 0x3e, 0x5c, 0x34, 0x79, 0xeb, 0x96, 0xf6, 0x92, 0x66, + 0x69, 0xe7, 0x06, 0xf6, 0x6b, 0xa6, 0xe5, 0x57, 0x18, 0x0f, 0x34, 0x10, 0xb9, 0xaa, 0xdb, 0xd3, + 0xc7, 0xd3, 0x6f, 0x6b, 0xef, 0xc2, 0x5c, 0x56, 0x85, 0xda, 0x39, 0x50, 0x19, 0x6d, 0x85, 0xbe, + 0xb3, 0x04, 0x57, 0x65, 0xd4, 0x27, 0xdf, 0x8f, 0xc2, 0x28, 0x70, 0xda, 0xb5, 0x46, 0xe0, 0xb6, + 0x63, 0x2a, 0x0b, 0x86, 0x38, 0x44, 0x48, 0x82, 0xdf, 0x6e, 0x71, 0x1c, 0x51, 0x62, 0xfd, 0x66, + 0x01, 0x2c, 0xc3, 0xf5, 0x0a, 0xfb, 0x79, 0x3b, 0xf0, 0x9f, 0xba, 0x4d, 0xed, 0x46, 0xe9, 0x0d, + 0xc3, 0x9a, 0xc9, 0x9f, 0x19, 0x26, 0xbd, 0xbe, 0xc5, 0x9a, 0x79, 0x37, 0x61, 0x61, 0xe4, 0x8a, + 0x27, 0xba, 0x63, 0x99, 0x6f, 0x1c, 0x94, 0xe5, 0xf1, 0xbf, 0x16, 0xe0, 0x46, 0xd7, 0x36, 0x88, + 0xef, 0xd9, 0x87, 0x52, 0xb2, 0x4c, 0x8c, 0xa0, 0x8a, 0xe6, 0x8a, 0x91, 0xe6, 0xb0, 0x77, 0x8f, + 0xbb, 0x96, 0x4b, 0x97, 0xa5, 0xb6, 0xe2, 0x9c, 0xe2, 0x77, 0xf6, 0xd6, 0x93, 0xf7, 0x01, 0x76, + 0xfc, 0xc8, 0x69, 0x2d, 0xa2, 0x01, 0xa0, 0x3f, 0x7e, 0x26, 0x10, 0x31, 0x68, 0x3d, 0x19, 0xbe, + 0x42, 0x43, 0xb6, 0x3e, 0xc5, 0x79, 0x9d, 0xdd, 0xe8, 0xd3, 0x4d, 0xb5, 0x45, 0xb8, 0x91, 0x70, + 0x07, 0x78, 0x01, 0x26, 0x11, 0xcc, 0x30, 0xf1, 0x33, 0xdd, 0x7b, 0x25, 0xf0, 0x3b, 0xed, 0x5f, + 0x4e, 0xaf, 0xff, 0x49, 0x81, 0xfb, 0x67, 0xea, 0xd5, 0x8a, 0x8e, 0x5e, 0x04, 0x88, 0xa1, 0x09, + 0x3f, 0x7d, 0x55, 0xb0, 0x77, 0x8f, 0x1f, 0xb9, 0xf1, 0xa2, 0xe0, 0x80, 0x33, 0xd0, 0xc8, 0x7e, + 0xb9, 0x3d, 0xf9, 0x16, 0xfa, 0x00, 0xa8, 0xda, 0x4f, 0x27, 0xf7, 0x77, 0xa5, 0xfd, 0xe3, 0x8c, + 0x74, 0x87, 0x30, 0xcd, 0x56, 0x80, 0x6a, 0x27, 0x3a, 0xf4, 0x03, 0x37, 0x92, 0x2f, 0x4e, 0xc8, + 0xb6, 0x78, 0xe4, 0xcf, 0xa9, 0x3e, 0xfa, 0xc5, 0x71, 0xe5, 0xbd, 0xb3, 0xc4, 0xe3, 0x94, 0x3c, + 0x77, 0x54, 0x60, 0x00, 0x6b, 0x16, 0xfa, 0x17, 0xed, 0x75, 0x5c, 0xf0, 0xec, 0x75, 0xb5, 0xe0, + 0xd9, 0xeb, 0xd6, 0x5f, 0x15, 0xa1, 0xc2, 0xc3, 0x90, 0xa0, 0xeb, 0x48, 0x6c, 0xb5, 0xd0, 0x7c, + 0x51, 0x4e, 0x6b, 0x60, 0x48, 0x84, 0x19, 0x29, 0x9e, 0x26, 0xcc, 0xc8, 0xaf, 0x41, 0x8e, 0xc9, + 0xea, 0x14, 0x56, 0x80, 0xd7, 0x4f, 0x8e, 0x2b, 0x37, 0x62, 0x2b, 0x00, 0x2f, 0xcd, 0x32, 0x07, + 0xe4, 0x54, 0x91, 0xb6, 0x5f, 0x0c, 0xbc, 0x80, 0xfd, 0xe2, 0x2e, 0x0c, 0xe3, 0x61, 0x66, 0x6d, + 0x5b, 0x38, 0x73, 0xe2, 0xf0, 0xc4, 0xc8, 0x41, 0x75, 0x57, 0x0f, 0xd3, 0x27, 0xd1, 0xac, 0xdf, + 0x2f, 0xc2, 0xb5, 0x7c, 0x99, 0x8b, 0xb6, 0x2d, 0x01, 0xc4, 0x4e, 0x2b, 0xdd, 0x9c, 0x64, 0x70, + 0xee, 0x3c, 0xa3, 0xfb, 0xca, 0x49, 0x4d, 0xa3, 0x63, 0xba, 0x8f, 0x7c, 0x3c, 0x9d, 0xb8, 0x21, + 0x31, 0xde, 0x54, 0x8b, 0x28, 0xb3, 0x02, 0x64, 0x44, 0x99, 0x15, 0x30, 0xb2, 0x0f, 0xb3, 0xdb, + 0x81, 0xfb, 0xd4, 0x89, 0xe8, 0x43, 0xfa, 0x9c, 0xbf, 0xff, 0x59, 0x16, 0x8f, 0x7e, 0xf8, 0x8b, + 0xf8, 0x9b, 0x27, 0xc7, 0x95, 0x57, 0xda, 0x1c, 0x05, 0x23, 0x89, 0xf1, 0xe7, 0x9c, 0xf5, 0xf4, + 0x3b, 0xa0, 0x3c, 0x46, 0xd6, 0xbf, 0x28, 0xc0, 0x25, 0x54, 0xcb, 0x85, 0xd9, 0x55, 0x56, 0xfe, + 0x42, 0xbe, 0x92, 0xfa, 0x07, 0x8a, 0xb1, 0x88, 0xbe, 0x92, 0xc6, 0xe3, 0x72, 0xdb, 0x40, 0x23, + 0x6b, 0x30, 0x26, 0x7e, 0xe3, 0xfc, 0xeb, 0xc7, 0x03, 0xc1, 0x8c, 0xb6, 0x60, 0xe1, 0x50, 0xe7, + 0xa6, 0x22, 0x1c, 0xd8, 0x82, 0x19, 0xbe, 0xc1, 0xb4, 0x75, 0x5a, 0xeb, 0xe7, 0x45, 0xb8, 0xbc, + 0x47, 0x03, 0xf7, 0xf1, 0xf3, 0x9c, 0x8f, 0xd9, 0x82, 0x69, 0x09, 0xe2, 0xa1, 0x48, 0x8c, 0x29, + 0xc6, 0xe3, 0x4c, 0xca, 0xa6, 0x8a, 0x58, 0x26, 0x72, 0xc6, 0x65, 0x12, 0x9e, 0xc1, 0x0b, 0xf2, + 0x6d, 0x18, 0x49, 0x04, 0x03, 0xc2, 0xfe, 0x97, 0x33, 0x34, 0xee, 0xaa, 0xd5, 0x3e, 0x5b, 0x61, + 0x92, 0xdf, 0xce, 0xbf, 0x7d, 0x12, 0xa6, 0x8f, 0x5e, 0xf6, 0x4f, 0x9c, 0xb0, 0x6c, 0xb2, 0x3a, + 0x5a, 0x69, 0xc6, 0x84, 0x5d, 0xed, 0xb3, 0xf3, 0x6a, 0x5a, 0x18, 0x83, 0xd1, 0x2a, 0x5e, 0xc5, + 0xb1, 0x93, 0xfb, 0x7f, 0x29, 0xc2, 0x55, 0xf9, 0x96, 0x27, 0x47, 0xcc, 0x9f, 0xc3, 0xac, 0x04, + 0x55, 0xdb, 0x4c, 0x61, 0xa0, 0x4d, 0x53, 0xd2, 0x3c, 0xd6, 0xab, 0x94, 0xb4, 0x23, 0x70, 0x62, + 0x61, 0xe7, 0x91, 0xbf, 0x1c, 0xeb, 0xe7, 0xc7, 0x59, 0xa1, 0x99, 0xd0, 0x0a, 0xa9, 0xaf, 0x99, + 0x86, 0x68, 0x8c, 0xf5, 0xb3, 0x99, 0xb2, 0x9e, 0x0e, 0x7c, 0x5b, 0xeb, 0xe9, 0x6a, 0x5f, 0xd2, + 0x7e, 0xba, 0x30, 0x09, 0xe3, 0x9b, 0xf4, 0x59, 0x2c, 0xf7, 0xff, 0xb5, 0x90, 0x88, 0xde, 0xc0, + 0x34, 0x0c, 0x1e, 0xc6, 0xa1, 0x10, 0x47, 0xf7, 0xc1, 0xe8, 0x0d, 0xba, 0x86, 0xc1, 0x51, 0xd7, + 0x60, 0x98, 0xdf, 0x4f, 0x37, 0x4f, 0x71, 0xc2, 0x57, 0x8f, 0x72, 0xf8, 0x4b, 0xc9, 0x26, 0x3f, + 0xec, 0x0b, 0x7a, 0xeb, 0x21, 0x5c, 0x17, 0x6e, 0xdb, 0x66, 0xe7, 0x63, 0x45, 0x67, 0xdc, 0xbe, + 0x2c, 0x07, 0xae, 0xae, 0xd0, 0xe4, 0xd2, 0x63, 0x3c, 0x5a, 0xfa, 0x04, 0xce, 0x19, 0x70, 0xc5, + 0x11, 0xb5, 0x52, 0x35, 0x86, 0x14, 0xeb, 0x24, 0xb6, 0x75, 0x2d, 0xab, 0x0a, 0xbd, 0xb1, 0x16, + 0xc5, 0xa0, 0xad, 0x41, 0x7c, 0xc5, 0x16, 0x9e, 0x61, 0xd5, 0xbb, 0xa9, 0xcd, 0x6b, 0xbe, 0xe2, + 0xf1, 0xa8, 0x7e, 0x72, 0xe7, 0x55, 0xa5, 0xd6, 0x84, 0x71, 0x17, 0x60, 0x4d, 0xc2, 0xb8, 0x2c, + 0x6a, 0xd1, 0x30, 0xb4, 0xfe, 0xdd, 0x20, 0x58, 0x42, 0xb0, 0x59, 0x97, 0xee, 0x52, 0x1e, 0xfb, + 0xa9, 0xc6, 0x8a, 0x8d, 0xea, 0x82, 0x1e, 0x2b, 0x34, 0x2e, 0xe5, 0x23, 0x0f, 0xf5, 0xbc, 0x46, + 0x0c, 0x35, 0x46, 0x5e, 0xea, 0xeb, 0xbf, 0xca, 0x59, 0x26, 0xf9, 0x64, 0xc3, 0x57, 0xd8, 0x39, + 0xcb, 0xa4, 0xc1, 0x37, 0x7b, 0xc9, 0xb4, 0xcd, 0x2b, 0x91, 0xfe, 0x17, 0xb9, 0x12, 0x61, 0x33, + 0x52, 0xbf, 0x14, 0xd9, 0x35, 0x65, 0x29, 0xe6, 0xa3, 0xbc, 0x90, 0xd7, 0x8b, 0x44, 0x10, 0x05, + 0x0d, 0x62, 0x70, 0x35, 0xd8, 0x10, 0x17, 0x4a, 0x9a, 0xcd, 0x72, 0xf1, 0x90, 0x36, 0x9e, 0x08, + 0x5b, 0xb1, 0xbc, 0xd0, 0xcd, 0xb2, 0x99, 0xf3, 0xb8, 0xd1, 0x7c, 0x9e, 0xf3, 0x82, 0x7a, 0x83, + 0x91, 0xea, 0x41, 0x20, 0x92, 0x6c, 0xc9, 0x4f, 0x61, 0x4a, 0x75, 0x75, 0xc2, 0xeb, 0x6a, 0x6c, + 0xfe, 0x95, 0x38, 0xc4, 0xe8, 0xd1, 0x63, 0xe7, 0xf6, 0xd3, 0x7b, 0xb7, 0x33, 0x70, 0x79, 0x6c, + 0x81, 0x86, 0x2c, 0xd0, 0x5c, 0xae, 0xf4, 0x8b, 0xae, 0x0c, 0x42, 0xf2, 0x05, 0x4c, 0xd7, 0x6a, + 0x5b, 0xfc, 0x7d, 0x86, 0x2d, 0xef, 0xec, 0xed, 0x75, 0xe1, 0x83, 0x85, 0xdd, 0x1d, 0x86, 0x7e, + 0x5d, 0xbc, 0xeb, 0xd0, 0x6f, 0xfa, 0xf5, 0xe8, 0x0a, 0x59, 0x2c, 0xf4, 0x9b, 0xf2, 0xff, 0x47, + 0x3d, 0x3f, 0x60, 0xaa, 0x88, 0xdb, 0xa2, 0xe2, 0x1d, 0x91, 0x1c, 0xd8, 0x39, 0xb7, 0x7c, 0x85, + 0xef, 0xf8, 0x96, 0xef, 0x1f, 0x15, 0xe5, 0xa3, 0x8b, 0xf4, 0x45, 0xeb, 0x99, 0x2f, 0xfb, 0x32, + 0xbf, 0xe0, 0x54, 0xfb, 0x74, 0x66, 0xe3, 0xc8, 0x82, 0xbc, 0x2a, 0x55, 0xf1, 0xc7, 0x26, 0xd5, + 0xb5, 0x43, 0x5c, 0x60, 0xdc, 0x9e, 0xa2, 0x56, 0xa4, 0x51, 0x25, 0xef, 0xe1, 0xfa, 0xbf, 0xfd, + 0x3d, 0xdc, 0x3f, 0x19, 0x85, 0xf3, 0xdb, 0xce, 0x81, 0xeb, 0xb1, 0xfd, 0xc0, 0xa6, 0xa1, 0xdf, + 0x09, 0x1a, 0x94, 0x54, 0x61, 0xd2, 0xf4, 0xa8, 0xed, 0xe1, 0x2f, 0xcc, 0xb6, 0x3c, 0x13, 0x46, + 0xe6, 0x61, 0x54, 0xbd, 0xe2, 0x15, 0xfb, 0x54, 0xc6, 0xeb, 0xde, 0xd5, 0x3e, 0x3b, 0x46, 0x23, + 0xef, 0x1b, 0x57, 0x47, 0xe7, 0xd4, 0x83, 0x74, 0xc4, 0x9d, 0xe7, 0x2e, 0x8f, 0x9e, 0xdf, 0x34, + 0xf7, 0x5a, 0x7e, 0x3f, 0xf2, 0xe3, 0xd4, 0x6d, 0xd2, 0xa0, 0xd1, 0xe2, 0x94, 0x49, 0x0d, 0xd5, + 0x8c, 0xdc, 0x98, 0xe0, 0x19, 0xf7, 0x4c, 0x5f, 0xc2, 0xd8, 0xc3, 0xce, 0x3e, 0x95, 0xf7, 0x66, + 0x43, 0x62, 0xeb, 0x4d, 0xfa, 0x89, 0x8b, 0xf2, 0xbd, 0xb7, 0x78, 0x1f, 0x3c, 0xe9, 0xec, 0xd3, + 0x74, 0xb0, 0x79, 0xb6, 0xe6, 0x69, 0xcc, 0xc8, 0x21, 0x94, 0x92, 0x2e, 0xdd, 0x22, 0x62, 0x5f, + 0x17, 0x47, 0x74, 0x8c, 0xbc, 0xa2, 0x85, 0xb4, 0xe7, 0x8e, 0xa6, 0x46, 0x25, 0x29, 0xae, 0xe4, + 0xd7, 0x61, 0x26, 0xd3, 0xa0, 0xa9, 0x1e, 0xa5, 0x75, 0xb7, 0x95, 0xe2, 0x02, 0x92, 0x90, 0x9a, + 0x7c, 0x01, 0x67, 0xd4, 0x9c, 0x5d, 0x0b, 0x69, 0xc2, 0xb9, 0x84, 0xab, 0xb2, 0xc8, 0xdb, 0x91, + 0xef, 0xfc, 0x8c, 0x7b, 0x9e, 0x0c, 0x7d, 0x9b, 0x59, 0x57, 0x92, 0x25, 0x59, 0x87, 0x51, 0x65, + 0x49, 0x10, 0xc1, 0xd2, 0xb2, 0xac, 0x26, 0xe5, 0x93, 0xe3, 0xca, 0x74, 0x6c, 0x35, 0x31, 0x78, + 0xc6, 0x0c, 0xc8, 0x6f, 0xc0, 0x75, 0x35, 0x44, 0xb7, 0x82, 0x6c, 0xfb, 0x92, 0x08, 0x99, 0x7f, + 0x2b, 0x39, 0xc2, 0xf3, 0xf0, 0xf7, 0xee, 0x2d, 0x14, 0xcb, 0x85, 0xd5, 0x3e, 0xbb, 0x37, 0x6b, + 0xf2, 0x5b, 0x05, 0xb8, 0x90, 0x53, 0xeb, 0x38, 0xd6, 0xda, 0xd3, 0xe8, 0x87, 0xe7, 0x06, 0x7c, + 0x88, 0xe5, 0x36, 0xe3, 0x07, 0x8b, 0xd2, 0xfa, 0x67, 0x7c, 0x77, 0x4e, 0x4d, 0xe4, 0x4d, 0x18, + 0xc2, 0xe3, 0x77, 0x58, 0x9e, 0x40, 0x05, 0x15, 0x03, 0x0e, 0xe1, 0x21, 0x5d, 0xdf, 0x92, 0x04, + 0x0e, 0x59, 0x65, 0x8a, 0x1e, 0x6e, 0x89, 0x52, 0x31, 0x13, 0xe1, 0xc9, 0xc4, 0x61, 0x81, 0x17, + 0xc9, 0xb8, 0x21, 0x46, 0x6e, 0x04, 0x93, 0x6c, 0x01, 0x60, 0x24, 0x10, 0xab, 0xd2, 0x83, 0x81, + 0x91, 0x81, 0xd2, 0x20, 0x9f, 0x38, 0xd2, 0x07, 0xfe, 0x77, 0x46, 0xf8, 0x83, 0xd9, 0x5d, 0xcf, + 0x7d, 0xec, 0xc6, 0x0b, 0x98, 0x6e, 0xb8, 0x8b, 0x93, 0x14, 0x09, 0xb5, 0x3a, 0x27, 0x1d, 0x91, + 0xb2, 0xf1, 0x15, 0x7b, 0xda, 0xf8, 0xde, 0xd2, 0x6e, 0xc3, 0xb4, 0x30, 0xa4, 0x5c, 0x7d, 0x32, + 0x6d, 0x6a, 0xf1, 0x35, 0xd9, 0xd7, 0x30, 0x84, 0x91, 0x43, 0xf9, 0x55, 0xe3, 0xd8, 0xfc, 0x6d, + 0xb1, 0x6c, 0x77, 0x69, 0x3e, 0x0f, 0x35, 0x2a, 0x1e, 0xc1, 0x73, 0x89, 0x23, 0xc0, 0x90, 0x38, + 0x42, 0xc8, 0x0e, 0x4c, 0x6d, 0xb3, 0xdd, 0x9c, 0x7b, 0x62, 0xb7, 0x03, 0x61, 0xf7, 0xe0, 0x16, + 0x15, 0xd4, 0x26, 0xda, 0xb2, 0xb8, 0x4e, 0x55, 0xb9, 0xbe, 0xa1, 0x66, 0x90, 0x93, 0x65, 0x98, + 0xac, 0x51, 0x27, 0x68, 0x1c, 0x3e, 0xa4, 0xcf, 0x99, 0x26, 0x65, 0xe4, 0xe5, 0x08, 0xb1, 0x84, + 0x7d, 0x2f, 0x16, 0xe9, 0xee, 0x23, 0x26, 0x11, 0xf9, 0x14, 0x86, 0x6a, 0x7e, 0x10, 0x2d, 0x3c, + 0x17, 0x8b, 0x9a, 0xbc, 0x8c, 0xe2, 0xc0, 0x85, 0x8b, 0x32, 0x37, 0x49, 0xe8, 0x07, 0x51, 0x7d, + 0xdf, 0x88, 0x60, 0xc5, 0x51, 0xc8, 0x73, 0x98, 0x36, 0x17, 0x14, 0xe1, 0x20, 0x3c, 0x22, 0x34, + 0xb8, 0xac, 0x55, 0x8b, 0xa3, 0x2c, 0xdc, 0x14, 0xdc, 0xaf, 0x25, 0x97, 0xad, 0xc7, 0x58, 0xae, + 0xab, 0x3d, 0x59, 0xf4, 0x64, 0x03, 0x93, 0xba, 0xf0, 0x2f, 0xaa, 0x86, 0xdc, 0xb1, 0x78, 0x34, + 0x8e, 0x91, 0xd6, 0xc1, 0x45, 0x09, 0x25, 0xe1, 0x84, 0xc9, 0x4c, 0x40, 0x76, 0x8a, 0x94, 0x6c, + 0xc3, 0xf9, 0xdd, 0x90, 0x6e, 0x07, 0xf4, 0xa9, 0x4b, 0x9f, 0x49, 0x7e, 0x10, 0x07, 0x94, 0x62, + 0xfc, 0xda, 0xbc, 0x34, 0x8b, 0x61, 0x9a, 0x98, 0xbc, 0x0f, 0xb0, 0xed, 0x7a, 0x1e, 0x6d, 0xe2, + 0x8d, 0xe6, 0x18, 0xb2, 0x42, 0x6b, 0x6d, 0x1b, 0xa1, 0x75, 0xdf, 0x6b, 0xe9, 0x22, 0xd5, 0x90, + 0xc9, 0x02, 0x4c, 0xac, 0x79, 0x8d, 0x56, 0x47, 0x78, 0x1e, 0x84, 0xb8, 0xa0, 0x88, 0x40, 0x77, + 0x2e, 0x2f, 0xa8, 0xa7, 0x26, 0xb9, 0x49, 0x42, 0x1e, 0x02, 0x11, 0x00, 0x31, 0x6a, 0x9d, 0xfd, + 0x16, 0x15, 0xd3, 0x1d, 0xad, 0x30, 0x92, 0x11, 0x0e, 0x77, 0x23, 0x7e, 0x5c, 0x8a, 0x6c, 0xee, + 0x7d, 0x18, 0xd3, 0xc6, 0x7c, 0x46, 0x54, 0x87, 0x69, 0x3d, 0xaa, 0xc3, 0xa8, 0x1e, 0xbd, 0xe1, + 0xef, 0x14, 0xe0, 0x72, 0xf6, 0x5c, 0x12, 0x0a, 0xd8, 0x16, 0x8c, 0x2a, 0xa0, 0x7a, 0xc7, 0x23, + 0x4f, 0x15, 0x09, 0x0d, 0x88, 0x4f, 0x68, 0xb9, 0xf2, 0xe8, 0x5f, 0x1f, 0xf3, 0x78, 0x01, 0x53, + 0xff, 0xff, 0x3e, 0x02, 0xd3, 0xe8, 0xaf, 0x9e, 0x5c, 0xa7, 0x3e, 0xc1, 0xe8, 0x2c, 0x08, 0xd3, + 0x2c, 0xd7, 0xc2, 0x88, 0xc5, 0xe1, 0xc9, 0x38, 0x65, 0x06, 0x01, 0x79, 0x47, 0x77, 0xb7, 0x28, + 0x6a, 0x49, 0x64, 0x24, 0x50, 0xff, 0x84, 0xd8, 0x0f, 0xe3, 0x0d, 0xe3, 0xb6, 0xff, 0xd4, 0x8b, + 0xde, 0xc0, 0x69, 0x17, 0xbd, 0x5d, 0xb5, 0xe8, 0xf1, 0xa8, 0x1f, 0xaf, 0x6b, 0x8b, 0xde, 0xcb, + 0x5f, 0xed, 0x86, 0x5e, 0xf6, 0x6a, 0x37, 0xfc, 0xed, 0x56, 0xbb, 0x91, 0x17, 0x5c, 0xed, 0xee, + 0xc3, 0xe4, 0x26, 0xa5, 0x4d, 0xed, 0x0e, 0x66, 0x34, 0xde, 0x3d, 0x3d, 0x8a, 0xd6, 0xb5, 0xac, + 0x8b, 0x98, 0x04, 0x55, 0xee, 0xaa, 0x09, 0x7f, 0x33, 0xab, 0xe6, 0xd8, 0x4b, 0x5e, 0x35, 0xc7, + 0xbf, 0xcd, 0xaa, 0x99, 0x5a, 0xfa, 0x26, 0xce, 0xbc, 0xf4, 0x7d, 0x9b, 0xd5, 0xea, 0x63, 0xf4, + 0x56, 0xac, 0xd5, 0x56, 0x85, 0x63, 0x8a, 0xe6, 0x09, 0xb2, 0xea, 0x87, 0xd2, 0x99, 0x1b, 0xff, + 0x66, 0xb0, 0x6d, 0x3f, 0x90, 0xb7, 0xe9, 0xf8, 0xb7, 0xb5, 0x80, 0x3e, 0x8a, 0x3a, 0xbd, 0x7a, + 0xc7, 0x30, 0x2c, 0x1e, 0x41, 0x8a, 0x35, 0x2e, 0x79, 0x8c, 0xb2, 0x65, 0xb9, 0xf5, 0xe7, 0x05, + 0x7e, 0xdf, 0xf9, 0x3f, 0xe2, 0x52, 0xf9, 0x6d, 0xee, 0x20, 0x7f, 0x3b, 0x0e, 0x8e, 0x20, 0x02, + 0x39, 0x04, 0x4e, 0xe3, 0x49, 0x7c, 0x09, 0xfc, 0x23, 0x36, 0xcf, 0xf5, 0x02, 0x8c, 0x83, 0x1b, + 0x9f, 0x15, 0xcd, 0xc2, 0xbd, 0x7b, 0x72, 0x01, 0x10, 0x31, 0x22, 0x38, 0xd8, 0x5c, 0x00, 0x74, + 0x02, 0x74, 0xc3, 0x3b, 0x67, 0xd9, 0xfc, 0x6d, 0x7f, 0x66, 0x0b, 0xde, 0x4d, 0xbf, 0x4e, 0xc7, + 0xc3, 0x48, 0xfc, 0x3a, 0x5d, 0x17, 0x63, 0xfc, 0x4e, 0x7d, 0x17, 0x2e, 0xd9, 0xf4, 0xc8, 0x7f, + 0x4a, 0x5f, 0x2e, 0xdb, 0xaf, 0xe0, 0xa2, 0xc9, 0x90, 0xbf, 0x63, 0xe2, 0x41, 0xf7, 0x3f, 0xce, + 0x0e, 0xd5, 0x2f, 0x08, 0x78, 0xa8, 0x7e, 0x1e, 0xf1, 0x9b, 0xfd, 0xa9, 0xef, 0x1b, 0x58, 0x66, + 0xf9, 0x70, 0xd9, 0x64, 0x5e, 0x6d, 0x36, 0x31, 0x65, 0x67, 0xc3, 0x6d, 0x3b, 0x5e, 0x44, 0xb6, + 0x60, 0x4c, 0xfb, 0x99, 0x30, 0x15, 0x68, 0x25, 0x42, 0xa7, 0x89, 0x01, 0x46, 0xc4, 0xd4, 0x18, + 0x6c, 0x51, 0xa8, 0x24, 0xc5, 0xc3, 0x44, 0xa6, 0xd7, 0xb9, 0x00, 0x13, 0xda, 0x4f, 0x65, 0x0d, + 0xc5, 0xc9, 0xaf, 0xd5, 0x60, 0x0a, 0xcc, 0x24, 0xb1, 0x1a, 0x30, 0x97, 0x25, 0x34, 0x1e, 0x5a, + 0x9b, 0x2c, 0xc7, 0x91, 0xb3, 0x7a, 0x3b, 0xf2, 0x9d, 0xcb, 0x8b, 0x9a, 0x65, 0xfd, 0xdf, 0x03, + 0x70, 0x49, 0x74, 0xc6, 0xcb, 0xec, 0x71, 0xf2, 0x63, 0x18, 0xd3, 0xfa, 0x58, 0x08, 0xfd, 0x9a, + 0x7c, 0x85, 0x94, 0x37, 0x16, 0xb8, 0x49, 0xa3, 0x83, 0x80, 0x7a, 0xa2, 0xbb, 0x57, 0xfb, 0x6c, + 0x9d, 0x25, 0x69, 0xc1, 0xa4, 0xd9, 0xd1, 0xc2, 0xaa, 0x73, 0x23, 0xb3, 0x12, 0x13, 0x55, 0xc6, + 0xdd, 0x6e, 0xd6, 0x33, 0xbb, 0x7b, 0xb5, 0xcf, 0x4e, 0xf0, 0x26, 0xdf, 0xc0, 0xf9, 0x54, 0x2f, + 0x0b, 0x63, 0xdd, 0x6b, 0x99, 0x15, 0xa6, 0xb0, 0xb9, 0xa5, 0x37, 0x40, 0x70, 0x6e, 0xb5, 0xe9, + 0x4a, 0x48, 0x13, 0xc6, 0xf5, 0x8e, 0x17, 0x66, 0xa7, 0xeb, 0x5d, 0x44, 0xc9, 0x11, 0xb9, 0x72, + 0x27, 0x64, 0x89, 0x7d, 0xff, 0xdc, 0xb4, 0x5e, 0x1b, 0xc8, 0x23, 0x30, 0xc4, 0x7f, 0xb3, 0x25, + 0x60, 0x3b, 0xa0, 0x21, 0xf5, 0x1a, 0xd4, 0xf0, 0xfd, 0xfe, 0x96, 0x4b, 0xc0, 0x3f, 0x2f, 0x40, + 0x39, 0x8b, 0x6f, 0x8d, 0x7a, 0x4d, 0xb2, 0x0d, 0xa5, 0x64, 0x45, 0x62, 0x54, 0x5b, 0x2a, 0xb4, + 0x71, 0x6e, 0x93, 0x56, 0xfb, 0xec, 0x14, 0x35, 0xd9, 0x84, 0xf3, 0x1a, 0x4c, 0x18, 0x57, 0x8b, + 0xa7, 0x31, 0xae, 0xb2, 0x5e, 0x48, 0x91, 0xea, 0xb6, 0xe9, 0x55, 0xdc, 0x19, 0x97, 0xfc, 0x23, + 0xc7, 0xf5, 0x98, 0xa2, 0xab, 0x05, 0xcf, 0x82, 0x18, 0x2a, 0x64, 0xc3, 0xad, 0xad, 0x08, 0x95, + 0x6f, 0x55, 0x14, 0x8a, 0xf5, 0x11, 0xae, 0xe0, 0xc2, 0x46, 0xc7, 0x1f, 0xfc, 0x2a, 0x66, 0xd7, + 0x60, 0x70, 0x67, 0xbd, 0xb6, 0x58, 0x15, 0xcf, 0x87, 0x79, 0xd0, 0x89, 0x56, 0x58, 0x6f, 0x38, + 0x36, 0x2f, 0xb0, 0x3e, 0x04, 0xb2, 0x42, 0x23, 0x11, 0x5b, 0x5f, 0xd1, 0xbd, 0x0a, 0xc3, 0x02, + 0x24, 0x28, 0xd1, 0xeb, 0x4e, 0x44, 0xea, 0xb7, 0x65, 0x99, 0xb5, 0x2d, 0xcf, 0x09, 0x2d, 0xea, + 0x84, 0xda, 0xc6, 0xfc, 0x1e, 0x8c, 0x04, 0x02, 0x26, 0xf6, 0xe5, 0x49, 0x95, 0x3a, 0x05, 0xc1, + 0xdc, 0x9e, 0x2d, 0x71, 0x6c, 0xf5, 0x97, 0xb5, 0x8e, 0x01, 0x62, 0xb6, 0xd6, 0x96, 0x16, 0x99, + 0x54, 0x85, 0xb0, 0x64, 0x77, 0xdc, 0x41, 0xf7, 0xf4, 0x88, 0xea, 0x8f, 0x87, 0x51, 0x34, 0x38, + 0xc9, 0x45, 0x58, 0x24, 0x0d, 0xc5, 0x7a, 0x4b, 0x85, 0x9b, 0xc9, 0xe0, 0x96, 0x97, 0x02, 0x64, + 0x13, 0x03, 0xe9, 0xac, 0xa0, 0x27, 0xce, 0xcb, 0x68, 0x84, 0x03, 0x73, 0x7c, 0x9b, 0x67, 0x5f, + 0x25, 0xb2, 0x18, 0xfa, 0x6a, 0x69, 0x5c, 0x84, 0x51, 0x05, 0x53, 0xd7, 0x6a, 0x5c, 0x56, 0x06, + 0xfe, 0xde, 0x5b, 0xfc, 0x9d, 0x75, 0x43, 0x31, 0x88, 0xe9, 0x58, 0x15, 0x7c, 0xde, 0x7d, 0xc7, + 0x55, 0x84, 0x34, 0x88, 0xbe, 0xd3, 0x2a, 0xe2, 0x48, 0x4b, 0x67, 0xa9, 0xc2, 0xc0, 0xdf, 0x9b, + 0x3f, 0x8d, 0xa0, 0xbe, 0xe3, 0x2a, 0x98, 0xa0, 0xbe, 0xbb, 0x2a, 0xa8, 0x0c, 0x49, 0xc5, 0x07, + 0x69, 0xaa, 0x92, 0xe5, 0x74, 0x25, 0xd2, 0x70, 0x9d, 0xa0, 0xe8, 0xda, 0x1f, 0x14, 0x2e, 0x73, + 0x61, 0xfd, 0x12, 0xaa, 0x61, 0x02, 0xfb, 0x6e, 0xab, 0xf9, 0xff, 0x0a, 0x3c, 0x40, 0x56, 0x6d, + 0x4b, 0xcb, 0x1f, 0xea, 0x3d, 0xf6, 0xb5, 0x5b, 0x7f, 0x6d, 0xb6, 0x3f, 0x74, 0xbd, 0xa6, 0x7e, + 0xeb, 0xef, 0x74, 0xa2, 0x43, 0x15, 0x40, 0xfa, 0x89, 0xeb, 0x35, 0xed, 0x24, 0x36, 0x79, 0x1f, + 0x26, 0x34, 0x90, 0xd2, 0xd6, 0x78, 0x8a, 0x0f, 0x9d, 0xdc, 0x6d, 0xda, 0x26, 0xa6, 0xf5, 0xd7, + 0x05, 0x98, 0xca, 0xc8, 0x6c, 0x8d, 0xc6, 0x0c, 0x3c, 0x05, 0xa9, 0x85, 0x4a, 0x24, 0xe5, 0xc2, + 0x58, 0x1d, 0xc6, 0x26, 0xa9, 0x10, 0x31, 0xb9, 0x81, 0x96, 0x85, 0xbb, 0xa8, 0xe5, 0x8b, 0xcb, + 0xce, 0xbc, 0xad, 0xa3, 0x93, 0x10, 0x20, 0x6e, 0x89, 0x30, 0x1b, 0xd7, 0x98, 0x4a, 0xab, 0xa5, + 0xf0, 0x7e, 0x29, 0x39, 0xc4, 0xb5, 0x6a, 0xac, 0xdf, 0x2e, 0xc2, 0x85, 0x8c, 0xef, 0xaf, 0xd1, + 0xe8, 0x6f, 0x42, 0x04, 0x89, 0x44, 0xea, 0xfd, 0xbf, 0xa4, 0x44, 0xea, 0xd6, 0xbf, 0x29, 0xc2, + 0x85, 0xdd, 0x76, 0x88, 0x8f, 0xb7, 0xd6, 0xbc, 0xa7, 0xd4, 0x8b, 0xfc, 0xe0, 0x39, 0x3e, 0x38, + 0x21, 0xef, 0xc0, 0xe0, 0x2a, 0x6d, 0xb5, 0x7c, 0x31, 0xfe, 0xaf, 0x48, 0xc7, 0x8b, 0x24, 0x36, + 0x22, 0xad, 0xf6, 0xd9, 0x1c, 0x9b, 0xbc, 0x0f, 0xa3, 0xab, 0xd4, 0x09, 0xa2, 0x7d, 0xea, 0xc8, + 0x23, 0x8b, 0x4c, 0x3c, 0xa2, 0x91, 0x08, 0x84, 0xd5, 0x3e, 0x3b, 0xc6, 0x26, 0xf3, 0xec, 0x34, + 0xef, 0x1d, 0xa8, 0x87, 0xea, 0x39, 0x15, 0x32, 0x9c, 0xd5, 0x3e, 0x1b, 0x71, 0xc9, 0x06, 0x4c, + 0x54, 0x0f, 0xa8, 0x17, 0x6d, 0xd0, 0xc8, 0x69, 0x3a, 0x91, 0x23, 0x54, 0xdb, 0x57, 0xf3, 0x88, + 0x0d, 0xe4, 0xd5, 0x3e, 0xdb, 0xa4, 0x26, 0x1f, 0xc2, 0xf0, 0x8a, 0xef, 0x37, 0xf7, 0x9f, 0xcb, + 0x08, 0x0a, 0x95, 0x3c, 0x46, 0x02, 0x6d, 0xb5, 0xcf, 0x96, 0x14, 0x0b, 0x83, 0xd0, 0xbf, 0x11, + 0x1e, 0x58, 0xc7, 0x05, 0x28, 0x2f, 0xf9, 0xcf, 0xbc, 0x4c, 0xa9, 0xfe, 0xc0, 0x94, 0xaa, 0x64, + 0x9f, 0x81, 0x9f, 0x90, 0xeb, 0xdb, 0x30, 0xb0, 0xed, 0x7a, 0x07, 0x09, 0x55, 0x30, 0x83, 0x8e, + 0x61, 0xa1, 0x78, 0x5c, 0xef, 0x80, 0xac, 0x4b, 0x1d, 0x5c, 0xd8, 0x1a, 0xfb, 0x0d, 0xc5, 0x3f, + 0x83, 0x5a, 0xc7, 0x8e, 0x75, 0x6d, 0xfe, 0x5b, 0x7e, 0xe0, 0x1b, 0x30, 0x9b, 0x53, 0xaf, 0x78, + 0x79, 0xce, 0xbe, 0x6d, 0x00, 0x15, 0x9b, 0xd7, 0x61, 0x26, 0xb3, 0xff, 0x52, 0x88, 0x7f, 0x3f, + 0x6b, 0x20, 0xf2, 0x2f, 0x2f, 0xc3, 0xb0, 0xcc, 0xc8, 0xc5, 0x6d, 0x3f, 0xf2, 0x27, 0xbe, 0xbd, + 0x92, 0x13, 0x55, 0x86, 0x4a, 0x91, 0xf3, 0x71, 0x4f, 0x0b, 0x4d, 0xc5, 0xa7, 0xd3, 0x07, 0xdf, + 0x62, 0xd2, 0x28, 0x5e, 0xac, 0xce, 0x55, 0x3f, 0x8c, 0x3c, 0xe5, 0xd4, 0x6b, 0xab, 0xdf, 0xe4, + 0x16, 0x94, 0x64, 0xf6, 0x0d, 0x91, 0xe6, 0x47, 0xa4, 0x7d, 0xb7, 0x53, 0x70, 0xf2, 0x1e, 0xcc, + 0x26, 0x61, 0xf2, 0x2b, 0xf9, 0xe3, 0xb9, 0xbc, 0x62, 0xeb, 0xcf, 0x8a, 0x18, 0x3d, 0xbc, 0xcb, + 0xb8, 0x66, 0xd2, 0xdd, 0xaa, 0x09, 0x69, 0x15, 0xb7, 0x6a, 0xe4, 0x32, 0x8c, 0x6e, 0xd5, 0x8c, + 0xb4, 0x66, 0x76, 0x0c, 0x60, 0xcd, 0x66, 0x9f, 0x50, 0x0d, 0x1a, 0x87, 0x6e, 0x44, 0x1b, 0x51, + 0x27, 0x10, 0xab, 0xb0, 0x9d, 0x82, 0x13, 0x0b, 0xc6, 0x57, 0x5a, 0xee, 0x7e, 0x43, 0x32, 0xe3, + 0x22, 0x30, 0x60, 0xe4, 0x35, 0x98, 0x5c, 0xf3, 0xc2, 0xc8, 0x69, 0xb5, 0x36, 0x68, 0x74, 0xe8, + 0x37, 0x45, 0xe6, 0x55, 0x3b, 0x01, 0x65, 0xf5, 0x2e, 0xfa, 0x5e, 0xe4, 0xb8, 0x1e, 0x0d, 0xec, + 0x8e, 0x17, 0xb9, 0x47, 0x54, 0x7c, 0x7b, 0x0a, 0x4e, 0xde, 0x86, 0x19, 0x05, 0xdb, 0x0a, 0x1a, + 0x87, 0x34, 0x8c, 0x02, 0x4c, 0x76, 0x88, 0xee, 0x3b, 0x76, 0x76, 0x21, 0xd6, 0xd0, 0xf2, 0x3b, + 0xcd, 0x65, 0xef, 0xa9, 0x1b, 0xf8, 0x1e, 0xa6, 0x12, 0x19, 0x11, 0x35, 0x24, 0xe0, 0xd6, 0x1f, + 0x8e, 0x64, 0x4e, 0xdb, 0x6f, 0x33, 0x06, 0xbf, 0x80, 0xf1, 0x45, 0xa7, 0xed, 0xec, 0xbb, 0x2d, + 0x37, 0x72, 0x55, 0x56, 0xb8, 0x77, 0x7a, 0xcc, 0x79, 0x99, 0x8f, 0x85, 0x36, 0x75, 0x62, 0xdb, + 0x60, 0x35, 0xf7, 0x57, 0x43, 0x30, 0x93, 0x89, 0x47, 0x6e, 0x8a, 0xf4, 0x71, 0x6a, 0x5d, 0x15, + 0xb9, 0xc9, 0xec, 0x24, 0x98, 0xf5, 0x25, 0x82, 0x16, 0x5b, 0xd4, 0xf1, 0x3a, 0x22, 0x33, 0x99, + 0x6d, 0xc0, 0x58, 0x5f, 0x32, 0xbd, 0x41, 0x63, 0x86, 0x3e, 0xd9, 0x76, 0x02, 0x4a, 0xae, 0xc1, + 0x18, 0x83, 0x48, 0x56, 0x03, 0xfc, 0xf5, 0xa0, 0x06, 0x62, 0x9c, 0x36, 0xfd, 0x26, 0xd5, 0x38, + 0x0d, 0x72, 0x4e, 0x26, 0x94, 0x71, 0x62, 0x10, 0xc9, 0x69, 0x88, 0x73, 0xd2, 0x40, 0xe4, 0x15, + 0x98, 0xa8, 0xb6, 0xdb, 0x1a, 0x23, 0x4c, 0x49, 0x66, 0x9b, 0x40, 0x72, 0x15, 0xa0, 0xda, 0x6e, + 0x4b, 0x36, 0x98, 0x6e, 0xcc, 0xd6, 0x20, 0xe4, 0x76, 0x1c, 0x00, 0x4e, 0x63, 0x85, 0xd7, 0x09, + 0x76, 0x46, 0x09, 0x93, 0xab, 0x8a, 0x96, 0x25, 0x98, 0x02, 0x97, 0x6b, 0x02, 0x4c, 0x3e, 0x82, + 0x8b, 0x09, 0xbf, 0x0b, 0xad, 0x02, 0x34, 0xf5, 0xdb, 0xf9, 0x08, 0xe4, 0x5d, 0xb8, 0x90, 0x28, + 0x94, 0xd5, 0xa1, 0x55, 0xdf, 0xce, 0x29, 0x25, 0x1f, 0x40, 0x39, 0xf1, 0x22, 0x3c, 0xae, 0x14, + 0x2d, 0xf8, 0x76, 0x6e, 0x39, 0x9b, 0x5d, 0x89, 0xa7, 0x65, 0xa2, 0x4a, 0xbc, 0xac, 0xb4, 0xb3, + 0x0b, 0xc9, 0x2a, 0x54, 0x32, 0x7d, 0x59, 0xb4, 0x8a, 0x31, 0x8d, 0x9a, 0xdd, 0x0b, 0x8d, 0x2c, + 0xc0, 0xe5, 0x4c, 0x14, 0xd9, 0x0c, 0x4c, 0xae, 0x66, 0x77, 0xc5, 0x21, 0xf3, 0x30, 0x1d, 0xfb, + 0xf4, 0x68, 0x4d, 0xc0, 0xbc, 0x6a, 0x76, 0x66, 0x19, 0x79, 0xd3, 0x7c, 0xf7, 0xcf, 0x2b, 0xc3, + 0xb4, 0x6a, 0x76, 0xba, 0xc0, 0x3a, 0x29, 0xc0, 0xe5, 0xcc, 0x8d, 0x52, 0xea, 0xf3, 0x73, 0x49, + 0xc5, 0x51, 0x5b, 0x0b, 0x6e, 0xc1, 0x00, 0x2a, 0xf8, 0xdc, 0x56, 0x2c, 0xdd, 0x58, 0x91, 0x9e, + 0xb3, 0x62, 0xa5, 0x36, 0xe2, 0x90, 0x15, 0x75, 0x37, 0xd8, 0x8f, 0x96, 0x8c, 0x3b, 0x49, 0x05, + 0x2a, 0xa3, 0x72, 0xfd, 0x8e, 0x50, 0xde, 0x06, 0x7e, 0x9b, 0x6b, 0x98, 0x3f, 0x2b, 0x40, 0xa5, + 0x87, 0x7e, 0xa0, 0xbe, 0xa9, 0x70, 0x8a, 0x6f, 0x7a, 0xa0, 0xbe, 0x89, 0x3f, 0xbb, 0x9d, 0x3f, + 0x9d, 0x0e, 0xf2, 0xb2, 0x3f, 0xeb, 0xaf, 0x0b, 0x40, 0xd2, 0x7a, 0x28, 0xf9, 0x3e, 0x8c, 0xd6, + 0x6a, 0xab, 0x86, 0x47, 0x5f, 0xea, 0x76, 0x28, 0xc6, 0x20, 0x77, 0x4f, 0xe5, 0xc2, 0xa7, 0x3b, + 0xf0, 0x7d, 0x92, 0xf2, 0x1b, 0xec, 0xef, 0xea, 0x37, 0x98, 0xf2, 0x1a, 0x5c, 0xce, 0x70, 0x84, + 0x1b, 0xe8, 0xe1, 0x08, 0x97, 0xf6, 0x72, 0xb3, 0x96, 0xa0, 0x9c, 0xa7, 0xca, 0xe2, 0x0a, 0xc7, + 0xc3, 0xa6, 0x69, 0x37, 0x5c, 0x7c, 0x85, 0x33, 0xc1, 0xd6, 0xbb, 0x70, 0x41, 0x51, 0xf3, 0x7c, + 0x2c, 0x5a, 0x70, 0x03, 0x71, 0xfe, 0x55, 0x41, 0x14, 0x62, 0x80, 0xf5, 0xa7, 0x03, 0x29, 0xc2, + 0x5a, 0xe7, 0xe8, 0xc8, 0x09, 0x9e, 0x93, 0xaa, 0x49, 0xd8, 0xdf, 0xf3, 0xc8, 0xb1, 0x30, 0xf0, + 0xb3, 0xe3, 0x4a, 0x9f, 0xc6, 0x9d, 0xed, 0x0b, 0xa8, 0x61, 0x78, 0x0d, 0xca, 0xef, 0xc6, 0x8a, + 0x3c, 0x80, 0x93, 0x01, 0x24, 0x7b, 0x30, 0x21, 0xf6, 0x6e, 0xfc, 0x2d, 0xe7, 0xd8, 0xdd, 0xe4, + 0x1c, 0x33, 0x9a, 0x77, 0xdb, 0x20, 0xe1, 0xa3, 0xd1, 0x64, 0x43, 0xbe, 0x80, 0x49, 0xa9, 0xa9, + 0x09, 0xc6, 0xdc, 0x9b, 0xe9, 0x5e, 0x77, 0xc6, 0x26, 0x0d, 0xe7, 0x9c, 0x60, 0xc4, 0x9a, 0x2c, + 0x17, 0x3b, 0xce, 0x79, 0xf0, 0x34, 0x4d, 0x36, 0x48, 0x44, 0x93, 0x0d, 0xd8, 0xdc, 0xa7, 0x40, + 0xd2, 0xdf, 0xd5, 0x6b, 0x3a, 0x4d, 0x68, 0xd3, 0x69, 0xae, 0x0a, 0x53, 0x19, 0x1f, 0x70, 0x26, + 0x16, 0x9f, 0x02, 0x49, 0xb7, 0xf4, 0x2c, 0x1c, 0xac, 0x9b, 0xf0, 0x9a, 0x12, 0x81, 0x1a, 0x0d, + 0x06, 0x4f, 0x69, 0x01, 0xff, 0xcd, 0x22, 0x54, 0x7a, 0xa0, 0x92, 0xbf, 0x55, 0x48, 0x4a, 0x9b, + 0x8f, 0xc6, 0xf7, 0x93, 0xd2, 0xce, 0xa6, 0xcf, 0x10, 0xfb, 0xc2, 0x07, 0xbf, 0xf5, 0x17, 0x2f, + 0x7c, 0xf2, 0x48, 0x77, 0xd9, 0xd9, 0xa5, 0x35, 0xa0, 0x4b, 0xcb, 0x86, 0x69, 0xe3, 0xcc, 0x76, + 0x9a, 0xcd, 0xeb, 0x2a, 0x80, 0x48, 0x0d, 0xbb, 0xee, 0x1f, 0x08, 0x3d, 0x51, 0x83, 0x58, 0xf7, + 0x61, 0x26, 0xc1, 0x53, 0x58, 0xe5, 0xbf, 0x0f, 0xea, 0x11, 0x3b, 0x32, 0xed, 0x5f, 0x38, 0xff, + 0x8b, 0xe3, 0xca, 0x04, 0x53, 0xe9, 0x6f, 0xc7, 0xa9, 0x01, 0xe4, 0x5f, 0xd6, 0x86, 0x7e, 0xaf, + 0x50, 0x6d, 0xe9, 0xc1, 0x7d, 0xc8, 0x3d, 0x18, 0xe2, 0x90, 0x44, 0x00, 0x6e, 0x1d, 0x5b, 0xac, + 0x09, 0x02, 0xd1, 0x9a, 0xc1, 0x27, 0xb7, 0xf8, 0xa3, 0x1a, 0x87, 0x88, 0xb0, 0x76, 0x79, 0x42, + 0x9a, 0x18, 0xac, 0x82, 0x7c, 0x0f, 0x54, 0xe3, 0x50, 0x16, 0xd2, 0x09, 0x44, 0xe2, 0x79, 0xfe, + 0xb3, 0x16, 0x6d, 0xf2, 0x4c, 0x82, 0x0b, 0xe3, 0xc2, 0x09, 0x64, 0xc0, 0x61, 0x0c, 0x90, 0xcc, + 0xfa, 0x04, 0x66, 0x98, 0xa6, 0x10, 0x24, 0xeb, 0xc3, 0x34, 0x14, 0x0c, 0x66, 0x7a, 0xd6, 0x3b, + 0x0c, 0x84, 0x9e, 0xf5, 0xa2, 0xd0, 0x5a, 0x87, 0x8b, 0xdc, 0x2a, 0xa9, 0x7f, 0x52, 0x7c, 0x07, + 0x30, 0x88, 0xbf, 0x13, 0x0f, 0x36, 0x33, 0xbe, 0x9e, 0xe3, 0x59, 0x1f, 0xe3, 0x8b, 0x20, 0x31, + 0x48, 0x5d, 0xdf, 0x8b, 0x4d, 0x90, 0xa7, 0x7b, 0x42, 0xfc, 0x3f, 0xc3, 0xe5, 0x6a, 0xbb, 0x4d, + 0xbd, 0x66, 0x4c, 0xb8, 0x13, 0x38, 0xa7, 0x0c, 0xf0, 0x40, 0xaa, 0x30, 0x88, 0xd8, 0xea, 0x02, + 0x55, 0x34, 0x37, 0xa3, 0x39, 0x88, 0x27, 0x22, 0xb2, 0x62, 0x05, 0x9c, 0xd2, 0x6a, 0xc2, 0x6c, + 0xad, 0xb3, 0x7f, 0xe4, 0x46, 0xe8, 0x8f, 0x8f, 0x41, 0x52, 0x64, 0xdd, 0x6b, 0x32, 0x87, 0x18, + 0x17, 0xc6, 0xcd, 0xf8, 0xe5, 0x08, 0xba, 0xf4, 0x8b, 0xc0, 0x29, 0x4f, 0xef, 0xdd, 0x8e, 0x49, + 0xd1, 0xfc, 0xc2, 0x6b, 0xc1, 0x62, 0x91, 0x67, 0xcc, 0x9a, 0x82, 0xf3, 0xfa, 0x65, 0x14, 0x1f, + 0x21, 0x33, 0x30, 0x65, 0x5e, 0x32, 0x71, 0xf0, 0xd7, 0x30, 0xcd, 0x8d, 0xe0, 0x3c, 0xa2, 0xfa, + 0x7c, 0x1c, 0x3c, 0xbc, 0xb8, 0x37, 0x9f, 0x78, 0x08, 0x80, 0xfe, 0xc1, 0x2a, 0x57, 0xc6, 0xde, + 0x3c, 0x7f, 0xd5, 0xf9, 0x74, 0xde, 0xb8, 0xca, 0x2c, 0xee, 0xcd, 0x2f, 0x0c, 0x8b, 0xc8, 0xb4, + 0x8c, 0x3b, 0xef, 0xfe, 0xef, 0x84, 0xfb, 0x3c, 0x06, 0x12, 0x58, 0xa5, 0x0e, 0x3e, 0xfa, 0xc9, + 0x7e, 0x8e, 0x3d, 0x09, 0x45, 0x15, 0xa7, 0xb2, 0xe8, 0x36, 0xad, 0x3f, 0x2a, 0xc0, 0x4d, 0xae, + 0x8c, 0x65, 0xd3, 0xe1, 0x8d, 0x53, 0x0e, 0x31, 0x79, 0x0f, 0x06, 0x43, 0xcd, 0x3b, 0xc2, 0x12, + 0x2d, 0xef, 0xc6, 0x89, 0x13, 0x90, 0x2a, 0x8c, 0xeb, 0x6f, 0x5b, 0x4e, 0x17, 0x02, 0xcf, 0x1e, + 0x3b, 0x7a, 0xec, 0xa8, 0xf7, 0x2e, 0x4f, 0xe0, 0xd2, 0xf2, 0x37, 0x6c, 0x40, 0x88, 0xdd, 0x49, + 0x9c, 0x1c, 0xe2, 0xe7, 0xbe, 0xe7, 0x76, 0xc4, 0x88, 0x31, 0x8f, 0xf5, 0x49, 0x30, 0x3b, 0x23, + 0xcb, 0x0d, 0x4e, 0xa9, 0xef, 0xa3, 0xb6, 0x01, 0xb3, 0xfe, 0xb4, 0x00, 0x97, 0xb3, 0x6b, 0x13, + 0x0b, 0xcb, 0x1a, 0x9c, 0x5f, 0x74, 0x3c, 0xdf, 0x73, 0x1b, 0x4e, 0xab, 0xd6, 0x38, 0xa4, 0xcd, + 0x8e, 0x8a, 0x5f, 0xab, 0x56, 0x99, 0x03, 0xea, 0x49, 0x72, 0x89, 0x62, 0xa7, 0xa9, 0xd8, 0xe9, + 0x10, 0x9f, 0x47, 0xf0, 0xb5, 0xb7, 0x45, 0x03, 0xc5, 0x8f, 0xb7, 0x2c, 0xa7, 0x94, 0xdc, 0x95, + 0xd6, 0xfe, 0xe6, 0xae, 0xe7, 0x46, 0x8a, 0x88, 0x9b, 0x79, 0xb2, 0x8a, 0xac, 0x7f, 0x55, 0x80, + 0x8b, 0x98, 0xb2, 0xca, 0x48, 0x82, 0x19, 0x87, 0x71, 0x96, 0x91, 0x88, 0x0b, 0xc6, 0x73, 0x0f, + 0x03, 0xdb, 0x0c, 0x49, 0x4c, 0xde, 0x84, 0x81, 0x9a, 0xf4, 0xd6, 0x9a, 0x4c, 0xa4, 0x2f, 0x16, + 0x14, 0xac, 0xdc, 0x46, 0x2c, 0xb6, 0xe7, 0x2c, 0xd1, 0xb0, 0x41, 0x3d, 0xcc, 0x33, 0xcd, 0xad, + 0x0e, 0x1a, 0x24, 0x0e, 0xc7, 0x34, 0x90, 0x17, 0x8e, 0x69, 0xd0, 0x0c, 0xc7, 0x64, 0x3d, 0xe5, + 0x09, 0xab, 0x92, 0x1f, 0x24, 0x3a, 0xe9, 0xe3, 0x54, 0x5a, 0x6a, 0xbe, 0x0f, 0x5c, 0xc8, 0xfa, + 0x32, 0xa6, 0xa0, 0x27, 0x32, 0x4e, 0xe7, 0x87, 0x4d, 0xde, 0x86, 0x57, 0x0c, 0xdc, 0x6a, 0xab, + 0xe5, 0x3f, 0xa3, 0xcd, 0xed, 0xc0, 0x3f, 0xf2, 0x23, 0x23, 0x61, 0x8f, 0xc8, 0xcb, 0x1e, 0xdf, + 0xe7, 0x88, 0x51, 0x99, 0x00, 0x5b, 0xff, 0x13, 0xbc, 0xda, 0x83, 0xa3, 0xf8, 0xa8, 0x1a, 0x9c, + 0x77, 0x12, 0x65, 0xd2, 0xed, 0xe6, 0xd5, 0xac, 0xef, 0x4a, 0x32, 0x0a, 0xed, 0x34, 0xfd, 0xad, + 0x1d, 0x23, 0x95, 0x33, 0x29, 0xc3, 0xf4, 0xb6, 0xbd, 0xb5, 0xb4, 0xbb, 0xb8, 0x53, 0xdf, 0xf9, + 0x62, 0x7b, 0xb9, 0xbe, 0xbb, 0xf9, 0x70, 0x73, 0xeb, 0xd1, 0x26, 0x8f, 0x3b, 0x6e, 0x94, 0xec, + 0x2c, 0x57, 0x37, 0x4a, 0x05, 0x32, 0x0d, 0x25, 0x03, 0xbc, 0xbc, 0xbb, 0x50, 0x2a, 0xde, 0xfa, + 0xda, 0x48, 0x51, 0x4c, 0x2e, 0x43, 0xb9, 0xb6, 0xbb, 0xbd, 0xbd, 0x65, 0x2b, 0xae, 0x7a, 0xd4, + 0xf3, 0x19, 0x38, 0x6f, 0x94, 0xde, 0xb7, 0x97, 0x97, 0x4b, 0x05, 0xd6, 0x14, 0x03, 0xbc, 0x6d, + 0x2f, 0x6f, 0xac, 0xed, 0x6e, 0x94, 0x8a, 0xb7, 0xea, 0xfa, 0x1b, 0x33, 0x72, 0x09, 0x66, 0x97, + 0x96, 0xf7, 0xd6, 0x16, 0x97, 0xb3, 0x78, 0x4f, 0x43, 0x49, 0x2f, 0xdc, 0xd9, 0xda, 0xd9, 0xe6, + 0xac, 0x75, 0xe8, 0xa3, 0xe5, 0x85, 0xea, 0xee, 0xce, 0xea, 0x66, 0xa9, 0xdf, 0x1a, 0x18, 0x29, + 0x96, 0x8a, 0xb7, 0x7e, 0x6c, 0x3c, 0x40, 0x63, 0xcd, 0x17, 0xe8, 0xbb, 0xb5, 0xea, 0x4a, 0x7e, + 0x15, 0xbc, 0x74, 0xe3, 0x7e, 0xb5, 0x54, 0x20, 0x57, 0xe0, 0xa2, 0x01, 0xdd, 0xae, 0xd6, 0x6a, + 0x8f, 0xb6, 0xec, 0xa5, 0xf5, 0xe5, 0x5a, 0xad, 0x54, 0xbc, 0xb5, 0x67, 0x84, 0xa0, 0x63, 0x35, + 0x6c, 0xdc, 0xaf, 0xd6, 0xed, 0xe5, 0xcf, 0x76, 0xd7, 0xec, 0xe5, 0xa5, 0x74, 0x0d, 0x46, 0xe9, + 0x17, 0xcb, 0xb5, 0x52, 0x81, 0x4c, 0xc1, 0x39, 0x03, 0xba, 0xb9, 0x55, 0x2a, 0xde, 0x7a, 0x4d, + 0x44, 0x29, 0x23, 0x93, 0x00, 0x4b, 0xcb, 0xb5, 0xc5, 0xe5, 0xcd, 0xa5, 0xb5, 0xcd, 0x95, 0x52, + 0x1f, 0x99, 0x80, 0xd1, 0xaa, 0xfa, 0x59, 0xb8, 0xf5, 0x01, 0x9c, 0x4b, 0x1c, 0xed, 0x19, 0x86, + 0x3a, 0x14, 0x97, 0xfa, 0x50, 0xfc, 0xf2, 0x27, 0xda, 0x57, 0xf9, 0x29, 0xbd, 0x54, 0xb8, 0xb5, + 0x20, 0xb3, 0xda, 0x6a, 0xf3, 0x9c, 0x8c, 0xc1, 0xf0, 0xd2, 0xf2, 0xfd, 0xea, 0xee, 0xfa, 0x4e, + 0xa9, 0x8f, 0xfd, 0x58, 0xb4, 0x97, 0xab, 0x3b, 0xcb, 0x4b, 0xa5, 0x02, 0x19, 0x85, 0xc1, 0xda, + 0x4e, 0x75, 0x67, 0xb9, 0x54, 0x24, 0x23, 0x30, 0xb0, 0x5b, 0x5b, 0xb6, 0x4b, 0xfd, 0xf3, 0xff, + 0xf4, 0xff, 0x2f, 0x70, 0x23, 0xa3, 0x7c, 0xcc, 0xf4, 0xb5, 0x76, 0x98, 0x14, 0x4b, 0x9e, 0x48, + 0xe1, 0x99, 0x7b, 0x72, 0x44, 0x2d, 0x60, 0xae, 0xcb, 0xad, 0x0b, 0x22, 0xdc, 0x2c, 0xdc, 0x2d, + 0x10, 0x1b, 0xbd, 0x54, 0x12, 0x67, 0x2b, 0xc5, 0x39, 0xfb, 0xf8, 0x3b, 0x77, 0xa5, 0xeb, 0x91, + 0x8c, 0xfc, 0x1a, 0x58, 0x3a, 0xcf, 0x9c, 0x13, 0xc8, 0xf7, 0x4f, 0x77, 0xd2, 0x90, 0x75, 0xbe, + 0x76, 0x3a, 0x74, 0xf2, 0x00, 0x26, 0x98, 0x6e, 0xae, 0xd0, 0xc8, 0xa5, 0x24, 0xa1, 0x76, 0x1c, + 0x98, 0xbb, 0x9c, 0x5d, 0xa8, 0xb2, 0xec, 0x8c, 0xe3, 0x87, 0xf0, 0x83, 0x75, 0x48, 0x64, 0x24, + 0x0b, 0x09, 0xe1, 0x2b, 0xfe, 0xdc, 0xf9, 0x04, 0x78, 0xef, 0xde, 0xdd, 0x02, 0xa9, 0x61, 0x18, + 0x39, 0x43, 0xc9, 0x27, 0xf2, 0x75, 0x5d, 0x5a, 0xfb, 0xe7, 0xad, 0xa9, 0xa8, 0x9c, 0x98, 0x39, + 0xa7, 0x83, 0x4d, 0x20, 0x69, 0xdd, 0x99, 0x5c, 0x8b, 0xc7, 0x41, 0xb6, 0x5a, 0x3d, 0x77, 0x21, + 0xe5, 0x7c, 0xb8, 0xcc, 0xb4, 0x27, 0xb2, 0x0c, 0x93, 0xe2, 0x99, 0xba, 0xd0, 0xe6, 0x49, 0xb7, + 0xf3, 0x40, 0x2e, 0x9b, 0x15, 0x94, 0x93, 0x3a, 0x11, 0x90, 0xb9, 0xf8, 0x3b, 0x92, 0xc7, 0x84, + 0xb9, 0x4b, 0x99, 0x65, 0xe2, 0xfb, 0xee, 0xc3, 0xa4, 0x79, 0xb8, 0x20, 0xb2, 0x83, 0x32, 0xcf, + 0x1c, 0xb9, 0x0d, 0xaa, 0xc3, 0xec, 0x86, 0xe3, 0xe2, 0x5d, 0x89, 0x70, 0x71, 0x93, 0x0e, 0x6a, + 0xa4, 0xd2, 0xc5, 0x63, 0xad, 0x46, 0xbd, 0xa6, 0xea, 0x84, 0xbc, 0x88, 0xf9, 0x38, 0x6d, 0x6a, + 0x52, 0x47, 0x36, 0x1d, 0xfc, 0x88, 0x65, 0xe6, 0x39, 0xce, 0xf2, 0xd9, 0x9c, 0xcb, 0x73, 0x33, + 0x26, 0x1b, 0xa8, 0xa4, 0x27, 0x38, 0x6a, 0x63, 0xe2, 0xcc, 0xec, 0xca, 0x18, 0x2c, 0x41, 0x4b, + 0x3e, 0x2f, 0x0a, 0x43, 0x92, 0x23, 0xb8, 0x5c, 0x66, 0x77, 0x0b, 0xe4, 0x6b, 0x9c, 0xd5, 0x99, + 0xec, 0x1e, 0xb9, 0xd1, 0xa1, 0xd0, 0x7e, 0x2e, 0x65, 0x32, 0x10, 0x13, 0xa5, 0x0b, 0x77, 0x1b, + 0xa6, 0xb3, 0x3c, 0x9b, 0x95, 0x40, 0xbb, 0xb8, 0x3d, 0xe7, 0x8e, 0x02, 0x9b, 0x1d, 0x35, 0x9a, + 0xf9, 0x9d, 0xd4, 0xc5, 0xb1, 0x36, 0x97, 0xe7, 0x47, 0x30, 0xc9, 0x46, 0xc9, 0x43, 0x4a, 0xdb, + 0xd5, 0x96, 0xfb, 0x94, 0x86, 0x44, 0xc6, 0x00, 0x56, 0xa0, 0x3c, 0xda, 0x9b, 0x05, 0xf2, 0x3d, + 0x18, 0x7b, 0xe4, 0x44, 0x8d, 0x43, 0x11, 0x0b, 0x53, 0x86, 0xca, 0x44, 0xd8, 0x9c, 0xfc, 0x85, + 0x85, 0x77, 0x0b, 0xe4, 0x87, 0x30, 0xbc, 0x42, 0x23, 0x7c, 0xdd, 0x7c, 0x5d, 0x39, 0xf9, 0x71, + 0xdb, 0xe4, 0x9a, 0xa7, 0x9e, 0xf0, 0xc8, 0x06, 0x27, 0x0d, 0xb9, 0xe4, 0x0e, 0x00, 0x5f, 0x10, + 0x90, 0x43, 0xb2, 0x78, 0x2e, 0xd5, 0x6c, 0xb2, 0xc2, 0x94, 0x87, 0x16, 0x8d, 0xe8, 0x69, 0xab, + 0xcc, 0x93, 0xd1, 0x3a, 0x4c, 0xaa, 0xc4, 0x44, 0x9b, 0x18, 0xb2, 0xc4, 0x4a, 0x30, 0x0b, 0xcf, + 0xc0, 0xed, 0x03, 0x36, 0x2b, 0x78, 0x56, 0x5e, 0x8c, 0x6d, 0x81, 0x2b, 0xe9, 0xac, 0x1e, 0x20, + 0x43, 0x5f, 0x42, 0xa5, 0x10, 0x39, 0x9a, 0x46, 0xbb, 0xea, 0x87, 0x91, 0x49, 0xab, 0x20, 0xd9, + 0xb4, 0xbf, 0x0a, 0x73, 0x7a, 0xbd, 0x66, 0x30, 0xe6, 0x78, 0xcd, 0xcd, 0x8b, 0xf1, 0x3c, 0x77, + 0xbd, 0x0b, 0x86, 0x38, 0xbf, 0xf5, 0xff, 0x4e, 0xb1, 0x80, 0xcb, 0xc9, 0x12, 0x4c, 0xc9, 0xba, + 0xb6, 0xda, 0xd4, 0xab, 0xd5, 0x56, 0x31, 0x09, 0x8d, 0x74, 0x29, 0xd1, 0x60, 0x92, 0x3b, 0x49, + 0x17, 0xb1, 0xad, 0xcf, 0x88, 0x61, 0x41, 0xba, 0x45, 0xb6, 0x88, 0xb7, 0xbe, 0xcc, 0x28, 0xc1, + 0x0f, 0xb9, 0x51, 0xc9, 0x50, 0xfe, 0xf7, 0xe6, 0x49, 0x97, 0x03, 0xd0, 0x5c, 0xce, 0x11, 0xe2, + 0x6e, 0x81, 0x7c, 0x01, 0x24, 0x7d, 0x24, 0x51, 0x22, 0xcc, 0x3d, 0x7e, 0x29, 0x11, 0x76, 0x39, + 0xcf, 0xac, 0xc0, 0x8c, 0x8a, 0x60, 0xa3, 0xd5, 0x3a, 0x4f, 0x72, 0x5a, 0x93, 0xd7, 0x4a, 0xf2, + 0x09, 0x4c, 0x89, 0x41, 0xab, 0x17, 0x90, 0x92, 0x5a, 0x7f, 0xc4, 0xa9, 0x24, 0x77, 0x9c, 0x3e, + 0x80, 0x99, 0x5a, 0x42, 0x62, 0xdc, 0x13, 0xfe, 0xa2, 0xc9, 0x02, 0x81, 0x35, 0x1a, 0x71, 0x91, + 0x65, 0xf3, 0x7a, 0x08, 0x84, 0x1b, 0x85, 0x24, 0xbb, 0xa7, 0x2e, 0x7d, 0x46, 0xae, 0x24, 0x9a, + 0xce, 0x80, 0x88, 0x86, 0x0b, 0x58, 0xee, 0x97, 0xed, 0xf0, 0x9c, 0xd2, 0x08, 0x35, 0xee, 0xd0, + 0xaf, 0x19, 0x04, 0xc6, 0x35, 0xbc, 0xe8, 0x80, 0x8b, 0xb9, 0x18, 0xe4, 0x37, 0x30, 0x74, 0x6c, + 0xf7, 0x63, 0x15, 0xf9, 0x5e, 0xd6, 0xe9, 0x37, 0xe7, 0x60, 0x38, 0xf7, 0xe6, 0xe9, 0x90, 0xd5, + 0x41, 0x76, 0x62, 0x85, 0x46, 0xdb, 0xad, 0xce, 0x81, 0x8b, 0xd9, 0x46, 0x89, 0x32, 0x1a, 0x29, + 0x90, 0x18, 0x97, 0x32, 0x62, 0x5b, 0x5c, 0x50, 0xa3, 0x3f, 0x21, 0x6b, 0x50, 0xe2, 0xeb, 0xbf, + 0xc6, 0xe2, 0x4a, 0x8a, 0x85, 0x40, 0x71, 0x02, 0xe7, 0x28, 0xcc, 0xed, 0xad, 0x3b, 0xdc, 0x69, + 0x89, 0xc8, 0x39, 0xa9, 0x2b, 0x98, 0x53, 0x06, 0x4c, 0x85, 0xd3, 0x67, 0x3d, 0x62, 0xd3, 0x90, + 0x46, 0x32, 0x46, 0x0d, 0xcf, 0x35, 0x7b, 0x23, 0xde, 0xec, 0xd3, 0xa5, 0xf1, 0xd4, 0x4f, 0xc4, + 0x53, 0xdb, 0x7b, 0x8b, 0xa8, 0xfc, 0xbb, 0x19, 0x4c, 0x5f, 0x33, 0x74, 0x92, 0xb3, 0xf1, 0x7d, + 0x1b, 0xf7, 0x20, 0x8c, 0xcb, 0x33, 0x13, 0xb7, 0x8d, 0xfd, 0x96, 0x54, 0x13, 0x1a, 0xd5, 0xde, + 0x3c, 0x2e, 0x69, 0x6c, 0x93, 0x64, 0x2a, 0x6c, 0x27, 0x08, 0xa8, 0xc7, 0x89, 0xf3, 0xf4, 0x8d, + 0x2c, 0xea, 0x8f, 0x71, 0xe9, 0xd1, 0xa8, 0xf9, 0x83, 0xbd, 0x5e, 0x2c, 0x78, 0x6e, 0xa4, 0xbb, + 0x05, 0xf2, 0x1e, 0x8c, 0x88, 0x36, 0x32, 0x22, 0xa3, 0xd1, 0x61, 0x97, 0x56, 0x23, 0x25, 0x70, + 0x21, 0x61, 0x9b, 0x4d, 0x9c, 0xbc, 0xde, 0xe7, 0x6d, 0x7e, 0x8f, 0x6d, 0xb6, 0xcd, 0x17, 0xa1, + 0x5c, 0x94, 0xbb, 0x2e, 0x52, 0x96, 0x55, 0x2c, 0x17, 0x09, 0xea, 0xb1, 0x3d, 0x72, 0x26, 0x4c, + 0x6f, 0xc6, 0x80, 0x88, 0x2a, 0xae, 0x99, 0xd2, 0x9b, 0x0d, 0x70, 0xaf, 0xbd, 0x76, 0x0d, 0x4a, + 0xd5, 0x06, 0xee, 0x04, 0x35, 0x7a, 0xe4, 0xb4, 0x0f, 0xfd, 0x80, 0xaa, 0x43, 0x4b, 0xb2, 0x40, + 0xf2, 0x9a, 0x51, 0x9a, 0x85, 0x28, 0x58, 0xa7, 0x0e, 0x46, 0x8d, 0x9e, 0x55, 0xaa, 0x45, 0xa2, + 0x28, 0x9b, 0xa2, 0xcb, 0x21, 0x65, 0x7a, 0x91, 0x1d, 0xab, 0x5a, 0xdf, 0x8e, 0xcd, 0x07, 0xb8, + 0x60, 0x28, 0xe4, 0x50, 0xed, 0x10, 0x0a, 0xa4, 0x8e, 0x73, 0xf2, 0xed, 0x8e, 0x42, 0xad, 0xca, + 0x3b, 0xe3, 0x58, 0x2c, 0x79, 0xd4, 0x79, 0xd5, 0xff, 0x00, 0x26, 0x97, 0xd9, 0x82, 0xde, 0x69, + 0xba, 0x3c, 0x52, 0x3e, 0x31, 0x43, 0x9f, 0xe7, 0x12, 0xae, 0xca, 0x74, 0x64, 0x48, 0x2a, 0x8e, + 0xfe, 0x72, 0x4f, 0xd1, 0x60, 0xb2, 0x3f, 0xa6, 0x25, 0x5b, 0x91, 0xac, 0x00, 0x8f, 0xe6, 0xe2, + 0xac, 0x3f, 0xcb, 0x35, 0xc2, 0x6a, 0xbb, 0xdd, 0x92, 0x26, 0x69, 0x7e, 0xef, 0xfe, 0xaa, 0x71, + 0x84, 0x4c, 0x95, 0x4b, 0xde, 0x69, 0xa5, 0xf1, 0x73, 0x2d, 0x3d, 0x70, 0x0e, 0xcf, 0x9c, 0xf2, + 0x5e, 0x63, 0x51, 0xc5, 0xb6, 0xae, 0xb6, 0x5a, 0x29, 0xe2, 0x90, 0xbc, 0x61, 0x72, 0xcf, 0xc2, + 0xe9, 0x55, 0x03, 0x1e, 0xd1, 0xb9, 0xd6, 0x55, 0x6d, 0xb7, 0xf9, 0x62, 0x79, 0x55, 0x2d, 0x18, + 0x66, 0x41, 0xfa, 0x88, 0x9e, 0x2c, 0x17, 0x6b, 0xfb, 0x03, 0x1c, 0x66, 0x71, 0x0e, 0x61, 0xa2, + 0x1f, 0x78, 0x93, 0x29, 0x94, 0x95, 0x12, 0x96, 0x28, 0x54, 0xfb, 0xc4, 0x39, 0x54, 0x7d, 0xe2, + 0x84, 0xc4, 0xca, 0x32, 0x93, 0x80, 0x4b, 0x7e, 0x57, 0xf3, 0x8a, 0x95, 0xa5, 0xb4, 0x94, 0xcc, + 0xd3, 0xae, 0x3e, 0x39, 0x27, 0xff, 0xbf, 0xfa, 0xe4, 0xdc, 0x04, 0xef, 0x0f, 0xa0, 0x94, 0x4c, + 0x11, 0xad, 0x98, 0xe6, 0xe4, 0x8e, 0xce, 0xed, 0x93, 0xfb, 0x30, 0xad, 0xf7, 0xa8, 0xfa, 0xee, + 0xbc, 0xd5, 0x3f, 0x8f, 0xcf, 0x0e, 0xcc, 0x64, 0x66, 0x74, 0x56, 0x5b, 0x6c, 0xb7, 0x7c, 0xcf, + 0xb9, 0x5c, 0x29, 0x5c, 0xc8, 0x4e, 0xea, 0x4e, 0x5e, 0x31, 0x0f, 0xfe, 0xd9, 0x29, 0xae, 0xe7, + 0x5e, 0xed, 0x81, 0x25, 0x04, 0xfa, 0x35, 0xee, 0x80, 0xa9, 0x3a, 0xae, 0x6b, 0xa6, 0x80, 0x9c, + 0x0a, 0xac, 0x6e, 0x28, 0x6a, 0x0c, 0x4c, 0x67, 0x14, 0xe7, 0x8b, 0xf8, 0x46, 0x3e, 0xcf, 0x78, + 0x60, 0xed, 0xc9, 0x10, 0xce, 0xb9, 0x92, 0xe9, 0x9a, 0xfc, 0xbb, 0xcb, 0x59, 0x72, 0x4e, 0x8d, + 0x87, 0xd3, 0x37, 0x39, 0x8f, 0x5b, 0x53, 0x99, 0x6d, 0x8c, 0xcc, 0xdc, 0x49, 0xb3, 0x4d, 0x56, + 0x46, 0x71, 0x25, 0x86, 0x6e, 0x39, 0xeb, 0xf9, 0x6e, 0xfc, 0x15, 0xb7, 0xe3, 0x98, 0x55, 0xe8, + 0x76, 0x9c, 0x4c, 0xfe, 0xd7, 0xf2, 0x11, 0x74, 0xe6, 0x0e, 0xbf, 0xb4, 0x4d, 0xa4, 0x16, 0x27, + 0xfa, 0x51, 0x29, 0x3b, 0xed, 0xb8, 0x1a, 0x1b, 0x99, 0x28, 0x7a, 0x15, 0x8f, 0xe4, 0x1c, 0xcc, + 0x91, 0x52, 0x97, 0xbc, 0xeb, 0xdd, 0xd5, 0x94, 0x2d, 0x28, 0xc7, 0x9d, 0x99, 0xf8, 0x80, 0x33, + 0x76, 0xa5, 0x14, 0xc6, 0xc5, 0xdc, 0x6c, 0xeb, 0xe4, 0xf5, 0xd4, 0x4c, 0xcf, 0x11, 0x4c, 0xd7, + 0x2a, 0xf8, 0x7a, 0xae, 0x85, 0x84, 0xbe, 0x14, 0x1b, 0x71, 0xf5, 0xc4, 0xec, 0xa9, 0xf5, 0x3c, + 0x23, 0x6b, 0xfb, 0x0a, 0xea, 0xc5, 0x5a, 0xe6, 0xf5, 0xdc, 0xaf, 0xbe, 0x92, 0xc5, 0x27, 0x4c, + 0xaf, 0xb8, 0x5a, 0xbb, 0xa4, 0x9e, 0x96, 0x2c, 0x38, 0xcb, 0x8a, 0x7b, 0x9a, 0xa6, 0xe5, 0xf1, + 0x59, 0x82, 0x31, 0x2d, 0x65, 0x3b, 0xb9, 0x68, 0x88, 0xc9, 0xd8, 0x43, 0xe7, 0x8c, 0x8f, 0x33, + 0xb7, 0xcf, 0x45, 0x34, 0x25, 0xab, 0xc4, 0xef, 0xb9, 0xad, 0xb8, 0x94, 0xe6, 0x61, 0x98, 0x91, + 0x95, 0x14, 0x78, 0x6b, 0x2e, 0x27, 0x85, 0x63, 0x34, 0x28, 0xff, 0x93, 0x88, 0x2e, 0x9a, 0x1e, + 0x4d, 0xca, 0xd7, 0x5f, 0xa7, 0x44, 0x5e, 0x58, 0xcc, 0xe3, 0x22, 0x63, 0xfe, 0x5d, 0x50, 0x36, + 0x31, 0x0d, 0x8a, 0x06, 0x8a, 0x6c, 0x36, 0xdb, 0xf8, 0x74, 0x24, 0x23, 0x87, 0xbd, 0x5a, 0x61, + 0xbb, 0xa6, 0xb8, 0xcf, 0xd0, 0xdd, 0xd4, 0x9a, 0x9d, 0xcb, 0xb1, 0x6b, 0x52, 0xfb, 0xdc, 0x96, + 0xfe, 0x48, 0x5b, 0xb3, 0x53, 0x99, 0xea, 0xc9, 0xcd, 0xa4, 0xe2, 0x96, 0x97, 0xcc, 0xbe, 0xcb, + 0x9e, 0x30, 0x9d, 0x95, 0xe4, 0x5e, 0xb3, 0xeb, 0xe6, 0x66, 0xc0, 0xcf, 0x90, 0x82, 0x2d, 0xc7, + 0x7f, 0x0e, 0xb7, 0x2e, 0x29, 0xef, 0x73, 0x5b, 0xf8, 0xa5, 0xb6, 0xd0, 0x25, 0x52, 0xd3, 0xab, + 0xe3, 0x78, 0x8f, 0xdc, 0xf5, 0xb9, 0xbc, 0x37, 0xf1, 0xb1, 0x51, 0x3a, 0xaf, 0xbc, 0xd2, 0x6c, + 0xba, 0x65, 0x9d, 0xcf, 0x34, 0xfb, 0xce, 0xa4, 0x3f, 0x91, 0xf1, 0xbb, 0x90, 0x30, 0xda, 0xf6, + 0x6a, 0xd8, 0xd7, 0x72, 0x31, 0xce, 0xc8, 0x47, 0x9f, 0x58, 0x8c, 0xf3, 0x33, 0xd6, 0x77, 0x39, + 0x06, 0x9d, 0xab, 0xb9, 0x07, 0x9e, 0x96, 0x4e, 0x5e, 0x1d, 0x82, 0xd2, 0x19, 0xee, 0xd5, 0x12, + 0x93, 0x95, 0x7d, 0x7e, 0x8b, 0xe9, 0x3f, 0x5c, 0x7b, 0xd7, 0x13, 0x83, 0x93, 0xb9, 0xfc, 0x7c, + 0xe8, 0x6a, 0xb9, 0xc9, 0xcc, 0x24, 0xae, 0x31, 0xd4, 0xb3, 0x72, 0x2b, 0x86, 0x19, 0x09, 0xc2, + 0x15, 0xc3, 0xcc, 0x34, 0xde, 0x77, 0xd0, 0xea, 0x62, 0xfb, 0x2d, 0xaa, 0x5b, 0x5d, 0xb4, 0x34, + 0xcf, 0x09, 0xa3, 0x07, 0xf9, 0x18, 0x46, 0x55, 0x1a, 0x6c, 0x65, 0xdf, 0x4e, 0x66, 0xe2, 0x9e, + 0x2b, 0xa7, 0x0b, 0x44, 0x85, 0xef, 0x48, 0xc3, 0x07, 0xd6, 0x59, 0x36, 0x0d, 0x46, 0xf9, 0xd5, + 0xbe, 0x23, 0xad, 0x1e, 0x06, 0x59, 0x2a, 0x09, 0x76, 0x92, 0xec, 0x07, 0x30, 0x1e, 0x27, 0xbc, + 0xde, 0x9b, 0xd7, 0x08, 0x13, 0x59, 0xb0, 0x93, 0x84, 0xef, 0xc9, 0x2b, 0x0d, 0xac, 0xcf, 0x2c, + 0xec, 0xbe, 0x8b, 0x7f, 0x2c, 0xad, 0x2c, 0x46, 0x4b, 0x53, 0xe9, 0xb3, 0xbb, 0x2c, 0xbe, 0xe3, + 0x7a, 0xba, 0x4a, 0xd5, 0xb5, 0x19, 0x09, 0x67, 0x55, 0xd7, 0x66, 0x25, 0x8c, 0x8d, 0x4d, 0xfe, + 0x5f, 0x48, 0x93, 0x42, 0xcc, 0xf4, 0x8a, 0xd1, 0xac, 0x14, 0xdf, 0xab, 0x79, 0xc5, 0x49, 0xd6, + 0x35, 0x28, 0x25, 0x73, 0x6b, 0xaa, 0xf3, 0x58, 0x4e, 0x12, 0x54, 0x75, 0xc8, 0xcb, 0x4d, 0xca, + 0xb9, 0x2d, 0xed, 0xe3, 0x26, 0xdf, 0xeb, 0xd9, 0x8d, 0xd2, 0x59, 0xe7, 0x1b, 0xcc, 0x27, 0x8c, + 0x34, 0x9b, 0xfa, 0x49, 0x39, 0x95, 0xc6, 0x53, 0xd7, 0xac, 0x32, 0x32, 0x73, 0xba, 0x32, 0xe2, + 0x53, 0x76, 0x92, 0xf3, 0x37, 0xcc, 0x23, 0x6c, 0x97, 0x98, 0xec, 0x3d, 0xaf, 0x7f, 0xc9, 0xaf, + 0xc0, 0x6c, 0x4e, 0x8c, 0x69, 0xf2, 0x6a, 0xc2, 0xd2, 0x9a, 0x1d, 0x83, 0x5a, 0x0d, 0x90, 0xcc, + 0xfc, 0xd7, 0x1b, 0xe8, 0x37, 0x60, 0xc4, 0x76, 0x48, 0xdd, 0xc5, 0x3d, 0x72, 0xa3, 0x43, 0x9e, + 0xe6, 0x59, 0x5b, 0x36, 0x33, 0x83, 0x42, 0x90, 0x1a, 0x9e, 0x45, 0x0c, 0x68, 0xc6, 0x75, 0x5c, + 0x06, 0xc3, 0xb9, 0x6c, 0x86, 0x6c, 0xed, 0x60, 0x63, 0x21, 0x23, 0xf0, 0x86, 0x1a, 0x0b, 0xf9, + 0x41, 0x39, 0x72, 0x9b, 0xb9, 0x2d, 0x75, 0xa4, 0x6c, 0x8e, 0xf9, 0x31, 0x38, 0x72, 0x39, 0x3e, + 0x60, 0x1c, 0x53, 0x61, 0x35, 0x48, 0x0e, 0x7a, 0xf7, 0xd5, 0xc3, 0x96, 0x5b, 0xae, 0x49, 0x35, + 0xaf, 0xb5, 0x2f, 0x2f, 0x80, 0x47, 0x6e, 0xfb, 0x96, 0xe5, 0x7c, 0xca, 0x6e, 0xdf, 0x69, 0x37, + 0x5d, 0x75, 0xff, 0x95, 0x88, 0xec, 0x62, 0x7c, 0xa8, 0x06, 0x9f, 0xcb, 0x81, 0x93, 0x4d, 0x74, + 0x04, 0x4a, 0x42, 0xb5, 0x43, 0x69, 0x76, 0xe8, 0x98, 0x5c, 0x7e, 0x7c, 0x1c, 0x1b, 0xa1, 0x37, + 0xce, 0x32, 0x8e, 0x13, 0x31, 0x3b, 0xc4, 0x38, 0x36, 0xa0, 0x67, 0x1b, 0xc7, 0x09, 0x86, 0xe6, + 0x38, 0x4e, 0x36, 0x33, 0x79, 0xd2, 0xcf, 0xed, 0xd5, 0x64, 0x33, 0xd5, 0x38, 0xce, 0xe6, 0x98, + 0x1f, 0x22, 0x25, 0x97, 0xa3, 0x1a, 0xc7, 0x26, 0xc7, 0x1c, 0xf4, 0x53, 0x8e, 0xe3, 0x64, 0x25, + 0xe6, 0x38, 0x3e, 0x53, 0xfb, 0xd4, 0x38, 0xce, 0x6e, 0xdf, 0x99, 0xc7, 0x71, 0x22, 0xa6, 0x90, + 0xf1, 0xa1, 0x59, 0xe3, 0x38, 0x89, 0xcf, 0xc7, 0x71, 0x12, 0x9a, 0x30, 0xae, 0x74, 0x19, 0xc7, + 0x49, 0xca, 0xcf, 0x90, 0x5f, 0x22, 0x1e, 0xca, 0x69, 0x46, 0x72, 0x6e, 0x28, 0x15, 0xf2, 0x08, + 0xcd, 0x7b, 0x09, 0xf8, 0xe9, 0x46, 0xf3, 0xe5, 0x3c, 0xa6, 0x38, 0x9e, 0xf7, 0xa4, 0x10, 0x93, + 0xcd, 0x35, 0x6d, 0x57, 0xd9, 0xe1, 0x60, 0xba, 0x34, 0x78, 0x8f, 0x8d, 0x9b, 0x66, 0x17, 0xbe, + 0xdd, 0xa2, 0xd9, 0x74, 0xe1, 0xab, 0x8e, 0x32, 0x49, 0xbe, 0xb9, 0x24, 0xdd, 0xc7, 0xf7, 0xe7, + 0xf2, 0x82, 0x23, 0x49, 0x37, 0x9f, 0x38, 0x1c, 0x9d, 0xb9, 0xa5, 0xea, 0x90, 0x94, 0x6c, 0xe9, + 0x59, 0xc7, 0xf9, 0x86, 0xd4, 0x1e, 0x52, 0x61, 0xb0, 0x12, 0x1f, 0xad, 0x8f, 0xf5, 0xdc, 0x12, + 0xb2, 0x83, 0xb6, 0xdc, 0x34, 0x5c, 0xb3, 0x03, 0xe7, 0xc5, 0xdb, 0xea, 0xc9, 0x35, 0x15, 0xd0, + 0x47, 0xe7, 0x9a, 0x17, 0xed, 0x47, 0x71, 0x4d, 0x53, 0x7f, 0x82, 0xd6, 0x2f, 0xf1, 0xda, 0xca, + 0x7b, 0xec, 0xe7, 0x5b, 0x52, 0xa6, 0x0c, 0x67, 0x25, 0x86, 0x8b, 0x3e, 0x62, 0x1f, 0x89, 0x1b, + 0x3c, 0x09, 0xcc, 0x15, 0x7e, 0x16, 0x3d, 0xf9, 0x04, 0x4a, 0x62, 0x79, 0x8b, 0x19, 0x64, 0x21, + 0xe6, 0x76, 0xdd, 0x82, 0x34, 0xba, 0x9d, 0xa2, 0x05, 0xa7, 0x31, 0xb6, 0x9d, 0x46, 0x12, 0xf9, + 0x96, 0x29, 0xb6, 0x1d, 0xee, 0x04, 0x9d, 0x30, 0xa2, 0xcd, 0xb4, 0x45, 0xc9, 0x6c, 0x8c, 0xf4, + 0x8c, 0x30, 0xd1, 0xf7, 0xe6, 0xc9, 0x1a, 0xae, 0x6d, 0x26, 0xb8, 0x9b, 0xc9, 0x2d, 0x9b, 0x0d, + 0x2e, 0x3d, 0xab, 0xea, 0x59, 0x8f, 0xd9, 0xa6, 0xbc, 0xba, 0xf3, 0x1b, 0xa5, 0x44, 0x74, 0xca, + 0xaf, 0xcb, 0x13, 0xd1, 0x87, 0xe8, 0x06, 0xc0, 0xcd, 0x7f, 0xbd, 0x24, 0x93, 0x7c, 0x68, 0x44, + 0x3e, 0x85, 0x51, 0x49, 0xdc, 0x5b, 0x20, 0x49, 0x6a, 0x14, 0xc8, 0x12, 0x4c, 0x18, 0xaf, 0xa8, + 0xd4, 0xe9, 0x26, 0xeb, 0x6d, 0x55, 0x97, 0x7e, 0x9e, 0x30, 0x5e, 0x4b, 0x29, 0x2e, 0x59, 0x6f, + 0xa8, 0x72, 0xb9, 0xfc, 0x10, 0xc6, 0x84, 0x48, 0xbb, 0x4a, 0x23, 0xdf, 0xde, 0x36, 0xa3, 0x79, + 0x24, 0x77, 0x9a, 0x6e, 0xb4, 0xe8, 0x7b, 0x8f, 0xdd, 0x83, 0x9e, 0x82, 0x49, 0x93, 0xec, 0xcd, + 0x93, 0xaf, 0x30, 0x29, 0xb2, 0x4c, 0x55, 0x4d, 0xa3, 0x67, 0x7e, 0xf0, 0xc4, 0xf5, 0x0e, 0x7a, + 0xb0, 0xbc, 0x66, 0xb2, 0x4c, 0xd2, 0x49, 0xdf, 0x91, 0xaf, 0x60, 0xae, 0x96, 0xcf, 0xbc, 0x27, + 0x93, 0xee, 0xdb, 0x4b, 0x0d, 0x2e, 0xa3, 0xf7, 0xcc, 0x59, 0xdb, 0xde, 0x95, 0xe9, 0x17, 0x3c, + 0x92, 0xa2, 0xb4, 0xd5, 0x37, 0xfc, 0xa0, 0xd9, 0x9b, 0x63, 0xc5, 0x74, 0xa4, 0x4d, 0x90, 0x49, + 0x61, 0x7c, 0x01, 0x17, 0x6b, 0xb9, 0xac, 0x7b, 0xb1, 0xe8, 0xa5, 0x49, 0x5e, 0x42, 0x51, 0x9c, + 0xb1, 0xdd, 0x5d, 0x79, 0xae, 0xe1, 0x9a, 0xc6, 0xf6, 0xa1, 0xed, 0x80, 0x3e, 0xa6, 0x01, 0xba, + 0x6b, 0xf7, 0x72, 0x54, 0x36, 0xd1, 0xe5, 0x97, 0xaf, 0xc1, 0xf9, 0x5a, 0x8a, 0x55, 0x1e, 0x49, + 0xaf, 0xfb, 0x9f, 0x29, 0xfc, 0xd2, 0x53, 0xb6, 0xab, 0x87, 0x97, 0xd0, 0xd8, 0x0a, 0x8d, 0x76, + 0xd7, 0x7a, 0x48, 0x49, 0xbe, 0x27, 0x90, 0x88, 0x7b, 0xf7, 0x18, 0x65, 0x4d, 0xa3, 0x4c, 0x63, + 0xe4, 0x4e, 0xde, 0x4f, 0xe5, 0x5d, 0x48, 0xcf, 0x6a, 0xf3, 0x38, 0xbc, 0x85, 0x6b, 0xa1, 0x70, + 0x59, 0x9e, 0x8d, 0x55, 0x00, 0x0e, 0x89, 0x4d, 0x75, 0x9a, 0xf7, 0x72, 0x48, 0xaa, 0xfc, 0xf8, + 0xc7, 0x87, 0x87, 0x80, 0x5d, 0x4d, 0xb9, 0xb2, 0x77, 0x65, 0xc1, 0xad, 0xa0, 0xeb, 0x7e, 0xe3, + 0x89, 0x6e, 0x05, 0xd5, 0xd2, 0xe6, 0xcf, 0x99, 0x49, 0xed, 0xc5, 0x8a, 0x8f, 0x99, 0xed, 0x75, + 0xc7, 0x2f, 0x3d, 0x71, 0xfe, 0xdc, 0x6c, 0x0a, 0x2e, 0x2c, 0x48, 0x6f, 0x49, 0xdb, 0x22, 0x56, + 0x68, 0x72, 0xce, 0x15, 0x8d, 0x32, 0x2b, 0x22, 0x91, 0x69, 0x56, 0xd4, 0x1b, 0x9a, 0x6f, 0xcb, + 0x27, 0xe9, 0x1c, 0xff, 0xea, 0xb0, 0x92, 0x9b, 0xfe, 0xbf, 0x8b, 0xff, 0xd6, 0x94, 0xf0, 0xfa, + 0x31, 0x04, 0xaf, 0xa2, 0x11, 0xa7, 0xcb, 0x62, 0x51, 0xea, 0xce, 0x48, 0x77, 0x0b, 0x64, 0x13, + 0x2e, 0xac, 0xd0, 0x48, 0xac, 0x71, 0x36, 0x0d, 0xa3, 0xc0, 0x6d, 0x44, 0x5d, 0x2f, 0x06, 0xe5, + 0xd9, 0x24, 0x83, 0x66, 0xef, 0x6d, 0xc6, 0xaf, 0x96, 0xcd, 0xaf, 0x2b, 0x5d, 0x17, 0x17, 0x59, + 0x71, 0xdb, 0x70, 0x96, 0x26, 0xe6, 0x0f, 0xf1, 0x61, 0xee, 0x81, 0x93, 0x4f, 0x5a, 0x8a, 0x23, + 0x9f, 0x88, 0xd3, 0xd6, 0x6d, 0x18, 0xe2, 0x44, 0xb9, 0x1b, 0xea, 0xb8, 0x4e, 0x43, 0xee, 0xc1, + 0xa8, 0x72, 0xa1, 0x21, 0x46, 0x51, 0x6e, 0xbb, 0xee, 0xc1, 0x28, 0x3f, 0x5a, 0x9d, 0x9e, 0xe4, + 0x43, 0x18, 0x55, 0x3e, 0x37, 0x67, 0xde, 0xe9, 0x3f, 0x81, 0x09, 0xdd, 0xfb, 0xe6, 0xec, 0x82, + 0xfc, 0x21, 0x5e, 0xdf, 0xca, 0x5b, 0x92, 0x7c, 0xfa, 0x99, 0x44, 0x40, 0x18, 0x21, 0x52, 0xbe, + 0x40, 0x4a, 0x60, 0x6e, 0xf3, 0xcf, 0xa7, 0xa8, 0xc9, 0x87, 0xf2, 0x25, 0x93, 0x22, 0x4e, 0x23, + 0x75, 0x91, 0xd9, 0x24, 0x17, 0xf3, 0x8b, 0x10, 0xab, 0x05, 0xb6, 0x67, 0xb3, 0x4f, 0x73, 0xcd, + 0xdc, 0x5b, 0x74, 0x79, 0x5c, 0xb6, 0x50, 0x4b, 0x4b, 0x25, 0xa2, 0xcb, 0x67, 0x74, 0x35, 0x3f, + 0x77, 0x1d, 0x76, 0xc6, 0x03, 0x3c, 0x05, 0xa6, 0x4a, 0x73, 0x3f, 0xaf, 0x4b, 0x2e, 0xbc, 0xf8, + 0xd8, 0x9b, 0x66, 0xd7, 0x85, 0xac, 0xdb, 0x29, 0x5a, 0xbc, 0xcf, 0x7c, 0x29, 0xec, 0xd6, 0xa4, + 0x13, 0xe3, 0xe9, 0x3f, 0x36, 0xbf, 0x65, 0x97, 0x32, 0x2e, 0xb6, 0x7b, 0xf6, 0x45, 0x1e, 0xbb, + 0x5f, 0x41, 0xed, 0x30, 0x33, 0x22, 0x58, 0x3e, 0xb3, 0x9b, 0x9a, 0x6f, 0x44, 0x26, 0xa5, 0xda, + 0xf4, 0x9e, 0xe0, 0x13, 0xb1, 0xec, 0x54, 0x7d, 0xaf, 0xf5, 0xe0, 0x22, 0x25, 0xf1, 0x7a, 0x4f, + 0x3c, 0x75, 0x4d, 0x7a, 0x89, 0xef, 0xb0, 0xd9, 0xf5, 0xf5, 0x48, 0x3d, 0x98, 0x71, 0x73, 0xad, + 0x3c, 0x44, 0xb3, 0x19, 0x9a, 0x1e, 0xa2, 0x5d, 0xbf, 0x21, 0x4f, 0xfc, 0x9f, 0x41, 0x25, 0x76, + 0x00, 0x39, 0x5b, 0x27, 0xe4, 0x3b, 0x26, 0x92, 0x94, 0xa4, 0x42, 0xd2, 0x2d, 0x17, 0xcf, 0xdc, + 0xf5, 0x3c, 0x09, 0xeb, 0xcf, 0x60, 0x84, 0x63, 0x5b, 0x22, 0x69, 0x65, 0x5e, 0xfa, 0xcb, 0x2e, + 0x76, 0x58, 0xf1, 0x66, 0xee, 0xa5, 0x30, 0x4a, 0xf7, 0xf6, 0xd9, 0x19, 0x29, 0xff, 0x8c, 0x04, + 0x23, 0xab, 0x4b, 0xf7, 0xf6, 0xbe, 0x7a, 0x2c, 0xe7, 0xf4, 0xeb, 0xd9, 0x3b, 0xd4, 0x89, 0xdf, + 0x89, 0x25, 0x02, 0x08, 0xea, 0x6f, 0x73, 0xd3, 0x45, 0xc9, 0x47, 0x4e, 0x59, 0x18, 0xca, 0x29, + 0xaa, 0x2c, 0xab, 0x60, 0x70, 0x76, 0x14, 0xf1, 0x03, 0x37, 0x7a, 0xbe, 0x68, 0xaf, 0xc7, 0x66, + 0x05, 0xbd, 0x40, 0xf2, 0x06, 0x59, 0x68, 0xaf, 0x93, 0x2f, 0x71, 0x29, 0x11, 0xec, 0x17, 0x7c, + 0x3f, 0x0a, 0xa3, 0xc0, 0x69, 0xd7, 0x1a, 0x81, 0xdb, 0x8e, 0x72, 0x3f, 0x3a, 0xf6, 0xe1, 0xce, + 0x22, 0xd3, 0x5c, 0x4a, 0x45, 0x80, 0xf9, 0xac, 0xc8, 0x37, 0xea, 0x59, 0x4d, 0x56, 0x61, 0x97, + 0x93, 0x4b, 0x4d, 0x86, 0x94, 0x7f, 0x99, 0x4c, 0xeb, 0x30, 0x9b, 0x13, 0x2f, 0x48, 0xdd, 0xde, + 0x76, 0x8f, 0x27, 0x34, 0xd7, 0xbd, 0x62, 0xf2, 0x15, 0xcc, 0x64, 0x06, 0x14, 0x52, 0x16, 0xe8, + 0x6e, 0xe1, 0x86, 0x7a, 0x31, 0x7f, 0x02, 0x65, 0xfe, 0xa0, 0x03, 0xfd, 0x96, 0x8d, 0xd8, 0x32, + 0xf1, 0x33, 0x9f, 0x1c, 0x84, 0xe4, 0x7a, 0x9d, 0x8f, 0xa7, 0x1e, 0x9b, 0x4f, 0x63, 0x50, 0x91, + 0x44, 0xba, 0x75, 0x35, 0xf1, 0xb2, 0x0a, 0xbb, 0xbd, 0x25, 0xda, 0x86, 0x99, 0x3d, 0x1a, 0xb8, + 0x8f, 0x9f, 0x27, 0x19, 0x4a, 0xc9, 0x64, 0x96, 0x76, 0xe3, 0xf8, 0x39, 0xcc, 0x2e, 0xfa, 0x47, + 0x6d, 0xf1, 0x6a, 0xcf, 0xe0, 0xa9, 0xae, 0xe2, 0xb3, 0xcb, 0x7b, 0xfb, 0x32, 0xcd, 0xe5, 0x27, + 0xc6, 0x57, 0x2e, 0x6c, 0x3d, 0x73, 0xe7, 0xab, 0xb7, 0x67, 0x26, 0xfd, 0x0e, 0x0e, 0xc2, 0xac, + 0x4c, 0xf9, 0xfa, 0x20, 0xec, 0x92, 0x49, 0x3f, 0xe7, 0x0d, 0xd8, 0x6c, 0x4e, 0x72, 0xfc, 0x2e, + 0x5c, 0x4f, 0xd1, 0xda, 0x4d, 0xb9, 0xb7, 0x98, 0xb9, 0xbe, 0x13, 0x4e, 0xd3, 0x99, 0x89, 0xc0, + 0x33, 0xdb, 0xa9, 0x45, 0x55, 0x68, 0xb5, 0xba, 0xa8, 0x58, 0x44, 0x0f, 0xab, 0xc0, 0x30, 0xd1, + 0x88, 0x3f, 0xa1, 0xd3, 0x76, 0x5b, 0xad, 0x53, 0xc4, 0xa8, 0xd4, 0x7e, 0x00, 0xe3, 0x35, 0xbd, + 0xf2, 0x8c, 0x4a, 0x72, 0x07, 0x85, 0x7a, 0x05, 0xd4, 0xbb, 0xed, 0x5d, 0x7c, 0x41, 0xd5, 0xc6, + 0x73, 0xaa, 0xaf, 0xc8, 0x75, 0x9d, 0x31, 0x12, 0xb7, 0xa9, 0x5d, 0x20, 0x2b, 0xaf, 0xa2, 0x72, + 0x9d, 0xc9, 0xce, 0xf5, 0x56, 0xe7, 0xa9, 0x66, 0x92, 0x69, 0x33, 0x89, 0xd5, 0x3b, 0x3f, 0xad, + 0xf2, 0x89, 0xef, 0x9a, 0x77, 0x93, 0xfb, 0xf9, 0xc4, 0xa9, 0xea, 0x74, 0x3f, 0x9f, 0x54, 0x02, + 0x3c, 0xdd, 0xcf, 0x27, 0x23, 0xbb, 0xdd, 0x32, 0xf2, 0x8a, 0x73, 0xf4, 0x74, 0x31, 0x46, 0x28, + 0x36, 0x19, 0xa9, 0x80, 0x1e, 0xea, 0xc1, 0x39, 0x78, 0x66, 0x9f, 0x2e, 0xb6, 0xd6, 0x64, 0x50, + 0x8e, 0x44, 0x2a, 0xa0, 0xfb, 0x50, 0xe2, 0x49, 0x0e, 0xe2, 0x78, 0x86, 0xb1, 0xeb, 0x5f, 0x3a, + 0xf7, 0x42, 0x97, 0x4e, 0x2d, 0x25, 0x23, 0xc1, 0x29, 0x93, 0x59, 0x4e, 0x88, 0xb8, 0x2e, 0x43, + 0x15, 0xe2, 0x78, 0x6f, 0xca, 0x30, 0x95, 0x0a, 0x01, 0x37, 0x77, 0x31, 0xa3, 0x44, 0xa9, 0x94, + 0xe3, 0x7a, 0x74, 0x38, 0xf5, 0x49, 0x19, 0x21, 0xe3, 0xe6, 0x2e, 0x65, 0x96, 0x09, 0x46, 0x11, + 0x4f, 0xd1, 0x9c, 0x9d, 0x58, 0x3a, 0x7e, 0xc8, 0xd5, 0x05, 0x47, 0x56, 0x73, 0xeb, 0x34, 0xa8, + 0xa2, 0x56, 0xaa, 0x32, 0x14, 0x65, 0x64, 0xb3, 0x7e, 0x3d, 0xe3, 0xad, 0x85, 0x81, 0x11, 0x7b, + 0x83, 0x75, 0x4f, 0xad, 0x4d, 0x1e, 0xc9, 0x8c, 0x31, 0x39, 0x35, 0xf5, 0x62, 0x90, 0xdb, 0x83, + 0x8f, 0x64, 0x8e, 0x98, 0x97, 0xcd, 0x78, 0x1f, 0x2e, 0x27, 0x1e, 0x70, 0x98, 0x8c, 0x6f, 0x65, + 0xbf, 0xf2, 0xc8, 0x14, 0x4f, 0xbe, 0xce, 0x7e, 0x2d, 0xfd, 0xd0, 0x23, 0xd1, 0xef, 0x67, 0x5d, + 0xf3, 0x36, 0x60, 0x12, 0x97, 0x19, 0x99, 0x97, 0x3d, 0x8e, 0x0d, 0x63, 0x82, 0x93, 0x41, 0x8a, + 0x92, 0xa5, 0xea, 0xfd, 0xf8, 0xb8, 0x78, 0x14, 0xcc, 0xb3, 0xbc, 0xcf, 0x99, 0x2f, 0x85, 0x11, + 0x98, 0xb5, 0x8b, 0x89, 0xe4, 0xf1, 0xe4, 0x87, 0x70, 0x2e, 0x7e, 0x2b, 0xcc, 0x59, 0x64, 0xa0, + 0x75, 0x31, 0x94, 0x9d, 0x8b, 0x1f, 0x0c, 0x9f, 0x9d, 0x7c, 0x55, 0x6e, 0x45, 0x31, 0xf9, 0x95, + 0xd4, 0x73, 0x17, 0xe3, 0x1b, 0x4e, 0xb3, 0x23, 0x69, 0xb2, 0x3d, 0x6b, 0xef, 0x34, 0x70, 0xba, + 0x65, 0x87, 0x3d, 0xd4, 0xa7, 0x5b, 0xd7, 0xd0, 0x8c, 0x4a, 0xfd, 0xcd, 0xe1, 0xb3, 0x01, 0x37, + 0x30, 0x54, 0xca, 0x36, 0x0f, 0x8e, 0x97, 0x8d, 0x95, 0xdf, 0xf6, 0x64, 0x80, 0x95, 0x16, 0x5c, + 0xef, 0x19, 0xf7, 0x91, 0xdc, 0x31, 0x5c, 0x5c, 0x7a, 0x47, 0x88, 0xec, 0x72, 0xf2, 0x98, 0xce, + 0x0a, 0x9f, 0xa8, 0xf6, 0xd9, 0x2e, 0x91, 0x1c, 0xd5, 0x3e, 0xdb, 0x35, 0xfe, 0xe2, 0xe7, 0x98, + 0x86, 0x49, 0xec, 0x51, 0x18, 0xfe, 0x88, 0x7a, 0x3c, 0x20, 0x74, 0xd7, 0x6b, 0x9f, 0xeb, 0xe6, + 0xa5, 0x68, 0x8a, 0x10, 0xcf, 0x34, 0x57, 0xc5, 0x49, 0x2c, 0x8f, 0x79, 0x6f, 0x26, 0x5d, 0x5c, + 0xab, 0xaf, 0xf2, 0x01, 0x78, 0xe6, 0x96, 0xe7, 0xc0, 0x17, 0x96, 0x7e, 0xf6, 0x1f, 0xae, 0x16, + 0x7e, 0xf6, 0xf3, 0xab, 0x85, 0x7f, 0xfd, 0xf3, 0xab, 0x85, 0x7f, 0xff, 0xf3, 0xab, 0x85, 0x2f, + 0xe7, 0x4f, 0x17, 0x96, 0xb8, 0xd1, 0x72, 0xa9, 0x17, 0xdd, 0xe1, 0xec, 0x86, 0xf0, 0xbf, 0xb7, + 0xfe, 0x7b, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc2, 0x0f, 0x42, 0xe2, 0xee, 0xea, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -28577,6 +28588,15 @@ func (m *Features) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.CloudAnonymizationKey) > 0 { + i -= len(m.CloudAnonymizationKey) + copy(dAtA[i:], m.CloudAnonymizationKey) + i = encodeVarintAuthservice(dAtA, i, uint64(len(m.CloudAnonymizationKey))) + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xaa + } if m.AccessMonitoringConfigured { i-- if m.AccessMonitoringConfigured { @@ -39850,6 +39870,10 @@ func (m *Features) Size() (n int) { if m.AccessMonitoringConfigured { n += 3 } + l = len(m.CloudAnonymizationKey) + if l > 0 { + n += 2 + l + sovAuthservice(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -49235,6 +49259,40 @@ func (m *Features) Unmarshal(dAtA []byte) error { } } m.AccessMonitoringConfigured = bool(v != 0) + case 37: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CloudAnonymizationKey", wireType) + } + var byteLen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + byteLen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if byteLen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + byteLen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CloudAnonymizationKey = append(m.CloudAnonymizationKey[:0], dAtA[iNdEx:postIndex]...) + if m.CloudAnonymizationKey == nil { + m.CloudAnonymizationKey = []byte{} + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipAuthservice(dAtA[iNdEx:]) diff --git a/api/proto/teleport/legacy/client/proto/authservice.proto b/api/proto/teleport/legacy/client/proto/authservice.proto index 44faf9dd1993a..6246eafb12d5a 100644 --- a/api/proto/teleport/legacy/client/proto/authservice.proto +++ b/api/proto/teleport/legacy/client/proto/authservice.proto @@ -581,6 +581,8 @@ message Features { // NOTE: this flag is used to signal that Access Monitoring is *enabled* on a cluster. // *Access* to the feature is gated on the `AccessMonitoring` entitlement. bool AccessMonitoringConfigured = 36; + // CloudAnonymizationKey is a hash of the Salesforce ID used to anonymize usage events + bytes CloudAnonymizationKey = 37 [(gogoproto.jsontag) = "cloud_anonymization_key,omitempty"]; } // EntitlementInfo is the state and limits of a particular entitlement diff --git a/build.assets/versions.mk b/build.assets/versions.mk index 08af10d8855a0..e33a06dcffe9d 100644 --- a/build.assets/versions.mk +++ b/build.assets/versions.mk @@ -10,7 +10,7 @@ NODE_VERSION ?= 20.18.0 # Run lint-rust check locally before merging code after you bump this. RUST_VERSION ?= 1.81.0 -WASM_PACK_VERSION ?= 0.12.1 +WASM_PACK_VERSION ?= 0.13.1 LIBBPF_VERSION ?= 1.2.2 LIBPCSCLITE_VERSION ?= 1.9.9-teleport diff --git a/docs/pages/admin-guides/access-controls/guides/locking.mdx b/docs/pages/admin-guides/access-controls/guides/locking.mdx index c71bd5f3e6313..69567f86022f3 100644 --- a/docs/pages/admin-guides/access-controls/guides/locking.mdx +++ b/docs/pages/admin-guides/access-controls/guides/locking.mdx @@ -194,51 +194,27 @@ the last known locks. This decision strategy is encoded as one of the two modes: The cluster-wide mode defaults to `best_effort`. You can set up the default locking mode via API or CLI using a `cluster_auth_preference` resource or static -configuration file: +configuration file. - - - - Create a YAML file called `cap.yaml` or get the existing file using - `tctl get cap`. - - ```yaml - kind: cluster_auth_preference - metadata: - name: cluster-auth-preference - spec: - locking_mode: best_effort - version: v2 - ``` - - Create a resource: - - ```code - $ tctl create -f cap.yaml - # cluster auth preference has been updated - ``` - - - Edit `/etc/teleport.yaml` on the Auth Server: +If your Auth Service configuration (`/etc/teleport.yaml` by default) contains +an `auth_service.authentication` section, edit the Teleport configuration +file to contain the following: - ```yaml - auth_service: - authentication: - locking_mode: best_effort - ``` +```yaml +auth_service: + authentication: + locking_mode: best_effort +``` - Restart the Auth Server for the change to take effect. - - +Restart or redeploy the Auth Service for the change to take effect. - - +If not, edit your cluster authentication preference resource: -The cluster-wide mode defaults to `best_effort`. You can set up the default -locking mode via API or CLI using a `cluster_auth_preference` resource: +```code +$ tctl edit cap +``` -Create a YAML file called `cap.yaml` or get the existing file using -`tctl get cap`. +Adjust the file in your editor to include the following: ```yaml kind: cluster_auth_preference @@ -249,15 +225,32 @@ spec: version: v2 ``` -Create a resource: +Save and close your editor to apply your changes. + + + + +The cluster-wide mode defaults to `best_effort`. You can set up the default +locking mode via API or CLI using a `cluster_auth_preference` resource: ```code -$ tctl create -f cap.yaml -# cluster auth preference has been updated +$ tctl edit cap ``` - +Adjust the file in your editor to include the following: + +```yaml +kind: cluster_auth_preference +metadata: + name: cluster-auth-preference +spec: + locking_mode: best_effort +version: v2 +``` + +Save and close your editor to apply your changes. + It is also possible to configure the locking mode for a particular role: diff --git a/docs/pages/admin-guides/deploy-a-cluster/helm-deployments/aws.mdx b/docs/pages/admin-guides/deploy-a-cluster/helm-deployments/aws.mdx index b3aadada628cd..de375be78b5df 100644 --- a/docs/pages/admin-guides/deploy-a-cluster/helm-deployments/aws.mdx +++ b/docs/pages/admin-guides/deploy-a-cluster/helm-deployments/aws.mdx @@ -290,11 +290,9 @@ Edit your `aws-values.yaml` file (created below) to refer to the name of your se ## Step 5/7. Set values to configure the cluster - - - -Before you can install Teleport in your Kubernetes cluster, you will need to -create a secret that contains your Teleport license information. +If you run Teleport Enterprise, you will need to create a secret that contains +your Teleport license information before you can install Teleport in your +Kubernetes cluster. (!docs/pages/includes//enterprise/obtainlicense.mdx!) @@ -305,105 +303,9 @@ this secret as long as your file is named `license.pem`. $ kubectl -n create secret generic license --from-file=license.pem ``` - - - - Next, configure the `teleport-cluster` Helm chart to use the `aws` mode. Create a file called `aws-values.yaml` and write the values you've chosen above to it: - - - - - -```yaml -chartMode: aws -clusterName: # Name of your cluster. Use the FQDN you intend to configure in DNS below. -proxyListenerMode: multiplex -aws: - region: # AWS region - backendTable: # DynamoDB table to use for the Teleport backend - auditLogTable: # DynamoDB table to use for the Teleport audit log (must be different to the backend table) - auditLogMirrorOnStdout: false # Whether to mirror audit log entries to stdout in JSON format (useful for external log collectors) - sessionRecordingBucket: # S3 bucket to use for Teleport session recordings - backups: true # Whether or not to turn on DynamoDB backups - dynamoAutoScaling: false # Whether Teleport should configure DynamoDB's autoscaling. -highAvailability: - replicaCount: 2 # Number of replicas to configure - certManager: - enabled: true # Enable cert-manager support to get TLS certificates - issuerName: letsencrypt-production # Name of the cert-manager Issuer to use (as configured above) -# If you are running Kubernetes 1.23 or above, disable PodSecurityPolicies -podSecurityPolicy: - enabled: false -``` - -If using an AWS PCA with cert-manager, you will need to -[ensure you set](../../../reference/helm-reference/teleport-cluster.mdx) -`highAvailability.certManager.addCommonName: true` in your values file. You will also need to get the certificate authority -certificate for the CA (`aws acm-pca get-certificate-authority-certificate --certificate-authority-arn `), -upload the full certificate chain to a secret, and -[reference the secret](../../../reference/helm-reference/teleport-cluster.mdx) -with `tls.existingCASecretName` in the values file. - - - -```yaml -chartMode: aws -clusterName: # Name of your cluster. Use the FQDN you intend to configure in DNS below. -proxyListenerMode: multiplex -service: - type: ClusterIP -aws: - region: # AWS region - backendTable: # DynamoDB table to use for the Teleport backend - auditLogTable: # DynamoDB table to use for the Teleport audit log (must be different to the backend table) - auditLogMirrorOnStdout: false # Whether to mirror audit log entries to stdout in JSON format (useful for external log collectors) - sessionRecordingBucket: # S3 bucket to use for Teleport session recordings - backups: true # Whether or not to turn on DynamoDB backups - dynamoAutoScaling: false # Whether Teleport should configure DynamoDB's autoscaling. -highAvailability: - replicaCount: 2 # Number of replicas to configure -ingress: - enabled: true - spec: - ingressClassName: alb -annotations: - ingress: - alb.ingress.kubernetes.io/target-type: ip - alb.ingress.kubernetes.io/backend-protocol: HTTPS - alb.ingress.kubernetes.io/scheme: internet-facing - alb.ingress.kubernetes.io/load-balancer-attributes: idle_timeout.timeout_seconds=350 - alb.ingress.kubernetes.io/healthcheck-protocol: HTTPS - alb.ingress.kubernetes.io/success-codes: 200,301,302 - # Replace with your AWS certificate ARN - alb.ingress.kubernetes.io/certificate-arn: "" -# If you are running Kubernetes 1.23 or above, disable PodSecurityPolicies -podSecurityPolicy: - enabled: false -``` - -To use an internal AWS application load balancer (as opposed to an internet-facing ALB), you should -edit the `alb.ingress.kubernetes.io/scheme` annotation: - - ```yaml - alb.ingress.kubernetes.io/scheme: internal - ``` - -To automatically redirect HTTP requests on port 80 to HTTPS requests on port 443, you -can also optionally provide these two values under `annotations.ingress`: - - ```yaml - alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTPS": 443}]' - alb.ingress.kubernetes.io/ssl-redirect: '443' - ``` - - - - - - ```yaml @@ -423,7 +325,9 @@ highAvailability: certManager: enabled: true # Enable cert-manager support to get TLS certificates issuerName: letsencrypt-production # Name of the cert-manager Issuer to use (as configured above) -enterprise: true # Indicate that this is a Teleport Enterprise deployment +# Indicate that this is a Teleport Enterprise deployment. Set to false for +# Teleport Community Edition. +enterprise: true # If you are running Kubernetes 1.23 or above, disable PodSecurityPolicies podSecurityPolicy: enabled: false @@ -455,7 +359,9 @@ aws: dynamoAutoScaling: false # Whether Teleport should configure DynamoDB's autoscaling. highAvailability: replicaCount: 2 # Number of replicas to configure -enterprise: true # Indicate that this is a Teleport Enterprise deployment +# Indicate that this is a Teleport Enterprise deployment. Set to false for +# Teleport Community Edition. +enterprise: true ingress: enabled: true spec: @@ -493,10 +399,6 @@ can also optionally provide these two values under `annotations.ingress`: - - - - Install the chart with the values from your `aws-values.yaml` file using this command: ```code diff --git a/docs/pages/admin-guides/management/admin/self-signed-certs.mdx b/docs/pages/admin-guides/management/admin/self-signed-certs.mdx index 2c7d4d89d52e2..0bdf021076e7d 100644 --- a/docs/pages/admin-guides/management/admin/self-signed-certs.mdx +++ b/docs/pages/admin-guides/management/admin/self-signed-certs.mdx @@ -110,37 +110,37 @@ running Teleport: via the `teleport` CLI, using a Helm chart, or via systemd: If you are using the `teleport-cluster` Helm chart, set [extraArgs](../../../reference/helm-reference/teleport-cluster.mdx) - to include the extra argument: `--insecure`: - - - ```yaml - extraArgs: - - "--insecure" - ``` - - - ```code - $ --set "extraArgs={--insecure}" + to include the extra argument: `--insecure`. + + Here is an example of the field within a values file: + + ```yaml + extraArgs: + - "--insecure" + ``` + + When using the `--set` flag, use the following syntax: + + + ```text + --set "extraArgs={--insecure}" ``` - - - If you are using the `teleport-kube-agent` chart, set the [insecureSkipProxyTLSVerify](../../../reference/helm-reference/teleport-kube-agent.mdx) - flag to `true`: - - - ```yaml - insecureSkipProxyTLSVerify: true - ``` - - - ```code - $ --set insecureSkipProxyTLSVerify=true - ``` - - + flag to `true`. + + In a values file, this would appear as follows: + + ```yaml + insecureSkipProxyTLSVerify: true + ``` + + When using the `--set` flag, use the following syntax: + + ```text + --set insecureSkipProxyTLSVerify=true + ``` diff --git a/docs/pages/connect-your-client/gui-clients.mdx b/docs/pages/connect-your-client/gui-clients.mdx index 50917aafcf0a6..30bc8ef8b727e 100644 --- a/docs/pages/connect-your-client/gui-clients.mdx +++ b/docs/pages/connect-your-client/gui-clients.mdx @@ -19,11 +19,32 @@ work with Teleport. ### Get connection information - - +Get information about the host and port where your database is available so you +can configure your GUI client to access the database. + +#### Using a local proxy server + +Use the `tsh proxy db` command to start a local TLS proxy your GUI database +client will be connecting to. This command requires that you use Teleport +Enterprise (Cloud) or, if self-hosting Teleport, have enabled [TLS +routing](../admin-guides/management/operations/tls-routing.mdx) mode. + +Run a command similar to the following:: + +```code +$ tsh proxy db +Started DB proxy on 127.0.0.1:61740 + +Use following credentials to connect to the proxy: + ca_file=/Users/r0mant/.tsh/keys/root.gravitational.io/certs.pem + cert_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice-db/root/-x509.pem + key_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice +``` + +Use the displayed local proxy host/port and credentials paths when configuring +your GUI client below. When entering the hostname, use `localhost` rather than +`127.0.0.1`. - - Starting the local database proxy with the `--tunnel` flag will create an authenticated tunnel that you can use to connect to your database instances. You won't need to configure any credentials when connecting to this tunnel. @@ -46,30 +67,11 @@ $ tsh proxy db --db-user=my-database-user --db-name=my-schema --tunnel - -If you're using Teleport in [TLS routing](../admin-guides/management/operations/tls-routing.mdx) -mode where each database protocol is multiplexed on the same web proxy port, use -the following command to start a local TLS proxy your GUI database client will -be connecting to: - -```code -$ tsh proxy db -Started DB proxy on 127.0.0.1:61740 - -Use following credentials to connect to the proxy: - ca_file=/Users/r0mant/.tsh/keys/root.gravitational.io/certs.pem - cert_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice-db/root/-x509.pem - key_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice -``` +#### Using a remote host and port -Use the displayed local proxy host/port and credentials paths when configuring -your GUI client below. When entering the hostname, use `localhost` rather than -`127.0.0.1`. - - -If you're not using TLS routing, run the following command to see the database -connection information: +If you are self-hosting Teleport and not using [TLS +routing](../admin-guides/management/operations/tls-routing.mdx), run the +following command to see the database connection information: ```code # View configuration for the database you're logged in to. @@ -94,32 +96,6 @@ Key: /Users/alice/.tsh/keys/teleport.example.com/alice The displayed `CA`, `Cert`, and `Key` files are used to connect through pgAdmin 4, MySQL Workbench, and other graphical database clients that support mutual TLS authentication. - - - - - - -Use the following command to start a local TLS proxy your GUI database client -will be connecting to: - -```code -$ tsh proxy db -Started DB proxy on 127.0.0.1:61740 - -Use following credentials to connect to the proxy: - ca_file=/Users/r0mant/.tsh/keys/root.gravitational.io/certs.pem - cert_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice-db/root/-x509.pem - key_file=/Users/r0mant/.tsh/keys/root.gravitational.io/alice -``` - -Use the displayed local proxy host/port and credentials paths when configuring -your GUI client below. When entering the hostname, use `localhost` rather than -`127.0.0.1`. - - - - ## MongoDB Compass diff --git a/docs/pages/connect-your-client/introduction.mdx b/docs/pages/connect-your-client/introduction.mdx index 233e5c2fe4e3e..fe2529ffc5bcc 100644 --- a/docs/pages/connect-your-client/introduction.mdx +++ b/docs/pages/connect-your-client/introduction.mdx @@ -15,53 +15,12 @@ Teleport, and includes links to more detailed documentation at the end. [downloading](https://goteleport.com/download/) and installing `tsh`, sign in to your Teleport cluster: - - -```code -$ tsh login --proxy= --user= -Enter password for Teleport user alice: -Tap any security key -> Profile URL: https://teleport.example.com:443 - Logged in as: alice - Cluster: example.com - Roles: access - Logins: ubuntu, ec2-user - Kubernetes: enabled - Valid until: 2022-11-01 22:37:05 -0500 CDT [valid for 12h0m0s] - Extensions: permit-agent-forwarding, permit-port-forwarding, permit-pty, private-key-policy -``` - - - - -```code -$ tsh login --proxy= --auth=github -If browser window does not open automatically, open it by clicking on the link: - http://127.0.0.1:49927/1d80e257-ec61-4ed2-9403-784f8d35b2fe -> Profile URL: https://teleport.example.com:443 - Logged in as: user@example.com - Cluster: example.com - Roles: access - Logins: ubuntu, ec2-user - Kubernetes: enabled - Valid until: 2022-11-01 22:37:05 -0500 CDT [valid for 12h0m0s] - Extensions: permit-agent-forwarding, permit-port-forwarding, permit-pty, private-key-policy -``` - -Depending on how Teleport was configured for your network, you may not need -the additional flags `--auth`. Your administrator should provide the details -required for your particular use case. - - - - +Authenticate to Teleport as a local user with `tsh login` by +assigning to your Teleport username: - - - ```code $ tsh login --proxy= --user= Enter password for Teleport user alice: @@ -77,7 +36,11 @@ Tap any security key ``` - + + +Authenticate to Teleport as a single sign-on (SSO) user by running `tsh login` +and assigning the `auth` flag to the name of your authentication connector, if +implemented by your administrators: ```code $ tsh login --proxy= --auth= @@ -97,8 +60,6 @@ Depending on how Teleport was configured for your network, you may not need the additional flags `--auth`. Your administrator should provide the details required for your particular use case. - - diff --git a/docs/pages/enroll-resources/auto-discovery/kubernetes/aws.mdx b/docs/pages/enroll-resources/auto-discovery/kubernetes/aws.mdx index 92d2f6ac9c52c..1d16e399667ee 100644 --- a/docs/pages/enroll-resources/auto-discovery/kubernetes/aws.mdx +++ b/docs/pages/enroll-resources/auto-discovery/kubernetes/aws.mdx @@ -137,11 +137,26 @@ subjects: ### IAM mapping - - +If you cluster includes the `aws-auth` config map, edit the `configmap/aws-auth` +in the `kube-system` namespace and append the following to `mapRoles`. Replace +`{teleport_aws_iam_role}` with the appropriate IAM role that Teleport Kubernetes +Service will use. This step will link the Teleport IAM role into the Kubernetes +RBAC group `teleport`, allowing Teleport Kubernetes Service to forward requests +into the cluster: + +```yaml +apiVersion: v1 +data: + mapRoles: | + - groups: + - teleport + rolearn: {teleport_aws_iam_role} # e.g. arn:aws:iam::222222222222:role/teleport-role + username: teleport +``` -Create an EKS access entry to link the -to the Kubernetes Group `teleport` we created in the previous step. +Otherwise, create an EKS access entry to link the to the Kubernetes Group +`teleport` we created in the previous step: ```code $ aws eks create-access-entry \ @@ -155,28 +170,6 @@ $ aws eks create-access-entry \ } ``` - - - - -Finally, edit the `configmap/aws-auth` in the `kube-system` namespace and append -the following to `mapRoles`. Replace `{teleport_aws_iam_role}` with the -appropriate IAM role that Teleport Kubernetes Service will use. -This step will link the Teleport IAM role into the Kubernetes RBAC group `teleport`, -allowing Teleport Kubernetes Service to forward requests into the cluster. - -```yaml -apiVersion: v1 -data: - mapRoles: | - - groups: - - teleport - rolearn: {teleport_aws_iam_role} # e.g. arn:aws:iam::222222222222:role/teleport-role - username: teleport -``` - - - At this point, the Teleport IAM role already has the minimum permissions to forward requests to the cluster. @@ -215,13 +208,29 @@ service means granting administrator-level permissions on the Kubernetes cluster To follow least privilege principle we do not recommend using this method in production. +If your cluster contains an `aws-auth` config map, you can use this to associate +the Teleport IAM role with the `system:masters` RBAC group. Edit the +`configmap/aws-auth` in the `kube-system` namespace and append the following to +`mapRoles`: +```yaml +apiVersion: v1 +data: + mapRoles: | + ... + - groups: + - system:masters + rolearn: {teleport_aws_iam_role} # e.g. arn:aws:iam::222222222222:role/teleport-role + username: teleport +``` - - +Replace `{teleport_aws_iam_role}` with the appropriate IAM role that +Teleport Kubernetes Service is using. -Create an EKS access entry and Access Policy to link the -to the cluster wide policy `arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy` (equivalent of `cluster-admin` `ClusterRole`). +Otherwise, create an EKS access entry and Access Policy to link the to the cluster wide +policy `arn:aws:eks::aws:cluster-access-policy/AmazonEKSClusterAdminPolicy` +(equivalent of `cluster-admin` `ClusterRole`): ```code $ aws eks create-access-entry \ @@ -246,31 +255,6 @@ $ aws eks associate-access-policy \ ``` - - - - -To associate the Teleport IAM role with the `system:masters` RBAC group, -edit the `configmap/aws-auth` in the `kube-system` namespace and append -the following to `mapRoles`. - -```yaml -apiVersion: v1 -data: - mapRoles: | - ... - - groups: - - system:masters - rolearn: {teleport_aws_iam_role} # e.g. arn:aws:iam::222222222222:role/teleport-role - username: teleport -``` - -Please replace `{teleport_aws_iam_role}` with the appropriate IAM role that -Teleport Kubernetes Service is using. - - - - At this point, the Teleport IAM role already has the minimum permissions to forward requests to the cluster. diff --git a/docs/pages/reference/agent-services/agent-services.mdx b/docs/pages/reference/agent-services/agent-services.mdx index 25b82604a4d4b..5e3a911bde225 100644 --- a/docs/pages/reference/agent-services/agent-services.mdx +++ b/docs/pages/reference/agent-services/agent-services.mdx @@ -4,7 +4,9 @@ h1: Agent Service References description: Includes guides to use while using the SSH Service, Database Service, and other Teleport Agent services. --- -Use these reference guides to configure and run the SSH Service, Database -Service, and other Teleport Agent services. +Use these reference guides to configure and run Teleport Agent services. For a +comprehensive list of options you can configure when running the `teleport` +binary, including all options for Agent services, consult the [Teleport +Configuration Reference](../config.mdx). (!toc!) diff --git a/docs/pages/reference/architecture/architecture.mdx b/docs/pages/reference/architecture/architecture.mdx index bab8bbee62285..7400da6f4dfc4 100644 --- a/docs/pages/reference/architecture/architecture.mdx +++ b/docs/pages/reference/architecture/architecture.mdx @@ -93,7 +93,7 @@ about the architecture of Teleport Agent features: Teleport cluster ensures that Agents run the most up-to-date version of the `teleport` binary. - [Automatically discovering Kubernetes - applications](../../reference/architecture//kubernetes-applications-architecture.mdx): + applications](../../reference/architecture/kubernetes-applications-architecture.mdx): The Teleport Discovery Service queries your Kubernetes cluster and registers applications with the Teleport Auth Service. - [Session recordings](session-recording.mdx): Teleport Agents record user diff --git a/docs/pages/usage-billing.mdx b/docs/pages/usage-billing.mdx index 3465c5a84bbc7..266ca04fd9d11 100644 --- a/docs/pages/usage-billing.mdx +++ b/docs/pages/usage-billing.mdx @@ -126,7 +126,7 @@ which starts on the subscription start date and ends on each monthly anniversary thereafter. If you recreate a single resource more than once an hour, this will affect the -hourly average. For example, if were to create then delete 10 servers three +hourly average. For example, if you were to create then delete 10 servers three times in one hour, Teleport would display 10 servers at any given time. However, for the entire hour, Teleport would report 30 protected servers. diff --git a/e b/e index b23222d7c1c5a..91f2b752c1547 160000 --- a/e +++ b/e @@ -1 +1 @@ -Subproject commit b23222d7c1c5a747f41a95fb98d15e0073f7cd99 +Subproject commit 91f2b752c154770eb08328307665037e5a9c8dac diff --git a/integration/hostuser_test.go b/integration/hostuser_test.go index 23f385d045c4d..242908525cdf3 100644 --- a/integration/hostuser_test.go +++ b/integration/hostuser_test.go @@ -513,6 +513,94 @@ func TestRootHostUsers(t *testing.T) { require.NoError(t, err) assert.Equal(t, expectedShell, userShells[namedShellUser]) }) + + t.Run("Test expiration removal", func(t *testing.T) { + expiredUser := "expired-user" + backendExpiredUser := "backend-expired-user" + t.Cleanup(func() { cleanupUsersAndGroups([]string{expiredUser, backendExpiredUser}, []string{"test-group"}) }) + + defaultBackend, err := srv.DefaultHostUsersBackend() + require.NoError(t, err) + + backend := &hostUsersBackendWithExp{HostUsersBackend: defaultBackend} + users := srv.NewHostUsers(context.Background(), presence, "host_uuid", srv.WithHostUsersBackend(backend)) + + // Make sure the backend actually creates expired users + err = backend.CreateUser("backend-expired-user", nil, host.UserOpts{}) + require.NoError(t, err) + + hasExpirations, _, err := host.UserHasExpirations(backendExpiredUser) + require.NoError(t, err) + require.True(t, hasExpirations) + + // Upsert a new user which should have the expirations removed + _, err = users.UpsertUser(expiredUser, services.HostUsersInfo{ + Mode: services.HostUserModeKeep, + }) + require.NoError(t, err) + + hasExpirations, _, err = host.UserHasExpirations(expiredUser) + require.NoError(t, err) + require.False(t, hasExpirations) + + // Expire existing user so we can test that updates also remove expirations + expireUser := func(username string) error { + chageBin, err := exec.LookPath("chage") + require.NoError(t, err) + + cmd := exec.Command(chageBin, "-E", "1", "-I", "1", "-M", "1", username) + return cmd.Run() + } + require.NoError(t, expireUser(expiredUser)) + hasExpirations, _, err = host.UserHasExpirations(expiredUser) + require.NoError(t, err) + require.True(t, hasExpirations) + + // Update user without any changes + _, err = users.UpsertUser(expiredUser, services.HostUsersInfo{ + Mode: services.HostUserModeKeep, + }) + require.NoError(t, err) + + hasExpirations, _, err = host.UserHasExpirations(expiredUser) + require.NoError(t, err) + require.False(t, hasExpirations) + + // Reinstate expirations again + require.NoError(t, expireUser(expiredUser)) + hasExpirations, _, err = host.UserHasExpirations(expiredUser) + require.NoError(t, err) + require.True(t, hasExpirations) + + // Update user with changes + _, err = users.UpsertUser(expiredUser, services.HostUsersInfo{ + Mode: services.HostUserModeKeep, + Groups: []string{"test-group"}, + }) + require.NoError(t, err) + + hasExpirations, _, err = host.UserHasExpirations(expiredUser) + require.NoError(t, err) + require.False(t, hasExpirations) + }) +} + +type hostUsersBackendWithExp struct { + srv.HostUsersBackend +} + +func (u *hostUsersBackendWithExp) CreateUser(name string, groups []string, opts host.UserOpts) error { + if err := u.HostUsersBackend.CreateUser(name, groups, opts); err != nil { + return trace.Wrap(err) + } + + chageBin, err := exec.LookPath("chage") + if err != nil { + return trace.Wrap(err) + } + + cmd := exec.Command(chageBin, "-E", "1", "-I", "1", "-M", "1", name) + return cmd.Run() } func TestRootLoginAsHostUser(t *testing.T) { diff --git a/lib/auth/auth.go b/lib/auth/auth.go index fa7ae3d46cca0..8723e1c46260c 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -2003,13 +2003,20 @@ func (a *Server) GetClusterID(ctx context.Context, opts ...services.MarshalOptio } // GetAnonymizationKey returns the anonymization key that identifies this client. -// It falls back to the cluster ID if the anonymization key is not set in license file. +// The anonymization key may be any of the following, in order of precedence: +// - (Teleport Cloud) a key provided by the Teleport Cloud API +// - a key embedded in the license file +// - the cluster's UUID func (a *Server) GetAnonymizationKey(ctx context.Context, opts ...services.MarshalOption) (string, error) { - if a.license == nil || len(a.license.AnonymizationKey) == 0 { - return a.GetClusterID(ctx, opts...) + if key := modules.GetModules().Features().CloudAnonymizationKey; len(key) > 0 { + return string(key), nil } - return string(a.license.AnonymizationKey), nil + if a.license != nil && len(a.license.AnonymizationKey) > 0 { + return string(a.license.AnonymizationKey), nil + } + id, err := a.GetClusterID(ctx, opts...) + return id, trace.Wrap(err) } // GetDomainName returns the domain name that identifies this authority server. diff --git a/lib/auth/auth_test.go b/lib/auth/auth_test.go index d9170412d839e..0122368446160 100644 --- a/lib/auth/auth_test.go +++ b/lib/auth/auth_test.go @@ -4334,6 +4334,68 @@ func TestCleanupNotifications(t *testing.T) { }, 3*time.Second, 100*time.Millisecond) } +func TestServer_GetAnonymizationKey(t *testing.T) { + tests := []struct { + name string + testModules *modules.TestModules + license *license.License + want string + errCheck require.ErrorAssertionFunc + }{ + { + name: "returns CloudAnonymizationKey if present", + testModules: &modules.TestModules{ + TestFeatures: modules.Features{CloudAnonymizationKey: []byte("cloud-key")}, + }, + license: &license.License{ + AnonymizationKey: []byte("license-key"), + }, + want: "cloud-key", + errCheck: require.NoError, + }, + { + name: "Returns license AnonymizationKey if no Cloud Key is present", + testModules: &modules.TestModules{}, + license: &license.License{ + AnonymizationKey: []byte("license-key"), + }, + want: "license-key", + errCheck: require.NoError, + }, + { + name: "Returns clusterID if no cloud key nor license key is present", + testModules: &modules.TestModules{}, + license: &license.License{}, + want: "cluster-id", + errCheck: require.NoError, + }, + } + + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + testAuthServer, err := NewTestAuthServer(TestAuthServerConfig{ + Dir: t.TempDir(), + Clock: clockwork.NewFakeClock(), + ClusterID: "cluster-id", + }) + require.NoError(t, err) + t.Cleanup(func() { require.NoError(t, testAuthServer.Close()) }) + + testTLSServer, err := testAuthServer.NewTestTLSServer() + require.NoError(t, err) + t.Cleanup(func() { require.NoError(t, testTLSServer.Close()) }) + + modules.SetTestModules(t, tt.testModules) + + testTLSServer.AuthServer.AuthServer.SetLicense(tt.license) + + got, err := testTLSServer.AuthServer.AuthServer.GetAnonymizationKey(context.Background()) + tt.errCheck(t, err) + require.Equal(t, tt.want, got) + }) + } +} + func newUserNotificationWithExpiry(t *testing.T, username string, title string, expires *timestamppb.Timestamp) *notificationsv1.Notification { t.Helper() diff --git a/lib/auth/authclient/api.go b/lib/auth/authclient/api.go index efc4eab13b54d..2d4ebe3204e6a 100644 --- a/lib/auth/authclient/api.go +++ b/lib/auth/authclient/api.go @@ -34,6 +34,7 @@ import ( integrationpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" kubewaitingcontainerpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/kubewaitingcontainer/v1" machineidv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/machineid/v1" + provisioningv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/provisioning/v1" userprovisioningpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/userprovisioning/v2" userspb "github.com/gravitational/teleport/api/gen/proto/go/teleport/users/v1" usertasksv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/usertasks/v1" @@ -1231,6 +1232,9 @@ type Cache interface { ListStaticHostUsers(ctx context.Context, pageSize int, startKey string) ([]*userprovisioningpb.StaticHostUser, string, error) // GetStaticHostUser returns a static host user by name. GetStaticHostUser(ctx context.Context, name string) (*userprovisioningpb.StaticHostUser, error) + + // GetProvisioningState gets a specific provisioning state + GetProvisioningState(context.Context, services.DownstreamID, services.ProvisioningStateID) (*provisioningv1.PrincipalState, error) } type NodeWrapper struct { diff --git a/lib/auth/helpers.go b/lib/auth/helpers.go index 9553f2697cf8c..ba403790d0675 100644 --- a/lib/auth/helpers.go +++ b/lib/auth/helpers.go @@ -69,6 +69,8 @@ import ( type TestAuthServerConfig struct { // ClusterName is cluster name ClusterName string + // ClusterID is the cluster ID; optional - sets to random UUID string if not present + ClusterID string // Dir is directory for local backend Dir string // AcceptedUsage is an optional list of restricted @@ -285,6 +287,7 @@ func NewTestAuthServer(cfg TestAuthServerConfig) (*TestAuthServer, error) { clusterName, err := services.NewClusterNameWithRandomID(types.ClusterNameSpecV2{ ClusterName: cfg.ClusterName, + ClusterID: cfg.ClusterID, }) if err != nil { return nil, trace.Wrap(err) diff --git a/lib/cache/cache.go b/lib/cache/cache.go index e9273cfb0e8a8..2c3013e9b0d37 100644 --- a/lib/cache/cache.go +++ b/lib/cache/cache.go @@ -44,6 +44,7 @@ import ( dbobjectv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/dbobject/v1" kubewaitingcontainerpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/kubewaitingcontainer/v1" notificationsv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/notifications/v1" + provisioningv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/provisioning/v1" userprovisioningpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/userprovisioning/v2" userspb "github.com/gravitational/teleport/api/gen/proto/go/teleport/users/v1" usertasksv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/usertasks/v1" @@ -3544,3 +3545,16 @@ func (c *Cache) GetAccessGraphSettings(ctx context.Context) (*clusterconfigpb.Ac } return rg.reader.GetAccessGraphSettings(ctx) } + +func (c *Cache) GetProvisioningState(ctx context.Context, downstream services.DownstreamID, id services.ProvisioningStateID) (*provisioningv1.PrincipalState, error) { + ctx, span := c.Tracer.Start(ctx, "cache/GetProvisioningState") + defer span.End() + + rg, err := readCollectionCache(c, c.collections.provisioningStates) + if err != nil { + return nil, trace.Wrap(err) + } + defer rg.Release() + + return rg.reader.GetProvisioningState(ctx, downstream, id) +} diff --git a/lib/modules/modules.go b/lib/modules/modules.go index a93b359c3ac09..8f950908d600f 100644 --- a/lib/modules/modules.go +++ b/lib/modules/modules.go @@ -58,6 +58,10 @@ type Features struct { SupportType proto.SupportType // Entitlements reflect Cloud Entitlements including access and limits Entitlements map[entitlements.EntitlementKind]EntitlementInfo + // CloudAnonymizationKey is the key used to anonymize usage events in a cluster. + // Only applicable for Cloud customers (self-hosted clusters get their anonymization key from the + // license file). + CloudAnonymizationKey []byte // todo (michellescripts) have the following fields evaluated for deprecation, consolidation, or fetch from Cloud // AdvancedAccessWorkflows is currently set to the value of the Cloud Access Requests entitlement @@ -125,6 +129,7 @@ func (f Features) ToProto() *proto.Features { RecoveryCodes: f.RecoveryCodes, AccessMonitoringConfigured: f.AccessMonitoringConfigured, Entitlements: f.EntitlementsToProto(), + CloudAnonymizationKey: f.CloudAnonymizationKey, } // remove setLegacyLogic in v18 diff --git a/lib/modules/modules_test.go b/lib/modules/modules_test.go index eaf289e59546b..5862c7c27b528 100644 --- a/lib/modules/modules_test.go +++ b/lib/modules/modules_test.go @@ -106,6 +106,7 @@ func TestFeatures_ToProto(t *testing.T) { Questionnaire: true, RecoveryCodes: true, AccessMonitoringConfigured: false, + CloudAnonymizationKey: []byte("001"), Entitlements: map[string]*proto.EntitlementInfo{ string(entitlements.AccessLists): {Enabled: true, Limit: 111}, string(entitlements.AccessMonitoring): {Enabled: true, Limit: 2113}, @@ -180,6 +181,7 @@ func TestFeatures_ToProto(t *testing.T) { Questionnaire: true, RecoveryCodes: true, AccessMonitoringConfigured: false, + CloudAnonymizationKey: []byte("001"), Entitlements: map[entitlements.EntitlementKind]modules.EntitlementInfo{ entitlements.AccessLists: {Enabled: true, Limit: 111}, entitlements.AccessMonitoring: {Enabled: true, Limit: 2113}, diff --git a/lib/services/access_request.go b/lib/services/access_request.go index 4de491ecdcc05..9a62cc22c11f7 100644 --- a/lib/services/access_request.go +++ b/lib/services/access_request.go @@ -46,6 +46,7 @@ import ( const ( maxAccessRequestReasonSize = 4096 maxResourcesPerRequest = 300 + maxResourcesLength = 2048 // A day is sometimes 23 hours, sometimes 25 hours, usually 24 hours. day = 24 * time.Hour @@ -1157,6 +1158,7 @@ func (m *RequestValidator) Validate(ctx context.Context, req types.AccessRequest // deduplicate requested resource IDs var deduplicated []types.ResourceID seen := make(map[string]struct{}) + resourcesLen := 0 for _, resource := range req.GetRequestedResourceIDs() { id := types.ResourceIDToString(resource) if _, isDuplicate := seen[id]; isDuplicate { @@ -1164,9 +1166,17 @@ func (m *RequestValidator) Validate(ctx context.Context, req types.AccessRequest } seen[id] = struct{}{} deduplicated = append(deduplicated, resource) + resourcesLen += len(id) } req.SetRequestedResourceIDs(deduplicated) + // In addition to capping the maximum number of resources in a single request, + // we also need to ensure that the sum of the resource IDs in the request doesn't + // get too big. + if resourcesLen > maxResourcesLength { + return trace.BadParameter("access request exceeds maximum length: try reducing the number of resources in the request") + } + // determine the roles which should be requested for a resource access // request, and write them to the request if err := m.setRolesForResourceRequest(ctx, req); err != nil { diff --git a/lib/services/access_request_test.go b/lib/services/access_request_test.go index e413c8e66f3bf..5c40d17115ee9 100644 --- a/lib/services/access_request_test.go +++ b/lib/services/access_request_test.go @@ -2158,7 +2158,7 @@ func (mcg mockClusterGetter) GetRemoteCluster(ctx context.Context, clusterName s return nil, trace.NotFound("remote cluster %q was not found", clusterName) } -func TestValidateDuplicateRequestedResources(t *testing.T) { +func TestValidateResourceRequestSizeLimits(t *testing.T) { g := &mockGetter{ roles: make(map[string]types.Role), userStates: make(map[string]*userloginstate.UserLoginState), @@ -2220,6 +2220,17 @@ func TestValidateDuplicateRequestedResources(t *testing.T) { require.Len(t, req.GetRequestedResourceIDs(), 2) require.Equal(t, "/someCluster/node/resource1", types.ResourceIDToString(req.GetRequestedResourceIDs()[0])) require.Equal(t, "/someCluster/node/resource2", types.ResourceIDToString(req.GetRequestedResourceIDs()[1])) + + var requestedResourceIDs []types.ResourceID + for i := 0; i < 200; i++ { + requestedResourceIDs = append(requestedResourceIDs, types.ResourceID{ + ClusterName: "someCluster", + Kind: "node", + Name: "resource" + strconv.Itoa(i), + }) + } + req.SetRequestedResourceIDs(requestedResourceIDs) + require.ErrorContains(t, ValidateAccessRequestForUser(context.Background(), clock, g, req, identity, ExpandVars(true)), "access request exceeds maximum length") } func TestValidateAccessRequestClusterNames(t *testing.T) { diff --git a/lib/services/provisioningstates.go b/lib/services/provisioningstates.go index e51e4b9b782fc..8d1e1c0de5497 100644 --- a/lib/services/provisioningstates.go +++ b/lib/services/provisioningstates.go @@ -33,12 +33,16 @@ type DownstreamID string // disambiguated by a DownstreamID when queried or updated. type ProvisioningStateID string -// DownstreamProvisioningStates defines an interface for managing principal -// provisioning state records scoped by a target downstream receiver. -type DownstreamProvisioningStates interface { +type DownstreamProvisioningStateGetter interface { // GetProvisioningState fetches a single provisioning state record for a given // downstream and principal, GetProvisioningState(context.Context, DownstreamID, ProvisioningStateID) (*provisioningv1.PrincipalState, error) +} + +// DownstreamProvisioningStates defines an interface for managing principal +// provisioning state records scoped by a target downstream receiver. +type DownstreamProvisioningStates interface { + DownstreamProvisioningStateGetter // ListProvisioningStates lists all provisioning state records for a given // downstream receiver. diff --git a/lib/srv/usermgmt.go b/lib/srv/usermgmt.go index 81cbd81a12ff2..77dec5c37d0fd 100644 --- a/lib/srv/usermgmt.go +++ b/lib/srv/usermgmt.go @@ -42,27 +42,54 @@ import ( "github.com/gravitational/teleport/lib/utils/host" ) -// NewHostUsers initialize a new HostUsers object -func NewHostUsers(ctx context.Context, storage services.PresenceInternal, uuid string) HostUsers { - //nolint:staticcheck // SA4023. False positive on macOS. - backend, err := newHostUsersBackend() - switch { - case trace.IsNotImplemented(err), trace.IsNotFound(err): - slog.DebugContext(ctx, "Skipping host user management", "error", err) - return nil - case err != nil: //nolint:staticcheck // linter fails on non-linux system as only linux implementation returns useful values. - slog.WarnContext(ctx, "Error making new HostUsersBackend", "error", err) - return nil +type HostUsersOpt = func(hostUsers *HostUserManagement) + +// WithHostUsersBackend injects a custom backend to be used within HostUserManagement +func WithHostUsersBackend(backend HostUsersBackend) HostUsersOpt { + return func(hostUsers *HostUserManagement) { + hostUsers.backend = backend } +} + +// DefaultHostUsersBackend returns the default HostUsersBackend for the host operating system +func DefaultHostUsersBackend() (HostUsersBackend, error) { + return newHostUsersBackend() +} + +// NewHostUsers initialize a new HostUsers object +func NewHostUsers(ctx context.Context, storage services.PresenceInternal, uuid string, opts ...HostUsersOpt) HostUsers { + // handle fields that must be specified or aren't configurable cancelCtx, cancelFunc := context.WithCancel(ctx) - return &HostUserManagement{ + hostUsers := &HostUserManagement{ log: slog.With(teleport.ComponentKey, teleport.ComponentHostUsers), - backend: backend, ctx: cancelCtx, cancel: cancelFunc, storage: storage, userGrace: time.Second * 30, } + + // set configurable fields that don't have to be specified + for _, opt := range opts { + opt(hostUsers) + } + + // set default values for required fields that don't have to be specified + if hostUsers.backend == nil { + //nolint:staticcheck // SA4023. False positive on macOS. + backend, err := newHostUsersBackend() + switch { + case trace.IsNotImplemented(err), trace.IsNotFound(err): + slog.DebugContext(ctx, "Skipping host user management", "error", err) + return nil + case err != nil: //nolint:staticcheck // linter fails on non-linux system as only linux implementation returns useful values. + slog.WarnContext(ctx, "Error making new HostUsersBackend", "error", err) + return nil + } + + hostUsers.backend = backend + } + + return hostUsers } func NewHostSudoers(uuid string) HostSudoers { @@ -113,7 +140,10 @@ type HostUsersBackend interface { // CreateHomeDirectory creates the users home directory and copies in /etc/skel CreateHomeDirectory(userHome string, uid, gid string) error // GetDefaultHomeDirectory returns the default home directory path for the given user - GetDefaultHomeDirectory(user string) (string, error) + GetDefaultHomeDirectory(name string) (string, error) + // RemoveExpirations removes any sort of password or account expiration from the user + // that may have been placed by password policies. + RemoveExpirations(name string) error } type userCloser struct { @@ -436,6 +466,7 @@ func (u *HostUserManagement) UpsertUser(name string, ui services.HostUsersInfo) } } + defer u.backend.RemoveExpirations(name) if hostUser == nil { if err := u.createUser(name, ui); err != nil { return nil, trace.Wrap(err) @@ -450,6 +481,7 @@ func (u *HostUserManagement) UpsertUser(name string, ui services.HostUsersInfo) } } + // attempt to remove password expirations from managed users if they've been added return closer, nil } diff --git a/lib/srv/usermgmt_linux.go b/lib/srv/usermgmt_linux.go index 3626a599beb72..c6ba42ba35d8a 100644 --- a/lib/srv/usermgmt_linux.go +++ b/lib/srv/usermgmt_linux.go @@ -51,7 +51,7 @@ type HostSudoersProvisioningBackend struct { // newHostUsersBackend initializes a new OS specific HostUsersBackend func newHostUsersBackend() (HostUsersBackend, error) { var missing []string - for _, requiredBin := range []string{"usermod", "useradd", "getent", "groupadd", "visudo"} { + for _, requiredBin := range []string{"usermod", "useradd", "getent", "groupadd", "visudo", "chage"} { if _, err := exec.LookPath(requiredBin); err != nil { missing = append(missing, requiredBin) } @@ -283,3 +283,8 @@ func (u *HostUsersProvisioningBackend) CreateHomeDirectory(userHome, uidS, gidS return nil } + +func (u *HostUsersProvisioningBackend) RemoveExpirations(username string) error { + _, err := host.RemoveUserExpirations(username) + return trace.Wrap(err) +} diff --git a/lib/srv/usermgmt_test.go b/lib/srv/usermgmt_test.go index fb07adddf6a34..1a1908e0f431d 100644 --- a/lib/srv/usermgmt_test.go +++ b/lib/srv/usermgmt_test.go @@ -184,6 +184,10 @@ func (*testHostUserBackend) CheckSudoers(contents []byte) error { return errors.New("invalid") } +func (*testHostUserBackend) RemoveExpirations(user string) error { + return nil +} + // WriteSudoersFile implements HostUsersBackend func (tm *testHostUserBackend) WriteSudoersFile(user string, entries []byte) error { entry := strings.TrimSpace(string(entries)) diff --git a/lib/teleterm/apiserver/handler/handler.go b/lib/teleterm/apiserver/handler/handler.go index c6a2efdc16043..8225992d78ba9 100644 --- a/lib/teleterm/apiserver/handler/handler.go +++ b/lib/teleterm/apiserver/handler/handler.go @@ -23,6 +23,7 @@ import ( api "github.com/gravitational/teleport/gen/proto/go/teleport/lib/teleterm/v1" "github.com/gravitational/teleport/lib/teleterm/daemon" + "github.com/gravitational/teleport/lib/ui" ) // New creates an instance of Handler @@ -59,17 +60,13 @@ type Handler struct { Config } -// sortedLabels is a sort wrapper that sorts labels by name -type APILabels []*api.Label - -func (s APILabels) Len() int { - return len(s) -} - -func (s APILabels) Less(i, j int) bool { - return s[i].Name < s[j].Name -} - -func (s APILabels) Swap(i, j int) { - s[i], s[j] = s[j], s[i] +func makeAPILabels(uiLabels []ui.Label) []*api.Label { + apiLabels := make([]*api.Label, 0, len(uiLabels)) + for _, uiLabel := range uiLabels { + apiLabels = append(apiLabels, &api.Label{ + Name: uiLabel.Name, + Value: uiLabel.Value, + }) + } + return apiLabels } diff --git a/lib/teleterm/apiserver/handler/handler_apps.go b/lib/teleterm/apiserver/handler/handler_apps.go index c8eb7ca0e4263..80645291c041a 100644 --- a/lib/teleterm/apiserver/handler/handler_apps.go +++ b/lib/teleterm/apiserver/handler/handler_apps.go @@ -18,13 +18,13 @@ package handler import ( "context" - "sort" "github.com/gravitational/trace" "github.com/gravitational/teleport/api/types" api "github.com/gravitational/teleport/gen/proto/go/teleport/lib/teleterm/v1" "github.com/gravitational/teleport/lib/teleterm/clusters" + "github.com/gravitational/teleport/lib/ui" ) // GetApps gets apps with filters and returns paginated results @@ -77,14 +77,7 @@ func newAPIApp(clusterApp clusters.App) *api.App { }) } - apiLabels := APILabels{} - for name, value := range app.GetAllLabels() { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: value, - }) - } - sort.Sort(apiLabels) + apiLabels := makeAPILabels(ui.MakeLabelsWithoutInternalPrefixes(app.GetAllLabels())) return &api.App{ Uri: clusterApp.URI.String(), @@ -103,14 +96,7 @@ func newAPIApp(clusterApp clusters.App) *api.App { func newSAMLIdPServiceProviderAPIApp(clusterApp clusters.SAMLIdPServiceProvider) *api.App { provider := clusterApp.Provider - apiLabels := APILabels{} - for name, value := range provider.GetAllLabels() { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: value, - }) - } - sort.Sort(apiLabels) + apiLabels := makeAPILabels(ui.MakeLabelsWithoutInternalPrefixes(provider.GetAllLabels())) // Keep in sync with lib/web/ui/app.go. return &api.App{ diff --git a/lib/teleterm/apiserver/handler/handler_databases.go b/lib/teleterm/apiserver/handler/handler_databases.go index 681181b17395b..1fb22011d44c2 100644 --- a/lib/teleterm/apiserver/handler/handler_databases.go +++ b/lib/teleterm/apiserver/handler/handler_databases.go @@ -20,12 +20,12 @@ package handler import ( "context" - "sort" "github.com/gravitational/trace" api "github.com/gravitational/teleport/gen/proto/go/teleport/lib/teleterm/v1" "github.com/gravitational/teleport/lib/teleterm/clusters" + "github.com/gravitational/teleport/lib/ui" ) // GetDatabases gets databases with filters and returns paginated results @@ -84,15 +84,7 @@ func (s *Handler) ListDatabaseUsers(ctx context.Context, req *api.ListDatabaseUs } func newAPIDatabase(db clusters.Database) *api.Database { - apiLabels := APILabels{} - for name, value := range db.GetAllLabels() { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: value, - }) - } - - sort.Sort(apiLabels) + apiLabels := makeAPILabels(ui.MakeLabelsWithoutInternalPrefixes(db.GetAllLabels())) return &api.Database{ Uri: db.URI.String(), diff --git a/lib/teleterm/apiserver/handler/handler_kubes.go b/lib/teleterm/apiserver/handler/handler_kubes.go index 6642d49e19b71..0a2f3389cfcbf 100644 --- a/lib/teleterm/apiserver/handler/handler_kubes.go +++ b/lib/teleterm/apiserver/handler/handler_kubes.go @@ -20,7 +20,6 @@ package handler import ( "context" - "sort" "github.com/gravitational/trace" @@ -74,22 +73,11 @@ func (s *Handler) ListKubernetesResources(ctx context.Context, req *api.ListKube } func newAPIKube(kube clusters.Kube) *api.Kube { - apiLabels := APILabels{} - for name, value := range kube.KubernetesCluster.GetStaticLabels() { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: value, - }) - } - - for name, cmd := range kube.KubernetesCluster.GetDynamicLabels() { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: cmd.GetResult(), - }) - } - - sort.Sort(apiLabels) + staticLabels := kube.KubernetesCluster.GetStaticLabels() + dynamicLabels := kube.KubernetesCluster.GetDynamicLabels() + apiLabels := makeAPILabels( + ui.MakeLabelsWithoutInternalPrefixes(staticLabels, ui.TransformCommandLabels(dynamicLabels)), + ) return &api.Kube{ Name: kube.KubernetesCluster.GetName(), @@ -99,14 +87,7 @@ func newAPIKube(kube clusters.Kube) *api.Kube { } func newApiKubeResource(resource *types.KubernetesResourceV1, kubeCluster string, resourceURI uri.ResourceURI) *api.KubeResource { - uiLabels := ui.MakeLabelsWithoutInternalPrefixes(resource.GetStaticLabels()) - apiLabels := APILabels{} - for _, uiLabel := range uiLabels { - apiLabels = append(apiLabels, &api.Label{ - Name: uiLabel.Name, - Value: uiLabel.Value, - }) - } + apiLabels := makeAPILabels(ui.MakeLabelsWithoutInternalPrefixes(resource.GetStaticLabels())) return &api.KubeResource{ Uri: resourceURI.AppendKube(kubeCluster).AppendKubeResourceNamespace(resource.GetName()).String(), diff --git a/lib/teleterm/apiserver/handler/handler_servers.go b/lib/teleterm/apiserver/handler/handler_servers.go index 17230d0e1e529..ac21e9082c31b 100644 --- a/lib/teleterm/apiserver/handler/handler_servers.go +++ b/lib/teleterm/apiserver/handler/handler_servers.go @@ -20,12 +20,12 @@ package handler import ( "context" - "sort" "github.com/gravitational/trace" api "github.com/gravitational/teleport/gen/proto/go/teleport/lib/teleterm/v1" "github.com/gravitational/teleport/lib/teleterm/clusters" + "github.com/gravitational/teleport/lib/ui" ) // GetServers accepts parameterized input to enable searching, sorting, and pagination @@ -47,24 +47,11 @@ func (s *Handler) GetServers(ctx context.Context, req *api.GetServersRequest) (* } func newAPIServer(server clusters.Server) *api.Server { - apiLabels := APILabels{} serverLabels := server.GetStaticLabels() - for name, value := range serverLabels { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: value, - }) - } - serverCmdLabels := server.GetCmdLabels() - for name, cmd := range serverCmdLabels { - apiLabels = append(apiLabels, &api.Label{ - Name: name, - Value: cmd.GetResult(), - }) - } - - sort.Sort(apiLabels) + apiLabels := makeAPILabels( + ui.MakeLabelsWithoutInternalPrefixes(serverLabels, ui.TransformCommandLabels(serverCmdLabels)), + ) return &api.Server{ Uri: server.URI.String(), diff --git a/lib/ui/labels.go b/lib/ui/labels.go index 1da4c91498064..8b123a580705c 100644 --- a/lib/ui/labels.go +++ b/lib/ui/labels.go @@ -87,3 +87,13 @@ func (s sortedLabels) Less(i, j int) bool { func (s sortedLabels) Swap(i, j int) { s[i], s[j] = s[j], s[i] } + +func TransformCommandLabels(commandLabels map[string]types.CommandLabel) map[string]string { + labels := make(map[string]string, len(commandLabels)) + + for name, cmd := range commandLabels { + labels[name] = cmd.GetResult() + } + + return labels +} diff --git a/lib/ui/labels_test.go b/lib/ui/labels_test.go index e86704ccce794..02fb7223ae241 100644 --- a/lib/ui/labels_test.go +++ b/lib/ui/labels_test.go @@ -22,6 +22,8 @@ import ( "testing" "github.com/stretchr/testify/require" + + "github.com/gravitational/teleport/api/types" ) func TestMakeLabels(t *testing.T) { @@ -142,3 +144,17 @@ func TestMakeLabels(t *testing.T) { }) } } + +func TestTransformCommandLabels(t *testing.T) { + commandLabels := map[string]types.CommandLabel{ + "label1": &types.CommandLabelV2{ + Result: "value1", + }, + } + labels := TransformCommandLabels(commandLabels) + expected := map[string]string{ + "label1": "value1", + } + + require.Equal(t, expected, labels) +} diff --git a/lib/usagereporter/teleport/aggregating/reporter.go b/lib/usagereporter/teleport/aggregating/reporter.go index 2813581976afd..7dc288411b92a 100644 --- a/lib/usagereporter/teleport/aggregating/reporter.go +++ b/lib/usagereporter/teleport/aggregating/reporter.go @@ -62,8 +62,8 @@ type ReporterConfig struct { // HostID is the host ID of the current Teleport instance, added to reports // for auditing purposes. Required. HostID string - // AnonymizationKey is the key used to anonymize data user or resource names. Optional. - AnonymizationKey string + // Anonymizer is used to anonymize data user or resource names. Required. + Anonymizer utils.Anonymizer } // CheckAndSetDefaults checks the [ReporterConfig] for validity, returning nil @@ -82,8 +82,8 @@ func (cfg *ReporterConfig) CheckAndSetDefaults() error { if cfg.HostID == "" { return trace.BadParameter("missing HostID") } - if cfg.AnonymizationKey == "" { - return trace.BadParameter("missing AnonymizationKey") + if cfg.Anonymizer == nil { + return trace.BadParameter("missing Anonymizer") } if cfg.Logger == nil { @@ -100,15 +100,10 @@ func NewReporter(ctx context.Context, cfg ReporterConfig) (*Reporter, error) { return nil, trace.Wrap(err) } - anonymizer, err := utils.NewHMACAnonymizer(cfg.AnonymizationKey) - if err != nil { - return nil, trace.Wrap(err) - } - baseCtx, baseCancel := context.WithCancel(ctx) r := &Reporter{ - anonymizer: anonymizer, + anonymizer: cfg.Anonymizer, svc: reportService{cfg.Backend}, logger: cfg.Logger, clock: cfg.Clock, @@ -117,8 +112,8 @@ func NewReporter(ctx context.Context, cfg ReporterConfig) (*Reporter, error) { closing: make(chan struct{}), done: make(chan struct{}), - clusterName: anonymizer.AnonymizeNonEmpty(cfg.ClusterName.GetClusterName()), - hostID: anonymizer.AnonymizeNonEmpty(cfg.HostID), + clusterName: cfg.ClusterName.GetClusterName(), + hostID: cfg.HostID, baseCancel: baseCancel, } @@ -145,10 +140,10 @@ type Reporter struct { // done is closed at the end of the background goroutine. done chan struct{} - // clusterName is the anonymized cluster name. - clusterName []byte - // hostID is the anonymized host ID of the reporter (this instance). - hostID []byte + // clusterName is the un-anonymized cluster name. + clusterName string + // hostID is the un-anonymized host ID of the reporter (this instance). + hostID string // baseCancel cancels the context used by the background goroutine. baseCancel context.CancelFunc @@ -300,7 +295,6 @@ Ingest: select { case <-ticker.Chan(): case ae = <-r.ingest: - case <-ctx.Done(): r.closingOnce.Do(func() { close(r.closing) }) break Ingest @@ -407,7 +401,10 @@ func (r *Reporter) persistUserActivity(ctx context.Context, startTime time.Time, records = append(records, record) } - reports, err := prepareUserActivityReports(r.clusterName, r.hostID, startTime, records) + anonymizedClusterName := r.anonymizer.AnonymizeNonEmpty(r.clusterName) + anonymizedHostID := r.anonymizer.AnonymizeNonEmpty(r.hostID) + + reports, err := prepareUserActivityReports(anonymizedClusterName, anonymizedHostID, startTime, records) if err != nil { r.logger.ErrorContext(ctx, "Failed to prepare user activity report, dropping data.", "start_time", startTime, @@ -451,7 +448,10 @@ func (r *Reporter) persistResourcePresence(ctx context.Context, startTime time.T records = append(records, record) } - reports, err := prepareResourcePresenceReports(r.clusterName, r.hostID, startTime, records) + anonymizedClusterName := r.anonymizer.AnonymizeNonEmpty(r.clusterName) + anonymizedHostID := r.anonymizer.AnonymizeNonEmpty(r.hostID) + + reports, err := prepareResourcePresenceReports(anonymizedClusterName, anonymizedHostID, startTime, records) if err != nil { r.logger.ErrorContext(ctx, "Failed to prepare resource presence report, dropping data.", "start_time", startTime, "error", err) return diff --git a/lib/usagereporter/teleport/aggregating/reporter_test.go b/lib/usagereporter/teleport/aggregating/reporter_test.go index 35469da71667f..0c82a51fbd938 100644 --- a/lib/usagereporter/teleport/aggregating/reporter_test.go +++ b/lib/usagereporter/teleport/aggregating/reporter_test.go @@ -35,6 +35,7 @@ import ( "github.com/gravitational/teleport/lib/backend/memory" "github.com/gravitational/teleport/lib/services" usagereporter "github.com/gravitational/teleport/lib/usagereporter/teleport" + "github.com/gravitational/teleport/lib/utils" ) func TestReporter(t *testing.T) { @@ -67,12 +68,15 @@ func TestReporter(t *testing.T) { }) require.NoError(t, err) + anonymizer, err := utils.NewHMACAnonymizer("0123456789abcdef") + require.NoError(t, err) + r, err := NewReporter(ctx, ReporterConfig{ - Backend: bk, - Clock: clk, - ClusterName: clusterName, - HostID: uuid.NewString(), - AnonymizationKey: "0123456789abcdef", + Backend: bk, + Clock: clk, + ClusterName: clusterName, + HostID: uuid.NewString(), + Anonymizer: anonymizer, }) require.NoError(t, err) diff --git a/lib/usagereporter/teleport/usagereporter.go b/lib/usagereporter/teleport/usagereporter.go index 91b2845611b9c..f9a410fa0ad62 100644 --- a/lib/usagereporter/teleport/usagereporter.go +++ b/lib/usagereporter/teleport/usagereporter.go @@ -122,16 +122,12 @@ func (t *StreamingUsageReporter) Run(ctx context.Context) { type SubmitFunc = usagereporter.SubmitFunc[prehogv1a.SubmitEventRequest] -func NewStreamingUsageReporter(logger *slog.Logger, clusterName types.ClusterName, anonymizationKey string, submitter SubmitFunc) (*StreamingUsageReporter, error) { - if anonymizationKey == "" { - return nil, trace.BadParameter("anonymization key is required") - } - anonymizer, err := utils.NewHMACAnonymizer(anonymizationKey) - if err != nil { - return nil, trace.Wrap(err) +func NewStreamingUsageReporter(logger *slog.Logger, clusterName types.ClusterName, anonymizer utils.Anonymizer, submitter SubmitFunc) (*StreamingUsageReporter, error) { + if anonymizer == nil { + return nil, trace.BadParameter("missing anonymizer") } - err = metrics.RegisterPrometheusCollectors(usagereporter.UsagePrometheusCollectors...) + err := metrics.RegisterPrometheusCollectors(usagereporter.UsagePrometheusCollectors...) if err != nil { return nil, trace.Wrap(err) } diff --git a/lib/utils/anonymizer.go b/lib/utils/anonymizer.go index 7cbb80b5dae31..050cbd78691bc 100644 --- a/lib/utils/anonymizer.go +++ b/lib/utils/anonymizer.go @@ -23,6 +23,7 @@ import ( "crypto/sha256" "encoding/base64" "strings" + "sync" "github.com/gravitational/trace" ) @@ -38,16 +39,26 @@ type Anonymizer interface { // AnonymizeNonEmpty anonymizes the given string into bytes if the string is // nonempty, otherwise returns an empty slice. AnonymizeNonEmpty(s string) []byte + + // SetAnonymizationKey updates the underlying anonymization key. + SetAnonymizationKey(k []byte) } -// hmacAnonymizer implements anonymization using HMAC +// HMACAnonymizer implements anonymization using HMAC type HMACAnonymizer struct { // key is the HMAC key key []byte + mu sync.RWMutex } var _ Anonymizer = (*HMACAnonymizer)(nil) +func (a *HMACAnonymizer) SetAnonymizationKey(k []byte) { + a.mu.Lock() + a.key = k + a.mu.Unlock() +} + // NewHMACAnonymizer returns a new HMAC-based anonymizer func NewHMACAnonymizer(key string) (*HMACAnonymizer, error) { if strings.TrimSpace(key) == "" { @@ -58,7 +69,11 @@ func NewHMACAnonymizer(key string) (*HMACAnonymizer, error) { // Anonymize anonymizes the provided data using HMAC func (a *HMACAnonymizer) Anonymize(data []byte) string { - h := hmac.New(sha256.New, a.key) + a.mu.RLock() + k := a.key + a.mu.RUnlock() + + h := hmac.New(sha256.New, k) h.Write(data) return base64.StdEncoding.EncodeToString(h.Sum(nil)) } @@ -73,7 +88,12 @@ func (a *HMACAnonymizer) AnonymizeNonEmpty(s string) []byte { if s == "" { return nil } - h := hmac.New(sha256.New, a.key) + + a.mu.RLock() + k := a.key + a.mu.RUnlock() + + h := hmac.New(sha256.New, k) h.Write([]byte(s)) return h.Sum(nil) } diff --git a/lib/utils/host/hostusers.go b/lib/utils/host/hostusers.go index 563d5c8de23f2..3123d1a5d8879 100644 --- a/lib/utils/host/hostusers.go +++ b/lib/utils/host/hostusers.go @@ -19,6 +19,7 @@ package host import ( + "bufio" "bytes" "errors" "os" @@ -195,6 +196,82 @@ func GetAllUsers() ([]string, int, error) { return users, -1, nil } +// UserHasExpirations determines if the given username has an expired password, inactive password, or expired account +// by parsing the output of 'chage -l '. +func UserHasExpirations(username string) (bool bool, exitCode int, err error) { + chageBin, err := exec.LookPath("chage") + if err != nil { + return false, -1, trace.NotFound("cannot find chage binary: %s", err) + } + + stdout := new(bytes.Buffer) + stderr := new(bytes.Buffer) + cmd := exec.Command(chageBin, "-l", username) + cmd.Stdout = stdout + cmd.Stderr = stderr + if err := cmd.Run(); err != nil { + return false, cmd.ProcessState.ExitCode(), trace.WrapWithMessage(err, "running chage: %s", stderr.String()) + } + + scanner := bufio.NewScanner(stdout) + for scanner.Scan() { + line := scanner.Text() + if line == "" { + // ignore empty lines + continue + } + + key, value, validLine := strings.Cut(line, ":") + if !validLine { + return false, -1, trace.Errorf("chage output invalid") + } + + if strings.TrimSpace(value) == "never" { + continue + } + + switch strings.TrimSpace(key) { + case "Password expires", "Password inactive", "Account expires": + return true, 0, nil + } + } + + return false, cmd.ProcessState.ExitCode(), nil +} + +// RemoveUserExpirations uses chage to remove any future or past expirations associated with the given username. It also uses usermod to remove any account locks that may have been placed. +func RemoveUserExpirations(username string) (exitCode int, err error) { + chageBin, err := exec.LookPath("chage") + if err != nil { + return -1, trace.NotFound("cannot find chage binary: %s", err) + } + + usermodBin, err := exec.LookPath("usermod") + if err != nil { + return -1, trace.NotFound("cannot find usermod binary: %s", err) + } + + // remove all expirations from user + // chage -E -1 -I -1 + cmd := exec.Command(chageBin, "-E", "-1", "-I", "-1", "-M", "-1", username) + var errs []error + if err := cmd.Run(); err != nil { + errs = append(errs, trace.Wrap(err, "removing expirations with chage")) + } + + // unlock user password if locked + cmd = exec.Command(usermodBin, "-U", username) + if err := cmd.Run(); err != nil { + errs = append(errs, trace.Wrap(err, "removing lock with usermod")) + } + + if len(errs) > 0 { + return cmd.ProcessState.ExitCode(), trace.NewAggregate(errs...) + } + + return cmd.ProcessState.ExitCode(), nil +} + var ErrInvalidSudoers = errors.New("visudo: invalid sudoers file") // CheckSudoers tests a suders file using `visudo`. The contents diff --git a/lib/web/features.go b/lib/web/features.go index 29798851aa7ce..7eeb70eb9f060 100644 --- a/lib/web/features.go +++ b/lib/web/features.go @@ -19,6 +19,8 @@ package web import ( + "bytes" + "github.com/gravitational/teleport/api/client/proto" "github.com/gravitational/teleport/entitlements" ) @@ -30,6 +32,10 @@ func (h *Handler) SetClusterFeatures(features proto.Features) { h.Mutex.Lock() defer h.Mutex.Unlock() + if !bytes.Equal(h.clusterFeatures.CloudAnonymizationKey, features.CloudAnonymizationKey) { + h.log.Info("Received new cloud anonymization key from server") + } + entitlements.BackfillFeatures(&features) h.clusterFeatures = features } diff --git a/lib/web/ui/labels.go b/lib/web/ui/labels.go deleted file mode 100644 index bb94474ab0b18..0000000000000 --- a/lib/web/ui/labels.go +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Teleport - * Copyright (C) 2023 Gravitational, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -package ui - -import ( - "github.com/gravitational/teleport/api/types" -) - -func transformCommandLabels(commandLabels map[string]types.CommandLabel) map[string]string { - labels := make(map[string]string, len(commandLabels)) - - for name, cmd := range commandLabels { - labels[name] = cmd.GetResult() - } - - return labels -} diff --git a/lib/web/ui/labels_test.go b/lib/web/ui/labels_test.go deleted file mode 100644 index 296d91f4fd6af..0000000000000 --- a/lib/web/ui/labels_test.go +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Teleport - * Copyright (C) 2023 Gravitational, Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - */ - -package ui - -import ( - "testing" - - "github.com/stretchr/testify/require" - - "github.com/gravitational/teleport/api/types" -) - -func TestTransformCommandLabels(t *testing.T) { - commandLabels := map[string]types.CommandLabel{ - "label1": &types.CommandLabelV2{ - Result: "value1", - }, - } - labels := transformCommandLabels(commandLabels) - expected := map[string]string{ - "label1": "value1", - } - - require.Equal(t, expected, labels) -} diff --git a/lib/web/ui/server.go b/lib/web/ui/server.go index af1adf66d3190..df68f3bcff277 100644 --- a/lib/web/ui/server.go +++ b/lib/web/ui/server.go @@ -71,7 +71,7 @@ type AWSMetadata struct { func MakeServer(clusterName string, server types.Server, logins []string, requiresRequest bool) Server { serverLabels := server.GetStaticLabels() serverCmdLabels := server.GetCmdLabels() - uiLabels := ui.MakeLabelsWithoutInternalPrefixes(serverLabels, transformCommandLabels(serverCmdLabels)) + uiLabels := ui.MakeLabelsWithoutInternalPrefixes(serverLabels, ui.TransformCommandLabels(serverCmdLabels)) uiServer := Server{ Kind: server.GetKind(), @@ -131,7 +131,7 @@ type KubeCluster struct { func MakeKubeCluster(cluster types.KubeCluster, accessChecker services.AccessChecker, requiresRequest bool) KubeCluster { staticLabels := cluster.GetStaticLabels() dynamicLabels := cluster.GetDynamicLabels() - uiLabels := ui.MakeLabelsWithoutInternalPrefixes(staticLabels, transformCommandLabels(dynamicLabels)) + uiLabels := ui.MakeLabelsWithoutInternalPrefixes(staticLabels, ui.TransformCommandLabels(dynamicLabels)) kubeUsers, kubeGroups := getAllowedKubeUsersAndGroupsForCluster(accessChecker, cluster) return KubeCluster{ Kind: cluster.GetKind(), @@ -166,7 +166,7 @@ func MakeKubeClusters(clusters []types.KubeCluster, accessChecker services.Acces for _, cluster := range clusters { staticLabels := cluster.GetStaticLabels() dynamicLabels := cluster.GetDynamicLabels() - uiLabels := ui.MakeLabelsWithoutInternalPrefixes(staticLabels, transformCommandLabels(dynamicLabels)) + uiLabels := ui.MakeLabelsWithoutInternalPrefixes(staticLabels, ui.TransformCommandLabels(dynamicLabels)) kubeUsers, kubeGroups := getAllowedKubeUsersAndGroupsForCluster(accessChecker, cluster) diff --git a/web/packages/design/src/Alert/Alert.tsx b/web/packages/design/src/Alert/Alert.tsx index c674aff2b1b79..68c5487b7788e 100644 --- a/web/packages/design/src/Alert/Alert.tsx +++ b/web/packages/design/src/Alert/Alert.tsx @@ -134,7 +134,7 @@ interface Props { export interface Action { content: React.ReactNode; href?: string; - onClick?: () => void; + onClick?: (event: React.MouseEvent) => void; } export interface AlertProps diff --git a/web/packages/shared/components/Notification/Notification.test.tsx b/web/packages/shared/components/Notification/Notification.test.tsx new file mode 100644 index 0000000000000..f5c8ee823d6b2 --- /dev/null +++ b/web/packages/shared/components/Notification/Notification.test.tsx @@ -0,0 +1,49 @@ +/** + * Teleport + * Copyright (C) 2024 Gravitational, Inc. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + */ + +import { render } from 'design/utils/testing'; +import { fireEvent, screen } from '@testing-library/react'; + +import { Notification } from './Notification'; + +test('click on action button does not expand or collapse notification', async () => { + const description = 'An error happened'; + + render( + {}} + /> + ); + + fireEvent.click(screen.getByText('Retry')); + + // Check if the text still has the initial, "collapsed" style (look at shortTextCss). + expect(screen.getByText(description)).toHaveStyleRule( + '-webkit-line-clamp', + '3' + ); +}); diff --git a/web/packages/shared/components/Notification/Notification.tsx b/web/packages/shared/components/Notification/Notification.tsx index 56c374302a170..27347693f2052 100644 --- a/web/packages/shared/components/Notification/Notification.tsx +++ b/web/packages/shared/components/Notification/Notification.tsx @@ -227,6 +227,8 @@ const NotificationBody = ({ const longerTextCss = isExpanded ? textCss : shortTextCss; const hasListOrDescription = !!content.list || !!content.description; + const { action } = content; + return ( <> {/* Note: an empty element would still generate a flex gap, so we @@ -237,9 +239,20 @@ const NotificationBody = ({ {content.description} )} - {content.action && ( + {action && ( - + { + // Prevents toggling the isExpanded flag. + event.stopPropagation(); + action.onClick?.(event); + }, + }} + /> )} diff --git a/web/packages/teleterm/src/services/tshdEvents/index.ts b/web/packages/teleterm/src/services/tshdEvents/index.ts index a8744d9a7c576..f33638c1c709a 100644 --- a/web/packages/teleterm/src/services/tshdEvents/index.ts +++ b/web/packages/teleterm/src/services/tshdEvents/index.ts @@ -85,8 +85,6 @@ async function createServer( return logger.error(error.message); } - server.start(); - const resolvedAddress = requestedAddress.startsWith('tcp:') ? `localhost:${port}` : requestedAddress; diff --git a/web/packages/teleterm/src/sharedProcess/sharedProcess.ts b/web/packages/teleterm/src/sharedProcess/sharedProcess.ts index 1b9be627d8f3e..134c80338de36 100644 --- a/web/packages/teleterm/src/sharedProcess/sharedProcess.ts +++ b/web/packages/teleterm/src/sharedProcess/sharedProcess.ts @@ -89,8 +89,6 @@ async function initializeServer( if (error) { return logger.error(error.message); } - - server.start(); }); } catch (e) { logger.error('Could not start shared server', e);