From 6faec3eca075721bc1a298cf98bd79b4f6b61210 Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Tue, 27 Aug 2024 15:21:52 -0400 Subject: [PATCH 1/8] v3 --- api/client/client.go | 13 +- .../integration/v1/integration_service.pb.go | 432 +- .../v1/integration_service_grpc.pb.go | 54 +- .../integration/v1/integration_service.proto | 27 + .../teleport/legacy/types/events/events.proto | 8 + api/proto/teleport/legacy/types/types.proto | 34 + api/types/constants.go | 6 + api/types/events/events.pb.go | 2377 ++++---- api/types/integration.go | 80 + api/types/server.go | 35 +- api/types/types.pb.go | 5394 ++++++++++------- api/utils/route.go | 5 + go.mod | 10 + go.sum | 22 +- lib/auth/auth.go | 6 + lib/auth/authclient/api.go | 2 +- lib/auth/authclient/clt.go | 3 + lib/auth/integration/integrationv1/service.go | 101 +- lib/auth/keystore/manager.go | 4 + lib/cache/cache.go | 6 +- lib/client/ca_export.go | 2 + lib/client/session.go | 3 + lib/integrations/awsoidc/clientsv1.go | 4 +- lib/integrations/awsoidc/token_generator.go | 4 +- .../externalauditstorage/configurator.go | 4 +- lib/reversetunnel/localsite.go | 2 +- lib/services/integration.go | 6 +- lib/services/local/externalauditstorage.go | 2 +- lib/services/local/integrations.go | 29 +- lib/srv/exec.go | 52 +- lib/srv/forward/sshserver.go | 50 +- lib/web/integrations.go | 4 +- lib/web/integrations_awsoidc.go | 8 +- tool/tctl/common/auth_command.go | 2 + tool/tctl/common/resource_command.go | 4 +- tool/tsh/common/git.go | 31 + tool/tsh/common/tsh.go | 21 + 37 files changed, 5332 insertions(+), 3515 deletions(-) create mode 100644 tool/tsh/common/git.go diff --git a/api/client/client.go b/api/client/client.go index 518b82de27ede..ec7bfd5817737 100644 --- a/api/client/client.go +++ b/api/client/client.go @@ -4495,9 +4495,10 @@ func (c *Client) ListAllIntegrations(ctx context.Context) ([]types.Integration, } // GetIntegration returns an Integration by its name. -func (c *Client) GetIntegration(ctx context.Context, name string) (types.Integration, error) { +func (c *Client) GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) { ig, err := c.integrationsClient().GetIntegration(ctx, &integrationpb.GetIntegrationRequest{ - Name: name, + Name: name, + WithSecrets: withSecrets, }) if err != nil { return nil, trace.Wrap(err) @@ -4562,6 +4563,14 @@ func (c *Client) GenerateAWSOIDCToken(ctx context.Context, integration string) ( return resp.GetToken(), nil } +// GenerateGitHubUserCert generates a SSH user certificate for GitHub +// integration. +// TODO maybe just expose c.integrationsClient() +func (c *Client) GenerateGitHubUserCert(ctx context.Context, in *integrationpb.GenerateGitHubUserCertRequest) (*integrationpb.GenerateGitHubUserCertResponse, error) { + resp, err := c.integrationsClient().GenerateGitHubUserCert(ctx, in) + return resp, trace.Wrap(err) +} + // PluginsClient returns an unadorned Plugins client, using the underlying // Auth gRPC connection. // Clients connecting to non-Enterprise clusters, or older Teleport versions, diff --git a/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go b/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go index b2c35e081f6d0..ef9c4f7fc2ac1 100644 --- a/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go +++ b/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go @@ -24,6 +24,7 @@ import ( types "github.com/gravitational/teleport/api/types" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + durationpb "google.golang.org/protobuf/types/known/durationpb" emptypb "google.golang.org/protobuf/types/known/emptypb" reflect "reflect" sync "sync" @@ -169,6 +170,8 @@ type GetIntegrationRequest struct { // Name is the name of the Integration to be requested. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // WithSecrets specifies whether to load associated secrets. + WithSecrets bool `protobuf:"varint,2,opt,name=with_secrets,json=withSecrets,proto3" json:"with_secrets,omitempty"` } func (x *GetIntegrationRequest) Reset() { @@ -210,6 +213,13 @@ func (x *GetIntegrationRequest) GetName() string { return "" } +func (x *GetIntegrationRequest) GetWithSecrets() bool { + if x != nil { + return x.WithSecrets + } + return false +} + // CreateIntegrationRequest is the request to create the provided integration. type CreateIntegrationRequest struct { state protoimpl.MessageState @@ -512,6 +522,141 @@ func (x *GenerateAWSOIDCTokenResponse) GetToken() string { return "" } +// GenerateGitHubUserCertRequest is a request to sign a client certificate used by +// GitHub integration to authenticate with GitHub enterprise. +type GenerateGitHubUserCertRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Integration is the name of the integration; + Integration string `protobuf:"bytes,1,opt,name=integration,proto3" json:"integration,omitempty"` + // PublicKey is the public key to be signed. + PublicKey []byte `protobuf:"bytes,2,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` + // Login is the GitHub username. + Login string `protobuf:"bytes,3,opt,name=login,proto3" json:"login,omitempty"` + // KeyId is the certficate ID, usually the Teleport username. + KeyId string `protobuf:"bytes,4,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"` + // Ttl is the duration the certificate will be valid for. + Ttl *durationpb.Duration `protobuf:"bytes,5,opt,name=ttl,proto3" json:"ttl,omitempty"` +} + +func (x *GenerateGitHubUserCertRequest) Reset() { + *x = GenerateGitHubUserCertRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GenerateGitHubUserCertRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GenerateGitHubUserCertRequest) ProtoMessage() {} + +func (x *GenerateGitHubUserCertRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GenerateGitHubUserCertRequest.ProtoReflect.Descriptor instead. +func (*GenerateGitHubUserCertRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{9} +} + +func (x *GenerateGitHubUserCertRequest) GetIntegration() string { + if x != nil { + return x.Integration + } + return "" +} + +func (x *GenerateGitHubUserCertRequest) GetPublicKey() []byte { + if x != nil { + return x.PublicKey + } + return nil +} + +func (x *GenerateGitHubUserCertRequest) GetLogin() string { + if x != nil { + return x.Login + } + return "" +} + +func (x *GenerateGitHubUserCertRequest) GetKeyId() string { + if x != nil { + return x.KeyId + } + return "" +} + +func (x *GenerateGitHubUserCertRequest) GetTtl() *durationpb.Duration { + if x != nil { + return x.Ttl + } + return nil +} + +// GenerateGitHubUserCertResponse contains a signed certificate. +type GenerateGitHubUserCertResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // AuthorizedKey is the signed certificate. + AuthorizedKey []byte `protobuf:"bytes,1,opt,name=authorized_key,json=authorizedKey,proto3" json:"authorized_key,omitempty"` +} + +func (x *GenerateGitHubUserCertResponse) Reset() { + *x = GenerateGitHubUserCertResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GenerateGitHubUserCertResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GenerateGitHubUserCertResponse) ProtoMessage() {} + +func (x *GenerateGitHubUserCertResponse) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GenerateGitHubUserCertResponse.ProtoReflect.Descriptor instead. +func (*GenerateGitHubUserCertResponse) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{10} +} + +func (x *GenerateGitHubUserCertResponse) GetAuthorizedKey() []byte { + if x != nil { + return x.AuthorizedKey + } + return nil +} + var File_teleport_integration_v1_integration_service_proto protoreflect.FileDescriptor var file_teleport_integration_v1_integration_service_proto_rawDesc = []byte{ @@ -519,7 +664,9 @@ var file_teleport_integration_v1_integration_service_proto_rawDesc = []byte{ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, - 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x67, 0x6f, + 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x1a, 0x1e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, @@ -537,88 +684,115 @@ var file_teleport_integration_v1_integration_service_proto_rawDesc = []byte{ 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2b, 0x0a, 0x15, 0x47, + 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x52, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x52, - 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x52, 0x0a, 0x18, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, - 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x2e, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x22, 0x1e, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x22, 0x5b, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, - 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1a, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x34, 0x0a, - 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x32, 0xef, 0x05, 0x0a, 0x12, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x4c, 0x69, - 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, - 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, - 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x43, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x74, 0x68, + 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x77, 0x69, 0x74, 0x68, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, + 0x52, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, + 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x22, 0x5b, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, + 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x20, + 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x34, 0x0a, 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, + 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xba, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x6e, 0x65, 0x72, + 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x67, + 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x12, + 0x15, 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, + 0x74, 0x74, 0x6c, 0x22, 0x47, 0x0a, 0x1e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, + 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, + 0x7a, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x61, + 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x32, 0xfb, 0x06, 0x0a, + 0x12, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0e, + 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5e, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, - 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x66, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, - 0x83, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, - 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, - 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, - 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, - 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, - 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x5a, 0x5a, 0x58, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, - 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, - 0x6c, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, - 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2f, 0x76, 0x31, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x76, - 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, + 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, + 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, + 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, + 0x12, 0x5e, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x12, 0x66, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x6e, + 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x34, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, + 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, + 0x01, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, + 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x12, 0x36, 0x2e, 0x74, 0x65, 0x6c, 0x65, + 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, + 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x37, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, + 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x5a, 0x5a, 0x58, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, + 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -633,43 +807,49 @@ func file_teleport_integration_v1_integration_service_proto_rawDescGZIP() []byte return file_teleport_integration_v1_integration_service_proto_rawDescData } -var file_teleport_integration_v1_integration_service_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_teleport_integration_v1_integration_service_proto_msgTypes = make([]protoimpl.MessageInfo, 11) var file_teleport_integration_v1_integration_service_proto_goTypes = []any{ - (*ListIntegrationsRequest)(nil), // 0: teleport.integration.v1.ListIntegrationsRequest - (*ListIntegrationsResponse)(nil), // 1: teleport.integration.v1.ListIntegrationsResponse - (*GetIntegrationRequest)(nil), // 2: teleport.integration.v1.GetIntegrationRequest - (*CreateIntegrationRequest)(nil), // 3: teleport.integration.v1.CreateIntegrationRequest - (*UpdateIntegrationRequest)(nil), // 4: teleport.integration.v1.UpdateIntegrationRequest - (*DeleteIntegrationRequest)(nil), // 5: teleport.integration.v1.DeleteIntegrationRequest - (*DeleteAllIntegrationsRequest)(nil), // 6: teleport.integration.v1.DeleteAllIntegrationsRequest - (*GenerateAWSOIDCTokenRequest)(nil), // 7: teleport.integration.v1.GenerateAWSOIDCTokenRequest - (*GenerateAWSOIDCTokenResponse)(nil), // 8: teleport.integration.v1.GenerateAWSOIDCTokenResponse - (*types.IntegrationV1)(nil), // 9: types.IntegrationV1 - (*emptypb.Empty)(nil), // 10: google.protobuf.Empty + (*ListIntegrationsRequest)(nil), // 0: teleport.integration.v1.ListIntegrationsRequest + (*ListIntegrationsResponse)(nil), // 1: teleport.integration.v1.ListIntegrationsResponse + (*GetIntegrationRequest)(nil), // 2: teleport.integration.v1.GetIntegrationRequest + (*CreateIntegrationRequest)(nil), // 3: teleport.integration.v1.CreateIntegrationRequest + (*UpdateIntegrationRequest)(nil), // 4: teleport.integration.v1.UpdateIntegrationRequest + (*DeleteIntegrationRequest)(nil), // 5: teleport.integration.v1.DeleteIntegrationRequest + (*DeleteAllIntegrationsRequest)(nil), // 6: teleport.integration.v1.DeleteAllIntegrationsRequest + (*GenerateAWSOIDCTokenRequest)(nil), // 7: teleport.integration.v1.GenerateAWSOIDCTokenRequest + (*GenerateAWSOIDCTokenResponse)(nil), // 8: teleport.integration.v1.GenerateAWSOIDCTokenResponse + (*GenerateGitHubUserCertRequest)(nil), // 9: teleport.integration.v1.GenerateGitHubUserCertRequest + (*GenerateGitHubUserCertResponse)(nil), // 10: teleport.integration.v1.GenerateGitHubUserCertResponse + (*types.IntegrationV1)(nil), // 11: types.IntegrationV1 + (*durationpb.Duration)(nil), // 12: google.protobuf.Duration + (*emptypb.Empty)(nil), // 13: google.protobuf.Empty } var file_teleport_integration_v1_integration_service_proto_depIdxs = []int32{ - 9, // 0: teleport.integration.v1.ListIntegrationsResponse.integrations:type_name -> types.IntegrationV1 - 9, // 1: teleport.integration.v1.CreateIntegrationRequest.integration:type_name -> types.IntegrationV1 - 9, // 2: teleport.integration.v1.UpdateIntegrationRequest.integration:type_name -> types.IntegrationV1 - 0, // 3: teleport.integration.v1.IntegrationService.ListIntegrations:input_type -> teleport.integration.v1.ListIntegrationsRequest - 2, // 4: teleport.integration.v1.IntegrationService.GetIntegration:input_type -> teleport.integration.v1.GetIntegrationRequest - 3, // 5: teleport.integration.v1.IntegrationService.CreateIntegration:input_type -> teleport.integration.v1.CreateIntegrationRequest - 4, // 6: teleport.integration.v1.IntegrationService.UpdateIntegration:input_type -> teleport.integration.v1.UpdateIntegrationRequest - 5, // 7: teleport.integration.v1.IntegrationService.DeleteIntegration:input_type -> teleport.integration.v1.DeleteIntegrationRequest - 6, // 8: teleport.integration.v1.IntegrationService.DeleteAllIntegrations:input_type -> teleport.integration.v1.DeleteAllIntegrationsRequest - 7, // 9: teleport.integration.v1.IntegrationService.GenerateAWSOIDCToken:input_type -> teleport.integration.v1.GenerateAWSOIDCTokenRequest - 1, // 10: teleport.integration.v1.IntegrationService.ListIntegrations:output_type -> teleport.integration.v1.ListIntegrationsResponse - 9, // 11: teleport.integration.v1.IntegrationService.GetIntegration:output_type -> types.IntegrationV1 - 9, // 12: teleport.integration.v1.IntegrationService.CreateIntegration:output_type -> types.IntegrationV1 - 9, // 13: teleport.integration.v1.IntegrationService.UpdateIntegration:output_type -> types.IntegrationV1 - 10, // 14: teleport.integration.v1.IntegrationService.DeleteIntegration:output_type -> google.protobuf.Empty - 10, // 15: teleport.integration.v1.IntegrationService.DeleteAllIntegrations:output_type -> google.protobuf.Empty - 8, // 16: teleport.integration.v1.IntegrationService.GenerateAWSOIDCToken:output_type -> teleport.integration.v1.GenerateAWSOIDCTokenResponse - 10, // [10:17] is the sub-list for method output_type - 3, // [3:10] is the sub-list for method input_type - 3, // [3:3] is the sub-list for extension type_name - 3, // [3:3] is the sub-list for extension extendee - 0, // [0:3] is the sub-list for field type_name + 11, // 0: teleport.integration.v1.ListIntegrationsResponse.integrations:type_name -> types.IntegrationV1 + 11, // 1: teleport.integration.v1.CreateIntegrationRequest.integration:type_name -> types.IntegrationV1 + 11, // 2: teleport.integration.v1.UpdateIntegrationRequest.integration:type_name -> types.IntegrationV1 + 12, // 3: teleport.integration.v1.GenerateGitHubUserCertRequest.ttl:type_name -> google.protobuf.Duration + 0, // 4: teleport.integration.v1.IntegrationService.ListIntegrations:input_type -> teleport.integration.v1.ListIntegrationsRequest + 2, // 5: teleport.integration.v1.IntegrationService.GetIntegration:input_type -> teleport.integration.v1.GetIntegrationRequest + 3, // 6: teleport.integration.v1.IntegrationService.CreateIntegration:input_type -> teleport.integration.v1.CreateIntegrationRequest + 4, // 7: teleport.integration.v1.IntegrationService.UpdateIntegration:input_type -> teleport.integration.v1.UpdateIntegrationRequest + 5, // 8: teleport.integration.v1.IntegrationService.DeleteIntegration:input_type -> teleport.integration.v1.DeleteIntegrationRequest + 6, // 9: teleport.integration.v1.IntegrationService.DeleteAllIntegrations:input_type -> teleport.integration.v1.DeleteAllIntegrationsRequest + 7, // 10: teleport.integration.v1.IntegrationService.GenerateAWSOIDCToken:input_type -> teleport.integration.v1.GenerateAWSOIDCTokenRequest + 9, // 11: teleport.integration.v1.IntegrationService.GenerateGitHubUserCert:input_type -> teleport.integration.v1.GenerateGitHubUserCertRequest + 1, // 12: teleport.integration.v1.IntegrationService.ListIntegrations:output_type -> teleport.integration.v1.ListIntegrationsResponse + 11, // 13: teleport.integration.v1.IntegrationService.GetIntegration:output_type -> types.IntegrationV1 + 11, // 14: teleport.integration.v1.IntegrationService.CreateIntegration:output_type -> types.IntegrationV1 + 11, // 15: teleport.integration.v1.IntegrationService.UpdateIntegration:output_type -> types.IntegrationV1 + 13, // 16: teleport.integration.v1.IntegrationService.DeleteIntegration:output_type -> google.protobuf.Empty + 13, // 17: teleport.integration.v1.IntegrationService.DeleteAllIntegrations:output_type -> google.protobuf.Empty + 8, // 18: teleport.integration.v1.IntegrationService.GenerateAWSOIDCToken:output_type -> teleport.integration.v1.GenerateAWSOIDCTokenResponse + 10, // 19: teleport.integration.v1.IntegrationService.GenerateGitHubUserCert:output_type -> teleport.integration.v1.GenerateGitHubUserCertResponse + 12, // [12:20] is the sub-list for method output_type + 4, // [4:12] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_teleport_integration_v1_integration_service_proto_init() } @@ -786,6 +966,30 @@ func file_teleport_integration_v1_integration_service_proto_init() { return nil } } + file_teleport_integration_v1_integration_service_proto_msgTypes[9].Exporter = func(v any, i int) any { + switch v := v.(*GenerateGitHubUserCertRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_teleport_integration_v1_integration_service_proto_msgTypes[10].Exporter = func(v any, i int) any { + switch v := v.(*GenerateGitHubUserCertResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -793,7 +997,7 @@ func file_teleport_integration_v1_integration_service_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_teleport_integration_v1_integration_service_proto_rawDesc, NumEnums: 0, - NumMessages: 9, + NumMessages: 11, NumExtensions: 0, NumServices: 1, }, diff --git a/api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go b/api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go index f88c39e9d6154..a666e9b4bcebd 100644 --- a/api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go +++ b/api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go @@ -35,13 +35,14 @@ import ( const _ = grpc.SupportPackageIsVersion9 const ( - IntegrationService_ListIntegrations_FullMethodName = "/teleport.integration.v1.IntegrationService/ListIntegrations" - IntegrationService_GetIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/GetIntegration" - IntegrationService_CreateIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/CreateIntegration" - IntegrationService_UpdateIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/UpdateIntegration" - IntegrationService_DeleteIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/DeleteIntegration" - IntegrationService_DeleteAllIntegrations_FullMethodName = "/teleport.integration.v1.IntegrationService/DeleteAllIntegrations" - IntegrationService_GenerateAWSOIDCToken_FullMethodName = "/teleport.integration.v1.IntegrationService/GenerateAWSOIDCToken" + IntegrationService_ListIntegrations_FullMethodName = "/teleport.integration.v1.IntegrationService/ListIntegrations" + IntegrationService_GetIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/GetIntegration" + IntegrationService_CreateIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/CreateIntegration" + IntegrationService_UpdateIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/UpdateIntegration" + IntegrationService_DeleteIntegration_FullMethodName = "/teleport.integration.v1.IntegrationService/DeleteIntegration" + IntegrationService_DeleteAllIntegrations_FullMethodName = "/teleport.integration.v1.IntegrationService/DeleteAllIntegrations" + IntegrationService_GenerateAWSOIDCToken_FullMethodName = "/teleport.integration.v1.IntegrationService/GenerateAWSOIDCToken" + IntegrationService_GenerateGitHubUserCert_FullMethodName = "/teleport.integration.v1.IntegrationService/GenerateGitHubUserCert" ) // IntegrationServiceClient is the client API for IntegrationService service. @@ -65,6 +66,8 @@ type IntegrationServiceClient interface { DeleteAllIntegrations(ctx context.Context, in *DeleteAllIntegrationsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) // GenerateAWSOIDCToken generates a token to be used when executing an AWS OIDC Integration action. GenerateAWSOIDCToken(ctx context.Context, in *GenerateAWSOIDCTokenRequest, opts ...grpc.CallOption) (*GenerateAWSOIDCTokenResponse, error) + // GenerateGitHubUserCert signs a SSH certificate for GitHub integration. + GenerateGitHubUserCert(ctx context.Context, in *GenerateGitHubUserCertRequest, opts ...grpc.CallOption) (*GenerateGitHubUserCertResponse, error) } type integrationServiceClient struct { @@ -145,6 +148,16 @@ func (c *integrationServiceClient) GenerateAWSOIDCToken(ctx context.Context, in return out, nil } +func (c *integrationServiceClient) GenerateGitHubUserCert(ctx context.Context, in *GenerateGitHubUserCertRequest, opts ...grpc.CallOption) (*GenerateGitHubUserCertResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GenerateGitHubUserCertResponse) + err := c.cc.Invoke(ctx, IntegrationService_GenerateGitHubUserCert_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + // IntegrationServiceServer is the server API for IntegrationService service. // All implementations must embed UnimplementedIntegrationServiceServer // for forward compatibility. @@ -166,6 +179,8 @@ type IntegrationServiceServer interface { DeleteAllIntegrations(context.Context, *DeleteAllIntegrationsRequest) (*emptypb.Empty, error) // GenerateAWSOIDCToken generates a token to be used when executing an AWS OIDC Integration action. GenerateAWSOIDCToken(context.Context, *GenerateAWSOIDCTokenRequest) (*GenerateAWSOIDCTokenResponse, error) + // GenerateGitHubUserCert signs a SSH certificate for GitHub integration. + GenerateGitHubUserCert(context.Context, *GenerateGitHubUserCertRequest) (*GenerateGitHubUserCertResponse, error) mustEmbedUnimplementedIntegrationServiceServer() } @@ -197,6 +212,9 @@ func (UnimplementedIntegrationServiceServer) DeleteAllIntegrations(context.Conte func (UnimplementedIntegrationServiceServer) GenerateAWSOIDCToken(context.Context, *GenerateAWSOIDCTokenRequest) (*GenerateAWSOIDCTokenResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GenerateAWSOIDCToken not implemented") } +func (UnimplementedIntegrationServiceServer) GenerateGitHubUserCert(context.Context, *GenerateGitHubUserCertRequest) (*GenerateGitHubUserCertResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GenerateGitHubUserCert not implemented") +} func (UnimplementedIntegrationServiceServer) mustEmbedUnimplementedIntegrationServiceServer() {} func (UnimplementedIntegrationServiceServer) testEmbeddedByValue() {} @@ -344,6 +362,24 @@ func _IntegrationService_GenerateAWSOIDCToken_Handler(srv interface{}, ctx conte return interceptor(ctx, in, info, handler) } +func _IntegrationService_GenerateGitHubUserCert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GenerateGitHubUserCertRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).GenerateGitHubUserCert(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_GenerateGitHubUserCert_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).GenerateGitHubUserCert(ctx, req.(*GenerateGitHubUserCertRequest)) + } + return interceptor(ctx, in, info, handler) +} + // IntegrationService_ServiceDesc is the grpc.ServiceDesc for IntegrationService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -379,6 +415,10 @@ var IntegrationService_ServiceDesc = grpc.ServiceDesc{ MethodName: "GenerateAWSOIDCToken", Handler: _IntegrationService_GenerateAWSOIDCToken_Handler, }, + { + MethodName: "GenerateGitHubUserCert", + Handler: _IntegrationService_GenerateGitHubUserCert_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "teleport/integration/v1/integration_service.proto", diff --git a/api/proto/teleport/integration/v1/integration_service.proto b/api/proto/teleport/integration/v1/integration_service.proto index 6306a204a79d7..453616cf33b97 100644 --- a/api/proto/teleport/integration/v1/integration_service.proto +++ b/api/proto/teleport/integration/v1/integration_service.proto @@ -16,6 +16,7 @@ syntax = "proto3"; package teleport.integration.v1; +import "google/protobuf/duration.proto"; import "google/protobuf/empty.proto"; import "teleport/legacy/types/types.proto"; @@ -44,6 +45,9 @@ service IntegrationService { // GenerateAWSOIDCToken generates a token to be used when executing an AWS OIDC Integration action. rpc GenerateAWSOIDCToken(GenerateAWSOIDCTokenRequest) returns (GenerateAWSOIDCTokenResponse); + + // GenerateGitHubUserCert signs a SSH certificate for GitHub integration. + rpc GenerateGitHubUserCert(GenerateGitHubUserCertRequest) returns (GenerateGitHubUserCertResponse); } // ListIntegrationsRequest is a request for a paginated list of Integrations. @@ -68,6 +72,8 @@ message ListIntegrationsResponse { message GetIntegrationRequest { // Name is the name of the Integration to be requested. string name = 1; + // WithSecrets specifies whether to load associated secrets. + bool with_secrets = 2; } // CreateIntegrationRequest is the request to create the provided integration. @@ -111,3 +117,24 @@ message GenerateAWSOIDCTokenResponse { // Token is the signed JWT ready to be used string token = 1; } + +// GenerateGitHubUserCertRequest is a request to sign a client certificate used by +// GitHub integration to authenticate with GitHub enterprise. +message GenerateGitHubUserCertRequest { + // Integration is the name of the integration; + string integration = 1; + // PublicKey is the public key to be signed. + bytes public_key = 2; + // Login is the GitHub username. + string login = 3; + // KeyId is the certficate ID, usually the Teleport username. + string key_id = 4; + // Ttl is the duration the certificate will be valid for. + google.protobuf.Duration ttl = 5; +} + +// GenerateGitHubUserCertResponse contains a signed certificate. +message GenerateGitHubUserCertResponse { + // AuthorizedKey is the signed certificate. + bytes authorized_key = 1; +} diff --git a/api/proto/teleport/legacy/types/events/events.proto b/api/proto/teleport/legacy/types/events/events.proto index 6b94e651b14fd..d68da1bc8f85e 100644 --- a/api/proto/teleport/legacy/types/events/events.proto +++ b/api/proto/teleport/legacy/types/events/events.proto @@ -4263,6 +4263,8 @@ message IntegrationMetadata { AWSOIDCIntegrationMetadata AWSOIDC = 2 [(gogoproto.jsontag) = "aws_oidc,omitempty"]; // AzureOIDC contains metadata for Azure OIDC integrations. AzureOIDCIntegrationMetadata AzureOIDC = 3 [(gogoproto.jsontag) = "azure_oidc,omitempty"]; + // GitHub contains metadata for GitHub integrations. + GitHubIntegrationMetadata GitHub = 4 [(gogoproto.jsontag) = "github,omitempty"]; } // AWSOIDCIntegrationMetadata contains metadata for AWS OIDC integrations. @@ -4411,6 +4413,12 @@ message PluginMetadata { bool reuses_credentials = 4 [(gogoproto.jsontag) = "reuses_credentials"]; } +// GitHubIntegrationMetadata contains metadata for GitHub integrations. +message GitHubIntegrationMetadata { + // Organization specifies the name of the organization for the GitHub integration. + string Organization = 1 [(gogoproto.jsontag) = "organization,omitempty"]; +} + // OneOf is a union of one of audit events submitted to the auth service message OneOf { // Event is one of the audit events diff --git a/api/proto/teleport/legacy/types/types.proto b/api/proto/teleport/legacy/types/types.proto index 0b25e9d2c6b9d..5f436a8184763 100644 --- a/api/proto/teleport/legacy/types/types.proto +++ b/api/proto/teleport/legacy/types/types.proto @@ -841,6 +841,10 @@ message ServerSpecV2 { // on, if any. CloudMetadata CloudMetadata = 14 [(gogoproto.jsontag) = "cloud_metadata,omitempty"]; + // GitHub contains info about GitHub proxies where each server represents a + // GitHub organization. + GitHubServerMetadata git_hub = 15 [(gogoproto.jsontag) = "github,omitempty"]; + reserved 8; reserved 10; reserved "KubernetesClusters"; @@ -873,6 +877,13 @@ message CloudMetadata { AWSInfo AWS = 1 [(gogoproto.jsontag) = "aws,omitempty"]; } +message GitHubServerMetadata { + // Organization specifies the name of the organization for the GitHub integration. + string organization = 1 [(gogoproto.jsontag) = "organization,omitempty"]; + // Integration is the integration that is associated with this Server. + string integration = 2 [(gogoproto.jsontag) = "integration,omitempty"]; +} + // AppServerV3 represents a single proxied web app. message AppServerV3 { option (gogoproto.goproto_stringer) = false; @@ -6857,6 +6868,8 @@ message IntegrationSpecV1 { AWSOIDCIntegrationSpecV1 AWSOIDC = 1 [(gogoproto.jsontag) = "aws_oidc,omitempty"]; // AzureOIDC contains the specific fields to handle the Azure OIDC Integration subkind AzureOIDCIntegrationSpecV1 AzureOIDC = 2 [(gogoproto.jsontag) = "azure_oidc,omitempty"]; + // GitHub contains the specific fields to handle the GitHub integration subkind. + GitHubIntegrationSpecV1 GitHub = 3 [(gogoproto.jsontag) = "github,omitempty"]; } } @@ -6894,6 +6907,27 @@ message AzureOIDCIntegrationSpecV1 { string ClientID = 2 [(gogoproto.jsontag) = "client_id,omitempty"]; } +// GitHubIntegrationSpecV1 contains the specific fields to handle the GitHub integration subkind. +message GitHubIntegrationSpecV1 { + // Organization specifies the name of the organization for the GitHub integration. + string Organization = 1 [(gogoproto.jsontag) = "organization,omitempty"]; + + // Proxy specifies GitHub proxy related settings. + GitHubProxy proxy = 2 [(gogoproto.jsontag) = "proxy,omitempty"]; +} + +// GitHubProxy specifies GitHub proxy related settings. +message GitHubProxy { + // Enabled indicates GitHub proxy should be enabled. + bool enabled = 1 [(gogoproto.jsontag) = "enabled,omitempty"]; + + // CertAuthority contains the active SSH CAs used between Teleport and + // GitHub. GitHub does not allow the same CA to be used for a different + // organization so the CA is defined per integration. TODO(greedy52) support + // rotation, HSM encryption. + repeated SSHKeyPair cert_authority = 2 [(gogoproto.jsontag) = "cert_authority,omitempty"]; +} + // HeadlessAuthentication holds data for an ongoing headless authentication attempt. message HeadlessAuthentication { // Header is the resource header. diff --git a/api/types/constants.go b/api/types/constants.go index 4e3e6a44c7de8..7f6dfa39ea1c5 100644 --- a/api/types/constants.go +++ b/api/types/constants.go @@ -163,6 +163,12 @@ const ( // It uses the private key created above to SSH into the host. SubKindOpenSSHEICENode = "openssh-ec2-ice" + // SubKindOpenSSHGitHub is a virtual presentation of the GitHub server (per + // organization) for proxing Git protocol to GitHub over SSH. + // + // It uses a Teleport CA that is stored per GitHub integration. + SubKindOpenSSHGitHub = "openssh-github" + // KindUnifiedResource is a meta Kind that is used for the unified resource search present on // the webUI and Connect. It allows us to query and return multiple kinds at the same time KindUnifiedResource = "unified_resource" diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index 80274ec292374..3b43bd71c11e7 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -7212,10 +7212,12 @@ type IntegrationMetadata struct { // AWSOIDC contains metadata for AWS OIDC integrations. AWSOIDC *AWSOIDCIntegrationMetadata `protobuf:"bytes,2,opt,name=AWSOIDC,proto3" json:"aws_oidc,omitempty"` // AzureOIDC contains metadata for Azure OIDC integrations. - AzureOIDC *AzureOIDCIntegrationMetadata `protobuf:"bytes,3,opt,name=AzureOIDC,proto3" json:"azure_oidc,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + AzureOIDC *AzureOIDCIntegrationMetadata `protobuf:"bytes,3,opt,name=AzureOIDC,proto3" json:"azure_oidc,omitempty"` + // GitHub contains metadata for GitHub integrations. + GitHub *GitHubIntegrationMetadata `protobuf:"bytes,4,opt,name=GitHub,proto3" json:"github,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *IntegrationMetadata) Reset() { *m = IntegrationMetadata{} } @@ -7536,6 +7538,48 @@ func (m *PluginMetadata) XXX_DiscardUnknown() { var xxx_messageInfo_PluginMetadata proto.InternalMessageInfo +// GitHubIntegrationMetadata contains metadata for GitHub integrations. +type GitHubIntegrationMetadata struct { + // Organization specifies the name of the organization for the GitHub integration. + Organization string `protobuf:"bytes,1,opt,name=Organization,proto3" json:"organization,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubIntegrationMetadata) Reset() { *m = GitHubIntegrationMetadata{} } +func (m *GitHubIntegrationMetadata) String() string { return proto.CompactTextString(m) } +func (*GitHubIntegrationMetadata) ProtoMessage() {} +func (*GitHubIntegrationMetadata) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{140} +} +func (m *GitHubIntegrationMetadata) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubIntegrationMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubIntegrationMetadata.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubIntegrationMetadata) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubIntegrationMetadata.Merge(m, src) +} +func (m *GitHubIntegrationMetadata) XXX_Size() int { + return m.Size() +} +func (m *GitHubIntegrationMetadata) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubIntegrationMetadata.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubIntegrationMetadata proto.InternalMessageInfo + // OneOf is a union of one of audit events submitted to the auth service type OneOf struct { // Event is one of the audit events @@ -7722,7 +7766,7 @@ func (m *OneOf) Reset() { *m = OneOf{} } func (m *OneOf) String() string { return proto.CompactTextString(m) } func (*OneOf) ProtoMessage() {} func (*OneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{140} + return fileDescriptor_007ba1c3d6266d56, []int{141} } func (m *OneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9841,7 +9885,7 @@ func (m *StreamStatus) Reset() { *m = StreamStatus{} } func (m *StreamStatus) String() string { return proto.CompactTextString(m) } func (*StreamStatus) ProtoMessage() {} func (*StreamStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{141} + return fileDescriptor_007ba1c3d6266d56, []int{142} } func (m *StreamStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9887,7 +9931,7 @@ func (m *SessionUpload) Reset() { *m = SessionUpload{} } func (m *SessionUpload) String() string { return proto.CompactTextString(m) } func (*SessionUpload) ProtoMessage() {} func (*SessionUpload) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{142} + return fileDescriptor_007ba1c3d6266d56, []int{143} } func (m *SessionUpload) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10006,7 +10050,7 @@ func (m *Identity) Reset() { *m = Identity{} } func (m *Identity) String() string { return proto.CompactTextString(m) } func (*Identity) ProtoMessage() {} func (*Identity) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{143} + return fileDescriptor_007ba1c3d6266d56, []int{144} } func (m *Identity) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10062,7 +10106,7 @@ func (m *RouteToApp) Reset() { *m = RouteToApp{} } func (m *RouteToApp) String() string { return proto.CompactTextString(m) } func (*RouteToApp) ProtoMessage() {} func (*RouteToApp) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{144} + return fileDescriptor_007ba1c3d6266d56, []int{145} } func (m *RouteToApp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10112,7 +10156,7 @@ func (m *RouteToDatabase) Reset() { *m = RouteToDatabase{} } func (m *RouteToDatabase) String() string { return proto.CompactTextString(m) } func (*RouteToDatabase) ProtoMessage() {} func (*RouteToDatabase) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{145} + return fileDescriptor_007ba1c3d6266d56, []int{146} } func (m *RouteToDatabase) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10162,7 +10206,7 @@ func (m *DeviceExtensions) Reset() { *m = DeviceExtensions{} } func (m *DeviceExtensions) String() string { return proto.CompactTextString(m) } func (*DeviceExtensions) ProtoMessage() {} func (*DeviceExtensions) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{146} + return fileDescriptor_007ba1c3d6266d56, []int{147} } func (m *DeviceExtensions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10219,7 +10263,7 @@ func (m *AccessRequestResourceSearch) Reset() { *m = AccessRequestResour func (m *AccessRequestResourceSearch) String() string { return proto.CompactTextString(m) } func (*AccessRequestResourceSearch) ProtoMessage() {} func (*AccessRequestResourceSearch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{147} + return fileDescriptor_007ba1c3d6266d56, []int{148} } func (m *AccessRequestResourceSearch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10270,7 +10314,7 @@ func (m *MySQLStatementPrepare) Reset() { *m = MySQLStatementPrepare{} } func (m *MySQLStatementPrepare) String() string { return proto.CompactTextString(m) } func (*MySQLStatementPrepare) ProtoMessage() {} func (*MySQLStatementPrepare) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{148} + return fileDescriptor_007ba1c3d6266d56, []int{149} } func (m *MySQLStatementPrepare) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10323,7 +10367,7 @@ func (m *MySQLStatementExecute) Reset() { *m = MySQLStatementExecute{} } func (m *MySQLStatementExecute) String() string { return proto.CompactTextString(m) } func (*MySQLStatementExecute) ProtoMessage() {} func (*MySQLStatementExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{149} + return fileDescriptor_007ba1c3d6266d56, []int{150} } func (m *MySQLStatementExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10378,7 +10422,7 @@ func (m *MySQLStatementSendLongData) Reset() { *m = MySQLStatementSendLo func (m *MySQLStatementSendLongData) String() string { return proto.CompactTextString(m) } func (*MySQLStatementSendLongData) ProtoMessage() {} func (*MySQLStatementSendLongData) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{150} + return fileDescriptor_007ba1c3d6266d56, []int{151} } func (m *MySQLStatementSendLongData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10429,7 +10473,7 @@ func (m *MySQLStatementClose) Reset() { *m = MySQLStatementClose{} } func (m *MySQLStatementClose) String() string { return proto.CompactTextString(m) } func (*MySQLStatementClose) ProtoMessage() {} func (*MySQLStatementClose) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{151} + return fileDescriptor_007ba1c3d6266d56, []int{152} } func (m *MySQLStatementClose) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10480,7 +10524,7 @@ func (m *MySQLStatementReset) Reset() { *m = MySQLStatementReset{} } func (m *MySQLStatementReset) String() string { return proto.CompactTextString(m) } func (*MySQLStatementReset) ProtoMessage() {} func (*MySQLStatementReset) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{152} + return fileDescriptor_007ba1c3d6266d56, []int{153} } func (m *MySQLStatementReset) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10533,7 +10577,7 @@ func (m *MySQLStatementFetch) Reset() { *m = MySQLStatementFetch{} } func (m *MySQLStatementFetch) String() string { return proto.CompactTextString(m) } func (*MySQLStatementFetch) ProtoMessage() {} func (*MySQLStatementFetch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{153} + return fileDescriptor_007ba1c3d6266d56, []int{154} } func (m *MySQLStatementFetch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10586,7 +10630,7 @@ func (m *MySQLStatementBulkExecute) Reset() { *m = MySQLStatementBulkExe func (m *MySQLStatementBulkExecute) String() string { return proto.CompactTextString(m) } func (*MySQLStatementBulkExecute) ProtoMessage() {} func (*MySQLStatementBulkExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{154} + return fileDescriptor_007ba1c3d6266d56, []int{155} } func (m *MySQLStatementBulkExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10637,7 +10681,7 @@ func (m *MySQLInitDB) Reset() { *m = MySQLInitDB{} } func (m *MySQLInitDB) String() string { return proto.CompactTextString(m) } func (*MySQLInitDB) ProtoMessage() {} func (*MySQLInitDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{155} + return fileDescriptor_007ba1c3d6266d56, []int{156} } func (m *MySQLInitDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10687,7 +10731,7 @@ func (m *MySQLCreateDB) Reset() { *m = MySQLCreateDB{} } func (m *MySQLCreateDB) String() string { return proto.CompactTextString(m) } func (*MySQLCreateDB) ProtoMessage() {} func (*MySQLCreateDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{156} + return fileDescriptor_007ba1c3d6266d56, []int{157} } func (m *MySQLCreateDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10737,7 +10781,7 @@ func (m *MySQLDropDB) Reset() { *m = MySQLDropDB{} } func (m *MySQLDropDB) String() string { return proto.CompactTextString(m) } func (*MySQLDropDB) ProtoMessage() {} func (*MySQLDropDB) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{157} + return fileDescriptor_007ba1c3d6266d56, []int{158} } func (m *MySQLDropDB) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10785,7 +10829,7 @@ func (m *MySQLShutDown) Reset() { *m = MySQLShutDown{} } func (m *MySQLShutDown) String() string { return proto.CompactTextString(m) } func (*MySQLShutDown) ProtoMessage() {} func (*MySQLShutDown) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{158} + return fileDescriptor_007ba1c3d6266d56, []int{159} } func (m *MySQLShutDown) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10836,7 +10880,7 @@ func (m *MySQLProcessKill) Reset() { *m = MySQLProcessKill{} } func (m *MySQLProcessKill) String() string { return proto.CompactTextString(m) } func (*MySQLProcessKill) ProtoMessage() {} func (*MySQLProcessKill) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{159} + return fileDescriptor_007ba1c3d6266d56, []int{160} } func (m *MySQLProcessKill) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10885,7 +10929,7 @@ func (m *MySQLDebug) Reset() { *m = MySQLDebug{} } func (m *MySQLDebug) String() string { return proto.CompactTextString(m) } func (*MySQLDebug) ProtoMessage() {} func (*MySQLDebug) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{160} + return fileDescriptor_007ba1c3d6266d56, []int{161} } func (m *MySQLDebug) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10935,7 +10979,7 @@ func (m *MySQLRefresh) Reset() { *m = MySQLRefresh{} } func (m *MySQLRefresh) String() string { return proto.CompactTextString(m) } func (*MySQLRefresh) ProtoMessage() {} func (*MySQLRefresh) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{161} + return fileDescriptor_007ba1c3d6266d56, []int{162} } func (m *MySQLRefresh) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10987,7 +11031,7 @@ func (m *SQLServerRPCRequest) Reset() { *m = SQLServerRPCRequest{} } func (m *SQLServerRPCRequest) String() string { return proto.CompactTextString(m) } func (*SQLServerRPCRequest) ProtoMessage() {} func (*SQLServerRPCRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{162} + return fileDescriptor_007ba1c3d6266d56, []int{163} } func (m *SQLServerRPCRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11037,7 +11081,7 @@ func (m *DatabaseSessionMalformedPacket) Reset() { *m = DatabaseSessionM func (m *DatabaseSessionMalformedPacket) String() string { return proto.CompactTextString(m) } func (*DatabaseSessionMalformedPacket) ProtoMessage() {} func (*DatabaseSessionMalformedPacket) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{163} + return fileDescriptor_007ba1c3d6266d56, []int{164} } func (m *DatabaseSessionMalformedPacket) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11104,7 +11148,7 @@ func (m *ElasticsearchRequest) Reset() { *m = ElasticsearchRequest{} } func (m *ElasticsearchRequest) String() string { return proto.CompactTextString(m) } func (*ElasticsearchRequest) ProtoMessage() {} func (*ElasticsearchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{164} + return fileDescriptor_007ba1c3d6266d56, []int{165} } func (m *ElasticsearchRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11170,7 +11214,7 @@ func (m *OpenSearchRequest) Reset() { *m = OpenSearchRequest{} } func (m *OpenSearchRequest) String() string { return proto.CompactTextString(m) } func (*OpenSearchRequest) ProtoMessage() {} func (*OpenSearchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{165} + return fileDescriptor_007ba1c3d6266d56, []int{166} } func (m *OpenSearchRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11230,7 +11274,7 @@ func (m *DynamoDBRequest) Reset() { *m = DynamoDBRequest{} } func (m *DynamoDBRequest) String() string { return proto.CompactTextString(m) } func (*DynamoDBRequest) ProtoMessage() {} func (*DynamoDBRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{166} + return fileDescriptor_007ba1c3d6266d56, []int{167} } func (m *DynamoDBRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11296,7 +11340,7 @@ func (m *AppSessionDynamoDBRequest) Reset() { *m = AppSessionDynamoDBReq func (m *AppSessionDynamoDBRequest) String() string { return proto.CompactTextString(m) } func (*AppSessionDynamoDBRequest) ProtoMessage() {} func (*AppSessionDynamoDBRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{167} + return fileDescriptor_007ba1c3d6266d56, []int{168} } func (m *AppSessionDynamoDBRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11338,7 +11382,7 @@ func (m *UpgradeWindowStartMetadata) Reset() { *m = UpgradeWindowStartMe func (m *UpgradeWindowStartMetadata) String() string { return proto.CompactTextString(m) } func (*UpgradeWindowStartMetadata) ProtoMessage() {} func (*UpgradeWindowStartMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{168} + return fileDescriptor_007ba1c3d6266d56, []int{169} } func (m *UpgradeWindowStartMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11386,7 +11430,7 @@ func (m *UpgradeWindowStartUpdate) Reset() { *m = UpgradeWindowStartUpda func (m *UpgradeWindowStartUpdate) String() string { return proto.CompactTextString(m) } func (*UpgradeWindowStartUpdate) ProtoMessage() {} func (*UpgradeWindowStartUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{169} + return fileDescriptor_007ba1c3d6266d56, []int{170} } func (m *UpgradeWindowStartUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11433,7 +11477,7 @@ func (m *SessionRecordingAccess) Reset() { *m = SessionRecordingAccess{} func (m *SessionRecordingAccess) String() string { return proto.CompactTextString(m) } func (*SessionRecordingAccess) ProtoMessage() {} func (*SessionRecordingAccess) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{170} + return fileDescriptor_007ba1c3d6266d56, []int{171} } func (m *SessionRecordingAccess) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11475,7 +11519,7 @@ func (m *KubeClusterMetadata) Reset() { *m = KubeClusterMetadata{} } func (m *KubeClusterMetadata) String() string { return proto.CompactTextString(m) } func (*KubeClusterMetadata) ProtoMessage() {} func (*KubeClusterMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{171} + return fileDescriptor_007ba1c3d6266d56, []int{172} } func (m *KubeClusterMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11523,7 +11567,7 @@ func (m *KubernetesClusterCreate) Reset() { *m = KubernetesClusterCreate func (m *KubernetesClusterCreate) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterCreate) ProtoMessage() {} func (*KubernetesClusterCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{172} + return fileDescriptor_007ba1c3d6266d56, []int{173} } func (m *KubernetesClusterCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11571,7 +11615,7 @@ func (m *KubernetesClusterUpdate) Reset() { *m = KubernetesClusterUpdate func (m *KubernetesClusterUpdate) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterUpdate) ProtoMessage() {} func (*KubernetesClusterUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{173} + return fileDescriptor_007ba1c3d6266d56, []int{174} } func (m *KubernetesClusterUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11617,7 +11661,7 @@ func (m *KubernetesClusterDelete) Reset() { *m = KubernetesClusterDelete func (m *KubernetesClusterDelete) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterDelete) ProtoMessage() {} func (*KubernetesClusterDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{174} + return fileDescriptor_007ba1c3d6266d56, []int{175} } func (m *KubernetesClusterDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11680,7 +11724,7 @@ func (m *SSMRun) Reset() { *m = SSMRun{} } func (m *SSMRun) String() string { return proto.CompactTextString(m) } func (*SSMRun) ProtoMessage() {} func (*SSMRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{175} + return fileDescriptor_007ba1c3d6266d56, []int{176} } func (m *SSMRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11733,7 +11777,7 @@ func (m *CassandraPrepare) Reset() { *m = CassandraPrepare{} } func (m *CassandraPrepare) String() string { return proto.CompactTextString(m) } func (*CassandraPrepare) ProtoMessage() {} func (*CassandraPrepare) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{176} + return fileDescriptor_007ba1c3d6266d56, []int{177} } func (m *CassandraPrepare) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11783,7 +11827,7 @@ func (m *CassandraExecute) Reset() { *m = CassandraExecute{} } func (m *CassandraExecute) String() string { return proto.CompactTextString(m) } func (*CassandraExecute) ProtoMessage() {} func (*CassandraExecute) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{177} + return fileDescriptor_007ba1c3d6266d56, []int{178} } func (m *CassandraExecute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11839,7 +11883,7 @@ func (m *CassandraBatch) Reset() { *m = CassandraBatch{} } func (m *CassandraBatch) String() string { return proto.CompactTextString(m) } func (*CassandraBatch) ProtoMessage() {} func (*CassandraBatch) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{178} + return fileDescriptor_007ba1c3d6266d56, []int{179} } func (m *CassandraBatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11885,7 +11929,7 @@ func (m *CassandraBatch_BatchChild) Reset() { *m = CassandraBatch_BatchC func (m *CassandraBatch_BatchChild) String() string { return proto.CompactTextString(m) } func (*CassandraBatch_BatchChild) ProtoMessage() {} func (*CassandraBatch_BatchChild) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{178, 0} + return fileDescriptor_007ba1c3d6266d56, []int{179, 0} } func (m *CassandraBatch_BatchChild) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11929,7 +11973,7 @@ func (m *CassandraBatch_BatchChild_Value) Reset() { *m = CassandraBatch_ func (m *CassandraBatch_BatchChild_Value) String() string { return proto.CompactTextString(m) } func (*CassandraBatch_BatchChild_Value) ProtoMessage() {} func (*CassandraBatch_BatchChild_Value) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{178, 0, 0} + return fileDescriptor_007ba1c3d6266d56, []int{179, 0, 0} } func (m *CassandraBatch_BatchChild_Value) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11980,7 +12024,7 @@ func (m *CassandraRegister) Reset() { *m = CassandraRegister{} } func (m *CassandraRegister) String() string { return proto.CompactTextString(m) } func (*CassandraRegister) ProtoMessage() {} func (*CassandraRegister) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{179} + return fileDescriptor_007ba1c3d6266d56, []int{180} } func (m *CassandraRegister) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12026,7 +12070,7 @@ func (m *LoginRuleCreate) Reset() { *m = LoginRuleCreate{} } func (m *LoginRuleCreate) String() string { return proto.CompactTextString(m) } func (*LoginRuleCreate) ProtoMessage() {} func (*LoginRuleCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{180} + return fileDescriptor_007ba1c3d6266d56, []int{181} } func (m *LoginRuleCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12072,7 +12116,7 @@ func (m *LoginRuleDelete) Reset() { *m = LoginRuleDelete{} } func (m *LoginRuleDelete) String() string { return proto.CompactTextString(m) } func (*LoginRuleDelete) ProtoMessage() {} func (*LoginRuleDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{181} + return fileDescriptor_007ba1c3d6266d56, []int{182} } func (m *LoginRuleDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12122,7 +12166,7 @@ func (m *SAMLIdPAuthAttempt) Reset() { *m = SAMLIdPAuthAttempt{} } func (m *SAMLIdPAuthAttempt) String() string { return proto.CompactTextString(m) } func (*SAMLIdPAuthAttempt) ProtoMessage() {} func (*SAMLIdPAuthAttempt) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{182} + return fileDescriptor_007ba1c3d6266d56, []int{183} } func (m *SAMLIdPAuthAttempt) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12168,7 +12212,7 @@ func (m *SAMLIdPServiceProviderCreate) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderCreate) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderCreate) ProtoMessage() {} func (*SAMLIdPServiceProviderCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{183} + return fileDescriptor_007ba1c3d6266d56, []int{184} } func (m *SAMLIdPServiceProviderCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12214,7 +12258,7 @@ func (m *SAMLIdPServiceProviderUpdate) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderUpdate) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderUpdate) ProtoMessage() {} func (*SAMLIdPServiceProviderUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{184} + return fileDescriptor_007ba1c3d6266d56, []int{185} } func (m *SAMLIdPServiceProviderUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12260,7 +12304,7 @@ func (m *SAMLIdPServiceProviderDelete) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderDelete) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderDelete) ProtoMessage() {} func (*SAMLIdPServiceProviderDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{185} + return fileDescriptor_007ba1c3d6266d56, []int{186} } func (m *SAMLIdPServiceProviderDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12304,7 +12348,7 @@ func (m *SAMLIdPServiceProviderDeleteAll) Reset() { *m = SAMLIdPServiceP func (m *SAMLIdPServiceProviderDeleteAll) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderDeleteAll) ProtoMessage() {} func (*SAMLIdPServiceProviderDeleteAll) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{186} + return fileDescriptor_007ba1c3d6266d56, []int{187} } func (m *SAMLIdPServiceProviderDeleteAll) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12350,7 +12394,7 @@ func (m *OktaResourcesUpdate) Reset() { *m = OktaResourcesUpdate{} } func (m *OktaResourcesUpdate) String() string { return proto.CompactTextString(m) } func (*OktaResourcesUpdate) ProtoMessage() {} func (*OktaResourcesUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{187} + return fileDescriptor_007ba1c3d6266d56, []int{188} } func (m *OktaResourcesUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12396,7 +12440,7 @@ func (m *OktaSyncFailure) Reset() { *m = OktaSyncFailure{} } func (m *OktaSyncFailure) String() string { return proto.CompactTextString(m) } func (*OktaSyncFailure) ProtoMessage() {} func (*OktaSyncFailure) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{188} + return fileDescriptor_007ba1c3d6266d56, []int{189} } func (m *OktaSyncFailure) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12446,7 +12490,7 @@ func (m *OktaAssignmentResult) Reset() { *m = OktaAssignmentResult{} } func (m *OktaAssignmentResult) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentResult) ProtoMessage() {} func (*OktaAssignmentResult) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{189} + return fileDescriptor_007ba1c3d6266d56, []int{190} } func (m *OktaAssignmentResult) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12492,7 +12536,7 @@ func (m *AccessListCreate) Reset() { *m = AccessListCreate{} } func (m *AccessListCreate) String() string { return proto.CompactTextString(m) } func (*AccessListCreate) ProtoMessage() {} func (*AccessListCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{190} + return fileDescriptor_007ba1c3d6266d56, []int{191} } func (m *AccessListCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12538,7 +12582,7 @@ func (m *AccessListUpdate) Reset() { *m = AccessListUpdate{} } func (m *AccessListUpdate) String() string { return proto.CompactTextString(m) } func (*AccessListUpdate) ProtoMessage() {} func (*AccessListUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{191} + return fileDescriptor_007ba1c3d6266d56, []int{192} } func (m *AccessListUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12584,7 +12628,7 @@ func (m *AccessListDelete) Reset() { *m = AccessListDelete{} } func (m *AccessListDelete) String() string { return proto.CompactTextString(m) } func (*AccessListDelete) ProtoMessage() {} func (*AccessListDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{192} + return fileDescriptor_007ba1c3d6266d56, []int{193} } func (m *AccessListDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12632,7 +12676,7 @@ func (m *AccessListMemberCreate) Reset() { *m = AccessListMemberCreate{} func (m *AccessListMemberCreate) String() string { return proto.CompactTextString(m) } func (*AccessListMemberCreate) ProtoMessage() {} func (*AccessListMemberCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{193} + return fileDescriptor_007ba1c3d6266d56, []int{194} } func (m *AccessListMemberCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12680,7 +12724,7 @@ func (m *AccessListMemberUpdate) Reset() { *m = AccessListMemberUpdate{} func (m *AccessListMemberUpdate) String() string { return proto.CompactTextString(m) } func (*AccessListMemberUpdate) ProtoMessage() {} func (*AccessListMemberUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{194} + return fileDescriptor_007ba1c3d6266d56, []int{195} } func (m *AccessListMemberUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12728,7 +12772,7 @@ func (m *AccessListMemberDelete) Reset() { *m = AccessListMemberDelete{} func (m *AccessListMemberDelete) String() string { return proto.CompactTextString(m) } func (*AccessListMemberDelete) ProtoMessage() {} func (*AccessListMemberDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{195} + return fileDescriptor_007ba1c3d6266d56, []int{196} } func (m *AccessListMemberDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12778,7 +12822,7 @@ func (m *AccessListMemberDeleteAllForAccessList) Reset() { func (m *AccessListMemberDeleteAllForAccessList) String() string { return proto.CompactTextString(m) } func (*AccessListMemberDeleteAllForAccessList) ProtoMessage() {} func (*AccessListMemberDeleteAllForAccessList) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{196} + return fileDescriptor_007ba1c3d6266d56, []int{197} } func (m *AccessListMemberDeleteAllForAccessList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12826,7 +12870,7 @@ func (m *AccessListReview) Reset() { *m = AccessListReview{} } func (m *AccessListReview) String() string { return proto.CompactTextString(m) } func (*AccessListReview) ProtoMessage() {} func (*AccessListReview) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{197} + return fileDescriptor_007ba1c3d6266d56, []int{198} } func (m *AccessListReview) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12874,7 +12918,7 @@ func (m *AuditQueryRun) Reset() { *m = AuditQueryRun{} } func (m *AuditQueryRun) String() string { return proto.CompactTextString(m) } func (*AuditQueryRun) ProtoMessage() {} func (*AuditQueryRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{198} + return fileDescriptor_007ba1c3d6266d56, []int{199} } func (m *AuditQueryRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12924,7 +12968,7 @@ func (m *AuditQueryDetails) Reset() { *m = AuditQueryDetails{} } func (m *AuditQueryDetails) String() string { return proto.CompactTextString(m) } func (*AuditQueryDetails) ProtoMessage() {} func (*AuditQueryDetails) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{199} + return fileDescriptor_007ba1c3d6266d56, []int{200} } func (m *AuditQueryDetails) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12980,7 +13024,7 @@ func (m *SecurityReportRun) Reset() { *m = SecurityReportRun{} } func (m *SecurityReportRun) String() string { return proto.CompactTextString(m) } func (*SecurityReportRun) ProtoMessage() {} func (*SecurityReportRun) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{200} + return fileDescriptor_007ba1c3d6266d56, []int{201} } func (m *SecurityReportRun) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13028,7 +13072,7 @@ func (m *ExternalAuditStorageEnable) Reset() { *m = ExternalAuditStorage func (m *ExternalAuditStorageEnable) String() string { return proto.CompactTextString(m) } func (*ExternalAuditStorageEnable) ProtoMessage() {} func (*ExternalAuditStorageEnable) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{201} + return fileDescriptor_007ba1c3d6266d56, []int{202} } func (m *ExternalAuditStorageEnable) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13076,7 +13120,7 @@ func (m *ExternalAuditStorageDisable) Reset() { *m = ExternalAuditStorag func (m *ExternalAuditStorageDisable) String() string { return proto.CompactTextString(m) } func (*ExternalAuditStorageDisable) ProtoMessage() {} func (*ExternalAuditStorageDisable) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{202} + return fileDescriptor_007ba1c3d6266d56, []int{203} } func (m *ExternalAuditStorageDisable) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13137,7 +13181,7 @@ func (m *ExternalAuditStorageDetails) Reset() { *m = ExternalAuditStorag func (m *ExternalAuditStorageDetails) String() string { return proto.CompactTextString(m) } func (*ExternalAuditStorageDetails) ProtoMessage() {} func (*ExternalAuditStorageDetails) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{203} + return fileDescriptor_007ba1c3d6266d56, []int{204} } func (m *ExternalAuditStorageDetails) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13195,7 +13239,7 @@ func (m *OktaAccessListSync) Reset() { *m = OktaAccessListSync{} } func (m *OktaAccessListSync) String() string { return proto.CompactTextString(m) } func (*OktaAccessListSync) ProtoMessage() {} func (*OktaAccessListSync) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{204} + return fileDescriptor_007ba1c3d6266d56, []int{205} } func (m *OktaAccessListSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13259,7 +13303,7 @@ func (m *OktaUserSync) Reset() { *m = OktaUserSync{} } func (m *OktaUserSync) String() string { return proto.CompactTextString(m) } func (*OktaUserSync) ProtoMessage() {} func (*OktaUserSync) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{205} + return fileDescriptor_007ba1c3d6266d56, []int{206} } func (m *OktaUserSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13317,7 +13361,7 @@ func (m *SPIFFESVIDIssued) Reset() { *m = SPIFFESVIDIssued{} } func (m *SPIFFESVIDIssued) String() string { return proto.CompactTextString(m) } func (*SPIFFESVIDIssued) ProtoMessage() {} func (*SPIFFESVIDIssued) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{206} + return fileDescriptor_007ba1c3d6266d56, []int{207} } func (m *SPIFFESVIDIssued) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13368,7 +13412,7 @@ func (m *AuthPreferenceUpdate) Reset() { *m = AuthPreferenceUpdate{} } func (m *AuthPreferenceUpdate) String() string { return proto.CompactTextString(m) } func (*AuthPreferenceUpdate) ProtoMessage() {} func (*AuthPreferenceUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{207} + return fileDescriptor_007ba1c3d6266d56, []int{208} } func (m *AuthPreferenceUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13416,7 +13460,7 @@ func (m *ClusterNetworkingConfigUpdate) Reset() { *m = ClusterNetworking func (m *ClusterNetworkingConfigUpdate) String() string { return proto.CompactTextString(m) } func (*ClusterNetworkingConfigUpdate) ProtoMessage() {} func (*ClusterNetworkingConfigUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{208} + return fileDescriptor_007ba1c3d6266d56, []int{209} } func (m *ClusterNetworkingConfigUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13464,7 +13508,7 @@ func (m *SessionRecordingConfigUpdate) Reset() { *m = SessionRecordingCo func (m *SessionRecordingConfigUpdate) String() string { return proto.CompactTextString(m) } func (*SessionRecordingConfigUpdate) ProtoMessage() {} func (*SessionRecordingConfigUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{209} + return fileDescriptor_007ba1c3d6266d56, []int{210} } func (m *SessionRecordingConfigUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13514,7 +13558,7 @@ func (m *AccessPathChanged) Reset() { *m = AccessPathChanged{} } func (m *AccessPathChanged) String() string { return proto.CompactTextString(m) } func (*AccessPathChanged) ProtoMessage() {} func (*AccessPathChanged) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{210} + return fileDescriptor_007ba1c3d6266d56, []int{211} } func (m *AccessPathChanged) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13568,7 +13612,7 @@ func (m *SpannerRPC) Reset() { *m = SpannerRPC{} } func (m *SpannerRPC) String() string { return proto.CompactTextString(m) } func (*SpannerRPC) ProtoMessage() {} func (*SpannerRPC) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{211} + return fileDescriptor_007ba1c3d6266d56, []int{212} } func (m *SpannerRPC) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13616,7 +13660,7 @@ func (m *AccessGraphSettingsUpdate) Reset() { *m = AccessGraphSettingsUp func (m *AccessGraphSettingsUpdate) String() string { return proto.CompactTextString(m) } func (*AccessGraphSettingsUpdate) ProtoMessage() {} func (*AccessGraphSettingsUpdate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{212} + return fileDescriptor_007ba1c3d6266d56, []int{213} } func (m *AccessGraphSettingsUpdate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13664,7 +13708,7 @@ func (m *SPIFFEFederationCreate) Reset() { *m = SPIFFEFederationCreate{} func (m *SPIFFEFederationCreate) String() string { return proto.CompactTextString(m) } func (*SPIFFEFederationCreate) ProtoMessage() {} func (*SPIFFEFederationCreate) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{213} + return fileDescriptor_007ba1c3d6266d56, []int{214} } func (m *SPIFFEFederationCreate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13712,7 +13756,7 @@ func (m *SPIFFEFederationDelete) Reset() { *m = SPIFFEFederationDelete{} func (m *SPIFFEFederationDelete) String() string { return proto.CompactTextString(m) } func (*SPIFFEFederationDelete) ProtoMessage() {} func (*SPIFFEFederationDelete) Descriptor() ([]byte, []int) { - return fileDescriptor_007ba1c3d6266d56, []int{214} + return fileDescriptor_007ba1c3d6266d56, []int{215} } func (m *SPIFFEFederationDelete) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13901,6 +13945,7 @@ func init() { proto.RegisterType((*PluginUpdate)(nil), "events.PluginUpdate") proto.RegisterType((*PluginDelete)(nil), "events.PluginDelete") proto.RegisterType((*PluginMetadata)(nil), "events.PluginMetadata") + proto.RegisterType((*GitHubIntegrationMetadata)(nil), "events.GitHubIntegrationMetadata") proto.RegisterType((*OneOf)(nil), "events.OneOf") proto.RegisterType((*StreamStatus)(nil), "events.StreamStatus") proto.RegisterType((*SessionUpload)(nil), "events.SessionUpload") @@ -13987,1004 +14032,1007 @@ func init() { } var fileDescriptor_007ba1c3d6266d56 = []byte{ - // 15941 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x74, 0x24, 0xd7, - 0x79, 0x18, 0x88, 0x7e, 0xa0, 0x01, 0x7c, 0x78, 0x0c, 0x70, 0xe7, 0x55, 0x1c, 0xce, 0x0c, 0xc8, - 0xa2, 0x38, 0x9a, 0xa1, 0xc8, 0x19, 0x72, 0x38, 0x24, 0xc5, 0x97, 0xc8, 0x06, 0x1a, 0x18, 0x34, - 0x07, 0x2f, 0x56, 0x63, 0x66, 0x44, 0xbd, 0xda, 0x85, 0xae, 0x8b, 0x46, 0x71, 0xba, 0xab, 0x5a, - 0x55, 0xd5, 0x83, 0x01, 0xf7, 0x65, 0x79, 0x6d, 0x59, 0xf2, 0x4a, 0xb2, 0x2c, 0xaf, 0x2d, 0xbf, - 0x76, 0x2d, 0xdb, 0xeb, 0x5d, 0xdb, 0xeb, 0xb5, 0xd7, 0xbb, 0x3e, 0xb6, 0x65, 0x47, 0x27, 0x76, - 0x94, 0x07, 0x1d, 0x1d, 0xfb, 0xd8, 0x4e, 0xe2, 0xe3, 0x93, 0x38, 0x90, 0xa3, 0xc4, 0xf9, 0x81, - 0x93, 0x9c, 0xe3, 0x24, 0x3a, 0xb1, 0xe2, 0x38, 0x39, 0x39, 0xf7, 0xbb, 0xb7, 0xaa, 0x6e, 0x3d, - 0xba, 0xf1, 0xa4, 0x41, 0x68, 0xf0, 0x67, 0x06, 0xfd, 0x7d, 0xdf, 0xfd, 0xee, 0xad, 0xef, 0x7e, - 0xf7, 0xfd, 0x3d, 0xe0, 0x92, 0x47, 0x1b, 0xb4, 0x65, 0x3b, 0xde, 0x95, 0x06, 0xad, 0xeb, 0xb5, - 0xf5, 0x2b, 0xde, 0x7a, 0x8b, 0xba, 0x57, 0xe8, 0x5d, 0x6a, 0x79, 0xfe, 0x7f, 0x97, 0x5b, 0x8e, - 0xed, 0xd9, 0xa4, 0xc0, 0x7f, 0x9d, 0x39, 0x51, 0xb7, 0xeb, 0x36, 0x82, 0xae, 0xb0, 0xbf, 0x38, - 0xf6, 0xcc, 0xd9, 0xba, 0x6d, 0xd7, 0x1b, 0xf4, 0x0a, 0xfe, 0x5a, 0x6e, 0xaf, 0x5c, 0x71, 0x3d, - 0xa7, 0x5d, 0xf3, 0x04, 0x76, 0x3c, 0x8e, 0xf5, 0xcc, 0x26, 0x75, 0x3d, 0xbd, 0xd9, 0x12, 0x04, - 0xe7, 0xe3, 0x04, 0x6b, 0x8e, 0xde, 0x6a, 0x51, 0x47, 0x54, 0x7e, 0xe6, 0xe1, 0xf4, 0x76, 0xe2, - 0xbf, 0x82, 0xe4, 0x89, 0x74, 0x12, 0x9f, 0x51, 0x8c, 0xa3, 0xfa, 0x85, 0x2c, 0xf4, 0xcf, 0x51, - 0x4f, 0x37, 0x74, 0x4f, 0x27, 0x67, 0xa1, 0xb7, 0x6c, 0x19, 0xf4, 0x9e, 0x92, 0x79, 0x28, 0x73, - 0x31, 0x37, 0x51, 0xd8, 0xdc, 0x18, 0xcf, 0x52, 0x53, 0xe3, 0x40, 0x72, 0x0e, 0xf2, 0x4b, 0xeb, - 0x2d, 0xaa, 0x64, 0x1f, 0xca, 0x5c, 0x1c, 0x98, 0x18, 0xd8, 0xdc, 0x18, 0xef, 0x45, 0x59, 0x68, - 0x08, 0x26, 0x0f, 0x43, 0xb6, 0x5c, 0x52, 0x72, 0x88, 0x1c, 0xdb, 0xdc, 0x18, 0x1f, 0x6e, 0x9b, - 0xc6, 0xe3, 0x76, 0xd3, 0xf4, 0x68, 0xb3, 0xe5, 0xad, 0x6b, 0xd9, 0x72, 0x89, 0x5c, 0x80, 0xfc, - 0xa4, 0x6d, 0x50, 0x25, 0x8f, 0x44, 0x64, 0x73, 0x63, 0x7c, 0xa4, 0x66, 0x1b, 0x54, 0xa2, 0x42, - 0x3c, 0x79, 0x15, 0xf2, 0x4b, 0x66, 0x93, 0x2a, 0xbd, 0x0f, 0x65, 0x2e, 0x0e, 0x5e, 0x3d, 0x73, - 0x99, 0x4b, 0xe5, 0xb2, 0x2f, 0x95, 0xcb, 0x4b, 0xbe, 0xd8, 0x26, 0x46, 0xdf, 0xde, 0x18, 0xef, - 0xd9, 0xdc, 0x18, 0xcf, 0x33, 0x49, 0x7e, 0xfe, 0xeb, 0xe3, 0x19, 0x0d, 0x4b, 0x92, 0x97, 0x60, - 0x70, 0xb2, 0xd1, 0x76, 0x3d, 0xea, 0xcc, 0xeb, 0x4d, 0xaa, 0x14, 0xb0, 0xc2, 0x33, 0x9b, 0x1b, - 0xe3, 0xa7, 0x6a, 0x1c, 0x5c, 0xb5, 0xf4, 0xa6, 0x5c, 0xb1, 0x4c, 0xae, 0xfe, 0x46, 0x06, 0x8e, - 0x55, 0xa8, 0xeb, 0x9a, 0xb6, 0x15, 0xc8, 0xe6, 0x51, 0x18, 0x10, 0xa0, 0x72, 0x09, 0xe5, 0x33, - 0x30, 0xd1, 0xb7, 0xb9, 0x31, 0x9e, 0x73, 0x4d, 0x43, 0x0b, 0x31, 0xe4, 0x49, 0xe8, 0xbb, 0x6d, - 0x7a, 0xab, 0x73, 0xd3, 0x45, 0x21, 0xa7, 0x53, 0x9b, 0x1b, 0xe3, 0x64, 0xcd, 0xf4, 0x56, 0xab, - 0xcd, 0x15, 0x5d, 0xaa, 0xd0, 0x27, 0x23, 0xb3, 0x30, 0xba, 0xe8, 0x98, 0x77, 0x75, 0x8f, 0xde, - 0xa0, 0xeb, 0x8b, 0x76, 0xc3, 0xac, 0xad, 0x0b, 0x29, 0x3e, 0xb4, 0xb9, 0x31, 0x7e, 0xb6, 0xc5, - 0x71, 0xd5, 0x3b, 0x74, 0xbd, 0xda, 0x42, 0xac, 0xc4, 0x24, 0x51, 0x52, 0xfd, 0xcd, 0x02, 0x0c, - 0xdd, 0x74, 0xa9, 0x13, 0xb4, 0xfb, 0x02, 0xe4, 0xd9, 0x6f, 0xd1, 0x64, 0x94, 0x79, 0xdb, 0xa5, - 0x8e, 0x2c, 0x73, 0x86, 0x27, 0x97, 0xa0, 0x77, 0xd6, 0xae, 0x9b, 0x96, 0x68, 0xf6, 0xf1, 0xcd, - 0x8d, 0xf1, 0x63, 0x0d, 0x06, 0x90, 0x28, 0x39, 0x05, 0xf9, 0x00, 0x0c, 0x95, 0x9b, 0x4c, 0x87, - 0x6c, 0x4b, 0xf7, 0x6c, 0x47, 0xb4, 0x16, 0xa5, 0x6b, 0x4a, 0x70, 0xa9, 0x60, 0x84, 0x9e, 0xbc, - 0x00, 0x50, 0xbc, 0x5d, 0xd1, 0xec, 0x06, 0x2d, 0x6a, 0xf3, 0x42, 0x19, 0xb0, 0xb4, 0xbe, 0xe6, - 0x56, 0x1d, 0xbb, 0x41, 0xab, 0xba, 0x23, 0x57, 0x2b, 0x51, 0x93, 0x29, 0x18, 0x29, 0xd6, 0x6a, - 0xd4, 0x75, 0x35, 0xfa, 0xf1, 0x36, 0x75, 0x3d, 0x57, 0xe9, 0x7d, 0x28, 0x77, 0x71, 0x60, 0xe2, - 0xdc, 0xe6, 0xc6, 0xf8, 0x03, 0x3a, 0x62, 0xaa, 0x8e, 0x40, 0x49, 0x2c, 0x62, 0x85, 0xc8, 0x04, - 0x0c, 0x17, 0xdf, 0x6a, 0x3b, 0xb4, 0x6c, 0x50, 0xcb, 0x33, 0xbd, 0x75, 0xa1, 0x21, 0x67, 0x37, - 0x37, 0xc6, 0x15, 0x9d, 0x21, 0xaa, 0xa6, 0xc0, 0x48, 0x4c, 0xa2, 0x45, 0xc8, 0x02, 0x8c, 0x5d, - 0x9f, 0x5c, 0xac, 0x50, 0xe7, 0xae, 0x59, 0xa3, 0xc5, 0x5a, 0xcd, 0x6e, 0x5b, 0x9e, 0xd2, 0x87, - 0x7c, 0x1e, 0xde, 0xdc, 0x18, 0x3f, 0x57, 0xaf, 0xb5, 0xaa, 0x2e, 0xc7, 0x56, 0x75, 0x8e, 0x96, - 0x98, 0x25, 0xcb, 0x92, 0x0f, 0xc1, 0xf0, 0x92, 0xc3, 0xb4, 0xd0, 0x28, 0x51, 0x06, 0x57, 0xfa, - 0x51, 0xff, 0x4f, 0x5d, 0x16, 0x13, 0x10, 0x87, 0xfa, 0x3d, 0xcb, 0x1b, 0xeb, 0xf1, 0x02, 0x55, - 0x03, 0x71, 0x72, 0x63, 0x23, 0xac, 0x08, 0x05, 0x85, 0x7d, 0xbc, 0xe9, 0x50, 0x23, 0xa1, 0x6d, - 0x03, 0xd8, 0xe6, 0x4b, 0x9b, 0x1b, 0xe3, 0x8f, 0x3a, 0x82, 0xa6, 0xda, 0x55, 0xed, 0x3a, 0xb2, - 0x22, 0x53, 0xd0, 0xcf, 0xb4, 0xe9, 0x86, 0x69, 0x19, 0x0a, 0x3c, 0x94, 0xb9, 0x38, 0x72, 0x75, - 0xd4, 0x6f, 0xbd, 0x0f, 0x9f, 0x38, 0xbd, 0xb9, 0x31, 0x7e, 0x9c, 0xe9, 0x60, 0xf5, 0x8e, 0x69, - 0xc9, 0x53, 0x44, 0x50, 0x94, 0x8d, 0xa2, 0x09, 0xdb, 0xc3, 0xa1, 0x3b, 0x18, 0x8e, 0xa2, 0x65, - 0xdb, 0x8b, 0x0f, 0x5b, 0x9f, 0x8c, 0x4c, 0xc2, 0xf0, 0x84, 0xed, 0x95, 0x2d, 0xd7, 0xd3, 0xad, - 0x1a, 0x2d, 0x97, 0x94, 0x21, 0x2c, 0x87, 0x6a, 0xc1, 0xca, 0x99, 0x02, 0x53, 0x8d, 0x4c, 0x4a, - 0xd1, 0x32, 0xea, 0x5f, 0xe6, 0x61, 0x84, 0xf5, 0x89, 0x34, 0x7c, 0x8a, 0x6c, 0x26, 0x60, 0x10, - 0x56, 0x8b, 0xdb, 0xd2, 0x6b, 0x54, 0x8c, 0x24, 0xfc, 0x0a, 0xcb, 0x07, 0x4a, 0x3c, 0xe3, 0xf4, - 0xe4, 0x12, 0xf4, 0x73, 0x50, 0xb9, 0x24, 0x06, 0xd7, 0xf0, 0xe6, 0xc6, 0xf8, 0x80, 0x8b, 0xb0, - 0xaa, 0x69, 0x68, 0x01, 0x9a, 0x69, 0x37, 0xff, 0x7b, 0xc6, 0x76, 0x3d, 0xc6, 0x5c, 0x8c, 0x2d, - 0xfc, 0x0c, 0x51, 0x60, 0x55, 0xa0, 0x64, 0xed, 0x8e, 0x16, 0x22, 0xcf, 0x03, 0x70, 0x48, 0xd1, - 0x30, 0x1c, 0x31, 0xc0, 0x1e, 0xd8, 0xdc, 0x18, 0x3f, 0x29, 0x58, 0xe8, 0x86, 0x21, 0x8f, 0x4e, - 0x89, 0x98, 0x34, 0x61, 0x88, 0xff, 0x9a, 0xd5, 0x97, 0x69, 0x83, 0x8f, 0xae, 0xc1, 0xab, 0x17, - 0xfd, 0x4e, 0x8c, 0x4a, 0xe7, 0xb2, 0x4c, 0x3a, 0x65, 0x79, 0xce, 0xfa, 0xc4, 0xb8, 0x98, 0x90, + // 15998 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x69, 0x70, 0x24, 0xd9, + 0x79, 0x20, 0x86, 0x3a, 0x50, 0x00, 0x3e, 0x1c, 0x0d, 0xbc, 0xbe, 0xb2, 0x7b, 0xba, 0x1b, 0x33, + 0x39, 0x9c, 0x66, 0xf7, 0x70, 0xa6, 0x7b, 0xa6, 0xa7, 0x67, 0x86, 0x73, 0x71, 0xa6, 0x80, 0x02, + 0x1a, 0x35, 0x8d, 0x6b, 0xb2, 0xd0, 0xdd, 0x1c, 0x5e, 0xa5, 0x44, 0xe5, 0x43, 0x21, 0xa7, 0xab, + 0x32, 0x8b, 0x99, 0x59, 0x8d, 0xc6, 0xf8, 0x12, 0x65, 0x89, 0x22, 0x65, 0x92, 0xa2, 0x28, 0x4b, + 0xd4, 0x65, 0x8b, 0x92, 0x2c, 0x5b, 0x92, 0x65, 0xc9, 0xb2, 0x15, 0x92, 0x28, 0x99, 0x61, 0xc9, + 0xf4, 0x31, 0x32, 0x43, 0x0a, 0x49, 0xb6, 0x15, 0x0a, 0x5b, 0x06, 0xb5, 0xdc, 0xd5, 0xfe, 0x40, + 0xec, 0x46, 0x28, 0x76, 0x19, 0x2b, 0xae, 0x56, 0xbb, 0xb1, 0xf1, 0xbe, 0xf7, 0x32, 0xf3, 0xe5, + 0x51, 0x85, 0x73, 0x84, 0x01, 0x1b, 0x7f, 0xba, 0x51, 0xdf, 0xf7, 0xbd, 0xef, 0xbd, 0xfc, 0xde, + 0xf7, 0xee, 0xef, 0x80, 0xcb, 0x1e, 0x6d, 0xd0, 0x96, 0xed, 0x78, 0x57, 0x1b, 0xb4, 0xae, 0xd7, + 0xd6, 0xaf, 0x7a, 0xeb, 0x2d, 0xea, 0x5e, 0xa5, 0xf7, 0xa8, 0xe5, 0xf9, 0xff, 0x5d, 0x69, 0x39, + 0xb6, 0x67, 0x93, 0x02, 0xff, 0x75, 0xf6, 0x44, 0xdd, 0xae, 0xdb, 0x08, 0xba, 0xca, 0xfe, 0xe2, + 0xd8, 0xb3, 0xe7, 0xea, 0xb6, 0x5d, 0x6f, 0xd0, 0xab, 0xf8, 0x6b, 0xb9, 0xbd, 0x72, 0xd5, 0xf5, + 0x9c, 0x76, 0xcd, 0x13, 0xd8, 0xf1, 0x38, 0xd6, 0x33, 0x9b, 0xd4, 0xf5, 0xf4, 0x66, 0x4b, 0x10, + 0x5c, 0x88, 0x13, 0xac, 0x39, 0x7a, 0xab, 0x45, 0x1d, 0x51, 0xf9, 0xd9, 0x47, 0xd2, 0xdb, 0x89, + 0xff, 0x0a, 0x92, 0x27, 0xd3, 0x49, 0x7c, 0x46, 0x31, 0x8e, 0xea, 0x97, 0xb2, 0xd0, 0x3f, 0x47, + 0x3d, 0xdd, 0xd0, 0x3d, 0x9d, 0x9c, 0x83, 0xde, 0xb2, 0x65, 0xd0, 0xfb, 0x4a, 0xe6, 0xe1, 0xcc, + 0xa5, 0xdc, 0x44, 0x61, 0x73, 0x63, 0x3c, 0x4b, 0x4d, 0x8d, 0x03, 0xc9, 0x79, 0xc8, 0x2f, 0xad, + 0xb7, 0xa8, 0x92, 0x7d, 0x38, 0x73, 0x69, 0x60, 0x62, 0x60, 0x73, 0x63, 0xbc, 0x17, 0x65, 0xa1, + 0x21, 0x98, 0x3c, 0x02, 0xd9, 0x72, 0x49, 0xc9, 0x21, 0x72, 0x6c, 0x73, 0x63, 0x7c, 0xb8, 0x6d, + 0x1a, 0x4f, 0xd8, 0x4d, 0xd3, 0xa3, 0xcd, 0x96, 0xb7, 0xae, 0x65, 0xcb, 0x25, 0x72, 0x11, 0xf2, + 0x93, 0xb6, 0x41, 0x95, 0x3c, 0x12, 0x91, 0xcd, 0x8d, 0xf1, 0x91, 0x9a, 0x6d, 0x50, 0x89, 0x0a, + 0xf1, 0xe4, 0x35, 0xc8, 0x2f, 0x99, 0x4d, 0xaa, 0xf4, 0x3e, 0x9c, 0xb9, 0x34, 0x78, 0xed, 0xec, + 0x15, 0x2e, 0x95, 0x2b, 0xbe, 0x54, 0xae, 0x2c, 0xf9, 0x62, 0x9b, 0x18, 0x7d, 0x67, 0x63, 0xbc, + 0x67, 0x73, 0x63, 0x3c, 0xcf, 0x24, 0xf9, 0xc5, 0x6f, 0x8e, 0x67, 0x34, 0x2c, 0x49, 0x5e, 0x86, + 0xc1, 0xc9, 0x46, 0xdb, 0xf5, 0xa8, 0x33, 0xaf, 0x37, 0xa9, 0x52, 0xc0, 0x0a, 0xcf, 0x6e, 0x6e, + 0x8c, 0x9f, 0xaa, 0x71, 0x70, 0xd5, 0xd2, 0x9b, 0x72, 0xc5, 0x32, 0xb9, 0xfa, 0x3b, 0x19, 0x38, + 0x56, 0xa1, 0xae, 0x6b, 0xda, 0x56, 0x20, 0x9b, 0xc7, 0x60, 0x40, 0x80, 0xca, 0x25, 0x94, 0xcf, + 0xc0, 0x44, 0xdf, 0xe6, 0xc6, 0x78, 0xce, 0x35, 0x0d, 0x2d, 0xc4, 0x90, 0xa7, 0xa0, 0xef, 0x8e, + 0xe9, 0xad, 0xce, 0x4d, 0x17, 0x85, 0x9c, 0x4e, 0x6d, 0x6e, 0x8c, 0x93, 0x35, 0xd3, 0x5b, 0xad, + 0x36, 0x57, 0x74, 0xa9, 0x42, 0x9f, 0x8c, 0xcc, 0xc2, 0xe8, 0xa2, 0x63, 0xde, 0xd3, 0x3d, 0x7a, + 0x93, 0xae, 0x2f, 0xda, 0x0d, 0xb3, 0xb6, 0x2e, 0xa4, 0xf8, 0xf0, 0xe6, 0xc6, 0xf8, 0xb9, 0x16, + 0xc7, 0x55, 0xef, 0xd2, 0xf5, 0x6a, 0x0b, 0xb1, 0x12, 0x93, 0x44, 0x49, 0xf5, 0x77, 0x0b, 0x30, + 0x74, 0xcb, 0xa5, 0x4e, 0xd0, 0xee, 0x8b, 0x90, 0x67, 0xbf, 0x45, 0x93, 0x51, 0xe6, 0x6d, 0x97, + 0x3a, 0xb2, 0xcc, 0x19, 0x9e, 0x5c, 0x86, 0xde, 0x59, 0xbb, 0x6e, 0x5a, 0xa2, 0xd9, 0xc7, 0x37, + 0x37, 0xc6, 0x8f, 0x35, 0x18, 0x40, 0xa2, 0xe4, 0x14, 0xe4, 0x43, 0x30, 0x54, 0x6e, 0x32, 0x1d, + 0xb2, 0x2d, 0xdd, 0xb3, 0x1d, 0xd1, 0x5a, 0x94, 0xae, 0x29, 0xc1, 0xa5, 0x82, 0x11, 0x7a, 0xf2, + 0x22, 0x40, 0xf1, 0x4e, 0x45, 0xb3, 0x1b, 0xb4, 0xa8, 0xcd, 0x0b, 0x65, 0xc0, 0xd2, 0xfa, 0x9a, + 0x5b, 0x75, 0xec, 0x06, 0xad, 0xea, 0x8e, 0x5c, 0xad, 0x44, 0x4d, 0xa6, 0x60, 0xa4, 0x58, 0xab, + 0x51, 0xd7, 0xd5, 0xe8, 0x27, 0xdb, 0xd4, 0xf5, 0x5c, 0xa5, 0xf7, 0xe1, 0xdc, 0xa5, 0x81, 0x89, + 0xf3, 0x9b, 0x1b, 0xe3, 0x67, 0x74, 0xc4, 0x54, 0x1d, 0x81, 0x92, 0x58, 0xc4, 0x0a, 0x91, 0x09, + 0x18, 0x2e, 0xbe, 0xdd, 0x76, 0x68, 0xd9, 0xa0, 0x96, 0x67, 0x7a, 0xeb, 0x42, 0x43, 0xce, 0x6d, + 0x6e, 0x8c, 0x2b, 0x3a, 0x43, 0x54, 0x4d, 0x81, 0x91, 0x98, 0x44, 0x8b, 0x90, 0x05, 0x18, 0xbb, + 0x31, 0xb9, 0x58, 0xa1, 0xce, 0x3d, 0xb3, 0x46, 0x8b, 0xb5, 0x9a, 0xdd, 0xb6, 0x3c, 0xa5, 0x0f, + 0xf9, 0x3c, 0xb2, 0xb9, 0x31, 0x7e, 0xbe, 0x5e, 0x6b, 0x55, 0x5d, 0x8e, 0xad, 0xea, 0x1c, 0x2d, + 0x31, 0x4b, 0x96, 0x25, 0x1f, 0x81, 0xe1, 0x25, 0x87, 0x69, 0xa1, 0x51, 0xa2, 0x0c, 0xae, 0xf4, + 0xa3, 0xfe, 0x9f, 0xba, 0x22, 0x26, 0x20, 0x0e, 0xf5, 0x7b, 0x96, 0x37, 0xd6, 0xe3, 0x05, 0xaa, + 0x06, 0xe2, 0xe4, 0xc6, 0x46, 0x58, 0x11, 0x0a, 0x0a, 0xfb, 0x78, 0xd3, 0xa1, 0x46, 0x42, 0xdb, + 0x06, 0xb0, 0xcd, 0x97, 0x37, 0x37, 0xc6, 0x1f, 0x73, 0x04, 0x4d, 0xb5, 0xab, 0xda, 0x75, 0x64, + 0x45, 0xa6, 0xa0, 0x9f, 0x69, 0xd3, 0x4d, 0xd3, 0x32, 0x14, 0x78, 0x38, 0x73, 0x69, 0xe4, 0xda, + 0xa8, 0xdf, 0x7a, 0x1f, 0x3e, 0x71, 0x7a, 0x73, 0x63, 0xfc, 0x38, 0xd3, 0xc1, 0xea, 0x5d, 0xd3, + 0x92, 0xa7, 0x88, 0xa0, 0x28, 0x1b, 0x45, 0x13, 0xb6, 0x87, 0x43, 0x77, 0x30, 0x1c, 0x45, 0xcb, + 0xb6, 0x17, 0x1f, 0xb6, 0x3e, 0x19, 0x99, 0x84, 0xe1, 0x09, 0xdb, 0x2b, 0x5b, 0xae, 0xa7, 0x5b, + 0x35, 0x5a, 0x2e, 0x29, 0x43, 0x58, 0x0e, 0xd5, 0x82, 0x95, 0x33, 0x05, 0xa6, 0x1a, 0x99, 0x94, + 0xa2, 0x65, 0xd4, 0xbf, 0xcd, 0xc3, 0x08, 0xeb, 0x13, 0x69, 0xf8, 0x14, 0xd9, 0x4c, 0xc0, 0x20, + 0xac, 0x16, 0xb7, 0xa5, 0xd7, 0xa8, 0x18, 0x49, 0xf8, 0x15, 0x96, 0x0f, 0x94, 0x78, 0xc6, 0xe9, + 0xc9, 0x65, 0xe8, 0xe7, 0xa0, 0x72, 0x49, 0x0c, 0xae, 0xe1, 0xcd, 0x8d, 0xf1, 0x01, 0x17, 0x61, + 0x55, 0xd3, 0xd0, 0x02, 0x34, 0xd3, 0x6e, 0xfe, 0xf7, 0x8c, 0xed, 0x7a, 0x8c, 0xb9, 0x18, 0x5b, + 0xf8, 0x19, 0xa2, 0xc0, 0xaa, 0x40, 0xc9, 0xda, 0x1d, 0x2d, 0x44, 0x5e, 0x00, 0xe0, 0x90, 0xa2, + 0x61, 0x38, 0x62, 0x80, 0x9d, 0xd9, 0xdc, 0x18, 0x3f, 0x29, 0x58, 0xe8, 0x86, 0x21, 0x8f, 0x4e, + 0x89, 0x98, 0x34, 0x61, 0x88, 0xff, 0x9a, 0xd5, 0x97, 0x69, 0x83, 0x8f, 0xae, 0xc1, 0x6b, 0x97, + 0xfc, 0x4e, 0x8c, 0x4a, 0xe7, 0x8a, 0x4c, 0x3a, 0x65, 0x79, 0xce, 0xfa, 0xc4, 0xb8, 0x98, 0x90, 0x4f, 0x8b, 0xaa, 0x1a, 0x88, 0x93, 0xa7, 0x02, 0xb9, 0x0c, 0x9b, 0xa7, 0xa7, 0x6d, 0x67, 0x4d, 0x77, 0x0c, 0x6a, 0x4c, 0xac, 0xcb, 0xf3, 0xf4, 0x8a, 0x0f, 0xae, 0x2e, 0xcb, 0xaa, 0x27, 0x93, 0xb3, 0x4e, 0xe7, 0xdc, 0x2a, 0xed, 0x65, 0x54, 0xb9, 0xbe, 0x84, 0xb4, 0xdc, 0xf6, 0x72, 0x5c, - 0xcd, 0xa2, 0x65, 0xd8, 0x54, 0xc0, 0x01, 0xb7, 0xa8, 0xc3, 0x26, 0x71, 0x1c, 0x75, 0x62, 0x2a, - 0x10, 0x4c, 0xee, 0x72, 0x4c, 0x92, 0x87, 0x28, 0x72, 0xe6, 0x15, 0x18, 0x4b, 0x88, 0x82, 0x8c, - 0x42, 0xee, 0x0e, 0x5d, 0xe7, 0xea, 0xa2, 0xb1, 0x3f, 0xc9, 0x09, 0xe8, 0xbd, 0xab, 0x37, 0xda, - 0x62, 0x09, 0xd5, 0xf8, 0x8f, 0x17, 0xb2, 0xef, 0xcf, 0xb0, 0x15, 0x87, 0x4c, 0xda, 0x96, 0x45, - 0x6b, 0x9e, 0xbc, 0xe8, 0x3c, 0x0b, 0x03, 0xb3, 0x76, 0x4d, 0x6f, 0x60, 0x3f, 0x72, 0xbd, 0x53, - 0x36, 0x37, 0xc6, 0x4f, 0xb0, 0x0e, 0xbc, 0xdc, 0x60, 0x18, 0xa9, 0x4d, 0x21, 0x29, 0x53, 0x00, + 0xcd, 0xa2, 0x65, 0xd8, 0x54, 0xc0, 0x01, 0xb7, 0xa9, 0xc3, 0x26, 0x71, 0x1c, 0x75, 0x62, 0x2a, + 0x10, 0x4c, 0xee, 0x71, 0x4c, 0x92, 0x87, 0x28, 0x72, 0xf6, 0x55, 0x18, 0x4b, 0x88, 0x82, 0x8c, + 0x42, 0xee, 0x2e, 0x5d, 0xe7, 0xea, 0xa2, 0xb1, 0x3f, 0xc9, 0x09, 0xe8, 0xbd, 0xa7, 0x37, 0xda, + 0x62, 0x09, 0xd5, 0xf8, 0x8f, 0x17, 0xb3, 0x1f, 0xcc, 0xb0, 0x15, 0x87, 0x4c, 0xda, 0x96, 0x45, + 0x6b, 0x9e, 0xbc, 0xe8, 0x3c, 0x07, 0x03, 0xb3, 0x76, 0x4d, 0x6f, 0x60, 0x3f, 0x72, 0xbd, 0x53, + 0x36, 0x37, 0xc6, 0x4f, 0xb0, 0x0e, 0xbc, 0xd2, 0x60, 0x18, 0xa9, 0x4d, 0x21, 0x29, 0x53, 0x00, 0x8d, 0x36, 0x6d, 0x8f, 0x62, 0xc1, 0x6c, 0xa8, 0x00, 0x58, 0xd0, 0x41, 0x94, 0xac, 0x00, 0x21, - 0x31, 0xb9, 0x02, 0xfd, 0x8b, 0x6c, 0x9d, 0xad, 0xd9, 0x0d, 0xa1, 0x7c, 0xb8, 0x14, 0xe0, 0xda, + 0x31, 0xb9, 0x0a, 0xfd, 0x8b, 0x6c, 0x9d, 0xad, 0xd9, 0x0d, 0xa1, 0x7c, 0xb8, 0x14, 0xe0, 0xda, 0x2b, 0x8f, 0x55, 0x9f, 0x48, 0x9d, 0x81, 0x91, 0xc9, 0x86, 0x49, 0x2d, 0x4f, 0x6e, 0x35, 0x1b, 0xc9, 0xc5, 0x3a, 0xb5, 0x3c, 0xb9, 0xd5, 0x38, 0xe6, 0x75, 0x06, 0x95, 0x5b, 0x1d, 0x90, 0xaa, - 0xbf, 0x9f, 0x83, 0x07, 0x6e, 0xb4, 0x97, 0xa9, 0x63, 0x51, 0x8f, 0xba, 0x62, 0x41, 0x0e, 0xb8, - 0xce, 0xc3, 0x58, 0x02, 0x29, 0xb8, 0xe3, 0x42, 0x79, 0x27, 0x40, 0x56, 0xc5, 0x1a, 0x2f, 0xcf, - 0xb6, 0x89, 0xa2, 0x64, 0x06, 0x8e, 0x85, 0x40, 0xd6, 0x08, 0x57, 0xc9, 0xe2, 0x52, 0x72, 0x7e, - 0x73, 0x63, 0xfc, 0x8c, 0xc4, 0x8d, 0x35, 0x5b, 0xd6, 0xe0, 0x78, 0x31, 0x72, 0x03, 0x46, 0x43, - 0xd0, 0x75, 0xc7, 0x6e, 0xb7, 0x5c, 0x25, 0x87, 0xac, 0xc6, 0x37, 0x37, 0xc6, 0x1f, 0x94, 0x58, - 0xd5, 0x11, 0x29, 0x2f, 0xe0, 0xf1, 0x82, 0xe4, 0xbb, 0x33, 0x32, 0x37, 0x31, 0x0a, 0xf3, 0x38, - 0x0a, 0x9f, 0xf3, 0x47, 0x61, 0x47, 0x21, 0x5d, 0x8e, 0x97, 0x14, 0x83, 0x32, 0xd6, 0x8c, 0xc4, - 0xa0, 0x4c, 0xd4, 0x78, 0x66, 0x12, 0x4e, 0xa6, 0xf2, 0xda, 0x91, 0x56, 0xff, 0x79, 0x4e, 0xe6, - 0xb2, 0x68, 0x1b, 0x41, 0x67, 0x2e, 0xc8, 0x9d, 0xb9, 0x68, 0x1b, 0x38, 0xd5, 0x67, 0xc2, 0xb5, - 0x53, 0x6a, 0x6c, 0xcb, 0x36, 0xe2, 0xb3, 0x7e, 0xb2, 0x2c, 0xf9, 0x18, 0x9c, 0x4a, 0x00, 0xf9, - 0x74, 0xcd, 0xb5, 0xff, 0xc2, 0xe6, 0xc6, 0xb8, 0x9a, 0xc2, 0x35, 0x3e, 0x7b, 0x77, 0xe0, 0x42, - 0x74, 0x38, 0x2d, 0x49, 0xdd, 0xb6, 0x3c, 0xdd, 0xb4, 0xc4, 0xe6, 0x92, 0x8f, 0x92, 0xf7, 0x6e, - 0x6e, 0x8c, 0x3f, 0x22, 0xeb, 0xa0, 0x4f, 0x13, 0x6f, 0x7c, 0x27, 0x3e, 0xc4, 0x00, 0x25, 0x05, - 0x55, 0x6e, 0xea, 0x75, 0x7f, 0xc7, 0x7c, 0x71, 0x73, 0x63, 0xfc, 0x3d, 0xa9, 0x75, 0x98, 0x8c, - 0x4a, 0x5e, 0xa1, 0x3b, 0x71, 0x22, 0x1a, 0x90, 0x10, 0x37, 0x6f, 0x1b, 0x14, 0xbf, 0xa1, 0x17, - 0xf9, 0xab, 0x9b, 0x1b, 0xe3, 0xe7, 0x25, 0xfe, 0x96, 0x6d, 0xd0, 0x78, 0xf3, 0x53, 0x4a, 0xab, - 0xbf, 0x91, 0x83, 0xf3, 0x95, 0xe2, 0xdc, 0x6c, 0xd9, 0xf0, 0xb7, 0x34, 0x8b, 0x8e, 0x7d, 0xd7, - 0x34, 0xa4, 0xd1, 0xbb, 0x0c, 0xa7, 0x63, 0xa8, 0x29, 0xdc, 0x45, 0x05, 0x9b, 0x69, 0xfc, 0x36, - 0x7f, 0xbb, 0xd4, 0x12, 0x34, 0x55, 0xbe, 0xd5, 0x8a, 0x2e, 0xda, 0x9d, 0x18, 0xb1, 0x3e, 0x8a, - 0xa1, 0x2a, 0xab, 0xb6, 0xe3, 0xd5, 0xda, 0x9e, 0x50, 0x02, 0xec, 0xa3, 0x44, 0x1d, 0xae, 0x20, - 0xea, 0x52, 0x85, 0xcf, 0x87, 0x7c, 0x3a, 0x03, 0xa3, 0x45, 0xcf, 0x73, 0xcc, 0xe5, 0xb6, 0x47, - 0xe7, 0xf4, 0x56, 0xcb, 0xb4, 0xea, 0x38, 0xd6, 0x07, 0xaf, 0xbe, 0x14, 0xac, 0x91, 0x5d, 0x25, - 0x71, 0x39, 0x5e, 0x5c, 0x1a, 0xa2, 0xba, 0x8f, 0xaa, 0x36, 0x39, 0x4e, 0x1e, 0xa2, 0xf1, 0x72, - 0x6c, 0x88, 0xa6, 0xf2, 0xda, 0xd1, 0x10, 0xfd, 0x42, 0x0e, 0xce, 0x2e, 0xdc, 0xf1, 0x74, 0x8d, - 0xba, 0x76, 0xdb, 0xa9, 0x51, 0xf7, 0x66, 0xcb, 0xd0, 0x3d, 0x1a, 0x8e, 0xd4, 0x71, 0xe8, 0x2d, - 0x1a, 0x06, 0x35, 0x90, 0x5d, 0x2f, 0x3f, 0xf6, 0xe9, 0x0c, 0xa0, 0x71, 0x38, 0x79, 0x14, 0xfa, - 0x44, 0x19, 0xe4, 0xde, 0x3b, 0x31, 0xb8, 0xb9, 0x31, 0xde, 0xd7, 0xe6, 0x20, 0xcd, 0xc7, 0x31, - 0xb2, 0x12, 0x6d, 0x50, 0x46, 0x96, 0x0b, 0xc9, 0x0c, 0x0e, 0xd2, 0x7c, 0x1c, 0x79, 0x1d, 0x46, - 0x90, 0x6d, 0xd0, 0x1e, 0x31, 0xf7, 0x9d, 0xf0, 0xa5, 0x2b, 0x37, 0x96, 0x2f, 0x4d, 0xd8, 0x9a, - 0xaa, 0xe3, 0x17, 0xd0, 0x62, 0x0c, 0xc8, 0x6d, 0x18, 0x15, 0x8d, 0x08, 0x99, 0xf6, 0x76, 0x61, - 0x7a, 0x72, 0x73, 0x63, 0x7c, 0x4c, 0xb4, 0x5f, 0x62, 0x9b, 0x60, 0xc2, 0x18, 0x8b, 0x66, 0x87, - 0x8c, 0x0b, 0x5b, 0x31, 0x16, 0x5f, 0x2c, 0x33, 0x8e, 0x33, 0x51, 0xdf, 0x80, 0x21, 0xb9, 0x20, - 0x39, 0x85, 0x47, 0x6b, 0x3e, 0x4e, 0xf0, 0x50, 0x6e, 0x1a, 0x78, 0x9e, 0x7e, 0x0a, 0x06, 0x4b, - 0xd4, 0xad, 0x39, 0x66, 0x8b, 0xed, 0x1a, 0x84, 0x92, 0x1f, 0xdb, 0xdc, 0x18, 0x1f, 0x34, 0x42, - 0xb0, 0x26, 0xd3, 0xa8, 0xff, 0x31, 0x03, 0xa7, 0x18, 0xef, 0xa2, 0xeb, 0x9a, 0x75, 0xab, 0x29, - 0x2f, 0xdb, 0x8f, 0x43, 0xa1, 0x82, 0xf5, 0x89, 0x9a, 0x4e, 0x6c, 0x6e, 0x8c, 0x8f, 0xf2, 0x16, - 0x48, 0x7a, 0x28, 0x68, 0x82, 0x73, 0x65, 0x76, 0x8b, 0x73, 0x25, 0xdb, 0xd2, 0x7a, 0xba, 0xe3, - 0x99, 0x56, 0xbd, 0xe2, 0xe9, 0x5e, 0xdb, 0x8d, 0x6c, 0x69, 0x05, 0xa6, 0xea, 0x22, 0x2a, 0xb2, - 0xa5, 0x8d, 0x14, 0x22, 0xaf, 0xc0, 0xd0, 0x94, 0x65, 0x84, 0x4c, 0xf8, 0x84, 0xf8, 0x20, 0xdb, - 0x69, 0x52, 0x84, 0x27, 0x59, 0x44, 0x0a, 0xa8, 0xff, 0x4f, 0x06, 0x14, 0x7e, 0x08, 0x9c, 0x35, - 0x5d, 0x6f, 0x8e, 0x36, 0x97, 0xa5, 0xd9, 0x69, 0xda, 0x3f, 0x55, 0x32, 0x9c, 0xb4, 0x16, 0xe1, - 0x56, 0x40, 0x9c, 0x2a, 0x1b, 0xa6, 0x9b, 0x38, 0x7e, 0xc4, 0x4a, 0x91, 0x32, 0xf4, 0x71, 0xce, - 0x7c, 0x2f, 0x31, 0x78, 0x55, 0xf1, 0x15, 0x21, 0x5e, 0x35, 0x57, 0x86, 0x26, 0x27, 0x96, 0x0f, - 0x34, 0xa2, 0xbc, 0xfa, 0xff, 0x66, 0x61, 0x34, 0x5e, 0x88, 0xdc, 0x86, 0xfe, 0xd7, 0x6c, 0xd3, - 0xa2, 0xc6, 0x82, 0x85, 0x2d, 0xec, 0x7e, 0x39, 0xe2, 0xef, 0xc5, 0x8f, 0xbf, 0x89, 0x65, 0xaa, - 0xf2, 0x0e, 0x16, 0xef, 0x4a, 0x02, 0x66, 0xe4, 0x43, 0x30, 0xc0, 0xf6, 0x80, 0x77, 0x91, 0x73, - 0x76, 0x4b, 0xce, 0x0f, 0x09, 0xce, 0x27, 0x1c, 0x5e, 0x28, 0xc9, 0x3a, 0x64, 0xc7, 0xf4, 0x4a, - 0xa3, 0xba, 0x6b, 0x5b, 0xa2, 0xe7, 0x51, 0xaf, 0x1c, 0x84, 0xc8, 0x7a, 0xc5, 0x69, 0xd8, 0xd6, - 0x95, 0x7f, 0x2c, 0x76, 0x83, 0x74, 0x76, 0xe1, 0xb2, 0x8a, 0xf7, 0x80, 0x44, 0xac, 0x7e, 0x32, - 0x0b, 0x4f, 0x84, 0x22, 0xd3, 0xe8, 0x5d, 0x93, 0xae, 0x09, 0x71, 0xae, 0x9a, 0x2d, 0x71, 0x66, - 0x65, 0x2a, 0xef, 0x4e, 0xae, 0xea, 0x56, 0x9d, 0x1a, 0xe4, 0x12, 0xf4, 0x6a, 0x76, 0x83, 0xba, - 0x4a, 0x06, 0xb7, 0x6b, 0x38, 0x9d, 0x38, 0x0c, 0x20, 0x5f, 0x7a, 0x20, 0x05, 0xb1, 0xa1, 0xb0, - 0xe4, 0xe8, 0xa6, 0xe7, 0xf7, 0x6c, 0x31, 0xd9, 0xb3, 0xdb, 0xa8, 0xf1, 0x32, 0xe7, 0xc1, 0xe7, - 0x7c, 0x14, 0x84, 0x87, 0x00, 0x59, 0x10, 0x9c, 0xe4, 0xcc, 0xf3, 0x30, 0x28, 0x11, 0xef, 0x68, - 0x52, 0xff, 0x72, 0x5e, 0xd6, 0x75, 0xbf, 0x59, 0x42, 0xd7, 0xaf, 0x30, 0x1d, 0x75, 0x5d, 0xb6, - 0xab, 0xe0, 0x4a, 0x2e, 0x34, 0x11, 0x41, 0x51, 0x4d, 0x44, 0x10, 0x79, 0x1a, 0xfa, 0x39, 0x8b, - 0xe0, 0xfc, 0x8a, 0x67, 0x5f, 0x07, 0x61, 0xd1, 0xa5, 0x39, 0x20, 0x24, 0xbf, 0x90, 0x81, 0x73, - 0x5d, 0x25, 0x81, 0xca, 0x30, 0x78, 0xf5, 0x99, 0x5d, 0x89, 0x71, 0xe2, 0x89, 0xcd, 0x8d, 0xf1, - 0x4b, 0xcd, 0x80, 0xa4, 0xea, 0x48, 0x34, 0xd5, 0x1a, 0x27, 0x92, 0xda, 0xd5, 0xbd, 0x29, 0x6c, - 0xf3, 0xc8, 0x2b, 0x9d, 0xc6, 0xab, 0x23, 0xab, 0xb6, 0xee, 0x37, 0x32, 0x1f, 0x6e, 0x1e, 0xc5, - 0xf7, 0xae, 0xf8, 0x24, 0x29, 0xd5, 0x74, 0xe0, 0x42, 0x6a, 0x70, 0x9a, 0x63, 0x4a, 0xfa, 0xfa, - 0xc2, 0xca, 0x9c, 0x6d, 0x79, 0xab, 0x7e, 0x05, 0xbd, 0xf2, 0xdd, 0x0b, 0x56, 0x60, 0xe8, 0xeb, - 0x55, 0x7b, 0xa5, 0xda, 0x64, 0x54, 0x29, 0x75, 0x74, 0xe2, 0xc4, 0x26, 0x5a, 0x31, 0xe6, 0xfc, - 0x29, 0xa8, 0x10, 0xde, 0x8c, 0xf9, 0xe3, 0x34, 0x39, 0xe1, 0xc4, 0x0a, 0xa9, 0x65, 0x18, 0x9a, - 0xb5, 0x6b, 0x77, 0x02, 0x75, 0x79, 0x1e, 0x0a, 0x4b, 0xba, 0x53, 0xa7, 0x1e, 0xca, 0x62, 0xf0, - 0xea, 0xd8, 0x65, 0x7e, 0xdb, 0xcc, 0x88, 0x38, 0x62, 0x62, 0x44, 0xcc, 0x06, 0x05, 0x0f, 0x7f, - 0x6b, 0xa2, 0x80, 0xfa, 0xf5, 0x5e, 0x18, 0x12, 0x37, 0xa3, 0x38, 0x9b, 0x93, 0x17, 0xc2, 0xbb, - 0x66, 0x31, 0x7d, 0x05, 0xb7, 0x43, 0xc1, 0xad, 0xd6, 0x10, 0x63, 0xf6, 0x07, 0x1b, 0xe3, 0x99, - 0xcd, 0x8d, 0xf1, 0x1e, 0xad, 0x5f, 0x3a, 0x54, 0x86, 0xeb, 0x8d, 0xb4, 0xc0, 0xca, 0x77, 0x9d, - 0xb1, 0xb2, 0x7c, 0xfd, 0x79, 0x05, 0xfa, 0x44, 0x1b, 0x84, 0xc6, 0x9d, 0x0e, 0xef, 0x32, 0x22, - 0x37, 0xbc, 0xb1, 0xd2, 0x7e, 0x29, 0xf2, 0x12, 0x14, 0xf8, 0xd9, 0x5e, 0x08, 0xe0, 0x54, 0xfa, - 0x5d, 0x48, 0xac, 0xb8, 0x28, 0x43, 0x66, 0x00, 0xc2, 0x73, 0x7d, 0x70, 0xa1, 0x2d, 0x38, 0x24, - 0x4f, 0xfc, 0x31, 0x2e, 0x52, 0x59, 0xf2, 0x2c, 0x0c, 0x2d, 0x51, 0xa7, 0x69, 0x5a, 0x7a, 0xa3, - 0x62, 0xbe, 0xe5, 0xdf, 0x69, 0xe3, 0xc2, 0xeb, 0x9a, 0x6f, 0xc9, 0x23, 0x37, 0x42, 0x47, 0x3e, - 0x9a, 0x76, 0x6e, 0xee, 0xc3, 0x86, 0x3c, 0xbc, 0xe5, 0x81, 0x32, 0xd6, 0x9e, 0x94, 0x63, 0xf4, - 0xeb, 0x30, 0x1c, 0x39, 0x32, 0x89, 0x4b, 0xcb, 0x73, 0x49, 0xd6, 0xd2, 0xf9, 0x2f, 0xc6, 0x36, - 0xca, 0x81, 0x69, 0x72, 0xd9, 0x32, 0x3d, 0x53, 0x6f, 0x4c, 0xda, 0xcd, 0xa6, 0x6e, 0x19, 0xca, - 0x40, 0xa8, 0xc9, 0x26, 0xc7, 0x54, 0x6b, 0x1c, 0x25, 0x6b, 0x72, 0xb4, 0x10, 0x3b, 0x96, 0x8b, - 0x3e, 0xd4, 0x68, 0xcd, 0x76, 0xd8, 0x5e, 0x00, 0xef, 0x24, 0xc5, 0xb1, 0xdc, 0xe5, 0xb8, 0xaa, - 0xe3, 0x23, 0xe5, 0xcd, 0x76, 0xbc, 0xe0, 0x6b, 0xf9, 0xfe, 0xc1, 0xd1, 0xa1, 0xf8, 0x35, 0xb2, - 0xfa, 0xf3, 0x39, 0x18, 0x14, 0xa4, 0x6c, 0x29, 0x3d, 0x52, 0xf0, 0xbd, 0x28, 0x78, 0xaa, 0xa2, - 0x16, 0xf6, 0x4b, 0x51, 0xd5, 0xcf, 0x64, 0x83, 0xd9, 0x68, 0xd1, 0x31, 0xad, 0xbd, 0xcd, 0x46, - 0x17, 0x00, 0x26, 0x57, 0xdb, 0xd6, 0x1d, 0xfe, 0x5c, 0x96, 0x0d, 0x9f, 0xcb, 0x6a, 0xa6, 0x26, - 0x61, 0xc8, 0x39, 0xc8, 0x97, 0x18, 0x7f, 0xd6, 0x33, 0x43, 0x13, 0x03, 0x6f, 0x73, 0x4e, 0x99, - 0x27, 0x34, 0x04, 0xb3, 0xc3, 0xd5, 0xc4, 0xba, 0x47, 0xf9, 0x76, 0x36, 0xc7, 0x0f, 0x57, 0xcb, - 0x0c, 0xa0, 0x71, 0x38, 0xb9, 0x06, 0x63, 0x25, 0xda, 0xd0, 0xd7, 0xe7, 0xcc, 0x46, 0xc3, 0x74, - 0x69, 0xcd, 0xb6, 0x0c, 0x17, 0x85, 0x2c, 0xaa, 0x6b, 0xba, 0x5a, 0x92, 0x80, 0xa8, 0x50, 0x58, - 0x58, 0x59, 0x71, 0xa9, 0x87, 0xe2, 0xcb, 0x4d, 0x00, 0x9b, 0x9c, 0x6d, 0x84, 0x68, 0x02, 0xa3, - 0xfe, 0x72, 0x86, 0x9d, 0x5e, 0xdc, 0x3b, 0x9e, 0xdd, 0x0a, 0xb4, 0x7c, 0x4f, 0x22, 0xb9, 0x14, - 0xee, 0x2b, 0xb2, 0xf8, 0xb5, 0xc7, 0xc4, 0xd7, 0xf6, 0x89, 0xbd, 0x45, 0xb8, 0xa3, 0x48, 0xfd, - 0xaa, 0xdc, 0x16, 0x5f, 0xa5, 0xfe, 0x45, 0x16, 0x4e, 0x8b, 0x16, 0x4f, 0x36, 0xcc, 0xd6, 0xb2, - 0xad, 0x3b, 0x86, 0x46, 0x6b, 0xd4, 0xbc, 0x4b, 0x0f, 0xe7, 0xc0, 0x8b, 0x0e, 0x9d, 0xfc, 0x1e, - 0x86, 0xce, 0x55, 0x3c, 0x08, 0x32, 0xc9, 0xe0, 0x85, 0x2f, 0xdf, 0x54, 0x8c, 0x6e, 0x6e, 0x8c, - 0x0f, 0x19, 0x1c, 0x8c, 0x57, 0xfe, 0x9a, 0x4c, 0xc4, 0x94, 0x64, 0x96, 0x5a, 0x75, 0x6f, 0x15, - 0x95, 0xa4, 0x97, 0x2b, 0x49, 0x03, 0x21, 0x9a, 0xc0, 0xa8, 0xff, 0x36, 0x0b, 0x27, 0xe2, 0x22, - 0xaf, 0x50, 0xcb, 0x38, 0x92, 0xf7, 0x3b, 0x23, 0xef, 0x6f, 0xe6, 0xe0, 0x41, 0x51, 0xa6, 0xb2, - 0xaa, 0x3b, 0xd4, 0x28, 0x99, 0x0e, 0xad, 0x79, 0xb6, 0xb3, 0x7e, 0x88, 0x37, 0x50, 0xfb, 0x27, - 0xf6, 0x6b, 0x50, 0x10, 0xc7, 0x7f, 0xbe, 0xce, 0x8c, 0x04, 0x2d, 0x41, 0x68, 0x62, 0x85, 0xe2, - 0x57, 0x07, 0xb1, 0xce, 0x2a, 0x6c, 0xa7, 0xb3, 0xde, 0x0f, 0xc3, 0x81, 0xe8, 0xf1, 0x20, 0xda, - 0x17, 0xee, 0xb6, 0x0c, 0x1f, 0x81, 0x67, 0x51, 0x2d, 0x4a, 0x88, 0xb5, 0xf9, 0x80, 0x72, 0x09, - 0x77, 0x43, 0xc3, 0xa2, 0xb6, 0xa0, 0x9c, 0x69, 0x68, 0x32, 0x91, 0xba, 0x91, 0x87, 0x33, 0xe9, - 0xdd, 0xae, 0x51, 0xdd, 0x38, 0xea, 0xf5, 0x6f, 0xcb, 0x5e, 0x27, 0x0f, 0x43, 0x7e, 0x51, 0xf7, - 0x56, 0xc5, 0xf3, 0x3b, 0xbe, 0x09, 0xaf, 0x98, 0x0d, 0x5a, 0x6d, 0xe9, 0xde, 0xaa, 0x86, 0x28, - 0x69, 0xce, 0x00, 0xe4, 0x98, 0x32, 0x67, 0x48, 0x8b, 0xfd, 0xe0, 0x43, 0x99, 0x8b, 0xf9, 0xd4, - 0xc5, 0xfe, 0xeb, 0xf9, 0x4e, 0xf3, 0xca, 0x6d, 0xc7, 0xf4, 0xe8, 0x91, 0x86, 0x1d, 0x69, 0xd8, - 0x1e, 0x35, 0xec, 0x8f, 0xb2, 0x30, 0x1c, 0x1c, 0x9a, 0xde, 0xa4, 0xb5, 0x83, 0x59, 0xab, 0xc2, - 0xa3, 0x4c, 0x6e, 0xcf, 0x47, 0x99, 0xbd, 0x28, 0x94, 0x1a, 0x5c, 0x79, 0xf2, 0xad, 0x01, 0x4a, - 0x8c, 0x5f, 0x79, 0x06, 0x17, 0x9d, 0x0f, 0x43, 0xdf, 0x9c, 0x7e, 0xcf, 0x6c, 0xb6, 0x9b, 0x62, - 0x97, 0x8e, 0xe6, 0x64, 0x4d, 0xfd, 0x9e, 0xe6, 0xc3, 0xd5, 0x7f, 0x9c, 0x81, 0x11, 0x21, 0x54, - 0xc1, 0x7c, 0x4f, 0x52, 0x0d, 0xa5, 0x93, 0xdd, 0xb3, 0x74, 0x72, 0xbb, 0x97, 0x8e, 0xfa, 0x13, + 0x7f, 0x9c, 0x83, 0x33, 0x37, 0xdb, 0xcb, 0xd4, 0xb1, 0xa8, 0x47, 0x5d, 0xb1, 0x20, 0x07, 0x5c, + 0xe7, 0x61, 0x2c, 0x81, 0x14, 0xdc, 0x71, 0xa1, 0xbc, 0x1b, 0x20, 0xab, 0x62, 0x8d, 0x97, 0x67, + 0xdb, 0x44, 0x51, 0x32, 0x03, 0xc7, 0x42, 0x20, 0x6b, 0x84, 0xab, 0x64, 0x71, 0x29, 0xb9, 0xb0, + 0xb9, 0x31, 0x7e, 0x56, 0xe2, 0xc6, 0x9a, 0x2d, 0x6b, 0x70, 0xbc, 0x18, 0xb9, 0x09, 0xa3, 0x21, + 0xe8, 0x86, 0x63, 0xb7, 0x5b, 0xae, 0x92, 0x43, 0x56, 0xe3, 0x9b, 0x1b, 0xe3, 0x0f, 0x49, 0xac, + 0xea, 0x88, 0x94, 0x17, 0xf0, 0x78, 0x41, 0xf2, 0xfd, 0x19, 0x99, 0x9b, 0x18, 0x85, 0x79, 0x1c, + 0x85, 0xcf, 0xfb, 0xa3, 0xb0, 0xa3, 0x90, 0xae, 0xc4, 0x4b, 0x8a, 0x41, 0x19, 0x6b, 0x46, 0x62, + 0x50, 0x26, 0x6a, 0x3c, 0x3b, 0x09, 0x27, 0x53, 0x79, 0xed, 0x48, 0xab, 0xff, 0x3a, 0x27, 0x73, + 0x59, 0xb4, 0x8d, 0xa0, 0x33, 0x17, 0xe4, 0xce, 0x5c, 0xb4, 0x0d, 0x9c, 0xea, 0x33, 0xe1, 0xda, + 0x29, 0x35, 0xb6, 0x65, 0x1b, 0xf1, 0x59, 0x3f, 0x59, 0x96, 0x7c, 0x02, 0x4e, 0x25, 0x80, 0x7c, + 0xba, 0xe6, 0xda, 0x7f, 0x71, 0x73, 0x63, 0x5c, 0x4d, 0xe1, 0x1a, 0x9f, 0xbd, 0x3b, 0x70, 0x21, + 0x3a, 0x9c, 0x96, 0xa4, 0x6e, 0x5b, 0x9e, 0x6e, 0x5a, 0x62, 0x73, 0xc9, 0x47, 0xc9, 0xfb, 0x37, + 0x37, 0xc6, 0x1f, 0x95, 0x75, 0xd0, 0xa7, 0x89, 0x37, 0xbe, 0x13, 0x1f, 0x62, 0x80, 0x92, 0x82, + 0x2a, 0x37, 0xf5, 0xba, 0xbf, 0x63, 0xbe, 0xb4, 0xb9, 0x31, 0xfe, 0xbe, 0xd4, 0x3a, 0x4c, 0x46, + 0x25, 0xaf, 0xd0, 0x9d, 0x38, 0x11, 0x0d, 0x48, 0x88, 0x9b, 0xb7, 0x0d, 0x8a, 0xdf, 0xd0, 0x8b, + 0xfc, 0xd5, 0xcd, 0x8d, 0xf1, 0x0b, 0x12, 0x7f, 0xcb, 0x36, 0x68, 0xbc, 0xf9, 0x29, 0xa5, 0xd5, + 0xdf, 0xc9, 0xc1, 0x85, 0x4a, 0x71, 0x6e, 0xb6, 0x6c, 0xf8, 0x5b, 0x9a, 0x45, 0xc7, 0xbe, 0x67, + 0x1a, 0xd2, 0xe8, 0x5d, 0x86, 0xd3, 0x31, 0xd4, 0x14, 0xee, 0xa2, 0x82, 0xcd, 0x34, 0x7e, 0x9b, + 0xbf, 0x5d, 0x6a, 0x09, 0x9a, 0x2a, 0xdf, 0x6a, 0x45, 0x17, 0xed, 0x4e, 0x8c, 0x58, 0x1f, 0xc5, + 0x50, 0x95, 0x55, 0xdb, 0xf1, 0x6a, 0x6d, 0x4f, 0x28, 0x01, 0xf6, 0x51, 0xa2, 0x0e, 0x57, 0x10, + 0x75, 0xa9, 0xc2, 0xe7, 0x43, 0x3e, 0x9b, 0x81, 0xd1, 0xa2, 0xe7, 0x39, 0xe6, 0x72, 0xdb, 0xa3, + 0x73, 0x7a, 0xab, 0x65, 0x5a, 0x75, 0x1c, 0xeb, 0x83, 0xd7, 0x5e, 0x0e, 0xd6, 0xc8, 0xae, 0x92, + 0xb8, 0x12, 0x2f, 0x2e, 0x0d, 0x51, 0xdd, 0x47, 0x55, 0x9b, 0x1c, 0x27, 0x0f, 0xd1, 0x78, 0x39, + 0x36, 0x44, 0x53, 0x79, 0xed, 0x68, 0x88, 0x7e, 0x29, 0x07, 0xe7, 0x16, 0xee, 0x7a, 0xba, 0x46, + 0x5d, 0xbb, 0xed, 0xd4, 0xa8, 0x7b, 0xab, 0x65, 0xe8, 0x1e, 0x0d, 0x47, 0xea, 0x38, 0xf4, 0x16, + 0x0d, 0x83, 0x1a, 0xc8, 0xae, 0x97, 0x1f, 0xfb, 0x74, 0x06, 0xd0, 0x38, 0x9c, 0x3c, 0x06, 0x7d, + 0xa2, 0x0c, 0x72, 0xef, 0x9d, 0x18, 0xdc, 0xdc, 0x18, 0xef, 0x6b, 0x73, 0x90, 0xe6, 0xe3, 0x18, + 0x59, 0x89, 0x36, 0x28, 0x23, 0xcb, 0x85, 0x64, 0x06, 0x07, 0x69, 0x3e, 0x8e, 0xbc, 0x01, 0x23, + 0xc8, 0x36, 0x68, 0x8f, 0x98, 0xfb, 0x4e, 0xf8, 0xd2, 0x95, 0x1b, 0xcb, 0x97, 0x26, 0x6c, 0x4d, + 0xd5, 0xf1, 0x0b, 0x68, 0x31, 0x06, 0xe4, 0x0e, 0x8c, 0x8a, 0x46, 0x84, 0x4c, 0x7b, 0xbb, 0x30, + 0x3d, 0xb9, 0xb9, 0x31, 0x3e, 0x26, 0xda, 0x2f, 0xb1, 0x4d, 0x30, 0x61, 0x8c, 0x45, 0xb3, 0x43, + 0xc6, 0x85, 0xad, 0x18, 0x8b, 0x2f, 0x96, 0x19, 0xc7, 0x99, 0xa8, 0x6f, 0xc2, 0x90, 0x5c, 0x90, + 0x9c, 0xc2, 0xa3, 0x35, 0x1f, 0x27, 0x78, 0x28, 0x37, 0x0d, 0x3c, 0x4f, 0x3f, 0x0d, 0x83, 0x25, + 0xea, 0xd6, 0x1c, 0xb3, 0xc5, 0x76, 0x0d, 0x42, 0xc9, 0x8f, 0x6d, 0x6e, 0x8c, 0x0f, 0x1a, 0x21, + 0x58, 0x93, 0x69, 0xd4, 0x7f, 0x95, 0x81, 0x53, 0x8c, 0x77, 0xd1, 0x75, 0xcd, 0xba, 0xd5, 0x94, + 0x97, 0xed, 0x27, 0xa0, 0x50, 0xc1, 0xfa, 0x44, 0x4d, 0x27, 0x36, 0x37, 0xc6, 0x47, 0x79, 0x0b, + 0x24, 0x3d, 0x14, 0x34, 0xc1, 0xb9, 0x32, 0xbb, 0xc5, 0xb9, 0x92, 0x6d, 0x69, 0x3d, 0xdd, 0xf1, + 0x4c, 0xab, 0x5e, 0xf1, 0x74, 0xaf, 0xed, 0x46, 0xb6, 0xb4, 0x02, 0x53, 0x75, 0x11, 0x15, 0xd9, + 0xd2, 0x46, 0x0a, 0x91, 0x57, 0x61, 0x68, 0xca, 0x32, 0x42, 0x26, 0x7c, 0x42, 0x7c, 0x88, 0xed, + 0x34, 0x29, 0xc2, 0x93, 0x2c, 0x22, 0x05, 0xd4, 0xff, 0x2e, 0x03, 0x0a, 0x3f, 0x04, 0xce, 0x9a, + 0xae, 0x37, 0x47, 0x9b, 0xcb, 0xd2, 0xec, 0x34, 0xed, 0x9f, 0x2a, 0x19, 0x4e, 0x5a, 0x8b, 0x70, + 0x2b, 0x20, 0x4e, 0x95, 0x0d, 0xd3, 0x4d, 0x1c, 0x3f, 0x62, 0xa5, 0x48, 0x19, 0xfa, 0x38, 0x67, + 0xbe, 0x97, 0x18, 0xbc, 0xa6, 0xf8, 0x8a, 0x10, 0xaf, 0x9a, 0x2b, 0x43, 0x93, 0x13, 0xcb, 0x07, + 0x1a, 0x51, 0x5e, 0xfd, 0xef, 0xb3, 0x30, 0x1a, 0x2f, 0x44, 0xee, 0x40, 0xff, 0xeb, 0xb6, 0x69, + 0x51, 0x63, 0xc1, 0xc2, 0x16, 0x76, 0xbf, 0x1c, 0xf1, 0xf7, 0xe2, 0xc7, 0xdf, 0xc2, 0x32, 0x55, + 0x79, 0x07, 0x8b, 0x77, 0x25, 0x01, 0x33, 0xf2, 0x11, 0x18, 0x60, 0x7b, 0xc0, 0x7b, 0xc8, 0x39, + 0xbb, 0x25, 0xe7, 0x87, 0x05, 0xe7, 0x13, 0x0e, 0x2f, 0x94, 0x64, 0x1d, 0xb2, 0x63, 0x7a, 0xa5, + 0x51, 0xdd, 0xb5, 0x2d, 0xd1, 0xf3, 0xa8, 0x57, 0x0e, 0x42, 0x64, 0xbd, 0xe2, 0x34, 0x6c, 0xeb, + 0xca, 0x3f, 0x16, 0xbb, 0x41, 0x3a, 0xbb, 0x70, 0x59, 0xc5, 0x7b, 0x40, 0x22, 0x56, 0x3f, 0x9d, + 0x85, 0x27, 0x43, 0x91, 0x69, 0xf4, 0x9e, 0x49, 0xd7, 0x84, 0x38, 0x57, 0xcd, 0x96, 0x38, 0xb3, + 0x32, 0x95, 0x77, 0x27, 0x57, 0x75, 0xab, 0x4e, 0x0d, 0x72, 0x19, 0x7a, 0x35, 0xbb, 0x41, 0x5d, + 0x25, 0x83, 0xdb, 0x35, 0x9c, 0x4e, 0x1c, 0x06, 0x90, 0x2f, 0x3d, 0x90, 0x82, 0xd8, 0x50, 0x58, + 0x72, 0x74, 0xd3, 0xf3, 0x7b, 0xb6, 0x98, 0xec, 0xd9, 0x6d, 0xd4, 0x78, 0x85, 0xf3, 0xe0, 0x73, + 0x3e, 0x0a, 0xc2, 0x43, 0x80, 0x2c, 0x08, 0x4e, 0x72, 0xf6, 0x05, 0x18, 0x94, 0x88, 0x77, 0x34, + 0xa9, 0x7f, 0x35, 0x2f, 0xeb, 0xba, 0xdf, 0x2c, 0xa1, 0xeb, 0x57, 0x99, 0x8e, 0xba, 0x2e, 0xdb, + 0x55, 0x70, 0x25, 0x17, 0x9a, 0x88, 0xa0, 0xa8, 0x26, 0x22, 0x88, 0x3c, 0x03, 0xfd, 0x9c, 0x45, + 0x70, 0x7e, 0xc5, 0xb3, 0xaf, 0x83, 0xb0, 0xe8, 0xd2, 0x1c, 0x10, 0x92, 0x5f, 0xc9, 0xc0, 0xf9, + 0xae, 0x92, 0x40, 0x65, 0x18, 0xbc, 0xf6, 0xec, 0xae, 0xc4, 0x38, 0xf1, 0xe4, 0xe6, 0xc6, 0xf8, + 0xe5, 0x66, 0x40, 0x52, 0x75, 0x24, 0x9a, 0x6a, 0x8d, 0x13, 0x49, 0xed, 0xea, 0xde, 0x14, 0xb6, + 0x79, 0xe4, 0x95, 0x4e, 0xe3, 0xd5, 0x91, 0x55, 0x5b, 0xf7, 0x1b, 0x99, 0x0f, 0x37, 0x8f, 0xe2, + 0x7b, 0x57, 0x7c, 0x92, 0x94, 0x6a, 0x3a, 0x70, 0x21, 0x35, 0x38, 0xcd, 0x31, 0x25, 0x7d, 0x7d, + 0x61, 0x65, 0xce, 0xb6, 0xbc, 0x55, 0xbf, 0x82, 0x5e, 0xf9, 0xee, 0x05, 0x2b, 0x30, 0xf4, 0xf5, + 0xaa, 0xbd, 0x52, 0x6d, 0x32, 0xaa, 0x94, 0x3a, 0x3a, 0x71, 0x62, 0x13, 0xad, 0x18, 0x73, 0xfe, + 0x14, 0x54, 0x08, 0x6f, 0xc6, 0xfc, 0x71, 0x9a, 0x9c, 0x70, 0x62, 0x85, 0xd4, 0x32, 0x0c, 0xcd, + 0xda, 0xb5, 0xbb, 0x81, 0xba, 0xbc, 0x00, 0x85, 0x25, 0xdd, 0xa9, 0x53, 0x0f, 0x65, 0x31, 0x78, + 0x6d, 0xec, 0x0a, 0xbf, 0x6d, 0x66, 0x44, 0x1c, 0x31, 0x31, 0x22, 0x66, 0x83, 0x82, 0x87, 0xbf, + 0x35, 0x51, 0x40, 0xfd, 0x66, 0x2f, 0x0c, 0x89, 0x9b, 0x51, 0x9c, 0xcd, 0xc9, 0x8b, 0xe1, 0x5d, + 0xb3, 0x98, 0xbe, 0x82, 0xdb, 0xa1, 0xe0, 0x56, 0x6b, 0x88, 0x31, 0xfb, 0x93, 0x8d, 0xf1, 0xcc, + 0xe6, 0xc6, 0x78, 0x8f, 0xd6, 0x2f, 0x1d, 0x2a, 0xc3, 0xf5, 0x46, 0x5a, 0x60, 0xe5, 0xbb, 0xce, + 0x58, 0x59, 0xbe, 0xfe, 0xbc, 0x0a, 0x7d, 0xa2, 0x0d, 0x42, 0xe3, 0x4e, 0x87, 0x77, 0x19, 0x91, + 0x1b, 0xde, 0x58, 0x69, 0xbf, 0x14, 0x79, 0x19, 0x0a, 0xfc, 0x6c, 0x2f, 0x04, 0x70, 0x2a, 0xfd, + 0x2e, 0x24, 0x56, 0x5c, 0x94, 0x21, 0x33, 0x00, 0xe1, 0xb9, 0x3e, 0xb8, 0xd0, 0x16, 0x1c, 0x92, + 0x27, 0xfe, 0x18, 0x17, 0xa9, 0x2c, 0x79, 0x0e, 0x86, 0x96, 0xa8, 0xd3, 0x34, 0x2d, 0xbd, 0x51, + 0x31, 0xdf, 0xf6, 0xef, 0xb4, 0x71, 0xe1, 0x75, 0xcd, 0xb7, 0xe5, 0x91, 0x1b, 0xa1, 0x23, 0x1f, + 0x4f, 0x3b, 0x37, 0xf7, 0x61, 0x43, 0x1e, 0xd9, 0xf2, 0x40, 0x19, 0x6b, 0x4f, 0xca, 0x31, 0xfa, + 0x0d, 0x18, 0x8e, 0x1c, 0x99, 0xc4, 0xa5, 0xe5, 0xf9, 0x24, 0x6b, 0xe9, 0xfc, 0x17, 0x63, 0x1b, + 0xe5, 0xc0, 0x34, 0xb9, 0x6c, 0x99, 0x9e, 0xa9, 0x37, 0x26, 0xed, 0x66, 0x53, 0xb7, 0x0c, 0x65, + 0x20, 0xd4, 0x64, 0x93, 0x63, 0xaa, 0x35, 0x8e, 0x92, 0x35, 0x39, 0x5a, 0x88, 0x1d, 0xcb, 0x45, + 0x1f, 0x6a, 0xb4, 0x66, 0x3b, 0x6c, 0x2f, 0x80, 0x77, 0x92, 0xe2, 0x58, 0xee, 0x72, 0x5c, 0xd5, + 0xf1, 0x91, 0xf2, 0x66, 0x3b, 0x5e, 0xf0, 0xf5, 0x7c, 0xff, 0xe0, 0xe8, 0x50, 0xfc, 0x1a, 0x59, + 0xfd, 0xe5, 0x1c, 0x0c, 0x0a, 0x52, 0xb6, 0x94, 0x1e, 0x29, 0xf8, 0x5e, 0x14, 0x3c, 0x55, 0x51, + 0x0b, 0xfb, 0xa5, 0xa8, 0xea, 0xe7, 0xb2, 0xc1, 0x6c, 0xb4, 0xe8, 0x98, 0xd6, 0xde, 0x66, 0xa3, + 0x8b, 0x00, 0x93, 0xab, 0x6d, 0xeb, 0x2e, 0x7f, 0x2e, 0xcb, 0x86, 0xcf, 0x65, 0x35, 0x53, 0x93, + 0x30, 0xe4, 0x3c, 0xe4, 0x4b, 0x8c, 0x3f, 0xeb, 0x99, 0xa1, 0x89, 0x81, 0x77, 0x38, 0xa7, 0xcc, + 0x93, 0x1a, 0x82, 0xd9, 0xe1, 0x6a, 0x62, 0xdd, 0xa3, 0x7c, 0x3b, 0x9b, 0xe3, 0x87, 0xab, 0x65, + 0x06, 0xd0, 0x38, 0x9c, 0x5c, 0x87, 0xb1, 0x12, 0x6d, 0xe8, 0xeb, 0x73, 0x66, 0xa3, 0x61, 0xba, + 0xb4, 0x66, 0x5b, 0x86, 0x8b, 0x42, 0x16, 0xd5, 0x35, 0x5d, 0x2d, 0x49, 0x40, 0x54, 0x28, 0x2c, + 0xac, 0xac, 0xb8, 0xd4, 0x43, 0xf1, 0xe5, 0x26, 0x80, 0x4d, 0xce, 0x36, 0x42, 0x34, 0x81, 0x51, + 0x7f, 0x3d, 0xc3, 0x4e, 0x2f, 0xee, 0x5d, 0xcf, 0x6e, 0x05, 0x5a, 0xbe, 0x27, 0x91, 0x5c, 0x0e, + 0xf7, 0x15, 0x59, 0xfc, 0xda, 0x63, 0xe2, 0x6b, 0xfb, 0xc4, 0xde, 0x22, 0xdc, 0x51, 0xa4, 0x7e, + 0x55, 0x6e, 0x8b, 0xaf, 0x52, 0xff, 0x26, 0x0b, 0xa7, 0x45, 0x8b, 0x27, 0x1b, 0x66, 0x6b, 0xd9, + 0xd6, 0x1d, 0x43, 0xa3, 0x35, 0x6a, 0xde, 0xa3, 0x87, 0x73, 0xe0, 0x45, 0x87, 0x4e, 0x7e, 0x0f, + 0x43, 0xe7, 0x1a, 0x1e, 0x04, 0x99, 0x64, 0xf0, 0xc2, 0x97, 0x6f, 0x2a, 0x46, 0x37, 0x37, 0xc6, + 0x87, 0x0c, 0x0e, 0xc6, 0x2b, 0x7f, 0x4d, 0x26, 0x62, 0x4a, 0x32, 0x4b, 0xad, 0xba, 0xb7, 0x8a, + 0x4a, 0xd2, 0xcb, 0x95, 0xa4, 0x81, 0x10, 0x4d, 0x60, 0xd4, 0x7f, 0x9e, 0x85, 0x13, 0x71, 0x91, + 0x57, 0xa8, 0x65, 0x1c, 0xc9, 0xfb, 0xdd, 0x91, 0xf7, 0xb7, 0x73, 0xf0, 0x90, 0x28, 0x53, 0x59, + 0xd5, 0x1d, 0x6a, 0x94, 0x4c, 0x87, 0xd6, 0x3c, 0xdb, 0x59, 0x3f, 0xc4, 0x1b, 0xa8, 0xfd, 0x13, + 0xfb, 0x75, 0x28, 0x88, 0xe3, 0x3f, 0x5f, 0x67, 0x46, 0x82, 0x96, 0x20, 0x34, 0xb1, 0x42, 0xf1, + 0xab, 0x83, 0x58, 0x67, 0x15, 0xb6, 0xd3, 0x59, 0x1f, 0x84, 0xe1, 0x40, 0xf4, 0x78, 0x10, 0xed, + 0x0b, 0x77, 0x5b, 0x86, 0x8f, 0xc0, 0xb3, 0xa8, 0x16, 0x25, 0xc4, 0xda, 0x7c, 0x40, 0xb9, 0x84, + 0xbb, 0xa1, 0x61, 0x51, 0x5b, 0x50, 0xce, 0x34, 0x34, 0x99, 0x48, 0xdd, 0xc8, 0xc3, 0xd9, 0xf4, + 0x6e, 0xd7, 0xa8, 0x6e, 0x1c, 0xf5, 0xfa, 0x77, 0x65, 0xaf, 0x93, 0x47, 0x20, 0xbf, 0xa8, 0x7b, + 0xab, 0xe2, 0xf9, 0x1d, 0xdf, 0x84, 0x57, 0xcc, 0x06, 0xad, 0xb6, 0x74, 0x6f, 0x55, 0x43, 0x94, + 0x34, 0x67, 0x00, 0x72, 0x4c, 0x99, 0x33, 0xa4, 0xc5, 0x7e, 0xf0, 0xe1, 0xcc, 0xa5, 0x7c, 0xea, + 0x62, 0xff, 0xcd, 0x7c, 0xa7, 0x79, 0xe5, 0x8e, 0x63, 0x7a, 0xf4, 0x48, 0xc3, 0x8e, 0x34, 0x6c, + 0x8f, 0x1a, 0xf6, 0x67, 0x59, 0x18, 0x0e, 0x0e, 0x4d, 0x6f, 0xd1, 0xda, 0xc1, 0xac, 0x55, 0xe1, + 0x51, 0x26, 0xb7, 0xe7, 0xa3, 0xcc, 0x5e, 0x14, 0x4a, 0x0d, 0xae, 0x3c, 0xf9, 0xd6, 0x00, 0x25, + 0xc6, 0xaf, 0x3c, 0x83, 0x8b, 0xce, 0x47, 0xa0, 0x6f, 0x4e, 0xbf, 0x6f, 0x36, 0xdb, 0x4d, 0xb1, + 0x4b, 0x47, 0x73, 0xb2, 0xa6, 0x7e, 0x5f, 0xf3, 0xe1, 0xea, 0xff, 0x9d, 0x81, 0x11, 0x21, 0x54, + 0xc1, 0x7c, 0x4f, 0x52, 0x0d, 0xa5, 0x93, 0xdd, 0xb3, 0x74, 0x72, 0xbb, 0x97, 0x8e, 0xfa, 0x33, 0x39, 0x50, 0xa6, 0xcd, 0x06, 0x5d, 0x72, 0x74, 0xcb, 0x5d, 0xa1, 0x8e, 0x38, 0x4e, 0x4f, 0x31, - 0x56, 0x7b, 0xfa, 0x40, 0x69, 0x4a, 0xc9, 0xee, 0x6a, 0x4a, 0x79, 0x1f, 0x0c, 0x88, 0xc6, 0x04, - 0xa6, 0x8c, 0x38, 0x6a, 0x1c, 0x1f, 0xa8, 0x85, 0x78, 0x46, 0x5c, 0x6c, 0xb5, 0x1c, 0xfb, 0x2e, + 0x56, 0x7b, 0xfa, 0x40, 0x69, 0x4a, 0xc9, 0xee, 0x6a, 0x4a, 0xf9, 0x00, 0x0c, 0x88, 0xc6, 0x04, + 0xa6, 0x8c, 0x38, 0x6a, 0x1c, 0x1f, 0xa8, 0x85, 0x78, 0x46, 0x5c, 0x6c, 0xb5, 0x1c, 0xfb, 0x1e, 0x75, 0xf8, 0x2b, 0x95, 0x20, 0xd6, 0x7d, 0xa0, 0x16, 0xe2, 0x25, 0xce, 0xd4, 0xdf, 0x2f, 0xca, - 0x9c, 0xa9, 0xa3, 0x85, 0x78, 0x72, 0x11, 0xfa, 0x67, 0xed, 0x9a, 0x8e, 0x82, 0xe6, 0xd3, 0xca, + 0x9c, 0xa9, 0xa3, 0x85, 0x78, 0x72, 0x09, 0xfa, 0x67, 0xed, 0x9a, 0x8e, 0x82, 0xe6, 0xd3, 0xca, 0xd0, 0xe6, 0xc6, 0x78, 0x7f, 0x43, 0xc0, 0xb4, 0x00, 0xcb, 0x28, 0x4b, 0xf6, 0x9a, 0xd5, 0xb0, 0x75, 0x6e, 0xfc, 0xd2, 0xcf, 0x29, 0x0d, 0x01, 0xd3, 0x02, 0x2c, 0xa3, 0x64, 0x32, 0x47, 0xa3, - 0xa2, 0xfe, 0x90, 0xe7, 0x8a, 0x80, 0x69, 0x01, 0x56, 0xfd, 0xe5, 0x3c, 0xd3, 0x5e, 0xd7, 0x7c, - 0xeb, 0xbe, 0x5f, 0x17, 0xc2, 0x01, 0xd3, 0xbb, 0x8b, 0x01, 0x73, 0xdf, 0x5c, 0xd8, 0xa9, 0x7f, - 0xd9, 0x07, 0x20, 0xa4, 0x3f, 0x75, 0x74, 0x38, 0xdc, 0x9b, 0xd6, 0x94, 0x60, 0x6c, 0xca, 0x5a, + 0xa2, 0xfe, 0x90, 0xe7, 0x8a, 0x80, 0x69, 0x01, 0x56, 0xfd, 0xf5, 0x3c, 0xd3, 0x5e, 0xd7, 0x7c, + 0xfb, 0x81, 0x5f, 0x17, 0xc2, 0x01, 0xd3, 0xbb, 0x8b, 0x01, 0xf3, 0xc0, 0x5c, 0xd8, 0xa9, 0x7f, + 0xdb, 0x07, 0x20, 0xa4, 0x3f, 0x75, 0x74, 0x38, 0xdc, 0x9b, 0xd6, 0x94, 0x60, 0x6c, 0xca, 0x5a, 0xd5, 0xad, 0x1a, 0x35, 0xc2, 0x6b, 0xcb, 0x02, 0x0e, 0x6d, 0x34, 0x82, 0xa4, 0x02, 0x19, 0xde, - 0x5b, 0x6a, 0xc9, 0x02, 0xe4, 0x29, 0x18, 0x2c, 0x5b, 0x1e, 0x75, 0xf4, 0x9a, 0x67, 0xde, 0xa5, - 0x62, 0x6a, 0xc0, 0x97, 0x61, 0x33, 0x04, 0x6b, 0x32, 0x0d, 0xb9, 0x06, 0x43, 0x8b, 0xba, 0xe3, + 0x5b, 0x6a, 0xc9, 0x02, 0xe4, 0x69, 0x18, 0x2c, 0x5b, 0x1e, 0x75, 0xf4, 0x9a, 0x67, 0xde, 0xa3, + 0x62, 0x6a, 0xc0, 0x97, 0x61, 0x33, 0x04, 0x6b, 0x32, 0x0d, 0xb9, 0x0e, 0x43, 0x8b, 0xba, 0xe3, 0x99, 0x35, 0xb3, 0xa5, 0x5b, 0x9e, 0xab, 0xf4, 0xe3, 0x8c, 0x86, 0x3b, 0x8c, 0x96, 0x04, 0xd7, - 0x22, 0x54, 0xe4, 0xa3, 0x30, 0x80, 0x47, 0x53, 0xb4, 0xd7, 0x1e, 0xd8, 0xf2, 0xe1, 0xf0, 0x91, - 0xd0, 0x3c, 0x90, 0xdf, 0xbe, 0xe2, 0x0b, 0x70, 0xfc, 0xed, 0x30, 0xe0, 0x48, 0x3e, 0x08, 0x7d, + 0x22, 0x54, 0xe4, 0xe3, 0x30, 0x80, 0x47, 0x53, 0xb4, 0xd7, 0x1e, 0xd8, 0xf2, 0xe1, 0xf0, 0xd1, + 0xd0, 0x3c, 0x90, 0xdf, 0xbe, 0xe2, 0x0b, 0x70, 0xfc, 0xed, 0x30, 0xe0, 0x48, 0x3e, 0x0c, 0x7d, 0x53, 0x96, 0x81, 0xcc, 0x61, 0x4b, 0xe6, 0xaa, 0x60, 0x7e, 0x2a, 0x64, 0x6e, 0xb7, 0x62, 0xbc, - 0x7d, 0x76, 0xe9, 0xa3, 0x6c, 0xf0, 0x9d, 0x1b, 0x65, 0x43, 0xef, 0xc0, 0xb5, 0xf8, 0xf0, 0x7e, - 0x5d, 0x8b, 0x8f, 0xec, 0xf2, 0x5a, 0x5c, 0x7d, 0x0b, 0x06, 0x27, 0x16, 0xa7, 0x83, 0xd1, 0xfb, - 0x00, 0xe4, 0x16, 0x85, 0xa5, 0x42, 0x9e, 0xef, 0x67, 0x5a, 0xa6, 0xa1, 0x31, 0x18, 0xb9, 0x04, - 0xfd, 0x93, 0x68, 0xfe, 0x26, 0x5e, 0x11, 0xf3, 0x7c, 0xfd, 0xab, 0x21, 0x0c, 0xad, 0x60, 0x7d, - 0x34, 0x79, 0x14, 0xfa, 0x16, 0x1d, 0xbb, 0xee, 0xe8, 0x4d, 0xb1, 0x06, 0xa3, 0xa9, 0x48, 0x8b, - 0x83, 0x34, 0x1f, 0xa7, 0xfe, 0x60, 0xc6, 0xdf, 0xb6, 0xb3, 0x12, 0x95, 0x36, 0x5e, 0xcd, 0x63, - 0xdd, 0xfd, 0xbc, 0x84, 0xcb, 0x41, 0x9a, 0x8f, 0x23, 0x97, 0xa0, 0x77, 0xca, 0x71, 0x6c, 0x47, - 0xb6, 0x71, 0xa7, 0x0c, 0x20, 0x3f, 0xf7, 0x22, 0x05, 0x79, 0x0e, 0x06, 0xf9, 0x9c, 0xc3, 0x6f, - 0x34, 0x73, 0xdd, 0x5e, 0x4a, 0x65, 0x4a, 0xf5, 0xab, 0x39, 0x69, 0xcf, 0xc6, 0x25, 0x7e, 0x1f, - 0xbe, 0x0a, 0x3c, 0x0d, 0xb9, 0x89, 0xc5, 0x69, 0x31, 0x01, 0x1e, 0xf7, 0x8b, 0x4a, 0xaa, 0x12, - 0x2b, 0xc7, 0xa8, 0xc9, 0x59, 0xc8, 0x2f, 0x32, 0xf5, 0x29, 0xa0, 0x7a, 0xf4, 0x6f, 0x6e, 0x8c, - 0xe7, 0x5b, 0x4c, 0x7f, 0x10, 0x8a, 0x58, 0x76, 0x98, 0xe1, 0x27, 0x26, 0x8e, 0x0d, 0xcf, 0x31, - 0x67, 0x21, 0x5f, 0x74, 0xea, 0x77, 0xc5, 0xac, 0x85, 0x58, 0xdd, 0xa9, 0xdf, 0xd5, 0x10, 0x4a, - 0xae, 0x00, 0x68, 0xd4, 0x6b, 0x3b, 0x16, 0xba, 0x9f, 0x0c, 0xe0, 0xfd, 0x1b, 0xce, 0x86, 0x0e, - 0x42, 0xab, 0x35, 0xdb, 0xa0, 0x9a, 0x44, 0xa2, 0xfe, 0x6c, 0xf8, 0xb0, 0x53, 0x32, 0xdd, 0x3b, - 0x47, 0x5d, 0xb8, 0x83, 0x2e, 0xd4, 0xc5, 0x15, 0x67, 0xb2, 0x93, 0xc6, 0xa1, 0x77, 0xba, 0xa1, - 0xd7, 0x5d, 0xec, 0x43, 0x61, 0x4b, 0xb6, 0xc2, 0x00, 0x1a, 0x87, 0xc7, 0xfa, 0xa9, 0x7f, 0xeb, - 0x7e, 0xfa, 0x62, 0x6f, 0x30, 0xda, 0xe6, 0xa9, 0xb7, 0x66, 0x3b, 0x47, 0x5d, 0xb5, 0xdd, 0xae, - 0xba, 0x00, 0x7d, 0x15, 0xa7, 0x26, 0x5d, 0x5d, 0xe0, 0x79, 0xc0, 0x75, 0x6a, 0xfc, 0xda, 0xc2, - 0x47, 0x32, 0xba, 0x92, 0xeb, 0x21, 0x5d, 0x5f, 0x48, 0x67, 0xb8, 0x9e, 0xa0, 0x13, 0x48, 0x41, - 0xb7, 0x68, 0x3b, 0x9e, 0xe8, 0xb8, 0x80, 0xae, 0x65, 0x3b, 0x9e, 0xe6, 0x23, 0xc9, 0xfb, 0x00, - 0x96, 0x26, 0x17, 0x7d, 0x63, 0xfb, 0x81, 0xd0, 0x16, 0x50, 0x58, 0xd9, 0x6b, 0x12, 0x9a, 0x2c, - 0xc1, 0xc0, 0x42, 0x8b, 0x3a, 0xfc, 0x28, 0xc4, 0x1d, 0x4a, 0xde, 0x1b, 0x13, 0xad, 0xe8, 0xf7, - 0xcb, 0xe2, 0xff, 0x80, 0x9c, 0xaf, 0x2f, 0xb6, 0xff, 0x53, 0x0b, 0x19, 0x91, 0xe7, 0xa0, 0x50, - 0xe4, 0xfb, 0xbc, 0x41, 0x64, 0x19, 0x88, 0x0c, 0x8f, 0xa0, 0x1c, 0xc5, 0xcf, 0xec, 0x3a, 0xfe, - 0xad, 0x09, 0x72, 0xf5, 0x12, 0x8c, 0xc6, 0xab, 0x21, 0x83, 0xd0, 0x37, 0xb9, 0x30, 0x3f, 0x3f, - 0x35, 0xb9, 0x34, 0xda, 0x43, 0xfa, 0x21, 0x5f, 0x99, 0x9a, 0x2f, 0x8d, 0x66, 0xd4, 0x5f, 0x94, - 0x66, 0x10, 0xa6, 0x5a, 0x47, 0x4f, 0xc3, 0x7b, 0x7a, 0x6f, 0x19, 0xc5, 0xf7, 0x50, 0xbc, 0x31, - 0x68, 0x9a, 0x9e, 0x47, 0x0d, 0xb1, 0x4a, 0xe0, 0x7b, 0xa1, 0x77, 0x4f, 0x4b, 0xe0, 0xc9, 0xe3, - 0x30, 0x8c, 0x30, 0xf1, 0x44, 0xc8, 0xcf, 0xc7, 0xa2, 0x80, 0x73, 0x4f, 0x8b, 0x22, 0xd5, 0xaf, - 0x85, 0xaf, 0xc3, 0xb3, 0x54, 0x3f, 0xac, 0x2f, 0x8a, 0xef, 0x92, 0xfe, 0x52, 0xff, 0x3a, 0xcf, - 0x5d, 0x40, 0xb8, 0xbf, 0xe0, 0x41, 0x88, 0x32, 0xbc, 0xd2, 0xcd, 0xed, 0xe0, 0x4a, 0xf7, 0x71, - 0x28, 0xcc, 0x51, 0x6f, 0xd5, 0xf6, 0x0d, 0xbf, 0xd0, 0x42, 0xaf, 0x89, 0x10, 0xd9, 0x42, 0x8f, - 0xd3, 0x90, 0x3b, 0x40, 0x7c, 0x67, 0xc0, 0xc0, 0x10, 0xdb, 0xbf, 0x42, 0x3e, 0x9d, 0x38, 0xa7, - 0x54, 0xd0, 0x13, 0x18, 0x6d, 0xec, 0x4f, 0x04, 0x86, 0xde, 0x92, 0x25, 0xd6, 0x5f, 0x6d, 0x8c, - 0x17, 0x38, 0x8d, 0x96, 0xc2, 0x96, 0xbc, 0x0e, 0x03, 0x73, 0xd3, 0x45, 0xe1, 0x18, 0xc8, 0xad, - 0x22, 0x1e, 0x08, 0xa4, 0xe8, 0x23, 0x02, 0x91, 0xa0, 0xbf, 0x4d, 0x73, 0x45, 0x4f, 0xfa, 0x05, - 0x86, 0x5c, 0x98, 0xb6, 0x70, 0xcf, 0x1d, 0x71, 0xbb, 0x10, 0x68, 0x4b, 0xd4, 0x9f, 0x27, 0x2e, - 0x2b, 0x8e, 0x8d, 0x69, 0x4b, 0xff, 0x1e, 0x46, 0xf7, 0x02, 0x8c, 0x15, 0x5b, 0xad, 0x86, 0x49, - 0x0d, 0xd4, 0x17, 0xad, 0xdd, 0xa0, 0xae, 0x30, 0xf9, 0x41, 0x67, 0x10, 0x9d, 0x23, 0xab, 0xe8, - 0x8e, 0x5a, 0x75, 0xda, 0x51, 0xfb, 0xcc, 0x64, 0x59, 0xf5, 0x87, 0xb3, 0x70, 0x6a, 0xd2, 0xa1, - 0xba, 0x47, 0xe7, 0xa6, 0x8b, 0xc5, 0x36, 0xda, 0xc8, 0x35, 0x1a, 0xd4, 0xaa, 0x1f, 0xcc, 0xb0, - 0x7e, 0x11, 0x46, 0x82, 0x06, 0x54, 0x6a, 0x76, 0x8b, 0xca, 0x8e, 0x55, 0x35, 0x1f, 0x53, 0x75, - 0x19, 0x4a, 0x8b, 0x91, 0x92, 0x1b, 0x70, 0x3c, 0x80, 0x14, 0x1b, 0x0d, 0x7b, 0x4d, 0xa3, 0x6d, - 0x97, 0x1b, 0xc6, 0xf6, 0x73, 0xc3, 0xd8, 0x90, 0x83, 0xce, 0xf0, 0x55, 0x87, 0x11, 0x68, 0x69, - 0xa5, 0xd4, 0x2f, 0xe5, 0xe0, 0xf4, 0x2d, 0xbd, 0x61, 0x1a, 0xa1, 0x68, 0x34, 0xea, 0xb6, 0x6c, - 0xcb, 0xa5, 0x87, 0x68, 0x94, 0x46, 0x86, 0x42, 0x7e, 0x5f, 0x86, 0x42, 0xb2, 0x8b, 0x7a, 0xf7, - 0xdc, 0x45, 0x85, 0x5d, 0x75, 0xd1, 0xbf, 0xc9, 0xc0, 0xa8, 0x6f, 0xf8, 0x2f, 0x3b, 0x71, 0x4b, - 0x56, 0xe9, 0x78, 0x85, 0x18, 0xb3, 0x83, 0x46, 0x3c, 0xa9, 0x40, 0xdf, 0xd4, 0xbd, 0x96, 0xe9, - 0x50, 0x77, 0x1b, 0x46, 0xdc, 0xe7, 0xc4, 0x75, 0xc9, 0x18, 0xe5, 0x45, 0x12, 0x37, 0x25, 0x1c, - 0x8c, 0xee, 0x7c, 0xdc, 0xf5, 0x61, 0xc2, 0xf7, 0x4c, 0xe7, 0xee, 0x7c, 0xc2, 0x45, 0x22, 0xe2, - 0x9f, 0x19, 0x92, 0x92, 0x47, 0x20, 0xb7, 0xb4, 0x34, 0x2b, 0x66, 0x52, 0x8c, 0x08, 0xe0, 0x79, - 0xb2, 0xbf, 0x22, 0xc3, 0xaa, 0x7f, 0x9a, 0x05, 0x60, 0xaa, 0xc0, 0x87, 0xeb, 0x81, 0x28, 0xe1, - 0x04, 0xf4, 0xfb, 0x02, 0x17, 0x6a, 0x18, 0x58, 0xed, 0xc7, 0x3b, 0x22, 0x5e, 0x77, 0xe0, 0xa1, - 0x31, 0xee, 0x1b, 0x92, 0xf3, 0x77, 0x00, 0x3c, 0xd9, 0xa0, 0x21, 0xb9, 0x6f, 0x3e, 0xfe, 0x3e, - 0x18, 0x10, 0x33, 0x9e, 0x1d, 0xb9, 0xff, 0xaf, 0xf9, 0x40, 0x2d, 0xc4, 0xc7, 0xa6, 0xd6, 0xc2, - 0x1e, 0x16, 0x62, 0x5f, 0xbc, 0xbc, 0x57, 0x8e, 0xc4, 0xbb, 0xcf, 0xe2, 0xfd, 0x9c, 0x10, 0x2f, - 0xf7, 0xe0, 0x39, 0xb4, 0xe2, 0xdd, 0xb7, 0xbb, 0x6f, 0xf5, 0x8f, 0x32, 0x40, 0x58, 0xb3, 0x16, - 0x75, 0xd7, 0x5d, 0xb3, 0x1d, 0x83, 0x1b, 0xa7, 0x1f, 0x88, 0x60, 0xf6, 0xef, 0xbd, 0xf2, 0xab, - 0xfd, 0x70, 0x3c, 0x62, 0xf8, 0x7b, 0xc8, 0x27, 0xab, 0x4b, 0xd1, 0xd1, 0xd4, 0xcd, 0xeb, 0xe5, - 0x3d, 0xf2, 0x83, 0x68, 0x6f, 0xc4, 0x01, 0x4d, 0x7a, 0x09, 0x7d, 0x02, 0x86, 0xc4, 0x0f, 0xb6, - 0x42, 0xfb, 0x2f, 0x5d, 0x38, 0x4a, 0x5d, 0x06, 0xd0, 0x22, 0x68, 0xf2, 0x0c, 0x0c, 0xb0, 0x01, - 0x53, 0xc7, 0xe0, 0x21, 0x7d, 0xa1, 0x47, 0x89, 0xe1, 0x03, 0xe5, 0xf5, 0x24, 0xa0, 0x94, 0xfc, - 0x88, 0xfa, 0xb7, 0xe1, 0x47, 0xf4, 0x31, 0x18, 0x2c, 0x5a, 0x96, 0xed, 0xe1, 0x21, 0xdd, 0x15, - 0x4f, 0x13, 0x1d, 0x77, 0xe5, 0x8f, 0xa0, 0x73, 0x7c, 0x48, 0x9f, 0xba, 0x2d, 0x97, 0x19, 0x92, - 0xab, 0xbe, 0x57, 0x0c, 0x75, 0x84, 0x55, 0x39, 0x3e, 0xcf, 0x38, 0x02, 0x96, 0x74, 0x8a, 0xc1, - 0xce, 0x1b, 0x5e, 0x74, 0xec, 0x96, 0xed, 0x52, 0x83, 0x0b, 0x6a, 0x30, 0x0c, 0x35, 0xd0, 0x12, - 0x08, 0xf4, 0x63, 0x8b, 0x04, 0xf2, 0x88, 0x14, 0x21, 0x2b, 0x70, 0xc2, 0x7f, 0x28, 0x0e, 0x3c, - 0x06, 0xcb, 0x25, 0x57, 0x19, 0x42, 0xaf, 0x24, 0x12, 0x57, 0x86, 0x72, 0x69, 0xe2, 0xbc, 0xff, - 0x2c, 0xe2, 0xbb, 0x1c, 0x56, 0x4d, 0x43, 0xee, 0xea, 0x54, 0x7e, 0xe4, 0x3b, 0x60, 0x70, 0x4e, - 0xbf, 0x57, 0x6a, 0x8b, 0xbb, 0x97, 0xe1, 0xed, 0xbf, 0xbe, 0x34, 0xf5, 0x7b, 0x55, 0x43, 0x94, - 0x8b, 0xed, 0x29, 0x64, 0x96, 0xa4, 0x0a, 0xa7, 0x16, 0x1d, 0xbb, 0x69, 0x7b, 0xd4, 0x88, 0x39, - 0xdf, 0x1d, 0x0b, 0xbd, 0x75, 0x5b, 0x82, 0xa2, 0xda, 0xc5, 0x0b, 0xaf, 0x03, 0x1b, 0xd2, 0x84, - 0x63, 0x45, 0xd7, 0x6d, 0x37, 0x69, 0xf8, 0x42, 0x35, 0xba, 0xe5, 0x67, 0xbc, 0x57, 0x58, 0x2d, - 0x3f, 0xa8, 0x63, 0x51, 0xfe, 0x40, 0x55, 0xf5, 0x4c, 0xb9, 0x46, 0xfc, 0x96, 0x38, 0xef, 0xd7, - 0xf2, 0xfd, 0x23, 0xa3, 0xc7, 0xb4, 0xd3, 0xc9, 0xc6, 0x2c, 0x99, 0x5e, 0x83, 0xaa, 0x5f, 0xc9, - 0x00, 0x84, 0x02, 0x26, 0x4f, 0x44, 0x23, 0x14, 0x65, 0xc2, 0x87, 0x0e, 0x11, 0xbd, 0x20, 0x12, - 0x92, 0x88, 0x9c, 0x85, 0x3c, 0x46, 0xb8, 0xc8, 0x86, 0x17, 0xab, 0x77, 0x4c, 0xcb, 0xd0, 0x10, - 0xca, 0xb0, 0x92, 0x2b, 0x3a, 0x62, 0xf1, 0x51, 0x9f, 0xef, 0x0a, 0x4b, 0x70, 0xac, 0xd2, 0x5e, - 0xf6, 0xeb, 0x96, 0xfc, 0xea, 0x30, 0xd0, 0x86, 0xdb, 0x5e, 0x0e, 0x9c, 0x51, 0x23, 0x61, 0x4c, - 0xa2, 0x45, 0xd4, 0x5f, 0xce, 0xc4, 0x66, 0xc1, 0x03, 0x5c, 0xf4, 0xde, 0x93, 0xb4, 0xd3, 0x48, - 0x4e, 0x4b, 0xea, 0x4f, 0x66, 0x61, 0x70, 0xd1, 0x76, 0x3c, 0x11, 0x32, 0xe4, 0x70, 0xaf, 0x42, - 0xd2, 0x59, 0x29, 0xbf, 0x83, 0xb3, 0xd2, 0x59, 0xc8, 0x4b, 0x26, 0xca, 0xfc, 0x5d, 0xc4, 0x30, - 0x1c, 0x0d, 0xa1, 0xea, 0x77, 0x66, 0x01, 0x3e, 0xf8, 0xd4, 0x53, 0xf7, 0xb1, 0x80, 0xd4, 0x1f, - 0xcf, 0xc0, 0x31, 0xf1, 0x50, 0x27, 0xc5, 0xfa, 0xea, 0xf3, 0x9f, 0x58, 0xe5, 0x71, 0xc9, 0x41, - 0x9a, 0x8f, 0x63, 0x4b, 0xc0, 0xd4, 0x3d, 0xd3, 0xc3, 0xb7, 0x0a, 0x29, 0xd8, 0x17, 0x15, 0x30, - 0x79, 0x09, 0xf0, 0xe9, 0xc8, 0x13, 0xfe, 0x13, 0x64, 0x2e, 0x5c, 0xf7, 0x58, 0x81, 0xa9, 0xd4, - 0x67, 0x48, 0xf5, 0xd7, 0xf2, 0x90, 0x9f, 0xba, 0x47, 0x6b, 0x87, 0xbc, 0x6b, 0xa4, 0x8b, 0xcd, - 0xfc, 0x1e, 0x2f, 0x36, 0x77, 0x63, 0x53, 0xf1, 0x4a, 0xd8, 0x9f, 0x85, 0x68, 0xf5, 0xb1, 0x9e, - 0x8f, 0x57, 0xef, 0xf7, 0xf4, 0xe1, 0x33, 0xc9, 0xf9, 0x7b, 0x39, 0xc8, 0x55, 0x26, 0x17, 0x8f, - 0xf4, 0xe6, 0x40, 0xf5, 0xa6, 0xfb, 0x9b, 0xb5, 0x1a, 0x3c, 0x43, 0xf5, 0x87, 0x56, 0xa2, 0xb1, - 0x17, 0xa7, 0x6f, 0xe6, 0x60, 0xa4, 0x32, 0xbd, 0xb4, 0x28, 0xdd, 0x04, 0xdf, 0xe0, 0x96, 0x7c, - 0x68, 0x53, 0xc6, 0xbb, 0xf4, 0x6c, 0x62, 0x3f, 0x73, 0xb3, 0x6c, 0x79, 0xcf, 0x5e, 0xbb, 0xa5, - 0x37, 0xda, 0x14, 0xaf, 0x5e, 0xb8, 0xdd, 0xaf, 0x6b, 0xbe, 0x45, 0xbf, 0x84, 0x8e, 0xff, 0x3e, - 0x03, 0xf2, 0x22, 0xe4, 0x6e, 0x0a, 0x8b, 0x8c, 0x4e, 0x7c, 0x9e, 0xbe, 0xca, 0xf9, 0xb0, 0x49, - 0x30, 0xd7, 0x36, 0x0d, 0xe4, 0xc0, 0x4a, 0xb1, 0xc2, 0xd7, 0xc5, 0x02, 0xbc, 0xad, 0xc2, 0x75, - 0xbf, 0xf0, 0xf5, 0x72, 0x89, 0x54, 0x60, 0x70, 0x91, 0x3a, 0x4d, 0x13, 0x3b, 0xca, 0x9f, 0xb3, - 0xbb, 0x33, 0x61, 0x27, 0x95, 0xc1, 0x56, 0x58, 0x08, 0x99, 0xc9, 0x5c, 0xc8, 0x1b, 0x00, 0x7c, - 0x8f, 0xb2, 0xcd, 0xf8, 0x91, 0xe7, 0x70, 0xdf, 0xcf, 0xb7, 0x96, 0x29, 0x7b, 0x3c, 0x89, 0x19, - 0xb9, 0x03, 0xa3, 0x73, 0xb6, 0x61, 0xae, 0x98, 0xdc, 0xf4, 0x12, 0x2b, 0x28, 0x6c, 0x6d, 0xf0, - 0xc4, 0xb6, 0x92, 0x4d, 0xa9, 0x5c, 0x5a, 0x35, 0x09, 0xc6, 0xea, 0xdf, 0xee, 0x85, 0x3c, 0xeb, - 0xf6, 0xa3, 0xf1, 0xbb, 0x97, 0xf1, 0x5b, 0x84, 0xd1, 0xdb, 0xb6, 0x73, 0xc7, 0xb4, 0xea, 0x81, + 0x7d, 0x76, 0xe9, 0xa3, 0x6c, 0xf0, 0xdd, 0x1b, 0x65, 0x43, 0xef, 0xc2, 0xb5, 0xf8, 0xf0, 0x7e, + 0x5d, 0x8b, 0x8f, 0xec, 0xf2, 0x5a, 0x5c, 0x7d, 0x1b, 0x06, 0x27, 0x16, 0xa7, 0x83, 0xd1, 0x7b, + 0x06, 0x72, 0x8b, 0xc2, 0x52, 0x21, 0xcf, 0xf7, 0x33, 0x2d, 0xd3, 0xd0, 0x18, 0x8c, 0x5c, 0x86, + 0xfe, 0x49, 0x34, 0x7f, 0x13, 0xaf, 0x88, 0x79, 0xbe, 0xfe, 0xd5, 0x10, 0x86, 0x56, 0xb0, 0x3e, + 0x9a, 0x3c, 0x06, 0x7d, 0x8b, 0x8e, 0x5d, 0x77, 0xf4, 0xa6, 0x58, 0x83, 0xd1, 0x54, 0xa4, 0xc5, + 0x41, 0x9a, 0x8f, 0x53, 0x7f, 0x34, 0xe3, 0x6f, 0xdb, 0x59, 0x89, 0x4a, 0x1b, 0xaf, 0xe6, 0xb1, + 0xee, 0x7e, 0x5e, 0xc2, 0xe5, 0x20, 0xcd, 0xc7, 0x91, 0xcb, 0xd0, 0x3b, 0xe5, 0x38, 0xb6, 0x23, + 0xdb, 0xb8, 0x53, 0x06, 0x90, 0x9f, 0x7b, 0x91, 0x82, 0x3c, 0x0f, 0x83, 0x7c, 0xce, 0xe1, 0x37, + 0x9a, 0xb9, 0x6e, 0x2f, 0xa5, 0x32, 0xa5, 0xfa, 0xf5, 0x9c, 0xb4, 0x67, 0xe3, 0x12, 0x7f, 0x00, + 0x5f, 0x05, 0x9e, 0x81, 0xdc, 0xc4, 0xe2, 0xb4, 0x98, 0x00, 0x8f, 0xfb, 0x45, 0x25, 0x55, 0x89, + 0x95, 0x63, 0xd4, 0xe4, 0x1c, 0xe4, 0x17, 0x99, 0xfa, 0x14, 0x50, 0x3d, 0xfa, 0x37, 0x37, 0xc6, + 0xf3, 0x2d, 0xa6, 0x3f, 0x08, 0x45, 0x2c, 0x3b, 0xcc, 0xf0, 0x13, 0x13, 0xc7, 0x86, 0xe7, 0x98, + 0x73, 0x90, 0x2f, 0x3a, 0xf5, 0x7b, 0x62, 0xd6, 0x42, 0xac, 0xee, 0xd4, 0xef, 0x69, 0x08, 0x25, + 0x57, 0x01, 0x34, 0xea, 0xb5, 0x1d, 0x0b, 0xdd, 0x4f, 0x06, 0xf0, 0xfe, 0x0d, 0x67, 0x43, 0x07, + 0xa1, 0xd5, 0x9a, 0x6d, 0x50, 0x4d, 0x22, 0x51, 0x7f, 0x31, 0x7c, 0xd8, 0x29, 0x99, 0xee, 0xdd, + 0xa3, 0x2e, 0xdc, 0x41, 0x17, 0xea, 0xe2, 0x8a, 0x33, 0xd9, 0x49, 0xe3, 0xd0, 0x3b, 0xdd, 0xd0, + 0xeb, 0x2e, 0xf6, 0xa1, 0xb0, 0x25, 0x5b, 0x61, 0x00, 0x8d, 0xc3, 0x63, 0xfd, 0xd4, 0xbf, 0x75, + 0x3f, 0x7d, 0xb9, 0x37, 0x18, 0x6d, 0xf3, 0xd4, 0x5b, 0xb3, 0x9d, 0xa3, 0xae, 0xda, 0x6e, 0x57, + 0x5d, 0x84, 0xbe, 0x8a, 0x53, 0x93, 0xae, 0x2e, 0xf0, 0x3c, 0xe0, 0x3a, 0x35, 0x7e, 0x6d, 0xe1, + 0x23, 0x19, 0x5d, 0xc9, 0xf5, 0x90, 0xae, 0x2f, 0xa4, 0x33, 0x5c, 0x4f, 0xd0, 0x09, 0xa4, 0xa0, + 0x5b, 0xb4, 0x1d, 0x4f, 0x74, 0x5c, 0x40, 0xd7, 0xb2, 0x1d, 0x4f, 0xf3, 0x91, 0xe4, 0x03, 0x00, + 0x4b, 0x93, 0x8b, 0xbe, 0xb1, 0xfd, 0x40, 0x68, 0x0b, 0x28, 0xac, 0xec, 0x35, 0x09, 0x4d, 0x96, + 0x60, 0x60, 0xa1, 0x45, 0x1d, 0x7e, 0x14, 0xe2, 0x0e, 0x25, 0xef, 0x8f, 0x89, 0x56, 0xf4, 0xfb, + 0x15, 0xf1, 0x7f, 0x40, 0xce, 0xd7, 0x17, 0xdb, 0xff, 0xa9, 0x85, 0x8c, 0xc8, 0xf3, 0x50, 0x28, + 0xf2, 0x7d, 0xde, 0x20, 0xb2, 0x0c, 0x44, 0x86, 0x47, 0x50, 0x8e, 0xe2, 0x67, 0x76, 0x1d, 0xff, + 0xd6, 0x04, 0xb9, 0x7a, 0x19, 0x46, 0xe3, 0xd5, 0x90, 0x41, 0xe8, 0x9b, 0x5c, 0x98, 0x9f, 0x9f, + 0x9a, 0x5c, 0x1a, 0xed, 0x21, 0xfd, 0x90, 0xaf, 0x4c, 0xcd, 0x97, 0x46, 0x33, 0xea, 0xaf, 0x4a, + 0x33, 0x08, 0x53, 0xad, 0xa3, 0xa7, 0xe1, 0x3d, 0xbd, 0xb7, 0x8c, 0xe2, 0x7b, 0x28, 0xde, 0x18, + 0x34, 0x4d, 0xcf, 0xa3, 0x86, 0x58, 0x25, 0xf0, 0xbd, 0xd0, 0xbb, 0xaf, 0x25, 0xf0, 0xe4, 0x09, + 0x18, 0x46, 0x98, 0x78, 0x22, 0xe4, 0xe7, 0x63, 0x51, 0xc0, 0xb9, 0xaf, 0x45, 0x91, 0xea, 0x37, + 0xc2, 0xd7, 0xe1, 0x59, 0xaa, 0x1f, 0xd6, 0x17, 0xc5, 0xf7, 0x48, 0x7f, 0xa9, 0x7f, 0x9f, 0xe7, + 0x2e, 0x20, 0xdc, 0x5f, 0xf0, 0x20, 0x44, 0x19, 0x5e, 0xe9, 0xe6, 0x76, 0x70, 0xa5, 0xfb, 0x04, + 0x14, 0xe6, 0xa8, 0xb7, 0x6a, 0xfb, 0x86, 0x5f, 0x68, 0xa1, 0xd7, 0x44, 0x88, 0x6c, 0xa1, 0xc7, + 0x69, 0xc8, 0x5d, 0x20, 0xbe, 0x33, 0x60, 0x60, 0x88, 0xed, 0x5f, 0x21, 0x9f, 0x4e, 0x9c, 0x53, + 0x2a, 0xe8, 0x09, 0x8c, 0x36, 0xf6, 0x27, 0x02, 0x43, 0x6f, 0xc9, 0x12, 0xeb, 0xef, 0x36, 0xc6, + 0x0b, 0x9c, 0x46, 0x4b, 0x61, 0x4b, 0xde, 0x80, 0x81, 0xb9, 0xe9, 0xa2, 0x70, 0x0c, 0xe4, 0x56, + 0x11, 0x67, 0x02, 0x29, 0xfa, 0x88, 0x40, 0x24, 0xe8, 0x6f, 0xd3, 0x5c, 0xd1, 0x93, 0x7e, 0x81, + 0x21, 0x17, 0xa6, 0x2d, 0xdc, 0x73, 0x47, 0xdc, 0x2e, 0x04, 0xda, 0x12, 0xf5, 0xe7, 0x89, 0xcb, + 0x8a, 0x63, 0x63, 0xda, 0xd2, 0xbf, 0x87, 0xd1, 0xbd, 0x00, 0x63, 0xc5, 0x56, 0xab, 0x61, 0x52, + 0x03, 0xf5, 0x45, 0x6b, 0x37, 0xa8, 0x2b, 0x4c, 0x7e, 0xd0, 0x19, 0x44, 0xe7, 0xc8, 0x2a, 0xba, + 0xa3, 0x56, 0x9d, 0x76, 0xd4, 0x3e, 0x33, 0x59, 0x56, 0xfd, 0xf1, 0x2c, 0x9c, 0x9a, 0x74, 0xa8, + 0xee, 0xd1, 0xb9, 0xe9, 0x62, 0xb1, 0x8d, 0x36, 0x72, 0x8d, 0x06, 0xb5, 0xea, 0x07, 0x33, 0xac, + 0x5f, 0x82, 0x91, 0xa0, 0x01, 0x95, 0x9a, 0xdd, 0xa2, 0xb2, 0x63, 0x55, 0xcd, 0xc7, 0x54, 0x5d, + 0x86, 0xd2, 0x62, 0xa4, 0xe4, 0x26, 0x1c, 0x0f, 0x20, 0xc5, 0x46, 0xc3, 0x5e, 0xd3, 0x68, 0xdb, + 0xe5, 0x86, 0xb1, 0xfd, 0xdc, 0x30, 0x36, 0xe4, 0xa0, 0x33, 0x7c, 0xd5, 0x61, 0x04, 0x5a, 0x5a, + 0x29, 0xf5, 0x2b, 0x39, 0x38, 0x7d, 0x5b, 0x6f, 0x98, 0x46, 0x28, 0x1a, 0x8d, 0xba, 0x2d, 0xdb, + 0x72, 0xe9, 0x21, 0x1a, 0xa5, 0x91, 0xa1, 0x90, 0xdf, 0x97, 0xa1, 0x90, 0xec, 0xa2, 0xde, 0x3d, + 0x77, 0x51, 0x61, 0x57, 0x5d, 0xf4, 0xcf, 0x32, 0x30, 0xea, 0x1b, 0xfe, 0xcb, 0x4e, 0xdc, 0x92, + 0x55, 0x3a, 0x5e, 0x21, 0xc6, 0xec, 0xa0, 0x11, 0x4f, 0x2a, 0xd0, 0x37, 0x75, 0xbf, 0x65, 0x3a, + 0xd4, 0xdd, 0x86, 0x11, 0xf7, 0x79, 0x71, 0x5d, 0x32, 0x46, 0x79, 0x91, 0xc4, 0x4d, 0x09, 0x07, + 0xa3, 0x3b, 0x1f, 0x77, 0x7d, 0x98, 0xf0, 0x3d, 0xd3, 0xb9, 0x3b, 0x9f, 0x70, 0x91, 0x88, 0xf8, + 0x67, 0x86, 0xa4, 0xe4, 0x51, 0xc8, 0x2d, 0x2d, 0xcd, 0x8a, 0x99, 0x14, 0x23, 0x02, 0x78, 0x9e, + 0xec, 0xaf, 0xc8, 0xb0, 0xea, 0x5f, 0x66, 0x01, 0x98, 0x2a, 0xf0, 0xe1, 0x7a, 0x20, 0x4a, 0x38, + 0x01, 0xfd, 0xbe, 0xc0, 0x85, 0x1a, 0x06, 0x56, 0xfb, 0xf1, 0x8e, 0x88, 0xd7, 0x1d, 0x78, 0x68, + 0x8c, 0xfb, 0x86, 0xe4, 0xfc, 0x1d, 0x00, 0x4f, 0x36, 0x68, 0x48, 0xee, 0x9b, 0x8f, 0x7f, 0x00, + 0x06, 0xc4, 0x8c, 0x67, 0x47, 0xee, 0xff, 0x6b, 0x3e, 0x50, 0x0b, 0xf1, 0xb1, 0xa9, 0xb5, 0xb0, + 0x87, 0x85, 0xd8, 0x17, 0x2f, 0xef, 0x95, 0x23, 0xf1, 0xee, 0xb3, 0x78, 0xbf, 0x20, 0xc4, 0xcb, + 0x3d, 0x78, 0x0e, 0xad, 0x78, 0xf7, 0xed, 0xee, 0x5b, 0xfd, 0xb3, 0x0c, 0x10, 0xd6, 0xac, 0x45, + 0xdd, 0x75, 0xd7, 0x6c, 0xc7, 0xe0, 0xc6, 0xe9, 0x07, 0x22, 0x98, 0xfd, 0x7b, 0xaf, 0xfc, 0x7a, + 0x3f, 0x1c, 0x8f, 0x18, 0xfe, 0x1e, 0xf2, 0xc9, 0xea, 0x72, 0x74, 0x34, 0x75, 0xf3, 0x7a, 0x79, + 0x9f, 0xfc, 0x20, 0xda, 0x1b, 0x71, 0x40, 0x93, 0x5e, 0x42, 0x9f, 0x84, 0x21, 0xf1, 0x83, 0xad, + 0xd0, 0xfe, 0x4b, 0x17, 0x8e, 0x52, 0x97, 0x01, 0xb4, 0x08, 0x9a, 0x3c, 0x0b, 0x03, 0x6c, 0xc0, + 0xd4, 0x31, 0x78, 0x48, 0x5f, 0xe8, 0x51, 0x62, 0xf8, 0x40, 0x79, 0x3d, 0x09, 0x28, 0x25, 0x3f, + 0xa2, 0xfe, 0x6d, 0xf8, 0x11, 0x7d, 0x02, 0x06, 0x8b, 0x96, 0x65, 0x7b, 0x78, 0x48, 0x77, 0xc5, + 0xd3, 0x44, 0xc7, 0x5d, 0xf9, 0xa3, 0xe8, 0x1c, 0x1f, 0xd2, 0xa7, 0x6e, 0xcb, 0x65, 0x86, 0xe4, + 0x9a, 0xef, 0x15, 0x43, 0x1d, 0x61, 0x55, 0x8e, 0xcf, 0x33, 0x8e, 0x80, 0x25, 0x9d, 0x62, 0xb0, + 0xf3, 0x86, 0x17, 0x1d, 0xbb, 0x65, 0xbb, 0xd4, 0xe0, 0x82, 0x1a, 0x0c, 0x43, 0x0d, 0xb4, 0x04, + 0x02, 0xfd, 0xd8, 0x22, 0x81, 0x3c, 0x22, 0x45, 0xc8, 0x0a, 0x9c, 0xf0, 0x1f, 0x8a, 0x03, 0x8f, + 0xc1, 0x72, 0xc9, 0x55, 0x86, 0xd0, 0x2b, 0x89, 0xc4, 0x95, 0xa1, 0x5c, 0x9a, 0xb8, 0xe0, 0x3f, + 0x8b, 0xf8, 0x2e, 0x87, 0x55, 0xd3, 0x90, 0xbb, 0x3a, 0x95, 0x1f, 0xf9, 0x1e, 0x18, 0x9c, 0xd3, + 0xef, 0x97, 0xda, 0xe2, 0xee, 0x65, 0x78, 0xfb, 0xaf, 0x2f, 0x4d, 0xfd, 0x7e, 0xd5, 0x10, 0xe5, + 0x62, 0x7b, 0x0a, 0x99, 0x25, 0xa9, 0xc2, 0xa9, 0x45, 0xc7, 0x6e, 0xda, 0x1e, 0x35, 0x62, 0xce, + 0x77, 0xc7, 0x42, 0x6f, 0xdd, 0x96, 0xa0, 0xa8, 0x76, 0xf1, 0xc2, 0xeb, 0xc0, 0x86, 0x34, 0xe1, + 0x58, 0xd1, 0x75, 0xdb, 0x4d, 0x1a, 0xbe, 0x50, 0x8d, 0x6e, 0xf9, 0x19, 0xef, 0x17, 0x56, 0xcb, + 0x0f, 0xe9, 0x58, 0x94, 0x3f, 0x50, 0x55, 0x3d, 0x53, 0xae, 0x11, 0xbf, 0x25, 0xce, 0xfb, 0xf5, + 0x7c, 0xff, 0xc8, 0xe8, 0x31, 0xed, 0x74, 0xb2, 0x31, 0x4b, 0xa6, 0xd7, 0xa0, 0xea, 0xd7, 0x32, + 0x00, 0xa1, 0x80, 0xc9, 0x93, 0xd1, 0x08, 0x45, 0x99, 0xf0, 0xa1, 0x43, 0x44, 0x2f, 0x88, 0x84, + 0x24, 0x22, 0xe7, 0x20, 0x8f, 0x11, 0x2e, 0xb2, 0xe1, 0xc5, 0xea, 0x5d, 0xd3, 0x32, 0x34, 0x84, + 0x32, 0xac, 0xe4, 0x8a, 0x8e, 0x58, 0x7c, 0xd4, 0xe7, 0xbb, 0xc2, 0x12, 0x1c, 0xab, 0xb4, 0x97, + 0xfd, 0xba, 0x25, 0xbf, 0x3a, 0x0c, 0xb4, 0xe1, 0xb6, 0x97, 0x03, 0x67, 0xd4, 0x48, 0x18, 0x93, + 0x68, 0x11, 0xf5, 0xd7, 0x33, 0xb1, 0x59, 0xf0, 0x00, 0x17, 0xbd, 0xf7, 0x25, 0xed, 0x34, 0x92, + 0xd3, 0x92, 0xfa, 0xb3, 0x59, 0x18, 0x5c, 0xb4, 0x1d, 0x4f, 0x84, 0x0c, 0x39, 0xdc, 0xab, 0x90, + 0x74, 0x56, 0xca, 0xef, 0xe0, 0xac, 0x74, 0x0e, 0xf2, 0x92, 0x89, 0x32, 0x7f, 0x17, 0x31, 0x0c, + 0x47, 0x43, 0xa8, 0xfa, 0xbd, 0x59, 0x80, 0x0f, 0x3f, 0xfd, 0xf4, 0x03, 0x2c, 0x20, 0xf5, 0xa7, + 0x33, 0x70, 0x4c, 0x3c, 0xd4, 0x49, 0xb1, 0xbe, 0xfa, 0xfc, 0x27, 0x56, 0x79, 0x5c, 0x72, 0x90, + 0xe6, 0xe3, 0xd8, 0x12, 0x30, 0x75, 0xdf, 0xf4, 0xf0, 0xad, 0x42, 0x0a, 0xf6, 0x45, 0x05, 0x4c, + 0x5e, 0x02, 0x7c, 0x3a, 0xf2, 0xa4, 0xff, 0x04, 0x99, 0x0b, 0xd7, 0x3d, 0x56, 0x60, 0x2a, 0xf5, + 0x19, 0x52, 0xfd, 0xad, 0x3c, 0xe4, 0xa7, 0xee, 0xd3, 0xda, 0x21, 0xef, 0x1a, 0xe9, 0x62, 0x33, + 0xbf, 0xc7, 0x8b, 0xcd, 0xdd, 0xd8, 0x54, 0xbc, 0x1a, 0xf6, 0x67, 0x21, 0x5a, 0x7d, 0xac, 0xe7, + 0xe3, 0xd5, 0xfb, 0x3d, 0x7d, 0xf8, 0x4c, 0x72, 0xfe, 0xb7, 0x1c, 0xe4, 0x2a, 0x93, 0x8b, 0x47, + 0x7a, 0x73, 0xa0, 0x7a, 0xd3, 0xfd, 0xcd, 0x5a, 0x0d, 0x9e, 0xa1, 0xfa, 0x43, 0x2b, 0xd1, 0xd8, + 0x8b, 0xd3, 0xb7, 0x73, 0x30, 0x52, 0x99, 0x5e, 0x5a, 0x94, 0x6e, 0x82, 0x6f, 0x72, 0x4b, 0x3e, + 0xb4, 0x29, 0xe3, 0x5d, 0x7a, 0x2e, 0xb1, 0x9f, 0xb9, 0x55, 0xb6, 0xbc, 0xe7, 0xae, 0xdf, 0xd6, + 0x1b, 0x6d, 0x8a, 0x57, 0x2f, 0xdc, 0xee, 0xd7, 0x35, 0xdf, 0xa6, 0x5f, 0x41, 0xc7, 0x7f, 0x9f, + 0x01, 0x79, 0x09, 0x72, 0xb7, 0x84, 0x45, 0x46, 0x27, 0x3e, 0xcf, 0x5c, 0xe3, 0x7c, 0xd8, 0x24, + 0x98, 0x6b, 0x9b, 0x06, 0x72, 0x60, 0xa5, 0x58, 0xe1, 0x1b, 0x62, 0x01, 0xde, 0x56, 0xe1, 0xba, + 0x5f, 0xf8, 0x46, 0xb9, 0x44, 0x2a, 0x30, 0xb8, 0x48, 0x9d, 0xa6, 0x89, 0x1d, 0xe5, 0xcf, 0xd9, + 0xdd, 0x99, 0xb0, 0x93, 0xca, 0x60, 0x2b, 0x2c, 0x84, 0xcc, 0x64, 0x2e, 0xe4, 0x4d, 0x00, 0xbe, + 0x47, 0xd9, 0x66, 0xfc, 0xc8, 0xf3, 0xb8, 0xef, 0xe7, 0x5b, 0xcb, 0x94, 0x3d, 0x9e, 0xc4, 0x8c, + 0xdc, 0x85, 0xd1, 0x39, 0xdb, 0x30, 0x57, 0x4c, 0x6e, 0x7a, 0x89, 0x15, 0x14, 0xb6, 0x36, 0x78, + 0x62, 0x5b, 0xc9, 0xa6, 0x54, 0x2e, 0xad, 0x9a, 0x04, 0x63, 0xf5, 0x7f, 0xee, 0x85, 0x3c, 0xeb, + 0xf6, 0xa3, 0xf1, 0xbb, 0x97, 0xf1, 0x5b, 0x84, 0xd1, 0x3b, 0xb6, 0x73, 0xd7, 0xb4, 0xea, 0x81, 0x55, 0xbc, 0x38, 0x9b, 0xa2, 0x25, 0xcf, 0x1a, 0xc7, 0x55, 0x03, 0x03, 0x7a, 0x2d, 0x41, 0xbe, - 0xc5, 0x08, 0x7e, 0x1e, 0x80, 0xfb, 0xba, 0x23, 0x4d, 0x7f, 0x18, 0xac, 0x82, 0x7b, 0xc2, 0xa3, + 0xc5, 0x08, 0x7e, 0x01, 0x80, 0xfb, 0xba, 0x23, 0x4d, 0x7f, 0x18, 0xac, 0x82, 0x7b, 0xc2, 0xa3, 0xa1, 0xbd, 0x1c, 0xac, 0x22, 0x24, 0x66, 0x87, 0x70, 0x6e, 0x0b, 0x31, 0x80, 0x76, 0xf7, 0x78, 0x08, 0x47, 0x5b, 0x08, 0x79, 0x13, 0xc0, 0xad, 0x22, 0x16, 0x01, 0xa4, 0xf7, 0x25, 0x88, 0x09, - 0x22, 0x32, 0x39, 0x88, 0xf0, 0x70, 0x29, 0xcf, 0x4b, 0x9a, 0xc4, 0x83, 0x3c, 0x1b, 0x7b, 0x00, - 0x27, 0x11, 0x6e, 0x1d, 0xdf, 0xbf, 0x43, 0x03, 0xaa, 0xa1, 0xad, 0x0c, 0xa8, 0xd4, 0xcf, 0x64, + 0x22, 0x32, 0x39, 0x88, 0xf0, 0x70, 0x29, 0xcf, 0x4b, 0x9a, 0xc4, 0x83, 0x3c, 0x17, 0x7b, 0x00, + 0x27, 0x11, 0x6e, 0x1d, 0xdf, 0xbf, 0x43, 0x03, 0xaa, 0xa1, 0xad, 0x0c, 0xa8, 0xd4, 0xcf, 0x65, 0x61, 0xa0, 0xd2, 0x5e, 0x76, 0xd7, 0x5d, 0x8f, 0x36, 0x0f, 0xb9, 0x1a, 0xfb, 0xc7, 0xab, 0x7c, - 0xea, 0xf1, 0xea, 0x11, 0x5f, 0x28, 0xd2, 0xbd, 0x63, 0xb0, 0xa5, 0xf3, 0xc5, 0xf1, 0xff, 0x65, + 0xea, 0xf1, 0xea, 0x51, 0x5f, 0x28, 0xd2, 0xbd, 0x63, 0xb0, 0xa5, 0xf3, 0xc5, 0xf1, 0x3f, 0x64, 0x61, 0x94, 0x3f, 0x9c, 0x95, 0x4c, 0xb7, 0xb6, 0x0f, 0xc6, 0xfc, 0x07, 0x2f, 0x95, 0xbd, 0x3d, - 0x36, 0x6f, 0xc3, 0x45, 0x42, 0xfd, 0x44, 0x16, 0x06, 0x8b, 0x6d, 0x6f, 0xb5, 0xe8, 0xa1, 0x6e, - 0xdd, 0x97, 0xe7, 0x93, 0xdf, 0xcd, 0xc0, 0x31, 0xd6, 0x90, 0x25, 0xfb, 0x0e, 0xb5, 0xf6, 0xe1, + 0x36, 0x6f, 0xc3, 0x45, 0x42, 0xfd, 0x54, 0x16, 0x06, 0x8b, 0x6d, 0x6f, 0xb5, 0xe8, 0xa1, 0x6e, + 0x3d, 0x90, 0xe7, 0x93, 0x3f, 0xcc, 0xc0, 0x31, 0xd6, 0x90, 0x25, 0xfb, 0x2e, 0xb5, 0xf6, 0xe1, 0xe2, 0x51, 0xbe, 0x40, 0xcc, 0xee, 0xf2, 0x02, 0xd1, 0x97, 0x65, 0x6e, 0x67, 0xb2, 0xc4, 0xeb, 0x72, 0xcd, 0x6e, 0xd0, 0xc3, 0xfd, 0x19, 0xfb, 0x78, 0x5d, 0xee, 0x0b, 0x64, 0x1f, 0x9e, 0x67, - 0xbe, 0xbd, 0x04, 0xb2, 0x0f, 0x77, 0x4b, 0xdf, 0x1e, 0x02, 0xf9, 0x6a, 0x06, 0x06, 0x26, 0x6c, + 0xbe, 0xbb, 0x04, 0xb2, 0x0f, 0x77, 0x4b, 0xdf, 0x1d, 0x02, 0xf9, 0x7a, 0x06, 0x06, 0x26, 0x6c, 0xef, 0x90, 0x0f, 0x7c, 0xf1, 0x15, 0x87, 0x5b, 0xcd, 0xfd, 0xaf, 0x38, 0xdc, 0xba, 0xa9, 0xfe, - 0x48, 0x16, 0x4e, 0x88, 0xd8, 0xe0, 0xe2, 0xfe, 0xe1, 0x68, 0x3a, 0x16, 0x83, 0x2d, 0x29, 0x9a, - 0xa3, 0x79, 0x48, 0x88, 0xe6, 0xe7, 0x72, 0x70, 0x02, 0x43, 0x99, 0xb2, 0x63, 0xd9, 0xb7, 0xc1, - 0x5e, 0x84, 0xd4, 0xa2, 0x8f, 0xa0, 0x73, 0x29, 0x8f, 0xa0, 0x7f, 0xb5, 0x31, 0xfe, 0x6c, 0xdd, - 0xf4, 0x56, 0xdb, 0xcb, 0x97, 0x6b, 0x76, 0xf3, 0x4a, 0xdd, 0xd1, 0xef, 0x9a, 0xfc, 0xf9, 0x4f, - 0x6f, 0x5c, 0x09, 0xd2, 0x6c, 0xe8, 0x2d, 0x53, 0x24, 0xe0, 0xa8, 0xe0, 0x59, 0x87, 0x71, 0xf5, - 0x9f, 0x4f, 0x5d, 0x80, 0xd7, 0x6c, 0xd3, 0x12, 0x36, 0x85, 0x7c, 0xa3, 0x5b, 0x61, 0xe7, 0xc3, - 0x37, 0x6d, 0xd3, 0xaa, 0xc6, 0x0d, 0x0b, 0x77, 0x5a, 0x5f, 0xc8, 0x5a, 0x93, 0xaa, 0x51, 0xff, - 0x51, 0x06, 0x1e, 0x88, 0x6a, 0xf1, 0xb7, 0xc3, 0xde, 0xf1, 0x47, 0xb3, 0x70, 0xf2, 0x3a, 0x0a, + 0x44, 0x16, 0x4e, 0x88, 0xd8, 0xe0, 0xe2, 0xfe, 0xe1, 0x68, 0x3a, 0x16, 0x83, 0x2d, 0x29, 0x9a, + 0xa3, 0x79, 0x48, 0x88, 0xe6, 0x97, 0x72, 0x70, 0x02, 0x43, 0x99, 0xb2, 0x63, 0xd9, 0x77, 0xc1, + 0x5e, 0x84, 0xd4, 0xa2, 0x8f, 0xa0, 0x73, 0x29, 0x8f, 0xa0, 0x7f, 0xb7, 0x31, 0xfe, 0x5c, 0xdd, + 0xf4, 0x56, 0xdb, 0xcb, 0x57, 0x6a, 0x76, 0xf3, 0x6a, 0xdd, 0xd1, 0xef, 0x99, 0xfc, 0xf9, 0x4f, + 0x6f, 0x5c, 0x0d, 0xd2, 0x6c, 0xe8, 0x2d, 0x53, 0x24, 0xe0, 0xa8, 0xe0, 0x59, 0x87, 0x71, 0xf5, + 0x9f, 0x4f, 0x5d, 0x80, 0xd7, 0x6d, 0xd3, 0x12, 0x36, 0x85, 0x7c, 0xa3, 0x5b, 0x61, 0xe7, 0xc3, + 0xb7, 0x6c, 0xd3, 0xaa, 0xc6, 0x0d, 0x0b, 0x77, 0x5a, 0x5f, 0xc8, 0x5a, 0x93, 0xaa, 0x51, 0xff, + 0xaf, 0x0c, 0x9c, 0x89, 0x6a, 0xf1, 0x77, 0xc3, 0xde, 0xf1, 0x27, 0xb3, 0x70, 0xf2, 0x06, 0x0a, 0x27, 0x30, 0xe4, 0x38, 0x9a, 0xb7, 0xc4, 0xe0, 0x4c, 0x91, 0xcd, 0xd1, 0x8e, 0xb2, 0xb3, 0x6c, - 0x8e, 0x26, 0x75, 0x21, 0x9b, 0xdf, 0xcb, 0xc0, 0xf1, 0x85, 0x72, 0x69, 0xf2, 0xdb, 0x64, 0x44, - 0x25, 0xbf, 0xe7, 0x90, 0x6f, 0x38, 0x13, 0xdf, 0x73, 0xc8, 0xb7, 0x9e, 0x5f, 0xc8, 0xc2, 0xf1, - 0x4a, 0x71, 0x6e, 0xf6, 0xdb, 0x65, 0x06, 0x9f, 0x94, 0xad, 0x0e, 0xfd, 0x4b, 0x30, 0xb1, 0x17, - 0x90, 0x3f, 0xf3, 0xd6, 0xd5, 0xce, 0xd6, 0x88, 0x49, 0xa1, 0x1c, 0xf2, 0xa9, 0x7b, 0x5f, 0x84, - 0xc2, 0x34, 0x3f, 0x42, 0x7d, 0xc8, 0x35, 0xff, 0xef, 0x16, 0x60, 0xf0, 0x46, 0x7b, 0x99, 0x0a, - 0xe3, 0x94, 0xfb, 0xfa, 0xe6, 0xf7, 0x2a, 0x0c, 0x0a, 0x31, 0xe0, 0xab, 0x89, 0x14, 0x3c, 0x4f, - 0x04, 0x43, 0xe1, 0xf1, 0x89, 0x64, 0x22, 0x72, 0x16, 0xf2, 0xb7, 0xa8, 0xb3, 0x2c, 0xfb, 0x95, - 0xde, 0xa5, 0xce, 0xb2, 0x86, 0x50, 0x32, 0x1b, 0x9a, 0xcc, 0x17, 0x17, 0xcb, 0x98, 0x48, 0x45, - 0x3c, 0xd8, 0x60, 0x66, 0x98, 0xc0, 0xee, 0x4d, 0x6f, 0x99, 0x3c, 0x05, 0x8b, 0xec, 0xd3, 0x1e, - 0x2f, 0x49, 0xe6, 0x61, 0x4c, 0x36, 0x7c, 0xe2, 0x59, 0x44, 0xfa, 0x53, 0xd8, 0xa5, 0xe5, 0x0f, - 0x49, 0x16, 0x25, 0xaf, 0xc0, 0x90, 0x0f, 0x44, 0x13, 0xae, 0x81, 0x30, 0x74, 0x7d, 0xc0, 0x2a, - 0x96, 0xa2, 0x28, 0x52, 0x40, 0x66, 0x80, 0xcf, 0x10, 0x90, 0xc2, 0x20, 0x66, 0x12, 0x17, 0x29, - 0x40, 0x9e, 0x41, 0x06, 0xe8, 0xe6, 0x81, 0xc6, 0x2a, 0x83, 0xe8, 0x74, 0x89, 0x26, 0xf9, 0x8e, - 0x80, 0x73, 0xd7, 0xda, 0x08, 0x19, 0x59, 0x00, 0x08, 0x8d, 0x0a, 0x44, 0x00, 0x83, 0x1d, 0x9b, - 0x3b, 0x48, 0x2c, 0xe4, 0xe7, 0xc0, 0xe1, 0xdd, 0x3c, 0x07, 0xaa, 0x7f, 0x98, 0x85, 0xc1, 0x62, - 0xab, 0x15, 0x0c, 0x85, 0x27, 0xa0, 0x50, 0x6c, 0xb5, 0x6e, 0x6a, 0x65, 0x39, 0x94, 0xb9, 0xde, - 0x6a, 0x55, 0xdb, 0x8e, 0x29, 0xdb, 0x84, 0x72, 0x22, 0x32, 0x09, 0xc3, 0xc5, 0x56, 0x6b, 0xb1, - 0xbd, 0xdc, 0x30, 0x6b, 0x52, 0x66, 0x24, 0x9e, 0x3b, 0xae, 0xd5, 0xaa, 0xb6, 0x10, 0x13, 0x4f, - 0x8f, 0x15, 0x2d, 0x43, 0x3e, 0x86, 0x61, 0x7f, 0x44, 0x62, 0x1e, 0x9e, 0xfa, 0x43, 0x0d, 0x82, - 0x98, 0x87, 0x6d, 0xbb, 0x1c, 0x10, 0xf1, 0x60, 0xef, 0x67, 0xfd, 0x90, 0xf9, 0xac, 0xa2, 0x44, - 0x02, 0x9e, 0x90, 0x25, 0x79, 0x12, 0xfa, 0x8a, 0xad, 0x96, 0xf4, 0xde, 0x84, 0x46, 0x45, 0xac, - 0x54, 0x3c, 0xf7, 0x99, 0x20, 0x3b, 0xf3, 0x12, 0x8c, 0x44, 0x2b, 0xdb, 0x51, 0xb0, 0xf8, 0x6f, - 0x65, 0xf0, 0x83, 0x0e, 0xb9, 0x4d, 0xf3, 0xd3, 0x90, 0x2b, 0xb6, 0x5a, 0x62, 0x3e, 0x3a, 0x9e, - 0xd2, 0x1f, 0x71, 0x17, 0xe8, 0x62, 0xab, 0xe5, 0x7f, 0xfa, 0x21, 0x77, 0x8e, 0xd8, 0xd5, 0xa7, - 0x7f, 0x95, 0x7f, 0xfa, 0xe1, 0x76, 0x5c, 0x50, 0x7f, 0x2d, 0x07, 0xc7, 0x8a, 0xad, 0xd6, 0x51, - 0x90, 0xf9, 0xfd, 0x72, 0xb4, 0x7e, 0x0a, 0x40, 0x9a, 0x1e, 0xfb, 0x02, 0xd7, 0xad, 0x41, 0x69, - 0x6a, 0x54, 0x32, 0x9a, 0x44, 0xe4, 0xab, 0x5f, 0xff, 0x8e, 0xd4, 0xef, 0x13, 0x39, 0x9c, 0x8a, - 0x0f, 0x7b, 0xd0, 0xa8, 0x77, 0x4b, 0xb7, 0x89, 0x3e, 0x28, 0xec, 0xa8, 0x0f, 0x7e, 0x27, 0x32, - 0x78, 0x30, 0x68, 0xf9, 0x51, 0x2f, 0xf4, 0xee, 0x69, 0x5b, 0x3c, 0x22, 0x0b, 0x53, 0x44, 0xb2, - 0xf1, 0x13, 0x29, 0x89, 0xb8, 0x4a, 0x35, 0x86, 0xaa, 0x9a, 0x86, 0x16, 0xa3, 0xf5, 0xfb, 0xb0, - 0x6f, 0x47, 0x7d, 0xb8, 0x91, 0x45, 0xdf, 0xe9, 0x20, 0x2e, 0xd3, 0xde, 0x4f, 0x17, 0x57, 0x00, - 0xb8, 0xe5, 0x41, 0x60, 0xd6, 0x3c, 0xcc, 0x43, 0xb0, 0xf0, 0xfc, 0x4a, 0x22, 0x04, 0x4b, 0x48, - 0x12, 0x58, 0x48, 0xe5, 0x52, 0x2d, 0xa4, 0x2e, 0x41, 0xbf, 0xa6, 0xaf, 0xbd, 0xde, 0xa6, 0xce, - 0xba, 0xd8, 0xce, 0xf0, 0xb0, 0x87, 0xfa, 0x5a, 0xf5, 0xe3, 0x0c, 0xa8, 0x05, 0x68, 0xa2, 0x06, - 0xce, 0xf7, 0x92, 0x45, 0x08, 0xbf, 0x23, 0x0f, 0x5c, 0xee, 0x77, 0xa3, 0xe8, 0xe4, 0x05, 0xc8, - 0x15, 0x6f, 0x57, 0x84, 0x64, 0x83, 0xae, 0x2d, 0xde, 0xae, 0x08, 0x79, 0x75, 0x2c, 0x7b, 0xbb, - 0xa2, 0x7e, 0x22, 0x0b, 0x24, 0x49, 0x49, 0x9e, 0x85, 0x01, 0x84, 0xd6, 0x99, 0xce, 0xc8, 0x89, - 0x39, 0xd7, 0xdc, 0xaa, 0x83, 0xd0, 0xc8, 0xe6, 0xce, 0x27, 0x25, 0xcf, 0x63, 0xea, 0x63, 0x91, - 0x1a, 0x2e, 0x92, 0x98, 0x73, 0xcd, 0xf5, 0x93, 0x05, 0xc7, 0x32, 0x1f, 0x0b, 0x62, 0xdc, 0x17, - 0xde, 0xae, 0xcc, 0xd8, 0xae, 0x27, 0x44, 0xcd, 0xf7, 0x85, 0x6b, 0x2e, 0x66, 0x84, 0x8d, 0xec, - 0x0b, 0x39, 0x19, 0x66, 0xb5, 0xba, 0x5d, 0xe1, 0x6e, 0x2a, 0x86, 0x66, 0x37, 0xfc, 0x0d, 0x25, - 0xcf, 0x6a, 0xb5, 0xe6, 0x56, 0xb9, 0x8b, 0x8b, 0x81, 0x39, 0x97, 0x23, 0x59, 0xad, 0x22, 0xa5, - 0xd4, 0xcf, 0xf6, 0xc3, 0x68, 0x49, 0xf7, 0xf4, 0x65, 0xdd, 0xa5, 0xd2, 0x69, 0xfa, 0x98, 0x0f, - 0xf3, 0x3f, 0x47, 0x92, 0x83, 0xb1, 0x9c, 0xf2, 0x35, 0xf1, 0x02, 0xe4, 0xc5, 0x90, 0x6f, 0x90, - 0x73, 0x54, 0x4e, 0x62, 0xb6, 0x5c, 0x6d, 0x09, 0xb0, 0x96, 0x20, 0x24, 0x8f, 0xc3, 0xa0, 0x0f, - 0x63, 0x07, 0x80, 0x5c, 0xa8, 0x33, 0xc6, 0x32, 0xdb, 0xff, 0x6b, 0x32, 0x9a, 0x3c, 0x0f, 0x43, - 0xfe, 0x4f, 0x69, 0x6b, 0xcd, 0x33, 0xb2, 0x2d, 0x27, 0x4e, 0x4f, 0x32, 0xa9, 0x5c, 0x14, 0xe7, - 0xb7, 0xde, 0x48, 0xd1, 0x58, 0xd2, 0xb3, 0x08, 0x29, 0xf9, 0x38, 0x8c, 0xf8, 0xbf, 0xc5, 0x81, - 0x81, 0xe7, 0x87, 0x7b, 0x3c, 0x48, 0xe9, 0x1c, 0x13, 0xeb, 0xe5, 0x28, 0x39, 0x3f, 0x3a, 0x3c, - 0xe8, 0xe7, 0xf1, 0x32, 0x96, 0x93, 0x27, 0x87, 0x58, 0x05, 0xa4, 0x0c, 0x63, 0x3e, 0x24, 0xd4, - 0xd0, 0xbe, 0xf0, 0xc4, 0x68, 0x2c, 0x57, 0x53, 0x95, 0x34, 0x59, 0x8a, 0x34, 0xe0, 0x6c, 0x04, - 0x68, 0xb8, 0xab, 0xe6, 0x8a, 0x27, 0x8e, 0x7b, 0x22, 0x06, 0xb1, 0x48, 0xdc, 0x18, 0x70, 0xe5, - 0x34, 0x7e, 0x06, 0xd6, 0x68, 0x76, 0xa8, 0xae, 0xdc, 0x48, 0x05, 0x4e, 0xf8, 0xf8, 0xeb, 0x93, - 0x8b, 0x8b, 0x8e, 0xfd, 0x26, 0xad, 0x79, 0xe5, 0x92, 0x38, 0x2e, 0x63, 0x6c, 0x3a, 0x63, 0xb9, - 0x5a, 0xaf, 0xb5, 0x98, 0x52, 0x30, 0x5c, 0x94, 0x79, 0x6a, 0x61, 0x72, 0x0b, 0x4e, 0x4a, 0x70, - 0x29, 0x3d, 0x34, 0x84, 0xe7, 0x79, 0xc1, 0x35, 0x3d, 0x43, 0x74, 0x7a, 0x71, 0xf2, 0x12, 0x0c, - 0xfb, 0x08, 0xfe, 0x8a, 0x38, 0x88, 0xaf, 0x88, 0x38, 0x24, 0x8d, 0xe5, 0x6a, 0xdc, 0x9b, 0x32, - 0x4a, 0x2c, 0x6b, 0x14, 0x66, 0xd4, 0x1f, 0x8a, 0x68, 0x94, 0xb7, 0xde, 0x4a, 0x55, 0x46, 0xcc, - 0xb2, 0xff, 0x4a, 0xa8, 0x51, 0x0b, 0x8e, 0x59, 0x37, 0xf9, 0x49, 0xda, 0x77, 0xa0, 0x5c, 0xae, - 0xda, 0x08, 0x4c, 0xd3, 0x0f, 0x4e, 0x7e, 0xa6, 0x08, 0xc7, 0x53, 0x74, 0x6c, 0x47, 0x27, 0xc6, - 0xcf, 0x64, 0xc3, 0x46, 0x1c, 0xf2, 0x63, 0xe3, 0x04, 0xf4, 0xfb, 0x5f, 0x22, 0x36, 0x0f, 0x4a, - 0xa7, 0xa1, 0x19, 0xe7, 0xe1, 0xe3, 0x23, 0xe2, 0x38, 0xe4, 0x47, 0xc9, 0xfd, 0x10, 0xc7, 0xdb, - 0x99, 0x50, 0x1c, 0x87, 0xfc, 0x78, 0xf9, 0x7b, 0xb9, 0x70, 0x4e, 0x3a, 0x3a, 0x63, 0xee, 0xd7, - 0x36, 0x39, 0xb4, 0x83, 0x2d, 0xec, 0xc0, 0x91, 0x51, 0x56, 0xcd, 0xbe, 0x5d, 0xaa, 0xe6, 0x1f, - 0x27, 0xfb, 0x93, 0x6f, 0x3d, 0x0f, 0x65, 0x7f, 0xee, 0xc3, 0x60, 0x25, 0x57, 0xc3, 0x75, 0x8c, - 0xef, 0xd1, 0x7b, 0xa5, 0x10, 0x7f, 0xcb, 0x62, 0x8b, 0x1e, 0x25, 0x21, 0x1f, 0x86, 0xd3, 0x11, - 0xc0, 0xa2, 0xee, 0xe8, 0x4d, 0xea, 0x85, 0x19, 0x07, 0x31, 0x68, 0x93, 0x5f, 0xba, 0xda, 0x0a, - 0xd0, 0x72, 0x16, 0xc3, 0x0e, 0x1c, 0x24, 0xe5, 0xe8, 0xdb, 0x81, 0x91, 0xf4, 0x17, 0x73, 0xe1, - 0x56, 0x25, 0x1a, 0x7c, 0x55, 0xa3, 0x6e, 0xbb, 0xe1, 0xdd, 0xbf, 0x1d, 0xbc, 0xbb, 0xd4, 0x16, - 0x33, 0x70, 0xac, 0xb8, 0xb2, 0x42, 0x6b, 0x9e, 0x1f, 0x53, 0xda, 0x15, 0xe1, 0xf6, 0xf8, 0xd1, - 0x41, 0xa0, 0x44, 0x8c, 0xe0, 0x48, 0x6e, 0xfc, 0x58, 0x31, 0xf5, 0x4f, 0xf2, 0xa0, 0x04, 0x5b, - 0xf7, 0xc0, 0x51, 0xeb, 0x00, 0x97, 0xc9, 0x77, 0x45, 0xaf, 0x98, 0x30, 0x16, 0x0a, 0xa3, 0xd2, - 0x6e, 0x36, 0x75, 0x1c, 0x7a, 0xec, 0x68, 0x30, 0x1e, 0x67, 0x16, 0x12, 0xf2, 0xd3, 0xc0, 0x19, - 0x71, 0x1a, 0x20, 0xa1, 0x23, 0x5c, 0xd5, 0xe5, 0x2c, 0xb4, 0x24, 0x57, 0xf2, 0xb9, 0x0c, 0x9c, - 0xf0, 0x3b, 0x65, 0x61, 0x99, 0x6d, 0x8b, 0x27, 0xed, 0xb6, 0xe5, 0xf9, 0x27, 0x91, 0x17, 0x3a, - 0x57, 0xc7, 0x3b, 0xe9, 0x72, 0x5a, 0x61, 0xde, 0x92, 0x20, 0xb0, 0x44, 0xa0, 0x10, 0x36, 0xd2, - 0x54, 0x6b, 0x48, 0xa4, 0xa5, 0xd6, 0x7b, 0xe6, 0x3a, 0x3c, 0xd0, 0x91, 0xe5, 0x56, 0xdb, 0xd0, - 0x5e, 0x79, 0x1b, 0xfa, 0x4f, 0x32, 0xe1, 0x44, 0x14, 0x13, 0x12, 0xb9, 0x0c, 0x10, 0x82, 0xc4, - 0xc1, 0x74, 0x64, 0x73, 0x63, 0x1c, 0x42, 0xa1, 0x69, 0x12, 0x05, 0x59, 0x80, 0x82, 0x10, 0x0b, - 0xcf, 0xee, 0xfb, 0xbe, 0x2d, 0x7a, 0xe1, 0xb2, 0x2c, 0x07, 0x3c, 0x74, 0x8a, 0x6f, 0x16, 0x6c, - 0xce, 0x3c, 0x0f, 0x83, 0xbb, 0xfd, 0xae, 0xcf, 0xe5, 0x80, 0xc8, 0xa7, 0xc8, 0x03, 0xdc, 0x62, - 0x1f, 0xe2, 0x29, 0xec, 0x22, 0xf4, 0xb3, 0x4f, 0xc0, 0x7c, 0x17, 0x52, 0x7c, 0xdb, 0xb6, 0x80, - 0x69, 0x01, 0x36, 0x0c, 0x2e, 0xd5, 0x97, 0x1e, 0x5c, 0x4a, 0xfd, 0xa1, 0x1c, 0x9c, 0x92, 0x3b, - 0xa4, 0x44, 0x31, 0x64, 0xfe, 0x51, 0xa7, 0xbc, 0x83, 0x9d, 0xa2, 0x42, 0x81, 0x1f, 0x1e, 0x44, - 0xee, 0x02, 0x7e, 0xb1, 0x83, 0x10, 0x4d, 0x60, 0xd4, 0x7f, 0x99, 0x85, 0xe1, 0x45, 0xdb, 0xf5, - 0xea, 0x0e, 0x75, 0x17, 0x75, 0xc7, 0xbd, 0x8f, 0xbb, 0xe3, 0xfd, 0x30, 0x8c, 0xe1, 0x81, 0x9a, - 0xd4, 0xe2, 0x21, 0x74, 0x7a, 0xa5, 0x64, 0x23, 0x3e, 0x42, 0xe4, 0x95, 0x8a, 0x10, 0x32, 0xed, - 0xe7, 0x3b, 0x3f, 0x29, 0x68, 0x13, 0xdf, 0xf6, 0x71, 0xb8, 0xfa, 0xd3, 0x39, 0x18, 0xf2, 0xa5, - 0x3c, 0x61, 0x1e, 0xd6, 0x97, 0x9a, 0x83, 0x15, 0xf2, 0x15, 0x80, 0x45, 0xdb, 0xf1, 0xf4, 0xc6, - 0x7c, 0xa8, 0xf9, 0x78, 0xc5, 0xd9, 0x42, 0x28, 0x2f, 0x23, 0x91, 0xe0, 0xfa, 0x15, 0x6e, 0xab, - 0xf9, 0xc4, 0xc4, 0xd7, 0xaf, 0x00, 0xaa, 0x49, 0x14, 0xea, 0x6f, 0x65, 0xe1, 0x98, 0xdf, 0x49, - 0x53, 0xf7, 0x68, 0xad, 0x7d, 0x3f, 0xcf, 0x4d, 0x51, 0x69, 0xf7, 0x6e, 0x29, 0x6d, 0xf5, 0x3f, - 0x48, 0x13, 0xc9, 0x64, 0xc3, 0x3e, 0x9a, 0x48, 0xfe, 0x26, 0x74, 0x5c, 0xfd, 0xee, 0x1c, 0x9c, - 0xf0, 0xa5, 0x3e, 0xdd, 0xb6, 0xf0, 0x72, 0x60, 0x52, 0x6f, 0x34, 0xee, 0xe7, 0xd3, 0xf8, 0xa0, - 0x2f, 0x88, 0x05, 0x11, 0x6f, 0x4f, 0xe4, 0xf8, 0x5b, 0x11, 0xe0, 0xaa, 0x6d, 0x1a, 0x9a, 0x4c, - 0x44, 0x5e, 0x81, 0x21, 0xff, 0x67, 0xd1, 0xa9, 0xfb, 0x47, 0x70, 0xbc, 0xea, 0x0f, 0x0a, 0xe9, - 0x4e, 0x24, 0xac, 0x40, 0xa4, 0x80, 0xfa, 0xaf, 0x0b, 0x70, 0xe6, 0xb6, 0x69, 0x19, 0xf6, 0x9a, - 0xeb, 0xa7, 0x88, 0x3c, 0xf4, 0x57, 0x5d, 0x07, 0x9d, 0x1a, 0xf2, 0x75, 0x38, 0x19, 0x17, 0xa9, - 0x13, 0x04, 0xee, 0x16, 0xbd, 0xb3, 0xc6, 0x09, 0xaa, 0x7e, 0xb2, 0x48, 0xf1, 0x5e, 0xa6, 0xa5, - 0x97, 0x8c, 0x67, 0x9b, 0xec, 0xdb, 0x4e, 0xb6, 0xc9, 0xc7, 0xa0, 0x50, 0xb2, 0x9b, 0xba, 0xe9, - 0x07, 0x98, 0xc1, 0x51, 0x1c, 0xd4, 0x8b, 0x18, 0x4d, 0x50, 0x30, 0xfe, 0xa2, 0x62, 0xec, 0xb2, - 0x81, 0x90, 0xbf, 0x5f, 0x80, 0xed, 0xd2, 0x34, 0x99, 0x88, 0xd8, 0x30, 0x2c, 0xaa, 0x13, 0xaf, - 0x5b, 0x80, 0x87, 0xa7, 0x67, 0x7c, 0x19, 0x75, 0x56, 0xab, 0xcb, 0x91, 0x72, 0xfc, 0x18, 0xc5, - 0x93, 0x60, 0x8a, 0x8f, 0xe1, 0xef, 0x5c, 0x5a, 0x94, 0xbf, 0x24, 0x04, 0x9c, 0x64, 0x06, 0x93, - 0x42, 0xc0, 0x59, 0x46, 0x26, 0x22, 0x53, 0x30, 0x86, 0xe1, 0x95, 0x83, 0xa3, 0x14, 0x53, 0x89, - 0x21, 0xdc, 0x54, 0xe2, 0xa3, 0x09, 0x8f, 0xc8, 0xcc, 0x3e, 0xae, 0x5a, 0x13, 0x68, 0x2d, 0x59, - 0xe2, 0xcc, 0xab, 0x40, 0x92, 0x6d, 0xde, 0xd1, 0xb3, 0xc9, 0xdf, 0x97, 0xce, 0x75, 0x87, 0xdd, - 0xf0, 0x65, 0x3f, 0x66, 0xbb, 0x48, 0xea, 0xb0, 0xde, 0x77, 0x32, 0x75, 0x58, 0x61, 0x5f, 0x53, - 0x87, 0xa9, 0xbf, 0x94, 0x81, 0xb1, 0x44, 0x9c, 0x71, 0xf2, 0x34, 0x00, 0x87, 0x48, 0xf1, 0x1c, - 0x31, 0x40, 0x4a, 0x18, 0x7b, 0x5c, 0xac, 0x81, 0x21, 0x19, 0xb9, 0x02, 0xfd, 0xfc, 0x97, 0x88, - 0xc1, 0x94, 0x2c, 0xd2, 0x6e, 0x9b, 0x86, 0x16, 0x10, 0x85, 0xb5, 0xe0, 0xc3, 0x61, 0x2e, 0xb5, - 0x88, 0xb7, 0xde, 0x0a, 0x6a, 0x61, 0x64, 0xea, 0x67, 0xb3, 0x30, 0x14, 0x34, 0xb8, 0x68, 0x1c, - 0x94, 0xce, 0x15, 0x44, 0xc8, 0xf6, 0xdc, 0x56, 0x21, 0xdb, 0x63, 0x93, 0xaa, 0x88, 0xd1, 0xbe, - 0x7f, 0x7e, 0x4f, 0x9f, 0xcf, 0xc2, 0xb1, 0xa0, 0xd6, 0x03, 0x7c, 0xa3, 0x7a, 0x17, 0x89, 0xe4, - 0x73, 0x19, 0x50, 0x26, 0xcc, 0x46, 0xc3, 0xb4, 0xea, 0x65, 0x6b, 0xc5, 0x76, 0x9a, 0x38, 0xeb, - 0x1d, 0xdc, 0x3d, 0xad, 0xfa, 0xbd, 0x19, 0x18, 0x13, 0x0d, 0x9a, 0xd4, 0x1d, 0xe3, 0xe0, 0x2e, - 0xc1, 0xe2, 0x2d, 0x39, 0x38, 0x7d, 0x51, 0xbf, 0x9c, 0x05, 0x98, 0xb5, 0x6b, 0x77, 0x0e, 0xb9, - 0xdb, 0xd4, 0x8b, 0x50, 0xe0, 0x81, 0xb0, 0x84, 0xc6, 0x8e, 0x09, 0xf7, 0x20, 0xf6, 0x69, 0x1c, - 0x31, 0x31, 0x2a, 0xe6, 0xe3, 0x02, 0x0f, 0xa4, 0xa5, 0x64, 0x34, 0x51, 0x84, 0x55, 0xca, 0xe8, - 0xc4, 0x82, 0x11, 0x54, 0xca, 0x60, 0xd1, 0x4a, 0x37, 0x37, 0xc6, 0xf3, 0x0d, 0xbb, 0x76, 0x47, - 0x43, 0x7a, 0xf5, 0xaf, 0x33, 0x5c, 0x76, 0x87, 0xdc, 0xf9, 0xd3, 0xff, 0xfc, 0xfc, 0x0e, 0x3f, - 0xff, 0xfb, 0x32, 0x70, 0x42, 0xa3, 0x35, 0xfb, 0x2e, 0x75, 0xd6, 0x27, 0x6d, 0x83, 0x5e, 0xa7, - 0x16, 0x75, 0x0e, 0x6a, 0x44, 0xfd, 0x2d, 0xcc, 0x71, 0x11, 0x36, 0xe6, 0xa6, 0x4b, 0x8d, 0xc3, - 0x93, 0x7f, 0x44, 0xfd, 0xd5, 0x3e, 0x50, 0x52, 0xb7, 0xb6, 0x87, 0x76, 0x3b, 0xd7, 0xf1, 0xbc, - 0x92, 0xdf, 0xaf, 0xf3, 0x4a, 0xef, 0xce, 0xce, 0x2b, 0x85, 0x9d, 0x9e, 0x57, 0xfa, 0xb6, 0x73, - 0x5e, 0x69, 0xc6, 0xcf, 0x2b, 0xfd, 0x78, 0x5e, 0x79, 0xba, 0xeb, 0x79, 0x65, 0xca, 0x32, 0x76, - 0x79, 0x5a, 0x39, 0xb4, 0xb9, 0x71, 0x77, 0x73, 0xcc, 0xba, 0xc8, 0x26, 0xc5, 0x9a, 0xed, 0x18, - 0xd4, 0x10, 0xa7, 0x2b, 0xbc, 0xda, 0x77, 0x04, 0x4c, 0x0b, 0xb0, 0x89, 0x44, 0xc3, 0xc3, 0xdb, - 0x49, 0x34, 0xbc, 0x0f, 0xe7, 0xaf, 0xcf, 0x64, 0x61, 0x6c, 0x92, 0x3a, 0x1e, 0x8f, 0xb4, 0xb9, - 0x1f, 0x96, 0x6b, 0x45, 0x38, 0x26, 0x31, 0xc4, 0x1d, 0x79, 0x36, 0xb4, 0xc6, 0xab, 0x51, 0xc7, - 0x8b, 0x1b, 0xf3, 0xc5, 0xe9, 0x59, 0xf5, 0x7e, 0xb2, 0x2f, 0x31, 0x76, 0x83, 0xea, 0x7d, 0x38, - 0x17, 0xa4, 0x29, 0x7e, 0x69, 0x01, 0xbd, 0x94, 0xbf, 0x2b, 0xbf, 0xf3, 0xfc, 0x5d, 0xea, 0x2f, - 0x66, 0xe0, 0x82, 0x46, 0x2d, 0xba, 0xa6, 0x2f, 0x37, 0xa8, 0xd4, 0x2c, 0xb1, 0x32, 0xb0, 0x59, - 0xc3, 0x74, 0x9b, 0xba, 0x57, 0x5b, 0xdd, 0x93, 0x8c, 0xa6, 0x61, 0x48, 0x9e, 0xbf, 0x76, 0x30, - 0xb7, 0x45, 0xca, 0xa9, 0xbf, 0x9a, 0x87, 0xbe, 0x09, 0xdb, 0x7b, 0xcd, 0xde, 0x63, 0x42, 0xb9, - 0x70, 0xca, 0xcf, 0xee, 0xe0, 0x42, 0xe7, 0x49, 0xac, 0x5c, 0x8a, 0xb1, 0x8f, 0x96, 0x9e, 0xcb, - 0x76, 0x22, 0x17, 0x81, 0x4f, 0xb6, 0xc3, 0x54, 0x72, 0xcf, 0xc2, 0x00, 0x06, 0x69, 0x91, 0xae, - 0x5c, 0xd1, 0x8e, 0xda, 0x63, 0xc0, 0x78, 0x1d, 0x21, 0x29, 0xf9, 0x70, 0x24, 0x34, 0x68, 0x61, - 0xef, 0xa9, 0xe7, 0xe4, 0x28, 0xa1, 0x4f, 0xf3, 0xd7, 0x3a, 0x6c, 0x93, 0x94, 0xa6, 0x03, 0xaf, - 0x4a, 0x62, 0x4d, 0x0a, 0x08, 0xf7, 0x31, 0x2d, 0xdc, 0x24, 0x0c, 0x4f, 0xd8, 0x9e, 0x64, 0xb3, - 0x3b, 0x10, 0x7a, 0x6b, 0x32, 0xc9, 0xa7, 0x1b, 0xec, 0x46, 0xcb, 0xa8, 0xdf, 0xcc, 0xc3, 0x90, - 0xff, 0xf3, 0x80, 0x74, 0xe7, 0x09, 0x28, 0xcc, 0xd8, 0x52, 0xa6, 0x02, 0xb4, 0xf3, 0x5d, 0xb5, - 0xdd, 0x98, 0x01, 0xb3, 0x20, 0x62, 0x52, 0x9f, 0xb7, 0x0d, 0xd9, 0x4a, 0x1d, 0xa5, 0x6e, 0xd9, - 0x46, 0xc2, 0xcb, 0x37, 0x20, 0x24, 0x17, 0x20, 0x8f, 0x06, 0xfe, 0xd2, 0x6d, 0x7d, 0xcc, 0xa8, - 0x1f, 0xf1, 0x92, 0x56, 0x16, 0x76, 0xaa, 0x95, 0x7d, 0xbb, 0xd5, 0xca, 0xfe, 0xfd, 0xd5, 0xca, - 0x37, 0x60, 0x08, 0x6b, 0xf2, 0x13, 0x9d, 0x6d, 0xbd, 0xb0, 0x3e, 0x20, 0xd6, 0xbe, 0x61, 0xde, - 0x6e, 0x91, 0xee, 0x0c, 0x97, 0xbc, 0x08, 0xab, 0x98, 0xee, 0xc2, 0x1e, 0x8e, 0xd3, 0x7f, 0x9c, - 0x81, 0xbe, 0x9b, 0xd6, 0x1d, 0xcb, 0x5e, 0xdb, 0x9b, 0xc6, 0x3d, 0x0d, 0x83, 0x82, 0x8d, 0xb4, - 0xba, 0xa0, 0xe3, 0x76, 0x9b, 0x83, 0xab, 0xc8, 0x49, 0x93, 0xa9, 0xc8, 0x4b, 0x41, 0x21, 0xf4, - 0xe1, 0xc9, 0x85, 0xb9, 0x3e, 0xfc, 0x42, 0xb5, 0x68, 0x7a, 0x02, 0x99, 0x9c, 0x9c, 0x85, 0x7c, - 0x89, 0x35, 0x55, 0x0a, 0x76, 0xcb, 0x9a, 0xa2, 0x21, 0x54, 0xfd, 0x4c, 0x1e, 0x46, 0x62, 0x17, - 0x5f, 0x8f, 0xc1, 0x80, 0xb8, 0x78, 0x32, 0xfd, 0x7c, 0x09, 0xe8, 0xe3, 0x13, 0x00, 0xb5, 0x7e, - 0xfe, 0x67, 0xd9, 0x20, 0x1f, 0x80, 0x3e, 0xdb, 0xc5, 0x45, 0x11, 0xbf, 0x65, 0x24, 0x1c, 0x42, - 0x0b, 0x15, 0xd6, 0x76, 0x3e, 0x38, 0x04, 0x89, 0xac, 0x91, 0xb6, 0x8b, 0x9f, 0x76, 0x0d, 0x06, - 0x74, 0xd7, 0xa5, 0x5e, 0xd5, 0xd3, 0xeb, 0x72, 0x0a, 0x85, 0x00, 0x28, 0x8f, 0x0e, 0x04, 0x2e, - 0xe9, 0x75, 0xf2, 0x2a, 0x0c, 0xd7, 0x1c, 0x8a, 0xcb, 0xa6, 0xde, 0x60, 0xad, 0x94, 0xb6, 0xb5, - 0x11, 0x84, 0xfc, 0x48, 0x12, 0x22, 0xca, 0x06, 0xb9, 0x05, 0xc3, 0xe2, 0x73, 0xb8, 0x81, 0x3d, - 0x0e, 0xb4, 0x91, 0x70, 0x19, 0xe3, 0x22, 0xe1, 0x26, 0xf6, 0xc2, 0xcf, 0x42, 0x26, 0x97, 0xf9, - 0x1a, 0x12, 0x29, 0x59, 0x00, 0xb2, 0x46, 0x97, 0xab, 0x7a, 0xdb, 0x5b, 0x65, 0x75, 0xf1, 0x08, - 0xe0, 0x22, 0x73, 0x20, 0x3a, 0x27, 0x24, 0xb1, 0xb2, 0xcf, 0xc6, 0x1a, 0x5d, 0x2e, 0x46, 0x90, - 0xe4, 0x36, 0x9c, 0x4c, 0x16, 0x61, 0x9f, 0xcc, 0x5f, 0x00, 0x1e, 0xd9, 0xdc, 0x18, 0x1f, 0x4f, - 0x25, 0x90, 0xd8, 0x1e, 0x4f, 0xb0, 0x2d, 0x1b, 0xaf, 0xe5, 0xfb, 0xfb, 0x46, 0xfb, 0xb5, 0x11, - 0x56, 0xd6, 0xdf, 0x42, 0x9a, 0x86, 0xfa, 0xb5, 0x0c, 0xdb, 0x2a, 0xb2, 0x0f, 0xc2, 0xd4, 0xc9, - 0x4c, 0xd7, 0x9b, 0x3b, 0xd4, 0xf5, 0x66, 0x98, 0xe4, 0xb0, 0xe0, 0x76, 0x99, 0x5d, 0x35, 0x81, - 0x25, 0x97, 0xa1, 0x60, 0xc8, 0xb7, 0x66, 0xa7, 0xa2, 0x9d, 0xe0, 0xd7, 0xa3, 0x09, 0x2a, 0x72, - 0x11, 0xf2, 0x6c, 0xc9, 0x8a, 0x1f, 0x99, 0xe5, 0xdd, 0x85, 0x86, 0x14, 0xea, 0x77, 0x66, 0x61, - 0x48, 0xfa, 0x9a, 0xab, 0x7b, 0xfa, 0x9c, 0x17, 0xb6, 0xd7, 0x4c, 0xdf, 0xb2, 0x05, 0xcf, 0x52, - 0x7e, 0x93, 0xaf, 0x05, 0xa2, 0xd8, 0xd6, 0xab, 0x93, 0x10, 0xcc, 0xb3, 0xe2, 0x43, 0x0b, 0xdb, - 0x3f, 0x3e, 0x32, 0xfa, 0xd7, 0xf2, 0xfd, 0xd9, 0xd1, 0xdc, 0x6b, 0xf9, 0xfe, 0xfc, 0x68, 0x2f, - 0x86, 0xcb, 0xc2, 0x08, 0xd5, 0xfc, 0x6c, 0x6e, 0xad, 0x98, 0xf5, 0x43, 0xee, 0xe2, 0xb1, 0xbf, - 0xa1, 0xc4, 0x62, 0xb2, 0x39, 0xe4, 0xfe, 0x1e, 0xef, 0xa8, 0x6c, 0x8e, 0x92, 0x22, 0x0a, 0xd9, - 0xfc, 0x49, 0x06, 0x94, 0x54, 0xd9, 0x14, 0x0f, 0xc8, 0xd8, 0x61, 0xff, 0x52, 0x23, 0x7e, 0x23, - 0x0b, 0x63, 0x65, 0xcb, 0xa3, 0x75, 0x7e, 0x62, 0x3c, 0xe4, 0x53, 0xc5, 0x0d, 0x18, 0x94, 0x3e, - 0x46, 0xf4, 0xf9, 0x83, 0xc1, 0x79, 0x3c, 0x44, 0x75, 0xe0, 0x24, 0x97, 0xde, 0xc7, 0x6c, 0xea, - 0x31, 0x21, 0x1f, 0xf2, 0x39, 0xe7, 0x70, 0x08, 0xf9, 0x90, 0x4f, 0x5e, 0xef, 0x52, 0x21, 0xff, - 0xbb, 0x0c, 0x1c, 0x4f, 0xa9, 0x9c, 0x5c, 0x80, 0xbe, 0x4a, 0x7b, 0x19, 0xa3, 0x63, 0x65, 0x42, - 0xb3, 0x60, 0xb7, 0xbd, 0x8c, 0x81, 0xb1, 0x34, 0x1f, 0x49, 0x96, 0xd0, 0x07, 0x7e, 0xa1, 0x5c, - 0x9a, 0x14, 0x52, 0x55, 0x25, 0x6f, 0x7e, 0x06, 0x4e, 0xfb, 0xb2, 0xc0, 0x4f, 0xde, 0x36, 0x8d, - 0x5a, 0xcc, 0x4f, 0x9e, 0x95, 0x21, 0x1f, 0x81, 0x81, 0xe2, 0x5b, 0x6d, 0x87, 0x22, 0x5f, 0x2e, - 0xf1, 0xf7, 0x04, 0x7c, 0x7d, 0x44, 0x1a, 0x67, 0xee, 0xf2, 0xcf, 0x28, 0xe2, 0xbc, 0x43, 0x86, - 0xea, 0x67, 0x33, 0x70, 0xa6, 0x73, 0xeb, 0xc8, 0x93, 0xd0, 0xc7, 0x4e, 0xe6, 0x45, 0x6d, 0x5e, - 0x7c, 0x3a, 0x4f, 0x23, 0x6a, 0x37, 0x68, 0x55, 0x77, 0xe4, 0xcd, 0xbe, 0x4f, 0x46, 0x5e, 0x86, - 0xc1, 0xb2, 0xeb, 0xb6, 0xa9, 0x53, 0x79, 0xfa, 0xa6, 0x56, 0x16, 0x67, 0x42, 0x3c, 0x73, 0x98, - 0x08, 0xae, 0xba, 0x4f, 0xc7, 0xe2, 0x5f, 0xc9, 0xf4, 0xea, 0xa7, 0x32, 0x70, 0xb6, 0xdb, 0x57, - 0x91, 0xa7, 0xa1, 0x7f, 0x89, 0x5a, 0xba, 0xe5, 0x95, 0x4b, 0xa2, 0x49, 0x78, 0xc4, 0xf2, 0x10, - 0x16, 0x3d, 0x29, 0x04, 0x84, 0xac, 0x10, 0xbf, 0x57, 0x0c, 0x0c, 0x19, 0xf8, 0x1d, 0x28, 0xc2, - 0x62, 0x85, 0x7c, 0x42, 0xf5, 0xf7, 0xb3, 0x30, 0xb4, 0xd8, 0x68, 0xd7, 0x4d, 0x69, 0xe1, 0xd8, - 0xf5, 0x7e, 0xdb, 0xdf, 0xfd, 0x66, 0x77, 0xb6, 0xfb, 0x65, 0xc3, 0xcd, 0xd9, 0xe5, 0x70, 0xf3, - 0xcb, 0x91, 0x97, 0xa0, 0xd0, 0xc2, 0xef, 0x88, 0xdf, 0xc4, 0xf2, 0xaf, 0xeb, 0x74, 0x13, 0xcb, - 0xcb, 0xb0, 0xf1, 0x55, 0xdb, 0xc3, 0xf8, 0x0a, 0xcb, 0x4a, 0x02, 0x0d, 0x17, 0x89, 0x23, 0x81, - 0xee, 0x8b, 0x40, 0xc3, 0x05, 0xe1, 0x48, 0xa0, 0x7b, 0x10, 0xe8, 0x27, 0xb3, 0x30, 0x12, 0xad, - 0x92, 0x3c, 0x09, 0x83, 0xbc, 0x1a, 0x7e, 0x2f, 0x94, 0x91, 0x2c, 0x87, 0x43, 0xb0, 0x06, 0xfc, - 0x07, 0xde, 0x02, 0xbd, 0x1c, 0x7c, 0x0c, 0x17, 0xe5, 0x31, 0x61, 0x40, 0xc0, 0x19, 0xdf, 0x7a, - 0x8a, 0x5f, 0x6b, 0x72, 0x12, 0xf9, 0x12, 0x49, 0x7c, 0xcd, 0x4b, 0x70, 0x6c, 0x55, 0x77, 0xab, - 0xe1, 0x05, 0x0f, 0x7f, 0xfe, 0xed, 0xe7, 0x86, 0x54, 0x31, 0x94, 0x36, 0xb2, 0xaa, 0xbb, 0x93, - 0xe1, 0x6f, 0x32, 0x05, 0xc4, 0xa1, 0x6d, 0x97, 0x46, 0x19, 0xe4, 0x91, 0x81, 0x48, 0x01, 0x1d, - 0xc7, 0x6a, 0x63, 0x1c, 0x26, 0xb1, 0x51, 0x7f, 0x80, 0x42, 0xef, 0x82, 0x45, 0x17, 0x56, 0xc8, - 0x53, 0x30, 0xc0, 0x54, 0x60, 0xd6, 0x66, 0x1f, 0x94, 0x11, 0x16, 0x11, 0x92, 0x6e, 0x20, 0x62, - 0xa6, 0x47, 0x0b, 0xa9, 0xc8, 0x35, 0x9e, 0x76, 0x9e, 0xcf, 0x9a, 0x42, 0x08, 0x44, 0x2e, 0xc3, - 0x31, 0x33, 0x3d, 0x9a, 0x44, 0xe7, 0x97, 0x12, 0x7e, 0x35, 0xb9, 0x64, 0x29, 0x8e, 0xf1, 0x4b, - 0x09, 0x8d, 0x9f, 0x4d, 0xcb, 0xe8, 0x1e, 0x3f, 0x0f, 0x25, 0x29, 0x66, 0x7a, 0xb4, 0xf4, 0x4c, - 0xf0, 0x43, 0xb2, 0x1d, 0x68, 0xdc, 0x8c, 0x43, 0xc6, 0xcd, 0xf4, 0x68, 0x11, 0x5a, 0xf2, 0x1c, - 0x0c, 0x8a, 0xdf, 0xaf, 0xd9, 0xa6, 0x15, 0x0f, 0x02, 0x24, 0xa1, 0x66, 0x7a, 0x34, 0x99, 0x52, - 0xaa, 0x74, 0xd1, 0x31, 0x2d, 0x4f, 0xb8, 0x16, 0xc7, 0x2b, 0x45, 0x9c, 0x54, 0x29, 0xfe, 0x26, - 0x2f, 0xc3, 0x70, 0x10, 0x5d, 0xe9, 0x4d, 0x5a, 0xf3, 0xc4, 0x75, 0xf6, 0xc9, 0x58, 0x61, 0x8e, - 0x9c, 0xe9, 0xd1, 0xa2, 0xd4, 0xe4, 0x22, 0x14, 0x34, 0xea, 0x9a, 0x6f, 0xf9, 0x0f, 0xc0, 0x23, - 0xd2, 0xc8, 0x35, 0xdf, 0x62, 0x52, 0x12, 0x78, 0xd6, 0x3b, 0xe1, 0x8b, 0xb3, 0xb8, 0x7c, 0x26, - 0xb1, 0x5a, 0xa6, 0x2c, 0x83, 0xf5, 0x8e, 0x64, 0x6e, 0xf0, 0x6a, 0x18, 0x73, 0x4a, 0x64, 0xaa, - 0x1c, 0x8c, 0x3b, 0xf7, 0xcb, 0xd8, 0x99, 0x1e, 0x2d, 0x46, 0x2f, 0x49, 0xb5, 0x64, 0xba, 0x77, - 0x44, 0x98, 0xcf, 0xb8, 0x54, 0x19, 0x4a, 0x92, 0x2a, 0xfb, 0x29, 0x55, 0x3d, 0x4f, 0xbd, 0x35, - 0xdb, 0xb9, 0x23, 0x82, 0x7a, 0xc6, 0xab, 0x16, 0x58, 0xa9, 0x6a, 0x01, 0x91, 0xab, 0x66, 0xf3, - 0xe9, 0x48, 0x7a, 0xd5, 0xba, 0xa7, 0xcb, 0x55, 0xf3, 0xbb, 0x35, 0xbf, 0x93, 0x66, 0xa9, 0x7e, - 0x97, 0x27, 0x0c, 0x4f, 0x76, 0x28, 0xe2, 0xa4, 0x0e, 0xc5, 0xdf, 0xac, 0x52, 0x29, 0x29, 0xb4, - 0xc8, 0x08, 0x1e, 0x54, 0x2a, 0xa1, 0x58, 0xa5, 0x72, 0xfa, 0xe8, 0x6b, 0x72, 0xae, 0x64, 0x65, - 0x2c, 0xda, 0x41, 0x21, 0x86, 0x75, 0x90, 0x94, 0x53, 0x79, 0x1c, 0xf3, 0xb0, 0x2a, 0x04, 0xc9, - 0x07, 0x83, 0x16, 0x4e, 0x2e, 0xce, 0xf4, 0x68, 0x98, 0xa1, 0x55, 0xe5, 0x19, 0x7e, 0x95, 0xe3, - 0x48, 0x31, 0xe4, 0x53, 0x30, 0xd8, 0x4c, 0x8f, 0xc6, 0xb3, 0xff, 0x3e, 0x25, 0xe5, 0xd2, 0x53, - 0x4e, 0x44, 0xa7, 0x88, 0x00, 0xc1, 0xa6, 0x88, 0x30, 0xe3, 0xde, 0x74, 0x32, 0xdf, 0x9c, 0x72, - 0x32, 0xba, 0x78, 0xc4, 0xf1, 0x33, 0x3d, 0x5a, 0x32, 0x47, 0xdd, 0x73, 0x91, 0x14, 0x6c, 0xca, - 0xa9, 0x58, 0xe4, 0xad, 0x10, 0xc5, 0xc4, 0x25, 0x27, 0x6b, 0x5b, 0x88, 0xa5, 0x0b, 0x17, 0x93, - 0xd5, 0xe9, 0xe8, 0x51, 0x24, 0x85, 0x64, 0xa6, 0x47, 0x4b, 0x2b, 0x49, 0x26, 0x13, 0x89, 0xd0, - 0x14, 0x25, 0x6a, 0xed, 0x12, 0x43, 0xcf, 0xf4, 0x68, 0x89, 0xd4, 0x69, 0xd7, 0xe4, 0x0c, 0x64, - 0xca, 0x03, 0xd1, 0x4e, 0x0c, 0x31, 0xac, 0x13, 0xa5, 0x4c, 0x65, 0xd7, 0xe4, 0xac, 0x54, 0xca, - 0x99, 0x64, 0xa9, 0x70, 0xe6, 0x94, 0xb2, 0x57, 0x69, 0xe9, 0x89, 0x76, 0x94, 0x07, 0x45, 0xaa, - 0x53, 0x51, 0x3e, 0x8d, 0x66, 0xa6, 0x47, 0x4b, 0x4f, 0xd2, 0xa3, 0xa5, 0x67, 0xa8, 0x51, 0xce, - 0x76, 0xe3, 0x19, 0xb4, 0x2e, 0x3d, 0xbb, 0x8d, 0xde, 0x25, 0x5f, 0x88, 0x72, 0x2e, 0x1a, 0xf6, - 0xb7, 0x23, 0xe1, 0x4c, 0x8f, 0xd6, 0x25, 0xeb, 0xc8, 0xcd, 0x0e, 0xc9, 0x3b, 0x94, 0xf3, 0xd1, - 0x4c, 0xc7, 0xa9, 0x44, 0x33, 0x3d, 0x5a, 0x87, 0xd4, 0x1f, 0x37, 0x3b, 0xe4, 0x76, 0x50, 0xc6, - 0xbb, 0xb2, 0x0d, 0xe4, 0xd1, 0x21, 0x33, 0xc4, 0x42, 0x6a, 0x5a, 0x04, 0xe5, 0xa1, 0xa8, 0xea, - 0xa6, 0x90, 0x30, 0xd5, 0x4d, 0x4b, 0xa8, 0xb0, 0x90, 0x1a, 0xc7, 0x5f, 0x79, 0xb8, 0x0b, 0xc3, - 0xa0, 0x8d, 0xa9, 0x19, 0x00, 0x16, 0x52, 0x03, 0xe9, 0x2b, 0x6a, 0x94, 0x61, 0x0a, 0x09, 0x63, - 0x98, 0x16, 0x82, 0x7f, 0x21, 0x35, 0xde, 0xba, 0xf2, 0x48, 0x17, 0x86, 0x61, 0x0b, 0xd3, 0x22, - 0xb5, 0x3f, 0x17, 0x09, 0x78, 0xae, 0xbc, 0x27, 0x3a, 0x6f, 0x48, 0x28, 0x36, 0x6f, 0xc8, 0xa1, - 0xd1, 0x27, 0x13, 0x21, 0x5d, 0x95, 0x47, 0xa3, 0xc3, 0x3c, 0x86, 0x66, 0xc3, 0x3c, 0x1e, 0x04, - 0x76, 0x32, 0x11, 0xda, 0x52, 0xb9, 0xd0, 0x89, 0x09, 0xa2, 0xa3, 0x4c, 0x78, 0x30, 0xcc, 0x72, - 0x4a, 0x6c, 0x45, 0xe5, 0xbd, 0x51, 0x4b, 0xed, 0x04, 0xc1, 0x4c, 0x8f, 0x96, 0x12, 0x91, 0x51, - 0x4b, 0x0f, 0x24, 0xa4, 0x5c, 0x8c, 0x0e, 0xdb, 0x34, 0x1a, 0x36, 0x6c, 0x53, 0x83, 0x10, 0xcd, - 0xa6, 0xb9, 0x93, 0x28, 0x97, 0xa2, 0x1b, 0xb3, 0x24, 0x05, 0xdb, 0x98, 0xa5, 0xb8, 0xa1, 0x68, - 0xe9, 0xa1, 0x71, 0x94, 0xc7, 0xba, 0xb6, 0x10, 0x69, 0x52, 0x5a, 0xc8, 0x23, 0xc5, 0x84, 0x7b, - 0xa7, 0x9b, 0xad, 0x86, 0xad, 0x1b, 0xca, 0xfb, 0x52, 0xf7, 0x4e, 0x1c, 0x29, 0xed, 0x9d, 0x38, - 0x80, 0xad, 0xf2, 0xb2, 0xd7, 0x82, 0xf2, 0x78, 0x74, 0x95, 0x97, 0x71, 0x6c, 0x95, 0x8f, 0x78, - 0x38, 0x4c, 0x26, 0x2c, 0xfc, 0x95, 0x27, 0xa2, 0x0a, 0x10, 0x43, 0x33, 0x05, 0x88, 0xfb, 0x04, - 0x7c, 0xac, 0xb3, 0x4d, 0xbc, 0x72, 0x19, 0xb9, 0x3d, 0xe4, 0x73, 0xeb, 0x44, 0x37, 0xd3, 0xa3, - 0x75, 0xb6, 0xab, 0x2f, 0xa7, 0x98, 0xb8, 0x2b, 0x57, 0xa2, 0x0a, 0x96, 0x20, 0x60, 0x0a, 0x96, - 0x34, 0x8c, 0x2f, 0xa7, 0xd8, 0xa8, 0x2b, 0x4f, 0x76, 0x64, 0x15, 0x7c, 0x73, 0x8a, 0x65, 0xfb, - 0x35, 0xd9, 0xc8, 0x5c, 0x79, 0x2a, 0xba, 0xd8, 0x85, 0x18, 0xb6, 0xd8, 0x49, 0xc6, 0xe8, 0xd7, - 0x64, 0xf3, 0x6a, 0xe5, 0x6a, 0xb2, 0x54, 0xb8, 0x44, 0x4a, 0x66, 0xd8, 0x5a, 0xba, 0x55, 0xb2, - 0xf2, 0x74, 0x54, 0xeb, 0xd2, 0x68, 0x98, 0xd6, 0xa5, 0x5a, 0x34, 0x4f, 0x27, 0x8d, 0x8b, 0x95, - 0x6b, 0xf1, 0x63, 0x73, 0x14, 0xcf, 0x76, 0x3e, 0x09, 0x83, 0xe4, 0x57, 0xe3, 0x51, 0xee, 0x94, - 0x67, 0x62, 0x0f, 0xb9, 0x11, 0x2c, 0xdb, 0xdf, 0xc6, 0xa2, 0xe2, 0xbd, 0x1a, 0x0f, 0x0c, 0xa7, - 0x3c, 0x9b, 0xce, 0x21, 0xd0, 0x95, 0x78, 0x20, 0xb9, 0x57, 0xe3, 0xb1, 0xd4, 0x94, 0xe7, 0xd2, - 0x39, 0x04, 0xd2, 0x8d, 0xc7, 0x5e, 0x7b, 0x4a, 0x8a, 0xee, 0xae, 0xbc, 0x3f, 0xba, 0x75, 0x0c, - 0x10, 0x6c, 0xeb, 0x18, 0xc6, 0x80, 0x7f, 0x4a, 0x8a, 0x8a, 0xae, 0x3c, 0x9f, 0x28, 0x12, 0x34, - 0x56, 0x8a, 0x9d, 0xfe, 0x94, 0x14, 0x4d, 0x5c, 0x79, 0x21, 0x51, 0x24, 0x68, 0x9d, 0x14, 0x73, - 0xdc, 0xe8, 0xe6, 0x76, 0xaa, 0xbc, 0x18, 0xbd, 0xde, 0xed, 0x4c, 0x39, 0xd3, 0xa3, 0x75, 0x73, - 0x5f, 0xfd, 0x58, 0x67, 0x53, 0x6d, 0xe5, 0xa5, 0xe8, 0x10, 0xee, 0x44, 0xc7, 0x86, 0x70, 0x47, - 0x73, 0xef, 0x97, 0x63, 0x21, 0x28, 0x94, 0x97, 0xa3, 0x53, 0x5c, 0x04, 0xc9, 0xa6, 0xb8, 0x78, - 0xc0, 0x8a, 0x48, 0x6c, 0x05, 0xe5, 0x03, 0xd1, 0x29, 0x4e, 0xc6, 0xb1, 0x29, 0x2e, 0x12, 0x87, - 0x61, 0x32, 0xe1, 0xf2, 0xaf, 0xbc, 0x12, 0x9d, 0xe2, 0x62, 0x68, 0x36, 0xc5, 0xc5, 0x83, 0x04, - 0xbc, 0x1c, 0xf3, 0x7c, 0x57, 0x5e, 0x4d, 0x6f, 0x3f, 0x22, 0xe5, 0xf6, 0x73, 0x3f, 0x79, 0x2d, - 0xdd, 0x85, 0x5b, 0x29, 0x46, 0xc7, 0x6f, 0x1a, 0x0d, 0x1b, 0xbf, 0xa9, 0xee, 0xdf, 0xf1, 0x83, - 0x83, 0xd0, 0xaa, 0x89, 0x2e, 0x07, 0x87, 0x70, 0x2b, 0x92, 0x02, 0x8e, 0x9c, 0x91, 0xf9, 0x41, - 0x68, 0xb2, 0xc3, 0x19, 0xd9, 0x3f, 0x06, 0xc5, 0xe8, 0xd9, 0xec, 0x9a, 0xb0, 0x1c, 0x56, 0x4a, - 0xd1, 0xd9, 0x35, 0x41, 0xc0, 0x66, 0xd7, 0xa4, 0xbd, 0xf1, 0x34, 0x8c, 0x0a, 0x2d, 0xe2, 0x06, - 0xd1, 0xa6, 0x55, 0x57, 0xa6, 0x62, 0x1e, 0x94, 0x31, 0x3c, 0x9b, 0x9d, 0xe2, 0x30, 0x5c, 0xaf, - 0x39, 0x6c, 0xb2, 0x61, 0xb6, 0x96, 0x6d, 0xdd, 0x31, 0x2a, 0xd4, 0x32, 0x94, 0xe9, 0xd8, 0x7a, - 0x9d, 0x42, 0x83, 0xeb, 0x75, 0x0a, 0x1c, 0x23, 0xbb, 0xc5, 0xe0, 0x1a, 0xad, 0x51, 0xf3, 0x2e, - 0x55, 0xae, 0x23, 0xdb, 0xf1, 0x4e, 0x6c, 0x05, 0xd9, 0x4c, 0x8f, 0xd6, 0x89, 0x03, 0xdb, 0xab, - 0xcf, 0xad, 0x57, 0x5e, 0x9f, 0x0d, 0xa2, 0x06, 0x2c, 0x3a, 0xb4, 0xa5, 0x3b, 0x54, 0x99, 0x89, - 0xee, 0xd5, 0x53, 0x89, 0xd8, 0x5e, 0x3d, 0x15, 0x91, 0x64, 0xeb, 0x8f, 0x85, 0x72, 0x37, 0xb6, - 0xe1, 0x88, 0x48, 0x2f, 0xcd, 0x66, 0xa7, 0x28, 0x82, 0x09, 0x68, 0xd6, 0xb6, 0xea, 0x78, 0x53, - 0xf1, 0x5a, 0x74, 0x76, 0xea, 0x4c, 0xc9, 0x66, 0xa7, 0xce, 0x58, 0xa6, 0xea, 0x51, 0x2c, 0x1f, - 0x83, 0x37, 0xa2, 0xaa, 0x9e, 0x42, 0xc2, 0x54, 0x3d, 0x05, 0x9c, 0x64, 0xa8, 0x51, 0x97, 0x7a, - 0xca, 0x6c, 0x37, 0x86, 0x48, 0x92, 0x64, 0x88, 0xe0, 0x24, 0xc3, 0x69, 0xea, 0xd5, 0x56, 0x95, - 0xb9, 0x6e, 0x0c, 0x91, 0x24, 0xc9, 0x10, 0xc1, 0xec, 0xb0, 0x19, 0x05, 0x4f, 0xb4, 0x1b, 0x77, - 0xfc, 0x3e, 0x9b, 0x8f, 0x1e, 0x36, 0x3b, 0x12, 0xb2, 0xc3, 0x66, 0x47, 0x24, 0xf9, 0xd4, 0xb6, - 0x2d, 0xdb, 0x95, 0x05, 0xac, 0xf0, 0x72, 0xb8, 0x2f, 0xd8, 0x4e, 0xa9, 0x99, 0x1e, 0x6d, 0xbb, - 0x96, 0xf3, 0xef, 0x0b, 0xcc, 0x40, 0x95, 0x45, 0x71, 0x55, 0xed, 0xdf, 0x55, 0x70, 0xf0, 0x4c, - 0x8f, 0x16, 0x18, 0x8a, 0x3e, 0x07, 0x83, 0xf8, 0x51, 0x65, 0xcb, 0xf4, 0x4a, 0x13, 0xca, 0xeb, - 0xd1, 0x23, 0x93, 0x84, 0x62, 0x47, 0x26, 0xe9, 0x27, 0x9b, 0xc4, 0xf1, 0x27, 0x9f, 0x62, 0x4a, - 0x13, 0x8a, 0x16, 0x9d, 0xc4, 0x23, 0x48, 0x36, 0x89, 0x47, 0x00, 0x41, 0xbd, 0x25, 0xc7, 0x6e, - 0x95, 0x26, 0x94, 0x4a, 0x4a, 0xbd, 0x1c, 0x15, 0xd4, 0xcb, 0x7f, 0x06, 0xf5, 0x56, 0x56, 0xdb, - 0x5e, 0x89, 0x7d, 0xe3, 0x52, 0x4a, 0xbd, 0x3e, 0x32, 0xa8, 0xd7, 0x07, 0xb0, 0xa9, 0x10, 0x01, - 0x8b, 0x8e, 0xcd, 0x26, 0xed, 0x1b, 0x66, 0xa3, 0xa1, 0xdc, 0x8c, 0x4e, 0x85, 0x71, 0x3c, 0x9b, - 0x0a, 0xe3, 0x30, 0xb6, 0xf5, 0xe4, 0xad, 0xa2, 0xcb, 0xed, 0xba, 0x72, 0x2b, 0xba, 0xf5, 0x0c, - 0x31, 0x6c, 0xeb, 0x19, 0xfe, 0xc2, 0xd3, 0x05, 0xfb, 0xa5, 0xd1, 0x15, 0x87, 0xba, 0xab, 0xca, - 0xed, 0xd8, 0xe9, 0x42, 0xc2, 0xe1, 0xe9, 0x42, 0xfa, 0x4d, 0xea, 0xf0, 0x60, 0x64, 0xa1, 0xf1, - 0x9f, 0x61, 0x2a, 0x54, 0x77, 0x6a, 0xab, 0xca, 0x07, 0x91, 0xd5, 0x23, 0xa9, 0x4b, 0x55, 0x94, - 0x74, 0xa6, 0x47, 0xeb, 0xc6, 0x09, 0x8f, 0xe5, 0xaf, 0xcf, 0xf2, 0x10, 0xac, 0xda, 0xe2, 0xa4, - 0x7f, 0x08, 0x7d, 0x23, 0x76, 0x2c, 0x4f, 0x92, 0xe0, 0xb1, 0x3c, 0x09, 0x26, 0x2d, 0x38, 0x1f, - 0x3b, 0xaa, 0xcd, 0xe9, 0x0d, 0x76, 0x2e, 0xa1, 0xc6, 0xa2, 0x5e, 0xbb, 0x43, 0x3d, 0xe5, 0x43, - 0xc8, 0xfb, 0x42, 0x87, 0x03, 0x5f, 0x8c, 0x7a, 0xa6, 0x47, 0xdb, 0x82, 0x1f, 0x51, 0x21, 0x5f, - 0x99, 0x5e, 0x5a, 0x54, 0x3e, 0x1c, 0xbd, 0xdf, 0x64, 0xb0, 0x99, 0x1e, 0x0d, 0x71, 0x6c, 0x97, - 0x76, 0xb3, 0x55, 0x77, 0x74, 0x83, 0xf2, 0x8d, 0x16, 0xee, 0xdd, 0xc4, 0x06, 0xf4, 0x23, 0xd1, - 0x5d, 0x5a, 0x27, 0x3a, 0xb6, 0x4b, 0xeb, 0x84, 0x63, 0x8a, 0x1a, 0xc9, 0x36, 0xa2, 0x7c, 0x34, - 0xaa, 0xa8, 0x11, 0x24, 0x53, 0xd4, 0x68, 0x6e, 0x92, 0x0f, 0xc2, 0xa9, 0xe0, 0x3c, 0x2f, 0xd6, - 0x5f, 0xde, 0x69, 0xca, 0xc7, 0x90, 0xcf, 0xf9, 0xc4, 0x63, 0x40, 0x84, 0x6a, 0xa6, 0x47, 0xeb, - 0x50, 0x9e, 0xad, 0xb8, 0x89, 0x44, 0x5a, 0x62, 0x7b, 0xf1, 0x1d, 0xd1, 0x15, 0xb7, 0x03, 0x19, - 0x5b, 0x71, 0x3b, 0xa0, 0x52, 0x99, 0x0b, 0xa1, 0xea, 0x5b, 0x30, 0x0f, 0x64, 0xda, 0x89, 0x43, - 0x2a, 0x73, 0xb1, 0x53, 0x5b, 0xde, 0x82, 0x79, 0xb0, 0x5b, 0xeb, 0xc4, 0x81, 0x5c, 0x84, 0x42, - 0xa5, 0x32, 0xa7, 0xb5, 0x2d, 0xa5, 0x16, 0xb3, 0x7f, 0x45, 0xe8, 0x4c, 0x8f, 0x26, 0xf0, 0x6c, - 0x1b, 0x34, 0xd5, 0xd0, 0x5d, 0xcf, 0xac, 0xb9, 0x38, 0x62, 0xfc, 0x11, 0x62, 0x44, 0xb7, 0x41, - 0x69, 0x34, 0x6c, 0x1b, 0x94, 0x06, 0x67, 0xfb, 0xc5, 0x49, 0xdd, 0x75, 0x75, 0xcb, 0x70, 0xf4, - 0x09, 0x5c, 0x26, 0x68, 0xcc, 0xbf, 0x2a, 0x82, 0x65, 0xfb, 0xc5, 0x28, 0x04, 0x2f, 0xdf, 0x7d, - 0x88, 0xbf, 0xcd, 0x59, 0x89, 0x5d, 0xbe, 0xc7, 0xf0, 0x78, 0xf9, 0x1e, 0x83, 0xe1, 0xbe, 0xd3, - 0x87, 0x69, 0xb4, 0x6e, 0x32, 0x11, 0x29, 0xf5, 0xd8, 0xbe, 0x33, 0x4e, 0x80, 0xfb, 0xce, 0x38, - 0x30, 0xd2, 0x24, 0x7f, 0xb9, 0x5d, 0xed, 0xd0, 0xa4, 0x70, 0x95, 0x4d, 0x94, 0x61, 0xeb, 0x77, - 0x38, 0x38, 0x4a, 0xeb, 0x96, 0xde, 0xb4, 0x4b, 0x13, 0xbe, 0xd4, 0xcd, 0xe8, 0xfa, 0xdd, 0x91, - 0x90, 0xad, 0xdf, 0x1d, 0x91, 0x6c, 0x76, 0xf5, 0x0f, 0x5a, 0xab, 0xba, 0x43, 0x8d, 0x92, 0xe9, - 0xe0, 0xcd, 0xe2, 0x3a, 0x3f, 0x1a, 0xbe, 0x19, 0x9d, 0x5d, 0xbb, 0x90, 0xb2, 0xd9, 0xb5, 0x0b, - 0x9a, 0x6d, 0xf2, 0xd2, 0xd1, 0x1a, 0xd5, 0x0d, 0xe5, 0x4e, 0x74, 0x93, 0xd7, 0x99, 0x92, 0x6d, - 0xf2, 0x3a, 0x63, 0x3b, 0x7f, 0xce, 0x6d, 0xc7, 0xf4, 0xa8, 0xd2, 0xd8, 0xce, 0xe7, 0x20, 0x69, - 0xe7, 0xcf, 0x41, 0x34, 0x3b, 0x10, 0xc6, 0x3b, 0xa4, 0x19, 0x3d, 0x10, 0x26, 0xbb, 0x21, 0x5e, - 0x82, 0xed, 0x58, 0x84, 0x9b, 0x9d, 0x62, 0x45, 0x77, 0x2c, 0x02, 0xcc, 0x76, 0x2c, 0xa1, 0x23, - 0x5e, 0xc4, 0xb9, 0x4a, 0xb1, 0xa3, 0x6b, 0xa8, 0x8c, 0x63, 0x6b, 0x68, 0xc4, 0x11, 0xeb, 0xb9, - 0x88, 0xe7, 0x80, 0xd2, 0x8a, 0xee, 0x3a, 0x24, 0x14, 0xdb, 0x75, 0xc8, 0x3e, 0x06, 0x93, 0x70, - 0x0c, 0x5f, 0xc1, 0xb5, 0x76, 0xf0, 0x8e, 0xf3, 0xf1, 0xe8, 0x67, 0xc6, 0xd0, 0xec, 0x33, 0x63, - 0xa0, 0x08, 0x13, 0x31, 0x6d, 0x39, 0x1d, 0x98, 0x84, 0xf7, 0x83, 0x31, 0x10, 0x99, 0x05, 0x52, - 0x29, 0xce, 0xcd, 0x96, 0x8d, 0x45, 0xf9, 0x89, 0xcc, 0x8d, 0xde, 0xc0, 0x26, 0x29, 0x66, 0x7a, - 0xb4, 0x94, 0x72, 0xe4, 0x4d, 0x38, 0x2b, 0xa0, 0xc2, 0x87, 0x1a, 0xf3, 0xed, 0x1b, 0xc1, 0x82, - 0xe0, 0x45, 0x2d, 0xd3, 0xba, 0xd1, 0xce, 0xf4, 0x68, 0x5d, 0x79, 0x75, 0xae, 0x4b, 0xac, 0x0f, - 0xed, 0xed, 0xd4, 0x15, 0x2c, 0x12, 0x5d, 0x79, 0x75, 0xae, 0x4b, 0xc8, 0xfd, 0xee, 0x76, 0xea, - 0x0a, 0x3a, 0xa1, 0x2b, 0x2f, 0xe2, 0xc2, 0x78, 0x37, 0x7c, 0xb1, 0xd1, 0x50, 0xd6, 0xb0, 0xba, - 0xf7, 0x6e, 0xa7, 0xba, 0x22, 0x6e, 0x38, 0xb7, 0xe2, 0xc8, 0x66, 0xe9, 0x85, 0x16, 0xb5, 0x2a, - 0x91, 0x05, 0xe8, 0x5e, 0x74, 0x96, 0x4e, 0x10, 0xb0, 0x59, 0x3a, 0x01, 0x64, 0x03, 0x4a, 0x76, - 0x40, 0x51, 0xd6, 0xa3, 0x03, 0x4a, 0xc6, 0xb1, 0x01, 0x15, 0x71, 0x56, 0x59, 0x80, 0xe3, 0x0b, - 0x77, 0x3c, 0xdd, 0xdf, 0x41, 0xba, 0xa2, 0x2b, 0xdf, 0x8a, 0x3d, 0x32, 0x25, 0x49, 0xf0, 0x91, - 0x29, 0x09, 0x66, 0x63, 0x84, 0x81, 0x2b, 0xeb, 0x56, 0x6d, 0x5a, 0x37, 0x1b, 0x6d, 0x87, 0x2a, - 0xff, 0x5d, 0x74, 0x8c, 0xc4, 0xd0, 0x6c, 0x8c, 0xc4, 0x40, 0x6c, 0x81, 0x66, 0xa0, 0xa2, 0xeb, - 0x9a, 0x75, 0x4b, 0x9c, 0x2b, 0xdb, 0x0d, 0x4f, 0xf9, 0xef, 0xa3, 0x0b, 0x74, 0x1a, 0x0d, 0x5b, - 0xa0, 0xd3, 0xe0, 0x78, 0xeb, 0xc4, 0x7a, 0x81, 0x2d, 0x1e, 0xf2, 0x5b, 0xe5, 0xff, 0x10, 0xbb, - 0x75, 0x4a, 0xa1, 0xc1, 0x5b, 0xa7, 0x14, 0x38, 0x5b, 0x1f, 0xf9, 0x9e, 0x6c, 0xd6, 0x0c, 0xde, - 0xaa, 0xff, 0xc7, 0xe8, 0xfa, 0x18, 0xc7, 0xb3, 0xf5, 0x31, 0x0e, 0x8b, 0xf2, 0x11, 0x5d, 0xf0, - 0x3f, 0x75, 0xe2, 0x13, 0xc8, 0x3f, 0x51, 0x86, 0x5c, 0x97, 0xf9, 0x88, 0x91, 0xf2, 0x9d, 0x99, - 0x4e, 0x8c, 0x82, 0xe1, 0x91, 0x28, 0x14, 0x65, 0xa4, 0xd1, 0xbb, 0x26, 0x5d, 0x53, 0x3e, 0xd1, - 0x91, 0x11, 0x27, 0x88, 0x32, 0xe2, 0x30, 0xf2, 0x06, 0x9c, 0x0a, 0x61, 0x73, 0xb4, 0xb9, 0x1c, - 0xcc, 0x4c, 0xdf, 0x95, 0x89, 0x6e, 0x83, 0xd3, 0xc9, 0xd8, 0x36, 0x38, 0x1d, 0x93, 0xc6, 0x5a, - 0x88, 0xee, 0x7f, 0xde, 0x82, 0x75, 0x20, 0xc1, 0x0e, 0x0c, 0xd2, 0x58, 0x0b, 0x69, 0x7e, 0xf7, - 0x16, 0xac, 0x03, 0x99, 0x76, 0x60, 0x40, 0x3e, 0x9d, 0x81, 0x0b, 0xe9, 0xa8, 0x62, 0xa3, 0x31, - 0x6d, 0x3b, 0x21, 0x4e, 0xf9, 0x9e, 0x4c, 0xf4, 0xa2, 0x61, 0x7b, 0xc5, 0x66, 0x7a, 0xb4, 0x6d, - 0x56, 0x40, 0x3e, 0x00, 0xc3, 0xc5, 0xb6, 0x61, 0x7a, 0xf8, 0xf0, 0xc6, 0x36, 0xce, 0x9f, 0xcc, - 0xc4, 0x8e, 0x38, 0x32, 0x16, 0x8f, 0x38, 0x32, 0x80, 0xbc, 0x06, 0x63, 0x15, 0x5a, 0x6b, 0x3b, - 0xa6, 0xb7, 0xae, 0xd1, 0x96, 0xed, 0x78, 0x8c, 0xc7, 0xf7, 0x66, 0xa2, 0x93, 0x58, 0x82, 0x82, - 0x4d, 0x62, 0x09, 0x20, 0xb9, 0x95, 0x78, 0x95, 0x17, 0x9d, 0xf9, 0xa9, 0x4c, 0xd7, 0x67, 0xf9, - 0xa0, 0x2f, 0xd3, 0x8b, 0x93, 0xc5, 0xd4, 0xec, 0xfe, 0xca, 0xa7, 0x33, 0x5d, 0x9e, 0xd1, 0xa5, - 0x19, 0x2e, 0x09, 0x66, 0x1c, 0x53, 0x52, 0xaf, 0x2b, 0xdf, 0x97, 0xe9, 0xf2, 0xec, 0x1d, 0x72, - 0x4c, 0xcb, 0xda, 0xfe, 0x0c, 0xb7, 0x14, 0x11, 0x8c, 0xfe, 0x97, 0x4c, 0xd2, 0x54, 0x24, 0x28, - 0x2f, 0x11, 0xb2, 0x62, 0x37, 0xdd, 0x40, 0xe9, 0x3f, 0x93, 0x49, 0xda, 0xe6, 0x85, 0xc5, 0xc2, - 0x5f, 0x84, 0xc2, 0x99, 0xa9, 0x7b, 0x1e, 0x75, 0x2c, 0xbd, 0x81, 0xdd, 0x59, 0xf1, 0x6c, 0x47, - 0xaf, 0xd3, 0x29, 0x4b, 0x5f, 0x6e, 0x50, 0xe5, 0xb3, 0x99, 0xe8, 0x0e, 0xb6, 0x33, 0x29, 0xdb, - 0xc1, 0x76, 0xc6, 0x92, 0x55, 0x78, 0x30, 0x0d, 0x5b, 0x32, 0x5d, 0xac, 0xe7, 0x73, 0x99, 0xe8, - 0x16, 0xb6, 0x0b, 0x2d, 0xdb, 0xc2, 0x76, 0x41, 0x93, 0xab, 0x30, 0x30, 0x61, 0xfb, 0xd3, 0xef, - 0xf7, 0xc7, 0x8c, 0x21, 0x03, 0xcc, 0x4c, 0x8f, 0x16, 0x92, 0x89, 0x32, 0x62, 0x50, 0x7f, 0x3e, - 0x59, 0x26, 0x7c, 0x7c, 0x0a, 0x7e, 0x88, 0x32, 0x42, 0xdc, 0x3f, 0x90, 0x2c, 0x13, 0xbe, 0x71, - 0x05, 0x3f, 0xd8, 0x4c, 0xc2, 0x6b, 0x9c, 0x9b, 0x2e, 0xb2, 0x7d, 0xdb, 0xe4, 0xaa, 0xde, 0x68, - 0x50, 0xab, 0x4e, 0x95, 0x2f, 0xc4, 0x66, 0x92, 0x74, 0x32, 0x36, 0x93, 0xa4, 0x63, 0xc8, 0x47, - 0xe0, 0xf4, 0x2d, 0xbd, 0x61, 0x1a, 0x21, 0xce, 0x4f, 0xc4, 0xad, 0xfc, 0x60, 0x26, 0x7a, 0x9a, - 0xee, 0x40, 0xc7, 0x4e, 0xd3, 0x1d, 0x50, 0x64, 0x0e, 0x08, 0x2e, 0xa3, 0xc1, 0x6c, 0xc1, 0xd6, - 0x67, 0xe5, 0x7f, 0xcd, 0x44, 0xf7, 0xa9, 0x49, 0x12, 0xb6, 0x4f, 0x4d, 0x42, 0x49, 0xb5, 0x73, - 0x46, 0x0f, 0xe5, 0x87, 0x32, 0xd1, 0xdb, 0x9a, 0x4e, 0x84, 0x33, 0x3d, 0x5a, 0xe7, 0xb4, 0x20, - 0xd7, 0x61, 0xb4, 0xb2, 0x58, 0x9e, 0x9e, 0x9e, 0xaa, 0xdc, 0x2a, 0x97, 0xd0, 0x75, 0xc1, 0x50, - 0x7e, 0x38, 0xb6, 0x62, 0xc5, 0x09, 0xd8, 0x8a, 0x15, 0x87, 0x91, 0x17, 0x61, 0x88, 0xb5, 0x9f, - 0x0d, 0x18, 0xfc, 0xe4, 0x2f, 0x66, 0xa2, 0xdb, 0x29, 0x19, 0xc9, 0xb6, 0x53, 0xf2, 0x6f, 0x52, - 0x81, 0x13, 0x4c, 0x8a, 0x8b, 0x0e, 0x5d, 0xa1, 0x0e, 0xb5, 0x6a, 0xfe, 0x98, 0xfe, 0x91, 0x4c, - 0x74, 0x97, 0x91, 0x46, 0xc4, 0x76, 0x19, 0x69, 0x70, 0x72, 0x07, 0xce, 0xc6, 0x6f, 0x82, 0x64, - 0x47, 0x52, 0xe5, 0x47, 0x33, 0xb1, 0xcd, 0x70, 0x17, 0x62, 0xdc, 0x0c, 0x77, 0xc1, 0x13, 0x0b, - 0xce, 0x89, 0x6b, 0x15, 0x61, 0x70, 0x19, 0xaf, 0xed, 0xc7, 0x78, 0x6d, 0x8f, 0x86, 0x06, 0x81, - 0x5d, 0xa8, 0x67, 0x7a, 0xb4, 0xee, 0xec, 0x98, 0x9e, 0x25, 0xf3, 0x56, 0x28, 0x3f, 0x9e, 0x49, - 0xb7, 0x48, 0x89, 0x98, 0x29, 0xa7, 0x25, 0xbc, 0x78, 0xa3, 0x53, 0xd6, 0x05, 0xe5, 0x27, 0x62, - 0xe3, 0x2d, 0x9d, 0x8c, 0x8d, 0xb7, 0x0e, 0x69, 0x1b, 0x5e, 0x83, 0x31, 0xae, 0xd4, 0x8b, 0x3a, - 0x0e, 0x43, 0xab, 0x4e, 0x0d, 0xe5, 0x7f, 0x8b, 0xad, 0x76, 0x09, 0x0a, 0x34, 0xed, 0x89, 0x03, - 0xd9, 0xd4, 0x5d, 0x69, 0xe9, 0x96, 0x85, 0xd7, 0xac, 0xca, 0xff, 0x1e, 0x9b, 0xba, 0x43, 0x14, - 0x1a, 0xee, 0x06, 0xbf, 0x98, 0x26, 0x74, 0xcb, 0x58, 0xa4, 0xfc, 0x64, 0x4c, 0x13, 0xba, 0x11, - 0x33, 0x4d, 0xe8, 0x9a, 0xfe, 0xe8, 0x56, 0x07, 0xa7, 0x6e, 0xe5, 0x4b, 0xb1, 0x15, 0x39, 0x95, - 0x8a, 0xad, 0xc8, 0xe9, 0x3e, 0xe1, 0xb7, 0x3a, 0x38, 0x44, 0x2b, 0x3f, 0xd5, 0x9d, 0x6f, 0xb8, - 0xd2, 0xa7, 0xfb, 0x53, 0xdf, 0xea, 0xe0, 0x4c, 0xac, 0xfc, 0x74, 0x77, 0xbe, 0xa1, 0x61, 0x5f, - 0xba, 0x2f, 0x72, 0xb5, 0xb3, 0x23, 0xae, 0xf2, 0x33, 0xf1, 0xa9, 0xab, 0x03, 0x21, 0x4e, 0x5d, - 0x9d, 0xbc, 0x79, 0x97, 0xe1, 0x01, 0xae, 0x21, 0xd7, 0x1d, 0xbd, 0xb5, 0x5a, 0xa1, 0x9e, 0x67, - 0x5a, 0x75, 0xff, 0x24, 0xf6, 0x7f, 0x64, 0x62, 0xd7, 0x63, 0x9d, 0x28, 0xf1, 0x7a, 0xac, 0x13, - 0x92, 0x29, 0x6f, 0xc2, 0xe5, 0x56, 0xf9, 0xd9, 0x98, 0xf2, 0x26, 0x28, 0x98, 0xf2, 0x26, 0x3d, - 0x75, 0x5f, 0x4b, 0xf1, 0x2c, 0x55, 0xfe, 0xcf, 0xce, 0xbc, 0x82, 0xf6, 0xa5, 0x38, 0xa4, 0xbe, - 0x96, 0xe2, 0x40, 0xa9, 0xfc, 0x5f, 0x9d, 0x79, 0x85, 0x36, 0x48, 0x49, 0xbf, 0xcb, 0x37, 0xe0, - 0x14, 0x9f, 0xcd, 0xa7, 0xa9, 0x41, 0x23, 0x1f, 0xfa, 0x73, 0xb1, 0xb1, 0x9f, 0x4e, 0x86, 0x57, - 0xee, 0xa9, 0x98, 0x34, 0xd6, 0xa2, 0xad, 0x3f, 0xbf, 0x05, 0xeb, 0xf0, 0x40, 0x90, 0x8e, 0x61, - 0xeb, 0x8d, 0xec, 0xce, 0xa6, 0xfc, 0x42, 0x6c, 0xbd, 0x91, 0x91, 0x68, 0xce, 0x21, 0xfb, 0xbe, - 0xbd, 0x18, 0x75, 0xdd, 0x52, 0xfe, 0xef, 0xd4, 0xc2, 0x41, 0x07, 0x44, 0xfd, 0xbc, 0x5e, 0x8c, - 0xba, 0x29, 0x29, 0xbf, 0x98, 0x5a, 0x38, 0xf8, 0x80, 0x08, 0xf1, 0x44, 0x1f, 0xf4, 0xe2, 0x15, - 0x82, 0xfa, 0xa5, 0x0c, 0x0c, 0x55, 0x3c, 0x87, 0xea, 0x4d, 0x11, 0xba, 0xe8, 0x0c, 0xf4, 0x73, - 0x5b, 0x3c, 0xdf, 0x15, 0x50, 0x0b, 0x7e, 0x93, 0x0b, 0x30, 0x32, 0xab, 0xbb, 0x1e, 0x96, 0x2c, - 0x5b, 0x06, 0xbd, 0x87, 0x7e, 0x28, 0x39, 0x2d, 0x06, 0x25, 0xb3, 0x9c, 0x8e, 0x97, 0xc3, 0x68, - 0x75, 0xb9, 0x2d, 0x23, 0xf6, 0xf4, 0xbf, 0xbd, 0x31, 0xde, 0x83, 0x01, 0x7a, 0x62, 0x65, 0xd5, - 0xaf, 0x65, 0x20, 0x61, 0x25, 0xb8, 0x7b, 0x17, 0xdd, 0x05, 0x38, 0x16, 0x8b, 0x90, 0x28, 0x9c, - 0x69, 0xb6, 0x19, 0x40, 0x31, 0x5e, 0x9a, 0xbc, 0x37, 0x70, 0xe2, 0xb8, 0xa9, 0xcd, 0x8a, 0x68, - 0x4c, 0x7d, 0x9b, 0x1b, 0xe3, 0xb9, 0xb6, 0xd3, 0xd0, 0x24, 0x94, 0x88, 0xb6, 0xf1, 0xad, 0xd1, - 0x30, 0xfc, 0x1b, 0xb9, 0x20, 0xfc, 0x85, 0x33, 0x61, 0x0c, 0xa7, 0x58, 0x72, 0x61, 0xee, 0x1f, - 0xfc, 0x01, 0x18, 0x2a, 0x37, 0x5b, 0xd4, 0x71, 0x6d, 0x4b, 0xf7, 0x6c, 0x47, 0xb8, 0x5b, 0x62, - 0x7c, 0x1f, 0x53, 0x82, 0xcb, 0x31, 0x67, 0x64, 0x7a, 0x72, 0xc9, 0xcf, 0x77, 0x94, 0xc3, 0xc0, - 0x7b, 0xe8, 0xf4, 0x14, 0x4f, 0x58, 0xcb, 0x29, 0x18, 0xe9, 0x4d, 0x57, 0x47, 0x77, 0x9f, 0x80, - 0xb4, 0xcd, 0x00, 0x32, 0x29, 0x52, 0x90, 0xc7, 0xa1, 0x80, 0xd7, 0xa3, 0x2e, 0xe6, 0x31, 0x13, - 0x91, 0xa5, 0x1a, 0x08, 0x91, 0x5d, 0xb0, 0x38, 0x0d, 0xb9, 0x01, 0xa3, 0xe1, 0xdb, 0xcf, 0x75, - 0xc7, 0x6e, 0xb7, 0xfc, 0xcc, 0x05, 0x98, 0xe8, 0xf7, 0x4e, 0x80, 0xab, 0xd6, 0x11, 0x29, 0xb1, - 0x48, 0x14, 0x24, 0x33, 0x70, 0x2c, 0x84, 0x31, 0x11, 0xf9, 0x19, 0x53, 0x30, 0x5b, 0x9d, 0xc4, - 0x8b, 0x89, 0x33, 0x92, 0xad, 0x2e, 0x56, 0x8c, 0x94, 0xa1, 0xcf, 0x0f, 0x2b, 0xd5, 0xbf, 0xa5, - 0x92, 0x1e, 0x17, 0x61, 0xa5, 0xfa, 0xe4, 0x80, 0x52, 0x7e, 0x79, 0x32, 0x0d, 0x23, 0x9a, 0xdd, - 0xf6, 0xe8, 0x92, 0x2d, 0x36, 0x4d, 0x22, 0x7c, 0x19, 0xb6, 0xc9, 0x61, 0x98, 0xaa, 0x67, 0xfb, - 0x79, 0x92, 0xe5, 0x7c, 0xbd, 0xd1, 0x52, 0x64, 0x1e, 0xc6, 0x12, 0xaf, 0x64, 0x72, 0xf6, 0x62, - 0xe9, 0xf3, 0x92, 0xcc, 0x92, 0x45, 0xc9, 0x27, 0x33, 0x50, 0x58, 0x72, 0x74, 0xd3, 0x73, 0x85, - 0xa7, 0xd0, 0xc9, 0xcb, 0x6b, 0x8e, 0xde, 0x62, 0xfa, 0x71, 0x19, 0x23, 0x2b, 0xde, 0xd2, 0x1b, - 0x6d, 0xea, 0x4e, 0xdc, 0x66, 0x5f, 0xf7, 0x4f, 0x37, 0xc6, 0x5f, 0xac, 0xe3, 0x59, 0xfc, 0x72, - 0xcd, 0x6e, 0x5e, 0xa9, 0x3b, 0xfa, 0x5d, 0xd3, 0xc3, 0x19, 0x4f, 0x6f, 0x5c, 0xf1, 0x68, 0x03, - 0x8f, 0xfc, 0x57, 0xf4, 0x96, 0x79, 0x05, 0x1d, 0xf0, 0xae, 0x04, 0x9c, 0x78, 0x0d, 0x4c, 0x05, - 0x3c, 0xfc, 0x4b, 0x56, 0x01, 0x8e, 0x23, 0xf3, 0xec, 0xa4, 0x8c, 0x9f, 0x5a, 0x6c, 0xb5, 0x84, - 0xdb, 0x91, 0x74, 0x50, 0xf6, 0x31, 0x5c, 0xb1, 0x03, 0x81, 0xe9, 0xad, 0x96, 0x9c, 0x1f, 0x3d, - 0xa4, 0x63, 0x5a, 0xb0, 0x24, 0x5a, 0xe4, 0x8b, 0x69, 0x38, 0x94, 0xb8, 0xdf, 0xd8, 0x14, 0x21, - 0xc5, 0x8b, 0x91, 0x65, 0x38, 0x26, 0xf8, 0x06, 0x31, 0xee, 0x47, 0xa2, 0xb3, 0x42, 0x0c, 0xcd, - 0x95, 0x36, 0x68, 0xa3, 0x21, 0xc0, 0x72, 0x1d, 0xb1, 0x12, 0x64, 0x22, 0x4c, 0xbc, 0x39, 0xaf, - 0x37, 0xa9, 0xab, 0x1c, 0x43, 0x8d, 0x3d, 0xbb, 0xb9, 0x31, 0xae, 0xf8, 0xe5, 0x31, 0xc2, 0x5a, - 0x6a, 0x1a, 0x69, 0x2c, 0x22, 0xf3, 0xe0, 0x5a, 0x3f, 0x9a, 0xc2, 0x23, 0xae, 0xf3, 0xd1, 0x22, - 0x64, 0x12, 0x86, 0x03, 0xab, 0xe7, 0x9b, 0x37, 0xcb, 0x25, 0xf4, 0x6b, 0x12, 0x41, 0xf6, 0x62, - 0x51, 0xe8, 0x65, 0x26, 0x91, 0x32, 0x92, 0xf3, 0x37, 0x77, 0x74, 0x8a, 0x39, 0x7f, 0xb7, 0x52, - 0x9c, 0xbf, 0x17, 0xc9, 0xcb, 0x30, 0x58, 0xbc, 0x5d, 0x11, 0x4e, 0xed, 0xae, 0x72, 0x3c, 0xcc, - 0x5b, 0x82, 0x99, 0xc4, 0x85, 0x03, 0xbc, 0xdc, 0x74, 0x99, 0x9e, 0x4c, 0xc1, 0x48, 0xc4, 0x70, - 0xc2, 0x55, 0x4e, 0x20, 0x07, 0x6c, 0xb9, 0x8e, 0x98, 0xaa, 0x23, 0x50, 0x91, 0xdc, 0xf6, 0x91, - 0x42, 0x4c, 0x6b, 0x4a, 0xa6, 0x8b, 0x39, 0x20, 0x34, 0x8a, 0xfe, 0xf3, 0xe8, 0x25, 0xd5, 0xcf, - 0xb5, 0xc6, 0x10, 0xa8, 0xaa, 0xc3, 0x71, 0x91, 0x64, 0xf6, 0xd1, 0x62, 0xe4, 0x4d, 0x20, 0x98, - 0x35, 0x82, 0x1a, 0xfe, 0x3d, 0x7a, 0xb9, 0xe4, 0x2a, 0xa7, 0x30, 0xc2, 0x2c, 0x89, 0xfb, 0xeb, - 0x96, 0x4b, 0x13, 0x17, 0xc4, 0xf4, 0x71, 0x5e, 0xe7, 0xa5, 0xaa, 0xbe, 0xaf, 0x6e, 0xd5, 0x8c, - 0xa4, 0xd4, 0x4c, 0xe1, 0x4a, 0xd6, 0xe0, 0xf4, 0xa2, 0x43, 0xef, 0x9a, 0x76, 0xdb, 0xf5, 0x97, - 0x0f, 0x7f, 0xde, 0x3a, 0xbd, 0xe5, 0xbc, 0xf5, 0xb0, 0xa8, 0xf8, 0x64, 0xcb, 0xa1, 0x77, 0xab, - 0x7e, 0x5c, 0xd1, 0x48, 0x58, 0xbc, 0x4e, 0xdc, 0x31, 0x31, 0xe8, 0x5b, 0x6d, 0x87, 0x0a, 0xb8, - 0x49, 0x5d, 0x45, 0x09, 0xa7, 0x5a, 0x1e, 0x0a, 0xc1, 0x0c, 0x70, 0x91, 0xc4, 0xa0, 0xd1, 0x62, - 0x44, 0x03, 0x72, 0x7d, 0xd2, 0x7f, 0x53, 0x29, 0xd6, 0x78, 0xfa, 0x44, 0xe5, 0x01, 0x64, 0xa6, - 0x32, 0xb1, 0xd4, 0x6b, 0x41, 0x8c, 0xe1, 0xaa, 0x2e, 0xf0, 0xb2, 0x58, 0x92, 0xa5, 0xc9, 0x2c, - 0x8c, 0x2e, 0x3a, 0x78, 0xc2, 0xbb, 0x41, 0xd7, 0x17, 0xed, 0x86, 0x59, 0x5b, 0x47, 0x67, 0x2d, - 0x31, 0x55, 0xb6, 0x38, 0xae, 0x7a, 0x87, 0xae, 0x57, 0x5b, 0x88, 0x95, 0x97, 0x95, 0x78, 0x49, - 0x39, 0xe6, 0xe7, 0x83, 0xdb, 0x8b, 0xf9, 0x49, 0x61, 0x54, 0xbc, 0xc8, 0xdc, 0xf3, 0xa8, 0xc5, - 0x96, 0x7a, 0x57, 0x38, 0x66, 0x29, 0xb1, 0x17, 0x9c, 0x00, 0x2f, 0x12, 0xdb, 0xf3, 0x51, 0x46, - 0x03, 0xb0, 0xdc, 0xb0, 0x78, 0x91, 0x64, 0x60, 0xcc, 0x73, 0xbb, 0x08, 0x8c, 0xf9, 0xff, 0xe7, - 0xe4, 0xf9, 0x97, 0x9c, 0x85, 0xbc, 0x94, 0xb7, 0x02, 0xa3, 0xfe, 0x61, 0x8c, 0xdf, 0xbc, 0x08, - 0x66, 0x3a, 0x20, 0xf6, 0x2e, 0x41, 0x78, 0x07, 0xcc, 0x46, 0x16, 0x46, 0x82, 0xd3, 0x42, 0x02, - 0xcc, 0x04, 0xd5, 0x5e, 0x6e, 0x98, 0x35, 0x8c, 0xfc, 0x9c, 0x93, 0xfc, 0xb9, 0x11, 0xca, 0x03, - 0x3f, 0x4b, 0x24, 0xe4, 0x2a, 0x0c, 0xfa, 0x37, 0x0b, 0x61, 0xd4, 0x4b, 0x0c, 0x08, 0x2c, 0x66, - 0x6b, 0x11, 0x6f, 0x58, 0x22, 0x22, 0x2f, 0x00, 0x84, 0xd3, 0x81, 0xd8, 0x69, 0xe1, 0x52, 0x21, - 0xcf, 0x1e, 0xf2, 0x52, 0x11, 0x52, 0xb3, 0x89, 0x53, 0x56, 0x47, 0x3f, 0xf7, 0x1d, 0x4e, 0x9c, - 0x11, 0x1d, 0x96, 0x15, 0x24, 0x5a, 0x84, 0x2c, 0xc0, 0x58, 0x42, 0x03, 0x45, 0x8c, 0x4c, 0xcc, - 0x7f, 0x9c, 0xa2, 0xbe, 0xf2, 0xc2, 0x9c, 0x28, 0x4b, 0x1e, 0x81, 0xdc, 0x4d, 0xad, 0x2c, 0xe2, - 0xf4, 0xf1, 0x10, 0x8f, 0x91, 0x20, 0x1e, 0x0c, 0xab, 0x7e, 0x57, 0x36, 0xb1, 0x36, 0x31, 0xe9, - 0x09, 0x56, 0x52, 0x0f, 0xa2, 0xf4, 0xfc, 0xfa, 0xb9, 0xf4, 0x24, 0x22, 0x72, 0x11, 0xfa, 0x17, - 0xd9, 0xcc, 0x50, 0xb3, 0x1b, 0xa2, 0x3f, 0x31, 0xe2, 0x4a, 0x4b, 0xc0, 0xb4, 0x00, 0x4b, 0xae, - 0x4a, 0x29, 0x1b, 0xa5, 0xd0, 0xb7, 0x7e, 0xca, 0xc6, 0x78, 0x0c, 0x58, 0x4c, 0xde, 0x78, 0x35, - 0x96, 0x1d, 0x46, 0x94, 0x49, 0x59, 0x17, 0xc3, 0x6c, 0x30, 0xc1, 0xae, 0xb4, 0x77, 0xab, 0x5d, - 0xa9, 0xfa, 0xdb, 0x99, 0xe4, 0x38, 0x23, 0xd7, 0x92, 0x51, 0x28, 0x71, 0x11, 0x0a, 0x80, 0x72, - 0xad, 0x41, 0x3c, 0xca, 0x48, 0x3c, 0xc9, 0xec, 0xae, 0xe3, 0x49, 0xe6, 0x76, 0x18, 0x4f, 0x52, - 0xfd, 0xcf, 0xf9, 0xae, 0x16, 0x84, 0x07, 0x12, 0x77, 0xe8, 0x79, 0x76, 0xb2, 0x62, 0xb5, 0x17, - 0xdd, 0xc4, 0xf9, 0x80, 0x1b, 0x48, 0x55, 0x75, 0x3e, 0xb4, 0x5c, 0x2d, 0x4a, 0x49, 0x5e, 0x81, - 0x21, 0xff, 0x03, 0x30, 0x4e, 0xa9, 0x14, 0x5f, 0x33, 0x58, 0xd5, 0x62, 0x11, 0x3d, 0x23, 0x05, - 0xc8, 0x33, 0x30, 0x80, 0x7b, 0x9a, 0x96, 0x5e, 0xf3, 0x83, 0xd8, 0xf2, 0xa8, 0xb7, 0x3e, 0x50, - 0x8e, 0xad, 0x13, 0x50, 0x92, 0x8f, 0x42, 0x41, 0x44, 0x72, 0xe7, 0xd9, 0x8c, 0xaf, 0x6c, 0xc3, - 0xe4, 0xf2, 0xb2, 0x1c, 0xc5, 0x9d, 0x9f, 0x52, 0x10, 0x10, 0x39, 0xa5, 0xf0, 0x00, 0xee, 0x4b, - 0x70, 0x7c, 0xd1, 0xa1, 0x06, 0x1a, 0xf7, 0x4e, 0xdd, 0x6b, 0x39, 0x22, 0xc6, 0x3e, 0x1f, 0xe5, - 0xb8, 0x48, 0xb5, 0x7c, 0x34, 0x5b, 0x3e, 0x05, 0x5e, 0x8e, 0xa4, 0x99, 0x52, 0x9c, 0xed, 0x5c, - 0x78, 0x4b, 0x6e, 0xd0, 0xf5, 0x35, 0xcc, 0xad, 0xdd, 0x1f, 0xee, 0x5c, 0x84, 0xa0, 0xef, 0x08, - 0x94, 0xbc, 0x73, 0x89, 0x16, 0x3a, 0xf3, 0x3c, 0x0c, 0xee, 0x36, 0x12, 0xfa, 0xaf, 0x64, 0x3b, - 0xd8, 0xe2, 0xdf, 0xbf, 0xc9, 0xa8, 0x82, 0x34, 0xa8, 0xbd, 0x1d, 0xd2, 0xa0, 0x7e, 0x33, 0xdb, - 0xc1, 0xd1, 0xe0, 0xbe, 0x4e, 0x57, 0x18, 0x08, 0x23, 0x9a, 0xae, 0x30, 0xcc, 0x14, 0x69, 0x1a, - 0x9a, 0x4c, 0x14, 0x4b, 0x6c, 0x5a, 0xd8, 0x32, 0xb1, 0xe9, 0xcf, 0xe5, 0xba, 0x39, 0x62, 0x1c, - 0xc9, 0x7e, 0x27, 0xb2, 0xbf, 0x0a, 0x83, 0x81, 0x64, 0xcb, 0x25, 0xdc, 0xf4, 0x0c, 0x07, 0x79, - 0x17, 0x38, 0x18, 0xcb, 0x48, 0x44, 0xe4, 0x12, 0x6f, 0x6b, 0xc5, 0x7c, 0x8b, 0x47, 0x00, 0x1f, - 0x16, 0xb1, 0x9d, 0x75, 0x4f, 0xaf, 0xba, 0xe6, 0x5b, 0x54, 0x0b, 0xd0, 0xea, 0xdf, 0xc9, 0xa6, - 0x7a, 0xb3, 0x1c, 0xf5, 0xd1, 0x0e, 0xfa, 0x28, 0x45, 0x88, 0xdc, 0x0f, 0xe7, 0x48, 0x88, 0x3b, - 0x10, 0xe2, 0x5f, 0x64, 0x53, 0xbd, 0x96, 0x8e, 0x84, 0xb8, 0x93, 0xd9, 0xe2, 0x71, 0x18, 0xd0, - 0xec, 0x35, 0x77, 0x12, 0x0f, 0x36, 0x7c, 0xae, 0xc0, 0x89, 0xda, 0xb1, 0xd7, 0xdc, 0x2a, 0x1e, - 0x59, 0xb4, 0x90, 0x40, 0xfd, 0x56, 0xb6, 0x8b, 0x5f, 0xd7, 0x91, 0xe0, 0xdf, 0xc9, 0x25, 0xf2, - 0xd7, 0xb3, 0x11, 0xbf, 0xb1, 0xfb, 0x3a, 0xef, 0x77, 0xa5, 0xb6, 0x4a, 0x9b, 0x7a, 0x3c, 0xef, - 0xb7, 0x8b, 0x50, 0x91, 0x7d, 0x33, 0x24, 0x51, 0xbf, 0x9c, 0x8d, 0x39, 0xce, 0x1d, 0xc9, 0x6e, - 0xdb, 0xb2, 0x0b, 0xb4, 0x4e, 0xf8, 0x02, 0x1e, 0x49, 0x6e, 0xbb, 0x92, 0xfb, 0x54, 0x36, 0xe6, - 0x36, 0x79, 0xdf, 0xca, 0x8e, 0x0d, 0xc0, 0xa4, 0x3b, 0xe7, 0x7d, 0xab, 0x49, 0x8f, 0xc3, 0x80, - 0x90, 0x43, 0xb0, 0x54, 0xf0, 0x79, 0x9f, 0x03, 0xf1, 0x96, 0x35, 0x20, 0x50, 0xbf, 0x27, 0x0b, - 0x51, 0x77, 0xd6, 0xfb, 0x54, 0x87, 0x7e, 0x3d, 0x1b, 0x75, 0xe4, 0xbd, 0x7f, 0xf5, 0xe7, 0x32, - 0x40, 0xa5, 0xbd, 0x5c, 0x13, 0x71, 0x20, 0x7b, 0xa5, 0x6b, 0xfa, 0x00, 0xaa, 0x49, 0x14, 0xea, - 0x7f, 0xc9, 0xa6, 0x7a, 0x17, 0xdf, 0xbf, 0x02, 0x7c, 0x1a, 0x6f, 0xc5, 0x6b, 0x56, 0x38, 0x91, - 0xe3, 0x25, 0x24, 0x1b, 0x7f, 0x89, 0xd4, 0x5b, 0x3e, 0x21, 0x79, 0x7f, 0xca, 0x76, 0x0d, 0x03, - 0x83, 0x87, 0xdb, 0x35, 0xf9, 0x19, 0x42, 0xda, 0xb8, 0xfd, 0xc3, 0xec, 0x56, 0xce, 0xd8, 0xf7, - 0xf3, 0xaa, 0xda, 0xb7, 0xa8, 0xaf, 0x63, 0xd0, 0x30, 0xd6, 0x13, 0x43, 0x3c, 0x31, 0x54, 0x8b, - 0x83, 0xe4, 0xb7, 0x37, 0x41, 0xa5, 0xfe, 0x79, 0x6f, 0xba, 0x27, 0xf0, 0xfd, 0x2b, 0xc2, 0xb3, - 0x90, 0x5f, 0xd4, 0xbd, 0x55, 0xa1, 0xc9, 0xf8, 0xa4, 0xd7, 0xd2, 0xbd, 0x55, 0x0d, 0xa1, 0xe4, - 0x12, 0xf4, 0x6b, 0xfa, 0x1a, 0xbf, 0xf3, 0x2c, 0x84, 0x49, 0xbb, 0x1c, 0x7d, 0xad, 0xca, 0xef, - 0x3d, 0x03, 0x34, 0x51, 0x83, 0xa4, 0x71, 0xfc, 0xe6, 0x1b, 0x33, 0x16, 0xf1, 0xa4, 0x71, 0x41, - 0xaa, 0xb8, 0xb3, 0x90, 0x9f, 0xb0, 0x8d, 0x75, 0x7c, 0xbe, 0x1a, 0xe2, 0x95, 0x2d, 0xdb, 0xc6, - 0xba, 0x86, 0x50, 0xf2, 0xe9, 0x0c, 0xf4, 0xcd, 0x50, 0xdd, 0x60, 0x23, 0x64, 0xa0, 0x9b, 0xd5, - 0xc9, 0x07, 0xf7, 0xc7, 0xea, 0x64, 0x6c, 0x95, 0x57, 0x26, 0x2b, 0x8a, 0xa8, 0x9f, 0x5c, 0x87, - 0xfe, 0x49, 0xdd, 0xa3, 0x75, 0xdb, 0x59, 0x47, 0x3b, 0x9a, 0x91, 0xd0, 0x9a, 0x34, 0xa2, 0x3f, - 0x3e, 0x11, 0x7f, 0x19, 0xab, 0x89, 0x5f, 0x5a, 0x50, 0x98, 0x89, 0x45, 0xa4, 0xb1, 0x1e, 0x0c, - 0xc5, 0xc2, 0xf3, 0x55, 0x07, 0xd9, 0xaa, 0x83, 0x6b, 0xe5, 0xa1, 0xf4, 0x6b, 0x65, 0xdc, 0x3d, - 0xa2, 0xad, 0x1d, 0xa6, 0x6a, 0x1b, 0xc6, 0x45, 0x9f, 0xef, 0x1e, 0x11, 0x8a, 0x99, 0xda, 0x34, - 0x89, 0x44, 0xfd, 0x7a, 0x2f, 0xa4, 0xfa, 0x0d, 0x1e, 0x29, 0xf9, 0x91, 0x92, 0x87, 0x4a, 0x5e, - 0x4a, 0x28, 0xf9, 0x99, 0xa4, 0x27, 0xea, 0xbb, 0x54, 0xc3, 0xbf, 0x98, 0x4f, 0xf8, 0xb1, 0xdf, - 0xdf, 0xa7, 0xcb, 0x50, 0x7a, 0xbd, 0x5b, 0x4a, 0x2f, 0x18, 0x10, 0x85, 0x2d, 0x07, 0x44, 0xdf, - 0x76, 0x07, 0x44, 0x7f, 0xc7, 0x01, 0x11, 0x2a, 0xc8, 0x40, 0x47, 0x05, 0x29, 0x8b, 0x41, 0x03, - 0xdd, 0xd3, 0x80, 0x9e, 0xdd, 0xdc, 0x18, 0x1f, 0x61, 0xa3, 0x29, 0x35, 0x01, 0x28, 0xb2, 0x50, - 0xbf, 0x96, 0xef, 0x12, 0x7c, 0xe2, 0x40, 0x74, 0xe4, 0x69, 0xc8, 0x15, 0x5b, 0x2d, 0xa1, 0x1f, - 0xc7, 0xa5, 0xb8, 0x17, 0x1d, 0x4a, 0x31, 0x6a, 0xf2, 0x02, 0xe4, 0x8a, 0xb7, 0x2b, 0xf1, 0x10, - 0xfa, 0xc5, 0xdb, 0x15, 0xf1, 0x25, 0x1d, 0xcb, 0xde, 0xae, 0x90, 0x97, 0xc2, 0x58, 0x76, 0xab, - 0x6d, 0xeb, 0x8e, 0x38, 0x28, 0x0a, 0x73, 0x5b, 0xdf, 0x1c, 0xa7, 0xc6, 0x50, 0xec, 0xb8, 0x18, - 0xa3, 0x8d, 0x69, 0x53, 0x61, 0xfb, 0xda, 0xd4, 0xb7, 0xa5, 0x36, 0xf5, 0x6f, 0x57, 0x9b, 0x06, - 0xb6, 0xa1, 0x4d, 0xb0, 0xa5, 0x36, 0x0d, 0xee, 0x5d, 0x9b, 0x5a, 0x70, 0x26, 0x19, 0x30, 0x28, - 0xd0, 0x08, 0x0d, 0x48, 0x12, 0x2b, 0x0c, 0x4b, 0xf0, 0xe9, 0xbf, 0xcd, 0xb1, 0x55, 0x9e, 0x6e, - 0x3e, 0x9e, 0xac, 0x5d, 0x4b, 0x29, 0xad, 0xfe, 0x4a, 0xb6, 0x73, 0x9c, 0xa3, 0xc3, 0x39, 0xc5, - 0x7d, 0x47, 0xaa, 0x94, 0xf2, 0x51, 0xbf, 0xd3, 0xce, 0x52, 0x8e, 0xb1, 0x4d, 0x93, 0xd9, 0x57, - 0x33, 0x9d, 0x82, 0x2f, 0xed, 0x49, 0x62, 0x8f, 0x26, 0x2d, 0xda, 0xd0, 0x4e, 0xdf, 0x8d, 0x9a, - 0xb2, 0xc5, 0xb3, 0x97, 0xe7, 0x76, 0x99, 0xbd, 0xfc, 0xb7, 0x33, 0x70, 0xfc, 0x46, 0x7b, 0x99, - 0x0a, 0x0b, 0xb6, 0xa0, 0x19, 0x6f, 0x02, 0x30, 0xb0, 0x30, 0x62, 0xc9, 0xa0, 0x11, 0xcb, 0xfb, - 0xe4, 0xc0, 0x49, 0xb1, 0x02, 0x97, 0x43, 0x6a, 0x6e, 0xc0, 0x72, 0xce, 0x37, 0xe6, 0xbc, 0xd3, - 0x5e, 0xa6, 0xd5, 0x84, 0x25, 0x8b, 0xc4, 0xfd, 0xcc, 0xcb, 0xdc, 0x4c, 0x7e, 0xb7, 0x46, 0x23, - 0xbf, 0x94, 0xed, 0x18, 0xab, 0xea, 0xd0, 0xa6, 0x49, 0xfb, 0x70, 0x6a, 0xaf, 0xc4, 0xd3, 0xa5, - 0xa5, 0x90, 0xc4, 0x38, 0xa6, 0x71, 0x49, 0x17, 0xd8, 0x21, 0x4f, 0xde, 0xf7, 0x8e, 0x0a, 0xec, - 0x0f, 0x33, 0x1d, 0x63, 0x8a, 0x1d, 0x56, 0x81, 0xa9, 0xff, 0x2a, 0xe7, 0x87, 0x32, 0xdb, 0xd3, - 0x27, 0x3c, 0x0e, 0x03, 0xc2, 0xa3, 0x33, 0x6a, 0x80, 0x2b, 0xae, 0xf2, 0xf0, 0x6a, 0x38, 0x20, - 0x60, 0xcb, 0xbc, 0x64, 0x1d, 0x2c, 0x19, 0xe0, 0x4a, 0x96, 0xc1, 0x9a, 0x44, 0xc2, 0x16, 0xf2, - 0xa9, 0x7b, 0xa6, 0x87, 0xbb, 0x02, 0xd6, 0x97, 0x39, 0xbe, 0x90, 0xd3, 0x7b, 0xa6, 0xc7, 0xf7, - 0x04, 0x01, 0x9a, 0x2d, 0xd2, 0x95, 0x30, 0x35, 0xb1, 0x58, 0xa4, 0x5d, 0x91, 0xa1, 0x59, 0xb8, - 0x8d, 0x3d, 0x0e, 0x03, 0xc2, 0xaa, 0x55, 0x98, 0x99, 0x88, 0xd6, 0x0a, 0x3b, 0x58, 0x6c, 0x6d, - 0x40, 0xc0, 0x38, 0x6a, 0xb4, 0x1e, 0x1a, 0xd6, 0x21, 0x47, 0x07, 0x21, 0x9a, 0xc0, 0x90, 0xab, - 0x30, 0x52, 0xf1, 0x74, 0xcb, 0xd0, 0x1d, 0x63, 0xa1, 0xed, 0xb5, 0xda, 0x9e, 0xbc, 0x29, 0x75, - 0x3d, 0xc3, 0x6e, 0x7b, 0x5a, 0x8c, 0x82, 0x3c, 0x09, 0xc3, 0x3e, 0x64, 0xca, 0x71, 0x6c, 0x47, - 0xde, 0x79, 0xb8, 0x9e, 0x41, 0x1d, 0x47, 0x8b, 0x12, 0x90, 0xf7, 0xc3, 0x70, 0xd9, 0xba, 0x6b, - 0xf3, 0x9c, 0xd7, 0x37, 0xb5, 0x59, 0xb1, 0x0f, 0x41, 0x57, 0x2c, 0x33, 0x40, 0x54, 0xdb, 0x4e, - 0x43, 0x8b, 0x12, 0xaa, 0x9b, 0xd9, 0x64, 0xc4, 0xb7, 0xfb, 0xf7, 0xd0, 0x72, 0x29, 0x6a, 0x4c, - 0x87, 0x16, 0xa4, 0xb8, 0x21, 0x94, 0x6d, 0x79, 0xf9, 0xbe, 0xf0, 0x2a, 0xf4, 0xdf, 0xa0, 0xeb, - 0xdc, 0xee, 0xb3, 0x10, 0x9a, 0x0a, 0xdf, 0x11, 0x30, 0xf9, 0xc6, 0xd5, 0xa7, 0x53, 0xbf, 0x92, - 0x4d, 0xc6, 0xb2, 0xbb, 0x7f, 0x85, 0xfd, 0x24, 0xf4, 0xa1, 0x28, 0xcb, 0xfe, 0x95, 0x3f, 0x0a, - 0x10, 0xc5, 0x1d, 0xb5, 0x40, 0xf6, 0xc9, 0xd4, 0x9f, 0x2a, 0xc4, 0x03, 0x1c, 0xde, 0xbf, 0xd2, - 0x7b, 0x11, 0x06, 0x27, 0x6d, 0xcb, 0x35, 0x5d, 0x8f, 0x5a, 0x35, 0x5f, 0x61, 0x1f, 0x60, 0x1b, - 0xaa, 0x5a, 0x08, 0x96, 0x7d, 0x90, 0x24, 0xea, 0xdd, 0x28, 0x2f, 0x79, 0x16, 0x06, 0x50, 0xe4, - 0x68, 0x27, 0xcd, 0x27, 0x3c, 0x7c, 0x2d, 0x58, 0x66, 0xc0, 0xb8, 0x91, 0x74, 0x48, 0x4a, 0x6e, - 0x42, 0xff, 0xe4, 0xaa, 0xd9, 0x30, 0x1c, 0x6a, 0xa1, 0xbd, 0xb0, 0xe4, 0x47, 0x1e, 0xed, 0xcb, - 0xcb, 0xf8, 0x2f, 0xd2, 0xf2, 0xe6, 0xd4, 0x44, 0xb1, 0x88, 0x17, 0x96, 0x80, 0x9d, 0xf9, 0xa1, - 0x2c, 0x40, 0x58, 0x80, 0x3c, 0x04, 0xd9, 0x20, 0xeb, 0x27, 0x9a, 0xa9, 0x44, 0x34, 0x28, 0x8b, - 0x4b, 0x85, 0x18, 0xdb, 0xd9, 0x2d, 0xc7, 0xf6, 0x4d, 0x28, 0xf0, 0x1b, 0x2f, 0xb4, 0x24, 0x97, - 0x62, 0xae, 0x75, 0x6c, 0xf0, 0x65, 0xa4, 0xe7, 0x87, 0x59, 0xdc, 0x79, 0x46, 0xac, 0xb2, 0x39, - 0xb3, 0x33, 0x35, 0xe8, 0xc5, 0xbf, 0xc8, 0x05, 0xc8, 0x2f, 0xf9, 0x19, 0x03, 0x87, 0xf9, 0x2c, - 0x1d, 0x93, 0x1f, 0xe2, 0x59, 0x37, 0x4d, 0xda, 0x96, 0xc7, 0xaa, 0xc6, 0x56, 0x0f, 0x09, 0xb9, - 0x08, 0x58, 0x44, 0x2e, 0x02, 0xa6, 0xfe, 0x83, 0x6c, 0x4a, 0xe8, 0xcd, 0xfb, 0x77, 0x98, 0x3c, - 0x0f, 0x80, 0x2e, 0xdd, 0x4c, 0x9e, 0xbe, 0x8b, 0x06, 0x8e, 0x12, 0x64, 0x84, 0x6a, 0x1b, 0x39, - 0x76, 0x84, 0xc4, 0xea, 0xef, 0x66, 0x12, 0xf1, 0x1a, 0xf7, 0x24, 0x47, 0x79, 0x57, 0x96, 0xdd, - 0xe5, 0x36, 0xd6, 0xef, 0x8b, 0xdc, 0xce, 0xfa, 0x22, 0xfa, 0x2d, 0xfb, 0xb0, 0x33, 0x3d, 0xc8, - 0x6f, 0xf9, 0x7a, 0x36, 0x2d, 0x7a, 0xe5, 0xe1, 0x54, 0xf1, 0x6b, 0xc1, 0xa6, 0x34, 0x1f, 0x8b, - 0x17, 0x8c, 0xd0, 0x78, 0x56, 0x53, 0xb1, 0x4d, 0xfd, 0x18, 0x1c, 0x8b, 0xc5, 0x74, 0x14, 0xe9, - 0x28, 0x2f, 0x74, 0x0f, 0x0e, 0xd9, 0x39, 0x18, 0x40, 0x84, 0x4c, 0xfd, 0xaf, 0x99, 0xee, 0x11, - 0x3d, 0x0f, 0x5c, 0x75, 0x52, 0x04, 0x90, 0xfb, 0x9b, 0x11, 0xc0, 0x3e, 0x1c, 0x83, 0x0f, 0xb7, - 0x00, 0xde, 0x25, 0x93, 0xc7, 0x3b, 0x2d, 0x80, 0x9f, 0xca, 0x6c, 0x19, 0x90, 0xf5, 0xa0, 0x65, - 0xa0, 0xfe, 0xf3, 0x4c, 0x6a, 0xe0, 0xd4, 0x3d, 0xb5, 0xeb, 0x25, 0x28, 0x70, 0xb3, 0x1a, 0xd1, - 0x2a, 0x29, 0xd5, 0x0c, 0x83, 0x76, 0x4a, 0xb7, 0xcc, 0xb1, 0x64, 0x16, 0xfa, 0x78, 0x1b, 0x8c, - 0x78, 0x3a, 0xfa, 0x94, 0x76, 0x1a, 0x9d, 0x26, 0x47, 0x81, 0x56, 0x7f, 0x27, 0x93, 0x88, 0xe3, - 0x7a, 0x80, 0xdf, 0x16, 0x4e, 0xd5, 0xb9, 0xed, 0x4f, 0xd5, 0xea, 0x9f, 0x65, 0xd3, 0xc3, 0xc8, - 0x1e, 0xe0, 0x87, 0xec, 0xc7, 0x75, 0xda, 0xee, 0xd6, 0xad, 0x25, 0x18, 0x89, 0xca, 0x42, 0x2c, - 0x5b, 0xe7, 0xd3, 0x83, 0xe9, 0x76, 0x68, 0x45, 0x8c, 0x87, 0xfa, 0x76, 0x26, 0x19, 0x01, 0xf7, - 0xc0, 0xe7, 0xa7, 0xdd, 0x69, 0x4b, 0xf4, 0x53, 0xde, 0x25, 0x6b, 0xcd, 0x7e, 0x7c, 0xca, 0xbb, - 0x64, 0xd5, 0xd8, 0xdd, 0xa7, 0xfc, 0x42, 0xb6, 0x53, 0x00, 0xe1, 0x03, 0xff, 0xa0, 0x0f, 0xc9, - 0x42, 0xe6, 0x2d, 0x13, 0x9f, 0xf6, 0x50, 0xa7, 0x88, 0xbd, 0x1d, 0x78, 0x26, 0xf8, 0xec, 0x6e, - 0x8c, 0xa7, 0x0a, 0xeb, 0x5d, 0xa2, 0xc8, 0x87, 0x43, 0x58, 0xef, 0x92, 0xa1, 0xf2, 0xee, 0x13, - 0xd6, 0x6f, 0x66, 0xb7, 0x1b, 0xb5, 0xfa, 0x48, 0x78, 0x09, 0xe1, 0x7d, 0x3e, 0x9b, 0x8c, 0xa6, - 0x7e, 0xe0, 0x62, 0x9a, 0x86, 0x82, 0x88, 0xeb, 0xde, 0x51, 0x38, 0x1c, 0xdf, 0x69, 0x47, 0x23, - 0xbe, 0xe3, 0x1a, 0x88, 0x87, 0x9c, 0xed, 0x89, 0x84, 0xd3, 0xaa, 0xdf, 0xca, 0xc4, 0x42, 0x8f, - 0x1f, 0xc8, 0x15, 0xc2, 0xae, 0x96, 0x24, 0xf2, 0xb2, 0x7f, 0x99, 0x99, 0x8f, 0x85, 0x7e, 0x0d, - 0xbe, 0xa7, 0x44, 0x3d, 0xdd, 0x6c, 0xc4, 0xcb, 0x8b, 0x98, 0x00, 0x5f, 0xc9, 0xc2, 0x58, 0x82, - 0x94, 0x5c, 0x88, 0x84, 0xd2, 0xc1, 0x6b, 0xc9, 0x98, 0xf1, 0x38, 0x0f, 0xaa, 0xb3, 0x83, 0x9b, - 0xd4, 0x0b, 0x90, 0x2f, 0xe9, 0xeb, 0xfc, 0xdb, 0x7a, 0x39, 0x4b, 0x43, 0x5f, 0x97, 0x6f, 0xdc, - 0x10, 0x4f, 0x96, 0xe1, 0x24, 0x7f, 0x0f, 0x31, 0x6d, 0x6b, 0xc9, 0x6c, 0xd2, 0xb2, 0x35, 0x67, - 0x36, 0x1a, 0xa6, 0x2b, 0x1e, 0xf5, 0x1e, 0xdf, 0xdc, 0x18, 0xbf, 0xe8, 0xd9, 0x9e, 0xde, 0xa8, - 0x52, 0x9f, 0xac, 0xea, 0x99, 0x4d, 0x5a, 0x35, 0xad, 0x6a, 0x13, 0x29, 0x25, 0x96, 0xe9, 0xac, - 0x48, 0x99, 0x47, 0xf9, 0xad, 0xd4, 0x74, 0xcb, 0xa2, 0x46, 0xd9, 0x9a, 0x58, 0xf7, 0x28, 0x7f, - 0x0c, 0xcc, 0xf1, 0x2b, 0x41, 0xee, 0x1b, 0xce, 0xd1, 0x8c, 0xf1, 0x32, 0x23, 0xd0, 0x52, 0x0a, - 0xa9, 0xbf, 0x95, 0x4f, 0x89, 0x3a, 0x7f, 0x88, 0xd4, 0xc7, 0xef, 0xe9, 0xfc, 0x16, 0x3d, 0x7d, - 0x05, 0xfa, 0x6e, 0x51, 0x07, 0xef, 0xb7, 0xf8, 0x03, 0x03, 0x1a, 0xb3, 0xdf, 0xe5, 0x20, 0xf9, - 0x85, 0x46, 0x50, 0x91, 0x06, 0x9c, 0x59, 0x62, 0xdd, 0x94, 0xde, 0x99, 0x85, 0x5d, 0x74, 0x66, - 0x17, 0x7e, 0xe4, 0x0d, 0x38, 0x8d, 0xd8, 0x94, 0x6e, 0xed, 0xc3, 0xaa, 0x30, 0x46, 0x15, 0xaf, - 0x2a, 0xbd, 0x73, 0x3b, 0x95, 0x27, 0x1f, 0x82, 0xa1, 0x60, 0x80, 0x98, 0xd4, 0x15, 0x2f, 0x17, - 0x5d, 0xc6, 0x19, 0x0f, 0x00, 0xc7, 0xc0, 0x68, 0x42, 0x16, 0x0d, 0x22, 0x16, 0xe1, 0xa5, 0xfe, - 0xb3, 0x4c, 0xb7, 0xe8, 0xf7, 0x07, 0x3e, 0x2b, 0xbf, 0x0c, 0x7d, 0x06, 0xff, 0x28, 0xa1, 0x53, - 0xdd, 0xe3, 0xe3, 0x73, 0x52, 0xcd, 0x2f, 0xa3, 0xfe, 0x69, 0xa6, 0x6b, 0xd0, 0xfd, 0xc3, 0xfe, - 0x79, 0x9f, 0xcf, 0x75, 0xf8, 0x3c, 0x31, 0x89, 0x5e, 0x82, 0x51, 0x33, 0x8c, 0x0a, 0x5c, 0x0d, - 0xc3, 0x4f, 0x69, 0xc7, 0x24, 0x38, 0x8e, 0xae, 0x6b, 0x70, 0xca, 0x37, 0x7c, 0x74, 0x7c, 0x0b, - 0x31, 0xb7, 0xda, 0x76, 0x4c, 0x3e, 0x2e, 0xb5, 0x13, 0x6e, 0xcc, 0x7c, 0xcc, 0xbd, 0xe9, 0x98, - 0xac, 0x02, 0xdd, 0x5b, 0xa5, 0x96, 0x5e, 0x5d, 0xb3, 0x9d, 0x3b, 0x18, 0x65, 0x94, 0x0f, 0x4e, - 0xed, 0x18, 0x87, 0xdf, 0xf6, 0xc1, 0xe4, 0x11, 0x18, 0xae, 0x37, 0xda, 0x34, 0x88, 0xeb, 0xc8, - 0xdf, 0xfa, 0xb4, 0x21, 0x06, 0x0c, 0x5e, 0x48, 0xce, 0x01, 0x20, 0x91, 0x87, 0x29, 0x11, 0xf0, - 0x61, 0x4f, 0x1b, 0x60, 0x90, 0x25, 0xd1, 0x5d, 0x67, 0xb8, 0x56, 0x73, 0x21, 0x55, 0x1b, 0xb6, - 0x55, 0xaf, 0x7a, 0xd4, 0x69, 0x62, 0x43, 0xd1, 0x98, 0x41, 0x3b, 0x85, 0x14, 0xf8, 0x74, 0xe2, - 0xce, 0xda, 0x56, 0x7d, 0x89, 0x3a, 0x4d, 0xd6, 0xd4, 0xc7, 0x81, 0x88, 0xa6, 0x3a, 0x78, 0xe9, - 0xc1, 0x3f, 0x0e, 0xad, 0x19, 0x34, 0xf1, 0x11, 0xfc, 0x36, 0x04, 0x3f, 0x6c, 0x1c, 0x06, 0x79, - 0x70, 0x3b, 0x2e, 0x34, 0x34, 0x61, 0xd0, 0x80, 0x83, 0x50, 0x5e, 0xa7, 0x40, 0x58, 0x57, 0x70, - 0xab, 0x6e, 0x4d, 0xfc, 0x52, 0x3f, 0x93, 0x4b, 0xcb, 0x13, 0xb0, 0x27, 0x45, 0x0b, 0xa7, 0xd5, - 0xec, 0x8e, 0xa6, 0xd5, 0x63, 0x56, 0xbb, 0x59, 0xd5, 0x5b, 0xad, 0xea, 0x8a, 0xd9, 0x40, 0xb7, - 0x2a, 0x5c, 0xf8, 0xb4, 0x61, 0xab, 0xdd, 0x2c, 0xb6, 0x5a, 0xd3, 0x1c, 0x48, 0x1e, 0x83, 0x31, - 0x46, 0x87, 0x9d, 0x14, 0x50, 0xe6, 0x91, 0x92, 0x31, 0xc0, 0xe8, 0xb0, 0x3e, 0xed, 0x03, 0xd0, - 0x2f, 0x78, 0xf2, 0xb5, 0xaa, 0x57, 0xeb, 0xe3, 0xcc, 0x5c, 0xd6, 0x73, 0x01, 0x1b, 0x3e, 0xb9, - 0xf6, 0x6a, 0x03, 0x7e, 0x79, 0x8c, 0x81, 0x6c, 0xb5, 0x9b, 0x3c, 0x22, 0x56, 0x1f, 0x22, 0x83, - 0xdf, 0xe4, 0x02, 0x8c, 0x30, 0x2e, 0x81, 0xc0, 0x78, 0xd8, 0xd8, 0x5e, 0x2d, 0x06, 0x25, 0x57, - 0xe1, 0x44, 0x04, 0xc2, 0xf7, 0xa0, 0xdc, 0x4d, 0xa0, 0x57, 0x4b, 0xc5, 0xa9, 0x5f, 0xce, 0x45, - 0xb3, 0x17, 0x1c, 0x40, 0x47, 0x9c, 0x86, 0x3e, 0xdb, 0xa9, 0x57, 0xdb, 0x4e, 0x43, 0x8c, 0xbd, - 0x82, 0xed, 0xd4, 0x6f, 0x3a, 0x0d, 0x72, 0x12, 0x0a, 0xac, 0x77, 0x4c, 0x43, 0x0c, 0xb1, 0x5e, - 0xbd, 0xd5, 0x2a, 0x1b, 0xa4, 0xc8, 0x3b, 0x04, 0x43, 0x8e, 0x56, 0x6b, 0x78, 0xb4, 0xe7, 0x46, - 0x09, 0xbd, 0x7c, 0xc5, 0x4b, 0x20, 0xb1, 0x9f, 0x30, 0x10, 0x29, 0xbf, 0x08, 0x88, 0xb1, 0x30, - 0xf0, 0x58, 0x62, 0xf0, 0x3e, 0x89, 0xb3, 0x10, 0xc8, 0x90, 0x05, 0x3f, 0xc4, 0x18, 0xa4, 0x04, - 0x24, 0xa4, 0x6a, 0xda, 0x86, 0xb9, 0x62, 0x52, 0xee, 0xd5, 0xd1, 0xcb, 0x1f, 0x7e, 0x93, 0x58, - 0x6d, 0xd4, 0x67, 0x32, 0x27, 0x20, 0xe4, 0x45, 0xae, 0x84, 0x9c, 0x0e, 0xd7, 0x3e, 0xde, 0xb7, - 0x7c, 0x9f, 0x16, 0x43, 0xa1, 0x66, 0x62, 0x79, 0x5c, 0x08, 0xd5, 0xb7, 0x73, 0xc9, 0x14, 0x16, - 0x07, 0xb2, 0xaf, 0x99, 0x01, 0x10, 0x19, 0x6a, 0xc2, 0xc7, 0xb5, 0xc0, 0xe2, 0x3c, 0xc4, 0x74, - 0xe0, 0x21, 0x95, 0x25, 0x97, 0xa0, 0x9f, 0x7f, 0x51, 0xb9, 0x24, 0xf6, 0x3b, 0x68, 0x22, 0xe6, - 0xb6, 0xcc, 0x95, 0x15, 0xb4, 0x27, 0x0b, 0xd0, 0xe4, 0x02, 0xf4, 0x95, 0xe6, 0x2b, 0x95, 0xe2, - 0xbc, 0xff, 0x52, 0x8c, 0xfe, 0x25, 0x86, 0xe5, 0x56, 0x5d, 0xdd, 0x72, 0x35, 0x1f, 0x49, 0x1e, - 0x81, 0x42, 0x79, 0x11, 0xc9, 0xb8, 0xd7, 0xe4, 0xe0, 0xe6, 0xc6, 0x78, 0x9f, 0xd9, 0xe2, 0x54, - 0x02, 0x85, 0xf5, 0xde, 0x2a, 0x97, 0x24, 0x73, 0x09, 0x5e, 0xef, 0x5d, 0xd3, 0xc0, 0x67, 0x67, - 0x2d, 0x40, 0x93, 0x67, 0x60, 0xa8, 0x42, 0x1d, 0x53, 0x6f, 0xcc, 0xb7, 0xf1, 0xa8, 0x28, 0x85, - 0x52, 0x74, 0x11, 0x5e, 0xb5, 0x10, 0xa1, 0x45, 0xc8, 0xc8, 0x59, 0xc8, 0xcf, 0x98, 0x96, 0xef, - 0xc2, 0x80, 0x36, 0xee, 0xab, 0xa6, 0xe5, 0x69, 0x08, 0x55, 0xff, 0x7d, 0x36, 0x3d, 0x0f, 0xc8, - 0x01, 0x0c, 0xc7, 0x5d, 0xbe, 0xf4, 0xc6, 0x94, 0x20, 0xbf, 0x07, 0x25, 0x58, 0x81, 0x63, 0x45, - 0xa3, 0x69, 0x5a, 0x45, 0xfc, 0xe9, 0xce, 0x4d, 0x17, 0x71, 0x78, 0x4b, 0x2e, 0x74, 0x31, 0xb4, - 0xf8, 0x1e, 0x1e, 0x94, 0x97, 0xa1, 0xaa, 0x3a, 0xc7, 0x55, 0x9b, 0x2b, 0x7a, 0xb5, 0xc6, 0x53, - 0x68, 0x68, 0x71, 0xa6, 0xea, 0x0f, 0x66, 0xb7, 0x48, 0x5d, 0x72, 0x3f, 0x4a, 0x5f, 0xfd, 0x42, - 0xb6, 0x7b, 0xf6, 0x98, 0xfb, 0x52, 0x28, 0x7f, 0x91, 0x4d, 0xc9, 0xe5, 0xb2, 0x27, 0x49, 0x5c, - 0x82, 0x7e, 0xce, 0x26, 0x30, 0xb5, 0xc5, 0x19, 0x87, 0x2b, 0x2b, 0xce, 0x74, 0x3e, 0x9a, 0xcc, - 0xc3, 0x89, 0xe2, 0xca, 0x0a, 0xad, 0x79, 0x61, 0x78, 0xe6, 0xf9, 0x30, 0x50, 0x2a, 0x0f, 0x47, - 0x2b, 0xf0, 0x61, 0x78, 0x67, 0x0c, 0x08, 0x92, 0x5a, 0x8e, 0x2c, 0xc1, 0xa9, 0x38, 0xbc, 0xc2, - 0xb7, 0xe9, 0x79, 0x29, 0x42, 0x6d, 0x82, 0x23, 0xff, 0x4f, 0xeb, 0x50, 0x36, 0xad, 0x95, 0x38, - 0x9d, 0xf6, 0x76, 0x6b, 0x25, 0xce, 0xad, 0xa9, 0xe5, 0xd4, 0xaf, 0xe4, 0xe4, 0x94, 0x37, 0xf7, - 0xaf, 0x51, 0xd4, 0xb5, 0x88, 0x29, 0xf4, 0x76, 0x87, 0xcc, 0x33, 0x22, 0xca, 0x87, 0xd1, 0x76, - 0x7c, 0xab, 0xc1, 0x20, 0xca, 0x00, 0x02, 0x65, 0xfb, 0xbf, 0x80, 0x92, 0x94, 0x21, 0x5f, 0x74, - 0xea, 0x7c, 0x0b, 0xba, 0x95, 0xe3, 0x93, 0xee, 0xd4, 0xdd, 0x74, 0xc7, 0x27, 0xc6, 0x42, 0xfd, - 0xfe, 0x6c, 0x97, 0x2c, 0x35, 0xf7, 0xe5, 0x24, 0xf2, 0x63, 0xd9, 0x4e, 0xf9, 0x66, 0x0e, 0xab, - 0x79, 0xd7, 0x3b, 0x2c, 0x9c, 0xc3, 0x6d, 0xfb, 0xb6, 0x7f, 0xc2, 0x79, 0x6c, 0x8e, 0x87, 0xc7, - 0xbe, 0x61, 0x5a, 0x06, 0x79, 0x00, 0x4e, 0xde, 0xac, 0x4c, 0x69, 0xd5, 0x1b, 0xe5, 0xf9, 0x52, - 0xf5, 0xe6, 0x7c, 0x65, 0x71, 0x6a, 0xb2, 0x3c, 0x5d, 0x9e, 0x2a, 0x8d, 0xf6, 0x90, 0xe3, 0x70, - 0x2c, 0x44, 0xcd, 0xdc, 0x9c, 0x2b, 0xce, 0x8f, 0x66, 0xc8, 0x18, 0x0c, 0x87, 0xc0, 0x89, 0x85, - 0xa5, 0xd1, 0xec, 0x63, 0xef, 0x85, 0x41, 0x3c, 0xff, 0xf3, 0xbd, 0x10, 0x19, 0x82, 0xfe, 0x85, - 0x89, 0xca, 0x94, 0x76, 0x0b, 0x99, 0x00, 0x14, 0x4a, 0x53, 0xf3, 0x8c, 0x61, 0xe6, 0xb1, 0xff, - 0x94, 0x01, 0xa8, 0x4c, 0x2f, 0x2d, 0x0a, 0xc2, 0x41, 0xe8, 0x2b, 0xcf, 0xdf, 0x2a, 0xce, 0x96, - 0x19, 0x5d, 0x3f, 0xe4, 0x17, 0x16, 0xa7, 0x58, 0x0d, 0x03, 0xd0, 0x3b, 0x39, 0xbb, 0x50, 0x99, - 0x1a, 0xcd, 0x32, 0xa0, 0x36, 0x55, 0x2c, 0x8d, 0xe6, 0x18, 0xf0, 0xb6, 0x56, 0x5e, 0x9a, 0x1a, - 0xcd, 0xb3, 0x3f, 0x67, 0x2b, 0x4b, 0xc5, 0xa5, 0xd1, 0x5e, 0xf6, 0xe7, 0x34, 0xfe, 0x59, 0x60, - 0xcc, 0x2a, 0x53, 0x4b, 0xf8, 0xa3, 0x8f, 0x35, 0x61, 0xda, 0xff, 0xd5, 0xcf, 0x50, 0x8c, 0x75, - 0xa9, 0xac, 0x8d, 0x0e, 0xb0, 0x1f, 0x8c, 0x25, 0xfb, 0x01, 0xac, 0x71, 0xda, 0xd4, 0xdc, 0xc2, - 0xad, 0xa9, 0xd1, 0x41, 0xc6, 0x6b, 0xee, 0x06, 0x03, 0x0f, 0xb1, 0x3f, 0xb5, 0x39, 0xf6, 0xe7, - 0x30, 0xe3, 0xa4, 0x4d, 0x15, 0x67, 0x17, 0x8b, 0x4b, 0x33, 0xa3, 0x23, 0xac, 0x3d, 0xc8, 0xf3, - 0x18, 0x2f, 0x39, 0x5f, 0x9c, 0x9b, 0x1a, 0x1d, 0x15, 0x34, 0xa5, 0xd9, 0xf2, 0xfc, 0x8d, 0xd1, - 0x31, 0x6c, 0xc8, 0x1b, 0x73, 0xf8, 0x83, 0xb0, 0x02, 0xf8, 0xd7, 0xf1, 0xc7, 0x3e, 0x02, 0x85, - 0x85, 0x0a, 0xee, 0xf8, 0x4f, 0xc3, 0xf1, 0x85, 0x4a, 0x75, 0xe9, 0x8d, 0xc5, 0xa9, 0x98, 0xbc, - 0xc7, 0x60, 0xd8, 0x47, 0xcc, 0x96, 0xe7, 0x6f, 0x7e, 0x90, 0x4b, 0xdb, 0x07, 0xcd, 0x15, 0x27, - 0x17, 0x2a, 0xa3, 0x59, 0xd6, 0x2b, 0x3e, 0xe8, 0x76, 0x79, 0xbe, 0xb4, 0x70, 0xbb, 0x32, 0x9a, - 0x7b, 0xec, 0xae, 0x9f, 0x82, 0x79, 0xc1, 0x31, 0xeb, 0xa6, 0x45, 0xce, 0xc1, 0x03, 0xa5, 0xa9, - 0x5b, 0xe5, 0xc9, 0xa9, 0xea, 0x82, 0x56, 0xbe, 0x5e, 0x9e, 0x8f, 0xd5, 0x74, 0x12, 0xc6, 0xa2, - 0xe8, 0xe2, 0x62, 0x79, 0x34, 0x43, 0x4e, 0x01, 0x89, 0x82, 0x5f, 0x2b, 0xce, 0x4d, 0x8f, 0x66, - 0x89, 0x02, 0x27, 0xa2, 0xf0, 0xf2, 0xfc, 0xd2, 0xcd, 0xf9, 0xa9, 0xd1, 0xdc, 0x63, 0x3f, 0x93, - 0x81, 0x93, 0xa9, 0x01, 0x28, 0x88, 0x0a, 0xe7, 0xa7, 0x66, 0x8b, 0x95, 0xa5, 0xf2, 0x64, 0x65, - 0xaa, 0xa8, 0x4d, 0xce, 0x54, 0x27, 0x8b, 0x4b, 0x53, 0xd7, 0x17, 0xb4, 0x37, 0xaa, 0xd7, 0xa7, - 0xe6, 0xa7, 0xb4, 0xe2, 0xec, 0x68, 0x0f, 0x79, 0x04, 0xc6, 0x3b, 0xd0, 0x54, 0xa6, 0x26, 0x6f, - 0x6a, 0xe5, 0xa5, 0x37, 0x46, 0x33, 0xe4, 0x61, 0x38, 0xd7, 0x91, 0x88, 0xfd, 0x1e, 0xcd, 0x92, - 0xf3, 0x70, 0xa6, 0x13, 0xc9, 0xeb, 0xb3, 0xa3, 0xb9, 0xc7, 0x7e, 0x24, 0x03, 0x24, 0x19, 0x41, - 0x80, 0x3c, 0x04, 0x67, 0x99, 0x5e, 0x54, 0x3b, 0x37, 0xf0, 0x61, 0x38, 0x97, 0x4a, 0x21, 0x35, - 0x6f, 0x1c, 0x1e, 0xec, 0x40, 0x22, 0x1a, 0x77, 0x16, 0x94, 0x74, 0x02, 0x6c, 0xda, 0xaf, 0x65, - 0xe0, 0x64, 0xea, 0xf1, 0x83, 0x5c, 0x84, 0xf7, 0x14, 0x4b, 0x73, 0xac, 0x6f, 0x26, 0x97, 0xca, - 0x0b, 0xf3, 0x95, 0xea, 0xdc, 0x74, 0xb1, 0xca, 0xb4, 0xef, 0x66, 0x25, 0xd6, 0x9b, 0x17, 0x40, - 0xed, 0x42, 0x39, 0x39, 0x53, 0x9c, 0xbf, 0xce, 0x86, 0x1f, 0x79, 0x0f, 0x3c, 0xd4, 0x91, 0x6e, - 0x6a, 0xbe, 0x38, 0x31, 0x3b, 0x55, 0x1a, 0xcd, 0x92, 0x47, 0xe1, 0xe1, 0x8e, 0x54, 0xa5, 0x72, - 0x85, 0x93, 0xe5, 0x26, 0x4a, 0x6f, 0xff, 0x8b, 0xf3, 0x3d, 0x6f, 0x7f, 0xe3, 0x7c, 0xe6, 0x0f, - 0xbe, 0x71, 0x3e, 0xf3, 0x67, 0xdf, 0x38, 0x9f, 0xf9, 0xd0, 0xd5, 0x9d, 0x44, 0x86, 0xe0, 0xd3, - 0xd6, 0x72, 0x01, 0xb7, 0x02, 0x4f, 0xff, 0xb7, 0x00, 0x00, 0x00, 0xff, 0xff, 0x85, 0x3d, 0xb8, - 0x32, 0xcc, 0x60, 0x01, 0x00, + 0x8e, 0x26, 0x75, 0x21, 0x9b, 0x3f, 0xca, 0xc0, 0xf1, 0x85, 0x72, 0x69, 0xf2, 0xbb, 0x64, 0x44, + 0x25, 0xbf, 0xe7, 0x90, 0x6f, 0x38, 0x13, 0xdf, 0x73, 0xc8, 0xb7, 0x9e, 0x5f, 0xca, 0xc2, 0xf1, + 0x4a, 0x71, 0x6e, 0xf6, 0xbb, 0x65, 0x06, 0x9f, 0x94, 0xad, 0x0e, 0xfd, 0x4b, 0x30, 0xb1, 0x17, + 0x90, 0x3f, 0xf3, 0xf6, 0xb5, 0xce, 0xd6, 0x88, 0x49, 0xa1, 0x1c, 0xf2, 0xa9, 0x7b, 0x5f, 0x84, + 0xc2, 0x34, 0x3f, 0x42, 0x7d, 0xc8, 0x35, 0xff, 0x7f, 0x2d, 0xc0, 0xe0, 0xcd, 0xf6, 0x32, 0x15, + 0xc6, 0x29, 0x0f, 0xf4, 0xcd, 0xef, 0x35, 0x18, 0x14, 0x62, 0xc0, 0x57, 0x13, 0x29, 0x78, 0x9e, + 0x08, 0x86, 0xc2, 0xe3, 0x13, 0xc9, 0x44, 0xe4, 0x1c, 0xe4, 0x6f, 0x53, 0x67, 0x59, 0xf6, 0x2b, + 0xbd, 0x47, 0x9d, 0x65, 0x0d, 0xa1, 0x64, 0x36, 0x34, 0x99, 0x2f, 0x2e, 0x96, 0x31, 0x91, 0x8a, + 0x78, 0xb0, 0xc1, 0xcc, 0x30, 0x81, 0xdd, 0x9b, 0xde, 0x32, 0x79, 0x0a, 0x16, 0xd9, 0xa7, 0x3d, + 0x5e, 0x92, 0xcc, 0xc3, 0x98, 0x6c, 0xf8, 0xc4, 0xb3, 0x88, 0xf4, 0xa7, 0xb0, 0x4b, 0xcb, 0x1f, + 0x92, 0x2c, 0x4a, 0x5e, 0x85, 0x21, 0x1f, 0x88, 0x26, 0x5c, 0x03, 0x61, 0xe8, 0xfa, 0x80, 0x55, + 0x2c, 0x45, 0x51, 0xa4, 0x80, 0xcc, 0x00, 0x9f, 0x21, 0x20, 0x85, 0x41, 0xcc, 0x24, 0x2e, 0x52, + 0x80, 0x3c, 0x8b, 0x0c, 0xd0, 0xcd, 0x03, 0x8d, 0x55, 0x06, 0xd1, 0xe9, 0x12, 0x4d, 0xf2, 0x1d, + 0x01, 0xe7, 0xae, 0xb5, 0x11, 0x32, 0xb2, 0x00, 0x10, 0x1a, 0x15, 0x88, 0x00, 0x06, 0x3b, 0x36, + 0x77, 0x90, 0x58, 0xc8, 0xcf, 0x81, 0xc3, 0xbb, 0x79, 0x0e, 0x54, 0xff, 0x34, 0x0b, 0x83, 0xc5, + 0x56, 0x2b, 0x18, 0x0a, 0x4f, 0x42, 0xa1, 0xd8, 0x6a, 0xdd, 0xd2, 0xca, 0x72, 0x28, 0x73, 0xbd, + 0xd5, 0xaa, 0xb6, 0x1d, 0x53, 0xb6, 0x09, 0xe5, 0x44, 0x64, 0x12, 0x86, 0x8b, 0xad, 0xd6, 0x62, + 0x7b, 0xb9, 0x61, 0xd6, 0xa4, 0xcc, 0x48, 0x3c, 0x77, 0x5c, 0xab, 0x55, 0x6d, 0x21, 0x26, 0x9e, + 0x1e, 0x2b, 0x5a, 0x86, 0x7c, 0x02, 0xc3, 0xfe, 0x88, 0xc4, 0x3c, 0x3c, 0xf5, 0x87, 0x1a, 0x04, + 0x31, 0x0f, 0xdb, 0x76, 0x25, 0x20, 0xe2, 0xc1, 0xde, 0xcf, 0xf9, 0x21, 0xf3, 0x59, 0x45, 0x89, + 0x04, 0x3c, 0x21, 0x4b, 0xf2, 0x14, 0xf4, 0x15, 0x5b, 0x2d, 0xe9, 0xbd, 0x09, 0x8d, 0x8a, 0x58, + 0xa9, 0x78, 0xee, 0x33, 0x41, 0x76, 0xf6, 0x65, 0x18, 0x89, 0x56, 0xb6, 0xa3, 0x60, 0xf1, 0xdf, + 0xc9, 0xe0, 0x07, 0x1d, 0x72, 0x9b, 0xe6, 0x67, 0x20, 0x57, 0x6c, 0xb5, 0xc4, 0x7c, 0x74, 0x3c, + 0xa5, 0x3f, 0xe2, 0x2e, 0xd0, 0xc5, 0x56, 0xcb, 0xff, 0xf4, 0x43, 0xee, 0x1c, 0xb1, 0xab, 0x4f, + 0xff, 0x3a, 0xff, 0xf4, 0xc3, 0xed, 0xb8, 0xa0, 0xfe, 0x56, 0x0e, 0x8e, 0x15, 0x5b, 0xad, 0xa3, + 0x20, 0xf3, 0xfb, 0xe5, 0x68, 0xfd, 0x34, 0x80, 0x34, 0x3d, 0xf6, 0x05, 0xae, 0x5b, 0x83, 0xd2, + 0xd4, 0xa8, 0x64, 0x34, 0x89, 0xc8, 0x57, 0xbf, 0xfe, 0x1d, 0xa9, 0xdf, 0xa7, 0x72, 0x38, 0x15, + 0x1f, 0xf6, 0xa0, 0x51, 0xef, 0x95, 0x6e, 0x13, 0x7d, 0x50, 0xd8, 0x51, 0x1f, 0xfc, 0x41, 0x64, + 0xf0, 0x60, 0xd0, 0xf2, 0xa3, 0x5e, 0xe8, 0xdd, 0xd3, 0xb6, 0x78, 0x44, 0x16, 0xa6, 0x88, 0x64, + 0xe3, 0x27, 0x52, 0x12, 0x71, 0x95, 0x6a, 0x0c, 0x55, 0x35, 0x0d, 0x2d, 0x46, 0xeb, 0xf7, 0x61, + 0xdf, 0x8e, 0xfa, 0x70, 0x23, 0x8b, 0xbe, 0xd3, 0x41, 0x5c, 0xa6, 0xbd, 0x9f, 0x2e, 0xae, 0x02, + 0x70, 0xcb, 0x83, 0xc0, 0xac, 0x79, 0x98, 0x87, 0x60, 0xe1, 0xf9, 0x95, 0x44, 0x08, 0x96, 0x90, + 0x24, 0xb0, 0x90, 0xca, 0xa5, 0x5a, 0x48, 0x5d, 0x86, 0x7e, 0x4d, 0x5f, 0x7b, 0xa3, 0x4d, 0x9d, + 0x75, 0xb1, 0x9d, 0xe1, 0x61, 0x0f, 0xf5, 0xb5, 0xea, 0x27, 0x19, 0x50, 0x0b, 0xd0, 0x44, 0x0d, + 0x9c, 0xef, 0x25, 0x8b, 0x10, 0x7e, 0x47, 0x1e, 0xb8, 0xdc, 0xef, 0x46, 0xd1, 0xc9, 0x8b, 0x90, + 0x2b, 0xde, 0xa9, 0x08, 0xc9, 0x06, 0x5d, 0x5b, 0xbc, 0x53, 0x11, 0xf2, 0xea, 0x58, 0xf6, 0x4e, + 0x45, 0xfd, 0x54, 0x16, 0x48, 0x92, 0x92, 0x3c, 0x07, 0x03, 0x08, 0xad, 0x33, 0x9d, 0x91, 0x13, + 0x73, 0xae, 0xb9, 0x55, 0x07, 0xa1, 0x91, 0xcd, 0x9d, 0x4f, 0x4a, 0x5e, 0xc0, 0xd4, 0xc7, 0x22, + 0x35, 0x5c, 0x24, 0x31, 0xe7, 0x9a, 0xeb, 0x27, 0x0b, 0x8e, 0x65, 0x3e, 0x16, 0xc4, 0xb8, 0x2f, + 0xbc, 0x53, 0x99, 0xb1, 0x5d, 0x4f, 0x88, 0x9a, 0xef, 0x0b, 0xd7, 0x5c, 0xcc, 0x08, 0x1b, 0xd9, + 0x17, 0x72, 0x32, 0xcc, 0x6a, 0x75, 0xa7, 0xc2, 0xdd, 0x54, 0x0c, 0xcd, 0x6e, 0xf8, 0x1b, 0x4a, + 0x9e, 0xd5, 0x6a, 0xcd, 0xad, 0x72, 0x17, 0x17, 0x03, 0x73, 0x2e, 0x47, 0xb2, 0x5a, 0x45, 0x4a, + 0xa9, 0x9f, 0xef, 0x87, 0xd1, 0x92, 0xee, 0xe9, 0xcb, 0xba, 0x4b, 0xa5, 0xd3, 0xf4, 0x31, 0x1f, + 0xe6, 0x7f, 0x8e, 0x24, 0x07, 0x63, 0x39, 0xe5, 0x6b, 0xe2, 0x05, 0xc8, 0x4b, 0x21, 0xdf, 0x20, + 0xe7, 0xa8, 0x9c, 0xc4, 0x6c, 0xb9, 0xda, 0x12, 0x60, 0x2d, 0x41, 0x48, 0x9e, 0x80, 0x41, 0x1f, + 0xc6, 0x0e, 0x00, 0xb9, 0x50, 0x67, 0x8c, 0x65, 0xb6, 0xff, 0xd7, 0x64, 0x34, 0x79, 0x01, 0x86, + 0xfc, 0x9f, 0xd2, 0xd6, 0x9a, 0x67, 0x64, 0x5b, 0x4e, 0x9c, 0x9e, 0x64, 0x52, 0xb9, 0x28, 0xce, + 0x6f, 0xbd, 0x91, 0xa2, 0xb1, 0xa4, 0x67, 0x11, 0x52, 0xf2, 0x49, 0x18, 0xf1, 0x7f, 0x8b, 0x03, + 0x03, 0xcf, 0x0f, 0xf7, 0x44, 0x90, 0xd2, 0x39, 0x26, 0xd6, 0x2b, 0x51, 0x72, 0x7e, 0x74, 0x78, + 0xc8, 0xcf, 0xe3, 0x65, 0x2c, 0x27, 0x4f, 0x0e, 0xb1, 0x0a, 0x48, 0x19, 0xc6, 0x7c, 0x48, 0xa8, + 0xa1, 0x7d, 0xe1, 0x89, 0xd1, 0x58, 0xae, 0xa6, 0x2a, 0x69, 0xb2, 0x14, 0x69, 0xc0, 0xb9, 0x08, + 0xd0, 0x70, 0x57, 0xcd, 0x15, 0x4f, 0x1c, 0xf7, 0x44, 0x0c, 0x62, 0x91, 0xb8, 0x31, 0xe0, 0xca, + 0x69, 0xfc, 0x0c, 0xac, 0xd1, 0xec, 0x50, 0x5d, 0xb9, 0x91, 0x0a, 0x9c, 0xf0, 0xf1, 0x37, 0x26, + 0x17, 0x17, 0x1d, 0xfb, 0x2d, 0x5a, 0xf3, 0xca, 0x25, 0x71, 0x5c, 0xc6, 0xd8, 0x74, 0xc6, 0x72, + 0xb5, 0x5e, 0x6b, 0x31, 0xa5, 0x60, 0xb8, 0x28, 0xf3, 0xd4, 0xc2, 0xe4, 0x36, 0x9c, 0x94, 0xe0, + 0x52, 0x7a, 0x68, 0x08, 0xcf, 0xf3, 0x82, 0x6b, 0x7a, 0x86, 0xe8, 0xf4, 0xe2, 0xe4, 0x65, 0x18, + 0xf6, 0x11, 0xfc, 0x15, 0x71, 0x10, 0x5f, 0x11, 0x71, 0x48, 0x1a, 0xcb, 0xd5, 0xb8, 0x37, 0x65, + 0x94, 0x58, 0xd6, 0x28, 0xcc, 0xa8, 0x3f, 0x14, 0xd1, 0x28, 0x6f, 0xbd, 0x95, 0xaa, 0x8c, 0x98, + 0x65, 0xff, 0xd5, 0x50, 0xa3, 0x16, 0x1c, 0xb3, 0x6e, 0xf2, 0x93, 0xb4, 0xef, 0x40, 0xb9, 0x5c, + 0xb5, 0x11, 0x98, 0xa6, 0x1f, 0x9c, 0xfc, 0x6c, 0x11, 0x8e, 0xa7, 0xe8, 0xd8, 0x8e, 0x4e, 0x8c, + 0x9f, 0xcb, 0x86, 0x8d, 0x38, 0xe4, 0xc7, 0xc6, 0x09, 0xe8, 0xf7, 0xbf, 0x44, 0x6c, 0x1e, 0x94, + 0x4e, 0x43, 0x33, 0xce, 0xc3, 0xc7, 0x47, 0xc4, 0x71, 0xc8, 0x8f, 0x92, 0xfb, 0x21, 0x8e, 0x77, + 0x32, 0xa1, 0x38, 0x0e, 0xf9, 0xf1, 0xf2, 0x8f, 0x72, 0xe1, 0x9c, 0x74, 0x74, 0xc6, 0xdc, 0xaf, + 0x6d, 0x72, 0x68, 0x07, 0x5b, 0xd8, 0x81, 0x23, 0xa3, 0xac, 0x9a, 0x7d, 0xbb, 0x54, 0xcd, 0x3f, + 0x4f, 0xf6, 0x27, 0xdf, 0x7a, 0x1e, 0xca, 0xfe, 0xdc, 0x87, 0xc1, 0x4a, 0xae, 0x85, 0xeb, 0x18, + 0xdf, 0xa3, 0xf7, 0x4a, 0x21, 0xfe, 0x96, 0xc5, 0x16, 0x3d, 0x4a, 0x42, 0x3e, 0x0a, 0xa7, 0x23, + 0x80, 0x45, 0xdd, 0xd1, 0x9b, 0xd4, 0x0b, 0x33, 0x0e, 0x62, 0xd0, 0x26, 0xbf, 0x74, 0xb5, 0x15, + 0xa0, 0xe5, 0x2c, 0x86, 0x1d, 0x38, 0x48, 0xca, 0xd1, 0xb7, 0x03, 0x23, 0xe9, 0x2f, 0xe7, 0xc2, + 0xad, 0x4a, 0x34, 0xf8, 0xaa, 0x46, 0xdd, 0x76, 0xc3, 0x7b, 0x70, 0x3b, 0x78, 0x77, 0xa9, 0x2d, + 0x66, 0xe0, 0x58, 0x71, 0x65, 0x85, 0xd6, 0x3c, 0x3f, 0xa6, 0xb4, 0x2b, 0xc2, 0xed, 0xf1, 0xa3, + 0x83, 0x40, 0x89, 0x18, 0xc1, 0x91, 0xdc, 0xf8, 0xb1, 0x62, 0xea, 0x5f, 0xe4, 0x41, 0x09, 0xb6, + 0xee, 0x81, 0xa3, 0xd6, 0x01, 0x2e, 0x93, 0xef, 0x89, 0x5e, 0x31, 0x61, 0x2c, 0x14, 0x46, 0xa5, + 0xdd, 0x6c, 0xea, 0x38, 0xf4, 0xd8, 0xd1, 0x60, 0x3c, 0xce, 0x2c, 0x24, 0xe4, 0xa7, 0x81, 0xb3, + 0xe2, 0x34, 0x40, 0x42, 0x47, 0xb8, 0xaa, 0xcb, 0x59, 0x68, 0x49, 0xae, 0xe4, 0x0b, 0x19, 0x38, + 0xe1, 0x77, 0xca, 0xc2, 0x32, 0xdb, 0x16, 0x4f, 0xda, 0x6d, 0xcb, 0xf3, 0x4f, 0x22, 0x2f, 0x76, + 0xae, 0x8e, 0x77, 0xd2, 0x95, 0xb4, 0xc2, 0xbc, 0x25, 0x41, 0x60, 0x89, 0x40, 0x21, 0x6c, 0xa4, + 0xa9, 0xd6, 0x90, 0x48, 0x4b, 0xad, 0xf7, 0xec, 0x0d, 0x38, 0xd3, 0x91, 0xe5, 0x56, 0xdb, 0xd0, + 0x5e, 0x79, 0x1b, 0xfa, 0xff, 0x64, 0xc2, 0x89, 0x28, 0x26, 0x24, 0x72, 0x05, 0x20, 0x04, 0x89, + 0x83, 0xe9, 0xc8, 0xe6, 0xc6, 0x38, 0x84, 0x42, 0xd3, 0x24, 0x0a, 0xb2, 0x00, 0x05, 0x21, 0x16, + 0x9e, 0xdd, 0xf7, 0x03, 0x5b, 0xf4, 0xc2, 0x15, 0x59, 0x0e, 0x78, 0xe8, 0x14, 0xdf, 0x2c, 0xd8, + 0x9c, 0x7d, 0x01, 0x06, 0x77, 0xfb, 0x5d, 0x5f, 0xc8, 0x01, 0x91, 0x4f, 0x91, 0x07, 0xb8, 0xc5, + 0x3e, 0xc4, 0x53, 0xd8, 0x25, 0xe8, 0x67, 0x9f, 0x80, 0xf9, 0x2e, 0xa4, 0xf8, 0xb6, 0x6d, 0x01, + 0xd3, 0x02, 0x6c, 0x18, 0x5c, 0xaa, 0x2f, 0x3d, 0xb8, 0x94, 0xfa, 0x63, 0x39, 0x38, 0x25, 0x77, + 0x48, 0x89, 0x62, 0xc8, 0xfc, 0xa3, 0x4e, 0x79, 0x17, 0x3b, 0x45, 0x85, 0x02, 0x3f, 0x3c, 0x88, + 0xdc, 0x05, 0xfc, 0x62, 0x07, 0x21, 0x9a, 0xc0, 0xa8, 0xff, 0x38, 0x0b, 0xc3, 0x8b, 0xb6, 0xeb, + 0xd5, 0x1d, 0xea, 0x2e, 0xea, 0x8e, 0xfb, 0x00, 0x77, 0xc7, 0x07, 0x61, 0x18, 0xc3, 0x03, 0x35, + 0xa9, 0xc5, 0x43, 0xe8, 0xf4, 0x4a, 0xc9, 0x46, 0x7c, 0x84, 0xc8, 0x2b, 0x15, 0x21, 0x64, 0xda, + 0xcf, 0x77, 0x7e, 0x52, 0xd0, 0x26, 0xbe, 0xed, 0xe3, 0x70, 0xf5, 0xe7, 0x73, 0x30, 0xe4, 0x4b, + 0x79, 0xc2, 0x3c, 0xac, 0x2f, 0x35, 0x07, 0x2b, 0xe4, 0xab, 0x00, 0x8b, 0xb6, 0xe3, 0xe9, 0x8d, + 0xf9, 0x50, 0xf3, 0xf1, 0x8a, 0xb3, 0x85, 0x50, 0x5e, 0x46, 0x22, 0xc1, 0xf5, 0x2b, 0xdc, 0x56, + 0xf3, 0x89, 0x89, 0xaf, 0x5f, 0x01, 0x54, 0x93, 0x28, 0xd4, 0xdf, 0xcb, 0xc2, 0x31, 0xbf, 0x93, + 0xa6, 0xee, 0xd3, 0x5a, 0xfb, 0x41, 0x9e, 0x9b, 0xa2, 0xd2, 0xee, 0xdd, 0x52, 0xda, 0xea, 0xbf, + 0x94, 0x26, 0x92, 0xc9, 0x86, 0x7d, 0x34, 0x91, 0xfc, 0x43, 0xe8, 0xb8, 0xfa, 0xfd, 0x39, 0x38, + 0xe1, 0x4b, 0x7d, 0xba, 0x6d, 0xe1, 0xe5, 0xc0, 0xa4, 0xde, 0x68, 0x3c, 0xc8, 0xa7, 0xf1, 0x41, + 0x5f, 0x10, 0x0b, 0x22, 0xde, 0x9e, 0xc8, 0xf1, 0xb7, 0x22, 0xc0, 0x55, 0xdb, 0x34, 0x34, 0x99, + 0x88, 0xbc, 0x0a, 0x43, 0xfe, 0xcf, 0xa2, 0x53, 0xf7, 0x8f, 0xe0, 0x78, 0xd5, 0x1f, 0x14, 0xd2, + 0x9d, 0x48, 0x58, 0x81, 0x48, 0x01, 0xf5, 0x9f, 0x16, 0xe0, 0xec, 0x1d, 0xd3, 0x32, 0xec, 0x35, + 0xd7, 0x4f, 0x11, 0x79, 0xe8, 0xaf, 0xba, 0x0e, 0x3a, 0x35, 0xe4, 0x1b, 0x70, 0x32, 0x2e, 0x52, + 0x27, 0x08, 0xdc, 0x2d, 0x7a, 0x67, 0x8d, 0x13, 0x54, 0xfd, 0x64, 0x91, 0xe2, 0xbd, 0x4c, 0x4b, + 0x2f, 0x19, 0xcf, 0x36, 0xd9, 0xb7, 0x9d, 0x6c, 0x93, 0x8f, 0x43, 0xa1, 0x64, 0x37, 0x75, 0xd3, + 0x0f, 0x30, 0x83, 0xa3, 0x38, 0xa8, 0x17, 0x31, 0x9a, 0xa0, 0x60, 0xfc, 0x45, 0xc5, 0xd8, 0x65, + 0x03, 0x21, 0x7f, 0xbf, 0x00, 0xdb, 0xa5, 0x69, 0x32, 0x11, 0xb1, 0x61, 0x58, 0x54, 0x27, 0x5e, + 0xb7, 0x00, 0x0f, 0x4f, 0xcf, 0xfa, 0x32, 0xea, 0xac, 0x56, 0x57, 0x22, 0xe5, 0xf8, 0x31, 0x8a, + 0x27, 0xc1, 0x14, 0x1f, 0xc3, 0xdf, 0xb9, 0xb4, 0x28, 0x7f, 0x49, 0x08, 0x38, 0xc9, 0x0c, 0x26, + 0x85, 0x80, 0xb3, 0x8c, 0x4c, 0x44, 0xa6, 0x60, 0x0c, 0xc3, 0x2b, 0x07, 0x47, 0x29, 0xa6, 0x12, + 0x43, 0xb8, 0xa9, 0xc4, 0x47, 0x13, 0x1e, 0x91, 0x99, 0x7d, 0x5c, 0xb5, 0x26, 0xd0, 0x5a, 0xb2, + 0xc4, 0xd9, 0xd7, 0x80, 0x24, 0xdb, 0xbc, 0xa3, 0x67, 0x93, 0xff, 0x5d, 0x3a, 0xd7, 0x1d, 0x76, + 0xc3, 0x97, 0xfd, 0x98, 0xed, 0x22, 0xa9, 0xc3, 0x7a, 0xdf, 0xcd, 0xd4, 0x61, 0x85, 0x7d, 0x4d, + 0x1d, 0xa6, 0xfe, 0x5a, 0x06, 0xc6, 0x12, 0x71, 0xc6, 0xc9, 0x33, 0x00, 0x1c, 0x22, 0xc5, 0x73, + 0xc4, 0x00, 0x29, 0x61, 0xec, 0x71, 0xb1, 0x06, 0x86, 0x64, 0xe4, 0x2a, 0xf4, 0xf3, 0x5f, 0x22, + 0x06, 0x53, 0xb2, 0x48, 0xbb, 0x6d, 0x1a, 0x5a, 0x40, 0x14, 0xd6, 0x82, 0x0f, 0x87, 0xb9, 0xd4, + 0x22, 0xde, 0x7a, 0x2b, 0xa8, 0x85, 0x91, 0xa9, 0x9f, 0xcf, 0xc2, 0x50, 0xd0, 0xe0, 0xa2, 0x71, + 0x50, 0x3a, 0x57, 0x10, 0x21, 0xdb, 0x73, 0x5b, 0x85, 0x6c, 0x8f, 0x4d, 0xaa, 0x22, 0x46, 0xfb, + 0xfe, 0xf9, 0x3d, 0x7d, 0x31, 0x0b, 0xc7, 0x82, 0x5a, 0x0f, 0xf0, 0x8d, 0xea, 0x3d, 0x24, 0x92, + 0x2f, 0x64, 0x40, 0x99, 0x30, 0x1b, 0x0d, 0xd3, 0xaa, 0x97, 0xad, 0x15, 0xdb, 0x69, 0xe2, 0xac, + 0x77, 0x70, 0xf7, 0xb4, 0xea, 0x0f, 0x66, 0x60, 0x4c, 0x34, 0x68, 0x52, 0x77, 0x8c, 0x83, 0xbb, + 0x04, 0x8b, 0xb7, 0xe4, 0xe0, 0xf4, 0x45, 0xfd, 0x6a, 0x16, 0x60, 0xd6, 0xae, 0xdd, 0x3d, 0xe4, + 0x6e, 0x53, 0x2f, 0x41, 0x81, 0x07, 0xc2, 0x12, 0x1a, 0x3b, 0x26, 0xdc, 0x83, 0xd8, 0xa7, 0x71, + 0xc4, 0xc4, 0xa8, 0x98, 0x8f, 0x0b, 0x3c, 0x90, 0x96, 0x92, 0xd1, 0x44, 0x11, 0x56, 0x29, 0xa3, + 0x13, 0x0b, 0x46, 0x50, 0x29, 0x83, 0x45, 0x2b, 0xdd, 0xdc, 0x18, 0xcf, 0x37, 0xec, 0xda, 0x5d, + 0x0d, 0xe9, 0xd5, 0xbf, 0xcf, 0x70, 0xd9, 0x1d, 0x72, 0xe7, 0x4f, 0xff, 0xf3, 0xf3, 0x3b, 0xfc, + 0xfc, 0x1f, 0xca, 0xc0, 0x09, 0x8d, 0xd6, 0xec, 0x7b, 0xd4, 0x59, 0x9f, 0xb4, 0x0d, 0x7a, 0x83, + 0x5a, 0xd4, 0x39, 0xa8, 0x11, 0xf5, 0x3f, 0x61, 0x8e, 0x8b, 0xb0, 0x31, 0xb7, 0x5c, 0x6a, 0x1c, + 0x9e, 0xfc, 0x23, 0xea, 0x6f, 0xf6, 0x81, 0x92, 0xba, 0xb5, 0x3d, 0xb4, 0xdb, 0xb9, 0x8e, 0xe7, + 0x95, 0xfc, 0x7e, 0x9d, 0x57, 0x7a, 0x77, 0x76, 0x5e, 0x29, 0xec, 0xf4, 0xbc, 0xd2, 0xb7, 0x9d, + 0xf3, 0x4a, 0x33, 0x7e, 0x5e, 0xe9, 0xc7, 0xf3, 0xca, 0x33, 0x5d, 0xcf, 0x2b, 0x53, 0x96, 0xb1, + 0xcb, 0xd3, 0xca, 0xa1, 0xcd, 0x8d, 0xbb, 0x9b, 0x63, 0xd6, 0x25, 0x36, 0x29, 0xd6, 0x6c, 0xc7, + 0xa0, 0x86, 0x38, 0x5d, 0xe1, 0xd5, 0xbe, 0x23, 0x60, 0x5a, 0x80, 0x4d, 0x24, 0x1a, 0x1e, 0xde, + 0x4e, 0xa2, 0xe1, 0x7d, 0x38, 0x7f, 0x7d, 0x2e, 0x0b, 0x63, 0x93, 0xd4, 0xf1, 0x78, 0xa4, 0xcd, + 0xfd, 0xb0, 0x5c, 0x2b, 0xc2, 0x31, 0x89, 0x21, 0xee, 0xc8, 0xb3, 0xa1, 0x35, 0x5e, 0x8d, 0x3a, + 0x5e, 0xdc, 0x98, 0x2f, 0x4e, 0xcf, 0xaa, 0xf7, 0x93, 0x7d, 0x89, 0xb1, 0x1b, 0x54, 0xef, 0xc3, + 0xb9, 0x20, 0x4d, 0xf1, 0x4b, 0x0b, 0xe8, 0xa5, 0xfc, 0x5d, 0xf9, 0x9d, 0xe7, 0xef, 0x52, 0x7f, + 0x35, 0x03, 0x17, 0x35, 0x6a, 0xd1, 0x35, 0x7d, 0xb9, 0x41, 0xa5, 0x66, 0x89, 0x95, 0x81, 0xcd, + 0x1a, 0xa6, 0xdb, 0xd4, 0xbd, 0xda, 0xea, 0x9e, 0x64, 0x34, 0x0d, 0x43, 0xf2, 0xfc, 0xb5, 0x83, + 0xb9, 0x2d, 0x52, 0x4e, 0xfd, 0xcd, 0x3c, 0xf4, 0x4d, 0xd8, 0xde, 0xeb, 0xf6, 0x1e, 0x13, 0xca, + 0x85, 0x53, 0x7e, 0x76, 0x07, 0x17, 0x3a, 0x4f, 0x61, 0xe5, 0x52, 0x8c, 0x7d, 0xb4, 0xf4, 0x5c, + 0xb6, 0x13, 0xb9, 0x08, 0x7c, 0xb2, 0x1d, 0xa6, 0x92, 0x7b, 0x0e, 0x06, 0x30, 0x48, 0x8b, 0x74, + 0xe5, 0x8a, 0x76, 0xd4, 0x1e, 0x03, 0xc6, 0xeb, 0x08, 0x49, 0xc9, 0x47, 0x23, 0xa1, 0x41, 0x0b, + 0x7b, 0x4f, 0x3d, 0x27, 0x47, 0x09, 0x7d, 0x86, 0xbf, 0xd6, 0x61, 0x9b, 0xa4, 0x34, 0x1d, 0x78, + 0x55, 0x12, 0x6b, 0x52, 0x40, 0xb8, 0x8f, 0x69, 0xe1, 0x26, 0x61, 0x78, 0xc2, 0xf6, 0x24, 0x9b, + 0xdd, 0x81, 0xd0, 0x5b, 0x93, 0x49, 0x3e, 0xdd, 0x60, 0x37, 0x5a, 0x46, 0xfd, 0x76, 0x1e, 0x86, + 0xfc, 0x9f, 0x07, 0xa4, 0x3b, 0x4f, 0x42, 0x61, 0xc6, 0x96, 0x32, 0x15, 0xa0, 0x9d, 0xef, 0xaa, + 0xed, 0xc6, 0x0c, 0x98, 0x05, 0x11, 0x93, 0xfa, 0xbc, 0x6d, 0xc8, 0x56, 0xea, 0x28, 0x75, 0xcb, + 0x36, 0x12, 0x5e, 0xbe, 0x01, 0x21, 0xb9, 0x08, 0x79, 0x34, 0xf0, 0x97, 0x6e, 0xeb, 0x63, 0x46, + 0xfd, 0x88, 0x97, 0xb4, 0xb2, 0xb0, 0x53, 0xad, 0xec, 0xdb, 0xad, 0x56, 0xf6, 0xef, 0xaf, 0x56, + 0xbe, 0x09, 0x43, 0x58, 0x93, 0x9f, 0xe8, 0x6c, 0xeb, 0x85, 0xf5, 0x8c, 0x58, 0xfb, 0x86, 0x79, + 0xbb, 0x45, 0xba, 0x33, 0x5c, 0xf2, 0x22, 0xac, 0x62, 0xba, 0x0b, 0x7b, 0x38, 0x4e, 0xff, 0x79, + 0x06, 0xfa, 0x6e, 0x59, 0x77, 0x2d, 0x7b, 0x6d, 0x6f, 0x1a, 0xf7, 0x0c, 0x0c, 0x0a, 0x36, 0xd2, + 0xea, 0x82, 0x8e, 0xdb, 0x6d, 0x0e, 0xae, 0x22, 0x27, 0x4d, 0xa6, 0x22, 0x2f, 0x07, 0x85, 0xd0, + 0x87, 0x27, 0x17, 0xe6, 0xfa, 0xf0, 0x0b, 0xd5, 0xa2, 0xe9, 0x09, 0x64, 0x72, 0x72, 0x0e, 0xf2, + 0x25, 0xd6, 0x54, 0x29, 0xd8, 0x2d, 0x6b, 0x8a, 0x86, 0x50, 0xf5, 0x73, 0x79, 0x18, 0x89, 0x5d, + 0x7c, 0x3d, 0x0e, 0x03, 0xe2, 0xe2, 0xc9, 0xf4, 0xf3, 0x25, 0xa0, 0x8f, 0x4f, 0x00, 0xd4, 0xfa, + 0xf9, 0x9f, 0x65, 0x83, 0x7c, 0x08, 0xfa, 0x6c, 0x17, 0x17, 0x45, 0xfc, 0x96, 0x91, 0x70, 0x08, + 0x2d, 0x54, 0x58, 0xdb, 0xf9, 0xe0, 0x10, 0x24, 0xb2, 0x46, 0xda, 0x2e, 0x7e, 0xda, 0x75, 0x18, + 0xd0, 0x5d, 0x97, 0x7a, 0x55, 0x4f, 0xaf, 0xcb, 0x29, 0x14, 0x02, 0xa0, 0x3c, 0x3a, 0x10, 0xb8, + 0xa4, 0xd7, 0xc9, 0x6b, 0x30, 0x5c, 0x73, 0x28, 0x2e, 0x9b, 0x7a, 0x83, 0xb5, 0x52, 0xda, 0xd6, + 0x46, 0x10, 0xf2, 0x23, 0x49, 0x88, 0x28, 0x1b, 0xe4, 0x36, 0x0c, 0x8b, 0xcf, 0xe1, 0x06, 0xf6, + 0x38, 0xd0, 0x46, 0xc2, 0x65, 0x8c, 0x8b, 0x84, 0x9b, 0xd8, 0x0b, 0x3f, 0x0b, 0x99, 0x5c, 0xe6, + 0x6b, 0x48, 0xa4, 0x64, 0x01, 0xc8, 0x1a, 0x5d, 0xae, 0xea, 0x6d, 0x6f, 0x95, 0xd5, 0xc5, 0x23, + 0x80, 0x8b, 0xcc, 0x81, 0xe8, 0x9c, 0x90, 0xc4, 0xca, 0x3e, 0x1b, 0x6b, 0x74, 0xb9, 0x18, 0x41, + 0x92, 0x3b, 0x70, 0x32, 0x59, 0x84, 0x7d, 0x32, 0x7f, 0x01, 0x78, 0x74, 0x73, 0x63, 0x7c, 0x3c, + 0x95, 0x40, 0x62, 0x7b, 0x3c, 0xc1, 0xb6, 0x6c, 0xbc, 0x9e, 0xef, 0xef, 0x1b, 0xed, 0xd7, 0x46, + 0x58, 0x59, 0x7f, 0x0b, 0x69, 0x1a, 0xea, 0x37, 0x32, 0x6c, 0xab, 0xc8, 0x3e, 0x08, 0x53, 0x27, + 0x33, 0x5d, 0x6f, 0xee, 0x50, 0xd7, 0x9b, 0x61, 0x92, 0xc3, 0x82, 0xdb, 0x65, 0x76, 0xd5, 0x04, + 0x96, 0x5c, 0x81, 0x82, 0x21, 0xdf, 0x9a, 0x9d, 0x8a, 0x76, 0x82, 0x5f, 0x8f, 0x26, 0xa8, 0xc8, + 0x25, 0xc8, 0xb3, 0x25, 0x2b, 0x7e, 0x64, 0x96, 0x77, 0x17, 0x1a, 0x52, 0xa8, 0xdf, 0x9b, 0x85, + 0x21, 0xe9, 0x6b, 0xae, 0xed, 0xe9, 0x73, 0x5e, 0xdc, 0x5e, 0x33, 0x7d, 0xcb, 0x16, 0x3c, 0x4b, + 0xf9, 0x4d, 0xbe, 0x1e, 0x88, 0x62, 0x5b, 0xaf, 0x4e, 0x42, 0x30, 0xcf, 0x89, 0x0f, 0x2d, 0x6c, + 0xff, 0xf8, 0xc8, 0xe8, 0x5f, 0xcf, 0xf7, 0x67, 0x47, 0x73, 0xaf, 0xe7, 0xfb, 0xf3, 0xa3, 0xbd, + 0x18, 0x2e, 0x0b, 0x23, 0x54, 0xf3, 0xb3, 0xb9, 0xb5, 0x62, 0xd6, 0x0f, 0xb9, 0x8b, 0xc7, 0xfe, + 0x86, 0x12, 0x8b, 0xc9, 0xe6, 0x90, 0xfb, 0x7b, 0xbc, 0xab, 0xb2, 0x39, 0x4a, 0x8a, 0x28, 0x64, + 0xf3, 0x17, 0x19, 0x50, 0x52, 0x65, 0x53, 0x3c, 0x20, 0x63, 0x87, 0xfd, 0x4b, 0x8d, 0xf8, 0xad, + 0x2c, 0x8c, 0x95, 0x2d, 0x8f, 0xd6, 0xf9, 0x89, 0xf1, 0x90, 0x4f, 0x15, 0x37, 0x61, 0x50, 0xfa, + 0x18, 0xd1, 0xe7, 0x0f, 0x05, 0xe7, 0xf1, 0x10, 0xd5, 0x81, 0x93, 0x5c, 0x7a, 0x1f, 0xb3, 0xa9, + 0xc7, 0x84, 0x7c, 0xc8, 0xe7, 0x9c, 0xc3, 0x21, 0xe4, 0x43, 0x3e, 0x79, 0xbd, 0x47, 0x85, 0xfc, + 0xbf, 0x64, 0xe1, 0x78, 0x4a, 0xe5, 0xe4, 0x22, 0xf4, 0x55, 0xda, 0xcb, 0x18, 0x1d, 0x2b, 0x13, + 0x9a, 0x05, 0xbb, 0xed, 0x65, 0x0c, 0x8c, 0xa5, 0xf9, 0x48, 0xb2, 0x84, 0x3e, 0xf0, 0x0b, 0xe5, + 0xd2, 0xa4, 0x90, 0xaa, 0x2a, 0x79, 0xf3, 0x33, 0x70, 0xda, 0x97, 0x05, 0x7e, 0xf2, 0xb6, 0x69, + 0xd4, 0x62, 0x7e, 0xf2, 0xac, 0x0c, 0xf9, 0x18, 0x0c, 0x14, 0xdf, 0x6e, 0x3b, 0x14, 0xf9, 0x72, + 0x89, 0xbf, 0x2f, 0xe0, 0xeb, 0x23, 0xd2, 0x38, 0x73, 0x97, 0x7f, 0x46, 0x11, 0xe7, 0x1d, 0x32, + 0x24, 0x0b, 0x50, 0xb8, 0x61, 0x7a, 0x33, 0xed, 0x65, 0xd1, 0x0b, 0x41, 0x04, 0x2d, 0x0e, 0x4d, + 0xe3, 0x8b, 0xa7, 0x72, 0x1e, 0x09, 0x58, 0x3e, 0x03, 0xf1, 0x02, 0xea, 0xe7, 0x33, 0x70, 0xb6, + 0xf3, 0xe7, 0x92, 0xa7, 0xa0, 0x8f, 0x1d, 0xf5, 0x8b, 0xda, 0xbc, 0x90, 0x25, 0xcf, 0x4b, 0x6a, + 0x37, 0x68, 0x55, 0x77, 0xe4, 0xd3, 0x83, 0x4f, 0x46, 0x5e, 0x81, 0xc1, 0xb2, 0xeb, 0xb6, 0xa9, + 0x53, 0x79, 0xe6, 0x96, 0x56, 0x16, 0x87, 0x4c, 0x3c, 0xc4, 0x98, 0x08, 0xae, 0xba, 0xcf, 0xc4, + 0x02, 0x6a, 0xc9, 0xf4, 0xea, 0x67, 0x32, 0x70, 0xae, 0x9b, 0x98, 0xc8, 0x33, 0xd0, 0xbf, 0x44, + 0x2d, 0xdd, 0xf2, 0xca, 0x25, 0xd1, 0x24, 0x3c, 0xb3, 0x79, 0x08, 0x8b, 0x1e, 0x3d, 0x02, 0x42, + 0x56, 0x88, 0x5f, 0x54, 0x06, 0x96, 0x11, 0xfc, 0x52, 0x15, 0x61, 0xb1, 0x42, 0x3e, 0xa1, 0xfa, + 0xc7, 0x59, 0x18, 0x5a, 0x6c, 0xb4, 0xeb, 0xa6, 0xb4, 0x12, 0xed, 0x7a, 0x03, 0xef, 0x6f, 0xa7, + 0xb3, 0x3b, 0xdb, 0x4e, 0xb3, 0xf1, 0xeb, 0xec, 0x72, 0xfc, 0xfa, 0xe5, 0xc8, 0xcb, 0x50, 0x68, + 0xe1, 0x77, 0xc4, 0xaf, 0x76, 0xf9, 0xd7, 0x75, 0xba, 0xda, 0xe5, 0x65, 0xd8, 0x80, 0xad, 0xed, + 0x61, 0xc0, 0x86, 0x65, 0x25, 0x81, 0x86, 0xab, 0xce, 0x91, 0x40, 0xf7, 0x45, 0xa0, 0xe1, 0x0a, + 0x73, 0x24, 0xd0, 0x3d, 0x08, 0xf4, 0xd3, 0x59, 0x18, 0x89, 0x56, 0x49, 0x9e, 0x82, 0x41, 0x5e, + 0x0d, 0xbf, 0x68, 0xca, 0x48, 0xa6, 0xc8, 0x21, 0x58, 0x03, 0xfe, 0x03, 0xaf, 0x95, 0x5e, 0x09, + 0x3e, 0x86, 0x8b, 0xf2, 0x98, 0xb0, 0x48, 0xe0, 0x8c, 0x6f, 0x3f, 0xcd, 0x67, 0x64, 0x4e, 0x22, + 0xcf, 0xc8, 0xe2, 0x6b, 0x5e, 0x86, 0x63, 0xab, 0xba, 0x5b, 0x0d, 0x6f, 0x8c, 0xf8, 0x7b, 0x72, + 0x3f, 0xb7, 0xcc, 0x8a, 0xa1, 0xb4, 0x91, 0x55, 0xdd, 0x9d, 0x0c, 0x7f, 0x93, 0x29, 0x20, 0x0e, + 0x6d, 0xbb, 0x34, 0xca, 0x20, 0x8f, 0x0c, 0x44, 0x4e, 0xe9, 0x38, 0x56, 0x1b, 0xe3, 0x30, 0x89, + 0x8d, 0xfa, 0x51, 0x38, 0xd3, 0x71, 0x45, 0x21, 0x1f, 0x82, 0xa1, 0x05, 0xa7, 0xae, 0x5b, 0xe6, + 0xdb, 0x7c, 0x43, 0x90, 0x09, 0xef, 0x04, 0x6d, 0x09, 0x2e, 0xdf, 0x53, 0xc9, 0xf4, 0xea, 0x8f, + 0x50, 0xe8, 0x5d, 0xb0, 0xe8, 0xc2, 0x0a, 0x79, 0x1a, 0x06, 0x98, 0x7e, 0xcd, 0xda, 0x4c, 0x5a, + 0x19, 0x61, 0xbf, 0x21, 0x29, 0x1e, 0x22, 0x66, 0x7a, 0xb4, 0x90, 0x8a, 0x5c, 0xe7, 0x49, 0xf2, + 0xf9, 0x94, 0x2c, 0x24, 0x4c, 0xe4, 0x32, 0x1c, 0x33, 0xd3, 0xa3, 0x49, 0x74, 0x7e, 0x29, 0xe1, + 0x05, 0x94, 0x4b, 0x96, 0xe2, 0x18, 0xbf, 0x94, 0x18, 0x4e, 0xb3, 0x69, 0xf9, 0xe7, 0xe3, 0xa7, + 0xb7, 0x24, 0xc5, 0x4c, 0x8f, 0x96, 0x9e, 0xb7, 0x7e, 0x48, 0xb6, 0x5a, 0x8d, 0x1b, 0x9d, 0xc8, + 0xb8, 0x99, 0x1e, 0x2d, 0x42, 0x4b, 0x9e, 0x87, 0x41, 0xf1, 0xfb, 0x75, 0x5b, 0xbc, 0x68, 0x4b, + 0x21, 0x8b, 0x24, 0xd4, 0x4c, 0x8f, 0x26, 0x53, 0x4a, 0x95, 0x2e, 0x3a, 0xa6, 0xe5, 0x09, 0x47, + 0xe8, 0x78, 0xa5, 0x88, 0x93, 0x2a, 0xc5, 0xdf, 0xe4, 0x15, 0x18, 0x0e, 0x62, 0x41, 0xbd, 0x45, + 0x6b, 0x9e, 0xb8, 0x7c, 0x3f, 0x19, 0x2b, 0xcc, 0x91, 0x33, 0x3d, 0x5a, 0x94, 0x9a, 0x5c, 0x82, + 0x82, 0x46, 0x5d, 0xf3, 0x6d, 0xff, 0xb9, 0x7a, 0x44, 0x9a, 0x16, 0xcc, 0xb7, 0x99, 0x94, 0x04, + 0x9e, 0xf5, 0x4e, 0xf8, 0x3e, 0x2e, 0xae, 0xca, 0x49, 0xac, 0x96, 0x29, 0xcb, 0x60, 0xbd, 0x23, + 0x19, 0x47, 0xbc, 0x16, 0x46, 0xc8, 0x12, 0x79, 0x35, 0x07, 0xe3, 0xa1, 0x08, 0x64, 0xec, 0x4c, + 0x8f, 0x16, 0xa3, 0x97, 0xa4, 0x5a, 0x32, 0xdd, 0xbb, 0x22, 0x28, 0x69, 0x5c, 0xaa, 0x0c, 0x25, + 0x49, 0x95, 0xfd, 0x94, 0xaa, 0x9e, 0xa7, 0xde, 0x9a, 0xed, 0xdc, 0x15, 0x21, 0x48, 0xe3, 0x55, + 0x0b, 0xac, 0x54, 0xb5, 0x80, 0xc8, 0x55, 0xb3, 0xc9, 0x7a, 0x24, 0xbd, 0x6a, 0xdd, 0xd3, 0xe5, + 0xaa, 0xf9, 0x4d, 0xa0, 0xdf, 0x49, 0xb3, 0x54, 0xbf, 0xc7, 0xd3, 0x9b, 0x27, 0x3b, 0x14, 0x71, + 0x52, 0x87, 0xe2, 0x6f, 0x56, 0xa9, 0x94, 0xc2, 0x5a, 0xe4, 0x2f, 0x0f, 0x2a, 0x95, 0x50, 0xac, + 0x52, 0x39, 0xd9, 0xf5, 0x75, 0x39, 0xb3, 0xb3, 0x32, 0x16, 0xed, 0xa0, 0x10, 0xc3, 0x3a, 0x48, + 0xca, 0x00, 0x3d, 0x8e, 0x59, 0x63, 0x15, 0x82, 0xe4, 0x83, 0x41, 0x0b, 0x27, 0x17, 0x67, 0x7a, + 0x34, 0xcc, 0x27, 0xab, 0xf2, 0x7c, 0xc4, 0xca, 0x71, 0xa4, 0x18, 0xf2, 0x29, 0x18, 0x6c, 0xa6, + 0x47, 0xe3, 0xb9, 0x8a, 0x9f, 0x96, 0x32, 0xff, 0x29, 0x27, 0xa2, 0x53, 0x44, 0x80, 0x60, 0x53, + 0x44, 0x98, 0x1f, 0x70, 0x3a, 0x99, 0x1d, 0x4f, 0x39, 0x19, 0x5d, 0x99, 0xe2, 0xf8, 0x99, 0x1e, + 0x2d, 0x99, 0x51, 0xef, 0xf9, 0x48, 0xc2, 0x38, 0xe5, 0x54, 0x2c, 0x4e, 0x58, 0x88, 0x62, 0xe2, + 0x92, 0x53, 0xcb, 0x2d, 0xc4, 0x92, 0x9b, 0x8b, 0xc9, 0xea, 0x74, 0xf4, 0xe0, 0x94, 0x42, 0x32, + 0xd3, 0xa3, 0xa5, 0x95, 0x24, 0x93, 0x89, 0xb4, 0x6d, 0x8a, 0x12, 0xb5, 0xcd, 0x89, 0xa1, 0x67, + 0x7a, 0xb4, 0x44, 0xa2, 0xb7, 0xeb, 0x72, 0xbe, 0x34, 0xe5, 0x4c, 0xb4, 0x13, 0x43, 0x0c, 0xeb, + 0x44, 0x29, 0xaf, 0xda, 0x75, 0x39, 0x87, 0x96, 0x72, 0x36, 0x59, 0x2a, 0x9c, 0x39, 0xa5, 0x5c, + 0x5b, 0x5a, 0x7a, 0x5a, 0x20, 0xe5, 0x21, 0x91, 0x98, 0x55, 0x94, 0x4f, 0xa3, 0x99, 0xe9, 0xd1, + 0xd2, 0x53, 0x0a, 0x69, 0xe9, 0xf9, 0x74, 0x94, 0x73, 0xdd, 0x78, 0x06, 0xad, 0x4b, 0xcf, 0xc5, + 0xa3, 0x77, 0xc9, 0x6e, 0xa2, 0x9c, 0x8f, 0x1e, 0xb1, 0x3a, 0x12, 0xce, 0xf4, 0x68, 0x5d, 0x72, + 0xa4, 0xdc, 0xea, 0x90, 0x6a, 0x44, 0xb9, 0x10, 0xcd, 0xcb, 0x9c, 0x4a, 0x34, 0xd3, 0xa3, 0x75, + 0x48, 0x54, 0x72, 0xab, 0x43, 0x26, 0x0a, 0x65, 0xbc, 0x2b, 0xdb, 0x40, 0x1e, 0x1d, 0xf2, 0x58, + 0x2c, 0xa4, 0x26, 0x71, 0x50, 0x1e, 0x8e, 0xaa, 0x6e, 0x0a, 0x09, 0x53, 0xdd, 0xb4, 0xf4, 0x0f, + 0x0b, 0xa9, 0x59, 0x07, 0x94, 0x47, 0xba, 0x30, 0x0c, 0xda, 0x98, 0x9a, 0xaf, 0x60, 0x21, 0x35, + 0xec, 0xbf, 0xa2, 0x46, 0x19, 0xa6, 0x90, 0x30, 0x86, 0x69, 0x09, 0x03, 0x16, 0x52, 0xa3, 0xc3, + 0x2b, 0x8f, 0x76, 0x61, 0x18, 0xb6, 0x30, 0x2d, 0xae, 0xfc, 0xf3, 0x91, 0xf0, 0xec, 0xca, 0xfb, + 0xa2, 0xf3, 0x86, 0x84, 0x62, 0xf3, 0x86, 0x1c, 0xc8, 0x7d, 0x32, 0x11, 0x80, 0x56, 0x79, 0x2c, + 0x3a, 0xcc, 0x63, 0x68, 0x36, 0xcc, 0xe3, 0x21, 0x6b, 0x27, 0x13, 0x81, 0x38, 0x95, 0x8b, 0x9d, + 0x98, 0x20, 0x3a, 0xca, 0x84, 0x87, 0xee, 0x2c, 0xa7, 0x44, 0x82, 0x54, 0xde, 0x1f, 0xb5, 0x2b, + 0x4f, 0x10, 0xcc, 0xf4, 0x68, 0x29, 0xf1, 0x23, 0xb5, 0xf4, 0xb0, 0x47, 0xca, 0xa5, 0xe8, 0xb0, + 0x4d, 0xa3, 0x61, 0xc3, 0x36, 0x35, 0x64, 0xd2, 0x6c, 0x9a, 0xf3, 0x8b, 0x72, 0x39, 0xba, 0x31, + 0x4b, 0x52, 0xb0, 0x8d, 0x59, 0x8a, 0xd3, 0x8c, 0x96, 0x1e, 0xc8, 0x47, 0x79, 0xbc, 0x6b, 0x0b, + 0x91, 0x26, 0xa5, 0x85, 0x3c, 0xae, 0x4d, 0xb8, 0x77, 0xba, 0xd5, 0x6a, 0xd8, 0xba, 0xa1, 0x7c, + 0x20, 0x75, 0xef, 0xc4, 0x91, 0xd2, 0xde, 0x89, 0x03, 0xd8, 0x2a, 0x2f, 0xfb, 0x58, 0x28, 0x4f, + 0x44, 0x57, 0x79, 0x19, 0xc7, 0x56, 0xf9, 0x88, 0x3f, 0xc6, 0x64, 0xc2, 0x1f, 0x41, 0x79, 0x32, + 0xaa, 0x00, 0x31, 0x34, 0x53, 0x80, 0xb8, 0x07, 0xc3, 0x27, 0x3a, 0x5b, 0xf0, 0x2b, 0x57, 0x90, + 0xdb, 0xc3, 0x3e, 0xb7, 0x4e, 0x74, 0x33, 0x3d, 0x5a, 0x67, 0x2f, 0x80, 0x72, 0x8a, 0x41, 0xbe, + 0x72, 0x35, 0xaa, 0x60, 0x09, 0x02, 0xa6, 0x60, 0x49, 0x33, 0xfe, 0x72, 0x8a, 0x45, 0xbd, 0xf2, + 0x54, 0x47, 0x56, 0xc1, 0x37, 0xa7, 0xd8, 0xe1, 0x5f, 0x97, 0x4d, 0xe2, 0x95, 0xa7, 0xa3, 0x8b, + 0x5d, 0x88, 0x61, 0x8b, 0x9d, 0x64, 0x3a, 0x7f, 0x5d, 0x36, 0x06, 0x57, 0xae, 0x25, 0x4b, 0x85, + 0x4b, 0xa4, 0x64, 0x34, 0xae, 0xa5, 0xdb, 0x50, 0x2b, 0xcf, 0x44, 0xb5, 0x2e, 0x8d, 0x86, 0x69, + 0x5d, 0xaa, 0xfd, 0xf5, 0x74, 0xd2, 0x14, 0x5a, 0xb9, 0x1e, 0x3f, 0x93, 0x47, 0xf1, 0x6c, 0xe7, + 0x93, 0x30, 0x9f, 0x7e, 0x2d, 0x1e, 0x93, 0x4f, 0x79, 0x36, 0xf6, 0xec, 0x1c, 0xc1, 0xb2, 0xfd, + 0x6d, 0x2c, 0x86, 0xdf, 0x6b, 0xf1, 0x30, 0x76, 0xca, 0x73, 0xe9, 0x1c, 0x02, 0x5d, 0x89, 0x87, + 0xbd, 0x7b, 0x2d, 0x1e, 0xf9, 0x4d, 0x79, 0x3e, 0x9d, 0x43, 0x20, 0xdd, 0x78, 0xa4, 0xb8, 0xa7, + 0xa5, 0x58, 0xf4, 0xca, 0x07, 0xa3, 0x5b, 0xc7, 0x00, 0xc1, 0xb6, 0x8e, 0x61, 0xc4, 0xfa, 0xa7, + 0xa5, 0x18, 0xee, 0xca, 0x0b, 0x89, 0x22, 0x41, 0x63, 0xa5, 0x48, 0xef, 0x4f, 0x4b, 0xb1, 0xcf, + 0x95, 0x17, 0x13, 0x45, 0x82, 0xd6, 0x49, 0x11, 0xd2, 0x8d, 0x6e, 0x4e, 0xb2, 0xca, 0x4b, 0xd1, + 0xcb, 0xe8, 0xce, 0x94, 0x33, 0x3d, 0x5a, 0x37, 0x67, 0xdb, 0x4f, 0x74, 0x36, 0x2c, 0x57, 0x5e, + 0x8e, 0x0e, 0xe1, 0x4e, 0x74, 0x6c, 0x08, 0x77, 0x34, 0x4e, 0x7f, 0x25, 0x16, 0x30, 0x43, 0x79, + 0x25, 0x3a, 0xc5, 0x45, 0x90, 0x6c, 0x8a, 0x8b, 0x87, 0xd7, 0x88, 0x44, 0x82, 0x50, 0x3e, 0x14, + 0x9d, 0xe2, 0x64, 0x1c, 0x9b, 0xe2, 0x22, 0x51, 0x23, 0x26, 0x13, 0x01, 0x0a, 0x94, 0x57, 0xa3, + 0x53, 0x5c, 0x0c, 0xcd, 0xa6, 0xb8, 0x78, 0x48, 0x83, 0x57, 0x62, 0x7e, 0xfa, 0xca, 0x6b, 0xe9, + 0xed, 0x47, 0xa4, 0xdc, 0x7e, 0xee, 0xd5, 0xaf, 0xa5, 0x3b, 0x9c, 0x2b, 0xc5, 0xe8, 0xf8, 0x4d, + 0xa3, 0x61, 0xe3, 0x37, 0xd5, 0x59, 0x3d, 0x7e, 0x70, 0x10, 0x5a, 0x35, 0xd1, 0xe5, 0xe0, 0x10, + 0x6e, 0x45, 0x52, 0xc0, 0x91, 0x33, 0x32, 0x3f, 0x08, 0x4d, 0x76, 0x38, 0x23, 0xfb, 0xc7, 0xa0, + 0x18, 0x3d, 0x9b, 0x5d, 0x13, 0x76, 0xce, 0x4a, 0x29, 0x3a, 0xbb, 0x26, 0x08, 0xd8, 0xec, 0x9a, + 0xb4, 0x8e, 0x9e, 0x86, 0x51, 0xa1, 0x45, 0xdc, 0x7c, 0xdb, 0xb4, 0xea, 0xca, 0x54, 0xcc, 0xdf, + 0x33, 0x86, 0x67, 0xb3, 0x53, 0x1c, 0x86, 0xeb, 0x35, 0x87, 0x4d, 0x36, 0xcc, 0xd6, 0xb2, 0xad, + 0x3b, 0x46, 0x85, 0x5a, 0x86, 0x32, 0x1d, 0x5b, 0xaf, 0x53, 0x68, 0x70, 0xbd, 0x4e, 0x81, 0x63, + 0x1c, 0xba, 0x18, 0x5c, 0xa3, 0x35, 0x6a, 0xde, 0xa3, 0xca, 0x0d, 0x64, 0x3b, 0xde, 0x89, 0xad, + 0x20, 0x9b, 0xe9, 0xd1, 0x3a, 0x71, 0x60, 0x7b, 0xf5, 0xb9, 0xf5, 0xca, 0x1b, 0xb3, 0x41, 0x8c, + 0x83, 0x45, 0x87, 0xb6, 0x74, 0x87, 0x2a, 0x33, 0xd1, 0xbd, 0x7a, 0x2a, 0x11, 0xdb, 0xab, 0xa7, + 0x22, 0x92, 0x6c, 0xfd, 0xb1, 0x50, 0xee, 0xc6, 0x36, 0x1c, 0x11, 0xe9, 0xa5, 0xd9, 0xec, 0x14, + 0x45, 0x30, 0x01, 0xcd, 0xda, 0x56, 0x1d, 0x6f, 0x2a, 0x5e, 0x8f, 0xce, 0x4e, 0x9d, 0x29, 0xd9, + 0xec, 0xd4, 0x19, 0xcb, 0x54, 0x3d, 0x8a, 0xe5, 0x63, 0xf0, 0x66, 0x54, 0xd5, 0x53, 0x48, 0x98, + 0xaa, 0xa7, 0x80, 0x93, 0x0c, 0x35, 0xea, 0x52, 0x4f, 0x99, 0xed, 0xc6, 0x10, 0x49, 0x92, 0x0c, + 0x11, 0x9c, 0x64, 0x38, 0x4d, 0xbd, 0xda, 0xaa, 0x32, 0xd7, 0x8d, 0x21, 0x92, 0x24, 0x19, 0x22, + 0x98, 0x1d, 0x36, 0xa3, 0xe0, 0x89, 0x76, 0xe3, 0xae, 0xdf, 0x67, 0xf3, 0xd1, 0xc3, 0x66, 0x47, + 0x42, 0x76, 0xd8, 0xec, 0x88, 0x24, 0x9f, 0xd9, 0xb6, 0x1d, 0xbe, 0xb2, 0x80, 0x15, 0x5e, 0x09, + 0xf7, 0x05, 0xdb, 0x29, 0x35, 0xd3, 0xa3, 0x6d, 0xd7, 0xce, 0xff, 0x03, 0x81, 0xd1, 0xaa, 0xb2, + 0x28, 0xee, 0xc1, 0xfd, 0xbb, 0x0a, 0x0e, 0x9e, 0xe9, 0xd1, 0x02, 0xb3, 0xd6, 0xe7, 0x61, 0x10, + 0x3f, 0xaa, 0x6c, 0x99, 0x5e, 0x69, 0x42, 0x79, 0x23, 0x7a, 0x64, 0x92, 0x50, 0xec, 0xc8, 0x24, + 0xfd, 0x64, 0x93, 0x38, 0xfe, 0xe4, 0x53, 0x4c, 0x69, 0x42, 0xd1, 0xa2, 0x93, 0x78, 0x04, 0xc9, + 0x26, 0xf1, 0x08, 0x20, 0xa8, 0xb7, 0xe4, 0xd8, 0xad, 0xd2, 0x84, 0x52, 0x49, 0xa9, 0x97, 0xa3, + 0x82, 0x7a, 0xf9, 0xcf, 0xa0, 0xde, 0xca, 0x6a, 0xdb, 0x2b, 0xb1, 0x6f, 0x5c, 0x4a, 0xa9, 0xd7, + 0x47, 0x06, 0xf5, 0xfa, 0x00, 0x36, 0x15, 0x22, 0x60, 0xd1, 0xb1, 0xd9, 0xa4, 0x7d, 0xd3, 0x6c, + 0x34, 0x94, 0x5b, 0xd1, 0xa9, 0x30, 0x8e, 0x67, 0x53, 0x61, 0x1c, 0xc6, 0xb6, 0x9e, 0xbc, 0x55, + 0x74, 0xb9, 0x5d, 0x57, 0x6e, 0x47, 0xb7, 0x9e, 0x21, 0x86, 0x6d, 0x3d, 0xc3, 0x5f, 0x78, 0xba, + 0x60, 0xbf, 0x34, 0xba, 0xe2, 0x50, 0x77, 0x55, 0xb9, 0x13, 0x3b, 0x5d, 0x48, 0x38, 0x3c, 0x5d, + 0x48, 0xbf, 0x49, 0x1d, 0x1e, 0x8a, 0x2c, 0x34, 0xfe, 0x1b, 0x4f, 0x85, 0xea, 0x4e, 0x6d, 0x55, + 0xf9, 0x30, 0xb2, 0x7a, 0x34, 0x75, 0xa9, 0x8a, 0x92, 0xce, 0xf4, 0x68, 0xdd, 0x38, 0xe1, 0xb1, + 0xfc, 0x8d, 0x59, 0x1e, 0x30, 0x56, 0x5b, 0x9c, 0xf4, 0x0f, 0xa1, 0x6f, 0xc6, 0x8e, 0xe5, 0x49, + 0x12, 0x3c, 0x96, 0x27, 0xc1, 0xa4, 0x05, 0x17, 0x62, 0x47, 0xb5, 0x39, 0xbd, 0xc1, 0xce, 0x25, + 0xd4, 0x58, 0xd4, 0x6b, 0x77, 0xa9, 0xa7, 0x7c, 0x04, 0x79, 0x5f, 0xec, 0x70, 0xe0, 0x8b, 0x51, + 0xcf, 0xf4, 0x68, 0x5b, 0xf0, 0x23, 0x2a, 0xe4, 0x2b, 0xd3, 0x4b, 0x8b, 0xca, 0x47, 0xa3, 0xf7, + 0x9b, 0x0c, 0x36, 0xd3, 0xa3, 0x21, 0x8e, 0xed, 0xd2, 0x6e, 0xb5, 0xea, 0x8e, 0x6e, 0x50, 0xbe, + 0xd1, 0xc2, 0xbd, 0x9b, 0xd8, 0x80, 0x7e, 0x2c, 0xba, 0x4b, 0xeb, 0x44, 0xc7, 0x76, 0x69, 0x9d, + 0x70, 0x4c, 0x51, 0x23, 0xb9, 0x51, 0x94, 0x8f, 0x47, 0x15, 0x35, 0x82, 0x64, 0x8a, 0x1a, 0xcd, + 0xa4, 0xf2, 0x61, 0x38, 0x15, 0x9c, 0xe7, 0xc5, 0xfa, 0xcb, 0x3b, 0x4d, 0xf9, 0x04, 0xf2, 0xb9, + 0x90, 0x78, 0x0c, 0x88, 0x50, 0xcd, 0xf4, 0x68, 0x1d, 0xca, 0xb3, 0x15, 0x37, 0x91, 0xf6, 0x4b, + 0x6c, 0x2f, 0xbe, 0x27, 0xba, 0xe2, 0x76, 0x20, 0x63, 0x2b, 0x6e, 0x07, 0x54, 0x2a, 0x73, 0x21, + 0x54, 0x7d, 0x0b, 0xe6, 0x81, 0x4c, 0x3b, 0x71, 0x48, 0x65, 0x2e, 0x76, 0x6a, 0xcb, 0x5b, 0x30, + 0x0f, 0x76, 0x6b, 0x9d, 0x38, 0x90, 0x4b, 0x50, 0xa8, 0x54, 0xe6, 0xb4, 0xb6, 0xa5, 0xd4, 0x62, + 0xd6, 0xba, 0x08, 0x9d, 0xe9, 0xd1, 0x04, 0x9e, 0x6d, 0x83, 0xa6, 0x1a, 0xba, 0xeb, 0x99, 0x35, + 0x17, 0x47, 0x8c, 0x3f, 0x42, 0x8c, 0xe8, 0x36, 0x28, 0x8d, 0x86, 0x6d, 0x83, 0xd2, 0xe0, 0x6c, + 0xbf, 0x38, 0xa9, 0xbb, 0xae, 0x6e, 0x19, 0x8e, 0x3e, 0x81, 0xcb, 0x04, 0x8d, 0x79, 0x83, 0x45, + 0xb0, 0x6c, 0xbf, 0x18, 0x85, 0xe0, 0xe5, 0xbb, 0x0f, 0xf1, 0xb7, 0x39, 0x2b, 0xb1, 0xcb, 0xf7, + 0x18, 0x1e, 0x2f, 0xdf, 0x63, 0x30, 0xdc, 0x77, 0xfa, 0x30, 0x8d, 0xd6, 0x4d, 0x26, 0x22, 0xa5, + 0x1e, 0xdb, 0x77, 0xc6, 0x09, 0x70, 0xdf, 0x19, 0x07, 0x46, 0x9a, 0xe4, 0x2f, 0xb7, 0xab, 0x1d, + 0x9a, 0x14, 0xae, 0xb2, 0x89, 0x32, 0x6c, 0xfd, 0x0e, 0x07, 0x47, 0x69, 0xdd, 0xd2, 0x9b, 0x76, + 0x69, 0xc2, 0x97, 0xba, 0x19, 0x5d, 0xbf, 0x3b, 0x12, 0xb2, 0xf5, 0xbb, 0x23, 0x92, 0xcd, 0xae, + 0xfe, 0x41, 0x6b, 0x55, 0x77, 0xa8, 0x51, 0x32, 0x1d, 0xbc, 0x59, 0x5c, 0xe7, 0x47, 0xc3, 0xb7, + 0xa2, 0xb3, 0x6b, 0x17, 0x52, 0x36, 0xbb, 0x76, 0x41, 0xb3, 0x4d, 0x5e, 0x3a, 0x5a, 0xa3, 0xba, + 0xa1, 0xdc, 0x8d, 0x6e, 0xf2, 0x3a, 0x53, 0xb2, 0x4d, 0x5e, 0x67, 0x6c, 0xe7, 0xcf, 0xb9, 0xe3, + 0x98, 0x1e, 0x55, 0x1a, 0xdb, 0xf9, 0x1c, 0x24, 0xed, 0xfc, 0x39, 0x88, 0x66, 0x07, 0xc2, 0x78, + 0x87, 0x34, 0xa3, 0x07, 0xc2, 0x64, 0x37, 0xc4, 0x4b, 0xb0, 0x1d, 0x8b, 0x70, 0x0a, 0x54, 0xac, + 0xe8, 0x8e, 0x45, 0x80, 0xd9, 0x8e, 0x25, 0x74, 0x1b, 0x8c, 0xb8, 0x82, 0x29, 0x76, 0x74, 0x0d, + 0x95, 0x71, 0x6c, 0x0d, 0x8d, 0xb8, 0x8d, 0x3d, 0x1f, 0xf1, 0x73, 0x50, 0x5a, 0xd1, 0x5d, 0x87, + 0x84, 0x62, 0xbb, 0x0e, 0xd9, 0x23, 0x62, 0x12, 0x8e, 0xe1, 0x2b, 0xb8, 0xd6, 0x0e, 0xde, 0x71, + 0x3e, 0x19, 0xfd, 0xcc, 0x18, 0x9a, 0x7d, 0x66, 0x0c, 0x14, 0x61, 0x22, 0xa6, 0x2d, 0xa7, 0x03, + 0x93, 0xf0, 0x7e, 0x30, 0x06, 0x22, 0xb3, 0x40, 0x2a, 0xc5, 0xb9, 0xd9, 0xb2, 0xb1, 0x28, 0x3f, + 0x91, 0xb9, 0xd1, 0x1b, 0xd8, 0x24, 0xc5, 0x4c, 0x8f, 0x96, 0x52, 0x8e, 0xbc, 0x05, 0xe7, 0x04, + 0x54, 0x78, 0x7c, 0x2f, 0x3a, 0xf6, 0x3d, 0xd3, 0x08, 0x16, 0x04, 0x2f, 0x6a, 0x47, 0xd7, 0x8d, + 0x76, 0xa6, 0x47, 0xeb, 0xca, 0xab, 0x73, 0x5d, 0x62, 0x7d, 0x68, 0x6f, 0xa7, 0xae, 0x60, 0x91, + 0xe8, 0xca, 0xab, 0x73, 0x5d, 0x42, 0xee, 0xf7, 0xb6, 0x53, 0x57, 0xd0, 0x09, 0x5d, 0x79, 0x11, + 0x17, 0xc6, 0xbb, 0xe1, 0x8b, 0x8d, 0x86, 0xb2, 0x86, 0xd5, 0xbd, 0x7f, 0x3b, 0xd5, 0x15, 0x71, + 0xc3, 0xb9, 0x15, 0x47, 0x36, 0x4b, 0x2f, 0xb4, 0xa8, 0x55, 0x89, 0x2c, 0x40, 0xf7, 0xa3, 0xb3, + 0x74, 0x82, 0x80, 0xcd, 0xd2, 0x09, 0x20, 0x1b, 0x50, 0xb2, 0xbb, 0x8c, 0xb2, 0x1e, 0x1d, 0x50, + 0x32, 0x8e, 0x0d, 0xa8, 0x88, 0x6b, 0xcd, 0x02, 0x1c, 0x5f, 0xb8, 0xeb, 0xe9, 0xfe, 0x0e, 0xd2, + 0x15, 0x5d, 0xf9, 0x76, 0xec, 0x91, 0x29, 0x49, 0x82, 0x8f, 0x4c, 0x49, 0x30, 0x1b, 0x23, 0x0c, + 0x5c, 0x59, 0xb7, 0x6a, 0xd3, 0xba, 0xd9, 0x68, 0x3b, 0x54, 0xf9, 0x0f, 0xa2, 0x63, 0x24, 0x86, + 0x66, 0x63, 0x24, 0x06, 0x62, 0x0b, 0x34, 0x03, 0x15, 0x5d, 0xd7, 0xac, 0x5b, 0xe2, 0x5c, 0xd9, + 0x6e, 0x78, 0xca, 0x7f, 0x18, 0x5d, 0xa0, 0xd3, 0x68, 0xd8, 0x02, 0x9d, 0x06, 0xc7, 0x5b, 0x27, + 0xd6, 0x0b, 0x6c, 0xf1, 0x90, 0xdf, 0x2a, 0xff, 0xa3, 0xd8, 0xad, 0x53, 0x0a, 0x0d, 0xde, 0x3a, + 0xa5, 0xc0, 0xd9, 0xfa, 0xc8, 0xf7, 0x64, 0xb3, 0x66, 0xf0, 0x56, 0xfd, 0x1f, 0x47, 0xd7, 0xc7, + 0x38, 0x9e, 0xad, 0x8f, 0x71, 0x58, 0x94, 0x8f, 0xe8, 0x82, 0xff, 0xa4, 0x13, 0x9f, 0x40, 0xfe, + 0x89, 0x32, 0xe4, 0x86, 0xcc, 0x47, 0x8c, 0x94, 0xef, 0xcd, 0x74, 0x62, 0x14, 0x0c, 0x8f, 0x44, + 0xa1, 0x28, 0x23, 0x8d, 0xde, 0x33, 0xe9, 0x9a, 0xf2, 0xa9, 0x8e, 0x8c, 0x38, 0x41, 0x94, 0x11, + 0x87, 0x91, 0x37, 0xe1, 0x54, 0x08, 0x9b, 0xa3, 0xcd, 0xe5, 0x60, 0x66, 0xfa, 0xbe, 0x4c, 0x74, + 0x1b, 0x9c, 0x4e, 0xc6, 0xb6, 0xc1, 0xe9, 0x98, 0x34, 0xd6, 0x42, 0x74, 0xff, 0xe9, 0x16, 0xac, + 0x03, 0x09, 0x76, 0x60, 0x90, 0xc6, 0x5a, 0x48, 0xf3, 0xfb, 0xb7, 0x60, 0x1d, 0xc8, 0xb4, 0x03, + 0x03, 0xf2, 0xd9, 0x0c, 0x5c, 0x4c, 0x47, 0x15, 0x1b, 0x8d, 0x69, 0xdb, 0x09, 0x71, 0xca, 0x0f, + 0x64, 0xa2, 0x17, 0x0d, 0xdb, 0x2b, 0x36, 0xd3, 0xa3, 0x6d, 0xb3, 0x02, 0xf2, 0x21, 0x18, 0x2e, + 0xb6, 0x0d, 0xd3, 0xc3, 0x87, 0x37, 0xb6, 0x71, 0xfe, 0x74, 0x26, 0x76, 0xc4, 0x91, 0xb1, 0x78, + 0xc4, 0x91, 0x01, 0xe4, 0x75, 0x18, 0xab, 0xd0, 0x5a, 0xdb, 0x31, 0xbd, 0x75, 0x8d, 0xb6, 0x6c, + 0xc7, 0x63, 0x3c, 0x7e, 0x30, 0x13, 0x9d, 0xc4, 0x12, 0x14, 0x6c, 0x12, 0x4b, 0x00, 0xc9, 0xed, + 0xc4, 0xab, 0xbc, 0xe8, 0xcc, 0xcf, 0x64, 0xba, 0x3e, 0xcb, 0x07, 0x7d, 0x99, 0x5e, 0x9c, 0x2c, + 0xc6, 0x5e, 0xd1, 0x05, 0xd7, 0xcf, 0x66, 0xba, 0x3c, 0xa3, 0x4b, 0x33, 0x5c, 0x12, 0xcc, 0x38, + 0xa6, 0x24, 0x8a, 0x57, 0x7e, 0x28, 0xd3, 0xe5, 0xd9, 0x3b, 0xe4, 0x98, 0x96, 0x63, 0xfe, 0x59, + 0x6e, 0x29, 0x22, 0x18, 0xfd, 0x67, 0x99, 0xa4, 0xa9, 0x48, 0x50, 0x5e, 0x22, 0x64, 0xc5, 0x6e, + 0xb9, 0x81, 0xd2, 0x7f, 0x2e, 0x93, 0xb4, 0xcd, 0x0b, 0x8b, 0x85, 0xbf, 0x08, 0x85, 0xb3, 0x53, + 0xf7, 0x3d, 0xea, 0x58, 0x7a, 0x03, 0xbb, 0xb3, 0xe2, 0xd9, 0x8e, 0x5e, 0xa7, 0x53, 0x96, 0xbe, + 0xdc, 0xa0, 0xca, 0xe7, 0x33, 0xd1, 0x1d, 0x6c, 0x67, 0x52, 0xb6, 0x83, 0xed, 0x8c, 0x25, 0xab, + 0xf0, 0x50, 0x1a, 0xb6, 0x64, 0xba, 0x58, 0xcf, 0x17, 0x32, 0xd1, 0x2d, 0x6c, 0x17, 0x5a, 0xb6, + 0x85, 0xed, 0x82, 0x26, 0xd7, 0x60, 0x60, 0xc2, 0xf6, 0xa7, 0xdf, 0x1f, 0x8e, 0x19, 0x43, 0x06, + 0x98, 0x99, 0x1e, 0x2d, 0x24, 0x13, 0x65, 0xc4, 0xa0, 0xfe, 0x62, 0xb2, 0x4c, 0xf8, 0xf8, 0x14, + 0xfc, 0x10, 0x65, 0x84, 0xb8, 0x7f, 0x24, 0x59, 0x26, 0x7c, 0xe3, 0x0a, 0x7e, 0xb0, 0x99, 0x84, + 0xd7, 0x38, 0x37, 0x5d, 0x64, 0xfb, 0xb6, 0xc9, 0x55, 0xbd, 0xd1, 0xa0, 0x56, 0x9d, 0x2a, 0x5f, + 0x8a, 0xcd, 0x24, 0xe9, 0x64, 0x6c, 0x26, 0x49, 0xc7, 0x90, 0x8f, 0xc1, 0xe9, 0xdb, 0x7a, 0xc3, + 0x34, 0x42, 0x9c, 0x9f, 0x36, 0x5c, 0xf9, 0xd1, 0x4c, 0xf4, 0x34, 0xdd, 0x81, 0x8e, 0x9d, 0xa6, + 0x3b, 0xa0, 0xc8, 0x1c, 0x10, 0x5c, 0x46, 0x83, 0xd9, 0x82, 0xad, 0xcf, 0xca, 0x7f, 0x9e, 0x89, + 0xee, 0x53, 0x93, 0x24, 0x6c, 0x9f, 0x9a, 0x84, 0x92, 0x6a, 0xe7, 0xfc, 0x23, 0xca, 0x8f, 0x65, + 0xa2, 0xb7, 0x35, 0x9d, 0x08, 0x67, 0x7a, 0xb4, 0xce, 0x49, 0x4c, 0x6e, 0xc0, 0x68, 0x65, 0xb1, + 0x3c, 0x3d, 0x3d, 0x55, 0xb9, 0x5d, 0x2e, 0xa1, 0x5f, 0x84, 0xa1, 0xfc, 0x78, 0x6c, 0xc5, 0x8a, + 0x13, 0xb0, 0x15, 0x2b, 0x0e, 0x23, 0x2f, 0xc1, 0x10, 0x6b, 0x3f, 0x1b, 0x30, 0xf8, 0xc9, 0x5f, + 0xce, 0x44, 0xb7, 0x53, 0x32, 0x92, 0x6d, 0xa7, 0xe4, 0xdf, 0xa4, 0x02, 0x27, 0x98, 0x14, 0x17, + 0x1d, 0xba, 0x42, 0x1d, 0x6a, 0xd5, 0xfc, 0x31, 0xfd, 0x13, 0x99, 0xe8, 0x2e, 0x23, 0x8d, 0x88, + 0xed, 0x32, 0xd2, 0xe0, 0xe4, 0x2e, 0x9c, 0x8b, 0xdf, 0x04, 0xc9, 0x6e, 0xaf, 0xca, 0x4f, 0x66, + 0x62, 0x9b, 0xe1, 0x2e, 0xc4, 0xb8, 0x19, 0xee, 0x82, 0x27, 0x16, 0x9c, 0x17, 0xd7, 0x2a, 0xc2, + 0xe0, 0x32, 0x5e, 0xdb, 0x4f, 0xf1, 0xda, 0x1e, 0x0b, 0x0d, 0x02, 0xbb, 0x50, 0xcf, 0xf4, 0x68, + 0xdd, 0xd9, 0x31, 0x3d, 0x4b, 0x66, 0xd9, 0x50, 0x7e, 0x3a, 0x93, 0x6e, 0x91, 0x12, 0x31, 0x53, + 0x4e, 0x4b, 0xcf, 0xf1, 0x66, 0xa7, 0x1c, 0x11, 0xca, 0xcf, 0xc4, 0xc6, 0x5b, 0x3a, 0x19, 0x1b, + 0x6f, 0x1d, 0x92, 0x4c, 0xbc, 0x0e, 0x63, 0x5c, 0xa9, 0x17, 0x75, 0x1c, 0x86, 0x56, 0x9d, 0x1a, + 0xca, 0x7f, 0x11, 0x5b, 0xed, 0x12, 0x14, 0x68, 0xda, 0x13, 0x07, 0xb2, 0xa9, 0xbb, 0xd2, 0xd2, + 0x2d, 0x0b, 0xaf, 0x59, 0x95, 0xff, 0x32, 0x36, 0x75, 0x87, 0x28, 0x34, 0xdc, 0x0d, 0x7e, 0x31, + 0x4d, 0xe8, 0x96, 0x5f, 0x49, 0xf9, 0xd9, 0x98, 0x26, 0x74, 0x23, 0x66, 0x9a, 0xd0, 0x35, 0x59, + 0xd3, 0xed, 0x0e, 0x2e, 0xe8, 0xca, 0x57, 0x62, 0x2b, 0x72, 0x2a, 0x15, 0x5b, 0x91, 0xd3, 0x3d, + 0xd8, 0x6f, 0x77, 0x70, 0xdf, 0x56, 0x7e, 0xae, 0x3b, 0xdf, 0x70, 0xa5, 0x4f, 0xf7, 0xfe, 0xbe, + 0xdd, 0xc1, 0xf5, 0x59, 0xf9, 0xf9, 0xee, 0x7c, 0x43, 0xc3, 0xbe, 0x74, 0xcf, 0xe9, 0x6a, 0x67, + 0xb7, 0x61, 0xe5, 0x17, 0xe2, 0x53, 0x57, 0x07, 0x42, 0x9c, 0xba, 0x3a, 0xf9, 0x1e, 0x2f, 0xc3, + 0x19, 0xae, 0x21, 0x37, 0x1c, 0xbd, 0xb5, 0x5a, 0xa1, 0x9e, 0x67, 0x5a, 0x75, 0xff, 0x24, 0xf6, + 0x5f, 0x65, 0x62, 0xd7, 0x63, 0x9d, 0x28, 0xf1, 0x7a, 0xac, 0x13, 0x92, 0x29, 0x6f, 0xc2, 0x41, + 0x58, 0xf9, 0xc5, 0x98, 0xf2, 0x26, 0x28, 0x98, 0xf2, 0x26, 0xfd, 0x8a, 0x5f, 0x4f, 0xf1, 0x83, + 0x55, 0xfe, 0xeb, 0xce, 0xbc, 0x82, 0xf6, 0xa5, 0xb8, 0xcf, 0xbe, 0x9e, 0xe2, 0xee, 0xa9, 0xfc, + 0x37, 0x9d, 0x79, 0x85, 0x36, 0x48, 0x49, 0x2f, 0xd1, 0x37, 0xe1, 0x14, 0x9f, 0xcd, 0xa7, 0xa9, + 0x41, 0x23, 0x1f, 0xfa, 0x4b, 0xb1, 0xb1, 0x9f, 0x4e, 0x86, 0x57, 0xee, 0xa9, 0x98, 0x34, 0xd6, + 0xa2, 0xad, 0xbf, 0xbc, 0x05, 0xeb, 0xf0, 0x40, 0x90, 0x8e, 0x61, 0xeb, 0x8d, 0xec, 0x2b, 0xa7, + 0xfc, 0x4a, 0x6c, 0xbd, 0x91, 0x91, 0x68, 0xce, 0x21, 0x3b, 0xd6, 0xbd, 0x14, 0xf5, 0x0b, 0x53, + 0xfe, 0xdb, 0xd4, 0xc2, 0x41, 0x07, 0x44, 0x9d, 0xc8, 0x5e, 0x8a, 0xfa, 0x40, 0x29, 0xbf, 0x9a, + 0x5a, 0x38, 0xf8, 0x80, 0x08, 0xf1, 0x44, 0x1f, 0xf4, 0xe2, 0x15, 0x82, 0xfa, 0x95, 0x0c, 0x0c, + 0x55, 0x3c, 0x87, 0xea, 0x4d, 0x11, 0x68, 0xe9, 0x2c, 0xf4, 0x73, 0x5b, 0x3c, 0xdf, 0xcf, 0x50, + 0x0b, 0x7e, 0x93, 0x8b, 0x30, 0x32, 0xab, 0xbb, 0x1e, 0x96, 0x2c, 0x5b, 0x06, 0xbd, 0x8f, 0x7e, + 0x28, 0x39, 0x2d, 0x06, 0x25, 0xb3, 0x9c, 0x8e, 0x97, 0xc3, 0xd8, 0x7a, 0xb9, 0x2d, 0xe3, 0x0b, + 0xf5, 0xbf, 0xb3, 0x31, 0xde, 0x83, 0xe1, 0x84, 0x62, 0x65, 0xd5, 0x6f, 0x64, 0x20, 0x61, 0x25, + 0xb8, 0x7b, 0x87, 0xe2, 0x05, 0x38, 0x16, 0x8b, 0xe7, 0x28, 0x9c, 0x69, 0xb6, 0x19, 0xee, 0x31, + 0x5e, 0x9a, 0xbc, 0x3f, 0x70, 0xe2, 0xb8, 0xa5, 0xcd, 0x8a, 0xd8, 0x51, 0x7d, 0x9b, 0x1b, 0xe3, + 0xb9, 0xb6, 0xd3, 0xd0, 0x24, 0x94, 0x88, 0x0d, 0xf2, 0x9d, 0xd1, 0x30, 0x58, 0x1d, 0xb9, 0x28, + 0xbc, 0x9b, 0x33, 0x61, 0xc4, 0xa9, 0x58, 0x2a, 0x64, 0xee, 0xcd, 0xfc, 0x21, 0x18, 0x2a, 0x37, + 0x5b, 0xd4, 0x71, 0x6d, 0x4b, 0xf7, 0x6c, 0x47, 0xf8, 0x72, 0xa2, 0xe7, 0x91, 0x29, 0xc1, 0x65, + 0xcf, 0x23, 0x99, 0x9e, 0x5c, 0xf6, 0xb3, 0x33, 0xe5, 0x30, 0x4c, 0x20, 0x7a, 0x54, 0xc5, 0xd3, + 0xeb, 0x72, 0x0a, 0x46, 0x7a, 0xcb, 0xd5, 0xd1, 0xdd, 0x27, 0x20, 0x6d, 0x33, 0x80, 0x4c, 0x8a, + 0x14, 0xe4, 0x09, 0x28, 0xe0, 0xf5, 0xa8, 0x8b, 0x59, 0xd7, 0x44, 0x1c, 0xac, 0x06, 0x42, 0x64, + 0xff, 0x2e, 0x4e, 0x43, 0x6e, 0xc2, 0x68, 0xf8, 0xf6, 0x73, 0xc3, 0xb1, 0xdb, 0x2d, 0x3f, 0xcf, + 0x02, 0xa6, 0x25, 0xbe, 0x1b, 0xe0, 0xaa, 0x75, 0x44, 0x4a, 0x2c, 0x12, 0x05, 0xc9, 0x0c, 0x1c, + 0x0b, 0x61, 0x4c, 0x44, 0x7e, 0x7e, 0x17, 0xcc, 0xad, 0x27, 0xf1, 0x62, 0xe2, 0x8c, 0xe4, 0xd6, + 0x8b, 0x15, 0x23, 0x65, 0xe8, 0xf3, 0x83, 0x60, 0xf5, 0x6f, 0xa9, 0xa4, 0xc7, 0x45, 0x10, 0xac, + 0x3e, 0x39, 0xfc, 0x95, 0x5f, 0x9e, 0x4c, 0xc3, 0x88, 0x66, 0xb7, 0x3d, 0xba, 0x64, 0x8b, 0x4d, + 0x93, 0x08, 0xb6, 0x86, 0x6d, 0x72, 0x18, 0xa6, 0xea, 0xd9, 0x7e, 0x56, 0x67, 0x39, 0xbb, 0x70, + 0xb4, 0x14, 0x99, 0x87, 0xb1, 0xc4, 0x2b, 0x99, 0x9c, 0x6b, 0x59, 0xfa, 0xbc, 0x24, 0xb3, 0x64, + 0x51, 0xf2, 0xe9, 0x0c, 0x14, 0x96, 0x1c, 0xdd, 0xf4, 0x5c, 0xe1, 0x29, 0x74, 0xf2, 0xca, 0x9a, + 0xa3, 0xb7, 0x98, 0x7e, 0x5c, 0xc1, 0x38, 0x90, 0xb7, 0xf5, 0x46, 0x9b, 0xba, 0x13, 0x77, 0xd8, + 0xd7, 0xfd, 0xbf, 0x1b, 0xe3, 0x2f, 0x71, 0xaf, 0xe9, 0x2b, 0x35, 0xbb, 0x79, 0xb5, 0xee, 0xe8, + 0xf7, 0x4c, 0x0f, 0x67, 0x3c, 0xbd, 0x71, 0xd5, 0xa3, 0x0d, 0x3c, 0xf2, 0x5f, 0xd5, 0x5b, 0xe6, + 0x55, 0xf4, 0xee, 0xbb, 0x1a, 0x70, 0xe2, 0x35, 0x30, 0x15, 0xf0, 0xf0, 0x2f, 0x59, 0x05, 0x38, + 0x8e, 0xcc, 0xb3, 0x93, 0x32, 0x7e, 0x6a, 0xb1, 0xd5, 0x12, 0x6e, 0x47, 0xd2, 0x41, 0xd9, 0xc7, + 0x70, 0xc5, 0x0e, 0x04, 0xa6, 0xb7, 0x5a, 0x72, 0x36, 0xf7, 0x90, 0x8e, 0x69, 0xc1, 0x92, 0x68, + 0x91, 0x2f, 0xa6, 0xe1, 0x50, 0xe2, 0x7e, 0x63, 0x53, 0x84, 0x14, 0x2f, 0x46, 0x96, 0xe1, 0x98, + 0xe0, 0x1b, 0x44, 0xe4, 0x1f, 0x89, 0xce, 0x0a, 0x31, 0x34, 0x57, 0xda, 0xa0, 0x8d, 0x86, 0x00, + 0xcb, 0x75, 0xc4, 0x4a, 0x90, 0x89, 0x30, 0x4d, 0xe8, 0xbc, 0xde, 0xa4, 0xae, 0x72, 0x0c, 0x35, + 0xf6, 0xdc, 0xe6, 0xc6, 0xb8, 0xe2, 0x97, 0xc7, 0x78, 0x70, 0xa9, 0x49, 0xaf, 0xb1, 0x88, 0xcc, + 0x83, 0x6b, 0xfd, 0x68, 0x0a, 0x8f, 0xb8, 0xce, 0x47, 0x8b, 0x90, 0x49, 0x18, 0x0e, 0xac, 0x9e, + 0x6f, 0xdd, 0x2a, 0x97, 0xd0, 0xaf, 0x49, 0x84, 0x04, 0x8c, 0xc5, 0xcc, 0x97, 0x99, 0x44, 0xca, + 0x48, 0x9e, 0xe5, 0xdc, 0xd1, 0x29, 0xe6, 0x59, 0xde, 0x4a, 0xf1, 0x2c, 0x5f, 0x24, 0xaf, 0xc0, + 0x60, 0xf1, 0x4e, 0x45, 0x78, 0xcc, 0xbb, 0xca, 0xf1, 0x30, 0xcb, 0x0a, 0xe6, 0x3d, 0x17, 0xde, + 0xf5, 0x72, 0xd3, 0x65, 0x7a, 0x32, 0x05, 0x23, 0x11, 0xc3, 0x09, 0x57, 0x39, 0x81, 0x1c, 0xb0, + 0xe5, 0x3a, 0x62, 0xaa, 0x8e, 0x40, 0x45, 0x32, 0xf1, 0x47, 0x0a, 0x31, 0xad, 0x29, 0x99, 0x2e, + 0x66, 0xac, 0xd0, 0x28, 0x3a, 0xe7, 0xa3, 0x97, 0x54, 0x3f, 0xd7, 0x1a, 0x43, 0xa0, 0xaa, 0x0e, + 0xc7, 0x45, 0x52, 0xef, 0x47, 0x8b, 0x91, 0xb7, 0x80, 0x60, 0x8e, 0x0b, 0x6a, 0xf8, 0xf7, 0xe8, + 0xe5, 0x92, 0xab, 0x9c, 0xc2, 0x78, 0xb8, 0x24, 0xee, 0x0c, 0x5c, 0x2e, 0x4d, 0x5c, 0x14, 0xd3, + 0xc7, 0x05, 0x9d, 0x97, 0xaa, 0xfa, 0x8e, 0xc0, 0x55, 0x33, 0x92, 0x00, 0x34, 0x85, 0x2b, 0x59, + 0x83, 0xd3, 0x8b, 0x0e, 0xbd, 0x67, 0xda, 0x6d, 0xd7, 0x5f, 0x3e, 0xfc, 0x79, 0xeb, 0xf4, 0x96, + 0xf3, 0xd6, 0x23, 0xa2, 0xe2, 0x93, 0x2d, 0x87, 0xde, 0xab, 0xfa, 0x51, 0x50, 0x23, 0x41, 0xfc, + 0x3a, 0x71, 0xc7, 0x34, 0xa6, 0x6f, 0xb7, 0x1d, 0x2a, 0xe0, 0x26, 0x75, 0x15, 0x25, 0x9c, 0x6a, + 0x79, 0xe0, 0x06, 0x33, 0xc0, 0x45, 0xd2, 0x98, 0x46, 0x8b, 0x11, 0x0d, 0xc8, 0x8d, 0x49, 0xff, + 0x4d, 0xa5, 0x58, 0xe3, 0xc9, 0x1e, 0x95, 0x33, 0xc8, 0x4c, 0x65, 0x62, 0xa9, 0xd7, 0x82, 0x88, + 0xc8, 0x55, 0x5d, 0xe0, 0x65, 0xb1, 0x24, 0x4b, 0x93, 0x59, 0x18, 0x5d, 0x74, 0xf0, 0x84, 0x77, + 0x93, 0xae, 0x2f, 0xda, 0x0d, 0xb3, 0xb6, 0x8e, 0xce, 0x5a, 0x62, 0xaa, 0x6c, 0x71, 0x5c, 0xf5, + 0x2e, 0x5d, 0xaf, 0xb6, 0x10, 0x2b, 0x2f, 0x2b, 0xf1, 0x92, 0x72, 0x84, 0xd2, 0x87, 0xb6, 0x17, + 0xa1, 0x94, 0xc2, 0xa8, 0x78, 0x91, 0xb9, 0xef, 0x51, 0x8b, 0x2d, 0xf5, 0xae, 0x70, 0xcc, 0x52, + 0x62, 0x2f, 0x38, 0x01, 0x9e, 0x4f, 0x1d, 0x62, 0x94, 0xd1, 0x00, 0x2c, 0x37, 0x2c, 0x5e, 0x24, + 0x19, 0xc6, 0xf3, 0xfc, 0x2e, 0xc2, 0x78, 0xfe, 0x8f, 0x39, 0x79, 0xfe, 0x25, 0xe7, 0x20, 0x2f, + 0x65, 0xd9, 0xc0, 0x18, 0x85, 0x18, 0x91, 0x38, 0x2f, 0x42, 0xaf, 0x0e, 0x88, 0xbd, 0x4b, 0x10, + 0x3b, 0x02, 0x73, 0xa7, 0x85, 0x71, 0xeb, 0xb4, 0x90, 0x00, 0xf3, 0x56, 0xb5, 0x97, 0x1b, 0x66, + 0x0d, 0xe3, 0x54, 0xe7, 0x24, 0x67, 0x71, 0x84, 0xf2, 0x30, 0xd5, 0x12, 0x09, 0xb9, 0x06, 0x83, + 0xfe, 0xcd, 0x42, 0x18, 0xa3, 0x13, 0xc3, 0x17, 0x8b, 0xd9, 0x5a, 0x44, 0x47, 0x96, 0x88, 0xc8, + 0x8b, 0x00, 0xe1, 0x74, 0x20, 0x76, 0x5a, 0xb8, 0x54, 0xc8, 0xb3, 0x87, 0xbc, 0x54, 0x84, 0xd4, + 0x6c, 0xe2, 0x94, 0xd5, 0xd1, 0xcf, 0xd4, 0x87, 0x13, 0x67, 0x44, 0x87, 0x65, 0x05, 0x89, 0x16, + 0x21, 0x0b, 0x30, 0x96, 0xd0, 0x40, 0x11, 0xd1, 0x13, 0xb3, 0x35, 0xa7, 0xa8, 0xaf, 0xbc, 0x30, + 0x27, 0xca, 0x92, 0x47, 0x21, 0x77, 0x4b, 0x2b, 0x8b, 0xa8, 0x82, 0x3c, 0x20, 0x65, 0x24, 0x42, + 0x08, 0xc3, 0xaa, 0xdf, 0x97, 0x4d, 0xac, 0x4d, 0x4c, 0x7a, 0x82, 0x95, 0xd4, 0x83, 0x28, 0x3d, + 0xbf, 0x7e, 0x2e, 0x3d, 0x89, 0x88, 0x5c, 0x82, 0xfe, 0x45, 0x36, 0x33, 0xd4, 0xec, 0x86, 0xe8, + 0x4f, 0x8c, 0x0f, 0xd3, 0x12, 0x30, 0x2d, 0xc0, 0x92, 0x6b, 0x52, 0x82, 0x49, 0x29, 0x50, 0xaf, + 0x9f, 0x60, 0x32, 0x1e, 0xb1, 0x16, 0x53, 0x4d, 0x5e, 0x8b, 0xe5, 0xb2, 0x11, 0x65, 0x52, 0xd6, + 0xc5, 0x30, 0x77, 0x4d, 0xb0, 0x2b, 0xed, 0xdd, 0x6a, 0x57, 0xaa, 0xfe, 0x7e, 0x26, 0x39, 0xce, + 0xc8, 0xf5, 0x64, 0xcc, 0x4c, 0x5c, 0x84, 0x02, 0xa0, 0x5c, 0x6b, 0x10, 0x3d, 0x33, 0x12, 0xfd, + 0x32, 0xbb, 0xeb, 0xe8, 0x97, 0xb9, 0x1d, 0x46, 0xbf, 0x54, 0xff, 0x4d, 0xbe, 0xab, 0x05, 0xe1, + 0x81, 0x44, 0x49, 0x7a, 0x81, 0x9d, 0xac, 0x58, 0xed, 0x45, 0x37, 0x71, 0x3e, 0xe0, 0x06, 0x52, + 0x55, 0x9d, 0x0f, 0x2d, 0x57, 0x8b, 0x52, 0x92, 0x57, 0x61, 0xc8, 0xff, 0x00, 0x8c, 0xaa, 0x2a, + 0x45, 0x03, 0x0d, 0x56, 0xb5, 0x58, 0xfc, 0xd1, 0x48, 0x01, 0xf2, 0x2c, 0x0c, 0xe0, 0x9e, 0xa6, + 0xa5, 0xd7, 0xfc, 0x90, 0xbb, 0x3c, 0x46, 0xaf, 0x0f, 0x94, 0x23, 0x01, 0x05, 0x94, 0xe4, 0xe3, + 0x50, 0x10, 0x71, 0xe7, 0x79, 0xee, 0xe5, 0xab, 0xdb, 0x30, 0xb9, 0xbc, 0x22, 0xc7, 0x9c, 0xe7, + 0xa7, 0x14, 0x04, 0x44, 0x4e, 0x29, 0x3c, 0xdc, 0xfc, 0x12, 0x1c, 0x5f, 0x74, 0xa8, 0x81, 0xc6, + 0xbd, 0x53, 0xf7, 0x5b, 0x8e, 0xc8, 0x08, 0xc0, 0x47, 0x39, 0x2e, 0x52, 0x2d, 0x1f, 0xcd, 0x96, + 0x4f, 0x81, 0x97, 0xe3, 0x7e, 0xa6, 0x14, 0x67, 0x3b, 0x17, 0xde, 0x92, 0x9b, 0x74, 0x7d, 0x0d, + 0x33, 0x81, 0xf7, 0x87, 0x3b, 0x17, 0x21, 0xe8, 0xbb, 0x02, 0x25, 0xef, 0x5c, 0xa2, 0x85, 0xce, + 0xbe, 0x00, 0x83, 0xbb, 0x8d, 0xdb, 0xfe, 0x1b, 0xd9, 0x0e, 0xb6, 0xf8, 0x0f, 0x6e, 0xea, 0xac, + 0x20, 0x69, 0x6b, 0x6f, 0x87, 0xa4, 0xad, 0xdf, 0xce, 0x76, 0x70, 0x34, 0x78, 0xa0, 0x93, 0x2b, + 0x06, 0xc2, 0x88, 0x26, 0x57, 0x0c, 0xf3, 0x5a, 0x9a, 0x86, 0x26, 0x13, 0xc5, 0xd2, 0xb0, 0x16, + 0xb6, 0x4c, 0xc3, 0xfa, 0x4b, 0xb9, 0x6e, 0x8e, 0x18, 0x47, 0xb2, 0xdf, 0x89, 0xec, 0xaf, 0xc1, + 0x60, 0x20, 0xd9, 0x72, 0x09, 0x37, 0x3d, 0xc3, 0x41, 0x96, 0x08, 0x0e, 0xc6, 0x32, 0x12, 0x11, + 0xb9, 0xcc, 0xdb, 0x5a, 0x31, 0xdf, 0xe6, 0xf1, 0xca, 0x87, 0x45, 0x24, 0x6a, 0xdd, 0xd3, 0xab, + 0xae, 0xf9, 0x36, 0xd5, 0x02, 0x34, 0x86, 0xa2, 0x4b, 0xf3, 0x49, 0x39, 0xea, 0xa3, 0xed, 0xf7, + 0x51, 0x8a, 0x10, 0xb9, 0x1f, 0xce, 0x91, 0x10, 0x77, 0x20, 0xc4, 0xbf, 0xc9, 0xa6, 0x7a, 0x2d, + 0x1d, 0x09, 0x71, 0x27, 0xb3, 0xc5, 0x13, 0x30, 0xa0, 0xd9, 0x6b, 0xee, 0x24, 0x1e, 0x6c, 0xf8, + 0x5c, 0x81, 0x13, 0xb5, 0x63, 0xaf, 0xb9, 0x55, 0x3c, 0xb2, 0x68, 0x21, 0x81, 0xfa, 0x9d, 0x6c, + 0x17, 0xbf, 0xae, 0x23, 0xc1, 0xbf, 0x9b, 0x4b, 0xe4, 0x6f, 0x67, 0x23, 0x7e, 0x63, 0x0f, 0x74, + 0x96, 0xf2, 0x4a, 0x6d, 0x95, 0x36, 0xf5, 0x78, 0x96, 0x72, 0x17, 0xa1, 0x22, 0x57, 0x68, 0x48, + 0xa2, 0x7e, 0x35, 0x1b, 0x73, 0x9c, 0x3b, 0x92, 0xdd, 0xb6, 0x65, 0x17, 0x68, 0x9d, 0xf0, 0x05, + 0x3c, 0x92, 0xdc, 0x76, 0x25, 0xf7, 0x99, 0x6c, 0xcc, 0x6d, 0xf2, 0x81, 0x95, 0x1d, 0x1b, 0x80, + 0x49, 0x77, 0xce, 0x07, 0x56, 0x93, 0x9e, 0x80, 0x01, 0x21, 0x87, 0x60, 0xa9, 0xe0, 0xf3, 0x3e, + 0x07, 0xe2, 0x2d, 0x6b, 0x40, 0xa0, 0xfe, 0x40, 0x16, 0xa2, 0xee, 0xac, 0x0f, 0xa8, 0x0e, 0xfd, + 0x76, 0x36, 0xea, 0xc8, 0xfb, 0xe0, 0xea, 0xcf, 0x15, 0x80, 0x4a, 0x7b, 0xb9, 0x26, 0xe2, 0x40, + 0xf6, 0x4a, 0xd7, 0xf4, 0x01, 0x54, 0x93, 0x28, 0xd4, 0x7f, 0x9b, 0x4d, 0xf5, 0x2e, 0x7e, 0x70, + 0x05, 0xf8, 0x0c, 0xde, 0x8a, 0xd7, 0xac, 0x70, 0x22, 0xc7, 0x4b, 0x48, 0x36, 0xfe, 0x12, 0x89, + 0xc2, 0x7c, 0x42, 0xf2, 0xc1, 0x94, 0xed, 0x1a, 0x86, 0x31, 0x0f, 0xb7, 0x6b, 0xf2, 0x33, 0x84, + 0xb4, 0x71, 0xfb, 0x3f, 0xb3, 0x5b, 0x39, 0x63, 0x3f, 0xc8, 0xab, 0x6a, 0xdf, 0xa2, 0xbe, 0x8e, + 0x41, 0xc3, 0x58, 0x4f, 0x0c, 0xf1, 0x34, 0x56, 0x2d, 0x0e, 0x92, 0xdf, 0xde, 0x04, 0x95, 0xfa, + 0xd7, 0xbd, 0xe9, 0x9e, 0xc0, 0x0f, 0xae, 0x08, 0xcf, 0x41, 0x7e, 0x51, 0xf7, 0x56, 0x85, 0x26, + 0xe3, 0x93, 0x5e, 0x4b, 0xf7, 0x56, 0x35, 0x84, 0x92, 0xcb, 0xd0, 0xaf, 0xe9, 0x6b, 0xfc, 0xce, + 0xb3, 0x10, 0xa6, 0x18, 0x73, 0xf4, 0xb5, 0x2a, 0xbf, 0xf7, 0x0c, 0xd0, 0x44, 0x0d, 0x52, 0xdc, + 0xf1, 0x9b, 0x6f, 0xcc, 0xaf, 0xc4, 0x53, 0xdc, 0x05, 0x89, 0xed, 0xce, 0x41, 0x7e, 0xc2, 0x36, + 0xd6, 0xf1, 0xf9, 0x6a, 0x88, 0x57, 0xb6, 0x6c, 0x1b, 0xeb, 0x1a, 0x42, 0xc9, 0x67, 0x33, 0xd0, + 0x37, 0x43, 0x75, 0x83, 0x8d, 0x90, 0x81, 0x6e, 0x56, 0x27, 0x1f, 0xde, 0x1f, 0xab, 0x93, 0xb1, + 0x55, 0x5e, 0x99, 0xac, 0x28, 0xa2, 0x7e, 0x72, 0x03, 0xfa, 0x27, 0x75, 0x8f, 0xd6, 0x6d, 0x67, + 0x1d, 0xed, 0x68, 0x46, 0x42, 0x6b, 0xd2, 0x88, 0xfe, 0xf8, 0x44, 0xfc, 0x65, 0xac, 0x26, 0x7e, + 0x69, 0x41, 0x61, 0x26, 0x16, 0x91, 0x74, 0x7b, 0x30, 0x14, 0x0b, 0xcf, 0xae, 0x1d, 0xe4, 0xd6, + 0x0e, 0xae, 0x95, 0x87, 0xd2, 0xaf, 0x95, 0x71, 0xf7, 0x88, 0xb6, 0x76, 0x98, 0x58, 0x6e, 0x18, + 0x17, 0x7d, 0xbe, 0x7b, 0x44, 0x28, 0xe6, 0x95, 0xd3, 0x24, 0x12, 0xf5, 0x9b, 0xbd, 0x90, 0xea, + 0x37, 0x78, 0xa4, 0xe4, 0x47, 0x4a, 0x1e, 0x2a, 0x79, 0x29, 0xa1, 0xe4, 0x67, 0x93, 0x9e, 0xa8, + 0xef, 0x51, 0x0d, 0xff, 0x72, 0x3e, 0xe1, 0xc7, 0xfe, 0x60, 0x9f, 0x2e, 0x43, 0xe9, 0xf5, 0x6e, + 0x29, 0xbd, 0x60, 0x40, 0x14, 0xb6, 0x1c, 0x10, 0x7d, 0xdb, 0x1d, 0x10, 0xfd, 0x1d, 0x07, 0x44, + 0xa8, 0x20, 0x03, 0x1d, 0x15, 0xa4, 0x2c, 0x06, 0x0d, 0x74, 0x4f, 0x5a, 0x7a, 0x6e, 0x73, 0x63, + 0x7c, 0x84, 0x8d, 0xa6, 0xd4, 0x74, 0xa5, 0xc8, 0x42, 0xfd, 0x46, 0xbe, 0x4b, 0xf0, 0x89, 0x03, + 0xd1, 0x91, 0x67, 0x20, 0x57, 0x6c, 0xb5, 0x84, 0x7e, 0x1c, 0x97, 0xe2, 0x5e, 0x74, 0x28, 0xc5, + 0xa8, 0xc9, 0x8b, 0x90, 0x2b, 0xde, 0xa9, 0xc4, 0x43, 0xe8, 0x17, 0xef, 0x54, 0xc4, 0x97, 0x74, + 0x2c, 0x7b, 0xa7, 0x42, 0x5e, 0x0e, 0x63, 0xd9, 0xad, 0xb6, 0xad, 0xbb, 0xe2, 0xa0, 0x28, 0xcc, + 0x6d, 0x7d, 0x73, 0x9c, 0x1a, 0x43, 0xb1, 0xe3, 0x62, 0x8c, 0x36, 0xa6, 0x4d, 0x85, 0xed, 0x6b, + 0x53, 0xdf, 0x96, 0xda, 0xd4, 0xbf, 0x5d, 0x6d, 0x1a, 0xd8, 0x86, 0x36, 0xc1, 0x96, 0xda, 0x34, + 0xb8, 0x77, 0x6d, 0x6a, 0xc1, 0xd9, 0x64, 0xc0, 0xa0, 0x40, 0x23, 0x34, 0x20, 0x49, 0xac, 0x30, + 0x2c, 0xc1, 0xa7, 0xff, 0x36, 0xc7, 0x56, 0x79, 0x72, 0xfc, 0x78, 0x6a, 0x79, 0x2d, 0xa5, 0xb4, + 0xfa, 0x1b, 0xd9, 0xce, 0x71, 0x8e, 0x0e, 0xe7, 0x14, 0xf7, 0x3d, 0xa9, 0x52, 0xca, 0x47, 0xfd, + 0x4e, 0x3b, 0x4b, 0x39, 0xc6, 0x36, 0x4d, 0x66, 0x5f, 0xcf, 0x74, 0x0a, 0xbe, 0xb4, 0x27, 0x89, + 0x3d, 0x96, 0xb4, 0x68, 0x43, 0x3b, 0x7d, 0x37, 0x6a, 0xca, 0x16, 0xcf, 0xb5, 0x9e, 0xdb, 0x65, + 0xae, 0xf5, 0xdf, 0xcf, 0xc0, 0xf1, 0x9b, 0xed, 0x65, 0x2a, 0x2c, 0xd8, 0x82, 0x66, 0xbc, 0x05, + 0xc0, 0xc0, 0xc2, 0x88, 0x25, 0x83, 0x46, 0x2c, 0x1f, 0x90, 0x03, 0x27, 0xc5, 0x0a, 0x5c, 0x09, + 0xa9, 0xb9, 0x01, 0xcb, 0x79, 0xdf, 0x98, 0xf3, 0x6e, 0x7b, 0x99, 0x56, 0x13, 0x96, 0x2c, 0x12, + 0xf7, 0xb3, 0xaf, 0x70, 0x33, 0xf9, 0xdd, 0x1a, 0x8d, 0xfc, 0x5a, 0xb6, 0x63, 0xac, 0xaa, 0x43, + 0x9b, 0xd4, 0xed, 0xa3, 0xa9, 0xbd, 0x12, 0x4f, 0xee, 0x96, 0x42, 0x12, 0xe3, 0x98, 0xc6, 0x25, + 0x5d, 0x60, 0x87, 0x3c, 0xd5, 0xe0, 0xbb, 0x2a, 0xb0, 0x3f, 0xcd, 0x74, 0x8c, 0x29, 0x76, 0x58, + 0x05, 0xa6, 0xfe, 0x93, 0x9c, 0x1f, 0xca, 0x6c, 0x4f, 0x9f, 0xf0, 0x04, 0x0c, 0x08, 0x8f, 0xce, + 0xa8, 0x01, 0xae, 0xb8, 0xca, 0xc3, 0xab, 0xe1, 0x80, 0x80, 0x2d, 0xf3, 0x92, 0x75, 0xb0, 0x64, + 0x80, 0x2b, 0x59, 0x06, 0x6b, 0x12, 0x09, 0x5b, 0xc8, 0xa7, 0xee, 0x9b, 0x1e, 0xee, 0x0a, 0x58, + 0x5f, 0xe6, 0xf8, 0x42, 0x4e, 0xef, 0x9b, 0x1e, 0xdf, 0x13, 0x04, 0x68, 0xb6, 0x48, 0x57, 0xc2, + 0x44, 0xca, 0x62, 0x91, 0x76, 0x45, 0x3e, 0x69, 0xe1, 0x36, 0xf6, 0x04, 0x0c, 0x08, 0xab, 0x56, + 0x61, 0x66, 0x22, 0x5a, 0x2b, 0xec, 0x60, 0xb1, 0xb5, 0x01, 0x01, 0xe3, 0xa8, 0xd1, 0x7a, 0x68, + 0x58, 0x87, 0x1c, 0x1d, 0x84, 0x68, 0x02, 0x43, 0xae, 0xc1, 0x48, 0xc5, 0xd3, 0x2d, 0x43, 0x77, + 0x8c, 0x85, 0xb6, 0xd7, 0x6a, 0x7b, 0xf2, 0xa6, 0xd4, 0xf5, 0x0c, 0xbb, 0xed, 0x69, 0x31, 0x0a, + 0xf2, 0x14, 0x0c, 0xfb, 0x90, 0x29, 0xc7, 0xb1, 0x1d, 0x79, 0xe7, 0xe1, 0x7a, 0x06, 0x75, 0x1c, + 0x2d, 0x4a, 0x40, 0x3e, 0x08, 0xc3, 0x65, 0xeb, 0x9e, 0xcd, 0x33, 0x74, 0xdf, 0xd2, 0x66, 0xc5, + 0x3e, 0x04, 0x5d, 0xb1, 0xcc, 0x00, 0x51, 0x6d, 0x3b, 0x0d, 0x2d, 0x4a, 0xa8, 0x6e, 0x66, 0x93, + 0x11, 0xdf, 0x1e, 0xdc, 0x43, 0xcb, 0xe5, 0xa8, 0x31, 0x1d, 0x5a, 0x90, 0xe2, 0x86, 0x50, 0xb6, + 0xe5, 0xe5, 0xfb, 0xc2, 0x6b, 0xd0, 0x7f, 0x93, 0xae, 0x73, 0xbb, 0xcf, 0x42, 0x68, 0x2a, 0x7c, + 0x57, 0xc0, 0xe4, 0x1b, 0x57, 0x9f, 0x4e, 0xfd, 0x5a, 0x36, 0x19, 0xcb, 0xee, 0xc1, 0x15, 0xf6, + 0x53, 0xd0, 0x87, 0xa2, 0x2c, 0xfb, 0x57, 0xfe, 0x28, 0x40, 0x14, 0x77, 0xd4, 0x02, 0xd9, 0x27, + 0x53, 0x7f, 0xae, 0x10, 0x0f, 0x70, 0xf8, 0xe0, 0x4a, 0xef, 0x25, 0x18, 0x9c, 0xb4, 0x2d, 0xd7, + 0x74, 0x3d, 0x6a, 0xd5, 0x7c, 0x85, 0x3d, 0xc3, 0x36, 0x54, 0xb5, 0x10, 0x2c, 0xfb, 0x20, 0x49, + 0xd4, 0xbb, 0x51, 0x5e, 0xf2, 0x1c, 0x0c, 0xa0, 0xc8, 0xd1, 0x4e, 0x9a, 0x4f, 0x78, 0xf8, 0x5a, + 0xb0, 0xcc, 0x80, 0x71, 0x23, 0xe9, 0x90, 0x94, 0xdc, 0x82, 0xfe, 0xc9, 0x55, 0xb3, 0x61, 0x38, + 0xd4, 0x42, 0x7b, 0x61, 0xc9, 0x8f, 0x3c, 0xda, 0x97, 0x57, 0xf0, 0x5f, 0xa4, 0xe5, 0xcd, 0xa9, + 0x89, 0x62, 0x11, 0x2f, 0x2c, 0x01, 0x3b, 0xfb, 0x63, 0x59, 0x80, 0xb0, 0x00, 0x79, 0x18, 0xb2, + 0x41, 0x4a, 0x51, 0x34, 0x53, 0x89, 0x68, 0x50, 0x16, 0x97, 0x0a, 0x31, 0xb6, 0xb3, 0x5b, 0x8e, + 0xed, 0x5b, 0x50, 0xe0, 0x37, 0x5e, 0x68, 0x49, 0x2e, 0xc5, 0x5c, 0xeb, 0xd8, 0xe0, 0x2b, 0x48, + 0xcf, 0x0f, 0xb3, 0xb8, 0xf3, 0x8c, 0x58, 0x65, 0x73, 0x66, 0x67, 0x6b, 0xd0, 0x8b, 0x7f, 0x91, + 0x8b, 0x90, 0x5f, 0xf2, 0xd3, 0x11, 0x0e, 0xf3, 0x59, 0x3a, 0x26, 0x3f, 0xc4, 0xb3, 0x6e, 0x9a, + 0xb4, 0x2d, 0x8f, 0x55, 0x8d, 0xad, 0x1e, 0x12, 0x72, 0x11, 0xb0, 0x88, 0x5c, 0x04, 0x4c, 0xfd, + 0x3f, 0xb2, 0x29, 0xa1, 0x37, 0x1f, 0xdc, 0x61, 0xf2, 0x02, 0x00, 0xba, 0x74, 0x33, 0x79, 0xfa, + 0x2e, 0x1a, 0x38, 0x4a, 0x90, 0x11, 0xaa, 0x6d, 0xe4, 0xd8, 0x11, 0x12, 0xab, 0x7f, 0x98, 0x49, + 0xc4, 0x6b, 0xdc, 0x93, 0x1c, 0xe5, 0x5d, 0x59, 0x76, 0x97, 0xdb, 0x58, 0xbf, 0x2f, 0x72, 0x3b, + 0xeb, 0x8b, 0xe8, 0xb7, 0xec, 0xc3, 0xce, 0xf4, 0x20, 0xbf, 0xe5, 0x9b, 0xd9, 0xb4, 0xe8, 0x95, + 0x87, 0x53, 0xc5, 0xaf, 0x07, 0x9b, 0xd2, 0x7c, 0x2c, 0x5e, 0x30, 0x42, 0xe3, 0x29, 0x53, 0xc5, + 0x36, 0xf5, 0x13, 0x70, 0x2c, 0x16, 0xd3, 0x51, 0xa4, 0xa3, 0xbc, 0xd8, 0x3d, 0x38, 0x64, 0xe7, + 0x60, 0x00, 0x11, 0x32, 0xf5, 0xdf, 0x65, 0xba, 0x47, 0xf4, 0x3c, 0x70, 0xd5, 0x49, 0x11, 0x40, + 0xee, 0x1f, 0x46, 0x00, 0xfb, 0x70, 0x0c, 0x3e, 0xdc, 0x02, 0x78, 0x8f, 0x4c, 0x1e, 0xef, 0xb6, + 0x00, 0x7e, 0x2e, 0xb3, 0x65, 0x40, 0xd6, 0x83, 0x96, 0x81, 0xfa, 0xff, 0x67, 0x52, 0x03, 0xa7, + 0xee, 0xa9, 0x5d, 0x2f, 0x43, 0x81, 0x9b, 0xd5, 0x88, 0x56, 0x49, 0xa9, 0x66, 0x18, 0xb4, 0x53, + 0x2e, 0x67, 0x8e, 0x25, 0xb3, 0xd0, 0xc7, 0xdb, 0x60, 0xc4, 0x93, 0xe7, 0xa7, 0xb4, 0xd3, 0xe8, + 0x34, 0x39, 0x0a, 0xb4, 0xfa, 0x07, 0x99, 0x44, 0x1c, 0xd7, 0x03, 0xfc, 0xb6, 0x70, 0xaa, 0xce, + 0x6d, 0x7f, 0xaa, 0x56, 0xff, 0x2a, 0x9b, 0x1e, 0x46, 0xf6, 0x00, 0x3f, 0x64, 0x3f, 0xae, 0xd3, + 0x76, 0xb7, 0x6e, 0x2d, 0xc1, 0x48, 0x54, 0x16, 0x62, 0xd9, 0xba, 0x90, 0x1e, 0x4c, 0xb7, 0x43, + 0x2b, 0x62, 0x3c, 0xd4, 0x77, 0x32, 0xc9, 0x08, 0xb8, 0x07, 0x3e, 0x3f, 0xed, 0x4e, 0x5b, 0xa2, + 0x9f, 0xf2, 0x1e, 0x59, 0x6b, 0xf6, 0xe3, 0x53, 0xde, 0x23, 0xab, 0xc6, 0xee, 0x3e, 0xe5, 0x57, + 0xb2, 0x9d, 0x02, 0x08, 0x1f, 0xf8, 0x07, 0x7d, 0x44, 0x16, 0x32, 0x6f, 0x99, 0xf8, 0xb4, 0x87, + 0x3b, 0x45, 0xec, 0xed, 0xc0, 0x33, 0xc1, 0x67, 0x77, 0x63, 0x3c, 0x55, 0x58, 0xef, 0x11, 0x45, + 0x3e, 0x1c, 0xc2, 0x7a, 0x8f, 0x0c, 0x95, 0xf7, 0x9e, 0xb0, 0x7e, 0x37, 0xbb, 0xdd, 0xa8, 0xd5, + 0x47, 0xc2, 0x4b, 0x08, 0xef, 0x8b, 0xd9, 0x64, 0x34, 0xf5, 0x03, 0x17, 0xd3, 0x34, 0x14, 0x44, + 0x5c, 0xf7, 0x8e, 0xc2, 0xe1, 0xf8, 0x4e, 0x3b, 0x1a, 0xf1, 0x1d, 0xd7, 0x41, 0x3c, 0xe4, 0x6c, + 0x4f, 0x24, 0x9c, 0x56, 0xfd, 0x4e, 0x26, 0x16, 0x7a, 0xfc, 0x40, 0xae, 0x10, 0x76, 0xb5, 0x24, + 0x91, 0x57, 0xfc, 0xcb, 0xcc, 0x7c, 0x2c, 0xf4, 0x6b, 0xf0, 0x3d, 0x25, 0xea, 0xe9, 0x66, 0x23, + 0x5e, 0x5e, 0xc4, 0x04, 0xf8, 0x5a, 0x16, 0xc6, 0x12, 0xa4, 0xe4, 0x62, 0x24, 0x94, 0x0e, 0x5e, + 0x4b, 0xc6, 0x8c, 0xc7, 0x79, 0x50, 0x9d, 0x1d, 0xdc, 0xa4, 0x5e, 0x84, 0x7c, 0x49, 0x5f, 0xe7, + 0xdf, 0xd6, 0xcb, 0x59, 0x1a, 0xfa, 0xba, 0x7c, 0xe3, 0x86, 0x78, 0xb2, 0x0c, 0x27, 0xf9, 0x7b, + 0x88, 0x69, 0x5b, 0x4b, 0x66, 0x93, 0x96, 0xad, 0x39, 0xb3, 0xd1, 0x30, 0x5d, 0xf1, 0xa8, 0xf7, + 0xc4, 0xe6, 0xc6, 0xf8, 0x25, 0xcf, 0xf6, 0xf4, 0x46, 0x95, 0xfa, 0x64, 0x55, 0xcf, 0x6c, 0xd2, + 0xaa, 0x69, 0x55, 0x9b, 0x48, 0x29, 0xb1, 0x4c, 0x67, 0x45, 0xca, 0x3c, 0xca, 0x6f, 0xa5, 0xa6, + 0x5b, 0x16, 0x35, 0xca, 0xd6, 0xc4, 0xba, 0x47, 0xf9, 0x63, 0x60, 0x8e, 0x5f, 0x09, 0x72, 0xdf, + 0x70, 0x8e, 0x66, 0x8c, 0x97, 0x19, 0x81, 0x96, 0x52, 0x48, 0xfd, 0xbd, 0x7c, 0x4a, 0xd4, 0xf9, + 0x43, 0xa4, 0x3e, 0x7e, 0x4f, 0xe7, 0xb7, 0xe8, 0xe9, 0xab, 0xd0, 0x77, 0x9b, 0x3a, 0x78, 0xbf, + 0xc5, 0x1f, 0x18, 0xd0, 0x98, 0xfd, 0x1e, 0x07, 0xc9, 0x2f, 0x34, 0x82, 0x8a, 0x34, 0xe0, 0xec, + 0x12, 0xeb, 0xa6, 0xf4, 0xce, 0x2c, 0xec, 0xa2, 0x33, 0xbb, 0xf0, 0x23, 0x6f, 0xc2, 0x69, 0xc4, + 0xa6, 0x74, 0x6b, 0x1f, 0x56, 0x85, 0x31, 0xaa, 0x78, 0x55, 0xe9, 0x9d, 0xdb, 0xa9, 0x3c, 0xf9, + 0x08, 0x0c, 0x05, 0x03, 0xc4, 0xa4, 0xae, 0x78, 0xb9, 0xe8, 0x32, 0xce, 0x78, 0x00, 0x38, 0x06, + 0x46, 0x13, 0xb2, 0x68, 0x10, 0xb1, 0x08, 0x2f, 0xf5, 0xff, 0xcb, 0x74, 0x8b, 0x7e, 0x7f, 0xe0, + 0xb3, 0xf2, 0x2b, 0xd0, 0x67, 0xf0, 0x8f, 0x12, 0x3a, 0xd5, 0x3d, 0x3e, 0x3e, 0x27, 0xd5, 0xfc, + 0x32, 0xea, 0x5f, 0x66, 0xba, 0x06, 0xdd, 0x3f, 0xec, 0x9f, 0xf7, 0xc5, 0x5c, 0x87, 0xcf, 0x13, + 0x93, 0xe8, 0x65, 0x18, 0x35, 0xc3, 0xa8, 0xc0, 0xd5, 0x30, 0xfc, 0x94, 0x76, 0x4c, 0x82, 0xe3, + 0xe8, 0xba, 0x0e, 0xa7, 0x7c, 0xc3, 0x47, 0xc7, 0xb7, 0x10, 0x73, 0xab, 0x6d, 0xc7, 0xe4, 0xe3, + 0x52, 0x3b, 0xe1, 0xc6, 0xcc, 0xc7, 0xdc, 0x5b, 0x8e, 0xc9, 0x2a, 0xd0, 0xbd, 0x55, 0x6a, 0xe9, + 0xd5, 0x35, 0xdb, 0xb9, 0x8b, 0x51, 0x46, 0xf9, 0xe0, 0xd4, 0x8e, 0x71, 0xf8, 0x1d, 0x1f, 0x4c, + 0x1e, 0x85, 0xe1, 0x7a, 0xa3, 0x4d, 0x83, 0xb8, 0x8e, 0xfc, 0xad, 0x4f, 0x1b, 0x62, 0xc0, 0xe0, + 0x85, 0xe4, 0x3c, 0x00, 0x12, 0x79, 0x98, 0x12, 0x01, 0x1f, 0xf6, 0xb4, 0x01, 0x06, 0x59, 0x12, + 0xdd, 0x75, 0x96, 0x6b, 0x35, 0x17, 0x52, 0xb5, 0x61, 0x5b, 0xf5, 0xaa, 0x47, 0x9d, 0x26, 0x36, + 0x14, 0x8d, 0x19, 0xb4, 0x53, 0x48, 0x81, 0x4f, 0x27, 0xee, 0xac, 0x6d, 0xd5, 0x97, 0xa8, 0xd3, + 0x64, 0x4d, 0x7d, 0x02, 0x88, 0x68, 0xaa, 0x83, 0x97, 0x1e, 0xfc, 0xe3, 0xd0, 0x9a, 0x41, 0x13, + 0x1f, 0xc1, 0x6f, 0x43, 0xf0, 0xc3, 0xc6, 0x61, 0x90, 0x07, 0xb7, 0xe3, 0x42, 0x43, 0x13, 0x06, + 0x0d, 0x38, 0x08, 0xe5, 0x75, 0x0a, 0x84, 0x75, 0x05, 0xb7, 0xea, 0xd6, 0xc4, 0x2f, 0xf5, 0x73, + 0xb9, 0xb4, 0x3c, 0x01, 0x7b, 0x52, 0xb4, 0x70, 0x5a, 0xcd, 0xee, 0x68, 0x5a, 0x3d, 0x66, 0xb5, + 0x9b, 0x55, 0xbd, 0xd5, 0xaa, 0xae, 0x98, 0x0d, 0x74, 0xab, 0xc2, 0x85, 0x4f, 0x1b, 0xb6, 0xda, + 0xcd, 0x62, 0xab, 0x35, 0xcd, 0x81, 0xe4, 0x71, 0x18, 0x63, 0x74, 0xd8, 0x49, 0x01, 0x65, 0x1e, + 0x29, 0x19, 0x03, 0x8c, 0x0e, 0xeb, 0xd3, 0x9e, 0x81, 0x7e, 0xc1, 0x93, 0xaf, 0x55, 0xbd, 0x5a, + 0x1f, 0x67, 0xe6, 0xb2, 0x9e, 0x0b, 0xd8, 0xf0, 0xc9, 0xb5, 0x57, 0x1b, 0xf0, 0xcb, 0x63, 0x0c, + 0x64, 0xab, 0xdd, 0xe4, 0x11, 0xb1, 0xfa, 0x10, 0x19, 0xfc, 0x26, 0x17, 0x61, 0x84, 0x71, 0x09, + 0x04, 0xc6, 0xc3, 0xc6, 0xf6, 0x6a, 0x31, 0x28, 0xb9, 0x06, 0x27, 0x22, 0x10, 0xbe, 0x07, 0xe5, + 0x6e, 0x02, 0xbd, 0x5a, 0x2a, 0x4e, 0xfd, 0x6a, 0x2e, 0x9a, 0xbd, 0xe0, 0x00, 0x3a, 0xe2, 0x34, + 0xf4, 0xd9, 0x4e, 0xbd, 0xda, 0x76, 0x1a, 0x62, 0xec, 0x15, 0x6c, 0xa7, 0x7e, 0xcb, 0x69, 0x90, + 0x93, 0x50, 0x60, 0xbd, 0x63, 0x1a, 0x62, 0x88, 0xf5, 0xea, 0xad, 0x56, 0xd9, 0x20, 0x45, 0xde, + 0x21, 0x18, 0x72, 0xb4, 0x5a, 0xc3, 0xa3, 0x3d, 0x37, 0x4a, 0xe8, 0xe5, 0x2b, 0x5e, 0x02, 0x89, + 0xfd, 0x84, 0x81, 0x48, 0xf9, 0x45, 0x40, 0x8c, 0x85, 0x81, 0xc7, 0x12, 0x83, 0xf7, 0x49, 0x9c, + 0x85, 0x40, 0x86, 0x2c, 0xf8, 0x21, 0xc6, 0x20, 0x25, 0x20, 0x21, 0x55, 0xd3, 0x36, 0xcc, 0x15, + 0x93, 0x72, 0xaf, 0x8e, 0x5e, 0xfe, 0xf0, 0x9b, 0xc4, 0x6a, 0xa3, 0x3e, 0x93, 0x39, 0x01, 0x21, + 0x2f, 0x71, 0x25, 0xe4, 0x74, 0xb8, 0xf6, 0xf1, 0xbe, 0xe5, 0xfb, 0xb4, 0x18, 0x0a, 0x35, 0x13, + 0xcb, 0xe3, 0x42, 0xa8, 0xbe, 0x93, 0x4b, 0xa6, 0xb0, 0x38, 0x90, 0x7d, 0xcd, 0x0c, 0x80, 0xc8, + 0x50, 0x13, 0x3e, 0xae, 0x05, 0x16, 0xe7, 0x21, 0xa6, 0x03, 0x0f, 0xa9, 0x2c, 0xb9, 0x0c, 0xfd, + 0xfc, 0x8b, 0xca, 0x25, 0xb1, 0xdf, 0x41, 0x13, 0x31, 0xb7, 0x65, 0xae, 0xac, 0xa0, 0x3d, 0x59, + 0x80, 0x26, 0x17, 0xa1, 0xaf, 0x34, 0x5f, 0xa9, 0x14, 0xe7, 0xfd, 0x97, 0x62, 0xf4, 0x2f, 0x31, + 0x2c, 0xb7, 0xea, 0xea, 0x96, 0xab, 0xf9, 0x48, 0xf2, 0x28, 0x14, 0xca, 0x8b, 0x48, 0xc6, 0xbd, + 0x26, 0x07, 0x37, 0x37, 0xc6, 0xfb, 0xcc, 0x16, 0xa7, 0x12, 0x28, 0xac, 0xf7, 0x76, 0xb9, 0x24, + 0x99, 0x4b, 0xf0, 0x7a, 0xef, 0x99, 0x06, 0x3e, 0x3b, 0x6b, 0x01, 0x9a, 0x3c, 0x0b, 0x43, 0x15, + 0xea, 0x98, 0x7a, 0x63, 0xbe, 0x8d, 0x47, 0x45, 0x29, 0x94, 0xa2, 0x8b, 0xf0, 0xaa, 0x85, 0x08, + 0x2d, 0x42, 0x46, 0xce, 0x41, 0x7e, 0xc6, 0xb4, 0x7c, 0x17, 0x06, 0xb4, 0x71, 0x5f, 0x35, 0x2d, + 0x4f, 0x43, 0xa8, 0xfa, 0x2f, 0xb2, 0xe9, 0x79, 0x40, 0x0e, 0x60, 0x38, 0xee, 0xf2, 0xa5, 0x37, + 0xa6, 0x04, 0xf9, 0x3d, 0x28, 0xc1, 0x0a, 0x1c, 0x2b, 0x1a, 0x4d, 0xd3, 0x2a, 0xe2, 0x4f, 0x77, + 0x6e, 0xba, 0x88, 0xc3, 0x5b, 0x72, 0xa1, 0x8b, 0xa1, 0xc5, 0xf7, 0xf0, 0xa0, 0xbc, 0x0c, 0x55, + 0xd5, 0x39, 0xae, 0xda, 0x5c, 0xd1, 0xab, 0x35, 0x9e, 0x42, 0x43, 0x8b, 0x33, 0x55, 0x7f, 0x34, + 0xbb, 0x45, 0xea, 0x92, 0x07, 0x51, 0xfa, 0xea, 0x97, 0xb2, 0xdd, 0xb3, 0xc7, 0x3c, 0x90, 0x42, + 0xf9, 0x9b, 0x6c, 0x4a, 0x2e, 0x97, 0x3d, 0x49, 0xe2, 0x32, 0xf4, 0x73, 0x36, 0x81, 0xa9, 0x2d, + 0xce, 0x38, 0x5c, 0x59, 0x71, 0xa6, 0xf3, 0xd1, 0x64, 0x1e, 0x4e, 0x14, 0x57, 0x56, 0x68, 0xcd, + 0x0b, 0xc3, 0x33, 0xcf, 0x87, 0x81, 0x52, 0x79, 0x38, 0x5a, 0x81, 0x0f, 0xc3, 0x3b, 0x63, 0x40, + 0x90, 0xd4, 0x72, 0x64, 0x09, 0x4e, 0xc5, 0xe1, 0x15, 0xbe, 0x4d, 0xcf, 0x4b, 0x11, 0x6a, 0x13, + 0x1c, 0xf9, 0x7f, 0x5a, 0x87, 0xb2, 0x69, 0xad, 0xc4, 0xe9, 0xb4, 0xb7, 0x5b, 0x2b, 0x71, 0x6e, + 0x4d, 0x2d, 0xa7, 0x7e, 0x2d, 0x27, 0xa7, 0xbc, 0x79, 0x70, 0x8d, 0xa2, 0xae, 0x47, 0x4c, 0xa1, + 0xb7, 0x3b, 0x64, 0x9e, 0x15, 0x51, 0x3e, 0x8c, 0xb6, 0xe3, 0x5b, 0x0d, 0x06, 0x51, 0x06, 0x10, + 0x28, 0xdb, 0xff, 0x05, 0x94, 0xa4, 0x0c, 0xf9, 0xa2, 0x53, 0xe7, 0x5b, 0xd0, 0xad, 0x1c, 0x9f, + 0x74, 0xa7, 0xee, 0xa6, 0x3b, 0x3e, 0x31, 0x16, 0xea, 0x0f, 0x67, 0xbb, 0x64, 0xa9, 0x79, 0x20, + 0x27, 0x91, 0x9f, 0xca, 0x76, 0xca, 0x37, 0x73, 0x58, 0xcd, 0xbb, 0xde, 0x65, 0xe1, 0x1c, 0x6e, + 0xdb, 0xb7, 0xfd, 0x13, 0xce, 0xe3, 0x73, 0x3c, 0x3c, 0xf6, 0x4d, 0xd3, 0x32, 0xc8, 0x19, 0x38, + 0x79, 0xab, 0x32, 0xa5, 0x55, 0x6f, 0x96, 0xe7, 0x4b, 0xd5, 0x5b, 0xf3, 0x95, 0xc5, 0xa9, 0xc9, + 0xf2, 0x74, 0x79, 0xaa, 0x34, 0xda, 0x43, 0x8e, 0xc3, 0xb1, 0x10, 0x35, 0x73, 0x6b, 0xae, 0x38, + 0x3f, 0x9a, 0x21, 0x63, 0x30, 0x1c, 0x02, 0x27, 0x16, 0x96, 0x46, 0xb3, 0x8f, 0xbf, 0x1f, 0x06, + 0xf1, 0xfc, 0xcf, 0xf7, 0x42, 0x64, 0x08, 0xfa, 0x17, 0x26, 0x2a, 0x53, 0xda, 0x6d, 0x64, 0x02, + 0x50, 0x28, 0x4d, 0xcd, 0x33, 0x86, 0x99, 0xc7, 0xff, 0x75, 0x06, 0xa0, 0x32, 0xbd, 0xb4, 0x28, + 0x08, 0x07, 0xa1, 0xaf, 0x3c, 0x7f, 0xbb, 0x38, 0x5b, 0x66, 0x74, 0xfd, 0x90, 0x5f, 0x58, 0x9c, + 0x62, 0x35, 0x0c, 0x40, 0xef, 0xe4, 0xec, 0x42, 0x65, 0x6a, 0x34, 0xcb, 0x80, 0xda, 0x54, 0xb1, + 0x34, 0x9a, 0x63, 0xc0, 0x3b, 0x5a, 0x79, 0x69, 0x6a, 0x34, 0xcf, 0xfe, 0x9c, 0xad, 0x2c, 0x15, + 0x97, 0x46, 0x7b, 0xd9, 0x9f, 0xd3, 0xf8, 0x67, 0x81, 0x31, 0xab, 0x4c, 0x2d, 0xe1, 0x8f, 0x3e, + 0xd6, 0x84, 0x69, 0xff, 0x57, 0x3f, 0x43, 0x31, 0xd6, 0xa5, 0xb2, 0x36, 0x3a, 0xc0, 0x7e, 0x30, + 0x96, 0xec, 0x07, 0xb0, 0xc6, 0x69, 0x53, 0x73, 0x0b, 0xb7, 0xa7, 0x46, 0x07, 0x19, 0xaf, 0xb9, + 0x9b, 0x0c, 0x3c, 0xc4, 0xfe, 0xd4, 0xe6, 0xd8, 0x9f, 0xc3, 0x8c, 0x93, 0x36, 0x55, 0x9c, 0x5d, + 0x2c, 0x2e, 0xcd, 0x8c, 0x8e, 0xb0, 0xf6, 0x20, 0xcf, 0x63, 0xbc, 0xe4, 0x7c, 0x71, 0x6e, 0x6a, + 0x74, 0x54, 0xd0, 0x94, 0x66, 0xcb, 0xf3, 0x37, 0x47, 0xc7, 0xb0, 0x21, 0x6f, 0xce, 0xe1, 0x0f, + 0xc2, 0x0a, 0xe0, 0x5f, 0xc7, 0x1f, 0xff, 0x18, 0x14, 0x16, 0x2a, 0xb8, 0xe3, 0x3f, 0x0d, 0xc7, + 0x17, 0x2a, 0xd5, 0xa5, 0x37, 0x17, 0xa7, 0x62, 0xf2, 0x1e, 0x83, 0x61, 0x1f, 0x31, 0x5b, 0x9e, + 0xbf, 0xf5, 0x61, 0x2e, 0x6d, 0x1f, 0x34, 0x57, 0x9c, 0x5c, 0xa8, 0x8c, 0x66, 0x59, 0xaf, 0xf8, + 0xa0, 0x3b, 0xe5, 0xf9, 0xd2, 0xc2, 0x9d, 0xca, 0x68, 0xee, 0xf1, 0x7b, 0x7e, 0x0a, 0xe6, 0x05, + 0xc7, 0xac, 0x9b, 0x16, 0x39, 0x0f, 0x67, 0x4a, 0x53, 0xb7, 0xcb, 0x93, 0x53, 0xd5, 0x05, 0xad, + 0x7c, 0xa3, 0x3c, 0x1f, 0xab, 0xe9, 0x24, 0x8c, 0x45, 0xd1, 0xc5, 0xc5, 0xf2, 0x68, 0x86, 0x9c, + 0x02, 0x12, 0x05, 0xbf, 0x5e, 0x9c, 0x9b, 0x1e, 0xcd, 0x12, 0x05, 0x4e, 0x44, 0xe1, 0xe5, 0xf9, + 0xa5, 0x5b, 0xf3, 0x53, 0xa3, 0xb9, 0xc7, 0x7f, 0x21, 0x03, 0x27, 0x53, 0x03, 0x50, 0x10, 0x15, + 0x2e, 0x4c, 0xcd, 0x16, 0x2b, 0x4b, 0xe5, 0xc9, 0xca, 0x54, 0x51, 0x9b, 0x9c, 0xa9, 0x4e, 0x16, + 0x97, 0xa6, 0x6e, 0x2c, 0x68, 0x6f, 0x56, 0x6f, 0x4c, 0xcd, 0x4f, 0x69, 0xc5, 0xd9, 0xd1, 0x1e, + 0xf2, 0x28, 0x8c, 0x77, 0xa0, 0xa9, 0x4c, 0x4d, 0xde, 0xd2, 0xca, 0x4b, 0x6f, 0x8e, 0x66, 0xc8, + 0x23, 0x70, 0xbe, 0x23, 0x11, 0xfb, 0x3d, 0x9a, 0x25, 0x17, 0xe0, 0x6c, 0x27, 0x92, 0x37, 0x66, + 0x47, 0x73, 0x8f, 0xff, 0x44, 0x06, 0x48, 0x32, 0x82, 0x00, 0x79, 0x18, 0xce, 0x31, 0xbd, 0xa8, + 0x76, 0x6e, 0xe0, 0x23, 0x70, 0x3e, 0x95, 0x42, 0x6a, 0xde, 0x38, 0x3c, 0xd4, 0x81, 0x44, 0x34, + 0xee, 0x1c, 0x28, 0xe9, 0x04, 0xd8, 0xb4, 0xdf, 0xca, 0xc0, 0xc9, 0xd4, 0xe3, 0x07, 0xb9, 0x04, + 0xef, 0x2b, 0x96, 0xe6, 0x58, 0xdf, 0x4c, 0x2e, 0x95, 0x17, 0xe6, 0x2b, 0xd5, 0xb9, 0xe9, 0x62, + 0x95, 0x69, 0xdf, 0xad, 0x4a, 0xac, 0x37, 0x2f, 0x82, 0xda, 0x85, 0x72, 0x72, 0xa6, 0x38, 0x7f, + 0x83, 0x0d, 0x3f, 0xf2, 0x3e, 0x78, 0xb8, 0x23, 0xdd, 0xd4, 0x7c, 0x71, 0x62, 0x76, 0xaa, 0x34, + 0x9a, 0x25, 0x8f, 0xc1, 0x23, 0x1d, 0xa9, 0x4a, 0xe5, 0x0a, 0x27, 0xcb, 0x4d, 0x94, 0xde, 0xf9, + 0x47, 0x17, 0x7a, 0xde, 0xf9, 0xd6, 0x85, 0xcc, 0x9f, 0x7c, 0xeb, 0x42, 0xe6, 0xaf, 0xbe, 0x75, + 0x21, 0xf3, 0x91, 0x6b, 0x3b, 0x89, 0x0c, 0xc1, 0xa7, 0xad, 0xe5, 0x02, 0x6e, 0x05, 0x9e, 0xf9, + 0xf7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x31, 0xcd, 0x35, 0x75, 0x7a, 0x61, 0x01, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -25068,6 +25116,18 @@ func (m *IntegrationMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if m.GitHub != nil { + { + size, err := m.GitHub.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + } if m.AzureOIDC != nil { { size, err := m.AzureOIDC.MarshalToSizedBuffer(dAtA[:i]) @@ -25481,6 +25541,40 @@ func (m *PluginMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GitHubIntegrationMetadata) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubIntegrationMetadata) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubIntegrationMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Organization) > 0 { + i -= len(m.Organization) + copy(dAtA[i:], m.Organization) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Organization))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *OneOf) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -29444,12 +29538,12 @@ func (m *StreamStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n633, err633 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) - if err633 != nil { - return 0, err633 + n634, err634 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) + if err634 != nil { + return 0, err634 } - i -= n633 - i = encodeVarintEvents(dAtA, i, uint64(n633)) + i -= n634 + i = encodeVarintEvents(dAtA, i, uint64(n634)) i-- dAtA[i] = 0x1a if m.LastEventIndex != 0 { @@ -29608,12 +29702,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xc2 } } - n637, err637 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) - if err637 != nil { - return 0, err637 + n638, err638 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) + if err638 != nil { + return 0, err638 } - i -= n637 - i = encodeVarintEvents(dAtA, i, uint64(n637)) + i -= n638 + i = encodeVarintEvents(dAtA, i, uint64(n638)) i-- dAtA[i] = 0x1 i-- @@ -29761,12 +29855,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x4a } - n641, err641 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err641 != nil { - return 0, err641 + n642, err642 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err642 != nil { + return 0, err642 } - i -= n641 - i = encodeVarintEvents(dAtA, i, uint64(n641)) + i -= n642 + i = encodeVarintEvents(dAtA, i, uint64(n642)) i-- dAtA[i] = 0x42 if len(m.KubernetesUsers) > 0 { @@ -38774,6 +38868,10 @@ func (m *IntegrationMetadata) Size() (n int) { l = m.AzureOIDC.Size() n += 1 + l + sovEvents(uint64(l)) } + if m.GitHub != nil { + l = m.GitHub.Size() + n += 1 + l + sovEvents(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -38912,6 +39010,22 @@ func (m *PluginMetadata) Size() (n int) { return n } +func (m *GitHubIntegrationMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Organization) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *OneOf) Size() (n int) { if m == nil { return 0 @@ -73550,6 +73664,42 @@ func (m *IntegrationMetadata) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitHub", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GitHub == nil { + m.GitHub = &GitHubIntegrationMetadata{} + } + if err := m.GitHub.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -74609,6 +74759,89 @@ func (m *PluginMetadata) Unmarshal(dAtA []byte) error { } return nil } +func (m *GitHubIntegrationMetadata) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubIntegrationMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubIntegrationMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Organization", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Organization = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *OneOf) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/api/types/integration.go b/api/types/integration.go index 189ecd959438e..73b0042bcab7e 100644 --- a/api/types/integration.go +++ b/api/types/integration.go @@ -32,6 +32,9 @@ const ( // IntegrationSubKindAzureOIDC is an integration with Azure that uses OpenID Connect as an Identity Provider. IntegrationSubKindAzureOIDC = "azure-oidc" + + // IntegrationSubKindGitHub is an integration with GitHub. + IntegrationSubKindGitHub = "github" ) // Integration specifies is a connection configuration between Teleport and a 3rd party system. @@ -53,6 +56,12 @@ type Integration interface { // GetAzureOIDCIntegrationSpec returns the `azure-oidc` spec fields. GetAzureOIDCIntegrationSpec() *AzureOIDCIntegrationSpecV1 + + // GetGitHubIntegrationSpec returns the GitHub spec. + GetGitHubIntegrationSpec() *GitHubIntegrationSpecV1 + + // SetGitHubSSHCertAuthority configures CA for GitHub integraion. + SetGitHubSSHCertAuthority(ca []*SSHKeyPair) error } var _ ResourceWithLabels = (*IntegrationV1)(nil) @@ -99,6 +108,27 @@ func NewIntegrationAzureOIDC(md Metadata, spec *AzureOIDCIntegrationSpecV1) (*In return ig, nil } +// NewIntegrationGitHub returns a new `github` subkind Integration +func NewIntegrationGitHub(md Metadata, spec *GitHubIntegrationSpecV1) (*IntegrationV1, error) { + ig := &IntegrationV1{ + ResourceHeader: ResourceHeader{ + Metadata: md, + Kind: KindIntegration, + Version: V1, + SubKind: IntegrationSubKindGitHub, + }, + Spec: IntegrationSpecV1{ + SubKindSpec: &IntegrationSpecV1_GitHub{ + GitHub: spec, + }, + }, + } + if err := ig.CheckAndSetDefaults(); err != nil { + return nil, trace.Wrap(err) + } + return ig, nil +} + // String returns the integration string representation. func (ig *IntegrationV1) String() string { return fmt.Sprintf("IntegrationV1(Name=%v, SubKind=%s, Labels=%v)", @@ -160,6 +190,11 @@ func (s *IntegrationSpecV1) CheckAndSetDefaults() error { if err != nil { return trace.Wrap(err) } + case *IntegrationSpecV1_GitHub: + if err := integrationSubKind.CheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + return nil default: return trace.BadParameter("unknown integration subkind: %T", integrationSubKind) } @@ -207,6 +242,16 @@ func (s *IntegrationSpecV1_AzureOIDC) Validate() error { return nil } +func (s *IntegrationSpecV1_GitHub) CheckAndSetDefaults() error { + if s == nil || s.GitHub == nil { + return trace.BadParameter("github is required for %q subkind", IntegrationSubKindGitHub) + } + if s.GitHub.Organization == "" { + return trace.BadParameter("organization must be set") + } + return nil +} + // GetAWSOIDCIntegrationSpec returns the specific spec fields for `aws-oidc` subkind integrations. func (ig *IntegrationV1) GetAWSOIDCIntegrationSpec() *AWSOIDCIntegrationSpecV1 { return ig.Spec.GetAWSOIDC() @@ -219,6 +264,19 @@ func (ig *IntegrationV1) SetAWSOIDCIntegrationSpec(awsOIDCSpec *AWSOIDCIntegrati } } +func (ig *IntegrationV1) SetGitHubSSHCertAuthority(cas []*SSHKeyPair) error { + if ig.GetSubKind() != IntegrationSubKindGitHub { + return trace.BadParameter("integration is not %q subkind", IntegrationSubKindGitHub) + } + + spec := ig.Spec.GetGitHub() + spec.Proxy.CertAuthority = cas + ig.Spec.SubKindSpec = &IntegrationSpecV1_GitHub{ + GitHub: spec, + } + return nil +} + // SetAWSOIDCRoleARN sets the RoleARN of the AWS OIDC Spec. func (ig *IntegrationV1) SetAWSOIDCRoleARN(roleARN string) { currentSubSpec := ig.Spec.GetAWSOIDC() @@ -250,6 +308,10 @@ func (ig *IntegrationV1) GetAzureOIDCIntegrationSpec() *AzureOIDCIntegrationSpec return ig.Spec.GetAzureOIDC() } +func (ig *IntegrationV1) GetGitHubIntegrationSpec() *GitHubIntegrationSpecV1 { + return ig.Spec.GetGitHub() +} + // Integrations is a list of Integration resources. type Integrations []Integration @@ -301,6 +363,7 @@ func (ig *IntegrationV1) UnmarshalJSON(data []byte) error { Spec struct { AWSOIDC json.RawMessage `json:"aws_oidc"` AzureOIDC json.RawMessage `json:"azure_oidc"` + GitHub json.RawMessage `json:"github"` } `json:"spec"` }{} @@ -334,6 +397,17 @@ func (ig *IntegrationV1) UnmarshalJSON(data []byte) error { integration.Spec.SubKindSpec = subkindSpec + case IntegrationSubKindGitHub: + subkindSpec := &IntegrationSpecV1_GitHub{ + GitHub: &GitHubIntegrationSpecV1{}, + } + + if err := json.Unmarshal(d.Spec.GitHub, subkindSpec.GitHub); err != nil { + return trace.Wrap(err) + } + + integration.Spec.SubKindSpec = subkindSpec + default: return trace.BadParameter("invalid subkind %q", integration.ResourceHeader.SubKind) } @@ -356,6 +430,7 @@ func (ig *IntegrationV1) MarshalJSON() ([]byte, error) { Spec struct { AWSOIDC AWSOIDCIntegrationSpecV1 `json:"aws_oidc,omitempty"` AzureOIDC AzureOIDCIntegrationSpecV1 `json:"azure_oidc,omitempty"` + GitHub GitHubIntegrationSpecV1 `json:"github,omitempty"` } `json:"spec"` }{} @@ -374,6 +449,11 @@ func (ig *IntegrationV1) MarshalJSON() ([]byte, error) { } d.Spec.AzureOIDC = *ig.GetAzureOIDCIntegrationSpec() + case IntegrationSubKindGitHub: + if ig.GetGitHubIntegrationSpec() == nil { + return nil, trace.BadParameter("missing subkind data for %q subkind", ig.SubKind) + } + d.Spec.GitHub = *ig.GetGitHubIntegrationSpec() default: return nil, trace.BadParameter("invalid subkind %q", ig.SubKind) } diff --git a/api/types/server.go b/api/types/server.go index 47ec7c92ee1d0..105f4e9dc3a20 100644 --- a/api/types/server.go +++ b/api/types/server.go @@ -17,7 +17,9 @@ limitations under the License. package types import ( + "context" "fmt" + "log/slog" "net" "sort" "strings" @@ -101,6 +103,8 @@ type Server interface { GetAWSInstanceID() string // GetAWSAccountID returns the AWS Account ID if this node comes from an EC2 instance. GetAWSAccountID() string + // GetGitHub returns the GitHub server spec. + GetGitHub() *GitHubServerMetadata } // NewServer creates an instance of Server. @@ -404,7 +408,7 @@ func (s *ServerV2) IsOpenSSHNode() bool { // IsOpenSSHNodeSubKind returns whether the Node SubKind is from a server which accepts connections over the // OpenSSH daemon (instead of a Teleport Node). func IsOpenSSHNodeSubKind(subkind string) bool { - return subkind == SubKindOpenSSHNode || subkind == SubKindOpenSSHEICENode + return subkind == SubKindOpenSSHNode || subkind == SubKindOpenSSHEICENode || subkind == SubKindOpenSSHGitHub } // GetAWSAccountID returns the AWS Account ID if this node comes from an EC2 instance. @@ -429,6 +433,11 @@ func (s *ServerV2) GetAWSInstanceID() string { return awsInstanceID } +// GetGitHub returns the GitHub server spec. +func (s *ServerV2) GetGitHub() *GitHubServerMetadata { + return s.Spec.GitHub +} + // IsEICE returns whether the Node is an EICE instance. // Must be `openssh-ec2-ice` subkind and have the AccountID and InstanceID information (AWS Metadata or Labels). func (s *ServerV2) IsEICE() bool { @@ -492,6 +501,23 @@ func (s *ServerV2) openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults() er return nil } +const gitHubAddress = "github.com:22" + +func (s *ServerV2) githubCheckAndSetDefaults() error { + switch s.Spec.Addr { + case gitHubAddress: + case "": + s.Spec.Addr = gitHubAddress + default: + slog.WarnContext(context.Background(), "invalid address for GitHub server. Address will be replaced with %q", gitHubAddress) + s.Spec.Addr = gitHubAddress + } + if err := s.openSSHNodeCheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + return nil +} + // serverNameForEICE returns the deterministic Server's name for an EICE instance. // This name must comply with the expected format for EC2 Nodes as defined here: api/utils/aws.IsEC2NodeID // Returns an error if AccountID or InstanceID is not present. @@ -529,6 +555,8 @@ func (s *ServerV2) CheckAndSetDefaults() error { // if the server is a registered OpenSSH node, allow the name to be // randomly generated s.Metadata.Name = uuid.NewString() + case SubKindOpenSSHGitHub: + s.Metadata.Name = uuid.NewString() } } @@ -556,6 +584,11 @@ func (s *ServerV2) CheckAndSetDefaults() error { return trace.Wrap(err) } + case SubKindOpenSSHGitHub: + if err := s.githubCheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + default: return trace.BadParameter("invalid SubKind %q", s.SubKind) } diff --git a/api/types/types.pb.go b/api/types/types.pb.go index c2eaab502e198..6cf1ebbba2763 100644 --- a/api/types/types.pb.go +++ b/api/types/types.pb.go @@ -917,7 +917,7 @@ func (x CertAuthoritySpecV2_SigningAlgType) String() string { } func (CertAuthoritySpecV2_SigningAlgType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{52, 0} + return fileDescriptor_9198ee693835762e, []int{53, 0} } // FIPSEndpointState represents an AWS FIPS endpoint state. @@ -950,7 +950,7 @@ func (x ClusterAuditConfigSpecV2_FIPSEndpointState) String() string { } func (ClusterAuditConfigSpecV2_FIPSEndpointState) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{73, 0} + return fileDescriptor_9198ee693835762e, []int{74, 0} } // TraceType is an identification of the checkpoint. @@ -1020,7 +1020,7 @@ func (x ConnectionDiagnosticTrace_TraceType) String() string { } func (ConnectionDiagnosticTrace_TraceType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{243, 0} + return fileDescriptor_9198ee693835762e, []int{244, 0} } // StatusType describes whether this was a success or a failure. @@ -1049,7 +1049,7 @@ func (x ConnectionDiagnosticTrace_StatusType) String() string { } func (ConnectionDiagnosticTrace_StatusType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{243, 1} + return fileDescriptor_9198ee693835762e, []int{244, 1} } // OktaAssignmentStatus represents the status of an Okta assignment. @@ -1089,7 +1089,7 @@ func (x OktaAssignmentSpecV1_OktaAssignmentStatus) String() string { } func (OktaAssignmentSpecV1_OktaAssignmentStatus) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{314, 0} + return fileDescriptor_9198ee693835762e, []int{315, 0} } // OktaAssignmentTargetType is the type of Okta object that an assignment is targeting. @@ -1121,7 +1121,7 @@ func (x OktaAssignmentTargetV1_OktaAssignmentTargetType) String() string { } func (OktaAssignmentTargetV1_OktaAssignmentTargetType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{315, 0} + return fileDescriptor_9198ee693835762e, []int{316, 0} } type KeepAlive struct { @@ -2909,10 +2909,13 @@ type ServerSpecV2 struct { PublicAddrs []string `protobuf:"bytes,13,rep,name=public_addrs,json=publicAddrs,proto3" json:"public_addrs,omitempty"` // CloudMetadata contains info about the cloud instance the server is running // on, if any. - CloudMetadata *CloudMetadata `protobuf:"bytes,14,opt,name=CloudMetadata,proto3" json:"cloud_metadata,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + CloudMetadata *CloudMetadata `protobuf:"bytes,14,opt,name=CloudMetadata,proto3" json:"cloud_metadata,omitempty"` + // GitHub contains info about GitHub proxies where each server represents a + // GitHub organization. + GitHub *GitHubServerMetadata `protobuf:"bytes,15,opt,name=git_hub,json=gitHub,proto3" json:"github,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *ServerSpecV2) Reset() { *m = ServerSpecV2{} } @@ -3045,6 +3048,49 @@ func (m *CloudMetadata) XXX_DiscardUnknown() { var xxx_messageInfo_CloudMetadata proto.InternalMessageInfo +type GitHubServerMetadata struct { + // Organization specifies the name of the organization for the GitHub integration. + Organization string `protobuf:"bytes,1,opt,name=organization,proto3" json:"organization,omitempty"` + // Integration is the integration that is associated with this Server. + Integration string `protobuf:"bytes,2,opt,name=integration,proto3" json:"integration,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubServerMetadata) Reset() { *m = GitHubServerMetadata{} } +func (m *GitHubServerMetadata) String() string { return proto.CompactTextString(m) } +func (*GitHubServerMetadata) ProtoMessage() {} +func (*GitHubServerMetadata) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{38} +} +func (m *GitHubServerMetadata) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubServerMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubServerMetadata.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubServerMetadata) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubServerMetadata.Merge(m, src) +} +func (m *GitHubServerMetadata) XXX_Size() int { + return m.Size() +} +func (m *GitHubServerMetadata) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubServerMetadata.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubServerMetadata proto.InternalMessageInfo + // AppServerV3 represents a single proxied web app. type AppServerV3 struct { // Kind is the app server resource kind. Always "app_server". @@ -3065,7 +3111,7 @@ type AppServerV3 struct { func (m *AppServerV3) Reset() { *m = AppServerV3{} } func (*AppServerV3) ProtoMessage() {} func (*AppServerV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{38} + return fileDescriptor_9198ee693835762e, []int{39} } func (m *AppServerV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3117,7 +3163,7 @@ func (m *AppServerSpecV3) Reset() { *m = AppServerSpecV3{} } func (m *AppServerSpecV3) String() string { return proto.CompactTextString(m) } func (*AppServerSpecV3) ProtoMessage() {} func (*AppServerSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{39} + return fileDescriptor_9198ee693835762e, []int{40} } func (m *AppServerSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3159,7 +3205,7 @@ func (m *AppV3List) Reset() { *m = AppV3List{} } func (m *AppV3List) String() string { return proto.CompactTextString(m) } func (*AppV3List) ProtoMessage() {} func (*AppV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{40} + return fileDescriptor_9198ee693835762e, []int{41} } func (m *AppV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3209,7 +3255,7 @@ type AppV3 struct { func (m *AppV3) Reset() { *m = AppV3{} } func (*AppV3) ProtoMessage() {} func (*AppV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{41} + return fileDescriptor_9198ee693835762e, []int{42} } func (m *AppV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3269,7 +3315,7 @@ func (m *AppSpecV3) Reset() { *m = AppSpecV3{} } func (m *AppSpecV3) String() string { return proto.CompactTextString(m) } func (*AppSpecV3) ProtoMessage() {} func (*AppSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{42} + return fileDescriptor_9198ee693835762e, []int{43} } func (m *AppSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3321,7 +3367,7 @@ type AppServerOrSAMLIdPServiceProviderV1 struct { func (m *AppServerOrSAMLIdPServiceProviderV1) Reset() { *m = AppServerOrSAMLIdPServiceProviderV1{} } func (*AppServerOrSAMLIdPServiceProviderV1) ProtoMessage() {} func (*AppServerOrSAMLIdPServiceProviderV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{43} + return fileDescriptor_9198ee693835762e, []int{44} } func (m *AppServerOrSAMLIdPServiceProviderV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3416,7 +3462,7 @@ func (m *Rewrite) Reset() { *m = Rewrite{} } func (m *Rewrite) String() string { return proto.CompactTextString(m) } func (*Rewrite) ProtoMessage() {} func (*Rewrite) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{44} + return fileDescriptor_9198ee693835762e, []int{45} } func (m *Rewrite) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3460,7 +3506,7 @@ func (m *Header) Reset() { *m = Header{} } func (m *Header) String() string { return proto.CompactTextString(m) } func (*Header) ProtoMessage() {} func (*Header) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{45} + return fileDescriptor_9198ee693835762e, []int{46} } func (m *Header) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3507,7 +3553,7 @@ func (m *CommandLabelV2) Reset() { *m = CommandLabelV2{} } func (m *CommandLabelV2) String() string { return proto.CompactTextString(m) } func (*CommandLabelV2) ProtoMessage() {} func (*CommandLabelV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{46} + return fileDescriptor_9198ee693835762e, []int{47} } func (m *CommandLabelV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3549,7 +3595,7 @@ func (m *AppAWS) Reset() { *m = AppAWS{} } func (m *AppAWS) String() string { return proto.CompactTextString(m) } func (*AppAWS) ProtoMessage() {} func (*AppAWS) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{47} + return fileDescriptor_9198ee693835762e, []int{48} } func (m *AppAWS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3595,7 +3641,7 @@ func (m *SSHKeyPair) Reset() { *m = SSHKeyPair{} } func (m *SSHKeyPair) String() string { return proto.CompactTextString(m) } func (*SSHKeyPair) ProtoMessage() {} func (*SSHKeyPair) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{48} + return fileDescriptor_9198ee693835762e, []int{49} } func (m *SSHKeyPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3641,7 +3687,7 @@ func (m *TLSKeyPair) Reset() { *m = TLSKeyPair{} } func (m *TLSKeyPair) String() string { return proto.CompactTextString(m) } func (*TLSKeyPair) ProtoMessage() {} func (*TLSKeyPair) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{49} + return fileDescriptor_9198ee693835762e, []int{50} } func (m *TLSKeyPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3687,7 +3733,7 @@ func (m *JWTKeyPair) Reset() { *m = JWTKeyPair{} } func (m *JWTKeyPair) String() string { return proto.CompactTextString(m) } func (*JWTKeyPair) ProtoMessage() {} func (*JWTKeyPair) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{50} + return fileDescriptor_9198ee693835762e, []int{51} } func (m *JWTKeyPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3736,7 +3782,7 @@ type CertAuthorityV2 struct { func (m *CertAuthorityV2) Reset() { *m = CertAuthorityV2{} } func (*CertAuthorityV2) ProtoMessage() {} func (*CertAuthorityV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{51} + return fileDescriptor_9198ee693835762e, []int{52} } func (m *CertAuthorityV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3797,7 +3843,7 @@ func (m *CertAuthoritySpecV2) Reset() { *m = CertAuthoritySpecV2{} } func (m *CertAuthoritySpecV2) String() string { return proto.CompactTextString(m) } func (*CertAuthoritySpecV2) ProtoMessage() {} func (*CertAuthoritySpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{52} + return fileDescriptor_9198ee693835762e, []int{53} } func (m *CertAuthoritySpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3843,7 +3889,7 @@ func (m *CAKeySet) Reset() { *m = CAKeySet{} } func (m *CAKeySet) String() string { return proto.CompactTextString(m) } func (*CAKeySet) ProtoMessage() {} func (*CAKeySet) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{53} + return fileDescriptor_9198ee693835762e, []int{54} } func (m *CAKeySet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3888,7 +3934,7 @@ func (m *RoleMapping) Reset() { *m = RoleMapping{} } func (m *RoleMapping) String() string { return proto.CompactTextString(m) } func (*RoleMapping) ProtoMessage() {} func (*RoleMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{54} + return fileDescriptor_9198ee693835762e, []int{55} } func (m *RoleMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3936,7 +3982,7 @@ type ProvisionTokenV1 struct { func (m *ProvisionTokenV1) Reset() { *m = ProvisionTokenV1{} } func (*ProvisionTokenV1) ProtoMessage() {} func (*ProvisionTokenV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{55} + return fileDescriptor_9198ee693835762e, []int{56} } func (m *ProvisionTokenV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3986,7 +4032,7 @@ type ProvisionTokenV2 struct { func (m *ProvisionTokenV2) Reset() { *m = ProvisionTokenV2{} } func (*ProvisionTokenV2) ProtoMessage() {} func (*ProvisionTokenV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{56} + return fileDescriptor_9198ee693835762e, []int{57} } func (m *ProvisionTokenV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4028,7 +4074,7 @@ func (m *ProvisionTokenV2List) Reset() { *m = ProvisionTokenV2List{} } func (m *ProvisionTokenV2List) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenV2List) ProtoMessage() {} func (*ProvisionTokenV2List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{57} + return fileDescriptor_9198ee693835762e, []int{58} } func (m *ProvisionTokenV2List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4080,7 +4126,7 @@ func (m *TokenRule) Reset() { *m = TokenRule{} } func (m *TokenRule) String() string { return proto.CompactTextString(m) } func (*TokenRule) ProtoMessage() {} func (*TokenRule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{58} + return fileDescriptor_9198ee693835762e, []int{59} } func (m *TokenRule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4160,7 +4206,7 @@ func (m *ProvisionTokenSpecV2) Reset() { *m = ProvisionTokenSpecV2{} } func (m *ProvisionTokenSpecV2) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2) ProtoMessage() {} func (*ProvisionTokenSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{59} + return fileDescriptor_9198ee693835762e, []int{60} } func (m *ProvisionTokenSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4212,7 +4258,7 @@ func (m *ProvisionTokenSpecV2TPM) Reset() { *m = ProvisionTokenSpecV2TPM func (m *ProvisionTokenSpecV2TPM) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2TPM) ProtoMessage() {} func (*ProvisionTokenSpecV2TPM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{60} + return fileDescriptor_9198ee693835762e, []int{61} } func (m *ProvisionTokenSpecV2TPM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4268,7 +4314,7 @@ func (m *ProvisionTokenSpecV2TPM_Rule) Reset() { *m = ProvisionTokenSpec func (m *ProvisionTokenSpecV2TPM_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2TPM_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2TPM_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{60, 0} + return fileDescriptor_9198ee693835762e, []int{61, 0} } func (m *ProvisionTokenSpecV2TPM_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4332,7 +4378,7 @@ func (m *ProvisionTokenSpecV2GitHub) Reset() { *m = ProvisionTokenSpecV2 func (m *ProvisionTokenSpecV2GitHub) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GitHub) ProtoMessage() {} func (*ProvisionTokenSpecV2GitHub) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{61} + return fileDescriptor_9198ee693835762e, []int{62} } func (m *ProvisionTokenSpecV2GitHub) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4394,7 +4440,7 @@ func (m *ProvisionTokenSpecV2GitHub_Rule) Reset() { *m = ProvisionTokenS func (m *ProvisionTokenSpecV2GitHub_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GitHub_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2GitHub_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{61, 0} + return fileDescriptor_9198ee693835762e, []int{62, 0} } func (m *ProvisionTokenSpecV2GitHub_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4442,7 +4488,7 @@ func (m *ProvisionTokenSpecV2GitLab) Reset() { *m = ProvisionTokenSpecV2 func (m *ProvisionTokenSpecV2GitLab) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GitLab) ProtoMessage() {} func (*ProvisionTokenSpecV2GitLab) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{62} + return fileDescriptor_9198ee693835762e, []int{63} } func (m *ProvisionTokenSpecV2GitLab) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4544,7 +4590,7 @@ func (m *ProvisionTokenSpecV2GitLab_Rule) Reset() { *m = ProvisionTokenS func (m *ProvisionTokenSpecV2GitLab_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GitLab_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2GitLab_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{62, 0} + return fileDescriptor_9198ee693835762e, []int{63, 0} } func (m *ProvisionTokenSpecV2GitLab_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4589,7 +4635,7 @@ func (m *ProvisionTokenSpecV2CircleCI) Reset() { *m = ProvisionTokenSpec func (m *ProvisionTokenSpecV2CircleCI) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2CircleCI) ProtoMessage() {} func (*ProvisionTokenSpecV2CircleCI) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{63} + return fileDescriptor_9198ee693835762e, []int{64} } func (m *ProvisionTokenSpecV2CircleCI) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4630,7 +4676,7 @@ func (m *ProvisionTokenSpecV2CircleCI_Rule) Reset() { *m = ProvisionToke func (m *ProvisionTokenSpecV2CircleCI_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2CircleCI_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2CircleCI_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{63, 0} + return fileDescriptor_9198ee693835762e, []int{64, 0} } func (m *ProvisionTokenSpecV2CircleCI_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4677,7 +4723,7 @@ func (m *ProvisionTokenSpecV2Spacelift) Reset() { *m = ProvisionTokenSpe func (m *ProvisionTokenSpecV2Spacelift) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Spacelift) ProtoMessage() {} func (*ProvisionTokenSpecV2Spacelift) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{64} + return fileDescriptor_9198ee693835762e, []int{65} } func (m *ProvisionTokenSpecV2Spacelift) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4728,7 +4774,7 @@ func (m *ProvisionTokenSpecV2Spacelift_Rule) Reset() { *m = ProvisionTok func (m *ProvisionTokenSpecV2Spacelift_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Spacelift_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2Spacelift_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{64, 0} + return fileDescriptor_9198ee693835762e, []int{65, 0} } func (m *ProvisionTokenSpecV2Spacelift_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4780,7 +4826,7 @@ func (m *ProvisionTokenSpecV2Kubernetes) Reset() { *m = ProvisionTokenSp func (m *ProvisionTokenSpecV2Kubernetes) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Kubernetes) ProtoMessage() {} func (*ProvisionTokenSpecV2Kubernetes) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{65} + return fileDescriptor_9198ee693835762e, []int{66} } func (m *ProvisionTokenSpecV2Kubernetes) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4827,7 +4873,7 @@ func (m *ProvisionTokenSpecV2Kubernetes_StaticJWKSConfig) String() string { } func (*ProvisionTokenSpecV2Kubernetes_StaticJWKSConfig) ProtoMessage() {} func (*ProvisionTokenSpecV2Kubernetes_StaticJWKSConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{65, 0} + return fileDescriptor_9198ee693835762e, []int{66, 0} } func (m *ProvisionTokenSpecV2Kubernetes_StaticJWKSConfig) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4871,7 +4917,7 @@ func (m *ProvisionTokenSpecV2Kubernetes_Rule) Reset() { *m = ProvisionTo func (m *ProvisionTokenSpecV2Kubernetes_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Kubernetes_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2Kubernetes_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{65, 1} + return fileDescriptor_9198ee693835762e, []int{66, 1} } func (m *ProvisionTokenSpecV2Kubernetes_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4915,7 +4961,7 @@ func (m *ProvisionTokenSpecV2Azure) Reset() { *m = ProvisionTokenSpecV2A func (m *ProvisionTokenSpecV2Azure) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Azure) ProtoMessage() {} func (*ProvisionTokenSpecV2Azure) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{66} + return fileDescriptor_9198ee693835762e, []int{67} } func (m *ProvisionTokenSpecV2Azure) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4961,7 +5007,7 @@ func (m *ProvisionTokenSpecV2Azure_Rule) Reset() { *m = ProvisionTokenSp func (m *ProvisionTokenSpecV2Azure_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2Azure_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2Azure_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{66, 0} + return fileDescriptor_9198ee693835762e, []int{67, 0} } func (m *ProvisionTokenSpecV2Azure_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5005,7 +5051,7 @@ func (m *ProvisionTokenSpecV2GCP) Reset() { *m = ProvisionTokenSpecV2GCP func (m *ProvisionTokenSpecV2GCP) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GCP) ProtoMessage() {} func (*ProvisionTokenSpecV2GCP) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{67} + return fileDescriptor_9198ee693835762e, []int{68} } func (m *ProvisionTokenSpecV2GCP) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5054,7 +5100,7 @@ func (m *ProvisionTokenSpecV2GCP_Rule) Reset() { *m = ProvisionTokenSpec func (m *ProvisionTokenSpecV2GCP_Rule) String() string { return proto.CompactTextString(m) } func (*ProvisionTokenSpecV2GCP_Rule) ProtoMessage() {} func (*ProvisionTokenSpecV2GCP_Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{67, 0} + return fileDescriptor_9198ee693835762e, []int{68, 0} } func (m *ProvisionTokenSpecV2GCP_Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5103,7 +5149,7 @@ type StaticTokensV2 struct { func (m *StaticTokensV2) Reset() { *m = StaticTokensV2{} } func (*StaticTokensV2) ProtoMessage() {} func (*StaticTokensV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{68} + return fileDescriptor_9198ee693835762e, []int{69} } func (m *StaticTokensV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5146,7 +5192,7 @@ func (m *StaticTokensSpecV2) Reset() { *m = StaticTokensSpecV2{} } func (m *StaticTokensSpecV2) String() string { return proto.CompactTextString(m) } func (*StaticTokensSpecV2) ProtoMessage() {} func (*StaticTokensSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{69} + return fileDescriptor_9198ee693835762e, []int{70} } func (m *StaticTokensSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5195,7 +5241,7 @@ type ClusterNameV2 struct { func (m *ClusterNameV2) Reset() { *m = ClusterNameV2{} } func (*ClusterNameV2) ProtoMessage() {} func (*ClusterNameV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{70} + return fileDescriptor_9198ee693835762e, []int{71} } func (m *ClusterNameV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5241,7 +5287,7 @@ func (m *ClusterNameSpecV2) Reset() { *m = ClusterNameSpecV2{} } func (m *ClusterNameSpecV2) String() string { return proto.CompactTextString(m) } func (*ClusterNameSpecV2) ProtoMessage() {} func (*ClusterNameSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{71} + return fileDescriptor_9198ee693835762e, []int{72} } func (m *ClusterNameSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5291,7 +5337,7 @@ func (m *ClusterAuditConfigV2) Reset() { *m = ClusterAuditConfigV2{} } func (m *ClusterAuditConfigV2) String() string { return proto.CompactTextString(m) } func (*ClusterAuditConfigV2) ProtoMessage() {} func (*ClusterAuditConfigV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{72} + return fileDescriptor_9198ee693835762e, []int{73} } func (m *ClusterAuditConfigV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5361,7 +5407,7 @@ func (m *ClusterAuditConfigSpecV2) Reset() { *m = ClusterAuditConfigSpec func (m *ClusterAuditConfigSpecV2) String() string { return proto.CompactTextString(m) } func (*ClusterAuditConfigSpecV2) ProtoMessage() {} func (*ClusterAuditConfigSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{73} + return fileDescriptor_9198ee693835762e, []int{74} } func (m *ClusterAuditConfigSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5412,7 +5458,7 @@ func (m *ClusterNetworkingConfigV2) Reset() { *m = ClusterNetworkingConf func (m *ClusterNetworkingConfigV2) String() string { return proto.CompactTextString(m) } func (*ClusterNetworkingConfigV2) ProtoMessage() {} func (*ClusterNetworkingConfigV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{74} + return fileDescriptor_9198ee693835762e, []int{75} } func (m *ClusterNetworkingConfigV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5491,7 +5537,7 @@ func (m *ClusterNetworkingConfigSpecV2) Reset() { *m = ClusterNetworking func (m *ClusterNetworkingConfigSpecV2) String() string { return proto.CompactTextString(m) } func (*ClusterNetworkingConfigSpecV2) ProtoMessage() {} func (*ClusterNetworkingConfigSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{75} + return fileDescriptor_9198ee693835762e, []int{76} } func (m *ClusterNetworkingConfigSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5536,7 +5582,7 @@ func (m *TunnelStrategyV1) Reset() { *m = TunnelStrategyV1{} } func (m *TunnelStrategyV1) String() string { return proto.CompactTextString(m) } func (*TunnelStrategyV1) ProtoMessage() {} func (*TunnelStrategyV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{76} + return fileDescriptor_9198ee693835762e, []int{77} } func (m *TunnelStrategyV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5621,7 +5667,7 @@ func (m *AgentMeshTunnelStrategy) Reset() { *m = AgentMeshTunnelStrategy func (m *AgentMeshTunnelStrategy) String() string { return proto.CompactTextString(m) } func (*AgentMeshTunnelStrategy) ProtoMessage() {} func (*AgentMeshTunnelStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{77} + return fileDescriptor_9198ee693835762e, []int{78} } func (m *AgentMeshTunnelStrategy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5662,7 +5708,7 @@ func (m *ProxyPeeringTunnelStrategy) Reset() { *m = ProxyPeeringTunnelSt func (m *ProxyPeeringTunnelStrategy) String() string { return proto.CompactTextString(m) } func (*ProxyPeeringTunnelStrategy) ProtoMessage() {} func (*ProxyPeeringTunnelStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{78} + return fileDescriptor_9198ee693835762e, []int{79} } func (m *ProxyPeeringTunnelStrategy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5713,7 +5759,7 @@ func (m *SessionRecordingConfigV2) Reset() { *m = SessionRecordingConfig func (m *SessionRecordingConfigV2) String() string { return proto.CompactTextString(m) } func (*SessionRecordingConfigV2) ProtoMessage() {} func (*SessionRecordingConfigV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{79} + return fileDescriptor_9198ee693835762e, []int{80} } func (m *SessionRecordingConfigV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5759,7 +5805,7 @@ func (m *SessionRecordingConfigSpecV2) Reset() { *m = SessionRecordingCo func (m *SessionRecordingConfigSpecV2) String() string { return proto.CompactTextString(m) } func (*SessionRecordingConfigSpecV2) ProtoMessage() {} func (*SessionRecordingConfigSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{80} + return fileDescriptor_9198ee693835762e, []int{81} } func (m *SessionRecordingConfigSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5809,7 +5855,7 @@ type AuthPreferenceV2 struct { func (m *AuthPreferenceV2) Reset() { *m = AuthPreferenceV2{} } func (*AuthPreferenceV2) ProtoMessage() {} func (*AuthPreferenceV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{81} + return fileDescriptor_9198ee693835762e, []int{82} } func (m *AuthPreferenceV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5902,7 +5948,7 @@ func (m *AuthPreferenceSpecV2) Reset() { *m = AuthPreferenceSpecV2{} } func (m *AuthPreferenceSpecV2) String() string { return proto.CompactTextString(m) } func (*AuthPreferenceSpecV2) ProtoMessage() {} func (*AuthPreferenceSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{82} + return fileDescriptor_9198ee693835762e, []int{83} } func (m *AuthPreferenceSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5953,7 +5999,7 @@ func (m *U2F) Reset() { *m = U2F{} } func (m *U2F) String() string { return proto.CompactTextString(m) } func (*U2F) ProtoMessage() {} func (*U2F) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{83} + return fileDescriptor_9198ee693835762e, []int{84} } func (m *U2F) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6021,7 +6067,7 @@ func (m *Webauthn) Reset() { *m = Webauthn{} } func (m *Webauthn) String() string { return proto.CompactTextString(m) } func (*Webauthn) ProtoMessage() {} func (*Webauthn) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{84} + return fileDescriptor_9198ee693835762e, []int{85} } func (m *Webauthn) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6092,7 +6138,7 @@ func (m *DeviceTrust) Reset() { *m = DeviceTrust{} } func (m *DeviceTrust) String() string { return proto.CompactTextString(m) } func (*DeviceTrust) ProtoMessage() {} func (*DeviceTrust) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{85} + return fileDescriptor_9198ee693835762e, []int{86} } func (m *DeviceTrust) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6139,7 +6185,7 @@ func (m *HardwareKey) Reset() { *m = HardwareKey{} } func (m *HardwareKey) String() string { return proto.CompactTextString(m) } func (*HardwareKey) ProtoMessage() {} func (*HardwareKey) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{86} + return fileDescriptor_9198ee693835762e, []int{87} } func (m *HardwareKey) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6186,7 +6232,7 @@ func (m *HardwareKeySerialNumberValidation) Reset() { *m = HardwareKeySe func (m *HardwareKeySerialNumberValidation) String() string { return proto.CompactTextString(m) } func (*HardwareKeySerialNumberValidation) ProtoMessage() {} func (*HardwareKeySerialNumberValidation) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{87} + return fileDescriptor_9198ee693835762e, []int{88} } func (m *HardwareKeySerialNumberValidation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6236,7 +6282,7 @@ func (m *Namespace) Reset() { *m = Namespace{} } func (m *Namespace) String() string { return proto.CompactTextString(m) } func (*Namespace) ProtoMessage() {} func (*Namespace) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{88} + return fileDescriptor_9198ee693835762e, []int{89} } func (m *Namespace) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6276,7 +6322,7 @@ func (m *NamespaceSpec) Reset() { *m = NamespaceSpec{} } func (m *NamespaceSpec) String() string { return proto.CompactTextString(m) } func (*NamespaceSpec) ProtoMessage() {} func (*NamespaceSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{89} + return fileDescriptor_9198ee693835762e, []int{90} } func (m *NamespaceSpec) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6324,7 +6370,7 @@ type UserTokenV3 struct { func (m *UserTokenV3) Reset() { *m = UserTokenV3{} } func (*UserTokenV3) ProtoMessage() {} func (*UserTokenV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{90} + return fileDescriptor_9198ee693835762e, []int{91} } func (m *UserTokenV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6371,7 +6417,7 @@ func (m *UserTokenSpecV3) Reset() { *m = UserTokenSpecV3{} } func (m *UserTokenSpecV3) String() string { return proto.CompactTextString(m) } func (*UserTokenSpecV3) ProtoMessage() {} func (*UserTokenSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{91} + return fileDescriptor_9198ee693835762e, []int{92} } func (m *UserTokenSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6419,7 +6465,7 @@ type UserTokenSecretsV3 struct { func (m *UserTokenSecretsV3) Reset() { *m = UserTokenSecretsV3{} } func (*UserTokenSecretsV3) ProtoMessage() {} func (*UserTokenSecretsV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{92} + return fileDescriptor_9198ee693835762e, []int{93} } func (m *UserTokenSecretsV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6464,7 +6510,7 @@ func (m *UserTokenSecretsSpecV3) Reset() { *m = UserTokenSecretsSpecV3{} func (m *UserTokenSecretsSpecV3) String() string { return proto.CompactTextString(m) } func (*UserTokenSecretsSpecV3) ProtoMessage() {} func (*UserTokenSecretsSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{93} + return fileDescriptor_9198ee693835762e, []int{94} } func (m *UserTokenSecretsSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6513,7 +6559,7 @@ type AccessRequestV3 struct { func (m *AccessRequestV3) Reset() { *m = AccessRequestV3{} } func (*AccessRequestV3) ProtoMessage() {} func (*AccessRequestV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{94} + return fileDescriptor_9198ee693835762e, []int{95} } func (m *AccessRequestV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6565,7 +6611,7 @@ func (m *AccessReviewThreshold) Reset() { *m = AccessReviewThreshold{} } func (m *AccessReviewThreshold) String() string { return proto.CompactTextString(m) } func (*AccessReviewThreshold) ProtoMessage() {} func (*AccessReviewThreshold) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{95} + return fileDescriptor_9198ee693835762e, []int{96} } func (m *AccessReviewThreshold) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6610,7 +6656,7 @@ func (m *PromotedAccessList) Reset() { *m = PromotedAccessList{} } func (m *PromotedAccessList) String() string { return proto.CompactTextString(m) } func (*PromotedAccessList) ProtoMessage() {} func (*PromotedAccessList) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{96} + return fileDescriptor_9198ee693835762e, []int{97} } func (m *PromotedAccessList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6671,7 +6717,7 @@ func (m *AccessReview) Reset() { *m = AccessReview{} } func (m *AccessReview) String() string { return proto.CompactTextString(m) } func (*AccessReview) ProtoMessage() {} func (*AccessReview) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{97} + return fileDescriptor_9198ee693835762e, []int{98} } func (m *AccessReview) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6716,7 +6762,7 @@ func (m *AccessReviewSubmission) Reset() { *m = AccessReviewSubmission{} func (m *AccessReviewSubmission) String() string { return proto.CompactTextString(m) } func (*AccessReviewSubmission) ProtoMessage() {} func (*AccessReviewSubmission) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{98} + return fileDescriptor_9198ee693835762e, []int{99} } func (m *AccessReviewSubmission) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6759,7 +6805,7 @@ func (m *ThresholdIndexSet) Reset() { *m = ThresholdIndexSet{} } func (m *ThresholdIndexSet) String() string { return proto.CompactTextString(m) } func (*ThresholdIndexSet) ProtoMessage() {} func (*ThresholdIndexSet) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{99} + return fileDescriptor_9198ee693835762e, []int{100} } func (m *ThresholdIndexSet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6802,7 +6848,7 @@ func (m *ThresholdIndexSets) Reset() { *m = ThresholdIndexSets{} } func (m *ThresholdIndexSets) String() string { return proto.CompactTextString(m) } func (*ThresholdIndexSets) ProtoMessage() {} func (*ThresholdIndexSets) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{100} + return fileDescriptor_9198ee693835762e, []int{101} } func (m *ThresholdIndexSets) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6905,7 +6951,7 @@ func (m *AccessRequestSpecV3) Reset() { *m = AccessRequestSpecV3{} } func (m *AccessRequestSpecV3) String() string { return proto.CompactTextString(m) } func (*AccessRequestSpecV3) ProtoMessage() {} func (*AccessRequestSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{101} + return fileDescriptor_9198ee693835762e, []int{102} } func (m *AccessRequestSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6962,7 +7008,7 @@ func (m *AccessRequestFilter) Reset() { *m = AccessRequestFilter{} } func (m *AccessRequestFilter) String() string { return proto.CompactTextString(m) } func (*AccessRequestFilter) ProtoMessage() {} func (*AccessRequestFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{102} + return fileDescriptor_9198ee693835762e, []int{103} } func (m *AccessRequestFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7018,7 +7064,7 @@ func (m *AccessCapabilities) Reset() { *m = AccessCapabilities{} } func (m *AccessCapabilities) String() string { return proto.CompactTextString(m) } func (*AccessCapabilities) ProtoMessage() {} func (*AccessCapabilities) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{103} + return fileDescriptor_9198ee693835762e, []int{104} } func (m *AccessCapabilities) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7076,7 +7122,7 @@ func (m *AccessCapabilitiesRequest) Reset() { *m = AccessCapabilitiesReq func (m *AccessCapabilitiesRequest) String() string { return proto.CompactTextString(m) } func (*AccessCapabilitiesRequest) ProtoMessage() {} func (*AccessCapabilitiesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{104} + return fileDescriptor_9198ee693835762e, []int{105} } func (m *AccessCapabilitiesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7128,7 +7174,7 @@ func (m *ResourceID) Reset() { *m = ResourceID{} } func (m *ResourceID) String() string { return proto.CompactTextString(m) } func (*ResourceID) ProtoMessage() {} func (*ResourceID) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{105} + return fileDescriptor_9198ee693835762e, []int{106} } func (m *ResourceID) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7177,7 +7223,7 @@ type PluginDataV3 struct { func (m *PluginDataV3) Reset() { *m = PluginDataV3{} } func (*PluginDataV3) ProtoMessage() {} func (*PluginDataV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{106} + return fileDescriptor_9198ee693835762e, []int{107} } func (m *PluginDataV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7220,7 +7266,7 @@ func (m *PluginDataEntry) Reset() { *m = PluginDataEntry{} } func (m *PluginDataEntry) String() string { return proto.CompactTextString(m) } func (*PluginDataEntry) ProtoMessage() {} func (*PluginDataEntry) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{107} + return fileDescriptor_9198ee693835762e, []int{108} } func (m *PluginDataEntry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7262,7 +7308,7 @@ func (m *PluginDataSpecV3) Reset() { *m = PluginDataSpecV3{} } func (m *PluginDataSpecV3) String() string { return proto.CompactTextString(m) } func (*PluginDataSpecV3) ProtoMessage() {} func (*PluginDataSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{108} + return fileDescriptor_9198ee693835762e, []int{109} } func (m *PluginDataSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7309,7 +7355,7 @@ func (m *PluginDataFilter) Reset() { *m = PluginDataFilter{} } func (m *PluginDataFilter) String() string { return proto.CompactTextString(m) } func (*PluginDataFilter) ProtoMessage() {} func (*PluginDataFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{109} + return fileDescriptor_9198ee693835762e, []int{110} } func (m *PluginDataFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7360,7 +7406,7 @@ func (m *PluginDataUpdateParams) Reset() { *m = PluginDataUpdateParams{} func (m *PluginDataUpdateParams) String() string { return proto.CompactTextString(m) } func (*PluginDataUpdateParams) ProtoMessage() {} func (*PluginDataUpdateParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{110} + return fileDescriptor_9198ee693835762e, []int{111} } func (m *PluginDataUpdateParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7404,7 +7450,7 @@ func (m *RoleFilter) Reset() { *m = RoleFilter{} } func (m *RoleFilter) String() string { return proto.CompactTextString(m) } func (*RoleFilter) ProtoMessage() {} func (*RoleFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{111} + return fileDescriptor_9198ee693835762e, []int{112} } func (m *RoleFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7454,7 +7500,7 @@ type RoleV6 struct { func (m *RoleV6) Reset() { *m = RoleV6{} } func (*RoleV6) ProtoMessage() {} func (*RoleV6) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{112} + return fileDescriptor_9198ee693835762e, []int{113} } func (m *RoleV6) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7501,7 +7547,7 @@ func (m *RoleSpecV6) Reset() { *m = RoleSpecV6{} } func (m *RoleSpecV6) String() string { return proto.CompactTextString(m) } func (*RoleSpecV6) ProtoMessage() {} func (*RoleSpecV6) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{113} + return fileDescriptor_9198ee693835762e, []int{114} } func (m *RoleSpecV6) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7632,7 +7678,7 @@ func (m *RoleOptions) Reset() { *m = RoleOptions{} } func (m *RoleOptions) String() string { return proto.CompactTextString(m) } func (*RoleOptions) ProtoMessage() {} func (*RoleOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{114} + return fileDescriptor_9198ee693835762e, []int{115} } func (m *RoleOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7678,7 +7724,7 @@ func (m *RecordSession) Reset() { *m = RecordSession{} } func (m *RecordSession) String() string { return proto.CompactTextString(m) } func (*RecordSession) ProtoMessage() {} func (*RecordSession) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{115} + return fileDescriptor_9198ee693835762e, []int{116} } func (m *RecordSession) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7730,7 +7776,7 @@ func (m *CertExtension) Reset() { *m = CertExtension{} } func (m *CertExtension) String() string { return proto.CompactTextString(m) } func (*CertExtension) ProtoMessage() {} func (*CertExtension) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{116} + return fileDescriptor_9198ee693835762e, []int{117} } func (m *CertExtension) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7863,7 +7909,7 @@ func (m *RoleConditions) Reset() { *m = RoleConditions{} } func (m *RoleConditions) String() string { return proto.CompactTextString(m) } func (*RoleConditions) ProtoMessage() {} func (*RoleConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{117} + return fileDescriptor_9198ee693835762e, []int{118} } func (m *RoleConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7939,7 +7985,7 @@ func (m *SPIFFERoleCondition) Reset() { *m = SPIFFERoleCondition{} } func (m *SPIFFERoleCondition) String() string { return proto.CompactTextString(m) } func (*SPIFFERoleCondition) ProtoMessage() {} func (*SPIFFERoleCondition) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{118} + return fileDescriptor_9198ee693835762e, []int{119} } func (m *SPIFFERoleCondition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7983,7 +8029,7 @@ func (m *DatabasePermission) Reset() { *m = DatabasePermission{} } func (m *DatabasePermission) String() string { return proto.CompactTextString(m) } func (*DatabasePermission) ProtoMessage() {} func (*DatabasePermission) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{119} + return fileDescriptor_9198ee693835762e, []int{120} } func (m *DatabasePermission) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8034,7 +8080,7 @@ func (m *KubernetesResource) Reset() { *m = KubernetesResource{} } func (m *KubernetesResource) String() string { return proto.CompactTextString(m) } func (*KubernetesResource) ProtoMessage() {} func (*KubernetesResource) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{120} + return fileDescriptor_9198ee693835762e, []int{121} } func (m *KubernetesResource) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8087,7 +8133,7 @@ func (m *SessionRequirePolicy) Reset() { *m = SessionRequirePolicy{} } func (m *SessionRequirePolicy) String() string { return proto.CompactTextString(m) } func (*SessionRequirePolicy) ProtoMessage() {} func (*SessionRequirePolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{121} + return fileDescriptor_9198ee693835762e, []int{122} } func (m *SessionRequirePolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8135,7 +8181,7 @@ func (m *SessionJoinPolicy) Reset() { *m = SessionJoinPolicy{} } func (m *SessionJoinPolicy) String() string { return proto.CompactTextString(m) } func (*SessionJoinPolicy) ProtoMessage() {} func (*SessionJoinPolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{122} + return fileDescriptor_9198ee693835762e, []int{123} } func (m *SessionJoinPolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8204,7 +8250,7 @@ func (m *AccessRequestConditions) Reset() { *m = AccessRequestConditions func (m *AccessRequestConditions) String() string { return proto.CompactTextString(m) } func (*AccessRequestConditions) ProtoMessage() {} func (*AccessRequestConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{123} + return fileDescriptor_9198ee693835762e, []int{124} } func (m *AccessRequestConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8257,7 +8303,7 @@ func (m *AccessReviewConditions) Reset() { *m = AccessReviewConditions{} func (m *AccessReviewConditions) String() string { return proto.CompactTextString(m) } func (*AccessReviewConditions) ProtoMessage() {} func (*AccessReviewConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{124} + return fileDescriptor_9198ee693835762e, []int{125} } func (m *AccessReviewConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8299,7 +8345,7 @@ func (m *AccessRequestAllowedPromotion) Reset() { *m = AccessRequestAllo func (m *AccessRequestAllowedPromotion) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotion) ProtoMessage() {} func (*AccessRequestAllowedPromotion) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{125} + return fileDescriptor_9198ee693835762e, []int{126} } func (m *AccessRequestAllowedPromotion) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8342,7 +8388,7 @@ func (m *AccessRequestAllowedPromotions) Reset() { *m = AccessRequestAll func (m *AccessRequestAllowedPromotions) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotions) ProtoMessage() {} func (*AccessRequestAllowedPromotions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{126} + return fileDescriptor_9198ee693835762e, []int{127} } func (m *AccessRequestAllowedPromotions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8388,7 +8434,7 @@ func (m *ClaimMapping) Reset() { *m = ClaimMapping{} } func (m *ClaimMapping) String() string { return proto.CompactTextString(m) } func (*ClaimMapping) ProtoMessage() {} func (*ClaimMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{127} + return fileDescriptor_9198ee693835762e, []int{128} } func (m *ClaimMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8434,7 +8480,7 @@ func (m *TraitMapping) Reset() { *m = TraitMapping{} } func (m *TraitMapping) String() string { return proto.CompactTextString(m) } func (*TraitMapping) ProtoMessage() {} func (*TraitMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{128} + return fileDescriptor_9198ee693835762e, []int{129} } func (m *TraitMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8483,7 +8529,7 @@ func (m *Rule) Reset() { *m = Rule{} } func (m *Rule) String() string { return proto.CompactTextString(m) } func (*Rule) ProtoMessage() {} func (*Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{129} + return fileDescriptor_9198ee693835762e, []int{130} } func (m *Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8531,7 +8577,7 @@ func (m *ImpersonateConditions) Reset() { *m = ImpersonateConditions{} } func (m *ImpersonateConditions) String() string { return proto.CompactTextString(m) } func (*ImpersonateConditions) ProtoMessage() {} func (*ImpersonateConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{130} + return fileDescriptor_9198ee693835762e, []int{131} } func (m *ImpersonateConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8573,7 +8619,7 @@ func (m *BoolValue) Reset() { *m = BoolValue{} } func (m *BoolValue) String() string { return proto.CompactTextString(m) } func (*BoolValue) ProtoMessage() {} func (*BoolValue) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{131} + return fileDescriptor_9198ee693835762e, []int{132} } func (m *BoolValue) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8615,7 +8661,7 @@ func (m *UserFilter) Reset() { *m = UserFilter{} } func (m *UserFilter) String() string { return proto.CompactTextString(m) } func (*UserFilter) ProtoMessage() {} func (*UserFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{132} + return fileDescriptor_9198ee693835762e, []int{133} } func (m *UserFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8666,7 +8712,7 @@ type UserV2 struct { func (m *UserV2) Reset() { *m = UserV2{} } func (*UserV2) ProtoMessage() {} func (*UserV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{133} + return fileDescriptor_9198ee693835762e, []int{134} } func (m *UserV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8712,7 +8758,7 @@ func (m *UserStatusV2) Reset() { *m = UserStatusV2{} } func (m *UserStatusV2) String() string { return proto.CompactTextString(m) } func (*UserStatusV2) ProtoMessage() {} func (*UserStatusV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{134} + return fileDescriptor_9198ee693835762e, []int{135} } func (m *UserStatusV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8786,7 +8832,7 @@ func (m *UserSpecV2) Reset() { *m = UserSpecV2{} } func (m *UserSpecV2) String() string { return proto.CompactTextString(m) } func (*UserSpecV2) ProtoMessage() {} func (*UserSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{135} + return fileDescriptor_9198ee693835762e, []int{136} } func (m *UserSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8833,7 +8879,7 @@ type ExternalIdentity struct { func (m *ExternalIdentity) Reset() { *m = ExternalIdentity{} } func (*ExternalIdentity) ProtoMessage() {} func (*ExternalIdentity) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{136} + return fileDescriptor_9198ee693835762e, []int{137} } func (m *ExternalIdentity) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8881,7 +8927,7 @@ func (m *LoginStatus) Reset() { *m = LoginStatus{} } func (m *LoginStatus) String() string { return proto.CompactTextString(m) } func (*LoginStatus) ProtoMessage() {} func (*LoginStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{137} + return fileDescriptor_9198ee693835762e, []int{138} } func (m *LoginStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8926,7 +8972,7 @@ type CreatedBy struct { func (m *CreatedBy) Reset() { *m = CreatedBy{} } func (*CreatedBy) ProtoMessage() {} func (*CreatedBy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{138} + return fileDescriptor_9198ee693835762e, []int{139} } func (m *CreatedBy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8975,7 +9021,7 @@ func (m *LocalAuthSecrets) Reset() { *m = LocalAuthSecrets{} } func (m *LocalAuthSecrets) String() string { return proto.CompactTextString(m) } func (*LocalAuthSecrets) ProtoMessage() {} func (*LocalAuthSecrets) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{139} + return fileDescriptor_9198ee693835762e, []int{140} } func (m *LocalAuthSecrets) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9031,7 +9077,7 @@ func (m *MFADevice) Reset() { *m = MFADevice{} } func (m *MFADevice) String() string { return proto.CompactTextString(m) } func (*MFADevice) ProtoMessage() {} func (*MFADevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{140} + return fileDescriptor_9198ee693835762e, []int{141} } func (m *MFADevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9129,7 +9175,7 @@ func (m *TOTPDevice) Reset() { *m = TOTPDevice{} } func (m *TOTPDevice) String() string { return proto.CompactTextString(m) } func (*TOTPDevice) ProtoMessage() {} func (*TOTPDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{141} + return fileDescriptor_9198ee693835762e, []int{142} } func (m *TOTPDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9175,7 +9221,7 @@ func (m *U2FDevice) Reset() { *m = U2FDevice{} } func (m *U2FDevice) String() string { return proto.CompactTextString(m) } func (*U2FDevice) ProtoMessage() {} func (*U2FDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{142} + return fileDescriptor_9198ee693835762e, []int{143} } func (m *U2FDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9257,7 +9303,7 @@ func (m *WebauthnDevice) Reset() { *m = WebauthnDevice{} } func (m *WebauthnDevice) String() string { return proto.CompactTextString(m) } func (*WebauthnDevice) ProtoMessage() {} func (*WebauthnDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{143} + return fileDescriptor_9198ee693835762e, []int{144} } func (m *WebauthnDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9300,7 +9346,7 @@ func (m *WebauthnLocalAuth) Reset() { *m = WebauthnLocalAuth{} } func (m *WebauthnLocalAuth) String() string { return proto.CompactTextString(m) } func (*WebauthnLocalAuth) ProtoMessage() {} func (*WebauthnLocalAuth) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{144} + return fileDescriptor_9198ee693835762e, []int{145} } func (m *WebauthnLocalAuth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9346,7 +9392,7 @@ func (m *ConnectorRef) Reset() { *m = ConnectorRef{} } func (m *ConnectorRef) String() string { return proto.CompactTextString(m) } func (*ConnectorRef) ProtoMessage() {} func (*ConnectorRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{145} + return fileDescriptor_9198ee693835762e, []int{146} } func (m *ConnectorRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9388,7 +9434,7 @@ func (m *UserRef) Reset() { *m = UserRef{} } func (m *UserRef) String() string { return proto.CompactTextString(m) } func (*UserRef) ProtoMessage() {} func (*UserRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{146} + return fileDescriptor_9198ee693835762e, []int{147} } func (m *UserRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9438,7 +9484,7 @@ func (m *ReverseTunnelV2) Reset() { *m = ReverseTunnelV2{} } func (m *ReverseTunnelV2) String() string { return proto.CompactTextString(m) } func (*ReverseTunnelV2) ProtoMessage() {} func (*ReverseTunnelV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{147} + return fileDescriptor_9198ee693835762e, []int{148} } func (m *ReverseTunnelV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9485,7 +9531,7 @@ func (m *ReverseTunnelSpecV2) Reset() { *m = ReverseTunnelSpecV2{} } func (m *ReverseTunnelSpecV2) String() string { return proto.CompactTextString(m) } func (*ReverseTunnelSpecV2) ProtoMessage() {} func (*ReverseTunnelSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{148} + return fileDescriptor_9198ee693835762e, []int{149} } func (m *ReverseTunnelSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9534,7 +9580,7 @@ type TunnelConnectionV2 struct { func (m *TunnelConnectionV2) Reset() { *m = TunnelConnectionV2{} } func (*TunnelConnectionV2) ProtoMessage() {} func (*TunnelConnectionV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{149} + return fileDescriptor_9198ee693835762e, []int{150} } func (m *TunnelConnectionV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9582,7 +9628,7 @@ func (m *TunnelConnectionSpecV2) Reset() { *m = TunnelConnectionSpecV2{} func (m *TunnelConnectionSpecV2) String() string { return proto.CompactTextString(m) } func (*TunnelConnectionSpecV2) ProtoMessage() {} func (*TunnelConnectionSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{150} + return fileDescriptor_9198ee693835762e, []int{151} } func (m *TunnelConnectionSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9630,7 +9676,7 @@ func (m *SemaphoreFilter) Reset() { *m = SemaphoreFilter{} } func (m *SemaphoreFilter) String() string { return proto.CompactTextString(m) } func (*SemaphoreFilter) ProtoMessage() {} func (*SemaphoreFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{151} + return fileDescriptor_9198ee693835762e, []int{152} } func (m *SemaphoreFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9681,7 +9727,7 @@ func (m *AcquireSemaphoreRequest) Reset() { *m = AcquireSemaphoreRequest func (m *AcquireSemaphoreRequest) String() string { return proto.CompactTextString(m) } func (*AcquireSemaphoreRequest) ProtoMessage() {} func (*AcquireSemaphoreRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{152} + return fileDescriptor_9198ee693835762e, []int{153} } func (m *AcquireSemaphoreRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9729,7 +9775,7 @@ func (m *SemaphoreLease) Reset() { *m = SemaphoreLease{} } func (m *SemaphoreLease) String() string { return proto.CompactTextString(m) } func (*SemaphoreLease) ProtoMessage() {} func (*SemaphoreLease) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{153} + return fileDescriptor_9198ee693835762e, []int{154} } func (m *SemaphoreLease) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9775,7 +9821,7 @@ func (m *SemaphoreLeaseRef) Reset() { *m = SemaphoreLeaseRef{} } func (m *SemaphoreLeaseRef) String() string { return proto.CompactTextString(m) } func (*SemaphoreLeaseRef) ProtoMessage() {} func (*SemaphoreLeaseRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{154} + return fileDescriptor_9198ee693835762e, []int{155} } func (m *SemaphoreLeaseRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9824,7 +9870,7 @@ type SemaphoreV3 struct { func (m *SemaphoreV3) Reset() { *m = SemaphoreV3{} } func (*SemaphoreV3) ProtoMessage() {} func (*SemaphoreV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{155} + return fileDescriptor_9198ee693835762e, []int{156} } func (m *SemaphoreV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9866,7 +9912,7 @@ func (m *SemaphoreSpecV3) Reset() { *m = SemaphoreSpecV3{} } func (m *SemaphoreSpecV3) String() string { return proto.CompactTextString(m) } func (*SemaphoreSpecV3) ProtoMessage() {} func (*SemaphoreSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{156} + return fileDescriptor_9198ee693835762e, []int{157} } func (m *SemaphoreSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9915,7 +9961,7 @@ type WebSessionV2 struct { func (m *WebSessionV2) Reset() { *m = WebSessionV2{} } func (*WebSessionV2) ProtoMessage() {} func (*WebSessionV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{157} + return fileDescriptor_9198ee693835762e, []int{158} } func (m *WebSessionV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10000,7 +10046,7 @@ func (m *WebSessionSpecV2) Reset() { *m = WebSessionSpecV2{} } func (m *WebSessionSpecV2) String() string { return proto.CompactTextString(m) } func (*WebSessionSpecV2) ProtoMessage() {} func (*WebSessionSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{158} + return fileDescriptor_9198ee693835762e, []int{159} } func (m *WebSessionSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10045,7 +10091,7 @@ func (m *DeviceWebToken) Reset() { *m = DeviceWebToken{} } func (m *DeviceWebToken) String() string { return proto.CompactTextString(m) } func (*DeviceWebToken) ProtoMessage() {} func (*DeviceWebToken) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{159} + return fileDescriptor_9198ee693835762e, []int{160} } func (m *DeviceWebToken) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10087,7 +10133,7 @@ func (m *WebSessionFilter) Reset() { *m = WebSessionFilter{} } func (m *WebSessionFilter) String() string { return proto.CompactTextString(m) } func (*WebSessionFilter) ProtoMessage() {} func (*WebSessionFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{160} + return fileDescriptor_9198ee693835762e, []int{161} } func (m *WebSessionFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10158,7 +10204,7 @@ func (m *SAMLSessionData) Reset() { *m = SAMLSessionData{} } func (m *SAMLSessionData) String() string { return proto.CompactTextString(m) } func (*SAMLSessionData) ProtoMessage() {} func (*SAMLSessionData) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{161} + return fileDescriptor_9198ee693835762e, []int{162} } func (m *SAMLSessionData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10207,7 +10253,7 @@ func (m *SAMLAttribute) Reset() { *m = SAMLAttribute{} } func (m *SAMLAttribute) String() string { return proto.CompactTextString(m) } func (*SAMLAttribute) ProtoMessage() {} func (*SAMLAttribute) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{162} + return fileDescriptor_9198ee693835762e, []int{163} } func (m *SAMLAttribute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10254,7 +10300,7 @@ func (m *SAMLAttributeValue) Reset() { *m = SAMLAttributeValue{} } func (m *SAMLAttributeValue) String() string { return proto.CompactTextString(m) } func (*SAMLAttributeValue) ProtoMessage() {} func (*SAMLAttributeValue) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{163} + return fileDescriptor_9198ee693835762e, []int{164} } func (m *SAMLAttributeValue) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10305,7 +10351,7 @@ func (m *SAMLNameID) Reset() { *m = SAMLNameID{} } func (m *SAMLNameID) String() string { return proto.CompactTextString(m) } func (*SAMLNameID) ProtoMessage() {} func (*SAMLNameID) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{164} + return fileDescriptor_9198ee693835762e, []int{165} } func (m *SAMLNameID) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10354,7 +10400,7 @@ type RemoteClusterV3 struct { func (m *RemoteClusterV3) Reset() { *m = RemoteClusterV3{} } func (*RemoteClusterV3) ProtoMessage() {} func (*RemoteClusterV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{165} + return fileDescriptor_9198ee693835762e, []int{166} } func (m *RemoteClusterV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10398,7 +10444,7 @@ func (m *RemoteClusterStatusV3) Reset() { *m = RemoteClusterStatusV3{} } func (m *RemoteClusterStatusV3) String() string { return proto.CompactTextString(m) } func (*RemoteClusterStatusV3) ProtoMessage() {} func (*RemoteClusterStatusV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{166} + return fileDescriptor_9198ee693835762e, []int{167} } func (m *RemoteClusterStatusV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10448,7 +10494,7 @@ func (m *KubernetesCluster) Reset() { *m = KubernetesCluster{} } func (m *KubernetesCluster) String() string { return proto.CompactTextString(m) } func (*KubernetesCluster) ProtoMessage() {} func (*KubernetesCluster) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{167} + return fileDescriptor_9198ee693835762e, []int{168} } func (m *KubernetesCluster) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10497,7 +10543,7 @@ type KubernetesClusterV3 struct { func (m *KubernetesClusterV3) Reset() { *m = KubernetesClusterV3{} } func (*KubernetesClusterV3) ProtoMessage() {} func (*KubernetesClusterV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{168} + return fileDescriptor_9198ee693835762e, []int{169} } func (m *KubernetesClusterV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10548,7 +10594,7 @@ func (m *KubernetesClusterSpecV3) Reset() { *m = KubernetesClusterSpecV3 func (m *KubernetesClusterSpecV3) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterSpecV3) ProtoMessage() {} func (*KubernetesClusterSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{169} + return fileDescriptor_9198ee693835762e, []int{170} } func (m *KubernetesClusterSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10596,7 +10642,7 @@ func (m *KubeAzure) Reset() { *m = KubeAzure{} } func (m *KubeAzure) String() string { return proto.CompactTextString(m) } func (*KubeAzure) ProtoMessage() {} func (*KubeAzure) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{170} + return fileDescriptor_9198ee693835762e, []int{171} } func (m *KubeAzure) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10642,7 +10688,7 @@ func (m *KubeAWS) Reset() { *m = KubeAWS{} } func (m *KubeAWS) String() string { return proto.CompactTextString(m) } func (*KubeAWS) ProtoMessage() {} func (*KubeAWS) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{171} + return fileDescriptor_9198ee693835762e, []int{172} } func (m *KubeAWS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10688,7 +10734,7 @@ func (m *KubeGCP) Reset() { *m = KubeGCP{} } func (m *KubeGCP) String() string { return proto.CompactTextString(m) } func (*KubeGCP) ProtoMessage() {} func (*KubeGCP) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{172} + return fileDescriptor_9198ee693835762e, []int{173} } func (m *KubeGCP) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10730,7 +10776,7 @@ func (m *KubernetesClusterV3List) Reset() { *m = KubernetesClusterV3List func (m *KubernetesClusterV3List) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterV3List) ProtoMessage() {} func (*KubernetesClusterV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{173} + return fileDescriptor_9198ee693835762e, []int{174} } func (m *KubernetesClusterV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10779,7 +10825,7 @@ type KubernetesServerV3 struct { func (m *KubernetesServerV3) Reset() { *m = KubernetesServerV3{} } func (*KubernetesServerV3) ProtoMessage() {} func (*KubernetesServerV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{174} + return fileDescriptor_9198ee693835762e, []int{175} } func (m *KubernetesServerV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10831,7 +10877,7 @@ func (m *KubernetesServerSpecV3) Reset() { *m = KubernetesServerSpecV3{} func (m *KubernetesServerSpecV3) String() string { return proto.CompactTextString(m) } func (*KubernetesServerSpecV3) ProtoMessage() {} func (*KubernetesServerSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{175} + return fileDescriptor_9198ee693835762e, []int{176} } func (m *KubernetesServerSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10883,7 +10929,7 @@ type WebTokenV3 struct { func (m *WebTokenV3) Reset() { *m = WebTokenV3{} } func (*WebTokenV3) ProtoMessage() {} func (*WebTokenV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{176} + return fileDescriptor_9198ee693835762e, []int{177} } func (m *WebTokenV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10927,7 +10973,7 @@ func (m *WebTokenSpecV3) Reset() { *m = WebTokenSpecV3{} } func (m *WebTokenSpecV3) String() string { return proto.CompactTextString(m) } func (*WebTokenSpecV3) ProtoMessage() {} func (*WebTokenSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{177} + return fileDescriptor_9198ee693835762e, []int{178} } func (m *WebTokenSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10971,7 +11017,7 @@ func (m *GetWebSessionRequest) Reset() { *m = GetWebSessionRequest{} } func (m *GetWebSessionRequest) String() string { return proto.CompactTextString(m) } func (*GetWebSessionRequest) ProtoMessage() {} func (*GetWebSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{178} + return fileDescriptor_9198ee693835762e, []int{179} } func (m *GetWebSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11015,7 +11061,7 @@ func (m *DeleteWebSessionRequest) Reset() { *m = DeleteWebSessionRequest func (m *DeleteWebSessionRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWebSessionRequest) ProtoMessage() {} func (*DeleteWebSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{179} + return fileDescriptor_9198ee693835762e, []int{180} } func (m *DeleteWebSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11059,7 +11105,7 @@ func (m *GetWebTokenRequest) Reset() { *m = GetWebTokenRequest{} } func (m *GetWebTokenRequest) String() string { return proto.CompactTextString(m) } func (*GetWebTokenRequest) ProtoMessage() {} func (*GetWebTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{180} + return fileDescriptor_9198ee693835762e, []int{181} } func (m *GetWebTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11103,7 +11149,7 @@ func (m *DeleteWebTokenRequest) Reset() { *m = DeleteWebTokenRequest{} } func (m *DeleteWebTokenRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWebTokenRequest) ProtoMessage() {} func (*DeleteWebTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{181} + return fileDescriptor_9198ee693835762e, []int{182} } func (m *DeleteWebTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11145,7 +11191,7 @@ func (m *ResourceRequest) Reset() { *m = ResourceRequest{} } func (m *ResourceRequest) String() string { return proto.CompactTextString(m) } func (*ResourceRequest) ProtoMessage() {} func (*ResourceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{182} + return fileDescriptor_9198ee693835762e, []int{183} } func (m *ResourceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11189,7 +11235,7 @@ func (m *ResourceWithSecretsRequest) Reset() { *m = ResourceWithSecretsR func (m *ResourceWithSecretsRequest) String() string { return proto.CompactTextString(m) } func (*ResourceWithSecretsRequest) ProtoMessage() {} func (*ResourceWithSecretsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{183} + return fileDescriptor_9198ee693835762e, []int{184} } func (m *ResourceWithSecretsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11231,7 +11277,7 @@ func (m *ResourcesWithSecretsRequest) Reset() { *m = ResourcesWithSecret func (m *ResourcesWithSecretsRequest) String() string { return proto.CompactTextString(m) } func (*ResourcesWithSecretsRequest) ProtoMessage() {} func (*ResourcesWithSecretsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{184} + return fileDescriptor_9198ee693835762e, []int{185} } func (m *ResourcesWithSecretsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11275,7 +11321,7 @@ func (m *ResourceInNamespaceRequest) Reset() { *m = ResourceInNamespaceR func (m *ResourceInNamespaceRequest) String() string { return proto.CompactTextString(m) } func (*ResourceInNamespaceRequest) ProtoMessage() {} func (*ResourceInNamespaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{185} + return fileDescriptor_9198ee693835762e, []int{186} } func (m *ResourceInNamespaceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11317,7 +11363,7 @@ func (m *ResourcesInNamespaceRequest) Reset() { *m = ResourcesInNamespac func (m *ResourcesInNamespaceRequest) String() string { return proto.CompactTextString(m) } func (*ResourcesInNamespaceRequest) ProtoMessage() {} func (*ResourcesInNamespaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{186} + return fileDescriptor_9198ee693835762e, []int{187} } func (m *ResourcesInNamespaceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11368,7 +11414,7 @@ func (m *OIDCConnectorV3) Reset() { *m = OIDCConnectorV3{} } func (m *OIDCConnectorV3) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorV3) ProtoMessage() {} func (*OIDCConnectorV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{187} + return fileDescriptor_9198ee693835762e, []int{188} } func (m *OIDCConnectorV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11410,7 +11456,7 @@ func (m *OIDCConnectorV3List) Reset() { *m = OIDCConnectorV3List{} } func (m *OIDCConnectorV3List) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorV3List) ProtoMessage() {} func (*OIDCConnectorV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{188} + return fileDescriptor_9198ee693835762e, []int{189} } func (m *OIDCConnectorV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11496,7 +11542,7 @@ func (m *OIDCConnectorSpecV3) Reset() { *m = OIDCConnectorSpecV3{} } func (m *OIDCConnectorSpecV3) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorSpecV3) ProtoMessage() {} func (*OIDCConnectorSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{189} + return fileDescriptor_9198ee693835762e, []int{190} } func (m *OIDCConnectorSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11538,7 +11584,7 @@ func (m *MaxAge) Reset() { *m = MaxAge{} } func (m *MaxAge) String() string { return proto.CompactTextString(m) } func (*MaxAge) ProtoMessage() {} func (*MaxAge) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{190} + return fileDescriptor_9198ee693835762e, []int{191} } func (m *MaxAge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11583,7 +11629,7 @@ func (m *SSOClientRedirectSettings) Reset() { *m = SSOClientRedirectSett func (m *SSOClientRedirectSettings) String() string { return proto.CompactTextString(m) } func (*SSOClientRedirectSettings) ProtoMessage() {} func (*SSOClientRedirectSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{191} + return fileDescriptor_9198ee693835762e, []int{192} } func (m *SSOClientRedirectSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11672,7 +11718,7 @@ func (m *OIDCAuthRequest) Reset() { *m = OIDCAuthRequest{} } func (m *OIDCAuthRequest) String() string { return proto.CompactTextString(m) } func (*OIDCAuthRequest) ProtoMessage() {} func (*OIDCAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{192} + return fileDescriptor_9198ee693835762e, []int{193} } func (m *OIDCAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11723,7 +11769,7 @@ func (m *SAMLConnectorV2) Reset() { *m = SAMLConnectorV2{} } func (m *SAMLConnectorV2) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorV2) ProtoMessage() {} func (*SAMLConnectorV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{193} + return fileDescriptor_9198ee693835762e, []int{194} } func (m *SAMLConnectorV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11765,7 +11811,7 @@ func (m *SAMLConnectorV2List) Reset() { *m = SAMLConnectorV2List{} } func (m *SAMLConnectorV2List) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorV2List) ProtoMessage() {} func (*SAMLConnectorV2List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{194} + return fileDescriptor_9198ee693835762e, []int{195} } func (m *SAMLConnectorV2List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11842,7 +11888,7 @@ func (m *SAMLConnectorSpecV2) Reset() { *m = SAMLConnectorSpecV2{} } func (m *SAMLConnectorSpecV2) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorSpecV2) ProtoMessage() {} func (*SAMLConnectorSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{195} + return fileDescriptor_9198ee693835762e, []int{196} } func (m *SAMLConnectorSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11924,7 +11970,7 @@ func (m *SAMLAuthRequest) Reset() { *m = SAMLAuthRequest{} } func (m *SAMLAuthRequest) String() string { return proto.CompactTextString(m) } func (*SAMLAuthRequest) ProtoMessage() {} func (*SAMLAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{196} + return fileDescriptor_9198ee693835762e, []int{197} } func (m *SAMLAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11970,7 +12016,7 @@ func (m *AttributeMapping) Reset() { *m = AttributeMapping{} } func (m *AttributeMapping) String() string { return proto.CompactTextString(m) } func (*AttributeMapping) ProtoMessage() {} func (*AttributeMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{197} + return fileDescriptor_9198ee693835762e, []int{198} } func (m *AttributeMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12015,7 +12061,7 @@ func (m *AsymmetricKeyPair) Reset() { *m = AsymmetricKeyPair{} } func (m *AsymmetricKeyPair) String() string { return proto.CompactTextString(m) } func (*AsymmetricKeyPair) ProtoMessage() {} func (*AsymmetricKeyPair) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{198} + return fileDescriptor_9198ee693835762e, []int{199} } func (m *AsymmetricKeyPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12066,7 +12112,7 @@ func (m *GithubConnectorV3) Reset() { *m = GithubConnectorV3{} } func (m *GithubConnectorV3) String() string { return proto.CompactTextString(m) } func (*GithubConnectorV3) ProtoMessage() {} func (*GithubConnectorV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{199} + return fileDescriptor_9198ee693835762e, []int{200} } func (m *GithubConnectorV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12108,7 +12154,7 @@ func (m *GithubConnectorV3List) Reset() { *m = GithubConnectorV3List{} } func (m *GithubConnectorV3List) String() string { return proto.CompactTextString(m) } func (*GithubConnectorV3List) ProtoMessage() {} func (*GithubConnectorV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{200} + return fileDescriptor_9198ee693835762e, []int{201} } func (m *GithubConnectorV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12171,7 +12217,7 @@ func (m *GithubConnectorSpecV3) Reset() { *m = GithubConnectorSpecV3{} } func (m *GithubConnectorSpecV3) String() string { return proto.CompactTextString(m) } func (*GithubConnectorSpecV3) ProtoMessage() {} func (*GithubConnectorSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{201} + return fileDescriptor_9198ee693835762e, []int{202} } func (m *GithubConnectorSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12250,7 +12296,7 @@ func (m *GithubAuthRequest) Reset() { *m = GithubAuthRequest{} } func (m *GithubAuthRequest) String() string { return proto.CompactTextString(m) } func (*GithubAuthRequest) ProtoMessage() {} func (*GithubAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{202} + return fileDescriptor_9198ee693835762e, []int{203} } func (m *GithubAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12294,7 +12340,7 @@ func (m *SSOWarnings) Reset() { *m = SSOWarnings{} } func (m *SSOWarnings) String() string { return proto.CompactTextString(m) } func (*SSOWarnings) ProtoMessage() {} func (*SSOWarnings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{203} + return fileDescriptor_9198ee693835762e, []int{204} } func (m *SSOWarnings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12350,7 +12396,7 @@ func (m *CreateUserParams) Reset() { *m = CreateUserParams{} } func (m *CreateUserParams) String() string { return proto.CompactTextString(m) } func (*CreateUserParams) ProtoMessage() {} func (*CreateUserParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{204} + return fileDescriptor_9198ee693835762e, []int{205} } func (m *CreateUserParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12435,7 +12481,7 @@ func (m *SSODiagnosticInfo) Reset() { *m = SSODiagnosticInfo{} } func (m *SSODiagnosticInfo) String() string { return proto.CompactTextString(m) } func (*SSODiagnosticInfo) ProtoMessage() {} func (*SSODiagnosticInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{205} + return fileDescriptor_9198ee693835762e, []int{206} } func (m *SSODiagnosticInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12479,7 +12525,7 @@ func (m *GithubTokenInfo) Reset() { *m = GithubTokenInfo{} } func (m *GithubTokenInfo) String() string { return proto.CompactTextString(m) } func (*GithubTokenInfo) ProtoMessage() {} func (*GithubTokenInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{206} + return fileDescriptor_9198ee693835762e, []int{207} } func (m *GithubTokenInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12525,7 +12571,7 @@ func (m *GithubClaims) Reset() { *m = GithubClaims{} } func (m *GithubClaims) String() string { return proto.CompactTextString(m) } func (*GithubClaims) ProtoMessage() {} func (*GithubClaims) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{207} + return fileDescriptor_9198ee693835762e, []int{208} } func (m *GithubClaims) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12577,7 +12623,7 @@ func (m *TeamMapping) Reset() { *m = TeamMapping{} } func (m *TeamMapping) String() string { return proto.CompactTextString(m) } func (*TeamMapping) ProtoMessage() {} func (*TeamMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{208} + return fileDescriptor_9198ee693835762e, []int{209} } func (m *TeamMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12623,7 +12669,7 @@ func (m *TeamRolesMapping) Reset() { *m = TeamRolesMapping{} } func (m *TeamRolesMapping) String() string { return proto.CompactTextString(m) } func (*TeamRolesMapping) ProtoMessage() {} func (*TeamRolesMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{209} + return fileDescriptor_9198ee693835762e, []int{210} } func (m *TeamRolesMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12673,7 +12719,7 @@ type TrustedClusterV2 struct { func (m *TrustedClusterV2) Reset() { *m = TrustedClusterV2{} } func (*TrustedClusterV2) ProtoMessage() {} func (*TrustedClusterV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{210} + return fileDescriptor_9198ee693835762e, []int{211} } func (m *TrustedClusterV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12715,7 +12761,7 @@ func (m *TrustedClusterV2List) Reset() { *m = TrustedClusterV2List{} } func (m *TrustedClusterV2List) String() string { return proto.CompactTextString(m) } func (*TrustedClusterV2List) ProtoMessage() {} func (*TrustedClusterV2List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{211} + return fileDescriptor_9198ee693835762e, []int{212} } func (m *TrustedClusterV2List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12771,7 +12817,7 @@ func (m *TrustedClusterSpecV2) Reset() { *m = TrustedClusterSpecV2{} } func (m *TrustedClusterSpecV2) String() string { return proto.CompactTextString(m) } func (*TrustedClusterSpecV2) ProtoMessage() {} func (*TrustedClusterSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{212} + return fileDescriptor_9198ee693835762e, []int{213} } func (m *TrustedClusterSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12825,7 +12871,7 @@ func (m *LockV2) Reset() { *m = LockV2{} } func (m *LockV2) String() string { return proto.CompactTextString(m) } func (*LockV2) ProtoMessage() {} func (*LockV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{213} + return fileDescriptor_9198ee693835762e, []int{214} } func (m *LockV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12875,7 +12921,7 @@ func (m *LockSpecV2) Reset() { *m = LockSpecV2{} } func (m *LockSpecV2) String() string { return proto.CompactTextString(m) } func (*LockSpecV2) ProtoMessage() {} func (*LockSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{214} + return fileDescriptor_9198ee693835762e, []int{215} } func (m *LockSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12936,7 +12982,7 @@ type LockTarget struct { func (m *LockTarget) Reset() { *m = LockTarget{} } func (*LockTarget) ProtoMessage() {} func (*LockTarget) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{215} + return fileDescriptor_9198ee693835762e, []int{216} } func (m *LockTarget) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12980,7 +13026,7 @@ func (m *AddressCondition) Reset() { *m = AddressCondition{} } func (m *AddressCondition) String() string { return proto.CompactTextString(m) } func (*AddressCondition) ProtoMessage() {} func (*AddressCondition) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{216} + return fileDescriptor_9198ee693835762e, []int{217} } func (m *AddressCondition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13023,7 +13069,7 @@ func (m *NetworkRestrictionsSpecV4) Reset() { *m = NetworkRestrictionsSp func (m *NetworkRestrictionsSpecV4) String() string { return proto.CompactTextString(m) } func (*NetworkRestrictionsSpecV4) ProtoMessage() {} func (*NetworkRestrictionsSpecV4) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{217} + return fileDescriptor_9198ee693835762e, []int{218} } func (m *NetworkRestrictionsSpecV4) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13076,7 +13122,7 @@ func (m *NetworkRestrictionsV4) Reset() { *m = NetworkRestrictionsV4{} } func (m *NetworkRestrictionsV4) String() string { return proto.CompactTextString(m) } func (*NetworkRestrictionsV4) ProtoMessage() {} func (*NetworkRestrictionsV4) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{218} + return fileDescriptor_9198ee693835762e, []int{219} } func (m *NetworkRestrictionsV4) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13120,7 +13166,7 @@ func (m *WindowsDesktopServiceV3) Reset() { *m = WindowsDesktopServiceV3 func (m *WindowsDesktopServiceV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopServiceV3) ProtoMessage() {} func (*WindowsDesktopServiceV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{219} + return fileDescriptor_9198ee693835762e, []int{220} } func (m *WindowsDesktopServiceV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13168,7 +13214,7 @@ func (m *WindowsDesktopServiceSpecV3) Reset() { *m = WindowsDesktopServi func (m *WindowsDesktopServiceSpecV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopServiceSpecV3) ProtoMessage() {} func (*WindowsDesktopServiceSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{220} + return fileDescriptor_9198ee693835762e, []int{221} } func (m *WindowsDesktopServiceSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13212,7 +13258,7 @@ func (m *WindowsDesktopFilter) Reset() { *m = WindowsDesktopFilter{} } func (m *WindowsDesktopFilter) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopFilter) ProtoMessage() {} func (*WindowsDesktopFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{221} + return fileDescriptor_9198ee693835762e, []int{222} } func (m *WindowsDesktopFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13256,7 +13302,7 @@ func (m *WindowsDesktopV3) Reset() { *m = WindowsDesktopV3{} } func (m *WindowsDesktopV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopV3) ProtoMessage() {} func (*WindowsDesktopV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{222} + return fileDescriptor_9198ee693835762e, []int{223} } func (m *WindowsDesktopV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13309,7 +13355,7 @@ func (m *WindowsDesktopSpecV3) Reset() { *m = WindowsDesktopSpecV3{} } func (m *WindowsDesktopSpecV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopSpecV3) ProtoMessage() {} func (*WindowsDesktopSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{223} + return fileDescriptor_9198ee693835762e, []int{224} } func (m *WindowsDesktopSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13350,7 +13396,7 @@ func (m *Resolution) Reset() { *m = Resolution{} } func (m *Resolution) String() string { return proto.CompactTextString(m) } func (*Resolution) ProtoMessage() {} func (*Resolution) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{224} + return fileDescriptor_9198ee693835762e, []int{225} } func (m *Resolution) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13433,7 +13479,7 @@ func (m *RegisterUsingTokenRequest) Reset() { *m = RegisterUsingTokenReq func (m *RegisterUsingTokenRequest) String() string { return proto.CompactTextString(m) } func (*RegisterUsingTokenRequest) ProtoMessage() {} func (*RegisterUsingTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{225} + return fileDescriptor_9198ee693835762e, []int{226} } func (m *RegisterUsingTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13487,7 +13533,7 @@ func (m *RecoveryCodesV1) Reset() { *m = RecoveryCodesV1{} } func (m *RecoveryCodesV1) String() string { return proto.CompactTextString(m) } func (*RecoveryCodesV1) ProtoMessage() {} func (*RecoveryCodesV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{226} + return fileDescriptor_9198ee693835762e, []int{227} } func (m *RecoveryCodesV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13532,7 +13578,7 @@ func (m *RecoveryCodesSpecV1) Reset() { *m = RecoveryCodesSpecV1{} } func (m *RecoveryCodesSpecV1) String() string { return proto.CompactTextString(m) } func (*RecoveryCodesSpecV1) ProtoMessage() {} func (*RecoveryCodesSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{227} + return fileDescriptor_9198ee693835762e, []int{228} } func (m *RecoveryCodesSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13576,7 +13622,7 @@ func (m *RecoveryCode) Reset() { *m = RecoveryCode{} } func (m *RecoveryCode) String() string { return proto.CompactTextString(m) } func (*RecoveryCode) ProtoMessage() {} func (*RecoveryCode) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{228} + return fileDescriptor_9198ee693835762e, []int{229} } func (m *RecoveryCode) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13616,7 +13662,7 @@ func (m *NullableSessionState) Reset() { *m = NullableSessionState{} } func (m *NullableSessionState) String() string { return proto.CompactTextString(m) } func (*NullableSessionState) ProtoMessage() {} func (*NullableSessionState) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{229} + return fileDescriptor_9198ee693835762e, []int{230} } func (m *NullableSessionState) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13662,7 +13708,7 @@ func (m *SessionTrackerFilter) Reset() { *m = SessionTrackerFilter{} } func (m *SessionTrackerFilter) String() string { return proto.CompactTextString(m) } func (*SessionTrackerFilter) ProtoMessage() {} func (*SessionTrackerFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{230} + return fileDescriptor_9198ee693835762e, []int{231} } func (m *SessionTrackerFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13706,7 +13752,7 @@ func (m *SessionTrackerV1) Reset() { *m = SessionTrackerV1{} } func (m *SessionTrackerV1) String() string { return proto.CompactTextString(m) } func (*SessionTrackerV1) ProtoMessage() {} func (*SessionTrackerV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{231} + return fileDescriptor_9198ee693835762e, []int{232} } func (m *SessionTrackerV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13804,7 +13850,7 @@ func (m *SessionTrackerSpecV1) Reset() { *m = SessionTrackerSpecV1{} } func (m *SessionTrackerSpecV1) String() string { return proto.CompactTextString(m) } func (*SessionTrackerSpecV1) ProtoMessage() {} func (*SessionTrackerSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{232} + return fileDescriptor_9198ee693835762e, []int{233} } func (m *SessionTrackerSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13851,7 +13897,7 @@ func (m *SessionTrackerPolicySet) Reset() { *m = SessionTrackerPolicySet func (m *SessionTrackerPolicySet) String() string { return proto.CompactTextString(m) } func (*SessionTrackerPolicySet) ProtoMessage() {} func (*SessionTrackerPolicySet) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{233} + return fileDescriptor_9198ee693835762e, []int{234} } func (m *SessionTrackerPolicySet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13899,7 +13945,7 @@ func (m *Participant) Reset() { *m = Participant{} } func (m *Participant) String() string { return proto.CompactTextString(m) } func (*Participant) ProtoMessage() {} func (*Participant) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{234} + return fileDescriptor_9198ee693835762e, []int{235} } func (m *Participant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13943,7 +13989,7 @@ func (m *UIConfigV1) Reset() { *m = UIConfigV1{} } func (m *UIConfigV1) String() string { return proto.CompactTextString(m) } func (*UIConfigV1) ProtoMessage() {} func (*UIConfigV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{235} + return fileDescriptor_9198ee693835762e, []int{236} } func (m *UIConfigV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13989,7 +14035,7 @@ func (m *UIConfigSpecV1) Reset() { *m = UIConfigSpecV1{} } func (m *UIConfigSpecV1) String() string { return proto.CompactTextString(m) } func (*UIConfigSpecV1) ProtoMessage() {} func (*UIConfigSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{236} + return fileDescriptor_9198ee693835762e, []int{237} } func (m *UIConfigSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14040,7 +14086,7 @@ func (m *InstallerV1) Reset() { *m = InstallerV1{} } func (m *InstallerV1) String() string { return proto.CompactTextString(m) } func (*InstallerV1) ProtoMessage() {} func (*InstallerV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{237} + return fileDescriptor_9198ee693835762e, []int{238} } func (m *InstallerV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14082,7 +14128,7 @@ func (m *InstallerSpecV1) Reset() { *m = InstallerSpecV1{} } func (m *InstallerSpecV1) String() string { return proto.CompactTextString(m) } func (*InstallerSpecV1) ProtoMessage() {} func (*InstallerSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{238} + return fileDescriptor_9198ee693835762e, []int{239} } func (m *InstallerSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14124,7 +14170,7 @@ func (m *InstallerV1List) Reset() { *m = InstallerV1List{} } func (m *InstallerV1List) String() string { return proto.CompactTextString(m) } func (*InstallerV1List) ProtoMessage() {} func (*InstallerV1List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{239} + return fileDescriptor_9198ee693835762e, []int{240} } func (m *InstallerV1List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14168,7 +14214,7 @@ func (m *SortBy) Reset() { *m = SortBy{} } func (m *SortBy) String() string { return proto.CompactTextString(m) } func (*SortBy) ProtoMessage() {} func (*SortBy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{240} + return fileDescriptor_9198ee693835762e, []int{241} } func (m *SortBy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14214,7 +14260,7 @@ func (m *ConnectionDiagnosticV1) Reset() { *m = ConnectionDiagnosticV1{} func (m *ConnectionDiagnosticV1) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticV1) ProtoMessage() {} func (*ConnectionDiagnosticV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{241} + return fileDescriptor_9198ee693835762e, []int{242} } func (m *ConnectionDiagnosticV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14264,7 +14310,7 @@ func (m *ConnectionDiagnosticSpecV1) Reset() { *m = ConnectionDiagnostic func (m *ConnectionDiagnosticSpecV1) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticSpecV1) ProtoMessage() {} func (*ConnectionDiagnosticSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{242} + return fileDescriptor_9198ee693835762e, []int{243} } func (m *ConnectionDiagnosticSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14310,7 +14356,7 @@ func (m *ConnectionDiagnosticTrace) Reset() { *m = ConnectionDiagnosticT func (m *ConnectionDiagnosticTrace) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticTrace) ProtoMessage() {} func (*ConnectionDiagnosticTrace) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{243} + return fileDescriptor_9198ee693835762e, []int{244} } func (m *ConnectionDiagnosticTrace) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14353,7 +14399,7 @@ func (m *DatabaseServiceV1) Reset() { *m = DatabaseServiceV1{} } func (m *DatabaseServiceV1) String() string { return proto.CompactTextString(m) } func (*DatabaseServiceV1) ProtoMessage() {} func (*DatabaseServiceV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{244} + return fileDescriptor_9198ee693835762e, []int{245} } func (m *DatabaseServiceV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14397,7 +14443,7 @@ func (m *DatabaseServiceSpecV1) Reset() { *m = DatabaseServiceSpecV1{} } func (m *DatabaseServiceSpecV1) String() string { return proto.CompactTextString(m) } func (*DatabaseServiceSpecV1) ProtoMessage() {} func (*DatabaseServiceSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{245} + return fileDescriptor_9198ee693835762e, []int{246} } func (m *DatabaseServiceSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14439,7 +14485,7 @@ func (m *DatabaseResourceMatcher) Reset() { *m = DatabaseResourceMatcher func (m *DatabaseResourceMatcher) String() string { return proto.CompactTextString(m) } func (*DatabaseResourceMatcher) ProtoMessage() {} func (*DatabaseResourceMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{246} + return fileDescriptor_9198ee693835762e, []int{247} } func (m *DatabaseResourceMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14483,7 +14529,7 @@ func (m *ResourceMatcherAWS) Reset() { *m = ResourceMatcherAWS{} } func (m *ResourceMatcherAWS) String() string { return proto.CompactTextString(m) } func (*ResourceMatcherAWS) ProtoMessage() {} func (*ResourceMatcherAWS) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{247} + return fileDescriptor_9198ee693835762e, []int{248} } func (m *ResourceMatcherAWS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14525,7 +14571,7 @@ func (m *ClusterAlert) Reset() { *m = ClusterAlert{} } func (m *ClusterAlert) String() string { return proto.CompactTextString(m) } func (*ClusterAlert) ProtoMessage() {} func (*ClusterAlert) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{248} + return fileDescriptor_9198ee693835762e, []int{249} } func (m *ClusterAlert) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14571,7 +14617,7 @@ func (m *ClusterAlertSpec) Reset() { *m = ClusterAlertSpec{} } func (m *ClusterAlertSpec) String() string { return proto.CompactTextString(m) } func (*ClusterAlertSpec) ProtoMessage() {} func (*ClusterAlertSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{249} + return fileDescriptor_9198ee693835762e, []int{250} } func (m *ClusterAlertSpec) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14624,7 +14670,7 @@ func (m *GetClusterAlertsRequest) Reset() { *m = GetClusterAlertsRequest func (m *GetClusterAlertsRequest) String() string { return proto.CompactTextString(m) } func (*GetClusterAlertsRequest) ProtoMessage() {} func (*GetClusterAlertsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{250} + return fileDescriptor_9198ee693835762e, []int{251} } func (m *GetClusterAlertsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14674,7 +14720,7 @@ func (m *AlertAcknowledgement) Reset() { *m = AlertAcknowledgement{} } func (m *AlertAcknowledgement) String() string { return proto.CompactTextString(m) } func (*AlertAcknowledgement) ProtoMessage() {} func (*AlertAcknowledgement) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{251} + return fileDescriptor_9198ee693835762e, []int{252} } func (m *AlertAcknowledgement) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14726,7 +14772,7 @@ func (m *Release) Reset() { *m = Release{} } func (m *Release) String() string { return proto.CompactTextString(m) } func (*Release) ProtoMessage() {} func (*Release) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{252} + return fileDescriptor_9198ee693835762e, []int{253} } func (m *Release) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14784,7 +14830,7 @@ func (m *Asset) Reset() { *m = Asset{} } func (m *Asset) String() string { return proto.CompactTextString(m) } func (*Asset) ProtoMessage() {} func (*Asset) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{253} + return fileDescriptor_9198ee693835762e, []int{254} } func (m *Asset) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14837,7 +14883,7 @@ func (m *PluginV1) Reset() { *m = PluginV1{} } func (m *PluginV1) String() string { return proto.CompactTextString(m) } func (*PluginV1) ProtoMessage() {} func (*PluginV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{254} + return fileDescriptor_9198ee693835762e, []int{255} } func (m *PluginV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14900,7 +14946,7 @@ func (m *PluginSpecV1) Reset() { *m = PluginSpecV1{} } func (m *PluginSpecV1) String() string { return proto.CompactTextString(m) } func (*PluginSpecV1) ProtoMessage() {} func (*PluginSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{255} + return fileDescriptor_9198ee693835762e, []int{256} } func (m *PluginSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15118,7 +15164,7 @@ func (m *PluginSlackAccessSettings) Reset() { *m = PluginSlackAccessSett func (m *PluginSlackAccessSettings) String() string { return proto.CompactTextString(m) } func (*PluginSlackAccessSettings) ProtoMessage() {} func (*PluginSlackAccessSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{256} + return fileDescriptor_9198ee693835762e, []int{257} } func (m *PluginSlackAccessSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15159,7 +15205,7 @@ func (m *PluginGitlabSettings) Reset() { *m = PluginGitlabSettings{} } func (m *PluginGitlabSettings) String() string { return proto.CompactTextString(m) } func (*PluginGitlabSettings) ProtoMessage() {} func (*PluginGitlabSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{257} + return fileDescriptor_9198ee693835762e, []int{258} } func (m *PluginGitlabSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15206,7 +15252,7 @@ func (m *PluginOpsgenieAccessSettings) Reset() { *m = PluginOpsgenieAcce func (m *PluginOpsgenieAccessSettings) String() string { return proto.CompactTextString(m) } func (*PluginOpsgenieAccessSettings) ProtoMessage() {} func (*PluginOpsgenieAccessSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{258} + return fileDescriptor_9198ee693835762e, []int{259} } func (m *PluginOpsgenieAccessSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15254,7 +15300,7 @@ func (m *PluginServiceNowSettings) Reset() { *m = PluginServiceNowSettin func (m *PluginServiceNowSettings) String() string { return proto.CompactTextString(m) } func (*PluginServiceNowSettings) ProtoMessage() {} func (*PluginServiceNowSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{259} + return fileDescriptor_9198ee693835762e, []int{260} } func (m *PluginServiceNowSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15300,7 +15346,7 @@ func (m *PluginPagerDutySettings) Reset() { *m = PluginPagerDutySettings func (m *PluginPagerDutySettings) String() string { return proto.CompactTextString(m) } func (*PluginPagerDutySettings) ProtoMessage() {} func (*PluginPagerDutySettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{260} + return fileDescriptor_9198ee693835762e, []int{261} } func (m *PluginPagerDutySettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15346,7 +15392,7 @@ func (m *PluginJiraSettings) Reset() { *m = PluginJiraSettings{} } func (m *PluginJiraSettings) String() string { return proto.CompactTextString(m) } func (*PluginJiraSettings) ProtoMessage() {} func (*PluginJiraSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{261} + return fileDescriptor_9198ee693835762e, []int{262} } func (m *PluginJiraSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15386,7 +15432,7 @@ func (m *PluginOpenAISettings) Reset() { *m = PluginOpenAISettings{} } func (m *PluginOpenAISettings) String() string { return proto.CompactTextString(m) } func (*PluginOpenAISettings) ProtoMessage() {} func (*PluginOpenAISettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{262} + return fileDescriptor_9198ee693835762e, []int{263} } func (m *PluginOpenAISettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15437,7 +15483,7 @@ func (m *PluginMattermostSettings) Reset() { *m = PluginMattermostSettin func (m *PluginMattermostSettings) String() string { return proto.CompactTextString(m) } func (*PluginMattermostSettings) ProtoMessage() {} func (*PluginMattermostSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{263} + return fileDescriptor_9198ee693835762e, []int{264} } func (m *PluginMattermostSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15479,7 +15525,7 @@ func (m *PluginJamfSettings) Reset() { *m = PluginJamfSettings{} } func (m *PluginJamfSettings) String() string { return proto.CompactTextString(m) } func (*PluginJamfSettings) ProtoMessage() {} func (*PluginJamfSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{264} + return fileDescriptor_9198ee693835762e, []int{265} } func (m *PluginJamfSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15529,7 +15575,7 @@ func (m *PluginOktaSettings) Reset() { *m = PluginOktaSettings{} } func (m *PluginOktaSettings) String() string { return proto.CompactTextString(m) } func (*PluginOktaSettings) ProtoMessage() {} func (*PluginOktaSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{265} + return fileDescriptor_9198ee693835762e, []int{266} } func (m *PluginOktaSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15605,7 +15651,7 @@ func (m *PluginOktaSyncSettings) Reset() { *m = PluginOktaSyncSettings{} func (m *PluginOktaSyncSettings) String() string { return proto.CompactTextString(m) } func (*PluginOktaSyncSettings) ProtoMessage() {} func (*PluginOktaSyncSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{266} + return fileDescriptor_9198ee693835762e, []int{267} } func (m *PluginOktaSyncSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15646,7 +15692,7 @@ func (m *DiscordChannels) Reset() { *m = DiscordChannels{} } func (m *DiscordChannels) String() string { return proto.CompactTextString(m) } func (*DiscordChannels) ProtoMessage() {} func (*DiscordChannels) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{267} + return fileDescriptor_9198ee693835762e, []int{268} } func (m *DiscordChannels) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15690,7 +15736,7 @@ func (m *PluginDiscordSettings) Reset() { *m = PluginDiscordSettings{} } func (m *PluginDiscordSettings) String() string { return proto.CompactTextString(m) } func (*PluginDiscordSettings) ProtoMessage() {} func (*PluginDiscordSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{268} + return fileDescriptor_9198ee693835762e, []int{269} } func (m *PluginDiscordSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15735,7 +15781,7 @@ func (m *PluginEntraIDSettings) Reset() { *m = PluginEntraIDSettings{} } func (m *PluginEntraIDSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDSettings) ProtoMessage() {} func (*PluginEntraIDSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{269} + return fileDescriptor_9198ee693835762e, []int{270} } func (m *PluginEntraIDSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15779,7 +15825,7 @@ func (m *PluginEntraIDSyncSettings) Reset() { *m = PluginEntraIDSyncSett func (m *PluginEntraIDSyncSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDSyncSettings) ProtoMessage() {} func (*PluginEntraIDSyncSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{270} + return fileDescriptor_9198ee693835762e, []int{271} } func (m *PluginEntraIDSyncSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15824,7 +15870,7 @@ func (m *PluginEntraIDAccessGraphSettings) Reset() { *m = PluginEntraIDA func (m *PluginEntraIDAccessGraphSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDAccessGraphSettings) ProtoMessage() {} func (*PluginEntraIDAccessGraphSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{271} + return fileDescriptor_9198ee693835762e, []int{272} } func (m *PluginEntraIDAccessGraphSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15870,7 +15916,7 @@ func (m *PluginEntraIDAppSSOSettings) Reset() { *m = PluginEntraIDAppSSO func (m *PluginEntraIDAppSSOSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDAppSSOSettings) ProtoMessage() {} func (*PluginEntraIDAppSSOSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{272} + return fileDescriptor_9198ee693835762e, []int{273} } func (m *PluginEntraIDAppSSOSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15916,7 +15962,7 @@ func (m *PluginSCIMSettings) Reset() { *m = PluginSCIMSettings{} } func (m *PluginSCIMSettings) String() string { return proto.CompactTextString(m) } func (*PluginSCIMSettings) ProtoMessage() {} func (*PluginSCIMSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{273} + return fileDescriptor_9198ee693835762e, []int{274} } func (m *PluginSCIMSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15961,7 +16007,7 @@ func (m *PluginBootstrapCredentialsV1) Reset() { *m = PluginBootstrapCre func (m *PluginBootstrapCredentialsV1) String() string { return proto.CompactTextString(m) } func (*PluginBootstrapCredentialsV1) ProtoMessage() {} func (*PluginBootstrapCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{274} + return fileDescriptor_9198ee693835762e, []int{275} } func (m *PluginBootstrapCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16061,7 +16107,7 @@ func (m *PluginIdSecretCredential) Reset() { *m = PluginIdSecretCredenti func (m *PluginIdSecretCredential) String() string { return proto.CompactTextString(m) } func (*PluginIdSecretCredential) ProtoMessage() {} func (*PluginIdSecretCredential) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{275} + return fileDescriptor_9198ee693835762e, []int{276} } func (m *PluginIdSecretCredential) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16104,7 +16150,7 @@ func (m *PluginOAuth2AuthorizationCodeCredentials) Reset() { func (m *PluginOAuth2AuthorizationCodeCredentials) String() string { return proto.CompactTextString(m) } func (*PluginOAuth2AuthorizationCodeCredentials) ProtoMessage() {} func (*PluginOAuth2AuthorizationCodeCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{276} + return fileDescriptor_9198ee693835762e, []int{277} } func (m *PluginOAuth2AuthorizationCodeCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16162,7 +16208,7 @@ func (m *PluginStatusV1) Reset() { *m = PluginStatusV1{} } func (m *PluginStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginStatusV1) ProtoMessage() {} func (*PluginStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{277} + return fileDescriptor_9198ee693835762e, []int{278} } func (m *PluginStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16265,7 +16311,7 @@ func (m *PluginGitlabStatusV1) Reset() { *m = PluginGitlabStatusV1{} } func (m *PluginGitlabStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginGitlabStatusV1) ProtoMessage() {} func (*PluginGitlabStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{278} + return fileDescriptor_9198ee693835762e, []int{279} } func (m *PluginGitlabStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16309,7 +16355,7 @@ func (m *PluginEntraIDStatusV1) Reset() { *m = PluginEntraIDStatusV1{} } func (m *PluginEntraIDStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDStatusV1) ProtoMessage() {} func (*PluginEntraIDStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{279} + return fileDescriptor_9198ee693835762e, []int{280} } func (m *PluginEntraIDStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16363,7 +16409,7 @@ func (m *PluginOktaStatusV1) Reset() { *m = PluginOktaStatusV1{} } func (m *PluginOktaStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusV1) ProtoMessage() {} func (*PluginOktaStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{280} + return fileDescriptor_9198ee693835762e, []int{281} } func (m *PluginOktaStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16411,7 +16457,7 @@ func (m *PluginOktaStatusDetailsSSO) Reset() { *m = PluginOktaStatusDeta func (m *PluginOktaStatusDetailsSSO) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsSSO) ProtoMessage() {} func (*PluginOktaStatusDetailsSSO) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{281} + return fileDescriptor_9198ee693835762e, []int{282} } func (m *PluginOktaStatusDetailsSSO) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16468,7 +16514,7 @@ func (m *PluginOktaStatusDetailsAppGroupSync) Reset() { *m = PluginOktaS func (m *PluginOktaStatusDetailsAppGroupSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsAppGroupSync) ProtoMessage() {} func (*PluginOktaStatusDetailsAppGroupSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{282} + return fileDescriptor_9198ee693835762e, []int{283} } func (m *PluginOktaStatusDetailsAppGroupSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16522,7 +16568,7 @@ func (m *PluginOktaStatusDetailsUsersSync) Reset() { *m = PluginOktaStat func (m *PluginOktaStatusDetailsUsersSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsUsersSync) ProtoMessage() {} func (*PluginOktaStatusDetailsUsersSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{283} + return fileDescriptor_9198ee693835762e, []int{284} } func (m *PluginOktaStatusDetailsUsersSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16565,7 +16611,7 @@ func (m *PluginOktaStatusDetailsSCIM) Reset() { *m = PluginOktaStatusDet func (m *PluginOktaStatusDetailsSCIM) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsSCIM) ProtoMessage() {} func (*PluginOktaStatusDetailsSCIM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{284} + return fileDescriptor_9198ee693835762e, []int{285} } func (m *PluginOktaStatusDetailsSCIM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16627,7 +16673,7 @@ func (m *PluginOktaStatusDetailsAccessListsSync) Reset() { func (m *PluginOktaStatusDetailsAccessListsSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsAccessListsSync) ProtoMessage() {} func (*PluginOktaStatusDetailsAccessListsSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{285} + return fileDescriptor_9198ee693835762e, []int{286} } func (m *PluginOktaStatusDetailsAccessListsSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16675,7 +16721,7 @@ func (m *PluginCredentialsV1) Reset() { *m = PluginCredentialsV1{} } func (m *PluginCredentialsV1) String() string { return proto.CompactTextString(m) } func (*PluginCredentialsV1) ProtoMessage() {} func (*PluginCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{286} + return fileDescriptor_9198ee693835762e, []int{287} } func (m *PluginCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16786,7 +16832,7 @@ func (m *PluginOAuth2AccessTokenCredentials) Reset() { *m = PluginOAuth2 func (m *PluginOAuth2AccessTokenCredentials) String() string { return proto.CompactTextString(m) } func (*PluginOAuth2AccessTokenCredentials) ProtoMessage() {} func (*PluginOAuth2AccessTokenCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{287} + return fileDescriptor_9198ee693835762e, []int{288} } func (m *PluginOAuth2AccessTokenCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16827,7 +16873,7 @@ func (m *PluginBearerTokenCredentials) Reset() { *m = PluginBearerTokenC func (m *PluginBearerTokenCredentials) String() string { return proto.CompactTextString(m) } func (*PluginBearerTokenCredentials) ProtoMessage() {} func (*PluginBearerTokenCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{288} + return fileDescriptor_9198ee693835762e, []int{289} } func (m *PluginBearerTokenCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16869,7 +16915,7 @@ func (m *PluginStaticCredentialsRef) Reset() { *m = PluginStaticCredenti func (m *PluginStaticCredentialsRef) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsRef) ProtoMessage() {} func (*PluginStaticCredentialsRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{289} + return fileDescriptor_9198ee693835762e, []int{290} } func (m *PluginStaticCredentialsRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16911,7 +16957,7 @@ func (m *PluginListV1) Reset() { *m = PluginListV1{} } func (m *PluginListV1) String() string { return proto.CompactTextString(m) } func (*PluginListV1) ProtoMessage() {} func (*PluginListV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{290} + return fileDescriptor_9198ee693835762e, []int{291} } func (m *PluginListV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16954,7 +17000,7 @@ type PluginStaticCredentialsV1 struct { func (m *PluginStaticCredentialsV1) Reset() { *m = PluginStaticCredentialsV1{} } func (*PluginStaticCredentialsV1) ProtoMessage() {} func (*PluginStaticCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{291} + return fileDescriptor_9198ee693835762e, []int{292} } func (m *PluginStaticCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17000,7 +17046,7 @@ func (m *PluginStaticCredentialsSpecV1) Reset() { *m = PluginStaticCrede func (m *PluginStaticCredentialsSpecV1) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsSpecV1) ProtoMessage() {} func (*PluginStaticCredentialsSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{292} + return fileDescriptor_9198ee693835762e, []int{293} } func (m *PluginStaticCredentialsSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17102,7 +17148,7 @@ func (m *PluginStaticCredentialsBasicAuth) Reset() { *m = PluginStaticCr func (m *PluginStaticCredentialsBasicAuth) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsBasicAuth) ProtoMessage() {} func (*PluginStaticCredentialsBasicAuth) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{293} + return fileDescriptor_9198ee693835762e, []int{294} } func (m *PluginStaticCredentialsBasicAuth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17148,7 +17194,7 @@ func (m *PluginStaticCredentialsOAuthClientSecret) Reset() { func (m *PluginStaticCredentialsOAuthClientSecret) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsOAuthClientSecret) ProtoMessage() {} func (*PluginStaticCredentialsOAuthClientSecret) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{294} + return fileDescriptor_9198ee693835762e, []int{295} } func (m *PluginStaticCredentialsOAuthClientSecret) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17191,7 +17237,7 @@ type SAMLIdPServiceProviderV1 struct { func (m *SAMLIdPServiceProviderV1) Reset() { *m = SAMLIdPServiceProviderV1{} } func (*SAMLIdPServiceProviderV1) ProtoMessage() {} func (*SAMLIdPServiceProviderV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{295} + return fileDescriptor_9198ee693835762e, []int{296} } func (m *SAMLIdPServiceProviderV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17250,7 +17296,7 @@ func (m *SAMLIdPServiceProviderSpecV1) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderSpecV1) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderSpecV1) ProtoMessage() {} func (*SAMLIdPServiceProviderSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{296} + return fileDescriptor_9198ee693835762e, []int{297} } func (m *SAMLIdPServiceProviderSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17297,7 +17343,7 @@ func (m *SAMLAttributeMapping) Reset() { *m = SAMLAttributeMapping{} } func (m *SAMLAttributeMapping) String() string { return proto.CompactTextString(m) } func (*SAMLAttributeMapping) ProtoMessage() {} func (*SAMLAttributeMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{297} + return fileDescriptor_9198ee693835762e, []int{298} } func (m *SAMLAttributeMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17339,7 +17385,7 @@ func (m *IdPOptions) Reset() { *m = IdPOptions{} } func (m *IdPOptions) String() string { return proto.CompactTextString(m) } func (*IdPOptions) ProtoMessage() {} func (*IdPOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{298} + return fileDescriptor_9198ee693835762e, []int{299} } func (m *IdPOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17381,7 +17427,7 @@ func (m *IdPSAMLOptions) Reset() { *m = IdPSAMLOptions{} } func (m *IdPSAMLOptions) String() string { return proto.CompactTextString(m) } func (*IdPSAMLOptions) ProtoMessage() {} func (*IdPSAMLOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{299} + return fileDescriptor_9198ee693835762e, []int{300} } func (m *IdPSAMLOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17431,7 +17477,7 @@ func (m *KubernetesResourceV1) Reset() { *m = KubernetesResourceV1{} } func (m *KubernetesResourceV1) String() string { return proto.CompactTextString(m) } func (*KubernetesResourceV1) ProtoMessage() {} func (*KubernetesResourceV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{300} + return fileDescriptor_9198ee693835762e, []int{301} } func (m *KubernetesResourceV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17473,7 +17519,7 @@ func (m *KubernetesResourceSpecV1) Reset() { *m = KubernetesResourceSpec func (m *KubernetesResourceSpecV1) String() string { return proto.CompactTextString(m) } func (*KubernetesResourceSpecV1) ProtoMessage() {} func (*KubernetesResourceSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{301} + return fileDescriptor_9198ee693835762e, []int{302} } func (m *KubernetesResourceSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17519,7 +17565,7 @@ func (m *ClusterMaintenanceConfigV1) Reset() { *m = ClusterMaintenanceCo func (m *ClusterMaintenanceConfigV1) String() string { return proto.CompactTextString(m) } func (*ClusterMaintenanceConfigV1) ProtoMessage() {} func (*ClusterMaintenanceConfigV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{302} + return fileDescriptor_9198ee693835762e, []int{303} } func (m *ClusterMaintenanceConfigV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17561,7 +17607,7 @@ func (m *ClusterMaintenanceConfigSpecV1) Reset() { *m = ClusterMaintenan func (m *ClusterMaintenanceConfigSpecV1) String() string { return proto.CompactTextString(m) } func (*ClusterMaintenanceConfigSpecV1) ProtoMessage() {} func (*ClusterMaintenanceConfigSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{303} + return fileDescriptor_9198ee693835762e, []int{304} } func (m *ClusterMaintenanceConfigSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17607,7 +17653,7 @@ func (m *AgentUpgradeWindow) Reset() { *m = AgentUpgradeWindow{} } func (m *AgentUpgradeWindow) String() string { return proto.CompactTextString(m) } func (*AgentUpgradeWindow) ProtoMessage() {} func (*AgentUpgradeWindow) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{304} + return fileDescriptor_9198ee693835762e, []int{305} } func (m *AgentUpgradeWindow) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17654,7 +17700,7 @@ func (m *ScheduledAgentUpgradeWindow) Reset() { *m = ScheduledAgentUpgra func (m *ScheduledAgentUpgradeWindow) String() string { return proto.CompactTextString(m) } func (*ScheduledAgentUpgradeWindow) ProtoMessage() {} func (*ScheduledAgentUpgradeWindow) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{305} + return fileDescriptor_9198ee693835762e, []int{306} } func (m *ScheduledAgentUpgradeWindow) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17697,7 +17743,7 @@ func (m *AgentUpgradeSchedule) Reset() { *m = AgentUpgradeSchedule{} } func (m *AgentUpgradeSchedule) String() string { return proto.CompactTextString(m) } func (*AgentUpgradeSchedule) ProtoMessage() {} func (*AgentUpgradeSchedule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{306} + return fileDescriptor_9198ee693835762e, []int{307} } func (m *AgentUpgradeSchedule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17740,7 +17786,7 @@ type UserGroupV1 struct { func (m *UserGroupV1) Reset() { *m = UserGroupV1{} } func (*UserGroupV1) ProtoMessage() {} func (*UserGroupV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{307} + return fileDescriptor_9198ee693835762e, []int{308} } func (m *UserGroupV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17782,7 +17828,7 @@ func (m *UserGroupSpecV1) Reset() { *m = UserGroupSpecV1{} } func (m *UserGroupSpecV1) String() string { return proto.CompactTextString(m) } func (*UserGroupSpecV1) ProtoMessage() {} func (*UserGroupSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{308} + return fileDescriptor_9198ee693835762e, []int{309} } func (m *UserGroupSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17826,7 +17872,7 @@ func (m *OktaImportRuleSpecV1) Reset() { *m = OktaImportRuleSpecV1{} } func (m *OktaImportRuleSpecV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleSpecV1) ProtoMessage() {} func (*OktaImportRuleSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{309} + return fileDescriptor_9198ee693835762e, []int{310} } func (m *OktaImportRuleSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17870,7 +17916,7 @@ func (m *OktaImportRuleMappingV1) Reset() { *m = OktaImportRuleMappingV1 func (m *OktaImportRuleMappingV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleMappingV1) ProtoMessage() {} func (*OktaImportRuleMappingV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{310} + return fileDescriptor_9198ee693835762e, []int{311} } func (m *OktaImportRuleMappingV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17913,7 +17959,7 @@ type OktaImportRuleV1 struct { func (m *OktaImportRuleV1) Reset() { *m = OktaImportRuleV1{} } func (*OktaImportRuleV1) ProtoMessage() {} func (*OktaImportRuleV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{311} + return fileDescriptor_9198ee693835762e, []int{312} } func (m *OktaImportRuleV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17961,7 +18007,7 @@ func (m *OktaImportRuleMatchV1) Reset() { *m = OktaImportRuleMatchV1{} } func (m *OktaImportRuleMatchV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleMatchV1) ProtoMessage() {} func (*OktaImportRuleMatchV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{312} + return fileDescriptor_9198ee693835762e, []int{313} } func (m *OktaImportRuleMatchV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18004,7 +18050,7 @@ type OktaAssignmentV1 struct { func (m *OktaAssignmentV1) Reset() { *m = OktaAssignmentV1{} } func (*OktaAssignmentV1) ProtoMessage() {} func (*OktaAssignmentV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{313} + return fileDescriptor_9198ee693835762e, []int{314} } func (m *OktaAssignmentV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18058,7 +18104,7 @@ func (m *OktaAssignmentSpecV1) Reset() { *m = OktaAssignmentSpecV1{} } func (m *OktaAssignmentSpecV1) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentSpecV1) ProtoMessage() {} func (*OktaAssignmentSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{314} + return fileDescriptor_9198ee693835762e, []int{315} } func (m *OktaAssignmentSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18102,7 +18148,7 @@ func (m *OktaAssignmentTargetV1) Reset() { *m = OktaAssignmentTargetV1{} func (m *OktaAssignmentTargetV1) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentTargetV1) ProtoMessage() {} func (*OktaAssignmentTargetV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{315} + return fileDescriptor_9198ee693835762e, []int{316} } func (m *OktaAssignmentTargetV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18147,7 +18193,7 @@ type IntegrationV1 struct { func (m *IntegrationV1) Reset() { *m = IntegrationV1{} } func (*IntegrationV1) ProtoMessage() {} func (*IntegrationV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{316} + return fileDescriptor_9198ee693835762e, []int{317} } func (m *IntegrationV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18182,6 +18228,7 @@ type IntegrationSpecV1 struct { // // *IntegrationSpecV1_AWSOIDC // *IntegrationSpecV1_AzureOIDC + // *IntegrationSpecV1_GitHub SubKindSpec isIntegrationSpecV1_SubKindSpec `protobuf_oneof:"SubKindSpec"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -18192,7 +18239,7 @@ func (m *IntegrationSpecV1) Reset() { *m = IntegrationSpecV1{} } func (m *IntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*IntegrationSpecV1) ProtoMessage() {} func (*IntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{317} + return fileDescriptor_9198ee693835762e, []int{318} } func (m *IntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18233,9 +18280,13 @@ type IntegrationSpecV1_AWSOIDC struct { type IntegrationSpecV1_AzureOIDC struct { AzureOIDC *AzureOIDCIntegrationSpecV1 `protobuf:"bytes,2,opt,name=AzureOIDC,proto3,oneof" json:"azure_oidc,omitempty"` } +type IntegrationSpecV1_GitHub struct { + GitHub *GitHubIntegrationSpecV1 `protobuf:"bytes,3,opt,name=GitHub,proto3,oneof" json:"github,omitempty"` +} func (*IntegrationSpecV1_AWSOIDC) isIntegrationSpecV1_SubKindSpec() {} func (*IntegrationSpecV1_AzureOIDC) isIntegrationSpecV1_SubKindSpec() {} +func (*IntegrationSpecV1_GitHub) isIntegrationSpecV1_SubKindSpec() {} func (m *IntegrationSpecV1) GetSubKindSpec() isIntegrationSpecV1_SubKindSpec { if m != nil { @@ -18258,11 +18309,19 @@ func (m *IntegrationSpecV1) GetAzureOIDC() *AzureOIDCIntegrationSpecV1 { return nil } +func (m *IntegrationSpecV1) GetGitHub() *GitHubIntegrationSpecV1 { + if x, ok := m.GetSubKindSpec().(*IntegrationSpecV1_GitHub); ok { + return x.GitHub + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*IntegrationSpecV1) XXX_OneofWrappers() []interface{} { return []interface{}{ (*IntegrationSpecV1_AWSOIDC)(nil), (*IntegrationSpecV1_AzureOIDC)(nil), + (*IntegrationSpecV1_GitHub)(nil), } } @@ -18292,7 +18351,7 @@ func (m *AWSOIDCIntegrationSpecV1) Reset() { *m = AWSOIDCIntegrationSpec func (m *AWSOIDCIntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*AWSOIDCIntegrationSpecV1) ProtoMessage() {} func (*AWSOIDCIntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{318} + return fileDescriptor_9198ee693835762e, []int{319} } func (m *AWSOIDCIntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18338,7 +18397,7 @@ func (m *AzureOIDCIntegrationSpecV1) Reset() { *m = AzureOIDCIntegration func (m *AzureOIDCIntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*AzureOIDCIntegrationSpecV1) ProtoMessage() {} func (*AzureOIDCIntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{319} + return fileDescriptor_9198ee693835762e, []int{320} } func (m *AzureOIDCIntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18367,6 +18426,97 @@ func (m *AzureOIDCIntegrationSpecV1) XXX_DiscardUnknown() { var xxx_messageInfo_AzureOIDCIntegrationSpecV1 proto.InternalMessageInfo +// GitHubIntegrationSpecV1 contains the specific fields to handle the GitHub integration subkind. +type GitHubIntegrationSpecV1 struct { + // Organization specifies the name of the organization for the GitHub integration. + Organization string `protobuf:"bytes,1,opt,name=Organization,proto3" json:"organization,omitempty"` + // Proxy specifies GitHub proxy related settings. + Proxy *GitHubProxy `protobuf:"bytes,2,opt,name=proxy,proto3" json:"proxy,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubIntegrationSpecV1) Reset() { *m = GitHubIntegrationSpecV1{} } +func (m *GitHubIntegrationSpecV1) String() string { return proto.CompactTextString(m) } +func (*GitHubIntegrationSpecV1) ProtoMessage() {} +func (*GitHubIntegrationSpecV1) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{321} +} +func (m *GitHubIntegrationSpecV1) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubIntegrationSpecV1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubIntegrationSpecV1.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubIntegrationSpecV1) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubIntegrationSpecV1.Merge(m, src) +} +func (m *GitHubIntegrationSpecV1) XXX_Size() int { + return m.Size() +} +func (m *GitHubIntegrationSpecV1) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubIntegrationSpecV1.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubIntegrationSpecV1 proto.InternalMessageInfo + +// GitHubProxy specifies GitHub proxy related settings. +type GitHubProxy struct { + // Enabled indicates GitHub proxy should be enabled. + Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` + // CertAuthority contains the active SSH CAs used between Teleport and + // GitHub. GitHub does not allow the same CA to be used for a different + // organization so the CA is defined per integration. TODO(greedy52) support + // rotation, HSM encryption. + CertAuthority []*SSHKeyPair `protobuf:"bytes,2,rep,name=cert_authority,json=certAuthority,proto3" json:"cert_authority,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubProxy) Reset() { *m = GitHubProxy{} } +func (m *GitHubProxy) String() string { return proto.CompactTextString(m) } +func (*GitHubProxy) ProtoMessage() {} +func (*GitHubProxy) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{322} +} +func (m *GitHubProxy) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubProxy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubProxy.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubProxy) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubProxy.Merge(m, src) +} +func (m *GitHubProxy) XXX_Size() int { + return m.Size() +} +func (m *GitHubProxy) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubProxy.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubProxy proto.InternalMessageInfo + // HeadlessAuthentication holds data for an ongoing headless authentication attempt. type HeadlessAuthentication struct { // Header is the resource header. @@ -18399,7 +18549,7 @@ func (m *HeadlessAuthentication) Reset() { *m = HeadlessAuthentication{} func (m *HeadlessAuthentication) String() string { return proto.CompactTextString(m) } func (*HeadlessAuthentication) ProtoMessage() {} func (*HeadlessAuthentication) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{320} + return fileDescriptor_9198ee693835762e, []int{323} } func (m *HeadlessAuthentication) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18456,7 +18606,7 @@ func (m *WatchKind) Reset() { *m = WatchKind{} } func (m *WatchKind) String() string { return proto.CompactTextString(m) } func (*WatchKind) ProtoMessage() {} func (*WatchKind) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{321} + return fileDescriptor_9198ee693835762e, []int{324} } func (m *WatchKind) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18506,7 +18656,7 @@ func (m *WatchStatusV1) Reset() { *m = WatchStatusV1{} } func (m *WatchStatusV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusV1) ProtoMessage() {} func (*WatchStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{322} + return fileDescriptor_9198ee693835762e, []int{325} } func (m *WatchStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18547,7 +18697,7 @@ func (m *WatchStatusSpecV1) Reset() { *m = WatchStatusSpecV1{} } func (m *WatchStatusSpecV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusSpecV1) ProtoMessage() {} func (*WatchStatusSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{323} + return fileDescriptor_9198ee693835762e, []int{326} } func (m *WatchStatusSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18597,7 +18747,7 @@ func (m *ServerInfoV1) Reset() { *m = ServerInfoV1{} } func (m *ServerInfoV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoV1) ProtoMessage() {} func (*ServerInfoV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{324} + return fileDescriptor_9198ee693835762e, []int{327} } func (m *ServerInfoV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18639,7 +18789,7 @@ func (m *ServerInfoSpecV1) Reset() { *m = ServerInfoSpecV1{} } func (m *ServerInfoSpecV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoSpecV1) ProtoMessage() {} func (*ServerInfoSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{325} + return fileDescriptor_9198ee693835762e, []int{328} } func (m *ServerInfoSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18716,7 +18866,7 @@ func (m *JamfSpecV1) Reset() { *m = JamfSpecV1{} } func (m *JamfSpecV1) String() string { return proto.CompactTextString(m) } func (*JamfSpecV1) ProtoMessage() {} func (*JamfSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{326} + return fileDescriptor_9198ee693835762e, []int{329} } func (m *JamfSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18781,7 +18931,7 @@ func (m *JamfInventoryEntry) Reset() { *m = JamfInventoryEntry{} } func (m *JamfInventoryEntry) String() string { return proto.CompactTextString(m) } func (*JamfInventoryEntry) ProtoMessage() {} func (*JamfInventoryEntry) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{327} + return fileDescriptor_9198ee693835762e, []int{330} } func (m *JamfInventoryEntry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18838,7 +18988,7 @@ type MessageWithHeader struct { func (m *MessageWithHeader) Reset() { *m = MessageWithHeader{} } func (*MessageWithHeader) ProtoMessage() {} func (*MessageWithHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{328} + return fileDescriptor_9198ee693835762e, []int{331} } func (m *MessageWithHeader) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18902,7 +19052,7 @@ func (m *AWSMatcher) Reset() { *m = AWSMatcher{} } func (m *AWSMatcher) String() string { return proto.CompactTextString(m) } func (*AWSMatcher) ProtoMessage() {} func (*AWSMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{329} + return fileDescriptor_9198ee693835762e, []int{332} } func (m *AWSMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18947,7 +19097,7 @@ func (m *AssumeRole) Reset() { *m = AssumeRole{} } func (m *AssumeRole) String() string { return proto.CompactTextString(m) } func (*AssumeRole) ProtoMessage() {} func (*AssumeRole) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{330} + return fileDescriptor_9198ee693835762e, []int{333} } func (m *AssumeRole) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19009,7 +19159,7 @@ func (m *InstallerParams) Reset() { *m = InstallerParams{} } func (m *InstallerParams) String() string { return proto.CompactTextString(m) } func (*InstallerParams) ProtoMessage() {} func (*InstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{331} + return fileDescriptor_9198ee693835762e, []int{334} } func (m *InstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19052,7 +19202,7 @@ func (m *AWSSSM) Reset() { *m = AWSSSM{} } func (m *AWSSSM) String() string { return proto.CompactTextString(m) } func (*AWSSSM) ProtoMessage() {} func (*AWSSSM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{332} + return fileDescriptor_9198ee693835762e, []int{335} } func (m *AWSSSM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19095,7 +19245,7 @@ func (m *AzureInstallerParams) Reset() { *m = AzureInstallerParams{} } func (m *AzureInstallerParams) String() string { return proto.CompactTextString(m) } func (*AzureInstallerParams) ProtoMessage() {} func (*AzureInstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{333} + return fileDescriptor_9198ee693835762e, []int{336} } func (m *AzureInstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19149,7 +19299,7 @@ func (m *AzureMatcher) Reset() { *m = AzureMatcher{} } func (m *AzureMatcher) String() string { return proto.CompactTextString(m) } func (*AzureMatcher) ProtoMessage() {} func (*AzureMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{334} + return fileDescriptor_9198ee693835762e, []int{337} } func (m *AzureMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19204,7 +19354,7 @@ func (m *GCPMatcher) Reset() { *m = GCPMatcher{} } func (m *GCPMatcher) String() string { return proto.CompactTextString(m) } func (*GCPMatcher) ProtoMessage() {} func (*GCPMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{335} + return fileDescriptor_9198ee693835762e, []int{338} } func (m *GCPMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19250,7 +19400,7 @@ func (m *KubernetesMatcher) Reset() { *m = KubernetesMatcher{} } func (m *KubernetesMatcher) String() string { return proto.CompactTextString(m) } func (*KubernetesMatcher) ProtoMessage() {} func (*KubernetesMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{336} + return fileDescriptor_9198ee693835762e, []int{339} } func (m *KubernetesMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19292,7 +19442,7 @@ func (m *OktaOptions) Reset() { *m = OktaOptions{} } func (m *OktaOptions) String() string { return proto.CompactTextString(m) } func (*OktaOptions) ProtoMessage() {} func (*OktaOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{337} + return fileDescriptor_9198ee693835762e, []int{340} } func (m *OktaOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19334,7 +19484,7 @@ func (m *AccessGraphSync) Reset() { *m = AccessGraphSync{} } func (m *AccessGraphSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphSync) ProtoMessage() {} func (*AccessGraphSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{338} + return fileDescriptor_9198ee693835762e, []int{341} } func (m *AccessGraphSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19380,7 +19530,7 @@ func (m *AccessGraphAWSSync) Reset() { *m = AccessGraphAWSSync{} } func (m *AccessGraphAWSSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphAWSSync) ProtoMessage() {} func (*AccessGraphAWSSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{339} + return fileDescriptor_9198ee693835762e, []int{342} } func (m *AccessGraphAWSSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19482,6 +19632,7 @@ func init() { proto.RegisterMapType((map[string]CommandLabelV2)(nil), "types.ServerSpecV2.CmdLabelsEntry") proto.RegisterType((*AWSInfo)(nil), "types.AWSInfo") proto.RegisterType((*CloudMetadata)(nil), "types.CloudMetadata") + proto.RegisterType((*GitHubServerMetadata)(nil), "types.GitHubServerMetadata") proto.RegisterType((*AppServerV3)(nil), "types.AppServerV3") proto.RegisterType((*AppServerSpecV3)(nil), "types.AppServerSpecV3") proto.RegisterType((*AppV3List)(nil), "types.AppV3List") @@ -19786,6 +19937,8 @@ func init() { proto.RegisterType((*IntegrationSpecV1)(nil), "types.IntegrationSpecV1") proto.RegisterType((*AWSOIDCIntegrationSpecV1)(nil), "types.AWSOIDCIntegrationSpecV1") proto.RegisterType((*AzureOIDCIntegrationSpecV1)(nil), "types.AzureOIDCIntegrationSpecV1") + proto.RegisterType((*GitHubIntegrationSpecV1)(nil), "types.GitHubIntegrationSpecV1") + proto.RegisterType((*GitHubProxy)(nil), "types.GitHubProxy") proto.RegisterType((*HeadlessAuthentication)(nil), "types.HeadlessAuthentication") proto.RegisterType((*WatchKind)(nil), "types.WatchKind") proto.RegisterMapType((map[string]string)(nil), "types.WatchKind.FilterEntry") @@ -19813,1718 +19966,1729 @@ func init() { func init() { proto.RegisterFile("teleport/legacy/types/types.proto", fileDescriptor_9198ee693835762e) } var fileDescriptor_9198ee693835762e = []byte{ - // 27374 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x70, 0x1c, 0x49, - 0x7a, 0x20, 0x36, 0xdd, 0x8d, 0x47, 0xe3, 0xc3, 0xab, 0x91, 0x00, 0x49, 0x10, 0x33, 0x1c, 0x70, - 0x8a, 0x33, 0x1c, 0x72, 0x1e, 0xe4, 0x12, 0xdc, 0xe1, 0xee, 0xec, 0x3c, 0x1b, 0x68, 0x90, 0x68, - 0x12, 0x04, 0xb1, 0xd5, 0x20, 0xb9, 0xa3, 0xd9, 0xdd, 0xda, 0x42, 0x77, 0x02, 0xa8, 0x61, 0x77, - 0x57, 0x6f, 0x55, 0x35, 0x41, 0xac, 0xee, 0x7c, 0x92, 0xee, 0x74, 0xeb, 0xf3, 0x9d, 0x5e, 0x3e, - 0xc9, 0xda, 0x73, 0xe8, 0x14, 0x0a, 0x9d, 0xef, 0x2c, 0x3f, 0x4e, 0xe1, 0x90, 0x74, 0xe1, 0x73, - 0x28, 0x2c, 0x4b, 0x0e, 0x59, 0xa1, 0xd0, 0xd9, 0x67, 0x45, 0xf8, 0xbd, 0x56, 0x40, 0x96, 0x75, - 0xa1, 0x70, 0x30, 0x6c, 0x87, 0xe4, 0x8b, 0x50, 0xd8, 0xe3, 0xd0, 0xd9, 0x91, 0x5f, 0x3e, 0x2a, - 0xb3, 0xaa, 0xba, 0xd1, 0x98, 0xe1, 0xdc, 0x89, 0x1b, 0xfa, 0x43, 0xa2, 0xbf, 0xfc, 0xbe, 0x2f, - 0xb3, 0xf2, 0xf9, 0xe5, 0x97, 0xdf, 0x03, 0x5e, 0x88, 0x68, 0x93, 0x76, 0xfc, 0x20, 0xba, 0xdc, - 0xa4, 0xbb, 0x6e, 0xfd, 0xe0, 0x72, 0x74, 0xd0, 0xa1, 0x21, 0xff, 0xf7, 0x52, 0x27, 0xf0, 0x23, - 0x9f, 0x0c, 0xe3, 0x8f, 0x85, 0xb9, 0x5d, 0x7f, 0xd7, 0x47, 0xc8, 0x65, 0xf6, 0x17, 0x2f, 0x5c, - 0x78, 0x7e, 0xd7, 0xf7, 0x77, 0x9b, 0xf4, 0x32, 0xfe, 0xda, 0xee, 0xee, 0x5c, 0x6e, 0x74, 0x03, - 0x37, 0xf2, 0xfc, 0xb6, 0x28, 0x5f, 0x4c, 0x96, 0x47, 0x5e, 0x8b, 0x86, 0x91, 0xdb, 0xea, 0xf4, - 0x62, 0xb0, 0x1f, 0xb8, 0x9d, 0x0e, 0x0d, 0x44, 0xed, 0x0b, 0x17, 0x55, 0x03, 0xdd, 0x28, 0x62, - 0x94, 0x8c, 0xf9, 0xe5, 0x87, 0x57, 0xf4, 0x9f, 0x02, 0xf5, 0xf5, 0xec, 0x6f, 0x91, 0x0c, 0x13, - 0x9c, 0xad, 0x9f, 0x2d, 0xc0, 0xd8, 0x2d, 0x4a, 0x3b, 0xe5, 0xa6, 0xf7, 0x90, 0x92, 0x73, 0x30, - 0xb4, 0xe1, 0xb6, 0xe8, 0x7c, 0xee, 0x6c, 0xee, 0xc2, 0xd8, 0xf2, 0xf4, 0xe3, 0xc3, 0xc5, 0xf1, - 0x90, 0x06, 0x0f, 0x69, 0xe0, 0xb4, 0xdd, 0x16, 0xb5, 0xb1, 0x90, 0xbc, 0x0a, 0x63, 0xec, 0xff, - 0xb0, 0xe3, 0xd6, 0xe9, 0x7c, 0x1e, 0x31, 0x27, 0x1f, 0x1f, 0x2e, 0x8e, 0xb5, 0x25, 0xd0, 0x8e, - 0xcb, 0x49, 0x15, 0x46, 0x57, 0x1f, 0x75, 0xbc, 0x80, 0x86, 0xf3, 0x43, 0x67, 0x73, 0x17, 0xc6, - 0x97, 0x16, 0x2e, 0xf1, 0x6f, 0xbd, 0x24, 0xbf, 0xf5, 0xd2, 0x96, 0xec, 0x8c, 0xe5, 0xd9, 0xdf, - 0x3e, 0x5c, 0x7c, 0xe6, 0xf1, 0xe1, 0xe2, 0x28, 0xe5, 0x24, 0x3f, 0xfe, 0xfb, 0x8b, 0x39, 0x5b, - 0xd2, 0x93, 0xb7, 0x61, 0x68, 0xeb, 0xa0, 0x43, 0xe7, 0xc7, 0xce, 0xe6, 0x2e, 0x4c, 0x2d, 0x3d, - 0x7f, 0x89, 0x0f, 0x8f, 0x6a, 0x7c, 0xfc, 0x17, 0xc3, 0x5a, 0x2e, 0x3e, 0x3e, 0x5c, 0x1c, 0x62, - 0x28, 0x36, 0x52, 0x91, 0xd7, 0x61, 0x64, 0xcd, 0x0f, 0xa3, 0x6a, 0x65, 0x1e, 0xb0, 0xc9, 0x27, - 0x1e, 0x1f, 0x2e, 0xce, 0xec, 0xf9, 0x61, 0xe4, 0x78, 0x8d, 0xd7, 0xfc, 0x96, 0x17, 0xd1, 0x56, - 0x27, 0x3a, 0xb0, 0x05, 0x92, 0xf5, 0x08, 0x26, 0x0d, 0x7e, 0x64, 0x1c, 0x46, 0xef, 0x6e, 0xdc, - 0xda, 0xb8, 0x73, 0x7f, 0xa3, 0xf4, 0x0c, 0x29, 0xc2, 0xd0, 0xc6, 0x9d, 0xca, 0x6a, 0x29, 0x47, - 0x46, 0xa1, 0x50, 0xde, 0xdc, 0x2c, 0xe5, 0xc9, 0x04, 0x14, 0x2b, 0xe5, 0xad, 0xf2, 0x72, 0xb9, - 0xb6, 0x5a, 0x2a, 0x90, 0x59, 0x98, 0xbe, 0x5f, 0xdd, 0xa8, 0xdc, 0xb9, 0x5f, 0x73, 0x2a, 0xab, - 0xb5, 0x5b, 0x5b, 0x77, 0x36, 0x4b, 0x43, 0x64, 0x0a, 0xe0, 0xd6, 0xdd, 0xe5, 0x55, 0x7b, 0x63, - 0x75, 0x6b, 0xb5, 0x56, 0x1a, 0x26, 0x73, 0x50, 0x92, 0x24, 0x4e, 0x6d, 0xd5, 0xbe, 0x57, 0x5d, - 0x59, 0x2d, 0x8d, 0xdc, 0x1c, 0x2a, 0x16, 0x4a, 0x43, 0xf6, 0xe8, 0x3a, 0x75, 0x43, 0x5a, 0xad, - 0x58, 0x7f, 0xaf, 0x00, 0xc5, 0xdb, 0x34, 0x72, 0x1b, 0x6e, 0xe4, 0x92, 0xe7, 0x8c, 0xf1, 0xc1, - 0x4f, 0xd4, 0x06, 0xe6, 0x5c, 0x7a, 0x60, 0x86, 0x1f, 0x1f, 0x2e, 0xe6, 0x5e, 0xd7, 0x07, 0xe4, - 0x2d, 0x18, 0xaf, 0xd0, 0xb0, 0x1e, 0x78, 0x1d, 0x36, 0x69, 0xe6, 0x0b, 0x88, 0x76, 0xfa, 0xf1, - 0xe1, 0xe2, 0x89, 0x46, 0x0c, 0xd6, 0x3a, 0x44, 0xc7, 0x26, 0x55, 0x18, 0x59, 0x77, 0xb7, 0x69, - 0x33, 0x9c, 0x1f, 0x3e, 0x5b, 0xb8, 0x30, 0xbe, 0xf4, 0xac, 0x18, 0x04, 0xd9, 0xc0, 0x4b, 0xbc, - 0x74, 0xb5, 0x1d, 0x05, 0x07, 0xcb, 0x73, 0x8f, 0x0f, 0x17, 0x4b, 0x4d, 0x04, 0xe8, 0x1d, 0xcc, - 0x51, 0x48, 0x2d, 0x9e, 0x18, 0x23, 0x47, 0x4e, 0x8c, 0x33, 0xbf, 0x7d, 0xb8, 0x98, 0x63, 0x03, - 0x26, 0x26, 0x46, 0xcc, 0xcf, 0x9c, 0x22, 0x4b, 0x50, 0xb4, 0xe9, 0x43, 0x2f, 0x64, 0x5f, 0x56, - 0xc4, 0x2f, 0x3b, 0xf9, 0xf8, 0x70, 0x91, 0x04, 0x02, 0xa6, 0x35, 0x43, 0xe1, 0x2d, 0xbc, 0x09, - 0xe3, 0x5a, 0xab, 0x49, 0x09, 0x0a, 0x0f, 0xe8, 0x01, 0xef, 0x61, 0x9b, 0xfd, 0x49, 0xe6, 0x60, - 0xf8, 0xa1, 0xdb, 0xec, 0x8a, 0x2e, 0xb5, 0xf9, 0x8f, 0x2f, 0xe5, 0xbf, 0x98, 0xbb, 0x39, 0x54, - 0x1c, 0x2d, 0x15, 0xed, 0x7c, 0xb5, 0x62, 0xfd, 0x9b, 0x43, 0x50, 0xb4, 0x7d, 0xbe, 0x10, 0xc9, - 0x45, 0x18, 0xae, 0x45, 0x6e, 0x24, 0x87, 0x69, 0xf6, 0xf1, 0xe1, 0xe2, 0x34, 0x5b, 0xa4, 0x54, - 0xab, 0x9f, 0x63, 0x30, 0xd4, 0xcd, 0x3d, 0x37, 0x94, 0xc3, 0x85, 0xa8, 0x1d, 0x06, 0xd0, 0x51, - 0x11, 0x83, 0x9c, 0x87, 0xa1, 0xdb, 0x7e, 0x83, 0x8a, 0x11, 0x23, 0x8f, 0x0f, 0x17, 0xa7, 0x5a, - 0x7e, 0x43, 0x47, 0xc4, 0x72, 0xf2, 0x1a, 0x8c, 0xad, 0x74, 0x83, 0x80, 0xb6, 0xd9, 0x5c, 0x1f, - 0x42, 0xe4, 0xa9, 0xc7, 0x87, 0x8b, 0x50, 0xe7, 0x40, 0xc7, 0x6b, 0xd8, 0x31, 0x02, 0x1b, 0x86, - 0x5a, 0xe4, 0x06, 0x11, 0x6d, 0xcc, 0x0f, 0x0f, 0x34, 0x0c, 0x6c, 0x7d, 0xce, 0x84, 0x9c, 0x24, - 0x39, 0x0c, 0x82, 0x13, 0x59, 0x83, 0xf1, 0x1b, 0x81, 0x5b, 0xa7, 0x9b, 0x34, 0xf0, 0xfc, 0x06, - 0x8e, 0x6f, 0x61, 0xf9, 0xfc, 0xe3, 0xc3, 0xc5, 0x93, 0xbb, 0x0c, 0xec, 0x74, 0x10, 0x1e, 0x53, - 0x7f, 0x7c, 0xb8, 0x58, 0xac, 0x88, 0x2d, 0xd3, 0xd6, 0x49, 0xc9, 0x37, 0xd8, 0xe0, 0x84, 0x11, - 0x76, 0x2d, 0x6d, 0xcc, 0x8f, 0x1e, 0xd9, 0x44, 0x4b, 0x34, 0xf1, 0x64, 0xd3, 0x0d, 0x23, 0x27, - 0xe0, 0x74, 0x89, 0x76, 0xea, 0x2c, 0xc9, 0x1d, 0x28, 0xd6, 0xea, 0x7b, 0xb4, 0xd1, 0x6d, 0x52, - 0x9c, 0x32, 0xe3, 0x4b, 0xa7, 0xc4, 0xa4, 0x96, 0xe3, 0x29, 0x8b, 0x97, 0x17, 0x04, 0x6f, 0x12, - 0x0a, 0x88, 0x3e, 0x9f, 0x24, 0xd6, 0x97, 0x8a, 0xdf, 0xf9, 0xb9, 0xc5, 0x67, 0x7e, 0xe0, 0xf7, - 0xce, 0x3e, 0x63, 0xfd, 0xc7, 0x79, 0x28, 0x25, 0x99, 0x90, 0x1d, 0x98, 0xbc, 0xdb, 0x69, 0xb8, - 0x11, 0x5d, 0x69, 0x7a, 0xb4, 0x1d, 0x85, 0x38, 0x49, 0xfa, 0x7f, 0xd3, 0x8b, 0xa2, 0xde, 0xf9, - 0x2e, 0x12, 0x3a, 0x75, 0x4e, 0x99, 0xf8, 0x2a, 0x93, 0x6d, 0x5c, 0x4f, 0x0d, 0x37, 0xf0, 0x10, - 0x67, 0xd8, 0xf1, 0xea, 0xe1, 0x5b, 0x7f, 0x8f, 0x7a, 0x04, 0x5b, 0x31, 0x81, 0xda, 0x8d, 0xed, - 0x03, 0x9c, 0x99, 0x83, 0x4f, 0x20, 0x46, 0x92, 0x31, 0x81, 0x18, 0xd8, 0xfa, 0x67, 0x39, 0x98, - 0xb2, 0x69, 0xe8, 0x77, 0x83, 0x3a, 0x5d, 0xa3, 0x6e, 0x83, 0x06, 0x6c, 0xfa, 0xdf, 0xf2, 0xda, - 0x0d, 0xb1, 0xa6, 0x70, 0xfa, 0x3f, 0xf0, 0xda, 0xfa, 0xd6, 0x8d, 0xe5, 0xe4, 0x73, 0x30, 0x5a, - 0xeb, 0x6e, 0x23, 0x6a, 0x3e, 0xde, 0x01, 0xc2, 0xee, 0xb6, 0x93, 0x40, 0x97, 0x68, 0xe4, 0x32, - 0x8c, 0xde, 0xa3, 0x41, 0x18, 0xef, 0x86, 0x78, 0x34, 0x3c, 0xe4, 0x20, 0x9d, 0x40, 0x60, 0x91, - 0x1b, 0xf1, 0x8e, 0x2c, 0x0e, 0xb5, 0xe9, 0xc4, 0x3e, 0x18, 0x4f, 0x95, 0x96, 0x80, 0xe8, 0x53, - 0x45, 0x62, 0x59, 0x3f, 0x91, 0x87, 0x52, 0xc5, 0x8d, 0xdc, 0x6d, 0x37, 0x14, 0xfd, 0x79, 0xef, - 0x2a, 0xdb, 0xe3, 0xb5, 0x0f, 0xc5, 0x3d, 0x9e, 0xb5, 0xfc, 0x13, 0x7f, 0xde, 0x4b, 0xc9, 0xcf, - 0x1b, 0x67, 0x27, 0xac, 0xf8, 0xbc, 0xf8, 0xa3, 0xde, 0x39, 0xfa, 0xa3, 0x4a, 0xe2, 0xa3, 0x8a, - 0xf2, 0xa3, 0xe2, 0x4f, 0x21, 0xef, 0xc0, 0x50, 0xad, 0x43, 0xeb, 0x62, 0x13, 0x91, 0xe7, 0x82, - 0xf9, 0x71, 0x0c, 0xe1, 0xde, 0xd5, 0xe5, 0x09, 0xc1, 0x66, 0x28, 0xec, 0xd0, 0xba, 0x8d, 0x64, - 0xda, 0xa2, 0xf9, 0xc7, 0x05, 0x98, 0xcb, 0x22, 0xd3, 0xbf, 0x63, 0xa4, 0xcf, 0x77, 0x5c, 0x80, - 0x22, 0x3b, 0xc2, 0xd9, 0xb1, 0x88, 0xdb, 0xc5, 0xd8, 0xf2, 0x04, 0x6b, 0xf2, 0x9e, 0x80, 0xd9, - 0xaa, 0x94, 0x9c, 0x53, 0x12, 0x41, 0x31, 0xe6, 0x27, 0x24, 0x02, 0x29, 0x07, 0xb0, 0xb1, 0x96, - 0x4b, 0x18, 0x05, 0x87, 0xb8, 0x5b, 0x24, 0x38, 0x1e, 0xeb, 0x40, 0x40, 0x8c, 0x63, 0x46, 0x1e, - 0x0a, 0xab, 0x50, 0x94, 0x9f, 0x35, 0x3f, 0x81, 0x8c, 0x66, 0x12, 0x9d, 0x74, 0xef, 0x2a, 0x1f, - 0xcc, 0x86, 0xf8, 0xad, 0xb3, 0x91, 0x38, 0xe4, 0x2a, 0x14, 0x37, 0x03, 0xff, 0xd1, 0x41, 0xb5, - 0x12, 0xce, 0x4f, 0x9e, 0x2d, 0x5c, 0x18, 0x5b, 0x3e, 0xf5, 0xf8, 0x70, 0x71, 0xb6, 0xc3, 0x60, - 0x8e, 0xd7, 0xd0, 0x4f, 0x5a, 0x85, 0x78, 0x73, 0xa8, 0x98, 0x2b, 0xe5, 0x6f, 0x0e, 0x15, 0xf3, - 0xa5, 0x02, 0x17, 0x2f, 0x6e, 0x0e, 0x15, 0x87, 0x4a, 0xc3, 0x37, 0x87, 0x8a, 0xc3, 0x28, 0x70, - 0x8c, 0x95, 0xe0, 0xe6, 0x50, 0x71, 0xbc, 0x34, 0x61, 0x9c, 0xf6, 0xc8, 0x20, 0xf2, 0xeb, 0x7e, - 0xd3, 0x2e, 0xdc, 0xb5, 0xab, 0xf6, 0xc8, 0x4a, 0x79, 0x85, 0x06, 0x91, 0x5d, 0x28, 0xdf, 0xaf, - 0xd9, 0x93, 0x95, 0x83, 0xb6, 0xdb, 0xf2, 0xea, 0xfc, 0xe8, 0xb4, 0x0b, 0x37, 0x56, 0x36, 0xad, - 0x32, 0x4c, 0xc5, 0xdf, 0xb2, 0xee, 0x85, 0x11, 0xb9, 0x0c, 0x63, 0x12, 0xc2, 0x36, 0xba, 0x42, - 0xe6, 0x57, 0xdb, 0x31, 0x8e, 0xf5, 0x5b, 0x79, 0x80, 0xb8, 0xe4, 0x29, 0x5d, 0x0b, 0x5f, 0x30, - 0xd6, 0xc2, 0x89, 0xe4, 0x5a, 0xe8, 0xb9, 0x0a, 0xc8, 0x7b, 0x30, 0xc2, 0xc4, 0x82, 0xae, 0x14, - 0x89, 0x4e, 0x25, 0x49, 0xb1, 0xf0, 0xde, 0xd5, 0xe5, 0x29, 0x41, 0x3c, 0x12, 0x22, 0xc4, 0x16, - 0x64, 0xda, 0x32, 0xfa, 0xd9, 0xd1, 0x78, 0x30, 0xc4, 0x02, 0xba, 0x00, 0x6a, 0x40, 0x45, 0x87, - 0xe2, 0xca, 0xe8, 0xc8, 0x41, 0x56, 0xa5, 0xe4, 0x34, 0xb0, 0x01, 0x17, 0x9d, 0x3a, 0xfa, 0xf8, - 0x70, 0xb1, 0xd0, 0x0d, 0x3c, 0x9c, 0x04, 0xe4, 0x32, 0x88, 0x69, 0x20, 0x3a, 0x90, 0xcd, 0xbe, - 0x99, 0xba, 0xeb, 0xd4, 0x69, 0x10, 0xc5, 0x3d, 0x3e, 0x9f, 0x93, 0xb3, 0x85, 0x74, 0xc0, 0x9c, - 0x2a, 0xf3, 0x43, 0x38, 0x0d, 0x2e, 0x64, 0xf6, 0xca, 0x25, 0x03, 0x95, 0x8b, 0x91, 0x67, 0xe5, - 0xa9, 0xd4, 0xe0, 0x65, 0x4e, 0x4a, 0xa4, 0x34, 0x2b, 0x20, 0x57, 0x81, 0xcd, 0x50, 0xd1, 0xfb, - 0x20, 0xea, 0x29, 0xdf, 0xaf, 0x2d, 0x9f, 0x10, 0x9c, 0x26, 0xdd, 0x7d, 0x9d, 0x9c, 0x61, 0x93, - 0xb7, 0x80, 0x4d, 0x61, 0xd1, 0xef, 0x44, 0x10, 0xdd, 0x58, 0xd9, 0x5c, 0x69, 0xfa, 0xdd, 0x46, - 0xed, 0xcb, 0xeb, 0x31, 0xf1, 0x6e, 0xbd, 0xa3, 0x13, 0xdf, 0x58, 0xd9, 0x24, 0x6f, 0xc1, 0x70, - 0xf9, 0x5b, 0xdd, 0x80, 0x0a, 0xf9, 0x64, 0x42, 0xd6, 0xc9, 0x60, 0xcb, 0xa7, 0x04, 0xe1, 0xb4, - 0xcb, 0x7e, 0xea, 0x72, 0x1d, 0x96, 0xb3, 0x9a, 0xb7, 0xd6, 0x6b, 0x42, 0xf6, 0x20, 0x89, 0x6e, - 0xd9, 0x5a, 0xd7, 0x9a, 0x1d, 0x19, 0x5f, 0xcd, 0xa8, 0xc8, 0x65, 0xc8, 0x97, 0x2b, 0x78, 0x23, - 0x1a, 0x5f, 0x1a, 0x93, 0xd5, 0x56, 0x96, 0xe7, 0x04, 0xc9, 0x84, 0xab, 0x2f, 0x83, 0x7c, 0xb9, - 0x42, 0x96, 0x61, 0xf8, 0xf6, 0x41, 0xed, 0xcb, 0xeb, 0x62, 0x33, 0x9b, 0x95, 0xf3, 0x9a, 0xc1, - 0xee, 0xe0, 0xb2, 0x0f, 0xe3, 0x16, 0xb7, 0x0e, 0xc2, 0x6f, 0x36, 0xf5, 0x16, 0x23, 0x1a, 0xd9, - 0x84, 0xb1, 0x72, 0xa3, 0xe5, 0xb5, 0xef, 0x86, 0x34, 0x98, 0x1f, 0x47, 0x3e, 0xf3, 0x89, 0x76, - 0xab, 0xf2, 0xe5, 0xf9, 0xc7, 0x87, 0x8b, 0x73, 0x2e, 0xfb, 0xe9, 0x74, 0x43, 0x1a, 0x68, 0xdc, - 0x62, 0x26, 0x64, 0x13, 0xe0, 0xb6, 0xdf, 0xde, 0xf5, 0xcb, 0x51, 0xd3, 0x0d, 0x13, 0xdb, 0x63, - 0x5c, 0xa0, 0xc4, 0x87, 0x13, 0x2d, 0x06, 0x73, 0x5c, 0x06, 0xd4, 0x18, 0x6a, 0x3c, 0xc8, 0x75, - 0x18, 0xb9, 0x13, 0xb8, 0xf5, 0x26, 0x9d, 0x9f, 0x44, 0x6e, 0x73, 0x82, 0x1b, 0x07, 0xca, 0x2f, - 0x9d, 0x17, 0x0c, 0x4b, 0x3e, 0x82, 0xf5, 0x6b, 0x0a, 0x47, 0x5c, 0xb8, 0x0f, 0x24, 0x3d, 0x27, - 0x33, 0x2e, 0x09, 0xaf, 0xea, 0x97, 0x84, 0x78, 0xd1, 0xaf, 0xf8, 0xad, 0x96, 0xdb, 0x6e, 0x20, - 0xed, 0xbd, 0x25, 0xed, 0xee, 0x60, 0x7d, 0x13, 0x66, 0x52, 0x9d, 0x75, 0xc4, 0xfd, 0xee, 0x5d, - 0x98, 0xae, 0xd0, 0x1d, 0xb7, 0xdb, 0x8c, 0xd4, 0x49, 0xc2, 0x97, 0x28, 0xde, 0xb4, 0x1a, 0xbc, - 0xc8, 0x91, 0xc7, 0x87, 0x9d, 0x44, 0xb6, 0xde, 0x81, 0x49, 0xe3, 0xf3, 0xd9, 0x55, 0xa1, 0xdc, - 0x6d, 0x78, 0x11, 0x0e, 0x64, 0x2e, 0xbe, 0x2a, 0xb8, 0x0c, 0x88, 0xc3, 0x65, 0xc7, 0x08, 0xd6, - 0xbf, 0xa3, 0x4b, 0x2b, 0x62, 0x27, 0x62, 0xd7, 0x6a, 0xb1, 0x1f, 0xe4, 0x62, 0xd9, 0x29, 0xb5, - 0x1f, 0xa8, 0xdd, 0xe0, 0x22, 0x5f, 0x9b, 0xf9, 0xd4, 0xda, 0x1c, 0x17, 0x23, 0x51, 0x70, 0xf7, - 0x43, 0xbe, 0x22, 0xd5, 0x4c, 0x2d, 0x7c, 0xf2, 0x99, 0xfa, 0x1e, 0x4c, 0xdc, 0x76, 0xdb, 0xee, - 0x2e, 0x6d, 0xb0, 0x2f, 0xe0, 0x7b, 0xcf, 0xd8, 0xf2, 0xb3, 0x8f, 0x0f, 0x17, 0x4f, 0xb5, 0x38, - 0x1c, 0xbf, 0x52, 0x9f, 0x44, 0x06, 0x01, 0xb9, 0x22, 0x57, 0xf6, 0x70, 0xc6, 0xca, 0x9e, 0x14, - 0xb5, 0x0f, 0xe3, 0xca, 0x16, 0xeb, 0xd9, 0xfa, 0xf5, 0x31, 0xfc, 0x46, 0xf2, 0x1a, 0x8c, 0xd8, - 0x74, 0x97, 0x1d, 0x35, 0xb9, 0x78, 0x90, 0x02, 0x84, 0xe8, 0x1d, 0xc3, 0x71, 0x50, 0xce, 0xa0, - 0x8d, 0x70, 0xcf, 0xdb, 0x89, 0x44, 0xef, 0x28, 0x39, 0x43, 0x80, 0x35, 0x39, 0x43, 0x40, 0xcc, - 0xeb, 0x2c, 0x87, 0xb1, 0xdd, 0xcf, 0xae, 0xd4, 0x44, 0xa7, 0xc9, 0x1e, 0xb6, 0x2b, 0xda, 0x36, - 0x12, 0x18, 0x52, 0x02, 0xc3, 0x26, 0xd7, 0x60, 0xac, 0x5c, 0xaf, 0xfb, 0x5d, 0xed, 0xce, 0xc8, - 0xd7, 0x2d, 0x07, 0x9a, 0x2a, 0x92, 0x18, 0x95, 0xd4, 0x60, 0x7c, 0x95, 0x5d, 0xb4, 0xbc, 0x15, - 0xb7, 0xbe, 0x27, 0x3b, 0x49, 0xee, 0x61, 0x5a, 0x49, 0xbc, 0x72, 0x29, 0x02, 0xeb, 0x0c, 0xa8, - 0x2b, 0x19, 0x34, 0x5c, 0xb2, 0x05, 0xe3, 0x35, 0x5a, 0x0f, 0x68, 0x54, 0x8b, 0xfc, 0x80, 0x26, - 0xb6, 0x64, 0xad, 0x64, 0xf9, 0x79, 0x79, 0xd7, 0x0b, 0x11, 0xe8, 0x84, 0x0c, 0xaa, 0x73, 0xd5, - 0x90, 0xb9, 0xd0, 0xde, 0xf2, 0x83, 0x83, 0xca, 0xb2, 0xd8, 0xa6, 0xe3, 0x33, 0x9d, 0x83, 0x75, - 0xa1, 0x9d, 0x41, 0x1a, 0xdb, 0xa6, 0xd0, 0xce, 0xb1, 0x70, 0xa4, 0x2a, 0x35, 0x94, 0xad, 0xc4, - 0xa6, 0x3d, 0x1d, 0xf7, 0x32, 0x82, 0xb5, 0x91, 0x6a, 0x84, 0x28, 0x99, 0x19, 0x23, 0x25, 0xb0, - 0x48, 0x07, 0x88, 0x1c, 0x35, 0x2e, 0xe8, 0x36, 0x69, 0x18, 0x8a, 0xbd, 0xfc, 0x74, 0x62, 0xf0, - 0x63, 0x84, 0xe5, 0x97, 0x04, 0xf3, 0x33, 0x72, 0x1a, 0x88, 0x7b, 0x1a, 0x2b, 0xd4, 0xea, 0xc9, - 0xe0, 0x4d, 0xde, 0x04, 0x58, 0x7d, 0x14, 0xd1, 0xa0, 0xed, 0x36, 0x95, 0x1e, 0x0c, 0x55, 0x3f, - 0x54, 0x40, 0xcd, 0x81, 0xd6, 0x90, 0xc9, 0x0a, 0x4c, 0x96, 0xc3, 0xb0, 0xdb, 0xa2, 0xb6, 0xdf, - 0xa4, 0x65, 0x7b, 0x03, 0xf7, 0xfd, 0xb1, 0xe5, 0x33, 0x8f, 0x0f, 0x17, 0x4f, 0xbb, 0x58, 0xe0, - 0x04, 0x7e, 0x93, 0x3a, 0x6e, 0xa0, 0xcf, 0x6e, 0x93, 0x86, 0xdc, 0x01, 0xb8, 0xd3, 0xa1, 0xed, - 0x1a, 0x75, 0x83, 0xfa, 0x5e, 0x62, 0x9b, 0x8f, 0x0b, 0x96, 0x9f, 0x13, 0x5f, 0x38, 0xe7, 0x77, - 0x68, 0x3b, 0x44, 0x98, 0xde, 0xaa, 0x18, 0x93, 0xdc, 0x87, 0xe9, 0x6a, 0xf9, 0xf6, 0xa6, 0xdf, - 0xf4, 0xea, 0x07, 0x42, 0x72, 0x9a, 0x42, 0xed, 0xe0, 0x49, 0xc1, 0x35, 0x51, 0xca, 0xb7, 0x27, - 0xcf, 0x6d, 0x39, 0x1d, 0x84, 0x3a, 0x42, 0x7e, 0x4a, 0x72, 0x21, 0x1f, 0xb0, 0x39, 0x18, 0x32, - 0x61, 0x70, 0xcb, 0xdd, 0x0d, 0xe7, 0xa7, 0x0d, 0x6d, 0x57, 0xf9, 0x7e, 0xed, 0x92, 0x56, 0xca, - 0xc5, 0x94, 0x05, 0x3e, 0x11, 0x11, 0xea, 0x44, 0xee, 0x6e, 0x68, 0x4e, 0x44, 0x85, 0x4d, 0x6e, - 0x02, 0x54, 0xfc, 0x7a, 0xb7, 0x45, 0xdb, 0x51, 0x65, 0x79, 0xbe, 0x64, 0x5e, 0x05, 0x54, 0x41, - 0xbc, 0xb5, 0x35, 0xfc, 0xba, 0x31, 0x13, 0x35, 0xea, 0x85, 0x77, 0xa1, 0x94, 0x6c, 0xc8, 0x31, - 0x15, 0x58, 0x93, 0xa5, 0x29, 0xed, 0xeb, 0x57, 0x1f, 0x79, 0x61, 0x14, 0x5a, 0xdf, 0x6f, 0xac, - 0x40, 0xb6, 0x3b, 0xdc, 0xa2, 0x07, 0x9b, 0x01, 0xdd, 0xf1, 0x1e, 0x89, 0xcd, 0x0c, 0x77, 0x87, - 0x07, 0xf4, 0xc0, 0xe9, 0x20, 0x54, 0xdf, 0x1d, 0x14, 0x2a, 0xf9, 0x3c, 0x14, 0x6f, 0xdd, 0xae, - 0xdd, 0xa2, 0x07, 0xd5, 0x8a, 0x38, 0xa8, 0x38, 0x59, 0x2b, 0x74, 0x18, 0xa9, 0x31, 0xd7, 0x14, - 0xa6, 0xb5, 0x1c, 0xef, 0x84, 0xac, 0xe6, 0x95, 0x66, 0x37, 0x8c, 0x68, 0x50, 0xad, 0xe8, 0x35, - 0xd7, 0x39, 0x30, 0xb1, 0x2f, 0x29, 0x54, 0xeb, 0x1f, 0xe7, 0x71, 0x17, 0x64, 0x13, 0xbe, 0xda, - 0x0e, 0x23, 0xb7, 0x5d, 0xa7, 0x8a, 0x01, 0x4e, 0x78, 0x4f, 0x40, 0x13, 0x13, 0x3e, 0x46, 0x36, - 0xab, 0xce, 0x0f, 0x5c, 0x35, 0xab, 0x52, 0x6a, 0x2e, 0xaa, 0x15, 0x5d, 0xbd, 0x1a, 0x08, 0x68, - 0xa2, 0xca, 0x18, 0x99, 0x9c, 0x87, 0xd1, 0x6a, 0xf9, 0x76, 0xb9, 0x1b, 0xed, 0xe1, 0x1e, 0x5c, - 0xe4, 0xf2, 0x39, 0x9b, 0xad, 0x6e, 0x37, 0xda, 0xb3, 0x65, 0x21, 0xb9, 0x8c, 0xf7, 0x9e, 0x36, - 0x8d, 0xb8, 0x1a, 0x56, 0x1c, 0xba, 0x21, 0x07, 0x25, 0xae, 0x3d, 0x0c, 0x44, 0x5e, 0x81, 0xe1, - 0x7b, 0x9b, 0x2b, 0xd5, 0x8a, 0xb8, 0x38, 0xe3, 0x49, 0xf4, 0xb0, 0x53, 0x37, 0x5b, 0xc2, 0x51, - 0xac, 0xdf, 0xc8, 0xc5, 0xfb, 0x1b, 0x39, 0x6f, 0xc8, 0x23, 0xa8, 0x74, 0x61, 0xf2, 0x88, 0xae, - 0x74, 0x41, 0xc9, 0xc4, 0x06, 0xb2, 0xd2, 0x0d, 0x23, 0xbf, 0xb5, 0xda, 0x6e, 0x74, 0x7c, 0xaf, - 0x1d, 0x21, 0x15, 0xef, 0x35, 0xeb, 0xf1, 0xe1, 0xe2, 0xf3, 0x75, 0x2c, 0x75, 0xa8, 0x28, 0x76, - 0x12, 0x5c, 0x32, 0xa8, 0x3f, 0x45, 0x47, 0x5a, 0xbf, 0x93, 0x37, 0xce, 0x25, 0xd6, 0x3c, 0x9b, - 0x76, 0x9a, 0x5e, 0x1d, 0xaf, 0xe2, 0x37, 0x02, 0xbf, 0xdb, 0x51, 0xd3, 0x01, 0x9b, 0x17, 0xc4, - 0xa5, 0xce, 0x2e, 0x2b, 0x36, 0x79, 0x67, 0x50, 0x93, 0xf7, 0x61, 0x82, 0x89, 0x08, 0xe2, 0x67, - 0x38, 0x9f, 0xc7, 0x91, 0x78, 0x0e, 0xd5, 0x67, 0x21, 0x0d, 0x14, 0x1b, 0x43, 0xb6, 0xd0, 0x29, - 0x48, 0x03, 0xe6, 0xb7, 0x02, 0xb7, 0x1d, 0x7a, 0xd1, 0x6a, 0xbb, 0x1e, 0x1c, 0xa0, 0x48, 0xb3, - 0xda, 0x76, 0xb7, 0x9b, 0xb4, 0x81, 0x9f, 0x5b, 0x5c, 0xbe, 0xf0, 0xf8, 0x70, 0xf1, 0xc5, 0x88, - 0xe3, 0x38, 0x54, 0x21, 0x39, 0x94, 0x63, 0x69, 0x9c, 0x7b, 0x72, 0x62, 0x22, 0x90, 0xec, 0x56, - 0x7c, 0x3d, 0xe1, 0xa7, 0x3b, 0x8a, 0x40, 0x6a, 0x34, 0xd8, 0xe6, 0xa3, 0x37, 0x53, 0x27, 0xb0, - 0xfe, 0x34, 0x17, 0x9f, 0x9c, 0xe4, 0x6d, 0x18, 0x17, 0x53, 0x5d, 0x9b, 0x17, 0xb8, 0xf5, 0xc9, - 0x75, 0x91, 0x18, 0x59, 0x1d, 0x9d, 0x5d, 0xd8, 0xcb, 0x2b, 0xeb, 0xda, 0xdc, 0xc0, 0x0b, 0xbb, - 0x5b, 0x6f, 0x26, 0xa9, 0x24, 0x1a, 0x9b, 0x04, 0x5b, 0xeb, 0x35, 0xb3, 0x57, 0x70, 0x12, 0x44, - 0xcd, 0x30, 0xa3, 0x1b, 0x34, 0xe4, 0x4f, 0xff, 0xe1, 0xff, 0x43, 0x2e, 0xeb, 0x80, 0x26, 0xcb, - 0x30, 0x79, 0xdf, 0x0f, 0x1e, 0xe0, 0xf8, 0x6a, 0x9d, 0x80, 0x23, 0xbf, 0x2f, 0x0b, 0x92, 0x1f, - 0x64, 0x92, 0xe8, 0x6d, 0xd3, 0x7a, 0xc3, 0x6c, 0x5b, 0x82, 0x83, 0x41, 0xc0, 0xc6, 0x41, 0x71, - 0x54, 0xab, 0x03, 0xc7, 0x21, 0x6e, 0x82, 0x31, 0x85, 0x75, 0x74, 0xeb, 0x3f, 0xcd, 0xe9, 0x07, - 0x31, 0xeb, 0xe4, 0x8a, 0xdf, 0x72, 0xbd, 0xb6, 0xf6, 0x39, 0xfc, 0x45, 0x08, 0xa1, 0xc9, 0x96, - 0x68, 0xc8, 0xe4, 0x2a, 0x14, 0xf9, 0x2f, 0xb5, 0x49, 0xa2, 0x3a, 0x4a, 0x10, 0x9a, 0x3b, 0xbc, - 0x44, 0x4c, 0x8d, 0x4c, 0xe1, 0xb8, 0x23, 0xf3, 0xeb, 0x39, 0xfd, 0x0c, 0xfd, 0xa4, 0xa7, 0x44, - 0xe2, 0x74, 0xc8, 0x1f, 0xe7, 0x74, 0xf8, 0xd4, 0x9f, 0xf0, 0x03, 0x39, 0x18, 0xd7, 0xd4, 0x0b, - 0xec, 0x1b, 0x36, 0x03, 0xff, 0x23, 0x5a, 0x8f, 0xcc, 0x6f, 0xe8, 0x70, 0x60, 0xe2, 0x1b, 0x14, - 0xea, 0xa7, 0xf8, 0x06, 0xeb, 0x4f, 0x72, 0xe2, 0x72, 0x33, 0xf0, 0x36, 0x6f, 0x6e, 0xc9, 0xf9, - 0xe3, 0x9c, 0x6d, 0xef, 0xc3, 0xb0, 0x4d, 0x1b, 0x5e, 0x28, 0x2e, 0x26, 0x33, 0xfa, 0x45, 0x0a, - 0x0b, 0x62, 0x81, 0x27, 0x60, 0x3f, 0xf5, 0x83, 0x09, 0xcb, 0x99, 0x04, 0x5a, 0x0d, 0xaf, 0x37, - 0xe9, 0x23, 0x8f, 0x2f, 0x46, 0x71, 0x46, 0xa2, 0x04, 0xea, 0x85, 0xce, 0x0e, 0x2b, 0x11, 0xa2, - 0xb0, 0xbe, 0xf0, 0x0c, 0x1a, 0xeb, 0x03, 0x80, 0xb8, 0x4a, 0x72, 0x0b, 0x4a, 0x62, 0x36, 0x78, - 0xed, 0x5d, 0x2e, 0x01, 0x89, 0x3e, 0x58, 0x7c, 0x7c, 0xb8, 0xf8, 0x6c, 0x5d, 0x95, 0x09, 0x71, - 0x51, 0xe3, 0x9b, 0x22, 0xb4, 0xfe, 0xdd, 0x3c, 0xe4, 0xcb, 0x38, 0x20, 0xb7, 0xe8, 0x41, 0xe4, - 0x6e, 0x5f, 0xf7, 0x9a, 0xc6, 0x62, 0x7a, 0x80, 0x50, 0x67, 0xc7, 0x33, 0xf4, 0x0c, 0x1a, 0x32, - 0x5b, 0x4c, 0xb7, 0x82, 0xed, 0x37, 0x90, 0x50, 0x5b, 0x4c, 0x0f, 0x82, 0xed, 0x37, 0x92, 0x64, - 0x0a, 0x91, 0x58, 0x30, 0xc2, 0x17, 0x96, 0x98, 0x83, 0xf0, 0xf8, 0x70, 0x71, 0x84, 0xaf, 0x3f, - 0x5b, 0x94, 0x90, 0xd3, 0x50, 0xa8, 0x6d, 0x6e, 0x88, 0x1d, 0x10, 0xf5, 0x79, 0x61, 0xa7, 0x6d, - 0x33, 0x18, 0xab, 0x73, 0xbd, 0x52, 0xde, 0xc4, 0x1b, 0xfc, 0x70, 0x5c, 0x67, 0xb3, 0xe1, 0x76, - 0x92, 0x77, 0x78, 0x85, 0x48, 0xde, 0x81, 0xf1, 0x5b, 0x95, 0x95, 0x35, 0x3f, 0xe4, 0xbb, 0xd7, - 0x48, 0x3c, 0xf9, 0x1f, 0x34, 0xea, 0x0e, 0xaa, 0xd0, 0x93, 0xc7, 0x80, 0x86, 0x6f, 0xfd, 0x70, - 0x1e, 0xc6, 0x35, 0x05, 0x17, 0xf9, 0xbc, 0x78, 0xd9, 0xcc, 0x19, 0xa2, 0xbb, 0x86, 0xc1, 0x4a, - 0xb9, 0x36, 0xa4, 0xe5, 0x37, 0xa8, 0x78, 0xe7, 0x8c, 0x35, 0x0f, 0xf9, 0x41, 0x34, 0x0f, 0x6f, - 0x02, 0xf0, 0x39, 0x80, 0x4d, 0xd6, 0xc4, 0x09, 0xcd, 0xc0, 0x41, 0x1f, 0x97, 0x18, 0x99, 0xdc, - 0x83, 0xd9, 0xad, 0xa0, 0x1b, 0x46, 0xb5, 0x83, 0x30, 0xa2, 0x2d, 0xc6, 0x6d, 0xd3, 0xf7, 0x9b, - 0x62, 0xfe, 0xbd, 0xf8, 0xf8, 0x70, 0xf1, 0x6c, 0xc4, 0x8a, 0x9d, 0x10, 0xcb, 0xb1, 0x01, 0x4e, - 0xc7, 0xf7, 0x75, 0x7d, 0x44, 0x16, 0x03, 0xcb, 0x86, 0x09, 0x5d, 0x9b, 0xc1, 0x4e, 0x16, 0xf1, - 0x0a, 0x24, 0x74, 0xd4, 0xda, 0xc9, 0x22, 0x5a, 0x99, 0x7e, 0x95, 0x32, 0x49, 0xac, 0xcf, 0xeb, - 0x9a, 0xb4, 0x41, 0x17, 0xb6, 0xf5, 0x43, 0xb9, 0x78, 0x1b, 0xb9, 0x77, 0x85, 0xbc, 0x05, 0x23, - 0xfc, 0xd5, 0x4d, 0x3c, 0x4e, 0x9e, 0x50, 0xb7, 0x51, 0xfd, 0x49, 0x8e, 0xab, 0xb0, 0x7f, 0x97, - 0xbf, 0xcc, 0x3f, 0x63, 0x0b, 0x12, 0xa5, 0xfd, 0x36, 0x15, 0x61, 0x92, 0x3b, 0xea, 0x79, 0xaf, - 0x64, 0x69, 0xbf, 0xad, 0xdf, 0x1c, 0x82, 0x29, 0x13, 0x4d, 0x7f, 0x9a, 0xcb, 0x0d, 0xf4, 0x34, - 0xf7, 0x3e, 0x14, 0x59, 0x7f, 0x78, 0x75, 0x2a, 0x25, 0xb2, 0x17, 0xf1, 0x4d, 0x40, 0xc0, 0x8c, - 0x27, 0x67, 0xe0, 0xc3, 0xc1, 0x2e, 0xa7, 0xb6, 0xa2, 0x22, 0x4b, 0xda, 0xfb, 0x51, 0x21, 0x16, - 0x52, 0xe4, 0xfb, 0x91, 0xbe, 0x1e, 0xd4, 0x4b, 0xd2, 0xeb, 0x30, 0xc2, 0x04, 0x73, 0xa5, 0x3b, - 0xc1, 0x56, 0x32, 0x99, 0x3d, 0x61, 0x5b, 0xc2, 0x91, 0xc8, 0x7d, 0x28, 0xae, 0xbb, 0x61, 0x54, - 0xa3, 0xb4, 0x3d, 0xc0, 0xa3, 0xfb, 0xa2, 0xe8, 0xaa, 0x59, 0x7c, 0xd1, 0x0e, 0x29, 0x6d, 0x27, - 0x5e, 0x4d, 0x15, 0x33, 0xf2, 0x35, 0x80, 0x15, 0xbf, 0x1d, 0x05, 0x7e, 0x73, 0xdd, 0xdf, 0x9d, - 0x1f, 0xc1, 0x4b, 0xeb, 0xf3, 0x89, 0x01, 0x88, 0x11, 0xf8, 0xbd, 0x55, 0x69, 0x66, 0xea, 0xbc, - 0xc0, 0x69, 0xfa, 0xbb, 0xfa, 0x3a, 0x88, 0xf1, 0xc9, 0x75, 0x28, 0x49, 0x8d, 0xc0, 0xdd, 0xce, - 0x6e, 0x80, 0x13, 0x64, 0x34, 0x96, 0x3c, 0xe8, 0xa3, 0xc8, 0xe9, 0x0a, 0xb8, 0xbe, 0x53, 0x26, - 0x69, 0xc8, 0x57, 0xe1, 0x54, 0x12, 0x26, 0x47, 0xb9, 0x18, 0xcb, 0xe4, 0x3a, 0xbb, 0x8c, 0x79, - 0xdf, 0x8b, 0x85, 0xf5, 0x71, 0x1e, 0x4e, 0xf5, 0xf8, 0x58, 0xb6, 0x1e, 0xf0, 0xb8, 0xd6, 0xd6, - 0x43, 0xe2, 0x94, 0xe6, 0xc6, 0x42, 0x67, 0x21, 0x2f, 0x0e, 0xb8, 0xa1, 0xe5, 0xd2, 0xe3, 0xc3, - 0xc5, 0x09, 0x63, 0x1c, 0xf3, 0xd5, 0x0a, 0xb9, 0x09, 0x43, 0x6c, 0x88, 0x06, 0x78, 0xf3, 0x96, - 0xca, 0xa0, 0xa9, 0xc8, 0xd3, 0xa7, 0x0f, 0x0e, 0x1d, 0xf2, 0x20, 0x9f, 0x87, 0xc2, 0xd6, 0xd6, - 0x3a, 0xce, 0x9d, 0x02, 0x7e, 0xfb, 0x64, 0x14, 0x35, 0x8d, 0xa9, 0x3a, 0xc9, 0x68, 0x2f, 0x29, - 0x13, 0x09, 0x86, 0x4e, 0xbe, 0x92, 0xb0, 0xc5, 0x79, 0xa5, 0xff, 0x40, 0x0f, 0x6e, 0x9a, 0xf3, - 0x29, 0x2c, 0x62, 0xac, 0x9f, 0xc9, 0xc7, 0x6b, 0xf8, 0xba, 0xd7, 0x8c, 0x68, 0x40, 0x16, 0xf8, - 0x92, 0x8c, 0x85, 0x33, 0x5b, 0xfd, 0x26, 0xf3, 0xf1, 0xfa, 0xe6, 0xac, 0xd4, 0x42, 0x7e, 0x45, - 0x5b, 0xc8, 0x05, 0x5c, 0xc8, 0x53, 0x3d, 0x97, 0xec, 0x2b, 0x19, 0xf3, 0x12, 0x17, 0x62, 0xc6, - 0xdc, 0x7b, 0x11, 0x26, 0x37, 0xfc, 0xd5, 0x47, 0x91, 0x42, 0x64, 0x0b, 0xb0, 0x68, 0x9b, 0x40, - 0xc6, 0xf1, 0x4e, 0xb3, 0x41, 0x83, 0xad, 0x3d, 0xb7, 0x6d, 0x3c, 0x3a, 0xdb, 0x29, 0x38, 0xc3, - 0xdd, 0xa0, 0xfb, 0x26, 0xee, 0x28, 0xc7, 0x4d, 0xc2, 0xad, 0x1f, 0xcc, 0xcb, 0xce, 0xb8, 0xb7, - 0xf4, 0x94, 0x3e, 0x6e, 0xbe, 0x61, 0x3c, 0x6e, 0xce, 0x2a, 0xb5, 0xac, 0x7a, 0xa9, 0x5f, 0x3a, - 0xe2, 0x81, 0xff, 0x7f, 0x1c, 0x86, 0x09, 0x1d, 0x9d, 0xf5, 0x43, 0xb9, 0xd1, 0x08, 0xf4, 0x7e, - 0x70, 0x1b, 0x8d, 0xc0, 0x46, 0xa8, 0xf1, 0x9e, 0x5f, 0xe8, 0xfb, 0x9e, 0xff, 0x75, 0x18, 0x5b, - 0x69, 0x35, 0x8c, 0x57, 0x46, 0x2b, 0xa3, 0x79, 0x97, 0x14, 0x12, 0x5f, 0x0b, 0x4a, 0xdb, 0x58, - 0x6f, 0x35, 0xd2, 0x6f, 0x8b, 0x31, 0x4b, 0xc3, 0x14, 0x60, 0xf8, 0xd3, 0x98, 0x02, 0x5c, 0x83, - 0xb1, 0xbb, 0x21, 0xdd, 0xea, 0xb6, 0xdb, 0xb4, 0x89, 0xd3, 0xaa, 0xc8, 0x65, 0xfd, 0x6e, 0x48, - 0x9d, 0x08, 0xa1, 0x7a, 0x03, 0x14, 0xaa, 0x3e, 0xc0, 0xa3, 0x7d, 0x06, 0xf8, 0x2a, 0x14, 0x37, - 0x29, 0x0d, 0xb0, 0x4f, 0xc7, 0x63, 0x91, 0xae, 0x43, 0x69, 0xe0, 0xb0, 0x8e, 0x35, 0x4c, 0x04, - 0x04, 0xa2, 0x61, 0x57, 0x30, 0x31, 0xa0, 0x5d, 0x01, 0x79, 0x01, 0x26, 0x3a, 0xdd, 0xed, 0xa6, - 0x57, 0x47, 0xbe, 0xc2, 0x20, 0xc1, 0x1e, 0xe7, 0x30, 0xc6, 0x36, 0x24, 0x5f, 0x81, 0x49, 0xbc, - 0xe3, 0xa8, 0x29, 0x37, 0x65, 0x3c, 0xc7, 0x19, 0x65, 0x5c, 0xd2, 0xa9, 0x33, 0x90, 0x93, 0x61, - 0x37, 0x63, 0x32, 0x5a, 0xa8, 0xc1, 0x94, 0x39, 0x92, 0x4f, 0xe0, 0x55, 0x4e, 0xd9, 0x48, 0x14, - 0x4b, 0x63, 0x37, 0x87, 0x8a, 0x50, 0x1a, 0xe7, 0xd6, 0x11, 0x36, 0x6c, 0xaa, 0x6f, 0xb2, 0xc9, - 0xad, 0xee, 0x36, 0x0d, 0xda, 0x34, 0xa2, 0xa1, 0xb8, 0x04, 0x84, 0xf6, 0x50, 0xb9, 0xd3, 0x09, - 0xad, 0x5f, 0xc9, 0xc3, 0x68, 0xf9, 0x7e, 0xad, 0xda, 0xde, 0xf1, 0xf1, 0x6d, 0x4d, 0x3d, 0xa9, - 0xe8, 0x6f, 0x6b, 0xea, 0x49, 0x45, 0x7f, 0x48, 0xb9, 0x9c, 0x71, 0x8d, 0x43, 0xf3, 0x5b, 0xed, - 0x1a, 0x67, 0x5c, 0x40, 0xe3, 0xd7, 0xa5, 0xc2, 0x00, 0xaf, 0x4b, 0x4a, 0x01, 0x38, 0x74, 0xa4, - 0x02, 0x90, 0xbc, 0x05, 0xe3, 0xd5, 0x76, 0x44, 0x77, 0x83, 0x78, 0xa6, 0xab, 0x2b, 0xa5, 0x02, - 0xeb, 0xa2, 0xbd, 0x86, 0xcd, 0xa6, 0x11, 0x57, 0x3a, 0x2a, 0x65, 0x23, 0x4e, 0x23, 0xae, 0x9b, - 0x4c, 0xe8, 0x03, 0x24, 0xa2, 0x55, 0x49, 0xcc, 0x11, 0xf9, 0x82, 0xcf, 0x85, 0xcf, 0xa9, 0x58, - 0xeb, 0xce, 0x3a, 0x76, 0x79, 0x26, 0xfb, 0x05, 0xdf, 0xfa, 0x76, 0x1e, 0xc6, 0xcb, 0x9d, 0xce, - 0x53, 0x6e, 0x47, 0xf5, 0x45, 0x63, 0x7b, 0x95, 0x77, 0x21, 0xf5, 0x5d, 0x03, 0x99, 0x50, 0xfd, - 0x62, 0x1e, 0xa6, 0x13, 0x14, 0x7a, 0xeb, 0x73, 0x03, 0x5a, 0x4f, 0xe5, 0x07, 0xb4, 0x9e, 0x2a, - 0x0c, 0x66, 0x3d, 0x35, 0xf4, 0x69, 0xb6, 0xcc, 0x97, 0xa1, 0x50, 0xee, 0x74, 0x92, 0xaf, 0xb0, - 0x9d, 0xce, 0xbd, 0xab, 0xfc, 0x3e, 0xeb, 0x76, 0x3a, 0x36, 0xc3, 0x30, 0xf6, 0xb1, 0x91, 0x01, - 0xf7, 0x31, 0xeb, 0x75, 0x18, 0x43, 0x5e, 0x68, 0xb3, 0x74, 0x16, 0x70, 0x31, 0x0b, 0x73, 0x25, - 0xa3, 0x2e, 0xb1, 0xcc, 0xff, 0xdf, 0x1c, 0x0c, 0xe3, 0xef, 0xa7, 0x74, 0x8e, 0x2d, 0x19, 0x73, - 0xac, 0xa4, 0xcd, 0xb1, 0x41, 0x66, 0xd7, 0xff, 0x39, 0x84, 0xbd, 0x25, 0xe6, 0x95, 0x30, 0x15, - 0xca, 0x65, 0x98, 0x0a, 0xbd, 0x09, 0xda, 0xae, 0xa9, 0x6b, 0x8b, 0xb4, 0x33, 0x43, 0xbf, 0x69, - 0xc4, 0xc8, 0xe4, 0x41, 0xd2, 0x68, 0xa8, 0x80, 0x83, 0x71, 0x2e, 0xd9, 0xd4, 0x27, 0x62, 0x2f, - 0xb4, 0x06, 0xa4, 0xda, 0x0e, 0x69, 0xbd, 0x1b, 0xd0, 0xda, 0x03, 0xaf, 0x73, 0x8f, 0x06, 0xde, - 0xce, 0x81, 0xb8, 0xdd, 0xe3, 0xb9, 0xec, 0x89, 0x52, 0x27, 0x7c, 0xe0, 0x75, 0xd8, 0x55, 0xc4, - 0xdb, 0x39, 0xb0, 0x33, 0x68, 0xc8, 0x7b, 0x30, 0x6a, 0xd3, 0xfd, 0xc0, 0x8b, 0xe4, 0x53, 0xf8, - 0x94, 0xba, 0x38, 0x23, 0x94, 0x5f, 0x0c, 0x03, 0xfe, 0x43, 0x1f, 0x7f, 0x51, 0x4e, 0x96, 0xf8, - 0xc6, 0xc7, 0x9f, 0xbc, 0x27, 0xe3, 0xaf, 0x2d, 0xdf, 0xaf, 0xf5, 0xda, 0xf7, 0xc8, 0x45, 0x18, - 0xc6, 0xdd, 0x53, 0xc8, 0x04, 0x68, 0x42, 0x8e, 0x67, 0xa8, 0xbe, 0xb5, 0x23, 0x06, 0x79, 0x1e, - 0x40, 0xbd, 0x40, 0x84, 0xf3, 0x45, 0x3c, 0xad, 0x35, 0x48, 0x72, 0xeb, 0x1f, 0x3b, 0xce, 0xd6, - 0xff, 0xd9, 0x59, 0xca, 0xfc, 0x62, 0x1e, 0xce, 0xa9, 0xed, 0xec, 0x4e, 0x50, 0x2b, 0xdf, 0x5e, - 0xaf, 0x36, 0x36, 0x85, 0xf4, 0xbf, 0x19, 0xf8, 0x0f, 0x3d, 0x76, 0xfb, 0xbb, 0x72, 0xc4, 0x62, - 0x5c, 0xe7, 0xb3, 0x96, 0xab, 0x0e, 0xf3, 0x86, 0x4d, 0x81, 0x76, 0x6a, 0x08, 0xb3, 0x87, 0x4e, - 0x27, 0xa5, 0x49, 0x5c, 0x7b, 0xc6, 0x8e, 0x19, 0x90, 0x1f, 0xca, 0xc1, 0xc9, 0xec, 0x86, 0x88, - 0x1b, 0xe1, 0xa2, 0x94, 0x3c, 0x7b, 0xb4, 0x76, 0xf9, 0xe5, 0xc7, 0x87, 0x8b, 0xe7, 0x42, 0xb7, - 0xd5, 0x74, 0xbc, 0x06, 0xaf, 0xcd, 0xab, 0x53, 0xa7, 0x23, 0x10, 0x8c, 0x7a, 0x7b, 0xd4, 0xf4, - 0x25, 0x90, 0x6b, 0x72, 0x3e, 0xb7, 0x0c, 0x50, 0x94, 0xda, 0x19, 0xeb, 0x1f, 0xe5, 0x40, 0x9b, - 0x51, 0x45, 0x9b, 0x36, 0xbc, 0x80, 0xd6, 0x23, 0xdc, 0xd1, 0x94, 0x47, 0x04, 0x87, 0x25, 0x4c, - 0x48, 0x10, 0x46, 0xde, 0x85, 0x51, 0xae, 0xcb, 0xe1, 0x3a, 0x94, 0x78, 0x26, 0x0a, 0xbd, 0x0f, - 0x77, 0x9d, 0xe1, 0x18, 0xfa, 0x2c, 0x16, 0x44, 0x4c, 0xbe, 0xbd, 0x79, 0x7f, 0x6b, 0xa5, 0xe9, - 0x7a, 0xad, 0x50, 0xec, 0x63, 0xd8, 0xad, 0x1f, 0xed, 0x47, 0x4e, 0x1d, 0xa1, 0xba, 0x7c, 0xab, - 0x50, 0xad, 0x1b, 0x52, 0xed, 0x74, 0x84, 0x1d, 0xd4, 0x22, 0x0c, 0xdf, 0x8b, 0xaf, 0x9f, 0xcb, - 0x63, 0x8f, 0x0f, 0x17, 0xf9, 0x74, 0xb1, 0x39, 0xdc, 0xfa, 0x9b, 0x39, 0x98, 0x32, 0xe7, 0x13, - 0xb9, 0x04, 0x23, 0xc2, 0x1b, 0x21, 0x87, 0xd7, 0x6c, 0xd6, 0x0b, 0x23, 0xdc, 0x0f, 0xc1, 0xf0, - 0x3e, 0x10, 0x58, 0x6c, 0x27, 0x16, 0x1c, 0x84, 0x1e, 0x09, 0x77, 0xe2, 0x3a, 0x07, 0xd9, 0xb2, - 0x8c, 0x58, 0x4c, 0x0c, 0x0b, 0xbb, 0xcd, 0x48, 0xd7, 0xbe, 0x06, 0x08, 0xb1, 0x45, 0x89, 0xb5, - 0x02, 0x23, 0x7c, 0x09, 0x27, 0xec, 0x2f, 0x72, 0xc7, 0xb0, 0xbf, 0xb0, 0x0e, 0x73, 0x00, 0xb5, - 0xda, 0xda, 0x2d, 0x7a, 0xb0, 0xe9, 0x7a, 0x01, 0x3e, 0x17, 0xe0, 0x76, 0x79, 0x4b, 0x2c, 0xae, - 0x09, 0xf1, 0x5c, 0xc0, 0xb7, 0xd6, 0x07, 0xf4, 0xc0, 0x78, 0x2e, 0x90, 0xa8, 0xb8, 0x27, 0x07, - 0xde, 0x43, 0x37, 0xa2, 0x8c, 0x30, 0x8f, 0x84, 0x7c, 0x4f, 0xe6, 0xd0, 0x04, 0xa5, 0x86, 0x4c, - 0xbe, 0x06, 0x53, 0xf1, 0x2f, 0xf5, 0xe8, 0x31, 0xa5, 0x16, 0xb0, 0x59, 0xb8, 0xfc, 0xfc, 0xe3, - 0xc3, 0xc5, 0x05, 0x8d, 0x6b, 0xf2, 0x39, 0x24, 0xc1, 0xcc, 0xfa, 0xf9, 0x1c, 0x3e, 0xf5, 0xc9, - 0x0f, 0x3c, 0x0f, 0x43, 0xca, 0xaa, 0x6c, 0x82, 0x6b, 0x6a, 0x12, 0x8a, 0x5d, 0x2c, 0x27, 0xe7, - 0xa0, 0x10, 0x7f, 0x09, 0x6e, 0x91, 0xe6, 0x17, 0xb0, 0x52, 0x72, 0x03, 0x46, 0x07, 0x6a, 0x33, - 0x2e, 0x8d, 0x8c, 0xb6, 0x4a, 0x6a, 0x1c, 0x85, 0x9b, 0xf7, 0xb7, 0xbe, 0x77, 0x47, 0xe1, 0xc7, - 0xf2, 0x30, 0xcd, 0xfa, 0xb5, 0xdc, 0x8d, 0xf6, 0xfc, 0xc0, 0x8b, 0x0e, 0x9e, 0x5a, 0x3d, 0xc5, - 0xdb, 0x86, 0x90, 0xb3, 0x20, 0x4f, 0x19, 0xfd, 0xdb, 0x06, 0x52, 0x57, 0xfc, 0x97, 0xc3, 0x30, - 0x9b, 0x41, 0x45, 0x5e, 0x33, 0x54, 0x89, 0xf3, 0xd2, 0xdb, 0xf0, 0xe3, 0xc3, 0xc5, 0x09, 0x89, - 0xbe, 0x15, 0x7b, 0x1f, 0x2e, 0x99, 0xef, 0xe6, 0xbc, 0xa7, 0x50, 0xb3, 0xa8, 0xbf, 0x9b, 0x9b, - 0xaf, 0xe5, 0x17, 0x61, 0xd8, 0xf6, 0x9b, 0x54, 0x1a, 0x79, 0xe0, 0xc1, 0x1e, 0x30, 0x80, 0xf1, - 0x36, 0xc6, 0x00, 0x64, 0x0d, 0x46, 0xd9, 0x1f, 0xb7, 0xdd, 0x8e, 0xd0, 0xfa, 0x12, 0x25, 0x66, - 0x23, 0xb4, 0xe3, 0xb5, 0x77, 0x75, 0x49, 0xbb, 0x49, 0x9d, 0x96, 0xdb, 0x31, 0x24, 0x10, 0x8e, - 0x68, 0x48, 0xec, 0xc5, 0xde, 0x12, 0x7b, 0xee, 0x48, 0x89, 0x7d, 0x07, 0xa0, 0xe6, 0xed, 0xb6, - 0xbd, 0xf6, 0x6e, 0xb9, 0xb9, 0x2b, 0x7c, 0x36, 0x2f, 0xf6, 0x1e, 0x85, 0x4b, 0x31, 0x32, 0x4e, - 0xdc, 0x67, 0xf1, 0x69, 0x86, 0xc3, 0x1c, 0xb7, 0xb9, 0x6b, 0xd8, 0x96, 0x6b, 0x9c, 0xc9, 0x06, - 0x40, 0xb9, 0x1e, 0x79, 0x0f, 0xd9, 0x14, 0x0e, 0x85, 0x35, 0xb2, 0x6c, 0xf2, 0x4a, 0xf9, 0x16, - 0x3d, 0xa8, 0xd1, 0x28, 0x56, 0x72, 0xbb, 0x88, 0xca, 0x56, 0x82, 0x61, 0x38, 0x1c, 0x73, 0x20, - 0x1d, 0x38, 0x51, 0x6e, 0x34, 0x3c, 0xf6, 0x0d, 0x6e, 0x13, 0x5f, 0x6d, 0x68, 0x03, 0x59, 0x4f, - 0x64, 0xb3, 0xbe, 0x28, 0x58, 0xbf, 0xe0, 0x2a, 0x2a, 0x27, 0xe2, 0x64, 0xc9, 0x6a, 0xb2, 0x19, - 0x5b, 0x35, 0x98, 0x32, 0x3f, 0xde, 0xf4, 0x35, 0x9d, 0x80, 0xa2, 0x5d, 0x2b, 0x3b, 0xb5, 0xb5, - 0xf2, 0x95, 0x52, 0x8e, 0x94, 0x60, 0x42, 0xfc, 0x5a, 0x72, 0x96, 0xde, 0xb8, 0x56, 0xca, 0x1b, - 0x90, 0x37, 0xae, 0x2c, 0x95, 0x0a, 0x0b, 0xf9, 0xf9, 0x5c, 0xc2, 0xcd, 0x63, 0xb4, 0x54, 0xe4, - 0xea, 0x0c, 0xeb, 0x97, 0x72, 0x50, 0x94, 0x6d, 0x27, 0xd7, 0xa0, 0x50, 0xab, 0xad, 0x25, 0x1c, - 0x33, 0xe2, 0x53, 0x86, 0xef, 0xa7, 0x61, 0xa8, 0x5b, 0xdf, 0x31, 0x02, 0x46, 0xb7, 0xb5, 0x5e, - 0x13, 0xc2, 0x81, 0xa4, 0x8b, 0x37, 0x6f, 0x4e, 0x97, 0x61, 0xad, 0x7e, 0x0d, 0x0a, 0x37, 0xef, - 0x6f, 0x09, 0x61, 0x5e, 0xd2, 0xc5, 0xfb, 0x29, 0xa7, 0xfb, 0x68, 0x5f, 0xdf, 0xe5, 0x19, 0x81, - 0x65, 0xc3, 0xb8, 0x36, 0x91, 0xf9, 0xa1, 0xdb, 0xf2, 0x95, 0x83, 0xa5, 0x38, 0x74, 0x19, 0xc4, - 0x16, 0x25, 0x4c, 0x46, 0x58, 0xf7, 0xeb, 0x6e, 0x53, 0x9c, 0xde, 0x28, 0x23, 0x34, 0x19, 0xc0, - 0xe6, 0x70, 0xeb, 0x37, 0x72, 0x50, 0x42, 0x49, 0x0a, 0xad, 0xe7, 0xfc, 0x07, 0xb4, 0x7d, 0xef, - 0x0a, 0x79, 0x5d, 0x2e, 0xb9, 0x9c, 0xba, 0x3a, 0x0e, 0xe3, 0x92, 0x4b, 0xe8, 0x9e, 0xc5, 0xb2, - 0xd3, 0x7c, 0x58, 0xf3, 0x83, 0xfb, 0xbe, 0x1d, 0xe1, 0xc3, 0xba, 0x08, 0xc3, 0xd8, 0x1c, 0xb1, - 0x39, 0x62, 0xcb, 0x23, 0x06, 0xb0, 0x39, 0x5c, 0xdb, 0x9b, 0x7e, 0x22, 0x9f, 0xfa, 0x86, 0xa5, - 0xef, 0x29, 0xff, 0x31, 0xf3, 0xe3, 0x06, 0xda, 0xaf, 0x3f, 0x80, 0xb9, 0x64, 0x97, 0xe0, 0xb5, - 0xbe, 0x0c, 0xd3, 0x26, 0x5c, 0xde, 0xf0, 0x4f, 0x65, 0xd6, 0x75, 0x6f, 0xc9, 0x4e, 0xe2, 0x5b, - 0xff, 0x6b, 0x0e, 0xc6, 0xf0, 0x4f, 0xbb, 0xdb, 0x44, 0x63, 0x88, 0xf2, 0xfd, 0x9a, 0x50, 0xe1, - 0xe9, 0xc2, 0x9c, 0xbb, 0x1f, 0x3a, 0x42, 0xcb, 0x67, 0xec, 0x31, 0x0a, 0x59, 0x90, 0x72, 0xdd, - 0x9c, 0x7c, 0xa7, 0x54, 0xa4, 0x5c, 0x89, 0x17, 0x26, 0x48, 0x05, 0x32, 0x9a, 0x50, 0xdd, 0xaf, - 0xb1, 0xe9, 0xa7, 0xbf, 0x4e, 0x22, 0x9d, 0xdf, 0x34, 0x4d, 0xa8, 0x38, 0x1a, 0x3e, 0x4e, 0xde, - 0xaf, 0x95, 0xed, 0x0d, 0xe3, 0x71, 0x92, 0xb5, 0xd1, 0x30, 0xd5, 0x15, 0x48, 0xd6, 0x7f, 0x35, - 0x96, 0xec, 0x40, 0x71, 0xe0, 0x1d, 0x73, 0x6d, 0xbc, 0x05, 0xc3, 0xe5, 0x66, 0xd3, 0xdf, 0x17, - 0xbb, 0x84, 0xd4, 0x32, 0xa8, 0xfe, 0xe3, 0xe7, 0x99, 0xcb, 0x50, 0x0c, 0x9f, 0x18, 0x06, 0x20, - 0x2b, 0x30, 0x56, 0xbe, 0x5f, 0xab, 0x56, 0x2b, 0x5b, 0x5b, 0xdc, 0xfe, 0xbf, 0xb0, 0xfc, 0x92, - 0xec, 0x1f, 0xcf, 0x6b, 0x38, 0xc9, 0xf7, 0xb1, 0x58, 0x7e, 0x8f, 0xe9, 0xc8, 0x3b, 0x00, 0x37, - 0x7d, 0xaf, 0x7d, 0x9b, 0x46, 0x7b, 0x7e, 0x43, 0x7c, 0xfc, 0x99, 0xc7, 0x87, 0x8b, 0xe3, 0x1f, - 0xf9, 0x5e, 0xdb, 0x69, 0x21, 0x98, 0xb5, 0x3d, 0x46, 0xb2, 0xb5, 0xbf, 0x59, 0x4f, 0x2f, 0xfb, - 0xdc, 0xc0, 0x61, 0x38, 0xee, 0xe9, 0x6d, 0x3f, 0x65, 0xdb, 0x20, 0xd1, 0x48, 0x0b, 0xa6, 0x6b, - 0xdd, 0xdd, 0x5d, 0xca, 0x76, 0x76, 0xa1, 0xb7, 0x18, 0x11, 0x77, 0x5c, 0x15, 0x75, 0x81, 0xdf, - 0x47, 0xd8, 0x2d, 0x25, 0x5c, 0x7e, 0x8d, 0x4d, 0xe4, 0xef, 0x1e, 0x2e, 0x8a, 0x77, 0x37, 0x26, - 0xaa, 0x85, 0x92, 0x3e, 0xad, 0xb5, 0x48, 0xf2, 0x26, 0x77, 0x60, 0xe4, 0x86, 0x17, 0xad, 0x75, - 0xb7, 0x85, 0x3d, 0xfb, 0x0b, 0x7d, 0x16, 0x0d, 0x47, 0xe4, 0x8a, 0xdf, 0x5d, 0x2f, 0xda, 0xeb, - 0xea, 0x16, 0xc5, 0x82, 0x0d, 0xb9, 0x0f, 0xc5, 0x15, 0x2f, 0xa8, 0x37, 0xe9, 0x4a, 0x55, 0x9c, - 0xfd, 0xe7, 0xfa, 0xb0, 0x94, 0xa8, 0xbc, 0x5f, 0xea, 0xf8, 0xab, 0xee, 0xe9, 0xb2, 0x80, 0xc4, - 0x20, 0x7f, 0x3b, 0x07, 0xcf, 0xaa, 0xd6, 0x97, 0x77, 0x69, 0x3b, 0xba, 0xed, 0x46, 0xf5, 0x3d, - 0x1a, 0x88, 0x5e, 0x1a, 0xeb, 0xd7, 0x4b, 0x5f, 0x4a, 0xf5, 0xd2, 0x85, 0xb8, 0x97, 0x5c, 0xc6, - 0xcc, 0x69, 0x71, 0x6e, 0xe9, 0x3e, 0xeb, 0x57, 0x2b, 0x71, 0x00, 0x62, 0x4d, 0xbe, 0xf0, 0x87, - 0x7a, 0xa9, 0xcf, 0x07, 0xc7, 0xc8, 0xc2, 0x8e, 0x59, 0xfd, 0x36, 0xec, 0x79, 0x14, 0x94, 0xdc, - 0x92, 0xce, 0x23, 0x5c, 0x2a, 0x39, 0xdb, 0x87, 0x37, 0x77, 0x28, 0x99, 0xed, 0xe3, 0x26, 0xc6, - 0x47, 0x7b, 0xdd, 0xdd, 0x16, 0x82, 0xc8, 0x11, 0xa3, 0xbd, 0xee, 0xc6, 0xa3, 0xdd, 0x74, 0x93, - 0xa3, 0xbd, 0xee, 0x6e, 0x93, 0x15, 0xee, 0xf1, 0xc6, 0xdd, 0xa3, 0x9e, 0xef, 0xc7, 0x6d, 0x65, - 0x93, 0x9f, 0xcc, 0x19, 0x9e, 0x6f, 0x1f, 0xc2, 0x58, 0xad, 0xe3, 0xd6, 0x69, 0xd3, 0xdb, 0x89, - 0xc4, 0xd3, 0xce, 0x8b, 0x7d, 0x58, 0x29, 0x5c, 0xf1, 0x2c, 0x20, 0x7f, 0xea, 0xd7, 0x24, 0x85, - 0xc3, 0x5a, 0xb8, 0xb5, 0x79, 0x7b, 0x7e, 0xfa, 0xc8, 0x16, 0x6e, 0x6d, 0xde, 0x16, 0x32, 0x47, - 0xa7, 0x65, 0xc8, 0x1c, 0x9b, 0xb7, 0xad, 0x5f, 0x2d, 0xc0, 0xa9, 0x1e, 0x34, 0x64, 0x43, 0xee, - 0x51, 0x39, 0x43, 0xbd, 0xd8, 0x03, 0xfd, 0xd2, 0x91, 0xdb, 0xd6, 0x3a, 0x94, 0x56, 0x6f, 0xa1, - 0x70, 0xcb, 0x7e, 0xd2, 0xc6, 0x4a, 0x59, 0xee, 0xee, 0x67, 0x1f, 0x1f, 0x2e, 0x3e, 0x47, 0x1f, - 0xa0, 0x69, 0x90, 0xcb, 0x0b, 0x9d, 0xba, 0xe1, 0xbc, 0x96, 0xa2, 0x5c, 0xf8, 0xc1, 0x3c, 0x0c, - 0xe1, 0x49, 0x93, 0x08, 0xd9, 0x91, 0x3b, 0x56, 0xc8, 0x8e, 0xf7, 0x61, 0x62, 0xf5, 0x16, 0xbf, - 0x7a, 0xae, 0xb9, 0xe1, 0x9e, 0xd8, 0x07, 0xf1, 0xa5, 0x8d, 0x3e, 0x70, 0xc4, 0x4d, 0x75, 0xcf, - 0x35, 0x84, 0x3c, 0x83, 0x82, 0xdc, 0x85, 0x59, 0xde, 0x36, 0x6f, 0xc7, 0xab, 0x73, 0xcf, 0x7f, - 0xcf, 0x6d, 0x8a, 0x4d, 0xf1, 0xdc, 0xe3, 0xc3, 0xc5, 0x45, 0xfa, 0x00, 0x8d, 0x9e, 0x44, 0xb9, - 0x13, 0x22, 0x82, 0x6e, 0xfd, 0x94, 0x41, 0xaf, 0xbb, 0x23, 0xdb, 0x63, 0x58, 0x21, 0xab, 0x8d, - 0xd5, 0xcd, 0x70, 0x39, 0x92, 0xf5, 0x8f, 0x86, 0x61, 0xa1, 0xf7, 0x7e, 0x46, 0xbe, 0x6c, 0x0e, - 0xe0, 0xf9, 0x23, 0x77, 0xc0, 0xa3, 0xc7, 0xf0, 0x2b, 0x30, 0xb7, 0xda, 0x8e, 0x68, 0xd0, 0x09, - 0x3c, 0xe9, 0x80, 0xbe, 0xe6, 0x87, 0xd2, 0xc8, 0x0c, 0xad, 0xbd, 0xa8, 0x2a, 0x17, 0x5a, 0x42, - 0x34, 0x79, 0xd3, 0x58, 0x65, 0x72, 0x20, 0xab, 0x30, 0xa5, 0xc1, 0x9b, 0xdd, 0x5d, 0x71, 0x82, - 0xa3, 0x05, 0xa3, 0xce, 0xb3, 0xd9, 0xd5, 0x2d, 0x70, 0x12, 0x44, 0x0b, 0x3f, 0x5f, 0x10, 0xd3, - 0xe2, 0x1c, 0x14, 0x6a, 0xdd, 0x6d, 0x31, 0x1d, 0xb8, 0xa8, 0x6e, 0x6c, 0xeb, 0xac, 0x94, 0x7c, - 0x11, 0xc0, 0xa6, 0x1d, 0x3f, 0xf4, 0x22, 0x3f, 0x38, 0xd0, 0xfd, 0x18, 0x02, 0x05, 0x35, 0x2d, - 0x36, 0x25, 0x94, 0xac, 0xc1, 0x74, 0xfc, 0xeb, 0xce, 0x7e, 0x5b, 0xa8, 0x36, 0xc7, 0xb8, 0x4e, - 0x21, 0x26, 0x77, 0x7c, 0x56, 0xa6, 0x1f, 0x54, 0x09, 0x32, 0xb2, 0x04, 0xc5, 0xfb, 0x7e, 0xf0, - 0x60, 0x87, 0x0d, 0xd4, 0x50, 0x7c, 0x94, 0xee, 0x0b, 0x98, 0x7e, 0x64, 0x48, 0x3c, 0x36, 0xe7, - 0x57, 0xdb, 0x0f, 0xbd, 0xc0, 0x6f, 0xb7, 0x68, 0x3b, 0xd2, 0x5f, 0x21, 0x69, 0x0c, 0x36, 0x3c, - 0xc8, 0x62, 0x30, 0xbb, 0x39, 0x97, 0xeb, 0x91, 0x1f, 0x88, 0x27, 0x48, 0x3e, 0xdc, 0x0c, 0x60, - 0x0c, 0x37, 0x03, 0xb0, 0x4e, 0xb4, 0xe9, 0x8e, 0xd0, 0x9d, 0x63, 0x27, 0x06, 0x74, 0xc7, 0x70, - 0x8f, 0xa3, 0x3b, 0x4c, 0x14, 0xb0, 0xe9, 0x0e, 0x5e, 0xf7, 0x8d, 0xa8, 0x32, 0x3b, 0x29, 0x45, - 0x91, 0x40, 0xb3, 0x7e, 0x7b, 0xac, 0xe7, 0xbc, 0x65, 0x7b, 0xef, 0xf1, 0xe6, 0xed, 0xba, 0x3b, - 0xc0, 0xbc, 0x7d, 0x4d, 0xd9, 0x81, 0xea, 0x3e, 0xa1, 0x08, 0xd1, 0x37, 0x7f, 0x8e, 0xb3, 0xf0, - 0x0b, 0xc5, 0xe3, 0x4c, 0x22, 0xd1, 0x49, 0xf9, 0x41, 0x3b, 0xa9, 0x30, 0x50, 0x27, 0x91, 0x65, - 0x98, 0x54, 0x71, 0x89, 0x36, 0xdd, 0xc8, 0xd8, 0x9b, 0x54, 0x30, 0x29, 0xa7, 0xe3, 0x46, 0xfa, - 0xde, 0x64, 0x92, 0x90, 0xb7, 0x61, 0x5c, 0x18, 0x43, 0x23, 0x87, 0xe1, 0xd8, 0x1c, 0x4d, 0x5a, - 0x4e, 0x27, 0xe8, 0x75, 0x74, 0xb6, 0x24, 0x37, 0xbd, 0x0e, 0x6d, 0x7a, 0x6d, 0x5a, 0x43, 0xdd, - 0xb9, 0x98, 0x31, 0xb8, 0x24, 0x3b, 0xa2, 0xc4, 0xe1, 0x6a, 0x75, 0x43, 0x6b, 0x66, 0x10, 0x25, - 0x27, 0xeb, 0xe8, 0xb1, 0x26, 0x2b, 0xb7, 0x06, 0x09, 0xd6, 0xfd, 0x5d, 0x4f, 0xda, 0xbf, 0x49, - 0x6b, 0x90, 0xc0, 0x69, 0x32, 0x68, 0xc2, 0x1a, 0x84, 0xa3, 0x32, 0xb9, 0x9e, 0xfd, 0xa8, 0x56, - 0xc4, 0x3b, 0x0d, 0xca, 0xf5, 0x48, 0x64, 0x1a, 0x1d, 0x72, 0x24, 0x59, 0xcd, 0x6a, 0xcb, 0xf5, - 0x9a, 0xc2, 0xf5, 0x2f, 0xae, 0x86, 0x32, 0x68, 0xb2, 0x1a, 0x44, 0x25, 0x75, 0x98, 0xb0, 0xe9, - 0xce, 0x66, 0xe0, 0x47, 0xb4, 0x1e, 0xd1, 0x86, 0x90, 0x65, 0xa4, 0x38, 0xbf, 0xec, 0xfb, 0x5c, - 0x4e, 0x5b, 0x7e, 0xfd, 0xb7, 0x0f, 0x17, 0x73, 0xdf, 0x3d, 0x5c, 0x04, 0x06, 0xe2, 0x16, 0xad, - 0x8f, 0x0f, 0x17, 0x4f, 0xb1, 0xf1, 0xef, 0x48, 0x62, 0xfd, 0x88, 0xd1, 0x99, 0x92, 0xef, 0x67, - 0x9b, 0xae, 0xea, 0x92, 0xb8, 0xb2, 0x89, 0x1e, 0x95, 0xbd, 0x91, 0x59, 0xd9, 0xa2, 0xd6, 0xdb, - 0x99, 0x95, 0x66, 0x56, 0x42, 0xde, 0x81, 0xf1, 0x95, 0xea, 0x8a, 0xdf, 0xde, 0xf1, 0x76, 0x6b, - 0x6b, 0x65, 0x14, 0x88, 0x84, 0x35, 0x73, 0xdd, 0x73, 0xea, 0x08, 0x77, 0xc2, 0x3d, 0xd7, 0x70, - 0x6a, 0x89, 0xf1, 0xc9, 0x0d, 0x98, 0x92, 0x3f, 0x6d, 0xba, 0x73, 0xd7, 0xae, 0xa2, 0x1c, 0x24, - 0x4d, 0xc8, 0x15, 0x07, 0xd6, 0x11, 0xdd, 0x40, 0x97, 0x8f, 0x13, 0x64, 0x6c, 0x32, 0x56, 0x68, - 0xa7, 0xe9, 0x1f, 0xb0, 0xe6, 0x6d, 0x79, 0x34, 0x40, 0xc9, 0x47, 0x4c, 0xc6, 0x86, 0x2a, 0x71, - 0x22, 0xcf, 0xd8, 0x6e, 0x13, 0x44, 0x64, 0x03, 0x66, 0xc4, 0x14, 0xbf, 0xe7, 0x85, 0xde, 0xb6, - 0xd7, 0xf4, 0xa2, 0x03, 0x74, 0x33, 0x14, 0x52, 0x88, 0x5c, 0x17, 0x0f, 0x55, 0xa9, 0xc6, 0x2c, - 0x4d, 0x6a, 0xfd, 0x52, 0x1e, 0x9e, 0xeb, 0x27, 0xff, 0x93, 0x9a, 0xb9, 0x99, 0x5d, 0x18, 0xe0, - 0xce, 0x70, 0xf4, 0x76, 0xb6, 0x0a, 0x53, 0x77, 0x82, 0x5d, 0xb7, 0xed, 0x7d, 0x0b, 0xef, 0x75, - 0xca, 0x28, 0x06, 0x3b, 0xc3, 0xd7, 0x4a, 0xcc, 0xd9, 0x9e, 0x20, 0x5a, 0x78, 0x28, 0xb6, 0xb9, - 0x4f, 0xea, 0x5e, 0x71, 0x0d, 0xc6, 0x56, 0xfc, 0x76, 0x44, 0x1f, 0x45, 0x09, 0x2f, 0x40, 0x0e, - 0x4c, 0xba, 0x96, 0x48, 0x54, 0xeb, 0xff, 0xcb, 0xc3, 0x99, 0xbe, 0x02, 0x30, 0xd9, 0x32, 0x7b, - 0xed, 0xe2, 0x20, 0x52, 0xf3, 0xd1, 0xdd, 0xb6, 0x94, 0xb2, 0xdf, 0x38, 0xd2, 0x7a, 0x79, 0xe1, - 0xbf, 0xc9, 0x89, 0x4e, 0xfa, 0x1c, 0x8c, 0x62, 0x55, 0xaa, 0x8b, 0xb8, 0x6e, 0x08, 0x77, 0x61, - 0xcf, 0xd4, 0x0d, 0x71, 0x34, 0x72, 0x15, 0x8a, 0x2b, 0x6e, 0xb3, 0xa9, 0xf9, 0x48, 0xa2, 0x5c, - 0x5f, 0x47, 0x58, 0xc2, 0xdc, 0x47, 0x22, 0x92, 0x37, 0x01, 0xf8, 0xdf, 0xda, 0x59, 0x81, 0x9b, - 0xa5, 0x20, 0x4b, 0x1c, 0x17, 0x1a, 0x32, 0x46, 0x56, 0xab, 0xfb, 0xca, 0x99, 0x8b, 0x47, 0x56, - 0x63, 0x00, 0x23, 0xb2, 0x1a, 0x03, 0x58, 0xbf, 0x5c, 0x80, 0xe7, 0xfb, 0xdf, 0xe2, 0xc8, 0x5d, - 0x73, 0x08, 0x5e, 0x19, 0xe8, 0xee, 0x77, 0xf4, 0x18, 0xc8, 0x38, 0x85, 0xbc, 0x43, 0x2e, 0xa4, - 0x8d, 0x8c, 0x3f, 0x3e, 0x5c, 0xd4, 0x6c, 0xc8, 0x6e, 0xfa, 0x5e, 0x5b, 0x7b, 0x29, 0xf8, 0x26, - 0x40, 0x2d, 0x72, 0x23, 0xaf, 0x7e, 0xf3, 0xfe, 0x2d, 0xe9, 0xc6, 0x7f, 0x6d, 0xb0, 0x96, 0xc5, - 0x74, 0x7c, 0x5f, 0x11, 0xfe, 0x0d, 0x08, 0x75, 0x3e, 0xda, 0x7f, 0x60, 0xdc, 0x53, 0x63, 0xe4, - 0x85, 0x2f, 0x41, 0x29, 0x49, 0x4a, 0xce, 0xc3, 0x10, 0x36, 0x40, 0xb3, 0x94, 0x4e, 0x70, 0xc0, - 0xf2, 0x85, 0xdb, 0x62, 0xee, 0xac, 0xc2, 0x94, 0x78, 0x9e, 0x36, 0x35, 0x62, 0xb8, 0x5e, 0xe5, - 0xeb, 0x76, 0x5a, 0x2b, 0x96, 0x20, 0xb2, 0xfe, 0x2c, 0x07, 0xa7, 0x7b, 0xde, 0x8f, 0xc9, 0xa6, - 0x39, 0x60, 0x2f, 0x1d, 0x75, 0xa1, 0x3e, 0x72, 0xac, 0x16, 0x7e, 0x44, 0xce, 0xfd, 0x77, 0x61, - 0xa2, 0xd6, 0xdd, 0x4e, 0x5e, 0xb2, 0xb8, 0x53, 0xb7, 0x06, 0xd7, 0x4f, 0x30, 0x1d, 0x9f, 0x7d, - 0xbf, 0x7c, 0x7f, 0x17, 0xe6, 0x15, 0xfc, 0xe2, 0x87, 0xdf, 0xaf, 0xdc, 0xa3, 0xd0, 0x01, 0x4f, - 0xef, 0xc4, 0x04, 0x91, 0xf5, 0x8b, 0xf9, 0xec, 0xdb, 0x2a, 0xbb, 0x6b, 0x1f, 0xe3, 0xb6, 0x7a, - 0x63, 0x65, 0xf3, 0xe8, 0x6f, 0xff, 0xcf, 0xe5, 0xb7, 0xe3, 0x73, 0xa4, 0xd8, 0xf1, 0xa4, 0x7a, - 0x4f, 0x3c, 0x47, 0xca, 0xdd, 0x31, 0x34, 0x9f, 0x23, 0x25, 0x32, 0x79, 0x03, 0xc6, 0xd6, 0x7d, - 0xee, 0x18, 0x2b, 0xbf, 0x98, 0xfb, 0x0f, 0x49, 0xa0, 0xbe, 0x3d, 0x2a, 0x4c, 0x76, 0xb7, 0x30, - 0x07, 0x5e, 0x1a, 0x79, 0xe3, 0xdd, 0x22, 0x31, 0x5d, 0x4c, 0x25, 0x98, 0x49, 0x66, 0xfd, 0x48, - 0x1e, 0xa6, 0xf8, 0xe4, 0xe5, 0x4a, 0xda, 0xa7, 0x56, 0x01, 0xfe, 0x96, 0xa1, 0x00, 0x97, 0xf1, - 0x1f, 0xf4, 0x4f, 0x1b, 0x48, 0xfd, 0xbd, 0x07, 0x24, 0x4d, 0x43, 0x6c, 0x98, 0xd0, 0xa1, 0xfd, - 0x35, 0xdf, 0x57, 0xe2, 0x50, 0x21, 0x62, 0xef, 0xc0, 0xe7, 0x87, 0xd0, 0x36, 0x78, 0x58, 0x7f, - 0x33, 0x0f, 0x93, 0xda, 0x73, 0xe5, 0x53, 0xdb, 0xf1, 0x5f, 0x32, 0x3a, 0x7e, 0x5e, 0x19, 0x26, - 0xab, 0x2f, 0x1b, 0xa8, 0xdf, 0xbb, 0x30, 0x93, 0x22, 0x49, 0xbe, 0xfa, 0xe6, 0x06, 0x79, 0xf5, - 0x7d, 0x2d, 0x1d, 0x77, 0x80, 0x87, 0xef, 0x54, 0xce, 0xac, 0x7a, 0xa0, 0x83, 0x1f, 0xcb, 0xc3, - 0x9c, 0xf8, 0x85, 0x81, 0x7a, 0xf8, 0xee, 0xfd, 0xd4, 0x8e, 0x45, 0xd9, 0x18, 0x8b, 0x45, 0x73, - 0x2c, 0xb4, 0x0f, 0xec, 0x3d, 0x24, 0xd6, 0x5f, 0x03, 0x98, 0xef, 0x45, 0x30, 0xb0, 0xff, 0x4f, - 0x6c, 0x5d, 0x9d, 0x1f, 0xc0, 0xba, 0x7a, 0x1d, 0x4a, 0x58, 0x95, 0x08, 0xc5, 0x11, 0xb2, 0x3b, - 0x40, 0x21, 0x16, 0xb8, 0x79, 0x34, 0x25, 0x11, 0x1a, 0x24, 0x4c, 0x5c, 0x02, 0x52, 0x94, 0xe4, - 0xe7, 0x73, 0x30, 0x85, 0xc0, 0xd5, 0x87, 0xb4, 0x1d, 0x21, 0xb3, 0x21, 0x61, 0x0c, 0xac, 0xf4, - 0xe3, 0xb5, 0x28, 0xf0, 0xda, 0xbb, 0x42, 0x41, 0xbe, 0x2d, 0x14, 0xe4, 0x6f, 0x73, 0xc5, 0xfe, - 0xa5, 0xba, 0xdf, 0xba, 0xbc, 0x1b, 0xb8, 0x0f, 0x3d, 0xfe, 0x12, 0xef, 0x36, 0x2f, 0xc7, 0xd1, - 0xa3, 0x3b, 0x5e, 0x22, 0x1e, 0xb4, 0x60, 0x85, 0x8f, 0x0f, 0xbc, 0xa1, 0x14, 0xab, 0x4d, 0xde, - 0x55, 0xcc, 0x16, 0x91, 0xef, 0x83, 0x53, 0xdc, 0xcf, 0x9e, 0x89, 0xbc, 0x5e, 0xbb, 0xeb, 0x77, - 0xc3, 0x65, 0xb7, 0xfe, 0x80, 0x9d, 0x7b, 0xdc, 0xa1, 0x01, 0xbf, 0xbc, 0xae, 0x0a, 0x9d, 0x6d, - 0x5e, 0x6a, 0x38, 0x70, 0x65, 0x33, 0x20, 0x6b, 0x30, 0xc3, 0x8b, 0xca, 0xdd, 0xc8, 0xaf, 0xd5, - 0xdd, 0xa6, 0xd7, 0xde, 0xc5, 0x3b, 0x75, 0x91, 0x9f, 0xc7, 0x6e, 0x37, 0xf2, 0x9d, 0x90, 0xc3, - 0xf5, 0xab, 0x4b, 0x8a, 0x88, 0x54, 0x61, 0xda, 0xa6, 0x6e, 0xe3, 0xb6, 0xfb, 0x68, 0xc5, 0xed, - 0xb8, 0x75, 0x76, 0x11, 0x2a, 0xe2, 0x63, 0x12, 0xde, 0xcd, 0x02, 0xea, 0x36, 0x9c, 0x96, 0xfb, - 0xc8, 0xa9, 0x8b, 0x42, 0x53, 0x87, 0x65, 0xd0, 0x29, 0x56, 0x5e, 0x5b, 0xb1, 0x1a, 0x4b, 0xb2, - 0xf2, 0xda, 0xbd, 0x59, 0xc5, 0x74, 0x92, 0xd5, 0x96, 0x1b, 0xec, 0xd2, 0x88, 0x1b, 0xb2, 0xb1, - 0xfb, 0x78, 0x4e, 0x63, 0x15, 0x61, 0x99, 0x83, 0x46, 0x6d, 0x49, 0x56, 0x1a, 0x1d, 0x9b, 0x79, - 0xf7, 0x03, 0x2f, 0xa2, 0xfa, 0x17, 0x8e, 0x63, 0xb3, 0xb0, 0xff, 0xd1, 0x04, 0xb0, 0xd7, 0x27, - 0xa6, 0x28, 0x63, 0x6e, 0xda, 0x47, 0x4e, 0xa4, 0xb8, 0x65, 0x7f, 0x65, 0x8a, 0x52, 0x71, 0xd3, - 0xbf, 0x73, 0x12, 0xbf, 0x53, 0xe3, 0xd6, 0xe3, 0x43, 0x53, 0x94, 0x64, 0x83, 0x75, 0x5a, 0x44, - 0xdb, 0x6c, 0x46, 0x0b, 0x43, 0xbe, 0x29, 0x6c, 0xda, 0x8b, 0xc2, 0x1a, 0xa5, 0x14, 0xc8, 0x62, - 0x27, 0xc3, 0xac, 0x2f, 0x49, 0x4c, 0xfe, 0x12, 0x4c, 0xdf, 0x0d, 0xe9, 0xf5, 0xea, 0x66, 0x4d, - 0xba, 0xe5, 0xe3, 0x6d, 0x7b, 0x6a, 0xe9, 0xca, 0x11, 0x9b, 0xce, 0x25, 0x9d, 0x06, 0x83, 0x38, - 0xf3, 0x71, 0xeb, 0x86, 0xd4, 0xd9, 0xf1, 0x3a, 0xa1, 0x8a, 0x71, 0xa2, 0x8f, 0x5b, 0xa2, 0x2a, - 0x6b, 0x0d, 0x66, 0x52, 0x6c, 0xc8, 0x14, 0x00, 0x03, 0x3a, 0x77, 0x37, 0x6a, 0xab, 0x5b, 0xa5, - 0x67, 0x48, 0x09, 0x26, 0xf0, 0xf7, 0xea, 0x46, 0x79, 0x79, 0x7d, 0xb5, 0x52, 0xca, 0x91, 0x19, - 0x98, 0x44, 0x48, 0xa5, 0x5a, 0xe3, 0xa0, 0x3c, 0x0f, 0xe1, 0x69, 0x97, 0xf8, 0xd2, 0x8d, 0xd8, - 0x02, 0xc0, 0x33, 0xc5, 0xfa, 0x3b, 0x79, 0x38, 0x2d, 0x8f, 0x15, 0x1a, 0xed, 0xfb, 0xc1, 0x03, - 0xaf, 0xbd, 0xfb, 0x94, 0x9f, 0x0e, 0xd7, 0x8d, 0xd3, 0xe1, 0xc5, 0xc4, 0x49, 0x9d, 0xf8, 0xca, - 0x3e, 0x47, 0xc4, 0xaf, 0x8f, 0xc1, 0x99, 0xbe, 0x54, 0xe4, 0xcb, 0xec, 0x34, 0xf7, 0x68, 0x3b, - 0xaa, 0x36, 0x9a, 0x74, 0xcb, 0x6b, 0x51, 0xbf, 0x1b, 0x09, 0xc3, 0xd1, 0x73, 0x78, 0xc1, 0xc5, - 0x42, 0xc7, 0x6b, 0x34, 0xa9, 0x13, 0xf1, 0x62, 0x63, 0xba, 0xa5, 0xa9, 0x19, 0x4b, 0x15, 0x50, - 0xbe, 0xda, 0x8e, 0x68, 0xf0, 0x10, 0x8d, 0x53, 0x14, 0xcb, 0x07, 0x94, 0x76, 0x1c, 0x97, 0x95, - 0x3a, 0x9e, 0x28, 0x36, 0x59, 0xa6, 0xa8, 0xc9, 0x75, 0x8d, 0xe5, 0x0a, 0x13, 0x87, 0x6f, 0xbb, - 0x8f, 0xc4, 0x6b, 0xb9, 0x88, 0xcf, 0xa4, 0x58, 0x72, 0x9f, 0xa3, 0x96, 0xfb, 0xc8, 0x4e, 0x93, - 0x90, 0xaf, 0xc1, 0x09, 0x71, 0x00, 0x09, 0x9f, 0x51, 0xf9, 0xc5, 0xdc, 0x23, 0xf5, 0xe5, 0xc7, - 0x87, 0x8b, 0xa7, 0x64, 0x64, 0x2b, 0xe9, 0x25, 0x9c, 0xf5, 0xd5, 0xd9, 0x5c, 0xc8, 0x16, 0x3b, - 0x90, 0x13, 0xdd, 0x71, 0x9b, 0x86, 0xa1, 0xbb, 0x2b, 0x5f, 0xd6, 0xb9, 0x95, 0xbd, 0xd6, 0x99, - 0x4e, 0x8b, 0x97, 0xdb, 0x3d, 0x29, 0xc9, 0x1a, 0x4c, 0xdd, 0xa7, 0xdb, 0xfa, 0xf8, 0x8c, 0xa8, - 0xad, 0xaa, 0xb4, 0x4f, 0xb7, 0x7b, 0x0f, 0x4e, 0x82, 0x8e, 0x78, 0xa8, 0x30, 0x7b, 0x74, 0xb0, - 0xee, 0x85, 0x11, 0x6d, 0xd3, 0x00, 0x63, 0x11, 0x8c, 0xe2, 0x66, 0x30, 0x1f, 0x4b, 0xc8, 0x66, - 0xf9, 0xf2, 0x0b, 0x8f, 0x0f, 0x17, 0xcf, 0x70, 0xaf, 0x92, 0xa6, 0x80, 0x3b, 0x89, 0x70, 0xec, - 0x69, 0xae, 0xe4, 0x1b, 0x30, 0x6d, 0xfb, 0xdd, 0xc8, 0x6b, 0xef, 0xd6, 0xa2, 0xc0, 0x8d, 0xe8, - 0x2e, 0x3f, 0x90, 0xe2, 0xa0, 0x07, 0x89, 0x52, 0xf1, 0xd6, 0xc2, 0x81, 0x4e, 0x28, 0xa0, 0xc6, - 0x89, 0x60, 0x12, 0x90, 0xaf, 0xc3, 0x14, 0xf7, 0x16, 0x54, 0x15, 0x8c, 0x19, 0xa1, 0x64, 0xcd, - 0xc2, 0x7b, 0x57, 0xf8, 0x05, 0x95, 0x7b, 0x1d, 0x66, 0x55, 0x90, 0xe0, 0x46, 0x3e, 0x14, 0x9d, - 0xb5, 0xe9, 0xb5, 0x77, 0xd5, 0x34, 0x06, 0xec, 0xf9, 0xd7, 0xe3, 0x2e, 0xe9, 0xb0, 0xe6, 0xca, - 0x69, 0xdc, 0xc3, 0x52, 0x23, 0xcd, 0x87, 0x44, 0x70, 0xa6, 0x1c, 0x86, 0x5e, 0x18, 0x09, 0xf3, - 0xea, 0xd5, 0x47, 0xb4, 0xde, 0x65, 0xc8, 0xf7, 0xfd, 0xe0, 0x01, 0x0d, 0xb8, 0x79, 0xdf, 0xf0, - 0xf2, 0xa5, 0xc7, 0x87, 0x8b, 0xaf, 0xb8, 0x88, 0xe8, 0x08, 0x8b, 0x6c, 0x87, 0x4a, 0x54, 0x67, - 0x9f, 0xe3, 0x6a, 0xdf, 0xd0, 0x9f, 0x29, 0xf9, 0x3a, 0x9c, 0x5c, 0x71, 0x43, 0x5a, 0x6d, 0x87, - 0xb4, 0x1d, 0x7a, 0x91, 0xf7, 0x90, 0x8a, 0x4e, 0xc5, 0xc3, 0xaf, 0x88, 0x81, 0xeb, 0xad, 0xba, - 0x1b, 0xb2, 0x85, 0xa9, 0x50, 0x1c, 0x31, 0x28, 0x5a, 0x35, 0x3d, 0xb8, 0x10, 0x1b, 0xa6, 0x6a, - 0xb5, 0xb5, 0x8a, 0xe7, 0xaa, 0x75, 0x35, 0x89, 0xfd, 0xf5, 0x0a, 0xde, 0x75, 0xc3, 0x3d, 0xa7, - 0xe1, 0xb9, 0x6a, 0x41, 0xf5, 0xe8, 0xac, 0x04, 0x07, 0xeb, 0x30, 0x07, 0xa5, 0xe4, 0x50, 0x92, - 0xaf, 0xc0, 0x18, 0x37, 0x73, 0xa0, 0xe1, 0x9e, 0x70, 0x9e, 0x93, 0xaf, 0xe6, 0x0a, 0x6e, 0x12, - 0x09, 0x77, 0x07, 0x6e, 0x44, 0x41, 0xf5, 0x37, 0x60, 0x74, 0x77, 0x90, 0x44, 0xa4, 0x01, 0x13, - 0x7c, 0xb4, 0x28, 0x46, 0x3c, 0x11, 0xd6, 0x6e, 0x2f, 0xe8, 0xab, 0x43, 0x14, 0x25, 0xf8, 0xa3, - 0x1a, 0x5d, 0xcc, 0x09, 0x8e, 0x60, 0x54, 0x61, 0x70, 0x5d, 0x06, 0x28, 0x4a, 0x42, 0xeb, 0x34, - 0x9c, 0xea, 0xd1, 0x66, 0xeb, 0x21, 0x3e, 0xad, 0xf5, 0xa8, 0x91, 0x7c, 0x05, 0xe6, 0x90, 0x70, - 0xc5, 0x6f, 0xb7, 0x69, 0x3d, 0xc2, 0xed, 0x48, 0xaa, 0xa3, 0x0a, 0xfc, 0xfd, 0x96, 0x7f, 0x6f, - 0x5d, 0x21, 0x38, 0x49, 0xad, 0x54, 0x26, 0x07, 0xeb, 0xa7, 0xf3, 0x30, 0x2f, 0x76, 0x38, 0x9b, - 0xd6, 0xfd, 0xa0, 0xf1, 0xf4, 0x9f, 0xa8, 0xab, 0xc6, 0x89, 0x7a, 0x4e, 0x79, 0x4b, 0x67, 0x7d, - 0x64, 0x9f, 0x03, 0xf5, 0x17, 0x73, 0xf0, 0x5c, 0x3f, 0x22, 0xd6, 0x3b, 0x2a, 0xc2, 0xcb, 0x58, - 0x2a, 0x92, 0x4b, 0x07, 0x66, 0x71, 0x40, 0x57, 0xf6, 0x68, 0xfd, 0x41, 0xb8, 0xe6, 0x87, 0x11, - 0x1a, 0xdc, 0xe6, 0x7b, 0x3c, 0xfe, 0xbc, 0x96, 0xf9, 0xf8, 0x73, 0x92, 0xcf, 0xb2, 0x3a, 0xf2, - 0xe0, 0x31, 0x68, 0x1e, 0xd0, 0x83, 0xd0, 0xce, 0x62, 0x8d, 0x86, 0x93, 0xe5, 0x6e, 0xb4, 0xb7, - 0x19, 0xd0, 0x1d, 0x1a, 0xd0, 0x76, 0x9d, 0x7e, 0x8f, 0x19, 0x4e, 0x9a, 0x1f, 0x37, 0x90, 0x06, - 0xe3, 0xdf, 0x98, 0x84, 0xb9, 0x2c, 0x32, 0xd6, 0x2f, 0xda, 0xa5, 0x39, 0x99, 0x57, 0xe7, 0xaf, - 0xe6, 0x60, 0xa2, 0x46, 0xeb, 0x7e, 0xbb, 0x71, 0x1d, 0x9f, 0xd8, 0x45, 0xef, 0x38, 0x5c, 0x68, - 0x60, 0x70, 0x67, 0x27, 0xf1, 0xf6, 0xfe, 0xf1, 0xe1, 0xe2, 0xfb, 0x83, 0xdd, 0x55, 0xeb, 0x3e, - 0x7a, 0x3c, 0x47, 0x18, 0xf7, 0x55, 0x55, 0x81, 0xda, 0x72, 0xa3, 0x52, 0xb2, 0x0c, 0x93, 0x62, - 0xb9, 0xfa, 0x7a, 0x80, 0x1f, 0xee, 0x50, 0x2e, 0x0b, 0x52, 0x41, 0xd9, 0x0c, 0x12, 0x72, 0x15, - 0x0a, 0x77, 0x97, 0xae, 0x8b, 0x31, 0x90, 0x91, 0x73, 0xef, 0x2e, 0x5d, 0x47, 0x75, 0x18, 0xbb, - 0x62, 0x4c, 0x76, 0x97, 0x8c, 0x57, 0xef, 0xbb, 0x4b, 0xd7, 0xc9, 0x5f, 0x81, 0x13, 0x15, 0x2f, - 0x14, 0x55, 0x70, 0x13, 0xde, 0x06, 0x3a, 0xae, 0x8c, 0xf4, 0x98, 0xbd, 0x5f, 0xc8, 0x9c, 0xbd, - 0x2f, 0x34, 0x14, 0x13, 0x87, 0xdb, 0x07, 0x37, 0x92, 0x81, 0x8c, 0xb2, 0xeb, 0x21, 0x1f, 0xc1, - 0x14, 0xaa, 0x73, 0xd1, 0xaa, 0x19, 0x63, 0x47, 0x8e, 0xf6, 0xa8, 0xf9, 0x73, 0x99, 0x35, 0x2f, - 0xa0, 0x76, 0xd8, 0x41, 0xdb, 0x68, 0x8c, 0x33, 0x69, 0xdc, 0xfa, 0x0d, 0xce, 0xe4, 0x26, 0x4c, - 0x0b, 0xf1, 0xeb, 0xce, 0xce, 0xd6, 0x1e, 0xad, 0xb8, 0x07, 0xe2, 0xc1, 0x1a, 0x6f, 0x74, 0x42, - 0x66, 0x73, 0xfc, 0x1d, 0x27, 0xda, 0xa3, 0x4e, 0xc3, 0x35, 0x04, 0x95, 0x04, 0x21, 0xf9, 0x7e, - 0x18, 0x5f, 0xf7, 0xeb, 0x4c, 0xf2, 0xc6, 0x9d, 0x81, 0xbf, 0x61, 0x7f, 0x80, 0x99, 0x5b, 0x38, - 0x38, 0x21, 0x4e, 0x7d, 0x7c, 0xb8, 0xf8, 0xd6, 0x71, 0x27, 0x8d, 0x56, 0x81, 0xad, 0xd7, 0x46, - 0x56, 0xa0, 0x78, 0x9f, 0x6e, 0xb3, 0xaf, 0x4d, 0x66, 0x75, 0x90, 0x60, 0x61, 0xa2, 0x22, 0x7e, - 0x19, 0x26, 0x2a, 0x02, 0x46, 0x02, 0x98, 0xc1, 0xfe, 0xd9, 0x74, 0xc3, 0x70, 0xdf, 0x0f, 0x1a, - 0x18, 0xbe, 0xb7, 0xd7, 0xf3, 0xf8, 0x52, 0x66, 0xe7, 0x3f, 0xc7, 0x3b, 0xbf, 0xa3, 0x71, 0xd0, - 0x05, 0xc8, 0x14, 0x7b, 0xf2, 0x0d, 0x98, 0xb2, 0xe9, 0x37, 0xbb, 0x5e, 0x40, 0x6f, 0x5f, 0x2f, - 0xe3, 0xaa, 0x9c, 0x30, 0xdc, 0x7f, 0xcc, 0x42, 0x2e, 0xa5, 0x06, 0x1c, 0x26, 0x35, 0x50, 0x4e, - 0x6b, 0xc7, 0x35, 0x5f, 0x20, 0x74, 0x12, 0xb2, 0x09, 0xe3, 0x15, 0xfa, 0xd0, 0xab, 0x53, 0x74, - 0x51, 0x10, 0xe6, 0x81, 0x2a, 0x2c, 0x7d, 0x5c, 0xc2, 0x75, 0x31, 0x0d, 0x04, 0x70, 0x87, 0x07, - 0xd3, 0x02, 0x4d, 0x21, 0x92, 0x6b, 0x50, 0xa8, 0x56, 0x36, 0x85, 0x75, 0xa0, 0xb4, 0xfa, 0xaf, - 0x36, 0x36, 0x65, 0x10, 0x6f, 0x34, 0x28, 0xf1, 0x1a, 0x86, 0x6d, 0x61, 0xb5, 0xb2, 0x49, 0x76, - 0x60, 0x12, 0x3b, 0x60, 0x8d, 0xba, 0xbc, 0x6f, 0xa7, 0x7b, 0xf4, 0xed, 0xa5, 0xcc, 0xbe, 0x9d, - 0xe7, 0x7d, 0xbb, 0x27, 0xa8, 0x8d, 0xa8, 0xc4, 0x3a, 0x5b, 0x26, 0xd2, 0x8a, 0x48, 0xe9, 0x32, - 0x96, 0xee, 0xd6, 0x3a, 0x3e, 0x98, 0x0b, 0x91, 0x56, 0x06, 0x56, 0x57, 0xc1, 0x7d, 0x7b, 0x1a, - 0x1f, 0xa7, 0xf9, 0x90, 0x2f, 0xc1, 0xd0, 0x9d, 0x07, 0x91, 0x3b, 0x3f, 0x63, 0xf4, 0x23, 0x03, - 0xc9, 0xcf, 0x47, 0x2d, 0xa4, 0xff, 0xc0, 0x08, 0x75, 0x81, 0x34, 0x64, 0x09, 0x46, 0x37, 0xab, - 0xf7, 0x6a, 0x4d, 0x3f, 0x9a, 0x27, 0xea, 0x9e, 0x44, 0x3a, 0xde, 0x43, 0x27, 0x6c, 0xfa, 0x66, - 0xb6, 0x05, 0x89, 0xc8, 0x86, 0x6f, 0xcd, 0x0d, 0x1a, 0xfb, 0x6e, 0x80, 0xbe, 0x65, 0xb3, 0x46, - 0xb5, 0x5a, 0x09, 0x1f, 0xbe, 0x3d, 0x01, 0x48, 0x38, 0x9c, 0xe9, 0x2c, 0xc8, 0xf7, 0xc1, 0xe9, - 0xd0, 0xdb, 0x6d, 0xbb, 0x51, 0x37, 0xa0, 0x8e, 0xdb, 0xdc, 0xf5, 0x03, 0x2f, 0xda, 0x6b, 0x39, - 0x61, 0xd7, 0x8b, 0xe8, 0xfc, 0x9c, 0x91, 0x8b, 0xad, 0x26, 0xf1, 0xca, 0x12, 0xad, 0xc6, 0xb0, - 0xec, 0x53, 0x61, 0x76, 0x81, 0xd0, 0x5e, 0xcc, 0x88, 0x29, 0x28, 0xba, 0xed, 0xf6, 0xf5, 0xb2, - 0xf5, 0x9f, 0xe4, 0x70, 0x33, 0x26, 0xaf, 0xa0, 0xa7, 0xbd, 0x7a, 0x90, 0x46, 0x3d, 0xac, 0xdb, - 0x49, 0xc4, 0xb6, 0xe4, 0x28, 0xe4, 0x35, 0x18, 0xb9, 0xee, 0xd6, 0x69, 0x24, 0x1f, 0xa2, 0x10, - 0x79, 0x07, 0x21, 0xba, 0xd2, 0x96, 0xe3, 0x30, 0x39, 0x91, 0x4f, 0xd2, 0x72, 0x9c, 0x42, 0x6f, - 0xa5, 0x2c, 0xdf, 0xa1, 0x50, 0x4e, 0x14, 0x93, 0x5b, 0xcb, 0xb1, 0x97, 0xb0, 0xd9, 0xcc, 0xe4, - 0x60, 0xfd, 0x71, 0x2e, 0xde, 0x5d, 0xc8, 0xcb, 0x30, 0x64, 0x6f, 0xaa, 0xf6, 0x73, 0x1f, 0xae, - 0x44, 0xf3, 0x11, 0x81, 0x7c, 0x08, 0x27, 0x34, 0x3e, 0x29, 0x03, 0xd2, 0x97, 0xd0, 0xc5, 0x48, - 0x6b, 0x49, 0xb6, 0x15, 0x69, 0x36, 0x0f, 0x14, 0x8a, 0xe3, 0x82, 0x0a, 0x6d, 0x7b, 0x9c, 0xb7, - 0xf6, 0xb1, 0x3a, 0xef, 0x06, 0x22, 0x24, 0x3f, 0x36, 0x8b, 0x03, 0xf7, 0x30, 0xb2, 0x7e, 0x2d, - 0x67, 0xec, 0x1a, 0x2a, 0x57, 0x59, 0xee, 0x88, 0x5c, 0x65, 0x6f, 0x02, 0x94, 0xbb, 0x91, 0xbf, - 0xda, 0x0e, 0xfc, 0x26, 0xd7, 0x86, 0x88, 0xf0, 0xae, 0xa8, 0xe3, 0xa5, 0x08, 0x36, 0x1c, 0x21, - 0x14, 0x72, 0xa6, 0xad, 0x6d, 0xe1, 0x93, 0xda, 0xda, 0x5a, 0xbf, 0x93, 0x33, 0xd6, 0x0d, 0x93, - 0xf6, 0xe4, 0xd2, 0xd3, 0x4c, 0x21, 0xd2, 0x4b, 0x2f, 0x5e, 0x78, 0xff, 0x7a, 0x0e, 0x4e, 0x72, - 0xa3, 0xd5, 0x8d, 0x6e, 0x6b, 0x9b, 0x06, 0xf7, 0xdc, 0xa6, 0xd7, 0xe0, 0x7e, 0x74, 0x5c, 0x90, - 0xbd, 0x90, 0x5e, 0x84, 0xd9, 0xf8, 0xfc, 0xc2, 0xc9, 0x8d, 0x68, 0x9d, 0x36, 0x16, 0x3a, 0x0f, - 0x55, 0xa9, 0x7e, 0xe1, 0xcc, 0xa6, 0xb7, 0x7e, 0x29, 0x07, 0x2f, 0x1c, 0x59, 0x0b, 0xb9, 0x0c, - 0xa3, 0x32, 0xae, 0x6e, 0x0e, 0x3b, 0x1e, 0x0d, 0xc8, 0xd2, 0x31, 0x75, 0x25, 0x16, 0xf9, 0x2a, - 0x9c, 0xd0, 0x59, 0x6d, 0x05, 0xae, 0xa7, 0x47, 0xaf, 0xcd, 0x68, 0x75, 0xc4, 0x50, 0x92, 0x52, - 0x57, 0x36, 0x13, 0xeb, 0xff, 0xc9, 0x69, 0xd9, 0x0b, 0x9f, 0x52, 0x59, 0xfc, 0x9a, 0x21, 0x8b, - 0xcb, 0x18, 0x47, 0xea, 0xab, 0x58, 0x59, 0xe6, 0xfd, 0x69, 0x5a, 0x33, 0x84, 0x44, 0xc0, 0xb7, - 0xf3, 0x30, 0x7e, 0x37, 0xa4, 0x01, 0x7f, 0x90, 0xfd, 0xde, 0x8a, 0x65, 0xa3, 0xbe, 0x6b, 0xa0, - 0x68, 0x23, 0x7f, 0x90, 0x43, 0x45, 0xbd, 0x4e, 0xc1, 0x7a, 0x43, 0xcb, 0x58, 0x82, 0xbd, 0x81, - 0xb9, 0x4a, 0x10, 0xca, 0x23, 0x92, 0xac, 0x9b, 0xc9, 0x8b, 0x30, 0x83, 0xd5, 0x3a, 0x79, 0x1f, - 0x86, 0xef, 0xa2, 0xda, 0xd1, 0xf4, 0x99, 0x56, 0xfc, 0xb1, 0x90, 0x6f, 0xd2, 0x5d, 0xf6, 0xa7, - 0x7e, 0xc6, 0x60, 0x19, 0xa9, 0xc1, 0xe8, 0x4a, 0x40, 0x31, 0x17, 0xe1, 0xd0, 0xe0, 0x1e, 0x7f, - 0x75, 0x4e, 0x92, 0xf4, 0xf8, 0x13, 0x9c, 0xac, 0x9f, 0xca, 0x03, 0x89, 0xbf, 0x11, 0x03, 0xef, - 0x87, 0x4f, 0xed, 0xa0, 0xbf, 0x67, 0x0c, 0xfa, 0x99, 0xd4, 0xa0, 0xf3, 0xcf, 0x1b, 0x68, 0xec, - 0x7f, 0x23, 0x07, 0x27, 0xb3, 0x09, 0xc9, 0x39, 0x18, 0xb9, 0xb3, 0xb5, 0x29, 0xdd, 0xee, 0xc5, - 0xa7, 0xf8, 0x1d, 0xbc, 0xf3, 0xdb, 0xa2, 0x88, 0xbc, 0x0e, 0x23, 0x5f, 0xb6, 0x57, 0xd8, 0x39, - 0xa4, 0x45, 0x88, 0xfd, 0x66, 0xe0, 0xd4, 0xcd, 0xa3, 0x48, 0x20, 0xe9, 0x63, 0x5b, 0x78, 0x62, - 0x63, 0xfb, 0x63, 0x79, 0x98, 0x2e, 0xd7, 0xeb, 0x34, 0x0c, 0x99, 0x90, 0x43, 0xc3, 0xe8, 0xa9, - 0x1d, 0xd8, 0x6c, 0x87, 0x7a, 0xe3, 0xdb, 0x06, 0x1a, 0xd5, 0xdf, 0xca, 0xc1, 0x09, 0x49, 0xf5, - 0xd0, 0xa3, 0xfb, 0x5b, 0x7b, 0x01, 0x0d, 0xf7, 0xfc, 0x66, 0x63, 0xe0, 0x30, 0xd4, 0x4c, 0xd0, - 0xc3, 0xd8, 0x92, 0xfa, 0xeb, 0xfc, 0x0e, 0x42, 0x0c, 0x41, 0x8f, 0xc7, 0x9f, 0xbc, 0x0c, 0xa3, - 0xe5, 0x4e, 0x27, 0xf0, 0x1f, 0xf2, 0x65, 0x3f, 0x29, 0x1c, 0x20, 0x39, 0xc8, 0x70, 0x98, 0xe4, - 0x20, 0xd6, 0x8c, 0x0a, 0x6d, 0xf3, 0x08, 0x40, 0x93, 0xbc, 0x19, 0x0d, 0xda, 0xd6, 0xe5, 0x63, - 0x2c, 0xb7, 0x6a, 0x40, 0x36, 0x03, 0xbf, 0xe5, 0x47, 0xb4, 0xc1, 0xbf, 0x07, 0xfd, 0x4c, 0x8f, - 0x0c, 0x5d, 0xb2, 0xe5, 0x45, 0x4d, 0x23, 0x74, 0x49, 0xc4, 0x00, 0x36, 0x87, 0x5b, 0xff, 0xd7, - 0x30, 0x4c, 0xe8, 0xbd, 0x43, 0x2c, 0x1e, 0x5b, 0xd6, 0x0f, 0x74, 0x67, 0x67, 0x17, 0x21, 0xb6, - 0x28, 0x89, 0x23, 0x05, 0xe4, 0x8f, 0x8c, 0x14, 0x70, 0x1f, 0x26, 0x37, 0x03, 0xbf, 0xe3, 0x87, - 0xb4, 0xc1, 0x73, 0xd4, 0xf2, 0xad, 0x70, 0x56, 0xbb, 0x3f, 0xb2, 0x81, 0xc4, 0x77, 0x4d, 0xd4, - 0x9e, 0x74, 0x04, 0xb6, 0x93, 0xcc, 0x60, 0x6b, 0xf2, 0xe1, 0x26, 0x13, 0x6e, 0x28, 0x02, 0x7d, - 0x29, 0x93, 0x09, 0x06, 0x31, 0x4d, 0x26, 0x18, 0x44, 0x5f, 0x6b, 0xc3, 0x4f, 0x6a, 0xad, 0x91, - 0x9f, 0xca, 0xc1, 0x78, 0xb9, 0xdd, 0x16, 0x11, 0x08, 0x8e, 0x70, 0xbe, 0xfc, 0xaa, 0xb0, 0x9a, - 0x78, 0xeb, 0x13, 0x59, 0x4d, 0xa0, 0xdc, 0x12, 0xa2, 0xa4, 0x1a, 0x57, 0xa8, 0xdf, 0xa0, 0xb4, - 0x76, 0x90, 0xb7, 0xa0, 0xa4, 0x26, 0x79, 0xb5, 0xdd, 0xa0, 0x8f, 0x68, 0x38, 0x3f, 0x7a, 0xb6, - 0x70, 0x61, 0x52, 0x84, 0xf8, 0xd3, 0x25, 0xd3, 0x24, 0x22, 0xd9, 0x02, 0x70, 0xd5, 0xec, 0x4a, - 0x64, 0x07, 0x4a, 0x4f, 0x3f, 0x21, 0x3d, 0xe3, 0x6f, 0x7c, 0x98, 0xd2, 0xa5, 0xe7, 0x98, 0x0f, - 0x69, 0xc1, 0x34, 0x4f, 0xcd, 0x83, 0x29, 0x7b, 0x31, 0x92, 0x2d, 0x1c, 0x39, 0x0e, 0x2f, 0x0b, - 0x3d, 0xd8, 0xb3, 0x22, 0xe1, 0x0f, 0x66, 0x01, 0x76, 0x32, 0xc2, 0xda, 0x26, 0x79, 0xf3, 0x80, - 0x8a, 0xf6, 0xa9, 0x74, 0x7b, 0xf9, 0xa4, 0xff, 0xb1, 0x1c, 0x9c, 0xd4, 0x27, 0x7d, 0xad, 0xbb, - 0xdd, 0xf2, 0xf0, 0x2e, 0x48, 0x2e, 0xc1, 0x98, 0x98, 0x93, 0xea, 0x12, 0x95, 0x0e, 0xc8, 0x1b, - 0xa3, 0x90, 0x55, 0x36, 0x0d, 0x19, 0x0f, 0x21, 0x75, 0xcf, 0x26, 0xf6, 0x29, 0x56, 0x14, 0xa7, - 0x7d, 0x0b, 0xf0, 0xb7, 0x39, 0x3f, 0x19, 0xc4, 0x7a, 0x17, 0x66, 0xcc, 0x91, 0xa8, 0xd1, 0x88, - 0x5c, 0x84, 0x51, 0x39, 0x7c, 0xb9, 0xec, 0xe1, 0x93, 0xe5, 0xd6, 0x7d, 0x20, 0x29, 0xfa, 0x10, - 0xcd, 0x9b, 0x68, 0x24, 0xcd, 0xef, 0xe4, 0xe3, 0x62, 0x0a, 0x51, 0xe5, 0x41, 0x1f, 0x37, 0xec, - 0x6d, 0x19, 0xa9, 0xf5, 0xc7, 0x53, 0x30, 0x9b, 0xb1, 0xe7, 0x1e, 0x21, 0x13, 0x2d, 0x9a, 0x1b, - 0xc4, 0x98, 0xf2, 0xdd, 0x96, 0xdb, 0xc2, 0xbb, 0x32, 0x65, 0x75, 0x9f, 0xed, 0xa0, 0x5f, 0x1e, - 0xeb, 0xcf, 0x42, 0x2e, 0xd2, 0xc3, 0x2b, 0x0c, 0x3f, 0xb1, 0xf0, 0x0a, 0xcb, 0x30, 0x29, 0xbe, - 0x4a, 0x6c, 0x57, 0x23, 0xb1, 0xa6, 0x38, 0xe0, 0x05, 0x4e, 0x6a, 0xdb, 0x32, 0x49, 0x38, 0x8f, - 0xd0, 0x6f, 0x3e, 0xa4, 0x82, 0xc7, 0xa8, 0xce, 0x03, 0x0b, 0x32, 0x79, 0x68, 0x24, 0xe4, 0x3f, - 0xc0, 0xec, 0x22, 0x08, 0xd1, 0xf7, 0xac, 0x62, 0xbf, 0x3d, 0xab, 0xf1, 0x64, 0xf6, 0xac, 0x33, - 0xb2, 0x8d, 0xd9, 0x7b, 0x57, 0x46, 0xb3, 0xc8, 0x2f, 0xe4, 0x60, 0x86, 0xfb, 0xf8, 0xeb, 0x8d, - 0xed, 0xeb, 0xb7, 0x5d, 0x7f, 0x32, 0x8d, 0x7d, 0x4e, 0x44, 0xd5, 0xcf, 0x6e, 0x6b, 0xba, 0x51, - 0xe4, 0xfb, 0x00, 0xd4, 0x8a, 0x0a, 0xe7, 0x01, 0x97, 0xda, 0x73, 0x19, 0xbb, 0x80, 0x42, 0x8a, - 0x23, 0x00, 0x47, 0x8a, 0xce, 0xc8, 0x29, 0xa3, 0xa0, 0xe4, 0xaf, 0xc0, 0x1c, 0x5b, 0x2f, 0x0a, - 0x22, 0x22, 0x92, 0xcc, 0x8f, 0x63, 0x2d, 0x9f, 0xef, 0x2d, 0x13, 0x5d, 0xca, 0x22, 0xe3, 0xf1, - 0x0a, 0xe3, 0xbc, 0x7c, 0x91, 0xee, 0xbc, 0x9c, 0x59, 0x11, 0x06, 0xfa, 0xc1, 0xd6, 0xf3, 0x28, - 0xbd, 0x3d, 0xf6, 0xb7, 0xd3, 0x72, 0x2d, 0xf0, 0xfd, 0x2d, 0x34, 0x9d, 0xef, 0x10, 0x44, 0xbe, - 0x0c, 0x44, 0x39, 0xc7, 0x73, 0x18, 0x95, 0x11, 0x7c, 0xb9, 0xda, 0x38, 0x76, 0xb2, 0x0f, 0x64, - 0xb1, 0x3e, 0x49, 0xd2, 0xc4, 0x84, 0xc2, 0x9c, 0xf8, 0x68, 0x06, 0x95, 0xa9, 0x3f, 0xc2, 0xf9, - 0x29, 0x23, 0xde, 0x4b, 0x5c, 0x12, 0x27, 0xf0, 0xd3, 0xf2, 0x87, 0x18, 0x2a, 0xa7, 0x2c, 0x76, - 0xe4, 0x1a, 0x8c, 0xa1, 0x07, 0xdc, 0x9a, 0x34, 0xda, 0x12, 0x06, 0x24, 0xe8, 0x2b, 0xe7, 0xec, - 0x99, 0xa6, 0x57, 0x31, 0x2a, 0xbb, 0x0e, 0x54, 0x82, 0x03, 0xbb, 0xdb, 0x46, 0xe5, 0xae, 0xd0, - 0x77, 0x34, 0x82, 0x03, 0x27, 0xe8, 0x9a, 0x2e, 0x92, 0x88, 0x44, 0xbe, 0x01, 0xe3, 0xb7, 0xdd, - 0x47, 0x52, 0xb7, 0x2b, 0x14, 0xb8, 0x03, 0xa5, 0x9e, 0x6f, 0xb9, 0x8f, 0x9c, 0x46, 0x37, 0x19, - 0x2d, 0x91, 0xa7, 0x9e, 0xd7, 0x58, 0x92, 0xaf, 0x01, 0x68, 0x1a, 0x67, 0x72, 0x64, 0x05, 0x2f, - 0xc8, 0x28, 0x46, 0x99, 0x9a, 0x68, 0xe4, 0xaf, 0x31, 0x4c, 0x48, 0x0e, 0x73, 0x9f, 0x9d, 0xe4, - 0x70, 0xe2, 0xb3, 0x93, 0x1c, 0x16, 0xb6, 0xe1, 0x74, 0xcf, 0xa5, 0x93, 0x11, 0x5c, 0xf2, 0xb2, - 0x19, 0x5c, 0xf2, 0x74, 0xaf, 0x23, 0x36, 0x34, 0x83, 0x3e, 0xcf, 0x96, 0xe6, 0x7a, 0x4b, 0x27, - 0xdf, 0xcd, 0x27, 0x8e, 0x5c, 0x71, 0xb1, 0xe0, 0x49, 0x02, 0x7a, 0xc9, 0x24, 0x79, 0x4c, 0xe8, - 0xc6, 0x0f, 0xe5, 0x7c, 0x7c, 0xa1, 0x49, 0xe4, 0xc0, 0xe5, 0xc7, 0xf3, 0xa7, 0x3d, 0x7d, 0xdf, - 0x86, 0x29, 0x9e, 0xca, 0xe9, 0x16, 0x3d, 0xd8, 0xf7, 0x83, 0x86, 0x4c, 0x74, 0x8a, 0x32, 0x78, - 0x2a, 0x81, 0x62, 0x02, 0x97, 0x54, 0xa4, 0x53, 0xd5, 0x30, 0xd6, 0x7e, 0x3a, 0x73, 0x17, 0x63, - 0x08, 0xfd, 0xfc, 0xad, 0xc8, 0x1b, 0x4a, 0x50, 0xa3, 0x81, 0x1e, 0xfa, 0x39, 0x90, 0xc0, 0x0c, - 0x79, 0x8d, 0x06, 0xd6, 0xef, 0x15, 0x80, 0xf0, 0x9a, 0x56, 0xdc, 0x8e, 0x8b, 0x2e, 0x87, 0x1e, - 0x86, 0xce, 0x28, 0x09, 0x1c, 0x77, 0xbb, 0x49, 0xf5, 0xb8, 0x33, 0xc2, 0x48, 0x56, 0x95, 0x39, - 0xc9, 0x8b, 0x4e, 0x8a, 0xb0, 0xc7, 0x56, 0x97, 0xff, 0x34, 0x5b, 0xdd, 0x37, 0xe0, 0xd9, 0x72, - 0x07, 0x73, 0xc2, 0xc9, 0x5a, 0xae, 0xfb, 0x81, 0xdc, 0xa4, 0x0c, 0x67, 0x16, 0x57, 0xa1, 0xa5, - 0x5a, 0xda, 0x8f, 0x85, 0x26, 0xa7, 0xb0, 0x79, 0xd9, 0x89, 0x74, 0xe7, 0x68, 0x29, 0xa7, 0x74, - 0xb0, 0x24, 0x43, 0x4e, 0xe1, 0x24, 0x92, 0x87, 0x17, 0x48, 0x39, 0x05, 0x93, 0x1d, 0xc4, 0x3c, - 0xbc, 0x80, 0xf6, 0x90, 0x75, 0x14, 0x09, 0x79, 0x1b, 0xc6, 0xcb, 0xdd, 0xc8, 0x17, 0x8c, 0x85, - 0x75, 0x77, 0x6c, 0x87, 0x2d, 0x9a, 0x62, 0x5c, 0x7d, 0x62, 0x74, 0xeb, 0x0f, 0x0b, 0x70, 0x3a, - 0x3d, 0xbc, 0xa2, 0x54, 0xad, 0x8f, 0xdc, 0x11, 0xeb, 0x23, 0x6b, 0x36, 0xf0, 0xc7, 0x82, 0x27, - 0x36, 0x1b, 0x78, 0x6a, 0xb9, 0x4f, 0x38, 0x1b, 0x6a, 0x30, 0xae, 0x9f, 0x77, 0x43, 0x9f, 0xf4, - 0xbc, 0xd3, 0xb9, 0xb0, 0x4b, 0x3d, 0xf7, 0x09, 0x1f, 0x8e, 0x9f, 0x8e, 0x92, 0xee, 0xe0, 0x1c, - 0x83, 0xfc, 0x6b, 0x70, 0x96, 0xef, 0x49, 0xc9, 0x8f, 0x5d, 0x3e, 0x90, 0x1c, 0xc5, 0xc0, 0x2d, - 0x3d, 0x3e, 0x5c, 0xbc, 0xc4, 0x55, 0x25, 0x4e, 0xaa, 0xdb, 0x9c, 0xed, 0x03, 0x47, 0xb6, 0x4c, - 0xab, 0xe4, 0x48, 0xde, 0x98, 0x4f, 0x4e, 0xcb, 0xf5, 0xf5, 0x7a, 0x96, 0xdb, 0x0b, 0x8f, 0x9f, - 0xca, 0xc1, 0xa6, 0xc7, 0x8b, 0x54, 0x87, 0xe5, 0x33, 0xd5, 0x61, 0x52, 0x9f, 0x52, 0xc8, 0xd4, - 0xa7, 0x54, 0x60, 0xba, 0xd6, 0xdd, 0x96, 0x75, 0x23, 0xe2, 0x90, 0xe1, 0xb9, 0x97, 0xf5, 0x41, - 0x49, 0x12, 0xeb, 0x6f, 0xe4, 0x61, 0x62, 0xb3, 0xd9, 0xdd, 0xf5, 0xda, 0x15, 0x37, 0x72, 0x9f, - 0x5a, 0x0d, 0xdd, 0x9b, 0x86, 0x86, 0x4e, 0x79, 0x77, 0xa9, 0x0f, 0x1b, 0x48, 0x3d, 0xf7, 0x93, - 0x39, 0x98, 0x8e, 0x49, 0xf8, 0x39, 0xbb, 0x06, 0x43, 0xec, 0x87, 0xb8, 0xb7, 0x9e, 0x4d, 0x31, - 0xe6, 0x09, 0x66, 0xd4, 0x5f, 0x42, 0x67, 0x66, 0x66, 0x6f, 0x40, 0x0e, 0x0b, 0x5f, 0x80, 0xb1, - 0x98, 0xed, 0x71, 0x12, 0xcb, 0xfc, 0x72, 0x0e, 0x4a, 0xc9, 0x2f, 0x21, 0xb7, 0x60, 0x94, 0x71, - 0xf2, 0xa8, 0xbc, 0x52, 0xbf, 0xd8, 0xe3, 0x9b, 0x2f, 0x09, 0x34, 0xde, 0x3c, 0xec, 0x7c, 0xca, - 0x21, 0xb6, 0xe4, 0xb0, 0x60, 0xc3, 0x84, 0x8e, 0x95, 0xd1, 0xba, 0xd7, 0x4c, 0xe1, 0xe2, 0x64, - 0x76, 0x3f, 0x18, 0xe9, 0x70, 0x8c, 0x56, 0x0b, 0xb9, 0xe1, 0xbc, 0x31, 0xb9, 0xb0, 0xaf, 0x12, - 0xf3, 0x86, 0x4f, 0xb3, 0xa5, 0x38, 0xa4, 0xb3, 0x3e, 0xcf, 0x32, 0x26, 0xb4, 0xc2, 0x23, 0xaf, - 0xc1, 0x08, 0xaf, 0x4f, 0x4f, 0x0b, 0xd1, 0x41, 0x88, 0x2e, 0xe2, 0x72, 0x1c, 0xeb, 0xef, 0x16, - 0xe0, 0x64, 0xdc, 0xbc, 0xbb, 0x9d, 0x86, 0x1b, 0xd1, 0x4d, 0x37, 0x70, 0x5b, 0xe1, 0x11, 0x2b, - 0xe0, 0x42, 0xaa, 0x69, 0x98, 0x26, 0x40, 0x36, 0x4d, 0x6b, 0x90, 0x95, 0x68, 0x10, 0xaa, 0x2f, - 0x79, 0x83, 0x64, 0x33, 0xc8, 0x2d, 0x28, 0xd4, 0x68, 0x24, 0xb6, 0xcd, 0xf3, 0xa9, 0x5e, 0xd5, - 0xdb, 0x75, 0xa9, 0x46, 0x23, 0x3e, 0x88, 0x3c, 0x56, 0x09, 0x35, 0x62, 0x45, 0xd6, 0x68, 0x44, - 0xee, 0xc3, 0xc8, 0xea, 0xa3, 0x0e, 0xad, 0x47, 0x22, 0x2d, 0xd2, 0xc5, 0xfe, 0xfc, 0x38, 0xae, - 0x96, 0x15, 0x89, 0x22, 0x40, 0xef, 0x2c, 0x8e, 0xb2, 0x70, 0x0d, 0x8a, 0xb2, 0xf2, 0xe3, 0xcc, - 0xdc, 0x85, 0x37, 0x61, 0x5c, 0xab, 0xe4, 0x58, 0x93, 0xfe, 0x67, 0xd9, 0xbe, 0xea, 0x37, 0x65, - 0x26, 0xa5, 0xd5, 0x94, 0x98, 0x97, 0x8b, 0x7d, 0x8c, 0xb9, 0x98, 0xe7, 0x3c, 0x10, 0x45, 0x7d, - 0xe4, 0xbd, 0x2a, 0x4c, 0xd7, 0x1e, 0x78, 0x9d, 0x38, 0x64, 0x9f, 0x71, 0x98, 0x62, 0x8c, 0x7b, - 0x71, 0xe7, 0x4e, 0x1e, 0xa6, 0x49, 0x3a, 0xeb, 0xcf, 0x72, 0x30, 0xc2, 0xfe, 0xba, 0x77, 0xed, - 0x29, 0xdd, 0x32, 0xaf, 0x1a, 0x5b, 0xe6, 0x8c, 0x16, 0x35, 0x17, 0x37, 0x8e, 0x6b, 0x47, 0x6c, - 0x96, 0x87, 0x62, 0x80, 0x38, 0x32, 0xb9, 0x01, 0xa3, 0xc2, 0xaa, 0x47, 0x98, 0x5f, 0xeb, 0x61, - 0x78, 0xa5, 0xbd, 0x8f, 0xba, 0x9c, 0xfb, 0x9d, 0xa4, 0x36, 0x43, 0x52, 0x33, 0x91, 0x5c, 0x06, - 0x4f, 0x34, 0xf2, 0xef, 0xf9, 0xe8, 0x2f, 0xc7, 0x83, 0xc8, 0x6a, 0x19, 0x33, 0x7b, 0x04, 0x22, - 0x28, 0x8b, 0x87, 0x8c, 0x42, 0x3f, 0x26, 0x27, 0x65, 0x7a, 0xb2, 0xcc, 0x37, 0x8e, 0x3f, 0x9a, - 0xe3, 0xa1, 0x57, 0x65, 0xc3, 0xde, 0x81, 0x89, 0xeb, 0x7e, 0xb0, 0xef, 0x06, 0x3c, 0xa0, 0x9e, - 0xb0, 0x1c, 0x60, 0x57, 0xc7, 0xc9, 0x1d, 0x0e, 0xe7, 0x21, 0xf9, 0x3e, 0x3e, 0x5c, 0x1c, 0x5a, - 0xf6, 0xfd, 0xa6, 0x6d, 0xa0, 0x93, 0x3b, 0x30, 0x79, 0xdb, 0x7d, 0xa4, 0x5d, 0x7a, 0xb9, 0x03, - 0xcc, 0x45, 0x36, 0x81, 0xd9, 0xad, 0xf9, 0x68, 0x13, 0x2b, 0x93, 0x9e, 0x78, 0x30, 0xb5, 0xe9, - 0x07, 0x91, 0xa8, 0xc4, 0x6b, 0xef, 0x8a, 0x8f, 0x4d, 0x1b, 0x89, 0x5d, 0xce, 0x34, 0x12, 0x3b, - 0xdd, 0xf1, 0x83, 0xc8, 0xd9, 0x51, 0xe4, 0x46, 0x90, 0x1f, 0x83, 0x31, 0x79, 0x07, 0x66, 0xb4, - 0x20, 0x66, 0xd7, 0xfd, 0xa0, 0xe5, 0x4a, 0xa1, 0x1c, 0xf5, 0xc0, 0x68, 0x6f, 0xb2, 0x83, 0x60, - 0x3b, 0x8d, 0x49, 0x3e, 0xcc, 0x72, 0x29, 0x1a, 0x8e, 0xad, 0xcc, 0x32, 0x5c, 0x8a, 0x7a, 0x59, - 0x99, 0xa5, 0x9d, 0x8b, 0x76, 0xfb, 0x59, 0xa1, 0x16, 0x97, 0xaf, 0x88, 0xeb, 0xf7, 0xd1, 0x56, - 0xa6, 0x6a, 0xdc, 0x7a, 0x58, 0x9b, 0x2e, 0x41, 0x61, 0x79, 0xf3, 0x3a, 0xbe, 0x5e, 0x48, 0x43, - 0x9b, 0xf6, 0x9e, 0xdb, 0xae, 0xa3, 0xb0, 0x2c, 0x2c, 0xbf, 0xf5, 0x1d, 0x79, 0x79, 0xf3, 0x3a, - 0x71, 0x61, 0x76, 0x93, 0x06, 0x2d, 0x2f, 0xfa, 0xca, 0x95, 0x2b, 0xda, 0x40, 0x15, 0xb1, 0x69, - 0x97, 0x45, 0xd3, 0x16, 0x3b, 0x88, 0xe2, 0x3c, 0xba, 0x72, 0x25, 0x73, 0x38, 0x54, 0xc3, 0xb2, - 0x78, 0xb1, 0x9d, 0xf1, 0xb6, 0xfb, 0x28, 0x36, 0xd8, 0x0f, 0x85, 0x73, 0xe6, 0x19, 0x39, 0xb1, - 0x62, 0x63, 0x7f, 0x63, 0x67, 0x34, 0x89, 0xd8, 0x5d, 0x27, 0x9e, 0x5e, 0xa1, 0x70, 0x6b, 0x59, - 0x90, 0x2a, 0x1d, 0xe9, 0xc1, 0xab, 0x0b, 0xec, 0x1a, 0x3a, 0xb9, 0xab, 0x6e, 0x6c, 0xfc, 0xc6, - 0x23, 0x92, 0x6f, 0x5d, 0xd6, 0x6f, 0x6c, 0x5c, 0x91, 0x62, 0x7c, 0xd6, 0xb4, 0xba, 0xe6, 0x73, - 0x0f, 0x06, 0xdb, 0xe4, 0x92, 0xbe, 0x08, 0x4e, 0x1c, 0xff, 0x22, 0x48, 0x61, 0x68, 0xdd, 0xaf, - 0x3f, 0x10, 0x91, 0x89, 0xbe, 0xcc, 0x96, 0x7b, 0xd3, 0xaf, 0x3f, 0x78, 0x72, 0xd6, 0xb5, 0xc8, - 0x9e, 0x6c, 0xb0, 0xa6, 0xb2, 0x59, 0x20, 0xfa, 0x44, 0x58, 0x6c, 0xce, 0xa9, 0x9b, 0x90, 0x56, - 0xc6, 0x05, 0x1f, 0x3e, 0x69, 0x64, 0xd7, 0xda, 0x26, 0x39, 0xa1, 0x50, 0xaa, 0xd0, 0xf0, 0x41, - 0xe4, 0x77, 0x56, 0x9a, 0x5e, 0x67, 0xdb, 0x77, 0x83, 0x06, 0xea, 0xee, 0xb2, 0xd6, 0xf7, 0xcb, - 0x99, 0xeb, 0x7b, 0xa6, 0xc1, 0xe9, 0x9d, 0xba, 0x64, 0x60, 0xa7, 0x58, 0x92, 0x0f, 0x61, 0x8a, - 0x4d, 0xee, 0xd5, 0x47, 0x11, 0x6d, 0xf3, 0x91, 0x9f, 0x41, 0xd1, 0x61, 0x4e, 0x0b, 0x57, 0xae, - 0x0a, 0xf9, 0x9c, 0xc2, 0xc5, 0x4e, 0x15, 0x81, 0x11, 0xd5, 0xc9, 0x60, 0x45, 0x1a, 0x30, 0x7f, - 0xdb, 0x7d, 0xa4, 0xa5, 0x0c, 0xd3, 0x26, 0x29, 0xc1, 0x09, 0x86, 0x59, 0xde, 0xd9, 0x04, 0x8b, - 0x03, 0x8a, 0xf6, 0x98, 0xaf, 0x3d, 0x39, 0x91, 0xef, 0x87, 0x53, 0xe2, 0xb3, 0x2a, 0x98, 0xc3, - 0xc3, 0x0f, 0x0e, 0x6a, 0x7b, 0x2e, 0xfa, 0xea, 0xcc, 0x1e, 0x6f, 0x43, 0x94, 0x1d, 0xd6, 0x90, - 0x7c, 0x9c, 0x90, 0x33, 0xb2, 0x7b, 0xd5, 0x40, 0x3e, 0x82, 0x29, 0xfe, 0x64, 0xb3, 0xe6, 0x87, - 0x11, 0x5e, 0xe8, 0xe7, 0x8e, 0x67, 0x82, 0xce, 0xdf, 0x81, 0xb8, 0xd3, 0x46, 0x42, 0x01, 0x90, - 0xe0, 0x4c, 0xde, 0x82, 0xf1, 0x4d, 0xaf, 0xcd, 0xe3, 0xae, 0x55, 0x37, 0x51, 0xf5, 0x28, 0xce, - 0x9f, 0x8e, 0xd7, 0x76, 0xe4, 0xad, 0xba, 0xa3, 0xb6, 0x0b, 0x1d, 0x9b, 0xdc, 0x87, 0xf1, 0x5a, - 0x6d, 0xed, 0xba, 0xc7, 0x0e, 0xc0, 0xce, 0xc1, 0xfc, 0xc9, 0x1e, 0xad, 0x3c, 0x97, 0xd9, 0xca, - 0xc9, 0x30, 0xdc, 0xc3, 0x34, 0xcc, 0x4e, 0xdd, 0xef, 0x1c, 0xd8, 0x3a, 0xa7, 0x0c, 0xb3, 0xec, - 0x53, 0x4f, 0xd8, 0x2c, 0xbb, 0x0a, 0xd3, 0x9a, 0x81, 0x25, 0x1a, 0x57, 0xce, 0xc7, 0x61, 0xc6, - 0x74, 0x33, 0xec, 0xa4, 0x1b, 0x62, 0x92, 0x4e, 0xda, 0x63, 0x9f, 0x3e, 0xae, 0x3d, 0xb6, 0x07, - 0x33, 0x7c, 0x30, 0xc4, 0x3c, 0xc0, 0x91, 0x5e, 0xe8, 0xd1, 0x87, 0x17, 0x33, 0xfb, 0x70, 0x56, - 0x8c, 0xb4, 0x9c, 0x64, 0xf8, 0x44, 0x99, 0xe6, 0x4a, 0x76, 0x80, 0x08, 0xa0, 0x48, 0x02, 0x8d, - 0x75, 0x3d, 0xdb, 0xa3, 0xae, 0x17, 0x33, 0xeb, 0x9a, 0x92, 0x75, 0x6d, 0xf3, 0x6a, 0x32, 0x38, - 0x92, 0xb6, 0xac, 0x47, 0xce, 0x2f, 0xec, 0xd8, 0xe7, 0x0c, 0x3d, 0x68, 0x1a, 0x81, 0x07, 0x3d, - 0x4d, 0x4e, 0xda, 0x64, 0xbf, 0x67, 0x70, 0x26, 0x8f, 0xe0, 0x64, 0xba, 0x15, 0x58, 0xe7, 0x19, - 0xac, 0xf3, 0x8c, 0x51, 0x67, 0x12, 0x89, 0xcf, 0x1b, 0xf3, 0xb3, 0x92, 0xb5, 0xf6, 0xe0, 0x4f, - 0xfe, 0x5a, 0x0e, 0x4e, 0xdd, 0xbe, 0x5e, 0xc6, 0x44, 0x55, 0x1e, 0x0f, 0xc3, 0xa3, 0xdc, 0x37, - 0x9f, 0x17, 0xba, 0xf2, 0xa4, 0xfe, 0x5e, 0x4a, 0x1c, 0xb8, 0x55, 0x30, 0x19, 0xf1, 0x5c, 0x6b, - 0xc7, 0xe5, 0xf9, 0xaf, 0x04, 0x8b, 0x0c, 0x1f, 0xcf, 0xef, 0xfc, 0xfe, 0x62, 0xce, 0xee, 0x55, - 0xd5, 0xcd, 0xa1, 0xe2, 0x64, 0x69, 0x2a, 0xcb, 0xe0, 0xfb, 0xd7, 0xf3, 0x89, 0xb3, 0x83, 0x54, - 0x61, 0x54, 0x4c, 0x09, 0x21, 0x4c, 0xa7, 0x07, 0xfe, 0x4c, 0xe6, 0xc0, 0x8f, 0x8a, 0xd9, 0x65, - 0x4b, 0x7a, 0xb2, 0xcf, 0x58, 0xa1, 0x65, 0xbe, 0xb8, 0x7d, 0x7c, 0x8d, 0x1f, 0x0d, 0x08, 0x32, - 0x0e, 0xc1, 0xca, 0xf1, 0xfd, 0x92, 0x4c, 0xb7, 0x37, 0x3c, 0x0d, 0x65, 0x6d, 0xe4, 0x01, 0x4f, - 0xb0, 0x50, 0x50, 0xce, 0x2d, 0x66, 0x36, 0x85, 0x27, 0x56, 0x21, 0xab, 0xc5, 0xfa, 0xb5, 0x1c, - 0x4c, 0x1a, 0x87, 0x0f, 0xb9, 0xa6, 0x79, 0x6e, 0xc5, 0xce, 0xcc, 0x06, 0x0e, 0xee, 0x47, 0x49, - 0x9f, 0xae, 0x6b, 0xc2, 0x7c, 0x3b, 0xdf, 0x9b, 0x2e, 0x33, 0x25, 0x7b, 0x7f, 0x5d, 0x9d, 0x4a, - 0xdb, 0x34, 0xd4, 0x23, 0x6d, 0xd3, 0xaf, 0x3c, 0x0b, 0x53, 0xe6, 0xed, 0x84, 0xbc, 0x06, 0x23, - 0xa8, 0xe2, 0x94, 0x57, 0x5d, 0x9e, 0xb8, 0x18, 0x21, 0x46, 0xe2, 0x62, 0x84, 0x90, 0x97, 0x00, - 0x94, 0x1d, 0xad, 0x54, 0xf0, 0x0f, 0x3f, 0x3e, 0x5c, 0xcc, 0xbd, 0x6e, 0x6b, 0x05, 0xe4, 0xeb, - 0x00, 0x1b, 0x7e, 0x83, 0xaa, 0xd4, 0x72, 0x7d, 0x1e, 0xb1, 0x5f, 0x4e, 0x05, 0x1f, 0x3f, 0xd1, - 0xf6, 0x1b, 0x34, 0x1d, 0x69, 0x5c, 0xe3, 0x48, 0xbe, 0x04, 0xc3, 0x76, 0x97, 0x5d, 0xab, 0xb9, - 0x46, 0x63, 0x5c, 0x1e, 0x02, 0xdd, 0x26, 0x8d, 0xef, 0x6c, 0x41, 0x37, 0x69, 0x9f, 0xc5, 0x00, - 0xe4, 0x3d, 0x1e, 0x94, 0x5c, 0xc4, 0x10, 0x1b, 0x8e, 0x9f, 0x3c, 0x34, 0xe1, 0x20, 0x15, 0x45, - 0x4c, 0x23, 0x21, 0x77, 0x60, 0x54, 0xd7, 0xd5, 0x6b, 0x2e, 0xc0, 0xfa, 0x7b, 0x8e, 0x76, 0x01, - 0x14, 0x39, 0xe9, 0x92, 0x6a, 0x7c, 0xc9, 0x85, 0xbc, 0x0d, 0x63, 0x8c, 0x3d, 0xdb, 0x49, 0x42, - 0x21, 0xf8, 0xe3, 0xc3, 0x86, 0xd6, 0x20, 0xb6, 0x11, 0x19, 0x91, 0xbe, 0x14, 0x01, 0xf9, 0x10, - 0xd3, 0xae, 0x89, 0xae, 0xee, 0x6b, 0xdc, 0x70, 0x3e, 0xd5, 0xd5, 0x98, 0x87, 0x2d, 0x9d, 0x91, - 0x57, 0xf1, 0x23, 0xbb, 0x2a, 0x02, 0xd5, 0x20, 0x81, 0xe4, 0x5f, 0x49, 0x55, 0x30, 0x2f, 0x83, - 0x2a, 0xa5, 0x53, 0x04, 0x1a, 0x7c, 0x49, 0x07, 0x4a, 0xb1, 0xdc, 0x25, 0xea, 0x82, 0x7e, 0x75, - 0xbd, 0x9e, 0xaa, 0x4b, 0x1f, 0xc0, 0x54, 0x75, 0x29, 0xee, 0xa4, 0x01, 0x53, 0x72, 0x0f, 0x17, - 0xf5, 0x8d, 0xf7, 0xab, 0xef, 0xa5, 0x54, 0x7d, 0xb3, 0x8d, 0xed, 0x74, 0x3d, 0x09, 0x9e, 0xe4, - 0x6d, 0x98, 0x94, 0x10, 0x5c, 0x1f, 0x22, 0xf5, 0x2f, 0x2a, 0x67, 0x1a, 0xdb, 0x68, 0xb9, 0x6f, - 0x26, 0x4e, 0xd4, 0x91, 0x75, 0x6a, 0x3e, 0x3b, 0x26, 0x0d, 0xea, 0xe4, 0xac, 0x30, 0x91, 0xc9, - 0x07, 0x30, 0x5e, 0x6d, 0xb1, 0x0f, 0xf1, 0xdb, 0x6e, 0x44, 0x85, 0x7b, 0x98, 0x34, 0xd4, 0xd0, - 0x4a, 0xb4, 0xa9, 0xca, 0x53, 0x11, 0xc6, 0x45, 0x46, 0x2a, 0xc2, 0x18, 0xcc, 0x3a, 0x8f, 0x3f, - 0xce, 0x88, 0x39, 0x2c, 0x5d, 0xc7, 0xce, 0x64, 0x18, 0x4b, 0x68, 0xec, 0x45, 0xac, 0x3e, 0x06, - 0x95, 0x8f, 0x23, 0x89, 0x58, 0x7d, 0x3a, 0x4f, 0xf2, 0x0e, 0x8c, 0x8b, 0x1c, 0x1b, 0x65, 0x7b, - 0x23, 0x9c, 0x2f, 0xe1, 0xc7, 0xa3, 0xc3, 0xbb, 0x4c, 0xc7, 0xe1, 0xb8, 0x41, 0xc2, 0x2a, 0x30, - 0xc6, 0x27, 0x5f, 0x81, 0xb9, 0xfb, 0x5e, 0xbb, 0xe1, 0xef, 0x87, 0xe2, 0x98, 0x12, 0x1b, 0xdd, - 0x4c, 0xec, 0x93, 0xb3, 0xcf, 0xcb, 0x95, 0xb8, 0x94, 0xda, 0xf8, 0x32, 0x39, 0x90, 0xbf, 0x9c, - 0xe2, 0xcc, 0x67, 0x10, 0xe9, 0x37, 0x83, 0x96, 0x52, 0x33, 0x28, 0x5d, 0x7d, 0x72, 0x3a, 0x65, - 0x56, 0x43, 0x7c, 0x20, 0xe6, 0xf9, 0x7e, 0xd3, 0xf7, 0xda, 0xf3, 0xb3, 0xb8, 0x17, 0x3e, 0x9b, - 0x74, 0x31, 0x47, 0xbc, 0x4d, 0xbf, 0xe9, 0xd5, 0x0f, 0x78, 0xda, 0xff, 0xa4, 0x58, 0xfc, 0x91, - 0x6f, 0xa8, 0xae, 0x33, 0x58, 0x93, 0x0f, 0x60, 0x82, 0xfd, 0xaf, 0xee, 0xed, 0x73, 0x86, 0x79, - 0x9d, 0x86, 0x29, 0xea, 0xc1, 0x31, 0xc2, 0x24, 0x20, 0x19, 0x57, 0x7a, 0x83, 0x15, 0x79, 0x13, - 0x80, 0x09, 0x70, 0x62, 0x3b, 0x3e, 0x11, 0x87, 0x46, 0x44, 0xb1, 0x2f, 0xbd, 0x11, 0xc7, 0xc8, - 0xe4, 0x6d, 0x18, 0x67, 0xbf, 0x6a, 0xdd, 0x86, 0xcf, 0xd6, 0xc6, 0x49, 0xa4, 0xe5, 0x5e, 0x77, - 0x8c, 0x36, 0xe4, 0x70, 0xc3, 0xeb, 0x2e, 0x46, 0x27, 0x6b, 0x30, 0x8d, 0x21, 0x2c, 0xab, 0x0d, - 0xda, 0x8e, 0xf0, 0xd1, 0x74, 0xfe, 0x94, 0xf6, 0xa8, 0xcc, 0x8a, 0x1c, 0x4f, 0x95, 0xe9, 0xe2, - 0x7e, 0x82, 0x8c, 0x84, 0x30, 0x1b, 0xef, 0x2e, 0xf1, 0x13, 0xf5, 0x3c, 0x76, 0x92, 0x14, 0x72, - 0xd3, 0x18, 0x7c, 0x3f, 0x66, 0x23, 0xa2, 0x6d, 0x5c, 0x52, 0xc1, 0xaf, 0x57, 0x98, 0xc5, 0x9d, - 0xd8, 0x40, 0x6e, 0xac, 0x6c, 0x26, 0x63, 0x3c, 0x9e, 0xc6, 0x2f, 0xc0, 0x61, 0xde, 0xad, 0xc7, - 0x49, 0x2f, 0x33, 0xe2, 0x3c, 0x66, 0x50, 0x93, 0x6f, 0xc1, 0x09, 0xb9, 0x83, 0x88, 0x22, 0x31, - 0xaf, 0x17, 0x8e, 0xb9, 0x13, 0x37, 0xb6, 0x55, 0xd5, 0xa9, 0x29, 0x9d, 0x5d, 0x05, 0x71, 0x61, - 0x1c, 0x87, 0x55, 0xd4, 0xf8, 0x6c, 0xbf, 0x1a, 0x2f, 0xa4, 0x6a, 0x3c, 0x89, 0x13, 0x25, 0x5d, - 0x99, 0xce, 0x93, 0x2c, 0xc3, 0xa4, 0x58, 0x47, 0x62, 0xb6, 0x3d, 0x87, 0xbd, 0x85, 0x7a, 0x1e, - 0xb9, 0x02, 0x53, 0x13, 0xce, 0x24, 0xd1, 0x77, 0x64, 0xae, 0xd8, 0x3f, 0x63, 0xec, 0xc8, 0x49, - 0x7d, 0xbe, 0x89, 0xcc, 0x76, 0xa4, 0x58, 0x8a, 0x59, 0x7d, 0xd4, 0x09, 0x84, 0x16, 0xe7, 0xf9, - 0x38, 0xf5, 0x81, 0x26, 0xfc, 0x38, 0x54, 0x61, 0xe8, 0x5b, 0x42, 0x16, 0x07, 0x72, 0x17, 0x66, - 0xd5, 0xa9, 0xad, 0x31, 0x5e, 0x8c, 0x53, 0x48, 0xc4, 0x47, 0x7d, 0x36, 0xdf, 0x2c, 0x7a, 0xe2, - 0xc2, 0x29, 0xe3, 0x9c, 0xd6, 0x58, 0x9f, 0x45, 0xd6, 0x98, 0x64, 0xd5, 0x3c, 0xe4, 0xb3, 0xd9, - 0xf7, 0xe2, 0x43, 0x3e, 0x82, 0x85, 0xe4, 0xd9, 0xac, 0xd5, 0xf2, 0x02, 0xd6, 0xf2, 0xca, 0xe3, - 0xc3, 0xc5, 0xf3, 0xa9, 0xe3, 0x3d, 0xbb, 0xa2, 0x3e, 0xdc, 0xc8, 0xd7, 0x61, 0xde, 0x3c, 0x9f, - 0xb5, 0x9a, 0x2c, 0xac, 0x09, 0x97, 0x8e, 0x3a, 0xd8, 0xb3, 0x6b, 0xe8, 0xc9, 0x83, 0x44, 0xb0, - 0x98, 0x39, 0xbb, 0xb5, 0x6a, 0xce, 0xc5, 0x1f, 0x94, 0x5a, 0x25, 0xd9, 0xd5, 0x1d, 0xc5, 0x92, - 0xec, 0xc3, 0xf3, 0x59, 0xc7, 0x84, 0x56, 0xe9, 0x8b, 0x4a, 0x4f, 0xfa, 0x6a, 0xf6, 0x91, 0x93, - 0x5d, 0xf3, 0x11, 0x6c, 0xc9, 0x87, 0x70, 0x42, 0x5b, 0x5f, 0x5a, 0x7d, 0x2f, 0x61, 0x7d, 0xe8, - 0x51, 0xab, 0x2f, 0xcc, 0xec, 0x5a, 0xb2, 0x79, 0x90, 0x16, 0xcc, 0xca, 0x0f, 0x47, 0x85, 0xb4, - 0x38, 0x7a, 0xce, 0x1b, 0xbb, 0x6a, 0x1a, 0x43, 0xcb, 0x4e, 0xbd, 0xed, 0x74, 0x62, 0x42, 0x7d, - 0xa6, 0x67, 0xf0, 0x25, 0x6b, 0x30, 0x52, 0xdb, 0xac, 0x5e, 0xbf, 0xbe, 0x3a, 0xff, 0x32, 0xd6, - 0x20, 0xdd, 0x6f, 0x38, 0xd0, 0xb8, 0x34, 0x09, 0xab, 0xaf, 0x8e, 0xb7, 0xb3, 0x63, 0x78, 0x39, - 0x71, 0xd4, 0x9b, 0x43, 0xc5, 0x0b, 0xa5, 0x8b, 0x37, 0x87, 0x8a, 0x17, 0x4b, 0xaf, 0xd8, 0xcf, - 0x65, 0x27, 0x16, 0xe6, 0x1f, 0x6b, 0x9f, 0xef, 0x57, 0x1a, 0x77, 0x85, 0xf5, 0xb3, 0x39, 0x98, - 0xcd, 0x68, 0x07, 0x39, 0x0f, 0x43, 0x98, 0x93, 0x41, 0x7b, 0xe7, 0x4e, 0xe4, 0x62, 0xc0, 0x72, - 0xf2, 0x39, 0x18, 0xad, 0x6c, 0xd4, 0x6a, 0xe5, 0x0d, 0x79, 0x65, 0xe3, 0xdb, 0x55, 0x3b, 0x74, - 0x42, 0xd7, 0x7c, 0x1e, 0x13, 0x68, 0xe4, 0x75, 0x18, 0xa9, 0x6e, 0x22, 0x01, 0x37, 0xb4, 0xc2, - 0x2b, 0x8c, 0xd7, 0x49, 0xe2, 0x0b, 0x24, 0xeb, 0x47, 0x72, 0x40, 0xd2, 0x9d, 0x4a, 0xae, 0xc0, - 0xb8, 0x3e, 0x74, 0xfc, 0x82, 0x89, 0x4f, 0x39, 0xda, 0xc0, 0xd8, 0x3a, 0x0e, 0xa9, 0xc0, 0x30, - 0xe6, 0x90, 0x52, 0xef, 0x72, 0x99, 0x07, 0xc0, 0xa9, 0xd4, 0x01, 0x30, 0x8c, 0x19, 0xaa, 0x6c, - 0x4e, 0x6c, 0xfd, 0x56, 0x0e, 0x48, 0xfa, 0xd0, 0x1c, 0xd8, 0x2e, 0xe0, 0x0d, 0xcd, 0x51, 0x56, - 0x8f, 0xba, 0xae, 0x52, 0x66, 0xe8, 0x97, 0xa5, 0xd8, 0xa5, 0xf6, 0xbc, 0x71, 0x39, 0xef, 0xed, - 0x5d, 0x75, 0x11, 0x86, 0xef, 0xd1, 0x60, 0x5b, 0xda, 0x10, 0xa2, 0xdd, 0xd1, 0x43, 0x06, 0xd0, - 0x2f, 0xab, 0x88, 0x61, 0xfd, 0x61, 0x0e, 0xe6, 0xb2, 0x24, 0xb9, 0x23, 0x9c, 0xa0, 0xac, 0x84, - 0xff, 0x16, 0xda, 0x04, 0x70, 0xa3, 0x24, 0xe5, 0xb5, 0xb5, 0x08, 0xc3, 0xec, 0x63, 0xe5, 0x08, - 0xa3, 0xb2, 0x80, 0xf5, 0x46, 0x68, 0x73, 0x38, 0x43, 0xe0, 0x81, 0x9d, 0x86, 0x30, 0x26, 0x18, - 0x22, 0xa0, 0xa0, 0x60, 0x73, 0x38, 0x43, 0xb8, 0xed, 0x37, 0x54, 0xfa, 0x54, 0x44, 0x68, 0x31, - 0x80, 0xcd, 0xe1, 0xe4, 0x3c, 0x8c, 0xde, 0x69, 0xaf, 0x53, 0xf7, 0xa1, 0xcc, 0xfa, 0x81, 0x36, - 0x0c, 0x7e, 0xdb, 0x69, 0x32, 0x98, 0x2d, 0x0b, 0xad, 0x9f, 0xcc, 0xc1, 0x4c, 0x4a, 0x88, 0x3c, - 0xda, 0xcf, 0xab, 0xbf, 0xc3, 0xc5, 0x20, 0xdf, 0xc7, 0x9b, 0x3f, 0x94, 0xdd, 0x7c, 0xeb, 0xff, - 0x1e, 0x82, 0x53, 0x3d, 0xee, 0xf4, 0xb1, 0x43, 0x58, 0xee, 0x48, 0x87, 0xb0, 0xaf, 0xb2, 0x3b, - 0xb4, 0xeb, 0xb5, 0xc2, 0x2d, 0x3f, 0x6e, 0x71, 0x6c, 0x57, 0x8e, 0x65, 0x32, 0x83, 0xac, 0x34, - 0x40, 0x3e, 0xcd, 0xb3, 0x78, 0x3b, 0x91, 0x9f, 0x16, 0x29, 0x0c, 0x66, 0x29, 0x97, 0xac, 0xc2, - 0x9f, 0x13, 0x97, 0x2c, 0xd3, 0x49, 0x60, 0xe8, 0x89, 0x3a, 0x09, 0x64, 0x1b, 0x18, 0x0e, 0x7f, - 0x1a, 0x73, 0xd3, 0x15, 0x98, 0xe4, 0x46, 0x1c, 0xe5, 0x90, 0x0f, 0xd2, 0x48, 0xca, 0xf0, 0xc3, - 0x0d, 0xd3, 0x63, 0x61, 0xd0, 0x90, 0x35, 0xd3, 0xa0, 0x7d, 0x14, 0x1f, 0x9f, 0xce, 0xf7, 0x36, - 0x58, 0x37, 0x1e, 0x9d, 0x75, 0x52, 0xeb, 0x27, 0xf3, 0xa6, 0xbf, 0xd6, 0x9f, 0xc7, 0x99, 0x77, - 0x11, 0x86, 0xef, 0xef, 0xd1, 0x40, 0xee, 0x77, 0xd8, 0x90, 0x7d, 0x06, 0xd0, 0x1b, 0x82, 0x18, - 0xe4, 0x3a, 0x4c, 0x6d, 0xf2, 0x91, 0x90, 0xdd, 0x3b, 0x14, 0x5f, 0xb5, 0x3a, 0x42, 0x21, 0x90, - 0xd1, 0xbf, 0x09, 0x2a, 0xeb, 0x06, 0x9c, 0x31, 0x16, 0xa4, 0x88, 0x2f, 0xc1, 0xed, 0xca, 0xf9, - 0x89, 0x38, 0x15, 0x5b, 0xd2, 0xc7, 0xbb, 0x87, 0x9d, 0x80, 0x5a, 0x3b, 0xf0, 0x7c, 0x5f, 0x46, - 0xec, 0x20, 0x82, 0x8e, 0xfa, 0x95, 0x30, 0x7e, 0xeb, 0x4b, 0x6a, 0x6b, 0x74, 0xd6, 0xf7, 0xc3, - 0x84, 0xde, 0xcb, 0xb8, 0xa7, 0xb2, 0xdf, 0x62, 0x53, 0xe3, 0x7b, 0x2a, 0x03, 0xd8, 0x1c, 0x7e, - 0x64, 0xe6, 0xfd, 0x78, 0xf8, 0x0b, 0x47, 0x0d, 0x3f, 0xab, 0x1c, 0x97, 0xac, 0x56, 0x39, 0xfe, - 0xd6, 0x2b, 0xc7, 0x00, 0x12, 0x36, 0x87, 0x3f, 0xd1, 0xca, 0x7f, 0x53, 0xe6, 0x3e, 0x40, 0xb3, - 0x75, 0x79, 0x27, 0x8e, 0x33, 0x9b, 0xce, 0x66, 0xdd, 0x74, 0x63, 0xcc, 0xf8, 0x90, 0xcc, 0x1f, - 0x75, 0x48, 0x1e, 0x67, 0x22, 0x5e, 0x86, 0xd1, 0xb2, 0x78, 0x1a, 0x1e, 0x8a, 0x05, 0x1b, 0x37, - 0xf5, 0x0e, 0x2c, 0xb1, 0xac, 0xef, 0xe4, 0xe0, 0x44, 0xa6, 0xaa, 0x8c, 0xd5, 0xca, 0x75, 0x72, - 0xda, 0x3a, 0x4c, 0x2a, 0xe4, 0x38, 0xc6, 0x71, 0xbc, 0x87, 0x07, 0xff, 0x16, 0xeb, 0x05, 0x18, - 0x53, 0x0f, 0x35, 0x64, 0x4e, 0x0e, 0x1d, 0xda, 0x0b, 0x49, 0x7d, 0x7f, 0x0d, 0x80, 0xb5, 0xe0, - 0x89, 0x5a, 0xb7, 0x59, 0xbf, 0x99, 0xe7, 0x79, 0xb1, 0x9e, 0xda, 0x80, 0x7e, 0xd9, 0x26, 0x69, - 0xec, 0x93, 0x7a, 0x87, 0xf1, 0x23, 0xab, 0x30, 0x52, 0x8b, 0xdc, 0xa8, 0x2b, 0x9d, 0x9e, 0x67, - 0x75, 0x32, 0x2c, 0xb8, 0xb7, 0x14, 0xbb, 0xbd, 0x86, 0x08, 0x31, 0x2e, 0x07, 0x08, 0xd1, 0x2c, - 0xdb, 0x3c, 0x98, 0xd0, 0x69, 0xc9, 0x07, 0x30, 0x25, 0xa3, 0x94, 0x71, 0x4f, 0x70, 0xf1, 0xa8, - 0x24, 0x6d, 0x24, 0x64, 0x94, 0x32, 0xdd, 0x73, 0xdc, 0xc0, 0xd7, 0x77, 0xea, 0x8e, 0x8e, 0x6c, - 0xfd, 0xf1, 0x08, 0x9f, 0x07, 0x22, 0xdc, 0xe0, 0x36, 0x4c, 0xdd, 0xa9, 0x56, 0x56, 0x34, 0xc5, - 0x97, 0x99, 0xad, 0x62, 0xf5, 0x51, 0x44, 0x83, 0xb6, 0xdb, 0x14, 0x08, 0x07, 0xf1, 0xd9, 0xe0, - 0x7b, 0x8d, 0x7a, 0xb6, 0x52, 0x2c, 0xc1, 0x91, 0xd5, 0xc1, 0x2f, 0x37, 0xaa, 0x8e, 0xfc, 0x80, - 0x75, 0x84, 0x6e, 0xab, 0xd9, 0xa3, 0x0e, 0x93, 0x23, 0xd9, 0x83, 0xd2, 0x0d, 0x94, 0x63, 0xb4, - 0x5a, 0x0a, 0xfd, 0x6b, 0x39, 0x27, 0x6a, 0x79, 0x96, 0x0b, 0x40, 0xd9, 0xf5, 0xa4, 0xb8, 0xc6, - 0x0b, 0x78, 0xe8, 0xc8, 0x05, 0xfc, 0xd7, 0x73, 0x30, 0xc2, 0x05, 0x25, 0x31, 0xbf, 0x7a, 0x88, - 0x62, 0xf7, 0x9f, 0x8c, 0x28, 0x56, 0xc2, 0x0d, 0xdc, 0x98, 0x69, 0xbc, 0x8c, 0x54, 0x12, 0x13, - 0x56, 0x5a, 0x4a, 0xa2, 0x0a, 0x9b, 0x97, 0x1c, 0x3d, 0x5f, 0x49, 0x35, 0xf6, 0x10, 0x1e, 0x3d, - 0xd2, 0x09, 0x4d, 0x7a, 0x55, 0x8f, 0x0a, 0x0f, 0x61, 0xd3, 0x2f, 0x78, 0x1d, 0xc6, 0x84, 0xdf, - 0xf1, 0xf2, 0x81, 0x78, 0xa8, 0x2a, 0x19, 0xaf, 0xf1, 0x8d, 0xe5, 0x83, 0x58, 0x08, 0x14, 0x9e, - 0xcb, 0xce, 0xf6, 0x81, 0x91, 0xff, 0x4b, 0x22, 0x92, 0x3b, 0x3c, 0x2f, 0x0e, 0x0f, 0xc8, 0x68, - 0x46, 0x60, 0x56, 0x70, 0x11, 0xd1, 0x44, 0x3a, 0x2f, 0x66, 0xc4, 0x5f, 0x8c, 0x79, 0x90, 0x75, - 0x28, 0xa1, 0x05, 0x07, 0x6d, 0x70, 0x73, 0x8e, 0x6a, 0x85, 0xfb, 0xb6, 0x0a, 0x2b, 0xbc, 0x88, - 0x97, 0x39, 0xc2, 0x10, 0xc4, 0x74, 0x2b, 0x49, 0x51, 0xb2, 0x8b, 0x5b, 0x29, 0x39, 0xfb, 0xc8, - 0xdb, 0x30, 0xae, 0x02, 0x62, 0x2a, 0xc7, 0x36, 0x54, 0x58, 0xc7, 0x11, 0x34, 0x0d, 0x17, 0x37, - 0x1d, 0x9d, 0x2c, 0x41, 0x91, 0x2d, 0xe2, 0x64, 0xe6, 0xb1, 0xae, 0x80, 0xe9, 0xd6, 0xea, 0x12, - 0x8f, 0xd4, 0x60, 0x96, 0x2d, 0x9a, 0x9a, 0xd7, 0xde, 0x6d, 0xd2, 0x75, 0x7f, 0xd7, 0xef, 0x46, - 0x77, 0xed, 0x75, 0xb1, 0xb9, 0x72, 0x51, 0xd9, 0x6d, 0x35, 0x8d, 0xe2, 0xc0, 0xc8, 0x2b, 0x9b, - 0x41, 0xad, 0xed, 0x61, 0xbf, 0x9f, 0x87, 0x71, 0x6d, 0x3e, 0x91, 0x8b, 0x50, 0xac, 0x86, 0xeb, - 0x7e, 0xfd, 0x81, 0x0a, 0x79, 0x35, 0xf9, 0xf8, 0x70, 0x71, 0xcc, 0x0b, 0x9d, 0x26, 0x02, 0x6d, - 0x55, 0x4c, 0x96, 0x61, 0x92, 0xff, 0x25, 0x03, 0x95, 0xe7, 0x63, 0xa3, 0x3b, 0x8e, 0x2c, 0x43, - 0x94, 0xeb, 0xfb, 0x9a, 0x41, 0x42, 0xbe, 0x06, 0xc0, 0x01, 0xe8, 0x24, 0x59, 0x18, 0xdc, 0xbd, - 0x53, 0x54, 0x90, 0xe1, 0x1e, 0xa9, 0x31, 0x24, 0xdf, 0xe0, 0x01, 0x34, 0xe5, 0xfc, 0x1f, 0x1a, - 0xdc, 0x3f, 0x95, 0xf1, 0x77, 0xb2, 0xdd, 0xe4, 0x75, 0x96, 0x22, 0x3a, 0xdf, 0x82, 0x4d, 0xeb, - 0xfe, 0x43, 0x1a, 0x1c, 0x94, 0x23, 0x44, 0xd4, 0x30, 0xac, 0xff, 0x29, 0xa7, 0xad, 0x1a, 0xb2, - 0x81, 0xc9, 0xf2, 0xf8, 0x8c, 0x10, 0x36, 0x1b, 0x4a, 0x98, 0x97, 0x70, 0x9b, 0xee, 0x2c, 0x3f, - 0x2b, 0x6c, 0x3e, 0x67, 0xd5, 0xbc, 0x4a, 0x24, 0xd1, 0xe3, 0x40, 0xf2, 0x3e, 0x0c, 0x61, 0xd7, - 0xe5, 0x8f, 0xfc, 0x34, 0x79, 0x9e, 0x0e, 0xb1, 0x3e, 0xc3, 0x0f, 0x41, 0x4a, 0xf2, 0x39, 0xe1, - 0x60, 0xc6, 0x3b, 0x7f, 0x4a, 0x3b, 0x14, 0x59, 0x3b, 0xd4, 0x41, 0x1a, 0x47, 0x4a, 0xd0, 0x66, - 0xcf, 0xbf, 0x95, 0x87, 0x52, 0x72, 0xad, 0x92, 0xf7, 0x60, 0x42, 0x9e, 0x74, 0x98, 0x4d, 0x99, - 0x7d, 0xe5, 0x84, 0x88, 0x72, 0x2d, 0x8f, 0xbb, 0x64, 0x32, 0x65, 0x9d, 0x80, 0x49, 0x1d, 0x5b, - 0x22, 0x72, 0x91, 0xb6, 0x4a, 0x22, 0x3f, 0xea, 0x24, 0x62, 0x30, 0x4a, 0x34, 0xf2, 0x06, 0x14, - 0x6e, 0x5f, 0x2f, 0x0b, 0x6f, 0x06, 0xb9, 0x25, 0xdd, 0xbe, 0x5e, 0xe6, 0xab, 0x99, 0x5b, 0x6b, - 0x99, 0xb6, 0x63, 0x0c, 0x9f, 0xac, 0x6b, 0x21, 0x4e, 0x47, 0x8c, 0xd4, 0x46, 0x12, 0xac, 0x3e, - 0xee, 0xe8, 0x58, 0xa7, 0x3c, 0x4d, 0xb3, 0x08, 0xf6, 0xf7, 0xef, 0x15, 0x60, 0x4c, 0xd5, 0x4f, - 0x08, 0xa0, 0x50, 0x25, 0x6e, 0x32, 0xf8, 0x37, 0x39, 0x0d, 0x45, 0x29, 0x47, 0x09, 0xa7, 0x86, - 0xd1, 0x50, 0xc8, 0x50, 0xf3, 0x20, 0x05, 0x26, 0xbe, 0xcc, 0x6d, 0xf9, 0x93, 0x5c, 0x01, 0x25, - 0x0d, 0xf5, 0x12, 0x9b, 0x86, 0xd8, 0x80, 0xd9, 0x0a, 0x8d, 0x4c, 0x41, 0xde, 0xe3, 0x01, 0x64, - 0xc6, 0xec, 0xbc, 0xd7, 0x20, 0xef, 0x41, 0xd1, 0x6d, 0x34, 0x68, 0xc3, 0x71, 0xa5, 0xf1, 0x43, - 0xbf, 0x49, 0x53, 0x64, 0xdc, 0xf8, 0x21, 0x80, 0x54, 0xe5, 0x88, 0x94, 0x61, 0xac, 0xe9, 0x72, - 0x7b, 0xae, 0xc6, 0x00, 0x27, 0x4a, 0xcc, 0xa1, 0xc8, 0xc8, 0xee, 0x86, 0xb4, 0x41, 0x5e, 0x86, - 0x21, 0x36, 0x9a, 0xe2, 0x08, 0x91, 0xe2, 0x1b, 0x1b, 0x4c, 0xde, 0x61, 0x6b, 0xcf, 0xd8, 0x88, - 0x40, 0x5e, 0x84, 0x42, 0x77, 0x69, 0x47, 0x1c, 0x0e, 0xa5, 0x38, 0xdc, 0xb0, 0x42, 0x63, 0xc5, - 0xe4, 0x2a, 0x14, 0xf7, 0xcd, 0x48, 0xb5, 0x27, 0x12, 0xc3, 0xa8, 0xf0, 0x15, 0xe2, 0x72, 0x11, - 0x46, 0xf8, 0x41, 0x60, 0x3d, 0x0f, 0x10, 0x57, 0x9d, 0xf6, 0x3d, 0xb1, 0xbe, 0x06, 0x63, 0xaa, - 0x4a, 0x72, 0x06, 0xe0, 0x01, 0x3d, 0x70, 0xf6, 0xdc, 0x76, 0xa3, 0xc9, 0xe5, 0xbb, 0x09, 0x7b, - 0xec, 0x01, 0x3d, 0x58, 0x43, 0x00, 0x39, 0x05, 0xa3, 0x1d, 0x36, 0xaa, 0x62, 0xea, 0x4e, 0xd8, - 0x23, 0x9d, 0xee, 0x36, 0x9b, 0xa1, 0xf3, 0x30, 0x8a, 0x9a, 0x37, 0xb1, 0xd0, 0x26, 0x6d, 0xf9, - 0xd3, 0xfa, 0x93, 0x02, 0x66, 0x69, 0xd0, 0xda, 0x49, 0xce, 0xc1, 0x64, 0x3d, 0xa0, 0x78, 0xe6, - 0xb8, 0x4c, 0x92, 0x12, 0xf5, 0x4c, 0xc4, 0xc0, 0x6a, 0x83, 0x9c, 0x87, 0x69, 0x91, 0x99, 0x9c, - 0x35, 0xa8, 0xbe, 0x2d, 0xc2, 0x4a, 0x4f, 0xd8, 0x93, 0x1c, 0x7c, 0x8b, 0x1e, 0xac, 0x6c, 0x63, - 0xe0, 0xa3, 0x92, 0x1e, 0xb7, 0x32, 0x52, 0x09, 0x25, 0xed, 0x69, 0x0d, 0x8e, 0x36, 0x4d, 0x27, - 0x61, 0xc4, 0x75, 0x77, 0xbb, 0x1e, 0x0f, 0x50, 0x32, 0x61, 0x8b, 0x5f, 0xe4, 0x55, 0x98, 0x89, - 0xc3, 0x9b, 0xca, 0xcf, 0x18, 0xc6, 0xcf, 0x28, 0xa9, 0x82, 0x15, 0x0e, 0x27, 0xaf, 0x03, 0xd1, - 0xeb, 0xf3, 0xb7, 0x3f, 0xa2, 0x75, 0x3e, 0xd5, 0x26, 0xec, 0x19, 0xad, 0xe4, 0x0e, 0x16, 0x90, - 0x17, 0x60, 0x22, 0xa0, 0x21, 0x4a, 0x71, 0xd8, 0x6d, 0x98, 0xc4, 0xc8, 0x1e, 0x97, 0x30, 0xd6, - 0x77, 0x17, 0xa0, 0xa4, 0x75, 0x07, 0x86, 0x06, 0xe5, 0x31, 0x95, 0xed, 0xa9, 0x18, 0x6e, 0x77, - 0xaa, 0x0d, 0xf2, 0x15, 0x58, 0xd0, 0x30, 0x79, 0x3e, 0x25, 0x87, 0x36, 0xbd, 0x5d, 0x6f, 0xbb, - 0x49, 0xc5, 0x34, 0x4a, 0x4f, 0x56, 0x75, 0x07, 0xb3, 0xe7, 0x63, 0x6a, 0x9e, 0x69, 0x69, 0x55, - 0xd0, 0x92, 0x75, 0x98, 0x4b, 0x70, 0xa6, 0x0d, 0xa7, 0xdb, 0xe9, 0x19, 0x11, 0x28, 0xe6, 0x49, - 0x4c, 0x9e, 0xb4, 0x71, 0xb7, 0x63, 0x2d, 0xc3, 0x4c, 0x6a, 0x87, 0xd1, 0x92, 0x15, 0xf3, 0x1d, - 0xb3, 0x7f, 0xb2, 0x62, 0xab, 0x0d, 0x13, 0xfa, 0x89, 0x71, 0x44, 0x08, 0xf2, 0x93, 0xe8, 0x88, - 0xcf, 0xb7, 0xd3, 0x91, 0xc7, 0x87, 0x8b, 0x79, 0xaf, 0x81, 0xee, 0xf7, 0x17, 0xa0, 0x28, 0x85, - 0x1b, 0x21, 0x53, 0xa0, 0x86, 0x57, 0x48, 0xd5, 0x07, 0xb6, 0x2a, 0xb5, 0x5e, 0x86, 0x51, 0x71, - 0x28, 0xf4, 0xd7, 0xeb, 0x5a, 0x3f, 0x9c, 0x87, 0x69, 0x9b, 0xb2, 0x2d, 0x8b, 0xf2, 0xbc, 0x03, - 0x4f, 0xed, 0x35, 0x33, 0x3b, 0x9c, 0x9b, 0xf1, 0x6d, 0x7d, 0x22, 0xfe, 0xff, 0xc3, 0x1c, 0xcc, - 0x66, 0xe0, 0x7e, 0xa2, 0x8c, 0x77, 0xd7, 0x60, 0xac, 0xe2, 0xb9, 0xcd, 0x72, 0xa3, 0xa1, 0xbc, - 0xf2, 0x51, 0x24, 0xc6, 0xb4, 0x18, 0x2e, 0x83, 0xea, 0xe2, 0x81, 0x42, 0x25, 0xaf, 0x88, 0x49, - 0x11, 0x67, 0x1b, 0xc7, 0x49, 0xf1, 0xf1, 0xe1, 0x22, 0xf0, 0x36, 0xc5, 0x59, 0x55, 0x31, 0xc4, - 0x22, 0x07, 0xc6, 0x56, 0xf3, 0x4f, 0xed, 0xd0, 0x65, 0x87, 0x58, 0x4c, 0x7e, 0xde, 0x40, 0x41, - 0xff, 0x7f, 0x34, 0x0f, 0x27, 0xb3, 0x09, 0x3f, 0x69, 0xf2, 0x42, 0x4c, 0xb7, 0xa0, 0x85, 0x85, - 0xc5, 0xe4, 0x85, 0x3c, 0x37, 0x03, 0xe2, 0xc7, 0x08, 0x64, 0x07, 0x26, 0xd7, 0xdd, 0x30, 0x5a, - 0xa3, 0x6e, 0x10, 0x6d, 0x53, 0x37, 0x1a, 0x40, 0x46, 0x7e, 0x51, 0x3e, 0x9f, 0xe2, 0x31, 0xbd, - 0x27, 0x29, 0x13, 0x52, 0xac, 0xc9, 0x56, 0x4d, 0x94, 0xa1, 0x01, 0x26, 0xca, 0x37, 0x61, 0xba, - 0x46, 0x5b, 0x6e, 0x67, 0xcf, 0x0f, 0xa4, 0xdb, 0xe5, 0x25, 0x98, 0x54, 0xa0, 0xcc, 0xd9, 0x62, - 0x16, 0x1b, 0xf8, 0x5a, 0x47, 0xc4, 0x5b, 0x89, 0x59, 0x6c, 0xfd, 0x9d, 0x3c, 0x9c, 0x2a, 0xd7, - 0x85, 0x55, 0x93, 0x28, 0x90, 0xc6, 0x97, 0x9f, 0x71, 0xdd, 0xe4, 0x32, 0x8c, 0xdd, 0x76, 0x1f, - 0xad, 0x53, 0x37, 0xa4, 0xa1, 0x48, 0x1d, 0xc5, 0x05, 0x4a, 0xf7, 0x51, 0x6c, 0xec, 0x63, 0xc7, - 0x38, 0xfa, 0x8d, 0x7b, 0xe8, 0x53, 0xde, 0xb8, 0x2d, 0x18, 0x59, 0xf3, 0x9b, 0x0d, 0x71, 0xdc, - 0x8a, 0x67, 0xc0, 0x3d, 0x84, 0xd8, 0xa2, 0x84, 0x5d, 0x54, 0xa7, 0x54, 0x8b, 0xb1, 0x09, 0x9f, - 0x79, 0x97, 0x9c, 0x87, 0x51, 0xac, 0xa8, 0x5a, 0xd1, 0x0f, 0x8d, 0x26, 0xc5, 0x04, 0x40, 0x0d, - 0x5b, 0x16, 0xea, 0x3d, 0x31, 0xfc, 0xe9, 0x7a, 0xc2, 0xfa, 0xf7, 0xf1, 0x85, 0x51, 0xff, 0x4a, - 0x76, 0x12, 0x69, 0x0d, 0xc9, 0x0d, 0xd8, 0x90, 0xfc, 0x13, 0x1b, 0x92, 0x42, 0xcf, 0x21, 0xf9, - 0x76, 0x1e, 0xc6, 0x55, 0x63, 0xbf, 0xc7, 0x62, 0x13, 0xab, 0xef, 0x1a, 0x28, 0x54, 0x42, 0x4d, - 0xdb, 0x2b, 0x44, 0x44, 0x82, 0xf7, 0x61, 0x44, 0x2c, 0xa6, 0x5c, 0xc2, 0x08, 0x31, 0x31, 0xba, - 0xcb, 0x53, 0x82, 0xf5, 0x08, 0x0e, 0x68, 0x68, 0x0b, 0x3a, 0x8c, 0x45, 0x71, 0x9f, 0x6e, 0x8b, - 0x07, 0xe7, 0xa7, 0xf6, 0x8c, 0xca, 0x8e, 0x45, 0x11, 0x7f, 0xd8, 0x40, 0xa7, 0xd3, 0x3f, 0x2d, - 0x42, 0x29, 0x49, 0x72, 0x74, 0xf4, 0xe7, 0xcd, 0xee, 0x36, 0xbf, 0x2d, 0xf0, 0xe8, 0xcf, 0x9d, - 0xee, 0xb6, 0xcd, 0x60, 0x68, 0x8f, 0x12, 0x78, 0x0f, 0xf1, 0xab, 0x27, 0x84, 0x3d, 0x4a, 0xe0, - 0x3d, 0x34, 0xec, 0x51, 0x02, 0xef, 0x21, 0x5e, 0xd1, 0xd7, 0x6b, 0xe8, 0x3e, 0x8b, 0x57, 0x05, - 0x71, 0x45, 0x6f, 0x86, 0xc9, 0x8c, 0x2c, 0x12, 0x8d, 0x1d, 0x95, 0xcb, 0xd4, 0x0d, 0x44, 0xa4, - 0x62, 0xb1, 0x9d, 0xe1, 0x51, 0xb9, 0x8d, 0x60, 0x9e, 0x40, 0xd9, 0xd6, 0x91, 0x48, 0x13, 0x88, - 0xf6, 0x53, 0x2e, 0xe0, 0xa3, 0x6f, 0xad, 0xd2, 0x80, 0x68, 0x4e, 0x67, 0xed, 0xe8, 0xab, 0x39, - 0x83, 0xef, 0x93, 0x54, 0x94, 0x6e, 0x8a, 0xf0, 0x6b, 0xa8, 0x9a, 0x29, 0x1e, 0xc9, 0x4c, 0xfa, - 0x97, 0x03, 0x0f, 0xcf, 0xa6, 0x14, 0x34, 0x31, 0x13, 0xf2, 0x2e, 0x8c, 0xeb, 0x4e, 0xd1, 0xdc, - 0x75, 0xf7, 0x39, 0x1e, 0x51, 0xab, 0x47, 0x0e, 0x3f, 0x9d, 0x80, 0x6c, 0xc3, 0xa9, 0x15, 0xbf, - 0x1d, 0x76, 0x5b, 0x32, 0x76, 0x57, 0x1c, 0x31, 0x14, 0x54, 0x0e, 0xfe, 0x17, 0xeb, 0x02, 0x45, - 0xf8, 0xe0, 0x4a, 0x0b, 0x6f, 0xf3, 0x02, 0xd2, 0x8b, 0x11, 0xd9, 0x82, 0x71, 0x54, 0x36, 0x0a, - 0x13, 0xb2, 0x71, 0x73, 0xdb, 0x88, 0x4b, 0x2a, 0x6c, 0x61, 0xf0, 0xe0, 0x33, 0x6e, 0xab, 0x29, - 0x0d, 0x8c, 0x75, 0xa5, 0xa9, 0x86, 0x4c, 0xbe, 0x06, 0x53, 0xfc, 0x5a, 0x7c, 0x9f, 0x6e, 0xf3, - 0xb9, 0x33, 0x61, 0xdc, 0xf1, 0xcd, 0x42, 0xfe, 0x20, 0x2d, 0x54, 0xbc, 0xfb, 0x74, 0x9b, 0x8f, - 0xbd, 0x61, 0xde, 0x6f, 0xe0, 0x93, 0xbb, 0x30, 0xbb, 0xe6, 0x86, 0x1c, 0xa8, 0x79, 0xb7, 0x4e, - 0xa2, 0xee, 0x13, 0xcd, 0x2e, 0xf7, 0xdc, 0x50, 0xea, 0x8c, 0x33, 0xbd, 0x59, 0xb3, 0xe8, 0xc9, - 0x0f, 0xe7, 0x60, 0xde, 0x50, 0x29, 0x0b, 0xe3, 0x9f, 0x16, 0x6d, 0x47, 0x68, 0xc7, 0x3f, 0xa5, - 0x52, 0x37, 0xf7, 0x42, 0xe3, 0x43, 0x92, 0xd0, 0x5a, 0x07, 0x71, 0xb9, 0x6e, 0xcf, 0xd8, 0x8b, - 0x87, 0x58, 0xa8, 0xb8, 0xa6, 0xa7, 0xcd, 0x85, 0x9a, 0x58, 0xd7, 0x12, 0xcd, 0xba, 0x96, 0xec, - 0x6f, 0xa1, 0x42, 0xca, 0x29, 0x15, 0xd2, 0x1c, 0x0c, 0x63, 0xaf, 0xca, 0x60, 0x1c, 0xf8, 0xc3, - 0xfa, 0x9c, 0xbe, 0x0f, 0x09, 0xb1, 0xb0, 0xef, 0x3e, 0x64, 0xfd, 0x77, 0x23, 0x30, 0x9d, 0x98, - 0x16, 0xe2, 0x9e, 0x9a, 0x4b, 0xdd, 0x53, 0x6b, 0x00, 0x5c, 0x89, 0x3a, 0xa0, 0xb6, 0x53, 0xfa, - 0x10, 0x8d, 0x0b, 0x57, 0x40, 0xb5, 0xa6, 0x34, 0x36, 0x8c, 0x29, 0x5f, 0xb1, 0x03, 0x6a, 0x9f, - 0x15, 0x53, 0xbe, 0xe8, 0x35, 0xa6, 0x31, 0x1b, 0xb2, 0x08, 0xc3, 0x18, 0x41, 0x4f, 0x77, 0xe1, - 0xf2, 0x18, 0xc0, 0xe6, 0x70, 0x72, 0x0e, 0x46, 0x98, 0x10, 0x55, 0xad, 0x88, 0x4d, 0x10, 0xcf, - 0x16, 0x26, 0x65, 0x31, 0x89, 0x45, 0x14, 0x91, 0x6b, 0x30, 0xc1, 0xff, 0x12, 0x41, 0x14, 0x46, - 0x4c, 0x8b, 0x34, 0xc7, 0x6b, 0xc8, 0x38, 0x0a, 0x06, 0x1e, 0xbb, 0x5d, 0xd4, 0xba, 0xa8, 0x59, - 0xa9, 0x56, 0x44, 0xc8, 0x55, 0xbc, 0x5d, 0x84, 0x1c, 0x88, 0xa9, 0xd1, 0x15, 0x02, 0x93, 0x65, - 0x84, 0x21, 0x75, 0x11, 0xef, 0x94, 0x28, 0xcb, 0x70, 0x03, 0x6a, 0x5b, 0x94, 0x90, 0x8b, 0xfc, - 0xd1, 0x02, 0xc5, 0x42, 0x9e, 0x81, 0x0a, 0x5f, 0x04, 0x50, 0x31, 0x81, 0xb2, 0xa1, 0x2a, 0x66, - 0x95, 0xb3, 0xbf, 0x57, 0x5b, 0xae, 0xd7, 0x14, 0xdb, 0x0a, 0x56, 0x8e, 0xb8, 0x94, 0x41, 0xed, - 0x18, 0x81, 0xbc, 0x0d, 0x53, 0xec, 0xc7, 0x8a, 0xdf, 0x6a, 0xf9, 0x6d, 0x64, 0x3f, 0x1e, 0xc7, - 0xe3, 0x41, 0x92, 0x3a, 0x16, 0xf1, 0x5a, 0x12, 0xb8, 0xec, 0x3c, 0xc1, 0x07, 0xd1, 0x2e, 0x7f, - 0x4e, 0x99, 0x88, 0xcf, 0x13, 0x24, 0x0d, 0x39, 0xdc, 0xd6, 0x91, 0xc8, 0x9b, 0x30, 0xc9, 0x7e, - 0xde, 0xf0, 0x1e, 0x52, 0x5e, 0xe1, 0x64, 0xfc, 0x44, 0x8f, 0x54, 0xbb, 0xac, 0x84, 0xd7, 0x67, - 0x62, 0x92, 0x2f, 0xc3, 0x09, 0xe4, 0x54, 0xf7, 0x3b, 0xb4, 0x51, 0xde, 0xd9, 0xf1, 0x9a, 0x1e, - 0x37, 0x11, 0xe2, 0xe1, 0x02, 0x50, 0xbb, 0xcd, 0x2b, 0x46, 0x0c, 0xc7, 0x8d, 0x51, 0xec, 0x6c, - 0x4a, 0x72, 0x1f, 0x4a, 0x2b, 0xdd, 0x30, 0xf2, 0x5b, 0xe5, 0x28, 0x0a, 0xbc, 0xed, 0x6e, 0x44, - 0xc3, 0xf9, 0x69, 0xc3, 0xa9, 0x9e, 0x2d, 0x0e, 0x55, 0xc8, 0xf5, 0x41, 0x75, 0xa4, 0x70, 0x5c, - 0x45, 0x62, 0xa7, 0x98, 0x58, 0xff, 0x6d, 0x0e, 0x26, 0x0d, 0x52, 0xf2, 0x06, 0x4c, 0x5c, 0x0f, - 0x3c, 0xda, 0x6e, 0x34, 0x0f, 0xb4, 0x8b, 0x2a, 0xde, 0x62, 0x76, 0x04, 0x9c, 0x7f, 0xb5, 0x81, - 0xa6, 0xf4, 0x3c, 0xf9, 0x4c, 0xfb, 0xbd, 0xcb, 0xdc, 0x93, 0x50, 0x4c, 0xd0, 0x42, 0x1c, 0xe5, - 0x03, 0x27, 0xa8, 0x98, 0x9d, 0x1a, 0x0a, 0x79, 0x07, 0x46, 0xf8, 0xd3, 0xa9, 0x30, 0x26, 0x3b, - 0x9d, 0xf5, 0x99, 0xdc, 0x6b, 0x15, 0x27, 0x22, 0x1a, 0xae, 0x84, 0xb6, 0x20, 0xb2, 0x7e, 0x2a, - 0x07, 0x24, 0x8d, 0x7a, 0x84, 0xde, 0xeb, 0x48, 0x83, 0x98, 0xf7, 0xd5, 0x6a, 0x2c, 0x18, 0xda, - 0x68, 0x56, 0x13, 0x2f, 0xe0, 0x1d, 0x2f, 0x56, 0x9d, 0xae, 0x88, 0xe3, 0xc5, 0xd6, 0x5f, 0xcb, - 0x03, 0xc4, 0xd8, 0xe4, 0x8b, 0x3c, 0x51, 0xc9, 0x97, 0xbb, 0x6e, 0xd3, 0xdb, 0xf1, 0xcc, 0xc8, - 0x7d, 0xc8, 0xe4, 0x9b, 0xb2, 0xc4, 0x36, 0x11, 0xc9, 0x7b, 0x30, 0x5d, 0xdb, 0x34, 0x69, 0xb5, - 0xa4, 0x0c, 0x61, 0xc7, 0x49, 0x90, 0x27, 0xb1, 0xd1, 0x68, 0x54, 0x1f, 0x0d, 0x6e, 0x34, 0xca, - 0x07, 0x42, 0x94, 0xb0, 0x8d, 0xa5, 0xb6, 0x29, 0xec, 0x94, 0x1b, 0xd5, 0x8a, 0xd8, 0xa5, 0xb0, - 0x75, 0x61, 0xc7, 0xe9, 0x08, 0x03, 0x66, 0xb6, 0x4f, 0x18, 0x78, 0x71, 0x47, 0x0e, 0xf7, 0xf0, - 0x4c, 0xfd, 0x69, 0x54, 0xfb, 0xb5, 0xfc, 0x88, 0x0a, 0x6d, 0xc7, 0x53, 0x7b, 0xef, 0x89, 0xdf, - 0xdd, 0x87, 0x0d, 0x87, 0x3b, 0xe3, 0xeb, 0x84, 0xd5, 0xc7, 0xd5, 0xf8, 0x92, 0xc2, 0x5f, 0xe0, - 0x33, 0xec, 0x44, 0xfe, 0x7e, 0x0e, 0x4e, 0x64, 0xd2, 0x92, 0x4b, 0x00, 0xb1, 0x4e, 0x49, 0xf4, - 0x12, 0xee, 0x98, 0x71, 0x6c, 0x0b, 0x5b, 0xc3, 0x20, 0x5f, 0x4d, 0x6a, 0x83, 0x8e, 0x3e, 0x08, - 0x17, 0x64, 0xec, 0x22, 0x53, 0x1b, 0x94, 0xa1, 0x03, 0xb2, 0xfe, 0x61, 0x01, 0x66, 0xb4, 0xd0, - 0x19, 0xbc, 0xad, 0x47, 0x18, 0xf1, 0x3e, 0x80, 0x09, 0xf6, 0x35, 0x5e, 0x5d, 0x78, 0xfd, 0x70, - 0x1b, 0x91, 0x57, 0x52, 0x2e, 0x53, 0x82, 0xdb, 0x25, 0x1d, 0x99, 0x47, 0x14, 0xc3, 0xad, 0x13, - 0xdf, 0x04, 0xea, 0x69, 0xef, 0x1f, 0x83, 0x39, 0x09, 0x61, 0xb2, 0x72, 0xd0, 0x76, 0x5b, 0xaa, - 0x36, 0x6e, 0x2b, 0xf2, 0x6a, 0xcf, 0xda, 0x0c, 0x6c, 0x5e, 0x5d, 0xec, 0x5c, 0xc0, 0xcb, 0x32, - 0xfc, 0x5a, 0x0d, 0xaa, 0x85, 0xf7, 0x60, 0x26, 0xd5, 0xe8, 0x63, 0x05, 0x37, 0xbb, 0x0f, 0x24, - 0xdd, 0x8e, 0x0c, 0x0e, 0xaf, 0x9a, 0xa1, 0xf3, 0x4e, 0xa8, 0x67, 0x61, 0x4c, 0xc9, 0xcc, 0x2d, - 0x4f, 0x96, 0xf4, 0xd0, 0x67, 0x3f, 0x9d, 0xd7, 0xdd, 0xd6, 0x9e, 0xf6, 0x55, 0xf7, 0xbe, 0x71, - 0x1b, 0x7e, 0xbe, 0xd7, 0x98, 0x0e, 0xa4, 0x75, 0xf8, 0x6e, 0x01, 0x4e, 0xf5, 0xa0, 0x24, 0x07, - 0xc9, 0x49, 0xc4, 0xb5, 0x10, 0x57, 0xfa, 0x57, 0xf8, 0x24, 0xa6, 0x12, 0xf9, 0x22, 0x77, 0x5c, - 0xaf, 0x63, 0xda, 0x5f, 0x71, 0xff, 0xe6, 0x59, 0xe8, 0x15, 0x34, 0xe9, 0xb1, 0xce, 0xa1, 0xe4, - 0x3d, 0x18, 0x46, 0x9f, 0xc5, 0x44, 0xe8, 0x2e, 0x86, 0x81, 0x70, 0x2d, 0xce, 0x19, 0xfb, 0x69, - 0xc4, 0x39, 0x63, 0x00, 0xf2, 0x05, 0x28, 0x94, 0xef, 0xd7, 0xc4, 0xb8, 0x4c, 0xe9, 0xe4, 0xf7, - 0x6b, 0x71, 0x78, 0x75, 0xd7, 0x88, 0x83, 0xce, 0x28, 0x18, 0xe1, 0x8d, 0x95, 0x4d, 0x31, 0x2a, - 0x3a, 0xe1, 0x8d, 0x95, 0xcd, 0x98, 0x70, 0xb7, 0x6e, 0x84, 0x42, 0xb9, 0xb1, 0xb2, 0xf9, 0xd9, - 0x4d, 0xfb, 0xbf, 0x95, 0xe7, 0xde, 0xf6, 0xfc, 0xc3, 0xde, 0x83, 0x09, 0x23, 0xb4, 0x69, 0x2e, - 0x96, 0xc7, 0x54, 0x04, 0xd9, 0x84, 0x71, 0x8d, 0x41, 0x20, 0x13, 0x15, 0xb0, 0xdf, 0x28, 0xf1, - 0xea, 0x66, 0x2c, 0x8a, 0x03, 0xca, 0xc4, 0xc9, 0x44, 0x05, 0x8a, 0x84, 0x5c, 0x85, 0xe2, 0x16, - 0x6d, 0xbb, 0xed, 0x48, 0x29, 0x44, 0xd1, 0x40, 0x36, 0x42, 0x98, 0x29, 0x35, 0x28, 0x44, 0x34, - 0xe6, 0xec, 0x6e, 0x87, 0xf5, 0xc0, 0xc3, 0xa8, 0x1c, 0xea, 0x2c, 0xe6, 0xc6, 0x9c, 0x5a, 0x89, - 0xc9, 0x20, 0x41, 0x64, 0xfd, 0x74, 0x0e, 0x46, 0xc5, 0x40, 0xf2, 0x04, 0x33, 0xbb, 0xf1, 0x59, - 0x22, 0x12, 0xcc, 0xec, 0x7a, 0xc9, 0x04, 0x33, 0xbb, 0x3c, 0xf4, 0xc5, 0x98, 0x70, 0x1c, 0x55, - 0x4f, 0x83, 0x3c, 0xd7, 0x39, 0x07, 0x9a, 0xd5, 0xc6, 0xa8, 0x83, 0x7a, 0xc9, 0x58, 0x7f, 0x57, - 0xb4, 0xec, 0xc6, 0xca, 0x26, 0x59, 0x82, 0xe2, 0xba, 0xcf, 0x03, 0x9d, 0xe8, 0xd9, 0x02, 0x9b, - 0x02, 0xa6, 0x77, 0x90, 0xc4, 0x63, 0xed, 0xdb, 0x0c, 0x7c, 0x71, 0x97, 0xd1, 0xda, 0xd7, 0xe1, - 0xc0, 0x44, 0xfb, 0x14, 0xea, 0xc0, 0xed, 0xa3, 0x19, 0x9b, 0xc4, 0xbd, 0xab, 0x18, 0xc1, 0xfd, - 0xa6, 0xee, 0x7d, 0x24, 0x8a, 0xe4, 0x4e, 0xb1, 0xd0, 0x6b, 0xa7, 0xb8, 0x77, 0xd5, 0xce, 0xa0, - 0xc2, 0x77, 0xb5, 0x18, 0x5c, 0xa3, 0xc1, 0xc3, 0xa7, 0x78, 0x97, 0xce, 0x7e, 0x57, 0x4b, 0x7e, - 0xde, 0x40, 0x9b, 0xf4, 0x7f, 0x9d, 0x87, 0x93, 0xd9, 0x84, 0xfa, 0xb7, 0xe4, 0xfa, 0x7c, 0xcb, - 0x05, 0x28, 0xae, 0xf9, 0x61, 0xa4, 0xd9, 0xd3, 0xa1, 0xfa, 0x7f, 0x4f, 0xc0, 0x6c, 0x55, 0xca, - 0xee, 0xdc, 0xec, 0x6f, 0xb5, 0x3c, 0x91, 0x1f, 0xfa, 0x98, 0xb3, 0x3b, 0x37, 0x2f, 0x22, 0x37, - 0xa0, 0x68, 0x0b, 0xef, 0x97, 0x44, 0xd7, 0x48, 0xb0, 0x92, 0xa6, 0x48, 0x20, 0x20, 0x46, 0x84, - 0x59, 0x01, 0x23, 0x65, 0x18, 0x15, 0xa3, 0x9f, 0x78, 0x3a, 0xce, 0x98, 0x32, 0x66, 0xd0, 0x67, - 0x49, 0xc7, 0x76, 0x14, 0x7c, 0x04, 0xac, 0x56, 0xa4, 0x23, 0x0b, 0xee, 0x28, 0xfc, 0x91, 0xd0, - 0x34, 0x5d, 0x54, 0x88, 0xd6, 0x0f, 0xe7, 0x01, 0xa4, 0xd6, 0xe6, 0xa9, 0x9d, 0x61, 0x5f, 0x30, - 0x66, 0x98, 0x66, 0xc9, 0x33, 0x78, 0x42, 0xc4, 0x3b, 0x68, 0x51, 0x33, 0x78, 0x3a, 0xc4, 0x45, - 0x18, 0xde, 0x8a, 0x15, 0x5a, 0xc2, 0xad, 0x02, 0xd5, 0xd1, 0x1c, 0x6e, 0x6d, 0xc3, 0xdc, 0x0d, - 0x1a, 0xc5, 0xea, 0x2d, 0xf9, 0xf4, 0xd8, 0x9f, 0xed, 0x6b, 0x30, 0x26, 0xf0, 0xd5, 0xfe, 0xc5, - 0x75, 0x31, 0x22, 0x6c, 0x03, 0xea, 0x62, 0x24, 0x02, 0xdb, 0x8d, 0x2a, 0xb4, 0x49, 0x23, 0xfa, - 0xd9, 0x56, 0x53, 0x03, 0xc2, 0x3f, 0x05, 0xbf, 0x6c, 0xb0, 0x1a, 0x8e, 0xec, 0x9f, 0x7b, 0x70, - 0x42, 0xb5, 0xfd, 0x49, 0xf2, 0xbd, 0xcc, 0xae, 0x94, 0x22, 0x5e, 0x72, 0xcc, 0xb1, 0x8f, 0xed, - 0xc9, 0x23, 0x58, 0x90, 0x04, 0xf7, 0x3d, 0x65, 0x92, 0x38, 0x10, 0x2d, 0x79, 0x1b, 0xc6, 0x35, - 0x1a, 0x11, 0xef, 0x17, 0xd5, 0xd4, 0xfb, 0x5e, 0xb4, 0xe7, 0x84, 0x1c, 0xae, 0xab, 0xa9, 0x35, - 0x74, 0xeb, 0x43, 0x78, 0x56, 0xb9, 0xbe, 0x64, 0x54, 0x9d, 0x60, 0x9e, 0x3b, 0x1e, 0xf3, 0x8d, - 0xf8, 0xb3, 0xaa, 0x6d, 0xe5, 0xae, 0x2a, 0x79, 0x13, 0xfd, 0xb3, 0xc4, 0xc7, 0x3c, 0x97, 0x72, - 0x80, 0xd5, 0xfc, 0x5c, 0xad, 0xb7, 0xb4, 0xc6, 0x66, 0x30, 0x34, 0x88, 0x73, 0x49, 0xe2, 0x1f, - 0xce, 0xc3, 0xf4, 0x9d, 0x6a, 0x65, 0x45, 0x59, 0x1f, 0x7d, 0x8f, 0xa5, 0x6b, 0x34, 0xbe, 0xad, - 0xf7, 0x7e, 0x63, 0xdd, 0x85, 0xd9, 0x44, 0x37, 0xa0, 0xe8, 0xf0, 0x2e, 0xf7, 0xcd, 0x50, 0x60, - 0x29, 0x36, 0x9c, 0xcc, 0x62, 0x7f, 0xef, 0xaa, 0x9d, 0xc0, 0xb6, 0xfe, 0xd9, 0x58, 0x82, 0xaf, - 0xd8, 0xc2, 0x5e, 0x83, 0xb1, 0x6a, 0x18, 0x76, 0x69, 0x70, 0xd7, 0x5e, 0xd7, 0x55, 0x05, 0x1e, - 0x02, 0x9d, 0x6e, 0xd0, 0xb4, 0x63, 0x04, 0x72, 0x11, 0x8a, 0x22, 0x04, 0xae, 0xdc, 0x13, 0x50, - 0x6b, 0xab, 0x22, 0xe8, 0xda, 0xaa, 0x98, 0xbc, 0x01, 0x13, 0xfc, 0x6f, 0x3e, 0xdb, 0x44, 0x87, - 0xa3, 0x72, 0x50, 0xa0, 0xf3, 0xd9, 0x69, 0x1b, 0x68, 0xe4, 0x15, 0x28, 0x94, 0x57, 0x6c, 0xa1, - 0x0e, 0x12, 0x72, 0x23, 0x26, 0x61, 0xee, 0x52, 0xf3, 0x12, 0xb1, 0x62, 0x33, 0xe9, 0x4f, 0xba, - 0xc6, 0x0b, 0x4d, 0x36, 0xcf, 0x15, 0x2d, 0x60, 0x89, 0xc3, 0x0c, 0x61, 0xe4, 0x32, 0x8c, 0x56, - 0xbc, 0xb0, 0xd3, 0x74, 0x0f, 0x84, 0x1e, 0x9b, 0xe7, 0x22, 0xe2, 0x20, 0xc3, 0xe3, 0x9d, 0x83, - 0xc8, 0x45, 0x99, 0xa3, 0xa5, 0x18, 0xbb, 0x78, 0xf4, 0x48, 0xc4, 0xf2, 0x1a, 0x8c, 0x88, 0x40, - 0xb1, 0x63, 0x5a, 0x08, 0xf8, 0x64, 0x80, 0x58, 0x81, 0x93, 0x76, 0xc2, 0x84, 0x27, 0xe9, 0x84, - 0xb9, 0x0d, 0xa7, 0x6e, 0xa0, 0xf6, 0xc6, 0x8c, 0xe5, 0x72, 0xd7, 0xae, 0x0a, 0x7d, 0x38, 0x3e, - 0x03, 0x71, 0x05, 0x4f, 0x32, 0x1c, 0x8c, 0xd3, 0x0d, 0xf4, 0xd4, 0x7a, 0xbd, 0x18, 0x91, 0xaf, - 0xc0, 0x5c, 0x56, 0x91, 0xd0, 0x9a, 0x63, 0xd4, 0x92, 0xec, 0x0a, 0xf4, 0xa8, 0x25, 0x59, 0x1c, - 0xc8, 0x3a, 0x94, 0x38, 0xbc, 0xdc, 0x68, 0x79, 0x6d, 0xae, 0xf9, 0xe7, 0x5a, 0x75, 0xf4, 0xb9, - 0x10, 0x5c, 0x5d, 0x56, 0xc8, 0x5f, 0x00, 0x0c, 0x2f, 0x9d, 0x04, 0x25, 0xf9, 0xf1, 0x1c, 0xbb, - 0xcd, 0xf1, 0xb0, 0xaa, 0x77, 0xed, 0xf5, 0x50, 0x44, 0xbc, 0x3a, 0x19, 0x3b, 0xe0, 0xd4, 0xa2, - 0xc0, 0x6b, 0xef, 0x0a, 0x0f, 0x9c, 0x2d, 0xe1, 0x81, 0xf3, 0xf6, 0x27, 0xf2, 0xc0, 0xe1, 0xac, - 0xc2, 0xc7, 0x87, 0x8b, 0x13, 0x81, 0xa8, 0x13, 0x57, 0x91, 0xd1, 0x02, 0x4c, 0x0b, 0xdf, 0x6c, - 0xfa, 0xfb, 0x77, 0xdb, 0x3c, 0xa8, 0x23, 0x6d, 0xf0, 0x8f, 0x9c, 0xc6, 0x1d, 0x9c, 0xa7, 0x85, - 0x67, 0xe5, 0x4e, 0x57, 0x21, 0xa4, 0x3e, 0x34, 0x93, 0x03, 0xbb, 0x78, 0x4a, 0x2f, 0x0f, 0xee, - 0x51, 0x5a, 0x8a, 0x2f, 0x9e, 0xd2, 0x25, 0xc4, 0xc1, 0x69, 0xa4, 0x4f, 0x1e, 0x83, 0x84, 0x5c, - 0x86, 0x91, 0xdb, 0xee, 0xa3, 0xf2, 0x2e, 0x15, 0xb9, 0xb7, 0x26, 0xe5, 0xf6, 0x87, 0xc0, 0xe5, - 0xe2, 0xef, 0x72, 0x2f, 0x82, 0x67, 0x6c, 0x81, 0x46, 0x7e, 0x20, 0x07, 0x27, 0xf9, 0x32, 0x96, - 0x5f, 0x59, 0xa3, 0x51, 0xc4, 0xfa, 0x41, 0x84, 0xbe, 0x92, 0x99, 0x2b, 0x6a, 0xb5, 0x3b, 0xd9, - 0x78, 0x3c, 0x89, 0xb9, 0xd8, 0x19, 0x54, 0xc7, 0x85, 0xa2, 0xd4, 0x08, 0xb3, 0x99, 0x49, 0x2f, - 0x2c, 0xe4, 0xbf, 0x20, 0x5b, 0x4e, 0x5e, 0xd7, 0x1d, 0x1f, 0x0b, 0x28, 0xe7, 0x8e, 0xb6, 0xdc, - 0x47, 0x8e, 0xbb, 0x4b, 0x8d, 0xf7, 0x6c, 0xa1, 0x67, 0xfe, 0xc9, 0x1c, 0x9c, 0xee, 0xd9, 0x38, - 0x72, 0x0d, 0x4e, 0xc9, 0x7c, 0xf6, 0x7b, 0x51, 0xd4, 0x09, 0x1d, 0x79, 0x19, 0x10, 0xae, 0x92, - 0xf6, 0x09, 0x51, 0xbc, 0xc6, 0x4a, 0xe5, 0xfd, 0x20, 0x24, 0xef, 0xc1, 0x73, 0x5e, 0x3b, 0xa4, - 0xf5, 0x6e, 0x40, 0xe3, 0x84, 0xf8, 0x5e, 0x23, 0x70, 0x02, 0xb7, 0xbd, 0x2b, 0xfd, 0x3e, 0xed, - 0xd3, 0x12, 0x47, 0xa6, 0xc5, 0xf7, 0x1a, 0x81, 0x8d, 0x08, 0xd6, 0x1f, 0x8c, 0xf1, 0x53, 0xb1, - 0xdc, 0x8d, 0xf6, 0xe4, 0x39, 0xba, 0x94, 0xe5, 0x2d, 0xc4, 0xcd, 0x03, 0x35, 0x6f, 0x21, 0xd3, - 0x47, 0x48, 0x3e, 0x67, 0xe4, 0x33, 0x9f, 0x33, 0x5e, 0x83, 0xb1, 0x95, 0x3d, 0x5a, 0x7f, 0xa0, - 0x3c, 0x36, 0x8a, 0x42, 0x5f, 0xcc, 0x80, 0x3c, 0x86, 0x6b, 0x8c, 0x40, 0x2e, 0x03, 0xa0, 0xfb, - 0x20, 0x17, 0xb2, 0xb4, 0x38, 0xec, 0xe8, 0x6d, 0x28, 0x2c, 0x2e, 0x34, 0x14, 0x64, 0x5f, 0xb3, - 0xaf, 0xeb, 0x26, 0x1a, 0x9c, 0x7d, 0x18, 0xec, 0x08, 0xf4, 0x18, 0x81, 0x7d, 0x9e, 0xb6, 0x54, - 0xc4, 0xc6, 0x5e, 0x4a, 0xad, 0x27, 0x1d, 0x09, 0xad, 0x1f, 0xa5, 0x79, 0x3a, 0xee, 0xeb, 0x13, - 0xc2, 0xfa, 0x51, 0x99, 0xb2, 0xdb, 0x31, 0x02, 0xf9, 0x02, 0x8c, 0xae, 0xd0, 0x20, 0xda, 0xda, - 0x5a, 0x47, 0x2b, 0x0a, 0x1e, 0xac, 0xbc, 0x88, 0x81, 0xa5, 0xa3, 0xa8, 0xf9, 0xf1, 0xe1, 0xe2, - 0x64, 0xe4, 0xb5, 0xa8, 0x0a, 0xc2, 0x6a, 0x4b, 0x6c, 0xb2, 0x0c, 0x25, 0xfe, 0xce, 0x1b, 0x0b, - 0xd3, 0xb8, 0xd5, 0x17, 0xf9, 0xc1, 0x23, 0x1e, 0x85, 0xf7, 0xe9, 0xb6, 0x0a, 0xab, 0x9d, 0xc2, - 0x27, 0xab, 0x32, 0x1a, 0xbd, 0xfe, 0x91, 0x10, 0x6b, 0x77, 0x92, 0x4b, 0x80, 0x7d, 0x6b, 0x9a, - 0x82, 0x94, 0x61, 0x72, 0xc5, 0x6f, 0x75, 0xdc, 0xc8, 0xc3, 0xd4, 0x4e, 0x07, 0x62, 0x57, 0x47, - 0x0d, 0x55, 0x5d, 0x2f, 0x30, 0x8e, 0x08, 0xbd, 0x80, 0x5c, 0x87, 0x29, 0xdb, 0xef, 0xb2, 0x41, - 0x92, 0xd7, 0x4a, 0xbe, 0x71, 0xa3, 0xad, 0x43, 0xc0, 0x4a, 0xd8, 0x39, 0x23, 0xee, 0x90, 0x46, - 0x34, 0x3e, 0x83, 0x8a, 0x6c, 0x64, 0xe8, 0xf7, 0xf5, 0xdd, 0x5a, 0x0f, 0xae, 0x9d, 0x62, 0x96, - 0xf1, 0x34, 0x70, 0x15, 0xc6, 0x6b, 0xb5, 0x3b, 0x5b, 0x34, 0x8c, 0xae, 0x37, 0xfd, 0x7d, 0xdc, - 0xac, 0x8b, 0x22, 0xe9, 0x48, 0xe8, 0x3b, 0x11, 0x0d, 0x23, 0x67, 0xa7, 0xe9, 0xef, 0xdb, 0x3a, - 0x16, 0xf9, 0x3a, 0xeb, 0x0f, 0x4d, 0xb4, 0x11, 0x71, 0x07, 0xfb, 0x49, 0x5f, 0xb8, 0x25, 0xc6, - 0x4b, 0x86, 0xc9, 0x60, 0x66, 0x67, 0x69, 0xe8, 0xe8, 0x7e, 0xc4, 0x2e, 0xc4, 0xe5, 0x46, 0x23, - 0xa0, 0x61, 0x28, 0x76, 0x55, 0xee, 0x7e, 0x84, 0xb7, 0x67, 0x97, 0x17, 0x18, 0xee, 0x47, 0x1a, - 0x01, 0xf9, 0x76, 0x0e, 0x4e, 0xe8, 0x1e, 0x0c, 0xb8, 0x58, 0xd0, 0x6e, 0x83, 0xef, 0xb1, 0xaf, - 0x5f, 0x92, 0xa7, 0xca, 0x25, 0x0d, 0xed, 0xd2, 0xc3, 0x2b, 0x97, 0xca, 0xf1, 0xcf, 0x9a, 0x24, - 0x12, 0xa1, 0xbb, 0xb2, 0xf8, 0xe9, 0x27, 0x84, 0x9b, 0x41, 0x4a, 0x56, 0x98, 0xe0, 0xc1, 0xe6, - 0x13, 0xda, 0x01, 0x55, 0x37, 0x71, 0x8b, 0x16, 0x0a, 0x42, 0x31, 0xfb, 0xb8, 0xc5, 0x90, 0xd7, - 0x31, 0xe5, 0x0b, 0x8d, 0x86, 0x54, 0x61, 0x9a, 0x03, 0xd8, 0x96, 0xc0, 0x33, 0x52, 0xcc, 0xc6, - 0x51, 0xb1, 0x05, 0x1b, 0x7c, 0xba, 0xc6, 0xac, 0x14, 0x7a, 0x98, 0xbc, 0x04, 0x1d, 0x4a, 0xfe, - 0xb5, 0xf2, 0xed, 0xf5, 0x58, 0x7c, 0xfd, 0xde, 0xb2, 0xec, 0x37, 0xbe, 0xad, 0x8f, 0x65, 0xff, - 0x5d, 0xee, 0x93, 0xa9, 0x75, 0x83, 0x94, 0xfc, 0x0d, 0x70, 0x52, 0xf2, 0x4f, 0xd0, 0xd8, 0x09, - 0x6c, 0xeb, 0xe3, 0x62, 0x82, 0xaf, 0xb0, 0xe6, 0xb3, 0x60, 0x84, 0x0b, 0xf6, 0x7a, 0x7a, 0x73, - 0x2e, 0xf6, 0xdb, 0xa2, 0x84, 0x9c, 0x86, 0x42, 0xad, 0x76, 0x47, 0x74, 0x32, 0xda, 0xf4, 0x85, - 0xa1, 0x6f, 0x33, 0x18, 0x1b, 0x21, 0x34, 0xd4, 0xd3, 0x22, 0x0e, 0xb3, 0x1d, 0xd4, 0x46, 0x28, - 0xeb, 0x6f, 0x29, 0x66, 0x0f, 0xc5, 0xfd, 0x2d, 0xc4, 0xec, 0x58, 0xb8, 0x5e, 0x81, 0xf9, 0x72, - 0x18, 0xd2, 0x80, 0x4d, 0x50, 0x61, 0xff, 0x15, 0x08, 0x51, 0x50, 0x1c, 0x14, 0x58, 0xa9, 0x5b, - 0x0f, 0xed, 0x9e, 0x88, 0xe4, 0x02, 0x14, 0xcb, 0xdd, 0x86, 0x47, 0xdb, 0x75, 0x23, 0x9c, 0x90, - 0x2b, 0x60, 0xb6, 0x2a, 0x25, 0x5f, 0x86, 0x13, 0x89, 0x90, 0x5a, 0xa2, 0x07, 0x46, 0xe3, 0xd5, - 0x2c, 0x45, 0xd5, 0xf8, 0xcd, 0x9a, 0x77, 0x49, 0x36, 0x25, 0x29, 0x43, 0x69, 0x15, 0x3d, 0x59, - 0x2a, 0x94, 0xab, 0xcf, 0xfd, 0x80, 0x7b, 0x11, 0xf1, 0x8b, 0x05, 0xf7, 0x72, 0x71, 0x1a, 0xaa, - 0xd0, 0x4e, 0xa1, 0x93, 0x5b, 0x30, 0x9b, 0x84, 0xb1, 0x33, 0x81, 0xdf, 0x21, 0x30, 0xe4, 0x65, - 0x8a, 0x0b, 0x9e, 0x0a, 0x59, 0x54, 0x64, 0x1b, 0x66, 0x62, 0x9b, 0x0d, 0xf3, 0x66, 0x21, 0x4d, - 0x41, 0x55, 0xb9, 0xbc, 0x5d, 0x3c, 0x2b, 0x26, 0xe3, 0x6c, 0x6c, 0xff, 0xa1, 0x6e, 0x18, 0x76, - 0x9a, 0x1d, 0x69, 0xc0, 0x54, 0xcd, 0xdb, 0x6d, 0x7b, 0xed, 0xdd, 0x5b, 0xf4, 0x60, 0xd3, 0xf5, - 0x02, 0x61, 0x94, 0x27, 0x4d, 0x6e, 0xcb, 0xe1, 0x41, 0xab, 0x45, 0xa3, 0x00, 0x4f, 0x5b, 0x56, - 0x8e, 0x0e, 0xb0, 0x4c, 0x62, 0x5c, 0x08, 0x39, 0x1d, 0x3a, 0x97, 0x75, 0x5c, 0xcf, 0x38, 0x56, - 0x4c, 0x9e, 0xc6, 0xed, 0x6e, 0x62, 0xc0, 0xdb, 0x5d, 0x13, 0x66, 0x56, 0xdb, 0xf5, 0xe0, 0x00, - 0x5f, 0x31, 0x64, 0xe3, 0x26, 0x8f, 0x68, 0xdc, 0x8b, 0xa2, 0x71, 0xcf, 0xb9, 0x72, 0x86, 0x65, - 0x35, 0x2f, 0xcd, 0x98, 0xd4, 0x60, 0x06, 0x25, 0xb6, 0x6a, 0x65, 0xb3, 0xda, 0xf6, 0x22, 0x0f, - 0x93, 0x70, 0xf3, 0xe3, 0xea, 0x25, 0xc1, 0xf3, 0x0c, 0x97, 0xe2, 0xbd, 0x46, 0xc7, 0xf1, 0x24, - 0x8a, 0xce, 0x34, 0x45, 0xdf, 0x4f, 0x94, 0x9e, 0xfe, 0x97, 0x23, 0x4a, 0x63, 0x9a, 0xaa, 0x84, - 0x63, 0x78, 0x29, 0xde, 0xdb, 0x43, 0x2c, 0x62, 0x47, 0x84, 0xdf, 0x45, 0xf1, 0xc4, 0x48, 0x53, - 0x65, 0xd2, 0x59, 0xdf, 0x1e, 0xe3, 0x7b, 0xbb, 0x2e, 0xbf, 0xf6, 0x32, 0xc6, 0x4b, 0xc8, 0xb5, - 0xf9, 0xe3, 0xc8, 0xb5, 0x85, 0xa3, 0xe5, 0xda, 0xa1, 0xa3, 0xe4, 0xda, 0x84, 0xe0, 0x39, 0x7c, - 0x6c, 0xc1, 0x73, 0xe4, 0x18, 0x82, 0xe7, 0xe8, 0xb1, 0x04, 0x4f, 0x43, 0x82, 0x2e, 0x1e, 0x25, - 0x41, 0xff, 0x85, 0x98, 0xfa, 0xb4, 0x8a, 0xa9, 0x59, 0xa2, 0xc2, 0xb1, 0xc4, 0xd4, 0xde, 0x52, - 0x66, 0xe9, 0x5f, 0xb5, 0x94, 0x39, 0xf3, 0x64, 0xa4, 0x4c, 0xf2, 0x09, 0xa5, 0xcc, 0xbf, 0x04, - 0xa5, 0xe4, 0xc1, 0x77, 0x74, 0x24, 0xc1, 0x27, 0x16, 0xf5, 0x8a, 0x1d, 0xcb, 0xc9, 0x83, 0x87, - 0x5d, 0xa4, 0x37, 0x03, 0xef, 0xa1, 0x1b, 0xd1, 0x5b, 0xd2, 0x78, 0x41, 0x44, 0xc1, 0xe4, 0x50, - 0xdc, 0x3e, 0x34, 0x14, 0x25, 0x73, 0xe5, 0xb3, 0x64, 0x2e, 0xeb, 0x6f, 0xe4, 0x61, 0x86, 0x47, - 0xa8, 0x79, 0xfa, 0x75, 0xe8, 0xef, 0x1a, 0x92, 0xb4, 0x34, 0x95, 0x4b, 0x7c, 0x5d, 0x1f, 0x2d, - 0xfa, 0xd7, 0xe0, 0x44, 0xaa, 0x2b, 0x50, 0x9a, 0xae, 0xc8, 0xd8, 0x40, 0x29, 0x79, 0x7a, 0x3e, - 0xbb, 0x92, 0x7b, 0x57, 0xed, 0x14, 0x85, 0xf5, 0x27, 0x43, 0x29, 0xfe, 0x42, 0x9f, 0xae, 0x6b, - 0xc8, 0x73, 0xc7, 0xd3, 0x90, 0xe7, 0x07, 0xd3, 0x90, 0x27, 0x8e, 0xa9, 0xc2, 0x20, 0xc7, 0xd4, - 0x97, 0x61, 0x72, 0x8b, 0xba, 0xad, 0x70, 0xcb, 0x17, 0xa1, 0xee, 0xb9, 0xa9, 0xac, 0x0c, 0xfd, - 0xc3, 0xca, 0xa4, 0x30, 0xa8, 0x4c, 0x7e, 0x22, 0x46, 0xc0, 0xb6, 0x56, 0x1e, 0xfb, 0xde, 0x36, - 0x39, 0xe8, 0x12, 0xfe, 0x70, 0x1f, 0x09, 0xbf, 0x06, 0x13, 0x82, 0x2e, 0x0e, 0x9f, 0x18, 0x8b, - 0xa2, 0xac, 0x08, 0xe1, 0xb2, 0x76, 0x95, 0x13, 0x51, 0xd5, 0xce, 0xa5, 0x50, 0x83, 0x09, 0xeb, - 0x82, 0xd5, 0x76, 0xa3, 0xe3, 0x7b, 0x6d, 0xec, 0x82, 0xd1, 0xb8, 0x0b, 0xa8, 0x00, 0xf3, 0x2e, - 0xd0, 0x90, 0xc8, 0xdb, 0x30, 0x55, 0xde, 0xac, 0xea, 0x64, 0xc5, 0x58, 0x49, 0xef, 0x76, 0x3c, - 0xc7, 0x20, 0x4d, 0xe0, 0xf6, 0x93, 0xca, 0xc6, 0xfe, 0xe5, 0x48, 0x65, 0xd6, 0x3f, 0x19, 0x93, - 0xcb, 0xfb, 0xb3, 0x55, 0x06, 0x9a, 0xea, 0xbd, 0xc2, 0x31, 0xd5, 0x7b, 0x43, 0x47, 0x09, 0x27, - 0x86, 0xc4, 0x34, 0x7c, 0x0c, 0x89, 0x69, 0xe4, 0x53, 0xab, 0xea, 0x46, 0x8f, 0x29, 0x03, 0x25, - 0x56, 0x5a, 0x71, 0x90, 0x95, 0x96, 0x29, 0x37, 0x8d, 0x7d, 0x7a, 0xb9, 0x09, 0x8e, 0x2d, 0x37, - 0xd5, 0x62, 0xc7, 0xb3, 0xf1, 0x23, 0xed, 0x79, 0xcf, 0x88, 0xfb, 0xca, 0x4c, 0x76, 0x70, 0x22, - 0xe5, 0x82, 0xf6, 0x3d, 0x25, 0x8c, 0x7d, 0x23, 0x5b, 0x18, 0xeb, 0x7f, 0xda, 0xfc, 0x85, 0x38, - 0xf6, 0x44, 0xc4, 0xb1, 0x00, 0x07, 0xec, 0xbe, 0x1b, 0xb4, 0xf1, 0xca, 0x79, 0x19, 0x46, 0x65, - 0xbc, 0xaf, 0x5c, 0xac, 0x3d, 0x49, 0x07, 0xfa, 0x92, 0x58, 0x64, 0x09, 0x8a, 0x92, 0x58, 0x8f, - 0x5d, 0xbe, 0x2f, 0x60, 0x46, 0x28, 0x25, 0x01, 0xb3, 0xfe, 0xc1, 0x90, 0xdc, 0x14, 0x58, 0x3b, - 0x44, 0xba, 0xed, 0x65, 0x6d, 0x12, 0x68, 0xc2, 0x60, 0x62, 0x98, 0x13, 0x96, 0x7e, 0x26, 0xc9, - 0x27, 0x8a, 0xc0, 0x16, 0xe7, 0xd7, 0x2a, 0x0c, 0x90, 0x5f, 0xeb, 0x4d, 0x23, 0x39, 0xd5, 0x50, - 0x9c, 0x0d, 0x85, 0x2d, 0x94, 0xfe, 0x69, 0xa9, 0xae, 0xe9, 0x59, 0xa4, 0x86, 0xe3, 0x20, 0x1f, - 0x48, 0xd9, 0x27, 0x7f, 0x94, 0x92, 0x6e, 0x47, 0x8e, 0x13, 0xdb, 0x70, 0xf4, 0x5f, 0x69, 0x6c, - 0xc3, 0x55, 0x00, 0x2d, 0xc5, 0x31, 0x7f, 0xdc, 0x79, 0x89, 0x75, 0xd3, 0xd1, 0xe9, 0x8d, 0x35, - 0x42, 0xeb, 0x77, 0x08, 0xcc, 0xd4, 0x6a, 0x77, 0x2a, 0x9e, 0xbb, 0xdb, 0xf6, 0xc3, 0xc8, 0xab, - 0x57, 0xdb, 0x3b, 0x3e, 0x13, 0xed, 0xd4, 0x06, 0xa3, 0x05, 0xb1, 0x8b, 0x37, 0x17, 0x55, 0xcc, - 0xae, 0x0e, 0xab, 0x41, 0xe0, 0x07, 0xfa, 0xd5, 0x81, 0x32, 0x80, 0xcd, 0xe1, 0x4c, 0x7a, 0xaa, - 0x75, 0x79, 0xae, 0x5a, 0xfe, 0xde, 0x86, 0xd2, 0x53, 0xc8, 0x41, 0xb6, 0x2c, 0x23, 0x34, 0x3d, - 0x61, 0x85, 0x34, 0x7d, 0xca, 0x88, 0x90, 0x18, 0x17, 0xf3, 0xed, 0x53, 0x1c, 0x6f, 0xb8, 0x14, - 0x3b, 0x08, 0xd7, 0x1f, 0xc8, 0x53, 0x6b, 0xe0, 0x00, 0x4e, 0x18, 0x2e, 0x50, 0x83, 0x2a, 0x0e, - 0x5f, 0x11, 0xd2, 0x9a, 0x85, 0x1e, 0xb7, 0x19, 0xda, 0x43, 0x3d, 0x9b, 0x43, 0x66, 0x0d, 0xe4, - 0x6f, 0xe4, 0xe0, 0x4c, 0x66, 0x89, 0x5a, 0xdd, 0xe3, 0x46, 0x94, 0x4a, 0x6d, 0xd3, 0xe0, 0x79, - 0x2b, 0x7a, 0x55, 0xed, 0x64, 0x6c, 0x05, 0xfd, 0x6b, 0x22, 0xbf, 0x9a, 0x83, 0x53, 0x06, 0x86, - 0xda, 0x3e, 0x43, 0xe5, 0x1d, 0x9c, 0x39, 0xaf, 0x3f, 0x7a, 0x32, 0xf3, 0xfa, 0x9c, 0xf9, 0x2d, - 0xf1, 0xee, 0xae, 0x7f, 0x43, 0xaf, 0x16, 0x92, 0x87, 0x30, 0x83, 0x45, 0x52, 0x89, 0xc9, 0xe6, - 0xac, 0xd0, 0x7d, 0xce, 0xc5, 0xcd, 0xe6, 0x6e, 0x7d, 0x98, 0x7b, 0x70, 0xe9, 0xbb, 0x87, 0x8b, - 0x93, 0x06, 0xba, 0x8c, 0xfb, 0xe8, 0xc4, 0x9a, 0x50, 0xaf, 0xbd, 0xe3, 0xeb, 0x47, 0x6f, 0xaa, - 0x0a, 0xf2, 0x9f, 0xe5, 0x60, 0x9e, 0x41, 0xf9, 0x67, 0x5c, 0x0f, 0xfc, 0x96, 0x2a, 0x97, 0x96, - 0x16, 0x3d, 0xba, 0xad, 0xf9, 0x64, 0xba, 0xed, 0x25, 0x6c, 0x32, 0xdf, 0x13, 0x9c, 0x9d, 0xc0, - 0x6f, 0xc5, 0xcd, 0x37, 0x52, 0xf8, 0xf6, 0x6a, 0x24, 0xf9, 0xc1, 0x1c, 0x9c, 0x36, 0x34, 0x2f, - 0x7a, 0x74, 0x6c, 0xe1, 0x3c, 0x39, 0xab, 0xdc, 0xaa, 0xe3, 0xa2, 0xe5, 0x4b, 0x62, 0xfe, 0x9f, - 0xc7, 0x16, 0xc4, 0xa7, 0x05, 0xb6, 0xc5, 0x69, 0x71, 0x2c, 0xad, 0x09, 0xbd, 0x6b, 0x21, 0x1e, - 0xcc, 0xe0, 0x1b, 0xa5, 0x61, 0x11, 0x34, 0xd7, 0xdb, 0x22, 0x48, 0xe5, 0x88, 0xc2, 0xd0, 0xbb, - 0xbd, 0xcd, 0x82, 0xd2, 0x5c, 0xc9, 0x5f, 0x86, 0xd3, 0x29, 0xa0, 0x5a, 0x6d, 0x27, 0x7a, 0xae, - 0xb6, 0x57, 0x1f, 0x1f, 0x2e, 0xbe, 0x9c, 0x55, 0x5b, 0xd6, 0x4a, 0xeb, 0x5d, 0x03, 0x71, 0x01, - 0xe2, 0x42, 0x91, 0x09, 0x38, 0x7b, 0x82, 0xbe, 0x2a, 0xe6, 0x87, 0x86, 0xcf, 0xf6, 0x72, 0xad, - 0x0d, 0xfa, 0x91, 0x17, 0x23, 0x11, 0x0a, 0x13, 0x5a, 0xd8, 0xe1, 0x03, 0x4c, 0x09, 0xdc, 0xb3, - 0x92, 0xef, 0x1e, 0x2e, 0x1a, 0xd8, 0x4c, 0xc4, 0xd6, 0xe3, 0x19, 0xeb, 0x22, 0xb6, 0x81, 0x48, - 0x7e, 0x39, 0x07, 0x73, 0x0c, 0x10, 0x4f, 0x2a, 0xf1, 0x51, 0xf3, 0xfd, 0x66, 0xfd, 0xde, 0x93, - 0x99, 0xf5, 0x2f, 0x60, 0x1b, 0xf5, 0x59, 0x9f, 0xea, 0x92, 0xcc, 0xc6, 0xe1, 0x6c, 0x37, 0x9e, - 0xc3, 0x8d, 0xd9, 0x7e, 0x7a, 0x80, 0xd9, 0xce, 0x07, 0xe0, 0xe8, 0xd9, 0xde, 0xb3, 0x16, 0xb2, - 0x05, 0x13, 0x42, 0xba, 0xe6, 0x1d, 0xf6, 0xbc, 0x11, 0xb2, 0x54, 0x2f, 0xe2, 0x57, 0x1e, 0x11, - 0x95, 0x39, 0xf5, 0x85, 0x06, 0x17, 0xd2, 0x86, 0x59, 0xfe, 0xdb, 0xd4, 0x75, 0x2c, 0xf6, 0xd4, - 0x75, 0x5c, 0x10, 0x5f, 0x74, 0x56, 0xf0, 0x4f, 0xa8, 0x3c, 0xf4, 0x68, 0x0c, 0x19, 0x8c, 0x49, - 0x07, 0x88, 0x01, 0xe6, 0x8b, 0xf6, 0x6c, 0x7f, 0x0d, 0xc7, 0xcb, 0xa2, 0xce, 0xc5, 0x64, 0x9d, - 0xc9, 0x95, 0x9b, 0xc1, 0x9b, 0xb8, 0x30, 0x2d, 0xa0, 0xec, 0x2e, 0x8d, 0x3b, 0xfc, 0x0b, 0x46, - 0x3c, 0x8c, 0x44, 0x29, 0x17, 0xcc, 0x65, 0x4d, 0x18, 0xaf, 0x24, 0xb1, 0xa1, 0x27, 0xf9, 0x91, - 0x3b, 0x30, 0x53, 0xee, 0x74, 0x9a, 0x1e, 0x6d, 0xe0, 0x57, 0xf2, 0x74, 0xaa, 0x56, 0x9c, 0x42, - 0xc3, 0xe5, 0x85, 0xe2, 0xb6, 0x90, 0xcc, 0xa5, 0x9a, 0xa6, 0xb5, 0xbe, 0x9d, 0x4b, 0x35, 0x9a, - 0xbc, 0x06, 0x63, 0xf8, 0x43, 0x73, 0xb1, 0x46, 0x25, 0x00, 0x6f, 0x22, 0x2a, 0x23, 0x62, 0x04, - 0x26, 0x2c, 0xe9, 0x61, 0x96, 0x0a, 0x5c, 0x58, 0x12, 0x37, 0xd5, 0xf8, 0x6e, 0xba, 0x28, 0x2d, - 0x35, 0x0b, 0xb1, 0xd0, 0x85, 0x96, 0x9a, 0xc2, 0x3e, 0xd3, 0xfa, 0xc1, 0xbc, 0x39, 0xed, 0xc8, - 0x05, 0x4d, 0x6e, 0xd7, 0x02, 0x3d, 0x49, 0xb9, 0x5d, 0x93, 0xd6, 0xff, 0x7e, 0x0e, 0x66, 0xef, - 0x04, 0xbb, 0x6e, 0xdb, 0xfb, 0x16, 0x0f, 0x6c, 0xe9, 0xe3, 0xb8, 0xf4, 0xcf, 0x46, 0xf4, 0xa4, - 0xb2, 0xaa, 0xf8, 0x5a, 0xc5, 0x6c, 0xa6, 0xe0, 0x94, 0xb1, 0xb3, 0xda, 0x83, 0xb6, 0xef, 0xd8, - 0x30, 0x2d, 0xb9, 0x0d, 0x47, 0xe7, 0x70, 0xeb, 0x47, 0xf3, 0x30, 0xae, 0x2d, 0x01, 0xf2, 0x79, - 0x98, 0xd0, 0xf9, 0xe8, 0x0a, 0x24, 0xbd, 0x5a, 0xdb, 0xc0, 0x42, 0x0d, 0x12, 0x75, 0x5b, 0x86, - 0x06, 0x89, 0x4d, 0x74, 0x84, 0x1e, 0xf3, 0x6a, 0xf3, 0x5e, 0xc6, 0xd5, 0xe6, 0x58, 0x79, 0x77, - 0xdf, 0x4e, 0x5f, 0x70, 0x06, 0x4f, 0x93, 0x6b, 0xfd, 0x44, 0x0e, 0x4a, 0xc9, 0x45, 0xfa, 0x99, - 0xf4, 0xca, 0x31, 0x5e, 0x0b, 0x7e, 0x24, 0xaf, 0x62, 0x8e, 0x4b, 0x8f, 0x9e, 0xa7, 0xd5, 0x24, - 0xe6, 0x1d, 0x43, 0x91, 0xff, 0xac, 0x19, 0x9c, 0x46, 0xf7, 0x85, 0xcd, 0x8e, 0x48, 0x35, 0xf4, - 0x9d, 0x9f, 0x5b, 0x7c, 0xc6, 0xfa, 0x00, 0xe6, 0x92, 0xdd, 0x81, 0xca, 0xfc, 0x32, 0x4c, 0x9b, - 0xf0, 0x64, 0xc6, 0x82, 0x24, 0x95, 0x9d, 0xc4, 0xb7, 0x7e, 0x37, 0x9f, 0xe4, 0x2d, 0xcc, 0x63, - 0xd8, 0xa6, 0xd3, 0x76, 0xb7, 0x9b, 0x2a, 0x62, 0x39, 0xdf, 0x74, 0x38, 0xc8, 0x96, 0x65, 0xc7, - 0x49, 0xe1, 0xa1, 0xfc, 0x52, 0x0a, 0xd9, 0x7e, 0x29, 0xe4, 0x5a, 0xc2, 0xc6, 0x4c, 0x0b, 0xa2, - 0xb0, 0x4f, 0xb7, 0x9d, 0xd8, 0xce, 0x2c, 0x61, 0x5a, 0xb6, 0x02, 0x73, 0x46, 0x44, 0x50, 0x49, - 0x3f, 0x1c, 0xeb, 0x6e, 0x23, 0x2c, 0xe0, 0xc4, 0x99, 0xc8, 0x64, 0x0d, 0x46, 0x59, 0x33, 0x6f, - 0xbb, 0x1d, 0xa1, 0xa3, 0x27, 0xca, 0x4b, 0xad, 0xa9, 0x2e, 0x7c, 0x9a, 0xa3, 0x5a, 0x93, 0xb2, - 0x23, 0xdf, 0x48, 0x5b, 0xcd, 0x11, 0xad, 0x7f, 0x9e, 0x63, 0xeb, 0xbf, 0xfe, 0xe0, 0x7b, 0x2c, - 0x0f, 0x08, 0xfb, 0xa4, 0x3e, 0xd6, 0x5b, 0x7f, 0x90, 0xe7, 0x41, 0xe7, 0xc5, 0xf4, 0x79, 0x13, - 0x46, 0xb6, 0xdc, 0x60, 0x97, 0x46, 0x22, 0x1c, 0xbb, 0xce, 0x85, 0x17, 0xc4, 0x21, 0x1e, 0x22, - 0xfc, 0x6d, 0x0b, 0x02, 0x5d, 0x17, 0x96, 0x1f, 0x48, 0x17, 0xa6, 0x69, 0x7a, 0x0b, 0x4f, 0x4c, - 0xd3, 0xfb, 0x7d, 0x2a, 0xbe, 0x7c, 0x39, 0x1a, 0x20, 0xe0, 0xe4, 0xd9, 0x64, 0x7e, 0x86, 0x54, - 0x68, 0xd0, 0x98, 0x1d, 0xb9, 0xa6, 0x67, 0x7c, 0xd0, 0x5c, 0x3d, 0x8e, 0xc8, 0xed, 0x60, 0xfd, - 0x41, 0x81, 0xf7, 0xb1, 0xe8, 0xa8, 0xf3, 0x86, 0x1b, 0x18, 0xae, 0x13, 0xb6, 0xd1, 0xeb, 0x1e, - 0xb9, 0x68, 0xd8, 0x71, 0x1e, 0x86, 0xd8, 0xdc, 0x14, 0xbd, 0x89, 0x78, 0x6c, 0xfe, 0xea, 0x78, - 0xac, 0x9c, 0xad, 0x65, 0x3c, 0x93, 0xf4, 0x1c, 0x3b, 0x78, 0x6c, 0xe9, 0x6b, 0x19, 0x31, 0xc8, - 0x05, 0x18, 0xda, 0xf0, 0x1b, 0x32, 0xb0, 0xe9, 0x1c, 0x3a, 0x03, 0xfb, 0x0d, 0x8d, 0xe5, 0x7c, - 0xce, 0x46, 0x0c, 0xf6, 0xad, 0x2a, 0x64, 0xbb, 0xfe, 0xad, 0xad, 0x1d, 0x57, 0x44, 0xdf, 0xd2, - 0xbf, 0x35, 0x8e, 0xee, 0xbe, 0x0a, 0x53, 0x66, 0x96, 0x4d, 0x61, 0xdb, 0x86, 0x1a, 0xdb, 0x44, - 0xb2, 0x4e, 0x5d, 0xd1, 0x6e, 0x12, 0x91, 0x65, 0x98, 0x34, 0x02, 0xaa, 0x89, 0xc7, 0x32, 0x54, - 0x6f, 0x9a, 0xe1, 0xd8, 0x74, 0xf5, 0xa6, 0x41, 0xc2, 0xce, 0x73, 0xd1, 0x7e, 0xed, 0xc9, 0x2c, - 0xd5, 0x76, 0x81, 0x43, 0xae, 0x42, 0x91, 0x7b, 0xdd, 0x56, 0x2b, 0xfa, 0xc3, 0x47, 0x88, 0xb0, - 0x84, 0xd7, 0xba, 0x44, 0xd4, 0xbc, 0x2c, 0x3f, 0x07, 0x25, 0xb1, 0x25, 0xc5, 0xf9, 0x2c, 0x9f, - 0x83, 0xa1, 0x95, 0x6a, 0xc5, 0xd6, 0xb7, 0x91, 0xba, 0xd7, 0x08, 0x6c, 0x84, 0xa2, 0xe9, 0xfe, - 0x06, 0x8d, 0xf6, 0xfd, 0xe0, 0x81, 0x4d, 0xc3, 0x28, 0xf0, 0x78, 0x8a, 0x26, 0x5c, 0x88, 0x9f, - 0x27, 0x6f, 0xc3, 0x30, 0x1a, 0x59, 0x25, 0x4e, 0x86, 0x64, 0x1d, 0xcb, 0x93, 0x62, 0x02, 0x0f, - 0xa3, 0xc5, 0x96, 0xcd, 0x89, 0xc8, 0x9b, 0x30, 0x54, 0xa1, 0xed, 0x83, 0x44, 0x92, 0x9a, 0x14, - 0xb1, 0xda, 0x10, 0x1a, 0xb4, 0x7d, 0x60, 0x23, 0x89, 0xf5, 0x13, 0x79, 0x38, 0x91, 0xd1, 0xac, - 0x7b, 0x9f, 0x7f, 0x4a, 0x77, 0xc5, 0x65, 0x63, 0x57, 0x94, 0xef, 0x9d, 0x3d, 0x3b, 0x3e, 0x73, - 0x93, 0xfc, 0x99, 0x1c, 0x9c, 0x32, 0x27, 0xa8, 0xb0, 0xaa, 0xbc, 0x77, 0x95, 0xbc, 0x05, 0x23, - 0x6b, 0xd4, 0x6d, 0x50, 0x99, 0xc0, 0xe2, 0x84, 0x8a, 0x8f, 0xc3, 0x5d, 0x0a, 0x79, 0x21, 0x67, - 0x1b, 0x3b, 0xa0, 0x70, 0x28, 0xa9, 0x88, 0xc6, 0x71, 0x79, 0xdc, 0x92, 0xee, 0xbd, 0x59, 0x55, - 0xf5, 0xb1, 0x1a, 0xf8, 0x6e, 0x0e, 0x9e, 0xed, 0x43, 0xc3, 0x06, 0x8e, 0x0d, 0xbd, 0x3e, 0x70, - 0x78, 0xa2, 0x22, 0x94, 0xbc, 0x0b, 0xd3, 0x5b, 0x42, 0x9e, 0x97, 0xc3, 0x91, 0x8f, 0xd7, 0x8b, - 0x14, 0xf5, 0x1d, 0x39, 0x2e, 0x49, 0x64, 0xc3, 0xef, 0xbc, 0xd0, 0xd7, 0xef, 0x5c, 0x77, 0xe3, - 0x1e, 0x1a, 0xd4, 0x8d, 0xfb, 0x83, 0x64, 0x6e, 0x7a, 0x11, 0x4d, 0x2f, 0x76, 0x62, 0xcf, 0xf5, - 0x76, 0x62, 0xef, 0x1b, 0xb3, 0xcb, 0xfa, 0xd1, 0x1c, 0x94, 0x4c, 0xde, 0x9f, 0x76, 0x3c, 0xdf, - 0x31, 0xc6, 0xf3, 0xd9, 0xec, 0xf1, 0xec, 0x3d, 0x90, 0xff, 0x47, 0x2e, 0xf9, 0xb1, 0x03, 0x8d, - 0xa0, 0x05, 0x23, 0x15, 0xbf, 0xe5, 0x7a, 0x6d, 0x3d, 0x3d, 0x6a, 0x03, 0x21, 0xb6, 0x28, 0x19, - 0xcc, 0xe7, 0xff, 0x2c, 0x0c, 0x6f, 0xf8, 0xed, 0x72, 0x45, 0x18, 0x1d, 0x22, 0x9f, 0xb6, 0xdf, - 0x76, 0xdc, 0x86, 0xcd, 0x0b, 0xc8, 0x3a, 0x40, 0xad, 0x1e, 0x50, 0xda, 0xae, 0x79, 0xdf, 0xa2, - 0x09, 0x49, 0x83, 0xf5, 0x50, 0xb3, 0x8b, 0x1b, 0x0b, 0xbe, 0xf1, 0x84, 0x88, 0xe8, 0x84, 0xde, - 0xb7, 0xf4, 0xfd, 0x56, 0xa3, 0xb7, 0x28, 0x40, 0x4c, 0x84, 0xb9, 0xe2, 0xbc, 0x86, 0xc8, 0xff, - 0x3b, 0x29, 0x72, 0xc5, 0x31, 0x80, 0x91, 0x2b, 0x8e, 0x01, 0xd8, 0xd6, 0xbe, 0x46, 0xbd, 0xdd, - 0x3d, 0x6e, 0x7d, 0x32, 0xc9, 0xa7, 0xea, 0x1e, 0x42, 0xf4, 0xad, 0x9d, 0xe3, 0x58, 0xff, 0x62, - 0x18, 0x4e, 0xdb, 0x74, 0xd7, 0x63, 0x62, 0xf2, 0xdd, 0xd0, 0x6b, 0xef, 0x1a, 0x5e, 0xd9, 0x56, - 0x62, 0x22, 0x89, 0x10, 0xc6, 0x0c, 0xa2, 0x3a, 0xe6, 0x22, 0x14, 0xd9, 0xa9, 0xa8, 0xcd, 0x25, - 0x7c, 0x43, 0xc1, 0xe4, 0xe6, 0x7c, 0x92, 0xcb, 0x62, 0xf2, 0x8a, 0x38, 0xb5, 0xb5, 0x20, 0xf3, - 0xec, 0xd4, 0xfe, 0xf8, 0x70, 0x11, 0x6a, 0x07, 0x61, 0x44, 0xf1, 0xc6, 0x26, 0x4e, 0x6e, 0x25, - 0x5a, 0x0f, 0xf5, 0x10, 0xad, 0x6f, 0xc3, 0x5c, 0xb9, 0xc1, 0x37, 0x6b, 0xb7, 0xb9, 0x19, 0x78, - 0xed, 0xba, 0xd7, 0x71, 0x9b, 0xf2, 0xba, 0x88, 0xbd, 0xec, 0xaa, 0x72, 0xa7, 0xa3, 0x10, 0xec, - 0x4c, 0x32, 0xf6, 0x19, 0x95, 0x8d, 0x1a, 0x3a, 0x2f, 0x8b, 0xe7, 0x31, 0xfc, 0x8c, 0x46, 0x3b, - 0xc4, 0xaf, 0x08, 0x6d, 0x55, 0x8c, 0x42, 0x3d, 0x9a, 0x33, 0x6c, 0xad, 0xd7, 0x62, 0xef, 0x24, - 0x1e, 0x03, 0x97, 0x9b, 0x3c, 0x44, 0xcd, 0x10, 0xcd, 0x1e, 0x0c, 0xbc, 0x98, 0xae, 0x56, 0x5b, - 0x63, 0x74, 0xc5, 0x14, 0x5d, 0x18, 0xee, 0xe9, 0x74, 0x1c, 0x8f, 0x5c, 0x66, 0x53, 0xa1, 0xe5, - 0x47, 0x14, 0xe7, 0xf9, 0x58, 0x7c, 0x05, 0x08, 0x10, 0xca, 0xaf, 0x00, 0x1a, 0x0a, 0x79, 0x1b, - 0x66, 0x57, 0x57, 0x96, 0xa4, 0x52, 0xb3, 0xe2, 0xd7, 0xbb, 0xf8, 0x40, 0x0d, 0x58, 0x1f, 0x8e, - 0x21, 0xad, 0x2f, 0xb1, 0xc9, 0x9d, 0x85, 0x46, 0xce, 0xc3, 0x68, 0xb5, 0xc2, 0xfb, 0x7e, 0x5c, - 0x4f, 0xf4, 0x20, 0x0c, 0x3f, 0x64, 0x21, 0xb9, 0x13, 0xcb, 0xa8, 0x13, 0x47, 0x0a, 0x93, 0xa7, - 0x07, 0x90, 0x4f, 0xdf, 0x84, 0xc9, 0x65, 0x3f, 0xaa, 0xb6, 0xc3, 0xc8, 0x6d, 0xd7, 0x69, 0xb5, - 0xa2, 0x47, 0x5d, 0xdc, 0xf6, 0x23, 0xc7, 0x13, 0x25, 0xac, 0xe5, 0x26, 0x26, 0xf9, 0x22, 0x92, - 0xde, 0xa0, 0x6d, 0x1a, 0xc4, 0xd1, 0x16, 0x87, 0x79, 0xdf, 0x32, 0xd2, 0x5d, 0x55, 0x62, 0x9b, - 0x88, 0x22, 0x09, 0x05, 0x4f, 0xca, 0xb4, 0xe2, 0x37, 0x68, 0x78, 0xef, 0xca, 0xf7, 0x58, 0x12, - 0x0a, 0xed, 0xdb, 0x70, 0xcb, 0xbc, 0x92, 0xb9, 0xbf, 0xfe, 0xdb, 0x98, 0x84, 0x22, 0x85, 0x4b, - 0xbe, 0x08, 0xc3, 0xf8, 0x53, 0x08, 0x5b, 0xb3, 0x19, 0x6c, 0x63, 0x41, 0xab, 0xce, 0x73, 0x2a, - 0x23, 0x01, 0xa9, 0xc2, 0xa8, 0x90, 0xf3, 0x8f, 0x13, 0x4a, 0x5d, 0x5c, 0x18, 0xf8, 0xcc, 0x10, - 0xf4, 0x56, 0x03, 0x26, 0xf4, 0x0a, 0xd9, 0x8a, 0x58, 0x73, 0xc3, 0x3d, 0xda, 0x60, 0xbf, 0x44, - 0x16, 0x14, 0x5c, 0x11, 0x7b, 0x08, 0x75, 0x58, 0x3b, 0x6c, 0x0d, 0x85, 0x6d, 0xf1, 0xd5, 0xf0, - 0x6e, 0x28, 0x9a, 0x22, 0x6e, 0xfe, 0x1e, 0x6a, 0x91, 0x1a, 0xb6, 0x28, 0xb2, 0xbe, 0x0f, 0xe6, - 0x36, 0xba, 0xcd, 0xa6, 0xbb, 0xdd, 0xa4, 0x32, 0x4a, 0x76, 0xe4, 0x46, 0x94, 0x2c, 0xc3, 0x70, - 0x4d, 0xcb, 0xd2, 0x38, 0xab, 0xc2, 0x90, 0xc7, 0x38, 0x68, 0x63, 0x97, 0x43, 0x47, 0xf2, 0x44, - 0x7e, 0x46, 0x4e, 0x6a, 0xfd, 0x76, 0x9c, 0xdd, 0x7b, 0x2b, 0x70, 0xeb, 0x0f, 0x54, 0xa6, 0xce, - 0x41, 0x13, 0x95, 0xdf, 0x94, 0x8d, 0x30, 0xcf, 0xcf, 0xac, 0x06, 0x1f, 0xd5, 0x18, 0xf2, 0x36, - 0x8c, 0x8b, 0x33, 0x54, 0x0b, 0x7f, 0x84, 0x31, 0x26, 0xc4, 0xed, 0x23, 0x69, 0x1c, 0xa1, 0xa3, - 0xa3, 0x68, 0x60, 0x7e, 0xca, 0xbd, 0x2b, 0x9f, 0x85, 0x68, 0x60, 0xd6, 0xd1, 0x67, 0xea, 0xfe, - 0xfa, 0x78, 0xb2, 0x6f, 0xc5, 0xdc, 0xbd, 0xa6, 0x07, 0x3c, 0xc9, 0xc5, 0x17, 0xb5, 0x38, 0xe0, - 0x89, 0x7e, 0x51, 0x53, 0xa8, 0x6a, 0x4c, 0xf2, 0x47, 0x8c, 0xc9, 0xbb, 0x72, 0x4c, 0x0a, 0xbd, - 0x27, 0xc6, 0x6c, 0x9f, 0x71, 0xa8, 0xc5, 0x2b, 0x64, 0x68, 0xa0, 0x5b, 0xfe, 0x33, 0x18, 0xd9, - 0x95, 0x93, 0x24, 0x77, 0x51, 0xc1, 0x49, 0x57, 0x1d, 0x0c, 0x0f, 0xce, 0xf4, 0x88, 0xad, 0xf9, - 0x4b, 0x30, 0x51, 0x8e, 0x22, 0xb7, 0xbe, 0x47, 0x1b, 0x15, 0xb6, 0x3d, 0x69, 0xb1, 0x19, 0x5c, - 0x01, 0xd7, 0xdf, 0x70, 0x74, 0x5c, 0x1e, 0x6b, 0xcc, 0x0d, 0x85, 0xb5, 0x9e, 0x8a, 0x35, 0xc6, - 0x20, 0x66, 0xac, 0x31, 0x06, 0x21, 0x97, 0x61, 0xb4, 0xda, 0x7e, 0xe8, 0xb1, 0x3e, 0x29, 0xc6, - 0x69, 0x7b, 0x3d, 0x0e, 0xd2, 0x37, 0x57, 0x81, 0x45, 0xde, 0xd4, 0x64, 0xec, 0xb1, 0xf8, 0x3e, - 0xcd, 0x35, 0x30, 0xca, 0xab, 0x5b, 0x97, 0x9f, 0x95, 0xd0, 0x7d, 0x0d, 0x46, 0xa5, 0x62, 0x0d, - 0xe2, 0x3b, 0xb4, 0xa0, 0x4c, 0x7b, 0x7f, 0x4a, 0x64, 0x4c, 0xee, 0xa8, 0x65, 0x73, 0x19, 0xd7, - 0x92, 0x3b, 0x6a, 0xd9, 0x5c, 0x8c, 0xe4, 0x8e, 0x5a, 0x5e, 0x17, 0xa5, 0x93, 0x98, 0x38, 0x52, - 0x27, 0x71, 0x0f, 0x26, 0x36, 0xdd, 0x20, 0xf2, 0x98, 0x8c, 0xd2, 0x8e, 0xc2, 0xf9, 0x49, 0x43, - 0x8d, 0xa7, 0x15, 0x2d, 0x3f, 0x2f, 0xf3, 0x11, 0x76, 0x34, 0x7c, 0x33, 0x71, 0x5e, 0x0c, 0xcf, - 0xb6, 0xd5, 0x9b, 0xfa, 0x34, 0xb6, 0x7a, 0xd8, 0xa9, 0xa8, 0xba, 0x99, 0x8e, 0x15, 0x04, 0x28, - 0x43, 0x27, 0xf4, 0x37, 0x0a, 0x91, 0x7c, 0x15, 0x26, 0xd8, 0xdf, 0x9b, 0x7e, 0xd3, 0xab, 0x7b, - 0x34, 0x9c, 0x2f, 0xe1, 0xc7, 0x3d, 0x9f, 0xb9, 0xfa, 0x11, 0xe9, 0xa0, 0x46, 0x23, 0xbe, 0x80, - 0x91, 0x71, 0x52, 0x27, 0x6b, 0x70, 0x23, 0xef, 0xc1, 0x04, 0x9b, 0x7d, 0xdb, 0x6e, 0xc8, 0x45, - 0xd3, 0x99, 0xd8, 0xda, 0xb2, 0x21, 0xe0, 0xa9, 0x70, 0x7f, 0x3a, 0x01, 0x3b, 0xe6, 0xcb, 0x1d, - 0xbe, 0x41, 0x12, 0x6d, 0xb6, 0x77, 0x52, 0x9b, 0xa3, 0x44, 0x23, 0xef, 0xc3, 0x44, 0xb9, 0xd3, - 0x89, 0x77, 0x9c, 0x59, 0x4d, 0x2f, 0xd3, 0xe9, 0x38, 0x99, 0xbb, 0x8e, 0x41, 0x91, 0xdc, 0x98, - 0xe7, 0x8e, 0xb5, 0x31, 0x93, 0xd7, 0x95, 0xb4, 0x7e, 0x22, 0x56, 0x32, 0x8a, 0x7b, 0x8c, 0x21, - 0xfa, 0x73, 0xc1, 0x7d, 0x05, 0x26, 0xb9, 0xd6, 0x4d, 0x4a, 0x33, 0x27, 0x53, 0xab, 0x27, 0x43, - 0xa8, 0x31, 0x69, 0xc8, 0x2a, 0x4c, 0x71, 0x47, 0xb7, 0xa6, 0x88, 0xc3, 0x38, 0x7f, 0x2a, 0x4e, - 0x34, 0xcd, 0xfd, 0xe3, 0x9a, 0x18, 0x9e, 0xdb, 0x35, 0xb8, 0x24, 0x88, 0xac, 0x3f, 0xcc, 0xc1, - 0xa9, 0x1e, 0x23, 0xae, 0xa2, 0xf4, 0xe5, 0xfa, 0x47, 0xe9, 0x63, 0x3b, 0x87, 0x79, 0x49, 0xc7, - 0xef, 0x17, 0x52, 0x96, 0x3e, 0x5e, 0x52, 0xde, 0xf2, 0x81, 0x88, 0x08, 0xf8, 0xa2, 0xea, 0x9b, - 0x3e, 0x6a, 0x0a, 0x0b, 0xe9, 0x43, 0x48, 0xe0, 0xf1, 0x46, 0x2d, 0x5b, 0x8f, 0x0f, 0x17, 0x9f, - 0x17, 0x01, 0xf6, 0xd5, 0xb0, 0x7e, 0xe4, 0x1b, 0x2b, 0x38, 0x83, 0xb5, 0x75, 0x98, 0x83, 0x71, - 0x6d, 0x1d, 0x92, 0xb3, 0x9a, 0xdb, 0x5c, 0x89, 0xa7, 0x68, 0xd0, 0x38, 0xe4, 0xf9, 0x49, 0x84, - 0x8b, 0x2a, 0x7f, 0xb4, 0x3e, 0xf4, 0x36, 0x13, 0x85, 0xb4, 0x48, 0x86, 0x2d, 0x43, 0x79, 0x69, - 0x63, 0x39, 0xa6, 0x51, 0x75, 0xc3, 0xa8, 0x5c, 0x8f, 0xbc, 0x87, 0x74, 0x80, 0x43, 0x27, 0x4e, - 0xa3, 0xea, 0x86, 0x91, 0xe3, 0x22, 0x59, 0x2a, 0x8d, 0xaa, 0x62, 0x68, 0xfd, 0x50, 0x0e, 0xe0, - 0x6e, 0x75, 0x05, 0x43, 0x91, 0x7e, 0x5a, 0xa1, 0x20, 0x3b, 0xbc, 0x9b, 0xe4, 0xde, 0x47, 0x1c, - 0xf8, 0xef, 0x73, 0x30, 0x65, 0xa2, 0x91, 0x77, 0x61, 0xba, 0x56, 0x0f, 0xfc, 0x66, 0x73, 0xdb, - 0xad, 0x3f, 0x58, 0xf7, 0xda, 0x94, 0x07, 0xd6, 0x1a, 0xe6, 0x67, 0x51, 0xa8, 0x8a, 0x9c, 0x26, - 0x2b, 0xb3, 0x93, 0xc8, 0xe4, 0xaf, 0xe6, 0x60, 0xb2, 0xb6, 0xe7, 0xef, 0xc7, 0xd9, 0xed, 0xf9, - 0x80, 0x7c, 0x8d, 0xad, 0xed, 0x70, 0xcf, 0xdf, 0x77, 0x32, 0x52, 0xdc, 0x7f, 0x7c, 0xb8, 0xf8, - 0xce, 0x60, 0xcf, 0xc4, 0x75, 0x1f, 0x6f, 0x32, 0x51, 0x78, 0xc9, 0xa8, 0xc4, 0x36, 0xeb, 0xb4, - 0xfe, 0x2c, 0x07, 0xe3, 0x78, 0xe7, 0x69, 0x36, 0x51, 0xe6, 0xfa, 0x5e, 0x4a, 0x16, 0xa4, 0xbe, - 0xab, 0xcf, 0xc0, 0xbe, 0x01, 0xd3, 0x09, 0x34, 0x62, 0xc1, 0x48, 0x0d, 0x5d, 0xa5, 0x75, 0x05, - 0x05, 0x77, 0x9e, 0xb6, 0x45, 0x89, 0xb5, 0xaa, 0x91, 0xdd, 0xbb, 0x82, 0xaf, 0x8c, 0x4b, 0x00, - 0x9e, 0x04, 0xc9, 0x9b, 0x0d, 0x49, 0xb6, 0xe4, 0xde, 0x15, 0x5b, 0xc3, 0xb2, 0x36, 0x60, 0xa4, - 0xe6, 0x07, 0xd1, 0xf2, 0x01, 0xbf, 0x4c, 0x54, 0x68, 0x58, 0xd7, 0x9f, 0x11, 0x3d, 0x54, 0xdd, - 0xd7, 0x6d, 0x51, 0x44, 0x16, 0x61, 0xf8, 0xba, 0x47, 0x9b, 0x0d, 0xdd, 0x5e, 0x74, 0x87, 0x01, - 0x6c, 0x0e, 0x67, 0x17, 0xae, 0x93, 0x71, 0xc4, 0xee, 0xd8, 0x30, 0xf5, 0xd3, 0xae, 0x9b, 0x15, - 0xa3, 0x7f, 0x5f, 0x30, 0x73, 0x06, 0x1b, 0x35, 0xf5, 0xe9, 0xea, 0xff, 0x28, 0x07, 0x0b, 0xbd, - 0x49, 0x74, 0x5b, 0xd7, 0x5c, 0x1f, 0x5b, 0xd7, 0x97, 0x92, 0xcf, 0x5e, 0x88, 0x26, 0x9e, 0xbd, - 0xe2, 0xc7, 0xae, 0x0a, 0x9a, 0x1a, 0xd7, 0x55, 0x4a, 0xf7, 0xb3, 0x7d, 0xda, 0x8c, 0x88, 0x7c, - 0x98, 0x23, 0xa4, 0xb1, 0x05, 0xad, 0xf5, 0x6b, 0x43, 0x70, 0xba, 0x27, 0x05, 0x59, 0xd3, 0x82, - 0xff, 0x4f, 0xa9, 0xb0, 0xe3, 0x3d, 0xf1, 0x2f, 0xe1, 0xbf, 0x68, 0x4d, 0x96, 0x74, 0xa6, 0xb9, - 0xa3, 0x82, 0xbe, 0xe7, 0x91, 0xd7, 0xab, 0x47, 0xf2, 0xe2, 0xe8, 0xc8, 0x0c, 0xd2, 0xf1, 0xdf, - 0xd1, 0xed, 0x8a, 0x46, 0xae, 0xd7, 0x0c, 0xf5, 0x65, 0xd7, 0xe0, 0x20, 0x5b, 0x96, 0xc5, 0x06, - 0xc8, 0x43, 0xd9, 0x06, 0xc8, 0xd6, 0xbf, 0xc8, 0xc1, 0x98, 0x6a, 0x36, 0x59, 0x80, 0x93, 0x5b, - 0x76, 0x79, 0x65, 0xd5, 0xd9, 0xfa, 0x60, 0x73, 0xd5, 0xb9, 0xbb, 0x51, 0xdb, 0x5c, 0x5d, 0xa9, - 0x5e, 0xaf, 0xae, 0x56, 0x4a, 0xcf, 0x90, 0x19, 0x98, 0xbc, 0xbb, 0x71, 0x6b, 0xe3, 0xce, 0xfd, - 0x0d, 0x67, 0xd5, 0xb6, 0xef, 0xd8, 0xa5, 0x1c, 0x99, 0x84, 0x31, 0x7b, 0xb9, 0xbc, 0xe2, 0x6c, - 0xdc, 0xa9, 0xac, 0x96, 0xf2, 0xa4, 0x04, 0x13, 0x2b, 0x77, 0x36, 0x36, 0x56, 0x57, 0xb6, 0xaa, - 0xf7, 0xaa, 0x5b, 0x1f, 0x94, 0x0a, 0x84, 0xc0, 0x14, 0x22, 0x6c, 0xda, 0xd5, 0x8d, 0x95, 0xea, - 0x66, 0x79, 0xbd, 0x34, 0xc4, 0x60, 0x0c, 0x5f, 0x83, 0x0d, 0x2b, 0x46, 0xb7, 0xee, 0x2e, 0xaf, - 0x96, 0x46, 0x18, 0x0a, 0xfb, 0x4b, 0x43, 0x19, 0x65, 0xd5, 0x23, 0x4a, 0xa5, 0xbc, 0x55, 0x5e, - 0x2e, 0xd7, 0x56, 0x4b, 0x45, 0x72, 0x0a, 0x66, 0x0d, 0x90, 0xb3, 0x7e, 0xe7, 0x46, 0x75, 0xa3, - 0x34, 0x46, 0xe6, 0xa0, 0xa4, 0x60, 0x95, 0x65, 0xe7, 0x6e, 0x6d, 0xd5, 0x2e, 0x41, 0x12, 0xba, - 0x51, 0xbe, 0xbd, 0x5a, 0x1a, 0xb7, 0xde, 0xe1, 0x6e, 0x4e, 0xbc, 0xab, 0xc9, 0x49, 0x20, 0xb5, - 0xad, 0xf2, 0xd6, 0xdd, 0x5a, 0xe2, 0xe3, 0xc7, 0x61, 0xb4, 0x76, 0x77, 0x65, 0x65, 0xb5, 0x56, - 0x2b, 0xe5, 0x08, 0xc0, 0xc8, 0xf5, 0x72, 0x75, 0x7d, 0xb5, 0x52, 0xca, 0x5b, 0x3f, 0x9e, 0x83, - 0x19, 0x29, 0x01, 0xca, 0x37, 0x8c, 0x4f, 0xb9, 0x16, 0xdf, 0x35, 0x2e, 0xb6, 0xd2, 0x0b, 0x25, - 0x51, 0x49, 0x9f, 0x65, 0xf8, 0x33, 0x39, 0x38, 0x91, 0x89, 0x4d, 0x3e, 0x80, 0x92, 0x6c, 0xc1, - 0x6d, 0x37, 0xaa, 0xef, 0xc5, 0xfb, 0xd8, 0xf3, 0x89, 0x5a, 0x12, 0x68, 0x5c, 0xad, 0x19, 0xa7, - 0x23, 0x4c, 0xb1, 0x19, 0x3c, 0x58, 0xae, 0xf5, 0x9d, 0x1c, 0x9c, 0xea, 0x51, 0x0d, 0x59, 0x81, - 0x11, 0x15, 0x36, 0xbd, 0x8f, 0x41, 0xd5, 0xdc, 0x77, 0x0f, 0x17, 0x05, 0x22, 0xe6, 0x6f, 0xc3, - 0xbf, 0xec, 0x11, 0x15, 0x07, 0x1d, 0x83, 0x91, 0xf3, 0xee, 0x3b, 0x9d, 0xe8, 0x79, 0x51, 0x53, - 0xf9, 0x7e, 0x6d, 0x79, 0x5c, 0xf4, 0x5d, 0xc1, 0xdd, 0x0f, 0x31, 0x1a, 0xb9, 0xf5, 0x93, 0x39, - 0x26, 0xdc, 0x25, 0x11, 0x99, 0xcc, 0x5b, 0x0e, 0xc3, 0x6e, 0x8b, 0xda, 0x7e, 0x93, 0x96, 0xed, - 0x0d, 0x71, 0x6c, 0xa0, 0xb4, 0xea, 0x62, 0x01, 0x5e, 0x2b, 0x1c, 0x37, 0x68, 0x1b, 0x8f, 0xa7, - 0x3a, 0x0d, 0x79, 0x13, 0x40, 0xe5, 0xfb, 0x97, 0x41, 0x0d, 0x78, 0x50, 0x0f, 0x01, 0x35, 0xe5, - 0x6d, 0x0d, 0xd9, 0xfa, 0xeb, 0x39, 0x98, 0x10, 0x97, 0xa6, 0x72, 0x93, 0x06, 0xd1, 0xa7, 0x9b, - 0x5e, 0x6f, 0x1a, 0xd3, 0x4b, 0xf9, 0x0f, 0x68, 0xfc, 0x59, 0x71, 0xe6, 0xcc, 0xfa, 0xa7, 0x39, - 0x28, 0x25, 0x11, 0xc9, 0xbb, 0x50, 0xac, 0xd1, 0x87, 0x34, 0xf0, 0xa2, 0x03, 0xb1, 0x51, 0xca, - 0x04, 0x33, 0x1c, 0x47, 0x94, 0xf1, 0xf9, 0x10, 0x8a, 0x5f, 0xb6, 0xa2, 0x19, 0x74, 0xbf, 0xd7, - 0xd4, 0x1e, 0x85, 0x27, 0xa5, 0xf6, 0xb0, 0xfe, 0x97, 0x3c, 0x9c, 0xba, 0x41, 0x23, 0xfd, 0x9b, - 0xd4, 0x6b, 0xf7, 0xe7, 0x06, 0xfb, 0x2e, 0xed, 0x4b, 0xe6, 0x61, 0x14, 0x8b, 0xe4, 0xf8, 0xda, - 0xf2, 0x27, 0x59, 0x56, 0xf3, 0xba, 0x60, 0x64, 0xb0, 0xe8, 0x51, 0xf7, 0x25, 0x2d, 0xa6, 0xbd, - 0x9a, 0xd6, 0xe7, 0x61, 0x0a, 0x83, 0xb6, 0x76, 0xd9, 0x72, 0xa0, 0x0d, 0xa1, 0xfe, 0x29, 0xda, - 0x09, 0x28, 0x79, 0x05, 0x4a, 0x0c, 0x52, 0xae, 0x3f, 0x68, 0xfb, 0xfb, 0x4d, 0xda, 0xd8, 0xa5, - 0x3c, 0x41, 0x7b, 0xd1, 0x4e, 0xc1, 0x25, 0xcf, 0xbb, 0x6d, 0x7e, 0x75, 0xa3, 0x0d, 0xd4, 0xd1, - 0x08, 0x9e, 0x31, 0x74, 0xe1, 0x4d, 0x18, 0xff, 0x84, 0xf9, 0x29, 0xac, 0xff, 0x39, 0x07, 0x73, - 0xf8, 0x71, 0x5a, 0xc5, 0x32, 0x77, 0x98, 0xec, 0x2d, 0x2d, 0x64, 0xbb, 0xcb, 0x40, 0xe6, 0x52, - 0x50, 0xbd, 0x18, 0xeb, 0x84, 0xf2, 0x03, 0xe8, 0x84, 0x6a, 0xc7, 0xc9, 0x93, 0x3a, 0xa0, 0x4a, - 0x8b, 0x67, 0xe1, 0x8f, 0x87, 0xdc, 0xfa, 0xab, 0x79, 0x18, 0xb5, 0x29, 0x26, 0x90, 0x24, 0xe7, - 0x61, 0x74, 0xc3, 0x8f, 0x68, 0x78, 0xdb, 0xc8, 0x16, 0xda, 0x66, 0x20, 0xa7, 0xd5, 0xb0, 0x65, - 0x21, 0x9b, 0xf0, 0x9b, 0x81, 0xdf, 0xe8, 0xd6, 0x23, 0x7d, 0xc2, 0x77, 0x38, 0xc8, 0x96, 0x65, - 0xe4, 0x35, 0x18, 0x13, 0x9c, 0xd5, 0x1b, 0x23, 0xda, 0xc6, 0x06, 0x54, 0x25, 0x20, 0x8d, 0x11, - 0x50, 0xa6, 0xe5, 0x02, 0xc6, 0x90, 0x26, 0xd3, 0xa6, 0x64, 0x06, 0x29, 0xaa, 0x0f, 0xf7, 0x11, - 0xd5, 0x3f, 0x07, 0x23, 0xe5, 0x30, 0xa4, 0x91, 0x74, 0xd2, 0x9e, 0x50, 0x11, 0x73, 0x42, 0x1a, - 0x71, 0xc6, 0x2e, 0x96, 0xdb, 0x02, 0xcf, 0xfa, 0xe7, 0x79, 0x18, 0xc6, 0x3f, 0xf1, 0x5d, 0x35, - 0xa8, 0xef, 0x19, 0xef, 0xaa, 0x41, 0x7d, 0xcf, 0x46, 0x28, 0xb9, 0x82, 0x9a, 0x0a, 0x99, 0x5d, - 0x40, 0x7c, 0x3d, 0xaa, 0xe0, 0x1b, 0x31, 0xd8, 0xd6, 0x71, 0xd4, 0x83, 0x73, 0x21, 0x33, 0x34, - 0xc3, 0x49, 0xc8, 0xdf, 0xa9, 0x89, 0x2f, 0xc6, 0x10, 0x32, 0x7e, 0x68, 0xe7, 0xef, 0xd4, 0xb0, - 0x37, 0xd6, 0xca, 0x4b, 0x6f, 0x5c, 0xd3, 0x13, 0xdb, 0x86, 0x7b, 0xee, 0xd2, 0x1b, 0xd7, 0x6c, - 0x51, 0xc2, 0xfa, 0x17, 0xdb, 0x8c, 0x0f, 0xaf, 0xdc, 0xa9, 0x18, 0xfb, 0x17, 0xbf, 0x0d, 0x1f, - 0x59, 0xed, 0x18, 0x81, 0x2c, 0xc1, 0xb8, 0x70, 0x65, 0x47, 0x7c, 0xcd, 0xd5, 0x5c, 0xb8, 0xba, - 0x73, 0x0a, 0x1d, 0x89, 0x3f, 0xc1, 0x89, 0x01, 0x92, 0x39, 0xd0, 0xc4, 0x13, 0x9c, 0x1c, 0xc2, - 0xd0, 0xd6, 0x50, 0x62, 0x9f, 0xe8, 0xd8, 0x59, 0x58, 0xf7, 0x89, 0xc6, 0x20, 0xbc, 0x0a, 0xc1, - 0xfa, 0x85, 0x3c, 0x14, 0x37, 0x9b, 0xdd, 0x5d, 0xaf, 0x7d, 0xef, 0x0a, 0x21, 0x80, 0xd7, 0x38, - 0x19, 0xa5, 0x99, 0xfd, 0x4d, 0x4e, 0x43, 0x51, 0xde, 0xdc, 0xe4, 0x86, 0x14, 0x8a, 0x5b, 0xdb, - 0x3c, 0xc8, 0x71, 0x17, 0xd9, 0xfa, 0xe5, 0x4f, 0x72, 0x05, 0xd4, 0xfd, 0xab, 0xd7, 0x45, 0x6d, - 0x88, 0x2d, 0x16, 0x5b, 0xa1, 0x91, 0xd7, 0x01, 0x0f, 0x09, 0x71, 0x79, 0x90, 0x0a, 0x6d, 0xde, - 0x34, 0x21, 0xa7, 0x70, 0x12, 0x44, 0x23, 0x57, 0x41, 0x4c, 0x4c, 0x91, 0x6b, 0xf3, 0x84, 0x49, - 0xc0, 0xb3, 0x17, 0x49, 0x12, 0x81, 0x4a, 0xde, 0x86, 0xf1, 0x38, 0xd3, 0x7d, 0x9c, 0x42, 0x53, - 0xa7, 0x5c, 0x89, 0xcb, 0xef, 0x5d, 0xb1, 0x75, 0x74, 0xeb, 0xbf, 0x18, 0x81, 0x09, 0xbd, 0x3d, - 0xc4, 0x86, 0xd9, 0xb0, 0xc9, 0xee, 0xee, 0xc2, 0xf6, 0xa9, 0x83, 0x85, 0xe2, 0x38, 0x3d, 0x6b, - 0x36, 0x88, 0xe1, 0x71, 0x43, 0x28, 0xe9, 0x83, 0xbf, 0xf6, 0x8c, 0x3d, 0x13, 0xc6, 0x60, 0x8e, - 0x47, 0xca, 0x50, 0xf4, 0x3b, 0xe1, 0x2e, 0x6d, 0x7b, 0xf2, 0xbd, 0xe5, 0x9c, 0xc1, 0xe8, 0x8e, - 0x28, 0x4c, 0xf1, 0x52, 0x64, 0xe4, 0x0d, 0x18, 0xf1, 0x3b, 0xb4, 0xed, 0x7a, 0xe2, 0x8c, 0x7b, - 0x36, 0xc1, 0x80, 0xb6, 0xcb, 0x55, 0x8d, 0x50, 0x20, 0x93, 0xcb, 0x30, 0xe4, 0x3f, 0x50, 0xe3, - 0x75, 0xda, 0x24, 0x7a, 0x10, 0xb9, 0x1a, 0x09, 0x22, 0x32, 0x82, 0x8f, 0xdc, 0xd6, 0x8e, 0x18, - 0x31, 0x93, 0xe0, 0xa6, 0xdb, 0xda, 0xd1, 0x09, 0x18, 0x22, 0x79, 0x0f, 0xa0, 0xe3, 0xee, 0xd2, - 0xc0, 0x69, 0x74, 0xa3, 0x03, 0x31, 0x6e, 0xcf, 0x1b, 0x64, 0x9b, 0xac, 0xb8, 0xd2, 0x8d, 0x0e, - 0x34, 0xda, 0xb1, 0x8e, 0x04, 0x92, 0x32, 0x40, 0xcb, 0x8d, 0x22, 0x1a, 0xb4, 0x7c, 0x61, 0x7c, - 0x36, 0xae, 0x52, 0x54, 0x72, 0x06, 0xb7, 0x55, 0xb1, 0xc6, 0x41, 0x23, 0xc2, 0x46, 0x7b, 0x81, - 0x2b, 0x32, 0x9e, 0x26, 0x1a, 0xed, 0x05, 0xc6, 0x57, 0x32, 0x44, 0xf2, 0x45, 0x18, 0x6d, 0x78, - 0x61, 0xdd, 0x0f, 0x1a, 0x22, 0x38, 0xc3, 0x73, 0x06, 0x4d, 0x85, 0x97, 0x69, 0x64, 0x12, 0x9d, - 0xb5, 0x56, 0xc4, 0x7f, 0xdb, 0xf0, 0xf7, 0x51, 0xcd, 0x9f, 0x6c, 0x6d, 0x4d, 0x15, 0xeb, 0xad, - 0x8d, 0x89, 0xd8, 0x50, 0xee, 0x7a, 0x51, 0xd3, 0xdd, 0x16, 0xef, 0xdc, 0xe6, 0x50, 0xde, 0xc0, - 0x22, 0x7d, 0x28, 0x39, 0x32, 0x79, 0x13, 0x8a, 0xb4, 0x1d, 0x05, 0xae, 0xe3, 0x35, 0x84, 0xd3, - 0x9e, 0xd9, 0x68, 0x76, 0x00, 0xbb, 0xd5, 0x8a, 0xde, 0x68, 0xc4, 0xaf, 0x36, 0x58, 0xff, 0x84, - 0x75, 0xaf, 0x25, 0x7c, 0xed, 0xcc, 0xfe, 0xa9, 0xad, 0x54, 0x6f, 0xeb, 0xfd, 0xc3, 0x10, 0xc9, - 0xf3, 0x00, 0xf1, 0x13, 0x37, 0x7f, 0x90, 0xb0, 0x35, 0xc8, 0x97, 0x86, 0xfe, 0xb7, 0x9f, 0x5b, - 0xcc, 0x2d, 0x03, 0x14, 0x65, 0x74, 0x0a, 0x6b, 0x1d, 0x4e, 0xf7, 0x5c, 0x14, 0xe4, 0x22, 0x94, - 0x76, 0x5c, 0xa1, 0x12, 0xab, 0xef, 0xb9, 0xed, 0x36, 0x6d, 0x8a, 0xed, 0x68, 0x5a, 0xc2, 0x57, - 0x38, 0x98, 0x73, 0xb6, 0xde, 0x83, 0xb9, 0xac, 0xde, 0x20, 0x2f, 0xc0, 0x84, 0x1e, 0x88, 0x43, - 0x30, 0x19, 0x77, 0x3b, 0x9e, 0x0c, 0xc5, 0x21, 0x18, 0xfc, 0x6a, 0x0e, 0x9e, 0xeb, 0xb7, 0xb6, - 0xc8, 0x02, 0x14, 0x3b, 0x81, 0xe7, 0xa3, 0x0c, 0xc7, 0x77, 0x40, 0xf5, 0x9b, 0x9c, 0x01, 0xe0, - 0xc2, 0x46, 0xe4, 0xee, 0x0a, 0x63, 0x7c, 0x7b, 0x0c, 0x21, 0x5b, 0xee, 0x6e, 0x48, 0x5e, 0x85, - 0x99, 0x06, 0xdd, 0x71, 0xbb, 0xcd, 0xc8, 0x09, 0xeb, 0x7b, 0xb4, 0x81, 0xfe, 0x2f, 0x68, 0x64, - 0x65, 0x97, 0x44, 0x41, 0x4d, 0xc2, 0x53, 0x2d, 0x1e, 0xee, 0xd1, 0xe2, 0x9b, 0x43, 0xc5, 0x5c, - 0x29, 0x6f, 0xa3, 0xad, 0x91, 0xf5, 0x03, 0x79, 0x98, 0xef, 0x35, 0x99, 0xc8, 0x3b, 0x59, 0x7d, - 0xc0, 0xb5, 0xfa, 0x3a, 0x5c, 0xd7, 0xea, 0x6b, 0xb5, 0x91, 0x25, 0x50, 0xde, 0x2b, 0x47, 0x79, - 0xa2, 0x4b, 0x18, 0xa3, 0xe9, 0xb8, 0x61, 0xb8, 0xcf, 0xd6, 0x4b, 0x41, 0x0b, 0xb4, 0x27, 0x60, - 0x3a, 0x8d, 0x84, 0x91, 0x2f, 0x00, 0xd4, 0x9b, 0x7e, 0x48, 0xf1, 0xf1, 0x5c, 0x1c, 0xc4, 0xdc, - 0x84, 0x57, 0x41, 0xf5, 0xd7, 0x52, 0x84, 0xae, 0xf8, 0x0d, 0x2a, 0x06, 0xd0, 0x85, 0x53, 0x3d, - 0x76, 0x0f, 0x36, 0x3c, 0x71, 0x62, 0x4f, 0x99, 0x26, 0xa0, 0xab, 0xd2, 0x7b, 0x26, 0x7b, 0x3c, - 0xdf, 0x6b, 0x8e, 0x1c, 0x00, 0x49, 0x6f, 0x11, 0x8c, 0xbb, 0x30, 0x44, 0xed, 0x06, 0x8a, 0x3b, - 0x87, 0xdc, 0x0d, 0x9a, 0x64, 0x11, 0xc6, 0x65, 0x1a, 0x20, 0x26, 0xe8, 0x72, 0xe6, 0x20, 0x40, - 0xb7, 0x28, 0x4e, 0x1e, 0x8c, 0x07, 0x89, 0x3e, 0x4a, 0xe2, 0x08, 0x1d, 0x43, 0xc8, 0xd6, 0x41, - 0x47, 0x7e, 0xdd, 0x73, 0x72, 0x7e, 0x9b, 0x1b, 0xb7, 0x28, 0xfd, 0xa9, 0x9c, 0x1c, 0xfe, 0xf4, - 0xce, 0x77, 0x54, 0xfb, 0x08, 0xa0, 0x47, 0x89, 0x68, 0x18, 0xfe, 0xcd, 0x8e, 0x74, 0xb9, 0xea, - 0xc4, 0x91, 0x2e, 0x7e, 0x92, 0xf3, 0x30, 0x1d, 0x70, 0x9b, 0xc3, 0xc8, 0x17, 0xfd, 0x89, 0x23, - 0x65, 0x4f, 0x72, 0xf0, 0x96, 0x8f, 0x7d, 0x2a, 0xda, 0x75, 0x53, 0x75, 0x98, 0x76, 0x10, 0x90, - 0x4b, 0x30, 0xc6, 0x0e, 0x02, 0x8c, 0x73, 0x91, 0x30, 0x65, 0x47, 0x3c, 0x3c, 0x56, 0xed, 0xe2, - 0x47, 0xe2, 0x6f, 0xc1, 0xeb, 0x9f, 0xe4, 0x24, 0x33, 0xfd, 0x18, 0x22, 0xa7, 0x60, 0xd4, 0x0f, - 0x76, 0xb5, 0x4f, 0x1b, 0xf1, 0x83, 0x5d, 0xf6, 0x5d, 0x17, 0xa0, 0xc4, 0x3d, 0x2b, 0xb8, 0xcb, - 0x7a, 0x78, 0xd0, 0xe6, 0xf7, 0xd4, 0xa2, 0x3d, 0xc5, 0xe1, 0x98, 0xeb, 0xf4, 0xa0, 0x5d, 0x67, - 0x98, 0x61, 0xe8, 0x3b, 0x7a, 0x70, 0x1b, 0xf1, 0xd9, 0x53, 0x61, 0xe8, 0xc7, 0x51, 0x6e, 0x1a, - 0x64, 0x19, 0x26, 0x19, 0x1f, 0x15, 0x62, 0x47, 0x9c, 0x92, 0x67, 0xd2, 0xa7, 0xe4, 0x41, 0xbb, - 0x2e, 0x9b, 0x68, 0x4f, 0x84, 0xda, 0x2f, 0xf1, 0x35, 0x3f, 0x9d, 0x87, 0x93, 0xd9, 0xe8, 0x38, - 0x5e, 0xac, 0x12, 0x74, 0x30, 0xe2, 0xea, 0x4d, 0x7b, 0x8c, 0x41, 0x78, 0x0c, 0x85, 0xac, 0xd6, - 0xe6, 0x33, 0x5b, 0xfb, 0x0a, 0xcc, 0x20, 0x23, 0x21, 0x97, 0x34, 0xbd, 0x30, 0x12, 0xa1, 0x01, - 0xec, 0x69, 0x56, 0xc0, 0x37, 0xb8, 0x75, 0x06, 0x26, 0x2f, 0xc1, 0x94, 0xdc, 0xa2, 0xfc, 0xfd, - 0x36, 0xab, 0x98, 0xef, 0x4f, 0x93, 0x02, 0x7a, 0x07, 0x81, 0xe4, 0x04, 0x8c, 0xb8, 0x9d, 0x0e, - 0xab, 0x92, 0x6f, 0x4b, 0xc3, 0x6e, 0xa7, 0x53, 0x6d, 0x90, 0x73, 0x30, 0x89, 0xee, 0x54, 0xce, - 0x0e, 0xda, 0x94, 0x08, 0x03, 0x36, 0x7b, 0x02, 0x81, 0xdc, 0xce, 0x24, 0x64, 0x0b, 0x81, 0xd1, - 0x4a, 0x94, 0x51, 0x44, 0x01, 0xb7, 0x23, 0x11, 0x44, 0xcf, 0x7c, 0x11, 0xa6, 0xc5, 0x69, 0x2a, - 0x76, 0x78, 0xa4, 0x14, 0xf3, 0x8f, 0x89, 0xb9, 0x22, 0x3c, 0x3a, 0x08, 0x50, 0xb5, 0x21, 0x29, - 0x7f, 0x2f, 0x07, 0x27, 0x32, 0x8f, 0x63, 0xf2, 0x0d, 0xe0, 0xde, 0x25, 0x91, 0xef, 0x04, 0xb4, - 0xee, 0x75, 0x3c, 0xf4, 0xbf, 0xe7, 0xea, 0xaa, 0xa5, 0x7e, 0x07, 0x39, 0x7a, 0xaa, 0x6c, 0xf9, - 0xb6, 0x22, 0xe2, 0xf7, 0xe8, 0x52, 0x90, 0x00, 0x2f, 0x7c, 0x08, 0x27, 0x32, 0x51, 0x33, 0xee, - 0xb7, 0xaf, 0x99, 0x69, 0xe4, 0xe4, 0x03, 0x44, 0xe2, 0xa3, 0xb5, 0x7b, 0xaf, 0xf8, 0xbc, 0xdf, - 0x50, 0x9f, 0x97, 0x38, 0xb8, 0xc9, 0x6a, 0x72, 0x5a, 0x66, 0xc9, 0x9e, 0x92, 0xa8, 0xe7, 0xcc, - 0x24, 0x1f, 0xc2, 0x09, 0x31, 0x55, 0x76, 0x03, 0xb7, 0xb3, 0x17, 0xb3, 0xe3, 0x0d, 0x7d, 0x39, - 0x8b, 0x1d, 0x9f, 0x43, 0x37, 0x18, 0xbe, 0xe2, 0x3a, 0xeb, 0xa6, 0x81, 0xe2, 0x1b, 0x02, 0x79, - 0xe8, 0x67, 0xb4, 0x26, 0x63, 0x0e, 0xe6, 0xb2, 0xe6, 0xe0, 0xc0, 0x0b, 0x40, 0xd4, 0xf9, 0x83, - 0x39, 0x38, 0x7b, 0x54, 0x9b, 0xc9, 0x7d, 0x38, 0x89, 0x4f, 0xe4, 0xa1, 0xaf, 0x3e, 0xdb, 0xa9, - 0xbb, 0xf5, 0x3d, 0x2a, 0x66, 0x89, 0x95, 0xf9, 0xf1, 0x9d, 0x4e, 0xad, 0x76, 0x47, 0xfb, 0xee, - 0x4e, 0xa7, 0x16, 0xfa, 0xf2, 0xf7, 0x0a, 0x23, 0x17, 0x6d, 0x68, 0xc0, 0xb3, 0x7d, 0x28, 0xb5, - 0x65, 0x95, 0xd3, 0x97, 0xd5, 0x05, 0x28, 0xed, 0xd0, 0x06, 0x13, 0xa1, 0x68, 0x03, 0x9b, 0xf6, - 0x70, 0x89, 0xe7, 0x62, 0xb4, 0xa7, 0x14, 0xbc, 0x16, 0xfa, 0xf7, 0x96, 0x44, 0x2d, 0x2d, 0xb9, - 0x43, 0xea, 0x22, 0x1a, 0xb9, 0x04, 0xb3, 0x89, 0x58, 0x02, 0xb1, 0x73, 0xaa, 0x3d, 0xc3, 0x8a, - 0xcc, 0xc8, 0x33, 0x2f, 0xc0, 0x84, 0x1c, 0x86, 0x40, 0xb9, 0xb8, 0xd8, 0xe3, 0x02, 0xc6, 0x66, - 0xb9, 0xa8, 0xee, 0x1f, 0xe4, 0xa5, 0xc8, 0xb4, 0xec, 0xfb, 0x51, 0x18, 0x05, 0x6e, 0xc7, 0xb8, - 0x37, 0x91, 0x16, 0x9c, 0xf6, 0xdd, 0x6e, 0xb4, 0xb7, 0xe4, 0xb0, 0x7f, 0xfd, 0x40, 0xfa, 0x9b, - 0xd6, 0xa5, 0xd1, 0xdc, 0xf8, 0xd2, 0x65, 0x73, 0xeb, 0x2c, 0x33, 0xec, 0xb2, 0x8e, 0xcc, 0x4e, - 0x78, 0x8d, 0xeb, 0xda, 0x33, 0xf6, 0x29, 0xce, 0x33, 0x85, 0x45, 0xd6, 0x60, 0x62, 0x9b, 0xba, - 0x01, 0x0d, 0x9c, 0x38, 0xe9, 0x7b, 0xf2, 0xe2, 0xb4, 0x8c, 0x08, 0x68, 0x3f, 0x6a, 0x72, 0x1d, - 0xdf, 0x8e, 0x4b, 0xc8, 0xbb, 0x30, 0xe6, 0x35, 0x44, 0xa8, 0x3c, 0x71, 0x7d, 0x32, 0x45, 0xf6, - 0x6a, 0x83, 0x47, 0xce, 0x8b, 0x79, 0xb0, 0xbb, 0x97, 0x27, 0xa0, 0xcb, 0x93, 0xc6, 0x0d, 0xd3, - 0x5a, 0x96, 0xa7, 0x73, 0x9a, 0x2c, 0x95, 0xb2, 0xfe, 0x24, 0x8c, 0x84, 0x5a, 0xec, 0x3e, 0x5b, - 0xfc, 0xb2, 0xfe, 0x12, 0x5c, 0x18, 0xb4, 0x8f, 0xc8, 0xeb, 0x40, 0x7a, 0x74, 0xf8, 0x98, 0x3d, - 0xe3, 0xa6, 0xfa, 0xed, 0x05, 0xd0, 0x83, 0x8f, 0x79, 0x72, 0xc0, 0x25, 0xec, 0x6e, 0xe0, 0x59, - 0x3f, 0x54, 0x80, 0x29, 0xf3, 0x4e, 0x4d, 0x5e, 0x85, 0x21, 0xc5, 0x76, 0x4a, 0xe9, 0x7e, 0x75, - 0x24, 0xc6, 0xdc, 0x46, 0x24, 0x76, 0x40, 0xe0, 0x53, 0x91, 0xd3, 0xd2, 0xd5, 0xb3, 0xf6, 0x04, - 0x02, 0xa5, 0x5a, 0xf6, 0x26, 0xf0, 0xd4, 0xbf, 0xb8, 0x97, 0x45, 0x83, 0x25, 0xba, 0x2f, 0xb2, - 0x9b, 0x3d, 0xea, 0xd5, 0x26, 0x18, 0x2d, 0xdb, 0x4f, 0x30, 0xb7, 0x7d, 0x7c, 0x65, 0x1a, 0xea, - 0x7d, 0x65, 0x12, 0x9f, 0xd2, 0xe3, 0xca, 0x34, 0xdc, 0xe7, 0xca, 0x14, 0x53, 0xea, 0x57, 0x26, - 0xbc, 0x38, 0x8f, 0xf6, 0xba, 0x38, 0xc7, 0x34, 0xfc, 0xe2, 0xfc, 0xa2, 0xf8, 0xdc, 0xc0, 0xdd, - 0x77, 0xb0, 0x1f, 0xb8, 0x51, 0x1b, 0xff, 0x10, 0xdb, 0xdd, 0xc7, 0x47, 0xb5, 0xe5, 0x31, 0x90, - 0x2f, 0x71, 0xd6, 0xdf, 0xce, 0x25, 0x2e, 0x39, 0x72, 0x28, 0x5e, 0x82, 0x29, 0xaf, 0xc5, 0xa4, - 0x2f, 0xda, 0xd0, 0xa4, 0x86, 0x49, 0x7b, 0x52, 0x42, 0xb9, 0xe4, 0xf0, 0x32, 0x4c, 0x2b, 0x34, - 0xee, 0xfd, 0xcc, 0x2d, 0xf4, 0x6d, 0x45, 0x2d, 0xbc, 0x9f, 0x5f, 0x85, 0x19, 0x85, 0x28, 0x04, - 0x55, 0x2e, 0x38, 0x4c, 0xda, 0x25, 0x59, 0x20, 0x92, 0x58, 0x86, 0xd6, 0x6e, 0xf2, 0x54, 0xfa, - 0x8c, 0x5a, 0x65, 0xfd, 0x46, 0xc1, 0x10, 0x00, 0x65, 0x35, 0xcb, 0x30, 0xce, 0xb6, 0x46, 0xd1, - 0x49, 0x62, 0x5b, 0x79, 0xa1, 0x47, 0xf7, 0x8b, 0xb7, 0xcc, 0x5a, 0xed, 0x8e, 0x0d, 0x61, 0xe8, - 0xcb, 0xa7, 0x4d, 0x87, 0xef, 0xfe, 0x5c, 0x86, 0xc1, 0xe9, 0x27, 0xd9, 0xf1, 0x3d, 0xe4, 0x95, - 0xfe, 0xec, 0xca, 0x9d, 0x0e, 0xb6, 0x91, 0xcd, 0x3e, 0x3c, 0x05, 0xd4, 0x2f, 0x59, 0xc1, 0x5d, - 0xc0, 0xfb, 0x52, 0x68, 0x32, 0x2f, 0x64, 0x9c, 0xab, 0x29, 0xe6, 0xd8, 0x4b, 0xc8, 0xb9, 0xd4, - 0x95, 0x7f, 0x4a, 0xb6, 0xab, 0x30, 0xc1, 0x6e, 0xdf, 0x8a, 0xe1, 0x90, 0xe1, 0xaa, 0xd4, 0xeb, - 0xe3, 0x57, 0xaa, 0xb7, 0xed, 0x71, 0x46, 0x27, 0xd9, 0xec, 0xc1, 0x69, 0x5d, 0x46, 0x34, 0x1b, - 0x39, 0x2c, 0xa3, 0xca, 0xf5, 0xed, 0x81, 0x58, 0x94, 0xc4, 0xa6, 0x9e, 0x74, 0x4d, 0x80, 0x40, - 0xb3, 0xf6, 0x60, 0xa1, 0xf7, 0x90, 0xb0, 0x6b, 0x07, 0xd5, 0xfd, 0xa3, 0x6d, 0xf9, 0x53, 0x3b, - 0x20, 0xf3, 0xfa, 0x01, 0x79, 0x1a, 0x8a, 0xd2, 0x1e, 0x4e, 0x5e, 0x54, 0x5c, 0x6e, 0x0b, 0x67, - 0xfd, 0xbd, 0x02, 0x9c, 0x1b, 0x60, 0xb8, 0xfa, 0xd4, 0xf9, 0x3e, 0x8c, 0x73, 0x85, 0x21, 0xdf, - 0x3e, 0xf9, 0x63, 0xbb, 0x3c, 0x06, 0x18, 0x53, 0xb1, 0xd7, 0x31, 0x11, 0x26, 0xde, 0xef, 0x20, - 0x54, 0x7f, 0x93, 0x6f, 0xc0, 0x34, 0xdf, 0xd0, 0xb8, 0x39, 0xc2, 0x4e, 0xb7, 0x39, 0xc0, 0x8e, - 0xf6, 0xac, 0xb4, 0x9d, 0x4e, 0x90, 0xe2, 0x26, 0x87, 0x3b, 0x46, 0x4d, 0xc1, 0xc8, 0x16, 0x8c, - 0x23, 0xda, 0x8e, 0xeb, 0x35, 0x07, 0x32, 0xe2, 0x95, 0x96, 0xd9, 0x3a, 0x19, 0xb7, 0xa2, 0x62, - 0x80, 0xeb, 0xf8, 0x9b, 0x5d, 0xf2, 0xda, 0xdd, 0x96, 0xe3, 0x76, 0x3a, 0x7c, 0x2e, 0x88, 0x57, - 0x9f, 0x61, 0x7b, 0xb2, 0xdd, 0x6d, 0x95, 0x3b, 0x1d, 0x1c, 0x52, 0x7c, 0x1e, 0x9a, 0x61, 0x78, - 0x7c, 0xd5, 0x4a, 0xcc, 0x11, 0xc4, 0x64, 0x0c, 0xf8, 0xba, 0x15, 0xb8, 0x73, 0xc0, 0x8d, 0x05, - 0xb8, 0xba, 0xdb, 0xe6, 0x3f, 0xac, 0x3f, 0xcd, 0x4b, 0xd9, 0xac, 0xf7, 0xbc, 0xff, 0x8b, 0x21, - 0xca, 0x18, 0xa2, 0x0b, 0x50, 0x62, 0x5d, 0x1f, 0x6f, 0x2a, 0x6a, 0x8c, 0xa6, 0xda, 0xdd, 0x96, - 0xea, 0x3b, 0xbd, 0xe3, 0x47, 0xf4, 0x8e, 0xff, 0x82, 0x14, 0x48, 0x33, 0xb7, 0x87, 0xde, 0x5d, - 0x6e, 0xfd, 0xef, 0x05, 0x38, 0x3f, 0xd8, 0x26, 0xf0, 0x17, 0xe3, 0x96, 0x31, 0x6e, 0x89, 0x4b, - 0xf0, 0x70, 0xf2, 0x12, 0x9c, 0xb5, 0xf6, 0x46, 0xb2, 0xd6, 0x5e, 0xea, 0xca, 0x3d, 0x9a, 0x71, - 0xe5, 0xce, 0x5c, 0xa0, 0xc5, 0x23, 0x16, 0xe8, 0x98, 0x3e, 0x4f, 0xfe, 0x28, 0x0f, 0xb3, 0x19, - 0x4f, 0x22, 0xe4, 0x43, 0x98, 0x95, 0xa2, 0x3d, 0x3f, 0x39, 0xb8, 0xc8, 0xcd, 0x4f, 0xdf, 0x8b, - 0x59, 0x42, 0x3d, 0xa2, 0x65, 0x08, 0xde, 0x33, 0x42, 0x9c, 0x8f, 0xcb, 0xff, 0xfc, 0x08, 0xf2, - 0xe4, 0x03, 0x38, 0x89, 0x61, 0x4f, 0xeb, 0x8e, 0x26, 0xcf, 0x3b, 0x01, 0xdd, 0x11, 0xf3, 0xe1, - 0x85, 0x94, 0xd8, 0xeb, 0xd5, 0xb5, 0xe6, 0xd8, 0x74, 0x67, 0xed, 0x19, 0x7b, 0x2e, 0xcc, 0x80, - 0x27, 0xef, 0x08, 0xff, 0x61, 0x0e, 0xac, 0xa3, 0xfb, 0x0b, 0x75, 0x95, 0xc9, 0x0e, 0x1f, 0xb3, - 0xc7, 0x5d, 0xad, 0xf7, 0xce, 0xc1, 0x64, 0x40, 0x77, 0x02, 0x1a, 0xee, 0x69, 0xdd, 0x37, 0x66, - 0x4f, 0x08, 0xa0, 0xec, 0x18, 0x19, 0xec, 0xe8, 0x58, 0x42, 0xb6, 0x24, 0xb2, 0xae, 0xab, 0xab, - 0x5f, 0xe6, 0x38, 0xb0, 0xd9, 0xa4, 0x37, 0x90, 0xff, 0xb8, 0x39, 0x54, 0xcc, 0x97, 0x0a, 0xb6, - 0x08, 0xc9, 0xb4, 0xe3, 0x35, 0xa9, 0xf5, 0x2b, 0x39, 0x29, 0x11, 0x64, 0x75, 0x1e, 0xf9, 0x50, - 0x33, 0xe2, 0x29, 0xa4, 0xc4, 0x90, 0x2c, 0x12, 0xdd, 0xde, 0x41, 0x44, 0x09, 0x42, 0x80, 0x11, - 0x25, 0x08, 0x21, 0x9f, 0xc6, 0x12, 0xe1, 0x4d, 0xf9, 0x06, 0xc8, 0x76, 0xbb, 0x7b, 0x57, 0xc8, - 0x45, 0x18, 0xe5, 0xcf, 0x7e, 0xb2, 0xa1, 0xd3, 0x46, 0x43, 0xef, 0x5d, 0xb1, 0x65, 0xb9, 0xf5, - 0x9d, 0x9c, 0x7a, 0xf8, 0x48, 0x36, 0xff, 0xde, 0x15, 0xf2, 0x85, 0xc1, 0xcc, 0x71, 0x8a, 0xd2, - 0x1c, 0x47, 0x99, 0xe2, 0x7c, 0xd1, 0x30, 0xc5, 0x79, 0xb1, 0x7f, 0x3f, 0x09, 0x15, 0x6b, 0x32, - 0x1b, 0xf5, 0x9f, 0xe6, 0xe0, 0x4c, 0x5f, 0x0a, 0xf2, 0x1c, 0x14, 0xcb, 0x9b, 0xd5, 0xad, 0x78, - 0x64, 0xd9, 0x6a, 0x91, 0x10, 0x72, 0x03, 0xc6, 0x96, 0xdd, 0xd0, 0xab, 0xb3, 0x09, 0x9c, 0xa9, - 0x34, 0x4a, 0xb1, 0x55, 0xe8, 0x6b, 0xcf, 0xd8, 0x31, 0x2d, 0x71, 0x60, 0x06, 0x57, 0x41, 0x2a, - 0xdb, 0x6b, 0x52, 0x61, 0x90, 0x62, 0x98, 0x22, 0x63, 0x3b, 0x4c, 0x0a, 0x98, 0x5c, 0x7c, 0x0f, - 0xa5, 0x14, 0xd2, 0xbb, 0x81, 0xc7, 0x08, 0xec, 0x75, 0x01, 0x8a, 0x9b, 0xf2, 0xf1, 0x43, 0xb3, - 0x5f, 0x93, 0x0f, 0x1d, 0xb6, 0x2a, 0xb5, 0xfe, 0x56, 0x4e, 0xde, 0xea, 0x8f, 0xfe, 0x10, 0x2d, - 0x0d, 0x40, 0xa3, 0x7f, 0x1a, 0x80, 0xc6, 0x27, 0x4c, 0x03, 0x60, 0xfd, 0x82, 0x08, 0xbb, 0x59, - 0x6d, 0x6c, 0x26, 0x32, 0x53, 0x7d, 0x5a, 0x3b, 0xc4, 0x55, 0x63, 0x76, 0x9e, 0xd3, 0x52, 0x93, - 0xa4, 0xeb, 0xea, 0x6d, 0x8e, 0xa8, 0x4d, 0xd5, 0x3f, 0xca, 0xc3, 0x73, 0xfd, 0xc8, 0x33, 0x93, - 0x68, 0xe5, 0x8e, 0x97, 0x44, 0xeb, 0x22, 0x14, 0x39, 0xcc, 0xcc, 0x4c, 0x2c, 0x48, 0x59, 0x87, - 0xcb, 0x62, 0x72, 0x0e, 0x46, 0xca, 0x2b, 0xb5, 0x38, 0x77, 0x02, 0x5a, 0xc3, 0xb8, 0xf5, 0x10, - 0xed, 0x2c, 0x44, 0x11, 0xf9, 0x7a, 0x3a, 0x5d, 0x88, 0x48, 0x9a, 0xf0, 0xac, 0xd6, 0x21, 0xa9, - 0x88, 0xb8, 0xd8, 0xde, 0x38, 0x82, 0xab, 0x08, 0x8a, 0x68, 0xa7, 0x53, 0x8f, 0x58, 0x30, 0xb2, - 0x19, 0xd0, 0x90, 0x46, 0xba, 0xa5, 0x4a, 0x07, 0x21, 0xb6, 0x28, 0x11, 0x76, 0x24, 0xee, 0x01, - 0x77, 0x1b, 0x1c, 0xd1, 0x5d, 0xb9, 0xd1, 0xf0, 0x84, 0x81, 0x6d, 0x0d, 0xc5, 0xfa, 0xff, 0xa9, - 0xbb, 0x96, 0x1e, 0xb7, 0xad, 0xeb, 0x6f, 0x52, 0x9a, 0xf1, 0xcc, 0xd1, 0x3c, 0x38, 0x37, 0x13, - 0x7b, 0x32, 0xb6, 0xc7, 0x8e, 0xfe, 0xb6, 0x13, 0x2b, 0x89, 0x13, 0xc7, 0xff, 0x3c, 0x9c, 0x36, - 0x4d, 0x38, 0x12, 0x35, 0x62, 0x46, 0x22, 0x15, 0x92, 0x9a, 0x89, 0xf3, 0x28, 0xa1, 0x8c, 0xe8, - 0x19, 0x35, 0x1a, 0x4a, 0x11, 0xa9, 0x38, 0xce, 0xa6, 0xed, 0x26, 0x05, 0x5a, 0xa4, 0x8f, 0xa0, - 0x8b, 0xa2, 0x28, 0x50, 0x14, 0xc8, 0xb7, 0xe8, 0x17, 0x08, 0x10, 0x04, 0xc8, 0xa2, 0xab, 0x16, - 0x08, 0x5a, 0x03, 0xdd, 0xb4, 0xcb, 0xa2, 0x9b, 0xac, 0x8a, 0xfb, 0x22, 0x2f, 0x49, 0x49, 0x19, - 0x3f, 0xd2, 0x22, 0xab, 0x19, 0xdd, 0x7b, 0xce, 0xe5, 0x25, 0xef, 0xeb, 0x9c, 0x7b, 0xce, 0xf9, - 0x9d, 0x9f, 0x48, 0xb0, 0x3a, 0xae, 0x5b, 0xe8, 0x34, 0xe4, 0xfd, 0xb1, 0x89, 0x4e, 0x7c, 0x1a, - 0xbc, 0x54, 0x20, 0x59, 0x61, 0x6f, 0xf4, 0x87, 0x87, 0xed, 0x50, 0x74, 0xcf, 0x11, 0x8a, 0x2d, - 0xc0, 0x3f, 0xaa, 0xe4, 0x7f, 0x74, 0x96, 0x6f, 0xb6, 0xb9, 0x4c, 0x6a, 0x14, 0xf2, 0xa7, 0xa8, - 0x02, 0xe8, 0x9d, 0xa6, 0x39, 0xa0, 0x00, 0xab, 0x57, 0x21, 0x8f, 0xbb, 0x95, 0x9a, 0x8c, 0x78, - 0x3a, 0xa8, 0x8d, 0x3a, 0x23, 0xa2, 0xbd, 0x0a, 0xda, 0x87, 0x3d, 0x8b, 0x10, 0x17, 0x77, 0x61, - 0x29, 0x49, 0x81, 0xb4, 0x24, 0x24, 0x57, 0xe1, 0x69, 0x85, 0xb5, 0xb4, 0xd9, 0xef, 0x53, 0x17, - 0xd1, 0xcd, 0x87, 0xfe, 0xfc, 0xe5, 0x59, 0xc0, 0x3f, 0x29, 0xcf, 0x38, 0xc8, 0xae, 0xe2, 0x2f, - 0x64, 0x58, 0x8d, 0xa3, 0xd2, 0xf8, 0x92, 0xf8, 0xd6, 0x86, 0x48, 0xa8, 0x09, 0x17, 0x7e, 0x2e, - 0x31, 0x65, 0x5f, 0x70, 0x8a, 0xe7, 0xf0, 0x16, 0xac, 0x4d, 0xa2, 0x47, 0x8f, 0x65, 0xb2, 0xb6, - 0x33, 0xc8, 0x86, 0x28, 0xbd, 0xbb, 0x90, 0xc4, 0xfd, 0x73, 0x09, 0xd6, 0x99, 0x63, 0x63, 0xa3, - 0xdd, 0xf5, 0x43, 0xcf, 0x6f, 0xfb, 0x7b, 0xde, 0xfd, 0x09, 0xf1, 0xd9, 0x4a, 0x6c, 0x4b, 0x17, - 0x92, 0xfe, 0xab, 0x99, 0xa7, 0x4d, 0x7e, 0x5b, 0x74, 0x89, 0x80, 0x73, 0xec, 0xd1, 0xc9, 0x9b, - 0xa7, 0x21, 0x95, 0x3e, 0x2e, 0x10, 0x43, 0x2a, 0x09, 0x45, 0xf1, 0x87, 0xb0, 0x31, 0xfd, 0x01, - 0xe8, 0x2d, 0x58, 0x24, 0x80, 0xf6, 0xad, 0xc1, 0xfe, 0xb0, 0xdd, 0xf1, 0xf8, 0x9d, 0x16, 0xbf, - 0x52, 0x14, 0xeb, 0x28, 0x20, 0x09, 0x0b, 0xf1, 0xdb, 0x27, 0x50, 0xf9, 0x8c, 0x29, 0xe1, 0x3d, - 0x2c, 0xb6, 0x56, 0xfc, 0x91, 0x04, 0x28, 0xdb, 0x06, 0x7a, 0x16, 0x16, 0x5a, 0x4e, 0xd9, 0x0e, - 0xdb, 0xc3, 0xb0, 0xd6, 0x1f, 0x0d, 0x19, 0xd0, 0x07, 0x8d, 0xf8, 0x0a, 0xf7, 0xf0, 0xce, 0x30, - 0x0c, 0xdd, 0x83, 0xfe, 0x68, 0x68, 0x25, 0xe8, 0x08, 0x6a, 0xbe, 0xe7, 0xbd, 0xd3, 0x69, 0xdf, - 0x4a, 0xa2, 0xe6, 0xb3, 0xb2, 0x04, 0x6a, 0x3e, 0x2b, 0x2b, 0x7e, 0x22, 0xc1, 0x29, 0xee, 0xf1, - 0xd0, 0x19, 0xd3, 0x97, 0x32, 0x89, 0x6b, 0x1e, 0x72, 0xa0, 0xb3, 0x69, 0xb2, 0xe9, 0x0a, 0x0f, - 0xfd, 0x27, 0x1d, 0x24, 0x42, 0x2a, 0xe5, 0x45, 0x2f, 0x43, 0xde, 0x0e, 0xfb, 0x83, 0x23, 0xc4, - 0xfe, 0x2b, 0xd1, 0x88, 0x86, 0xfd, 0x01, 0x69, 0x82, 0x70, 0x16, 0x3d, 0x58, 0x15, 0x3b, 0xc7, - 0x7b, 0x8c, 0x1a, 0x70, 0x9c, 0x21, 0xc1, 0xa4, 0xac, 0x43, 0x53, 0xde, 0x69, 0x73, 0x99, 0x03, - 0x0c, 0x30, 0xa0, 0x2d, 0x8b, 0xb7, 0x51, 0xfc, 0xb9, 0x04, 0x05, 0x2c, 0x3c, 0x10, 0x75, 0xec, - 0x5e, 0xa7, 0x74, 0x52, 0x0e, 0xe4, 0xc6, 0xc5, 0xa8, 0xf9, 0x23, 0x1d, 0xae, 0xcf, 0xc0, 0x72, - 0x8a, 0x01, 0x15, 0x49, 0x68, 0x69, 0xaf, 0xbb, 0xd7, 0xa6, 0x20, 0xdc, 0xd4, 0x32, 0x97, 0x28, - 0x2b, 0xfe, 0x54, 0x82, 0x55, 0xac, 0xbc, 0xeb, 0xe4, 0xde, 0xd6, 0x1a, 0xf5, 0xf8, 0x7a, 0xc7, - 0x02, 0x11, 0x77, 0x9d, 0xa1, 0x61, 0x6f, 0x54, 0x20, 0x62, 0x65, 0x56, 0x54, 0x8b, 0x6a, 0x30, - 0xc7, 0xce, 0x97, 0x80, 0xe1, 0x63, 0x6d, 0x08, 0xb7, 0x02, 0x71, 0xc3, 0x8c, 0x08, 0xbf, 0x09, - 0xd9, 0xc2, 0x18, 0x8f, 0x15, 0x71, 0x17, 0xff, 0x25, 0xc1, 0xc9, 0x09, 0x3c, 0xe8, 0x45, 0x98, - 0x21, 0x2e, 0xf9, 0x6c, 0xf4, 0x4e, 0x4f, 0x78, 0x44, 0xb8, 0x77, 0xb0, 0x73, 0x85, 0x1e, 0x44, - 0x87, 0xf8, 0x87, 0x45, 0xb9, 0xd0, 0x1b, 0x30, 0xaf, 0x76, 0x3a, 0x4c, 0x2f, 0x91, 0x13, 0x7a, - 0xc9, 0x84, 0x27, 0x5e, 0x8e, 0xe8, 0xa9, 0x5e, 0x42, 0x9d, 0x43, 0x3b, 0x1d, 0x97, 0x85, 0x1b, - 0xc4, 0xed, 0xad, 0x7f, 0x17, 0x96, 0x92, 0xc4, 0x77, 0xa4, 0x97, 0xfc, 0x46, 0x02, 0x25, 0xd9, - 0x87, 0x6f, 0x06, 0x1a, 0x61, 0xdc, 0x30, 0x7f, 0xcd, 0xa4, 0xfa, 0x95, 0x0c, 0x0f, 0x8e, 0xfd, - 0xc2, 0xe8, 0x09, 0x98, 0x55, 0x07, 0x03, 0xbd, 0xc2, 0x66, 0x15, 0x13, 0x78, 0xc8, 0x75, 0x6f, - 0x42, 0x6d, 0xa3, 0x44, 0xe8, 0x2a, 0xcc, 0x91, 0x99, 0x89, 0x19, 0xe4, 0x18, 0xa9, 0x8a, 0xde, - 0x86, 0xa4, 0x90, 0xaa, 0x38, 0x21, 0xaa, 0xc2, 0x12, 0x8b, 0x92, 0xb6, 0xbc, 0x7d, 0xef, 0xfd, - 0x08, 0x32, 0x95, 0xa0, 0xba, 0xf2, 0x3b, 0x64, 0x77, 0x48, 0xeb, 0xc4, 0x38, 0xe1, 0x24, 0x17, - 0xaa, 0x83, 0x42, 0xda, 0x14, 0x5b, 0xa2, 0x70, 0x59, 0x24, 0x6e, 0x9d, 0x76, 0x62, 0x42, 0x5b, - 0x19, 0xce, 0x68, 0xb8, 0xd4, 0x20, 0xe8, 0xee, 0xfb, 0x87, 0x9e, 0x1f, 0x7e, 0x73, 0xc3, 0x15, - 0x3f, 0xe3, 0x48, 0xc3, 0xf5, 0xeb, 0x3c, 0x5d, 0xcc, 0x69, 0x36, 0x2c, 0xd1, 0x08, 0x08, 0x89, - 0x44, 0xa2, 0x21, 0x59, 0x2f, 0x69, 0x1c, 0x70, 0x05, 0x8e, 0xd3, 0xf8, 0x6c, 0xbe, 0x32, 0xce, - 0x8c, 0xed, 0x02, 0xa5, 0xd9, 0xb9, 0x42, 0xc5, 0x17, 0x1a, 0x1b, 0x10, 0x58, 0x9c, 0x15, 0xed, - 0x40, 0xa1, 0xdc, 0xf3, 0xda, 0xfe, 0x68, 0xe0, 0x1c, 0xcd, 0x0c, 0xb8, 0xc6, 0xde, 0x65, 0x61, - 0x8f, 0xb2, 0x11, 0xf3, 0x21, 0xd9, 0xc9, 0xc5, 0x86, 0x90, 0x13, 0xb9, 0x0b, 0xe7, 0xc9, 0x95, - 0xe3, 0x53, 0x53, 0xbe, 0x4f, 0xba, 0x90, 0xf0, 0x25, 0x7d, 0xe1, 0x99, 0x3f, 0xb1, 0x0b, 0x4b, - 0xf5, 0x76, 0x10, 0x3a, 0xc3, 0xb6, 0x1f, 0x10, 0x5c, 0xa7, 0x23, 0xe0, 0x5e, 0xf0, 0xfc, 0xb8, - 0xf4, 0x2a, 0x32, 0x8c, 0x58, 0xe9, 0x55, 0x64, 0xb2, 0x39, 0x2c, 0x2f, 0x55, 0xbb, 0x7e, 0xbb, - 0xd7, 0xfd, 0x80, 0x47, 0x55, 0x50, 0x79, 0xe9, 0x06, 0x2f, 0xb4, 0xe2, 0xfa, 0xe2, 0x9b, 0x99, - 0x71, 0xa3, 0xbd, 0x2c, 0xc0, 0x71, 0x16, 0x73, 0x47, 0x63, 0xd0, 0x9a, 0x9a, 0x51, 0xd1, 0x8d, - 0x2d, 0x45, 0x42, 0x4b, 0x00, 0x4d, 0xcb, 0x2c, 0x6b, 0xb6, 0x8d, 0x7f, 0xcb, 0xf8, 0x37, 0x0b, - 0x50, 0xab, 0xb6, 0xea, 0x4a, 0x4e, 0x88, 0x51, 0xcb, 0x17, 0x3f, 0x93, 0xe0, 0xc4, 0xf8, 0xa1, - 0x44, 0x0e, 0x90, 0x28, 0x45, 0x66, 0x10, 0x7e, 0x76, 0xea, 0xb8, 0x8f, 0x2d, 0x4e, 0x47, 0x3b, - 0x86, 0x34, 0x8a, 0x4e, 0xe6, 0x56, 0x9f, 0x38, 0xb3, 0x6b, 0xb7, 0x53, 0x2c, 0xc3, 0xda, 0xa4, - 0x36, 0x92, 0xaf, 0xba, 0x0c, 0x05, 0xb5, 0xd9, 0xac, 0xeb, 0x65, 0xd5, 0xd1, 0x4d, 0x43, 0x91, - 0xd0, 0x3c, 0xcc, 0x6c, 0x59, 0x66, 0xab, 0xa9, 0xc8, 0xc5, 0x8f, 0x25, 0x58, 0xd4, 0xfd, 0xd0, - 0xdb, 0xa7, 0x5e, 0xaa, 0xf7, 0xba, 0xf8, 0x5e, 0x48, 0x2c, 0xbe, 0xb5, 0x28, 0x9e, 0x37, 0x7a, - 0xc0, 0x91, 0x56, 0xde, 0x9f, 0x24, 0x58, 0xc9, 0xf0, 0x20, 0x1b, 0x8e, 0xab, 0xbb, 0xb6, 0xa9, - 0x57, 0xca, 0xac, 0x67, 0x5c, 0x2a, 0x67, 0xa5, 0xd9, 0xa7, 0xd0, 0x18, 0x98, 0x9b, 0x81, 0xdb, - 0xef, 0x76, 0x84, 0x7c, 0x52, 0xb5, 0x63, 0x16, 0x6f, 0x89, 0x9c, 0x64, 0x1f, 0x8c, 0x86, 0x1e, - 0x69, 0x56, 0x4e, 0xdc, 0x68, 0x46, 0xe5, 0xd9, 0x86, 0x89, 0x53, 0x66, 0x1b, 0xd7, 0x67, 0x9b, - 0x8e, 0xdb, 0xdb, 0x5c, 0x84, 0x02, 0xd3, 0x5a, 0x88, 0x42, 0xf0, 0x91, 0x04, 0x6b, 0x93, 0xfa, - 0x8a, 0x15, 0xa1, 0x64, 0x40, 0xdc, 0x89, 0x08, 0x11, 0x38, 0x19, 0x09, 0xc7, 0xc9, 0xd0, 0x4b, - 0x50, 0xa0, 0xe9, 0xb2, 0xed, 0xab, 0x2d, 0x4b, 0x67, 0x13, 0xe4, 0xcc, 0x3f, 0xbe, 0x3c, 0x7b, - 0x92, 0x26, 0xd7, 0x76, 0x83, 0xab, 0xee, 0x68, 0xd8, 0x4d, 0xa0, 0xa7, 0x8a, 0x1c, 0xc5, 0x0f, - 0x25, 0x58, 0x9f, 0xfc, 0x92, 0xf8, 0x94, 0x71, 0xb0, 0x6c, 0x1e, 0xc7, 0x14, 0x91, 0x53, 0x86, - 0xc8, 0xeb, 0xa9, 0xa0, 0xa2, 0x88, 0x10, 0x33, 0x45, 0x99, 0x1a, 0xe5, 0x4c, 0x82, 0xb6, 0x24, - 0x13, 0x27, 0x2c, 0xfe, 0x53, 0x86, 0x13, 0x78, 0x02, 0xf5, 0xbc, 0x20, 0x50, 0x47, 0xe1, 0x81, - 0xe7, 0x87, 0x4c, 0xa4, 0x42, 0xcf, 0xc1, 0xec, 0xc1, 0x9d, 0xdd, 0x06, 0x52, 0x72, 0x84, 0x80, - 0x6c, 0xca, 0xdc, 0xa9, 0x13, 0xff, 0x8f, 0x1e, 0x06, 0x21, 0x21, 0x1e, 0xd9, 0x53, 0x17, 0x36, - 0xe5, 0x35, 0xc9, 0x9a, 0x1f, 0x44, 0xa9, 0xf1, 0x9e, 0x87, 0x19, 0x72, 0x03, 0xc0, 0xb6, 0x47, - 0x2e, 0xd6, 0x8e, 0xef, 0x1d, 0xb9, 0x1f, 0xb0, 0x28, 0x03, 0x7a, 0x12, 0x20, 0x46, 0x9f, 0x65, - 0xfb, 0x1f, 0x57, 0xa5, 0x23, 0x00, 0x5a, 0x6b, 0xfe, 0xf0, 0x46, 0x9b, 0x41, 0xba, 0x96, 0x60, - 0x85, 0x7f, 0x96, 0x01, 0x87, 0xba, 0x61, 0x26, 0xaa, 0x65, 0x5a, 0xa1, 0x0f, 0x38, 0xdc, 0xcd, - 0x79, 0x58, 0x0a, 0x82, 0x03, 0x57, 0xe8, 0x3d, 0x41, 0xbc, 0xb3, 0x16, 0x82, 0xe0, 0x20, 0xce, - 0xeb, 0x77, 0x1e, 0x96, 0xc2, 0x5e, 0x20, 0x52, 0xcd, 0x51, 0xaa, 0xb0, 0x17, 0x44, 0x54, 0xc5, - 0xbf, 0xcb, 0x30, 0xbf, 0x8b, 0x05, 0x0f, 0xa2, 0x4e, 0x4f, 0x57, 0xcf, 0x9f, 0x86, 0x42, 0xbd, - 0xdf, 0x66, 0xb6, 0x80, 0x80, 0x21, 0x77, 0x91, 0x40, 0x9d, 0x5e, 0xbf, 0xcd, 0xcd, 0x0a, 0x81, - 0x25, 0x12, 0x7d, 0x4d, 0x90, 0xd1, 0x2b, 0x30, 0x4b, 0x6d, 0x33, 0xec, 0xe2, 0x87, 0x8b, 0x9e, - 0x51, 0x8f, 0x2e, 0xd3, 0x6a, 0xe1, 0xfa, 0x9a, 0xda, 0x77, 0x44, 0x39, 0x88, 0x01, 0x77, 0x09, - 0x97, 0x07, 0x33, 0x47, 0xbb, 0x3c, 0x10, 0x00, 0x4a, 0x66, 0x8f, 0x02, 0x50, 0xb2, 0x7e, 0x0d, - 0x0a, 0x42, 0x7f, 0xee, 0x48, 0x12, 0xfd, 0xb1, 0x0c, 0x8b, 0xe4, 0xad, 0x22, 0x47, 0x8d, 0x6f, - 0xe7, 0x55, 0xc8, 0x0b, 0x89, 0xab, 0x90, 0x35, 0x71, 0xbc, 0xe8, 0x9b, 0x4d, 0xb9, 0x03, 0x79, - 0x05, 0x56, 0x32, 0x84, 0xe8, 0x19, 0x98, 0xc1, 0xdd, 0xe7, 0xaa, 0xa3, 0x92, 0x9e, 0x01, 0x31, - 0x98, 0x1d, 0x7e, 0xf1, 0xc0, 0xa2, 0xd4, 0xc5, 0x7f, 0x4b, 0xb0, 0xc0, 0xa0, 0x8d, 0xfd, 0x1b, - 0xfd, 0xaf, 0xfd, 0x9c, 0x17, 0xd3, 0x9f, 0x93, 0x86, 0xcc, 0xb2, 0xcf, 0xf9, 0xdf, 0xfe, 0x88, - 0xd7, 0x12, 0x1f, 0xf1, 0x64, 0x04, 0x6d, 0xc3, 0x5f, 0x67, 0xca, 0x37, 0xfc, 0x23, 0x01, 0x7b, - 0x4b, 0x12, 0xa2, 0xef, 0xc3, 0xbc, 0xe1, 0xdd, 0x4c, 0x68, 0x60, 0x17, 0x27, 0x34, 0x7a, 0x39, - 0x22, 0xa4, 0x6b, 0x8a, 0x1c, 0x5e, 0xbe, 0x77, 0xd3, 0xcd, 0x98, 0x85, 0xe2, 0x26, 0xb1, 0x12, - 0x96, 0x64, 0xbb, 0x93, 0xa9, 0xcf, 0x02, 0x33, 0x48, 0x14, 0xf8, 0x1f, 0xf2, 0x00, 0xb1, 0x4f, - 0x3b, 0x5e, 0x80, 0x09, 0x8b, 0x38, 0xbf, 0x8b, 0x26, 0x45, 0xe2, 0x1c, 0xe7, 0x86, 0xf2, 0x8b, - 0xec, 0x92, 0x55, 0x9e, 0x0c, 0x3d, 0x44, 0xae, 0x5b, 0xcb, 0xcc, 0x67, 0xbc, 0xe3, 0xf5, 0xda, - 0x74, 0x6f, 0xcf, 0x6d, 0x9e, 0x27, 0x48, 0x73, 0x51, 0xe9, 0x84, 0x1c, 0x75, 0xc4, 0xb3, 0xbc, - 0x82, 0x09, 0x32, 0x71, 0x22, 0xf9, 0xbb, 0x8f, 0x13, 0x99, 0xb9, 0x8b, 0x38, 0x91, 0xd9, 0x23, - 0xc6, 0x89, 0x34, 0x61, 0xbe, 0xeb, 0xbf, 0xe7, 0xf9, 0x61, 0x7f, 0x78, 0x8b, 0x58, 0xbd, 0xe3, - 0xab, 0x31, 0xfc, 0xa9, 0x75, 0x5e, 0x47, 0xc7, 0x9b, 0x1c, 0xc0, 0x11, 0xbd, 0x38, 0xdc, 0x51, - 0x21, 0xfa, 0x7f, 0x88, 0xad, 0x28, 0x0c, 0x8f, 0x7c, 0xf2, 0xb9, 0xbd, 0xc7, 0x8d, 0x2c, 0x2f, - 0x43, 0xd2, 0x98, 0xc2, 0xa2, 0x2c, 0x69, 0x3e, 0x55, 0xb1, 0x42, 0x44, 0xdb, 0xda, 0x13, 0xec, - 0x2d, 0xcc, 0x8d, 0xf6, 0x2b, 0x19, 0x50, 0xb6, 0xe3, 0xe8, 0x05, 0x28, 0xd0, 0xad, 0xdf, 0x1d, - 0x06, 0xef, 0xb2, 0xe0, 0x06, 0x1a, 0xe5, 0x2f, 0x14, 0x8b, 0x51, 0xfe, 0xb4, 0xd8, 0x0a, 0xde, - 0xed, 0xa1, 0xb7, 0xe0, 0x01, 0x32, 0xf0, 0x03, 0x6f, 0xd8, 0xed, 0x77, 0x5c, 0x02, 0xc9, 0xd6, - 0xee, 0xb1, 0x4c, 0x37, 0x4f, 0x90, 0x94, 0x6c, 0xd9, 0xea, 0x09, 0x13, 0x84, 0xc4, 0x10, 0x34, - 0x09, 0x65, 0x93, 0x12, 0x22, 0x07, 0x14, 0x91, 0xff, 0xc6, 0xa8, 0xd7, 0x63, 0x73, 0xae, 0x84, - 0xd5, 0xe9, 0x74, 0xdd, 0x84, 0x86, 0x97, 0xe2, 0x86, 0xab, 0xa3, 0x5e, 0x0f, 0x3d, 0x07, 0xd0, - 0xf7, 0xdd, 0xc3, 0x6e, 0x10, 0x50, 0xc3, 0x48, 0x14, 0xff, 0x13, 0x97, 0x8a, 0xc3, 0xd7, 0xf7, - 0x1b, 0xb4, 0x10, 0x0f, 0xdf, 0xa0, 0xbd, 0xef, 0x91, 0xa8, 0x59, 0xea, 0x04, 0xc3, 0xb0, 0xab, - 0x79, 0x61, 0x72, 0x1a, 0xed, 0x7b, 0x76, 0xf7, 0x03, 0xee, 0xc3, 0xfc, 0x3a, 0xac, 0x30, 0xf7, - 0xd3, 0xdd, 0x6e, 0x78, 0xc0, 0xe4, 0xf8, 0x7b, 0x51, 0x02, 0x04, 0x41, 0xfe, 0x2f, 0x79, 0x00, - 0x75, 0xd7, 0xe6, 0x80, 0x14, 0x97, 0x60, 0x06, 0x6b, 0x27, 0xfc, 0x96, 0x83, 0xdc, 0x11, 0x93, - 0x76, 0xc5, 0x3b, 0x62, 0x42, 0x81, 0xf7, 0x09, 0xcb, 0xdb, 0x27, 0x17, 0x6d, 0x72, 0x7c, 0x25, - 0x32, 0xa4, 0x45, 0x09, 0x69, 0x98, 0x16, 0xa1, 0x3a, 0x40, 0x0c, 0x11, 0xc1, 0xf4, 0xe5, 0x95, - 0x38, 0xd6, 0x9a, 0x55, 0x30, 0x50, 0xe2, 0x18, 0x66, 0x42, 0x9c, 0x3e, 0x31, 0x19, 0xda, 0x86, - 0xbc, 0xd3, 0x8e, 0xa2, 0x5b, 0x26, 0x00, 0x67, 0x9c, 0x63, 0x99, 0x88, 0x62, 0xf0, 0x8c, 0xa5, - 0xb0, 0x9d, 0x48, 0xd8, 0x46, 0x1a, 0x41, 0x1a, 0xcc, 0xb2, 0x2c, 0x93, 0x13, 0x00, 0x97, 0x58, - 0x92, 0x49, 0x06, 0xb3, 0x48, 0x0a, 0x45, 0x69, 0x87, 0xe5, 0x93, 0x7c, 0x1a, 0x72, 0xb6, 0xdd, - 0x60, 0xe1, 0xa2, 0x8b, 0xb1, 0xee, 0x63, 0xdb, 0x0d, 0x9e, 0x94, 0xf7, 0x50, 0x60, 0xc3, 0xc4, - 0xe8, 0x3b, 0x50, 0x10, 0x04, 0x7b, 0x16, 0x68, 0x4d, 0xbe, 0x41, 0x37, 0x2e, 0x16, 0xb7, 0x33, - 0x81, 0x1a, 0xd5, 0x41, 0xd9, 0x1e, 0xbd, 0xed, 0xa9, 0x83, 0x01, 0x89, 0xcc, 0x78, 0xcf, 0x1b, - 0x52, 0x81, 0x72, 0x2e, 0x46, 0x28, 0x74, 0xdb, 0x83, 0x81, 0xdb, 0xe1, 0xb5, 0xe2, 0x4d, 0x4f, - 0x9a, 0x13, 0x35, 0x61, 0xc5, 0xf6, 0xc2, 0xd1, 0x80, 0xba, 0x75, 0x54, 0xfb, 0x43, 0xac, 0xea, - 0xd0, 0x0d, 0x83, 0x80, 0xb9, 0x05, 0xb8, 0x92, 0xfb, 0xd2, 0xdc, 0xe8, 0x0f, 0x53, 0x6a, 0x4f, - 0x96, 0xb9, 0xe8, 0x89, 0x43, 0x8e, 0xcf, 0xfb, 0xa4, 0x02, 0x45, 0xce, 0x7b, 0xae, 0x40, 0xc5, - 0x6a, 0xd3, 0x93, 0x63, 0xa0, 0x43, 0x88, 0x59, 0x4e, 0x80, 0x0e, 0x49, 0x00, 0x86, 0x7c, 0x92, - 0x17, 0xd0, 0xab, 0xd8, 0x58, 0xbc, 0x08, 0xf0, 0x4a, 0xbf, 0xeb, 0x37, 0xbc, 0xf0, 0xa0, 0xdf, - 0x11, 0x10, 0x4c, 0x0a, 0x3f, 0xe8, 0x77, 0x7d, 0xf7, 0x90, 0x14, 0x7f, 0xf5, 0xe5, 0x59, 0x81, - 0xc8, 0x12, 0xfe, 0x47, 0x8f, 0xc3, 0x3c, 0xfe, 0xe5, 0xc4, 0xce, 0x29, 0xf4, 0x42, 0x94, 0x70, - 0xb3, 0xe4, 0xde, 0x11, 0x01, 0xba, 0x46, 0x50, 0xcd, 0xbb, 0x83, 0x50, 0x10, 0xab, 0x39, 0x84, - 0x79, 0x77, 0x10, 0xa6, 0x01, 0x09, 0x05, 0x62, 0x54, 0x8b, 0xba, 0xce, 0x71, 0xf1, 0x19, 0x78, - 0x3a, 0xb9, 0xf5, 0x63, 0x73, 0xcd, 0xe5, 0x48, 0x68, 0x62, 0x06, 0xb3, 0x14, 0x1b, 0xe9, 0x84, - 0x5d, 0xab, 0x50, 0x33, 0x0d, 0x3b, 0xdd, 0x68, 0x27, 0x82, 0x83, 0x8e, 0xbb, 0x47, 0x8a, 0x13, - 0x9d, 0x88, 0x88, 0xd1, 0x26, 0x2c, 0x53, 0xed, 0x23, 0xca, 0xaf, 0xc3, 0x4e, 0x3a, 0xb2, 0xb7, - 0xc5, 0x09, 0x78, 0xc4, 0xc7, 0xa7, 0x18, 0x50, 0x15, 0x66, 0x88, 0xaa, 0xca, 0x9c, 0xcb, 0x4f, - 0x89, 0x3a, 0x7a, 0x7a, 0x1d, 0x91, 0x7d, 0x85, 0x68, 0xe7, 0xe2, 0xbe, 0x42, 0x48, 0xd1, 0x6b, - 0x00, 0x9a, 0x3f, 0xec, 0xf7, 0x7a, 0x04, 0xab, 0x6f, 0x8e, 0x28, 0x79, 0x67, 0x92, 0xeb, 0x91, - 0xb4, 0x12, 0x13, 0x31, 0x5c, 0x19, 0xf2, 0xdb, 0x4d, 0x21, 0xfa, 0x09, 0x6d, 0x15, 0x75, 0x98, - 0xa5, 0x8b, 0x91, 0xe0, 0x5e, 0x32, 0x24, 0x6f, 0x01, 0x35, 0x91, 0xe2, 0x5e, 0xb2, 0xf2, 0x2c, - 0xee, 0xa5, 0xc0, 0x50, 0xdc, 0x86, 0xd5, 0x71, 0x2f, 0x96, 0x50, 0xae, 0xa5, 0xa3, 0x2a, 0xd7, - 0xbf, 0xcf, 0xc1, 0x02, 0x69, 0x8d, 0xef, 0xc2, 0x2a, 0x2c, 0xda, 0xa3, 0xb7, 0x23, 0x50, 0x08, - 0xbe, 0x1b, 0x93, 0xfe, 0x05, 0x62, 0x85, 0x68, 0x40, 0x4b, 0x70, 0x20, 0x0d, 0x96, 0xf8, 0x49, - 0xb0, 0xc5, 0x1d, 0xd6, 0x23, 0xc8, 0x49, 0x0e, 0x6c, 0x94, 0xcd, 0x2f, 0x96, 0x62, 0x8a, 0xcf, - 0x83, 0xdc, 0x9d, 0x9c, 0x07, 0xf9, 0x23, 0x9d, 0x07, 0x6f, 0xc0, 0x02, 0x7f, 0x1a, 0xd9, 0xc9, - 0x67, 0xee, 0x6d, 0x27, 0x4f, 0x34, 0x86, 0xea, 0xd1, 0x8e, 0x3e, 0x3b, 0x75, 0x47, 0x27, 0x56, - 0x49, 0xbe, 0xca, 0x32, 0x29, 0x83, 0x59, 0x1b, 0x24, 0x01, 0xcf, 0x56, 0xb9, 0x79, 0x17, 0xa7, - 0xe4, 0x33, 0x30, 0x5f, 0xef, 0x73, 0x83, 0x94, 0x60, 0x09, 0xe8, 0xf1, 0x42, 0x51, 0x5c, 0x88, - 0x28, 0xa3, 0xd3, 0x2d, 0x77, 0x3f, 0x4e, 0xb7, 0x6b, 0x00, 0x2c, 0x12, 0x22, 0x4e, 0x9c, 0x41, - 0x96, 0x0c, 0x8f, 0xf9, 0x4d, 0x1a, 0x24, 0x04, 0x62, 0xbc, 0x3b, 0x31, 0xd7, 0x15, 0x75, 0x6f, - 0xaf, 0x3f, 0xf2, 0xc3, 0x44, 0xa6, 0x39, 0x16, 0xfe, 0x8f, 0x8f, 0x04, 0x52, 0x27, 0x6e, 0x0f, - 0x29, 0xb6, 0xfb, 0x3b, 0x20, 0xe8, 0xd5, 0xc8, 0xe7, 0x6e, 0x6a, 0xe2, 0xed, 0x62, 0xe6, 0x0b, - 0x4d, 0xf4, 0xb4, 0x2b, 0x7e, 0x26, 0x89, 0x78, 0xbf, 0x77, 0x31, 0xd4, 0xcf, 0x03, 0x44, 0x1e, - 0x01, 0x7c, 0xac, 0xa9, 0x26, 0x17, 0x95, 0x8a, 0x5f, 0x39, 0xa6, 0x15, 0xde, 0x26, 0x77, 0xbf, - 0xde, 0xc6, 0x81, 0x82, 0xf9, 0x4e, 0xd8, 0x8e, 0x5d, 0x48, 0xc0, 0x8e, 0x24, 0x59, 0xb2, 0x33, - 0xf1, 0x04, 0xe1, 0xb1, 0x1c, 0x3c, 0x31, 0x41, 0x78, 0xc4, 0x58, 0x7c, 0x15, 0x96, 0xc5, 0xc0, - 0xc4, 0x5b, 0xfe, 0x1e, 0xfa, 0x1e, 0x45, 0x1f, 0x93, 0x12, 0x3a, 0x8e, 0x40, 0x84, 0x77, 0xdc, - 0x5b, 0xfe, 0x1e, 0x95, 0x7f, 0xda, 0x37, 0xc5, 0xbe, 0x12, 0xed, 0xf3, 0x0b, 0x09, 0x50, 0x96, - 0x5c, 0xdc, 0x4d, 0xa4, 0xff, 0x81, 0x74, 0x99, 0x92, 0xca, 0xf2, 0x77, 0x22, 0x95, 0x95, 0x7e, - 0x29, 0xc1, 0xb2, 0xae, 0x36, 0x18, 0x38, 0x2f, 0xb5, 0x6c, 0x3c, 0x0c, 0x67, 0x74, 0xb5, 0xe1, - 0x36, 0xcd, 0xba, 0x5e, 0xbe, 0xee, 0x8e, 0xc5, 0xdc, 0x3b, 0x03, 0x0f, 0x65, 0x49, 0x62, 0x0b, - 0xc8, 0x69, 0x58, 0xcb, 0x56, 0x73, 0x5c, 0xbe, 0xf1, 0xcc, 0x1c, 0xc2, 0x2f, 0x57, 0x7a, 0x09, - 0x96, 0x39, 0x06, 0x9d, 0x53, 0xb7, 0x09, 0xca, 0xed, 0x32, 0x14, 0x76, 0x34, 0x4b, 0xaf, 0x5e, - 0x77, 0xab, 0xad, 0x7a, 0x5d, 0x39, 0x86, 0x16, 0x61, 0x9e, 0x15, 0x94, 0x55, 0x45, 0x42, 0x0b, - 0x30, 0xa7, 0x1b, 0xb6, 0x56, 0x6e, 0x59, 0x9a, 0x22, 0x97, 0x5e, 0x82, 0xa5, 0xe6, 0xb0, 0xfb, - 0x5e, 0x3b, 0xf4, 0xb6, 0xbd, 0x5b, 0xc4, 0x80, 0x71, 0x1c, 0x72, 0x96, 0xba, 0xab, 0x1c, 0x43, - 0x00, 0xb3, 0xcd, 0xed, 0xb2, 0x7d, 0xe5, 0x8a, 0x22, 0xa1, 0x02, 0x1c, 0xdf, 0x2a, 0x37, 0xdd, - 0xed, 0x86, 0xad, 0xc8, 0xf8, 0x87, 0xba, 0x6b, 0x93, 0x1f, 0xb9, 0xd2, 0x53, 0xb0, 0x42, 0x64, - 0x85, 0x7a, 0x37, 0x08, 0x3d, 0xdf, 0x1b, 0x92, 0x3e, 0x2c, 0xc0, 0x9c, 0xed, 0xe1, 0x45, 0x1e, - 0x7a, 0xb4, 0x03, 0x8d, 0x51, 0x2f, 0xec, 0x0e, 0x7a, 0xde, 0xfb, 0x8a, 0x54, 0xba, 0x06, 0xcb, - 0x56, 0x7f, 0x14, 0x76, 0xfd, 0x7d, 0x3b, 0xc4, 0x14, 0xfb, 0xb7, 0xd0, 0x83, 0xb0, 0xd2, 0x32, - 0xd4, 0xc6, 0xa6, 0xbe, 0xd5, 0x32, 0x5b, 0xb6, 0xdb, 0x50, 0x9d, 0x72, 0x8d, 0x9a, 0x4f, 0x1a, - 0xa6, 0xed, 0xb8, 0x96, 0x56, 0xd6, 0x0c, 0x47, 0x91, 0x4a, 0x3f, 0x93, 0x60, 0xa9, 0x15, 0x30, - 0x97, 0xdf, 0x16, 0x09, 0xdc, 0x3b, 0x07, 0xa7, 0x5b, 0xb6, 0x66, 0xb9, 0x8e, 0xb9, 0xad, 0x19, - 0x6e, 0xcb, 0x56, 0xb7, 0xd2, 0x80, 0x8f, 0x67, 0xe1, 0x94, 0x40, 0x61, 0x69, 0x65, 0x73, 0x47, - 0xb3, 0xdc, 0xa6, 0x6a, 0xdb, 0xbb, 0xa6, 0x55, 0x51, 0x24, 0xb4, 0x0e, 0x27, 0xc6, 0x10, 0x34, - 0xaa, 0xaa, 0x22, 0x67, 0xea, 0x0c, 0x6d, 0x57, 0xad, 0xbb, 0x9b, 0xa6, 0xa3, 0xe4, 0x4a, 0x0d, - 0x7c, 0xd0, 0x11, 0xa0, 0x33, 0x8a, 0x68, 0x3f, 0x07, 0x79, 0xc3, 0x34, 0xb4, 0xb4, 0x89, 0x6b, - 0x01, 0xe6, 0xd4, 0x66, 0xd3, 0x32, 0x77, 0xc8, 0x80, 0x02, 0xcc, 0x56, 0x34, 0x03, 0xf7, 0x2c, - 0x87, 0x6b, 0x9a, 0x96, 0xd9, 0x30, 0x1d, 0xad, 0xa2, 0xe4, 0x4b, 0x16, 0x5f, 0x30, 0xbc, 0xd1, - 0xbd, 0x3e, 0xb5, 0x27, 0x55, 0xb4, 0xaa, 0xda, 0xaa, 0x3b, 0xec, 0x83, 0x5c, 0x77, 0x2d, 0xed, - 0xd5, 0x96, 0x66, 0x3b, 0xb6, 0x22, 0x21, 0x05, 0x16, 0x0c, 0x4d, 0xab, 0xd8, 0xae, 0xa5, 0xed, - 0xe8, 0xda, 0xae, 0x22, 0xe3, 0x36, 0xe9, 0xff, 0xf8, 0x09, 0xa5, 0x4f, 0x24, 0x40, 0x14, 0x24, - 0x8e, 0x23, 0x8f, 0x93, 0xf1, 0xd9, 0x80, 0xf5, 0x1a, 0xfe, 0xb0, 0xe4, 0xd5, 0x1a, 0x66, 0x25, - 0xfd, 0xc9, 0x4e, 0x00, 0x4a, 0xd5, 0x9b, 0xd5, 0xaa, 0x22, 0xa1, 0x53, 0xf0, 0x40, 0xaa, 0xbc, - 0x62, 0x99, 0x4d, 0x45, 0x5e, 0x97, 0xe7, 0x24, 0x74, 0x32, 0x53, 0xb9, 0xad, 0x69, 0x4d, 0x25, - 0x87, 0x87, 0x28, 0x55, 0xc1, 0x27, 0x20, 0x65, 0xcf, 0x97, 0x3e, 0x94, 0xe0, 0x04, 0xed, 0x26, - 0x9f, 0xcd, 0x51, 0x57, 0x4f, 0xc3, 0x1a, 0x83, 0xbe, 0x1c, 0xd7, 0xd1, 0x55, 0x50, 0x12, 0xb5, - 0xb4, 0x9b, 0x0f, 0xc2, 0x4a, 0xa2, 0x94, 0xf4, 0x43, 0xc6, 0x6b, 0x35, 0x51, 0xbc, 0xa9, 0xd9, - 0x8e, 0xab, 0x55, 0xab, 0xa6, 0xe5, 0xd0, 0x8e, 0xe4, 0x4a, 0x45, 0x58, 0x29, 0x7b, 0xc3, 0x10, - 0xeb, 0x20, 0x7e, 0xd0, 0xed, 0xfb, 0xa4, 0x0b, 0x8b, 0x30, 0xaf, 0xbd, 0xe6, 0x68, 0x86, 0xad, - 0x9b, 0x86, 0x72, 0xac, 0x74, 0x3a, 0x45, 0xc3, 0x57, 0x8d, 0x6d, 0xd7, 0x94, 0x63, 0xa5, 0x36, - 0x2c, 0x72, 0x17, 0x5b, 0x3a, 0x2b, 0x36, 0x60, 0x9d, 0xcf, 0x35, 0xb2, 0x7e, 0xd3, 0xaf, 0xb0, - 0x06, 0xab, 0xd9, 0x7a, 0xcd, 0x51, 0x24, 0x3c, 0x0a, 0xa9, 0x1a, 0x5c, 0x2e, 0x97, 0x7e, 0x27, - 0xc1, 0x1a, 0xcb, 0xf1, 0xc9, 0x6c, 0x1b, 0x14, 0x6d, 0x9b, 0xc0, 0xd1, 0x95, 0xe0, 0xa2, 0x63, - 0xb5, 0x6c, 0x47, 0xab, 0xb8, 0x15, 0x6d, 0x47, 0x2f, 0x6b, 0x64, 0xba, 0xe8, 0x96, 0xd6, 0xd0, - 0x0c, 0x27, 0xf5, 0xe8, 0xc7, 0xe0, 0x91, 0x29, 0xb4, 0x86, 0xe9, 0xf0, 0xdf, 0x78, 0x95, 0x3c, - 0x02, 0xff, 0x37, 0x85, 0x38, 0x22, 0x94, 0x4b, 0x6f, 0xc2, 0x42, 0x22, 0x83, 0xc8, 0x49, 0x78, - 0x40, 0xfc, 0xdd, 0xf4, 0xfc, 0x4e, 0xd7, 0xdf, 0x57, 0x8e, 0xa5, 0x2b, 0xac, 0x91, 0xef, 0xe3, - 0x0a, 0xb2, 0x20, 0xc5, 0x0a, 0xc7, 0x1b, 0x1e, 0x76, 0xfd, 0x76, 0xe8, 0x75, 0x14, 0xb9, 0x74, - 0x19, 0x16, 0x13, 0xb8, 0x85, 0xf8, 0xcb, 0xd7, 0x4d, 0xb6, 0x5f, 0x35, 0xb4, 0x8a, 0xde, 0x6a, - 0x28, 0x33, 0x78, 0x29, 0xd6, 0xf4, 0xad, 0x9a, 0x02, 0xa5, 0x8f, 0x25, 0x2c, 0x31, 0x93, 0xef, - 0xd3, 0xa8, 0xaa, 0x7c, 0xac, 0xf0, 0x3c, 0xa1, 0x68, 0xa8, 0x9a, 0x6d, 0x53, 0xd3, 0xec, 0x69, - 0x58, 0x63, 0x3f, 0x5c, 0xd5, 0xa8, 0xb8, 0x35, 0xd5, 0xaa, 0xec, 0xaa, 0x16, 0x9e, 0x3c, 0xd7, - 0x15, 0x99, 0xac, 0x08, 0xa1, 0xc4, 0x75, 0xcc, 0x56, 0xb9, 0xa6, 0xe4, 0xf0, 0x04, 0x4c, 0x94, - 0x37, 0x75, 0x43, 0xc9, 0x93, 0xf5, 0x95, 0xa1, 0x26, 0xcd, 0xe2, 0xfa, 0x99, 0xd2, 0x6d, 0x09, - 0x4e, 0xda, 0xdd, 0x7d, 0xbf, 0x1d, 0x8e, 0x86, 0x9e, 0xda, 0xdb, 0xef, 0x0f, 0xbb, 0xe1, 0xc1, - 0xa1, 0x3d, 0xea, 0x86, 0x1e, 0xba, 0x04, 0x17, 0x6c, 0x7d, 0xcb, 0x50, 0x1d, 0xbc, 0x3e, 0xd4, - 0xfa, 0x96, 0x69, 0xe9, 0x4e, 0xad, 0xe1, 0xda, 0x2d, 0x3d, 0x33, 0x75, 0xce, 0xc3, 0xb9, 0xc9, - 0xa4, 0x75, 0x6d, 0x4b, 0x2d, 0x5f, 0x57, 0xa4, 0xe9, 0x0d, 0x6e, 0xaa, 0x75, 0xd5, 0x28, 0x6b, - 0x15, 0x77, 0xe7, 0x8a, 0x22, 0xa3, 0x0b, 0xf0, 0xf0, 0x64, 0xd2, 0xaa, 0xde, 0xb4, 0x31, 0x59, - 0x6e, 0xfa, 0x73, 0x6b, 0x76, 0x03, 0x53, 0xe5, 0x4b, 0x5d, 0x50, 0xd2, 0x11, 0xd9, 0x19, 0x47, - 0x00, 0xab, 0x65, 0x18, 0x74, 0x97, 0x5c, 0x86, 0x82, 0xe9, 0xd4, 0x34, 0x8b, 0x81, 0xf2, 0x12, - 0x14, 0xde, 0x96, 0xa1, 0xb6, 0x9c, 0x9a, 0x69, 0xe9, 0xaf, 0x93, 0xed, 0x72, 0x0d, 0x56, 0xed, - 0xba, 0x5a, 0xde, 0x26, 0x33, 0x53, 0x37, 0xdc, 0x72, 0x4d, 0x35, 0x0c, 0xad, 0xae, 0x40, 0xe9, - 0xb7, 0x12, 0xb5, 0xc8, 0x8f, 0x0b, 0xdd, 0x42, 0x8f, 0xc3, 0xa3, 0xe6, 0xb6, 0xa3, 0xba, 0xcd, - 0x7a, 0x6b, 0x4b, 0x37, 0x5c, 0xfb, 0xba, 0x51, 0xe6, 0x07, 0x69, 0x39, 0xbb, 0xa3, 0x3c, 0x0a, - 0xe7, 0xa7, 0x52, 0xc7, 0xf0, 0xb9, 0x17, 0xa1, 0x38, 0x95, 0x92, 0xbd, 0x48, 0xe9, 0x73, 0x09, - 0x4e, 0x4d, 0xb1, 0x62, 0xa2, 0x27, 0xe0, 0x52, 0x4d, 0x53, 0x2b, 0x75, 0xcd, 0xb6, 0x5d, 0xfc, - 0xbe, 0x9a, 0xe1, 0x30, 0x87, 0x81, 0xb1, 0xfb, 0xc5, 0x25, 0xb8, 0x30, 0x9d, 0x3c, 0x3e, 0x79, - 0x1e, 0x85, 0xf3, 0xd3, 0x49, 0xd9, 0x49, 0x24, 0xe3, 0x5d, 0x63, 0x3a, 0x65, 0x74, 0x82, 0xe5, - 0x4a, 0x1f, 0x49, 0x70, 0x62, 0xbc, 0xc2, 0x8e, 0xfb, 0xa6, 0x1b, 0xb6, 0xa3, 0xd6, 0xeb, 0x6e, - 0x53, 0xb5, 0xd4, 0x86, 0xab, 0x19, 0x96, 0x59, 0xaf, 0x8f, 0xdb, 0xb9, 0xcf, 0xc3, 0xb9, 0xc9, - 0xa4, 0x76, 0xd9, 0xd2, 0x9b, 0x78, 0x0b, 0x2c, 0xc2, 0xc6, 0x64, 0x2a, 0x4d, 0x2f, 0x6b, 0x8a, - 0xbc, 0xf9, 0xe2, 0xa7, 0x7f, 0xdb, 0x38, 0xf6, 0xe9, 0xed, 0x0d, 0xe9, 0x8b, 0xdb, 0x1b, 0xd2, - 0x5f, 0x6f, 0x6f, 0x48, 0xaf, 0x3f, 0x76, 0x07, 0x09, 0xca, 0xdf, 0x9e, 0x25, 0x1e, 0x32, 0x57, - 0xff, 0x13, 0x00, 0x00, 0xff, 0xff, 0xe6, 0xfd, 0x9f, 0x46, 0xbb, 0x93, 0x01, 0x00, + // 27551 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x6c, 0x5c, 0x59, + 0x7a, 0x20, 0xd6, 0x55, 0xc5, 0x47, 0xf1, 0xe3, 0xab, 0x78, 0x48, 0x49, 0x14, 0xbb, 0x25, 0xaa, + 0xaf, 0xba, 0xd5, 0x52, 0x3f, 0xa4, 0x11, 0x35, 0xad, 0x99, 0x9e, 0x7e, 0x16, 0x59, 0x94, 0x58, + 0x12, 0x45, 0x71, 0x6e, 0x51, 0xd2, 0xb4, 0x7b, 0x66, 0xee, 0x5c, 0x56, 0x1d, 0x92, 0xb7, 0x55, + 0x55, 0xb7, 0xe6, 0xde, 0x5b, 0x92, 0x38, 0xde, 0xcd, 0xfa, 0xb9, 0x13, 0x67, 0xd7, 0xaf, 0xd8, + 0x8e, 0x67, 0x03, 0xaf, 0x61, 0x78, 0x1f, 0x71, 0x1e, 0x6b, 0x04, 0xb6, 0x17, 0xd9, 0xc0, 0x88, + 0x63, 0x07, 0x8e, 0x61, 0x78, 0x93, 0x8d, 0x81, 0xbc, 0x90, 0x89, 0x41, 0xc7, 0xf1, 0xc2, 0x08, + 0x84, 0x24, 0xb0, 0xb3, 0x80, 0x91, 0x74, 0xe0, 0x4d, 0x70, 0xbe, 0xf3, 0xb8, 0xe7, 0xdc, 0x7b, + 0xab, 0x58, 0xec, 0x56, 0xef, 0x5a, 0x0d, 0xff, 0x91, 0x58, 0xdf, 0xf9, 0xbe, 0xef, 0x9c, 0x7b, + 0x9e, 0xdf, 0xf9, 0xce, 0xf7, 0x80, 0xe7, 0x23, 0xda, 0xa4, 0x1d, 0x3f, 0x88, 0x2e, 0x35, 0xe9, + 0xae, 0x5b, 0xdf, 0xbf, 0x14, 0xed, 0x77, 0x68, 0xc8, 0xff, 0xbd, 0xd8, 0x09, 0xfc, 0xc8, 0x27, + 0xc3, 0xf8, 0x63, 0x61, 0x6e, 0xd7, 0xdf, 0xf5, 0x11, 0x72, 0x89, 0xfd, 0xc5, 0x0b, 0x17, 0x4e, + 0xef, 0xfa, 0xfe, 0x6e, 0x93, 0x5e, 0xc2, 0x5f, 0xdb, 0xdd, 0x9d, 0x4b, 0x8d, 0x6e, 0xe0, 0x46, + 0x9e, 0xdf, 0x16, 0xe5, 0x8b, 0xc9, 0xf2, 0xc8, 0x6b, 0xd1, 0x30, 0x72, 0x5b, 0x9d, 0x5e, 0x0c, + 0x1e, 0x06, 0x6e, 0xa7, 0x43, 0x03, 0x51, 0xfb, 0xc2, 0x05, 0xd5, 0x40, 0x37, 0x8a, 0x18, 0x25, + 0x63, 0x7e, 0xe9, 0xc1, 0x65, 0xfd, 0xa7, 0x40, 0x7d, 0x2d, 0xfb, 0x5b, 0x24, 0xc3, 0x04, 0x67, + 0xeb, 0xe7, 0x0b, 0x30, 0x76, 0x93, 0xd2, 0x4e, 0xb9, 0xe9, 0x3d, 0xa0, 0xe4, 0x2c, 0x0c, 0x6d, + 0xb8, 0x2d, 0x3a, 0x9f, 0x3b, 0x93, 0x3b, 0x3f, 0xb6, 0x3c, 0xfd, 0xf8, 0x60, 0x71, 0x3c, 0xa4, + 0xc1, 0x03, 0x1a, 0x38, 0x6d, 0xb7, 0x45, 0x6d, 0x2c, 0x24, 0xaf, 0xc0, 0x18, 0xfb, 0x3f, 0xec, + 0xb8, 0x75, 0x3a, 0x9f, 0x47, 0xcc, 0xc9, 0xc7, 0x07, 0x8b, 0x63, 0x6d, 0x09, 0xb4, 0xe3, 0x72, + 0x52, 0x85, 0xd1, 0xd5, 0x47, 0x1d, 0x2f, 0xa0, 0xe1, 0xfc, 0xd0, 0x99, 0xdc, 0xf9, 0xf1, 0xa5, + 0x85, 0x8b, 0xfc, 0x5b, 0x2f, 0xca, 0x6f, 0xbd, 0xb8, 0x25, 0x3b, 0x63, 0x79, 0xf6, 0x77, 0x0f, + 0x16, 0x9f, 0x79, 0x7c, 0xb0, 0x38, 0x4a, 0x39, 0xc9, 0x4f, 0xfc, 0xe1, 0x62, 0xce, 0x96, 0xf4, + 0xe4, 0x2d, 0x18, 0xda, 0xda, 0xef, 0xd0, 0xf9, 0xb1, 0x33, 0xb9, 0xf3, 0x53, 0x4b, 0xa7, 0x2f, + 0xf2, 0xe1, 0x51, 0x8d, 0x8f, 0xff, 0x62, 0x58, 0xcb, 0xc5, 0xc7, 0x07, 0x8b, 0x43, 0x0c, 0xc5, + 0x46, 0x2a, 0xf2, 0x1a, 0x8c, 0xac, 0xf9, 0x61, 0x54, 0xad, 0xcc, 0x03, 0x36, 0xf9, 0xd8, 0xe3, + 0x83, 0xc5, 0x99, 0x3d, 0x3f, 0x8c, 0x1c, 0xaf, 0xf1, 0xaa, 0xdf, 0xf2, 0x22, 0xda, 0xea, 0x44, + 0xfb, 0xb6, 0x40, 0xb2, 0x1e, 0xc1, 0xa4, 0xc1, 0x8f, 0x8c, 0xc3, 0xe8, 0x9d, 0x8d, 0x9b, 0x1b, + 0xb7, 0xef, 0x6d, 0x94, 0x9e, 0x21, 0x45, 0x18, 0xda, 0xb8, 0x5d, 0x59, 0x2d, 0xe5, 0xc8, 0x28, + 0x14, 0xca, 0x9b, 0x9b, 0xa5, 0x3c, 0x99, 0x80, 0x62, 0xa5, 0xbc, 0x55, 0x5e, 0x2e, 0xd7, 0x56, + 0x4b, 0x05, 0x32, 0x0b, 0xd3, 0xf7, 0xaa, 0x1b, 0x95, 0xdb, 0xf7, 0x6a, 0x4e, 0x65, 0xb5, 0x76, + 0x73, 0xeb, 0xf6, 0x66, 0x69, 0x88, 0x4c, 0x01, 0xdc, 0xbc, 0xb3, 0xbc, 0x6a, 0x6f, 0xac, 0x6e, + 0xad, 0xd6, 0x4a, 0xc3, 0x64, 0x0e, 0x4a, 0x92, 0xc4, 0xa9, 0xad, 0xda, 0x77, 0xab, 0x2b, 0xab, + 0xa5, 0x91, 0x1b, 0x43, 0xc5, 0x42, 0x69, 0xc8, 0x1e, 0x5d, 0xa7, 0x6e, 0x48, 0xab, 0x15, 0xeb, + 0xef, 0x15, 0xa0, 0x78, 0x8b, 0x46, 0x6e, 0xc3, 0x8d, 0x5c, 0xf2, 0x9c, 0x31, 0x3e, 0xf8, 0x89, + 0xda, 0xc0, 0x9c, 0x4d, 0x0f, 0xcc, 0xf0, 0xe3, 0x83, 0xc5, 0xdc, 0x6b, 0xfa, 0x80, 0xbc, 0x09, + 0xe3, 0x15, 0x1a, 0xd6, 0x03, 0xaf, 0xc3, 0x26, 0xcd, 0x7c, 0x01, 0xd1, 0x4e, 0x3e, 0x3e, 0x58, + 0x3c, 0xd6, 0x88, 0xc1, 0x5a, 0x87, 0xe8, 0xd8, 0xa4, 0x0a, 0x23, 0xeb, 0xee, 0x36, 0x6d, 0x86, + 0xf3, 0xc3, 0x67, 0x0a, 0xe7, 0xc7, 0x97, 0x9e, 0x15, 0x83, 0x20, 0x1b, 0x78, 0x91, 0x97, 0xae, + 0xb6, 0xa3, 0x60, 0x7f, 0x79, 0xee, 0xf1, 0xc1, 0x62, 0xa9, 0x89, 0x00, 0xbd, 0x83, 0x39, 0x0a, + 0xa9, 0xc5, 0x13, 0x63, 0xe4, 0xd0, 0x89, 0x71, 0xea, 0x77, 0x0f, 0x16, 0x73, 0x6c, 0xc0, 0xc4, + 0xc4, 0x88, 0xf9, 0x99, 0x53, 0x64, 0x09, 0x8a, 0x36, 0x7d, 0xe0, 0x85, 0xec, 0xcb, 0x8a, 0xf8, + 0x65, 0xc7, 0x1f, 0x1f, 0x2c, 0x92, 0x40, 0xc0, 0xb4, 0x66, 0x28, 0xbc, 0x85, 0x37, 0x60, 0x5c, + 0x6b, 0x35, 0x29, 0x41, 0xe1, 0x3e, 0xdd, 0xe7, 0x3d, 0x6c, 0xb3, 0x3f, 0xc9, 0x1c, 0x0c, 0x3f, + 0x70, 0x9b, 0x5d, 0xd1, 0xa5, 0x36, 0xff, 0xf1, 0xa5, 0xfc, 0x17, 0x73, 0x37, 0x86, 0x8a, 0xa3, + 0xa5, 0xa2, 0x9d, 0xaf, 0x56, 0xac, 0x7f, 0x7b, 0x08, 0x8a, 0xb6, 0xcf, 0x17, 0x22, 0xb9, 0x00, + 0xc3, 0xb5, 0xc8, 0x8d, 0xe4, 0x30, 0xcd, 0x3e, 0x3e, 0x58, 0x9c, 0x66, 0x8b, 0x94, 0x6a, 0xf5, + 0x73, 0x0c, 0x86, 0xba, 0xb9, 0xe7, 0x86, 0x72, 0xb8, 0x10, 0xb5, 0xc3, 0x00, 0x3a, 0x2a, 0x62, + 0x90, 0x73, 0x30, 0x74, 0xcb, 0x6f, 0x50, 0x31, 0x62, 0xe4, 0xf1, 0xc1, 0xe2, 0x54, 0xcb, 0x6f, + 0xe8, 0x88, 0x58, 0x4e, 0x5e, 0x85, 0xb1, 0x95, 0x6e, 0x10, 0xd0, 0x36, 0x9b, 0xeb, 0x43, 0x88, + 0x3c, 0xf5, 0xf8, 0x60, 0x11, 0xea, 0x1c, 0xe8, 0x78, 0x0d, 0x3b, 0x46, 0x60, 0xc3, 0x50, 0x8b, + 0xdc, 0x20, 0xa2, 0x8d, 0xf9, 0xe1, 0x81, 0x86, 0x81, 0xad, 0xcf, 0x99, 0x90, 0x93, 0x24, 0x87, + 0x41, 0x70, 0x22, 0x6b, 0x30, 0x7e, 0x3d, 0x70, 0xeb, 0x74, 0x93, 0x06, 0x9e, 0xdf, 0xc0, 0xf1, + 0x2d, 0x2c, 0x9f, 0x7b, 0x7c, 0xb0, 0x78, 0x7c, 0x97, 0x81, 0x9d, 0x0e, 0xc2, 0x63, 0xea, 0x8f, + 0x0e, 0x16, 0x8b, 0x15, 0xb1, 0x65, 0xda, 0x3a, 0x29, 0xf9, 0x06, 0x1b, 0x9c, 0x30, 0xc2, 0xae, + 0xa5, 0x8d, 0xf9, 0xd1, 0x43, 0x9b, 0x68, 0x89, 0x26, 0x1e, 0x6f, 0xba, 0x61, 0xe4, 0x04, 0x9c, + 0x2e, 0xd1, 0x4e, 0x9d, 0x25, 0xb9, 0x0d, 0xc5, 0x5a, 0x7d, 0x8f, 0x36, 0xba, 0x4d, 0x8a, 0x53, + 0x66, 0x7c, 0xe9, 0x84, 0x98, 0xd4, 0x72, 0x3c, 0x65, 0xf1, 0xf2, 0x82, 0xe0, 0x4d, 0x42, 0x01, + 0xd1, 0xe7, 0x93, 0xc4, 0xfa, 0x52, 0xf1, 0x3b, 0xbf, 0xb0, 0xf8, 0xcc, 0xf7, 0xfd, 0xc1, 0x99, + 0x67, 0xac, 0xff, 0x24, 0x0f, 0xa5, 0x24, 0x13, 0xb2, 0x03, 0x93, 0x77, 0x3a, 0x0d, 0x37, 0xa2, + 0x2b, 0x4d, 0x8f, 0xb6, 0xa3, 0x10, 0x27, 0x49, 0xff, 0x6f, 0x7a, 0x41, 0xd4, 0x3b, 0xdf, 0x45, + 0x42, 0xa7, 0xce, 0x29, 0x13, 0x5f, 0x65, 0xb2, 0x8d, 0xeb, 0xa9, 0xe1, 0x06, 0x1e, 0xe2, 0x0c, + 0x3b, 0x5a, 0x3d, 0x7c, 0xeb, 0xef, 0x51, 0x8f, 0x60, 0x2b, 0x26, 0x50, 0xbb, 0xb1, 0xbd, 0x8f, + 0x33, 0x73, 0xf0, 0x09, 0xc4, 0x48, 0x32, 0x26, 0x10, 0x03, 0x5b, 0xff, 0x3c, 0x07, 0x53, 0x36, + 0x0d, 0xfd, 0x6e, 0x50, 0xa7, 0x6b, 0xd4, 0x6d, 0xd0, 0x80, 0x4d, 0xff, 0x9b, 0x5e, 0xbb, 0x21, + 0xd6, 0x14, 0x4e, 0xff, 0xfb, 0x5e, 0x5b, 0xdf, 0xba, 0xb1, 0x9c, 0x7c, 0x0e, 0x46, 0x6b, 0xdd, + 0x6d, 0x44, 0xcd, 0xc7, 0x3b, 0x40, 0xd8, 0xdd, 0x76, 0x12, 0xe8, 0x12, 0x8d, 0x5c, 0x82, 0xd1, + 0xbb, 0x34, 0x08, 0xe3, 0xdd, 0x10, 0x8f, 0x86, 0x07, 0x1c, 0xa4, 0x13, 0x08, 0x2c, 0x72, 0x3d, + 0xde, 0x91, 0xc5, 0xa1, 0x36, 0x9d, 0xd8, 0x07, 0xe3, 0xa9, 0xd2, 0x12, 0x10, 0x7d, 0xaa, 0x48, + 0x2c, 0xeb, 0x27, 0xf3, 0x50, 0xaa, 0xb8, 0x91, 0xbb, 0xed, 0x86, 0xa2, 0x3f, 0xef, 0x5e, 0x61, + 0x7b, 0xbc, 0xf6, 0xa1, 0xb8, 0xc7, 0xb3, 0x96, 0x7f, 0xec, 0xcf, 0x7b, 0x31, 0xf9, 0x79, 0xe3, + 0xec, 0x84, 0x15, 0x9f, 0x17, 0x7f, 0xd4, 0xdb, 0x87, 0x7f, 0x54, 0x49, 0x7c, 0x54, 0x51, 0x7e, + 0x54, 0xfc, 0x29, 0xe4, 0x6d, 0x18, 0xaa, 0x75, 0x68, 0x5d, 0x6c, 0x22, 0xf2, 0x5c, 0x30, 0x3f, + 0x8e, 0x21, 0xdc, 0xbd, 0xb2, 0x3c, 0x21, 0xd8, 0x0c, 0x85, 0x1d, 0x5a, 0xb7, 0x91, 0x4c, 0x5b, + 0x34, 0xff, 0xa4, 0x00, 0x73, 0x59, 0x64, 0xfa, 0x77, 0x8c, 0xf4, 0xf9, 0x8e, 0xf3, 0x50, 0x64, + 0x47, 0x38, 0x3b, 0x16, 0x71, 0xbb, 0x18, 0x5b, 0x9e, 0x60, 0x4d, 0xde, 0x13, 0x30, 0x5b, 0x95, + 0x92, 0xb3, 0x4a, 0x22, 0x28, 0xc6, 0xfc, 0x84, 0x44, 0x20, 0xe5, 0x00, 0x36, 0xd6, 0x72, 0x09, + 0xa3, 0xe0, 0x10, 0x77, 0x8b, 0x04, 0xc7, 0x63, 0x1d, 0x08, 0x88, 0x71, 0xcc, 0xc8, 0x43, 0x61, + 0x15, 0x8a, 0xf2, 0xb3, 0xe6, 0x27, 0x90, 0xd1, 0x4c, 0xa2, 0x93, 0xee, 0x5e, 0xe1, 0x83, 0xd9, + 0x10, 0xbf, 0x75, 0x36, 0x12, 0x87, 0x5c, 0x81, 0xe2, 0x66, 0xe0, 0x3f, 0xda, 0xaf, 0x56, 0xc2, + 0xf9, 0xc9, 0x33, 0x85, 0xf3, 0x63, 0xcb, 0x27, 0x1e, 0x1f, 0x2c, 0xce, 0x76, 0x18, 0xcc, 0xf1, + 0x1a, 0xfa, 0x49, 0xab, 0x10, 0x6f, 0x0c, 0x15, 0x73, 0xa5, 0xfc, 0x8d, 0xa1, 0x62, 0xbe, 0x54, + 0xe0, 0xe2, 0xc5, 0x8d, 0xa1, 0xe2, 0x50, 0x69, 0xf8, 0xc6, 0x50, 0x71, 0x18, 0x05, 0x8e, 0xb1, + 0x12, 0xdc, 0x18, 0x2a, 0x8e, 0x97, 0x26, 0x8c, 0xd3, 0x1e, 0x19, 0x44, 0x7e, 0xdd, 0x6f, 0xda, + 0x85, 0x3b, 0x76, 0xd5, 0x1e, 0x59, 0x29, 0xaf, 0xd0, 0x20, 0xb2, 0x0b, 0xe5, 0x7b, 0x35, 0x7b, + 0xb2, 0xb2, 0xdf, 0x76, 0x5b, 0x5e, 0x9d, 0x1f, 0x9d, 0x76, 0xe1, 0xfa, 0xca, 0xa6, 0x55, 0x86, + 0xa9, 0xf8, 0x5b, 0xd6, 0xbd, 0x30, 0x22, 0x97, 0x60, 0x4c, 0x42, 0xd8, 0x46, 0x57, 0xc8, 0xfc, + 0x6a, 0x3b, 0xc6, 0xb1, 0x7e, 0x27, 0x0f, 0x10, 0x97, 0x3c, 0xa5, 0x6b, 0xe1, 0x0b, 0xc6, 0x5a, + 0x38, 0x96, 0x5c, 0x0b, 0x3d, 0x57, 0x01, 0x79, 0x17, 0x46, 0x98, 0x58, 0xd0, 0x95, 0x22, 0xd1, + 0x89, 0x24, 0x29, 0x16, 0xde, 0xbd, 0xb2, 0x3c, 0x25, 0x88, 0x47, 0x42, 0x84, 0xd8, 0x82, 0x4c, + 0x5b, 0x46, 0x3f, 0x3f, 0x1a, 0x0f, 0x86, 0x58, 0x40, 0xe7, 0x41, 0x0d, 0xa8, 0xe8, 0x50, 0x5c, + 0x19, 0x1d, 0x39, 0xc8, 0xaa, 0x94, 0x9c, 0x04, 0x36, 0xe0, 0xa2, 0x53, 0x47, 0x1f, 0x1f, 0x2c, + 0x16, 0xba, 0x81, 0x87, 0x93, 0x80, 0x5c, 0x02, 0x31, 0x0d, 0x44, 0x07, 0xb2, 0xd9, 0x37, 0x53, + 0x77, 0x9d, 0x3a, 0x0d, 0xa2, 0xb8, 0xc7, 0xe7, 0x73, 0x72, 0xb6, 0x90, 0x0e, 0x98, 0x53, 0x65, + 0x7e, 0x08, 0xa7, 0xc1, 0xf9, 0xcc, 0x5e, 0xb9, 0x68, 0xa0, 0x72, 0x31, 0xf2, 0x8c, 0x3c, 0x95, + 0x1a, 0xbc, 0xcc, 0x49, 0x89, 0x94, 0x66, 0x05, 0xe4, 0x0a, 0xb0, 0x19, 0x2a, 0x7a, 0x1f, 0x44, + 0x3d, 0xe5, 0x7b, 0xb5, 0xe5, 0x63, 0x82, 0xd3, 0xa4, 0xfb, 0x50, 0x27, 0x67, 0xd8, 0xe4, 0x4d, + 0x60, 0x53, 0x58, 0xf4, 0x3b, 0x11, 0x44, 0xd7, 0x57, 0x36, 0x57, 0x9a, 0x7e, 0xb7, 0x51, 0xfb, + 0xf2, 0x7a, 0x4c, 0xbc, 0x5b, 0xef, 0xe8, 0xc4, 0xd7, 0x57, 0x36, 0xc9, 0x9b, 0x30, 0x5c, 0xfe, + 0x56, 0x37, 0xa0, 0x42, 0x3e, 0x99, 0x90, 0x75, 0x32, 0xd8, 0xf2, 0x09, 0x41, 0x38, 0xed, 0xb2, + 0x9f, 0xba, 0x5c, 0x87, 0xe5, 0xac, 0xe6, 0xad, 0xf5, 0x9a, 0x90, 0x3d, 0x48, 0xa2, 0x5b, 0xb6, + 0xd6, 0xb5, 0x66, 0x47, 0xc6, 0x57, 0x33, 0x2a, 0x72, 0x09, 0xf2, 0xe5, 0x0a, 0xde, 0x88, 0xc6, + 0x97, 0xc6, 0x64, 0xb5, 0x95, 0xe5, 0x39, 0x41, 0x32, 0xe1, 0xea, 0xcb, 0x20, 0x5f, 0xae, 0x90, + 0x65, 0x18, 0xbe, 0xb5, 0x5f, 0xfb, 0xf2, 0xba, 0xd8, 0xcc, 0x66, 0xe5, 0xbc, 0x66, 0xb0, 0xdb, + 0xb8, 0xec, 0xc3, 0xb8, 0xc5, 0xad, 0xfd, 0xf0, 0x9b, 0x4d, 0xbd, 0xc5, 0x88, 0x46, 0x36, 0x61, + 0xac, 0xdc, 0x68, 0x79, 0xed, 0x3b, 0x21, 0x0d, 0xe6, 0xc7, 0x91, 0xcf, 0x7c, 0xa2, 0xdd, 0xaa, + 0x7c, 0x79, 0xfe, 0xf1, 0xc1, 0xe2, 0x9c, 0xcb, 0x7e, 0x3a, 0xdd, 0x90, 0x06, 0x1a, 0xb7, 0x98, + 0x09, 0xd9, 0x04, 0xb8, 0xe5, 0xb7, 0x77, 0xfd, 0x72, 0xd4, 0x74, 0xc3, 0xc4, 0xf6, 0x18, 0x17, + 0x28, 0xf1, 0xe1, 0x58, 0x8b, 0xc1, 0x1c, 0x97, 0x01, 0x35, 0x86, 0x1a, 0x0f, 0x72, 0x0d, 0x46, + 0x6e, 0x07, 0x6e, 0xbd, 0x49, 0xe7, 0x27, 0x91, 0xdb, 0x9c, 0xe0, 0xc6, 0x81, 0xf2, 0x4b, 0xe7, + 0x05, 0xc3, 0x92, 0x8f, 0x60, 0xfd, 0x9a, 0xc2, 0x11, 0x17, 0xee, 0x01, 0x49, 0xcf, 0xc9, 0x8c, + 0x4b, 0xc2, 0x2b, 0xfa, 0x25, 0x21, 0x5e, 0xf4, 0x2b, 0x7e, 0xab, 0xe5, 0xb6, 0x1b, 0x48, 0x7b, + 0x77, 0x49, 0xbb, 0x3b, 0x58, 0xdf, 0x84, 0x99, 0x54, 0x67, 0x1d, 0x72, 0xbf, 0x7b, 0x07, 0xa6, + 0x2b, 0x74, 0xc7, 0xed, 0x36, 0x23, 0x75, 0x92, 0xf0, 0x25, 0x8a, 0x37, 0xad, 0x06, 0x2f, 0x72, + 0xe4, 0xf1, 0x61, 0x27, 0x91, 0xad, 0xb7, 0x61, 0xd2, 0xf8, 0x7c, 0x76, 0x55, 0x28, 0x77, 0x1b, + 0x5e, 0x84, 0x03, 0x99, 0x8b, 0xaf, 0x0a, 0x2e, 0x03, 0xe2, 0x70, 0xd9, 0x31, 0x82, 0xf5, 0xf7, + 0x75, 0x69, 0x45, 0xec, 0x44, 0xec, 0x5a, 0x2d, 0xf6, 0x83, 0x5c, 0x2c, 0x3b, 0xa5, 0xf6, 0x03, + 0xb5, 0x1b, 0x5c, 0xe0, 0x6b, 0x33, 0x9f, 0x5a, 0x9b, 0xe3, 0x62, 0x24, 0x0a, 0xee, 0xc3, 0x90, + 0xaf, 0x48, 0x35, 0x53, 0x0b, 0x1f, 0x7f, 0xa6, 0xbe, 0x0b, 0x13, 0xb7, 0xdc, 0xb6, 0xbb, 0x4b, + 0x1b, 0xec, 0x0b, 0xf8, 0xde, 0x33, 0xb6, 0xfc, 0xec, 0xe3, 0x83, 0xc5, 0x13, 0x2d, 0x0e, 0xc7, + 0xaf, 0xd4, 0x27, 0x91, 0x41, 0x40, 0x2e, 0xcb, 0x95, 0x3d, 0x9c, 0xb1, 0xb2, 0x27, 0x45, 0xed, + 0xc3, 0xb8, 0xb2, 0xc5, 0x7a, 0xb6, 0x7e, 0x73, 0x0c, 0xbf, 0x91, 0xbc, 0x0a, 0x23, 0x36, 0xdd, + 0x65, 0x47, 0x4d, 0x2e, 0x1e, 0xa4, 0x00, 0x21, 0x7a, 0xc7, 0x70, 0x1c, 0x94, 0x33, 0x68, 0x23, + 0xdc, 0xf3, 0x76, 0x22, 0xd1, 0x3b, 0x4a, 0xce, 0x10, 0x60, 0x4d, 0xce, 0x10, 0x10, 0xf3, 0x3a, + 0xcb, 0x61, 0x6c, 0xf7, 0xb3, 0x2b, 0x35, 0xd1, 0x69, 0xb2, 0x87, 0xed, 0x8a, 0xb6, 0x8d, 0x04, + 0x86, 0x94, 0xc0, 0xb0, 0xc9, 0x55, 0x18, 0x2b, 0xd7, 0xeb, 0x7e, 0x57, 0xbb, 0x33, 0xf2, 0x75, + 0xcb, 0x81, 0xa6, 0x8a, 0x24, 0x46, 0x25, 0x35, 0x18, 0x5f, 0x65, 0x17, 0x2d, 0x6f, 0xc5, 0xad, + 0xef, 0xc9, 0x4e, 0x92, 0x7b, 0x98, 0x56, 0x12, 0xaf, 0x5c, 0x8a, 0xc0, 0x3a, 0x03, 0xea, 0x4a, + 0x06, 0x0d, 0x97, 0x6c, 0xc1, 0x78, 0x8d, 0xd6, 0x03, 0x1a, 0xd5, 0x22, 0x3f, 0xa0, 0x89, 0x2d, + 0x59, 0x2b, 0x59, 0x3e, 0x2d, 0xef, 0x7a, 0x21, 0x02, 0x9d, 0x90, 0x41, 0x75, 0xae, 0x1a, 0x32, + 0x17, 0xda, 0x5b, 0x7e, 0xb0, 0x5f, 0x59, 0x16, 0xdb, 0x74, 0x7c, 0xa6, 0x73, 0xb0, 0x2e, 0xb4, + 0x33, 0x48, 0x63, 0xdb, 0x14, 0xda, 0x39, 0x16, 0x8e, 0x54, 0xa5, 0x86, 0xb2, 0x95, 0xd8, 0xb4, + 0xa7, 0xe3, 0x5e, 0x46, 0xb0, 0x36, 0x52, 0x8d, 0x10, 0x25, 0x33, 0x63, 0xa4, 0x04, 0x16, 0xe9, + 0x00, 0x91, 0xa3, 0xc6, 0x05, 0xdd, 0x26, 0x0d, 0x43, 0xb1, 0x97, 0x9f, 0x4c, 0x0c, 0x7e, 0x8c, + 0xb0, 0xfc, 0xa2, 0x60, 0x7e, 0x4a, 0x4e, 0x03, 0x71, 0x4f, 0x63, 0x85, 0x5a, 0x3d, 0x19, 0xbc, + 0xc9, 0x1b, 0x00, 0xab, 0x8f, 0x22, 0x1a, 0xb4, 0xdd, 0xa6, 0xd2, 0x83, 0xa1, 0xea, 0x87, 0x0a, + 0xa8, 0x39, 0xd0, 0x1a, 0x32, 0x59, 0x81, 0xc9, 0x72, 0x18, 0x76, 0x5b, 0xd4, 0xf6, 0x9b, 0xb4, + 0x6c, 0x6f, 0xe0, 0xbe, 0x3f, 0xb6, 0x7c, 0xea, 0xf1, 0xc1, 0xe2, 0x49, 0x17, 0x0b, 0x9c, 0xc0, + 0x6f, 0x52, 0xc7, 0x0d, 0xf4, 0xd9, 0x6d, 0xd2, 0x90, 0xdb, 0x00, 0xb7, 0x3b, 0xb4, 0x5d, 0xa3, + 0x6e, 0x50, 0xdf, 0x4b, 0x6c, 0xf3, 0x71, 0xc1, 0xf2, 0x73, 0xe2, 0x0b, 0xe7, 0xfc, 0x0e, 0x6d, + 0x87, 0x08, 0xd3, 0x5b, 0x15, 0x63, 0x92, 0x7b, 0x30, 0x5d, 0x2d, 0xdf, 0xda, 0xf4, 0x9b, 0x5e, + 0x7d, 0x5f, 0x48, 0x4e, 0x53, 0xa8, 0x1d, 0x3c, 0x2e, 0xb8, 0x26, 0x4a, 0xf9, 0xf6, 0xe4, 0xb9, + 0x2d, 0xa7, 0x83, 0x50, 0x47, 0xc8, 0x4f, 0x49, 0x2e, 0xe4, 0x7d, 0x36, 0x07, 0x43, 0x26, 0x0c, + 0x6e, 0xb9, 0xbb, 0xe1, 0xfc, 0xb4, 0xa1, 0xed, 0x2a, 0xdf, 0xab, 0x5d, 0xd4, 0x4a, 0xb9, 0x98, + 0xb2, 0xc0, 0x27, 0x22, 0x42, 0x9d, 0xc8, 0xdd, 0x0d, 0xcd, 0x89, 0xa8, 0xb0, 0xc9, 0x0d, 0x80, + 0x8a, 0x5f, 0xef, 0xb6, 0x68, 0x3b, 0xaa, 0x2c, 0xcf, 0x97, 0xcc, 0xab, 0x80, 0x2a, 0x88, 0xb7, + 0xb6, 0x86, 0x5f, 0x37, 0x66, 0xa2, 0x46, 0xbd, 0xf0, 0x0e, 0x94, 0x92, 0x0d, 0x39, 0xa2, 0x02, + 0x6b, 0xb2, 0x34, 0xa5, 0x7d, 0xfd, 0xea, 0x23, 0x2f, 0x8c, 0x42, 0xeb, 0x7b, 0x8d, 0x15, 0xc8, + 0x76, 0x87, 0x9b, 0x74, 0x7f, 0x33, 0xa0, 0x3b, 0xde, 0x23, 0xb1, 0x99, 0xe1, 0xee, 0x70, 0x9f, + 0xee, 0x3b, 0x1d, 0x84, 0xea, 0xbb, 0x83, 0x42, 0x25, 0x9f, 0x87, 0xe2, 0xcd, 0x5b, 0xb5, 0x9b, + 0x74, 0xbf, 0x5a, 0x11, 0x07, 0x15, 0x27, 0x6b, 0x85, 0x0e, 0x23, 0x35, 0xe6, 0x9a, 0xc2, 0xb4, + 0x96, 0xe3, 0x9d, 0x90, 0xd5, 0xbc, 0xd2, 0xec, 0x86, 0x11, 0x0d, 0xaa, 0x15, 0xbd, 0xe6, 0x3a, + 0x07, 0x26, 0xf6, 0x25, 0x85, 0x6a, 0xfd, 0x93, 0x3c, 0xee, 0x82, 0x6c, 0xc2, 0x57, 0xdb, 0x61, + 0xe4, 0xb6, 0xeb, 0x54, 0x31, 0xc0, 0x09, 0xef, 0x09, 0x68, 0x62, 0xc2, 0xc7, 0xc8, 0x66, 0xd5, + 0xf9, 0x81, 0xab, 0x66, 0x55, 0x4a, 0xcd, 0x45, 0xb5, 0xa2, 0xab, 0x57, 0x03, 0x01, 0x4d, 0x54, + 0x19, 0x23, 0x93, 0x73, 0x30, 0x5a, 0x2d, 0xdf, 0x2a, 0x77, 0xa3, 0x3d, 0xdc, 0x83, 0x8b, 0x5c, + 0x3e, 0x67, 0xb3, 0xd5, 0xed, 0x46, 0x7b, 0xb6, 0x2c, 0x24, 0x97, 0xf0, 0xde, 0xd3, 0xa6, 0x11, + 0x57, 0xc3, 0x8a, 0x43, 0x37, 0xe4, 0xa0, 0xc4, 0xb5, 0x87, 0x81, 0xc8, 0xcb, 0x30, 0x7c, 0x77, + 0x73, 0xa5, 0x5a, 0x11, 0x17, 0x67, 0x3c, 0x89, 0x1e, 0x74, 0xea, 0x66, 0x4b, 0x38, 0x8a, 0xf5, + 0x5b, 0xb9, 0x78, 0x7f, 0x23, 0xe7, 0x0c, 0x79, 0x04, 0x95, 0x2e, 0x4c, 0x1e, 0xd1, 0x95, 0x2e, + 0x28, 0x99, 0xd8, 0x40, 0x56, 0xba, 0x61, 0xe4, 0xb7, 0x56, 0xdb, 0x8d, 0x8e, 0xef, 0xb5, 0x23, + 0xa4, 0xe2, 0xbd, 0x66, 0x3d, 0x3e, 0x58, 0x3c, 0x5d, 0xc7, 0x52, 0x87, 0x8a, 0x62, 0x27, 0xc1, + 0x25, 0x83, 0xfa, 0x13, 0x74, 0xa4, 0xf5, 0x7b, 0x79, 0xe3, 0x5c, 0x62, 0xcd, 0xb3, 0x69, 0xa7, + 0xe9, 0xd5, 0xf1, 0x2a, 0x7e, 0x3d, 0xf0, 0xbb, 0x1d, 0x35, 0x1d, 0xb0, 0x79, 0x41, 0x5c, 0xea, + 0xec, 0xb2, 0x62, 0x93, 0x77, 0x06, 0x35, 0x79, 0x0f, 0x26, 0x98, 0x88, 0x20, 0x7e, 0x86, 0xf3, + 0x79, 0x1c, 0x89, 0xe7, 0x50, 0x7d, 0x16, 0xd2, 0x40, 0xb1, 0x31, 0x64, 0x0b, 0x9d, 0x82, 0x34, + 0x60, 0x7e, 0x2b, 0x70, 0xdb, 0xa1, 0x17, 0xad, 0xb6, 0xeb, 0xc1, 0x3e, 0x8a, 0x34, 0xab, 0x6d, + 0x77, 0xbb, 0x49, 0x1b, 0xf8, 0xb9, 0xc5, 0xe5, 0xf3, 0x8f, 0x0f, 0x16, 0x5f, 0x88, 0x38, 0x8e, + 0x43, 0x15, 0x92, 0x43, 0x39, 0x96, 0xc6, 0xb9, 0x27, 0x27, 0x26, 0x02, 0xc9, 0x6e, 0xc5, 0xd7, + 0x13, 0x7e, 0xba, 0xa3, 0x08, 0xa4, 0x46, 0x83, 0x6d, 0x3e, 0x7a, 0x33, 0x75, 0x02, 0xeb, 0xcf, + 0x73, 0xf1, 0xc9, 0x49, 0xde, 0x82, 0x71, 0x31, 0xd5, 0xb5, 0x79, 0x81, 0x5b, 0x9f, 0x5c, 0x17, + 0x89, 0x91, 0xd5, 0xd1, 0xd9, 0x85, 0xbd, 0xbc, 0xb2, 0xae, 0xcd, 0x0d, 0xbc, 0xb0, 0xbb, 0xf5, + 0x66, 0x92, 0x4a, 0xa2, 0xb1, 0x49, 0xb0, 0xb5, 0x5e, 0x33, 0x7b, 0x05, 0x27, 0x41, 0xd4, 0x0c, + 0x33, 0xba, 0x41, 0x43, 0xfe, 0xe4, 0x1f, 0xfe, 0x3f, 0xe6, 0xb2, 0x0e, 0x68, 0xb2, 0x0c, 0x93, + 0xf7, 0xfc, 0xe0, 0x3e, 0x8e, 0xaf, 0xd6, 0x09, 0x38, 0xf2, 0x0f, 0x65, 0x41, 0xf2, 0x83, 0x4c, + 0x12, 0xbd, 0x6d, 0x5a, 0x6f, 0x98, 0x6d, 0x4b, 0x70, 0x30, 0x08, 0xd8, 0x38, 0x28, 0x8e, 0x6a, + 0x75, 0xe0, 0x38, 0xc4, 0x4d, 0x30, 0xa6, 0xb0, 0x8e, 0x6e, 0xfd, 0x67, 0x39, 0xfd, 0x20, 0x66, + 0x9d, 0x5c, 0xf1, 0x5b, 0xae, 0xd7, 0xd6, 0x3e, 0x87, 0xbf, 0x08, 0x21, 0x34, 0xd9, 0x12, 0x0d, + 0x99, 0x5c, 0x81, 0x22, 0xff, 0xa5, 0x36, 0x49, 0x54, 0x47, 0x09, 0x42, 0x73, 0x87, 0x97, 0x88, + 0xa9, 0x91, 0x29, 0x1c, 0x75, 0x64, 0x7e, 0x33, 0xa7, 0x9f, 0xa1, 0x1f, 0xf7, 0x94, 0x48, 0x9c, + 0x0e, 0xf9, 0xa3, 0x9c, 0x0e, 0x9f, 0xf8, 0x13, 0xbe, 0x2f, 0x07, 0xe3, 0x9a, 0x7a, 0x81, 0x7d, + 0xc3, 0x66, 0xe0, 0x7f, 0x48, 0xeb, 0x91, 0xf9, 0x0d, 0x1d, 0x0e, 0x4c, 0x7c, 0x83, 0x42, 0xfd, + 0x04, 0xdf, 0x60, 0xfd, 0x59, 0x4e, 0x5c, 0x6e, 0x06, 0xde, 0xe6, 0xcd, 0x2d, 0x39, 0x7f, 0x94, + 0xb3, 0xed, 0x3d, 0x18, 0xb6, 0x69, 0xc3, 0x0b, 0xc5, 0xc5, 0x64, 0x46, 0xbf, 0x48, 0x61, 0x41, + 0x2c, 0xf0, 0x04, 0xec, 0xa7, 0x7e, 0x30, 0x61, 0x39, 0x93, 0x40, 0xab, 0xe1, 0xb5, 0x26, 0x7d, + 0xe4, 0xf1, 0xc5, 0x28, 0xce, 0x48, 0x94, 0x40, 0xbd, 0xd0, 0xd9, 0x61, 0x25, 0x42, 0x14, 0xd6, + 0x17, 0x9e, 0x41, 0x63, 0xbd, 0x0f, 0x10, 0x57, 0x49, 0x6e, 0x42, 0x49, 0xcc, 0x06, 0xaf, 0xbd, + 0xcb, 0x25, 0x20, 0xd1, 0x07, 0x8b, 0x8f, 0x0f, 0x16, 0x9f, 0xad, 0xab, 0x32, 0x21, 0x2e, 0x6a, + 0x7c, 0x53, 0x84, 0xd6, 0xbf, 0x97, 0x87, 0x7c, 0x19, 0x07, 0xe4, 0x26, 0xdd, 0x8f, 0xdc, 0xed, + 0x6b, 0x5e, 0xd3, 0x58, 0x4c, 0xf7, 0x11, 0xea, 0xec, 0x78, 0x86, 0x9e, 0x41, 0x43, 0x66, 0x8b, + 0xe9, 0x66, 0xb0, 0xfd, 0x3a, 0x12, 0x6a, 0x8b, 0xe9, 0x7e, 0xb0, 0xfd, 0x7a, 0x92, 0x4c, 0x21, + 0x12, 0x0b, 0x46, 0xf8, 0xc2, 0x12, 0x73, 0x10, 0x1e, 0x1f, 0x2c, 0x8e, 0xf0, 0xf5, 0x67, 0x8b, + 0x12, 0x72, 0x12, 0x0a, 0xb5, 0xcd, 0x0d, 0xb1, 0x03, 0xa2, 0x3e, 0x2f, 0xec, 0xb4, 0x6d, 0x06, + 0x63, 0x75, 0xae, 0x57, 0xca, 0x9b, 0x78, 0x83, 0x1f, 0x8e, 0xeb, 0x6c, 0x36, 0xdc, 0x4e, 0xf2, + 0x0e, 0xaf, 0x10, 0xc9, 0xdb, 0x30, 0x7e, 0xb3, 0xb2, 0xb2, 0xe6, 0x87, 0x7c, 0xf7, 0x1a, 0x89, + 0x27, 0xff, 0xfd, 0x46, 0xdd, 0x41, 0x15, 0x7a, 0xf2, 0x18, 0xd0, 0xf0, 0xad, 0x1f, 0xce, 0xc3, + 0xb8, 0xa6, 0xe0, 0x22, 0x9f, 0x17, 0x2f, 0x9b, 0x39, 0x43, 0x74, 0xd7, 0x30, 0x58, 0x29, 0xd7, + 0x86, 0xb4, 0xfc, 0x06, 0x15, 0xef, 0x9c, 0xb1, 0xe6, 0x21, 0x3f, 0x88, 0xe6, 0xe1, 0x0d, 0x00, + 0x3e, 0x07, 0xb0, 0xc9, 0x9a, 0x38, 0xa1, 0x19, 0x38, 0xe8, 0xe3, 0x12, 0x23, 0x93, 0xbb, 0x30, + 0xbb, 0x15, 0x74, 0xc3, 0xa8, 0xb6, 0x1f, 0x46, 0xb4, 0xc5, 0xb8, 0x6d, 0xfa, 0x7e, 0x53, 0xcc, + 0xbf, 0x17, 0x1e, 0x1f, 0x2c, 0x9e, 0x89, 0x58, 0xb1, 0x13, 0x62, 0x39, 0x36, 0xc0, 0xe9, 0xf8, + 0xbe, 0xae, 0x8f, 0xc8, 0x62, 0x60, 0xd9, 0x30, 0xa1, 0x6b, 0x33, 0xd8, 0xc9, 0x22, 0x5e, 0x81, + 0x84, 0x8e, 0x5a, 0x3b, 0x59, 0x44, 0x2b, 0xd3, 0xaf, 0x52, 0x26, 0x89, 0xf5, 0x79, 0x5d, 0x93, + 0x36, 0xe8, 0xc2, 0xb6, 0x7e, 0x20, 0x17, 0x6f, 0x23, 0x77, 0x2f, 0x93, 0x37, 0x61, 0x84, 0xbf, + 0xba, 0x89, 0xc7, 0xc9, 0x63, 0xea, 0x36, 0xaa, 0x3f, 0xc9, 0x71, 0x15, 0xf6, 0xef, 0xf3, 0x97, + 0xf9, 0x67, 0x6c, 0x41, 0xa2, 0xb4, 0xdf, 0xa6, 0x22, 0x4c, 0x72, 0x47, 0x3d, 0xef, 0xe5, 0x2c, + 0xed, 0xb7, 0xf5, 0xdb, 0x43, 0x30, 0x65, 0xa2, 0xe9, 0x4f, 0x73, 0xb9, 0x81, 0x9e, 0xe6, 0xde, + 0x83, 0x22, 0xeb, 0x0f, 0xaf, 0x4e, 0xa5, 0x44, 0xf6, 0x02, 0xbe, 0x09, 0x08, 0x98, 0xf1, 0xe4, + 0x0c, 0x7c, 0x38, 0xd8, 0xe5, 0xd4, 0x56, 0x54, 0x64, 0x49, 0x7b, 0x3f, 0x2a, 0xc4, 0x42, 0x8a, + 0x7c, 0x3f, 0xd2, 0xd7, 0x83, 0x7a, 0x49, 0x7a, 0x0d, 0x46, 0x98, 0x60, 0xae, 0x74, 0x27, 0xd8, + 0x4a, 0x26, 0xb3, 0x27, 0x6c, 0x4b, 0x38, 0x12, 0xb9, 0x07, 0xc5, 0x75, 0x37, 0x8c, 0x6a, 0x94, + 0xb6, 0x07, 0x78, 0x74, 0x5f, 0x14, 0x5d, 0x35, 0x8b, 0x2f, 0xda, 0x21, 0xa5, 0xed, 0xc4, 0xab, + 0xa9, 0x62, 0x46, 0xbe, 0x06, 0xb0, 0xe2, 0xb7, 0xa3, 0xc0, 0x6f, 0xae, 0xfb, 0xbb, 0xf3, 0x23, + 0x78, 0x69, 0x3d, 0x9d, 0x18, 0x80, 0x18, 0x81, 0xdf, 0x5b, 0x95, 0x66, 0xa6, 0xce, 0x0b, 0x9c, + 0xa6, 0xbf, 0xab, 0xaf, 0x83, 0x18, 0x9f, 0x5c, 0x83, 0x92, 0xd4, 0x08, 0xdc, 0xe9, 0xec, 0x06, + 0x38, 0x41, 0x46, 0x63, 0xc9, 0x83, 0x3e, 0x8a, 0x9c, 0xae, 0x80, 0xeb, 0x3b, 0x65, 0x92, 0x86, + 0x7c, 0x15, 0x4e, 0x24, 0x61, 0x72, 0x94, 0x8b, 0xb1, 0x4c, 0xae, 0xb3, 0xcb, 0x98, 0xf7, 0xbd, + 0x58, 0x58, 0x1f, 0xe5, 0xe1, 0x44, 0x8f, 0x8f, 0x65, 0xeb, 0x01, 0x8f, 0x6b, 0x6d, 0x3d, 0x24, + 0x4e, 0x69, 0x6e, 0x2c, 0x74, 0x06, 0xf2, 0xe2, 0x80, 0x1b, 0x5a, 0x2e, 0x3d, 0x3e, 0x58, 0x9c, + 0x30, 0xc6, 0x31, 0x5f, 0xad, 0x90, 0x1b, 0x30, 0xc4, 0x86, 0x68, 0x80, 0x37, 0x6f, 0xa9, 0x0c, + 0x9a, 0x8a, 0x3c, 0x7d, 0xfa, 0xe0, 0xd0, 0x21, 0x0f, 0xf2, 0x79, 0x28, 0x6c, 0x6d, 0xad, 0xe3, + 0xdc, 0x29, 0xe0, 0xb7, 0x4f, 0x46, 0x51, 0xd3, 0x98, 0xaa, 0x93, 0x8c, 0xf6, 0xa2, 0x32, 0x91, + 0x60, 0xe8, 0xe4, 0x2b, 0x09, 0x5b, 0x9c, 0x97, 0xfb, 0x0f, 0xf4, 0xe0, 0xa6, 0x39, 0x9f, 0xc0, + 0x22, 0xc6, 0xfa, 0xb9, 0x7c, 0xbc, 0x86, 0xaf, 0x79, 0xcd, 0x88, 0x06, 0x64, 0x81, 0x2f, 0xc9, + 0x58, 0x38, 0xb3, 0xd5, 0x6f, 0x32, 0x1f, 0xaf, 0x6f, 0xce, 0x4a, 0x2d, 0xe4, 0x97, 0xb5, 0x85, + 0x5c, 0xc0, 0x85, 0x3c, 0xd5, 0x73, 0xc9, 0xbe, 0x9c, 0x31, 0x2f, 0x71, 0x21, 0x66, 0xcc, 0xbd, + 0x17, 0x60, 0x72, 0xc3, 0x5f, 0x7d, 0x14, 0x29, 0x44, 0xb6, 0x00, 0x8b, 0xb6, 0x09, 0x64, 0x1c, + 0x6f, 0x37, 0x1b, 0x34, 0xd8, 0xda, 0x73, 0xdb, 0xc6, 0xa3, 0xb3, 0x9d, 0x82, 0x33, 0xdc, 0x0d, + 0xfa, 0xd0, 0xc4, 0x1d, 0xe5, 0xb8, 0x49, 0xb8, 0xf5, 0xfd, 0x79, 0xd9, 0x19, 0x77, 0x97, 0x9e, + 0xd2, 0xc7, 0xcd, 0xd7, 0x8d, 0xc7, 0xcd, 0x59, 0xa5, 0x96, 0x55, 0x2f, 0xf5, 0x4b, 0x87, 0x3c, + 0xf0, 0xff, 0xfd, 0x11, 0x98, 0xd0, 0xd1, 0x59, 0x3f, 0x94, 0x1b, 0x8d, 0x40, 0xef, 0x07, 0xb7, + 0xd1, 0x08, 0x6c, 0x84, 0x1a, 0xef, 0xf9, 0x85, 0xbe, 0xef, 0xf9, 0x5f, 0x87, 0xb1, 0x95, 0x56, + 0xc3, 0x78, 0x65, 0xb4, 0x32, 0x9a, 0x77, 0x51, 0x21, 0xf1, 0xb5, 0xa0, 0xb4, 0x8d, 0xf5, 0x56, + 0x23, 0xfd, 0xb6, 0x18, 0xb3, 0x34, 0x4c, 0x01, 0x86, 0x3f, 0x89, 0x29, 0xc0, 0x55, 0x18, 0xbb, + 0x13, 0xd2, 0xad, 0x6e, 0xbb, 0x4d, 0x9b, 0x38, 0xad, 0x8a, 0x5c, 0xd6, 0xef, 0x86, 0xd4, 0x89, + 0x10, 0xaa, 0x37, 0x40, 0xa1, 0xea, 0x03, 0x3c, 0xda, 0x67, 0x80, 0xaf, 0x40, 0x71, 0x93, 0xd2, + 0x00, 0xfb, 0x74, 0x3c, 0x16, 0xe9, 0x3a, 0x94, 0x06, 0x0e, 0xeb, 0x58, 0xc3, 0x44, 0x40, 0x20, + 0x1a, 0x76, 0x05, 0x13, 0x03, 0xda, 0x15, 0x90, 0xe7, 0x61, 0xa2, 0xd3, 0xdd, 0x6e, 0x7a, 0x75, + 0xe4, 0x2b, 0x0c, 0x12, 0xec, 0x71, 0x0e, 0x63, 0x6c, 0x43, 0xf2, 0x15, 0x98, 0xc4, 0x3b, 0x8e, + 0x9a, 0x72, 0x53, 0xc6, 0x73, 0x9c, 0x51, 0xc6, 0x25, 0x9d, 0x3a, 0x03, 0x39, 0x19, 0x76, 0x33, + 0x26, 0x23, 0x72, 0x03, 0x46, 0x77, 0xbd, 0xc8, 0xd9, 0xeb, 0x6e, 0xcf, 0x4f, 0x1b, 0x46, 0x27, + 0xd7, 0xbd, 0x68, 0xad, 0xbb, 0xcd, 0x87, 0x5c, 0xb1, 0xc6, 0x1d, 0x6f, 0xd7, 0x8b, 0xf6, 0xba, + 0xba, 0x2e, 0x75, 0x64, 0x17, 0x71, 0x17, 0x6a, 0x30, 0x65, 0xce, 0x8a, 0x27, 0xf0, 0xc2, 0xa7, + 0xec, 0x2d, 0x8a, 0xa5, 0xb1, 0x1b, 0x43, 0x45, 0x28, 0x8d, 0x73, 0x4b, 0x0b, 0x1b, 0x36, 0x55, + 0xff, 0xd8, 0xe4, 0x66, 0x77, 0x9b, 0x06, 0x6d, 0x1a, 0xd1, 0x50, 0x5c, 0x28, 0x42, 0x7b, 0xa8, + 0xdc, 0xe9, 0x84, 0xd6, 0xaf, 0xe5, 0x61, 0xb4, 0x7c, 0xaf, 0x56, 0x6d, 0xef, 0xf8, 0xf8, 0x4e, + 0xa7, 0x9e, 0x67, 0xf4, 0x77, 0x3a, 0xf5, 0x3c, 0xa3, 0x3f, 0xca, 0x5c, 0xca, 0xb8, 0x12, 0xa2, + 0x29, 0xaf, 0x76, 0x25, 0x34, 0x2e, 0xb3, 0xf1, 0x4b, 0x55, 0x61, 0x80, 0x97, 0x2a, 0xa5, 0x4c, + 0x1c, 0x3a, 0x54, 0x99, 0x48, 0xde, 0x84, 0xf1, 0x6a, 0x3b, 0xa2, 0xbb, 0x41, 0xbc, 0x6a, 0xd4, + 0xf5, 0x54, 0x81, 0xf5, 0x6b, 0x82, 0x86, 0xcd, 0xa6, 0x24, 0x57, 0x60, 0x2a, 0xc5, 0x25, 0x4e, + 0x49, 0xae, 0xe7, 0x4c, 0xe8, 0x16, 0x24, 0xa2, 0x55, 0x49, 0xcc, 0x37, 0x69, 0x0d, 0xc0, 0x05, + 0xd9, 0xa9, 0x58, 0x83, 0xcf, 0x3a, 0x76, 0x79, 0x26, 0xdb, 0x1a, 0xc0, 0xfa, 0xa9, 0x1c, 0xcc, + 0x65, 0x4d, 0x23, 0xf2, 0x0e, 0x4c, 0xf8, 0xc1, 0xae, 0xdb, 0xf6, 0xbe, 0xc5, 0xbf, 0x48, 0x53, + 0x80, 0xe9, 0x70, 0xfd, 0xda, 0xaf, 0xc3, 0x59, 0x87, 0x68, 0x5f, 0x6e, 0xde, 0xd7, 0x33, 0x3b, + 0x44, 0x03, 0x5b, 0xdf, 0xce, 0xc3, 0x78, 0xb9, 0xd3, 0x79, 0xca, 0x2d, 0xc5, 0xbe, 0x68, 0x1c, + 0x20, 0xf2, 0xb6, 0xa7, 0xbe, 0x6b, 0x20, 0x23, 0xb1, 0x5f, 0xce, 0xc3, 0x74, 0x82, 0x42, 0x6f, + 0x7d, 0x6e, 0x40, 0xfb, 0xb0, 0xfc, 0x80, 0xf6, 0x61, 0x85, 0xc1, 0xec, 0xc3, 0x86, 0x3e, 0xc9, + 0xa1, 0xf0, 0x12, 0x14, 0xca, 0x9d, 0x4e, 0xf2, 0x9d, 0xb9, 0xd3, 0xb9, 0x7b, 0x85, 0xdf, 0xd8, + 0xdd, 0x4e, 0xc7, 0x66, 0x18, 0xc6, 0x4e, 0x3d, 0x32, 0xe0, 0x4e, 0x6d, 0xbd, 0x06, 0x63, 0xc8, + 0x0b, 0xad, 0xb2, 0xce, 0x00, 0x6e, 0x31, 0xc2, 0x20, 0xcb, 0xa8, 0x4b, 0x6c, 0x3e, 0xff, 0x6f, + 0x0e, 0x86, 0xf1, 0xf7, 0x53, 0x3a, 0xc7, 0x96, 0x8c, 0x39, 0x56, 0xd2, 0xe6, 0xd8, 0x20, 0xb3, + 0xeb, 0xff, 0x1c, 0xc2, 0xde, 0x12, 0xf3, 0x4a, 0x18, 0x43, 0xe5, 0x32, 0x8c, 0xa1, 0xde, 0x00, + 0x6d, 0x2f, 0xd7, 0x17, 0xb3, 0x76, 0x2a, 0xea, 0x77, 0xa9, 0x18, 0x99, 0xdc, 0x4f, 0x9a, 0x45, + 0x15, 0x70, 0x30, 0xce, 0x26, 0x9b, 0xfa, 0x44, 0x2c, 0xa2, 0xd6, 0x80, 0x54, 0xdb, 0x21, 0xad, + 0x77, 0x03, 0x5a, 0xbb, 0xef, 0x75, 0xee, 0xd2, 0xc0, 0xdb, 0xd9, 0x17, 0xfa, 0x0b, 0x94, 0x3c, + 0x3c, 0x51, 0xea, 0x84, 0xf7, 0xbd, 0x0e, 0xbb, 0x6c, 0x79, 0x3b, 0xfb, 0x76, 0x06, 0x0d, 0x79, + 0x17, 0x46, 0x6d, 0xfa, 0x30, 0xf0, 0x22, 0xf9, 0xd8, 0x3f, 0xa5, 0x54, 0x03, 0x08, 0xe5, 0x57, + 0xdf, 0x80, 0xff, 0xd0, 0xc7, 0x5f, 0x94, 0x93, 0x25, 0xbe, 0x1d, 0xf3, 0x47, 0xfd, 0xc9, 0xf8, + 0x6b, 0xcb, 0xf7, 0x6a, 0xbd, 0x76, 0x63, 0x72, 0x01, 0x86, 0x71, 0x4f, 0x17, 0x52, 0x0f, 0x1a, + 0xc9, 0xa3, 0x94, 0xa0, 0x1f, 0x38, 0x88, 0x41, 0x4e, 0x03, 0xa8, 0x37, 0x96, 0x70, 0xbe, 0x88, + 0xf2, 0x88, 0x06, 0x49, 0x1e, 0x48, 0x63, 0x47, 0x39, 0x90, 0x3e, 0x3d, 0x5b, 0xa0, 0x5f, 0xce, + 0xc3, 0x59, 0xb5, 0x9d, 0xdd, 0x0e, 0x6a, 0xe5, 0x5b, 0xeb, 0xd5, 0xc6, 0xa6, 0xb8, 0xdf, 0x6c, + 0x06, 0xfe, 0x03, 0x8f, 0xdd, 0x6f, 0x2f, 0x1f, 0xb2, 0x18, 0xd7, 0xf9, 0xac, 0xe5, 0xca, 0xd1, + 0xbc, 0x61, 0x35, 0xa1, 0x9d, 0x1a, 0xc2, 0xb0, 0xa3, 0xd3, 0x49, 0xe9, 0x4a, 0xd7, 0x9e, 0xb1, + 0x63, 0x06, 0xe4, 0x07, 0x72, 0x70, 0x3c, 0xbb, 0x21, 0xe2, 0xce, 0xbb, 0x28, 0x65, 0xeb, 0x1e, + 0xad, 0x5d, 0x7e, 0xe9, 0xf1, 0xc1, 0xe2, 0xd9, 0xd0, 0x6d, 0x35, 0x1d, 0xaf, 0xc1, 0x6b, 0xf3, + 0xea, 0xd4, 0xe9, 0x08, 0x04, 0xa3, 0xde, 0x1e, 0x35, 0x7d, 0x09, 0xe4, 0x9a, 0x9c, 0xcf, 0x2d, + 0x03, 0x14, 0xa5, 0xfe, 0xc9, 0xfa, 0xc7, 0x39, 0xd0, 0x66, 0x54, 0xd1, 0xa6, 0x0d, 0x2f, 0xa0, + 0xf5, 0x08, 0x77, 0x34, 0xe5, 0xf3, 0xc1, 0x61, 0x09, 0x23, 0x19, 0x84, 0x91, 0x77, 0x60, 0x94, + 0x6b, 0xab, 0xb8, 0x96, 0x28, 0x9e, 0x89, 0x42, 0xb3, 0xc5, 0x9d, 0x83, 0x38, 0x86, 0x3e, 0x8b, + 0x05, 0x11, 0x93, 0xe0, 0x6f, 0xdc, 0xdb, 0x5a, 0x69, 0xba, 0x5e, 0x2b, 0x14, 0xfb, 0x18, 0x76, + 0xeb, 0x87, 0x0f, 0x23, 0xa7, 0x8e, 0x50, 0x5d, 0x82, 0x57, 0xa8, 0xd6, 0x75, 0xa9, 0x58, 0x3b, + 0xc4, 0xd2, 0x6b, 0x11, 0x86, 0xef, 0xc6, 0x17, 0xec, 0xe5, 0xb1, 0xc7, 0x07, 0x8b, 0x7c, 0xba, + 0xd8, 0x1c, 0x6e, 0xfd, 0xad, 0x1c, 0x4c, 0x99, 0xf3, 0x89, 0x5c, 0x84, 0x11, 0xe1, 0x6f, 0x91, + 0x43, 0x45, 0x02, 0xeb, 0x85, 0x11, 0xee, 0x69, 0x61, 0xf8, 0x57, 0x08, 0x2c, 0xb6, 0x13, 0x0b, + 0x0e, 0x42, 0x53, 0x86, 0x3b, 0x71, 0x9d, 0x83, 0x6c, 0x59, 0x46, 0x2c, 0x26, 0x1c, 0x86, 0xdd, + 0x66, 0xa4, 0xeb, 0x97, 0x03, 0x84, 0xd8, 0xa2, 0xc4, 0x5a, 0x81, 0x11, 0xbe, 0x84, 0x13, 0x16, + 0x26, 0xb9, 0x23, 0x58, 0x98, 0x58, 0x07, 0x39, 0x80, 0x5a, 0x6d, 0xed, 0x26, 0xdd, 0xdf, 0x74, + 0xbd, 0x00, 0x1f, 0x44, 0x70, 0xbb, 0xbc, 0x29, 0x16, 0xd7, 0x84, 0x78, 0x10, 0xe1, 0x5b, 0xeb, + 0x7d, 0xba, 0x6f, 0x3c, 0x88, 0x48, 0x54, 0xdc, 0x93, 0x03, 0xef, 0x81, 0x1b, 0x51, 0x46, 0x98, + 0x47, 0x42, 0xbe, 0x27, 0x73, 0x68, 0x82, 0x52, 0x43, 0x26, 0x5f, 0x83, 0xa9, 0xf8, 0x97, 0x7a, + 0xd6, 0x99, 0x52, 0x0b, 0xd8, 0x2c, 0x5c, 0x3e, 0xfd, 0xf8, 0x60, 0x71, 0x41, 0xe3, 0x9a, 0x7c, + 0xf0, 0x49, 0x30, 0xb3, 0x7e, 0x31, 0x87, 0x8f, 0x99, 0xf2, 0x03, 0xcf, 0xc1, 0x90, 0xb2, 0x9b, + 0x9b, 0xe0, 0xba, 0xa8, 0x84, 0xea, 0x1a, 0xcb, 0xc9, 0x59, 0x28, 0xc4, 0x5f, 0x82, 0x5b, 0xa4, + 0xf9, 0x05, 0xac, 0x94, 0x5c, 0x87, 0xd1, 0x81, 0xda, 0x8c, 0x4b, 0x23, 0xa3, 0xad, 0x92, 0x1a, + 0x47, 0xe1, 0xc6, 0xbd, 0xad, 0xcf, 0xee, 0x28, 0xfc, 0x78, 0x1e, 0xa6, 0x59, 0xbf, 0x96, 0xbb, + 0xd1, 0x9e, 0x1f, 0x78, 0xd1, 0xfe, 0x53, 0xab, 0x89, 0x79, 0xcb, 0x10, 0x72, 0x16, 0xe4, 0x29, + 0xa3, 0x7f, 0xdb, 0x40, 0x0a, 0x99, 0xff, 0x6a, 0x18, 0x66, 0x33, 0xa8, 0xc8, 0xab, 0x86, 0xb2, + 0x74, 0x5e, 0xfa, 0x53, 0x7e, 0x74, 0xb0, 0x38, 0x21, 0xd1, 0xb7, 0x62, 0xff, 0xca, 0x25, 0xd3, + 0x32, 0x80, 0xf7, 0x14, 0xea, 0x4e, 0x75, 0xcb, 0x00, 0xd3, 0x1e, 0xe0, 0x02, 0x0c, 0xdb, 0x7e, + 0x93, 0x4a, 0x33, 0x16, 0x3c, 0xd8, 0x03, 0x06, 0x30, 0x5e, 0xff, 0x18, 0x80, 0xac, 0xc1, 0x28, + 0xfb, 0xe3, 0x96, 0xdb, 0x11, 0x7a, 0x6d, 0xa2, 0xc4, 0x6c, 0x84, 0x76, 0xbc, 0xf6, 0xae, 0x2e, + 0x69, 0x37, 0xa9, 0xd3, 0x72, 0x3b, 0x86, 0x04, 0xc2, 0x11, 0x0d, 0x89, 0xbd, 0xd8, 0x5b, 0x62, + 0xcf, 0x1d, 0x2a, 0xb1, 0xef, 0x00, 0xd4, 0xbc, 0xdd, 0xb6, 0xd7, 0xde, 0x2d, 0x37, 0x77, 0x85, + 0x57, 0xea, 0x85, 0xde, 0xa3, 0x70, 0x31, 0x46, 0xc6, 0x89, 0xfb, 0x2c, 0x3e, 0x3e, 0x71, 0x98, + 0xe3, 0x36, 0x77, 0x0d, 0xeb, 0x79, 0x8d, 0x33, 0xd9, 0x00, 0x28, 0xd7, 0x23, 0xef, 0x01, 0x9b, + 0xc2, 0xa1, 0xb0, 0xb7, 0x96, 0x4d, 0x5e, 0x29, 0xdf, 0xa4, 0xfb, 0x35, 0x1a, 0xc5, 0x6a, 0x7c, + 0x17, 0x51, 0xd9, 0x4a, 0x30, 0x4c, 0xa3, 0x63, 0x0e, 0xa4, 0x03, 0xc7, 0xca, 0x8d, 0x86, 0xc7, + 0xbe, 0xc1, 0x6d, 0xe2, 0xbb, 0x14, 0x6d, 0x20, 0xeb, 0x89, 0x6c, 0xd6, 0x17, 0x04, 0xeb, 0xe7, + 0x5d, 0x45, 0xe5, 0x44, 0x9c, 0x2c, 0x59, 0x4d, 0x36, 0x63, 0xab, 0x06, 0x53, 0xe6, 0xc7, 0x9b, + 0xde, 0xb4, 0x13, 0x50, 0xb4, 0x6b, 0x65, 0xa7, 0xb6, 0x56, 0xbe, 0x5c, 0xca, 0x91, 0x12, 0x4c, + 0x88, 0x5f, 0x4b, 0xce, 0xd2, 0xeb, 0x57, 0x4b, 0x79, 0x03, 0xf2, 0xfa, 0xe5, 0xa5, 0x52, 0x61, + 0x21, 0x3f, 0x9f, 0x4b, 0x38, 0xb2, 0x8c, 0x96, 0x8a, 0x5c, 0xc9, 0x62, 0xfd, 0x4a, 0x0e, 0x8a, + 0xb2, 0xed, 0xe4, 0x2a, 0x14, 0x6a, 0xb5, 0xb5, 0x84, 0xeb, 0x49, 0x7c, 0xca, 0xf0, 0xfd, 0x34, + 0x0c, 0x75, 0xfb, 0x42, 0x46, 0xc0, 0xe8, 0xb6, 0xd6, 0x6b, 0x42, 0x38, 0x90, 0x74, 0xf1, 0xe6, + 0xcd, 0xe9, 0x32, 0xec, 0xf1, 0xaf, 0x42, 0xe1, 0xc6, 0xbd, 0x2d, 0x21, 0xcc, 0x4b, 0xba, 0x78, + 0x3f, 0xe5, 0x74, 0x1f, 0x3e, 0xd4, 0x77, 0x79, 0x46, 0x60, 0xd9, 0x30, 0xae, 0x4d, 0x64, 0x7e, + 0xe8, 0xb6, 0x7c, 0xe5, 0x42, 0x2a, 0x0e, 0x5d, 0x06, 0xb1, 0x45, 0x09, 0x93, 0x11, 0xd6, 0xfd, + 0xba, 0xdb, 0x14, 0xa7, 0x37, 0xca, 0x08, 0x4d, 0x06, 0xb0, 0x39, 0xdc, 0xfa, 0xad, 0x1c, 0x94, + 0x50, 0x92, 0x42, 0xfb, 0x40, 0xff, 0x3e, 0x6d, 0xdf, 0xbd, 0x4c, 0x5e, 0x93, 0x4b, 0x2e, 0xa7, + 0xae, 0x8e, 0xc3, 0xb8, 0xe4, 0x12, 0xda, 0x75, 0xb1, 0xec, 0x34, 0x2f, 0xdd, 0xfc, 0xe0, 0xde, + 0x7d, 0x87, 0x78, 0xe9, 0x2e, 0xc2, 0x30, 0x36, 0x47, 0x6c, 0x8e, 0xd8, 0xf2, 0x88, 0x01, 0x6c, + 0x0e, 0xd7, 0xf6, 0xa6, 0x9f, 0xcc, 0xa7, 0xbe, 0x61, 0xe9, 0x33, 0xe5, 0x21, 0x67, 0x7e, 0xdc, + 0x40, 0xfb, 0xf5, 0xfb, 0x30, 0x97, 0xec, 0x12, 0xbc, 0xd6, 0x97, 0x61, 0xda, 0x84, 0xcb, 0x1b, + 0xfe, 0x89, 0xcc, 0xba, 0xee, 0x2e, 0xd9, 0x49, 0x7c, 0xeb, 0x7f, 0xcd, 0xc1, 0x18, 0xfe, 0x69, + 0x77, 0x9b, 0x68, 0xee, 0x51, 0xbe, 0x57, 0x13, 0x8a, 0x45, 0x5d, 0x98, 0x73, 0x1f, 0x86, 0x8e, + 0xd0, 0x3d, 0x1a, 0x7b, 0x8c, 0x42, 0x16, 0xa4, 0x5c, 0x63, 0x28, 0x5f, 0x62, 0x15, 0x29, 0x57, + 0x2d, 0x86, 0x09, 0x52, 0x81, 0x8c, 0x46, 0x62, 0xf7, 0x6a, 0x6c, 0xfa, 0xe9, 0xef, 0xaf, 0x48, + 0xe7, 0x37, 0x4d, 0x23, 0x31, 0x8e, 0x86, 0xcf, 0xaf, 0xf7, 0x6a, 0x65, 0x7b, 0xc3, 0x78, 0x7e, + 0x65, 0x6d, 0x34, 0x8c, 0x91, 0x05, 0x92, 0xf5, 0x5f, 0x8f, 0x25, 0x3b, 0x50, 0x1c, 0x78, 0x47, + 0x5c, 0x1b, 0x6f, 0xc2, 0x70, 0xb9, 0xd9, 0xf4, 0x1f, 0x8a, 0x5d, 0x42, 0x6a, 0x19, 0x54, 0xff, + 0xf1, 0xf3, 0xcc, 0x65, 0x28, 0x86, 0xd7, 0x0f, 0x03, 0x90, 0x15, 0x18, 0x2b, 0xdf, 0xab, 0x55, + 0xab, 0x95, 0xad, 0x2d, 0xee, 0xe1, 0x50, 0x58, 0x7e, 0x51, 0xf6, 0x8f, 0xe7, 0x35, 0x9c, 0xe4, + 0x0b, 0x60, 0x2c, 0xbf, 0xc7, 0x74, 0xe4, 0x6d, 0x80, 0x1b, 0xbe, 0xd7, 0xbe, 0x45, 0xa3, 0x3d, + 0xbf, 0x21, 0x3e, 0xfe, 0xd4, 0xe3, 0x83, 0xc5, 0xf1, 0x0f, 0x7d, 0xaf, 0xed, 0xb4, 0x10, 0xcc, + 0xda, 0x1e, 0x23, 0xd9, 0xda, 0xdf, 0xac, 0xa7, 0x97, 0x7d, 0x6e, 0xc2, 0x31, 0x1c, 0xf7, 0xf4, + 0xb6, 0x9f, 0xb2, 0xde, 0x90, 0x68, 0xa4, 0x05, 0xd3, 0xb5, 0xee, 0xee, 0x2e, 0x65, 0x3b, 0xbb, + 0xd0, 0x5b, 0x8c, 0x88, 0x3b, 0xae, 0x8a, 0x2b, 0xc1, 0xef, 0x23, 0xec, 0x96, 0x12, 0x2e, 0xbf, + 0xca, 0x26, 0xf2, 0x77, 0x0f, 0x16, 0xc5, 0xcb, 0x22, 0x13, 0xd5, 0x42, 0x49, 0x9f, 0xd6, 0x5a, + 0x24, 0x79, 0x93, 0xdb, 0x30, 0xc2, 0xb5, 0xb0, 0xc2, 0x62, 0xff, 0xf9, 0x3e, 0x8b, 0x86, 0x23, + 0xf6, 0xd2, 0xf3, 0xf3, 0x52, 0x72, 0x0f, 0x8a, 0x2b, 0x5e, 0x50, 0x6f, 0xd2, 0x95, 0xaa, 0x38, + 0xfb, 0xcf, 0xf6, 0x61, 0x29, 0x51, 0x79, 0xbf, 0xd4, 0xf1, 0x57, 0xdd, 0xd3, 0x65, 0x01, 0x89, + 0x41, 0x7e, 0x2a, 0x07, 0xcf, 0xaa, 0xd6, 0x97, 0x77, 0x69, 0x3b, 0xba, 0xe5, 0x46, 0xf5, 0x3d, + 0x1a, 0x88, 0x5e, 0x1a, 0xeb, 0xd7, 0x4b, 0x5f, 0x4a, 0xf5, 0xd2, 0xf9, 0xb8, 0x97, 0x5c, 0xc6, + 0xcc, 0x69, 0x71, 0x6e, 0xe9, 0x3e, 0xeb, 0x57, 0x2b, 0x71, 0x00, 0xe2, 0xf7, 0x05, 0xe1, 0xf1, + 0xf5, 0x62, 0x9f, 0x0f, 0x8e, 0x91, 0x85, 0xa5, 0xb6, 0xfa, 0x6d, 0x58, 0x2c, 0x29, 0x28, 0xb9, + 0x29, 0xdd, 0x63, 0xb8, 0x54, 0x72, 0xa6, 0x0f, 0x6f, 0xee, 0x32, 0x33, 0xdb, 0xc7, 0x11, 0x8e, + 0x8f, 0xf6, 0xba, 0xbb, 0x2d, 0x04, 0x91, 0x43, 0x46, 0x7b, 0xdd, 0x8d, 0x47, 0xbb, 0xe9, 0x26, + 0x47, 0x7b, 0xdd, 0xdd, 0x26, 0x2b, 0xdc, 0xa7, 0x8f, 0x3b, 0x80, 0x9d, 0xee, 0xc7, 0x6d, 0x65, + 0x93, 0x9f, 0xcc, 0x19, 0xbe, 0x7d, 0x1f, 0xc0, 0x58, 0xad, 0xe3, 0xd6, 0x69, 0xd3, 0xdb, 0x89, + 0xc4, 0xe3, 0xd5, 0x0b, 0x7d, 0x58, 0x29, 0x5c, 0xf1, 0x58, 0x21, 0x7f, 0xea, 0xd7, 0x24, 0x85, + 0xc3, 0x5a, 0xb8, 0xb5, 0x79, 0x4b, 0xbc, 0x5f, 0xf5, 0x6b, 0xe1, 0xd6, 0xe6, 0x2d, 0x21, 0x73, + 0x74, 0x5a, 0x86, 0xcc, 0xb1, 0x79, 0xcb, 0xfa, 0xf5, 0x02, 0x9c, 0xe8, 0x41, 0x43, 0x36, 0xe4, + 0x1e, 0x95, 0x33, 0xd4, 0x8b, 0x3d, 0xd0, 0x2f, 0x1e, 0xba, 0x6d, 0xad, 0x43, 0x69, 0xf5, 0x26, + 0x0a, 0xb7, 0xec, 0x27, 0x6d, 0xac, 0x94, 0xe5, 0xee, 0x7e, 0xe6, 0xf1, 0xc1, 0xe2, 0x73, 0xf4, + 0x3e, 0x1a, 0x3f, 0xb9, 0xbc, 0xd0, 0xa9, 0x1b, 0xee, 0x79, 0x29, 0xca, 0x85, 0xef, 0xcf, 0xc3, + 0x10, 0x9e, 0x34, 0x89, 0xa0, 0x24, 0xb9, 0x23, 0x05, 0x25, 0x79, 0x0f, 0x26, 0x56, 0x6f, 0xf2, + 0xab, 0xe7, 0x9a, 0x1b, 0xee, 0x89, 0x7d, 0x10, 0xdf, 0x12, 0xe9, 0x7d, 0x47, 0xdc, 0x54, 0xf7, + 0x5c, 0x43, 0xc8, 0x33, 0x28, 0xc8, 0x1d, 0x98, 0xe5, 0x6d, 0xf3, 0x76, 0xbc, 0x3a, 0x8f, 0x6d, + 0xe0, 0xb9, 0x4d, 0xb1, 0x29, 0x9e, 0x7d, 0x7c, 0xb0, 0xb8, 0x48, 0xef, 0xa3, 0x59, 0x97, 0x28, + 0x77, 0x42, 0x44, 0xd0, 0xed, 0xbb, 0x32, 0xe8, 0x75, 0x87, 0x6b, 0x7b, 0x0c, 0x2b, 0x64, 0xb5, + 0xb1, 0xba, 0x19, 0x2e, 0x47, 0xb2, 0xfe, 0xf1, 0x30, 0x2c, 0xf4, 0xde, 0xcf, 0xc8, 0x97, 0xcd, + 0x01, 0x3c, 0x77, 0xe8, 0x0e, 0x78, 0xf8, 0x18, 0x7e, 0x05, 0xe6, 0x56, 0xdb, 0x11, 0x0d, 0x3a, + 0x81, 0x27, 0x5d, 0xec, 0xd7, 0xfc, 0x50, 0x9a, 0xd1, 0xa1, 0x3d, 0x1b, 0x55, 0xe5, 0x42, 0x4b, + 0x88, 0x46, 0x7d, 0x1a, 0xab, 0x4c, 0x0e, 0x64, 0x15, 0xa6, 0x34, 0x78, 0xb3, 0xbb, 0x2b, 0x4e, + 0x70, 0xb4, 0xd1, 0xd4, 0x79, 0x36, 0xbb, 0xba, 0x8d, 0x51, 0x82, 0x68, 0xe1, 0x17, 0x0b, 0x62, + 0x5a, 0x9c, 0x85, 0x42, 0xad, 0xbb, 0x2d, 0xa6, 0x03, 0x17, 0xd5, 0x8d, 0x6d, 0x9d, 0x95, 0x92, + 0x2f, 0x02, 0xd8, 0xb4, 0xe3, 0x87, 0x5e, 0xe4, 0x07, 0xfb, 0xba, 0xa7, 0x46, 0xa0, 0xa0, 0xa6, + 0x4d, 0xaa, 0x84, 0x92, 0x35, 0x98, 0x8e, 0x7f, 0xdd, 0x7e, 0xd8, 0x16, 0xaa, 0xcd, 0x31, 0xae, + 0x53, 0x88, 0xc9, 0x1d, 0x9f, 0x95, 0xe9, 0x07, 0x55, 0x82, 0x8c, 0x2c, 0x41, 0xf1, 0x9e, 0x1f, + 0xdc, 0xdf, 0x61, 0x03, 0x35, 0x14, 0x1f, 0xa5, 0x0f, 0x05, 0x4c, 0x3f, 0x32, 0x24, 0x1e, 0x9b, + 0xf3, 0xab, 0xed, 0x07, 0x5e, 0xe0, 0xb7, 0x5b, 0xb4, 0x1d, 0xe9, 0x6f, 0xa3, 0x34, 0x06, 0x1b, + 0x3e, 0x72, 0x31, 0x98, 0xdd, 0x9c, 0xcb, 0xf5, 0xc8, 0x0f, 0xc4, 0xc3, 0x28, 0x1f, 0x6e, 0x06, + 0x30, 0x86, 0x9b, 0x01, 0x58, 0x27, 0xda, 0x74, 0x47, 0xe8, 0xce, 0xb1, 0x13, 0x03, 0xba, 0x63, + 0x38, 0x00, 0xd2, 0x1d, 0x26, 0x0a, 0xd8, 0x74, 0x07, 0xaf, 0xfb, 0x46, 0xdc, 0x9c, 0x9d, 0x94, + 0xa2, 0x48, 0xa0, 0x59, 0xbf, 0x3b, 0xd6, 0x73, 0xde, 0xb2, 0xbd, 0xf7, 0x68, 0xf3, 0x76, 0xdd, + 0x1d, 0x60, 0xde, 0xbe, 0xaa, 0x2c, 0x5d, 0x75, 0xaf, 0x57, 0x84, 0xe8, 0x9b, 0x3f, 0xc7, 0x59, + 0xf8, 0xa5, 0xe2, 0x51, 0x26, 0x91, 0xe8, 0xa4, 0xfc, 0xa0, 0x9d, 0x54, 0x18, 0xa8, 0x93, 0xc8, + 0x32, 0x4c, 0xaa, 0xc8, 0x4b, 0x9b, 0x6e, 0x64, 0xec, 0x4d, 0x2a, 0x5c, 0x96, 0xd3, 0x71, 0x23, + 0x7d, 0x6f, 0x32, 0x49, 0xc8, 0x5b, 0x30, 0x2e, 0xcc, 0xbd, 0x91, 0xc3, 0x70, 0xfc, 0xe2, 0x2c, + 0x6d, 0xc3, 0x13, 0xf4, 0x3a, 0x3a, 0x5b, 0x92, 0x9b, 0x5e, 0x87, 0x36, 0xbd, 0x36, 0xad, 0xa1, + 0xee, 0x5c, 0xcc, 0x18, 0x5c, 0x92, 0x1d, 0x51, 0xe2, 0x70, 0xb5, 0xba, 0xa1, 0x35, 0x33, 0x88, + 0x92, 0x93, 0x75, 0xf4, 0x48, 0x93, 0x95, 0xdb, 0xbb, 0x04, 0xeb, 0xfe, 0xae, 0x27, 0x2d, 0xfc, + 0xa4, 0xbd, 0x4b, 0xe0, 0x34, 0x19, 0x34, 0x61, 0xef, 0xc2, 0x51, 0x99, 0x5c, 0xcf, 0x7e, 0x54, + 0x2b, 0xe2, 0x9d, 0x06, 0xe5, 0x7a, 0x24, 0x32, 0xcd, 0x2a, 0x39, 0x92, 0xac, 0x66, 0xb5, 0xe5, + 0x7a, 0x4d, 0xe1, 0xdc, 0x18, 0x57, 0x43, 0x19, 0x34, 0x59, 0x0d, 0xa2, 0x92, 0x3a, 0x4c, 0xd8, + 0x74, 0x67, 0x33, 0xf0, 0x23, 0x5a, 0x8f, 0x68, 0x43, 0xc8, 0x32, 0x52, 0x9c, 0x5f, 0xf6, 0x7d, + 0x2e, 0xa7, 0x2d, 0xbf, 0xf6, 0xbb, 0x07, 0x8b, 0xb9, 0xef, 0x1e, 0x2c, 0x02, 0x03, 0x71, 0x9b, + 0xdd, 0xc7, 0x07, 0x8b, 0x27, 0xd8, 0xf8, 0x77, 0x24, 0xb1, 0x7e, 0xc4, 0xe8, 0x4c, 0xc9, 0xf7, + 0xb2, 0x4d, 0x57, 0x75, 0x49, 0x5c, 0xd9, 0x44, 0x8f, 0xca, 0x5e, 0xcf, 0xac, 0x6c, 0x51, 0xeb, + 0xed, 0xcc, 0x4a, 0x33, 0x2b, 0x21, 0x6f, 0xc3, 0xf8, 0x4a, 0x75, 0xc5, 0x6f, 0xef, 0x78, 0xbb, + 0xb5, 0xb5, 0x32, 0x0a, 0x44, 0xc2, 0x5e, 0xbb, 0xee, 0x39, 0x75, 0x84, 0x3b, 0xe1, 0x9e, 0x6b, + 0xb8, 0xed, 0xc4, 0xf8, 0xe4, 0x3a, 0x4c, 0xc9, 0x9f, 0x36, 0xdd, 0xb9, 0x63, 0x57, 0x51, 0x0e, + 0x92, 0x46, 0xf2, 0x8a, 0x03, 0xeb, 0x88, 0x6e, 0xa0, 0xcb, 0xc7, 0x09, 0x32, 0x36, 0x19, 0x2b, + 0xb4, 0xd3, 0xf4, 0xf7, 0x59, 0xf3, 0xb6, 0x3c, 0x1a, 0xa0, 0xe4, 0x23, 0x26, 0x63, 0x43, 0x95, + 0x38, 0x91, 0x67, 0x6c, 0xb7, 0x09, 0x22, 0xb2, 0x01, 0x33, 0x62, 0x8a, 0xdf, 0xf5, 0x42, 0x6f, + 0xdb, 0x6b, 0x7a, 0xd1, 0x3e, 0x3a, 0x52, 0x0a, 0x29, 0x44, 0xae, 0x8b, 0x07, 0xaa, 0x54, 0x63, + 0x96, 0x26, 0xb5, 0x7e, 0x25, 0x0f, 0xcf, 0xf5, 0x93, 0xff, 0x49, 0xcd, 0xdc, 0xcc, 0xce, 0x0f, + 0x70, 0x67, 0x38, 0x7c, 0x3b, 0x5b, 0x85, 0xa9, 0xdb, 0x9a, 0x69, 0x88, 0x32, 0xd5, 0xc1, 0xce, + 0xd0, 0x8d, 0x46, 0xcc, 0xd9, 0x9e, 0x20, 0x5a, 0x78, 0x20, 0xb6, 0xb9, 0x8f, 0xeb, 0x40, 0x72, + 0x15, 0xc6, 0x56, 0xfc, 0x76, 0x44, 0x1f, 0x45, 0x09, 0x3f, 0x47, 0x0e, 0x4c, 0x3a, 0xcf, 0x48, + 0x54, 0xeb, 0xff, 0xcb, 0xc3, 0xa9, 0xbe, 0x02, 0x30, 0xd9, 0x32, 0x7b, 0xed, 0xc2, 0x20, 0x52, + 0xf3, 0xe1, 0xdd, 0xb6, 0x94, 0xb2, 0xdf, 0x38, 0xd4, 0x3e, 0x7b, 0xe1, 0xbf, 0xcd, 0x89, 0x4e, + 0xfa, 0x1c, 0x8c, 0x62, 0x55, 0xaa, 0x8b, 0xb8, 0x6e, 0x08, 0x77, 0x61, 0xcf, 0xd4, 0x0d, 0x71, + 0x34, 0x72, 0x05, 0x8a, 0x2b, 0x6e, 0xb3, 0xa9, 0x79, 0x81, 0xa2, 0x5c, 0x5f, 0x47, 0x58, 0xc2, + 0x08, 0x49, 0x22, 0x92, 0x37, 0x00, 0xf8, 0xdf, 0xda, 0x59, 0x81, 0x9b, 0xa5, 0x20, 0x4b, 0x1c, + 0x17, 0x1a, 0x32, 0xc6, 0x8e, 0xab, 0xfb, 0xca, 0x5d, 0x8d, 0xc7, 0x8e, 0x63, 0x00, 0x23, 0x76, + 0x1c, 0x03, 0x58, 0xbf, 0x5a, 0x80, 0xd3, 0xfd, 0x6f, 0x71, 0xe4, 0x8e, 0x39, 0x04, 0x2f, 0x0f, + 0x74, 0xf7, 0x3b, 0x7c, 0x0c, 0x64, 0x24, 0x46, 0xde, 0x21, 0xe7, 0xd3, 0x66, 0xd4, 0x1f, 0x1d, + 0x2c, 0x6a, 0x96, 0x6d, 0x37, 0x7c, 0xaf, 0xad, 0xbd, 0x14, 0x7c, 0x13, 0xa0, 0x16, 0xb9, 0x91, + 0x57, 0xbf, 0x71, 0xef, 0xa6, 0x0c, 0x54, 0x70, 0x75, 0xb0, 0x96, 0xc5, 0x74, 0x7c, 0x5f, 0x11, + 0x1e, 0x1c, 0x08, 0x75, 0x3e, 0x7c, 0x78, 0xdf, 0xb8, 0xa7, 0xc6, 0xc8, 0x0b, 0x5f, 0x82, 0x52, + 0x92, 0x94, 0x9c, 0x83, 0x21, 0x6c, 0x80, 0x66, 0x0b, 0x9e, 0xe0, 0x80, 0xe5, 0x0b, 0xb7, 0xc4, + 0xdc, 0x59, 0x85, 0x29, 0xf1, 0x3c, 0x6d, 0x6a, 0xc4, 0x70, 0xbd, 0xca, 0xd7, 0xed, 0xb4, 0x56, + 0x2c, 0x41, 0x64, 0xfd, 0x45, 0x0e, 0x4e, 0xf6, 0xbc, 0x1f, 0x93, 0x4d, 0x73, 0xc0, 0x5e, 0x3c, + 0xec, 0x42, 0x7d, 0xe8, 0x58, 0x2d, 0xfc, 0xa8, 0x9c, 0xfb, 0xef, 0xc0, 0x44, 0xad, 0xbb, 0x9d, + 0xbc, 0x64, 0x71, 0xb7, 0x75, 0x0d, 0xae, 0x9f, 0x60, 0x3a, 0x3e, 0xfb, 0x7e, 0xf9, 0xfe, 0x2e, + 0xcc, 0x2b, 0xf8, 0xc5, 0x0f, 0xbf, 0x5f, 0x39, 0x80, 0xa1, 0x8b, 0xa1, 0xde, 0x89, 0x09, 0x22, + 0xeb, 0x97, 0xf3, 0xd9, 0xb7, 0x55, 0x76, 0xd7, 0x3e, 0xc2, 0x6d, 0xf5, 0xfa, 0xca, 0xe6, 0xe1, + 0xdf, 0xfe, 0x5f, 0xc8, 0x6f, 0xc7, 0xe7, 0x48, 0xb1, 0xe3, 0x49, 0xf5, 0x9e, 0x78, 0x8e, 0x94, + 0xbb, 0x63, 0x68, 0x3e, 0x47, 0x4a, 0x64, 0xf2, 0x3a, 0x8c, 0xad, 0xfb, 0xdc, 0xf5, 0x57, 0x7e, + 0x31, 0xf7, 0x90, 0x92, 0x40, 0x7d, 0x7b, 0x54, 0x98, 0xec, 0x6e, 0x61, 0x0e, 0xbc, 0x34, 0x63, + 0xc7, 0xbb, 0x45, 0x62, 0xba, 0x98, 0x4a, 0x30, 0x93, 0xcc, 0xfa, 0xd1, 0x3c, 0x4c, 0xf1, 0xc9, + 0xcb, 0x95, 0xb4, 0x4f, 0xad, 0x02, 0xfc, 0x4d, 0x43, 0x01, 0x2e, 0x23, 0x5c, 0xe8, 0x9f, 0x36, + 0x90, 0xfa, 0x7b, 0x0f, 0x48, 0x9a, 0x86, 0xd8, 0x30, 0xa1, 0x43, 0xfb, 0x6b, 0xbe, 0x2f, 0xc7, + 0xc1, 0x50, 0xc4, 0xde, 0x81, 0xcf, 0x0f, 0xa1, 0x6d, 0xf0, 0xb0, 0xfe, 0x56, 0x1e, 0x26, 0xb5, + 0xe7, 0xca, 0xa7, 0xb6, 0xe3, 0xbf, 0x64, 0x74, 0xfc, 0xbc, 0x32, 0xbd, 0x56, 0x5f, 0x36, 0x50, + 0xbf, 0x77, 0x61, 0x26, 0x45, 0x92, 0x7c, 0xf5, 0xcd, 0x0d, 0xf2, 0xea, 0xfb, 0x6a, 0x3a, 0xb2, + 0x02, 0x0f, 0x50, 0xaa, 0xdc, 0x75, 0xf5, 0x50, 0x0e, 0x3f, 0x9e, 0x87, 0x39, 0xf1, 0x0b, 0x43, + 0x11, 0xf1, 0xdd, 0xfb, 0xa9, 0x1d, 0x8b, 0xb2, 0x31, 0x16, 0x8b, 0xe6, 0x58, 0x68, 0x1f, 0xd8, + 0x7b, 0x48, 0xac, 0x1f, 0x02, 0x98, 0xef, 0x45, 0x30, 0xb0, 0x87, 0x53, 0x6c, 0xf3, 0x9d, 0x1f, + 0xc0, 0xe6, 0x7b, 0x1d, 0x4a, 0x58, 0x95, 0x08, 0x36, 0x12, 0xb2, 0x3b, 0x40, 0x21, 0x16, 0xb8, + 0x79, 0xbc, 0x28, 0x11, 0xfc, 0x24, 0x4c, 0x5c, 0x02, 0x52, 0x94, 0xe4, 0x17, 0x73, 0x30, 0x85, + 0xc0, 0xd5, 0x07, 0xb4, 0x1d, 0x21, 0xb3, 0x21, 0x61, 0x0c, 0xac, 0xf4, 0xe3, 0xb5, 0x28, 0xf0, + 0xda, 0xbb, 0x42, 0x41, 0xbe, 0x2d, 0x14, 0xe4, 0x6f, 0x71, 0xc5, 0xfe, 0xc5, 0xba, 0xdf, 0xba, + 0xb4, 0x1b, 0xb8, 0x0f, 0x3c, 0xfe, 0x12, 0xef, 0x36, 0x2f, 0xc5, 0xf1, 0xb1, 0x3b, 0x5e, 0x22, + 0xe2, 0xb5, 0x60, 0x85, 0x8f, 0x0f, 0xbc, 0xa1, 0x14, 0xab, 0x4d, 0xde, 0x55, 0xcc, 0x16, 0x91, + 0xef, 0x81, 0x13, 0x3c, 0x92, 0x00, 0x13, 0x79, 0xbd, 0x76, 0xd7, 0xef, 0x86, 0xcb, 0x6e, 0xfd, + 0x3e, 0x3b, 0xf7, 0xb8, 0xcb, 0x06, 0x7e, 0x79, 0x5d, 0x15, 0x3a, 0xdb, 0xbc, 0xd4, 0x70, 0x51, + 0xcb, 0x66, 0x40, 0xd6, 0x60, 0x86, 0x17, 0x95, 0xbb, 0x91, 0x5f, 0xab, 0xbb, 0x4d, 0xaf, 0xbd, + 0x8b, 0x77, 0xea, 0x22, 0x3f, 0x8f, 0xdd, 0x6e, 0xe4, 0x3b, 0x21, 0x87, 0xeb, 0x57, 0x97, 0x14, + 0x11, 0xa9, 0xc2, 0xb4, 0x4d, 0xdd, 0xc6, 0x2d, 0xf7, 0xd1, 0x8a, 0xdb, 0x71, 0xeb, 0xec, 0x22, + 0x54, 0xc4, 0xc7, 0x24, 0xbc, 0x9b, 0x05, 0xd4, 0x6d, 0x38, 0x2d, 0xf7, 0x91, 0x53, 0x17, 0x85, + 0xa6, 0x0e, 0xcb, 0xa0, 0x53, 0xac, 0xbc, 0xb6, 0x62, 0x35, 0x96, 0x64, 0xe5, 0xb5, 0x7b, 0xb3, + 0x8a, 0xe9, 0x24, 0xab, 0x2d, 0x37, 0xd8, 0xa5, 0x11, 0x37, 0x64, 0x63, 0xf7, 0xf1, 0x9c, 0xc6, + 0x2a, 0xc2, 0x32, 0x07, 0x8d, 0xda, 0x92, 0xac, 0x34, 0x3a, 0x36, 0xf3, 0xee, 0x05, 0x5e, 0x44, + 0xf5, 0x2f, 0x1c, 0xc7, 0x66, 0x61, 0xff, 0xa3, 0x09, 0x60, 0xaf, 0x4f, 0x4c, 0x51, 0xc6, 0xdc, + 0xb4, 0x8f, 0x9c, 0x48, 0x71, 0xcb, 0xfe, 0xca, 0x14, 0xa5, 0xe2, 0xa6, 0x7f, 0xe7, 0x24, 0x7e, + 0xa7, 0xc6, 0xad, 0xc7, 0x87, 0xa6, 0x28, 0xc9, 0x06, 0xeb, 0xb4, 0x88, 0xb6, 0xd9, 0x8c, 0x16, + 0x86, 0x7c, 0x53, 0xd8, 0xb4, 0x17, 0x84, 0x35, 0x4a, 0x29, 0x90, 0xc5, 0x4e, 0x86, 0x59, 0x5f, + 0x92, 0x98, 0xfc, 0x35, 0x98, 0xbe, 0x13, 0xd2, 0x6b, 0xd5, 0xcd, 0x9a, 0x0c, 0x3c, 0x80, 0xb7, + 0xed, 0xa9, 0xa5, 0xcb, 0x87, 0x6c, 0x3a, 0x17, 0x75, 0x1a, 0x0c, 0x53, 0xcd, 0xc7, 0xad, 0x1b, + 0x52, 0x67, 0xc7, 0xeb, 0x84, 0x2a, 0x8a, 0x8b, 0x3e, 0x6e, 0x89, 0xaa, 0xac, 0x35, 0x98, 0x49, + 0xb1, 0x21, 0x53, 0x00, 0x0c, 0xe8, 0xdc, 0xd9, 0xa8, 0xad, 0x6e, 0x95, 0x9e, 0x21, 0x25, 0x98, + 0xc0, 0xdf, 0xab, 0x1b, 0xe5, 0xe5, 0xf5, 0xd5, 0x4a, 0x29, 0x47, 0x66, 0x60, 0x12, 0x21, 0x95, + 0x6a, 0x8d, 0x83, 0xf2, 0x3c, 0x48, 0xa9, 0x5d, 0xe2, 0x4b, 0x37, 0x62, 0x0b, 0x00, 0xcf, 0x14, + 0xeb, 0xef, 0xe4, 0xe1, 0xa4, 0x3c, 0x56, 0x68, 0xf4, 0xd0, 0x0f, 0xee, 0x7b, 0xed, 0xdd, 0xa7, + 0xfc, 0x74, 0xb8, 0x66, 0x9c, 0x0e, 0x2f, 0x24, 0x4e, 0xea, 0xc4, 0x57, 0xf6, 0x39, 0x22, 0x7e, + 0x73, 0x0c, 0x4e, 0xf5, 0xa5, 0x22, 0x5f, 0x66, 0xa7, 0xb9, 0x47, 0xdb, 0x51, 0xb5, 0xd1, 0xa4, + 0x5b, 0x5e, 0x8b, 0xfa, 0xdd, 0x48, 0x18, 0x8e, 0x9e, 0xc5, 0x0b, 0x2e, 0x16, 0x3a, 0x5e, 0xa3, + 0x49, 0x9d, 0x88, 0x17, 0x1b, 0xd3, 0x2d, 0x4d, 0xcd, 0x58, 0xaa, 0x90, 0xf9, 0xd5, 0x76, 0x44, + 0x83, 0x07, 0x68, 0x9c, 0xa2, 0x58, 0xde, 0xa7, 0xb4, 0xe3, 0xb8, 0xac, 0xd4, 0xf1, 0x44, 0xb1, + 0xc9, 0x32, 0x45, 0x4d, 0xae, 0x69, 0x2c, 0x57, 0x98, 0x38, 0x7c, 0xcb, 0x7d, 0x24, 0x5e, 0xcb, + 0x45, 0x04, 0x2a, 0xc5, 0x92, 0x7b, 0x42, 0xb5, 0xdc, 0x47, 0x76, 0x9a, 0x84, 0x7c, 0x0d, 0x8e, + 0x89, 0x03, 0x48, 0x78, 0xc5, 0xca, 0x2f, 0xe6, 0x3e, 0xb7, 0x2f, 0x3d, 0x3e, 0x58, 0x3c, 0x21, + 0x63, 0x77, 0x49, 0x3f, 0xe8, 0xac, 0xaf, 0xce, 0xe6, 0x42, 0xb6, 0xd8, 0x81, 0x9c, 0xe8, 0x8e, + 0x5b, 0x34, 0x0c, 0xdd, 0x5d, 0xf9, 0xb2, 0xce, 0xad, 0xec, 0xb5, 0xce, 0x74, 0x5a, 0xbc, 0xdc, + 0xee, 0x49, 0x49, 0xd6, 0x60, 0xea, 0x1e, 0xdd, 0xd6, 0xc7, 0x67, 0x44, 0x6d, 0x55, 0xa5, 0x87, + 0x74, 0xbb, 0xf7, 0xe0, 0x24, 0xe8, 0x88, 0x87, 0x0a, 0xb3, 0x47, 0xfb, 0xeb, 0x5e, 0x18, 0xd1, + 0x36, 0x0d, 0x30, 0xda, 0xc2, 0x28, 0x6e, 0x06, 0xf3, 0xb1, 0x84, 0x6c, 0x96, 0x2f, 0x3f, 0xff, + 0xf8, 0x60, 0xf1, 0x14, 0xf7, 0x2a, 0x69, 0x0a, 0xb8, 0x93, 0x08, 0x38, 0x9f, 0xe6, 0x4a, 0xbe, + 0x01, 0xd3, 0xb6, 0xdf, 0x8d, 0xbc, 0xf6, 0x6e, 0x2d, 0x0a, 0xdc, 0x88, 0xee, 0xf2, 0x03, 0x29, + 0x0e, 0xeb, 0x90, 0x28, 0x15, 0x6f, 0x2d, 0x1c, 0xe8, 0x84, 0x02, 0x6a, 0x9c, 0x08, 0x26, 0x01, + 0xf9, 0x3a, 0x4c, 0x71, 0x7f, 0x48, 0x55, 0xc1, 0x98, 0x11, 0x2c, 0xd7, 0x2c, 0xbc, 0x7b, 0x99, + 0x5f, 0x50, 0xb9, 0x5f, 0x65, 0x56, 0x05, 0x09, 0x6e, 0xe4, 0x03, 0xd1, 0x59, 0x9b, 0x5e, 0x7b, + 0x57, 0x4d, 0x63, 0xc0, 0x9e, 0x7f, 0x2d, 0xee, 0x92, 0x0e, 0x6b, 0xae, 0x9c, 0xc6, 0x3d, 0x2c, + 0x35, 0xd2, 0x7c, 0x48, 0x04, 0xa7, 0xca, 0x61, 0xe8, 0x85, 0x91, 0x30, 0xaf, 0x5e, 0x7d, 0x44, + 0xeb, 0x5d, 0x86, 0x7c, 0xcf, 0x0f, 0xee, 0xd3, 0x80, 0x9b, 0xf7, 0x0d, 0x2f, 0x5f, 0x7c, 0x7c, + 0xb0, 0xf8, 0xb2, 0x8b, 0x88, 0x8e, 0xb0, 0xc8, 0x76, 0xa8, 0x44, 0x75, 0x1e, 0x72, 0x5c, 0xed, + 0x1b, 0xfa, 0x33, 0x25, 0x5f, 0x87, 0xe3, 0x2b, 0x6e, 0x48, 0xab, 0xed, 0x90, 0xb6, 0x43, 0x2f, + 0xf2, 0x1e, 0x50, 0xd1, 0xa9, 0x78, 0xf8, 0x15, 0x31, 0x34, 0xbf, 0x55, 0x77, 0x43, 0xb6, 0x30, + 0x15, 0x8a, 0x23, 0x06, 0x45, 0xab, 0xa6, 0x07, 0x17, 0x62, 0xc3, 0x54, 0xad, 0xb6, 0x56, 0xf1, + 0x5c, 0xb5, 0xae, 0x26, 0xb1, 0xbf, 0x5e, 0xc6, 0xbb, 0x6e, 0xb8, 0xe7, 0x34, 0x3c, 0x57, 0x2d, + 0xa8, 0x1e, 0x9d, 0x95, 0xe0, 0x60, 0x1d, 0xe4, 0xa0, 0x94, 0x1c, 0x4a, 0xf2, 0x15, 0x18, 0xe3, + 0x66, 0x0e, 0x34, 0xdc, 0x13, 0x2e, 0x7d, 0xf2, 0xd5, 0x5c, 0xc1, 0x4d, 0x22, 0xe1, 0xee, 0xc0, + 0x8d, 0x28, 0xa8, 0xfe, 0x06, 0x8c, 0xee, 0x0e, 0x92, 0x88, 0x34, 0x60, 0x82, 0x8f, 0x16, 0xc5, + 0x98, 0x2e, 0xc2, 0xda, 0xed, 0x79, 0x7d, 0x75, 0x88, 0xa2, 0x04, 0x7f, 0x54, 0xa3, 0x8b, 0x39, + 0xc1, 0x11, 0x8c, 0x2a, 0x0c, 0xae, 0xcb, 0x00, 0x45, 0x49, 0x68, 0x9d, 0x84, 0x13, 0x3d, 0xda, + 0x6c, 0x3d, 0xc0, 0xa7, 0xb5, 0x1e, 0x35, 0x92, 0xaf, 0xc0, 0x1c, 0x12, 0xae, 0xf8, 0xed, 0x36, + 0xad, 0x47, 0xb8, 0x1d, 0x49, 0x75, 0x54, 0x81, 0xbf, 0xdf, 0xf2, 0xef, 0xad, 0x2b, 0x04, 0x27, + 0xa9, 0x95, 0xca, 0xe4, 0x60, 0xfd, 0x6c, 0x1e, 0xe6, 0xc5, 0x0e, 0x67, 0xd3, 0xba, 0x1f, 0x34, + 0x9e, 0xfe, 0x13, 0x75, 0xd5, 0x38, 0x51, 0xcf, 0x2a, 0x7f, 0xf0, 0xac, 0x8f, 0xec, 0x73, 0xa0, + 0xfe, 0x72, 0x0e, 0x9e, 0xeb, 0x47, 0xc4, 0x7a, 0x47, 0xc5, 0xb0, 0x19, 0x4b, 0xc5, 0xaa, 0xe9, + 0xc0, 0x2c, 0x0e, 0xe8, 0xca, 0x1e, 0xad, 0xdf, 0x0f, 0xd7, 0xfc, 0x30, 0x42, 0x83, 0xdb, 0x7c, + 0x8f, 0xc7, 0x9f, 0x57, 0x33, 0x1f, 0x7f, 0x8e, 0xf3, 0x59, 0x56, 0x47, 0x1e, 0x3c, 0xca, 0xce, + 0x7d, 0xba, 0x1f, 0xda, 0x59, 0xac, 0xd1, 0x70, 0xb2, 0xdc, 0x8d, 0xf6, 0x36, 0x03, 0xba, 0x43, + 0x03, 0xda, 0xae, 0xd3, 0xcf, 0x98, 0xe1, 0xa4, 0xf9, 0x71, 0x03, 0x69, 0x30, 0xfe, 0xad, 0x49, + 0x98, 0xcb, 0x22, 0x63, 0xfd, 0xa2, 0x5d, 0x9a, 0x93, 0x99, 0x83, 0x7e, 0x30, 0x07, 0x13, 0x35, + 0x5a, 0xf7, 0xdb, 0x8d, 0x6b, 0xf8, 0xc4, 0x2e, 0x7a, 0xc7, 0xe1, 0x42, 0x03, 0x83, 0x3b, 0x3b, + 0x89, 0xb7, 0xf7, 0x8f, 0x0e, 0x16, 0xdf, 0x1b, 0xec, 0xae, 0x5a, 0xf7, 0xd1, 0x0f, 0x3b, 0xc2, + 0xc8, 0xb6, 0xaa, 0x0a, 0xd4, 0x96, 0x1b, 0x95, 0x92, 0x65, 0x98, 0x14, 0xcb, 0xd5, 0xd7, 0x43, + 0x18, 0x71, 0x97, 0x79, 0x59, 0x90, 0x0a, 0x3b, 0x67, 0x90, 0x90, 0x2b, 0x50, 0xb8, 0xb3, 0x74, + 0x4d, 0x8c, 0x81, 0x8c, 0x0d, 0x7c, 0x67, 0xe9, 0x1a, 0xaa, 0xc3, 0xd8, 0x15, 0x63, 0xb2, 0xbb, + 0x64, 0xbc, 0x7a, 0xdf, 0x59, 0xba, 0x46, 0xfe, 0x06, 0x1c, 0xab, 0x78, 0xa1, 0xa8, 0x82, 0x9b, + 0xf0, 0x36, 0xd0, 0x71, 0x65, 0xa4, 0xc7, 0xec, 0xfd, 0x42, 0xe6, 0xec, 0x7d, 0xbe, 0xa1, 0x98, + 0x38, 0xdc, 0x3e, 0xb8, 0x91, 0x0c, 0xd5, 0x94, 0x5d, 0x0f, 0xf9, 0x10, 0xa6, 0x50, 0x9d, 0x8b, + 0x56, 0xcd, 0x18, 0x1d, 0x73, 0xb4, 0x47, 0xcd, 0x9f, 0xcb, 0xac, 0x79, 0x01, 0xb5, 0xc3, 0x0e, + 0xda, 0x46, 0x63, 0x24, 0x4d, 0xe3, 0xd6, 0x6f, 0x70, 0x26, 0x37, 0x60, 0x5a, 0x88, 0x5f, 0xb7, + 0x77, 0xb6, 0xf6, 0x68, 0xc5, 0xdd, 0x17, 0x0f, 0xd6, 0x78, 0xa3, 0x13, 0x32, 0x9b, 0xe3, 0xef, + 0x38, 0xd1, 0x1e, 0x75, 0x1a, 0xae, 0x21, 0xa8, 0x24, 0x08, 0xc9, 0xf7, 0xc2, 0xf8, 0xba, 0x5f, + 0x67, 0x92, 0x37, 0xee, 0x0c, 0xfc, 0x0d, 0xfb, 0x7d, 0xcc, 0x4d, 0xc3, 0xc1, 0x09, 0x71, 0xea, + 0xa3, 0x83, 0xc5, 0x37, 0x8f, 0x3a, 0x69, 0xb4, 0x0a, 0x6c, 0xbd, 0x36, 0xb2, 0x02, 0xc5, 0x7b, + 0x74, 0x9b, 0x7d, 0x6d, 0x32, 0x6f, 0x85, 0x04, 0x0b, 0x13, 0x15, 0xf1, 0xcb, 0x30, 0x51, 0x11, + 0x30, 0x12, 0xc0, 0x0c, 0xf6, 0xcf, 0xa6, 0x1b, 0x86, 0x0f, 0xfd, 0xa0, 0x81, 0x01, 0x8a, 0x7b, + 0x3d, 0x8f, 0x2f, 0x65, 0x76, 0xfe, 0x73, 0xbc, 0xf3, 0x3b, 0x1a, 0x07, 0x5d, 0x80, 0x4c, 0xb1, + 0x27, 0xdf, 0x80, 0x29, 0x9b, 0x7e, 0xb3, 0xeb, 0x05, 0xf4, 0xd6, 0xb5, 0x32, 0xae, 0xca, 0x09, + 0xc3, 0xfd, 0xc7, 0x2c, 0xe4, 0x52, 0x6a, 0xc0, 0x61, 0x52, 0x03, 0xe5, 0xb4, 0x76, 0x5c, 0xf3, + 0x05, 0x42, 0x27, 0x21, 0x9b, 0x30, 0x5e, 0xa1, 0x0f, 0xbc, 0x3a, 0x45, 0x17, 0x05, 0x61, 0x1e, + 0xa8, 0x02, 0xef, 0xc7, 0x25, 0x5c, 0x17, 0xd3, 0x40, 0x00, 0x77, 0x78, 0x30, 0x2d, 0xd0, 0x14, + 0x22, 0xb9, 0x0a, 0x85, 0x6a, 0x65, 0x53, 0x58, 0x07, 0x4a, 0xab, 0xff, 0x6a, 0x63, 0x53, 0x86, + 0x29, 0x47, 0x83, 0x12, 0xaf, 0x61, 0xd8, 0x16, 0x56, 0x2b, 0x9b, 0x64, 0x07, 0x26, 0xb1, 0x03, + 0xd6, 0xa8, 0xcb, 0xfb, 0x76, 0xba, 0x47, 0xdf, 0x5e, 0xcc, 0xec, 0xdb, 0x79, 0xde, 0xb7, 0x7b, + 0x82, 0xda, 0x88, 0xbb, 0xac, 0xb3, 0x65, 0x22, 0xad, 0x88, 0x05, 0x2f, 0xa3, 0x05, 0x6f, 0xad, + 0xe3, 0x83, 0xb9, 0x10, 0x69, 0x65, 0xe8, 0x78, 0x15, 0xbe, 0xb8, 0xa7, 0xf1, 0x71, 0x9a, 0x0f, + 0xf9, 0x12, 0x0c, 0xdd, 0xbe, 0x1f, 0xb9, 0xf3, 0x33, 0x46, 0x3f, 0x32, 0x90, 0xfc, 0x7c, 0xd4, + 0x42, 0xfa, 0xf7, 0x8d, 0x60, 0x1e, 0x48, 0x43, 0x96, 0x60, 0x74, 0xb3, 0x7a, 0xb7, 0xd6, 0xf4, + 0xa3, 0x79, 0xa2, 0xee, 0x49, 0xa4, 0xe3, 0x3d, 0x70, 0xc2, 0xa6, 0x6f, 0xe6, 0x93, 0x90, 0x88, + 0x6c, 0xf8, 0xd6, 0xdc, 0xa0, 0xf1, 0xd0, 0x0d, 0xd0, 0xb7, 0x6c, 0xd6, 0xa8, 0x56, 0x2b, 0xe1, + 0xc3, 0xb7, 0x27, 0x00, 0x09, 0x87, 0x33, 0x9d, 0x05, 0xf9, 0x1e, 0x38, 0x19, 0x7a, 0xbb, 0x6d, + 0x37, 0xea, 0x06, 0xd4, 0x71, 0x9b, 0xbb, 0x7e, 0xe0, 0x45, 0x7b, 0x2d, 0x27, 0xec, 0x7a, 0x11, + 0x9d, 0x9f, 0x33, 0xb2, 0xcd, 0xd5, 0x24, 0x5e, 0x59, 0xa2, 0xd5, 0x18, 0x96, 0x7d, 0x22, 0xcc, + 0x2e, 0x10, 0xda, 0x8b, 0x19, 0x31, 0x05, 0x45, 0xb7, 0xdd, 0xba, 0x56, 0xb6, 0xfe, 0xd3, 0x1c, + 0x6e, 0xc6, 0xe4, 0x65, 0xf4, 0xb4, 0x57, 0x0f, 0xd2, 0xa8, 0x87, 0x75, 0x3b, 0x89, 0xe8, 0x9d, + 0x1c, 0x85, 0xbc, 0x0a, 0x23, 0xd7, 0xdc, 0x3a, 0x8d, 0xe4, 0x43, 0x14, 0x22, 0xef, 0x20, 0x44, + 0x57, 0xda, 0x72, 0x1c, 0x26, 0x27, 0xf2, 0x49, 0x5a, 0x8e, 0x93, 0x04, 0xae, 0x94, 0xe5, 0x3b, + 0x14, 0xca, 0x89, 0x62, 0x72, 0x6b, 0x59, 0x04, 0x13, 0x36, 0x9b, 0x99, 0x1c, 0xac, 0x3f, 0xcd, + 0xc5, 0xbb, 0x0b, 0x79, 0x09, 0x86, 0xec, 0x4d, 0xd5, 0x7e, 0xee, 0xc3, 0x95, 0x68, 0x3e, 0x22, + 0x90, 0x0f, 0xe0, 0x98, 0xc6, 0x27, 0x65, 0x40, 0xfa, 0x22, 0xba, 0x18, 0x69, 0x2d, 0xc9, 0xb6, + 0x22, 0xcd, 0xe6, 0x81, 0x42, 0x71, 0x5c, 0x50, 0xa1, 0x6d, 0x8f, 0xf3, 0xd6, 0x3e, 0x56, 0xe7, + 0xdd, 0x40, 0x84, 0xe4, 0xc7, 0x66, 0x71, 0xe0, 0x1e, 0x46, 0xd6, 0x6f, 0xe4, 0x8c, 0x5d, 0x43, + 0x65, 0x63, 0xcb, 0x1d, 0x92, 0x8d, 0xed, 0x0d, 0x80, 0x72, 0x37, 0xf2, 0x57, 0xdb, 0x81, 0xdf, + 0xe4, 0xda, 0x10, 0x11, 0xc0, 0x16, 0x75, 0xbc, 0x14, 0xc1, 0x86, 0x23, 0x84, 0x42, 0xce, 0xb4, + 0xb5, 0x2d, 0x7c, 0x5c, 0x5b, 0x5b, 0xeb, 0xf7, 0x72, 0xc6, 0xba, 0x61, 0xd2, 0x9e, 0x5c, 0x7a, + 0x9a, 0x29, 0x44, 0x7a, 0xe9, 0xc5, 0x0b, 0xef, 0xdf, 0xcc, 0xc1, 0x71, 0x6e, 0xb4, 0xba, 0xd1, + 0x6d, 0x6d, 0xd3, 0xe0, 0xae, 0xdb, 0xf4, 0x1a, 0x71, 0x1c, 0x93, 0xd8, 0x2e, 0x46, 0xab, 0x26, + 0x1b, 0x9f, 0x5f, 0x38, 0xb9, 0x11, 0xad, 0xd3, 0xc6, 0x42, 0xe7, 0x81, 0x2a, 0xd5, 0x2f, 0x9c, + 0xd9, 0xf4, 0xd6, 0xaf, 0xe4, 0xe0, 0xf9, 0x43, 0x6b, 0x21, 0x97, 0x60, 0x54, 0x46, 0x0e, 0xce, + 0x61, 0xc7, 0xa3, 0x01, 0x59, 0x3a, 0x6a, 0xb0, 0xc4, 0x22, 0x5f, 0x85, 0x63, 0x3a, 0xab, 0xad, + 0xc0, 0xf5, 0xf4, 0xf8, 0xbc, 0x19, 0xad, 0x8e, 0x18, 0x4a, 0x52, 0xea, 0xca, 0x66, 0x62, 0xfd, + 0x3f, 0x39, 0x2d, 0x3f, 0xe3, 0x53, 0x2a, 0x8b, 0x5f, 0x35, 0x64, 0x71, 0x19, 0xc5, 0x49, 0x7d, + 0x15, 0x2b, 0xcb, 0xbc, 0x3f, 0x4d, 0x6b, 0x86, 0x90, 0x08, 0xf8, 0x76, 0x1e, 0xc6, 0xef, 0x84, + 0x34, 0xe0, 0x0f, 0xb2, 0x9f, 0xad, 0x58, 0x36, 0xea, 0xbb, 0x06, 0x8a, 0x36, 0xf2, 0x47, 0x39, + 0x54, 0xd4, 0xeb, 0x14, 0xac, 0x37, 0xb4, 0x9c, 0x2c, 0xd8, 0x1b, 0x98, 0x8d, 0x05, 0xa1, 0x3c, + 0x22, 0xc9, 0xba, 0x99, 0x9e, 0x09, 0x73, 0x74, 0xad, 0x93, 0xf7, 0x60, 0xf8, 0x0e, 0xaa, 0x1d, + 0x4d, 0x9f, 0x69, 0xc5, 0x1f, 0x0b, 0xf9, 0x26, 0xdd, 0x65, 0x7f, 0xea, 0x67, 0x0c, 0x96, 0x91, + 0x1a, 0x8c, 0xae, 0x04, 0x14, 0xb3, 0x2d, 0x0e, 0x0d, 0xee, 0xf1, 0x57, 0xe7, 0x24, 0x49, 0x8f, + 0x3f, 0xc1, 0xc9, 0xfa, 0x99, 0x3c, 0x90, 0xf8, 0x1b, 0x31, 0xb5, 0x40, 0xf8, 0xd4, 0x0e, 0xfa, + 0xbb, 0xc6, 0xa0, 0x9f, 0x4a, 0x0d, 0x3a, 0xff, 0xbc, 0x81, 0xc6, 0xfe, 0xb7, 0x72, 0x70, 0x3c, + 0x9b, 0x90, 0x9c, 0x85, 0x91, 0xdb, 0x5b, 0x9b, 0xd2, 0xed, 0x5e, 0x7c, 0x8a, 0xdf, 0xc1, 0x3b, + 0xbf, 0x2d, 0x8a, 0xc8, 0x6b, 0x30, 0xf2, 0x65, 0x7b, 0x85, 0x9d, 0x43, 0x5a, 0x0c, 0xdc, 0x6f, + 0x06, 0x4e, 0xdd, 0x3c, 0x8a, 0x04, 0x92, 0x3e, 0xb6, 0x85, 0x27, 0x36, 0xb6, 0x3f, 0x9e, 0x87, + 0xe9, 0x72, 0xbd, 0x4e, 0xc3, 0x90, 0x09, 0x39, 0x34, 0x8c, 0x9e, 0xda, 0x81, 0xcd, 0x76, 0xa8, + 0x37, 0xbe, 0x6d, 0xa0, 0x51, 0xfd, 0x9d, 0x1c, 0x1c, 0x93, 0x54, 0x0f, 0x3c, 0xfa, 0x70, 0x6b, + 0x2f, 0xa0, 0xe1, 0x9e, 0xdf, 0x6c, 0x0c, 0x1c, 0x68, 0x9b, 0x09, 0x7a, 0x18, 0x3d, 0x53, 0x7f, + 0x9d, 0xdf, 0x41, 0x88, 0x21, 0xe8, 0xf1, 0x08, 0x9b, 0x97, 0x60, 0xb4, 0xdc, 0xe9, 0x04, 0xfe, + 0x03, 0xbe, 0xec, 0x27, 0x85, 0x03, 0x24, 0x07, 0x19, 0x0e, 0x93, 0x1c, 0xc4, 0x9a, 0x51, 0xa1, + 0x6d, 0x1e, 0x01, 0x68, 0x92, 0x37, 0xa3, 0x41, 0xdb, 0xba, 0x7c, 0x8c, 0xe5, 0x56, 0x0d, 0xc8, + 0x66, 0xe0, 0xb7, 0xfc, 0x88, 0x36, 0xf8, 0xf7, 0xa0, 0x9f, 0xe9, 0xa1, 0xa1, 0x4b, 0xb6, 0xbc, + 0xa8, 0x69, 0x84, 0x2e, 0x89, 0x18, 0xc0, 0xe6, 0x70, 0xeb, 0xff, 0x1a, 0x86, 0x09, 0xbd, 0x77, + 0x88, 0xc5, 0xa3, 0xe7, 0xfa, 0x81, 0xee, 0xec, 0xec, 0x22, 0xc4, 0x16, 0x25, 0x71, 0xa4, 0x80, + 0xfc, 0xa1, 0x91, 0x02, 0xee, 0xc1, 0xe4, 0x66, 0xe0, 0x77, 0xfc, 0x90, 0x36, 0x78, 0x16, 0x5e, + 0xbe, 0x15, 0xce, 0x6a, 0xf7, 0x47, 0x36, 0x90, 0xf8, 0xae, 0x89, 0xda, 0x93, 0x8e, 0xc0, 0x76, + 0x92, 0x39, 0x7a, 0x4d, 0x3e, 0xdc, 0x64, 0xc2, 0x0d, 0x45, 0xa0, 0x2f, 0x65, 0x32, 0xc1, 0x20, + 0xa6, 0xc9, 0x04, 0x83, 0xe8, 0x6b, 0x6d, 0xf8, 0x49, 0xad, 0x35, 0xf2, 0x33, 0x39, 0x18, 0x2f, + 0xb7, 0xdb, 0x22, 0x02, 0xc1, 0x21, 0xce, 0x97, 0x5f, 0x15, 0x56, 0x13, 0x6f, 0x7e, 0x2c, 0xab, + 0x09, 0x94, 0x5b, 0x42, 0x94, 0x54, 0xe3, 0x0a, 0xf5, 0x1b, 0x94, 0xd6, 0x0e, 0xf2, 0x26, 0x94, + 0xd4, 0x24, 0xaf, 0xb6, 0x1b, 0xf4, 0x11, 0x0d, 0xe7, 0x47, 0xcf, 0x14, 0xce, 0x4f, 0x8a, 0xc0, + 0x83, 0xba, 0x64, 0x9a, 0x44, 0x24, 0x5b, 0x00, 0xae, 0x9a, 0x5d, 0x89, 0xfc, 0x47, 0xe9, 0xe9, + 0x27, 0xa4, 0x67, 0xfc, 0x8d, 0x0f, 0x53, 0xba, 0xf4, 0x1c, 0xf3, 0x21, 0x2d, 0x98, 0xe6, 0xc9, + 0x87, 0x30, 0x29, 0x31, 0xc6, 0xea, 0x85, 0x43, 0xc7, 0xe1, 0x25, 0xa1, 0x07, 0x7b, 0x56, 0xa4, + 0x34, 0xc2, 0x3c, 0xc7, 0x4e, 0x46, 0xe0, 0xde, 0x24, 0x6f, 0x1e, 0xe6, 0xd1, 0x3e, 0x91, 0x6e, + 0x2f, 0x9f, 0xf4, 0x3f, 0x9e, 0x83, 0xe3, 0xfa, 0xa4, 0xaf, 0x75, 0xb7, 0x5b, 0x1e, 0xde, 0x05, + 0xc9, 0x45, 0x18, 0x13, 0x73, 0x52, 0x5d, 0xa2, 0xd2, 0x21, 0x87, 0x63, 0x14, 0xb2, 0xca, 0xa6, + 0x21, 0xe3, 0x21, 0xa4, 0xee, 0xd9, 0xc4, 0x3e, 0xc5, 0x8a, 0xe2, 0xc4, 0x76, 0x01, 0xfe, 0x36, + 0xe7, 0x27, 0x83, 0x58, 0xef, 0xc0, 0x8c, 0x39, 0x12, 0x35, 0x1a, 0x91, 0x0b, 0x30, 0x2a, 0x87, + 0x2f, 0x97, 0x3d, 0x7c, 0xb2, 0xdc, 0xba, 0x07, 0x24, 0x45, 0x1f, 0xa2, 0x79, 0x13, 0x8d, 0xa4, + 0xf9, 0x9d, 0x7c, 0x5c, 0x4c, 0x21, 0xaa, 0x4c, 0xef, 0xe3, 0x86, 0xbd, 0x2d, 0x23, 0xb5, 0xfe, + 0x74, 0x0a, 0x66, 0x33, 0xf6, 0xdc, 0x43, 0x64, 0xa2, 0x45, 0x73, 0x83, 0x18, 0x53, 0xbe, 0xdb, + 0x72, 0x5b, 0x78, 0x47, 0x26, 0xe5, 0xee, 0xb3, 0x1d, 0xf4, 0xcb, 0xd4, 0xfd, 0x69, 0xc8, 0x45, + 0x7a, 0x78, 0x85, 0xe1, 0x27, 0x16, 0x5e, 0x61, 0x19, 0x26, 0xc5, 0x57, 0x89, 0xed, 0x6a, 0x24, + 0xd6, 0x14, 0x07, 0xbc, 0xc0, 0x49, 0x6d, 0x5b, 0x26, 0x09, 0xe7, 0x11, 0xfa, 0xcd, 0x07, 0x54, + 0xf0, 0x18, 0xd5, 0x79, 0x60, 0x41, 0x26, 0x0f, 0x8d, 0x84, 0xfc, 0x87, 0x98, 0x3f, 0x05, 0x21, + 0xfa, 0x9e, 0x55, 0xec, 0xb7, 0x67, 0x35, 0x9e, 0xcc, 0x9e, 0x75, 0x4a, 0xb6, 0x31, 0x7b, 0xef, + 0xca, 0x68, 0x16, 0xf9, 0xa5, 0x1c, 0xcc, 0x70, 0x1f, 0x7f, 0xbd, 0xb1, 0x7d, 0xfd, 0xb6, 0xeb, + 0x4f, 0xa6, 0xb1, 0xcf, 0x89, 0xbc, 0x01, 0xd9, 0x6d, 0x4d, 0x37, 0x8a, 0x7c, 0x0f, 0x80, 0x5a, + 0x51, 0xe1, 0x3c, 0xe0, 0x52, 0x7b, 0x2e, 0x63, 0x17, 0x50, 0x48, 0x71, 0x8c, 0xe3, 0x48, 0xd1, + 0x19, 0x59, 0x73, 0x14, 0x94, 0xfc, 0x0d, 0x98, 0x63, 0xeb, 0x45, 0x41, 0x44, 0x44, 0x92, 0xf9, + 0x71, 0xac, 0xe5, 0xf3, 0xbd, 0x65, 0xa2, 0x8b, 0x59, 0x64, 0x3c, 0x5e, 0x61, 0x9c, 0x79, 0x30, + 0xd2, 0x9d, 0x97, 0x33, 0x2b, 0xc2, 0x40, 0x3f, 0xd8, 0x7a, 0x1e, 0x87, 0xb8, 0xc7, 0xfe, 0x76, + 0x52, 0xae, 0x05, 0xbe, 0xbf, 0x85, 0xa6, 0xf3, 0x1d, 0x82, 0xc8, 0x97, 0x81, 0x28, 0xe7, 0x78, + 0x0e, 0xa3, 0x32, 0x46, 0x31, 0x57, 0x1b, 0xc7, 0x4e, 0xf6, 0x81, 0x2c, 0xd6, 0x27, 0x49, 0x9a, + 0x98, 0x50, 0x98, 0x13, 0x1f, 0xcd, 0xa0, 0x32, 0xb9, 0x49, 0x38, 0x3f, 0x65, 0xc4, 0x7b, 0x89, + 0x4b, 0xe2, 0x14, 0x85, 0x5a, 0x86, 0x14, 0x43, 0xe5, 0x94, 0xc5, 0x8e, 0x5c, 0x85, 0x31, 0xf4, + 0x80, 0x5b, 0x93, 0x46, 0x5b, 0xc2, 0x80, 0x04, 0x7d, 0xe5, 0x9c, 0x3d, 0xd3, 0xf4, 0x2a, 0x46, + 0x65, 0xd7, 0x81, 0x4a, 0xb0, 0x6f, 0x77, 0xdb, 0xa8, 0xdc, 0x15, 0xfa, 0x8e, 0x46, 0xb0, 0xef, + 0x04, 0x5d, 0xd3, 0x45, 0x12, 0x91, 0xc8, 0x37, 0x60, 0xfc, 0x96, 0xfb, 0x48, 0xea, 0x76, 0x85, + 0x02, 0x77, 0xa0, 0xe4, 0xfa, 0x2d, 0xf7, 0x91, 0xd3, 0xe8, 0x26, 0xa3, 0x25, 0xf2, 0xe4, 0xfa, + 0x1a, 0x4b, 0xf2, 0x35, 0x00, 0x4d, 0xe3, 0x4c, 0x0e, 0xad, 0xe0, 0x79, 0x19, 0xc5, 0x28, 0x53, + 0x13, 0x8d, 0xfc, 0x35, 0x86, 0x09, 0xc9, 0x61, 0xee, 0xd3, 0x93, 0x1c, 0x8e, 0x7d, 0x7a, 0x92, + 0xc3, 0xc2, 0x36, 0x9c, 0xec, 0xb9, 0x74, 0x32, 0x82, 0x4b, 0x5e, 0x32, 0x83, 0x4b, 0x9e, 0xec, + 0x75, 0xc4, 0x86, 0x66, 0x28, 0xea, 0xd9, 0xd2, 0x5c, 0x6f, 0xe9, 0xe4, 0xbb, 0xf9, 0xc4, 0x91, + 0x2b, 0x2e, 0x16, 0x3c, 0x0d, 0x42, 0x2f, 0x99, 0x24, 0x8f, 0x29, 0xeb, 0xf8, 0xa1, 0x9c, 0x8f, + 0x2f, 0x34, 0x89, 0x2c, 0xbf, 0xfc, 0x78, 0xfe, 0xa4, 0xa7, 0xef, 0x5b, 0x30, 0xc5, 0x93, 0x55, + 0xdd, 0xa4, 0xfb, 0x0f, 0xfd, 0xa0, 0x21, 0x53, 0xb9, 0xa2, 0x0c, 0x9e, 0x4a, 0x11, 0x99, 0xc0, + 0x25, 0x15, 0xe9, 0x54, 0x35, 0x8c, 0xb5, 0x9f, 0xcc, 0xdc, 0xc5, 0x18, 0x42, 0x3f, 0x7f, 0x2b, + 0xf2, 0xba, 0x12, 0xd4, 0x68, 0xa0, 0x07, 0xa4, 0x0e, 0x24, 0x30, 0x43, 0x5e, 0xa3, 0x81, 0xf5, + 0x07, 0x05, 0x20, 0xbc, 0xa6, 0x15, 0xb7, 0xe3, 0xa2, 0xcb, 0xa1, 0x87, 0xa1, 0x33, 0x4a, 0x02, + 0xc7, 0xdd, 0x6e, 0x52, 0x3d, 0xee, 0x8c, 0x30, 0x92, 0x55, 0x65, 0x4e, 0xf2, 0xa2, 0x93, 0x22, + 0xec, 0xb1, 0xd5, 0xe5, 0x3f, 0xc9, 0x56, 0xf7, 0x0d, 0x78, 0xb6, 0xdc, 0xc1, 0xac, 0x77, 0xb2, + 0x96, 0x6b, 0x7e, 0x20, 0x37, 0x29, 0xc3, 0x99, 0xc5, 0x55, 0x68, 0xa9, 0x96, 0xf6, 0x63, 0xa1, + 0xc9, 0x29, 0x6c, 0x5e, 0x76, 0x22, 0xdd, 0x39, 0x5a, 0xca, 0x29, 0x1d, 0x2c, 0xc9, 0x90, 0x53, + 0x38, 0x89, 0xe4, 0xe1, 0x05, 0x52, 0x4e, 0xc1, 0x74, 0x0e, 0x31, 0x0f, 0x2f, 0xa0, 0x3d, 0x64, + 0x1d, 0x45, 0x42, 0xde, 0x82, 0xf1, 0x72, 0x37, 0xf2, 0x05, 0x63, 0x61, 0xdd, 0x1d, 0xdb, 0x61, + 0x8b, 0xa6, 0x18, 0x57, 0x9f, 0x18, 0xdd, 0xfa, 0xe3, 0x02, 0x9c, 0x4c, 0x0f, 0xaf, 0x28, 0x55, + 0xeb, 0x23, 0x77, 0xc8, 0xfa, 0xc8, 0x9a, 0x0d, 0xfc, 0xb1, 0xe0, 0x89, 0xcd, 0x06, 0x9e, 0x3c, + 0xef, 0x63, 0xce, 0x86, 0x1a, 0x8c, 0xeb, 0xe7, 0xdd, 0xd0, 0xc7, 0x3d, 0xef, 0x74, 0x2e, 0xec, + 0x52, 0xcf, 0x7d, 0xc2, 0x87, 0xe3, 0xa7, 0xa3, 0xa4, 0x3b, 0x38, 0xc7, 0x20, 0xff, 0x06, 0x9c, + 0xe1, 0x7b, 0x52, 0xf2, 0x63, 0x97, 0xf7, 0x25, 0x47, 0x31, 0x70, 0x4b, 0x8f, 0x0f, 0x16, 0x2f, + 0x72, 0x55, 0x89, 0x93, 0xea, 0x36, 0x67, 0x7b, 0xdf, 0x91, 0x2d, 0xd3, 0x2a, 0x39, 0x94, 0x37, + 0x66, 0xcc, 0xd3, 0xb2, 0x99, 0xbd, 0x96, 0xe5, 0xf6, 0xc2, 0xe3, 0xa7, 0x72, 0xb0, 0xe9, 0xf1, + 0x22, 0xd5, 0x61, 0xf9, 0x4c, 0x75, 0x98, 0xd4, 0xa7, 0x14, 0x32, 0xf5, 0x29, 0x15, 0x98, 0xae, + 0x75, 0xb7, 0x65, 0xdd, 0x88, 0x38, 0x64, 0x78, 0xee, 0x65, 0x7d, 0x50, 0x92, 0xc4, 0xfa, 0x91, + 0x3c, 0x4c, 0x6c, 0x36, 0xbb, 0xbb, 0x5e, 0xbb, 0xe2, 0x46, 0xee, 0x53, 0xab, 0xa1, 0x7b, 0xc3, + 0xd0, 0xd0, 0x29, 0xef, 0x2e, 0xf5, 0x61, 0x03, 0xa9, 0xe7, 0x7e, 0x3a, 0x07, 0xd3, 0x31, 0x09, + 0x3f, 0x67, 0xd7, 0x60, 0x88, 0xfd, 0x10, 0xf7, 0xd6, 0x33, 0x29, 0xc6, 0x3c, 0x85, 0x8e, 0xfa, + 0x4b, 0xe8, 0xcc, 0xcc, 0xfc, 0x14, 0xc8, 0x61, 0xe1, 0x0b, 0x30, 0x16, 0xb3, 0x3d, 0x4a, 0xea, + 0x9c, 0x5f, 0xcd, 0x41, 0x29, 0xf9, 0x25, 0xe4, 0x26, 0x8c, 0x32, 0x4e, 0x1e, 0x95, 0x57, 0xea, + 0x17, 0x7a, 0x7c, 0xf3, 0x45, 0x81, 0xc6, 0x9b, 0x87, 0x9d, 0x4f, 0x39, 0xc4, 0x96, 0x1c, 0x16, + 0x6c, 0x98, 0xd0, 0xb1, 0x32, 0x5a, 0xf7, 0xaa, 0x29, 0x5c, 0x1c, 0xcf, 0xee, 0x07, 0x23, 0xe1, + 0x8f, 0xd1, 0x6a, 0x21, 0x37, 0x9c, 0x33, 0x26, 0x17, 0xf6, 0x55, 0x62, 0xde, 0xf0, 0x69, 0xb6, + 0x14, 0x87, 0x74, 0xd6, 0xe7, 0x59, 0xc6, 0x84, 0x56, 0x78, 0xe4, 0x55, 0x18, 0xe1, 0xf5, 0xe9, + 0xc9, 0x2a, 0x3a, 0x08, 0xd1, 0x45, 0x5c, 0x8e, 0x63, 0xfd, 0xdd, 0x02, 0x1c, 0x8f, 0x9b, 0x77, + 0xa7, 0xd3, 0x70, 0x23, 0xba, 0xe9, 0x06, 0x6e, 0x2b, 0x3c, 0x64, 0x05, 0x9c, 0x4f, 0x35, 0x0d, + 0xd3, 0x04, 0xc8, 0xa6, 0x69, 0x0d, 0xb2, 0x12, 0x0d, 0x42, 0xf5, 0x25, 0x6f, 0x90, 0x6c, 0x06, + 0xb9, 0x09, 0x85, 0x1a, 0x8d, 0xc4, 0xb6, 0x79, 0x2e, 0xd5, 0xab, 0x7a, 0xbb, 0x2e, 0xd6, 0x68, + 0xc4, 0x07, 0x91, 0xc7, 0x2a, 0xa1, 0x46, 0xac, 0xc8, 0x1a, 0x8d, 0xc8, 0x3d, 0x18, 0x59, 0x7d, + 0xd4, 0xa1, 0xf5, 0x48, 0x24, 0x7e, 0xba, 0xd0, 0x9f, 0x1f, 0xc7, 0xd5, 0xf2, 0x3e, 0x51, 0x04, + 0xe8, 0x9d, 0xc5, 0x51, 0x16, 0xae, 0x42, 0x51, 0x56, 0x7e, 0x94, 0x99, 0xbb, 0xf0, 0x06, 0x8c, + 0x6b, 0x95, 0x1c, 0x69, 0xd2, 0xff, 0x3c, 0xdb, 0x57, 0xfd, 0xa6, 0xcc, 0x15, 0xb5, 0x9a, 0x12, + 0xf3, 0x72, 0xb1, 0x8f, 0x31, 0x17, 0xf3, 0x9c, 0xfb, 0xa2, 0xa8, 0x8f, 0xbc, 0x57, 0x85, 0xe9, + 0xda, 0x7d, 0xaf, 0x13, 0x87, 0xec, 0x33, 0x0e, 0x53, 0x8c, 0x71, 0x2f, 0xee, 0xdc, 0xc9, 0xc3, + 0x34, 0x49, 0x67, 0xfd, 0x45, 0x0e, 0x46, 0xd8, 0x5f, 0x77, 0xaf, 0x3e, 0xa5, 0x5b, 0xe6, 0x15, + 0x63, 0xcb, 0x9c, 0xd1, 0xa2, 0xe6, 0xe2, 0xc6, 0x71, 0xf5, 0x90, 0xcd, 0xf2, 0x40, 0x0c, 0x10, + 0x47, 0x26, 0xd7, 0x61, 0x54, 0x58, 0xf5, 0x08, 0xf3, 0x6b, 0x3d, 0x0c, 0xaf, 0xb4, 0xf7, 0x51, + 0x97, 0x73, 0xbf, 0x93, 0xd4, 0x66, 0x48, 0x6a, 0x26, 0x92, 0xcb, 0xe0, 0x89, 0x46, 0x86, 0x41, + 0x1f, 0xfd, 0xe5, 0x78, 0x10, 0x59, 0x2d, 0x27, 0x68, 0x8f, 0x40, 0x04, 0x65, 0xf1, 0x90, 0x51, + 0xe8, 0xc7, 0xe4, 0xb8, 0x4c, 0xc0, 0x96, 0xf9, 0xc6, 0xf1, 0x27, 0x73, 0x3c, 0xf4, 0xaa, 0x6c, + 0xd8, 0xdb, 0x30, 0x71, 0xcd, 0x0f, 0x1e, 0xba, 0x01, 0x0f, 0xa8, 0x27, 0x2c, 0x07, 0xd8, 0xd5, + 0x71, 0x72, 0x87, 0xc3, 0x79, 0x48, 0xbe, 0x8f, 0x0e, 0x16, 0x87, 0x96, 0x7d, 0xbf, 0x69, 0x1b, + 0xe8, 0xe4, 0x36, 0x4c, 0xde, 0x72, 0x1f, 0x69, 0x97, 0x5e, 0xee, 0x00, 0x73, 0x81, 0x4d, 0x60, + 0x76, 0x6b, 0x3e, 0xdc, 0xc4, 0xca, 0xa4, 0x27, 0x1e, 0x4c, 0x6d, 0xfa, 0x41, 0x24, 0x2a, 0xf1, + 0xda, 0xbb, 0xe2, 0x63, 0xd3, 0x46, 0x62, 0x97, 0x32, 0x8d, 0xc4, 0x4e, 0x76, 0xfc, 0x20, 0x72, + 0x76, 0x14, 0xb9, 0x11, 0xe4, 0xc7, 0x60, 0x4c, 0xde, 0x86, 0x19, 0x2d, 0x88, 0xd9, 0x35, 0x3f, + 0x68, 0xb9, 0x52, 0x28, 0x47, 0x3d, 0x30, 0xda, 0x9b, 0xec, 0x20, 0xd8, 0x4e, 0x63, 0x92, 0x0f, + 0xb2, 0x5c, 0x8a, 0x86, 0x63, 0x2b, 0xb3, 0x0c, 0x97, 0xa2, 0x5e, 0x56, 0x66, 0x69, 0xe7, 0xa2, + 0xdd, 0x7e, 0x56, 0xa8, 0xc5, 0xe5, 0xcb, 0xe2, 0xfa, 0x7d, 0xb8, 0x95, 0xa9, 0x1a, 0xb7, 0x1e, + 0xd6, 0xa6, 0x4b, 0x50, 0x58, 0xde, 0xbc, 0x86, 0xaf, 0x17, 0xd2, 0xd0, 0xa6, 0xbd, 0xe7, 0xb6, + 0xeb, 0x28, 0x2c, 0x0b, 0xcb, 0x6f, 0x7d, 0x47, 0x5e, 0xde, 0xbc, 0x46, 0x5c, 0x98, 0xdd, 0xa4, + 0x41, 0xcb, 0x8b, 0xbe, 0x72, 0xf9, 0xb2, 0x36, 0x50, 0x45, 0x6c, 0xda, 0x25, 0xd1, 0xb4, 0xc5, + 0x0e, 0xa2, 0x38, 0x8f, 0x2e, 0x5f, 0xce, 0x1c, 0x0e, 0xd5, 0xb0, 0x2c, 0x5e, 0x6c, 0x67, 0xbc, + 0xe5, 0x3e, 0x8a, 0x0d, 0xf6, 0x43, 0xe1, 0x9c, 0x79, 0x4a, 0x4e, 0xac, 0xd8, 0xd8, 0xdf, 0xd8, + 0x19, 0x4d, 0x22, 0x76, 0xd7, 0x89, 0xa7, 0x57, 0x28, 0xdc, 0x5a, 0x16, 0xa4, 0x4a, 0x47, 0x7a, + 0xf0, 0xea, 0x02, 0xbb, 0x86, 0x4e, 0xee, 0xa8, 0x1b, 0x1b, 0xbf, 0xf1, 0x88, 0xf4, 0x62, 0x97, + 0xf4, 0x1b, 0x1b, 0x57, 0xa4, 0x18, 0x9f, 0x35, 0xad, 0xae, 0xf9, 0xdc, 0x83, 0xc1, 0x36, 0xb9, + 0xa4, 0x2f, 0x82, 0x13, 0x47, 0xbf, 0x08, 0x52, 0x18, 0x5a, 0xf7, 0xeb, 0xf7, 0x45, 0x64, 0xa2, + 0x2f, 0xb3, 0xe5, 0xde, 0xf4, 0xeb, 0xf7, 0x9f, 0x9c, 0x75, 0x2d, 0xb2, 0x27, 0x1b, 0xac, 0xa9, + 0x6c, 0x16, 0x88, 0x3e, 0x11, 0x16, 0x9b, 0x73, 0xea, 0x26, 0xa4, 0x95, 0x71, 0xc1, 0x87, 0x4f, + 0x1a, 0xd9, 0xb5, 0xb6, 0x49, 0x4e, 0x28, 0x94, 0x2a, 0x34, 0xbc, 0x1f, 0xf9, 0x9d, 0x95, 0xa6, + 0xd7, 0xd9, 0xf6, 0xdd, 0xa0, 0x81, 0xba, 0xbb, 0xac, 0xf5, 0xfd, 0x52, 0xe6, 0xfa, 0x9e, 0x69, + 0x70, 0x7a, 0xa7, 0x2e, 0x19, 0xd8, 0x29, 0x96, 0xe4, 0x03, 0x98, 0x62, 0x93, 0x7b, 0xf5, 0x51, + 0x44, 0xdb, 0x7c, 0xe4, 0x67, 0x50, 0x74, 0x98, 0xd3, 0xc2, 0x95, 0xab, 0x42, 0x3e, 0xa7, 0x70, + 0xb1, 0x53, 0x45, 0x60, 0x44, 0x75, 0x32, 0x58, 0x91, 0x06, 0xcc, 0xdf, 0x72, 0x1f, 0x69, 0x89, + 0xcc, 0xb4, 0x49, 0x4a, 0x70, 0x82, 0x61, 0x1e, 0x7b, 0x36, 0xc1, 0xe2, 0x80, 0xa2, 0x3d, 0xe6, + 0x6b, 0x4f, 0x4e, 0xe4, 0x7b, 0xe1, 0x84, 0xf8, 0xac, 0x0a, 0xe6, 0xf0, 0xf0, 0x83, 0xfd, 0xda, + 0x9e, 0x8b, 0xbe, 0x3a, 0xb3, 0x47, 0xdb, 0x10, 0x65, 0x87, 0x35, 0x24, 0x1f, 0x27, 0xe4, 0x8c, + 0xec, 0x5e, 0x35, 0x90, 0x0f, 0x61, 0x8a, 0x3f, 0xd9, 0xac, 0xf9, 0x61, 0x84, 0x17, 0xfa, 0xb9, + 0xa3, 0x99, 0xa0, 0xf3, 0x77, 0x20, 0xee, 0xb4, 0x91, 0x50, 0x00, 0x24, 0x38, 0x93, 0x37, 0x61, + 0x7c, 0xd3, 0x6b, 0xf3, 0xb8, 0x6b, 0xd5, 0x4d, 0x54, 0x3d, 0x8a, 0xf3, 0xa7, 0xe3, 0xb5, 0x1d, + 0x79, 0xab, 0xee, 0xa8, 0xed, 0x42, 0xc7, 0x26, 0xf7, 0x60, 0xbc, 0x56, 0x5b, 0xbb, 0xe6, 0xb1, + 0x03, 0xb0, 0xb3, 0x3f, 0x7f, 0xbc, 0x47, 0x2b, 0xcf, 0x66, 0xb6, 0x72, 0x32, 0x0c, 0xf7, 0x30, + 0xd1, 0xb4, 0x53, 0xf7, 0x3b, 0xfb, 0xb6, 0xce, 0x29, 0xc3, 0x2c, 0xfb, 0xc4, 0x13, 0x36, 0xcb, + 0xae, 0xc2, 0xb4, 0x66, 0x60, 0x89, 0xc6, 0x95, 0xf3, 0x71, 0x98, 0x31, 0xdd, 0x0c, 0x3b, 0xe9, + 0x86, 0x98, 0xa4, 0x93, 0xf6, 0xd8, 0x27, 0x8f, 0x6a, 0x8f, 0xed, 0xc1, 0x0c, 0x1f, 0x0c, 0x31, + 0x0f, 0x70, 0xa4, 0x17, 0x7a, 0xf4, 0xe1, 0x85, 0xcc, 0x3e, 0x9c, 0x15, 0x23, 0x2d, 0x27, 0x19, + 0x3e, 0x51, 0xa6, 0xb9, 0x92, 0x1d, 0x20, 0x02, 0x28, 0xd2, 0x5c, 0x63, 0x5d, 0xcf, 0xf6, 0xa8, + 0xeb, 0x85, 0xcc, 0xba, 0xa6, 0x64, 0x5d, 0xdb, 0xbc, 0x9a, 0x0c, 0x8e, 0xa4, 0x2d, 0xeb, 0x91, + 0xf3, 0x0b, 0x3b, 0xf6, 0x39, 0x43, 0x0f, 0x9a, 0x46, 0xe0, 0x41, 0x4f, 0x93, 0x93, 0x36, 0xd9, + 0xef, 0x19, 0x9c, 0xc9, 0x23, 0x38, 0x9e, 0x6e, 0x05, 0xd6, 0x79, 0x0a, 0xeb, 0x3c, 0x65, 0xd4, + 0x99, 0x44, 0xe2, 0xf3, 0xc6, 0xfc, 0xac, 0x64, 0xad, 0x3d, 0xf8, 0x93, 0x1f, 0xca, 0xc1, 0x89, + 0x5b, 0xd7, 0xca, 0x98, 0xa8, 0xca, 0xe3, 0x61, 0x78, 0x94, 0xfb, 0xe6, 0x69, 0xa1, 0x2b, 0x4f, + 0xea, 0xef, 0xa5, 0xc4, 0x81, 0x5b, 0x05, 0x93, 0x11, 0xcf, 0xb6, 0x76, 0x5c, 0x9e, 0xff, 0x4a, + 0xb0, 0xc8, 0xf0, 0xf1, 0xfc, 0xce, 0x1f, 0x2e, 0xe6, 0xec, 0x5e, 0x55, 0xdd, 0x18, 0x2a, 0x4e, + 0x96, 0xa6, 0xb2, 0x0c, 0xbe, 0x7f, 0x33, 0x9f, 0x38, 0x3b, 0x48, 0x15, 0x46, 0xc5, 0x94, 0x10, + 0xc2, 0x74, 0x7a, 0xe0, 0x4f, 0x65, 0x0e, 0xfc, 0xa8, 0x98, 0x5d, 0xb6, 0xa4, 0x27, 0x0f, 0x19, + 0x2b, 0xb4, 0xcc, 0x17, 0xb7, 0x8f, 0xaf, 0xf1, 0xa3, 0x01, 0x41, 0xc6, 0x21, 0x58, 0x39, 0xba, + 0x5f, 0x92, 0xe9, 0xf6, 0x86, 0xa7, 0xa1, 0xac, 0x8d, 0xdc, 0xe7, 0x09, 0x16, 0x0a, 0xca, 0xb9, + 0xc5, 0xcc, 0xa6, 0xf0, 0xc4, 0x2a, 0x64, 0xb5, 0x58, 0xbf, 0x91, 0x83, 0x49, 0xe3, 0xf0, 0x21, + 0x57, 0x35, 0xcf, 0xad, 0xd8, 0x99, 0xd9, 0xc0, 0xc1, 0xfd, 0x28, 0xe9, 0xd3, 0x75, 0x55, 0x98, + 0x6f, 0xe7, 0x7b, 0xd3, 0x65, 0x26, 0x9d, 0xef, 0xaf, 0xab, 0x53, 0x69, 0x9b, 0x86, 0x7a, 0xa4, + 0x6d, 0xfa, 0xb5, 0x67, 0x61, 0xca, 0xbc, 0x9d, 0x90, 0x57, 0x61, 0x04, 0x55, 0x9c, 0xf2, 0xaa, + 0xcb, 0x53, 0x33, 0x23, 0xc4, 0x48, 0xcd, 0x8c, 0x10, 0xf2, 0x22, 0x80, 0xb2, 0xa3, 0x95, 0x0a, + 0xfe, 0xe1, 0xc7, 0x07, 0x8b, 0xb9, 0xd7, 0x6c, 0xad, 0x80, 0x7c, 0x1d, 0x60, 0xc3, 0x6f, 0x50, + 0x95, 0x5a, 0xae, 0xcf, 0x23, 0xf6, 0x4b, 0xa9, 0xe0, 0xe3, 0xc7, 0xda, 0x7e, 0x83, 0xa6, 0x23, + 0x8d, 0x6b, 0x1c, 0xc9, 0x97, 0x60, 0xd8, 0xee, 0xb2, 0x6b, 0x35, 0xd7, 0x68, 0x8c, 0xcb, 0x43, + 0xa0, 0xdb, 0xa4, 0xf1, 0x9d, 0x2d, 0xe8, 0x26, 0xed, 0xb3, 0x18, 0x80, 0xbc, 0xcb, 0x83, 0x92, + 0x8b, 0x18, 0x62, 0xc3, 0xf1, 0x93, 0x87, 0x26, 0x1c, 0xa4, 0xa2, 0x88, 0x69, 0x24, 0xe4, 0x36, + 0x8c, 0xea, 0xba, 0x7a, 0xcd, 0x05, 0x58, 0x7f, 0xcf, 0xd1, 0x2e, 0x80, 0x22, 0x27, 0x5d, 0x52, + 0x8d, 0x2f, 0xb9, 0x90, 0xb7, 0x60, 0x8c, 0xb1, 0x67, 0x3b, 0x49, 0x28, 0x04, 0x7f, 0x7c, 0xd8, + 0xd0, 0x1a, 0xc4, 0x36, 0x22, 0x23, 0xd2, 0x97, 0x22, 0x20, 0x1f, 0x60, 0xda, 0x35, 0xd1, 0xd5, + 0x7d, 0x8d, 0x1b, 0xce, 0xa5, 0xba, 0x1a, 0xf3, 0xb0, 0xa5, 0x73, 0x0e, 0x2b, 0x7e, 0x64, 0x57, + 0x45, 0xa0, 0x1a, 0x24, 0x90, 0xfc, 0xcb, 0xa9, 0x0a, 0xe6, 0x65, 0x50, 0xa5, 0x74, 0x8a, 0x40, + 0x83, 0x2f, 0xe9, 0x40, 0x29, 0x96, 0xbb, 0x44, 0x5d, 0xd0, 0xaf, 0xae, 0xd7, 0x52, 0x75, 0xe9, + 0x03, 0x98, 0xaa, 0x2e, 0xc5, 0x9d, 0x34, 0x60, 0x4a, 0xee, 0xe1, 0xa2, 0xbe, 0xf1, 0x7e, 0xf5, + 0xbd, 0x98, 0xaa, 0x6f, 0xb6, 0xb1, 0x9d, 0xae, 0x27, 0xc1, 0x93, 0xbc, 0x05, 0x93, 0x12, 0x82, + 0xeb, 0x43, 0x24, 0x37, 0x46, 0xe5, 0x4c, 0x63, 0x1b, 0x2d, 0xf7, 0xcd, 0xc4, 0x89, 0x3a, 0xb2, + 0x4e, 0xcd, 0x67, 0xc7, 0xa4, 0x41, 0x9d, 0x9c, 0x15, 0x26, 0x32, 0x79, 0x1f, 0xc6, 0xab, 0x2d, + 0xf6, 0x21, 0x7e, 0xdb, 0x8d, 0xa8, 0x70, 0x0f, 0x93, 0x86, 0x1a, 0x5a, 0x89, 0x36, 0x55, 0x79, + 0x2a, 0xc2, 0xb8, 0xc8, 0x48, 0x45, 0x18, 0x83, 0x59, 0xe7, 0xf1, 0xc7, 0x19, 0x31, 0x87, 0xa5, + 0xeb, 0xd8, 0xa9, 0x0c, 0x63, 0x09, 0x8d, 0xbd, 0x88, 0xd5, 0xc7, 0xa0, 0xf2, 0x71, 0x24, 0x11, + 0xab, 0x4f, 0xe7, 0x49, 0xde, 0x86, 0x71, 0x91, 0x63, 0xa3, 0x6c, 0x6f, 0x84, 0xf3, 0x25, 0xfc, + 0x78, 0x74, 0x78, 0x97, 0xe9, 0x38, 0x1c, 0x37, 0x48, 0x58, 0x05, 0xc6, 0xf8, 0xe4, 0x2b, 0x30, + 0x77, 0xcf, 0x6b, 0x37, 0xfc, 0x87, 0xa1, 0x38, 0xa6, 0xc4, 0x46, 0x37, 0x13, 0xfb, 0xe4, 0x3c, + 0xe4, 0xe5, 0x4a, 0x5c, 0x4a, 0x6d, 0x7c, 0x99, 0x1c, 0xc8, 0x5f, 0x4f, 0x71, 0xe6, 0x33, 0x88, + 0xf4, 0x9b, 0x41, 0x4b, 0xa9, 0x19, 0x94, 0xae, 0x3e, 0x39, 0x9d, 0x32, 0xab, 0x21, 0x3e, 0x10, + 0xf3, 0x7c, 0xbf, 0xe1, 0x7b, 0xed, 0xf9, 0x59, 0xdc, 0x0b, 0x9f, 0x4d, 0xba, 0x98, 0x23, 0xde, + 0xa6, 0xdf, 0xf4, 0xea, 0xfb, 0x98, 0xdc, 0xff, 0x74, 0x52, 0x2c, 0xfe, 0xd0, 0x37, 0x54, 0xd7, + 0x19, 0xac, 0xc9, 0xfb, 0x30, 0xc1, 0xfe, 0x57, 0xf7, 0xf6, 0x39, 0xc3, 0xbc, 0x4e, 0xc3, 0x14, + 0xf5, 0xe0, 0x18, 0x61, 0x12, 0x90, 0x8c, 0x2b, 0xbd, 0xc1, 0x8a, 0xbc, 0x01, 0xc0, 0x04, 0x38, + 0xb1, 0x1d, 0x1f, 0x8b, 0x43, 0x23, 0xa2, 0xd8, 0x97, 0xde, 0x88, 0x63, 0x64, 0xf2, 0x16, 0x8c, + 0xb3, 0x5f, 0xb5, 0x6e, 0xc3, 0x67, 0x6b, 0xe3, 0x38, 0xd2, 0x72, 0xaf, 0x3b, 0x46, 0x1b, 0x72, + 0xb8, 0xe1, 0x75, 0x17, 0xa3, 0x93, 0x35, 0x98, 0xc6, 0x10, 0x96, 0xd5, 0x06, 0x6d, 0x47, 0xf8, + 0x68, 0x3a, 0x7f, 0x42, 0x7b, 0x54, 0x66, 0x45, 0x8e, 0xa7, 0xca, 0x74, 0x71, 0x3f, 0x41, 0x46, + 0x42, 0x98, 0x8d, 0x77, 0x97, 0xf8, 0x89, 0x7a, 0x1e, 0x3b, 0x49, 0x0a, 0xb9, 0x69, 0x0c, 0xbe, + 0x1f, 0xb3, 0x11, 0xd1, 0x36, 0x2e, 0xa9, 0xe0, 0xd7, 0x2b, 0xcc, 0xe2, 0x4e, 0x6c, 0x20, 0xd7, + 0x57, 0x36, 0x93, 0x31, 0x1e, 0x4f, 0xe2, 0x17, 0xe0, 0x30, 0xef, 0xd6, 0xe3, 0xa4, 0x97, 0x19, + 0x71, 0x1e, 0x33, 0xa8, 0xc9, 0xb7, 0xe0, 0x98, 0xdc, 0x41, 0x44, 0x91, 0x98, 0xd7, 0x0b, 0x47, + 0xdc, 0x89, 0x1b, 0xdb, 0xaa, 0xea, 0xd4, 0x94, 0xce, 0xae, 0x82, 0xb8, 0x30, 0x8e, 0xc3, 0x2a, + 0x6a, 0x7c, 0xb6, 0x5f, 0x8d, 0xe7, 0x53, 0x35, 0x1e, 0xc7, 0x89, 0x92, 0xae, 0x4c, 0xe7, 0x49, + 0x96, 0x61, 0x52, 0xac, 0x23, 0x31, 0xdb, 0x9e, 0xc3, 0xde, 0x42, 0x3d, 0x8f, 0x5c, 0x81, 0xa9, + 0x09, 0x67, 0x92, 0xe8, 0x3b, 0x32, 0x57, 0xec, 0x9f, 0x32, 0x76, 0xe4, 0xa4, 0x3e, 0xdf, 0x44, + 0x66, 0x3b, 0x52, 0x2c, 0xc5, 0xac, 0x3e, 0xea, 0x04, 0x42, 0x8b, 0x73, 0x3a, 0x4e, 0x7d, 0xa0, + 0x09, 0x3f, 0x0e, 0x55, 0x18, 0xfa, 0x96, 0x90, 0xc5, 0x81, 0xdc, 0x81, 0x59, 0x75, 0x6a, 0x6b, + 0x8c, 0x17, 0xe3, 0x14, 0x12, 0xf1, 0x51, 0x9f, 0xcd, 0x37, 0x8b, 0x9e, 0xb8, 0x70, 0xc2, 0x38, + 0xa7, 0x35, 0xd6, 0x67, 0x90, 0x35, 0x26, 0x59, 0x35, 0x0f, 0xf9, 0x6c, 0xf6, 0xbd, 0xf8, 0x90, + 0x0f, 0x61, 0x21, 0x79, 0x36, 0x6b, 0xb5, 0x3c, 0x8f, 0xb5, 0xbc, 0xfc, 0xf8, 0x60, 0xf1, 0x5c, + 0xea, 0x78, 0xcf, 0xae, 0xa8, 0x0f, 0x37, 0xf2, 0x75, 0x98, 0x37, 0xcf, 0x67, 0xad, 0x26, 0x0b, + 0x6b, 0xc2, 0xa5, 0xa3, 0x0e, 0xf6, 0xec, 0x1a, 0x7a, 0xf2, 0x20, 0x11, 0x2c, 0x66, 0xce, 0x6e, + 0xad, 0x9a, 0xb3, 0xf1, 0x07, 0xa5, 0x56, 0x49, 0x76, 0x75, 0x87, 0xb1, 0x24, 0x0f, 0xe1, 0x74, + 0xd6, 0x31, 0xa1, 0x55, 0xfa, 0x82, 0xd2, 0x93, 0xbe, 0x92, 0x7d, 0xe4, 0x64, 0xd7, 0x7c, 0x08, + 0x5b, 0xf2, 0x01, 0x1c, 0xd3, 0xd6, 0x97, 0x56, 0xdf, 0x8b, 0x58, 0x1f, 0x7a, 0xd4, 0xea, 0x0b, + 0x33, 0xbb, 0x96, 0x6c, 0x1e, 0xa4, 0x05, 0xb3, 0xf2, 0xc3, 0x51, 0x21, 0x2d, 0x8e, 0x9e, 0x73, + 0xc6, 0xae, 0x9a, 0xc6, 0xd0, 0xb2, 0x53, 0x6f, 0x3b, 0x9d, 0x98, 0x50, 0x9f, 0xe9, 0x19, 0x7c, + 0xc9, 0x1a, 0x8c, 0xd4, 0x36, 0xab, 0xd7, 0xae, 0xad, 0xce, 0xbf, 0x84, 0x35, 0x48, 0xf7, 0x1b, + 0x0e, 0x34, 0x2e, 0x4d, 0xc2, 0xea, 0xab, 0xe3, 0xed, 0xec, 0x18, 0x5e, 0x4e, 0x1c, 0xf5, 0xc6, + 0x50, 0xf1, 0x7c, 0xe9, 0xc2, 0x8d, 0xa1, 0xe2, 0x85, 0xd2, 0xcb, 0xf6, 0x73, 0xd9, 0x89, 0x85, + 0xf9, 0xc7, 0xda, 0xe7, 0xfa, 0x95, 0xc6, 0x5d, 0x61, 0xfd, 0x7c, 0x0e, 0x66, 0x33, 0xda, 0x41, + 0xce, 0xc1, 0x10, 0xe6, 0x64, 0xd0, 0xde, 0xb9, 0x13, 0xb9, 0x18, 0xb0, 0x9c, 0x7c, 0x0e, 0x46, + 0x2b, 0x1b, 0xb5, 0x5a, 0x79, 0x43, 0x5e, 0xd9, 0xf8, 0x76, 0xd5, 0x0e, 0x9d, 0xd0, 0x35, 0x9f, + 0xc7, 0x04, 0x1a, 0x79, 0x0d, 0x46, 0xaa, 0x9b, 0x48, 0xc0, 0x0d, 0xad, 0xf0, 0x0a, 0xe3, 0x75, + 0x92, 0xf8, 0x02, 0xc9, 0xfa, 0xd1, 0x1c, 0x90, 0x74, 0xa7, 0x92, 0xcb, 0x30, 0xae, 0x0f, 0x1d, + 0xbf, 0x60, 0xe2, 0x53, 0x8e, 0x36, 0x30, 0xb6, 0x8e, 0x43, 0x2a, 0x30, 0x8c, 0x39, 0xa4, 0xd4, + 0xbb, 0x5c, 0xe6, 0x01, 0x70, 0x22, 0x75, 0x00, 0x0c, 0x63, 0x86, 0x2a, 0x9b, 0x13, 0x5b, 0xbf, + 0x93, 0x03, 0x92, 0x3e, 0x34, 0x07, 0xb6, 0x0b, 0x78, 0x5d, 0x73, 0x94, 0xd5, 0xa3, 0xae, 0xab, + 0x94, 0x19, 0xfa, 0x65, 0x29, 0x76, 0xa9, 0x3d, 0x67, 0x5c, 0xce, 0x7b, 0x7b, 0x57, 0x5d, 0x80, + 0xe1, 0xbb, 0x34, 0xd8, 0x96, 0x36, 0x84, 0x68, 0x77, 0xf4, 0x80, 0x01, 0xf4, 0xcb, 0x2a, 0x62, + 0x58, 0x7f, 0x9c, 0x83, 0xb9, 0x2c, 0x49, 0xee, 0x10, 0x27, 0x28, 0x2b, 0xe1, 0xbf, 0x85, 0x36, + 0x01, 0xdc, 0x28, 0x49, 0x79, 0x6d, 0x2d, 0xc2, 0x30, 0xfb, 0x58, 0x39, 0xc2, 0xa8, 0x2c, 0x60, + 0xbd, 0x11, 0xda, 0x1c, 0xce, 0x10, 0x78, 0x60, 0xa7, 0x21, 0x8c, 0x09, 0x86, 0x08, 0x28, 0x28, + 0xd8, 0x1c, 0xce, 0x10, 0x6e, 0xf9, 0x0d, 0x95, 0x3e, 0x15, 0x11, 0x5a, 0x0c, 0x60, 0x73, 0x38, + 0x39, 0x07, 0xa3, 0xb7, 0xdb, 0xeb, 0xd4, 0x7d, 0x20, 0xb3, 0x7e, 0xa0, 0x0d, 0x83, 0xdf, 0x76, + 0x9a, 0x0c, 0x66, 0xcb, 0x42, 0xeb, 0xa7, 0x73, 0x30, 0x93, 0x12, 0x22, 0x0f, 0xf7, 0xf3, 0xea, + 0xef, 0x70, 0x31, 0xc8, 0xf7, 0xf1, 0xe6, 0x0f, 0x65, 0x37, 0xdf, 0xfa, 0xbf, 0x87, 0xe0, 0x44, + 0x8f, 0x3b, 0x7d, 0xec, 0x10, 0x96, 0x3b, 0xd4, 0x21, 0xec, 0xab, 0xec, 0x0e, 0xed, 0x7a, 0xad, + 0x70, 0xcb, 0x8f, 0x5b, 0x1c, 0xdb, 0x95, 0x63, 0x99, 0xcc, 0x20, 0x2b, 0x0d, 0x90, 0x4f, 0xf2, + 0x2c, 0xde, 0x4e, 0xe4, 0xa7, 0x45, 0x0a, 0x83, 0x59, 0xca, 0x25, 0xab, 0xf0, 0x97, 0xc4, 0x25, + 0xcb, 0x74, 0x12, 0x18, 0x7a, 0xa2, 0x4e, 0x02, 0xd9, 0x06, 0x86, 0xc3, 0x9f, 0xc4, 0xdc, 0x74, + 0x05, 0x26, 0xb9, 0x11, 0x47, 0x39, 0xe4, 0x83, 0x34, 0x92, 0x32, 0xfc, 0x70, 0xc3, 0xf4, 0x58, + 0x18, 0x34, 0x64, 0xcd, 0x34, 0x68, 0x1f, 0xc5, 0xc7, 0xa7, 0x73, 0xbd, 0x0d, 0xd6, 0x8d, 0x47, + 0x67, 0x9d, 0xd4, 0xfa, 0xe9, 0xbc, 0xe9, 0xaf, 0xf5, 0x97, 0x71, 0xe6, 0x5d, 0x80, 0xe1, 0x7b, + 0x7b, 0x34, 0x90, 0xfb, 0x1d, 0x36, 0xe4, 0x21, 0x03, 0xe8, 0x0d, 0x41, 0x0c, 0x72, 0x0d, 0xa6, + 0x36, 0xf9, 0x48, 0xc8, 0xee, 0x1d, 0x8a, 0xaf, 0x5a, 0x1d, 0xa1, 0x10, 0xc8, 0xe8, 0xdf, 0x04, + 0x95, 0x75, 0x1d, 0x4e, 0x19, 0x0b, 0x52, 0xc4, 0x97, 0xe0, 0x76, 0xe5, 0xfc, 0x44, 0x9c, 0x8a, + 0x2d, 0xe9, 0xe3, 0xdd, 0xc3, 0x4e, 0x40, 0xad, 0x1d, 0x38, 0xdd, 0x97, 0x11, 0x3b, 0x88, 0xa0, + 0xa3, 0x7e, 0x25, 0x8c, 0xdf, 0xfa, 0x92, 0xda, 0x1a, 0x9d, 0xf5, 0xbd, 0x30, 0xa1, 0xf7, 0x32, + 0xee, 0xa9, 0xec, 0xb7, 0xd8, 0xd4, 0xf8, 0x9e, 0xca, 0x00, 0x36, 0x87, 0x1f, 0x9a, 0x79, 0x3f, + 0x1e, 0xfe, 0xc2, 0x61, 0xc3, 0xcf, 0x2a, 0xc7, 0x25, 0xab, 0x55, 0x8e, 0xbf, 0xf5, 0xca, 0x31, + 0x80, 0x84, 0xcd, 0xe1, 0x4f, 0xb4, 0xf2, 0xdf, 0x96, 0xb9, 0x0f, 0xd0, 0x6c, 0x5d, 0xde, 0x89, + 0xe3, 0xcc, 0xa6, 0xb3, 0x59, 0x37, 0xdd, 0x18, 0x33, 0x3e, 0x24, 0xf3, 0x87, 0x1d, 0x92, 0x47, + 0x99, 0x88, 0x97, 0x60, 0xb4, 0x2c, 0x9e, 0x86, 0x87, 0x62, 0xc1, 0xc6, 0x4d, 0xbd, 0x03, 0x4b, + 0x2c, 0xeb, 0x3b, 0x39, 0x38, 0x96, 0xa9, 0x2a, 0x63, 0xb5, 0x72, 0x9d, 0x9c, 0xb6, 0x0e, 0x93, + 0x0a, 0x39, 0x8e, 0x71, 0x14, 0xef, 0xe1, 0xc1, 0xbf, 0xc5, 0x7a, 0x1e, 0xc6, 0xd4, 0x43, 0x0d, + 0x99, 0x93, 0x43, 0x87, 0xf6, 0x42, 0x52, 0xdf, 0x5f, 0x03, 0x60, 0x2d, 0x78, 0xa2, 0xd6, 0x6d, + 0xd6, 0x6f, 0xe7, 0x79, 0x5e, 0xac, 0xa7, 0x36, 0xa0, 0x5f, 0xb6, 0x49, 0x1a, 0xfb, 0xa4, 0xde, + 0x61, 0xfc, 0xc8, 0x2a, 0x8c, 0xd4, 0x22, 0x37, 0xea, 0x4a, 0xa7, 0xe7, 0x59, 0x9d, 0x0c, 0x0b, + 0xee, 0x2e, 0xc5, 0x6e, 0xaf, 0x21, 0x42, 0x8c, 0xcb, 0x01, 0x42, 0x34, 0xcb, 0x36, 0x0f, 0x26, + 0x74, 0x5a, 0xf2, 0x3e, 0x4c, 0xc9, 0x28, 0x65, 0xdc, 0x13, 0x5c, 0x3c, 0x2a, 0x49, 0x1b, 0x09, + 0x19, 0xa5, 0x4c, 0xf7, 0x1c, 0x37, 0xf0, 0xf5, 0x9d, 0xba, 0xa3, 0x23, 0x5b, 0x7f, 0x3a, 0xc2, + 0xe7, 0x81, 0x08, 0x37, 0xb8, 0x0d, 0x53, 0xb7, 0xab, 0x95, 0x15, 0x4d, 0xf1, 0x65, 0x66, 0xab, + 0x58, 0x7d, 0x14, 0xd1, 0xa0, 0xed, 0x36, 0x05, 0xc2, 0x7e, 0x7c, 0x36, 0xf8, 0x5e, 0xa3, 0x9e, + 0xad, 0x14, 0x4b, 0x70, 0x64, 0x75, 0xf0, 0xcb, 0x8d, 0xaa, 0x23, 0x3f, 0x60, 0x1d, 0xa1, 0xdb, + 0x6a, 0xf6, 0xa8, 0xc3, 0xe4, 0x48, 0xf6, 0xa0, 0x74, 0x1d, 0xe5, 0x18, 0xad, 0x96, 0x42, 0xff, + 0x5a, 0xce, 0x8a, 0x5a, 0x9e, 0xe5, 0x02, 0x50, 0x76, 0x3d, 0x29, 0xae, 0xf1, 0x02, 0x1e, 0x3a, + 0x74, 0x01, 0xff, 0xcd, 0x1c, 0x8c, 0x70, 0x41, 0x49, 0xcc, 0xaf, 0x1e, 0xa2, 0xd8, 0xbd, 0x27, + 0x23, 0x8a, 0x95, 0x70, 0x03, 0x37, 0x66, 0x1a, 0x2f, 0x23, 0x95, 0xc4, 0x84, 0x95, 0x96, 0x92, + 0xa8, 0xc2, 0xe6, 0x25, 0x87, 0xcf, 0x57, 0x52, 0x8d, 0x3d, 0x84, 0x47, 0x0f, 0x75, 0x42, 0x93, + 0x5e, 0xd5, 0xa3, 0xc2, 0x43, 0xd8, 0xf4, 0x0b, 0x5e, 0x87, 0x31, 0xe1, 0x77, 0xbc, 0xbc, 0x2f, + 0x1e, 0xaa, 0x4a, 0xc6, 0x6b, 0x7c, 0x63, 0x79, 0x3f, 0x16, 0x02, 0x85, 0xe7, 0xb2, 0xb3, 0xbd, + 0x6f, 0xe4, 0xff, 0x92, 0x88, 0xe4, 0x36, 0xcf, 0x8b, 0xc3, 0x03, 0x32, 0x9a, 0x11, 0x98, 0x15, + 0x5c, 0x44, 0x34, 0x91, 0xce, 0x8b, 0x19, 0xf1, 0x17, 0x63, 0x1e, 0x64, 0x1d, 0x4a, 0x68, 0xc1, + 0x41, 0x1b, 0xdc, 0x9c, 0xa3, 0x5a, 0xe1, 0xbe, 0xad, 0xc2, 0x0a, 0x2f, 0xe2, 0x65, 0x8e, 0x30, + 0x04, 0x31, 0xdd, 0x4a, 0x52, 0x94, 0xec, 0xe2, 0x56, 0x4a, 0xce, 0x3e, 0xf2, 0x16, 0x8c, 0xab, + 0x80, 0x98, 0xca, 0xb1, 0x0d, 0x15, 0xd6, 0x71, 0x04, 0x4d, 0xc3, 0xc5, 0x4d, 0x47, 0x27, 0x4b, + 0x50, 0x64, 0x8b, 0x38, 0x99, 0x79, 0xac, 0x2b, 0x60, 0xba, 0xb5, 0xba, 0xc4, 0x23, 0x35, 0x98, + 0x65, 0x8b, 0xa6, 0xe6, 0xb5, 0x77, 0x9b, 0x74, 0xdd, 0xdf, 0xf5, 0xbb, 0xd1, 0x1d, 0x7b, 0x5d, + 0x6c, 0xae, 0x5c, 0x54, 0x76, 0x5b, 0x4d, 0xa3, 0x38, 0x30, 0xf2, 0xca, 0x66, 0x50, 0x6b, 0x7b, + 0xd8, 0x1f, 0xe6, 0x61, 0x5c, 0x9b, 0x4f, 0xe4, 0x02, 0x14, 0xab, 0xe1, 0xba, 0x5f, 0xbf, 0xaf, + 0x42, 0x5e, 0x4d, 0x3e, 0x3e, 0x58, 0x1c, 0xf3, 0x42, 0xa7, 0x89, 0x40, 0x5b, 0x15, 0x93, 0x65, + 0x98, 0xe4, 0x7f, 0xc9, 0x40, 0xe5, 0xf9, 0xd8, 0xe8, 0x8e, 0x23, 0xcb, 0x10, 0xe5, 0xfa, 0xbe, + 0x66, 0x90, 0x90, 0xaf, 0x01, 0x70, 0x00, 0x3a, 0x49, 0x16, 0x06, 0x77, 0xef, 0x14, 0x15, 0x64, + 0xb8, 0x47, 0x6a, 0x0c, 0xc9, 0x37, 0x78, 0x00, 0x4d, 0x39, 0xff, 0x87, 0x06, 0xf7, 0x4f, 0x65, + 0xfc, 0x9d, 0x6c, 0x37, 0x79, 0x9d, 0xa5, 0x88, 0xce, 0xb7, 0x60, 0xd3, 0xba, 0xff, 0x80, 0x06, + 0xfb, 0xe5, 0x08, 0x11, 0x35, 0x0c, 0xeb, 0x7f, 0xca, 0x69, 0xab, 0x86, 0x6c, 0x60, 0xb2, 0x3c, + 0x3e, 0x23, 0x84, 0xcd, 0x86, 0x12, 0xe6, 0x25, 0xdc, 0xa6, 0x3b, 0xcb, 0xcf, 0x0a, 0x9b, 0xcf, + 0x59, 0x35, 0xaf, 0x12, 0x49, 0xf4, 0x38, 0x90, 0xbc, 0x07, 0x43, 0xd8, 0x75, 0xf9, 0x43, 0x3f, + 0x4d, 0x9e, 0xa7, 0x43, 0xac, 0xcf, 0xf0, 0x43, 0x90, 0x92, 0x7c, 0x4e, 0x38, 0x98, 0xf1, 0xce, + 0x9f, 0xd2, 0x0e, 0x45, 0xd6, 0x0e, 0x75, 0x90, 0xc6, 0x91, 0x12, 0xb4, 0xd9, 0xf3, 0xef, 0xe4, + 0xa1, 0x94, 0x5c, 0xab, 0xe4, 0x5d, 0x98, 0x90, 0x27, 0x1d, 0x66, 0x53, 0x66, 0x5f, 0x39, 0x21, + 0xa2, 0x5c, 0xcb, 0xe3, 0x2e, 0x99, 0x4c, 0x59, 0x27, 0x60, 0x52, 0xc7, 0x96, 0x88, 0x5c, 0xa4, + 0xad, 0x92, 0xc8, 0x8f, 0x3a, 0x89, 0x18, 0x8c, 0x12, 0x8d, 0xbc, 0x0e, 0x85, 0x5b, 0xd7, 0xca, + 0xc2, 0x9b, 0x41, 0x6e, 0x49, 0xb7, 0xae, 0x95, 0xf9, 0x6a, 0xe6, 0xd6, 0x5a, 0xa6, 0xed, 0x18, + 0xc3, 0x27, 0xeb, 0x5a, 0x88, 0xd3, 0x11, 0x23, 0xb5, 0x91, 0x04, 0xab, 0x8f, 0x3b, 0x3c, 0xd6, + 0x29, 0x4f, 0xd3, 0x2c, 0x82, 0xfd, 0xfd, 0xfb, 0x05, 0x18, 0x53, 0xf5, 0x13, 0x02, 0x28, 0x54, + 0x89, 0x9b, 0x0c, 0xfe, 0x4d, 0x4e, 0x42, 0x51, 0xca, 0x51, 0xc2, 0xa9, 0x61, 0x34, 0x14, 0x32, + 0xd4, 0x3c, 0x48, 0x81, 0x89, 0x2f, 0x73, 0x5b, 0xfe, 0x24, 0x97, 0x41, 0x49, 0x43, 0xbd, 0xc4, + 0xa6, 0x21, 0x36, 0x60, 0xb6, 0x42, 0x23, 0x53, 0x90, 0xf7, 0x78, 0x00, 0x99, 0x31, 0x3b, 0xef, + 0x35, 0xc8, 0xbb, 0x50, 0x74, 0x1b, 0x0d, 0xda, 0x70, 0x5c, 0x69, 0xfc, 0xd0, 0x6f, 0xd2, 0x14, + 0x19, 0x37, 0x7e, 0x08, 0x20, 0x55, 0x39, 0x22, 0x65, 0x18, 0x6b, 0xba, 0xdc, 0x9e, 0xab, 0x31, + 0xc0, 0x89, 0x12, 0x73, 0x28, 0x32, 0xb2, 0x3b, 0x21, 0x6d, 0x90, 0x97, 0x60, 0x88, 0x8d, 0xa6, + 0x38, 0x42, 0xa4, 0xf8, 0xc6, 0x06, 0x93, 0x77, 0xd8, 0xda, 0x33, 0x36, 0x22, 0x90, 0x17, 0xa0, + 0xd0, 0x5d, 0xda, 0x11, 0x87, 0x43, 0x29, 0x0e, 0x37, 0xac, 0xd0, 0x58, 0x31, 0xb9, 0x02, 0xc5, + 0x87, 0x66, 0xa4, 0xda, 0x63, 0x89, 0x61, 0x54, 0xf8, 0x0a, 0x71, 0xb9, 0x08, 0x23, 0xfc, 0x20, + 0xb0, 0x4e, 0x03, 0xc4, 0x55, 0xa7, 0x7d, 0x4f, 0xac, 0xaf, 0xc1, 0x98, 0xaa, 0x92, 0x9c, 0x02, + 0xb8, 0x4f, 0xf7, 0x9d, 0x3d, 0xb7, 0xdd, 0x68, 0x72, 0xf9, 0x6e, 0xc2, 0x1e, 0xbb, 0x4f, 0xf7, + 0xd7, 0x10, 0x40, 0x4e, 0xc0, 0x68, 0x87, 0x8d, 0xaa, 0x98, 0xba, 0x13, 0xf6, 0x48, 0xa7, 0xbb, + 0xcd, 0x66, 0xe8, 0x3c, 0x8c, 0xa2, 0xe6, 0x4d, 0x2c, 0xb4, 0x49, 0x5b, 0xfe, 0xb4, 0xfe, 0xac, + 0x80, 0x59, 0x1a, 0xb4, 0x76, 0x92, 0xb3, 0x30, 0x59, 0x0f, 0x28, 0x9e, 0x39, 0x2e, 0x93, 0xa4, + 0x44, 0x3d, 0x13, 0x31, 0xb0, 0xda, 0x20, 0xe7, 0x60, 0x5a, 0x64, 0x26, 0x67, 0x0d, 0xaa, 0x6f, + 0x8b, 0xb0, 0xd2, 0x13, 0xf6, 0x24, 0x07, 0xdf, 0xa4, 0xfb, 0x2b, 0xdb, 0x18, 0xf8, 0xa8, 0xa4, + 0xc7, 0xad, 0x8c, 0x54, 0x42, 0x49, 0x7b, 0x5a, 0x83, 0xa3, 0x4d, 0xd3, 0x71, 0x18, 0x71, 0xdd, + 0xdd, 0xae, 0xc7, 0x03, 0x94, 0x4c, 0xd8, 0xe2, 0x17, 0x79, 0x05, 0x66, 0xe2, 0xf0, 0xa6, 0xf2, + 0x33, 0x86, 0xf1, 0x33, 0x4a, 0xaa, 0x60, 0x85, 0xc3, 0xc9, 0x6b, 0x40, 0xf4, 0xfa, 0xfc, 0xed, + 0x0f, 0x69, 0x9d, 0x4f, 0xb5, 0x09, 0x7b, 0x46, 0x2b, 0xb9, 0x8d, 0x05, 0xe4, 0x79, 0x98, 0x08, + 0x68, 0x88, 0x52, 0x1c, 0x76, 0x1b, 0x26, 0x31, 0xb2, 0xc7, 0x25, 0x8c, 0xf5, 0xdd, 0x79, 0x28, + 0x69, 0xdd, 0x81, 0xa1, 0x41, 0x79, 0x4c, 0x65, 0x7b, 0x2a, 0x86, 0xdb, 0x9d, 0x6a, 0x83, 0x7c, + 0x05, 0x16, 0x34, 0x4c, 0x9e, 0x4f, 0xc9, 0xa1, 0x4d, 0x6f, 0xd7, 0xdb, 0x6e, 0x52, 0x31, 0x8d, + 0xd2, 0x93, 0x55, 0xdd, 0xc1, 0xec, 0xf9, 0x98, 0x9a, 0x67, 0x5a, 0x5a, 0x15, 0xb4, 0x64, 0x1d, + 0xe6, 0x12, 0x9c, 0x69, 0xc3, 0xe9, 0x76, 0x7a, 0x46, 0x04, 0x8a, 0x79, 0x12, 0x93, 0x27, 0x6d, + 0xdc, 0xe9, 0x58, 0xcb, 0x30, 0x93, 0xda, 0x61, 0xb4, 0x64, 0xc5, 0x7c, 0xc7, 0xec, 0x9f, 0xac, + 0xd8, 0x6a, 0xc3, 0x84, 0x7e, 0x62, 0x1c, 0x12, 0x82, 0xfc, 0x38, 0x3a, 0xe2, 0xf3, 0xed, 0x74, + 0xe4, 0xf1, 0xc1, 0x62, 0xde, 0x6b, 0xa0, 0xfb, 0xfd, 0x79, 0x28, 0x4a, 0xe1, 0x46, 0xc8, 0x14, + 0xa8, 0xe1, 0x15, 0x52, 0xf5, 0xbe, 0xad, 0x4a, 0xad, 0x97, 0x60, 0x54, 0x1c, 0x0a, 0xfd, 0xf5, + 0xba, 0xd6, 0x0f, 0xe7, 0x61, 0xda, 0xa6, 0x6c, 0xcb, 0xa2, 0x3c, 0xef, 0xc0, 0x53, 0x7b, 0xcd, + 0xcc, 0x0e, 0xe7, 0x66, 0x7c, 0x5b, 0x9f, 0x88, 0xff, 0xff, 0x28, 0x07, 0xb3, 0x19, 0xb8, 0x1f, + 0x2b, 0xe3, 0xdd, 0x55, 0x18, 0xab, 0x78, 0x6e, 0xb3, 0xdc, 0x68, 0x28, 0xaf, 0x7c, 0x14, 0x89, + 0x31, 0x2d, 0x86, 0xcb, 0xa0, 0xba, 0x78, 0xa0, 0x50, 0xc9, 0xcb, 0x62, 0x52, 0xc4, 0xd9, 0xc6, + 0x71, 0x52, 0x7c, 0x74, 0xb0, 0x08, 0xbc, 0x4d, 0x71, 0x56, 0x55, 0x0c, 0xb1, 0xc8, 0x81, 0xb1, + 0xd5, 0xfc, 0x53, 0x3b, 0x74, 0xd9, 0x21, 0x16, 0x93, 0x9f, 0x37, 0x50, 0xd0, 0xff, 0x1f, 0xcb, + 0xc3, 0xf1, 0x6c, 0xc2, 0x8f, 0x9b, 0xbc, 0x10, 0xd3, 0x2d, 0x68, 0x61, 0x61, 0x31, 0x79, 0x21, + 0xcf, 0xcd, 0x80, 0xf8, 0x31, 0x02, 0xd9, 0x81, 0xc9, 0x75, 0x37, 0x8c, 0xd6, 0xa8, 0x1b, 0x44, + 0xdb, 0xd4, 0x8d, 0x06, 0x90, 0x91, 0x5f, 0x90, 0xcf, 0xa7, 0x78, 0x4c, 0xef, 0x49, 0xca, 0x84, + 0x14, 0x6b, 0xb2, 0x55, 0x13, 0x65, 0x68, 0x80, 0x89, 0xf2, 0x4d, 0x98, 0xae, 0xd1, 0x96, 0xdb, + 0xd9, 0xf3, 0x03, 0xe9, 0x76, 0x79, 0x11, 0x26, 0x15, 0x28, 0x73, 0xb6, 0x98, 0xc5, 0x06, 0xbe, + 0xd6, 0x11, 0xf1, 0x56, 0x62, 0x16, 0x5b, 0x7f, 0x27, 0x0f, 0x27, 0xca, 0x75, 0x61, 0xd5, 0x24, + 0x0a, 0xa4, 0xf1, 0xe5, 0xa7, 0x5c, 0x37, 0xb9, 0x04, 0x63, 0xb7, 0xdc, 0x47, 0xeb, 0xd4, 0x0d, + 0x69, 0x28, 0x52, 0x47, 0x71, 0x81, 0xd2, 0x7d, 0x14, 0x1b, 0xfb, 0xd8, 0x31, 0x8e, 0x7e, 0xe3, + 0x1e, 0xfa, 0x84, 0x37, 0x6e, 0x0b, 0x46, 0xd6, 0xfc, 0x66, 0x43, 0x1c, 0xb7, 0xe2, 0x19, 0x70, + 0x0f, 0x21, 0xb6, 0x28, 0x61, 0x17, 0xd5, 0x29, 0xd5, 0x62, 0x6c, 0xc2, 0xa7, 0xde, 0x25, 0xe7, + 0x60, 0x14, 0x2b, 0xaa, 0x56, 0xf4, 0x43, 0xa3, 0x49, 0x31, 0x01, 0x50, 0xc3, 0x96, 0x85, 0x7a, + 0x4f, 0x0c, 0x7f, 0xb2, 0x9e, 0xb0, 0xfe, 0x03, 0x7c, 0x61, 0xd4, 0xbf, 0x92, 0x9d, 0x44, 0x5a, + 0x43, 0x72, 0x03, 0x36, 0x24, 0xff, 0xc4, 0x86, 0xa4, 0xd0, 0x73, 0x48, 0xbe, 0x9d, 0x87, 0x71, + 0xd5, 0xd8, 0xcf, 0x58, 0x6c, 0x62, 0xf5, 0x5d, 0x03, 0x85, 0x4a, 0xa8, 0x69, 0x7b, 0x85, 0x88, + 0x48, 0xf0, 0x1e, 0x8c, 0x88, 0xc5, 0x94, 0x4b, 0x18, 0x21, 0x26, 0x46, 0x77, 0x79, 0x4a, 0xb0, + 0x1e, 0xc1, 0x01, 0x0d, 0x6d, 0x41, 0x87, 0xb1, 0x28, 0xee, 0xd1, 0x6d, 0xf1, 0xe0, 0xfc, 0xd4, + 0x9e, 0x51, 0xd9, 0xb1, 0x28, 0xe2, 0x0f, 0x1b, 0xe8, 0x74, 0xfa, 0x67, 0x45, 0x28, 0x25, 0x49, + 0x0e, 0x8f, 0xfe, 0xbc, 0xd9, 0xdd, 0xe6, 0xb7, 0x05, 0x1e, 0xfd, 0xb9, 0xd3, 0xdd, 0xb6, 0x19, + 0x0c, 0xed, 0x51, 0x02, 0xef, 0x01, 0x7e, 0xf5, 0x84, 0xb0, 0x47, 0x09, 0xbc, 0x07, 0x86, 0x3d, + 0x4a, 0xe0, 0x3d, 0xc0, 0x2b, 0xfa, 0x7a, 0x0d, 0xdd, 0x67, 0xf1, 0xaa, 0x20, 0xae, 0xe8, 0xcd, + 0x30, 0x99, 0x91, 0x45, 0xa2, 0xb1, 0xa3, 0x72, 0x99, 0xba, 0x81, 0x88, 0x54, 0x2c, 0xb6, 0x33, + 0x3c, 0x2a, 0xb7, 0x11, 0xcc, 0x13, 0x28, 0xdb, 0x3a, 0x12, 0x69, 0x02, 0xd1, 0x7e, 0xca, 0x05, + 0x7c, 0xf8, 0xad, 0x55, 0x1a, 0x10, 0xcd, 0xe9, 0xac, 0x1d, 0x7d, 0x35, 0x67, 0xf0, 0x7d, 0x92, + 0x8a, 0xd2, 0x4d, 0x11, 0x7e, 0x0d, 0x55, 0x33, 0xc5, 0x43, 0x99, 0x49, 0xff, 0x72, 0xe0, 0xe1, + 0xd9, 0x94, 0x82, 0x26, 0x66, 0x42, 0xde, 0x81, 0x71, 0xdd, 0x29, 0x9a, 0xbb, 0xee, 0x3e, 0xc7, + 0x23, 0x6a, 0xf5, 0xc8, 0xe1, 0xa7, 0x13, 0x90, 0x6d, 0x38, 0xb1, 0xe2, 0xb7, 0xc3, 0x6e, 0x4b, + 0xc6, 0xee, 0x8a, 0x23, 0x86, 0x82, 0xca, 0xc1, 0xff, 0x42, 0x5d, 0xa0, 0x08, 0x1f, 0x5c, 0x69, + 0xe1, 0x6d, 0x5e, 0x40, 0x7a, 0x31, 0x22, 0x5b, 0x30, 0x8e, 0xca, 0x46, 0x61, 0x42, 0x36, 0x6e, + 0x6e, 0x1b, 0x71, 0x49, 0x85, 0x2d, 0x0c, 0x1e, 0x7c, 0xc6, 0x6d, 0x35, 0xa5, 0x81, 0xb1, 0xae, + 0x34, 0xd5, 0x90, 0xc9, 0xd7, 0x60, 0x8a, 0x5f, 0x8b, 0xef, 0xd1, 0x6d, 0x3e, 0x77, 0x26, 0x8c, + 0x3b, 0xbe, 0x59, 0xc8, 0x1f, 0xa4, 0x85, 0x8a, 0xf7, 0x21, 0xdd, 0xe6, 0x63, 0x6f, 0x98, 0xf7, + 0x1b, 0xf8, 0xe4, 0x0e, 0xcc, 0xae, 0xb9, 0x21, 0x07, 0x6a, 0xde, 0xad, 0x93, 0xa8, 0xfb, 0x44, + 0xb3, 0xcb, 0x3d, 0x37, 0x94, 0x3a, 0xe3, 0x4c, 0x6f, 0xd6, 0x2c, 0x7a, 0xf2, 0xc3, 0x39, 0x98, + 0x37, 0x54, 0xca, 0xc2, 0xf8, 0xa7, 0x45, 0xdb, 0x11, 0xda, 0xf1, 0x4f, 0xa9, 0xd4, 0xcd, 0xbd, + 0xd0, 0xf8, 0x90, 0x24, 0xb4, 0xd6, 0x41, 0x5c, 0xae, 0xdb, 0x33, 0xf6, 0xe2, 0x21, 0x16, 0x2a, + 0xae, 0xe9, 0x69, 0x73, 0xa1, 0x26, 0xd6, 0xb5, 0x44, 0xb3, 0xae, 0x26, 0xfb, 0x5b, 0xa8, 0x90, + 0x72, 0x4a, 0x85, 0x34, 0x07, 0xc3, 0xd8, 0xab, 0x32, 0x18, 0x07, 0xfe, 0xb0, 0x3e, 0xa7, 0xef, + 0x43, 0x42, 0x2c, 0xec, 0xbb, 0x0f, 0x59, 0xff, 0xfd, 0x08, 0x4c, 0x27, 0xa6, 0x85, 0xb8, 0xa7, + 0xe6, 0x52, 0xf7, 0xd4, 0x1a, 0x00, 0x57, 0xa2, 0x0e, 0xa8, 0xed, 0x94, 0x3e, 0x44, 0xe3, 0xc2, + 0x15, 0x50, 0xad, 0x29, 0x8d, 0x0d, 0x63, 0xca, 0x57, 0xec, 0x80, 0xda, 0x67, 0xc5, 0x94, 0x2f, + 0x7a, 0x8d, 0x69, 0xcc, 0x86, 0x2c, 0xc2, 0x30, 0x46, 0xd0, 0xd3, 0x5d, 0xb8, 0x3c, 0x06, 0xb0, + 0x39, 0x9c, 0x9c, 0x85, 0x11, 0x26, 0x44, 0x55, 0x2b, 0x62, 0x13, 0xc4, 0xb3, 0x85, 0x49, 0x59, + 0x4c, 0x62, 0x11, 0x45, 0xe4, 0x2a, 0x4c, 0xf0, 0xbf, 0x44, 0x10, 0x85, 0x11, 0xd3, 0x22, 0xcd, + 0xf1, 0x1a, 0x32, 0x8e, 0x82, 0x81, 0xc7, 0x6e, 0x17, 0xb5, 0x2e, 0x6a, 0x56, 0xaa, 0x15, 0x11, + 0x72, 0x15, 0x6f, 0x17, 0x21, 0x07, 0x62, 0x6a, 0x74, 0x85, 0xc0, 0x64, 0x19, 0x61, 0x48, 0x5d, + 0xc4, 0x3b, 0x25, 0xca, 0x32, 0xdc, 0x80, 0xda, 0x16, 0x25, 0xe4, 0x02, 0x7f, 0xb4, 0x40, 0xb1, + 0x90, 0x67, 0xa0, 0xc2, 0x17, 0x01, 0x54, 0x4c, 0xa0, 0x6c, 0xa8, 0x8a, 0x59, 0xe5, 0xec, 0xef, + 0xd5, 0x96, 0xeb, 0x35, 0xc5, 0xb6, 0x82, 0x95, 0x23, 0x2e, 0x65, 0x50, 0x3b, 0x46, 0x20, 0x6f, + 0xc1, 0x14, 0xfb, 0xb1, 0xe2, 0xb7, 0x5a, 0x7e, 0x1b, 0xd9, 0x8f, 0xc7, 0xf1, 0x78, 0x90, 0xa4, + 0x8e, 0x45, 0xbc, 0x96, 0x04, 0x2e, 0x3b, 0x4f, 0xf0, 0x41, 0xb4, 0xcb, 0x9f, 0x53, 0x26, 0xe2, + 0xf3, 0x04, 0x49, 0x43, 0x0e, 0xb7, 0x75, 0x24, 0xf2, 0x06, 0x4c, 0xb2, 0x9f, 0xd7, 0xbd, 0x07, + 0x94, 0x57, 0x38, 0x19, 0x3f, 0xd1, 0x23, 0xd5, 0x2e, 0x2b, 0xe1, 0xf5, 0x99, 0x98, 0xe4, 0xcb, + 0x70, 0x0c, 0x39, 0xd5, 0xfd, 0x0e, 0x6d, 0x94, 0x77, 0x76, 0xbc, 0xa6, 0xc7, 0x4d, 0x84, 0x78, + 0xb8, 0x00, 0xd4, 0x6e, 0xf3, 0x8a, 0x11, 0xc3, 0x71, 0x63, 0x14, 0x3b, 0x9b, 0x92, 0xdc, 0x83, + 0xd2, 0x4a, 0x37, 0x8c, 0xfc, 0x56, 0x39, 0x8a, 0x02, 0x6f, 0xbb, 0x1b, 0xd1, 0x70, 0x7e, 0xda, + 0x70, 0xaa, 0x67, 0x8b, 0x43, 0x15, 0x72, 0x7d, 0x50, 0x1d, 0x29, 0x1c, 0x57, 0x91, 0xd8, 0x29, + 0x26, 0xd6, 0x7f, 0x97, 0x83, 0x49, 0x83, 0x94, 0xbc, 0x0e, 0x13, 0xd7, 0x02, 0x8f, 0xb6, 0x1b, + 0xcd, 0x7d, 0xed, 0xa2, 0x8a, 0xb7, 0x98, 0x1d, 0x01, 0xe7, 0x5f, 0x6d, 0xa0, 0x29, 0x3d, 0x4f, + 0x3e, 0xd3, 0x7e, 0xef, 0x12, 0xf7, 0x24, 0x14, 0x13, 0xb4, 0x10, 0x47, 0xf9, 0xc0, 0x09, 0x2a, + 0x66, 0xa7, 0x86, 0x42, 0xde, 0x86, 0x11, 0xfe, 0x74, 0x2a, 0x8c, 0xc9, 0x4e, 0x66, 0x7d, 0x26, + 0xf7, 0x5a, 0xc5, 0x89, 0x88, 0x86, 0x2b, 0xa1, 0x2d, 0x88, 0xac, 0x9f, 0xc9, 0x01, 0x49, 0xa3, + 0x1e, 0xa2, 0xf7, 0x3a, 0xd4, 0x20, 0xe6, 0x3d, 0xb5, 0x1a, 0x0b, 0x86, 0x36, 0x9a, 0xd5, 0xc4, + 0x0b, 0x78, 0xc7, 0x8b, 0x55, 0xa7, 0x2b, 0xe2, 0x78, 0xb1, 0xf5, 0x43, 0x79, 0x80, 0x18, 0x9b, + 0x7c, 0x91, 0x27, 0x2a, 0xf9, 0x72, 0xd7, 0x6d, 0x7a, 0x3b, 0x9e, 0x19, 0xb9, 0x0f, 0x99, 0x7c, + 0x53, 0x96, 0xd8, 0x26, 0x22, 0x79, 0x17, 0xa6, 0x6b, 0x9b, 0x26, 0xad, 0x96, 0x94, 0x21, 0xec, + 0x38, 0x09, 0xf2, 0x24, 0x36, 0x1a, 0x8d, 0xea, 0xa3, 0xc1, 0x8d, 0x46, 0xf9, 0x40, 0x88, 0x12, + 0xb6, 0xb1, 0xd4, 0x36, 0x85, 0x9d, 0x72, 0xa3, 0x5a, 0x11, 0xbb, 0x14, 0xb6, 0x2e, 0xec, 0x38, + 0x1d, 0x61, 0xc0, 0xcc, 0xf6, 0x09, 0x03, 0x2f, 0xee, 0xc8, 0xe1, 0x1e, 0x9e, 0xa9, 0x3f, 0x8b, + 0x6a, 0xbf, 0x96, 0x1f, 0x51, 0xa1, 0xed, 0x78, 0x6a, 0xef, 0x3d, 0xf1, 0xbb, 0xfb, 0xb0, 0xe1, + 0x70, 0x67, 0x7c, 0x9d, 0xb0, 0xfa, 0xb8, 0x12, 0x5f, 0x52, 0xf8, 0x0b, 0x7c, 0x86, 0x9d, 0xc8, + 0x3f, 0xc8, 0xc1, 0xb1, 0x4c, 0x5a, 0x72, 0x11, 0x20, 0xd6, 0x29, 0x89, 0x5e, 0xc2, 0x1d, 0x33, + 0x8e, 0x6d, 0x61, 0x6b, 0x18, 0xe4, 0xab, 0x49, 0x6d, 0xd0, 0xe1, 0x07, 0xe1, 0x82, 0x8c, 0x5d, + 0x64, 0x6a, 0x83, 0x32, 0x74, 0x40, 0xd6, 0x3f, 0x2a, 0xc0, 0x8c, 0x16, 0x3a, 0x83, 0xb7, 0xf5, + 0x10, 0x23, 0xde, 0xfb, 0x30, 0xc1, 0xbe, 0xc6, 0xab, 0x0b, 0xaf, 0x1f, 0x6e, 0x23, 0xf2, 0x72, + 0xca, 0x65, 0x4a, 0x70, 0xbb, 0xa8, 0x23, 0xf3, 0x88, 0x62, 0xb8, 0x75, 0xe2, 0x9b, 0x40, 0x3d, + 0xed, 0xfd, 0x63, 0x30, 0x27, 0x21, 0x4c, 0x56, 0xf6, 0xdb, 0x6e, 0x4b, 0xd5, 0xc6, 0x6d, 0x45, + 0x5e, 0xe9, 0x59, 0x9b, 0x81, 0xcd, 0xab, 0x8b, 0x9d, 0x0b, 0x78, 0x59, 0x86, 0x5f, 0xab, 0x41, + 0xb5, 0xf0, 0x2e, 0xcc, 0xa4, 0x1a, 0x7d, 0xa4, 0xe0, 0x66, 0xf7, 0x80, 0xa4, 0xdb, 0x91, 0xc1, + 0xe1, 0x15, 0x33, 0x74, 0xde, 0x31, 0xf5, 0x2c, 0x8c, 0x29, 0x99, 0xb9, 0xe5, 0xc9, 0x92, 0x1e, + 0xfa, 0xec, 0x67, 0xf3, 0xba, 0xdb, 0xda, 0xd3, 0xbe, 0xea, 0xde, 0x33, 0x6e, 0xc3, 0xa7, 0x7b, + 0x8d, 0xe9, 0x40, 0x5a, 0x87, 0xef, 0x16, 0xe0, 0x44, 0x0f, 0x4a, 0xb2, 0x9f, 0x9c, 0x44, 0x5c, + 0x0b, 0x71, 0xb9, 0x7f, 0x85, 0x4f, 0x62, 0x2a, 0x91, 0x2f, 0x72, 0xc7, 0xf5, 0x3a, 0xa6, 0xfd, + 0x15, 0xf7, 0x6f, 0x9e, 0x85, 0x5e, 0x41, 0x93, 0x1e, 0xeb, 0x1c, 0x4a, 0xde, 0x85, 0x61, 0xf4, + 0x59, 0x4c, 0x84, 0xee, 0x62, 0x18, 0x08, 0xd7, 0xe2, 0x9c, 0xb1, 0x9f, 0x46, 0x9c, 0x33, 0x06, + 0x20, 0x5f, 0x80, 0x42, 0xf9, 0x5e, 0x4d, 0x8c, 0xcb, 0x94, 0x4e, 0x7e, 0xaf, 0x16, 0x87, 0x57, + 0x77, 0x8d, 0x38, 0xe8, 0x8c, 0x82, 0x11, 0x5e, 0x5f, 0xd9, 0x14, 0xa3, 0xa2, 0x13, 0x5e, 0x5f, + 0xd9, 0x8c, 0x09, 0x77, 0xeb, 0x46, 0x28, 0x94, 0xeb, 0x2b, 0x9b, 0x9f, 0xde, 0xb4, 0xff, 0xdb, + 0x79, 0xee, 0x6d, 0xcf, 0x3f, 0xec, 0x5d, 0x98, 0x30, 0x42, 0x9b, 0xe6, 0x62, 0x79, 0x4c, 0x45, + 0x90, 0x4d, 0x18, 0xd7, 0x18, 0x04, 0x32, 0x51, 0x01, 0xfb, 0x8d, 0x12, 0xaf, 0x6e, 0xc6, 0xa2, + 0x38, 0xa0, 0x4c, 0x9c, 0x4c, 0x54, 0xa0, 0x48, 0xc8, 0x15, 0x28, 0x6e, 0xd1, 0xb6, 0xdb, 0x8e, + 0x94, 0x42, 0x14, 0x0d, 0x64, 0x23, 0x84, 0x99, 0x52, 0x83, 0x42, 0x44, 0x63, 0xce, 0xee, 0x76, + 0x58, 0x0f, 0x3c, 0x8c, 0xca, 0xa1, 0xce, 0x62, 0x6e, 0xcc, 0xa9, 0x95, 0x98, 0x0c, 0x12, 0x44, + 0xd6, 0xcf, 0xe6, 0x60, 0x54, 0x0c, 0x24, 0x4f, 0x30, 0xb3, 0x1b, 0x9f, 0x25, 0x22, 0xc1, 0xcc, + 0xae, 0x97, 0x4c, 0x30, 0xb3, 0xcb, 0x43, 0x5f, 0x8c, 0x09, 0xc7, 0x51, 0xf5, 0x34, 0xc8, 0x73, + 0x9d, 0x73, 0xa0, 0x59, 0x6d, 0x8c, 0x3a, 0xa8, 0x97, 0x8c, 0xf5, 0x77, 0x45, 0xcb, 0xae, 0xaf, + 0x6c, 0x92, 0x25, 0x28, 0xae, 0xfb, 0x3c, 0xd0, 0x89, 0x9e, 0x2d, 0xb0, 0x29, 0x60, 0x7a, 0x07, + 0x49, 0x3c, 0xd6, 0xbe, 0xcd, 0xc0, 0x17, 0x77, 0x19, 0xad, 0x7d, 0x1d, 0x0e, 0x4c, 0xb4, 0x4f, + 0xa1, 0x0e, 0xdc, 0x3e, 0x9a, 0xb1, 0x49, 0xdc, 0xbd, 0x82, 0x11, 0xdc, 0x6f, 0xe8, 0xde, 0x47, + 0xa2, 0x48, 0xee, 0x14, 0x0b, 0xbd, 0x76, 0x8a, 0xbb, 0x57, 0xec, 0x0c, 0x2a, 0x7c, 0x57, 0x8b, + 0xc1, 0x35, 0x1a, 0x3c, 0x78, 0x8a, 0x77, 0xe9, 0xec, 0x77, 0xb5, 0xe4, 0xe7, 0x0d, 0xb4, 0x49, + 0xff, 0x37, 0x79, 0x38, 0x9e, 0x4d, 0xa8, 0x7f, 0x4b, 0xae, 0xcf, 0xb7, 0x9c, 0x87, 0xe2, 0x9a, + 0x1f, 0x46, 0x9a, 0x3d, 0x1d, 0xaa, 0xff, 0xf7, 0x04, 0xcc, 0x56, 0xa5, 0xec, 0xce, 0xcd, 0xfe, + 0x56, 0xcb, 0x13, 0xf9, 0xa1, 0x8f, 0x39, 0xbb, 0x73, 0xf3, 0x22, 0x72, 0x1d, 0x8a, 0xb6, 0xf0, + 0x7e, 0x49, 0x74, 0x8d, 0x04, 0x2b, 0x69, 0x8a, 0x04, 0x02, 0x62, 0x44, 0x98, 0x15, 0x30, 0x52, + 0x86, 0x51, 0x31, 0xfa, 0x89, 0xa7, 0xe3, 0x8c, 0x29, 0x63, 0x06, 0x7d, 0x96, 0x74, 0x6c, 0x47, + 0xc1, 0x47, 0xc0, 0x6a, 0x45, 0x3a, 0xb2, 0xe0, 0x8e, 0xc2, 0x1f, 0x09, 0x4d, 0xd3, 0x45, 0x85, + 0x68, 0xfd, 0x70, 0x1e, 0x40, 0x6a, 0x6d, 0x9e, 0xda, 0x19, 0xf6, 0x05, 0x63, 0x86, 0x69, 0x96, + 0x3c, 0x83, 0x27, 0x44, 0xbc, 0x8d, 0x16, 0x35, 0x83, 0xa7, 0x43, 0x5c, 0x84, 0xe1, 0xad, 0x58, + 0xa1, 0x25, 0xdc, 0x2a, 0x50, 0x1d, 0xcd, 0xe1, 0xd6, 0x36, 0xcc, 0x5d, 0xa7, 0x51, 0xac, 0xde, + 0x92, 0x4f, 0x8f, 0xfd, 0xd9, 0xbe, 0x0a, 0x63, 0x02, 0x5f, 0xed, 0x5f, 0x5c, 0x17, 0x23, 0xc2, + 0x36, 0xa0, 0x2e, 0x46, 0x22, 0xb0, 0xdd, 0xa8, 0x42, 0x9b, 0x34, 0xa2, 0x9f, 0x6e, 0x35, 0x35, + 0x20, 0xfc, 0x53, 0xf0, 0xcb, 0x06, 0xab, 0xe1, 0xd0, 0xfe, 0xb9, 0x0b, 0xc7, 0x54, 0xdb, 0x9f, + 0x24, 0xdf, 0x4b, 0xec, 0x4a, 0x29, 0xe2, 0x25, 0xc7, 0x1c, 0xfb, 0xd8, 0x9e, 0x3c, 0x82, 0x05, + 0x49, 0x70, 0xcf, 0x53, 0x26, 0x89, 0x03, 0xd1, 0x92, 0xb7, 0x60, 0x5c, 0xa3, 0x11, 0xf1, 0x7e, + 0x51, 0x4d, 0xfd, 0xd0, 0x8b, 0xf6, 0x9c, 0x90, 0xc3, 0x75, 0x35, 0xb5, 0x86, 0x6e, 0x7d, 0x00, + 0xcf, 0x2a, 0xd7, 0x97, 0x8c, 0xaa, 0x13, 0xcc, 0x73, 0x47, 0x63, 0xbe, 0x11, 0x7f, 0x56, 0xb5, + 0xad, 0xdc, 0x55, 0x25, 0x6f, 0xa2, 0x7f, 0x96, 0xf8, 0x98, 0xe7, 0x52, 0x0e, 0xb0, 0x9a, 0x9f, + 0xab, 0xf5, 0xa6, 0xd6, 0xd8, 0x0c, 0x86, 0x06, 0x71, 0x2e, 0x49, 0xfc, 0xc3, 0x79, 0x98, 0xbe, + 0x5d, 0xad, 0xac, 0x28, 0xeb, 0xa3, 0xcf, 0x58, 0xba, 0x46, 0xe3, 0xdb, 0x7a, 0xef, 0x37, 0xd6, + 0x1d, 0x98, 0x4d, 0x74, 0x03, 0x8a, 0x0e, 0xef, 0x70, 0xdf, 0x0c, 0x05, 0x96, 0x62, 0xc3, 0xf1, + 0x2c, 0xf6, 0x77, 0xaf, 0xd8, 0x09, 0x6c, 0xeb, 0x9f, 0x8f, 0x25, 0xf8, 0x8a, 0x2d, 0xec, 0x55, + 0x18, 0xab, 0x86, 0x61, 0x97, 0x06, 0x77, 0xec, 0x75, 0x5d, 0x55, 0xe0, 0x21, 0xd0, 0xe9, 0x06, + 0x4d, 0x3b, 0x46, 0x20, 0x17, 0xa0, 0x28, 0x42, 0xe0, 0xca, 0x3d, 0x01, 0xb5, 0xb6, 0x2a, 0x82, + 0xae, 0xad, 0x8a, 0xc9, 0xeb, 0x30, 0xc1, 0xff, 0xe6, 0xb3, 0x4d, 0x74, 0x38, 0x2a, 0x07, 0x05, + 0x3a, 0x9f, 0x9d, 0xb6, 0x81, 0x46, 0x5e, 0x86, 0x42, 0x79, 0xc5, 0x16, 0xea, 0x20, 0x21, 0x37, + 0x62, 0x12, 0xe6, 0x2e, 0x35, 0x2f, 0x11, 0x2b, 0x36, 0x93, 0xfe, 0xa4, 0x6b, 0xbc, 0xd0, 0x64, + 0xf3, 0x5c, 0xd1, 0x02, 0x96, 0x38, 0xcc, 0x10, 0x46, 0x2e, 0xc1, 0x68, 0xc5, 0x0b, 0x3b, 0x4d, + 0x77, 0x5f, 0xe8, 0xb1, 0x79, 0x2e, 0x22, 0x0e, 0x32, 0x3c, 0xde, 0x39, 0x88, 0x5c, 0x90, 0x39, + 0x5a, 0x8a, 0xb1, 0x8b, 0x47, 0x8f, 0x44, 0x2c, 0xaf, 0xc2, 0x88, 0x08, 0x14, 0x3b, 0xa6, 0x85, + 0x80, 0x4f, 0x06, 0x88, 0x15, 0x38, 0x69, 0x27, 0x4c, 0x78, 0x92, 0x4e, 0x98, 0xdb, 0x70, 0xe2, + 0x3a, 0x6a, 0x6f, 0xcc, 0x58, 0x2e, 0x77, 0xec, 0xaa, 0xd0, 0x87, 0xe3, 0x33, 0x10, 0x57, 0xf0, + 0x24, 0xc3, 0xc1, 0x38, 0xdd, 0x40, 0x4f, 0xad, 0xd7, 0x8b, 0x11, 0xf9, 0x0a, 0xcc, 0x65, 0x15, + 0x09, 0xad, 0x39, 0x46, 0x2d, 0xc9, 0xae, 0x40, 0x8f, 0x5a, 0x92, 0xc5, 0x81, 0xac, 0x43, 0x89, + 0xc3, 0xcb, 0x8d, 0x96, 0xd7, 0xe6, 0x9a, 0x7f, 0xae, 0x55, 0x47, 0x9f, 0x0b, 0xc1, 0xd5, 0x65, + 0x85, 0xfc, 0x05, 0xc0, 0xf0, 0xd2, 0x49, 0x50, 0x92, 0x9f, 0xc8, 0xb1, 0xdb, 0x1c, 0x0f, 0xab, + 0x7a, 0xc7, 0x5e, 0x0f, 0x45, 0xc4, 0xab, 0xe3, 0xb1, 0x03, 0x4e, 0x2d, 0x0a, 0xbc, 0xf6, 0xae, + 0xf0, 0xc0, 0xd9, 0x12, 0x1e, 0x38, 0x6f, 0x7d, 0x2c, 0x0f, 0x1c, 0xce, 0x2a, 0x7c, 0x7c, 0xb0, + 0x38, 0x11, 0x88, 0x3a, 0x71, 0x15, 0x19, 0x2d, 0xc0, 0xb4, 0xf0, 0xcd, 0xa6, 0xff, 0xf0, 0x4e, + 0x9b, 0x07, 0x75, 0xa4, 0x0d, 0xfe, 0x91, 0xd3, 0xb8, 0x83, 0xf3, 0xb4, 0xf0, 0xac, 0xdc, 0xe9, + 0x2a, 0x84, 0xd4, 0x87, 0x66, 0x72, 0x60, 0x17, 0x4f, 0xe9, 0xe5, 0xc1, 0x3d, 0x4a, 0x4b, 0xf1, + 0xc5, 0x53, 0xba, 0x84, 0x38, 0x38, 0x8d, 0xf4, 0xc9, 0x63, 0x90, 0x90, 0x4b, 0x30, 0x72, 0xcb, + 0x7d, 0x54, 0xde, 0xa5, 0x22, 0xf7, 0xd6, 0xa4, 0xdc, 0xfe, 0x10, 0xb8, 0x5c, 0xfc, 0x7d, 0xee, + 0x45, 0xf0, 0x8c, 0x2d, 0xd0, 0xc8, 0xf7, 0xe5, 0xe0, 0x38, 0x5f, 0xc6, 0xf2, 0x2b, 0x6b, 0x34, + 0x8a, 0x58, 0x3f, 0x88, 0xd0, 0x57, 0x32, 0x73, 0x45, 0xad, 0x76, 0x3b, 0x1b, 0x8f, 0x27, 0x31, + 0x17, 0x3b, 0x83, 0xea, 0xb8, 0x50, 0x94, 0x1a, 0x61, 0x36, 0x33, 0xe9, 0x85, 0x85, 0xfc, 0x17, + 0x64, 0xcb, 0xc9, 0x6b, 0xba, 0xe3, 0x63, 0x01, 0xe5, 0xdc, 0xd1, 0x96, 0xfb, 0xc8, 0x71, 0x77, + 0xa9, 0xf1, 0x9e, 0x2d, 0xf4, 0xcc, 0x3f, 0x9d, 0x83, 0x93, 0x3d, 0x1b, 0x47, 0xae, 0xc2, 0x09, + 0x99, 0xcf, 0x7e, 0x2f, 0x8a, 0x3a, 0xa1, 0x23, 0x2f, 0x03, 0xc2, 0x55, 0xd2, 0x3e, 0x26, 0x8a, + 0xd7, 0x58, 0xa9, 0xbc, 0x1f, 0x84, 0xe4, 0x5d, 0x78, 0xce, 0x6b, 0x87, 0xb4, 0xde, 0x0d, 0x68, + 0x9c, 0x10, 0xdf, 0x6b, 0x04, 0x4e, 0xe0, 0xb6, 0x77, 0xa5, 0xdf, 0xa7, 0x7d, 0x52, 0xe2, 0xc8, + 0xb4, 0xf8, 0x5e, 0x23, 0xb0, 0x11, 0xc1, 0xfa, 0xa3, 0x31, 0x7e, 0x2a, 0x96, 0xbb, 0xd1, 0x9e, + 0x3c, 0x47, 0x97, 0xb2, 0xbc, 0x85, 0xb8, 0x79, 0xa0, 0xe6, 0x2d, 0x64, 0xfa, 0x08, 0xc9, 0xe7, + 0x8c, 0x7c, 0xe6, 0x73, 0xc6, 0xab, 0x30, 0xb6, 0xb2, 0x47, 0xeb, 0xf7, 0x95, 0xc7, 0x46, 0x51, + 0xe8, 0x8b, 0x19, 0x90, 0xc7, 0x70, 0x8d, 0x11, 0xc8, 0x25, 0x00, 0x74, 0x1f, 0xe4, 0x42, 0x96, + 0x16, 0x87, 0x1d, 0xbd, 0x0d, 0x85, 0xc5, 0x85, 0x86, 0x82, 0xec, 0x6b, 0xf6, 0x35, 0xdd, 0x44, + 0x83, 0xb3, 0x0f, 0x83, 0x1d, 0x81, 0x1e, 0x23, 0xb0, 0xcf, 0xd3, 0x96, 0x8a, 0xd8, 0xd8, 0x4b, + 0xa9, 0xf5, 0xa4, 0x23, 0xa1, 0xf5, 0xa3, 0x34, 0x4f, 0xc7, 0x7d, 0x7d, 0x42, 0x58, 0x3f, 0x2a, + 0x53, 0x76, 0x3b, 0x46, 0x20, 0x5f, 0x80, 0xd1, 0x15, 0x1a, 0x44, 0x5b, 0x5b, 0xeb, 0x68, 0x45, + 0xc1, 0x83, 0x95, 0x17, 0x31, 0xb0, 0x74, 0x14, 0x35, 0x3f, 0x3a, 0x58, 0x9c, 0x8c, 0xbc, 0x16, + 0x55, 0x41, 0x58, 0x6d, 0x89, 0x4d, 0x96, 0xa1, 0xc4, 0xdf, 0x79, 0x63, 0x61, 0x1a, 0xb7, 0xfa, + 0x22, 0x3f, 0x78, 0xc4, 0xa3, 0xf0, 0x43, 0xba, 0xad, 0xc2, 0x6a, 0xa7, 0xf0, 0xc9, 0xaa, 0x8c, + 0x46, 0xaf, 0x7f, 0x24, 0xc4, 0xda, 0x9d, 0xe4, 0x12, 0x60, 0xdf, 0x9a, 0xa6, 0x20, 0x65, 0x98, + 0x5c, 0xf1, 0x5b, 0x1d, 0x37, 0xf2, 0x30, 0xb5, 0xd3, 0xbe, 0xd8, 0xd5, 0x51, 0x43, 0x55, 0xd7, + 0x0b, 0x8c, 0x23, 0x42, 0x2f, 0x20, 0xd7, 0x60, 0xca, 0xf6, 0xbb, 0x6c, 0x90, 0xe4, 0xb5, 0x92, + 0x6f, 0xdc, 0x68, 0xeb, 0x10, 0xb0, 0x12, 0x76, 0xce, 0x88, 0x3b, 0xa4, 0x11, 0x8d, 0xcf, 0xa0, + 0x22, 0x1b, 0x19, 0xfa, 0x7d, 0x7d, 0xb7, 0xd6, 0x83, 0x6b, 0xa7, 0x98, 0x65, 0x3c, 0x0d, 0x5c, + 0x81, 0xf1, 0x5a, 0xed, 0xf6, 0x16, 0x0d, 0xa3, 0x6b, 0x4d, 0xff, 0x21, 0x6e, 0xd6, 0x45, 0x91, + 0x74, 0x24, 0xf4, 0x9d, 0x88, 0x86, 0x91, 0xb3, 0xd3, 0xf4, 0x1f, 0xda, 0x3a, 0x16, 0xf9, 0x3a, + 0xeb, 0x0f, 0x4d, 0xb4, 0x11, 0x71, 0x07, 0xfb, 0x49, 0x5f, 0xb8, 0x25, 0xc6, 0x4b, 0x86, 0xc9, + 0x60, 0x66, 0x67, 0x69, 0xe8, 0xe8, 0x7e, 0xc4, 0x2e, 0xc4, 0xe5, 0x46, 0x23, 0xa0, 0x61, 0x28, + 0x76, 0x55, 0xee, 0x7e, 0x84, 0xb7, 0x67, 0x97, 0x17, 0x18, 0xee, 0x47, 0x1a, 0x01, 0xf9, 0x76, + 0x0e, 0x8e, 0xe9, 0x1e, 0x0c, 0xb8, 0x58, 0xd0, 0x6e, 0x83, 0xef, 0xb1, 0xaf, 0x5d, 0x94, 0xa7, + 0xca, 0x45, 0x0d, 0xed, 0xe2, 0x83, 0xcb, 0x17, 0xcb, 0xf1, 0xcf, 0x9a, 0x24, 0x12, 0xa1, 0xbb, + 0xb2, 0xf8, 0xe9, 0x27, 0x84, 0x9b, 0x41, 0x4a, 0x56, 0x98, 0xe0, 0xc1, 0xe6, 0x13, 0xda, 0x01, + 0x55, 0x37, 0x71, 0x8b, 0x16, 0x0a, 0x42, 0x31, 0xfb, 0xb8, 0xc5, 0x90, 0xd7, 0x31, 0xe5, 0x0b, + 0x8d, 0x86, 0x54, 0x61, 0x9a, 0x03, 0xd8, 0x96, 0xc0, 0x33, 0x52, 0xcc, 0xc6, 0x51, 0xb1, 0x05, + 0x1b, 0x7c, 0xba, 0xc6, 0xac, 0x14, 0x7a, 0x98, 0xbc, 0x04, 0x1d, 0x4a, 0xfe, 0xb5, 0xf2, 0xad, + 0xf5, 0x58, 0x7c, 0xfd, 0x6c, 0x59, 0xf6, 0x1b, 0xdf, 0xd6, 0xc7, 0xb2, 0xff, 0x0e, 0xf7, 0xc9, + 0xd4, 0xba, 0x41, 0x4a, 0xfe, 0x06, 0x38, 0x29, 0xf9, 0x27, 0x68, 0xec, 0x04, 0xb6, 0xf5, 0x51, + 0x31, 0xc1, 0x57, 0x58, 0xf3, 0x59, 0x30, 0xc2, 0x05, 0x7b, 0x3d, 0xbd, 0x39, 0x17, 0xfb, 0x6d, + 0x51, 0x42, 0x4e, 0x42, 0xa1, 0x56, 0xbb, 0x2d, 0x3a, 0x19, 0x6d, 0xfa, 0xc2, 0xd0, 0xb7, 0x19, + 0x8c, 0x8d, 0x10, 0x1a, 0xea, 0x69, 0x11, 0x87, 0xd9, 0x0e, 0x6a, 0x23, 0x94, 0xf5, 0xb7, 0x14, + 0xb3, 0x87, 0xe2, 0xfe, 0x16, 0x62, 0x76, 0x2c, 0x5c, 0xaf, 0xc0, 0x7c, 0x39, 0x0c, 0x69, 0xc0, + 0x26, 0xa8, 0xb0, 0xff, 0x0a, 0x84, 0x28, 0x28, 0x0e, 0x0a, 0xac, 0xd4, 0xad, 0x87, 0x76, 0x4f, + 0x44, 0x72, 0x1e, 0x8a, 0xe5, 0x6e, 0xc3, 0xa3, 0xed, 0xba, 0x11, 0x4e, 0xc8, 0x15, 0x30, 0x5b, + 0x95, 0x92, 0x2f, 0xc3, 0xb1, 0x44, 0x48, 0x2d, 0xd1, 0x03, 0xa3, 0xf1, 0x6a, 0x96, 0xa2, 0x6a, + 0xfc, 0x66, 0xcd, 0xbb, 0x24, 0x9b, 0x92, 0x94, 0xa1, 0xb4, 0x8a, 0x9e, 0x2c, 0x15, 0xca, 0xd5, + 0xe7, 0x7e, 0xc0, 0xbd, 0x88, 0xf8, 0xc5, 0x82, 0x7b, 0xb9, 0x38, 0x0d, 0x55, 0x68, 0xa7, 0xd0, + 0xc9, 0x4d, 0x98, 0x4d, 0xc2, 0xd8, 0x99, 0xc0, 0xef, 0x10, 0x18, 0xf2, 0x32, 0xc5, 0x05, 0x4f, + 0x85, 0x2c, 0x2a, 0xb2, 0x0d, 0x33, 0xb1, 0xcd, 0x86, 0x79, 0xb3, 0x90, 0xa6, 0xa0, 0xaa, 0x5c, + 0xde, 0x2e, 0x9e, 0x15, 0x93, 0x71, 0x36, 0xb6, 0xff, 0x50, 0x37, 0x0c, 0x3b, 0xcd, 0x8e, 0x34, + 0x60, 0xaa, 0xe6, 0xed, 0xb6, 0xbd, 0xf6, 0xee, 0x4d, 0xba, 0xbf, 0xe9, 0x7a, 0x81, 0x30, 0xca, + 0x93, 0x26, 0xb7, 0xe5, 0x70, 0xbf, 0xd5, 0xa2, 0x51, 0x80, 0xa7, 0x2d, 0x2b, 0x47, 0x07, 0x58, + 0x26, 0x31, 0x2e, 0x84, 0x9c, 0x0e, 0x9d, 0xcb, 0x3a, 0xae, 0x67, 0x1c, 0x2b, 0x26, 0x4f, 0xe3, + 0x76, 0x37, 0x31, 0xe0, 0xed, 0xae, 0x09, 0x33, 0xab, 0xed, 0x7a, 0xb0, 0x8f, 0xaf, 0x18, 0xb2, + 0x71, 0x93, 0x87, 0x34, 0xee, 0x05, 0xd1, 0xb8, 0xe7, 0x5c, 0x39, 0xc3, 0xb2, 0x9a, 0x97, 0x66, + 0x4c, 0x6a, 0x30, 0x83, 0x12, 0x5b, 0xb5, 0xb2, 0x59, 0x6d, 0x7b, 0x91, 0x87, 0x49, 0xb8, 0xf9, + 0x71, 0xf5, 0xa2, 0xe0, 0x79, 0x8a, 0x4b, 0xf1, 0x5e, 0xa3, 0xe3, 0x78, 0x12, 0x45, 0x67, 0x9a, + 0xa2, 0xef, 0x27, 0x4a, 0x4f, 0xff, 0xab, 0x11, 0xa5, 0x31, 0x4d, 0x55, 0xc2, 0x31, 0xbc, 0x14, + 0xef, 0xed, 0x21, 0x16, 0xb1, 0x23, 0xc2, 0xef, 0xa2, 0x78, 0x62, 0xa4, 0xa9, 0x32, 0xe9, 0xac, + 0x6f, 0x8f, 0xf1, 0xbd, 0x5d, 0x97, 0x5f, 0x7b, 0x19, 0xe3, 0x25, 0xe4, 0xda, 0xfc, 0x51, 0xe4, + 0xda, 0xc2, 0xe1, 0x72, 0xed, 0xd0, 0x61, 0x72, 0x6d, 0x42, 0xf0, 0x1c, 0x3e, 0xb2, 0xe0, 0x39, + 0x72, 0x04, 0xc1, 0x73, 0xf4, 0x48, 0x82, 0xa7, 0x21, 0x41, 0x17, 0x0f, 0x93, 0xa0, 0xff, 0x4a, + 0x4c, 0x7d, 0x5a, 0xc5, 0xd4, 0x2c, 0x51, 0xe1, 0x48, 0x62, 0x6a, 0x6f, 0x29, 0xb3, 0xf4, 0xaf, + 0x5b, 0xca, 0x9c, 0x79, 0x32, 0x52, 0x26, 0xf9, 0x98, 0x52, 0xe6, 0x5f, 0x83, 0x52, 0xf2, 0xe0, + 0x3b, 0x3c, 0x92, 0xe0, 0x13, 0x8b, 0x7a, 0xc5, 0x8e, 0xe5, 0xe4, 0xc1, 0xc3, 0x2e, 0xd2, 0x9b, + 0x81, 0xf7, 0xc0, 0x8d, 0xe8, 0x4d, 0x69, 0xbc, 0x20, 0xa2, 0x60, 0x72, 0x28, 0x6e, 0x1f, 0x1a, + 0x8a, 0x92, 0xb9, 0xf2, 0x59, 0x32, 0x97, 0xf5, 0x23, 0x79, 0x98, 0xe1, 0x11, 0x6a, 0x9e, 0x7e, + 0x1d, 0xfa, 0x3b, 0x86, 0x24, 0x2d, 0x4d, 0xe5, 0x12, 0x5f, 0xd7, 0x47, 0x8b, 0xfe, 0x35, 0x38, + 0x96, 0xea, 0x0a, 0x94, 0xa6, 0x2b, 0x32, 0x36, 0x50, 0x4a, 0x9e, 0x9e, 0xcf, 0xae, 0xe4, 0xee, + 0x15, 0x3b, 0x45, 0x61, 0xfd, 0xd9, 0x50, 0x8a, 0xbf, 0xd0, 0xa7, 0xeb, 0x1a, 0xf2, 0xdc, 0xd1, + 0x34, 0xe4, 0xf9, 0xc1, 0x34, 0xe4, 0x89, 0x63, 0xaa, 0x30, 0xc8, 0x31, 0xf5, 0x65, 0x98, 0xdc, + 0xa2, 0x6e, 0x2b, 0xdc, 0xf2, 0x45, 0xa8, 0x7b, 0x6e, 0x2a, 0x2b, 0x43, 0xff, 0xb0, 0x32, 0x29, + 0x0c, 0x2a, 0x93, 0x9f, 0x88, 0x11, 0xb0, 0xad, 0x95, 0xc7, 0xbe, 0xb7, 0x4d, 0x0e, 0xba, 0x84, + 0x3f, 0xdc, 0x47, 0xc2, 0xaf, 0xc1, 0x84, 0xa0, 0x8b, 0xc3, 0x27, 0xc6, 0xa2, 0x28, 0x2b, 0x42, + 0xb8, 0xac, 0x5d, 0xe5, 0x44, 0x54, 0xb5, 0x73, 0x29, 0xd4, 0x60, 0xc2, 0xba, 0x60, 0xb5, 0xdd, + 0xe8, 0xf8, 0x5e, 0x1b, 0xbb, 0x60, 0x34, 0xee, 0x02, 0x2a, 0xc0, 0xbc, 0x0b, 0x34, 0x24, 0xf2, + 0x16, 0x4c, 0x95, 0x37, 0xab, 0x3a, 0x59, 0x31, 0x56, 0xd2, 0xbb, 0x1d, 0xcf, 0x31, 0x48, 0x13, + 0xb8, 0xfd, 0xa4, 0xb2, 0xb1, 0x7f, 0x35, 0x52, 0x99, 0xf5, 0x4f, 0xc7, 0xe4, 0xf2, 0xfe, 0x74, + 0x95, 0x81, 0xa6, 0x7a, 0xaf, 0x70, 0x44, 0xf5, 0xde, 0xd0, 0x61, 0xc2, 0x89, 0x21, 0x31, 0x0d, + 0x1f, 0x41, 0x62, 0x1a, 0xf9, 0xc4, 0xaa, 0xba, 0xd1, 0x23, 0xca, 0x40, 0x89, 0x95, 0x56, 0x1c, + 0x64, 0xa5, 0x65, 0xca, 0x4d, 0x63, 0x9f, 0x5c, 0x6e, 0x82, 0x23, 0xcb, 0x4d, 0xb5, 0xd8, 0xf1, + 0x6c, 0xfc, 0x50, 0x7b, 0xde, 0x53, 0xe2, 0xbe, 0x32, 0x93, 0x1d, 0x9c, 0x48, 0xb9, 0xa0, 0x7d, + 0xa6, 0x84, 0xb1, 0x6f, 0x64, 0x0b, 0x63, 0xfd, 0x4f, 0x9b, 0xbf, 0x12, 0xc7, 0x9e, 0x88, 0x38, + 0x16, 0xe0, 0x80, 0xdd, 0x73, 0x83, 0x36, 0x5e, 0x39, 0x2f, 0xc1, 0xa8, 0x8c, 0xf7, 0x95, 0x8b, + 0xb5, 0x27, 0xe9, 0x40, 0x5f, 0x12, 0x8b, 0x2c, 0x41, 0x51, 0x12, 0xeb, 0xb1, 0xcb, 0x1f, 0x0a, + 0x98, 0x11, 0x4a, 0x49, 0xc0, 0xac, 0x7f, 0x38, 0x24, 0x37, 0x05, 0xd6, 0x0e, 0x91, 0x6e, 0x7b, + 0x59, 0x9b, 0x04, 0x9a, 0x30, 0x98, 0x18, 0xe6, 0x84, 0xa5, 0x9f, 0x49, 0xf2, 0xb1, 0x22, 0xb0, + 0xc5, 0xf9, 0xb5, 0x0a, 0x03, 0xe4, 0xd7, 0x7a, 0xc3, 0x48, 0x4e, 0x35, 0x14, 0x67, 0x43, 0x61, + 0x0b, 0xa5, 0x7f, 0x5a, 0xaa, 0xab, 0x7a, 0x16, 0xa9, 0xe1, 0x38, 0xc8, 0x07, 0x52, 0xf6, 0xc9, + 0x1f, 0xa5, 0xa4, 0xdb, 0x91, 0xa3, 0xc4, 0x36, 0x1c, 0xfd, 0xd7, 0x1a, 0xdb, 0x70, 0x15, 0x40, + 0x4b, 0x71, 0xcc, 0x1f, 0x77, 0x5e, 0x64, 0xdd, 0x74, 0x78, 0x7a, 0x63, 0x8d, 0xd0, 0xfa, 0x3d, + 0x02, 0x33, 0xb5, 0xda, 0xed, 0x8a, 0xe7, 0xee, 0xb6, 0xfd, 0x30, 0xf2, 0xea, 0xd5, 0xf6, 0x8e, + 0xcf, 0x44, 0x3b, 0xb5, 0xc1, 0x68, 0x41, 0xec, 0xe2, 0xcd, 0x45, 0x15, 0xb3, 0xab, 0xc3, 0x6a, + 0x10, 0xf8, 0x81, 0x7e, 0x75, 0xa0, 0x0c, 0x60, 0x73, 0x38, 0x93, 0x9e, 0x6a, 0x5d, 0x9e, 0xab, + 0x96, 0xbf, 0xb7, 0xa1, 0xf4, 0x14, 0x72, 0x90, 0x2d, 0xcb, 0x08, 0x4d, 0x4f, 0x58, 0x21, 0x4d, + 0x9f, 0x30, 0x22, 0x24, 0xc6, 0xc5, 0x7c, 0xfb, 0x14, 0xc7, 0x1b, 0x2e, 0xc5, 0x0e, 0xc2, 0xf5, + 0x07, 0xf2, 0xd4, 0x1a, 0xd8, 0x87, 0x63, 0x86, 0x0b, 0xd4, 0xa0, 0x8a, 0xc3, 0x97, 0x85, 0xb4, + 0x66, 0xa1, 0xc7, 0x6d, 0x86, 0xf6, 0x50, 0xcf, 0xe6, 0x90, 0x59, 0x03, 0xf9, 0x91, 0x1c, 0x9c, + 0xca, 0x2c, 0x51, 0xab, 0x7b, 0xdc, 0x88, 0x52, 0xa9, 0x6d, 0x1a, 0x3c, 0x6f, 0x45, 0xaf, 0xaa, + 0x9d, 0x8c, 0xad, 0xa0, 0x7f, 0x4d, 0xe4, 0xd7, 0x73, 0x70, 0xc2, 0xc0, 0x50, 0xdb, 0x67, 0xa8, + 0xbc, 0x83, 0x33, 0xe7, 0xf5, 0x87, 0x4f, 0x66, 0x5e, 0x9f, 0x35, 0xbf, 0x25, 0xde, 0xdd, 0xf5, + 0x6f, 0xe8, 0xd5, 0x42, 0xf2, 0x00, 0x66, 0xb0, 0x48, 0x2a, 0x31, 0xd9, 0x9c, 0x15, 0xba, 0xcf, + 0xb9, 0xb8, 0xd9, 0xdc, 0xad, 0x0f, 0x73, 0x0f, 0x2e, 0x7d, 0xf7, 0x60, 0x71, 0xd2, 0x40, 0x97, + 0x71, 0x1f, 0x9d, 0x58, 0x13, 0xea, 0xb5, 0x77, 0x7c, 0xfd, 0xe8, 0x4d, 0x55, 0x41, 0xfe, 0xf3, + 0x1c, 0xcc, 0x33, 0x28, 0xff, 0x8c, 0x6b, 0x81, 0xdf, 0x52, 0xe5, 0xd2, 0xd2, 0xa2, 0x47, 0xb7, + 0x35, 0x9f, 0x4c, 0xb7, 0xbd, 0x88, 0x4d, 0xe6, 0x7b, 0x82, 0xb3, 0x13, 0xf8, 0xad, 0xb8, 0xf9, + 0x46, 0x0a, 0xdf, 0x5e, 0x8d, 0x24, 0xdf, 0x9f, 0x83, 0x93, 0x86, 0xe6, 0x45, 0x8f, 0x8e, 0x2d, + 0x9c, 0x27, 0x67, 0x95, 0x5b, 0x75, 0x5c, 0xb4, 0x7c, 0x51, 0xcc, 0xff, 0x73, 0xd8, 0x82, 0xf8, + 0xb4, 0xc0, 0xb6, 0x38, 0x2d, 0x8e, 0xa5, 0x35, 0xa1, 0x77, 0x2d, 0xc4, 0x83, 0x19, 0x7c, 0xa3, + 0x34, 0x2c, 0x82, 0xe6, 0x7a, 0x5b, 0x04, 0xa9, 0x1c, 0x51, 0x18, 0x7a, 0xb7, 0xb7, 0x59, 0x50, + 0x9a, 0x2b, 0xf9, 0xeb, 0x70, 0x32, 0x05, 0x54, 0xab, 0xed, 0x58, 0xcf, 0xd5, 0xf6, 0xca, 0xe3, + 0x83, 0xc5, 0x97, 0xb2, 0x6a, 0xcb, 0x5a, 0x69, 0xbd, 0x6b, 0x20, 0x2e, 0x40, 0x5c, 0x28, 0x32, + 0x01, 0x67, 0x4f, 0xd0, 0x57, 0xc4, 0xfc, 0xd0, 0xf0, 0xd9, 0x5e, 0xae, 0xb5, 0x41, 0x3f, 0xf2, + 0x62, 0x24, 0x42, 0x61, 0x42, 0x0b, 0x3b, 0xbc, 0x8f, 0x29, 0x81, 0x7b, 0x56, 0xf2, 0xdd, 0x83, + 0x45, 0x03, 0x9b, 0x89, 0xd8, 0x7a, 0x3c, 0x63, 0x5d, 0xc4, 0x36, 0x10, 0xc9, 0xaf, 0xe6, 0x60, + 0x8e, 0x01, 0xe2, 0x49, 0x25, 0x3e, 0x6a, 0xbe, 0xdf, 0xac, 0xdf, 0x7b, 0x32, 0xb3, 0xfe, 0x79, + 0x6c, 0xa3, 0x3e, 0xeb, 0x53, 0x5d, 0x92, 0xd9, 0x38, 0x9c, 0xed, 0xc6, 0x73, 0xb8, 0x31, 0xdb, + 0x4f, 0x0e, 0x30, 0xdb, 0xf9, 0x00, 0x1c, 0x3e, 0xdb, 0x7b, 0xd6, 0x42, 0xb6, 0x60, 0x42, 0x48, + 0xd7, 0xbc, 0xc3, 0x4e, 0x1b, 0x21, 0x4b, 0xf5, 0x22, 0x7e, 0xe5, 0x11, 0x51, 0x99, 0x53, 0x5f, + 0x68, 0x70, 0x21, 0x6d, 0x98, 0xe5, 0xbf, 0x4d, 0x5d, 0xc7, 0x62, 0x4f, 0x5d, 0xc7, 0x79, 0xf1, + 0x45, 0x67, 0x04, 0xff, 0x84, 0xca, 0x43, 0x8f, 0xc6, 0x90, 0xc1, 0x98, 0x74, 0x80, 0x18, 0x60, + 0xbe, 0x68, 0xcf, 0xf4, 0xd7, 0x70, 0xbc, 0x24, 0xea, 0x5c, 0x4c, 0xd6, 0x99, 0x5c, 0xb9, 0x19, + 0xbc, 0x89, 0x0b, 0xd3, 0x02, 0xca, 0xee, 0xd2, 0xb8, 0xc3, 0x3f, 0x6f, 0xc4, 0xc3, 0x48, 0x94, + 0x72, 0xc1, 0x5c, 0xd6, 0x84, 0xf1, 0x4a, 0x12, 0x1b, 0x7a, 0x92, 0x1f, 0xb9, 0x0d, 0x33, 0xe5, + 0x4e, 0xa7, 0xe9, 0xd1, 0x06, 0x7e, 0x25, 0x4f, 0xa7, 0x6a, 0xc5, 0x29, 0x34, 0x5c, 0x5e, 0x28, + 0x6e, 0x0b, 0xc9, 0x5c, 0xaa, 0x69, 0x5a, 0xeb, 0xdb, 0xb9, 0x54, 0xa3, 0xc9, 0xab, 0x30, 0x86, + 0x3f, 0x34, 0x17, 0x6b, 0x54, 0x02, 0xf0, 0x26, 0xa2, 0x32, 0x22, 0x46, 0x60, 0xc2, 0x92, 0x1e, + 0x66, 0xa9, 0xc0, 0x85, 0x25, 0x71, 0x53, 0x8d, 0xef, 0xa6, 0x8b, 0xd2, 0x52, 0xb3, 0x10, 0x0b, + 0x5d, 0x68, 0xa9, 0x29, 0xec, 0x33, 0xad, 0xef, 0xcf, 0x9b, 0xd3, 0x8e, 0x9c, 0xd7, 0xe4, 0x76, + 0x2d, 0xd0, 0x93, 0x94, 0xdb, 0x35, 0x69, 0xfd, 0x1f, 0xe4, 0x60, 0xf6, 0x76, 0xb0, 0xeb, 0xb6, + 0xbd, 0x6f, 0xf1, 0xc0, 0x96, 0x3e, 0x8e, 0x4b, 0xff, 0x6c, 0x44, 0x4f, 0x2a, 0xab, 0x8a, 0xaf, + 0x55, 0xcc, 0x66, 0x0a, 0x4e, 0x19, 0x3b, 0xab, 0x3d, 0x68, 0xfb, 0x8e, 0x0d, 0xd3, 0x92, 0xdb, + 0x70, 0x74, 0x0e, 0xb7, 0x7e, 0x2c, 0x0f, 0xe3, 0xda, 0x12, 0x20, 0x9f, 0x87, 0x09, 0x9d, 0x8f, + 0xae, 0x40, 0xd2, 0xab, 0xb5, 0x0d, 0x2c, 0xd4, 0x20, 0x51, 0xb7, 0x65, 0x68, 0x90, 0xd8, 0x44, + 0x47, 0xe8, 0x11, 0xaf, 0x36, 0xef, 0x66, 0x5c, 0x6d, 0x8e, 0x94, 0x77, 0xf7, 0xad, 0xf4, 0x05, + 0x67, 0xf0, 0x34, 0xb9, 0xd6, 0x4f, 0xe6, 0xa0, 0x94, 0x5c, 0xa4, 0x9f, 0x4a, 0xaf, 0x1c, 0xe1, + 0xb5, 0xe0, 0x47, 0xf3, 0x2a, 0xe6, 0xb8, 0xf4, 0xe8, 0x79, 0x5a, 0x4d, 0x62, 0xde, 0x36, 0x14, + 0xf9, 0xcf, 0x9a, 0xc1, 0x69, 0x74, 0x5f, 0xd8, 0xec, 0x88, 0x54, 0x43, 0xdf, 0xf9, 0x85, 0xc5, + 0x67, 0xac, 0xf7, 0x61, 0x2e, 0xd9, 0x1d, 0xa8, 0xcc, 0x2f, 0xc3, 0xb4, 0x09, 0x4f, 0x66, 0x2c, + 0x48, 0x52, 0xd9, 0x49, 0x7c, 0xeb, 0xf7, 0xf3, 0x49, 0xde, 0xc2, 0x3c, 0x86, 0x6d, 0x3a, 0x6d, + 0x77, 0xbb, 0xa9, 0x22, 0x96, 0xf3, 0x4d, 0x87, 0x83, 0x6c, 0x59, 0x76, 0x94, 0x14, 0x1e, 0xca, + 0x2f, 0xa5, 0x90, 0xed, 0x97, 0x42, 0xae, 0x26, 0x6c, 0xcc, 0xb4, 0x20, 0x0a, 0x0f, 0xe9, 0xb6, + 0x13, 0xdb, 0x99, 0x25, 0x4c, 0xcb, 0x56, 0x60, 0xce, 0x88, 0x08, 0x2a, 0xe9, 0x87, 0x63, 0xdd, + 0x6d, 0x84, 0x05, 0x9c, 0x38, 0x13, 0x99, 0xac, 0xc1, 0x28, 0x6b, 0xe6, 0x2d, 0xb7, 0x23, 0x74, + 0xf4, 0x44, 0x79, 0xa9, 0x35, 0xd5, 0x85, 0x4f, 0x73, 0x54, 0x6b, 0x52, 0x76, 0xe4, 0x1b, 0x69, + 0xab, 0x39, 0xa2, 0xf5, 0x2f, 0x72, 0x6c, 0xfd, 0xd7, 0xef, 0x7f, 0xc6, 0xf2, 0x80, 0xb0, 0x4f, + 0xea, 0x63, 0xbd, 0xf5, 0x47, 0x79, 0x1e, 0x74, 0x5e, 0x4c, 0x9f, 0x37, 0x60, 0x64, 0xcb, 0x0d, + 0x76, 0x69, 0x24, 0xc2, 0xb1, 0xeb, 0x5c, 0x78, 0x41, 0x1c, 0xe2, 0x21, 0xc2, 0xdf, 0xb6, 0x20, + 0xd0, 0x75, 0x61, 0xf9, 0x81, 0x74, 0x61, 0x9a, 0xa6, 0xb7, 0xf0, 0xc4, 0x34, 0xbd, 0xdf, 0xa3, + 0xe2, 0xcb, 0x97, 0xa3, 0x01, 0x02, 0x4e, 0x9e, 0x49, 0xe6, 0x67, 0x48, 0x85, 0x06, 0x8d, 0xd9, + 0x91, 0xab, 0x7a, 0xc6, 0x07, 0xcd, 0xd5, 0xe3, 0x90, 0xdc, 0x0e, 0xd6, 0x1f, 0x15, 0x78, 0x1f, + 0x8b, 0x8e, 0x3a, 0x67, 0xb8, 0x81, 0xe1, 0x3a, 0x61, 0x1b, 0xbd, 0xee, 0x91, 0x8b, 0x86, 0x1d, + 0xe7, 0x60, 0x88, 0xcd, 0x4d, 0xd1, 0x9b, 0x88, 0xc7, 0xe6, 0xaf, 0x8e, 0xc7, 0xca, 0xd9, 0x5a, + 0xc6, 0x33, 0x49, 0xcf, 0xb1, 0x83, 0xc7, 0x96, 0xbe, 0x96, 0x11, 0x83, 0x9c, 0x87, 0xa1, 0x0d, + 0xbf, 0x21, 0x03, 0x9b, 0xce, 0xa1, 0x33, 0xb0, 0xdf, 0xd0, 0x58, 0xce, 0xe7, 0x6c, 0xc4, 0x60, + 0xdf, 0xaa, 0x42, 0xb6, 0xeb, 0xdf, 0xda, 0xda, 0x71, 0x45, 0xf4, 0x2d, 0xfd, 0x5b, 0xe3, 0xe8, + 0xee, 0xab, 0x30, 0x65, 0x66, 0xd9, 0x14, 0xb6, 0x6d, 0xa8, 0xb1, 0x4d, 0x24, 0xeb, 0xd4, 0x15, + 0xed, 0x26, 0x11, 0x59, 0x86, 0x49, 0x23, 0xa0, 0x9a, 0x78, 0x2c, 0x43, 0xf5, 0xa6, 0x19, 0x8e, + 0x4d, 0x57, 0x6f, 0x1a, 0x24, 0xec, 0x3c, 0x17, 0xed, 0xd7, 0x9e, 0xcc, 0x52, 0x6d, 0x17, 0x38, + 0xe4, 0x0a, 0x14, 0xb9, 0xd7, 0x6d, 0xb5, 0xa2, 0x3f, 0x7c, 0x84, 0x08, 0x4b, 0x78, 0xad, 0x4b, + 0x44, 0xcd, 0xcb, 0xf2, 0x73, 0x50, 0x12, 0x5b, 0x52, 0x9c, 0xcf, 0xf2, 0x39, 0x18, 0x5a, 0xa9, + 0x56, 0x6c, 0x7d, 0x1b, 0xa9, 0x7b, 0x8d, 0xc0, 0x46, 0x28, 0x9a, 0xee, 0x6f, 0xd0, 0xe8, 0xa1, + 0x1f, 0xdc, 0xb7, 0x69, 0x18, 0x05, 0x1e, 0x4f, 0xd1, 0x84, 0x0b, 0xf1, 0xf3, 0xe4, 0x2d, 0x18, + 0x46, 0x23, 0xab, 0xc4, 0xc9, 0x90, 0xac, 0x63, 0x79, 0x52, 0x4c, 0xe0, 0x61, 0xb4, 0xd8, 0xb2, + 0x39, 0x11, 0x79, 0x03, 0x86, 0x2a, 0xb4, 0xbd, 0x9f, 0x48, 0x52, 0x93, 0x22, 0x56, 0x1b, 0x42, + 0x83, 0xb6, 0xf7, 0x6d, 0x24, 0xb1, 0x7e, 0x32, 0x0f, 0xc7, 0x32, 0x9a, 0x75, 0xf7, 0xf3, 0x4f, + 0xe9, 0xae, 0xb8, 0x6c, 0xec, 0x8a, 0xf2, 0xbd, 0xb3, 0x67, 0xc7, 0x67, 0x6e, 0x92, 0x3f, 0x97, + 0x83, 0x13, 0xe6, 0x04, 0x15, 0x56, 0x95, 0x77, 0xaf, 0x90, 0x37, 0x61, 0x64, 0x8d, 0xba, 0x0d, + 0x2a, 0x13, 0x58, 0x1c, 0x53, 0xf1, 0x71, 0xb8, 0x4b, 0x21, 0x2f, 0xe4, 0x6c, 0x63, 0x07, 0x14, + 0x0e, 0x25, 0x15, 0xd1, 0x38, 0x2e, 0x8f, 0x5b, 0xd2, 0xbd, 0x37, 0xab, 0xaa, 0x3e, 0x56, 0x03, + 0xdf, 0xcd, 0xc1, 0xb3, 0x7d, 0x68, 0xd8, 0xc0, 0xb1, 0xa1, 0xd7, 0x07, 0x0e, 0x4f, 0x54, 0x84, + 0x92, 0x77, 0x60, 0x7a, 0x4b, 0xc8, 0xf3, 0x72, 0x38, 0xf2, 0xf1, 0x7a, 0x91, 0xa2, 0xbe, 0x23, + 0xc7, 0x25, 0x89, 0x6c, 0xf8, 0x9d, 0x17, 0xfa, 0xfa, 0x9d, 0xeb, 0x6e, 0xdc, 0x43, 0x83, 0xba, + 0x71, 0xbf, 0x9f, 0xcc, 0x4d, 0x2f, 0xa2, 0xe9, 0xc5, 0x4e, 0xec, 0xb9, 0xde, 0x4e, 0xec, 0x7d, + 0x63, 0x76, 0x59, 0x3f, 0x96, 0x83, 0x92, 0xc9, 0xfb, 0x93, 0x8e, 0xe7, 0xdb, 0xc6, 0x78, 0x3e, + 0x9b, 0x3d, 0x9e, 0xbd, 0x07, 0xf2, 0xff, 0xc8, 0x25, 0x3f, 0x76, 0xa0, 0x11, 0xb4, 0x60, 0xa4, + 0xe2, 0xb7, 0x5c, 0xaf, 0xad, 0xa7, 0x47, 0x6d, 0x20, 0xc4, 0x16, 0x25, 0x83, 0xf9, 0xfc, 0x9f, + 0x81, 0xe1, 0x0d, 0xbf, 0x5d, 0xae, 0x08, 0xa3, 0x43, 0xe4, 0xd3, 0xf6, 0xdb, 0x8e, 0xdb, 0xb0, + 0x79, 0x01, 0x59, 0x07, 0xa8, 0xd5, 0x03, 0x4a, 0xdb, 0x35, 0xef, 0x5b, 0x34, 0x21, 0x69, 0xb0, + 0x1e, 0x6a, 0x76, 0x71, 0x63, 0xc1, 0x37, 0x9e, 0x10, 0x11, 0x9d, 0xd0, 0xfb, 0x96, 0xbe, 0xdf, + 0x6a, 0xf4, 0x16, 0x05, 0x88, 0x89, 0x30, 0x57, 0x9c, 0xd7, 0x10, 0xf9, 0x7f, 0x27, 0x45, 0xae, + 0x38, 0x06, 0x30, 0x72, 0xc5, 0x31, 0x00, 0xdb, 0xda, 0xd7, 0xa8, 0xb7, 0xbb, 0xc7, 0xad, 0x4f, + 0x26, 0xf9, 0x54, 0xdd, 0x43, 0x88, 0xbe, 0xb5, 0x73, 0x1c, 0xeb, 0x5f, 0x0e, 0xc3, 0x49, 0x9b, + 0xee, 0x7a, 0x4c, 0x4c, 0xbe, 0x13, 0x7a, 0xed, 0x5d, 0xc3, 0x2b, 0xdb, 0x4a, 0x4c, 0x24, 0x11, + 0xc2, 0x98, 0x41, 0x54, 0xc7, 0x5c, 0x80, 0x22, 0x3b, 0x15, 0xb5, 0xb9, 0x84, 0x6f, 0x28, 0x98, + 0xdc, 0x9c, 0x4f, 0x72, 0x59, 0x4c, 0x5e, 0x16, 0xa7, 0xb6, 0x16, 0x64, 0x9e, 0x9d, 0xda, 0x1f, + 0x1d, 0x2c, 0x42, 0x6d, 0x3f, 0x8c, 0x28, 0xde, 0xd8, 0xc4, 0xc9, 0xad, 0x44, 0xeb, 0xa1, 0x1e, + 0xa2, 0xf5, 0x2d, 0x98, 0x2b, 0x37, 0xf8, 0x66, 0xed, 0x36, 0x37, 0x03, 0xaf, 0x5d, 0xf7, 0x3a, + 0x6e, 0x53, 0x5e, 0x17, 0xb1, 0x97, 0x5d, 0x55, 0xee, 0x74, 0x14, 0x82, 0x9d, 0x49, 0xc6, 0x3e, + 0xa3, 0xb2, 0x51, 0x43, 0xe7, 0x65, 0xf1, 0x3c, 0x86, 0x9f, 0xd1, 0x68, 0x87, 0xf8, 0x15, 0xa1, + 0xad, 0x8a, 0x51, 0xa8, 0x47, 0x73, 0x86, 0xad, 0xf5, 0x5a, 0xec, 0x9d, 0xc4, 0x63, 0xe0, 0x72, + 0x93, 0x87, 0xa8, 0x19, 0xa2, 0xd9, 0x83, 0x81, 0x17, 0xd3, 0xd5, 0x6a, 0x6b, 0x8c, 0xae, 0x98, + 0xa2, 0x0b, 0xc3, 0x3d, 0x9d, 0x8e, 0xe3, 0x91, 0x4b, 0x6c, 0x2a, 0xb4, 0xfc, 0x88, 0xe2, 0x3c, + 0x1f, 0x8b, 0xaf, 0x00, 0x01, 0x42, 0xf9, 0x15, 0x40, 0x43, 0x21, 0x6f, 0xc1, 0xec, 0xea, 0xca, + 0x92, 0x54, 0x6a, 0x56, 0xfc, 0x7a, 0x17, 0x1f, 0xa8, 0x01, 0xeb, 0xc3, 0x31, 0xa4, 0xf5, 0x25, + 0x36, 0xb9, 0xb3, 0xd0, 0xc8, 0x39, 0x18, 0xad, 0x56, 0x78, 0xdf, 0x8f, 0xeb, 0x89, 0x1e, 0x84, + 0xe1, 0x87, 0x2c, 0x24, 0xb7, 0x63, 0x19, 0x75, 0xe2, 0x50, 0x61, 0xf2, 0xe4, 0x00, 0xf2, 0xe9, + 0x1b, 0x30, 0xb9, 0xec, 0x47, 0xd5, 0x76, 0x18, 0xb9, 0xed, 0x3a, 0xad, 0x56, 0xf4, 0xa8, 0x8b, + 0xdb, 0x7e, 0xe4, 0x78, 0xa2, 0x84, 0xb5, 0xdc, 0xc4, 0x24, 0x5f, 0x44, 0xd2, 0xeb, 0xb4, 0x4d, + 0x83, 0x38, 0xda, 0xe2, 0x30, 0xef, 0x5b, 0x46, 0xba, 0xab, 0x4a, 0x6c, 0x13, 0x51, 0x24, 0xa1, + 0xe0, 0x49, 0x99, 0x56, 0xfc, 0x06, 0x0d, 0xef, 0x5e, 0xfe, 0x8c, 0x25, 0xa1, 0xd0, 0xbe, 0x0d, + 0xb7, 0xcc, 0xcb, 0x99, 0xfb, 0xeb, 0xbf, 0x8b, 0x49, 0x28, 0x52, 0xb8, 0xe4, 0x8b, 0x30, 0x8c, + 0x3f, 0x85, 0xb0, 0x35, 0x9b, 0xc1, 0x36, 0x16, 0xb4, 0xea, 0x3c, 0xa7, 0x32, 0x12, 0x90, 0x2a, + 0x8c, 0x0a, 0x39, 0xff, 0x28, 0xa1, 0xd4, 0xc5, 0x85, 0x81, 0xcf, 0x0c, 0x41, 0x6f, 0x35, 0x60, + 0x42, 0xaf, 0x90, 0xad, 0x88, 0x35, 0x37, 0xdc, 0xa3, 0x0d, 0xf6, 0x4b, 0x64, 0x41, 0xc1, 0x15, + 0xb1, 0x87, 0x50, 0x87, 0xb5, 0xc3, 0xd6, 0x50, 0xd8, 0x16, 0x5f, 0x0d, 0xef, 0x84, 0xa2, 0x29, + 0xe2, 0xe6, 0xef, 0xa1, 0x16, 0xa9, 0x61, 0x8b, 0x22, 0xeb, 0x7b, 0x60, 0x6e, 0xa3, 0xdb, 0x6c, + 0xba, 0xdb, 0x4d, 0x2a, 0xa3, 0x64, 0x47, 0x6e, 0x44, 0xc9, 0x32, 0x0c, 0xd7, 0xb4, 0x2c, 0x8d, + 0xb3, 0x2a, 0x0c, 0x79, 0x8c, 0x83, 0x36, 0x76, 0x39, 0x74, 0x24, 0x4f, 0xe4, 0x67, 0xe4, 0xa4, + 0xd6, 0xef, 0xc6, 0xd9, 0xbd, 0xb7, 0x02, 0xb7, 0x7e, 0x5f, 0x65, 0xea, 0x1c, 0x34, 0x51, 0xf9, + 0x0d, 0xd9, 0x08, 0xf3, 0xfc, 0xcc, 0x6a, 0xf0, 0x61, 0x8d, 0x21, 0x6f, 0xc1, 0xb8, 0x38, 0x43, + 0xb5, 0xf0, 0x47, 0x18, 0x63, 0x42, 0xdc, 0x3e, 0x92, 0xc6, 0x11, 0x3a, 0x3a, 0x8a, 0x06, 0xe6, + 0xa7, 0xdc, 0xbd, 0xfc, 0x69, 0x88, 0x06, 0x66, 0x1d, 0x7d, 0xa6, 0xee, 0x6f, 0x8e, 0x27, 0xfb, + 0x56, 0xcc, 0xdd, 0xab, 0x7a, 0xc0, 0x93, 0x5c, 0x7c, 0x51, 0x8b, 0x03, 0x9e, 0xe8, 0x17, 0x35, + 0x85, 0xaa, 0xc6, 0x24, 0x7f, 0xc8, 0x98, 0xbc, 0x23, 0xc7, 0xa4, 0xd0, 0x7b, 0x62, 0xcc, 0xf6, + 0x19, 0x87, 0x5a, 0xbc, 0x42, 0x86, 0x06, 0xba, 0xe5, 0x3f, 0x83, 0x91, 0x5d, 0x39, 0x49, 0x72, + 0x17, 0x15, 0x9c, 0x74, 0xd5, 0xc1, 0xf0, 0xe0, 0x4c, 0x0f, 0xd9, 0x9a, 0xbf, 0x04, 0x13, 0xe5, + 0x28, 0x72, 0xeb, 0x7b, 0xb4, 0x51, 0x61, 0xdb, 0x93, 0x16, 0x9b, 0xc1, 0x15, 0x70, 0xfd, 0x0d, + 0x47, 0xc7, 0xe5, 0xb1, 0xc6, 0xdc, 0x50, 0x58, 0xeb, 0xa9, 0x58, 0x63, 0x0c, 0x62, 0xc6, 0x1a, + 0x63, 0x10, 0x72, 0x09, 0x46, 0xab, 0xed, 0x07, 0x1e, 0xeb, 0x93, 0x62, 0x9c, 0xb6, 0xd7, 0xe3, + 0x20, 0x7d, 0x73, 0x15, 0x58, 0xe4, 0x0d, 0x4d, 0xc6, 0x1e, 0x8b, 0xef, 0xd3, 0x5c, 0x03, 0xa3, + 0xbc, 0xba, 0x75, 0xf9, 0x59, 0x09, 0xdd, 0x57, 0x61, 0x54, 0x2a, 0xd6, 0x20, 0xbe, 0x43, 0x0b, + 0xca, 0xb4, 0xf7, 0xa7, 0x44, 0xc6, 0xe4, 0x8e, 0x5a, 0x36, 0x97, 0x71, 0x2d, 0xb9, 0xa3, 0x96, + 0xcd, 0xc5, 0x48, 0xee, 0xa8, 0xe5, 0x75, 0x51, 0x3a, 0x89, 0x89, 0x43, 0x75, 0x12, 0x77, 0x61, + 0x62, 0xd3, 0x0d, 0x22, 0x8f, 0xc9, 0x28, 0xed, 0x28, 0x9c, 0x9f, 0x34, 0xd4, 0x78, 0x5a, 0xd1, + 0xf2, 0x69, 0x99, 0x8f, 0xb0, 0xa3, 0xe1, 0x9b, 0x89, 0xf3, 0x62, 0x78, 0xb6, 0xad, 0xde, 0xd4, + 0x27, 0xb1, 0xd5, 0xc3, 0x4e, 0x45, 0xd5, 0xcd, 0x74, 0xac, 0x20, 0x40, 0x19, 0x3a, 0xa1, 0xbf, + 0x51, 0x88, 0xe4, 0xab, 0x30, 0xc1, 0xfe, 0xde, 0xf4, 0x9b, 0x5e, 0xdd, 0xa3, 0xe1, 0x7c, 0x09, + 0x3f, 0xee, 0x74, 0xe6, 0xea, 0x47, 0xa4, 0xfd, 0x1a, 0x8d, 0xf8, 0x02, 0x46, 0xc6, 0x49, 0x9d, + 0xac, 0xc1, 0x8d, 0xbc, 0x0b, 0x13, 0x6c, 0xf6, 0x6d, 0xbb, 0x21, 0x17, 0x4d, 0x67, 0x62, 0x6b, + 0xcb, 0x86, 0x80, 0xa7, 0xc2, 0xfd, 0xe9, 0x04, 0xec, 0x98, 0x2f, 0x77, 0xf8, 0x06, 0x49, 0xb4, + 0xd9, 0xde, 0x49, 0x6d, 0x8e, 0x12, 0x8d, 0xbc, 0x07, 0x13, 0xe5, 0x4e, 0x27, 0xde, 0x71, 0x66, + 0x35, 0xbd, 0x4c, 0xa7, 0xe3, 0x64, 0xee, 0x3a, 0x06, 0x45, 0x72, 0x63, 0x9e, 0x3b, 0xd2, 0xc6, + 0x4c, 0x5e, 0x53, 0xd2, 0xfa, 0xb1, 0x58, 0xc9, 0x28, 0xee, 0x31, 0x86, 0xe8, 0xcf, 0x05, 0xf7, + 0x15, 0x98, 0xe4, 0x5a, 0x37, 0x29, 0xcd, 0x1c, 0x4f, 0xad, 0x9e, 0x0c, 0xa1, 0xc6, 0xa4, 0x21, + 0xab, 0x30, 0xc5, 0x1d, 0xdd, 0x9a, 0x22, 0x0e, 0xe3, 0xfc, 0x89, 0x38, 0xd1, 0x34, 0xf7, 0x8f, + 0x6b, 0x62, 0x78, 0x6e, 0xd7, 0xe0, 0x92, 0x20, 0xb2, 0xfe, 0x38, 0x07, 0x27, 0x7a, 0x8c, 0xb8, + 0x8a, 0xd2, 0x97, 0xeb, 0x1f, 0xa5, 0x8f, 0xed, 0x1c, 0xe6, 0x25, 0x1d, 0xbf, 0x5f, 0x48, 0x59, + 0xfa, 0x78, 0x49, 0x79, 0xcb, 0x07, 0x22, 0x22, 0xe0, 0x8b, 0xaa, 0x6f, 0xf8, 0xa8, 0x29, 0x2c, + 0xa4, 0x0f, 0x21, 0x81, 0xc7, 0x1b, 0xb5, 0x6c, 0x3d, 0x3e, 0x58, 0x3c, 0x2d, 0x02, 0xec, 0xab, + 0x61, 0xfd, 0xd0, 0x37, 0x56, 0x70, 0x06, 0x6b, 0xeb, 0x20, 0x07, 0xe3, 0xda, 0x3a, 0x24, 0x67, + 0x34, 0xb7, 0xb9, 0x12, 0x4f, 0xd1, 0xa0, 0x71, 0xc8, 0xf3, 0x93, 0x08, 0x17, 0x55, 0xfe, 0x70, + 0x7d, 0xe8, 0x2d, 0x26, 0x0a, 0x69, 0x91, 0x0c, 0x5b, 0x86, 0xf2, 0xd2, 0xc6, 0x72, 0x4c, 0xa3, + 0xea, 0x86, 0x51, 0xb9, 0x1e, 0x79, 0x0f, 0xe8, 0x00, 0x87, 0x4e, 0x9c, 0x46, 0xd5, 0x0d, 0x23, + 0xc7, 0x45, 0xb2, 0x54, 0x1a, 0x55, 0xc5, 0xd0, 0xfa, 0x81, 0x1c, 0xc0, 0x9d, 0xea, 0x0a, 0x86, + 0x22, 0xfd, 0xa4, 0x42, 0x41, 0x76, 0x78, 0x37, 0xc9, 0xbd, 0x8f, 0x38, 0xf0, 0x3f, 0xe4, 0x60, + 0xca, 0x44, 0x23, 0xef, 0xc0, 0x74, 0xad, 0x1e, 0xf8, 0xcd, 0xe6, 0xb6, 0x5b, 0xbf, 0xbf, 0xee, + 0xb5, 0x29, 0x0f, 0xac, 0x35, 0xcc, 0xcf, 0xa2, 0x50, 0x15, 0x39, 0x4d, 0x56, 0x66, 0x27, 0x91, + 0xc9, 0x0f, 0xe6, 0x60, 0xb2, 0xb6, 0xe7, 0x3f, 0x8c, 0xb3, 0xdb, 0xf3, 0x01, 0xf9, 0x1a, 0x5b, + 0xdb, 0xe1, 0x9e, 0xff, 0xd0, 0xc9, 0x48, 0x71, 0xff, 0xd1, 0xc1, 0xe2, 0xdb, 0x83, 0x3d, 0x13, + 0xd7, 0x7d, 0xbc, 0xc9, 0x44, 0xe1, 0x45, 0xa3, 0x12, 0xdb, 0xac, 0xd3, 0xfa, 0x8b, 0x1c, 0x8c, + 0xe3, 0x9d, 0xa7, 0xd9, 0x44, 0x99, 0xeb, 0xb3, 0x94, 0x2c, 0x48, 0x7d, 0x57, 0x9f, 0x81, 0x7d, + 0x1d, 0xa6, 0x13, 0x68, 0xc4, 0x82, 0x91, 0x1a, 0xba, 0x4a, 0xeb, 0x0a, 0x0a, 0xee, 0x3c, 0x6d, + 0x8b, 0x12, 0x6b, 0x55, 0x23, 0xbb, 0x7b, 0x19, 0x5f, 0x19, 0x97, 0x00, 0x3c, 0x09, 0x92, 0x37, + 0x1b, 0x92, 0x6c, 0xc9, 0xdd, 0xcb, 0xb6, 0x86, 0x65, 0x6d, 0xc0, 0x48, 0xcd, 0x0f, 0xa2, 0xe5, + 0x7d, 0x7e, 0x99, 0xa8, 0xd0, 0xb0, 0xae, 0x3f, 0x23, 0x7a, 0xa8, 0xba, 0xaf, 0xdb, 0xa2, 0x88, + 0x2c, 0xc2, 0xf0, 0x35, 0x8f, 0x36, 0x1b, 0xba, 0xbd, 0xe8, 0x0e, 0x03, 0xd8, 0x1c, 0xce, 0x2e, + 0x5c, 0xc7, 0xe3, 0x88, 0xdd, 0xb1, 0x61, 0xea, 0x27, 0x5d, 0x37, 0x2b, 0x46, 0xff, 0x3e, 0x6f, + 0xe6, 0x0c, 0x36, 0x6a, 0xea, 0xd3, 0xd5, 0xff, 0x71, 0x0e, 0x16, 0x7a, 0x93, 0xe8, 0xb6, 0xae, + 0xb9, 0x3e, 0xb6, 0xae, 0x2f, 0x26, 0x9f, 0xbd, 0x10, 0x4d, 0x3c, 0x7b, 0xc5, 0x8f, 0x5d, 0x15, + 0x34, 0x35, 0xae, 0xab, 0x94, 0xee, 0x67, 0xfa, 0xb4, 0x19, 0x11, 0xf9, 0x30, 0x47, 0x48, 0x63, + 0x0b, 0x5a, 0xeb, 0x37, 0x86, 0xe0, 0x64, 0x4f, 0x0a, 0xb2, 0xa6, 0x05, 0xff, 0x9f, 0x52, 0x61, + 0xc7, 0x7b, 0xe2, 0x5f, 0xc4, 0x7f, 0xd1, 0x9a, 0x2c, 0xe9, 0x4c, 0x73, 0x5b, 0x05, 0x7d, 0xcf, + 0x23, 0xaf, 0x57, 0x0e, 0xe5, 0xc5, 0xd1, 0x91, 0x19, 0xa4, 0xe3, 0xbf, 0xa3, 0xdb, 0x15, 0x8d, + 0x5c, 0xaf, 0x19, 0xea, 0xcb, 0xae, 0xc1, 0x41, 0xb6, 0x2c, 0x8b, 0x0d, 0x90, 0x87, 0xb2, 0x0d, + 0x90, 0xad, 0x7f, 0x99, 0x83, 0x31, 0xd5, 0x6c, 0xb2, 0x00, 0xc7, 0xb7, 0xec, 0xf2, 0xca, 0xaa, + 0xb3, 0xf5, 0xfe, 0xe6, 0xaa, 0x73, 0x67, 0xa3, 0xb6, 0xb9, 0xba, 0x52, 0xbd, 0x56, 0x5d, 0xad, + 0x94, 0x9e, 0x21, 0x33, 0x30, 0x79, 0x67, 0xe3, 0xe6, 0xc6, 0xed, 0x7b, 0x1b, 0xce, 0xaa, 0x6d, + 0xdf, 0xb6, 0x4b, 0x39, 0x32, 0x09, 0x63, 0xf6, 0x72, 0x79, 0xc5, 0xd9, 0xb8, 0x5d, 0x59, 0x2d, + 0xe5, 0x49, 0x09, 0x26, 0x56, 0x6e, 0x6f, 0x6c, 0xac, 0xae, 0x6c, 0x55, 0xef, 0x56, 0xb7, 0xde, + 0x2f, 0x15, 0x08, 0x81, 0x29, 0x44, 0xd8, 0xb4, 0xab, 0x1b, 0x2b, 0xd5, 0xcd, 0xf2, 0x7a, 0x69, + 0x88, 0xc1, 0x18, 0xbe, 0x06, 0x1b, 0x56, 0x8c, 0x6e, 0xde, 0x59, 0x5e, 0x2d, 0x8d, 0x30, 0x14, + 0xf6, 0x97, 0x86, 0x32, 0xca, 0xaa, 0x47, 0x94, 0x4a, 0x79, 0xab, 0xbc, 0x5c, 0xae, 0xad, 0x96, + 0x8a, 0xe4, 0x04, 0xcc, 0x1a, 0x20, 0x67, 0xfd, 0xf6, 0xf5, 0xea, 0x46, 0x69, 0x8c, 0xcc, 0x41, + 0x49, 0xc1, 0x2a, 0xcb, 0xce, 0x9d, 0xda, 0xaa, 0x5d, 0x82, 0x24, 0x74, 0xa3, 0x7c, 0x6b, 0xb5, + 0x34, 0x6e, 0xbd, 0xcd, 0xdd, 0x9c, 0x78, 0x57, 0x93, 0xe3, 0x40, 0x6a, 0x5b, 0xe5, 0xad, 0x3b, + 0xb5, 0xc4, 0xc7, 0x8f, 0xc3, 0x68, 0xed, 0xce, 0xca, 0xca, 0x6a, 0xad, 0x56, 0xca, 0x11, 0x80, + 0x91, 0x6b, 0xe5, 0xea, 0xfa, 0x6a, 0xa5, 0x94, 0xb7, 0x7e, 0x22, 0x07, 0x33, 0x52, 0x02, 0x94, + 0x6f, 0x18, 0x9f, 0x70, 0x2d, 0xbe, 0x63, 0x5c, 0x6c, 0xa5, 0x17, 0x4a, 0xa2, 0x92, 0x3e, 0xcb, + 0xf0, 0xe7, 0x72, 0x70, 0x2c, 0x13, 0x9b, 0xbc, 0x0f, 0x25, 0xd9, 0x82, 0x5b, 0x6e, 0x54, 0xdf, + 0x8b, 0xf7, 0xb1, 0xd3, 0x89, 0x5a, 0x12, 0x68, 0x5c, 0xad, 0x19, 0xa7, 0x23, 0x4c, 0xb1, 0x19, + 0x3c, 0x58, 0xae, 0xf5, 0x9d, 0x1c, 0x9c, 0xe8, 0x51, 0x0d, 0x59, 0x81, 0x11, 0x15, 0x36, 0xbd, + 0x8f, 0x41, 0xd5, 0xdc, 0x77, 0x0f, 0x16, 0x05, 0x22, 0xe6, 0x6f, 0xc3, 0xbf, 0xec, 0x11, 0x15, + 0x07, 0x1d, 0x83, 0x91, 0xf3, 0xee, 0x3b, 0x99, 0xe8, 0x79, 0x51, 0x53, 0xf9, 0x5e, 0x6d, 0x79, + 0x5c, 0xf4, 0x5d, 0xc1, 0x7d, 0x18, 0x62, 0x34, 0x72, 0xeb, 0xa7, 0x73, 0x4c, 0xb8, 0x4b, 0x22, + 0x32, 0x99, 0xb7, 0x1c, 0x86, 0xdd, 0x16, 0xb5, 0xfd, 0x26, 0x2d, 0xdb, 0x1b, 0xe2, 0xd8, 0x40, + 0x69, 0xd5, 0xc5, 0x02, 0xbc, 0x56, 0x38, 0x6e, 0xd0, 0x36, 0x1e, 0x4f, 0x75, 0x1a, 0xf2, 0x06, + 0x80, 0xca, 0xf7, 0x2f, 0x83, 0x1a, 0xf0, 0xa0, 0x1e, 0x02, 0x6a, 0xca, 0xdb, 0x1a, 0xb2, 0xf5, + 0x37, 0x73, 0x30, 0x21, 0x2e, 0x4d, 0xe5, 0x26, 0x0d, 0xa2, 0x4f, 0x36, 0xbd, 0xde, 0x30, 0xa6, + 0x97, 0xf2, 0x1f, 0xd0, 0xf8, 0xb3, 0xe2, 0xcc, 0x99, 0xf5, 0xcf, 0x72, 0x50, 0x4a, 0x22, 0x92, + 0x77, 0xa0, 0x58, 0xa3, 0x0f, 0x68, 0xe0, 0x45, 0xfb, 0x62, 0xa3, 0x94, 0x09, 0x66, 0x38, 0x8e, + 0x28, 0xe3, 0xf3, 0x21, 0x14, 0xbf, 0x6c, 0x45, 0x33, 0xe8, 0x7e, 0xaf, 0xa9, 0x3d, 0x0a, 0x4f, + 0x4a, 0xed, 0x61, 0xfd, 0x2f, 0x79, 0x38, 0x71, 0x9d, 0x46, 0xfa, 0x37, 0xa9, 0xd7, 0xee, 0xcf, + 0x0d, 0xf6, 0x5d, 0xda, 0x97, 0xcc, 0xc3, 0x28, 0x16, 0xc9, 0xf1, 0xb5, 0xe5, 0x4f, 0xb2, 0xac, + 0xe6, 0x75, 0xc1, 0xc8, 0x60, 0xd1, 0xa3, 0xee, 0x8b, 0x5a, 0x4c, 0x7b, 0x35, 0xad, 0xcf, 0xc1, + 0x14, 0x06, 0x6d, 0xed, 0xb2, 0xe5, 0x40, 0x1b, 0x42, 0xfd, 0x53, 0xb4, 0x13, 0x50, 0xf2, 0x32, + 0x94, 0x18, 0xa4, 0x5c, 0xbf, 0xdf, 0xf6, 0x1f, 0x36, 0x69, 0x63, 0x97, 0xf2, 0x04, 0xed, 0x45, + 0x3b, 0x05, 0x97, 0x3c, 0xef, 0xb4, 0xf9, 0xd5, 0x8d, 0x36, 0x50, 0x47, 0x23, 0x78, 0xc6, 0xd0, + 0x85, 0x37, 0x60, 0xfc, 0x63, 0xe6, 0xa7, 0xb0, 0xfe, 0xe7, 0x1c, 0xcc, 0xe1, 0xc7, 0x69, 0x15, + 0xcb, 0xdc, 0x61, 0xb2, 0xb7, 0xb4, 0x90, 0xed, 0x2e, 0x03, 0x99, 0x4b, 0x41, 0xf5, 0x62, 0xac, + 0x13, 0xca, 0x0f, 0xa0, 0x13, 0xaa, 0x1d, 0x25, 0x4f, 0xea, 0x80, 0x2a, 0x2d, 0x9e, 0x85, 0x3f, + 0x1e, 0x72, 0xeb, 0x07, 0xf3, 0x30, 0x6a, 0x53, 0x4c, 0x20, 0x49, 0xce, 0xc1, 0xe8, 0x86, 0x1f, + 0xd1, 0xf0, 0x96, 0x91, 0x2d, 0xb4, 0xcd, 0x40, 0x4e, 0xab, 0x61, 0xcb, 0x42, 0x36, 0xe1, 0x37, + 0x03, 0xbf, 0xd1, 0xad, 0x47, 0xfa, 0x84, 0xef, 0x70, 0x90, 0x2d, 0xcb, 0xc8, 0xab, 0x30, 0x26, + 0x38, 0xab, 0x37, 0x46, 0xb4, 0x8d, 0x0d, 0xa8, 0x4a, 0x40, 0x1a, 0x23, 0xa0, 0x4c, 0xcb, 0x05, + 0x8c, 0x21, 0x4d, 0xa6, 0x4d, 0xc9, 0x0c, 0x52, 0x54, 0x1f, 0xee, 0x23, 0xaa, 0x7f, 0x0e, 0x46, + 0xca, 0x61, 0x48, 0x23, 0xe9, 0xa4, 0x3d, 0xa1, 0x22, 0xe6, 0x84, 0x34, 0xe2, 0x8c, 0x5d, 0x2c, + 0xb7, 0x05, 0x9e, 0xf5, 0x2f, 0xf2, 0x30, 0x8c, 0x7f, 0xe2, 0xbb, 0x6a, 0x50, 0xdf, 0x33, 0xde, + 0x55, 0x83, 0xfa, 0x9e, 0x8d, 0x50, 0x72, 0x19, 0x35, 0x15, 0x32, 0xbb, 0x80, 0xf8, 0x7a, 0x54, + 0xc1, 0x37, 0x62, 0xb0, 0xad, 0xe3, 0xa8, 0x07, 0xe7, 0x42, 0x66, 0x68, 0x86, 0xe3, 0x90, 0xbf, + 0x5d, 0x13, 0x5f, 0x8c, 0x21, 0x64, 0xfc, 0xd0, 0xce, 0xdf, 0xae, 0x61, 0x6f, 0xac, 0x95, 0x97, + 0x5e, 0xbf, 0xaa, 0x27, 0xb6, 0x0d, 0xf7, 0xdc, 0xa5, 0xd7, 0xaf, 0xda, 0xa2, 0x84, 0xf5, 0x2f, + 0xb6, 0x19, 0x1f, 0x5e, 0xb9, 0x53, 0x31, 0xf6, 0x2f, 0x7e, 0x1b, 0x3e, 0xb2, 0xda, 0x31, 0x02, + 0x59, 0x82, 0x71, 0xe1, 0xca, 0x8e, 0xf8, 0x9a, 0xab, 0xb9, 0x70, 0x75, 0xe7, 0x14, 0x3a, 0x12, + 0x7f, 0x82, 0x13, 0x03, 0x24, 0x73, 0xa0, 0x89, 0x27, 0x38, 0x39, 0x84, 0xa1, 0xad, 0xa1, 0xc4, + 0x3e, 0xd1, 0xb1, 0xb3, 0xb0, 0xee, 0x13, 0x8d, 0x41, 0x78, 0x15, 0x82, 0xf5, 0x4b, 0x79, 0x28, + 0x6e, 0x36, 0xbb, 0xbb, 0x5e, 0xfb, 0xee, 0x65, 0x42, 0x00, 0xaf, 0x71, 0x32, 0x4a, 0x33, 0xfb, + 0x9b, 0x9c, 0x84, 0xa2, 0xbc, 0xb9, 0xc9, 0x0d, 0x29, 0x14, 0xb7, 0xb6, 0x79, 0x90, 0xe3, 0x2e, + 0xb2, 0xf5, 0xcb, 0x9f, 0xe4, 0x32, 0xa8, 0xfb, 0x57, 0xaf, 0x8b, 0xda, 0x10, 0x5b, 0x2c, 0xb6, + 0x42, 0x23, 0xaf, 0x01, 0x1e, 0x12, 0xe2, 0xf2, 0x20, 0x15, 0xda, 0xbc, 0x69, 0x42, 0x4e, 0xe1, + 0x24, 0x88, 0x46, 0xae, 0x80, 0x98, 0x98, 0x22, 0xd7, 0xe6, 0x31, 0x93, 0x80, 0x67, 0x2f, 0x92, + 0x24, 0x02, 0x95, 0xbc, 0x05, 0xe3, 0x71, 0xa6, 0xfb, 0x38, 0x85, 0xa6, 0x4e, 0xb9, 0x12, 0x97, + 0xdf, 0xbd, 0x6c, 0xeb, 0xe8, 0xd6, 0x7f, 0x39, 0x02, 0x13, 0x7a, 0x7b, 0x88, 0x0d, 0xb3, 0x61, + 0x93, 0xdd, 0xdd, 0x85, 0xed, 0x53, 0x07, 0x0b, 0xc5, 0x71, 0x7a, 0xc6, 0x6c, 0x10, 0xc3, 0xe3, + 0x86, 0x50, 0xd2, 0x07, 0x7f, 0xed, 0x19, 0x7b, 0x26, 0x8c, 0xc1, 0x1c, 0x8f, 0x94, 0xa1, 0xe8, + 0x77, 0xc2, 0x5d, 0xda, 0xf6, 0xe4, 0x7b, 0xcb, 0x59, 0x83, 0xd1, 0x6d, 0x51, 0x98, 0xe2, 0xa5, + 0xc8, 0xc8, 0xeb, 0x30, 0xe2, 0x77, 0x68, 0xdb, 0xf5, 0xc4, 0x19, 0xf7, 0x6c, 0x82, 0x01, 0x6d, + 0x97, 0xab, 0x1a, 0xa1, 0x40, 0x26, 0x97, 0x60, 0xc8, 0xbf, 0xaf, 0xc6, 0xeb, 0xa4, 0x49, 0x74, + 0x3f, 0x72, 0x35, 0x12, 0x44, 0x64, 0x04, 0x1f, 0xba, 0xad, 0x1d, 0x31, 0x62, 0x26, 0xc1, 0x0d, + 0xb7, 0xb5, 0xa3, 0x13, 0x30, 0x44, 0xf2, 0x2e, 0x40, 0xc7, 0xdd, 0xa5, 0x81, 0xd3, 0xe8, 0x46, + 0xfb, 0x62, 0xdc, 0x4e, 0x1b, 0x64, 0x9b, 0xac, 0xb8, 0xd2, 0x8d, 0xf6, 0x35, 0xda, 0xb1, 0x8e, + 0x04, 0x92, 0x32, 0x40, 0xcb, 0x8d, 0x22, 0x1a, 0xb4, 0x7c, 0x61, 0x7c, 0x36, 0xae, 0x52, 0x54, + 0x72, 0x06, 0xb7, 0x54, 0xb1, 0xc6, 0x41, 0x23, 0xc2, 0x46, 0x7b, 0x81, 0x2b, 0x32, 0x9e, 0x26, + 0x1a, 0xed, 0x05, 0xc6, 0x57, 0x32, 0x44, 0xf2, 0x45, 0x18, 0x6d, 0x78, 0x61, 0xdd, 0x0f, 0x1a, + 0x22, 0x38, 0xc3, 0x73, 0x06, 0x4d, 0x85, 0x97, 0x69, 0x64, 0x12, 0x9d, 0xb5, 0x56, 0xc4, 0x7f, + 0xdb, 0xf0, 0x1f, 0xa2, 0x9a, 0x3f, 0xd9, 0xda, 0x9a, 0x2a, 0xd6, 0x5b, 0x1b, 0x13, 0xb1, 0xa1, + 0xdc, 0xf5, 0xa2, 0xa6, 0xbb, 0x2d, 0xde, 0xb9, 0xcd, 0xa1, 0xbc, 0x8e, 0x45, 0xfa, 0x50, 0x72, + 0x64, 0xf2, 0x06, 0x14, 0x69, 0x3b, 0x0a, 0x5c, 0xc7, 0x6b, 0x08, 0xa7, 0x3d, 0xb3, 0xd1, 0xec, + 0x00, 0x76, 0xab, 0x15, 0xbd, 0xd1, 0x88, 0x5f, 0x6d, 0xb0, 0xfe, 0x09, 0xeb, 0x5e, 0x4b, 0xf8, + 0xda, 0x99, 0xfd, 0x53, 0x5b, 0xa9, 0xde, 0xd2, 0xfb, 0x87, 0x21, 0x92, 0xd3, 0x00, 0xf1, 0x13, + 0x37, 0x7f, 0x90, 0xb0, 0x35, 0xc8, 0x97, 0x86, 0xfe, 0xb7, 0x5f, 0x58, 0xcc, 0x2d, 0x03, 0x14, + 0x65, 0x74, 0x0a, 0x6b, 0x1d, 0x4e, 0xf6, 0x5c, 0x14, 0xe4, 0x02, 0x94, 0x76, 0x5c, 0xa1, 0x12, + 0xab, 0xef, 0xb9, 0xed, 0x36, 0x6d, 0x8a, 0xed, 0x68, 0x5a, 0xc2, 0x57, 0x38, 0x98, 0x73, 0xb6, + 0xde, 0x85, 0xb9, 0xac, 0xde, 0x20, 0xcf, 0xc3, 0x84, 0x1e, 0x88, 0x43, 0x30, 0x19, 0x77, 0x3b, + 0x9e, 0x0c, 0xc5, 0x21, 0x18, 0xfc, 0x7a, 0x0e, 0x9e, 0xeb, 0xb7, 0xb6, 0xc8, 0x02, 0x14, 0x3b, + 0x81, 0xe7, 0xa3, 0x0c, 0xc7, 0x77, 0x40, 0xf5, 0x9b, 0x9c, 0x02, 0xe0, 0xc2, 0x46, 0xe4, 0xee, + 0x0a, 0x63, 0x7c, 0x7b, 0x0c, 0x21, 0x5b, 0xee, 0x6e, 0x48, 0x5e, 0x81, 0x99, 0x06, 0xdd, 0x71, + 0xbb, 0xcd, 0xc8, 0x09, 0xeb, 0x7b, 0xb4, 0x81, 0xfe, 0x2f, 0x68, 0x64, 0x65, 0x97, 0x44, 0x41, + 0x4d, 0xc2, 0x53, 0x2d, 0x1e, 0xee, 0xd1, 0xe2, 0x1b, 0x43, 0xc5, 0x5c, 0x29, 0x6f, 0xa3, 0xad, + 0x91, 0xf5, 0x7d, 0x79, 0x98, 0xef, 0x35, 0x99, 0xc8, 0xdb, 0x59, 0x7d, 0xc0, 0xb5, 0xfa, 0x3a, + 0x5c, 0xd7, 0xea, 0x6b, 0xb5, 0x91, 0x25, 0x50, 0xde, 0x2b, 0x87, 0x79, 0xa2, 0x4b, 0x18, 0xa3, + 0xe9, 0xb8, 0x61, 0xf8, 0x90, 0xad, 0x97, 0x82, 0x16, 0x68, 0x4f, 0xc0, 0x74, 0x1a, 0x09, 0x23, + 0x5f, 0x00, 0xa8, 0x37, 0xfd, 0x90, 0xe2, 0xe3, 0xb9, 0x38, 0x88, 0xb9, 0x09, 0xaf, 0x82, 0xea, + 0xaf, 0xa5, 0x08, 0x5d, 0xf1, 0x1b, 0x54, 0x0c, 0xa0, 0x0b, 0x27, 0x7a, 0xec, 0x1e, 0x6c, 0x78, + 0xe2, 0xc4, 0x9e, 0x32, 0x4d, 0x40, 0x57, 0xa5, 0xf7, 0x4c, 0xf6, 0x78, 0xbe, 0xd7, 0x1c, 0xd9, + 0x07, 0x92, 0xde, 0x22, 0x18, 0x77, 0x61, 0x88, 0xda, 0x0d, 0x14, 0x77, 0x0e, 0xb9, 0x13, 0x34, + 0xc9, 0x22, 0x8c, 0xcb, 0x34, 0x40, 0x4c, 0xd0, 0xe5, 0xcc, 0x41, 0x80, 0x6e, 0x52, 0x9c, 0x3c, + 0x18, 0x0f, 0x12, 0x7d, 0x94, 0xc4, 0x11, 0x3a, 0x86, 0x90, 0xad, 0xfd, 0x8e, 0xfc, 0xba, 0xe7, + 0xe4, 0xfc, 0x36, 0x37, 0x6e, 0x51, 0xfa, 0x33, 0x39, 0x39, 0xfc, 0xe9, 0x9d, 0xef, 0xb0, 0xf6, + 0x11, 0x40, 0x8f, 0x12, 0xd1, 0x30, 0xfc, 0x9b, 0x1d, 0xe9, 0x72, 0xd5, 0x89, 0x23, 0x5d, 0xfc, + 0x24, 0xe7, 0x60, 0x3a, 0xe0, 0x36, 0x87, 0x91, 0x2f, 0xfa, 0x13, 0x47, 0xca, 0x9e, 0xe4, 0xe0, + 0x2d, 0x1f, 0xfb, 0x54, 0xb4, 0xeb, 0x86, 0xea, 0x30, 0xed, 0x20, 0x20, 0x17, 0x61, 0x8c, 0x1d, + 0x04, 0x18, 0xe7, 0x22, 0x61, 0xca, 0x8e, 0x78, 0x78, 0xac, 0xda, 0xc5, 0x0f, 0xc5, 0xdf, 0x82, + 0xd7, 0x3f, 0xcd, 0x49, 0x66, 0xfa, 0x31, 0x44, 0x4e, 0xc0, 0xa8, 0x1f, 0xec, 0x6a, 0x9f, 0x36, + 0xe2, 0x07, 0xbb, 0xec, 0xbb, 0xce, 0x43, 0x89, 0x7b, 0x56, 0x70, 0x97, 0xf5, 0x70, 0xbf, 0xcd, + 0xef, 0xa9, 0x45, 0x7b, 0x8a, 0xc3, 0x31, 0xd7, 0xe9, 0x7e, 0xbb, 0xce, 0x30, 0xc3, 0xd0, 0x77, + 0xf4, 0xe0, 0x36, 0xe2, 0xb3, 0xa7, 0xc2, 0xd0, 0x8f, 0xa3, 0xdc, 0x34, 0xc8, 0x32, 0x4c, 0x32, + 0x3e, 0x2a, 0xc4, 0x8e, 0x38, 0x25, 0x4f, 0xa5, 0x4f, 0xc9, 0xfd, 0x76, 0x5d, 0x36, 0xd1, 0x9e, + 0x08, 0xb5, 0x5f, 0xe2, 0x6b, 0x7e, 0x36, 0x0f, 0xc7, 0xb3, 0xd1, 0x71, 0xbc, 0x58, 0x25, 0xe8, + 0x60, 0xc4, 0xd5, 0x9b, 0xf6, 0x18, 0x83, 0xf0, 0x18, 0x0a, 0x59, 0xad, 0xcd, 0x67, 0xb6, 0xf6, + 0x65, 0x98, 0x41, 0x46, 0x42, 0x2e, 0x69, 0x7a, 0x61, 0x24, 0x42, 0x03, 0xd8, 0xd3, 0xac, 0x80, + 0x6f, 0x70, 0xeb, 0x0c, 0x4c, 0x5e, 0x84, 0x29, 0xb9, 0x45, 0xf9, 0x0f, 0xdb, 0xac, 0x62, 0xbe, + 0x3f, 0x4d, 0x0a, 0xe8, 0x6d, 0x04, 0x92, 0x63, 0x30, 0xe2, 0x76, 0x3a, 0xac, 0x4a, 0xbe, 0x2d, + 0x0d, 0xbb, 0x9d, 0x4e, 0xb5, 0x41, 0xce, 0xc2, 0x24, 0xba, 0x53, 0x39, 0x3b, 0x68, 0x53, 0x22, + 0x0c, 0xd8, 0xec, 0x09, 0x04, 0x72, 0x3b, 0x93, 0x90, 0x2d, 0x04, 0x46, 0x2b, 0x51, 0x46, 0x11, + 0x05, 0xdc, 0x8e, 0x44, 0x10, 0x3d, 0xf3, 0x45, 0x98, 0x16, 0xa7, 0xa9, 0xd8, 0xe1, 0x91, 0x52, + 0xcc, 0x3f, 0x26, 0xe6, 0x8a, 0xf0, 0xe8, 0x20, 0x40, 0xd5, 0x86, 0xa4, 0xfc, 0x83, 0x1c, 0x1c, + 0xcb, 0x3c, 0x8e, 0xc9, 0x37, 0x80, 0x7b, 0x97, 0x44, 0xbe, 0x13, 0xd0, 0xba, 0xd7, 0xf1, 0xd0, + 0xff, 0x9e, 0xab, 0xab, 0x96, 0xfa, 0x1d, 0xe4, 0xe8, 0xa9, 0xb2, 0xe5, 0xdb, 0x8a, 0x88, 0xdf, + 0xa3, 0x4b, 0x41, 0x02, 0xbc, 0xf0, 0x01, 0x1c, 0xcb, 0x44, 0xcd, 0xb8, 0xdf, 0xbe, 0x6a, 0xa6, + 0x91, 0x93, 0x0f, 0x10, 0x89, 0x8f, 0xd6, 0xee, 0xbd, 0xe2, 0xf3, 0x7e, 0x4b, 0x7d, 0x5e, 0xe2, + 0xe0, 0x26, 0xab, 0xc9, 0x69, 0x99, 0x25, 0x7b, 0x4a, 0xa2, 0x9e, 0x33, 0x93, 0x7c, 0x00, 0xc7, + 0xc4, 0x54, 0xd9, 0x0d, 0xdc, 0xce, 0x5e, 0xcc, 0x8e, 0x37, 0xf4, 0xa5, 0x2c, 0x76, 0x7c, 0x0e, + 0x5d, 0x67, 0xf8, 0x8a, 0xeb, 0xac, 0x9b, 0x06, 0x8a, 0x6f, 0x08, 0xe4, 0xa1, 0x9f, 0xd1, 0x9a, + 0x8c, 0x39, 0x98, 0xcb, 0x9a, 0x83, 0x03, 0x2f, 0x00, 0x51, 0xe7, 0xf7, 0xe7, 0xe0, 0xcc, 0x61, + 0x6d, 0x26, 0xf7, 0xe0, 0x38, 0x3e, 0x91, 0x87, 0xbe, 0xfa, 0x6c, 0xa7, 0xee, 0xd6, 0xf7, 0xa8, + 0x98, 0x25, 0x56, 0xe6, 0xc7, 0x77, 0x3a, 0xb5, 0xda, 0x6d, 0xed, 0xbb, 0x3b, 0x9d, 0x5a, 0xe8, + 0xcb, 0xdf, 0x2b, 0x8c, 0x5c, 0xb4, 0xa1, 0x01, 0xcf, 0xf6, 0xa1, 0xd4, 0x96, 0x55, 0x4e, 0x5f, + 0x56, 0xe7, 0xa1, 0xb4, 0x43, 0x1b, 0x4c, 0x84, 0xa2, 0x0d, 0x6c, 0xda, 0x83, 0x25, 0x9e, 0x8b, + 0xd1, 0x9e, 0x52, 0xf0, 0x5a, 0xe8, 0xdf, 0x5d, 0x12, 0xb5, 0xb4, 0xe4, 0x0e, 0xa9, 0x8b, 0x68, + 0xe4, 0x22, 0xcc, 0x26, 0x62, 0x09, 0xc4, 0xce, 0xa9, 0xf6, 0x0c, 0x2b, 0x32, 0x23, 0xcf, 0x3c, + 0x0f, 0x13, 0x72, 0x18, 0x02, 0xe5, 0xe2, 0x62, 0x8f, 0x0b, 0x18, 0x9b, 0xe5, 0xa2, 0xba, 0x7f, + 0x98, 0x97, 0x22, 0xd3, 0xb2, 0xef, 0x47, 0x61, 0x14, 0xb8, 0x1d, 0xe3, 0xde, 0x44, 0x5a, 0x70, + 0xd2, 0x77, 0xbb, 0xd1, 0xde, 0x92, 0xc3, 0xfe, 0xf5, 0x03, 0xe9, 0x6f, 0x5a, 0x97, 0x46, 0x73, + 0xe3, 0x4b, 0x97, 0xcc, 0xad, 0xb3, 0xcc, 0xb0, 0xcb, 0x3a, 0x32, 0x3b, 0xe1, 0x35, 0xae, 0x6b, + 0xcf, 0xd8, 0x27, 0x38, 0xcf, 0x14, 0x16, 0x59, 0x83, 0x89, 0x6d, 0xea, 0x06, 0x34, 0x70, 0xe2, + 0xa4, 0xef, 0xc9, 0x8b, 0xd3, 0x32, 0x22, 0xa0, 0xfd, 0xa8, 0xc9, 0x75, 0x7c, 0x3b, 0x2e, 0x21, + 0xef, 0xc0, 0x98, 0xd7, 0x10, 0xa1, 0xf2, 0xc4, 0xf5, 0xc9, 0x14, 0xd9, 0xab, 0x0d, 0x1e, 0x39, + 0x2f, 0xe6, 0xc1, 0xee, 0x5e, 0x9e, 0x80, 0x2e, 0x4f, 0x1a, 0x37, 0x4c, 0x6b, 0x59, 0x9e, 0xce, + 0x69, 0xb2, 0x54, 0xca, 0xfa, 0xe3, 0x30, 0x12, 0x6a, 0xb1, 0xfb, 0x6c, 0xf1, 0xcb, 0xfa, 0x6b, + 0x70, 0x7e, 0xd0, 0x3e, 0x22, 0xaf, 0x01, 0xe9, 0xd1, 0xe1, 0x63, 0xf6, 0x8c, 0x9b, 0xea, 0xb7, + 0xe7, 0x41, 0x0f, 0x3e, 0xe6, 0xc9, 0x01, 0x97, 0xb0, 0x3b, 0x81, 0x67, 0xfd, 0x40, 0x01, 0xa6, + 0xcc, 0x3b, 0x35, 0x79, 0x05, 0x86, 0x14, 0xdb, 0x29, 0xa5, 0xfb, 0xd5, 0x91, 0x18, 0x73, 0x1b, + 0x91, 0xd8, 0x01, 0x81, 0x4f, 0x45, 0x4e, 0x4b, 0x57, 0xcf, 0xda, 0x13, 0x08, 0x94, 0x6a, 0xd9, + 0x1b, 0xc0, 0x53, 0xff, 0xe2, 0x5e, 0x16, 0x0d, 0x96, 0xe8, 0xbe, 0xc8, 0x6e, 0xf6, 0xa8, 0x57, + 0x9b, 0x60, 0xb4, 0x6c, 0x3f, 0xc1, 0xdc, 0xf6, 0xf1, 0x95, 0x69, 0xa8, 0xf7, 0x95, 0x49, 0x7c, + 0x4a, 0x8f, 0x2b, 0xd3, 0x70, 0x9f, 0x2b, 0x53, 0x4c, 0xa9, 0x5f, 0x99, 0xf0, 0xe2, 0x3c, 0xda, + 0xeb, 0xe2, 0x1c, 0xd3, 0xf0, 0x8b, 0xf3, 0x0b, 0xe2, 0x73, 0x03, 0xf7, 0xa1, 0x83, 0xfd, 0xc0, + 0x8d, 0xda, 0xf8, 0x87, 0xd8, 0xee, 0x43, 0x7c, 0x54, 0x5b, 0x1e, 0x03, 0xf9, 0x12, 0x67, 0xfd, + 0x54, 0x2e, 0x71, 0xc9, 0x91, 0x43, 0xf1, 0x22, 0x4c, 0x79, 0x2d, 0x26, 0x7d, 0xd1, 0x86, 0x26, + 0x35, 0x4c, 0xda, 0x93, 0x12, 0xca, 0x25, 0x87, 0x97, 0x60, 0x5a, 0xa1, 0x71, 0xef, 0x67, 0x6e, + 0xa1, 0x6f, 0x2b, 0x6a, 0xe1, 0xfd, 0xfc, 0x0a, 0xcc, 0x28, 0x44, 0x21, 0xa8, 0x72, 0xc1, 0x61, + 0xd2, 0x2e, 0xc9, 0x02, 0x91, 0xc4, 0x32, 0xb4, 0x76, 0x93, 0xa7, 0xd2, 0xa7, 0xd4, 0x2a, 0xeb, + 0xb7, 0x0a, 0x86, 0x00, 0x28, 0xab, 0x59, 0x86, 0x71, 0xb6, 0x35, 0x8a, 0x4e, 0x12, 0xdb, 0xca, + 0xf3, 0x3d, 0xba, 0x5f, 0xbc, 0x65, 0xd6, 0x6a, 0xb7, 0x6d, 0x08, 0x43, 0x5f, 0x3e, 0x6d, 0x3a, + 0x7c, 0xf7, 0xe7, 0x32, 0x0c, 0x4e, 0x3f, 0xc9, 0x8e, 0xef, 0x21, 0x2f, 0xf7, 0x67, 0x57, 0xee, + 0x74, 0xb0, 0x8d, 0x6c, 0xf6, 0xe1, 0x29, 0xa0, 0x7e, 0xc9, 0x0a, 0xee, 0x00, 0xde, 0x97, 0x42, + 0x93, 0x79, 0x21, 0xe3, 0x5c, 0x4d, 0x31, 0xc7, 0x5e, 0x42, 0xce, 0xa5, 0xae, 0xfc, 0x53, 0xb2, + 0x5d, 0x85, 0x09, 0x76, 0xfb, 0x56, 0x0c, 0x87, 0x0c, 0x57, 0xa5, 0x5e, 0x1f, 0xbf, 0x52, 0xbd, + 0x65, 0x8f, 0x33, 0x3a, 0xc9, 0x66, 0x0f, 0x4e, 0xea, 0x32, 0xa2, 0xd9, 0xc8, 0x61, 0x19, 0x55, + 0xae, 0x6f, 0x0f, 0xc4, 0xa2, 0x24, 0x36, 0xf5, 0xb8, 0x6b, 0x02, 0x04, 0x9a, 0xb5, 0x07, 0x0b, + 0xbd, 0x87, 0x84, 0x5d, 0x3b, 0xa8, 0xee, 0x1f, 0x6d, 0xcb, 0x9f, 0xda, 0x01, 0x99, 0xd7, 0x0f, + 0xc8, 0x93, 0x50, 0x94, 0xf6, 0x70, 0xf2, 0xa2, 0xe2, 0x72, 0x5b, 0x38, 0xeb, 0xef, 0x15, 0xe0, + 0xec, 0x00, 0xc3, 0xd5, 0xa7, 0xce, 0xf7, 0x60, 0x9c, 0x2b, 0x0c, 0xf9, 0xf6, 0xc9, 0x1f, 0xdb, + 0xe5, 0x31, 0xc0, 0x98, 0x8a, 0xbd, 0x8e, 0x89, 0x30, 0xf1, 0x7e, 0x07, 0xa1, 0xfa, 0x9b, 0x7c, + 0x03, 0xa6, 0xf9, 0x86, 0xc6, 0xcd, 0x11, 0x76, 0xba, 0xcd, 0x01, 0x76, 0xb4, 0x67, 0xa5, 0xed, + 0x74, 0x82, 0x14, 0x37, 0x39, 0xdc, 0x31, 0x6a, 0x0a, 0x46, 0xb6, 0x60, 0x1c, 0xd1, 0x76, 0x5c, + 0xaf, 0x39, 0x90, 0x11, 0xaf, 0xb4, 0xcc, 0xd6, 0xc9, 0xb8, 0x15, 0x15, 0x03, 0x5c, 0xc3, 0xdf, + 0xec, 0x92, 0xd7, 0xee, 0xb6, 0x1c, 0xb7, 0xd3, 0xe1, 0x73, 0x41, 0xbc, 0xfa, 0x0c, 0xdb, 0x93, + 0xed, 0x6e, 0xab, 0xdc, 0xe9, 0xe0, 0x90, 0xe2, 0xf3, 0xd0, 0x0c, 0xc3, 0xe3, 0xab, 0x56, 0x62, + 0x8e, 0x20, 0x26, 0x63, 0xc0, 0xd7, 0xad, 0xc0, 0x9d, 0x03, 0x6e, 0x2c, 0xc0, 0xd5, 0xdd, 0x36, + 0xff, 0x61, 0xfd, 0x79, 0x5e, 0xca, 0x66, 0xbd, 0xe7, 0xfd, 0x5f, 0x0d, 0x51, 0xc6, 0x10, 0x9d, + 0x87, 0x12, 0xeb, 0xfa, 0x78, 0x53, 0x51, 0x63, 0x34, 0xd5, 0xee, 0xb6, 0x54, 0xdf, 0xe9, 0x1d, + 0x3f, 0xa2, 0x77, 0xfc, 0x17, 0xa4, 0x40, 0x9a, 0xb9, 0x3d, 0xf4, 0xee, 0x72, 0xeb, 0x7f, 0x2f, + 0xc0, 0xb9, 0xc1, 0x36, 0x81, 0xbf, 0x1a, 0xb7, 0x8c, 0x71, 0x4b, 0x5c, 0x82, 0x87, 0x93, 0x97, + 0xe0, 0xac, 0xb5, 0x37, 0x92, 0xb5, 0xf6, 0x52, 0x57, 0xee, 0xd1, 0x8c, 0x2b, 0x77, 0xe6, 0x02, + 0x2d, 0x1e, 0xb2, 0x40, 0xc7, 0xf4, 0x79, 0xf2, 0x27, 0x79, 0x98, 0xcd, 0x78, 0x12, 0x21, 0x1f, + 0xc0, 0xac, 0x14, 0xed, 0xf9, 0xc9, 0xc1, 0x45, 0x6e, 0x7e, 0xfa, 0x5e, 0xc8, 0x12, 0xea, 0x11, + 0x2d, 0x43, 0xf0, 0x9e, 0x11, 0xe2, 0x7c, 0x5c, 0xfe, 0x97, 0x47, 0x90, 0x27, 0xef, 0xc3, 0x71, + 0x0c, 0x7b, 0x5a, 0x77, 0x34, 0x79, 0xde, 0x09, 0xe8, 0x8e, 0x98, 0x0f, 0xcf, 0xa7, 0xc4, 0x5e, + 0xaf, 0xae, 0x35, 0xc7, 0xa6, 0x3b, 0x6b, 0xcf, 0xd8, 0x73, 0x61, 0x06, 0x3c, 0x79, 0x47, 0xf8, + 0x8f, 0x72, 0x60, 0x1d, 0xde, 0x5f, 0xa8, 0xab, 0x4c, 0x76, 0xf8, 0x98, 0x3d, 0xee, 0x6a, 0xbd, + 0x77, 0x16, 0x26, 0x03, 0xba, 0x13, 0xd0, 0x70, 0x4f, 0xeb, 0xbe, 0x31, 0x7b, 0x42, 0x00, 0x65, + 0xc7, 0xc8, 0x60, 0x47, 0x47, 0x12, 0xb2, 0x25, 0x91, 0x75, 0x4d, 0x5d, 0xfd, 0x32, 0xc7, 0x81, + 0xcd, 0x26, 0xbd, 0x81, 0xfc, 0xc7, 0x8d, 0xa1, 0x62, 0xbe, 0x54, 0xb0, 0x45, 0x48, 0xa6, 0x1d, + 0xaf, 0x49, 0xad, 0x5f, 0xcb, 0x49, 0x89, 0x20, 0xab, 0xf3, 0xc8, 0x07, 0x9a, 0x11, 0x4f, 0x21, + 0x25, 0x86, 0x64, 0x91, 0xe8, 0xf6, 0x0e, 0x22, 0x4a, 0x10, 0x02, 0x8c, 0x28, 0x41, 0x08, 0xf9, + 0x24, 0x96, 0x08, 0x6f, 0xc8, 0x37, 0x40, 0xb6, 0xdb, 0xdd, 0xbd, 0x4c, 0x2e, 0xc0, 0x28, 0x7f, + 0xf6, 0x93, 0x0d, 0x9d, 0x36, 0x1a, 0x7a, 0xf7, 0xb2, 0x2d, 0xcb, 0xad, 0xef, 0xe4, 0xd4, 0xc3, + 0x47, 0xb2, 0xf9, 0x77, 0x2f, 0x93, 0x2f, 0x0c, 0x66, 0x8e, 0x53, 0x94, 0xe6, 0x38, 0xca, 0x14, + 0xe7, 0x8b, 0x86, 0x29, 0xce, 0x0b, 0xfd, 0xfb, 0x49, 0xa8, 0x58, 0x93, 0xd9, 0xa8, 0xff, 0x3c, + 0x07, 0xa7, 0xfa, 0x52, 0x90, 0xe7, 0xa0, 0x58, 0xde, 0xac, 0x6e, 0xc5, 0x23, 0xcb, 0x56, 0x8b, + 0x84, 0x90, 0xeb, 0x30, 0xb6, 0xec, 0x86, 0x5e, 0x9d, 0x4d, 0xe0, 0x4c, 0xa5, 0x51, 0x8a, 0xad, + 0x42, 0x5f, 0x7b, 0xc6, 0x8e, 0x69, 0x89, 0x03, 0x33, 0xb8, 0x0a, 0x52, 0xd9, 0x5e, 0x93, 0x0a, + 0x83, 0x14, 0xc3, 0x14, 0x19, 0xdb, 0x61, 0x52, 0xc0, 0xe4, 0xe2, 0x7b, 0x20, 0xa5, 0x90, 0xde, + 0x0d, 0x3c, 0x42, 0x60, 0xaf, 0xf3, 0x50, 0xdc, 0x94, 0x8f, 0x1f, 0x9a, 0xfd, 0x9a, 0x7c, 0xe8, + 0xb0, 0x55, 0xa9, 0xf5, 0xb7, 0x73, 0xf2, 0x56, 0x7f, 0xf8, 0x87, 0x68, 0x69, 0x00, 0x1a, 0xfd, + 0xd3, 0x00, 0x34, 0x3e, 0x66, 0x1a, 0x00, 0xeb, 0x97, 0x44, 0xd8, 0xcd, 0x6a, 0x63, 0x33, 0x91, + 0x99, 0xea, 0x93, 0xda, 0x21, 0xae, 0x1a, 0xb3, 0xf3, 0xac, 0x96, 0x9a, 0x24, 0x5d, 0x57, 0x6f, + 0x73, 0x44, 0x6d, 0xaa, 0xfe, 0x49, 0x1e, 0x9e, 0xeb, 0x47, 0x9e, 0x99, 0x44, 0x2b, 0x77, 0xb4, + 0x24, 0x5a, 0x17, 0xa0, 0xc8, 0x61, 0x66, 0x66, 0x62, 0x41, 0xca, 0x3a, 0x5c, 0x16, 0x93, 0xb3, + 0x30, 0x52, 0x5e, 0xa9, 0xc5, 0xb9, 0x13, 0xd0, 0x1a, 0xc6, 0xad, 0xff, 0xff, 0xd4, 0x5d, 0xdd, + 0x6f, 0x1b, 0xd9, 0x75, 0xf7, 0x90, 0x94, 0x2c, 0x1d, 0xea, 0x63, 0x74, 0x57, 0x6b, 0x2b, 0xb2, + 0x2d, 0xef, 0xb2, 0x5e, 0x67, 0xcd, 0xcd, 0x7a, 0xe3, 0x75, 0x37, 0x89, 0xb7, 0x75, 0x36, 0x23, + 0x72, 0x28, 0xce, 0x8a, 0x1c, 0x72, 0x67, 0x86, 0x52, 0xbc, 0xf9, 0x18, 0xd0, 0xe2, 0x58, 0x62, + 0x43, 0x0d, 0x19, 0xce, 0x70, 0x1d, 0xef, 0x4b, 0xdb, 0x97, 0x14, 0x68, 0x91, 0x7e, 0x04, 0x45, + 0x51, 0x14, 0x05, 0x8a, 0x02, 0xfe, 0x2f, 0xfa, 0x0f, 0x04, 0x08, 0x02, 0xe4, 0xb9, 0x05, 0x8c, + 0xd6, 0x40, 0x5f, 0xd2, 0xc7, 0xa2, 0x2f, 0x79, 0x2a, 0xee, 0xb9, 0xf7, 0xce, 0xdc, 0x99, 0x21, + 0xb9, 0x92, 0xed, 0xb4, 0xd8, 0x27, 0x89, 0xe7, 0x9e, 0x7b, 0xe7, 0xce, 0xdc, 0xaf, 0x73, 0xce, + 0x3d, 0xe7, 0x77, 0x02, 0xf4, 0xb3, 0xe0, 0x45, 0xe4, 0x87, 0xd9, 0x74, 0x21, 0x3c, 0x69, 0xc2, + 0x15, 0xe9, 0x83, 0x64, 0x10, 0x71, 0xb1, 0xbf, 0x31, 0x82, 0x2b, 0x07, 0x45, 0xb4, 0xb2, 0xa9, + 0x47, 0x4a, 0xb0, 0xd8, 0x1e, 0x7b, 0x81, 0x17, 0xca, 0x9e, 0x2a, 0x23, 0xa4, 0x58, 0xbc, 0x84, + 0xfb, 0x91, 0x74, 0x9f, 0xb0, 0xb0, 0xc1, 0x45, 0x39, 0x94, 0x1b, 0x1d, 0x4f, 0x28, 0xd9, 0x92, + 0x58, 0x4a, 0x7f, 0xa6, 0xc0, 0xe6, 0xb4, 0x6e, 0x91, 0xab, 0x50, 0xf0, 0xa7, 0x26, 0x3a, 0xf1, + 0x59, 0xf0, 0x52, 0x11, 0xb3, 0xc2, 0x3e, 0x1a, 0x8e, 0x4f, 0xbb, 0xa1, 0xec, 0x9e, 0x23, 0x91, + 0x2d, 0xa0, 0x3f, 0x6a, 0xf8, 0x3f, 0xb9, 0x2e, 0x36, 0xdb, 0x7c, 0x26, 0x35, 0x0a, 0xfe, 0x29, + 0x69, 0x00, 0x46, 0xaf, 0xdd, 0x1a, 0x31, 0x80, 0xd5, 0xbb, 0x50, 0xa0, 0xdd, 0x4a, 0x4d, 0x46, + 0x3a, 0x1d, 0xb4, 0x66, 0x83, 0x33, 0xb1, 0x5e, 0x05, 0xdd, 0xd3, 0x81, 0x85, 0xcc, 0xa5, 0x43, + 0x58, 0x4b, 0x72, 0x10, 0x3d, 0x09, 0xc9, 0x55, 0x7c, 0x5f, 0xe5, 0x2d, 0xed, 0x0e, 0x87, 0xcc, + 0x45, 0x74, 0xf7, 0x2b, 0xff, 0xfa, 0xec, 0x3a, 0xd0, 0x9f, 0xac, 0xce, 0x34, 0xc8, 0xae, 0xd2, + 0x5f, 0xe5, 0x60, 0x33, 0x8e, 0x4a, 0x13, 0x4b, 0xe2, 0x4b, 0x1b, 0x22, 0xa1, 0x25, 0x5c, 0xf8, + 0x85, 0xc4, 0x94, 0x7d, 0xc1, 0x39, 0x9e, 0xc3, 0x7b, 0xb0, 0x35, 0x8b, 0x9f, 0xbc, 0x93, 0xc9, + 0xda, 0xce, 0x21, 0x1b, 0xa2, 0xf4, 0xee, 0x52, 0x12, 0xf7, 0x5f, 0x29, 0xb0, 0xcd, 0x1d, 0x1b, + 0x9b, 0xdd, 0xbe, 0x1f, 0x7a, 0x7e, 0xd7, 0x3f, 0xf2, 0x5e, 0x4d, 0x88, 0xcf, 0x5e, 0x62, 0x5b, + 0x7a, 0x2b, 0xe9, 0xbf, 0x9a, 0x79, 0xda, 0xec, 0xb7, 0x25, 0xb7, 0x10, 0x9c, 0xe3, 0x88, 0x4d, + 0xde, 0x02, 0x0b, 0xa9, 0xf4, 0x29, 0x41, 0x0e, 0xa9, 0x44, 0x8e, 0xd2, 0x1f, 0xc3, 0xce, 0xfc, + 0x07, 0x90, 0x1f, 0xc0, 0x2a, 0x02, 0xda, 0x77, 0x46, 0xc7, 0xe3, 0x6e, 0xcf, 0x13, 0x36, 0x2d, + 0x61, 0x52, 0x94, 0xcb, 0x18, 0x20, 0x09, 0x0f, 0xf1, 0x3b, 0x46, 0xa8, 0x7c, 0x5e, 0x29, 0xe1, + 0x3d, 0x2c, 0xb7, 0x56, 0xfa, 0x13, 0x05, 0x48, 0xb6, 0x0d, 0xf2, 0x0d, 0x58, 0xe9, 0x38, 0x15, + 0x3b, 0xec, 0x8e, 0xc3, 0xfa, 0x70, 0x32, 0xe6, 0x40, 0x1f, 0x2c, 0xe2, 0x2b, 0x3c, 0xa2, 0x3b, + 0xc3, 0x38, 0x74, 0x4f, 0x86, 0x93, 0xb1, 0x95, 0xe0, 0x43, 0xd4, 0x7c, 0xcf, 0xfb, 0x51, 0xaf, + 0xfb, 0x24, 0x89, 0x9a, 0xcf, 0x69, 0x09, 0xd4, 0x7c, 0x4e, 0x2b, 0x3d, 0x55, 0xe0, 0x8a, 0xf0, + 0x78, 0xe8, 0x4d, 0xe9, 0x4b, 0x05, 0xe3, 0x9a, 0xc7, 0x02, 0xe8, 0x6c, 0x9e, 0x6c, 0xba, 0x21, + 0x42, 0xff, 0xb1, 0x83, 0x28, 0xa4, 0xb2, 0xba, 0xe4, 0x3b, 0x50, 0xb0, 0xc3, 0xe1, 0xe8, 0x0c, + 0xb1, 0xff, 0x6a, 0x34, 0xa2, 0xe1, 0x70, 0x84, 0x4d, 0x60, 0xcd, 0x92, 0x07, 0x9b, 0x72, 0xe7, + 0x44, 0x8f, 0x49, 0x13, 0x2e, 0x72, 0x24, 0x98, 0xd4, 0xed, 0xd0, 0x9c, 0x77, 0xda, 0x5d, 0x17, + 0x00, 0x03, 0x1c, 0x68, 0xcb, 0x12, 0x6d, 0x94, 0xfe, 0x52, 0x81, 0x22, 0x15, 0x1e, 0x50, 0x1d, + 0x7b, 0xd9, 0x29, 0x9d, 0x94, 0x03, 0xc5, 0xe5, 0x62, 0xd4, 0xfc, 0x99, 0x0e, 0xd7, 0x0f, 0x60, + 0x3d, 0x55, 0x81, 0x94, 0x30, 0xb4, 0x74, 0xd0, 0x3f, 0xea, 0x32, 0x10, 0x6e, 0x76, 0x33, 0x97, + 0xa0, 0x95, 0xfe, 0x5c, 0x81, 0x4d, 0xaa, 0xbc, 0x1b, 0x68, 0xb7, 0xb5, 0x26, 0x03, 0xb1, 0xde, + 0xa9, 0x40, 0x24, 0x5c, 0x67, 0x58, 0xd8, 0x1b, 0x13, 0x88, 0x38, 0xcd, 0x8a, 0x4a, 0x49, 0x1d, + 0x96, 0xf8, 0xf9, 0x12, 0x70, 0x7c, 0xac, 0x1d, 0xc9, 0x2a, 0x10, 0x37, 0xcc, 0x99, 0xe8, 0x9b, + 0xe0, 0x16, 0xc6, 0xeb, 0x58, 0x51, 0xed, 0xd2, 0x7f, 0x2b, 0x70, 0x79, 0x46, 0x1d, 0x72, 0x1f, + 0x16, 0xd0, 0x25, 0x9f, 0x8f, 0xde, 0xd5, 0x19, 0x8f, 0x08, 0x8f, 0x4e, 0x0e, 0xee, 0xb0, 0x83, + 0xe8, 0x94, 0xfe, 0xb0, 0x58, 0x2d, 0xf2, 0x3d, 0x58, 0xd6, 0x7a, 0x3d, 0xae, 0x97, 0xe4, 0x12, + 0x7a, 0xc9, 0x8c, 0x27, 0xde, 0x8e, 0xf8, 0x99, 0x5e, 0xc2, 0x9c, 0x43, 0x7b, 0x3d, 0x97, 0x87, + 0x1b, 0xc4, 0xed, 0x6d, 0xff, 0x21, 0xac, 0x25, 0x99, 0xcf, 0xa5, 0x97, 0xfc, 0xbd, 0x02, 0x6a, + 0xb2, 0x0f, 0xbf, 0x1b, 0x68, 0x84, 0x69, 0xc3, 0xfc, 0x05, 0x93, 0xea, 0x6f, 0x72, 0xf0, 0xfa, + 0xd4, 0x2f, 0x4c, 0xde, 0x85, 0x45, 0x6d, 0x34, 0x32, 0xaa, 0x7c, 0x56, 0x71, 0x81, 0x07, 0xcd, + 0xbd, 0x09, 0xb5, 0x8d, 0x31, 0x91, 0xbb, 0xb0, 0x84, 0x33, 0x93, 0x56, 0xc8, 0xc5, 0x48, 0x55, + 0xcc, 0x1a, 0x92, 0x42, 0xaa, 0x12, 0x8c, 0xa4, 0x06, 0x6b, 0x3c, 0x4a, 0xda, 0xf2, 0x8e, 0xbd, + 0x9f, 0x44, 0x90, 0xa9, 0x88, 0xea, 0x2a, 0x6c, 0xc8, 0xee, 0x98, 0x95, 0xc9, 0x71, 0xc2, 0xc9, + 0x5a, 0xa4, 0x01, 0x2a, 0xb6, 0x29, 0xb7, 0xc4, 0xe0, 0xb2, 0x30, 0x6e, 0x9d, 0x75, 0x62, 0x46, + 0x5b, 0x99, 0x9a, 0xd1, 0x70, 0x69, 0x41, 0xd0, 0x3f, 0xf6, 0x4f, 0x3d, 0x3f, 0xfc, 0xdd, 0x0d, + 0x57, 0xfc, 0x8c, 0x33, 0x0d, 0xd7, 0xdf, 0x16, 0xd8, 0x62, 0x4e, 0x57, 0xa3, 0x12, 0x8d, 0x84, + 0x90, 0x88, 0x12, 0x0d, 0x66, 0xbd, 0x64, 0x71, 0xc0, 0x55, 0xb8, 0xc8, 0xe2, 0xb3, 0xc5, 0xca, + 0xb8, 0x36, 0xb5, 0x0b, 0x8c, 0xe7, 0xe0, 0x0e, 0x13, 0x5f, 0x58, 0x6c, 0x40, 0x60, 0x89, 0xaa, + 0xe4, 0x00, 0x8a, 0x95, 0x81, 0xd7, 0xf5, 0x27, 0x23, 0xe7, 0x6c, 0xd7, 0x80, 0x5b, 0xfc, 0x5d, + 0x56, 0x8e, 0x58, 0x35, 0xbc, 0x3e, 0xc4, 0x9d, 0x5c, 0x6e, 0x88, 0x38, 0x91, 0xbb, 0x70, 0x01, + 0x4d, 0x8e, 0x5f, 0x9f, 0xf3, 0x7d, 0xd2, 0x44, 0xac, 0x97, 0xf4, 0x85, 0xe7, 0xfe, 0xc4, 0x2e, + 0xac, 0x35, 0xba, 0x41, 0xe8, 0x8c, 0xbb, 0x7e, 0x80, 0xb8, 0x4e, 0x67, 0xc0, 0xbd, 0x10, 0xf9, + 0x71, 0x99, 0x29, 0x32, 0x8c, 0xaa, 0x32, 0x53, 0x64, 0xb2, 0x39, 0x2a, 0x2f, 0xd5, 0xfa, 0x7e, + 0x77, 0xd0, 0xff, 0x5c, 0x44, 0x55, 0x30, 0x79, 0xe9, 0x91, 0x20, 0x5a, 0x71, 0x79, 0xe9, 0xfb, + 0x99, 0x71, 0x63, 0xbd, 0x2c, 0xc2, 0x45, 0x1e, 0x73, 0xc7, 0x62, 0xd0, 0xda, 0xba, 0x59, 0x35, + 0xcc, 0x3d, 0x55, 0x21, 0x6b, 0x00, 0x6d, 0xab, 0x55, 0xd1, 0x6d, 0x9b, 0xfe, 0xce, 0xd1, 0xdf, + 0x3c, 0x40, 0xad, 0xd6, 0x69, 0xa8, 0x79, 0x29, 0x46, 0xad, 0x50, 0xfa, 0xa5, 0x02, 0x97, 0xa6, + 0x0f, 0x25, 0x71, 0x00, 0xa3, 0x14, 0xf9, 0x85, 0xf0, 0x37, 0xe6, 0x8e, 0xfb, 0x54, 0x72, 0x3a, + 0xda, 0x31, 0x64, 0x51, 0x74, 0x39, 0x71, 0xeb, 0x13, 0x67, 0x76, 0xed, 0xf7, 0x4a, 0x15, 0xd8, + 0x9a, 0xd5, 0x46, 0xf2, 0x55, 0xd7, 0xa1, 0xa8, 0xb5, 0xdb, 0x0d, 0xa3, 0xa2, 0x39, 0x46, 0xcb, + 0x54, 0x15, 0xb2, 0x0c, 0x0b, 0x7b, 0x56, 0xab, 0xd3, 0x56, 0x73, 0xa5, 0x9f, 0x2b, 0xb0, 0x6a, + 0xf8, 0xa1, 0x77, 0xcc, 0xbc, 0x54, 0x5f, 0x76, 0xf1, 0x7d, 0x98, 0x58, 0x7c, 0x5b, 0x51, 0x3c, + 0x6f, 0xf4, 0x80, 0x33, 0xad, 0xbc, 0xa7, 0x39, 0xd8, 0xc8, 0xd4, 0x21, 0x36, 0x5c, 0xd4, 0x0e, + 0xed, 0x96, 0x51, 0xad, 0xf0, 0x9e, 0x09, 0xa9, 0x9c, 0x53, 0xb3, 0x4f, 0x61, 0x31, 0x30, 0x8f, + 0x03, 0x77, 0xd8, 0xef, 0x49, 0xf9, 0xa4, 0xea, 0x17, 0x2c, 0xd1, 0x12, 0x9e, 0x64, 0x9f, 0x4f, + 0xc6, 0x1e, 0x36, 0x9b, 0x4b, 0x58, 0x34, 0x23, 0x7a, 0xb6, 0x61, 0x74, 0xca, 0xec, 0xd2, 0xf2, + 0x6c, 0xd3, 0x71, 0x7b, 0xc4, 0x84, 0xc5, 0xbd, 0x7e, 0x58, 0x9f, 0x3c, 0xe4, 0xeb, 0x77, 0x27, + 0xc6, 0x93, 0xaf, 0x4f, 0x1e, 0x66, 0x9b, 0x45, 0x63, 0x1d, 0x8b, 0x57, 0x4f, 0x34, 0xc9, 0x5b, + 0xd9, 0x5d, 0x85, 0x22, 0xd7, 0x82, 0x50, 0xc1, 0xf8, 0x99, 0x02, 0x5b, 0xb3, 0xde, 0x9d, 0x2a, + 0x56, 0xc9, 0x00, 0xbb, 0x4b, 0x11, 0xc2, 0x70, 0x32, 0xb2, 0x4e, 0xb0, 0x91, 0x8f, 0xa0, 0xc8, + 0xd2, 0x6f, 0xdb, 0x77, 0x3b, 0x96, 0xc1, 0x27, 0xdc, 0xb5, 0xdf, 0x3c, 0xbb, 0x7e, 0x99, 0x25, + 0xeb, 0x76, 0x83, 0xbb, 0xee, 0x64, 0xdc, 0x4f, 0xa0, 0xb1, 0xca, 0x35, 0x4a, 0x3f, 0x55, 0x60, + 0x7b, 0xf6, 0x47, 0xa3, 0xa7, 0x96, 0x43, 0x65, 0xfd, 0x38, 0x46, 0x09, 0x4f, 0x2d, 0x94, 0xff, + 0x53, 0x41, 0x4a, 0x11, 0x23, 0xad, 0x14, 0x65, 0x7e, 0xcc, 0x65, 0x12, 0xbe, 0x25, 0x2b, 0x09, + 0x46, 0x0c, 0x8a, 0x9c, 0xf1, 0x8d, 0xc9, 0xb7, 0xa7, 0x82, 0x90, 0xa3, 0x2b, 0xb0, 0x0c, 0x42, + 0x9e, 0x48, 0x4f, 0x21, 0xc3, 0x91, 0xdf, 0x87, 0x05, 0x44, 0x84, 0xe4, 0x93, 0x85, 0x24, 0x86, + 0x14, 0x61, 0x21, 0x99, 0xee, 0x83, 0x4c, 0xb2, 0xee, 0x83, 0x84, 0xd2, 0xdf, 0x29, 0x50, 0x94, + 0x78, 0xc9, 0x7b, 0xa9, 0x1b, 0x22, 0x61, 0x9b, 0x41, 0x92, 0x3c, 0x4a, 0xe2, 0xe2, 0xe8, 0x00, + 0xd6, 0x30, 0x51, 0x1f, 0x77, 0x62, 0x09, 0x05, 0x8a, 0xea, 0x46, 0x94, 0x5c, 0xa4, 0x2e, 0x52, + 0x70, 0xb3, 0x6c, 0x5b, 0x09, 0x66, 0x59, 0x27, 0xa2, 0x25, 0x9a, 0x28, 0x28, 0xfd, 0x57, 0x0e, + 0x2e, 0xd1, 0x45, 0x3c, 0xf0, 0x82, 0x80, 0x52, 0x3d, 0x3f, 0xe4, 0x62, 0x2d, 0xf9, 0x26, 0x2c, + 0x9e, 0x9c, 0xcf, 0x22, 0xcb, 0xd8, 0x09, 0x01, 0x3c, 0x18, 0x85, 0x63, 0x2d, 0xfd, 0x9f, 0xbc, + 0x09, 0x52, 0x52, 0x42, 0x5c, 0x17, 0x2b, 0xbb, 0xb9, 0x2d, 0xc5, 0x5a, 0x1e, 0x45, 0xe9, 0x09, + 0xbf, 0x05, 0x0b, 0x68, 0x85, 0xe1, 0x47, 0x94, 0x50, 0x2d, 0xa6, 0xf7, 0x0e, 0x6d, 0x34, 0x16, + 0xab, 0x40, 0xde, 0x03, 0x88, 0x11, 0x80, 0xf9, 0x19, 0x24, 0xcc, 0x19, 0x11, 0x08, 0xb0, 0xb5, + 0x7c, 0xfa, 0xa8, 0xcb, 0x61, 0x75, 0xcb, 0xb0, 0x21, 0xa6, 0xd2, 0x48, 0xc0, 0x0d, 0xf1, 0x6b, + 0xc2, 0x75, 0x56, 0x60, 0x8c, 0x04, 0xe4, 0xd0, 0x0d, 0x58, 0x0b, 0x82, 0x13, 0x57, 0xea, 0x3d, + 0xa2, 0x0e, 0x5a, 0x2b, 0x41, 0x70, 0x12, 0xe7, 0x56, 0xbc, 0x01, 0x6b, 0xe1, 0x20, 0x90, 0xb9, + 0x96, 0x18, 0x57, 0x38, 0x08, 0x22, 0xae, 0xd2, 0x7f, 0xe6, 0x60, 0xf9, 0x90, 0x0a, 0x7f, 0x68, + 0xd2, 0x98, 0x6f, 0x22, 0x79, 0x1f, 0x8a, 0x8d, 0x61, 0x97, 0xdf, 0xc7, 0x04, 0x1c, 0x3d, 0x0d, + 0x83, 0xa5, 0x06, 0xc3, 0xae, 0xb8, 0xda, 0x09, 0x2c, 0x99, 0xe9, 0x0b, 0x02, 0xbd, 0x3e, 0x86, + 0x45, 0x76, 0x3f, 0xc6, 0x8d, 0x6f, 0x42, 0xfc, 0x8f, 0x7a, 0x74, 0x9b, 0x15, 0x4b, 0x57, 0x08, + 0xec, 0x8e, 0x4d, 0x96, 0x45, 0x39, 0x78, 0x9a, 0x64, 0xc0, 0x59, 0x38, 0x9b, 0x01, 0x47, 0x02, + 0x89, 0x59, 0x3c, 0x0b, 0x48, 0xcc, 0xf6, 0x3d, 0x28, 0x4a, 0xfd, 0x39, 0x97, 0x36, 0xf0, 0xa7, + 0x39, 0x58, 0xc5, 0xb7, 0x8a, 0x9c, 0x65, 0xbe, 0x9c, 0xe6, 0xa8, 0x0f, 0x13, 0xe6, 0xa8, 0x2d, + 0x79, 0xbc, 0xd8, 0x9b, 0xcd, 0xb1, 0x43, 0x7d, 0x0c, 0x1b, 0x19, 0x46, 0xf2, 0x01, 0x2c, 0xd0, + 0xee, 0x0b, 0xf5, 0x5d, 0x4d, 0xcf, 0x80, 0x18, 0x50, 0x90, 0xbe, 0x78, 0x60, 0x31, 0xee, 0xd2, + 0xff, 0x28, 0xb0, 0xc2, 0xe1, 0xa5, 0xfd, 0x47, 0xc3, 0x2f, 0xfc, 0x9c, 0x37, 0xd3, 0x9f, 0x93, + 0x85, 0x2d, 0xf3, 0xcf, 0xf9, 0x7f, 0xfd, 0x11, 0xef, 0x25, 0x3e, 0xe2, 0xe5, 0x08, 0x5e, 0x48, + 0xbc, 0xce, 0x9c, 0x6f, 0xf8, 0x2f, 0x08, 0xb8, 0x97, 0x64, 0x24, 0x3f, 0x84, 0x65, 0xd3, 0x7b, + 0x9c, 0xd0, 0x82, 0x6f, 0xce, 0x68, 0xf4, 0x76, 0xc4, 0xc8, 0xd6, 0x14, 0x0a, 0x10, 0xbe, 0xf7, + 0xd8, 0xcd, 0x5c, 0xcd, 0xc5, 0x4d, 0x52, 0x45, 0x38, 0x59, 0xed, 0x3c, 0x53, 0x9f, 0x07, 0xc7, + 0x60, 0x24, 0xfe, 0x3f, 0x17, 0x00, 0xe2, 0xb8, 0x82, 0xf3, 0x9f, 0x39, 0x37, 0xb9, 0xa1, 0x3b, + 0x37, 0x1b, 0xfe, 0x09, 0x4d, 0xde, 0x15, 0xee, 0xb7, 0xdf, 0xf3, 0x06, 0x5d, 0xb6, 0xb7, 0xe7, + 0x77, 0x6f, 0x20, 0xda, 0x5f, 0x44, 0x9d, 0x91, 0x27, 0x10, 0xbd, 0xfb, 0xab, 0x94, 0x21, 0x13, + 0xab, 0x53, 0x78, 0xf1, 0x58, 0x9d, 0x85, 0x17, 0x88, 0xd5, 0x59, 0x3c, 0x63, 0xac, 0x4e, 0x1b, + 0x96, 0xfb, 0xfe, 0x67, 0x9e, 0x1f, 0x0e, 0xc7, 0x4f, 0xd0, 0xf3, 0x20, 0x36, 0x4f, 0xd2, 0x4f, + 0x6d, 0x88, 0x32, 0x36, 0xde, 0x28, 0xb4, 0x44, 0xfc, 0xf2, 0x70, 0x47, 0x44, 0xf2, 0xfb, 0x10, + 0xdf, 0x64, 0x71, 0x4c, 0xf8, 0xd9, 0xb2, 0xce, 0x91, 0xb8, 0xe8, 0xfa, 0x0e, 0x24, 0x2f, 0xb4, + 0x78, 0xa4, 0x2b, 0xcb, 0x69, 0x2b, 0x17, 0xc8, 0x12, 0xcd, 0x91, 0x74, 0xe7, 0xc5, 0x5d, 0x99, + 0x7f, 0x9b, 0x03, 0x92, 0xed, 0x38, 0xf9, 0x10, 0x8a, 0x6c, 0xeb, 0x77, 0xc7, 0xc1, 0x8f, 0x79, + 0x80, 0x09, 0x43, 0x5a, 0x90, 0xc8, 0x32, 0xd2, 0x02, 0x23, 0x5b, 0xc1, 0x8f, 0x07, 0xe4, 0x07, + 0xf0, 0x1a, 0x0e, 0xfc, 0xc8, 0x1b, 0xf7, 0x87, 0x3d, 0x17, 0x61, 0xf1, 0xba, 0x03, 0x9e, 0x6d, + 0xe8, 0x5d, 0x4c, 0x8b, 0x97, 0x2d, 0x9e, 0x31, 0x41, 0x30, 0x8e, 0xa3, 0x8d, 0x9c, 0x6d, 0xc6, + 0x48, 0x1c, 0x50, 0xe5, 0xfa, 0x8f, 0x26, 0x83, 0x01, 0x9f, 0x73, 0xe5, 0xdf, 0x3c, 0xbb, 0xbe, + 0x9d, 0x2e, 0x9b, 0xd1, 0xf0, 0x5a, 0xdc, 0x70, 0x6d, 0x32, 0x18, 0x90, 0x6f, 0x02, 0x0c, 0x7d, + 0xf7, 0xb4, 0x1f, 0x04, 0xec, 0x72, 0x2a, 0x8a, 0xc1, 0x8a, 0xa9, 0xf2, 0xf0, 0x0d, 0xfd, 0x26, + 0x23, 0xd2, 0xe1, 0x1b, 0x75, 0x8f, 0x3d, 0x8c, 0x5c, 0x66, 0x8e, 0x48, 0x1c, 0x3f, 0x5c, 0x10, + 0x93, 0xd3, 0xe8, 0xd8, 0xb3, 0xfb, 0x9f, 0x0b, 0x3f, 0xf2, 0x4f, 0x61, 0x83, 0xbb, 0x00, 0x1f, + 0xf6, 0xc3, 0x13, 0xae, 0x4b, 0xbd, 0x8c, 0x22, 0x26, 0x29, 0x53, 0xff, 0x56, 0x00, 0xd0, 0x0e, + 0x6d, 0x01, 0x0a, 0x72, 0x0b, 0x16, 0xa8, 0x86, 0x28, 0x2c, 0x4d, 0x28, 0xab, 0x62, 0xbb, 0xb2, + 0xac, 0x8a, 0x1c, 0x74, 0x9f, 0xb0, 0xbc, 0x63, 0x34, 0x76, 0xe6, 0x62, 0xb3, 0xd4, 0x98, 0x91, + 0x12, 0x1a, 0x04, 0x23, 0x91, 0x06, 0x40, 0x0c, 0xd3, 0xc1, 0x75, 0x9e, 0x8d, 0x38, 0xde, 0x9d, + 0x17, 0x70, 0x60, 0xe8, 0x18, 0xea, 0x43, 0x9e, 0x3e, 0x31, 0x1b, 0xd9, 0x87, 0x82, 0xd3, 0x8d, + 0x22, 0x8c, 0x66, 0x80, 0x97, 0xbc, 0xc1, 0xb3, 0x41, 0xc5, 0x00, 0x26, 0x6b, 0x61, 0x37, 0x91, + 0x34, 0x0f, 0x1b, 0x21, 0x3a, 0x2c, 0xf2, 0x4c, 0x9f, 0x33, 0x40, 0xaf, 0x78, 0xa2, 0x4f, 0x0e, + 0x75, 0x89, 0x44, 0x59, 0xda, 0xe1, 0x39, 0x3d, 0xdf, 0x87, 0xbc, 0x6d, 0x37, 0x79, 0xc8, 0xee, + 0x6a, 0xac, 0x7f, 0xda, 0x76, 0x53, 0x24, 0x46, 0x3e, 0x95, 0xaa, 0x51, 0x66, 0xf2, 0x07, 0x50, + 0x94, 0xd4, 0x10, 0x1e, 0xec, 0x8e, 0xdf, 0xa0, 0x1f, 0x93, 0xe5, 0xed, 0x4c, 0xe2, 0x26, 0x0d, + 0x50, 0xf7, 0x27, 0x0f, 0x3d, 0x6d, 0x34, 0xc2, 0xe8, 0x98, 0xcf, 0xbc, 0x31, 0x13, 0x28, 0x97, + 0x62, 0x94, 0x48, 0xb7, 0x3b, 0x1a, 0xb9, 0x3d, 0x51, 0x2a, 0x5b, 0xdb, 0xd2, 0x35, 0x49, 0x1b, + 0x36, 0x6c, 0x2f, 0x9c, 0x8c, 0x98, 0x6b, 0x4d, 0x6d, 0x38, 0xa6, 0xea, 0x21, 0xdb, 0x30, 0x10, + 0x50, 0x2f, 0xa0, 0x85, 0xc2, 0x9f, 0xe9, 0xd1, 0x70, 0x9c, 0x52, 0x15, 0xb3, 0x95, 0x4b, 0x9e, + 0x3c, 0xe4, 0xf4, 0xbc, 0x4f, 0x2a, 0x9d, 0x78, 0xde, 0x0b, 0xa5, 0x33, 0x56, 0x35, 0xdf, 0x9b, + 0x02, 0xdf, 0x82, 0x57, 0xa3, 0x12, 0x7c, 0x4b, 0x02, 0xb4, 0xe5, 0x69, 0x41, 0x42, 0x10, 0xe3, + 0x63, 0x71, 0x1f, 0xe0, 0xe3, 0x61, 0xdf, 0x6f, 0x7a, 0xe1, 0xc9, 0xb0, 0x27, 0xa1, 0xc8, 0x14, + 0xff, 0x68, 0xd8, 0xf7, 0xdd, 0x53, 0x24, 0xff, 0xf6, 0xd9, 0x75, 0x89, 0xc9, 0x92, 0xfe, 0x27, + 0x5f, 0x83, 0x65, 0xfa, 0xcb, 0x89, 0x1d, 0x84, 0x98, 0x51, 0x1a, 0x6b, 0xf3, 0x04, 0xeb, 0x11, + 0x03, 0xb9, 0x87, 0xc8, 0xf2, 0xfd, 0x51, 0x28, 0x89, 0xd5, 0x02, 0x46, 0xbe, 0x3f, 0x0a, 0xd3, + 0xa0, 0x90, 0x12, 0x33, 0xa9, 0x47, 0x5d, 0x17, 0xb9, 0x09, 0x38, 0x80, 0x3d, 0x5a, 0x5e, 0xf9, + 0x5c, 0x73, 0x05, 0x1a, 0x9d, 0x9c, 0x45, 0x2e, 0x55, 0x0d, 0x3b, 0x61, 0xd7, 0xab, 0xec, 0xaa, + 0x8c, 0x9f, 0x6e, 0xac, 0x13, 0xc1, 0x49, 0xcf, 0x3d, 0x42, 0x72, 0xa2, 0x13, 0x11, 0x33, 0xd9, + 0x85, 0x75, 0xa6, 0x7d, 0x44, 0x39, 0x8e, 0xf8, 0x49, 0x87, 0x7b, 0x5b, 0x9c, 0x04, 0x49, 0x7e, + 0x7c, 0xaa, 0x02, 0xa9, 0xc1, 0x02, 0xaa, 0xf7, 0xdc, 0xc1, 0xff, 0x8a, 0x6c, 0x27, 0x49, 0xaf, + 0x23, 0xdc, 0x57, 0xd0, 0x42, 0x22, 0xef, 0x2b, 0xc8, 0x4a, 0xbe, 0x0b, 0xa0, 0xfb, 0xe3, 0xe1, + 0x60, 0x80, 0x78, 0x89, 0x4b, 0xa8, 0xe4, 0x5d, 0x4b, 0xae, 0x47, 0x6c, 0x25, 0x66, 0xe2, 0xd8, + 0x3e, 0xf8, 0xdb, 0x4d, 0xa1, 0x2a, 0x4a, 0x6d, 0x95, 0x0c, 0x58, 0x64, 0x8b, 0x11, 0xb1, 0x47, + 0x39, 0x9a, 0xba, 0x84, 0x5c, 0xc9, 0xb0, 0x47, 0x39, 0x3d, 0x8b, 0x3d, 0x2a, 0x55, 0x28, 0xed, + 0xc3, 0xe6, 0xb4, 0x17, 0x4b, 0x18, 0x24, 0x94, 0xb3, 0x1a, 0x24, 0xfe, 0x29, 0x0f, 0x2b, 0xd8, + 0x9a, 0xd8, 0x85, 0x35, 0x58, 0xb5, 0x27, 0x0f, 0x23, 0x60, 0x0e, 0xb1, 0x1b, 0x63, 0xff, 0x02, + 0xb9, 0x40, 0x56, 0xd8, 0x13, 0x35, 0x88, 0x0e, 0x6b, 0xe2, 0x24, 0xd8, 0x13, 0x41, 0x03, 0x11, + 0xec, 0xa7, 0x00, 0x97, 0xca, 0xe6, 0x78, 0x4b, 0x55, 0x8a, 0xcf, 0x83, 0xfc, 0x79, 0xce, 0x83, + 0xc2, 0x99, 0xce, 0x83, 0xef, 0xc1, 0x8a, 0x78, 0x1a, 0xee, 0xe4, 0x0b, 0x2f, 0xb7, 0x93, 0x27, + 0x1a, 0x23, 0x8d, 0x68, 0x47, 0x5f, 0x9c, 0xbb, 0xa3, 0xa3, 0x15, 0x44, 0xac, 0xb2, 0x4c, 0xda, + 0x66, 0xde, 0x06, 0x26, 0x41, 0xda, 0xab, 0xb4, 0x5f, 0xe0, 0x94, 0xfc, 0x00, 0x96, 0x1b, 0x43, + 0x71, 0x29, 0x28, 0xdd, 0xc6, 0x0c, 0x04, 0x51, 0x16, 0x17, 0x22, 0xce, 0xe8, 0x74, 0xcb, 0xbf, + 0x8a, 0xd3, 0xed, 0x1e, 0x00, 0x8f, 0x46, 0x89, 0x93, 0x97, 0xe0, 0x92, 0x11, 0x71, 0xd7, 0xc9, + 0x4b, 0x21, 0x89, 0x99, 0xee, 0x4e, 0xdc, 0x7d, 0x48, 0x3b, 0x3a, 0x1a, 0x4e, 0xfc, 0x30, 0x91, + 0xed, 0x8f, 0x43, 0x30, 0xd0, 0x23, 0x01, 0xcb, 0xe4, 0xed, 0x21, 0x55, 0xed, 0xd5, 0x0e, 0x08, + 0xf9, 0x24, 0xf2, 0x7b, 0x9c, 0x9b, 0xfc, 0xbc, 0x94, 0xf9, 0x42, 0x33, 0xbd, 0x1d, 0x4b, 0xbf, + 0x54, 0x64, 0xcc, 0xe5, 0x17, 0x18, 0xea, 0x6f, 0x01, 0x44, 0x5e, 0x19, 0x62, 0xac, 0x99, 0x26, + 0x17, 0x51, 0xe5, 0xaf, 0x1c, 0xf3, 0x4a, 0x6f, 0x93, 0x7f, 0x55, 0x6f, 0xe3, 0x40, 0xb1, 0xf5, + 0xa3, 0xb0, 0x1b, 0xbb, 0xf1, 0x80, 0x1d, 0x49, 0xb2, 0xb8, 0x33, 0x89, 0x24, 0xed, 0xb1, 0x1c, + 0x3c, 0x33, 0x49, 0x7b, 0x54, 0xb1, 0xf4, 0x09, 0xac, 0xcb, 0xc1, 0xa1, 0x4f, 0xfc, 0x23, 0xf2, + 0x6d, 0x86, 0x00, 0xa7, 0x24, 0x74, 0x1c, 0x89, 0x89, 0xee, 0xb8, 0x4f, 0xfc, 0x23, 0x26, 0xff, + 0x74, 0x1f, 0xcb, 0x7d, 0x45, 0xed, 0xf3, 0xd7, 0x0a, 0x90, 0x2c, 0xbb, 0xbc, 0x9b, 0x28, 0xff, + 0x0f, 0xd2, 0x65, 0x4a, 0x2a, 0x2b, 0x9c, 0x47, 0x2a, 0x2b, 0xff, 0xb5, 0x02, 0xeb, 0x86, 0xd6, + 0xe4, 0x00, 0xc9, 0xec, 0x76, 0xe9, 0x4d, 0xb8, 0x66, 0x68, 0x4d, 0xb7, 0xdd, 0x6a, 0x18, 0x95, + 0x07, 0xee, 0x54, 0xdc, 0xc3, 0x6b, 0xf0, 0x95, 0x2c, 0x4b, 0x7c, 0x0b, 0x75, 0x15, 0xb6, 0xb2, + 0xc5, 0x02, 0x1b, 0x71, 0x7a, 0x65, 0x01, 0xa3, 0x98, 0x2f, 0x7f, 0x04, 0xeb, 0x02, 0x07, 0xd0, + 0x69, 0xd8, 0x88, 0x34, 0xbc, 0x0e, 0xc5, 0x03, 0xdd, 0x32, 0x6a, 0x0f, 0xdc, 0x5a, 0xa7, 0xd1, + 0x50, 0x2f, 0x90, 0x55, 0x58, 0xe6, 0x84, 0x8a, 0xa6, 0x2a, 0x64, 0x05, 0x96, 0x0c, 0xd3, 0xd6, + 0x2b, 0x1d, 0x4b, 0x57, 0x73, 0xe5, 0x8f, 0x60, 0xad, 0x3d, 0xee, 0x7f, 0xd6, 0x0d, 0xbd, 0x7d, + 0xef, 0x09, 0x5e, 0x22, 0x5d, 0x84, 0xbc, 0xa5, 0x1d, 0xaa, 0x17, 0x08, 0xc0, 0x62, 0x7b, 0xbf, + 0x62, 0xdf, 0xb9, 0xa3, 0x2a, 0xa4, 0x08, 0x17, 0xf7, 0x2a, 0x6d, 0x77, 0xbf, 0x69, 0xab, 0x39, + 0xfa, 0x43, 0x3b, 0xb4, 0xf1, 0x47, 0xbe, 0xfc, 0x75, 0xd8, 0x40, 0x59, 0xa1, 0xd1, 0x0f, 0x42, + 0xcf, 0xf7, 0xc6, 0xd8, 0x87, 0x15, 0x58, 0xb2, 0x3d, 0xba, 0xc8, 0x43, 0x8f, 0x75, 0xa0, 0x39, + 0x19, 0x84, 0xfd, 0xd1, 0xc0, 0xfb, 0x89, 0xaa, 0x94, 0xef, 0xc1, 0xba, 0x35, 0x9c, 0x84, 0x7d, + 0xff, 0xd8, 0x0e, 0x29, 0xc7, 0xf1, 0x13, 0xf2, 0x3a, 0x6c, 0x74, 0x4c, 0xad, 0xb9, 0x6b, 0xec, + 0x75, 0x5a, 0x1d, 0xdb, 0x6d, 0x6a, 0x4e, 0xa5, 0xce, 0xae, 0xb0, 0x9a, 0x2d, 0xdb, 0x71, 0x2d, + 0xbd, 0xa2, 0x9b, 0x8e, 0xaa, 0x94, 0xff, 0x42, 0x81, 0xb5, 0x4e, 0xc0, 0xdd, 0xae, 0x3b, 0x18, + 0x3c, 0xf9, 0x06, 0x5c, 0xed, 0xd8, 0xba, 0xe5, 0x3a, 0xad, 0x7d, 0xdd, 0x74, 0x3b, 0xb6, 0xb6, + 0x97, 0x06, 0xdd, 0xbc, 0x0e, 0x57, 0x24, 0x0e, 0x4b, 0xaf, 0xb4, 0x0e, 0x74, 0xcb, 0x6d, 0x6b, + 0xb6, 0x7d, 0xd8, 0xb2, 0xaa, 0xaa, 0x42, 0xb6, 0xe1, 0xd2, 0x14, 0x86, 0x66, 0x4d, 0x53, 0x73, + 0x99, 0x32, 0x53, 0x3f, 0xd4, 0x1a, 0xee, 0x6e, 0xcb, 0x51, 0xf3, 0xe5, 0x26, 0x3d, 0xe8, 0x10, + 0x6c, 0x8e, 0x65, 0x15, 0x58, 0x82, 0x82, 0xd9, 0x32, 0xf5, 0xf4, 0x35, 0xe3, 0x0a, 0x2c, 0x69, + 0xed, 0xb6, 0xd5, 0x3a, 0xc0, 0x01, 0x05, 0x58, 0xac, 0xea, 0x26, 0xed, 0x59, 0x9e, 0x96, 0xb4, + 0xad, 0x56, 0xb3, 0xe5, 0xe8, 0x55, 0xb5, 0x50, 0xb6, 0xc4, 0x82, 0x11, 0x8d, 0x1e, 0x0d, 0xd9, + 0x9d, 0x5e, 0x55, 0xaf, 0x69, 0x9d, 0x86, 0xc3, 0x3f, 0xc8, 0x03, 0xd7, 0xd2, 0x3f, 0xe9, 0xe8, + 0xb6, 0x63, 0xab, 0x0a, 0x51, 0x61, 0xc5, 0xd4, 0xf5, 0xaa, 0xed, 0x5a, 0xfa, 0x81, 0xa1, 0x1f, + 0xaa, 0x39, 0xda, 0x26, 0xfb, 0x9f, 0x3e, 0xa1, 0xfc, 0x54, 0x01, 0xc2, 0x80, 0xfa, 0x04, 0xfa, + 0x3b, 0x8e, 0xcf, 0x0e, 0x6c, 0xd7, 0xe9, 0x87, 0xc5, 0x57, 0x6b, 0xb6, 0xaa, 0xe9, 0x4f, 0x76, + 0x09, 0x48, 0xaa, 0xbc, 0x55, 0xab, 0xa9, 0x0a, 0xb9, 0x02, 0xaf, 0xa5, 0xe8, 0x55, 0xab, 0xd5, + 0x56, 0x73, 0xdb, 0xb9, 0x25, 0x85, 0x5c, 0xce, 0x14, 0xee, 0xeb, 0x7a, 0x5b, 0xcd, 0xd3, 0x21, + 0x4a, 0x15, 0x88, 0x09, 0xc8, 0xaa, 0x17, 0xca, 0x3f, 0x55, 0xe0, 0x12, 0xeb, 0xa6, 0x98, 0xcd, + 0x51, 0x57, 0xaf, 0xc2, 0x16, 0x87, 0x1f, 0x9d, 0xd6, 0xd1, 0x4d, 0x50, 0x13, 0xa5, 0xac, 0x9b, + 0xaf, 0xc3, 0x46, 0x82, 0x8a, 0xfd, 0xc8, 0xd1, 0xb5, 0x9a, 0x20, 0xef, 0xea, 0xb6, 0xe3, 0xea, + 0xb5, 0x5a, 0xcb, 0x72, 0x58, 0x47, 0xf2, 0xe5, 0x12, 0x6c, 0x54, 0xbc, 0x71, 0x48, 0x75, 0x10, + 0x3f, 0xe8, 0x0f, 0x7d, 0xec, 0xc2, 0x2a, 0x2c, 0xeb, 0xdf, 0x75, 0x74, 0xd3, 0x36, 0x5a, 0xa6, + 0x7a, 0xa1, 0x7c, 0x35, 0xc5, 0x23, 0x56, 0x8d, 0x6d, 0xd7, 0xd5, 0x0b, 0xe5, 0x2e, 0xac, 0x0a, + 0x37, 0x67, 0x36, 0x2b, 0x76, 0x60, 0x5b, 0xcc, 0x35, 0x5c, 0xbf, 0xe9, 0x57, 0xd8, 0x82, 0xcd, + 0x6c, 0xb9, 0xee, 0xa8, 0x0a, 0x1d, 0x85, 0x54, 0x09, 0xa5, 0xe7, 0xca, 0xff, 0xa8, 0xc0, 0x16, + 0xcf, 0xb3, 0xca, 0xef, 0x36, 0x18, 0xe2, 0x39, 0x42, 0x02, 0x96, 0xe1, 0xa6, 0x63, 0x75, 0x6c, + 0x47, 0xaf, 0xba, 0x55, 0xfd, 0xc0, 0xa8, 0xe8, 0x38, 0x5d, 0x0c, 0x4b, 0x6f, 0xea, 0xa6, 0x93, + 0x7a, 0xf4, 0x3b, 0xf0, 0xd5, 0x39, 0xbc, 0x66, 0xcb, 0x11, 0xbf, 0xe9, 0x2a, 0xf9, 0x2a, 0xfc, + 0xde, 0x1c, 0xe6, 0x88, 0x31, 0x57, 0xfe, 0x3e, 0xac, 0x24, 0xb2, 0xb8, 0x5c, 0x86, 0xd7, 0xe4, + 0xdf, 0x6d, 0xcf, 0xef, 0xf5, 0xfd, 0x63, 0xf5, 0x42, 0xba, 0xc0, 0x9a, 0xf8, 0x3e, 0x2d, 0xc0, + 0x05, 0x29, 0x17, 0x38, 0xde, 0xf8, 0xb4, 0xef, 0x77, 0x43, 0xaf, 0xa7, 0xe6, 0xca, 0xb7, 0x61, + 0x35, 0x81, 0x1d, 0x49, 0xbf, 0x7c, 0xa3, 0xc5, 0xf7, 0xab, 0xa6, 0x5e, 0x35, 0x3a, 0x4d, 0x75, + 0x81, 0x2e, 0xc5, 0xba, 0xb1, 0x57, 0x57, 0xa1, 0xfc, 0x73, 0x85, 0x4a, 0xcc, 0xf8, 0x7d, 0x9a, + 0x35, 0x4d, 0x8c, 0x15, 0x9d, 0x27, 0x0c, 0x91, 0x56, 0xb7, 0x6d, 0x76, 0x3d, 0x7e, 0x15, 0xb6, + 0xf8, 0x0f, 0x57, 0x33, 0xab, 0x6e, 0x5d, 0xb3, 0xaa, 0x87, 0x9a, 0x45, 0x27, 0xcf, 0x03, 0x35, + 0x87, 0x2b, 0x42, 0xa2, 0xb8, 0x4e, 0xab, 0x53, 0xa9, 0xab, 0x79, 0x3a, 0x01, 0x13, 0xf4, 0xb6, + 0x61, 0xaa, 0x05, 0x5c, 0x5f, 0x19, 0x6e, 0x6c, 0x96, 0x96, 0x2f, 0x94, 0x9f, 0x2b, 0x70, 0xd9, + 0xee, 0x1f, 0xfb, 0xdd, 0x70, 0x32, 0xf6, 0xb4, 0xc1, 0xf1, 0x70, 0xdc, 0x0f, 0x4f, 0x4e, 0xed, + 0x49, 0x3f, 0xf4, 0xc8, 0x2d, 0x78, 0xcb, 0x36, 0xf6, 0x4c, 0xcd, 0xa1, 0xeb, 0x43, 0x6b, 0xec, + 0xb5, 0x2c, 0xc3, 0xa9, 0x37, 0x5d, 0xbb, 0x63, 0x64, 0xa6, 0xce, 0x0d, 0x78, 0x63, 0x36, 0x6b, + 0x43, 0xdf, 0xd3, 0x2a, 0x0f, 0x54, 0x65, 0x7e, 0x83, 0xbb, 0x5a, 0x43, 0x33, 0x2b, 0x7a, 0xd5, + 0x3d, 0xb8, 0xa3, 0xe6, 0xc8, 0x5b, 0xf0, 0xe6, 0x6c, 0xd6, 0x9a, 0xd1, 0xb6, 0x29, 0x5b, 0x7e, + 0xfe, 0x73, 0xeb, 0x76, 0x93, 0x72, 0x15, 0xca, 0x7d, 0x50, 0xd3, 0x51, 0xf1, 0x19, 0x67, 0x0c, + 0xab, 0x63, 0x9a, 0x6c, 0x97, 0x5c, 0x87, 0x62, 0xcb, 0xa9, 0xeb, 0x16, 0x07, 0x46, 0x46, 0x24, + 0xe4, 0x8e, 0xa9, 0x75, 0x9c, 0x7a, 0xcb, 0x32, 0x3e, 0xc5, 0xed, 0x72, 0x0b, 0x36, 0xed, 0x86, + 0x56, 0xd9, 0xc7, 0x99, 0x69, 0x98, 0x6e, 0xa5, 0xae, 0x99, 0xa6, 0xde, 0x50, 0xa1, 0xfc, 0x0f, + 0x0a, 0xf3, 0x8a, 0x98, 0x16, 0x3e, 0x47, 0xbe, 0x06, 0x6f, 0xb7, 0xf6, 0x1d, 0xcd, 0x6d, 0x37, + 0x3a, 0x7b, 0x86, 0xe9, 0xda, 0x0f, 0xcc, 0x8a, 0x38, 0x48, 0x2b, 0xd9, 0x1d, 0xe5, 0x6d, 0xb8, + 0x31, 0x97, 0x3b, 0x86, 0x30, 0xbe, 0x09, 0xa5, 0xb9, 0x9c, 0xfc, 0x45, 0xca, 0xbf, 0x52, 0xe0, + 0xca, 0x9c, 0x5b, 0x4c, 0xf2, 0x2e, 0xdc, 0xaa, 0xeb, 0x5a, 0xb5, 0xa1, 0xdb, 0xb6, 0x4b, 0xdf, + 0x57, 0x37, 0x1d, 0xee, 0xb4, 0x31, 0x75, 0xbf, 0xb8, 0x05, 0x6f, 0xcd, 0x67, 0x8f, 0x4f, 0x9e, + 0xb7, 0xe1, 0xc6, 0x7c, 0x56, 0x7e, 0x12, 0xe5, 0xe8, 0xae, 0x31, 0x9f, 0x33, 0x3a, 0xc1, 0xf2, + 0xe5, 0x9f, 0x29, 0x70, 0x69, 0xba, 0xc2, 0x4e, 0xfb, 0x66, 0x98, 0xb6, 0xa3, 0x35, 0x1a, 0x6e, + 0x5b, 0xb3, 0xb4, 0xa6, 0xab, 0x9b, 0x56, 0xab, 0xd1, 0x98, 0xb6, 0x73, 0xdf, 0x80, 0x37, 0x66, + 0xb3, 0xda, 0x15, 0xcb, 0x68, 0xd3, 0x2d, 0xb0, 0x04, 0x3b, 0xb3, 0xb9, 0x74, 0xa3, 0xa2, 0xab, + 0xb9, 0xdd, 0xfb, 0xbf, 0xf8, 0x8f, 0x9d, 0x0b, 0xbf, 0x78, 0xbe, 0xa3, 0xfc, 0xfa, 0xf9, 0x8e, + 0xf2, 0xef, 0xcf, 0x77, 0x94, 0x4f, 0xdf, 0x39, 0x47, 0x92, 0xf8, 0x87, 0x8b, 0xe8, 0xa5, 0x74, + 0xf7, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xeb, 0xdc, 0x6a, 0x3b, 0x21, 0x96, 0x01, 0x00, } func (this *PluginSpecV1) Equal(that interface{}) bool { @@ -24834,6 +24998,18 @@ func (m *ServerSpecV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if m.GitHub != nil { + { + size, err := m.GitHub.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a + } if m.CloudMetadata != nil { { size, err := m.CloudMetadata.MarshalToSizedBuffer(dAtA[:i]) @@ -25047,6 +25223,47 @@ func (m *CloudMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GitHubServerMetadata) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubServerMetadata) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubServerMetadata) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Integration) > 0 { + i -= len(m.Integration) + copy(dAtA[i:], m.Integration) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Integration))) + i-- + dAtA[i] = 0x12 + } + if len(m.Organization) > 0 { + i -= len(m.Organization) + copy(dAtA[i:], m.Organization) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Organization))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *AppServerV3) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -26140,12 +26357,12 @@ func (m *ProvisionTokenV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x1a } - n66, err66 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err66 != nil { - return 0, err66 + n67, err67 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err67 != nil { + return 0, err67 } - i -= n66 - i = encodeVarintTypes(dAtA, i, uint64(n66)) + i -= n67 + i = encodeVarintTypes(dAtA, i, uint64(n67)) i-- dAtA[i] = 0x12 if len(m.Roles) > 0 { @@ -28992,12 +29209,12 @@ func (m *UserTokenSpecV3) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n114, err114 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err114 != nil { - return 0, err114 + n115, err115 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err115 != nil { + return 0, err115 } - i -= n114 - i = encodeVarintTypes(dAtA, i, uint64(n114)) + i -= n115 + i = encodeVarintTypes(dAtA, i, uint64(n115)) i-- dAtA[i] = 0x22 if m.Usage != 0 { @@ -29114,12 +29331,12 @@ func (m *UserTokenSecretsSpecV3) MarshalToSizedBuffer(dAtA []byte) (int, error) i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n117, err117 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err117 != nil { - return 0, err117 + n118, err118 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err118 != nil { + return 0, err118 } - i -= n117 - i = encodeVarintTypes(dAtA, i, uint64(n117)) + i -= n118 + i = encodeVarintTypes(dAtA, i, uint64(n118)) i-- dAtA[i] = 0x1a if len(m.QRCode) > 0 { @@ -29324,12 +29541,12 @@ func (m *AccessReview) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.XXX_unrecognized) } if m.AssumeStartTime != nil { - n120, err120 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) - if err120 != nil { - return 0, err120 + n121, err121 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) + if err121 != nil { + return 0, err121 } - i -= n120 - i = encodeVarintTypes(dAtA, i, uint64(n120)) + i -= n121 + i = encodeVarintTypes(dAtA, i, uint64(n121)) i-- dAtA[i] = 0x52 } @@ -29346,20 +29563,20 @@ func (m *AccessReview) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x4a } if len(m.ThresholdIndexes) > 0 { - dAtA123 := make([]byte, len(m.ThresholdIndexes)*10) - var j122 int + dAtA124 := make([]byte, len(m.ThresholdIndexes)*10) + var j123 int for _, num := range m.ThresholdIndexes { for num >= 1<<7 { - dAtA123[j122] = uint8(uint64(num)&0x7f | 0x80) + dAtA124[j123] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j122++ + j123++ } - dAtA123[j122] = uint8(num) - j122++ + dAtA124[j123] = uint8(num) + j123++ } - i -= j122 - copy(dAtA[i:], dAtA123[:j122]) - i = encodeVarintTypes(dAtA, i, uint64(j122)) + i -= j123 + copy(dAtA[i:], dAtA124[:j123]) + i = encodeVarintTypes(dAtA, i, uint64(j123)) i-- dAtA[i] = 0x3a } @@ -29373,12 +29590,12 @@ func (m *AccessReview) MarshalToSizedBuffer(dAtA []byte) (int, error) { } i-- dAtA[i] = 0x32 - n125, err125 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err125 != nil { - return 0, err125 + n126, err126 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err126 != nil { + return 0, err126 } - i -= n125 - i = encodeVarintTypes(dAtA, i, uint64(n125)) + i -= n126 + i = encodeVarintTypes(dAtA, i, uint64(n126)) i-- dAtA[i] = 0x2a if len(m.Reason) > 0 { @@ -29481,20 +29698,20 @@ func (m *ThresholdIndexSet) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.XXX_unrecognized) } if len(m.Indexes) > 0 { - dAtA128 := make([]byte, len(m.Indexes)*10) - var j127 int + dAtA129 := make([]byte, len(m.Indexes)*10) + var j128 int for _, num := range m.Indexes { for num >= 1<<7 { - dAtA128[j127] = uint8(uint64(num)&0x7f | 0x80) + dAtA129[j128] = uint8(uint64(num)&0x7f | 0x80) num >>= 7 - j127++ + j128++ } - dAtA128[j127] = uint8(num) - j127++ + dAtA129[j128] = uint8(num) + j128++ } - i -= j127 - copy(dAtA[i:], dAtA128[:j127]) - i = encodeVarintTypes(dAtA, i, uint64(j127)) + i -= j128 + copy(dAtA[i:], dAtA129[:j128]) + i = encodeVarintTypes(dAtA, i, uint64(j128)) i-- dAtA[i] = 0xa } @@ -29567,12 +29784,12 @@ func (m *AccessRequestSpecV3) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.XXX_unrecognized) } if m.AssumeStartTime != nil { - n129, err129 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) - if err129 != nil { - return 0, err129 + n130, err130 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) + if err130 != nil { + return 0, err130 } - i -= n129 - i = encodeVarintTypes(dAtA, i, uint64(n129)) + i -= n130 + i = encodeVarintTypes(dAtA, i, uint64(n130)) i-- dAtA[i] = 0x1 i-- @@ -29592,22 +29809,22 @@ func (m *AccessRequestSpecV3) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0xa2 } - n131, err131 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.SessionTTL, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.SessionTTL):]) - if err131 != nil { - return 0, err131 + n132, err132 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.SessionTTL, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.SessionTTL):]) + if err132 != nil { + return 0, err132 } - i -= n131 - i = encodeVarintTypes(dAtA, i, uint64(n131)) + i -= n132 + i = encodeVarintTypes(dAtA, i, uint64(n132)) i-- dAtA[i] = 0x1 i-- dAtA[i] = 0x92 - n132, err132 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.MaxDuration, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.MaxDuration):]) - if err132 != nil { - return 0, err132 + n133, err133 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.MaxDuration, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.MaxDuration):]) + if err133 != nil { + return 0, err133 } - i -= n132 - i = encodeVarintTypes(dAtA, i, uint64(n132)) + i -= n133 + i = encodeVarintTypes(dAtA, i, uint64(n133)) i-- dAtA[i] = 0x1 i-- @@ -29740,21 +29957,21 @@ func (m *AccessRequestSpecV3) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x32 } - n136, err136 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err136 != nil { - return 0, err136 - } - i -= n136 - i = encodeVarintTypes(dAtA, i, uint64(n136)) - i-- - dAtA[i] = 0x2a - n137, err137 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + n137, err137 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) if err137 != nil { return 0, err137 } i -= n137 i = encodeVarintTypes(dAtA, i, uint64(n137)) i-- + dAtA[i] = 0x2a + n138, err138 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err138 != nil { + return 0, err138 + } + i -= n138 + i = encodeVarintTypes(dAtA, i, uint64(n138)) + i-- dAtA[i] = 0x22 if m.State != 0 { i = encodeVarintTypes(dAtA, i, uint64(m.State)) @@ -30564,12 +30781,12 @@ func (m *RoleOptions) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n146, err146 := github_com_gogo_protobuf_types.StdDurationMarshalTo(m.MFAVerificationInterval, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdDuration(m.MFAVerificationInterval):]) - if err146 != nil { - return 0, err146 + n147, err147 := github_com_gogo_protobuf_types.StdDurationMarshalTo(m.MFAVerificationInterval, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdDuration(m.MFAVerificationInterval):]) + if err147 != nil { + return 0, err147 } - i -= n146 - i = encodeVarintTypes(dAtA, i, uint64(n146)) + i -= n147 + i = encodeVarintTypes(dAtA, i, uint64(n147)) i-- dAtA[i] = 0x1 i-- @@ -32388,12 +32605,12 @@ func (m *UserSpecV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { } i-- dAtA[i] = 0x42 - n175, err175 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err175 != nil { - return 0, err175 + n176, err176 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err176 != nil { + return 0, err176 } - i -= n175 - i = encodeVarintTypes(dAtA, i, uint64(n175)) + i -= n176 + i = encodeVarintTypes(dAtA, i, uint64(n176)) i-- dAtA[i] = 0x3a { @@ -32542,21 +32759,21 @@ func (m *LoginStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n178, err178 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LockExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LockExpires):]) - if err178 != nil { - return 0, err178 - } - i -= n178 - i = encodeVarintTypes(dAtA, i, uint64(n178)) - i-- - dAtA[i] = 0x22 - n179, err179 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LockedTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LockedTime):]) + n179, err179 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LockExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LockExpires):]) if err179 != nil { return 0, err179 } i -= n179 i = encodeVarintTypes(dAtA, i, uint64(n179)) i-- + dAtA[i] = 0x22 + n180, err180 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LockedTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LockedTime):]) + if err180 != nil { + return 0, err180 + } + i -= n180 + i = encodeVarintTypes(dAtA, i, uint64(n180)) + i-- dAtA[i] = 0x1a if len(m.LockedMessage) > 0 { i -= len(m.LockedMessage) @@ -32612,12 +32829,12 @@ func (m *CreatedBy) MarshalToSizedBuffer(dAtA []byte) (int, error) { } i-- dAtA[i] = 0x1a - n181, err181 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Time, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Time):]) - if err181 != nil { - return 0, err181 + n182, err182 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Time, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Time):]) + if err182 != nil { + return 0, err182 } - i -= n181 - i = encodeVarintTypes(dAtA, i, uint64(n181)) + i -= n182 + i = encodeVarintTypes(dAtA, i, uint64(n182)) i-- dAtA[i] = 0x12 if m.Connector != nil { @@ -32735,21 +32952,21 @@ func (m *MFADevice) MarshalToSizedBuffer(dAtA []byte) (int, error) { } } } - n184, err184 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUsed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUsed):]) - if err184 != nil { - return 0, err184 - } - i -= n184 - i = encodeVarintTypes(dAtA, i, uint64(n184)) - i-- - dAtA[i] = 0x3a - n185, err185 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.AddedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.AddedAt):]) + n185, err185 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUsed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUsed):]) if err185 != nil { return 0, err185 } i -= n185 i = encodeVarintTypes(dAtA, i, uint64(n185)) i-- + dAtA[i] = 0x3a + n186, err186 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.AddedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.AddedAt):]) + if err186 != nil { + return 0, err186 + } + i -= n186 + i = encodeVarintTypes(dAtA, i, uint64(n186)) + i-- dAtA[i] = 0x32 if len(m.Id) > 0 { i -= len(m.Id) @@ -33376,12 +33593,12 @@ func (m *TunnelConnectionSpecV2) MarshalToSizedBuffer(dAtA []byte) (int, error) i-- dAtA[i] = 0x22 } - n196, err196 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastHeartbeat, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastHeartbeat):]) - if err196 != nil { - return 0, err196 + n197, err197 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastHeartbeat, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastHeartbeat):]) + if err197 != nil { + return 0, err197 } - i -= n196 - i = encodeVarintTypes(dAtA, i, uint64(n196)) + i -= n197 + i = encodeVarintTypes(dAtA, i, uint64(n197)) i-- dAtA[i] = 0x1a if len(m.ProxyName) > 0 { @@ -33473,12 +33690,12 @@ func (m *AcquireSemaphoreRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) i-- dAtA[i] = 0x2a } - n197, err197 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err197 != nil { - return 0, err197 + n198, err198 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err198 != nil { + return 0, err198 } - i -= n197 - i = encodeVarintTypes(dAtA, i, uint64(n197)) + i -= n198 + i = encodeVarintTypes(dAtA, i, uint64(n198)) i-- dAtA[i] = 0x22 if m.MaxLeases != 0 { @@ -33527,12 +33744,12 @@ func (m *SemaphoreLease) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n198, err198 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err198 != nil { - return 0, err198 + n199, err199 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err199 != nil { + return 0, err199 } - i -= n198 - i = encodeVarintTypes(dAtA, i, uint64(n198)) + i -= n199 + i = encodeVarintTypes(dAtA, i, uint64(n199)) i-- dAtA[i] = 0x2a if len(m.LeaseID) > 0 { @@ -33590,12 +33807,12 @@ func (m *SemaphoreLeaseRef) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x1a } - n199, err199 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err199 != nil { - return 0, err199 + n200, err200 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err200 != nil { + return 0, err200 } - i -= n199 - i = encodeVarintTypes(dAtA, i, uint64(n199)) + i -= n200 + i = encodeVarintTypes(dAtA, i, uint64(n200)) i-- dAtA[i] = 0x12 if len(m.LeaseID) > 0 { @@ -33867,29 +34084,29 @@ func (m *WebSessionSpecV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x48 } - n206, err206 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LoginTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LoginTime):]) - if err206 != nil { - return 0, err206 - } - i -= n206 - i = encodeVarintTypes(dAtA, i, uint64(n206)) - i-- - dAtA[i] = 0x42 - n207, err207 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + n207, err207 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LoginTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LoginTime):]) if err207 != nil { return 0, err207 } i -= n207 i = encodeVarintTypes(dAtA, i, uint64(n207)) i-- - dAtA[i] = 0x3a - n208, err208 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.BearerTokenExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.BearerTokenExpires):]) + dAtA[i] = 0x42 + n208, err208 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) if err208 != nil { return 0, err208 } i -= n208 i = encodeVarintTypes(dAtA, i, uint64(n208)) i-- + dAtA[i] = 0x3a + n209, err209 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.BearerTokenExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.BearerTokenExpires):]) + if err209 != nil { + return 0, err209 + } + i -= n209 + i = encodeVarintTypes(dAtA, i, uint64(n209)) + i-- dAtA[i] = 0x32 if len(m.BearerToken) > 0 { i -= len(m.BearerToken) @@ -34121,21 +34338,21 @@ func (m *SAMLSessionData) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x22 } - n209, err209 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.ExpireTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.ExpireTime):]) - if err209 != nil { - return 0, err209 - } - i -= n209 - i = encodeVarintTypes(dAtA, i, uint64(n209)) - i-- - dAtA[i] = 0x1a - n210, err210 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CreateTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CreateTime):]) + n210, err210 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.ExpireTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.ExpireTime):]) if err210 != nil { return 0, err210 } i -= n210 i = encodeVarintTypes(dAtA, i, uint64(n210)) i-- + dAtA[i] = 0x1a + n211, err211 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CreateTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CreateTime):]) + if err211 != nil { + return 0, err211 + } + i -= n211 + i = encodeVarintTypes(dAtA, i, uint64(n211)) + i-- dAtA[i] = 0x12 if len(m.ID) > 0 { i -= len(m.ID) @@ -34416,12 +34633,12 @@ func (m *RemoteClusterStatusV3) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n214, err214 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastHeartbeat, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastHeartbeat):]) - if err214 != nil { - return 0, err214 + n215, err215 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastHeartbeat, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastHeartbeat):]) + if err215 != nil { + return 0, err215 } - i -= n214 - i = encodeVarintTypes(dAtA, i, uint64(n214)) + i -= n215 + i = encodeVarintTypes(dAtA, i, uint64(n215)) i-- dAtA[i] = 0x12 if len(m.Connection) > 0 { @@ -36870,12 +37087,12 @@ func (m *GithubAuthRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x62 } if m.Expires != nil { - n247, err247 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err247 != nil { - return 0, err247 + n248, err248 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err248 != nil { + return 0, err248 } - i -= n247 - i = encodeVarintTypes(dAtA, i, uint64(n247)) + i -= n248 + i = encodeVarintTypes(dAtA, i, uint64(n248)) i-- dAtA[i] = 0x5a } @@ -37887,21 +38104,21 @@ func (m *LockSpecV2) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x2a } - n265, err265 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CreatedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CreatedAt):]) - if err265 != nil { - return 0, err265 + n266, err266 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CreatedAt, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CreatedAt):]) + if err266 != nil { + return 0, err266 } - i -= n265 - i = encodeVarintTypes(dAtA, i, uint64(n265)) + i -= n266 + i = encodeVarintTypes(dAtA, i, uint64(n266)) i-- dAtA[i] = 0x22 if m.Expires != nil { - n266, err266 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err266 != nil { - return 0, err266 + n267, err267 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err267 != nil { + return 0, err267 } - i -= n266 - i = encodeVarintTypes(dAtA, i, uint64(n266)) + i -= n267 + i = encodeVarintTypes(dAtA, i, uint64(n267)) i-- dAtA[i] = 0x1a } @@ -38508,12 +38725,12 @@ func (m *RegisterUsingTokenRequest) MarshalToSizedBuffer(dAtA []byte) (int, erro dAtA[i] = 0x6a } if m.Expires != nil { - n275, err275 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err275 != nil { - return 0, err275 + n276, err276 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err276 != nil { + return 0, err276 } - i -= n275 - i = encodeVarintTypes(dAtA, i, uint64(n275)) + i -= n276 + i = encodeVarintTypes(dAtA, i, uint64(n276)) i-- dAtA[i] = 0x62 } @@ -38693,12 +38910,12 @@ func (m *RecoveryCodesSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n278, err278 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err278 != nil { - return 0, err278 + n279, err279 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err279 != nil { + return 0, err279 } - i -= n278 - i = encodeVarintTypes(dAtA, i, uint64(n278)) + i -= n279 + i = encodeVarintTypes(dAtA, i, uint64(n279)) i-- dAtA[i] = 0x12 if len(m.Codes) > 0 { @@ -39078,21 +39295,21 @@ func (m *SessionTrackerSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x32 } - n282, err282 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err282 != nil { - return 0, err282 - } - i -= n282 - i = encodeVarintTypes(dAtA, i, uint64(n282)) - i-- - dAtA[i] = 0x2a - n283, err283 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + n283, err283 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) if err283 != nil { return 0, err283 } i -= n283 i = encodeVarintTypes(dAtA, i, uint64(n283)) i-- + dAtA[i] = 0x2a + n284, err284 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err284 != nil { + return 0, err284 + } + i -= n284 + i = encodeVarintTypes(dAtA, i, uint64(n284)) + i-- dAtA[i] = 0x22 if m.State != 0 { i = encodeVarintTypes(dAtA, i, uint64(m.State)) @@ -39195,12 +39412,12 @@ func (m *Participant) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n284, err284 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastActive, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastActive):]) - if err284 != nil { - return 0, err284 + n285, err285 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastActive, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastActive):]) + if err285 != nil { + return 0, err285 } - i -= n284 - i = encodeVarintTypes(dAtA, i, uint64(n284)) + i -= n285 + i = encodeVarintTypes(dAtA, i, uint64(n285)) i-- dAtA[i] = 0x22 if len(m.Mode) > 0 { @@ -39912,12 +40129,12 @@ func (m *ClusterAlertSpec) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n297, err297 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err297 != nil { - return 0, err297 + n298, err298 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err298 != nil { + return 0, err298 } - i -= n297 - i = encodeVarintTypes(dAtA, i, uint64(n297)) + i -= n298 + i = encodeVarintTypes(dAtA, i, uint64(n298)) i-- dAtA[i] = 0x1a if len(m.Message) > 0 { @@ -40047,12 +40264,12 @@ func (m *AlertAcknowledgement) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n298, err298 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err298 != nil { - return 0, err298 + n299, err299 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err299 != nil { + return 0, err299 } - i -= n298 - i = encodeVarintTypes(dAtA, i, uint64(n298)) + i -= n299 + i = encodeVarintTypes(dAtA, i, uint64(n299)) i-- dAtA[i] = 0x22 if len(m.Reason) > 0 { @@ -41714,12 +41931,12 @@ func (m *PluginStatusV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x32 } - n324, err324 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastSyncTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastSyncTime):]) - if err324 != nil { - return 0, err324 + n325, err325 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastSyncTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastSyncTime):]) + if err325 != nil { + return 0, err325 } - i -= n324 - i = encodeVarintTypes(dAtA, i, uint64(n324)) + i -= n325 + i = encodeVarintTypes(dAtA, i, uint64(n325)) i-- dAtA[i] = 0x1a if len(m.ErrorMessage) > 0 { @@ -42059,22 +42276,22 @@ func (m *PluginOktaStatusDetailsAppGroupSync) MarshalToSizedBuffer(dAtA []byte) dAtA[i] = 0x28 } if m.LastFailed != nil { - n333, err333 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) - if err333 != nil { - return 0, err333 + n334, err334 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) + if err334 != nil { + return 0, err334 } - i -= n333 - i = encodeVarintTypes(dAtA, i, uint64(n333)) + i -= n334 + i = encodeVarintTypes(dAtA, i, uint64(n334)) i-- dAtA[i] = 0x22 } if m.LastSuccessful != nil { - n334, err334 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) - if err334 != nil { - return 0, err334 + n335, err335 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) + if err335 != nil { + return 0, err335 } - i -= n334 - i = encodeVarintTypes(dAtA, i, uint64(n334)) + i -= n335 + i = encodeVarintTypes(dAtA, i, uint64(n335)) i-- dAtA[i] = 0x1a } @@ -42133,22 +42350,22 @@ func (m *PluginOktaStatusDetailsUsersSync) MarshalToSizedBuffer(dAtA []byte) (in dAtA[i] = 0x28 } if m.LastFailed != nil { - n335, err335 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) - if err335 != nil { - return 0, err335 + n336, err336 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) + if err336 != nil { + return 0, err336 } - i -= n335 - i = encodeVarintTypes(dAtA, i, uint64(n335)) + i -= n336 + i = encodeVarintTypes(dAtA, i, uint64(n336)) i-- dAtA[i] = 0x22 } if m.LastSuccessful != nil { - n336, err336 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) - if err336 != nil { - return 0, err336 + n337, err337 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) + if err337 != nil { + return 0, err337 } - i -= n336 - i = encodeVarintTypes(dAtA, i, uint64(n336)) + i -= n337 + i = encodeVarintTypes(dAtA, i, uint64(n337)) i-- dAtA[i] = 0x1a } @@ -42267,22 +42484,22 @@ func (m *PluginOktaStatusDetailsAccessListsSync) MarshalToSizedBuffer(dAtA []byt } } if m.LastFailed != nil { - n337, err337 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) - if err337 != nil { - return 0, err337 + n338, err338 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastFailed, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastFailed):]) + if err338 != nil { + return 0, err338 } - i -= n337 - i = encodeVarintTypes(dAtA, i, uint64(n337)) + i -= n338 + i = encodeVarintTypes(dAtA, i, uint64(n338)) i-- dAtA[i] = 0x22 } if m.LastSuccessful != nil { - n338, err338 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) - if err338 != nil { - return 0, err338 + n339, err339 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.LastSuccessful, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.LastSuccessful):]) + if err339 != nil { + return 0, err339 } - i -= n338 - i = encodeVarintTypes(dAtA, i, uint64(n338)) + i -= n339 + i = encodeVarintTypes(dAtA, i, uint64(n339)) i-- dAtA[i] = 0x1a } @@ -42448,12 +42665,12 @@ func (m *PluginOAuth2AccessTokenCredentials) MarshalToSizedBuffer(dAtA []byte) ( i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n343, err343 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err343 != nil { - return 0, err343 + n344, err344 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err344 != nil { + return 0, err344 } - i -= n343 - i = encodeVarintTypes(dAtA, i, uint64(n343)) + i -= n344 + i = encodeVarintTypes(dAtA, i, uint64(n344)) i-- dAtA[i] = 0x1a if len(m.RefreshToken) > 0 { @@ -43324,21 +43541,21 @@ func (m *ScheduledAgentUpgradeWindow) MarshalToSizedBuffer(dAtA []byte) (int, er i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n357, err357 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Stop, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Stop):]) - if err357 != nil { - return 0, err357 - } - i -= n357 - i = encodeVarintTypes(dAtA, i, uint64(n357)) - i-- - dAtA[i] = 0x12 - n358, err358 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Start, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Start):]) + n358, err358 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Stop, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Stop):]) if err358 != nil { return 0, err358 } i -= n358 i = encodeVarintTypes(dAtA, i, uint64(n358)) i-- + dAtA[i] = 0x12 + n359, err359 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Start, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Start):]) + if err359 != nil { + return 0, err359 + } + i -= n359 + i = encodeVarintTypes(dAtA, i, uint64(n359)) + i-- dAtA[i] = 0xa return len(dAtA) - i, nil } @@ -43764,12 +43981,12 @@ func (m *OktaAssignmentSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x30 } - n365, err365 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastTransition, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastTransition):]) - if err365 != nil { - return 0, err365 + n366, err366 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastTransition, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastTransition):]) + if err366 != nil { + return 0, err366 } - i -= n365 - i = encodeVarintTypes(dAtA, i, uint64(n365)) + i -= n366 + i = encodeVarintTypes(dAtA, i, uint64(n366)) i-- dAtA[i] = 0x2a if m.Status != 0 { @@ -43777,12 +43994,12 @@ func (m *OktaAssignmentSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x20 } - n366, err366 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CleanupTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CleanupTime):]) - if err366 != nil { - return 0, err366 + n367, err367 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.CleanupTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.CleanupTime):]) + if err367 != nil { + return 0, err367 } - i -= n366 - i = encodeVarintTypes(dAtA, i, uint64(n366)) + i -= n367 + i = encodeVarintTypes(dAtA, i, uint64(n367)) i-- dAtA[i] = 0x1a if len(m.Targets) > 0 { @@ -43973,6 +44190,27 @@ func (m *IntegrationSpecV1_AzureOIDC) MarshalToSizedBuffer(dAtA []byte) (int, er } return len(dAtA) - i, nil } +func (m *IntegrationSpecV1_GitHub) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IntegrationSpecV1_GitHub) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GitHub != nil { + { + size, err := m.GitHub.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + } + return len(dAtA) - i, nil +} func (m *AWSOIDCIntegrationSpecV1) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -44055,6 +44293,103 @@ func (m *AzureOIDCIntegrationSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, err return len(dAtA) - i, nil } +func (m *GitHubIntegrationSpecV1) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubIntegrationSpecV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubIntegrationSpecV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if m.Proxy != nil { + { + size, err := m.Proxy.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.Organization) > 0 { + i -= len(m.Organization) + copy(dAtA[i:], m.Organization) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Organization))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *GitHubProxy) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubProxy) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubProxy) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.CertAuthority) > 0 { + for iNdEx := len(m.CertAuthority) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.CertAuthority[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + } + if m.Enabled { + i-- + if m.Enabled { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x8 + } + return len(dAtA) - i, nil +} + func (m *HeadlessAuthentication) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -46360,6 +46695,10 @@ func (m *ServerSpecV2) Size() (n int) { l = m.CloudMetadata.Size() n += 1 + l + sovTypes(uint64(l)) } + if m.GitHub != nil { + l = m.GitHub.Size() + n += 1 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -46418,6 +46757,26 @@ func (m *CloudMetadata) Size() (n int) { return n } +func (m *GitHubServerMetadata) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Organization) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.Integration) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *AppServerV3) Size() (n int) { if m == nil { return 0 @@ -55008,6 +55367,18 @@ func (m *IntegrationSpecV1_AzureOIDC) Size() (n int) { } return n } +func (m *IntegrationSpecV1_GitHub) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GitHub != nil { + l = m.GitHub.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} func (m *AWSOIDCIntegrationSpecV1) Size() (n int) { if m == nil { return 0 @@ -55048,6 +55419,47 @@ func (m *AzureOIDCIntegrationSpecV1) Size() (n int) { return n } +func (m *GitHubIntegrationSpecV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Organization) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + if m.Proxy != nil { + l = m.Proxy.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *GitHubProxy) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Enabled { + n += 2 + } + if len(m.CertAuthority) > 0 { + for _, e := range m.CertAuthority { + l = e.Size() + n += 1 + l + sovTypes(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *HeadlessAuthentication) Size() (n int) { if m == nil { return 0 @@ -63106,6 +63518,42 @@ func (m *ServerSpecV2) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitHub", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.GitHub == nil { + m.GitHub = &GitHubServerMetadata{} + } + if err := m.GitHub.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -63458,6 +63906,121 @@ func (m *CloudMetadata) Unmarshal(dAtA []byte) error { } return nil } +func (m *GitHubServerMetadata) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubServerMetadata: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubServerMetadata: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Organization", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Organization = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Integration", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Integration = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *AppServerV3) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -117661,6 +118224,41 @@ func (m *IntegrationSpecV1) Unmarshal(dAtA []byte) error { } m.SubKindSpec = &IntegrationSpecV1_AzureOIDC{v} iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitHub", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &GitHubIntegrationSpecV1{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SubKindSpec = &IntegrationSpecV1_GitHub{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -117913,6 +118511,230 @@ func (m *AzureOIDCIntegrationSpecV1) Unmarshal(dAtA []byte) error { } return nil } +func (m *GitHubIntegrationSpecV1) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubIntegrationSpecV1: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubIntegrationSpecV1: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Organization", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Organization = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Proxy", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.Proxy == nil { + m.Proxy = &GitHubProxy{} + } + if err := m.Proxy.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GitHubProxy) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubProxy: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubProxy: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Enabled = bool(v != 0) + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CertAuthority", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CertAuthority = append(m.CertAuthority, &SSHKeyPair{}) + if err := m.CertAuthority[len(m.CertAuthority)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *HeadlessAuthentication) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/api/utils/route.go b/api/utils/route.go index 1ca83926e4ee1..5612c92740304 100644 --- a/api/utils/route.go +++ b/api/utils/route.go @@ -136,6 +136,11 @@ func (m *SSHRouteMatcher) RouteToServerScore(server RouteableServer) (score int) return directMatch } + // TODO do it properly + if server.GetAddr() == "github.com:22" && server.GetHostname() == m.cfg.Host { + return directMatch + } + hostnameMatch := m.routeToHostname(server.GetHostname()) // if the server has connected over a reverse tunnel diff --git a/go.mod b/go.mod index 2c595a779134d..06b31eb72c239 100644 --- a/go.mod +++ b/go.mod @@ -545,6 +545,16 @@ require ( sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect ) +require github.com/go-git/go-git/v5 v5.12.0 + +require ( + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect + github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect + gopkg.in/warnings.v0 v0.1.2 // indirect +) + // Update also `ignore` in .github/dependabot.yml. replace ( github.com/alecthomas/kingpin/v2 => github.com/gravitational/kingpin/v2 v2.1.11-0.20230515143221-4ec6b70ecd33 diff --git a/go.sum b/go.sum index 98587d547be1f..f9a8d4d3ad25e 100644 --- a/go.sum +++ b/go.sum @@ -757,8 +757,8 @@ github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAE github.com/OneOfOne/xxhash v1.2.8 h1:31czK/TI9sNkxIKfaUfGlU47BAxQ0ztGgd9vPyqimf8= github.com/OneOfOne/xxhash v1.2.8/go.mod h1:eZbhyaAYD41SGSSsnmcpxVoRiQ/MPUTjUdIIOT9Um7Q= github.com/ProtonMail/go-crypto v0.0.0-20230217124315-7d5c6f04bbb8/go.mod h1:I0gYDMZ6Z5GRU7l58bNFSkPTFN6Yl12dsUlAZ8xy98g= -github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c h1:kMFnB0vCcX7IL/m9Y5LO+KQYv+t1CQOiFe6+SV2J7bE= -github.com/ProtonMail/go-crypto v0.0.0-20230923063757-afb1ddc0824c/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= +github.com/ProtonMail/go-crypto v1.0.0 h1:LRuvITjQWX+WIfr930YHG2HNfjR1uOfyf5vE0kC2U78= +github.com/ProtonMail/go-crypto v1.0.0/go.mod h1:EjAoLdwvbIOoOQr3ihjnSoLZRtE8azugULFRteWMNc0= github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d h1:UrqY+r/OJnIp5u0s1SbQ8dVfLCZJsnvazdBP5hS4iRs= github.com/Shopify/logrus-bugsnag v0.0.0-20171204204709-577dee27f20d/go.mod h1:HI8ITrYtUY+O+ZhtlqUnD8+KwNPOyugEhfP9fdUIaEQ= github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= @@ -1231,6 +1231,14 @@ github.com/go-fonts/latin-modern v0.2.0/go.mod h1:rQVLdDMK+mK1xscDwsqM5J8U2jrRa3 github.com/go-fonts/liberation v0.1.1/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= github.com/go-fonts/liberation v0.2.0/go.mod h1:K6qoJYypsmfVjWg8KOVDQhLc8UDgIK2HYqyqAO9z7GY= github.com/go-fonts/stix v0.1.0/go.mod h1:w/c1f0ldAUlJmLBvlbkvVXLAD+tAMqobIIQpmnUIzUY= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 h1:+zs/tPmkDkHx3U66DAb0lQFJrpS6731Oaa12ikc+DiI= +github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376/go.mod h1:an3vInlBmSxCcxctByoQdvwPiA7DTK7jaaFDBTtu0ic= +github.com/go-git/go-billy/v5 v5.5.0 h1:yEY4yhzCDuMGSv83oGxiBotRzhwhNr8VZyphhiu+mTU= +github.com/go-git/go-billy/v5 v5.5.0/go.mod h1:hmexnoNsr2SJU1Ju67OaNz5ASJY3+sHgFRpCtpDCKow= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399 h1:eMje31YglSBqCdIqdhKBW8lokaMrL3uTkpGYlE2OOT4= +github.com/go-git/go-git-fixtures/v4 v4.3.2-0.20231010084843-55a94097c399/go.mod h1:1OCfN199q1Jm3HZlxleg+Dw/mwps2Wbk9frAWm+4FII= +github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZtys= +github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= @@ -1710,6 +1718,8 @@ github.com/jackc/puddle v1.1.3/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dv github.com/jackc/puddle v1.3.0/go.mod h1:m4B5Dj62Y0fbyuIc15OsIqK0+JU8nkqQjsgx7dvjSWk= github.com/jackc/puddle/v2 v2.2.1 h1:RhxXJtFG022u4ibrCSMSiu5aOq1i77R3OHKNJj77OAk= github.com/jackc/puddle/v2 v2.2.1/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= +github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= +github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99/go.mod h1:1lJo3i6rXxKeerYnT8Nvf0QmHCRC1n8sfWVwXF2Frvo= github.com/jcmturner/aescts/v2 v2.0.0 h1:9YKLH6ey7H4eDBXW8khjYslgyqG2xZikXP0EQFKrle8= github.com/jcmturner/aescts/v2 v2.0.0/go.mod h1:AiaICIRyfYg35RUkr8yESTqvSy7csK90qZ5xfvvsoNs= github.com/jcmturner/dnsutils/v2 v2.0.0 h1:lltnkeZGL0wILNvrNiVCR6Ro5PGU/SeBvVO/8c/iPbo= @@ -2027,6 +2037,8 @@ github.com/pingcap/errors v0.11.5-0.20201126102027-b0a155152ca3/go.mod h1:G7x87l github.com/pingcap/log v0.0.0-20200511115504-543df19646ad/go.mod h1:4rbK1p9ILyIfb6hU7OG2CiWSqMXnp3JMbiaVJ6mvoY8= github.com/pingcap/log v0.0.0-20210317133921-96f4fcab92a4/go.mod h1:4rbK1p9ILyIfb6hU7OG2CiWSqMXnp3JMbiaVJ6mvoY8= github.com/pingcap/parser v0.0.0-20210415081931-48e7f467fd74/go.mod h1:xZC8I7bug4GJ5KtHhgAikjTfU4kBv1Sbo3Pf1MZ6lVw= +github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= +github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= github.com/pkg/browser v0.0.0-20210115035449-ce105d075bb4/go.mod h1:N6UoU20jOqggOuDwUaBQpluzLNDqif3kq9z2wpdYEfQ= github.com/pkg/browser v0.0.0-20210911075715-681adbf594b8/go.mod h1:HKlIX3XHQyzLZPlr7++PzdhaXEj94dEiJgZDTsxEqUI= github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= @@ -2141,8 +2153,8 @@ github.com/segmentio/encoding v0.4.0 h1:MEBYvRqiUB2nfR2criEXWqwdY6HJOUrCn5hboVOV github.com/segmentio/encoding v0.4.0/go.mod h1:/d03Cd8PoaDeceuhUUUQWjU0KhWjrmYrWPgtJHYZSnI= github.com/segmentio/ksuid v1.0.4 h1:sBo2BdShXjmcugAMwjugoGUdUV0pcxY5mW4xKRn3v4c= github.com/segmentio/ksuid v1.0.4/go.mod h1:/XUiZBD3kVx5SmUOl55voK5yeAbBNNIed+2O73XgrPE= -github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= -github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3 h1:n661drycOFuPLCN3Uc8sB6B/s6Z4t2xvBgU1htSHuq8= +github.com/sergi/go-diff v1.3.2-0.20230802210424-5b0b94c5c0d3/go.mod h1:A0bzQcvG0E7Rwjx0REVgAGH58e96+X0MeOfepqsbeW4= github.com/shabbyrobe/gocovmerge v0.0.0-20190829150210-3e036491d500/go.mod h1:+njLrG5wSeoG4Ds61rFgEzKvenR2UHbjMoDHsczxly0= github.com/shabbyrobe/gocovmerge v0.0.0-20230507112040-c3350d9342df h1:S77Pf5fIGMa7oSwp8SQPp7Hb4ZiI38K3RNBKD2LLeEM= github.com/shabbyrobe/gocovmerge v0.0.0-20230507112040-c3350d9342df/go.mod h1:dcuzJZ83w/SqN9k4eQqwKYMgmKWzg/KzJAURBhRL1tc= @@ -3200,6 +3212,8 @@ gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce/go.mod h1:5AcXVHN gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= +gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= diff --git a/lib/auth/auth.go b/lib/auth/auth.go index 62c5b19724c8a..56592aeacdc3d 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -68,6 +68,7 @@ import ( apidefaults "github.com/gravitational/teleport/api/defaults" devicepb "github.com/gravitational/teleport/api/gen/proto/go/teleport/devicetrust/v1" headerv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/header/v1" + integrationv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" mfav1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/mfa/v1" notificationsv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/notifications/v1" "github.com/gravitational/teleport/api/internalutils/stream" @@ -659,6 +660,11 @@ func (r *Services) GenerateAWSOIDCToken(ctx context.Context, integration string) return r.IntegrationsTokenGenerator.GenerateAWSOIDCToken(ctx, integration) } +// TODO +func (r *Services) GenerateGitHubUserCert(ctx context.Context, in *integrationv1.GenerateGitHubUserCertRequest) (*integrationv1.GenerateGitHubUserCertResponse, error) { + return r.IntegrationsTokenGenerator.GenerateGitHubUserCert(ctx, in) +} + var ( generateRequestsCount = prometheus.NewCounter( prometheus.CounterOpts{ diff --git a/lib/auth/authclient/api.go b/lib/auth/authclient/api.go index b4a3fd3479e65..8ec139f65ba57 100644 --- a/lib/auth/authclient/api.go +++ b/lib/auth/authclient/api.go @@ -743,7 +743,7 @@ type ReadDiscoveryAccessPoint interface { ListDiscoveryConfigs(ctx context.Context, pageSize int, nextKey string) ([]*discoveryconfig.DiscoveryConfig, string, error) // GetIntegration returns the specified integration resource. - GetIntegration(ctx context.Context, name string) (types.Integration, error) + GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) // GetProxies returns a list of registered proxies. GetProxies() ([]types.Server, error) diff --git a/lib/auth/authclient/clt.go b/lib/auth/authclient/clt.go index d4d00afc70cf9..070051388e08e 100644 --- a/lib/auth/authclient/clt.go +++ b/lib/auth/authclient/clt.go @@ -1813,6 +1813,9 @@ type ClientI interface { // GenerateAppToken creates a JWT token with application access. GenerateAppToken(ctx context.Context, req types.GenerateAppTokenRequest) (string, error) + + // TODO is there a better place for this? + GenerateGitHubUserCert(ctx context.Context, in *integrationv1.GenerateGitHubUserCertRequest) (*integrationv1.GenerateGitHubUserCertResponse, error) } type CreateAppSessionForV15Client interface { diff --git a/lib/auth/integration/integrationv1/service.go b/lib/auth/integration/integrationv1/service.go index 4a4d5638bafce..e4db21a3ee27b 100644 --- a/lib/auth/integration/integrationv1/service.go +++ b/lib/auth/integration/integrationv1/service.go @@ -21,11 +21,14 @@ package integrationv1 import ( "context" "crypto" + "crypto/rand" "fmt" + "time" "github.com/gravitational/trace" "github.com/jonboulle/clockwork" "github.com/sirupsen/logrus" + "golang.org/x/crypto/ssh" "google.golang.org/protobuf/types/known/emptypb" "github.com/gravitational/teleport" @@ -33,6 +36,7 @@ import ( "github.com/gravitational/teleport/api/types" apievents "github.com/gravitational/teleport/api/types/events" "github.com/gravitational/teleport/lib/authz" + "github.com/gravitational/teleport/lib/cryptosuites" "github.com/gravitational/teleport/lib/events" "github.com/gravitational/teleport/lib/services" ) @@ -57,6 +61,10 @@ type Cache interface { type KeyStoreManager interface { // GetJWTSigner selects a usable JWT keypair from the given keySet and returns a [crypto.Signer]. GetJWTSigner(ctx context.Context, ca types.CertAuthority) (crypto.Signer, error) + // NewSSHKeyPair generates a new SSH keypair in the keystore backend and returns it. + NewSSHKeyPair(ctx context.Context, purpose cryptosuites.KeyPurpose) (*types.SSHKeyPair, error) + // TODO + GetSSHSignerForKeySet(ctx context.Context, keySet types.CAKeySet) (ssh.Signer, error) } // ServiceConfig holds configuration options for @@ -175,10 +183,23 @@ func (s *Service) GetIntegration(ctx context.Context, req *integrationpb.GetInte return nil, trace.Wrap(err) } - if err := authCtx.CheckAccessToKind(types.KindIntegration, types.VerbRead); err != nil { + readVerb := types.VerbReadNoSecrets + if req.WithSecrets { + readVerb = types.VerbRead + } + + if err := authCtx.CheckAccessToKind(types.KindIntegration, readVerb); err != nil { return nil, trace.Wrap(err) } - integration, err := s.cache.GetIntegration(ctx, req.GetName()) + + // Require admin MFA to read secrets. + if req.WithSecrets { + if err := authCtx.AuthorizeAdminActionAllowReusedMFA(); err != nil { + return nil, trace.Wrap(err) + } + } + + integration, err := s.cache.GetIntegration(ctx, req.GetName(), req.WithSecrets) if err != nil { return nil, trace.Wrap(err) } @@ -202,7 +223,21 @@ func (s *Service) CreateIntegration(ctx context.Context, req *integrationpb.Crea return nil, trace.Wrap(err) } - ig, err := s.backend.CreateIntegration(ctx, req.GetIntegration()) + // TODO move to a helper? + reqIg := req.GetIntegration() + if reqIg.GetSubKind() == types.IntegrationSubKindGitHub { + // TODO make your own purpose? + ca, err := s.keyStoreManager.NewSSHKeyPair(ctx, cryptosuites.UserCASSH) + if err != nil { + return nil, trace.Wrap(err) + } + // TODO(greedy52) support per auth CA like HSM. + if err := reqIg.SetGitHubSSHCertAuthority([]*types.SSHKeyPair{ca}); err != nil { + return nil, trace.Wrap(err) + } + } + + ig, err := s.backend.CreateIntegration(ctx, reqIg) if err != nil { return nil, trace.Wrap(err) } @@ -292,7 +327,7 @@ func (s *Service) DeleteIntegration(ctx context.Context, req *integrationpb.Dele return nil, trace.Wrap(err) } - ig, err := s.cache.GetIntegration(ctx, req.GetName()) + ig, err := s.cache.GetIntegration(ctx, req.GetName(), false) if err != nil { return nil, trace.Wrap(err) } @@ -339,6 +374,10 @@ func getIntegrationMetadata(ig types.Integration) (apievents.IntegrationMetadata TenantID: ig.GetAzureOIDCIntegrationSpec().TenantID, ClientID: ig.GetAzureOIDCIntegrationSpec().ClientID, } + case types.IntegrationSubKindGitHub: + igMeta.GitHub = &apievents.GitHubIntegrationMetadata{ + Organization: ig.GetGitHubIntegrationSpec().Organization, + } default: return apievents.IntegrationMetadata{}, fmt.Errorf("unknown integration subkind: %s", igMeta.SubKind) } @@ -351,3 +390,57 @@ func getIntegrationMetadata(ig types.Integration) (apievents.IntegrationMetadata func (s *Service) DeleteAllIntegrations(ctx context.Context, _ *integrationpb.DeleteAllIntegrationsRequest) (*emptypb.Empty, error) { return nil, trace.BadParameter("DeleteAllIntegrations is deprecated") } + +func (s *Service) GenerateGitHubUserCert(ctx context.Context, in *integrationpb.GenerateGitHubUserCertRequest) (*integrationpb.GenerateGitHubUserCertResponse, error) { + authCtx, err := s.authorizer.Authorize(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + + if !authz.HasBuiltinRole(*authCtx, string(types.RoleProxy)) { + return nil, trace.AccessDenied("GenerateGitHubUserCert is only available to proxy services") + } + + key, _, _, _, err := ssh.ParseAuthorizedKey(in.PublicKey) + if err != nil { + return nil, trace.Wrap(err) + } + + integration, err := s.cache.GetIntegration(ctx, in.Integration, true) + if err != nil { + return nil, trace.Wrap(err) + } + + spec := integration.GetGitHubIntegrationSpec() + if !spec.Proxy.Enabled { + return nil, trace.BadParameter("GitHub Proxy for integration %s is disabled", in.Integration) + } + + caSigner, err := s.keyStoreManager.GetSSHSignerForKeySet(ctx, types.CAKeySet{ + SSH: spec.Proxy.CertAuthority, + }) + if err != nil { + return nil, trace.Wrap(err) + } + + // TODO clockwork? + now := time.Now() + validAfter := now.Add(-time.Minute) + expires := now.Add(in.Ttl.AsDuration()) + newSSHCert := &ssh.Certificate{ + Key: key, + CertType: ssh.UserCert, + KeyId: in.KeyId, + ValidAfter: uint64(validAfter.Unix()), + ValidBefore: uint64(expires.Unix()), + } + newSSHCert.Extensions = map[string]string{ + "login@github.com": in.Login, + } + if err := newSSHCert.SignCert(rand.Reader, caSigner); err != nil { + return nil, trace.Wrap(err) + } + return &integrationpb.GenerateGitHubUserCertResponse{ + AuthorizedKey: ssh.MarshalAuthorizedKey(newSSHCert), + }, nil +} diff --git a/lib/auth/keystore/manager.go b/lib/auth/keystore/manager.go index d26749089464e..cd30548a1f1ec 100644 --- a/lib/auth/keystore/manager.go +++ b/lib/auth/keystore/manager.go @@ -271,6 +271,10 @@ func (m *Manager) GetAdditionalTrustedSSHSigner(ctx context.Context, ca types.Ce return signer, trace.Wrap(err) } +func (m *Manager) GetSSHSignerForKeySet(ctx context.Context, keySet types.CAKeySet) (ssh.Signer, error) { + return m.getSSHSigner(ctx, keySet) +} + func (m *Manager) getSSHSigner(ctx context.Context, keySet types.CAKeySet) (ssh.Signer, error) { for _, backend := range m.usableSigningBackends { for _, keyPair := range keySet.SSH { diff --git a/lib/cache/cache.go b/lib/cache/cache.go index 9229996865a2e..f3320c43fecd9 100644 --- a/lib/cache/cache.go +++ b/lib/cache/cache.go @@ -167,7 +167,7 @@ func ForAuth(cfg Config) Config { {Kind: types.KindUserGroup}, {Kind: types.KindOktaImportRule}, {Kind: types.KindOktaAssignment}, - {Kind: types.KindIntegration}, + {Kind: types.KindIntegration, LoadSecrets: true}, {Kind: types.KindHeadlessAuthentication}, {Kind: types.KindUserLoginState}, {Kind: types.KindDiscoveryConfig}, @@ -2853,7 +2853,7 @@ func (c *Cache) ListIntegrations(ctx context.Context, pageSize int, nextKey stri } // GetIntegration returns the specified Integration resources. -func (c *Cache) GetIntegration(ctx context.Context, name string) (types.Integration, error) { +func (c *Cache) GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) { ctx, span := c.Tracer.Start(ctx, "cache/GetIntegration") defer span.End() @@ -2862,7 +2862,7 @@ func (c *Cache) GetIntegration(ctx context.Context, name string) (types.Integrat return nil, trace.Wrap(err) } defer rg.Release() - return rg.reader.GetIntegration(ctx, name) + return rg.reader.GetIntegration(ctx, name, withSecrets) } // ListDiscoveryConfigs returns a paginated list of all DiscoveryConfig resources. diff --git a/lib/client/ca_export.go b/lib/client/ca_export.go index d8f648819e4b8..9cc529716eab7 100644 --- a/lib/client/ca_export.go +++ b/lib/client/ca_export.go @@ -49,6 +49,8 @@ type ExportAuthoritiesRequest struct { AuthType string ExportAuthorityFingerprint string UseCompatVersion bool + // TODO + Integration string } // ExportAuthorities returns the list of authorities in OpenSSH compatible formats as a string. diff --git a/lib/client/session.go b/lib/client/session.go index 0286d19a7e15f..6a1a7a9984d27 100644 --- a/lib/client/session.go +++ b/lib/client/session.go @@ -23,6 +23,7 @@ import ( "errors" "fmt" "io" + "log/slog" "net" "os" "os/signal" @@ -169,6 +170,8 @@ func newSession(ctx context.Context, } ns.env[sshutils.SessionEnvVar] = string(ns.id) + slog.DebugContext(ctx, "=== are we here?") + ns.env["GIT_PROTOCOL"] = "version=2" // Close the Terminal when finished. ns.closeWait.Add(1) diff --git a/lib/integrations/awsoidc/clientsv1.go b/lib/integrations/awsoidc/clientsv1.go index 8c16f4c66156a..ab75dc716b10a 100644 --- a/lib/integrations/awsoidc/clientsv1.go +++ b/lib/integrations/awsoidc/clientsv1.go @@ -42,7 +42,7 @@ func (j IdentityToken) FetchToken(ctx credentials.Context) ([]byte, error) { // IntegrationTokenGenerator is an interface that indicates which APIs are required to generate an Integration Token. type IntegrationTokenGenerator interface { // GetIntegration returns the specified integration resources. - GetIntegration(ctx context.Context, name string) (types.Integration, error) + GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) // GetProxies returns a list of registered proxies. GetProxies() ([]types.Server, error) @@ -59,7 +59,7 @@ func NewSessionV1(ctx context.Context, client IntegrationTokenGenerator, region return nil, trace.Wrap(err) } } - integration, err := client.GetIntegration(ctx, integrationName) + integration, err := client.GetIntegration(ctx, integrationName, false) if err != nil { return nil, trace.Wrap(err) } diff --git a/lib/integrations/awsoidc/token_generator.go b/lib/integrations/awsoidc/token_generator.go index 9cbcbde2d6de3..5cb5772066a77 100644 --- a/lib/integrations/awsoidc/token_generator.go +++ b/lib/integrations/awsoidc/token_generator.go @@ -38,7 +38,7 @@ import ( // Cache is the subset of the cached resources that the AWS OIDC Token Generation queries. type Cache interface { // GetIntegration returns the specified integration resources. - GetIntegration(ctx context.Context, name string) (types.Integration, error) + GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) // GetClusterName returns local cluster name of the current auth server GetClusterName(...services.MarshalOption) (types.ClusterName, error) @@ -107,7 +107,7 @@ func GenerateAWSOIDCToken(ctx context.Context, cacheClt Cache, keyStoreManager K return "", trace.Wrap(err) } - integration, err := cacheClt.GetIntegration(ctx, req.Integration) + integration, err := cacheClt.GetIntegration(ctx, req.Integration, false) if err != nil { return "", trace.Wrap(err) } diff --git a/lib/integrations/externalauditstorage/configurator.go b/lib/integrations/externalauditstorage/configurator.go index dd63222b5bc20..ccc2eaa790634 100644 --- a/lib/integrations/externalauditstorage/configurator.go +++ b/lib/integrations/externalauditstorage/configurator.go @@ -147,7 +147,7 @@ type ExternalAuditStorageGetter interface { // integration by name. type IntegrationGetter interface { // GetIntegration returns the specified integration resources. - GetIntegration(ctx context.Context, name string) (types.Integration, error) + GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) } // NewConfigurator returns a new Configurator set up with the current active @@ -188,7 +188,7 @@ func newConfigurator(ctx context.Context, spec *externalauditstorage.ExternalAud } oidcIntegrationName := spec.IntegrationName - integration, err := integrationSvc.GetIntegration(ctx, oidcIntegrationName) + integration, err := integrationSvc.GetIntegration(ctx, oidcIntegrationName, false) if err != nil { if trace.IsNotFound(err) { return nil, trace.NotFound( diff --git a/lib/reversetunnel/localsite.go b/lib/reversetunnel/localsite.go index 3f81379178c15..6147d12d87b11 100644 --- a/lib/reversetunnel/localsite.go +++ b/lib/reversetunnel/localsite.go @@ -538,7 +538,7 @@ func (s *localSite) setupTunnelForOpenSSHEICENode(ctx context.Context, targetSer return nil, trace.BadParameter("failed to generate aws token: %v", err) } - integration, err := s.client.GetIntegration(ctx, awsInfo.Integration) + integration, err := s.client.GetIntegration(ctx, awsInfo.Integration, false) if err != nil { return nil, trace.BadParameter("failed to fetch integration details: %v", err) } diff --git a/lib/services/integration.go b/lib/services/integration.go index be495d385b4ab..e4d45cba0db59 100644 --- a/lib/services/integration.go +++ b/lib/services/integration.go @@ -23,6 +23,7 @@ import ( "github.com/gravitational/trace" + integrationv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" "github.com/gravitational/teleport/api/types" "github.com/gravitational/teleport/lib/utils" ) @@ -45,13 +46,16 @@ type IntegrationsGetter interface { // ListIntegrations returns a paginated list of all integration resources. ListIntegrations(ctx context.Context, pageSize int, nextToken string) ([]types.Integration, string, error) // GetIntegration returns the specified integration resources. - GetIntegration(ctx context.Context, name string) (types.Integration, error) + GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) } // IntegrationsTokenGenerator defines methods to generate tokens for Integrations. type IntegrationsTokenGenerator interface { // GenerateAWSOIDCToken generates a token to be used to execute an AWS OIDC Integration action. GenerateAWSOIDCToken(ctx context.Context, integration string) (string, error) + + // TODO move to its own interface or rename the iterface like IntegrationsAuthenticator + GenerateGitHubUserCert(ctx context.Context, in *integrationv1.GenerateGitHubUserCertRequest) (*integrationv1.GenerateGitHubUserCertResponse, error) } // MarshalIntegration marshals the Integration resource to JSON. diff --git a/lib/services/local/externalauditstorage.go b/lib/services/local/externalauditstorage.go index 55099f5188d42..9698856db2933 100644 --- a/lib/services/local/externalauditstorage.go +++ b/lib/services/local/externalauditstorage.go @@ -258,7 +258,7 @@ func (s *ExternalAuditStorageService) checkAWSIntegration(ctx context.Context, i if err != nil { return nil, "", trace.Wrap(err) } - integration, err := integrationsSvc.GetIntegration(ctx, integrationName) + integration, err := integrationsSvc.GetIntegration(ctx, integrationName, false) if err != nil { return nil, "", trace.Wrap(err, "getting integration") } diff --git a/lib/services/local/integrations.go b/lib/services/local/integrations.go index 25999e34eafbf..f19d2d11f6c10 100644 --- a/lib/services/local/integrations.go +++ b/lib/services/local/integrations.go @@ -81,17 +81,44 @@ func (s *IntegrationsService) ListIntegrations(ctx context.Context, pageSize int if err != nil { return nil, "", trace.Wrap(err) } + /* TODO fix cache? + for _, ig := range igs { + switch ig.GetSubKind() { + case types.IntegrationSubKindGitHub: + if ig.GetGitHubIntegrationSpec().Proxy != nil { + cas := ig.GetGitHubIntegrationSpec().Proxy.CertAuthority + for _, ca := range cas { + ca.PrivateKey = nil + } + ig.SetGitHubSSHCertAuthority(cas) + } + } + } + */ return igs, nextKey, nil } // GetIntegration returns the specified Integration resource. -func (s *IntegrationsService) GetIntegration(ctx context.Context, name string) (types.Integration, error) { +func (s *IntegrationsService) GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) { ig, err := s.svc.GetResource(ctx, name) if err != nil { return nil, trace.Wrap(err) } + if !withSecrets { + switch ig.GetSubKind() { + case types.IntegrationSubKindGitHub: + if ig.GetGitHubIntegrationSpec().Proxy != nil { + cas := ig.GetGitHubIntegrationSpec().Proxy.CertAuthority + for _, ca := range cas { + ca.PrivateKey = nil + } + ig.SetGitHubSSHCertAuthority(cas) + } + } + } + return ig, nil } diff --git a/lib/srv/exec.go b/lib/srv/exec.go index dd1a15457b7d1..60fe8adbd5b45 100644 --- a/lib/srv/exec.go +++ b/lib/srv/exec.go @@ -20,10 +20,12 @@ package srv import ( "bufio" + "bytes" "context" "errors" "fmt" "io" + "log/slog" "os" "os/exec" "path/filepath" @@ -33,6 +35,8 @@ import ( "syscall" "time" + "github.com/go-git/go-git/v5/plumbing/protocol/packp" + gittransport "github.com/go-git/go-git/v5/plumbing/transport" "github.com/gravitational/trace" log "github.com/sirupsen/logrus" "golang.org/x/crypto/ssh" @@ -381,9 +385,13 @@ func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, er return nil, trace.Wrap(err) } + gitHubAuditor := &gitHubAuditor{ + command: e.GetCommand(), + } go func() { + defer gitHubAuditor.close() // copy from the channel (client) into stdin of the process - if _, err := io.Copy(inputWriter, ch); err != nil { + if _, err := io.Copy(io.MultiWriter(inputWriter, gitHubAuditor), ch); err != nil { e.ctx.Warnf("Failed copying data from SSH channel to remote command stdin: %v", err) } inputWriter.Close() @@ -397,6 +405,48 @@ func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, er return nil, nil } +type gitHubAuditor struct { + command string + + // TODO avoid a copy, just pipe it to reader + cachedPayload []byte +} + +func (a *gitHubAuditor) Write(p []byte) (int, error) { + a.cachedPayload = append(a.cachedPayload, p...) + return len(p), nil +} + +func (a *gitHubAuditor) close() { + switch { + case strings.HasPrefix(a.command, gittransport.UploadPackServiceName): + slog.InfoContext(context.Background(), "[===AUDIT===] git fetch") + case strings.HasPrefix(a.command, gittransport.ReceivePackServiceName): + if len(a.cachedPayload) > 4 { + request := packp.NewReferenceUpdateRequest() + err := request.Decode(bytes.NewReader(a.cachedPayload)) + if err != nil { + slog.InfoContext(context.Background(), "[===AUDIT===] git push, but error when decoding packp", "error", err) + } else { + for _, command := range request.Commands { + switch command.Action() { + case packp.Create: + slog.DebugContext(context.Background(), "[===AUDIT===] user created a new reference.", "reference", command.Name, "to", command.New) + case packp.Update: + slog.DebugContext(context.Background(), "[===AUDIT===] user updated a reference.", "reference", command.Name, "from", command.Old, "to", command.New) + case packp.Delete: + slog.DebugContext(context.Background(), "[===AUDIT===] user deleted a reference.", "reference", command.Name, "from", command.Old) + default: + slog.DebugContext(context.Background(), "unknown git action", "command", command.Action()) + } + } + } + } else { + slog.InfoContext(context.Background(), "[===AUDIT===] git push but server up-to-update") + } + } +} + // Wait will block while the command executes. func (e *remoteExec) Wait() *ExecResult { // Block until the command is finished executing. diff --git a/lib/srv/forward/sshserver.go b/lib/srv/forward/sshserver.go index 8fd276932becf..1ba72a8acc9c3 100644 --- a/lib/srv/forward/sshserver.go +++ b/lib/srv/forward/sshserver.go @@ -36,15 +36,18 @@ import ( oteltrace "go.opentelemetry.io/otel/trace" "golang.org/x/crypto/ssh" "golang.org/x/crypto/ssh/agent" + "google.golang.org/protobuf/types/known/durationpb" "github.com/gravitational/teleport" apidefaults "github.com/gravitational/teleport/api/defaults" + integrationv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" "github.com/gravitational/teleport/api/observability/tracing" tracessh "github.com/gravitational/teleport/api/observability/tracing/ssh" "github.com/gravitational/teleport/api/types" apievents "github.com/gravitational/teleport/api/types/events" "github.com/gravitational/teleport/lib/auth" "github.com/gravitational/teleport/lib/auth/authclient" + "github.com/gravitational/teleport/lib/auth/native" "github.com/gravitational/teleport/lib/bpf" "github.com/gravitational/teleport/lib/events" "github.com/gravitational/teleport/lib/integrations/awsoidc" @@ -621,6 +624,16 @@ func (s *Server) Serve() { return } + s.agentlessSigner = sshSigner + } + if s.targetServer.GetSubKind() == types.SubKindOpenSSHGitHub { + sshSigner, err := s.getSSHSignerForGitHub(ctx) + if err != nil { + sconn.Close() + s.log.Warnf("Unable to generate GitHub user cert for user %v server %v: %v", s.identityContext.TeleportUser, s.targetServer.GetName(), err) + return + } + s.agentlessSigner = sshSigner } } @@ -668,6 +681,32 @@ func (s *Server) Serve() { go s.handleConnection(ctx, chans, reqs) } +// TODO how to keep a cache for this +func (s *Server) getSSHSignerForGitHub(ctx context.Context) (ssh.Signer, error) { + spec := s.targetServer.GetGitHub() + if spec == nil || spec.Integration == "" { + return nil, trace.BadParameter("GitHub server %s missing integration", s.targetServer) + } + + // generate a new key pair + priv, err := native.GeneratePrivateKey() + if err != nil { + return nil, trace.Wrap(err) + } + resp, err := s.authClient.GenerateGitHubUserCert(ctx, &integrationv1.GenerateGitHubUserCertRequest{ + Integration: spec.Integration, + PublicKey: priv.MarshalSSHPublicKey(), + Login: s.identityContext.Login, + KeyId: s.identityContext.TeleportUser, + Ttl: durationpb.New(10 * time.Duration(time.Minute)), + }) + if err != nil { + return nil, trace.Wrap(err) + } + signer, err := sshutils.NewSigner(priv.PrivateKeyPEM(), resp.AuthorizedKey) + return signer, trace.Wrap(err) +} + func (s *Server) sendSSHPublicKeyToTarget(ctx context.Context) (ssh.Signer, error) { awsInfo := s.targetServer.GetAWSInfo() if awsInfo == nil { @@ -679,7 +718,7 @@ func (s *Server) sendSSHPublicKeyToTarget(ctx context.Context) (ssh.Signer, erro return nil, trace.BadParameter("failed to generate aws token: %v", err) } - integration, err := s.authClient.GetIntegration(ctx, awsInfo.Integration) + integration, err := s.authClient.GetIntegration(ctx, awsInfo.Integration, false) if err != nil { return nil, trace.BadParameter("failed to fetch integration details: %v", err) } @@ -745,6 +784,13 @@ func (s *Server) Close() error { // newRemoteClient creates and returns a *ssh.Client and *ssh.Session // with a remote host. func (s *Server) newRemoteClient(ctx context.Context, systemLogin string, netConfig types.ClusterNetworkingConfig) (*tracessh.Client, error) { + // What? + hostKeyCallback := s.authHandlers.HostKeyAuth + if s.targetServer != nil && s.targetServer.GetSubKind() == types.SubKindOpenSSHGitHub { + hostKeyCallback = ssh.InsecureIgnoreHostKey() + systemLogin = "git" + } + // the proxy will use the agentless signer as the auth method when // connecting to the remote host if it is available, otherwise the // forwarded agent is used @@ -765,7 +811,7 @@ func (s *Server) newRemoteClient(ctx context.Context, systemLogin string, netCon Auth: []ssh.AuthMethod{ authMethod, }, - HostKeyCallback: s.authHandlers.HostKeyAuth, + HostKeyCallback: hostKeyCallback, Timeout: netConfig.GetSSHDialTimeout(), } diff --git a/lib/web/integrations.go b/lib/web/integrations.go index 5cca788e7c6f2..2f33cb58faa50 100644 --- a/lib/web/integrations.go +++ b/lib/web/integrations.go @@ -115,7 +115,7 @@ func (h *Handler) integrationsUpdate(w http.ResponseWriter, r *http.Request, p h return nil, trace.Wrap(err) } - integration, err := clt.GetIntegration(r.Context(), integrationName) + integration, err := clt.GetIntegration(r.Context(), integrationName, false) if err != nil { return nil, trace.Wrap(err) } @@ -181,7 +181,7 @@ func (h *Handler) integrationsGet(w http.ResponseWriter, r *http.Request, p http return nil, trace.Wrap(err) } - ig, err := clt.GetIntegration(r.Context(), integrationName) + ig, err := clt.GetIntegration(r.Context(), integrationName, false) if err != nil { return nil, trace.Wrap(err) } diff --git a/lib/web/integrations_awsoidc.go b/lib/web/integrations_awsoidc.go index f188327c61f28..442ec49ac96f1 100644 --- a/lib/web/integrations_awsoidc.go +++ b/lib/web/integrations_awsoidc.go @@ -270,7 +270,7 @@ func (h *Handler) awsOIDCConfigureDeployServiceIAM(w http.ResponseWriter, r *htt } // Ensure the IntegrationName is valid. - _, err = h.GetProxyClient().GetIntegration(ctx, integrationName) + _, err = h.GetProxyClient().GetIntegration(ctx, integrationName, false) // NotFound error is ignored to prevent disclosure of whether the integration exists in a public/no-auth endpoint. if err != nil && !trace.IsNotFound(err) { return nil, trace.Wrap(err) @@ -937,7 +937,7 @@ func (h *Handler) awsOIDCCreateAWSAppAccess(w http.ResponseWriter, r *http.Reque return nil, trace.Wrap(err) } - ig, err := clt.GetIntegration(ctx, integrationName) + ig, err := clt.GetIntegration(ctx, integrationName, false) if err != nil { return nil, trace.Wrap(err) } @@ -1001,7 +1001,7 @@ func (h *Handler) awsOIDCDeleteAWSAppAccess(w http.ResponseWriter, r *http.Reque return nil, trace.Wrap(err) } - ig, err := clt.GetIntegration(ctx, integrationName) + ig, err := clt.GetIntegration(ctx, integrationName, false) if err != nil { return nil, trace.Wrap(err) } @@ -1056,7 +1056,7 @@ func (h *Handler) awsOIDCConfigureIdP(w http.ResponseWriter, r *http.Request, p } // Ensure the IntegrationName is valid. - _, err = h.GetProxyClient().GetIntegration(ctx, integrationName) + _, err = h.GetProxyClient().GetIntegration(ctx, integrationName, false) // NotFound error is ignored to prevent disclosure of whether the integration exists in a public/no-auth endpoint. if err != nil && !trace.IsNotFound(err) { return nil, trace.Wrap(err) diff --git a/tool/tctl/common/auth_command.go b/tool/tctl/common/auth_command.go index 713c3425d741c..b69e9a90b0ccc 100644 --- a/tool/tctl/common/auth_command.go +++ b/tool/tctl/common/auth_command.go @@ -85,6 +85,7 @@ type AuthCommand struct { password string caType string streamTarfile bool + integration string identityWriter identityfile.ConfigWriter rotateGracePeriod time.Duration @@ -204,6 +205,7 @@ var allowedCertificateTypes = []string{ "db-client-der", "openssh", "saml-idp", + "github", } // allowedCRLCertificateTypes list of certificate authorities types that can diff --git a/tool/tctl/common/resource_command.go b/tool/tctl/common/resource_command.go index 3193cc28902aa..d8d7b10e38c5d 100644 --- a/tool/tctl/common/resource_command.go +++ b/tool/tctl/common/resource_command.go @@ -1300,7 +1300,7 @@ func (rc *ResourceCommand) createIntegration(ctx context.Context, client *authcl return trace.Wrap(err) } - existingIntegration, err := client.GetIntegration(ctx, integration.GetName()) + existingIntegration, err := client.GetIntegration(ctx, integration.GetName(), rc.withSecrets) if err != nil && !trace.IsNotFound(err) { return trace.Wrap(err) } @@ -2712,7 +2712,7 @@ func (rc *ResourceCommand) getCollection(ctx context.Context, client *authclient } case types.KindIntegration: if rc.ref.Name != "" { - ig, err := client.GetIntegration(ctx, rc.ref.Name) + ig, err := client.GetIntegration(ctx, rc.ref.Name, rc.withSecrets) if err != nil { return nil, trace.Wrap(err) } diff --git a/tool/tsh/common/git.go b/tool/tsh/common/git.go new file mode 100644 index 0000000000000..19e67cdb3dd22 --- /dev/null +++ b/tool/tsh/common/git.go @@ -0,0 +1,31 @@ +/* + * 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 common + +import ( + "fmt" + + "github.com/gravitational/trace" +) + +func onGitSSH(cf *CLIConf) error { + // TODO do a quick check on cf.UserHost before overwritting it? + cf.UserHost = fmt.Sprintf("%s@%s", cf.GitUsername, cf.GitServer) + return trace.Wrap(onSSH(cf)) +} diff --git a/tool/tsh/common/tsh.go b/tool/tsh/common/tsh.go index 230db44722d38..5c36fe9396310 100644 --- a/tool/tsh/common/tsh.go +++ b/tool/tsh/common/tsh.go @@ -549,6 +549,13 @@ type CLIConf struct { // DisableSSHResumption disables transparent SSH connection resumption. DisableSSHResumption bool + + // GitUsername + GitUsername string + // GitServer + GitServer string + // GitURL + GitURL string } // Stdout returns the stdout writer. @@ -1203,6 +1210,18 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { vnetAdminSetupCmd := newVnetAdminSetupCommand(app) vnetDaemonCmd := newVnetDaemonCommand(app) + git := app.Command("git", "Git proxy commands.") + gitClone := git.Command("clone", "Git clone.") + gitClone.Flag("username", "Git username.").Required().StringVar(&cf.GitUsername) + gitClone.Arg("git-url", "Git URL").Required().StringVar(&cf.GitURL) + + gitSSH := git.Command("ssh", "Proxy Git SSH.").Hidden() + gitSSH.Flag("username", "Git username.").Required().StringVar(&cf.GitUsername) + gitSSH.Flag("server", "Git proxy server.").Required().StringVar(&cf.GitServer) + gitSSH.Arg("[user@]host", "Remote hostname and the login to use").Required().StringVar(&cf.UserHost) + gitSSH.Arg("command", "Command to execute on a remote host").StringsVar(&cf.RemoteCommand) + gitSSH.Flag("option", "OpenSSH options in the format used in the configuration file").Short('o').AllowDuplicate().StringsVar(&cf.Options) + if runtime.GOOS == constants.WindowsOS { bench.Hidden() } @@ -1572,6 +1591,8 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { err = vnetAdminSetupCmd.run(&cf) case vnetDaemonCmd.FullCommand(): err = vnetDaemonCmd.run(&cf) + case gitSSH.FullCommand(): + err = onGitSSH(&cf) default: // Handle commands that might not be available. switch { From 1df62a1f36032c16f223be58b9c4e9390b8d690a Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Wed, 28 Aug 2024 14:25:27 -0400 Subject: [PATCH 2/8] v4 --- api/client/alpn_conn_upgrade.go | 6 +- api/client/client.go | 34 + api/client/gitserver/gitserver.go | 62 + api/client/proto/authservice.pb.go | 1970 ++++---- api/constants/constants.go | 9 + .../gitserver/v1/git_server_service.pb.go | 329 ++ .../v1/git_server_service_grpc.pb.go | 223 + .../gitserver/v1/git_server_service.proto | 50 + .../legacy/client/proto/authservice.proto | 2 + .../teleport/legacy/types/events/events.proto | 67 + api/proto/teleport/legacy/types/types.proto | 10 + api/types/constants.go | 18 +- api/types/events/events.pb.go | 3615 +++++++++------ api/types/events/oneof.go | 4 + api/types/integration.go | 3 + api/types/role.go | 33 + api/types/server.go | 82 +- api/types/types.pb.go | 3984 +++++++++-------- api/types/user.go | 18 + api/utils/prompt/context_reader.go | 4 + api/utils/uri_test.go | 1 + lib/auth/auth.go | 5 + lib/auth/auth_with_roles.go | 9 + lib/auth/authclient/api.go | 13 + lib/auth/gitserver/gitserverv1/service.go | 171 + lib/auth/grpcserver.go | 9 + lib/auth/integration/integrationv1/service.go | 2 + lib/authz/permissions.go | 11 + lib/cache/cache.go | 28 + lib/cache/collections.go | 41 + lib/client/session.go | 3 - lib/events/api.go | 3 + lib/events/codes.go | 5 + lib/events/dynamic.go | 2 + lib/proxy/router.go | 40 + lib/reversetunnel/localsite.go | 11 + lib/reversetunnel/peer.go | 12 + lib/reversetunnel/remotesite.go | 7 + lib/reversetunnel/srv.go | 19 + lib/reversetunnelclient/api.go | 2 + lib/service/service.go | 13 + lib/services/access_checker.go | 23 +- lib/services/local/events.go | 16 + lib/services/local/presence.go | 54 + lib/services/matchers.go | 1 + lib/services/presence.go | 11 + lib/services/resource.go | 2 + lib/services/role.go | 13 +- lib/services/unified_resource.go | 28 +- lib/services/watcher_git_server.go | 278 ++ lib/srv/ctx.go | 6 + lib/srv/exec.go | 105 +- lib/srv/forward/sshserver.go | 49 +- lib/srv/sess.go | 30 + lib/web/apiserver.go | 21 +- lib/web/integrations.go | 13 + lib/web/ui/integration.go | 41 + lib/web/ui/server.go | 3 + tool/tctl/common/resource_command.go | 78 + tool/tctl/common/user_command.go | 42 +- tool/tsh/common/git.go | 283 +- tool/tsh/common/tsh.go | 31 +- .../design/src/ResourceIcon/assets/git.svg | 1 + web/packages/design/src/ResourceIcon/icons.ts | 2 + .../src/ResourceIcon/resourceIconSpecs.ts | 1 + .../assets/images/icons/github-mark-white.svg | 1 + .../src/assets/images/icons/github-mark.svg | 1 + .../UnifiedResources/FilterPanel.tsx | 1 + .../shared/viewItemsFactory.ts | 25 + .../components/UnifiedResources/types.ts | 13 + web/packages/shared/services/types.ts | 2 + .../src/Audit/EventList/EventTypeCell.tsx | 2 + .../ConnectDialog/ConnectDialog.story.tsx | 94 + .../ConnectDialog/ConnectDialog.test.tsx | 102 + .../ConnectDialog/ConnectDialog.tsx | 110 + .../src/GitServers/ConnectDialog/index.ts | 20 + .../src/Integrations/Enroll/GitHub/GitHub.tsx | 286 ++ .../src/Integrations/Enroll/GitHub/index.ts | 19 + .../Integrations/Enroll/IntegrationRoute.tsx | 7 + .../Integrations/Enroll/IntegrationTiles.tsx | 29 + .../src/Integrations/IntegrationList.tsx | 4 + .../UnifiedResources/ResourceActionButton.tsx | 39 + .../src/UnifiedResources/UnifiedResources.tsx | 4 + .../src/Users/UserAddEdit/TraitsEditor.tsx | 1 + .../teleport/src/services/agents/types.ts | 2 + .../teleport/src/services/audit/makeEvent.ts | 33 + .../teleport/src/services/audit/types.ts | 8 + .../src/services/gitservers/gitservers.ts | 24 + .../teleport/src/services/gitservers/index.ts | 23 + .../src/services/gitservers/makeGitServer.ts | 55 + .../teleport/src/services/gitservers/types.ts | 39 + .../src/services/integrations/integrations.ts | 6 +- .../src/services/integrations/types.ts | 12 +- .../services/resources/makeUnifiedResource.ts | 3 + 94 files changed, 8775 insertions(+), 4252 deletions(-) create mode 100644 api/client/gitserver/gitserver.go create mode 100644 api/gen/proto/go/teleport/gitserver/v1/git_server_service.pb.go create mode 100644 api/gen/proto/go/teleport/gitserver/v1/git_server_service_grpc.pb.go create mode 100644 api/proto/teleport/gitserver/v1/git_server_service.proto create mode 100644 lib/auth/gitserver/gitserverv1/service.go create mode 100644 lib/services/watcher_git_server.go create mode 100644 web/packages/design/src/ResourceIcon/assets/git.svg create mode 100644 web/packages/design/src/assets/images/icons/github-mark-white.svg create mode 100644 web/packages/design/src/assets/images/icons/github-mark.svg create mode 100644 web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.story.tsx create mode 100644 web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.test.tsx create mode 100644 web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.tsx create mode 100644 web/packages/teleport/src/GitServers/ConnectDialog/index.ts create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/index.ts create mode 100644 web/packages/teleport/src/services/gitservers/gitservers.ts create mode 100644 web/packages/teleport/src/services/gitservers/index.ts create mode 100644 web/packages/teleport/src/services/gitservers/makeGitServer.ts create mode 100644 web/packages/teleport/src/services/gitservers/types.ts diff --git a/api/client/alpn_conn_upgrade.go b/api/client/alpn_conn_upgrade.go index d08b1fe7968e4..2aeb5b8f63567 100644 --- a/api/client/alpn_conn_upgrade.go +++ b/api/client/alpn_conn_upgrade.go @@ -74,11 +74,11 @@ func IsALPNConnUpgradeRequired(ctx context.Context, addr string, insecure bool, logger := slog.With("address", addr) if err != nil { if isRemoteNoALPNError(err) { - logger.DebugContext(ctx, "No ALPN protocol is negotiated by the server.", "upgrade_required", true) + logger.WarnContext(ctx, "No ALPN protocol is negotiated by the server.", "upgrade_required", true) return true } if isUnadvertisedALPNError(err) { - logger.DebugContext(ctx, "ALPN connection upgrade received an unadvertised ALPN protocol.", "error", err) + logger.WarnContext(ctx, "ALPN connection upgrade received an unadvertised ALPN protocol.", "error", err) return true } @@ -93,7 +93,7 @@ func IsALPNConnUpgradeRequired(ctx context.Context, addr string, insecure bool, // Upgrade required when ALPN is not supported on the remote side so // NegotiatedProtocol comes back as empty. result := testConn.ConnectionState().NegotiatedProtocol == "" - logger.DebugContext(ctx, "ALPN connection upgrade test complete", "upgrade_required", result) + logger.WarnContext(ctx, "ALPN connection upgrade test complete", "upgrade_required", result) return result } diff --git a/api/client/client.go b/api/client/client.go index ec7bfd5817737..c12cec0281ad5 100644 --- a/api/client/client.go +++ b/api/client/client.go @@ -54,6 +54,7 @@ import ( crownjewelapi "github.com/gravitational/teleport/api/client/crownjewel" "github.com/gravitational/teleport/api/client/discoveryconfig" "github.com/gravitational/teleport/api/client/externalauditstorage" + "github.com/gravitational/teleport/api/client/gitserver" kubewaitingcontainerclient "github.com/gravitational/teleport/api/client/kubewaitingcontainer" "github.com/gravitational/teleport/api/client/okta" "github.com/gravitational/teleport/api/client/proto" @@ -73,6 +74,7 @@ import ( devicepb "github.com/gravitational/teleport/api/gen/proto/go/teleport/devicetrust/v1" discoveryconfigv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/discoveryconfig/v1" externalauditstoragev1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/externalauditstorage/v1" + gitserverv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/gitserver/v1" integrationpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" kubeproto "github.com/gravitational/teleport/api/gen/proto/go/teleport/kube/v1" kubewaitingcontainerpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/kubewaitingcontainer/v1" @@ -3608,6 +3610,8 @@ func (c *Client) ListResources(ctx context.Context, req proto.ListResourcesReque resources[i] = respResource.GetAppServerOrSAMLIdPServiceProvider() case types.KindSAMLIdPServiceProvider: resources[i] = respResource.GetSAMLIdPServiceProvider() + case types.KindGitServer: + resources[i] = respResource.GetGitServer() default: return nil, trace.NotImplemented("resource type %s does not support pagination", req.ResourceType) } @@ -3697,6 +3701,8 @@ func convertEnrichedResource(resource *proto.PaginatedResource) (*types.Enriched return &types.EnrichedResource{ResourceWithLabels: r, Logins: resource.Logins, RequiresRequest: resource.RequiresRequest}, nil } else if r := resource.GetSAMLIdPServiceProvider(); r != nil { return &types.EnrichedResource{ResourceWithLabels: r, RequiresRequest: resource.RequiresRequest}, nil + } else if r := resource.GetGitServer(); r != nil { + return &types.EnrichedResource{ResourceWithLabels: r, Logins: resource.Logins, RequiresRequest: resource.RequiresRequest}, nil } else { return nil, trace.BadParameter("received unsupported resource %T", resource.Resource) } @@ -3819,6 +3825,8 @@ func GetEnrichedResourcePage(ctx context.Context, clt GetResourcesClient, req *p resource = respResource.GetAppServerOrSAMLIdPServiceProvider() case types.KindSAMLIdPServiceProvider: resource = respResource.GetSAMLIdPServiceProvider() + case types.KindGitServer: + resource = respResource.GetGitServer() default: out.Resources = nil return out, trace.NotImplemented("resource type %s does not support pagination", req.ResourceType) @@ -3887,6 +3895,8 @@ func GetResourcePage[T types.ResourceWithLabels](ctx context.Context, clt GetRes resource = respResource.GetAppServerOrSAMLIdPServiceProvider() case types.KindSAMLIdPServiceProvider: resource = respResource.GetSAMLIdPServiceProvider() + case types.KindGitServer: + resource = respResource.GetGitServer() default: out.Resources = nil return out, trace.NotImplemented("resource type %s does not support pagination", req.ResourceType) @@ -4676,6 +4686,30 @@ func (c *Client) UserLoginStateClient() *userloginstate.Client { return userloginstate.NewClient(userloginstatev1.NewUserLoginStateServiceClient(c.conn)) } +// TODO +func (c *Client) GitServerClient() *gitserver.Client { + return gitserver.NewClient(gitserverv1.NewGitServerServiceClient(c.conn)) +} +func (c *Client) GetGitServer(ctx context.Context, name string) (types.Server, error) { + return c.GitServerClient().GetGitServer(ctx, name) +} +func (c *Client) UpsertGitServer(ctx context.Context, server types.Server) (types.Server, error) { + return c.GitServerClient().UpsertGitServer(ctx, server) +} +func (c *Client) DeleteGitServer(ctx context.Context, name string) error { + return c.GitServerClient().DeleteGitServer(ctx, name) +} +func (c *Client) DeleteAllGitServers(context.Context) error { + return trace.NotImplemented("not supported on client") +} +func (c *Client) GetGitServers(ctx context.Context) ([]types.Server, error) { + servers, err := GetAllResources[types.Server](ctx, c, &proto.ListResourcesRequest{ + ResourceType: types.KindGitServer, + Namespace: defaults.Namespace, + }) + return servers, trace.Wrap(err) +} + // GetCertAuthority retrieves a CA by type and domain. func (c *Client) GetCertAuthority(ctx context.Context, id types.CertAuthID, loadKeys bool) (types.CertAuthority, error) { ca, err := c.TrustClient().GetCertAuthority(ctx, &trustpb.GetCertAuthorityRequest{ diff --git a/api/client/gitserver/gitserver.go b/api/client/gitserver/gitserver.go new file mode 100644 index 0000000000000..f1cb44a5f9923 --- /dev/null +++ b/api/client/gitserver/gitserver.go @@ -0,0 +1,62 @@ +// Copyright 2024 Gravitational, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package gitserver + +import ( + "context" + + gitserverv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/gitserver/v1" + "github.com/gravitational/teleport/api/types" + "github.com/gravitational/trace" +) + +type Client struct { + grpcClient gitserverv1.GitServerServiceClient +} + +func NewClient(grpcClient gitserverv1.GitServerServiceClient) *Client { + return &Client{ + grpcClient: grpcClient, + } +} + +// GetGitServer is used to retrieve a Git server object. +func (c *Client) GetGitServer(ctx context.Context, name string) (types.Server, error) { + resp, err := c.grpcClient.GetGitServer(ctx, &gitserverv1.GetGitServerRequest{ + Name: name, + }) + return resp, trace.Wrap(err) +} + +// UpsertGitServer is used to create or replace a Git server object. +func (c *Client) UpsertGitServer(ctx context.Context, server types.Server) (types.Server, error) { + serverV2, ok := server.(*types.ServerV2) + if !ok { + return nil, trace.BadParameter("server object is not *types.ServerV2") + } + + resp, err := c.grpcClient.UpsertGitServer(ctx, &gitserverv1.UpsertGitServerRequest{ + Server: serverV2, + }) + return resp, trace.Wrap(err) +} + +// DeleteGitServer is used to delete a Git server object. +func (c *Client) DeleteGitServer(ctx context.Context, name string) error { + _, err := c.grpcClient.DeleteGitServer(ctx, &gitserverv1.DeleteGitServerRequest{ + Name: name, + }) + return trace.Wrap(err) +} diff --git a/api/client/proto/authservice.pb.go b/api/client/proto/authservice.pb.go index 8ac360ce90a9d..e3a20a358e6bb 100644 --- a/api/client/proto/authservice.pb.go +++ b/api/client/proto/authservice.pb.go @@ -10458,6 +10458,7 @@ type PaginatedResource struct { // *PaginatedResource_UserGroup // *PaginatedResource_AppServerOrSAMLIdPServiceProvider // *PaginatedResource_SAMLIdPServiceProvider + // *PaginatedResource_GitServer Resource isPaginatedResource_Resource `protobuf_oneof:"resource"` // Logins allowed for the included resource. Only to be populated for SSH and Desktops. Logins []string `protobuf:"bytes,13,rep,name=Logins,proto3" json:"logins,omitempty"` @@ -10541,6 +10542,9 @@ type PaginatedResource_AppServerOrSAMLIdPServiceProvider struct { type PaginatedResource_SAMLIdPServiceProvider struct { SAMLIdPServiceProvider *types.SAMLIdPServiceProviderV1 `protobuf:"bytes,12,opt,name=SAMLIdPServiceProvider,proto3,oneof" json:"saml_idp_service_provider,omitempty"` } +type PaginatedResource_GitServer struct { + GitServer *types.ServerV2 `protobuf:"bytes,15,opt,name=git_server,json=gitServer,proto3,oneof" json:"git_server,omitempty"` +} func (*PaginatedResource_DatabaseServer) isPaginatedResource_Resource() {} func (*PaginatedResource_AppServer) isPaginatedResource_Resource() {} @@ -10553,6 +10557,7 @@ func (*PaginatedResource_DatabaseService) isPaginatedResource_Resource() func (*PaginatedResource_UserGroup) isPaginatedResource_Resource() {} func (*PaginatedResource_AppServerOrSAMLIdPServiceProvider) isPaginatedResource_Resource() {} func (*PaginatedResource_SAMLIdPServiceProvider) isPaginatedResource_Resource() {} +func (*PaginatedResource_GitServer) isPaginatedResource_Resource() {} func (m *PaginatedResource) GetResource() isPaginatedResource_Resource { if m != nil { @@ -10639,6 +10644,13 @@ func (m *PaginatedResource) GetSAMLIdPServiceProvider() *types.SAMLIdPServicePro return nil } +func (m *PaginatedResource) GetGitServer() *types.ServerV2 { + if x, ok := m.GetResource().(*PaginatedResource_GitServer); ok { + return x.GitServer + } + return nil +} + func (m *PaginatedResource) GetLogins() []string { if m != nil { return m.Logins @@ -10667,6 +10679,7 @@ func (*PaginatedResource) XXX_OneofWrappers() []interface{} { (*PaginatedResource_UserGroup)(nil), (*PaginatedResource_AppServerOrSAMLIdPServiceProvider)(nil), (*PaginatedResource_SAMLIdPServiceProvider)(nil), + (*PaginatedResource_GitServer)(nil), } } @@ -15611,936 +15624,937 @@ func init() { } var fileDescriptor_0ffcffcda38ae159 = []byte{ - // 14854 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x7d, 0x5b, 0x6c, 0x5c, 0x49, - 0x76, 0x18, 0xbb, 0xf9, 0x3e, 0x7c, 0xa8, 0x55, 0x24, 0xc5, 0x16, 0xf5, 0x68, 0xe9, 0x6a, 0x1e, - 0x1a, 0xed, 0xac, 0x1e, 0xd4, 0xcc, 0xec, 0xbc, 0x76, 0x66, 0x9a, 0x0f, 0x89, 0x94, 0xf8, 0x9a, - 0xdb, 0x24, 0x35, 0x2f, 0x6f, 0xef, 0x65, 0x77, 0x89, 0xbc, 0x56, 0xf3, 0xde, 0xde, 0x7b, 0x6f, - 0x4b, 0xa3, 0x75, 0xec, 0xc0, 0xeb, 0x04, 0xf1, 0x4f, 0x12, 0x1b, 0x88, 0x03, 0x07, 0xfe, 0x70, - 0x02, 0x24, 0x40, 0x10, 0x20, 0x81, 0x7f, 0x0c, 0xff, 0x24, 0x1f, 0x41, 0x3e, 0xb2, 0x31, 0x60, - 0x24, 0x81, 0xed, 0x9f, 0x7c, 0xd0, 0xc9, 0x02, 0xf9, 0x21, 0x92, 0x0f, 0x23, 0x48, 0x80, 0x2c, - 0x60, 0x20, 0xa8, 0x53, 0x8f, 0x5b, 0x75, 0x1f, 0xdd, 0xa4, 0x46, 0xb3, 0xce, 0x8f, 0xc4, 0x3e, - 0x75, 0xce, 0xa9, 0xaa, 0x53, 0x75, 0xab, 0x4e, 0x9d, 0x3a, 0x75, 0x0e, 0xdc, 0x8c, 0x68, 0x8b, - 0xb6, 0xfd, 0x20, 0xba, 0xd5, 0xa2, 0xfb, 0x4e, 0xe3, 0xf9, 0xad, 0x46, 0xcb, 0xa5, 0x5e, 0x74, - 0xab, 0x1d, 0xf8, 0x91, 0x7f, 0xcb, 0xe9, 0x44, 0x07, 0x21, 0x0d, 0x9e, 0xba, 0x0d, 0x7a, 0x13, - 0x21, 0x64, 0x10, 0xff, 0x9b, 0x9b, 0xde, 0xf7, 0xf7, 0x7d, 0x8e, 0xc3, 0xfe, 0xe2, 0x85, 0x73, - 0x17, 0xf6, 0x7d, 0x7f, 0xbf, 0x45, 0x39, 0xf1, 0x5e, 0xe7, 0xf1, 0x2d, 0x7a, 0xd8, 0x8e, 0x9e, - 0x8b, 0xc2, 0x4a, 0xb2, 0x30, 0x72, 0x0f, 0x69, 0x18, 0x39, 0x87, 0x6d, 0x81, 0xf0, 0x86, 0x6a, - 0x8a, 0x13, 0x45, 0xac, 0x24, 0x72, 0x7d, 0xef, 0xd6, 0xd3, 0x3b, 0xfa, 0x4f, 0x81, 0x7a, 0xbd, - 0x6b, 0xab, 0x1b, 0x34, 0x88, 0xc2, 0x13, 0x61, 0xd2, 0xa7, 0xd4, 0x8b, 0x52, 0xd5, 0x0b, 0xcc, - 0xe8, 0x79, 0x9b, 0x86, 0x1c, 0x45, 0xfe, 0x27, 0x50, 0xaf, 0x66, 0xa3, 0xe2, 0xbf, 0x02, 0xe5, - 0xbb, 0xd9, 0x28, 0xcf, 0xe8, 0x1e, 0x93, 0xa9, 0xa7, 0xfe, 0xe8, 0x81, 0x1e, 0x38, 0xed, 0x36, - 0x0d, 0xe2, 0x3f, 0x04, 0xfa, 0x79, 0x85, 0x7e, 0xf8, 0xd8, 0x61, 0x22, 0x3a, 0x7c, 0xec, 0xa4, - 0xba, 0xd1, 0x09, 0x9d, 0x7d, 0x2a, 0x9a, 0xff, 0xf4, 0x8e, 0xfe, 0x93, 0xa3, 0x5a, 0xbf, 0x5f, - 0x80, 0xc1, 0x47, 0x4e, 0xd4, 0x38, 0x20, 0x1f, 0xc3, 0xe0, 0x43, 0xd7, 0x6b, 0x86, 0xe5, 0xc2, - 0x95, 0xfe, 0xeb, 0x63, 0xf3, 0xa5, 0x9b, 0xbc, 0x2b, 0x58, 0xc8, 0x0a, 0x16, 0x66, 0x7f, 0x7a, - 0x54, 0xe9, 0x3b, 0x3e, 0xaa, 0x9c, 0x79, 0xc2, 0xd0, 0xde, 0xf4, 0x0f, 0xdd, 0x08, 0xc7, 0xd6, - 0xe6, 0x74, 0x64, 0x07, 0xa6, 0xaa, 0xad, 0x96, 0xff, 0x6c, 0xcb, 0x09, 0x22, 0xd7, 0x69, 0xd5, - 0x3a, 0x8d, 0x06, 0x0d, 0xc3, 0x72, 0xf1, 0x4a, 0xe1, 0xfa, 0xc8, 0xc2, 0xb5, 0xe3, 0xa3, 0x4a, - 0xc5, 0x61, 0xc5, 0xf5, 0x36, 0x2f, 0xaf, 0x87, 0x1c, 0x41, 0x63, 0x94, 0x45, 0x6f, 0xfd, 0xf1, - 0x10, 0x94, 0x56, 0xfc, 0x30, 0x5a, 0x64, 0x23, 0x6a, 0xd3, 0x1f, 0x75, 0x68, 0x18, 0x91, 0x6b, - 0x30, 0xc4, 0x60, 0xab, 0x4b, 0xe5, 0xc2, 0x95, 0xc2, 0xf5, 0xd1, 0x85, 0xb1, 0xe3, 0xa3, 0xca, - 0xf0, 0x81, 0x1f, 0x46, 0x75, 0xb7, 0x69, 0x8b, 0x22, 0xf2, 0x06, 0x8c, 0x6c, 0xf8, 0x4d, 0xba, - 0xe1, 0x1c, 0x52, 0x6c, 0xc5, 0xe8, 0xc2, 0xc4, 0xf1, 0x51, 0x65, 0xd4, 0xf3, 0x9b, 0xb4, 0xee, - 0x39, 0x87, 0xd4, 0x56, 0xc5, 0x64, 0x17, 0x06, 0x6c, 0xbf, 0x45, 0xcb, 0xfd, 0x88, 0xb6, 0x70, - 0x7c, 0x54, 0x19, 0x08, 0xfc, 0x16, 0xfd, 0xf9, 0x51, 0xe5, 0x9d, 0x7d, 0x37, 0x3a, 0xe8, 0xec, - 0xdd, 0x6c, 0xf8, 0x87, 0xb7, 0xf6, 0x03, 0xe7, 0xa9, 0xcb, 0x27, 0xa1, 0xd3, 0xba, 0x15, 0x4f, - 0xd5, 0xb6, 0x2b, 0xc6, 0xbd, 0xf6, 0x3c, 0x8c, 0xe8, 0x21, 0xe3, 0x64, 0x23, 0x3f, 0xf2, 0x08, - 0xa6, 0xab, 0xcd, 0xa6, 0xcb, 0x29, 0xb6, 0x02, 0xd7, 0x6b, 0xb8, 0x6d, 0xa7, 0x15, 0x96, 0x07, - 0xae, 0xf4, 0x5f, 0x1f, 0x15, 0x42, 0x51, 0xe5, 0xf5, 0xb6, 0x42, 0xd0, 0x84, 0x92, 0xc9, 0x80, - 0xdc, 0x85, 0x91, 0xa5, 0x8d, 0x1a, 0x6b, 0x7b, 0x58, 0x1e, 0x44, 0x66, 0xb3, 0xc7, 0x47, 0x95, - 0xa9, 0xa6, 0x17, 0x62, 0xd7, 0x74, 0x06, 0x0a, 0x91, 0xbc, 0x03, 0xe3, 0x5b, 0x9d, 0xbd, 0x96, - 0xdb, 0xd8, 0x5e, 0xab, 0x3d, 0xa4, 0xcf, 0xcb, 0x43, 0x57, 0x0a, 0xd7, 0xc7, 0x17, 0xc8, 0xf1, - 0x51, 0x65, 0xb2, 0x8d, 0xf0, 0x7a, 0xd4, 0x0a, 0xeb, 0x4f, 0xe8, 0x73, 0xdb, 0xc0, 0x8b, 0xe9, - 0x6a, 0xb5, 0x15, 0x46, 0x37, 0x9c, 0xa2, 0x0b, 0xc3, 0x03, 0x9d, 0x8e, 0xe3, 0x91, 0x5b, 0x00, - 0x36, 0x3d, 0xf4, 0x23, 0x5a, 0x6d, 0x36, 0x83, 0xf2, 0x08, 0xca, 0xf6, 0xcc, 0xf1, 0x51, 0x65, - 0x2c, 0x40, 0x68, 0xdd, 0x69, 0x36, 0x03, 0x5b, 0x43, 0x21, 0x8b, 0x30, 0x62, 0xfb, 0x5c, 0xc0, - 0xe5, 0xd1, 0x2b, 0x85, 0xeb, 0x63, 0xf3, 0x67, 0xc4, 0x34, 0x94, 0xe0, 0x85, 0x73, 0xc7, 0x47, - 0x15, 0x12, 0x88, 0x5f, 0x7a, 0x2f, 0x25, 0x06, 0xa9, 0xc0, 0xf0, 0x86, 0xbf, 0xe8, 0x34, 0x0e, - 0x68, 0x19, 0x70, 0xee, 0x0d, 0x1e, 0x1f, 0x55, 0x0a, 0xdf, 0xb5, 0x25, 0x94, 0x3c, 0x85, 0xb1, - 0x78, 0xa0, 0xc2, 0xf2, 0x18, 0x8a, 0x6f, 0xfb, 0xf8, 0xa8, 0x72, 0x2e, 0x44, 0x70, 0x9d, 0x0d, - 0xbd, 0x26, 0xc1, 0x6f, 0x30, 0x0b, 0xf4, 0x8a, 0xc8, 0x57, 0x30, 0x13, 0xff, 0xac, 0x86, 0x21, - 0x0d, 0x18, 0x8f, 0xd5, 0xa5, 0xf2, 0x04, 0x4a, 0xe6, 0xb5, 0xe3, 0xa3, 0x8a, 0xa5, 0xb5, 0xa0, - 0xee, 0x48, 0x94, 0xba, 0xdb, 0xd4, 0x7a, 0x9a, 0xcd, 0xe4, 0xc1, 0xc0, 0xc8, 0x78, 0x69, 0xc2, - 0xbe, 0xb4, 0xe3, 0x85, 0x91, 0xb3, 0xd7, 0xa2, 0x99, 0x48, 0xd6, 0x5f, 0x15, 0x80, 0x6c, 0xb6, - 0xa9, 0x57, 0xab, 0xad, 0xb0, 0xef, 0x49, 0x7e, 0x4e, 0x6f, 0xc2, 0x28, 0x1f, 0x38, 0x36, 0xba, - 0x45, 0x1c, 0xdd, 0xc9, 0xe3, 0xa3, 0x0a, 0x88, 0xd1, 0x65, 0x23, 0x1b, 0x23, 0x90, 0x57, 0xa1, - 0x7f, 0x7b, 0x7b, 0x0d, 0xbf, 0x95, 0xfe, 0x85, 0xa9, 0xe3, 0xa3, 0x4a, 0x7f, 0x14, 0xb5, 0x7e, - 0x7e, 0x54, 0x19, 0x59, 0xea, 0x04, 0x28, 0x16, 0x9b, 0x95, 0x93, 0x57, 0x61, 0x78, 0xb1, 0xd5, - 0x09, 0x23, 0x1a, 0x94, 0x07, 0xe2, 0x8f, 0xb4, 0xc1, 0x41, 0xb6, 0x2c, 0x23, 0xdf, 0x81, 0x81, - 0x9d, 0x90, 0x06, 0xe5, 0x41, 0x1c, 0xef, 0x09, 0x31, 0xde, 0x0c, 0xb4, 0x3b, 0xbf, 0x30, 0xc2, - 0xbe, 0xc4, 0x4e, 0x48, 0x03, 0x1b, 0x91, 0xc8, 0x4d, 0x18, 0xe4, 0x83, 0x36, 0x84, 0x8b, 0xd4, - 0x84, 0x9a, 0x1d, 0x2d, 0xba, 0xfb, 0xce, 0xc2, 0xe8, 0xf1, 0x51, 0x65, 0x10, 0x07, 0xcf, 0xe6, - 0x68, 0x0f, 0x06, 0x46, 0x0a, 0xa5, 0xa2, 0x3d, 0xc2, 0x68, 0xd9, 0x67, 0x61, 0x7d, 0x07, 0xc6, - 0xb4, 0xee, 0x93, 0x8b, 0x30, 0xc0, 0xfe, 0xc7, 0x45, 0x64, 0x9c, 0x57, 0xc6, 0x36, 0x0e, 0x1b, - 0xa1, 0xd6, 0x3f, 0x9e, 0x82, 0x12, 0xa3, 0x34, 0x56, 0x9e, 0x9b, 0xba, 0xa8, 0x38, 0x5d, 0xc9, - 0x14, 0x55, 0xb9, 0xa0, 0x0b, 0xeb, 0x3a, 0xa8, 0xda, 0xc5, 0x22, 0x34, 0x7e, 0x7c, 0x54, 0x19, - 0xe9, 0x08, 0x58, 0xdc, 0x36, 0x52, 0x83, 0xe1, 0xe5, 0xaf, 0xdb, 0x6e, 0x40, 0x43, 0x14, 0xed, - 0xd8, 0xfc, 0xdc, 0x4d, 0xbe, 0x5d, 0xde, 0x94, 0xdb, 0xe5, 0xcd, 0x6d, 0xb9, 0x5d, 0x2e, 0x5c, - 0x12, 0x8b, 0xf1, 0x59, 0xca, 0x49, 0xe2, 0xf9, 0xf1, 0x5b, 0x7f, 0x51, 0x29, 0xd8, 0x92, 0x13, - 0x79, 0x13, 0x86, 0xee, 0xf9, 0xc1, 0xa1, 0x13, 0x89, 0x31, 0x98, 0x3e, 0x3e, 0xaa, 0x94, 0x1e, - 0x23, 0x44, 0x9b, 0x52, 0x02, 0x87, 0xdc, 0x83, 0x49, 0xdb, 0xef, 0x44, 0x74, 0xdb, 0x97, 0x23, - 0x37, 0x88, 0x54, 0x97, 0x8f, 0x8f, 0x2a, 0x73, 0x01, 0x2b, 0xa9, 0x47, 0x7e, 0x5d, 0x0c, 0xa1, - 0x46, 0x9f, 0xa0, 0x22, 0xcb, 0x30, 0x59, 0xc5, 0xd5, 0x5b, 0x48, 0x8d, 0x8f, 0xd7, 0xe8, 0xc2, - 0xa5, 0xe3, 0xa3, 0xca, 0x79, 0x07, 0x4b, 0xea, 0x81, 0x28, 0xd2, 0xd9, 0x98, 0x44, 0x64, 0x03, - 0xce, 0x3e, 0xec, 0xec, 0xd1, 0xc0, 0xa3, 0x11, 0x0d, 0x65, 0x8b, 0x86, 0xb1, 0x45, 0x57, 0x8e, - 0x8f, 0x2a, 0x17, 0x9f, 0xa8, 0xc2, 0x8c, 0x36, 0xa5, 0x49, 0x09, 0x85, 0x33, 0xa2, 0xa1, 0x4b, - 0x4e, 0xe4, 0xec, 0x39, 0x21, 0xc5, 0x45, 0x69, 0x6c, 0xfe, 0x1c, 0x17, 0xf1, 0xcd, 0x44, 0xe9, - 0xc2, 0x35, 0x21, 0xe5, 0x0b, 0xaa, 0xef, 0x4d, 0x51, 0xa4, 0x55, 0x94, 0xe4, 0xc9, 0xd6, 0x66, - 0xb5, 0xef, 0x8c, 0x62, 0x6b, 0x71, 0x6d, 0x56, 0xfb, 0x8e, 0xbe, 0x6a, 0xa9, 0x1d, 0x68, 0x0d, - 0x06, 0x77, 0xd8, 0xee, 0x8c, 0x6b, 0xd6, 0xe4, 0xfc, 0x55, 0xd1, 0xa2, 0xe4, 0xfc, 0xbb, 0xc9, - 0x7e, 0x20, 0x22, 0x7e, 0x79, 0x67, 0x70, 0x47, 0xd7, 0xf7, 0x62, 0x2c, 0x23, 0x9f, 0x02, 0x88, - 0x56, 0x55, 0xdb, 0xed, 0xf2, 0x18, 0x76, 0xf2, 0xac, 0xd9, 0xc9, 0x6a, 0xbb, 0xbd, 0x70, 0x59, - 0xf4, 0xef, 0x9c, 0xea, 0x9f, 0xd3, 0x6e, 0x6b, 0xdc, 0x34, 0x26, 0xe4, 0x63, 0x18, 0xc7, 0x25, - 0x4d, 0x8e, 0xe8, 0x38, 0x8e, 0xe8, 0x85, 0xe3, 0xa3, 0xca, 0x2c, 0xae, 0x56, 0x19, 0xe3, 0x69, - 0x10, 0x90, 0x5f, 0x83, 0x19, 0xc1, 0xee, 0x91, 0xeb, 0x35, 0xfd, 0x67, 0xe1, 0x12, 0x0d, 0x9f, - 0x44, 0x7e, 0x1b, 0x97, 0xbf, 0xb1, 0xf9, 0x8b, 0x66, 0xf3, 0x4c, 0x9c, 0x85, 0x1b, 0xa2, 0xa5, - 0x96, 0x6a, 0xe9, 0x33, 0x8e, 0x50, 0x6f, 0x72, 0x0c, 0x7d, 0x81, 0xcc, 0x64, 0x41, 0x56, 0xe1, - 0xcc, 0x4e, 0x48, 0x8d, 0x3e, 0x4c, 0xe2, 0xfe, 0x50, 0x61, 0x23, 0xdc, 0x09, 0x69, 0x3d, 0xaf, - 0x1f, 0x49, 0x3a, 0x62, 0x03, 0x59, 0x0a, 0xfc, 0x76, 0x62, 0x8e, 0x9f, 0x41, 0x89, 0x58, 0xc7, - 0x47, 0x95, 0xcb, 0xcd, 0xc0, 0x6f, 0xd7, 0xf3, 0x27, 0x7a, 0x06, 0x35, 0xf9, 0x01, 0x9c, 0x5b, - 0xf4, 0x3d, 0x8f, 0x36, 0xd8, 0x0a, 0xba, 0xe4, 0x3a, 0xfb, 0x9e, 0x1f, 0x46, 0x6e, 0x63, 0x75, - 0xa9, 0x5c, 0x8a, 0xb7, 0x87, 0x86, 0xc2, 0xa8, 0x37, 0x15, 0x8a, 0xb9, 0x3d, 0xe4, 0x70, 0x21, - 0x5f, 0xc2, 0x84, 0xa8, 0x8b, 0x06, 0x38, 0x35, 0xcf, 0x76, 0x9f, 0x68, 0x0a, 0x99, 0x6f, 0xf4, - 0x81, 0xfc, 0xc9, 0x55, 0x27, 0x93, 0x17, 0xf9, 0x0a, 0xc6, 0xd6, 0xef, 0x55, 0x6d, 0x1a, 0xb6, - 0x7d, 0x2f, 0xa4, 0x65, 0x82, 0x23, 0x7a, 0x59, 0xb0, 0x5e, 0xbf, 0x57, 0xad, 0x76, 0xa2, 0x03, - 0xea, 0x45, 0x6e, 0xc3, 0x89, 0xa8, 0xc4, 0x5a, 0x98, 0x63, 0x33, 0xef, 0xf0, 0xb1, 0x53, 0x0f, - 0x04, 0x44, 0xeb, 0x85, 0xce, 0x8e, 0xcc, 0xc1, 0x48, 0xad, 0xb6, 0xb2, 0xe6, 0xef, 0xbb, 0x5e, - 0x79, 0x8a, 0x09, 0xc3, 0x56, 0xbf, 0xc9, 0x63, 0x98, 0xd1, 0xce, 0x06, 0x75, 0xf6, 0x3f, 0x3d, - 0xa4, 0x5e, 0x54, 0x9e, 0xc6, 0x36, 0x7c, 0x57, 0x1d, 0x6e, 0x6e, 0xea, 0x47, 0x88, 0xa7, 0x77, - 0x6e, 0x56, 0xe3, 0x9f, 0x35, 0x49, 0xb4, 0x50, 0x2c, 0x17, 0xec, 0x69, 0x27, 0xa3, 0x84, 0x6c, - 0xc3, 0xf0, 0x56, 0x27, 0x68, 0xfb, 0x21, 0x2d, 0xcf, 0xa0, 0xe0, 0xae, 0x75, 0xfb, 0x42, 0x05, - 0xea, 0xc2, 0x0c, 0x5b, 0xa2, 0xdb, 0xfc, 0x87, 0xd6, 0x3b, 0xc9, 0x8a, 0x7c, 0x02, 0xe3, 0xb5, - 0xda, 0x4a, 0xbc, 0xa1, 0x9c, 0xc3, 0x0d, 0xe5, 0xe2, 0xf1, 0x51, 0xa5, 0xcc, 0x54, 0xaa, 0x78, - 0x53, 0xd1, 0xbf, 0x2a, 0x9d, 0x82, 0x71, 0xd8, 0x5e, 0xab, 0xc5, 0x1c, 0x66, 0x63, 0x0e, 0x4c, - 0x99, 0xcb, 0xe6, 0xa0, 0x53, 0x90, 0x7f, 0x59, 0x80, 0x2b, 0x3a, 0xcb, 0x2c, 0xc1, 0x94, 0xcf, - 0xbf, 0x88, 0x34, 0xe7, 0x8f, 0x8f, 0x2a, 0x37, 0xcd, 0x7e, 0xd4, 0x33, 0x07, 0x4b, 0x6b, 0x5b, - 0xcf, 0xa6, 0x60, 0x7b, 0xf5, 0x0e, 0x64, 0xb6, 0x77, 0xee, 0x85, 0xdb, 0x6b, 0x4a, 0xad, 0x77, - 0x7b, 0x7b, 0x35, 0xc5, 0xfa, 0x0c, 0x46, 0xd5, 0xa2, 0x4d, 0x86, 0xa1, 0xbf, 0xda, 0x6a, 0x95, - 0xfa, 0xd8, 0x1f, 0xb5, 0xda, 0x4a, 0xa9, 0x40, 0x26, 0x01, 0xe2, 0x9d, 0xaa, 0x54, 0x24, 0xe3, - 0x30, 0x22, 0x77, 0x92, 0x52, 0x3f, 0xe2, 0xb7, 0xdb, 0xa5, 0x01, 0x42, 0x60, 0xd2, 0x5c, 0xcf, - 0x4a, 0x83, 0xd6, 0x6f, 0x17, 0x60, 0x54, 0x7d, 0x87, 0xe4, 0x0c, 0x8c, 0xed, 0x6c, 0xd4, 0xb6, - 0x96, 0x17, 0x57, 0xef, 0xad, 0x2e, 0x2f, 0x95, 0xfa, 0xc8, 0x25, 0x38, 0xbf, 0x5d, 0x5b, 0xa9, - 0x2f, 0x2d, 0xd4, 0xd7, 0x36, 0x17, 0xab, 0x6b, 0xf5, 0x2d, 0x7b, 0xf3, 0xb3, 0xcf, 0xeb, 0xdb, - 0x3b, 0x1b, 0x1b, 0xcb, 0x6b, 0xa5, 0x02, 0x29, 0xc3, 0x34, 0x2b, 0x7e, 0xb8, 0xb3, 0xb0, 0xac, - 0x23, 0x94, 0x8a, 0xe4, 0x2a, 0x5c, 0xca, 0x2a, 0xa9, 0xaf, 0x2c, 0x57, 0x97, 0xd6, 0x96, 0x6b, - 0xb5, 0x52, 0x3f, 0x99, 0x85, 0x29, 0x86, 0x52, 0xdd, 0xda, 0x32, 0x68, 0x07, 0xac, 0x16, 0x8c, - 0x69, 0x1f, 0x00, 0xb9, 0x08, 0xe5, 0xc5, 0x65, 0x7b, 0xbb, 0xbe, 0xb5, 0x63, 0x6f, 0x6d, 0xd6, - 0x96, 0xeb, 0x66, 0x0b, 0x93, 0xa5, 0x6b, 0x9b, 0xf7, 0x57, 0x37, 0xea, 0x0c, 0x54, 0x2b, 0x15, - 0x58, 0x33, 0x8c, 0xd2, 0xda, 0xea, 0xc6, 0xfd, 0xb5, 0xe5, 0xfa, 0x4e, 0x6d, 0x59, 0xa0, 0x14, - 0xad, 0x9f, 0x14, 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, 0x62, 0x5f, - 0x73, 0xc3, 0x6f, 0xe9, 0x5a, 0x5a, 0x5b, 0xc0, 0x6c, 0x55, 0x4a, 0xe6, 0x35, 0x7d, 0x8e, 0x9f, - 0x16, 0xf1, 0x44, 0x22, 0xf5, 0x39, 0x7d, 0x6f, 0x57, 0x9a, 0xdd, 0x7c, 0x3c, 0xa4, 0x42, 0x0d, - 0x43, 0x9a, 0x0c, 0x5d, 0x42, 0xe1, 0x91, 0x37, 0xa4, 0xa6, 0xcb, 0x4f, 0x77, 0xb8, 0xd9, 0x27, - 0xce, 0x25, 0x42, 0xc9, 0xb5, 0x3a, 0x39, 0x1b, 0x2b, 0xf9, 0x20, 0x39, 0x67, 0x84, 0x30, 0x90, - 0x59, 0x62, 0xff, 0xb4, 0x13, 0xa8, 0xa4, 0x02, 0x83, 0x7c, 0xc5, 0xe5, 0xf2, 0x40, 0xdd, 0xba, - 0xc5, 0x00, 0x36, 0x87, 0x5b, 0x7f, 0xd8, 0xaf, 0x2b, 0x19, 0x4c, 0x97, 0xd6, 0xe4, 0x8d, 0xba, - 0x34, 0xca, 0x19, 0xa1, 0x4c, 0x6d, 0xae, 0xd1, 0x30, 0xe4, 0xe7, 0x9d, 0xa2, 0x1a, 0x12, 0x08, - 0x39, 0xb0, 0xee, 0x36, 0x99, 0xda, 0xac, 0x50, 0xd8, 0xd1, 0x91, 0x7f, 0x55, 0x78, 0x74, 0xec, - 0x8f, 0x8f, 0x8e, 0xe2, 0xd3, 0xe4, 0x47, 0xc7, 0x18, 0x85, 0x8d, 0xba, 0x50, 0xf3, 0xb0, 0x15, - 0x03, 0xf1, 0xa8, 0x0b, 0xd5, 0x50, 0x8c, 0xba, 0x86, 0x44, 0xde, 0x07, 0xa8, 0x3e, 0xaa, 0xe1, - 0x19, 0xc9, 0xde, 0x10, 0xaa, 0x2e, 0x6e, 0x4a, 0xce, 0xb3, 0x50, 0x1c, 0xc1, 0x02, 0xfd, 0x8c, - 0xa9, 0x61, 0x93, 0x05, 0x98, 0xa8, 0xfe, 0xb8, 0x13, 0xd0, 0xd5, 0x26, 0xdb, 0xd7, 0x22, 0x7e, - 0x98, 0x1e, 0xe5, 0x0b, 0xaf, 0xc3, 0x0a, 0xea, 0xae, 0x28, 0xd1, 0x18, 0x98, 0x24, 0x64, 0x13, - 0xce, 0xde, 0x5f, 0xdc, 0x12, 0xf3, 0xb0, 0xda, 0x68, 0xf8, 0x1d, 0x2f, 0x12, 0xfa, 0xed, 0xd5, - 0xe3, 0xa3, 0xca, 0xa5, 0xfd, 0x46, 0xbb, 0x2e, 0xe7, 0xac, 0xc3, 0x8b, 0x75, 0x05, 0x37, 0x45, - 0x4b, 0xae, 0x41, 0xff, 0x8e, 0xbd, 0x2a, 0x4e, 0xda, 0x67, 0x8f, 0x8f, 0x2a, 0x13, 0x9d, 0xc0, - 0xd5, 0x48, 0x58, 0xa9, 0xd5, 0x82, 0xc9, 0xfb, 0x34, 0x62, 0x93, 0x53, 0x9e, 0x69, 0xba, 0x0f, - 0xdd, 0x87, 0x30, 0xf6, 0xc8, 0x8d, 0x0e, 0x6a, 0xb4, 0x11, 0xd0, 0x48, 0xda, 0x73, 0x50, 0x4c, - 0xcf, 0xdc, 0xe8, 0xa0, 0x1e, 0x72, 0xb8, 0xbe, 0x77, 0x6b, 0xe8, 0xd6, 0x32, 0x9c, 0x11, 0xb5, - 0xa9, 0x23, 0xd4, 0xbc, 0xc9, 0xb0, 0x80, 0x0c, 0x71, 0xa8, 0x74, 0x86, 0x26, 0x9b, 0x3f, 0x2c, - 0xc2, 0xcc, 0xe2, 0x81, 0xe3, 0xed, 0xd3, 0x2d, 0x27, 0x0c, 0x9f, 0xf9, 0x41, 0x53, 0x6b, 0x3c, - 0x9e, 0x1f, 0x53, 0x8d, 0xc7, 0x03, 0xe3, 0x3c, 0x8c, 0x6d, 0xb6, 0x9a, 0x92, 0x46, 0x9c, 0x6d, - 0xb1, 0x2e, 0xbf, 0xd5, 0xac, 0xb7, 0x25, 0x2f, 0x1d, 0x89, 0xd1, 0x6c, 0xd0, 0x67, 0x8a, 0xa6, - 0x3f, 0xa6, 0xf1, 0xe8, 0x33, 0x8d, 0x46, 0x43, 0x22, 0xcb, 0x70, 0xb6, 0x46, 0x1b, 0xbe, 0xd7, - 0xbc, 0xe7, 0x34, 0x22, 0x3f, 0xd8, 0xf6, 0x9f, 0x50, 0x4f, 0x4c, 0x42, 0x54, 0xfe, 0x43, 0x2c, - 0xac, 0x3f, 0xc6, 0xd2, 0x7a, 0xc4, 0x8a, 0xed, 0x34, 0x05, 0xd9, 0x84, 0x91, 0x47, 0xc2, 0x2a, - 0x28, 0x0e, 0xc4, 0xaf, 0xde, 0x54, 0x66, 0xc2, 0xc5, 0x80, 0xe2, 0xcc, 0x71, 0x5a, 0xea, 0x48, - 0xaf, 0x74, 0x29, 0x5c, 0xae, 0x24, 0xa6, 0xad, 0x98, 0x58, 0x3b, 0x30, 0xb1, 0xd5, 0xea, 0xec, - 0xbb, 0x1e, 0x5b, 0x58, 0x6a, 0xf4, 0x47, 0x64, 0x09, 0x20, 0x06, 0x08, 0x5b, 0xdf, 0x94, 0x38, - 0x46, 0xc7, 0x05, 0xbb, 0x77, 0xc5, 0xd7, 0x86, 0x10, 0x3c, 0xf5, 0xd8, 0x1a, 0x9d, 0xf5, 0x7f, - 0xfb, 0x81, 0x88, 0x01, 0xc0, 0x8d, 0xae, 0x46, 0x23, 0xb6, 0x05, 0x9d, 0x83, 0xa2, 0x32, 0xc9, - 0x0d, 0x1d, 0x1f, 0x55, 0x8a, 0x6e, 0xd3, 0x2e, 0xae, 0x2e, 0x91, 0xb7, 0x60, 0x10, 0xd1, 0x50, - 0xfe, 0x93, 0xaa, 0x3e, 0x9d, 0x03, 0x5f, 0x60, 0x70, 0x87, 0xb5, 0x39, 0x32, 0x79, 0x1b, 0x46, - 0x97, 0x68, 0x8b, 0xee, 0x3b, 0x91, 0x2f, 0x97, 0x00, 0x6e, 0xe4, 0x92, 0x40, 0x6d, 0xce, 0xc5, - 0x98, 0xec, 0xc8, 0x6b, 0x53, 0x27, 0xf4, 0x3d, 0xfd, 0xc8, 0x1b, 0x20, 0x44, 0x3f, 0xf2, 0x72, - 0x1c, 0xf2, 0x3b, 0x05, 0x18, 0xab, 0x7a, 0x9e, 0x30, 0x1e, 0x85, 0x42, 0xea, 0x33, 0x37, 0x95, - 0xb5, 0x75, 0xcd, 0xd9, 0xa3, 0xad, 0x5d, 0xa7, 0xd5, 0xa1, 0xe1, 0xc2, 0x57, 0xec, 0x14, 0xf2, - 0x5f, 0x8e, 0x2a, 0x1f, 0x9c, 0xc2, 0x1c, 0x14, 0xdb, 0x6d, 0xb7, 0x03, 0xc7, 0x8d, 0xc2, 0xe3, - 0xa3, 0xca, 0x8c, 0x13, 0x57, 0xa8, 0x7f, 0x37, 0x5a, 0x3b, 0xe2, 0xf5, 0x7f, 0xa8, 0xd7, 0xfa, - 0x4f, 0x0e, 0xe1, 0x4c, 0x35, 0x0c, 0x3b, 0x87, 0xb4, 0x16, 0x39, 0x41, 0xb4, 0xed, 0x1e, 0x52, - 0x5c, 0x44, 0xba, 0x1b, 0x10, 0x5e, 0xff, 0xe9, 0x51, 0xa5, 0xc0, 0x0e, 0x3e, 0x0e, 0x92, 0x32, - 0xdd, 0x26, 0x88, 0xea, 0x91, 0xab, 0x6f, 0x61, 0x68, 0x4a, 0x48, 0xf2, 0xb6, 0xae, 0x29, 0xa5, - 0x63, 0x75, 0x29, 0x6f, 0xc4, 0xad, 0x45, 0xb8, 0x78, 0x9f, 0x46, 0x36, 0x0d, 0x69, 0x24, 0xbf, - 0x11, 0x9c, 0xe1, 0xb1, 0x01, 0x77, 0x18, 0x7f, 0x2b, 0x62, 0x1c, 0x7e, 0xfe, 0x5d, 0xc8, 0x12, - 0xeb, 0x6f, 0x15, 0xa0, 0xb2, 0x18, 0x50, 0x7e, 0x66, 0xc8, 0x61, 0xd4, 0x7d, 0xed, 0xba, 0x08, - 0x03, 0xdb, 0xcf, 0xdb, 0xd2, 0xf2, 0x82, 0xa5, 0x6c, 0x50, 0x6c, 0x84, 0x9e, 0xd0, 0x90, 0x65, - 0x3d, 0x86, 0x19, 0x9b, 0x7a, 0xf4, 0x99, 0xb3, 0xd7, 0xa2, 0x86, 0x2d, 0xa8, 0x02, 0x83, 0xfc, - 0x43, 0x4f, 0x75, 0x81, 0xc3, 0x4f, 0x67, 0x57, 0xb3, 0x26, 0x60, 0x6c, 0xcb, 0xf5, 0xf6, 0x05, - 0x77, 0xeb, 0x0f, 0xfa, 0x61, 0x9c, 0xff, 0x16, 0xc7, 0xa0, 0xc4, 0x16, 0x57, 0x38, 0xc9, 0x16, - 0xf7, 0x2e, 0x4c, 0xb0, 0x3d, 0x82, 0x06, 0xbb, 0x34, 0x60, 0x5b, 0xab, 0x90, 0x04, 0x1e, 0xe9, - 0x42, 0x2c, 0xa8, 0x3f, 0xe5, 0x25, 0xb6, 0x89, 0x48, 0xd6, 0x60, 0x92, 0x03, 0xee, 0x51, 0x27, - 0xea, 0xc4, 0x56, 0xa9, 0x33, 0xe2, 0xdc, 0x23, 0xc1, 0x7c, 0x6a, 0x0a, 0x5e, 0x8f, 0x05, 0xd0, - 0x4e, 0xd0, 0x92, 0x8f, 0xe1, 0xcc, 0x56, 0xe0, 0x7f, 0xfd, 0x5c, 0xdb, 0xd4, 0xf9, 0xd7, 0xc9, - 0x4f, 0x48, 0xac, 0xa8, 0xae, 0x6f, 0xed, 0x49, 0x6c, 0xf2, 0x06, 0x8c, 0xac, 0x86, 0x0b, 0x7e, - 0xe0, 0x7a, 0xfb, 0xf8, 0x8d, 0x8e, 0x70, 0x63, 0xbe, 0x1b, 0xd6, 0xf7, 0x10, 0x68, 0xab, 0xe2, - 0x84, 0xd9, 0x79, 0xb8, 0xb7, 0xd9, 0xf9, 0x36, 0xc0, 0x9a, 0xef, 0x34, 0xab, 0xad, 0xd6, 0x62, - 0x35, 0xc4, 0xdd, 0x53, 0xec, 0x47, 0x2d, 0xdf, 0x69, 0xd6, 0x9d, 0x56, 0xab, 0xde, 0x70, 0x42, - 0x5b, 0xc3, 0x79, 0x30, 0x30, 0x32, 0x54, 0x1a, 0xb6, 0xcf, 0xac, 0xb9, 0x0d, 0xea, 0x85, 0xf4, - 0x91, 0x13, 0x78, 0xae, 0xb7, 0x1f, 0x5a, 0xff, 0xea, 0x2c, 0x8c, 0xa8, 0x2e, 0xdf, 0xd4, 0x15, - 0x7b, 0xb1, 0xcb, 0xe1, 0xe8, 0xc7, 0x66, 0x2b, 0x5b, 0xc3, 0x20, 0xe7, 0x51, 0xd5, 0x17, 0xfb, - 0xeb, 0x30, 0x9b, 0x8d, 0x4e, 0xbb, 0x6d, 0x33, 0x18, 0xfb, 0xca, 0x96, 0x16, 0x50, 0xfe, 0x23, - 0xfc, 0x2b, 0x6b, 0xee, 0xd9, 0xc5, 0xa5, 0x05, 0x36, 0xbd, 0x37, 0x57, 0x97, 0x16, 0x51, 0x94, - 0x23, 0x7c, 0x7a, 0xfb, 0x6e, 0xb3, 0x61, 0x23, 0x94, 0x95, 0xd6, 0xaa, 0xeb, 0x6b, 0x42, 0x5c, - 0x58, 0x1a, 0x3a, 0x87, 0x2d, 0x1b, 0xa1, 0x4c, 0x39, 0xe4, 0x16, 0x88, 0x45, 0xdf, 0x8b, 0x02, - 0xbf, 0x15, 0xa2, 0x06, 0x33, 0xc2, 0x87, 0x53, 0x98, 0x2e, 0x1a, 0xa2, 0xc8, 0x4e, 0xa0, 0x92, - 0x47, 0x30, 0x5b, 0x6d, 0x3e, 0x75, 0xbc, 0x06, 0x6d, 0xf2, 0x92, 0x47, 0x7e, 0xf0, 0xe4, 0x71, - 0xcb, 0x7f, 0x16, 0xa2, 0xbc, 0x47, 0x84, 0xa5, 0x4f, 0xa0, 0x48, 0x4b, 0xc8, 0x33, 0x89, 0x64, - 0xe7, 0x51, 0xb3, 0x4f, 0x6a, 0xb1, 0xe5, 0x77, 0x9a, 0x62, 0x14, 0xf0, 0x93, 0x6a, 0x30, 0x80, - 0xcd, 0xe1, 0x4c, 0x4a, 0x2b, 0xb5, 0x75, 0xb4, 0xab, 0x09, 0x29, 0x1d, 0x84, 0x87, 0x36, 0x83, - 0x91, 0x57, 0x61, 0x58, 0xea, 0xb9, 0xdc, 0xf0, 0x8f, 0x06, 0x67, 0xa9, 0xdf, 0xca, 0x32, 0xf6, - 0x49, 0xd8, 0xb4, 0xe1, 0x3f, 0xa5, 0xc1, 0xf3, 0x45, 0xbf, 0x49, 0xa5, 0x15, 0x48, 0x58, 0x39, - 0x78, 0x41, 0xbd, 0xc1, 0x4a, 0x6c, 0x13, 0x91, 0x55, 0xc0, 0xf7, 0xc0, 0xb0, 0x7c, 0x26, 0xae, - 0x80, 0xef, 0x91, 0xa1, 0x2d, 0xcb, 0xc8, 0x12, 0x9c, 0xad, 0x76, 0x22, 0xff, 0xd0, 0x89, 0xdc, - 0xc6, 0x4e, 0x7b, 0x3f, 0x70, 0x58, 0x25, 0x25, 0x24, 0x40, 0xbd, 0xdf, 0x91, 0x85, 0xf5, 0x8e, - 0x28, 0xb5, 0xd3, 0x04, 0xe4, 0x1d, 0x18, 0x5f, 0x0d, 0xb9, 0xa5, 0xcf, 0x09, 0x69, 0x13, 0xcd, - 0x35, 0xa2, 0x95, 0x6e, 0x58, 0x47, 0xbb, 0x5f, 0x9d, 0x9d, 0x14, 0x9a, 0xb6, 0x81, 0x47, 0x2c, - 0x18, 0xaa, 0x86, 0xa1, 0x1b, 0x46, 0x68, 0x85, 0x19, 0x59, 0x80, 0xe3, 0xa3, 0xca, 0x90, 0x83, - 0x10, 0x5b, 0x94, 0x90, 0x47, 0x30, 0xb6, 0x44, 0x99, 0xe2, 0xb8, 0x1d, 0x74, 0xc2, 0x08, 0x6d, - 0x2a, 0x63, 0xf3, 0xe7, 0xc5, 0x87, 0xad, 0x95, 0x88, 0xb9, 0xcc, 0xb5, 0xbd, 0x26, 0xc2, 0xeb, - 0x11, 0x2b, 0xd0, 0x77, 0x2d, 0x0d, 0x9f, 0x69, 0xc5, 0x82, 0x66, 0xc5, 0x6d, 0xb2, 0x4f, 0x75, - 0x1a, 0xdb, 0x80, 0x5a, 0xb1, 0x58, 0x1b, 0xea, 0x07, 0x58, 0xa2, 0x6b, 0xc5, 0x06, 0x09, 0x69, - 0xa4, 0x8c, 0xc7, 0x33, 0x86, 0x81, 0xd0, 0x2c, 0x94, 0x4d, 0x3c, 0xa5, 0x69, 0xf9, 0x43, 0x18, - 0x5b, 0xec, 0x84, 0x91, 0x7f, 0xb8, 0x7d, 0x40, 0x0f, 0x29, 0xda, 0x5d, 0x84, 0xee, 0xdf, 0x40, - 0x70, 0x3d, 0x62, 0x70, 0xbd, 0x9b, 0x1a, 0x3a, 0xf9, 0x14, 0x88, 0x54, 0xe2, 0xef, 0xb3, 0xf9, - 0xe1, 0xb1, 0xb9, 0x8c, 0xa6, 0x97, 0x11, 0xae, 0xb9, 0x4b, 0xdd, 0xbf, 0xbe, 0xaf, 0x8a, 0x75, - 0xf3, 0x5f, 0x9a, 0x98, 0x35, 0x88, 0x37, 0xf1, 0x7e, 0xe0, 0xb4, 0x0f, 0xca, 0xe5, 0x58, 0xcb, - 0x16, 0x9d, 0xda, 0x67, 0x70, 0x43, 0x5b, 0x88, 0xd1, 0x49, 0x0d, 0x80, 0xff, 0x5c, 0x63, 0x03, - 0xcf, 0x8d, 0x35, 0x65, 0x43, 0x5e, 0xac, 0x40, 0xca, 0xea, 0x3c, 0xea, 0x20, 0x9c, 0x6d, 0xcb, - 0x35, 0x46, 0x53, 0x63, 0x43, 0x9e, 0x40, 0x89, 0xff, 0x5a, 0xf7, 0x3d, 0x37, 0xe2, 0x4b, 0xef, - 0x9c, 0x61, 0xd9, 0x4b, 0x16, 0xcb, 0x0a, 0xd0, 0xa2, 0x2a, 0x2a, 0x38, 0x54, 0xa5, 0x5a, 0x35, - 0x29, 0xc6, 0x64, 0x0b, 0xc6, 0xb6, 0x02, 0xbf, 0xd9, 0x69, 0x44, 0xb8, 0x61, 0x5f, 0x40, 0x45, - 0x91, 0x88, 0x7a, 0xb4, 0x12, 0x2e, 0x93, 0x36, 0x07, 0xd4, 0xd9, 0x66, 0xae, 0xcb, 0x44, 0x43, - 0x24, 0x0b, 0x30, 0xb4, 0xe5, 0xb7, 0xdc, 0xc6, 0xf3, 0xf2, 0x45, 0x6c, 0xf4, 0xb4, 0x64, 0x86, - 0x40, 0xd9, 0x54, 0xd4, 0x0e, 0xdb, 0x08, 0xd2, 0xb5, 0x43, 0x8e, 0x44, 0xaa, 0x30, 0xf1, 0x29, - 0x9b, 0x30, 0xae, 0xef, 0x79, 0x8e, 0x1b, 0xd0, 0xf2, 0x25, 0x1c, 0x17, 0xb4, 0x7a, 0xff, 0x48, - 0x2f, 0xd0, 0xa7, 0xb3, 0x41, 0x41, 0x56, 0xe1, 0xcc, 0x6a, 0x58, 0x8b, 0x02, 0xb7, 0x4d, 0xd7, - 0x1d, 0xcf, 0xd9, 0xa7, 0xcd, 0xf2, 0xe5, 0xd8, 0xec, 0xec, 0x86, 0xf5, 0x10, 0xcb, 0xea, 0x87, - 0xbc, 0x50, 0x37, 0x3b, 0x27, 0xe8, 0xc8, 0x67, 0x30, 0xbd, 0xfc, 0x75, 0xc4, 0x66, 0x4c, 0xab, - 0xda, 0x69, 0xba, 0x51, 0x2d, 0xf2, 0x03, 0x67, 0x9f, 0x96, 0x2b, 0xc8, 0xef, 0x95, 0xe3, 0xa3, - 0xca, 0x15, 0x2a, 0xca, 0xeb, 0x0e, 0x43, 0xa8, 0x87, 0x1c, 0x43, 0xbf, 0x4e, 0xce, 0xe2, 0xc0, - 0xa4, 0x5f, 0xeb, 0xb4, 0x99, 0xe2, 0x8a, 0xd2, 0xbf, 0x62, 0x48, 0x5f, 0x2b, 0xe1, 0xd2, 0x0f, - 0x39, 0x20, 0x25, 0x7d, 0x0d, 0x91, 0xd8, 0x40, 0x1e, 0xf8, 0xae, 0x57, 0x6d, 0x44, 0xee, 0x53, - 0x2a, 0xce, 0xf5, 0x61, 0xf9, 0x2a, 0xb6, 0x14, 0x4d, 0xe4, 0xbf, 0xec, 0xbb, 0x5e, 0xdd, 0xc1, - 0xe2, 0xba, 0xb0, 0x02, 0x18, 0x26, 0xf2, 0x34, 0x35, 0xf9, 0x01, 0x9c, 0x5b, 0xf7, 0xf7, 0xdc, - 0x16, 0xe5, 0x4b, 0x0e, 0x17, 0x0b, 0x9a, 0xfb, 0x2c, 0xe4, 0x8b, 0x26, 0xf2, 0x43, 0xc4, 0xa8, - 0x8b, 0xd5, 0xea, 0x50, 0xe1, 0xe8, 0x26, 0xf2, 0x6c, 0x2e, 0x64, 0x19, 0xc6, 0xf1, 0xbb, 0x6c, - 0xe1, 0xcf, 0xb0, 0x7c, 0x0d, 0x4f, 0x47, 0x57, 0x13, 0x0a, 0xcf, 0xcd, 0x65, 0x0d, 0x67, 0xd9, - 0x8b, 0x82, 0xe7, 0xb6, 0x41, 0x46, 0x3e, 0x82, 0xb9, 0xe4, 0xf4, 0x5e, 0xf4, 0xbd, 0xc7, 0xee, - 0x7e, 0x27, 0xa0, 0xcd, 0xf2, 0x2b, 0xac, 0xa9, 0x76, 0x17, 0x8c, 0xb9, 0x47, 0x70, 0x36, 0x55, - 0x05, 0x29, 0x41, 0xff, 0x13, 0x71, 0xe3, 0x38, 0x6a, 0xb3, 0x3f, 0xc9, 0x9b, 0x30, 0xf8, 0x94, - 0x1d, 0x4b, 0x50, 0x63, 0x88, 0xef, 0xb0, 0x34, 0xd2, 0x55, 0xef, 0xb1, 0x6f, 0x73, 0xa4, 0xf7, - 0x8b, 0xef, 0x16, 0x1e, 0x0c, 0x8c, 0x8c, 0x95, 0xc6, 0xf9, 0x45, 0xf1, 0x83, 0x81, 0x91, 0x89, - 0xd2, 0xa4, 0x55, 0x85, 0x33, 0x09, 0x7c, 0x52, 0x86, 0x61, 0xea, 0x31, 0x55, 0xb7, 0xc9, 0x75, - 0x16, 0x5b, 0xfe, 0x24, 0xd3, 0x30, 0xd8, 0x72, 0x0f, 0xdd, 0x08, 0x2b, 0x1c, 0xb4, 0xf9, 0x0f, - 0xeb, 0x77, 0x0b, 0x40, 0xd2, 0x5b, 0x06, 0xb9, 0x95, 0x60, 0xc3, 0x15, 0x3d, 0x01, 0xd2, 0x4d, - 0xe1, 0x92, 0xfb, 0xa7, 0x30, 0xc5, 0xc7, 0x4c, 0x6e, 0x6e, 0x5a, 0x5d, 0x7c, 0x51, 0xcd, 0x28, - 0xd6, 0xcd, 0x21, 0xa2, 0x18, 0xb7, 0xc2, 0x35, 0x6c, 0x5a, 0x07, 0x66, 0x32, 0x37, 0x0b, 0xb2, - 0x0e, 0x33, 0x87, 0xbe, 0x17, 0x1d, 0xb4, 0x9e, 0xcb, 0xbd, 0x42, 0xd4, 0x56, 0xc0, 0xda, 0x70, - 0x7d, 0xcc, 0x44, 0xb0, 0xa7, 0x04, 0x58, 0x70, 0xc4, 0x7a, 0x1e, 0x0c, 0x8c, 0x14, 0x4b, 0xfd, - 0xaa, 0x27, 0x96, 0x0d, 0x67, 0x53, 0x6b, 0x2e, 0xf9, 0x3e, 0x8c, 0x37, 0xf0, 0x28, 0x63, 0xd4, - 0xc4, 0x77, 0x1c, 0x0d, 0xae, 0x7f, 0x4e, 0x1c, 0xce, 0xbb, 0xf2, 0xcf, 0x0a, 0x30, 0x9b, 0xb3, - 0xda, 0x9e, 0x5e, 0xd4, 0x9f, 0xc3, 0xb9, 0x43, 0xe7, 0xeb, 0x7a, 0x80, 0x27, 0xd5, 0x7a, 0xe0, - 0x78, 0x09, 0x69, 0xe3, 0x4a, 0x92, 0x8d, 0xa1, 0x7b, 0xeb, 0x1c, 0x3a, 0x5f, 0xdb, 0x88, 0x60, - 0xb3, 0x72, 0xde, 0xce, 0x4f, 0x60, 0xc2, 0x58, 0x5f, 0x4f, 0xdd, 0x38, 0xeb, 0x0e, 0x9c, 0x65, - 0x67, 0xf9, 0x88, 0x9e, 0xd8, 0x42, 0x65, 0x6d, 0x01, 0xd4, 0xe8, 0xa1, 0xd3, 0x3e, 0xf0, 0x99, - 0xde, 0xbd, 0xa0, 0xff, 0x12, 0x16, 0x0e, 0x22, 0x2c, 0x0e, 0xaa, 0x60, 0xf7, 0x2e, 0xd7, 0xc5, - 0x43, 0x85, 0x69, 0x6b, 0x54, 0xd6, 0x9f, 0x14, 0x81, 0x88, 0x05, 0x32, 0xa0, 0xce, 0xa1, 0x6c, - 0xc6, 0x7b, 0x30, 0xce, 0xcf, 0xa3, 0x1c, 0x8c, 0xcd, 0x19, 0x9b, 0x9f, 0x12, 0x5f, 0x9e, 0x5e, - 0xb4, 0xd2, 0x67, 0x1b, 0xa8, 0x8c, 0xd4, 0xa6, 0xfc, 0x20, 0x8d, 0xa4, 0x45, 0x83, 0x54, 0x2f, - 0x62, 0xa4, 0xfa, 0x6f, 0xf2, 0x31, 0x4c, 0x2e, 0xfa, 0x87, 0x6d, 0x26, 0x13, 0x41, 0xdc, 0x2f, - 0x8c, 0x14, 0xa2, 0x5e, 0xa3, 0x70, 0xa5, 0xcf, 0x4e, 0xa0, 0x93, 0x0d, 0x98, 0xba, 0xd7, 0xea, - 0x84, 0x07, 0x55, 0xaf, 0xb9, 0xd8, 0xf2, 0x43, 0xc9, 0x65, 0x40, 0x18, 0x09, 0xc4, 0xf2, 0x96, - 0xc6, 0x58, 0xe9, 0xb3, 0xb3, 0x08, 0xc9, 0xab, 0x30, 0xb8, 0xfc, 0x94, 0x2d, 0xbb, 0xd2, 0x67, - 0x43, 0xb8, 0x94, 0x6d, 0x7a, 0x74, 0xf3, 0xf1, 0x4a, 0x9f, 0xcd, 0x4b, 0x17, 0x46, 0x61, 0x58, - 0x9e, 0x65, 0x6f, 0x31, 0x95, 0x58, 0x89, 0xb3, 0x16, 0x39, 0x51, 0x27, 0x24, 0x73, 0x30, 0xb2, - 0xd3, 0x66, 0x47, 0x2c, 0x69, 0x04, 0xb0, 0xd5, 0x6f, 0xeb, 0x4d, 0x53, 0xd2, 0xe4, 0xa2, 0x6e, - 0x3f, 0xe6, 0xc8, 0x31, 0xc0, 0x5a, 0x31, 0x85, 0xdb, 0x1d, 0xdb, 0xa8, 0xb7, 0x98, 0xa8, 0xb7, - 0x94, 0x94, 0xb5, 0x35, 0x93, 0x29, 0x3c, 0xeb, 0x33, 0xb8, 0xbc, 0xd3, 0x0e, 0x69, 0x10, 0x55, - 0xdb, 0xed, 0x96, 0xdb, 0xe0, 0x77, 0x3e, 0x78, 0xe6, 0x95, 0x93, 0xe5, 0x1d, 0x18, 0xe2, 0x00, - 0x31, 0x4d, 0xe4, 0x1c, 0xac, 0xb6, 0xdb, 0xe2, 0xa4, 0x7d, 0x97, 0x2b, 0xe7, 0xfc, 0xec, 0x6c, - 0x0b, 0x6c, 0xeb, 0xb7, 0x0a, 0x70, 0x99, 0x7f, 0x01, 0xb9, 0xac, 0xbf, 0x03, 0xa3, 0xe8, 0xd1, - 0xd5, 0x76, 0x1a, 0xf2, 0x9b, 0xe0, 0xae, 0x6d, 0x12, 0x68, 0xc7, 0xe5, 0x9a, 0xaf, 0x5c, 0x31, - 0xdf, 0x57, 0x4e, 0x7e, 0x60, 0xfd, 0x99, 0x1f, 0xd8, 0xa7, 0x60, 0x89, 0x16, 0xb5, 0x5a, 0xa9, - 0x46, 0x85, 0x2f, 0xd2, 0x2a, 0xeb, 0x7f, 0x16, 0x61, 0xf6, 0x3e, 0xf5, 0x68, 0xe0, 0x60, 0x3f, - 0x0d, 0x9b, 0x8e, 0xee, 0x33, 0x53, 0xe8, 0xea, 0x33, 0x53, 0x91, 0x56, 0xb2, 0x22, 0x5a, 0xc9, - 0x52, 0x0e, 0x40, 0xec, 0xb8, 0xb8, 0x63, 0xaf, 0x8a, 0x6e, 0xe1, 0x71, 0xb1, 0x13, 0xb8, 0x68, - 0x07, 0x27, 0xab, 0xb1, 0xbf, 0xcd, 0x40, 0x4f, 0x73, 0xd9, 0x94, 0xf0, 0x3f, 0x18, 0x16, 0xfe, - 0x36, 0xa6, 0x97, 0xcd, 0x06, 0x0c, 0x71, 0xe3, 0x1e, 0xde, 0xd6, 0x8c, 0xcd, 0xdf, 0x10, 0xdf, - 0x54, 0x4e, 0x07, 0x85, 0x25, 0x10, 0x37, 0x76, 0x3e, 0x05, 0x22, 0x04, 0xd8, 0x82, 0xcb, 0xdc, - 0xa7, 0x30, 0xa6, 0xa1, 0x9c, 0x64, 0xef, 0x57, 0x46, 0x46, 0xa6, 0x31, 0x7a, 0xfb, 0xdc, 0x5e, - 0xa9, 0xed, 0xfd, 0xd6, 0x07, 0x50, 0x4e, 0xb7, 0x46, 0x18, 0x96, 0x7a, 0xd9, 0xb1, 0xac, 0x25, - 0x98, 0xbe, 0x4f, 0x23, 0x9c, 0xb8, 0xf8, 0x11, 0x69, 0x7e, 0x63, 0x89, 0xef, 0x4c, 0xae, 0xaa, - 0xf2, 0x56, 0x47, 0xff, 0x4a, 0x6b, 0x30, 0x93, 0xe0, 0x22, 0xea, 0x7f, 0x1f, 0x86, 0x05, 0x48, - 0xad, 0xa8, 0xc2, 0xf9, 0x94, 0xee, 0x89, 0x82, 0xdd, 0x79, 0x3e, 0x6f, 0x05, 0x67, 0x5b, 0x12, - 0x58, 0x07, 0x70, 0x8e, 0x6d, 0xb3, 0x31, 0x57, 0x35, 0x1d, 0x2f, 0xc0, 0x68, 0x9b, 0x29, 0x0a, - 0xa1, 0xfb, 0x63, 0x3e, 0x8d, 0x06, 0xed, 0x11, 0x06, 0xa8, 0xb9, 0x3f, 0xa6, 0xe4, 0x12, 0x00, - 0x16, 0x62, 0x37, 0xc5, 0x2a, 0x80, 0xe8, 0xdc, 0x70, 0x47, 0x00, 0xbd, 0xce, 0xf8, 0xbc, 0xb1, - 0xf1, 0x6f, 0x2b, 0x80, 0xd9, 0x54, 0x4d, 0xa2, 0x03, 0xb7, 0x60, 0x44, 0xaa, 0xb0, 0x09, 0x93, - 0xba, 0xde, 0x03, 0x5b, 0x21, 0x91, 0xd7, 0xe0, 0x8c, 0x47, 0xbf, 0x8e, 0xea, 0xa9, 0x36, 0x4c, - 0x30, 0xf0, 0x96, 0x6c, 0x87, 0xf5, 0x4b, 0x68, 0x46, 0xad, 0x79, 0xfe, 0xb3, 0xc7, 0x2d, 0xe7, - 0x09, 0x4d, 0x55, 0xfc, 0x7d, 0x18, 0xa9, 0xf5, 0xae, 0x98, 0x7f, 0x3e, 0xb2, 0x72, 0x5b, 0x91, - 0x58, 0x2d, 0x98, 0x63, 0x5d, 0xaa, 0x55, 0xd7, 0xd7, 0x56, 0x9b, 0x5b, 0xdf, 0xb6, 0x00, 0x9f, - 0xc2, 0x85, 0xcc, 0xda, 0xbe, 0x6d, 0x21, 0xfe, 0x9b, 0x01, 0x98, 0xe5, 0x9b, 0x49, 0x7a, 0x06, - 0x9f, 0x7c, 0xa9, 0xf9, 0x85, 0xdc, 0x48, 0xde, 0xce, 0xb8, 0x91, 0x44, 0x12, 0xfd, 0x46, 0xd2, - 0xb8, 0x87, 0x7c, 0x37, 0xfb, 0x1e, 0x12, 0xed, 0x44, 0xe6, 0x3d, 0x64, 0xf2, 0xf6, 0x71, 0x39, - 0xff, 0xf6, 0x11, 0xaf, 0x59, 0x32, 0x6e, 0x1f, 0xb3, 0xee, 0x1c, 0x13, 0xae, 0x3f, 0x23, 0x2f, - 0xd7, 0xf5, 0xe7, 0x35, 0x18, 0xae, 0xb6, 0xdb, 0x9a, 0x2b, 0x1d, 0x0e, 0x8f, 0xd3, 0x6e, 0x73, - 0xe1, 0xc9, 0x42, 0xb9, 0xce, 0x43, 0xc6, 0x3a, 0xff, 0x1e, 0xc0, 0x22, 0x3a, 0xfc, 0xe3, 0xc0, - 0x8d, 0x21, 0x06, 0x6a, 0xf8, 0xfc, 0x19, 0x00, 0x0e, 0x9c, 0x6e, 0x01, 0x89, 0x91, 0xb9, 0x62, - 0x6f, 0xed, 0x42, 0x39, 0x3d, 0x7d, 0x5e, 0xc2, 0xd2, 0xf5, 0x47, 0x05, 0xb8, 0x24, 0x94, 0x9c, - 0xc4, 0x07, 0x7e, 0xfa, 0xd9, 0xf9, 0x36, 0x8c, 0x0b, 0xda, 0xed, 0xf8, 0x43, 0xe0, 0x57, 0xc0, - 0x72, 0x31, 0xe6, 0x2b, 0xba, 0x81, 0x46, 0xde, 0x86, 0x11, 0xfc, 0x23, 0xbe, 0x06, 0x61, 0x92, - 0x19, 0x45, 0xd4, 0x7a, 0xf2, 0x32, 0x44, 0xa1, 0x5a, 0x5f, 0xc1, 0xe5, 0xbc, 0x86, 0xbf, 0x04, - 0xb9, 0xfc, 0xdb, 0x02, 0x5c, 0x10, 0xec, 0x8d, 0xa5, 0xe2, 0x85, 0x76, 0x9d, 0x53, 0x38, 0xe0, - 0x3e, 0x80, 0x31, 0x56, 0xa1, 0x6c, 0x77, 0xbf, 0xd8, 0x5a, 0xc5, 0xc9, 0x21, 0x2e, 0x59, 0x72, - 0x22, 0x47, 0x38, 0x94, 0x38, 0x87, 0x2d, 0x69, 0xbc, 0xb0, 0x75, 0x62, 0xeb, 0x0b, 0xb8, 0x98, - 0xdd, 0x85, 0x97, 0x20, 0x9f, 0x07, 0x30, 0x97, 0xb1, 0x29, 0xbc, 0xd8, 0x9e, 0xfc, 0x39, 0x5c, - 0xc8, 0xe4, 0xf5, 0x12, 0x9a, 0xb9, 0xc2, 0x34, 0x8e, 0xe8, 0x25, 0x0c, 0xa1, 0xf5, 0x08, 0xce, - 0x67, 0x70, 0x7a, 0x09, 0x4d, 0xbc, 0x0f, 0xb3, 0x4a, 0xd3, 0xfe, 0x46, 0x2d, 0x5c, 0x87, 0x4b, - 0x9c, 0xd1, 0xcb, 0x19, 0x95, 0x87, 0x70, 0x41, 0xb0, 0x7b, 0x09, 0xd2, 0x5b, 0x81, 0x8b, 0xf1, - 0x81, 0x3a, 0x43, 0x4f, 0x3a, 0xf1, 0x22, 0x63, 0xad, 0xc1, 0x95, 0x98, 0x53, 0x8e, 0xd2, 0x70, - 0x72, 0x6e, 0x5c, 0x1d, 0x8c, 0x47, 0xe9, 0xa5, 0x8c, 0xe8, 0x23, 0x38, 0x67, 0x30, 0x7d, 0x69, - 0xaa, 0xd2, 0x2a, 0x4c, 0x71, 0xc6, 0xa6, 0xea, 0x3c, 0xaf, 0xab, 0xce, 0x63, 0xf3, 0x67, 0x63, - 0x96, 0x08, 0xde, 0xbd, 0x9b, 0xa1, 0x4d, 0xaf, 0xa3, 0x36, 0x2d, 0x51, 0xe2, 0x16, 0xbe, 0x0d, - 0x43, 0x1c, 0x22, 0xda, 0x97, 0xc1, 0x8c, 0x1f, 0x16, 0x38, 0x99, 0x40, 0xb6, 0x7e, 0x00, 0x97, - 0xf8, 0x49, 0x34, 0xbe, 0x4b, 0x34, 0x4f, 0x8b, 0xdf, 0x4f, 0x1c, 0x44, 0xcf, 0x0b, 0xbe, 0x49, - 0xfc, 0x9c, 0xf3, 0xe8, 0x9e, 0x9c, 0xdb, 0x79, 0xfc, 0x4f, 0xf4, 0x18, 0x4b, 0x1e, 0x30, 0x8b, - 0x99, 0x07, 0xcc, 0x6b, 0x70, 0x55, 0x1d, 0x30, 0x93, 0xd5, 0xc8, 0xa9, 0x65, 0x7d, 0x01, 0x17, - 0x78, 0x47, 0xa5, 0x93, 0x9c, 0xd9, 0x8c, 0x0f, 0x12, 0xdd, 0x9c, 0x15, 0xdd, 0x34, 0xb1, 0x73, - 0x3a, 0xf9, 0x77, 0x0b, 0xf2, 0x93, 0xcb, 0x66, 0xfe, 0x8b, 0x3e, 0x71, 0x6f, 0x40, 0x45, 0x09, - 0xc4, 0x6c, 0xd1, 0x8b, 0x1d, 0xb7, 0xd7, 0x61, 0x46, 0x67, 0xe3, 0x36, 0xe8, 0xee, 0x1d, 0xbc, - 0xe4, 0x79, 0x8b, 0x7d, 0x16, 0x08, 0x90, 0xd3, 0xae, 0x9c, 0x21, 0x37, 0xc4, 0xb7, 0x15, 0xa6, - 0x55, 0x87, 0x8b, 0xe9, 0xa1, 0x70, 0x1b, 0xd2, 0x43, 0x9e, 0x7c, 0xcc, 0x3e, 0x61, 0x84, 0x88, - 0xc1, 0xc8, 0x65, 0x2a, 0xbf, 0x63, 0x4e, 0x2e, 0xa9, 0x2c, 0x4b, 0x2e, 0x35, 0x89, 0xfe, 0xb3, - 0xda, 0xe5, 0x7c, 0xf8, 0x55, 0x20, 0xb2, 0x68, 0xb1, 0x66, 0xcb, 0xaa, 0xcf, 0x43, 0xff, 0x62, - 0xcd, 0x16, 0x4f, 0x73, 0x50, 0x13, 0x6c, 0x84, 0x81, 0xcd, 0x60, 0x49, 0x8d, 0xbc, 0x78, 0x02, - 0x8d, 0xfc, 0xc1, 0xc0, 0x48, 0x7f, 0x69, 0xc0, 0x26, 0x35, 0x77, 0xdf, 0x7b, 0xe4, 0x46, 0x07, - 0xaa, 0xc2, 0xaa, 0xf5, 0x25, 0x4c, 0x19, 0xd5, 0x8b, 0xaf, 0xb8, 0xeb, 0x9b, 0x22, 0xa6, 0xcf, - 0x2e, 0x56, 0xd1, 0x89, 0x04, 0x4d, 0x16, 0xe3, 0x7c, 0xbd, 0x69, 0x38, 0x75, 0x7c, 0xb0, 0x6a, - 0xcb, 0x42, 0xeb, 0x9f, 0x0e, 0x68, 0xdc, 0xb5, 0x97, 0x5a, 0x5d, 0x7a, 0x77, 0x07, 0x80, 0xcf, - 0x10, 0xad, 0x73, 0x4c, 0x01, 0x1c, 0x13, 0xbe, 0x19, 0x7c, 0x49, 0xb6, 0x35, 0xa4, 0x93, 0xbe, - 0xe4, 0x12, 0x1e, 0xb5, 0x9c, 0x48, 0x3e, 0x5e, 0x54, 0x1e, 0xb5, 0x82, 0x75, 0x68, 0xeb, 0x48, - 0xe4, 0x07, 0xc9, 0xe7, 0x06, 0x83, 0x78, 0xa7, 0xf4, 0x8a, 0xbc, 0x64, 0x4e, 0xf7, 0xed, 0x74, - 0x2f, 0x0e, 0x9e, 0xc1, 0x0c, 0xa3, 0x75, 0x1f, 0xe3, 0xc1, 0x62, 0xf9, 0xeb, 0x88, 0x7a, 0x7c, - 0x6d, 0x1f, 0xc2, 0x7a, 0x5e, 0xed, 0x52, 0x4f, 0x8c, 0x2c, 0xec, 0xef, 0x31, 0x9f, 0x3a, 0x55, - 0x65, 0x76, 0x36, 0x7f, 0x9c, 0x44, 0xf6, 0xda, 0xb2, 0xd7, 0x6c, 0xfb, 0xae, 0x3a, 0x30, 0xf1, - 0x49, 0x14, 0xb4, 0xea, 0x54, 0xc0, 0x6d, 0x1d, 0xc9, 0x7a, 0xad, 0xab, 0x9f, 0xf6, 0x08, 0x0c, - 0x6c, 0x2f, 0x6e, 0xaf, 0x95, 0x0a, 0xd6, 0x2d, 0x00, 0xad, 0x26, 0x80, 0xa1, 0x8d, 0x4d, 0x7b, - 0xbd, 0xba, 0x56, 0xea, 0x23, 0x33, 0x70, 0xf6, 0xd1, 0xea, 0xc6, 0xd2, 0xe6, 0xa3, 0x5a, 0xbd, - 0xb6, 0x5e, 0xb5, 0xb7, 0x17, 0xab, 0xf6, 0x52, 0xa9, 0x60, 0x7d, 0x05, 0xd3, 0x66, 0x0f, 0x5f, - 0xea, 0x24, 0x8c, 0x60, 0x4a, 0xe9, 0x33, 0x0f, 0x1e, 0x6d, 0x6b, 0xfe, 0x9b, 0xe2, 0xf0, 0x97, - 0xf4, 0x43, 0x12, 0xc7, 0x44, 0xf1, 0x19, 0x69, 0x48, 0xe4, 0x0d, 0xae, 0x16, 0x24, 0xdf, 0xe2, - 0x32, 0xb5, 0xa0, 0x1e, 0xeb, 0x05, 0xb8, 0xf4, 0x7d, 0x0f, 0xa6, 0xcd, 0x5a, 0x4f, 0x6a, 0xa5, - 0x7a, 0x05, 0x1d, 0x5b, 0xb5, 0x87, 0x3a, 0x84, 0xe8, 0xd7, 0x06, 0x62, 0x65, 0xfd, 0x1e, 0x94, - 0x04, 0x56, 0xbc, 0xf3, 0x5e, 0x93, 0x66, 0xc4, 0x42, 0xc6, 0xb3, 0x42, 0xe9, 0x66, 0xed, 0x43, - 0x89, 0xad, 0x98, 0x82, 0x92, 0x57, 0x30, 0x0d, 0x83, 0x6b, 0xf1, 0x75, 0x8e, 0xcd, 0x7f, 0xe0, - 0x7b, 0x95, 0xc8, 0x09, 0x22, 0xe9, 0xf5, 0x35, 0x6a, 0xab, 0xdf, 0xe4, 0x0d, 0x18, 0xba, 0xe7, - 0xb6, 0x22, 0x61, 0x1a, 0x89, 0x37, 0x79, 0xc6, 0x96, 0x17, 0xd8, 0x02, 0xc1, 0xb2, 0xe1, 0xac, - 0x56, 0xe1, 0x29, 0x9a, 0x4a, 0xca, 0x30, 0xbc, 0x41, 0xbf, 0xd6, 0xea, 0x97, 0x3f, 0xad, 0x77, - 0xe0, 0xac, 0xf0, 0xa8, 0xd3, 0xc4, 0x74, 0x55, 0xbc, 0x7e, 0x2e, 0x18, 0x4f, 0x30, 0x05, 0x4b, - 0x2c, 0x62, 0x74, 0x3b, 0xed, 0xe6, 0x0b, 0xd2, 0xb1, 0x8d, 0xe2, 0x94, 0x74, 0xaf, 0xcb, 0x5b, - 0xa0, 0x5e, 0xc3, 0xf9, 0x27, 0x05, 0x28, 0x27, 0xac, 0x0c, 0x8b, 0x07, 0x4e, 0xab, 0x45, 0xbd, - 0x7d, 0x4a, 0xae, 0xc3, 0xc0, 0xf6, 0xe6, 0xf6, 0x96, 0xb0, 0x92, 0x4a, 0x07, 0x00, 0x06, 0x52, - 0x38, 0x36, 0x62, 0x90, 0x87, 0x70, 0x56, 0xfa, 0xcc, 0xaa, 0x22, 0x31, 0x42, 0x97, 0xba, 0x7b, - 0xe0, 0xa6, 0xe9, 0xc8, 0x5b, 0xc2, 0x24, 0xf2, 0xa3, 0x8e, 0x1b, 0xd0, 0x26, 0x5a, 0x7e, 0xe2, - 0xdb, 0x74, 0xad, 0xc4, 0xd6, 0xd1, 0xf8, 0x5b, 0x55, 0xeb, 0x77, 0x0a, 0x30, 0x9b, 0x63, 0x35, - 0x21, 0x6f, 0x18, 0xdd, 0x99, 0xd2, 0xba, 0x23, 0x51, 0x56, 0xfa, 0x44, 0x7f, 0x16, 0x35, 0x47, - 0xe2, 0xfe, 0x53, 0x38, 0x12, 0xaf, 0xf4, 0xc5, 0xce, 0xc3, 0x0b, 0x00, 0x23, 0x12, 0x6e, 0x9d, - 0x81, 0x09, 0x43, 0x6e, 0x96, 0x05, 0xe3, 0x7a, 0xcd, 0x6c, 0x70, 0x16, 0xfd, 0xa6, 0x1a, 0x1c, - 0xf6, 0xb7, 0xf5, 0xdb, 0x05, 0x98, 0xc6, 0x2e, 0xee, 0xbb, 0x6c, 0xe9, 0x8b, 0x25, 0x34, 0x6f, - 0xf4, 0xe4, 0xa2, 0xd1, 0x93, 0x04, 0xae, 0xea, 0xd2, 0xfb, 0xa9, 0x2e, 0x5d, 0xcc, 0xea, 0x12, - 0x4e, 0x6f, 0xd7, 0xf7, 0x8c, 0x9e, 0x68, 0x57, 0x51, 0xbf, 0x5b, 0x80, 0x29, 0xad, 0x4d, 0xaa, - 0xfd, 0x77, 0x8c, 0x26, 0x5d, 0xc8, 0x68, 0x52, 0x4a, 0xc8, 0x0b, 0xa9, 0x16, 0xbd, 0xd2, 0xad, - 0x45, 0x3d, 0x65, 0xfc, 0xdf, 0x0b, 0x30, 0x93, 0x29, 0x03, 0x72, 0x8e, 0xe9, 0xb6, 0x8d, 0x80, - 0x46, 0x42, 0xbc, 0xe2, 0x17, 0x83, 0xaf, 0x86, 0x61, 0x87, 0x06, 0xe2, 0x3b, 0x17, 0xbf, 0xc8, - 0x2b, 0x30, 0xb1, 0x45, 0x03, 0xd7, 0x6f, 0x72, 0x17, 0x73, 0xee, 0xbb, 0x39, 0x61, 0x9b, 0x40, - 0x72, 0x11, 0x46, 0xab, 0xad, 0x7d, 0x3f, 0x70, 0xa3, 0x03, 0x7e, 0x1b, 0x38, 0x6a, 0xc7, 0x00, - 0xc6, 0x7b, 0xc9, 0xdd, 0xe7, 0x97, 0x1a, 0x8c, 0x58, 0xfc, 0x62, 0x8b, 0x8b, 0xb4, 0x16, 0x0e, - 0xf1, 0xc5, 0x45, 0x9a, 0x02, 0xcf, 0xc1, 0xd0, 0xa7, 0x36, 0x4e, 0x02, 0x8c, 0x10, 0x60, 0x8b, - 0x5f, 0x64, 0x12, 0x9d, 0x84, 0xf1, 0x55, 0x02, 0x3a, 0x07, 0xbf, 0x0f, 0xd3, 0x59, 0x72, 0xcd, - 0x9a, 0x42, 0x82, 0xb6, 0xa8, 0x68, 0xbf, 0x80, 0xa9, 0x6a, 0xb3, 0xb9, 0x7e, 0xaf, 0xca, 0x7d, - 0x0e, 0xc4, 0xa8, 0xf2, 0x8f, 0x87, 0xdb, 0xeb, 0x84, 0xca, 0x36, 0xb0, 0xea, 0xb9, 0x91, 0x3d, - 0xb5, 0xfc, 0xb5, 0x1b, 0x46, 0xae, 0xb7, 0xaf, 0x19, 0x15, 0xed, 0x73, 0x1b, 0xf4, 0x59, 0xc6, - 0x14, 0x60, 0xbb, 0xa9, 0xc9, 0x9b, 0xc3, 0x33, 0x98, 0x4f, 0x6b, 0x6c, 0xe3, 0xa5, 0x64, 0xd6, - 0xe4, 0x1b, 0x17, 0xf4, 0x57, 0x1b, 0x4f, 0xac, 0xef, 0xc1, 0x39, 0xbe, 0xa4, 0x75, 0x6b, 0xbc, - 0x68, 0xb6, 0x6e, 0x03, 0xb5, 0xde, 0x95, 0x56, 0x8a, 0xae, 0x2d, 0xb3, 0xc7, 0x8d, 0xb6, 0x60, - 0x95, 0xff, 0xa3, 0x00, 0x73, 0x09, 0xd2, 0xda, 0x73, 0xaf, 0x21, 0xd7, 0xd3, 0xd7, 0x92, 0x4e, - 0xd8, 0xa8, 0x07, 0x70, 0xe3, 0x9f, 0xdb, 0x54, 0x7e, 0xd8, 0xe4, 0x16, 0x00, 0x27, 0xd6, 0xb6, - 0x6f, 0x34, 0x7d, 0x0b, 0x27, 0x1b, 0xdc, 0xc0, 0x35, 0x14, 0xd2, 0x81, 0x2c, 0xb9, 0x8b, 0x6f, - 0xa4, 0x97, 0x6d, 0x18, 0xa3, 0x62, 0x50, 0x41, 0x5e, 0xcf, 0x31, 0x12, 0x67, 0xf1, 0xb7, 0xfe, - 0x5e, 0x3f, 0xcc, 0xea, 0x03, 0xf8, 0x22, 0x7d, 0xdd, 0x82, 0xb1, 0x45, 0xdf, 0x8b, 0xe8, 0xd7, - 0x91, 0x16, 0x95, 0x80, 0xa8, 0x9b, 0x76, 0x55, 0x22, 0x54, 0x47, 0x0e, 0xa8, 0x33, 0x3d, 0xc6, - 0x70, 0x16, 0x8c, 0x11, 0xc9, 0x22, 0x4c, 0x6c, 0xd0, 0x67, 0x29, 0x01, 0xa2, 0xc3, 0xa2, 0x47, - 0x9f, 0xd5, 0x35, 0x21, 0xea, 0x5e, 0x64, 0x06, 0x0d, 0xd9, 0x83, 0x49, 0x39, 0xb9, 0x0c, 0x61, - 0xce, 0xe9, 0xbb, 0x8a, 0x39, 0x9d, 0xf9, 0xab, 0x7d, 0x56, 0x43, 0x8e, 0x0c, 0x13, 0x1c, 0x59, - 0xd7, 0x79, 0x8d, 0xfc, 0x21, 0xba, 0xb9, 0x6d, 0x69, 0x25, 0x86, 0x3b, 0x68, 0xf2, 0x01, 0xba, - 0xce, 0xc2, 0xda, 0x82, 0x72, 0x7a, 0x3c, 0x44, 0x6d, 0x6f, 0xc1, 0x10, 0x87, 0x0a, 0x35, 0x40, - 0x06, 0x9c, 0x51, 0xd8, 0xfc, 0x9c, 0xce, 0xab, 0xb1, 0x05, 0xae, 0xb5, 0x82, 0xb6, 0x13, 0x85, - 0xa3, 0x14, 0xb1, 0xdb, 0xc9, 0xe1, 0x45, 0x4f, 0x5b, 0x39, 0xbc, 0xba, 0x9f, 0x89, 0x7c, 0x5c, - 0xb0, 0x88, 0xe6, 0x27, 0x9d, 0x93, 0x68, 0xd8, 0x0d, 0x18, 0x16, 0xa0, 0x44, 0x28, 0x9c, 0xf8, - 0xf3, 0x93, 0x08, 0xd6, 0xfb, 0x70, 0x1e, 0x6d, 0x61, 0xae, 0xb7, 0xdf, 0xa2, 0x3b, 0xa1, 0xf1, - 0x3c, 0xa0, 0xd7, 0x67, 0xfd, 0x21, 0xcc, 0x65, 0xd1, 0xf6, 0xfc, 0xb2, 0x79, 0x70, 0x8a, 0x3f, - 0x2f, 0xc2, 0xf4, 0x6a, 0xa8, 0x2b, 0x13, 0x2a, 0x40, 0x45, 0x46, 0xd0, 0x04, 0x94, 0xc9, 0x4a, - 0x5f, 0x56, 0x50, 0x84, 0xb7, 0xb4, 0xc7, 0x89, 0xc5, 0x6e, 0xd1, 0x10, 0xd8, 0xb6, 0xa5, 0x9e, - 0x27, 0xbe, 0x06, 0x03, 0x1b, 0x6c, 0xa9, 0xee, 0x17, 0x63, 0xc7, 0x29, 0x18, 0x08, 0x1f, 0x07, - 0xb2, 0x2d, 0x92, 0xfd, 0x20, 0xf7, 0x52, 0x4f, 0x10, 0x07, 0x7a, 0xbf, 0xf6, 0x5f, 0xe9, 0x4b, - 0xbd, 0x46, 0x7c, 0x07, 0xc6, 0xaa, 0xcd, 0x43, 0xee, 0x11, 0xe8, 0x7b, 0x89, 0xcf, 0x52, 0x2b, - 0x59, 0xe9, 0xb3, 0x75, 0x44, 0x76, 0xc2, 0xad, 0xb6, 0xdb, 0xb8, 0x51, 0x65, 0x45, 0x40, 0x58, - 0xe9, 0x43, 0x07, 0xfb, 0x85, 0x11, 0x18, 0xda, 0x76, 0x82, 0x7d, 0x1a, 0x59, 0x5f, 0xc0, 0x9c, - 0x70, 0x52, 0xe1, 0x96, 0x3f, 0x74, 0x65, 0x09, 0x63, 0x3f, 0xa4, 0x6e, 0x8e, 0x25, 0x97, 0x01, - 0x50, 0xcf, 0x5f, 0xf5, 0x9a, 0xf4, 0x6b, 0xe1, 0x25, 0xa7, 0x41, 0xac, 0xb7, 0x61, 0x54, 0x49, - 0x08, 0x95, 0x59, 0x6d, 0xb3, 0x43, 0x69, 0x4d, 0x1b, 0x6f, 0x2e, 0xe5, 0x43, 0xcb, 0xf3, 0x46, - 0xdf, 0x45, 0x4c, 0x13, 0xae, 0xfd, 0xba, 0x30, 0x93, 0x98, 0x04, 0xf1, 0x93, 0x79, 0xa5, 0x7f, - 0x72, 0x37, 0x3e, 0xf5, 0x3b, 0xa9, 0x9e, 0x16, 0x4f, 0xa4, 0x9e, 0x5a, 0xff, 0xa2, 0x88, 0x07, - 0xa7, 0x94, 0x3c, 0x12, 0x36, 0x28, 0xdd, 0x0e, 0xb6, 0x00, 0xa3, 0xd8, 0xfb, 0x25, 0xf9, 0xf4, - 0xab, 0xbb, 0x8f, 0xc5, 0xc8, 0x4f, 0x8f, 0x2a, 0x7d, 0xe8, 0x58, 0x11, 0x93, 0x91, 0x8f, 0x60, - 0x78, 0xd9, 0x6b, 0x22, 0x87, 0xfe, 0x53, 0x70, 0x90, 0x44, 0x6c, 0x4c, 0xb0, 0xc9, 0xdb, 0xec, - 0x13, 0xe6, 0xa6, 0x0b, 0x5b, 0x83, 0xc4, 0x27, 0xb8, 0xc1, 0xbc, 0x13, 0xdc, 0x50, 0xe2, 0x04, - 0x67, 0xc1, 0xe0, 0x66, 0xd0, 0x14, 0x91, 0x48, 0x26, 0xe7, 0xc7, 0x85, 0xe0, 0x10, 0x66, 0xf3, - 0x22, 0xeb, 0x7f, 0x15, 0x60, 0xf6, 0x3e, 0x8d, 0x32, 0xe7, 0x90, 0x21, 0x95, 0xc2, 0x37, 0x96, - 0x4a, 0xf1, 0x45, 0xa4, 0xa2, 0x7a, 0xdd, 0x9f, 0xd7, 0xeb, 0x81, 0xbc, 0x5e, 0x0f, 0xe6, 0xf7, - 0xfa, 0x3e, 0x0c, 0xf1, 0xae, 0xb2, 0x53, 0xea, 0x6a, 0x44, 0x0f, 0xe3, 0x53, 0xaa, 0xee, 0x21, - 0x66, 0xf3, 0x32, 0xa6, 0x48, 0xae, 0x39, 0xa1, 0x7e, 0x4a, 0x15, 0x3f, 0xad, 0x1f, 0xe2, 0xa3, - 0xd1, 0x35, 0xbf, 0xf1, 0x44, 0xb3, 0x76, 0x0e, 0xf3, 0x2f, 0x34, 0x69, 0x1d, 0x67, 0x58, 0xbc, - 0xc4, 0x96, 0x18, 0xe4, 0x0a, 0x8c, 0xad, 0x7a, 0xf7, 0xfc, 0xa0, 0x41, 0x37, 0xbd, 0x16, 0xe7, - 0x3e, 0x62, 0xeb, 0x20, 0x61, 0x05, 0x10, 0x35, 0xc4, 0x47, 0x6b, 0x04, 0x24, 0x8e, 0xd6, 0x0c, - 0xb6, 0x3b, 0x6f, 0xf3, 0x32, 0x61, 0x64, 0x60, 0x7f, 0x77, 0x3b, 0x95, 0xaa, 0xe3, 0x6b, 0x2f, - 0xc4, 0x3d, 0x38, 0x6f, 0xd3, 0x76, 0xcb, 0x61, 0x3a, 0xdd, 0xa1, 0xcf, 0xf1, 0x55, 0x9f, 0xaf, - 0x64, 0x3c, 0xf8, 0x32, 0xfd, 0x05, 0x54, 0x93, 0x8b, 0x5d, 0x9a, 0x7c, 0x08, 0x57, 0xef, 0xd3, - 0xc8, 0x5c, 0x50, 0x63, 0x5b, 0xaa, 0xe8, 0xfc, 0x0a, 0x8c, 0x84, 0xa6, 0x1d, 0xf8, 0xb2, 0xbc, - 0x7e, 0xc8, 0x22, 0xdc, 0xbd, 0x2b, 0x6f, 0x4a, 0x04, 0x1f, 0xf5, 0x97, 0xf5, 0x31, 0x54, 0xf2, - 0xaa, 0x3b, 0x99, 0x3b, 0xa7, 0x0b, 0x57, 0xf2, 0x19, 0x88, 0xe6, 0x2e, 0x83, 0xb4, 0x19, 0x8b, - 0x4f, 0xa8, 0x57, 0x6b, 0x4d, 0x33, 0xb3, 0xf8, 0xc3, 0x5a, 0x90, 0x8e, 0x6d, 0xdf, 0xa0, 0xb9, - 0x75, 0xbc, 0x8e, 0x35, 0x19, 0xc4, 0x72, 0xad, 0xc2, 0x88, 0x84, 0x09, 0xb9, 0xce, 0x66, 0xb6, - 0x54, 0x0a, 0xb4, 0x29, 0x19, 0x28, 0x32, 0xeb, 0x87, 0xf2, 0x6a, 0xc2, 0xa4, 0x38, 0xd9, 0x0b, - 0xc8, 0x93, 0xdc, 0x45, 0x58, 0x3e, 0x9c, 0x37, 0x79, 0xeb, 0x26, 0xe7, 0x92, 0x66, 0x72, 0xe6, - 0x96, 0xe6, 0x2b, 0xa6, 0x09, 0xb4, 0x28, 0xe6, 0x65, 0x0c, 0x22, 0x97, 0x75, 0xc3, 0xf2, 0x78, - 0xfa, 0x49, 0xe5, 0x6d, 0x98, 0xcb, 0xaa, 0x50, 0x3b, 0x07, 0x2a, 0xeb, 0xa5, 0xd0, 0x77, 0x96, - 0xe0, 0xb2, 0x8c, 0x05, 0xe4, 0xfb, 0x51, 0x18, 0x05, 0x4e, 0xbb, 0xd6, 0x08, 0xdc, 0x76, 0x4c, - 0x65, 0xc1, 0x10, 0x87, 0x08, 0x49, 0xf0, 0x6b, 0x1e, 0x8e, 0x23, 0x4a, 0xac, 0x5f, 0x2f, 0x80, - 0x65, 0xf8, 0x20, 0xe1, 0x38, 0x6f, 0x05, 0xfe, 0x53, 0xb7, 0xa9, 0x5d, 0xad, 0xbc, 0x61, 0x98, - 0xf5, 0xf8, 0x93, 0xb8, 0xa4, 0xfb, 0xb3, 0x58, 0x33, 0x6f, 0x27, 0x4c, 0x6d, 0x5c, 0xf1, 0x44, - 0xbf, 0x24, 0x33, 0xe8, 0x8a, 0x32, 0xc1, 0xfd, 0x9f, 0x02, 0x5c, 0xeb, 0xda, 0x06, 0xd1, 0x9f, - 0x3d, 0x28, 0x25, 0xcb, 0xc4, 0x0c, 0xaa, 0x68, 0x3e, 0x09, 0x69, 0x0e, 0xbb, 0x77, 0xb8, 0x8f, - 0xb5, 0xf4, 0xdd, 0x69, 0x2b, 0xce, 0x29, 0x7e, 0xa7, 0x6f, 0x3d, 0x79, 0x0f, 0x60, 0xdb, 0x8f, - 0x9c, 0xd6, 0x22, 0x1a, 0x00, 0xfa, 0x63, 0x7f, 0xf9, 0x88, 0x41, 0xeb, 0xc9, 0x20, 0x05, 0x1a, - 0xb2, 0xf5, 0x09, 0x7e, 0xd7, 0xd9, 0x8d, 0x3e, 0xd9, 0xa7, 0xb6, 0x08, 0xd7, 0x12, 0xf7, 0xe2, - 0x2f, 0xc0, 0x24, 0x82, 0x19, 0x26, 0x7e, 0xa6, 0x7b, 0xdf, 0x0f, 0xfc, 0x4e, 0xfb, 0x17, 0x33, - 0xea, 0x7f, 0x5c, 0xe0, 0x8e, 0x8a, 0x7a, 0xb5, 0x62, 0xa0, 0x17, 0x01, 0x62, 0x68, 0xc2, 0x61, - 0x5d, 0x15, 0xec, 0xde, 0xe1, 0x47, 0x6e, 0xb4, 0x98, 0xef, 0x73, 0x06, 0x1a, 0xd9, 0x2f, 0x76, - 0x24, 0xef, 0xe2, 0x65, 0xb8, 0xaa, 0xfd, 0x64, 0x72, 0x7f, 0x47, 0xda, 0x3f, 0x4e, 0x49, 0x77, - 0x00, 0xd3, 0x6c, 0x05, 0xa8, 0x76, 0xa2, 0x03, 0x3f, 0x70, 0x23, 0xf9, 0xf4, 0x82, 0x6c, 0x89, - 0xb7, 0xdd, 0x9c, 0xea, 0xc3, 0x9f, 0x1f, 0x55, 0xde, 0x3d, 0x4d, 0x94, 0x46, 0xc9, 0x73, 0x5b, - 0xbd, 0x07, 0xb7, 0x66, 0xa1, 0x7f, 0xd1, 0x5e, 0xc3, 0x05, 0xcf, 0x5e, 0x53, 0x0b, 0x9e, 0xbd, - 0x66, 0xfd, 0x65, 0x11, 0x2a, 0x3c, 0xfa, 0x04, 0xfa, 0x50, 0xc4, 0x56, 0x0b, 0xcd, 0x29, 0xe3, - 0xa4, 0x06, 0x86, 0x44, 0x74, 0x89, 0xe2, 0x49, 0xa2, 0x4b, 0xfc, 0x0a, 0xe4, 0x98, 0xac, 0x4e, - 0x60, 0x05, 0x78, 0xfd, 0xf8, 0xa8, 0x72, 0x2d, 0xb6, 0x02, 0xf0, 0xd2, 0x2c, 0x73, 0x40, 0x4e, - 0x15, 0x69, 0xfb, 0xc5, 0xc0, 0x0b, 0xd8, 0x2f, 0x6e, 0xc3, 0x30, 0x1e, 0x66, 0x56, 0xb7, 0x84, - 0x57, 0x23, 0x4e, 0x4f, 0x8c, 0x27, 0x53, 0x77, 0xf5, 0xe0, 0x6d, 0x12, 0xcd, 0xfa, 0x87, 0x45, - 0xb8, 0x92, 0x2f, 0x73, 0xd1, 0xb6, 0x25, 0x80, 0xd8, 0x7b, 0xa3, 0x9b, 0xb7, 0x08, 0x7e, 0x3b, - 0xcf, 0xe8, 0x9e, 0xf2, 0xd6, 0xd2, 0xe8, 0x98, 0xee, 0x23, 0x1f, 0xfa, 0x26, 0xae, 0x0a, 0x8c, - 0xf7, 0xbf, 0x22, 0xf6, 0xa8, 0x00, 0x19, 0xb1, 0x47, 0x05, 0x8c, 0xec, 0xc1, 0xec, 0x56, 0xe0, - 0x3e, 0x75, 0x22, 0xfa, 0x90, 0x3e, 0xe7, 0x0f, 0x61, 0x96, 0xc5, 0xeb, 0x17, 0xfe, 0x7a, 0xfb, - 0xfa, 0xf1, 0x51, 0xe5, 0x95, 0x36, 0x47, 0xc1, 0xf8, 0x52, 0xfc, 0xe9, 0x61, 0x3d, 0xfd, 0x20, - 0x26, 0x8f, 0x91, 0xf5, 0x1f, 0x0a, 0x70, 0x01, 0xd5, 0x72, 0x61, 0x76, 0x95, 0x95, 0xbf, 0x90, - 0xd3, 0xa0, 0xde, 0x41, 0x31, 0x17, 0xd1, 0x69, 0xd0, 0x78, 0x08, 0x6d, 0x1b, 0x68, 0x64, 0x15, - 0xc6, 0xc4, 0x6f, 0xfc, 0xfe, 0xfa, 0xf1, 0x40, 0x30, 0xa3, 0x2d, 0x58, 0x38, 0xd5, 0xb9, 0xa9, - 0x08, 0x27, 0xb6, 0x60, 0x86, 0xef, 0x05, 0x6d, 0x9d, 0xd6, 0xfa, 0x59, 0x11, 0x2e, 0xee, 0xd2, - 0xc0, 0x7d, 0xfc, 0x3c, 0xa7, 0x33, 0x9b, 0x30, 0x2d, 0x41, 0x3c, 0x02, 0x85, 0xf1, 0x89, 0xf1, - 0xe8, 0x83, 0xb2, 0xa9, 0x22, 0x84, 0x85, 0xfc, 0xe2, 0x32, 0x09, 0x4f, 0xe1, 0x0e, 0xf8, 0x16, - 0x8c, 0x24, 0x62, 0xc0, 0xe0, 0xf8, 0xcb, 0x2f, 0x34, 0x1e, 0xaa, 0x95, 0x3e, 0x5b, 0x61, 0x92, - 0xdf, 0xc8, 0xbf, 0xbf, 0x11, 0xa6, 0x8f, 0x5e, 0xf6, 0x4f, 0xfc, 0x60, 0xd9, 0xc7, 0xea, 0x68, - 0xa5, 0x19, 0x1f, 0xec, 0x4a, 0x9f, 0x9d, 0x57, 0xd3, 0xc2, 0x18, 0x8c, 0x56, 0xf1, 0x4e, 0x8a, - 0x9d, 0xdc, 0xff, 0x77, 0x11, 0x2e, 0xcb, 0x47, 0x2d, 0x39, 0x62, 0xfe, 0x0c, 0x66, 0x25, 0xa8, - 0xda, 0x66, 0x0a, 0x03, 0x6d, 0x9a, 0x92, 0xe6, 0x11, 0x40, 0xa5, 0xa4, 0x1d, 0x81, 0x13, 0x0b, - 0x3b, 0x8f, 0xfc, 0xe5, 0x58, 0x3f, 0x3f, 0xca, 0x8a, 0xc8, 0x83, 0x56, 0x48, 0x7d, 0xcd, 0x34, - 0x44, 0x63, 0xac, 0x9f, 0xcd, 0x94, 0xf5, 0x74, 0xe0, 0x9b, 0x5a, 0x4f, 0x57, 0xfa, 0x92, 0xf6, - 0xd3, 0x85, 0x49, 0x18, 0xdf, 0xa0, 0xcf, 0x62, 0xb9, 0xff, 0xed, 0x42, 0x22, 0xd2, 0x00, 0xd3, - 0x30, 0x78, 0xc8, 0x81, 0x42, 0x1c, 0xd4, 0x05, 0x23, 0x0d, 0xe8, 0x1a, 0x06, 0x47, 0x5d, 0x85, - 0x61, 0x7e, 0x51, 0xdb, 0x3c, 0xc1, 0x09, 0x5f, 0xbd, 0x4e, 0xe1, 0x4f, 0x06, 0x9b, 0xfc, 0xb0, - 0x2f, 0xe8, 0xad, 0x87, 0x70, 0x55, 0xf8, 0x2f, 0x9b, 0x83, 0x8f, 0x15, 0x9d, 0x72, 0xfb, 0xb2, - 0x1c, 0xb8, 0x7c, 0x9f, 0x26, 0x97, 0x1e, 0xe3, 0xf5, 0xce, 0xc7, 0x70, 0xc6, 0x80, 0x2b, 0x8e, - 0xa8, 0x95, 0xaa, 0x39, 0xa4, 0x58, 0x27, 0xb1, 0xad, 0x2b, 0x59, 0x55, 0xe8, 0x8d, 0xb5, 0x28, - 0x86, 0xf2, 0x0c, 0xe2, 0x2b, 0xb6, 0xf0, 0x14, 0xab, 0xde, 0x75, 0xed, 0xbb, 0xe6, 0x2b, 0x1e, - 0x8f, 0xf5, 0x26, 0x77, 0x5e, 0x55, 0x6a, 0x4d, 0x18, 0x77, 0x01, 0xd6, 0x24, 0x8c, 0xcb, 0xa2, - 0x16, 0x0d, 0x43, 0xeb, 0x27, 0x83, 0x60, 0x09, 0xc1, 0x66, 0xdd, 0x3e, 0x4b, 0x79, 0xec, 0xa5, - 0x1a, 0x2b, 0x36, 0xaa, 0x73, 0x7a, 0x04, 0xc9, 0xb8, 0x94, 0xcf, 0x3c, 0xd4, 0xf3, 0x1a, 0x31, - 0xd4, 0x98, 0x79, 0xa9, 0xde, 0x7f, 0x99, 0xb3, 0x4c, 0xf2, 0x8f, 0xed, 0xd5, 0xe3, 0xa3, 0xca, - 0xd5, 0x9c, 0x65, 0xd2, 0xe0, 0x9b, 0xbd, 0x64, 0xda, 0xe6, 0x95, 0x48, 0xff, 0x8b, 0x5c, 0x89, - 0xb0, 0x2f, 0x52, 0xbf, 0x14, 0xd9, 0x31, 0x65, 0x29, 0xbe, 0x47, 0x79, 0xa5, 0xad, 0x17, 0x89, - 0x07, 0xff, 0x1a, 0xc4, 0xe0, 0x6a, 0xb0, 0x21, 0x2e, 0x94, 0x34, 0x9b, 0xe5, 0xe2, 0x01, 0x6d, - 0x3c, 0x11, 0xb6, 0x62, 0x79, 0xa1, 0x9b, 0x65, 0x33, 0xe7, 0xd1, 0x84, 0xf9, 0x77, 0xce, 0x0b, - 0xea, 0x0d, 0x46, 0xaa, 0x07, 0x2c, 0x48, 0xb2, 0x25, 0x3f, 0x86, 0x29, 0x35, 0xd4, 0x09, 0xf7, - 0xa3, 0xb1, 0xf9, 0x57, 0xe2, 0xc0, 0x93, 0x87, 0x8f, 0x9d, 0x9b, 0x4f, 0xef, 0xdc, 0xcc, 0xc0, - 0xe5, 0xef, 0xe0, 0x1b, 0xb2, 0x40, 0xf3, 0x3d, 0xd2, 0x2f, 0xba, 0xb2, 0x08, 0xb5, 0xeb, 0xec, - 0x7f, 0xa0, 0x9c, 0xe5, 0x99, 0xbe, 0xe0, 0xb6, 0xa8, 0x78, 0xf5, 0x22, 0x67, 0x5f, 0xce, 0x55, - 0x5c, 0xe1, 0x5b, 0xbe, 0x8a, 0xfb, 0x83, 0xa2, 0x7c, 0x22, 0x90, 0xbe, 0x0d, 0x3d, 0xf5, 0x8d, - 0x5c, 0x66, 0x0f, 0x4e, 0xb4, 0x99, 0x66, 0x36, 0x8e, 0x2c, 0xc8, 0xfb, 0x4c, 0x15, 0x1b, 0x6a, - 0x52, 0xdd, 0x0d, 0xc4, 0x05, 0xc6, 0x15, 0x27, 0xaa, 0x2e, 0x1a, 0x55, 0xf2, 0xb2, 0xac, 0xff, - 0x9b, 0x5f, 0x96, 0xfd, 0xeb, 0x51, 0x38, 0xbb, 0xe5, 0xec, 0xbb, 0x1e, 0x5b, 0xb4, 0x6d, 0x1a, - 0xfa, 0x9d, 0xa0, 0x41, 0x49, 0x15, 0x26, 0x4d, 0xff, 0xcf, 0x1e, 0xde, 0xad, 0x6c, 0x5f, 0x32, - 0x61, 0x64, 0x1e, 0x46, 0xd5, 0x9b, 0x53, 0xb1, 0x99, 0x64, 0xbc, 0x45, 0x5d, 0xe9, 0xb3, 0x63, - 0x34, 0xf2, 0x9e, 0x71, 0xbf, 0x73, 0x46, 0x3d, 0x9f, 0x46, 0xdc, 0x79, 0xee, 0xa0, 0xe7, 0xf9, - 0x4d, 0x73, 0x43, 0xe4, 0x97, 0x18, 0x3f, 0x4c, 0x5d, 0xf9, 0x0c, 0x1a, 0x2d, 0x4e, 0xd9, 0xbd, - 0x50, 0x17, 0xc8, 0x0d, 0xe7, 0x9c, 0x71, 0x19, 0xf4, 0x05, 0x8c, 0x3d, 0xec, 0xec, 0x51, 0x79, - 0xb9, 0x35, 0x24, 0xf6, 0xc7, 0xa4, 0x57, 0xb3, 0x28, 0xdf, 0xbd, 0xcb, 0xc7, 0xe0, 0x49, 0x67, - 0x8f, 0xa6, 0xe3, 0x84, 0xb3, 0x85, 0x49, 0x63, 0x46, 0x0e, 0xa0, 0x94, 0x74, 0x40, 0x16, 0xd1, - 0xd4, 0xba, 0xb8, 0x4d, 0x63, 0x28, 0x0f, 0x2d, 0x1a, 0x39, 0x77, 0x8b, 0x34, 0x2a, 0x49, 0x71, - 0x25, 0xbf, 0x0a, 0x33, 0x99, 0x56, 0x47, 0xf5, 0x84, 0xaa, 0xbb, 0x41, 0x13, 0x17, 0xf5, 0x84, - 0xd4, 0xe4, 0x7b, 0x2d, 0xa3, 0xe6, 0xec, 0x5a, 0x48, 0x13, 0xce, 0x24, 0x1c, 0x6b, 0x45, 0xca, - 0x85, 0x7c, 0x57, 0x5d, 0xdc, 0x98, 0x64, 0xd4, 0xd2, 0xcc, 0xba, 0x92, 0x2c, 0xc9, 0x1a, 0x8c, - 0xaa, 0xe3, 0x3e, 0xbe, 0xce, 0xca, 0x36, 0x6d, 0x94, 0x8f, 0x8f, 0x2a, 0xd3, 0xb1, 0x69, 0xc3, - 0xe0, 0x19, 0x33, 0x20, 0xbf, 0x06, 0x57, 0xd5, 0x14, 0xdd, 0x0c, 0xb2, 0x8d, 0x40, 0x22, 0xda, - 0xf9, 0x8d, 0xe4, 0x0c, 0xcf, 0xc3, 0xdf, 0xbd, 0xb3, 0x50, 0x2c, 0x17, 0x56, 0xfa, 0xec, 0xde, - 0xac, 0xc9, 0x4f, 0x0a, 0x70, 0x2e, 0xa7, 0xd6, 0x71, 0xac, 0xb5, 0xa7, 0x65, 0x0e, 0x95, 0x7b, - 0x7c, 0x36, 0xe4, 0x36, 0xe3, 0xe7, 0x75, 0xd2, 0x44, 0x67, 0xf4, 0x3b, 0xa7, 0x26, 0xf2, 0x26, - 0x0c, 0xe1, 0x19, 0x39, 0x2c, 0x4f, 0xa0, 0x16, 0x89, 0x11, 0x6c, 0xf0, 0x24, 0xad, 0xef, 0x1b, - 0x02, 0x87, 0xac, 0x30, 0x6d, 0x0c, 0xf7, 0x2d, 0xa9, 0x3d, 0x89, 0x78, 0x57, 0x42, 0xa3, 0xe7, - 0x45, 0x32, 0xca, 0x85, 0x11, 0xd6, 0xde, 0x24, 0x5b, 0x00, 0x18, 0x09, 0xc4, 0xaa, 0xf4, 0x60, - 0x60, 0x64, 0xa0, 0x34, 0xc8, 0x3f, 0x1c, 0xe9, 0xb1, 0xfd, 0x9b, 0x23, 0xfc, 0x79, 0xe7, 0x8e, - 0xe7, 0x3e, 0x76, 0xe3, 0x05, 0x4c, 0xb7, 0xae, 0xc5, 0xf9, 0x65, 0x84, 0xee, 0x9b, 0x93, 0x49, - 0x46, 0x19, 0xe2, 0x8a, 0x3d, 0x0d, 0x71, 0x77, 0xb5, 0x2b, 0x2b, 0x2d, 0x44, 0x24, 0xd7, 0x71, - 0x4c, 0xc3, 0x57, 0x7c, 0x97, 0xf5, 0x15, 0x0c, 0x61, 0x54, 0x47, 0x7e, 0x1f, 0x38, 0x36, 0x7f, - 0x53, 0x2c, 0xdb, 0x5d, 0x9a, 0xcf, 0xc3, 0x40, 0x8a, 0x27, 0xdb, 0x5c, 0xe2, 0x08, 0x30, 0x24, - 0x8e, 0x10, 0xb2, 0x0d, 0x53, 0x5b, 0x01, 0x6d, 0x0a, 0xbf, 0xe1, 0x76, 0x20, 0x8c, 0x13, 0xdc, - 0xec, 0x81, 0x5b, 0x7e, 0x5b, 0x16, 0xd7, 0xa9, 0x2a, 0xd7, 0x37, 0xd4, 0x0c, 0x72, 0xb2, 0x0c, - 0x93, 0x35, 0xea, 0x04, 0x8d, 0x83, 0x87, 0xf4, 0x39, 0x53, 0x77, 0x8c, 0x94, 0x0a, 0x21, 0x96, - 0xb0, 0xfe, 0x62, 0x91, 0xee, 0xe3, 0x61, 0x12, 0x91, 0x4f, 0x60, 0xa8, 0xe6, 0x07, 0xd1, 0xc2, - 0x73, 0xb1, 0xa8, 0xc9, 0x1b, 0x23, 0x0e, 0x5c, 0x38, 0x2f, 0xd3, 0x4a, 0x84, 0x7e, 0x10, 0xd5, - 0xf7, 0x8c, 0x90, 0x48, 0x1c, 0x85, 0x3c, 0x87, 0x69, 0x73, 0x41, 0x11, 0xee, 0xac, 0x23, 0x42, - 0xcd, 0xca, 0x5a, 0xb5, 0x38, 0xca, 0xc2, 0x75, 0xc1, 0xfd, 0x4a, 0x72, 0xd9, 0x7a, 0x8c, 0xe5, - 0x7a, 0x94, 0xa2, 0x2c, 0x7a, 0xb2, 0x8e, 0xf9, 0x38, 0x78, 0x8f, 0xaa, 0x21, 0x77, 0x83, 0x1d, - 0x8d, 0x83, 0x6e, 0x75, 0x70, 0x51, 0x42, 0x49, 0x38, 0x61, 0x32, 0x89, 0x8b, 0x9d, 0x22, 0x25, - 0x5b, 0x70, 0x76, 0x27, 0xa4, 0x5b, 0x01, 0x7d, 0xea, 0xd2, 0x67, 0x92, 0x1f, 0xc4, 0x11, 0x8a, - 0x18, 0xbf, 0x36, 0x2f, 0xcd, 0x62, 0x98, 0x26, 0x26, 0xef, 0x01, 0x6c, 0xb9, 0x9e, 0x47, 0x9b, - 0x78, 0xed, 0x38, 0x86, 0xac, 0xd0, 0xa4, 0xda, 0x46, 0x68, 0xdd, 0xf7, 0x5a, 0xba, 0x48, 0x35, - 0x64, 0xb2, 0x00, 0x13, 0xab, 0x5e, 0xa3, 0xd5, 0x11, 0xee, 0x01, 0x21, 0x2e, 0x28, 0x22, 0x72, - 0x9a, 0xcb, 0x0b, 0xea, 0xa9, 0x8f, 0xdc, 0x24, 0x21, 0x0f, 0x81, 0x08, 0x80, 0x98, 0xb5, 0xce, - 0x5e, 0x8b, 0x8a, 0xcf, 0x1d, 0x4d, 0x25, 0x92, 0x11, 0x4e, 0x77, 0x23, 0x20, 0x59, 0x8a, 0x6c, - 0xee, 0x3d, 0x18, 0xd3, 0xe6, 0x7c, 0x46, 0x0c, 0x82, 0x69, 0x3d, 0x06, 0xc1, 0xa8, 0x1e, 0x6b, - 0xe0, 0x9f, 0x14, 0xe0, 0x62, 0xf6, 0xb7, 0x24, 0x14, 0xb0, 0x4d, 0x18, 0x55, 0x40, 0xf5, 0xea, - 0x44, 0xaa, 0xfe, 0x09, 0x0d, 0x88, 0x7f, 0xd0, 0x72, 0xe5, 0xd1, 0x7b, 0x1f, 0xf3, 0x78, 0x01, - 0x7b, 0xfc, 0xdf, 0x19, 0x81, 0x69, 0xf4, 0xae, 0x4e, 0xae, 0x53, 0x1f, 0x63, 0x2c, 0x11, 0x84, - 0x69, 0xe6, 0x65, 0x61, 0x69, 0xe2, 0xf0, 0x64, 0xe0, 0x2b, 0x83, 0x80, 0xbc, 0xad, 0xfb, 0x44, - 0x14, 0xb5, 0xfc, 0x1f, 0x12, 0xa8, 0x77, 0x21, 0x76, 0x96, 0x78, 0xc3, 0xb8, 0x92, 0x3f, 0xf1, - 0xa2, 0x37, 0x70, 0xd2, 0x45, 0x6f, 0x47, 0x2d, 0x7a, 0x3c, 0x46, 0xc5, 0xeb, 0xda, 0xa2, 0xf7, - 0xf2, 0x57, 0xbb, 0xa1, 0x97, 0xbd, 0xda, 0x0d, 0x7f, 0xb3, 0xd5, 0x6e, 0xe4, 0x05, 0x57, 0xbb, - 0x7b, 0x30, 0xb9, 0x41, 0x69, 0x53, 0xbb, 0x28, 0x19, 0x8d, 0x77, 0x4f, 0x8f, 0xa2, 0x09, 0x2c, - 0xeb, 0xb6, 0x24, 0x41, 0x95, 0xbb, 0x6a, 0xc2, 0x5f, 0xcf, 0xaa, 0x39, 0xf6, 0x92, 0x57, 0xcd, - 0xf1, 0x6f, 0xb2, 0x6a, 0xa6, 0x96, 0xbe, 0x89, 0x53, 0x2f, 0x7d, 0xdf, 0x64, 0xb5, 0xfa, 0x08, - 0x5d, 0x0a, 0x6b, 0xb5, 0x15, 0xe1, 0x3d, 0xa2, 0xb9, 0x6b, 0xac, 0xf8, 0xa1, 0xf4, 0xb8, 0xc6, - 0xbf, 0x19, 0x6c, 0xcb, 0x0f, 0xe4, 0x95, 0x37, 0xfe, 0x6d, 0x2d, 0xa0, 0x23, 0xa1, 0x4e, 0xaf, - 0xdc, 0xf5, 0x87, 0xc5, 0x93, 0x3d, 0xb1, 0xc6, 0x25, 0x8f, 0x51, 0xb6, 0x2c, 0xb7, 0xfe, 0xbc, - 0xc0, 0x2f, 0x25, 0xff, 0x7f, 0x5c, 0x2a, 0xbf, 0xc9, 0x45, 0xe1, 0x6f, 0xc4, 0x4f, 0xf9, 0x45, - 0xd8, 0x81, 0xc0, 0x69, 0x3c, 0x89, 0x6f, 0x6a, 0x7f, 0xc0, 0xbe, 0x73, 0xbd, 0x00, 0x03, 0xab, - 0xc6, 0x67, 0x45, 0xb3, 0x70, 0xf7, 0x8e, 0x5c, 0x00, 0x44, 0x44, 0x03, 0x0e, 0x36, 0x17, 0x00, - 0x9d, 0x00, 0x7d, 0xe5, 0xce, 0x58, 0x36, 0x7f, 0x89, 0x9e, 0xd9, 0x82, 0x77, 0xd2, 0x6f, 0xa9, - 0xf1, 0x30, 0x12, 0xbf, 0xa5, 0xd6, 0xc5, 0x18, 0xbf, 0xaa, 0xde, 0x81, 0x0b, 0x36, 0x3d, 0xf4, - 0x9f, 0xd2, 0x97, 0xcb, 0xf6, 0x4b, 0x38, 0x6f, 0x32, 0xe4, 0xaf, 0x6e, 0x78, 0x40, 0xf4, 0x8f, - 0xb2, 0xc3, 0xa8, 0x0b, 0x02, 0x1e, 0x46, 0x9d, 0x47, 0x63, 0x66, 0x7f, 0xea, 0xfb, 0x06, 0x96, - 0x59, 0x3e, 0x5c, 0x34, 0x99, 0x57, 0x9b, 0x4d, 0xcc, 0xb6, 0xd8, 0x70, 0xdb, 0x8e, 0x17, 0x91, - 0x4d, 0x18, 0xd3, 0x7e, 0x26, 0x4c, 0x05, 0x5a, 0x89, 0xd0, 0x69, 0x62, 0x80, 0x11, 0x82, 0x33, - 0x06, 0x5b, 0x14, 0x2a, 0x49, 0xf1, 0x30, 0x91, 0xe9, 0x75, 0x2e, 0xc0, 0x84, 0xf6, 0x53, 0x99, - 0x2c, 0xf1, 0xe3, 0xd7, 0x6a, 0x30, 0x05, 0x66, 0x92, 0x58, 0x0d, 0x98, 0xcb, 0x12, 0x1a, 0x46, - 0x67, 0x7a, 0x4e, 0x96, 0xe3, 0x38, 0x4f, 0xbd, 0xbd, 0xed, 0xce, 0xe4, 0xc5, 0x78, 0xb2, 0xfe, - 0xfe, 0x00, 0x5c, 0x10, 0x83, 0xf1, 0x32, 0x47, 0x9c, 0xfc, 0x10, 0xc6, 0xb4, 0x31, 0x16, 0x42, - 0xbf, 0x22, 0x43, 0x6f, 0xe6, 0xcd, 0x05, 0x6e, 0xd2, 0xe8, 0x20, 0xa0, 0x9e, 0x18, 0xee, 0x95, - 0x3e, 0x5b, 0x67, 0x49, 0x5a, 0x30, 0x69, 0x0e, 0xb4, 0xb0, 0xea, 0x5c, 0xcb, 0xac, 0xc4, 0x44, - 0x95, 0x81, 0x9c, 0x9b, 0xf5, 0xcc, 0xe1, 0x5e, 0xe9, 0xb3, 0x13, 0xbc, 0xc9, 0xd7, 0x70, 0x36, - 0x35, 0xca, 0xc2, 0x58, 0xf7, 0x5a, 0x66, 0x85, 0x29, 0x6c, 0x6e, 0x8e, 0x0d, 0x10, 0x9c, 0x5b, - 0x6d, 0xba, 0x12, 0xd2, 0x84, 0x71, 0x7d, 0xe0, 0x85, 0xd9, 0xe9, 0x6a, 0x17, 0x51, 0x72, 0x44, - 0xae, 0xdc, 0x09, 0x59, 0xe2, 0xd8, 0x3f, 0x37, 0x4d, 0xcc, 0x06, 0xf2, 0x08, 0x0c, 0xf1, 0xdf, - 0x6c, 0x09, 0xd8, 0x0a, 0x68, 0x48, 0xbd, 0x06, 0x35, 0x1c, 0xb4, 0xbf, 0xe1, 0x12, 0xf0, 0xef, - 0x0b, 0x50, 0xce, 0xe2, 0x5b, 0xa3, 0x5e, 0x93, 0x6c, 0x41, 0x29, 0x59, 0x91, 0x98, 0xd5, 0x96, - 0x8a, 0x95, 0x9b, 0xdb, 0xa4, 0x95, 0x3e, 0x3b, 0x45, 0x4d, 0x36, 0xe0, 0xac, 0x06, 0x13, 0xc6, - 0xd5, 0xe2, 0x49, 0x8c, 0xab, 0x6c, 0x14, 0x52, 0xa4, 0xba, 0x6d, 0x7a, 0x05, 0x77, 0xc6, 0x25, - 0xff, 0xd0, 0x71, 0x3d, 0xa6, 0xe8, 0x6a, 0xa1, 0x9e, 0x20, 0x86, 0x0a, 0xd9, 0x70, 0x6b, 0x2b, - 0x42, 0xe5, 0x83, 0x12, 0x85, 0x62, 0x7d, 0x88, 0x2b, 0xb8, 0xb0, 0xd1, 0xf1, 0xe7, 0xa9, 0x8a, - 0xd9, 0x15, 0x18, 0xdc, 0x5e, 0xab, 0x2d, 0x56, 0xc5, 0x63, 0x57, 0x1e, 0x22, 0xa1, 0x15, 0xd6, - 0x1b, 0x8e, 0xcd, 0x0b, 0xac, 0x0f, 0x80, 0xdc, 0xa7, 0x91, 0x08, 0xd6, 0xae, 0xe8, 0x5e, 0x85, - 0x61, 0x01, 0x12, 0x94, 0xe8, 0x1a, 0xd7, 0x12, 0x58, 0xb2, 0xcc, 0xda, 0x92, 0xe7, 0x84, 0x16, - 0x75, 0x42, 0x6d, 0x63, 0x7e, 0x17, 0x46, 0x02, 0x01, 0x13, 0xfb, 0xf2, 0xa4, 0x4a, 0x6b, 0x81, - 0x60, 0x6e, 0xcf, 0x96, 0x38, 0xb6, 0xfa, 0xcb, 0x5a, 0xc3, 0x70, 0x26, 0x9b, 0xab, 0x4b, 0x8b, - 0x4c, 0xaa, 0x42, 0x58, 0x72, 0x38, 0x6e, 0xa1, 0x0f, 0x79, 0x44, 0xf5, 0xa7, 0xae, 0x28, 0x1a, - 0xfc, 0xc8, 0x45, 0x10, 0x1f, 0x0d, 0xc5, 0xba, 0xab, 0x82, 0xa3, 0x64, 0x70, 0xcb, 0x4b, 0xcf, - 0xb0, 0x81, 0x61, 0x5f, 0xee, 0xa3, 0xbb, 0xcc, 0xcb, 0x68, 0x84, 0x03, 0x73, 0x7c, 0x9b, 0x67, - 0xbd, 0x12, 0x09, 0xe8, 0x7c, 0xb5, 0x34, 0x2e, 0xc2, 0xa8, 0x82, 0xa9, 0xbb, 0x2f, 0x2e, 0x2b, - 0x03, 0x7f, 0xf7, 0x2e, 0x7f, 0x15, 0xdc, 0x50, 0x0c, 0x62, 0x3a, 0x56, 0x05, 0xff, 0xee, 0xbe, - 0xe5, 0x2a, 0x42, 0x1a, 0x44, 0xdf, 0x6a, 0x15, 0x71, 0x5c, 0xa0, 0xd3, 0x54, 0x61, 0xe0, 0xef, - 0xce, 0x9f, 0x44, 0x50, 0xdf, 0x72, 0x15, 0x4c, 0x50, 0xdf, 0x5e, 0x15, 0x54, 0x06, 0x50, 0xe2, - 0x93, 0x34, 0x55, 0xc9, 0x72, 0xba, 0x12, 0x69, 0xb8, 0x4e, 0x50, 0x74, 0x1d, 0x0f, 0x0a, 0x17, - 0xb9, 0xb0, 0x7e, 0x01, 0xd5, 0x30, 0x81, 0x7d, 0xbb, 0xd5, 0xfc, 0xa3, 0x02, 0x0f, 0xe7, 0x54, - 0xdb, 0xd4, 0x52, 0x3f, 0x7a, 0x8f, 0x7d, 0xed, 0x6a, 0x5e, 0xfb, 0xda, 0x1f, 0xba, 0x5e, 0x53, - 0xbf, 0x9a, 0x77, 0x3a, 0xd1, 0x81, 0x0a, 0x77, 0xfc, 0xc4, 0xf5, 0x9a, 0x76, 0x12, 0x9b, 0xbc, - 0x07, 0x13, 0x1a, 0x48, 0x69, 0x6b, 0x3c, 0x67, 0x84, 0x4e, 0xee, 0x36, 0x6d, 0x13, 0xd3, 0xfa, - 0xab, 0x02, 0x4c, 0x65, 0x24, 0x25, 0x46, 0x63, 0x06, 0x9e, 0x82, 0xd4, 0x42, 0x25, 0x12, 0x26, - 0x61, 0x64, 0x09, 0x63, 0x93, 0x54, 0x88, 0x18, 0x2d, 0x5f, 0x4b, 0xa0, 0x5c, 0xd4, 0x52, 0x77, - 0x65, 0x27, 0x4d, 0xd6, 0xd1, 0x49, 0x08, 0x10, 0xb7, 0x44, 0x98, 0x8d, 0x6b, 0x4c, 0xa5, 0xd5, - 0xb2, 0x2f, 0xbf, 0x94, 0xf4, 0xcf, 0x5a, 0x35, 0xd6, 0x6f, 0x14, 0xe1, 0x5c, 0x46, 0xff, 0x6b, - 0x34, 0xfa, 0xeb, 0x10, 0x41, 0x22, 0x07, 0x76, 0xff, 0x2f, 0x28, 0x07, 0xb6, 0xf5, 0x9f, 0x8b, - 0x70, 0x6e, 0xa7, 0x1d, 0xe2, 0x0b, 0xab, 0x55, 0xef, 0x29, 0xf5, 0x22, 0x3f, 0x78, 0x8e, 0xaf, - 0x42, 0xc8, 0xdb, 0x30, 0xb8, 0x42, 0x5b, 0x2d, 0x5f, 0xcc, 0xff, 0x4b, 0xd2, 0x3b, 0x22, 0x89, - 0x8d, 0x48, 0x2b, 0x7d, 0x36, 0xc7, 0x26, 0xef, 0xc1, 0xe8, 0x0a, 0x75, 0x82, 0x68, 0x8f, 0x3a, - 0xf2, 0xc8, 0x22, 0x33, 0x59, 0x68, 0x24, 0x02, 0x61, 0xa5, 0xcf, 0x8e, 0xb1, 0xc9, 0x3c, 0x3b, - 0xcd, 0x7b, 0xfb, 0xea, 0x35, 0x79, 0x4e, 0x85, 0x0c, 0x67, 0xa5, 0xcf, 0x46, 0x5c, 0xb2, 0x0e, - 0x13, 0xd5, 0x7d, 0xea, 0x45, 0xeb, 0x34, 0x72, 0x9a, 0x4e, 0xe4, 0x08, 0xd5, 0xf6, 0xd5, 0x3c, - 0x62, 0x03, 0x79, 0xa5, 0xcf, 0x36, 0xa9, 0xc9, 0x07, 0x30, 0x7c, 0xdf, 0xf7, 0x9b, 0x7b, 0xcf, - 0xa9, 0x50, 0x57, 0x2b, 0x79, 0x8c, 0x04, 0xda, 0x4a, 0x9f, 0x2d, 0x29, 0x16, 0x06, 0xa1, 0x7f, - 0x3d, 0xdc, 0xb7, 0x8e, 0x0a, 0x50, 0x5e, 0xf2, 0x9f, 0x79, 0x99, 0x52, 0xfd, 0x9e, 0x29, 0x55, - 0xc9, 0x3e, 0x03, 0x3f, 0x21, 0xd7, 0xb7, 0x60, 0x60, 0xcb, 0xf5, 0xf6, 0x13, 0xaa, 0x60, 0x06, - 0x1d, 0xc3, 0x42, 0xf1, 0xb8, 0xde, 0x3e, 0x59, 0x93, 0x3a, 0xb8, 0xb0, 0x35, 0xf6, 0x1b, 0x8a, - 0x7f, 0x06, 0xb5, 0x8e, 0x1d, 0xeb, 0xda, 0xfc, 0xb7, 0xec, 0xe0, 0x1b, 0x30, 0x9b, 0x53, 0xaf, - 0x78, 0x1e, 0xce, 0xfa, 0x36, 0x80, 0x8a, 0xcd, 0xeb, 0x30, 0x93, 0x39, 0x7e, 0x29, 0xc4, 0x7f, - 0x9e, 0x35, 0x11, 0x79, 0xcf, 0xcb, 0x30, 0x2c, 0xb3, 0x25, 0x71, 0xdb, 0x8f, 0xfc, 0x89, 0x0f, - 0xa4, 0xe4, 0x87, 0x2a, 0x03, 0x7b, 0xc8, 0xef, 0x71, 0x57, 0x0b, 0xa4, 0xc4, 0x3f, 0xa7, 0xf7, - 0xbf, 0xc1, 0x47, 0xa3, 0x78, 0xb1, 0x3a, 0x57, 0xfc, 0x30, 0xf2, 0x94, 0xe7, 0xad, 0xad, 0x7e, - 0x93, 0x1b, 0x50, 0x92, 0xe9, 0x1c, 0x44, 0xde, 0x18, 0x91, 0xb1, 0xdb, 0x4e, 0xc1, 0xc9, 0xbb, - 0x30, 0x9b, 0x84, 0xc9, 0x5e, 0xf2, 0x17, 0x6e, 0x79, 0xc5, 0xd6, 0x9f, 0x15, 0x31, 0xd6, 0x75, - 0x97, 0x79, 0xcd, 0xa4, 0xbb, 0x59, 0x13, 0xd2, 0x2a, 0x6e, 0xd6, 0xc8, 0x45, 0x18, 0xdd, 0xac, - 0x19, 0x29, 0xa7, 0xec, 0x18, 0xc0, 0x9a, 0xcd, 0xba, 0x50, 0x0d, 0x1a, 0x07, 0x6e, 0x44, 0x1b, - 0x51, 0x27, 0x10, 0xab, 0xb0, 0x9d, 0x82, 0x13, 0x0b, 0xc6, 0xef, 0xb7, 0xdc, 0xbd, 0x86, 0x64, - 0xc6, 0x45, 0x60, 0xc0, 0xc8, 0x6b, 0x30, 0xb9, 0xea, 0x85, 0x91, 0xd3, 0x6a, 0xad, 0xd3, 0xe8, - 0xc0, 0x6f, 0x8a, 0xa4, 0x99, 0x76, 0x02, 0xca, 0xea, 0x5d, 0xf4, 0xbd, 0xc8, 0x71, 0x3d, 0x1a, - 0xd8, 0x1d, 0x2f, 0x72, 0x0f, 0xa9, 0xe8, 0x7b, 0x0a, 0x4e, 0xde, 0x82, 0x19, 0x05, 0xdb, 0x0c, - 0x1a, 0x07, 0x34, 0x8c, 0x02, 0x4c, 0x44, 0x87, 0x01, 0x7f, 0xec, 0xec, 0x42, 0xac, 0xa1, 0xe5, - 0x77, 0x9a, 0xcb, 0xde, 0x53, 0x37, 0xf0, 0x3d, 0xcc, 0x4d, 0x31, 0x22, 0x6a, 0x48, 0xc0, 0xad, - 0xdf, 0x1f, 0xc9, 0xfc, 0x6c, 0xbf, 0xc9, 0x1c, 0xfc, 0x1c, 0xc6, 0x17, 0x9d, 0xb6, 0xb3, 0xe7, - 0xb6, 0xdc, 0xc8, 0x55, 0x19, 0xbb, 0xde, 0xee, 0xf1, 0xcd, 0xcb, 0x04, 0x1f, 0xb4, 0xa9, 0x13, - 0xdb, 0x06, 0xab, 0xb9, 0xbf, 0x1c, 0x82, 0x99, 0x4c, 0x3c, 0x72, 0x5d, 0xa4, 0xf6, 0x52, 0xeb, - 0xaa, 0x48, 0x76, 0x65, 0x27, 0xc1, 0x6c, 0x2c, 0x11, 0xb4, 0xd8, 0xa2, 0x8e, 0xd7, 0x11, 0xa9, - 0xae, 0x6c, 0x03, 0xc6, 0xc6, 0x92, 0xe9, 0x0d, 0x1a, 0x33, 0x74, 0x9c, 0xb6, 0x13, 0x50, 0x72, - 0x05, 0xc6, 0x18, 0x44, 0xb2, 0x1a, 0xe0, 0x4f, 0xfc, 0x34, 0x10, 0xe3, 0xb4, 0xe1, 0x37, 0xa9, - 0xc6, 0x69, 0x90, 0x73, 0x32, 0xa1, 0x8c, 0x13, 0x83, 0x48, 0x4e, 0x43, 0x9c, 0x93, 0x06, 0x22, - 0xaf, 0xc0, 0x44, 0xb5, 0xdd, 0xd6, 0x18, 0x61, 0x8e, 0x2b, 0xdb, 0x04, 0x92, 0xcb, 0x00, 0xd5, - 0x76, 0x5b, 0xb2, 0xc1, 0xfc, 0x55, 0xb6, 0x06, 0x21, 0x37, 0xe3, 0x70, 0x65, 0x1a, 0x2b, 0xbc, - 0x4e, 0xb0, 0x33, 0x4a, 0x98, 0x5c, 0x55, 0x6c, 0x27, 0xc1, 0x14, 0xb8, 0x5c, 0x13, 0x60, 0xf2, - 0x21, 0x9c, 0x4f, 0xf8, 0x5d, 0x68, 0x15, 0xa0, 0xa9, 0xdf, 0xce, 0x47, 0x20, 0xef, 0xc0, 0xb9, - 0x44, 0xa1, 0xac, 0x0e, 0xad, 0xfa, 0x76, 0x4e, 0x29, 0x79, 0x1f, 0xca, 0x89, 0x67, 0xdb, 0x71, - 0xa5, 0x68, 0xc1, 0xb7, 0x73, 0xcb, 0xd9, 0xd7, 0x95, 0x78, 0xff, 0x25, 0xaa, 0xc4, 0xcb, 0x4a, - 0x3b, 0xbb, 0x90, 0xac, 0x40, 0x25, 0xd3, 0x97, 0x45, 0xab, 0x18, 0xf3, 0x72, 0xd9, 0xbd, 0xd0, - 0xc8, 0x02, 0x5c, 0xcc, 0x44, 0x91, 0xcd, 0xc0, 0x6c, 0x5d, 0x76, 0x57, 0x1c, 0x32, 0x0f, 0xd3, - 0xb1, 0x4f, 0x8f, 0xd6, 0x04, 0x4c, 0xd4, 0x65, 0x67, 0x96, 0x91, 0x37, 0xcd, 0xc7, 0xf9, 0xbc, - 0x32, 0xcc, 0xd3, 0x65, 0xa7, 0x0b, 0xac, 0xe3, 0x02, 0x5c, 0xcc, 0xdc, 0x28, 0xa5, 0x3e, 0x3f, - 0x97, 0x54, 0x1c, 0xb5, 0xb5, 0xe0, 0x06, 0x0c, 0xa0, 0x82, 0xcf, 0x6d, 0xc5, 0xd2, 0xd7, 0x14, - 0xe9, 0x39, 0x2b, 0x56, 0x6a, 0x23, 0x0e, 0xb9, 0xaf, 0xee, 0x06, 0xfb, 0xd1, 0x92, 0x71, 0x2b, - 0xa9, 0x40, 0x65, 0x54, 0xae, 0xdf, 0x11, 0xca, 0xdb, 0xc0, 0x6f, 0x72, 0x0d, 0xf3, 0x67, 0x05, - 0xa8, 0xf4, 0xd0, 0x0f, 0x54, 0x9f, 0x0a, 0x27, 0xe8, 0xd3, 0x03, 0xd5, 0x27, 0xfe, 0x36, 0x76, - 0xfe, 0x64, 0x3a, 0xc8, 0xcb, 0xee, 0x56, 0x07, 0x48, 0x5a, 0x0d, 0x25, 0xdf, 0x85, 0xd1, 0x5a, - 0x6d, 0xc5, 0x70, 0xe8, 0x4b, 0x5d, 0x0e, 0xc5, 0x18, 0xe4, 0xf6, 0x89, 0x3c, 0xf8, 0x34, 0xff, - 0x3d, 0x6b, 0x09, 0xca, 0x79, 0x1a, 0x24, 0x2e, 0x2c, 0x3c, 0xb6, 0x96, 0x76, 0xb1, 0xc4, 0x17, - 0x16, 0x13, 0x6c, 0xbd, 0x03, 0xe7, 0x14, 0x35, 0x4f, 0xda, 0xa1, 0x3d, 0xfc, 0x17, 0xc7, 0x4e, - 0x15, 0x60, 0x20, 0x06, 0x58, 0x7f, 0x3a, 0x90, 0x22, 0xac, 0x75, 0x0e, 0x0f, 0x9d, 0xe0, 0x39, - 0xa9, 0x9a, 0x84, 0xfd, 0x3d, 0x35, 0xfd, 0x85, 0x81, 0x9f, 0x1e, 0x55, 0xfa, 0x34, 0xee, 0x6c, - 0x39, 0xc6, 0x8d, 0xdd, 0x6b, 0x50, 0x7e, 0x25, 0x55, 0xe4, 0xc1, 0x8d, 0x0c, 0x20, 0xd9, 0x85, - 0x09, 0xb1, 0x65, 0xe2, 0x6f, 0x39, 0xb5, 0x6f, 0x27, 0xa7, 0xb6, 0xd1, 0xbc, 0x9b, 0x06, 0x09, - 0x9f, 0x04, 0x26, 0x1b, 0xf2, 0x39, 0x4c, 0x4a, 0x05, 0x49, 0x30, 0xe6, 0x4e, 0x44, 0x77, 0xba, - 0x33, 0x36, 0x69, 0x38, 0xe7, 0x04, 0x23, 0xd6, 0x64, 0xb9, 0xc6, 0x70, 0xce, 0x83, 0x27, 0x69, - 0xb2, 0x41, 0x22, 0x9a, 0x6c, 0xc0, 0xe6, 0x3e, 0x01, 0x92, 0xee, 0x57, 0xaf, 0x59, 0x3c, 0xa1, - 0xcd, 0xe2, 0xb9, 0x2a, 0x4c, 0x65, 0x74, 0xe0, 0x54, 0x2c, 0x3e, 0x01, 0x92, 0x6e, 0xe9, 0x69, - 0x38, 0x58, 0xd7, 0xe1, 0x35, 0x25, 0x02, 0x35, 0x1b, 0x0c, 0x9e, 0xd2, 0xf0, 0xfc, 0xeb, 0x45, - 0xa8, 0xf4, 0x40, 0x25, 0xbf, 0x57, 0x48, 0x4a, 0x9b, 0xcf, 0xc6, 0xf7, 0x92, 0xd2, 0xce, 0xa6, - 0xcf, 0x10, 0xfb, 0xc2, 0xfb, 0x3f, 0xf9, 0x8b, 0x17, 0x56, 0xf8, 0xd3, 0x43, 0x76, 0x7a, 0x69, - 0x0d, 0xe8, 0xd2, 0xb2, 0x61, 0xda, 0x38, 0x2a, 0x9d, 0x64, 0xcf, 0xb8, 0x0c, 0x20, 0x52, 0x7c, - 0xae, 0xf9, 0xfb, 0x42, 0x3d, 0xd3, 0x20, 0xd6, 0x3d, 0x98, 0x49, 0xf0, 0x14, 0xc6, 0xf0, 0xef, - 0x82, 0x7a, 0xe0, 0x8d, 0x4c, 0xfb, 0x17, 0xce, 0xfe, 0xfc, 0xa8, 0x32, 0xc1, 0x34, 0xe9, 0x9b, - 0x71, 0xfc, 0x78, 0xf9, 0x97, 0xb5, 0xae, 0x9b, 0xf3, 0xab, 0x2d, 0x3d, 0xf0, 0x0d, 0xb9, 0x03, - 0x43, 0x1c, 0x92, 0x88, 0xd2, 0xac, 0x63, 0x8b, 0x35, 0x41, 0x20, 0x5a, 0x33, 0xf8, 0x1c, 0x15, - 0x7f, 0x54, 0xe3, 0xf0, 0x09, 0xd6, 0x0e, 0xcf, 0x5a, 0x12, 0x83, 0x55, 0x24, 0xe8, 0x81, 0x6a, - 0x1c, 0xe6, 0x41, 0xfa, 0x5e, 0x48, 0x3c, 0xcf, 0x7f, 0xd6, 0xa2, 0x4d, 0x9e, 0x11, 0x6e, 0x61, - 0x5c, 0xf8, 0x5e, 0x0c, 0x38, 0x8c, 0x01, 0x92, 0x59, 0x1f, 0xc3, 0x0c, 0xdb, 0xa0, 0x83, 0x64, - 0x7d, 0x98, 0xab, 0x80, 0xc1, 0x4c, 0x87, 0x76, 0x87, 0x81, 0xd0, 0xa1, 0x5d, 0x14, 0x5a, 0x6b, - 0x70, 0x9e, 0x1b, 0x03, 0xf5, 0x2e, 0xc5, 0xa6, 0xf7, 0x41, 0xfc, 0x9d, 0x78, 0xcc, 0x98, 0xd1, - 0x7b, 0x8e, 0x67, 0x7d, 0x84, 0xaf, 0x65, 0xc4, 0x24, 0x75, 0x7d, 0x2f, 0xb6, 0xfc, 0x9d, 0xec, - 0x79, 0xed, 0xdf, 0x84, 0x8b, 0xd5, 0x76, 0x9b, 0x7a, 0xcd, 0x98, 0x70, 0x3b, 0x70, 0x4e, 0x18, - 0xfc, 0x80, 0x54, 0x61, 0x10, 0xb1, 0xd5, 0xbd, 0xa5, 0x68, 0x6e, 0x46, 0x73, 0x10, 0x4f, 0x84, - 0xed, 0xc4, 0x0a, 0x38, 0xa5, 0xd5, 0x84, 0xd9, 0x5a, 0x67, 0xef, 0xd0, 0x8d, 0xd0, 0x0d, 0x1e, - 0x03, 0x88, 0xc8, 0xba, 0x57, 0x65, 0xa2, 0x29, 0x2e, 0x8c, 0xeb, 0xf1, 0xab, 0x0a, 0xf4, 0xa4, - 0x17, 0x41, 0x45, 0x9e, 0xde, 0xb9, 0x19, 0x93, 0xa2, 0xd5, 0x83, 0xd7, 0x82, 0xc5, 0x22, 0x19, - 0x95, 0x35, 0x05, 0x67, 0xf5, 0x3b, 0x20, 0x3e, 0x43, 0x66, 0x60, 0xca, 0xbc, 0xdb, 0xe1, 0xe0, - 0xaf, 0x60, 0x9a, 0xdb, 0x9e, 0x79, 0xd8, 0xed, 0xf9, 0x38, 0xc2, 0x74, 0x71, 0x77, 0x3e, 0xe1, - 0x7f, 0x8f, 0x6e, 0xb9, 0x2a, 0xa1, 0xc2, 0xee, 0x3c, 0x7f, 0xf1, 0xf8, 0x74, 0xde, 0xb8, 0x41, - 0x2c, 0xee, 0xce, 0x2f, 0x0c, 0x8b, 0xf0, 0xa5, 0x8c, 0x3b, 0x1f, 0xfe, 0x6f, 0x85, 0xfb, 0x3c, - 0x3e, 0xb2, 0x5f, 0xa1, 0x0e, 0x3e, 0x88, 0xc9, 0x7e, 0xaa, 0x3c, 0x09, 0x45, 0xb7, 0x29, 0x4f, - 0xeb, 0x6e, 0xd3, 0xfa, 0xa3, 0x02, 0x5c, 0xe7, 0x3a, 0x50, 0x36, 0x1d, 0x5e, 0xf4, 0xe4, 0x10, - 0x93, 0x77, 0x81, 0x67, 0x6d, 0x17, 0x8a, 0xa6, 0x25, 0x5a, 0xde, 0x8d, 0x13, 0x27, 0x20, 0x55, - 0x18, 0xd7, 0x9f, 0x94, 0x9c, 0x2c, 0x3c, 0x9c, 0x3d, 0x76, 0xf8, 0xd8, 0x51, 0xcf, 0x4c, 0x9e, - 0xc0, 0x85, 0xe5, 0xaf, 0xd9, 0x84, 0x10, 0xbb, 0x93, 0x50, 0xd8, 0xe3, 0xa7, 0xb0, 0x67, 0xb6, - 0xc5, 0x8c, 0x31, 0x4f, 0xd3, 0x49, 0x30, 0x3b, 0x9a, 0xca, 0x0d, 0x4e, 0x69, 0xcd, 0xa3, 0xb6, - 0x01, 0xb3, 0xfe, 0xb4, 0x00, 0x17, 0xb3, 0x6b, 0x13, 0x0b, 0xcb, 0x2a, 0x9c, 0x5d, 0x74, 0x3c, - 0xdf, 0x73, 0x1b, 0x4e, 0xab, 0xd6, 0x38, 0xa0, 0xcd, 0x8e, 0x0a, 0x72, 0xaa, 0x56, 0x99, 0x7d, - 0xea, 0x49, 0x72, 0x89, 0x62, 0xa7, 0xa9, 0xd8, 0xa1, 0x0c, 0x5f, 0x25, 0xf0, 0xb5, 0xb7, 0x45, - 0x03, 0xc5, 0x8f, 0xb7, 0x2c, 0xa7, 0x94, 0xdc, 0x96, 0x46, 0xf6, 0xe6, 0x8e, 0xe7, 0x46, 0x8a, - 0x88, 0x5b, 0x57, 0xb2, 0x8a, 0xac, 0xff, 0x58, 0x80, 0xf3, 0x98, 0xd7, 0xc8, 0xc8, 0x94, 0x18, - 0xc7, 0xfa, 0x95, 0xe1, 0x6a, 0x0b, 0xc6, 0x2b, 0x0b, 0x03, 0xdb, 0x8c, 0x5b, 0x4b, 0xde, 0x84, - 0x81, 0x9a, 0x74, 0x92, 0x9a, 0x4c, 0xa4, 0xa1, 0x95, 0x29, 0xff, 0xfd, 0x20, 0xb2, 0x11, 0x8b, - 0xed, 0x39, 0x4b, 0x34, 0x6c, 0x50, 0x0f, 0xf3, 0x05, 0xf3, 0xc3, 0xbe, 0x06, 0x89, 0x43, 0x15, - 0x0d, 0xe4, 0x85, 0x2a, 0x1a, 0x34, 0x43, 0x15, 0x59, 0x4f, 0x79, 0x56, 0xa3, 0x64, 0x87, 0xc4, - 0x20, 0x7d, 0x94, 0x4a, 0x2f, 0xcc, 0xf7, 0x81, 0x73, 0x59, 0x3d, 0xdb, 0xbd, 0x9b, 0xca, 0x1c, - 0x9c, 0x1f, 0x5b, 0x77, 0x0b, 0x5e, 0x31, 0x70, 0xab, 0xad, 0x96, 0xff, 0x8c, 0x36, 0xb7, 0x02, - 0xff, 0xd0, 0x8f, 0x8c, 0xac, 0x2e, 0x22, 0xbf, 0x76, 0x7c, 0x8d, 0x22, 0x66, 0x65, 0x02, 0x6c, - 0xfd, 0x0d, 0x78, 0xb5, 0x07, 0x47, 0xd1, 0xa9, 0x1a, 0x9c, 0x75, 0x12, 0x65, 0xd2, 0xdb, 0xe5, - 0xd5, 0xac, 0x7e, 0x25, 0x19, 0x85, 0x76, 0x9a, 0xfe, 0xc6, 0xb6, 0x91, 0x92, 0x97, 0x94, 0x61, - 0x7a, 0xcb, 0xde, 0x5c, 0xda, 0x59, 0xdc, 0xae, 0x6f, 0x7f, 0xbe, 0xb5, 0x5c, 0xdf, 0xd9, 0x78, - 0xb8, 0xb1, 0xf9, 0x68, 0x83, 0x07, 0xa7, 0x36, 0x4a, 0xb6, 0x97, 0xab, 0xeb, 0xa5, 0x02, 0x99, - 0x86, 0x92, 0x01, 0x5e, 0xde, 0x59, 0x28, 0x15, 0x6f, 0x7c, 0x65, 0xa4, 0x9a, 0x25, 0x17, 0xa1, - 0x5c, 0xdb, 0xd9, 0xda, 0xda, 0xb4, 0x15, 0x57, 0x3d, 0x34, 0xf6, 0x0c, 0x9c, 0x35, 0x4a, 0xef, - 0xd9, 0xcb, 0xcb, 0xa5, 0x02, 0x6b, 0x8a, 0x01, 0xde, 0xb2, 0x97, 0xd7, 0x57, 0x77, 0xd6, 0x4b, - 0xc5, 0x1b, 0x75, 0xfd, 0x69, 0x17, 0xb9, 0x00, 0xb3, 0x4b, 0xcb, 0xbb, 0xab, 0x8b, 0xcb, 0x59, - 0xbc, 0xa7, 0xa1, 0xa4, 0x17, 0x6e, 0x6f, 0x6e, 0x6f, 0x71, 0xd6, 0x3a, 0xf4, 0xd1, 0xf2, 0x42, - 0x75, 0x67, 0x7b, 0x65, 0xa3, 0xd4, 0x6f, 0x0d, 0x8c, 0x14, 0x4b, 0xc5, 0x1b, 0x3f, 0x34, 0xde, - 0x7d, 0xb1, 0xe6, 0x0b, 0xf4, 0x9d, 0x5a, 0xf5, 0x7e, 0x7e, 0x15, 0xbc, 0x74, 0xfd, 0x5e, 0xb5, - 0x54, 0x20, 0x97, 0xe0, 0xbc, 0x01, 0xdd, 0xaa, 0xd6, 0x6a, 0x8f, 0x36, 0xed, 0xa5, 0xb5, 0xe5, - 0x5a, 0xad, 0x54, 0xbc, 0xb1, 0x6b, 0x84, 0x67, 0x63, 0x35, 0xac, 0xdf, 0xab, 0xd6, 0xed, 0xe5, - 0x4f, 0x77, 0x56, 0xed, 0xe5, 0xa5, 0x74, 0x0d, 0x46, 0xe9, 0xe7, 0xcb, 0xb5, 0x52, 0x81, 0x4c, - 0xc1, 0x19, 0x03, 0xba, 0xb1, 0x59, 0x2a, 0xde, 0x78, 0x4d, 0x44, 0xf0, 0x22, 0x93, 0x00, 0x4b, - 0xcb, 0xb5, 0xc5, 0xe5, 0x8d, 0xa5, 0xd5, 0x8d, 0xfb, 0xa5, 0x3e, 0x32, 0x01, 0xa3, 0x55, 0xf5, - 0xb3, 0x70, 0xe3, 0x7d, 0x38, 0x93, 0x38, 0x51, 0x33, 0x0c, 0x75, 0x18, 0x2d, 0xf5, 0xa1, 0xf8, - 0xe5, 0x4f, 0x34, 0x6b, 0xf2, 0xc3, 0x71, 0xa9, 0x70, 0x63, 0x41, 0xa6, 0x3e, 0xd5, 0xbe, 0x73, - 0x32, 0x06, 0xc3, 0x4b, 0xcb, 0xf7, 0xaa, 0x3b, 0x6b, 0xdb, 0xa5, 0x3e, 0xf6, 0x63, 0xd1, 0x5e, - 0xae, 0x6e, 0x2f, 0x2f, 0x95, 0x0a, 0x64, 0x14, 0x06, 0x6b, 0xdb, 0xd5, 0xed, 0xe5, 0x52, 0x91, - 0x8c, 0xc0, 0xc0, 0x4e, 0x6d, 0xd9, 0x2e, 0xf5, 0xcf, 0xff, 0xbb, 0xdf, 0x2b, 0x70, 0xdb, 0x9e, - 0x7c, 0x43, 0xf4, 0x95, 0x76, 0x98, 0x14, 0x4b, 0x9e, 0xc8, 0xf3, 0x98, 0x7b, 0x72, 0x44, 0x2d, - 0x60, 0xae, 0xcb, 0x65, 0x07, 0x22, 0x5c, 0x2f, 0xdc, 0x2e, 0x10, 0x1b, 0x9d, 0x43, 0x12, 0x67, - 0x2b, 0xc5, 0x39, 0xfb, 0xf8, 0x3b, 0x77, 0xa9, 0xeb, 0x91, 0x8c, 0xfc, 0x0a, 0x58, 0x3a, 0xcf, - 0x9c, 0x13, 0xc8, 0x77, 0x4f, 0x76, 0xd2, 0x90, 0x75, 0xbe, 0x76, 0x32, 0x74, 0xf2, 0x00, 0x26, - 0x98, 0x6e, 0xae, 0xd0, 0xc8, 0x85, 0x24, 0xa1, 0x76, 0x1c, 0x98, 0xbb, 0x98, 0x5d, 0xa8, 0x52, - 0xb1, 0x8c, 0x63, 0x47, 0xf8, 0xc1, 0x3a, 0x24, 0x32, 0xca, 0x83, 0x84, 0xf0, 0x15, 0x7f, 0xee, - 0x6c, 0x02, 0xbc, 0x7b, 0xe7, 0x76, 0x81, 0xd4, 0x30, 0xc4, 0x9a, 0xa1, 0xe4, 0x13, 0xf9, 0xa8, - 0x2d, 0xad, 0xfd, 0xf3, 0xd6, 0x54, 0x54, 0xe2, 0xc4, 0x9c, 0xd3, 0xc1, 0x06, 0x90, 0xb4, 0xee, - 0x4c, 0xae, 0xc4, 0xf3, 0x20, 0x5b, 0xad, 0x9e, 0x3b, 0x97, 0xf2, 0xf9, 0x5b, 0x66, 0xda, 0x13, - 0x59, 0x86, 0x49, 0xf1, 0x84, 0x5b, 0x68, 0xf3, 0xa4, 0xdb, 0x79, 0x20, 0x97, 0xcd, 0x7d, 0x94, - 0x93, 0x3a, 0x11, 0x90, 0xb9, 0xb8, 0x1f, 0xc9, 0x63, 0xc2, 0xdc, 0x85, 0xcc, 0x32, 0xd1, 0xbf, - 0x7b, 0x30, 0x69, 0x1e, 0x2e, 0x88, 0x1c, 0xa0, 0xcc, 0x33, 0x47, 0x6e, 0x83, 0xea, 0x30, 0xbb, - 0xee, 0xb8, 0x78, 0x45, 0x21, 0x3c, 0xcb, 0xa4, 0x5f, 0x18, 0xa9, 0x74, 0x71, 0x14, 0xab, 0x51, - 0xaf, 0xa9, 0x06, 0x21, 0x2f, 0xac, 0x3a, 0x7e, 0x36, 0x35, 0xa9, 0x23, 0x9b, 0x7e, 0x75, 0xc4, - 0x32, 0x93, 0xe1, 0x66, 0xb9, 0x4a, 0xce, 0xe5, 0x79, 0xf7, 0x92, 0x75, 0x54, 0xd2, 0x13, 0x1c, - 0xb5, 0x39, 0x71, 0x6a, 0x76, 0x65, 0x0c, 0x24, 0xa0, 0x25, 0x11, 0x17, 0x85, 0x21, 0xc9, 0x11, - 0x5c, 0x2e, 0xb3, 0xdb, 0x05, 0xf2, 0x15, 0x7e, 0xd5, 0x99, 0xec, 0x1e, 0xb9, 0xd1, 0x81, 0xd0, - 0x7e, 0x2e, 0x64, 0x32, 0x10, 0x1f, 0x4a, 0x17, 0xee, 0x36, 0x4c, 0x67, 0x39, 0x14, 0x2b, 0x81, - 0x76, 0xf1, 0x36, 0xce, 0x9d, 0x05, 0x36, 0x3b, 0x6a, 0x34, 0xf3, 0x07, 0xa9, 0x8b, 0x3f, 0x6b, - 0x2e, 0xcf, 0x0f, 0x61, 0x92, 0xcd, 0x92, 0x87, 0x94, 0xb6, 0xab, 0x2d, 0xf7, 0x29, 0x0d, 0x89, - 0x8c, 0x8f, 0xab, 0x40, 0x79, 0xb4, 0xd7, 0x0b, 0xe4, 0x3b, 0x30, 0xf6, 0xc8, 0x89, 0x1a, 0x07, - 0x22, 0x4e, 0xa4, 0x0c, 0x23, 0x89, 0xb0, 0x39, 0xf9, 0x0b, 0x0b, 0x6f, 0x17, 0xc8, 0xf7, 0x61, - 0xf8, 0x3e, 0x8d, 0xf0, 0x51, 0xf1, 0x55, 0xe5, 0x5b, 0xc7, 0x6d, 0x93, 0xab, 0x9e, 0x7a, 0x39, - 0x23, 0x1b, 0x9c, 0x34, 0xa0, 0x92, 0x5b, 0x00, 0x7c, 0x41, 0x40, 0x0e, 0xc9, 0xe2, 0xb9, 0x54, - 0xb3, 0xc9, 0x7d, 0xa6, 0x3c, 0xb4, 0x68, 0x44, 0x4f, 0x5a, 0x65, 0x9e, 0x8c, 0xd6, 0x60, 0x52, - 0x65, 0xaf, 0xd9, 0xc0, 0x70, 0x1e, 0x56, 0x82, 0x59, 0x78, 0x0a, 0x6e, 0xef, 0xb3, 0xaf, 0x82, - 0xa7, 0x6e, 0xc5, 0xb8, 0x0f, 0xb8, 0x92, 0xce, 0xea, 0xc1, 0x23, 0xf4, 0x25, 0x54, 0x0a, 0x91, - 0xa3, 0x69, 0xb4, 0x2b, 0x7e, 0x18, 0x99, 0xb4, 0x0a, 0x92, 0x4d, 0xfb, 0xcb, 0x30, 0xa7, 0xd7, - 0x6b, 0x06, 0x2a, 0x8e, 0xd7, 0xdc, 0xbc, 0xf8, 0xc7, 0x73, 0x57, 0xbb, 0x60, 0x88, 0xf3, 0x5b, - 0xff, 0x6f, 0x16, 0x0b, 0xb8, 0x9c, 0x2c, 0xc1, 0x94, 0xac, 0x6b, 0xb3, 0x4d, 0xbd, 0x5a, 0x6d, - 0x05, 0x33, 0x95, 0x48, 0x4f, 0x0e, 0x0d, 0x26, 0xb9, 0x93, 0x74, 0x11, 0xdb, 0xfa, 0x8c, 0xf8, - 0x0e, 0xa4, 0x5b, 0xd4, 0x87, 0x78, 0xeb, 0xcb, 0x8c, 0xa0, 0xfb, 0x90, 0x1b, 0x95, 0x0c, 0xe5, - 0x7f, 0x77, 0x9e, 0x74, 0x39, 0x00, 0xcd, 0xe5, 0x1c, 0x21, 0x6e, 0x17, 0xc8, 0xe7, 0x40, 0xd2, - 0x47, 0x12, 0x25, 0xc2, 0xdc, 0xe3, 0x97, 0x12, 0x61, 0x97, 0xf3, 0xcc, 0x32, 0x4c, 0xa9, 0xe8, - 0x2e, 0x71, 0x39, 0xc9, 0x69, 0x4b, 0x97, 0x1d, 0x6c, 0x26, 0x83, 0xcd, 0xee, 0x7c, 0x17, 0x46, - 0x99, 0x70, 0xf2, 0x31, 0x4c, 0x89, 0xb9, 0x6f, 0xb4, 0xa7, 0xa4, 0x96, 0x31, 0x71, 0xb8, 0xc9, - 0x6d, 0xc9, 0x03, 0x98, 0xa9, 0x25, 0x04, 0xcf, 0xfd, 0xd8, 0xcf, 0x9b, 0x2c, 0x10, 0x58, 0xa3, - 0x11, 0x97, 0x7c, 0x36, 0xaf, 0x87, 0x40, 0xb8, 0x6d, 0x49, 0xb2, 0x7b, 0xea, 0xd2, 0x67, 0xe4, - 0x52, 0xa2, 0xe9, 0x0c, 0x88, 0x68, 0xb8, 0x0e, 0xe6, 0xf6, 0x6c, 0x9b, 0xe7, 0x2f, 0x46, 0xa8, - 0x71, 0x03, 0x7e, 0xc5, 0x20, 0x30, 0x2e, 0xd1, 0xc5, 0x38, 0x9e, 0xcf, 0xc5, 0x20, 0xbf, 0x86, - 0xd1, 0x59, 0xbb, 0x9f, 0xce, 0xc8, 0x77, 0xb2, 0x0e, 0xd1, 0x39, 0xe7, 0xcb, 0xb9, 0x37, 0x4f, - 0x86, 0xac, 0xce, 0xc3, 0x13, 0xf7, 0x69, 0xb4, 0xd5, 0xea, 0xec, 0xbb, 0x98, 0xd9, 0x92, 0x28, - 0xdb, 0x93, 0x02, 0x89, 0xe9, 0x2d, 0x83, 0xa2, 0xc5, 0x05, 0x35, 0xfa, 0x23, 0xb2, 0x0a, 0x25, - 0xbe, 0x8d, 0x68, 0x2c, 0x2e, 0xa5, 0x58, 0x08, 0x14, 0x27, 0x70, 0x0e, 0xc3, 0xdc, 0xd1, 0xba, - 0xc5, 0x5d, 0x8e, 0x88, 0xfc, 0xb4, 0x75, 0x3d, 0x75, 0xca, 0x80, 0xa9, 0x88, 0xf5, 0x6c, 0x44, - 0x6c, 0x1a, 0xd2, 0x48, 0x86, 0x81, 0xe1, 0x79, 0x4d, 0xaf, 0xc5, 0x3a, 0x43, 0xba, 0x34, 0x5e, - 0x41, 0x12, 0x21, 0xcb, 0x76, 0xef, 0x12, 0x95, 0xeb, 0x35, 0x83, 0xe9, 0x6b, 0x86, 0x6a, 0x73, - 0x3a, 0xbe, 0x6f, 0xe1, 0x56, 0x86, 0xa1, 0x6f, 0x66, 0xe2, 0xb6, 0xb1, 0xdf, 0x92, 0x6a, 0x42, - 0xa3, 0xda, 0x9d, 0xc7, 0x95, 0x91, 0xed, 0xb5, 0x4c, 0x13, 0xee, 0x04, 0x01, 0xf5, 0x38, 0x71, - 0x9e, 0xda, 0x92, 0x45, 0xfd, 0x11, 0xae, 0x60, 0x1a, 0x35, 0x7f, 0x6e, 0xd7, 0x8b, 0x05, 0xcf, - 0xc3, 0x73, 0xbb, 0x40, 0xde, 0x85, 0x11, 0xd1, 0x46, 0x46, 0x64, 0x34, 0x3a, 0xec, 0xd2, 0x6a, - 0xa4, 0x04, 0x2e, 0x24, 0x6c, 0xb3, 0x89, 0x93, 0x37, 0xfa, 0xbc, 0xcd, 0xef, 0xb2, 0x3d, 0xbb, - 0xf9, 0x22, 0x94, 0x8b, 0x72, 0xf3, 0x46, 0xca, 0xb2, 0x8a, 0xc4, 0x22, 0x41, 0x3d, 0x76, 0x59, - 0xce, 0x84, 0xa9, 0xdf, 0x18, 0x73, 0x50, 0x85, 0x0e, 0x53, 0xea, 0xb7, 0x01, 0xee, 0xb5, 0x65, - 0xaf, 0x42, 0xa9, 0xda, 0xc0, 0x0d, 0xa5, 0x46, 0x0f, 0x9d, 0xf6, 0x81, 0x1f, 0x50, 0x75, 0xf6, - 0x49, 0x16, 0x48, 0x5e, 0x33, 0x4a, 0x41, 0x11, 0x05, 0x6b, 0xd4, 0xc1, 0xc0, 0xcc, 0xb3, 0x4a, - 0x43, 0x49, 0x14, 0x65, 0x53, 0x74, 0x39, 0xeb, 0x4c, 0x2f, 0xb2, 0xd3, 0x59, 0xeb, 0x9b, 0xb1, - 0x79, 0x1f, 0x17, 0x0c, 0x85, 0x1c, 0xaa, 0x1d, 0x42, 0x81, 0xd4, 0xa9, 0x50, 0xbe, 0xbc, 0x51, - 0xa8, 0x55, 0x79, 0xf5, 0x1c, 0x8b, 0x25, 0x8f, 0x3a, 0xaf, 0xfa, 0xef, 0xc1, 0xe4, 0x32, 0x5b, - 0xd0, 0x3b, 0x4d, 0x97, 0x07, 0xa3, 0x27, 0x66, 0x74, 0xf1, 0x5c, 0xc2, 0x15, 0x99, 0xfa, 0x0a, - 0x49, 0x85, 0x05, 0x41, 0xee, 0x29, 0x1a, 0x4c, 0x8e, 0xc7, 0xb4, 0x64, 0x2b, 0xf2, 0x01, 0xe0, - 0x09, 0x5f, 0x98, 0x0c, 0x66, 0xb9, 0x62, 0x59, 0x6d, 0xb7, 0x5b, 0xd2, 0xb2, 0xcd, 0x6f, 0xea, - 0x5f, 0x35, 0x4e, 0xa2, 0xa9, 0x72, 0xc9, 0x3b, 0xad, 0x7b, 0x7e, 0xa6, 0xa5, 0xa2, 0xcd, 0xe1, - 0x99, 0x53, 0xde, 0x6b, 0x2e, 0xaa, 0xf0, 0xd1, 0xd5, 0x56, 0x2b, 0x45, 0x1c, 0x92, 0x37, 0x4c, - 0xee, 0x59, 0x38, 0xbd, 0x6a, 0xc0, 0x93, 0x3e, 0x57, 0xde, 0xaa, 0xed, 0x36, 0x5f, 0x2c, 0x2f, - 0xab, 0x05, 0xc3, 0x2c, 0x48, 0x9f, 0xf4, 0x93, 0xe5, 0x62, 0x6d, 0x7f, 0x80, 0xd3, 0x2c, 0xce, - 0x57, 0x4b, 0xf4, 0x73, 0x73, 0x32, 0x5d, 0xaf, 0xd2, 0xe5, 0x12, 0x85, 0x6a, 0x9f, 0x38, 0x93, - 0x48, 0xdd, 0xaf, 0x0c, 0x3c, 0xa9, 0x94, 0xfe, 0x9c, 0xdf, 0xe5, 0xbc, 0x62, 0x65, 0x70, 0x2d, - 0x25, 0x73, 0x82, 0xab, 0x2e, 0xe7, 0xe4, 0x9a, 0x57, 0x5d, 0xce, 0x4d, 0x26, 0xfe, 0x00, 0x4a, - 0xc9, 0x74, 0xc4, 0x8a, 0x69, 0x4e, 0x9e, 0xe2, 0xdc, 0x31, 0xb9, 0x07, 0xd3, 0xfa, 0x88, 0xaa, - 0x7e, 0xe7, 0xad, 0xfe, 0x79, 0x7c, 0xb6, 0x61, 0x26, 0x33, 0x7b, 0xb0, 0xda, 0x62, 0xbb, 0xe5, - 0x16, 0xce, 0xe5, 0x4a, 0xe1, 0x5c, 0x76, 0x02, 0x71, 0xf2, 0x8a, 0x69, 0x3f, 0xc8, 0x4e, 0xa7, - 0x3c, 0xf7, 0x6a, 0x0f, 0x2c, 0x21, 0xd0, 0xaf, 0x70, 0x07, 0x4c, 0xd5, 0x71, 0x55, 0xb3, 0x28, - 0xe4, 0x54, 0x60, 0x75, 0x43, 0x51, 0x73, 0x60, 0x3a, 0xa3, 0x38, 0x5f, 0xc4, 0xd7, 0xf2, 0x79, - 0xc6, 0x13, 0x6b, 0x57, 0x46, 0x49, 0xce, 0x95, 0x4c, 0xd7, 0x44, 0xd3, 0x5d, 0x8e, 0xa4, 0x73, - 0x6a, 0x3e, 0x9c, 0xbc, 0xc9, 0x79, 0xdc, 0x9a, 0xca, 0xfa, 0x63, 0x64, 0x81, 0x4e, 0x5a, 0x7f, - 0xb2, 0xb2, 0x57, 0x2b, 0x31, 0x74, 0xcb, 0x8f, 0xce, 0x77, 0xe3, 0x2f, 0xb9, 0x39, 0xc8, 0xac, - 0x42, 0x37, 0x07, 0x65, 0xf2, 0xbf, 0x92, 0x8f, 0xa0, 0x33, 0x77, 0xf8, 0xdd, 0x6f, 0x22, 0x8d, - 0x35, 0xd1, 0x4f, 0x5c, 0xd9, 0x29, 0xae, 0xd5, 0xdc, 0xc8, 0x44, 0xd1, 0xab, 0x78, 0x24, 0xbf, - 0xc1, 0x1c, 0x29, 0x75, 0xc9, 0xf1, 0xdd, 0x5d, 0x4d, 0xd9, 0x84, 0x72, 0x3c, 0x98, 0x89, 0x0e, - 0x9c, 0x72, 0x28, 0xa5, 0x30, 0xce, 0xe7, 0x66, 0xf6, 0x26, 0xaf, 0xa7, 0xbe, 0xf4, 0x1c, 0xc1, - 0x74, 0xad, 0x82, 0xaf, 0xe7, 0x5a, 0xd4, 0xe5, 0x0b, 0xb1, 0x2d, 0x58, 0x4f, 0x02, 0x9e, 0x5a, - 0xcf, 0x33, 0x32, 0x84, 0xdf, 0x47, 0xbd, 0x58, 0xcb, 0xf2, 0x9d, 0xdb, 0xeb, 0x4b, 0x59, 0x7c, - 0xc2, 0xf4, 0x8a, 0xab, 0xb5, 0x4b, 0xea, 0x69, 0xc9, 0x82, 0xd3, 0xac, 0xb8, 0x27, 0x69, 0x5a, - 0x1e, 0x9f, 0x25, 0x18, 0xd3, 0xd2, 0x83, 0x93, 0xf3, 0x86, 0x98, 0x8c, 0x3d, 0x74, 0xce, 0xe8, - 0x9c, 0xb9, 0x7d, 0x2e, 0xa2, 0x45, 0x5a, 0x25, 0x19, 0xcf, 0x6d, 0xc5, 0x85, 0x34, 0x0f, 0xc3, - 0x1a, 0xad, 0xa4, 0xc0, 0x5b, 0x73, 0x31, 0x29, 0x1c, 0xa3, 0x41, 0xf9, 0x5d, 0x22, 0xba, 0x68, - 0x7a, 0x34, 0x29, 0x5f, 0x7f, 0x9d, 0x12, 0x39, 0x48, 0x31, 0x55, 0x8a, 0x8c, 0xd8, 0x77, 0x4e, - 0x99, 0xd6, 0x34, 0x68, 0x17, 0x4b, 0xc7, 0x16, 0x3e, 0xfc, 0xc8, 0xc8, 0x97, 0xae, 0x56, 0xd8, - 0xae, 0xe9, 0xd4, 0x33, 0x74, 0x37, 0xb5, 0x66, 0xe7, 0x72, 0xec, 0x9a, 0x40, 0x3d, 0xb7, 0xa5, - 0x3f, 0xd0, 0xd6, 0xec, 0x54, 0x56, 0x74, 0x72, 0x3d, 0xa9, 0xb8, 0xe5, 0x25, 0x4e, 0xef, 0xb2, - 0x27, 0x4c, 0x67, 0x25, 0x54, 0xd7, 0xcc, 0xc3, 0xb9, 0xd9, 0xd6, 0x33, 0xa4, 0x60, 0xcb, 0xf9, - 0x9f, 0xc3, 0xad, 0x4b, 0x7a, 0xf5, 0xdc, 0x16, 0x7e, 0xa1, 0x2d, 0x74, 0x89, 0x34, 0xe8, 0xea, - 0x38, 0xde, 0x23, 0x4f, 0x7a, 0x2e, 0xef, 0x0d, 0x7c, 0x2a, 0x94, 0xce, 0x61, 0xae, 0x34, 0x9b, - 0x6e, 0x19, 0xce, 0x33, 0xad, 0xc7, 0x33, 0xe9, 0x2e, 0x32, 0x7e, 0xe7, 0x12, 0xb6, 0xdf, 0x5e, - 0x0d, 0xfb, 0x4a, 0x2e, 0xc6, 0x19, 0xb9, 0xcf, 0x13, 0x8b, 0x71, 0x7e, 0x76, 0xf4, 0x2e, 0xc7, - 0xa0, 0x33, 0x35, 0x77, 0xdf, 0xd3, 0x52, 0x97, 0xab, 0x43, 0x50, 0x3a, 0x9b, 0xba, 0x5a, 0x62, - 0xb2, 0x32, 0x9d, 0x6f, 0x32, 0xfd, 0x87, 0x6b, 0xef, 0x7a, 0x12, 0x6a, 0x32, 0x97, 0x9f, 0x7b, - 0x5b, 0x2d, 0x37, 0x99, 0x59, 0xab, 0x35, 0x86, 0x7a, 0x06, 0x68, 0xc5, 0x30, 0x23, 0x19, 0xb5, - 0x62, 0x98, 0x99, 0x32, 0xfa, 0x16, 0x5a, 0x5d, 0x6c, 0xbf, 0x45, 0x75, 0xab, 0x8b, 0x96, 0x52, - 0x38, 0x61, 0xf4, 0x20, 0x1f, 0xa0, 0xc9, 0xa3, 0xbb, 0x9d, 0x64, 0xd6, 0xe4, 0xa4, 0x7b, 0x96, - 0x8c, 0xaa, 0x7c, 0xcd, 0xca, 0xc6, 0x9e, 0x4c, 0x19, 0x3d, 0x57, 0x4e, 0x17, 0x08, 0xfa, 0xb7, - 0xa5, 0xd5, 0x04, 0x1b, 0x5c, 0x36, 0xad, 0x4d, 0xf9, 0x6d, 0x7e, 0x5b, 0x9a, 0x4c, 0x0c, 0xb2, - 0x54, 0xb6, 0xe6, 0x24, 0xd9, 0xf7, 0x60, 0x3c, 0xce, 0xcc, 0xbc, 0x3b, 0xaf, 0x11, 0x26, 0xd2, - 0x35, 0x27, 0x09, 0xdf, 0x95, 0xd7, 0x2a, 0x58, 0x9f, 0x59, 0xd8, 0x5d, 0x05, 0xf8, 0x48, 0x9a, - 0x68, 0x8c, 0x96, 0xa6, 0xf2, 0x3c, 0x77, 0x59, 0xb9, 0xc7, 0xf5, 0x74, 0x92, 0x6a, 0x5e, 0x64, - 0x24, 0x84, 0x55, 0xf3, 0x22, 0x2b, 0xa1, 0x6b, 0x7c, 0xed, 0xf0, 0xb9, 0xb4, 0x47, 0xc4, 0x4c, - 0x2f, 0x19, 0xcd, 0x4a, 0xf1, 0xbd, 0x9c, 0x57, 0x9c, 0x64, 0x5d, 0x83, 0x52, 0x32, 0xf7, 0xa5, - 0x3a, 0xcc, 0xe5, 0x24, 0x29, 0x55, 0x27, 0xc4, 0xdc, 0xa4, 0x99, 0x5b, 0xd2, 0xb8, 0x6e, 0xf2, - 0xbd, 0x9a, 0xdd, 0x28, 0x9d, 0x75, 0xbe, 0xb5, 0x7d, 0xc2, 0x48, 0x83, 0xa9, 0x1f, 0xb3, 0x53, - 0x69, 0x36, 0x75, 0xb5, 0x2c, 0x23, 0x73, 0xa6, 0x2b, 0x83, 0x3d, 0x65, 0x67, 0xe3, 0x7e, 0xc3, - 0x3c, 0xff, 0x76, 0x89, 0x99, 0xde, 0xf3, 0x0a, 0x9a, 0xfc, 0x12, 0xcc, 0xe6, 0x84, 0x97, 0x26, - 0xaf, 0x26, 0xcc, 0xb4, 0xd9, 0xe1, 0xa7, 0xd5, 0x04, 0xc9, 0xcc, 0x4f, 0xbd, 0x8e, 0xbe, 0x0b, - 0x46, 0x58, 0x87, 0xd4, 0x7d, 0xe0, 0x23, 0x37, 0x3a, 0xe0, 0x69, 0x98, 0xb5, 0x35, 0x37, 0x33, - 0x1e, 0x04, 0xa9, 0xe1, 0x41, 0xc6, 0x80, 0x66, 0x5c, 0x09, 0x66, 0x30, 0x9c, 0xcb, 0x66, 0xc8, - 0xd6, 0x0e, 0x36, 0x17, 0x32, 0x62, 0x6e, 0xa8, 0xb9, 0x90, 0x1f, 0x8f, 0x23, 0xb7, 0x99, 0x5b, - 0x52, 0xc1, 0xca, 0xe6, 0x98, 0x1f, 0x7e, 0x23, 0x97, 0xe3, 0x03, 0xc6, 0x31, 0x15, 0x51, 0x83, - 0xe4, 0xa0, 0x77, 0x5f, 0x3d, 0x6c, 0xb9, 0x5f, 0x9b, 0x54, 0xf3, 0x5a, 0xfb, 0xf2, 0x62, 0x77, - 0xe4, 0xb6, 0x6f, 0x59, 0x7e, 0x4f, 0xd9, 0xed, 0x3b, 0xe9, 0x8e, 0xad, 0x2e, 0xcf, 0x12, 0x41, - 0x5d, 0x8c, 0x8e, 0x6a, 0xf0, 0xb9, 0x1c, 0x38, 0xd9, 0x40, 0x67, 0xa4, 0x24, 0x54, 0x3b, 0xd1, - 0x66, 0x47, 0x8d, 0xc9, 0xe5, 0xc7, 0xe7, 0xb1, 0x11, 0x75, 0xe3, 0x34, 0xf3, 0x38, 0x11, 0xae, - 0x43, 0xcc, 0x63, 0x03, 0x7a, 0xba, 0x79, 0x9c, 0x60, 0x68, 0xce, 0xe3, 0x64, 0x33, 0x93, 0x66, - 0x82, 0xdc, 0x51, 0x4d, 0x36, 0x53, 0xcd, 0xe3, 0x6c, 0x8e, 0xf9, 0xd1, 0x51, 0x72, 0x39, 0xaa, - 0x79, 0x6c, 0x72, 0xcc, 0x41, 0x3f, 0xe1, 0x3c, 0x4e, 0x56, 0x62, 0xce, 0xe3, 0x53, 0xb5, 0x4f, - 0xcd, 0xe3, 0xec, 0xf6, 0x9d, 0x7a, 0x1e, 0x27, 0xc2, 0x09, 0x19, 0x1d, 0xcd, 0x9a, 0xc7, 0x49, - 0x7c, 0x3e, 0x8f, 0x93, 0xd0, 0x84, 0x65, 0xa6, 0xcb, 0x3c, 0x4e, 0x52, 0x7e, 0x8a, 0xfc, 0x12, - 0xa1, 0x50, 0x4e, 0x32, 0x93, 0x73, 0xa3, 0xa8, 0x90, 0x47, 0x68, 0x1b, 0x4c, 0xc0, 0x4f, 0x36, - 0x9b, 0x2f, 0xe6, 0x31, 0xc5, 0xf9, 0xbc, 0x2b, 0x85, 0x98, 0x6c, 0xae, 0x69, 0xf8, 0xca, 0x8e, - 0x04, 0xd3, 0xa5, 0xc1, 0xbb, 0x6c, 0xde, 0x34, 0xbb, 0xf0, 0xed, 0x16, 0xc8, 0xa6, 0x0b, 0x5f, - 0x75, 0x0e, 0x4a, 0xf2, 0xcd, 0x25, 0xe9, 0x3e, 0xbf, 0x3f, 0x93, 0xb7, 0x23, 0x49, 0xba, 0xf9, - 0xc4, 0xc9, 0xea, 0xd4, 0x2d, 0x55, 0x27, 0xac, 0x64, 0x4b, 0x4f, 0x3b, 0xcf, 0xd7, 0xa5, 0xf6, - 0x90, 0x8a, 0x80, 0x95, 0xe8, 0xb4, 0x3e, 0xd7, 0x73, 0x4b, 0xc8, 0x36, 0x1a, 0x82, 0xd3, 0x70, - 0xcd, 0x88, 0x9c, 0x17, 0x6a, 0xab, 0x27, 0xd7, 0x54, 0x2c, 0x1f, 0x9d, 0x6b, 0x5e, 0xa0, 0x1f, - 0xc5, 0x35, 0x4d, 0xfd, 0x31, 0x9a, 0xce, 0xc4, 0x8b, 0x2f, 0xef, 0xb1, 0x9f, 0x7f, 0xce, 0x99, - 0x32, 0x1c, 0xa6, 0x18, 0x2e, 0xfa, 0xa9, 0x7d, 0x28, 0xae, 0xff, 0x24, 0x30, 0x57, 0xf8, 0x59, - 0xf4, 0xe4, 0x63, 0x28, 0x89, 0xe5, 0x2d, 0x66, 0x90, 0x85, 0x98, 0x3b, 0x74, 0x0b, 0xd2, 0x62, - 0x77, 0x82, 0x16, 0x9c, 0xc4, 0x52, 0x77, 0x12, 0x49, 0xe4, 0x9b, 0xb5, 0xd8, 0x76, 0xb8, 0x1d, - 0x74, 0xc2, 0x88, 0x36, 0xd3, 0xe6, 0x28, 0xb3, 0x31, 0xd2, 0xad, 0xc2, 0x44, 0xdf, 0x9d, 0x27, - 0xab, 0xb8, 0xb6, 0x99, 0xe0, 0x6e, 0xf6, 0xba, 0x6c, 0x36, 0xb8, 0xf4, 0xac, 0xa8, 0xa7, 0x45, - 0x66, 0x9b, 0xf2, 0xea, 0xce, 0x6f, 0x94, 0x12, 0xd1, 0x09, 0x7b, 0x97, 0x27, 0x22, 0x7e, 0xa0, - 0xe6, 0xb6, 0xc3, 0x5e, 0x92, 0x49, 0x3e, 0x76, 0x22, 0x9f, 0xc0, 0xa8, 0x24, 0xee, 0x2d, 0x90, - 0x24, 0x35, 0x0a, 0x64, 0x09, 0x26, 0x8c, 0x97, 0x5c, 0xea, 0x74, 0x93, 0xf5, 0xbe, 0xab, 0xcb, - 0x38, 0x4f, 0x18, 0x2f, 0xb6, 0x14, 0x97, 0xac, 0x77, 0x5c, 0xb9, 0x5c, 0xbe, 0x0f, 0x63, 0x42, - 0xa4, 0x5d, 0xa5, 0x91, 0x6f, 0xac, 0x9b, 0xd1, 0xbc, 0xa2, 0x3b, 0x4d, 0x37, 0x5a, 0xf4, 0xbd, - 0xc7, 0xee, 0x7e, 0x4f, 0xc1, 0xa4, 0x49, 0x76, 0xe7, 0xc9, 0x97, 0x98, 0xb4, 0x58, 0xa6, 0x92, - 0xa6, 0xd1, 0x33, 0x3f, 0x78, 0xe2, 0x7a, 0xfb, 0x3d, 0x58, 0x5e, 0x31, 0x59, 0x26, 0xe9, 0xa4, - 0xe3, 0xc9, 0x97, 0x30, 0x57, 0xcb, 0x67, 0xde, 0x93, 0x49, 0xf7, 0xed, 0xa5, 0x06, 0x17, 0xd1, - 0xf5, 0xe6, 0xb4, 0x6d, 0xef, 0xca, 0xf4, 0x73, 0x1e, 0x44, 0x51, 0x1a, 0xfa, 0x1b, 0x7e, 0xd0, - 0xec, 0xcd, 0xb1, 0x62, 0x3a, 0xf3, 0x26, 0xc8, 0xa4, 0x30, 0x3e, 0x87, 0xf3, 0xb5, 0x5c, 0xd6, - 0xbd, 0x58, 0xf4, 0xd2, 0x24, 0x2f, 0xa0, 0x28, 0x4e, 0xd9, 0xee, 0xae, 0x3c, 0x57, 0x71, 0x4d, - 0x63, 0xfb, 0xd0, 0x56, 0x40, 0x1f, 0xd3, 0x00, 0x5d, 0xc6, 0x7b, 0x39, 0x4b, 0x9b, 0xe8, 0xb2, - 0xe7, 0xab, 0x70, 0xb6, 0x96, 0x62, 0x95, 0x47, 0xd2, 0xeb, 0xf2, 0x68, 0x0a, 0x7b, 0x7a, 0xc2, - 0x76, 0xf5, 0x70, 0x31, 0x1a, 0xbb, 0x4f, 0xa3, 0x9d, 0xd5, 0x1e, 0x52, 0x92, 0x6f, 0x1a, 0x24, - 0xe2, 0xee, 0x1d, 0x46, 0x59, 0xd3, 0x28, 0xd3, 0x18, 0xb9, 0x1f, 0xef, 0x27, 0xf2, 0x22, 0xa5, - 0x67, 0xb5, 0x79, 0x1c, 0xee, 0xe2, 0x5a, 0x28, 0xdc, 0xa6, 0x35, 0x13, 0x24, 0x87, 0xc4, 0xa6, - 0x3a, 0xcd, 0x83, 0x3a, 0x24, 0x55, 0x7e, 0xfc, 0xe3, 0xd3, 0x43, 0xc0, 0x2e, 0xa7, 0xdc, 0xe9, - 0xbb, 0xb2, 0xe0, 0x26, 0xd4, 0x35, 0xbf, 0xf1, 0x44, 0x37, 0xa1, 0x6a, 0x69, 0xed, 0xe7, 0xcc, - 0xa4, 0xf3, 0x62, 0xc5, 0xc7, 0xcc, 0xf3, 0xba, 0xd7, 0x98, 0x9e, 0xd8, 0x5e, 0x37, 0xa1, 0x9a, - 0x29, 0xf8, 0xef, 0x4a, 0xdb, 0x22, 0x56, 0x68, 0x72, 0xce, 0x15, 0x8d, 0x32, 0x2b, 0x22, 0x91, - 0x69, 0x56, 0xd4, 0x1b, 0x9a, 0x7f, 0x11, 0x40, 0xd2, 0x39, 0xf8, 0xd5, 0x61, 0x25, 0x37, 0x3d, - 0x7f, 0x17, 0xe7, 0xaf, 0x29, 0xe1, 0x32, 0x64, 0x08, 0x5e, 0x05, 0x22, 0x4e, 0x97, 0xc5, 0xa2, - 0xd4, 0x3d, 0x99, 0x6e, 0x17, 0xc8, 0x06, 0x9c, 0xbb, 0x4f, 0x23, 0xb1, 0xc6, 0xd9, 0x34, 0x8c, - 0x02, 0xb7, 0x11, 0x75, 0xbd, 0x55, 0x94, 0x67, 0x93, 0x0c, 0x9a, 0xdd, 0xb7, 0x18, 0xbf, 0x5a, - 0x36, 0xbf, 0xae, 0x74, 0x5d, 0xfc, 0x6b, 0xc5, 0x55, 0xc5, 0x69, 0x9a, 0x98, 0x3f, 0xc5, 0x87, - 0xb9, 0xfb, 0x4e, 0x3e, 0x69, 0x29, 0x8e, 0x7a, 0x22, 0x4e, 0x5b, 0x37, 0x61, 0x88, 0x13, 0xe5, - 0x6e, 0xa8, 0xe3, 0x3a, 0x0d, 0xb9, 0x03, 0xa3, 0xca, 0xff, 0x86, 0x18, 0x45, 0xb9, 0xed, 0xba, - 0x03, 0xa3, 0xfc, 0x68, 0x75, 0x72, 0x92, 0x0f, 0x60, 0x54, 0x39, 0xec, 0x9c, 0x7a, 0xa7, 0xff, - 0x18, 0x26, 0x74, 0xd7, 0x9d, 0xd3, 0x0b, 0xf2, 0xfb, 0x78, 0xf7, 0x2b, 0xaf, 0x58, 0xf2, 0xe9, - 0x67, 0x12, 0x99, 0xbe, 0x84, 0x48, 0xf9, 0x02, 0x29, 0x81, 0xb9, 0xcd, 0x3f, 0x9b, 0xa2, 0x26, - 0x1f, 0xc8, 0xd7, 0x54, 0x8a, 0x38, 0x8d, 0xd4, 0x45, 0x66, 0x93, 0x5c, 0xcc, 0x2f, 0x42, 0xac, - 0x16, 0xd8, 0x9e, 0xcd, 0x3e, 0xc9, 0x1d, 0x75, 0x6f, 0xd1, 0xe5, 0x71, 0xd9, 0x44, 0x2d, 0x2d, - 0x95, 0x83, 0x2e, 0x9f, 0xd1, 0xe5, 0xfc, 0xb4, 0x75, 0x38, 0x18, 0x0f, 0xf0, 0x14, 0x98, 0x2a, - 0xcd, 0xed, 0x5e, 0x97, 0x34, 0x78, 0xf1, 0xb1, 0x37, 0xcd, 0xae, 0x0b, 0x59, 0xb7, 0x53, 0xb4, - 0x78, 0x23, 0xfa, 0x52, 0xd8, 0xad, 0x4a, 0x0f, 0xc8, 0x93, 0x77, 0x36, 0xbf, 0x65, 0x17, 0x32, - 0x6e, 0xc5, 0x7b, 0x8e, 0x45, 0x1e, 0xbb, 0x5f, 0x42, 0xed, 0x30, 0x33, 0x18, 0x58, 0x3e, 0xb3, - 0xeb, 0x9a, 0x63, 0x45, 0x26, 0xa5, 0xda, 0xf4, 0x9e, 0xe0, 0x33, 0xb5, 0xec, 0x2c, 0x7d, 0xaf, - 0xf5, 0xe0, 0x22, 0x25, 0xf1, 0x7a, 0x4f, 0x3c, 0x75, 0xc7, 0x7a, 0x81, 0xef, 0xb0, 0xd9, 0xf5, - 0xf5, 0xc8, 0x3a, 0x98, 0x71, 0xed, 0xad, 0xdc, 0x4b, 0xb3, 0x19, 0x9a, 0xee, 0xa5, 0x5d, 0xfb, - 0x90, 0x27, 0xfe, 0x4f, 0xa1, 0x12, 0x7b, 0x8f, 0x9c, 0x6e, 0x10, 0xf2, 0xbd, 0x1a, 0x49, 0x4a, - 0x52, 0x21, 0xe9, 0x96, 0x86, 0x67, 0xee, 0x6a, 0x9e, 0x84, 0x43, 0xcd, 0x2d, 0x49, 0x78, 0xc5, - 0x25, 0xf2, 0x55, 0xe6, 0x65, 0xbe, 0xec, 0x62, 0x87, 0x15, 0xef, 0xf6, 0x5e, 0x0a, 0xa3, 0xf4, - 0x68, 0x9f, 0x9e, 0x91, 0x72, 0xee, 0x48, 0x30, 0xb2, 0xba, 0x0c, 0x6f, 0xef, 0xab, 0xc7, 0x72, - 0xce, 0xb8, 0x9e, 0x7e, 0x40, 0x9d, 0xf8, 0xad, 0x5a, 0x22, 0x76, 0xa0, 0xfe, 0x3e, 0x38, 0x5d, - 0x94, 0x7c, 0x68, 0x95, 0x85, 0xa1, 0x3c, 0xaa, 0xca, 0xb2, 0x0a, 0x06, 0x67, 0x47, 0x11, 0x3f, - 0x70, 0xa3, 0xe7, 0x8b, 0xf6, 0x5a, 0x6c, 0x56, 0xd0, 0x0b, 0x24, 0x6f, 0x90, 0x85, 0xf6, 0x1a, - 0xf9, 0x02, 0x97, 0x12, 0xc1, 0x7e, 0xc1, 0xf7, 0xa3, 0x30, 0x0a, 0x9c, 0x76, 0xad, 0x11, 0xb8, - 0xed, 0x28, 0xb7, 0xd3, 0xb1, 0x03, 0x78, 0x16, 0x99, 0xe6, 0x8f, 0x2a, 0x62, 0xcb, 0x67, 0x45, - 0xdf, 0x51, 0x6f, 0x72, 0xb2, 0x0a, 0xbb, 0x9c, 0x5c, 0x6a, 0x32, 0x9a, 0xfc, 0xcb, 0x64, 0x5a, - 0x87, 0xd9, 0x9c, 0x98, 0x45, 0xea, 0xf6, 0xb6, 0x7b, 0x4c, 0xa3, 0xb9, 0xee, 0x15, 0x93, 0x2f, - 0x61, 0x26, 0x33, 0xa8, 0x91, 0xb2, 0x40, 0x77, 0x0b, 0x79, 0xd4, 0x8b, 0xf9, 0x13, 0x28, 0xf3, - 0xd7, 0x20, 0xe8, 0xf4, 0x6c, 0xc4, 0xb7, 0x89, 0xdf, 0x08, 0xe5, 0x20, 0x24, 0xd7, 0xeb, 0x7c, - 0x3c, 0xf5, 0xe0, 0x7d, 0x1a, 0x03, 0x9b, 0x24, 0xd2, 0xa1, 0xab, 0x0f, 0x2f, 0xab, 0xb0, 0xdb, - 0x43, 0xa4, 0x2d, 0x98, 0xd9, 0xa5, 0x81, 0xfb, 0xf8, 0x79, 0x92, 0xa1, 0x94, 0x4c, 0x66, 0x69, - 0x37, 0x8e, 0x9f, 0xc1, 0xec, 0xa2, 0x7f, 0xd8, 0x16, 0x4f, 0xfe, 0x0c, 0x9e, 0xea, 0x2a, 0x3e, - 0xbb, 0xbc, 0xb7, 0x23, 0xd4, 0x5c, 0x7e, 0xe2, 0x7a, 0xe5, 0xff, 0xd6, 0x33, 0xb7, 0xbd, 0x7a, - 0xb8, 0x66, 0xd2, 0x6f, 0xe3, 0x24, 0xcc, 0xca, 0x64, 0xaf, 0x4f, 0xc2, 0x2e, 0x99, 0xee, 0x73, - 0x1e, 0x90, 0xcd, 0xe6, 0x24, 0xaf, 0xef, 0xc2, 0xf5, 0x04, 0xad, 0xdd, 0x90, 0x7b, 0x8b, 0x99, - 0xe6, 0x3b, 0xe1, 0x71, 0x9d, 0x99, 0x03, 0x3c, 0xb3, 0x9d, 0x5a, 0x64, 0x87, 0x56, 0xab, 0x8b, - 0x8a, 0x45, 0xf4, 0xd0, 0x0e, 0x0c, 0x13, 0x8d, 0xf8, 0x13, 0x3a, 0x6d, 0xb7, 0xd5, 0x3a, 0x45, - 0x8c, 0x4a, 0xed, 0xfb, 0x30, 0x5e, 0xd3, 0x2b, 0xcf, 0xa8, 0x24, 0x77, 0x52, 0xa8, 0x27, 0x44, - 0xbd, 0xdb, 0xde, 0xc5, 0x91, 0x54, 0x6d, 0x3c, 0x27, 0xea, 0x45, 0xae, 0xeb, 0x8c, 0x91, 0xb3, - 0x4d, 0xed, 0x02, 0x59, 0x29, 0x15, 0x95, 0xeb, 0x4c, 0x76, 0x9a, 0xb7, 0x3a, 0xcf, 0x32, 0x93, - 0xcc, 0x98, 0x49, 0xac, 0xde, 0xa9, 0x69, 0x95, 0x43, 0x7d, 0xd7, 0x94, 0x9b, 0xdc, 0xcf, 0x27, - 0xce, 0x52, 0xa7, 0xfb, 0xf9, 0xa4, 0x72, 0xdf, 0xe9, 0x7e, 0x3e, 0x19, 0x89, 0xed, 0x96, 0x91, - 0x57, 0x9c, 0x9e, 0xa7, 0x8b, 0x31, 0x42, 0xb1, 0xc9, 0xc8, 0x02, 0xf4, 0x50, 0x0f, 0x10, 0xc2, - 0x93, 0xfa, 0x74, 0xb1, 0xb5, 0x26, 0x03, 0x83, 0x24, 0xb2, 0x00, 0xdd, 0x83, 0x12, 0xcf, 0x6f, - 0x10, 0xc7, 0x54, 0x8c, 0xfd, 0x06, 0xd3, 0x69, 0x17, 0xba, 0x0c, 0x6a, 0x29, 0x19, 0x8d, 0x4e, - 0x99, 0xcc, 0x72, 0xc2, 0xd4, 0x75, 0x99, 0xaa, 0x10, 0xc7, 0x9c, 0x53, 0x86, 0xa9, 0x54, 0x18, - 0xba, 0xb9, 0xf3, 0x19, 0x25, 0x4a, 0xa5, 0x1c, 0xd7, 0x23, 0xd4, 0xa9, 0x2e, 0x65, 0x84, 0xad, - 0x9b, 0xbb, 0x90, 0x59, 0x26, 0x18, 0x45, 0x3c, 0x3b, 0x73, 0x76, 0x4e, 0xe9, 0xf8, 0x15, 0x58, - 0x17, 0x1c, 0x59, 0xcd, 0x8d, 0x93, 0xa0, 0x8a, 0x5a, 0xa9, 0x4a, 0x4e, 0x94, 0x91, 0xc8, 0xfa, - 0xf5, 0x8c, 0x87, 0x1a, 0x06, 0x46, 0xec, 0x0d, 0xd6, 0x3d, 0xab, 0x36, 0x79, 0x24, 0x93, 0xc5, - 0xe4, 0xd4, 0xd4, 0x8b, 0x41, 0xee, 0x08, 0x3e, 0x92, 0xe9, 0x61, 0x5e, 0x36, 0xe3, 0x3d, 0xb8, - 0x98, 0x78, 0xfd, 0x61, 0x32, 0xbe, 0x91, 0xfd, 0x44, 0x24, 0x53, 0x3c, 0xf9, 0x3a, 0xfb, 0x95, - 0xf4, 0x2b, 0x91, 0xc4, 0xb8, 0x9f, 0x76, 0xcd, 0x5b, 0x87, 0x49, 0x5c, 0x66, 0x64, 0x4a, 0xf6, - 0x38, 0x3e, 0x8d, 0x09, 0x4e, 0x06, 0x4a, 0x4a, 0x96, 0x2a, 0x97, 0xd9, 0x71, 0xf1, 0xa2, 0x98, - 0x27, 0x78, 0x9f, 0x33, 0x9f, 0x19, 0x23, 0x30, 0x6b, 0x17, 0x13, 0x79, 0xe3, 0xc9, 0xf7, 0xe1, - 0x4c, 0xfc, 0xd0, 0x98, 0xb3, 0xc8, 0x40, 0xeb, 0x62, 0x28, 0x3b, 0x13, 0xbf, 0x36, 0x3e, 0x3d, - 0xf9, 0x8a, 0xdc, 0x8a, 0x62, 0xf2, 0x4b, 0xa9, 0xb7, 0x32, 0x46, 0x1f, 0x4e, 0xb2, 0x23, 0x69, - 0xb2, 0x3d, 0xed, 0xe8, 0x34, 0xf0, 0x73, 0xcb, 0x0e, 0xbd, 0xa8, 0x7f, 0x6e, 0x5d, 0xc3, 0x43, - 0x2a, 0xf5, 0x37, 0x87, 0xcf, 0x3a, 0x5c, 0xc3, 0x70, 0x2d, 0x5b, 0x3c, 0x40, 0x5f, 0x36, 0x56, - 0x7e, 0xdb, 0x93, 0x41, 0x5e, 0x5a, 0x70, 0xb5, 0x67, 0xec, 0x49, 0x72, 0xcb, 0x70, 0x71, 0xe9, - 0x1d, 0xa5, 0xb2, 0xcb, 0xc9, 0x63, 0x3a, 0x2b, 0x84, 0xa3, 0xda, 0x67, 0xbb, 0x44, 0x93, 0x54, - 0xfb, 0x6c, 0xd7, 0x18, 0x90, 0x9f, 0x61, 0x06, 0x26, 0xb1, 0x47, 0x61, 0x08, 0x26, 0xea, 0xf1, - 0xa0, 0xd4, 0x5d, 0xaf, 0x7d, 0xae, 0x9a, 0x97, 0xa2, 0x29, 0x42, 0x3c, 0xd3, 0x5c, 0x16, 0x27, - 0xb1, 0x3c, 0xe6, 0xbd, 0x99, 0x74, 0x71, 0xad, 0xbe, 0xcc, 0x27, 0xe0, 0xa9, 0x5b, 0x9e, 0x03, - 0x5f, 0x58, 0xfa, 0xe9, 0x7f, 0xbb, 0x5c, 0xf8, 0xe9, 0xcf, 0x2e, 0x17, 0xfe, 0xd3, 0xcf, 0x2e, - 0x17, 0xfe, 0xeb, 0xcf, 0x2e, 0x17, 0xbe, 0x98, 0x3f, 0x59, 0x68, 0xe4, 0x46, 0xcb, 0xa5, 0x5e, - 0x74, 0x8b, 0xb3, 0x1b, 0xc2, 0xff, 0xee, 0xfe, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x65, 0x08, - 0x73, 0x4e, 0xa4, 0xe8, 0x00, 0x00, + // 14880 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x5b, 0x8c, 0x5c, 0x49, + 0x76, 0x18, 0x58, 0x99, 0xf5, 0x3e, 0xf5, 0x60, 0x32, 0xaa, 0x8a, 0x95, 0x2c, 0x3e, 0x92, 0xbc, + 0xec, 0x07, 0x9b, 0xd3, 0xc3, 0x47, 0xb1, 0xbb, 0xa7, 0x5f, 0xd3, 0xdd, 0x59, 0x0f, 0xb2, 0x8a, + 0xac, 0x57, 0xdf, 0xac, 0x2a, 0xf6, 0x4b, 0x93, 0x73, 0x2b, 0x33, 0x58, 0x75, 0xc5, 0xac, 0x7b, + 0x73, 0xee, 0xbd, 0x49, 0x36, 0x47, 0x2b, 0x2d, 0x34, 0xda, 0xc5, 0xea, 0x67, 0x77, 0x25, 0x60, + 0xb5, 0xd0, 0x42, 0x1f, 0xda, 0x05, 0xd6, 0x80, 0x61, 0xc0, 0x86, 0x7e, 0x04, 0x7d, 0xf9, 0xc3, + 0xf0, 0x87, 0xc7, 0x02, 0x04, 0xdb, 0x90, 0xf4, 0xe3, 0x8f, 0x92, 0x3d, 0x80, 0x7f, 0x0a, 0xf6, + 0x87, 0x60, 0xd8, 0x80, 0x07, 0x10, 0x60, 0xc4, 0x89, 0xc7, 0x8d, 0xb8, 0x8f, 0xcc, 0x2a, 0x92, + 0x3d, 0xf2, 0x0f, 0x59, 0x79, 0xe2, 0x9c, 0x13, 0x11, 0x27, 0xe2, 0x46, 0x9c, 0x38, 0x71, 0xe2, + 0x1c, 0xb8, 0x19, 0xd1, 0x16, 0x6d, 0xfb, 0x41, 0x74, 0xab, 0x45, 0xf7, 0x9d, 0xc6, 0xf3, 0x5b, + 0x8d, 0x96, 0x4b, 0xbd, 0xe8, 0x56, 0x3b, 0xf0, 0x23, 0xff, 0x96, 0xd3, 0x89, 0x0e, 0x42, 0x1a, + 0x3c, 0x75, 0x1b, 0xf4, 0x26, 0x42, 0xc8, 0x20, 0xfe, 0x37, 0x37, 0xbd, 0xef, 0xef, 0xfb, 0x1c, + 0x87, 0xfd, 0xc5, 0x0b, 0xe7, 0x2e, 0xec, 0xfb, 0xfe, 0x7e, 0x8b, 0x72, 0xe2, 0xbd, 0xce, 0xe3, + 0x5b, 0xf4, 0xb0, 0x1d, 0x3d, 0x17, 0x85, 0x95, 0x64, 0x61, 0xe4, 0x1e, 0xd2, 0x30, 0x72, 0x0e, + 0xdb, 0x02, 0xe1, 0x2d, 0xd5, 0x14, 0x27, 0x8a, 0x58, 0x49, 0xe4, 0xfa, 0xde, 0xad, 0xa7, 0x77, + 0xf4, 0x9f, 0x02, 0xf5, 0x7a, 0xd7, 0x56, 0x37, 0x68, 0x10, 0x85, 0x27, 0xc2, 0xa4, 0x4f, 0xa9, + 0x17, 0xa5, 0xaa, 0x17, 0x98, 0xd1, 0xf3, 0x36, 0x0d, 0x39, 0x8a, 0xfc, 0x4f, 0xa0, 0x5e, 0xcd, + 0x46, 0xc5, 0x7f, 0x05, 0xca, 0xf7, 0xb3, 0x51, 0x9e, 0xd1, 0x3d, 0x26, 0x53, 0x4f, 0xfd, 0xd1, + 0x03, 0x3d, 0x70, 0xda, 0x6d, 0x1a, 0xc4, 0x7f, 0x08, 0xf4, 0xf3, 0x0a, 0xfd, 0xf0, 0xb1, 0xc3, + 0x44, 0x74, 0xf8, 0xd8, 0x49, 0x75, 0xa3, 0x13, 0x3a, 0xfb, 0x54, 0x34, 0xff, 0xe9, 0x1d, 0xfd, + 0x27, 0x47, 0xb5, 0xfe, 0xb8, 0x00, 0x83, 0x8f, 0x9c, 0xa8, 0x71, 0x40, 0x3e, 0x85, 0xc1, 0x87, + 0xae, 0xd7, 0x0c, 0xcb, 0x85, 0x2b, 0xfd, 0xd7, 0xc7, 0xe6, 0x4b, 0x37, 0x79, 0x57, 0xb0, 0x90, + 0x15, 0x2c, 0xcc, 0xfe, 0xfc, 0xa8, 0xd2, 0x77, 0x7c, 0x54, 0x39, 0xf3, 0x84, 0xa1, 0xbd, 0xed, + 0x1f, 0xba, 0x11, 0x8e, 0xad, 0xcd, 0xe9, 0xc8, 0x0e, 0x4c, 0x55, 0x5b, 0x2d, 0xff, 0xd9, 0x96, + 0x13, 0x44, 0xae, 0xd3, 0xaa, 0x75, 0x1a, 0x0d, 0x1a, 0x86, 0xe5, 0xe2, 0x95, 0xc2, 0xf5, 0x91, + 0x85, 0x6b, 0xc7, 0x47, 0x95, 0x8a, 0xc3, 0x8a, 0xeb, 0x6d, 0x5e, 0x5e, 0x0f, 0x39, 0x82, 0xc6, + 0x28, 0x8b, 0xde, 0xfa, 0xf3, 0x21, 0x28, 0xad, 0xf8, 0x61, 0xb4, 0xc8, 0x46, 0xd4, 0xa6, 0x3f, + 0xe9, 0xd0, 0x30, 0x22, 0xd7, 0x60, 0x88, 0xc1, 0x56, 0x97, 0xca, 0x85, 0x2b, 0x85, 0xeb, 0xa3, + 0x0b, 0x63, 0xc7, 0x47, 0x95, 0xe1, 0x03, 0x3f, 0x8c, 0xea, 0x6e, 0xd3, 0x16, 0x45, 0xe4, 0x2d, + 0x18, 0xd9, 0xf0, 0x9b, 0x74, 0xc3, 0x39, 0xa4, 0xd8, 0x8a, 0xd1, 0x85, 0x89, 0xe3, 0xa3, 0xca, + 0xa8, 0xe7, 0x37, 0x69, 0xdd, 0x73, 0x0e, 0xa9, 0xad, 0x8a, 0xc9, 0x2e, 0x0c, 0xd8, 0x7e, 0x8b, + 0x96, 0xfb, 0x11, 0x6d, 0xe1, 0xf8, 0xa8, 0x32, 0x10, 0xf8, 0x2d, 0xfa, 0xcb, 0xa3, 0xca, 0x7b, + 0xfb, 0x6e, 0x74, 0xd0, 0xd9, 0xbb, 0xd9, 0xf0, 0x0f, 0x6f, 0xed, 0x07, 0xce, 0x53, 0x97, 0x4f, + 0x42, 0xa7, 0x75, 0x2b, 0x9e, 0xaa, 0x6d, 0x57, 0x8c, 0x7b, 0xed, 0x79, 0x18, 0xd1, 0x43, 0xc6, + 0xc9, 0x46, 0x7e, 0xe4, 0x11, 0x4c, 0x57, 0x9b, 0x4d, 0x97, 0x53, 0x6c, 0x05, 0xae, 0xd7, 0x70, + 0xdb, 0x4e, 0x2b, 0x2c, 0x0f, 0x5c, 0xe9, 0xbf, 0x3e, 0x2a, 0x84, 0xa2, 0xca, 0xeb, 0x6d, 0x85, + 0xa0, 0x09, 0x25, 0x93, 0x01, 0xb9, 0x0b, 0x23, 0x4b, 0x1b, 0x35, 0xd6, 0xf6, 0xb0, 0x3c, 0x88, + 0xcc, 0x66, 0x8f, 0x8f, 0x2a, 0x53, 0x4d, 0x2f, 0xc4, 0xae, 0xe9, 0x0c, 0x14, 0x22, 0x79, 0x0f, + 0xc6, 0xb7, 0x3a, 0x7b, 0x2d, 0xb7, 0xb1, 0xbd, 0x56, 0x7b, 0x48, 0x9f, 0x97, 0x87, 0xae, 0x14, + 0xae, 0x8f, 0x2f, 0x90, 0xe3, 0xa3, 0xca, 0x64, 0x1b, 0xe1, 0xf5, 0xa8, 0x15, 0xd6, 0x9f, 0xd0, + 0xe7, 0xb6, 0x81, 0x17, 0xd3, 0xd5, 0x6a, 0x2b, 0x8c, 0x6e, 0x38, 0x45, 0x17, 0x86, 0x07, 0x3a, + 0x1d, 0xc7, 0x23, 0xb7, 0x00, 0x6c, 0x7a, 0xe8, 0x47, 0xb4, 0xda, 0x6c, 0x06, 0xe5, 0x11, 0x94, + 0xed, 0x99, 0xe3, 0xa3, 0xca, 0x58, 0x80, 0xd0, 0xba, 0xd3, 0x6c, 0x06, 0xb6, 0x86, 0x42, 0x16, + 0x61, 0xc4, 0xf6, 0xb9, 0x80, 0xcb, 0xa3, 0x57, 0x0a, 0xd7, 0xc7, 0xe6, 0xcf, 0x88, 0x69, 0x28, + 0xc1, 0x0b, 0xe7, 0x8e, 0x8f, 0x2a, 0x24, 0x10, 0xbf, 0xf4, 0x5e, 0x4a, 0x0c, 0x52, 0x81, 0xe1, + 0x0d, 0x7f, 0xd1, 0x69, 0x1c, 0xd0, 0x32, 0xe0, 0xdc, 0x1b, 0x3c, 0x3e, 0xaa, 0x14, 0xbe, 0x6f, + 0x4b, 0x28, 0x79, 0x0a, 0x63, 0xf1, 0x40, 0x85, 0xe5, 0x31, 0x14, 0xdf, 0xf6, 0xf1, 0x51, 0xe5, + 0x5c, 0x88, 0xe0, 0x3a, 0x1b, 0x7a, 0x4d, 0x82, 0x2f, 0x31, 0x0b, 0xf4, 0x8a, 0xc8, 0x37, 0x30, + 0x13, 0xff, 0xac, 0x86, 0x21, 0x0d, 0x18, 0x8f, 0xd5, 0xa5, 0xf2, 0x04, 0x4a, 0xe6, 0x8d, 0xe3, + 0xa3, 0x8a, 0xa5, 0xb5, 0xa0, 0xee, 0x48, 0x94, 0xba, 0xdb, 0xd4, 0x7a, 0x9a, 0xcd, 0xe4, 0xc1, + 0xc0, 0xc8, 0x78, 0x69, 0xc2, 0xbe, 0xb4, 0xe3, 0x85, 0x91, 0xb3, 0xd7, 0xa2, 0x99, 0x48, 0xd6, + 0xdf, 0x15, 0x80, 0x6c, 0xb6, 0xa9, 0x57, 0xab, 0xad, 0xb0, 0xef, 0x49, 0x7e, 0x4e, 0x6f, 0xc3, + 0x28, 0x1f, 0x38, 0x36, 0xba, 0x45, 0x1c, 0xdd, 0xc9, 0xe3, 0xa3, 0x0a, 0x88, 0xd1, 0x65, 0x23, + 0x1b, 0x23, 0x90, 0xd7, 0xa1, 0x7f, 0x7b, 0x7b, 0x0d, 0xbf, 0x95, 0xfe, 0x85, 0xa9, 0xe3, 0xa3, + 0x4a, 0x7f, 0x14, 0xb5, 0x7e, 0x79, 0x54, 0x19, 0x59, 0xea, 0x04, 0x28, 0x16, 0x9b, 0x95, 0x93, + 0xd7, 0x61, 0x78, 0xb1, 0xd5, 0x09, 0x23, 0x1a, 0x94, 0x07, 0xe2, 0x8f, 0xb4, 0xc1, 0x41, 0xb6, + 0x2c, 0x23, 0xdf, 0x83, 0x81, 0x9d, 0x90, 0x06, 0xe5, 0x41, 0x1c, 0xef, 0x09, 0x31, 0xde, 0x0c, + 0xb4, 0x3b, 0xbf, 0x30, 0xc2, 0xbe, 0xc4, 0x4e, 0x48, 0x03, 0x1b, 0x91, 0xc8, 0x4d, 0x18, 0xe4, + 0x83, 0x36, 0x84, 0x8b, 0xd4, 0x84, 0x9a, 0x1d, 0x2d, 0xba, 0xfb, 0xde, 0xc2, 0xe8, 0xf1, 0x51, + 0x65, 0x10, 0x07, 0xcf, 0xe6, 0x68, 0x0f, 0x06, 0x46, 0x0a, 0xa5, 0xa2, 0x3d, 0xc2, 0x68, 0xd9, + 0x67, 0x61, 0x7d, 0x0f, 0xc6, 0xb4, 0xee, 0x93, 0x8b, 0x30, 0xc0, 0xfe, 0xc7, 0x45, 0x64, 0x9c, + 0x57, 0xc6, 0x36, 0x0e, 0x1b, 0xa1, 0xd6, 0xff, 0x3b, 0x05, 0x25, 0x46, 0x69, 0xac, 0x3c, 0x37, + 0x75, 0x51, 0x71, 0xba, 0x92, 0x29, 0xaa, 0x72, 0x41, 0x17, 0xd6, 0x75, 0x50, 0xb5, 0x8b, 0x45, + 0x68, 0xfc, 0xf8, 0xa8, 0x32, 0xd2, 0x11, 0xb0, 0xb8, 0x6d, 0xa4, 0x06, 0xc3, 0xcb, 0xdf, 0xb6, + 0xdd, 0x80, 0x86, 0x28, 0xda, 0xb1, 0xf9, 0xb9, 0x9b, 0x7c, 0xbb, 0xbc, 0x29, 0xb7, 0xcb, 0x9b, + 0xdb, 0x72, 0xbb, 0x5c, 0xb8, 0x24, 0x16, 0xe3, 0xb3, 0x94, 0x93, 0xc4, 0xf3, 0xe3, 0xf7, 0xfe, + 0xa6, 0x52, 0xb0, 0x25, 0x27, 0xf2, 0x36, 0x0c, 0xdd, 0xf3, 0x83, 0x43, 0x27, 0x12, 0x63, 0x30, + 0x7d, 0x7c, 0x54, 0x29, 0x3d, 0x46, 0x88, 0x36, 0xa5, 0x04, 0x0e, 0xb9, 0x07, 0x93, 0xb6, 0xdf, + 0x89, 0xe8, 0xb6, 0x2f, 0x47, 0x6e, 0x10, 0xa9, 0x2e, 0x1f, 0x1f, 0x55, 0xe6, 0x02, 0x56, 0x52, + 0x8f, 0xfc, 0xba, 0x18, 0x42, 0x8d, 0x3e, 0x41, 0x45, 0x96, 0x61, 0xb2, 0x8a, 0xab, 0xb7, 0x90, + 0x1a, 0x1f, 0xaf, 0xd1, 0x85, 0x4b, 0xc7, 0x47, 0x95, 0xf3, 0x0e, 0x96, 0xd4, 0x03, 0x51, 0xa4, + 0xb3, 0x31, 0x89, 0xc8, 0x06, 0x9c, 0x7d, 0xd8, 0xd9, 0xa3, 0x81, 0x47, 0x23, 0x1a, 0xca, 0x16, + 0x0d, 0x63, 0x8b, 0xae, 0x1c, 0x1f, 0x55, 0x2e, 0x3e, 0x51, 0x85, 0x19, 0x6d, 0x4a, 0x93, 0x12, + 0x0a, 0x67, 0x44, 0x43, 0x97, 0x9c, 0xc8, 0xd9, 0x73, 0x42, 0x8a, 0x8b, 0xd2, 0xd8, 0xfc, 0x39, + 0x2e, 0xe2, 0x9b, 0x89, 0xd2, 0x85, 0x6b, 0x42, 0xca, 0x17, 0x54, 0xdf, 0x9b, 0xa2, 0x48, 0xab, + 0x28, 0xc9, 0x93, 0xad, 0xcd, 0x6a, 0xdf, 0x19, 0xc5, 0xd6, 0xe2, 0xda, 0xac, 0xf6, 0x1d, 0x7d, + 0xd5, 0x52, 0x3b, 0xd0, 0x1a, 0x0c, 0xee, 0xb0, 0xdd, 0x19, 0xd7, 0xac, 0xc9, 0xf9, 0xab, 0xa2, + 0x45, 0xc9, 0xf9, 0x77, 0x93, 0xfd, 0x40, 0x44, 0xfc, 0xf2, 0xce, 0xe0, 0x8e, 0xae, 0xef, 0xc5, + 0x58, 0x46, 0x3e, 0x07, 0x10, 0xad, 0xaa, 0xb6, 0xdb, 0xe5, 0x31, 0xec, 0xe4, 0x59, 0xb3, 0x93, + 0xd5, 0x76, 0x7b, 0xe1, 0xb2, 0xe8, 0xdf, 0x39, 0xd5, 0x3f, 0xa7, 0xdd, 0xd6, 0xb8, 0x69, 0x4c, + 0xc8, 0xa7, 0x30, 0x8e, 0x4b, 0x9a, 0x1c, 0xd1, 0x71, 0x1c, 0xd1, 0x0b, 0xc7, 0x47, 0x95, 0x59, + 0x5c, 0xad, 0x32, 0xc6, 0xd3, 0x20, 0x20, 0xbf, 0x05, 0x33, 0x82, 0xdd, 0x23, 0xd7, 0x6b, 0xfa, + 0xcf, 0xc2, 0x25, 0x1a, 0x3e, 0x89, 0xfc, 0x36, 0x2e, 0x7f, 0x63, 0xf3, 0x17, 0xcd, 0xe6, 0x99, + 0x38, 0x0b, 0x37, 0x44, 0x4b, 0x2d, 0xd5, 0xd2, 0x67, 0x1c, 0xa1, 0xde, 0xe4, 0x18, 0xfa, 0x02, + 0x99, 0xc9, 0x82, 0xac, 0xc2, 0x99, 0x9d, 0x90, 0x1a, 0x7d, 0x98, 0xc4, 0xfd, 0xa1, 0xc2, 0x46, + 0xb8, 0x13, 0xd2, 0x7a, 0x5e, 0x3f, 0x92, 0x74, 0xc4, 0x06, 0xb2, 0x14, 0xf8, 0xed, 0xc4, 0x1c, + 0x3f, 0x83, 0x12, 0xb1, 0x8e, 0x8f, 0x2a, 0x97, 0x9b, 0x81, 0xdf, 0xae, 0xe7, 0x4f, 0xf4, 0x0c, + 0x6a, 0xf2, 0x23, 0x38, 0xb7, 0xe8, 0x7b, 0x1e, 0x6d, 0xb0, 0x15, 0x74, 0xc9, 0x75, 0xf6, 0x3d, + 0x3f, 0x8c, 0xdc, 0xc6, 0xea, 0x52, 0xb9, 0x14, 0x6f, 0x0f, 0x0d, 0x85, 0x51, 0x6f, 0x2a, 0x14, + 0x73, 0x7b, 0xc8, 0xe1, 0x42, 0xbe, 0x86, 0x09, 0x51, 0x17, 0x0d, 0x70, 0x6a, 0x9e, 0xed, 0x3e, + 0xd1, 0x14, 0x32, 0xdf, 0xe8, 0x03, 0xf9, 0x93, 0xab, 0x4e, 0x26, 0x2f, 0xf2, 0x0d, 0x8c, 0xad, + 0xdf, 0xab, 0xda, 0x34, 0x6c, 0xfb, 0x5e, 0x48, 0xcb, 0x04, 0x47, 0xf4, 0xb2, 0x60, 0xbd, 0x7e, + 0xaf, 0x5a, 0xed, 0x44, 0x07, 0xd4, 0x8b, 0xdc, 0x86, 0x13, 0x51, 0x89, 0xb5, 0x30, 0xc7, 0x66, + 0xde, 0xe1, 0x63, 0xa7, 0x1e, 0x08, 0x88, 0xd6, 0x0b, 0x9d, 0x1d, 0x99, 0x83, 0x91, 0x5a, 0x6d, + 0x65, 0xcd, 0xdf, 0x77, 0xbd, 0xf2, 0x14, 0x13, 0x86, 0xad, 0x7e, 0x93, 0xc7, 0x30, 0xa3, 0x9d, + 0x0d, 0xea, 0xec, 0x7f, 0x7a, 0x48, 0xbd, 0xa8, 0x3c, 0x8d, 0x6d, 0xf8, 0xbe, 0x3a, 0xdc, 0xdc, + 0xd4, 0x8f, 0x10, 0x4f, 0xef, 0xdc, 0xac, 0xc6, 0x3f, 0x6b, 0x92, 0x68, 0xa1, 0x58, 0x2e, 0xd8, + 0xd3, 0x4e, 0x46, 0x09, 0xd9, 0x86, 0xe1, 0xad, 0x4e, 0xd0, 0xf6, 0x43, 0x5a, 0x9e, 0x41, 0xc1, + 0x5d, 0xeb, 0xf6, 0x85, 0x0a, 0xd4, 0x85, 0x19, 0xb6, 0x44, 0xb7, 0xf9, 0x0f, 0xad, 0x77, 0x92, + 0x15, 0xf9, 0x0c, 0xc6, 0x6b, 0xb5, 0x95, 0x78, 0x43, 0x39, 0x87, 0x1b, 0xca, 0xc5, 0xe3, 0xa3, + 0x4a, 0x99, 0xa9, 0x54, 0xf1, 0xa6, 0xa2, 0x7f, 0x55, 0x3a, 0x05, 0xe3, 0xb0, 0xbd, 0x56, 0x8b, + 0x39, 0xcc, 0xc6, 0x1c, 0x98, 0x32, 0x97, 0xcd, 0x41, 0xa7, 0x20, 0xff, 0xb8, 0x00, 0x57, 0x74, + 0x96, 0x59, 0x82, 0x29, 0x9f, 0x7f, 0x11, 0x69, 0xce, 0x1f, 0x1f, 0x55, 0x6e, 0x9a, 0xfd, 0xa8, + 0x67, 0x0e, 0x96, 0xd6, 0xb6, 0x9e, 0x4d, 0xc1, 0xf6, 0xea, 0x1d, 0xc8, 0x6c, 0xef, 0xdc, 0x0b, + 0xb7, 0xd7, 0x94, 0x5a, 0xef, 0xf6, 0xf6, 0x6a, 0x8a, 0xf5, 0x05, 0x8c, 0xaa, 0x45, 0x9b, 0x0c, + 0x43, 0x7f, 0xb5, 0xd5, 0x2a, 0xf5, 0xb1, 0x3f, 0x6a, 0xb5, 0x95, 0x52, 0x81, 0x4c, 0x02, 0xc4, + 0x3b, 0x55, 0xa9, 0x48, 0xc6, 0x61, 0x44, 0xee, 0x24, 0xa5, 0x7e, 0xc4, 0x6f, 0xb7, 0x4b, 0x03, + 0x84, 0xc0, 0xa4, 0xb9, 0x9e, 0x95, 0x06, 0xad, 0xdf, 0x2f, 0xc0, 0xa8, 0xfa, 0x0e, 0xc9, 0x19, + 0x18, 0xdb, 0xd9, 0xa8, 0x6d, 0x2d, 0x2f, 0xae, 0xde, 0x5b, 0x5d, 0x5e, 0x2a, 0xf5, 0x91, 0x4b, + 0x70, 0x7e, 0xbb, 0xb6, 0x52, 0x5f, 0x5a, 0xa8, 0xaf, 0x6d, 0x2e, 0x56, 0xd7, 0xea, 0x5b, 0xf6, + 0xe6, 0x17, 0x5f, 0xd6, 0xb7, 0x77, 0x36, 0x36, 0x96, 0xd7, 0x4a, 0x05, 0x52, 0x86, 0x69, 0x56, + 0xfc, 0x70, 0x67, 0x61, 0x59, 0x47, 0x28, 0x15, 0xc9, 0x55, 0xb8, 0x94, 0x55, 0x52, 0x5f, 0x59, + 0xae, 0x2e, 0xad, 0x2d, 0xd7, 0x6a, 0xa5, 0x7e, 0x32, 0x0b, 0x53, 0x0c, 0xa5, 0xba, 0xb5, 0x65, + 0xd0, 0x0e, 0x58, 0x2d, 0x18, 0xd3, 0x3e, 0x00, 0x72, 0x11, 0xca, 0x8b, 0xcb, 0xf6, 0x76, 0x7d, + 0x6b, 0xc7, 0xde, 0xda, 0xac, 0x2d, 0xd7, 0xcd, 0x16, 0x26, 0x4b, 0xd7, 0x36, 0xef, 0xaf, 0x6e, + 0xd4, 0x19, 0xa8, 0x56, 0x2a, 0xb0, 0x66, 0x18, 0xa5, 0xb5, 0xd5, 0x8d, 0xfb, 0x6b, 0xcb, 0xf5, + 0x9d, 0xda, 0xb2, 0x40, 0x29, 0x5a, 0x3f, 0x2b, 0xa6, 0xb6, 0x74, 0x32, 0x0f, 0x63, 0x35, 0x6e, + 0xaf, 0xc0, 0x65, 0x8e, 0x1f, 0x10, 0x99, 0x8e, 0x36, 0x2e, 0xcc, 0x18, 0x7c, 0x05, 0xd3, 0x91, + 0x98, 0x96, 0xb6, 0xc5, 0xbe, 0xe6, 0x86, 0xdf, 0xd2, 0xb5, 0xb4, 0xb6, 0x80, 0xd9, 0xaa, 0x94, + 0xcc, 0x6b, 0xfa, 0x1c, 0x3f, 0x2d, 0xe2, 0x89, 0x44, 0xea, 0x73, 0xfa, 0xde, 0xae, 0x34, 0xbb, + 0xf9, 0x78, 0x48, 0x85, 0x1a, 0x86, 0x34, 0x19, 0xba, 0x84, 0xc2, 0x23, 0x6f, 0x49, 0x4d, 0x97, + 0x9f, 0xee, 0x70, 0xb3, 0x4f, 0x9c, 0x4b, 0x84, 0x92, 0x6b, 0x75, 0x72, 0x36, 0x56, 0xf2, 0x51, + 0x72, 0xce, 0x08, 0x61, 0x20, 0xb3, 0xc4, 0xfe, 0x69, 0x27, 0x50, 0x49, 0x05, 0x06, 0xf9, 0x8a, + 0xcb, 0xe5, 0x81, 0xba, 0x75, 0x8b, 0x01, 0x6c, 0x0e, 0xb7, 0xfe, 0xb4, 0x5f, 0x57, 0x32, 0x98, + 0x2e, 0xad, 0xc9, 0x1b, 0x75, 0x69, 0x94, 0x33, 0x42, 0x99, 0xda, 0x5c, 0xa3, 0x61, 0xc8, 0xcf, + 0x3b, 0x45, 0x35, 0x24, 0x10, 0x72, 0x60, 0xdd, 0x6d, 0x32, 0xb5, 0x59, 0xa1, 0xb0, 0xa3, 0x23, + 0xff, 0xaa, 0xf0, 0xe8, 0xd8, 0x1f, 0x1f, 0x1d, 0xc5, 0xa7, 0xc9, 0x8f, 0x8e, 0x31, 0x0a, 0x1b, + 0x75, 0xa1, 0xe6, 0x61, 0x2b, 0x06, 0xe2, 0x51, 0x17, 0xaa, 0xa1, 0x18, 0x75, 0x0d, 0x89, 0x7c, + 0x08, 0x50, 0x7d, 0x54, 0xc3, 0x33, 0x92, 0xbd, 0x21, 0x54, 0x5d, 0xdc, 0x94, 0x9c, 0x67, 0xa1, + 0x38, 0x82, 0x05, 0xfa, 0x19, 0x53, 0xc3, 0x26, 0x0b, 0x30, 0x51, 0xfd, 0x69, 0x27, 0xa0, 0xab, + 0x4d, 0xb6, 0xaf, 0x45, 0xfc, 0x30, 0x3d, 0xca, 0x17, 0x5e, 0x87, 0x15, 0xd4, 0x5d, 0x51, 0xa2, + 0x31, 0x30, 0x49, 0xc8, 0x26, 0x9c, 0xbd, 0xbf, 0xb8, 0x25, 0xe6, 0x61, 0xb5, 0xd1, 0xf0, 0x3b, + 0x5e, 0x24, 0xf4, 0xdb, 0xab, 0xc7, 0x47, 0x95, 0x4b, 0xfb, 0x8d, 0x76, 0x5d, 0xce, 0x59, 0x87, + 0x17, 0xeb, 0x0a, 0x6e, 0x8a, 0x96, 0x5c, 0x83, 0xfe, 0x1d, 0x7b, 0x55, 0x9c, 0xb4, 0xcf, 0x1e, + 0x1f, 0x55, 0x26, 0x3a, 0x81, 0xab, 0x91, 0xb0, 0x52, 0xab, 0x05, 0x93, 0xf7, 0x69, 0xc4, 0x26, + 0xa7, 0x3c, 0xd3, 0x74, 0x1f, 0xba, 0x8f, 0x61, 0xec, 0x91, 0x1b, 0x1d, 0xd4, 0x68, 0x23, 0xa0, + 0x91, 0xb4, 0xe7, 0xa0, 0x98, 0x9e, 0xb9, 0xd1, 0x41, 0x3d, 0xe4, 0x70, 0x7d, 0xef, 0xd6, 0xd0, + 0xad, 0x65, 0x38, 0x23, 0x6a, 0x53, 0x47, 0xa8, 0x79, 0x93, 0x61, 0x01, 0x19, 0xe2, 0x50, 0xe9, + 0x0c, 0x4d, 0x36, 0x7f, 0x5a, 0x84, 0x99, 0xc5, 0x03, 0xc7, 0xdb, 0xa7, 0x5b, 0x4e, 0x18, 0x3e, + 0xf3, 0x83, 0xa6, 0xd6, 0x78, 0x3c, 0x3f, 0xa6, 0x1a, 0x8f, 0x07, 0xc6, 0x79, 0x18, 0xdb, 0x6c, + 0x35, 0x25, 0x8d, 0x38, 0xdb, 0x62, 0x5d, 0x7e, 0xab, 0x59, 0x6f, 0x4b, 0x5e, 0x3a, 0x12, 0xa3, + 0xd9, 0xa0, 0xcf, 0x14, 0x4d, 0x7f, 0x4c, 0xe3, 0xd1, 0x67, 0x1a, 0x8d, 0x86, 0x44, 0x96, 0xe1, + 0x6c, 0x8d, 0x36, 0x7c, 0xaf, 0x79, 0xcf, 0x69, 0x44, 0x7e, 0xb0, 0xed, 0x3f, 0xa1, 0x9e, 0x98, + 0x84, 0xa8, 0xfc, 0x87, 0x58, 0x58, 0x7f, 0x8c, 0xa5, 0xf5, 0x88, 0x15, 0xdb, 0x69, 0x0a, 0xb2, + 0x09, 0x23, 0x8f, 0x84, 0x55, 0x50, 0x1c, 0x88, 0x5f, 0xbf, 0xa9, 0xcc, 0x84, 0x8b, 0x01, 0xc5, + 0x99, 0xe3, 0xb4, 0xd4, 0x91, 0x5e, 0xe9, 0x52, 0xb8, 0x5c, 0x49, 0x4c, 0x5b, 0x31, 0xb1, 0x76, + 0x60, 0x62, 0xab, 0xd5, 0xd9, 0x77, 0x3d, 0xb6, 0xb0, 0xd4, 0xe8, 0x4f, 0xc8, 0x12, 0x40, 0x0c, + 0x10, 0xb6, 0xbe, 0x29, 0x71, 0x8c, 0x8e, 0x0b, 0x76, 0xef, 0x8a, 0xaf, 0x0d, 0x21, 0x78, 0xea, + 0xb1, 0x35, 0x3a, 0xeb, 0xbf, 0xf5, 0x03, 0x11, 0x03, 0x80, 0x1b, 0x5d, 0x8d, 0x46, 0x6c, 0x0b, + 0x3a, 0x07, 0x45, 0x65, 0x92, 0x1b, 0x3a, 0x3e, 0xaa, 0x14, 0xdd, 0xa6, 0x5d, 0x5c, 0x5d, 0x22, + 0xef, 0xc0, 0x20, 0xa2, 0xa1, 0xfc, 0x27, 0x55, 0x7d, 0x3a, 0x07, 0xbe, 0xc0, 0xe0, 0x0e, 0x6b, + 0x73, 0x64, 0xf2, 0x2e, 0x8c, 0x2e, 0xd1, 0x16, 0xdd, 0x77, 0x22, 0x5f, 0x2e, 0x01, 0xdc, 0xc8, + 0x25, 0x81, 0xda, 0x9c, 0x8b, 0x31, 0xd9, 0x91, 0xd7, 0xa6, 0x4e, 0xe8, 0x7b, 0xfa, 0x91, 0x37, + 0x40, 0x88, 0x7e, 0xe4, 0xe5, 0x38, 0xe4, 0x0f, 0x0a, 0x30, 0x56, 0xf5, 0x3c, 0x61, 0x3c, 0x0a, + 0x85, 0xd4, 0x67, 0x6e, 0x2a, 0x6b, 0xeb, 0x9a, 0xb3, 0x47, 0x5b, 0xbb, 0x4e, 0xab, 0x43, 0xc3, + 0x85, 0x6f, 0xd8, 0x29, 0xe4, 0xdf, 0x1e, 0x55, 0x3e, 0x3a, 0x85, 0x39, 0x28, 0xb6, 0xdb, 0x6e, + 0x07, 0x8e, 0x1b, 0x85, 0xc7, 0x47, 0x95, 0x19, 0x27, 0xae, 0x50, 0xff, 0x6e, 0xb4, 0x76, 0xc4, + 0xeb, 0xff, 0x50, 0xaf, 0xf5, 0x9f, 0x1c, 0xc2, 0x99, 0x6a, 0x18, 0x76, 0x0e, 0x69, 0x2d, 0x72, + 0x82, 0x68, 0xdb, 0x3d, 0xa4, 0xb8, 0x88, 0x74, 0x37, 0x20, 0xbc, 0xf9, 0xf3, 0xa3, 0x4a, 0x81, + 0x1d, 0x7c, 0x1c, 0x24, 0x65, 0xba, 0x4d, 0x10, 0xd5, 0x23, 0x57, 0xdf, 0xc2, 0xd0, 0x94, 0x90, + 0xe4, 0x6d, 0x5d, 0x53, 0x4a, 0xc7, 0xea, 0x52, 0xde, 0x88, 0x5b, 0x8b, 0x70, 0xf1, 0x3e, 0x8d, + 0x6c, 0x1a, 0xd2, 0x48, 0x7e, 0x23, 0x38, 0xc3, 0x63, 0x03, 0xee, 0x30, 0xfe, 0x56, 0xc4, 0x38, + 0xfc, 0xfc, 0xbb, 0x90, 0x25, 0xd6, 0xff, 0x52, 0x80, 0xca, 0x62, 0x40, 0xf9, 0x99, 0x21, 0x87, + 0x51, 0xf7, 0xb5, 0xeb, 0x22, 0x0c, 0x6c, 0x3f, 0x6f, 0x4b, 0xcb, 0x0b, 0x96, 0xb2, 0x41, 0xb1, + 0x11, 0x7a, 0x42, 0x43, 0x96, 0xf5, 0x18, 0x66, 0x6c, 0xea, 0xd1, 0x67, 0xce, 0x5e, 0x8b, 0x1a, + 0xb6, 0xa0, 0x0a, 0x0c, 0xf2, 0x0f, 0x3d, 0xd5, 0x05, 0x0e, 0x3f, 0x9d, 0x5d, 0xcd, 0x9a, 0x80, + 0xb1, 0x2d, 0xd7, 0xdb, 0x17, 0xdc, 0xad, 0x3f, 0xe9, 0x87, 0x71, 0xfe, 0x5b, 0x1c, 0x83, 0x12, + 0x5b, 0x5c, 0xe1, 0x24, 0x5b, 0xdc, 0xfb, 0x30, 0xc1, 0xf6, 0x08, 0x1a, 0xec, 0xd2, 0x80, 0x6d, + 0xad, 0x42, 0x12, 0x78, 0xa4, 0x0b, 0xb1, 0xa0, 0xfe, 0x94, 0x97, 0xd8, 0x26, 0x22, 0x59, 0x83, + 0x49, 0x0e, 0xb8, 0x47, 0x9d, 0xa8, 0x13, 0x5b, 0xa5, 0xce, 0x88, 0x73, 0x8f, 0x04, 0xf3, 0xa9, + 0x29, 0x78, 0x3d, 0x16, 0x40, 0x3b, 0x41, 0x4b, 0x3e, 0x85, 0x33, 0x5b, 0x81, 0xff, 0xed, 0x73, + 0x6d, 0x53, 0xe7, 0x5f, 0x27, 0x3f, 0x21, 0xb1, 0xa2, 0xba, 0xbe, 0xb5, 0x27, 0xb1, 0xc9, 0x5b, + 0x30, 0xb2, 0x1a, 0x2e, 0xf8, 0x81, 0xeb, 0xed, 0xe3, 0x37, 0x3a, 0xc2, 0x8d, 0xf9, 0x6e, 0x58, + 0xdf, 0x43, 0xa0, 0xad, 0x8a, 0x13, 0x66, 0xe7, 0xe1, 0xde, 0x66, 0xe7, 0xdb, 0x00, 0x6b, 0xbe, + 0xd3, 0xac, 0xb6, 0x5a, 0x8b, 0xd5, 0x10, 0x77, 0x4f, 0xb1, 0x1f, 0xb5, 0x7c, 0xa7, 0x59, 0x77, + 0x5a, 0xad, 0x7a, 0xc3, 0x09, 0x6d, 0x0d, 0xe7, 0xc1, 0xc0, 0xc8, 0x50, 0x69, 0xd8, 0x3e, 0xb3, + 0xe6, 0x36, 0xa8, 0x17, 0xd2, 0x47, 0x4e, 0xe0, 0xb9, 0xde, 0x7e, 0x68, 0xfd, 0x93, 0xb3, 0x30, + 0xa2, 0xba, 0x7c, 0x53, 0x57, 0xec, 0xc5, 0x2e, 0x87, 0xa3, 0x1f, 0x9b, 0xad, 0x6c, 0x0d, 0x83, + 0x9c, 0x47, 0x55, 0x5f, 0xec, 0xaf, 0xc3, 0x6c, 0x36, 0x3a, 0xed, 0xb6, 0xcd, 0x60, 0xec, 0x2b, + 0x5b, 0x5a, 0x40, 0xf9, 0x8f, 0xf0, 0xaf, 0xac, 0xb9, 0x67, 0x17, 0x97, 0x16, 0xd8, 0xf4, 0xde, + 0x5c, 0x5d, 0x5a, 0x44, 0x51, 0x8e, 0xf0, 0xe9, 0xed, 0xbb, 0xcd, 0x86, 0x8d, 0x50, 0x56, 0x5a, + 0xab, 0xae, 0xaf, 0x09, 0x71, 0x61, 0x69, 0xe8, 0x1c, 0xb6, 0x6c, 0x84, 0x32, 0xe5, 0x90, 0x5b, + 0x20, 0x16, 0x7d, 0x2f, 0x0a, 0xfc, 0x56, 0x88, 0x1a, 0xcc, 0x08, 0x1f, 0x4e, 0x61, 0xba, 0x68, + 0x88, 0x22, 0x3b, 0x81, 0x4a, 0x1e, 0xc1, 0x6c, 0xb5, 0xf9, 0xd4, 0xf1, 0x1a, 0xb4, 0xc9, 0x4b, + 0x1e, 0xf9, 0xc1, 0x93, 0xc7, 0x2d, 0xff, 0x59, 0x88, 0xf2, 0x1e, 0x11, 0x96, 0x3e, 0x81, 0x22, + 0x2d, 0x21, 0xcf, 0x24, 0x92, 0x9d, 0x47, 0xcd, 0x3e, 0xa9, 0xc5, 0x96, 0xdf, 0x69, 0x8a, 0x51, + 0xc0, 0x4f, 0xaa, 0xc1, 0x00, 0x36, 0x87, 0x33, 0x29, 0xad, 0xd4, 0xd6, 0xd1, 0xae, 0x26, 0xa4, + 0x74, 0x10, 0x1e, 0xda, 0x0c, 0x46, 0x5e, 0x87, 0x61, 0xa9, 0xe7, 0x72, 0xc3, 0x3f, 0x1a, 0x9c, + 0xa5, 0x7e, 0x2b, 0xcb, 0xd8, 0x27, 0x61, 0xd3, 0x86, 0xff, 0x94, 0x06, 0xcf, 0x17, 0xfd, 0x26, + 0x95, 0x56, 0x20, 0x61, 0xe5, 0xe0, 0x05, 0xf5, 0x06, 0x2b, 0xb1, 0x4d, 0x44, 0x56, 0x01, 0xdf, + 0x03, 0xc3, 0xf2, 0x99, 0xb8, 0x02, 0xbe, 0x47, 0x86, 0xb6, 0x2c, 0x23, 0x4b, 0x70, 0xb6, 0xda, + 0x89, 0xfc, 0x43, 0x27, 0x72, 0x1b, 0x3b, 0xed, 0xfd, 0xc0, 0x61, 0x95, 0x94, 0x90, 0x00, 0xf5, + 0x7e, 0x47, 0x16, 0xd6, 0x3b, 0xa2, 0xd4, 0x4e, 0x13, 0x90, 0xf7, 0x60, 0x7c, 0x35, 0xe4, 0x96, + 0x3e, 0x27, 0xa4, 0x4d, 0x34, 0xd7, 0x88, 0x56, 0xba, 0x61, 0x1d, 0xed, 0x7e, 0x75, 0x76, 0x52, + 0x68, 0xda, 0x06, 0x1e, 0xb1, 0x60, 0xa8, 0x1a, 0x86, 0x6e, 0x18, 0xa1, 0x15, 0x66, 0x64, 0x01, + 0x8e, 0x8f, 0x2a, 0x43, 0x0e, 0x42, 0x6c, 0x51, 0x42, 0x1e, 0xc1, 0xd8, 0x12, 0x65, 0x8a, 0xe3, + 0x76, 0xd0, 0x09, 0x23, 0xb4, 0xa9, 0x8c, 0xcd, 0x9f, 0x17, 0x1f, 0xb6, 0x56, 0x22, 0xe6, 0x32, + 0xd7, 0xf6, 0x9a, 0x08, 0xaf, 0x47, 0xac, 0x40, 0xdf, 0xb5, 0x34, 0x7c, 0xa6, 0x15, 0x0b, 0x9a, + 0x15, 0xb7, 0xc9, 0x3e, 0xd5, 0x69, 0x6c, 0x03, 0x6a, 0xc5, 0x62, 0x6d, 0xa8, 0x1f, 0x60, 0x89, + 0xae, 0x15, 0x1b, 0x24, 0xa4, 0x91, 0x32, 0x1e, 0xcf, 0x18, 0x06, 0x42, 0xb3, 0x50, 0x36, 0xf1, + 0x94, 0xa6, 0xe5, 0x8f, 0x61, 0x6c, 0xb1, 0x13, 0x46, 0xfe, 0xe1, 0xf6, 0x01, 0x3d, 0xa4, 0x68, + 0x77, 0x11, 0xba, 0x7f, 0x03, 0xc1, 0xf5, 0x88, 0xc1, 0xf5, 0x6e, 0x6a, 0xe8, 0xe4, 0x73, 0x20, + 0x52, 0x89, 0xbf, 0xcf, 0xe6, 0x87, 0xc7, 0xe6, 0x32, 0x9a, 0x5e, 0x46, 0xb8, 0xe6, 0x2e, 0x75, + 0xff, 0xfa, 0xbe, 0x2a, 0xd6, 0xcd, 0x7f, 0x69, 0x62, 0xd6, 0x20, 0xde, 0xc4, 0xfb, 0x81, 0xd3, + 0x3e, 0x28, 0x97, 0x63, 0x2d, 0x5b, 0x74, 0x6a, 0x9f, 0xc1, 0x0d, 0x6d, 0x21, 0x46, 0x27, 0x35, + 0x00, 0xfe, 0x73, 0x8d, 0x0d, 0x3c, 0x37, 0xd6, 0x94, 0x0d, 0x79, 0xb1, 0x02, 0x29, 0xab, 0xf3, + 0xa8, 0x83, 0x70, 0xb6, 0x2d, 0xd7, 0x18, 0x4d, 0x8d, 0x0d, 0x79, 0x02, 0x25, 0xfe, 0x6b, 0xdd, + 0xf7, 0xdc, 0x88, 0x2f, 0xbd, 0x73, 0x86, 0x65, 0x2f, 0x59, 0x2c, 0x2b, 0x40, 0x8b, 0xaa, 0xa8, + 0xe0, 0x50, 0x95, 0x6a, 0xd5, 0xa4, 0x18, 0x93, 0x2d, 0x18, 0xdb, 0x0a, 0xfc, 0x66, 0xa7, 0x11, + 0xe1, 0x86, 0x7d, 0x01, 0x15, 0x45, 0x22, 0xea, 0xd1, 0x4a, 0xb8, 0x4c, 0xda, 0x1c, 0x50, 0x67, + 0x9b, 0xb9, 0x2e, 0x13, 0x0d, 0x91, 0x2c, 0xc0, 0xd0, 0x96, 0xdf, 0x72, 0x1b, 0xcf, 0xcb, 0x17, + 0xb1, 0xd1, 0xd3, 0x92, 0x19, 0x02, 0x65, 0x53, 0x51, 0x3b, 0x6c, 0x23, 0x48, 0xd7, 0x0e, 0x39, + 0x12, 0xa9, 0xc2, 0xc4, 0xe7, 0x6c, 0xc2, 0xb8, 0xbe, 0xe7, 0x39, 0x6e, 0x40, 0xcb, 0x97, 0x70, + 0x5c, 0xd0, 0xea, 0xfd, 0x13, 0xbd, 0x40, 0x9f, 0xce, 0x06, 0x05, 0x59, 0x85, 0x33, 0xab, 0x61, + 0x2d, 0x0a, 0xdc, 0x36, 0x5d, 0x77, 0x3c, 0x67, 0x9f, 0x36, 0xcb, 0x97, 0x63, 0xb3, 0xb3, 0x1b, + 0xd6, 0x43, 0x2c, 0xab, 0x1f, 0xf2, 0x42, 0xdd, 0xec, 0x9c, 0xa0, 0x23, 0x5f, 0xc0, 0xf4, 0xf2, + 0xb7, 0x11, 0x9b, 0x31, 0xad, 0x6a, 0xa7, 0xe9, 0x46, 0xb5, 0xc8, 0x0f, 0x9c, 0x7d, 0x5a, 0xae, + 0x20, 0xbf, 0xd7, 0x8e, 0x8f, 0x2a, 0x57, 0xa8, 0x28, 0xaf, 0x3b, 0x0c, 0xa1, 0x1e, 0x72, 0x0c, + 0xfd, 0x3a, 0x39, 0x8b, 0x03, 0x93, 0x7e, 0xad, 0xd3, 0x66, 0x8a, 0x2b, 0x4a, 0xff, 0x8a, 0x21, + 0x7d, 0xad, 0x84, 0x4b, 0x3f, 0xe4, 0x80, 0x94, 0xf4, 0x35, 0x44, 0x62, 0x03, 0x79, 0xe0, 0xbb, + 0x5e, 0xb5, 0x11, 0xb9, 0x4f, 0xa9, 0x38, 0xd7, 0x87, 0xe5, 0xab, 0xd8, 0x52, 0x34, 0x91, 0xff, + 0xba, 0xef, 0x7a, 0x75, 0x07, 0x8b, 0xeb, 0xc2, 0x0a, 0x60, 0x98, 0xc8, 0xd3, 0xd4, 0xe4, 0x47, + 0x70, 0x6e, 0xdd, 0xdf, 0x73, 0x5b, 0x94, 0x2f, 0x39, 0x5c, 0x2c, 0x68, 0xee, 0xb3, 0x90, 0x2f, + 0x9a, 0xc8, 0x0f, 0x11, 0xa3, 0x2e, 0x56, 0xab, 0x43, 0x85, 0xa3, 0x9b, 0xc8, 0xb3, 0xb9, 0x90, + 0x65, 0x18, 0xc7, 0xef, 0xb2, 0x85, 0x3f, 0xc3, 0xf2, 0x35, 0x3c, 0x1d, 0x5d, 0x4d, 0x28, 0x3c, + 0x37, 0x97, 0x35, 0x9c, 0x65, 0x2f, 0x0a, 0x9e, 0xdb, 0x06, 0x19, 0xf9, 0x04, 0xe6, 0x92, 0xd3, + 0x7b, 0xd1, 0xf7, 0x1e, 0xbb, 0xfb, 0x9d, 0x80, 0x36, 0xcb, 0xaf, 0xb1, 0xa6, 0xda, 0x5d, 0x30, + 0xe6, 0x1e, 0xc1, 0xd9, 0x54, 0x15, 0xa4, 0x04, 0xfd, 0x4f, 0xc4, 0x8d, 0xe3, 0xa8, 0xcd, 0xfe, + 0x24, 0x6f, 0xc3, 0xe0, 0x53, 0x76, 0x2c, 0x41, 0x8d, 0x21, 0xbe, 0xc3, 0xd2, 0x48, 0x57, 0xbd, + 0xc7, 0xbe, 0xcd, 0x91, 0x3e, 0x2c, 0xbe, 0x5f, 0x78, 0x30, 0x30, 0x32, 0x56, 0x1a, 0xe7, 0x17, + 0xc5, 0x0f, 0x06, 0x46, 0x26, 0x4a, 0x93, 0x56, 0x15, 0xce, 0x24, 0xf0, 0x49, 0x19, 0x86, 0xa9, + 0xc7, 0x54, 0xdd, 0x26, 0xd7, 0x59, 0x6c, 0xf9, 0x93, 0x4c, 0xc3, 0x60, 0xcb, 0x3d, 0x74, 0x23, + 0xac, 0x70, 0xd0, 0xe6, 0x3f, 0xac, 0x3f, 0x2c, 0x00, 0x49, 0x6f, 0x19, 0xe4, 0x56, 0x82, 0x0d, + 0x57, 0xf4, 0x04, 0x48, 0x37, 0x85, 0x4b, 0xee, 0x9f, 0xc3, 0x14, 0x1f, 0x33, 0xb9, 0xb9, 0x69, + 0x75, 0xf1, 0x45, 0x35, 0xa3, 0x58, 0x37, 0x87, 0x88, 0x62, 0xdc, 0x0a, 0xd7, 0xb0, 0x69, 0x1d, + 0x98, 0xc9, 0xdc, 0x2c, 0xc8, 0x3a, 0xcc, 0x1c, 0xfa, 0x5e, 0x74, 0xd0, 0x7a, 0x2e, 0xf7, 0x0a, + 0x51, 0x5b, 0x01, 0x6b, 0xc3, 0xf5, 0x31, 0x13, 0xc1, 0x9e, 0x12, 0x60, 0xc1, 0x11, 0xeb, 0x79, + 0x30, 0x30, 0x52, 0x2c, 0xf5, 0xab, 0x9e, 0x58, 0x36, 0x9c, 0x4d, 0xad, 0xb9, 0xe4, 0x87, 0x30, + 0xde, 0xc0, 0xa3, 0x8c, 0x51, 0x13, 0xdf, 0x71, 0x34, 0xb8, 0xfe, 0x39, 0x71, 0x38, 0xef, 0xca, + 0x3f, 0x28, 0xc0, 0x6c, 0xce, 0x6a, 0x7b, 0x7a, 0x51, 0x7f, 0x09, 0xe7, 0x0e, 0x9d, 0x6f, 0xeb, + 0x01, 0x9e, 0x54, 0xeb, 0x81, 0xe3, 0x25, 0xa4, 0x8d, 0x2b, 0x49, 0x36, 0x86, 0xee, 0xad, 0x73, + 0xe8, 0x7c, 0x6b, 0x23, 0x82, 0xcd, 0xca, 0x79, 0x3b, 0x3f, 0x83, 0x09, 0x63, 0x7d, 0x3d, 0x75, + 0xe3, 0xac, 0x3b, 0x70, 0x96, 0x9d, 0xe5, 0x23, 0x7a, 0x62, 0x0b, 0x95, 0xb5, 0x05, 0x50, 0xa3, + 0x87, 0x4e, 0xfb, 0xc0, 0x67, 0x7a, 0xf7, 0x82, 0xfe, 0x4b, 0x58, 0x38, 0x88, 0xb0, 0x38, 0xa8, + 0x82, 0xdd, 0xbb, 0x5c, 0x17, 0x0f, 0x15, 0xa6, 0xad, 0x51, 0x59, 0x7f, 0x51, 0x04, 0x22, 0x16, + 0xc8, 0x80, 0x3a, 0x87, 0xb2, 0x19, 0x1f, 0xc0, 0x38, 0x3f, 0x8f, 0x72, 0x30, 0x36, 0x67, 0x6c, + 0x7e, 0x4a, 0x7c, 0x79, 0x7a, 0xd1, 0x4a, 0x9f, 0x6d, 0xa0, 0x32, 0x52, 0x9b, 0xf2, 0x83, 0x34, + 0x92, 0x16, 0x0d, 0x52, 0xbd, 0x88, 0x91, 0xea, 0xbf, 0xc9, 0xa7, 0x30, 0xb9, 0xe8, 0x1f, 0xb6, + 0x99, 0x4c, 0x04, 0x71, 0xbf, 0x30, 0x52, 0x88, 0x7a, 0x8d, 0xc2, 0x95, 0x3e, 0x3b, 0x81, 0x4e, + 0x36, 0x60, 0xea, 0x5e, 0xab, 0x13, 0x1e, 0x54, 0xbd, 0xe6, 0x62, 0xcb, 0x0f, 0x25, 0x97, 0x01, + 0x61, 0x24, 0x10, 0xcb, 0x5b, 0x1a, 0x63, 0xa5, 0xcf, 0xce, 0x22, 0x24, 0xaf, 0xc3, 0xe0, 0xf2, + 0x53, 0xb6, 0xec, 0x4a, 0x9f, 0x0d, 0xe1, 0x52, 0xb6, 0xe9, 0xd1, 0xcd, 0xc7, 0x2b, 0x7d, 0x36, + 0x2f, 0x5d, 0x18, 0x85, 0x61, 0x79, 0x96, 0xbd, 0xc5, 0x54, 0x62, 0x25, 0xce, 0x5a, 0xe4, 0x44, + 0x9d, 0x90, 0xcc, 0xc1, 0xc8, 0x4e, 0x9b, 0x1d, 0xb1, 0xa4, 0x11, 0xc0, 0x56, 0xbf, 0xad, 0xb7, + 0x4d, 0x49, 0x93, 0x8b, 0xba, 0xfd, 0x98, 0x23, 0xc7, 0x00, 0x6b, 0xc5, 0x14, 0x6e, 0x77, 0x6c, + 0xa3, 0xde, 0x62, 0xa2, 0xde, 0x52, 0x52, 0xd6, 0xd6, 0x4c, 0xa6, 0xf0, 0xac, 0x2f, 0xe0, 0xf2, + 0x4e, 0x3b, 0xa4, 0x41, 0x54, 0x6d, 0xb7, 0x5b, 0x6e, 0x83, 0xdf, 0xf9, 0xe0, 0x99, 0x57, 0x4e, + 0x96, 0xf7, 0x60, 0x88, 0x03, 0xc4, 0x34, 0x91, 0x73, 0xb0, 0xda, 0x6e, 0x8b, 0x93, 0xf6, 0x5d, + 0xae, 0x9c, 0xf3, 0xb3, 0xb3, 0x2d, 0xb0, 0xad, 0xdf, 0x2b, 0xc0, 0x65, 0xfe, 0x05, 0xe4, 0xb2, + 0xfe, 0x1e, 0x8c, 0xa2, 0x47, 0x57, 0xdb, 0x69, 0xc8, 0x6f, 0x82, 0xbb, 0xb6, 0x49, 0xa0, 0x1d, + 0x97, 0x6b, 0xbe, 0x72, 0xc5, 0x7c, 0x5f, 0x39, 0xf9, 0x81, 0xf5, 0x67, 0x7e, 0x60, 0x9f, 0x83, + 0x25, 0x5a, 0xd4, 0x6a, 0xa5, 0x1a, 0x15, 0xbe, 0x48, 0xab, 0xac, 0xff, 0x54, 0x84, 0xd9, 0xfb, + 0xd4, 0xa3, 0x81, 0x83, 0xfd, 0x34, 0x6c, 0x3a, 0xba, 0xcf, 0x4c, 0xa1, 0xab, 0xcf, 0x4c, 0x45, + 0x5a, 0xc9, 0x8a, 0x68, 0x25, 0x4b, 0x39, 0x00, 0xb1, 0xe3, 0xe2, 0x8e, 0xbd, 0x2a, 0xba, 0x85, + 0xc7, 0xc5, 0x4e, 0xe0, 0xa2, 0x1d, 0x9c, 0xac, 0xc6, 0xfe, 0x36, 0x03, 0x3d, 0xcd, 0x65, 0x53, + 0xc2, 0xff, 0x60, 0x58, 0xf8, 0xdb, 0x98, 0x5e, 0x36, 0x1b, 0x30, 0xc4, 0x8d, 0x7b, 0x78, 0x5b, + 0x33, 0x36, 0x7f, 0x43, 0x7c, 0x53, 0x39, 0x1d, 0x14, 0x96, 0x40, 0xdc, 0xd8, 0xf9, 0x14, 0x88, + 0x10, 0x60, 0x0b, 0x2e, 0x73, 0x9f, 0xc3, 0x98, 0x86, 0x72, 0x92, 0xbd, 0x5f, 0x19, 0x19, 0x99, + 0xc6, 0xe8, 0xed, 0x73, 0x7b, 0xa5, 0xb6, 0xf7, 0x5b, 0x1f, 0x41, 0x39, 0xdd, 0x1a, 0x61, 0x58, + 0xea, 0x65, 0xc7, 0xb2, 0x96, 0x60, 0xfa, 0x3e, 0x8d, 0x70, 0xe2, 0xe2, 0x47, 0xa4, 0xf9, 0x8d, + 0x25, 0xbe, 0x33, 0xb9, 0xaa, 0xca, 0x5b, 0x1d, 0xfd, 0x2b, 0xad, 0xc1, 0x4c, 0x82, 0x8b, 0xa8, + 0xff, 0x43, 0x18, 0x16, 0x20, 0xb5, 0xa2, 0x0a, 0xe7, 0x53, 0xba, 0x27, 0x0a, 0x76, 0xe7, 0xf9, + 0xbc, 0x15, 0x9c, 0x6d, 0x49, 0x60, 0x1d, 0xc0, 0x39, 0xb6, 0xcd, 0xc6, 0x5c, 0xd5, 0x74, 0xbc, + 0x00, 0xa3, 0x6d, 0xa6, 0x28, 0x84, 0xee, 0x4f, 0xf9, 0x34, 0x1a, 0xb4, 0x47, 0x18, 0xa0, 0xe6, + 0xfe, 0x94, 0x92, 0x4b, 0x00, 0x58, 0x88, 0xdd, 0x14, 0xab, 0x00, 0xa2, 0x73, 0xc3, 0x1d, 0x01, + 0xf4, 0x3a, 0xe3, 0xf3, 0xc6, 0xc6, 0xbf, 0xad, 0x00, 0x66, 0x53, 0x35, 0x89, 0x0e, 0xdc, 0x82, + 0x11, 0xa9, 0xc2, 0x26, 0x4c, 0xea, 0x7a, 0x0f, 0x6c, 0x85, 0x44, 0xde, 0x80, 0x33, 0x1e, 0xfd, + 0x36, 0xaa, 0xa7, 0xda, 0x30, 0xc1, 0xc0, 0x5b, 0xb2, 0x1d, 0xd6, 0xaf, 0xa1, 0x19, 0xb5, 0xe6, + 0xf9, 0xcf, 0x1e, 0xb7, 0x9c, 0x27, 0x34, 0x55, 0xf1, 0x0f, 0x61, 0xa4, 0xd6, 0xbb, 0x62, 0xfe, + 0xf9, 0xc8, 0xca, 0x6d, 0x45, 0x62, 0xb5, 0x60, 0x8e, 0x75, 0xa9, 0x56, 0x5d, 0x5f, 0x5b, 0x6d, + 0x6e, 0x7d, 0xd7, 0x02, 0x7c, 0x0a, 0x17, 0x32, 0x6b, 0xfb, 0xae, 0x85, 0xf8, 0x4f, 0x07, 0x60, + 0x96, 0x6f, 0x26, 0xe9, 0x19, 0x7c, 0xf2, 0xa5, 0xe6, 0x57, 0x72, 0x23, 0x79, 0x3b, 0xe3, 0x46, + 0x12, 0x49, 0xf4, 0x1b, 0x49, 0xe3, 0x1e, 0xf2, 0xfd, 0xec, 0x7b, 0x48, 0xb4, 0x13, 0x99, 0xf7, + 0x90, 0xc9, 0xdb, 0xc7, 0xe5, 0xfc, 0xdb, 0x47, 0xbc, 0x66, 0xc9, 0xb8, 0x7d, 0xcc, 0xba, 0x73, + 0x4c, 0xb8, 0xfe, 0x8c, 0xbc, 0x5a, 0xd7, 0x9f, 0x37, 0x60, 0xb8, 0xda, 0x6e, 0x6b, 0xae, 0x74, + 0x38, 0x3c, 0x4e, 0xbb, 0xcd, 0x85, 0x27, 0x0b, 0xe5, 0x3a, 0x0f, 0x19, 0xeb, 0xfc, 0x07, 0x00, + 0x8b, 0xe8, 0xf0, 0x8f, 0x03, 0x37, 0x86, 0x18, 0xa8, 0xe1, 0xf3, 0x67, 0x00, 0x38, 0x70, 0xba, + 0x05, 0x24, 0x46, 0xe6, 0x8a, 0xbd, 0xb5, 0x0b, 0xe5, 0xf4, 0xf4, 0x79, 0x05, 0x4b, 0xd7, 0x9f, + 0x15, 0xe0, 0x92, 0x50, 0x72, 0x12, 0x1f, 0xf8, 0xe9, 0x67, 0xe7, 0xbb, 0x30, 0x2e, 0x68, 0xb7, + 0xe3, 0x0f, 0x81, 0x5f, 0x01, 0xcb, 0xc5, 0x98, 0xaf, 0xe8, 0x06, 0x1a, 0x79, 0x17, 0x46, 0xf0, + 0x8f, 0xf8, 0x1a, 0x84, 0x49, 0x66, 0x14, 0x51, 0xeb, 0xc9, 0xcb, 0x10, 0x85, 0x6a, 0x7d, 0x03, + 0x97, 0xf3, 0x1a, 0xfe, 0x0a, 0xe4, 0xf2, 0xcf, 0x0a, 0x70, 0x41, 0xb0, 0x37, 0x96, 0x8a, 0x17, + 0xda, 0x75, 0x4e, 0xe1, 0x80, 0xfb, 0x00, 0xc6, 0x58, 0x85, 0xb2, 0xdd, 0xfd, 0x62, 0x6b, 0x15, + 0x27, 0x87, 0xb8, 0x64, 0xc9, 0x89, 0x1c, 0xe1, 0x50, 0xe2, 0x1c, 0xb6, 0xa4, 0xf1, 0xc2, 0xd6, + 0x89, 0xad, 0xaf, 0xe0, 0x62, 0x76, 0x17, 0x5e, 0x81, 0x7c, 0x1e, 0xc0, 0x5c, 0xc6, 0xa6, 0xf0, + 0x62, 0x7b, 0xf2, 0x97, 0x70, 0x21, 0x93, 0xd7, 0x2b, 0x68, 0xe6, 0x0a, 0xd3, 0x38, 0xa2, 0x57, + 0x30, 0x84, 0xd6, 0x23, 0x38, 0x9f, 0xc1, 0xe9, 0x15, 0x34, 0xf1, 0x3e, 0xcc, 0x2a, 0x4d, 0xfb, + 0xa5, 0x5a, 0xb8, 0x0e, 0x97, 0x38, 0xa3, 0x57, 0x33, 0x2a, 0x0f, 0xe1, 0x82, 0x60, 0xf7, 0x0a, + 0xa4, 0xb7, 0x02, 0x17, 0xe3, 0x03, 0x75, 0x86, 0x9e, 0x74, 0xe2, 0x45, 0xc6, 0x5a, 0x83, 0x2b, + 0x31, 0xa7, 0x1c, 0xa5, 0xe1, 0xe4, 0xdc, 0xb8, 0x3a, 0x18, 0x8f, 0xd2, 0x2b, 0x19, 0xd1, 0x47, + 0x70, 0xce, 0x60, 0xfa, 0xca, 0x54, 0xa5, 0x55, 0x98, 0xe2, 0x8c, 0x4d, 0xd5, 0x79, 0x5e, 0x57, + 0x9d, 0xc7, 0xe6, 0xcf, 0xc6, 0x2c, 0x11, 0xbc, 0x7b, 0x37, 0x43, 0x9b, 0x5e, 0x47, 0x6d, 0x5a, + 0xa2, 0xc4, 0x2d, 0x7c, 0x17, 0x86, 0x38, 0x44, 0xb4, 0x2f, 0x83, 0x19, 0x3f, 0x2c, 0x70, 0x32, + 0x81, 0x6c, 0xfd, 0x08, 0x2e, 0xf1, 0x93, 0x68, 0x7c, 0x97, 0x68, 0x9e, 0x16, 0x7f, 0x98, 0x38, + 0x88, 0x9e, 0x17, 0x7c, 0x93, 0xf8, 0x39, 0xe7, 0xd1, 0x3d, 0x39, 0xb7, 0xf3, 0xf8, 0x9f, 0xe8, + 0x31, 0x96, 0x3c, 0x60, 0x16, 0x33, 0x0f, 0x98, 0xd7, 0xe0, 0xaa, 0x3a, 0x60, 0x26, 0xab, 0x91, + 0x53, 0xcb, 0xfa, 0x0a, 0x2e, 0xf0, 0x8e, 0x4a, 0x27, 0x39, 0xb3, 0x19, 0x1f, 0x25, 0xba, 0x39, + 0x2b, 0xba, 0x69, 0x62, 0xe7, 0x74, 0xf2, 0x7f, 0x2f, 0xc8, 0x4f, 0x2e, 0x9b, 0xf9, 0xaf, 0xfa, + 0xc4, 0xbd, 0x01, 0x15, 0x25, 0x10, 0xb3, 0x45, 0x2f, 0x76, 0xdc, 0x5e, 0x87, 0x19, 0x9d, 0x8d, + 0xdb, 0xa0, 0xbb, 0x77, 0xf0, 0x92, 0xe7, 0x1d, 0xf6, 0x59, 0x20, 0x40, 0x4e, 0xbb, 0x72, 0x86, + 0xdc, 0x10, 0xdf, 0x56, 0x98, 0x56, 0x1d, 0x2e, 0xa6, 0x87, 0xc2, 0x6d, 0x48, 0x0f, 0x79, 0xf2, + 0x29, 0xfb, 0x84, 0x11, 0x22, 0x06, 0x23, 0x97, 0xa9, 0xfc, 0x8e, 0x39, 0xb9, 0xa4, 0xb2, 0x2c, + 0xb9, 0xd4, 0x24, 0xfa, 0xcf, 0x6a, 0x97, 0xf3, 0xe1, 0x37, 0x81, 0xc8, 0xa2, 0xc5, 0x9a, 0x2d, + 0xab, 0x3e, 0x0f, 0xfd, 0x8b, 0x35, 0x5b, 0x3c, 0xcd, 0x41, 0x4d, 0xb0, 0x11, 0x06, 0x36, 0x83, + 0x25, 0x35, 0xf2, 0xe2, 0x09, 0x34, 0xf2, 0x07, 0x03, 0x23, 0xfd, 0xa5, 0x01, 0x9b, 0xd4, 0xdc, + 0x7d, 0xef, 0x91, 0x1b, 0x1d, 0xa8, 0x0a, 0xab, 0xd6, 0xd7, 0x30, 0x65, 0x54, 0x2f, 0xbe, 0xe2, + 0xae, 0x6f, 0x8a, 0x98, 0x3e, 0xbb, 0x58, 0x45, 0x27, 0x12, 0x34, 0x59, 0x8c, 0xf3, 0xf5, 0xa6, + 0xe1, 0xd4, 0xf1, 0xc1, 0xaa, 0x2d, 0x0b, 0xad, 0xff, 0x7f, 0x40, 0xe3, 0xae, 0xbd, 0xd4, 0xea, + 0xd2, 0xbb, 0x3b, 0x00, 0x7c, 0x86, 0x68, 0x9d, 0x63, 0x0a, 0xe0, 0x98, 0xf0, 0xcd, 0xe0, 0x4b, + 0xb2, 0xad, 0x21, 0x9d, 0xf4, 0x25, 0x97, 0xf0, 0xa8, 0xe5, 0x44, 0xf2, 0xf1, 0xa2, 0xf2, 0xa8, + 0x15, 0xac, 0x43, 0x5b, 0x47, 0x22, 0x3f, 0x4a, 0x3e, 0x37, 0x18, 0xc4, 0x3b, 0xa5, 0xd7, 0xe4, + 0x25, 0x73, 0xba, 0x6f, 0xa7, 0x7b, 0x71, 0xf0, 0x0c, 0x66, 0x18, 0xad, 0xfb, 0x18, 0x0f, 0x16, + 0xcb, 0xdf, 0x46, 0xd4, 0xe3, 0x6b, 0xfb, 0x10, 0xd6, 0xf3, 0x7a, 0x97, 0x7a, 0x62, 0x64, 0x61, + 0x7f, 0x8f, 0xf9, 0xd4, 0xa9, 0x2a, 0xb3, 0xb3, 0xf9, 0xe3, 0x24, 0xb2, 0xd7, 0x96, 0xbd, 0x66, + 0xdb, 0x77, 0xd5, 0x81, 0x89, 0x4f, 0xa2, 0xa0, 0x55, 0xa7, 0x02, 0x6e, 0xeb, 0x48, 0xd6, 0x1b, + 0x5d, 0xfd, 0xb4, 0x47, 0x60, 0x60, 0x7b, 0x71, 0x7b, 0xad, 0x54, 0xb0, 0x6e, 0x01, 0x68, 0x35, + 0x01, 0x0c, 0x6d, 0x6c, 0xda, 0xeb, 0xd5, 0xb5, 0x52, 0x1f, 0x99, 0x81, 0xb3, 0x8f, 0x56, 0x37, + 0x96, 0x36, 0x1f, 0xd5, 0xea, 0xb5, 0xf5, 0xaa, 0xbd, 0xbd, 0x58, 0xb5, 0x97, 0x4a, 0x05, 0xeb, + 0x1b, 0x98, 0x36, 0x7b, 0xf8, 0x4a, 0x27, 0x61, 0x04, 0x53, 0x4a, 0x9f, 0x79, 0xf0, 0x68, 0x5b, + 0xf3, 0xdf, 0x14, 0x87, 0xbf, 0xa4, 0x1f, 0x92, 0x38, 0x26, 0x8a, 0xcf, 0x48, 0x43, 0x22, 0x6f, + 0x71, 0xb5, 0x20, 0xf9, 0x16, 0x97, 0xa9, 0x05, 0xf5, 0x58, 0x2f, 0xc0, 0xa5, 0xef, 0x07, 0x30, + 0x6d, 0xd6, 0x7a, 0x52, 0x2b, 0xd5, 0x6b, 0xe8, 0xd8, 0xaa, 0x3d, 0xd4, 0x21, 0x44, 0xbf, 0x36, + 0x10, 0x2b, 0xeb, 0x0f, 0xa0, 0x24, 0xb0, 0xe2, 0x9d, 0xf7, 0x9a, 0x34, 0x23, 0x16, 0x32, 0x9e, + 0x15, 0x4a, 0x37, 0x6b, 0x1f, 0x4a, 0x6c, 0xc5, 0x14, 0x94, 0xbc, 0x82, 0x69, 0x18, 0x5c, 0x8b, + 0xaf, 0x73, 0x6c, 0xfe, 0x03, 0xdf, 0xab, 0x44, 0x4e, 0x10, 0x49, 0xaf, 0xaf, 0x51, 0x5b, 0xfd, + 0x26, 0x6f, 0xc1, 0xd0, 0x3d, 0xb7, 0x15, 0x09, 0xd3, 0x48, 0xbc, 0xc9, 0x33, 0xb6, 0xbc, 0xc0, + 0x16, 0x08, 0x96, 0x0d, 0x67, 0xb5, 0x0a, 0x4f, 0xd1, 0x54, 0x52, 0x86, 0xe1, 0x0d, 0xfa, 0xad, + 0x56, 0xbf, 0xfc, 0x69, 0xbd, 0x07, 0x67, 0x85, 0x47, 0x9d, 0x26, 0xa6, 0xab, 0xe2, 0xf5, 0x73, + 0xc1, 0x78, 0x82, 0x29, 0x58, 0x62, 0x11, 0xa3, 0xdb, 0x69, 0x37, 0x5f, 0x90, 0x8e, 0x6d, 0x14, + 0xa7, 0xa4, 0x7b, 0x53, 0xde, 0x02, 0xf5, 0x1a, 0xce, 0xbf, 0x28, 0x40, 0x39, 0x61, 0x65, 0x58, + 0x3c, 0x70, 0x5a, 0x2d, 0xea, 0xed, 0x53, 0x72, 0x1d, 0x06, 0xb6, 0x37, 0xb7, 0xb7, 0x84, 0x95, + 0x54, 0x3a, 0x00, 0x30, 0x90, 0xc2, 0xb1, 0x11, 0x83, 0x3c, 0x84, 0xb3, 0xd2, 0x67, 0x56, 0x15, + 0x89, 0x11, 0xba, 0xd4, 0xdd, 0x03, 0x37, 0x4d, 0x47, 0xde, 0x11, 0x26, 0x91, 0x9f, 0x74, 0xdc, + 0x80, 0x36, 0xd1, 0xf2, 0x13, 0xdf, 0xa6, 0x6b, 0x25, 0xb6, 0x8e, 0xc6, 0xdf, 0xaa, 0x5a, 0x7f, + 0x50, 0x80, 0xd9, 0x1c, 0xab, 0x09, 0x79, 0xcb, 0xe8, 0xce, 0x94, 0xd6, 0x1d, 0x89, 0xb2, 0xd2, + 0x27, 0xfa, 0xb3, 0xa8, 0x39, 0x12, 0xf7, 0x9f, 0xc2, 0x91, 0x78, 0xa5, 0x2f, 0x76, 0x1e, 0x5e, + 0x00, 0x18, 0x91, 0x70, 0xeb, 0x0c, 0x4c, 0x18, 0x72, 0xb3, 0x2c, 0x18, 0xd7, 0x6b, 0x66, 0x83, + 0xb3, 0xe8, 0x37, 0xd5, 0xe0, 0xb0, 0xbf, 0xad, 0xdf, 0x2f, 0xc0, 0x34, 0x76, 0x71, 0xdf, 0x65, + 0x4b, 0x5f, 0x2c, 0xa1, 0x79, 0xa3, 0x27, 0x17, 0x8d, 0x9e, 0x24, 0x70, 0x55, 0x97, 0x3e, 0x4c, + 0x75, 0xe9, 0x62, 0x56, 0x97, 0x70, 0x7a, 0xbb, 0xbe, 0x67, 0xf4, 0x44, 0xbb, 0x8a, 0xfa, 0xc3, + 0x02, 0x4c, 0x69, 0x6d, 0x52, 0xed, 0xbf, 0x63, 0x34, 0xe9, 0x42, 0x46, 0x93, 0x52, 0x42, 0x5e, + 0x48, 0xb5, 0xe8, 0xb5, 0x6e, 0x2d, 0xea, 0x29, 0xe3, 0xff, 0x50, 0x80, 0x99, 0x4c, 0x19, 0x90, + 0x73, 0x4c, 0xb7, 0x6d, 0x04, 0x34, 0x12, 0xe2, 0x15, 0xbf, 0x18, 0x7c, 0x35, 0x0c, 0x3b, 0x34, + 0x10, 0xdf, 0xb9, 0xf8, 0x45, 0x5e, 0x83, 0x89, 0x2d, 0x1a, 0xb8, 0x7e, 0x93, 0xbb, 0x98, 0x73, + 0xdf, 0xcd, 0x09, 0xdb, 0x04, 0x92, 0x8b, 0x30, 0x5a, 0x6d, 0xed, 0xfb, 0x81, 0x1b, 0x1d, 0xf0, + 0xdb, 0xc0, 0x51, 0x3b, 0x06, 0x30, 0xde, 0x4b, 0xee, 0x3e, 0xbf, 0xd4, 0x60, 0xc4, 0xe2, 0x17, + 0x5b, 0x5c, 0xa4, 0xb5, 0x70, 0x88, 0x2f, 0x2e, 0xd2, 0x14, 0x78, 0x0e, 0x86, 0x3e, 0xb7, 0x71, + 0x12, 0x60, 0x84, 0x00, 0x5b, 0xfc, 0x22, 0x93, 0xe8, 0x24, 0x8c, 0xaf, 0x12, 0xd0, 0x39, 0xf8, + 0x43, 0x98, 0xce, 0x92, 0x6b, 0xd6, 0x14, 0x12, 0xb4, 0x45, 0x45, 0xfb, 0x15, 0x4c, 0x55, 0x9b, + 0xcd, 0xf5, 0x7b, 0x55, 0xee, 0x73, 0x20, 0x46, 0x95, 0x7f, 0x3c, 0xdc, 0x5e, 0x27, 0x54, 0xb6, + 0x81, 0x55, 0xcf, 0x8d, 0xec, 0xa9, 0xe5, 0x6f, 0xdd, 0x30, 0x72, 0xbd, 0x7d, 0xcd, 0xa8, 0x68, + 0x9f, 0xdb, 0xa0, 0xcf, 0x32, 0xa6, 0x00, 0xdb, 0x4d, 0x4d, 0xde, 0x1c, 0x9e, 0xc1, 0x7c, 0x5a, + 0x63, 0x1b, 0x2f, 0x25, 0xb3, 0x26, 0xdf, 0xb8, 0xa0, 0xbf, 0xda, 0x78, 0x62, 0xfd, 0x00, 0xce, + 0xf1, 0x25, 0xad, 0x5b, 0xe3, 0x45, 0xb3, 0x75, 0x1b, 0xa8, 0xf5, 0xbe, 0xb4, 0x52, 0x74, 0x6d, + 0x99, 0x3d, 0x6e, 0xb4, 0x05, 0xab, 0xfc, 0x8f, 0x05, 0x98, 0x4b, 0x90, 0xd6, 0x9e, 0x7b, 0x0d, + 0xb9, 0x9e, 0xbe, 0x91, 0x74, 0xc2, 0x46, 0x3d, 0x80, 0x1b, 0xff, 0xdc, 0xa6, 0xf2, 0xc3, 0x26, + 0xb7, 0x00, 0x38, 0xb1, 0xb6, 0x7d, 0xa3, 0xe9, 0x5b, 0x38, 0xd9, 0xe0, 0x06, 0xae, 0xa1, 0x90, + 0x0e, 0x64, 0xc9, 0x5d, 0x7c, 0x23, 0xbd, 0x6c, 0xc3, 0x18, 0x15, 0x83, 0x0a, 0xf2, 0x7a, 0x8e, + 0x91, 0x38, 0x8b, 0xbf, 0xf5, 0x7f, 0xf4, 0xc3, 0xac, 0x3e, 0x80, 0x2f, 0xd2, 0xd7, 0x2d, 0x18, + 0x5b, 0xf4, 0xbd, 0x88, 0x7e, 0x1b, 0x69, 0x51, 0x09, 0x88, 0xba, 0x69, 0x57, 0x25, 0x42, 0x75, + 0xe4, 0x80, 0x3a, 0xd3, 0x63, 0x0c, 0x67, 0xc1, 0x18, 0x91, 0x2c, 0xc2, 0xc4, 0x06, 0x7d, 0x96, + 0x12, 0x20, 0x3a, 0x2c, 0x7a, 0xf4, 0x59, 0x5d, 0x13, 0xa2, 0xee, 0x45, 0x66, 0xd0, 0x90, 0x3d, + 0x98, 0x94, 0x93, 0xcb, 0x10, 0xe6, 0x9c, 0xbe, 0xab, 0x98, 0xd3, 0x99, 0xbf, 0xda, 0x67, 0x35, + 0xe4, 0xc8, 0x30, 0xc1, 0x91, 0x75, 0x9d, 0xd7, 0xc8, 0x1f, 0xa2, 0x9b, 0xdb, 0x96, 0x56, 0x62, + 0xb8, 0x83, 0x26, 0x1f, 0xa0, 0xeb, 0x2c, 0xac, 0x2d, 0x28, 0xa7, 0xc7, 0x43, 0xd4, 0xf6, 0x0e, + 0x0c, 0x71, 0xa8, 0x50, 0x03, 0x64, 0xc0, 0x19, 0x85, 0xcd, 0xcf, 0xe9, 0xbc, 0x1a, 0x5b, 0xe0, + 0x5a, 0x2b, 0x68, 0x3b, 0x51, 0x38, 0x4a, 0x11, 0xbb, 0x9d, 0x1c, 0x5e, 0xf4, 0xb4, 0x95, 0xc3, + 0xab, 0xfb, 0x99, 0xc8, 0xc7, 0x05, 0x8b, 0x68, 0x7e, 0xd2, 0x39, 0x89, 0x86, 0xdd, 0x80, 0x61, + 0x01, 0x4a, 0x84, 0xc2, 0x89, 0x3f, 0x3f, 0x89, 0x60, 0x7d, 0x08, 0xe7, 0xd1, 0x16, 0xe6, 0x7a, + 0xfb, 0x2d, 0xba, 0x13, 0x1a, 0xcf, 0x03, 0x7a, 0x7d, 0xd6, 0x1f, 0xc3, 0x5c, 0x16, 0x6d, 0xcf, + 0x2f, 0x9b, 0x07, 0xa7, 0xf8, 0xeb, 0x22, 0x4c, 0xaf, 0x86, 0xba, 0x32, 0xa1, 0x02, 0x54, 0x64, + 0x04, 0x4d, 0x40, 0x99, 0xac, 0xf4, 0x65, 0x05, 0x45, 0x78, 0x47, 0x7b, 0x9c, 0x58, 0xec, 0x16, + 0x0d, 0x81, 0x6d, 0x5b, 0xea, 0x79, 0xe2, 0x1b, 0x30, 0xb0, 0xc1, 0x96, 0xea, 0x7e, 0x31, 0x76, + 0x9c, 0x82, 0x81, 0xf0, 0x71, 0x20, 0xdb, 0x22, 0xd9, 0x0f, 0x72, 0x2f, 0xf5, 0x04, 0x71, 0xa0, + 0xf7, 0x6b, 0xff, 0x95, 0xbe, 0xd4, 0x6b, 0xc4, 0xf7, 0x60, 0xac, 0xda, 0x3c, 0xe4, 0x1e, 0x81, + 0xbe, 0x97, 0xf8, 0x2c, 0xb5, 0x92, 0x95, 0x3e, 0x5b, 0x47, 0x64, 0x27, 0xdc, 0x6a, 0xbb, 0x8d, + 0x1b, 0x55, 0x56, 0x04, 0x84, 0x95, 0x3e, 0x74, 0xb0, 0x5f, 0x18, 0x81, 0xa1, 0x6d, 0x27, 0xd8, + 0xa7, 0x91, 0xf5, 0x15, 0xcc, 0x09, 0x27, 0x15, 0x6e, 0xf9, 0x43, 0x57, 0x96, 0x30, 0xf6, 0x43, + 0xea, 0xe6, 0x58, 0x72, 0x19, 0x00, 0xf5, 0xfc, 0x55, 0xaf, 0x49, 0xbf, 0x15, 0x5e, 0x72, 0x1a, + 0xc4, 0x7a, 0x17, 0x46, 0x95, 0x84, 0x50, 0x99, 0xd5, 0x36, 0x3b, 0x94, 0xd6, 0xb4, 0xf1, 0xe6, + 0x52, 0x3e, 0xb4, 0x3c, 0x6f, 0xf4, 0x5d, 0xc4, 0x34, 0xe1, 0xda, 0xaf, 0x0b, 0x33, 0x89, 0x49, + 0x10, 0x3f, 0x99, 0x57, 0xfa, 0x27, 0x77, 0xe3, 0x53, 0xbf, 0x93, 0xea, 0x69, 0xf1, 0x44, 0xea, + 0xa9, 0xf5, 0x8f, 0x8a, 0x78, 0x70, 0x4a, 0xc9, 0x23, 0x61, 0x83, 0xd2, 0xed, 0x60, 0x0b, 0x30, + 0x8a, 0xbd, 0x5f, 0x92, 0x4f, 0xbf, 0xba, 0xfb, 0x58, 0x8c, 0xfc, 0xfc, 0xa8, 0xd2, 0x87, 0x8e, + 0x15, 0x31, 0x19, 0xf9, 0x04, 0x86, 0x97, 0xbd, 0x26, 0x72, 0xe8, 0x3f, 0x05, 0x07, 0x49, 0xc4, + 0xc6, 0x04, 0x9b, 0xbc, 0xcd, 0x3e, 0x61, 0x6e, 0xba, 0xb0, 0x35, 0x48, 0x7c, 0x82, 0x1b, 0xcc, + 0x3b, 0xc1, 0x0d, 0x25, 0x4e, 0x70, 0x16, 0x0c, 0x6e, 0x06, 0x4d, 0x11, 0x89, 0x64, 0x72, 0x7e, + 0x5c, 0x08, 0x0e, 0x61, 0x36, 0x2f, 0xb2, 0xfe, 0x73, 0x01, 0x66, 0xef, 0xd3, 0x28, 0x73, 0x0e, + 0x19, 0x52, 0x29, 0xbc, 0xb4, 0x54, 0x8a, 0x2f, 0x22, 0x15, 0xd5, 0xeb, 0xfe, 0xbc, 0x5e, 0x0f, + 0xe4, 0xf5, 0x7a, 0x30, 0xbf, 0xd7, 0xf7, 0x61, 0x88, 0x77, 0x95, 0x9d, 0x52, 0x57, 0x23, 0x7a, + 0x18, 0x9f, 0x52, 0x75, 0x0f, 0x31, 0x9b, 0x97, 0x31, 0x45, 0x72, 0xcd, 0x09, 0xf5, 0x53, 0xaa, + 0xf8, 0x69, 0xfd, 0x18, 0x1f, 0x8d, 0xae, 0xf9, 0x8d, 0x27, 0x9a, 0xb5, 0x73, 0x98, 0x7f, 0xa1, + 0x49, 0xeb, 0x38, 0xc3, 0xe2, 0x25, 0xb6, 0xc4, 0x20, 0x57, 0x60, 0x6c, 0xd5, 0xbb, 0xe7, 0x07, + 0x0d, 0xba, 0xe9, 0xb5, 0x38, 0xf7, 0x11, 0x5b, 0x07, 0x09, 0x2b, 0x80, 0xa8, 0x21, 0x3e, 0x5a, + 0x23, 0x20, 0x71, 0xb4, 0x66, 0xb0, 0xdd, 0x79, 0x9b, 0x97, 0x09, 0x23, 0x03, 0xfb, 0xbb, 0xdb, + 0xa9, 0x54, 0x1d, 0x5f, 0x7b, 0x21, 0xee, 0xc1, 0x79, 0x9b, 0xb6, 0x5b, 0x0e, 0xd3, 0xe9, 0x0e, + 0x7d, 0x8e, 0xaf, 0xfa, 0x7c, 0x25, 0xe3, 0xc1, 0x97, 0xe9, 0x2f, 0xa0, 0x9a, 0x5c, 0xec, 0xd2, + 0xe4, 0x43, 0xb8, 0x7a, 0x9f, 0x46, 0xe6, 0x82, 0x1a, 0xdb, 0x52, 0x45, 0xe7, 0x57, 0x60, 0x24, + 0x34, 0xed, 0xc0, 0x97, 0xe5, 0xf5, 0x43, 0x16, 0xe1, 0xee, 0x5d, 0x79, 0x53, 0x22, 0xf8, 0xa8, + 0xbf, 0xac, 0x4f, 0xa1, 0x92, 0x57, 0xdd, 0xc9, 0xdc, 0x39, 0x5d, 0xb8, 0x92, 0xcf, 0x40, 0x34, + 0x77, 0x19, 0xa4, 0xcd, 0x58, 0x7c, 0x42, 0xbd, 0x5a, 0x6b, 0x9a, 0x99, 0xc5, 0x1f, 0xd6, 0x82, + 0x74, 0x6c, 0x7b, 0x89, 0xe6, 0xd6, 0xf1, 0x3a, 0xd6, 0x64, 0x10, 0xcb, 0xb5, 0x0a, 0x23, 0x12, + 0x26, 0xe4, 0x3a, 0x9b, 0xd9, 0x52, 0x29, 0xd0, 0xa6, 0x64, 0xa0, 0xc8, 0xac, 0x1f, 0xcb, 0xab, + 0x09, 0x93, 0xe2, 0x64, 0x2f, 0x20, 0x4f, 0x72, 0x17, 0x61, 0xf9, 0x70, 0xde, 0xe4, 0xad, 0x9b, + 0x9c, 0x4b, 0x9a, 0xc9, 0x99, 0x5b, 0x9a, 0xaf, 0x98, 0x26, 0xd0, 0xa2, 0x98, 0x97, 0x31, 0x88, + 0x5c, 0xd6, 0x0d, 0xcb, 0xe3, 0xe9, 0x27, 0x95, 0xb7, 0x61, 0x2e, 0xab, 0x42, 0xed, 0x1c, 0xa8, + 0xac, 0x97, 0x42, 0xdf, 0x59, 0x82, 0xcb, 0x32, 0x16, 0x90, 0xef, 0x47, 0x61, 0x14, 0x38, 0xed, + 0x5a, 0x23, 0x70, 0xdb, 0x31, 0x95, 0x05, 0x43, 0x1c, 0x22, 0x24, 0xc1, 0xaf, 0x79, 0x38, 0x8e, + 0x28, 0xb1, 0x7e, 0xbb, 0x00, 0x96, 0xe1, 0x83, 0x84, 0xe3, 0xbc, 0x15, 0xf8, 0x4f, 0xdd, 0xa6, + 0x76, 0xb5, 0xf2, 0x96, 0x61, 0xd6, 0xe3, 0x4f, 0xe2, 0x92, 0xee, 0xcf, 0x62, 0xcd, 0xbc, 0x9d, + 0x30, 0xb5, 0x71, 0xc5, 0x13, 0xfd, 0x92, 0xcc, 0xa0, 0x2b, 0xca, 0x04, 0xf7, 0x5f, 0x0b, 0x70, + 0xad, 0x6b, 0x1b, 0x44, 0x7f, 0xf6, 0xa0, 0x94, 0x2c, 0x13, 0x33, 0xa8, 0xa2, 0xf9, 0x24, 0xa4, + 0x39, 0xec, 0xde, 0xe1, 0x3e, 0xd6, 0xd2, 0x77, 0xa7, 0xad, 0x38, 0xa7, 0xf8, 0x9d, 0xbe, 0xf5, + 0xe4, 0x03, 0x80, 0x6d, 0x3f, 0x72, 0x5a, 0x8b, 0x68, 0x00, 0xe8, 0x8f, 0xfd, 0xe5, 0x23, 0x06, + 0xad, 0x27, 0x83, 0x14, 0x68, 0xc8, 0xd6, 0x67, 0xf8, 0x5d, 0x67, 0x37, 0xfa, 0x64, 0x9f, 0xda, + 0x22, 0x5c, 0x4b, 0xdc, 0x8b, 0xbf, 0x00, 0x93, 0x08, 0x66, 0x98, 0xf8, 0x99, 0xee, 0x7d, 0x3f, + 0xf0, 0x3b, 0xed, 0x5f, 0xcd, 0xa8, 0xff, 0x79, 0x81, 0x3b, 0x2a, 0xea, 0xd5, 0x8a, 0x81, 0x5e, + 0x04, 0x88, 0xa1, 0x09, 0x87, 0x75, 0x55, 0xb0, 0x7b, 0x87, 0x1f, 0xb9, 0xd1, 0x62, 0xbe, 0xcf, + 0x19, 0x68, 0x64, 0xbf, 0xda, 0x91, 0xbc, 0x8b, 0x97, 0xe1, 0xaa, 0xf6, 0x93, 0xc9, 0xfd, 0x3d, + 0x69, 0xff, 0x38, 0x25, 0xdd, 0x01, 0x4c, 0xb3, 0x15, 0xa0, 0xda, 0x89, 0x0e, 0xfc, 0xc0, 0x8d, + 0xe4, 0xd3, 0x0b, 0xb2, 0x25, 0xde, 0x76, 0x73, 0xaa, 0x8f, 0x7f, 0x79, 0x54, 0x79, 0xff, 0x34, + 0x51, 0x1a, 0x25, 0xcf, 0x6d, 0xf5, 0x1e, 0xdc, 0x9a, 0x85, 0xfe, 0x45, 0x7b, 0x0d, 0x17, 0x3c, + 0x7b, 0x4d, 0x2d, 0x78, 0xf6, 0x9a, 0xf5, 0xb7, 0x45, 0xa8, 0xf0, 0xe8, 0x13, 0xe8, 0x43, 0x11, + 0x5b, 0x2d, 0x34, 0xa7, 0x8c, 0x93, 0x1a, 0x18, 0x12, 0xd1, 0x25, 0x8a, 0x27, 0x89, 0x2e, 0xf1, + 0x1b, 0x90, 0x63, 0xb2, 0x3a, 0x81, 0x15, 0xe0, 0xcd, 0xe3, 0xa3, 0xca, 0xb5, 0xd8, 0x0a, 0xc0, + 0x4b, 0xb3, 0xcc, 0x01, 0x39, 0x55, 0xa4, 0xed, 0x17, 0x03, 0x2f, 0x60, 0xbf, 0xb8, 0x0d, 0xc3, + 0x78, 0x98, 0x59, 0xdd, 0x12, 0x5e, 0x8d, 0x38, 0x3d, 0x31, 0x9e, 0x4c, 0xdd, 0xd5, 0x83, 0xb7, + 0x49, 0x34, 0xeb, 0xff, 0x2e, 0xc2, 0x95, 0x7c, 0x99, 0x8b, 0xb6, 0x2d, 0x01, 0xc4, 0xde, 0x1b, + 0xdd, 0xbc, 0x45, 0xf0, 0xdb, 0x79, 0x46, 0xf7, 0x94, 0xb7, 0x96, 0x46, 0xc7, 0x74, 0x1f, 0xf9, + 0xd0, 0x37, 0x71, 0x55, 0x60, 0xbc, 0xff, 0x15, 0xb1, 0x47, 0x05, 0xc8, 0x88, 0x3d, 0x2a, 0x60, + 0x64, 0x0f, 0x66, 0xb7, 0x02, 0xf7, 0xa9, 0x13, 0xd1, 0x87, 0xf4, 0x39, 0x7f, 0x08, 0xb3, 0x2c, + 0x5e, 0xbf, 0xf0, 0xd7, 0xdb, 0xd7, 0x8f, 0x8f, 0x2a, 0xaf, 0xb5, 0x39, 0x0a, 0xc6, 0x97, 0xe2, + 0x4f, 0x0f, 0xeb, 0xe9, 0x07, 0x31, 0x79, 0x8c, 0xac, 0x7f, 0x59, 0x80, 0x0b, 0xa8, 0x96, 0x0b, + 0xb3, 0xab, 0xac, 0xfc, 0x85, 0x9c, 0x06, 0xf5, 0x0e, 0x8a, 0xb9, 0x88, 0x4e, 0x83, 0xc6, 0x43, + 0x68, 0xdb, 0x40, 0x23, 0xab, 0x30, 0x26, 0x7e, 0xe3, 0xf7, 0xd7, 0x8f, 0x07, 0x82, 0x19, 0x6d, + 0xc1, 0xc2, 0xa9, 0xce, 0x4d, 0x45, 0x38, 0xb1, 0x05, 0x33, 0x7c, 0x2f, 0x68, 0xeb, 0xb4, 0xd6, + 0x2f, 0x8a, 0x70, 0x71, 0x97, 0x06, 0xee, 0xe3, 0xe7, 0x39, 0x9d, 0xd9, 0x84, 0x69, 0x09, 0xe2, + 0x11, 0x28, 0x8c, 0x4f, 0x8c, 0x47, 0x1f, 0x94, 0x4d, 0x15, 0x21, 0x2c, 0xe4, 0x17, 0x97, 0x49, + 0x78, 0x0a, 0x77, 0xc0, 0x77, 0x60, 0x24, 0x11, 0x03, 0x06, 0xc7, 0x5f, 0x7e, 0xa1, 0xf1, 0x50, + 0xad, 0xf4, 0xd9, 0x0a, 0x93, 0xfc, 0x4e, 0xfe, 0xfd, 0x8d, 0x30, 0x7d, 0xf4, 0xb2, 0x7f, 0xe2, + 0x07, 0xcb, 0x3e, 0x56, 0x47, 0x2b, 0xcd, 0xf8, 0x60, 0x57, 0xfa, 0xec, 0xbc, 0x9a, 0x16, 0xc6, + 0x60, 0xb4, 0x8a, 0x77, 0x52, 0xec, 0xe4, 0xfe, 0x5f, 0x8a, 0x70, 0x59, 0x3e, 0x6a, 0xc9, 0x11, + 0xf3, 0x17, 0x30, 0x2b, 0x41, 0xd5, 0x36, 0x53, 0x18, 0x68, 0xd3, 0x94, 0x34, 0x8f, 0x00, 0x2a, + 0x25, 0xed, 0x08, 0x9c, 0x58, 0xd8, 0x79, 0xe4, 0xaf, 0xc6, 0xfa, 0xf9, 0x49, 0x56, 0x44, 0x1e, + 0xb4, 0x42, 0xea, 0x6b, 0xa6, 0x21, 0x1a, 0x63, 0xfd, 0x6c, 0xa6, 0xac, 0xa7, 0x03, 0x2f, 0x6b, + 0x3d, 0x5d, 0xe9, 0x4b, 0xda, 0x4f, 0x17, 0x26, 0x61, 0x7c, 0x83, 0x3e, 0x8b, 0xe5, 0xfe, 0xbf, + 0x16, 0x12, 0x91, 0x06, 0x98, 0x86, 0xc1, 0x43, 0x0e, 0x14, 0xe2, 0xa0, 0x2e, 0x18, 0x69, 0x40, + 0xd7, 0x30, 0x38, 0xea, 0x2a, 0x0c, 0xf3, 0x8b, 0xda, 0xe6, 0x09, 0x4e, 0xf8, 0xea, 0x75, 0x0a, + 0x7f, 0x32, 0xd8, 0xe4, 0x87, 0x7d, 0x41, 0x6f, 0x3d, 0x84, 0xab, 0xc2, 0x7f, 0xd9, 0x1c, 0x7c, + 0xac, 0xe8, 0x94, 0xdb, 0x97, 0xe5, 0xc0, 0xe5, 0xfb, 0x34, 0xb9, 0xf4, 0x18, 0xaf, 0x77, 0x3e, + 0x85, 0x33, 0x06, 0x5c, 0x71, 0x44, 0xad, 0x54, 0xcd, 0x21, 0xc5, 0x3a, 0x89, 0x6d, 0x5d, 0xc9, + 0xaa, 0x42, 0x6f, 0xac, 0x45, 0x31, 0x94, 0x67, 0x10, 0x5f, 0xb1, 0x85, 0xa7, 0x58, 0xf5, 0xae, + 0x6b, 0xdf, 0x35, 0x5f, 0xf1, 0x78, 0xac, 0x37, 0xb9, 0xf3, 0xaa, 0x52, 0x6b, 0xc2, 0xb8, 0x0b, + 0xb0, 0x26, 0x61, 0x5c, 0x16, 0xb5, 0x68, 0x18, 0x5a, 0x3f, 0x1b, 0x04, 0x4b, 0x08, 0x36, 0xeb, + 0xf6, 0x59, 0xca, 0x63, 0x2f, 0xd5, 0x58, 0xb1, 0x51, 0x9d, 0xd3, 0x23, 0x48, 0xc6, 0xa5, 0x7c, + 0xe6, 0xa1, 0x9e, 0xd7, 0x88, 0xa1, 0xc6, 0xcc, 0x4b, 0xf5, 0xfe, 0xeb, 0x9c, 0x65, 0x92, 0x7f, + 0x6c, 0xaf, 0x1f, 0x1f, 0x55, 0xae, 0xe6, 0x2c, 0x93, 0x06, 0xdf, 0xec, 0x25, 0xd3, 0x36, 0xaf, + 0x44, 0xfa, 0x5f, 0xe4, 0x4a, 0x84, 0x7d, 0x91, 0xfa, 0xa5, 0xc8, 0x8e, 0x29, 0x4b, 0xf1, 0x3d, + 0xca, 0x2b, 0x6d, 0xbd, 0x48, 0x3c, 0xf8, 0xd7, 0x20, 0x06, 0x57, 0x83, 0x0d, 0x71, 0xa1, 0xa4, + 0xd9, 0x2c, 0x17, 0x0f, 0x68, 0xe3, 0x89, 0xb0, 0x15, 0xcb, 0x0b, 0xdd, 0x2c, 0x9b, 0x39, 0x8f, + 0x26, 0xcc, 0xbf, 0x73, 0x5e, 0x50, 0x6f, 0x30, 0x52, 0x3d, 0x60, 0x41, 0x92, 0x2d, 0xf9, 0x29, + 0x4c, 0xa9, 0xa1, 0x4e, 0xb8, 0x1f, 0x8d, 0xcd, 0xbf, 0x16, 0x07, 0x9e, 0x3c, 0x7c, 0xec, 0xdc, + 0x7c, 0x7a, 0xe7, 0x66, 0x06, 0x2e, 0x7f, 0x07, 0xdf, 0x90, 0x05, 0x9a, 0xef, 0x91, 0x7e, 0xd1, + 0x95, 0x45, 0xa8, 0x5d, 0x67, 0xff, 0x5f, 0xca, 0x59, 0x9e, 0xe9, 0x0b, 0x6e, 0x8b, 0x8a, 0x57, + 0x2f, 0x72, 0xf6, 0xe5, 0x5c, 0xc5, 0x15, 0xbe, 0xe3, 0xab, 0xb8, 0x3f, 0x29, 0xca, 0x27, 0x02, + 0xe9, 0xdb, 0xd0, 0x53, 0xdf, 0xc8, 0x65, 0xf6, 0xe0, 0x44, 0x9b, 0x69, 0x66, 0xe3, 0xc8, 0x82, + 0xbc, 0xcf, 0x54, 0xb1, 0xa1, 0x26, 0xd5, 0xdd, 0x40, 0x5c, 0x60, 0x5c, 0x71, 0xa2, 0xea, 0xa2, + 0x51, 0x25, 0x2f, 0xcb, 0xfa, 0x5f, 0xfe, 0xb2, 0xec, 0x77, 0x01, 0xce, 0x6e, 0x39, 0xfb, 0xae, + 0xc7, 0x16, 0x6d, 0x9b, 0x86, 0x7e, 0x27, 0x68, 0x50, 0x52, 0x85, 0x49, 0xd3, 0xff, 0xb3, 0x87, + 0x77, 0x2b, 0xdb, 0x97, 0x4c, 0x18, 0x99, 0x87, 0x51, 0xf5, 0xe6, 0x54, 0x6c, 0x26, 0x19, 0x6f, + 0x51, 0x57, 0xfa, 0xec, 0x18, 0x8d, 0x7c, 0x60, 0xdc, 0xef, 0x9c, 0x51, 0xcf, 0xa7, 0x11, 0x77, + 0x9e, 0x3b, 0xe8, 0x79, 0x7e, 0xd3, 0xdc, 0x10, 0xf9, 0x25, 0xc6, 0x8f, 0x53, 0x57, 0x3e, 0x83, + 0x46, 0x8b, 0x53, 0x76, 0x2f, 0xd4, 0x05, 0x72, 0xc3, 0x39, 0x67, 0x5c, 0x06, 0x7d, 0x05, 0x63, + 0x0f, 0x3b, 0x7b, 0x54, 0x5e, 0x6e, 0x0d, 0x89, 0xfd, 0x31, 0xe9, 0xd5, 0x2c, 0xca, 0x77, 0xef, + 0xf2, 0x31, 0x78, 0xd2, 0xd9, 0xa3, 0xe9, 0x38, 0xe1, 0x6c, 0x61, 0xd2, 0x98, 0x91, 0x03, 0x28, + 0x25, 0x1d, 0x90, 0x45, 0x34, 0xb5, 0x2e, 0x6e, 0xd3, 0x18, 0xca, 0x43, 0x8b, 0x46, 0xce, 0xdd, + 0x22, 0x8d, 0x4a, 0x52, 0x5c, 0xc9, 0x6f, 0xc2, 0x4c, 0xa6, 0xd5, 0x51, 0x3d, 0xa1, 0xea, 0x6e, + 0xd0, 0xc4, 0x45, 0x3d, 0x21, 0x35, 0xf9, 0x5e, 0xcb, 0xa8, 0x39, 0xbb, 0x16, 0xd2, 0x84, 0x33, + 0x09, 0xc7, 0x5a, 0x91, 0x72, 0x21, 0xdf, 0x55, 0x17, 0x37, 0x26, 0x19, 0xb5, 0x34, 0xb3, 0xae, + 0x24, 0x4b, 0xb2, 0x06, 0xa3, 0xea, 0xb8, 0x8f, 0xaf, 0xb3, 0xb2, 0x4d, 0x1b, 0xe5, 0xe3, 0xa3, + 0xca, 0x74, 0x6c, 0xda, 0x30, 0x78, 0xc6, 0x0c, 0xc8, 0x6f, 0xc1, 0x55, 0x35, 0x45, 0x37, 0x83, + 0x6c, 0x23, 0x90, 0x88, 0x76, 0x7e, 0x23, 0x39, 0xc3, 0xf3, 0xf0, 0x77, 0xef, 0x2c, 0x14, 0xcb, + 0x85, 0x95, 0x3e, 0xbb, 0x37, 0x6b, 0xf2, 0xb3, 0x02, 0x9c, 0xcb, 0xa9, 0x75, 0x1c, 0x6b, 0xed, + 0x69, 0x99, 0x43, 0xe5, 0x1e, 0x9f, 0x0d, 0xb9, 0xcd, 0xf8, 0x79, 0x9d, 0x34, 0xd1, 0x19, 0xfd, + 0xce, 0xa9, 0x89, 0x3c, 0x00, 0xd8, 0x77, 0x23, 0x31, 0xc7, 0x30, 0x10, 0x55, 0xc6, 0x07, 0x8a, + 0x02, 0x8d, 0xd1, 0x4c, 0x81, 0xee, 0xbb, 0x91, 0x98, 0x83, 0x6f, 0xc3, 0x10, 0x9e, 0xb7, 0xc3, + 0xf2, 0x04, 0x6a, 0xa4, 0x18, 0x0d, 0x07, 0x4f, 0xe5, 0xfa, 0x1e, 0x24, 0x70, 0xc8, 0x0a, 0xd3, + 0xec, 0x70, 0x0f, 0x94, 0x9a, 0x98, 0x88, 0x9d, 0x25, 0x4e, 0x07, 0xbc, 0x48, 0x46, 0xcc, 0x30, + 0x42, 0xe4, 0x9b, 0x64, 0x0b, 0x00, 0x23, 0x81, 0x58, 0xe1, 0x1e, 0x0c, 0x8c, 0x0c, 0x94, 0x06, + 0xf9, 0x47, 0x28, 0xbd, 0xbf, 0x7f, 0x77, 0x84, 0x3f, 0x15, 0xdd, 0xf1, 0xdc, 0xc7, 0x6e, 0xbc, + 0x18, 0xea, 0x96, 0xba, 0x38, 0x57, 0x8d, 0xd0, 0xa3, 0x73, 0xb2, 0xd2, 0x28, 0xa3, 0x5e, 0xb1, + 0xa7, 0x51, 0xef, 0xae, 0x76, 0xfd, 0xa5, 0x85, 0x9b, 0xe4, 0xfa, 0x92, 0x69, 0x44, 0x8b, 0xef, + 0xc5, 0xbe, 0x81, 0x21, 0x8c, 0x10, 0xc9, 0xef, 0x16, 0xc7, 0xe6, 0x6f, 0x8a, 0x2d, 0xa0, 0x4b, + 0xf3, 0x79, 0x48, 0x49, 0xf1, 0xfc, 0x9b, 0x4b, 0x1c, 0x01, 0x86, 0xc4, 0x11, 0x42, 0xb6, 0x61, + 0x6a, 0x2b, 0xa0, 0x4d, 0xe1, 0x83, 0xdc, 0x0e, 0x84, 0xa1, 0x83, 0x9b, 0x50, 0x50, 0x7d, 0x68, + 0xcb, 0xe2, 0x3a, 0x55, 0xe5, 0xfa, 0xe6, 0x9c, 0x41, 0x4e, 0x96, 0x61, 0xb2, 0x46, 0x9d, 0xa0, + 0x71, 0xf0, 0x90, 0x3e, 0x67, 0xaa, 0x93, 0x91, 0x9e, 0x21, 0xc4, 0x12, 0xd6, 0x5f, 0x2c, 0xd2, + 0xfd, 0x45, 0x4c, 0x22, 0xf2, 0x19, 0x0c, 0xd5, 0xfc, 0x20, 0x5a, 0x78, 0x2e, 0x16, 0x48, 0x79, + 0xfb, 0xc4, 0x81, 0x0b, 0xe7, 0x65, 0x8a, 0x8a, 0xd0, 0x0f, 0xa2, 0xfa, 0x9e, 0x11, 0x5e, 0x89, + 0xa3, 0x90, 0xe7, 0x30, 0x6d, 0x2e, 0x4e, 0xc2, 0x35, 0x76, 0x44, 0xa8, 0x6c, 0x59, 0x2b, 0x20, + 0x47, 0x59, 0xb8, 0x2e, 0xb8, 0x5f, 0x49, 0x2e, 0x81, 0x8f, 0xb1, 0x5c, 0x8f, 0x78, 0x94, 0x45, + 0x4f, 0xd6, 0x31, 0xb7, 0x07, 0xef, 0x51, 0x35, 0xe4, 0x2e, 0xb5, 0xa3, 0x71, 0x00, 0xaf, 0x0e, + 0x2e, 0x70, 0x28, 0x09, 0x27, 0x4c, 0x26, 0x84, 0xb1, 0x53, 0xa4, 0x64, 0x0b, 0xce, 0xee, 0x84, + 0x74, 0x2b, 0xa0, 0x4f, 0x5d, 0xfa, 0x4c, 0xf2, 0x83, 0x38, 0xda, 0x11, 0xe3, 0xd7, 0xe6, 0xa5, + 0x59, 0x0c, 0xd3, 0xc4, 0xe4, 0x03, 0x80, 0x2d, 0xd7, 0xf3, 0x68, 0x13, 0xaf, 0x30, 0xc7, 0x90, + 0x15, 0x9a, 0x67, 0xdb, 0x08, 0xad, 0xfb, 0x5e, 0x4b, 0x17, 0xa9, 0x86, 0x4c, 0x16, 0x60, 0x62, + 0xd5, 0x6b, 0xb4, 0x3a, 0xc2, 0xd5, 0x20, 0xc4, 0xc5, 0x49, 0x44, 0x61, 0x73, 0x79, 0x41, 0x3d, + 0xf5, 0x91, 0x9b, 0x24, 0xe4, 0x21, 0x10, 0x01, 0x10, 0xb3, 0xd6, 0xd9, 0x6b, 0x51, 0xf1, 0xb9, + 0xa3, 0xd9, 0x45, 0x32, 0xc2, 0xe9, 0x6e, 0x04, 0x37, 0x4b, 0x91, 0xcd, 0x7d, 0x00, 0x63, 0xda, + 0x9c, 0xcf, 0x88, 0x67, 0x30, 0xad, 0xc7, 0x33, 0x18, 0xd5, 0xe3, 0x16, 0xfc, 0x7f, 0x05, 0xb8, + 0x98, 0xfd, 0x2d, 0x09, 0x65, 0x6e, 0x13, 0x46, 0x15, 0x50, 0xbd, 0x60, 0x91, 0xc7, 0x88, 0x84, + 0x36, 0xc5, 0x3f, 0x68, 0xb9, 0xf2, 0xe8, 0xbd, 0x8f, 0x79, 0xbc, 0x80, 0x6d, 0xff, 0x7f, 0x1b, + 0x81, 0x69, 0xf4, 0xd4, 0x4e, 0xae, 0x53, 0x9f, 0x62, 0x5c, 0x12, 0x84, 0x69, 0xa6, 0x6a, 0x61, + 0xb5, 0xe2, 0xf0, 0x64, 0x10, 0x2d, 0x83, 0x80, 0xbc, 0xab, 0xfb, 0x57, 0x14, 0xb5, 0x5c, 0x22, + 0x12, 0xa8, 0x77, 0x21, 0x76, 0xbc, 0x78, 0xcb, 0xb8, 0xde, 0x3f, 0xf1, 0xa2, 0x37, 0x70, 0xd2, + 0x45, 0x6f, 0x47, 0x2d, 0x7a, 0x3c, 0xde, 0xc5, 0x9b, 0xda, 0xa2, 0xf7, 0xea, 0x57, 0xbb, 0xa1, + 0x57, 0xbd, 0xda, 0x0d, 0xbf, 0xdc, 0x6a, 0x37, 0xf2, 0x82, 0xab, 0xdd, 0x3d, 0x98, 0xdc, 0xa0, + 0xb4, 0xa9, 0x5d, 0xba, 0x8c, 0xc6, 0xbb, 0xa7, 0x47, 0xd1, 0x9c, 0x96, 0x75, 0xf3, 0x92, 0xa0, + 0xca, 0x5d, 0x35, 0xe1, 0xef, 0x67, 0xd5, 0x1c, 0x7b, 0xc5, 0xab, 0xe6, 0xf8, 0xcb, 0xac, 0x9a, + 0xa9, 0xa5, 0x6f, 0xe2, 0xd4, 0x4b, 0xdf, 0xcb, 0xac, 0x56, 0x9f, 0xa0, 0x7b, 0x62, 0xad, 0xb6, + 0x22, 0x3c, 0x51, 0x34, 0xd7, 0x8f, 0x15, 0x3f, 0x94, 0xde, 0xdb, 0xf8, 0x37, 0x83, 0x6d, 0xf9, + 0x81, 0xbc, 0x3e, 0xc7, 0xbf, 0xad, 0x05, 0x74, 0x4a, 0xd4, 0xe9, 0x95, 0xeb, 0xff, 0xb0, 0x78, + 0xfe, 0x27, 0xd6, 0xb8, 0xa4, 0xc6, 0x67, 0xcb, 0x72, 0xeb, 0xaf, 0x0b, 0xfc, 0x82, 0xf3, 0x7f, + 0xc4, 0xa5, 0xf2, 0x65, 0x2e, 0x1d, 0x7f, 0x27, 0x0e, 0x0b, 0x20, 0x42, 0x18, 0x04, 0x4e, 0xe3, + 0x49, 0x7c, 0xeb, 0xfb, 0x23, 0xf6, 0x9d, 0xeb, 0x05, 0x42, 0x37, 0x9e, 0x55, 0x92, 0xd2, 0x0b, + 0x77, 0xef, 0xc8, 0x05, 0x40, 0x44, 0x47, 0xe0, 0x60, 0x73, 0x01, 0xd0, 0x09, 0xd0, 0xef, 0xee, + 0x8c, 0x65, 0xf3, 0x57, 0xed, 0x99, 0x2d, 0x78, 0x2f, 0xfd, 0x2e, 0x1b, 0xf5, 0xf0, 0xf8, 0x5d, + 0xb6, 0x2e, 0xc6, 0xf8, 0x85, 0xf6, 0x0e, 0x5c, 0xb0, 0xe9, 0xa1, 0xff, 0x94, 0xbe, 0x5a, 0xb6, + 0x5f, 0xc3, 0x79, 0x93, 0x21, 0x7f, 0xc1, 0xc3, 0x83, 0xab, 0x7f, 0x92, 0x1d, 0x92, 0x5d, 0x10, + 0xf0, 0x90, 0xec, 0x3c, 0xb2, 0x33, 0xfb, 0x53, 0xdf, 0x37, 0xb0, 0xcc, 0xf2, 0xe1, 0xa2, 0xc9, + 0xbc, 0xda, 0x6c, 0x62, 0xe6, 0xc6, 0x86, 0xdb, 0x76, 0xbc, 0x88, 0x6c, 0xc2, 0x98, 0xf6, 0x33, + 0x61, 0x76, 0xd0, 0x4a, 0x84, 0x4e, 0x13, 0x03, 0x8c, 0x70, 0x9e, 0x31, 0xd8, 0xa2, 0x50, 0x49, + 0x8a, 0x87, 0x89, 0x4c, 0xaf, 0x73, 0x01, 0x26, 0xb4, 0x9f, 0xca, 0xfc, 0x89, 0x1f, 0xbf, 0x56, + 0x83, 0x29, 0x30, 0x93, 0xc4, 0x6a, 0xc0, 0x5c, 0x96, 0xd0, 0x30, 0xd2, 0xd3, 0x73, 0xb2, 0x1c, + 0xc7, 0x8c, 0xea, 0xed, 0xb9, 0x77, 0x26, 0x2f, 0x5e, 0x94, 0xf5, 0x7f, 0x0e, 0xc0, 0x05, 0x31, + 0x18, 0xaf, 0x72, 0xc4, 0xc9, 0x8f, 0x61, 0x4c, 0x1b, 0x63, 0x21, 0xf4, 0x2b, 0x32, 0x8c, 0x67, + 0xde, 0x5c, 0xe0, 0xe6, 0x91, 0x0e, 0x02, 0xea, 0x89, 0xe1, 0x5e, 0xe9, 0xb3, 0x75, 0x96, 0xa4, + 0x05, 0x93, 0xe6, 0x40, 0x0b, 0x0b, 0xd1, 0xb5, 0xcc, 0x4a, 0x4c, 0x54, 0x19, 0x14, 0xba, 0x59, + 0xcf, 0x1c, 0xee, 0x95, 0x3e, 0x3b, 0xc1, 0x9b, 0x7c, 0x0b, 0x67, 0x53, 0xa3, 0x2c, 0x0c, 0x7f, + 0x6f, 0x64, 0x56, 0x98, 0xc2, 0xe6, 0xa6, 0xdd, 0x00, 0xc1, 0xb9, 0xd5, 0xa6, 0x2b, 0x21, 0x4d, + 0x18, 0xd7, 0x07, 0x5e, 0x98, 0xb0, 0xae, 0x76, 0x11, 0x25, 0x47, 0xe4, 0xca, 0x9d, 0x90, 0x25, + 0x8e, 0xfd, 0x73, 0xd3, 0x5c, 0x6d, 0x20, 0x8f, 0xc0, 0x10, 0xff, 0xcd, 0x96, 0x80, 0xad, 0x80, + 0x86, 0xd4, 0x6b, 0x50, 0xc3, 0xd9, 0xfb, 0x25, 0x97, 0x80, 0x7f, 0x51, 0x80, 0x72, 0x16, 0xdf, + 0x1a, 0xf5, 0x9a, 0x64, 0x0b, 0x4a, 0xc9, 0x8a, 0xc4, 0xac, 0xb6, 0x54, 0xdc, 0xdd, 0xdc, 0x26, + 0xad, 0xf4, 0xd9, 0x29, 0x6a, 0xb2, 0x01, 0x67, 0x35, 0x98, 0x30, 0xd4, 0x16, 0x4f, 0x62, 0xa8, + 0x65, 0xa3, 0x90, 0x22, 0xd5, 0xed, 0xdc, 0x2b, 0xb8, 0x33, 0x2e, 0xf9, 0x87, 0x8e, 0xeb, 0x31, + 0x45, 0x57, 0x0b, 0x1b, 0x05, 0x31, 0x54, 0xc8, 0x86, 0x5b, 0x6e, 0x11, 0x2a, 0x1f, 0xa7, 0x28, + 0x14, 0xeb, 0x63, 0x5c, 0xc1, 0x85, 0xbd, 0x8f, 0x3f, 0x75, 0x55, 0xcc, 0xae, 0xc0, 0xe0, 0xf6, + 0x5a, 0x6d, 0xb1, 0x2a, 0x1e, 0xce, 0xf2, 0x70, 0x0b, 0xad, 0xb0, 0xde, 0x70, 0x6c, 0x5e, 0x60, + 0x7d, 0x04, 0xe4, 0x3e, 0x8d, 0x44, 0xe0, 0x77, 0x45, 0xf7, 0x3a, 0x0c, 0x0b, 0x90, 0xa0, 0x44, + 0x37, 0xbb, 0x96, 0xc0, 0x92, 0x65, 0xd6, 0x96, 0x3c, 0x27, 0xb4, 0xa8, 0x13, 0x6a, 0x1b, 0xf3, + 0xfb, 0x30, 0x12, 0x08, 0x98, 0xd8, 0x97, 0x27, 0x55, 0x8a, 0x0c, 0x04, 0x73, 0xdb, 0xb8, 0xc4, + 0xb1, 0xd5, 0x5f, 0xd6, 0x1a, 0x86, 0x46, 0xd9, 0x5c, 0x5d, 0x5a, 0x64, 0x52, 0x15, 0xc2, 0x92, + 0xc3, 0x71, 0x0b, 0xfd, 0xd1, 0x23, 0xaa, 0x3f, 0x9b, 0x45, 0xd1, 0xe0, 0x47, 0x2e, 0x02, 0x02, + 0x69, 0x28, 0xd6, 0x5d, 0x15, 0x68, 0x25, 0x83, 0x5b, 0x5e, 0xaa, 0x87, 0x0d, 0x0c, 0x21, 0x73, + 0x1f, 0x5d, 0x6f, 0x5e, 0x45, 0x23, 0x1c, 0x98, 0xe3, 0xdb, 0x3c, 0xeb, 0x95, 0x48, 0x66, 0xe7, + 0xab, 0xa5, 0x71, 0x11, 0x46, 0x15, 0x4c, 0xdd, 0xa3, 0x71, 0x59, 0x19, 0xf8, 0xbb, 0x77, 0xf9, + 0x0b, 0xe3, 0x86, 0x62, 0x10, 0xd3, 0xb1, 0x2a, 0xf8, 0x77, 0xf7, 0x1d, 0x57, 0x11, 0xd2, 0x20, + 0xfa, 0x4e, 0xab, 0x88, 0x63, 0x0c, 0x9d, 0xa6, 0x0a, 0x03, 0x7f, 0x77, 0xfe, 0x24, 0x82, 0xfa, + 0x8e, 0xab, 0x60, 0x82, 0xfa, 0xee, 0xaa, 0xa0, 0x32, 0x18, 0x13, 0x9f, 0xa4, 0xa9, 0x4a, 0x96, + 0xd3, 0x95, 0x48, 0x23, 0x78, 0x82, 0xa2, 0xeb, 0x78, 0x50, 0xb8, 0xc8, 0x85, 0xf5, 0x2b, 0xa8, + 0x86, 0x09, 0xec, 0xbb, 0xad, 0xe6, 0xff, 0x29, 0xf0, 0xd0, 0x50, 0xb5, 0x4d, 0x2d, 0x8d, 0xa4, + 0xf7, 0xd8, 0xd7, 0xae, 0xf9, 0xb5, 0xaf, 0xfd, 0xa1, 0xeb, 0x35, 0xf5, 0x6b, 0x7e, 0xa7, 0x13, + 0x1d, 0xa8, 0xd0, 0xc9, 0x4f, 0x5c, 0xaf, 0x69, 0x27, 0xb1, 0xc9, 0x07, 0x30, 0xa1, 0x81, 0x94, + 0xb6, 0xc6, 0xf3, 0x4f, 0xe8, 0xe4, 0x6e, 0xd3, 0x36, 0x31, 0xad, 0xbf, 0x2b, 0xc0, 0x54, 0x46, + 0x82, 0x63, 0x34, 0x66, 0xe0, 0x29, 0x48, 0x2d, 0x54, 0x22, 0xf9, 0x12, 0x46, 0xa9, 0x30, 0x36, + 0x49, 0x85, 0x88, 0x91, 0xf7, 0xb5, 0x64, 0xcc, 0x45, 0x2d, 0x0d, 0x58, 0x76, 0x02, 0x66, 0x1d, + 0x9d, 0x84, 0x00, 0x71, 0x4b, 0x84, 0xd9, 0xb8, 0xc6, 0x54, 0x5a, 0x2d, 0x93, 0xf3, 0x2b, 0x49, + 0x25, 0xad, 0x55, 0x63, 0xfd, 0x4e, 0x11, 0xce, 0x65, 0xf4, 0xbf, 0x46, 0xa3, 0xbf, 0x0f, 0x11, + 0x24, 0xf2, 0x69, 0xf7, 0xff, 0x8a, 0xf2, 0x69, 0x5b, 0xff, 0xa6, 0x08, 0xe7, 0x76, 0xda, 0x21, + 0xbe, 0xd6, 0x5a, 0xf5, 0x9e, 0x52, 0x2f, 0xf2, 0x83, 0xe7, 0xf8, 0xc2, 0x84, 0xbc, 0x0b, 0x83, + 0x2b, 0xb4, 0xd5, 0xf2, 0xc5, 0xfc, 0xbf, 0x24, 0x3d, 0x2d, 0x92, 0xd8, 0x88, 0xb4, 0xd2, 0x67, + 0x73, 0x6c, 0xf2, 0x01, 0x8c, 0xae, 0x50, 0x27, 0x88, 0xf6, 0xa8, 0x23, 0x8f, 0x2c, 0x32, 0x2b, + 0x86, 0x46, 0x22, 0x10, 0x56, 0xfa, 0xec, 0x18, 0x9b, 0xcc, 0xb3, 0xd3, 0xbc, 0xb7, 0xaf, 0x5e, + 0xa6, 0xe7, 0x54, 0xc8, 0x70, 0x56, 0xfa, 0x6c, 0xc4, 0x25, 0xeb, 0x30, 0x51, 0xdd, 0xa7, 0x5e, + 0xb4, 0x4e, 0x23, 0xa7, 0xe9, 0x44, 0x8e, 0x50, 0x6d, 0x5f, 0xcf, 0x23, 0x36, 0x90, 0x57, 0xfa, + 0x6c, 0x93, 0x9a, 0x7c, 0x04, 0xc3, 0xf7, 0x7d, 0xbf, 0xb9, 0xf7, 0x9c, 0x0a, 0x75, 0xb5, 0x92, + 0xc7, 0x48, 0xa0, 0xad, 0xf4, 0xd9, 0x92, 0x62, 0x61, 0x10, 0xfa, 0xd7, 0xc3, 0x7d, 0xeb, 0xa8, + 0x00, 0xe5, 0x25, 0xff, 0x99, 0x97, 0x29, 0xd5, 0x1f, 0x98, 0x52, 0x95, 0xec, 0x33, 0xf0, 0x13, + 0x72, 0x7d, 0x07, 0x06, 0xb6, 0x5c, 0x6f, 0x3f, 0xa1, 0x0a, 0x66, 0xd0, 0x31, 0x2c, 0x14, 0x8f, + 0xeb, 0xed, 0x93, 0x35, 0xa9, 0x83, 0x0b, 0x5b, 0x63, 0xbf, 0xa1, 0xf8, 0x67, 0x50, 0xeb, 0xd8, + 0xb1, 0xae, 0xcd, 0x7f, 0xcb, 0x0e, 0xbe, 0x05, 0xb3, 0x39, 0xf5, 0x8a, 0xa7, 0xe6, 0xac, 0x6f, + 0x03, 0xa8, 0xd8, 0xbc, 0x09, 0x33, 0x99, 0xe3, 0x97, 0x42, 0xfc, 0x87, 0x59, 0x13, 0x91, 0xf7, + 0xbc, 0x0c, 0xc3, 0x32, 0xf3, 0x12, 0xb7, 0xfd, 0xc8, 0x9f, 0xf8, 0xd8, 0x4a, 0x7e, 0xa8, 0x32, + 0x48, 0x88, 0xfc, 0x1e, 0x77, 0xb5, 0xa0, 0x4c, 0xfc, 0x73, 0xfa, 0xf0, 0x25, 0x3e, 0x1a, 0xc5, + 0x8b, 0xd5, 0xb9, 0xe2, 0x87, 0x91, 0xa7, 0xbc, 0x78, 0x6d, 0xf5, 0x9b, 0xdc, 0x80, 0x92, 0x4c, + 0x0d, 0x21, 0x72, 0xd0, 0x88, 0xec, 0xdf, 0x76, 0x0a, 0x4e, 0xde, 0x87, 0xd9, 0x24, 0x4c, 0xf6, + 0x92, 0xbf, 0x96, 0xcb, 0x2b, 0xb6, 0xfe, 0xaa, 0x88, 0x71, 0xb3, 0xbb, 0xcc, 0x6b, 0x26, 0xdd, + 0xcd, 0x9a, 0x90, 0x56, 0x71, 0xb3, 0x46, 0x2e, 0xc2, 0xe8, 0x66, 0xcd, 0x48, 0x5f, 0x65, 0xc7, + 0x00, 0xd6, 0x6c, 0xd6, 0x85, 0x6a, 0xd0, 0x38, 0x70, 0x23, 0xda, 0x88, 0x3a, 0x81, 0x58, 0x85, + 0xed, 0x14, 0x9c, 0x58, 0x30, 0x7e, 0xbf, 0xe5, 0xee, 0x35, 0x24, 0x33, 0x2e, 0x02, 0x03, 0x46, + 0xde, 0x80, 0xc9, 0x55, 0x2f, 0x8c, 0x9c, 0x56, 0x6b, 0x9d, 0x46, 0x07, 0x7e, 0x53, 0x24, 0xe0, + 0xb4, 0x13, 0x50, 0x56, 0xef, 0xa2, 0xef, 0x45, 0x8e, 0xeb, 0xd1, 0xc0, 0xee, 0x78, 0x91, 0x7b, + 0x48, 0x45, 0xdf, 0x53, 0x70, 0xf2, 0x0e, 0xcc, 0x28, 0xd8, 0x66, 0xd0, 0x38, 0xa0, 0x61, 0x14, + 0x60, 0x52, 0x3b, 0x0c, 0x1e, 0x64, 0x67, 0x17, 0x62, 0x0d, 0x2d, 0xbf, 0xd3, 0x5c, 0xf6, 0x9e, + 0xba, 0x81, 0xef, 0x61, 0x9e, 0x8b, 0x11, 0x51, 0x43, 0x02, 0x6e, 0xfd, 0xf1, 0x48, 0xe6, 0x67, + 0xfb, 0x32, 0x73, 0xf0, 0x4b, 0x18, 0x5f, 0x74, 0xda, 0xce, 0x9e, 0xdb, 0x72, 0x23, 0x57, 0x65, + 0xff, 0x7a, 0xb7, 0xc7, 0x37, 0x2f, 0x93, 0x85, 0xd0, 0xa6, 0x4e, 0x6c, 0x1b, 0xac, 0xe6, 0xfe, + 0x76, 0x08, 0x66, 0x32, 0xf1, 0xc8, 0x75, 0x91, 0x26, 0x4c, 0xad, 0xab, 0x22, 0x71, 0x96, 0x9d, + 0x04, 0xb3, 0xb1, 0x44, 0xd0, 0x62, 0x8b, 0x3a, 0x5e, 0x47, 0xa4, 0xcd, 0xb2, 0x0d, 0x18, 0x1b, + 0x4b, 0xa6, 0x37, 0x68, 0xcc, 0xd0, 0x09, 0xdb, 0x4e, 0x40, 0xc9, 0x15, 0x18, 0x63, 0x10, 0xc9, + 0x6a, 0x80, 0x3f, 0x17, 0xd4, 0x40, 0x8c, 0xd3, 0x86, 0xdf, 0xa4, 0x1a, 0xa7, 0x41, 0xce, 0xc9, + 0x84, 0x32, 0x4e, 0x0c, 0x22, 0x39, 0x0d, 0x71, 0x4e, 0x1a, 0x88, 0xbc, 0x06, 0x13, 0xd5, 0x76, + 0x5b, 0x63, 0x84, 0xf9, 0xb2, 0x6c, 0x13, 0x48, 0x2e, 0x03, 0x54, 0xdb, 0x6d, 0xc9, 0x06, 0x73, + 0x61, 0xd9, 0x1a, 0x84, 0xdc, 0x8c, 0x43, 0x9f, 0x69, 0xac, 0xf0, 0x3a, 0xc1, 0xce, 0x28, 0x61, + 0x72, 0x55, 0x71, 0xa2, 0x04, 0x53, 0xe0, 0x72, 0x4d, 0x80, 0xc9, 0xc7, 0x70, 0x3e, 0xe1, 0xc3, + 0xa1, 0x55, 0x80, 0xa6, 0x7e, 0x3b, 0x1f, 0x81, 0xbc, 0x07, 0xe7, 0x12, 0x85, 0xb2, 0x3a, 0xb4, + 0xea, 0xdb, 0x39, 0xa5, 0xe4, 0x43, 0x28, 0x27, 0x9e, 0x80, 0xc7, 0x95, 0xa2, 0x05, 0xdf, 0xce, + 0x2d, 0x67, 0x5f, 0x57, 0xe2, 0x2d, 0x99, 0xa8, 0x12, 0x2f, 0x2b, 0xed, 0xec, 0x42, 0xb2, 0x02, + 0x95, 0x4c, 0xbf, 0x18, 0xad, 0x62, 0xcc, 0xf1, 0x65, 0xf7, 0x42, 0x23, 0x0b, 0x70, 0x31, 0x13, + 0x45, 0x36, 0x03, 0x33, 0x7f, 0xd9, 0x5d, 0x71, 0xc8, 0x3c, 0x4c, 0xc7, 0xfe, 0x41, 0x5a, 0x13, + 0x30, 0xe9, 0x97, 0x9d, 0x59, 0x46, 0xde, 0x36, 0x1f, 0xfa, 0xf3, 0xca, 0x30, 0xe7, 0x97, 0x9d, + 0x2e, 0xb0, 0x8e, 0x0b, 0x70, 0x31, 0x73, 0xa3, 0x94, 0xfa, 0xfc, 0x5c, 0x52, 0x71, 0xd4, 0xd6, + 0x82, 0x1b, 0x30, 0x80, 0x0a, 0x3e, 0xb7, 0x15, 0x4b, 0xbf, 0x55, 0xa4, 0xe7, 0xac, 0x58, 0xa9, + 0x8d, 0x38, 0xe4, 0xbe, 0xba, 0x1b, 0xec, 0x47, 0x4b, 0xc6, 0xad, 0xa4, 0x02, 0x95, 0x51, 0xb9, + 0x7e, 0x47, 0x28, 0x6f, 0x03, 0x5f, 0xe6, 0x1a, 0xe6, 0xaf, 0x0a, 0x50, 0xe9, 0xa1, 0x1f, 0xa8, + 0x3e, 0x15, 0x4e, 0xd0, 0xa7, 0x07, 0xaa, 0x4f, 0xfc, 0x9d, 0xed, 0xfc, 0xc9, 0x74, 0x90, 0x57, + 0xdd, 0xad, 0x0e, 0x90, 0xb4, 0x1a, 0x4a, 0xbe, 0x0f, 0xa3, 0xb5, 0xda, 0x8a, 0xe1, 0x1c, 0x98, + 0xba, 0x1c, 0x8a, 0x31, 0xc8, 0xed, 0x13, 0x79, 0x03, 0x6a, 0xbe, 0x80, 0xd6, 0x12, 0x94, 0xf3, + 0x34, 0x48, 0x5c, 0x58, 0x78, 0x9c, 0x2e, 0xed, 0x62, 0x89, 0x2f, 0x2c, 0x26, 0xd8, 0x7a, 0x0f, + 0xce, 0x29, 0x6a, 0x9e, 0x00, 0x44, 0x0b, 0x22, 0x20, 0x8e, 0x9d, 0x2a, 0x58, 0x41, 0x0c, 0xb0, + 0xfe, 0x72, 0x20, 0x45, 0x58, 0xeb, 0x1c, 0x1e, 0x3a, 0xc1, 0x73, 0x52, 0x35, 0x09, 0xfb, 0x7b, + 0x6a, 0xfa, 0x0b, 0x03, 0x3f, 0x3f, 0xaa, 0xf4, 0x69, 0xdc, 0xd9, 0x72, 0x8c, 0x1b, 0xbb, 0xd7, + 0xa0, 0xfc, 0x4a, 0xaa, 0xc8, 0x03, 0x25, 0x19, 0x40, 0xb2, 0x0b, 0x13, 0x62, 0xcb, 0xc4, 0xdf, + 0x72, 0x6a, 0xdf, 0x4e, 0x4e, 0x6d, 0xa3, 0x79, 0x37, 0x0d, 0x12, 0x3e, 0x09, 0x4c, 0x36, 0xe4, + 0x4b, 0x98, 0x94, 0x0a, 0x92, 0x60, 0xcc, 0x9d, 0x88, 0xee, 0x74, 0x67, 0x6c, 0xd2, 0x70, 0xce, + 0x09, 0x46, 0xac, 0xc9, 0x72, 0x8d, 0xe1, 0x9c, 0x07, 0x4f, 0xd2, 0x64, 0x83, 0x44, 0x34, 0xd9, + 0x80, 0xcd, 0x7d, 0x06, 0x24, 0xdd, 0xaf, 0x5e, 0xb3, 0x78, 0x42, 0x9b, 0xc5, 0x73, 0x55, 0x98, + 0xca, 0xe8, 0xc0, 0xa9, 0x58, 0x7c, 0x06, 0x24, 0xdd, 0xd2, 0xd3, 0x70, 0xb0, 0xae, 0xc3, 0x1b, + 0x4a, 0x04, 0x6a, 0x36, 0x18, 0x3c, 0xa5, 0xe1, 0xf9, 0xb7, 0x8b, 0x50, 0xe9, 0x81, 0x4a, 0xfe, + 0xa8, 0x90, 0x94, 0x36, 0x9f, 0x8d, 0x1f, 0x24, 0xa5, 0x9d, 0x4d, 0x9f, 0x21, 0xf6, 0x85, 0x0f, + 0x7f, 0xf6, 0x37, 0x2f, 0xac, 0xf0, 0xa7, 0x87, 0xec, 0xf4, 0xd2, 0x1a, 0xd0, 0xa5, 0x65, 0xc3, + 0xb4, 0x71, 0x54, 0x3a, 0xc9, 0x9e, 0x71, 0x19, 0x40, 0xa4, 0x0b, 0x5d, 0xf3, 0xf7, 0x85, 0x7a, + 0xa6, 0x41, 0xac, 0x7b, 0x30, 0x93, 0xe0, 0x29, 0x8c, 0xe1, 0xdf, 0x07, 0xf5, 0x58, 0x1c, 0x99, + 0xf6, 0x2f, 0x9c, 0xfd, 0xe5, 0x51, 0x65, 0x82, 0x69, 0xd2, 0x37, 0xe3, 0x58, 0xf4, 0xf2, 0x2f, + 0x6b, 0x5d, 0x37, 0xe7, 0x57, 0x5b, 0x7a, 0x10, 0x1d, 0x72, 0x07, 0x86, 0x38, 0x24, 0x11, 0xf1, + 0x59, 0xc7, 0x16, 0x6b, 0x82, 0x40, 0xb4, 0x66, 0xf0, 0x69, 0x2b, 0xfe, 0xa8, 0xc6, 0xa1, 0x18, + 0xac, 0x1d, 0x9e, 0x01, 0x25, 0x06, 0xab, 0xa8, 0xd2, 0x03, 0xd5, 0x38, 0x64, 0x84, 0xf4, 0xbd, + 0x90, 0x78, 0x9e, 0xff, 0xac, 0x45, 0x9b, 0x3c, 0xbb, 0xdc, 0xc2, 0xb8, 0xf0, 0xbd, 0x18, 0x70, + 0x18, 0x03, 0x24, 0xb3, 0x3e, 0x85, 0x19, 0xb6, 0x41, 0x07, 0xc9, 0xfa, 0x30, 0xef, 0x01, 0x83, + 0x99, 0xce, 0xf1, 0x0e, 0x03, 0xa1, 0x73, 0xbc, 0x28, 0xb4, 0xd6, 0xe0, 0x3c, 0x37, 0x06, 0xea, + 0x5d, 0x8a, 0x4d, 0xef, 0x83, 0xf8, 0x3b, 0xf1, 0x30, 0x32, 0xa3, 0xf7, 0x1c, 0xcf, 0xfa, 0x04, + 0x5f, 0xde, 0x88, 0x49, 0xea, 0xfa, 0x5e, 0x6c, 0xf9, 0x3b, 0xd9, 0x53, 0xdd, 0xff, 0x19, 0x2e, + 0x56, 0xdb, 0x6d, 0xea, 0x35, 0x63, 0xc2, 0xed, 0xc0, 0x39, 0x61, 0x20, 0x05, 0x52, 0x85, 0x41, + 0xc4, 0x56, 0xf7, 0x96, 0xa2, 0xb9, 0x19, 0xcd, 0x41, 0x3c, 0x11, 0x02, 0x14, 0x2b, 0xe0, 0x94, + 0x56, 0x13, 0x66, 0x6b, 0x9d, 0xbd, 0x43, 0x37, 0x42, 0x97, 0x7a, 0x0c, 0x46, 0x22, 0xeb, 0x5e, + 0x95, 0x49, 0xab, 0xb8, 0x30, 0xae, 0xc7, 0x2f, 0x34, 0xd0, 0x2b, 0x5f, 0x04, 0x28, 0x79, 0x7a, + 0xe7, 0x66, 0x4c, 0x8a, 0x56, 0x0f, 0x5e, 0x0b, 0x16, 0x8b, 0xc4, 0x56, 0xd6, 0x14, 0x9c, 0xd5, + 0xef, 0x80, 0xf8, 0x0c, 0x99, 0x81, 0x29, 0xf3, 0x6e, 0x87, 0x83, 0xbf, 0x81, 0x69, 0x6e, 0x7b, + 0xe6, 0x21, 0xbc, 0xe7, 0xe3, 0x68, 0xd5, 0xc5, 0xdd, 0xf9, 0x84, 0x2f, 0x3f, 0xba, 0xf8, 0xaa, + 0xe4, 0x0c, 0xbb, 0xf3, 0xfc, 0xf5, 0xe4, 0xd3, 0x79, 0xe3, 0x06, 0xb1, 0xb8, 0x3b, 0xbf, 0x30, + 0x2c, 0x42, 0xa1, 0x32, 0xee, 0x7c, 0xf8, 0xbf, 0x13, 0xee, 0xf3, 0xf8, 0x60, 0x7f, 0x85, 0x3a, + 0xf8, 0xb8, 0x26, 0xfb, 0xd9, 0xf3, 0x24, 0x14, 0xdd, 0xa6, 0x3c, 0xad, 0xbb, 0x4d, 0xeb, 0xcf, + 0x0a, 0x70, 0x9d, 0xeb, 0x40, 0xd9, 0x74, 0x78, 0xd1, 0x93, 0x43, 0x4c, 0xde, 0x07, 0x9e, 0x01, + 0x5e, 0x28, 0x9a, 0x96, 0x68, 0x79, 0x37, 0x4e, 0x9c, 0x80, 0x54, 0x61, 0x5c, 0x7f, 0x9e, 0x72, + 0xb2, 0x50, 0x73, 0xf6, 0xd8, 0xe1, 0x63, 0x47, 0x3d, 0x59, 0x79, 0x02, 0x17, 0x96, 0xbf, 0x65, + 0x13, 0x42, 0xec, 0x4e, 0x42, 0x61, 0x8f, 0x9f, 0xd5, 0x9e, 0xd9, 0x16, 0x33, 0xc6, 0x3c, 0x4d, + 0x27, 0xc1, 0xec, 0x68, 0x2a, 0x37, 0x38, 0xa5, 0x35, 0x8f, 0xda, 0x06, 0xcc, 0xfa, 0xcb, 0x02, + 0x5c, 0xcc, 0xae, 0x4d, 0x2c, 0x2c, 0xab, 0x70, 0x76, 0xd1, 0xf1, 0x7c, 0xcf, 0x6d, 0x38, 0xad, + 0x5a, 0xe3, 0x80, 0x36, 0x3b, 0x2a, 0x60, 0xaa, 0x5a, 0x65, 0xf6, 0xa9, 0x27, 0xc9, 0x25, 0x8a, + 0x9d, 0xa6, 0x62, 0x87, 0x32, 0x7c, 0xe1, 0xc0, 0xd7, 0xde, 0x16, 0x0d, 0x14, 0x3f, 0xde, 0xb2, + 0x9c, 0x52, 0x72, 0x5b, 0x1a, 0xd9, 0x9b, 0x3b, 0x9e, 0x1b, 0x29, 0x22, 0x6e, 0x5d, 0xc9, 0x2a, + 0xb2, 0xfe, 0x55, 0x01, 0xce, 0x63, 0x8e, 0x24, 0x23, 0xeb, 0x62, 0x1c, 0x37, 0x58, 0x86, 0xbe, + 0x2d, 0x18, 0x2f, 0x36, 0x0c, 0x6c, 0x33, 0x06, 0x2e, 0x79, 0x1b, 0x06, 0x6a, 0xd2, 0x49, 0x6a, + 0x32, 0x91, 0xd2, 0x56, 0x50, 0xb0, 0x72, 0x1b, 0xb1, 0xd8, 0x9e, 0xb3, 0x44, 0xc3, 0x06, 0xf5, + 0x30, 0xf7, 0x30, 0x3f, 0xec, 0x6b, 0x90, 0x38, 0xec, 0xd1, 0x40, 0x5e, 0xd8, 0xa3, 0x41, 0x33, + 0xec, 0x91, 0xf5, 0x94, 0x67, 0x48, 0x4a, 0x76, 0x48, 0x0c, 0xd2, 0x27, 0xa9, 0x54, 0xc5, 0x7c, + 0x1f, 0x38, 0x97, 0xd5, 0xb3, 0xdd, 0xbb, 0xa9, 0x2c, 0xc4, 0xf9, 0x71, 0x7a, 0xb7, 0xe0, 0x35, + 0x03, 0xb7, 0xda, 0x6a, 0xf9, 0xcf, 0x68, 0x73, 0x2b, 0xf0, 0x0f, 0xfd, 0xc8, 0xc8, 0x10, 0x23, + 0x72, 0x75, 0xc7, 0xd7, 0x28, 0x62, 0x56, 0x26, 0xc0, 0xd6, 0xff, 0x04, 0xaf, 0xf7, 0xe0, 0x28, + 0x3a, 0x55, 0x83, 0xb3, 0x4e, 0xa2, 0x4c, 0x7a, 0xbb, 0xbc, 0x9e, 0xd5, 0xaf, 0x24, 0xa3, 0xd0, + 0x4e, 0xd3, 0xdf, 0xd8, 0x36, 0xd2, 0xfb, 0x92, 0x32, 0x4c, 0x6f, 0xd9, 0x9b, 0x4b, 0x3b, 0x8b, + 0xdb, 0xf5, 0xed, 0x2f, 0xb7, 0x96, 0xeb, 0x3b, 0x1b, 0x0f, 0x37, 0x36, 0x1f, 0x6d, 0xf0, 0x40, + 0xd7, 0x46, 0xc9, 0xf6, 0x72, 0x75, 0xbd, 0x54, 0x20, 0xd3, 0x50, 0x32, 0xc0, 0xcb, 0x3b, 0x0b, + 0xa5, 0xe2, 0x8d, 0x6f, 0x8c, 0xb4, 0xb5, 0xe4, 0x22, 0x94, 0x6b, 0x3b, 0x5b, 0x5b, 0x9b, 0xb6, + 0xe2, 0xaa, 0x87, 0xd9, 0x9e, 0x81, 0xb3, 0x46, 0xe9, 0x3d, 0x7b, 0x79, 0xb9, 0x54, 0x60, 0x4d, + 0x31, 0xc0, 0x5b, 0xf6, 0xf2, 0xfa, 0xea, 0xce, 0x7a, 0xa9, 0x78, 0xa3, 0xae, 0x3f, 0x13, 0x23, + 0x17, 0x60, 0x76, 0x69, 0x79, 0x77, 0x75, 0x71, 0x39, 0x8b, 0xf7, 0x34, 0x94, 0xf4, 0xc2, 0xed, + 0xcd, 0xed, 0x2d, 0xce, 0x5a, 0x87, 0x3e, 0x5a, 0x5e, 0xa8, 0xee, 0x6c, 0xaf, 0x6c, 0x94, 0xfa, + 0xad, 0x81, 0x91, 0x62, 0xa9, 0x78, 0xe3, 0xc7, 0xc6, 0x1b, 0x32, 0xd6, 0x7c, 0x81, 0xbe, 0x53, + 0xab, 0xde, 0xcf, 0xaf, 0x82, 0x97, 0xae, 0xdf, 0xab, 0x96, 0x0a, 0xe4, 0x12, 0x9c, 0x37, 0xa0, + 0x5b, 0xd5, 0x5a, 0xed, 0xd1, 0xa6, 0xbd, 0xb4, 0xb6, 0x5c, 0xab, 0x95, 0x8a, 0x37, 0x76, 0x8d, + 0x50, 0x6f, 0xac, 0x86, 0xf5, 0x7b, 0xd5, 0xba, 0xbd, 0xfc, 0xf9, 0xce, 0xaa, 0xbd, 0xbc, 0x94, + 0xae, 0xc1, 0x28, 0xfd, 0x72, 0xb9, 0x56, 0x2a, 0x90, 0x29, 0x38, 0x63, 0x40, 0x37, 0x36, 0x4b, + 0xc5, 0x1b, 0x6f, 0x88, 0x68, 0x60, 0x64, 0x12, 0x60, 0x69, 0xb9, 0xb6, 0xb8, 0xbc, 0xb1, 0xb4, + 0xba, 0x71, 0xbf, 0xd4, 0x47, 0x26, 0x60, 0xb4, 0xaa, 0x7e, 0x16, 0x6e, 0x7c, 0x08, 0x67, 0x12, + 0x27, 0x6a, 0x86, 0xa1, 0x0e, 0xa3, 0xa5, 0x3e, 0x14, 0xbf, 0xfc, 0x89, 0x66, 0x4d, 0x7e, 0x38, + 0x2e, 0x15, 0x6e, 0x2c, 0xc8, 0x34, 0xaa, 0xda, 0x77, 0x4e, 0xc6, 0x60, 0x78, 0x69, 0xf9, 0x5e, + 0x75, 0x67, 0x6d, 0xbb, 0xd4, 0xc7, 0x7e, 0x2c, 0xda, 0xcb, 0xd5, 0xed, 0xe5, 0xa5, 0x52, 0x81, + 0x8c, 0xc2, 0x60, 0x6d, 0xbb, 0xba, 0xbd, 0x5c, 0x2a, 0x92, 0x11, 0x18, 0xd8, 0xa9, 0x2d, 0xdb, + 0xa5, 0xfe, 0xf9, 0x7f, 0xfe, 0x47, 0x05, 0x6e, 0xdb, 0x93, 0xef, 0x91, 0xbe, 0xd1, 0x0e, 0x93, + 0x62, 0xc9, 0x13, 0x39, 0x23, 0x73, 0x4f, 0x8e, 0xa8, 0x05, 0xcc, 0x75, 0xb9, 0xec, 0x40, 0x84, + 0xeb, 0x85, 0xdb, 0x05, 0x62, 0xa3, 0x73, 0x48, 0xe2, 0x6c, 0xa5, 0x38, 0x67, 0x1f, 0x7f, 0xe7, + 0x2e, 0x75, 0x3d, 0x92, 0x91, 0xdf, 0x00, 0x4b, 0xe7, 0x99, 0x73, 0x02, 0xf9, 0xfe, 0xc9, 0x4e, + 0x1a, 0xb2, 0xce, 0x37, 0x4e, 0x86, 0x4e, 0x1e, 0xc0, 0x04, 0xd3, 0xcd, 0x15, 0x1a, 0xb9, 0x90, + 0x24, 0xd4, 0x8e, 0x03, 0x73, 0x17, 0xb3, 0x0b, 0x55, 0x5a, 0x97, 0x71, 0xec, 0x08, 0x3f, 0x58, + 0x87, 0x44, 0x46, 0x8c, 0x90, 0x10, 0xbe, 0xe2, 0xcf, 0x9d, 0x4d, 0x80, 0x77, 0xef, 0xdc, 0x2e, + 0x90, 0x1a, 0x86, 0x6b, 0x33, 0x94, 0x7c, 0x22, 0x1f, 0xc8, 0xa5, 0xb5, 0x7f, 0xde, 0x9a, 0x8a, + 0x4a, 0xc2, 0x98, 0x73, 0x3a, 0xd8, 0x00, 0x92, 0xd6, 0x9d, 0xc9, 0x95, 0x78, 0x1e, 0x64, 0xab, + 0xd5, 0x73, 0xe7, 0x52, 0x3e, 0x7f, 0xcb, 0x4c, 0x7b, 0x22, 0xcb, 0x30, 0x29, 0x9e, 0x83, 0x0b, + 0x6d, 0x9e, 0x74, 0x3b, 0x0f, 0xe4, 0xb2, 0xb9, 0x8f, 0x72, 0x52, 0x27, 0x02, 0x32, 0x17, 0xf7, + 0x23, 0x79, 0x4c, 0x98, 0xbb, 0x90, 0x59, 0x26, 0xfa, 0x77, 0x0f, 0x26, 0xcd, 0xc3, 0x05, 0x91, + 0x03, 0x94, 0x79, 0xe6, 0xc8, 0x6d, 0x50, 0x1d, 0x66, 0xd7, 0x1d, 0x17, 0xaf, 0x28, 0x84, 0x67, + 0x99, 0xf4, 0x0b, 0x23, 0x95, 0x2e, 0x8e, 0x62, 0x35, 0xea, 0x35, 0xd5, 0x20, 0xe4, 0x85, 0x68, + 0xc7, 0xcf, 0xa6, 0x26, 0x75, 0x64, 0xd3, 0xaf, 0x8e, 0x58, 0x66, 0x62, 0xdd, 0x2c, 0x57, 0xc9, + 0xb9, 0x3c, 0xef, 0x5e, 0xb2, 0x8e, 0x4a, 0x7a, 0x82, 0xa3, 0x36, 0x27, 0x4e, 0xcd, 0xae, 0x8c, + 0x41, 0x09, 0xb4, 0x84, 0xe4, 0xa2, 0x30, 0x24, 0x39, 0x82, 0xcb, 0x65, 0x76, 0xbb, 0x40, 0xbe, + 0xc1, 0xaf, 0x3a, 0x93, 0xdd, 0x23, 0x37, 0x3a, 0x10, 0xda, 0xcf, 0x85, 0x4c, 0x06, 0xe2, 0x43, + 0xe9, 0xc2, 0xdd, 0x86, 0xe9, 0x2c, 0x87, 0x62, 0x25, 0xd0, 0x2e, 0xde, 0xc6, 0xb9, 0xb3, 0xc0, + 0x66, 0x47, 0x8d, 0x66, 0xfe, 0x20, 0x75, 0xf1, 0x67, 0xcd, 0xe5, 0xf9, 0x31, 0x4c, 0xb2, 0x59, + 0xf2, 0x90, 0xd2, 0x76, 0xb5, 0xe5, 0x3e, 0xa5, 0x21, 0x91, 0xb1, 0x76, 0x15, 0x28, 0x8f, 0xf6, + 0x7a, 0x81, 0x7c, 0x0f, 0xc6, 0x1e, 0x39, 0x51, 0xe3, 0x40, 0xc4, 0x9c, 0x94, 0x21, 0x29, 0x11, + 0x36, 0x27, 0x7f, 0x61, 0xe1, 0xed, 0x02, 0xf9, 0x21, 0x0c, 0xdf, 0xa7, 0x11, 0x3e, 0x50, 0xbe, + 0xaa, 0x7c, 0xeb, 0xb8, 0x6d, 0x72, 0xd5, 0x53, 0x2f, 0x67, 0x64, 0x83, 0x93, 0x06, 0x54, 0x72, + 0x0b, 0x80, 0x2f, 0x08, 0xc8, 0x21, 0x59, 0x3c, 0x97, 0x6a, 0x36, 0xb9, 0xcf, 0x94, 0x87, 0x16, + 0x8d, 0xe8, 0x49, 0xab, 0xcc, 0x93, 0xd1, 0x1a, 0x4c, 0xaa, 0x4c, 0x38, 0x1b, 0x18, 0x1a, 0xc4, + 0x4a, 0x30, 0x0b, 0x4f, 0xc1, 0xed, 0x43, 0xf6, 0x55, 0xf0, 0x34, 0xb0, 0x18, 0x43, 0x02, 0x57, + 0xd2, 0x59, 0x3d, 0x10, 0x85, 0xbe, 0x84, 0x4a, 0x21, 0x72, 0x34, 0x8d, 0x76, 0xc5, 0x0f, 0x23, + 0x93, 0x56, 0x41, 0xb2, 0x69, 0x7f, 0x1d, 0xe6, 0xf4, 0x7a, 0xcd, 0xa0, 0xc7, 0xf1, 0x9a, 0x9b, + 0x17, 0x4b, 0x79, 0xee, 0x6a, 0x17, 0x0c, 0x71, 0x7e, 0xeb, 0xff, 0xdd, 0x62, 0x01, 0x97, 0x93, + 0x25, 0x98, 0x92, 0x75, 0x6d, 0xb6, 0xa9, 0x57, 0xab, 0xad, 0x60, 0xd6, 0x13, 0xe9, 0xc9, 0xa1, + 0xc1, 0x24, 0x77, 0x92, 0x2e, 0x62, 0x5b, 0x9f, 0x11, 0x2b, 0x82, 0x74, 0x8b, 0x20, 0x11, 0x6f, + 0x7d, 0x99, 0xd1, 0x78, 0x1f, 0x72, 0xa3, 0x92, 0xa1, 0xfc, 0xef, 0xce, 0x93, 0x2e, 0x07, 0xa0, + 0xb9, 0x9c, 0x23, 0xc4, 0xed, 0x02, 0xf9, 0x12, 0x48, 0xfa, 0x48, 0xa2, 0x44, 0x98, 0x7b, 0xfc, + 0x52, 0x22, 0xec, 0x72, 0x9e, 0x59, 0x86, 0x29, 0x15, 0x29, 0x26, 0x2e, 0x27, 0x39, 0x6d, 0xe9, + 0xb2, 0x83, 0xcd, 0x64, 0xb0, 0xd9, 0x9d, 0xef, 0xc2, 0x28, 0x13, 0x4e, 0x3e, 0x85, 0x29, 0x31, + 0xf7, 0x8d, 0xf6, 0x94, 0xd4, 0x32, 0x26, 0x0e, 0x37, 0xb9, 0x2d, 0x79, 0x00, 0x33, 0xb5, 0x84, + 0xe0, 0xb9, 0x1f, 0xfb, 0x79, 0x93, 0x05, 0x02, 0x6b, 0x34, 0xe2, 0x92, 0xcf, 0xe6, 0xf5, 0x10, + 0x08, 0xb7, 0x2d, 0x49, 0x76, 0x4f, 0x5d, 0xfa, 0x8c, 0x5c, 0x4a, 0x34, 0x9d, 0x01, 0x11, 0x0d, + 0xd7, 0xc1, 0xdc, 0x9e, 0x6d, 0xf3, 0x5c, 0xc8, 0x08, 0x35, 0x6e, 0xc0, 0xaf, 0x18, 0x04, 0xc6, + 0x25, 0xba, 0x18, 0xc7, 0xf3, 0xb9, 0x18, 0xe4, 0xb7, 0x30, 0xd2, 0x6b, 0xf7, 0xd3, 0x19, 0xf9, + 0x5e, 0xd6, 0x21, 0x3a, 0xe7, 0x7c, 0x39, 0xf7, 0xf6, 0xc9, 0x90, 0xd5, 0x79, 0x78, 0xe2, 0x3e, + 0x8d, 0xb6, 0x5a, 0x9d, 0x7d, 0x17, 0xb3, 0x64, 0x12, 0x65, 0x7b, 0x52, 0x20, 0x31, 0xbd, 0x65, + 0x80, 0xb5, 0xb8, 0xa0, 0x46, 0x7f, 0x42, 0x56, 0xa1, 0xc4, 0xb7, 0x11, 0x8d, 0xc5, 0xa5, 0x14, + 0x0b, 0x81, 0xe2, 0x04, 0xce, 0x61, 0x98, 0x3b, 0x5a, 0xb7, 0xb8, 0xcb, 0x11, 0x91, 0x9f, 0xb6, + 0xae, 0xa7, 0x4e, 0x19, 0x30, 0x15, 0xfd, 0x9e, 0x8d, 0x88, 0x4d, 0x43, 0x1a, 0xc9, 0x90, 0x32, + 0x3c, 0x47, 0xea, 0xb5, 0x58, 0x67, 0x48, 0x97, 0xc6, 0x2b, 0x48, 0x22, 0xfc, 0xd9, 0xee, 0x5d, + 0xa2, 0xf2, 0xc6, 0x66, 0x30, 0x7d, 0xc3, 0x50, 0x6d, 0x4e, 0xc7, 0xf7, 0x1d, 0xdc, 0xca, 0x30, + 0x8c, 0xce, 0x4c, 0xdc, 0x36, 0xf6, 0x5b, 0x52, 0x4d, 0x68, 0x54, 0xbb, 0xf3, 0xb8, 0x32, 0xb2, + 0xbd, 0x96, 0x69, 0xc2, 0x9d, 0x20, 0xa0, 0x1e, 0x27, 0xce, 0x53, 0x5b, 0xb2, 0xa8, 0x3f, 0xc1, + 0x15, 0x4c, 0xa3, 0xe6, 0xcf, 0xed, 0x7a, 0xb1, 0xe0, 0x39, 0x7d, 0x6e, 0x17, 0xc8, 0xfb, 0x30, + 0x22, 0xda, 0xc8, 0x88, 0x8c, 0x46, 0x87, 0x5d, 0x5a, 0x8d, 0x94, 0xc0, 0x85, 0x84, 0x6d, 0x36, + 0x71, 0xf2, 0x46, 0x9f, 0xb7, 0xf9, 0x7d, 0xb6, 0x67, 0x37, 0x5f, 0x84, 0x72, 0x51, 0x6e, 0xde, + 0x48, 0x59, 0x56, 0x51, 0x5d, 0x24, 0xa8, 0xc7, 0x2e, 0xcb, 0x99, 0x30, 0xf5, 0x1b, 0xe3, 0x17, + 0xaa, 0x30, 0x64, 0x4a, 0xfd, 0x36, 0xc0, 0xbd, 0xb6, 0xec, 0x55, 0x28, 0x55, 0x1b, 0xb8, 0xa1, + 0xd4, 0xe8, 0xa1, 0xd3, 0x3e, 0xf0, 0x03, 0xaa, 0xce, 0x3e, 0xc9, 0x02, 0xc9, 0x6b, 0x46, 0x29, + 0x28, 0xa2, 0x60, 0x8d, 0x3a, 0x18, 0xe4, 0x79, 0x56, 0x69, 0x28, 0x89, 0xa2, 0x6c, 0x8a, 0x2e, + 0x67, 0x9d, 0xe9, 0x45, 0x76, 0x3a, 0x6b, 0xbd, 0x1c, 0x9b, 0x0f, 0x71, 0xc1, 0x50, 0xc8, 0xa1, + 0xda, 0x21, 0x14, 0x48, 0x9d, 0x0a, 0xe5, 0xcb, 0x1b, 0x85, 0x5a, 0x95, 0x57, 0xcf, 0xb1, 0x58, + 0xf2, 0xa8, 0xf3, 0xaa, 0xff, 0x01, 0x4c, 0x2e, 0xb3, 0x05, 0xbd, 0xd3, 0x74, 0x79, 0x60, 0x7b, + 0x62, 0x46, 0x2a, 0xcf, 0x25, 0x5c, 0x91, 0x69, 0xb4, 0x90, 0x54, 0x58, 0x10, 0xe4, 0x9e, 0xa2, + 0xc1, 0xe4, 0x78, 0x4c, 0x4b, 0xb6, 0x22, 0xb7, 0x00, 0x9e, 0xf0, 0x85, 0xc9, 0x60, 0x96, 0x2b, + 0x96, 0xd5, 0x76, 0xbb, 0x25, 0x2d, 0xdb, 0xfc, 0xa6, 0xfe, 0x75, 0xe3, 0x24, 0x9a, 0x2a, 0x97, + 0xbc, 0xd3, 0xba, 0xe7, 0x17, 0x5a, 0x5a, 0xdb, 0x1c, 0x9e, 0x39, 0xe5, 0xbd, 0xe6, 0xa2, 0x0a, + 0x45, 0x5d, 0x6d, 0xb5, 0x52, 0xc4, 0x21, 0x79, 0xcb, 0xe4, 0x9e, 0x85, 0xd3, 0xab, 0x06, 0x3c, + 0xe9, 0x73, 0xe5, 0xad, 0xda, 0x6e, 0xf3, 0xc5, 0xf2, 0xb2, 0x5a, 0x30, 0xcc, 0x82, 0xf4, 0x49, + 0x3f, 0x59, 0x2e, 0xd6, 0xf6, 0x07, 0x38, 0xcd, 0xe2, 0xdc, 0xb7, 0x44, 0x3f, 0x37, 0x27, 0x53, + 0xff, 0x2a, 0x5d, 0x2e, 0x51, 0xa8, 0xf6, 0x89, 0x33, 0xa8, 0x41, 0xc5, 0x89, 0x74, 0x95, 0x81, + 0x27, 0x01, 0x97, 0xfc, 0x2e, 0xe7, 0x15, 0x2b, 0x83, 0x6b, 0x29, 0x99, 0x5f, 0x5c, 0x75, 0x39, + 0x27, 0x6f, 0xbd, 0xea, 0x72, 0x6e, 0x62, 0xf2, 0x07, 0x50, 0x4a, 0xa6, 0x36, 0x56, 0x4c, 0x73, + 0x72, 0x1e, 0xe7, 0x8e, 0xc9, 0x3d, 0x98, 0xd6, 0x47, 0x54, 0xf5, 0x3b, 0x6f, 0xf5, 0xcf, 0xe3, + 0xb3, 0x0d, 0x33, 0x99, 0x99, 0x88, 0xd5, 0x16, 0xdb, 0x2d, 0x4f, 0x71, 0x2e, 0x57, 0x0a, 0xe7, + 0xb2, 0x93, 0x91, 0x93, 0xd7, 0x4c, 0xfb, 0x41, 0x76, 0x6a, 0xe6, 0xb9, 0xd7, 0x7b, 0x60, 0x09, + 0x81, 0x7e, 0x83, 0x3b, 0x60, 0xaa, 0x8e, 0xab, 0x9a, 0x45, 0x21, 0xa7, 0x02, 0xab, 0x1b, 0x8a, + 0x9a, 0x03, 0xd3, 0x19, 0xc5, 0xf9, 0x22, 0xbe, 0x96, 0xcf, 0x33, 0x9e, 0x58, 0xbb, 0x32, 0xe2, + 0x72, 0xae, 0x64, 0xba, 0x26, 0xad, 0xee, 0x72, 0x24, 0x9d, 0x53, 0xf3, 0xe1, 0xe4, 0x4d, 0xce, + 0xe3, 0xd6, 0x54, 0xd6, 0x1f, 0x23, 0xa3, 0x74, 0xd2, 0xfa, 0x93, 0x95, 0x09, 0x5b, 0x89, 0xa1, + 0x5b, 0xae, 0x75, 0xbe, 0x1b, 0x7f, 0xcd, 0xcd, 0x41, 0x66, 0x15, 0xba, 0x39, 0x28, 0x93, 0xff, + 0x95, 0x7c, 0x04, 0x9d, 0xb9, 0xc3, 0xef, 0x7e, 0x13, 0x29, 0xb1, 0x89, 0x7e, 0xe2, 0xca, 0x4e, + 0x97, 0xad, 0xe6, 0x46, 0x26, 0x8a, 0x5e, 0xc5, 0x23, 0xf9, 0x0d, 0xe6, 0x48, 0xa9, 0x4b, 0xbe, + 0xf0, 0xee, 0x6a, 0xca, 0x26, 0x94, 0xe3, 0xc1, 0x4c, 0x74, 0xe0, 0x94, 0x43, 0x29, 0x85, 0x71, + 0x3e, 0x37, 0x4b, 0x38, 0x79, 0x33, 0xf5, 0xa5, 0xe7, 0x08, 0xa6, 0x6b, 0x15, 0x7c, 0x3d, 0xd7, + 0x22, 0x38, 0x5f, 0x88, 0x6d, 0xc1, 0x7a, 0x42, 0xf1, 0xd4, 0x7a, 0x9e, 0x91, 0x6d, 0xfc, 0x3e, + 0xea, 0xc5, 0x5a, 0xc6, 0xf0, 0xdc, 0x5e, 0x5f, 0xca, 0xe2, 0x13, 0xa6, 0x57, 0x5c, 0xad, 0x5d, + 0x52, 0x4f, 0x4b, 0x16, 0x9c, 0x66, 0xc5, 0x3d, 0x49, 0xd3, 0xf2, 0xf8, 0x2c, 0xc1, 0x98, 0x96, + 0x6a, 0x9c, 0x9c, 0x37, 0xc4, 0x64, 0xec, 0xa1, 0x73, 0x46, 0xe7, 0xcc, 0xed, 0x73, 0x11, 0x2d, + 0xd2, 0x2a, 0x61, 0x79, 0x6e, 0x2b, 0x2e, 0xa4, 0x79, 0x18, 0xd6, 0x68, 0x25, 0x05, 0xde, 0x9a, + 0x8b, 0x49, 0xe1, 0x18, 0x0d, 0xca, 0xef, 0x12, 0xd1, 0x45, 0xd3, 0xa3, 0x49, 0xf9, 0xfa, 0xeb, + 0x94, 0xc8, 0x67, 0x8a, 0x69, 0x57, 0x64, 0xf4, 0xbf, 0x73, 0xca, 0xb4, 0xa6, 0x41, 0xbb, 0x58, + 0x3a, 0xb6, 0xf0, 0xe1, 0x47, 0x46, 0xee, 0x75, 0xb5, 0xc2, 0x76, 0x4d, 0xcd, 0x9e, 0xa1, 0xbb, + 0xa9, 0x35, 0x3b, 0x97, 0x63, 0xd7, 0x64, 0xec, 0xb9, 0x2d, 0xfd, 0x91, 0xb6, 0x66, 0xa7, 0x32, + 0xac, 0x93, 0xeb, 0x49, 0xc5, 0x2d, 0x2f, 0x09, 0x7b, 0x97, 0x3d, 0x61, 0x3a, 0x2b, 0x39, 0xbb, + 0x66, 0x1e, 0xce, 0xcd, 0xdc, 0x9e, 0x21, 0x05, 0x5b, 0xce, 0xff, 0x1c, 0x6e, 0x5d, 0x52, 0xb5, + 0xe7, 0xb6, 0xf0, 0x2b, 0x6d, 0xa1, 0x4b, 0xa4, 0x54, 0x57, 0xc7, 0xf1, 0x1e, 0x39, 0xd7, 0x73, + 0x79, 0x6f, 0xe0, 0x53, 0xa1, 0x74, 0x3e, 0x74, 0xa5, 0xd9, 0x74, 0xcb, 0x96, 0x9e, 0x69, 0x3d, + 0x9e, 0x49, 0x77, 0x91, 0xf1, 0x3b, 0x97, 0xb0, 0xfd, 0xf6, 0x6a, 0xd8, 0x37, 0x72, 0x31, 0xce, + 0xc8, 0xa3, 0x9e, 0x58, 0x8c, 0xf3, 0x33, 0xad, 0x77, 0x39, 0x06, 0x9d, 0xa9, 0xb9, 0xfb, 0x9e, + 0x96, 0x06, 0x5d, 0x1d, 0x82, 0xd2, 0x99, 0xd9, 0xd5, 0x12, 0x93, 0x95, 0x35, 0x7d, 0x93, 0xe9, + 0x3f, 0x5c, 0x7b, 0xd7, 0x13, 0x5a, 0x93, 0xb9, 0xfc, 0x3c, 0xde, 0x6a, 0xb9, 0xc9, 0xcc, 0x80, + 0xad, 0x31, 0xd4, 0xb3, 0x49, 0x2b, 0x86, 0x19, 0x89, 0xad, 0x15, 0xc3, 0xcc, 0xf4, 0xd3, 0xb7, + 0xd0, 0xea, 0x62, 0xfb, 0x2d, 0xaa, 0x5b, 0x5d, 0xb4, 0xf4, 0xc4, 0x09, 0xa3, 0x07, 0xf9, 0x08, + 0x4d, 0x1e, 0xdd, 0xed, 0x24, 0xb3, 0x26, 0x27, 0xdd, 0xb3, 0x64, 0x54, 0xe5, 0x7e, 0x56, 0x36, + 0xf6, 0x64, 0xfa, 0xe9, 0xb9, 0x72, 0xba, 0x40, 0xd0, 0xbf, 0x2b, 0xad, 0x26, 0xd8, 0xe0, 0xb2, + 0x69, 0x6d, 0xca, 0x6f, 0xf3, 0xbb, 0xd2, 0x64, 0x62, 0x90, 0xa5, 0x32, 0x3f, 0x27, 0xc9, 0x7e, + 0x00, 0xe3, 0x71, 0x96, 0xe7, 0xdd, 0x79, 0x8d, 0x30, 0x91, 0xfa, 0x39, 0x49, 0xf8, 0xbe, 0xbc, + 0x56, 0xc1, 0xfa, 0xcc, 0xc2, 0xee, 0x2a, 0xc0, 0x27, 0xd2, 0x44, 0x63, 0xb4, 0x34, 0x95, 0x33, + 0xba, 0xcb, 0xca, 0x3d, 0xae, 0xa7, 0xa6, 0x54, 0xf3, 0x22, 0x23, 0xb9, 0xac, 0x9a, 0x17, 0x59, + 0xc9, 0x61, 0xe3, 0x6b, 0x87, 0x2f, 0xa5, 0x3d, 0x22, 0x66, 0x7a, 0xc9, 0x68, 0x56, 0x8a, 0xef, + 0xe5, 0xbc, 0xe2, 0x24, 0xeb, 0x1a, 0x94, 0x92, 0x79, 0x34, 0xd5, 0x61, 0x2e, 0x27, 0xe1, 0xa9, + 0x3a, 0x21, 0xe6, 0x26, 0xe0, 0xdc, 0x92, 0xc6, 0x75, 0x93, 0xef, 0xd5, 0xec, 0x46, 0xe9, 0xac, + 0xf3, 0xad, 0xed, 0x13, 0x46, 0x4a, 0x4d, 0xfd, 0x98, 0x9d, 0x4a, 0xd9, 0xa9, 0xab, 0x65, 0x19, + 0x59, 0x38, 0x5d, 0x19, 0xec, 0x29, 0x3b, 0xb3, 0xf7, 0x5b, 0xe6, 0xf9, 0xb7, 0x4b, 0xfc, 0xf5, + 0x9e, 0x57, 0xd0, 0xe4, 0xd7, 0x60, 0x36, 0x27, 0x54, 0x35, 0x79, 0x3d, 0x61, 0xa6, 0xcd, 0x0e, + 0x65, 0xad, 0x26, 0x48, 0x66, 0xae, 0xeb, 0x75, 0xf4, 0x5d, 0x30, 0xc2, 0x3a, 0xa4, 0xee, 0x03, + 0x1f, 0xb9, 0xd1, 0x01, 0x4f, 0xe9, 0xac, 0xad, 0xb9, 0x99, 0xf1, 0x20, 0x48, 0x0d, 0x0f, 0x32, + 0x06, 0x34, 0xe3, 0x4a, 0x30, 0x83, 0xe1, 0x5c, 0x36, 0x43, 0xb6, 0x76, 0xb0, 0xb9, 0x90, 0x11, + 0x73, 0x43, 0xcd, 0x85, 0xfc, 0x78, 0x1c, 0xb9, 0xcd, 0xdc, 0x92, 0x0a, 0x56, 0x36, 0xc7, 0xfc, + 0xf0, 0x1b, 0xb9, 0x1c, 0x1f, 0x30, 0x8e, 0xa9, 0x88, 0x1a, 0x24, 0x07, 0xbd, 0xfb, 0xea, 0x61, + 0xcb, 0xfd, 0xda, 0xa4, 0x9a, 0xd7, 0xda, 0x97, 0x17, 0xbb, 0x23, 0xb7, 0x7d, 0xcb, 0xf2, 0x7b, + 0xca, 0x6e, 0xdf, 0x49, 0x77, 0x6c, 0x75, 0x79, 0x96, 0x08, 0xea, 0x62, 0x74, 0x54, 0x83, 0xcf, + 0xe5, 0xc0, 0xc9, 0x06, 0x3a, 0x23, 0x25, 0xa1, 0xda, 0x89, 0x36, 0x3b, 0x6a, 0x4c, 0x2e, 0x3f, + 0x3e, 0x8f, 0x8d, 0xa8, 0x1b, 0xa7, 0x99, 0xc7, 0x89, 0x70, 0x1d, 0x62, 0x1e, 0x1b, 0xd0, 0xd3, + 0xcd, 0xe3, 0x04, 0x43, 0x73, 0x1e, 0x27, 0x9b, 0x99, 0x34, 0x13, 0xe4, 0x8e, 0x6a, 0xb2, 0x99, + 0x6a, 0x1e, 0x67, 0x73, 0xcc, 0x8f, 0x8e, 0x92, 0xcb, 0x51, 0xcd, 0x63, 0x93, 0x63, 0x0e, 0xfa, + 0x09, 0xe7, 0x71, 0xb2, 0x12, 0x73, 0x1e, 0x9f, 0xaa, 0x7d, 0x6a, 0x1e, 0x67, 0xb7, 0xef, 0xd4, + 0xf3, 0x38, 0x11, 0x4e, 0xc8, 0xe8, 0x68, 0xd6, 0x3c, 0x4e, 0xe2, 0xf3, 0x79, 0x9c, 0x84, 0x26, + 0x2c, 0x33, 0x5d, 0xe6, 0x71, 0x92, 0xf2, 0x73, 0xe4, 0x97, 0x08, 0x85, 0x72, 0x92, 0x99, 0x9c, + 0x1b, 0x45, 0x85, 0x3c, 0x42, 0xdb, 0x60, 0x02, 0x7e, 0xb2, 0xd9, 0x7c, 0x31, 0x8f, 0x29, 0xce, + 0xe7, 0x5d, 0x29, 0xc4, 0x64, 0x73, 0x4d, 0xc3, 0x57, 0x76, 0x24, 0x98, 0x2e, 0x0d, 0xde, 0x65, + 0xf3, 0xa6, 0xd9, 0x85, 0x6f, 0xb7, 0x40, 0x36, 0x5d, 0xf8, 0xaa, 0x73, 0x50, 0x92, 0x6f, 0x2e, + 0x49, 0xf7, 0xf9, 0xfd, 0x85, 0xbc, 0x1d, 0x49, 0xd2, 0xcd, 0x27, 0x4e, 0x56, 0xa7, 0x6e, 0xa9, + 0x3a, 0x61, 0x25, 0x5b, 0x7a, 0xda, 0x79, 0xbe, 0x2e, 0xb5, 0x87, 0x54, 0x04, 0xac, 0x44, 0xa7, + 0xf5, 0xb9, 0x9e, 0x5b, 0x42, 0xb6, 0xd1, 0x10, 0x9c, 0x86, 0x6b, 0x46, 0xe4, 0xbc, 0x50, 0x5b, + 0x3d, 0xb9, 0xa6, 0x62, 0xf9, 0xe8, 0x5c, 0xf3, 0x02, 0xfd, 0x28, 0xae, 0x69, 0xea, 0x4f, 0xd1, + 0x74, 0x26, 0x5e, 0x7c, 0x79, 0x8f, 0xfd, 0xfc, 0x73, 0xce, 0x94, 0xe1, 0x30, 0xc5, 0x70, 0xd1, + 0x4f, 0xed, 0x63, 0x71, 0xfd, 0x27, 0x81, 0xb9, 0xc2, 0xcf, 0xa2, 0x27, 0x9f, 0x42, 0x49, 0x2c, + 0x6f, 0x31, 0x83, 0x2c, 0xc4, 0xdc, 0xa1, 0x5b, 0x90, 0x16, 0xbb, 0x13, 0xb4, 0xe0, 0x24, 0x96, + 0xba, 0x93, 0x48, 0x22, 0xdf, 0xac, 0xc5, 0xb6, 0xc3, 0xed, 0xa0, 0x13, 0x46, 0xb4, 0x99, 0x36, + 0x47, 0x99, 0x8d, 0x91, 0x6e, 0x15, 0x26, 0xfa, 0xee, 0x3c, 0x59, 0xc5, 0xb5, 0xcd, 0x04, 0x77, + 0xb3, 0xd7, 0x65, 0xb3, 0xc1, 0xa5, 0x67, 0x45, 0x3d, 0x2d, 0x32, 0xdb, 0x94, 0x57, 0x77, 0x7e, + 0xa3, 0x94, 0x88, 0x4e, 0xd8, 0xbb, 0x3c, 0x11, 0xf1, 0x03, 0x35, 0xb7, 0x1d, 0xf6, 0x92, 0x4c, + 0xf2, 0xb1, 0x13, 0xf9, 0x0c, 0x46, 0x25, 0x71, 0x6f, 0x81, 0x24, 0xa9, 0x51, 0x20, 0x4b, 0x30, + 0x61, 0xbc, 0xe4, 0x52, 0xa7, 0x9b, 0xac, 0xf7, 0x5d, 0x5d, 0xc6, 0x79, 0xc2, 0x78, 0xb1, 0xa5, + 0xb8, 0x64, 0xbd, 0xe3, 0xca, 0xe5, 0xf2, 0x43, 0x18, 0x13, 0x22, 0xed, 0x2a, 0x8d, 0x7c, 0x63, + 0xdd, 0x8c, 0xe6, 0x15, 0xdd, 0x69, 0xba, 0xd1, 0xa2, 0xef, 0x3d, 0x76, 0xf7, 0x7b, 0x0a, 0x26, + 0x4d, 0xb2, 0x3b, 0x4f, 0xbe, 0xc6, 0x04, 0xc8, 0x32, 0x2d, 0x35, 0x8d, 0x9e, 0xf9, 0xc1, 0x13, + 0xd7, 0xdb, 0xef, 0xc1, 0xf2, 0x8a, 0xc9, 0x32, 0x49, 0x27, 0x1d, 0x4f, 0xbe, 0x86, 0xb9, 0x5a, + 0x3e, 0xf3, 0x9e, 0x4c, 0xba, 0x6f, 0x2f, 0x35, 0xb8, 0x88, 0xae, 0x37, 0xa7, 0x6d, 0x7b, 0x57, + 0xa6, 0x5f, 0xf2, 0x20, 0x8a, 0xd2, 0xd0, 0xdf, 0xf0, 0x83, 0x66, 0x6f, 0x8e, 0x15, 0xd3, 0x99, + 0x37, 0x41, 0x26, 0x85, 0xf1, 0x25, 0x9c, 0xaf, 0xe5, 0xb2, 0xee, 0xc5, 0xa2, 0x97, 0x26, 0x79, + 0x01, 0x45, 0x71, 0xca, 0x76, 0x77, 0xe5, 0xb9, 0x8a, 0x6b, 0x1a, 0xdb, 0x87, 0xb6, 0x02, 0xfa, + 0x98, 0x06, 0xe8, 0x32, 0xde, 0xcb, 0x59, 0xda, 0x44, 0x97, 0x3d, 0x5f, 0x85, 0xb3, 0xb5, 0x14, + 0xab, 0x3c, 0x92, 0x5e, 0x97, 0x47, 0x53, 0xd8, 0xd3, 0x13, 0xb6, 0xab, 0x87, 0x8b, 0xd1, 0xd8, + 0x7d, 0x1a, 0xed, 0xac, 0xf6, 0x90, 0x92, 0x7c, 0xd3, 0x20, 0x11, 0x77, 0xef, 0x30, 0xca, 0x9a, + 0x46, 0x99, 0xc6, 0xc8, 0xfd, 0x78, 0x3f, 0x93, 0x17, 0x29, 0x3d, 0xab, 0xcd, 0xe3, 0x70, 0x17, + 0xd7, 0x42, 0xe1, 0x36, 0xad, 0x99, 0x20, 0x39, 0x24, 0x36, 0xd5, 0x69, 0x1e, 0xd4, 0x21, 0xa9, + 0xf2, 0xe3, 0x1f, 0x9f, 0x1e, 0x02, 0x76, 0x39, 0xe5, 0x4e, 0xdf, 0x95, 0x05, 0x37, 0xa1, 0xae, + 0xf9, 0x8d, 0x27, 0xba, 0x09, 0x55, 0x4b, 0x91, 0x3f, 0x67, 0x26, 0xb0, 0x17, 0x2b, 0x3e, 0x66, + 0xb1, 0xd7, 0xbd, 0xc6, 0xf4, 0x24, 0xf9, 0xba, 0x09, 0xd5, 0x4c, 0xe7, 0x7f, 0x57, 0xda, 0x16, + 0xb1, 0x42, 0x93, 0x73, 0xae, 0x68, 0x94, 0x59, 0x11, 0x89, 0x4c, 0xb3, 0xa2, 0xde, 0xd0, 0xfc, + 0x8b, 0x00, 0x92, 0xce, 0xe7, 0xaf, 0x0e, 0x2b, 0xb9, 0xa9, 0xfe, 0xbb, 0x38, 0x7f, 0x4d, 0x09, + 0x97, 0x21, 0x43, 0xf0, 0x2a, 0x10, 0x71, 0xba, 0x2c, 0x16, 0xa5, 0xee, 0xc9, 0x74, 0xbb, 0x40, + 0x36, 0xe0, 0xdc, 0x7d, 0x1a, 0x89, 0x35, 0xce, 0xa6, 0x61, 0x14, 0xb8, 0x8d, 0xa8, 0xeb, 0xad, + 0xa2, 0x3c, 0x9b, 0x64, 0xd0, 0xec, 0xbe, 0xc3, 0xf8, 0xd5, 0xb2, 0xf9, 0x75, 0xa5, 0xeb, 0xe2, + 0x5f, 0x2b, 0xae, 0x2a, 0x4e, 0xd3, 0xc4, 0xfc, 0x29, 0x3e, 0xcc, 0xdd, 0x77, 0xf2, 0x49, 0x4b, + 0x71, 0xd4, 0x13, 0x71, 0xda, 0xba, 0x09, 0x43, 0x9c, 0x28, 0x77, 0x43, 0x1d, 0xd7, 0x69, 0xc8, + 0x1d, 0x18, 0x55, 0xfe, 0x37, 0xc4, 0x28, 0xca, 0x6d, 0xd7, 0x1d, 0x18, 0xe5, 0x47, 0xab, 0x93, + 0x93, 0x7c, 0x04, 0xa3, 0xca, 0x61, 0xe7, 0xd4, 0x3b, 0xfd, 0xa7, 0x30, 0xa1, 0xbb, 0xee, 0x9c, + 0x5e, 0x90, 0x3f, 0xc4, 0xbb, 0x5f, 0x79, 0xc5, 0x92, 0x4f, 0x3f, 0x93, 0xc8, 0x1a, 0x26, 0x44, + 0xca, 0x17, 0x48, 0x09, 0xcc, 0x6d, 0xfe, 0xd9, 0x14, 0x35, 0xf9, 0x48, 0xbe, 0xa6, 0x52, 0xc4, + 0x69, 0xa4, 0x2e, 0x32, 0x9b, 0xe4, 0x62, 0x7e, 0x11, 0x62, 0xb5, 0xc0, 0xf6, 0x6c, 0xf6, 0x49, + 0xee, 0xa8, 0x7b, 0x8b, 0x2e, 0x8f, 0xcb, 0x26, 0x6a, 0x69, 0xa9, 0x7c, 0x76, 0xf9, 0x8c, 0x2e, + 0xe7, 0xa7, 0xc0, 0xc3, 0xc1, 0x78, 0x80, 0xa7, 0xc0, 0x54, 0x69, 0x6e, 0xf7, 0xba, 0xa4, 0xd4, + 0x8b, 0x8f, 0xbd, 0x69, 0x76, 0x5d, 0xc8, 0xba, 0x9d, 0xa2, 0xc5, 0x1b, 0xd1, 0x57, 0xc2, 0x6e, + 0x55, 0x7a, 0x40, 0x9e, 0xbc, 0xb3, 0xf9, 0x2d, 0xbb, 0x90, 0x71, 0x2b, 0xde, 0x73, 0x2c, 0xf2, + 0xd8, 0xfd, 0x1a, 0x6a, 0x87, 0x99, 0xc1, 0xc0, 0xf2, 0x99, 0x5d, 0xd7, 0x1c, 0x2b, 0x32, 0x29, + 0xd5, 0xa6, 0xf7, 0x04, 0x9f, 0xa9, 0x65, 0x67, 0xfc, 0x7b, 0xa3, 0x07, 0x17, 0x29, 0x89, 0x37, + 0x7b, 0xe2, 0xa9, 0x3b, 0xd6, 0x0b, 0x7c, 0x87, 0xcd, 0xae, 0xaf, 0x47, 0x06, 0xc3, 0x8c, 0x6b, + 0x6f, 0xe5, 0x5e, 0x9a, 0xcd, 0xd0, 0x74, 0x2f, 0xed, 0xda, 0x87, 0x3c, 0xf1, 0x7f, 0x0e, 0x95, + 0xd8, 0x7b, 0xe4, 0x74, 0x83, 0x90, 0xef, 0xd5, 0x48, 0x52, 0x92, 0x0a, 0x49, 0xb7, 0x34, 0x3c, + 0x73, 0x57, 0xf3, 0x24, 0x1c, 0x6a, 0x6e, 0x49, 0xc2, 0x2b, 0x2e, 0x91, 0xfb, 0x32, 0x2f, 0x8b, + 0x66, 0x17, 0x3b, 0xac, 0x78, 0xb7, 0xf7, 0x4a, 0x18, 0xa5, 0x47, 0xfb, 0xf4, 0x8c, 0x94, 0x73, + 0x47, 0x82, 0x91, 0xd5, 0x65, 0x78, 0x7b, 0x5f, 0x3d, 0x96, 0x73, 0xc6, 0xf5, 0xf4, 0x03, 0xea, + 0xc4, 0x6f, 0xd5, 0x12, 0xb1, 0x03, 0xf5, 0xf7, 0xc1, 0xe9, 0xa2, 0xe4, 0x43, 0xab, 0x2c, 0x0c, + 0xe5, 0x51, 0x55, 0x96, 0x55, 0x30, 0x38, 0x3b, 0x8a, 0xf8, 0x81, 0x1b, 0x3d, 0x5f, 0xb4, 0xd7, + 0x62, 0xb3, 0x82, 0x5e, 0x20, 0x79, 0x83, 0x2c, 0xb4, 0xd7, 0xc8, 0x57, 0xb8, 0x94, 0x08, 0xf6, + 0x0b, 0xbe, 0x1f, 0x85, 0x51, 0xe0, 0xb4, 0x6b, 0x8d, 0xc0, 0x6d, 0x47, 0xb9, 0x9d, 0x8e, 0x1d, + 0xc0, 0xb3, 0xc8, 0x34, 0x7f, 0x54, 0x11, 0x5b, 0x3e, 0x2b, 0xfa, 0x8e, 0x7a, 0x93, 0x93, 0x55, + 0xd8, 0xe5, 0xe4, 0x52, 0x93, 0xd1, 0xe4, 0x5f, 0x25, 0xd3, 0x3a, 0xcc, 0xe6, 0xc4, 0x2c, 0x52, + 0xb7, 0xb7, 0xdd, 0x63, 0x1a, 0xcd, 0x75, 0xaf, 0x98, 0x7c, 0x0d, 0x33, 0x99, 0x41, 0x8d, 0x94, + 0x05, 0xba, 0x5b, 0xc8, 0xa3, 0x5e, 0xcc, 0x9f, 0x40, 0x99, 0xbf, 0x06, 0x41, 0xa7, 0x67, 0x23, + 0xbe, 0x4d, 0xfc, 0x46, 0x28, 0x07, 0x21, 0xb9, 0x5e, 0xe7, 0xe3, 0xa9, 0x07, 0xef, 0xd3, 0x18, + 0xd8, 0x24, 0x91, 0x5a, 0x5d, 0x7d, 0x78, 0x59, 0x85, 0xdd, 0x1e, 0x22, 0x6d, 0xc1, 0xcc, 0x2e, + 0x0d, 0xdc, 0xc7, 0xcf, 0x93, 0x0c, 0xa5, 0x64, 0x32, 0x4b, 0xbb, 0x71, 0xfc, 0x02, 0x66, 0x17, + 0xfd, 0xc3, 0xb6, 0x78, 0xf2, 0x67, 0xf0, 0x54, 0x57, 0xf1, 0xd9, 0xe5, 0xbd, 0x1d, 0xa1, 0xe6, + 0xf2, 0x93, 0xe0, 0x2b, 0xff, 0xb7, 0x9e, 0x79, 0xf2, 0xd5, 0xc3, 0x35, 0x93, 0x7e, 0x1b, 0x27, + 0x61, 0x56, 0x56, 0x7c, 0x7d, 0x12, 0x76, 0xc9, 0x9a, 0x9f, 0xf3, 0x80, 0x6c, 0x36, 0x27, 0x11, + 0x7e, 0x17, 0xae, 0x27, 0x68, 0xed, 0x86, 0xdc, 0x5b, 0xcc, 0x94, 0xe1, 0x09, 0x8f, 0xeb, 0xcc, + 0x7c, 0xe2, 0x99, 0xed, 0xd4, 0x22, 0x3b, 0xb4, 0x5a, 0x5d, 0x54, 0x2c, 0xa2, 0x87, 0x76, 0x60, + 0x98, 0x68, 0xc4, 0x9f, 0xd0, 0x69, 0xbb, 0xad, 0xd6, 0x29, 0x62, 0x54, 0x6a, 0x3f, 0x84, 0xf1, + 0x9a, 0x5e, 0x79, 0x46, 0x25, 0xb9, 0x93, 0x42, 0x3d, 0x21, 0xea, 0xdd, 0xf6, 0x2e, 0x8e, 0xa4, + 0x6a, 0xe3, 0x39, 0x51, 0x2f, 0x72, 0x5d, 0x67, 0x8c, 0x9c, 0x6d, 0x6a, 0x17, 0xc8, 0x4a, 0xa9, + 0xa8, 0x5c, 0x67, 0xb2, 0xd3, 0xbc, 0xd5, 0x79, 0x96, 0x99, 0x64, 0xc6, 0x4c, 0x62, 0xf5, 0x4e, + 0x4d, 0xab, 0x1c, 0xea, 0xbb, 0xa6, 0xdc, 0xe4, 0x7e, 0x3e, 0x71, 0x96, 0x3a, 0xdd, 0xcf, 0x27, + 0x95, 0xfb, 0x4e, 0xf7, 0xf3, 0xc9, 0x48, 0x6c, 0xb7, 0x8c, 0xbc, 0xe2, 0xf4, 0x3c, 0x5d, 0x8c, + 0x11, 0x8a, 0x4d, 0x46, 0x16, 0xa0, 0x87, 0x7a, 0x80, 0x10, 0x9e, 0xd4, 0xa7, 0x8b, 0xad, 0x35, + 0x19, 0x18, 0x24, 0x91, 0x05, 0xe8, 0x1e, 0x94, 0x78, 0x7e, 0x83, 0x38, 0xa6, 0x62, 0xec, 0x37, + 0x98, 0x4e, 0xbb, 0xd0, 0x65, 0x50, 0x4b, 0xc9, 0x68, 0x74, 0xca, 0x64, 0x96, 0x13, 0xa6, 0xae, + 0xcb, 0x54, 0x85, 0x38, 0xe6, 0x9c, 0x32, 0x4c, 0xa5, 0xc2, 0xd0, 0xcd, 0x9d, 0xcf, 0x28, 0x51, + 0x2a, 0xe5, 0xb8, 0x1e, 0xa1, 0x4e, 0x75, 0x29, 0x23, 0x6c, 0xdd, 0xdc, 0x85, 0xcc, 0x32, 0xc1, + 0x28, 0xe2, 0xd9, 0x99, 0xb3, 0xf3, 0x53, 0xc7, 0xaf, 0xc0, 0xba, 0xe0, 0xc8, 0x6a, 0x6e, 0x9c, + 0x04, 0x55, 0xd4, 0x4a, 0x55, 0x72, 0xa2, 0x8c, 0xa4, 0xd8, 0x6f, 0x66, 0x3c, 0xd4, 0x30, 0x30, + 0x62, 0x6f, 0xb0, 0xee, 0x19, 0xba, 0xc9, 0x23, 0x99, 0x2c, 0x26, 0xa7, 0xa6, 0x5e, 0x0c, 0x72, + 0x47, 0xf0, 0x91, 0x4c, 0x0f, 0xf3, 0xaa, 0x19, 0xef, 0xc1, 0xc5, 0xc4, 0xeb, 0x0f, 0x93, 0xf1, + 0x8d, 0xec, 0x27, 0x22, 0x99, 0xe2, 0xc9, 0xd7, 0xd9, 0xaf, 0xa4, 0x5f, 0x89, 0x24, 0xc6, 0xfd, + 0xb4, 0x6b, 0xde, 0x3a, 0x4c, 0xe2, 0x32, 0x23, 0xd3, 0xbb, 0xc7, 0xf1, 0x69, 0x4c, 0x70, 0x32, + 0x50, 0x52, 0xb2, 0x54, 0xb9, 0xcc, 0x8e, 0x8b, 0x17, 0xc5, 0x3c, 0x59, 0xfc, 0x9c, 0xf9, 0xcc, + 0x18, 0x81, 0x59, 0xbb, 0x98, 0xc8, 0x41, 0x4f, 0x7e, 0x08, 0x67, 0xe2, 0x87, 0xc6, 0x9c, 0x45, + 0x06, 0x5a, 0x17, 0x43, 0xd9, 0x99, 0xf8, 0xb5, 0xf1, 0xe9, 0xc9, 0x57, 0xe4, 0x56, 0x14, 0x93, + 0x5f, 0x4a, 0xbd, 0x95, 0x31, 0xfa, 0x70, 0x92, 0x1d, 0x49, 0x93, 0xed, 0x69, 0x47, 0xa7, 0x81, + 0x9f, 0x5b, 0x76, 0xe8, 0x45, 0xfd, 0x73, 0xeb, 0x1a, 0x1e, 0x52, 0xa9, 0xbf, 0x39, 0x7c, 0xd6, + 0xe1, 0x1a, 0x86, 0x6b, 0xd9, 0xe2, 0x01, 0xfa, 0xb2, 0xb1, 0xf2, 0xdb, 0x9e, 0x0c, 0xf2, 0xd2, + 0x82, 0xab, 0x3d, 0x63, 0x4f, 0x92, 0x5b, 0x86, 0x8b, 0x4b, 0xef, 0x28, 0x95, 0x5d, 0x4e, 0x1e, + 0xd3, 0x59, 0x21, 0x1c, 0xd5, 0x3e, 0xdb, 0x25, 0x9a, 0xa4, 0xda, 0x67, 0xbb, 0xc6, 0x80, 0xfc, + 0x02, 0x33, 0x30, 0x89, 0x3d, 0x0a, 0x43, 0x30, 0x51, 0x8f, 0x07, 0xa5, 0xee, 0x7a, 0xed, 0x73, + 0xd5, 0xbc, 0x14, 0x4d, 0x11, 0xe2, 0x99, 0xe6, 0xb2, 0x38, 0x89, 0xe5, 0x31, 0xef, 0xcd, 0xa4, + 0x8b, 0x6b, 0xf5, 0x65, 0x3e, 0x01, 0x4f, 0xdd, 0xf2, 0x1c, 0xf8, 0xc2, 0xd2, 0xcf, 0xff, 0xfd, + 0xe5, 0xc2, 0xcf, 0x7f, 0x71, 0xb9, 0xf0, 0xaf, 0x7f, 0x71, 0xb9, 0xf0, 0xef, 0x7e, 0x71, 0xb9, + 0xf0, 0xd5, 0xfc, 0xc9, 0x42, 0x23, 0x37, 0x5a, 0x2e, 0xf5, 0xa2, 0x5b, 0x9c, 0xdd, 0x10, 0xfe, + 0x77, 0xf7, 0xbf, 0x07, 0x00, 0x00, 0xff, 0xff, 0x65, 0xf0, 0x6c, 0x6d, 0xf0, 0xe8, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -34866,6 +34880,15 @@ func (m *PaginatedResource) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if m.Resource != nil { + { + size := m.Resource.Size() + i -= size + if _, err := m.Resource.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } if m.RequiresRequest { i-- if m.RequiresRequest { @@ -34885,15 +34908,6 @@ func (m *PaginatedResource) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x6a } } - if m.Resource != nil { - { - size := m.Resource.Size() - i -= size - if _, err := m.Resource.MarshalTo(dAtA[i:]); err != nil { - return 0, err - } - } - } return len(dAtA) - i, nil } @@ -35128,6 +35142,27 @@ func (m *PaginatedResource_SAMLIdPServiceProvider) MarshalToSizedBuffer(dAtA []b } return len(dAtA) - i, nil } +func (m *PaginatedResource_GitServer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *PaginatedResource_GitServer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GitServer != nil { + { + size, err := m.GitServer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthservice(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a + } + return len(dAtA) - i, nil +} func (m *ListUnifiedResourcesRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -35849,12 +35884,12 @@ func (m *SessionTrackerUpdateExpiry) MarshalToSizedBuffer(dAtA []byte) (int, err copy(dAtA[i:], m.XXX_unrecognized) } if m.Expires != nil { - n98, err98 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err98 != nil { - return 0, err98 + n99, err99 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err99 != nil { + return 0, err99 } - i -= n98 - i = encodeVarintAuthservice(dAtA, i, uint64(n98)) + i -= n99 + i = encodeVarintAuthservice(dAtA, i, uint64(n99)) i-- dAtA[i] = 0xa } @@ -42553,6 +42588,18 @@ func (m *PaginatedResource_SAMLIdPServiceProvider) Size() (n int) { } return n } +func (m *PaginatedResource_GitServer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GitServer != nil { + l = m.GitServer.Size() + n += 1 + l + sovAuthservice(uint64(l)) + } + return n +} func (m *ListUnifiedResourcesRequest) Size() (n int) { if m == nil { return 0 @@ -63799,6 +63846,41 @@ func (m *PaginatedResource) Unmarshal(dAtA []byte) error { } } m.RequiresRequest = bool(v != 0) + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitServer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &types.ServerV2{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Resource = &PaginatedResource_GitServer{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipAuthservice(dAtA[iNdEx:]) diff --git a/api/constants/constants.go b/api/constants/constants.go index a504937659a5b..e7987b8ae15f8 100644 --- a/api/constants/constants.go +++ b/api/constants/constants.go @@ -405,6 +405,15 @@ const ( // TraitHostUserGID is the name of the variable used to specify // the GID to create host user account with. TraitHostUserGID = "host_user_gid" + + // TraitGitHubUsername is the name of the variable used to store the GitHub + // login. This trait expects a singler username so values besides the first + // will be ignored. + TraitGitHubUsername = "github_username" + + // TraitGitHubOrganizations is the name of the variable used to store + // allowed GitHub organizations. + TraitGitHubOrganizations = "github_orgs" ) const ( diff --git a/api/gen/proto/go/teleport/gitserver/v1/git_server_service.pb.go b/api/gen/proto/go/teleport/gitserver/v1/git_server_service.pb.go new file mode 100644 index 0000000000000..11e07d7b77153 --- /dev/null +++ b/api/gen/proto/go/teleport/gitserver/v1/git_server_service.pb.go @@ -0,0 +1,329 @@ +// Copyright 2024 Gravitational, Inc +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.34.2 +// protoc (unknown) +// source: teleport/gitserver/v1/git_server_service.proto + +package gitserverv1 + +import ( + types "github.com/gravitational/teleport/api/types" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + emptypb "google.golang.org/protobuf/types/known/emptypb" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// The request for GetGitServer. +type GetGitServerRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Name is the uuid of the server. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *GetGitServerRequest) Reset() { + *x = GetGitServerRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetGitServerRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetGitServerRequest) ProtoMessage() {} + +func (x *GetGitServerRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetGitServerRequest.ProtoReflect.Descriptor instead. +func (*GetGitServerRequest) Descriptor() ([]byte, []int) { + return file_teleport_gitserver_v1_git_server_service_proto_rawDescGZIP(), []int{0} +} + +func (x *GetGitServerRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// The request for UpsertGitServer. +type UpsertGitServerRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Server is the Git server to upsert. + Server *types.ServerV2 `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"` +} + +func (x *UpsertGitServerRequest) Reset() { + *x = UpsertGitServerRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpsertGitServerRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpsertGitServerRequest) ProtoMessage() {} + +func (x *UpsertGitServerRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpsertGitServerRequest.ProtoReflect.Descriptor instead. +func (*UpsertGitServerRequest) Descriptor() ([]byte, []int) { + return file_teleport_gitserver_v1_git_server_service_proto_rawDescGZIP(), []int{1} +} + +func (x *UpsertGitServerRequest) GetServer() *types.ServerV2 { + if x != nil { + return x.Server + } + return nil +} + +// The request for DeleteGitServer. +type DeleteGitServerRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Name is the uuid of the server. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *DeleteGitServerRequest) Reset() { + *x = DeleteGitServerRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteGitServerRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteGitServerRequest) ProtoMessage() {} + +func (x *DeleteGitServerRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_gitserver_v1_git_server_service_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteGitServerRequest.ProtoReflect.Descriptor instead. +func (*DeleteGitServerRequest) Descriptor() ([]byte, []int) { + return file_teleport_gitserver_v1_git_server_service_proto_rawDescGZIP(), []int{2} +} + +func (x *DeleteGitServerRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +var File_teleport_gitserver_v1_git_server_service_proto protoreflect.FileDescriptor + +var file_teleport_gitserver_v1_git_server_service_proto_rawDesc = []byte{ + 0x0a, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x67, 0x69, 0x74, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x72, 0x76, + 0x65, 0x72, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x15, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x67, 0x69, 0x74, 0x73, 0x65, + 0x72, 0x76, 0x65, 0x72, 0x2e, 0x76, 0x31, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x6c, + 0x65, 0x67, 0x61, 0x63, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x29, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x47, 0x69, + 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x22, 0x41, 0x0a, 0x16, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x47, 0x69, 0x74, 0x53, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, + 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x32, 0x52, 0x06, 0x73, + 0x65, 0x72, 0x76, 0x65, 0x72, 0x22, 0x2c, 0x0a, 0x16, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, + 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x32, 0x8c, 0x02, 0x0a, 0x10, 0x47, 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, + 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x47, + 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2a, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x2e, 0x67, 0x69, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x76, 0x31, + 0x2e, 0x47, 0x65, 0x74, 0x47, 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x56, 0x32, 0x12, 0x51, 0x0a, 0x0f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x47, + 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x2e, 0x67, 0x69, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2e, 0x76, 0x31, + 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x47, 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, + 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x56, 0x32, 0x12, 0x58, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x47, 0x69, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x2d, 0x2e, 0x74, 0x65, + 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x67, 0x69, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, + 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x69, 0x74, 0x53, 0x65, 0x72, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x42, 0x56, 0x5a, 0x54, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x74, + 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x65, 0x6e, 0x2f, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, + 0x74, 0x2f, 0x67, 0x69, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x76, 0x31, 0x3b, 0x67, + 0x69, 0x74, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, +} + +var ( + file_teleport_gitserver_v1_git_server_service_proto_rawDescOnce sync.Once + file_teleport_gitserver_v1_git_server_service_proto_rawDescData = file_teleport_gitserver_v1_git_server_service_proto_rawDesc +) + +func file_teleport_gitserver_v1_git_server_service_proto_rawDescGZIP() []byte { + file_teleport_gitserver_v1_git_server_service_proto_rawDescOnce.Do(func() { + file_teleport_gitserver_v1_git_server_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_teleport_gitserver_v1_git_server_service_proto_rawDescData) + }) + return file_teleport_gitserver_v1_git_server_service_proto_rawDescData +} + +var file_teleport_gitserver_v1_git_server_service_proto_msgTypes = make([]protoimpl.MessageInfo, 3) +var file_teleport_gitserver_v1_git_server_service_proto_goTypes = []any{ + (*GetGitServerRequest)(nil), // 0: teleport.gitserver.v1.GetGitServerRequest + (*UpsertGitServerRequest)(nil), // 1: teleport.gitserver.v1.UpsertGitServerRequest + (*DeleteGitServerRequest)(nil), // 2: teleport.gitserver.v1.DeleteGitServerRequest + (*types.ServerV2)(nil), // 3: types.ServerV2 + (*emptypb.Empty)(nil), // 4: google.protobuf.Empty +} +var file_teleport_gitserver_v1_git_server_service_proto_depIdxs = []int32{ + 3, // 0: teleport.gitserver.v1.UpsertGitServerRequest.server:type_name -> types.ServerV2 + 0, // 1: teleport.gitserver.v1.GitServerService.GetGitServer:input_type -> teleport.gitserver.v1.GetGitServerRequest + 1, // 2: teleport.gitserver.v1.GitServerService.UpsertGitServer:input_type -> teleport.gitserver.v1.UpsertGitServerRequest + 2, // 3: teleport.gitserver.v1.GitServerService.DeleteGitServer:input_type -> teleport.gitserver.v1.DeleteGitServerRequest + 3, // 4: teleport.gitserver.v1.GitServerService.GetGitServer:output_type -> types.ServerV2 + 3, // 5: teleport.gitserver.v1.GitServerService.UpsertGitServer:output_type -> types.ServerV2 + 4, // 6: teleport.gitserver.v1.GitServerService.DeleteGitServer:output_type -> google.protobuf.Empty + 4, // [4:7] is the sub-list for method output_type + 1, // [1:4] is the sub-list for method input_type + 1, // [1:1] is the sub-list for extension type_name + 1, // [1:1] is the sub-list for extension extendee + 0, // [0:1] is the sub-list for field type_name +} + +func init() { file_teleport_gitserver_v1_git_server_service_proto_init() } +func file_teleport_gitserver_v1_git_server_service_proto_init() { + if File_teleport_gitserver_v1_git_server_service_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_teleport_gitserver_v1_git_server_service_proto_msgTypes[0].Exporter = func(v any, i int) any { + switch v := v.(*GetGitServerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_teleport_gitserver_v1_git_server_service_proto_msgTypes[1].Exporter = func(v any, i int) any { + switch v := v.(*UpsertGitServerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_teleport_gitserver_v1_git_server_service_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*DeleteGitServerRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_teleport_gitserver_v1_git_server_service_proto_rawDesc, + NumEnums: 0, + NumMessages: 3, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_teleport_gitserver_v1_git_server_service_proto_goTypes, + DependencyIndexes: file_teleport_gitserver_v1_git_server_service_proto_depIdxs, + MessageInfos: file_teleport_gitserver_v1_git_server_service_proto_msgTypes, + }.Build() + File_teleport_gitserver_v1_git_server_service_proto = out.File + file_teleport_gitserver_v1_git_server_service_proto_rawDesc = nil + file_teleport_gitserver_v1_git_server_service_proto_goTypes = nil + file_teleport_gitserver_v1_git_server_service_proto_depIdxs = nil +} diff --git a/api/gen/proto/go/teleport/gitserver/v1/git_server_service_grpc.pb.go b/api/gen/proto/go/teleport/gitserver/v1/git_server_service_grpc.pb.go new file mode 100644 index 0000000000000..0295d38e7f011 --- /dev/null +++ b/api/gen/proto/go/teleport/gitserver/v1/git_server_service_grpc.pb.go @@ -0,0 +1,223 @@ +// Copyright 2024 Gravitational, Inc +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc (unknown) +// source: teleport/gitserver/v1/git_server_service.proto + +package gitserverv1 + +import ( + context "context" + types "github.com/gravitational/teleport/api/types" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + emptypb "google.golang.org/protobuf/types/known/emptypb" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + GitServerService_GetGitServer_FullMethodName = "/teleport.gitserver.v1.GitServerService/GetGitServer" + GitServerService_UpsertGitServer_FullMethodName = "/teleport.gitserver.v1.GitServerService/UpsertGitServer" + GitServerService_DeleteGitServer_FullMethodName = "/teleport.gitserver.v1.GitServerService/DeleteGitServer" +) + +// GitServerServiceClient is the client API for GitServerService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +// +// GitServerService provides methods to manage Git server. +type GitServerServiceClient interface { + // GetGitServer is used to retrieve a Git server object. + GetGitServer(ctx context.Context, in *GetGitServerRequest, opts ...grpc.CallOption) (*types.ServerV2, error) + // UpsertGitServer is used to create or replace a Git server object. + UpsertGitServer(ctx context.Context, in *UpsertGitServerRequest, opts ...grpc.CallOption) (*types.ServerV2, error) + // DeleteGitServer is used to delete a Git server object. + DeleteGitServer(ctx context.Context, in *DeleteGitServerRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) +} + +type gitServerServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewGitServerServiceClient(cc grpc.ClientConnInterface) GitServerServiceClient { + return &gitServerServiceClient{cc} +} + +func (c *gitServerServiceClient) GetGitServer(ctx context.Context, in *GetGitServerRequest, opts ...grpc.CallOption) (*types.ServerV2, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(types.ServerV2) + err := c.cc.Invoke(ctx, GitServerService_GetGitServer_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *gitServerServiceClient) UpsertGitServer(ctx context.Context, in *UpsertGitServerRequest, opts ...grpc.CallOption) (*types.ServerV2, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(types.ServerV2) + err := c.cc.Invoke(ctx, GitServerService_UpsertGitServer_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *gitServerServiceClient) DeleteGitServer(ctx context.Context, in *DeleteGitServerRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, GitServerService_DeleteGitServer_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// GitServerServiceServer is the server API for GitServerService service. +// All implementations must embed UnimplementedGitServerServiceServer +// for forward compatibility. +// +// GitServerService provides methods to manage Git server. +type GitServerServiceServer interface { + // GetGitServer is used to retrieve a Git server object. + GetGitServer(context.Context, *GetGitServerRequest) (*types.ServerV2, error) + // UpsertGitServer is used to create or replace a Git server object. + UpsertGitServer(context.Context, *UpsertGitServerRequest) (*types.ServerV2, error) + // DeleteGitServer is used to delete a Git server object. + DeleteGitServer(context.Context, *DeleteGitServerRequest) (*emptypb.Empty, error) + mustEmbedUnimplementedGitServerServiceServer() +} + +// UnimplementedGitServerServiceServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedGitServerServiceServer struct{} + +func (UnimplementedGitServerServiceServer) GetGitServer(context.Context, *GetGitServerRequest) (*types.ServerV2, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetGitServer not implemented") +} +func (UnimplementedGitServerServiceServer) UpsertGitServer(context.Context, *UpsertGitServerRequest) (*types.ServerV2, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpsertGitServer not implemented") +} +func (UnimplementedGitServerServiceServer) DeleteGitServer(context.Context, *DeleteGitServerRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteGitServer not implemented") +} +func (UnimplementedGitServerServiceServer) mustEmbedUnimplementedGitServerServiceServer() {} +func (UnimplementedGitServerServiceServer) testEmbeddedByValue() {} + +// UnsafeGitServerServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to GitServerServiceServer will +// result in compilation errors. +type UnsafeGitServerServiceServer interface { + mustEmbedUnimplementedGitServerServiceServer() +} + +func RegisterGitServerServiceServer(s grpc.ServiceRegistrar, srv GitServerServiceServer) { + // If the following call pancis, it indicates UnimplementedGitServerServiceServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&GitServerService_ServiceDesc, srv) +} + +func _GitServerService_GetGitServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetGitServerRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GitServerServiceServer).GetGitServer(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: GitServerService_GetGitServer_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GitServerServiceServer).GetGitServer(ctx, req.(*GetGitServerRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _GitServerService_UpsertGitServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpsertGitServerRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GitServerServiceServer).UpsertGitServer(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: GitServerService_UpsertGitServer_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GitServerServiceServer).UpsertGitServer(ctx, req.(*UpsertGitServerRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _GitServerService_DeleteGitServer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteGitServerRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(GitServerServiceServer).DeleteGitServer(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: GitServerService_DeleteGitServer_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(GitServerServiceServer).DeleteGitServer(ctx, req.(*DeleteGitServerRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// GitServerService_ServiceDesc is the grpc.ServiceDesc for GitServerService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var GitServerService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "teleport.gitserver.v1.GitServerService", + HandlerType: (*GitServerServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetGitServer", + Handler: _GitServerService_GetGitServer_Handler, + }, + { + MethodName: "UpsertGitServer", + Handler: _GitServerService_UpsertGitServer_Handler, + }, + { + MethodName: "DeleteGitServer", + Handler: _GitServerService_DeleteGitServer_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "teleport/gitserver/v1/git_server_service.proto", +} diff --git a/api/proto/teleport/gitserver/v1/git_server_service.proto b/api/proto/teleport/gitserver/v1/git_server_service.proto new file mode 100644 index 0000000000000..e7faae0ad4932 --- /dev/null +++ b/api/proto/teleport/gitserver/v1/git_server_service.proto @@ -0,0 +1,50 @@ +// Copyright 2024 Gravitational, Inc +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package teleport.gitserver.v1; + +import "google/protobuf/empty.proto"; +import "teleport/legacy/types/types.proto"; + +option go_package = "github.com/gravitational/teleport/api/gen/proto/go/teleport/gitserver/v1;gitserverv1"; + +// GitServerService provides methods to manage Git server. +service GitServerService { + // GetGitServer is used to retrieve a Git server object. + rpc GetGitServer(GetGitServerRequest) returns (types.ServerV2); + // UpsertGitServer is used to create or replace a Git server object. + rpc UpsertGitServer(UpsertGitServerRequest) returns (types.ServerV2); + // DeleteGitServer is used to delete a Git server object. + rpc DeleteGitServer(DeleteGitServerRequest) returns (google.protobuf.Empty); +} + +// The request for GetGitServer. +message GetGitServerRequest { + // Name is the uuid of the server. + string name = 1; +} + +// The request for UpsertGitServer. +message UpsertGitServerRequest { + // Server is the Git server to upsert. + types.ServerV2 server = 1; +} + +// The request for DeleteGitServer. +message DeleteGitServerRequest { + // Name is the uuid of the server. + string name = 1; +} diff --git a/api/proto/teleport/legacy/client/proto/authservice.proto b/api/proto/teleport/legacy/client/proto/authservice.proto index 6cb986096e777..b3e9682725098 100644 --- a/api/proto/teleport/legacy/client/proto/authservice.proto +++ b/api/proto/teleport/legacy/client/proto/authservice.proto @@ -1931,6 +1931,8 @@ message PaginatedResource { types.AppServerOrSAMLIdPServiceProviderV1 AppServerOrSAMLIdPServiceProvider = 11 [deprecated = true]; // SAMLIdPServiceProvider represents a SAML IdP service provider resource. types.SAMLIdPServiceProviderV1 SAMLIdPServiceProvider = 12 [(gogoproto.jsontag) = "saml_idp_service_provider,omitempty"]; + // GitServer represents a Git server resource. + types.ServerV2 git_server = 15 [(gogoproto.jsontag) = "git_server,omitempty"]; } // Logins allowed for the included resource. Only to be populated for SSH and Desktops. diff --git a/api/proto/teleport/legacy/types/events/events.proto b/api/proto/teleport/legacy/types/events/events.proto index d68da1bc8f85e..28cf0a72c8135 100644 --- a/api/proto/teleport/legacy/types/events/events.proto +++ b/api/proto/teleport/legacy/types/events/events.proto @@ -4594,6 +4594,7 @@ message OneOf { events.PluginCreate PluginCreate = 170; events.PluginUpdate PluginUpdate = 171; events.PluginDelete PluginDelete = 172; + events.GitCommand GitCommand = 173; } } @@ -6866,3 +6867,69 @@ message SPIFFEFederationDelete { (gogoproto.jsontag) = "" ]; } + +// GitCommand is emitted when a user performance a Git fetch or push command. +message GitCommand { + // Metadata is a common event metadata + Metadata Metadata = 1 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // User is a common user event metadata + UserMetadata User = 2 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ConnectionMetadata holds information about the connection + ConnectionMetadata Connection = 3 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // SessionMetadata is a common event session metadata + SessionMetadata Session = 4 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // ServerMetadata is a common server metadata + ServerMetadata Server = 5 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // CommandMetadata is a common command metadata + CommandMetadata Command = 6 [ + (gogoproto.nullable) = false, + (gogoproto.embed) = true, + (gogoproto.jsontag) = "" + ]; + + // Service is the type of the git request like git-upload-pack or + // git-receive-pack. + string service = 8 [(gogoproto.jsontag) = "service"]; + // Path is the Git repo path, usually /. + string path = 9 [(gogoproto.jsontag) = "path"]; + + // Actions defines details for a Git push. + repeated GitCommandAction actions = 10 [(gogoproto.jsontag) = "actions,omitempty"]; +} + +// GitCommandAction defines details for a Git push. +message GitCommandAction { + // Action type like create or update. + string Action = 1 [(gogoproto.jsontag) = "action,omitempty"]; + // Reference name like ref/main/my_branch. + string Reference = 2 [(gogoproto.jsontag) = "reference,omitempty"]; + // Old is the old hash. + string Old = 3 [(gogoproto.jsontag) = "old,omitempty"]; + // New is the new hash. + string New = 4 [(gogoproto.jsontag) = "new,omitempty"]; +} diff --git a/api/proto/teleport/legacy/types/types.proto b/api/proto/teleport/legacy/types/types.proto index 5f436a8184763..b416904eadcb0 100644 --- a/api/proto/teleport/legacy/types/types.proto +++ b/api/proto/teleport/legacy/types/types.proto @@ -3164,6 +3164,16 @@ message RoleConditions { reserved "SAMLIdPServiceProviderLabels"; reserved 41; // removed saml_idp_service_provider_labels_expression in favor of using app_labels_expression. reserved "SAMLIdPServiceProviderLabelsExpression"; + + repeated GitHubPermission github_permissions = 42 [ + (gogoproto.nullable) = false, + (gogoproto.jsontag) = "github_permissions,omitempty" + ]; +} + +// GitHubPermission defines Git integration related permissions. +message GitHubPermission { + repeated string organizations = 1 [(gogoproto.jsontag) = "orgs,omitempty"]; } // SPIFFERoleCondition sets out which SPIFFE identities this role is allowed or diff --git a/api/types/constants.go b/api/types/constants.go index 7f6dfa39ea1c5..2bd33a31dfdbf 100644 --- a/api/types/constants.go +++ b/api/types/constants.go @@ -163,11 +163,15 @@ const ( // It uses the private key created above to SSH into the host. SubKindOpenSSHEICENode = "openssh-ec2-ice" - // SubKindOpenSSHGitHub is a virtual presentation of the GitHub server (per - // organization) for proxing Git protocol to GitHub over SSH. - // - // It uses a Teleport CA that is stored per GitHub integration. - SubKindOpenSSHGitHub = "openssh-github" + /* + // SubKindOpenSSHGitHub is a virtual presentation of the GitHub server (per + // organization) for proxing Git protocol to GitHub over SSH. + // + // It uses a Teleport CA that is stored per GitHub integration. + SubKindOpenSSHGitHub = "openssh-github" + */ + KindGitServer = "git_server" + SubKindGitHub = "github" // KindUnifiedResource is a meta Kind that is used for the unified resource search present on // the webUI and Connect. It allows us to query and return multiple kinds at the same time @@ -1375,3 +1379,7 @@ const ( // interacting with a plugin via SCIM. Useful for diagnostic display. SCIMBaseURLLabel = TeleportNamespace + "/scim-base-url" ) + +const ( + GitHubServerDomain = "github-organization" +) diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index 3b43bd71c11e7..0009fc96cfae2 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -7756,6 +7756,7 @@ type OneOf struct { // *OneOf_PluginCreate // *OneOf_PluginUpdate // *OneOf_PluginDelete + // *OneOf_GitCommand Event isOneOf_Event `protobuf_oneof:"Event"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -8314,6 +8315,9 @@ type OneOf_PluginUpdate struct { type OneOf_PluginDelete struct { PluginDelete *PluginDelete `protobuf:"bytes,172,opt,name=PluginDelete,proto3,oneof" json:"PluginDelete,omitempty"` } +type OneOf_GitCommand struct { + GitCommand *GitCommand `protobuf:"bytes,173,opt,name=GitCommand,proto3,oneof" json:"GitCommand,omitempty"` +} func (*OneOf_UserLogin) isOneOf_Event() {} func (*OneOf_UserCreate) isOneOf_Event() {} @@ -8486,6 +8490,7 @@ func (*OneOf_SPIFFEFederationDelete) isOneOf_Event() {} func (*OneOf_PluginCreate) isOneOf_Event() {} func (*OneOf_PluginUpdate) isOneOf_Event() {} func (*OneOf_PluginDelete) isOneOf_Event() {} +func (*OneOf_GitCommand) isOneOf_Event() {} func (m *OneOf) GetEvent() isOneOf_Event { if m != nil { @@ -9691,6 +9696,13 @@ func (m *OneOf) GetPluginDelete() *PluginDelete { return nil } +func (m *OneOf) GetGitCommand() *GitCommand { + if x, ok := m.GetEvent().(*OneOf_GitCommand); ok { + return x.GitCommand + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*OneOf) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -9865,6 +9877,7 @@ func (*OneOf) XXX_OneofWrappers() []interface{} { (*OneOf_PluginCreate)(nil), (*OneOf_PluginUpdate)(nil), (*OneOf_PluginDelete)(nil), + (*OneOf_GitCommand)(nil), } } @@ -13785,6 +13798,113 @@ func (m *SPIFFEFederationDelete) XXX_DiscardUnknown() { var xxx_messageInfo_SPIFFEFederationDelete proto.InternalMessageInfo +// GitCommand is emitted when a user performance a Git fetch or push command. +type GitCommand struct { + // Metadata is a common event metadata + Metadata `protobuf:"bytes,1,opt,name=Metadata,proto3,embedded=Metadata" json:""` + // User is a common user event metadata + UserMetadata `protobuf:"bytes,2,opt,name=User,proto3,embedded=User" json:""` + // ConnectionMetadata holds information about the connection + ConnectionMetadata `protobuf:"bytes,3,opt,name=Connection,proto3,embedded=Connection" json:""` + // SessionMetadata is a common event session metadata + SessionMetadata `protobuf:"bytes,4,opt,name=Session,proto3,embedded=Session" json:""` + // ServerMetadata is a common server metadata + ServerMetadata `protobuf:"bytes,5,opt,name=Server,proto3,embedded=Server" json:""` + // CommandMetadata is a common command metadata + CommandMetadata `protobuf:"bytes,6,opt,name=Command,proto3,embedded=Command" json:""` + // Service is the type of the git request like git-upload-pack or + // git-receive-pack. + Service string `protobuf:"bytes,7,opt,name=service,proto3" json:"service"` + // Path is the Git repo path, usually /. + Path string `protobuf:"bytes,8,opt,name=path,proto3" json:"path"` + // Actions defines details for a Git push. + Actions []*GitCommandAction `protobuf:"bytes,9,rep,name=actions,proto3" json:"actions,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitCommand) Reset() { *m = GitCommand{} } +func (m *GitCommand) String() string { return proto.CompactTextString(m) } +func (*GitCommand) ProtoMessage() {} +func (*GitCommand) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{216} +} +func (m *GitCommand) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitCommand) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitCommand.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitCommand) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitCommand.Merge(m, src) +} +func (m *GitCommand) XXX_Size() int { + return m.Size() +} +func (m *GitCommand) XXX_DiscardUnknown() { + xxx_messageInfo_GitCommand.DiscardUnknown(m) +} + +var xxx_messageInfo_GitCommand proto.InternalMessageInfo + +// GitCommandAction defines details for a Git push. +type GitCommandAction struct { + // Action type like create or update. + Action string `protobuf:"bytes,1,opt,name=Action,proto3" json:"action,omitempty"` + // Reference name like ref/main/my_branch. + Reference string `protobuf:"bytes,2,opt,name=Reference,proto3" json:"reference,omitempty"` + // Old is the old hash. + Old string `protobuf:"bytes,3,opt,name=Old,proto3" json:"old,omitempty"` + // New is the new hash. + New string `protobuf:"bytes,4,opt,name=New,proto3" json:"new,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitCommandAction) Reset() { *m = GitCommandAction{} } +func (m *GitCommandAction) String() string { return proto.CompactTextString(m) } +func (*GitCommandAction) ProtoMessage() {} +func (*GitCommandAction) Descriptor() ([]byte, []int) { + return fileDescriptor_007ba1c3d6266d56, []int{217} +} +func (m *GitCommandAction) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitCommandAction) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitCommandAction.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitCommandAction) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitCommandAction.Merge(m, src) +} +func (m *GitCommandAction) XXX_Size() int { + return m.Size() +} +func (m *GitCommandAction) XXX_DiscardUnknown() { + xxx_messageInfo_GitCommandAction.DiscardUnknown(m) +} + +var xxx_messageInfo_GitCommandAction proto.InternalMessageInfo + func init() { proto.RegisterEnum("events.UserKind", UserKind_name, UserKind_value) proto.RegisterEnum("events.EventAction", EventAction_name, EventAction_value) @@ -14025,6 +14145,8 @@ func init() { proto.RegisterType((*AccessGraphSettingsUpdate)(nil), "events.AccessGraphSettingsUpdate") proto.RegisterType((*SPIFFEFederationCreate)(nil), "events.SPIFFEFederationCreate") proto.RegisterType((*SPIFFEFederationDelete)(nil), "events.SPIFFEFederationDelete") + proto.RegisterType((*GitCommand)(nil), "events.GitCommand") + proto.RegisterType((*GitCommandAction)(nil), "events.GitCommandAction") } func init() { @@ -14032,1007 +14154,1018 @@ func init() { } var fileDescriptor_007ba1c3d6266d56 = []byte{ - // 15998 bytes of a gzipped FileDescriptorProto + // 16173 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x69, 0x70, 0x24, 0xd9, 0x79, 0x20, 0x86, 0x3a, 0x50, 0x00, 0x3e, 0x1c, 0x0d, 0xbc, 0xbe, 0xb2, 0x7b, 0xba, 0x1b, 0x33, 0x39, 0x9c, 0x66, 0xf7, 0x70, 0xa6, 0x7b, 0xa6, 0xa7, 0x67, 0x86, 0x73, 0x71, 0xa6, 0x80, 0x02, 0x1a, 0x35, 0x8d, 0x6b, 0xb2, 0xd0, 0xdd, 0x1c, 0x5e, 0xa5, 0x44, 0xe5, 0x43, 0x21, 0xa7, 0xab, - 0x32, 0x8b, 0x99, 0x59, 0x8d, 0xc6, 0xf8, 0x12, 0x65, 0x89, 0x22, 0x65, 0x92, 0xa2, 0x28, 0x4b, - 0xd4, 0x65, 0x8b, 0x92, 0x2c, 0x5b, 0x92, 0x65, 0xc9, 0xb2, 0x15, 0x92, 0x28, 0x99, 0x61, 0xc9, - 0xf4, 0x31, 0x32, 0x43, 0x0a, 0x49, 0xb6, 0x15, 0x0a, 0x5b, 0x06, 0xb5, 0xdc, 0xd5, 0xfe, 0x40, - 0xec, 0x46, 0x28, 0x76, 0x19, 0x2b, 0xae, 0x56, 0xbb, 0xb1, 0xf1, 0xbe, 0xf7, 0x32, 0xf3, 0xe5, - 0x51, 0x85, 0x73, 0x84, 0x01, 0x1b, 0x7f, 0xba, 0x51, 0xdf, 0xf7, 0xbd, 0xef, 0xbd, 0xfc, 0xde, - 0xf7, 0xee, 0xef, 0x80, 0xcb, 0x1e, 0x6d, 0xd0, 0x96, 0xed, 0x78, 0x57, 0x1b, 0xb4, 0xae, 0xd7, - 0xd6, 0xaf, 0x7a, 0xeb, 0x2d, 0xea, 0x5e, 0xa5, 0xf7, 0xa8, 0xe5, 0xf9, 0xff, 0x5d, 0x69, 0x39, - 0xb6, 0x67, 0x93, 0x02, 0xff, 0x75, 0xf6, 0x44, 0xdd, 0xae, 0xdb, 0x08, 0xba, 0xca, 0xfe, 0xe2, - 0xd8, 0xb3, 0xe7, 0xea, 0xb6, 0x5d, 0x6f, 0xd0, 0xab, 0xf8, 0x6b, 0xb9, 0xbd, 0x72, 0xd5, 0xf5, - 0x9c, 0x76, 0xcd, 0x13, 0xd8, 0xf1, 0x38, 0xd6, 0x33, 0x9b, 0xd4, 0xf5, 0xf4, 0x66, 0x4b, 0x10, - 0x5c, 0x88, 0x13, 0xac, 0x39, 0x7a, 0xab, 0x45, 0x1d, 0x51, 0xf9, 0xd9, 0x47, 0xd2, 0xdb, 0x89, - 0xff, 0x0a, 0x92, 0x27, 0xd3, 0x49, 0x7c, 0x46, 0x31, 0x8e, 0xea, 0x97, 0xb2, 0xd0, 0x3f, 0x47, - 0x3d, 0xdd, 0xd0, 0x3d, 0x9d, 0x9c, 0x83, 0xde, 0xb2, 0x65, 0xd0, 0xfb, 0x4a, 0xe6, 0xe1, 0xcc, - 0xa5, 0xdc, 0x44, 0x61, 0x73, 0x63, 0x3c, 0x4b, 0x4d, 0x8d, 0x03, 0xc9, 0x79, 0xc8, 0x2f, 0xad, - 0xb7, 0xa8, 0x92, 0x7d, 0x38, 0x73, 0x69, 0x60, 0x62, 0x60, 0x73, 0x63, 0xbc, 0x17, 0x65, 0xa1, - 0x21, 0x98, 0x3c, 0x02, 0xd9, 0x72, 0x49, 0xc9, 0x21, 0x72, 0x6c, 0x73, 0x63, 0x7c, 0xb8, 0x6d, - 0x1a, 0x4f, 0xd8, 0x4d, 0xd3, 0xa3, 0xcd, 0x96, 0xb7, 0xae, 0x65, 0xcb, 0x25, 0x72, 0x11, 0xf2, - 0x93, 0xb6, 0x41, 0x95, 0x3c, 0x12, 0x91, 0xcd, 0x8d, 0xf1, 0x91, 0x9a, 0x6d, 0x50, 0x89, 0x0a, - 0xf1, 0xe4, 0x35, 0xc8, 0x2f, 0x99, 0x4d, 0xaa, 0xf4, 0x3e, 0x9c, 0xb9, 0x34, 0x78, 0xed, 0xec, - 0x15, 0x2e, 0x95, 0x2b, 0xbe, 0x54, 0xae, 0x2c, 0xf9, 0x62, 0x9b, 0x18, 0x7d, 0x67, 0x63, 0xbc, - 0x67, 0x73, 0x63, 0x3c, 0xcf, 0x24, 0xf9, 0xc5, 0x6f, 0x8e, 0x67, 0x34, 0x2c, 0x49, 0x5e, 0x86, - 0xc1, 0xc9, 0x46, 0xdb, 0xf5, 0xa8, 0x33, 0xaf, 0x37, 0xa9, 0x52, 0xc0, 0x0a, 0xcf, 0x6e, 0x6e, - 0x8c, 0x9f, 0xaa, 0x71, 0x70, 0xd5, 0xd2, 0x9b, 0x72, 0xc5, 0x32, 0xb9, 0xfa, 0x3b, 0x19, 0x38, - 0x56, 0xa1, 0xae, 0x6b, 0xda, 0x56, 0x20, 0x9b, 0xc7, 0x60, 0x40, 0x80, 0xca, 0x25, 0x94, 0xcf, - 0xc0, 0x44, 0xdf, 0xe6, 0xc6, 0x78, 0xce, 0x35, 0x0d, 0x2d, 0xc4, 0x90, 0xa7, 0xa0, 0xef, 0x8e, - 0xe9, 0xad, 0xce, 0x4d, 0x17, 0x85, 0x9c, 0x4e, 0x6d, 0x6e, 0x8c, 0x93, 0x35, 0xd3, 0x5b, 0xad, - 0x36, 0x57, 0x74, 0xa9, 0x42, 0x9f, 0x8c, 0xcc, 0xc2, 0xe8, 0xa2, 0x63, 0xde, 0xd3, 0x3d, 0x7a, - 0x93, 0xae, 0x2f, 0xda, 0x0d, 0xb3, 0xb6, 0x2e, 0xa4, 0xf8, 0xf0, 0xe6, 0xc6, 0xf8, 0xb9, 0x16, - 0xc7, 0x55, 0xef, 0xd2, 0xf5, 0x6a, 0x0b, 0xb1, 0x12, 0x93, 0x44, 0x49, 0xf5, 0x77, 0x0b, 0x30, - 0x74, 0xcb, 0xa5, 0x4e, 0xd0, 0xee, 0x8b, 0x90, 0x67, 0xbf, 0x45, 0x93, 0x51, 0xe6, 0x6d, 0x97, - 0x3a, 0xb2, 0xcc, 0x19, 0x9e, 0x5c, 0x86, 0xde, 0x59, 0xbb, 0x6e, 0x5a, 0xa2, 0xd9, 0xc7, 0x37, - 0x37, 0xc6, 0x8f, 0x35, 0x18, 0x40, 0xa2, 0xe4, 0x14, 0xe4, 0x43, 0x30, 0x54, 0x6e, 0x32, 0x1d, - 0xb2, 0x2d, 0xdd, 0xb3, 0x1d, 0xd1, 0x5a, 0x94, 0xae, 0x29, 0xc1, 0xa5, 0x82, 0x11, 0x7a, 0xf2, - 0x22, 0x40, 0xf1, 0x4e, 0x45, 0xb3, 0x1b, 0xb4, 0xa8, 0xcd, 0x0b, 0x65, 0xc0, 0xd2, 0xfa, 0x9a, - 0x5b, 0x75, 0xec, 0x06, 0xad, 0xea, 0x8e, 0x5c, 0xad, 0x44, 0x4d, 0xa6, 0x60, 0xa4, 0x58, 0xab, - 0x51, 0xd7, 0xd5, 0xe8, 0x27, 0xdb, 0xd4, 0xf5, 0x5c, 0xa5, 0xf7, 0xe1, 0xdc, 0xa5, 0x81, 0x89, - 0xf3, 0x9b, 0x1b, 0xe3, 0x67, 0x74, 0xc4, 0x54, 0x1d, 0x81, 0x92, 0x58, 0xc4, 0x0a, 0x91, 0x09, - 0x18, 0x2e, 0xbe, 0xdd, 0x76, 0x68, 0xd9, 0xa0, 0x96, 0x67, 0x7a, 0xeb, 0x42, 0x43, 0xce, 0x6d, - 0x6e, 0x8c, 0x2b, 0x3a, 0x43, 0x54, 0x4d, 0x81, 0x91, 0x98, 0x44, 0x8b, 0x90, 0x05, 0x18, 0xbb, - 0x31, 0xb9, 0x58, 0xa1, 0xce, 0x3d, 0xb3, 0x46, 0x8b, 0xb5, 0x9a, 0xdd, 0xb6, 0x3c, 0xa5, 0x0f, - 0xf9, 0x3c, 0xb2, 0xb9, 0x31, 0x7e, 0xbe, 0x5e, 0x6b, 0x55, 0x5d, 0x8e, 0xad, 0xea, 0x1c, 0x2d, - 0x31, 0x4b, 0x96, 0x25, 0x1f, 0x81, 0xe1, 0x25, 0x87, 0x69, 0xa1, 0x51, 0xa2, 0x0c, 0xae, 0xf4, - 0xa3, 0xfe, 0x9f, 0xba, 0x22, 0x26, 0x20, 0x0e, 0xf5, 0x7b, 0x96, 0x37, 0xd6, 0xe3, 0x05, 0xaa, - 0x06, 0xe2, 0xe4, 0xc6, 0x46, 0x58, 0x11, 0x0a, 0x0a, 0xfb, 0x78, 0xd3, 0xa1, 0x46, 0x42, 0xdb, - 0x06, 0xb0, 0xcd, 0x97, 0x37, 0x37, 0xc6, 0x1f, 0x73, 0x04, 0x4d, 0xb5, 0xab, 0xda, 0x75, 0x64, - 0x45, 0xa6, 0xa0, 0x9f, 0x69, 0xd3, 0x4d, 0xd3, 0x32, 0x14, 0x78, 0x38, 0x73, 0x69, 0xe4, 0xda, - 0xa8, 0xdf, 0x7a, 0x1f, 0x3e, 0x71, 0x7a, 0x73, 0x63, 0xfc, 0x38, 0xd3, 0xc1, 0xea, 0x5d, 0xd3, - 0x92, 0xa7, 0x88, 0xa0, 0x28, 0x1b, 0x45, 0x13, 0xb6, 0x87, 0x43, 0x77, 0x30, 0x1c, 0x45, 0xcb, - 0xb6, 0x17, 0x1f, 0xb6, 0x3e, 0x19, 0x99, 0x84, 0xe1, 0x09, 0xdb, 0x2b, 0x5b, 0xae, 0xa7, 0x5b, - 0x35, 0x5a, 0x2e, 0x29, 0x43, 0x58, 0x0e, 0xd5, 0x82, 0x95, 0x33, 0x05, 0xa6, 0x1a, 0x99, 0x94, - 0xa2, 0x65, 0xd4, 0xbf, 0xcd, 0xc3, 0x08, 0xeb, 0x13, 0x69, 0xf8, 0x14, 0xd9, 0x4c, 0xc0, 0x20, - 0xac, 0x16, 0xb7, 0xa5, 0xd7, 0xa8, 0x18, 0x49, 0xf8, 0x15, 0x96, 0x0f, 0x94, 0x78, 0xc6, 0xe9, - 0xc9, 0x65, 0xe8, 0xe7, 0xa0, 0x72, 0x49, 0x0c, 0xae, 0xe1, 0xcd, 0x8d, 0xf1, 0x01, 0x17, 0x61, - 0x55, 0xd3, 0xd0, 0x02, 0x34, 0xd3, 0x6e, 0xfe, 0xf7, 0x8c, 0xed, 0x7a, 0x8c, 0xb9, 0x18, 0x5b, - 0xf8, 0x19, 0xa2, 0xc0, 0xaa, 0x40, 0xc9, 0xda, 0x1d, 0x2d, 0x44, 0x5e, 0x00, 0xe0, 0x90, 0xa2, - 0x61, 0x38, 0x62, 0x80, 0x9d, 0xd9, 0xdc, 0x18, 0x3f, 0x29, 0x58, 0xe8, 0x86, 0x21, 0x8f, 0x4e, - 0x89, 0x98, 0x34, 0x61, 0x88, 0xff, 0x9a, 0xd5, 0x97, 0x69, 0x83, 0x8f, 0xae, 0xc1, 0x6b, 0x97, - 0xfc, 0x4e, 0x8c, 0x4a, 0xe7, 0x8a, 0x4c, 0x3a, 0x65, 0x79, 0xce, 0xfa, 0xc4, 0xb8, 0x98, 0x90, - 0x4f, 0x8b, 0xaa, 0x1a, 0x88, 0x93, 0xa7, 0x02, 0xb9, 0x0c, 0x9b, 0xa7, 0xa7, 0x6d, 0x67, 0x4d, - 0x77, 0x0c, 0x6a, 0x4c, 0xac, 0xcb, 0xf3, 0xf4, 0x8a, 0x0f, 0xae, 0x2e, 0xcb, 0xaa, 0x27, 0x93, - 0xb3, 0x4e, 0xe7, 0xdc, 0x2a, 0xed, 0x65, 0x54, 0xb9, 0xbe, 0x84, 0xb4, 0xdc, 0xf6, 0x72, 0x5c, - 0xcd, 0xa2, 0x65, 0xd8, 0x54, 0xc0, 0x01, 0xb7, 0xa9, 0xc3, 0x26, 0x71, 0x1c, 0x75, 0x62, 0x2a, - 0x10, 0x4c, 0xee, 0x71, 0x4c, 0x92, 0x87, 0x28, 0x72, 0xf6, 0x55, 0x18, 0x4b, 0x88, 0x82, 0x8c, - 0x42, 0xee, 0x2e, 0x5d, 0xe7, 0xea, 0xa2, 0xb1, 0x3f, 0xc9, 0x09, 0xe8, 0xbd, 0xa7, 0x37, 0xda, - 0x62, 0x09, 0xd5, 0xf8, 0x8f, 0x17, 0xb3, 0x1f, 0xcc, 0xb0, 0x15, 0x87, 0x4c, 0xda, 0x96, 0x45, - 0x6b, 0x9e, 0xbc, 0xe8, 0x3c, 0x07, 0x03, 0xb3, 0x76, 0x4d, 0x6f, 0x60, 0x3f, 0x72, 0xbd, 0x53, - 0x36, 0x37, 0xc6, 0x4f, 0xb0, 0x0e, 0xbc, 0xd2, 0x60, 0x18, 0xa9, 0x4d, 0x21, 0x29, 0x53, 0x00, - 0x8d, 0x36, 0x6d, 0x8f, 0x62, 0xc1, 0x6c, 0xa8, 0x00, 0x58, 0xd0, 0x41, 0x94, 0xac, 0x00, 0x21, - 0x31, 0xb9, 0x0a, 0xfd, 0x8b, 0x6c, 0x9d, 0xad, 0xd9, 0x0d, 0xa1, 0x7c, 0xb8, 0x14, 0xe0, 0xda, - 0x2b, 0x8f, 0x55, 0x9f, 0x48, 0x9d, 0x81, 0x91, 0xc9, 0x86, 0x49, 0x2d, 0x4f, 0x6e, 0x35, 0x1b, - 0xc9, 0xc5, 0x3a, 0xb5, 0x3c, 0xb9, 0xd5, 0x38, 0xe6, 0x75, 0x06, 0x95, 0x5b, 0x1d, 0x90, 0xaa, - 0x7f, 0x9c, 0x83, 0x33, 0x37, 0xdb, 0xcb, 0xd4, 0xb1, 0xa8, 0x47, 0x5d, 0xb1, 0x20, 0x07, 0x5c, - 0xe7, 0x61, 0x2c, 0x81, 0x14, 0xdc, 0x71, 0xa1, 0xbc, 0x1b, 0x20, 0xab, 0x62, 0x8d, 0x97, 0x67, - 0xdb, 0x44, 0x51, 0x32, 0x03, 0xc7, 0x42, 0x20, 0x6b, 0x84, 0xab, 0x64, 0x71, 0x29, 0xb9, 0xb0, - 0xb9, 0x31, 0x7e, 0x56, 0xe2, 0xc6, 0x9a, 0x2d, 0x6b, 0x70, 0xbc, 0x18, 0xb9, 0x09, 0xa3, 0x21, - 0xe8, 0x86, 0x63, 0xb7, 0x5b, 0xae, 0x92, 0x43, 0x56, 0xe3, 0x9b, 0x1b, 0xe3, 0x0f, 0x49, 0xac, - 0xea, 0x88, 0x94, 0x17, 0xf0, 0x78, 0x41, 0xf2, 0xfd, 0x19, 0x99, 0x9b, 0x18, 0x85, 0x79, 0x1c, - 0x85, 0xcf, 0xfb, 0xa3, 0xb0, 0xa3, 0x90, 0xae, 0xc4, 0x4b, 0x8a, 0x41, 0x19, 0x6b, 0x46, 0x62, - 0x50, 0x26, 0x6a, 0x3c, 0x3b, 0x09, 0x27, 0x53, 0x79, 0xed, 0x48, 0xab, 0xff, 0x3a, 0x27, 0x73, - 0x59, 0xb4, 0x8d, 0xa0, 0x33, 0x17, 0xe4, 0xce, 0x5c, 0xb4, 0x0d, 0x9c, 0xea, 0x33, 0xe1, 0xda, - 0x29, 0x35, 0xb6, 0x65, 0x1b, 0xf1, 0x59, 0x3f, 0x59, 0x96, 0x7c, 0x02, 0x4e, 0x25, 0x80, 0x7c, - 0xba, 0xe6, 0xda, 0x7f, 0x71, 0x73, 0x63, 0x5c, 0x4d, 0xe1, 0x1a, 0x9f, 0xbd, 0x3b, 0x70, 0x21, - 0x3a, 0x9c, 0x96, 0xa4, 0x6e, 0x5b, 0x9e, 0x6e, 0x5a, 0x62, 0x73, 0xc9, 0x47, 0xc9, 0xfb, 0x37, - 0x37, 0xc6, 0x1f, 0x95, 0x75, 0xd0, 0xa7, 0x89, 0x37, 0xbe, 0x13, 0x1f, 0x62, 0x80, 0x92, 0x82, - 0x2a, 0x37, 0xf5, 0xba, 0xbf, 0x63, 0xbe, 0xb4, 0xb9, 0x31, 0xfe, 0xbe, 0xd4, 0x3a, 0x4c, 0x46, - 0x25, 0xaf, 0xd0, 0x9d, 0x38, 0x11, 0x0d, 0x48, 0x88, 0x9b, 0xb7, 0x0d, 0x8a, 0xdf, 0xd0, 0x8b, - 0xfc, 0xd5, 0xcd, 0x8d, 0xf1, 0x0b, 0x12, 0x7f, 0xcb, 0x36, 0x68, 0xbc, 0xf9, 0x29, 0xa5, 0xd5, - 0xdf, 0xc9, 0xc1, 0x85, 0x4a, 0x71, 0x6e, 0xb6, 0x6c, 0xf8, 0x5b, 0x9a, 0x45, 0xc7, 0xbe, 0x67, - 0x1a, 0xd2, 0xe8, 0x5d, 0x86, 0xd3, 0x31, 0xd4, 0x14, 0xee, 0xa2, 0x82, 0xcd, 0x34, 0x7e, 0x9b, - 0xbf, 0x5d, 0x6a, 0x09, 0x9a, 0x2a, 0xdf, 0x6a, 0x45, 0x17, 0xed, 0x4e, 0x8c, 0x58, 0x1f, 0xc5, - 0x50, 0x95, 0x55, 0xdb, 0xf1, 0x6a, 0x6d, 0x4f, 0x28, 0x01, 0xf6, 0x51, 0xa2, 0x0e, 0x57, 0x10, - 0x75, 0xa9, 0xc2, 0xe7, 0x43, 0x3e, 0x9b, 0x81, 0xd1, 0xa2, 0xe7, 0x39, 0xe6, 0x72, 0xdb, 0xa3, - 0x73, 0x7a, 0xab, 0x65, 0x5a, 0x75, 0x1c, 0xeb, 0x83, 0xd7, 0x5e, 0x0e, 0xd6, 0xc8, 0xae, 0x92, - 0xb8, 0x12, 0x2f, 0x2e, 0x0d, 0x51, 0xdd, 0x47, 0x55, 0x9b, 0x1c, 0x27, 0x0f, 0xd1, 0x78, 0x39, - 0x36, 0x44, 0x53, 0x79, 0xed, 0x68, 0x88, 0x7e, 0x29, 0x07, 0xe7, 0x16, 0xee, 0x7a, 0xba, 0x46, - 0x5d, 0xbb, 0xed, 0xd4, 0xa8, 0x7b, 0xab, 0x65, 0xe8, 0x1e, 0x0d, 0x47, 0xea, 0x38, 0xf4, 0x16, - 0x0d, 0x83, 0x1a, 0xc8, 0xae, 0x97, 0x1f, 0xfb, 0x74, 0x06, 0xd0, 0x38, 0x9c, 0x3c, 0x06, 0x7d, - 0xa2, 0x0c, 0x72, 0xef, 0x9d, 0x18, 0xdc, 0xdc, 0x18, 0xef, 0x6b, 0x73, 0x90, 0xe6, 0xe3, 0x18, - 0x59, 0x89, 0x36, 0x28, 0x23, 0xcb, 0x85, 0x64, 0x06, 0x07, 0x69, 0x3e, 0x8e, 0xbc, 0x01, 0x23, - 0xc8, 0x36, 0x68, 0x8f, 0x98, 0xfb, 0x4e, 0xf8, 0xd2, 0x95, 0x1b, 0xcb, 0x97, 0x26, 0x6c, 0x4d, - 0xd5, 0xf1, 0x0b, 0x68, 0x31, 0x06, 0xe4, 0x0e, 0x8c, 0x8a, 0x46, 0x84, 0x4c, 0x7b, 0xbb, 0x30, - 0x3d, 0xb9, 0xb9, 0x31, 0x3e, 0x26, 0xda, 0x2f, 0xb1, 0x4d, 0x30, 0x61, 0x8c, 0x45, 0xb3, 0x43, - 0xc6, 0x85, 0xad, 0x18, 0x8b, 0x2f, 0x96, 0x19, 0xc7, 0x99, 0xa8, 0x6f, 0xc2, 0x90, 0x5c, 0x90, - 0x9c, 0xc2, 0xa3, 0x35, 0x1f, 0x27, 0x78, 0x28, 0x37, 0x0d, 0x3c, 0x4f, 0x3f, 0x0d, 0x83, 0x25, - 0xea, 0xd6, 0x1c, 0xb3, 0xc5, 0x76, 0x0d, 0x42, 0xc9, 0x8f, 0x6d, 0x6e, 0x8c, 0x0f, 0x1a, 0x21, - 0x58, 0x93, 0x69, 0xd4, 0x7f, 0x95, 0x81, 0x53, 0x8c, 0x77, 0xd1, 0x75, 0xcd, 0xba, 0xd5, 0x94, - 0x97, 0xed, 0x27, 0xa0, 0x50, 0xc1, 0xfa, 0x44, 0x4d, 0x27, 0x36, 0x37, 0xc6, 0x47, 0x79, 0x0b, - 0x24, 0x3d, 0x14, 0x34, 0xc1, 0xb9, 0x32, 0xbb, 0xc5, 0xb9, 0x92, 0x6d, 0x69, 0x3d, 0xdd, 0xf1, - 0x4c, 0xab, 0x5e, 0xf1, 0x74, 0xaf, 0xed, 0x46, 0xb6, 0xb4, 0x02, 0x53, 0x75, 0x11, 0x15, 0xd9, - 0xd2, 0x46, 0x0a, 0x91, 0x57, 0x61, 0x68, 0xca, 0x32, 0x42, 0x26, 0x7c, 0x42, 0x7c, 0x88, 0xed, - 0x34, 0x29, 0xc2, 0x93, 0x2c, 0x22, 0x05, 0xd4, 0xff, 0x2e, 0x03, 0x0a, 0x3f, 0x04, 0xce, 0x9a, - 0xae, 0x37, 0x47, 0x9b, 0xcb, 0xd2, 0xec, 0x34, 0xed, 0x9f, 0x2a, 0x19, 0x4e, 0x5a, 0x8b, 0x70, - 0x2b, 0x20, 0x4e, 0x95, 0x0d, 0xd3, 0x4d, 0x1c, 0x3f, 0x62, 0xa5, 0x48, 0x19, 0xfa, 0x38, 0x67, - 0xbe, 0x97, 0x18, 0xbc, 0xa6, 0xf8, 0x8a, 0x10, 0xaf, 0x9a, 0x2b, 0x43, 0x93, 0x13, 0xcb, 0x07, - 0x1a, 0x51, 0x5e, 0xfd, 0xef, 0xb3, 0x30, 0x1a, 0x2f, 0x44, 0xee, 0x40, 0xff, 0xeb, 0xb6, 0x69, - 0x51, 0x63, 0xc1, 0xc2, 0x16, 0x76, 0xbf, 0x1c, 0xf1, 0xf7, 0xe2, 0xc7, 0xdf, 0xc2, 0x32, 0x55, - 0x79, 0x07, 0x8b, 0x77, 0x25, 0x01, 0x33, 0xf2, 0x11, 0x18, 0x60, 0x7b, 0xc0, 0x7b, 0xc8, 0x39, - 0xbb, 0x25, 0xe7, 0x87, 0x05, 0xe7, 0x13, 0x0e, 0x2f, 0x94, 0x64, 0x1d, 0xb2, 0x63, 0x7a, 0xa5, - 0x51, 0xdd, 0xb5, 0x2d, 0xd1, 0xf3, 0xa8, 0x57, 0x0e, 0x42, 0x64, 0xbd, 0xe2, 0x34, 0x6c, 0xeb, - 0xca, 0x3f, 0x16, 0xbb, 0x41, 0x3a, 0xbb, 0x70, 0x59, 0xc5, 0x7b, 0x40, 0x22, 0x56, 0x3f, 0x9d, - 0x85, 0x27, 0x43, 0x91, 0x69, 0xf4, 0x9e, 0x49, 0xd7, 0x84, 0x38, 0x57, 0xcd, 0x96, 0x38, 0xb3, - 0x32, 0x95, 0x77, 0x27, 0x57, 0x75, 0xab, 0x4e, 0x0d, 0x72, 0x19, 0x7a, 0x35, 0xbb, 0x41, 0x5d, - 0x25, 0x83, 0xdb, 0x35, 0x9c, 0x4e, 0x1c, 0x06, 0x90, 0x2f, 0x3d, 0x90, 0x82, 0xd8, 0x50, 0x58, - 0x72, 0x74, 0xd3, 0xf3, 0x7b, 0xb6, 0x98, 0xec, 0xd9, 0x6d, 0xd4, 0x78, 0x85, 0xf3, 0xe0, 0x73, - 0x3e, 0x0a, 0xc2, 0x43, 0x80, 0x2c, 0x08, 0x4e, 0x72, 0xf6, 0x05, 0x18, 0x94, 0x88, 0x77, 0x34, - 0xa9, 0x7f, 0x35, 0x2f, 0xeb, 0xba, 0xdf, 0x2c, 0xa1, 0xeb, 0x57, 0x99, 0x8e, 0xba, 0x2e, 0xdb, - 0x55, 0x70, 0x25, 0x17, 0x9a, 0x88, 0xa0, 0xa8, 0x26, 0x22, 0x88, 0x3c, 0x03, 0xfd, 0x9c, 0x45, - 0x70, 0x7e, 0xc5, 0xb3, 0xaf, 0x83, 0xb0, 0xe8, 0xd2, 0x1c, 0x10, 0x92, 0x5f, 0xc9, 0xc0, 0xf9, - 0xae, 0x92, 0x40, 0x65, 0x18, 0xbc, 0xf6, 0xec, 0xae, 0xc4, 0x38, 0xf1, 0xe4, 0xe6, 0xc6, 0xf8, - 0xe5, 0x66, 0x40, 0x52, 0x75, 0x24, 0x9a, 0x6a, 0x8d, 0x13, 0x49, 0xed, 0xea, 0xde, 0x14, 0xb6, - 0x79, 0xe4, 0x95, 0x4e, 0xe3, 0xd5, 0x91, 0x55, 0x5b, 0xf7, 0x1b, 0x99, 0x0f, 0x37, 0x8f, 0xe2, - 0x7b, 0x57, 0x7c, 0x92, 0x94, 0x6a, 0x3a, 0x70, 0x21, 0x35, 0x38, 0xcd, 0x31, 0x25, 0x7d, 0x7d, - 0x61, 0x65, 0xce, 0xb6, 0xbc, 0x55, 0xbf, 0x82, 0x5e, 0xf9, 0xee, 0x05, 0x2b, 0x30, 0xf4, 0xf5, - 0xaa, 0xbd, 0x52, 0x6d, 0x32, 0xaa, 0x94, 0x3a, 0x3a, 0x71, 0x62, 0x13, 0xad, 0x18, 0x73, 0xfe, - 0x14, 0x54, 0x08, 0x6f, 0xc6, 0xfc, 0x71, 0x9a, 0x9c, 0x70, 0x62, 0x85, 0xd4, 0x32, 0x0c, 0xcd, - 0xda, 0xb5, 0xbb, 0x81, 0xba, 0xbc, 0x00, 0x85, 0x25, 0xdd, 0xa9, 0x53, 0x0f, 0x65, 0x31, 0x78, - 0x6d, 0xec, 0x0a, 0xbf, 0x6d, 0x66, 0x44, 0x1c, 0x31, 0x31, 0x22, 0x66, 0x83, 0x82, 0x87, 0xbf, - 0x35, 0x51, 0x40, 0xfd, 0x66, 0x2f, 0x0c, 0x89, 0x9b, 0x51, 0x9c, 0xcd, 0xc9, 0x8b, 0xe1, 0x5d, - 0xb3, 0x98, 0xbe, 0x82, 0xdb, 0xa1, 0xe0, 0x56, 0x6b, 0x88, 0x31, 0xfb, 0x93, 0x8d, 0xf1, 0xcc, - 0xe6, 0xc6, 0x78, 0x8f, 0xd6, 0x2f, 0x1d, 0x2a, 0xc3, 0xf5, 0x46, 0x5a, 0x60, 0xe5, 0xbb, 0xce, - 0x58, 0x59, 0xbe, 0xfe, 0xbc, 0x0a, 0x7d, 0xa2, 0x0d, 0x42, 0xe3, 0x4e, 0x87, 0x77, 0x19, 0x91, - 0x1b, 0xde, 0x58, 0x69, 0xbf, 0x14, 0x79, 0x19, 0x0a, 0xfc, 0x6c, 0x2f, 0x04, 0x70, 0x2a, 0xfd, - 0x2e, 0x24, 0x56, 0x5c, 0x94, 0x21, 0x33, 0x00, 0xe1, 0xb9, 0x3e, 0xb8, 0xd0, 0x16, 0x1c, 0x92, - 0x27, 0xfe, 0x18, 0x17, 0xa9, 0x2c, 0x79, 0x0e, 0x86, 0x96, 0xa8, 0xd3, 0x34, 0x2d, 0xbd, 0x51, - 0x31, 0xdf, 0xf6, 0xef, 0xb4, 0x71, 0xe1, 0x75, 0xcd, 0xb7, 0xe5, 0x91, 0x1b, 0xa1, 0x23, 0x1f, - 0x4f, 0x3b, 0x37, 0xf7, 0x61, 0x43, 0x1e, 0xd9, 0xf2, 0x40, 0x19, 0x6b, 0x4f, 0xca, 0x31, 0xfa, - 0x0d, 0x18, 0x8e, 0x1c, 0x99, 0xc4, 0xa5, 0xe5, 0xf9, 0x24, 0x6b, 0xe9, 0xfc, 0x17, 0x63, 0x1b, - 0xe5, 0xc0, 0x34, 0xb9, 0x6c, 0x99, 0x9e, 0xa9, 0x37, 0x26, 0xed, 0x66, 0x53, 0xb7, 0x0c, 0x65, - 0x20, 0xd4, 0x64, 0x93, 0x63, 0xaa, 0x35, 0x8e, 0x92, 0x35, 0x39, 0x5a, 0x88, 0x1d, 0xcb, 0x45, - 0x1f, 0x6a, 0xb4, 0x66, 0x3b, 0x6c, 0x2f, 0x80, 0x77, 0x92, 0xe2, 0x58, 0xee, 0x72, 0x5c, 0xd5, - 0xf1, 0x91, 0xf2, 0x66, 0x3b, 0x5e, 0xf0, 0xf5, 0x7c, 0xff, 0xe0, 0xe8, 0x50, 0xfc, 0x1a, 0x59, - 0xfd, 0xe5, 0x1c, 0x0c, 0x0a, 0x52, 0xb6, 0x94, 0x1e, 0x29, 0xf8, 0x5e, 0x14, 0x3c, 0x55, 0x51, - 0x0b, 0xfb, 0xa5, 0xa8, 0xea, 0xe7, 0xb2, 0xc1, 0x6c, 0xb4, 0xe8, 0x98, 0xd6, 0xde, 0x66, 0xa3, - 0x8b, 0x00, 0x93, 0xab, 0x6d, 0xeb, 0x2e, 0x7f, 0x2e, 0xcb, 0x86, 0xcf, 0x65, 0x35, 0x53, 0x93, - 0x30, 0xe4, 0x3c, 0xe4, 0x4b, 0x8c, 0x3f, 0xeb, 0x99, 0xa1, 0x89, 0x81, 0x77, 0x38, 0xa7, 0xcc, - 0x93, 0x1a, 0x82, 0xd9, 0xe1, 0x6a, 0x62, 0xdd, 0xa3, 0x7c, 0x3b, 0x9b, 0xe3, 0x87, 0xab, 0x65, - 0x06, 0xd0, 0x38, 0x9c, 0x5c, 0x87, 0xb1, 0x12, 0x6d, 0xe8, 0xeb, 0x73, 0x66, 0xa3, 0x61, 0xba, - 0xb4, 0x66, 0x5b, 0x86, 0x8b, 0x42, 0x16, 0xd5, 0x35, 0x5d, 0x2d, 0x49, 0x40, 0x54, 0x28, 0x2c, - 0xac, 0xac, 0xb8, 0xd4, 0x43, 0xf1, 0xe5, 0x26, 0x80, 0x4d, 0xce, 0x36, 0x42, 0x34, 0x81, 0x51, - 0x7f, 0x3d, 0xc3, 0x4e, 0x2f, 0xee, 0x5d, 0xcf, 0x6e, 0x05, 0x5a, 0xbe, 0x27, 0x91, 0x5c, 0x0e, - 0xf7, 0x15, 0x59, 0xfc, 0xda, 0x63, 0xe2, 0x6b, 0xfb, 0xc4, 0xde, 0x22, 0xdc, 0x51, 0xa4, 0x7e, - 0x55, 0x6e, 0x8b, 0xaf, 0x52, 0xff, 0x26, 0x0b, 0xa7, 0x45, 0x8b, 0x27, 0x1b, 0x66, 0x6b, 0xd9, - 0xd6, 0x1d, 0x43, 0xa3, 0x35, 0x6a, 0xde, 0xa3, 0x87, 0x73, 0xe0, 0x45, 0x87, 0x4e, 0x7e, 0x0f, - 0x43, 0xe7, 0x1a, 0x1e, 0x04, 0x99, 0x64, 0xf0, 0xc2, 0x97, 0x6f, 0x2a, 0x46, 0x37, 0x37, 0xc6, - 0x87, 0x0c, 0x0e, 0xc6, 0x2b, 0x7f, 0x4d, 0x26, 0x62, 0x4a, 0x32, 0x4b, 0xad, 0xba, 0xb7, 0x8a, - 0x4a, 0xd2, 0xcb, 0x95, 0xa4, 0x81, 0x10, 0x4d, 0x60, 0xd4, 0x7f, 0x9e, 0x85, 0x13, 0x71, 0x91, - 0x57, 0xa8, 0x65, 0x1c, 0xc9, 0xfb, 0xdd, 0x91, 0xf7, 0xb7, 0x73, 0xf0, 0x90, 0x28, 0x53, 0x59, - 0xd5, 0x1d, 0x6a, 0x94, 0x4c, 0x87, 0xd6, 0x3c, 0xdb, 0x59, 0x3f, 0xc4, 0x1b, 0xa8, 0xfd, 0x13, - 0xfb, 0x75, 0x28, 0x88, 0xe3, 0x3f, 0x5f, 0x67, 0x46, 0x82, 0x96, 0x20, 0x34, 0xb1, 0x42, 0xf1, - 0xab, 0x83, 0x58, 0x67, 0x15, 0xb6, 0xd3, 0x59, 0x1f, 0x84, 0xe1, 0x40, 0xf4, 0x78, 0x10, 0xed, - 0x0b, 0x77, 0x5b, 0x86, 0x8f, 0xc0, 0xb3, 0xa8, 0x16, 0x25, 0xc4, 0xda, 0x7c, 0x40, 0xb9, 0x84, - 0xbb, 0xa1, 0x61, 0x51, 0x5b, 0x50, 0xce, 0x34, 0x34, 0x99, 0x48, 0xdd, 0xc8, 0xc3, 0xd9, 0xf4, - 0x6e, 0xd7, 0xa8, 0x6e, 0x1c, 0xf5, 0xfa, 0x77, 0x65, 0xaf, 0x93, 0x47, 0x20, 0xbf, 0xa8, 0x7b, - 0xab, 0xe2, 0xf9, 0x1d, 0xdf, 0x84, 0x57, 0xcc, 0x06, 0xad, 0xb6, 0x74, 0x6f, 0x55, 0x43, 0x94, - 0x34, 0x67, 0x00, 0x72, 0x4c, 0x99, 0x33, 0xa4, 0xc5, 0x7e, 0xf0, 0xe1, 0xcc, 0xa5, 0x7c, 0xea, - 0x62, 0xff, 0xcd, 0x7c, 0xa7, 0x79, 0xe5, 0x8e, 0x63, 0x7a, 0xf4, 0x48, 0xc3, 0x8e, 0x34, 0x6c, - 0x8f, 0x1a, 0xf6, 0x67, 0x59, 0x18, 0x0e, 0x0e, 0x4d, 0x6f, 0xd1, 0xda, 0xc1, 0xac, 0x55, 0xe1, - 0x51, 0x26, 0xb7, 0xe7, 0xa3, 0xcc, 0x5e, 0x14, 0x4a, 0x0d, 0xae, 0x3c, 0xf9, 0xd6, 0x00, 0x25, - 0xc6, 0xaf, 0x3c, 0x83, 0x8b, 0xce, 0x47, 0xa0, 0x6f, 0x4e, 0xbf, 0x6f, 0x36, 0xdb, 0x4d, 0xb1, - 0x4b, 0x47, 0x73, 0xb2, 0xa6, 0x7e, 0x5f, 0xf3, 0xe1, 0xea, 0xff, 0x9d, 0x81, 0x11, 0x21, 0x54, - 0xc1, 0x7c, 0x4f, 0x52, 0x0d, 0xa5, 0x93, 0xdd, 0xb3, 0x74, 0x72, 0xbb, 0x97, 0x8e, 0xfa, 0x33, - 0x39, 0x50, 0xa6, 0xcd, 0x06, 0x5d, 0x72, 0x74, 0xcb, 0x5d, 0xa1, 0x8e, 0x38, 0x4e, 0x4f, 0x31, - 0x56, 0x7b, 0xfa, 0x40, 0x69, 0x4a, 0xc9, 0xee, 0x6a, 0x4a, 0xf9, 0x00, 0x0c, 0x88, 0xc6, 0x04, - 0xa6, 0x8c, 0x38, 0x6a, 0x1c, 0x1f, 0xa8, 0x85, 0x78, 0x46, 0x5c, 0x6c, 0xb5, 0x1c, 0xfb, 0x1e, - 0x75, 0xf8, 0x2b, 0x95, 0x20, 0xd6, 0x7d, 0xa0, 0x16, 0xe2, 0x25, 0xce, 0xd4, 0xdf, 0x2f, 0xca, - 0x9c, 0xa9, 0xa3, 0x85, 0x78, 0x72, 0x09, 0xfa, 0x67, 0xed, 0x9a, 0x8e, 0x82, 0xe6, 0xd3, 0xca, - 0xd0, 0xe6, 0xc6, 0x78, 0x7f, 0x43, 0xc0, 0xb4, 0x00, 0xcb, 0x28, 0x4b, 0xf6, 0x9a, 0xd5, 0xb0, - 0x75, 0x6e, 0xfc, 0xd2, 0xcf, 0x29, 0x0d, 0x01, 0xd3, 0x02, 0x2c, 0xa3, 0x64, 0x32, 0x47, 0xa3, - 0xa2, 0xfe, 0x90, 0xe7, 0x8a, 0x80, 0x69, 0x01, 0x56, 0xfd, 0xf5, 0x3c, 0xd3, 0x5e, 0xd7, 0x7c, - 0xfb, 0x81, 0x5f, 0x17, 0xc2, 0x01, 0xd3, 0xbb, 0x8b, 0x01, 0xf3, 0xc0, 0x5c, 0xd8, 0xa9, 0x7f, - 0xdb, 0x07, 0x20, 0xa4, 0x3f, 0x75, 0x74, 0x38, 0xdc, 0x9b, 0xd6, 0x94, 0x60, 0x6c, 0xca, 0x5a, - 0xd5, 0xad, 0x1a, 0x35, 0xc2, 0x6b, 0xcb, 0x02, 0x0e, 0x6d, 0x34, 0x82, 0xa4, 0x02, 0x19, 0xde, - 0x5b, 0x6a, 0xc9, 0x02, 0xe4, 0x69, 0x18, 0x2c, 0x5b, 0x1e, 0x75, 0xf4, 0x9a, 0x67, 0xde, 0xa3, - 0x62, 0x6a, 0xc0, 0x97, 0x61, 0x33, 0x04, 0x6b, 0x32, 0x0d, 0xb9, 0x0e, 0x43, 0x8b, 0xba, 0xe3, - 0x99, 0x35, 0xb3, 0xa5, 0x5b, 0x9e, 0xab, 0xf4, 0xe3, 0x8c, 0x86, 0x3b, 0x8c, 0x96, 0x04, 0xd7, - 0x22, 0x54, 0xe4, 0xe3, 0x30, 0x80, 0x47, 0x53, 0xb4, 0xd7, 0x1e, 0xd8, 0xf2, 0xe1, 0xf0, 0xd1, - 0xd0, 0x3c, 0x90, 0xdf, 0xbe, 0xe2, 0x0b, 0x70, 0xfc, 0xed, 0x30, 0xe0, 0x48, 0x3e, 0x0c, 0x7d, - 0x53, 0x96, 0x81, 0xcc, 0x61, 0x4b, 0xe6, 0xaa, 0x60, 0x7e, 0x2a, 0x64, 0x6e, 0xb7, 0x62, 0xbc, - 0x7d, 0x76, 0xe9, 0xa3, 0x6c, 0xf0, 0xdd, 0x1b, 0x65, 0x43, 0xef, 0xc2, 0xb5, 0xf8, 0xf0, 0x7e, - 0x5d, 0x8b, 0x8f, 0xec, 0xf2, 0x5a, 0x5c, 0x7d, 0x1b, 0x06, 0x27, 0x16, 0xa7, 0x83, 0xd1, 0x7b, - 0x06, 0x72, 0x8b, 0xc2, 0x52, 0x21, 0xcf, 0xf7, 0x33, 0x2d, 0xd3, 0xd0, 0x18, 0x8c, 0x5c, 0x86, - 0xfe, 0x49, 0x34, 0x7f, 0x13, 0xaf, 0x88, 0x79, 0xbe, 0xfe, 0xd5, 0x10, 0x86, 0x56, 0xb0, 0x3e, - 0x9a, 0x3c, 0x06, 0x7d, 0x8b, 0x8e, 0x5d, 0x77, 0xf4, 0xa6, 0x58, 0x83, 0xd1, 0x54, 0xa4, 0xc5, - 0x41, 0x9a, 0x8f, 0x53, 0x7f, 0x34, 0xe3, 0x6f, 0xdb, 0x59, 0x89, 0x4a, 0x1b, 0xaf, 0xe6, 0xb1, - 0xee, 0x7e, 0x5e, 0xc2, 0xe5, 0x20, 0xcd, 0xc7, 0x91, 0xcb, 0xd0, 0x3b, 0xe5, 0x38, 0xb6, 0x23, - 0xdb, 0xb8, 0x53, 0x06, 0x90, 0x9f, 0x7b, 0x91, 0x82, 0x3c, 0x0f, 0x83, 0x7c, 0xce, 0xe1, 0x37, - 0x9a, 0xb9, 0x6e, 0x2f, 0xa5, 0x32, 0xa5, 0xfa, 0xf5, 0x9c, 0xb4, 0x67, 0xe3, 0x12, 0x7f, 0x00, - 0x5f, 0x05, 0x9e, 0x81, 0xdc, 0xc4, 0xe2, 0xb4, 0x98, 0x00, 0x8f, 0xfb, 0x45, 0x25, 0x55, 0x89, - 0x95, 0x63, 0xd4, 0xe4, 0x1c, 0xe4, 0x17, 0x99, 0xfa, 0x14, 0x50, 0x3d, 0xfa, 0x37, 0x37, 0xc6, - 0xf3, 0x2d, 0xa6, 0x3f, 0x08, 0x45, 0x2c, 0x3b, 0xcc, 0xf0, 0x13, 0x13, 0xc7, 0x86, 0xe7, 0x98, - 0x73, 0x90, 0x2f, 0x3a, 0xf5, 0x7b, 0x62, 0xd6, 0x42, 0xac, 0xee, 0xd4, 0xef, 0x69, 0x08, 0x25, - 0x57, 0x01, 0x34, 0xea, 0xb5, 0x1d, 0x0b, 0xdd, 0x4f, 0x06, 0xf0, 0xfe, 0x0d, 0x67, 0x43, 0x07, - 0xa1, 0xd5, 0x9a, 0x6d, 0x50, 0x4d, 0x22, 0x51, 0x7f, 0x31, 0x7c, 0xd8, 0x29, 0x99, 0xee, 0xdd, - 0xa3, 0x2e, 0xdc, 0x41, 0x17, 0xea, 0xe2, 0x8a, 0x33, 0xd9, 0x49, 0xe3, 0xd0, 0x3b, 0xdd, 0xd0, - 0xeb, 0x2e, 0xf6, 0xa1, 0xb0, 0x25, 0x5b, 0x61, 0x00, 0x8d, 0xc3, 0x63, 0xfd, 0xd4, 0xbf, 0x75, - 0x3f, 0x7d, 0xb9, 0x37, 0x18, 0x6d, 0xf3, 0xd4, 0x5b, 0xb3, 0x9d, 0xa3, 0xae, 0xda, 0x6e, 0x57, - 0x5d, 0x84, 0xbe, 0x8a, 0x53, 0x93, 0xae, 0x2e, 0xf0, 0x3c, 0xe0, 0x3a, 0x35, 0x7e, 0x6d, 0xe1, - 0x23, 0x19, 0x5d, 0xc9, 0xf5, 0x90, 0xae, 0x2f, 0xa4, 0x33, 0x5c, 0x4f, 0xd0, 0x09, 0xa4, 0xa0, - 0x5b, 0xb4, 0x1d, 0x4f, 0x74, 0x5c, 0x40, 0xd7, 0xb2, 0x1d, 0x4f, 0xf3, 0x91, 0xe4, 0x03, 0x00, - 0x4b, 0x93, 0x8b, 0xbe, 0xb1, 0xfd, 0x40, 0x68, 0x0b, 0x28, 0xac, 0xec, 0x35, 0x09, 0x4d, 0x96, - 0x60, 0x60, 0xa1, 0x45, 0x1d, 0x7e, 0x14, 0xe2, 0x0e, 0x25, 0xef, 0x8f, 0x89, 0x56, 0xf4, 0xfb, - 0x15, 0xf1, 0x7f, 0x40, 0xce, 0xd7, 0x17, 0xdb, 0xff, 0xa9, 0x85, 0x8c, 0xc8, 0xf3, 0x50, 0x28, - 0xf2, 0x7d, 0xde, 0x20, 0xb2, 0x0c, 0x44, 0x86, 0x47, 0x50, 0x8e, 0xe2, 0x67, 0x76, 0x1d, 0xff, - 0xd6, 0x04, 0xb9, 0x7a, 0x19, 0x46, 0xe3, 0xd5, 0x90, 0x41, 0xe8, 0x9b, 0x5c, 0x98, 0x9f, 0x9f, - 0x9a, 0x5c, 0x1a, 0xed, 0x21, 0xfd, 0x90, 0xaf, 0x4c, 0xcd, 0x97, 0x46, 0x33, 0xea, 0xaf, 0x4a, - 0x33, 0x08, 0x53, 0xad, 0xa3, 0xa7, 0xe1, 0x3d, 0xbd, 0xb7, 0x8c, 0xe2, 0x7b, 0x28, 0xde, 0x18, - 0x34, 0x4d, 0xcf, 0xa3, 0x86, 0x58, 0x25, 0xf0, 0xbd, 0xd0, 0xbb, 0xaf, 0x25, 0xf0, 0xe4, 0x09, - 0x18, 0x46, 0x98, 0x78, 0x22, 0xe4, 0xe7, 0x63, 0x51, 0xc0, 0xb9, 0xaf, 0x45, 0x91, 0xea, 0x37, - 0xc2, 0xd7, 0xe1, 0x59, 0xaa, 0x1f, 0xd6, 0x17, 0xc5, 0xf7, 0x48, 0x7f, 0xa9, 0x7f, 0x9f, 0xe7, - 0x2e, 0x20, 0xdc, 0x5f, 0xf0, 0x20, 0x44, 0x19, 0x5e, 0xe9, 0xe6, 0x76, 0x70, 0xa5, 0xfb, 0x04, - 0x14, 0xe6, 0xa8, 0xb7, 0x6a, 0xfb, 0x86, 0x5f, 0x68, 0xa1, 0xd7, 0x44, 0x88, 0x6c, 0xa1, 0xc7, - 0x69, 0xc8, 0x5d, 0x20, 0xbe, 0x33, 0x60, 0x60, 0x88, 0xed, 0x5f, 0x21, 0x9f, 0x4e, 0x9c, 0x53, - 0x2a, 0xe8, 0x09, 0x8c, 0x36, 0xf6, 0x27, 0x02, 0x43, 0x6f, 0xc9, 0x12, 0xeb, 0xef, 0x36, 0xc6, - 0x0b, 0x9c, 0x46, 0x4b, 0x61, 0x4b, 0xde, 0x80, 0x81, 0xb9, 0xe9, 0xa2, 0x70, 0x0c, 0xe4, 0x56, - 0x11, 0x67, 0x02, 0x29, 0xfa, 0x88, 0x40, 0x24, 0xe8, 0x6f, 0xd3, 0x5c, 0xd1, 0x93, 0x7e, 0x81, - 0x21, 0x17, 0xa6, 0x2d, 0xdc, 0x73, 0x47, 0xdc, 0x2e, 0x04, 0xda, 0x12, 0xf5, 0xe7, 0x89, 0xcb, - 0x8a, 0x63, 0x63, 0xda, 0xd2, 0xbf, 0x87, 0xd1, 0xbd, 0x00, 0x63, 0xc5, 0x56, 0xab, 0x61, 0x52, - 0x03, 0xf5, 0x45, 0x6b, 0x37, 0xa8, 0x2b, 0x4c, 0x7e, 0xd0, 0x19, 0x44, 0xe7, 0xc8, 0x2a, 0xba, - 0xa3, 0x56, 0x9d, 0x76, 0xd4, 0x3e, 0x33, 0x59, 0x56, 0xfd, 0xf1, 0x2c, 0x9c, 0x9a, 0x74, 0xa8, - 0xee, 0xd1, 0xb9, 0xe9, 0x62, 0xb1, 0x8d, 0x36, 0x72, 0x8d, 0x06, 0xb5, 0xea, 0x07, 0x33, 0xac, - 0x5f, 0x82, 0x91, 0xa0, 0x01, 0x95, 0x9a, 0xdd, 0xa2, 0xb2, 0x63, 0x55, 0xcd, 0xc7, 0x54, 0x5d, - 0x86, 0xd2, 0x62, 0xa4, 0xe4, 0x26, 0x1c, 0x0f, 0x20, 0xc5, 0x46, 0xc3, 0x5e, 0xd3, 0x68, 0xdb, - 0xe5, 0x86, 0xb1, 0xfd, 0xdc, 0x30, 0x36, 0xe4, 0xa0, 0x33, 0x7c, 0xd5, 0x61, 0x04, 0x5a, 0x5a, - 0x29, 0xf5, 0x2b, 0x39, 0x38, 0x7d, 0x5b, 0x6f, 0x98, 0x46, 0x28, 0x1a, 0x8d, 0xba, 0x2d, 0xdb, - 0x72, 0xe9, 0x21, 0x1a, 0xa5, 0x91, 0xa1, 0x90, 0xdf, 0x97, 0xa1, 0x90, 0xec, 0xa2, 0xde, 0x3d, - 0x77, 0x51, 0x61, 0x57, 0x5d, 0xf4, 0xcf, 0x32, 0x30, 0xea, 0x1b, 0xfe, 0xcb, 0x4e, 0xdc, 0x92, - 0x55, 0x3a, 0x5e, 0x21, 0xc6, 0xec, 0xa0, 0x11, 0x4f, 0x2a, 0xd0, 0x37, 0x75, 0xbf, 0x65, 0x3a, - 0xd4, 0xdd, 0x86, 0x11, 0xf7, 0x79, 0x71, 0x5d, 0x32, 0x46, 0x79, 0x91, 0xc4, 0x4d, 0x09, 0x07, - 0xa3, 0x3b, 0x1f, 0x77, 0x7d, 0x98, 0xf0, 0x3d, 0xd3, 0xb9, 0x3b, 0x9f, 0x70, 0x91, 0x88, 0xf8, - 0x67, 0x86, 0xa4, 0xe4, 0x51, 0xc8, 0x2d, 0x2d, 0xcd, 0x8a, 0x99, 0x14, 0x23, 0x02, 0x78, 0x9e, - 0xec, 0xaf, 0xc8, 0xb0, 0xea, 0x5f, 0x66, 0x01, 0x98, 0x2a, 0xf0, 0xe1, 0x7a, 0x20, 0x4a, 0x38, - 0x01, 0xfd, 0xbe, 0xc0, 0x85, 0x1a, 0x06, 0x56, 0xfb, 0xf1, 0x8e, 0x88, 0xd7, 0x1d, 0x78, 0x68, - 0x8c, 0xfb, 0x86, 0xe4, 0xfc, 0x1d, 0x00, 0x4f, 0x36, 0x68, 0x48, 0xee, 0x9b, 0x8f, 0x7f, 0x00, - 0x06, 0xc4, 0x8c, 0x67, 0x47, 0xee, 0xff, 0x6b, 0x3e, 0x50, 0x0b, 0xf1, 0xb1, 0xa9, 0xb5, 0xb0, - 0x87, 0x85, 0xd8, 0x17, 0x2f, 0xef, 0x95, 0x23, 0xf1, 0xee, 0xb3, 0x78, 0xbf, 0x20, 0xc4, 0xcb, - 0x3d, 0x78, 0x0e, 0xad, 0x78, 0xf7, 0xed, 0xee, 0x5b, 0xfd, 0xb3, 0x0c, 0x10, 0xd6, 0xac, 0x45, - 0xdd, 0x75, 0xd7, 0x6c, 0xc7, 0xe0, 0xc6, 0xe9, 0x07, 0x22, 0x98, 0xfd, 0x7b, 0xaf, 0xfc, 0x7a, - 0x3f, 0x1c, 0x8f, 0x18, 0xfe, 0x1e, 0xf2, 0xc9, 0xea, 0x72, 0x74, 0x34, 0x75, 0xf3, 0x7a, 0x79, - 0x9f, 0xfc, 0x20, 0xda, 0x1b, 0x71, 0x40, 0x93, 0x5e, 0x42, 0x9f, 0x84, 0x21, 0xf1, 0x83, 0xad, - 0xd0, 0xfe, 0x4b, 0x17, 0x8e, 0x52, 0x97, 0x01, 0xb4, 0x08, 0x9a, 0x3c, 0x0b, 0x03, 0x6c, 0xc0, - 0xd4, 0x31, 0x78, 0x48, 0x5f, 0xe8, 0x51, 0x62, 0xf8, 0x40, 0x79, 0x3d, 0x09, 0x28, 0x25, 0x3f, - 0xa2, 0xfe, 0x6d, 0xf8, 0x11, 0x7d, 0x02, 0x06, 0x8b, 0x96, 0x65, 0x7b, 0x78, 0x48, 0x77, 0xc5, - 0xd3, 0x44, 0xc7, 0x5d, 0xf9, 0xa3, 0xe8, 0x1c, 0x1f, 0xd2, 0xa7, 0x6e, 0xcb, 0x65, 0x86, 0xe4, - 0x9a, 0xef, 0x15, 0x43, 0x1d, 0x61, 0x55, 0x8e, 0xcf, 0x33, 0x8e, 0x80, 0x25, 0x9d, 0x62, 0xb0, - 0xf3, 0x86, 0x17, 0x1d, 0xbb, 0x65, 0xbb, 0xd4, 0xe0, 0x82, 0x1a, 0x0c, 0x43, 0x0d, 0xb4, 0x04, - 0x02, 0xfd, 0xd8, 0x22, 0x81, 0x3c, 0x22, 0x45, 0xc8, 0x0a, 0x9c, 0xf0, 0x1f, 0x8a, 0x03, 0x8f, - 0xc1, 0x72, 0xc9, 0x55, 0x86, 0xd0, 0x2b, 0x89, 0xc4, 0x95, 0xa1, 0x5c, 0x9a, 0xb8, 0xe0, 0x3f, - 0x8b, 0xf8, 0x2e, 0x87, 0x55, 0xd3, 0x90, 0xbb, 0x3a, 0x95, 0x1f, 0xf9, 0x1e, 0x18, 0x9c, 0xd3, - 0xef, 0x97, 0xda, 0xe2, 0xee, 0x65, 0x78, 0xfb, 0xaf, 0x2f, 0x4d, 0xfd, 0x7e, 0xd5, 0x10, 0xe5, - 0x62, 0x7b, 0x0a, 0x99, 0x25, 0xa9, 0xc2, 0xa9, 0x45, 0xc7, 0x6e, 0xda, 0x1e, 0x35, 0x62, 0xce, - 0x77, 0xc7, 0x42, 0x6f, 0xdd, 0x96, 0xa0, 0xa8, 0x76, 0xf1, 0xc2, 0xeb, 0xc0, 0x86, 0x34, 0xe1, - 0x58, 0xd1, 0x75, 0xdb, 0x4d, 0x1a, 0xbe, 0x50, 0x8d, 0x6e, 0xf9, 0x19, 0xef, 0x17, 0x56, 0xcb, - 0x0f, 0xe9, 0x58, 0x94, 0x3f, 0x50, 0x55, 0x3d, 0x53, 0xae, 0x11, 0xbf, 0x25, 0xce, 0xfb, 0xf5, - 0x7c, 0xff, 0xc8, 0xe8, 0x31, 0xed, 0x74, 0xb2, 0x31, 0x4b, 0xa6, 0xd7, 0xa0, 0xea, 0xd7, 0x32, - 0x00, 0xa1, 0x80, 0xc9, 0x93, 0xd1, 0x08, 0x45, 0x99, 0xf0, 0xa1, 0x43, 0x44, 0x2f, 0x88, 0x84, - 0x24, 0x22, 0xe7, 0x20, 0x8f, 0x11, 0x2e, 0xb2, 0xe1, 0xc5, 0xea, 0x5d, 0xd3, 0x32, 0x34, 0x84, - 0x32, 0xac, 0xe4, 0x8a, 0x8e, 0x58, 0x7c, 0xd4, 0xe7, 0xbb, 0xc2, 0x12, 0x1c, 0xab, 0xb4, 0x97, - 0xfd, 0xba, 0x25, 0xbf, 0x3a, 0x0c, 0xb4, 0xe1, 0xb6, 0x97, 0x03, 0x67, 0xd4, 0x48, 0x18, 0x93, - 0x68, 0x11, 0xf5, 0xd7, 0x33, 0xb1, 0x59, 0xf0, 0x00, 0x17, 0xbd, 0xf7, 0x25, 0xed, 0x34, 0x92, - 0xd3, 0x92, 0xfa, 0xb3, 0x59, 0x18, 0x5c, 0xb4, 0x1d, 0x4f, 0x84, 0x0c, 0x39, 0xdc, 0xab, 0x90, - 0x74, 0x56, 0xca, 0xef, 0xe0, 0xac, 0x74, 0x0e, 0xf2, 0x92, 0x89, 0x32, 0x7f, 0x17, 0x31, 0x0c, - 0x47, 0x43, 0xa8, 0xfa, 0xbd, 0x59, 0x80, 0x0f, 0x3f, 0xfd, 0xf4, 0x03, 0x2c, 0x20, 0xf5, 0xa7, - 0x33, 0x70, 0x4c, 0x3c, 0xd4, 0x49, 0xb1, 0xbe, 0xfa, 0xfc, 0x27, 0x56, 0x79, 0x5c, 0x72, 0x90, - 0xe6, 0xe3, 0xd8, 0x12, 0x30, 0x75, 0xdf, 0xf4, 0xf0, 0xad, 0x42, 0x0a, 0xf6, 0x45, 0x05, 0x4c, - 0x5e, 0x02, 0x7c, 0x3a, 0xf2, 0xa4, 0xff, 0x04, 0x99, 0x0b, 0xd7, 0x3d, 0x56, 0x60, 0x2a, 0xf5, - 0x19, 0x52, 0xfd, 0xad, 0x3c, 0xe4, 0xa7, 0xee, 0xd3, 0xda, 0x21, 0xef, 0x1a, 0xe9, 0x62, 0x33, - 0xbf, 0xc7, 0x8b, 0xcd, 0xdd, 0xd8, 0x54, 0xbc, 0x1a, 0xf6, 0x67, 0x21, 0x5a, 0x7d, 0xac, 0xe7, - 0xe3, 0xd5, 0xfb, 0x3d, 0x7d, 0xf8, 0x4c, 0x72, 0xfe, 0xb7, 0x1c, 0xe4, 0x2a, 0x93, 0x8b, 0x47, - 0x7a, 0x73, 0xa0, 0x7a, 0xd3, 0xfd, 0xcd, 0x5a, 0x0d, 0x9e, 0xa1, 0xfa, 0x43, 0x2b, 0xd1, 0xd8, - 0x8b, 0xd3, 0xb7, 0x73, 0x30, 0x52, 0x99, 0x5e, 0x5a, 0x94, 0x6e, 0x82, 0x6f, 0x72, 0x4b, 0x3e, - 0xb4, 0x29, 0xe3, 0x5d, 0x7a, 0x2e, 0xb1, 0x9f, 0xb9, 0x55, 0xb6, 0xbc, 0xe7, 0xae, 0xdf, 0xd6, - 0x1b, 0x6d, 0x8a, 0x57, 0x2f, 0xdc, 0xee, 0xd7, 0x35, 0xdf, 0xa6, 0x5f, 0x41, 0xc7, 0x7f, 0x9f, - 0x01, 0x79, 0x09, 0x72, 0xb7, 0x84, 0x45, 0x46, 0x27, 0x3e, 0xcf, 0x5c, 0xe3, 0x7c, 0xd8, 0x24, - 0x98, 0x6b, 0x9b, 0x06, 0x72, 0x60, 0xa5, 0x58, 0xe1, 0x1b, 0x62, 0x01, 0xde, 0x56, 0xe1, 0xba, - 0x5f, 0xf8, 0x46, 0xb9, 0x44, 0x2a, 0x30, 0xb8, 0x48, 0x9d, 0xa6, 0x89, 0x1d, 0xe5, 0xcf, 0xd9, - 0xdd, 0x99, 0xb0, 0x93, 0xca, 0x60, 0x2b, 0x2c, 0x84, 0xcc, 0x64, 0x2e, 0xe4, 0x4d, 0x00, 0xbe, - 0x47, 0xd9, 0x66, 0xfc, 0xc8, 0xf3, 0xb8, 0xef, 0xe7, 0x5b, 0xcb, 0x94, 0x3d, 0x9e, 0xc4, 0x8c, - 0xdc, 0x85, 0xd1, 0x39, 0xdb, 0x30, 0x57, 0x4c, 0x6e, 0x7a, 0x89, 0x15, 0x14, 0xb6, 0x36, 0x78, - 0x62, 0x5b, 0xc9, 0xa6, 0x54, 0x2e, 0xad, 0x9a, 0x04, 0x63, 0xf5, 0x7f, 0xee, 0x85, 0x3c, 0xeb, - 0xf6, 0xa3, 0xf1, 0xbb, 0x97, 0xf1, 0x5b, 0x84, 0xd1, 0x3b, 0xb6, 0x73, 0xd7, 0xb4, 0xea, 0x81, - 0x55, 0xbc, 0x38, 0x9b, 0xa2, 0x25, 0xcf, 0x1a, 0xc7, 0x55, 0x03, 0x03, 0x7a, 0x2d, 0x41, 0xbe, - 0xc5, 0x08, 0x7e, 0x01, 0x80, 0xfb, 0xba, 0x23, 0x4d, 0x7f, 0x18, 0xac, 0x82, 0x7b, 0xc2, 0xa3, - 0xa1, 0xbd, 0x1c, 0xac, 0x22, 0x24, 0x66, 0x87, 0x70, 0x6e, 0x0b, 0x31, 0x80, 0x76, 0xf7, 0x78, - 0x08, 0x47, 0x5b, 0x08, 0x79, 0x13, 0xc0, 0xad, 0x22, 0x16, 0x01, 0xa4, 0xf7, 0x25, 0x88, 0x09, - 0x22, 0x32, 0x39, 0x88, 0xf0, 0x70, 0x29, 0xcf, 0x4b, 0x9a, 0xc4, 0x83, 0x3c, 0x17, 0x7b, 0x00, - 0x27, 0x11, 0x6e, 0x1d, 0xdf, 0xbf, 0x43, 0x03, 0xaa, 0xa1, 0xad, 0x0c, 0xa8, 0xd4, 0xcf, 0x65, - 0x61, 0xa0, 0xd2, 0x5e, 0x76, 0xd7, 0x5d, 0x8f, 0x36, 0x0f, 0xb9, 0x1a, 0xfb, 0xc7, 0xab, 0x7c, - 0xea, 0xf1, 0xea, 0x51, 0x5f, 0x28, 0xd2, 0xbd, 0x63, 0xb0, 0xa5, 0xf3, 0xc5, 0xf1, 0x3f, 0x64, - 0x61, 0x94, 0x3f, 0x9c, 0x95, 0x4c, 0xb7, 0xb6, 0x0f, 0xc6, 0xfc, 0x07, 0x2f, 0x95, 0xbd, 0x3d, - 0x36, 0x6f, 0xc3, 0x45, 0x42, 0xfd, 0x54, 0x16, 0x06, 0x8b, 0x6d, 0x6f, 0xb5, 0xe8, 0xa1, 0x6e, - 0x3d, 0x90, 0xe7, 0x93, 0x3f, 0xcc, 0xc0, 0x31, 0xd6, 0x90, 0x25, 0xfb, 0x2e, 0xb5, 0xf6, 0xe1, - 0xe2, 0x51, 0xbe, 0x40, 0xcc, 0xee, 0xf2, 0x02, 0xd1, 0x97, 0x65, 0x6e, 0x67, 0xb2, 0xc4, 0xeb, - 0x72, 0xcd, 0x6e, 0xd0, 0xc3, 0xfd, 0x19, 0xfb, 0x78, 0x5d, 0xee, 0x0b, 0x64, 0x1f, 0x9e, 0x67, - 0xbe, 0xbb, 0x04, 0xb2, 0x0f, 0x77, 0x4b, 0xdf, 0x1d, 0x02, 0xf9, 0x7a, 0x06, 0x06, 0x26, 0x6c, - 0xef, 0x90, 0x0f, 0x7c, 0xf1, 0x15, 0x87, 0x5b, 0xcd, 0xfd, 0xaf, 0x38, 0xdc, 0xba, 0xa9, 0xfe, - 0x44, 0x16, 0x4e, 0x88, 0xd8, 0xe0, 0xe2, 0xfe, 0xe1, 0x68, 0x3a, 0x16, 0x83, 0x2d, 0x29, 0x9a, - 0xa3, 0x79, 0x48, 0x88, 0xe6, 0x97, 0x72, 0x70, 0x02, 0x43, 0x99, 0xb2, 0x63, 0xd9, 0x77, 0xc1, - 0x5e, 0x84, 0xd4, 0xa2, 0x8f, 0xa0, 0x73, 0x29, 0x8f, 0xa0, 0x7f, 0xb7, 0x31, 0xfe, 0x5c, 0xdd, - 0xf4, 0x56, 0xdb, 0xcb, 0x57, 0x6a, 0x76, 0xf3, 0x6a, 0xdd, 0xd1, 0xef, 0x99, 0xfc, 0xf9, 0x4f, - 0x6f, 0x5c, 0x0d, 0xd2, 0x6c, 0xe8, 0x2d, 0x53, 0x24, 0xe0, 0xa8, 0xe0, 0x59, 0x87, 0x71, 0xf5, - 0x9f, 0x4f, 0x5d, 0x80, 0xd7, 0x6d, 0xd3, 0x12, 0x36, 0x85, 0x7c, 0xa3, 0x5b, 0x61, 0xe7, 0xc3, - 0xb7, 0x6c, 0xd3, 0xaa, 0xc6, 0x0d, 0x0b, 0x77, 0x5a, 0x5f, 0xc8, 0x5a, 0x93, 0xaa, 0x51, 0xff, - 0xaf, 0x0c, 0x9c, 0x89, 0x6a, 0xf1, 0x77, 0xc3, 0xde, 0xf1, 0x27, 0xb3, 0x70, 0xf2, 0x06, 0x0a, - 0x27, 0x30, 0xe4, 0x38, 0x9a, 0xb7, 0xc4, 0xe0, 0x4c, 0x91, 0xcd, 0xd1, 0x8e, 0xb2, 0xb3, 0x6c, - 0x8e, 0x26, 0x75, 0x21, 0x9b, 0x3f, 0xca, 0xc0, 0xf1, 0x85, 0x72, 0x69, 0xf2, 0xbb, 0x64, 0x44, - 0x25, 0xbf, 0xe7, 0x90, 0x6f, 0x38, 0x13, 0xdf, 0x73, 0xc8, 0xb7, 0x9e, 0x5f, 0xca, 0xc2, 0xf1, - 0x4a, 0x71, 0x6e, 0xf6, 0xbb, 0x65, 0x06, 0x9f, 0x94, 0xad, 0x0e, 0xfd, 0x4b, 0x30, 0xb1, 0x17, - 0x90, 0x3f, 0xf3, 0xf6, 0xb5, 0xce, 0xd6, 0x88, 0x49, 0xa1, 0x1c, 0xf2, 0xa9, 0x7b, 0x5f, 0x84, - 0xc2, 0x34, 0x3f, 0x42, 0x7d, 0xc8, 0x35, 0xff, 0x7f, 0x2d, 0xc0, 0xe0, 0xcd, 0xf6, 0x32, 0x15, - 0xc6, 0x29, 0x0f, 0xf4, 0xcd, 0xef, 0x35, 0x18, 0x14, 0x62, 0xc0, 0x57, 0x13, 0x29, 0x78, 0x9e, - 0x08, 0x86, 0xc2, 0xe3, 0x13, 0xc9, 0x44, 0xe4, 0x1c, 0xe4, 0x6f, 0x53, 0x67, 0x59, 0xf6, 0x2b, - 0xbd, 0x47, 0x9d, 0x65, 0x0d, 0xa1, 0x64, 0x36, 0x34, 0x99, 0x2f, 0x2e, 0x96, 0x31, 0x91, 0x8a, - 0x78, 0xb0, 0xc1, 0xcc, 0x30, 0x81, 0xdd, 0x9b, 0xde, 0x32, 0x79, 0x0a, 0x16, 0xd9, 0xa7, 0x3d, - 0x5e, 0x92, 0xcc, 0xc3, 0x98, 0x6c, 0xf8, 0xc4, 0xb3, 0x88, 0xf4, 0xa7, 0xb0, 0x4b, 0xcb, 0x1f, - 0x92, 0x2c, 0x4a, 0x5e, 0x85, 0x21, 0x1f, 0x88, 0x26, 0x5c, 0x03, 0x61, 0xe8, 0xfa, 0x80, 0x55, - 0x2c, 0x45, 0x51, 0xa4, 0x80, 0xcc, 0x00, 0x9f, 0x21, 0x20, 0x85, 0x41, 0xcc, 0x24, 0x2e, 0x52, - 0x80, 0x3c, 0x8b, 0x0c, 0xd0, 0xcd, 0x03, 0x8d, 0x55, 0x06, 0xd1, 0xe9, 0x12, 0x4d, 0xf2, 0x1d, - 0x01, 0xe7, 0xae, 0xb5, 0x11, 0x32, 0xb2, 0x00, 0x10, 0x1a, 0x15, 0x88, 0x00, 0x06, 0x3b, 0x36, - 0x77, 0x90, 0x58, 0xc8, 0xcf, 0x81, 0xc3, 0xbb, 0x79, 0x0e, 0x54, 0xff, 0x34, 0x0b, 0x83, 0xc5, - 0x56, 0x2b, 0x18, 0x0a, 0x4f, 0x42, 0xa1, 0xd8, 0x6a, 0xdd, 0xd2, 0xca, 0x72, 0x28, 0x73, 0xbd, - 0xd5, 0xaa, 0xb6, 0x1d, 0x53, 0xb6, 0x09, 0xe5, 0x44, 0x64, 0x12, 0x86, 0x8b, 0xad, 0xd6, 0x62, - 0x7b, 0xb9, 0x61, 0xd6, 0xa4, 0xcc, 0x48, 0x3c, 0x77, 0x5c, 0xab, 0x55, 0x6d, 0x21, 0x26, 0x9e, - 0x1e, 0x2b, 0x5a, 0x86, 0x7c, 0x02, 0xc3, 0xfe, 0x88, 0xc4, 0x3c, 0x3c, 0xf5, 0x87, 0x1a, 0x04, - 0x31, 0x0f, 0xdb, 0x76, 0x25, 0x20, 0xe2, 0xc1, 0xde, 0xcf, 0xf9, 0x21, 0xf3, 0x59, 0x45, 0x89, - 0x04, 0x3c, 0x21, 0x4b, 0xf2, 0x14, 0xf4, 0x15, 0x5b, 0x2d, 0xe9, 0xbd, 0x09, 0x8d, 0x8a, 0x58, - 0xa9, 0x78, 0xee, 0x33, 0x41, 0x76, 0xf6, 0x65, 0x18, 0x89, 0x56, 0xb6, 0xa3, 0x60, 0xf1, 0xdf, - 0xc9, 0xe0, 0x07, 0x1d, 0x72, 0x9b, 0xe6, 0x67, 0x20, 0x57, 0x6c, 0xb5, 0xc4, 0x7c, 0x74, 0x3c, - 0xa5, 0x3f, 0xe2, 0x2e, 0xd0, 0xc5, 0x56, 0xcb, 0xff, 0xf4, 0x43, 0xee, 0x1c, 0xb1, 0xab, 0x4f, - 0xff, 0x3a, 0xff, 0xf4, 0xc3, 0xed, 0xb8, 0xa0, 0xfe, 0x56, 0x0e, 0x8e, 0x15, 0x5b, 0xad, 0xa3, - 0x20, 0xf3, 0xfb, 0xe5, 0x68, 0xfd, 0x34, 0x80, 0x34, 0x3d, 0xf6, 0x05, 0xae, 0x5b, 0x83, 0xd2, - 0xd4, 0xa8, 0x64, 0x34, 0x89, 0xc8, 0x57, 0xbf, 0xfe, 0x1d, 0xa9, 0xdf, 0xa7, 0x72, 0x38, 0x15, - 0x1f, 0xf6, 0xa0, 0x51, 0xef, 0x95, 0x6e, 0x13, 0x7d, 0x50, 0xd8, 0x51, 0x1f, 0xfc, 0x41, 0x64, - 0xf0, 0x60, 0xd0, 0xf2, 0xa3, 0x5e, 0xe8, 0xdd, 0xd3, 0xb6, 0x78, 0x44, 0x16, 0xa6, 0x88, 0x64, - 0xe3, 0x27, 0x52, 0x12, 0x71, 0x95, 0x6a, 0x0c, 0x55, 0x35, 0x0d, 0x2d, 0x46, 0xeb, 0xf7, 0x61, - 0xdf, 0x8e, 0xfa, 0x70, 0x23, 0x8b, 0xbe, 0xd3, 0x41, 0x5c, 0xa6, 0xbd, 0x9f, 0x2e, 0xae, 0x02, - 0x70, 0xcb, 0x83, 0xc0, 0xac, 0x79, 0x98, 0x87, 0x60, 0xe1, 0xf9, 0x95, 0x44, 0x08, 0x96, 0x90, - 0x24, 0xb0, 0x90, 0xca, 0xa5, 0x5a, 0x48, 0x5d, 0x86, 0x7e, 0x4d, 0x5f, 0x7b, 0xa3, 0x4d, 0x9d, - 0x75, 0xb1, 0x9d, 0xe1, 0x61, 0x0f, 0xf5, 0xb5, 0xea, 0x27, 0x19, 0x50, 0x0b, 0xd0, 0x44, 0x0d, - 0x9c, 0xef, 0x25, 0x8b, 0x10, 0x7e, 0x47, 0x1e, 0xb8, 0xdc, 0xef, 0x46, 0xd1, 0xc9, 0x8b, 0x90, - 0x2b, 0xde, 0xa9, 0x08, 0xc9, 0x06, 0x5d, 0x5b, 0xbc, 0x53, 0x11, 0xf2, 0xea, 0x58, 0xf6, 0x4e, - 0x45, 0xfd, 0x54, 0x16, 0x48, 0x92, 0x92, 0x3c, 0x07, 0x03, 0x08, 0xad, 0x33, 0x9d, 0x91, 0x13, - 0x73, 0xae, 0xb9, 0x55, 0x07, 0xa1, 0x91, 0xcd, 0x9d, 0x4f, 0x4a, 0x5e, 0xc0, 0xd4, 0xc7, 0x22, - 0x35, 0x5c, 0x24, 0x31, 0xe7, 0x9a, 0xeb, 0x27, 0x0b, 0x8e, 0x65, 0x3e, 0x16, 0xc4, 0xb8, 0x2f, - 0xbc, 0x53, 0x99, 0xb1, 0x5d, 0x4f, 0x88, 0x9a, 0xef, 0x0b, 0xd7, 0x5c, 0xcc, 0x08, 0x1b, 0xd9, - 0x17, 0x72, 0x32, 0xcc, 0x6a, 0x75, 0xa7, 0xc2, 0xdd, 0x54, 0x0c, 0xcd, 0x6e, 0xf8, 0x1b, 0x4a, - 0x9e, 0xd5, 0x6a, 0xcd, 0xad, 0x72, 0x17, 0x17, 0x03, 0x73, 0x2e, 0x47, 0xb2, 0x5a, 0x45, 0x4a, - 0xa9, 0x9f, 0xef, 0x87, 0xd1, 0x92, 0xee, 0xe9, 0xcb, 0xba, 0x4b, 0xa5, 0xd3, 0xf4, 0x31, 0x1f, - 0xe6, 0x7f, 0x8e, 0x24, 0x07, 0x63, 0x39, 0xe5, 0x6b, 0xe2, 0x05, 0xc8, 0x4b, 0x21, 0xdf, 0x20, - 0xe7, 0xa8, 0x9c, 0xc4, 0x6c, 0xb9, 0xda, 0x12, 0x60, 0x2d, 0x41, 0x48, 0x9e, 0x80, 0x41, 0x1f, - 0xc6, 0x0e, 0x00, 0xb9, 0x50, 0x67, 0x8c, 0x65, 0xb6, 0xff, 0xd7, 0x64, 0x34, 0x79, 0x01, 0x86, - 0xfc, 0x9f, 0xd2, 0xd6, 0x9a, 0x67, 0x64, 0x5b, 0x4e, 0x9c, 0x9e, 0x64, 0x52, 0xb9, 0x28, 0xce, - 0x6f, 0xbd, 0x91, 0xa2, 0xb1, 0xa4, 0x67, 0x11, 0x52, 0xf2, 0x49, 0x18, 0xf1, 0x7f, 0x8b, 0x03, - 0x03, 0xcf, 0x0f, 0xf7, 0x44, 0x90, 0xd2, 0x39, 0x26, 0xd6, 0x2b, 0x51, 0x72, 0x7e, 0x74, 0x78, - 0xc8, 0xcf, 0xe3, 0x65, 0x2c, 0x27, 0x4f, 0x0e, 0xb1, 0x0a, 0x48, 0x19, 0xc6, 0x7c, 0x48, 0xa8, - 0xa1, 0x7d, 0xe1, 0x89, 0xd1, 0x58, 0xae, 0xa6, 0x2a, 0x69, 0xb2, 0x14, 0x69, 0xc0, 0xb9, 0x08, - 0xd0, 0x70, 0x57, 0xcd, 0x15, 0x4f, 0x1c, 0xf7, 0x44, 0x0c, 0x62, 0x91, 0xb8, 0x31, 0xe0, 0xca, - 0x69, 0xfc, 0x0c, 0xac, 0xd1, 0xec, 0x50, 0x5d, 0xb9, 0x91, 0x0a, 0x9c, 0xf0, 0xf1, 0x37, 0x26, - 0x17, 0x17, 0x1d, 0xfb, 0x2d, 0x5a, 0xf3, 0xca, 0x25, 0x71, 0x5c, 0xc6, 0xd8, 0x74, 0xc6, 0x72, - 0xb5, 0x5e, 0x6b, 0x31, 0xa5, 0x60, 0xb8, 0x28, 0xf3, 0xd4, 0xc2, 0xe4, 0x36, 0x9c, 0x94, 0xe0, - 0x52, 0x7a, 0x68, 0x08, 0xcf, 0xf3, 0x82, 0x6b, 0x7a, 0x86, 0xe8, 0xf4, 0xe2, 0xe4, 0x65, 0x18, - 0xf6, 0x11, 0xfc, 0x15, 0x71, 0x10, 0x5f, 0x11, 0x71, 0x48, 0x1a, 0xcb, 0xd5, 0xb8, 0x37, 0x65, - 0x94, 0x58, 0xd6, 0x28, 0xcc, 0xa8, 0x3f, 0x14, 0xd1, 0x28, 0x6f, 0xbd, 0x95, 0xaa, 0x8c, 0x98, - 0x65, 0xff, 0xd5, 0x50, 0xa3, 0x16, 0x1c, 0xb3, 0x6e, 0xf2, 0x93, 0xb4, 0xef, 0x40, 0xb9, 0x5c, - 0xb5, 0x11, 0x98, 0xa6, 0x1f, 0x9c, 0xfc, 0x6c, 0x11, 0x8e, 0xa7, 0xe8, 0xd8, 0x8e, 0x4e, 0x8c, - 0x9f, 0xcb, 0x86, 0x8d, 0x38, 0xe4, 0xc7, 0xc6, 0x09, 0xe8, 0xf7, 0xbf, 0x44, 0x6c, 0x1e, 0x94, - 0x4e, 0x43, 0x33, 0xce, 0xc3, 0xc7, 0x47, 0xc4, 0x71, 0xc8, 0x8f, 0x92, 0xfb, 0x21, 0x8e, 0x77, - 0x32, 0xa1, 0x38, 0x0e, 0xf9, 0xf1, 0xf2, 0x8f, 0x72, 0xe1, 0x9c, 0x74, 0x74, 0xc6, 0xdc, 0xaf, - 0x6d, 0x72, 0x68, 0x07, 0x5b, 0xd8, 0x81, 0x23, 0xa3, 0xac, 0x9a, 0x7d, 0xbb, 0x54, 0xcd, 0x3f, - 0x4f, 0xf6, 0x27, 0xdf, 0x7a, 0x1e, 0xca, 0xfe, 0xdc, 0x87, 0xc1, 0x4a, 0xae, 0x85, 0xeb, 0x18, - 0xdf, 0xa3, 0xf7, 0x4a, 0x21, 0xfe, 0x96, 0xc5, 0x16, 0x3d, 0x4a, 0x42, 0x3e, 0x0a, 0xa7, 0x23, - 0x80, 0x45, 0xdd, 0xd1, 0x9b, 0xd4, 0x0b, 0x33, 0x0e, 0x62, 0xd0, 0x26, 0xbf, 0x74, 0xb5, 0x15, - 0xa0, 0xe5, 0x2c, 0x86, 0x1d, 0x38, 0x48, 0xca, 0xd1, 0xb7, 0x03, 0x23, 0xe9, 0x2f, 0xe7, 0xc2, - 0xad, 0x4a, 0x34, 0xf8, 0xaa, 0x46, 0xdd, 0x76, 0xc3, 0x7b, 0x70, 0x3b, 0x78, 0x77, 0xa9, 0x2d, - 0x66, 0xe0, 0x58, 0x71, 0x65, 0x85, 0xd6, 0x3c, 0x3f, 0xa6, 0xb4, 0x2b, 0xc2, 0xed, 0xf1, 0xa3, - 0x83, 0x40, 0x89, 0x18, 0xc1, 0x91, 0xdc, 0xf8, 0xb1, 0x62, 0xea, 0x5f, 0xe4, 0x41, 0x09, 0xb6, - 0xee, 0x81, 0xa3, 0xd6, 0x01, 0x2e, 0x93, 0xef, 0x89, 0x5e, 0x31, 0x61, 0x2c, 0x14, 0x46, 0xa5, - 0xdd, 0x6c, 0xea, 0x38, 0xf4, 0xd8, 0xd1, 0x60, 0x3c, 0xce, 0x2c, 0x24, 0xe4, 0xa7, 0x81, 0xb3, - 0xe2, 0x34, 0x40, 0x42, 0x47, 0xb8, 0xaa, 0xcb, 0x59, 0x68, 0x49, 0xae, 0xe4, 0x0b, 0x19, 0x38, - 0xe1, 0x77, 0xca, 0xc2, 0x32, 0xdb, 0x16, 0x4f, 0xda, 0x6d, 0xcb, 0xf3, 0x4f, 0x22, 0x2f, 0x76, - 0xae, 0x8e, 0x77, 0xd2, 0x95, 0xb4, 0xc2, 0xbc, 0x25, 0x41, 0x60, 0x89, 0x40, 0x21, 0x6c, 0xa4, - 0xa9, 0xd6, 0x90, 0x48, 0x4b, 0xad, 0xf7, 0xec, 0x0d, 0x38, 0xd3, 0x91, 0xe5, 0x56, 0xdb, 0xd0, - 0x5e, 0x79, 0x1b, 0xfa, 0xff, 0x64, 0xc2, 0x89, 0x28, 0x26, 0x24, 0x72, 0x05, 0x20, 0x04, 0x89, - 0x83, 0xe9, 0xc8, 0xe6, 0xc6, 0x38, 0x84, 0x42, 0xd3, 0x24, 0x0a, 0xb2, 0x00, 0x05, 0x21, 0x16, - 0x9e, 0xdd, 0xf7, 0x03, 0x5b, 0xf4, 0xc2, 0x15, 0x59, 0x0e, 0x78, 0xe8, 0x14, 0xdf, 0x2c, 0xd8, - 0x9c, 0x7d, 0x01, 0x06, 0x77, 0xfb, 0x5d, 0x5f, 0xc8, 0x01, 0x91, 0x4f, 0x91, 0x07, 0xb8, 0xc5, - 0x3e, 0xc4, 0x53, 0xd8, 0x25, 0xe8, 0x67, 0x9f, 0x80, 0xf9, 0x2e, 0xa4, 0xf8, 0xb6, 0x6d, 0x01, - 0xd3, 0x02, 0x6c, 0x18, 0x5c, 0xaa, 0x2f, 0x3d, 0xb8, 0x94, 0xfa, 0x63, 0x39, 0x38, 0x25, 0x77, - 0x48, 0x89, 0x62, 0xc8, 0xfc, 0xa3, 0x4e, 0x79, 0x17, 0x3b, 0x45, 0x85, 0x02, 0x3f, 0x3c, 0x88, - 0xdc, 0x05, 0xfc, 0x62, 0x07, 0x21, 0x9a, 0xc0, 0xa8, 0xff, 0x38, 0x0b, 0xc3, 0x8b, 0xb6, 0xeb, - 0xd5, 0x1d, 0xea, 0x2e, 0xea, 0x8e, 0xfb, 0x00, 0x77, 0xc7, 0x07, 0x61, 0x18, 0xc3, 0x03, 0x35, - 0xa9, 0xc5, 0x43, 0xe8, 0xf4, 0x4a, 0xc9, 0x46, 0x7c, 0x84, 0xc8, 0x2b, 0x15, 0x21, 0x64, 0xda, - 0xcf, 0x77, 0x7e, 0x52, 0xd0, 0x26, 0xbe, 0xed, 0xe3, 0x70, 0xf5, 0xe7, 0x73, 0x30, 0xe4, 0x4b, - 0x79, 0xc2, 0x3c, 0xac, 0x2f, 0x35, 0x07, 0x2b, 0xe4, 0xab, 0x00, 0x8b, 0xb6, 0xe3, 0xe9, 0x8d, - 0xf9, 0x50, 0xf3, 0xf1, 0x8a, 0xb3, 0x85, 0x50, 0x5e, 0x46, 0x22, 0xc1, 0xf5, 0x2b, 0xdc, 0x56, - 0xf3, 0x89, 0x89, 0xaf, 0x5f, 0x01, 0x54, 0x93, 0x28, 0xd4, 0xdf, 0xcb, 0xc2, 0x31, 0xbf, 0x93, - 0xa6, 0xee, 0xd3, 0x5a, 0xfb, 0x41, 0x9e, 0x9b, 0xa2, 0xd2, 0xee, 0xdd, 0x52, 0xda, 0xea, 0xbf, - 0x94, 0x26, 0x92, 0xc9, 0x86, 0x7d, 0x34, 0x91, 0xfc, 0x43, 0xe8, 0xb8, 0xfa, 0xfd, 0x39, 0x38, - 0xe1, 0x4b, 0x7d, 0xba, 0x6d, 0xe1, 0xe5, 0xc0, 0xa4, 0xde, 0x68, 0x3c, 0xc8, 0xa7, 0xf1, 0x41, - 0x5f, 0x10, 0x0b, 0x22, 0xde, 0x9e, 0xc8, 0xf1, 0xb7, 0x22, 0xc0, 0x55, 0xdb, 0x34, 0x34, 0x99, - 0x88, 0xbc, 0x0a, 0x43, 0xfe, 0xcf, 0xa2, 0x53, 0xf7, 0x8f, 0xe0, 0x78, 0xd5, 0x1f, 0x14, 0xd2, - 0x9d, 0x48, 0x58, 0x81, 0x48, 0x01, 0xf5, 0x9f, 0x16, 0xe0, 0xec, 0x1d, 0xd3, 0x32, 0xec, 0x35, - 0xd7, 0x4f, 0x11, 0x79, 0xe8, 0xaf, 0xba, 0x0e, 0x3a, 0x35, 0xe4, 0x1b, 0x70, 0x32, 0x2e, 0x52, - 0x27, 0x08, 0xdc, 0x2d, 0x7a, 0x67, 0x8d, 0x13, 0x54, 0xfd, 0x64, 0x91, 0xe2, 0xbd, 0x4c, 0x4b, - 0x2f, 0x19, 0xcf, 0x36, 0xd9, 0xb7, 0x9d, 0x6c, 0x93, 0x8f, 0x43, 0xa1, 0x64, 0x37, 0x75, 0xd3, - 0x0f, 0x30, 0x83, 0xa3, 0x38, 0xa8, 0x17, 0x31, 0x9a, 0xa0, 0x60, 0xfc, 0x45, 0xc5, 0xd8, 0x65, - 0x03, 0x21, 0x7f, 0xbf, 0x00, 0xdb, 0xa5, 0x69, 0x32, 0x11, 0xb1, 0x61, 0x58, 0x54, 0x27, 0x5e, - 0xb7, 0x00, 0x0f, 0x4f, 0xcf, 0xfa, 0x32, 0xea, 0xac, 0x56, 0x57, 0x22, 0xe5, 0xf8, 0x31, 0x8a, - 0x27, 0xc1, 0x14, 0x1f, 0xc3, 0xdf, 0xb9, 0xb4, 0x28, 0x7f, 0x49, 0x08, 0x38, 0xc9, 0x0c, 0x26, - 0x85, 0x80, 0xb3, 0x8c, 0x4c, 0x44, 0xa6, 0x60, 0x0c, 0xc3, 0x2b, 0x07, 0x47, 0x29, 0xa6, 0x12, - 0x43, 0xb8, 0xa9, 0xc4, 0x47, 0x13, 0x1e, 0x91, 0x99, 0x7d, 0x5c, 0xb5, 0x26, 0xd0, 0x5a, 0xb2, - 0xc4, 0xd9, 0xd7, 0x80, 0x24, 0xdb, 0xbc, 0xa3, 0x67, 0x93, 0xff, 0x5d, 0x3a, 0xd7, 0x1d, 0x76, - 0xc3, 0x97, 0xfd, 0x98, 0xed, 0x22, 0xa9, 0xc3, 0x7a, 0xdf, 0xcd, 0xd4, 0x61, 0x85, 0x7d, 0x4d, - 0x1d, 0xa6, 0xfe, 0x5a, 0x06, 0xc6, 0x12, 0x71, 0xc6, 0xc9, 0x33, 0x00, 0x1c, 0x22, 0xc5, 0x73, - 0xc4, 0x00, 0x29, 0x61, 0xec, 0x71, 0xb1, 0x06, 0x86, 0x64, 0xe4, 0x2a, 0xf4, 0xf3, 0x5f, 0x22, - 0x06, 0x53, 0xb2, 0x48, 0xbb, 0x6d, 0x1a, 0x5a, 0x40, 0x14, 0xd6, 0x82, 0x0f, 0x87, 0xb9, 0xd4, - 0x22, 0xde, 0x7a, 0x2b, 0xa8, 0x85, 0x91, 0xa9, 0x9f, 0xcf, 0xc2, 0x50, 0xd0, 0xe0, 0xa2, 0x71, - 0x50, 0x3a, 0x57, 0x10, 0x21, 0xdb, 0x73, 0x5b, 0x85, 0x6c, 0x8f, 0x4d, 0xaa, 0x22, 0x46, 0xfb, - 0xfe, 0xf9, 0x3d, 0x7d, 0x31, 0x0b, 0xc7, 0x82, 0x5a, 0x0f, 0xf0, 0x8d, 0xea, 0x3d, 0x24, 0x92, - 0x2f, 0x64, 0x40, 0x99, 0x30, 0x1b, 0x0d, 0xd3, 0xaa, 0x97, 0xad, 0x15, 0xdb, 0x69, 0xe2, 0xac, - 0x77, 0x70, 0xf7, 0xb4, 0xea, 0x0f, 0x66, 0x60, 0x4c, 0x34, 0x68, 0x52, 0x77, 0x8c, 0x83, 0xbb, - 0x04, 0x8b, 0xb7, 0xe4, 0xe0, 0xf4, 0x45, 0xfd, 0x6a, 0x16, 0x60, 0xd6, 0xae, 0xdd, 0x3d, 0xe4, - 0x6e, 0x53, 0x2f, 0x41, 0x81, 0x07, 0xc2, 0x12, 0x1a, 0x3b, 0x26, 0xdc, 0x83, 0xd8, 0xa7, 0x71, - 0xc4, 0xc4, 0xa8, 0x98, 0x8f, 0x0b, 0x3c, 0x90, 0x96, 0x92, 0xd1, 0x44, 0x11, 0x56, 0x29, 0xa3, - 0x13, 0x0b, 0x46, 0x50, 0x29, 0x83, 0x45, 0x2b, 0xdd, 0xdc, 0x18, 0xcf, 0x37, 0xec, 0xda, 0x5d, - 0x0d, 0xe9, 0xd5, 0xbf, 0xcf, 0x70, 0xd9, 0x1d, 0x72, 0xe7, 0x4f, 0xff, 0xf3, 0xf3, 0x3b, 0xfc, - 0xfc, 0x1f, 0xca, 0xc0, 0x09, 0x8d, 0xd6, 0xec, 0x7b, 0xd4, 0x59, 0x9f, 0xb4, 0x0d, 0x7a, 0x83, - 0x5a, 0xd4, 0x39, 0xa8, 0x11, 0xf5, 0x3f, 0x61, 0x8e, 0x8b, 0xb0, 0x31, 0xb7, 0x5c, 0x6a, 0x1c, - 0x9e, 0xfc, 0x23, 0xea, 0x6f, 0xf6, 0x81, 0x92, 0xba, 0xb5, 0x3d, 0xb4, 0xdb, 0xb9, 0x8e, 0xe7, - 0x95, 0xfc, 0x7e, 0x9d, 0x57, 0x7a, 0x77, 0x76, 0x5e, 0x29, 0xec, 0xf4, 0xbc, 0xd2, 0xb7, 0x9d, - 0xf3, 0x4a, 0x33, 0x7e, 0x5e, 0xe9, 0xc7, 0xf3, 0xca, 0x33, 0x5d, 0xcf, 0x2b, 0x53, 0x96, 0xb1, - 0xcb, 0xd3, 0xca, 0xa1, 0xcd, 0x8d, 0xbb, 0x9b, 0x63, 0xd6, 0x25, 0x36, 0x29, 0xd6, 0x6c, 0xc7, - 0xa0, 0x86, 0x38, 0x5d, 0xe1, 0xd5, 0xbe, 0x23, 0x60, 0x5a, 0x80, 0x4d, 0x24, 0x1a, 0x1e, 0xde, - 0x4e, 0xa2, 0xe1, 0x7d, 0x38, 0x7f, 0x7d, 0x2e, 0x0b, 0x63, 0x93, 0xd4, 0xf1, 0x78, 0xa4, 0xcd, - 0xfd, 0xb0, 0x5c, 0x2b, 0xc2, 0x31, 0x89, 0x21, 0xee, 0xc8, 0xb3, 0xa1, 0x35, 0x5e, 0x8d, 0x3a, - 0x5e, 0xdc, 0x98, 0x2f, 0x4e, 0xcf, 0xaa, 0xf7, 0x93, 0x7d, 0x89, 0xb1, 0x1b, 0x54, 0xef, 0xc3, - 0xb9, 0x20, 0x4d, 0xf1, 0x4b, 0x0b, 0xe8, 0xa5, 0xfc, 0x5d, 0xf9, 0x9d, 0xe7, 0xef, 0x52, 0x7f, - 0x35, 0x03, 0x17, 0x35, 0x6a, 0xd1, 0x35, 0x7d, 0xb9, 0x41, 0xa5, 0x66, 0x89, 0x95, 0x81, 0xcd, - 0x1a, 0xa6, 0xdb, 0xd4, 0xbd, 0xda, 0xea, 0x9e, 0x64, 0x34, 0x0d, 0x43, 0xf2, 0xfc, 0xb5, 0x83, - 0xb9, 0x2d, 0x52, 0x4e, 0xfd, 0xcd, 0x3c, 0xf4, 0x4d, 0xd8, 0xde, 0xeb, 0xf6, 0x1e, 0x13, 0xca, - 0x85, 0x53, 0x7e, 0x76, 0x07, 0x17, 0x3a, 0x4f, 0x61, 0xe5, 0x52, 0x8c, 0x7d, 0xb4, 0xf4, 0x5c, - 0xb6, 0x13, 0xb9, 0x08, 0x7c, 0xb2, 0x1d, 0xa6, 0x92, 0x7b, 0x0e, 0x06, 0x30, 0x48, 0x8b, 0x74, - 0xe5, 0x8a, 0x76, 0xd4, 0x1e, 0x03, 0xc6, 0xeb, 0x08, 0x49, 0xc9, 0x47, 0x23, 0xa1, 0x41, 0x0b, - 0x7b, 0x4f, 0x3d, 0x27, 0x47, 0x09, 0x7d, 0x86, 0xbf, 0xd6, 0x61, 0x9b, 0xa4, 0x34, 0x1d, 0x78, - 0x55, 0x12, 0x6b, 0x52, 0x40, 0xb8, 0x8f, 0x69, 0xe1, 0x26, 0x61, 0x78, 0xc2, 0xf6, 0x24, 0x9b, - 0xdd, 0x81, 0xd0, 0x5b, 0x93, 0x49, 0x3e, 0xdd, 0x60, 0x37, 0x5a, 0x46, 0xfd, 0x76, 0x1e, 0x86, - 0xfc, 0x9f, 0x07, 0xa4, 0x3b, 0x4f, 0x42, 0x61, 0xc6, 0x96, 0x32, 0x15, 0xa0, 0x9d, 0xef, 0xaa, - 0xed, 0xc6, 0x0c, 0x98, 0x05, 0x11, 0x93, 0xfa, 0xbc, 0x6d, 0xc8, 0x56, 0xea, 0x28, 0x75, 0xcb, - 0x36, 0x12, 0x5e, 0xbe, 0x01, 0x21, 0xb9, 0x08, 0x79, 0x34, 0xf0, 0x97, 0x6e, 0xeb, 0x63, 0x46, - 0xfd, 0x88, 0x97, 0xb4, 0xb2, 0xb0, 0x53, 0xad, 0xec, 0xdb, 0xad, 0x56, 0xf6, 0xef, 0xaf, 0x56, - 0xbe, 0x09, 0x43, 0x58, 0x93, 0x9f, 0xe8, 0x6c, 0xeb, 0x85, 0xf5, 0x8c, 0x58, 0xfb, 0x86, 0x79, - 0xbb, 0x45, 0xba, 0x33, 0x5c, 0xf2, 0x22, 0xac, 0x62, 0xba, 0x0b, 0x7b, 0x38, 0x4e, 0xff, 0x79, - 0x06, 0xfa, 0x6e, 0x59, 0x77, 0x2d, 0x7b, 0x6d, 0x6f, 0x1a, 0xf7, 0x0c, 0x0c, 0x0a, 0x36, 0xd2, - 0xea, 0x82, 0x8e, 0xdb, 0x6d, 0x0e, 0xae, 0x22, 0x27, 0x4d, 0xa6, 0x22, 0x2f, 0x07, 0x85, 0xd0, - 0x87, 0x27, 0x17, 0xe6, 0xfa, 0xf0, 0x0b, 0xd5, 0xa2, 0xe9, 0x09, 0x64, 0x72, 0x72, 0x0e, 0xf2, - 0x25, 0xd6, 0x54, 0x29, 0xd8, 0x2d, 0x6b, 0x8a, 0x86, 0x50, 0xf5, 0x73, 0x79, 0x18, 0x89, 0x5d, - 0x7c, 0x3d, 0x0e, 0x03, 0xe2, 0xe2, 0xc9, 0xf4, 0xf3, 0x25, 0xa0, 0x8f, 0x4f, 0x00, 0xd4, 0xfa, - 0xf9, 0x9f, 0x65, 0x83, 0x7c, 0x08, 0xfa, 0x6c, 0x17, 0x17, 0x45, 0xfc, 0x96, 0x91, 0x70, 0x08, - 0x2d, 0x54, 0x58, 0xdb, 0xf9, 0xe0, 0x10, 0x24, 0xb2, 0x46, 0xda, 0x2e, 0x7e, 0xda, 0x75, 0x18, - 0xd0, 0x5d, 0x97, 0x7a, 0x55, 0x4f, 0xaf, 0xcb, 0x29, 0x14, 0x02, 0xa0, 0x3c, 0x3a, 0x10, 0xb8, - 0xa4, 0xd7, 0xc9, 0x6b, 0x30, 0x5c, 0x73, 0x28, 0x2e, 0x9b, 0x7a, 0x83, 0xb5, 0x52, 0xda, 0xd6, - 0x46, 0x10, 0xf2, 0x23, 0x49, 0x88, 0x28, 0x1b, 0xe4, 0x36, 0x0c, 0x8b, 0xcf, 0xe1, 0x06, 0xf6, - 0x38, 0xd0, 0x46, 0xc2, 0x65, 0x8c, 0x8b, 0x84, 0x9b, 0xd8, 0x0b, 0x3f, 0x0b, 0x99, 0x5c, 0xe6, - 0x6b, 0x48, 0xa4, 0x64, 0x01, 0xc8, 0x1a, 0x5d, 0xae, 0xea, 0x6d, 0x6f, 0x95, 0xd5, 0xc5, 0x23, - 0x80, 0x8b, 0xcc, 0x81, 0xe8, 0x9c, 0x90, 0xc4, 0xca, 0x3e, 0x1b, 0x6b, 0x74, 0xb9, 0x18, 0x41, - 0x92, 0x3b, 0x70, 0x32, 0x59, 0x84, 0x7d, 0x32, 0x7f, 0x01, 0x78, 0x74, 0x73, 0x63, 0x7c, 0x3c, - 0x95, 0x40, 0x62, 0x7b, 0x3c, 0xc1, 0xb6, 0x6c, 0xbc, 0x9e, 0xef, 0xef, 0x1b, 0xed, 0xd7, 0x46, - 0x58, 0x59, 0x7f, 0x0b, 0x69, 0x1a, 0xea, 0x37, 0x32, 0x6c, 0xab, 0xc8, 0x3e, 0x08, 0x53, 0x27, - 0x33, 0x5d, 0x6f, 0xee, 0x50, 0xd7, 0x9b, 0x61, 0x92, 0xc3, 0x82, 0xdb, 0x65, 0x76, 0xd5, 0x04, - 0x96, 0x5c, 0x81, 0x82, 0x21, 0xdf, 0x9a, 0x9d, 0x8a, 0x76, 0x82, 0x5f, 0x8f, 0x26, 0xa8, 0xc8, - 0x25, 0xc8, 0xb3, 0x25, 0x2b, 0x7e, 0x64, 0x96, 0x77, 0x17, 0x1a, 0x52, 0xa8, 0xdf, 0x9b, 0x85, - 0x21, 0xe9, 0x6b, 0xae, 0xed, 0xe9, 0x73, 0x5e, 0xdc, 0x5e, 0x33, 0x7d, 0xcb, 0x16, 0x3c, 0x4b, - 0xf9, 0x4d, 0xbe, 0x1e, 0x88, 0x62, 0x5b, 0xaf, 0x4e, 0x42, 0x30, 0xcf, 0x89, 0x0f, 0x2d, 0x6c, - 0xff, 0xf8, 0xc8, 0xe8, 0x5f, 0xcf, 0xf7, 0x67, 0x47, 0x73, 0xaf, 0xe7, 0xfb, 0xf3, 0xa3, 0xbd, - 0x18, 0x2e, 0x0b, 0x23, 0x54, 0xf3, 0xb3, 0xb9, 0xb5, 0x62, 0xd6, 0x0f, 0xb9, 0x8b, 0xc7, 0xfe, - 0x86, 0x12, 0x8b, 0xc9, 0xe6, 0x90, 0xfb, 0x7b, 0xbc, 0xab, 0xb2, 0x39, 0x4a, 0x8a, 0x28, 0x64, - 0xf3, 0x17, 0x19, 0x50, 0x52, 0x65, 0x53, 0x3c, 0x20, 0x63, 0x87, 0xfd, 0x4b, 0x8d, 0xf8, 0xad, - 0x2c, 0x8c, 0x95, 0x2d, 0x8f, 0xd6, 0xf9, 0x89, 0xf1, 0x90, 0x4f, 0x15, 0x37, 0x61, 0x50, 0xfa, - 0x18, 0xd1, 0xe7, 0x0f, 0x05, 0xe7, 0xf1, 0x10, 0xd5, 0x81, 0x93, 0x5c, 0x7a, 0x1f, 0xb3, 0xa9, - 0xc7, 0x84, 0x7c, 0xc8, 0xe7, 0x9c, 0xc3, 0x21, 0xe4, 0x43, 0x3e, 0x79, 0xbd, 0x47, 0x85, 0xfc, - 0xbf, 0x64, 0xe1, 0x78, 0x4a, 0xe5, 0xe4, 0x22, 0xf4, 0x55, 0xda, 0xcb, 0x18, 0x1d, 0x2b, 0x13, - 0x9a, 0x05, 0xbb, 0xed, 0x65, 0x0c, 0x8c, 0xa5, 0xf9, 0x48, 0xb2, 0x84, 0x3e, 0xf0, 0x0b, 0xe5, - 0xd2, 0xa4, 0x90, 0xaa, 0x2a, 0x79, 0xf3, 0x33, 0x70, 0xda, 0x97, 0x05, 0x7e, 0xf2, 0xb6, 0x69, - 0xd4, 0x62, 0x7e, 0xf2, 0xac, 0x0c, 0xf9, 0x18, 0x0c, 0x14, 0xdf, 0x6e, 0x3b, 0x14, 0xf9, 0x72, - 0x89, 0xbf, 0x2f, 0xe0, 0xeb, 0x23, 0xd2, 0x38, 0x73, 0x97, 0x7f, 0x46, 0x11, 0xe7, 0x1d, 0x32, - 0x24, 0x0b, 0x50, 0xb8, 0x61, 0x7a, 0x33, 0xed, 0x65, 0xd1, 0x0b, 0x41, 0x04, 0x2d, 0x0e, 0x4d, - 0xe3, 0x8b, 0xa7, 0x72, 0x1e, 0x09, 0x58, 0x3e, 0x03, 0xf1, 0x02, 0xea, 0xe7, 0x33, 0x70, 0xb6, - 0xf3, 0xe7, 0x92, 0xa7, 0xa0, 0x8f, 0x1d, 0xf5, 0x8b, 0xda, 0xbc, 0x90, 0x25, 0xcf, 0x4b, 0x6a, - 0x37, 0x68, 0x55, 0x77, 0xe4, 0xd3, 0x83, 0x4f, 0x46, 0x5e, 0x81, 0xc1, 0xb2, 0xeb, 0xb6, 0xa9, - 0x53, 0x79, 0xe6, 0x96, 0x56, 0x16, 0x87, 0x4c, 0x3c, 0xc4, 0x98, 0x08, 0xae, 0xba, 0xcf, 0xc4, - 0x02, 0x6a, 0xc9, 0xf4, 0xea, 0x67, 0x32, 0x70, 0xae, 0x9b, 0x98, 0xc8, 0x33, 0xd0, 0xbf, 0x44, - 0x2d, 0xdd, 0xf2, 0xca, 0x25, 0xd1, 0x24, 0x3c, 0xb3, 0x79, 0x08, 0x8b, 0x1e, 0x3d, 0x02, 0x42, - 0x56, 0x88, 0x5f, 0x54, 0x06, 0x96, 0x11, 0xfc, 0x52, 0x15, 0x61, 0xb1, 0x42, 0x3e, 0xa1, 0xfa, - 0xc7, 0x59, 0x18, 0x5a, 0x6c, 0xb4, 0xeb, 0xa6, 0xb4, 0x12, 0xed, 0x7a, 0x03, 0xef, 0x6f, 0xa7, - 0xb3, 0x3b, 0xdb, 0x4e, 0xb3, 0xf1, 0xeb, 0xec, 0x72, 0xfc, 0xfa, 0xe5, 0xc8, 0xcb, 0x50, 0x68, - 0xe1, 0x77, 0xc4, 0xaf, 0x76, 0xf9, 0xd7, 0x75, 0xba, 0xda, 0xe5, 0x65, 0xd8, 0x80, 0xad, 0xed, - 0x61, 0xc0, 0x86, 0x65, 0x25, 0x81, 0x86, 0xab, 0xce, 0x91, 0x40, 0xf7, 0x45, 0xa0, 0xe1, 0x0a, - 0x73, 0x24, 0xd0, 0x3d, 0x08, 0xf4, 0xd3, 0x59, 0x18, 0x89, 0x56, 0x49, 0x9e, 0x82, 0x41, 0x5e, - 0x0d, 0xbf, 0x68, 0xca, 0x48, 0xa6, 0xc8, 0x21, 0x58, 0x03, 0xfe, 0x03, 0xaf, 0x95, 0x5e, 0x09, - 0x3e, 0x86, 0x8b, 0xf2, 0x98, 0xb0, 0x48, 0xe0, 0x8c, 0x6f, 0x3f, 0xcd, 0x67, 0x64, 0x4e, 0x22, - 0xcf, 0xc8, 0xe2, 0x6b, 0x5e, 0x86, 0x63, 0xab, 0xba, 0x5b, 0x0d, 0x6f, 0x8c, 0xf8, 0x7b, 0x72, - 0x3f, 0xb7, 0xcc, 0x8a, 0xa1, 0xb4, 0x91, 0x55, 0xdd, 0x9d, 0x0c, 0x7f, 0x93, 0x29, 0x20, 0x0e, - 0x6d, 0xbb, 0x34, 0xca, 0x20, 0x8f, 0x0c, 0x44, 0x4e, 0xe9, 0x38, 0x56, 0x1b, 0xe3, 0x30, 0x89, - 0x8d, 0xfa, 0x51, 0x38, 0xd3, 0x71, 0x45, 0x21, 0x1f, 0x82, 0xa1, 0x05, 0xa7, 0xae, 0x5b, 0xe6, - 0xdb, 0x7c, 0x43, 0x90, 0x09, 0xef, 0x04, 0x6d, 0x09, 0x2e, 0xdf, 0x53, 0xc9, 0xf4, 0xea, 0x8f, - 0x50, 0xe8, 0x5d, 0xb0, 0xe8, 0xc2, 0x0a, 0x79, 0x1a, 0x06, 0x98, 0x7e, 0xcd, 0xda, 0x4c, 0x5a, - 0x19, 0x61, 0xbf, 0x21, 0x29, 0x1e, 0x22, 0x66, 0x7a, 0xb4, 0x90, 0x8a, 0x5c, 0xe7, 0x49, 0xf2, - 0xf9, 0x94, 0x2c, 0x24, 0x4c, 0xe4, 0x32, 0x1c, 0x33, 0xd3, 0xa3, 0x49, 0x74, 0x7e, 0x29, 0xe1, - 0x05, 0x94, 0x4b, 0x96, 0xe2, 0x18, 0xbf, 0x94, 0x18, 0x4e, 0xb3, 0x69, 0xf9, 0xe7, 0xe3, 0xa7, - 0xb7, 0x24, 0xc5, 0x4c, 0x8f, 0x96, 0x9e, 0xb7, 0x7e, 0x48, 0xb6, 0x5a, 0x8d, 0x1b, 0x9d, 0xc8, - 0xb8, 0x99, 0x1e, 0x2d, 0x42, 0x4b, 0x9e, 0x87, 0x41, 0xf1, 0xfb, 0x75, 0x5b, 0xbc, 0x68, 0x4b, - 0x21, 0x8b, 0x24, 0xd4, 0x4c, 0x8f, 0x26, 0x53, 0x4a, 0x95, 0x2e, 0x3a, 0xa6, 0xe5, 0x09, 0x47, - 0xe8, 0x78, 0xa5, 0x88, 0x93, 0x2a, 0xc5, 0xdf, 0xe4, 0x15, 0x18, 0x0e, 0x62, 0x41, 0xbd, 0x45, - 0x6b, 0x9e, 0xb8, 0x7c, 0x3f, 0x19, 0x2b, 0xcc, 0x91, 0x33, 0x3d, 0x5a, 0x94, 0x9a, 0x5c, 0x82, - 0x82, 0x46, 0x5d, 0xf3, 0x6d, 0xff, 0xb9, 0x7a, 0x44, 0x9a, 0x16, 0xcc, 0xb7, 0x99, 0x94, 0x04, - 0x9e, 0xf5, 0x4e, 0xf8, 0x3e, 0x2e, 0xae, 0xca, 0x49, 0xac, 0x96, 0x29, 0xcb, 0x60, 0xbd, 0x23, - 0x19, 0x47, 0xbc, 0x16, 0x46, 0xc8, 0x12, 0x79, 0x35, 0x07, 0xe3, 0xa1, 0x08, 0x64, 0xec, 0x4c, - 0x8f, 0x16, 0xa3, 0x97, 0xa4, 0x5a, 0x32, 0xdd, 0xbb, 0x22, 0x28, 0x69, 0x5c, 0xaa, 0x0c, 0x25, - 0x49, 0x95, 0xfd, 0x94, 0xaa, 0x9e, 0xa7, 0xde, 0x9a, 0xed, 0xdc, 0x15, 0x21, 0x48, 0xe3, 0x55, - 0x0b, 0xac, 0x54, 0xb5, 0x80, 0xc8, 0x55, 0xb3, 0xc9, 0x7a, 0x24, 0xbd, 0x6a, 0xdd, 0xd3, 0xe5, - 0xaa, 0xf9, 0x4d, 0xa0, 0xdf, 0x49, 0xb3, 0x54, 0xbf, 0xc7, 0xd3, 0x9b, 0x27, 0x3b, 0x14, 0x71, - 0x52, 0x87, 0xe2, 0x6f, 0x56, 0xa9, 0x94, 0xc2, 0x5a, 0xe4, 0x2f, 0x0f, 0x2a, 0x95, 0x50, 0xac, - 0x52, 0x39, 0xd9, 0xf5, 0x75, 0x39, 0xb3, 0xb3, 0x32, 0x16, 0xed, 0xa0, 0x10, 0xc3, 0x3a, 0x48, - 0xca, 0x00, 0x3d, 0x8e, 0x59, 0x63, 0x15, 0x82, 0xe4, 0x83, 0x41, 0x0b, 0x27, 0x17, 0x67, 0x7a, - 0x34, 0xcc, 0x27, 0xab, 0xf2, 0x7c, 0xc4, 0xca, 0x71, 0xa4, 0x18, 0xf2, 0x29, 0x18, 0x6c, 0xa6, - 0x47, 0xe3, 0xb9, 0x8a, 0x9f, 0x96, 0x32, 0xff, 0x29, 0x27, 0xa2, 0x53, 0x44, 0x80, 0x60, 0x53, - 0x44, 0x98, 0x1f, 0x70, 0x3a, 0x99, 0x1d, 0x4f, 0x39, 0x19, 0x5d, 0x99, 0xe2, 0xf8, 0x99, 0x1e, - 0x2d, 0x99, 0x51, 0xef, 0xf9, 0x48, 0xc2, 0x38, 0xe5, 0x54, 0x2c, 0x4e, 0x58, 0x88, 0x62, 0xe2, - 0x92, 0x53, 0xcb, 0x2d, 0xc4, 0x92, 0x9b, 0x8b, 0xc9, 0xea, 0x74, 0xf4, 0xe0, 0x94, 0x42, 0x32, - 0xd3, 0xa3, 0xa5, 0x95, 0x24, 0x93, 0x89, 0xb4, 0x6d, 0x8a, 0x12, 0xb5, 0xcd, 0x89, 0xa1, 0x67, - 0x7a, 0xb4, 0x44, 0xa2, 0xb7, 0xeb, 0x72, 0xbe, 0x34, 0xe5, 0x4c, 0xb4, 0x13, 0x43, 0x0c, 0xeb, - 0x44, 0x29, 0xaf, 0xda, 0x75, 0x39, 0x87, 0x96, 0x72, 0x36, 0x59, 0x2a, 0x9c, 0x39, 0xa5, 0x5c, - 0x5b, 0x5a, 0x7a, 0x5a, 0x20, 0xe5, 0x21, 0x91, 0x98, 0x55, 0x94, 0x4f, 0xa3, 0x99, 0xe9, 0xd1, - 0xd2, 0x53, 0x0a, 0x69, 0xe9, 0xf9, 0x74, 0x94, 0x73, 0xdd, 0x78, 0x06, 0xad, 0x4b, 0xcf, 0xc5, - 0xa3, 0x77, 0xc9, 0x6e, 0xa2, 0x9c, 0x8f, 0x1e, 0xb1, 0x3a, 0x12, 0xce, 0xf4, 0x68, 0x5d, 0x72, - 0xa4, 0xdc, 0xea, 0x90, 0x6a, 0x44, 0xb9, 0x10, 0xcd, 0xcb, 0x9c, 0x4a, 0x34, 0xd3, 0xa3, 0x75, - 0x48, 0x54, 0x72, 0xab, 0x43, 0x26, 0x0a, 0x65, 0xbc, 0x2b, 0xdb, 0x40, 0x1e, 0x1d, 0xf2, 0x58, - 0x2c, 0xa4, 0x26, 0x71, 0x50, 0x1e, 0x8e, 0xaa, 0x6e, 0x0a, 0x09, 0x53, 0xdd, 0xb4, 0xf4, 0x0f, - 0x0b, 0xa9, 0x59, 0x07, 0x94, 0x47, 0xba, 0x30, 0x0c, 0xda, 0x98, 0x9a, 0xaf, 0x60, 0x21, 0x35, - 0xec, 0xbf, 0xa2, 0x46, 0x19, 0xa6, 0x90, 0x30, 0x86, 0x69, 0x09, 0x03, 0x16, 0x52, 0xa3, 0xc3, - 0x2b, 0x8f, 0x76, 0x61, 0x18, 0xb6, 0x30, 0x2d, 0xae, 0xfc, 0xf3, 0x91, 0xf0, 0xec, 0xca, 0xfb, - 0xa2, 0xf3, 0x86, 0x84, 0x62, 0xf3, 0x86, 0x1c, 0xc8, 0x7d, 0x32, 0x11, 0x80, 0x56, 0x79, 0x2c, - 0x3a, 0xcc, 0x63, 0x68, 0x36, 0xcc, 0xe3, 0x21, 0x6b, 0x27, 0x13, 0x81, 0x38, 0x95, 0x8b, 0x9d, - 0x98, 0x20, 0x3a, 0xca, 0x84, 0x87, 0xee, 0x2c, 0xa7, 0x44, 0x82, 0x54, 0xde, 0x1f, 0xb5, 0x2b, - 0x4f, 0x10, 0xcc, 0xf4, 0x68, 0x29, 0xf1, 0x23, 0xb5, 0xf4, 0xb0, 0x47, 0xca, 0xa5, 0xe8, 0xb0, - 0x4d, 0xa3, 0x61, 0xc3, 0x36, 0x35, 0x64, 0xd2, 0x6c, 0x9a, 0xf3, 0x8b, 0x72, 0x39, 0xba, 0x31, - 0x4b, 0x52, 0xb0, 0x8d, 0x59, 0x8a, 0xd3, 0x8c, 0x96, 0x1e, 0xc8, 0x47, 0x79, 0xbc, 0x6b, 0x0b, - 0x91, 0x26, 0xa5, 0x85, 0x3c, 0xae, 0x4d, 0xb8, 0x77, 0xba, 0xd5, 0x6a, 0xd8, 0xba, 0xa1, 0x7c, - 0x20, 0x75, 0xef, 0xc4, 0x91, 0xd2, 0xde, 0x89, 0x03, 0xd8, 0x2a, 0x2f, 0xfb, 0x58, 0x28, 0x4f, - 0x44, 0x57, 0x79, 0x19, 0xc7, 0x56, 0xf9, 0x88, 0x3f, 0xc6, 0x64, 0xc2, 0x1f, 0x41, 0x79, 0x32, - 0xaa, 0x00, 0x31, 0x34, 0x53, 0x80, 0xb8, 0x07, 0xc3, 0x27, 0x3a, 0x5b, 0xf0, 0x2b, 0x57, 0x90, - 0xdb, 0xc3, 0x3e, 0xb7, 0x4e, 0x74, 0x33, 0x3d, 0x5a, 0x67, 0x2f, 0x80, 0x72, 0x8a, 0x41, 0xbe, - 0x72, 0x35, 0xaa, 0x60, 0x09, 0x02, 0xa6, 0x60, 0x49, 0x33, 0xfe, 0x72, 0x8a, 0x45, 0xbd, 0xf2, - 0x54, 0x47, 0x56, 0xc1, 0x37, 0xa7, 0xd8, 0xe1, 0x5f, 0x97, 0x4d, 0xe2, 0x95, 0xa7, 0xa3, 0x8b, - 0x5d, 0x88, 0x61, 0x8b, 0x9d, 0x64, 0x3a, 0x7f, 0x5d, 0x36, 0x06, 0x57, 0xae, 0x25, 0x4b, 0x85, - 0x4b, 0xa4, 0x64, 0x34, 0xae, 0xa5, 0xdb, 0x50, 0x2b, 0xcf, 0x44, 0xb5, 0x2e, 0x8d, 0x86, 0x69, - 0x5d, 0xaa, 0xfd, 0xf5, 0x74, 0xd2, 0x14, 0x5a, 0xb9, 0x1e, 0x3f, 0x93, 0x47, 0xf1, 0x6c, 0xe7, - 0x93, 0x30, 0x9f, 0x7e, 0x2d, 0x1e, 0x93, 0x4f, 0x79, 0x36, 0xf6, 0xec, 0x1c, 0xc1, 0xb2, 0xfd, - 0x6d, 0x2c, 0x86, 0xdf, 0x6b, 0xf1, 0x30, 0x76, 0xca, 0x73, 0xe9, 0x1c, 0x02, 0x5d, 0x89, 0x87, - 0xbd, 0x7b, 0x2d, 0x1e, 0xf9, 0x4d, 0x79, 0x3e, 0x9d, 0x43, 0x20, 0xdd, 0x78, 0xa4, 0xb8, 0xa7, - 0xa5, 0x58, 0xf4, 0xca, 0x07, 0xa3, 0x5b, 0xc7, 0x00, 0xc1, 0xb6, 0x8e, 0x61, 0xc4, 0xfa, 0xa7, - 0xa5, 0x18, 0xee, 0xca, 0x0b, 0x89, 0x22, 0x41, 0x63, 0xa5, 0x48, 0xef, 0x4f, 0x4b, 0xb1, 0xcf, - 0x95, 0x17, 0x13, 0x45, 0x82, 0xd6, 0x49, 0x11, 0xd2, 0x8d, 0x6e, 0x4e, 0xb2, 0xca, 0x4b, 0xd1, - 0xcb, 0xe8, 0xce, 0x94, 0x33, 0x3d, 0x5a, 0x37, 0x67, 0xdb, 0x4f, 0x74, 0x36, 0x2c, 0x57, 0x5e, - 0x8e, 0x0e, 0xe1, 0x4e, 0x74, 0x6c, 0x08, 0x77, 0x34, 0x4e, 0x7f, 0x25, 0x16, 0x30, 0x43, 0x79, - 0x25, 0x3a, 0xc5, 0x45, 0x90, 0x6c, 0x8a, 0x8b, 0x87, 0xd7, 0x88, 0x44, 0x82, 0x50, 0x3e, 0x14, - 0x9d, 0xe2, 0x64, 0x1c, 0x9b, 0xe2, 0x22, 0x51, 0x23, 0x26, 0x13, 0x01, 0x0a, 0x94, 0x57, 0xa3, - 0x53, 0x5c, 0x0c, 0xcd, 0xa6, 0xb8, 0x78, 0x48, 0x83, 0x57, 0x62, 0x7e, 0xfa, 0xca, 0x6b, 0xe9, - 0xed, 0x47, 0xa4, 0xdc, 0x7e, 0xee, 0xd5, 0xaf, 0xa5, 0x3b, 0x9c, 0x2b, 0xc5, 0xe8, 0xf8, 0x4d, - 0xa3, 0x61, 0xe3, 0x37, 0xd5, 0x59, 0x3d, 0x7e, 0x70, 0x10, 0x5a, 0x35, 0xd1, 0xe5, 0xe0, 0x10, - 0x6e, 0x45, 0x52, 0xc0, 0x91, 0x33, 0x32, 0x3f, 0x08, 0x4d, 0x76, 0x38, 0x23, 0xfb, 0xc7, 0xa0, - 0x18, 0x3d, 0x9b, 0x5d, 0x13, 0x76, 0xce, 0x4a, 0x29, 0x3a, 0xbb, 0x26, 0x08, 0xd8, 0xec, 0x9a, - 0xb4, 0x8e, 0x9e, 0x86, 0x51, 0xa1, 0x45, 0xdc, 0x7c, 0xdb, 0xb4, 0xea, 0xca, 0x54, 0xcc, 0xdf, - 0x33, 0x86, 0x67, 0xb3, 0x53, 0x1c, 0x86, 0xeb, 0x35, 0x87, 0x4d, 0x36, 0xcc, 0xd6, 0xb2, 0xad, - 0x3b, 0x46, 0x85, 0x5a, 0x86, 0x32, 0x1d, 0x5b, 0xaf, 0x53, 0x68, 0x70, 0xbd, 0x4e, 0x81, 0x63, - 0x1c, 0xba, 0x18, 0x5c, 0xa3, 0x35, 0x6a, 0xde, 0xa3, 0xca, 0x0d, 0x64, 0x3b, 0xde, 0x89, 0xad, - 0x20, 0x9b, 0xe9, 0xd1, 0x3a, 0x71, 0x60, 0x7b, 0xf5, 0xb9, 0xf5, 0xca, 0x1b, 0xb3, 0x41, 0x8c, - 0x83, 0x45, 0x87, 0xb6, 0x74, 0x87, 0x2a, 0x33, 0xd1, 0xbd, 0x7a, 0x2a, 0x11, 0xdb, 0xab, 0xa7, - 0x22, 0x92, 0x6c, 0xfd, 0xb1, 0x50, 0xee, 0xc6, 0x36, 0x1c, 0x11, 0xe9, 0xa5, 0xd9, 0xec, 0x14, - 0x45, 0x30, 0x01, 0xcd, 0xda, 0x56, 0x1d, 0x6f, 0x2a, 0x5e, 0x8f, 0xce, 0x4e, 0x9d, 0x29, 0xd9, - 0xec, 0xd4, 0x19, 0xcb, 0x54, 0x3d, 0x8a, 0xe5, 0x63, 0xf0, 0x66, 0x54, 0xd5, 0x53, 0x48, 0x98, - 0xaa, 0xa7, 0x80, 0x93, 0x0c, 0x35, 0xea, 0x52, 0x4f, 0x99, 0xed, 0xc6, 0x10, 0x49, 0x92, 0x0c, - 0x11, 0x9c, 0x64, 0x38, 0x4d, 0xbd, 0xda, 0xaa, 0x32, 0xd7, 0x8d, 0x21, 0x92, 0x24, 0x19, 0x22, - 0x98, 0x1d, 0x36, 0xa3, 0xe0, 0x89, 0x76, 0xe3, 0xae, 0xdf, 0x67, 0xf3, 0xd1, 0xc3, 0x66, 0x47, - 0x42, 0x76, 0xd8, 0xec, 0x88, 0x24, 0x9f, 0xd9, 0xb6, 0x1d, 0xbe, 0xb2, 0x80, 0x15, 0x5e, 0x09, - 0xf7, 0x05, 0xdb, 0x29, 0x35, 0xd3, 0xa3, 0x6d, 0xd7, 0xce, 0xff, 0x03, 0x81, 0xd1, 0xaa, 0xb2, - 0x28, 0xee, 0xc1, 0xfd, 0xbb, 0x0a, 0x0e, 0x9e, 0xe9, 0xd1, 0x02, 0xb3, 0xd6, 0xe7, 0x61, 0x10, - 0x3f, 0xaa, 0x6c, 0x99, 0x5e, 0x69, 0x42, 0x79, 0x23, 0x7a, 0x64, 0x92, 0x50, 0xec, 0xc8, 0x24, - 0xfd, 0x64, 0x93, 0x38, 0xfe, 0xe4, 0x53, 0x4c, 0x69, 0x42, 0xd1, 0xa2, 0x93, 0x78, 0x04, 0xc9, - 0x26, 0xf1, 0x08, 0x20, 0xa8, 0xb7, 0xe4, 0xd8, 0xad, 0xd2, 0x84, 0x52, 0x49, 0xa9, 0x97, 0xa3, - 0x82, 0x7a, 0xf9, 0xcf, 0xa0, 0xde, 0xca, 0x6a, 0xdb, 0x2b, 0xb1, 0x6f, 0x5c, 0x4a, 0xa9, 0xd7, - 0x47, 0x06, 0xf5, 0xfa, 0x00, 0x36, 0x15, 0x22, 0x60, 0xd1, 0xb1, 0xd9, 0xa4, 0x7d, 0xd3, 0x6c, - 0x34, 0x94, 0x5b, 0xd1, 0xa9, 0x30, 0x8e, 0x67, 0x53, 0x61, 0x1c, 0xc6, 0xb6, 0x9e, 0xbc, 0x55, - 0x74, 0xb9, 0x5d, 0x57, 0x6e, 0x47, 0xb7, 0x9e, 0x21, 0x86, 0x6d, 0x3d, 0xc3, 0x5f, 0x78, 0xba, - 0x60, 0xbf, 0x34, 0xba, 0xe2, 0x50, 0x77, 0x55, 0xb9, 0x13, 0x3b, 0x5d, 0x48, 0x38, 0x3c, 0x5d, - 0x48, 0xbf, 0x49, 0x1d, 0x1e, 0x8a, 0x2c, 0x34, 0xfe, 0x1b, 0x4f, 0x85, 0xea, 0x4e, 0x6d, 0x55, - 0xf9, 0x30, 0xb2, 0x7a, 0x34, 0x75, 0xa9, 0x8a, 0x92, 0xce, 0xf4, 0x68, 0xdd, 0x38, 0xe1, 0xb1, - 0xfc, 0x8d, 0x59, 0x1e, 0x30, 0x56, 0x5b, 0x9c, 0xf4, 0x0f, 0xa1, 0x6f, 0xc6, 0x8e, 0xe5, 0x49, - 0x12, 0x3c, 0x96, 0x27, 0xc1, 0xa4, 0x05, 0x17, 0x62, 0x47, 0xb5, 0x39, 0xbd, 0xc1, 0xce, 0x25, - 0xd4, 0x58, 0xd4, 0x6b, 0x77, 0xa9, 0xa7, 0x7c, 0x04, 0x79, 0x5f, 0xec, 0x70, 0xe0, 0x8b, 0x51, - 0xcf, 0xf4, 0x68, 0x5b, 0xf0, 0x23, 0x2a, 0xe4, 0x2b, 0xd3, 0x4b, 0x8b, 0xca, 0x47, 0xa3, 0xf7, - 0x9b, 0x0c, 0x36, 0xd3, 0xa3, 0x21, 0x8e, 0xed, 0xd2, 0x6e, 0xb5, 0xea, 0x8e, 0x6e, 0x50, 0xbe, - 0xd1, 0xc2, 0xbd, 0x9b, 0xd8, 0x80, 0x7e, 0x2c, 0xba, 0x4b, 0xeb, 0x44, 0xc7, 0x76, 0x69, 0x9d, - 0x70, 0x4c, 0x51, 0x23, 0xb9, 0x51, 0x94, 0x8f, 0x47, 0x15, 0x35, 0x82, 0x64, 0x8a, 0x1a, 0xcd, - 0xa4, 0xf2, 0x61, 0x38, 0x15, 0x9c, 0xe7, 0xc5, 0xfa, 0xcb, 0x3b, 0x4d, 0xf9, 0x04, 0xf2, 0xb9, - 0x90, 0x78, 0x0c, 0x88, 0x50, 0xcd, 0xf4, 0x68, 0x1d, 0xca, 0xb3, 0x15, 0x37, 0x91, 0xf6, 0x4b, - 0x6c, 0x2f, 0xbe, 0x27, 0xba, 0xe2, 0x76, 0x20, 0x63, 0x2b, 0x6e, 0x07, 0x54, 0x2a, 0x73, 0x21, - 0x54, 0x7d, 0x0b, 0xe6, 0x81, 0x4c, 0x3b, 0x71, 0x48, 0x65, 0x2e, 0x76, 0x6a, 0xcb, 0x5b, 0x30, - 0x0f, 0x76, 0x6b, 0x9d, 0x38, 0x90, 0x4b, 0x50, 0xa8, 0x54, 0xe6, 0xb4, 0xb6, 0xa5, 0xd4, 0x62, - 0xd6, 0xba, 0x08, 0x9d, 0xe9, 0xd1, 0x04, 0x9e, 0x6d, 0x83, 0xa6, 0x1a, 0xba, 0xeb, 0x99, 0x35, - 0x17, 0x47, 0x8c, 0x3f, 0x42, 0x8c, 0xe8, 0x36, 0x28, 0x8d, 0x86, 0x6d, 0x83, 0xd2, 0xe0, 0x6c, - 0xbf, 0x38, 0xa9, 0xbb, 0xae, 0x6e, 0x19, 0x8e, 0x3e, 0x81, 0xcb, 0x04, 0x8d, 0x79, 0x83, 0x45, - 0xb0, 0x6c, 0xbf, 0x18, 0x85, 0xe0, 0xe5, 0xbb, 0x0f, 0xf1, 0xb7, 0x39, 0x2b, 0xb1, 0xcb, 0xf7, - 0x18, 0x1e, 0x2f, 0xdf, 0x63, 0x30, 0xdc, 0x77, 0xfa, 0x30, 0x8d, 0xd6, 0x4d, 0x26, 0x22, 0xa5, - 0x1e, 0xdb, 0x77, 0xc6, 0x09, 0x70, 0xdf, 0x19, 0x07, 0x46, 0x9a, 0xe4, 0x2f, 0xb7, 0xab, 0x1d, - 0x9a, 0x14, 0xae, 0xb2, 0x89, 0x32, 0x6c, 0xfd, 0x0e, 0x07, 0x47, 0x69, 0xdd, 0xd2, 0x9b, 0x76, - 0x69, 0xc2, 0x97, 0xba, 0x19, 0x5d, 0xbf, 0x3b, 0x12, 0xb2, 0xf5, 0xbb, 0x23, 0x92, 0xcd, 0xae, - 0xfe, 0x41, 0x6b, 0x55, 0x77, 0xa8, 0x51, 0x32, 0x1d, 0xbc, 0x59, 0x5c, 0xe7, 0x47, 0xc3, 0xb7, - 0xa2, 0xb3, 0x6b, 0x17, 0x52, 0x36, 0xbb, 0x76, 0x41, 0xb3, 0x4d, 0x5e, 0x3a, 0x5a, 0xa3, 0xba, - 0xa1, 0xdc, 0x8d, 0x6e, 0xf2, 0x3a, 0x53, 0xb2, 0x4d, 0x5e, 0x67, 0x6c, 0xe7, 0xcf, 0xb9, 0xe3, - 0x98, 0x1e, 0x55, 0x1a, 0xdb, 0xf9, 0x1c, 0x24, 0xed, 0xfc, 0x39, 0x88, 0x66, 0x07, 0xc2, 0x78, - 0x87, 0x34, 0xa3, 0x07, 0xc2, 0x64, 0x37, 0xc4, 0x4b, 0xb0, 0x1d, 0x8b, 0x70, 0x0a, 0x54, 0xac, - 0xe8, 0x8e, 0x45, 0x80, 0xd9, 0x8e, 0x25, 0x74, 0x1b, 0x8c, 0xb8, 0x82, 0x29, 0x76, 0x74, 0x0d, - 0x95, 0x71, 0x6c, 0x0d, 0x8d, 0xb8, 0x8d, 0x3d, 0x1f, 0xf1, 0x73, 0x50, 0x5a, 0xd1, 0x5d, 0x87, - 0x84, 0x62, 0xbb, 0x0e, 0xd9, 0x23, 0x62, 0x12, 0x8e, 0xe1, 0x2b, 0xb8, 0xd6, 0x0e, 0xde, 0x71, - 0x3e, 0x19, 0xfd, 0xcc, 0x18, 0x9a, 0x7d, 0x66, 0x0c, 0x14, 0x61, 0x22, 0xa6, 0x2d, 0xa7, 0x03, - 0x93, 0xf0, 0x7e, 0x30, 0x06, 0x22, 0xb3, 0x40, 0x2a, 0xc5, 0xb9, 0xd9, 0xb2, 0xb1, 0x28, 0x3f, - 0x91, 0xb9, 0xd1, 0x1b, 0xd8, 0x24, 0xc5, 0x4c, 0x8f, 0x96, 0x52, 0x8e, 0xbc, 0x05, 0xe7, 0x04, - 0x54, 0x78, 0x7c, 0x2f, 0x3a, 0xf6, 0x3d, 0xd3, 0x08, 0x16, 0x04, 0x2f, 0x6a, 0x47, 0xd7, 0x8d, - 0x76, 0xa6, 0x47, 0xeb, 0xca, 0xab, 0x73, 0x5d, 0x62, 0x7d, 0x68, 0x6f, 0xa7, 0xae, 0x60, 0x91, - 0xe8, 0xca, 0xab, 0x73, 0x5d, 0x42, 0xee, 0xf7, 0xb6, 0x53, 0x57, 0xd0, 0x09, 0x5d, 0x79, 0x11, - 0x17, 0xc6, 0xbb, 0xe1, 0x8b, 0x8d, 0x86, 0xb2, 0x86, 0xd5, 0xbd, 0x7f, 0x3b, 0xd5, 0x15, 0x71, - 0xc3, 0xb9, 0x15, 0x47, 0x36, 0x4b, 0x2f, 0xb4, 0xa8, 0x55, 0x89, 0x2c, 0x40, 0xf7, 0xa3, 0xb3, - 0x74, 0x82, 0x80, 0xcd, 0xd2, 0x09, 0x20, 0x1b, 0x50, 0xb2, 0xbb, 0x8c, 0xb2, 0x1e, 0x1d, 0x50, - 0x32, 0x8e, 0x0d, 0xa8, 0x88, 0x6b, 0xcd, 0x02, 0x1c, 0x5f, 0xb8, 0xeb, 0xe9, 0xfe, 0x0e, 0xd2, - 0x15, 0x5d, 0xf9, 0x76, 0xec, 0x91, 0x29, 0x49, 0x82, 0x8f, 0x4c, 0x49, 0x30, 0x1b, 0x23, 0x0c, - 0x5c, 0x59, 0xb7, 0x6a, 0xd3, 0xba, 0xd9, 0x68, 0x3b, 0x54, 0xf9, 0x0f, 0xa2, 0x63, 0x24, 0x86, - 0x66, 0x63, 0x24, 0x06, 0x62, 0x0b, 0x34, 0x03, 0x15, 0x5d, 0xd7, 0xac, 0x5b, 0xe2, 0x5c, 0xd9, - 0x6e, 0x78, 0xca, 0x7f, 0x18, 0x5d, 0xa0, 0xd3, 0x68, 0xd8, 0x02, 0x9d, 0x06, 0xc7, 0x5b, 0x27, - 0xd6, 0x0b, 0x6c, 0xf1, 0x90, 0xdf, 0x2a, 0xff, 0xa3, 0xd8, 0xad, 0x53, 0x0a, 0x0d, 0xde, 0x3a, - 0xa5, 0xc0, 0xd9, 0xfa, 0xc8, 0xf7, 0x64, 0xb3, 0x66, 0xf0, 0x56, 0xfd, 0x1f, 0x47, 0xd7, 0xc7, - 0x38, 0x9e, 0xad, 0x8f, 0x71, 0x58, 0x94, 0x8f, 0xe8, 0x82, 0xff, 0xa4, 0x13, 0x9f, 0x40, 0xfe, - 0x89, 0x32, 0xe4, 0x86, 0xcc, 0x47, 0x8c, 0x94, 0xef, 0xcd, 0x74, 0x62, 0x14, 0x0c, 0x8f, 0x44, - 0xa1, 0x28, 0x23, 0x8d, 0xde, 0x33, 0xe9, 0x9a, 0xf2, 0xa9, 0x8e, 0x8c, 0x38, 0x41, 0x94, 0x11, - 0x87, 0x91, 0x37, 0xe1, 0x54, 0x08, 0x9b, 0xa3, 0xcd, 0xe5, 0x60, 0x66, 0xfa, 0xbe, 0x4c, 0x74, - 0x1b, 0x9c, 0x4e, 0xc6, 0xb6, 0xc1, 0xe9, 0x98, 0x34, 0xd6, 0x42, 0x74, 0xff, 0xe9, 0x16, 0xac, - 0x03, 0x09, 0x76, 0x60, 0x90, 0xc6, 0x5a, 0x48, 0xf3, 0xfb, 0xb7, 0x60, 0x1d, 0xc8, 0xb4, 0x03, - 0x03, 0xf2, 0xd9, 0x0c, 0x5c, 0x4c, 0x47, 0x15, 0x1b, 0x8d, 0x69, 0xdb, 0x09, 0x71, 0xca, 0x0f, - 0x64, 0xa2, 0x17, 0x0d, 0xdb, 0x2b, 0x36, 0xd3, 0xa3, 0x6d, 0xb3, 0x02, 0xf2, 0x21, 0x18, 0x2e, - 0xb6, 0x0d, 0xd3, 0xc3, 0x87, 0x37, 0xb6, 0x71, 0xfe, 0x74, 0x26, 0x76, 0xc4, 0x91, 0xb1, 0x78, - 0xc4, 0x91, 0x01, 0xe4, 0x75, 0x18, 0xab, 0xd0, 0x5a, 0xdb, 0x31, 0xbd, 0x75, 0x8d, 0xb6, 0x6c, - 0xc7, 0x63, 0x3c, 0x7e, 0x30, 0x13, 0x9d, 0xc4, 0x12, 0x14, 0x6c, 0x12, 0x4b, 0x00, 0xc9, 0xed, - 0xc4, 0xab, 0xbc, 0xe8, 0xcc, 0xcf, 0x64, 0xba, 0x3e, 0xcb, 0x07, 0x7d, 0x99, 0x5e, 0x9c, 0x2c, - 0xc6, 0x5e, 0xd1, 0x05, 0xd7, 0xcf, 0x66, 0xba, 0x3c, 0xa3, 0x4b, 0x33, 0x5c, 0x12, 0xcc, 0x38, - 0xa6, 0x24, 0x8a, 0x57, 0x7e, 0x28, 0xd3, 0xe5, 0xd9, 0x3b, 0xe4, 0x98, 0x96, 0x63, 0xfe, 0x59, - 0x6e, 0x29, 0x22, 0x18, 0xfd, 0x67, 0x99, 0xa4, 0xa9, 0x48, 0x50, 0x5e, 0x22, 0x64, 0xc5, 0x6e, - 0xb9, 0x81, 0xd2, 0x7f, 0x2e, 0x93, 0xb4, 0xcd, 0x0b, 0x8b, 0x85, 0xbf, 0x08, 0x85, 0xb3, 0x53, - 0xf7, 0x3d, 0xea, 0x58, 0x7a, 0x03, 0xbb, 0xb3, 0xe2, 0xd9, 0x8e, 0x5e, 0xa7, 0x53, 0x96, 0xbe, - 0xdc, 0xa0, 0xca, 0xe7, 0x33, 0xd1, 0x1d, 0x6c, 0x67, 0x52, 0xb6, 0x83, 0xed, 0x8c, 0x25, 0xab, - 0xf0, 0x50, 0x1a, 0xb6, 0x64, 0xba, 0x58, 0xcf, 0x17, 0x32, 0xd1, 0x2d, 0x6c, 0x17, 0x5a, 0xb6, - 0x85, 0xed, 0x82, 0x26, 0xd7, 0x60, 0x60, 0xc2, 0xf6, 0xa7, 0xdf, 0x1f, 0x8e, 0x19, 0x43, 0x06, - 0x98, 0x99, 0x1e, 0x2d, 0x24, 0x13, 0x65, 0xc4, 0xa0, 0xfe, 0x62, 0xb2, 0x4c, 0xf8, 0xf8, 0x14, - 0xfc, 0x10, 0x65, 0x84, 0xb8, 0x7f, 0x24, 0x59, 0x26, 0x7c, 0xe3, 0x0a, 0x7e, 0xb0, 0x99, 0x84, - 0xd7, 0x38, 0x37, 0x5d, 0x64, 0xfb, 0xb6, 0xc9, 0x55, 0xbd, 0xd1, 0xa0, 0x56, 0x9d, 0x2a, 0x5f, - 0x8a, 0xcd, 0x24, 0xe9, 0x64, 0x6c, 0x26, 0x49, 0xc7, 0x90, 0x8f, 0xc1, 0xe9, 0xdb, 0x7a, 0xc3, - 0x34, 0x42, 0x9c, 0x9f, 0x36, 0x5c, 0xf9, 0xd1, 0x4c, 0xf4, 0x34, 0xdd, 0x81, 0x8e, 0x9d, 0xa6, - 0x3b, 0xa0, 0xc8, 0x1c, 0x10, 0x5c, 0x46, 0x83, 0xd9, 0x82, 0xad, 0xcf, 0xca, 0x7f, 0x9e, 0x89, - 0xee, 0x53, 0x93, 0x24, 0x6c, 0x9f, 0x9a, 0x84, 0x92, 0x6a, 0xe7, 0xfc, 0x23, 0xca, 0x8f, 0x65, - 0xa2, 0xb7, 0x35, 0x9d, 0x08, 0x67, 0x7a, 0xb4, 0xce, 0x49, 0x4c, 0x6e, 0xc0, 0x68, 0x65, 0xb1, - 0x3c, 0x3d, 0x3d, 0x55, 0xb9, 0x5d, 0x2e, 0xa1, 0x5f, 0x84, 0xa1, 0xfc, 0x78, 0x6c, 0xc5, 0x8a, - 0x13, 0xb0, 0x15, 0x2b, 0x0e, 0x23, 0x2f, 0xc1, 0x10, 0x6b, 0x3f, 0x1b, 0x30, 0xf8, 0xc9, 0x5f, - 0xce, 0x44, 0xb7, 0x53, 0x32, 0x92, 0x6d, 0xa7, 0xe4, 0xdf, 0xa4, 0x02, 0x27, 0x98, 0x14, 0x17, - 0x1d, 0xba, 0x42, 0x1d, 0x6a, 0xd5, 0xfc, 0x31, 0xfd, 0x13, 0x99, 0xe8, 0x2e, 0x23, 0x8d, 0x88, - 0xed, 0x32, 0xd2, 0xe0, 0xe4, 0x2e, 0x9c, 0x8b, 0xdf, 0x04, 0xc9, 0x6e, 0xaf, 0xca, 0x4f, 0x66, - 0x62, 0x9b, 0xe1, 0x2e, 0xc4, 0xb8, 0x19, 0xee, 0x82, 0x27, 0x16, 0x9c, 0x17, 0xd7, 0x2a, 0xc2, - 0xe0, 0x32, 0x5e, 0xdb, 0x4f, 0xf1, 0xda, 0x1e, 0x0b, 0x0d, 0x02, 0xbb, 0x50, 0xcf, 0xf4, 0x68, - 0xdd, 0xd9, 0x31, 0x3d, 0x4b, 0x66, 0xd9, 0x50, 0x7e, 0x3a, 0x93, 0x6e, 0x91, 0x12, 0x31, 0x53, - 0x4e, 0x4b, 0xcf, 0xf1, 0x66, 0xa7, 0x1c, 0x11, 0xca, 0xcf, 0xc4, 0xc6, 0x5b, 0x3a, 0x19, 0x1b, - 0x6f, 0x1d, 0x92, 0x4c, 0xbc, 0x0e, 0x63, 0x5c, 0xa9, 0x17, 0x75, 0x1c, 0x86, 0x56, 0x9d, 0x1a, - 0xca, 0x7f, 0x11, 0x5b, 0xed, 0x12, 0x14, 0x68, 0xda, 0x13, 0x07, 0xb2, 0xa9, 0xbb, 0xd2, 0xd2, - 0x2d, 0x0b, 0xaf, 0x59, 0x95, 0xff, 0x32, 0x36, 0x75, 0x87, 0x28, 0x34, 0xdc, 0x0d, 0x7e, 0x31, - 0x4d, 0xe8, 0x96, 0x5f, 0x49, 0xf9, 0xd9, 0x98, 0x26, 0x74, 0x23, 0x66, 0x9a, 0xd0, 0x35, 0x59, - 0xd3, 0xed, 0x0e, 0x2e, 0xe8, 0xca, 0x57, 0x62, 0x2b, 0x72, 0x2a, 0x15, 0x5b, 0x91, 0xd3, 0x3d, - 0xd8, 0x6f, 0x77, 0x70, 0xdf, 0x56, 0x7e, 0xae, 0x3b, 0xdf, 0x70, 0xa5, 0x4f, 0xf7, 0xfe, 0xbe, - 0xdd, 0xc1, 0xf5, 0x59, 0xf9, 0xf9, 0xee, 0x7c, 0x43, 0xc3, 0xbe, 0x74, 0xcf, 0xe9, 0x6a, 0x67, - 0xb7, 0x61, 0xe5, 0x17, 0xe2, 0x53, 0x57, 0x07, 0x42, 0x9c, 0xba, 0x3a, 0xf9, 0x1e, 0x2f, 0xc3, - 0x19, 0xae, 0x21, 0x37, 0x1c, 0xbd, 0xb5, 0x5a, 0xa1, 0x9e, 0x67, 0x5a, 0x75, 0xff, 0x24, 0xf6, - 0x5f, 0x65, 0x62, 0xd7, 0x63, 0x9d, 0x28, 0xf1, 0x7a, 0xac, 0x13, 0x92, 0x29, 0x6f, 0xc2, 0x41, - 0x58, 0xf9, 0xc5, 0x98, 0xf2, 0x26, 0x28, 0x98, 0xf2, 0x26, 0xfd, 0x8a, 0x5f, 0x4f, 0xf1, 0x83, - 0x55, 0xfe, 0xeb, 0xce, 0xbc, 0x82, 0xf6, 0xa5, 0xb8, 0xcf, 0xbe, 0x9e, 0xe2, 0xee, 0xa9, 0xfc, - 0x37, 0x9d, 0x79, 0x85, 0x36, 0x48, 0x49, 0x2f, 0xd1, 0x37, 0xe1, 0x14, 0x9f, 0xcd, 0xa7, 0xa9, - 0x41, 0x23, 0x1f, 0xfa, 0x4b, 0xb1, 0xb1, 0x9f, 0x4e, 0x86, 0x57, 0xee, 0xa9, 0x98, 0x34, 0xd6, - 0xa2, 0xad, 0xbf, 0xbc, 0x05, 0xeb, 0xf0, 0x40, 0x90, 0x8e, 0x61, 0xeb, 0x8d, 0xec, 0x2b, 0xa7, - 0xfc, 0x4a, 0x6c, 0xbd, 0x91, 0x91, 0x68, 0xce, 0x21, 0x3b, 0xd6, 0xbd, 0x14, 0xf5, 0x0b, 0x53, - 0xfe, 0xdb, 0xd4, 0xc2, 0x41, 0x07, 0x44, 0x9d, 0xc8, 0x5e, 0x8a, 0xfa, 0x40, 0x29, 0xbf, 0x9a, - 0x5a, 0x38, 0xf8, 0x80, 0x08, 0xf1, 0x44, 0x1f, 0xf4, 0xe2, 0x15, 0x82, 0xfa, 0x95, 0x0c, 0x0c, - 0x55, 0x3c, 0x87, 0xea, 0x4d, 0x11, 0x68, 0xe9, 0x2c, 0xf4, 0x73, 0x5b, 0x3c, 0xdf, 0xcf, 0x50, - 0x0b, 0x7e, 0x93, 0x8b, 0x30, 0x32, 0xab, 0xbb, 0x1e, 0x96, 0x2c, 0x5b, 0x06, 0xbd, 0x8f, 0x7e, - 0x28, 0x39, 0x2d, 0x06, 0x25, 0xb3, 0x9c, 0x8e, 0x97, 0xc3, 0xd8, 0x7a, 0xb9, 0x2d, 0xe3, 0x0b, - 0xf5, 0xbf, 0xb3, 0x31, 0xde, 0x83, 0xe1, 0x84, 0x62, 0x65, 0xd5, 0x6f, 0x64, 0x20, 0x61, 0x25, - 0xb8, 0x7b, 0x87, 0xe2, 0x05, 0x38, 0x16, 0x8b, 0xe7, 0x28, 0x9c, 0x69, 0xb6, 0x19, 0xee, 0x31, - 0x5e, 0x9a, 0xbc, 0x3f, 0x70, 0xe2, 0xb8, 0xa5, 0xcd, 0x8a, 0xd8, 0x51, 0x7d, 0x9b, 0x1b, 0xe3, - 0xb9, 0xb6, 0xd3, 0xd0, 0x24, 0x94, 0x88, 0x0d, 0xf2, 0x9d, 0xd1, 0x30, 0x58, 0x1d, 0xb9, 0x28, - 0xbc, 0x9b, 0x33, 0x61, 0xc4, 0xa9, 0x58, 0x2a, 0x64, 0xee, 0xcd, 0xfc, 0x21, 0x18, 0x2a, 0x37, - 0x5b, 0xd4, 0x71, 0x6d, 0x4b, 0xf7, 0x6c, 0x47, 0xf8, 0x72, 0xa2, 0xe7, 0x91, 0x29, 0xc1, 0x65, - 0xcf, 0x23, 0x99, 0x9e, 0x5c, 0xf6, 0xb3, 0x33, 0xe5, 0x30, 0x4c, 0x20, 0x7a, 0x54, 0xc5, 0xd3, - 0xeb, 0x72, 0x0a, 0x46, 0x7a, 0xcb, 0xd5, 0xd1, 0xdd, 0x27, 0x20, 0x6d, 0x33, 0x80, 0x4c, 0x8a, - 0x14, 0xe4, 0x09, 0x28, 0xe0, 0xf5, 0xa8, 0x8b, 0x59, 0xd7, 0x44, 0x1c, 0xac, 0x06, 0x42, 0x64, - 0xff, 0x2e, 0x4e, 0x43, 0x6e, 0xc2, 0x68, 0xf8, 0xf6, 0x73, 0xc3, 0xb1, 0xdb, 0x2d, 0x3f, 0xcf, - 0x02, 0xa6, 0x25, 0xbe, 0x1b, 0xe0, 0xaa, 0x75, 0x44, 0x4a, 0x2c, 0x12, 0x05, 0xc9, 0x0c, 0x1c, - 0x0b, 0x61, 0x4c, 0x44, 0x7e, 0x7e, 0x17, 0xcc, 0xad, 0x27, 0xf1, 0x62, 0xe2, 0x8c, 0xe4, 0xd6, - 0x8b, 0x15, 0x23, 0x65, 0xe8, 0xf3, 0x83, 0x60, 0xf5, 0x6f, 0xa9, 0xa4, 0xc7, 0x45, 0x10, 0xac, - 0x3e, 0x39, 0xfc, 0x95, 0x5f, 0x9e, 0x4c, 0xc3, 0x88, 0x66, 0xb7, 0x3d, 0xba, 0x64, 0x8b, 0x4d, - 0x93, 0x08, 0xb6, 0x86, 0x6d, 0x72, 0x18, 0xa6, 0xea, 0xd9, 0x7e, 0x56, 0x67, 0x39, 0xbb, 0x70, - 0xb4, 0x14, 0x99, 0x87, 0xb1, 0xc4, 0x2b, 0x99, 0x9c, 0x6b, 0x59, 0xfa, 0xbc, 0x24, 0xb3, 0x64, - 0x51, 0xf2, 0xe9, 0x0c, 0x14, 0x96, 0x1c, 0xdd, 0xf4, 0x5c, 0xe1, 0x29, 0x74, 0xf2, 0xca, 0x9a, - 0xa3, 0xb7, 0x98, 0x7e, 0x5c, 0xc1, 0x38, 0x90, 0xb7, 0xf5, 0x46, 0x9b, 0xba, 0x13, 0x77, 0xd8, - 0xd7, 0xfd, 0xbf, 0x1b, 0xe3, 0x2f, 0x71, 0xaf, 0xe9, 0x2b, 0x35, 0xbb, 0x79, 0xb5, 0xee, 0xe8, - 0xf7, 0x4c, 0x0f, 0x67, 0x3c, 0xbd, 0x71, 0xd5, 0xa3, 0x0d, 0x3c, 0xf2, 0x5f, 0xd5, 0x5b, 0xe6, - 0x55, 0xf4, 0xee, 0xbb, 0x1a, 0x70, 0xe2, 0x35, 0x30, 0x15, 0xf0, 0xf0, 0x2f, 0x59, 0x05, 0x38, - 0x8e, 0xcc, 0xb3, 0x93, 0x32, 0x7e, 0x6a, 0xb1, 0xd5, 0x12, 0x6e, 0x47, 0xd2, 0x41, 0xd9, 0xc7, - 0x70, 0xc5, 0x0e, 0x04, 0xa6, 0xb7, 0x5a, 0x72, 0x36, 0xf7, 0x90, 0x8e, 0x69, 0xc1, 0x92, 0x68, - 0x91, 0x2f, 0xa6, 0xe1, 0x50, 0xe2, 0x7e, 0x63, 0x53, 0x84, 0x14, 0x2f, 0x46, 0x96, 0xe1, 0x98, - 0xe0, 0x1b, 0x44, 0xe4, 0x1f, 0x89, 0xce, 0x0a, 0x31, 0x34, 0x57, 0xda, 0xa0, 0x8d, 0x86, 0x00, - 0xcb, 0x75, 0xc4, 0x4a, 0x90, 0x89, 0x30, 0x4d, 0xe8, 0xbc, 0xde, 0xa4, 0xae, 0x72, 0x0c, 0x35, - 0xf6, 0xdc, 0xe6, 0xc6, 0xb8, 0xe2, 0x97, 0xc7, 0x78, 0x70, 0xa9, 0x49, 0xaf, 0xb1, 0x88, 0xcc, - 0x83, 0x6b, 0xfd, 0x68, 0x0a, 0x8f, 0xb8, 0xce, 0x47, 0x8b, 0x90, 0x49, 0x18, 0x0e, 0xac, 0x9e, - 0x6f, 0xdd, 0x2a, 0x97, 0xd0, 0xaf, 0x49, 0x84, 0x04, 0x8c, 0xc5, 0xcc, 0x97, 0x99, 0x44, 0xca, - 0x48, 0x9e, 0xe5, 0xdc, 0xd1, 0x29, 0xe6, 0x59, 0xde, 0x4a, 0xf1, 0x2c, 0x5f, 0x24, 0xaf, 0xc0, - 0x60, 0xf1, 0x4e, 0x45, 0x78, 0xcc, 0xbb, 0xca, 0xf1, 0x30, 0xcb, 0x0a, 0xe6, 0x3d, 0x17, 0xde, - 0xf5, 0x72, 0xd3, 0x65, 0x7a, 0x32, 0x05, 0x23, 0x11, 0xc3, 0x09, 0x57, 0x39, 0x81, 0x1c, 0xb0, - 0xe5, 0x3a, 0x62, 0xaa, 0x8e, 0x40, 0x45, 0x32, 0xf1, 0x47, 0x0a, 0x31, 0xad, 0x29, 0x99, 0x2e, - 0x66, 0xac, 0xd0, 0x28, 0x3a, 0xe7, 0xa3, 0x97, 0x54, 0x3f, 0xd7, 0x1a, 0x43, 0xa0, 0xaa, 0x0e, - 0xc7, 0x45, 0x52, 0xef, 0x47, 0x8b, 0x91, 0xb7, 0x80, 0x60, 0x8e, 0x0b, 0x6a, 0xf8, 0xf7, 0xe8, - 0xe5, 0x92, 0xab, 0x9c, 0xc2, 0x78, 0xb8, 0x24, 0xee, 0x0c, 0x5c, 0x2e, 0x4d, 0x5c, 0x14, 0xd3, - 0xc7, 0x05, 0x9d, 0x97, 0xaa, 0xfa, 0x8e, 0xc0, 0x55, 0x33, 0x92, 0x00, 0x34, 0x85, 0x2b, 0x59, - 0x83, 0xd3, 0x8b, 0x0e, 0xbd, 0x67, 0xda, 0x6d, 0xd7, 0x5f, 0x3e, 0xfc, 0x79, 0xeb, 0xf4, 0x96, - 0xf3, 0xd6, 0x23, 0xa2, 0xe2, 0x93, 0x2d, 0x87, 0xde, 0xab, 0xfa, 0x51, 0x50, 0x23, 0x41, 0xfc, - 0x3a, 0x71, 0xc7, 0x34, 0xa6, 0x6f, 0xb7, 0x1d, 0x2a, 0xe0, 0x26, 0x75, 0x15, 0x25, 0x9c, 0x6a, - 0x79, 0xe0, 0x06, 0x33, 0xc0, 0x45, 0xd2, 0x98, 0x46, 0x8b, 0x11, 0x0d, 0xc8, 0x8d, 0x49, 0xff, - 0x4d, 0xa5, 0x58, 0xe3, 0xc9, 0x1e, 0x95, 0x33, 0xc8, 0x4c, 0x65, 0x62, 0xa9, 0xd7, 0x82, 0x88, - 0xc8, 0x55, 0x5d, 0xe0, 0x65, 0xb1, 0x24, 0x4b, 0x93, 0x59, 0x18, 0x5d, 0x74, 0xf0, 0x84, 0x77, - 0x93, 0xae, 0x2f, 0xda, 0x0d, 0xb3, 0xb6, 0x8e, 0xce, 0x5a, 0x62, 0xaa, 0x6c, 0x71, 0x5c, 0xf5, - 0x2e, 0x5d, 0xaf, 0xb6, 0x10, 0x2b, 0x2f, 0x2b, 0xf1, 0x92, 0x72, 0x84, 0xd2, 0x87, 0xb6, 0x17, - 0xa1, 0x94, 0xc2, 0xa8, 0x78, 0x91, 0xb9, 0xef, 0x51, 0x8b, 0x2d, 0xf5, 0xae, 0x70, 0xcc, 0x52, - 0x62, 0x2f, 0x38, 0x01, 0x9e, 0x4f, 0x1d, 0x62, 0x94, 0xd1, 0x00, 0x2c, 0x37, 0x2c, 0x5e, 0x24, - 0x19, 0xc6, 0xf3, 0xfc, 0x2e, 0xc2, 0x78, 0xfe, 0x8f, 0x39, 0x79, 0xfe, 0x25, 0xe7, 0x20, 0x2f, - 0x65, 0xd9, 0xc0, 0x18, 0x85, 0x18, 0x91, 0x38, 0x2f, 0x42, 0xaf, 0x0e, 0x88, 0xbd, 0x4b, 0x10, - 0x3b, 0x02, 0x73, 0xa7, 0x85, 0x71, 0xeb, 0xb4, 0x90, 0x00, 0xf3, 0x56, 0xb5, 0x97, 0x1b, 0x66, - 0x0d, 0xe3, 0x54, 0xe7, 0x24, 0x67, 0x71, 0x84, 0xf2, 0x30, 0xd5, 0x12, 0x09, 0xb9, 0x06, 0x83, - 0xfe, 0xcd, 0x42, 0x18, 0xa3, 0x13, 0xc3, 0x17, 0x8b, 0xd9, 0x5a, 0x44, 0x47, 0x96, 0x88, 0xc8, - 0x8b, 0x00, 0xe1, 0x74, 0x20, 0x76, 0x5a, 0xb8, 0x54, 0xc8, 0xb3, 0x87, 0xbc, 0x54, 0x84, 0xd4, - 0x6c, 0xe2, 0x94, 0xd5, 0xd1, 0xcf, 0xd4, 0x87, 0x13, 0x67, 0x44, 0x87, 0x65, 0x05, 0x89, 0x16, - 0x21, 0x0b, 0x30, 0x96, 0xd0, 0x40, 0x11, 0xd1, 0x13, 0xb3, 0x35, 0xa7, 0xa8, 0xaf, 0xbc, 0x30, - 0x27, 0xca, 0x92, 0x47, 0x21, 0x77, 0x4b, 0x2b, 0x8b, 0xa8, 0x82, 0x3c, 0x20, 0x65, 0x24, 0x42, - 0x08, 0xc3, 0xaa, 0xdf, 0x97, 0x4d, 0xac, 0x4d, 0x4c, 0x7a, 0x82, 0x95, 0xd4, 0x83, 0x28, 0x3d, - 0xbf, 0x7e, 0x2e, 0x3d, 0x89, 0x88, 0x5c, 0x82, 0xfe, 0x45, 0x36, 0x33, 0xd4, 0xec, 0x86, 0xe8, - 0x4f, 0x8c, 0x0f, 0xd3, 0x12, 0x30, 0x2d, 0xc0, 0x92, 0x6b, 0x52, 0x82, 0x49, 0x29, 0x50, 0xaf, - 0x9f, 0x60, 0x32, 0x1e, 0xb1, 0x16, 0x53, 0x4d, 0x5e, 0x8b, 0xe5, 0xb2, 0x11, 0x65, 0x52, 0xd6, - 0xc5, 0x30, 0x77, 0x4d, 0xb0, 0x2b, 0xed, 0xdd, 0x6a, 0x57, 0xaa, 0xfe, 0x7e, 0x26, 0x39, 0xce, - 0xc8, 0xf5, 0x64, 0xcc, 0x4c, 0x5c, 0x84, 0x02, 0xa0, 0x5c, 0x6b, 0x10, 0x3d, 0x33, 0x12, 0xfd, - 0x32, 0xbb, 0xeb, 0xe8, 0x97, 0xb9, 0x1d, 0x46, 0xbf, 0x54, 0xff, 0x4d, 0xbe, 0xab, 0x05, 0xe1, - 0x81, 0x44, 0x49, 0x7a, 0x81, 0x9d, 0xac, 0x58, 0xed, 0x45, 0x37, 0x71, 0x3e, 0xe0, 0x06, 0x52, - 0x55, 0x9d, 0x0f, 0x2d, 0x57, 0x8b, 0x52, 0x92, 0x57, 0x61, 0xc8, 0xff, 0x00, 0x8c, 0xaa, 0x2a, - 0x45, 0x03, 0x0d, 0x56, 0xb5, 0x58, 0xfc, 0xd1, 0x48, 0x01, 0xf2, 0x2c, 0x0c, 0xe0, 0x9e, 0xa6, - 0xa5, 0xd7, 0xfc, 0x90, 0xbb, 0x3c, 0x46, 0xaf, 0x0f, 0x94, 0x23, 0x01, 0x05, 0x94, 0xe4, 0xe3, - 0x50, 0x10, 0x71, 0xe7, 0x79, 0xee, 0xe5, 0xab, 0xdb, 0x30, 0xb9, 0xbc, 0x22, 0xc7, 0x9c, 0xe7, - 0xa7, 0x14, 0x04, 0x44, 0x4e, 0x29, 0x3c, 0xdc, 0xfc, 0x12, 0x1c, 0x5f, 0x74, 0xa8, 0x81, 0xc6, - 0xbd, 0x53, 0xf7, 0x5b, 0x8e, 0xc8, 0x08, 0xc0, 0x47, 0x39, 0x2e, 0x52, 0x2d, 0x1f, 0xcd, 0x96, - 0x4f, 0x81, 0x97, 0xe3, 0x7e, 0xa6, 0x14, 0x67, 0x3b, 0x17, 0xde, 0x92, 0x9b, 0x74, 0x7d, 0x0d, - 0x33, 0x81, 0xf7, 0x87, 0x3b, 0x17, 0x21, 0xe8, 0xbb, 0x02, 0x25, 0xef, 0x5c, 0xa2, 0x85, 0xce, - 0xbe, 0x00, 0x83, 0xbb, 0x8d, 0xdb, 0xfe, 0x1b, 0xd9, 0x0e, 0xb6, 0xf8, 0x0f, 0x6e, 0xea, 0xac, - 0x20, 0x69, 0x6b, 0x6f, 0x87, 0xa4, 0xad, 0xdf, 0xce, 0x76, 0x70, 0x34, 0x78, 0xa0, 0x93, 0x2b, - 0x06, 0xc2, 0x88, 0x26, 0x57, 0x0c, 0xf3, 0x5a, 0x9a, 0x86, 0x26, 0x13, 0xc5, 0xd2, 0xb0, 0x16, - 0xb6, 0x4c, 0xc3, 0xfa, 0x4b, 0xb9, 0x6e, 0x8e, 0x18, 0x47, 0xb2, 0xdf, 0x89, 0xec, 0xaf, 0xc1, - 0x60, 0x20, 0xd9, 0x72, 0x09, 0x37, 0x3d, 0xc3, 0x41, 0x96, 0x08, 0x0e, 0xc6, 0x32, 0x12, 0x11, - 0xb9, 0xcc, 0xdb, 0x5a, 0x31, 0xdf, 0xe6, 0xf1, 0xca, 0x87, 0x45, 0x24, 0x6a, 0xdd, 0xd3, 0xab, - 0xae, 0xf9, 0x36, 0xd5, 0x02, 0x34, 0x86, 0xa2, 0x4b, 0xf3, 0x49, 0x39, 0xea, 0xa3, 0xed, 0xf7, - 0x51, 0x8a, 0x10, 0xb9, 0x1f, 0xce, 0x91, 0x10, 0x77, 0x20, 0xc4, 0xbf, 0xc9, 0xa6, 0x7a, 0x2d, - 0x1d, 0x09, 0x71, 0x27, 0xb3, 0xc5, 0x13, 0x30, 0xa0, 0xd9, 0x6b, 0xee, 0x24, 0x1e, 0x6c, 0xf8, - 0x5c, 0x81, 0x13, 0xb5, 0x63, 0xaf, 0xb9, 0x55, 0x3c, 0xb2, 0x68, 0x21, 0x81, 0xfa, 0x9d, 0x6c, - 0x17, 0xbf, 0xae, 0x23, 0xc1, 0xbf, 0x9b, 0x4b, 0xe4, 0x6f, 0x67, 0x23, 0x7e, 0x63, 0x0f, 0x74, - 0x96, 0xf2, 0x4a, 0x6d, 0x95, 0x36, 0xf5, 0x78, 0x96, 0x72, 0x17, 0xa1, 0x22, 0x57, 0x68, 0x48, - 0xa2, 0x7e, 0x35, 0x1b, 0x73, 0x9c, 0x3b, 0x92, 0xdd, 0xb6, 0x65, 0x17, 0x68, 0x9d, 0xf0, 0x05, - 0x3c, 0x92, 0xdc, 0x76, 0x25, 0xf7, 0x99, 0x6c, 0xcc, 0x6d, 0xf2, 0x81, 0x95, 0x1d, 0x1b, 0x80, - 0x49, 0x77, 0xce, 0x07, 0x56, 0x93, 0x9e, 0x80, 0x01, 0x21, 0x87, 0x60, 0xa9, 0xe0, 0xf3, 0x3e, - 0x07, 0xe2, 0x2d, 0x6b, 0x40, 0xa0, 0xfe, 0x40, 0x16, 0xa2, 0xee, 0xac, 0x0f, 0xa8, 0x0e, 0xfd, - 0x76, 0x36, 0xea, 0xc8, 0xfb, 0xe0, 0xea, 0xcf, 0x15, 0x80, 0x4a, 0x7b, 0xb9, 0x26, 0xe2, 0x40, - 0xf6, 0x4a, 0xd7, 0xf4, 0x01, 0x54, 0x93, 0x28, 0xd4, 0x7f, 0x9b, 0x4d, 0xf5, 0x2e, 0x7e, 0x70, - 0x05, 0xf8, 0x0c, 0xde, 0x8a, 0xd7, 0xac, 0x70, 0x22, 0xc7, 0x4b, 0x48, 0x36, 0xfe, 0x12, 0x89, - 0xc2, 0x7c, 0x42, 0xf2, 0xc1, 0x94, 0xed, 0x1a, 0x86, 0x31, 0x0f, 0xb7, 0x6b, 0xf2, 0x33, 0x84, - 0xb4, 0x71, 0xfb, 0x3f, 0xb3, 0x5b, 0x39, 0x63, 0x3f, 0xc8, 0xab, 0x6a, 0xdf, 0xa2, 0xbe, 0x8e, - 0x41, 0xc3, 0x58, 0x4f, 0x0c, 0xf1, 0x34, 0x56, 0x2d, 0x0e, 0x92, 0xdf, 0xde, 0x04, 0x95, 0xfa, - 0xd7, 0xbd, 0xe9, 0x9e, 0xc0, 0x0f, 0xae, 0x08, 0xcf, 0x41, 0x7e, 0x51, 0xf7, 0x56, 0x85, 0x26, - 0xe3, 0x93, 0x5e, 0x4b, 0xf7, 0x56, 0x35, 0x84, 0x92, 0xcb, 0xd0, 0xaf, 0xe9, 0x6b, 0xfc, 0xce, - 0xb3, 0x10, 0xa6, 0x18, 0x73, 0xf4, 0xb5, 0x2a, 0xbf, 0xf7, 0x0c, 0xd0, 0x44, 0x0d, 0x52, 0xdc, - 0xf1, 0x9b, 0x6f, 0xcc, 0xaf, 0xc4, 0x53, 0xdc, 0x05, 0x89, 0xed, 0xce, 0x41, 0x7e, 0xc2, 0x36, - 0xd6, 0xf1, 0xf9, 0x6a, 0x88, 0x57, 0xb6, 0x6c, 0x1b, 0xeb, 0x1a, 0x42, 0xc9, 0x67, 0x33, 0xd0, - 0x37, 0x43, 0x75, 0x83, 0x8d, 0x90, 0x81, 0x6e, 0x56, 0x27, 0x1f, 0xde, 0x1f, 0xab, 0x93, 0xb1, - 0x55, 0x5e, 0x99, 0xac, 0x28, 0xa2, 0x7e, 0x72, 0x03, 0xfa, 0x27, 0x75, 0x8f, 0xd6, 0x6d, 0x67, - 0x1d, 0xed, 0x68, 0x46, 0x42, 0x6b, 0xd2, 0x88, 0xfe, 0xf8, 0x44, 0xfc, 0x65, 0xac, 0x26, 0x7e, - 0x69, 0x41, 0x61, 0x26, 0x16, 0x91, 0x74, 0x7b, 0x30, 0x14, 0x0b, 0xcf, 0xae, 0x1d, 0xe4, 0xd6, - 0x0e, 0xae, 0x95, 0x87, 0xd2, 0xaf, 0x95, 0x71, 0xf7, 0x88, 0xb6, 0x76, 0x98, 0x58, 0x6e, 0x18, - 0x17, 0x7d, 0xbe, 0x7b, 0x44, 0x28, 0xe6, 0x95, 0xd3, 0x24, 0x12, 0xf5, 0x9b, 0xbd, 0x90, 0xea, - 0x37, 0x78, 0xa4, 0xe4, 0x47, 0x4a, 0x1e, 0x2a, 0x79, 0x29, 0xa1, 0xe4, 0x67, 0x93, 0x9e, 0xa8, - 0xef, 0x51, 0x0d, 0xff, 0x72, 0x3e, 0xe1, 0xc7, 0xfe, 0x60, 0x9f, 0x2e, 0x43, 0xe9, 0xf5, 0x6e, - 0x29, 0xbd, 0x60, 0x40, 0x14, 0xb6, 0x1c, 0x10, 0x7d, 0xdb, 0x1d, 0x10, 0xfd, 0x1d, 0x07, 0x44, - 0xa8, 0x20, 0x03, 0x1d, 0x15, 0xa4, 0x2c, 0x06, 0x0d, 0x74, 0x4f, 0x5a, 0x7a, 0x6e, 0x73, 0x63, - 0x7c, 0x84, 0x8d, 0xa6, 0xd4, 0x74, 0xa5, 0xc8, 0x42, 0xfd, 0x46, 0xbe, 0x4b, 0xf0, 0x89, 0x03, - 0xd1, 0x91, 0x67, 0x20, 0x57, 0x6c, 0xb5, 0x84, 0x7e, 0x1c, 0x97, 0xe2, 0x5e, 0x74, 0x28, 0xc5, - 0xa8, 0xc9, 0x8b, 0x90, 0x2b, 0xde, 0xa9, 0xc4, 0x43, 0xe8, 0x17, 0xef, 0x54, 0xc4, 0x97, 0x74, - 0x2c, 0x7b, 0xa7, 0x42, 0x5e, 0x0e, 0x63, 0xd9, 0xad, 0xb6, 0xad, 0xbb, 0xe2, 0xa0, 0x28, 0xcc, - 0x6d, 0x7d, 0x73, 0x9c, 0x1a, 0x43, 0xb1, 0xe3, 0x62, 0x8c, 0x36, 0xa6, 0x4d, 0x85, 0xed, 0x6b, - 0x53, 0xdf, 0x96, 0xda, 0xd4, 0xbf, 0x5d, 0x6d, 0x1a, 0xd8, 0x86, 0x36, 0xc1, 0x96, 0xda, 0x34, - 0xb8, 0x77, 0x6d, 0x6a, 0xc1, 0xd9, 0x64, 0xc0, 0xa0, 0x40, 0x23, 0x34, 0x20, 0x49, 0xac, 0x30, - 0x2c, 0xc1, 0xa7, 0xff, 0x36, 0xc7, 0x56, 0x79, 0x72, 0xfc, 0x78, 0x6a, 0x79, 0x2d, 0xa5, 0xb4, - 0xfa, 0x1b, 0xd9, 0xce, 0x71, 0x8e, 0x0e, 0xe7, 0x14, 0xf7, 0x3d, 0xa9, 0x52, 0xca, 0x47, 0xfd, - 0x4e, 0x3b, 0x4b, 0x39, 0xc6, 0x36, 0x4d, 0x66, 0x5f, 0xcf, 0x74, 0x0a, 0xbe, 0xb4, 0x27, 0x89, - 0x3d, 0x96, 0xb4, 0x68, 0x43, 0x3b, 0x7d, 0x37, 0x6a, 0xca, 0x16, 0xcf, 0xb5, 0x9e, 0xdb, 0x65, - 0xae, 0xf5, 0xdf, 0xcf, 0xc0, 0xf1, 0x9b, 0xed, 0x65, 0x2a, 0x2c, 0xd8, 0x82, 0x66, 0xbc, 0x05, - 0xc0, 0xc0, 0xc2, 0x88, 0x25, 0x83, 0x46, 0x2c, 0x1f, 0x90, 0x03, 0x27, 0xc5, 0x0a, 0x5c, 0x09, - 0xa9, 0xb9, 0x01, 0xcb, 0x79, 0xdf, 0x98, 0xf3, 0x6e, 0x7b, 0x99, 0x56, 0x13, 0x96, 0x2c, 0x12, - 0xf7, 0xb3, 0xaf, 0x70, 0x33, 0xf9, 0xdd, 0x1a, 0x8d, 0xfc, 0x5a, 0xb6, 0x63, 0xac, 0xaa, 0x43, - 0x9b, 0xd4, 0xed, 0xa3, 0xa9, 0xbd, 0x12, 0x4f, 0xee, 0x96, 0x42, 0x12, 0xe3, 0x98, 0xc6, 0x25, - 0x5d, 0x60, 0x87, 0x3c, 0xd5, 0xe0, 0xbb, 0x2a, 0xb0, 0x3f, 0xcd, 0x74, 0x8c, 0x29, 0x76, 0x58, - 0x05, 0xa6, 0xfe, 0x93, 0x9c, 0x1f, 0xca, 0x6c, 0x4f, 0x9f, 0xf0, 0x04, 0x0c, 0x08, 0x8f, 0xce, - 0xa8, 0x01, 0xae, 0xb8, 0xca, 0xc3, 0xab, 0xe1, 0x80, 0x80, 0x2d, 0xf3, 0x92, 0x75, 0xb0, 0x64, - 0x80, 0x2b, 0x59, 0x06, 0x6b, 0x12, 0x09, 0x5b, 0xc8, 0xa7, 0xee, 0x9b, 0x1e, 0xee, 0x0a, 0x58, - 0x5f, 0xe6, 0xf8, 0x42, 0x4e, 0xef, 0x9b, 0x1e, 0xdf, 0x13, 0x04, 0x68, 0xb6, 0x48, 0x57, 0xc2, - 0x44, 0xca, 0x62, 0x91, 0x76, 0x45, 0x3e, 0x69, 0xe1, 0x36, 0xf6, 0x04, 0x0c, 0x08, 0xab, 0x56, - 0x61, 0x66, 0x22, 0x5a, 0x2b, 0xec, 0x60, 0xb1, 0xb5, 0x01, 0x01, 0xe3, 0xa8, 0xd1, 0x7a, 0x68, - 0x58, 0x87, 0x1c, 0x1d, 0x84, 0x68, 0x02, 0x43, 0xae, 0xc1, 0x48, 0xc5, 0xd3, 0x2d, 0x43, 0x77, - 0x8c, 0x85, 0xb6, 0xd7, 0x6a, 0x7b, 0xf2, 0xa6, 0xd4, 0xf5, 0x0c, 0xbb, 0xed, 0x69, 0x31, 0x0a, - 0xf2, 0x14, 0x0c, 0xfb, 0x90, 0x29, 0xc7, 0xb1, 0x1d, 0x79, 0xe7, 0xe1, 0x7a, 0x06, 0x75, 0x1c, - 0x2d, 0x4a, 0x40, 0x3e, 0x08, 0xc3, 0x65, 0xeb, 0x9e, 0xcd, 0x33, 0x74, 0xdf, 0xd2, 0x66, 0xc5, - 0x3e, 0x04, 0x5d, 0xb1, 0xcc, 0x00, 0x51, 0x6d, 0x3b, 0x0d, 0x2d, 0x4a, 0xa8, 0x6e, 0x66, 0x93, - 0x11, 0xdf, 0x1e, 0xdc, 0x43, 0xcb, 0xe5, 0xa8, 0x31, 0x1d, 0x5a, 0x90, 0xe2, 0x86, 0x50, 0xb6, - 0xe5, 0xe5, 0xfb, 0xc2, 0x6b, 0xd0, 0x7f, 0x93, 0xae, 0x73, 0xbb, 0xcf, 0x42, 0x68, 0x2a, 0x7c, - 0x57, 0xc0, 0xe4, 0x1b, 0x57, 0x9f, 0x4e, 0xfd, 0x5a, 0x36, 0x19, 0xcb, 0xee, 0xc1, 0x15, 0xf6, - 0x53, 0xd0, 0x87, 0xa2, 0x2c, 0xfb, 0x57, 0xfe, 0x28, 0x40, 0x14, 0x77, 0xd4, 0x02, 0xd9, 0x27, - 0x53, 0x7f, 0xae, 0x10, 0x0f, 0x70, 0xf8, 0xe0, 0x4a, 0xef, 0x25, 0x18, 0x9c, 0xb4, 0x2d, 0xd7, - 0x74, 0x3d, 0x6a, 0xd5, 0x7c, 0x85, 0x3d, 0xc3, 0x36, 0x54, 0xb5, 0x10, 0x2c, 0xfb, 0x20, 0x49, - 0xd4, 0xbb, 0x51, 0x5e, 0xf2, 0x1c, 0x0c, 0xa0, 0xc8, 0xd1, 0x4e, 0x9a, 0x4f, 0x78, 0xf8, 0x5a, - 0xb0, 0xcc, 0x80, 0x71, 0x23, 0xe9, 0x90, 0x94, 0xdc, 0x82, 0xfe, 0xc9, 0x55, 0xb3, 0x61, 0x38, - 0xd4, 0x42, 0x7b, 0x61, 0xc9, 0x8f, 0x3c, 0xda, 0x97, 0x57, 0xf0, 0x5f, 0xa4, 0xe5, 0xcd, 0xa9, - 0x89, 0x62, 0x11, 0x2f, 0x2c, 0x01, 0x3b, 0xfb, 0x63, 0x59, 0x80, 0xb0, 0x00, 0x79, 0x18, 0xb2, - 0x41, 0x4a, 0x51, 0x34, 0x53, 0x89, 0x68, 0x50, 0x16, 0x97, 0x0a, 0x31, 0xb6, 0xb3, 0x5b, 0x8e, - 0xed, 0x5b, 0x50, 0xe0, 0x37, 0x5e, 0x68, 0x49, 0x2e, 0xc5, 0x5c, 0xeb, 0xd8, 0xe0, 0x2b, 0x48, - 0xcf, 0x0f, 0xb3, 0xb8, 0xf3, 0x8c, 0x58, 0x65, 0x73, 0x66, 0x67, 0x6b, 0xd0, 0x8b, 0x7f, 0x91, - 0x8b, 0x90, 0x5f, 0xf2, 0xd3, 0x11, 0x0e, 0xf3, 0x59, 0x3a, 0x26, 0x3f, 0xc4, 0xb3, 0x6e, 0x9a, - 0xb4, 0x2d, 0x8f, 0x55, 0x8d, 0xad, 0x1e, 0x12, 0x72, 0x11, 0xb0, 0x88, 0x5c, 0x04, 0x4c, 0xfd, - 0x3f, 0xb2, 0x29, 0xa1, 0x37, 0x1f, 0xdc, 0x61, 0xf2, 0x02, 0x00, 0xba, 0x74, 0x33, 0x79, 0xfa, - 0x2e, 0x1a, 0x38, 0x4a, 0x90, 0x11, 0xaa, 0x6d, 0xe4, 0xd8, 0x11, 0x12, 0xab, 0x7f, 0x98, 0x49, - 0xc4, 0x6b, 0xdc, 0x93, 0x1c, 0xe5, 0x5d, 0x59, 0x76, 0x97, 0xdb, 0x58, 0xbf, 0x2f, 0x72, 0x3b, - 0xeb, 0x8b, 0xe8, 0xb7, 0xec, 0xc3, 0xce, 0xf4, 0x20, 0xbf, 0xe5, 0x9b, 0xd9, 0xb4, 0xe8, 0x95, - 0x87, 0x53, 0xc5, 0xaf, 0x07, 0x9b, 0xd2, 0x7c, 0x2c, 0x5e, 0x30, 0x42, 0xe3, 0x29, 0x53, 0xc5, - 0x36, 0xf5, 0x13, 0x70, 0x2c, 0x16, 0xd3, 0x51, 0xa4, 0xa3, 0xbc, 0xd8, 0x3d, 0x38, 0x64, 0xe7, - 0x60, 0x00, 0x11, 0x32, 0xf5, 0xdf, 0x65, 0xba, 0x47, 0xf4, 0x3c, 0x70, 0xd5, 0x49, 0x11, 0x40, - 0xee, 0x1f, 0x46, 0x00, 0xfb, 0x70, 0x0c, 0x3e, 0xdc, 0x02, 0x78, 0x8f, 0x4c, 0x1e, 0xef, 0xb6, - 0x00, 0x7e, 0x2e, 0xb3, 0x65, 0x40, 0xd6, 0x83, 0x96, 0x81, 0xfa, 0xff, 0x67, 0x52, 0x03, 0xa7, - 0xee, 0xa9, 0x5d, 0x2f, 0x43, 0x81, 0x9b, 0xd5, 0x88, 0x56, 0x49, 0xa9, 0x66, 0x18, 0xb4, 0x53, - 0x2e, 0x67, 0x8e, 0x25, 0xb3, 0xd0, 0xc7, 0xdb, 0x60, 0xc4, 0x93, 0xe7, 0xa7, 0xb4, 0xd3, 0xe8, - 0x34, 0x39, 0x0a, 0xb4, 0xfa, 0x07, 0x99, 0x44, 0x1c, 0xd7, 0x03, 0xfc, 0xb6, 0x70, 0xaa, 0xce, - 0x6d, 0x7f, 0xaa, 0x56, 0xff, 0x2a, 0x9b, 0x1e, 0x46, 0xf6, 0x00, 0x3f, 0x64, 0x3f, 0xae, 0xd3, - 0x76, 0xb7, 0x6e, 0x2d, 0xc1, 0x48, 0x54, 0x16, 0x62, 0xd9, 0xba, 0x90, 0x1e, 0x4c, 0xb7, 0x43, - 0x2b, 0x62, 0x3c, 0xd4, 0x77, 0x32, 0xc9, 0x08, 0xb8, 0x07, 0x3e, 0x3f, 0xed, 0x4e, 0x5b, 0xa2, - 0x9f, 0xf2, 0x1e, 0x59, 0x6b, 0xf6, 0xe3, 0x53, 0xde, 0x23, 0xab, 0xc6, 0xee, 0x3e, 0xe5, 0x57, - 0xb2, 0x9d, 0x02, 0x08, 0x1f, 0xf8, 0x07, 0x7d, 0x44, 0x16, 0x32, 0x6f, 0x99, 0xf8, 0xb4, 0x87, - 0x3b, 0x45, 0xec, 0xed, 0xc0, 0x33, 0xc1, 0x67, 0x77, 0x63, 0x3c, 0x55, 0x58, 0xef, 0x11, 0x45, - 0x3e, 0x1c, 0xc2, 0x7a, 0x8f, 0x0c, 0x95, 0xf7, 0x9e, 0xb0, 0x7e, 0x37, 0xbb, 0xdd, 0xa8, 0xd5, - 0x47, 0xc2, 0x4b, 0x08, 0xef, 0x8b, 0xd9, 0x64, 0x34, 0xf5, 0x03, 0x17, 0xd3, 0x34, 0x14, 0x44, - 0x5c, 0xf7, 0x8e, 0xc2, 0xe1, 0xf8, 0x4e, 0x3b, 0x1a, 0xf1, 0x1d, 0xd7, 0x41, 0x3c, 0xe4, 0x6c, - 0x4f, 0x24, 0x9c, 0x56, 0xfd, 0x4e, 0x26, 0x16, 0x7a, 0xfc, 0x40, 0xae, 0x10, 0x76, 0xb5, 0x24, - 0x91, 0x57, 0xfc, 0xcb, 0xcc, 0x7c, 0x2c, 0xf4, 0x6b, 0xf0, 0x3d, 0x25, 0xea, 0xe9, 0x66, 0x23, - 0x5e, 0x5e, 0xc4, 0x04, 0xf8, 0x5a, 0x16, 0xc6, 0x12, 0xa4, 0xe4, 0x62, 0x24, 0x94, 0x0e, 0x5e, - 0x4b, 0xc6, 0x8c, 0xc7, 0x79, 0x50, 0x9d, 0x1d, 0xdc, 0xa4, 0x5e, 0x84, 0x7c, 0x49, 0x5f, 0xe7, - 0xdf, 0xd6, 0xcb, 0x59, 0x1a, 0xfa, 0xba, 0x7c, 0xe3, 0x86, 0x78, 0xb2, 0x0c, 0x27, 0xf9, 0x7b, - 0x88, 0x69, 0x5b, 0x4b, 0x66, 0x93, 0x96, 0xad, 0x39, 0xb3, 0xd1, 0x30, 0x5d, 0xf1, 0xa8, 0xf7, - 0xc4, 0xe6, 0xc6, 0xf8, 0x25, 0xcf, 0xf6, 0xf4, 0x46, 0x95, 0xfa, 0x64, 0x55, 0xcf, 0x6c, 0xd2, - 0xaa, 0x69, 0x55, 0x9b, 0x48, 0x29, 0xb1, 0x4c, 0x67, 0x45, 0xca, 0x3c, 0xca, 0x6f, 0xa5, 0xa6, - 0x5b, 0x16, 0x35, 0xca, 0xd6, 0xc4, 0xba, 0x47, 0xf9, 0x63, 0x60, 0x8e, 0x5f, 0x09, 0x72, 0xdf, - 0x70, 0x8e, 0x66, 0x8c, 0x97, 0x19, 0x81, 0x96, 0x52, 0x48, 0xfd, 0xbd, 0x7c, 0x4a, 0xd4, 0xf9, - 0x43, 0xa4, 0x3e, 0x7e, 0x4f, 0xe7, 0xb7, 0xe8, 0xe9, 0xab, 0xd0, 0x77, 0x9b, 0x3a, 0x78, 0xbf, - 0xc5, 0x1f, 0x18, 0xd0, 0x98, 0xfd, 0x1e, 0x07, 0xc9, 0x2f, 0x34, 0x82, 0x8a, 0x34, 0xe0, 0xec, - 0x12, 0xeb, 0xa6, 0xf4, 0xce, 0x2c, 0xec, 0xa2, 0x33, 0xbb, 0xf0, 0x23, 0x6f, 0xc2, 0x69, 0xc4, - 0xa6, 0x74, 0x6b, 0x1f, 0x56, 0x85, 0x31, 0xaa, 0x78, 0x55, 0xe9, 0x9d, 0xdb, 0xa9, 0x3c, 0xf9, - 0x08, 0x0c, 0x05, 0x03, 0xc4, 0xa4, 0xae, 0x78, 0xb9, 0xe8, 0x32, 0xce, 0x78, 0x00, 0x38, 0x06, - 0x46, 0x13, 0xb2, 0x68, 0x10, 0xb1, 0x08, 0x2f, 0xf5, 0xff, 0xcb, 0x74, 0x8b, 0x7e, 0x7f, 0xe0, - 0xb3, 0xf2, 0x2b, 0xd0, 0x67, 0xf0, 0x8f, 0x12, 0x3a, 0xd5, 0x3d, 0x3e, 0x3e, 0x27, 0xd5, 0xfc, - 0x32, 0xea, 0x5f, 0x66, 0xba, 0x06, 0xdd, 0x3f, 0xec, 0x9f, 0xf7, 0xc5, 0x5c, 0x87, 0xcf, 0x13, - 0x93, 0xe8, 0x65, 0x18, 0x35, 0xc3, 0xa8, 0xc0, 0xd5, 0x30, 0xfc, 0x94, 0x76, 0x4c, 0x82, 0xe3, - 0xe8, 0xba, 0x0e, 0xa7, 0x7c, 0xc3, 0x47, 0xc7, 0xb7, 0x10, 0x73, 0xab, 0x6d, 0xc7, 0xe4, 0xe3, - 0x52, 0x3b, 0xe1, 0xc6, 0xcc, 0xc7, 0xdc, 0x5b, 0x8e, 0xc9, 0x2a, 0xd0, 0xbd, 0x55, 0x6a, 0xe9, - 0xd5, 0x35, 0xdb, 0xb9, 0x8b, 0x51, 0x46, 0xf9, 0xe0, 0xd4, 0x8e, 0x71, 0xf8, 0x1d, 0x1f, 0x4c, - 0x1e, 0x85, 0xe1, 0x7a, 0xa3, 0x4d, 0x83, 0xb8, 0x8e, 0xfc, 0xad, 0x4f, 0x1b, 0x62, 0xc0, 0xe0, - 0x85, 0xe4, 0x3c, 0x00, 0x12, 0x79, 0x98, 0x12, 0x01, 0x1f, 0xf6, 0xb4, 0x01, 0x06, 0x59, 0x12, - 0xdd, 0x75, 0x96, 0x6b, 0x35, 0x17, 0x52, 0xb5, 0x61, 0x5b, 0xf5, 0xaa, 0x47, 0x9d, 0x26, 0x36, - 0x14, 0x8d, 0x19, 0xb4, 0x53, 0x48, 0x81, 0x4f, 0x27, 0xee, 0xac, 0x6d, 0xd5, 0x97, 0xa8, 0xd3, - 0x64, 0x4d, 0x7d, 0x02, 0x88, 0x68, 0xaa, 0x83, 0x97, 0x1e, 0xfc, 0xe3, 0xd0, 0x9a, 0x41, 0x13, - 0x1f, 0xc1, 0x6f, 0x43, 0xf0, 0xc3, 0xc6, 0x61, 0x90, 0x07, 0xb7, 0xe3, 0x42, 0x43, 0x13, 0x06, - 0x0d, 0x38, 0x08, 0xe5, 0x75, 0x0a, 0x84, 0x75, 0x05, 0xb7, 0xea, 0xd6, 0xc4, 0x2f, 0xf5, 0x73, - 0xb9, 0xb4, 0x3c, 0x01, 0x7b, 0x52, 0xb4, 0x70, 0x5a, 0xcd, 0xee, 0x68, 0x5a, 0x3d, 0x66, 0xb5, - 0x9b, 0x55, 0xbd, 0xd5, 0xaa, 0xae, 0x98, 0x0d, 0x74, 0xab, 0xc2, 0x85, 0x4f, 0x1b, 0xb6, 0xda, - 0xcd, 0x62, 0xab, 0x35, 0xcd, 0x81, 0xe4, 0x71, 0x18, 0x63, 0x74, 0xd8, 0x49, 0x01, 0x65, 0x1e, - 0x29, 0x19, 0x03, 0x8c, 0x0e, 0xeb, 0xd3, 0x9e, 0x81, 0x7e, 0xc1, 0x93, 0xaf, 0x55, 0xbd, 0x5a, - 0x1f, 0x67, 0xe6, 0xb2, 0x9e, 0x0b, 0xd8, 0xf0, 0xc9, 0xb5, 0x57, 0x1b, 0xf0, 0xcb, 0x63, 0x0c, - 0x64, 0xab, 0xdd, 0xe4, 0x11, 0xb1, 0xfa, 0x10, 0x19, 0xfc, 0x26, 0x17, 0x61, 0x84, 0x71, 0x09, - 0x04, 0xc6, 0xc3, 0xc6, 0xf6, 0x6a, 0x31, 0x28, 0xb9, 0x06, 0x27, 0x22, 0x10, 0xbe, 0x07, 0xe5, - 0x6e, 0x02, 0xbd, 0x5a, 0x2a, 0x4e, 0xfd, 0x6a, 0x2e, 0x9a, 0xbd, 0xe0, 0x00, 0x3a, 0xe2, 0x34, - 0xf4, 0xd9, 0x4e, 0xbd, 0xda, 0x76, 0x1a, 0x62, 0xec, 0x15, 0x6c, 0xa7, 0x7e, 0xcb, 0x69, 0x90, - 0x93, 0x50, 0x60, 0xbd, 0x63, 0x1a, 0x62, 0x88, 0xf5, 0xea, 0xad, 0x56, 0xd9, 0x20, 0x45, 0xde, - 0x21, 0x18, 0x72, 0xb4, 0x5a, 0xc3, 0xa3, 0x3d, 0x37, 0x4a, 0xe8, 0xe5, 0x2b, 0x5e, 0x02, 0x89, - 0xfd, 0x84, 0x81, 0x48, 0xf9, 0x45, 0x40, 0x8c, 0x85, 0x81, 0xc7, 0x12, 0x83, 0xf7, 0x49, 0x9c, - 0x85, 0x40, 0x86, 0x2c, 0xf8, 0x21, 0xc6, 0x20, 0x25, 0x20, 0x21, 0x55, 0xd3, 0x36, 0xcc, 0x15, - 0x93, 0x72, 0xaf, 0x8e, 0x5e, 0xfe, 0xf0, 0x9b, 0xc4, 0x6a, 0xa3, 0x3e, 0x93, 0x39, 0x01, 0x21, - 0x2f, 0x71, 0x25, 0xe4, 0x74, 0xb8, 0xf6, 0xf1, 0xbe, 0xe5, 0xfb, 0xb4, 0x18, 0x0a, 0x35, 0x13, - 0xcb, 0xe3, 0x42, 0xa8, 0xbe, 0x93, 0x4b, 0xa6, 0xb0, 0x38, 0x90, 0x7d, 0xcd, 0x0c, 0x80, 0xc8, - 0x50, 0x13, 0x3e, 0xae, 0x05, 0x16, 0xe7, 0x21, 0xa6, 0x03, 0x0f, 0xa9, 0x2c, 0xb9, 0x0c, 0xfd, - 0xfc, 0x8b, 0xca, 0x25, 0xb1, 0xdf, 0x41, 0x13, 0x31, 0xb7, 0x65, 0xae, 0xac, 0xa0, 0x3d, 0x59, - 0x80, 0x26, 0x17, 0xa1, 0xaf, 0x34, 0x5f, 0xa9, 0x14, 0xe7, 0xfd, 0x97, 0x62, 0xf4, 0x2f, 0x31, - 0x2c, 0xb7, 0xea, 0xea, 0x96, 0xab, 0xf9, 0x48, 0xf2, 0x28, 0x14, 0xca, 0x8b, 0x48, 0xc6, 0xbd, - 0x26, 0x07, 0x37, 0x37, 0xc6, 0xfb, 0xcc, 0x16, 0xa7, 0x12, 0x28, 0xac, 0xf7, 0x76, 0xb9, 0x24, - 0x99, 0x4b, 0xf0, 0x7a, 0xef, 0x99, 0x06, 0x3e, 0x3b, 0x6b, 0x01, 0x9a, 0x3c, 0x0b, 0x43, 0x15, - 0xea, 0x98, 0x7a, 0x63, 0xbe, 0x8d, 0x47, 0x45, 0x29, 0x94, 0xa2, 0x8b, 0xf0, 0xaa, 0x85, 0x08, - 0x2d, 0x42, 0x46, 0xce, 0x41, 0x7e, 0xc6, 0xb4, 0x7c, 0x17, 0x06, 0xb4, 0x71, 0x5f, 0x35, 0x2d, - 0x4f, 0x43, 0xa8, 0xfa, 0x2f, 0xb2, 0xe9, 0x79, 0x40, 0x0e, 0x60, 0x38, 0xee, 0xf2, 0xa5, 0x37, - 0xa6, 0x04, 0xf9, 0x3d, 0x28, 0xc1, 0x0a, 0x1c, 0x2b, 0x1a, 0x4d, 0xd3, 0x2a, 0xe2, 0x4f, 0x77, - 0x6e, 0xba, 0x88, 0xc3, 0x5b, 0x72, 0xa1, 0x8b, 0xa1, 0xc5, 0xf7, 0xf0, 0xa0, 0xbc, 0x0c, 0x55, - 0xd5, 0x39, 0xae, 0xda, 0x5c, 0xd1, 0xab, 0x35, 0x9e, 0x42, 0x43, 0x8b, 0x33, 0x55, 0x7f, 0x34, - 0xbb, 0x45, 0xea, 0x92, 0x07, 0x51, 0xfa, 0xea, 0x97, 0xb2, 0xdd, 0xb3, 0xc7, 0x3c, 0x90, 0x42, - 0xf9, 0x9b, 0x6c, 0x4a, 0x2e, 0x97, 0x3d, 0x49, 0xe2, 0x32, 0xf4, 0x73, 0x36, 0x81, 0xa9, 0x2d, - 0xce, 0x38, 0x5c, 0x59, 0x71, 0xa6, 0xf3, 0xd1, 0x64, 0x1e, 0x4e, 0x14, 0x57, 0x56, 0x68, 0xcd, - 0x0b, 0xc3, 0x33, 0xcf, 0x87, 0x81, 0x52, 0x79, 0x38, 0x5a, 0x81, 0x0f, 0xc3, 0x3b, 0x63, 0x40, - 0x90, 0xd4, 0x72, 0x64, 0x09, 0x4e, 0xc5, 0xe1, 0x15, 0xbe, 0x4d, 0xcf, 0x4b, 0x11, 0x6a, 0x13, - 0x1c, 0xf9, 0x7f, 0x5a, 0x87, 0xb2, 0x69, 0xad, 0xc4, 0xe9, 0xb4, 0xb7, 0x5b, 0x2b, 0x71, 0x6e, - 0x4d, 0x2d, 0xa7, 0x7e, 0x2d, 0x27, 0xa7, 0xbc, 0x79, 0x70, 0x8d, 0xa2, 0xae, 0x47, 0x4c, 0xa1, - 0xb7, 0x3b, 0x64, 0x9e, 0x15, 0x51, 0x3e, 0x8c, 0xb6, 0xe3, 0x5b, 0x0d, 0x06, 0x51, 0x06, 0x10, - 0x28, 0xdb, 0xff, 0x05, 0x94, 0xa4, 0x0c, 0xf9, 0xa2, 0x53, 0xe7, 0x5b, 0xd0, 0xad, 0x1c, 0x9f, - 0x74, 0xa7, 0xee, 0xa6, 0x3b, 0x3e, 0x31, 0x16, 0xea, 0x0f, 0x67, 0xbb, 0x64, 0xa9, 0x79, 0x20, - 0x27, 0x91, 0x9f, 0xca, 0x76, 0xca, 0x37, 0x73, 0x58, 0xcd, 0xbb, 0xde, 0x65, 0xe1, 0x1c, 0x6e, - 0xdb, 0xb7, 0xfd, 0x13, 0xce, 0xe3, 0x73, 0x3c, 0x3c, 0xf6, 0x4d, 0xd3, 0x32, 0xc8, 0x19, 0x38, - 0x79, 0xab, 0x32, 0xa5, 0x55, 0x6f, 0x96, 0xe7, 0x4b, 0xd5, 0x5b, 0xf3, 0x95, 0xc5, 0xa9, 0xc9, - 0xf2, 0x74, 0x79, 0xaa, 0x34, 0xda, 0x43, 0x8e, 0xc3, 0xb1, 0x10, 0x35, 0x73, 0x6b, 0xae, 0x38, - 0x3f, 0x9a, 0x21, 0x63, 0x30, 0x1c, 0x02, 0x27, 0x16, 0x96, 0x46, 0xb3, 0x8f, 0xbf, 0x1f, 0x06, - 0xf1, 0xfc, 0xcf, 0xf7, 0x42, 0x64, 0x08, 0xfa, 0x17, 0x26, 0x2a, 0x53, 0xda, 0x6d, 0x64, 0x02, - 0x50, 0x28, 0x4d, 0xcd, 0x33, 0x86, 0x99, 0xc7, 0xff, 0x75, 0x06, 0xa0, 0x32, 0xbd, 0xb4, 0x28, - 0x08, 0x07, 0xa1, 0xaf, 0x3c, 0x7f, 0xbb, 0x38, 0x5b, 0x66, 0x74, 0xfd, 0x90, 0x5f, 0x58, 0x9c, - 0x62, 0x35, 0x0c, 0x40, 0xef, 0xe4, 0xec, 0x42, 0x65, 0x6a, 0x34, 0xcb, 0x80, 0xda, 0x54, 0xb1, - 0x34, 0x9a, 0x63, 0xc0, 0x3b, 0x5a, 0x79, 0x69, 0x6a, 0x34, 0xcf, 0xfe, 0x9c, 0xad, 0x2c, 0x15, - 0x97, 0x46, 0x7b, 0xd9, 0x9f, 0xd3, 0xf8, 0x67, 0x81, 0x31, 0xab, 0x4c, 0x2d, 0xe1, 0x8f, 0x3e, - 0xd6, 0x84, 0x69, 0xff, 0x57, 0x3f, 0x43, 0x31, 0xd6, 0xa5, 0xb2, 0x36, 0x3a, 0xc0, 0x7e, 0x30, - 0x96, 0xec, 0x07, 0xb0, 0xc6, 0x69, 0x53, 0x73, 0x0b, 0xb7, 0xa7, 0x46, 0x07, 0x19, 0xaf, 0xb9, - 0x9b, 0x0c, 0x3c, 0xc4, 0xfe, 0xd4, 0xe6, 0xd8, 0x9f, 0xc3, 0x8c, 0x93, 0x36, 0x55, 0x9c, 0x5d, - 0x2c, 0x2e, 0xcd, 0x8c, 0x8e, 0xb0, 0xf6, 0x20, 0xcf, 0x63, 0xbc, 0xe4, 0x7c, 0x71, 0x6e, 0x6a, - 0x74, 0x54, 0xd0, 0x94, 0x66, 0xcb, 0xf3, 0x37, 0x47, 0xc7, 0xb0, 0x21, 0x6f, 0xce, 0xe1, 0x0f, - 0xc2, 0x0a, 0xe0, 0x5f, 0xc7, 0x1f, 0xff, 0x18, 0x14, 0x16, 0x2a, 0xb8, 0xe3, 0x3f, 0x0d, 0xc7, - 0x17, 0x2a, 0xd5, 0xa5, 0x37, 0x17, 0xa7, 0x62, 0xf2, 0x1e, 0x83, 0x61, 0x1f, 0x31, 0x5b, 0x9e, - 0xbf, 0xf5, 0x61, 0x2e, 0x6d, 0x1f, 0x34, 0x57, 0x9c, 0x5c, 0xa8, 0x8c, 0x66, 0x59, 0xaf, 0xf8, - 0xa0, 0x3b, 0xe5, 0xf9, 0xd2, 0xc2, 0x9d, 0xca, 0x68, 0xee, 0xf1, 0x7b, 0x7e, 0x0a, 0xe6, 0x05, - 0xc7, 0xac, 0x9b, 0x16, 0x39, 0x0f, 0x67, 0x4a, 0x53, 0xb7, 0xcb, 0x93, 0x53, 0xd5, 0x05, 0xad, - 0x7c, 0xa3, 0x3c, 0x1f, 0xab, 0xe9, 0x24, 0x8c, 0x45, 0xd1, 0xc5, 0xc5, 0xf2, 0x68, 0x86, 0x9c, - 0x02, 0x12, 0x05, 0xbf, 0x5e, 0x9c, 0x9b, 0x1e, 0xcd, 0x12, 0x05, 0x4e, 0x44, 0xe1, 0xe5, 0xf9, - 0xa5, 0x5b, 0xf3, 0x53, 0xa3, 0xb9, 0xc7, 0x7f, 0x21, 0x03, 0x27, 0x53, 0x03, 0x50, 0x10, 0x15, - 0x2e, 0x4c, 0xcd, 0x16, 0x2b, 0x4b, 0xe5, 0xc9, 0xca, 0x54, 0x51, 0x9b, 0x9c, 0xa9, 0x4e, 0x16, - 0x97, 0xa6, 0x6e, 0x2c, 0x68, 0x6f, 0x56, 0x6f, 0x4c, 0xcd, 0x4f, 0x69, 0xc5, 0xd9, 0xd1, 0x1e, - 0xf2, 0x28, 0x8c, 0x77, 0xa0, 0xa9, 0x4c, 0x4d, 0xde, 0xd2, 0xca, 0x4b, 0x6f, 0x8e, 0x66, 0xc8, - 0x23, 0x70, 0xbe, 0x23, 0x11, 0xfb, 0x3d, 0x9a, 0x25, 0x17, 0xe0, 0x6c, 0x27, 0x92, 0x37, 0x66, - 0x47, 0x73, 0x8f, 0xff, 0x44, 0x06, 0x48, 0x32, 0x82, 0x00, 0x79, 0x18, 0xce, 0x31, 0xbd, 0xa8, - 0x76, 0x6e, 0xe0, 0x23, 0x70, 0x3e, 0x95, 0x42, 0x6a, 0xde, 0x38, 0x3c, 0xd4, 0x81, 0x44, 0x34, - 0xee, 0x1c, 0x28, 0xe9, 0x04, 0xd8, 0xb4, 0xdf, 0xca, 0xc0, 0xc9, 0xd4, 0xe3, 0x07, 0xb9, 0x04, - 0xef, 0x2b, 0x96, 0xe6, 0x58, 0xdf, 0x4c, 0x2e, 0x95, 0x17, 0xe6, 0x2b, 0xd5, 0xb9, 0xe9, 0x62, - 0x95, 0x69, 0xdf, 0xad, 0x4a, 0xac, 0x37, 0x2f, 0x82, 0xda, 0x85, 0x72, 0x72, 0xa6, 0x38, 0x7f, - 0x83, 0x0d, 0x3f, 0xf2, 0x3e, 0x78, 0xb8, 0x23, 0xdd, 0xd4, 0x7c, 0x71, 0x62, 0x76, 0xaa, 0x34, - 0x9a, 0x25, 0x8f, 0xc1, 0x23, 0x1d, 0xa9, 0x4a, 0xe5, 0x0a, 0x27, 0xcb, 0x4d, 0x94, 0xde, 0xf9, - 0x47, 0x17, 0x7a, 0xde, 0xf9, 0xd6, 0x85, 0xcc, 0x9f, 0x7c, 0xeb, 0x42, 0xe6, 0xaf, 0xbe, 0x75, - 0x21, 0xf3, 0x91, 0x6b, 0x3b, 0x89, 0x0c, 0xc1, 0xa7, 0xad, 0xe5, 0x02, 0x6e, 0x05, 0x9e, 0xf9, - 0xf7, 0x01, 0x00, 0x00, 0xff, 0xff, 0x31, 0xcd, 0x35, 0x75, 0x7a, 0x61, 0x01, 0x00, + 0x32, 0x8b, 0x99, 0x59, 0x8d, 0xc6, 0xf8, 0x12, 0x65, 0x89, 0x22, 0x65, 0x92, 0xa2, 0x29, 0x4b, + 0xd4, 0x65, 0x8b, 0x92, 0x2c, 0x5b, 0x92, 0x75, 0x58, 0xb6, 0x42, 0x12, 0x25, 0x33, 0x2c, 0x99, + 0x3e, 0x46, 0x66, 0x48, 0x21, 0xc9, 0xb6, 0x42, 0x61, 0xcb, 0xa0, 0x96, 0xbb, 0xda, 0x1f, 0x88, + 0xdd, 0x08, 0xc5, 0x2e, 0x63, 0xc5, 0xd5, 0x6a, 0x37, 0x36, 0xde, 0xf7, 0x5e, 0x66, 0xbe, 0x3c, + 0xaa, 0x70, 0x8e, 0x30, 0x60, 0xe3, 0x4f, 0x37, 0xea, 0xfb, 0xbe, 0xf7, 0xbd, 0x97, 0xdf, 0xfb, + 0xde, 0xfd, 0x1d, 0x70, 0xd9, 0xa3, 0x0d, 0xda, 0xb2, 0x1d, 0xef, 0x6a, 0x83, 0xd6, 0xf5, 0xda, + 0xfa, 0x55, 0x6f, 0xbd, 0x45, 0xdd, 0xab, 0xf4, 0x1e, 0xb5, 0x3c, 0xff, 0xbf, 0x2b, 0x2d, 0xc7, + 0xf6, 0x6c, 0x52, 0xe0, 0xbf, 0xce, 0x9e, 0xa8, 0xdb, 0x75, 0x1b, 0x41, 0x57, 0xd9, 0x5f, 0x1c, + 0x7b, 0xf6, 0x5c, 0xdd, 0xb6, 0xeb, 0x0d, 0x7a, 0x15, 0x7f, 0x2d, 0xb7, 0x57, 0xae, 0xba, 0x9e, + 0xd3, 0xae, 0x79, 0x02, 0x3b, 0x1e, 0xc7, 0x7a, 0x66, 0x93, 0xba, 0x9e, 0xde, 0x6c, 0x09, 0x82, + 0x0b, 0x71, 0x82, 0x35, 0x47, 0x6f, 0xb5, 0xa8, 0x23, 0x2a, 0x3f, 0xfb, 0x48, 0x7a, 0x3b, 0xf1, + 0x5f, 0x41, 0xf2, 0x64, 0x3a, 0x89, 0xcf, 0x28, 0xc6, 0x51, 0xfd, 0x52, 0x16, 0xfa, 0xe7, 0xa8, + 0xa7, 0x1b, 0xba, 0xa7, 0x93, 0x73, 0xd0, 0x5b, 0xb6, 0x0c, 0x7a, 0x5f, 0xc9, 0x3c, 0x9c, 0xb9, + 0x94, 0x9b, 0x28, 0x6c, 0x6e, 0x8c, 0x67, 0xa9, 0xa9, 0x71, 0x20, 0x39, 0x0f, 0xf9, 0xa5, 0xf5, + 0x16, 0x55, 0xb2, 0x0f, 0x67, 0x2e, 0x0d, 0x4c, 0x0c, 0x6c, 0x6e, 0x8c, 0xf7, 0xa2, 0x2c, 0x34, + 0x04, 0x93, 0x47, 0x20, 0x5b, 0x2e, 0x29, 0x39, 0x44, 0x8e, 0x6d, 0x6e, 0x8c, 0x0f, 0xb7, 0x4d, + 0xe3, 0x09, 0xbb, 0x69, 0x7a, 0xb4, 0xd9, 0xf2, 0xd6, 0xb5, 0x6c, 0xb9, 0x44, 0x2e, 0x42, 0x7e, + 0xd2, 0x36, 0xa8, 0x92, 0x47, 0x22, 0xb2, 0xb9, 0x31, 0x3e, 0x52, 0xb3, 0x0d, 0x2a, 0x51, 0x21, + 0x9e, 0xbc, 0x06, 0xf9, 0x25, 0xb3, 0x49, 0x95, 0xde, 0x87, 0x33, 0x97, 0x06, 0xaf, 0x9d, 0xbd, + 0xc2, 0xa5, 0x72, 0xc5, 0x97, 0xca, 0x95, 0x25, 0x5f, 0x6c, 0x13, 0xa3, 0xef, 0x6c, 0x8c, 0xf7, + 0x6c, 0x6e, 0x8c, 0xe7, 0x99, 0x24, 0xbf, 0xf8, 0xcd, 0xf1, 0x8c, 0x86, 0x25, 0xc9, 0xcb, 0x30, + 0x38, 0xd9, 0x68, 0xbb, 0x1e, 0x75, 0xe6, 0xf5, 0x26, 0x55, 0x0a, 0x58, 0xe1, 0xd9, 0xcd, 0x8d, + 0xf1, 0x53, 0x35, 0x0e, 0xae, 0x5a, 0x7a, 0x53, 0xae, 0x58, 0x26, 0x57, 0x7f, 0x27, 0x03, 0xc7, + 0x2a, 0xd4, 0x75, 0x4d, 0xdb, 0x0a, 0x64, 0xf3, 0x18, 0x0c, 0x08, 0x50, 0xb9, 0x84, 0xf2, 0x19, + 0x98, 0xe8, 0xdb, 0xdc, 0x18, 0xcf, 0xb9, 0xa6, 0xa1, 0x85, 0x18, 0xf2, 0x14, 0xf4, 0xdd, 0x31, + 0xbd, 0xd5, 0xb9, 0xe9, 0xa2, 0x90, 0xd3, 0xa9, 0xcd, 0x8d, 0x71, 0xb2, 0x66, 0x7a, 0xab, 0xd5, + 0xe6, 0x8a, 0x2e, 0x55, 0xe8, 0x93, 0x91, 0x59, 0x18, 0x5d, 0x74, 0xcc, 0x7b, 0xba, 0x47, 0x6f, + 0xd2, 0xf5, 0x45, 0xbb, 0x61, 0xd6, 0xd6, 0x85, 0x14, 0x1f, 0xde, 0xdc, 0x18, 0x3f, 0xd7, 0xe2, + 0xb8, 0xea, 0x5d, 0xba, 0x5e, 0x6d, 0x21, 0x56, 0x62, 0x92, 0x28, 0xa9, 0xfe, 0x6e, 0x01, 0x86, + 0x6e, 0xb9, 0xd4, 0x09, 0xda, 0x7d, 0x11, 0xf2, 0xec, 0xb7, 0x68, 0x32, 0xca, 0xbc, 0xed, 0x52, + 0x47, 0x96, 0x39, 0xc3, 0x93, 0xcb, 0xd0, 0x3b, 0x6b, 0xd7, 0x4d, 0x4b, 0x34, 0xfb, 0xf8, 0xe6, + 0xc6, 0xf8, 0xb1, 0x06, 0x03, 0x48, 0x94, 0x9c, 0x82, 0x7c, 0x08, 0x86, 0xca, 0x4d, 0xa6, 0x43, + 0xb6, 0xa5, 0x7b, 0xb6, 0x23, 0x5a, 0x8b, 0xd2, 0x35, 0x25, 0xb8, 0x54, 0x30, 0x42, 0x4f, 0x5e, + 0x04, 0x28, 0xde, 0xa9, 0x68, 0x76, 0x83, 0x16, 0xb5, 0x79, 0xa1, 0x0c, 0x58, 0x5a, 0x5f, 0x73, + 0xab, 0x8e, 0xdd, 0xa0, 0x55, 0xdd, 0x91, 0xab, 0x95, 0xa8, 0xc9, 0x14, 0x8c, 0x14, 0x6b, 0x35, + 0xea, 0xba, 0x1a, 0xfd, 0x64, 0x9b, 0xba, 0x9e, 0xab, 0xf4, 0x3e, 0x9c, 0xbb, 0x34, 0x30, 0x71, + 0x7e, 0x73, 0x63, 0xfc, 0x8c, 0x8e, 0x98, 0xaa, 0x23, 0x50, 0x12, 0x8b, 0x58, 0x21, 0x32, 0x01, + 0xc3, 0xc5, 0xb7, 0xdb, 0x0e, 0x2d, 0x1b, 0xd4, 0xf2, 0x4c, 0x6f, 0x5d, 0x68, 0xc8, 0xb9, 0xcd, + 0x8d, 0x71, 0x45, 0x67, 0x88, 0xaa, 0x29, 0x30, 0x12, 0x93, 0x68, 0x11, 0xb2, 0x00, 0x63, 0x37, + 0x26, 0x17, 0x2b, 0xd4, 0xb9, 0x67, 0xd6, 0x68, 0xb1, 0x56, 0xb3, 0xdb, 0x96, 0xa7, 0xf4, 0x21, + 0x9f, 0x47, 0x36, 0x37, 0xc6, 0xcf, 0xd7, 0x6b, 0xad, 0xaa, 0xcb, 0xb1, 0x55, 0x9d, 0xa3, 0x25, + 0x66, 0xc9, 0xb2, 0xe4, 0x23, 0x30, 0xbc, 0xe4, 0x30, 0x2d, 0x34, 0x4a, 0x94, 0xc1, 0x95, 0x7e, + 0xd4, 0xff, 0x53, 0x57, 0xc4, 0x04, 0xc4, 0xa1, 0x7e, 0xcf, 0xf2, 0xc6, 0x7a, 0xbc, 0x40, 0xd5, + 0x40, 0x9c, 0xdc, 0xd8, 0x08, 0x2b, 0x42, 0x41, 0x61, 0x1f, 0x6f, 0x3a, 0xd4, 0x48, 0x68, 0xdb, + 0x00, 0xb6, 0xf9, 0xf2, 0xe6, 0xc6, 0xf8, 0x63, 0x8e, 0xa0, 0xa9, 0x76, 0x55, 0xbb, 0x8e, 0xac, + 0xc8, 0x14, 0xf4, 0x33, 0x6d, 0xba, 0x69, 0x5a, 0x86, 0x02, 0x0f, 0x67, 0x2e, 0x8d, 0x5c, 0x1b, + 0xf5, 0x5b, 0xef, 0xc3, 0x27, 0x4e, 0x6f, 0x6e, 0x8c, 0x1f, 0x67, 0x3a, 0x58, 0xbd, 0x6b, 0x5a, + 0xf2, 0x14, 0x11, 0x14, 0x65, 0xa3, 0x68, 0xc2, 0xf6, 0x70, 0xe8, 0x0e, 0x86, 0xa3, 0x68, 0xd9, + 0xf6, 0xe2, 0xc3, 0xd6, 0x27, 0x23, 0x93, 0x30, 0x3c, 0x61, 0x7b, 0x65, 0xcb, 0xf5, 0x74, 0xab, + 0x46, 0xcb, 0x25, 0x65, 0x08, 0xcb, 0xa1, 0x5a, 0xb0, 0x72, 0xa6, 0xc0, 0x54, 0x23, 0x93, 0x52, + 0xb4, 0x8c, 0xfa, 0xb7, 0x79, 0x18, 0x61, 0x7d, 0x22, 0x0d, 0x9f, 0x22, 0x9b, 0x09, 0x18, 0x84, + 0xd5, 0xe2, 0xb6, 0xf4, 0x1a, 0x15, 0x23, 0x09, 0xbf, 0xc2, 0xf2, 0x81, 0x12, 0xcf, 0x38, 0x3d, + 0xb9, 0x0c, 0xfd, 0x1c, 0x54, 0x2e, 0x89, 0xc1, 0x35, 0xbc, 0xb9, 0x31, 0x3e, 0xe0, 0x22, 0xac, + 0x6a, 0x1a, 0x5a, 0x80, 0x66, 0xda, 0xcd, 0xff, 0x9e, 0xb1, 0x5d, 0x8f, 0x31, 0x17, 0x63, 0x0b, + 0x3f, 0x43, 0x14, 0x58, 0x15, 0x28, 0x59, 0xbb, 0xa3, 0x85, 0xc8, 0x0b, 0x00, 0x1c, 0x52, 0x34, + 0x0c, 0x47, 0x0c, 0xb0, 0x33, 0x9b, 0x1b, 0xe3, 0x27, 0x05, 0x0b, 0xdd, 0x30, 0xe4, 0xd1, 0x29, + 0x11, 0x93, 0x26, 0x0c, 0xf1, 0x5f, 0xb3, 0xfa, 0x32, 0x6d, 0xf0, 0xd1, 0x35, 0x78, 0xed, 0x92, + 0xdf, 0x89, 0x51, 0xe9, 0x5c, 0x91, 0x49, 0xa7, 0x2c, 0xcf, 0x59, 0x9f, 0x18, 0x17, 0x13, 0xf2, + 0x69, 0x51, 0x55, 0x03, 0x71, 0xf2, 0x54, 0x20, 0x97, 0x61, 0xf3, 0xf4, 0xb4, 0xed, 0xac, 0xe9, + 0x8e, 0x41, 0x8d, 0x89, 0x75, 0x79, 0x9e, 0x5e, 0xf1, 0xc1, 0xd5, 0x65, 0x59, 0xf5, 0x64, 0x72, + 0xd6, 0xe9, 0x9c, 0x5b, 0xa5, 0xbd, 0x8c, 0x2a, 0xd7, 0x97, 0x90, 0x96, 0xdb, 0x5e, 0x8e, 0xab, + 0x59, 0xb4, 0x0c, 0x9b, 0x0a, 0x38, 0xe0, 0x36, 0x75, 0xd8, 0x24, 0x8e, 0xa3, 0x4e, 0x4c, 0x05, + 0x82, 0xc9, 0x3d, 0x8e, 0x49, 0xf2, 0x10, 0x45, 0xce, 0xbe, 0x0a, 0x63, 0x09, 0x51, 0x90, 0x51, + 0xc8, 0xdd, 0xa5, 0xeb, 0x5c, 0x5d, 0x34, 0xf6, 0x27, 0x39, 0x01, 0xbd, 0xf7, 0xf4, 0x46, 0x5b, + 0x2c, 0xa1, 0x1a, 0xff, 0xf1, 0x62, 0xf6, 0x83, 0x19, 0xb6, 0xe2, 0x90, 0x49, 0xdb, 0xb2, 0x68, + 0xcd, 0x93, 0x17, 0x9d, 0xe7, 0x60, 0x60, 0xd6, 0xae, 0xe9, 0x0d, 0xec, 0x47, 0xae, 0x77, 0xca, + 0xe6, 0xc6, 0xf8, 0x09, 0xd6, 0x81, 0x57, 0x1a, 0x0c, 0x23, 0xb5, 0x29, 0x24, 0x65, 0x0a, 0xa0, + 0xd1, 0xa6, 0xed, 0x51, 0x2c, 0x98, 0x0d, 0x15, 0x00, 0x0b, 0x3a, 0x88, 0x92, 0x15, 0x20, 0x24, + 0x26, 0x57, 0xa1, 0x7f, 0x91, 0xad, 0xb3, 0x35, 0xbb, 0x21, 0x94, 0x0f, 0x97, 0x02, 0x5c, 0x7b, + 0xe5, 0xb1, 0xea, 0x13, 0xa9, 0x33, 0x30, 0x32, 0xd9, 0x30, 0xa9, 0xe5, 0xc9, 0xad, 0x66, 0x23, + 0xb9, 0x58, 0xa7, 0x96, 0x27, 0xb7, 0x1a, 0xc7, 0xbc, 0xce, 0xa0, 0x72, 0xab, 0x03, 0x52, 0xf5, + 0x8f, 0x73, 0x70, 0xe6, 0x66, 0x7b, 0x99, 0x3a, 0x16, 0xf5, 0xa8, 0x2b, 0x16, 0xe4, 0x80, 0xeb, + 0x3c, 0x8c, 0x25, 0x90, 0x82, 0x3b, 0x2e, 0x94, 0x77, 0x03, 0x64, 0x55, 0xac, 0xf1, 0xf2, 0x6c, + 0x9b, 0x28, 0x4a, 0x66, 0xe0, 0x58, 0x08, 0x64, 0x8d, 0x70, 0x95, 0x2c, 0x2e, 0x25, 0x17, 0x36, + 0x37, 0xc6, 0xcf, 0x4a, 0xdc, 0x58, 0xb3, 0x65, 0x0d, 0x8e, 0x17, 0x23, 0x37, 0x61, 0x34, 0x04, + 0xdd, 0x70, 0xec, 0x76, 0xcb, 0x55, 0x72, 0xc8, 0x6a, 0x7c, 0x73, 0x63, 0xfc, 0x21, 0x89, 0x55, + 0x1d, 0x91, 0xf2, 0x02, 0x1e, 0x2f, 0x48, 0xbe, 0x3f, 0x23, 0x73, 0x13, 0xa3, 0x30, 0x8f, 0xa3, + 0xf0, 0x79, 0x7f, 0x14, 0x76, 0x14, 0xd2, 0x95, 0x78, 0x49, 0x31, 0x28, 0x63, 0xcd, 0x48, 0x0c, + 0xca, 0x44, 0x8d, 0x67, 0x27, 0xe1, 0x64, 0x2a, 0xaf, 0x1d, 0x69, 0xf5, 0x5f, 0xe7, 0x64, 0x2e, + 0x8b, 0xb6, 0x11, 0x74, 0xe6, 0x82, 0xdc, 0x99, 0x8b, 0xb6, 0x81, 0x53, 0x7d, 0x26, 0x5c, 0x3b, + 0xa5, 0xc6, 0xb6, 0x6c, 0x23, 0x3e, 0xeb, 0x27, 0xcb, 0x92, 0x4f, 0xc0, 0xa9, 0x04, 0x90, 0x4f, + 0xd7, 0x5c, 0xfb, 0x2f, 0x6e, 0x6e, 0x8c, 0xab, 0x29, 0x5c, 0xe3, 0xb3, 0x77, 0x07, 0x2e, 0x44, + 0x87, 0xd3, 0x92, 0xd4, 0x6d, 0xcb, 0xd3, 0x4d, 0x4b, 0x6c, 0x2e, 0xf9, 0x28, 0x79, 0xff, 0xe6, + 0xc6, 0xf8, 0xa3, 0xb2, 0x0e, 0xfa, 0x34, 0xf1, 0xc6, 0x77, 0xe2, 0x43, 0x0c, 0x50, 0x52, 0x50, + 0xe5, 0xa6, 0x5e, 0xf7, 0x77, 0xcc, 0x97, 0x36, 0x37, 0xc6, 0xdf, 0x97, 0x5a, 0x87, 0xc9, 0xa8, + 0xe4, 0x15, 0xba, 0x13, 0x27, 0xa2, 0x01, 0x09, 0x71, 0xf3, 0xb6, 0x41, 0xf1, 0x1b, 0x7a, 0x91, + 0xbf, 0xba, 0xb9, 0x31, 0x7e, 0x41, 0xe2, 0x6f, 0xd9, 0x06, 0x8d, 0x37, 0x3f, 0xa5, 0xb4, 0xfa, + 0x3b, 0x39, 0xb8, 0x50, 0x29, 0xce, 0xcd, 0x96, 0x0d, 0x7f, 0x4b, 0xb3, 0xe8, 0xd8, 0xf7, 0x4c, + 0x43, 0x1a, 0xbd, 0xcb, 0x70, 0x3a, 0x86, 0x9a, 0xc2, 0x5d, 0x54, 0xb0, 0x99, 0xc6, 0x6f, 0xf3, + 0xb7, 0x4b, 0x2d, 0x41, 0x53, 0xe5, 0x5b, 0xad, 0xe8, 0xa2, 0xdd, 0x89, 0x11, 0xeb, 0xa3, 0x18, + 0xaa, 0xb2, 0x6a, 0x3b, 0x5e, 0xad, 0xed, 0x09, 0x25, 0xc0, 0x3e, 0x4a, 0xd4, 0xe1, 0x0a, 0xa2, + 0x2e, 0x55, 0xf8, 0x7c, 0xc8, 0x67, 0x33, 0x30, 0x5a, 0xf4, 0x3c, 0xc7, 0x5c, 0x6e, 0x7b, 0x74, + 0x4e, 0x6f, 0xb5, 0x4c, 0xab, 0x8e, 0x63, 0x7d, 0xf0, 0xda, 0xcb, 0xc1, 0x1a, 0xd9, 0x55, 0x12, + 0x57, 0xe2, 0xc5, 0xa5, 0x21, 0xaa, 0xfb, 0xa8, 0x6a, 0x93, 0xe3, 0xe4, 0x21, 0x1a, 0x2f, 0xc7, + 0x86, 0x68, 0x2a, 0xaf, 0x1d, 0x0d, 0xd1, 0x2f, 0xe5, 0xe0, 0xdc, 0xc2, 0x5d, 0x4f, 0xd7, 0xa8, + 0x6b, 0xb7, 0x9d, 0x1a, 0x75, 0x6f, 0xb5, 0x0c, 0xdd, 0xa3, 0xe1, 0x48, 0x1d, 0x87, 0xde, 0xa2, + 0x61, 0x50, 0x03, 0xd9, 0xf5, 0xf2, 0x63, 0x9f, 0xce, 0x00, 0x1a, 0x87, 0x93, 0xc7, 0xa0, 0x4f, + 0x94, 0x41, 0xee, 0xbd, 0x13, 0x83, 0x9b, 0x1b, 0xe3, 0x7d, 0x6d, 0x0e, 0xd2, 0x7c, 0x1c, 0x23, + 0x2b, 0xd1, 0x06, 0x65, 0x64, 0xb9, 0x90, 0xcc, 0xe0, 0x20, 0xcd, 0xc7, 0x91, 0x37, 0x60, 0x04, + 0xd9, 0x06, 0xed, 0x11, 0x73, 0xdf, 0x09, 0x5f, 0xba, 0x72, 0x63, 0xf9, 0xd2, 0x84, 0xad, 0xa9, + 0x3a, 0x7e, 0x01, 0x2d, 0xc6, 0x80, 0xdc, 0x81, 0x51, 0xd1, 0x88, 0x90, 0x69, 0x6f, 0x17, 0xa6, + 0x27, 0x37, 0x37, 0xc6, 0xc7, 0x44, 0xfb, 0x25, 0xb6, 0x09, 0x26, 0x8c, 0xb1, 0x68, 0x76, 0xc8, + 0xb8, 0xb0, 0x15, 0x63, 0xf1, 0xc5, 0x32, 0xe3, 0x38, 0x13, 0xf5, 0x4d, 0x18, 0x92, 0x0b, 0x92, + 0x53, 0x78, 0xb4, 0xe6, 0xe3, 0x04, 0x0f, 0xe5, 0xa6, 0x81, 0xe7, 0xe9, 0xa7, 0x61, 0xb0, 0x44, + 0xdd, 0x9a, 0x63, 0xb6, 0xd8, 0xae, 0x41, 0x28, 0xf9, 0xb1, 0xcd, 0x8d, 0xf1, 0x41, 0x23, 0x04, + 0x6b, 0x32, 0x8d, 0xfa, 0xaf, 0x32, 0x70, 0x8a, 0xf1, 0x2e, 0xba, 0xae, 0x59, 0xb7, 0x9a, 0xf2, + 0xb2, 0xfd, 0x04, 0x14, 0x2a, 0x58, 0x9f, 0xa8, 0xe9, 0xc4, 0xe6, 0xc6, 0xf8, 0x28, 0x6f, 0x81, + 0xa4, 0x87, 0x82, 0x26, 0x38, 0x57, 0x66, 0xb7, 0x38, 0x57, 0xb2, 0x2d, 0xad, 0xa7, 0x3b, 0x9e, + 0x69, 0xd5, 0x2b, 0x9e, 0xee, 0xb5, 0xdd, 0xc8, 0x96, 0x56, 0x60, 0xaa, 0x2e, 0xa2, 0x22, 0x5b, + 0xda, 0x48, 0x21, 0xf2, 0x2a, 0x0c, 0x4d, 0x59, 0x46, 0xc8, 0x84, 0x4f, 0x88, 0x0f, 0xb1, 0x9d, + 0x26, 0x45, 0x78, 0x92, 0x45, 0xa4, 0x80, 0xfa, 0xab, 0x19, 0x50, 0xf8, 0x21, 0x70, 0xd6, 0x74, + 0xbd, 0x39, 0xda, 0x5c, 0x96, 0x66, 0xa7, 0x69, 0xff, 0x54, 0xc9, 0x70, 0xd2, 0x5a, 0x84, 0x5b, + 0x01, 0x71, 0xaa, 0x6c, 0x98, 0x6e, 0xe2, 0xf8, 0x11, 0x2b, 0x45, 0xca, 0xd0, 0xc7, 0x39, 0xf3, + 0xbd, 0xc4, 0xe0, 0x35, 0xc5, 0x57, 0x84, 0x78, 0xd5, 0x5c, 0x19, 0x9a, 0x9c, 0x58, 0x3e, 0xd0, + 0x88, 0xf2, 0xea, 0x7f, 0x9f, 0x85, 0xd1, 0x78, 0x21, 0x72, 0x07, 0xfa, 0x5f, 0xb7, 0x4d, 0x8b, + 0x1a, 0x0b, 0x16, 0xb6, 0xb0, 0xfb, 0xe5, 0x88, 0xbf, 0x17, 0x3f, 0xfe, 0x16, 0x96, 0xa9, 0xca, + 0x3b, 0x58, 0xbc, 0x2b, 0x09, 0x98, 0x91, 0x8f, 0xc0, 0x00, 0xdb, 0x03, 0xde, 0x43, 0xce, 0xd9, + 0x2d, 0x39, 0x3f, 0x2c, 0x38, 0x9f, 0x70, 0x78, 0xa1, 0x24, 0xeb, 0x90, 0x1d, 0xd3, 0x2b, 0x8d, + 0xea, 0xae, 0x6d, 0x89, 0x9e, 0x47, 0xbd, 0x72, 0x10, 0x22, 0xeb, 0x15, 0xa7, 0x61, 0x5b, 0x57, + 0xfe, 0xb1, 0xd8, 0x0d, 0xd2, 0xd9, 0x85, 0xcb, 0x2a, 0xde, 0x03, 0x12, 0xb1, 0xfa, 0xe9, 0x2c, + 0x3c, 0x19, 0x8a, 0x4c, 0xa3, 0xf7, 0x4c, 0xba, 0x26, 0xc4, 0xb9, 0x6a, 0xb6, 0xc4, 0x99, 0x95, + 0xa9, 0xbc, 0x3b, 0xb9, 0xaa, 0x5b, 0x75, 0x6a, 0x90, 0xcb, 0xd0, 0xab, 0xd9, 0x0d, 0xea, 0x2a, + 0x19, 0xdc, 0xae, 0xe1, 0x74, 0xe2, 0x30, 0x80, 0x7c, 0xe9, 0x81, 0x14, 0xc4, 0x86, 0xc2, 0x92, + 0xa3, 0x9b, 0x9e, 0xdf, 0xb3, 0xc5, 0x64, 0xcf, 0x6e, 0xa3, 0xc6, 0x2b, 0x9c, 0x07, 0x9f, 0xf3, + 0x51, 0x10, 0x1e, 0x02, 0x64, 0x41, 0x70, 0x92, 0xb3, 0x2f, 0xc0, 0xa0, 0x44, 0xbc, 0xa3, 0x49, + 0xfd, 0xab, 0x79, 0x59, 0xd7, 0xfd, 0x66, 0x09, 0x5d, 0xbf, 0xca, 0x74, 0xd4, 0x75, 0xd9, 0xae, + 0x82, 0x2b, 0xb9, 0xd0, 0x44, 0x04, 0x45, 0x35, 0x11, 0x41, 0xe4, 0x19, 0xe8, 0xe7, 0x2c, 0x82, + 0xf3, 0x2b, 0x9e, 0x7d, 0x1d, 0x84, 0x45, 0x97, 0xe6, 0x80, 0x90, 0xfc, 0x72, 0x06, 0xce, 0x77, + 0x95, 0x04, 0x2a, 0xc3, 0xe0, 0xb5, 0x67, 0x77, 0x25, 0xc6, 0x89, 0x27, 0x37, 0x37, 0xc6, 0x2f, + 0x37, 0x03, 0x92, 0xaa, 0x23, 0xd1, 0x54, 0x6b, 0x9c, 0x48, 0x6a, 0x57, 0xf7, 0xa6, 0xb0, 0xcd, + 0x23, 0xaf, 0x74, 0x1a, 0xaf, 0x8e, 0xac, 0xda, 0xba, 0xdf, 0xc8, 0x7c, 0xb8, 0x79, 0x14, 0xdf, + 0xbb, 0xe2, 0x93, 0xa4, 0x54, 0xd3, 0x81, 0x0b, 0xa9, 0xc1, 0x69, 0x8e, 0x29, 0xe9, 0xeb, 0x0b, + 0x2b, 0x73, 0xb6, 0xe5, 0xad, 0xfa, 0x15, 0xf4, 0xca, 0x77, 0x2f, 0x58, 0x81, 0xa1, 0xaf, 0x57, + 0xed, 0x95, 0x6a, 0x93, 0x51, 0xa5, 0xd4, 0xd1, 0x89, 0x13, 0x9b, 0x68, 0xc5, 0x98, 0xf3, 0xa7, + 0xa0, 0x42, 0x78, 0x33, 0xe6, 0x8f, 0xd3, 0xe4, 0x84, 0x13, 0x2b, 0xa4, 0x96, 0x61, 0x68, 0xd6, + 0xae, 0xdd, 0x0d, 0xd4, 0xe5, 0x05, 0x28, 0x2c, 0xe9, 0x4e, 0x9d, 0x7a, 0x28, 0x8b, 0xc1, 0x6b, + 0x63, 0x57, 0xf8, 0x6d, 0x33, 0x23, 0xe2, 0x88, 0x89, 0x11, 0x31, 0x1b, 0x14, 0x3c, 0xfc, 0xad, + 0x89, 0x02, 0xea, 0x37, 0x7b, 0x61, 0x48, 0xdc, 0x8c, 0xe2, 0x6c, 0x4e, 0x5e, 0x0c, 0xef, 0x9a, + 0xc5, 0xf4, 0x15, 0xdc, 0x0e, 0x05, 0xb7, 0x5a, 0x43, 0x8c, 0xd9, 0x9f, 0x6c, 0x8c, 0x67, 0x36, + 0x37, 0xc6, 0x7b, 0xb4, 0x7e, 0xe9, 0x50, 0x19, 0xae, 0x37, 0xd2, 0x02, 0x2b, 0xdf, 0x75, 0xc6, + 0xca, 0xf2, 0xf5, 0xe7, 0x55, 0xe8, 0x13, 0x6d, 0x10, 0x1a, 0x77, 0x3a, 0xbc, 0xcb, 0x88, 0xdc, + 0xf0, 0xc6, 0x4a, 0xfb, 0xa5, 0xc8, 0xcb, 0x50, 0xe0, 0x67, 0x7b, 0x21, 0x80, 0x53, 0xe9, 0x77, + 0x21, 0xb1, 0xe2, 0xa2, 0x0c, 0x99, 0x01, 0x08, 0xcf, 0xf5, 0xc1, 0x85, 0xb6, 0xe0, 0x90, 0x3c, + 0xf1, 0xc7, 0xb8, 0x48, 0x65, 0xc9, 0x73, 0x30, 0xb4, 0x44, 0x9d, 0xa6, 0x69, 0xe9, 0x8d, 0x8a, + 0xf9, 0xb6, 0x7f, 0xa7, 0x8d, 0x0b, 0xaf, 0x6b, 0xbe, 0x2d, 0x8f, 0xdc, 0x08, 0x1d, 0xf9, 0x78, + 0xda, 0xb9, 0xb9, 0x0f, 0x1b, 0xf2, 0xc8, 0x96, 0x07, 0xca, 0x58, 0x7b, 0x52, 0x8e, 0xd1, 0x6f, + 0xc0, 0x70, 0xe4, 0xc8, 0x24, 0x2e, 0x2d, 0xcf, 0x27, 0x59, 0x4b, 0xe7, 0xbf, 0x18, 0xdb, 0x28, + 0x07, 0xa6, 0xc9, 0x65, 0xcb, 0xf4, 0x4c, 0xbd, 0x31, 0x69, 0x37, 0x9b, 0xba, 0x65, 0x28, 0x03, + 0xa1, 0x26, 0x9b, 0x1c, 0x53, 0xad, 0x71, 0x94, 0xac, 0xc9, 0xd1, 0x42, 0xec, 0x58, 0x2e, 0xfa, + 0x50, 0xa3, 0x35, 0xdb, 0x61, 0x7b, 0x01, 0xbc, 0x93, 0x14, 0xc7, 0x72, 0x97, 0xe3, 0xaa, 0x8e, + 0x8f, 0x94, 0x37, 0xdb, 0xf1, 0x82, 0xaf, 0xe7, 0xfb, 0x07, 0x47, 0x87, 0xe2, 0xd7, 0xc8, 0xea, + 0x2f, 0xe5, 0x60, 0x50, 0x90, 0xb2, 0xa5, 0xf4, 0x48, 0xc1, 0xf7, 0xa2, 0xe0, 0xa9, 0x8a, 0x5a, + 0xd8, 0x2f, 0x45, 0x55, 0x3f, 0x97, 0x0d, 0x66, 0xa3, 0x45, 0xc7, 0xb4, 0xf6, 0x36, 0x1b, 0x5d, + 0x04, 0x98, 0x5c, 0x6d, 0x5b, 0x77, 0xf9, 0x73, 0x59, 0x36, 0x7c, 0x2e, 0xab, 0x99, 0x9a, 0x84, + 0x21, 0xe7, 0x21, 0x5f, 0x62, 0xfc, 0x59, 0xcf, 0x0c, 0x4d, 0x0c, 0xbc, 0xc3, 0x39, 0x65, 0x9e, + 0xd4, 0x10, 0xcc, 0x0e, 0x57, 0x13, 0xeb, 0x1e, 0xe5, 0xdb, 0xd9, 0x1c, 0x3f, 0x5c, 0x2d, 0x33, + 0x80, 0xc6, 0xe1, 0xe4, 0x3a, 0x8c, 0x95, 0x68, 0x43, 0x5f, 0x9f, 0x33, 0x1b, 0x0d, 0xd3, 0xa5, + 0x35, 0xdb, 0x32, 0x5c, 0x14, 0xb2, 0xa8, 0xae, 0xe9, 0x6a, 0x49, 0x02, 0xa2, 0x42, 0x61, 0x61, + 0x65, 0xc5, 0xa5, 0x1e, 0x8a, 0x2f, 0x37, 0x01, 0x6c, 0x72, 0xb6, 0x11, 0xa2, 0x09, 0x8c, 0xfa, + 0xeb, 0x19, 0x76, 0x7a, 0x71, 0xef, 0x7a, 0x76, 0x2b, 0xd0, 0xf2, 0x3d, 0x89, 0xe4, 0x72, 0xb8, + 0xaf, 0xc8, 0xe2, 0xd7, 0x1e, 0x13, 0x5f, 0xdb, 0x27, 0xf6, 0x16, 0xe1, 0x8e, 0x22, 0xf5, 0xab, + 0x72, 0x5b, 0x7c, 0x95, 0xfa, 0x37, 0x59, 0x38, 0x2d, 0x5a, 0x3c, 0xd9, 0x30, 0x5b, 0xcb, 0xb6, + 0xee, 0x18, 0x1a, 0xad, 0x51, 0xf3, 0x1e, 0x3d, 0x9c, 0x03, 0x2f, 0x3a, 0x74, 0xf2, 0x7b, 0x18, + 0x3a, 0xd7, 0xf0, 0x20, 0xc8, 0x24, 0x83, 0x17, 0xbe, 0x7c, 0x53, 0x31, 0xba, 0xb9, 0x31, 0x3e, + 0x64, 0x70, 0x30, 0x5e, 0xf9, 0x6b, 0x32, 0x11, 0x53, 0x92, 0x59, 0x6a, 0xd5, 0xbd, 0x55, 0x54, + 0x92, 0x5e, 0xae, 0x24, 0x0d, 0x84, 0x68, 0x02, 0xa3, 0xfe, 0xf3, 0x2c, 0x9c, 0x88, 0x8b, 0xbc, + 0x42, 0x2d, 0xe3, 0x48, 0xde, 0xef, 0x8e, 0xbc, 0xbf, 0x9d, 0x83, 0x87, 0x44, 0x99, 0xca, 0xaa, + 0xee, 0x50, 0xa3, 0x64, 0x3a, 0xb4, 0xe6, 0xd9, 0xce, 0xfa, 0x21, 0xde, 0x40, 0xed, 0x9f, 0xd8, + 0xaf, 0x43, 0x41, 0x1c, 0xff, 0xf9, 0x3a, 0x33, 0x12, 0xb4, 0x04, 0xa1, 0x89, 0x15, 0x8a, 0x5f, + 0x1d, 0xc4, 0x3a, 0xab, 0xb0, 0x9d, 0xce, 0xfa, 0x20, 0x0c, 0x07, 0xa2, 0xc7, 0x83, 0x68, 0x5f, + 0xb8, 0xdb, 0x32, 0x7c, 0x04, 0x9e, 0x45, 0xb5, 0x28, 0x21, 0xd6, 0xe6, 0x03, 0xca, 0x25, 0xdc, + 0x0d, 0x0d, 0x8b, 0xda, 0x82, 0x72, 0xa6, 0xa1, 0xc9, 0x44, 0xea, 0x46, 0x1e, 0xce, 0xa6, 0x77, + 0xbb, 0x46, 0x75, 0xe3, 0xa8, 0xd7, 0xbf, 0x2b, 0x7b, 0x9d, 0x3c, 0x02, 0xf9, 0x45, 0xdd, 0x5b, + 0x15, 0xcf, 0xef, 0xf8, 0x26, 0xbc, 0x62, 0x36, 0x68, 0xb5, 0xa5, 0x7b, 0xab, 0x1a, 0xa2, 0xa4, + 0x39, 0x03, 0x90, 0x63, 0xca, 0x9c, 0x21, 0x2d, 0xf6, 0x83, 0x0f, 0x67, 0x2e, 0xe5, 0x53, 0x17, + 0xfb, 0x6f, 0xe6, 0x3b, 0xcd, 0x2b, 0x77, 0x1c, 0xd3, 0xa3, 0x47, 0x1a, 0x76, 0xa4, 0x61, 0x7b, + 0xd4, 0xb0, 0x3f, 0xcb, 0xc2, 0x70, 0x70, 0x68, 0x7a, 0x8b, 0xd6, 0x0e, 0x66, 0xad, 0x0a, 0x8f, + 0x32, 0xb9, 0x3d, 0x1f, 0x65, 0xf6, 0xa2, 0x50, 0x6a, 0x70, 0xe5, 0xc9, 0xb7, 0x06, 0x28, 0x31, + 0x7e, 0xe5, 0x19, 0x5c, 0x74, 0x3e, 0x02, 0x7d, 0x73, 0xfa, 0x7d, 0xb3, 0xd9, 0x6e, 0x8a, 0x5d, + 0x3a, 0x9a, 0x93, 0x35, 0xf5, 0xfb, 0x9a, 0x0f, 0x57, 0xff, 0xef, 0x0c, 0x8c, 0x08, 0xa1, 0x0a, + 0xe6, 0x7b, 0x92, 0x6a, 0x28, 0x9d, 0xec, 0x9e, 0xa5, 0x93, 0xdb, 0xbd, 0x74, 0xd4, 0x9f, 0xce, + 0x81, 0x32, 0x6d, 0x36, 0xe8, 0x92, 0xa3, 0x5b, 0xee, 0x0a, 0x75, 0xc4, 0x71, 0x7a, 0x8a, 0xb1, + 0xda, 0xd3, 0x07, 0x4a, 0x53, 0x4a, 0x76, 0x57, 0x53, 0xca, 0x07, 0x60, 0x40, 0x34, 0x26, 0x30, + 0x65, 0xc4, 0x51, 0xe3, 0xf8, 0x40, 0x2d, 0xc4, 0x33, 0xe2, 0x62, 0xab, 0xe5, 0xd8, 0xf7, 0xa8, + 0xc3, 0x5f, 0xa9, 0x04, 0xb1, 0xee, 0x03, 0xb5, 0x10, 0x2f, 0x71, 0xa6, 0xfe, 0x7e, 0x51, 0xe6, + 0x4c, 0x1d, 0x2d, 0xc4, 0x93, 0x4b, 0xd0, 0x3f, 0x6b, 0xd7, 0x74, 0x14, 0x34, 0x9f, 0x56, 0x86, + 0x36, 0x37, 0xc6, 0xfb, 0x1b, 0x02, 0xa6, 0x05, 0x58, 0x46, 0x59, 0xb2, 0xd7, 0xac, 0x86, 0xad, + 0x73, 0xe3, 0x97, 0x7e, 0x4e, 0x69, 0x08, 0x98, 0x16, 0x60, 0x19, 0x25, 0x93, 0x39, 0x1a, 0x15, + 0xf5, 0x87, 0x3c, 0x57, 0x04, 0x4c, 0x0b, 0xb0, 0xea, 0xaf, 0xe7, 0x99, 0xf6, 0xba, 0xe6, 0xdb, + 0x0f, 0xfc, 0xba, 0x10, 0x0e, 0x98, 0xde, 0x5d, 0x0c, 0x98, 0x07, 0xe6, 0xc2, 0x4e, 0xfd, 0xdb, + 0x3e, 0x00, 0x21, 0xfd, 0xa9, 0xa3, 0xc3, 0xe1, 0xde, 0xb4, 0xa6, 0x04, 0x63, 0x53, 0xd6, 0xaa, + 0x6e, 0xd5, 0xa8, 0x11, 0x5e, 0x5b, 0x16, 0x70, 0x68, 0xa3, 0x11, 0x24, 0x15, 0xc8, 0xf0, 0xde, + 0x52, 0x4b, 0x16, 0x20, 0x4f, 0xc3, 0x60, 0xd9, 0xf2, 0xa8, 0xa3, 0xd7, 0x3c, 0xf3, 0x1e, 0x15, + 0x53, 0x03, 0xbe, 0x0c, 0x9b, 0x21, 0x58, 0x93, 0x69, 0xc8, 0x75, 0x18, 0x5a, 0xd4, 0x1d, 0xcf, + 0xac, 0x99, 0x2d, 0xdd, 0xf2, 0x5c, 0xa5, 0x1f, 0x67, 0x34, 0xdc, 0x61, 0xb4, 0x24, 0xb8, 0x16, + 0xa1, 0x22, 0x1f, 0x87, 0x01, 0x3c, 0x9a, 0xa2, 0xbd, 0xf6, 0xc0, 0x96, 0x0f, 0x87, 0x8f, 0x86, + 0xe6, 0x81, 0xfc, 0xf6, 0x15, 0x5f, 0x80, 0xe3, 0x6f, 0x87, 0x01, 0x47, 0xf2, 0x61, 0xe8, 0x9b, + 0xb2, 0x0c, 0x64, 0x0e, 0x5b, 0x32, 0x57, 0x05, 0xf3, 0x53, 0x21, 0x73, 0xbb, 0x15, 0xe3, 0xed, + 0xb3, 0x4b, 0x1f, 0x65, 0x83, 0xef, 0xde, 0x28, 0x1b, 0x7a, 0x17, 0xae, 0xc5, 0x87, 0xf7, 0xeb, + 0x5a, 0x7c, 0x64, 0x97, 0xd7, 0xe2, 0xea, 0xdb, 0x30, 0x38, 0xb1, 0x38, 0x1d, 0x8c, 0xde, 0x33, + 0x90, 0x5b, 0x14, 0x96, 0x0a, 0x79, 0xbe, 0x9f, 0x69, 0x99, 0x86, 0xc6, 0x60, 0xe4, 0x32, 0xf4, + 0x4f, 0xa2, 0xf9, 0x9b, 0x78, 0x45, 0xcc, 0xf3, 0xf5, 0xaf, 0x86, 0x30, 0xb4, 0x82, 0xf5, 0xd1, + 0xe4, 0x31, 0xe8, 0x5b, 0x74, 0xec, 0xba, 0xa3, 0x37, 0xc5, 0x1a, 0x8c, 0xa6, 0x22, 0x2d, 0x0e, + 0xd2, 0x7c, 0x9c, 0xfa, 0x23, 0x19, 0x7f, 0xdb, 0xce, 0x4a, 0x54, 0xda, 0x78, 0x35, 0x8f, 0x75, + 0xf7, 0xf3, 0x12, 0x2e, 0x07, 0x69, 0x3e, 0x8e, 0x5c, 0x86, 0xde, 0x29, 0xc7, 0xb1, 0x1d, 0xd9, + 0xc6, 0x9d, 0x32, 0x80, 0xfc, 0xdc, 0x8b, 0x14, 0xe4, 0x79, 0x18, 0xe4, 0x73, 0x0e, 0xbf, 0xd1, + 0xcc, 0x75, 0x7b, 0x29, 0x95, 0x29, 0xd5, 0xaf, 0xe7, 0xa4, 0x3d, 0x1b, 0x97, 0xf8, 0x03, 0xf8, + 0x2a, 0xf0, 0x0c, 0xe4, 0x26, 0x16, 0xa7, 0xc5, 0x04, 0x78, 0xdc, 0x2f, 0x2a, 0xa9, 0x4a, 0xac, + 0x1c, 0xa3, 0x26, 0xe7, 0x20, 0xbf, 0xc8, 0xd4, 0xa7, 0x80, 0xea, 0xd1, 0xbf, 0xb9, 0x31, 0x9e, + 0x6f, 0x31, 0xfd, 0x41, 0x28, 0x62, 0xd9, 0x61, 0x86, 0x9f, 0x98, 0x38, 0x36, 0x3c, 0xc7, 0x9c, + 0x83, 0x7c, 0xd1, 0xa9, 0xdf, 0x13, 0xb3, 0x16, 0x62, 0x75, 0xa7, 0x7e, 0x4f, 0x43, 0x28, 0xb9, + 0x0a, 0xa0, 0x51, 0xaf, 0xed, 0x58, 0xe8, 0x7e, 0x32, 0x80, 0xf7, 0x6f, 0x38, 0x1b, 0x3a, 0x08, + 0xad, 0xd6, 0x6c, 0x83, 0x6a, 0x12, 0x89, 0xfa, 0x0b, 0xe1, 0xc3, 0x4e, 0xc9, 0x74, 0xef, 0x1e, + 0x75, 0xe1, 0x0e, 0xba, 0x50, 0x17, 0x57, 0x9c, 0xc9, 0x4e, 0x1a, 0x87, 0xde, 0xe9, 0x86, 0x5e, + 0x77, 0xb1, 0x0f, 0x85, 0x2d, 0xd9, 0x0a, 0x03, 0x68, 0x1c, 0x1e, 0xeb, 0xa7, 0xfe, 0xad, 0xfb, + 0xe9, 0xcb, 0xbd, 0xc1, 0x68, 0x9b, 0xa7, 0xde, 0x9a, 0xed, 0x1c, 0x75, 0xd5, 0x76, 0xbb, 0xea, + 0x22, 0xf4, 0x55, 0x9c, 0x9a, 0x74, 0x75, 0x81, 0xe7, 0x01, 0xd7, 0xa9, 0xf1, 0x6b, 0x0b, 0x1f, + 0xc9, 0xe8, 0x4a, 0xae, 0x87, 0x74, 0x7d, 0x21, 0x9d, 0xe1, 0x7a, 0x82, 0x4e, 0x20, 0x05, 0xdd, + 0xa2, 0xed, 0x78, 0xa2, 0xe3, 0x02, 0xba, 0x96, 0xed, 0x78, 0x9a, 0x8f, 0x24, 0x1f, 0x00, 0x58, + 0x9a, 0x5c, 0xf4, 0x8d, 0xed, 0x07, 0x42, 0x5b, 0x40, 0x61, 0x65, 0xaf, 0x49, 0x68, 0xb2, 0x04, + 0x03, 0x0b, 0x2d, 0xea, 0xf0, 0xa3, 0x10, 0x77, 0x28, 0x79, 0x7f, 0x4c, 0xb4, 0xa2, 0xdf, 0xaf, + 0x88, 0xff, 0x03, 0x72, 0xbe, 0xbe, 0xd8, 0xfe, 0x4f, 0x2d, 0x64, 0x44, 0x9e, 0x87, 0x42, 0x91, + 0xef, 0xf3, 0x06, 0x91, 0x65, 0x20, 0x32, 0x3c, 0x82, 0x72, 0x14, 0x3f, 0xb3, 0xeb, 0xf8, 0xb7, + 0x26, 0xc8, 0xd5, 0xcb, 0x30, 0x1a, 0xaf, 0x86, 0x0c, 0x42, 0xdf, 0xe4, 0xc2, 0xfc, 0xfc, 0xd4, + 0xe4, 0xd2, 0x68, 0x0f, 0xe9, 0x87, 0x7c, 0x65, 0x6a, 0xbe, 0x34, 0x9a, 0x51, 0x7f, 0x45, 0x9a, + 0x41, 0x98, 0x6a, 0x1d, 0x3d, 0x0d, 0xef, 0xe9, 0xbd, 0x65, 0x14, 0xdf, 0x43, 0xf1, 0xc6, 0xa0, + 0x69, 0x7a, 0x1e, 0x35, 0xc4, 0x2a, 0x81, 0xef, 0x85, 0xde, 0x7d, 0x2d, 0x81, 0x27, 0x4f, 0xc0, + 0x30, 0xc2, 0xc4, 0x13, 0x21, 0x3f, 0x1f, 0x8b, 0x02, 0xce, 0x7d, 0x2d, 0x8a, 0x54, 0xbf, 0x11, + 0xbe, 0x0e, 0xcf, 0x52, 0xfd, 0xb0, 0xbe, 0x28, 0xbe, 0x47, 0xfa, 0x4b, 0xfd, 0xfb, 0x3c, 0x77, + 0x01, 0xe1, 0xfe, 0x82, 0x07, 0x21, 0xca, 0xf0, 0x4a, 0x37, 0xb7, 0x83, 0x2b, 0xdd, 0x27, 0xa0, + 0x30, 0x47, 0xbd, 0x55, 0xdb, 0x37, 0xfc, 0x42, 0x0b, 0xbd, 0x26, 0x42, 0x64, 0x0b, 0x3d, 0x4e, + 0x43, 0xee, 0x02, 0xf1, 0x9d, 0x01, 0x03, 0x43, 0x6c, 0xff, 0x0a, 0xf9, 0x74, 0xe2, 0x9c, 0x52, + 0x41, 0x4f, 0x60, 0xb4, 0xb1, 0x3f, 0x11, 0x18, 0x7a, 0x4b, 0x96, 0x58, 0x7f, 0xb7, 0x31, 0x5e, + 0xe0, 0x34, 0x5a, 0x0a, 0x5b, 0xf2, 0x06, 0x0c, 0xcc, 0x4d, 0x17, 0x85, 0x63, 0x20, 0xb7, 0x8a, + 0x38, 0x13, 0x48, 0xd1, 0x47, 0x04, 0x22, 0x41, 0x7f, 0x9b, 0xe6, 0x8a, 0x9e, 0xf4, 0x0b, 0x0c, + 0xb9, 0x30, 0x6d, 0xe1, 0x9e, 0x3b, 0xe2, 0x76, 0x21, 0xd0, 0x96, 0xa8, 0x3f, 0x4f, 0x5c, 0x56, + 0x1c, 0x1b, 0xd3, 0x96, 0xfe, 0x3d, 0x8c, 0xee, 0x05, 0x18, 0x2b, 0xb6, 0x5a, 0x0d, 0x93, 0x1a, + 0xa8, 0x2f, 0x5a, 0xbb, 0x41, 0x5d, 0x61, 0xf2, 0x83, 0xce, 0x20, 0x3a, 0x47, 0x56, 0xd1, 0x1d, + 0xb5, 0xea, 0xb4, 0xa3, 0xf6, 0x99, 0xc9, 0xb2, 0xea, 0x8f, 0x65, 0xe1, 0xd4, 0xa4, 0x43, 0x75, + 0x8f, 0xce, 0x4d, 0x17, 0x8b, 0x6d, 0xb4, 0x91, 0x6b, 0x34, 0xa8, 0x55, 0x3f, 0x98, 0x61, 0xfd, + 0x12, 0x8c, 0x04, 0x0d, 0xa8, 0xd4, 0xec, 0x16, 0x95, 0x1d, 0xab, 0x6a, 0x3e, 0xa6, 0xea, 0x32, + 0x94, 0x16, 0x23, 0x25, 0x37, 0xe1, 0x78, 0x00, 0x29, 0x36, 0x1a, 0xf6, 0x9a, 0x46, 0xdb, 0x2e, + 0x37, 0x8c, 0xed, 0xe7, 0x86, 0xb1, 0x21, 0x07, 0x9d, 0xe1, 0xab, 0x0e, 0x23, 0xd0, 0xd2, 0x4a, + 0xa9, 0x5f, 0xc9, 0xc1, 0xe9, 0xdb, 0x7a, 0xc3, 0x34, 0x42, 0xd1, 0x68, 0xd4, 0x6d, 0xd9, 0x96, + 0x4b, 0x0f, 0xd1, 0x28, 0x8d, 0x0c, 0x85, 0xfc, 0xbe, 0x0c, 0x85, 0x64, 0x17, 0xf5, 0xee, 0xb9, + 0x8b, 0x0a, 0xbb, 0xea, 0xa2, 0x7f, 0x96, 0x81, 0x51, 0xdf, 0xf0, 0x5f, 0x76, 0xe2, 0x96, 0xac, + 0xd2, 0xf1, 0x0a, 0x31, 0x66, 0x07, 0x8d, 0x78, 0x52, 0x81, 0xbe, 0xa9, 0xfb, 0x2d, 0xd3, 0xa1, + 0xee, 0x36, 0x8c, 0xb8, 0xcf, 0x8b, 0xeb, 0x92, 0x31, 0xca, 0x8b, 0x24, 0x6e, 0x4a, 0x38, 0x18, + 0xdd, 0xf9, 0xb8, 0xeb, 0xc3, 0x84, 0xef, 0x99, 0xce, 0xdd, 0xf9, 0x84, 0x8b, 0x44, 0xc4, 0x3f, + 0x33, 0x24, 0x25, 0x8f, 0x42, 0x6e, 0x69, 0x69, 0x56, 0xcc, 0xa4, 0x18, 0x11, 0xc0, 0xf3, 0x64, + 0x7f, 0x45, 0x86, 0x55, 0xff, 0x32, 0x0b, 0xc0, 0x54, 0x81, 0x0f, 0xd7, 0x03, 0x51, 0xc2, 0x09, + 0xe8, 0xf7, 0x05, 0x2e, 0xd4, 0x30, 0xb0, 0xda, 0x8f, 0x77, 0x44, 0xbc, 0xee, 0xc0, 0x43, 0x63, + 0xdc, 0x37, 0x24, 0xe7, 0xef, 0x00, 0x78, 0xb2, 0x41, 0x43, 0x72, 0xdf, 0x7c, 0xfc, 0x03, 0x30, + 0x20, 0x66, 0x3c, 0x3b, 0x72, 0xff, 0x5f, 0xf3, 0x81, 0x5a, 0x88, 0x8f, 0x4d, 0xad, 0x85, 0x3d, + 0x2c, 0xc4, 0xbe, 0x78, 0x79, 0xaf, 0x1c, 0x89, 0x77, 0x9f, 0xc5, 0xfb, 0x05, 0x21, 0x5e, 0xee, + 0xc1, 0x73, 0x68, 0xc5, 0xbb, 0x6f, 0x77, 0xdf, 0xea, 0x9f, 0x65, 0x80, 0xb0, 0x66, 0x2d, 0xea, + 0xae, 0xbb, 0x66, 0x3b, 0x06, 0x37, 0x4e, 0x3f, 0x10, 0xc1, 0xec, 0xdf, 0x7b, 0xe5, 0xd7, 0xfb, + 0xe1, 0x78, 0xc4, 0xf0, 0xf7, 0x90, 0x4f, 0x56, 0x97, 0xa3, 0xa3, 0xa9, 0x9b, 0xd7, 0xcb, 0xfb, + 0xe4, 0x07, 0xd1, 0xde, 0x88, 0x03, 0x9a, 0xf4, 0x12, 0xfa, 0x24, 0x0c, 0x89, 0x1f, 0x6c, 0x85, + 0xf6, 0x5f, 0xba, 0x70, 0x94, 0xba, 0x0c, 0xa0, 0x45, 0xd0, 0xe4, 0x59, 0x18, 0x60, 0x03, 0xa6, + 0x8e, 0xc1, 0x43, 0xfa, 0x42, 0x8f, 0x12, 0xc3, 0x07, 0xca, 0xeb, 0x49, 0x40, 0x29, 0xf9, 0x11, + 0xf5, 0x6f, 0xc3, 0x8f, 0xe8, 0x13, 0x30, 0x58, 0xb4, 0x2c, 0xdb, 0xc3, 0x43, 0xba, 0x2b, 0x9e, + 0x26, 0x3a, 0xee, 0xca, 0x1f, 0x45, 0xe7, 0xf8, 0x90, 0x3e, 0x75, 0x5b, 0x2e, 0x33, 0x24, 0xd7, + 0x7c, 0xaf, 0x18, 0xea, 0x08, 0xab, 0x72, 0x7c, 0x9e, 0x71, 0x04, 0x2c, 0xe9, 0x14, 0x83, 0x9d, + 0x37, 0xbc, 0xe8, 0xd8, 0x2d, 0xdb, 0xa5, 0x06, 0x17, 0xd4, 0x60, 0x18, 0x6a, 0xa0, 0x25, 0x10, + 0xe8, 0xc7, 0x16, 0x09, 0xe4, 0x11, 0x29, 0x42, 0x56, 0xe0, 0x84, 0xff, 0x50, 0x1c, 0x78, 0x0c, + 0x96, 0x4b, 0xae, 0x32, 0x84, 0x5e, 0x49, 0x24, 0xae, 0x0c, 0xe5, 0xd2, 0xc4, 0x05, 0xff, 0x59, + 0xc4, 0x77, 0x39, 0xac, 0x9a, 0x86, 0xdc, 0xd5, 0xa9, 0xfc, 0xc8, 0xf7, 0xc0, 0xe0, 0x9c, 0x7e, + 0xbf, 0xd4, 0x16, 0x77, 0x2f, 0xc3, 0xdb, 0x7f, 0x7d, 0x69, 0xea, 0xf7, 0xab, 0x86, 0x28, 0x17, + 0xdb, 0x53, 0xc8, 0x2c, 0x49, 0x15, 0x4e, 0x2d, 0x3a, 0x76, 0xd3, 0xf6, 0xa8, 0x11, 0x73, 0xbe, + 0x3b, 0x16, 0x7a, 0xeb, 0xb6, 0x04, 0x45, 0xb5, 0x8b, 0x17, 0x5e, 0x07, 0x36, 0xa4, 0x09, 0xc7, + 0x8a, 0xae, 0xdb, 0x6e, 0xd2, 0xf0, 0x85, 0x6a, 0x74, 0xcb, 0xcf, 0x78, 0xbf, 0xb0, 0x5a, 0x7e, + 0x48, 0xc7, 0xa2, 0xfc, 0x81, 0xaa, 0xea, 0x99, 0x72, 0x8d, 0xf8, 0x2d, 0x71, 0xde, 0xaf, 0xe7, + 0xfb, 0x47, 0x46, 0x8f, 0x69, 0xa7, 0x93, 0x8d, 0x59, 0x32, 0xbd, 0x06, 0x55, 0xbf, 0x96, 0x01, + 0x08, 0x05, 0x4c, 0x9e, 0x8c, 0x46, 0x28, 0xca, 0x84, 0x0f, 0x1d, 0x22, 0x7a, 0x41, 0x24, 0x24, + 0x11, 0x39, 0x07, 0x79, 0x8c, 0x70, 0x91, 0x0d, 0x2f, 0x56, 0xef, 0x9a, 0x96, 0xa1, 0x21, 0x94, + 0x61, 0x25, 0x57, 0x74, 0xc4, 0xe2, 0xa3, 0x3e, 0xdf, 0x15, 0x96, 0xe0, 0x58, 0xa5, 0xbd, 0xec, + 0xd7, 0x2d, 0xf9, 0xd5, 0x61, 0xa0, 0x0d, 0xb7, 0xbd, 0x1c, 0x38, 0xa3, 0x46, 0xc2, 0x98, 0x44, + 0x8b, 0xa8, 0xbf, 0x9e, 0x89, 0xcd, 0x82, 0x07, 0xb8, 0xe8, 0xbd, 0x2f, 0x69, 0xa7, 0x91, 0x9c, + 0x96, 0xd4, 0x9f, 0xc9, 0xc2, 0xe0, 0xa2, 0xed, 0x78, 0x22, 0x64, 0xc8, 0xe1, 0x5e, 0x85, 0xa4, + 0xb3, 0x52, 0x7e, 0x07, 0x67, 0xa5, 0x73, 0x90, 0x97, 0x4c, 0x94, 0xf9, 0xbb, 0x88, 0x61, 0x38, + 0x1a, 0x42, 0xd5, 0xef, 0xcd, 0x02, 0x7c, 0xf8, 0xe9, 0xa7, 0x1f, 0x60, 0x01, 0xa9, 0x3f, 0x95, + 0x81, 0x63, 0xe2, 0xa1, 0x4e, 0x8a, 0xf5, 0xd5, 0xe7, 0x3f, 0xb1, 0xca, 0xe3, 0x92, 0x83, 0x34, + 0x1f, 0xc7, 0x96, 0x80, 0xa9, 0xfb, 0xa6, 0x87, 0x6f, 0x15, 0x52, 0xb0, 0x2f, 0x2a, 0x60, 0xf2, + 0x12, 0xe0, 0xd3, 0x91, 0x27, 0xfd, 0x27, 0xc8, 0x5c, 0xb8, 0xee, 0xb1, 0x02, 0x53, 0xa9, 0xcf, + 0x90, 0xea, 0x6f, 0xe5, 0x21, 0x3f, 0x75, 0x9f, 0xd6, 0x0e, 0x79, 0xd7, 0x48, 0x17, 0x9b, 0xf9, + 0x3d, 0x5e, 0x6c, 0xee, 0xc6, 0xa6, 0xe2, 0xd5, 0xb0, 0x3f, 0x0b, 0xd1, 0xea, 0x63, 0x3d, 0x1f, + 0xaf, 0xde, 0xef, 0xe9, 0xc3, 0x67, 0x92, 0xf3, 0xbf, 0xe5, 0x20, 0x57, 0x99, 0x5c, 0x3c, 0xd2, + 0x9b, 0x03, 0xd5, 0x9b, 0xee, 0x6f, 0xd6, 0x6a, 0xf0, 0x0c, 0xd5, 0x1f, 0x5a, 0x89, 0xc6, 0x5e, + 0x9c, 0xbe, 0x9d, 0x83, 0x91, 0xca, 0xf4, 0xd2, 0xa2, 0x74, 0x13, 0x7c, 0x93, 0x5b, 0xf2, 0xa1, + 0x4d, 0x19, 0xef, 0xd2, 0x73, 0x89, 0xfd, 0xcc, 0xad, 0xb2, 0xe5, 0x3d, 0x77, 0xfd, 0xb6, 0xde, + 0x68, 0x53, 0xbc, 0x7a, 0xe1, 0x76, 0xbf, 0xae, 0xf9, 0x36, 0xfd, 0x0a, 0x3a, 0xfe, 0xfb, 0x0c, + 0xc8, 0x4b, 0x90, 0xbb, 0x25, 0x2c, 0x32, 0x3a, 0xf1, 0x79, 0xe6, 0x1a, 0xe7, 0xc3, 0x26, 0xc1, + 0x5c, 0xdb, 0x34, 0x90, 0x03, 0x2b, 0xc5, 0x0a, 0xdf, 0x10, 0x0b, 0xf0, 0xb6, 0x0a, 0xd7, 0xfd, + 0xc2, 0x37, 0xca, 0x25, 0x52, 0x81, 0xc1, 0x45, 0xea, 0x34, 0x4d, 0xec, 0x28, 0x7f, 0xce, 0xee, + 0xce, 0x84, 0x9d, 0x54, 0x06, 0x5b, 0x61, 0x21, 0x64, 0x26, 0x73, 0x21, 0x6f, 0x02, 0xf0, 0x3d, + 0xca, 0x36, 0xe3, 0x47, 0x9e, 0xc7, 0x7d, 0x3f, 0xdf, 0x5a, 0xa6, 0xec, 0xf1, 0x24, 0x66, 0xe4, + 0x2e, 0x8c, 0xce, 0xd9, 0x86, 0xb9, 0x62, 0x72, 0xd3, 0x4b, 0xac, 0xa0, 0xb0, 0xb5, 0xc1, 0x13, + 0xdb, 0x4a, 0x36, 0xa5, 0x72, 0x69, 0xd5, 0x24, 0x18, 0xab, 0xff, 0x73, 0x2f, 0xe4, 0x59, 0xb7, + 0x1f, 0x8d, 0xdf, 0xbd, 0x8c, 0xdf, 0x22, 0x8c, 0xde, 0xb1, 0x9d, 0xbb, 0xa6, 0x55, 0x0f, 0xac, + 0xe2, 0xc5, 0xd9, 0x14, 0x2d, 0x79, 0xd6, 0x38, 0xae, 0x1a, 0x18, 0xd0, 0x6b, 0x09, 0xf2, 0x2d, + 0x46, 0xf0, 0x0b, 0x00, 0xdc, 0xd7, 0x1d, 0x69, 0xfa, 0xc3, 0x60, 0x15, 0xdc, 0x13, 0x1e, 0x0d, + 0xed, 0xe5, 0x60, 0x15, 0x21, 0x31, 0x3b, 0x84, 0x73, 0x5b, 0x88, 0x01, 0xb4, 0xbb, 0xc7, 0x43, + 0x38, 0xda, 0x42, 0xc8, 0x9b, 0x00, 0x6e, 0x15, 0xb1, 0x08, 0x20, 0xbd, 0x2f, 0x41, 0x4c, 0x10, + 0x91, 0xc9, 0x41, 0x84, 0x87, 0x4b, 0x79, 0x5e, 0xd2, 0x24, 0x1e, 0xe4, 0xb9, 0xd8, 0x03, 0x38, + 0x89, 0x70, 0xeb, 0xf8, 0xfe, 0x1d, 0x1a, 0x50, 0x0d, 0x6d, 0x65, 0x40, 0xa5, 0x7e, 0x2e, 0x0b, + 0x03, 0x95, 0xf6, 0xb2, 0xbb, 0xee, 0x7a, 0xb4, 0x79, 0xc8, 0xd5, 0xd8, 0x3f, 0x5e, 0xe5, 0x53, + 0x8f, 0x57, 0x8f, 0xfa, 0x42, 0x91, 0xee, 0x1d, 0x83, 0x2d, 0x9d, 0x2f, 0x8e, 0xff, 0x21, 0x0b, + 0xa3, 0xfc, 0xe1, 0xac, 0x64, 0xba, 0xb5, 0x7d, 0x30, 0xe6, 0x3f, 0x78, 0xa9, 0xec, 0xed, 0xb1, + 0x79, 0x1b, 0x2e, 0x12, 0xea, 0xa7, 0xb2, 0x30, 0x58, 0x6c, 0x7b, 0xab, 0x45, 0x0f, 0x75, 0xeb, + 0x81, 0x3c, 0x9f, 0xfc, 0x61, 0x06, 0x8e, 0xb1, 0x86, 0x2c, 0xd9, 0x77, 0xa9, 0xb5, 0x0f, 0x17, + 0x8f, 0xf2, 0x05, 0x62, 0x76, 0x97, 0x17, 0x88, 0xbe, 0x2c, 0x73, 0x3b, 0x93, 0x25, 0x5e, 0x97, + 0x6b, 0x76, 0x83, 0x1e, 0xee, 0xcf, 0xd8, 0xc7, 0xeb, 0x72, 0x5f, 0x20, 0xfb, 0xf0, 0x3c, 0xf3, + 0xdd, 0x25, 0x90, 0x7d, 0xb8, 0x5b, 0xfa, 0xee, 0x10, 0xc8, 0xd7, 0x33, 0x30, 0x30, 0x61, 0x7b, + 0x87, 0x7c, 0xe0, 0x8b, 0xaf, 0x38, 0xdc, 0x6a, 0xee, 0x7f, 0xc5, 0xe1, 0xd6, 0x4d, 0xf5, 0xc7, + 0xb3, 0x70, 0x42, 0xc4, 0x06, 0x17, 0xf7, 0x0f, 0x47, 0xd3, 0xb1, 0x18, 0x6c, 0x49, 0xd1, 0x1c, + 0xcd, 0x43, 0x42, 0x34, 0xbf, 0x98, 0x83, 0x13, 0x18, 0xca, 0x94, 0x1d, 0xcb, 0xbe, 0x0b, 0xf6, + 0x22, 0xa4, 0x16, 0x7d, 0x04, 0x9d, 0x4b, 0x79, 0x04, 0xfd, 0xbb, 0x8d, 0xf1, 0xe7, 0xea, 0xa6, + 0xb7, 0xda, 0x5e, 0xbe, 0x52, 0xb3, 0x9b, 0x57, 0xeb, 0x8e, 0x7e, 0xcf, 0xe4, 0xcf, 0x7f, 0x7a, + 0xe3, 0x6a, 0x90, 0x66, 0x43, 0x6f, 0x99, 0x22, 0x01, 0x47, 0x05, 0xcf, 0x3a, 0x8c, 0xab, 0xff, + 0x7c, 0xea, 0x02, 0xbc, 0x6e, 0x9b, 0x96, 0xb0, 0x29, 0xe4, 0x1b, 0xdd, 0x0a, 0x3b, 0x1f, 0xbe, + 0x65, 0x9b, 0x56, 0x35, 0x6e, 0x58, 0xb8, 0xd3, 0xfa, 0x42, 0xd6, 0x9a, 0x54, 0x8d, 0xfa, 0x7f, + 0x65, 0xe0, 0x4c, 0x54, 0x8b, 0xbf, 0x1b, 0xf6, 0x8e, 0x3f, 0x91, 0x85, 0x93, 0x37, 0x50, 0x38, + 0x81, 0x21, 0xc7, 0xd1, 0xbc, 0x25, 0x06, 0x67, 0x8a, 0x6c, 0x8e, 0x76, 0x94, 0x9d, 0x65, 0x73, + 0x34, 0xa9, 0x0b, 0xd9, 0xfc, 0x51, 0x06, 0x8e, 0x2f, 0x94, 0x4b, 0x93, 0xdf, 0x25, 0x23, 0x2a, + 0xf9, 0x3d, 0x87, 0x7c, 0xc3, 0x99, 0xf8, 0x9e, 0x43, 0xbe, 0xf5, 0xfc, 0x52, 0x16, 0x8e, 0x57, + 0x8a, 0x73, 0xb3, 0xdf, 0x2d, 0x33, 0xf8, 0xa4, 0x6c, 0x75, 0xe8, 0x5f, 0x82, 0x89, 0xbd, 0x80, + 0xfc, 0x99, 0xb7, 0xaf, 0x75, 0xb6, 0x46, 0x4c, 0x0a, 0xe5, 0x90, 0x4f, 0xdd, 0xfb, 0x22, 0x14, + 0xa6, 0xf9, 0x11, 0xea, 0x43, 0xae, 0xf9, 0xff, 0x6b, 0x01, 0x06, 0x6f, 0xb6, 0x97, 0xa9, 0x30, + 0x4e, 0x79, 0xa0, 0x6f, 0x7e, 0xaf, 0xc1, 0xa0, 0x10, 0x03, 0xbe, 0x9a, 0x48, 0xc1, 0xf3, 0x44, + 0x30, 0x14, 0x1e, 0x9f, 0x48, 0x26, 0x22, 0xe7, 0x20, 0x7f, 0x9b, 0x3a, 0xcb, 0xb2, 0x5f, 0xe9, + 0x3d, 0xea, 0x2c, 0x6b, 0x08, 0x25, 0xb3, 0xa1, 0xc9, 0x7c, 0x71, 0xb1, 0x8c, 0x89, 0x54, 0xc4, + 0x83, 0x0d, 0x66, 0x86, 0x09, 0xec, 0xde, 0xf4, 0x96, 0xc9, 0x53, 0xb0, 0xc8, 0x3e, 0xed, 0xf1, + 0x92, 0x64, 0x1e, 0xc6, 0x64, 0xc3, 0x27, 0x9e, 0x45, 0xa4, 0x3f, 0x85, 0x5d, 0x5a, 0xfe, 0x90, + 0x64, 0x51, 0xf2, 0x2a, 0x0c, 0xf9, 0x40, 0x34, 0xe1, 0x1a, 0x08, 0x43, 0xd7, 0x07, 0xac, 0x62, + 0x29, 0x8a, 0x22, 0x05, 0x64, 0x06, 0xf8, 0x0c, 0x01, 0x29, 0x0c, 0x62, 0x26, 0x71, 0x91, 0x02, + 0xe4, 0x59, 0x64, 0x80, 0x6e, 0x1e, 0x68, 0xac, 0x32, 0x88, 0x4e, 0x97, 0x68, 0x92, 0xef, 0x08, + 0x38, 0x77, 0xad, 0x8d, 0x90, 0x91, 0x05, 0x80, 0xd0, 0xa8, 0x40, 0x04, 0x30, 0xd8, 0xb1, 0xb9, + 0x83, 0xc4, 0x42, 0x7e, 0x0e, 0x1c, 0xde, 0xcd, 0x73, 0xa0, 0xfa, 0xa7, 0x59, 0x18, 0x2c, 0xb6, + 0x5a, 0xc1, 0x50, 0x78, 0x12, 0x0a, 0xc5, 0x56, 0xeb, 0x96, 0x56, 0x96, 0x43, 0x99, 0xeb, 0xad, + 0x56, 0xb5, 0xed, 0x98, 0xb2, 0x4d, 0x28, 0x27, 0x22, 0x93, 0x30, 0x5c, 0x6c, 0xb5, 0x16, 0xdb, + 0xcb, 0x0d, 0xb3, 0x26, 0x65, 0x46, 0xe2, 0xb9, 0xe3, 0x5a, 0xad, 0x6a, 0x0b, 0x31, 0xf1, 0xf4, + 0x58, 0xd1, 0x32, 0xe4, 0x13, 0x18, 0xf6, 0x47, 0x24, 0xe6, 0xe1, 0xa9, 0x3f, 0xd4, 0x20, 0x88, + 0x79, 0xd8, 0xb6, 0x2b, 0x01, 0x11, 0x0f, 0xf6, 0x7e, 0xce, 0x0f, 0x99, 0xcf, 0x2a, 0x4a, 0x24, + 0xe0, 0x09, 0x59, 0x92, 0xa7, 0xa0, 0xaf, 0xd8, 0x6a, 0x49, 0xef, 0x4d, 0x68, 0x54, 0xc4, 0x4a, + 0xc5, 0x73, 0x9f, 0x09, 0xb2, 0xb3, 0x2f, 0xc3, 0x48, 0xb4, 0xb2, 0x1d, 0x05, 0x8b, 0xff, 0x4e, + 0x06, 0x3f, 0xe8, 0x90, 0xdb, 0x34, 0x3f, 0x03, 0xb9, 0x62, 0xab, 0x25, 0xe6, 0xa3, 0xe3, 0x29, + 0xfd, 0x11, 0x77, 0x81, 0x2e, 0xb6, 0x5a, 0xfe, 0xa7, 0x1f, 0x72, 0xe7, 0x88, 0x5d, 0x7d, 0xfa, + 0xd7, 0xf9, 0xa7, 0x1f, 0x6e, 0xc7, 0x05, 0xf5, 0xb7, 0x72, 0x70, 0xac, 0xd8, 0x6a, 0x1d, 0x05, + 0x99, 0xdf, 0x2f, 0x47, 0xeb, 0xa7, 0x01, 0xa4, 0xe9, 0xb1, 0x2f, 0x70, 0xdd, 0x1a, 0x94, 0xa6, + 0x46, 0x25, 0xa3, 0x49, 0x44, 0xbe, 0xfa, 0xf5, 0xef, 0x48, 0xfd, 0x3e, 0x95, 0xc3, 0xa9, 0xf8, + 0xb0, 0x07, 0x8d, 0x7a, 0xaf, 0x74, 0x9b, 0xe8, 0x83, 0xc2, 0x8e, 0xfa, 0xe0, 0x0f, 0x22, 0x83, + 0x07, 0x83, 0x96, 0x1f, 0xf5, 0x42, 0xef, 0x9e, 0xb6, 0xc5, 0x23, 0xb2, 0x30, 0x45, 0x24, 0x1b, + 0x3f, 0x91, 0x92, 0x88, 0xab, 0x54, 0x63, 0xa8, 0xaa, 0x69, 0x68, 0x31, 0x5a, 0xbf, 0x0f, 0xfb, + 0x76, 0xd4, 0x87, 0x1b, 0x59, 0xf4, 0x9d, 0x0e, 0xe2, 0x32, 0xed, 0xfd, 0x74, 0x71, 0x15, 0x80, + 0x5b, 0x1e, 0x04, 0x66, 0xcd, 0xc3, 0x3c, 0x04, 0x0b, 0xcf, 0xaf, 0x24, 0x42, 0xb0, 0x84, 0x24, + 0x81, 0x85, 0x54, 0x2e, 0xd5, 0x42, 0xea, 0x32, 0xf4, 0x6b, 0xfa, 0xda, 0x1b, 0x6d, 0xea, 0xac, + 0x8b, 0xed, 0x0c, 0x0f, 0x7b, 0xa8, 0xaf, 0x55, 0x3f, 0xc9, 0x80, 0x5a, 0x80, 0x26, 0x6a, 0xe0, + 0x7c, 0x2f, 0x59, 0x84, 0xf0, 0x3b, 0xf2, 0xc0, 0xe5, 0x7e, 0x37, 0x8a, 0x4e, 0x5e, 0x84, 0x5c, + 0xf1, 0x4e, 0x45, 0x48, 0x36, 0xe8, 0xda, 0xe2, 0x9d, 0x8a, 0x90, 0x57, 0xc7, 0xb2, 0x77, 0x2a, + 0xea, 0xa7, 0xb2, 0x40, 0x92, 0x94, 0xe4, 0x39, 0x18, 0x40, 0x68, 0x9d, 0xe9, 0x8c, 0x9c, 0x98, + 0x73, 0xcd, 0xad, 0x3a, 0x08, 0x8d, 0x6c, 0xee, 0x7c, 0x52, 0xf2, 0x02, 0xa6, 0x3e, 0x16, 0xa9, + 0xe1, 0x22, 0x89, 0x39, 0xd7, 0x5c, 0x3f, 0x59, 0x70, 0x2c, 0xf3, 0xb1, 0x20, 0xc6, 0x7d, 0xe1, + 0x9d, 0xca, 0x8c, 0xed, 0x7a, 0x42, 0xd4, 0x7c, 0x5f, 0xb8, 0xe6, 0x62, 0x46, 0xd8, 0xc8, 0xbe, + 0x90, 0x93, 0x61, 0x56, 0xab, 0x3b, 0x15, 0xee, 0xa6, 0x62, 0x68, 0x76, 0xc3, 0xdf, 0x50, 0xf2, + 0xac, 0x56, 0x6b, 0x6e, 0x95, 0xbb, 0xb8, 0x18, 0x98, 0x73, 0x39, 0x92, 0xd5, 0x2a, 0x52, 0x4a, + 0xfd, 0x7c, 0x3f, 0x8c, 0x96, 0x74, 0x4f, 0x5f, 0xd6, 0x5d, 0x2a, 0x9d, 0xa6, 0x8f, 0xf9, 0x30, + 0xff, 0x73, 0x24, 0x39, 0x18, 0xcb, 0x29, 0x5f, 0x13, 0x2f, 0x40, 0x5e, 0x0a, 0xf9, 0x06, 0x39, + 0x47, 0xe5, 0x24, 0x66, 0xcb, 0xd5, 0x96, 0x00, 0x6b, 0x09, 0x42, 0xf2, 0x04, 0x0c, 0xfa, 0x30, + 0x76, 0x00, 0xc8, 0x85, 0x3a, 0x63, 0x2c, 0xb3, 0xfd, 0xbf, 0x26, 0xa3, 0xc9, 0x0b, 0x30, 0xe4, + 0xff, 0x94, 0xb6, 0xd6, 0x3c, 0x23, 0xdb, 0x72, 0xe2, 0xf4, 0x24, 0x93, 0xca, 0x45, 0x71, 0x7e, + 0xeb, 0x8d, 0x14, 0x8d, 0x25, 0x3d, 0x8b, 0x90, 0x92, 0x4f, 0xc2, 0x88, 0xff, 0x5b, 0x1c, 0x18, + 0x78, 0x7e, 0xb8, 0x27, 0x82, 0x94, 0xce, 0x31, 0xb1, 0x5e, 0x89, 0x92, 0xf3, 0xa3, 0xc3, 0x43, + 0x7e, 0x1e, 0x2f, 0x63, 0x39, 0x79, 0x72, 0x88, 0x55, 0x40, 0xca, 0x30, 0xe6, 0x43, 0x42, 0x0d, + 0xed, 0x0b, 0x4f, 0x8c, 0xc6, 0x72, 0x35, 0x55, 0x49, 0x93, 0xa5, 0x48, 0x03, 0xce, 0x45, 0x80, + 0x86, 0xbb, 0x6a, 0xae, 0x78, 0xe2, 0xb8, 0x27, 0x62, 0x10, 0x8b, 0xc4, 0x8d, 0x01, 0x57, 0x4e, + 0xe3, 0x67, 0x60, 0x8d, 0x66, 0x87, 0xea, 0xca, 0x8d, 0x54, 0xe0, 0x84, 0x8f, 0xbf, 0x31, 0xb9, + 0xb8, 0xe8, 0xd8, 0x6f, 0xd1, 0x9a, 0x57, 0x2e, 0x89, 0xe3, 0x32, 0xc6, 0xa6, 0x33, 0x96, 0xab, + 0xf5, 0x5a, 0x8b, 0x29, 0x05, 0xc3, 0x45, 0x99, 0xa7, 0x16, 0x26, 0xb7, 0xe1, 0xa4, 0x04, 0x97, + 0xd2, 0x43, 0x43, 0x78, 0x9e, 0x17, 0x5c, 0xd3, 0x33, 0x44, 0xa7, 0x17, 0x27, 0x2f, 0xc3, 0xb0, + 0x8f, 0xe0, 0xaf, 0x88, 0x83, 0xf8, 0x8a, 0x88, 0x43, 0xd2, 0x58, 0xae, 0xc6, 0xbd, 0x29, 0xa3, + 0xc4, 0xb2, 0x46, 0x61, 0x46, 0xfd, 0xa1, 0x88, 0x46, 0x79, 0xeb, 0xad, 0x54, 0x65, 0xc4, 0x2c, + 0xfb, 0xaf, 0x86, 0x1a, 0xb5, 0xe0, 0x98, 0x75, 0x93, 0x9f, 0xa4, 0x7d, 0x07, 0xca, 0xe5, 0xaa, + 0x8d, 0xc0, 0x34, 0xfd, 0xe0, 0xe4, 0x67, 0x8b, 0x70, 0x3c, 0x45, 0xc7, 0x76, 0x74, 0x62, 0xfc, + 0x5c, 0x36, 0x6c, 0xc4, 0x21, 0x3f, 0x36, 0x4e, 0x40, 0xbf, 0xff, 0x25, 0x62, 0xf3, 0xa0, 0x74, + 0x1a, 0x9a, 0x71, 0x1e, 0x3e, 0x3e, 0x22, 0x8e, 0x43, 0x7e, 0x94, 0xdc, 0x0f, 0x71, 0xbc, 0x93, + 0x09, 0xc5, 0x71, 0xc8, 0x8f, 0x97, 0x7f, 0x94, 0x0b, 0xe7, 0xa4, 0xa3, 0x33, 0xe6, 0x7e, 0x6d, + 0x93, 0x43, 0x3b, 0xd8, 0xc2, 0x0e, 0x1c, 0x19, 0x65, 0xd5, 0xec, 0xdb, 0xa5, 0x6a, 0xfe, 0x79, + 0xb2, 0x3f, 0xf9, 0xd6, 0xf3, 0x50, 0xf6, 0xe7, 0x3e, 0x0c, 0x56, 0x72, 0x2d, 0x5c, 0xc7, 0xf8, + 0x1e, 0xbd, 0x57, 0x0a, 0xf1, 0xb7, 0x2c, 0xb6, 0xe8, 0x51, 0x12, 0xf2, 0x51, 0x38, 0x1d, 0x01, + 0x2c, 0xea, 0x8e, 0xde, 0xa4, 0x5e, 0x98, 0x71, 0x10, 0x83, 0x36, 0xf9, 0xa5, 0xab, 0xad, 0x00, + 0x2d, 0x67, 0x31, 0xec, 0xc0, 0x41, 0x52, 0x8e, 0xbe, 0x1d, 0x18, 0x49, 0x7f, 0x39, 0x17, 0x6e, + 0x55, 0xa2, 0xc1, 0x57, 0x35, 0xea, 0xb6, 0x1b, 0xde, 0x83, 0xdb, 0xc1, 0xbb, 0x4b, 0x6d, 0x31, + 0x03, 0xc7, 0x8a, 0x2b, 0x2b, 0xb4, 0xe6, 0xf9, 0x31, 0xa5, 0x5d, 0x11, 0x6e, 0x8f, 0x1f, 0x1d, + 0x04, 0x4a, 0xc4, 0x08, 0x8e, 0xe4, 0xc6, 0x8f, 0x15, 0x53, 0xff, 0x22, 0x0f, 0x4a, 0xb0, 0x75, + 0x0f, 0x1c, 0xb5, 0x0e, 0x70, 0x99, 0x7c, 0x4f, 0xf4, 0x8a, 0x09, 0x63, 0xa1, 0x30, 0x2a, 0xed, + 0x66, 0x53, 0xc7, 0xa1, 0xc7, 0x8e, 0x06, 0xe3, 0x71, 0x66, 0x21, 0x21, 0x3f, 0x0d, 0x9c, 0x15, + 0xa7, 0x01, 0x12, 0x3a, 0xc2, 0x55, 0x5d, 0xce, 0x42, 0x4b, 0x72, 0x25, 0x5f, 0xc8, 0xc0, 0x09, + 0xbf, 0x53, 0x16, 0x96, 0xd9, 0xb6, 0x78, 0xd2, 0x6e, 0x5b, 0x9e, 0x7f, 0x12, 0x79, 0xb1, 0x73, + 0x75, 0xbc, 0x93, 0xae, 0xa4, 0x15, 0xe6, 0x2d, 0x09, 0x02, 0x4b, 0x04, 0x0a, 0x61, 0x23, 0x4d, + 0xb5, 0x86, 0x44, 0x5a, 0x6a, 0xbd, 0x67, 0x6f, 0xc0, 0x99, 0x8e, 0x2c, 0xb7, 0xda, 0x86, 0xf6, + 0xca, 0xdb, 0xd0, 0xff, 0x27, 0x13, 0x4e, 0x44, 0x31, 0x21, 0x91, 0x2b, 0x00, 0x21, 0x48, 0x1c, + 0x4c, 0x47, 0x36, 0x37, 0xc6, 0x21, 0x14, 0x9a, 0x26, 0x51, 0x90, 0x05, 0x28, 0x08, 0xb1, 0xf0, + 0xec, 0xbe, 0x1f, 0xd8, 0xa2, 0x17, 0xae, 0xc8, 0x72, 0xc0, 0x43, 0xa7, 0xf8, 0x66, 0xc1, 0xe6, + 0xec, 0x0b, 0x30, 0xb8, 0xdb, 0xef, 0xfa, 0x42, 0x0e, 0x88, 0x7c, 0x8a, 0x3c, 0xc0, 0x2d, 0xf6, + 0x21, 0x9e, 0xc2, 0x2e, 0x41, 0x3f, 0xfb, 0x04, 0xcc, 0x77, 0x21, 0xc5, 0xb7, 0x6d, 0x0b, 0x98, + 0x16, 0x60, 0xc3, 0xe0, 0x52, 0x7d, 0xe9, 0xc1, 0xa5, 0xd4, 0x1f, 0xcd, 0xc1, 0x29, 0xb9, 0x43, + 0x4a, 0x14, 0x43, 0xe6, 0x1f, 0x75, 0xca, 0xbb, 0xd8, 0x29, 0x2a, 0x14, 0xf8, 0xe1, 0x41, 0xe4, + 0x2e, 0xe0, 0x17, 0x3b, 0x08, 0xd1, 0x04, 0x46, 0xfd, 0xc7, 0x59, 0x18, 0x5e, 0xb4, 0x5d, 0xaf, + 0xee, 0x50, 0x77, 0x51, 0x77, 0xdc, 0x07, 0xb8, 0x3b, 0x3e, 0x08, 0xc3, 0x18, 0x1e, 0xa8, 0x49, + 0x2d, 0x1e, 0x42, 0xa7, 0x57, 0x4a, 0x36, 0xe2, 0x23, 0x44, 0x5e, 0xa9, 0x08, 0x21, 0xd3, 0x7e, + 0xbe, 0xf3, 0x93, 0x82, 0x36, 0xf1, 0x6d, 0x1f, 0x87, 0xab, 0x3f, 0x97, 0x83, 0x21, 0x5f, 0xca, + 0x13, 0xe6, 0x61, 0x7d, 0xa9, 0x39, 0x58, 0x21, 0x5f, 0x05, 0x58, 0xb4, 0x1d, 0x4f, 0x6f, 0xcc, + 0x87, 0x9a, 0x8f, 0x57, 0x9c, 0x2d, 0x84, 0xf2, 0x32, 0x12, 0x09, 0xae, 0x5f, 0xe1, 0xb6, 0x9a, + 0x4f, 0x4c, 0x7c, 0xfd, 0x0a, 0xa0, 0x9a, 0x44, 0xa1, 0xfe, 0x5e, 0x16, 0x8e, 0xf9, 0x9d, 0x34, + 0x75, 0x9f, 0xd6, 0xda, 0x0f, 0xf2, 0xdc, 0x14, 0x95, 0x76, 0xef, 0x96, 0xd2, 0x56, 0xff, 0xa5, + 0x34, 0x91, 0x4c, 0x36, 0xec, 0xa3, 0x89, 0xe4, 0x1f, 0x42, 0xc7, 0xd5, 0xef, 0xcf, 0xc1, 0x09, + 0x5f, 0xea, 0xd3, 0x6d, 0x0b, 0x2f, 0x07, 0x26, 0xf5, 0x46, 0xe3, 0x41, 0x3e, 0x8d, 0x0f, 0xfa, + 0x82, 0x58, 0x10, 0xf1, 0xf6, 0x44, 0x8e, 0xbf, 0x15, 0x01, 0xae, 0xda, 0xa6, 0xa1, 0xc9, 0x44, + 0xe4, 0x55, 0x18, 0xf2, 0x7f, 0x16, 0x9d, 0xba, 0x7f, 0x04, 0xc7, 0xab, 0xfe, 0xa0, 0x90, 0xee, + 0x44, 0xc2, 0x0a, 0x44, 0x0a, 0xa8, 0xff, 0xb4, 0x00, 0x67, 0xef, 0x98, 0x96, 0x61, 0xaf, 0xb9, + 0x7e, 0x8a, 0xc8, 0x43, 0x7f, 0xd5, 0x75, 0xd0, 0xa9, 0x21, 0xdf, 0x80, 0x93, 0x71, 0x91, 0x3a, + 0x41, 0xe0, 0x6e, 0xd1, 0x3b, 0x6b, 0x9c, 0xa0, 0xea, 0x27, 0x8b, 0x14, 0xef, 0x65, 0x5a, 0x7a, + 0xc9, 0x78, 0xb6, 0xc9, 0xbe, 0xed, 0x64, 0x9b, 0x7c, 0x1c, 0x0a, 0x25, 0xbb, 0xa9, 0x9b, 0x7e, + 0x80, 0x19, 0x1c, 0xc5, 0x41, 0xbd, 0x88, 0xd1, 0x04, 0x05, 0xe3, 0x2f, 0x2a, 0xc6, 0x2e, 0x1b, + 0x08, 0xf9, 0xfb, 0x05, 0xd8, 0x2e, 0x4d, 0x93, 0x89, 0x88, 0x0d, 0xc3, 0xa2, 0x3a, 0xf1, 0xba, + 0x05, 0x78, 0x78, 0x7a, 0xd6, 0x97, 0x51, 0x67, 0xb5, 0xba, 0x12, 0x29, 0xc7, 0x8f, 0x51, 0x3c, + 0x09, 0xa6, 0xf8, 0x18, 0xfe, 0xce, 0xa5, 0x45, 0xf9, 0x4b, 0x42, 0xc0, 0x49, 0x66, 0x30, 0x29, + 0x04, 0x9c, 0x65, 0x64, 0x22, 0x32, 0x05, 0x63, 0x18, 0x5e, 0x39, 0x38, 0x4a, 0x31, 0x95, 0x18, + 0xc2, 0x4d, 0x25, 0x3e, 0x9a, 0xf0, 0x88, 0xcc, 0xec, 0xe3, 0xaa, 0x35, 0x81, 0xd6, 0x92, 0x25, + 0xce, 0xbe, 0x06, 0x24, 0xd9, 0xe6, 0x1d, 0x3d, 0x9b, 0xfc, 0xef, 0xd2, 0xb9, 0xee, 0xb0, 0x1b, + 0xbe, 0xec, 0xc7, 0x6c, 0x17, 0x49, 0x1d, 0xd6, 0xfb, 0x6e, 0xa6, 0x0e, 0x2b, 0xec, 0x6b, 0xea, + 0x30, 0xf5, 0xd7, 0x32, 0x30, 0x96, 0x88, 0x33, 0x4e, 0x9e, 0x01, 0xe0, 0x10, 0x29, 0x9e, 0x23, + 0x06, 0x48, 0x09, 0x63, 0x8f, 0x8b, 0x35, 0x30, 0x24, 0x23, 0x57, 0xa1, 0x9f, 0xff, 0x12, 0x31, + 0x98, 0x92, 0x45, 0xda, 0x6d, 0xd3, 0xd0, 0x02, 0xa2, 0xb0, 0x16, 0x7c, 0x38, 0xcc, 0xa5, 0x16, + 0xf1, 0xd6, 0x5b, 0x41, 0x2d, 0x8c, 0x4c, 0xfd, 0x7c, 0x16, 0x86, 0x82, 0x06, 0x17, 0x8d, 0x83, + 0xd2, 0xb9, 0x82, 0x08, 0xd9, 0x9e, 0xdb, 0x2a, 0x64, 0x7b, 0x6c, 0x52, 0x15, 0x31, 0xda, 0xf7, + 0xcf, 0xef, 0xe9, 0x8b, 0x59, 0x38, 0x16, 0xd4, 0x7a, 0x80, 0x6f, 0x54, 0xef, 0x21, 0x91, 0x7c, + 0x21, 0x03, 0xca, 0x84, 0xd9, 0x68, 0x98, 0x56, 0xbd, 0x6c, 0xad, 0xd8, 0x4e, 0x13, 0x67, 0xbd, + 0x83, 0xbb, 0xa7, 0x55, 0x7f, 0x30, 0x03, 0x63, 0xa2, 0x41, 0x93, 0xba, 0x63, 0x1c, 0xdc, 0x25, + 0x58, 0xbc, 0x25, 0x07, 0xa7, 0x2f, 0xea, 0x57, 0xb3, 0x00, 0xb3, 0x76, 0xed, 0xee, 0x21, 0x77, + 0x9b, 0x7a, 0x09, 0x0a, 0x3c, 0x10, 0x96, 0xd0, 0xd8, 0x31, 0xe1, 0x1e, 0xc4, 0x3e, 0x8d, 0x23, + 0x26, 0x46, 0xc5, 0x7c, 0x5c, 0xe0, 0x81, 0xb4, 0x94, 0x8c, 0x26, 0x8a, 0xb0, 0x4a, 0x19, 0x9d, + 0x58, 0x30, 0x82, 0x4a, 0x19, 0x2c, 0x5a, 0xe9, 0xe6, 0xc6, 0x78, 0xbe, 0x61, 0xd7, 0xee, 0x6a, + 0x48, 0xaf, 0xfe, 0x7d, 0x86, 0xcb, 0xee, 0x90, 0x3b, 0x7f, 0xfa, 0x9f, 0x9f, 0xdf, 0xe1, 0xe7, + 0xff, 0x50, 0x06, 0x4e, 0x68, 0xb4, 0x66, 0xdf, 0xa3, 0xce, 0xfa, 0xa4, 0x6d, 0xd0, 0x1b, 0xd4, + 0xa2, 0xce, 0x41, 0x8d, 0xa8, 0xff, 0x09, 0x73, 0x5c, 0x84, 0x8d, 0xb9, 0xe5, 0x52, 0xe3, 0xf0, + 0xe4, 0x1f, 0x51, 0x7f, 0xb3, 0x0f, 0x94, 0xd4, 0xad, 0xed, 0xa1, 0xdd, 0xce, 0x75, 0x3c, 0xaf, + 0xe4, 0xf7, 0xeb, 0xbc, 0xd2, 0xbb, 0xb3, 0xf3, 0x4a, 0x61, 0xa7, 0xe7, 0x95, 0xbe, 0xed, 0x9c, + 0x57, 0x9a, 0xf1, 0xf3, 0x4a, 0x3f, 0x9e, 0x57, 0x9e, 0xe9, 0x7a, 0x5e, 0x99, 0xb2, 0x8c, 0x5d, + 0x9e, 0x56, 0x0e, 0x6d, 0x6e, 0xdc, 0xdd, 0x1c, 0xb3, 0x2e, 0xb1, 0x49, 0xb1, 0x66, 0x3b, 0x06, + 0x35, 0xc4, 0xe9, 0x0a, 0xaf, 0xf6, 0x1d, 0x01, 0xd3, 0x02, 0x6c, 0x22, 0xd1, 0xf0, 0xf0, 0x76, + 0x12, 0x0d, 0xef, 0xc3, 0xf9, 0xeb, 0x73, 0x59, 0x18, 0x9b, 0xa4, 0x8e, 0xc7, 0x23, 0x6d, 0xee, + 0x87, 0xe5, 0x5a, 0x11, 0x8e, 0x49, 0x0c, 0x71, 0x47, 0x9e, 0x0d, 0xad, 0xf1, 0x6a, 0xd4, 0xf1, + 0xe2, 0xc6, 0x7c, 0x71, 0x7a, 0x56, 0xbd, 0x9f, 0xec, 0x4b, 0x8c, 0xdd, 0xa0, 0x7a, 0x1f, 0xce, + 0x05, 0x69, 0x8a, 0x5f, 0x5a, 0x40, 0x2f, 0xe5, 0xef, 0xca, 0xef, 0x3c, 0x7f, 0x97, 0xfa, 0x2b, + 0x19, 0xb8, 0xa8, 0x51, 0x8b, 0xae, 0xe9, 0xcb, 0x0d, 0x2a, 0x35, 0x4b, 0xac, 0x0c, 0x6c, 0xd6, + 0x30, 0xdd, 0xa6, 0xee, 0xd5, 0x56, 0xf7, 0x24, 0xa3, 0x69, 0x18, 0x92, 0xe7, 0xaf, 0x1d, 0xcc, + 0x6d, 0x91, 0x72, 0xea, 0x6f, 0xe6, 0xa1, 0x6f, 0xc2, 0xf6, 0x5e, 0xb7, 0xf7, 0x98, 0x50, 0x2e, + 0x9c, 0xf2, 0xb3, 0x3b, 0xb8, 0xd0, 0x79, 0x0a, 0x2b, 0x97, 0x62, 0xec, 0xa3, 0xa5, 0xe7, 0xb2, + 0x9d, 0xc8, 0x45, 0xe0, 0x93, 0xed, 0x30, 0x95, 0xdc, 0x73, 0x30, 0x80, 0x41, 0x5a, 0xa4, 0x2b, + 0x57, 0xb4, 0xa3, 0xf6, 0x18, 0x30, 0x5e, 0x47, 0x48, 0x4a, 0x3e, 0x1a, 0x09, 0x0d, 0x5a, 0xd8, + 0x7b, 0xea, 0x39, 0x39, 0x4a, 0xe8, 0x33, 0xfc, 0xb5, 0x0e, 0xdb, 0x24, 0xa5, 0xe9, 0xc0, 0xab, + 0x92, 0x58, 0x93, 0x02, 0xc2, 0x7d, 0x4c, 0x0b, 0x37, 0x09, 0xc3, 0x13, 0xb6, 0x27, 0xd9, 0xec, + 0x0e, 0x84, 0xde, 0x9a, 0x4c, 0xf2, 0xe9, 0x06, 0xbb, 0xd1, 0x32, 0xea, 0xb7, 0xf3, 0x30, 0xe4, + 0xff, 0x3c, 0x20, 0xdd, 0x79, 0x12, 0x0a, 0x33, 0xb6, 0x94, 0xa9, 0x00, 0xed, 0x7c, 0x57, 0x6d, + 0x37, 0x66, 0xc0, 0x2c, 0x88, 0x98, 0xd4, 0xe7, 0x6d, 0x43, 0xb6, 0x52, 0x47, 0xa9, 0x5b, 0xb6, + 0x91, 0xf0, 0xf2, 0x0d, 0x08, 0xc9, 0x45, 0xc8, 0xa3, 0x81, 0xbf, 0x74, 0x5b, 0x1f, 0x33, 0xea, + 0x47, 0xbc, 0xa4, 0x95, 0x85, 0x9d, 0x6a, 0x65, 0xdf, 0x6e, 0xb5, 0xb2, 0x7f, 0x7f, 0xb5, 0xf2, + 0x4d, 0x18, 0xc2, 0x9a, 0xfc, 0x44, 0x67, 0x5b, 0x2f, 0xac, 0x67, 0xc4, 0xda, 0x37, 0xcc, 0xdb, + 0x2d, 0xd2, 0x9d, 0xe1, 0x92, 0x17, 0x61, 0x15, 0xd3, 0x5d, 0xd8, 0xc3, 0x71, 0xfa, 0xcf, 0x33, + 0xd0, 0x77, 0xcb, 0xba, 0x6b, 0xd9, 0x6b, 0x7b, 0xd3, 0xb8, 0x67, 0x60, 0x50, 0xb0, 0x91, 0x56, + 0x17, 0x74, 0xdc, 0x6e, 0x73, 0x70, 0x15, 0x39, 0x69, 0x32, 0x15, 0x79, 0x39, 0x28, 0x84, 0x3e, + 0x3c, 0xb9, 0x30, 0xd7, 0x87, 0x5f, 0xa8, 0x16, 0x4d, 0x4f, 0x20, 0x93, 0x93, 0x73, 0x90, 0x2f, + 0xb1, 0xa6, 0x4a, 0xc1, 0x6e, 0x59, 0x53, 0x34, 0x84, 0xaa, 0x9f, 0xcb, 0xc3, 0x48, 0xec, 0xe2, + 0xeb, 0x71, 0x18, 0x10, 0x17, 0x4f, 0xa6, 0x9f, 0x2f, 0x01, 0x7d, 0x7c, 0x02, 0xa0, 0xd6, 0xcf, + 0xff, 0x2c, 0x1b, 0xe4, 0x43, 0xd0, 0x67, 0xbb, 0xb8, 0x28, 0xe2, 0xb7, 0x8c, 0x84, 0x43, 0x68, + 0xa1, 0xc2, 0xda, 0xce, 0x07, 0x87, 0x20, 0x91, 0x35, 0xd2, 0x76, 0xf1, 0xd3, 0xae, 0xc3, 0x80, + 0xee, 0xba, 0xd4, 0xab, 0x7a, 0x7a, 0x5d, 0x4e, 0xa1, 0x10, 0x00, 0xe5, 0xd1, 0x81, 0xc0, 0x25, + 0xbd, 0x4e, 0x5e, 0x83, 0xe1, 0x9a, 0x43, 0x71, 0xd9, 0xd4, 0x1b, 0xac, 0x95, 0xd2, 0xb6, 0x36, + 0x82, 0x90, 0x1f, 0x49, 0x42, 0x44, 0xd9, 0x20, 0xb7, 0x61, 0x58, 0x7c, 0x0e, 0x37, 0xb0, 0xc7, + 0x81, 0x36, 0x12, 0x2e, 0x63, 0x5c, 0x24, 0xdc, 0xc4, 0x5e, 0xf8, 0x59, 0xc8, 0xe4, 0x32, 0x5f, + 0x43, 0x22, 0x25, 0x0b, 0x40, 0xd6, 0xe8, 0x72, 0x55, 0x6f, 0x7b, 0xab, 0xac, 0x2e, 0x1e, 0x01, + 0x5c, 0x64, 0x0e, 0x44, 0xe7, 0x84, 0x24, 0x56, 0xf6, 0xd9, 0x58, 0xa3, 0xcb, 0xc5, 0x08, 0x92, + 0xdc, 0x81, 0x93, 0xc9, 0x22, 0xec, 0x93, 0xf9, 0x0b, 0xc0, 0xa3, 0x9b, 0x1b, 0xe3, 0xe3, 0xa9, + 0x04, 0x12, 0xdb, 0xe3, 0x09, 0xb6, 0x65, 0xe3, 0xf5, 0x7c, 0x7f, 0xdf, 0x68, 0xbf, 0x36, 0xc2, + 0xca, 0xfa, 0x5b, 0x48, 0xd3, 0x50, 0xbf, 0x91, 0x61, 0x5b, 0x45, 0xf6, 0x41, 0x98, 0x3a, 0x99, + 0xe9, 0x7a, 0x73, 0x87, 0xba, 0xde, 0x0c, 0x93, 0x1c, 0x16, 0xdc, 0x2e, 0xb3, 0xab, 0x26, 0xb0, + 0xe4, 0x0a, 0x14, 0x0c, 0xf9, 0xd6, 0xec, 0x54, 0xb4, 0x13, 0xfc, 0x7a, 0x34, 0x41, 0x45, 0x2e, + 0x41, 0x9e, 0x2d, 0x59, 0xf1, 0x23, 0xb3, 0xbc, 0xbb, 0xd0, 0x90, 0x42, 0xfd, 0xde, 0x2c, 0x0c, + 0x49, 0x5f, 0x73, 0x6d, 0x4f, 0x9f, 0xf3, 0xe2, 0xf6, 0x9a, 0xe9, 0x5b, 0xb6, 0xe0, 0x59, 0xca, + 0x6f, 0xf2, 0xf5, 0x40, 0x14, 0xdb, 0x7a, 0x75, 0x12, 0x82, 0x79, 0x4e, 0x7c, 0x68, 0x61, 0xfb, + 0xc7, 0x47, 0x46, 0xff, 0x7a, 0xbe, 0x3f, 0x3b, 0x9a, 0x7b, 0x3d, 0xdf, 0x9f, 0x1f, 0xed, 0xc5, + 0x70, 0x59, 0x18, 0xa1, 0x9a, 0x9f, 0xcd, 0xad, 0x15, 0xb3, 0x7e, 0xc8, 0x5d, 0x3c, 0xf6, 0x37, + 0x94, 0x58, 0x4c, 0x36, 0x87, 0xdc, 0xdf, 0xe3, 0x5d, 0x95, 0xcd, 0x51, 0x52, 0x44, 0x21, 0x9b, + 0xbf, 0xc8, 0x80, 0x92, 0x2a, 0x9b, 0xe2, 0x01, 0x19, 0x3b, 0xec, 0x5f, 0x6a, 0xc4, 0x6f, 0x65, + 0x61, 0xac, 0x6c, 0x79, 0xb4, 0xce, 0x4f, 0x8c, 0x87, 0x7c, 0xaa, 0xb8, 0x09, 0x83, 0xd2, 0xc7, + 0x88, 0x3e, 0x7f, 0x28, 0x38, 0x8f, 0x87, 0xa8, 0x0e, 0x9c, 0xe4, 0xd2, 0xfb, 0x98, 0x4d, 0x3d, + 0x26, 0xe4, 0x43, 0x3e, 0xe7, 0x1c, 0x0e, 0x21, 0x1f, 0xf2, 0xc9, 0xeb, 0x3d, 0x2a, 0xe4, 0xff, + 0x25, 0x0b, 0xc7, 0x53, 0x2a, 0x27, 0x17, 0xa1, 0xaf, 0xd2, 0x5e, 0xc6, 0xe8, 0x58, 0x99, 0xd0, + 0x2c, 0xd8, 0x6d, 0x2f, 0x63, 0x60, 0x2c, 0xcd, 0x47, 0x92, 0x25, 0xf4, 0x81, 0x5f, 0x28, 0x97, + 0x26, 0x85, 0x54, 0x55, 0xc9, 0x9b, 0x9f, 0x81, 0xd3, 0xbe, 0x2c, 0xf0, 0x93, 0xb7, 0x4d, 0xa3, + 0x16, 0xf3, 0x93, 0x67, 0x65, 0xc8, 0xc7, 0x60, 0xa0, 0xf8, 0x76, 0xdb, 0xa1, 0xc8, 0x97, 0x4b, + 0xfc, 0x7d, 0x01, 0x5f, 0x1f, 0x91, 0xc6, 0x99, 0xbb, 0xfc, 0x33, 0x8a, 0x38, 0xef, 0x90, 0x21, + 0x59, 0x80, 0xc2, 0x0d, 0xd3, 0x9b, 0x69, 0x2f, 0x8b, 0x5e, 0x08, 0x22, 0x68, 0x71, 0x68, 0x1a, + 0x5f, 0x3c, 0x95, 0xf3, 0x48, 0xc0, 0xf2, 0x19, 0x88, 0x17, 0x50, 0x3f, 0x9f, 0x81, 0xb3, 0x9d, + 0x3f, 0x97, 0x3c, 0x05, 0x7d, 0xec, 0xa8, 0x5f, 0xd4, 0xe6, 0x85, 0x2c, 0x79, 0x5e, 0x52, 0xbb, + 0x41, 0xab, 0xba, 0x23, 0x9f, 0x1e, 0x7c, 0x32, 0xf2, 0x0a, 0x0c, 0x96, 0x5d, 0xb7, 0x4d, 0x9d, + 0xca, 0x33, 0xb7, 0xb4, 0xb2, 0x38, 0x64, 0xe2, 0x21, 0xc6, 0x44, 0x70, 0xd5, 0x7d, 0x26, 0x16, + 0x50, 0x4b, 0xa6, 0x57, 0x3f, 0x93, 0x81, 0x73, 0xdd, 0xc4, 0x44, 0x9e, 0x81, 0xfe, 0x25, 0x6a, + 0xe9, 0x96, 0x57, 0x2e, 0x89, 0x26, 0xe1, 0x99, 0xcd, 0x43, 0x58, 0xf4, 0xe8, 0x11, 0x10, 0xb2, + 0x42, 0xfc, 0xa2, 0x32, 0xb0, 0x8c, 0xe0, 0x97, 0xaa, 0x08, 0x8b, 0x15, 0xf2, 0x09, 0xd5, 0x3f, + 0xce, 0xc2, 0xd0, 0x62, 0xa3, 0x5d, 0x37, 0xa5, 0x95, 0x68, 0xd7, 0x1b, 0x78, 0x7f, 0x3b, 0x9d, + 0xdd, 0xd9, 0x76, 0x9a, 0x8d, 0x5f, 0x67, 0x97, 0xe3, 0xd7, 0x2f, 0x47, 0x5e, 0x86, 0x42, 0x0b, + 0xbf, 0x23, 0x7e, 0xb5, 0xcb, 0xbf, 0xae, 0xd3, 0xd5, 0x2e, 0x2f, 0xc3, 0x06, 0x6c, 0x6d, 0x0f, + 0x03, 0x36, 0x2c, 0x2b, 0x09, 0x34, 0x5c, 0x75, 0x8e, 0x04, 0xba, 0x2f, 0x02, 0x0d, 0x57, 0x98, + 0x23, 0x81, 0xee, 0x41, 0xa0, 0x9f, 0xce, 0xc2, 0x48, 0xb4, 0x4a, 0xf2, 0x14, 0x0c, 0xf2, 0x6a, + 0xf8, 0x45, 0x53, 0x46, 0x32, 0x45, 0x0e, 0xc1, 0x1a, 0xf0, 0x1f, 0x78, 0xad, 0xf4, 0x4a, 0xf0, + 0x31, 0x5c, 0x94, 0xc7, 0x84, 0x45, 0x02, 0x67, 0x7c, 0xfb, 0x69, 0x3e, 0x23, 0x73, 0x12, 0x79, + 0x46, 0x16, 0x5f, 0xf3, 0x32, 0x1c, 0x5b, 0xd5, 0xdd, 0x6a, 0x78, 0x63, 0xc4, 0xdf, 0x93, 0xfb, + 0xb9, 0x65, 0x56, 0x0c, 0xa5, 0x8d, 0xac, 0xea, 0xee, 0x64, 0xf8, 0x9b, 0x4c, 0x01, 0x71, 0x68, + 0xdb, 0xa5, 0x51, 0x06, 0x79, 0x64, 0x20, 0x72, 0x4a, 0xc7, 0xb1, 0xda, 0x18, 0x87, 0x49, 0x6c, + 0xd4, 0x8f, 0xc2, 0x99, 0x8e, 0x2b, 0x0a, 0xf9, 0x10, 0x0c, 0x2d, 0x38, 0x75, 0xdd, 0x32, 0xdf, + 0xe6, 0x1b, 0x82, 0x4c, 0x78, 0x27, 0x68, 0x4b, 0x70, 0xf9, 0x9e, 0x4a, 0xa6, 0x57, 0xdf, 0xa1, + 0xd0, 0xbb, 0x60, 0xd1, 0x85, 0x15, 0xf2, 0x34, 0x0c, 0x30, 0xfd, 0x9a, 0xb5, 0x99, 0xb4, 0x32, + 0xc2, 0x7e, 0x43, 0x52, 0x3c, 0x44, 0xcc, 0xf4, 0x68, 0x21, 0x15, 0xb9, 0xce, 0x93, 0xe4, 0xf3, + 0x29, 0x59, 0x48, 0x98, 0xc8, 0x65, 0x38, 0x66, 0xa6, 0x47, 0x93, 0xe8, 0xfc, 0x52, 0xc2, 0x0b, + 0x28, 0x97, 0x2c, 0xc5, 0x31, 0x7e, 0x29, 0x31, 0x9c, 0x66, 0xd3, 0xf2, 0xcf, 0xc7, 0x4f, 0x6f, + 0x49, 0x8a, 0x99, 0x1e, 0x2d, 0x3d, 0x6f, 0xfd, 0x90, 0x6c, 0xb5, 0x1a, 0x37, 0x3a, 0x91, 0x71, + 0x33, 0x3d, 0x5a, 0x84, 0x96, 0x3c, 0x0f, 0x83, 0xe2, 0xf7, 0xeb, 0xb6, 0x78, 0xd1, 0x96, 0x42, + 0x16, 0x49, 0xa8, 0x99, 0x1e, 0x4d, 0xa6, 0x94, 0x2a, 0x5d, 0x74, 0x4c, 0xcb, 0x13, 0x8e, 0xd0, + 0xf1, 0x4a, 0x11, 0x27, 0x55, 0x8a, 0xbf, 0xc9, 0x2b, 0x30, 0x1c, 0xc4, 0x82, 0x7a, 0x8b, 0xd6, + 0x3c, 0x71, 0xf9, 0x7e, 0x32, 0x56, 0x98, 0x23, 0x67, 0x7a, 0xb4, 0x28, 0x35, 0xb9, 0x04, 0x05, + 0x8d, 0xba, 0xe6, 0xdb, 0xfe, 0x73, 0xf5, 0x88, 0x34, 0x2d, 0x98, 0x6f, 0x33, 0x29, 0x09, 0x3c, + 0xeb, 0x9d, 0xf0, 0x7d, 0x5c, 0x5c, 0x95, 0x93, 0x58, 0x2d, 0x53, 0x96, 0xc1, 0x7a, 0x47, 0x32, + 0x8e, 0x78, 0x2d, 0x8c, 0x90, 0x25, 0xf2, 0x6a, 0x0e, 0xc6, 0x43, 0x11, 0xc8, 0xd8, 0x99, 0x1e, + 0x2d, 0x46, 0x2f, 0x49, 0xb5, 0x64, 0xba, 0x77, 0x45, 0x50, 0xd2, 0xb8, 0x54, 0x19, 0x4a, 0x92, + 0x2a, 0xfb, 0x29, 0x55, 0x3d, 0x4f, 0xbd, 0x35, 0xdb, 0xb9, 0x2b, 0x42, 0x90, 0xc6, 0xab, 0x16, + 0x58, 0xa9, 0x6a, 0x01, 0x91, 0xab, 0x66, 0x93, 0xf5, 0x48, 0x7a, 0xd5, 0xba, 0xa7, 0xcb, 0x55, + 0xf3, 0x9b, 0x40, 0xbf, 0x93, 0x66, 0xa9, 0x7e, 0x8f, 0xa7, 0x37, 0x4f, 0x76, 0x28, 0xe2, 0xa4, + 0x0e, 0xc5, 0xdf, 0xac, 0x52, 0x29, 0x85, 0xb5, 0xc8, 0x5f, 0x1e, 0x54, 0x2a, 0xa1, 0x58, 0xa5, + 0x72, 0xb2, 0xeb, 0xeb, 0x72, 0x66, 0x67, 0x65, 0x2c, 0xda, 0x41, 0x21, 0x86, 0x75, 0x90, 0x94, + 0x01, 0x7a, 0x1c, 0xb3, 0xc6, 0x2a, 0x04, 0xc9, 0x07, 0x83, 0x16, 0x4e, 0x2e, 0xce, 0xf4, 0x68, + 0x98, 0x4f, 0x56, 0xe5, 0xf9, 0x88, 0x95, 0xe3, 0x48, 0x31, 0xe4, 0x53, 0x30, 0xd8, 0x4c, 0x8f, + 0xc6, 0x73, 0x15, 0x3f, 0x2d, 0x65, 0xfe, 0x53, 0x4e, 0x44, 0xa7, 0x88, 0x00, 0xc1, 0xa6, 0x88, + 0x30, 0x3f, 0xe0, 0x74, 0x32, 0x3b, 0x9e, 0x72, 0x32, 0xba, 0x32, 0xc5, 0xf1, 0x33, 0x3d, 0x5a, + 0x32, 0xa3, 0xde, 0xf3, 0x91, 0x84, 0x71, 0xca, 0xa9, 0x58, 0x9c, 0xb0, 0x10, 0xc5, 0xc4, 0x25, + 0xa7, 0x96, 0x5b, 0x88, 0x25, 0x37, 0x17, 0x93, 0xd5, 0xe9, 0xe8, 0xc1, 0x29, 0x85, 0x64, 0xa6, + 0x47, 0x4b, 0x2b, 0x49, 0x26, 0x13, 0x69, 0xdb, 0x14, 0x25, 0x6a, 0x9b, 0x13, 0x43, 0xcf, 0xf4, + 0x68, 0x89, 0x44, 0x6f, 0xd7, 0xe5, 0x7c, 0x69, 0xca, 0x99, 0x68, 0x27, 0x86, 0x18, 0xd6, 0x89, + 0x52, 0x5e, 0xb5, 0xeb, 0x72, 0x0e, 0x2d, 0xe5, 0x6c, 0xb2, 0x54, 0x38, 0x73, 0x4a, 0xb9, 0xb6, + 0xb4, 0xf4, 0xb4, 0x40, 0xca, 0x43, 0x22, 0x31, 0xab, 0x28, 0x9f, 0x46, 0x33, 0xd3, 0xa3, 0xa5, + 0xa7, 0x14, 0xd2, 0xd2, 0xf3, 0xe9, 0x28, 0xe7, 0xba, 0xf1, 0x0c, 0x5a, 0x97, 0x9e, 0x8b, 0x47, + 0xef, 0x92, 0xdd, 0x44, 0x39, 0x1f, 0x3d, 0x62, 0x75, 0x24, 0x9c, 0xe9, 0xd1, 0xba, 0xe4, 0x48, + 0xb9, 0xd5, 0x21, 0xd5, 0x88, 0x72, 0x21, 0x9a, 0x97, 0x39, 0x95, 0x68, 0xa6, 0x47, 0xeb, 0x90, + 0xa8, 0xe4, 0x56, 0x87, 0x4c, 0x14, 0xca, 0x78, 0x57, 0xb6, 0x81, 0x3c, 0x3a, 0xe4, 0xb1, 0x58, + 0x48, 0x4d, 0xe2, 0xa0, 0x3c, 0x1c, 0x55, 0xdd, 0x14, 0x12, 0xa6, 0xba, 0x69, 0xe9, 0x1f, 0x16, + 0x52, 0xb3, 0x0e, 0x28, 0x8f, 0x74, 0x61, 0x18, 0xb4, 0x31, 0x35, 0x5f, 0xc1, 0x42, 0x6a, 0xd8, + 0x7f, 0x45, 0x8d, 0x32, 0x4c, 0x21, 0x61, 0x0c, 0xd3, 0x12, 0x06, 0x2c, 0xa4, 0x46, 0x87, 0x57, + 0x1e, 0xed, 0xc2, 0x30, 0x6c, 0x61, 0x5a, 0x5c, 0xf9, 0xe7, 0x23, 0xe1, 0xd9, 0x95, 0xf7, 0x45, + 0xe7, 0x0d, 0x09, 0xc5, 0xe6, 0x0d, 0x39, 0x90, 0xfb, 0x64, 0x22, 0x00, 0xad, 0xf2, 0x58, 0x74, + 0x98, 0xc7, 0xd0, 0x6c, 0x98, 0xc7, 0x43, 0xd6, 0x4e, 0x26, 0x02, 0x71, 0x2a, 0x17, 0x3b, 0x31, + 0x41, 0x74, 0x94, 0x09, 0x0f, 0xdd, 0x59, 0x4e, 0x89, 0x04, 0xa9, 0xbc, 0x3f, 0x6a, 0x57, 0x9e, + 0x20, 0x98, 0xe9, 0xd1, 0x52, 0xe2, 0x47, 0x6a, 0xe9, 0x61, 0x8f, 0x94, 0x4b, 0xd1, 0x61, 0x9b, + 0x46, 0xc3, 0x86, 0x6d, 0x6a, 0xc8, 0xa4, 0xd9, 0x34, 0xe7, 0x17, 0xe5, 0x72, 0x74, 0x63, 0x96, + 0xa4, 0x60, 0x1b, 0xb3, 0x14, 0xa7, 0x19, 0x2d, 0x3d, 0x90, 0x8f, 0xf2, 0x78, 0xd7, 0x16, 0x22, + 0x4d, 0x4a, 0x0b, 0x79, 0x5c, 0x9b, 0x70, 0xef, 0x74, 0xab, 0xd5, 0xb0, 0x75, 0x43, 0xf9, 0x40, + 0xea, 0xde, 0x89, 0x23, 0xa5, 0xbd, 0x13, 0x07, 0xb0, 0x55, 0x5e, 0xf6, 0xb1, 0x50, 0x9e, 0x88, + 0xae, 0xf2, 0x32, 0x8e, 0xad, 0xf2, 0x11, 0x7f, 0x8c, 0xc9, 0x84, 0x3f, 0x82, 0xf2, 0x64, 0x54, + 0x01, 0x62, 0x68, 0xa6, 0x00, 0x71, 0x0f, 0x86, 0x4f, 0x74, 0xb6, 0xe0, 0x57, 0xae, 0x20, 0xb7, + 0x87, 0x7d, 0x6e, 0x9d, 0xe8, 0x66, 0x7a, 0xb4, 0xce, 0x5e, 0x00, 0xe5, 0x14, 0x83, 0x7c, 0xe5, + 0x6a, 0x54, 0xc1, 0x12, 0x04, 0x4c, 0xc1, 0x92, 0x66, 0xfc, 0xe5, 0x14, 0x8b, 0x7a, 0xe5, 0xa9, + 0x8e, 0xac, 0x82, 0x6f, 0x4e, 0xb1, 0xc3, 0xbf, 0x2e, 0x9b, 0xc4, 0x2b, 0x4f, 0x47, 0x17, 0xbb, + 0x10, 0xc3, 0x16, 0x3b, 0xc9, 0x74, 0xfe, 0xba, 0x6c, 0x0c, 0xae, 0x5c, 0x4b, 0x96, 0x0a, 0x97, + 0x48, 0xc9, 0x68, 0x5c, 0x4b, 0xb7, 0xa1, 0x56, 0x9e, 0x89, 0x6a, 0x5d, 0x1a, 0x0d, 0xd3, 0xba, + 0x54, 0xfb, 0xeb, 0xe9, 0xa4, 0x29, 0xb4, 0x72, 0x3d, 0x7e, 0x26, 0x8f, 0xe2, 0xd9, 0xce, 0x27, + 0x61, 0x3e, 0xfd, 0x5a, 0x3c, 0x26, 0x9f, 0xf2, 0x6c, 0xec, 0xd9, 0x39, 0x82, 0x65, 0xfb, 0xdb, + 0x58, 0x0c, 0xbf, 0xd7, 0xe2, 0x61, 0xec, 0x94, 0xe7, 0xd2, 0x39, 0x04, 0xba, 0x12, 0x0f, 0x7b, + 0xf7, 0x5a, 0x3c, 0xf2, 0x9b, 0xf2, 0x7c, 0x3a, 0x87, 0x40, 0xba, 0xf1, 0x48, 0x71, 0x4f, 0x4b, + 0xb1, 0xe8, 0x95, 0x0f, 0x46, 0xb7, 0x8e, 0x01, 0x82, 0x6d, 0x1d, 0xc3, 0x88, 0xf5, 0x4f, 0x4b, + 0x31, 0xdc, 0x95, 0x17, 0x12, 0x45, 0x82, 0xc6, 0x4a, 0x91, 0xde, 0x9f, 0x96, 0x62, 0x9f, 0x2b, + 0x2f, 0x26, 0x8a, 0x04, 0xad, 0x93, 0x22, 0xa4, 0x1b, 0xdd, 0x9c, 0x64, 0x95, 0x97, 0xa2, 0x97, + 0xd1, 0x9d, 0x29, 0x67, 0x7a, 0xb4, 0x6e, 0xce, 0xb6, 0x9f, 0xe8, 0x6c, 0x58, 0xae, 0xbc, 0x1c, + 0x1d, 0xc2, 0x9d, 0xe8, 0xd8, 0x10, 0xee, 0x68, 0x9c, 0xfe, 0x4a, 0x2c, 0x60, 0x86, 0xf2, 0x4a, + 0x74, 0x8a, 0x8b, 0x20, 0xd9, 0x14, 0x17, 0x0f, 0xaf, 0x11, 0x89, 0x04, 0xa1, 0x7c, 0x28, 0x3a, + 0xc5, 0xc9, 0x38, 0x36, 0xc5, 0x45, 0xa2, 0x46, 0x4c, 0x26, 0x02, 0x14, 0x28, 0xaf, 0x46, 0xa7, + 0xb8, 0x18, 0x9a, 0x4d, 0x71, 0xf1, 0x90, 0x06, 0xaf, 0xc4, 0xfc, 0xf4, 0x95, 0xd7, 0xd2, 0xdb, + 0x8f, 0x48, 0xb9, 0xfd, 0xdc, 0xab, 0x5f, 0x4b, 0x77, 0x38, 0x57, 0x8a, 0xd1, 0xf1, 0x9b, 0x46, + 0xc3, 0xc6, 0x6f, 0xaa, 0xb3, 0x7a, 0xfc, 0xe0, 0x20, 0xb4, 0x6a, 0xa2, 0xcb, 0xc1, 0x21, 0xdc, + 0x8a, 0xa4, 0x80, 0x23, 0x67, 0x64, 0x7e, 0x10, 0x9a, 0xec, 0x70, 0x46, 0xf6, 0x8f, 0x41, 0x31, + 0x7a, 0x36, 0xbb, 0x26, 0xec, 0x9c, 0x95, 0x52, 0x74, 0x76, 0x4d, 0x10, 0xb0, 0xd9, 0x35, 0x69, + 0x1d, 0x3d, 0x0d, 0xa3, 0x42, 0x8b, 0xb8, 0xf9, 0xb6, 0x69, 0xd5, 0x95, 0xa9, 0x98, 0xbf, 0x67, + 0x0c, 0xcf, 0x66, 0xa7, 0x38, 0x0c, 0xd7, 0x6b, 0x0e, 0x9b, 0x6c, 0x98, 0xad, 0x65, 0x5b, 0x77, + 0x8c, 0x0a, 0xb5, 0x0c, 0x65, 0x3a, 0xb6, 0x5e, 0xa7, 0xd0, 0xe0, 0x7a, 0x9d, 0x02, 0xc7, 0x38, + 0x74, 0x31, 0xb8, 0x46, 0x6b, 0xd4, 0xbc, 0x47, 0x95, 0x1b, 0xc8, 0x76, 0xbc, 0x13, 0x5b, 0x41, + 0x36, 0xd3, 0xa3, 0x75, 0xe2, 0xc0, 0xf6, 0xea, 0x73, 0xeb, 0x95, 0x37, 0x66, 0x83, 0x18, 0x07, + 0x8b, 0x0e, 0x6d, 0xe9, 0x0e, 0x55, 0x66, 0xa2, 0x7b, 0xf5, 0x54, 0x22, 0xb6, 0x57, 0x4f, 0x45, + 0x24, 0xd9, 0xfa, 0x63, 0xa1, 0xdc, 0x8d, 0x6d, 0x38, 0x22, 0xd2, 0x4b, 0xb3, 0xd9, 0x29, 0x8a, + 0x60, 0x02, 0x9a, 0xb5, 0xad, 0x3a, 0xde, 0x54, 0xbc, 0x1e, 0x9d, 0x9d, 0x3a, 0x53, 0xb2, 0xd9, + 0xa9, 0x33, 0x96, 0xa9, 0x7a, 0x14, 0xcb, 0xc7, 0xe0, 0xcd, 0xa8, 0xaa, 0xa7, 0x90, 0x30, 0x55, + 0x4f, 0x01, 0x27, 0x19, 0x6a, 0xd4, 0xa5, 0x9e, 0x32, 0xdb, 0x8d, 0x21, 0x92, 0x24, 0x19, 0x22, + 0x38, 0xc9, 0x70, 0x9a, 0x7a, 0xb5, 0x55, 0x65, 0xae, 0x1b, 0x43, 0x24, 0x49, 0x32, 0x44, 0x30, + 0x3b, 0x6c, 0x46, 0xc1, 0x13, 0xed, 0xc6, 0x5d, 0xbf, 0xcf, 0xe6, 0xa3, 0x87, 0xcd, 0x8e, 0x84, + 0xec, 0xb0, 0xd9, 0x11, 0x49, 0x3e, 0xb3, 0x6d, 0x3b, 0x7c, 0x65, 0x01, 0x2b, 0xbc, 0x12, 0xee, + 0x0b, 0xb6, 0x53, 0x6a, 0xa6, 0x47, 0xdb, 0xae, 0x9d, 0xff, 0x07, 0x02, 0xa3, 0x55, 0x65, 0x51, + 0xdc, 0x83, 0xfb, 0x77, 0x15, 0x1c, 0x3c, 0xd3, 0xa3, 0x05, 0x66, 0xad, 0xcf, 0xc3, 0x20, 0x7e, + 0x54, 0xd9, 0x32, 0xbd, 0xd2, 0x84, 0xf2, 0x46, 0xf4, 0xc8, 0x24, 0xa1, 0xd8, 0x91, 0x49, 0xfa, + 0xc9, 0x26, 0x71, 0xfc, 0xc9, 0xa7, 0x98, 0xd2, 0x84, 0xa2, 0x45, 0x27, 0xf1, 0x08, 0x92, 0x4d, + 0xe2, 0x11, 0x40, 0x50, 0x6f, 0xc9, 0xb1, 0x5b, 0xa5, 0x09, 0xa5, 0x92, 0x52, 0x2f, 0x47, 0x05, + 0xf5, 0xf2, 0x9f, 0x41, 0xbd, 0x95, 0xd5, 0xb6, 0x57, 0x62, 0xdf, 0xb8, 0x94, 0x52, 0xaf, 0x8f, + 0x0c, 0xea, 0xf5, 0x01, 0x6c, 0x2a, 0x44, 0xc0, 0xa2, 0x63, 0xb3, 0x49, 0xfb, 0xa6, 0xd9, 0x68, + 0x28, 0xb7, 0xa2, 0x53, 0x61, 0x1c, 0xcf, 0xa6, 0xc2, 0x38, 0x8c, 0x6d, 0x3d, 0x79, 0xab, 0xe8, + 0x72, 0xbb, 0xae, 0xdc, 0x8e, 0x6e, 0x3d, 0x43, 0x0c, 0xdb, 0x7a, 0x86, 0xbf, 0xf0, 0x74, 0xc1, + 0x7e, 0x69, 0x74, 0xc5, 0xa1, 0xee, 0xaa, 0x72, 0x27, 0x76, 0xba, 0x90, 0x70, 0x78, 0xba, 0x90, + 0x7e, 0x93, 0x3a, 0x3c, 0x14, 0x59, 0x68, 0xfc, 0x37, 0x9e, 0x0a, 0xd5, 0x9d, 0xda, 0xaa, 0xf2, + 0x61, 0x64, 0xf5, 0x68, 0xea, 0x52, 0x15, 0x25, 0x9d, 0xe9, 0xd1, 0xba, 0x71, 0xc2, 0x63, 0xf9, + 0x1b, 0xb3, 0x3c, 0x60, 0xac, 0xb6, 0x38, 0xe9, 0x1f, 0x42, 0xdf, 0x8c, 0x1d, 0xcb, 0x93, 0x24, + 0x78, 0x2c, 0x4f, 0x82, 0x49, 0x0b, 0x2e, 0xc4, 0x8e, 0x6a, 0x73, 0x7a, 0x83, 0x9d, 0x4b, 0xa8, + 0xb1, 0xa8, 0xd7, 0xee, 0x52, 0x4f, 0xf9, 0x08, 0xf2, 0xbe, 0xd8, 0xe1, 0xc0, 0x17, 0xa3, 0x9e, + 0xe9, 0xd1, 0xb6, 0xe0, 0x47, 0x54, 0xc8, 0x57, 0xa6, 0x97, 0x16, 0x95, 0x8f, 0x46, 0xef, 0x37, + 0x19, 0x6c, 0xa6, 0x47, 0x43, 0x1c, 0xdb, 0xa5, 0xdd, 0x6a, 0xd5, 0x1d, 0xdd, 0xa0, 0x7c, 0xa3, + 0x85, 0x7b, 0x37, 0xb1, 0x01, 0xfd, 0x58, 0x74, 0x97, 0xd6, 0x89, 0x8e, 0xed, 0xd2, 0x3a, 0xe1, + 0x98, 0xa2, 0x46, 0x72, 0xa3, 0x28, 0x1f, 0x8f, 0x2a, 0x6a, 0x04, 0xc9, 0x14, 0x35, 0x9a, 0x49, + 0xe5, 0xc3, 0x70, 0x2a, 0x38, 0xcf, 0x8b, 0xf5, 0x97, 0x77, 0x9a, 0xf2, 0x09, 0xe4, 0x73, 0x21, + 0xf1, 0x18, 0x10, 0xa1, 0x9a, 0xe9, 0xd1, 0x3a, 0x94, 0x67, 0x2b, 0x6e, 0x22, 0xed, 0x97, 0xd8, + 0x5e, 0x7c, 0x4f, 0x74, 0xc5, 0xed, 0x40, 0xc6, 0x56, 0xdc, 0x0e, 0xa8, 0x54, 0xe6, 0x42, 0xa8, + 0xfa, 0x16, 0xcc, 0x03, 0x99, 0x76, 0xe2, 0x90, 0xca, 0x5c, 0xec, 0xd4, 0x96, 0xb7, 0x60, 0x1e, + 0xec, 0xd6, 0x3a, 0x71, 0x20, 0x97, 0xa0, 0x50, 0xa9, 0xcc, 0x69, 0x6d, 0x4b, 0xa9, 0xc5, 0xac, + 0x75, 0x11, 0x3a, 0xd3, 0xa3, 0x09, 0x3c, 0xdb, 0x06, 0x4d, 0x35, 0x74, 0xd7, 0x33, 0x6b, 0x2e, + 0x8e, 0x18, 0x7f, 0x84, 0x18, 0xd1, 0x6d, 0x50, 0x1a, 0x0d, 0xdb, 0x06, 0xa5, 0xc1, 0xd9, 0x7e, + 0x71, 0x52, 0x77, 0x5d, 0xdd, 0x32, 0x1c, 0x7d, 0x02, 0x97, 0x09, 0x1a, 0xf3, 0x06, 0x8b, 0x60, + 0xd9, 0x7e, 0x31, 0x0a, 0xc1, 0xcb, 0x77, 0x1f, 0xe2, 0x6f, 0x73, 0x56, 0x62, 0x97, 0xef, 0x31, + 0x3c, 0x5e, 0xbe, 0xc7, 0x60, 0xb8, 0xef, 0xf4, 0x61, 0x1a, 0xad, 0x9b, 0x4c, 0x44, 0x4a, 0x3d, + 0xb6, 0xef, 0x8c, 0x13, 0xe0, 0xbe, 0x33, 0x0e, 0x8c, 0x34, 0xc9, 0x5f, 0x6e, 0x57, 0x3b, 0x34, + 0x29, 0x5c, 0x65, 0x13, 0x65, 0xd8, 0xfa, 0x1d, 0x0e, 0x8e, 0xd2, 0xba, 0xa5, 0x37, 0xed, 0xd2, + 0x84, 0x2f, 0x75, 0x33, 0xba, 0x7e, 0x77, 0x24, 0x64, 0xeb, 0x77, 0x47, 0x24, 0x9b, 0x5d, 0xfd, + 0x83, 0xd6, 0xaa, 0xee, 0x50, 0xa3, 0x64, 0x3a, 0x78, 0xb3, 0xb8, 0xce, 0x8f, 0x86, 0x6f, 0x45, + 0x67, 0xd7, 0x2e, 0xa4, 0x6c, 0x76, 0xed, 0x82, 0x66, 0x9b, 0xbc, 0x74, 0xb4, 0x46, 0x75, 0x43, + 0xb9, 0x1b, 0xdd, 0xe4, 0x75, 0xa6, 0x64, 0x9b, 0xbc, 0xce, 0xd8, 0xce, 0x9f, 0x73, 0xc7, 0x31, + 0x3d, 0xaa, 0x34, 0xb6, 0xf3, 0x39, 0x48, 0xda, 0xf9, 0x73, 0x10, 0xcd, 0x0e, 0x84, 0xf1, 0x0e, + 0x69, 0x46, 0x0f, 0x84, 0xc9, 0x6e, 0x88, 0x97, 0x60, 0x3b, 0x16, 0xe1, 0x14, 0xa8, 0x58, 0xd1, + 0x1d, 0x8b, 0x00, 0xb3, 0x1d, 0x4b, 0xe8, 0x36, 0x18, 0x71, 0x05, 0x53, 0xec, 0xe8, 0x1a, 0x2a, + 0xe3, 0xd8, 0x1a, 0x1a, 0x71, 0x1b, 0x7b, 0x3e, 0xe2, 0xe7, 0xa0, 0xb4, 0xa2, 0xbb, 0x0e, 0x09, + 0xc5, 0x76, 0x1d, 0xb2, 0x47, 0xc4, 0x24, 0x1c, 0xc3, 0x57, 0x70, 0xad, 0x1d, 0xbc, 0xe3, 0x7c, + 0x32, 0xfa, 0x99, 0x31, 0x34, 0xfb, 0xcc, 0x18, 0x28, 0xc2, 0x44, 0x4c, 0x5b, 0x4e, 0x07, 0x26, + 0xe1, 0xfd, 0x60, 0x0c, 0x44, 0x66, 0x81, 0x54, 0x8a, 0x73, 0xb3, 0x65, 0x63, 0x51, 0x7e, 0x22, + 0x73, 0xa3, 0x37, 0xb0, 0x49, 0x8a, 0x99, 0x1e, 0x2d, 0xa5, 0x1c, 0x79, 0x0b, 0xce, 0x09, 0xa8, + 0xf0, 0xf8, 0x5e, 0x74, 0xec, 0x7b, 0xa6, 0x11, 0x2c, 0x08, 0x5e, 0xd4, 0x8e, 0xae, 0x1b, 0xed, + 0x4c, 0x8f, 0xd6, 0x95, 0x57, 0xe7, 0xba, 0xc4, 0xfa, 0xd0, 0xde, 0x4e, 0x5d, 0xc1, 0x22, 0xd1, + 0x95, 0x57, 0xe7, 0xba, 0x84, 0xdc, 0xef, 0x6d, 0xa7, 0xae, 0xa0, 0x13, 0xba, 0xf2, 0x22, 0x2e, + 0x8c, 0x77, 0xc3, 0x17, 0x1b, 0x0d, 0x65, 0x0d, 0xab, 0x7b, 0xff, 0x76, 0xaa, 0x2b, 0xe2, 0x86, + 0x73, 0x2b, 0x8e, 0x6c, 0x96, 0x5e, 0x68, 0x51, 0xab, 0x12, 0x59, 0x80, 0xee, 0x47, 0x67, 0xe9, + 0x04, 0x01, 0x9b, 0xa5, 0x13, 0x40, 0x36, 0xa0, 0x64, 0x77, 0x19, 0x65, 0x3d, 0x3a, 0xa0, 0x64, + 0x1c, 0x1b, 0x50, 0x11, 0xd7, 0x9a, 0x05, 0x38, 0xbe, 0x70, 0xd7, 0xd3, 0xfd, 0x1d, 0xa4, 0x2b, + 0xba, 0xf2, 0xed, 0xd8, 0x23, 0x53, 0x92, 0x04, 0x1f, 0x99, 0x92, 0x60, 0x36, 0x46, 0x18, 0xb8, + 0xb2, 0x6e, 0xd5, 0xa6, 0x75, 0xb3, 0xd1, 0x76, 0xa8, 0xf2, 0x1f, 0x44, 0xc7, 0x48, 0x0c, 0xcd, + 0xc6, 0x48, 0x0c, 0xc4, 0x16, 0x68, 0x06, 0x2a, 0xba, 0xae, 0x59, 0xb7, 0xc4, 0xb9, 0xb2, 0xdd, + 0xf0, 0x94, 0xff, 0x30, 0xba, 0x40, 0xa7, 0xd1, 0xb0, 0x05, 0x3a, 0x0d, 0x8e, 0xb7, 0x4e, 0xac, + 0x17, 0xd8, 0xe2, 0x21, 0xbf, 0x55, 0xfe, 0x47, 0xb1, 0x5b, 0xa7, 0x14, 0x1a, 0xbc, 0x75, 0x4a, + 0x81, 0xb3, 0xf5, 0x91, 0xef, 0xc9, 0x66, 0xcd, 0xe0, 0xad, 0xfa, 0x3f, 0x8e, 0xae, 0x8f, 0x71, + 0x3c, 0x5b, 0x1f, 0xe3, 0xb0, 0x28, 0x1f, 0xd1, 0x05, 0xff, 0x49, 0x27, 0x3e, 0x81, 0xfc, 0x13, + 0x65, 0xc8, 0x0d, 0x99, 0x8f, 0x18, 0x29, 0xdf, 0x9b, 0xe9, 0xc4, 0x28, 0x18, 0x1e, 0x89, 0x42, + 0x51, 0x46, 0x1a, 0xbd, 0x67, 0xd2, 0x35, 0xe5, 0x53, 0x1d, 0x19, 0x71, 0x82, 0x28, 0x23, 0x0e, + 0x23, 0x6f, 0xc2, 0xa9, 0x10, 0x36, 0x47, 0x9b, 0xcb, 0xc1, 0xcc, 0xf4, 0x7d, 0x99, 0xe8, 0x36, + 0x38, 0x9d, 0x8c, 0x6d, 0x83, 0xd3, 0x31, 0x69, 0xac, 0x85, 0xe8, 0xfe, 0xd3, 0x2d, 0x58, 0x07, + 0x12, 0xec, 0xc0, 0x20, 0x8d, 0xb5, 0x90, 0xe6, 0xf7, 0x6f, 0xc1, 0x3a, 0x90, 0x69, 0x07, 0x06, + 0xe4, 0xb3, 0x19, 0xb8, 0x98, 0x8e, 0x2a, 0x36, 0x1a, 0xd3, 0xb6, 0x13, 0xe2, 0x94, 0x1f, 0xc8, + 0x44, 0x2f, 0x1a, 0xb6, 0x57, 0x6c, 0xa6, 0x47, 0xdb, 0x66, 0x05, 0xe4, 0x43, 0x30, 0x5c, 0x6c, + 0x1b, 0xa6, 0x87, 0x0f, 0x6f, 0x6c, 0xe3, 0xfc, 0xe9, 0x4c, 0xec, 0x88, 0x23, 0x63, 0xf1, 0x88, + 0x23, 0x03, 0xc8, 0xeb, 0x30, 0x56, 0xa1, 0xb5, 0xb6, 0x63, 0x7a, 0xeb, 0x1a, 0x6d, 0xd9, 0x8e, + 0xc7, 0x78, 0xfc, 0x60, 0x26, 0x3a, 0x89, 0x25, 0x28, 0xd8, 0x24, 0x96, 0x00, 0x92, 0xdb, 0x89, + 0x57, 0x79, 0xd1, 0x99, 0x9f, 0xc9, 0x74, 0x7d, 0x96, 0x0f, 0xfa, 0x32, 0xbd, 0x38, 0x59, 0x8c, + 0xbd, 0xa2, 0x0b, 0xae, 0x9f, 0xcd, 0x74, 0x79, 0x46, 0x97, 0x66, 0xb8, 0x24, 0x98, 0x71, 0x4c, + 0x49, 0x14, 0xaf, 0xfc, 0x50, 0xa6, 0xcb, 0xb3, 0x77, 0xc8, 0x31, 0x2d, 0xc7, 0xfc, 0xb3, 0xdc, + 0x52, 0x44, 0x30, 0xfa, 0xcf, 0x32, 0x49, 0x53, 0x91, 0xa0, 0xbc, 0x44, 0xc8, 0x8a, 0xdd, 0x72, + 0x03, 0xa5, 0xff, 0x5c, 0x26, 0x69, 0x9b, 0x17, 0x16, 0x0b, 0x7f, 0x11, 0x0a, 0x67, 0xa7, 0xee, + 0x7b, 0xd4, 0xb1, 0xf4, 0x06, 0x76, 0x67, 0xc5, 0xb3, 0x1d, 0xbd, 0x4e, 0xa7, 0x2c, 0x7d, 0xb9, + 0x41, 0x95, 0xcf, 0x67, 0xa2, 0x3b, 0xd8, 0xce, 0xa4, 0x6c, 0x07, 0xdb, 0x19, 0x4b, 0x56, 0xe1, + 0xa1, 0x34, 0x6c, 0xc9, 0x74, 0xb1, 0x9e, 0x2f, 0x64, 0xa2, 0x5b, 0xd8, 0x2e, 0xb4, 0x6c, 0x0b, + 0xdb, 0x05, 0x4d, 0xae, 0xc1, 0xc0, 0x84, 0xed, 0x4f, 0xbf, 0x3f, 0x1c, 0x33, 0x86, 0x0c, 0x30, + 0x33, 0x3d, 0x5a, 0x48, 0x26, 0xca, 0x88, 0x41, 0xfd, 0xc5, 0x64, 0x99, 0xf0, 0xf1, 0x29, 0xf8, + 0x21, 0xca, 0x08, 0x71, 0xff, 0xe7, 0xc9, 0x32, 0xe1, 0x1b, 0x57, 0xf0, 0x83, 0xcd, 0x24, 0xbc, + 0xc6, 0xb9, 0xe9, 0x22, 0xdb, 0xb7, 0x4d, 0xae, 0xea, 0x8d, 0x06, 0xb5, 0xea, 0x54, 0xf9, 0x52, + 0x6c, 0x26, 0x49, 0x27, 0x63, 0x33, 0x49, 0x3a, 0x86, 0x7c, 0x0c, 0x4e, 0xdf, 0xd6, 0x1b, 0xa6, + 0x11, 0xe2, 0xfc, 0xb4, 0xe1, 0xca, 0x8f, 0x64, 0xa2, 0xa7, 0xe9, 0x0e, 0x74, 0xec, 0x34, 0xdd, + 0x01, 0x45, 0xe6, 0x80, 0xe0, 0x32, 0x1a, 0xcc, 0x16, 0x6c, 0x7d, 0x56, 0xfe, 0x8b, 0x4c, 0x74, + 0x9f, 0x9a, 0x24, 0x61, 0xfb, 0xd4, 0x24, 0x94, 0x54, 0x3b, 0xe7, 0x1f, 0x51, 0x7e, 0x34, 0x13, + 0xbd, 0xad, 0xe9, 0x44, 0x38, 0xd3, 0xa3, 0x75, 0x4e, 0x62, 0x72, 0x03, 0x46, 0x2b, 0x8b, 0xe5, + 0xe9, 0xe9, 0xa9, 0xca, 0xed, 0x72, 0x09, 0xfd, 0x22, 0x0c, 0xe5, 0xc7, 0x62, 0x2b, 0x56, 0x9c, + 0x80, 0xad, 0x58, 0x71, 0x18, 0x79, 0x09, 0x86, 0x58, 0xfb, 0xd9, 0x80, 0xc1, 0x4f, 0xfe, 0x72, + 0x26, 0xba, 0x9d, 0x92, 0x91, 0x6c, 0x3b, 0x25, 0xff, 0x26, 0x15, 0x38, 0xc1, 0xa4, 0xb8, 0xe8, + 0xd0, 0x15, 0xea, 0x50, 0xab, 0xe6, 0x8f, 0xe9, 0x1f, 0xcf, 0x44, 0x77, 0x19, 0x69, 0x44, 0x6c, + 0x97, 0x91, 0x06, 0x27, 0x77, 0xe1, 0x5c, 0xfc, 0x26, 0x48, 0x76, 0x7b, 0x55, 0x7e, 0x22, 0x13, + 0xdb, 0x0c, 0x77, 0x21, 0xc6, 0xcd, 0x70, 0x17, 0x3c, 0xb1, 0xe0, 0xbc, 0xb8, 0x56, 0x11, 0x06, + 0x97, 0xf1, 0xda, 0x7e, 0x92, 0xd7, 0xf6, 0x58, 0x68, 0x10, 0xd8, 0x85, 0x7a, 0xa6, 0x47, 0xeb, + 0xce, 0x8e, 0xe9, 0x59, 0x32, 0xcb, 0x86, 0xf2, 0x53, 0x99, 0x74, 0x8b, 0x94, 0x88, 0x99, 0x72, + 0x5a, 0x7a, 0x8e, 0x37, 0x3b, 0xe5, 0x88, 0x50, 0x7e, 0x3a, 0x36, 0xde, 0xd2, 0xc9, 0xd8, 0x78, + 0xeb, 0x90, 0x64, 0xe2, 0x75, 0x18, 0xe3, 0x4a, 0xbd, 0xa8, 0xe3, 0x30, 0xb4, 0xea, 0xd4, 0x50, + 0xfe, 0xcb, 0xd8, 0x6a, 0x97, 0xa0, 0x40, 0xd3, 0x9e, 0x38, 0x90, 0x4d, 0xdd, 0x95, 0x96, 0x6e, + 0x59, 0x78, 0xcd, 0xaa, 0xfc, 0x57, 0xb1, 0xa9, 0x3b, 0x44, 0xa1, 0xe1, 0x6e, 0xf0, 0x8b, 0x69, + 0x42, 0xb7, 0xfc, 0x4a, 0xca, 0xcf, 0xc4, 0x34, 0xa1, 0x1b, 0x31, 0xd3, 0x84, 0xae, 0xc9, 0x9a, + 0x6e, 0x77, 0x70, 0x41, 0x57, 0xbe, 0x12, 0x5b, 0x91, 0x53, 0xa9, 0xd8, 0x8a, 0x9c, 0xee, 0xc1, + 0x7e, 0xbb, 0x83, 0xfb, 0xb6, 0xf2, 0xb3, 0xdd, 0xf9, 0x86, 0x2b, 0x7d, 0xba, 0xf7, 0xf7, 0xed, + 0x0e, 0xae, 0xcf, 0xca, 0xcf, 0x75, 0xe7, 0x1b, 0x1a, 0xf6, 0xa5, 0x7b, 0x4e, 0x57, 0x3b, 0xbb, + 0x0d, 0x2b, 0x3f, 0x1f, 0x9f, 0xba, 0x3a, 0x10, 0xe2, 0xd4, 0xd5, 0xc9, 0xf7, 0x78, 0x19, 0xce, + 0x70, 0x0d, 0xb9, 0xe1, 0xe8, 0xad, 0xd5, 0x0a, 0xf5, 0x3c, 0xd3, 0xaa, 0xfb, 0x27, 0xb1, 0xff, + 0x3a, 0x13, 0xbb, 0x1e, 0xeb, 0x44, 0x89, 0xd7, 0x63, 0x9d, 0x90, 0x4c, 0x79, 0x13, 0x0e, 0xc2, + 0xca, 0x2f, 0xc4, 0x94, 0x37, 0x41, 0xc1, 0x94, 0x37, 0xe9, 0x57, 0xfc, 0x7a, 0x8a, 0x1f, 0xac, + 0xf2, 0xdf, 0x74, 0xe6, 0x15, 0xb4, 0x2f, 0xc5, 0x7d, 0xf6, 0xf5, 0x14, 0x77, 0x4f, 0xe5, 0xbf, + 0xed, 0xcc, 0x2b, 0xb4, 0x41, 0x4a, 0x7a, 0x89, 0xbe, 0x09, 0xa7, 0xf8, 0x6c, 0x3e, 0x4d, 0x0d, + 0x1a, 0xf9, 0xd0, 0x5f, 0x8c, 0x8d, 0xfd, 0x74, 0x32, 0xbc, 0x72, 0x4f, 0xc5, 0xa4, 0xb1, 0x16, + 0x6d, 0xfd, 0xa5, 0x2d, 0x58, 0x87, 0x07, 0x82, 0x74, 0x0c, 0x5b, 0x6f, 0x64, 0x5f, 0x39, 0xe5, + 0x97, 0x63, 0xeb, 0x8d, 0x8c, 0x44, 0x73, 0x0e, 0xd9, 0xb1, 0xee, 0xa5, 0xa8, 0x5f, 0x98, 0xf2, + 0xdf, 0xa5, 0x16, 0x0e, 0x3a, 0x20, 0xea, 0x44, 0xf6, 0x52, 0xd4, 0x07, 0x4a, 0xf9, 0x95, 0xd4, + 0xc2, 0xc1, 0x07, 0x44, 0x1d, 0xa6, 0x9e, 0x05, 0xb8, 0x61, 0x7a, 0xbe, 0xff, 0xc0, 0xaf, 0xc6, + 0x66, 0xb0, 0x10, 0xc5, 0x66, 0xb0, 0xf0, 0xd7, 0x44, 0x1f, 0xf4, 0xe2, 0xcd, 0x83, 0xfa, 0x95, + 0x0c, 0x0c, 0x55, 0x3c, 0x87, 0xea, 0x4d, 0x11, 0x9f, 0xe9, 0x2c, 0xf4, 0x73, 0x13, 0x3e, 0xdf, + 0x3d, 0x51, 0x0b, 0x7e, 0x93, 0x8b, 0x30, 0x32, 0xab, 0xbb, 0x1e, 0x96, 0x2c, 0x5b, 0x06, 0xbd, + 0x8f, 0xee, 0x2b, 0x39, 0x2d, 0x06, 0x25, 0xb3, 0x9c, 0x8e, 0x97, 0xc3, 0x90, 0x7c, 0xb9, 0x2d, + 0xc3, 0x12, 0xf5, 0xbf, 0xb3, 0x31, 0xde, 0x83, 0x51, 0x88, 0x62, 0x65, 0xd5, 0x6f, 0x64, 0x20, + 0x61, 0x5c, 0xb8, 0x7b, 0x3f, 0xe4, 0x05, 0x38, 0x16, 0x0b, 0x03, 0x29, 0x7c, 0x70, 0xb6, 0x19, + 0x25, 0x32, 0x5e, 0x9a, 0xbc, 0x3f, 0xf0, 0xfd, 0xb8, 0xa5, 0xcd, 0x8a, 0x90, 0x53, 0x7d, 0x9b, + 0x1b, 0xe3, 0xb9, 0xb6, 0xd3, 0xd0, 0x24, 0x94, 0x08, 0x29, 0xf2, 0x9d, 0xd1, 0x30, 0xc6, 0x1d, + 0xb9, 0x28, 0x9c, 0xa2, 0x33, 0x61, 0xa0, 0xaa, 0x58, 0x06, 0x65, 0xee, 0x04, 0xfd, 0x21, 0x18, + 0x2a, 0x37, 0x5b, 0xd4, 0x71, 0x6d, 0x4b, 0xf7, 0x6c, 0x47, 0xb8, 0x80, 0xa2, 0xc3, 0x92, 0x29, + 0xc1, 0x65, 0x87, 0x25, 0x99, 0x9e, 0x5c, 0xf6, 0x93, 0x3a, 0xe5, 0x30, 0xba, 0x20, 0x3a, 0x62, + 0xc5, 0xb3, 0xf2, 0x72, 0x0a, 0x46, 0x7a, 0xcb, 0xd5, 0xd1, 0x4b, 0x28, 0x20, 0x6d, 0x33, 0x80, + 0x4c, 0x8a, 0x14, 0xe4, 0x09, 0x28, 0xe0, 0xad, 0xaa, 0x8b, 0xc9, 0xda, 0x44, 0xf8, 0xac, 0x06, + 0x42, 0x64, 0xb7, 0x30, 0x4e, 0x43, 0x6e, 0xc2, 0x68, 0xf8, 0x64, 0x74, 0xc3, 0xb1, 0xdb, 0x2d, + 0x3f, 0x3d, 0x03, 0x66, 0x33, 0xbe, 0x1b, 0xe0, 0xaa, 0x75, 0x44, 0x4a, 0x2c, 0x12, 0x05, 0xc9, + 0x0c, 0x1c, 0x0b, 0x61, 0x4c, 0x44, 0x7e, 0x5a, 0x18, 0x4c, 0xc9, 0x27, 0xf1, 0x62, 0xe2, 0x8c, + 0xa4, 0xe4, 0x8b, 0x15, 0x23, 0x65, 0xe8, 0xf3, 0x63, 0x67, 0xf5, 0x6f, 0xa9, 0xa4, 0xc7, 0x45, + 0xec, 0xac, 0x3e, 0x39, 0x6a, 0x96, 0x5f, 0x9e, 0x4c, 0xc3, 0x88, 0x66, 0xb7, 0x3d, 0xba, 0x64, + 0x8b, 0xbd, 0x96, 0x88, 0xd1, 0x86, 0x6d, 0x72, 0x18, 0xa6, 0xea, 0xd9, 0x7e, 0x32, 0x68, 0x39, + 0x29, 0x71, 0xb4, 0x14, 0x99, 0x87, 0xb1, 0xc4, 0xe3, 0x9a, 0x9c, 0xa2, 0x59, 0xfa, 0xbc, 0x24, + 0xb3, 0x64, 0x51, 0xf2, 0xe9, 0x0c, 0x14, 0x96, 0x1c, 0xdd, 0xf4, 0x5c, 0xe1, 0x60, 0x74, 0xf2, + 0xca, 0x9a, 0xa3, 0xb7, 0x98, 0x7e, 0x5c, 0xc1, 0xf0, 0x91, 0xb7, 0xf5, 0x46, 0x9b, 0xba, 0x13, + 0x77, 0xd8, 0xd7, 0xfd, 0xbf, 0x1b, 0xe3, 0x2f, 0x71, 0x67, 0xeb, 0x2b, 0x35, 0xbb, 0x79, 0xb5, + 0xee, 0xe8, 0xf7, 0x4c, 0x0f, 0x27, 0x4a, 0xbd, 0x71, 0xd5, 0xa3, 0x0d, 0xbc, 0x29, 0xb8, 0xaa, + 0xb7, 0xcc, 0xab, 0xe8, 0x14, 0x78, 0x35, 0xe0, 0xc4, 0x6b, 0x60, 0x2a, 0xe0, 0xe1, 0x5f, 0xb2, + 0x0a, 0x70, 0x1c, 0x99, 0x67, 0x07, 0x6c, 0xfc, 0xd4, 0x62, 0xab, 0x25, 0xbc, 0x95, 0xa4, 0xf3, + 0xb5, 0x8f, 0xe1, 0x8a, 0x1d, 0x08, 0x4c, 0x6f, 0xb5, 0xe4, 0x24, 0xf0, 0x21, 0x1d, 0xd3, 0x82, + 0x25, 0xd1, 0x22, 0x5f, 0x4c, 0xc3, 0xa1, 0xc4, 0xfd, 0xc6, 0xa6, 0x08, 0x29, 0x5e, 0x8c, 0x2c, + 0xc3, 0x31, 0xc1, 0x37, 0x08, 0xe4, 0x3f, 0x12, 0x9d, 0x15, 0x62, 0x68, 0xae, 0xb4, 0x41, 0x1b, + 0x0d, 0x01, 0x96, 0xeb, 0x88, 0x95, 0x20, 0x13, 0x61, 0x76, 0xd1, 0x79, 0xbd, 0x49, 0x5d, 0xe5, + 0x18, 0x6a, 0xec, 0xb9, 0xcd, 0x8d, 0x71, 0xc5, 0x2f, 0x8f, 0x61, 0xe4, 0x52, 0x73, 0x65, 0x63, + 0x11, 0x99, 0x07, 0xd7, 0xfa, 0xd1, 0x14, 0x1e, 0x71, 0x9d, 0x8f, 0x16, 0x21, 0x93, 0x30, 0x1c, + 0x18, 0x4b, 0xdf, 0xba, 0x55, 0x2e, 0xa1, 0x3b, 0x94, 0x88, 0x24, 0x18, 0x0b, 0xb5, 0x2f, 0x33, + 0x89, 0x94, 0x91, 0x1c, 0xd2, 0xb9, 0x7f, 0x54, 0xcc, 0x21, 0xbd, 0x95, 0xe2, 0x90, 0xbe, 0x48, + 0x5e, 0x81, 0xc1, 0xe2, 0x9d, 0x8a, 0x70, 0xb4, 0x77, 0x95, 0xe3, 0x61, 0x72, 0x16, 0x4c, 0x97, + 0x2e, 0x9c, 0xf2, 0xe5, 0xa6, 0xcb, 0xf4, 0x64, 0x0a, 0x46, 0x22, 0xf6, 0x16, 0xae, 0x72, 0x02, + 0x39, 0x60, 0xcb, 0x75, 0xc4, 0x54, 0x1d, 0x81, 0x8a, 0x24, 0xf0, 0x8f, 0x14, 0x62, 0x5a, 0x53, + 0x32, 0x5d, 0x4c, 0x74, 0xa1, 0x51, 0xf4, 0xe9, 0x47, 0xe7, 0xaa, 0x7e, 0xae, 0x35, 0x86, 0x40, + 0x55, 0x1d, 0x8e, 0x8b, 0x64, 0xec, 0x8f, 0x16, 0x23, 0x6f, 0x01, 0xc1, 0xd4, 0x18, 0xd4, 0xf0, + 0xaf, 0xdf, 0xcb, 0x25, 0x57, 0x39, 0x85, 0x61, 0x74, 0x49, 0xdc, 0x87, 0xb8, 0x5c, 0x9a, 0xb8, + 0x28, 0xa6, 0x8f, 0x0b, 0x3a, 0x2f, 0x55, 0xf5, 0xfd, 0x87, 0xab, 0x66, 0x24, 0x6f, 0x68, 0x0a, + 0x57, 0xb2, 0x06, 0xa7, 0x17, 0x1d, 0x7a, 0xcf, 0xb4, 0xdb, 0xae, 0xbf, 0x7c, 0xf8, 0xf3, 0xd6, + 0xe9, 0x2d, 0xe7, 0xad, 0x47, 0x44, 0xc5, 0x27, 0x5b, 0x0e, 0xbd, 0x57, 0xf5, 0x83, 0xa7, 0x46, + 0x62, 0xff, 0x75, 0xe2, 0x8e, 0xd9, 0x4f, 0xdf, 0x6e, 0x3b, 0x54, 0xc0, 0x4d, 0xea, 0x2a, 0x4a, + 0x38, 0xd5, 0xf2, 0x78, 0x0f, 0x66, 0x80, 0x8b, 0x64, 0x3f, 0x8d, 0x16, 0x23, 0x1a, 0x90, 0x1b, + 0x93, 0xfe, 0x53, 0x4c, 0xb1, 0xc6, 0x73, 0x44, 0x2a, 0x67, 0x90, 0x99, 0xca, 0xc4, 0x52, 0xaf, + 0x05, 0x81, 0x94, 0xab, 0xba, 0xc0, 0xcb, 0x62, 0x49, 0x96, 0x26, 0xb3, 0x30, 0xba, 0xe8, 0xe0, + 0xc1, 0xf0, 0x26, 0x5d, 0x5f, 0xb4, 0x1b, 0x66, 0x6d, 0x1d, 0x7d, 0xbc, 0xc4, 0x54, 0xd9, 0xe2, + 0xb8, 0xea, 0x5d, 0xba, 0x5e, 0x6d, 0x21, 0x56, 0x5e, 0x56, 0xe2, 0x25, 0xe5, 0xc0, 0xa6, 0x0f, + 0x6d, 0x2f, 0xb0, 0x29, 0x85, 0x51, 0xf1, 0x90, 0x73, 0xdf, 0xa3, 0x16, 0x5b, 0xea, 0x5d, 0xe1, + 0xcf, 0xa5, 0xc4, 0x1e, 0x7e, 0x02, 0x3c, 0x9f, 0x3a, 0xc4, 0x28, 0xa3, 0x01, 0x58, 0x6e, 0x58, + 0xbc, 0x48, 0x32, 0xfa, 0xe7, 0xf9, 0x5d, 0x44, 0xff, 0xfc, 0x1f, 0x73, 0xf2, 0xfc, 0x4b, 0xce, + 0x41, 0x5e, 0x4a, 0xce, 0x81, 0xa1, 0x0d, 0x31, 0x90, 0x71, 0x5e, 0x44, 0x6c, 0x1d, 0x10, 0x7b, + 0x97, 0x20, 0xe4, 0x04, 0xa6, 0x5c, 0x0b, 0xc3, 0xdd, 0x69, 0x21, 0x01, 0xa6, 0xbb, 0x6a, 0x2f, + 0x37, 0xcc, 0x1a, 0x86, 0xb7, 0xce, 0x49, 0x3e, 0xe6, 0x08, 0xe5, 0xd1, 0xad, 0x25, 0x12, 0x72, + 0x0d, 0x06, 0xfd, 0x0b, 0x89, 0x30, 0xb4, 0x27, 0x46, 0x3d, 0x16, 0xb3, 0xb5, 0x08, 0xaa, 0x2c, + 0x11, 0x91, 0x17, 0x01, 0xc2, 0xe9, 0x40, 0xec, 0xb4, 0x70, 0xa9, 0x90, 0x67, 0x0f, 0x79, 0xa9, + 0x08, 0xa9, 0xd9, 0xc4, 0x29, 0xab, 0xa3, 0x9f, 0xe0, 0x0f, 0x27, 0xce, 0x88, 0x0e, 0xcb, 0x0a, + 0x12, 0x2d, 0x42, 0x16, 0x60, 0x2c, 0xa1, 0x81, 0x22, 0x10, 0x28, 0x26, 0x79, 0x4e, 0x51, 0x5f, + 0x79, 0x61, 0x4e, 0x94, 0x25, 0x8f, 0x42, 0xee, 0x96, 0x56, 0x16, 0xc1, 0x08, 0x79, 0x1c, 0xcb, + 0x48, 0x60, 0x11, 0x86, 0x55, 0xbf, 0x2f, 0x9b, 0x58, 0x9b, 0x98, 0xf4, 0x04, 0x2b, 0xa9, 0x07, + 0x51, 0x7a, 0x7e, 0xfd, 0x5c, 0x7a, 0x12, 0x11, 0xb9, 0x04, 0xfd, 0x8b, 0x6c, 0x66, 0xa8, 0xd9, + 0x0d, 0xd1, 0x9f, 0x18, 0x56, 0xa6, 0x25, 0x60, 0x5a, 0x80, 0x25, 0xd7, 0xa4, 0xbc, 0x94, 0x52, + 0x7c, 0x5f, 0x3f, 0x2f, 0x65, 0x3c, 0xd0, 0x2d, 0x66, 0xa8, 0xbc, 0x16, 0x4b, 0x81, 0x23, 0xca, + 0xa4, 0xac, 0x8b, 0x61, 0xca, 0x9b, 0x60, 0x57, 0xda, 0xbb, 0xd5, 0xae, 0x54, 0xfd, 0xfd, 0x4c, + 0x72, 0x9c, 0x91, 0xeb, 0xc9, 0x50, 0x9b, 0xb8, 0x08, 0x05, 0x40, 0xb9, 0xd6, 0x20, 0xe8, 0x66, + 0x24, 0x68, 0x66, 0x76, 0xd7, 0x41, 0x33, 0x73, 0x3b, 0x0c, 0x9a, 0xa9, 0xfe, 0x9b, 0x7c, 0x57, + 0xc3, 0xc3, 0x03, 0x09, 0xae, 0xf4, 0x02, 0x3b, 0x59, 0xb1, 0xda, 0x8b, 0x6e, 0xe2, 0x7c, 0xc0, + 0xed, 0xaa, 0xaa, 0x3a, 0x1f, 0x5a, 0xae, 0x16, 0xa5, 0x24, 0xaf, 0xc2, 0x90, 0xff, 0x01, 0x18, + 0x8c, 0x55, 0x0a, 0x22, 0x1a, 0xac, 0x6a, 0xb1, 0xb0, 0xa5, 0x91, 0x02, 0xe4, 0x59, 0x18, 0xc0, + 0x3d, 0x4d, 0x4b, 0xaf, 0xf9, 0x91, 0x7a, 0x79, 0x68, 0x5f, 0x1f, 0x28, 0x07, 0x10, 0x0a, 0x28, + 0xc9, 0xc7, 0xa1, 0x20, 0xc2, 0xd5, 0xf3, 0x94, 0xcd, 0x57, 0xb7, 0x61, 0xa9, 0x79, 0x45, 0x0e, + 0x55, 0xcf, 0x4f, 0x29, 0x08, 0x88, 0x9c, 0x52, 0x78, 0x94, 0xfa, 0x25, 0x38, 0xbe, 0xe8, 0x50, + 0x03, 0x6d, 0x82, 0xa7, 0xee, 0xb7, 0x1c, 0x91, 0x48, 0x80, 0x8f, 0x72, 0x5c, 0xa4, 0x5a, 0x3e, + 0x9a, 0x2d, 0x9f, 0x02, 0x2f, 0x87, 0x0b, 0x4d, 0x29, 0xce, 0x76, 0x2e, 0xbc, 0x25, 0x37, 0xe9, + 0xfa, 0x1a, 0x26, 0x10, 0xef, 0x0f, 0x77, 0x2e, 0x42, 0xd0, 0x77, 0x05, 0x4a, 0xde, 0xb9, 0x44, + 0x0b, 0x9d, 0x7d, 0x01, 0x06, 0x77, 0x1b, 0xee, 0xfd, 0x37, 0xb2, 0x1d, 0x4c, 0xf8, 0x1f, 0xdc, + 0x8c, 0x5b, 0x41, 0xae, 0xd7, 0xde, 0x0e, 0xb9, 0x5e, 0xbf, 0x9d, 0xed, 0xe0, 0x9f, 0xf0, 0x40, + 0xe7, 0x64, 0x0c, 0x84, 0x11, 0xcd, 0xc9, 0x18, 0xa6, 0xc3, 0x34, 0x0d, 0x4d, 0x26, 0x8a, 0x65, + 0x6f, 0x2d, 0x6c, 0x99, 0xbd, 0xf5, 0x17, 0x73, 0xdd, 0xfc, 0x37, 0x8e, 0x64, 0xbf, 0x13, 0xd9, + 0x5f, 0x83, 0xc1, 0x40, 0xb2, 0xe5, 0x12, 0x6e, 0x7a, 0x86, 0x83, 0xe4, 0x12, 0x1c, 0x8c, 0x65, + 0x24, 0x22, 0x72, 0x99, 0xb7, 0xb5, 0x62, 0xbe, 0xcd, 0xc3, 0x9c, 0x0f, 0x8b, 0x00, 0xd6, 0xba, + 0xa7, 0x57, 0x5d, 0xf3, 0x6d, 0xaa, 0x05, 0x68, 0x8c, 0x60, 0x97, 0xe6, 0xca, 0x72, 0xd4, 0x47, + 0xdb, 0xef, 0xa3, 0x14, 0x21, 0x72, 0xf7, 0x9d, 0x23, 0x21, 0xee, 0x40, 0x88, 0x7f, 0x93, 0x4d, + 0x75, 0x76, 0x3a, 0x12, 0xe2, 0x4e, 0x66, 0x8b, 0x27, 0x60, 0x40, 0xb3, 0xd7, 0xdc, 0x49, 0x3c, + 0xd8, 0xf0, 0xb9, 0x02, 0x27, 0x6a, 0xc7, 0x5e, 0x73, 0xab, 0x78, 0x64, 0xd1, 0x42, 0x02, 0xf5, + 0x3b, 0xd9, 0x2e, 0xee, 0x60, 0x47, 0x82, 0x7f, 0x37, 0x97, 0xc8, 0xdf, 0xce, 0x46, 0xdc, 0xcd, + 0x1e, 0xe8, 0xe4, 0xe6, 0x95, 0xda, 0x2a, 0x6d, 0xea, 0xf1, 0xe4, 0xe6, 0x2e, 0x42, 0x45, 0x8a, + 0xd1, 0x90, 0x44, 0xfd, 0x6a, 0x36, 0xe6, 0x6f, 0x77, 0x24, 0xbb, 0x6d, 0xcb, 0x2e, 0xd0, 0x3a, + 0xe1, 0x42, 0x78, 0x24, 0xb9, 0xed, 0x4a, 0xee, 0x33, 0xd9, 0x98, 0xb7, 0xe5, 0x03, 0x2b, 0x3b, + 0x36, 0x00, 0x93, 0x5e, 0xa0, 0x0f, 0xac, 0x26, 0x3d, 0x01, 0x03, 0x42, 0x0e, 0xc1, 0x52, 0xc1, + 0xe7, 0x7d, 0x0e, 0xc4, 0x5b, 0xd6, 0x80, 0x40, 0xfd, 0x81, 0x2c, 0x44, 0xbd, 0x60, 0x1f, 0x50, + 0x1d, 0xfa, 0xed, 0x6c, 0xd4, 0xff, 0xf7, 0xc1, 0xd5, 0x9f, 0x2b, 0x00, 0x95, 0xf6, 0x72, 0x4d, + 0x98, 0x7f, 0xf4, 0x4a, 0xd7, 0xf4, 0x01, 0x54, 0x93, 0x28, 0xd4, 0x7f, 0x9b, 0x4d, 0x75, 0x4a, + 0x7e, 0x70, 0x05, 0xf8, 0x0c, 0xde, 0x8a, 0xd7, 0xac, 0x70, 0x22, 0xc7, 0x4b, 0x48, 0x36, 0xfe, + 0x12, 0xf9, 0xc5, 0x7c, 0x42, 0xf2, 0xc1, 0x94, 0xed, 0x1a, 0x46, 0x3f, 0x0f, 0xb7, 0x6b, 0xf2, + 0x33, 0x84, 0xb4, 0x71, 0xfb, 0x3f, 0xb3, 0x5b, 0xf9, 0x70, 0x3f, 0xc8, 0xab, 0x6a, 0xdf, 0xa2, + 0xbe, 0x8e, 0xb1, 0xc6, 0x58, 0x4f, 0x0c, 0xf1, 0xec, 0x57, 0x2d, 0x0e, 0x92, 0xdf, 0xde, 0x04, + 0x95, 0xfa, 0xd7, 0xbd, 0xe9, 0x0e, 0xc4, 0x0f, 0xae, 0x08, 0xcf, 0x41, 0x7e, 0x51, 0xf7, 0x56, + 0x85, 0x26, 0xe3, 0x93, 0x5e, 0x4b, 0xf7, 0x56, 0x35, 0x84, 0x92, 0xcb, 0xd0, 0xaf, 0xe9, 0x6b, + 0xfc, 0xce, 0xb3, 0x10, 0x66, 0x26, 0x73, 0xf4, 0xb5, 0x2a, 0xbf, 0xf7, 0x0c, 0xd0, 0x44, 0x0d, + 0x32, 0xe3, 0xf1, 0x9b, 0x6f, 0x4c, 0xcb, 0xc4, 0x33, 0xe3, 0x05, 0xf9, 0xf0, 0xce, 0x41, 0x7e, + 0xc2, 0x36, 0xd6, 0xf1, 0xf9, 0x6a, 0x88, 0x57, 0xb6, 0x6c, 0x1b, 0xeb, 0x1a, 0x42, 0xc9, 0x67, + 0x33, 0xd0, 0x37, 0x43, 0x75, 0x83, 0x8d, 0x90, 0x81, 0x6e, 0x56, 0x27, 0x1f, 0xde, 0x1f, 0xab, + 0x93, 0xb1, 0x55, 0x5e, 0x99, 0xac, 0x28, 0xa2, 0x7e, 0x72, 0x03, 0xfa, 0x27, 0x75, 0x8f, 0xd6, + 0x6d, 0x67, 0x1d, 0xed, 0x68, 0x46, 0x42, 0x23, 0xd4, 0x88, 0xfe, 0xf8, 0x44, 0xfc, 0x65, 0xac, + 0x26, 0x7e, 0x69, 0x41, 0x61, 0x26, 0x16, 0x91, 0xab, 0x7b, 0x30, 0x14, 0x0b, 0x4f, 0xca, 0x1d, + 0xa4, 0xe4, 0x0e, 0xae, 0x95, 0x87, 0xd2, 0xaf, 0x95, 0x71, 0xf7, 0x88, 0xb6, 0x76, 0x98, 0x8f, + 0x6e, 0x18, 0x17, 0x7d, 0xbe, 0x7b, 0x44, 0x28, 0xa6, 0xa3, 0xd3, 0x24, 0x12, 0xf5, 0x9b, 0xbd, + 0x90, 0xea, 0x6e, 0x78, 0xa4, 0xe4, 0x47, 0x4a, 0x1e, 0x2a, 0x79, 0x29, 0xa1, 0xe4, 0x67, 0x93, + 0x0e, 0xac, 0xef, 0x51, 0x0d, 0xff, 0x72, 0x3e, 0xe1, 0xfe, 0xfe, 0x60, 0x9f, 0x2e, 0x43, 0xe9, + 0xf5, 0x6e, 0x29, 0xbd, 0x60, 0x40, 0x14, 0xb6, 0x1c, 0x10, 0x7d, 0xdb, 0x1d, 0x10, 0xfd, 0x1d, + 0x07, 0x44, 0xa8, 0x20, 0x03, 0x1d, 0x15, 0xa4, 0x2c, 0x06, 0x0d, 0x74, 0xcf, 0x75, 0x7a, 0x6e, + 0x73, 0x63, 0x7c, 0x84, 0x8d, 0xa6, 0xd4, 0x2c, 0xa7, 0xc8, 0x42, 0xfd, 0x46, 0xbe, 0x4b, 0xcc, + 0x8a, 0x03, 0xd1, 0x91, 0x67, 0x20, 0x57, 0x6c, 0xb5, 0x84, 0x7e, 0x1c, 0x97, 0xc2, 0x65, 0x74, + 0x28, 0xc5, 0xa8, 0xc9, 0x8b, 0x90, 0x2b, 0xde, 0xa9, 0xc4, 0x23, 0xef, 0x17, 0xef, 0x54, 0xc4, + 0x97, 0x74, 0x2c, 0x7b, 0xa7, 0x42, 0x5e, 0x0e, 0x43, 0xe0, 0xad, 0xb6, 0xad, 0xbb, 0xe2, 0xa0, + 0x28, 0xcc, 0x6d, 0x7d, 0x73, 0x9c, 0x1a, 0x43, 0xb1, 0xe3, 0x62, 0x8c, 0x36, 0xa6, 0x4d, 0x85, + 0xed, 0x6b, 0x53, 0xdf, 0x96, 0xda, 0xd4, 0xbf, 0x5d, 0x6d, 0x1a, 0xd8, 0x86, 0x36, 0xc1, 0x96, + 0xda, 0x34, 0xb8, 0x77, 0x6d, 0x6a, 0xc1, 0xd9, 0x64, 0x9c, 0xa1, 0x40, 0x23, 0x34, 0x20, 0x49, + 0xac, 0x30, 0x2c, 0xc1, 0xa7, 0xff, 0x36, 0xc7, 0x56, 0x79, 0x4e, 0xfd, 0x78, 0x46, 0x7a, 0x2d, + 0xa5, 0xb4, 0xfa, 0x1b, 0xd9, 0xce, 0xe1, 0x91, 0x0e, 0xe7, 0x14, 0xf7, 0x3d, 0xa9, 0x52, 0xca, + 0x47, 0xdd, 0x55, 0x3b, 0x4b, 0x39, 0xc6, 0x36, 0x4d, 0x66, 0x5f, 0xcf, 0x74, 0x8a, 0xd9, 0xb4, + 0x27, 0x89, 0x3d, 0x96, 0xb4, 0x68, 0x43, 0x3b, 0x7d, 0x37, 0x6a, 0xca, 0x16, 0x4f, 0xd1, 0x9e, + 0xdb, 0x65, 0x8a, 0xf6, 0xdf, 0xcf, 0xc0, 0xf1, 0x9b, 0xed, 0x65, 0x2a, 0x2c, 0xd8, 0x82, 0x66, + 0xbc, 0x05, 0xc0, 0xc0, 0xc2, 0x88, 0x25, 0x83, 0x46, 0x2c, 0x1f, 0x90, 0xe3, 0x2d, 0xc5, 0x0a, + 0x5c, 0x09, 0xa9, 0xb9, 0x01, 0xcb, 0x79, 0xdf, 0x98, 0xf3, 0x6e, 0x7b, 0x99, 0x56, 0x13, 0x96, + 0x2c, 0x12, 0xf7, 0xb3, 0xaf, 0x70, 0x33, 0xf9, 0xdd, 0x1a, 0x8d, 0xfc, 0x5a, 0xb6, 0x63, 0x88, + 0xab, 0x43, 0x9b, 0x0b, 0xee, 0xa3, 0xa9, 0xbd, 0x12, 0xcf, 0x09, 0x97, 0x42, 0x12, 0xe3, 0x98, + 0xc6, 0x25, 0x5d, 0x60, 0x87, 0x3c, 0x43, 0xe1, 0xbb, 0x2a, 0xb0, 0x3f, 0xcd, 0x74, 0x0c, 0x45, + 0x76, 0x58, 0x05, 0xa6, 0xfe, 0x93, 0x9c, 0x1f, 0x01, 0x6d, 0x4f, 0x9f, 0xf0, 0x04, 0x0c, 0x08, + 0x6f, 0xad, 0xa8, 0x01, 0xae, 0xb8, 0xca, 0xc3, 0xab, 0xe1, 0x80, 0x80, 0x2d, 0xf3, 0x92, 0x75, + 0xb0, 0x64, 0x80, 0x2b, 0x59, 0x06, 0x6b, 0x12, 0x09, 0x5b, 0xc8, 0xa7, 0xee, 0x9b, 0x1e, 0xee, + 0x0a, 0x58, 0x5f, 0xe6, 0xf8, 0x42, 0x4e, 0xef, 0x9b, 0x1e, 0xdf, 0x13, 0x04, 0x68, 0xb6, 0x48, + 0x57, 0xc2, 0xfc, 0xcb, 0x62, 0x91, 0x76, 0x45, 0x1a, 0x6a, 0xe1, 0x36, 0xf6, 0x04, 0x0c, 0x08, + 0xab, 0x56, 0x61, 0x66, 0x22, 0x5a, 0x2b, 0xec, 0x60, 0xb1, 0xb5, 0x01, 0x01, 0xe3, 0xa8, 0xd1, + 0x7a, 0x68, 0x58, 0x87, 0x1c, 0x1d, 0x84, 0x68, 0x02, 0x43, 0xae, 0xc1, 0x48, 0xc5, 0xd3, 0x2d, + 0x43, 0x77, 0x8c, 0x85, 0xb6, 0xd7, 0x6a, 0x7b, 0xf2, 0xa6, 0xd4, 0xf5, 0x0c, 0xbb, 0xed, 0x69, + 0x31, 0x0a, 0xf2, 0x14, 0x0c, 0xfb, 0x90, 0x29, 0xc7, 0xb1, 0x1d, 0x79, 0xe7, 0xe1, 0x7a, 0x06, + 0x75, 0x1c, 0x2d, 0x4a, 0x40, 0x3e, 0x08, 0xc3, 0x65, 0xeb, 0x9e, 0xcd, 0x13, 0x7b, 0xdf, 0xd2, + 0x66, 0xc5, 0x3e, 0x04, 0x5d, 0xb1, 0xcc, 0x00, 0x51, 0x6d, 0x3b, 0x0d, 0x2d, 0x4a, 0xa8, 0x6e, + 0x66, 0x93, 0x81, 0xe2, 0x1e, 0xdc, 0x43, 0xcb, 0xe5, 0xa8, 0x31, 0x1d, 0x5a, 0x90, 0xe2, 0x86, + 0x50, 0xb6, 0xe5, 0xe5, 0xfb, 0xc2, 0x6b, 0xd0, 0x7f, 0x93, 0xae, 0x73, 0xbb, 0xcf, 0x42, 0x68, + 0x2a, 0x7c, 0x57, 0xc0, 0xe4, 0x1b, 0x57, 0x9f, 0x4e, 0xfd, 0x5a, 0x36, 0x19, 0x02, 0xef, 0xc1, + 0x15, 0xf6, 0x53, 0xd0, 0x87, 0xa2, 0x2c, 0xfb, 0x57, 0xfe, 0x28, 0x40, 0x14, 0x77, 0xd4, 0x02, + 0xd9, 0x27, 0x53, 0x7f, 0xb6, 0x10, 0x8f, 0x8b, 0xf8, 0xe0, 0x4a, 0xef, 0x25, 0x18, 0x9c, 0xb4, + 0x2d, 0xd7, 0x74, 0x3d, 0x6a, 0xd5, 0x7c, 0x85, 0x3d, 0xc3, 0x36, 0x54, 0xb5, 0x10, 0x2c, 0xfb, + 0x20, 0x49, 0xd4, 0xbb, 0x51, 0x5e, 0xf2, 0x1c, 0x0c, 0xa0, 0xc8, 0xd1, 0x4e, 0x9a, 0x4f, 0x78, + 0xf8, 0x5a, 0xb0, 0xcc, 0x80, 0x71, 0x23, 0xe9, 0x90, 0x94, 0xdc, 0x82, 0xfe, 0xc9, 0x55, 0xb3, + 0x61, 0x38, 0xd4, 0x42, 0x7b, 0x61, 0xc9, 0xfd, 0x3c, 0xda, 0x97, 0x57, 0xf0, 0x5f, 0xa4, 0xe5, + 0xcd, 0xa9, 0x89, 0x62, 0x11, 0x2f, 0x2c, 0x01, 0x3b, 0xfb, 0xa3, 0x59, 0x80, 0xb0, 0x00, 0x79, + 0x18, 0xb2, 0x41, 0x26, 0x52, 0x34, 0x53, 0x89, 0x68, 0x50, 0x16, 0x97, 0x0a, 0x31, 0xb6, 0xb3, + 0x5b, 0x8e, 0xed, 0x5b, 0x50, 0xe0, 0x37, 0x5e, 0x68, 0x49, 0x2e, 0x85, 0x6a, 0xeb, 0xd8, 0xe0, + 0x2b, 0x48, 0xcf, 0x0f, 0xb3, 0xb8, 0xf3, 0x8c, 0x58, 0x65, 0x73, 0x66, 0x67, 0x6b, 0xd0, 0x8b, + 0x7f, 0x91, 0x8b, 0x90, 0x5f, 0xf2, 0xb3, 0x18, 0x0e, 0xf3, 0x59, 0x3a, 0x26, 0x3f, 0xc4, 0xb3, + 0x6e, 0x9a, 0xb4, 0x2d, 0x8f, 0x55, 0x8d, 0xad, 0x1e, 0x12, 0x72, 0x11, 0xb0, 0x88, 0x5c, 0x04, + 0x4c, 0xfd, 0x3f, 0xb2, 0x29, 0x11, 0x3b, 0x1f, 0xdc, 0x61, 0xf2, 0x02, 0x00, 0xba, 0x74, 0x33, + 0x79, 0xfa, 0x2e, 0x1a, 0x38, 0x4a, 0x90, 0x11, 0xaa, 0x6d, 0xe4, 0xd8, 0x11, 0x12, 0xab, 0x7f, + 0x98, 0x49, 0x84, 0x79, 0xdc, 0x93, 0x1c, 0xe5, 0x5d, 0x59, 0x76, 0x97, 0xdb, 0x58, 0xbf, 0x2f, + 0x72, 0x3b, 0xeb, 0x8b, 0xe8, 0xb7, 0xec, 0xc3, 0xce, 0xf4, 0x20, 0xbf, 0xe5, 0x9b, 0xd9, 0xb4, + 0xa0, 0x97, 0x87, 0x53, 0xc5, 0xaf, 0x07, 0x9b, 0xd2, 0x7c, 0x2c, 0xcc, 0x30, 0x42, 0xe3, 0x99, + 0x56, 0xc5, 0x36, 0xf5, 0x13, 0x70, 0x2c, 0x16, 0x0a, 0x52, 0x64, 0xb1, 0xbc, 0xd8, 0x3d, 0xa6, + 0x64, 0xe7, 0x60, 0x00, 0x11, 0x32, 0xf5, 0xdf, 0x65, 0xba, 0x07, 0x02, 0x3d, 0x70, 0xd5, 0x49, + 0x11, 0x40, 0xee, 0x1f, 0x46, 0x00, 0xfb, 0x70, 0x0c, 0x3e, 0xdc, 0x02, 0x78, 0x8f, 0x4c, 0x1e, + 0xef, 0xb6, 0x00, 0x7e, 0x36, 0xb3, 0x65, 0x1c, 0xd7, 0x83, 0x96, 0x81, 0xfa, 0xff, 0x67, 0x52, + 0xe3, 0xad, 0xee, 0xa9, 0x5d, 0x2f, 0x43, 0x81, 0x9b, 0xd5, 0x88, 0x56, 0x49, 0x19, 0x6a, 0x18, + 0xb4, 0x53, 0x0a, 0x68, 0x8e, 0x25, 0xb3, 0xd0, 0xc7, 0xdb, 0x60, 0xc4, 0x73, 0xee, 0xa7, 0xb4, + 0xd3, 0xe8, 0x34, 0x39, 0x0a, 0xb4, 0xfa, 0x07, 0x99, 0x44, 0xf8, 0xd7, 0x03, 0xfc, 0xb6, 0x70, + 0xaa, 0xce, 0x6d, 0x7f, 0xaa, 0x56, 0xff, 0x2a, 0x9b, 0x1e, 0x7d, 0xf6, 0x00, 0x3f, 0x64, 0x3f, + 0xae, 0xd3, 0x76, 0xb7, 0x6e, 0x2d, 0xc1, 0x48, 0x54, 0x16, 0x62, 0xd9, 0xba, 0x90, 0x1e, 0x83, + 0xb7, 0x43, 0x2b, 0x62, 0x3c, 0xd4, 0x77, 0x32, 0xc9, 0xc0, 0xb9, 0x07, 0x3e, 0x3f, 0xed, 0x4e, + 0x5b, 0xa2, 0x9f, 0xf2, 0x1e, 0x59, 0x6b, 0xf6, 0xe3, 0x53, 0xde, 0x23, 0xab, 0xc6, 0xee, 0x3e, + 0xe5, 0x97, 0xb3, 0x9d, 0xe2, 0x0e, 0x1f, 0xf8, 0x07, 0x7d, 0x44, 0x16, 0x32, 0x6f, 0x99, 0xf8, + 0xb4, 0x87, 0x3b, 0x05, 0xfa, 0xed, 0xc0, 0x33, 0xc1, 0x67, 0x77, 0x63, 0x3c, 0x55, 0x58, 0xef, + 0x11, 0x45, 0x3e, 0x1c, 0xc2, 0x7a, 0x8f, 0x0c, 0x95, 0xf7, 0x9e, 0xb0, 0x7e, 0x37, 0xbb, 0xdd, + 0x60, 0xd7, 0x47, 0xc2, 0x4b, 0x08, 0xef, 0x8b, 0xd9, 0x64, 0x10, 0xf6, 0x03, 0x17, 0xd3, 0x34, + 0x14, 0x44, 0x38, 0xf8, 0x8e, 0xc2, 0xe1, 0xf8, 0x4e, 0x3b, 0x1a, 0xf1, 0x1d, 0xd7, 0x41, 0x3c, + 0xe4, 0x6c, 0x4f, 0x24, 0x9c, 0x56, 0xfd, 0x4e, 0x26, 0x16, 0xb1, 0xfc, 0x40, 0xae, 0x10, 0x76, + 0xb5, 0x24, 0x91, 0x57, 0xfc, 0xcb, 0xcc, 0x7c, 0x2c, 0x62, 0x6c, 0xf0, 0x3d, 0x25, 0xea, 0xe9, + 0x66, 0x23, 0x5e, 0x5e, 0xc4, 0x04, 0xf8, 0x5a, 0x16, 0xc6, 0x12, 0xa4, 0xe4, 0x62, 0x24, 0x94, + 0x0e, 0x5e, 0x4b, 0xc6, 0x8c, 0xc7, 0x79, 0x50, 0x9d, 0x1d, 0xdc, 0xa4, 0x5e, 0x84, 0x7c, 0x49, + 0x5f, 0xe7, 0xdf, 0xd6, 0xcb, 0x59, 0x1a, 0xfa, 0xba, 0x7c, 0xe3, 0x86, 0x78, 0xb2, 0x0c, 0x27, + 0xf9, 0x7b, 0x88, 0x69, 0x5b, 0x4b, 0x66, 0x93, 0x96, 0xad, 0x39, 0xb3, 0xd1, 0x30, 0x5d, 0xf1, + 0xa8, 0xf7, 0xc4, 0xe6, 0xc6, 0xf8, 0x25, 0xcf, 0xf6, 0xf4, 0x46, 0x95, 0xfa, 0x64, 0x55, 0xcf, + 0x6c, 0xd2, 0xaa, 0x69, 0x55, 0x9b, 0x48, 0x29, 0xb1, 0x4c, 0x67, 0x45, 0xca, 0x3c, 0x38, 0x70, + 0xa5, 0xa6, 0x5b, 0x16, 0x35, 0xca, 0xd6, 0xc4, 0xba, 0x47, 0xf9, 0x63, 0x60, 0x8e, 0x5f, 0x09, + 0x72, 0xdf, 0x70, 0x8e, 0x66, 0x8c, 0x97, 0x19, 0x81, 0x96, 0x52, 0x48, 0xfd, 0xbd, 0x7c, 0x4a, + 0xb0, 0xfa, 0x43, 0xa4, 0x3e, 0x7e, 0x4f, 0xe7, 0xb7, 0xe8, 0xe9, 0xab, 0xd0, 0x77, 0x9b, 0x3a, + 0x78, 0xbf, 0xc5, 0x1f, 0x18, 0xd0, 0x98, 0xfd, 0x1e, 0x07, 0xc9, 0x2f, 0x34, 0x82, 0x8a, 0x34, + 0xe0, 0xec, 0x12, 0xeb, 0xa6, 0xf4, 0xce, 0x2c, 0xec, 0xa2, 0x33, 0xbb, 0xf0, 0x23, 0x6f, 0xc2, + 0x69, 0xc4, 0xa6, 0x74, 0x6b, 0x1f, 0x56, 0x85, 0x31, 0xaa, 0x78, 0x55, 0xe9, 0x9d, 0xdb, 0xa9, + 0x3c, 0xf9, 0x08, 0x0c, 0x05, 0x03, 0xc4, 0xa4, 0xae, 0x78, 0xb9, 0xe8, 0x32, 0xce, 0x78, 0x00, + 0x38, 0x06, 0x46, 0x13, 0xb2, 0x68, 0x10, 0xb1, 0x08, 0x2f, 0xf5, 0xff, 0xcb, 0x74, 0x0b, 0x9a, + 0x7f, 0xe0, 0xb3, 0xf2, 0x2b, 0xd0, 0x67, 0xf0, 0x8f, 0x12, 0x3a, 0xd5, 0x3d, 0xac, 0x3e, 0x27, + 0xd5, 0xfc, 0x32, 0xea, 0x5f, 0x66, 0xba, 0xc6, 0xea, 0x3f, 0xec, 0x9f, 0xf7, 0xc5, 0x5c, 0x87, + 0xcf, 0x13, 0x93, 0xe8, 0x65, 0x18, 0x35, 0xc3, 0x60, 0xc2, 0xd5, 0x30, 0xfc, 0x94, 0x76, 0x4c, + 0x82, 0xe3, 0xe8, 0xba, 0x0e, 0xa7, 0x7c, 0xc3, 0x47, 0xc7, 0xb7, 0x10, 0x73, 0xab, 0x6d, 0xc7, + 0xe4, 0xe3, 0x52, 0x3b, 0xe1, 0xc6, 0xcc, 0xc7, 0xdc, 0x5b, 0x8e, 0xc9, 0x2a, 0xd0, 0xbd, 0x55, + 0x6a, 0xe9, 0xd5, 0x35, 0xdb, 0xb9, 0x8b, 0x51, 0x46, 0xf9, 0xe0, 0xd4, 0x8e, 0x71, 0xf8, 0x1d, + 0x1f, 0x4c, 0x1e, 0x85, 0xe1, 0x7a, 0xa3, 0x4d, 0x83, 0xb8, 0x8e, 0xfc, 0xad, 0x4f, 0x1b, 0x62, + 0xc0, 0xe0, 0x85, 0xe4, 0x3c, 0x00, 0x12, 0x79, 0x98, 0x49, 0x01, 0x1f, 0xf6, 0xb4, 0x01, 0x06, + 0x59, 0x12, 0xdd, 0x75, 0x96, 0x6b, 0x35, 0x17, 0x52, 0xb5, 0x61, 0x5b, 0xf5, 0xaa, 0x47, 0x9d, + 0x26, 0x36, 0x14, 0x8d, 0x19, 0xb4, 0x53, 0x48, 0x81, 0x4f, 0x27, 0xee, 0xac, 0x6d, 0xd5, 0x97, + 0xa8, 0xd3, 0x64, 0x4d, 0x7d, 0x02, 0x88, 0x68, 0xaa, 0x83, 0x97, 0x1e, 0xfc, 0xe3, 0xd0, 0x9a, + 0x41, 0x13, 0x1f, 0xc1, 0x6f, 0x43, 0xf0, 0xc3, 0xc6, 0x61, 0x90, 0x07, 0xb7, 0xe3, 0x42, 0x43, + 0x13, 0x06, 0x0d, 0x38, 0x08, 0xe5, 0x75, 0x0a, 0x84, 0x75, 0x05, 0xb7, 0xea, 0xd6, 0xc4, 0x2f, + 0xf5, 0x73, 0xb9, 0xb4, 0xf4, 0x02, 0x7b, 0x52, 0xb4, 0x70, 0x5a, 0xcd, 0xee, 0x68, 0x5a, 0x3d, + 0x66, 0xb5, 0x9b, 0x55, 0xbd, 0xd5, 0xaa, 0xae, 0x98, 0x0d, 0x74, 0xab, 0xc2, 0x85, 0x4f, 0x1b, + 0xb6, 0xda, 0xcd, 0x62, 0xab, 0x35, 0xcd, 0x81, 0xe4, 0x71, 0x18, 0x63, 0x74, 0xd8, 0x49, 0x01, + 0x65, 0x1e, 0x29, 0x19, 0x03, 0x8c, 0x0e, 0xeb, 0xd3, 0x9e, 0x81, 0x7e, 0xc1, 0x93, 0xaf, 0x55, + 0xbd, 0x5a, 0x1f, 0x67, 0xe6, 0xb2, 0x9e, 0x0b, 0xd8, 0xf0, 0xc9, 0xb5, 0x57, 0x1b, 0xf0, 0xcb, + 0x63, 0x0c, 0x64, 0xab, 0xdd, 0xe4, 0x11, 0xb1, 0xfa, 0x10, 0x19, 0xfc, 0x26, 0x17, 0x61, 0x84, + 0x71, 0x09, 0x04, 0xc6, 0xc3, 0xc6, 0xf6, 0x6a, 0x31, 0x28, 0xb9, 0x06, 0x27, 0x22, 0x10, 0xbe, + 0x07, 0xe5, 0x6e, 0x02, 0xbd, 0x5a, 0x2a, 0x4e, 0xfd, 0x6a, 0x2e, 0x9a, 0xf4, 0xe0, 0x00, 0x3a, + 0xe2, 0x34, 0xf4, 0xd9, 0x4e, 0xbd, 0xda, 0x76, 0x1a, 0x62, 0xec, 0x15, 0x6c, 0xa7, 0x7e, 0xcb, + 0x69, 0x90, 0x93, 0x50, 0x60, 0xbd, 0x63, 0x1a, 0x62, 0x88, 0xf5, 0xea, 0xad, 0x56, 0xd9, 0x20, + 0x45, 0xde, 0x21, 0x18, 0x72, 0xb4, 0x5a, 0xc3, 0xa3, 0x3d, 0x37, 0x4a, 0xe8, 0xe5, 0x2b, 0x5e, + 0x02, 0x89, 0xfd, 0x84, 0x81, 0x48, 0xf9, 0x45, 0x40, 0x8c, 0x85, 0x81, 0xc7, 0x12, 0x83, 0xf7, + 0x49, 0x9c, 0x85, 0x40, 0x86, 0x2c, 0xf8, 0x21, 0xc6, 0x20, 0x25, 0x20, 0x21, 0x55, 0xd3, 0x36, + 0xcc, 0x15, 0x93, 0x72, 0xaf, 0x8e, 0x5e, 0xfe, 0xf0, 0x9b, 0xc4, 0x6a, 0xa3, 0x3e, 0x93, 0x39, + 0x01, 0x21, 0x2f, 0x71, 0x25, 0xe4, 0x74, 0xb8, 0xf6, 0xf1, 0xbe, 0xe5, 0xfb, 0xb4, 0x18, 0x0a, + 0x35, 0x13, 0xcb, 0xe3, 0x42, 0xa8, 0xbe, 0x93, 0x4b, 0x66, 0xbe, 0x38, 0x90, 0x7d, 0xcd, 0x0c, + 0x80, 0x48, 0x6c, 0x13, 0x3e, 0xae, 0x05, 0x16, 0xe7, 0x21, 0xa6, 0x03, 0x0f, 0xa9, 0x2c, 0xb9, + 0x0c, 0xfd, 0xfc, 0x8b, 0xca, 0x25, 0xb1, 0xdf, 0x41, 0x13, 0x31, 0xb7, 0x65, 0xae, 0xac, 0xa0, + 0x3d, 0x59, 0x80, 0x26, 0x17, 0xa1, 0xaf, 0x34, 0x5f, 0xa9, 0x14, 0xe7, 0xfd, 0x97, 0x62, 0xf4, + 0x2f, 0x31, 0x2c, 0xb7, 0xea, 0xea, 0x96, 0xab, 0xf9, 0x48, 0xf2, 0x28, 0x14, 0xca, 0x8b, 0x48, + 0xc6, 0xbd, 0x26, 0x07, 0x37, 0x37, 0xc6, 0xfb, 0xcc, 0x16, 0xa7, 0x12, 0x28, 0xac, 0xf7, 0x76, + 0xb9, 0x24, 0x99, 0x4b, 0xf0, 0x7a, 0xef, 0x99, 0x06, 0x3e, 0x3b, 0x6b, 0x01, 0x9a, 0x3c, 0x0b, + 0x43, 0x15, 0xea, 0x98, 0x7a, 0x63, 0xbe, 0x8d, 0x47, 0x45, 0x29, 0x94, 0xa2, 0x8b, 0xf0, 0xaa, + 0x85, 0x08, 0x2d, 0x42, 0x46, 0xce, 0x41, 0x7e, 0xc6, 0xb4, 0x7c, 0x17, 0x06, 0xb4, 0x71, 0x5f, + 0x35, 0x2d, 0x4f, 0x43, 0xa8, 0xfa, 0x2f, 0xb2, 0xe9, 0xe9, 0x43, 0x0e, 0x60, 0x38, 0xee, 0xf2, + 0xa5, 0x37, 0xa6, 0x04, 0xf9, 0x3d, 0x28, 0xc1, 0x0a, 0x1c, 0x2b, 0x1a, 0x4d, 0xd3, 0x2a, 0xe2, + 0x4f, 0x77, 0x6e, 0xba, 0x88, 0xc3, 0x5b, 0x72, 0xa1, 0x8b, 0xa1, 0xc5, 0xf7, 0xf0, 0xa0, 0xbc, + 0x0c, 0x55, 0xd5, 0x39, 0xae, 0xda, 0x5c, 0xd1, 0xab, 0x35, 0x9e, 0x79, 0x43, 0x8b, 0x33, 0x55, + 0x7f, 0x24, 0xbb, 0x45, 0xc6, 0x93, 0x07, 0x51, 0xfa, 0xea, 0x97, 0xb2, 0xdd, 0x93, 0xce, 0x3c, + 0x90, 0x42, 0xf9, 0x9b, 0x6c, 0x4a, 0x0a, 0x98, 0x3d, 0x49, 0xe2, 0x32, 0xf4, 0x73, 0x36, 0x81, + 0xa9, 0x2d, 0xce, 0x38, 0x5c, 0x59, 0x71, 0xa6, 0xf3, 0xd1, 0x64, 0x1e, 0x4e, 0x14, 0x57, 0x56, + 0x68, 0xcd, 0x0b, 0xc3, 0x33, 0xcf, 0x87, 0x81, 0x52, 0x79, 0x38, 0x5a, 0x81, 0x0f, 0xc3, 0x3b, + 0x63, 0x40, 0x90, 0xd4, 0x72, 0x64, 0x09, 0x4e, 0xc5, 0xe1, 0x15, 0xbe, 0x4d, 0xcf, 0x4b, 0x11, + 0x6a, 0x13, 0x1c, 0xf9, 0x7f, 0x5a, 0x87, 0xb2, 0x69, 0xad, 0xc4, 0xe9, 0xb4, 0xb7, 0x5b, 0x2b, + 0x71, 0x6e, 0x4d, 0x2d, 0xa7, 0x7e, 0x2d, 0x27, 0x67, 0xca, 0x79, 0x70, 0x8d, 0xa2, 0xae, 0x47, + 0x4c, 0xa1, 0xb7, 0x3b, 0x64, 0x9e, 0x15, 0x51, 0x3e, 0x8c, 0xb6, 0xe3, 0x5b, 0x0d, 0x06, 0x51, + 0x06, 0x10, 0x28, 0xdb, 0xff, 0x05, 0x94, 0xa4, 0x0c, 0xf9, 0xa2, 0x53, 0xe7, 0x5b, 0xd0, 0xad, + 0x1c, 0x9f, 0x74, 0xa7, 0xee, 0xa6, 0x3b, 0x3e, 0x31, 0x16, 0xea, 0x0f, 0x67, 0xbb, 0x24, 0xb7, + 0x79, 0x20, 0x27, 0x91, 0x9f, 0xcc, 0x76, 0x4a, 0x53, 0x73, 0x58, 0xcd, 0xbb, 0xde, 0x65, 0xe1, + 0x1c, 0x6e, 0xdb, 0xb7, 0xfd, 0x14, 0x4e, 0x5e, 0xce, 0xb9, 0x73, 0xc8, 0xf7, 0xf8, 0xd2, 0xac, + 0x9a, 0xdf, 0xd5, 0xac, 0x1a, 0x5a, 0x54, 0xf4, 0xee, 0xc2, 0xa2, 0xe2, 0x55, 0xe8, 0xf3, 0x73, + 0x17, 0x15, 0xa2, 0xd5, 0x0b, 0x70, 0xa7, 0xea, 0x7d, 0xe9, 0x3f, 0x06, 0x7d, 0x22, 0xe4, 0xb9, + 0x38, 0x2a, 0xe0, 0x89, 0x42, 0x80, 0x34, 0xff, 0x0f, 0xb6, 0xe1, 0x6f, 0xe9, 0xde, 0xaa, 0x38, + 0x1f, 0x48, 0x4e, 0xad, 0xec, 0x5f, 0x52, 0x86, 0x3e, 0xb1, 0x47, 0x55, 0x06, 0xf0, 0xb6, 0x52, + 0x49, 0x26, 0x50, 0xe2, 0x5b, 0x55, 0x7e, 0x22, 0x15, 0xc4, 0xf2, 0x35, 0xae, 0x00, 0xa9, 0x7f, + 0x90, 0x81, 0xd1, 0x78, 0x21, 0xf2, 0x04, 0x14, 0xf8, 0x5f, 0xe2, 0x81, 0x00, 0x8d, 0x9d, 0x79, + 0x09, 0xd9, 0xd8, 0x59, 0x50, 0x3f, 0x0b, 0x03, 0x9a, 0x7f, 0xf0, 0x90, 0x03, 0x94, 0x07, 0xa7, + 0x11, 0x79, 0xb5, 0x08, 0x28, 0xc9, 0xa3, 0x90, 0x5b, 0x68, 0xf8, 0x71, 0xc9, 0xf1, 0x04, 0x64, + 0x37, 0x64, 0x4b, 0x6e, 0x86, 0x65, 0x44, 0xf3, 0x74, 0x4d, 0x6c, 0x2d, 0x90, 0xc8, 0xa2, 0x6b, + 0x32, 0xd1, 0x3c, 0x5d, 0x7b, 0x7c, 0x8e, 0xc7, 0x7f, 0xbf, 0x69, 0x5a, 0x06, 0x39, 0x03, 0x27, + 0x6f, 0x55, 0xa6, 0xb4, 0xea, 0xcd, 0xf2, 0x7c, 0xa9, 0x7a, 0x6b, 0xbe, 0xb2, 0x38, 0x35, 0x59, + 0x9e, 0x2e, 0x4f, 0x95, 0x46, 0x7b, 0xc8, 0x71, 0x38, 0x16, 0xa2, 0x66, 0x6e, 0xcd, 0x15, 0xe7, + 0x47, 0x33, 0x64, 0x0c, 0x86, 0x43, 0xe0, 0xc4, 0xc2, 0xd2, 0x68, 0xf6, 0xf1, 0xf7, 0xc3, 0x20, + 0x5e, 0x70, 0x89, 0xcf, 0x1b, 0x82, 0xfe, 0x85, 0x89, 0xca, 0x94, 0x76, 0x1b, 0x99, 0x00, 0x14, + 0x4a, 0x53, 0xf3, 0x8c, 0x61, 0xe6, 0xf1, 0x7f, 0x9d, 0x01, 0xa8, 0x4c, 0x2f, 0x2d, 0x0a, 0xc2, + 0x41, 0xe8, 0x2b, 0xcf, 0xdf, 0x2e, 0xce, 0x96, 0x19, 0x5d, 0x3f, 0xe4, 0x17, 0x16, 0xa7, 0x58, + 0x0d, 0x03, 0xd0, 0x3b, 0x39, 0xbb, 0x50, 0x99, 0x1a, 0xcd, 0x32, 0xa0, 0x36, 0x55, 0x2c, 0x8d, + 0xe6, 0x18, 0xf0, 0x8e, 0x56, 0x5e, 0x9a, 0x1a, 0xcd, 0xb3, 0x3f, 0x67, 0x2b, 0x4b, 0xc5, 0xa5, + 0xd1, 0x5e, 0xf6, 0xe7, 0x34, 0xfe, 0x59, 0x60, 0xcc, 0x2a, 0x53, 0x4b, 0xf8, 0xa3, 0x8f, 0x35, + 0x61, 0xda, 0xff, 0xd5, 0xcf, 0x50, 0x8c, 0x75, 0xa9, 0xac, 0x8d, 0x0e, 0xb0, 0x1f, 0x8c, 0x25, + 0xfb, 0x01, 0xac, 0x71, 0xda, 0xd4, 0xdc, 0xc2, 0xed, 0xa9, 0xd1, 0x41, 0xc6, 0x6b, 0xee, 0x26, + 0x03, 0x0f, 0xb1, 0x3f, 0xb5, 0x39, 0xf6, 0xe7, 0x30, 0xe3, 0xa4, 0x4d, 0x15, 0x67, 0x17, 0x8b, + 0x4b, 0x33, 0xa3, 0x23, 0xac, 0x3d, 0xc8, 0xf3, 0x18, 0x2f, 0x39, 0x5f, 0x9c, 0x9b, 0x1a, 0x1d, + 0x15, 0x34, 0xa5, 0xd9, 0xf2, 0xfc, 0xcd, 0xd1, 0x31, 0x6c, 0xc8, 0x9b, 0x73, 0xf8, 0x83, 0xb0, + 0x02, 0xf8, 0xd7, 0xf1, 0xc7, 0x3f, 0x06, 0x85, 0x85, 0x0a, 0x1e, 0x69, 0x4f, 0xc3, 0xf1, 0x85, + 0x4a, 0x75, 0xe9, 0xcd, 0xc5, 0xa9, 0x98, 0xbc, 0xc7, 0x60, 0xd8, 0x47, 0xcc, 0x96, 0xe7, 0x6f, + 0x7d, 0x98, 0x4b, 0xdb, 0x07, 0xcd, 0x15, 0x27, 0x17, 0x2a, 0xa3, 0x59, 0xd6, 0x2b, 0x3e, 0xe8, + 0x4e, 0x79, 0xbe, 0xb4, 0x70, 0xa7, 0x32, 0x9a, 0x7b, 0xfc, 0x9e, 0x9f, 0x9a, 0x7c, 0xc1, 0x31, + 0xeb, 0xa6, 0x45, 0xce, 0xc3, 0x99, 0xd2, 0xd4, 0xed, 0xf2, 0xe4, 0x54, 0x75, 0x41, 0x2b, 0xdf, + 0x28, 0xcf, 0xc7, 0x6a, 0x3a, 0x09, 0x63, 0x51, 0x74, 0x71, 0xb1, 0x3c, 0x9a, 0x21, 0xa7, 0x80, + 0x44, 0xc1, 0xaf, 0x17, 0xe7, 0xa6, 0x47, 0xb3, 0x44, 0x81, 0x13, 0x51, 0x78, 0x79, 0x7e, 0xe9, + 0xd6, 0xfc, 0xd4, 0x68, 0xee, 0xf1, 0x9f, 0xcf, 0xc0, 0xc9, 0xd4, 0x08, 0x2b, 0x44, 0x85, 0x0b, + 0x53, 0xb3, 0xc5, 0xca, 0x52, 0x79, 0xb2, 0x32, 0x55, 0xd4, 0x26, 0x67, 0xaa, 0x93, 0xc5, 0xa5, + 0xa9, 0x1b, 0x0b, 0xda, 0x9b, 0xd5, 0x1b, 0x53, 0xf3, 0x53, 0x5a, 0x71, 0x76, 0xb4, 0x87, 0x3c, + 0x0a, 0xe3, 0x1d, 0x68, 0x2a, 0x53, 0x93, 0xb7, 0xb4, 0xf2, 0xd2, 0x9b, 0xa3, 0x19, 0xf2, 0x08, + 0x9c, 0xef, 0x48, 0xc4, 0x7e, 0x8f, 0x66, 0xc9, 0x05, 0x38, 0xdb, 0x89, 0xe4, 0x8d, 0xd9, 0xd1, + 0xdc, 0xe3, 0x3f, 0x9e, 0x01, 0x92, 0x0c, 0x91, 0x41, 0x1e, 0x86, 0x73, 0x4c, 0x2f, 0xaa, 0x9d, + 0x1b, 0xf8, 0x08, 0x9c, 0x4f, 0xa5, 0x90, 0x9a, 0x37, 0x0e, 0x0f, 0x75, 0x20, 0x11, 0x8d, 0x3b, + 0x07, 0x4a, 0x3a, 0x01, 0x36, 0xed, 0xb7, 0x32, 0x70, 0x32, 0xf5, 0x7c, 0x4d, 0x2e, 0xc1, 0xfb, + 0x8a, 0xa5, 0x39, 0xd6, 0x37, 0x93, 0x4b, 0xe5, 0x85, 0xf9, 0x4a, 0x75, 0x6e, 0xba, 0x58, 0x65, + 0xda, 0x77, 0xab, 0x12, 0xeb, 0xcd, 0x8b, 0xa0, 0x76, 0xa1, 0x9c, 0x9c, 0x29, 0xce, 0xdf, 0x60, + 0xc3, 0x8f, 0xbc, 0x0f, 0x1e, 0xee, 0x48, 0x37, 0x35, 0x5f, 0x9c, 0x98, 0x9d, 0x2a, 0x8d, 0x66, + 0xc9, 0x63, 0xf0, 0x48, 0x47, 0xaa, 0x52, 0xb9, 0xc2, 0xc9, 0x72, 0x13, 0xa5, 0x77, 0xfe, 0xd1, + 0x85, 0x9e, 0x77, 0xbe, 0x75, 0x21, 0xf3, 0x27, 0xdf, 0xba, 0x90, 0xf9, 0xab, 0x6f, 0x5d, 0xc8, + 0x7c, 0xe4, 0xda, 0x4e, 0x42, 0x9f, 0xf0, 0xe9, 0x77, 0xb9, 0x80, 0x7b, 0xdd, 0x67, 0xfe, 0x7d, + 0x00, 0x00, 0x00, 0xff, 0xff, 0xa8, 0xe4, 0x10, 0x03, 0x92, 0x64, 0x01, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -29514,6 +29647,29 @@ func (m *OneOf_PluginDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) { } return len(dAtA) - i, nil } +func (m *OneOf_GitCommand) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *OneOf_GitCommand) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GitCommand != nil { + { + size, err := m.GitCommand.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + i-- + dAtA[i] = 0xea + } + return len(dAtA) - i, nil +} func (m *StreamStatus) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -29538,12 +29694,12 @@ func (m *StreamStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n634, err634 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) - if err634 != nil { - return 0, err634 + n635, err635 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.LastUploadTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.LastUploadTime):]) + if err635 != nil { + return 0, err635 } - i -= n634 - i = encodeVarintEvents(dAtA, i, uint64(n634)) + i -= n635 + i = encodeVarintEvents(dAtA, i, uint64(n635)) i-- dAtA[i] = 0x1a if m.LastEventIndex != 0 { @@ -29702,12 +29858,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0xc2 } } - n638, err638 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) - if err638 != nil { - return 0, err638 + n639, err639 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.PreviousIdentityExpires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.PreviousIdentityExpires):]) + if err639 != nil { + return 0, err639 } - i -= n638 - i = encodeVarintEvents(dAtA, i, uint64(n638)) + i -= n639 + i = encodeVarintEvents(dAtA, i, uint64(n639)) i-- dAtA[i] = 0x1 i-- @@ -29855,12 +30011,12 @@ func (m *Identity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x4a } - n642, err642 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err642 != nil { - return 0, err642 + n643, err643 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err643 != nil { + return 0, err643 } - i -= n642 - i = encodeVarintEvents(dAtA, i, uint64(n642)) + i -= n643 + i = encodeVarintEvents(dAtA, i, uint64(n643)) i-- dAtA[i] = 0x42 if len(m.KubernetesUsers) > 0 { @@ -35195,6 +35351,176 @@ func (m *SPIFFEFederationDelete) MarshalToSizedBuffer(dAtA []byte) (int, error) return len(dAtA) - i, nil } +func (m *GitCommand) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitCommand) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitCommand) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Actions) > 0 { + for iNdEx := len(m.Actions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.Actions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x4a + } + } + if len(m.Path) > 0 { + i -= len(m.Path) + copy(dAtA[i:], m.Path) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Path))) + i-- + dAtA[i] = 0x42 + } + if len(m.Service) > 0 { + i -= len(m.Service) + copy(dAtA[i:], m.Service) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Service))) + i-- + dAtA[i] = 0x3a + } + { + size, err := m.CommandMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x32 + { + size, err := m.ServerMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2a + { + size, err := m.SessionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x22 + { + size, err := m.ConnectionMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1a + { + size, err := m.UserMetadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.Metadata.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintEvents(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *GitCommandAction) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitCommandAction) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitCommandAction) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.New) > 0 { + i -= len(m.New) + copy(dAtA[i:], m.New) + i = encodeVarintEvents(dAtA, i, uint64(len(m.New))) + i-- + dAtA[i] = 0x22 + } + if len(m.Old) > 0 { + i -= len(m.Old) + copy(dAtA[i:], m.Old) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Old))) + i-- + dAtA[i] = 0x1a + } + if len(m.Reference) > 0 { + i -= len(m.Reference) + copy(dAtA[i:], m.Reference) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Reference))) + i-- + dAtA[i] = 0x12 + } + if len(m.Action) > 0 { + i -= len(m.Action) + copy(dAtA[i:], m.Action) + i = encodeVarintEvents(dAtA, i, uint64(len(m.Action))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func encodeVarintEvents(dAtA []byte, offset int, v uint64) int { offset -= sovEvents(v) base := offset @@ -41093,6 +41419,18 @@ func (m *OneOf_PluginDelete) Size() (n int) { } return n } +func (m *OneOf_GitCommand) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GitCommand != nil { + l = m.GitCommand.Size() + n += 2 + l + sovEvents(uint64(l)) + } + return n +} func (m *StreamStatus) Size() (n int) { if m == nil { return 0 @@ -43180,6 +43518,72 @@ func (m *SPIFFEFederationDelete) Size() (n int) { return n } +func (m *GitCommand) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.Metadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.UserMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ConnectionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.SessionMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.ServerMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = m.CommandMetadata.Size() + n += 1 + l + sovEvents(uint64(l)) + l = len(m.Service) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Path) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if len(m.Actions) > 0 { + for _, e := range m.Actions { + l = e.Size() + n += 1 + l + sovEvents(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *GitCommandAction) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Action) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Reference) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.Old) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + l = len(m.New) + if l > 0 { + n += 1 + l + sovEvents(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func sovEvents(x uint64) (n int) { return (math_bits.Len64(x|1) + 6) / 7 } @@ -80856,6 +81260,41 @@ func (m *OneOf) Unmarshal(dAtA []byte) error { } m.Event = &OneOf_PluginDelete{v} iNdEx = postIndex + case 173: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitCommand", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &GitCommand{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Event = &OneOf_GitCommand{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -95874,13 +96313,355 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SPIFFEID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SPIFFEID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field DNSSANs", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.DNSSANs = append(m.DNSSANs, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field IPSANs", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.IPSANs = append(m.IPSANs, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SVIDType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SVIDType = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field SerialNumber", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.SerialNumber = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Hint", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Hint = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: AuthPreferenceUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AuthPreferenceUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -95907,15 +96688,15 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SPIFFEID", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -95925,29 +96706,30 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SPIFFEID = string(dAtA[iNdEx:postIndex]) + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DNSSANs", wireType) + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field AdminActionsMFA", wireType) } - var stringLen uint64 + m.AdminActionsMFA = 0 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -95957,29 +96739,67 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + m.AdminActionsMFA |= AdminActionsMFAStatus(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err } - postIndex := iNdEx + intStringLen - if postIndex < 0 { + if (skippy < 0) || (iNdEx+skippy) < 0 { return ErrInvalidLengthEvents } - if postIndex > l { + if (iNdEx + skippy) > l { return io.ErrUnexpectedEOF } - m.DNSSANs = append(m.DNSSANs, string(dAtA[iNdEx:postIndex])) - iNdEx = postIndex - case 6: + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field IPSANs", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -95989,29 +96809,30 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.IPSANs = append(m.IPSANs, string(dAtA[iNdEx:postIndex])) + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 7: + case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SVIDType", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96021,29 +96842,30 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SVIDType = string(dAtA[iNdEx:postIndex]) + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 8: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SerialNumber", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96053,29 +96875,30 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.SerialNumber = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 9: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Hint", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96085,23 +96908,24 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Hint = string(dAtA[iNdEx:postIndex]) + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex default: iNdEx = preIndex @@ -96125,7 +96949,7 @@ func (m *SPIFFESVIDIssued) Unmarshal(dAtA []byte) error { } return nil } -func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { +func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -96148,10 +96972,10 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AuthPreferenceUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: SessionRecordingConfigUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AuthPreferenceUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SessionRecordingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -96286,25 +97110,6 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field AdminActionsMFA", wireType) - } - m.AdminActionsMFA = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.AdminActionsMFA |= AdminActionsMFAStatus(b&0x7F) << shift - if b < 0x80 { - break - } - } default: iNdEx = preIndex skippy, err := skipEvents(dAtA[iNdEx:]) @@ -96327,7 +97132,7 @@ func (m *AuthPreferenceUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { +func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -96350,10 +97155,10 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: AccessPathChanged: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: ClusterNetworkingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AccessPathChanged: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -96391,9 +97196,9 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ChangeID", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96403,30 +97208,29 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.ChangeID = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceName", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96436,30 +97240,29 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.AffectedResourceName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceSource", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96469,24 +97272,55 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err + m.AffectedResourceSource = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceType", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF } + m.AffectedResourceType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -96510,7 +97344,7 @@ func (m *ClusterNetworkingConfigUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { +func (m *SpannerRPC) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -96533,10 +97367,10 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SessionRecordingConfigUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: SpannerRPC: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SessionRecordingConfigUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SpannerRPC: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -96574,7 +97408,7 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96601,13 +97435,13 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96634,13 +97468,13 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96667,64 +97501,13 @@ func (m *SessionRecordingConfigUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipEvents(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthEvents - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: AccessPathChanged: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: AccessPathChanged: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: + case 5: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96751,45 +97534,13 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ChangeID", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.ChangeID = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: + case 6: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceName", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Procedure", wireType) } var stringLen uint64 for shift := uint(0); ; shift += 7 { @@ -96817,13 +97568,13 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.AffectedResourceName = string(dAtA[iNdEx:postIndex]) + m.Procedure = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 4: + case 7: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceSource", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -96833,55 +97584,27 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.AffectedResourceSource = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field AffectedResourceType", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowEvents - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthEvents - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthEvents + if m.Args == nil { + m.Args = &Struct{} } - if postIndex > l { - return io.ErrUnexpectedEOF + if err := m.Args.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err } - m.AffectedResourceType = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex @@ -96905,7 +97628,7 @@ func (m *AccessPathChanged) Unmarshal(dAtA []byte) error { } return nil } -func (m *SpannerRPC) Unmarshal(dAtA []byte) error { +func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -96928,10 +97651,10 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SpannerRPC: wiretype end group for non-group") + return fmt.Errorf("proto: AccessGraphSettingsUpdate: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SpannerRPC: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: AccessGraphSettingsUpdate: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -96969,7 +97692,7 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -96996,13 +97719,13 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97029,13 +97752,13 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field DatabaseMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97062,13 +97785,97 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.DatabaseMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 5: + default: + iNdEx = preIndex + skippy, err := skipEvents(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthEvents + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: SPIFFEFederationCreate: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: SPIFFEFederationCreate: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97095,15 +97902,15 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex - case 6: + case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Procedure", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } - var stringLen uint64 + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97113,27 +97920,28 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - stringLen |= uint64(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - intStringLen := int(stringLen) - if intStringLen < 0 { + if msglen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + intStringLen + postIndex := iNdEx + msglen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - m.Procedure = string(dAtA[iNdEx:postIndex]) + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } iNdEx = postIndex - case 7: + case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Args", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97160,10 +97968,7 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if m.Args == nil { - m.Args = &Struct{} - } - if err := m.Args.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -97189,7 +97994,7 @@ func (m *SpannerRPC) Unmarshal(dAtA []byte) error { } return nil } -func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { +func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97212,10 +98017,10 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: AccessGraphSettingsUpdate: wiretype end group for non-group") + return fmt.Errorf("proto: SPIFFEFederationDelete: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: AccessGraphSettingsUpdate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: SPIFFEFederationDelete: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -97253,7 +98058,7 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Status", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97280,7 +98085,7 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Status.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -97372,7 +98177,7 @@ func (m *AccessGraphSettingsUpdate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { +func (m *GitCommand) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97395,10 +98200,10 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SPIFFEFederationCreate: wiretype end group for non-group") + return fmt.Errorf("proto: GitCommand: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SPIFFEFederationCreate: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GitCommand: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: @@ -97436,7 +98241,7 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97463,13 +98268,13 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97496,13 +98301,13 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field SessionMetadata", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -97529,7 +98334,171 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if err := m.SessionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 5: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServerMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.ServerMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 6: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CommandMetadata", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.CommandMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Service", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Service = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 8: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowEvents + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthEvents + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthEvents + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Actions = append(m.Actions, &GitCommandAction{}) + if err := m.Actions[len(m.Actions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } iNdEx = postIndex @@ -97555,7 +98524,7 @@ func (m *SPIFFEFederationCreate) Unmarshal(dAtA []byte) error { } return nil } -func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { +func (m *GitCommandAction) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 for iNdEx < l { @@ -97578,17 +98547,17 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { fieldNum := int32(wire >> 3) wireType := int(wire & 0x7) if wireType == 4 { - return fmt.Errorf("proto: SPIFFEFederationDelete: wiretype end group for non-group") + return fmt.Errorf("proto: GitCommandAction: wiretype end group for non-group") } if fieldNum <= 0 { - return fmt.Errorf("proto: SPIFFEFederationDelete: illegal tag %d (wire type %d)", fieldNum, wire) + return fmt.Errorf("proto: GitCommandAction: illegal tag %d (wire type %d)", fieldNum, wire) } switch fieldNum { case 1: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Metadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Action", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97598,30 +98567,29 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.Metadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Action = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ResourceMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Reference", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97631,30 +98599,29 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ResourceMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Reference = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 3: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field UserMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Old", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97664,30 +98631,29 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.UserMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.Old = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex case 4: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field ConnectionMetadata", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field New", wireType) } - var msglen int + var stringLen uint64 for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowEvents @@ -97697,24 +98663,23 @@ func (m *SPIFFEFederationDelete) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - msglen |= int(b&0x7F) << shift + stringLen |= uint64(b&0x7F) << shift if b < 0x80 { break } } - if msglen < 0 { + intStringLen := int(stringLen) + if intStringLen < 0 { return ErrInvalidLengthEvents } - postIndex := iNdEx + msglen + postIndex := iNdEx + intStringLen if postIndex < 0 { return ErrInvalidLengthEvents } if postIndex > l { return io.ErrUnexpectedEOF } - if err := m.ConnectionMetadata.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } + m.New = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex diff --git a/api/types/events/oneof.go b/api/types/events/oneof.go index 19b2a630f9d98..d3b526341c866 100644 --- a/api/types/events/oneof.go +++ b/api/types/events/oneof.go @@ -725,6 +725,10 @@ func ToOneOf(in AuditEvent) (*OneOf, error) { out.Event = &OneOf_PluginDelete{ PluginDelete: e, } + case *GitCommand: + out.Event = &OneOf_GitCommand{ + GitCommand: e, + } default: slog.ErrorContext(context.Background(), "Attempted to convert dynamic event of unknown type into protobuf event.", "event_type", in.GetType()) unknown := &Unknown{} diff --git a/api/types/integration.go b/api/types/integration.go index 73b0042bcab7e..7f2707e07c3d0 100644 --- a/api/types/integration.go +++ b/api/types/integration.go @@ -270,6 +270,9 @@ func (ig *IntegrationV1) SetGitHubSSHCertAuthority(cas []*SSHKeyPair) error { } spec := ig.Spec.GetGitHub() + if spec.Proxy == nil { + spec.Proxy = &GitHubProxy{} + } spec.Proxy.CertAuthority = cas ig.Spec.SubKindSpec = &IntegrationSpecV1_GitHub{ GitHub: spec, diff --git a/api/types/role.go b/api/types/role.go index 8fb37c253323b..5601880e577ea 100644 --- a/api/types/role.go +++ b/api/types/role.go @@ -270,6 +270,10 @@ type Role interface { GetSPIFFEConditions(rct RoleConditionType) []*SPIFFERoleCondition // SetSPIFFEConditions sets the allow or deny SPIFFERoleCondition. SetSPIFFEConditions(rct RoleConditionType, cond []*SPIFFERoleCondition) + + // TODO + GetGitHubPermissions(RoleConditionType) []GitHubPermission + SetGitHubPermissions(RoleConditionType, []GitHubPermission) } // NewRole constructs new standard V7 role. @@ -937,6 +941,20 @@ func (r *RoleV6) SetSPIFFEConditions(rct RoleConditionType, cond []*SPIFFERoleCo } } +func (r *RoleV6) GetGitHubPermissions(rct RoleConditionType) []GitHubPermission { + if rct == Allow { + return r.Spec.Allow.GithubPermissions + } + return r.Spec.Deny.GithubPermissions +} +func (r *RoleV6) SetGitHubPermissions(rct RoleConditionType, perms []GitHubPermission) { + if rct == Allow { + r.Spec.Allow.GithubPermissions = perms + } else { + r.Spec.Deny.GithubPermissions = perms + } +} + // GetPrivateKeyPolicy returns the private key policy enforced for this role. func (r *RoleV6) GetPrivateKeyPolicy() keys.PrivateKeyPolicy { switch r.Spec.Options.RequireMFAType { @@ -1844,10 +1862,25 @@ func (r *RoleV6) GetLabelMatchers(rct RoleConditionType, kind string) (LabelMatc return LabelMatchers{cond.WindowsDesktopLabels, cond.WindowsDesktopLabelsExpression}, nil case KindUserGroup: return LabelMatchers{cond.GroupLabels, cond.GroupLabelsExpression}, nil + case KindGitServer: + // TODO alternative to fake a label? + return r.makeGitServerLabelMatchers(cond), nil } return LabelMatchers{}, trace.BadParameter("can't get label matchers for resource kind %q", kind) } +func (r *RoleV6) makeGitServerLabelMatchers(cond *RoleConditions) LabelMatchers { + var gitHubOrgs []string + for _, perm := range cond.GithubPermissions { + gitHubOrgs = append(gitHubOrgs, perm.Organizations...) + } + return LabelMatchers{ + Labels: Labels{ + "teleport.hidden/github_organization": gitHubOrgs, + }, + } +} + // SetLabelMatchers sets the LabelMatchers that match labels of resources of // type [kind] this role is allowed or denied access to. func (r *RoleV6) SetLabelMatchers(rct RoleConditionType, kind string, labelMatchers LabelMatchers) error { diff --git a/api/types/server.go b/api/types/server.go index 105f4e9dc3a20..5adfe7b2b2112 100644 --- a/api/types/server.go +++ b/api/types/server.go @@ -408,7 +408,7 @@ func (s *ServerV2) IsOpenSSHNode() bool { // IsOpenSSHNodeSubKind returns whether the Node SubKind is from a server which accepts connections over the // OpenSSH daemon (instead of a Teleport Node). func IsOpenSSHNodeSubKind(subkind string) bool { - return subkind == SubKindOpenSSHNode || subkind == SubKindOpenSSHEICENode || subkind == SubKindOpenSSHGitHub + return subkind == SubKindOpenSSHNode || subkind == SubKindOpenSSHEICENode } // GetAWSAccountID returns the AWS Account ID if this node comes from an EC2 instance. @@ -501,20 +501,32 @@ func (s *ServerV2) openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults() er return nil } -const gitHubAddress = "github.com:22" +func MakeGitHubOrgServerDomain(org string) string { + return fmt.Sprintf("%s.%s", org, GitHubServerDomain) +} func (s *ServerV2) githubCheckAndSetDefaults() error { - switch s.Spec.Addr { - case gitHubAddress: + if s.Spec.GitHub == nil || s.Spec.GitHub.Organization == "" { + return trace.BadParameter("missing github organization") + } + if s.Spec.GitHub.Integration == "" { + return trace.BadParameter("missing github integration") + } + + hostname := MakeGitHubOrgServerDomain(s.Spec.GitHub.Organization) + switch s.Spec.Hostname { + case hostname: case "": - s.Spec.Addr = gitHubAddress + s.Spec.Hostname = hostname default: - slog.WarnContext(context.Background(), "invalid address for GitHub server. Address will be replaced with %q", gitHubAddress) - s.Spec.Addr = gitHubAddress + slog.WarnContext(context.Background(), "invalid hostname for GitHub server. Hostname will be replaced with %q", hostname) + s.Spec.Hostname = hostname } - if err := s.openSSHNodeCheckAndSetDefaults(); err != nil { - return trace.Wrap(err) + + if s.Metadata.Labels == nil { + s.Metadata.Labels = make(map[string]string) } + s.Metadata.Labels["teleport.hidden/github_organization"] = s.Spec.GitHub.Organization return nil } @@ -555,7 +567,7 @@ func (s *ServerV2) CheckAndSetDefaults() error { // if the server is a registered OpenSSH node, allow the name to be // randomly generated s.Metadata.Name = uuid.NewString() - case SubKindOpenSSHGitHub: + case SubKindGitHub: s.Metadata.Name = uuid.NewString() } } @@ -564,33 +576,39 @@ func (s *ServerV2) CheckAndSetDefaults() error { return trace.Wrap(err) } - if s.Kind == "" { + // TODO refactor + switch s.Kind { + case "": return trace.BadParameter("server Kind is empty") - } - if s.Kind != KindNode && s.SubKind != "" { - return trace.BadParameter(`server SubKind must only be set when Kind is "node"`) - } - - switch s.SubKind { - case "", SubKindTeleportNode: - // allow but do nothing - case SubKindOpenSSHNode: - if err := s.openSSHNodeCheckAndSetDefaults(); err != nil { - return trace.Wrap(err) - } + case KindNode: + switch s.SubKind { + case "", SubKindTeleportNode: + // allow but do nothing + case SubKindOpenSSHNode: + if err := s.openSSHNodeCheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } - case SubKindOpenSSHEICENode: - if err := s.openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults(); err != nil { - return trace.Wrap(err) + case SubKindOpenSSHEICENode: + if err := s.openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + default: + return trace.BadParameter("invalid SubKind %q for %q", s.SubKind, s.Kind) } - - case SubKindOpenSSHGitHub: - if err := s.githubCheckAndSetDefaults(); err != nil { - return trace.Wrap(err) + case KindGitServer: + switch s.SubKind { + case SubKindGitHub: + if err := s.githubCheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + default: + return trace.BadParameter("invalid SubKind %q for %q with spec", s.SubKind, s.Kind, s) } - default: - return trace.BadParameter("invalid SubKind %q", s.SubKind) + if s.SubKind != "" { + return trace.BadParameter(`server SubKind must only be set when Kind is "node" or "git_server"`) + } } for key := range s.Spec.CmdLabels { diff --git a/api/types/types.pb.go b/api/types/types.pb.go index 6cf1ebbba2763..63123587099ca 100644 --- a/api/types/types.pb.go +++ b/api/types/types.pb.go @@ -1020,7 +1020,7 @@ func (x ConnectionDiagnosticTrace_TraceType) String() string { } func (ConnectionDiagnosticTrace_TraceType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{244, 0} + return fileDescriptor_9198ee693835762e, []int{245, 0} } // StatusType describes whether this was a success or a failure. @@ -1049,7 +1049,7 @@ func (x ConnectionDiagnosticTrace_StatusType) String() string { } func (ConnectionDiagnosticTrace_StatusType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{244, 1} + return fileDescriptor_9198ee693835762e, []int{245, 1} } // OktaAssignmentStatus represents the status of an Okta assignment. @@ -1089,7 +1089,7 @@ func (x OktaAssignmentSpecV1_OktaAssignmentStatus) String() string { } func (OktaAssignmentSpecV1_OktaAssignmentStatus) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{315, 0} + return fileDescriptor_9198ee693835762e, []int{316, 0} } // OktaAssignmentTargetType is the type of Okta object that an assignment is targeting. @@ -1121,7 +1121,7 @@ func (x OktaAssignmentTargetV1_OktaAssignmentTargetType) String() string { } func (OktaAssignmentTargetV1_OktaAssignmentTargetType) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{316, 0} + return fileDescriptor_9198ee693835762e, []int{317, 0} } type KeepAlive struct { @@ -7900,6 +7900,7 @@ type RoleConditions struct { // SPIFFE is used to allow or deny access to a role holder to generating a // SPIFFE SVID. SPIFFE []*SPIFFERoleCondition `protobuf:"bytes,39,rep,name=SPIFFE,proto3" json:"spiffe,omitempty"` + GithubPermissions []GitHubPermission `protobuf:"bytes,42,rep,name=github_permissions,json=githubPermissions,proto3" json:"github_permissions,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -7938,6 +7939,47 @@ func (m *RoleConditions) XXX_DiscardUnknown() { var xxx_messageInfo_RoleConditions proto.InternalMessageInfo +// GitHubPermission defines Git integration related permissions. +type GitHubPermission struct { + Organizations []string `protobuf:"bytes,1,rep,name=organizations,proto3" json:"orgs,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubPermission) Reset() { *m = GitHubPermission{} } +func (m *GitHubPermission) String() string { return proto.CompactTextString(m) } +func (*GitHubPermission) ProtoMessage() {} +func (*GitHubPermission) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{119} +} +func (m *GitHubPermission) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubPermission) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubPermission.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubPermission) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubPermission.Merge(m, src) +} +func (m *GitHubPermission) XXX_Size() int { + return m.Size() +} +func (m *GitHubPermission) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubPermission.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubPermission proto.InternalMessageInfo + // SPIFFERoleCondition sets out which SPIFFE identities this role is allowed or // denied to generate. The Path matcher is required, and is evaluated first. If, // the Path does not match then the other matcher fields are not evaluated. @@ -7985,7 +8027,7 @@ func (m *SPIFFERoleCondition) Reset() { *m = SPIFFERoleCondition{} } func (m *SPIFFERoleCondition) String() string { return proto.CompactTextString(m) } func (*SPIFFERoleCondition) ProtoMessage() {} func (*SPIFFERoleCondition) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{119} + return fileDescriptor_9198ee693835762e, []int{120} } func (m *SPIFFERoleCondition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8029,7 +8071,7 @@ func (m *DatabasePermission) Reset() { *m = DatabasePermission{} } func (m *DatabasePermission) String() string { return proto.CompactTextString(m) } func (*DatabasePermission) ProtoMessage() {} func (*DatabasePermission) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{120} + return fileDescriptor_9198ee693835762e, []int{121} } func (m *DatabasePermission) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8080,7 +8122,7 @@ func (m *KubernetesResource) Reset() { *m = KubernetesResource{} } func (m *KubernetesResource) String() string { return proto.CompactTextString(m) } func (*KubernetesResource) ProtoMessage() {} func (*KubernetesResource) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{121} + return fileDescriptor_9198ee693835762e, []int{122} } func (m *KubernetesResource) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8133,7 +8175,7 @@ func (m *SessionRequirePolicy) Reset() { *m = SessionRequirePolicy{} } func (m *SessionRequirePolicy) String() string { return proto.CompactTextString(m) } func (*SessionRequirePolicy) ProtoMessage() {} func (*SessionRequirePolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{122} + return fileDescriptor_9198ee693835762e, []int{123} } func (m *SessionRequirePolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8181,7 +8223,7 @@ func (m *SessionJoinPolicy) Reset() { *m = SessionJoinPolicy{} } func (m *SessionJoinPolicy) String() string { return proto.CompactTextString(m) } func (*SessionJoinPolicy) ProtoMessage() {} func (*SessionJoinPolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{123} + return fileDescriptor_9198ee693835762e, []int{124} } func (m *SessionJoinPolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8250,7 +8292,7 @@ func (m *AccessRequestConditions) Reset() { *m = AccessRequestConditions func (m *AccessRequestConditions) String() string { return proto.CompactTextString(m) } func (*AccessRequestConditions) ProtoMessage() {} func (*AccessRequestConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{124} + return fileDescriptor_9198ee693835762e, []int{125} } func (m *AccessRequestConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8303,7 +8345,7 @@ func (m *AccessReviewConditions) Reset() { *m = AccessReviewConditions{} func (m *AccessReviewConditions) String() string { return proto.CompactTextString(m) } func (*AccessReviewConditions) ProtoMessage() {} func (*AccessReviewConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{125} + return fileDescriptor_9198ee693835762e, []int{126} } func (m *AccessReviewConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8345,7 +8387,7 @@ func (m *AccessRequestAllowedPromotion) Reset() { *m = AccessRequestAllo func (m *AccessRequestAllowedPromotion) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotion) ProtoMessage() {} func (*AccessRequestAllowedPromotion) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{126} + return fileDescriptor_9198ee693835762e, []int{127} } func (m *AccessRequestAllowedPromotion) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8388,7 +8430,7 @@ func (m *AccessRequestAllowedPromotions) Reset() { *m = AccessRequestAll func (m *AccessRequestAllowedPromotions) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotions) ProtoMessage() {} func (*AccessRequestAllowedPromotions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{127} + return fileDescriptor_9198ee693835762e, []int{128} } func (m *AccessRequestAllowedPromotions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8434,7 +8476,7 @@ func (m *ClaimMapping) Reset() { *m = ClaimMapping{} } func (m *ClaimMapping) String() string { return proto.CompactTextString(m) } func (*ClaimMapping) ProtoMessage() {} func (*ClaimMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{128} + return fileDescriptor_9198ee693835762e, []int{129} } func (m *ClaimMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8480,7 +8522,7 @@ func (m *TraitMapping) Reset() { *m = TraitMapping{} } func (m *TraitMapping) String() string { return proto.CompactTextString(m) } func (*TraitMapping) ProtoMessage() {} func (*TraitMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{129} + return fileDescriptor_9198ee693835762e, []int{130} } func (m *TraitMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8529,7 +8571,7 @@ func (m *Rule) Reset() { *m = Rule{} } func (m *Rule) String() string { return proto.CompactTextString(m) } func (*Rule) ProtoMessage() {} func (*Rule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{130} + return fileDescriptor_9198ee693835762e, []int{131} } func (m *Rule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8577,7 +8619,7 @@ func (m *ImpersonateConditions) Reset() { *m = ImpersonateConditions{} } func (m *ImpersonateConditions) String() string { return proto.CompactTextString(m) } func (*ImpersonateConditions) ProtoMessage() {} func (*ImpersonateConditions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{131} + return fileDescriptor_9198ee693835762e, []int{132} } func (m *ImpersonateConditions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8619,7 +8661,7 @@ func (m *BoolValue) Reset() { *m = BoolValue{} } func (m *BoolValue) String() string { return proto.CompactTextString(m) } func (*BoolValue) ProtoMessage() {} func (*BoolValue) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{132} + return fileDescriptor_9198ee693835762e, []int{133} } func (m *BoolValue) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8661,7 +8703,7 @@ func (m *UserFilter) Reset() { *m = UserFilter{} } func (m *UserFilter) String() string { return proto.CompactTextString(m) } func (*UserFilter) ProtoMessage() {} func (*UserFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{133} + return fileDescriptor_9198ee693835762e, []int{134} } func (m *UserFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8712,7 +8754,7 @@ type UserV2 struct { func (m *UserV2) Reset() { *m = UserV2{} } func (*UserV2) ProtoMessage() {} func (*UserV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{134} + return fileDescriptor_9198ee693835762e, []int{135} } func (m *UserV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8758,7 +8800,7 @@ func (m *UserStatusV2) Reset() { *m = UserStatusV2{} } func (m *UserStatusV2) String() string { return proto.CompactTextString(m) } func (*UserStatusV2) ProtoMessage() {} func (*UserStatusV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{135} + return fileDescriptor_9198ee693835762e, []int{136} } func (m *UserStatusV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8832,7 +8874,7 @@ func (m *UserSpecV2) Reset() { *m = UserSpecV2{} } func (m *UserSpecV2) String() string { return proto.CompactTextString(m) } func (*UserSpecV2) ProtoMessage() {} func (*UserSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{136} + return fileDescriptor_9198ee693835762e, []int{137} } func (m *UserSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8879,7 +8921,7 @@ type ExternalIdentity struct { func (m *ExternalIdentity) Reset() { *m = ExternalIdentity{} } func (*ExternalIdentity) ProtoMessage() {} func (*ExternalIdentity) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{137} + return fileDescriptor_9198ee693835762e, []int{138} } func (m *ExternalIdentity) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8927,7 +8969,7 @@ func (m *LoginStatus) Reset() { *m = LoginStatus{} } func (m *LoginStatus) String() string { return proto.CompactTextString(m) } func (*LoginStatus) ProtoMessage() {} func (*LoginStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{138} + return fileDescriptor_9198ee693835762e, []int{139} } func (m *LoginStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8972,7 +9014,7 @@ type CreatedBy struct { func (m *CreatedBy) Reset() { *m = CreatedBy{} } func (*CreatedBy) ProtoMessage() {} func (*CreatedBy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{139} + return fileDescriptor_9198ee693835762e, []int{140} } func (m *CreatedBy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9021,7 +9063,7 @@ func (m *LocalAuthSecrets) Reset() { *m = LocalAuthSecrets{} } func (m *LocalAuthSecrets) String() string { return proto.CompactTextString(m) } func (*LocalAuthSecrets) ProtoMessage() {} func (*LocalAuthSecrets) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{140} + return fileDescriptor_9198ee693835762e, []int{141} } func (m *LocalAuthSecrets) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9077,7 +9119,7 @@ func (m *MFADevice) Reset() { *m = MFADevice{} } func (m *MFADevice) String() string { return proto.CompactTextString(m) } func (*MFADevice) ProtoMessage() {} func (*MFADevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{141} + return fileDescriptor_9198ee693835762e, []int{142} } func (m *MFADevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9175,7 +9217,7 @@ func (m *TOTPDevice) Reset() { *m = TOTPDevice{} } func (m *TOTPDevice) String() string { return proto.CompactTextString(m) } func (*TOTPDevice) ProtoMessage() {} func (*TOTPDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{142} + return fileDescriptor_9198ee693835762e, []int{143} } func (m *TOTPDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9221,7 +9263,7 @@ func (m *U2FDevice) Reset() { *m = U2FDevice{} } func (m *U2FDevice) String() string { return proto.CompactTextString(m) } func (*U2FDevice) ProtoMessage() {} func (*U2FDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{143} + return fileDescriptor_9198ee693835762e, []int{144} } func (m *U2FDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9303,7 +9345,7 @@ func (m *WebauthnDevice) Reset() { *m = WebauthnDevice{} } func (m *WebauthnDevice) String() string { return proto.CompactTextString(m) } func (*WebauthnDevice) ProtoMessage() {} func (*WebauthnDevice) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{144} + return fileDescriptor_9198ee693835762e, []int{145} } func (m *WebauthnDevice) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9346,7 +9388,7 @@ func (m *WebauthnLocalAuth) Reset() { *m = WebauthnLocalAuth{} } func (m *WebauthnLocalAuth) String() string { return proto.CompactTextString(m) } func (*WebauthnLocalAuth) ProtoMessage() {} func (*WebauthnLocalAuth) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{145} + return fileDescriptor_9198ee693835762e, []int{146} } func (m *WebauthnLocalAuth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9392,7 +9434,7 @@ func (m *ConnectorRef) Reset() { *m = ConnectorRef{} } func (m *ConnectorRef) String() string { return proto.CompactTextString(m) } func (*ConnectorRef) ProtoMessage() {} func (*ConnectorRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{146} + return fileDescriptor_9198ee693835762e, []int{147} } func (m *ConnectorRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9434,7 +9476,7 @@ func (m *UserRef) Reset() { *m = UserRef{} } func (m *UserRef) String() string { return proto.CompactTextString(m) } func (*UserRef) ProtoMessage() {} func (*UserRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{147} + return fileDescriptor_9198ee693835762e, []int{148} } func (m *UserRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9484,7 +9526,7 @@ func (m *ReverseTunnelV2) Reset() { *m = ReverseTunnelV2{} } func (m *ReverseTunnelV2) String() string { return proto.CompactTextString(m) } func (*ReverseTunnelV2) ProtoMessage() {} func (*ReverseTunnelV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{148} + return fileDescriptor_9198ee693835762e, []int{149} } func (m *ReverseTunnelV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9531,7 +9573,7 @@ func (m *ReverseTunnelSpecV2) Reset() { *m = ReverseTunnelSpecV2{} } func (m *ReverseTunnelSpecV2) String() string { return proto.CompactTextString(m) } func (*ReverseTunnelSpecV2) ProtoMessage() {} func (*ReverseTunnelSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{149} + return fileDescriptor_9198ee693835762e, []int{150} } func (m *ReverseTunnelSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9580,7 +9622,7 @@ type TunnelConnectionV2 struct { func (m *TunnelConnectionV2) Reset() { *m = TunnelConnectionV2{} } func (*TunnelConnectionV2) ProtoMessage() {} func (*TunnelConnectionV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{150} + return fileDescriptor_9198ee693835762e, []int{151} } func (m *TunnelConnectionV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9628,7 +9670,7 @@ func (m *TunnelConnectionSpecV2) Reset() { *m = TunnelConnectionSpecV2{} func (m *TunnelConnectionSpecV2) String() string { return proto.CompactTextString(m) } func (*TunnelConnectionSpecV2) ProtoMessage() {} func (*TunnelConnectionSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{151} + return fileDescriptor_9198ee693835762e, []int{152} } func (m *TunnelConnectionSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9676,7 +9718,7 @@ func (m *SemaphoreFilter) Reset() { *m = SemaphoreFilter{} } func (m *SemaphoreFilter) String() string { return proto.CompactTextString(m) } func (*SemaphoreFilter) ProtoMessage() {} func (*SemaphoreFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{152} + return fileDescriptor_9198ee693835762e, []int{153} } func (m *SemaphoreFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9727,7 +9769,7 @@ func (m *AcquireSemaphoreRequest) Reset() { *m = AcquireSemaphoreRequest func (m *AcquireSemaphoreRequest) String() string { return proto.CompactTextString(m) } func (*AcquireSemaphoreRequest) ProtoMessage() {} func (*AcquireSemaphoreRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{153} + return fileDescriptor_9198ee693835762e, []int{154} } func (m *AcquireSemaphoreRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9775,7 +9817,7 @@ func (m *SemaphoreLease) Reset() { *m = SemaphoreLease{} } func (m *SemaphoreLease) String() string { return proto.CompactTextString(m) } func (*SemaphoreLease) ProtoMessage() {} func (*SemaphoreLease) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{154} + return fileDescriptor_9198ee693835762e, []int{155} } func (m *SemaphoreLease) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9821,7 +9863,7 @@ func (m *SemaphoreLeaseRef) Reset() { *m = SemaphoreLeaseRef{} } func (m *SemaphoreLeaseRef) String() string { return proto.CompactTextString(m) } func (*SemaphoreLeaseRef) ProtoMessage() {} func (*SemaphoreLeaseRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{155} + return fileDescriptor_9198ee693835762e, []int{156} } func (m *SemaphoreLeaseRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9870,7 +9912,7 @@ type SemaphoreV3 struct { func (m *SemaphoreV3) Reset() { *m = SemaphoreV3{} } func (*SemaphoreV3) ProtoMessage() {} func (*SemaphoreV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{156} + return fileDescriptor_9198ee693835762e, []int{157} } func (m *SemaphoreV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9912,7 +9954,7 @@ func (m *SemaphoreSpecV3) Reset() { *m = SemaphoreSpecV3{} } func (m *SemaphoreSpecV3) String() string { return proto.CompactTextString(m) } func (*SemaphoreSpecV3) ProtoMessage() {} func (*SemaphoreSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{157} + return fileDescriptor_9198ee693835762e, []int{158} } func (m *SemaphoreSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9961,7 +10003,7 @@ type WebSessionV2 struct { func (m *WebSessionV2) Reset() { *m = WebSessionV2{} } func (*WebSessionV2) ProtoMessage() {} func (*WebSessionV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{158} + return fileDescriptor_9198ee693835762e, []int{159} } func (m *WebSessionV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10046,7 +10088,7 @@ func (m *WebSessionSpecV2) Reset() { *m = WebSessionSpecV2{} } func (m *WebSessionSpecV2) String() string { return proto.CompactTextString(m) } func (*WebSessionSpecV2) ProtoMessage() {} func (*WebSessionSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{159} + return fileDescriptor_9198ee693835762e, []int{160} } func (m *WebSessionSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10091,7 +10133,7 @@ func (m *DeviceWebToken) Reset() { *m = DeviceWebToken{} } func (m *DeviceWebToken) String() string { return proto.CompactTextString(m) } func (*DeviceWebToken) ProtoMessage() {} func (*DeviceWebToken) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{160} + return fileDescriptor_9198ee693835762e, []int{161} } func (m *DeviceWebToken) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10133,7 +10175,7 @@ func (m *WebSessionFilter) Reset() { *m = WebSessionFilter{} } func (m *WebSessionFilter) String() string { return proto.CompactTextString(m) } func (*WebSessionFilter) ProtoMessage() {} func (*WebSessionFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{161} + return fileDescriptor_9198ee693835762e, []int{162} } func (m *WebSessionFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10204,7 +10246,7 @@ func (m *SAMLSessionData) Reset() { *m = SAMLSessionData{} } func (m *SAMLSessionData) String() string { return proto.CompactTextString(m) } func (*SAMLSessionData) ProtoMessage() {} func (*SAMLSessionData) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{162} + return fileDescriptor_9198ee693835762e, []int{163} } func (m *SAMLSessionData) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10253,7 +10295,7 @@ func (m *SAMLAttribute) Reset() { *m = SAMLAttribute{} } func (m *SAMLAttribute) String() string { return proto.CompactTextString(m) } func (*SAMLAttribute) ProtoMessage() {} func (*SAMLAttribute) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{163} + return fileDescriptor_9198ee693835762e, []int{164} } func (m *SAMLAttribute) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10300,7 +10342,7 @@ func (m *SAMLAttributeValue) Reset() { *m = SAMLAttributeValue{} } func (m *SAMLAttributeValue) String() string { return proto.CompactTextString(m) } func (*SAMLAttributeValue) ProtoMessage() {} func (*SAMLAttributeValue) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{164} + return fileDescriptor_9198ee693835762e, []int{165} } func (m *SAMLAttributeValue) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10351,7 +10393,7 @@ func (m *SAMLNameID) Reset() { *m = SAMLNameID{} } func (m *SAMLNameID) String() string { return proto.CompactTextString(m) } func (*SAMLNameID) ProtoMessage() {} func (*SAMLNameID) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{165} + return fileDescriptor_9198ee693835762e, []int{166} } func (m *SAMLNameID) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10400,7 +10442,7 @@ type RemoteClusterV3 struct { func (m *RemoteClusterV3) Reset() { *m = RemoteClusterV3{} } func (*RemoteClusterV3) ProtoMessage() {} func (*RemoteClusterV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{166} + return fileDescriptor_9198ee693835762e, []int{167} } func (m *RemoteClusterV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10444,7 +10486,7 @@ func (m *RemoteClusterStatusV3) Reset() { *m = RemoteClusterStatusV3{} } func (m *RemoteClusterStatusV3) String() string { return proto.CompactTextString(m) } func (*RemoteClusterStatusV3) ProtoMessage() {} func (*RemoteClusterStatusV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{167} + return fileDescriptor_9198ee693835762e, []int{168} } func (m *RemoteClusterStatusV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10494,7 +10536,7 @@ func (m *KubernetesCluster) Reset() { *m = KubernetesCluster{} } func (m *KubernetesCluster) String() string { return proto.CompactTextString(m) } func (*KubernetesCluster) ProtoMessage() {} func (*KubernetesCluster) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{168} + return fileDescriptor_9198ee693835762e, []int{169} } func (m *KubernetesCluster) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10543,7 +10585,7 @@ type KubernetesClusterV3 struct { func (m *KubernetesClusterV3) Reset() { *m = KubernetesClusterV3{} } func (*KubernetesClusterV3) ProtoMessage() {} func (*KubernetesClusterV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{169} + return fileDescriptor_9198ee693835762e, []int{170} } func (m *KubernetesClusterV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10594,7 +10636,7 @@ func (m *KubernetesClusterSpecV3) Reset() { *m = KubernetesClusterSpecV3 func (m *KubernetesClusterSpecV3) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterSpecV3) ProtoMessage() {} func (*KubernetesClusterSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{170} + return fileDescriptor_9198ee693835762e, []int{171} } func (m *KubernetesClusterSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10642,7 +10684,7 @@ func (m *KubeAzure) Reset() { *m = KubeAzure{} } func (m *KubeAzure) String() string { return proto.CompactTextString(m) } func (*KubeAzure) ProtoMessage() {} func (*KubeAzure) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{171} + return fileDescriptor_9198ee693835762e, []int{172} } func (m *KubeAzure) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10688,7 +10730,7 @@ func (m *KubeAWS) Reset() { *m = KubeAWS{} } func (m *KubeAWS) String() string { return proto.CompactTextString(m) } func (*KubeAWS) ProtoMessage() {} func (*KubeAWS) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{172} + return fileDescriptor_9198ee693835762e, []int{173} } func (m *KubeAWS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10734,7 +10776,7 @@ func (m *KubeGCP) Reset() { *m = KubeGCP{} } func (m *KubeGCP) String() string { return proto.CompactTextString(m) } func (*KubeGCP) ProtoMessage() {} func (*KubeGCP) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{173} + return fileDescriptor_9198ee693835762e, []int{174} } func (m *KubeGCP) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10776,7 +10818,7 @@ func (m *KubernetesClusterV3List) Reset() { *m = KubernetesClusterV3List func (m *KubernetesClusterV3List) String() string { return proto.CompactTextString(m) } func (*KubernetesClusterV3List) ProtoMessage() {} func (*KubernetesClusterV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{174} + return fileDescriptor_9198ee693835762e, []int{175} } func (m *KubernetesClusterV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10825,7 +10867,7 @@ type KubernetesServerV3 struct { func (m *KubernetesServerV3) Reset() { *m = KubernetesServerV3{} } func (*KubernetesServerV3) ProtoMessage() {} func (*KubernetesServerV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{175} + return fileDescriptor_9198ee693835762e, []int{176} } func (m *KubernetesServerV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10877,7 +10919,7 @@ func (m *KubernetesServerSpecV3) Reset() { *m = KubernetesServerSpecV3{} func (m *KubernetesServerSpecV3) String() string { return proto.CompactTextString(m) } func (*KubernetesServerSpecV3) ProtoMessage() {} func (*KubernetesServerSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{176} + return fileDescriptor_9198ee693835762e, []int{177} } func (m *KubernetesServerSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10929,7 +10971,7 @@ type WebTokenV3 struct { func (m *WebTokenV3) Reset() { *m = WebTokenV3{} } func (*WebTokenV3) ProtoMessage() {} func (*WebTokenV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{177} + return fileDescriptor_9198ee693835762e, []int{178} } func (m *WebTokenV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10973,7 +11015,7 @@ func (m *WebTokenSpecV3) Reset() { *m = WebTokenSpecV3{} } func (m *WebTokenSpecV3) String() string { return proto.CompactTextString(m) } func (*WebTokenSpecV3) ProtoMessage() {} func (*WebTokenSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{178} + return fileDescriptor_9198ee693835762e, []int{179} } func (m *WebTokenSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11017,7 +11059,7 @@ func (m *GetWebSessionRequest) Reset() { *m = GetWebSessionRequest{} } func (m *GetWebSessionRequest) String() string { return proto.CompactTextString(m) } func (*GetWebSessionRequest) ProtoMessage() {} func (*GetWebSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{179} + return fileDescriptor_9198ee693835762e, []int{180} } func (m *GetWebSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11061,7 +11103,7 @@ func (m *DeleteWebSessionRequest) Reset() { *m = DeleteWebSessionRequest func (m *DeleteWebSessionRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWebSessionRequest) ProtoMessage() {} func (*DeleteWebSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{180} + return fileDescriptor_9198ee693835762e, []int{181} } func (m *DeleteWebSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11105,7 +11147,7 @@ func (m *GetWebTokenRequest) Reset() { *m = GetWebTokenRequest{} } func (m *GetWebTokenRequest) String() string { return proto.CompactTextString(m) } func (*GetWebTokenRequest) ProtoMessage() {} func (*GetWebTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{181} + return fileDescriptor_9198ee693835762e, []int{182} } func (m *GetWebTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11149,7 +11191,7 @@ func (m *DeleteWebTokenRequest) Reset() { *m = DeleteWebTokenRequest{} } func (m *DeleteWebTokenRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWebTokenRequest) ProtoMessage() {} func (*DeleteWebTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{182} + return fileDescriptor_9198ee693835762e, []int{183} } func (m *DeleteWebTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11191,7 +11233,7 @@ func (m *ResourceRequest) Reset() { *m = ResourceRequest{} } func (m *ResourceRequest) String() string { return proto.CompactTextString(m) } func (*ResourceRequest) ProtoMessage() {} func (*ResourceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{183} + return fileDescriptor_9198ee693835762e, []int{184} } func (m *ResourceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11235,7 +11277,7 @@ func (m *ResourceWithSecretsRequest) Reset() { *m = ResourceWithSecretsR func (m *ResourceWithSecretsRequest) String() string { return proto.CompactTextString(m) } func (*ResourceWithSecretsRequest) ProtoMessage() {} func (*ResourceWithSecretsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{184} + return fileDescriptor_9198ee693835762e, []int{185} } func (m *ResourceWithSecretsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11277,7 +11319,7 @@ func (m *ResourcesWithSecretsRequest) Reset() { *m = ResourcesWithSecret func (m *ResourcesWithSecretsRequest) String() string { return proto.CompactTextString(m) } func (*ResourcesWithSecretsRequest) ProtoMessage() {} func (*ResourcesWithSecretsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{185} + return fileDescriptor_9198ee693835762e, []int{186} } func (m *ResourcesWithSecretsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11321,7 +11363,7 @@ func (m *ResourceInNamespaceRequest) Reset() { *m = ResourceInNamespaceR func (m *ResourceInNamespaceRequest) String() string { return proto.CompactTextString(m) } func (*ResourceInNamespaceRequest) ProtoMessage() {} func (*ResourceInNamespaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{186} + return fileDescriptor_9198ee693835762e, []int{187} } func (m *ResourceInNamespaceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11363,7 +11405,7 @@ func (m *ResourcesInNamespaceRequest) Reset() { *m = ResourcesInNamespac func (m *ResourcesInNamespaceRequest) String() string { return proto.CompactTextString(m) } func (*ResourcesInNamespaceRequest) ProtoMessage() {} func (*ResourcesInNamespaceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{187} + return fileDescriptor_9198ee693835762e, []int{188} } func (m *ResourcesInNamespaceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11414,7 +11456,7 @@ func (m *OIDCConnectorV3) Reset() { *m = OIDCConnectorV3{} } func (m *OIDCConnectorV3) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorV3) ProtoMessage() {} func (*OIDCConnectorV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{188} + return fileDescriptor_9198ee693835762e, []int{189} } func (m *OIDCConnectorV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11456,7 +11498,7 @@ func (m *OIDCConnectorV3List) Reset() { *m = OIDCConnectorV3List{} } func (m *OIDCConnectorV3List) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorV3List) ProtoMessage() {} func (*OIDCConnectorV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{189} + return fileDescriptor_9198ee693835762e, []int{190} } func (m *OIDCConnectorV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11542,7 +11584,7 @@ func (m *OIDCConnectorSpecV3) Reset() { *m = OIDCConnectorSpecV3{} } func (m *OIDCConnectorSpecV3) String() string { return proto.CompactTextString(m) } func (*OIDCConnectorSpecV3) ProtoMessage() {} func (*OIDCConnectorSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{190} + return fileDescriptor_9198ee693835762e, []int{191} } func (m *OIDCConnectorSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11584,7 +11626,7 @@ func (m *MaxAge) Reset() { *m = MaxAge{} } func (m *MaxAge) String() string { return proto.CompactTextString(m) } func (*MaxAge) ProtoMessage() {} func (*MaxAge) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{191} + return fileDescriptor_9198ee693835762e, []int{192} } func (m *MaxAge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11629,7 +11671,7 @@ func (m *SSOClientRedirectSettings) Reset() { *m = SSOClientRedirectSett func (m *SSOClientRedirectSettings) String() string { return proto.CompactTextString(m) } func (*SSOClientRedirectSettings) ProtoMessage() {} func (*SSOClientRedirectSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{192} + return fileDescriptor_9198ee693835762e, []int{193} } func (m *SSOClientRedirectSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11718,7 +11760,7 @@ func (m *OIDCAuthRequest) Reset() { *m = OIDCAuthRequest{} } func (m *OIDCAuthRequest) String() string { return proto.CompactTextString(m) } func (*OIDCAuthRequest) ProtoMessage() {} func (*OIDCAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{193} + return fileDescriptor_9198ee693835762e, []int{194} } func (m *OIDCAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11769,7 +11811,7 @@ func (m *SAMLConnectorV2) Reset() { *m = SAMLConnectorV2{} } func (m *SAMLConnectorV2) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorV2) ProtoMessage() {} func (*SAMLConnectorV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{194} + return fileDescriptor_9198ee693835762e, []int{195} } func (m *SAMLConnectorV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11811,7 +11853,7 @@ func (m *SAMLConnectorV2List) Reset() { *m = SAMLConnectorV2List{} } func (m *SAMLConnectorV2List) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorV2List) ProtoMessage() {} func (*SAMLConnectorV2List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{195} + return fileDescriptor_9198ee693835762e, []int{196} } func (m *SAMLConnectorV2List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11888,7 +11930,7 @@ func (m *SAMLConnectorSpecV2) Reset() { *m = SAMLConnectorSpecV2{} } func (m *SAMLConnectorSpecV2) String() string { return proto.CompactTextString(m) } func (*SAMLConnectorSpecV2) ProtoMessage() {} func (*SAMLConnectorSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{196} + return fileDescriptor_9198ee693835762e, []int{197} } func (m *SAMLConnectorSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11970,7 +12012,7 @@ func (m *SAMLAuthRequest) Reset() { *m = SAMLAuthRequest{} } func (m *SAMLAuthRequest) String() string { return proto.CompactTextString(m) } func (*SAMLAuthRequest) ProtoMessage() {} func (*SAMLAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{197} + return fileDescriptor_9198ee693835762e, []int{198} } func (m *SAMLAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12016,7 +12058,7 @@ func (m *AttributeMapping) Reset() { *m = AttributeMapping{} } func (m *AttributeMapping) String() string { return proto.CompactTextString(m) } func (*AttributeMapping) ProtoMessage() {} func (*AttributeMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{198} + return fileDescriptor_9198ee693835762e, []int{199} } func (m *AttributeMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12061,7 +12103,7 @@ func (m *AsymmetricKeyPair) Reset() { *m = AsymmetricKeyPair{} } func (m *AsymmetricKeyPair) String() string { return proto.CompactTextString(m) } func (*AsymmetricKeyPair) ProtoMessage() {} func (*AsymmetricKeyPair) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{199} + return fileDescriptor_9198ee693835762e, []int{200} } func (m *AsymmetricKeyPair) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12112,7 +12154,7 @@ func (m *GithubConnectorV3) Reset() { *m = GithubConnectorV3{} } func (m *GithubConnectorV3) String() string { return proto.CompactTextString(m) } func (*GithubConnectorV3) ProtoMessage() {} func (*GithubConnectorV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{200} + return fileDescriptor_9198ee693835762e, []int{201} } func (m *GithubConnectorV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12154,7 +12196,7 @@ func (m *GithubConnectorV3List) Reset() { *m = GithubConnectorV3List{} } func (m *GithubConnectorV3List) String() string { return proto.CompactTextString(m) } func (*GithubConnectorV3List) ProtoMessage() {} func (*GithubConnectorV3List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{201} + return fileDescriptor_9198ee693835762e, []int{202} } func (m *GithubConnectorV3List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12217,7 +12259,7 @@ func (m *GithubConnectorSpecV3) Reset() { *m = GithubConnectorSpecV3{} } func (m *GithubConnectorSpecV3) String() string { return proto.CompactTextString(m) } func (*GithubConnectorSpecV3) ProtoMessage() {} func (*GithubConnectorSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{202} + return fileDescriptor_9198ee693835762e, []int{203} } func (m *GithubConnectorSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12296,7 +12338,7 @@ func (m *GithubAuthRequest) Reset() { *m = GithubAuthRequest{} } func (m *GithubAuthRequest) String() string { return proto.CompactTextString(m) } func (*GithubAuthRequest) ProtoMessage() {} func (*GithubAuthRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{203} + return fileDescriptor_9198ee693835762e, []int{204} } func (m *GithubAuthRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12340,7 +12382,7 @@ func (m *SSOWarnings) Reset() { *m = SSOWarnings{} } func (m *SSOWarnings) String() string { return proto.CompactTextString(m) } func (*SSOWarnings) ProtoMessage() {} func (*SSOWarnings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{204} + return fileDescriptor_9198ee693835762e, []int{205} } func (m *SSOWarnings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12396,7 +12438,7 @@ func (m *CreateUserParams) Reset() { *m = CreateUserParams{} } func (m *CreateUserParams) String() string { return proto.CompactTextString(m) } func (*CreateUserParams) ProtoMessage() {} func (*CreateUserParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{205} + return fileDescriptor_9198ee693835762e, []int{206} } func (m *CreateUserParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12481,7 +12523,7 @@ func (m *SSODiagnosticInfo) Reset() { *m = SSODiagnosticInfo{} } func (m *SSODiagnosticInfo) String() string { return proto.CompactTextString(m) } func (*SSODiagnosticInfo) ProtoMessage() {} func (*SSODiagnosticInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{206} + return fileDescriptor_9198ee693835762e, []int{207} } func (m *SSODiagnosticInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12525,7 +12567,7 @@ func (m *GithubTokenInfo) Reset() { *m = GithubTokenInfo{} } func (m *GithubTokenInfo) String() string { return proto.CompactTextString(m) } func (*GithubTokenInfo) ProtoMessage() {} func (*GithubTokenInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{207} + return fileDescriptor_9198ee693835762e, []int{208} } func (m *GithubTokenInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12571,7 +12613,7 @@ func (m *GithubClaims) Reset() { *m = GithubClaims{} } func (m *GithubClaims) String() string { return proto.CompactTextString(m) } func (*GithubClaims) ProtoMessage() {} func (*GithubClaims) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{208} + return fileDescriptor_9198ee693835762e, []int{209} } func (m *GithubClaims) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12623,7 +12665,7 @@ func (m *TeamMapping) Reset() { *m = TeamMapping{} } func (m *TeamMapping) String() string { return proto.CompactTextString(m) } func (*TeamMapping) ProtoMessage() {} func (*TeamMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{209} + return fileDescriptor_9198ee693835762e, []int{210} } func (m *TeamMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12669,7 +12711,7 @@ func (m *TeamRolesMapping) Reset() { *m = TeamRolesMapping{} } func (m *TeamRolesMapping) String() string { return proto.CompactTextString(m) } func (*TeamRolesMapping) ProtoMessage() {} func (*TeamRolesMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{210} + return fileDescriptor_9198ee693835762e, []int{211} } func (m *TeamRolesMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12719,7 +12761,7 @@ type TrustedClusterV2 struct { func (m *TrustedClusterV2) Reset() { *m = TrustedClusterV2{} } func (*TrustedClusterV2) ProtoMessage() {} func (*TrustedClusterV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{211} + return fileDescriptor_9198ee693835762e, []int{212} } func (m *TrustedClusterV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12761,7 +12803,7 @@ func (m *TrustedClusterV2List) Reset() { *m = TrustedClusterV2List{} } func (m *TrustedClusterV2List) String() string { return proto.CompactTextString(m) } func (*TrustedClusterV2List) ProtoMessage() {} func (*TrustedClusterV2List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{212} + return fileDescriptor_9198ee693835762e, []int{213} } func (m *TrustedClusterV2List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12817,7 +12859,7 @@ func (m *TrustedClusterSpecV2) Reset() { *m = TrustedClusterSpecV2{} } func (m *TrustedClusterSpecV2) String() string { return proto.CompactTextString(m) } func (*TrustedClusterSpecV2) ProtoMessage() {} func (*TrustedClusterSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{213} + return fileDescriptor_9198ee693835762e, []int{214} } func (m *TrustedClusterSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12871,7 +12913,7 @@ func (m *LockV2) Reset() { *m = LockV2{} } func (m *LockV2) String() string { return proto.CompactTextString(m) } func (*LockV2) ProtoMessage() {} func (*LockV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{214} + return fileDescriptor_9198ee693835762e, []int{215} } func (m *LockV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12921,7 +12963,7 @@ func (m *LockSpecV2) Reset() { *m = LockSpecV2{} } func (m *LockSpecV2) String() string { return proto.CompactTextString(m) } func (*LockSpecV2) ProtoMessage() {} func (*LockSpecV2) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{215} + return fileDescriptor_9198ee693835762e, []int{216} } func (m *LockSpecV2) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12982,7 +13024,7 @@ type LockTarget struct { func (m *LockTarget) Reset() { *m = LockTarget{} } func (*LockTarget) ProtoMessage() {} func (*LockTarget) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{216} + return fileDescriptor_9198ee693835762e, []int{217} } func (m *LockTarget) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13026,7 +13068,7 @@ func (m *AddressCondition) Reset() { *m = AddressCondition{} } func (m *AddressCondition) String() string { return proto.CompactTextString(m) } func (*AddressCondition) ProtoMessage() {} func (*AddressCondition) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{217} + return fileDescriptor_9198ee693835762e, []int{218} } func (m *AddressCondition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13069,7 +13111,7 @@ func (m *NetworkRestrictionsSpecV4) Reset() { *m = NetworkRestrictionsSp func (m *NetworkRestrictionsSpecV4) String() string { return proto.CompactTextString(m) } func (*NetworkRestrictionsSpecV4) ProtoMessage() {} func (*NetworkRestrictionsSpecV4) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{218} + return fileDescriptor_9198ee693835762e, []int{219} } func (m *NetworkRestrictionsSpecV4) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13122,7 +13164,7 @@ func (m *NetworkRestrictionsV4) Reset() { *m = NetworkRestrictionsV4{} } func (m *NetworkRestrictionsV4) String() string { return proto.CompactTextString(m) } func (*NetworkRestrictionsV4) ProtoMessage() {} func (*NetworkRestrictionsV4) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{219} + return fileDescriptor_9198ee693835762e, []int{220} } func (m *NetworkRestrictionsV4) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13166,7 +13208,7 @@ func (m *WindowsDesktopServiceV3) Reset() { *m = WindowsDesktopServiceV3 func (m *WindowsDesktopServiceV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopServiceV3) ProtoMessage() {} func (*WindowsDesktopServiceV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{220} + return fileDescriptor_9198ee693835762e, []int{221} } func (m *WindowsDesktopServiceV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13214,7 +13256,7 @@ func (m *WindowsDesktopServiceSpecV3) Reset() { *m = WindowsDesktopServi func (m *WindowsDesktopServiceSpecV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopServiceSpecV3) ProtoMessage() {} func (*WindowsDesktopServiceSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{221} + return fileDescriptor_9198ee693835762e, []int{222} } func (m *WindowsDesktopServiceSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13258,7 +13300,7 @@ func (m *WindowsDesktopFilter) Reset() { *m = WindowsDesktopFilter{} } func (m *WindowsDesktopFilter) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopFilter) ProtoMessage() {} func (*WindowsDesktopFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{222} + return fileDescriptor_9198ee693835762e, []int{223} } func (m *WindowsDesktopFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13302,7 +13344,7 @@ func (m *WindowsDesktopV3) Reset() { *m = WindowsDesktopV3{} } func (m *WindowsDesktopV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopV3) ProtoMessage() {} func (*WindowsDesktopV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{223} + return fileDescriptor_9198ee693835762e, []int{224} } func (m *WindowsDesktopV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13355,7 +13397,7 @@ func (m *WindowsDesktopSpecV3) Reset() { *m = WindowsDesktopSpecV3{} } func (m *WindowsDesktopSpecV3) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopSpecV3) ProtoMessage() {} func (*WindowsDesktopSpecV3) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{224} + return fileDescriptor_9198ee693835762e, []int{225} } func (m *WindowsDesktopSpecV3) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13396,7 +13438,7 @@ func (m *Resolution) Reset() { *m = Resolution{} } func (m *Resolution) String() string { return proto.CompactTextString(m) } func (*Resolution) ProtoMessage() {} func (*Resolution) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{225} + return fileDescriptor_9198ee693835762e, []int{226} } func (m *Resolution) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13479,7 +13521,7 @@ func (m *RegisterUsingTokenRequest) Reset() { *m = RegisterUsingTokenReq func (m *RegisterUsingTokenRequest) String() string { return proto.CompactTextString(m) } func (*RegisterUsingTokenRequest) ProtoMessage() {} func (*RegisterUsingTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{226} + return fileDescriptor_9198ee693835762e, []int{227} } func (m *RegisterUsingTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13533,7 +13575,7 @@ func (m *RecoveryCodesV1) Reset() { *m = RecoveryCodesV1{} } func (m *RecoveryCodesV1) String() string { return proto.CompactTextString(m) } func (*RecoveryCodesV1) ProtoMessage() {} func (*RecoveryCodesV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{227} + return fileDescriptor_9198ee693835762e, []int{228} } func (m *RecoveryCodesV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13578,7 +13620,7 @@ func (m *RecoveryCodesSpecV1) Reset() { *m = RecoveryCodesSpecV1{} } func (m *RecoveryCodesSpecV1) String() string { return proto.CompactTextString(m) } func (*RecoveryCodesSpecV1) ProtoMessage() {} func (*RecoveryCodesSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{228} + return fileDescriptor_9198ee693835762e, []int{229} } func (m *RecoveryCodesSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13622,7 +13664,7 @@ func (m *RecoveryCode) Reset() { *m = RecoveryCode{} } func (m *RecoveryCode) String() string { return proto.CompactTextString(m) } func (*RecoveryCode) ProtoMessage() {} func (*RecoveryCode) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{229} + return fileDescriptor_9198ee693835762e, []int{230} } func (m *RecoveryCode) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13662,7 +13704,7 @@ func (m *NullableSessionState) Reset() { *m = NullableSessionState{} } func (m *NullableSessionState) String() string { return proto.CompactTextString(m) } func (*NullableSessionState) ProtoMessage() {} func (*NullableSessionState) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{230} + return fileDescriptor_9198ee693835762e, []int{231} } func (m *NullableSessionState) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13708,7 +13750,7 @@ func (m *SessionTrackerFilter) Reset() { *m = SessionTrackerFilter{} } func (m *SessionTrackerFilter) String() string { return proto.CompactTextString(m) } func (*SessionTrackerFilter) ProtoMessage() {} func (*SessionTrackerFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{231} + return fileDescriptor_9198ee693835762e, []int{232} } func (m *SessionTrackerFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13752,7 +13794,7 @@ func (m *SessionTrackerV1) Reset() { *m = SessionTrackerV1{} } func (m *SessionTrackerV1) String() string { return proto.CompactTextString(m) } func (*SessionTrackerV1) ProtoMessage() {} func (*SessionTrackerV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{232} + return fileDescriptor_9198ee693835762e, []int{233} } func (m *SessionTrackerV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13850,7 +13892,7 @@ func (m *SessionTrackerSpecV1) Reset() { *m = SessionTrackerSpecV1{} } func (m *SessionTrackerSpecV1) String() string { return proto.CompactTextString(m) } func (*SessionTrackerSpecV1) ProtoMessage() {} func (*SessionTrackerSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{233} + return fileDescriptor_9198ee693835762e, []int{234} } func (m *SessionTrackerSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13897,7 +13939,7 @@ func (m *SessionTrackerPolicySet) Reset() { *m = SessionTrackerPolicySet func (m *SessionTrackerPolicySet) String() string { return proto.CompactTextString(m) } func (*SessionTrackerPolicySet) ProtoMessage() {} func (*SessionTrackerPolicySet) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{234} + return fileDescriptor_9198ee693835762e, []int{235} } func (m *SessionTrackerPolicySet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13945,7 +13987,7 @@ func (m *Participant) Reset() { *m = Participant{} } func (m *Participant) String() string { return proto.CompactTextString(m) } func (*Participant) ProtoMessage() {} func (*Participant) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{235} + return fileDescriptor_9198ee693835762e, []int{236} } func (m *Participant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13989,7 +14031,7 @@ func (m *UIConfigV1) Reset() { *m = UIConfigV1{} } func (m *UIConfigV1) String() string { return proto.CompactTextString(m) } func (*UIConfigV1) ProtoMessage() {} func (*UIConfigV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{236} + return fileDescriptor_9198ee693835762e, []int{237} } func (m *UIConfigV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14035,7 +14077,7 @@ func (m *UIConfigSpecV1) Reset() { *m = UIConfigSpecV1{} } func (m *UIConfigSpecV1) String() string { return proto.CompactTextString(m) } func (*UIConfigSpecV1) ProtoMessage() {} func (*UIConfigSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{237} + return fileDescriptor_9198ee693835762e, []int{238} } func (m *UIConfigSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14086,7 +14128,7 @@ func (m *InstallerV1) Reset() { *m = InstallerV1{} } func (m *InstallerV1) String() string { return proto.CompactTextString(m) } func (*InstallerV1) ProtoMessage() {} func (*InstallerV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{238} + return fileDescriptor_9198ee693835762e, []int{239} } func (m *InstallerV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14128,7 +14170,7 @@ func (m *InstallerSpecV1) Reset() { *m = InstallerSpecV1{} } func (m *InstallerSpecV1) String() string { return proto.CompactTextString(m) } func (*InstallerSpecV1) ProtoMessage() {} func (*InstallerSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{239} + return fileDescriptor_9198ee693835762e, []int{240} } func (m *InstallerSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14170,7 +14212,7 @@ func (m *InstallerV1List) Reset() { *m = InstallerV1List{} } func (m *InstallerV1List) String() string { return proto.CompactTextString(m) } func (*InstallerV1List) ProtoMessage() {} func (*InstallerV1List) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{240} + return fileDescriptor_9198ee693835762e, []int{241} } func (m *InstallerV1List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14214,7 +14256,7 @@ func (m *SortBy) Reset() { *m = SortBy{} } func (m *SortBy) String() string { return proto.CompactTextString(m) } func (*SortBy) ProtoMessage() {} func (*SortBy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{241} + return fileDescriptor_9198ee693835762e, []int{242} } func (m *SortBy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14260,7 +14302,7 @@ func (m *ConnectionDiagnosticV1) Reset() { *m = ConnectionDiagnosticV1{} func (m *ConnectionDiagnosticV1) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticV1) ProtoMessage() {} func (*ConnectionDiagnosticV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{242} + return fileDescriptor_9198ee693835762e, []int{243} } func (m *ConnectionDiagnosticV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14310,7 +14352,7 @@ func (m *ConnectionDiagnosticSpecV1) Reset() { *m = ConnectionDiagnostic func (m *ConnectionDiagnosticSpecV1) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticSpecV1) ProtoMessage() {} func (*ConnectionDiagnosticSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{243} + return fileDescriptor_9198ee693835762e, []int{244} } func (m *ConnectionDiagnosticSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14356,7 +14398,7 @@ func (m *ConnectionDiagnosticTrace) Reset() { *m = ConnectionDiagnosticT func (m *ConnectionDiagnosticTrace) String() string { return proto.CompactTextString(m) } func (*ConnectionDiagnosticTrace) ProtoMessage() {} func (*ConnectionDiagnosticTrace) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{244} + return fileDescriptor_9198ee693835762e, []int{245} } func (m *ConnectionDiagnosticTrace) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14399,7 +14441,7 @@ func (m *DatabaseServiceV1) Reset() { *m = DatabaseServiceV1{} } func (m *DatabaseServiceV1) String() string { return proto.CompactTextString(m) } func (*DatabaseServiceV1) ProtoMessage() {} func (*DatabaseServiceV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{245} + return fileDescriptor_9198ee693835762e, []int{246} } func (m *DatabaseServiceV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14443,7 +14485,7 @@ func (m *DatabaseServiceSpecV1) Reset() { *m = DatabaseServiceSpecV1{} } func (m *DatabaseServiceSpecV1) String() string { return proto.CompactTextString(m) } func (*DatabaseServiceSpecV1) ProtoMessage() {} func (*DatabaseServiceSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{246} + return fileDescriptor_9198ee693835762e, []int{247} } func (m *DatabaseServiceSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14485,7 +14527,7 @@ func (m *DatabaseResourceMatcher) Reset() { *m = DatabaseResourceMatcher func (m *DatabaseResourceMatcher) String() string { return proto.CompactTextString(m) } func (*DatabaseResourceMatcher) ProtoMessage() {} func (*DatabaseResourceMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{247} + return fileDescriptor_9198ee693835762e, []int{248} } func (m *DatabaseResourceMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14529,7 +14571,7 @@ func (m *ResourceMatcherAWS) Reset() { *m = ResourceMatcherAWS{} } func (m *ResourceMatcherAWS) String() string { return proto.CompactTextString(m) } func (*ResourceMatcherAWS) ProtoMessage() {} func (*ResourceMatcherAWS) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{248} + return fileDescriptor_9198ee693835762e, []int{249} } func (m *ResourceMatcherAWS) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14571,7 +14613,7 @@ func (m *ClusterAlert) Reset() { *m = ClusterAlert{} } func (m *ClusterAlert) String() string { return proto.CompactTextString(m) } func (*ClusterAlert) ProtoMessage() {} func (*ClusterAlert) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{249} + return fileDescriptor_9198ee693835762e, []int{250} } func (m *ClusterAlert) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14617,7 +14659,7 @@ func (m *ClusterAlertSpec) Reset() { *m = ClusterAlertSpec{} } func (m *ClusterAlertSpec) String() string { return proto.CompactTextString(m) } func (*ClusterAlertSpec) ProtoMessage() {} func (*ClusterAlertSpec) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{250} + return fileDescriptor_9198ee693835762e, []int{251} } func (m *ClusterAlertSpec) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14670,7 +14712,7 @@ func (m *GetClusterAlertsRequest) Reset() { *m = GetClusterAlertsRequest func (m *GetClusterAlertsRequest) String() string { return proto.CompactTextString(m) } func (*GetClusterAlertsRequest) ProtoMessage() {} func (*GetClusterAlertsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{251} + return fileDescriptor_9198ee693835762e, []int{252} } func (m *GetClusterAlertsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14720,7 +14762,7 @@ func (m *AlertAcknowledgement) Reset() { *m = AlertAcknowledgement{} } func (m *AlertAcknowledgement) String() string { return proto.CompactTextString(m) } func (*AlertAcknowledgement) ProtoMessage() {} func (*AlertAcknowledgement) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{252} + return fileDescriptor_9198ee693835762e, []int{253} } func (m *AlertAcknowledgement) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14772,7 +14814,7 @@ func (m *Release) Reset() { *m = Release{} } func (m *Release) String() string { return proto.CompactTextString(m) } func (*Release) ProtoMessage() {} func (*Release) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{253} + return fileDescriptor_9198ee693835762e, []int{254} } func (m *Release) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14830,7 +14872,7 @@ func (m *Asset) Reset() { *m = Asset{} } func (m *Asset) String() string { return proto.CompactTextString(m) } func (*Asset) ProtoMessage() {} func (*Asset) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{254} + return fileDescriptor_9198ee693835762e, []int{255} } func (m *Asset) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14883,7 +14925,7 @@ func (m *PluginV1) Reset() { *m = PluginV1{} } func (m *PluginV1) String() string { return proto.CompactTextString(m) } func (*PluginV1) ProtoMessage() {} func (*PluginV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{255} + return fileDescriptor_9198ee693835762e, []int{256} } func (m *PluginV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14946,7 +14988,7 @@ func (m *PluginSpecV1) Reset() { *m = PluginSpecV1{} } func (m *PluginSpecV1) String() string { return proto.CompactTextString(m) } func (*PluginSpecV1) ProtoMessage() {} func (*PluginSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{256} + return fileDescriptor_9198ee693835762e, []int{257} } func (m *PluginSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15164,7 +15206,7 @@ func (m *PluginSlackAccessSettings) Reset() { *m = PluginSlackAccessSett func (m *PluginSlackAccessSettings) String() string { return proto.CompactTextString(m) } func (*PluginSlackAccessSettings) ProtoMessage() {} func (*PluginSlackAccessSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{257} + return fileDescriptor_9198ee693835762e, []int{258} } func (m *PluginSlackAccessSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15205,7 +15247,7 @@ func (m *PluginGitlabSettings) Reset() { *m = PluginGitlabSettings{} } func (m *PluginGitlabSettings) String() string { return proto.CompactTextString(m) } func (*PluginGitlabSettings) ProtoMessage() {} func (*PluginGitlabSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{258} + return fileDescriptor_9198ee693835762e, []int{259} } func (m *PluginGitlabSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15252,7 +15294,7 @@ func (m *PluginOpsgenieAccessSettings) Reset() { *m = PluginOpsgenieAcce func (m *PluginOpsgenieAccessSettings) String() string { return proto.CompactTextString(m) } func (*PluginOpsgenieAccessSettings) ProtoMessage() {} func (*PluginOpsgenieAccessSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{259} + return fileDescriptor_9198ee693835762e, []int{260} } func (m *PluginOpsgenieAccessSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15300,7 +15342,7 @@ func (m *PluginServiceNowSettings) Reset() { *m = PluginServiceNowSettin func (m *PluginServiceNowSettings) String() string { return proto.CompactTextString(m) } func (*PluginServiceNowSettings) ProtoMessage() {} func (*PluginServiceNowSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{260} + return fileDescriptor_9198ee693835762e, []int{261} } func (m *PluginServiceNowSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15346,7 +15388,7 @@ func (m *PluginPagerDutySettings) Reset() { *m = PluginPagerDutySettings func (m *PluginPagerDutySettings) String() string { return proto.CompactTextString(m) } func (*PluginPagerDutySettings) ProtoMessage() {} func (*PluginPagerDutySettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{261} + return fileDescriptor_9198ee693835762e, []int{262} } func (m *PluginPagerDutySettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15392,7 +15434,7 @@ func (m *PluginJiraSettings) Reset() { *m = PluginJiraSettings{} } func (m *PluginJiraSettings) String() string { return proto.CompactTextString(m) } func (*PluginJiraSettings) ProtoMessage() {} func (*PluginJiraSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{262} + return fileDescriptor_9198ee693835762e, []int{263} } func (m *PluginJiraSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15432,7 +15474,7 @@ func (m *PluginOpenAISettings) Reset() { *m = PluginOpenAISettings{} } func (m *PluginOpenAISettings) String() string { return proto.CompactTextString(m) } func (*PluginOpenAISettings) ProtoMessage() {} func (*PluginOpenAISettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{263} + return fileDescriptor_9198ee693835762e, []int{264} } func (m *PluginOpenAISettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15483,7 +15525,7 @@ func (m *PluginMattermostSettings) Reset() { *m = PluginMattermostSettin func (m *PluginMattermostSettings) String() string { return proto.CompactTextString(m) } func (*PluginMattermostSettings) ProtoMessage() {} func (*PluginMattermostSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{264} + return fileDescriptor_9198ee693835762e, []int{265} } func (m *PluginMattermostSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15525,7 +15567,7 @@ func (m *PluginJamfSettings) Reset() { *m = PluginJamfSettings{} } func (m *PluginJamfSettings) String() string { return proto.CompactTextString(m) } func (*PluginJamfSettings) ProtoMessage() {} func (*PluginJamfSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{265} + return fileDescriptor_9198ee693835762e, []int{266} } func (m *PluginJamfSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15575,7 +15617,7 @@ func (m *PluginOktaSettings) Reset() { *m = PluginOktaSettings{} } func (m *PluginOktaSettings) String() string { return proto.CompactTextString(m) } func (*PluginOktaSettings) ProtoMessage() {} func (*PluginOktaSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{266} + return fileDescriptor_9198ee693835762e, []int{267} } func (m *PluginOktaSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15651,7 +15693,7 @@ func (m *PluginOktaSyncSettings) Reset() { *m = PluginOktaSyncSettings{} func (m *PluginOktaSyncSettings) String() string { return proto.CompactTextString(m) } func (*PluginOktaSyncSettings) ProtoMessage() {} func (*PluginOktaSyncSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{267} + return fileDescriptor_9198ee693835762e, []int{268} } func (m *PluginOktaSyncSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15692,7 +15734,7 @@ func (m *DiscordChannels) Reset() { *m = DiscordChannels{} } func (m *DiscordChannels) String() string { return proto.CompactTextString(m) } func (*DiscordChannels) ProtoMessage() {} func (*DiscordChannels) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{268} + return fileDescriptor_9198ee693835762e, []int{269} } func (m *DiscordChannels) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15736,7 +15778,7 @@ func (m *PluginDiscordSettings) Reset() { *m = PluginDiscordSettings{} } func (m *PluginDiscordSettings) String() string { return proto.CompactTextString(m) } func (*PluginDiscordSettings) ProtoMessage() {} func (*PluginDiscordSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{269} + return fileDescriptor_9198ee693835762e, []int{270} } func (m *PluginDiscordSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15781,7 +15823,7 @@ func (m *PluginEntraIDSettings) Reset() { *m = PluginEntraIDSettings{} } func (m *PluginEntraIDSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDSettings) ProtoMessage() {} func (*PluginEntraIDSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{270} + return fileDescriptor_9198ee693835762e, []int{271} } func (m *PluginEntraIDSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15825,7 +15867,7 @@ func (m *PluginEntraIDSyncSettings) Reset() { *m = PluginEntraIDSyncSett func (m *PluginEntraIDSyncSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDSyncSettings) ProtoMessage() {} func (*PluginEntraIDSyncSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{271} + return fileDescriptor_9198ee693835762e, []int{272} } func (m *PluginEntraIDSyncSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15870,7 +15912,7 @@ func (m *PluginEntraIDAccessGraphSettings) Reset() { *m = PluginEntraIDA func (m *PluginEntraIDAccessGraphSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDAccessGraphSettings) ProtoMessage() {} func (*PluginEntraIDAccessGraphSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{272} + return fileDescriptor_9198ee693835762e, []int{273} } func (m *PluginEntraIDAccessGraphSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15916,7 +15958,7 @@ func (m *PluginEntraIDAppSSOSettings) Reset() { *m = PluginEntraIDAppSSO func (m *PluginEntraIDAppSSOSettings) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDAppSSOSettings) ProtoMessage() {} func (*PluginEntraIDAppSSOSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{273} + return fileDescriptor_9198ee693835762e, []int{274} } func (m *PluginEntraIDAppSSOSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15962,7 +16004,7 @@ func (m *PluginSCIMSettings) Reset() { *m = PluginSCIMSettings{} } func (m *PluginSCIMSettings) String() string { return proto.CompactTextString(m) } func (*PluginSCIMSettings) ProtoMessage() {} func (*PluginSCIMSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{274} + return fileDescriptor_9198ee693835762e, []int{275} } func (m *PluginSCIMSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16007,7 +16049,7 @@ func (m *PluginBootstrapCredentialsV1) Reset() { *m = PluginBootstrapCre func (m *PluginBootstrapCredentialsV1) String() string { return proto.CompactTextString(m) } func (*PluginBootstrapCredentialsV1) ProtoMessage() {} func (*PluginBootstrapCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{275} + return fileDescriptor_9198ee693835762e, []int{276} } func (m *PluginBootstrapCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16107,7 +16149,7 @@ func (m *PluginIdSecretCredential) Reset() { *m = PluginIdSecretCredenti func (m *PluginIdSecretCredential) String() string { return proto.CompactTextString(m) } func (*PluginIdSecretCredential) ProtoMessage() {} func (*PluginIdSecretCredential) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{276} + return fileDescriptor_9198ee693835762e, []int{277} } func (m *PluginIdSecretCredential) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16150,7 +16192,7 @@ func (m *PluginOAuth2AuthorizationCodeCredentials) Reset() { func (m *PluginOAuth2AuthorizationCodeCredentials) String() string { return proto.CompactTextString(m) } func (*PluginOAuth2AuthorizationCodeCredentials) ProtoMessage() {} func (*PluginOAuth2AuthorizationCodeCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{277} + return fileDescriptor_9198ee693835762e, []int{278} } func (m *PluginOAuth2AuthorizationCodeCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16208,7 +16250,7 @@ func (m *PluginStatusV1) Reset() { *m = PluginStatusV1{} } func (m *PluginStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginStatusV1) ProtoMessage() {} func (*PluginStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{278} + return fileDescriptor_9198ee693835762e, []int{279} } func (m *PluginStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16311,7 +16353,7 @@ func (m *PluginGitlabStatusV1) Reset() { *m = PluginGitlabStatusV1{} } func (m *PluginGitlabStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginGitlabStatusV1) ProtoMessage() {} func (*PluginGitlabStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{279} + return fileDescriptor_9198ee693835762e, []int{280} } func (m *PluginGitlabStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16355,7 +16397,7 @@ func (m *PluginEntraIDStatusV1) Reset() { *m = PluginEntraIDStatusV1{} } func (m *PluginEntraIDStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginEntraIDStatusV1) ProtoMessage() {} func (*PluginEntraIDStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{280} + return fileDescriptor_9198ee693835762e, []int{281} } func (m *PluginEntraIDStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16409,7 +16451,7 @@ func (m *PluginOktaStatusV1) Reset() { *m = PluginOktaStatusV1{} } func (m *PluginOktaStatusV1) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusV1) ProtoMessage() {} func (*PluginOktaStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{281} + return fileDescriptor_9198ee693835762e, []int{282} } func (m *PluginOktaStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16457,7 +16499,7 @@ func (m *PluginOktaStatusDetailsSSO) Reset() { *m = PluginOktaStatusDeta func (m *PluginOktaStatusDetailsSSO) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsSSO) ProtoMessage() {} func (*PluginOktaStatusDetailsSSO) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{282} + return fileDescriptor_9198ee693835762e, []int{283} } func (m *PluginOktaStatusDetailsSSO) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16514,7 +16556,7 @@ func (m *PluginOktaStatusDetailsAppGroupSync) Reset() { *m = PluginOktaS func (m *PluginOktaStatusDetailsAppGroupSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsAppGroupSync) ProtoMessage() {} func (*PluginOktaStatusDetailsAppGroupSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{283} + return fileDescriptor_9198ee693835762e, []int{284} } func (m *PluginOktaStatusDetailsAppGroupSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16568,7 +16610,7 @@ func (m *PluginOktaStatusDetailsUsersSync) Reset() { *m = PluginOktaStat func (m *PluginOktaStatusDetailsUsersSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsUsersSync) ProtoMessage() {} func (*PluginOktaStatusDetailsUsersSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{284} + return fileDescriptor_9198ee693835762e, []int{285} } func (m *PluginOktaStatusDetailsUsersSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16611,7 +16653,7 @@ func (m *PluginOktaStatusDetailsSCIM) Reset() { *m = PluginOktaStatusDet func (m *PluginOktaStatusDetailsSCIM) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsSCIM) ProtoMessage() {} func (*PluginOktaStatusDetailsSCIM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{285} + return fileDescriptor_9198ee693835762e, []int{286} } func (m *PluginOktaStatusDetailsSCIM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16673,7 +16715,7 @@ func (m *PluginOktaStatusDetailsAccessListsSync) Reset() { func (m *PluginOktaStatusDetailsAccessListsSync) String() string { return proto.CompactTextString(m) } func (*PluginOktaStatusDetailsAccessListsSync) ProtoMessage() {} func (*PluginOktaStatusDetailsAccessListsSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{286} + return fileDescriptor_9198ee693835762e, []int{287} } func (m *PluginOktaStatusDetailsAccessListsSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16721,7 +16763,7 @@ func (m *PluginCredentialsV1) Reset() { *m = PluginCredentialsV1{} } func (m *PluginCredentialsV1) String() string { return proto.CompactTextString(m) } func (*PluginCredentialsV1) ProtoMessage() {} func (*PluginCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{287} + return fileDescriptor_9198ee693835762e, []int{288} } func (m *PluginCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16832,7 +16874,7 @@ func (m *PluginOAuth2AccessTokenCredentials) Reset() { *m = PluginOAuth2 func (m *PluginOAuth2AccessTokenCredentials) String() string { return proto.CompactTextString(m) } func (*PluginOAuth2AccessTokenCredentials) ProtoMessage() {} func (*PluginOAuth2AccessTokenCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{288} + return fileDescriptor_9198ee693835762e, []int{289} } func (m *PluginOAuth2AccessTokenCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16873,7 +16915,7 @@ func (m *PluginBearerTokenCredentials) Reset() { *m = PluginBearerTokenC func (m *PluginBearerTokenCredentials) String() string { return proto.CompactTextString(m) } func (*PluginBearerTokenCredentials) ProtoMessage() {} func (*PluginBearerTokenCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{289} + return fileDescriptor_9198ee693835762e, []int{290} } func (m *PluginBearerTokenCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16915,7 +16957,7 @@ func (m *PluginStaticCredentialsRef) Reset() { *m = PluginStaticCredenti func (m *PluginStaticCredentialsRef) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsRef) ProtoMessage() {} func (*PluginStaticCredentialsRef) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{290} + return fileDescriptor_9198ee693835762e, []int{291} } func (m *PluginStaticCredentialsRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -16957,7 +16999,7 @@ func (m *PluginListV1) Reset() { *m = PluginListV1{} } func (m *PluginListV1) String() string { return proto.CompactTextString(m) } func (*PluginListV1) ProtoMessage() {} func (*PluginListV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{291} + return fileDescriptor_9198ee693835762e, []int{292} } func (m *PluginListV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17000,7 +17042,7 @@ type PluginStaticCredentialsV1 struct { func (m *PluginStaticCredentialsV1) Reset() { *m = PluginStaticCredentialsV1{} } func (*PluginStaticCredentialsV1) ProtoMessage() {} func (*PluginStaticCredentialsV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{292} + return fileDescriptor_9198ee693835762e, []int{293} } func (m *PluginStaticCredentialsV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17046,7 +17088,7 @@ func (m *PluginStaticCredentialsSpecV1) Reset() { *m = PluginStaticCrede func (m *PluginStaticCredentialsSpecV1) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsSpecV1) ProtoMessage() {} func (*PluginStaticCredentialsSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{293} + return fileDescriptor_9198ee693835762e, []int{294} } func (m *PluginStaticCredentialsSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17148,7 +17190,7 @@ func (m *PluginStaticCredentialsBasicAuth) Reset() { *m = PluginStaticCr func (m *PluginStaticCredentialsBasicAuth) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsBasicAuth) ProtoMessage() {} func (*PluginStaticCredentialsBasicAuth) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{294} + return fileDescriptor_9198ee693835762e, []int{295} } func (m *PluginStaticCredentialsBasicAuth) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17194,7 +17236,7 @@ func (m *PluginStaticCredentialsOAuthClientSecret) Reset() { func (m *PluginStaticCredentialsOAuthClientSecret) String() string { return proto.CompactTextString(m) } func (*PluginStaticCredentialsOAuthClientSecret) ProtoMessage() {} func (*PluginStaticCredentialsOAuthClientSecret) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{295} + return fileDescriptor_9198ee693835762e, []int{296} } func (m *PluginStaticCredentialsOAuthClientSecret) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17237,7 +17279,7 @@ type SAMLIdPServiceProviderV1 struct { func (m *SAMLIdPServiceProviderV1) Reset() { *m = SAMLIdPServiceProviderV1{} } func (*SAMLIdPServiceProviderV1) ProtoMessage() {} func (*SAMLIdPServiceProviderV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{296} + return fileDescriptor_9198ee693835762e, []int{297} } func (m *SAMLIdPServiceProviderV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17296,7 +17338,7 @@ func (m *SAMLIdPServiceProviderSpecV1) Reset() { *m = SAMLIdPServiceProv func (m *SAMLIdPServiceProviderSpecV1) String() string { return proto.CompactTextString(m) } func (*SAMLIdPServiceProviderSpecV1) ProtoMessage() {} func (*SAMLIdPServiceProviderSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{297} + return fileDescriptor_9198ee693835762e, []int{298} } func (m *SAMLIdPServiceProviderSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17343,7 +17385,7 @@ func (m *SAMLAttributeMapping) Reset() { *m = SAMLAttributeMapping{} } func (m *SAMLAttributeMapping) String() string { return proto.CompactTextString(m) } func (*SAMLAttributeMapping) ProtoMessage() {} func (*SAMLAttributeMapping) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{298} + return fileDescriptor_9198ee693835762e, []int{299} } func (m *SAMLAttributeMapping) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17385,7 +17427,7 @@ func (m *IdPOptions) Reset() { *m = IdPOptions{} } func (m *IdPOptions) String() string { return proto.CompactTextString(m) } func (*IdPOptions) ProtoMessage() {} func (*IdPOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{299} + return fileDescriptor_9198ee693835762e, []int{300} } func (m *IdPOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17427,7 +17469,7 @@ func (m *IdPSAMLOptions) Reset() { *m = IdPSAMLOptions{} } func (m *IdPSAMLOptions) String() string { return proto.CompactTextString(m) } func (*IdPSAMLOptions) ProtoMessage() {} func (*IdPSAMLOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{300} + return fileDescriptor_9198ee693835762e, []int{301} } func (m *IdPSAMLOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17477,7 +17519,7 @@ func (m *KubernetesResourceV1) Reset() { *m = KubernetesResourceV1{} } func (m *KubernetesResourceV1) String() string { return proto.CompactTextString(m) } func (*KubernetesResourceV1) ProtoMessage() {} func (*KubernetesResourceV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{301} + return fileDescriptor_9198ee693835762e, []int{302} } func (m *KubernetesResourceV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17519,7 +17561,7 @@ func (m *KubernetesResourceSpecV1) Reset() { *m = KubernetesResourceSpec func (m *KubernetesResourceSpecV1) String() string { return proto.CompactTextString(m) } func (*KubernetesResourceSpecV1) ProtoMessage() {} func (*KubernetesResourceSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{302} + return fileDescriptor_9198ee693835762e, []int{303} } func (m *KubernetesResourceSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17565,7 +17607,7 @@ func (m *ClusterMaintenanceConfigV1) Reset() { *m = ClusterMaintenanceCo func (m *ClusterMaintenanceConfigV1) String() string { return proto.CompactTextString(m) } func (*ClusterMaintenanceConfigV1) ProtoMessage() {} func (*ClusterMaintenanceConfigV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{303} + return fileDescriptor_9198ee693835762e, []int{304} } func (m *ClusterMaintenanceConfigV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17607,7 +17649,7 @@ func (m *ClusterMaintenanceConfigSpecV1) Reset() { *m = ClusterMaintenan func (m *ClusterMaintenanceConfigSpecV1) String() string { return proto.CompactTextString(m) } func (*ClusterMaintenanceConfigSpecV1) ProtoMessage() {} func (*ClusterMaintenanceConfigSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{304} + return fileDescriptor_9198ee693835762e, []int{305} } func (m *ClusterMaintenanceConfigSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17653,7 +17695,7 @@ func (m *AgentUpgradeWindow) Reset() { *m = AgentUpgradeWindow{} } func (m *AgentUpgradeWindow) String() string { return proto.CompactTextString(m) } func (*AgentUpgradeWindow) ProtoMessage() {} func (*AgentUpgradeWindow) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{305} + return fileDescriptor_9198ee693835762e, []int{306} } func (m *AgentUpgradeWindow) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17700,7 +17742,7 @@ func (m *ScheduledAgentUpgradeWindow) Reset() { *m = ScheduledAgentUpgra func (m *ScheduledAgentUpgradeWindow) String() string { return proto.CompactTextString(m) } func (*ScheduledAgentUpgradeWindow) ProtoMessage() {} func (*ScheduledAgentUpgradeWindow) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{306} + return fileDescriptor_9198ee693835762e, []int{307} } func (m *ScheduledAgentUpgradeWindow) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17743,7 +17785,7 @@ func (m *AgentUpgradeSchedule) Reset() { *m = AgentUpgradeSchedule{} } func (m *AgentUpgradeSchedule) String() string { return proto.CompactTextString(m) } func (*AgentUpgradeSchedule) ProtoMessage() {} func (*AgentUpgradeSchedule) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{307} + return fileDescriptor_9198ee693835762e, []int{308} } func (m *AgentUpgradeSchedule) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17786,7 +17828,7 @@ type UserGroupV1 struct { func (m *UserGroupV1) Reset() { *m = UserGroupV1{} } func (*UserGroupV1) ProtoMessage() {} func (*UserGroupV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{308} + return fileDescriptor_9198ee693835762e, []int{309} } func (m *UserGroupV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17828,7 +17870,7 @@ func (m *UserGroupSpecV1) Reset() { *m = UserGroupSpecV1{} } func (m *UserGroupSpecV1) String() string { return proto.CompactTextString(m) } func (*UserGroupSpecV1) ProtoMessage() {} func (*UserGroupSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{309} + return fileDescriptor_9198ee693835762e, []int{310} } func (m *UserGroupSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17872,7 +17914,7 @@ func (m *OktaImportRuleSpecV1) Reset() { *m = OktaImportRuleSpecV1{} } func (m *OktaImportRuleSpecV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleSpecV1) ProtoMessage() {} func (*OktaImportRuleSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{310} + return fileDescriptor_9198ee693835762e, []int{311} } func (m *OktaImportRuleSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17916,7 +17958,7 @@ func (m *OktaImportRuleMappingV1) Reset() { *m = OktaImportRuleMappingV1 func (m *OktaImportRuleMappingV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleMappingV1) ProtoMessage() {} func (*OktaImportRuleMappingV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{311} + return fileDescriptor_9198ee693835762e, []int{312} } func (m *OktaImportRuleMappingV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -17959,7 +18001,7 @@ type OktaImportRuleV1 struct { func (m *OktaImportRuleV1) Reset() { *m = OktaImportRuleV1{} } func (*OktaImportRuleV1) ProtoMessage() {} func (*OktaImportRuleV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{312} + return fileDescriptor_9198ee693835762e, []int{313} } func (m *OktaImportRuleV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18007,7 +18049,7 @@ func (m *OktaImportRuleMatchV1) Reset() { *m = OktaImportRuleMatchV1{} } func (m *OktaImportRuleMatchV1) String() string { return proto.CompactTextString(m) } func (*OktaImportRuleMatchV1) ProtoMessage() {} func (*OktaImportRuleMatchV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{313} + return fileDescriptor_9198ee693835762e, []int{314} } func (m *OktaImportRuleMatchV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18050,7 +18092,7 @@ type OktaAssignmentV1 struct { func (m *OktaAssignmentV1) Reset() { *m = OktaAssignmentV1{} } func (*OktaAssignmentV1) ProtoMessage() {} func (*OktaAssignmentV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{314} + return fileDescriptor_9198ee693835762e, []int{315} } func (m *OktaAssignmentV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18104,7 +18146,7 @@ func (m *OktaAssignmentSpecV1) Reset() { *m = OktaAssignmentSpecV1{} } func (m *OktaAssignmentSpecV1) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentSpecV1) ProtoMessage() {} func (*OktaAssignmentSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{315} + return fileDescriptor_9198ee693835762e, []int{316} } func (m *OktaAssignmentSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18148,7 +18190,7 @@ func (m *OktaAssignmentTargetV1) Reset() { *m = OktaAssignmentTargetV1{} func (m *OktaAssignmentTargetV1) String() string { return proto.CompactTextString(m) } func (*OktaAssignmentTargetV1) ProtoMessage() {} func (*OktaAssignmentTargetV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{316} + return fileDescriptor_9198ee693835762e, []int{317} } func (m *OktaAssignmentTargetV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18193,7 +18235,7 @@ type IntegrationV1 struct { func (m *IntegrationV1) Reset() { *m = IntegrationV1{} } func (*IntegrationV1) ProtoMessage() {} func (*IntegrationV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{317} + return fileDescriptor_9198ee693835762e, []int{318} } func (m *IntegrationV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18239,7 +18281,7 @@ func (m *IntegrationSpecV1) Reset() { *m = IntegrationSpecV1{} } func (m *IntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*IntegrationSpecV1) ProtoMessage() {} func (*IntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{318} + return fileDescriptor_9198ee693835762e, []int{319} } func (m *IntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18351,7 +18393,7 @@ func (m *AWSOIDCIntegrationSpecV1) Reset() { *m = AWSOIDCIntegrationSpec func (m *AWSOIDCIntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*AWSOIDCIntegrationSpecV1) ProtoMessage() {} func (*AWSOIDCIntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{319} + return fileDescriptor_9198ee693835762e, []int{320} } func (m *AWSOIDCIntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18397,7 +18439,7 @@ func (m *AzureOIDCIntegrationSpecV1) Reset() { *m = AzureOIDCIntegration func (m *AzureOIDCIntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*AzureOIDCIntegrationSpecV1) ProtoMessage() {} func (*AzureOIDCIntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{320} + return fileDescriptor_9198ee693835762e, []int{321} } func (m *AzureOIDCIntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18441,7 +18483,7 @@ func (m *GitHubIntegrationSpecV1) Reset() { *m = GitHubIntegrationSpecV1 func (m *GitHubIntegrationSpecV1) String() string { return proto.CompactTextString(m) } func (*GitHubIntegrationSpecV1) ProtoMessage() {} func (*GitHubIntegrationSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{321} + return fileDescriptor_9198ee693835762e, []int{322} } func (m *GitHubIntegrationSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18488,7 +18530,7 @@ func (m *GitHubProxy) Reset() { *m = GitHubProxy{} } func (m *GitHubProxy) String() string { return proto.CompactTextString(m) } func (*GitHubProxy) ProtoMessage() {} func (*GitHubProxy) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{322} + return fileDescriptor_9198ee693835762e, []int{323} } func (m *GitHubProxy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18549,7 +18591,7 @@ func (m *HeadlessAuthentication) Reset() { *m = HeadlessAuthentication{} func (m *HeadlessAuthentication) String() string { return proto.CompactTextString(m) } func (*HeadlessAuthentication) ProtoMessage() {} func (*HeadlessAuthentication) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{323} + return fileDescriptor_9198ee693835762e, []int{324} } func (m *HeadlessAuthentication) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18606,7 +18648,7 @@ func (m *WatchKind) Reset() { *m = WatchKind{} } func (m *WatchKind) String() string { return proto.CompactTextString(m) } func (*WatchKind) ProtoMessage() {} func (*WatchKind) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{324} + return fileDescriptor_9198ee693835762e, []int{325} } func (m *WatchKind) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18656,7 +18698,7 @@ func (m *WatchStatusV1) Reset() { *m = WatchStatusV1{} } func (m *WatchStatusV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusV1) ProtoMessage() {} func (*WatchStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{325} + return fileDescriptor_9198ee693835762e, []int{326} } func (m *WatchStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18697,7 +18739,7 @@ func (m *WatchStatusSpecV1) Reset() { *m = WatchStatusSpecV1{} } func (m *WatchStatusSpecV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusSpecV1) ProtoMessage() {} func (*WatchStatusSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{326} + return fileDescriptor_9198ee693835762e, []int{327} } func (m *WatchStatusSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18747,7 +18789,7 @@ func (m *ServerInfoV1) Reset() { *m = ServerInfoV1{} } func (m *ServerInfoV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoV1) ProtoMessage() {} func (*ServerInfoV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{327} + return fileDescriptor_9198ee693835762e, []int{328} } func (m *ServerInfoV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18789,7 +18831,7 @@ func (m *ServerInfoSpecV1) Reset() { *m = ServerInfoSpecV1{} } func (m *ServerInfoSpecV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoSpecV1) ProtoMessage() {} func (*ServerInfoSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{328} + return fileDescriptor_9198ee693835762e, []int{329} } func (m *ServerInfoSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18866,7 +18908,7 @@ func (m *JamfSpecV1) Reset() { *m = JamfSpecV1{} } func (m *JamfSpecV1) String() string { return proto.CompactTextString(m) } func (*JamfSpecV1) ProtoMessage() {} func (*JamfSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{329} + return fileDescriptor_9198ee693835762e, []int{330} } func (m *JamfSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18931,7 +18973,7 @@ func (m *JamfInventoryEntry) Reset() { *m = JamfInventoryEntry{} } func (m *JamfInventoryEntry) String() string { return proto.CompactTextString(m) } func (*JamfInventoryEntry) ProtoMessage() {} func (*JamfInventoryEntry) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{330} + return fileDescriptor_9198ee693835762e, []int{331} } func (m *JamfInventoryEntry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18988,7 +19030,7 @@ type MessageWithHeader struct { func (m *MessageWithHeader) Reset() { *m = MessageWithHeader{} } func (*MessageWithHeader) ProtoMessage() {} func (*MessageWithHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{331} + return fileDescriptor_9198ee693835762e, []int{332} } func (m *MessageWithHeader) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19052,7 +19094,7 @@ func (m *AWSMatcher) Reset() { *m = AWSMatcher{} } func (m *AWSMatcher) String() string { return proto.CompactTextString(m) } func (*AWSMatcher) ProtoMessage() {} func (*AWSMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{332} + return fileDescriptor_9198ee693835762e, []int{333} } func (m *AWSMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19097,7 +19139,7 @@ func (m *AssumeRole) Reset() { *m = AssumeRole{} } func (m *AssumeRole) String() string { return proto.CompactTextString(m) } func (*AssumeRole) ProtoMessage() {} func (*AssumeRole) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{333} + return fileDescriptor_9198ee693835762e, []int{334} } func (m *AssumeRole) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19159,7 +19201,7 @@ func (m *InstallerParams) Reset() { *m = InstallerParams{} } func (m *InstallerParams) String() string { return proto.CompactTextString(m) } func (*InstallerParams) ProtoMessage() {} func (*InstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{334} + return fileDescriptor_9198ee693835762e, []int{335} } func (m *InstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19202,7 +19244,7 @@ func (m *AWSSSM) Reset() { *m = AWSSSM{} } func (m *AWSSSM) String() string { return proto.CompactTextString(m) } func (*AWSSSM) ProtoMessage() {} func (*AWSSSM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{335} + return fileDescriptor_9198ee693835762e, []int{336} } func (m *AWSSSM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19245,7 +19287,7 @@ func (m *AzureInstallerParams) Reset() { *m = AzureInstallerParams{} } func (m *AzureInstallerParams) String() string { return proto.CompactTextString(m) } func (*AzureInstallerParams) ProtoMessage() {} func (*AzureInstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{336} + return fileDescriptor_9198ee693835762e, []int{337} } func (m *AzureInstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19299,7 +19341,7 @@ func (m *AzureMatcher) Reset() { *m = AzureMatcher{} } func (m *AzureMatcher) String() string { return proto.CompactTextString(m) } func (*AzureMatcher) ProtoMessage() {} func (*AzureMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{337} + return fileDescriptor_9198ee693835762e, []int{338} } func (m *AzureMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19354,7 +19396,7 @@ func (m *GCPMatcher) Reset() { *m = GCPMatcher{} } func (m *GCPMatcher) String() string { return proto.CompactTextString(m) } func (*GCPMatcher) ProtoMessage() {} func (*GCPMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{338} + return fileDescriptor_9198ee693835762e, []int{339} } func (m *GCPMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19400,7 +19442,7 @@ func (m *KubernetesMatcher) Reset() { *m = KubernetesMatcher{} } func (m *KubernetesMatcher) String() string { return proto.CompactTextString(m) } func (*KubernetesMatcher) ProtoMessage() {} func (*KubernetesMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{339} + return fileDescriptor_9198ee693835762e, []int{340} } func (m *KubernetesMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19442,7 +19484,7 @@ func (m *OktaOptions) Reset() { *m = OktaOptions{} } func (m *OktaOptions) String() string { return proto.CompactTextString(m) } func (*OktaOptions) ProtoMessage() {} func (*OktaOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{340} + return fileDescriptor_9198ee693835762e, []int{341} } func (m *OktaOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19484,7 +19526,7 @@ func (m *AccessGraphSync) Reset() { *m = AccessGraphSync{} } func (m *AccessGraphSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphSync) ProtoMessage() {} func (*AccessGraphSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{341} + return fileDescriptor_9198ee693835762e, []int{342} } func (m *AccessGraphSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19530,7 +19572,7 @@ func (m *AccessGraphAWSSync) Reset() { *m = AccessGraphAWSSync{} } func (m *AccessGraphAWSSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphAWSSync) ProtoMessage() {} func (*AccessGraphAWSSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{342} + return fileDescriptor_9198ee693835762e, []int{343} } func (m *AccessGraphAWSSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19728,6 +19770,7 @@ func init() { proto.RegisterType((*RecordSession)(nil), "types.RecordSession") proto.RegisterType((*CertExtension)(nil), "types.CertExtension") proto.RegisterType((*RoleConditions)(nil), "types.RoleConditions") + proto.RegisterType((*GitHubPermission)(nil), "types.GitHubPermission") proto.RegisterType((*SPIFFERoleCondition)(nil), "types.SPIFFERoleCondition") proto.RegisterType((*DatabasePermission)(nil), "types.DatabasePermission") proto.RegisterType((*KubernetesResource)(nil), "types.KubernetesResource") @@ -19966,1729 +20009,1733 @@ func init() { func init() { proto.RegisterFile("teleport/legacy/types/types.proto", fileDescriptor_9198ee693835762e) } var fileDescriptor_9198ee693835762e = []byte{ - // 27551 bytes of a gzipped FileDescriptorProto + // 27606 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x6c, 0x5c, 0x59, - 0x7a, 0x20, 0xd6, 0x55, 0xc5, 0x47, 0xf1, 0xe3, 0xab, 0x78, 0x48, 0x49, 0x14, 0xbb, 0x25, 0xaa, - 0xaf, 0xba, 0xd5, 0x52, 0x3f, 0xa4, 0x11, 0x35, 0xad, 0x99, 0x9e, 0x7e, 0x16, 0x59, 0x94, 0x58, - 0x12, 0x45, 0x71, 0x6e, 0x51, 0xd2, 0xb4, 0x7b, 0x66, 0xee, 0x5c, 0x56, 0x1d, 0x92, 0xb7, 0x55, - 0x55, 0xb7, 0xe6, 0xde, 0x5b, 0x92, 0x38, 0xde, 0xcd, 0xfa, 0xb9, 0x13, 0x67, 0xd7, 0xaf, 0xd8, - 0x8e, 0x67, 0x03, 0xaf, 0x61, 0x78, 0x1f, 0x71, 0x1e, 0x6b, 0x04, 0xb6, 0x17, 0xd9, 0xc0, 0x88, - 0x63, 0x07, 0x8e, 0x61, 0x78, 0x93, 0x8d, 0x81, 0xbc, 0x90, 0x89, 0x41, 0xc7, 0xf1, 0xc2, 0x08, + 0x7a, 0x20, 0xd6, 0x55, 0xc5, 0x47, 0xf1, 0xe3, 0xab, 0x78, 0x48, 0x49, 0x14, 0x5b, 0x12, 0xd5, + 0x57, 0xdd, 0x6a, 0xa9, 0x1f, 0xd2, 0x88, 0x9a, 0xd6, 0x4c, 0x4f, 0x3f, 0x8b, 0x2c, 0x4a, 0x2c, + 0x89, 0xa2, 0x38, 0xb7, 0x28, 0x69, 0xda, 0x3d, 0x33, 0x77, 0x2e, 0xab, 0x0e, 0xc9, 0xdb, 0xaa, + 0xaa, 0x5b, 0x73, 0xef, 0x2d, 0x49, 0xb4, 0x77, 0xb3, 0x7e, 0xee, 0xc4, 0xd9, 0xf5, 0x2b, 0xb6, + 0xe3, 0xd9, 0xc0, 0x6b, 0x18, 0xde, 0x47, 0x9c, 0xc7, 0x1a, 0x81, 0xbd, 0x8b, 0x6c, 0x60, 0xc4, + 0xb1, 0x03, 0xc7, 0x30, 0xbc, 0xc9, 0xc6, 0x40, 0x5e, 0xc8, 0xc4, 0xa0, 0xe3, 0x78, 0xb1, 0x08, 0x84, 0x24, 0xb0, 0xb3, 0x80, 0x91, 0x74, 0xe0, 0x4d, 0x70, 0xbe, 0xf3, 0xb8, 0xe7, 0xdc, 0x7b, - 0xab, 0x58, 0xec, 0x56, 0xef, 0x5a, 0x0d, 0xff, 0x91, 0x58, 0xdf, 0xf9, 0xbe, 0xef, 0x9c, 0x7b, - 0x9e, 0xdf, 0xf9, 0xce, 0xf7, 0x80, 0xe7, 0x23, 0xda, 0xa4, 0x1d, 0x3f, 0x88, 0x2e, 0x35, 0xe9, - 0xae, 0x5b, 0xdf, 0xbf, 0x14, 0xed, 0x77, 0x68, 0xc8, 0xff, 0xbd, 0xd8, 0x09, 0xfc, 0xc8, 0x27, - 0xc3, 0xf8, 0x63, 0x61, 0x6e, 0xd7, 0xdf, 0xf5, 0x11, 0x72, 0x89, 0xfd, 0xc5, 0x0b, 0x17, 0x4e, - 0xef, 0xfa, 0xfe, 0x6e, 0x93, 0x5e, 0xc2, 0x5f, 0xdb, 0xdd, 0x9d, 0x4b, 0x8d, 0x6e, 0xe0, 0x46, + 0xab, 0x58, 0xec, 0x56, 0xef, 0x5a, 0x03, 0xff, 0x91, 0x58, 0xdf, 0xf9, 0xbe, 0xef, 0x9c, 0x7b, + 0x9e, 0xdf, 0xf9, 0xce, 0xf7, 0x80, 0x17, 0x22, 0xda, 0xa4, 0x1d, 0x3f, 0x88, 0x2e, 0x37, 0xe9, + 0xae, 0x5b, 0xdf, 0xbf, 0x1c, 0xed, 0x77, 0x68, 0xc8, 0xff, 0xbd, 0xd4, 0x09, 0xfc, 0xc8, 0x27, + 0xc3, 0xf8, 0x63, 0x61, 0x6e, 0xd7, 0xdf, 0xf5, 0x11, 0x72, 0x99, 0xfd, 0xc5, 0x0b, 0x17, 0xce, + 0xec, 0xfa, 0xfe, 0x6e, 0x93, 0x5e, 0xc6, 0x5f, 0xdb, 0xdd, 0x9d, 0xcb, 0x8d, 0x6e, 0xe0, 0x46, 0x9e, 0xdf, 0x16, 0xe5, 0x8b, 0xc9, 0xf2, 0xc8, 0x6b, 0xd1, 0x30, 0x72, 0x5b, 0x9d, 0x5e, 0x0c, - 0x1e, 0x06, 0x6e, 0xa7, 0x43, 0x03, 0x51, 0xfb, 0xc2, 0x05, 0xd5, 0x40, 0x37, 0x8a, 0x18, 0x25, - 0x63, 0x7e, 0xe9, 0xc1, 0x65, 0xfd, 0xa7, 0x40, 0x7d, 0x2d, 0xfb, 0x5b, 0x24, 0xc3, 0x04, 0x67, - 0xeb, 0xe7, 0x0b, 0x30, 0x76, 0x93, 0xd2, 0x4e, 0xb9, 0xe9, 0x3d, 0xa0, 0xe4, 0x2c, 0x0c, 0x6d, - 0xb8, 0x2d, 0x3a, 0x9f, 0x3b, 0x93, 0x3b, 0x3f, 0xb6, 0x3c, 0xfd, 0xf8, 0x60, 0x71, 0x3c, 0xa4, - 0xc1, 0x03, 0x1a, 0x38, 0x6d, 0xb7, 0x45, 0x6d, 0x2c, 0x24, 0xaf, 0xc0, 0x18, 0xfb, 0x3f, 0xec, - 0xb8, 0x75, 0x3a, 0x9f, 0x47, 0xcc, 0xc9, 0xc7, 0x07, 0x8b, 0x63, 0x6d, 0x09, 0xb4, 0xe3, 0x72, - 0x52, 0x85, 0xd1, 0xd5, 0x47, 0x1d, 0x2f, 0xa0, 0xe1, 0xfc, 0xd0, 0x99, 0xdc, 0xf9, 0xf1, 0xa5, - 0x85, 0x8b, 0xfc, 0x5b, 0x2f, 0xca, 0x6f, 0xbd, 0xb8, 0x25, 0x3b, 0x63, 0x79, 0xf6, 0x77, 0x0f, - 0x16, 0x9f, 0x79, 0x7c, 0xb0, 0x38, 0x4a, 0x39, 0xc9, 0x4f, 0xfc, 0xe1, 0x62, 0xce, 0x96, 0xf4, - 0xe4, 0x2d, 0x18, 0xda, 0xda, 0xef, 0xd0, 0xf9, 0xb1, 0x33, 0xb9, 0xf3, 0x53, 0x4b, 0xa7, 0x2f, - 0xf2, 0xe1, 0x51, 0x8d, 0x8f, 0xff, 0x62, 0x58, 0xcb, 0xc5, 0xc7, 0x07, 0x8b, 0x43, 0x0c, 0xc5, - 0x46, 0x2a, 0xf2, 0x1a, 0x8c, 0xac, 0xf9, 0x61, 0x54, 0xad, 0xcc, 0x03, 0x36, 0xf9, 0xd8, 0xe3, - 0x83, 0xc5, 0x99, 0x3d, 0x3f, 0x8c, 0x1c, 0xaf, 0xf1, 0xaa, 0xdf, 0xf2, 0x22, 0xda, 0xea, 0x44, - 0xfb, 0xb6, 0x40, 0xb2, 0x1e, 0xc1, 0xa4, 0xc1, 0x8f, 0x8c, 0xc3, 0xe8, 0x9d, 0x8d, 0x9b, 0x1b, - 0xb7, 0xef, 0x6d, 0x94, 0x9e, 0x21, 0x45, 0x18, 0xda, 0xb8, 0x5d, 0x59, 0x2d, 0xe5, 0xc8, 0x28, + 0x1e, 0x05, 0x6e, 0xa7, 0x43, 0x03, 0x51, 0xfb, 0xc2, 0x45, 0xd5, 0x40, 0x37, 0x8a, 0x18, 0x25, + 0x63, 0x7e, 0xf9, 0xe1, 0x15, 0xfd, 0xa7, 0x40, 0x7d, 0x3d, 0xfb, 0x5b, 0x24, 0xc3, 0x04, 0x67, + 0xeb, 0x17, 0x0a, 0x30, 0x76, 0x8b, 0xd2, 0x4e, 0xb9, 0xe9, 0x3d, 0xa4, 0xe4, 0x1c, 0x0c, 0x6d, + 0xb8, 0x2d, 0x3a, 0x9f, 0x3b, 0x9b, 0xbb, 0x30, 0xb6, 0x3c, 0xfd, 0xe4, 0x60, 0x71, 0x3c, 0xa4, + 0xc1, 0x43, 0x1a, 0x38, 0x6d, 0xb7, 0x45, 0x6d, 0x2c, 0x24, 0xaf, 0xc2, 0x18, 0xfb, 0x3f, 0xec, + 0xb8, 0x75, 0x3a, 0x9f, 0x47, 0xcc, 0xc9, 0x27, 0x07, 0x8b, 0x63, 0x6d, 0x09, 0xb4, 0xe3, 0x72, + 0x52, 0x85, 0xd1, 0xd5, 0xc7, 0x1d, 0x2f, 0xa0, 0xe1, 0xfc, 0xd0, 0xd9, 0xdc, 0x85, 0xf1, 0xa5, + 0x85, 0x4b, 0xfc, 0x5b, 0x2f, 0xc9, 0x6f, 0xbd, 0xb4, 0x25, 0x3b, 0x63, 0x79, 0xf6, 0x77, 0x0f, + 0x16, 0x9f, 0x7b, 0x72, 0xb0, 0x38, 0x4a, 0x39, 0xc9, 0x4f, 0xfe, 0xe1, 0x62, 0xce, 0x96, 0xf4, + 0xe4, 0x6d, 0x18, 0xda, 0xda, 0xef, 0xd0, 0xf9, 0xb1, 0xb3, 0xb9, 0x0b, 0x53, 0x4b, 0x67, 0x2e, + 0xf1, 0xe1, 0x51, 0x8d, 0x8f, 0xff, 0x62, 0x58, 0xcb, 0xc5, 0x27, 0x07, 0x8b, 0x43, 0x0c, 0xc5, + 0x46, 0x2a, 0xf2, 0x3a, 0x8c, 0xac, 0xf9, 0x61, 0x54, 0xad, 0xcc, 0x03, 0x36, 0xf9, 0xd8, 0x93, + 0x83, 0xc5, 0x99, 0x3d, 0x3f, 0x8c, 0x1c, 0xaf, 0xf1, 0x9a, 0xdf, 0xf2, 0x22, 0xda, 0xea, 0x44, + 0xfb, 0xb6, 0x40, 0xb2, 0x1e, 0xc3, 0xa4, 0xc1, 0x8f, 0x8c, 0xc3, 0xe8, 0xdd, 0x8d, 0x5b, 0x1b, + 0x77, 0xee, 0x6f, 0x94, 0x9e, 0x23, 0x45, 0x18, 0xda, 0xb8, 0x53, 0x59, 0x2d, 0xe5, 0xc8, 0x28, 0x14, 0xca, 0x9b, 0x9b, 0xa5, 0x3c, 0x99, 0x80, 0x62, 0xa5, 0xbc, 0x55, 0x5e, 0x2e, 0xd7, 0x56, - 0x4b, 0x05, 0x32, 0x0b, 0xd3, 0xf7, 0xaa, 0x1b, 0x95, 0xdb, 0xf7, 0x6a, 0x4e, 0x65, 0xb5, 0x76, - 0x73, 0xeb, 0xf6, 0x66, 0x69, 0x88, 0x4c, 0x01, 0xdc, 0xbc, 0xb3, 0xbc, 0x6a, 0x6f, 0xac, 0x6e, - 0xad, 0xd6, 0x4a, 0xc3, 0x64, 0x0e, 0x4a, 0x92, 0xc4, 0xa9, 0xad, 0xda, 0x77, 0xab, 0x2b, 0xab, - 0xa5, 0x91, 0x1b, 0x43, 0xc5, 0x42, 0x69, 0xc8, 0x1e, 0x5d, 0xa7, 0x6e, 0x48, 0xab, 0x15, 0xeb, - 0xef, 0x15, 0xa0, 0x78, 0x8b, 0x46, 0x6e, 0xc3, 0x8d, 0x5c, 0xf2, 0x9c, 0x31, 0x3e, 0xf8, 0x89, - 0xda, 0xc0, 0x9c, 0x4d, 0x0f, 0xcc, 0xf0, 0xe3, 0x83, 0xc5, 0xdc, 0x6b, 0xfa, 0x80, 0xbc, 0x09, - 0xe3, 0x15, 0x1a, 0xd6, 0x03, 0xaf, 0xc3, 0x26, 0xcd, 0x7c, 0x01, 0xd1, 0x4e, 0x3e, 0x3e, 0x58, - 0x3c, 0xd6, 0x88, 0xc1, 0x5a, 0x87, 0xe8, 0xd8, 0xa4, 0x0a, 0x23, 0xeb, 0xee, 0x36, 0x6d, 0x86, - 0xf3, 0xc3, 0x67, 0x0a, 0xe7, 0xc7, 0x97, 0x9e, 0x15, 0x83, 0x20, 0x1b, 0x78, 0x91, 0x97, 0xae, - 0xb6, 0xa3, 0x60, 0x7f, 0x79, 0xee, 0xf1, 0xc1, 0x62, 0xa9, 0x89, 0x00, 0xbd, 0x83, 0x39, 0x0a, - 0xa9, 0xc5, 0x13, 0x63, 0xe4, 0xd0, 0x89, 0x71, 0xea, 0x77, 0x0f, 0x16, 0x73, 0x6c, 0xc0, 0xc4, - 0xc4, 0x88, 0xf9, 0x99, 0x53, 0x64, 0x09, 0x8a, 0x36, 0x7d, 0xe0, 0x85, 0xec, 0xcb, 0x8a, 0xf8, - 0x65, 0xc7, 0x1f, 0x1f, 0x2c, 0x92, 0x40, 0xc0, 0xb4, 0x66, 0x28, 0xbc, 0x85, 0x37, 0x60, 0x5c, - 0x6b, 0x35, 0x29, 0x41, 0xe1, 0x3e, 0xdd, 0xe7, 0x3d, 0x6c, 0xb3, 0x3f, 0xc9, 0x1c, 0x0c, 0x3f, - 0x70, 0x9b, 0x5d, 0xd1, 0xa5, 0x36, 0xff, 0xf1, 0xa5, 0xfc, 0x17, 0x73, 0x37, 0x86, 0x8a, 0xa3, - 0xa5, 0xa2, 0x9d, 0xaf, 0x56, 0xac, 0x7f, 0x7b, 0x08, 0x8a, 0xb6, 0xcf, 0x17, 0x22, 0xb9, 0x00, - 0xc3, 0xb5, 0xc8, 0x8d, 0xe4, 0x30, 0xcd, 0x3e, 0x3e, 0x58, 0x9c, 0x66, 0x8b, 0x94, 0x6a, 0xf5, - 0x73, 0x0c, 0x86, 0xba, 0xb9, 0xe7, 0x86, 0x72, 0xb8, 0x10, 0xb5, 0xc3, 0x00, 0x3a, 0x2a, 0x62, - 0x90, 0x73, 0x30, 0x74, 0xcb, 0x6f, 0x50, 0x31, 0x62, 0xe4, 0xf1, 0xc1, 0xe2, 0x54, 0xcb, 0x6f, - 0xe8, 0x88, 0x58, 0x4e, 0x5e, 0x85, 0xb1, 0x95, 0x6e, 0x10, 0xd0, 0x36, 0x9b, 0xeb, 0x43, 0x88, - 0x3c, 0xf5, 0xf8, 0x60, 0x11, 0xea, 0x1c, 0xe8, 0x78, 0x0d, 0x3b, 0x46, 0x60, 0xc3, 0x50, 0x8b, - 0xdc, 0x20, 0xa2, 0x8d, 0xf9, 0xe1, 0x81, 0x86, 0x81, 0xad, 0xcf, 0x99, 0x90, 0x93, 0x24, 0x87, - 0x41, 0x70, 0x22, 0x6b, 0x30, 0x7e, 0x3d, 0x70, 0xeb, 0x74, 0x93, 0x06, 0x9e, 0xdf, 0xc0, 0xf1, - 0x2d, 0x2c, 0x9f, 0x7b, 0x7c, 0xb0, 0x78, 0x7c, 0x97, 0x81, 0x9d, 0x0e, 0xc2, 0x63, 0xea, 0x8f, - 0x0e, 0x16, 0x8b, 0x15, 0xb1, 0x65, 0xda, 0x3a, 0x29, 0xf9, 0x06, 0x1b, 0x9c, 0x30, 0xc2, 0xae, - 0xa5, 0x8d, 0xf9, 0xd1, 0x43, 0x9b, 0x68, 0x89, 0x26, 0x1e, 0x6f, 0xba, 0x61, 0xe4, 0x04, 0x9c, - 0x2e, 0xd1, 0x4e, 0x9d, 0x25, 0xb9, 0x0d, 0xc5, 0x5a, 0x7d, 0x8f, 0x36, 0xba, 0x4d, 0x8a, 0x53, - 0x66, 0x7c, 0xe9, 0x84, 0x98, 0xd4, 0x72, 0x3c, 0x65, 0xf1, 0xf2, 0x82, 0xe0, 0x4d, 0x42, 0x01, - 0xd1, 0xe7, 0x93, 0xc4, 0xfa, 0x52, 0xf1, 0x3b, 0xbf, 0xb0, 0xf8, 0xcc, 0xf7, 0xfd, 0xc1, 0x99, - 0x67, 0xac, 0xff, 0x24, 0x0f, 0xa5, 0x24, 0x13, 0xb2, 0x03, 0x93, 0x77, 0x3a, 0x0d, 0x37, 0xa2, - 0x2b, 0x4d, 0x8f, 0xb6, 0xa3, 0x10, 0x27, 0x49, 0xff, 0x6f, 0x7a, 0x41, 0xd4, 0x3b, 0xdf, 0x45, - 0x42, 0xa7, 0xce, 0x29, 0x13, 0x5f, 0x65, 0xb2, 0x8d, 0xeb, 0xa9, 0xe1, 0x06, 0x1e, 0xe2, 0x0c, - 0x3b, 0x5a, 0x3d, 0x7c, 0xeb, 0xef, 0x51, 0x8f, 0x60, 0x2b, 0x26, 0x50, 0xbb, 0xb1, 0xbd, 0x8f, - 0x33, 0x73, 0xf0, 0x09, 0xc4, 0x48, 0x32, 0x26, 0x10, 0x03, 0x5b, 0xff, 0x3c, 0x07, 0x53, 0x36, - 0x0d, 0xfd, 0x6e, 0x50, 0xa7, 0x6b, 0xd4, 0x6d, 0xd0, 0x80, 0x4d, 0xff, 0x9b, 0x5e, 0xbb, 0x21, - 0xd6, 0x14, 0x4e, 0xff, 0xfb, 0x5e, 0x5b, 0xdf, 0xba, 0xb1, 0x9c, 0x7c, 0x0e, 0x46, 0x6b, 0xdd, - 0x6d, 0x44, 0xcd, 0xc7, 0x3b, 0x40, 0xd8, 0xdd, 0x76, 0x12, 0xe8, 0x12, 0x8d, 0x5c, 0x82, 0xd1, - 0xbb, 0x34, 0x08, 0xe3, 0xdd, 0x10, 0x8f, 0x86, 0x07, 0x1c, 0xa4, 0x13, 0x08, 0x2c, 0x72, 0x3d, - 0xde, 0x91, 0xc5, 0xa1, 0x36, 0x9d, 0xd8, 0x07, 0xe3, 0xa9, 0xd2, 0x12, 0x10, 0x7d, 0xaa, 0x48, - 0x2c, 0xeb, 0x27, 0xf3, 0x50, 0xaa, 0xb8, 0x91, 0xbb, 0xed, 0x86, 0xa2, 0x3f, 0xef, 0x5e, 0x61, - 0x7b, 0xbc, 0xf6, 0xa1, 0xb8, 0xc7, 0xb3, 0x96, 0x7f, 0xec, 0xcf, 0x7b, 0x31, 0xf9, 0x79, 0xe3, - 0xec, 0x84, 0x15, 0x9f, 0x17, 0x7f, 0xd4, 0xdb, 0x87, 0x7f, 0x54, 0x49, 0x7c, 0x54, 0x51, 0x7e, - 0x54, 0xfc, 0x29, 0xe4, 0x6d, 0x18, 0xaa, 0x75, 0x68, 0x5d, 0x6c, 0x22, 0xf2, 0x5c, 0x30, 0x3f, - 0x8e, 0x21, 0xdc, 0xbd, 0xb2, 0x3c, 0x21, 0xd8, 0x0c, 0x85, 0x1d, 0x5a, 0xb7, 0x91, 0x4c, 0x5b, - 0x34, 0xff, 0xa4, 0x00, 0x73, 0x59, 0x64, 0xfa, 0x77, 0x8c, 0xf4, 0xf9, 0x8e, 0xf3, 0x50, 0x64, - 0x47, 0x38, 0x3b, 0x16, 0x71, 0xbb, 0x18, 0x5b, 0x9e, 0x60, 0x4d, 0xde, 0x13, 0x30, 0x5b, 0x95, - 0x92, 0xb3, 0x4a, 0x22, 0x28, 0xc6, 0xfc, 0x84, 0x44, 0x20, 0xe5, 0x00, 0x36, 0xd6, 0x72, 0x09, - 0xa3, 0xe0, 0x10, 0x77, 0x8b, 0x04, 0xc7, 0x63, 0x1d, 0x08, 0x88, 0x71, 0xcc, 0xc8, 0x43, 0x61, - 0x15, 0x8a, 0xf2, 0xb3, 0xe6, 0x27, 0x90, 0xd1, 0x4c, 0xa2, 0x93, 0xee, 0x5e, 0xe1, 0x83, 0xd9, - 0x10, 0xbf, 0x75, 0x36, 0x12, 0x87, 0x5c, 0x81, 0xe2, 0x66, 0xe0, 0x3f, 0xda, 0xaf, 0x56, 0xc2, - 0xf9, 0xc9, 0x33, 0x85, 0xf3, 0x63, 0xcb, 0x27, 0x1e, 0x1f, 0x2c, 0xce, 0x76, 0x18, 0xcc, 0xf1, - 0x1a, 0xfa, 0x49, 0xab, 0x10, 0x6f, 0x0c, 0x15, 0x73, 0xa5, 0xfc, 0x8d, 0xa1, 0x62, 0xbe, 0x54, - 0xe0, 0xe2, 0xc5, 0x8d, 0xa1, 0xe2, 0x50, 0x69, 0xf8, 0xc6, 0x50, 0x71, 0x18, 0x05, 0x8e, 0xb1, - 0x12, 0xdc, 0x18, 0x2a, 0x8e, 0x97, 0x26, 0x8c, 0xd3, 0x1e, 0x19, 0x44, 0x7e, 0xdd, 0x6f, 0xda, - 0x85, 0x3b, 0x76, 0xd5, 0x1e, 0x59, 0x29, 0xaf, 0xd0, 0x20, 0xb2, 0x0b, 0xe5, 0x7b, 0x35, 0x7b, - 0xb2, 0xb2, 0xdf, 0x76, 0x5b, 0x5e, 0x9d, 0x1f, 0x9d, 0x76, 0xe1, 0xfa, 0xca, 0xa6, 0x55, 0x86, - 0xa9, 0xf8, 0x5b, 0xd6, 0xbd, 0x30, 0x22, 0x97, 0x60, 0x4c, 0x42, 0xd8, 0x46, 0x57, 0xc8, 0xfc, - 0x6a, 0x3b, 0xc6, 0xb1, 0x7e, 0x27, 0x0f, 0x10, 0x97, 0x3c, 0xa5, 0x6b, 0xe1, 0x0b, 0xc6, 0x5a, - 0x38, 0x96, 0x5c, 0x0b, 0x3d, 0x57, 0x01, 0x79, 0x17, 0x46, 0x98, 0x58, 0xd0, 0x95, 0x22, 0xd1, - 0x89, 0x24, 0x29, 0x16, 0xde, 0xbd, 0xb2, 0x3c, 0x25, 0x88, 0x47, 0x42, 0x84, 0xd8, 0x82, 0x4c, - 0x5b, 0x46, 0x3f, 0x3f, 0x1a, 0x0f, 0x86, 0x58, 0x40, 0xe7, 0x41, 0x0d, 0xa8, 0xe8, 0x50, 0x5c, - 0x19, 0x1d, 0x39, 0xc8, 0xaa, 0x94, 0x9c, 0x04, 0x36, 0xe0, 0xa2, 0x53, 0x47, 0x1f, 0x1f, 0x2c, - 0x16, 0xba, 0x81, 0x87, 0x93, 0x80, 0x5c, 0x02, 0x31, 0x0d, 0x44, 0x07, 0xb2, 0xd9, 0x37, 0x53, - 0x77, 0x9d, 0x3a, 0x0d, 0xa2, 0xb8, 0xc7, 0xe7, 0x73, 0x72, 0xb6, 0x90, 0x0e, 0x98, 0x53, 0x65, - 0x7e, 0x08, 0xa7, 0xc1, 0xf9, 0xcc, 0x5e, 0xb9, 0x68, 0xa0, 0x72, 0x31, 0xf2, 0x8c, 0x3c, 0x95, - 0x1a, 0xbc, 0xcc, 0x49, 0x89, 0x94, 0x66, 0x05, 0xe4, 0x0a, 0xb0, 0x19, 0x2a, 0x7a, 0x1f, 0x44, - 0x3d, 0xe5, 0x7b, 0xb5, 0xe5, 0x63, 0x82, 0xd3, 0xa4, 0xfb, 0x50, 0x27, 0x67, 0xd8, 0xe4, 0x4d, - 0x60, 0x53, 0x58, 0xf4, 0x3b, 0x11, 0x44, 0xd7, 0x57, 0x36, 0x57, 0x9a, 0x7e, 0xb7, 0x51, 0xfb, - 0xf2, 0x7a, 0x4c, 0xbc, 0x5b, 0xef, 0xe8, 0xc4, 0xd7, 0x57, 0x36, 0xc9, 0x9b, 0x30, 0x5c, 0xfe, - 0x56, 0x37, 0xa0, 0x42, 0x3e, 0x99, 0x90, 0x75, 0x32, 0xd8, 0xf2, 0x09, 0x41, 0x38, 0xed, 0xb2, + 0x4b, 0x05, 0x32, 0x0b, 0xd3, 0xf7, 0xab, 0x1b, 0x95, 0x3b, 0xf7, 0x6b, 0x4e, 0x65, 0xb5, 0x76, + 0x6b, 0xeb, 0xce, 0x66, 0x69, 0x88, 0x4c, 0x01, 0xdc, 0xba, 0xbb, 0xbc, 0x6a, 0x6f, 0xac, 0x6e, + 0xad, 0xd6, 0x4a, 0xc3, 0x64, 0x0e, 0x4a, 0x92, 0xc4, 0xa9, 0xad, 0xda, 0xf7, 0xaa, 0x2b, 0xab, + 0xa5, 0x91, 0x9b, 0x43, 0xc5, 0x42, 0x69, 0xc8, 0x1e, 0x5d, 0xa7, 0x6e, 0x48, 0xab, 0x15, 0xeb, + 0xef, 0x14, 0xa0, 0x78, 0x9b, 0x46, 0x6e, 0xc3, 0x8d, 0x5c, 0x72, 0xca, 0x18, 0x1f, 0xfc, 0x44, + 0x6d, 0x60, 0xce, 0xa5, 0x07, 0x66, 0xf8, 0xc9, 0xc1, 0x62, 0xee, 0x75, 0x7d, 0x40, 0xde, 0x82, + 0xf1, 0x0a, 0x0d, 0xeb, 0x81, 0xd7, 0x61, 0x93, 0x66, 0xbe, 0x80, 0x68, 0x27, 0x9f, 0x1c, 0x2c, + 0x1e, 0x6b, 0xc4, 0x60, 0xad, 0x43, 0x74, 0x6c, 0x52, 0x85, 0x91, 0x75, 0x77, 0x9b, 0x36, 0xc3, + 0xf9, 0xe1, 0xb3, 0x85, 0x0b, 0xe3, 0x4b, 0xcf, 0x8b, 0x41, 0x90, 0x0d, 0xbc, 0xc4, 0x4b, 0x57, + 0xdb, 0x51, 0xb0, 0xbf, 0x3c, 0xf7, 0xe4, 0x60, 0xb1, 0xd4, 0x44, 0x80, 0xde, 0xc1, 0x1c, 0x85, + 0xd4, 0xe2, 0x89, 0x31, 0x72, 0xe8, 0xc4, 0x38, 0xfd, 0xbb, 0x07, 0x8b, 0x39, 0x36, 0x60, 0x62, + 0x62, 0xc4, 0xfc, 0xcc, 0x29, 0xb2, 0x04, 0x45, 0x9b, 0x3e, 0xf4, 0x42, 0xf6, 0x65, 0x45, 0xfc, + 0xb2, 0xe3, 0x4f, 0x0e, 0x16, 0x49, 0x20, 0x60, 0x5a, 0x33, 0x14, 0xde, 0xc2, 0x9b, 0x30, 0xae, + 0xb5, 0x9a, 0x94, 0xa0, 0xf0, 0x80, 0xee, 0xf3, 0x1e, 0xb6, 0xd9, 0x9f, 0x64, 0x0e, 0x86, 0x1f, + 0xba, 0xcd, 0xae, 0xe8, 0x52, 0x9b, 0xff, 0xf8, 0x52, 0xfe, 0x8b, 0xb9, 0x9b, 0x43, 0xc5, 0xd1, + 0x52, 0xd1, 0xce, 0x57, 0x2b, 0xd6, 0xbf, 0x3d, 0x04, 0x45, 0xdb, 0xe7, 0x0b, 0x91, 0x5c, 0x84, + 0xe1, 0x5a, 0xe4, 0x46, 0x72, 0x98, 0x66, 0x9f, 0x1c, 0x2c, 0x4e, 0xb3, 0x45, 0x4a, 0xb5, 0xfa, + 0x39, 0x06, 0x43, 0xdd, 0xdc, 0x73, 0x43, 0x39, 0x5c, 0x88, 0xda, 0x61, 0x00, 0x1d, 0x15, 0x31, + 0xc8, 0x79, 0x18, 0xba, 0xed, 0x37, 0xa8, 0x18, 0x31, 0xf2, 0xe4, 0x60, 0x71, 0xaa, 0xe5, 0x37, + 0x74, 0x44, 0x2c, 0x27, 0xaf, 0xc1, 0xd8, 0x4a, 0x37, 0x08, 0x68, 0x9b, 0xcd, 0xf5, 0x21, 0x44, + 0x9e, 0x7a, 0x72, 0xb0, 0x08, 0x75, 0x0e, 0x74, 0xbc, 0x86, 0x1d, 0x23, 0xb0, 0x61, 0xa8, 0x45, + 0x6e, 0x10, 0xd1, 0xc6, 0xfc, 0xf0, 0x40, 0xc3, 0xc0, 0xd6, 0xe7, 0x4c, 0xc8, 0x49, 0x92, 0xc3, + 0x20, 0x38, 0x91, 0x35, 0x18, 0xbf, 0x11, 0xb8, 0x75, 0xba, 0x49, 0x03, 0xcf, 0x6f, 0xe0, 0xf8, + 0x16, 0x96, 0xcf, 0x3f, 0x39, 0x58, 0x3c, 0xbe, 0xcb, 0xc0, 0x4e, 0x07, 0xe1, 0x31, 0xf5, 0xc7, + 0x07, 0x8b, 0xc5, 0x8a, 0xd8, 0x32, 0x6d, 0x9d, 0x94, 0x7c, 0x83, 0x0d, 0x4e, 0x18, 0x61, 0xd7, + 0xd2, 0xc6, 0xfc, 0xe8, 0xa1, 0x4d, 0xb4, 0x44, 0x13, 0x8f, 0x37, 0xdd, 0x30, 0x72, 0x02, 0x4e, + 0x97, 0x68, 0xa7, 0xce, 0x92, 0xdc, 0x81, 0x62, 0xad, 0xbe, 0x47, 0x1b, 0xdd, 0x26, 0xc5, 0x29, + 0x33, 0xbe, 0x74, 0x42, 0x4c, 0x6a, 0x39, 0x9e, 0xb2, 0x78, 0x79, 0x41, 0xf0, 0x26, 0xa1, 0x80, + 0xe8, 0xf3, 0x49, 0x62, 0x7d, 0xa9, 0xf8, 0xed, 0x5f, 0x5c, 0x7c, 0xee, 0xfb, 0xff, 0xe0, 0xec, + 0x73, 0xd6, 0x7f, 0x92, 0x87, 0x52, 0x92, 0x09, 0xd9, 0x81, 0xc9, 0xbb, 0x9d, 0x86, 0x1b, 0xd1, + 0x95, 0xa6, 0x47, 0xdb, 0x51, 0x88, 0x93, 0xa4, 0xff, 0x37, 0xbd, 0x28, 0xea, 0x9d, 0xef, 0x22, + 0xa1, 0x53, 0xe7, 0x94, 0x89, 0xaf, 0x32, 0xd9, 0xc6, 0xf5, 0xd4, 0x70, 0x03, 0x0f, 0x71, 0x86, + 0x1d, 0xad, 0x1e, 0xbe, 0xf5, 0xf7, 0xa8, 0x47, 0xb0, 0x15, 0x13, 0xa8, 0xdd, 0xd8, 0xde, 0xc7, + 0x99, 0x39, 0xf8, 0x04, 0x62, 0x24, 0x19, 0x13, 0x88, 0x81, 0xad, 0x7f, 0x96, 0x83, 0x29, 0x9b, + 0x86, 0x7e, 0x37, 0xa8, 0xd3, 0x35, 0xea, 0x36, 0x68, 0xc0, 0xa6, 0xff, 0x2d, 0xaf, 0xdd, 0x10, + 0x6b, 0x0a, 0xa7, 0xff, 0x03, 0xaf, 0xad, 0x6f, 0xdd, 0x58, 0x4e, 0x3e, 0x07, 0xa3, 0xb5, 0xee, + 0x36, 0xa2, 0xe6, 0xe3, 0x1d, 0x20, 0xec, 0x6e, 0x3b, 0x09, 0x74, 0x89, 0x46, 0x2e, 0xc3, 0xe8, + 0x3d, 0x1a, 0x84, 0xf1, 0x6e, 0x88, 0x47, 0xc3, 0x43, 0x0e, 0xd2, 0x09, 0x04, 0x16, 0xb9, 0x11, + 0xef, 0xc8, 0xe2, 0x50, 0x9b, 0x4e, 0xec, 0x83, 0xf1, 0x54, 0x69, 0x09, 0x88, 0x3e, 0x55, 0x24, + 0x96, 0xf5, 0x53, 0x79, 0x28, 0x55, 0xdc, 0xc8, 0xdd, 0x76, 0x43, 0xd1, 0x9f, 0xf7, 0xae, 0xb2, + 0x3d, 0x5e, 0xfb, 0x50, 0xdc, 0xe3, 0x59, 0xcb, 0x3f, 0xf1, 0xe7, 0xbd, 0x94, 0xfc, 0xbc, 0x71, + 0x76, 0xc2, 0x8a, 0xcf, 0x8b, 0x3f, 0xea, 0x9d, 0xc3, 0x3f, 0xaa, 0x24, 0x3e, 0xaa, 0x28, 0x3f, + 0x2a, 0xfe, 0x14, 0xf2, 0x0e, 0x0c, 0xd5, 0x3a, 0xb4, 0x2e, 0x36, 0x11, 0x79, 0x2e, 0x98, 0x1f, + 0xc7, 0x10, 0xee, 0x5d, 0x5d, 0x9e, 0x10, 0x6c, 0x86, 0xc2, 0x0e, 0xad, 0xdb, 0x48, 0xa6, 0x2d, + 0x9a, 0x7f, 0x5c, 0x80, 0xb9, 0x2c, 0x32, 0xfd, 0x3b, 0x46, 0xfa, 0x7c, 0xc7, 0x05, 0x28, 0xb2, + 0x23, 0x9c, 0x1d, 0x8b, 0xb8, 0x5d, 0x8c, 0x2d, 0x4f, 0xb0, 0x26, 0xef, 0x09, 0x98, 0xad, 0x4a, + 0xc9, 0x39, 0x25, 0x11, 0x14, 0x63, 0x7e, 0x42, 0x22, 0x90, 0x72, 0x00, 0x1b, 0x6b, 0xb9, 0x84, + 0x51, 0x70, 0x88, 0xbb, 0x45, 0x82, 0xe3, 0xb1, 0x0e, 0x04, 0xc4, 0x38, 0x66, 0xe4, 0xa1, 0xb0, + 0x0a, 0x45, 0xf9, 0x59, 0xf3, 0x13, 0xc8, 0x68, 0x26, 0xd1, 0x49, 0xf7, 0xae, 0xf2, 0xc1, 0x6c, + 0x88, 0xdf, 0x3a, 0x1b, 0x89, 0x43, 0xae, 0x42, 0x71, 0x33, 0xf0, 0x1f, 0xef, 0x57, 0x2b, 0xe1, + 0xfc, 0xe4, 0xd9, 0xc2, 0x85, 0xb1, 0xe5, 0x13, 0x4f, 0x0e, 0x16, 0x67, 0x3b, 0x0c, 0xe6, 0x78, + 0x0d, 0xfd, 0xa4, 0x55, 0x88, 0x37, 0x87, 0x8a, 0xb9, 0x52, 0xfe, 0xe6, 0x50, 0x31, 0x5f, 0x2a, + 0x70, 0xf1, 0xe2, 0xe6, 0x50, 0x71, 0xa8, 0x34, 0x7c, 0x73, 0xa8, 0x38, 0x8c, 0x02, 0xc7, 0x58, + 0x09, 0x6e, 0x0e, 0x15, 0xc7, 0x4b, 0x13, 0xc6, 0x69, 0x8f, 0x0c, 0x22, 0xbf, 0xee, 0x37, 0xed, + 0xc2, 0x5d, 0xbb, 0x6a, 0x8f, 0xac, 0x94, 0x57, 0x68, 0x10, 0xd9, 0x85, 0xf2, 0xfd, 0x9a, 0x3d, + 0x59, 0xd9, 0x6f, 0xbb, 0x2d, 0xaf, 0xce, 0x8f, 0x4e, 0xbb, 0x70, 0x63, 0x65, 0xd3, 0x2a, 0xc3, + 0x54, 0xfc, 0x2d, 0xeb, 0x5e, 0x18, 0x91, 0xcb, 0x30, 0x26, 0x21, 0x6c, 0xa3, 0x2b, 0x64, 0x7e, + 0xb5, 0x1d, 0xe3, 0x58, 0xbf, 0x93, 0x07, 0x88, 0x4b, 0x9e, 0xd1, 0xb5, 0xf0, 0x05, 0x63, 0x2d, + 0x1c, 0x4b, 0xae, 0x85, 0x9e, 0xab, 0x80, 0xbc, 0x07, 0x23, 0x4c, 0x2c, 0xe8, 0x4a, 0x91, 0xe8, + 0x44, 0x92, 0x14, 0x0b, 0xef, 0x5d, 0x5d, 0x9e, 0x12, 0xc4, 0x23, 0x21, 0x42, 0x6c, 0x41, 0xa6, + 0x2d, 0xa3, 0x5f, 0x18, 0x8d, 0x07, 0x43, 0x2c, 0xa0, 0x0b, 0xa0, 0x06, 0x54, 0x74, 0x28, 0xae, + 0x8c, 0x8e, 0x1c, 0x64, 0x55, 0x4a, 0x4e, 0x02, 0x1b, 0x70, 0xd1, 0xa9, 0xa3, 0x4f, 0x0e, 0x16, + 0x0b, 0xdd, 0xc0, 0xc3, 0x49, 0x40, 0x2e, 0x83, 0x98, 0x06, 0xa2, 0x03, 0xd9, 0xec, 0x9b, 0xa9, + 0xbb, 0x4e, 0x9d, 0x06, 0x51, 0xdc, 0xe3, 0xf3, 0x39, 0x39, 0x5b, 0x48, 0x07, 0xcc, 0xa9, 0x32, + 0x3f, 0x84, 0xd3, 0xe0, 0x42, 0x66, 0xaf, 0x5c, 0x32, 0x50, 0xb9, 0x18, 0x79, 0x56, 0x9e, 0x4a, + 0x0d, 0x5e, 0xe6, 0xa4, 0x44, 0x4a, 0xb3, 0x02, 0x72, 0x15, 0xd8, 0x0c, 0x15, 0xbd, 0x0f, 0xa2, + 0x9e, 0xf2, 0xfd, 0xda, 0xf2, 0x31, 0xc1, 0x69, 0xd2, 0x7d, 0xa4, 0x93, 0x33, 0x6c, 0xf2, 0x16, + 0xb0, 0x29, 0x2c, 0xfa, 0x9d, 0x08, 0xa2, 0x1b, 0x2b, 0x9b, 0x2b, 0x4d, 0xbf, 0xdb, 0xa8, 0x7d, + 0x79, 0x3d, 0x26, 0xde, 0xad, 0x77, 0x74, 0xe2, 0x1b, 0x2b, 0x9b, 0xe4, 0x2d, 0x18, 0x2e, 0x7f, + 0x6f, 0x37, 0xa0, 0x42, 0x3e, 0x99, 0x90, 0x75, 0x32, 0xd8, 0xf2, 0x09, 0x41, 0x38, 0xed, 0xb2, 0x9f, 0xba, 0x5c, 0x87, 0xe5, 0xac, 0xe6, 0xad, 0xf5, 0x9a, 0x90, 0x3d, 0x48, 0xa2, 0x5b, 0xb6, - 0xd6, 0xb5, 0x66, 0x47, 0xc6, 0x57, 0x33, 0x2a, 0x72, 0x09, 0xf2, 0xe5, 0x0a, 0xde, 0x88, 0xc6, + 0xd6, 0xb5, 0x66, 0x47, 0xc6, 0x57, 0x33, 0x2a, 0x72, 0x19, 0xf2, 0xe5, 0x0a, 0xde, 0x88, 0xc6, 0x97, 0xc6, 0x64, 0xb5, 0x95, 0xe5, 0x39, 0x41, 0x32, 0xe1, 0xea, 0xcb, 0x20, 0x5f, 0xae, 0x90, - 0x65, 0x18, 0xbe, 0xb5, 0x5f, 0xfb, 0xf2, 0xba, 0xd8, 0xcc, 0x66, 0xe5, 0xbc, 0x66, 0xb0, 0xdb, + 0x65, 0x18, 0xbe, 0xbd, 0x5f, 0xfb, 0xf2, 0xba, 0xd8, 0xcc, 0x66, 0xe5, 0xbc, 0x66, 0xb0, 0x3b, 0xb8, 0xec, 0xc3, 0xb8, 0xc5, 0xad, 0xfd, 0xf0, 0x9b, 0x4d, 0xbd, 0xc5, 0x88, 0x46, 0x36, 0x61, - 0xac, 0xdc, 0x68, 0x79, 0xed, 0x3b, 0x21, 0x0d, 0xe6, 0xc7, 0x91, 0xcf, 0x7c, 0xa2, 0xdd, 0xaa, - 0x7c, 0x79, 0xfe, 0xf1, 0xc1, 0xe2, 0x9c, 0xcb, 0x7e, 0x3a, 0xdd, 0x90, 0x06, 0x1a, 0xb7, 0x98, - 0x09, 0xd9, 0x04, 0xb8, 0xe5, 0xb7, 0x77, 0xfd, 0x72, 0xd4, 0x74, 0xc3, 0xc4, 0xf6, 0x18, 0x17, - 0x28, 0xf1, 0xe1, 0x58, 0x8b, 0xc1, 0x1c, 0x97, 0x01, 0x35, 0x86, 0x1a, 0x0f, 0x72, 0x0d, 0x46, - 0x6e, 0x07, 0x6e, 0xbd, 0x49, 0xe7, 0x27, 0x91, 0xdb, 0x9c, 0xe0, 0xc6, 0x81, 0xf2, 0x4b, 0xe7, - 0x05, 0xc3, 0x92, 0x8f, 0x60, 0xfd, 0x9a, 0xc2, 0x11, 0x17, 0xee, 0x01, 0x49, 0xcf, 0xc9, 0x8c, - 0x4b, 0xc2, 0x2b, 0xfa, 0x25, 0x21, 0x5e, 0xf4, 0x2b, 0x7e, 0xab, 0xe5, 0xb6, 0x1b, 0x48, 0x7b, - 0x77, 0x49, 0xbb, 0x3b, 0x58, 0xdf, 0x84, 0x99, 0x54, 0x67, 0x1d, 0x72, 0xbf, 0x7b, 0x07, 0xa6, + 0xac, 0xdc, 0x68, 0x79, 0xed, 0xbb, 0x21, 0x0d, 0xe6, 0xc7, 0x91, 0xcf, 0x7c, 0xa2, 0xdd, 0xaa, + 0x7c, 0x79, 0xfe, 0xc9, 0xc1, 0xe2, 0x9c, 0xcb, 0x7e, 0x3a, 0xdd, 0x90, 0x06, 0x1a, 0xb7, 0x98, + 0x09, 0xd9, 0x04, 0xb8, 0xed, 0xb7, 0x77, 0xfd, 0x72, 0xd4, 0x74, 0xc3, 0xc4, 0xf6, 0x18, 0x17, + 0x28, 0xf1, 0xe1, 0x58, 0x8b, 0xc1, 0x1c, 0x97, 0x01, 0x35, 0x86, 0x1a, 0x0f, 0x72, 0x1d, 0x46, + 0xee, 0x04, 0x6e, 0xbd, 0x49, 0xe7, 0x27, 0x91, 0xdb, 0x9c, 0xe0, 0xc6, 0x81, 0xf2, 0x4b, 0xe7, + 0x05, 0xc3, 0x92, 0x8f, 0x60, 0xfd, 0x9a, 0xc2, 0x11, 0x17, 0xee, 0x03, 0x49, 0xcf, 0xc9, 0x8c, + 0x4b, 0xc2, 0xab, 0xfa, 0x25, 0x21, 0x5e, 0xf4, 0x2b, 0x7e, 0xab, 0xe5, 0xb6, 0x1b, 0x48, 0x7b, + 0x6f, 0x49, 0xbb, 0x3b, 0x58, 0xdf, 0x84, 0x99, 0x54, 0x67, 0x1d, 0x72, 0xbf, 0x7b, 0x17, 0xa6, 0x2b, 0x74, 0xc7, 0xed, 0x36, 0x23, 0x75, 0x92, 0xf0, 0x25, 0x8a, 0x37, 0xad, 0x06, 0x2f, 0x72, - 0xe4, 0xf1, 0x61, 0x27, 0x91, 0xad, 0xb7, 0x61, 0xd2, 0xf8, 0x7c, 0x76, 0x55, 0x28, 0x77, 0x1b, - 0x5e, 0x84, 0x03, 0x99, 0x8b, 0xaf, 0x0a, 0x2e, 0x03, 0xe2, 0x70, 0xd9, 0x31, 0x82, 0xf5, 0xf7, + 0xe4, 0xf1, 0x61, 0x27, 0x91, 0xad, 0x77, 0x60, 0xd2, 0xf8, 0x7c, 0x76, 0x55, 0x28, 0x77, 0x1b, + 0x5e, 0x84, 0x03, 0x99, 0x8b, 0xaf, 0x0a, 0x2e, 0x03, 0xe2, 0x70, 0xd9, 0x31, 0x82, 0xf5, 0x77, 0x75, 0x69, 0x45, 0xec, 0x44, 0xec, 0x5a, 0x2d, 0xf6, 0x83, 0x5c, 0x2c, 0x3b, 0xa5, 0xf6, 0x03, - 0xb5, 0x1b, 0x5c, 0xe0, 0x6b, 0x33, 0x9f, 0x5a, 0x9b, 0xe3, 0x62, 0x24, 0x0a, 0xee, 0xc3, 0x90, - 0xaf, 0x48, 0x35, 0x53, 0x0b, 0x1f, 0x7f, 0xa6, 0xbe, 0x0b, 0x13, 0xb7, 0xdc, 0xb6, 0xbb, 0x4b, - 0x1b, 0xec, 0x0b, 0xf8, 0xde, 0x33, 0xb6, 0xfc, 0xec, 0xe3, 0x83, 0xc5, 0x13, 0x2d, 0x0e, 0xc7, - 0xaf, 0xd4, 0x27, 0x91, 0x41, 0x40, 0x2e, 0xcb, 0x95, 0x3d, 0x9c, 0xb1, 0xb2, 0x27, 0x45, 0xed, - 0xc3, 0xb8, 0xb2, 0xc5, 0x7a, 0xb6, 0x7e, 0x73, 0x0c, 0xbf, 0x91, 0xbc, 0x0a, 0x23, 0x36, 0xdd, + 0xb5, 0x1b, 0x5c, 0xe4, 0x6b, 0x33, 0x9f, 0x5a, 0x9b, 0xe3, 0x62, 0x24, 0x0a, 0xee, 0xa3, 0x90, + 0xaf, 0x48, 0x35, 0x53, 0x0b, 0x9f, 0x7c, 0xa6, 0xbe, 0x07, 0x13, 0xb7, 0xdd, 0xb6, 0xbb, 0x4b, + 0x1b, 0xec, 0x0b, 0xf8, 0xde, 0x33, 0xb6, 0xfc, 0xfc, 0x93, 0x83, 0xc5, 0x13, 0x2d, 0x0e, 0xc7, + 0xaf, 0xd4, 0x27, 0x91, 0x41, 0x40, 0xae, 0xc8, 0x95, 0x3d, 0x9c, 0xb1, 0xb2, 0x27, 0x45, 0xed, + 0xc3, 0xb8, 0xb2, 0xc5, 0x7a, 0xb6, 0x7e, 0x73, 0x0c, 0xbf, 0x91, 0xbc, 0x06, 0x23, 0x36, 0xdd, 0x65, 0x47, 0x4d, 0x2e, 0x1e, 0xa4, 0x00, 0x21, 0x7a, 0xc7, 0x70, 0x1c, 0x94, 0x33, 0x68, 0x23, 0xdc, 0xf3, 0x76, 0x22, 0xd1, 0x3b, 0x4a, 0xce, 0x10, 0x60, 0x4d, 0xce, 0x10, 0x10, 0xf3, 0x3a, 0xcb, 0x61, 0x6c, 0xf7, 0xb3, 0x2b, 0x35, 0xd1, 0x69, 0xb2, 0x87, 0xed, 0x8a, 0xb6, 0x8d, 0x04, - 0x86, 0x94, 0xc0, 0xb0, 0xc9, 0x55, 0x18, 0x2b, 0xd7, 0xeb, 0x7e, 0x57, 0xbb, 0x33, 0xf2, 0x75, + 0x86, 0x94, 0xc0, 0xb0, 0xc9, 0x35, 0x18, 0x2b, 0xd7, 0xeb, 0x7e, 0x57, 0xbb, 0x33, 0xf2, 0x75, 0xcb, 0x81, 0xa6, 0x8a, 0x24, 0x46, 0x25, 0x35, 0x18, 0x5f, 0x65, 0x17, 0x2d, 0x6f, 0xc5, 0xad, 0xef, 0xc9, 0x4e, 0x92, 0x7b, 0x98, 0x56, 0x12, 0xaf, 0x5c, 0x8a, 0xc0, 0x3a, 0x03, 0xea, 0x4a, 0x06, 0x0d, 0x97, 0x6c, 0xc1, 0x78, 0x8d, 0xd6, 0x03, 0x1a, 0xd5, 0x22, 0x3f, 0xa0, 0x89, 0x2d, - 0x59, 0x2b, 0x59, 0x3e, 0x2d, 0xef, 0x7a, 0x21, 0x02, 0x9d, 0x90, 0x41, 0x75, 0xae, 0x1a, 0x32, + 0x59, 0x2b, 0x59, 0x3e, 0x23, 0xef, 0x7a, 0x21, 0x02, 0x9d, 0x90, 0x41, 0x75, 0xae, 0x1a, 0x32, 0x17, 0xda, 0x5b, 0x7e, 0xb0, 0x5f, 0x59, 0x16, 0xdb, 0x74, 0x7c, 0xa6, 0x73, 0xb0, 0x2e, 0xb4, 0x33, 0x48, 0x63, 0xdb, 0x14, 0xda, 0x39, 0x16, 0x8e, 0x54, 0xa5, 0x86, 0xb2, 0x95, 0xd8, 0xb4, 0xa7, 0xe3, 0x5e, 0x46, 0xb0, 0x36, 0x52, 0x8d, 0x10, 0x25, 0x33, 0x63, 0xa4, 0x04, 0x16, 0xe9, 0x00, 0x91, 0xa3, 0xc6, 0x05, 0xdd, 0x26, 0x0d, 0x43, 0xb1, 0x97, 0x9f, 0x4c, 0x0c, 0x7e, 0x8c, - 0xb0, 0xfc, 0xa2, 0x60, 0x7e, 0x4a, 0x4e, 0x03, 0x71, 0x4f, 0x63, 0x85, 0x5a, 0x3d, 0x19, 0xbc, - 0xc9, 0x1b, 0x00, 0xab, 0x8f, 0x22, 0x1a, 0xb4, 0xdd, 0xa6, 0xd2, 0x83, 0xa1, 0xea, 0x87, 0x0a, + 0xb0, 0xfc, 0x92, 0x60, 0x7e, 0x5a, 0x4e, 0x03, 0x71, 0x4f, 0x63, 0x85, 0x5a, 0x3d, 0x19, 0xbc, + 0xc9, 0x9b, 0x00, 0xab, 0x8f, 0x23, 0x1a, 0xb4, 0xdd, 0xa6, 0xd2, 0x83, 0xa1, 0xea, 0x87, 0x0a, 0xa8, 0x39, 0xd0, 0x1a, 0x32, 0x59, 0x81, 0xc9, 0x72, 0x18, 0x76, 0x5b, 0xd4, 0xf6, 0x9b, 0xb4, - 0x6c, 0x6f, 0xe0, 0xbe, 0x3f, 0xb6, 0x7c, 0xea, 0xf1, 0xc1, 0xe2, 0x49, 0x17, 0x0b, 0x9c, 0xc0, - 0x6f, 0x52, 0xc7, 0x0d, 0xf4, 0xd9, 0x6d, 0xd2, 0x90, 0xdb, 0x00, 0xb7, 0x3b, 0xb4, 0x5d, 0xa3, - 0x6e, 0x50, 0xdf, 0x4b, 0x6c, 0xf3, 0x71, 0xc1, 0xf2, 0x73, 0xe2, 0x0b, 0xe7, 0xfc, 0x0e, 0x6d, - 0x87, 0x08, 0xd3, 0x5b, 0x15, 0x63, 0x92, 0x7b, 0x30, 0x5d, 0x2d, 0xdf, 0xda, 0xf4, 0x9b, 0x5e, - 0x7d, 0x5f, 0x48, 0x4e, 0x53, 0xa8, 0x1d, 0x3c, 0x2e, 0xb8, 0x26, 0x4a, 0xf9, 0xf6, 0xe4, 0xb9, - 0x2d, 0xa7, 0x83, 0x50, 0x47, 0xc8, 0x4f, 0x49, 0x2e, 0xe4, 0x7d, 0x36, 0x07, 0x43, 0x26, 0x0c, - 0x6e, 0xb9, 0xbb, 0xe1, 0xfc, 0xb4, 0xa1, 0xed, 0x2a, 0xdf, 0xab, 0x5d, 0xd4, 0x4a, 0xb9, 0x98, - 0xb2, 0xc0, 0x27, 0x22, 0x42, 0x9d, 0xc8, 0xdd, 0x0d, 0xcd, 0x89, 0xa8, 0xb0, 0xc9, 0x0d, 0x80, - 0x8a, 0x5f, 0xef, 0xb6, 0x68, 0x3b, 0xaa, 0x2c, 0xcf, 0x97, 0xcc, 0xab, 0x80, 0x2a, 0x88, 0xb7, - 0xb6, 0x86, 0x5f, 0x37, 0x66, 0xa2, 0x46, 0xbd, 0xf0, 0x0e, 0x94, 0x92, 0x0d, 0x39, 0xa2, 0x02, - 0x6b, 0xb2, 0x34, 0xa5, 0x7d, 0xfd, 0xea, 0x23, 0x2f, 0x8c, 0x42, 0xeb, 0x7b, 0x8d, 0x15, 0xc8, - 0x76, 0x87, 0x9b, 0x74, 0x7f, 0x33, 0xa0, 0x3b, 0xde, 0x23, 0xb1, 0x99, 0xe1, 0xee, 0x70, 0x9f, - 0xee, 0x3b, 0x1d, 0x84, 0xea, 0xbb, 0x83, 0x42, 0x25, 0x9f, 0x87, 0xe2, 0xcd, 0x5b, 0xb5, 0x9b, - 0x74, 0xbf, 0x5a, 0x11, 0x07, 0x15, 0x27, 0x6b, 0x85, 0x0e, 0x23, 0x35, 0xe6, 0x9a, 0xc2, 0xb4, - 0x96, 0xe3, 0x9d, 0x90, 0xd5, 0xbc, 0xd2, 0xec, 0x86, 0x11, 0x0d, 0xaa, 0x15, 0xbd, 0xe6, 0x3a, - 0x07, 0x26, 0xf6, 0x25, 0x85, 0x6a, 0xfd, 0x93, 0x3c, 0xee, 0x82, 0x6c, 0xc2, 0x57, 0xdb, 0x61, - 0xe4, 0xb6, 0xeb, 0x54, 0x31, 0xc0, 0x09, 0xef, 0x09, 0x68, 0x62, 0xc2, 0xc7, 0xc8, 0x66, 0xd5, - 0xf9, 0x81, 0xab, 0x66, 0x55, 0x4a, 0xcd, 0x45, 0xb5, 0xa2, 0xab, 0x57, 0x03, 0x01, 0x4d, 0x54, - 0x19, 0x23, 0x93, 0x73, 0x30, 0x5a, 0x2d, 0xdf, 0x2a, 0x77, 0xa3, 0x3d, 0xdc, 0x83, 0x8b, 0x5c, - 0x3e, 0x67, 0xb3, 0xd5, 0xed, 0x46, 0x7b, 0xb6, 0x2c, 0x24, 0x97, 0xf0, 0xde, 0xd3, 0xa6, 0x11, - 0x57, 0xc3, 0x8a, 0x43, 0x37, 0xe4, 0xa0, 0xc4, 0xb5, 0x87, 0x81, 0xc8, 0xcb, 0x30, 0x7c, 0x77, - 0x73, 0xa5, 0x5a, 0x11, 0x17, 0x67, 0x3c, 0x89, 0x1e, 0x74, 0xea, 0x66, 0x4b, 0x38, 0x8a, 0xf5, - 0x5b, 0xb9, 0x78, 0x7f, 0x23, 0xe7, 0x0c, 0x79, 0x04, 0x95, 0x2e, 0x4c, 0x1e, 0xd1, 0x95, 0x2e, - 0x28, 0x99, 0xd8, 0x40, 0x56, 0xba, 0x61, 0xe4, 0xb7, 0x56, 0xdb, 0x8d, 0x8e, 0xef, 0xb5, 0x23, - 0xa4, 0xe2, 0xbd, 0x66, 0x3d, 0x3e, 0x58, 0x3c, 0x5d, 0xc7, 0x52, 0x87, 0x8a, 0x62, 0x27, 0xc1, - 0x25, 0x83, 0xfa, 0x13, 0x74, 0xa4, 0xf5, 0x7b, 0x79, 0xe3, 0x5c, 0x62, 0xcd, 0xb3, 0x69, 0xa7, - 0xe9, 0xd5, 0xf1, 0x2a, 0x7e, 0x3d, 0xf0, 0xbb, 0x1d, 0x35, 0x1d, 0xb0, 0x79, 0x41, 0x5c, 0xea, - 0xec, 0xb2, 0x62, 0x93, 0x77, 0x06, 0x35, 0x79, 0x0f, 0x26, 0x98, 0x88, 0x20, 0x7e, 0x86, 0xf3, - 0x79, 0x1c, 0x89, 0xe7, 0x50, 0x7d, 0x16, 0xd2, 0x40, 0xb1, 0x31, 0x64, 0x0b, 0x9d, 0x82, 0x34, - 0x60, 0x7e, 0x2b, 0x70, 0xdb, 0xa1, 0x17, 0xad, 0xb6, 0xeb, 0xc1, 0x3e, 0x8a, 0x34, 0xab, 0x6d, - 0x77, 0xbb, 0x49, 0x1b, 0xf8, 0xb9, 0xc5, 0xe5, 0xf3, 0x8f, 0x0f, 0x16, 0x5f, 0x88, 0x38, 0x8e, - 0x43, 0x15, 0x92, 0x43, 0x39, 0x96, 0xc6, 0xb9, 0x27, 0x27, 0x26, 0x02, 0xc9, 0x6e, 0xc5, 0xd7, - 0x13, 0x7e, 0xba, 0xa3, 0x08, 0xa4, 0x46, 0x83, 0x6d, 0x3e, 0x7a, 0x33, 0x75, 0x02, 0xeb, 0xcf, - 0x73, 0xf1, 0xc9, 0x49, 0xde, 0x82, 0x71, 0x31, 0xd5, 0xb5, 0x79, 0x81, 0x5b, 0x9f, 0x5c, 0x17, - 0x89, 0x91, 0xd5, 0xd1, 0xd9, 0x85, 0xbd, 0xbc, 0xb2, 0xae, 0xcd, 0x0d, 0xbc, 0xb0, 0xbb, 0xf5, - 0x66, 0x92, 0x4a, 0xa2, 0xb1, 0x49, 0xb0, 0xb5, 0x5e, 0x33, 0x7b, 0x05, 0x27, 0x41, 0xd4, 0x0c, - 0x33, 0xba, 0x41, 0x43, 0xfe, 0xe4, 0x1f, 0xfe, 0x3f, 0xe6, 0xb2, 0x0e, 0x68, 0xb2, 0x0c, 0x93, - 0xf7, 0xfc, 0xe0, 0x3e, 0x8e, 0xaf, 0xd6, 0x09, 0x38, 0xf2, 0x0f, 0x65, 0x41, 0xf2, 0x83, 0x4c, - 0x12, 0xbd, 0x6d, 0x5a, 0x6f, 0x98, 0x6d, 0x4b, 0x70, 0x30, 0x08, 0xd8, 0x38, 0x28, 0x8e, 0x6a, - 0x75, 0xe0, 0x38, 0xc4, 0x4d, 0x30, 0xa6, 0xb0, 0x8e, 0x6e, 0xfd, 0x67, 0x39, 0xfd, 0x20, 0x66, - 0x9d, 0x5c, 0xf1, 0x5b, 0xae, 0xd7, 0xd6, 0x3e, 0x87, 0xbf, 0x08, 0x21, 0x34, 0xd9, 0x12, 0x0d, - 0x99, 0x5c, 0x81, 0x22, 0xff, 0xa5, 0x36, 0x49, 0x54, 0x47, 0x09, 0x42, 0x73, 0x87, 0x97, 0x88, - 0xa9, 0x91, 0x29, 0x1c, 0x75, 0x64, 0x7e, 0x33, 0xa7, 0x9f, 0xa1, 0x1f, 0xf7, 0x94, 0x48, 0x9c, - 0x0e, 0xf9, 0xa3, 0x9c, 0x0e, 0x9f, 0xf8, 0x13, 0xbe, 0x2f, 0x07, 0xe3, 0x9a, 0x7a, 0x81, 0x7d, - 0xc3, 0x66, 0xe0, 0x7f, 0x48, 0xeb, 0x91, 0xf9, 0x0d, 0x1d, 0x0e, 0x4c, 0x7c, 0x83, 0x42, 0xfd, - 0x04, 0xdf, 0x60, 0xfd, 0x59, 0x4e, 0x5c, 0x6e, 0x06, 0xde, 0xe6, 0xcd, 0x2d, 0x39, 0x7f, 0x94, - 0xb3, 0xed, 0x3d, 0x18, 0xb6, 0x69, 0xc3, 0x0b, 0xc5, 0xc5, 0x64, 0x46, 0xbf, 0x48, 0x61, 0x41, - 0x2c, 0xf0, 0x04, 0xec, 0xa7, 0x7e, 0x30, 0x61, 0x39, 0x93, 0x40, 0xab, 0xe1, 0xb5, 0x26, 0x7d, - 0xe4, 0xf1, 0xc5, 0x28, 0xce, 0x48, 0x94, 0x40, 0xbd, 0xd0, 0xd9, 0x61, 0x25, 0x42, 0x14, 0xd6, - 0x17, 0x9e, 0x41, 0x63, 0xbd, 0x0f, 0x10, 0x57, 0x49, 0x6e, 0x42, 0x49, 0xcc, 0x06, 0xaf, 0xbd, - 0xcb, 0x25, 0x20, 0xd1, 0x07, 0x8b, 0x8f, 0x0f, 0x16, 0x9f, 0xad, 0xab, 0x32, 0x21, 0x2e, 0x6a, - 0x7c, 0x53, 0x84, 0xd6, 0xbf, 0x97, 0x87, 0x7c, 0x19, 0x07, 0xe4, 0x26, 0xdd, 0x8f, 0xdc, 0xed, - 0x6b, 0x5e, 0xd3, 0x58, 0x4c, 0xf7, 0x11, 0xea, 0xec, 0x78, 0x86, 0x9e, 0x41, 0x43, 0x66, 0x8b, - 0xe9, 0x66, 0xb0, 0xfd, 0x3a, 0x12, 0x6a, 0x8b, 0xe9, 0x7e, 0xb0, 0xfd, 0x7a, 0x92, 0x4c, 0x21, - 0x12, 0x0b, 0x46, 0xf8, 0xc2, 0x12, 0x73, 0x10, 0x1e, 0x1f, 0x2c, 0x8e, 0xf0, 0xf5, 0x67, 0x8b, - 0x12, 0x72, 0x12, 0x0a, 0xb5, 0xcd, 0x0d, 0xb1, 0x03, 0xa2, 0x3e, 0x2f, 0xec, 0xb4, 0x6d, 0x06, - 0x63, 0x75, 0xae, 0x57, 0xca, 0x9b, 0x78, 0x83, 0x1f, 0x8e, 0xeb, 0x6c, 0x36, 0xdc, 0x4e, 0xf2, - 0x0e, 0xaf, 0x10, 0xc9, 0xdb, 0x30, 0x7e, 0xb3, 0xb2, 0xb2, 0xe6, 0x87, 0x7c, 0xf7, 0x1a, 0x89, - 0x27, 0xff, 0xfd, 0x46, 0xdd, 0x41, 0x15, 0x7a, 0xf2, 0x18, 0xd0, 0xf0, 0xad, 0x1f, 0xce, 0xc3, - 0xb8, 0xa6, 0xe0, 0x22, 0x9f, 0x17, 0x2f, 0x9b, 0x39, 0x43, 0x74, 0xd7, 0x30, 0x58, 0x29, 0xd7, - 0x86, 0xb4, 0xfc, 0x06, 0x15, 0xef, 0x9c, 0xb1, 0xe6, 0x21, 0x3f, 0x88, 0xe6, 0xe1, 0x0d, 0x00, - 0x3e, 0x07, 0xb0, 0xc9, 0x9a, 0x38, 0xa1, 0x19, 0x38, 0xe8, 0xe3, 0x12, 0x23, 0x93, 0xbb, 0x30, - 0xbb, 0x15, 0x74, 0xc3, 0xa8, 0xb6, 0x1f, 0x46, 0xb4, 0xc5, 0xb8, 0x6d, 0xfa, 0x7e, 0x53, 0xcc, - 0xbf, 0x17, 0x1e, 0x1f, 0x2c, 0x9e, 0x89, 0x58, 0xb1, 0x13, 0x62, 0x39, 0x36, 0xc0, 0xe9, 0xf8, - 0xbe, 0xae, 0x8f, 0xc8, 0x62, 0x60, 0xd9, 0x30, 0xa1, 0x6b, 0x33, 0xd8, 0xc9, 0x22, 0x5e, 0x81, - 0x84, 0x8e, 0x5a, 0x3b, 0x59, 0x44, 0x2b, 0xd3, 0xaf, 0x52, 0x26, 0x89, 0xf5, 0x79, 0x5d, 0x93, - 0x36, 0xe8, 0xc2, 0xb6, 0x7e, 0x20, 0x17, 0x6f, 0x23, 0x77, 0x2f, 0x93, 0x37, 0x61, 0x84, 0xbf, - 0xba, 0x89, 0xc7, 0xc9, 0x63, 0xea, 0x36, 0xaa, 0x3f, 0xc9, 0x71, 0x15, 0xf6, 0xef, 0xf3, 0x97, - 0xf9, 0x67, 0x6c, 0x41, 0xa2, 0xb4, 0xdf, 0xa6, 0x22, 0x4c, 0x72, 0x47, 0x3d, 0xef, 0xe5, 0x2c, - 0xed, 0xb7, 0xf5, 0xdb, 0x43, 0x30, 0x65, 0xa2, 0xe9, 0x4f, 0x73, 0xb9, 0x81, 0x9e, 0xe6, 0xde, - 0x83, 0x22, 0xeb, 0x0f, 0xaf, 0x4e, 0xa5, 0x44, 0xf6, 0x02, 0xbe, 0x09, 0x08, 0x98, 0xf1, 0xe4, - 0x0c, 0x7c, 0x38, 0xd8, 0xe5, 0xd4, 0x56, 0x54, 0x64, 0x49, 0x7b, 0x3f, 0x2a, 0xc4, 0x42, 0x8a, - 0x7c, 0x3f, 0xd2, 0xd7, 0x83, 0x7a, 0x49, 0x7a, 0x0d, 0x46, 0x98, 0x60, 0xae, 0x74, 0x27, 0xd8, - 0x4a, 0x26, 0xb3, 0x27, 0x6c, 0x4b, 0x38, 0x12, 0xb9, 0x07, 0xc5, 0x75, 0x37, 0x8c, 0x6a, 0x94, - 0xb6, 0x07, 0x78, 0x74, 0x5f, 0x14, 0x5d, 0x35, 0x8b, 0x2f, 0xda, 0x21, 0xa5, 0xed, 0xc4, 0xab, - 0xa9, 0x62, 0x46, 0xbe, 0x06, 0xb0, 0xe2, 0xb7, 0xa3, 0xc0, 0x6f, 0xae, 0xfb, 0xbb, 0xf3, 0x23, - 0x78, 0x69, 0x3d, 0x9d, 0x18, 0x80, 0x18, 0x81, 0xdf, 0x5b, 0x95, 0x66, 0xa6, 0xce, 0x0b, 0x9c, - 0xa6, 0xbf, 0xab, 0xaf, 0x83, 0x18, 0x9f, 0x5c, 0x83, 0x92, 0xd4, 0x08, 0xdc, 0xe9, 0xec, 0x06, - 0x38, 0x41, 0x46, 0x63, 0xc9, 0x83, 0x3e, 0x8a, 0x9c, 0xae, 0x80, 0xeb, 0x3b, 0x65, 0x92, 0x86, - 0x7c, 0x15, 0x4e, 0x24, 0x61, 0x72, 0x94, 0x8b, 0xb1, 0x4c, 0xae, 0xb3, 0xcb, 0x98, 0xf7, 0xbd, - 0x58, 0x58, 0x1f, 0xe5, 0xe1, 0x44, 0x8f, 0x8f, 0x65, 0xeb, 0x01, 0x8f, 0x6b, 0x6d, 0x3d, 0x24, - 0x4e, 0x69, 0x6e, 0x2c, 0x74, 0x06, 0xf2, 0xe2, 0x80, 0x1b, 0x5a, 0x2e, 0x3d, 0x3e, 0x58, 0x9c, - 0x30, 0xc6, 0x31, 0x5f, 0xad, 0x90, 0x1b, 0x30, 0xc4, 0x86, 0x68, 0x80, 0x37, 0x6f, 0xa9, 0x0c, - 0x9a, 0x8a, 0x3c, 0x7d, 0xfa, 0xe0, 0xd0, 0x21, 0x0f, 0xf2, 0x79, 0x28, 0x6c, 0x6d, 0xad, 0xe3, - 0xdc, 0x29, 0xe0, 0xb7, 0x4f, 0x46, 0x51, 0xd3, 0x98, 0xaa, 0x93, 0x8c, 0xf6, 0xa2, 0x32, 0x91, - 0x60, 0xe8, 0xe4, 0x2b, 0x09, 0x5b, 0x9c, 0x97, 0xfb, 0x0f, 0xf4, 0xe0, 0xa6, 0x39, 0x9f, 0xc0, - 0x22, 0xc6, 0xfa, 0xb9, 0x7c, 0xbc, 0x86, 0xaf, 0x79, 0xcd, 0x88, 0x06, 0x64, 0x81, 0x2f, 0xc9, - 0x58, 0x38, 0xb3, 0xd5, 0x6f, 0x32, 0x1f, 0xaf, 0x6f, 0xce, 0x4a, 0x2d, 0xe4, 0x97, 0xb5, 0x85, - 0x5c, 0xc0, 0x85, 0x3c, 0xd5, 0x73, 0xc9, 0xbe, 0x9c, 0x31, 0x2f, 0x71, 0x21, 0x66, 0xcc, 0xbd, - 0x17, 0x60, 0x72, 0xc3, 0x5f, 0x7d, 0x14, 0x29, 0x44, 0xb6, 0x00, 0x8b, 0xb6, 0x09, 0x64, 0x1c, - 0x6f, 0x37, 0x1b, 0x34, 0xd8, 0xda, 0x73, 0xdb, 0xc6, 0xa3, 0xb3, 0x9d, 0x82, 0x33, 0xdc, 0x0d, - 0xfa, 0xd0, 0xc4, 0x1d, 0xe5, 0xb8, 0x49, 0xb8, 0xf5, 0xfd, 0x79, 0xd9, 0x19, 0x77, 0x97, 0x9e, - 0xd2, 0xc7, 0xcd, 0xd7, 0x8d, 0xc7, 0xcd, 0x59, 0xa5, 0x96, 0x55, 0x2f, 0xf5, 0x4b, 0x87, 0x3c, - 0xf0, 0xff, 0xfd, 0x11, 0x98, 0xd0, 0xd1, 0x59, 0x3f, 0x94, 0x1b, 0x8d, 0x40, 0xef, 0x07, 0xb7, - 0xd1, 0x08, 0x6c, 0x84, 0x1a, 0xef, 0xf9, 0x85, 0xbe, 0xef, 0xf9, 0x5f, 0x87, 0xb1, 0x95, 0x56, - 0xc3, 0x78, 0x65, 0xb4, 0x32, 0x9a, 0x77, 0x51, 0x21, 0xf1, 0xb5, 0xa0, 0xb4, 0x8d, 0xf5, 0x56, - 0x23, 0xfd, 0xb6, 0x18, 0xb3, 0x34, 0x4c, 0x01, 0x86, 0x3f, 0x89, 0x29, 0xc0, 0x55, 0x18, 0xbb, - 0x13, 0xd2, 0xad, 0x6e, 0xbb, 0x4d, 0x9b, 0x38, 0xad, 0x8a, 0x5c, 0xd6, 0xef, 0x86, 0xd4, 0x89, - 0x10, 0xaa, 0x37, 0x40, 0xa1, 0xea, 0x03, 0x3c, 0xda, 0x67, 0x80, 0xaf, 0x40, 0x71, 0x93, 0xd2, - 0x00, 0xfb, 0x74, 0x3c, 0x16, 0xe9, 0x3a, 0x94, 0x06, 0x0e, 0xeb, 0x58, 0xc3, 0x44, 0x40, 0x20, - 0x1a, 0x76, 0x05, 0x13, 0x03, 0xda, 0x15, 0x90, 0xe7, 0x61, 0xa2, 0xd3, 0xdd, 0x6e, 0x7a, 0x75, - 0xe4, 0x2b, 0x0c, 0x12, 0xec, 0x71, 0x0e, 0x63, 0x6c, 0x43, 0xf2, 0x15, 0x98, 0xc4, 0x3b, 0x8e, - 0x9a, 0x72, 0x53, 0xc6, 0x73, 0x9c, 0x51, 0xc6, 0x25, 0x9d, 0x3a, 0x03, 0x39, 0x19, 0x76, 0x33, - 0x26, 0x23, 0x72, 0x03, 0x46, 0x77, 0xbd, 0xc8, 0xd9, 0xeb, 0x6e, 0xcf, 0x4f, 0x1b, 0x46, 0x27, - 0xd7, 0xbd, 0x68, 0xad, 0xbb, 0xcd, 0x87, 0x5c, 0xb1, 0xc6, 0x1d, 0x6f, 0xd7, 0x8b, 0xf6, 0xba, - 0xba, 0x2e, 0x75, 0x64, 0x17, 0x71, 0x17, 0x6a, 0x30, 0x65, 0xce, 0x8a, 0x27, 0xf0, 0xc2, 0xa7, - 0xec, 0x2d, 0x8a, 0xa5, 0xb1, 0x1b, 0x43, 0x45, 0x28, 0x8d, 0x73, 0x4b, 0x0b, 0x1b, 0x36, 0x55, - 0xff, 0xd8, 0xe4, 0x66, 0x77, 0x9b, 0x06, 0x6d, 0x1a, 0xd1, 0x50, 0x5c, 0x28, 0x42, 0x7b, 0xa8, - 0xdc, 0xe9, 0x84, 0xd6, 0xaf, 0xe5, 0x61, 0xb4, 0x7c, 0xaf, 0x56, 0x6d, 0xef, 0xf8, 0xf8, 0x4e, - 0xa7, 0x9e, 0x67, 0xf4, 0x77, 0x3a, 0xf5, 0x3c, 0xa3, 0x3f, 0xca, 0x5c, 0xca, 0xb8, 0x12, 0xa2, - 0x29, 0xaf, 0x76, 0x25, 0x34, 0x2e, 0xb3, 0xf1, 0x4b, 0x55, 0x61, 0x80, 0x97, 0x2a, 0xa5, 0x4c, - 0x1c, 0x3a, 0x54, 0x99, 0x48, 0xde, 0x84, 0xf1, 0x6a, 0x3b, 0xa2, 0xbb, 0x41, 0xbc, 0x6a, 0xd4, - 0xf5, 0x54, 0x81, 0xf5, 0x6b, 0x82, 0x86, 0xcd, 0xa6, 0x24, 0x57, 0x60, 0x2a, 0xc5, 0x25, 0x4e, - 0x49, 0xae, 0xe7, 0x4c, 0xe8, 0x16, 0x24, 0xa2, 0x55, 0x49, 0xcc, 0x37, 0x69, 0x0d, 0xc0, 0x05, - 0xd9, 0xa9, 0x58, 0x83, 0xcf, 0x3a, 0x76, 0x79, 0x26, 0xdb, 0x1a, 0xc0, 0xfa, 0xa9, 0x1c, 0xcc, - 0x65, 0x4d, 0x23, 0xf2, 0x0e, 0x4c, 0xf8, 0xc1, 0xae, 0xdb, 0xf6, 0xbe, 0xc5, 0xbf, 0x48, 0x53, + 0x6c, 0x6f, 0xe0, 0xbe, 0x3f, 0xb6, 0x7c, 0xfa, 0xc9, 0xc1, 0xe2, 0x49, 0x17, 0x0b, 0x9c, 0xc0, + 0x6f, 0x52, 0xc7, 0x0d, 0xf4, 0xd9, 0x6d, 0xd2, 0x90, 0x3b, 0x00, 0x77, 0x3a, 0xb4, 0x5d, 0xa3, + 0x6e, 0x50, 0xdf, 0x4b, 0x6c, 0xf3, 0x71, 0xc1, 0xf2, 0x29, 0xf1, 0x85, 0x73, 0x7e, 0x87, 0xb6, + 0x43, 0x84, 0xe9, 0xad, 0x8a, 0x31, 0xc9, 0x7d, 0x98, 0xae, 0x96, 0x6f, 0x6f, 0xfa, 0x4d, 0xaf, + 0xbe, 0x2f, 0x24, 0xa7, 0x29, 0xd4, 0x0e, 0x1e, 0x17, 0x5c, 0x13, 0xa5, 0x7c, 0x7b, 0xf2, 0xdc, + 0x96, 0xd3, 0x41, 0xa8, 0x23, 0xe4, 0xa7, 0x24, 0x17, 0xf2, 0x01, 0x9b, 0x83, 0x21, 0x13, 0x06, + 0xb7, 0xdc, 0xdd, 0x70, 0x7e, 0xda, 0xd0, 0x76, 0x95, 0xef, 0xd7, 0x2e, 0x69, 0xa5, 0x5c, 0x4c, + 0x59, 0xe0, 0x13, 0x11, 0xa1, 0x4e, 0xe4, 0xee, 0x86, 0xe6, 0x44, 0x54, 0xd8, 0xe4, 0x26, 0x40, + 0xc5, 0xaf, 0x77, 0x5b, 0xb4, 0x1d, 0x55, 0x96, 0xe7, 0x4b, 0xe6, 0x55, 0x40, 0x15, 0xc4, 0x5b, + 0x5b, 0xc3, 0xaf, 0x1b, 0x33, 0x51, 0xa3, 0x5e, 0x78, 0x17, 0x4a, 0xc9, 0x86, 0x1c, 0x51, 0x81, + 0x35, 0x59, 0x9a, 0xd2, 0xbe, 0x7e, 0xf5, 0xb1, 0x17, 0x46, 0xa1, 0xf5, 0x7d, 0xc6, 0x0a, 0x64, + 0xbb, 0xc3, 0x2d, 0xba, 0xbf, 0x19, 0xd0, 0x1d, 0xef, 0xb1, 0xd8, 0xcc, 0x70, 0x77, 0x78, 0x40, + 0xf7, 0x9d, 0x0e, 0x42, 0xf5, 0xdd, 0x41, 0xa1, 0x92, 0xcf, 0x43, 0xf1, 0xd6, 0xed, 0xda, 0x2d, + 0xba, 0x5f, 0xad, 0x88, 0x83, 0x8a, 0x93, 0xb5, 0x42, 0x87, 0x91, 0x1a, 0x73, 0x4d, 0x61, 0x5a, + 0xcb, 0xf1, 0x4e, 0xc8, 0x6a, 0x5e, 0x69, 0x76, 0xc3, 0x88, 0x06, 0xd5, 0x8a, 0x5e, 0x73, 0x9d, + 0x03, 0x13, 0xfb, 0x92, 0x42, 0xb5, 0xfe, 0x71, 0x1e, 0x77, 0x41, 0x36, 0xe1, 0xab, 0xed, 0x30, + 0x72, 0xdb, 0x75, 0xaa, 0x18, 0xe0, 0x84, 0xf7, 0x04, 0x34, 0x31, 0xe1, 0x63, 0x64, 0xb3, 0xea, + 0xfc, 0xc0, 0x55, 0xb3, 0x2a, 0xa5, 0xe6, 0xa2, 0x5a, 0xd1, 0xd5, 0xab, 0x81, 0x80, 0x26, 0xaa, + 0x8c, 0x91, 0xc9, 0x79, 0x18, 0xad, 0x96, 0x6f, 0x97, 0xbb, 0xd1, 0x1e, 0xee, 0xc1, 0x45, 0x2e, + 0x9f, 0xb3, 0xd9, 0xea, 0x76, 0xa3, 0x3d, 0x5b, 0x16, 0x92, 0xcb, 0x78, 0xef, 0x69, 0xd3, 0x88, + 0xab, 0x61, 0xc5, 0xa1, 0x1b, 0x72, 0x50, 0xe2, 0xda, 0xc3, 0x40, 0xe4, 0x15, 0x18, 0xbe, 0xb7, + 0xb9, 0x52, 0xad, 0x88, 0x8b, 0x33, 0x9e, 0x44, 0x0f, 0x3b, 0x75, 0xb3, 0x25, 0x1c, 0xc5, 0xfa, + 0xad, 0x5c, 0xbc, 0xbf, 0x91, 0xf3, 0x86, 0x3c, 0x82, 0x4a, 0x17, 0x26, 0x8f, 0xe8, 0x4a, 0x17, + 0x94, 0x4c, 0x6c, 0x20, 0x2b, 0xdd, 0x30, 0xf2, 0x5b, 0xab, 0xed, 0x46, 0xc7, 0xf7, 0xda, 0x11, + 0x52, 0xf1, 0x5e, 0xb3, 0x9e, 0x1c, 0x2c, 0x9e, 0xa9, 0x63, 0xa9, 0x43, 0x45, 0xb1, 0x93, 0xe0, + 0x92, 0x41, 0xfd, 0x29, 0x3a, 0xd2, 0xfa, 0xbd, 0xbc, 0x71, 0x2e, 0xb1, 0xe6, 0xd9, 0xb4, 0xd3, + 0xf4, 0xea, 0x78, 0x15, 0xbf, 0x11, 0xf8, 0xdd, 0x8e, 0x9a, 0x0e, 0xd8, 0xbc, 0x20, 0x2e, 0x75, + 0x76, 0x59, 0xb1, 0xc9, 0x3b, 0x83, 0x9a, 0xbc, 0x0f, 0x13, 0x4c, 0x44, 0x10, 0x3f, 0xc3, 0xf9, + 0x3c, 0x8e, 0xc4, 0x29, 0x54, 0x9f, 0x85, 0x34, 0x50, 0x6c, 0x0c, 0xd9, 0x42, 0xa7, 0x20, 0x0d, + 0x98, 0xdf, 0x0a, 0xdc, 0x76, 0xe8, 0x45, 0xab, 0xed, 0x7a, 0xb0, 0x8f, 0x22, 0xcd, 0x6a, 0xdb, + 0xdd, 0x6e, 0xd2, 0x06, 0x7e, 0x6e, 0x71, 0xf9, 0xc2, 0x93, 0x83, 0xc5, 0x17, 0x23, 0x8e, 0xe3, + 0x50, 0x85, 0xe4, 0x50, 0x8e, 0xa5, 0x71, 0xee, 0xc9, 0x89, 0x89, 0x40, 0xb2, 0x5b, 0xf1, 0xf5, + 0x84, 0x9f, 0xee, 0x28, 0x02, 0xa9, 0xd1, 0x60, 0x9b, 0x8f, 0xde, 0x4c, 0x9d, 0xc0, 0xfa, 0xb3, + 0x5c, 0x7c, 0x72, 0x92, 0xb7, 0x61, 0x5c, 0x4c, 0x75, 0x6d, 0x5e, 0xe0, 0xd6, 0x27, 0xd7, 0x45, + 0x62, 0x64, 0x75, 0x74, 0x76, 0x61, 0x2f, 0xaf, 0xac, 0x6b, 0x73, 0x03, 0x2f, 0xec, 0x6e, 0xbd, + 0x99, 0xa4, 0x92, 0x68, 0x6c, 0x12, 0x6c, 0xad, 0xd7, 0xcc, 0x5e, 0xc1, 0x49, 0x10, 0x35, 0xc3, + 0x8c, 0x6e, 0xd0, 0x90, 0x3f, 0xfd, 0x87, 0xff, 0x8f, 0xb9, 0xac, 0x03, 0x9a, 0x2c, 0xc3, 0xe4, + 0x7d, 0x3f, 0x78, 0x80, 0xe3, 0xab, 0x75, 0x02, 0x8e, 0xfc, 0x23, 0x59, 0x90, 0xfc, 0x20, 0x93, + 0x44, 0x6f, 0x9b, 0xd6, 0x1b, 0x66, 0xdb, 0x12, 0x1c, 0x0c, 0x02, 0x36, 0x0e, 0x8a, 0xa3, 0x5a, + 0x1d, 0x38, 0x0e, 0x71, 0x13, 0x8c, 0x29, 0xac, 0xa3, 0x5b, 0xff, 0x59, 0x4e, 0x3f, 0x88, 0x59, + 0x27, 0x57, 0xfc, 0x96, 0xeb, 0xb5, 0xb5, 0xcf, 0xe1, 0x2f, 0x42, 0x08, 0x4d, 0xb6, 0x44, 0x43, + 0x26, 0x57, 0xa1, 0xc8, 0x7f, 0xa9, 0x4d, 0x12, 0xd5, 0x51, 0x82, 0xd0, 0xdc, 0xe1, 0x25, 0x62, + 0x6a, 0x64, 0x0a, 0x47, 0x1d, 0x99, 0xdf, 0xcc, 0xe9, 0x67, 0xe8, 0x27, 0x3d, 0x25, 0x12, 0xa7, + 0x43, 0xfe, 0x28, 0xa7, 0xc3, 0xa7, 0xfe, 0x84, 0xef, 0xcf, 0xc1, 0xb8, 0xa6, 0x5e, 0x60, 0xdf, + 0xb0, 0x19, 0xf8, 0x1f, 0xd1, 0x7a, 0x64, 0x7e, 0x43, 0x87, 0x03, 0x13, 0xdf, 0xa0, 0x50, 0x3f, + 0xc5, 0x37, 0x58, 0x7f, 0x9a, 0x13, 0x97, 0x9b, 0x81, 0xb7, 0x79, 0x73, 0x4b, 0xce, 0x1f, 0xe5, + 0x6c, 0x7b, 0x1f, 0x86, 0x6d, 0xda, 0xf0, 0x42, 0x71, 0x31, 0x99, 0xd1, 0x2f, 0x52, 0x58, 0x10, + 0x0b, 0x3c, 0x01, 0xfb, 0xa9, 0x1f, 0x4c, 0x58, 0xce, 0x24, 0xd0, 0x6a, 0x78, 0xbd, 0x49, 0x1f, + 0x7b, 0x7c, 0x31, 0x8a, 0x33, 0x12, 0x25, 0x50, 0x2f, 0x74, 0x76, 0x58, 0x89, 0x10, 0x85, 0xf5, + 0x85, 0x67, 0xd0, 0x58, 0x1f, 0x00, 0xc4, 0x55, 0x92, 0x5b, 0x50, 0x12, 0xb3, 0xc1, 0x6b, 0xef, + 0x72, 0x09, 0x48, 0xf4, 0xc1, 0xe2, 0x93, 0x83, 0xc5, 0xe7, 0xeb, 0xaa, 0x4c, 0x88, 0x8b, 0x1a, + 0xdf, 0x14, 0xa1, 0xf5, 0xef, 0xe5, 0x21, 0x5f, 0xc6, 0x01, 0xb9, 0x45, 0xf7, 0x23, 0x77, 0xfb, + 0xba, 0xd7, 0x34, 0x16, 0xd3, 0x03, 0x84, 0x3a, 0x3b, 0x9e, 0xa1, 0x67, 0xd0, 0x90, 0xd9, 0x62, + 0xba, 0x15, 0x6c, 0xbf, 0x81, 0x84, 0xda, 0x62, 0x7a, 0x10, 0x6c, 0xbf, 0x91, 0x24, 0x53, 0x88, + 0xc4, 0x82, 0x11, 0xbe, 0xb0, 0xc4, 0x1c, 0x84, 0x27, 0x07, 0x8b, 0x23, 0x7c, 0xfd, 0xd9, 0xa2, + 0x84, 0x9c, 0x84, 0x42, 0x6d, 0x73, 0x43, 0xec, 0x80, 0xa8, 0xcf, 0x0b, 0x3b, 0x6d, 0x9b, 0xc1, + 0x58, 0x9d, 0xeb, 0x95, 0xf2, 0x26, 0xde, 0xe0, 0x87, 0xe3, 0x3a, 0x9b, 0x0d, 0xb7, 0x93, 0xbc, + 0xc3, 0x2b, 0x44, 0xf2, 0x0e, 0x8c, 0xdf, 0xaa, 0xac, 0xac, 0xf9, 0x21, 0xdf, 0xbd, 0x46, 0xe2, + 0xc9, 0xff, 0xa0, 0x51, 0x77, 0x50, 0x85, 0x9e, 0x3c, 0x06, 0x34, 0x7c, 0xeb, 0x47, 0xf2, 0x30, + 0xae, 0x29, 0xb8, 0xc8, 0xe7, 0xc5, 0xcb, 0x66, 0xce, 0x10, 0xdd, 0x35, 0x0c, 0x56, 0xca, 0xb5, + 0x21, 0x2d, 0xbf, 0x41, 0xc5, 0x3b, 0x67, 0xac, 0x79, 0xc8, 0x0f, 0xa2, 0x79, 0x78, 0x13, 0x80, + 0xcf, 0x01, 0x6c, 0xb2, 0x26, 0x4e, 0x68, 0x06, 0x0e, 0xfa, 0xb8, 0xc4, 0xc8, 0xe4, 0x1e, 0xcc, + 0x6e, 0x05, 0xdd, 0x30, 0xaa, 0xed, 0x87, 0x11, 0x6d, 0x31, 0x6e, 0x9b, 0xbe, 0xdf, 0x14, 0xf3, + 0xef, 0xc5, 0x27, 0x07, 0x8b, 0x67, 0x23, 0x56, 0xec, 0x84, 0x58, 0x8e, 0x0d, 0x70, 0x3a, 0xbe, + 0xaf, 0xeb, 0x23, 0xb2, 0x18, 0x58, 0x36, 0x4c, 0xe8, 0xda, 0x0c, 0x76, 0xb2, 0x88, 0x57, 0x20, + 0xa1, 0xa3, 0xd6, 0x4e, 0x16, 0xd1, 0xca, 0xf4, 0xab, 0x94, 0x49, 0x62, 0x7d, 0x5e, 0xd7, 0xa4, + 0x0d, 0xba, 0xb0, 0xad, 0x1f, 0xcc, 0xc5, 0xdb, 0xc8, 0xbd, 0x2b, 0xe4, 0x2d, 0x18, 0xe1, 0xaf, + 0x6e, 0xe2, 0x71, 0xf2, 0x98, 0xba, 0x8d, 0xea, 0x4f, 0x72, 0x5c, 0x85, 0xfd, 0xfb, 0xfc, 0x65, + 0xfe, 0x39, 0x5b, 0x90, 0x28, 0xed, 0xb7, 0xa9, 0x08, 0x93, 0xdc, 0x51, 0xcf, 0x7b, 0x25, 0x4b, + 0xfb, 0x6d, 0xfd, 0xf6, 0x10, 0x4c, 0x99, 0x68, 0xfa, 0xd3, 0x5c, 0x6e, 0xa0, 0xa7, 0xb9, 0xf7, + 0xa1, 0xc8, 0xfa, 0xc3, 0xab, 0x53, 0x29, 0x91, 0xbd, 0x88, 0x6f, 0x02, 0x02, 0x66, 0x3c, 0x39, + 0x03, 0x1f, 0x0e, 0x76, 0x39, 0xb5, 0x15, 0x15, 0x59, 0xd2, 0xde, 0x8f, 0x0a, 0xb1, 0x90, 0x22, + 0xdf, 0x8f, 0xf4, 0xf5, 0xa0, 0x5e, 0x92, 0x5e, 0x87, 0x11, 0x26, 0x98, 0x2b, 0xdd, 0x09, 0xb6, + 0x92, 0xc9, 0xec, 0x09, 0xdb, 0x12, 0x8e, 0x44, 0xee, 0x43, 0x71, 0xdd, 0x0d, 0xa3, 0x1a, 0xa5, + 0xed, 0x01, 0x1e, 0xdd, 0x17, 0x45, 0x57, 0xcd, 0xe2, 0x8b, 0x76, 0x48, 0x69, 0x3b, 0xf1, 0x6a, + 0xaa, 0x98, 0x91, 0xaf, 0x01, 0xac, 0xf8, 0xed, 0x28, 0xf0, 0x9b, 0xeb, 0xfe, 0xee, 0xfc, 0x08, + 0x5e, 0x5a, 0xcf, 0x24, 0x06, 0x20, 0x46, 0xe0, 0xf7, 0x56, 0xa5, 0x99, 0xa9, 0xf3, 0x02, 0xa7, + 0xe9, 0xef, 0xea, 0xeb, 0x20, 0xc6, 0x27, 0xd7, 0xa1, 0x24, 0x35, 0x02, 0x77, 0x3b, 0xbb, 0x01, + 0x4e, 0x90, 0xd1, 0x58, 0xf2, 0xa0, 0x8f, 0x23, 0xa7, 0x2b, 0xe0, 0xfa, 0x4e, 0x99, 0xa4, 0x21, + 0x5f, 0x85, 0x13, 0x49, 0x98, 0x1c, 0xe5, 0x62, 0x2c, 0x93, 0xeb, 0xec, 0x32, 0xe6, 0x7d, 0x2f, + 0x16, 0xd6, 0xc7, 0x79, 0x38, 0xd1, 0xe3, 0x63, 0xd9, 0x7a, 0xc0, 0xe3, 0x5a, 0x5b, 0x0f, 0x89, + 0x53, 0x9a, 0x1b, 0x0b, 0x9d, 0x85, 0xbc, 0x38, 0xe0, 0x86, 0x96, 0x4b, 0x4f, 0x0e, 0x16, 0x27, + 0x8c, 0x71, 0xcc, 0x57, 0x2b, 0xe4, 0x26, 0x0c, 0xb1, 0x21, 0x1a, 0xe0, 0xcd, 0x5b, 0x2a, 0x83, + 0xa6, 0x22, 0x4f, 0x9f, 0x3e, 0x38, 0x74, 0xc8, 0x83, 0x7c, 0x1e, 0x0a, 0x5b, 0x5b, 0xeb, 0x38, + 0x77, 0x0a, 0xf8, 0xed, 0x93, 0x51, 0xd4, 0x34, 0xa6, 0xea, 0x24, 0xa3, 0xbd, 0xa4, 0x4c, 0x24, + 0x18, 0x3a, 0xf9, 0x4a, 0xc2, 0x16, 0xe7, 0x95, 0xfe, 0x03, 0x3d, 0xb8, 0x69, 0xce, 0xa7, 0xb0, + 0x88, 0xb1, 0x7e, 0x3e, 0x1f, 0xaf, 0xe1, 0xeb, 0x5e, 0x33, 0xa2, 0x01, 0x59, 0xe0, 0x4b, 0x32, + 0x16, 0xce, 0x6c, 0xf5, 0x9b, 0xcc, 0xc7, 0xeb, 0x9b, 0xb3, 0x52, 0x0b, 0xf9, 0x15, 0x6d, 0x21, + 0x17, 0x70, 0x21, 0x4f, 0xf5, 0x5c, 0xb2, 0xaf, 0x64, 0xcc, 0x4b, 0x5c, 0x88, 0x19, 0x73, 0xef, + 0x45, 0x98, 0xdc, 0xf0, 0x57, 0x1f, 0x47, 0x0a, 0x91, 0x2d, 0xc0, 0xa2, 0x6d, 0x02, 0x19, 0xc7, + 0x3b, 0xcd, 0x06, 0x0d, 0xb6, 0xf6, 0xdc, 0xb6, 0xf1, 0xe8, 0x6c, 0xa7, 0xe0, 0x0c, 0x77, 0x83, + 0x3e, 0x32, 0x71, 0x47, 0x39, 0x6e, 0x12, 0x6e, 0xfd, 0x40, 0x5e, 0x76, 0xc6, 0xbd, 0xa5, 0x67, + 0xf4, 0x71, 0xf3, 0x0d, 0xe3, 0x71, 0x73, 0x56, 0xa9, 0x65, 0xd5, 0x4b, 0xfd, 0xd2, 0x21, 0x0f, + 0xfc, 0x7f, 0x77, 0x04, 0x26, 0x74, 0x74, 0xd6, 0x0f, 0xe5, 0x46, 0x23, 0xd0, 0xfb, 0xc1, 0x6d, + 0x34, 0x02, 0x1b, 0xa1, 0xc6, 0x7b, 0x7e, 0xa1, 0xef, 0x7b, 0xfe, 0xd7, 0x61, 0x6c, 0xa5, 0xd5, + 0x30, 0x5e, 0x19, 0xad, 0x8c, 0xe6, 0x5d, 0x52, 0x48, 0x7c, 0x2d, 0x28, 0x6d, 0x63, 0xbd, 0xd5, + 0x48, 0xbf, 0x2d, 0xc6, 0x2c, 0x0d, 0x53, 0x80, 0xe1, 0x4f, 0x63, 0x0a, 0x70, 0x0d, 0xc6, 0xee, + 0x86, 0x74, 0xab, 0xdb, 0x6e, 0xd3, 0x26, 0x4e, 0xab, 0x22, 0x97, 0xf5, 0xbb, 0x21, 0x75, 0x22, + 0x84, 0xea, 0x0d, 0x50, 0xa8, 0xfa, 0x00, 0x8f, 0xf6, 0x19, 0xe0, 0xab, 0x50, 0xdc, 0xa4, 0x34, + 0xc0, 0x3e, 0x1d, 0x8f, 0x45, 0xba, 0x0e, 0xa5, 0x81, 0xc3, 0x3a, 0xd6, 0x30, 0x11, 0x10, 0x88, + 0x86, 0x5d, 0xc1, 0xc4, 0x80, 0x76, 0x05, 0xe4, 0x05, 0x98, 0xe8, 0x74, 0xb7, 0x9b, 0x5e, 0x1d, + 0xf9, 0x0a, 0x83, 0x04, 0x7b, 0x9c, 0xc3, 0x18, 0xdb, 0x90, 0x7c, 0x05, 0x26, 0xf1, 0x8e, 0xa3, + 0xa6, 0xdc, 0x94, 0xf1, 0x1c, 0x67, 0x94, 0x71, 0x49, 0xa7, 0xce, 0x40, 0x4e, 0x86, 0xdd, 0x8c, + 0xc9, 0x88, 0xdc, 0x84, 0xd1, 0x5d, 0x2f, 0x72, 0xf6, 0xba, 0xdb, 0xf3, 0xd3, 0x86, 0xd1, 0xc9, + 0x0d, 0x2f, 0x5a, 0xeb, 0x6e, 0xf3, 0x21, 0x57, 0xac, 0x71, 0xc7, 0xdb, 0xf5, 0xa2, 0xbd, 0xae, + 0xae, 0x4b, 0x1d, 0xd9, 0x45, 0xdc, 0x85, 0x1a, 0x4c, 0x99, 0xb3, 0xe2, 0x29, 0xbc, 0xf0, 0x29, + 0x7b, 0x8b, 0x62, 0x69, 0xec, 0xe6, 0x50, 0x11, 0x4a, 0xe3, 0xdc, 0xd2, 0xc2, 0x86, 0x4d, 0xd5, + 0x3f, 0x36, 0xb9, 0xd5, 0xdd, 0xa6, 0x41, 0x9b, 0x46, 0x34, 0x14, 0x17, 0x8a, 0xd0, 0x1e, 0x2a, + 0x77, 0x3a, 0xa1, 0xf5, 0x0f, 0xf3, 0x30, 0x5a, 0xbe, 0x5f, 0xab, 0xb6, 0x77, 0x7c, 0x7c, 0xa7, + 0x53, 0xcf, 0x33, 0xfa, 0x3b, 0x9d, 0x7a, 0x9e, 0xd1, 0x1f, 0x65, 0x2e, 0x67, 0x5c, 0x09, 0xd1, + 0x94, 0x57, 0xbb, 0x12, 0x1a, 0x97, 0xd9, 0xf8, 0xa5, 0xaa, 0x30, 0xc0, 0x4b, 0x95, 0x52, 0x26, + 0x0e, 0x1d, 0xaa, 0x4c, 0x24, 0x6f, 0xc1, 0x78, 0xb5, 0x1d, 0xd1, 0xdd, 0x20, 0x5e, 0x35, 0xea, + 0x7a, 0xaa, 0xc0, 0xfa, 0x35, 0x41, 0xc3, 0x66, 0x53, 0x92, 0x2b, 0x30, 0x95, 0xe2, 0x12, 0xa7, + 0x24, 0xd7, 0x73, 0x26, 0x74, 0x0b, 0x12, 0xd1, 0xaa, 0x24, 0xe6, 0x9b, 0xb4, 0x06, 0xe0, 0x82, + 0xec, 0x54, 0xac, 0xc1, 0x67, 0x1d, 0xbb, 0x3c, 0x93, 0x6d, 0x0d, 0x60, 0xfd, 0x74, 0x0e, 0xe6, + 0xb2, 0xa6, 0x11, 0x79, 0x17, 0x26, 0xfc, 0x60, 0xd7, 0x6d, 0x7b, 0xdf, 0xcb, 0xbf, 0x48, 0x53, 0x80, 0xe9, 0x70, 0xfd, 0xda, 0xaf, 0xc3, 0x59, 0x87, 0x68, 0x5f, 0x6e, 0xde, 0xd7, 0x33, 0x3b, - 0x44, 0x03, 0x5b, 0xdf, 0xce, 0xc3, 0x78, 0xb9, 0xd3, 0x79, 0xca, 0x2d, 0xc5, 0xbe, 0x68, 0x1c, - 0x20, 0xf2, 0xb6, 0xa7, 0xbe, 0x6b, 0x20, 0x23, 0xb1, 0x5f, 0xce, 0xc3, 0x74, 0x82, 0x42, 0x6f, - 0x7d, 0x6e, 0x40, 0xfb, 0xb0, 0xfc, 0x80, 0xf6, 0x61, 0x85, 0xc1, 0xec, 0xc3, 0x86, 0x3e, 0xc9, - 0xa1, 0xf0, 0x12, 0x14, 0xca, 0x9d, 0x4e, 0xf2, 0x9d, 0xb9, 0xd3, 0xb9, 0x7b, 0x85, 0xdf, 0xd8, - 0xdd, 0x4e, 0xc7, 0x66, 0x18, 0xc6, 0x4e, 0x3d, 0x32, 0xe0, 0x4e, 0x6d, 0xbd, 0x06, 0x63, 0xc8, - 0x0b, 0xad, 0xb2, 0xce, 0x00, 0x6e, 0x31, 0xc2, 0x20, 0xcb, 0xa8, 0x4b, 0x6c, 0x3e, 0xff, 0x6f, - 0x0e, 0x86, 0xf1, 0xf7, 0x53, 0x3a, 0xc7, 0x96, 0x8c, 0x39, 0x56, 0xd2, 0xe6, 0xd8, 0x20, 0xb3, - 0xeb, 0xff, 0x1c, 0xc2, 0xde, 0x12, 0xf3, 0x4a, 0x18, 0x43, 0xe5, 0x32, 0x8c, 0xa1, 0xde, 0x00, - 0x6d, 0x2f, 0xd7, 0x17, 0xb3, 0x76, 0x2a, 0xea, 0x77, 0xa9, 0x18, 0x99, 0xdc, 0x4f, 0x9a, 0x45, - 0x15, 0x70, 0x30, 0xce, 0x26, 0x9b, 0xfa, 0x44, 0x2c, 0xa2, 0xd6, 0x80, 0x54, 0xdb, 0x21, 0xad, - 0x77, 0x03, 0x5a, 0xbb, 0xef, 0x75, 0xee, 0xd2, 0xc0, 0xdb, 0xd9, 0x17, 0xfa, 0x0b, 0x94, 0x3c, - 0x3c, 0x51, 0xea, 0x84, 0xf7, 0xbd, 0x0e, 0xbb, 0x6c, 0x79, 0x3b, 0xfb, 0x76, 0x06, 0x0d, 0x79, - 0x17, 0x46, 0x6d, 0xfa, 0x30, 0xf0, 0x22, 0xf9, 0xd8, 0x3f, 0xa5, 0x54, 0x03, 0x08, 0xe5, 0x57, + 0x44, 0x03, 0x5b, 0xdf, 0xca, 0xc3, 0x78, 0xb9, 0xd3, 0x79, 0xc6, 0x2d, 0xc5, 0xbe, 0x68, 0x1c, + 0x20, 0xf2, 0xb6, 0xa7, 0xbe, 0x6b, 0x20, 0x23, 0xb1, 0x5f, 0xc9, 0xc3, 0x74, 0x82, 0x42, 0x6f, + 0x7d, 0x6e, 0x40, 0xfb, 0xb0, 0xfc, 0x80, 0xf6, 0x61, 0x85, 0xc1, 0xec, 0xc3, 0x86, 0x3e, 0xcd, + 0xa1, 0xf0, 0x32, 0x14, 0xca, 0x9d, 0x4e, 0xf2, 0x9d, 0xb9, 0xd3, 0xb9, 0x77, 0x95, 0xdf, 0xd8, + 0xdd, 0x4e, 0xc7, 0x66, 0x18, 0xc6, 0x4e, 0x3d, 0x32, 0xe0, 0x4e, 0x6d, 0xbd, 0x0e, 0x63, 0xc8, + 0x0b, 0xad, 0xb2, 0xce, 0x02, 0x6e, 0x31, 0xc2, 0x20, 0xcb, 0xa8, 0x4b, 0x6c, 0x3e, 0xff, 0x6f, + 0x0e, 0x86, 0xf1, 0xf7, 0x33, 0x3a, 0xc7, 0x96, 0x8c, 0x39, 0x56, 0xd2, 0xe6, 0xd8, 0x20, 0xb3, + 0xeb, 0xff, 0x1c, 0xc2, 0xde, 0x12, 0xf3, 0x4a, 0x18, 0x43, 0xe5, 0x32, 0x8c, 0xa1, 0xde, 0x04, + 0x6d, 0x2f, 0xd7, 0x17, 0xb3, 0x76, 0x2a, 0xea, 0x77, 0xa9, 0x18, 0x99, 0x3c, 0x48, 0x9a, 0x45, + 0x15, 0x70, 0x30, 0xce, 0x25, 0x9b, 0xfa, 0x54, 0x2c, 0xa2, 0xd6, 0x80, 0x54, 0xdb, 0x21, 0xad, + 0x77, 0x03, 0x5a, 0x7b, 0xe0, 0x75, 0xee, 0xd1, 0xc0, 0xdb, 0xd9, 0x17, 0xfa, 0x0b, 0x94, 0x3c, + 0x3c, 0x51, 0xea, 0x84, 0x0f, 0xbc, 0x0e, 0xbb, 0x6c, 0x79, 0x3b, 0xfb, 0x76, 0x06, 0x0d, 0x79, + 0x0f, 0x46, 0x6d, 0xfa, 0x28, 0xf0, 0x22, 0xf9, 0xd8, 0x3f, 0xa5, 0x54, 0x03, 0x08, 0xe5, 0x57, 0xdf, 0x80, 0xff, 0xd0, 0xc7, 0x5f, 0x94, 0x93, 0x25, 0xbe, 0x1d, 0xf3, 0x47, 0xfd, 0xc9, 0xf8, - 0x6b, 0xcb, 0xf7, 0x6a, 0xbd, 0x76, 0x63, 0x72, 0x01, 0x86, 0x71, 0x4f, 0x17, 0x52, 0x0f, 0x1a, - 0xc9, 0xa3, 0x94, 0xa0, 0x1f, 0x38, 0x88, 0x41, 0x4e, 0x03, 0xa8, 0x37, 0x96, 0x70, 0xbe, 0x88, - 0xf2, 0x88, 0x06, 0x49, 0x1e, 0x48, 0x63, 0x47, 0x39, 0x90, 0x3e, 0x3d, 0x5b, 0xa0, 0x5f, 0xce, - 0xc3, 0x59, 0xb5, 0x9d, 0xdd, 0x0e, 0x6a, 0xe5, 0x5b, 0xeb, 0xd5, 0xc6, 0xa6, 0xb8, 0xdf, 0x6c, - 0x06, 0xfe, 0x03, 0x8f, 0xdd, 0x6f, 0x2f, 0x1f, 0xb2, 0x18, 0xd7, 0xf9, 0xac, 0xe5, 0xca, 0xd1, - 0xbc, 0x61, 0x35, 0xa1, 0x9d, 0x1a, 0xc2, 0xb0, 0xa3, 0xd3, 0x49, 0xe9, 0x4a, 0xd7, 0x9e, 0xb1, - 0x63, 0x06, 0xe4, 0x07, 0x72, 0x70, 0x3c, 0xbb, 0x21, 0xe2, 0xce, 0xbb, 0x28, 0x65, 0xeb, 0x1e, - 0xad, 0x5d, 0x7e, 0xe9, 0xf1, 0xc1, 0xe2, 0xd9, 0xd0, 0x6d, 0x35, 0x1d, 0xaf, 0xc1, 0x6b, 0xf3, + 0x6b, 0xcb, 0xf7, 0x6b, 0xbd, 0x76, 0x63, 0x72, 0x11, 0x86, 0x71, 0x4f, 0x17, 0x52, 0x0f, 0x1a, + 0xc9, 0xa3, 0x94, 0xa0, 0x1f, 0x38, 0x88, 0x41, 0xce, 0x00, 0xa8, 0x37, 0x96, 0x70, 0xbe, 0x88, + 0xf2, 0x88, 0x06, 0x49, 0x1e, 0x48, 0x63, 0x47, 0x39, 0x90, 0x3e, 0x3b, 0x5b, 0xa0, 0x5f, 0xc9, + 0xc3, 0x39, 0xb5, 0x9d, 0xdd, 0x09, 0x6a, 0xe5, 0xdb, 0xeb, 0xd5, 0xc6, 0xa6, 0xb8, 0xdf, 0x6c, + 0x06, 0xfe, 0x43, 0x8f, 0xdd, 0x6f, 0xaf, 0x1c, 0xb2, 0x18, 0xd7, 0xf9, 0xac, 0xe5, 0xca, 0xd1, + 0xbc, 0x61, 0x35, 0xa1, 0x9d, 0x1a, 0xc2, 0xb0, 0xa3, 0xd3, 0x49, 0xe9, 0x4a, 0xd7, 0x9e, 0xb3, + 0x63, 0x06, 0xe4, 0x07, 0x73, 0x70, 0x3c, 0xbb, 0x21, 0xe2, 0xce, 0xbb, 0x28, 0x65, 0xeb, 0x1e, + 0xad, 0x5d, 0x7e, 0xf9, 0xc9, 0xc1, 0xe2, 0xb9, 0xd0, 0x6d, 0x35, 0x1d, 0xaf, 0xc1, 0x6b, 0xf3, 0xea, 0xd4, 0xe9, 0x08, 0x04, 0xa3, 0xde, 0x1e, 0x35, 0x7d, 0x09, 0xe4, 0x9a, 0x9c, 0xcf, 0x2d, - 0x03, 0x14, 0xa5, 0xfe, 0xc9, 0xfa, 0xc7, 0x39, 0xd0, 0x66, 0x54, 0xd1, 0xa6, 0x0d, 0x2f, 0xa0, - 0xf5, 0x08, 0x77, 0x34, 0xe5, 0xf3, 0xc1, 0x61, 0x09, 0x23, 0x19, 0x84, 0x91, 0x77, 0x60, 0x94, + 0x03, 0x14, 0xa5, 0xfe, 0xc9, 0xfa, 0x47, 0x39, 0xd0, 0x66, 0x54, 0xd1, 0xa6, 0x0d, 0x2f, 0xa0, + 0xf5, 0x08, 0x77, 0x34, 0xe5, 0xf3, 0xc1, 0x61, 0x09, 0x23, 0x19, 0x84, 0x91, 0x77, 0x61, 0x94, 0x6b, 0xab, 0xb8, 0x96, 0x28, 0x9e, 0x89, 0x42, 0xb3, 0xc5, 0x9d, 0x83, 0x38, 0x86, 0x3e, 0x8b, - 0x05, 0x11, 0x93, 0xe0, 0x6f, 0xdc, 0xdb, 0x5a, 0x69, 0xba, 0x5e, 0x2b, 0x14, 0xfb, 0x18, 0x76, - 0xeb, 0x87, 0x0f, 0x23, 0xa7, 0x8e, 0x50, 0x5d, 0x82, 0x57, 0xa8, 0xd6, 0x75, 0xa9, 0x58, 0x3b, - 0xc4, 0xd2, 0x6b, 0x11, 0x86, 0xef, 0xc6, 0x17, 0xec, 0xe5, 0xb1, 0xc7, 0x07, 0x8b, 0x7c, 0xba, - 0xd8, 0x1c, 0x6e, 0xfd, 0xad, 0x1c, 0x4c, 0x99, 0xf3, 0x89, 0x5c, 0x84, 0x11, 0xe1, 0x6f, 0x91, + 0x05, 0x11, 0x93, 0xe0, 0x6f, 0xde, 0xdf, 0x5a, 0x69, 0xba, 0x5e, 0x2b, 0x14, 0xfb, 0x18, 0x76, + 0xeb, 0x47, 0x8f, 0x22, 0xa7, 0x8e, 0x50, 0x5d, 0x82, 0x57, 0xa8, 0xd6, 0x0d, 0xa9, 0x58, 0x3b, + 0xc4, 0xd2, 0x6b, 0x11, 0x86, 0xef, 0xc5, 0x17, 0xec, 0xe5, 0xb1, 0x27, 0x07, 0x8b, 0x7c, 0xba, + 0xd8, 0x1c, 0x6e, 0xfd, 0x8d, 0x1c, 0x4c, 0x99, 0xf3, 0x89, 0x5c, 0x82, 0x11, 0xe1, 0x6f, 0x91, 0x43, 0x45, 0x02, 0xeb, 0x85, 0x11, 0xee, 0x69, 0x61, 0xf8, 0x57, 0x08, 0x2c, 0xb6, 0x13, 0x0b, 0x0e, 0x42, 0x53, 0x86, 0x3b, 0x71, 0x9d, 0x83, 0x6c, 0x59, 0x46, 0x2c, 0x26, 0x1c, 0x86, 0xdd, 0x66, 0xa4, 0xeb, 0x97, 0x03, 0x84, 0xd8, 0xa2, 0xc4, 0x5a, 0x81, 0x11, 0xbe, 0x84, 0x13, 0x16, - 0x26, 0xb9, 0x23, 0x58, 0x98, 0x58, 0x07, 0x39, 0x80, 0x5a, 0x6d, 0xed, 0x26, 0xdd, 0xdf, 0x74, - 0xbd, 0x00, 0x1f, 0x44, 0x70, 0xbb, 0xbc, 0x29, 0x16, 0xd7, 0x84, 0x78, 0x10, 0xe1, 0x5b, 0xeb, - 0x7d, 0xba, 0x6f, 0x3c, 0x88, 0x48, 0x54, 0xdc, 0x93, 0x03, 0xef, 0x81, 0x1b, 0x51, 0x46, 0x98, + 0x26, 0xb9, 0x23, 0x58, 0x98, 0x58, 0x07, 0x39, 0x80, 0x5a, 0x6d, 0xed, 0x16, 0xdd, 0xdf, 0x74, + 0xbd, 0x00, 0x1f, 0x44, 0x70, 0xbb, 0xbc, 0x25, 0x16, 0xd7, 0x84, 0x78, 0x10, 0xe1, 0x5b, 0xeb, + 0x03, 0xba, 0x6f, 0x3c, 0x88, 0x48, 0x54, 0xdc, 0x93, 0x03, 0xef, 0xa1, 0x1b, 0x51, 0x46, 0x98, 0x47, 0x42, 0xbe, 0x27, 0x73, 0x68, 0x82, 0x52, 0x43, 0x26, 0x5f, 0x83, 0xa9, 0xf8, 0x97, 0x7a, - 0xd6, 0x99, 0x52, 0x0b, 0xd8, 0x2c, 0x5c, 0x3e, 0xfd, 0xf8, 0x60, 0x71, 0x41, 0xe3, 0x9a, 0x7c, - 0xf0, 0x49, 0x30, 0xb3, 0x7e, 0x31, 0x87, 0x8f, 0x99, 0xf2, 0x03, 0xcf, 0xc1, 0x90, 0xb2, 0x9b, - 0x9b, 0xe0, 0xba, 0xa8, 0x84, 0xea, 0x1a, 0xcb, 0xc9, 0x59, 0x28, 0xc4, 0x5f, 0x82, 0x5b, 0xa4, - 0xf9, 0x05, 0xac, 0x94, 0x5c, 0x87, 0xd1, 0x81, 0xda, 0x8c, 0x4b, 0x23, 0xa3, 0xad, 0x92, 0x1a, - 0x47, 0xe1, 0xc6, 0xbd, 0xad, 0xcf, 0xee, 0x28, 0xfc, 0x78, 0x1e, 0xa6, 0x59, 0xbf, 0x96, 0xbb, - 0xd1, 0x9e, 0x1f, 0x78, 0xd1, 0xfe, 0x53, 0xab, 0x89, 0x79, 0xcb, 0x10, 0x72, 0x16, 0xe4, 0x29, - 0xa3, 0x7f, 0xdb, 0x40, 0x0a, 0x99, 0xff, 0x6a, 0x18, 0x66, 0x33, 0xa8, 0xc8, 0xab, 0x86, 0xb2, - 0x74, 0x5e, 0xfa, 0x53, 0x7e, 0x74, 0xb0, 0x38, 0x21, 0xd1, 0xb7, 0x62, 0xff, 0xca, 0x25, 0xd3, - 0x32, 0x80, 0xf7, 0x14, 0xea, 0x4e, 0x75, 0xcb, 0x00, 0xd3, 0x1e, 0xe0, 0x02, 0x0c, 0xdb, 0x7e, - 0x93, 0x4a, 0x33, 0x16, 0x3c, 0xd8, 0x03, 0x06, 0x30, 0x5e, 0xff, 0x18, 0x80, 0xac, 0xc1, 0x28, - 0xfb, 0xe3, 0x96, 0xdb, 0x11, 0x7a, 0x6d, 0xa2, 0xc4, 0x6c, 0x84, 0x76, 0xbc, 0xf6, 0xae, 0x2e, - 0x69, 0x37, 0xa9, 0xd3, 0x72, 0x3b, 0x86, 0x04, 0xc2, 0x11, 0x0d, 0x89, 0xbd, 0xd8, 0x5b, 0x62, - 0xcf, 0x1d, 0x2a, 0xb1, 0xef, 0x00, 0xd4, 0xbc, 0xdd, 0xb6, 0xd7, 0xde, 0x2d, 0x37, 0x77, 0x85, - 0x57, 0xea, 0x85, 0xde, 0xa3, 0x70, 0x31, 0x46, 0xc6, 0x89, 0xfb, 0x2c, 0x3e, 0x3e, 0x71, 0x98, - 0xe3, 0x36, 0x77, 0x0d, 0xeb, 0x79, 0x8d, 0x33, 0xd9, 0x00, 0x28, 0xd7, 0x23, 0xef, 0x01, 0x9b, - 0xc2, 0xa1, 0xb0, 0xb7, 0x96, 0x4d, 0x5e, 0x29, 0xdf, 0xa4, 0xfb, 0x35, 0x1a, 0xc5, 0x6a, 0x7c, - 0x17, 0x51, 0xd9, 0x4a, 0x30, 0x4c, 0xa3, 0x63, 0x0e, 0xa4, 0x03, 0xc7, 0xca, 0x8d, 0x86, 0xc7, - 0xbe, 0xc1, 0x6d, 0xe2, 0xbb, 0x14, 0x6d, 0x20, 0xeb, 0x89, 0x6c, 0xd6, 0x17, 0x04, 0xeb, 0xe7, - 0x5d, 0x45, 0xe5, 0x44, 0x9c, 0x2c, 0x59, 0x4d, 0x36, 0x63, 0xab, 0x06, 0x53, 0xe6, 0xc7, 0x9b, - 0xde, 0xb4, 0x13, 0x50, 0xb4, 0x6b, 0x65, 0xa7, 0xb6, 0x56, 0xbe, 0x5c, 0xca, 0x91, 0x12, 0x4c, - 0x88, 0x5f, 0x4b, 0xce, 0xd2, 0xeb, 0x57, 0x4b, 0x79, 0x03, 0xf2, 0xfa, 0xe5, 0xa5, 0x52, 0x61, - 0x21, 0x3f, 0x9f, 0x4b, 0x38, 0xb2, 0x8c, 0x96, 0x8a, 0x5c, 0xc9, 0x62, 0xfd, 0x4a, 0x0e, 0x8a, - 0xb2, 0xed, 0xe4, 0x2a, 0x14, 0x6a, 0xb5, 0xb5, 0x84, 0xeb, 0x49, 0x7c, 0xca, 0xf0, 0xfd, 0x34, - 0x0c, 0x75, 0xfb, 0x42, 0x46, 0xc0, 0xe8, 0xb6, 0xd6, 0x6b, 0x42, 0x38, 0x90, 0x74, 0xf1, 0xe6, - 0xcd, 0xe9, 0x32, 0xec, 0xf1, 0xaf, 0x42, 0xe1, 0xc6, 0xbd, 0x2d, 0x21, 0xcc, 0x4b, 0xba, 0x78, - 0x3f, 0xe5, 0x74, 0x1f, 0x3e, 0xd4, 0x77, 0x79, 0x46, 0x60, 0xd9, 0x30, 0xae, 0x4d, 0x64, 0x7e, - 0xe8, 0xb6, 0x7c, 0xe5, 0x42, 0x2a, 0x0e, 0x5d, 0x06, 0xb1, 0x45, 0x09, 0x93, 0x11, 0xd6, 0xfd, - 0xba, 0xdb, 0x14, 0xa7, 0x37, 0xca, 0x08, 0x4d, 0x06, 0xb0, 0x39, 0xdc, 0xfa, 0xad, 0x1c, 0x94, - 0x50, 0x92, 0x42, 0xfb, 0x40, 0xff, 0x3e, 0x6d, 0xdf, 0xbd, 0x4c, 0x5e, 0x93, 0x4b, 0x2e, 0xa7, - 0xae, 0x8e, 0xc3, 0xb8, 0xe4, 0x12, 0xda, 0x75, 0xb1, 0xec, 0x34, 0x2f, 0xdd, 0xfc, 0xe0, 0xde, - 0x7d, 0x87, 0x78, 0xe9, 0x2e, 0xc2, 0x30, 0x36, 0x47, 0x6c, 0x8e, 0xd8, 0xf2, 0x88, 0x01, 0x6c, - 0x0e, 0xd7, 0xf6, 0xa6, 0x9f, 0xcc, 0xa7, 0xbe, 0x61, 0xe9, 0x33, 0xe5, 0x21, 0x67, 0x7e, 0xdc, - 0x40, 0xfb, 0xf5, 0xfb, 0x30, 0x97, 0xec, 0x12, 0xbc, 0xd6, 0x97, 0x61, 0xda, 0x84, 0xcb, 0x1b, - 0xfe, 0x89, 0xcc, 0xba, 0xee, 0x2e, 0xd9, 0x49, 0x7c, 0xeb, 0x7f, 0xcd, 0xc1, 0x18, 0xfe, 0x69, - 0x77, 0x9b, 0x68, 0xee, 0x51, 0xbe, 0x57, 0x13, 0x8a, 0x45, 0x5d, 0x98, 0x73, 0x1f, 0x86, 0x8e, - 0xd0, 0x3d, 0x1a, 0x7b, 0x8c, 0x42, 0x16, 0xa4, 0x5c, 0x63, 0x28, 0x5f, 0x62, 0x15, 0x29, 0x57, - 0x2d, 0x86, 0x09, 0x52, 0x81, 0x8c, 0x46, 0x62, 0xf7, 0x6a, 0x6c, 0xfa, 0xe9, 0xef, 0xaf, 0x48, - 0xe7, 0x37, 0x4d, 0x23, 0x31, 0x8e, 0x86, 0xcf, 0xaf, 0xf7, 0x6a, 0x65, 0x7b, 0xc3, 0x78, 0x7e, - 0x65, 0x6d, 0x34, 0x8c, 0x91, 0x05, 0x92, 0xf5, 0x5f, 0x8f, 0x25, 0x3b, 0x50, 0x1c, 0x78, 0x47, - 0x5c, 0x1b, 0x6f, 0xc2, 0x70, 0xb9, 0xd9, 0xf4, 0x1f, 0x8a, 0x5d, 0x42, 0x6a, 0x19, 0x54, 0xff, - 0xf1, 0xf3, 0xcc, 0x65, 0x28, 0x86, 0xd7, 0x0f, 0x03, 0x90, 0x15, 0x18, 0x2b, 0xdf, 0xab, 0x55, - 0xab, 0x95, 0xad, 0x2d, 0xee, 0xe1, 0x50, 0x58, 0x7e, 0x51, 0xf6, 0x8f, 0xe7, 0x35, 0x9c, 0xe4, - 0x0b, 0x60, 0x2c, 0xbf, 0xc7, 0x74, 0xe4, 0x6d, 0x80, 0x1b, 0xbe, 0xd7, 0xbe, 0x45, 0xa3, 0x3d, - 0xbf, 0x21, 0x3e, 0xfe, 0xd4, 0xe3, 0x83, 0xc5, 0xf1, 0x0f, 0x7d, 0xaf, 0xed, 0xb4, 0x10, 0xcc, - 0xda, 0x1e, 0x23, 0xd9, 0xda, 0xdf, 0xac, 0xa7, 0x97, 0x7d, 0x6e, 0xc2, 0x31, 0x1c, 0xf7, 0xf4, - 0xb6, 0x9f, 0xb2, 0xde, 0x90, 0x68, 0xa4, 0x05, 0xd3, 0xb5, 0xee, 0xee, 0x2e, 0x65, 0x3b, 0xbb, - 0xd0, 0x5b, 0x8c, 0x88, 0x3b, 0xae, 0x8a, 0x2b, 0xc1, 0xef, 0x23, 0xec, 0x96, 0x12, 0x2e, 0xbf, - 0xca, 0x26, 0xf2, 0x77, 0x0f, 0x16, 0xc5, 0xcb, 0x22, 0x13, 0xd5, 0x42, 0x49, 0x9f, 0xd6, 0x5a, - 0x24, 0x79, 0x93, 0xdb, 0x30, 0xc2, 0xb5, 0xb0, 0xc2, 0x62, 0xff, 0xf9, 0x3e, 0x8b, 0x86, 0x23, - 0xf6, 0xd2, 0xf3, 0xf3, 0x52, 0x72, 0x0f, 0x8a, 0x2b, 0x5e, 0x50, 0x6f, 0xd2, 0x95, 0xaa, 0x38, - 0xfb, 0xcf, 0xf6, 0x61, 0x29, 0x51, 0x79, 0xbf, 0xd4, 0xf1, 0x57, 0xdd, 0xd3, 0x65, 0x01, 0x89, - 0x41, 0x7e, 0x2a, 0x07, 0xcf, 0xaa, 0xd6, 0x97, 0x77, 0x69, 0x3b, 0xba, 0xe5, 0x46, 0xf5, 0x3d, - 0x1a, 0x88, 0x5e, 0x1a, 0xeb, 0xd7, 0x4b, 0x5f, 0x4a, 0xf5, 0xd2, 0xf9, 0xb8, 0x97, 0x5c, 0xc6, - 0xcc, 0x69, 0x71, 0x6e, 0xe9, 0x3e, 0xeb, 0x57, 0x2b, 0x71, 0x00, 0xe2, 0xf7, 0x05, 0xe1, 0xf1, - 0xf5, 0x62, 0x9f, 0x0f, 0x8e, 0x91, 0x85, 0xa5, 0xb6, 0xfa, 0x6d, 0x58, 0x2c, 0x29, 0x28, 0xb9, - 0x29, 0xdd, 0x63, 0xb8, 0x54, 0x72, 0xa6, 0x0f, 0x6f, 0xee, 0x32, 0x33, 0xdb, 0xc7, 0x11, 0x8e, - 0x8f, 0xf6, 0xba, 0xbb, 0x2d, 0x04, 0x91, 0x43, 0x46, 0x7b, 0xdd, 0x8d, 0x47, 0xbb, 0xe9, 0x26, - 0x47, 0x7b, 0xdd, 0xdd, 0x26, 0x2b, 0xdc, 0xa7, 0x8f, 0x3b, 0x80, 0x9d, 0xee, 0xc7, 0x6d, 0x65, - 0x93, 0x9f, 0xcc, 0x19, 0xbe, 0x7d, 0x1f, 0xc0, 0x58, 0xad, 0xe3, 0xd6, 0x69, 0xd3, 0xdb, 0x89, - 0xc4, 0xe3, 0xd5, 0x0b, 0x7d, 0x58, 0x29, 0x5c, 0xf1, 0x58, 0x21, 0x7f, 0xea, 0xd7, 0x24, 0x85, - 0xc3, 0x5a, 0xb8, 0xb5, 0x79, 0x4b, 0xbc, 0x5f, 0xf5, 0x6b, 0xe1, 0xd6, 0xe6, 0x2d, 0x21, 0x73, - 0x74, 0x5a, 0x86, 0xcc, 0xb1, 0x79, 0xcb, 0xfa, 0xf5, 0x02, 0x9c, 0xe8, 0x41, 0x43, 0x36, 0xe4, - 0x1e, 0x95, 0x33, 0xd4, 0x8b, 0x3d, 0xd0, 0x2f, 0x1e, 0xba, 0x6d, 0xad, 0x43, 0x69, 0xf5, 0x26, - 0x0a, 0xb7, 0xec, 0x27, 0x6d, 0xac, 0x94, 0xe5, 0xee, 0x7e, 0xe6, 0xf1, 0xc1, 0xe2, 0x73, 0xf4, - 0x3e, 0x1a, 0x3f, 0xb9, 0xbc, 0xd0, 0xa9, 0x1b, 0xee, 0x79, 0x29, 0xca, 0x85, 0xef, 0xcf, 0xc3, - 0x10, 0x9e, 0x34, 0x89, 0xa0, 0x24, 0xb9, 0x23, 0x05, 0x25, 0x79, 0x0f, 0x26, 0x56, 0x6f, 0xf2, - 0xab, 0xe7, 0x9a, 0x1b, 0xee, 0x89, 0x7d, 0x10, 0xdf, 0x12, 0xe9, 0x7d, 0x47, 0xdc, 0x54, 0xf7, - 0x5c, 0x43, 0xc8, 0x33, 0x28, 0xc8, 0x1d, 0x98, 0xe5, 0x6d, 0xf3, 0x76, 0xbc, 0x3a, 0x8f, 0x6d, - 0xe0, 0xb9, 0x4d, 0xb1, 0x29, 0x9e, 0x7d, 0x7c, 0xb0, 0xb8, 0x48, 0xef, 0xa3, 0x59, 0x97, 0x28, - 0x77, 0x42, 0x44, 0xd0, 0xed, 0xbb, 0x32, 0xe8, 0x75, 0x87, 0x6b, 0x7b, 0x0c, 0x2b, 0x64, 0xb5, - 0xb1, 0xba, 0x19, 0x2e, 0x47, 0xb2, 0xfe, 0xf1, 0x30, 0x2c, 0xf4, 0xde, 0xcf, 0xc8, 0x97, 0xcd, - 0x01, 0x3c, 0x77, 0xe8, 0x0e, 0x78, 0xf8, 0x18, 0x7e, 0x05, 0xe6, 0x56, 0xdb, 0x11, 0x0d, 0x3a, - 0x81, 0x27, 0x5d, 0xec, 0xd7, 0xfc, 0x50, 0x9a, 0xd1, 0xa1, 0x3d, 0x1b, 0x55, 0xe5, 0x42, 0x4b, - 0x88, 0x46, 0x7d, 0x1a, 0xab, 0x4c, 0x0e, 0x64, 0x15, 0xa6, 0x34, 0x78, 0xb3, 0xbb, 0x2b, 0x4e, - 0x70, 0xb4, 0xd1, 0xd4, 0x79, 0x36, 0xbb, 0xba, 0x8d, 0x51, 0x82, 0x68, 0xe1, 0x17, 0x0b, 0x62, - 0x5a, 0x9c, 0x85, 0x42, 0xad, 0xbb, 0x2d, 0xa6, 0x03, 0x17, 0xd5, 0x8d, 0x6d, 0x9d, 0x95, 0x92, - 0x2f, 0x02, 0xd8, 0xb4, 0xe3, 0x87, 0x5e, 0xe4, 0x07, 0xfb, 0xba, 0xa7, 0x46, 0xa0, 0xa0, 0xa6, - 0x4d, 0xaa, 0x84, 0x92, 0x35, 0x98, 0x8e, 0x7f, 0xdd, 0x7e, 0xd8, 0x16, 0xaa, 0xcd, 0x31, 0xae, - 0x53, 0x88, 0xc9, 0x1d, 0x9f, 0x95, 0xe9, 0x07, 0x55, 0x82, 0x8c, 0x2c, 0x41, 0xf1, 0x9e, 0x1f, - 0xdc, 0xdf, 0x61, 0x03, 0x35, 0x14, 0x1f, 0xa5, 0x0f, 0x05, 0x4c, 0x3f, 0x32, 0x24, 0x1e, 0x9b, - 0xf3, 0xab, 0xed, 0x07, 0x5e, 0xe0, 0xb7, 0x5b, 0xb4, 0x1d, 0xe9, 0x6f, 0xa3, 0x34, 0x06, 0x1b, - 0x3e, 0x72, 0x31, 0x98, 0xdd, 0x9c, 0xcb, 0xf5, 0xc8, 0x0f, 0xc4, 0xc3, 0x28, 0x1f, 0x6e, 0x06, - 0x30, 0x86, 0x9b, 0x01, 0x58, 0x27, 0xda, 0x74, 0x47, 0xe8, 0xce, 0xb1, 0x13, 0x03, 0xba, 0x63, - 0x38, 0x00, 0xd2, 0x1d, 0x26, 0x0a, 0xd8, 0x74, 0x07, 0xaf, 0xfb, 0x46, 0xdc, 0x9c, 0x9d, 0x94, - 0xa2, 0x48, 0xa0, 0x59, 0xbf, 0x3b, 0xd6, 0x73, 0xde, 0xb2, 0xbd, 0xf7, 0x68, 0xf3, 0x76, 0xdd, - 0x1d, 0x60, 0xde, 0xbe, 0xaa, 0x2c, 0x5d, 0x75, 0xaf, 0x57, 0x84, 0xe8, 0x9b, 0x3f, 0xc7, 0x59, - 0xf8, 0xa5, 0xe2, 0x51, 0x26, 0x91, 0xe8, 0xa4, 0xfc, 0xa0, 0x9d, 0x54, 0x18, 0xa8, 0x93, 0xc8, - 0x32, 0x4c, 0xaa, 0xc8, 0x4b, 0x9b, 0x6e, 0x64, 0xec, 0x4d, 0x2a, 0x5c, 0x96, 0xd3, 0x71, 0x23, - 0x7d, 0x6f, 0x32, 0x49, 0xc8, 0x5b, 0x30, 0x2e, 0xcc, 0xbd, 0x91, 0xc3, 0x70, 0xfc, 0xe2, 0x2c, - 0x6d, 0xc3, 0x13, 0xf4, 0x3a, 0x3a, 0x5b, 0x92, 0x9b, 0x5e, 0x87, 0x36, 0xbd, 0x36, 0xad, 0xa1, - 0xee, 0x5c, 0xcc, 0x18, 0x5c, 0x92, 0x1d, 0x51, 0xe2, 0x70, 0xb5, 0xba, 0xa1, 0x35, 0x33, 0x88, - 0x92, 0x93, 0x75, 0xf4, 0x48, 0x93, 0x95, 0xdb, 0xbb, 0x04, 0xeb, 0xfe, 0xae, 0x27, 0x2d, 0xfc, - 0xa4, 0xbd, 0x4b, 0xe0, 0x34, 0x19, 0x34, 0x61, 0xef, 0xc2, 0x51, 0x99, 0x5c, 0xcf, 0x7e, 0x54, - 0x2b, 0xe2, 0x9d, 0x06, 0xe5, 0x7a, 0x24, 0x32, 0xcd, 0x2a, 0x39, 0x92, 0xac, 0x66, 0xb5, 0xe5, - 0x7a, 0x4d, 0xe1, 0xdc, 0x18, 0x57, 0x43, 0x19, 0x34, 0x59, 0x0d, 0xa2, 0x92, 0x3a, 0x4c, 0xd8, - 0x74, 0x67, 0x33, 0xf0, 0x23, 0x5a, 0x8f, 0x68, 0x43, 0xc8, 0x32, 0x52, 0x9c, 0x5f, 0xf6, 0x7d, - 0x2e, 0xa7, 0x2d, 0xbf, 0xf6, 0xbb, 0x07, 0x8b, 0xb9, 0xef, 0x1e, 0x2c, 0x02, 0x03, 0x71, 0x9b, - 0xdd, 0xc7, 0x07, 0x8b, 0x27, 0xd8, 0xf8, 0x77, 0x24, 0xb1, 0x7e, 0xc4, 0xe8, 0x4c, 0xc9, 0xf7, - 0xb2, 0x4d, 0x57, 0x75, 0x49, 0x5c, 0xd9, 0x44, 0x8f, 0xca, 0x5e, 0xcf, 0xac, 0x6c, 0x51, 0xeb, - 0xed, 0xcc, 0x4a, 0x33, 0x2b, 0x21, 0x6f, 0xc3, 0xf8, 0x4a, 0x75, 0xc5, 0x6f, 0xef, 0x78, 0xbb, - 0xb5, 0xb5, 0x32, 0x0a, 0x44, 0xc2, 0x5e, 0xbb, 0xee, 0x39, 0x75, 0x84, 0x3b, 0xe1, 0x9e, 0x6b, - 0xb8, 0xed, 0xc4, 0xf8, 0xe4, 0x3a, 0x4c, 0xc9, 0x9f, 0x36, 0xdd, 0xb9, 0x63, 0x57, 0x51, 0x0e, - 0x92, 0x46, 0xf2, 0x8a, 0x03, 0xeb, 0x88, 0x6e, 0xa0, 0xcb, 0xc7, 0x09, 0x32, 0x36, 0x19, 0x2b, - 0xb4, 0xd3, 0xf4, 0xf7, 0x59, 0xf3, 0xb6, 0x3c, 0x1a, 0xa0, 0xe4, 0x23, 0x26, 0x63, 0x43, 0x95, - 0x38, 0x91, 0x67, 0x6c, 0xb7, 0x09, 0x22, 0xb2, 0x01, 0x33, 0x62, 0x8a, 0xdf, 0xf5, 0x42, 0x6f, - 0xdb, 0x6b, 0x7a, 0xd1, 0x3e, 0x3a, 0x52, 0x0a, 0x29, 0x44, 0xae, 0x8b, 0x07, 0xaa, 0x54, 0x63, - 0x96, 0x26, 0xb5, 0x7e, 0x25, 0x0f, 0xcf, 0xf5, 0x93, 0xff, 0x49, 0xcd, 0xdc, 0xcc, 0xce, 0x0f, - 0x70, 0x67, 0x38, 0x7c, 0x3b, 0x5b, 0x85, 0xa9, 0xdb, 0x9a, 0x69, 0x88, 0x32, 0xd5, 0xc1, 0xce, - 0xd0, 0x8d, 0x46, 0xcc, 0xd9, 0x9e, 0x20, 0x5a, 0x78, 0x20, 0xb6, 0xb9, 0x8f, 0xeb, 0x40, 0x72, - 0x15, 0xc6, 0x56, 0xfc, 0x76, 0x44, 0x1f, 0x45, 0x09, 0x3f, 0x47, 0x0e, 0x4c, 0x3a, 0xcf, 0x48, - 0x54, 0xeb, 0xff, 0xcb, 0xc3, 0xa9, 0xbe, 0x02, 0x30, 0xd9, 0x32, 0x7b, 0xed, 0xc2, 0x20, 0x52, + 0xd6, 0x99, 0x52, 0x0b, 0xd8, 0x2c, 0x5c, 0x3e, 0xf3, 0xe4, 0x60, 0x71, 0x41, 0xe3, 0x9a, 0x7c, + 0xf0, 0x49, 0x30, 0xb3, 0x7e, 0x29, 0x87, 0x8f, 0x99, 0xf2, 0x03, 0xcf, 0xc3, 0x90, 0xb2, 0x9b, + 0x9b, 0xe0, 0xba, 0xa8, 0x84, 0xea, 0x1a, 0xcb, 0xc9, 0x39, 0x28, 0xc4, 0x5f, 0x82, 0x5b, 0xa4, + 0xf9, 0x05, 0xac, 0x94, 0xdc, 0x80, 0xd1, 0x81, 0xda, 0x8c, 0x4b, 0x23, 0xa3, 0xad, 0x92, 0x1a, + 0x47, 0xe1, 0xe6, 0xfd, 0xad, 0xef, 0xde, 0x51, 0xf8, 0x89, 0x3c, 0x4c, 0xb3, 0x7e, 0x2d, 0x77, + 0xa3, 0x3d, 0x3f, 0xf0, 0xa2, 0xfd, 0x67, 0x56, 0x13, 0xf3, 0xb6, 0x21, 0xe4, 0x2c, 0xc8, 0x53, + 0x46, 0xff, 0xb6, 0x81, 0x14, 0x32, 0xff, 0xd5, 0x30, 0xcc, 0x66, 0x50, 0x91, 0xd7, 0x0c, 0x65, + 0xe9, 0xbc, 0xf4, 0xa7, 0xfc, 0xf8, 0x60, 0x71, 0x42, 0xa2, 0x6f, 0xc5, 0xfe, 0x95, 0x4b, 0xa6, + 0x65, 0x00, 0xef, 0x29, 0xd4, 0x9d, 0xea, 0x96, 0x01, 0xa6, 0x3d, 0xc0, 0x45, 0x18, 0xb6, 0xfd, + 0x26, 0x95, 0x66, 0x2c, 0x78, 0xb0, 0x07, 0x0c, 0x60, 0xbc, 0xfe, 0x31, 0x00, 0x59, 0x83, 0x51, + 0xf6, 0xc7, 0x6d, 0xb7, 0x23, 0xf4, 0xda, 0x44, 0x89, 0xd9, 0x08, 0xed, 0x78, 0xed, 0x5d, 0x5d, + 0xd2, 0x6e, 0x52, 0xa7, 0xe5, 0x76, 0x0c, 0x09, 0x84, 0x23, 0x1a, 0x12, 0x7b, 0xb1, 0xb7, 0xc4, + 0x9e, 0x3b, 0x54, 0x62, 0xdf, 0x01, 0xa8, 0x79, 0xbb, 0x6d, 0xaf, 0xbd, 0x5b, 0x6e, 0xee, 0x0a, + 0xaf, 0xd4, 0x8b, 0xbd, 0x47, 0xe1, 0x52, 0x8c, 0x8c, 0x13, 0xf7, 0x79, 0x7c, 0x7c, 0xe2, 0x30, + 0xc7, 0x6d, 0xee, 0x1a, 0xd6, 0xf3, 0x1a, 0x67, 0xb2, 0x01, 0x50, 0xae, 0x47, 0xde, 0x43, 0x36, + 0x85, 0x43, 0x61, 0x6f, 0x2d, 0x9b, 0xbc, 0x52, 0xbe, 0x45, 0xf7, 0x6b, 0x34, 0x8a, 0xd5, 0xf8, + 0x2e, 0xa2, 0xb2, 0x95, 0x60, 0x98, 0x46, 0xc7, 0x1c, 0x48, 0x07, 0x8e, 0x95, 0x1b, 0x0d, 0x8f, + 0x7d, 0x83, 0xdb, 0xc4, 0x77, 0x29, 0xda, 0x40, 0xd6, 0x13, 0xd9, 0xac, 0x2f, 0x0a, 0xd6, 0x2f, + 0xb8, 0x8a, 0xca, 0x89, 0x38, 0x59, 0xb2, 0x9a, 0x6c, 0xc6, 0x56, 0x0d, 0xa6, 0xcc, 0x8f, 0x37, + 0xbd, 0x69, 0x27, 0xa0, 0x68, 0xd7, 0xca, 0x4e, 0x6d, 0xad, 0x7c, 0xa5, 0x94, 0x23, 0x25, 0x98, + 0x10, 0xbf, 0x96, 0x9c, 0xa5, 0x37, 0xae, 0x95, 0xf2, 0x06, 0xe4, 0x8d, 0x2b, 0x4b, 0xa5, 0xc2, + 0x42, 0x7e, 0x3e, 0x97, 0x70, 0x64, 0x19, 0x2d, 0x15, 0xb9, 0x92, 0xc5, 0xfa, 0xd5, 0x1c, 0x14, + 0x65, 0xdb, 0xc9, 0x35, 0x28, 0xd4, 0x6a, 0x6b, 0x09, 0xd7, 0x93, 0xf8, 0x94, 0xe1, 0xfb, 0x69, + 0x18, 0xea, 0xf6, 0x85, 0x8c, 0x80, 0xd1, 0x6d, 0xad, 0xd7, 0x84, 0x70, 0x20, 0xe9, 0xe2, 0xcd, + 0x9b, 0xd3, 0x65, 0xd8, 0xe3, 0x5f, 0x83, 0xc2, 0xcd, 0xfb, 0x5b, 0x42, 0x98, 0x97, 0x74, 0xf1, + 0x7e, 0xca, 0xe9, 0x3e, 0x7a, 0xa4, 0xef, 0xf2, 0x8c, 0xc0, 0xb2, 0x61, 0x5c, 0x9b, 0xc8, 0xfc, + 0xd0, 0x6d, 0xf9, 0xca, 0x85, 0x54, 0x1c, 0xba, 0x0c, 0x62, 0x8b, 0x12, 0x26, 0x23, 0xac, 0xfb, + 0x75, 0xb7, 0x29, 0x4e, 0x6f, 0x94, 0x11, 0x9a, 0x0c, 0x60, 0x73, 0xb8, 0xf5, 0x5b, 0x39, 0x28, + 0xa1, 0x24, 0x85, 0xf6, 0x81, 0xfe, 0x03, 0xda, 0xbe, 0x77, 0x85, 0xbc, 0x2e, 0x97, 0x5c, 0x4e, + 0x5d, 0x1d, 0x87, 0x71, 0xc9, 0x25, 0xb4, 0xeb, 0x62, 0xd9, 0x69, 0x5e, 0xba, 0xf9, 0xc1, 0xbd, + 0xfb, 0x0e, 0xf1, 0xd2, 0x5d, 0x84, 0x61, 0x6c, 0x8e, 0xd8, 0x1c, 0xb1, 0xe5, 0x11, 0x03, 0xd8, + 0x1c, 0xae, 0xed, 0x4d, 0x3f, 0x95, 0x4f, 0x7d, 0xc3, 0xd2, 0x77, 0x95, 0x87, 0x9c, 0xf9, 0x71, + 0x03, 0xed, 0xd7, 0x1f, 0xc0, 0x5c, 0xb2, 0x4b, 0xf0, 0x5a, 0x5f, 0x86, 0x69, 0x13, 0x2e, 0x6f, + 0xf8, 0x27, 0x32, 0xeb, 0xba, 0xb7, 0x64, 0x27, 0xf1, 0xad, 0xff, 0x35, 0x07, 0x63, 0xf8, 0xa7, + 0xdd, 0x6d, 0xa2, 0xb9, 0x47, 0xf9, 0x7e, 0x4d, 0x28, 0x16, 0x75, 0x61, 0xce, 0x7d, 0x14, 0x3a, + 0x42, 0xf7, 0x68, 0xec, 0x31, 0x0a, 0x59, 0x90, 0x72, 0x8d, 0xa1, 0x7c, 0x89, 0x55, 0xa4, 0x5c, + 0xb5, 0x18, 0x26, 0x48, 0x05, 0x32, 0x1a, 0x89, 0xdd, 0xaf, 0xb1, 0xe9, 0xa7, 0xbf, 0xbf, 0x22, + 0x9d, 0xdf, 0x34, 0x8d, 0xc4, 0x38, 0x1a, 0x3e, 0xbf, 0xde, 0xaf, 0x95, 0xed, 0x0d, 0xe3, 0xf9, + 0x95, 0xb5, 0xd1, 0x30, 0x46, 0x16, 0x48, 0xd6, 0x7f, 0x3d, 0x96, 0xec, 0x40, 0x71, 0xe0, 0x1d, + 0x71, 0x6d, 0xbc, 0x05, 0xc3, 0xe5, 0x66, 0xd3, 0x7f, 0x24, 0x76, 0x09, 0xa9, 0x65, 0x50, 0xfd, + 0xc7, 0xcf, 0x33, 0x97, 0xa1, 0x18, 0x5e, 0x3f, 0x0c, 0x40, 0x56, 0x60, 0xac, 0x7c, 0xbf, 0x56, + 0xad, 0x56, 0xb6, 0xb6, 0xb8, 0x87, 0x43, 0x61, 0xf9, 0x25, 0xd9, 0x3f, 0x9e, 0xd7, 0x70, 0x92, + 0x2f, 0x80, 0xb1, 0xfc, 0x1e, 0xd3, 0x91, 0x77, 0x00, 0x6e, 0xfa, 0x5e, 0xfb, 0x36, 0x8d, 0xf6, + 0xfc, 0x86, 0xf8, 0xf8, 0xd3, 0x4f, 0x0e, 0x16, 0xc7, 0x3f, 0xf2, 0xbd, 0xb6, 0xd3, 0x42, 0x30, + 0x6b, 0x7b, 0x8c, 0x64, 0x6b, 0x7f, 0xb3, 0x9e, 0x5e, 0xf6, 0xb9, 0x09, 0xc7, 0x70, 0xdc, 0xd3, + 0xdb, 0x7e, 0xca, 0x7a, 0x43, 0xa2, 0x91, 0x16, 0x4c, 0xd7, 0xba, 0xbb, 0xbb, 0x94, 0xed, 0xec, + 0x42, 0x6f, 0x31, 0x22, 0xee, 0xb8, 0x2a, 0xae, 0x04, 0xbf, 0x8f, 0xb0, 0x5b, 0x4a, 0xb8, 0xfc, + 0x1a, 0x9b, 0xc8, 0xdf, 0x39, 0x58, 0x14, 0x2f, 0x8b, 0x4c, 0x54, 0x0b, 0x25, 0x7d, 0x5a, 0x6b, + 0x91, 0xe4, 0x4d, 0xee, 0xc0, 0x08, 0xd7, 0xc2, 0x0a, 0x8b, 0xfd, 0x17, 0xfa, 0x2c, 0x1a, 0x8e, + 0xd8, 0x4b, 0xcf, 0xcf, 0x4b, 0xc9, 0x7d, 0x28, 0xae, 0x78, 0x41, 0xbd, 0x49, 0x57, 0xaa, 0xe2, + 0xec, 0x3f, 0xd7, 0x87, 0xa5, 0x44, 0xe5, 0xfd, 0x52, 0xc7, 0x5f, 0x75, 0x4f, 0x97, 0x05, 0x24, + 0x06, 0xf9, 0xe9, 0x1c, 0x3c, 0xaf, 0x5a, 0x5f, 0xde, 0xa5, 0xed, 0xe8, 0xb6, 0x1b, 0xd5, 0xf7, + 0x68, 0x20, 0x7a, 0x69, 0xac, 0x5f, 0x2f, 0x7d, 0x29, 0xd5, 0x4b, 0x17, 0xe2, 0x5e, 0x72, 0x19, + 0x33, 0xa7, 0xc5, 0xb9, 0xa5, 0xfb, 0xac, 0x5f, 0xad, 0xc4, 0x01, 0x88, 0xdf, 0x17, 0x84, 0xc7, + 0xd7, 0x4b, 0x7d, 0x3e, 0x38, 0x46, 0x16, 0x96, 0xda, 0xea, 0xb7, 0x61, 0xb1, 0xa4, 0xa0, 0xe4, + 0x96, 0x74, 0x8f, 0xe1, 0x52, 0xc9, 0xd9, 0x3e, 0xbc, 0xb9, 0xcb, 0xcc, 0x6c, 0x1f, 0x47, 0x38, + 0x3e, 0xda, 0xeb, 0xee, 0xb6, 0x10, 0x44, 0x0e, 0x19, 0xed, 0x75, 0x37, 0x1e, 0xed, 0xa6, 0x9b, + 0x1c, 0xed, 0x75, 0x77, 0x9b, 0xac, 0x70, 0x9f, 0x3e, 0xee, 0x00, 0x76, 0xa6, 0x1f, 0xb7, 0x95, + 0x4d, 0x7e, 0x32, 0x67, 0xf8, 0xf6, 0x7d, 0x08, 0x63, 0xb5, 0x8e, 0x5b, 0xa7, 0x4d, 0x6f, 0x27, + 0x12, 0x8f, 0x57, 0x2f, 0xf6, 0x61, 0xa5, 0x70, 0xc5, 0x63, 0x85, 0xfc, 0xa9, 0x5f, 0x93, 0x14, + 0x0e, 0x6b, 0xe1, 0xd6, 0xe6, 0x6d, 0xf1, 0x7e, 0xd5, 0xaf, 0x85, 0x5b, 0x9b, 0xb7, 0x85, 0xcc, + 0xd1, 0x69, 0x19, 0x32, 0xc7, 0xe6, 0x6d, 0xeb, 0xd7, 0x0b, 0x70, 0xa2, 0x07, 0x0d, 0xd9, 0x90, + 0x7b, 0x54, 0xce, 0x50, 0x2f, 0xf6, 0x40, 0xbf, 0x74, 0xe8, 0xb6, 0xb5, 0x0e, 0xa5, 0xd5, 0x5b, + 0x28, 0xdc, 0xb2, 0x9f, 0xb4, 0xb1, 0x52, 0x96, 0xbb, 0xfb, 0xd9, 0x27, 0x07, 0x8b, 0xa7, 0xe8, + 0x03, 0x34, 0x7e, 0x72, 0x79, 0xa1, 0x53, 0x37, 0xdc, 0xf3, 0x52, 0x94, 0x0b, 0x3f, 0x90, 0x87, + 0x21, 0x3c, 0x69, 0x12, 0x41, 0x49, 0x72, 0x47, 0x0a, 0x4a, 0xf2, 0x3e, 0x4c, 0xac, 0xde, 0xe2, + 0x57, 0xcf, 0x35, 0x37, 0xdc, 0x13, 0xfb, 0x20, 0xbe, 0x25, 0xd2, 0x07, 0x8e, 0xb8, 0xa9, 0xee, + 0xb9, 0x86, 0x90, 0x67, 0x50, 0x90, 0xbb, 0x30, 0xcb, 0xdb, 0xe6, 0xed, 0x78, 0x75, 0x1e, 0xdb, + 0xc0, 0x73, 0x9b, 0x62, 0x53, 0x3c, 0xf7, 0xe4, 0x60, 0x71, 0x91, 0x3e, 0x40, 0xb3, 0x2e, 0x51, + 0xee, 0x84, 0x88, 0xa0, 0xdb, 0x77, 0x65, 0xd0, 0xeb, 0x0e, 0xd7, 0xf6, 0x18, 0x56, 0xc8, 0x6a, + 0x63, 0x75, 0x33, 0x5c, 0x8e, 0x64, 0xfd, 0xa3, 0x61, 0x58, 0xe8, 0xbd, 0x9f, 0x91, 0x2f, 0x9b, + 0x03, 0x78, 0xfe, 0xd0, 0x1d, 0xf0, 0xf0, 0x31, 0xfc, 0x0a, 0xcc, 0xad, 0xb6, 0x23, 0x1a, 0x74, + 0x02, 0x4f, 0xba, 0xd8, 0xaf, 0xf9, 0xa1, 0x34, 0xa3, 0x43, 0x7b, 0x36, 0xaa, 0xca, 0x85, 0x96, + 0x10, 0x8d, 0xfa, 0x34, 0x56, 0x99, 0x1c, 0xc8, 0x2a, 0x4c, 0x69, 0xf0, 0x66, 0x77, 0x57, 0x9c, + 0xe0, 0x68, 0xa3, 0xa9, 0xf3, 0x6c, 0x76, 0x75, 0x1b, 0xa3, 0x04, 0xd1, 0xc2, 0x2f, 0x15, 0xc4, + 0xb4, 0x38, 0x07, 0x85, 0x5a, 0x77, 0x5b, 0x4c, 0x07, 0x2e, 0xaa, 0x1b, 0xdb, 0x3a, 0x2b, 0x25, + 0x5f, 0x04, 0xb0, 0x69, 0xc7, 0x0f, 0xbd, 0xc8, 0x0f, 0xf6, 0x75, 0x4f, 0x8d, 0x40, 0x41, 0x4d, + 0x9b, 0x54, 0x09, 0x25, 0x6b, 0x30, 0x1d, 0xff, 0xba, 0xf3, 0xa8, 0x2d, 0x54, 0x9b, 0x63, 0x5c, + 0xa7, 0x10, 0x93, 0x3b, 0x3e, 0x2b, 0xd3, 0x0f, 0xaa, 0x04, 0x19, 0x59, 0x82, 0xe2, 0x7d, 0x3f, + 0x78, 0xb0, 0xc3, 0x06, 0x6a, 0x28, 0x3e, 0x4a, 0x1f, 0x09, 0x98, 0x7e, 0x64, 0x48, 0x3c, 0x36, + 0xe7, 0x57, 0xdb, 0x0f, 0xbd, 0xc0, 0x6f, 0xb7, 0x68, 0x3b, 0xd2, 0xdf, 0x46, 0x69, 0x0c, 0x36, + 0x7c, 0xe4, 0x62, 0x30, 0xbb, 0x39, 0x97, 0xeb, 0x91, 0x1f, 0x88, 0x87, 0x51, 0x3e, 0xdc, 0x0c, + 0x60, 0x0c, 0x37, 0x03, 0xb0, 0x4e, 0xb4, 0xe9, 0x8e, 0xd0, 0x9d, 0x63, 0x27, 0x06, 0x74, 0xc7, + 0x70, 0x00, 0xa4, 0x3b, 0x4c, 0x14, 0xb0, 0xe9, 0x0e, 0x5e, 0xf7, 0x8d, 0xb8, 0x39, 0x3b, 0x29, + 0x45, 0x91, 0x40, 0xb3, 0x7e, 0x77, 0xac, 0xe7, 0xbc, 0x65, 0x7b, 0xef, 0xd1, 0xe6, 0xed, 0xba, + 0x3b, 0xc0, 0xbc, 0x7d, 0x4d, 0x59, 0xba, 0xea, 0x5e, 0xaf, 0x08, 0xd1, 0x37, 0x7f, 0x8e, 0xb3, + 0xf0, 0xcb, 0xc5, 0xa3, 0x4c, 0x22, 0xd1, 0x49, 0xf9, 0x41, 0x3b, 0xa9, 0x30, 0x50, 0x27, 0x91, + 0x65, 0x98, 0x54, 0x91, 0x97, 0x36, 0xdd, 0xc8, 0xd8, 0x9b, 0x54, 0xb8, 0x2c, 0xa7, 0xe3, 0x46, + 0xfa, 0xde, 0x64, 0x92, 0x90, 0xb7, 0x61, 0x5c, 0x98, 0x7b, 0x23, 0x87, 0xe1, 0xf8, 0xc5, 0x59, + 0xda, 0x86, 0x27, 0xe8, 0x75, 0x74, 0xb6, 0x24, 0x37, 0xbd, 0x0e, 0x6d, 0x7a, 0x6d, 0x5a, 0x43, + 0xdd, 0xb9, 0x98, 0x31, 0xb8, 0x24, 0x3b, 0xa2, 0xc4, 0xe1, 0x6a, 0x75, 0x43, 0x6b, 0x66, 0x10, + 0x25, 0x27, 0xeb, 0xe8, 0x91, 0x26, 0x2b, 0xb7, 0x77, 0x09, 0xd6, 0xfd, 0x5d, 0x4f, 0x5a, 0xf8, + 0x49, 0x7b, 0x97, 0xc0, 0x69, 0x32, 0x68, 0xc2, 0xde, 0x85, 0xa3, 0x32, 0xb9, 0x9e, 0xfd, 0xa8, + 0x56, 0xc4, 0x3b, 0x0d, 0xca, 0xf5, 0x48, 0x64, 0x9a, 0x55, 0x72, 0x24, 0x59, 0xcd, 0x6a, 0xcb, + 0xf5, 0x9a, 0xc2, 0xb9, 0x31, 0xae, 0x86, 0x32, 0x68, 0xb2, 0x1a, 0x44, 0x25, 0x75, 0x98, 0xb0, + 0xe9, 0xce, 0x66, 0xe0, 0x47, 0xb4, 0x1e, 0xd1, 0x86, 0x90, 0x65, 0xa4, 0x38, 0xbf, 0xec, 0xfb, + 0x5c, 0x4e, 0x5b, 0x7e, 0xfd, 0x77, 0x0f, 0x16, 0x73, 0xdf, 0x39, 0x58, 0x04, 0x06, 0xe2, 0x36, + 0xbb, 0x4f, 0x0e, 0x16, 0x4f, 0xb0, 0xf1, 0xef, 0x48, 0x62, 0xfd, 0x88, 0xd1, 0x99, 0x92, 0xef, + 0x63, 0x9b, 0xae, 0xea, 0x92, 0xb8, 0xb2, 0x89, 0x1e, 0x95, 0xbd, 0x91, 0x59, 0xd9, 0xa2, 0xd6, + 0xdb, 0x99, 0x95, 0x66, 0x56, 0x42, 0xde, 0x81, 0xf1, 0x95, 0xea, 0x8a, 0xdf, 0xde, 0xf1, 0x76, + 0x6b, 0x6b, 0x65, 0x14, 0x88, 0x84, 0xbd, 0x76, 0xdd, 0x73, 0xea, 0x08, 0x77, 0xc2, 0x3d, 0xd7, + 0x70, 0xdb, 0x89, 0xf1, 0xc9, 0x0d, 0x98, 0x92, 0x3f, 0x6d, 0xba, 0x73, 0xd7, 0xae, 0xa2, 0x1c, + 0x24, 0x8d, 0xe4, 0x15, 0x07, 0xd6, 0x11, 0xdd, 0x40, 0x97, 0x8f, 0x13, 0x64, 0x6c, 0x32, 0x56, + 0x68, 0xa7, 0xe9, 0xef, 0xb3, 0xe6, 0x6d, 0x79, 0x34, 0x40, 0xc9, 0x47, 0x4c, 0xc6, 0x86, 0x2a, + 0x71, 0x22, 0xcf, 0xd8, 0x6e, 0x13, 0x44, 0x64, 0x03, 0x66, 0xc4, 0x14, 0xbf, 0xe7, 0x85, 0xde, + 0xb6, 0xd7, 0xf4, 0xa2, 0x7d, 0x74, 0xa4, 0x14, 0x52, 0x88, 0x5c, 0x17, 0x0f, 0x55, 0xa9, 0xc6, + 0x2c, 0x4d, 0x6a, 0xfd, 0x6a, 0x1e, 0x4e, 0xf5, 0x93, 0xff, 0x49, 0xcd, 0xdc, 0xcc, 0x2e, 0x0c, + 0x70, 0x67, 0x38, 0x7c, 0x3b, 0x5b, 0x85, 0xa9, 0x3b, 0x9a, 0x69, 0x88, 0x32, 0xd5, 0xc1, 0xce, + 0xd0, 0x8d, 0x46, 0xcc, 0xd9, 0x9e, 0x20, 0x5a, 0x78, 0x28, 0xb6, 0xb9, 0x4f, 0xea, 0x40, 0x72, + 0x0d, 0xc6, 0x56, 0xfc, 0x76, 0x44, 0x1f, 0x47, 0x09, 0x3f, 0x47, 0x0e, 0x4c, 0x3a, 0xcf, 0x48, + 0x54, 0xeb, 0xff, 0xcb, 0xc3, 0xe9, 0xbe, 0x02, 0x30, 0xd9, 0x32, 0x7b, 0xed, 0xe2, 0x20, 0x52, 0xf3, 0xe1, 0xdd, 0xb6, 0x94, 0xb2, 0xdf, 0x38, 0xd4, 0x3e, 0x7b, 0xe1, 0xbf, 0xcd, 0x89, 0x4e, 0xfa, 0x1c, 0x8c, 0x62, 0x55, 0xaa, 0x8b, 0xb8, 0x6e, 0x08, 0x77, 0x61, 0xcf, 0xd4, 0x0d, 0x71, - 0x34, 0x72, 0x05, 0x8a, 0x2b, 0x6e, 0xb3, 0xa9, 0x79, 0x81, 0xa2, 0x5c, 0x5f, 0x47, 0x58, 0xc2, - 0x08, 0x49, 0x22, 0x92, 0x37, 0x00, 0xf8, 0xdf, 0xda, 0x59, 0x81, 0x9b, 0xa5, 0x20, 0x4b, 0x1c, + 0x34, 0x72, 0x15, 0x8a, 0x2b, 0x6e, 0xb3, 0xa9, 0x79, 0x81, 0xa2, 0x5c, 0x5f, 0x47, 0x58, 0xc2, + 0x08, 0x49, 0x22, 0x92, 0x37, 0x01, 0xf8, 0xdf, 0xda, 0x59, 0x81, 0x9b, 0xa5, 0x20, 0x4b, 0x1c, 0x17, 0x1a, 0x32, 0xc6, 0x8e, 0xab, 0xfb, 0xca, 0x5d, 0x8d, 0xc7, 0x8e, 0x63, 0x00, 0x23, 0x76, - 0x1c, 0x03, 0x58, 0xbf, 0x5a, 0x80, 0xd3, 0xfd, 0x6f, 0x71, 0xe4, 0x8e, 0x39, 0x04, 0x2f, 0x0f, - 0x74, 0xf7, 0x3b, 0x7c, 0x0c, 0x64, 0x24, 0x46, 0xde, 0x21, 0xe7, 0xd3, 0x66, 0xd4, 0x1f, 0x1d, - 0x2c, 0x6a, 0x96, 0x6d, 0x37, 0x7c, 0xaf, 0xad, 0xbd, 0x14, 0x7c, 0x13, 0xa0, 0x16, 0xb9, 0x91, - 0x57, 0xbf, 0x71, 0xef, 0xa6, 0x0c, 0x54, 0x70, 0x75, 0xb0, 0x96, 0xc5, 0x74, 0x7c, 0x5f, 0x11, - 0x1e, 0x1c, 0x08, 0x75, 0x3e, 0x7c, 0x78, 0xdf, 0xb8, 0xa7, 0xc6, 0xc8, 0x0b, 0x5f, 0x82, 0x52, - 0x92, 0x94, 0x9c, 0x83, 0x21, 0x6c, 0x80, 0x66, 0x0b, 0x9e, 0xe0, 0x80, 0xe5, 0x0b, 0xb7, 0xc4, + 0x1c, 0x03, 0x58, 0xbf, 0x56, 0x80, 0x33, 0xfd, 0x6f, 0x71, 0xe4, 0xae, 0x39, 0x04, 0xaf, 0x0c, + 0x74, 0xf7, 0x3b, 0x7c, 0x0c, 0x64, 0x24, 0x46, 0xde, 0x21, 0x17, 0xd2, 0x66, 0xd4, 0x1f, 0x1f, + 0x2c, 0x6a, 0x96, 0x6d, 0x37, 0x7d, 0xaf, 0xad, 0xbd, 0x14, 0x7c, 0x13, 0xa0, 0x16, 0xb9, 0x91, + 0x57, 0xbf, 0x79, 0xff, 0x96, 0x0c, 0x54, 0x70, 0x6d, 0xb0, 0x96, 0xc5, 0x74, 0x7c, 0x5f, 0x11, + 0x1e, 0x1c, 0x08, 0x75, 0x3e, 0x7a, 0xf4, 0xc0, 0xb8, 0xa7, 0xc6, 0xc8, 0x0b, 0x5f, 0x82, 0x52, + 0x92, 0x94, 0x9c, 0x87, 0x21, 0x6c, 0x80, 0x66, 0x0b, 0x9e, 0xe0, 0x80, 0xe5, 0x0b, 0xb7, 0xc5, 0xdc, 0x59, 0x85, 0x29, 0xf1, 0x3c, 0x6d, 0x6a, 0xc4, 0x70, 0xbd, 0xca, 0xd7, 0xed, 0xb4, 0x56, - 0x2c, 0x41, 0x64, 0xfd, 0x45, 0x0e, 0x4e, 0xf6, 0xbc, 0x1f, 0x93, 0x4d, 0x73, 0xc0, 0x5e, 0x3c, - 0xec, 0x42, 0x7d, 0xe8, 0x58, 0x2d, 0xfc, 0xa8, 0x9c, 0xfb, 0xef, 0xc0, 0x44, 0xad, 0xbb, 0x9d, + 0x2c, 0x41, 0x64, 0xfd, 0x79, 0x0e, 0x4e, 0xf6, 0xbc, 0x1f, 0x93, 0x4d, 0x73, 0xc0, 0x5e, 0x3a, + 0xec, 0x42, 0x7d, 0xe8, 0x58, 0x2d, 0xfc, 0x98, 0x9c, 0xfb, 0xef, 0xc2, 0x44, 0xad, 0xbb, 0x9d, 0xbc, 0x64, 0x71, 0xb7, 0x75, 0x0d, 0xae, 0x9f, 0x60, 0x3a, 0x3e, 0xfb, 0x7e, 0xf9, 0xfe, 0x2e, 0xcc, 0x2b, 0xf8, 0xc5, 0x0f, 0xbf, 0x5f, 0x39, 0x80, 0xa1, 0x8b, 0xa1, 0xde, 0x89, 0x09, 0x22, - 0xeb, 0x97, 0xf3, 0xd9, 0xb7, 0x55, 0x76, 0xd7, 0x3e, 0xc2, 0x6d, 0xf5, 0xfa, 0xca, 0xe6, 0xe1, + 0xeb, 0x57, 0xf2, 0xd9, 0xb7, 0x55, 0x76, 0xd7, 0x3e, 0xc2, 0x6d, 0xf5, 0xc6, 0xca, 0xe6, 0xe1, 0xdf, 0xfe, 0x5f, 0xc8, 0x6f, 0xc7, 0xe7, 0x48, 0xb1, 0xe3, 0x49, 0xf5, 0x9e, 0x78, 0x8e, 0x94, - 0xbb, 0x63, 0x68, 0x3e, 0x47, 0x4a, 0x64, 0xf2, 0x3a, 0x8c, 0xad, 0xfb, 0xdc, 0xf5, 0x57, 0x7e, + 0xbb, 0x63, 0x68, 0x3e, 0x47, 0x4a, 0x64, 0xf2, 0x06, 0x8c, 0xad, 0xfb, 0xdc, 0xf5, 0x57, 0x7e, 0x31, 0xf7, 0x90, 0x92, 0x40, 0x7d, 0x7b, 0x54, 0x98, 0xec, 0x6e, 0x61, 0x0e, 0xbc, 0x34, 0x63, - 0xc7, 0xbb, 0x45, 0x62, 0xba, 0x98, 0x4a, 0x30, 0x93, 0xcc, 0xfa, 0xd1, 0x3c, 0x4c, 0xf1, 0xc9, - 0xcb, 0x95, 0xb4, 0x4f, 0xad, 0x02, 0xfc, 0x4d, 0x43, 0x01, 0x2e, 0x23, 0x5c, 0xe8, 0x9f, 0x36, - 0x90, 0xfa, 0x7b, 0x0f, 0x48, 0x9a, 0x86, 0xd8, 0x30, 0xa1, 0x43, 0xfb, 0x6b, 0xbe, 0x2f, 0xc7, - 0xc1, 0x50, 0xc4, 0xde, 0x81, 0xcf, 0x0f, 0xa1, 0x6d, 0xf0, 0xb0, 0xfe, 0x56, 0x1e, 0x26, 0xb5, - 0xe7, 0xca, 0xa7, 0xb6, 0xe3, 0xbf, 0x64, 0x74, 0xfc, 0xbc, 0x32, 0xbd, 0x56, 0x5f, 0x36, 0x50, - 0xbf, 0x77, 0x61, 0x26, 0x45, 0x92, 0x7c, 0xf5, 0xcd, 0x0d, 0xf2, 0xea, 0xfb, 0x6a, 0x3a, 0xb2, - 0x02, 0x0f, 0x50, 0xaa, 0xdc, 0x75, 0xf5, 0x50, 0x0e, 0x3f, 0x9e, 0x87, 0x39, 0xf1, 0x0b, 0x43, - 0x11, 0xf1, 0xdd, 0xfb, 0xa9, 0x1d, 0x8b, 0xb2, 0x31, 0x16, 0x8b, 0xe6, 0x58, 0x68, 0x1f, 0xd8, - 0x7b, 0x48, 0xac, 0x1f, 0x02, 0x98, 0xef, 0x45, 0x30, 0xb0, 0x87, 0x53, 0x6c, 0xf3, 0x9d, 0x1f, + 0xc7, 0xbb, 0x45, 0x62, 0xba, 0x98, 0x4a, 0x30, 0x93, 0xcc, 0xfa, 0xb1, 0x3c, 0x4c, 0xf1, 0xc9, + 0xcb, 0x95, 0xb4, 0xcf, 0xac, 0x02, 0xfc, 0x2d, 0x43, 0x01, 0x2e, 0x23, 0x5c, 0xe8, 0x9f, 0x36, + 0x90, 0xfa, 0x7b, 0x0f, 0x48, 0x9a, 0x86, 0xd8, 0x30, 0xa1, 0x43, 0xfb, 0x6b, 0xbe, 0xaf, 0xc4, + 0xc1, 0x50, 0xc4, 0xde, 0x81, 0xcf, 0x0f, 0xa1, 0x6d, 0xf0, 0xb0, 0xfe, 0x46, 0x1e, 0x26, 0xb5, + 0xe7, 0xca, 0x67, 0xb6, 0xe3, 0xbf, 0x64, 0x74, 0xfc, 0xbc, 0x32, 0xbd, 0x56, 0x5f, 0x36, 0x50, + 0xbf, 0x77, 0x61, 0x26, 0x45, 0x92, 0x7c, 0xf5, 0xcd, 0x0d, 0xf2, 0xea, 0xfb, 0x5a, 0x3a, 0xb2, + 0x02, 0x0f, 0x50, 0xaa, 0xdc, 0x75, 0xf5, 0x50, 0x0e, 0x3f, 0x91, 0x87, 0x39, 0xf1, 0x0b, 0x43, + 0x11, 0xf1, 0xdd, 0xfb, 0x99, 0x1d, 0x8b, 0xb2, 0x31, 0x16, 0x8b, 0xe6, 0x58, 0x68, 0x1f, 0xd8, + 0x7b, 0x48, 0xac, 0x1f, 0x06, 0x98, 0xef, 0x45, 0x30, 0xb0, 0x87, 0x53, 0x6c, 0xf3, 0x9d, 0x1f, 0xc0, 0xe6, 0x7b, 0x1d, 0x4a, 0x58, 0x95, 0x08, 0x36, 0x12, 0xb2, 0x3b, 0x40, 0x21, 0x16, 0xb8, - 0x79, 0xbc, 0x28, 0x11, 0xfc, 0x24, 0x4c, 0x5c, 0x02, 0x52, 0x94, 0xe4, 0x17, 0x73, 0x30, 0x85, - 0xc0, 0xd5, 0x07, 0xb4, 0x1d, 0x21, 0xb3, 0x21, 0x61, 0x0c, 0xac, 0xf4, 0xe3, 0xb5, 0x28, 0xf0, - 0xda, 0xbb, 0x42, 0x41, 0xbe, 0x2d, 0x14, 0xe4, 0x6f, 0x71, 0xc5, 0xfe, 0xc5, 0xba, 0xdf, 0xba, - 0xb4, 0x1b, 0xb8, 0x0f, 0x3c, 0xfe, 0x12, 0xef, 0x36, 0x2f, 0xc5, 0xf1, 0xb1, 0x3b, 0x5e, 0x22, + 0x79, 0xbc, 0x28, 0x11, 0xfc, 0x24, 0x4c, 0x5c, 0x02, 0x52, 0x94, 0xe4, 0x97, 0x72, 0x30, 0x85, + 0xc0, 0xd5, 0x87, 0xb4, 0x1d, 0x21, 0xb3, 0x21, 0x61, 0x0c, 0xac, 0xf4, 0xe3, 0xb5, 0x28, 0xf0, + 0xda, 0xbb, 0x42, 0x41, 0xbe, 0x2d, 0x14, 0xe4, 0x6f, 0x73, 0xc5, 0xfe, 0xa5, 0xba, 0xdf, 0xba, + 0xbc, 0x1b, 0xb8, 0x0f, 0x3d, 0xfe, 0x12, 0xef, 0x36, 0x2f, 0xc7, 0xf1, 0xb1, 0x3b, 0x5e, 0x22, 0xe2, 0xb5, 0x60, 0x85, 0x8f, 0x0f, 0xbc, 0xa1, 0x14, 0xab, 0x4d, 0xde, 0x55, 0xcc, 0x16, 0x91, 0xef, 0x81, 0x13, 0x3c, 0x92, 0x00, 0x13, 0x79, 0xbd, 0x76, 0xd7, 0xef, 0x86, 0xcb, 0x6e, 0xfd, - 0x3e, 0x3b, 0xf7, 0xb8, 0xcb, 0x06, 0x7e, 0x79, 0x5d, 0x15, 0x3a, 0xdb, 0xbc, 0xd4, 0x70, 0x51, + 0x01, 0x3b, 0xf7, 0xb8, 0xcb, 0x06, 0x7e, 0x79, 0x5d, 0x15, 0x3a, 0xdb, 0xbc, 0xd4, 0x70, 0x51, 0xcb, 0x66, 0x40, 0xd6, 0x60, 0x86, 0x17, 0x95, 0xbb, 0x91, 0x5f, 0xab, 0xbb, 0x4d, 0xaf, 0xbd, 0x8b, 0x77, 0xea, 0x22, 0x3f, 0x8f, 0xdd, 0x6e, 0xe4, 0x3b, 0x21, 0x87, 0xeb, 0x57, 0x97, 0x14, - 0x11, 0xa9, 0xc2, 0xb4, 0x4d, 0xdd, 0xc6, 0x2d, 0xf7, 0xd1, 0x8a, 0xdb, 0x71, 0xeb, 0xec, 0x22, - 0x54, 0xc4, 0xc7, 0x24, 0xbc, 0x9b, 0x05, 0xd4, 0x6d, 0x38, 0x2d, 0xf7, 0x91, 0x53, 0x17, 0x85, + 0x11, 0xa9, 0xc2, 0xb4, 0x4d, 0xdd, 0xc6, 0x6d, 0xf7, 0xf1, 0x8a, 0xdb, 0x71, 0xeb, 0xec, 0x22, + 0x54, 0xc4, 0xc7, 0x24, 0xbc, 0x9b, 0x05, 0xd4, 0x6d, 0x38, 0x2d, 0xf7, 0xb1, 0x53, 0x17, 0x85, 0xa6, 0x0e, 0xcb, 0xa0, 0x53, 0xac, 0xbc, 0xb6, 0x62, 0x35, 0x96, 0x64, 0xe5, 0xb5, 0x7b, 0xb3, 0x8a, 0xe9, 0x24, 0xab, 0x2d, 0x37, 0xd8, 0xa5, 0x11, 0x37, 0x64, 0x63, 0xf7, 0xf1, 0x9c, 0xc6, - 0x2a, 0xc2, 0x32, 0x07, 0x8d, 0xda, 0x92, 0xac, 0x34, 0x3a, 0x36, 0xf3, 0xee, 0x05, 0x5e, 0x44, + 0x2a, 0xc2, 0x32, 0x07, 0x8d, 0xda, 0x92, 0xac, 0x34, 0x3a, 0x36, 0xf3, 0xee, 0x07, 0x5e, 0x44, 0xf5, 0x2f, 0x1c, 0xc7, 0x66, 0x61, 0xff, 0xa3, 0x09, 0x60, 0xaf, 0x4f, 0x4c, 0x51, 0xc6, 0xdc, 0xb4, 0x8f, 0x9c, 0x48, 0x71, 0xcb, 0xfe, 0xca, 0x14, 0xa5, 0xe2, 0xa6, 0x7f, 0xe7, 0x24, 0x7e, 0xa7, 0xc6, 0xad, 0xc7, 0x87, 0xa6, 0x28, 0xc9, 0x06, 0xeb, 0xb4, 0x88, 0xb6, 0xd9, 0x8c, 0x16, - 0x86, 0x7c, 0x53, 0xd8, 0xb4, 0x17, 0x84, 0x35, 0x4a, 0x29, 0x90, 0xc5, 0x4e, 0x86, 0x59, 0x5f, - 0x92, 0x98, 0xfc, 0x35, 0x98, 0xbe, 0x13, 0xd2, 0x6b, 0xd5, 0xcd, 0x9a, 0x0c, 0x3c, 0x80, 0xb7, - 0xed, 0xa9, 0xa5, 0xcb, 0x87, 0x6c, 0x3a, 0x17, 0x75, 0x1a, 0x0c, 0x53, 0xcd, 0xc7, 0xad, 0x1b, + 0x86, 0x7c, 0x53, 0xd8, 0xb4, 0x17, 0x85, 0x35, 0x4a, 0x29, 0x90, 0xc5, 0x4e, 0x86, 0x59, 0x5f, + 0x92, 0x98, 0xfc, 0x15, 0x98, 0xbe, 0x1b, 0xd2, 0xeb, 0xd5, 0xcd, 0x9a, 0x0c, 0x3c, 0x80, 0xb7, + 0xed, 0xa9, 0xa5, 0x2b, 0x87, 0x6c, 0x3a, 0x97, 0x74, 0x1a, 0x0c, 0x53, 0xcd, 0xc7, 0xad, 0x1b, 0x52, 0x67, 0xc7, 0xeb, 0x84, 0x2a, 0x8a, 0x8b, 0x3e, 0x6e, 0x89, 0xaa, 0xac, 0x35, 0x98, 0x49, - 0xb1, 0x21, 0x53, 0x00, 0x0c, 0xe8, 0xdc, 0xd9, 0xa8, 0xad, 0x6e, 0x95, 0x9e, 0x21, 0x25, 0x98, + 0xb1, 0x21, 0x53, 0x00, 0x0c, 0xe8, 0xdc, 0xdd, 0xa8, 0xad, 0x6e, 0x95, 0x9e, 0x23, 0x25, 0x98, 0xc0, 0xdf, 0xab, 0x1b, 0xe5, 0xe5, 0xf5, 0xd5, 0x4a, 0x29, 0x47, 0x66, 0x60, 0x12, 0x21, 0x95, 0x6a, 0x8d, 0x83, 0xf2, 0x3c, 0x48, 0xa9, 0x5d, 0xe2, 0x4b, 0x37, 0x62, 0x0b, 0x00, 0xcf, 0x14, - 0xeb, 0xef, 0xe4, 0xe1, 0xa4, 0x3c, 0x56, 0x68, 0xf4, 0xd0, 0x0f, 0xee, 0x7b, 0xed, 0xdd, 0xa7, - 0xfc, 0x74, 0xb8, 0x66, 0x9c, 0x0e, 0x2f, 0x24, 0x4e, 0xea, 0xc4, 0x57, 0xf6, 0x39, 0x22, 0x7e, - 0x73, 0x0c, 0x4e, 0xf5, 0xa5, 0x22, 0x5f, 0x66, 0xa7, 0xb9, 0x47, 0xdb, 0x51, 0xb5, 0xd1, 0xa4, - 0x5b, 0x5e, 0x8b, 0xfa, 0xdd, 0x48, 0x18, 0x8e, 0x9e, 0xc5, 0x0b, 0x2e, 0x16, 0x3a, 0x5e, 0xa3, + 0xeb, 0x6f, 0xe5, 0xe1, 0xa4, 0x3c, 0x56, 0x68, 0xf4, 0xc8, 0x0f, 0x1e, 0x78, 0xed, 0xdd, 0x67, + 0xfc, 0x74, 0xb8, 0x6e, 0x9c, 0x0e, 0x2f, 0x26, 0x4e, 0xea, 0xc4, 0x57, 0xf6, 0x39, 0x22, 0x7e, + 0x73, 0x0c, 0x4e, 0xf7, 0xa5, 0x22, 0x5f, 0x66, 0xa7, 0xb9, 0x47, 0xdb, 0x51, 0xb5, 0xd1, 0xa4, + 0x5b, 0x5e, 0x8b, 0xfa, 0xdd, 0x48, 0x18, 0x8e, 0x9e, 0xc3, 0x0b, 0x2e, 0x16, 0x3a, 0x5e, 0xa3, 0x49, 0x9d, 0x88, 0x17, 0x1b, 0xd3, 0x2d, 0x4d, 0xcd, 0x58, 0xaa, 0x90, 0xf9, 0xd5, 0x76, 0x44, - 0x83, 0x07, 0x68, 0x9c, 0xa2, 0x58, 0xde, 0xa7, 0xb4, 0xe3, 0xb8, 0xac, 0xd4, 0xf1, 0x44, 0xb1, - 0xc9, 0x32, 0x45, 0x4d, 0xae, 0x69, 0x2c, 0x57, 0x98, 0x38, 0x7c, 0xcb, 0x7d, 0x24, 0x5e, 0xcb, - 0x45, 0x04, 0x2a, 0xc5, 0x92, 0x7b, 0x42, 0xb5, 0xdc, 0x47, 0x76, 0x9a, 0x84, 0x7c, 0x0d, 0x8e, - 0x89, 0x03, 0x48, 0x78, 0xc5, 0xca, 0x2f, 0xe6, 0x3e, 0xb7, 0x2f, 0x3d, 0x3e, 0x58, 0x3c, 0x21, + 0x83, 0x87, 0x68, 0x9c, 0xa2, 0x58, 0x3e, 0xa0, 0xb4, 0xe3, 0xb8, 0xac, 0xd4, 0xf1, 0x44, 0xb1, + 0xc9, 0x32, 0x45, 0x4d, 0xae, 0x6b, 0x2c, 0x57, 0x98, 0x38, 0x7c, 0xdb, 0x7d, 0x2c, 0x5e, 0xcb, + 0x45, 0x04, 0x2a, 0xc5, 0x92, 0x7b, 0x42, 0xb5, 0xdc, 0xc7, 0x76, 0x9a, 0x84, 0x7c, 0x0d, 0x8e, + 0x89, 0x03, 0x48, 0x78, 0xc5, 0xca, 0x2f, 0xe6, 0x3e, 0xb7, 0x2f, 0x3f, 0x39, 0x58, 0x3c, 0x21, 0x63, 0x77, 0x49, 0x3f, 0xe8, 0xac, 0xaf, 0xce, 0xe6, 0x42, 0xb6, 0xd8, 0x81, 0x9c, 0xe8, 0x8e, - 0x5b, 0x34, 0x0c, 0xdd, 0x5d, 0xf9, 0xb2, 0xce, 0xad, 0xec, 0xb5, 0xce, 0x74, 0x5a, 0xbc, 0xdc, - 0xee, 0x49, 0x49, 0xd6, 0x60, 0xea, 0x1e, 0xdd, 0xd6, 0xc7, 0x67, 0x44, 0x6d, 0x55, 0xa5, 0x87, - 0x74, 0xbb, 0xf7, 0xe0, 0x24, 0xe8, 0x88, 0x87, 0x0a, 0xb3, 0x47, 0xfb, 0xeb, 0x5e, 0x18, 0xd1, - 0x36, 0x0d, 0x30, 0xda, 0xc2, 0x28, 0x6e, 0x06, 0xf3, 0xb1, 0x84, 0x6c, 0x96, 0x2f, 0x3f, 0xff, - 0xf8, 0x60, 0xf1, 0x14, 0xf7, 0x2a, 0x69, 0x0a, 0xb8, 0x93, 0x08, 0x38, 0x9f, 0xe6, 0x4a, 0xbe, + 0xdb, 0x34, 0x0c, 0xdd, 0x5d, 0xf9, 0xb2, 0xce, 0xad, 0xec, 0xb5, 0xce, 0x74, 0x5a, 0xbc, 0xdc, + 0xee, 0x49, 0x49, 0xd6, 0x60, 0xea, 0x3e, 0xdd, 0xd6, 0xc7, 0x67, 0x44, 0x6d, 0x55, 0xa5, 0x47, + 0x74, 0xbb, 0xf7, 0xe0, 0x24, 0xe8, 0x88, 0x87, 0x0a, 0xb3, 0xc7, 0xfb, 0xeb, 0x5e, 0x18, 0xd1, + 0x36, 0x0d, 0x30, 0xda, 0xc2, 0x28, 0x6e, 0x06, 0xf3, 0xb1, 0x84, 0x6c, 0x96, 0x2f, 0xbf, 0xf0, + 0xe4, 0x60, 0xf1, 0x34, 0xf7, 0x2a, 0x69, 0x0a, 0xb8, 0x93, 0x08, 0x38, 0x9f, 0xe6, 0x4a, 0xbe, 0x01, 0xd3, 0xb6, 0xdf, 0x8d, 0xbc, 0xf6, 0x6e, 0x2d, 0x0a, 0xdc, 0x88, 0xee, 0xf2, 0x03, 0x29, 0x0e, 0xeb, 0x90, 0x28, 0x15, 0x6f, 0x2d, 0x1c, 0xe8, 0x84, 0x02, 0x6a, 0x9c, 0x08, 0x26, 0x01, - 0xf9, 0x3a, 0x4c, 0x71, 0x7f, 0x48, 0x55, 0xc1, 0x98, 0x11, 0x2c, 0xd7, 0x2c, 0xbc, 0x7b, 0x99, - 0x5f, 0x50, 0xb9, 0x5f, 0x65, 0x56, 0x05, 0x09, 0x6e, 0xe4, 0x03, 0xd1, 0x59, 0x9b, 0x5e, 0x7b, - 0x57, 0x4d, 0x63, 0xc0, 0x9e, 0x7f, 0x2d, 0xee, 0x92, 0x0e, 0x6b, 0xae, 0x9c, 0xc6, 0x3d, 0x2c, - 0x35, 0xd2, 0x7c, 0x48, 0x04, 0xa7, 0xca, 0x61, 0xe8, 0x85, 0x91, 0x30, 0xaf, 0x5e, 0x7d, 0x44, - 0xeb, 0x5d, 0x86, 0x7c, 0xcf, 0x0f, 0xee, 0xd3, 0x80, 0x9b, 0xf7, 0x0d, 0x2f, 0x5f, 0x7c, 0x7c, - 0xb0, 0xf8, 0xb2, 0x8b, 0x88, 0x8e, 0xb0, 0xc8, 0x76, 0xa8, 0x44, 0x75, 0x1e, 0x72, 0x5c, 0xed, + 0xf9, 0x3a, 0x4c, 0x71, 0x7f, 0x48, 0x55, 0xc1, 0x98, 0x11, 0x2c, 0xd7, 0x2c, 0xbc, 0x77, 0x85, + 0x5f, 0x50, 0xb9, 0x5f, 0x65, 0x56, 0x05, 0x09, 0x6e, 0xe4, 0x43, 0xd1, 0x59, 0x9b, 0x5e, 0x7b, + 0x57, 0x4d, 0x63, 0xc0, 0x9e, 0x7f, 0x3d, 0xee, 0x92, 0x0e, 0x6b, 0xae, 0x9c, 0xc6, 0x3d, 0x2c, + 0x35, 0xd2, 0x7c, 0x48, 0x04, 0xa7, 0xcb, 0x61, 0xe8, 0x85, 0x91, 0x30, 0xaf, 0x5e, 0x7d, 0x4c, + 0xeb, 0x5d, 0x86, 0x7c, 0xdf, 0x0f, 0x1e, 0xd0, 0x80, 0x9b, 0xf7, 0x0d, 0x2f, 0x5f, 0x7a, 0x72, + 0xb0, 0xf8, 0x8a, 0x8b, 0x88, 0x8e, 0xb0, 0xc8, 0x76, 0xa8, 0x44, 0x75, 0x1e, 0x71, 0x5c, 0xed, 0x1b, 0xfa, 0x33, 0x25, 0x5f, 0x87, 0xe3, 0x2b, 0x6e, 0x48, 0xab, 0xed, 0x90, 0xb6, 0x43, 0x2f, - 0xf2, 0x1e, 0x50, 0xd1, 0xa9, 0x78, 0xf8, 0x15, 0x31, 0x34, 0xbf, 0x55, 0x77, 0x43, 0xb6, 0x30, + 0xf2, 0x1e, 0x52, 0xd1, 0xa9, 0x78, 0xf8, 0x15, 0x31, 0x34, 0xbf, 0x55, 0x77, 0x43, 0xb6, 0x30, 0x15, 0x8a, 0x23, 0x06, 0x45, 0xab, 0xa6, 0x07, 0x17, 0x62, 0xc3, 0x54, 0xad, 0xb6, 0x56, 0xf1, - 0x5c, 0xb5, 0xae, 0x26, 0xb1, 0xbf, 0x5e, 0xc6, 0xbb, 0x6e, 0xb8, 0xe7, 0x34, 0x3c, 0x57, 0x2d, + 0x5c, 0xb5, 0xae, 0x26, 0xb1, 0xbf, 0x5e, 0xc1, 0xbb, 0x6e, 0xb8, 0xe7, 0x34, 0x3c, 0x57, 0x2d, 0xa8, 0x1e, 0x9d, 0x95, 0xe0, 0x60, 0x1d, 0xe4, 0xa0, 0x94, 0x1c, 0x4a, 0xf2, 0x15, 0x18, 0xe3, 0x66, 0x0e, 0x34, 0xdc, 0x13, 0x2e, 0x7d, 0xf2, 0xd5, 0x5c, 0xc1, 0x4d, 0x22, 0xe1, 0xee, 0xc0, 0x8d, 0x28, 0xa8, 0xfe, 0x06, 0x8c, 0xee, 0x0e, 0x92, 0x88, 0x34, 0x60, 0x82, 0x8f, 0x16, 0xc5, - 0x98, 0x2e, 0xc2, 0xda, 0xed, 0x79, 0x7d, 0x75, 0x88, 0xa2, 0x04, 0x7f, 0x54, 0xa3, 0x8b, 0x39, + 0x98, 0x2e, 0xc2, 0xda, 0xed, 0x05, 0x7d, 0x75, 0x88, 0xa2, 0x04, 0x7f, 0x54, 0xa3, 0x8b, 0x39, 0xc1, 0x11, 0x8c, 0x2a, 0x0c, 0xae, 0xcb, 0x00, 0x45, 0x49, 0x68, 0x9d, 0x84, 0x13, 0x3d, 0xda, - 0x6c, 0x3d, 0xc0, 0xa7, 0xb5, 0x1e, 0x35, 0x92, 0xaf, 0xc0, 0x1c, 0x12, 0xae, 0xf8, 0xed, 0x36, + 0x6c, 0x3d, 0xc4, 0xa7, 0xb5, 0x1e, 0x35, 0x92, 0xaf, 0xc0, 0x1c, 0x12, 0xae, 0xf8, 0xed, 0x36, 0xad, 0x47, 0xb8, 0x1d, 0x49, 0x75, 0x54, 0x81, 0xbf, 0xdf, 0xf2, 0xef, 0xad, 0x2b, 0x04, 0x27, - 0xa9, 0x95, 0xca, 0xe4, 0x60, 0xfd, 0x6c, 0x1e, 0xe6, 0xc5, 0x0e, 0x67, 0xd3, 0xba, 0x1f, 0x34, - 0x9e, 0xfe, 0x13, 0x75, 0xd5, 0x38, 0x51, 0xcf, 0x2a, 0x7f, 0xf0, 0xac, 0x8f, 0xec, 0x73, 0xa0, - 0xfe, 0x72, 0x0e, 0x9e, 0xeb, 0x47, 0xc4, 0x7a, 0x47, 0xc5, 0xb0, 0x19, 0x4b, 0xc5, 0xaa, 0xe9, - 0xc0, 0x2c, 0x0e, 0xe8, 0xca, 0x1e, 0xad, 0xdf, 0x0f, 0xd7, 0xfc, 0x30, 0x42, 0x83, 0xdb, 0x7c, - 0x8f, 0xc7, 0x9f, 0x57, 0x33, 0x1f, 0x7f, 0x8e, 0xf3, 0x59, 0x56, 0x47, 0x1e, 0x3c, 0xca, 0xce, - 0x7d, 0xba, 0x1f, 0xda, 0x59, 0xac, 0xd1, 0x70, 0xb2, 0xdc, 0x8d, 0xf6, 0x36, 0x03, 0xba, 0x43, - 0x03, 0xda, 0xae, 0xd3, 0xcf, 0x98, 0xe1, 0xa4, 0xf9, 0x71, 0x03, 0x69, 0x30, 0xfe, 0xad, 0x49, - 0x98, 0xcb, 0x22, 0x63, 0xfd, 0xa2, 0x5d, 0x9a, 0x93, 0x99, 0x83, 0x7e, 0x30, 0x07, 0x13, 0x35, - 0x5a, 0xf7, 0xdb, 0x8d, 0x6b, 0xf8, 0xc4, 0x2e, 0x7a, 0xc7, 0xe1, 0x42, 0x03, 0x83, 0x3b, 0x3b, - 0x89, 0xb7, 0xf7, 0x8f, 0x0e, 0x16, 0xdf, 0x1b, 0xec, 0xae, 0x5a, 0xf7, 0xd1, 0x0f, 0x3b, 0xc2, + 0xa9, 0x95, 0xca, 0xe4, 0x60, 0xfd, 0x5c, 0x1e, 0xe6, 0xc5, 0x0e, 0x67, 0xd3, 0xba, 0x1f, 0x34, + 0x9e, 0xfd, 0x13, 0x75, 0xd5, 0x38, 0x51, 0xcf, 0x29, 0x7f, 0xf0, 0xac, 0x8f, 0xec, 0x73, 0xa0, + 0xfe, 0x4a, 0x0e, 0x4e, 0xf5, 0x23, 0x62, 0xbd, 0xa3, 0x62, 0xd8, 0x8c, 0xa5, 0x62, 0xd5, 0x74, + 0x60, 0x16, 0x07, 0x74, 0x65, 0x8f, 0xd6, 0x1f, 0x84, 0x6b, 0x7e, 0x18, 0xa1, 0xc1, 0x6d, 0xbe, + 0xc7, 0xe3, 0xcf, 0x6b, 0x99, 0x8f, 0x3f, 0xc7, 0xf9, 0x2c, 0xab, 0x23, 0x0f, 0x1e, 0x65, 0xe7, + 0x01, 0xdd, 0x0f, 0xed, 0x2c, 0xd6, 0x68, 0x38, 0x59, 0xee, 0x46, 0x7b, 0x9b, 0x01, 0xdd, 0xa1, + 0x01, 0x6d, 0xd7, 0xe9, 0x77, 0x99, 0xe1, 0xa4, 0xf9, 0x71, 0x03, 0x69, 0x30, 0xfe, 0xad, 0x49, + 0x98, 0xcb, 0x22, 0x63, 0xfd, 0xa2, 0x5d, 0x9a, 0x93, 0x99, 0x83, 0x7e, 0x28, 0x07, 0x13, 0x35, + 0x5a, 0xf7, 0xdb, 0x8d, 0xeb, 0xf8, 0xc4, 0x2e, 0x7a, 0xc7, 0xe1, 0x42, 0x03, 0x83, 0x3b, 0x3b, + 0x89, 0xb7, 0xf7, 0x8f, 0x0f, 0x16, 0xdf, 0x1f, 0xec, 0xae, 0x5a, 0xf7, 0xd1, 0x0f, 0x3b, 0xc2, 0xc8, 0xb6, 0xaa, 0x0a, 0xd4, 0x96, 0x1b, 0x95, 0x92, 0x65, 0x98, 0x14, 0xcb, 0xd5, 0xd7, 0x43, - 0x18, 0x71, 0x97, 0x79, 0x59, 0x90, 0x0a, 0x3b, 0x67, 0x90, 0x90, 0x2b, 0x50, 0xb8, 0xb3, 0x74, - 0x4d, 0x8c, 0x81, 0x8c, 0x0d, 0x7c, 0x67, 0xe9, 0x1a, 0xaa, 0xc3, 0xd8, 0x15, 0x63, 0xb2, 0xbb, - 0x64, 0xbc, 0x7a, 0xdf, 0x59, 0xba, 0x46, 0xfe, 0x06, 0x1c, 0xab, 0x78, 0xa1, 0xa8, 0x82, 0x9b, - 0xf0, 0x36, 0xd0, 0x71, 0x65, 0xa4, 0xc7, 0xec, 0xfd, 0x42, 0xe6, 0xec, 0x7d, 0xbe, 0xa1, 0x98, - 0x38, 0xdc, 0x3e, 0xb8, 0x91, 0x0c, 0xd5, 0x94, 0x5d, 0x0f, 0xf9, 0x10, 0xa6, 0x50, 0x9d, 0x8b, + 0x18, 0x71, 0x97, 0x79, 0x59, 0x90, 0x0a, 0x3b, 0x67, 0x90, 0x90, 0xab, 0x50, 0xb8, 0xbb, 0x74, + 0x5d, 0x8c, 0x81, 0x8c, 0x0d, 0x7c, 0x77, 0xe9, 0x3a, 0xaa, 0xc3, 0xd8, 0x15, 0x63, 0xb2, 0xbb, + 0x64, 0xbc, 0x7a, 0xdf, 0x5d, 0xba, 0x4e, 0xfe, 0x1a, 0x1c, 0xab, 0x78, 0xa1, 0xa8, 0x82, 0x9b, + 0xf0, 0x36, 0xd0, 0x71, 0x65, 0xa4, 0xc7, 0xec, 0xfd, 0x42, 0xe6, 0xec, 0x7d, 0xa1, 0xa1, 0x98, + 0x38, 0xdc, 0x3e, 0xb8, 0x91, 0x0c, 0xd5, 0x94, 0x5d, 0x0f, 0xf9, 0x08, 0xa6, 0x50, 0x9d, 0x8b, 0x56, 0xcd, 0x18, 0x1d, 0x73, 0xb4, 0x47, 0xcd, 0x9f, 0xcb, 0xac, 0x79, 0x01, 0xb5, 0xc3, 0x0e, - 0xda, 0x46, 0x63, 0x24, 0x4d, 0xe3, 0xd6, 0x6f, 0x70, 0x26, 0x37, 0x60, 0x5a, 0x88, 0x5f, 0xb7, - 0x77, 0xb6, 0xf6, 0x68, 0xc5, 0xdd, 0x17, 0x0f, 0xd6, 0x78, 0xa3, 0x13, 0x32, 0x9b, 0xe3, 0xef, - 0x38, 0xd1, 0x1e, 0x75, 0x1a, 0xae, 0x21, 0xa8, 0x24, 0x08, 0xc9, 0xf7, 0xc2, 0xf8, 0xba, 0x5f, - 0x67, 0x92, 0x37, 0xee, 0x0c, 0xfc, 0x0d, 0xfb, 0x7d, 0xcc, 0x4d, 0xc3, 0xc1, 0x09, 0x71, 0xea, - 0xa3, 0x83, 0xc5, 0x37, 0x8f, 0x3a, 0x69, 0xb4, 0x0a, 0x6c, 0xbd, 0x36, 0xb2, 0x02, 0xc5, 0x7b, + 0xda, 0x46, 0x63, 0x24, 0x4d, 0xe3, 0xd6, 0x6f, 0x70, 0x26, 0x37, 0x61, 0x5a, 0x88, 0x5f, 0x77, + 0x76, 0xb6, 0xf6, 0x68, 0xc5, 0xdd, 0x17, 0x0f, 0xd6, 0x78, 0xa3, 0x13, 0x32, 0x9b, 0xe3, 0xef, + 0x38, 0xd1, 0x1e, 0x75, 0x1a, 0xae, 0x21, 0xa8, 0x24, 0x08, 0xc9, 0xf7, 0xc1, 0xf8, 0xba, 0x5f, + 0x67, 0x92, 0x37, 0xee, 0x0c, 0xfc, 0x0d, 0xfb, 0x03, 0xcc, 0x4d, 0xc3, 0xc1, 0x09, 0x71, 0xea, + 0xe3, 0x83, 0xc5, 0xb7, 0x8e, 0x3a, 0x69, 0xb4, 0x0a, 0x6c, 0xbd, 0x36, 0xb2, 0x02, 0xc5, 0xfb, 0x74, 0x9b, 0x7d, 0x6d, 0x32, 0x6f, 0x85, 0x04, 0x0b, 0x13, 0x15, 0xf1, 0xcb, 0x30, 0x51, 0x11, - 0x30, 0x12, 0xc0, 0x0c, 0xf6, 0xcf, 0xa6, 0x1b, 0x86, 0x0f, 0xfd, 0xa0, 0x81, 0x01, 0x8a, 0x7b, - 0x3d, 0x8f, 0x2f, 0x65, 0x76, 0xfe, 0x73, 0xbc, 0xf3, 0x3b, 0x1a, 0x07, 0x5d, 0x80, 0x4c, 0xb1, - 0x27, 0xdf, 0x80, 0x29, 0x9b, 0x7e, 0xb3, 0xeb, 0x05, 0xf4, 0xd6, 0xb5, 0x32, 0xae, 0xca, 0x09, - 0xc3, 0xfd, 0xc7, 0x2c, 0xe4, 0x52, 0x6a, 0xc0, 0x61, 0x52, 0x03, 0xe5, 0xb4, 0x76, 0x5c, 0xf3, - 0x05, 0x42, 0x27, 0x21, 0x9b, 0x30, 0x5e, 0xa1, 0x0f, 0xbc, 0x3a, 0x45, 0x17, 0x05, 0x61, 0x1e, - 0xa8, 0x02, 0xef, 0xc7, 0x25, 0x5c, 0x17, 0xd3, 0x40, 0x00, 0x77, 0x78, 0x30, 0x2d, 0xd0, 0x14, - 0x22, 0xb9, 0x0a, 0x85, 0x6a, 0x65, 0x53, 0x58, 0x07, 0x4a, 0xab, 0xff, 0x6a, 0x63, 0x53, 0x86, - 0x29, 0x47, 0x83, 0x12, 0xaf, 0x61, 0xd8, 0x16, 0x56, 0x2b, 0x9b, 0x64, 0x07, 0x26, 0xb1, 0x03, - 0xd6, 0xa8, 0xcb, 0xfb, 0x76, 0xba, 0x47, 0xdf, 0x5e, 0xcc, 0xec, 0xdb, 0x79, 0xde, 0xb7, 0x7b, - 0x82, 0xda, 0x88, 0xbb, 0xac, 0xb3, 0x65, 0x22, 0xad, 0x88, 0x05, 0x2f, 0xa3, 0x05, 0x6f, 0xad, - 0xe3, 0x83, 0xb9, 0x10, 0x69, 0x65, 0xe8, 0x78, 0x15, 0xbe, 0xb8, 0xa7, 0xf1, 0x71, 0x9a, 0x0f, - 0xf9, 0x12, 0x0c, 0xdd, 0xbe, 0x1f, 0xb9, 0xf3, 0x33, 0x46, 0x3f, 0x32, 0x90, 0xfc, 0x7c, 0xd4, - 0x42, 0xfa, 0xf7, 0x8d, 0x60, 0x1e, 0x48, 0x43, 0x96, 0x60, 0x74, 0xb3, 0x7a, 0xb7, 0xd6, 0xf4, - 0xa3, 0x79, 0xa2, 0xee, 0x49, 0xa4, 0xe3, 0x3d, 0x70, 0xc2, 0xa6, 0x6f, 0xe6, 0x93, 0x90, 0x88, - 0x6c, 0xf8, 0xd6, 0xdc, 0xa0, 0xf1, 0xd0, 0x0d, 0xd0, 0xb7, 0x6c, 0xd6, 0xa8, 0x56, 0x2b, 0xe1, - 0xc3, 0xb7, 0x27, 0x00, 0x09, 0x87, 0x33, 0x9d, 0x05, 0xf9, 0x1e, 0x38, 0x19, 0x7a, 0xbb, 0x6d, - 0x37, 0xea, 0x06, 0xd4, 0x71, 0x9b, 0xbb, 0x7e, 0xe0, 0x45, 0x7b, 0x2d, 0x27, 0xec, 0x7a, 0x11, - 0x9d, 0x9f, 0x33, 0xb2, 0xcd, 0xd5, 0x24, 0x5e, 0x59, 0xa2, 0xd5, 0x18, 0x96, 0x7d, 0x22, 0xcc, - 0x2e, 0x10, 0xda, 0x8b, 0x19, 0x31, 0x05, 0x45, 0xb7, 0xdd, 0xba, 0x56, 0xb6, 0xfe, 0xd3, 0x1c, - 0x6e, 0xc6, 0xe4, 0x65, 0xf4, 0xb4, 0x57, 0x0f, 0xd2, 0xa8, 0x87, 0x75, 0x3b, 0x89, 0xe8, 0x9d, - 0x1c, 0x85, 0xbc, 0x0a, 0x23, 0xd7, 0xdc, 0x3a, 0x8d, 0xe4, 0x43, 0x14, 0x22, 0xef, 0x20, 0x44, - 0x57, 0xda, 0x72, 0x1c, 0x26, 0x27, 0xf2, 0x49, 0x5a, 0x8e, 0x93, 0x04, 0xae, 0x94, 0xe5, 0x3b, - 0x14, 0xca, 0x89, 0x62, 0x72, 0x6b, 0x59, 0x04, 0x13, 0x36, 0x9b, 0x99, 0x1c, 0xac, 0x3f, 0xcd, - 0xc5, 0xbb, 0x0b, 0x79, 0x09, 0x86, 0xec, 0x4d, 0xd5, 0x7e, 0xee, 0xc3, 0x95, 0x68, 0x3e, 0x22, - 0x90, 0x0f, 0xe0, 0x98, 0xc6, 0x27, 0x65, 0x40, 0xfa, 0x22, 0xba, 0x18, 0x69, 0x2d, 0xc9, 0xb6, - 0x22, 0xcd, 0xe6, 0x81, 0x42, 0x71, 0x5c, 0x50, 0xa1, 0x6d, 0x8f, 0xf3, 0xd6, 0x3e, 0x56, 0xe7, - 0xdd, 0x40, 0x84, 0xe4, 0xc7, 0x66, 0x71, 0xe0, 0x1e, 0x46, 0xd6, 0x6f, 0xe4, 0x8c, 0x5d, 0x43, - 0x65, 0x63, 0xcb, 0x1d, 0x92, 0x8d, 0xed, 0x0d, 0x80, 0x72, 0x37, 0xf2, 0x57, 0xdb, 0x81, 0xdf, - 0xe4, 0xda, 0x10, 0x11, 0xc0, 0x16, 0x75, 0xbc, 0x14, 0xc1, 0x86, 0x23, 0x84, 0x42, 0xce, 0xb4, - 0xb5, 0x2d, 0x7c, 0x5c, 0x5b, 0x5b, 0xeb, 0xf7, 0x72, 0xc6, 0xba, 0x61, 0xd2, 0x9e, 0x5c, 0x7a, - 0x9a, 0x29, 0x44, 0x7a, 0xe9, 0xc5, 0x0b, 0xef, 0xdf, 0xcc, 0xc1, 0x71, 0x6e, 0xb4, 0xba, 0xd1, - 0x6d, 0x6d, 0xd3, 0xe0, 0xae, 0xdb, 0xf4, 0x1a, 0x71, 0x1c, 0x93, 0xd8, 0x2e, 0x46, 0xab, 0x26, - 0x1b, 0x9f, 0x5f, 0x38, 0xb9, 0x11, 0xad, 0xd3, 0xc6, 0x42, 0xe7, 0x81, 0x2a, 0xd5, 0x2f, 0x9c, - 0xd9, 0xf4, 0xd6, 0xaf, 0xe4, 0xe0, 0xf9, 0x43, 0x6b, 0x21, 0x97, 0x60, 0x54, 0x46, 0x0e, 0xce, - 0x61, 0xc7, 0xa3, 0x01, 0x59, 0x3a, 0x6a, 0xb0, 0xc4, 0x22, 0x5f, 0x85, 0x63, 0x3a, 0xab, 0xad, - 0xc0, 0xf5, 0xf4, 0xf8, 0xbc, 0x19, 0xad, 0x8e, 0x18, 0x4a, 0x52, 0xea, 0xca, 0x66, 0x62, 0xfd, - 0x3f, 0x39, 0x2d, 0x3f, 0xe3, 0x53, 0x2a, 0x8b, 0x5f, 0x35, 0x64, 0x71, 0x19, 0xc5, 0x49, 0x7d, - 0x15, 0x2b, 0xcb, 0xbc, 0x3f, 0x4d, 0x6b, 0x86, 0x90, 0x08, 0xf8, 0x76, 0x1e, 0xc6, 0xef, 0x84, - 0x34, 0xe0, 0x0f, 0xb2, 0x9f, 0xad, 0x58, 0x36, 0xea, 0xbb, 0x06, 0x8a, 0x36, 0xf2, 0x47, 0x39, + 0x30, 0x12, 0xc0, 0x0c, 0xf6, 0xcf, 0xa6, 0x1b, 0x86, 0x8f, 0xfc, 0xa0, 0x81, 0x01, 0x8a, 0x7b, + 0x3d, 0x8f, 0x2f, 0x65, 0x76, 0xfe, 0x29, 0xde, 0xf9, 0x1d, 0x8d, 0x83, 0x2e, 0x40, 0xa6, 0xd8, + 0x93, 0x6f, 0xc0, 0x94, 0x4d, 0xbf, 0xd9, 0xf5, 0x02, 0x7a, 0xfb, 0x7a, 0x19, 0x57, 0xe5, 0x84, + 0xe1, 0xfe, 0x63, 0x16, 0x72, 0x29, 0x35, 0xe0, 0x30, 0xa9, 0x81, 0x72, 0x5a, 0x3b, 0xae, 0xf9, + 0x02, 0xa1, 0x93, 0x90, 0x4d, 0x18, 0xaf, 0xd0, 0x87, 0x5e, 0x9d, 0xa2, 0x8b, 0x82, 0x30, 0x0f, + 0x54, 0x81, 0xf7, 0xe3, 0x12, 0xae, 0x8b, 0x69, 0x20, 0x80, 0x3b, 0x3c, 0x98, 0x16, 0x68, 0x0a, + 0x91, 0x5c, 0x83, 0x42, 0xb5, 0xb2, 0x29, 0xac, 0x03, 0xa5, 0xd5, 0x7f, 0xb5, 0xb1, 0x29, 0xc3, + 0x94, 0xa3, 0x41, 0x89, 0xd7, 0x30, 0x6c, 0x0b, 0xab, 0x95, 0x4d, 0xb2, 0x03, 0x93, 0xd8, 0x01, + 0x6b, 0xd4, 0xe5, 0x7d, 0x3b, 0xdd, 0xa3, 0x6f, 0x2f, 0x65, 0xf6, 0xed, 0x3c, 0xef, 0xdb, 0x3d, + 0x41, 0x6d, 0xc4, 0x5d, 0xd6, 0xd9, 0x32, 0x91, 0x56, 0xc4, 0x82, 0x97, 0xd1, 0x82, 0xb7, 0xd6, + 0xf1, 0xc1, 0x5c, 0x88, 0xb4, 0x32, 0x74, 0xbc, 0x0a, 0x5f, 0xdc, 0xd3, 0xf8, 0x38, 0xcd, 0x87, + 0x7c, 0x09, 0x86, 0xee, 0x3c, 0x88, 0xdc, 0xf9, 0x19, 0xa3, 0x1f, 0x19, 0x48, 0x7e, 0x3e, 0x6a, + 0x21, 0xfd, 0x07, 0x46, 0x30, 0x0f, 0xa4, 0x21, 0x4b, 0x30, 0xba, 0x59, 0xbd, 0x57, 0x6b, 0xfa, + 0xd1, 0x3c, 0x51, 0xf7, 0x24, 0xd2, 0xf1, 0x1e, 0x3a, 0x61, 0xd3, 0x37, 0xf3, 0x49, 0x48, 0x44, + 0x36, 0x7c, 0x6b, 0x6e, 0xd0, 0x78, 0xe4, 0x06, 0xe8, 0x5b, 0x36, 0x6b, 0x54, 0xab, 0x95, 0xf0, + 0xe1, 0xdb, 0x13, 0x80, 0x84, 0xc3, 0x99, 0xce, 0x82, 0x7c, 0x0f, 0x9c, 0x0c, 0xbd, 0xdd, 0xb6, + 0x1b, 0x75, 0x03, 0xea, 0xb8, 0xcd, 0x5d, 0x3f, 0xf0, 0xa2, 0xbd, 0x96, 0x13, 0x76, 0xbd, 0x88, + 0xce, 0xcf, 0x19, 0xd9, 0xe6, 0x6a, 0x12, 0xaf, 0x2c, 0xd1, 0x6a, 0x0c, 0xcb, 0x3e, 0x11, 0x66, + 0x17, 0x08, 0xed, 0xc5, 0x8c, 0x98, 0x82, 0xa2, 0xdb, 0x6e, 0x5f, 0x2f, 0x5b, 0xff, 0x69, 0x0e, + 0x37, 0x63, 0xf2, 0x0a, 0x7a, 0xda, 0xab, 0x07, 0x69, 0xd4, 0xc3, 0xba, 0x9d, 0x44, 0xf4, 0x4e, + 0x8e, 0x42, 0x5e, 0x83, 0x91, 0xeb, 0x6e, 0x9d, 0x46, 0xf2, 0x21, 0x0a, 0x91, 0x77, 0x10, 0xa2, + 0x2b, 0x6d, 0x39, 0x0e, 0x93, 0x13, 0xf9, 0x24, 0x2d, 0xc7, 0x49, 0x02, 0x57, 0xca, 0xf2, 0x1d, + 0x0a, 0xe5, 0x44, 0x31, 0xb9, 0xb5, 0x2c, 0x82, 0x09, 0x9b, 0xcd, 0x4c, 0x0e, 0xd6, 0x9f, 0xe4, + 0xe2, 0xdd, 0x85, 0xbc, 0x0c, 0x43, 0xf6, 0xa6, 0x6a, 0x3f, 0xf7, 0xe1, 0x4a, 0x34, 0x1f, 0x11, + 0xc8, 0x87, 0x70, 0x4c, 0xe3, 0x93, 0x32, 0x20, 0x7d, 0x09, 0x5d, 0x8c, 0xb4, 0x96, 0x64, 0x5b, + 0x91, 0x66, 0xf3, 0x40, 0xa1, 0x38, 0x2e, 0xa8, 0xd0, 0xb6, 0xc7, 0x79, 0x6b, 0x1f, 0xab, 0xf3, + 0x6e, 0x20, 0x42, 0xf2, 0x63, 0xb3, 0x38, 0x70, 0x0f, 0x23, 0xeb, 0x37, 0x72, 0xc6, 0xae, 0xa1, + 0xb2, 0xb1, 0xe5, 0x0e, 0xc9, 0xc6, 0xf6, 0x26, 0x40, 0xb9, 0x1b, 0xf9, 0xab, 0xed, 0xc0, 0x6f, + 0x72, 0x6d, 0x88, 0x08, 0x60, 0x8b, 0x3a, 0x5e, 0x8a, 0x60, 0xc3, 0x11, 0x42, 0x21, 0x67, 0xda, + 0xda, 0x16, 0x3e, 0xa9, 0xad, 0xad, 0xf5, 0x7b, 0x39, 0x63, 0xdd, 0x30, 0x69, 0x4f, 0x2e, 0x3d, + 0xcd, 0x14, 0x22, 0xbd, 0xf4, 0xe2, 0x85, 0xf7, 0x6f, 0xe6, 0xe0, 0x38, 0x37, 0x5a, 0xdd, 0xe8, + 0xb6, 0xb6, 0x69, 0x70, 0xcf, 0x6d, 0x7a, 0x8d, 0x38, 0x8e, 0x49, 0x6c, 0x17, 0xa3, 0x55, 0x93, + 0x8d, 0xcf, 0x2f, 0x9c, 0xdc, 0x88, 0xd6, 0x69, 0x63, 0xa1, 0xf3, 0x50, 0x95, 0xea, 0x17, 0xce, + 0x6c, 0x7a, 0xeb, 0x57, 0x73, 0xf0, 0xc2, 0xa1, 0xb5, 0x90, 0xcb, 0x30, 0x2a, 0x23, 0x07, 0xe7, + 0xb0, 0xe3, 0xd1, 0x80, 0x2c, 0x1d, 0x35, 0x58, 0x62, 0x91, 0xaf, 0xc2, 0x31, 0x9d, 0xd5, 0x56, + 0xe0, 0x7a, 0x7a, 0x7c, 0xde, 0x8c, 0x56, 0x47, 0x0c, 0x25, 0x29, 0x75, 0x65, 0x33, 0xb1, 0xfe, + 0x9f, 0x9c, 0x96, 0x9f, 0xf1, 0x19, 0x95, 0xc5, 0xaf, 0x19, 0xb2, 0xb8, 0x8c, 0xe2, 0xa4, 0xbe, + 0x8a, 0x95, 0x65, 0xde, 0x9f, 0xa6, 0x35, 0x43, 0x48, 0x04, 0x7c, 0x2b, 0x0f, 0xe3, 0x77, 0x43, + 0x1a, 0xf0, 0x07, 0xd9, 0xef, 0xae, 0x58, 0x36, 0xea, 0xbb, 0x06, 0x8a, 0x36, 0xf2, 0x47, 0x39, 0x54, 0xd4, 0xeb, 0x14, 0xac, 0x37, 0xb4, 0x9c, 0x2c, 0xd8, 0x1b, 0x98, 0x8d, 0x05, 0xa1, 0x3c, - 0x22, 0xc9, 0xba, 0x99, 0x9e, 0x09, 0x73, 0x74, 0xad, 0x93, 0xf7, 0x60, 0xf8, 0x0e, 0xaa, 0x1d, + 0x22, 0xc9, 0xba, 0x99, 0x9e, 0x09, 0x73, 0x74, 0xad, 0x93, 0xf7, 0x61, 0xf8, 0x2e, 0xaa, 0x1d, 0x4d, 0x9f, 0x69, 0xc5, 0x1f, 0x0b, 0xf9, 0x26, 0xdd, 0x65, 0x7f, 0xea, 0x67, 0x0c, 0x96, 0x91, 0x1a, 0x8c, 0xae, 0x04, 0x14, 0xb3, 0x2d, 0x0e, 0x0d, 0xee, 0xf1, 0x57, 0xe7, 0x24, 0x49, 0x8f, - 0x3f, 0xc1, 0xc9, 0xfa, 0x99, 0x3c, 0x90, 0xf8, 0x1b, 0x31, 0xb5, 0x40, 0xf8, 0xd4, 0x0e, 0xfa, - 0xbb, 0xc6, 0xa0, 0x9f, 0x4a, 0x0d, 0x3a, 0xff, 0xbc, 0x81, 0xc6, 0xfe, 0xb7, 0x72, 0x70, 0x3c, - 0x9b, 0x90, 0x9c, 0x85, 0x91, 0xdb, 0x5b, 0x9b, 0xd2, 0xed, 0x5e, 0x7c, 0x8a, 0xdf, 0xc1, 0x3b, - 0xbf, 0x2d, 0x8a, 0xc8, 0x6b, 0x30, 0xf2, 0x65, 0x7b, 0x85, 0x9d, 0x43, 0x5a, 0x0c, 0xdc, 0x6f, - 0x06, 0x4e, 0xdd, 0x3c, 0x8a, 0x04, 0x92, 0x3e, 0xb6, 0x85, 0x27, 0x36, 0xb6, 0x3f, 0x9e, 0x87, - 0xe9, 0x72, 0xbd, 0x4e, 0xc3, 0x90, 0x09, 0x39, 0x34, 0x8c, 0x9e, 0xda, 0x81, 0xcd, 0x76, 0xa8, - 0x37, 0xbe, 0x6d, 0xa0, 0x51, 0xfd, 0x9d, 0x1c, 0x1c, 0x93, 0x54, 0x0f, 0x3c, 0xfa, 0x70, 0x6b, + 0x3f, 0xc1, 0xc9, 0xfa, 0xd9, 0x3c, 0x90, 0xf8, 0x1b, 0x31, 0xb5, 0x40, 0xf8, 0xcc, 0x0e, 0xfa, + 0x7b, 0xc6, 0xa0, 0x9f, 0x4e, 0x0d, 0x3a, 0xff, 0xbc, 0x81, 0xc6, 0xfe, 0xb7, 0x72, 0x70, 0x3c, + 0x9b, 0x90, 0x9c, 0x83, 0x91, 0x3b, 0x5b, 0x9b, 0xd2, 0xed, 0x5e, 0x7c, 0x8a, 0xdf, 0xc1, 0x3b, + 0xbf, 0x2d, 0x8a, 0xc8, 0xeb, 0x30, 0xf2, 0x65, 0x7b, 0x85, 0x9d, 0x43, 0x5a, 0x0c, 0xdc, 0x6f, + 0x06, 0x4e, 0xdd, 0x3c, 0x8a, 0x04, 0x92, 0x3e, 0xb6, 0x85, 0xa7, 0x36, 0xb6, 0x3f, 0x91, 0x87, + 0xe9, 0x72, 0xbd, 0x4e, 0xc3, 0x90, 0x09, 0x39, 0x34, 0x8c, 0x9e, 0xd9, 0x81, 0xcd, 0x76, 0xa8, + 0x37, 0xbe, 0x6d, 0xa0, 0x51, 0xfd, 0x9d, 0x1c, 0x1c, 0x93, 0x54, 0x0f, 0x3d, 0xfa, 0x68, 0x6b, 0x2f, 0xa0, 0xe1, 0x9e, 0xdf, 0x6c, 0x0c, 0x1c, 0x68, 0x9b, 0x09, 0x7a, 0x18, 0x3d, 0x53, 0x7f, - 0x9d, 0xdf, 0x41, 0x88, 0x21, 0xe8, 0xf1, 0x08, 0x9b, 0x97, 0x60, 0xb4, 0xdc, 0xe9, 0x04, 0xfe, - 0x03, 0xbe, 0xec, 0x27, 0x85, 0x03, 0x24, 0x07, 0x19, 0x0e, 0x93, 0x1c, 0xc4, 0x9a, 0x51, 0xa1, + 0x9d, 0xdf, 0x41, 0x88, 0x21, 0xe8, 0xf1, 0x08, 0x9b, 0x97, 0x61, 0xb4, 0xdc, 0xe9, 0x04, 0xfe, + 0x43, 0xbe, 0xec, 0x27, 0x85, 0x03, 0x24, 0x07, 0x19, 0x0e, 0x93, 0x1c, 0xc4, 0x9a, 0x51, 0xa1, 0x6d, 0x1e, 0x01, 0x68, 0x92, 0x37, 0xa3, 0x41, 0xdb, 0xba, 0x7c, 0x8c, 0xe5, 0x56, 0x0d, 0xc8, 0x66, 0xe0, 0xb7, 0xfc, 0x88, 0x36, 0xf8, 0xf7, 0xa0, 0x9f, 0xe9, 0xa1, 0xa1, 0x4b, 0xb6, 0xbc, 0xa8, 0x69, 0x84, 0x2e, 0x89, 0x18, 0xc0, 0xe6, 0x70, 0xeb, 0xff, 0x1a, 0x86, 0x09, 0xbd, 0x77, 0x88, 0xc5, 0xa3, 0xe7, 0xfa, 0x81, 0xee, 0xec, 0xec, 0x22, 0xc4, 0x16, 0x25, 0x71, 0xa4, 0x80, - 0xfc, 0xa1, 0x91, 0x02, 0xee, 0xc1, 0xe4, 0x66, 0xe0, 0x77, 0xfc, 0x90, 0x36, 0x78, 0x16, 0x5e, + 0xfc, 0xa1, 0x91, 0x02, 0xee, 0xc3, 0xe4, 0x66, 0xe0, 0x77, 0xfc, 0x90, 0x36, 0x78, 0x16, 0x5e, 0xbe, 0x15, 0xce, 0x6a, 0xf7, 0x47, 0x36, 0x90, 0xf8, 0xae, 0x89, 0xda, 0x93, 0x8e, 0xc0, 0x76, 0x92, 0x39, 0x7a, 0x4d, 0x3e, 0xdc, 0x64, 0xc2, 0x0d, 0x45, 0xa0, 0x2f, 0x65, 0x32, 0xc1, 0x20, - 0xa6, 0xc9, 0x04, 0x83, 0xe8, 0x6b, 0x6d, 0xf8, 0x49, 0xad, 0x35, 0xf2, 0x33, 0x39, 0x18, 0x2f, - 0xb7, 0xdb, 0x22, 0x02, 0xc1, 0x21, 0xce, 0x97, 0x5f, 0x15, 0x56, 0x13, 0x6f, 0x7e, 0x2c, 0xab, - 0x09, 0x94, 0x5b, 0x42, 0x94, 0x54, 0xe3, 0x0a, 0xf5, 0x1b, 0x94, 0xd6, 0x0e, 0xf2, 0x26, 0x94, - 0xd4, 0x24, 0xaf, 0xb6, 0x1b, 0xf4, 0x11, 0x0d, 0xe7, 0x47, 0xcf, 0x14, 0xce, 0x4f, 0x8a, 0xc0, + 0xa6, 0xc9, 0x04, 0x83, 0xe8, 0x6b, 0x6d, 0xf8, 0x69, 0xad, 0x35, 0xf2, 0xb3, 0x39, 0x18, 0x2f, + 0xb7, 0xdb, 0x22, 0x02, 0xc1, 0x21, 0xce, 0x97, 0x5f, 0x15, 0x56, 0x13, 0x6f, 0x7d, 0x22, 0xab, + 0x09, 0x94, 0x5b, 0x42, 0x94, 0x54, 0xe3, 0x0a, 0xf5, 0x1b, 0x94, 0xd6, 0x0e, 0xf2, 0x16, 0x94, + 0xd4, 0x24, 0xaf, 0xb6, 0x1b, 0xf4, 0x31, 0x0d, 0xe7, 0x47, 0xcf, 0x16, 0x2e, 0x4c, 0x8a, 0xc0, 0x83, 0xba, 0x64, 0x9a, 0x44, 0x24, 0x5b, 0x00, 0xae, 0x9a, 0x5d, 0x89, 0xfc, 0x47, 0xe9, 0xe9, 0x27, 0xa4, 0x67, 0xfc, 0x8d, 0x0f, 0x53, 0xba, 0xf4, 0x1c, 0xf3, 0x21, 0x2d, 0x98, 0xe6, 0xc9, - 0x87, 0x30, 0x29, 0x31, 0xc6, 0xea, 0x85, 0x43, 0xc7, 0xe1, 0x25, 0xa1, 0x07, 0x7b, 0x56, 0xa4, + 0x87, 0x30, 0x29, 0x31, 0xc6, 0xea, 0x85, 0x43, 0xc7, 0xe1, 0x65, 0xa1, 0x07, 0x7b, 0x5e, 0xa4, 0x34, 0xc2, 0x3c, 0xc7, 0x4e, 0x46, 0xe0, 0xde, 0x24, 0x6f, 0x1e, 0xe6, 0xd1, 0x3e, 0x91, 0x6e, - 0x2f, 0x9f, 0xf4, 0x3f, 0x9e, 0x83, 0xe3, 0xfa, 0xa4, 0xaf, 0x75, 0xb7, 0x5b, 0x1e, 0xde, 0x05, - 0xc9, 0x45, 0x18, 0x13, 0x73, 0x52, 0x5d, 0xa2, 0xd2, 0x21, 0x87, 0x63, 0x14, 0xb2, 0xca, 0xa6, + 0x2f, 0x9f, 0xf4, 0x3f, 0x91, 0x83, 0xe3, 0xfa, 0xa4, 0xaf, 0x75, 0xb7, 0x5b, 0x1e, 0xde, 0x05, + 0xc9, 0x25, 0x18, 0x13, 0x73, 0x52, 0x5d, 0xa2, 0xd2, 0x21, 0x87, 0x63, 0x14, 0xb2, 0xca, 0xa6, 0x21, 0xe3, 0x21, 0xa4, 0xee, 0xd9, 0xc4, 0x3e, 0xc5, 0x8a, 0xe2, 0xc4, 0x76, 0x01, 0xfe, 0x36, - 0xe7, 0x27, 0x83, 0x58, 0xef, 0xc0, 0x8c, 0x39, 0x12, 0x35, 0x1a, 0x91, 0x0b, 0x30, 0x2a, 0x87, - 0x2f, 0x97, 0x3d, 0x7c, 0xb2, 0xdc, 0xba, 0x07, 0x24, 0x45, 0x1f, 0xa2, 0x79, 0x13, 0x8d, 0xa4, + 0xe7, 0x27, 0x83, 0x58, 0xef, 0xc2, 0x8c, 0x39, 0x12, 0x35, 0x1a, 0x91, 0x8b, 0x30, 0x2a, 0x87, + 0x2f, 0x97, 0x3d, 0x7c, 0xb2, 0xdc, 0xba, 0x0f, 0x24, 0x45, 0x1f, 0xa2, 0x79, 0x13, 0x8d, 0xa4, 0xf9, 0x9d, 0x7c, 0x5c, 0x4c, 0x21, 0xaa, 0x4c, 0xef, 0xe3, 0x86, 0xbd, 0x2d, 0x23, 0xb5, 0xfe, - 0x74, 0x0a, 0x66, 0x33, 0xf6, 0xdc, 0x43, 0x64, 0xa2, 0x45, 0x73, 0x83, 0x18, 0x53, 0xbe, 0xdb, - 0x72, 0x5b, 0x78, 0x47, 0x26, 0xe5, 0xee, 0xb3, 0x1d, 0xf4, 0xcb, 0xd4, 0xfd, 0x69, 0xc8, 0x45, - 0x7a, 0x78, 0x85, 0xe1, 0x27, 0x16, 0x5e, 0x61, 0x19, 0x26, 0xc5, 0x57, 0x89, 0xed, 0x6a, 0x24, - 0xd6, 0x14, 0x07, 0xbc, 0xc0, 0x49, 0x6d, 0x5b, 0x26, 0x09, 0xe7, 0x11, 0xfa, 0xcd, 0x07, 0x54, + 0x64, 0x0a, 0x66, 0x33, 0xf6, 0xdc, 0x43, 0x64, 0xa2, 0x45, 0x73, 0x83, 0x18, 0x53, 0xbe, 0xdb, + 0x72, 0x5b, 0x78, 0x57, 0x26, 0xe5, 0xee, 0xb3, 0x1d, 0xf4, 0xcb, 0xd4, 0xfd, 0x59, 0xc8, 0x45, + 0x7a, 0x78, 0x85, 0xe1, 0xa7, 0x16, 0x5e, 0x61, 0x19, 0x26, 0xc5, 0x57, 0x89, 0xed, 0x6a, 0x24, + 0xd6, 0x14, 0x07, 0xbc, 0xc0, 0x49, 0x6d, 0x5b, 0x26, 0x09, 0xe7, 0x11, 0xfa, 0xcd, 0x87, 0x54, 0xf0, 0x18, 0xd5, 0x79, 0x60, 0x41, 0x26, 0x0f, 0x8d, 0x84, 0xfc, 0x87, 0x98, 0x3f, 0x05, 0x21, - 0xfa, 0x9e, 0x55, 0xec, 0xb7, 0x67, 0x35, 0x9e, 0xcc, 0x9e, 0x75, 0x4a, 0xb6, 0x31, 0x7b, 0xef, - 0xca, 0x68, 0x16, 0xf9, 0xa5, 0x1c, 0xcc, 0x70, 0x1f, 0x7f, 0xbd, 0xb1, 0x7d, 0xfd, 0xb6, 0xeb, - 0x4f, 0xa6, 0xb1, 0xcf, 0x89, 0xbc, 0x01, 0xd9, 0x6d, 0x4d, 0x37, 0x8a, 0x7c, 0x0f, 0x80, 0x5a, - 0x51, 0xe1, 0x3c, 0xe0, 0x52, 0x7b, 0x2e, 0x63, 0x17, 0x50, 0x48, 0x71, 0x8c, 0xe3, 0x48, 0xd1, - 0x19, 0x59, 0x73, 0x14, 0x94, 0xfc, 0x0d, 0x98, 0x63, 0xeb, 0x45, 0x41, 0x44, 0x44, 0x92, 0xf9, - 0x71, 0xac, 0xe5, 0xf3, 0xbd, 0x65, 0xa2, 0x8b, 0x59, 0x64, 0x3c, 0x5e, 0x61, 0x9c, 0x79, 0x30, - 0xd2, 0x9d, 0x97, 0x33, 0x2b, 0xc2, 0x40, 0x3f, 0xd8, 0x7a, 0x1e, 0x87, 0xb8, 0xc7, 0xfe, 0x76, - 0x52, 0xae, 0x05, 0xbe, 0xbf, 0x85, 0xa6, 0xf3, 0x1d, 0x82, 0xc8, 0x97, 0x81, 0x28, 0xe7, 0x78, - 0x0e, 0xa3, 0x32, 0x46, 0x31, 0x57, 0x1b, 0xc7, 0x4e, 0xf6, 0x81, 0x2c, 0xd6, 0x27, 0x49, 0x9a, - 0x98, 0x50, 0x98, 0x13, 0x1f, 0xcd, 0xa0, 0x32, 0xb9, 0x49, 0x38, 0x3f, 0x65, 0xc4, 0x7b, 0x89, - 0x4b, 0xe2, 0x14, 0x85, 0x5a, 0x86, 0x14, 0x43, 0xe5, 0x94, 0xc5, 0x8e, 0x5c, 0x85, 0x31, 0xf4, - 0x80, 0x5b, 0x93, 0x46, 0x5b, 0xc2, 0x80, 0x04, 0x7d, 0xe5, 0x9c, 0x3d, 0xd3, 0xf4, 0x2a, 0x46, - 0x65, 0xd7, 0x81, 0x4a, 0xb0, 0x6f, 0x77, 0xdb, 0xa8, 0xdc, 0x15, 0xfa, 0x8e, 0x46, 0xb0, 0xef, - 0x04, 0x5d, 0xd3, 0x45, 0x12, 0x91, 0xc8, 0x37, 0x60, 0xfc, 0x96, 0xfb, 0x48, 0xea, 0x76, 0x85, - 0x02, 0x77, 0xa0, 0xe4, 0xfa, 0x2d, 0xf7, 0x91, 0xd3, 0xe8, 0x26, 0xa3, 0x25, 0xf2, 0xe4, 0xfa, - 0x1a, 0x4b, 0xf2, 0x35, 0x00, 0x4d, 0xe3, 0x4c, 0x0e, 0xad, 0xe0, 0x79, 0x19, 0xc5, 0x28, 0x53, - 0x13, 0x8d, 0xfc, 0x35, 0x86, 0x09, 0xc9, 0x61, 0xee, 0xd3, 0x93, 0x1c, 0x8e, 0x7d, 0x7a, 0x92, - 0xc3, 0xc2, 0x36, 0x9c, 0xec, 0xb9, 0x74, 0x32, 0x82, 0x4b, 0x5e, 0x32, 0x83, 0x4b, 0x9e, 0xec, - 0x75, 0xc4, 0x86, 0x66, 0x28, 0xea, 0xd9, 0xd2, 0x5c, 0x6f, 0xe9, 0xe4, 0xbb, 0xf9, 0xc4, 0x91, - 0x2b, 0x2e, 0x16, 0x3c, 0x0d, 0x42, 0x2f, 0x99, 0x24, 0x8f, 0x29, 0xeb, 0xf8, 0xa1, 0x9c, 0x8f, - 0x2f, 0x34, 0x89, 0x2c, 0xbf, 0xfc, 0x78, 0xfe, 0xa4, 0xa7, 0xef, 0x5b, 0x30, 0xc5, 0x93, 0x55, - 0xdd, 0xa4, 0xfb, 0x0f, 0xfd, 0xa0, 0x21, 0x53, 0xb9, 0xa2, 0x0c, 0x9e, 0x4a, 0x11, 0x99, 0xc0, - 0x25, 0x15, 0xe9, 0x54, 0x35, 0x8c, 0xb5, 0x9f, 0xcc, 0xdc, 0xc5, 0x18, 0x42, 0x3f, 0x7f, 0x2b, - 0xf2, 0xba, 0x12, 0xd4, 0x68, 0xa0, 0x07, 0xa4, 0x0e, 0x24, 0x30, 0x43, 0x5e, 0xa3, 0x81, 0xf5, - 0x07, 0x05, 0x20, 0xbc, 0xa6, 0x15, 0xb7, 0xe3, 0xa2, 0xcb, 0xa1, 0x87, 0xa1, 0x33, 0x4a, 0x02, - 0xc7, 0xdd, 0x6e, 0x52, 0x3d, 0xee, 0x8c, 0x30, 0x92, 0x55, 0x65, 0x4e, 0xf2, 0xa2, 0x93, 0x22, - 0xec, 0xb1, 0xd5, 0xe5, 0x3f, 0xc9, 0x56, 0xf7, 0x0d, 0x78, 0xb6, 0xdc, 0xc1, 0xac, 0x77, 0xb2, - 0x96, 0x6b, 0x7e, 0x20, 0x37, 0x29, 0xc3, 0x99, 0xc5, 0x55, 0x68, 0xa9, 0x96, 0xf6, 0x63, 0xa1, - 0xc9, 0x29, 0x6c, 0x5e, 0x76, 0x22, 0xdd, 0x39, 0x5a, 0xca, 0x29, 0x1d, 0x2c, 0xc9, 0x90, 0x53, - 0x38, 0x89, 0xe4, 0xe1, 0x05, 0x52, 0x4e, 0xc1, 0x74, 0x0e, 0x31, 0x0f, 0x2f, 0xa0, 0x3d, 0x64, - 0x1d, 0x45, 0x42, 0xde, 0x82, 0xf1, 0x72, 0x37, 0xf2, 0x05, 0x63, 0x61, 0xdd, 0x1d, 0xdb, 0x61, - 0x8b, 0xa6, 0x18, 0x57, 0x9f, 0x18, 0xdd, 0xfa, 0xe3, 0x02, 0x9c, 0x4c, 0x0f, 0xaf, 0x28, 0x55, - 0xeb, 0x23, 0x77, 0xc8, 0xfa, 0xc8, 0x9a, 0x0d, 0xfc, 0xb1, 0xe0, 0x89, 0xcd, 0x06, 0x9e, 0x3c, - 0xef, 0x63, 0xce, 0x86, 0x1a, 0x8c, 0xeb, 0xe7, 0xdd, 0xd0, 0xc7, 0x3d, 0xef, 0x74, 0x2e, 0xec, - 0x52, 0xcf, 0x7d, 0xc2, 0x87, 0xe3, 0xa7, 0xa3, 0xa4, 0x3b, 0x38, 0xc7, 0x20, 0xff, 0x06, 0x9c, - 0xe1, 0x7b, 0x52, 0xf2, 0x63, 0x97, 0xf7, 0x25, 0x47, 0x31, 0x70, 0x4b, 0x8f, 0x0f, 0x16, 0x2f, - 0x72, 0x55, 0x89, 0x93, 0xea, 0x36, 0x67, 0x7b, 0xdf, 0x91, 0x2d, 0xd3, 0x2a, 0x39, 0x94, 0x37, - 0x66, 0xcc, 0xd3, 0xb2, 0x99, 0xbd, 0x96, 0xe5, 0xf6, 0xc2, 0xe3, 0xa7, 0x72, 0xb0, 0xe9, 0xf1, - 0x22, 0xd5, 0x61, 0xf9, 0x4c, 0x75, 0x98, 0xd4, 0xa7, 0x14, 0x32, 0xf5, 0x29, 0x15, 0x98, 0xae, - 0x75, 0xb7, 0x65, 0xdd, 0x88, 0x38, 0x64, 0x78, 0xee, 0x65, 0x7d, 0x50, 0x92, 0xc4, 0xfa, 0x91, - 0x3c, 0x4c, 0x6c, 0x36, 0xbb, 0xbb, 0x5e, 0xbb, 0xe2, 0x46, 0xee, 0x53, 0xab, 0xa1, 0x7b, 0xc3, - 0xd0, 0xd0, 0x29, 0xef, 0x2e, 0xf5, 0x61, 0x03, 0xa9, 0xe7, 0x7e, 0x3a, 0x07, 0xd3, 0x31, 0x09, - 0x3f, 0x67, 0xd7, 0x60, 0x88, 0xfd, 0x10, 0xf7, 0xd6, 0x33, 0x29, 0xc6, 0x3c, 0x85, 0x8e, 0xfa, - 0x4b, 0xe8, 0xcc, 0xcc, 0xfc, 0x14, 0xc8, 0x61, 0xe1, 0x0b, 0x30, 0x16, 0xb3, 0x3d, 0x4a, 0xea, - 0x9c, 0x5f, 0xcd, 0x41, 0x29, 0xf9, 0x25, 0xe4, 0x26, 0x8c, 0x32, 0x4e, 0x1e, 0x95, 0x57, 0xea, - 0x17, 0x7a, 0x7c, 0xf3, 0x45, 0x81, 0xc6, 0x9b, 0x87, 0x9d, 0x4f, 0x39, 0xc4, 0x96, 0x1c, 0x16, - 0x6c, 0x98, 0xd0, 0xb1, 0x32, 0x5a, 0xf7, 0xaa, 0x29, 0x5c, 0x1c, 0xcf, 0xee, 0x07, 0x23, 0xe1, - 0x8f, 0xd1, 0x6a, 0x21, 0x37, 0x9c, 0x33, 0x26, 0x17, 0xf6, 0x55, 0x62, 0xde, 0xf0, 0x69, 0xb6, - 0x14, 0x87, 0x74, 0xd6, 0xe7, 0x59, 0xc6, 0x84, 0x56, 0x78, 0xe4, 0x55, 0x18, 0xe1, 0xf5, 0xe9, - 0xc9, 0x2a, 0x3a, 0x08, 0xd1, 0x45, 0x5c, 0x8e, 0x63, 0xfd, 0xdd, 0x02, 0x1c, 0x8f, 0x9b, 0x77, - 0xa7, 0xd3, 0x70, 0x23, 0xba, 0xe9, 0x06, 0x6e, 0x2b, 0x3c, 0x64, 0x05, 0x9c, 0x4f, 0x35, 0x0d, - 0xd3, 0x04, 0xc8, 0xa6, 0x69, 0x0d, 0xb2, 0x12, 0x0d, 0x42, 0xf5, 0x25, 0x6f, 0x90, 0x6c, 0x06, - 0xb9, 0x09, 0x85, 0x1a, 0x8d, 0xc4, 0xb6, 0x79, 0x2e, 0xd5, 0xab, 0x7a, 0xbb, 0x2e, 0xd6, 0x68, - 0xc4, 0x07, 0x91, 0xc7, 0x2a, 0xa1, 0x46, 0xac, 0xc8, 0x1a, 0x8d, 0xc8, 0x3d, 0x18, 0x59, 0x7d, - 0xd4, 0xa1, 0xf5, 0x48, 0x24, 0x7e, 0xba, 0xd0, 0x9f, 0x1f, 0xc7, 0xd5, 0xf2, 0x3e, 0x51, 0x04, - 0xe8, 0x9d, 0xc5, 0x51, 0x16, 0xae, 0x42, 0x51, 0x56, 0x7e, 0x94, 0x99, 0xbb, 0xf0, 0x06, 0x8c, - 0x6b, 0x95, 0x1c, 0x69, 0xd2, 0xff, 0x3c, 0xdb, 0x57, 0xfd, 0xa6, 0xcc, 0x15, 0xb5, 0x9a, 0x12, - 0xf3, 0x72, 0xb1, 0x8f, 0x31, 0x17, 0xf3, 0x9c, 0xfb, 0xa2, 0xa8, 0x8f, 0xbc, 0x57, 0x85, 0xe9, - 0xda, 0x7d, 0xaf, 0x13, 0x87, 0xec, 0x33, 0x0e, 0x53, 0x8c, 0x71, 0x2f, 0xee, 0xdc, 0xc9, 0xc3, - 0x34, 0x49, 0x67, 0xfd, 0x45, 0x0e, 0x46, 0xd8, 0x5f, 0x77, 0xaf, 0x3e, 0xa5, 0x5b, 0xe6, 0x15, - 0x63, 0xcb, 0x9c, 0xd1, 0xa2, 0xe6, 0xe2, 0xc6, 0x71, 0xf5, 0x90, 0xcd, 0xf2, 0x40, 0x0c, 0x10, - 0x47, 0x26, 0xd7, 0x61, 0x54, 0x58, 0xf5, 0x08, 0xf3, 0x6b, 0x3d, 0x0c, 0xaf, 0xb4, 0xf7, 0x51, - 0x97, 0x73, 0xbf, 0x93, 0xd4, 0x66, 0x48, 0x6a, 0x26, 0x92, 0xcb, 0xe0, 0x89, 0x46, 0x86, 0x41, - 0x1f, 0xfd, 0xe5, 0x78, 0x10, 0x59, 0x2d, 0x27, 0x68, 0x8f, 0x40, 0x04, 0x65, 0xf1, 0x90, 0x51, - 0xe8, 0xc7, 0xe4, 0xb8, 0x4c, 0xc0, 0x96, 0xf9, 0xc6, 0xf1, 0x27, 0x73, 0x3c, 0xf4, 0xaa, 0x6c, - 0xd8, 0xdb, 0x30, 0x71, 0xcd, 0x0f, 0x1e, 0xba, 0x01, 0x0f, 0xa8, 0x27, 0x2c, 0x07, 0xd8, 0xd5, - 0x71, 0x72, 0x87, 0xc3, 0x79, 0x48, 0xbe, 0x8f, 0x0e, 0x16, 0x87, 0x96, 0x7d, 0xbf, 0x69, 0x1b, - 0xe8, 0xe4, 0x36, 0x4c, 0xde, 0x72, 0x1f, 0x69, 0x97, 0x5e, 0xee, 0x00, 0x73, 0x81, 0x4d, 0x60, - 0x76, 0x6b, 0x3e, 0xdc, 0xc4, 0xca, 0xa4, 0x27, 0x1e, 0x4c, 0x6d, 0xfa, 0x41, 0x24, 0x2a, 0xf1, - 0xda, 0xbb, 0xe2, 0x63, 0xd3, 0x46, 0x62, 0x97, 0x32, 0x8d, 0xc4, 0x4e, 0x76, 0xfc, 0x20, 0x72, - 0x76, 0x14, 0xb9, 0x11, 0xe4, 0xc7, 0x60, 0x4c, 0xde, 0x86, 0x19, 0x2d, 0x88, 0xd9, 0x35, 0x3f, - 0x68, 0xb9, 0x52, 0x28, 0x47, 0x3d, 0x30, 0xda, 0x9b, 0xec, 0x20, 0xd8, 0x4e, 0x63, 0x92, 0x0f, - 0xb2, 0x5c, 0x8a, 0x86, 0x63, 0x2b, 0xb3, 0x0c, 0x97, 0xa2, 0x5e, 0x56, 0x66, 0x69, 0xe7, 0xa2, - 0xdd, 0x7e, 0x56, 0xa8, 0xc5, 0xe5, 0xcb, 0xe2, 0xfa, 0x7d, 0xb8, 0x95, 0xa9, 0x1a, 0xb7, 0x1e, - 0xd6, 0xa6, 0x4b, 0x50, 0x58, 0xde, 0xbc, 0x86, 0xaf, 0x17, 0xd2, 0xd0, 0xa6, 0xbd, 0xe7, 0xb6, - 0xeb, 0x28, 0x2c, 0x0b, 0xcb, 0x6f, 0x7d, 0x47, 0x5e, 0xde, 0xbc, 0x46, 0x5c, 0x98, 0xdd, 0xa4, - 0x41, 0xcb, 0x8b, 0xbe, 0x72, 0xf9, 0xb2, 0x36, 0x50, 0x45, 0x6c, 0xda, 0x25, 0xd1, 0xb4, 0xc5, - 0x0e, 0xa2, 0x38, 0x8f, 0x2e, 0x5f, 0xce, 0x1c, 0x0e, 0xd5, 0xb0, 0x2c, 0x5e, 0x6c, 0x67, 0xbc, - 0xe5, 0x3e, 0x8a, 0x0d, 0xf6, 0x43, 0xe1, 0x9c, 0x79, 0x4a, 0x4e, 0xac, 0xd8, 0xd8, 0xdf, 0xd8, - 0x19, 0x4d, 0x22, 0x76, 0xd7, 0x89, 0xa7, 0x57, 0x28, 0xdc, 0x5a, 0x16, 0xa4, 0x4a, 0x47, 0x7a, - 0xf0, 0xea, 0x02, 0xbb, 0x86, 0x4e, 0xee, 0xa8, 0x1b, 0x1b, 0xbf, 0xf1, 0x88, 0xf4, 0x62, 0x97, - 0xf4, 0x1b, 0x1b, 0x57, 0xa4, 0x18, 0x9f, 0x35, 0xad, 0xae, 0xf9, 0xdc, 0x83, 0xc1, 0x36, 0xb9, - 0xa4, 0x2f, 0x82, 0x13, 0x47, 0xbf, 0x08, 0x52, 0x18, 0x5a, 0xf7, 0xeb, 0xf7, 0x45, 0x64, 0xa2, - 0x2f, 0xb3, 0xe5, 0xde, 0xf4, 0xeb, 0xf7, 0x9f, 0x9c, 0x75, 0x2d, 0xb2, 0x27, 0x1b, 0xac, 0xa9, - 0x6c, 0x16, 0x88, 0x3e, 0x11, 0x16, 0x9b, 0x73, 0xea, 0x26, 0xa4, 0x95, 0x71, 0xc1, 0x87, 0x4f, - 0x1a, 0xd9, 0xb5, 0xb6, 0x49, 0x4e, 0x28, 0x94, 0x2a, 0x34, 0xbc, 0x1f, 0xf9, 0x9d, 0x95, 0xa6, - 0xd7, 0xd9, 0xf6, 0xdd, 0xa0, 0x81, 0xba, 0xbb, 0xac, 0xf5, 0xfd, 0x52, 0xe6, 0xfa, 0x9e, 0x69, - 0x70, 0x7a, 0xa7, 0x2e, 0x19, 0xd8, 0x29, 0x96, 0xe4, 0x03, 0x98, 0x62, 0x93, 0x7b, 0xf5, 0x51, - 0x44, 0xdb, 0x7c, 0xe4, 0x67, 0x50, 0x74, 0x98, 0xd3, 0xc2, 0x95, 0xab, 0x42, 0x3e, 0xa7, 0x70, - 0xb1, 0x53, 0x45, 0x60, 0x44, 0x75, 0x32, 0x58, 0x91, 0x06, 0xcc, 0xdf, 0x72, 0x1f, 0x69, 0x89, - 0xcc, 0xb4, 0x49, 0x4a, 0x70, 0x82, 0x61, 0x1e, 0x7b, 0x36, 0xc1, 0xe2, 0x80, 0xa2, 0x3d, 0xe6, - 0x6b, 0x4f, 0x4e, 0xe4, 0x7b, 0xe1, 0x84, 0xf8, 0xac, 0x0a, 0xe6, 0xf0, 0xf0, 0x83, 0xfd, 0xda, - 0x9e, 0x8b, 0xbe, 0x3a, 0xb3, 0x47, 0xdb, 0x10, 0x65, 0x87, 0x35, 0x24, 0x1f, 0x27, 0xe4, 0x8c, - 0xec, 0x5e, 0x35, 0x90, 0x0f, 0x61, 0x8a, 0x3f, 0xd9, 0xac, 0xf9, 0x61, 0x84, 0x17, 0xfa, 0xb9, - 0xa3, 0x99, 0xa0, 0xf3, 0x77, 0x20, 0xee, 0xb4, 0x91, 0x50, 0x00, 0x24, 0x38, 0x93, 0x37, 0x61, - 0x7c, 0xd3, 0x6b, 0xf3, 0xb8, 0x6b, 0xd5, 0x4d, 0x54, 0x3d, 0x8a, 0xf3, 0xa7, 0xe3, 0xb5, 0x1d, - 0x79, 0xab, 0xee, 0xa8, 0xed, 0x42, 0xc7, 0x26, 0xf7, 0x60, 0xbc, 0x56, 0x5b, 0xbb, 0xe6, 0xb1, - 0x03, 0xb0, 0xb3, 0x3f, 0x7f, 0xbc, 0x47, 0x2b, 0xcf, 0x66, 0xb6, 0x72, 0x32, 0x0c, 0xf7, 0x30, - 0xd1, 0xb4, 0x53, 0xf7, 0x3b, 0xfb, 0xb6, 0xce, 0x29, 0xc3, 0x2c, 0xfb, 0xc4, 0x13, 0x36, 0xcb, - 0xae, 0xc2, 0xb4, 0x66, 0x60, 0x89, 0xc6, 0x95, 0xf3, 0x71, 0x98, 0x31, 0xdd, 0x0c, 0x3b, 0xe9, - 0x86, 0x98, 0xa4, 0x93, 0xf6, 0xd8, 0x27, 0x8f, 0x6a, 0x8f, 0xed, 0xc1, 0x0c, 0x1f, 0x0c, 0x31, - 0x0f, 0x70, 0xa4, 0x17, 0x7a, 0xf4, 0xe1, 0x85, 0xcc, 0x3e, 0x9c, 0x15, 0x23, 0x2d, 0x27, 0x19, - 0x3e, 0x51, 0xa6, 0xb9, 0x92, 0x1d, 0x20, 0x02, 0x28, 0xd2, 0x5c, 0x63, 0x5d, 0xcf, 0xf6, 0xa8, - 0xeb, 0x85, 0xcc, 0xba, 0xa6, 0x64, 0x5d, 0xdb, 0xbc, 0x9a, 0x0c, 0x8e, 0xa4, 0x2d, 0xeb, 0x91, - 0xf3, 0x0b, 0x3b, 0xf6, 0x39, 0x43, 0x0f, 0x9a, 0x46, 0xe0, 0x41, 0x4f, 0x93, 0x93, 0x36, 0xd9, - 0xef, 0x19, 0x9c, 0xc9, 0x23, 0x38, 0x9e, 0x6e, 0x05, 0xd6, 0x79, 0x0a, 0xeb, 0x3c, 0x65, 0xd4, - 0x99, 0x44, 0xe2, 0xf3, 0xc6, 0xfc, 0xac, 0x64, 0xad, 0x3d, 0xf8, 0x93, 0x1f, 0xca, 0xc1, 0x89, - 0x5b, 0xd7, 0xca, 0x98, 0xa8, 0xca, 0xe3, 0x61, 0x78, 0x94, 0xfb, 0xe6, 0x69, 0xa1, 0x2b, 0x4f, - 0xea, 0xef, 0xa5, 0xc4, 0x81, 0x5b, 0x05, 0x93, 0x11, 0xcf, 0xb6, 0x76, 0x5c, 0x9e, 0xff, 0x4a, - 0xb0, 0xc8, 0xf0, 0xf1, 0xfc, 0xce, 0x1f, 0x2e, 0xe6, 0xec, 0x5e, 0x55, 0xdd, 0x18, 0x2a, 0x4e, - 0x96, 0xa6, 0xb2, 0x0c, 0xbe, 0x7f, 0x33, 0x9f, 0x38, 0x3b, 0x48, 0x15, 0x46, 0xc5, 0x94, 0x10, - 0xc2, 0x74, 0x7a, 0xe0, 0x4f, 0x65, 0x0e, 0xfc, 0xa8, 0x98, 0x5d, 0xb6, 0xa4, 0x27, 0x0f, 0x19, - 0x2b, 0xb4, 0xcc, 0x17, 0xb7, 0x8f, 0xaf, 0xf1, 0xa3, 0x01, 0x41, 0xc6, 0x21, 0x58, 0x39, 0xba, - 0x5f, 0x92, 0xe9, 0xf6, 0x86, 0xa7, 0xa1, 0xac, 0x8d, 0xdc, 0xe7, 0x09, 0x16, 0x0a, 0xca, 0xb9, - 0xc5, 0xcc, 0xa6, 0xf0, 0xc4, 0x2a, 0x64, 0xb5, 0x58, 0xbf, 0x91, 0x83, 0x49, 0xe3, 0xf0, 0x21, - 0x57, 0x35, 0xcf, 0xad, 0xd8, 0x99, 0xd9, 0xc0, 0xc1, 0xfd, 0x28, 0xe9, 0xd3, 0x75, 0x55, 0x98, - 0x6f, 0xe7, 0x7b, 0xd3, 0x65, 0x26, 0x9d, 0xef, 0xaf, 0xab, 0x53, 0x69, 0x9b, 0x86, 0x7a, 0xa4, - 0x6d, 0xfa, 0xb5, 0x67, 0x61, 0xca, 0xbc, 0x9d, 0x90, 0x57, 0x61, 0x04, 0x55, 0x9c, 0xf2, 0xaa, - 0xcb, 0x53, 0x33, 0x23, 0xc4, 0x48, 0xcd, 0x8c, 0x10, 0xf2, 0x22, 0x80, 0xb2, 0xa3, 0x95, 0x0a, - 0xfe, 0xe1, 0xc7, 0x07, 0x8b, 0xb9, 0xd7, 0x6c, 0xad, 0x80, 0x7c, 0x1d, 0x60, 0xc3, 0x6f, 0x50, - 0x95, 0x5a, 0xae, 0xcf, 0x23, 0xf6, 0x4b, 0xa9, 0xe0, 0xe3, 0xc7, 0xda, 0x7e, 0x83, 0xa6, 0x23, - 0x8d, 0x6b, 0x1c, 0xc9, 0x97, 0x60, 0xd8, 0xee, 0xb2, 0x6b, 0x35, 0xd7, 0x68, 0x8c, 0xcb, 0x43, - 0xa0, 0xdb, 0xa4, 0xf1, 0x9d, 0x2d, 0xe8, 0x26, 0xed, 0xb3, 0x18, 0x80, 0xbc, 0xcb, 0x83, 0x92, - 0x8b, 0x18, 0x62, 0xc3, 0xf1, 0x93, 0x87, 0x26, 0x1c, 0xa4, 0xa2, 0x88, 0x69, 0x24, 0xe4, 0x36, - 0x8c, 0xea, 0xba, 0x7a, 0xcd, 0x05, 0x58, 0x7f, 0xcf, 0xd1, 0x2e, 0x80, 0x22, 0x27, 0x5d, 0x52, - 0x8d, 0x2f, 0xb9, 0x90, 0xb7, 0x60, 0x8c, 0xb1, 0x67, 0x3b, 0x49, 0x28, 0x04, 0x7f, 0x7c, 0xd8, - 0xd0, 0x1a, 0xc4, 0x36, 0x22, 0x23, 0xd2, 0x97, 0x22, 0x20, 0x1f, 0x60, 0xda, 0x35, 0xd1, 0xd5, - 0x7d, 0x8d, 0x1b, 0xce, 0xa5, 0xba, 0x1a, 0xf3, 0xb0, 0xa5, 0x73, 0x0e, 0x2b, 0x7e, 0x64, 0x57, - 0x45, 0xa0, 0x1a, 0x24, 0x90, 0xfc, 0xcb, 0xa9, 0x0a, 0xe6, 0x65, 0x50, 0xa5, 0x74, 0x8a, 0x40, - 0x83, 0x2f, 0xe9, 0x40, 0x29, 0x96, 0xbb, 0x44, 0x5d, 0xd0, 0xaf, 0xae, 0xd7, 0x52, 0x75, 0xe9, - 0x03, 0x98, 0xaa, 0x2e, 0xc5, 0x9d, 0x34, 0x60, 0x4a, 0xee, 0xe1, 0xa2, 0xbe, 0xf1, 0x7e, 0xf5, - 0xbd, 0x98, 0xaa, 0x6f, 0xb6, 0xb1, 0x9d, 0xae, 0x27, 0xc1, 0x93, 0xbc, 0x05, 0x93, 0x12, 0x82, - 0xeb, 0x43, 0x24, 0x37, 0x46, 0xe5, 0x4c, 0x63, 0x1b, 0x2d, 0xf7, 0xcd, 0xc4, 0x89, 0x3a, 0xb2, - 0x4e, 0xcd, 0x67, 0xc7, 0xa4, 0x41, 0x9d, 0x9c, 0x15, 0x26, 0x32, 0x79, 0x1f, 0xc6, 0xab, 0x2d, - 0xf6, 0x21, 0x7e, 0xdb, 0x8d, 0xa8, 0x70, 0x0f, 0x93, 0x86, 0x1a, 0x5a, 0x89, 0x36, 0x55, 0x79, - 0x2a, 0xc2, 0xb8, 0xc8, 0x48, 0x45, 0x18, 0x83, 0x59, 0xe7, 0xf1, 0xc7, 0x19, 0x31, 0x87, 0xa5, - 0xeb, 0xd8, 0xa9, 0x0c, 0x63, 0x09, 0x8d, 0xbd, 0x88, 0xd5, 0xc7, 0xa0, 0xf2, 0x71, 0x24, 0x11, - 0xab, 0x4f, 0xe7, 0x49, 0xde, 0x86, 0x71, 0x91, 0x63, 0xa3, 0x6c, 0x6f, 0x84, 0xf3, 0x25, 0xfc, - 0x78, 0x74, 0x78, 0x97, 0xe9, 0x38, 0x1c, 0x37, 0x48, 0x58, 0x05, 0xc6, 0xf8, 0xe4, 0x2b, 0x30, - 0x77, 0xcf, 0x6b, 0x37, 0xfc, 0x87, 0xa1, 0x38, 0xa6, 0xc4, 0x46, 0x37, 0x13, 0xfb, 0xe4, 0x3c, - 0xe4, 0xe5, 0x4a, 0x5c, 0x4a, 0x6d, 0x7c, 0x99, 0x1c, 0xc8, 0x5f, 0x4f, 0x71, 0xe6, 0x33, 0x88, - 0xf4, 0x9b, 0x41, 0x4b, 0xa9, 0x19, 0x94, 0xae, 0x3e, 0x39, 0x9d, 0x32, 0xab, 0x21, 0x3e, 0x10, - 0xf3, 0x7c, 0xbf, 0xe1, 0x7b, 0xed, 0xf9, 0x59, 0xdc, 0x0b, 0x9f, 0x4d, 0xba, 0x98, 0x23, 0xde, - 0xa6, 0xdf, 0xf4, 0xea, 0xfb, 0x98, 0xdc, 0xff, 0x74, 0x52, 0x2c, 0xfe, 0xd0, 0x37, 0x54, 0xd7, - 0x19, 0xac, 0xc9, 0xfb, 0x30, 0xc1, 0xfe, 0x57, 0xf7, 0xf6, 0x39, 0xc3, 0xbc, 0x4e, 0xc3, 0x14, - 0xf5, 0xe0, 0x18, 0x61, 0x12, 0x90, 0x8c, 0x2b, 0xbd, 0xc1, 0x8a, 0xbc, 0x01, 0xc0, 0x04, 0x38, - 0xb1, 0x1d, 0x1f, 0x8b, 0x43, 0x23, 0xa2, 0xd8, 0x97, 0xde, 0x88, 0x63, 0x64, 0xf2, 0x16, 0x8c, - 0xb3, 0x5f, 0xb5, 0x6e, 0xc3, 0x67, 0x6b, 0xe3, 0x38, 0xd2, 0x72, 0xaf, 0x3b, 0x46, 0x1b, 0x72, - 0xb8, 0xe1, 0x75, 0x17, 0xa3, 0x93, 0x35, 0x98, 0xc6, 0x10, 0x96, 0xd5, 0x06, 0x6d, 0x47, 0xf8, - 0x68, 0x3a, 0x7f, 0x42, 0x7b, 0x54, 0x66, 0x45, 0x8e, 0xa7, 0xca, 0x74, 0x71, 0x3f, 0x41, 0x46, - 0x42, 0x98, 0x8d, 0x77, 0x97, 0xf8, 0x89, 0x7a, 0x1e, 0x3b, 0x49, 0x0a, 0xb9, 0x69, 0x0c, 0xbe, - 0x1f, 0xb3, 0x11, 0xd1, 0x36, 0x2e, 0xa9, 0xe0, 0xd7, 0x2b, 0xcc, 0xe2, 0x4e, 0x6c, 0x20, 0xd7, - 0x57, 0x36, 0x93, 0x31, 0x1e, 0x4f, 0xe2, 0x17, 0xe0, 0x30, 0xef, 0xd6, 0xe3, 0xa4, 0x97, 0x19, - 0x71, 0x1e, 0x33, 0xa8, 0xc9, 0xb7, 0xe0, 0x98, 0xdc, 0x41, 0x44, 0x91, 0x98, 0xd7, 0x0b, 0x47, - 0xdc, 0x89, 0x1b, 0xdb, 0xaa, 0xea, 0xd4, 0x94, 0xce, 0xae, 0x82, 0xb8, 0x30, 0x8e, 0xc3, 0x2a, - 0x6a, 0x7c, 0xb6, 0x5f, 0x8d, 0xe7, 0x53, 0x35, 0x1e, 0xc7, 0x89, 0x92, 0xae, 0x4c, 0xe7, 0x49, - 0x96, 0x61, 0x52, 0xac, 0x23, 0x31, 0xdb, 0x9e, 0xc3, 0xde, 0x42, 0x3d, 0x8f, 0x5c, 0x81, 0xa9, - 0x09, 0x67, 0x92, 0xe8, 0x3b, 0x32, 0x57, 0xec, 0x9f, 0x32, 0x76, 0xe4, 0xa4, 0x3e, 0xdf, 0x44, - 0x66, 0x3b, 0x52, 0x2c, 0xc5, 0xac, 0x3e, 0xea, 0x04, 0x42, 0x8b, 0x73, 0x3a, 0x4e, 0x7d, 0xa0, - 0x09, 0x3f, 0x0e, 0x55, 0x18, 0xfa, 0x96, 0x90, 0xc5, 0x81, 0xdc, 0x81, 0x59, 0x75, 0x6a, 0x6b, - 0x8c, 0x17, 0xe3, 0x14, 0x12, 0xf1, 0x51, 0x9f, 0xcd, 0x37, 0x8b, 0x9e, 0xb8, 0x70, 0xc2, 0x38, - 0xa7, 0x35, 0xd6, 0x67, 0x90, 0x35, 0x26, 0x59, 0x35, 0x0f, 0xf9, 0x6c, 0xf6, 0xbd, 0xf8, 0x90, - 0x0f, 0x61, 0x21, 0x79, 0x36, 0x6b, 0xb5, 0x3c, 0x8f, 0xb5, 0xbc, 0xfc, 0xf8, 0x60, 0xf1, 0x5c, - 0xea, 0x78, 0xcf, 0xae, 0xa8, 0x0f, 0x37, 0xf2, 0x75, 0x98, 0x37, 0xcf, 0x67, 0xad, 0x26, 0x0b, - 0x6b, 0xc2, 0xa5, 0xa3, 0x0e, 0xf6, 0xec, 0x1a, 0x7a, 0xf2, 0x20, 0x11, 0x2c, 0x66, 0xce, 0x6e, - 0xad, 0x9a, 0xb3, 0xf1, 0x07, 0xa5, 0x56, 0x49, 0x76, 0x75, 0x87, 0xb1, 0x24, 0x0f, 0xe1, 0x74, - 0xd6, 0x31, 0xa1, 0x55, 0xfa, 0x82, 0xd2, 0x93, 0xbe, 0x92, 0x7d, 0xe4, 0x64, 0xd7, 0x7c, 0x08, - 0x5b, 0xf2, 0x01, 0x1c, 0xd3, 0xd6, 0x97, 0x56, 0xdf, 0x8b, 0x58, 0x1f, 0x7a, 0xd4, 0xea, 0x0b, - 0x33, 0xbb, 0x96, 0x6c, 0x1e, 0xa4, 0x05, 0xb3, 0xf2, 0xc3, 0x51, 0x21, 0x2d, 0x8e, 0x9e, 0x73, - 0xc6, 0xae, 0x9a, 0xc6, 0xd0, 0xb2, 0x53, 0x6f, 0x3b, 0x9d, 0x98, 0x50, 0x9f, 0xe9, 0x19, 0x7c, - 0xc9, 0x1a, 0x8c, 0xd4, 0x36, 0xab, 0xd7, 0xae, 0xad, 0xce, 0xbf, 0x84, 0x35, 0x48, 0xf7, 0x1b, - 0x0e, 0x34, 0x2e, 0x4d, 0xc2, 0xea, 0xab, 0xe3, 0xed, 0xec, 0x18, 0x5e, 0x4e, 0x1c, 0xf5, 0xc6, - 0x50, 0xf1, 0x7c, 0xe9, 0xc2, 0x8d, 0xa1, 0xe2, 0x85, 0xd2, 0xcb, 0xf6, 0x73, 0xd9, 0x89, 0x85, - 0xf9, 0xc7, 0xda, 0xe7, 0xfa, 0x95, 0xc6, 0x5d, 0x61, 0xfd, 0x7c, 0x0e, 0x66, 0x33, 0xda, 0x41, - 0xce, 0xc1, 0x10, 0xe6, 0x64, 0xd0, 0xde, 0xb9, 0x13, 0xb9, 0x18, 0xb0, 0x9c, 0x7c, 0x0e, 0x46, - 0x2b, 0x1b, 0xb5, 0x5a, 0x79, 0x43, 0x5e, 0xd9, 0xf8, 0x76, 0xd5, 0x0e, 0x9d, 0xd0, 0x35, 0x9f, - 0xc7, 0x04, 0x1a, 0x79, 0x0d, 0x46, 0xaa, 0x9b, 0x48, 0xc0, 0x0d, 0xad, 0xf0, 0x0a, 0xe3, 0x75, - 0x92, 0xf8, 0x02, 0xc9, 0xfa, 0xd1, 0x1c, 0x90, 0x74, 0xa7, 0x92, 0xcb, 0x30, 0xae, 0x0f, 0x1d, - 0xbf, 0x60, 0xe2, 0x53, 0x8e, 0x36, 0x30, 0xb6, 0x8e, 0x43, 0x2a, 0x30, 0x8c, 0x39, 0xa4, 0xd4, - 0xbb, 0x5c, 0xe6, 0x01, 0x70, 0x22, 0x75, 0x00, 0x0c, 0x63, 0x86, 0x2a, 0x9b, 0x13, 0x5b, 0xbf, - 0x93, 0x03, 0x92, 0x3e, 0x34, 0x07, 0xb6, 0x0b, 0x78, 0x5d, 0x73, 0x94, 0xd5, 0xa3, 0xae, 0xab, - 0x94, 0x19, 0xfa, 0x65, 0x29, 0x76, 0xa9, 0x3d, 0x67, 0x5c, 0xce, 0x7b, 0x7b, 0x57, 0x5d, 0x80, - 0xe1, 0xbb, 0x34, 0xd8, 0x96, 0x36, 0x84, 0x68, 0x77, 0xf4, 0x80, 0x01, 0xf4, 0xcb, 0x2a, 0x62, - 0x58, 0x7f, 0x9c, 0x83, 0xb9, 0x2c, 0x49, 0xee, 0x10, 0x27, 0x28, 0x2b, 0xe1, 0xbf, 0x85, 0x36, - 0x01, 0xdc, 0x28, 0x49, 0x79, 0x6d, 0x2d, 0xc2, 0x30, 0xfb, 0x58, 0x39, 0xc2, 0xa8, 0x2c, 0x60, - 0xbd, 0x11, 0xda, 0x1c, 0xce, 0x10, 0x78, 0x60, 0xa7, 0x21, 0x8c, 0x09, 0x86, 0x08, 0x28, 0x28, - 0xd8, 0x1c, 0xce, 0x10, 0x6e, 0xf9, 0x0d, 0x95, 0x3e, 0x15, 0x11, 0x5a, 0x0c, 0x60, 0x73, 0x38, - 0x39, 0x07, 0xa3, 0xb7, 0xdb, 0xeb, 0xd4, 0x7d, 0x20, 0xb3, 0x7e, 0xa0, 0x0d, 0x83, 0xdf, 0x76, - 0x9a, 0x0c, 0x66, 0xcb, 0x42, 0xeb, 0xa7, 0x73, 0x30, 0x93, 0x12, 0x22, 0x0f, 0xf7, 0xf3, 0xea, - 0xef, 0x70, 0x31, 0xc8, 0xf7, 0xf1, 0xe6, 0x0f, 0x65, 0x37, 0xdf, 0xfa, 0xbf, 0x87, 0xe0, 0x44, - 0x8f, 0x3b, 0x7d, 0xec, 0x10, 0x96, 0x3b, 0xd4, 0x21, 0xec, 0xab, 0xec, 0x0e, 0xed, 0x7a, 0xad, - 0x70, 0xcb, 0x8f, 0x5b, 0x1c, 0xdb, 0x95, 0x63, 0x99, 0xcc, 0x20, 0x2b, 0x0d, 0x90, 0x4f, 0xf2, - 0x2c, 0xde, 0x4e, 0xe4, 0xa7, 0x45, 0x0a, 0x83, 0x59, 0xca, 0x25, 0xab, 0xf0, 0x97, 0xc4, 0x25, - 0xcb, 0x74, 0x12, 0x18, 0x7a, 0xa2, 0x4e, 0x02, 0xd9, 0x06, 0x86, 0xc3, 0x9f, 0xc4, 0xdc, 0x74, - 0x05, 0x26, 0xb9, 0x11, 0x47, 0x39, 0xe4, 0x83, 0x34, 0x92, 0x32, 0xfc, 0x70, 0xc3, 0xf4, 0x58, - 0x18, 0x34, 0x64, 0xcd, 0x34, 0x68, 0x1f, 0xc5, 0xc7, 0xa7, 0x73, 0xbd, 0x0d, 0xd6, 0x8d, 0x47, - 0x67, 0x9d, 0xd4, 0xfa, 0xe9, 0xbc, 0xe9, 0xaf, 0xf5, 0x97, 0x71, 0xe6, 0x5d, 0x80, 0xe1, 0x7b, - 0x7b, 0x34, 0x90, 0xfb, 0x1d, 0x36, 0xe4, 0x21, 0x03, 0xe8, 0x0d, 0x41, 0x0c, 0x72, 0x0d, 0xa6, - 0x36, 0xf9, 0x48, 0xc8, 0xee, 0x1d, 0x8a, 0xaf, 0x5a, 0x1d, 0xa1, 0x10, 0xc8, 0xe8, 0xdf, 0x04, - 0x95, 0x75, 0x1d, 0x4e, 0x19, 0x0b, 0x52, 0xc4, 0x97, 0xe0, 0x76, 0xe5, 0xfc, 0x44, 0x9c, 0x8a, - 0x2d, 0xe9, 0xe3, 0xdd, 0xc3, 0x4e, 0x40, 0xad, 0x1d, 0x38, 0xdd, 0x97, 0x11, 0x3b, 0x88, 0xa0, - 0xa3, 0x7e, 0x25, 0x8c, 0xdf, 0xfa, 0x92, 0xda, 0x1a, 0x9d, 0xf5, 0xbd, 0x30, 0xa1, 0xf7, 0x32, - 0xee, 0xa9, 0xec, 0xb7, 0xd8, 0xd4, 0xf8, 0x9e, 0xca, 0x00, 0x36, 0x87, 0x1f, 0x9a, 0x79, 0x3f, - 0x1e, 0xfe, 0xc2, 0x61, 0xc3, 0xcf, 0x2a, 0xc7, 0x25, 0xab, 0x55, 0x8e, 0xbf, 0xf5, 0xca, 0x31, - 0x80, 0x84, 0xcd, 0xe1, 0x4f, 0xb4, 0xf2, 0xdf, 0x96, 0xb9, 0x0f, 0xd0, 0x6c, 0x5d, 0xde, 0x89, - 0xe3, 0xcc, 0xa6, 0xb3, 0x59, 0x37, 0xdd, 0x18, 0x33, 0x3e, 0x24, 0xf3, 0x87, 0x1d, 0x92, 0x47, - 0x99, 0x88, 0x97, 0x60, 0xb4, 0x2c, 0x9e, 0x86, 0x87, 0x62, 0xc1, 0xc6, 0x4d, 0xbd, 0x03, 0x4b, - 0x2c, 0xeb, 0x3b, 0x39, 0x38, 0x96, 0xa9, 0x2a, 0x63, 0xb5, 0x72, 0x9d, 0x9c, 0xb6, 0x0e, 0x93, - 0x0a, 0x39, 0x8e, 0x71, 0x14, 0xef, 0xe1, 0xc1, 0xbf, 0xc5, 0x7a, 0x1e, 0xc6, 0xd4, 0x43, 0x0d, - 0x99, 0x93, 0x43, 0x87, 0xf6, 0x42, 0x52, 0xdf, 0x5f, 0x03, 0x60, 0x2d, 0x78, 0xa2, 0xd6, 0x6d, - 0xd6, 0x6f, 0xe7, 0x79, 0x5e, 0xac, 0xa7, 0x36, 0xa0, 0x5f, 0xb6, 0x49, 0x1a, 0xfb, 0xa4, 0xde, - 0x61, 0xfc, 0xc8, 0x2a, 0x8c, 0xd4, 0x22, 0x37, 0xea, 0x4a, 0xa7, 0xe7, 0x59, 0x9d, 0x0c, 0x0b, - 0xee, 0x2e, 0xc5, 0x6e, 0xaf, 0x21, 0x42, 0x8c, 0xcb, 0x01, 0x42, 0x34, 0xcb, 0x36, 0x0f, 0x26, - 0x74, 0x5a, 0xf2, 0x3e, 0x4c, 0xc9, 0x28, 0x65, 0xdc, 0x13, 0x5c, 0x3c, 0x2a, 0x49, 0x1b, 0x09, - 0x19, 0xa5, 0x4c, 0xf7, 0x1c, 0x37, 0xf0, 0xf5, 0x9d, 0xba, 0xa3, 0x23, 0x5b, 0x7f, 0x3a, 0xc2, - 0xe7, 0x81, 0x08, 0x37, 0xb8, 0x0d, 0x53, 0xb7, 0xab, 0x95, 0x15, 0x4d, 0xf1, 0x65, 0x66, 0xab, - 0x58, 0x7d, 0x14, 0xd1, 0xa0, 0xed, 0x36, 0x05, 0xc2, 0x7e, 0x7c, 0x36, 0xf8, 0x5e, 0xa3, 0x9e, - 0xad, 0x14, 0x4b, 0x70, 0x64, 0x75, 0xf0, 0xcb, 0x8d, 0xaa, 0x23, 0x3f, 0x60, 0x1d, 0xa1, 0xdb, - 0x6a, 0xf6, 0xa8, 0xc3, 0xe4, 0x48, 0xf6, 0xa0, 0x74, 0x1d, 0xe5, 0x18, 0xad, 0x96, 0x42, 0xff, - 0x5a, 0xce, 0x8a, 0x5a, 0x9e, 0xe5, 0x02, 0x50, 0x76, 0x3d, 0x29, 0xae, 0xf1, 0x02, 0x1e, 0x3a, - 0x74, 0x01, 0xff, 0xcd, 0x1c, 0x8c, 0x70, 0x41, 0x49, 0xcc, 0xaf, 0x1e, 0xa2, 0xd8, 0xbd, 0x27, - 0x23, 0x8a, 0x95, 0x70, 0x03, 0x37, 0x66, 0x1a, 0x2f, 0x23, 0x95, 0xc4, 0x84, 0x95, 0x96, 0x92, - 0xa8, 0xc2, 0xe6, 0x25, 0x87, 0xcf, 0x57, 0x52, 0x8d, 0x3d, 0x84, 0x47, 0x0f, 0x75, 0x42, 0x93, - 0x5e, 0xd5, 0xa3, 0xc2, 0x43, 0xd8, 0xf4, 0x0b, 0x5e, 0x87, 0x31, 0xe1, 0x77, 0xbc, 0xbc, 0x2f, - 0x1e, 0xaa, 0x4a, 0xc6, 0x6b, 0x7c, 0x63, 0x79, 0x3f, 0x16, 0x02, 0x85, 0xe7, 0xb2, 0xb3, 0xbd, - 0x6f, 0xe4, 0xff, 0x92, 0x88, 0xe4, 0x36, 0xcf, 0x8b, 0xc3, 0x03, 0x32, 0x9a, 0x11, 0x98, 0x15, - 0x5c, 0x44, 0x34, 0x91, 0xce, 0x8b, 0x19, 0xf1, 0x17, 0x63, 0x1e, 0x64, 0x1d, 0x4a, 0x68, 0xc1, - 0x41, 0x1b, 0xdc, 0x9c, 0xa3, 0x5a, 0xe1, 0xbe, 0xad, 0xc2, 0x0a, 0x2f, 0xe2, 0x65, 0x8e, 0x30, - 0x04, 0x31, 0xdd, 0x4a, 0x52, 0x94, 0xec, 0xe2, 0x56, 0x4a, 0xce, 0x3e, 0xf2, 0x16, 0x8c, 0xab, - 0x80, 0x98, 0xca, 0xb1, 0x0d, 0x15, 0xd6, 0x71, 0x04, 0x4d, 0xc3, 0xc5, 0x4d, 0x47, 0x27, 0x4b, - 0x50, 0x64, 0x8b, 0x38, 0x99, 0x79, 0xac, 0x2b, 0x60, 0xba, 0xb5, 0xba, 0xc4, 0x23, 0x35, 0x98, - 0x65, 0x8b, 0xa6, 0xe6, 0xb5, 0x77, 0x9b, 0x74, 0xdd, 0xdf, 0xf5, 0xbb, 0xd1, 0x1d, 0x7b, 0x5d, - 0x6c, 0xae, 0x5c, 0x54, 0x76, 0x5b, 0x4d, 0xa3, 0x38, 0x30, 0xf2, 0xca, 0x66, 0x50, 0x6b, 0x7b, - 0xd8, 0x1f, 0xe6, 0x61, 0x5c, 0x9b, 0x4f, 0xe4, 0x02, 0x14, 0xab, 0xe1, 0xba, 0x5f, 0xbf, 0xaf, - 0x42, 0x5e, 0x4d, 0x3e, 0x3e, 0x58, 0x1c, 0xf3, 0x42, 0xa7, 0x89, 0x40, 0x5b, 0x15, 0x93, 0x65, - 0x98, 0xe4, 0x7f, 0xc9, 0x40, 0xe5, 0xf9, 0xd8, 0xe8, 0x8e, 0x23, 0xcb, 0x10, 0xe5, 0xfa, 0xbe, - 0x66, 0x90, 0x90, 0xaf, 0x01, 0x70, 0x00, 0x3a, 0x49, 0x16, 0x06, 0x77, 0xef, 0x14, 0x15, 0x64, - 0xb8, 0x47, 0x6a, 0x0c, 0xc9, 0x37, 0x78, 0x00, 0x4d, 0x39, 0xff, 0x87, 0x06, 0xf7, 0x4f, 0x65, - 0xfc, 0x9d, 0x6c, 0x37, 0x79, 0x9d, 0xa5, 0x88, 0xce, 0xb7, 0x60, 0xd3, 0xba, 0xff, 0x80, 0x06, - 0xfb, 0xe5, 0x08, 0x11, 0x35, 0x0c, 0xeb, 0x7f, 0xca, 0x69, 0xab, 0x86, 0x6c, 0x60, 0xb2, 0x3c, - 0x3e, 0x23, 0x84, 0xcd, 0x86, 0x12, 0xe6, 0x25, 0xdc, 0xa6, 0x3b, 0xcb, 0xcf, 0x0a, 0x9b, 0xcf, - 0x59, 0x35, 0xaf, 0x12, 0x49, 0xf4, 0x38, 0x90, 0xbc, 0x07, 0x43, 0xd8, 0x75, 0xf9, 0x43, 0x3f, - 0x4d, 0x9e, 0xa7, 0x43, 0xac, 0xcf, 0xf0, 0x43, 0x90, 0x92, 0x7c, 0x4e, 0x38, 0x98, 0xf1, 0xce, - 0x9f, 0xd2, 0x0e, 0x45, 0xd6, 0x0e, 0x75, 0x90, 0xc6, 0x91, 0x12, 0xb4, 0xd9, 0xf3, 0xef, 0xe4, - 0xa1, 0x94, 0x5c, 0xab, 0xe4, 0x5d, 0x98, 0x90, 0x27, 0x1d, 0x66, 0x53, 0x66, 0x5f, 0x39, 0x21, - 0xa2, 0x5c, 0xcb, 0xe3, 0x2e, 0x99, 0x4c, 0x59, 0x27, 0x60, 0x52, 0xc7, 0x96, 0x88, 0x5c, 0xa4, - 0xad, 0x92, 0xc8, 0x8f, 0x3a, 0x89, 0x18, 0x8c, 0x12, 0x8d, 0xbc, 0x0e, 0x85, 0x5b, 0xd7, 0xca, - 0xc2, 0x9b, 0x41, 0x6e, 0x49, 0xb7, 0xae, 0x95, 0xf9, 0x6a, 0xe6, 0xd6, 0x5a, 0xa6, 0xed, 0x18, - 0xc3, 0x27, 0xeb, 0x5a, 0x88, 0xd3, 0x11, 0x23, 0xb5, 0x91, 0x04, 0xab, 0x8f, 0x3b, 0x3c, 0xd6, - 0x29, 0x4f, 0xd3, 0x2c, 0x82, 0xfd, 0xfd, 0xfb, 0x05, 0x18, 0x53, 0xf5, 0x13, 0x02, 0x28, 0x54, - 0x89, 0x9b, 0x0c, 0xfe, 0x4d, 0x4e, 0x42, 0x51, 0xca, 0x51, 0xc2, 0xa9, 0x61, 0x34, 0x14, 0x32, - 0xd4, 0x3c, 0x48, 0x81, 0x89, 0x2f, 0x73, 0x5b, 0xfe, 0x24, 0x97, 0x41, 0x49, 0x43, 0xbd, 0xc4, - 0xa6, 0x21, 0x36, 0x60, 0xb6, 0x42, 0x23, 0x53, 0x90, 0xf7, 0x78, 0x00, 0x99, 0x31, 0x3b, 0xef, - 0x35, 0xc8, 0xbb, 0x50, 0x74, 0x1b, 0x0d, 0xda, 0x70, 0x5c, 0x69, 0xfc, 0xd0, 0x6f, 0xd2, 0x14, - 0x19, 0x37, 0x7e, 0x08, 0x20, 0x55, 0x39, 0x22, 0x65, 0x18, 0x6b, 0xba, 0xdc, 0x9e, 0xab, 0x31, - 0xc0, 0x89, 0x12, 0x73, 0x28, 0x32, 0xb2, 0x3b, 0x21, 0x6d, 0x90, 0x97, 0x60, 0x88, 0x8d, 0xa6, - 0x38, 0x42, 0xa4, 0xf8, 0xc6, 0x06, 0x93, 0x77, 0xd8, 0xda, 0x33, 0x36, 0x22, 0x90, 0x17, 0xa0, - 0xd0, 0x5d, 0xda, 0x11, 0x87, 0x43, 0x29, 0x0e, 0x37, 0xac, 0xd0, 0x58, 0x31, 0xb9, 0x02, 0xc5, - 0x87, 0x66, 0xa4, 0xda, 0x63, 0x89, 0x61, 0x54, 0xf8, 0x0a, 0x71, 0xb9, 0x08, 0x23, 0xfc, 0x20, - 0xb0, 0x4e, 0x03, 0xc4, 0x55, 0xa7, 0x7d, 0x4f, 0xac, 0xaf, 0xc1, 0x98, 0xaa, 0x92, 0x9c, 0x02, - 0xb8, 0x4f, 0xf7, 0x9d, 0x3d, 0xb7, 0xdd, 0x68, 0x72, 0xf9, 0x6e, 0xc2, 0x1e, 0xbb, 0x4f, 0xf7, - 0xd7, 0x10, 0x40, 0x4e, 0xc0, 0x68, 0x87, 0x8d, 0xaa, 0x98, 0xba, 0x13, 0xf6, 0x48, 0xa7, 0xbb, - 0xcd, 0x66, 0xe8, 0x3c, 0x8c, 0xa2, 0xe6, 0x4d, 0x2c, 0xb4, 0x49, 0x5b, 0xfe, 0xb4, 0xfe, 0xac, - 0x80, 0x59, 0x1a, 0xb4, 0x76, 0x92, 0xb3, 0x30, 0x59, 0x0f, 0x28, 0x9e, 0x39, 0x2e, 0x93, 0xa4, - 0x44, 0x3d, 0x13, 0x31, 0xb0, 0xda, 0x20, 0xe7, 0x60, 0x5a, 0x64, 0x26, 0x67, 0x0d, 0xaa, 0x6f, - 0x8b, 0xb0, 0xd2, 0x13, 0xf6, 0x24, 0x07, 0xdf, 0xa4, 0xfb, 0x2b, 0xdb, 0x18, 0xf8, 0xa8, 0xa4, - 0xc7, 0xad, 0x8c, 0x54, 0x42, 0x49, 0x7b, 0x5a, 0x83, 0xa3, 0x4d, 0xd3, 0x71, 0x18, 0x71, 0xdd, - 0xdd, 0xae, 0xc7, 0x03, 0x94, 0x4c, 0xd8, 0xe2, 0x17, 0x79, 0x05, 0x66, 0xe2, 0xf0, 0xa6, 0xf2, - 0x33, 0x86, 0xf1, 0x33, 0x4a, 0xaa, 0x60, 0x85, 0xc3, 0xc9, 0x6b, 0x40, 0xf4, 0xfa, 0xfc, 0xed, - 0x0f, 0x69, 0x9d, 0x4f, 0xb5, 0x09, 0x7b, 0x46, 0x2b, 0xb9, 0x8d, 0x05, 0xe4, 0x79, 0x98, 0x08, - 0x68, 0x88, 0x52, 0x1c, 0x76, 0x1b, 0x26, 0x31, 0xb2, 0xc7, 0x25, 0x8c, 0xf5, 0xdd, 0x79, 0x28, - 0x69, 0xdd, 0x81, 0xa1, 0x41, 0x79, 0x4c, 0x65, 0x7b, 0x2a, 0x86, 0xdb, 0x9d, 0x6a, 0x83, 0x7c, - 0x05, 0x16, 0x34, 0x4c, 0x9e, 0x4f, 0xc9, 0xa1, 0x4d, 0x6f, 0xd7, 0xdb, 0x6e, 0x52, 0x31, 0x8d, - 0xd2, 0x93, 0x55, 0xdd, 0xc1, 0xec, 0xf9, 0x98, 0x9a, 0x67, 0x5a, 0x5a, 0x15, 0xb4, 0x64, 0x1d, - 0xe6, 0x12, 0x9c, 0x69, 0xc3, 0xe9, 0x76, 0x7a, 0x46, 0x04, 0x8a, 0x79, 0x12, 0x93, 0x27, 0x6d, - 0xdc, 0xe9, 0x58, 0xcb, 0x30, 0x93, 0xda, 0x61, 0xb4, 0x64, 0xc5, 0x7c, 0xc7, 0xec, 0x9f, 0xac, - 0xd8, 0x6a, 0xc3, 0x84, 0x7e, 0x62, 0x1c, 0x12, 0x82, 0xfc, 0x38, 0x3a, 0xe2, 0xf3, 0xed, 0x74, - 0xe4, 0xf1, 0xc1, 0x62, 0xde, 0x6b, 0xa0, 0xfb, 0xfd, 0x79, 0x28, 0x4a, 0xe1, 0x46, 0xc8, 0x14, - 0xa8, 0xe1, 0x15, 0x52, 0xf5, 0xbe, 0xad, 0x4a, 0xad, 0x97, 0x60, 0x54, 0x1c, 0x0a, 0xfd, 0xf5, - 0xba, 0xd6, 0x0f, 0xe7, 0x61, 0xda, 0xa6, 0x6c, 0xcb, 0xa2, 0x3c, 0xef, 0xc0, 0x53, 0x7b, 0xcd, - 0xcc, 0x0e, 0xe7, 0x66, 0x7c, 0x5b, 0x9f, 0x88, 0xff, 0xff, 0x28, 0x07, 0xb3, 0x19, 0xb8, 0x1f, - 0x2b, 0xe3, 0xdd, 0x55, 0x18, 0xab, 0x78, 0x6e, 0xb3, 0xdc, 0x68, 0x28, 0xaf, 0x7c, 0x14, 0x89, - 0x31, 0x2d, 0x86, 0xcb, 0xa0, 0xba, 0x78, 0xa0, 0x50, 0xc9, 0xcb, 0x62, 0x52, 0xc4, 0xd9, 0xc6, - 0x71, 0x52, 0x7c, 0x74, 0xb0, 0x08, 0xbc, 0x4d, 0x71, 0x56, 0x55, 0x0c, 0xb1, 0xc8, 0x81, 0xb1, - 0xd5, 0xfc, 0x53, 0x3b, 0x74, 0xd9, 0x21, 0x16, 0x93, 0x9f, 0x37, 0x50, 0xd0, 0xff, 0x1f, 0xcb, - 0xc3, 0xf1, 0x6c, 0xc2, 0x8f, 0x9b, 0xbc, 0x10, 0xd3, 0x2d, 0x68, 0x61, 0x61, 0x31, 0x79, 0x21, - 0xcf, 0xcd, 0x80, 0xf8, 0x31, 0x02, 0xd9, 0x81, 0xc9, 0x75, 0x37, 0x8c, 0xd6, 0xa8, 0x1b, 0x44, - 0xdb, 0xd4, 0x8d, 0x06, 0x90, 0x91, 0x5f, 0x90, 0xcf, 0xa7, 0x78, 0x4c, 0xef, 0x49, 0xca, 0x84, - 0x14, 0x6b, 0xb2, 0x55, 0x13, 0x65, 0x68, 0x80, 0x89, 0xf2, 0x4d, 0x98, 0xae, 0xd1, 0x96, 0xdb, - 0xd9, 0xf3, 0x03, 0xe9, 0x76, 0x79, 0x11, 0x26, 0x15, 0x28, 0x73, 0xb6, 0x98, 0xc5, 0x06, 0xbe, - 0xd6, 0x11, 0xf1, 0x56, 0x62, 0x16, 0x5b, 0x7f, 0x27, 0x0f, 0x27, 0xca, 0x75, 0x61, 0xd5, 0x24, - 0x0a, 0xa4, 0xf1, 0xe5, 0xa7, 0x5c, 0x37, 0xb9, 0x04, 0x63, 0xb7, 0xdc, 0x47, 0xeb, 0xd4, 0x0d, - 0x69, 0x28, 0x52, 0x47, 0x71, 0x81, 0xd2, 0x7d, 0x14, 0x1b, 0xfb, 0xd8, 0x31, 0x8e, 0x7e, 0xe3, - 0x1e, 0xfa, 0x84, 0x37, 0x6e, 0x0b, 0x46, 0xd6, 0xfc, 0x66, 0x43, 0x1c, 0xb7, 0xe2, 0x19, 0x70, - 0x0f, 0x21, 0xb6, 0x28, 0x61, 0x17, 0xd5, 0x29, 0xd5, 0x62, 0x6c, 0xc2, 0xa7, 0xde, 0x25, 0xe7, - 0x60, 0x14, 0x2b, 0xaa, 0x56, 0xf4, 0x43, 0xa3, 0x49, 0x31, 0x01, 0x50, 0xc3, 0x96, 0x85, 0x7a, - 0x4f, 0x0c, 0x7f, 0xb2, 0x9e, 0xb0, 0xfe, 0x03, 0x7c, 0x61, 0xd4, 0xbf, 0x92, 0x9d, 0x44, 0x5a, - 0x43, 0x72, 0x03, 0x36, 0x24, 0xff, 0xc4, 0x86, 0xa4, 0xd0, 0x73, 0x48, 0xbe, 0x9d, 0x87, 0x71, - 0xd5, 0xd8, 0xcf, 0x58, 0x6c, 0x62, 0xf5, 0x5d, 0x03, 0x85, 0x4a, 0xa8, 0x69, 0x7b, 0x85, 0x88, - 0x48, 0xf0, 0x1e, 0x8c, 0x88, 0xc5, 0x94, 0x4b, 0x18, 0x21, 0x26, 0x46, 0x77, 0x79, 0x4a, 0xb0, - 0x1e, 0xc1, 0x01, 0x0d, 0x6d, 0x41, 0x87, 0xb1, 0x28, 0xee, 0xd1, 0x6d, 0xf1, 0xe0, 0xfc, 0xd4, - 0x9e, 0x51, 0xd9, 0xb1, 0x28, 0xe2, 0x0f, 0x1b, 0xe8, 0x74, 0xfa, 0x67, 0x45, 0x28, 0x25, 0x49, - 0x0e, 0x8f, 0xfe, 0xbc, 0xd9, 0xdd, 0xe6, 0xb7, 0x05, 0x1e, 0xfd, 0xb9, 0xd3, 0xdd, 0xb6, 0x19, - 0x0c, 0xed, 0x51, 0x02, 0xef, 0x01, 0x7e, 0xf5, 0x84, 0xb0, 0x47, 0x09, 0xbc, 0x07, 0x86, 0x3d, - 0x4a, 0xe0, 0x3d, 0xc0, 0x2b, 0xfa, 0x7a, 0x0d, 0xdd, 0x67, 0xf1, 0xaa, 0x20, 0xae, 0xe8, 0xcd, - 0x30, 0x99, 0x91, 0x45, 0xa2, 0xb1, 0xa3, 0x72, 0x99, 0xba, 0x81, 0x88, 0x54, 0x2c, 0xb6, 0x33, - 0x3c, 0x2a, 0xb7, 0x11, 0xcc, 0x13, 0x28, 0xdb, 0x3a, 0x12, 0x69, 0x02, 0xd1, 0x7e, 0xca, 0x05, - 0x7c, 0xf8, 0xad, 0x55, 0x1a, 0x10, 0xcd, 0xe9, 0xac, 0x1d, 0x7d, 0x35, 0x67, 0xf0, 0x7d, 0x92, - 0x8a, 0xd2, 0x4d, 0x11, 0x7e, 0x0d, 0x55, 0x33, 0xc5, 0x43, 0x99, 0x49, 0xff, 0x72, 0xe0, 0xe1, - 0xd9, 0x94, 0x82, 0x26, 0x66, 0x42, 0xde, 0x81, 0x71, 0xdd, 0x29, 0x9a, 0xbb, 0xee, 0x3e, 0xc7, - 0x23, 0x6a, 0xf5, 0xc8, 0xe1, 0xa7, 0x13, 0x90, 0x6d, 0x38, 0xb1, 0xe2, 0xb7, 0xc3, 0x6e, 0x4b, - 0xc6, 0xee, 0x8a, 0x23, 0x86, 0x82, 0xca, 0xc1, 0xff, 0x42, 0x5d, 0xa0, 0x08, 0x1f, 0x5c, 0x69, - 0xe1, 0x6d, 0x5e, 0x40, 0x7a, 0x31, 0x22, 0x5b, 0x30, 0x8e, 0xca, 0x46, 0x61, 0x42, 0x36, 0x6e, - 0x6e, 0x1b, 0x71, 0x49, 0x85, 0x2d, 0x0c, 0x1e, 0x7c, 0xc6, 0x6d, 0x35, 0xa5, 0x81, 0xb1, 0xae, - 0x34, 0xd5, 0x90, 0xc9, 0xd7, 0x60, 0x8a, 0x5f, 0x8b, 0xef, 0xd1, 0x6d, 0x3e, 0x77, 0x26, 0x8c, - 0x3b, 0xbe, 0x59, 0xc8, 0x1f, 0xa4, 0x85, 0x8a, 0xf7, 0x21, 0xdd, 0xe6, 0x63, 0x6f, 0x98, 0xf7, - 0x1b, 0xf8, 0xe4, 0x0e, 0xcc, 0xae, 0xb9, 0x21, 0x07, 0x6a, 0xde, 0xad, 0x93, 0xa8, 0xfb, 0x44, - 0xb3, 0xcb, 0x3d, 0x37, 0x94, 0x3a, 0xe3, 0x4c, 0x6f, 0xd6, 0x2c, 0x7a, 0xf2, 0xc3, 0x39, 0x98, - 0x37, 0x54, 0xca, 0xc2, 0xf8, 0xa7, 0x45, 0xdb, 0x11, 0xda, 0xf1, 0x4f, 0xa9, 0xd4, 0xcd, 0xbd, - 0xd0, 0xf8, 0x90, 0x24, 0xb4, 0xd6, 0x41, 0x5c, 0xae, 0xdb, 0x33, 0xf6, 0xe2, 0x21, 0x16, 0x2a, - 0xae, 0xe9, 0x69, 0x73, 0xa1, 0x26, 0xd6, 0xb5, 0x44, 0xb3, 0xae, 0x26, 0xfb, 0x5b, 0xa8, 0x90, - 0x72, 0x4a, 0x85, 0x34, 0x07, 0xc3, 0xd8, 0xab, 0x32, 0x18, 0x07, 0xfe, 0xb0, 0x3e, 0xa7, 0xef, - 0x43, 0x42, 0x2c, 0xec, 0xbb, 0x0f, 0x59, 0xff, 0xfd, 0x08, 0x4c, 0x27, 0xa6, 0x85, 0xb8, 0xa7, - 0xe6, 0x52, 0xf7, 0xd4, 0x1a, 0x00, 0x57, 0xa2, 0x0e, 0xa8, 0xed, 0x94, 0x3e, 0x44, 0xe3, 0xc2, - 0x15, 0x50, 0xad, 0x29, 0x8d, 0x0d, 0x63, 0xca, 0x57, 0xec, 0x80, 0xda, 0x67, 0xc5, 0x94, 0x2f, - 0x7a, 0x8d, 0x69, 0xcc, 0x86, 0x2c, 0xc2, 0x30, 0x46, 0xd0, 0xd3, 0x5d, 0xb8, 0x3c, 0x06, 0xb0, - 0x39, 0x9c, 0x9c, 0x85, 0x11, 0x26, 0x44, 0x55, 0x2b, 0x62, 0x13, 0xc4, 0xb3, 0x85, 0x49, 0x59, - 0x4c, 0x62, 0x11, 0x45, 0xe4, 0x2a, 0x4c, 0xf0, 0xbf, 0x44, 0x10, 0x85, 0x11, 0xd3, 0x22, 0xcd, - 0xf1, 0x1a, 0x32, 0x8e, 0x82, 0x81, 0xc7, 0x6e, 0x17, 0xb5, 0x2e, 0x6a, 0x56, 0xaa, 0x15, 0x11, - 0x72, 0x15, 0x6f, 0x17, 0x21, 0x07, 0x62, 0x6a, 0x74, 0x85, 0xc0, 0x64, 0x19, 0x61, 0x48, 0x5d, - 0xc4, 0x3b, 0x25, 0xca, 0x32, 0xdc, 0x80, 0xda, 0x16, 0x25, 0xe4, 0x02, 0x7f, 0xb4, 0x40, 0xb1, - 0x90, 0x67, 0xa0, 0xc2, 0x17, 0x01, 0x54, 0x4c, 0xa0, 0x6c, 0xa8, 0x8a, 0x59, 0xe5, 0xec, 0xef, - 0xd5, 0x96, 0xeb, 0x35, 0xc5, 0xb6, 0x82, 0x95, 0x23, 0x2e, 0x65, 0x50, 0x3b, 0x46, 0x20, 0x6f, - 0xc1, 0x14, 0xfb, 0xb1, 0xe2, 0xb7, 0x5a, 0x7e, 0x1b, 0xd9, 0x8f, 0xc7, 0xf1, 0x78, 0x90, 0xa4, - 0x8e, 0x45, 0xbc, 0x96, 0x04, 0x2e, 0x3b, 0x4f, 0xf0, 0x41, 0xb4, 0xcb, 0x9f, 0x53, 0x26, 0xe2, - 0xf3, 0x04, 0x49, 0x43, 0x0e, 0xb7, 0x75, 0x24, 0xf2, 0x06, 0x4c, 0xb2, 0x9f, 0xd7, 0xbd, 0x07, - 0x94, 0x57, 0x38, 0x19, 0x3f, 0xd1, 0x23, 0xd5, 0x2e, 0x2b, 0xe1, 0xf5, 0x99, 0x98, 0xe4, 0xcb, - 0x70, 0x0c, 0x39, 0xd5, 0xfd, 0x0e, 0x6d, 0x94, 0x77, 0x76, 0xbc, 0xa6, 0xc7, 0x4d, 0x84, 0x78, - 0xb8, 0x00, 0xd4, 0x6e, 0xf3, 0x8a, 0x11, 0xc3, 0x71, 0x63, 0x14, 0x3b, 0x9b, 0x92, 0xdc, 0x83, - 0xd2, 0x4a, 0x37, 0x8c, 0xfc, 0x56, 0x39, 0x8a, 0x02, 0x6f, 0xbb, 0x1b, 0xd1, 0x70, 0x7e, 0xda, - 0x70, 0xaa, 0x67, 0x8b, 0x43, 0x15, 0x72, 0x7d, 0x50, 0x1d, 0x29, 0x1c, 0x57, 0x91, 0xd8, 0x29, - 0x26, 0xd6, 0x7f, 0x97, 0x83, 0x49, 0x83, 0x94, 0xbc, 0x0e, 0x13, 0xd7, 0x02, 0x8f, 0xb6, 0x1b, - 0xcd, 0x7d, 0xed, 0xa2, 0x8a, 0xb7, 0x98, 0x1d, 0x01, 0xe7, 0x5f, 0x6d, 0xa0, 0x29, 0x3d, 0x4f, - 0x3e, 0xd3, 0x7e, 0xef, 0x12, 0xf7, 0x24, 0x14, 0x13, 0xb4, 0x10, 0x47, 0xf9, 0xc0, 0x09, 0x2a, - 0x66, 0xa7, 0x86, 0x42, 0xde, 0x86, 0x11, 0xfe, 0x74, 0x2a, 0x8c, 0xc9, 0x4e, 0x66, 0x7d, 0x26, - 0xf7, 0x5a, 0xc5, 0x89, 0x88, 0x86, 0x2b, 0xa1, 0x2d, 0x88, 0xac, 0x9f, 0xc9, 0x01, 0x49, 0xa3, - 0x1e, 0xa2, 0xf7, 0x3a, 0xd4, 0x20, 0xe6, 0x3d, 0xb5, 0x1a, 0x0b, 0x86, 0x36, 0x9a, 0xd5, 0xc4, - 0x0b, 0x78, 0xc7, 0x8b, 0x55, 0xa7, 0x2b, 0xe2, 0x78, 0xb1, 0xf5, 0x43, 0x79, 0x80, 0x18, 0x9b, - 0x7c, 0x91, 0x27, 0x2a, 0xf9, 0x72, 0xd7, 0x6d, 0x7a, 0x3b, 0x9e, 0x19, 0xb9, 0x0f, 0x99, 0x7c, - 0x53, 0x96, 0xd8, 0x26, 0x22, 0x79, 0x17, 0xa6, 0x6b, 0x9b, 0x26, 0xad, 0x96, 0x94, 0x21, 0xec, - 0x38, 0x09, 0xf2, 0x24, 0x36, 0x1a, 0x8d, 0xea, 0xa3, 0xc1, 0x8d, 0x46, 0xf9, 0x40, 0x88, 0x12, - 0xb6, 0xb1, 0xd4, 0x36, 0x85, 0x9d, 0x72, 0xa3, 0x5a, 0x11, 0xbb, 0x14, 0xb6, 0x2e, 0xec, 0x38, - 0x1d, 0x61, 0xc0, 0xcc, 0xf6, 0x09, 0x03, 0x2f, 0xee, 0xc8, 0xe1, 0x1e, 0x9e, 0xa9, 0x3f, 0x8b, - 0x6a, 0xbf, 0x96, 0x1f, 0x51, 0xa1, 0xed, 0x78, 0x6a, 0xef, 0x3d, 0xf1, 0xbb, 0xfb, 0xb0, 0xe1, - 0x70, 0x67, 0x7c, 0x9d, 0xb0, 0xfa, 0xb8, 0x12, 0x5f, 0x52, 0xf8, 0x0b, 0x7c, 0x86, 0x9d, 0xc8, - 0x3f, 0xc8, 0xc1, 0xb1, 0x4c, 0x5a, 0x72, 0x11, 0x20, 0xd6, 0x29, 0x89, 0x5e, 0xc2, 0x1d, 0x33, - 0x8e, 0x6d, 0x61, 0x6b, 0x18, 0xe4, 0xab, 0x49, 0x6d, 0xd0, 0xe1, 0x07, 0xe1, 0x82, 0x8c, 0x5d, - 0x64, 0x6a, 0x83, 0x32, 0x74, 0x40, 0xd6, 0x3f, 0x2a, 0xc0, 0x8c, 0x16, 0x3a, 0x83, 0xb7, 0xf5, - 0x10, 0x23, 0xde, 0xfb, 0x30, 0xc1, 0xbe, 0xc6, 0xab, 0x0b, 0xaf, 0x1f, 0x6e, 0x23, 0xf2, 0x72, - 0xca, 0x65, 0x4a, 0x70, 0xbb, 0xa8, 0x23, 0xf3, 0x88, 0x62, 0xb8, 0x75, 0xe2, 0x9b, 0x40, 0x3d, - 0xed, 0xfd, 0x63, 0x30, 0x27, 0x21, 0x4c, 0x56, 0xf6, 0xdb, 0x6e, 0x4b, 0xd5, 0xc6, 0x6d, 0x45, - 0x5e, 0xe9, 0x59, 0x9b, 0x81, 0xcd, 0xab, 0x8b, 0x9d, 0x0b, 0x78, 0x59, 0x86, 0x5f, 0xab, 0x41, - 0xb5, 0xf0, 0x2e, 0xcc, 0xa4, 0x1a, 0x7d, 0xa4, 0xe0, 0x66, 0xf7, 0x80, 0xa4, 0xdb, 0x91, 0xc1, - 0xe1, 0x15, 0x33, 0x74, 0xde, 0x31, 0xf5, 0x2c, 0x8c, 0x29, 0x99, 0xb9, 0xe5, 0xc9, 0x92, 0x1e, - 0xfa, 0xec, 0x67, 0xf3, 0xba, 0xdb, 0xda, 0xd3, 0xbe, 0xea, 0xde, 0x33, 0x6e, 0xc3, 0xa7, 0x7b, - 0x8d, 0xe9, 0x40, 0x5a, 0x87, 0xef, 0x16, 0xe0, 0x44, 0x0f, 0x4a, 0xb2, 0x9f, 0x9c, 0x44, 0x5c, - 0x0b, 0x71, 0xb9, 0x7f, 0x85, 0x4f, 0x62, 0x2a, 0x91, 0x2f, 0x72, 0xc7, 0xf5, 0x3a, 0xa6, 0xfd, - 0x15, 0xf7, 0x6f, 0x9e, 0x85, 0x5e, 0x41, 0x93, 0x1e, 0xeb, 0x1c, 0x4a, 0xde, 0x85, 0x61, 0xf4, - 0x59, 0x4c, 0x84, 0xee, 0x62, 0x18, 0x08, 0xd7, 0xe2, 0x9c, 0xb1, 0x9f, 0x46, 0x9c, 0x33, 0x06, - 0x20, 0x5f, 0x80, 0x42, 0xf9, 0x5e, 0x4d, 0x8c, 0xcb, 0x94, 0x4e, 0x7e, 0xaf, 0x16, 0x87, 0x57, - 0x77, 0x8d, 0x38, 0xe8, 0x8c, 0x82, 0x11, 0x5e, 0x5f, 0xd9, 0x14, 0xa3, 0xa2, 0x13, 0x5e, 0x5f, - 0xd9, 0x8c, 0x09, 0x77, 0xeb, 0x46, 0x28, 0x94, 0xeb, 0x2b, 0x9b, 0x9f, 0xde, 0xb4, 0xff, 0xdb, - 0x79, 0xee, 0x6d, 0xcf, 0x3f, 0xec, 0x5d, 0x98, 0x30, 0x42, 0x9b, 0xe6, 0x62, 0x79, 0x4c, 0x45, - 0x90, 0x4d, 0x18, 0xd7, 0x18, 0x04, 0x32, 0x51, 0x01, 0xfb, 0x8d, 0x12, 0xaf, 0x6e, 0xc6, 0xa2, - 0x38, 0xa0, 0x4c, 0x9c, 0x4c, 0x54, 0xa0, 0x48, 0xc8, 0x15, 0x28, 0x6e, 0xd1, 0xb6, 0xdb, 0x8e, - 0x94, 0x42, 0x14, 0x0d, 0x64, 0x23, 0x84, 0x99, 0x52, 0x83, 0x42, 0x44, 0x63, 0xce, 0xee, 0x76, - 0x58, 0x0f, 0x3c, 0x8c, 0xca, 0xa1, 0xce, 0x62, 0x6e, 0xcc, 0xa9, 0x95, 0x98, 0x0c, 0x12, 0x44, - 0xd6, 0xcf, 0xe6, 0x60, 0x54, 0x0c, 0x24, 0x4f, 0x30, 0xb3, 0x1b, 0x9f, 0x25, 0x22, 0xc1, 0xcc, - 0xae, 0x97, 0x4c, 0x30, 0xb3, 0xcb, 0x43, 0x5f, 0x8c, 0x09, 0xc7, 0x51, 0xf5, 0x34, 0xc8, 0x73, - 0x9d, 0x73, 0xa0, 0x59, 0x6d, 0x8c, 0x3a, 0xa8, 0x97, 0x8c, 0xf5, 0x77, 0x45, 0xcb, 0xae, 0xaf, - 0x6c, 0x92, 0x25, 0x28, 0xae, 0xfb, 0x3c, 0xd0, 0x89, 0x9e, 0x2d, 0xb0, 0x29, 0x60, 0x7a, 0x07, - 0x49, 0x3c, 0xd6, 0xbe, 0xcd, 0xc0, 0x17, 0x77, 0x19, 0xad, 0x7d, 0x1d, 0x0e, 0x4c, 0xb4, 0x4f, - 0xa1, 0x0e, 0xdc, 0x3e, 0x9a, 0xb1, 0x49, 0xdc, 0xbd, 0x82, 0x11, 0xdc, 0x6f, 0xe8, 0xde, 0x47, - 0xa2, 0x48, 0xee, 0x14, 0x0b, 0xbd, 0x76, 0x8a, 0xbb, 0x57, 0xec, 0x0c, 0x2a, 0x7c, 0x57, 0x8b, - 0xc1, 0x35, 0x1a, 0x3c, 0x78, 0x8a, 0x77, 0xe9, 0xec, 0x77, 0xb5, 0xe4, 0xe7, 0x0d, 0xb4, 0x49, - 0xff, 0x37, 0x79, 0x38, 0x9e, 0x4d, 0xa8, 0x7f, 0x4b, 0xae, 0xcf, 0xb7, 0x9c, 0x87, 0xe2, 0x9a, - 0x1f, 0x46, 0x9a, 0x3d, 0x1d, 0xaa, 0xff, 0xf7, 0x04, 0xcc, 0x56, 0xa5, 0xec, 0xce, 0xcd, 0xfe, - 0x56, 0xcb, 0x13, 0xf9, 0xa1, 0x8f, 0x39, 0xbb, 0x73, 0xf3, 0x22, 0x72, 0x1d, 0x8a, 0xb6, 0xf0, - 0x7e, 0x49, 0x74, 0x8d, 0x04, 0x2b, 0x69, 0x8a, 0x04, 0x02, 0x62, 0x44, 0x98, 0x15, 0x30, 0x52, - 0x86, 0x51, 0x31, 0xfa, 0x89, 0xa7, 0xe3, 0x8c, 0x29, 0x63, 0x06, 0x7d, 0x96, 0x74, 0x6c, 0x47, - 0xc1, 0x47, 0xc0, 0x6a, 0x45, 0x3a, 0xb2, 0xe0, 0x8e, 0xc2, 0x1f, 0x09, 0x4d, 0xd3, 0x45, 0x85, - 0x68, 0xfd, 0x70, 0x1e, 0x40, 0x6a, 0x6d, 0x9e, 0xda, 0x19, 0xf6, 0x05, 0x63, 0x86, 0x69, 0x96, - 0x3c, 0x83, 0x27, 0x44, 0xbc, 0x8d, 0x16, 0x35, 0x83, 0xa7, 0x43, 0x5c, 0x84, 0xe1, 0xad, 0x58, - 0xa1, 0x25, 0xdc, 0x2a, 0x50, 0x1d, 0xcd, 0xe1, 0xd6, 0x36, 0xcc, 0x5d, 0xa7, 0x51, 0xac, 0xde, - 0x92, 0x4f, 0x8f, 0xfd, 0xd9, 0xbe, 0x0a, 0x63, 0x02, 0x5f, 0xed, 0x5f, 0x5c, 0x17, 0x23, 0xc2, - 0x36, 0xa0, 0x2e, 0x46, 0x22, 0xb0, 0xdd, 0xa8, 0x42, 0x9b, 0x34, 0xa2, 0x9f, 0x6e, 0x35, 0x35, - 0x20, 0xfc, 0x53, 0xf0, 0xcb, 0x06, 0xab, 0xe1, 0xd0, 0xfe, 0xb9, 0x0b, 0xc7, 0x54, 0xdb, 0x9f, - 0x24, 0xdf, 0x4b, 0xec, 0x4a, 0x29, 0xe2, 0x25, 0xc7, 0x1c, 0xfb, 0xd8, 0x9e, 0x3c, 0x82, 0x05, - 0x49, 0x70, 0xcf, 0x53, 0x26, 0x89, 0x03, 0xd1, 0x92, 0xb7, 0x60, 0x5c, 0xa3, 0x11, 0xf1, 0x7e, - 0x51, 0x4d, 0xfd, 0xd0, 0x8b, 0xf6, 0x9c, 0x90, 0xc3, 0x75, 0x35, 0xb5, 0x86, 0x6e, 0x7d, 0x00, - 0xcf, 0x2a, 0xd7, 0x97, 0x8c, 0xaa, 0x13, 0xcc, 0x73, 0x47, 0x63, 0xbe, 0x11, 0x7f, 0x56, 0xb5, - 0xad, 0xdc, 0x55, 0x25, 0x6f, 0xa2, 0x7f, 0x96, 0xf8, 0x98, 0xe7, 0x52, 0x0e, 0xb0, 0x9a, 0x9f, - 0xab, 0xf5, 0xa6, 0xd6, 0xd8, 0x0c, 0x86, 0x06, 0x71, 0x2e, 0x49, 0xfc, 0xc3, 0x79, 0x98, 0xbe, - 0x5d, 0xad, 0xac, 0x28, 0xeb, 0xa3, 0xcf, 0x58, 0xba, 0x46, 0xe3, 0xdb, 0x7a, 0xef, 0x37, 0xd6, - 0x1d, 0x98, 0x4d, 0x74, 0x03, 0x8a, 0x0e, 0xef, 0x70, 0xdf, 0x0c, 0x05, 0x96, 0x62, 0xc3, 0xf1, - 0x2c, 0xf6, 0x77, 0xaf, 0xd8, 0x09, 0x6c, 0xeb, 0x9f, 0x8f, 0x25, 0xf8, 0x8a, 0x2d, 0xec, 0x55, - 0x18, 0xab, 0x86, 0x61, 0x97, 0x06, 0x77, 0xec, 0x75, 0x5d, 0x55, 0xe0, 0x21, 0xd0, 0xe9, 0x06, - 0x4d, 0x3b, 0x46, 0x20, 0x17, 0xa0, 0x28, 0x42, 0xe0, 0xca, 0x3d, 0x01, 0xb5, 0xb6, 0x2a, 0x82, - 0xae, 0xad, 0x8a, 0xc9, 0xeb, 0x30, 0xc1, 0xff, 0xe6, 0xb3, 0x4d, 0x74, 0x38, 0x2a, 0x07, 0x05, - 0x3a, 0x9f, 0x9d, 0xb6, 0x81, 0x46, 0x5e, 0x86, 0x42, 0x79, 0xc5, 0x16, 0xea, 0x20, 0x21, 0x37, - 0x62, 0x12, 0xe6, 0x2e, 0x35, 0x2f, 0x11, 0x2b, 0x36, 0x93, 0xfe, 0xa4, 0x6b, 0xbc, 0xd0, 0x64, - 0xf3, 0x5c, 0xd1, 0x02, 0x96, 0x38, 0xcc, 0x10, 0x46, 0x2e, 0xc1, 0x68, 0xc5, 0x0b, 0x3b, 0x4d, - 0x77, 0x5f, 0xe8, 0xb1, 0x79, 0x2e, 0x22, 0x0e, 0x32, 0x3c, 0xde, 0x39, 0x88, 0x5c, 0x90, 0x39, - 0x5a, 0x8a, 0xb1, 0x8b, 0x47, 0x8f, 0x44, 0x2c, 0xaf, 0xc2, 0x88, 0x08, 0x14, 0x3b, 0xa6, 0x85, - 0x80, 0x4f, 0x06, 0x88, 0x15, 0x38, 0x69, 0x27, 0x4c, 0x78, 0x92, 0x4e, 0x98, 0xdb, 0x70, 0xe2, - 0x3a, 0x6a, 0x6f, 0xcc, 0x58, 0x2e, 0x77, 0xec, 0xaa, 0xd0, 0x87, 0xe3, 0x33, 0x10, 0x57, 0xf0, - 0x24, 0xc3, 0xc1, 0x38, 0xdd, 0x40, 0x4f, 0xad, 0xd7, 0x8b, 0x11, 0xf9, 0x0a, 0xcc, 0x65, 0x15, - 0x09, 0xad, 0x39, 0x46, 0x2d, 0xc9, 0xae, 0x40, 0x8f, 0x5a, 0x92, 0xc5, 0x81, 0xac, 0x43, 0x89, - 0xc3, 0xcb, 0x8d, 0x96, 0xd7, 0xe6, 0x9a, 0x7f, 0xae, 0x55, 0x47, 0x9f, 0x0b, 0xc1, 0xd5, 0x65, - 0x85, 0xfc, 0x05, 0xc0, 0xf0, 0xd2, 0x49, 0x50, 0x92, 0x9f, 0xc8, 0xb1, 0xdb, 0x1c, 0x0f, 0xab, - 0x7a, 0xc7, 0x5e, 0x0f, 0x45, 0xc4, 0xab, 0xe3, 0xb1, 0x03, 0x4e, 0x2d, 0x0a, 0xbc, 0xf6, 0xae, - 0xf0, 0xc0, 0xd9, 0x12, 0x1e, 0x38, 0x6f, 0x7d, 0x2c, 0x0f, 0x1c, 0xce, 0x2a, 0x7c, 0x7c, 0xb0, - 0x38, 0x11, 0x88, 0x3a, 0x71, 0x15, 0x19, 0x2d, 0xc0, 0xb4, 0xf0, 0xcd, 0xa6, 0xff, 0xf0, 0x4e, - 0x9b, 0x07, 0x75, 0xa4, 0x0d, 0xfe, 0x91, 0xd3, 0xb8, 0x83, 0xf3, 0xb4, 0xf0, 0xac, 0xdc, 0xe9, - 0x2a, 0x84, 0xd4, 0x87, 0x66, 0x72, 0x60, 0x17, 0x4f, 0xe9, 0xe5, 0xc1, 0x3d, 0x4a, 0x4b, 0xf1, - 0xc5, 0x53, 0xba, 0x84, 0x38, 0x38, 0x8d, 0xf4, 0xc9, 0x63, 0x90, 0x90, 0x4b, 0x30, 0x72, 0xcb, - 0x7d, 0x54, 0xde, 0xa5, 0x22, 0xf7, 0xd6, 0xa4, 0xdc, 0xfe, 0x10, 0xb8, 0x5c, 0xfc, 0x7d, 0xee, - 0x45, 0xf0, 0x8c, 0x2d, 0xd0, 0xc8, 0xf7, 0xe5, 0xe0, 0x38, 0x5f, 0xc6, 0xf2, 0x2b, 0x6b, 0x34, - 0x8a, 0x58, 0x3f, 0x88, 0xd0, 0x57, 0x32, 0x73, 0x45, 0xad, 0x76, 0x3b, 0x1b, 0x8f, 0x27, 0x31, - 0x17, 0x3b, 0x83, 0xea, 0xb8, 0x50, 0x94, 0x1a, 0x61, 0x36, 0x33, 0xe9, 0x85, 0x85, 0xfc, 0x17, - 0x64, 0xcb, 0xc9, 0x6b, 0xba, 0xe3, 0x63, 0x01, 0xe5, 0xdc, 0xd1, 0x96, 0xfb, 0xc8, 0x71, 0x77, - 0xa9, 0xf1, 0x9e, 0x2d, 0xf4, 0xcc, 0x3f, 0x9d, 0x83, 0x93, 0x3d, 0x1b, 0x47, 0xae, 0xc2, 0x09, - 0x99, 0xcf, 0x7e, 0x2f, 0x8a, 0x3a, 0xa1, 0x23, 0x2f, 0x03, 0xc2, 0x55, 0xd2, 0x3e, 0x26, 0x8a, - 0xd7, 0x58, 0xa9, 0xbc, 0x1f, 0x84, 0xe4, 0x5d, 0x78, 0xce, 0x6b, 0x87, 0xb4, 0xde, 0x0d, 0x68, - 0x9c, 0x10, 0xdf, 0x6b, 0x04, 0x4e, 0xe0, 0xb6, 0x77, 0xa5, 0xdf, 0xa7, 0x7d, 0x52, 0xe2, 0xc8, - 0xb4, 0xf8, 0x5e, 0x23, 0xb0, 0x11, 0xc1, 0xfa, 0xa3, 0x31, 0x7e, 0x2a, 0x96, 0xbb, 0xd1, 0x9e, - 0x3c, 0x47, 0x97, 0xb2, 0xbc, 0x85, 0xb8, 0x79, 0xa0, 0xe6, 0x2d, 0x64, 0xfa, 0x08, 0xc9, 0xe7, - 0x8c, 0x7c, 0xe6, 0x73, 0xc6, 0xab, 0x30, 0xb6, 0xb2, 0x47, 0xeb, 0xf7, 0x95, 0xc7, 0x46, 0x51, - 0xe8, 0x8b, 0x19, 0x90, 0xc7, 0x70, 0x8d, 0x11, 0xc8, 0x25, 0x00, 0x74, 0x1f, 0xe4, 0x42, 0x96, - 0x16, 0x87, 0x1d, 0xbd, 0x0d, 0x85, 0xc5, 0x85, 0x86, 0x82, 0xec, 0x6b, 0xf6, 0x35, 0xdd, 0x44, - 0x83, 0xb3, 0x0f, 0x83, 0x1d, 0x81, 0x1e, 0x23, 0xb0, 0xcf, 0xd3, 0x96, 0x8a, 0xd8, 0xd8, 0x4b, - 0xa9, 0xf5, 0xa4, 0x23, 0xa1, 0xf5, 0xa3, 0x34, 0x4f, 0xc7, 0x7d, 0x7d, 0x42, 0x58, 0x3f, 0x2a, - 0x53, 0x76, 0x3b, 0x46, 0x20, 0x5f, 0x80, 0xd1, 0x15, 0x1a, 0x44, 0x5b, 0x5b, 0xeb, 0x68, 0x45, - 0xc1, 0x83, 0x95, 0x17, 0x31, 0xb0, 0x74, 0x14, 0x35, 0x3f, 0x3a, 0x58, 0x9c, 0x8c, 0xbc, 0x16, - 0x55, 0x41, 0x58, 0x6d, 0x89, 0x4d, 0x96, 0xa1, 0xc4, 0xdf, 0x79, 0x63, 0x61, 0x1a, 0xb7, 0xfa, - 0x22, 0x3f, 0x78, 0xc4, 0xa3, 0xf0, 0x43, 0xba, 0xad, 0xc2, 0x6a, 0xa7, 0xf0, 0xc9, 0xaa, 0x8c, - 0x46, 0xaf, 0x7f, 0x24, 0xc4, 0xda, 0x9d, 0xe4, 0x12, 0x60, 0xdf, 0x9a, 0xa6, 0x20, 0x65, 0x98, - 0x5c, 0xf1, 0x5b, 0x1d, 0x37, 0xf2, 0x30, 0xb5, 0xd3, 0xbe, 0xd8, 0xd5, 0x51, 0x43, 0x55, 0xd7, - 0x0b, 0x8c, 0x23, 0x42, 0x2f, 0x20, 0xd7, 0x60, 0xca, 0xf6, 0xbb, 0x6c, 0x90, 0xe4, 0xb5, 0x92, - 0x6f, 0xdc, 0x68, 0xeb, 0x10, 0xb0, 0x12, 0x76, 0xce, 0x88, 0x3b, 0xa4, 0x11, 0x8d, 0xcf, 0xa0, - 0x22, 0x1b, 0x19, 0xfa, 0x7d, 0x7d, 0xb7, 0xd6, 0x83, 0x6b, 0xa7, 0x98, 0x65, 0x3c, 0x0d, 0x5c, - 0x81, 0xf1, 0x5a, 0xed, 0xf6, 0x16, 0x0d, 0xa3, 0x6b, 0x4d, 0xff, 0x21, 0x6e, 0xd6, 0x45, 0x91, - 0x74, 0x24, 0xf4, 0x9d, 0x88, 0x86, 0x91, 0xb3, 0xd3, 0xf4, 0x1f, 0xda, 0x3a, 0x16, 0xf9, 0x3a, - 0xeb, 0x0f, 0x4d, 0xb4, 0x11, 0x71, 0x07, 0xfb, 0x49, 0x5f, 0xb8, 0x25, 0xc6, 0x4b, 0x86, 0xc9, - 0x60, 0x66, 0x67, 0x69, 0xe8, 0xe8, 0x7e, 0xc4, 0x2e, 0xc4, 0xe5, 0x46, 0x23, 0xa0, 0x61, 0x28, - 0x76, 0x55, 0xee, 0x7e, 0x84, 0xb7, 0x67, 0x97, 0x17, 0x18, 0xee, 0x47, 0x1a, 0x01, 0xf9, 0x76, - 0x0e, 0x8e, 0xe9, 0x1e, 0x0c, 0xb8, 0x58, 0xd0, 0x6e, 0x83, 0xef, 0xb1, 0xaf, 0x5d, 0x94, 0xa7, - 0xca, 0x45, 0x0d, 0xed, 0xe2, 0x83, 0xcb, 0x17, 0xcb, 0xf1, 0xcf, 0x9a, 0x24, 0x12, 0xa1, 0xbb, - 0xb2, 0xf8, 0xe9, 0x27, 0x84, 0x9b, 0x41, 0x4a, 0x56, 0x98, 0xe0, 0xc1, 0xe6, 0x13, 0xda, 0x01, - 0x55, 0x37, 0x71, 0x8b, 0x16, 0x0a, 0x42, 0x31, 0xfb, 0xb8, 0xc5, 0x90, 0xd7, 0x31, 0xe5, 0x0b, - 0x8d, 0x86, 0x54, 0x61, 0x9a, 0x03, 0xd8, 0x96, 0xc0, 0x33, 0x52, 0xcc, 0xc6, 0x51, 0xb1, 0x05, - 0x1b, 0x7c, 0xba, 0xc6, 0xac, 0x14, 0x7a, 0x98, 0xbc, 0x04, 0x1d, 0x4a, 0xfe, 0xb5, 0xf2, 0xad, - 0xf5, 0x58, 0x7c, 0xfd, 0x6c, 0x59, 0xf6, 0x1b, 0xdf, 0xd6, 0xc7, 0xb2, 0xff, 0x0e, 0xf7, 0xc9, - 0xd4, 0xba, 0x41, 0x4a, 0xfe, 0x06, 0x38, 0x29, 0xf9, 0x27, 0x68, 0xec, 0x04, 0xb6, 0xf5, 0x51, - 0x31, 0xc1, 0x57, 0x58, 0xf3, 0x59, 0x30, 0xc2, 0x05, 0x7b, 0x3d, 0xbd, 0x39, 0x17, 0xfb, 0x6d, - 0x51, 0x42, 0x4e, 0x42, 0xa1, 0x56, 0xbb, 0x2d, 0x3a, 0x19, 0x6d, 0xfa, 0xc2, 0xd0, 0xb7, 0x19, - 0x8c, 0x8d, 0x10, 0x1a, 0xea, 0x69, 0x11, 0x87, 0xd9, 0x0e, 0x6a, 0x23, 0x94, 0xf5, 0xb7, 0x14, - 0xb3, 0x87, 0xe2, 0xfe, 0x16, 0x62, 0x76, 0x2c, 0x5c, 0xaf, 0xc0, 0x7c, 0x39, 0x0c, 0x69, 0xc0, - 0x26, 0xa8, 0xb0, 0xff, 0x0a, 0x84, 0x28, 0x28, 0x0e, 0x0a, 0xac, 0xd4, 0xad, 0x87, 0x76, 0x4f, - 0x44, 0x72, 0x1e, 0x8a, 0xe5, 0x6e, 0xc3, 0xa3, 0xed, 0xba, 0x11, 0x4e, 0xc8, 0x15, 0x30, 0x5b, - 0x95, 0x92, 0x2f, 0xc3, 0xb1, 0x44, 0x48, 0x2d, 0xd1, 0x03, 0xa3, 0xf1, 0x6a, 0x96, 0xa2, 0x6a, - 0xfc, 0x66, 0xcd, 0xbb, 0x24, 0x9b, 0x92, 0x94, 0xa1, 0xb4, 0x8a, 0x9e, 0x2c, 0x15, 0xca, 0xd5, - 0xe7, 0x7e, 0xc0, 0xbd, 0x88, 0xf8, 0xc5, 0x82, 0x7b, 0xb9, 0x38, 0x0d, 0x55, 0x68, 0xa7, 0xd0, - 0xc9, 0x4d, 0x98, 0x4d, 0xc2, 0xd8, 0x99, 0xc0, 0xef, 0x10, 0x18, 0xf2, 0x32, 0xc5, 0x05, 0x4f, - 0x85, 0x2c, 0x2a, 0xb2, 0x0d, 0x33, 0xb1, 0xcd, 0x86, 0x79, 0xb3, 0x90, 0xa6, 0xa0, 0xaa, 0x5c, - 0xde, 0x2e, 0x9e, 0x15, 0x93, 0x71, 0x36, 0xb6, 0xff, 0x50, 0x37, 0x0c, 0x3b, 0xcd, 0x8e, 0x34, - 0x60, 0xaa, 0xe6, 0xed, 0xb6, 0xbd, 0xf6, 0xee, 0x4d, 0xba, 0xbf, 0xe9, 0x7a, 0x81, 0x30, 0xca, - 0x93, 0x26, 0xb7, 0xe5, 0x70, 0xbf, 0xd5, 0xa2, 0x51, 0x80, 0xa7, 0x2d, 0x2b, 0x47, 0x07, 0x58, - 0x26, 0x31, 0x2e, 0x84, 0x9c, 0x0e, 0x9d, 0xcb, 0x3a, 0xae, 0x67, 0x1c, 0x2b, 0x26, 0x4f, 0xe3, - 0x76, 0x37, 0x31, 0xe0, 0xed, 0xae, 0x09, 0x33, 0xab, 0xed, 0x7a, 0xb0, 0x8f, 0xaf, 0x18, 0xb2, - 0x71, 0x93, 0x87, 0x34, 0xee, 0x05, 0xd1, 0xb8, 0xe7, 0x5c, 0x39, 0xc3, 0xb2, 0x9a, 0x97, 0x66, - 0x4c, 0x6a, 0x30, 0x83, 0x12, 0x5b, 0xb5, 0xb2, 0x59, 0x6d, 0x7b, 0x91, 0x87, 0x49, 0xb8, 0xf9, - 0x71, 0xf5, 0xa2, 0xe0, 0x79, 0x8a, 0x4b, 0xf1, 0x5e, 0xa3, 0xe3, 0x78, 0x12, 0x45, 0x67, 0x9a, - 0xa2, 0xef, 0x27, 0x4a, 0x4f, 0xff, 0xab, 0x11, 0xa5, 0x31, 0x4d, 0x55, 0xc2, 0x31, 0xbc, 0x14, - 0xef, 0xed, 0x21, 0x16, 0xb1, 0x23, 0xc2, 0xef, 0xa2, 0x78, 0x62, 0xa4, 0xa9, 0x32, 0xe9, 0xac, - 0x6f, 0x8f, 0xf1, 0xbd, 0x5d, 0x97, 0x5f, 0x7b, 0x19, 0xe3, 0x25, 0xe4, 0xda, 0xfc, 0x51, 0xe4, - 0xda, 0xc2, 0xe1, 0x72, 0xed, 0xd0, 0x61, 0x72, 0x6d, 0x42, 0xf0, 0x1c, 0x3e, 0xb2, 0xe0, 0x39, - 0x72, 0x04, 0xc1, 0x73, 0xf4, 0x48, 0x82, 0xa7, 0x21, 0x41, 0x17, 0x0f, 0x93, 0xa0, 0xff, 0x4a, - 0x4c, 0x7d, 0x5a, 0xc5, 0xd4, 0x2c, 0x51, 0xe1, 0x48, 0x62, 0x6a, 0x6f, 0x29, 0xb3, 0xf4, 0xaf, - 0x5b, 0xca, 0x9c, 0x79, 0x32, 0x52, 0x26, 0xf9, 0x98, 0x52, 0xe6, 0x5f, 0x83, 0x52, 0xf2, 0xe0, - 0x3b, 0x3c, 0x92, 0xe0, 0x13, 0x8b, 0x7a, 0xc5, 0x8e, 0xe5, 0xe4, 0xc1, 0xc3, 0x2e, 0xd2, 0x9b, - 0x81, 0xf7, 0xc0, 0x8d, 0xe8, 0x4d, 0x69, 0xbc, 0x20, 0xa2, 0x60, 0x72, 0x28, 0x6e, 0x1f, 0x1a, - 0x8a, 0x92, 0xb9, 0xf2, 0x59, 0x32, 0x97, 0xf5, 0x23, 0x79, 0x98, 0xe1, 0x11, 0x6a, 0x9e, 0x7e, - 0x1d, 0xfa, 0x3b, 0x86, 0x24, 0x2d, 0x4d, 0xe5, 0x12, 0x5f, 0xd7, 0x47, 0x8b, 0xfe, 0x35, 0x38, - 0x96, 0xea, 0x0a, 0x94, 0xa6, 0x2b, 0x32, 0x36, 0x50, 0x4a, 0x9e, 0x9e, 0xcf, 0xae, 0xe4, 0xee, - 0x15, 0x3b, 0x45, 0x61, 0xfd, 0xd9, 0x50, 0x8a, 0xbf, 0xd0, 0xa7, 0xeb, 0x1a, 0xf2, 0xdc, 0xd1, - 0x34, 0xe4, 0xf9, 0xc1, 0x34, 0xe4, 0x89, 0x63, 0xaa, 0x30, 0xc8, 0x31, 0xf5, 0x65, 0x98, 0xdc, - 0xa2, 0x6e, 0x2b, 0xdc, 0xf2, 0x45, 0xa8, 0x7b, 0x6e, 0x2a, 0x2b, 0x43, 0xff, 0xb0, 0x32, 0x29, - 0x0c, 0x2a, 0x93, 0x9f, 0x88, 0x11, 0xb0, 0xad, 0x95, 0xc7, 0xbe, 0xb7, 0x4d, 0x0e, 0xba, 0x84, - 0x3f, 0xdc, 0x47, 0xc2, 0xaf, 0xc1, 0x84, 0xa0, 0x8b, 0xc3, 0x27, 0xc6, 0xa2, 0x28, 0x2b, 0x42, - 0xb8, 0xac, 0x5d, 0xe5, 0x44, 0x54, 0xb5, 0x73, 0x29, 0xd4, 0x60, 0xc2, 0xba, 0x60, 0xb5, 0xdd, - 0xe8, 0xf8, 0x5e, 0x1b, 0xbb, 0x60, 0x34, 0xee, 0x02, 0x2a, 0xc0, 0xbc, 0x0b, 0x34, 0x24, 0xf2, - 0x16, 0x4c, 0x95, 0x37, 0xab, 0x3a, 0x59, 0x31, 0x56, 0xd2, 0xbb, 0x1d, 0xcf, 0x31, 0x48, 0x13, - 0xb8, 0xfd, 0xa4, 0xb2, 0xb1, 0x7f, 0x35, 0x52, 0x99, 0xf5, 0x4f, 0xc7, 0xe4, 0xf2, 0xfe, 0x74, - 0x95, 0x81, 0xa6, 0x7a, 0xaf, 0x70, 0x44, 0xf5, 0xde, 0xd0, 0x61, 0xc2, 0x89, 0x21, 0x31, 0x0d, - 0x1f, 0x41, 0x62, 0x1a, 0xf9, 0xc4, 0xaa, 0xba, 0xd1, 0x23, 0xca, 0x40, 0x89, 0x95, 0x56, 0x1c, - 0x64, 0xa5, 0x65, 0xca, 0x4d, 0x63, 0x9f, 0x5c, 0x6e, 0x82, 0x23, 0xcb, 0x4d, 0xb5, 0xd8, 0xf1, - 0x6c, 0xfc, 0x50, 0x7b, 0xde, 0x53, 0xe2, 0xbe, 0x32, 0x93, 0x1d, 0x9c, 0x48, 0xb9, 0xa0, 0x7d, - 0xa6, 0x84, 0xb1, 0x6f, 0x64, 0x0b, 0x63, 0xfd, 0x4f, 0x9b, 0xbf, 0x12, 0xc7, 0x9e, 0x88, 0x38, - 0x16, 0xe0, 0x80, 0xdd, 0x73, 0x83, 0x36, 0x5e, 0x39, 0x2f, 0xc1, 0xa8, 0x8c, 0xf7, 0x95, 0x8b, - 0xb5, 0x27, 0xe9, 0x40, 0x5f, 0x12, 0x8b, 0x2c, 0x41, 0x51, 0x12, 0xeb, 0xb1, 0xcb, 0x1f, 0x0a, - 0x98, 0x11, 0x4a, 0x49, 0xc0, 0xac, 0x7f, 0x38, 0x24, 0x37, 0x05, 0xd6, 0x0e, 0x91, 0x6e, 0x7b, - 0x59, 0x9b, 0x04, 0x9a, 0x30, 0x98, 0x18, 0xe6, 0x84, 0xa5, 0x9f, 0x49, 0xf2, 0xb1, 0x22, 0xb0, - 0xc5, 0xf9, 0xb5, 0x0a, 0x03, 0xe4, 0xd7, 0x7a, 0xc3, 0x48, 0x4e, 0x35, 0x14, 0x67, 0x43, 0x61, - 0x0b, 0xa5, 0x7f, 0x5a, 0xaa, 0xab, 0x7a, 0x16, 0xa9, 0xe1, 0x38, 0xc8, 0x07, 0x52, 0xf6, 0xc9, - 0x1f, 0xa5, 0xa4, 0xdb, 0x91, 0xa3, 0xc4, 0x36, 0x1c, 0xfd, 0xd7, 0x1a, 0xdb, 0x70, 0x15, 0x40, - 0x4b, 0x71, 0xcc, 0x1f, 0x77, 0x5e, 0x64, 0xdd, 0x74, 0x78, 0x7a, 0x63, 0x8d, 0xd0, 0xfa, 0x3d, - 0x02, 0x33, 0xb5, 0xda, 0xed, 0x8a, 0xe7, 0xee, 0xb6, 0xfd, 0x30, 0xf2, 0xea, 0xd5, 0xf6, 0x8e, - 0xcf, 0x44, 0x3b, 0xb5, 0xc1, 0x68, 0x41, 0xec, 0xe2, 0xcd, 0x45, 0x15, 0xb3, 0xab, 0xc3, 0x6a, - 0x10, 0xf8, 0x81, 0x7e, 0x75, 0xa0, 0x0c, 0x60, 0x73, 0x38, 0x93, 0x9e, 0x6a, 0x5d, 0x9e, 0xab, - 0x96, 0xbf, 0xb7, 0xa1, 0xf4, 0x14, 0x72, 0x90, 0x2d, 0xcb, 0x08, 0x4d, 0x4f, 0x58, 0x21, 0x4d, - 0x9f, 0x30, 0x22, 0x24, 0xc6, 0xc5, 0x7c, 0xfb, 0x14, 0xc7, 0x1b, 0x2e, 0xc5, 0x0e, 0xc2, 0xf5, - 0x07, 0xf2, 0xd4, 0x1a, 0xd8, 0x87, 0x63, 0x86, 0x0b, 0xd4, 0xa0, 0x8a, 0xc3, 0x97, 0x85, 0xb4, - 0x66, 0xa1, 0xc7, 0x6d, 0x86, 0xf6, 0x50, 0xcf, 0xe6, 0x90, 0x59, 0x03, 0xf9, 0x91, 0x1c, 0x9c, - 0xca, 0x2c, 0x51, 0xab, 0x7b, 0xdc, 0x88, 0x52, 0xa9, 0x6d, 0x1a, 0x3c, 0x6f, 0x45, 0xaf, 0xaa, - 0x9d, 0x8c, 0xad, 0xa0, 0x7f, 0x4d, 0xe4, 0xd7, 0x73, 0x70, 0xc2, 0xc0, 0x50, 0xdb, 0x67, 0xa8, - 0xbc, 0x83, 0x33, 0xe7, 0xf5, 0x87, 0x4f, 0x66, 0x5e, 0x9f, 0x35, 0xbf, 0x25, 0xde, 0xdd, 0xf5, - 0x6f, 0xe8, 0xd5, 0x42, 0xf2, 0x00, 0x66, 0xb0, 0x48, 0x2a, 0x31, 0xd9, 0x9c, 0x15, 0xba, 0xcf, - 0xb9, 0xb8, 0xd9, 0xdc, 0xad, 0x0f, 0x73, 0x0f, 0x2e, 0x7d, 0xf7, 0x60, 0x71, 0xd2, 0x40, 0x97, - 0x71, 0x1f, 0x9d, 0x58, 0x13, 0xea, 0xb5, 0x77, 0x7c, 0xfd, 0xe8, 0x4d, 0x55, 0x41, 0xfe, 0xf3, - 0x1c, 0xcc, 0x33, 0x28, 0xff, 0x8c, 0x6b, 0x81, 0xdf, 0x52, 0xe5, 0xd2, 0xd2, 0xa2, 0x47, 0xb7, - 0x35, 0x9f, 0x4c, 0xb7, 0xbd, 0x88, 0x4d, 0xe6, 0x7b, 0x82, 0xb3, 0x13, 0xf8, 0xad, 0xb8, 0xf9, - 0x46, 0x0a, 0xdf, 0x5e, 0x8d, 0x24, 0xdf, 0x9f, 0x83, 0x93, 0x86, 0xe6, 0x45, 0x8f, 0x8e, 0x2d, - 0x9c, 0x27, 0x67, 0x95, 0x5b, 0x75, 0x5c, 0xb4, 0x7c, 0x51, 0xcc, 0xff, 0x73, 0xd8, 0x82, 0xf8, - 0xb4, 0xc0, 0xb6, 0x38, 0x2d, 0x8e, 0xa5, 0x35, 0xa1, 0x77, 0x2d, 0xc4, 0x83, 0x19, 0x7c, 0xa3, - 0x34, 0x2c, 0x82, 0xe6, 0x7a, 0x5b, 0x04, 0xa9, 0x1c, 0x51, 0x18, 0x7a, 0xb7, 0xb7, 0x59, 0x50, - 0x9a, 0x2b, 0xf9, 0xeb, 0x70, 0x32, 0x05, 0x54, 0xab, 0xed, 0x58, 0xcf, 0xd5, 0xf6, 0xca, 0xe3, - 0x83, 0xc5, 0x97, 0xb2, 0x6a, 0xcb, 0x5a, 0x69, 0xbd, 0x6b, 0x20, 0x2e, 0x40, 0x5c, 0x28, 0x32, - 0x01, 0x67, 0x4f, 0xd0, 0x57, 0xc4, 0xfc, 0xd0, 0xf0, 0xd9, 0x5e, 0xae, 0xb5, 0x41, 0x3f, 0xf2, - 0x62, 0x24, 0x42, 0x61, 0x42, 0x0b, 0x3b, 0xbc, 0x8f, 0x29, 0x81, 0x7b, 0x56, 0xf2, 0xdd, 0x83, - 0x45, 0x03, 0x9b, 0x89, 0xd8, 0x7a, 0x3c, 0x63, 0x5d, 0xc4, 0x36, 0x10, 0xc9, 0xaf, 0xe6, 0x60, - 0x8e, 0x01, 0xe2, 0x49, 0x25, 0x3e, 0x6a, 0xbe, 0xdf, 0xac, 0xdf, 0x7b, 0x32, 0xb3, 0xfe, 0x79, - 0x6c, 0xa3, 0x3e, 0xeb, 0x53, 0x5d, 0x92, 0xd9, 0x38, 0x9c, 0xed, 0xc6, 0x73, 0xb8, 0x31, 0xdb, - 0x4f, 0x0e, 0x30, 0xdb, 0xf9, 0x00, 0x1c, 0x3e, 0xdb, 0x7b, 0xd6, 0x42, 0xb6, 0x60, 0x42, 0x48, - 0xd7, 0xbc, 0xc3, 0x4e, 0x1b, 0x21, 0x4b, 0xf5, 0x22, 0x7e, 0xe5, 0x11, 0x51, 0x99, 0x53, 0x5f, - 0x68, 0x70, 0x21, 0x6d, 0x98, 0xe5, 0xbf, 0x4d, 0x5d, 0xc7, 0x62, 0x4f, 0x5d, 0xc7, 0x79, 0xf1, - 0x45, 0x67, 0x04, 0xff, 0x84, 0xca, 0x43, 0x8f, 0xc6, 0x90, 0xc1, 0x98, 0x74, 0x80, 0x18, 0x60, - 0xbe, 0x68, 0xcf, 0xf4, 0xd7, 0x70, 0xbc, 0x24, 0xea, 0x5c, 0x4c, 0xd6, 0x99, 0x5c, 0xb9, 0x19, - 0xbc, 0x89, 0x0b, 0xd3, 0x02, 0xca, 0xee, 0xd2, 0xb8, 0xc3, 0x3f, 0x6f, 0xc4, 0xc3, 0x48, 0x94, - 0x72, 0xc1, 0x5c, 0xd6, 0x84, 0xf1, 0x4a, 0x12, 0x1b, 0x7a, 0x92, 0x1f, 0xb9, 0x0d, 0x33, 0xe5, - 0x4e, 0xa7, 0xe9, 0xd1, 0x06, 0x7e, 0x25, 0x4f, 0xa7, 0x6a, 0xc5, 0x29, 0x34, 0x5c, 0x5e, 0x28, - 0x6e, 0x0b, 0xc9, 0x5c, 0xaa, 0x69, 0x5a, 0xeb, 0xdb, 0xb9, 0x54, 0xa3, 0xc9, 0xab, 0x30, 0x86, - 0x3f, 0x34, 0x17, 0x6b, 0x54, 0x02, 0xf0, 0x26, 0xa2, 0x32, 0x22, 0x46, 0x60, 0xc2, 0x92, 0x1e, - 0x66, 0xa9, 0xc0, 0x85, 0x25, 0x71, 0x53, 0x8d, 0xef, 0xa6, 0x8b, 0xd2, 0x52, 0xb3, 0x10, 0x0b, - 0x5d, 0x68, 0xa9, 0x29, 0xec, 0x33, 0xad, 0xef, 0xcf, 0x9b, 0xd3, 0x8e, 0x9c, 0xd7, 0xe4, 0x76, - 0x2d, 0xd0, 0x93, 0x94, 0xdb, 0x35, 0x69, 0xfd, 0x1f, 0xe4, 0x60, 0xf6, 0x76, 0xb0, 0xeb, 0xb6, - 0xbd, 0x6f, 0xf1, 0xc0, 0x96, 0x3e, 0x8e, 0x4b, 0xff, 0x6c, 0x44, 0x4f, 0x2a, 0xab, 0x8a, 0xaf, - 0x55, 0xcc, 0x66, 0x0a, 0x4e, 0x19, 0x3b, 0xab, 0x3d, 0x68, 0xfb, 0x8e, 0x0d, 0xd3, 0x92, 0xdb, - 0x70, 0x74, 0x0e, 0xb7, 0x7e, 0x2c, 0x0f, 0xe3, 0xda, 0x12, 0x20, 0x9f, 0x87, 0x09, 0x9d, 0x8f, - 0xae, 0x40, 0xd2, 0xab, 0xb5, 0x0d, 0x2c, 0xd4, 0x20, 0x51, 0xb7, 0x65, 0x68, 0x90, 0xd8, 0x44, - 0x47, 0xe8, 0x11, 0xaf, 0x36, 0xef, 0x66, 0x5c, 0x6d, 0x8e, 0x94, 0x77, 0xf7, 0xad, 0xf4, 0x05, - 0x67, 0xf0, 0x34, 0xb9, 0xd6, 0x4f, 0xe6, 0xa0, 0x94, 0x5c, 0xa4, 0x9f, 0x4a, 0xaf, 0x1c, 0xe1, - 0xb5, 0xe0, 0x47, 0xf3, 0x2a, 0xe6, 0xb8, 0xf4, 0xe8, 0x79, 0x5a, 0x4d, 0x62, 0xde, 0x36, 0x14, - 0xf9, 0xcf, 0x9a, 0xc1, 0x69, 0x74, 0x5f, 0xd8, 0xec, 0x88, 0x54, 0x43, 0xdf, 0xf9, 0x85, 0xc5, - 0x67, 0xac, 0xf7, 0x61, 0x2e, 0xd9, 0x1d, 0xa8, 0xcc, 0x2f, 0xc3, 0xb4, 0x09, 0x4f, 0x66, 0x2c, - 0x48, 0x52, 0xd9, 0x49, 0x7c, 0xeb, 0xf7, 0xf3, 0x49, 0xde, 0xc2, 0x3c, 0x86, 0x6d, 0x3a, 0x6d, - 0x77, 0xbb, 0xa9, 0x22, 0x96, 0xf3, 0x4d, 0x87, 0x83, 0x6c, 0x59, 0x76, 0x94, 0x14, 0x1e, 0xca, - 0x2f, 0xa5, 0x90, 0xed, 0x97, 0x42, 0xae, 0x26, 0x6c, 0xcc, 0xb4, 0x20, 0x0a, 0x0f, 0xe9, 0xb6, - 0x13, 0xdb, 0x99, 0x25, 0x4c, 0xcb, 0x56, 0x60, 0xce, 0x88, 0x08, 0x2a, 0xe9, 0x87, 0x63, 0xdd, - 0x6d, 0x84, 0x05, 0x9c, 0x38, 0x13, 0x99, 0xac, 0xc1, 0x28, 0x6b, 0xe6, 0x2d, 0xb7, 0x23, 0x74, - 0xf4, 0x44, 0x79, 0xa9, 0x35, 0xd5, 0x85, 0x4f, 0x73, 0x54, 0x6b, 0x52, 0x76, 0xe4, 0x1b, 0x69, - 0xab, 0x39, 0xa2, 0xf5, 0x2f, 0x72, 0x6c, 0xfd, 0xd7, 0xef, 0x7f, 0xc6, 0xf2, 0x80, 0xb0, 0x4f, - 0xea, 0x63, 0xbd, 0xf5, 0x47, 0x79, 0x1e, 0x74, 0x5e, 0x4c, 0x9f, 0x37, 0x60, 0x64, 0xcb, 0x0d, - 0x76, 0x69, 0x24, 0xc2, 0xb1, 0xeb, 0x5c, 0x78, 0x41, 0x1c, 0xe2, 0x21, 0xc2, 0xdf, 0xb6, 0x20, - 0xd0, 0x75, 0x61, 0xf9, 0x81, 0x74, 0x61, 0x9a, 0xa6, 0xb7, 0xf0, 0xc4, 0x34, 0xbd, 0xdf, 0xa3, - 0xe2, 0xcb, 0x97, 0xa3, 0x01, 0x02, 0x4e, 0x9e, 0x49, 0xe6, 0x67, 0x48, 0x85, 0x06, 0x8d, 0xd9, - 0x91, 0xab, 0x7a, 0xc6, 0x07, 0xcd, 0xd5, 0xe3, 0x90, 0xdc, 0x0e, 0xd6, 0x1f, 0x15, 0x78, 0x1f, - 0x8b, 0x8e, 0x3a, 0x67, 0xb8, 0x81, 0xe1, 0x3a, 0x61, 0x1b, 0xbd, 0xee, 0x91, 0x8b, 0x86, 0x1d, - 0xe7, 0x60, 0x88, 0xcd, 0x4d, 0xd1, 0x9b, 0x88, 0xc7, 0xe6, 0xaf, 0x8e, 0xc7, 0xca, 0xd9, 0x5a, - 0xc6, 0x33, 0x49, 0xcf, 0xb1, 0x83, 0xc7, 0x96, 0xbe, 0x96, 0x11, 0x83, 0x9c, 0x87, 0xa1, 0x0d, - 0xbf, 0x21, 0x03, 0x9b, 0xce, 0xa1, 0x33, 0xb0, 0xdf, 0xd0, 0x58, 0xce, 0xe7, 0x6c, 0xc4, 0x60, - 0xdf, 0xaa, 0x42, 0xb6, 0xeb, 0xdf, 0xda, 0xda, 0x71, 0x45, 0xf4, 0x2d, 0xfd, 0x5b, 0xe3, 0xe8, - 0xee, 0xab, 0x30, 0x65, 0x66, 0xd9, 0x14, 0xb6, 0x6d, 0xa8, 0xb1, 0x4d, 0x24, 0xeb, 0xd4, 0x15, - 0xed, 0x26, 0x11, 0x59, 0x86, 0x49, 0x23, 0xa0, 0x9a, 0x78, 0x2c, 0x43, 0xf5, 0xa6, 0x19, 0x8e, - 0x4d, 0x57, 0x6f, 0x1a, 0x24, 0xec, 0x3c, 0x17, 0xed, 0xd7, 0x9e, 0xcc, 0x52, 0x6d, 0x17, 0x38, - 0xe4, 0x0a, 0x14, 0xb9, 0xd7, 0x6d, 0xb5, 0xa2, 0x3f, 0x7c, 0x84, 0x08, 0x4b, 0x78, 0xad, 0x4b, - 0x44, 0xcd, 0xcb, 0xf2, 0x73, 0x50, 0x12, 0x5b, 0x52, 0x9c, 0xcf, 0xf2, 0x39, 0x18, 0x5a, 0xa9, - 0x56, 0x6c, 0x7d, 0x1b, 0xa9, 0x7b, 0x8d, 0xc0, 0x46, 0x28, 0x9a, 0xee, 0x6f, 0xd0, 0xe8, 0xa1, - 0x1f, 0xdc, 0xb7, 0x69, 0x18, 0x05, 0x1e, 0x4f, 0xd1, 0x84, 0x0b, 0xf1, 0xf3, 0xe4, 0x2d, 0x18, - 0x46, 0x23, 0xab, 0xc4, 0xc9, 0x90, 0xac, 0x63, 0x79, 0x52, 0x4c, 0xe0, 0x61, 0xb4, 0xd8, 0xb2, - 0x39, 0x11, 0x79, 0x03, 0x86, 0x2a, 0xb4, 0xbd, 0x9f, 0x48, 0x52, 0x93, 0x22, 0x56, 0x1b, 0x42, - 0x83, 0xb6, 0xf7, 0x6d, 0x24, 0xb1, 0x7e, 0x32, 0x0f, 0xc7, 0x32, 0x9a, 0x75, 0xf7, 0xf3, 0x4f, - 0xe9, 0xae, 0xb8, 0x6c, 0xec, 0x8a, 0xf2, 0xbd, 0xb3, 0x67, 0xc7, 0x67, 0x6e, 0x92, 0x3f, 0x97, - 0x83, 0x13, 0xe6, 0x04, 0x15, 0x56, 0x95, 0x77, 0xaf, 0x90, 0x37, 0x61, 0x64, 0x8d, 0xba, 0x0d, - 0x2a, 0x13, 0x58, 0x1c, 0x53, 0xf1, 0x71, 0xb8, 0x4b, 0x21, 0x2f, 0xe4, 0x6c, 0x63, 0x07, 0x14, - 0x0e, 0x25, 0x15, 0xd1, 0x38, 0x2e, 0x8f, 0x5b, 0xd2, 0xbd, 0x37, 0xab, 0xaa, 0x3e, 0x56, 0x03, - 0xdf, 0xcd, 0xc1, 0xb3, 0x7d, 0x68, 0xd8, 0xc0, 0xb1, 0xa1, 0xd7, 0x07, 0x0e, 0x4f, 0x54, 0x84, - 0x92, 0x77, 0x60, 0x7a, 0x4b, 0xc8, 0xf3, 0x72, 0x38, 0xf2, 0xf1, 0x7a, 0x91, 0xa2, 0xbe, 0x23, - 0xc7, 0x25, 0x89, 0x6c, 0xf8, 0x9d, 0x17, 0xfa, 0xfa, 0x9d, 0xeb, 0x6e, 0xdc, 0x43, 0x83, 0xba, - 0x71, 0xbf, 0x9f, 0xcc, 0x4d, 0x2f, 0xa2, 0xe9, 0xc5, 0x4e, 0xec, 0xb9, 0xde, 0x4e, 0xec, 0x7d, - 0x63, 0x76, 0x59, 0x3f, 0x96, 0x83, 0x92, 0xc9, 0xfb, 0x93, 0x8e, 0xe7, 0xdb, 0xc6, 0x78, 0x3e, - 0x9b, 0x3d, 0x9e, 0xbd, 0x07, 0xf2, 0xff, 0xc8, 0x25, 0x3f, 0x76, 0xa0, 0x11, 0xb4, 0x60, 0xa4, - 0xe2, 0xb7, 0x5c, 0xaf, 0xad, 0xa7, 0x47, 0x6d, 0x20, 0xc4, 0x16, 0x25, 0x83, 0xf9, 0xfc, 0x9f, - 0x81, 0xe1, 0x0d, 0xbf, 0x5d, 0xae, 0x08, 0xa3, 0x43, 0xe4, 0xd3, 0xf6, 0xdb, 0x8e, 0xdb, 0xb0, - 0x79, 0x01, 0x59, 0x07, 0xa8, 0xd5, 0x03, 0x4a, 0xdb, 0x35, 0xef, 0x5b, 0x34, 0x21, 0x69, 0xb0, - 0x1e, 0x6a, 0x76, 0x71, 0x63, 0xc1, 0x37, 0x9e, 0x10, 0x11, 0x9d, 0xd0, 0xfb, 0x96, 0xbe, 0xdf, - 0x6a, 0xf4, 0x16, 0x05, 0x88, 0x89, 0x30, 0x57, 0x9c, 0xd7, 0x10, 0xf9, 0x7f, 0x27, 0x45, 0xae, - 0x38, 0x06, 0x30, 0x72, 0xc5, 0x31, 0x00, 0xdb, 0xda, 0xd7, 0xa8, 0xb7, 0xbb, 0xc7, 0xad, 0x4f, - 0x26, 0xf9, 0x54, 0xdd, 0x43, 0x88, 0xbe, 0xb5, 0x73, 0x1c, 0xeb, 0x5f, 0x0e, 0xc3, 0x49, 0x9b, - 0xee, 0x7a, 0x4c, 0x4c, 0xbe, 0x13, 0x7a, 0xed, 0x5d, 0xc3, 0x2b, 0xdb, 0x4a, 0x4c, 0x24, 0x11, - 0xc2, 0x98, 0x41, 0x54, 0xc7, 0x5c, 0x80, 0x22, 0x3b, 0x15, 0xb5, 0xb9, 0x84, 0x6f, 0x28, 0x98, - 0xdc, 0x9c, 0x4f, 0x72, 0x59, 0x4c, 0x5e, 0x16, 0xa7, 0xb6, 0x16, 0x64, 0x9e, 0x9d, 0xda, 0x1f, - 0x1d, 0x2c, 0x42, 0x6d, 0x3f, 0x8c, 0x28, 0xde, 0xd8, 0xc4, 0xc9, 0xad, 0x44, 0xeb, 0xa1, 0x1e, - 0xa2, 0xf5, 0x2d, 0x98, 0x2b, 0x37, 0xf8, 0x66, 0xed, 0x36, 0x37, 0x03, 0xaf, 0x5d, 0xf7, 0x3a, - 0x6e, 0x53, 0x5e, 0x17, 0xb1, 0x97, 0x5d, 0x55, 0xee, 0x74, 0x14, 0x82, 0x9d, 0x49, 0xc6, 0x3e, - 0xa3, 0xb2, 0x51, 0x43, 0xe7, 0x65, 0xf1, 0x3c, 0x86, 0x9f, 0xd1, 0x68, 0x87, 0xf8, 0x15, 0xa1, - 0xad, 0x8a, 0x51, 0xa8, 0x47, 0x73, 0x86, 0xad, 0xf5, 0x5a, 0xec, 0x9d, 0xc4, 0x63, 0xe0, 0x72, - 0x93, 0x87, 0xa8, 0x19, 0xa2, 0xd9, 0x83, 0x81, 0x17, 0xd3, 0xd5, 0x6a, 0x6b, 0x8c, 0xae, 0x98, - 0xa2, 0x0b, 0xc3, 0x3d, 0x9d, 0x8e, 0xe3, 0x91, 0x4b, 0x6c, 0x2a, 0xb4, 0xfc, 0x88, 0xe2, 0x3c, - 0x1f, 0x8b, 0xaf, 0x00, 0x01, 0x42, 0xf9, 0x15, 0x40, 0x43, 0x21, 0x6f, 0xc1, 0xec, 0xea, 0xca, - 0x92, 0x54, 0x6a, 0x56, 0xfc, 0x7a, 0x17, 0x1f, 0xa8, 0x01, 0xeb, 0xc3, 0x31, 0xa4, 0xf5, 0x25, - 0x36, 0xb9, 0xb3, 0xd0, 0xc8, 0x39, 0x18, 0xad, 0x56, 0x78, 0xdf, 0x8f, 0xeb, 0x89, 0x1e, 0x84, - 0xe1, 0x87, 0x2c, 0x24, 0xb7, 0x63, 0x19, 0x75, 0xe2, 0x50, 0x61, 0xf2, 0xe4, 0x00, 0xf2, 0xe9, - 0x1b, 0x30, 0xb9, 0xec, 0x47, 0xd5, 0x76, 0x18, 0xb9, 0xed, 0x3a, 0xad, 0x56, 0xf4, 0xa8, 0x8b, - 0xdb, 0x7e, 0xe4, 0x78, 0xa2, 0x84, 0xb5, 0xdc, 0xc4, 0x24, 0x5f, 0x44, 0xd2, 0xeb, 0xb4, 0x4d, - 0x83, 0x38, 0xda, 0xe2, 0x30, 0xef, 0x5b, 0x46, 0xba, 0xab, 0x4a, 0x6c, 0x13, 0x51, 0x24, 0xa1, - 0xe0, 0x49, 0x99, 0x56, 0xfc, 0x06, 0x0d, 0xef, 0x5e, 0xfe, 0x8c, 0x25, 0xa1, 0xd0, 0xbe, 0x0d, - 0xb7, 0xcc, 0xcb, 0x99, 0xfb, 0xeb, 0xbf, 0x8b, 0x49, 0x28, 0x52, 0xb8, 0xe4, 0x8b, 0x30, 0x8c, - 0x3f, 0x85, 0xb0, 0x35, 0x9b, 0xc1, 0x36, 0x16, 0xb4, 0xea, 0x3c, 0xa7, 0x32, 0x12, 0x90, 0x2a, - 0x8c, 0x0a, 0x39, 0xff, 0x28, 0xa1, 0xd4, 0xc5, 0x85, 0x81, 0xcf, 0x0c, 0x41, 0x6f, 0x35, 0x60, - 0x42, 0xaf, 0x90, 0xad, 0x88, 0x35, 0x37, 0xdc, 0xa3, 0x0d, 0xf6, 0x4b, 0x64, 0x41, 0xc1, 0x15, - 0xb1, 0x87, 0x50, 0x87, 0xb5, 0xc3, 0xd6, 0x50, 0xd8, 0x16, 0x5f, 0x0d, 0xef, 0x84, 0xa2, 0x29, - 0xe2, 0xe6, 0xef, 0xa1, 0x16, 0xa9, 0x61, 0x8b, 0x22, 0xeb, 0x7b, 0x60, 0x6e, 0xa3, 0xdb, 0x6c, - 0xba, 0xdb, 0x4d, 0x2a, 0xa3, 0x64, 0x47, 0x6e, 0x44, 0xc9, 0x32, 0x0c, 0xd7, 0xb4, 0x2c, 0x8d, - 0xb3, 0x2a, 0x0c, 0x79, 0x8c, 0x83, 0x36, 0x76, 0x39, 0x74, 0x24, 0x4f, 0xe4, 0x67, 0xe4, 0xa4, - 0xd6, 0xef, 0xc6, 0xd9, 0xbd, 0xb7, 0x02, 0xb7, 0x7e, 0x5f, 0x65, 0xea, 0x1c, 0x34, 0x51, 0xf9, - 0x0d, 0xd9, 0x08, 0xf3, 0xfc, 0xcc, 0x6a, 0xf0, 0x61, 0x8d, 0x21, 0x6f, 0xc1, 0xb8, 0x38, 0x43, - 0xb5, 0xf0, 0x47, 0x18, 0x63, 0x42, 0xdc, 0x3e, 0x92, 0xc6, 0x11, 0x3a, 0x3a, 0x8a, 0x06, 0xe6, - 0xa7, 0xdc, 0xbd, 0xfc, 0x69, 0x88, 0x06, 0x66, 0x1d, 0x7d, 0xa6, 0xee, 0x6f, 0x8e, 0x27, 0xfb, - 0x56, 0xcc, 0xdd, 0xab, 0x7a, 0xc0, 0x93, 0x5c, 0x7c, 0x51, 0x8b, 0x03, 0x9e, 0xe8, 0x17, 0x35, - 0x85, 0xaa, 0xc6, 0x24, 0x7f, 0xc8, 0x98, 0xbc, 0x23, 0xc7, 0xa4, 0xd0, 0x7b, 0x62, 0xcc, 0xf6, - 0x19, 0x87, 0x5a, 0xbc, 0x42, 0x86, 0x06, 0xba, 0xe5, 0x3f, 0x83, 0x91, 0x5d, 0x39, 0x49, 0x72, - 0x17, 0x15, 0x9c, 0x74, 0xd5, 0xc1, 0xf0, 0xe0, 0x4c, 0x0f, 0xd9, 0x9a, 0xbf, 0x04, 0x13, 0xe5, - 0x28, 0x72, 0xeb, 0x7b, 0xb4, 0x51, 0x61, 0xdb, 0x93, 0x16, 0x9b, 0xc1, 0x15, 0x70, 0xfd, 0x0d, - 0x47, 0xc7, 0xe5, 0xb1, 0xc6, 0xdc, 0x50, 0x58, 0xeb, 0xa9, 0x58, 0x63, 0x0c, 0x62, 0xc6, 0x1a, - 0x63, 0x10, 0x72, 0x09, 0x46, 0xab, 0xed, 0x07, 0x1e, 0xeb, 0x93, 0x62, 0x9c, 0xb6, 0xd7, 0xe3, - 0x20, 0x7d, 0x73, 0x15, 0x58, 0xe4, 0x0d, 0x4d, 0xc6, 0x1e, 0x8b, 0xef, 0xd3, 0x5c, 0x03, 0xa3, - 0xbc, 0xba, 0x75, 0xf9, 0x59, 0x09, 0xdd, 0x57, 0x61, 0x54, 0x2a, 0xd6, 0x20, 0xbe, 0x43, 0x0b, - 0xca, 0xb4, 0xf7, 0xa7, 0x44, 0xc6, 0xe4, 0x8e, 0x5a, 0x36, 0x97, 0x71, 0x2d, 0xb9, 0xa3, 0x96, - 0xcd, 0xc5, 0x48, 0xee, 0xa8, 0xe5, 0x75, 0x51, 0x3a, 0x89, 0x89, 0x43, 0x75, 0x12, 0x77, 0x61, - 0x62, 0xd3, 0x0d, 0x22, 0x8f, 0xc9, 0x28, 0xed, 0x28, 0x9c, 0x9f, 0x34, 0xd4, 0x78, 0x5a, 0xd1, - 0xf2, 0x69, 0x99, 0x8f, 0xb0, 0xa3, 0xe1, 0x9b, 0x89, 0xf3, 0x62, 0x78, 0xb6, 0xad, 0xde, 0xd4, - 0x27, 0xb1, 0xd5, 0xc3, 0x4e, 0x45, 0xd5, 0xcd, 0x74, 0xac, 0x20, 0x40, 0x19, 0x3a, 0xa1, 0xbf, - 0x51, 0x88, 0xe4, 0xab, 0x30, 0xc1, 0xfe, 0xde, 0xf4, 0x9b, 0x5e, 0xdd, 0xa3, 0xe1, 0x7c, 0x09, - 0x3f, 0xee, 0x74, 0xe6, 0xea, 0x47, 0xa4, 0xfd, 0x1a, 0x8d, 0xf8, 0x02, 0x46, 0xc6, 0x49, 0x9d, - 0xac, 0xc1, 0x8d, 0xbc, 0x0b, 0x13, 0x6c, 0xf6, 0x6d, 0xbb, 0x21, 0x17, 0x4d, 0x67, 0x62, 0x6b, - 0xcb, 0x86, 0x80, 0xa7, 0xc2, 0xfd, 0xe9, 0x04, 0xec, 0x98, 0x2f, 0x77, 0xf8, 0x06, 0x49, 0xb4, - 0xd9, 0xde, 0x49, 0x6d, 0x8e, 0x12, 0x8d, 0xbc, 0x07, 0x13, 0xe5, 0x4e, 0x27, 0xde, 0x71, 0x66, - 0x35, 0xbd, 0x4c, 0xa7, 0xe3, 0x64, 0xee, 0x3a, 0x06, 0x45, 0x72, 0x63, 0x9e, 0x3b, 0xd2, 0xc6, - 0x4c, 0x5e, 0x53, 0xd2, 0xfa, 0xb1, 0x58, 0xc9, 0x28, 0xee, 0x31, 0x86, 0xe8, 0xcf, 0x05, 0xf7, - 0x15, 0x98, 0xe4, 0x5a, 0x37, 0x29, 0xcd, 0x1c, 0x4f, 0xad, 0x9e, 0x0c, 0xa1, 0xc6, 0xa4, 0x21, - 0xab, 0x30, 0xc5, 0x1d, 0xdd, 0x9a, 0x22, 0x0e, 0xe3, 0xfc, 0x89, 0x38, 0xd1, 0x34, 0xf7, 0x8f, - 0x6b, 0x62, 0x78, 0x6e, 0xd7, 0xe0, 0x92, 0x20, 0xb2, 0xfe, 0x38, 0x07, 0x27, 0x7a, 0x8c, 0xb8, - 0x8a, 0xd2, 0x97, 0xeb, 0x1f, 0xa5, 0x8f, 0xed, 0x1c, 0xe6, 0x25, 0x1d, 0xbf, 0x5f, 0x48, 0x59, - 0xfa, 0x78, 0x49, 0x79, 0xcb, 0x07, 0x22, 0x22, 0xe0, 0x8b, 0xaa, 0x6f, 0xf8, 0xa8, 0x29, 0x2c, - 0xa4, 0x0f, 0x21, 0x81, 0xc7, 0x1b, 0xb5, 0x6c, 0x3d, 0x3e, 0x58, 0x3c, 0x2d, 0x02, 0xec, 0xab, - 0x61, 0xfd, 0xd0, 0x37, 0x56, 0x70, 0x06, 0x6b, 0xeb, 0x20, 0x07, 0xe3, 0xda, 0x3a, 0x24, 0x67, - 0x34, 0xb7, 0xb9, 0x12, 0x4f, 0xd1, 0xa0, 0x71, 0xc8, 0xf3, 0x93, 0x08, 0x17, 0x55, 0xfe, 0x70, - 0x7d, 0xe8, 0x2d, 0x26, 0x0a, 0x69, 0x91, 0x0c, 0x5b, 0x86, 0xf2, 0xd2, 0xc6, 0x72, 0x4c, 0xa3, - 0xea, 0x86, 0x51, 0xb9, 0x1e, 0x79, 0x0f, 0xe8, 0x00, 0x87, 0x4e, 0x9c, 0x46, 0xd5, 0x0d, 0x23, - 0xc7, 0x45, 0xb2, 0x54, 0x1a, 0x55, 0xc5, 0xd0, 0xfa, 0x81, 0x1c, 0xc0, 0x9d, 0xea, 0x0a, 0x86, - 0x22, 0xfd, 0xa4, 0x42, 0x41, 0x76, 0x78, 0x37, 0xc9, 0xbd, 0x8f, 0x38, 0xf0, 0x3f, 0xe4, 0x60, - 0xca, 0x44, 0x23, 0xef, 0xc0, 0x74, 0xad, 0x1e, 0xf8, 0xcd, 0xe6, 0xb6, 0x5b, 0xbf, 0xbf, 0xee, - 0xb5, 0x29, 0x0f, 0xac, 0x35, 0xcc, 0xcf, 0xa2, 0x50, 0x15, 0x39, 0x4d, 0x56, 0x66, 0x27, 0x91, - 0xc9, 0x0f, 0xe6, 0x60, 0xb2, 0xb6, 0xe7, 0x3f, 0x8c, 0xb3, 0xdb, 0xf3, 0x01, 0xf9, 0x1a, 0x5b, - 0xdb, 0xe1, 0x9e, 0xff, 0xd0, 0xc9, 0x48, 0x71, 0xff, 0xd1, 0xc1, 0xe2, 0xdb, 0x83, 0x3d, 0x13, - 0xd7, 0x7d, 0xbc, 0xc9, 0x44, 0xe1, 0x45, 0xa3, 0x12, 0xdb, 0xac, 0xd3, 0xfa, 0x8b, 0x1c, 0x8c, - 0xe3, 0x9d, 0xa7, 0xd9, 0x44, 0x99, 0xeb, 0xb3, 0x94, 0x2c, 0x48, 0x7d, 0x57, 0x9f, 0x81, 0x7d, - 0x1d, 0xa6, 0x13, 0x68, 0xc4, 0x82, 0x91, 0x1a, 0xba, 0x4a, 0xeb, 0x0a, 0x0a, 0xee, 0x3c, 0x6d, - 0x8b, 0x12, 0x6b, 0x55, 0x23, 0xbb, 0x7b, 0x19, 0x5f, 0x19, 0x97, 0x00, 0x3c, 0x09, 0x92, 0x37, - 0x1b, 0x92, 0x6c, 0xc9, 0xdd, 0xcb, 0xb6, 0x86, 0x65, 0x6d, 0xc0, 0x48, 0xcd, 0x0f, 0xa2, 0xe5, - 0x7d, 0x7e, 0x99, 0xa8, 0xd0, 0xb0, 0xae, 0x3f, 0x23, 0x7a, 0xa8, 0xba, 0xaf, 0xdb, 0xa2, 0x88, - 0x2c, 0xc2, 0xf0, 0x35, 0x8f, 0x36, 0x1b, 0xba, 0xbd, 0xe8, 0x0e, 0x03, 0xd8, 0x1c, 0xce, 0x2e, - 0x5c, 0xc7, 0xe3, 0x88, 0xdd, 0xb1, 0x61, 0xea, 0x27, 0x5d, 0x37, 0x2b, 0x46, 0xff, 0x3e, 0x6f, - 0xe6, 0x0c, 0x36, 0x6a, 0xea, 0xd3, 0xd5, 0xff, 0x71, 0x0e, 0x16, 0x7a, 0x93, 0xe8, 0xb6, 0xae, - 0xb9, 0x3e, 0xb6, 0xae, 0x2f, 0x26, 0x9f, 0xbd, 0x10, 0x4d, 0x3c, 0x7b, 0xc5, 0x8f, 0x5d, 0x15, - 0x34, 0x35, 0xae, 0xab, 0x94, 0xee, 0x67, 0xfa, 0xb4, 0x19, 0x11, 0xf9, 0x30, 0x47, 0x48, 0x63, - 0x0b, 0x5a, 0xeb, 0x37, 0x86, 0xe0, 0x64, 0x4f, 0x0a, 0xb2, 0xa6, 0x05, 0xff, 0x9f, 0x52, 0x61, - 0xc7, 0x7b, 0xe2, 0x5f, 0xc4, 0x7f, 0xd1, 0x9a, 0x2c, 0xe9, 0x4c, 0x73, 0x5b, 0x05, 0x7d, 0xcf, - 0x23, 0xaf, 0x57, 0x0e, 0xe5, 0xc5, 0xd1, 0x91, 0x19, 0xa4, 0xe3, 0xbf, 0xa3, 0xdb, 0x15, 0x8d, - 0x5c, 0xaf, 0x19, 0xea, 0xcb, 0xae, 0xc1, 0x41, 0xb6, 0x2c, 0x8b, 0x0d, 0x90, 0x87, 0xb2, 0x0d, - 0x90, 0xad, 0x7f, 0x99, 0x83, 0x31, 0xd5, 0x6c, 0xb2, 0x00, 0xc7, 0xb7, 0xec, 0xf2, 0xca, 0xaa, - 0xb3, 0xf5, 0xfe, 0xe6, 0xaa, 0x73, 0x67, 0xa3, 0xb6, 0xb9, 0xba, 0x52, 0xbd, 0x56, 0x5d, 0xad, - 0x94, 0x9e, 0x21, 0x33, 0x30, 0x79, 0x67, 0xe3, 0xe6, 0xc6, 0xed, 0x7b, 0x1b, 0xce, 0xaa, 0x6d, - 0xdf, 0xb6, 0x4b, 0x39, 0x32, 0x09, 0x63, 0xf6, 0x72, 0x79, 0xc5, 0xd9, 0xb8, 0x5d, 0x59, 0x2d, - 0xe5, 0x49, 0x09, 0x26, 0x56, 0x6e, 0x6f, 0x6c, 0xac, 0xae, 0x6c, 0x55, 0xef, 0x56, 0xb7, 0xde, - 0x2f, 0x15, 0x08, 0x81, 0x29, 0x44, 0xd8, 0xb4, 0xab, 0x1b, 0x2b, 0xd5, 0xcd, 0xf2, 0x7a, 0x69, - 0x88, 0xc1, 0x18, 0xbe, 0x06, 0x1b, 0x56, 0x8c, 0x6e, 0xde, 0x59, 0x5e, 0x2d, 0x8d, 0x30, 0x14, - 0xf6, 0x97, 0x86, 0x32, 0xca, 0xaa, 0x47, 0x94, 0x4a, 0x79, 0xab, 0xbc, 0x5c, 0xae, 0xad, 0x96, - 0x8a, 0xe4, 0x04, 0xcc, 0x1a, 0x20, 0x67, 0xfd, 0xf6, 0xf5, 0xea, 0x46, 0x69, 0x8c, 0xcc, 0x41, - 0x49, 0xc1, 0x2a, 0xcb, 0xce, 0x9d, 0xda, 0xaa, 0x5d, 0x82, 0x24, 0x74, 0xa3, 0x7c, 0x6b, 0xb5, - 0x34, 0x6e, 0xbd, 0xcd, 0xdd, 0x9c, 0x78, 0x57, 0x93, 0xe3, 0x40, 0x6a, 0x5b, 0xe5, 0xad, 0x3b, - 0xb5, 0xc4, 0xc7, 0x8f, 0xc3, 0x68, 0xed, 0xce, 0xca, 0xca, 0x6a, 0xad, 0x56, 0xca, 0x11, 0x80, - 0x91, 0x6b, 0xe5, 0xea, 0xfa, 0x6a, 0xa5, 0x94, 0xb7, 0x7e, 0x22, 0x07, 0x33, 0x52, 0x02, 0x94, - 0x6f, 0x18, 0x9f, 0x70, 0x2d, 0xbe, 0x63, 0x5c, 0x6c, 0xa5, 0x17, 0x4a, 0xa2, 0x92, 0x3e, 0xcb, - 0xf0, 0xe7, 0x72, 0x70, 0x2c, 0x13, 0x9b, 0xbc, 0x0f, 0x25, 0xd9, 0x82, 0x5b, 0x6e, 0x54, 0xdf, - 0x8b, 0xf7, 0xb1, 0xd3, 0x89, 0x5a, 0x12, 0x68, 0x5c, 0xad, 0x19, 0xa7, 0x23, 0x4c, 0xb1, 0x19, - 0x3c, 0x58, 0xae, 0xf5, 0x9d, 0x1c, 0x9c, 0xe8, 0x51, 0x0d, 0x59, 0x81, 0x11, 0x15, 0x36, 0xbd, - 0x8f, 0x41, 0xd5, 0xdc, 0x77, 0x0f, 0x16, 0x05, 0x22, 0xe6, 0x6f, 0xc3, 0xbf, 0xec, 0x11, 0x15, - 0x07, 0x1d, 0x83, 0x91, 0xf3, 0xee, 0x3b, 0x99, 0xe8, 0x79, 0x51, 0x53, 0xf9, 0x5e, 0x6d, 0x79, - 0x5c, 0xf4, 0x5d, 0xc1, 0x7d, 0x18, 0x62, 0x34, 0x72, 0xeb, 0xa7, 0x73, 0x4c, 0xb8, 0x4b, 0x22, - 0x32, 0x99, 0xb7, 0x1c, 0x86, 0xdd, 0x16, 0xb5, 0xfd, 0x26, 0x2d, 0xdb, 0x1b, 0xe2, 0xd8, 0x40, - 0x69, 0xd5, 0xc5, 0x02, 0xbc, 0x56, 0x38, 0x6e, 0xd0, 0x36, 0x1e, 0x4f, 0x75, 0x1a, 0xf2, 0x06, - 0x80, 0xca, 0xf7, 0x2f, 0x83, 0x1a, 0xf0, 0xa0, 0x1e, 0x02, 0x6a, 0xca, 0xdb, 0x1a, 0xb2, 0xf5, - 0x37, 0x73, 0x30, 0x21, 0x2e, 0x4d, 0xe5, 0x26, 0x0d, 0xa2, 0x4f, 0x36, 0xbd, 0xde, 0x30, 0xa6, - 0x97, 0xf2, 0x1f, 0xd0, 0xf8, 0xb3, 0xe2, 0xcc, 0x99, 0xf5, 0xcf, 0x72, 0x50, 0x4a, 0x22, 0x92, - 0x77, 0xa0, 0x58, 0xa3, 0x0f, 0x68, 0xe0, 0x45, 0xfb, 0x62, 0xa3, 0x94, 0x09, 0x66, 0x38, 0x8e, - 0x28, 0xe3, 0xf3, 0x21, 0x14, 0xbf, 0x6c, 0x45, 0x33, 0xe8, 0x7e, 0xaf, 0xa9, 0x3d, 0x0a, 0x4f, - 0x4a, 0xed, 0x61, 0xfd, 0x2f, 0x79, 0x38, 0x71, 0x9d, 0x46, 0xfa, 0x37, 0xa9, 0xd7, 0xee, 0xcf, - 0x0d, 0xf6, 0x5d, 0xda, 0x97, 0xcc, 0xc3, 0x28, 0x16, 0xc9, 0xf1, 0xb5, 0xe5, 0x4f, 0xb2, 0xac, - 0xe6, 0x75, 0xc1, 0xc8, 0x60, 0xd1, 0xa3, 0xee, 0x8b, 0x5a, 0x4c, 0x7b, 0x35, 0xad, 0xcf, 0xc1, - 0x14, 0x06, 0x6d, 0xed, 0xb2, 0xe5, 0x40, 0x1b, 0x42, 0xfd, 0x53, 0xb4, 0x13, 0x50, 0xf2, 0x32, - 0x94, 0x18, 0xa4, 0x5c, 0xbf, 0xdf, 0xf6, 0x1f, 0x36, 0x69, 0x63, 0x97, 0xf2, 0x04, 0xed, 0x45, - 0x3b, 0x05, 0x97, 0x3c, 0xef, 0xb4, 0xf9, 0xd5, 0x8d, 0x36, 0x50, 0x47, 0x23, 0x78, 0xc6, 0xd0, - 0x85, 0x37, 0x60, 0xfc, 0x63, 0xe6, 0xa7, 0xb0, 0xfe, 0xe7, 0x1c, 0xcc, 0xe1, 0xc7, 0x69, 0x15, - 0xcb, 0xdc, 0x61, 0xb2, 0xb7, 0xb4, 0x90, 0xed, 0x2e, 0x03, 0x99, 0x4b, 0x41, 0xf5, 0x62, 0xac, - 0x13, 0xca, 0x0f, 0xa0, 0x13, 0xaa, 0x1d, 0x25, 0x4f, 0xea, 0x80, 0x2a, 0x2d, 0x9e, 0x85, 0x3f, - 0x1e, 0x72, 0xeb, 0x07, 0xf3, 0x30, 0x6a, 0x53, 0x4c, 0x20, 0x49, 0xce, 0xc1, 0xe8, 0x86, 0x1f, - 0xd1, 0xf0, 0x96, 0x91, 0x2d, 0xb4, 0xcd, 0x40, 0x4e, 0xab, 0x61, 0xcb, 0x42, 0x36, 0xe1, 0x37, - 0x03, 0xbf, 0xd1, 0xad, 0x47, 0xfa, 0x84, 0xef, 0x70, 0x90, 0x2d, 0xcb, 0xc8, 0xab, 0x30, 0x26, - 0x38, 0xab, 0x37, 0x46, 0xb4, 0x8d, 0x0d, 0xa8, 0x4a, 0x40, 0x1a, 0x23, 0xa0, 0x4c, 0xcb, 0x05, - 0x8c, 0x21, 0x4d, 0xa6, 0x4d, 0xc9, 0x0c, 0x52, 0x54, 0x1f, 0xee, 0x23, 0xaa, 0x7f, 0x0e, 0x46, - 0xca, 0x61, 0x48, 0x23, 0xe9, 0xa4, 0x3d, 0xa1, 0x22, 0xe6, 0x84, 0x34, 0xe2, 0x8c, 0x5d, 0x2c, - 0xb7, 0x05, 0x9e, 0xf5, 0x2f, 0xf2, 0x30, 0x8c, 0x7f, 0xe2, 0xbb, 0x6a, 0x50, 0xdf, 0x33, 0xde, - 0x55, 0x83, 0xfa, 0x9e, 0x8d, 0x50, 0x72, 0x19, 0x35, 0x15, 0x32, 0xbb, 0x80, 0xf8, 0x7a, 0x54, - 0xc1, 0x37, 0x62, 0xb0, 0xad, 0xe3, 0xa8, 0x07, 0xe7, 0x42, 0x66, 0x68, 0x86, 0xe3, 0x90, 0xbf, - 0x5d, 0x13, 0x5f, 0x8c, 0x21, 0x64, 0xfc, 0xd0, 0xce, 0xdf, 0xae, 0x61, 0x6f, 0xac, 0x95, 0x97, - 0x5e, 0xbf, 0xaa, 0x27, 0xb6, 0x0d, 0xf7, 0xdc, 0xa5, 0xd7, 0xaf, 0xda, 0xa2, 0x84, 0xf5, 0x2f, - 0xb6, 0x19, 0x1f, 0x5e, 0xb9, 0x53, 0x31, 0xf6, 0x2f, 0x7e, 0x1b, 0x3e, 0xb2, 0xda, 0x31, 0x02, - 0x59, 0x82, 0x71, 0xe1, 0xca, 0x8e, 0xf8, 0x9a, 0xab, 0xb9, 0x70, 0x75, 0xe7, 0x14, 0x3a, 0x12, - 0x7f, 0x82, 0x13, 0x03, 0x24, 0x73, 0xa0, 0x89, 0x27, 0x38, 0x39, 0x84, 0xa1, 0xad, 0xa1, 0xc4, - 0x3e, 0xd1, 0xb1, 0xb3, 0xb0, 0xee, 0x13, 0x8d, 0x41, 0x78, 0x15, 0x82, 0xf5, 0x4b, 0x79, 0x28, - 0x6e, 0x36, 0xbb, 0xbb, 0x5e, 0xfb, 0xee, 0x65, 0x42, 0x00, 0xaf, 0x71, 0x32, 0x4a, 0x33, 0xfb, - 0x9b, 0x9c, 0x84, 0xa2, 0xbc, 0xb9, 0xc9, 0x0d, 0x29, 0x14, 0xb7, 0xb6, 0x79, 0x90, 0xe3, 0x2e, - 0xb2, 0xf5, 0xcb, 0x9f, 0xe4, 0x32, 0xa8, 0xfb, 0x57, 0xaf, 0x8b, 0xda, 0x10, 0x5b, 0x2c, 0xb6, - 0x42, 0x23, 0xaf, 0x01, 0x1e, 0x12, 0xe2, 0xf2, 0x20, 0x15, 0xda, 0xbc, 0x69, 0x42, 0x4e, 0xe1, - 0x24, 0x88, 0x46, 0xae, 0x80, 0x98, 0x98, 0x22, 0xd7, 0xe6, 0x31, 0x93, 0x80, 0x67, 0x2f, 0x92, - 0x24, 0x02, 0x95, 0xbc, 0x05, 0xe3, 0x71, 0xa6, 0xfb, 0x38, 0x85, 0xa6, 0x4e, 0xb9, 0x12, 0x97, - 0xdf, 0xbd, 0x6c, 0xeb, 0xe8, 0xd6, 0x7f, 0x39, 0x02, 0x13, 0x7a, 0x7b, 0x88, 0x0d, 0xb3, 0x61, - 0x93, 0xdd, 0xdd, 0x85, 0xed, 0x53, 0x07, 0x0b, 0xc5, 0x71, 0x7a, 0xc6, 0x6c, 0x10, 0xc3, 0xe3, - 0x86, 0x50, 0xd2, 0x07, 0x7f, 0xed, 0x19, 0x7b, 0x26, 0x8c, 0xc1, 0x1c, 0x8f, 0x94, 0xa1, 0xe8, - 0x77, 0xc2, 0x5d, 0xda, 0xf6, 0xe4, 0x7b, 0xcb, 0x59, 0x83, 0xd1, 0x6d, 0x51, 0x98, 0xe2, 0xa5, - 0xc8, 0xc8, 0xeb, 0x30, 0xe2, 0x77, 0x68, 0xdb, 0xf5, 0xc4, 0x19, 0xf7, 0x6c, 0x82, 0x01, 0x6d, - 0x97, 0xab, 0x1a, 0xa1, 0x40, 0x26, 0x97, 0x60, 0xc8, 0xbf, 0xaf, 0xc6, 0xeb, 0xa4, 0x49, 0x74, - 0x3f, 0x72, 0x35, 0x12, 0x44, 0x64, 0x04, 0x1f, 0xba, 0xad, 0x1d, 0x31, 0x62, 0x26, 0xc1, 0x0d, - 0xb7, 0xb5, 0xa3, 0x13, 0x30, 0x44, 0xf2, 0x2e, 0x40, 0xc7, 0xdd, 0xa5, 0x81, 0xd3, 0xe8, 0x46, - 0xfb, 0x62, 0xdc, 0x4e, 0x1b, 0x64, 0x9b, 0xac, 0xb8, 0xd2, 0x8d, 0xf6, 0x35, 0xda, 0xb1, 0x8e, - 0x04, 0x92, 0x32, 0x40, 0xcb, 0x8d, 0x22, 0x1a, 0xb4, 0x7c, 0x61, 0x7c, 0x36, 0xae, 0x52, 0x54, - 0x72, 0x06, 0xb7, 0x54, 0xb1, 0xc6, 0x41, 0x23, 0xc2, 0x46, 0x7b, 0x81, 0x2b, 0x32, 0x9e, 0x26, - 0x1a, 0xed, 0x05, 0xc6, 0x57, 0x32, 0x44, 0xf2, 0x45, 0x18, 0x6d, 0x78, 0x61, 0xdd, 0x0f, 0x1a, - 0x22, 0x38, 0xc3, 0x73, 0x06, 0x4d, 0x85, 0x97, 0x69, 0x64, 0x12, 0x9d, 0xb5, 0x56, 0xc4, 0x7f, - 0xdb, 0xf0, 0x1f, 0xa2, 0x9a, 0x3f, 0xd9, 0xda, 0x9a, 0x2a, 0xd6, 0x5b, 0x1b, 0x13, 0xb1, 0xa1, - 0xdc, 0xf5, 0xa2, 0xa6, 0xbb, 0x2d, 0xde, 0xb9, 0xcd, 0xa1, 0xbc, 0x8e, 0x45, 0xfa, 0x50, 0x72, - 0x64, 0xf2, 0x06, 0x14, 0x69, 0x3b, 0x0a, 0x5c, 0xc7, 0x6b, 0x08, 0xa7, 0x3d, 0xb3, 0xd1, 0xec, - 0x00, 0x76, 0xab, 0x15, 0xbd, 0xd1, 0x88, 0x5f, 0x6d, 0xb0, 0xfe, 0x09, 0xeb, 0x5e, 0x4b, 0xf8, - 0xda, 0x99, 0xfd, 0x53, 0x5b, 0xa9, 0xde, 0xd2, 0xfb, 0x87, 0x21, 0x92, 0xd3, 0x00, 0xf1, 0x13, - 0x37, 0x7f, 0x90, 0xb0, 0x35, 0xc8, 0x97, 0x86, 0xfe, 0xb7, 0x5f, 0x58, 0xcc, 0x2d, 0x03, 0x14, - 0x65, 0x74, 0x0a, 0x6b, 0x1d, 0x4e, 0xf6, 0x5c, 0x14, 0xe4, 0x02, 0x94, 0x76, 0x5c, 0xa1, 0x12, - 0xab, 0xef, 0xb9, 0xed, 0x36, 0x6d, 0x8a, 0xed, 0x68, 0x5a, 0xc2, 0x57, 0x38, 0x98, 0x73, 0xb6, - 0xde, 0x85, 0xb9, 0xac, 0xde, 0x20, 0xcf, 0xc3, 0x84, 0x1e, 0x88, 0x43, 0x30, 0x19, 0x77, 0x3b, - 0x9e, 0x0c, 0xc5, 0x21, 0x18, 0xfc, 0x7a, 0x0e, 0x9e, 0xeb, 0xb7, 0xb6, 0xc8, 0x02, 0x14, 0x3b, - 0x81, 0xe7, 0xa3, 0x0c, 0xc7, 0x77, 0x40, 0xf5, 0x9b, 0x9c, 0x02, 0xe0, 0xc2, 0x46, 0xe4, 0xee, - 0x0a, 0x63, 0x7c, 0x7b, 0x0c, 0x21, 0x5b, 0xee, 0x6e, 0x48, 0x5e, 0x81, 0x99, 0x06, 0xdd, 0x71, - 0xbb, 0xcd, 0xc8, 0x09, 0xeb, 0x7b, 0xb4, 0x81, 0xfe, 0x2f, 0x68, 0x64, 0x65, 0x97, 0x44, 0x41, - 0x4d, 0xc2, 0x53, 0x2d, 0x1e, 0xee, 0xd1, 0xe2, 0x1b, 0x43, 0xc5, 0x5c, 0x29, 0x6f, 0xa3, 0xad, - 0x91, 0xf5, 0x7d, 0x79, 0x98, 0xef, 0x35, 0x99, 0xc8, 0xdb, 0x59, 0x7d, 0xc0, 0xb5, 0xfa, 0x3a, - 0x5c, 0xd7, 0xea, 0x6b, 0xb5, 0x91, 0x25, 0x50, 0xde, 0x2b, 0x87, 0x79, 0xa2, 0x4b, 0x18, 0xa3, - 0xe9, 0xb8, 0x61, 0xf8, 0x90, 0xad, 0x97, 0x82, 0x16, 0x68, 0x4f, 0xc0, 0x74, 0x1a, 0x09, 0x23, - 0x5f, 0x00, 0xa8, 0x37, 0xfd, 0x90, 0xe2, 0xe3, 0xb9, 0x38, 0x88, 0xb9, 0x09, 0xaf, 0x82, 0xea, - 0xaf, 0xa5, 0x08, 0x5d, 0xf1, 0x1b, 0x54, 0x0c, 0xa0, 0x0b, 0x27, 0x7a, 0xec, 0x1e, 0x6c, 0x78, - 0xe2, 0xc4, 0x9e, 0x32, 0x4d, 0x40, 0x57, 0xa5, 0xf7, 0x4c, 0xf6, 0x78, 0xbe, 0xd7, 0x1c, 0xd9, - 0x07, 0x92, 0xde, 0x22, 0x18, 0x77, 0x61, 0x88, 0xda, 0x0d, 0x14, 0x77, 0x0e, 0xb9, 0x13, 0x34, - 0xc9, 0x22, 0x8c, 0xcb, 0x34, 0x40, 0x4c, 0xd0, 0xe5, 0xcc, 0x41, 0x80, 0x6e, 0x52, 0x9c, 0x3c, - 0x18, 0x0f, 0x12, 0x7d, 0x94, 0xc4, 0x11, 0x3a, 0x86, 0x90, 0xad, 0xfd, 0x8e, 0xfc, 0xba, 0xe7, - 0xe4, 0xfc, 0x36, 0x37, 0x6e, 0x51, 0xfa, 0x33, 0x39, 0x39, 0xfc, 0xe9, 0x9d, 0xef, 0xb0, 0xf6, - 0x11, 0x40, 0x8f, 0x12, 0xd1, 0x30, 0xfc, 0x9b, 0x1d, 0xe9, 0x72, 0xd5, 0x89, 0x23, 0x5d, 0xfc, - 0x24, 0xe7, 0x60, 0x3a, 0xe0, 0x36, 0x87, 0x91, 0x2f, 0xfa, 0x13, 0x47, 0xca, 0x9e, 0xe4, 0xe0, - 0x2d, 0x1f, 0xfb, 0x54, 0xb4, 0xeb, 0x86, 0xea, 0x30, 0xed, 0x20, 0x20, 0x17, 0x61, 0x8c, 0x1d, - 0x04, 0x18, 0xe7, 0x22, 0x61, 0xca, 0x8e, 0x78, 0x78, 0xac, 0xda, 0xc5, 0x0f, 0xc5, 0xdf, 0x82, - 0xd7, 0x3f, 0xcd, 0x49, 0x66, 0xfa, 0x31, 0x44, 0x4e, 0xc0, 0xa8, 0x1f, 0xec, 0x6a, 0x9f, 0x36, - 0xe2, 0x07, 0xbb, 0xec, 0xbb, 0xce, 0x43, 0x89, 0x7b, 0x56, 0x70, 0x97, 0xf5, 0x70, 0xbf, 0xcd, - 0xef, 0xa9, 0x45, 0x7b, 0x8a, 0xc3, 0x31, 0xd7, 0xe9, 0x7e, 0xbb, 0xce, 0x30, 0xc3, 0xd0, 0x77, - 0xf4, 0xe0, 0x36, 0xe2, 0xb3, 0xa7, 0xc2, 0xd0, 0x8f, 0xa3, 0xdc, 0x34, 0xc8, 0x32, 0x4c, 0x32, - 0x3e, 0x2a, 0xc4, 0x8e, 0x38, 0x25, 0x4f, 0xa5, 0x4f, 0xc9, 0xfd, 0x76, 0x5d, 0x36, 0xd1, 0x9e, - 0x08, 0xb5, 0x5f, 0xe2, 0x6b, 0x7e, 0x36, 0x0f, 0xc7, 0xb3, 0xd1, 0x71, 0xbc, 0x58, 0x25, 0xe8, - 0x60, 0xc4, 0xd5, 0x9b, 0xf6, 0x18, 0x83, 0xf0, 0x18, 0x0a, 0x59, 0xad, 0xcd, 0x67, 0xb6, 0xf6, - 0x65, 0x98, 0x41, 0x46, 0x42, 0x2e, 0x69, 0x7a, 0x61, 0x24, 0x42, 0x03, 0xd8, 0xd3, 0xac, 0x80, - 0x6f, 0x70, 0xeb, 0x0c, 0x4c, 0x5e, 0x84, 0x29, 0xb9, 0x45, 0xf9, 0x0f, 0xdb, 0xac, 0x62, 0xbe, - 0x3f, 0x4d, 0x0a, 0xe8, 0x6d, 0x04, 0x92, 0x63, 0x30, 0xe2, 0x76, 0x3a, 0xac, 0x4a, 0xbe, 0x2d, - 0x0d, 0xbb, 0x9d, 0x4e, 0xb5, 0x41, 0xce, 0xc2, 0x24, 0xba, 0x53, 0x39, 0x3b, 0x68, 0x53, 0x22, - 0x0c, 0xd8, 0xec, 0x09, 0x04, 0x72, 0x3b, 0x93, 0x90, 0x2d, 0x04, 0x46, 0x2b, 0x51, 0x46, 0x11, - 0x05, 0xdc, 0x8e, 0x44, 0x10, 0x3d, 0xf3, 0x45, 0x98, 0x16, 0xa7, 0xa9, 0xd8, 0xe1, 0x91, 0x52, - 0xcc, 0x3f, 0x26, 0xe6, 0x8a, 0xf0, 0xe8, 0x20, 0x40, 0xd5, 0x86, 0xa4, 0xfc, 0x83, 0x1c, 0x1c, - 0xcb, 0x3c, 0x8e, 0xc9, 0x37, 0x80, 0x7b, 0x97, 0x44, 0xbe, 0x13, 0xd0, 0xba, 0xd7, 0xf1, 0xd0, - 0xff, 0x9e, 0xab, 0xab, 0x96, 0xfa, 0x1d, 0xe4, 0xe8, 0xa9, 0xb2, 0xe5, 0xdb, 0x8a, 0x88, 0xdf, - 0xa3, 0x4b, 0x41, 0x02, 0xbc, 0xf0, 0x01, 0x1c, 0xcb, 0x44, 0xcd, 0xb8, 0xdf, 0xbe, 0x6a, 0xa6, - 0x91, 0x93, 0x0f, 0x10, 0x89, 0x8f, 0xd6, 0xee, 0xbd, 0xe2, 0xf3, 0x7e, 0x4b, 0x7d, 0x5e, 0xe2, - 0xe0, 0x26, 0xab, 0xc9, 0x69, 0x99, 0x25, 0x7b, 0x4a, 0xa2, 0x9e, 0x33, 0x93, 0x7c, 0x00, 0xc7, - 0xc4, 0x54, 0xd9, 0x0d, 0xdc, 0xce, 0x5e, 0xcc, 0x8e, 0x37, 0xf4, 0xa5, 0x2c, 0x76, 0x7c, 0x0e, - 0x5d, 0x67, 0xf8, 0x8a, 0xeb, 0xac, 0x9b, 0x06, 0x8a, 0x6f, 0x08, 0xe4, 0xa1, 0x9f, 0xd1, 0x9a, - 0x8c, 0x39, 0x98, 0xcb, 0x9a, 0x83, 0x03, 0x2f, 0x00, 0x51, 0xe7, 0xf7, 0xe7, 0xe0, 0xcc, 0x61, - 0x6d, 0x26, 0xf7, 0xe0, 0x38, 0x3e, 0x91, 0x87, 0xbe, 0xfa, 0x6c, 0xa7, 0xee, 0xd6, 0xf7, 0xa8, - 0x98, 0x25, 0x56, 0xe6, 0xc7, 0x77, 0x3a, 0xb5, 0xda, 0x6d, 0xed, 0xbb, 0x3b, 0x9d, 0x5a, 0xe8, - 0xcb, 0xdf, 0x2b, 0x8c, 0x5c, 0xb4, 0xa1, 0x01, 0xcf, 0xf6, 0xa1, 0xd4, 0x96, 0x55, 0x4e, 0x5f, - 0x56, 0xe7, 0xa1, 0xb4, 0x43, 0x1b, 0x4c, 0x84, 0xa2, 0x0d, 0x6c, 0xda, 0x83, 0x25, 0x9e, 0x8b, - 0xd1, 0x9e, 0x52, 0xf0, 0x5a, 0xe8, 0xdf, 0x5d, 0x12, 0xb5, 0xb4, 0xe4, 0x0e, 0xa9, 0x8b, 0x68, - 0xe4, 0x22, 0xcc, 0x26, 0x62, 0x09, 0xc4, 0xce, 0xa9, 0xf6, 0x0c, 0x2b, 0x32, 0x23, 0xcf, 0x3c, - 0x0f, 0x13, 0x72, 0x18, 0x02, 0xe5, 0xe2, 0x62, 0x8f, 0x0b, 0x18, 0x9b, 0xe5, 0xa2, 0xba, 0x7f, - 0x98, 0x97, 0x22, 0xd3, 0xb2, 0xef, 0x47, 0x61, 0x14, 0xb8, 0x1d, 0xe3, 0xde, 0x44, 0x5a, 0x70, - 0xd2, 0x77, 0xbb, 0xd1, 0xde, 0x92, 0xc3, 0xfe, 0xf5, 0x03, 0xe9, 0x6f, 0x5a, 0x97, 0x46, 0x73, - 0xe3, 0x4b, 0x97, 0xcc, 0xad, 0xb3, 0xcc, 0xb0, 0xcb, 0x3a, 0x32, 0x3b, 0xe1, 0x35, 0xae, 0x6b, - 0xcf, 0xd8, 0x27, 0x38, 0xcf, 0x14, 0x16, 0x59, 0x83, 0x89, 0x6d, 0xea, 0x06, 0x34, 0x70, 0xe2, - 0xa4, 0xef, 0xc9, 0x8b, 0xd3, 0x32, 0x22, 0xa0, 0xfd, 0xa8, 0xc9, 0x75, 0x7c, 0x3b, 0x2e, 0x21, - 0xef, 0xc0, 0x98, 0xd7, 0x10, 0xa1, 0xf2, 0xc4, 0xf5, 0xc9, 0x14, 0xd9, 0xab, 0x0d, 0x1e, 0x39, - 0x2f, 0xe6, 0xc1, 0xee, 0x5e, 0x9e, 0x80, 0x2e, 0x4f, 0x1a, 0x37, 0x4c, 0x6b, 0x59, 0x9e, 0xce, - 0x69, 0xb2, 0x54, 0xca, 0xfa, 0xe3, 0x30, 0x12, 0x6a, 0xb1, 0xfb, 0x6c, 0xf1, 0xcb, 0xfa, 0x6b, - 0x70, 0x7e, 0xd0, 0x3e, 0x22, 0xaf, 0x01, 0xe9, 0xd1, 0xe1, 0x63, 0xf6, 0x8c, 0x9b, 0xea, 0xb7, - 0xe7, 0x41, 0x0f, 0x3e, 0xe6, 0xc9, 0x01, 0x97, 0xb0, 0x3b, 0x81, 0x67, 0xfd, 0x40, 0x01, 0xa6, - 0xcc, 0x3b, 0x35, 0x79, 0x05, 0x86, 0x14, 0xdb, 0x29, 0xa5, 0xfb, 0xd5, 0x91, 0x18, 0x73, 0x1b, - 0x91, 0xd8, 0x01, 0x81, 0x4f, 0x45, 0x4e, 0x4b, 0x57, 0xcf, 0xda, 0x13, 0x08, 0x94, 0x6a, 0xd9, - 0x1b, 0xc0, 0x53, 0xff, 0xe2, 0x5e, 0x16, 0x0d, 0x96, 0xe8, 0xbe, 0xc8, 0x6e, 0xf6, 0xa8, 0x57, - 0x9b, 0x60, 0xb4, 0x6c, 0x3f, 0xc1, 0xdc, 0xf6, 0xf1, 0x95, 0x69, 0xa8, 0xf7, 0x95, 0x49, 0x7c, - 0x4a, 0x8f, 0x2b, 0xd3, 0x70, 0x9f, 0x2b, 0x53, 0x4c, 0xa9, 0x5f, 0x99, 0xf0, 0xe2, 0x3c, 0xda, - 0xeb, 0xe2, 0x1c, 0xd3, 0xf0, 0x8b, 0xf3, 0x0b, 0xe2, 0x73, 0x03, 0xf7, 0xa1, 0x83, 0xfd, 0xc0, - 0x8d, 0xda, 0xf8, 0x87, 0xd8, 0xee, 0x43, 0x7c, 0x54, 0x5b, 0x1e, 0x03, 0xf9, 0x12, 0x67, 0xfd, - 0x54, 0x2e, 0x71, 0xc9, 0x91, 0x43, 0xf1, 0x22, 0x4c, 0x79, 0x2d, 0x26, 0x7d, 0xd1, 0x86, 0x26, - 0x35, 0x4c, 0xda, 0x93, 0x12, 0xca, 0x25, 0x87, 0x97, 0x60, 0x5a, 0xa1, 0x71, 0xef, 0x67, 0x6e, - 0xa1, 0x6f, 0x2b, 0x6a, 0xe1, 0xfd, 0xfc, 0x0a, 0xcc, 0x28, 0x44, 0x21, 0xa8, 0x72, 0xc1, 0x61, - 0xd2, 0x2e, 0xc9, 0x02, 0x91, 0xc4, 0x32, 0xb4, 0x76, 0x93, 0xa7, 0xd2, 0xa7, 0xd4, 0x2a, 0xeb, - 0xb7, 0x0a, 0x86, 0x00, 0x28, 0xab, 0x59, 0x86, 0x71, 0xb6, 0x35, 0x8a, 0x4e, 0x12, 0xdb, 0xca, - 0xf3, 0x3d, 0xba, 0x5f, 0xbc, 0x65, 0xd6, 0x6a, 0xb7, 0x6d, 0x08, 0x43, 0x5f, 0x3e, 0x6d, 0x3a, - 0x7c, 0xf7, 0xe7, 0x32, 0x0c, 0x4e, 0x3f, 0xc9, 0x8e, 0xef, 0x21, 0x2f, 0xf7, 0x67, 0x57, 0xee, - 0x74, 0xb0, 0x8d, 0x6c, 0xf6, 0xe1, 0x29, 0xa0, 0x7e, 0xc9, 0x0a, 0xee, 0x00, 0xde, 0x97, 0x42, - 0x93, 0x79, 0x21, 0xe3, 0x5c, 0x4d, 0x31, 0xc7, 0x5e, 0x42, 0xce, 0xa5, 0xae, 0xfc, 0x53, 0xb2, - 0x5d, 0x85, 0x09, 0x76, 0xfb, 0x56, 0x0c, 0x87, 0x0c, 0x57, 0xa5, 0x5e, 0x1f, 0xbf, 0x52, 0xbd, - 0x65, 0x8f, 0x33, 0x3a, 0xc9, 0x66, 0x0f, 0x4e, 0xea, 0x32, 0xa2, 0xd9, 0xc8, 0x61, 0x19, 0x55, - 0xae, 0x6f, 0x0f, 0xc4, 0xa2, 0x24, 0x36, 0xf5, 0xb8, 0x6b, 0x02, 0x04, 0x9a, 0xb5, 0x07, 0x0b, - 0xbd, 0x87, 0x84, 0x5d, 0x3b, 0xa8, 0xee, 0x1f, 0x6d, 0xcb, 0x9f, 0xda, 0x01, 0x99, 0xd7, 0x0f, - 0xc8, 0x93, 0x50, 0x94, 0xf6, 0x70, 0xf2, 0xa2, 0xe2, 0x72, 0x5b, 0x38, 0xeb, 0xef, 0x15, 0xe0, - 0xec, 0x00, 0xc3, 0xd5, 0xa7, 0xce, 0xf7, 0x60, 0x9c, 0x2b, 0x0c, 0xf9, 0xf6, 0xc9, 0x1f, 0xdb, - 0xe5, 0x31, 0xc0, 0x98, 0x8a, 0xbd, 0x8e, 0x89, 0x30, 0xf1, 0x7e, 0x07, 0xa1, 0xfa, 0x9b, 0x7c, - 0x03, 0xa6, 0xf9, 0x86, 0xc6, 0xcd, 0x11, 0x76, 0xba, 0xcd, 0x01, 0x76, 0xb4, 0x67, 0xa5, 0xed, - 0x74, 0x82, 0x14, 0x37, 0x39, 0xdc, 0x31, 0x6a, 0x0a, 0x46, 0xb6, 0x60, 0x1c, 0xd1, 0x76, 0x5c, - 0xaf, 0x39, 0x90, 0x11, 0xaf, 0xb4, 0xcc, 0xd6, 0xc9, 0xb8, 0x15, 0x15, 0x03, 0x5c, 0xc3, 0xdf, - 0xec, 0x92, 0xd7, 0xee, 0xb6, 0x1c, 0xb7, 0xd3, 0xe1, 0x73, 0x41, 0xbc, 0xfa, 0x0c, 0xdb, 0x93, - 0xed, 0x6e, 0xab, 0xdc, 0xe9, 0xe0, 0x90, 0xe2, 0xf3, 0xd0, 0x0c, 0xc3, 0xe3, 0xab, 0x56, 0x62, - 0x8e, 0x20, 0x26, 0x63, 0xc0, 0xd7, 0xad, 0xc0, 0x9d, 0x03, 0x6e, 0x2c, 0xc0, 0xd5, 0xdd, 0x36, - 0xff, 0x61, 0xfd, 0x79, 0x5e, 0xca, 0x66, 0xbd, 0xe7, 0xfd, 0x5f, 0x0d, 0x51, 0xc6, 0x10, 0x9d, - 0x87, 0x12, 0xeb, 0xfa, 0x78, 0x53, 0x51, 0x63, 0x34, 0xd5, 0xee, 0xb6, 0x54, 0xdf, 0xe9, 0x1d, - 0x3f, 0xa2, 0x77, 0xfc, 0x17, 0xa4, 0x40, 0x9a, 0xb9, 0x3d, 0xf4, 0xee, 0x72, 0xeb, 0x7f, 0x2f, - 0xc0, 0xb9, 0xc1, 0x36, 0x81, 0xbf, 0x1a, 0xb7, 0x8c, 0x71, 0x4b, 0x5c, 0x82, 0x87, 0x93, 0x97, - 0xe0, 0xac, 0xb5, 0x37, 0x92, 0xb5, 0xf6, 0x52, 0x57, 0xee, 0xd1, 0x8c, 0x2b, 0x77, 0xe6, 0x02, - 0x2d, 0x1e, 0xb2, 0x40, 0xc7, 0xf4, 0x79, 0xf2, 0x27, 0x79, 0x98, 0xcd, 0x78, 0x12, 0x21, 0x1f, - 0xc0, 0xac, 0x14, 0xed, 0xf9, 0xc9, 0xc1, 0x45, 0x6e, 0x7e, 0xfa, 0x5e, 0xc8, 0x12, 0xea, 0x11, - 0x2d, 0x43, 0xf0, 0x9e, 0x11, 0xe2, 0x7c, 0x5c, 0xfe, 0x97, 0x47, 0x90, 0x27, 0xef, 0xc3, 0x71, - 0x0c, 0x7b, 0x5a, 0x77, 0x34, 0x79, 0xde, 0x09, 0xe8, 0x8e, 0x98, 0x0f, 0xcf, 0xa7, 0xc4, 0x5e, - 0xaf, 0xae, 0x35, 0xc7, 0xa6, 0x3b, 0x6b, 0xcf, 0xd8, 0x73, 0x61, 0x06, 0x3c, 0x79, 0x47, 0xf8, - 0x8f, 0x72, 0x60, 0x1d, 0xde, 0x5f, 0xa8, 0xab, 0x4c, 0x76, 0xf8, 0x98, 0x3d, 0xee, 0x6a, 0xbd, - 0x77, 0x16, 0x26, 0x03, 0xba, 0x13, 0xd0, 0x70, 0x4f, 0xeb, 0xbe, 0x31, 0x7b, 0x42, 0x00, 0x65, - 0xc7, 0xc8, 0x60, 0x47, 0x47, 0x12, 0xb2, 0x25, 0x91, 0x75, 0x4d, 0x5d, 0xfd, 0x32, 0xc7, 0x81, - 0xcd, 0x26, 0xbd, 0x81, 0xfc, 0xc7, 0x8d, 0xa1, 0x62, 0xbe, 0x54, 0xb0, 0x45, 0x48, 0xa6, 0x1d, - 0xaf, 0x49, 0xad, 0x5f, 0xcb, 0x49, 0x89, 0x20, 0xab, 0xf3, 0xc8, 0x07, 0x9a, 0x11, 0x4f, 0x21, - 0x25, 0x86, 0x64, 0x91, 0xe8, 0xf6, 0x0e, 0x22, 0x4a, 0x10, 0x02, 0x8c, 0x28, 0x41, 0x08, 0xf9, - 0x24, 0x96, 0x08, 0x6f, 0xc8, 0x37, 0x40, 0xb6, 0xdb, 0xdd, 0xbd, 0x4c, 0x2e, 0xc0, 0x28, 0x7f, - 0xf6, 0x93, 0x0d, 0x9d, 0x36, 0x1a, 0x7a, 0xf7, 0xb2, 0x2d, 0xcb, 0xad, 0xef, 0xe4, 0xd4, 0xc3, - 0x47, 0xb2, 0xf9, 0x77, 0x2f, 0x93, 0x2f, 0x0c, 0x66, 0x8e, 0x53, 0x94, 0xe6, 0x38, 0xca, 0x14, - 0xe7, 0x8b, 0x86, 0x29, 0xce, 0x0b, 0xfd, 0xfb, 0x49, 0xa8, 0x58, 0x93, 0xd9, 0xa8, 0xff, 0x3c, - 0x07, 0xa7, 0xfa, 0x52, 0x90, 0xe7, 0xa0, 0x58, 0xde, 0xac, 0x6e, 0xc5, 0x23, 0xcb, 0x56, 0x8b, - 0x84, 0x90, 0xeb, 0x30, 0xb6, 0xec, 0x86, 0x5e, 0x9d, 0x4d, 0xe0, 0x4c, 0xa5, 0x51, 0x8a, 0xad, - 0x42, 0x5f, 0x7b, 0xc6, 0x8e, 0x69, 0x89, 0x03, 0x33, 0xb8, 0x0a, 0x52, 0xd9, 0x5e, 0x93, 0x0a, - 0x83, 0x14, 0xc3, 0x14, 0x19, 0xdb, 0x61, 0x52, 0xc0, 0xe4, 0xe2, 0x7b, 0x20, 0xa5, 0x90, 0xde, - 0x0d, 0x3c, 0x42, 0x60, 0xaf, 0xf3, 0x50, 0xdc, 0x94, 0x8f, 0x1f, 0x9a, 0xfd, 0x9a, 0x7c, 0xe8, - 0xb0, 0x55, 0xa9, 0xf5, 0xb7, 0x73, 0xf2, 0x56, 0x7f, 0xf8, 0x87, 0x68, 0x69, 0x00, 0x1a, 0xfd, - 0xd3, 0x00, 0x34, 0x3e, 0x66, 0x1a, 0x00, 0xeb, 0x97, 0x44, 0xd8, 0xcd, 0x6a, 0x63, 0x33, 0x91, - 0x99, 0xea, 0x93, 0xda, 0x21, 0xae, 0x1a, 0xb3, 0xf3, 0xac, 0x96, 0x9a, 0x24, 0x5d, 0x57, 0x6f, - 0x73, 0x44, 0x6d, 0xaa, 0xfe, 0x49, 0x1e, 0x9e, 0xeb, 0x47, 0x9e, 0x99, 0x44, 0x2b, 0x77, 0xb4, - 0x24, 0x5a, 0x17, 0xa0, 0xc8, 0x61, 0x66, 0x66, 0x62, 0x41, 0xca, 0x3a, 0x5c, 0x16, 0x93, 0xb3, - 0x30, 0x52, 0x5e, 0xa9, 0xc5, 0xb9, 0x13, 0xd0, 0x1a, 0xc6, 0xad, 0xff, 0xff, 0xd4, 0x5d, 0xdd, - 0x6f, 0x1b, 0xd9, 0x75, 0xf7, 0x90, 0x94, 0x2c, 0x1d, 0xea, 0x63, 0x74, 0x57, 0x6b, 0x2b, 0xb2, - 0x2d, 0xef, 0xb2, 0x5e, 0x67, 0xcd, 0xcd, 0x7a, 0xe3, 0x75, 0x37, 0x89, 0xb7, 0x75, 0x36, 0x23, - 0x72, 0x28, 0xce, 0x8a, 0x1c, 0x72, 0x67, 0x86, 0x52, 0xbc, 0xf9, 0x18, 0xd0, 0xe2, 0x58, 0x62, - 0x43, 0x0d, 0x19, 0xce, 0x70, 0x1d, 0xef, 0x4b, 0xdb, 0x97, 0x14, 0x68, 0x91, 0x7e, 0x04, 0x45, - 0x51, 0x14, 0x05, 0x8a, 0x02, 0xfe, 0x2f, 0xfa, 0x0f, 0x04, 0x08, 0x02, 0xe4, 0xb9, 0x05, 0x8c, - 0xd6, 0x40, 0x5f, 0xd2, 0xc7, 0xa2, 0x2f, 0x79, 0x2a, 0xee, 0xb9, 0xf7, 0xce, 0xdc, 0x99, 0x21, - 0xb9, 0x92, 0xed, 0xb4, 0xd8, 0x27, 0x89, 0xe7, 0x9e, 0x7b, 0xe7, 0xce, 0xdc, 0xaf, 0x73, 0xce, - 0x3d, 0xe7, 0x77, 0x02, 0xf4, 0xb3, 0xe0, 0x45, 0xe4, 0x87, 0xd9, 0x74, 0x21, 0x3c, 0x69, 0xc2, - 0x15, 0xe9, 0x83, 0x64, 0x10, 0x71, 0xb1, 0xbf, 0x31, 0x82, 0x2b, 0x07, 0x45, 0xb4, 0xb2, 0xa9, - 0x47, 0x4a, 0xb0, 0xd8, 0x1e, 0x7b, 0x81, 0x17, 0xca, 0x9e, 0x2a, 0x23, 0xa4, 0x58, 0xbc, 0x84, - 0xfb, 0x91, 0x74, 0x9f, 0xb0, 0xb0, 0xc1, 0x45, 0x39, 0x94, 0x1b, 0x1d, 0x4f, 0x28, 0xd9, 0x92, - 0x58, 0x4a, 0x7f, 0xa6, 0xc0, 0xe6, 0xb4, 0x6e, 0x91, 0xab, 0x50, 0xf0, 0xa7, 0x26, 0x3a, 0xf1, - 0x59, 0xf0, 0x52, 0x11, 0xb3, 0xc2, 0x3e, 0x1a, 0x8e, 0x4f, 0xbb, 0xa1, 0xec, 0x9e, 0x23, 0x91, - 0x2d, 0xa0, 0x3f, 0x6a, 0xf8, 0x3f, 0xb9, 0x2e, 0x36, 0xdb, 0x7c, 0x26, 0x35, 0x0a, 0xfe, 0x29, - 0x69, 0x00, 0x46, 0xaf, 0xdd, 0x1a, 0x31, 0x80, 0xd5, 0xbb, 0x50, 0xa0, 0xdd, 0x4a, 0x4d, 0x46, - 0x3a, 0x1d, 0xb4, 0x66, 0x83, 0x33, 0xb1, 0x5e, 0x05, 0xdd, 0xd3, 0x81, 0x85, 0xcc, 0xa5, 0x43, - 0x58, 0x4b, 0x72, 0x10, 0x3d, 0x09, 0xc9, 0x55, 0x7c, 0x5f, 0xe5, 0x2d, 0xed, 0x0e, 0x87, 0xcc, - 0x45, 0x74, 0xf7, 0x2b, 0xff, 0xfa, 0xec, 0x3a, 0xd0, 0x9f, 0xac, 0xce, 0x34, 0xc8, 0xae, 0xd2, - 0x5f, 0xe5, 0x60, 0x33, 0x8e, 0x4a, 0x13, 0x4b, 0xe2, 0x4b, 0x1b, 0x22, 0xa1, 0x25, 0x5c, 0xf8, - 0x85, 0xc4, 0x94, 0x7d, 0xc1, 0x39, 0x9e, 0xc3, 0x7b, 0xb0, 0x35, 0x8b, 0x9f, 0xbc, 0x93, 0xc9, - 0xda, 0xce, 0x21, 0x1b, 0xa2, 0xf4, 0xee, 0x52, 0x12, 0xf7, 0x5f, 0x29, 0xb0, 0xcd, 0x1d, 0x1b, - 0x9b, 0xdd, 0xbe, 0x1f, 0x7a, 0x7e, 0xd7, 0x3f, 0xf2, 0x5e, 0x4d, 0x88, 0xcf, 0x5e, 0x62, 0x5b, - 0x7a, 0x2b, 0xe9, 0xbf, 0x9a, 0x79, 0xda, 0xec, 0xb7, 0x25, 0xb7, 0x10, 0x9c, 0xe3, 0x88, 0x4d, - 0xde, 0x02, 0x0b, 0xa9, 0xf4, 0x29, 0x41, 0x0e, 0xa9, 0x44, 0x8e, 0xd2, 0x1f, 0xc3, 0xce, 0xfc, - 0x07, 0x90, 0x1f, 0xc0, 0x2a, 0x02, 0xda, 0x77, 0x46, 0xc7, 0xe3, 0x6e, 0xcf, 0x13, 0x36, 0x2d, - 0x61, 0x52, 0x94, 0xcb, 0x18, 0x20, 0x09, 0x0f, 0xf1, 0x3b, 0x46, 0xa8, 0x7c, 0x5e, 0x29, 0xe1, - 0x3d, 0x2c, 0xb7, 0x56, 0xfa, 0x13, 0x05, 0x48, 0xb6, 0x0d, 0xf2, 0x0d, 0x58, 0xe9, 0x38, 0x15, - 0x3b, 0xec, 0x8e, 0xc3, 0xfa, 0x70, 0x32, 0xe6, 0x40, 0x1f, 0x2c, 0xe2, 0x2b, 0x3c, 0xa2, 0x3b, - 0xc3, 0x38, 0x74, 0x4f, 0x86, 0x93, 0xb1, 0x95, 0xe0, 0x43, 0xd4, 0x7c, 0xcf, 0xfb, 0x51, 0xaf, - 0xfb, 0x24, 0x89, 0x9a, 0xcf, 0x69, 0x09, 0xd4, 0x7c, 0x4e, 0x2b, 0x3d, 0x55, 0xe0, 0x8a, 0xf0, - 0x78, 0xe8, 0x4d, 0xe9, 0x4b, 0x05, 0xe3, 0x9a, 0xc7, 0x02, 0xe8, 0x6c, 0x9e, 0x6c, 0xba, 0x21, - 0x42, 0xff, 0xb1, 0x83, 0x28, 0xa4, 0xb2, 0xba, 0xe4, 0x3b, 0x50, 0xb0, 0xc3, 0xe1, 0xe8, 0x0c, - 0xb1, 0xff, 0x6a, 0x34, 0xa2, 0xe1, 0x70, 0x84, 0x4d, 0x60, 0xcd, 0x92, 0x07, 0x9b, 0x72, 0xe7, - 0x44, 0x8f, 0x49, 0x13, 0x2e, 0x72, 0x24, 0x98, 0xd4, 0xed, 0xd0, 0x9c, 0x77, 0xda, 0x5d, 0x17, - 0x00, 0x03, 0x1c, 0x68, 0xcb, 0x12, 0x6d, 0x94, 0xfe, 0x52, 0x81, 0x22, 0x15, 0x1e, 0x50, 0x1d, - 0x7b, 0xd9, 0x29, 0x9d, 0x94, 0x03, 0xc5, 0xe5, 0x62, 0xd4, 0xfc, 0x99, 0x0e, 0xd7, 0x0f, 0x60, - 0x3d, 0x55, 0x81, 0x94, 0x30, 0xb4, 0x74, 0xd0, 0x3f, 0xea, 0x32, 0x10, 0x6e, 0x76, 0x33, 0x97, - 0xa0, 0x95, 0xfe, 0x5c, 0x81, 0x4d, 0xaa, 0xbc, 0x1b, 0x68, 0xb7, 0xb5, 0x26, 0x03, 0xb1, 0xde, - 0xa9, 0x40, 0x24, 0x5c, 0x67, 0x58, 0xd8, 0x1b, 0x13, 0x88, 0x38, 0xcd, 0x8a, 0x4a, 0x49, 0x1d, - 0x96, 0xf8, 0xf9, 0x12, 0x70, 0x7c, 0xac, 0x1d, 0xc9, 0x2a, 0x10, 0x37, 0xcc, 0x99, 0xe8, 0x9b, - 0xe0, 0x16, 0xc6, 0xeb, 0x58, 0x51, 0xed, 0xd2, 0x7f, 0x2b, 0x70, 0x79, 0x46, 0x1d, 0x72, 0x1f, - 0x16, 0xd0, 0x25, 0x9f, 0x8f, 0xde, 0xd5, 0x19, 0x8f, 0x08, 0x8f, 0x4e, 0x0e, 0xee, 0xb0, 0x83, - 0xe8, 0x94, 0xfe, 0xb0, 0x58, 0x2d, 0xf2, 0x3d, 0x58, 0xd6, 0x7a, 0x3d, 0xae, 0x97, 0xe4, 0x12, - 0x7a, 0xc9, 0x8c, 0x27, 0xde, 0x8e, 0xf8, 0x99, 0x5e, 0xc2, 0x9c, 0x43, 0x7b, 0x3d, 0x97, 0x87, - 0x1b, 0xc4, 0xed, 0x6d, 0xff, 0x21, 0xac, 0x25, 0x99, 0xcf, 0xa5, 0x97, 0xfc, 0xbd, 0x02, 0x6a, - 0xb2, 0x0f, 0xbf, 0x1b, 0x68, 0x84, 0x69, 0xc3, 0xfc, 0x05, 0x93, 0xea, 0x6f, 0x72, 0xf0, 0xfa, - 0xd4, 0x2f, 0x4c, 0xde, 0x85, 0x45, 0x6d, 0x34, 0x32, 0xaa, 0x7c, 0x56, 0x71, 0x81, 0x07, 0xcd, - 0xbd, 0x09, 0xb5, 0x8d, 0x31, 0x91, 0xbb, 0xb0, 0x84, 0x33, 0x93, 0x56, 0xc8, 0xc5, 0x48, 0x55, - 0xcc, 0x1a, 0x92, 0x42, 0xaa, 0x12, 0x8c, 0xa4, 0x06, 0x6b, 0x3c, 0x4a, 0xda, 0xf2, 0x8e, 0xbd, - 0x9f, 0x44, 0x90, 0xa9, 0x88, 0xea, 0x2a, 0x6c, 0xc8, 0xee, 0x98, 0x95, 0xc9, 0x71, 0xc2, 0xc9, - 0x5a, 0xa4, 0x01, 0x2a, 0xb6, 0x29, 0xb7, 0xc4, 0xe0, 0xb2, 0x30, 0x6e, 0x9d, 0x75, 0x62, 0x46, - 0x5b, 0x99, 0x9a, 0xd1, 0x70, 0x69, 0x41, 0xd0, 0x3f, 0xf6, 0x4f, 0x3d, 0x3f, 0xfc, 0xdd, 0x0d, - 0x57, 0xfc, 0x8c, 0x33, 0x0d, 0xd7, 0xdf, 0x16, 0xd8, 0x62, 0x4e, 0x57, 0xa3, 0x12, 0x8d, 0x84, - 0x90, 0x88, 0x12, 0x0d, 0x66, 0xbd, 0x64, 0x71, 0xc0, 0x55, 0xb8, 0xc8, 0xe2, 0xb3, 0xc5, 0xca, - 0xb8, 0x36, 0xb5, 0x0b, 0x8c, 0xe7, 0xe0, 0x0e, 0x13, 0x5f, 0x58, 0x6c, 0x40, 0x60, 0x89, 0xaa, - 0xe4, 0x00, 0x8a, 0x95, 0x81, 0xd7, 0xf5, 0x27, 0x23, 0xe7, 0x6c, 0xd7, 0x80, 0x5b, 0xfc, 0x5d, - 0x56, 0x8e, 0x58, 0x35, 0xbc, 0x3e, 0xc4, 0x9d, 0x5c, 0x6e, 0x88, 0x38, 0x91, 0xbb, 0x70, 0x01, - 0x4d, 0x8e, 0x5f, 0x9f, 0xf3, 0x7d, 0xd2, 0x44, 0xac, 0x97, 0xf4, 0x85, 0xe7, 0xfe, 0xc4, 0x2e, - 0xac, 0x35, 0xba, 0x41, 0xe8, 0x8c, 0xbb, 0x7e, 0x80, 0xb8, 0x4e, 0x67, 0xc0, 0xbd, 0x10, 0xf9, - 0x71, 0x99, 0x29, 0x32, 0x8c, 0xaa, 0x32, 0x53, 0x64, 0xb2, 0x39, 0x2a, 0x2f, 0xd5, 0xfa, 0x7e, - 0x77, 0xd0, 0xff, 0x5c, 0x44, 0x55, 0x30, 0x79, 0xe9, 0x91, 0x20, 0x5a, 0x71, 0x79, 0xe9, 0xfb, - 0x99, 0x71, 0x63, 0xbd, 0x2c, 0xc2, 0x45, 0x1e, 0x73, 0xc7, 0x62, 0xd0, 0xda, 0xba, 0x59, 0x35, - 0xcc, 0x3d, 0x55, 0x21, 0x6b, 0x00, 0x6d, 0xab, 0x55, 0xd1, 0x6d, 0x9b, 0xfe, 0xce, 0xd1, 0xdf, - 0x3c, 0x40, 0xad, 0xd6, 0x69, 0xa8, 0x79, 0x29, 0x46, 0xad, 0x50, 0xfa, 0xa5, 0x02, 0x97, 0xa6, - 0x0f, 0x25, 0x71, 0x00, 0xa3, 0x14, 0xf9, 0x85, 0xf0, 0x37, 0xe6, 0x8e, 0xfb, 0x54, 0x72, 0x3a, - 0xda, 0x31, 0x64, 0x51, 0x74, 0x39, 0x71, 0xeb, 0x13, 0x67, 0x76, 0xed, 0xf7, 0x4a, 0x15, 0xd8, - 0x9a, 0xd5, 0x46, 0xf2, 0x55, 0xd7, 0xa1, 0xa8, 0xb5, 0xdb, 0x0d, 0xa3, 0xa2, 0x39, 0x46, 0xcb, - 0x54, 0x15, 0xb2, 0x0c, 0x0b, 0x7b, 0x56, 0xab, 0xd3, 0x56, 0x73, 0xa5, 0x9f, 0x2b, 0xb0, 0x6a, - 0xf8, 0xa1, 0x77, 0xcc, 0xbc, 0x54, 0x5f, 0x76, 0xf1, 0x7d, 0x98, 0x58, 0x7c, 0x5b, 0x51, 0x3c, - 0x6f, 0xf4, 0x80, 0x33, 0xad, 0xbc, 0xa7, 0x39, 0xd8, 0xc8, 0xd4, 0x21, 0x36, 0x5c, 0xd4, 0x0e, - 0xed, 0x96, 0x51, 0xad, 0xf0, 0x9e, 0x09, 0xa9, 0x9c, 0x53, 0xb3, 0x4f, 0x61, 0x31, 0x30, 0x8f, - 0x03, 0x77, 0xd8, 0xef, 0x49, 0xf9, 0xa4, 0xea, 0x17, 0x2c, 0xd1, 0x12, 0x9e, 0x64, 0x9f, 0x4f, - 0xc6, 0x1e, 0x36, 0x9b, 0x4b, 0x58, 0x34, 0x23, 0x7a, 0xb6, 0x61, 0x74, 0xca, 0xec, 0xd2, 0xf2, - 0x6c, 0xd3, 0x71, 0x7b, 0xc4, 0x84, 0xc5, 0xbd, 0x7e, 0x58, 0x9f, 0x3c, 0xe4, 0xeb, 0x77, 0x27, - 0xc6, 0x93, 0xaf, 0x4f, 0x1e, 0x66, 0x9b, 0x45, 0x63, 0x1d, 0x8b, 0x57, 0x4f, 0x34, 0xc9, 0x5b, - 0xd9, 0x5d, 0x85, 0x22, 0xd7, 0x82, 0x50, 0xc1, 0xf8, 0x99, 0x02, 0x5b, 0xb3, 0xde, 0x9d, 0x2a, - 0x56, 0xc9, 0x00, 0xbb, 0x4b, 0x11, 0xc2, 0x70, 0x32, 0xb2, 0x4e, 0xb0, 0x91, 0x8f, 0xa0, 0xc8, - 0xd2, 0x6f, 0xdb, 0x77, 0x3b, 0x96, 0xc1, 0x27, 0xdc, 0xb5, 0xdf, 0x3c, 0xbb, 0x7e, 0x99, 0x25, - 0xeb, 0x76, 0x83, 0xbb, 0xee, 0x64, 0xdc, 0x4f, 0xa0, 0xb1, 0xca, 0x35, 0x4a, 0x3f, 0x55, 0x60, - 0x7b, 0xf6, 0x47, 0xa3, 0xa7, 0x96, 0x43, 0x65, 0xfd, 0x38, 0x46, 0x09, 0x4f, 0x2d, 0x94, 0xff, - 0x53, 0x41, 0x4a, 0x11, 0x23, 0xad, 0x14, 0x65, 0x7e, 0xcc, 0x65, 0x12, 0xbe, 0x25, 0x2b, 0x09, - 0x46, 0x0c, 0x8a, 0x9c, 0xf1, 0x8d, 0xc9, 0xb7, 0xa7, 0x82, 0x90, 0xa3, 0x2b, 0xb0, 0x0c, 0x42, - 0x9e, 0x48, 0x4f, 0x21, 0xc3, 0x91, 0xdf, 0x87, 0x05, 0x44, 0x84, 0xe4, 0x93, 0x85, 0x24, 0x86, - 0x14, 0x61, 0x21, 0x99, 0xee, 0x83, 0x4c, 0xb2, 0xee, 0x83, 0x84, 0xd2, 0xdf, 0x29, 0x50, 0x94, - 0x78, 0xc9, 0x7b, 0xa9, 0x1b, 0x22, 0x61, 0x9b, 0x41, 0x92, 0x3c, 0x4a, 0xe2, 0xe2, 0xe8, 0x00, - 0xd6, 0x30, 0x51, 0x1f, 0x77, 0x62, 0x09, 0x05, 0x8a, 0xea, 0x46, 0x94, 0x5c, 0xa4, 0x2e, 0x52, - 0x70, 0xb3, 0x6c, 0x5b, 0x09, 0x66, 0x59, 0x27, 0xa2, 0x25, 0x9a, 0x28, 0x28, 0xfd, 0x57, 0x0e, - 0x2e, 0xd1, 0x45, 0x3c, 0xf0, 0x82, 0x80, 0x52, 0x3d, 0x3f, 0xe4, 0x62, 0x2d, 0xf9, 0x26, 0x2c, - 0x9e, 0x9c, 0xcf, 0x22, 0xcb, 0xd8, 0x09, 0x01, 0x3c, 0x18, 0x85, 0x63, 0x2d, 0xfd, 0x9f, 0xbc, - 0x09, 0x52, 0x52, 0x42, 0x5c, 0x17, 0x2b, 0xbb, 0xb9, 0x2d, 0xc5, 0x5a, 0x1e, 0x45, 0xe9, 0x09, - 0xbf, 0x05, 0x0b, 0x68, 0x85, 0xe1, 0x47, 0x94, 0x50, 0x2d, 0xa6, 0xf7, 0x0e, 0x6d, 0x34, 0x16, - 0xab, 0x40, 0xde, 0x03, 0x88, 0x11, 0x80, 0xf9, 0x19, 0x24, 0xcc, 0x19, 0x11, 0x08, 0xb0, 0xb5, - 0x7c, 0xfa, 0xa8, 0xcb, 0x61, 0x75, 0xcb, 0xb0, 0x21, 0xa6, 0xd2, 0x48, 0xc0, 0x0d, 0xf1, 0x6b, - 0xc2, 0x75, 0x56, 0x60, 0x8c, 0x04, 0xe4, 0xd0, 0x0d, 0x58, 0x0b, 0x82, 0x13, 0x57, 0xea, 0x3d, - 0xa2, 0x0e, 0x5a, 0x2b, 0x41, 0x70, 0x12, 0xe7, 0x56, 0xbc, 0x01, 0x6b, 0xe1, 0x20, 0x90, 0xb9, - 0x96, 0x18, 0x57, 0x38, 0x08, 0x22, 0xae, 0xd2, 0x7f, 0xe6, 0x60, 0xf9, 0x90, 0x0a, 0x7f, 0x68, - 0xd2, 0x98, 0x6f, 0x22, 0x79, 0x1f, 0x8a, 0x8d, 0x61, 0x97, 0xdf, 0xc7, 0x04, 0x1c, 0x3d, 0x0d, - 0x83, 0xa5, 0x06, 0xc3, 0xae, 0xb8, 0xda, 0x09, 0x2c, 0x99, 0xe9, 0x0b, 0x02, 0xbd, 0x3e, 0x86, - 0x45, 0x76, 0x3f, 0xc6, 0x8d, 0x6f, 0x42, 0xfc, 0x8f, 0x7a, 0x74, 0x9b, 0x15, 0x4b, 0x57, 0x08, - 0xec, 0x8e, 0x4d, 0x96, 0x45, 0x39, 0x78, 0x9a, 0x64, 0xc0, 0x59, 0x38, 0x9b, 0x01, 0x47, 0x02, - 0x89, 0x59, 0x3c, 0x0b, 0x48, 0xcc, 0xf6, 0x3d, 0x28, 0x4a, 0xfd, 0x39, 0x97, 0x36, 0xf0, 0xa7, - 0x39, 0x58, 0xc5, 0xb7, 0x8a, 0x9c, 0x65, 0xbe, 0x9c, 0xe6, 0xa8, 0x0f, 0x13, 0xe6, 0xa8, 0x2d, - 0x79, 0xbc, 0xd8, 0x9b, 0xcd, 0xb1, 0x43, 0x7d, 0x0c, 0x1b, 0x19, 0x46, 0xf2, 0x01, 0x2c, 0xd0, - 0xee, 0x0b, 0xf5, 0x5d, 0x4d, 0xcf, 0x80, 0x18, 0x50, 0x90, 0xbe, 0x78, 0x60, 0x31, 0xee, 0xd2, - 0xff, 0x28, 0xb0, 0xc2, 0xe1, 0xa5, 0xfd, 0x47, 0xc3, 0x2f, 0xfc, 0x9c, 0x37, 0xd3, 0x9f, 0x93, - 0x85, 0x2d, 0xf3, 0xcf, 0xf9, 0x7f, 0xfd, 0x11, 0xef, 0x25, 0x3e, 0xe2, 0xe5, 0x08, 0x5e, 0x48, - 0xbc, 0xce, 0x9c, 0x6f, 0xf8, 0x2f, 0x08, 0xb8, 0x97, 0x64, 0x24, 0x3f, 0x84, 0x65, 0xd3, 0x7b, - 0x9c, 0xd0, 0x82, 0x6f, 0xce, 0x68, 0xf4, 0x76, 0xc4, 0xc8, 0xd6, 0x14, 0x0a, 0x10, 0xbe, 0xf7, - 0xd8, 0xcd, 0x5c, 0xcd, 0xc5, 0x4d, 0x52, 0x45, 0x38, 0x59, 0xed, 0x3c, 0x53, 0x9f, 0x07, 0xc7, - 0x60, 0x24, 0xfe, 0x3f, 0x17, 0x00, 0xe2, 0xb8, 0x82, 0xf3, 0x9f, 0x39, 0x37, 0xb9, 0xa1, 0x3b, - 0x37, 0x1b, 0xfe, 0x09, 0x4d, 0xde, 0x15, 0xee, 0xb7, 0xdf, 0xf3, 0x06, 0x5d, 0xb6, 0xb7, 0xe7, - 0x77, 0x6f, 0x20, 0xda, 0x5f, 0x44, 0x9d, 0x91, 0x27, 0x10, 0xbd, 0xfb, 0xab, 0x94, 0x21, 0x13, - 0xab, 0x53, 0x78, 0xf1, 0x58, 0x9d, 0x85, 0x17, 0x88, 0xd5, 0x59, 0x3c, 0x63, 0xac, 0x4e, 0x1b, - 0x96, 0xfb, 0xfe, 0x67, 0x9e, 0x1f, 0x0e, 0xc7, 0x4f, 0xd0, 0xf3, 0x20, 0x36, 0x4f, 0xd2, 0x4f, - 0x6d, 0x88, 0x32, 0x36, 0xde, 0x28, 0xb4, 0x44, 0xfc, 0xf2, 0x70, 0x47, 0x44, 0xf2, 0xfb, 0x10, - 0xdf, 0x64, 0x71, 0x4c, 0xf8, 0xd9, 0xb2, 0xce, 0x91, 0xb8, 0xe8, 0xfa, 0x0e, 0x24, 0x2f, 0xb4, - 0x78, 0xa4, 0x2b, 0xcb, 0x69, 0x2b, 0x17, 0xc8, 0x12, 0xcd, 0x91, 0x74, 0xe7, 0xc5, 0x5d, 0x99, - 0x7f, 0x9b, 0x03, 0x92, 0xed, 0x38, 0xf9, 0x10, 0x8a, 0x6c, 0xeb, 0x77, 0xc7, 0xc1, 0x8f, 0x79, - 0x80, 0x09, 0x43, 0x5a, 0x90, 0xc8, 0x32, 0xd2, 0x02, 0x23, 0x5b, 0xc1, 0x8f, 0x07, 0xe4, 0x07, - 0xf0, 0x1a, 0x0e, 0xfc, 0xc8, 0x1b, 0xf7, 0x87, 0x3d, 0x17, 0x61, 0xf1, 0xba, 0x03, 0x9e, 0x6d, - 0xe8, 0x5d, 0x4c, 0x8b, 0x97, 0x2d, 0x9e, 0x31, 0x41, 0x30, 0x8e, 0xa3, 0x8d, 0x9c, 0x6d, 0xc6, - 0x48, 0x1c, 0x50, 0xe5, 0xfa, 0x8f, 0x26, 0x83, 0x01, 0x9f, 0x73, 0xe5, 0xdf, 0x3c, 0xbb, 0xbe, - 0x9d, 0x2e, 0x9b, 0xd1, 0xf0, 0x5a, 0xdc, 0x70, 0x6d, 0x32, 0x18, 0x90, 0x6f, 0x02, 0x0c, 0x7d, - 0xf7, 0xb4, 0x1f, 0x04, 0xec, 0x72, 0x2a, 0x8a, 0xc1, 0x8a, 0xa9, 0xf2, 0xf0, 0x0d, 0xfd, 0x26, - 0x23, 0xd2, 0xe1, 0x1b, 0x75, 0x8f, 0x3d, 0x8c, 0x5c, 0x66, 0x8e, 0x48, 0x1c, 0x3f, 0x5c, 0x10, - 0x93, 0xd3, 0xe8, 0xd8, 0xb3, 0xfb, 0x9f, 0x0b, 0x3f, 0xf2, 0x4f, 0x61, 0x83, 0xbb, 0x00, 0x1f, - 0xf6, 0xc3, 0x13, 0xae, 0x4b, 0xbd, 0x8c, 0x22, 0x26, 0x29, 0x53, 0xff, 0x56, 0x00, 0xd0, 0x0e, - 0x6d, 0x01, 0x0a, 0x72, 0x0b, 0x16, 0xa8, 0x86, 0x28, 0x2c, 0x4d, 0x28, 0xab, 0x62, 0xbb, 0xb2, - 0xac, 0x8a, 0x1c, 0x74, 0x9f, 0xb0, 0xbc, 0x63, 0x34, 0x76, 0xe6, 0x62, 0xb3, 0xd4, 0x98, 0x91, - 0x12, 0x1a, 0x04, 0x23, 0x91, 0x06, 0x40, 0x0c, 0xd3, 0xc1, 0x75, 0x9e, 0x8d, 0x38, 0xde, 0x9d, - 0x17, 0x70, 0x60, 0xe8, 0x18, 0xea, 0x43, 0x9e, 0x3e, 0x31, 0x1b, 0xd9, 0x87, 0x82, 0xd3, 0x8d, - 0x22, 0x8c, 0x66, 0x80, 0x97, 0xbc, 0xc1, 0xb3, 0x41, 0xc5, 0x00, 0x26, 0x6b, 0x61, 0x37, 0x91, - 0x34, 0x0f, 0x1b, 0x21, 0x3a, 0x2c, 0xf2, 0x4c, 0x9f, 0x33, 0x40, 0xaf, 0x78, 0xa2, 0x4f, 0x0e, - 0x75, 0x89, 0x44, 0x59, 0xda, 0xe1, 0x39, 0x3d, 0xdf, 0x87, 0xbc, 0x6d, 0x37, 0x79, 0xc8, 0xee, - 0x6a, 0xac, 0x7f, 0xda, 0x76, 0x53, 0x24, 0x46, 0x3e, 0x95, 0xaa, 0x51, 0x66, 0xf2, 0x07, 0x50, - 0x94, 0xd4, 0x10, 0x1e, 0xec, 0x8e, 0xdf, 0xa0, 0x1f, 0x93, 0xe5, 0xed, 0x4c, 0xe2, 0x26, 0x0d, - 0x50, 0xf7, 0x27, 0x0f, 0x3d, 0x6d, 0x34, 0xc2, 0xe8, 0x98, 0xcf, 0xbc, 0x31, 0x13, 0x28, 0x97, - 0x62, 0x94, 0x48, 0xb7, 0x3b, 0x1a, 0xb9, 0x3d, 0x51, 0x2a, 0x5b, 0xdb, 0xd2, 0x35, 0x49, 0x1b, - 0x36, 0x6c, 0x2f, 0x9c, 0x8c, 0x98, 0x6b, 0x4d, 0x6d, 0x38, 0xa6, 0xea, 0x21, 0xdb, 0x30, 0x10, - 0x50, 0x2f, 0xa0, 0x85, 0xc2, 0x9f, 0xe9, 0xd1, 0x70, 0x9c, 0x52, 0x15, 0xb3, 0x95, 0x4b, 0x9e, - 0x3c, 0xe4, 0xf4, 0xbc, 0x4f, 0x2a, 0x9d, 0x78, 0xde, 0x0b, 0xa5, 0x33, 0x56, 0x35, 0xdf, 0x9b, - 0x02, 0xdf, 0x82, 0x57, 0xa3, 0x12, 0x7c, 0x4b, 0x02, 0xb4, 0xe5, 0x69, 0x41, 0x42, 0x10, 0xe3, - 0x63, 0x71, 0x1f, 0xe0, 0xe3, 0x61, 0xdf, 0x6f, 0x7a, 0xe1, 0xc9, 0xb0, 0x27, 0xa1, 0xc8, 0x14, - 0xff, 0x68, 0xd8, 0xf7, 0xdd, 0x53, 0x24, 0xff, 0xf6, 0xd9, 0x75, 0x89, 0xc9, 0x92, 0xfe, 0x27, - 0x5f, 0x83, 0x65, 0xfa, 0xcb, 0x89, 0x1d, 0x84, 0x98, 0x51, 0x1a, 0x6b, 0xf3, 0x04, 0xeb, 0x11, - 0x03, 0xb9, 0x87, 0xc8, 0xf2, 0xfd, 0x51, 0x28, 0x89, 0xd5, 0x02, 0x46, 0xbe, 0x3f, 0x0a, 0xd3, - 0xa0, 0x90, 0x12, 0x33, 0xa9, 0x47, 0x5d, 0x17, 0xb9, 0x09, 0x38, 0x80, 0x3d, 0x5a, 0x5e, 0xf9, - 0x5c, 0x73, 0x05, 0x1a, 0x9d, 0x9c, 0x45, 0x2e, 0x55, 0x0d, 0x3b, 0x61, 0xd7, 0xab, 0xec, 0xaa, - 0x8c, 0x9f, 0x6e, 0xac, 0x13, 0xc1, 0x49, 0xcf, 0x3d, 0x42, 0x72, 0xa2, 0x13, 0x11, 0x33, 0xd9, - 0x85, 0x75, 0xa6, 0x7d, 0x44, 0x39, 0x8e, 0xf8, 0x49, 0x87, 0x7b, 0x5b, 0x9c, 0x04, 0x49, 0x7e, - 0x7c, 0xaa, 0x02, 0xa9, 0xc1, 0x02, 0xaa, 0xf7, 0xdc, 0xc1, 0xff, 0x8a, 0x6c, 0x27, 0x49, 0xaf, - 0x23, 0xdc, 0x57, 0xd0, 0x42, 0x22, 0xef, 0x2b, 0xc8, 0x4a, 0xbe, 0x0b, 0xa0, 0xfb, 0xe3, 0xe1, - 0x60, 0x80, 0x78, 0x89, 0x4b, 0xa8, 0xe4, 0x5d, 0x4b, 0xae, 0x47, 0x6c, 0x25, 0x66, 0xe2, 0xd8, - 0x3e, 0xf8, 0xdb, 0x4d, 0xa1, 0x2a, 0x4a, 0x6d, 0x95, 0x0c, 0x58, 0x64, 0x8b, 0x11, 0xb1, 0x47, - 0x39, 0x9a, 0xba, 0x84, 0x5c, 0xc9, 0xb0, 0x47, 0x39, 0x3d, 0x8b, 0x3d, 0x2a, 0x55, 0x28, 0xed, - 0xc3, 0xe6, 0xb4, 0x17, 0x4b, 0x18, 0x24, 0x94, 0xb3, 0x1a, 0x24, 0xfe, 0x29, 0x0f, 0x2b, 0xd8, - 0x9a, 0xd8, 0x85, 0x35, 0x58, 0xb5, 0x27, 0x0f, 0x23, 0x60, 0x0e, 0xb1, 0x1b, 0x63, 0xff, 0x02, - 0xb9, 0x40, 0x56, 0xd8, 0x13, 0x35, 0x88, 0x0e, 0x6b, 0xe2, 0x24, 0xd8, 0x13, 0x41, 0x03, 0x11, - 0xec, 0xa7, 0x00, 0x97, 0xca, 0xe6, 0x78, 0x4b, 0x55, 0x8a, 0xcf, 0x83, 0xfc, 0x79, 0xce, 0x83, - 0xc2, 0x99, 0xce, 0x83, 0xef, 0xc1, 0x8a, 0x78, 0x1a, 0xee, 0xe4, 0x0b, 0x2f, 0xb7, 0x93, 0x27, - 0x1a, 0x23, 0x8d, 0x68, 0x47, 0x5f, 0x9c, 0xbb, 0xa3, 0xa3, 0x15, 0x44, 0xac, 0xb2, 0x4c, 0xda, - 0x66, 0xde, 0x06, 0x26, 0x41, 0xda, 0xab, 0xb4, 0x5f, 0xe0, 0x94, 0xfc, 0x00, 0x96, 0x1b, 0x43, - 0x71, 0x29, 0x28, 0xdd, 0xc6, 0x0c, 0x04, 0x51, 0x16, 0x17, 0x22, 0xce, 0xe8, 0x74, 0xcb, 0xbf, - 0x8a, 0xd3, 0xed, 0x1e, 0x00, 0x8f, 0x46, 0x89, 0x93, 0x97, 0xe0, 0x92, 0x11, 0x71, 0xd7, 0xc9, - 0x4b, 0x21, 0x89, 0x99, 0xee, 0x4e, 0xdc, 0x7d, 0x48, 0x3b, 0x3a, 0x1a, 0x4e, 0xfc, 0x30, 0x91, - 0xed, 0x8f, 0x43, 0x30, 0xd0, 0x23, 0x01, 0xcb, 0xe4, 0xed, 0x21, 0x55, 0xed, 0xd5, 0x0e, 0x08, - 0xf9, 0x24, 0xf2, 0x7b, 0x9c, 0x9b, 0xfc, 0xbc, 0x94, 0xf9, 0x42, 0x33, 0xbd, 0x1d, 0x4b, 0xbf, - 0x54, 0x64, 0xcc, 0xe5, 0x17, 0x18, 0xea, 0x6f, 0x01, 0x44, 0x5e, 0x19, 0x62, 0xac, 0x99, 0x26, - 0x17, 0x51, 0xe5, 0xaf, 0x1c, 0xf3, 0x4a, 0x6f, 0x93, 0x7f, 0x55, 0x6f, 0xe3, 0x40, 0xb1, 0xf5, - 0xa3, 0xb0, 0x1b, 0xbb, 0xf1, 0x80, 0x1d, 0x49, 0xb2, 0xb8, 0x33, 0x89, 0x24, 0xed, 0xb1, 0x1c, - 0x3c, 0x33, 0x49, 0x7b, 0x54, 0xb1, 0xf4, 0x09, 0xac, 0xcb, 0xc1, 0xa1, 0x4f, 0xfc, 0x23, 0xf2, - 0x6d, 0x86, 0x00, 0xa7, 0x24, 0x74, 0x1c, 0x89, 0x89, 0xee, 0xb8, 0x4f, 0xfc, 0x23, 0x26, 0xff, - 0x74, 0x1f, 0xcb, 0x7d, 0x45, 0xed, 0xf3, 0xd7, 0x0a, 0x90, 0x2c, 0xbb, 0xbc, 0x9b, 0x28, 0xff, - 0x0f, 0xd2, 0x65, 0x4a, 0x2a, 0x2b, 0x9c, 0x47, 0x2a, 0x2b, 0xff, 0xb5, 0x02, 0xeb, 0x86, 0xd6, - 0xe4, 0x00, 0xc9, 0xec, 0x76, 0xe9, 0x4d, 0xb8, 0x66, 0x68, 0x4d, 0xb7, 0xdd, 0x6a, 0x18, 0x95, - 0x07, 0xee, 0x54, 0xdc, 0xc3, 0x6b, 0xf0, 0x95, 0x2c, 0x4b, 0x7c, 0x0b, 0x75, 0x15, 0xb6, 0xb2, - 0xc5, 0x02, 0x1b, 0x71, 0x7a, 0x65, 0x01, 0xa3, 0x98, 0x2f, 0x7f, 0x04, 0xeb, 0x02, 0x07, 0xd0, - 0x69, 0xd8, 0x88, 0x34, 0xbc, 0x0e, 0xc5, 0x03, 0xdd, 0x32, 0x6a, 0x0f, 0xdc, 0x5a, 0xa7, 0xd1, - 0x50, 0x2f, 0x90, 0x55, 0x58, 0xe6, 0x84, 0x8a, 0xa6, 0x2a, 0x64, 0x05, 0x96, 0x0c, 0xd3, 0xd6, - 0x2b, 0x1d, 0x4b, 0x57, 0x73, 0xe5, 0x8f, 0x60, 0xad, 0x3d, 0xee, 0x7f, 0xd6, 0x0d, 0xbd, 0x7d, - 0xef, 0x09, 0x5e, 0x22, 0x5d, 0x84, 0xbc, 0xa5, 0x1d, 0xaa, 0x17, 0x08, 0xc0, 0x62, 0x7b, 0xbf, - 0x62, 0xdf, 0xb9, 0xa3, 0x2a, 0xa4, 0x08, 0x17, 0xf7, 0x2a, 0x6d, 0x77, 0xbf, 0x69, 0xab, 0x39, - 0xfa, 0x43, 0x3b, 0xb4, 0xf1, 0x47, 0xbe, 0xfc, 0x75, 0xd8, 0x40, 0x59, 0xa1, 0xd1, 0x0f, 0x42, - 0xcf, 0xf7, 0xc6, 0xd8, 0x87, 0x15, 0x58, 0xb2, 0x3d, 0xba, 0xc8, 0x43, 0x8f, 0x75, 0xa0, 0x39, - 0x19, 0x84, 0xfd, 0xd1, 0xc0, 0xfb, 0x89, 0xaa, 0x94, 0xef, 0xc1, 0xba, 0x35, 0x9c, 0x84, 0x7d, - 0xff, 0xd8, 0x0e, 0x29, 0xc7, 0xf1, 0x13, 0xf2, 0x3a, 0x6c, 0x74, 0x4c, 0xad, 0xb9, 0x6b, 0xec, - 0x75, 0x5a, 0x1d, 0xdb, 0x6d, 0x6a, 0x4e, 0xa5, 0xce, 0xae, 0xb0, 0x9a, 0x2d, 0xdb, 0x71, 0x2d, - 0xbd, 0xa2, 0x9b, 0x8e, 0xaa, 0x94, 0xff, 0x42, 0x81, 0xb5, 0x4e, 0xc0, 0xdd, 0xae, 0x3b, 0x18, - 0x3c, 0xf9, 0x06, 0x5c, 0xed, 0xd8, 0xba, 0xe5, 0x3a, 0xad, 0x7d, 0xdd, 0x74, 0x3b, 0xb6, 0xb6, - 0x97, 0x06, 0xdd, 0xbc, 0x0e, 0x57, 0x24, 0x0e, 0x4b, 0xaf, 0xb4, 0x0e, 0x74, 0xcb, 0x6d, 0x6b, - 0xb6, 0x7d, 0xd8, 0xb2, 0xaa, 0xaa, 0x42, 0xb6, 0xe1, 0xd2, 0x14, 0x86, 0x66, 0x4d, 0x53, 0x73, - 0x99, 0x32, 0x53, 0x3f, 0xd4, 0x1a, 0xee, 0x6e, 0xcb, 0x51, 0xf3, 0xe5, 0x26, 0x3d, 0xe8, 0x10, - 0x6c, 0x8e, 0x65, 0x15, 0x58, 0x82, 0x82, 0xd9, 0x32, 0xf5, 0xf4, 0x35, 0xe3, 0x0a, 0x2c, 0x69, - 0xed, 0xb6, 0xd5, 0x3a, 0xc0, 0x01, 0x05, 0x58, 0xac, 0xea, 0x26, 0xed, 0x59, 0x9e, 0x96, 0xb4, - 0xad, 0x56, 0xb3, 0xe5, 0xe8, 0x55, 0xb5, 0x50, 0xb6, 0xc4, 0x82, 0x11, 0x8d, 0x1e, 0x0d, 0xd9, - 0x9d, 0x5e, 0x55, 0xaf, 0x69, 0x9d, 0x86, 0xc3, 0x3f, 0xc8, 0x03, 0xd7, 0xd2, 0x3f, 0xe9, 0xe8, - 0xb6, 0x63, 0xab, 0x0a, 0x51, 0x61, 0xc5, 0xd4, 0xf5, 0xaa, 0xed, 0x5a, 0xfa, 0x81, 0xa1, 0x1f, - 0xaa, 0x39, 0xda, 0x26, 0xfb, 0x9f, 0x3e, 0xa1, 0xfc, 0x54, 0x01, 0xc2, 0x80, 0xfa, 0x04, 0xfa, - 0x3b, 0x8e, 0xcf, 0x0e, 0x6c, 0xd7, 0xe9, 0x87, 0xc5, 0x57, 0x6b, 0xb6, 0xaa, 0xe9, 0x4f, 0x76, - 0x09, 0x48, 0xaa, 0xbc, 0x55, 0xab, 0xa9, 0x0a, 0xb9, 0x02, 0xaf, 0xa5, 0xe8, 0x55, 0xab, 0xd5, - 0x56, 0x73, 0xdb, 0xb9, 0x25, 0x85, 0x5c, 0xce, 0x14, 0xee, 0xeb, 0x7a, 0x5b, 0xcd, 0xd3, 0x21, - 0x4a, 0x15, 0x88, 0x09, 0xc8, 0xaa, 0x17, 0xca, 0x3f, 0x55, 0xe0, 0x12, 0xeb, 0xa6, 0x98, 0xcd, - 0x51, 0x57, 0xaf, 0xc2, 0x16, 0x87, 0x1f, 0x9d, 0xd6, 0xd1, 0x4d, 0x50, 0x13, 0xa5, 0xac, 0x9b, - 0xaf, 0xc3, 0x46, 0x82, 0x8a, 0xfd, 0xc8, 0xd1, 0xb5, 0x9a, 0x20, 0xef, 0xea, 0xb6, 0xe3, 0xea, - 0xb5, 0x5a, 0xcb, 0x72, 0x58, 0x47, 0xf2, 0xe5, 0x12, 0x6c, 0x54, 0xbc, 0x71, 0x48, 0x75, 0x10, - 0x3f, 0xe8, 0x0f, 0x7d, 0xec, 0xc2, 0x2a, 0x2c, 0xeb, 0xdf, 0x75, 0x74, 0xd3, 0x36, 0x5a, 0xa6, - 0x7a, 0xa1, 0x7c, 0x35, 0xc5, 0x23, 0x56, 0x8d, 0x6d, 0xd7, 0xd5, 0x0b, 0xe5, 0x2e, 0xac, 0x0a, - 0x37, 0x67, 0x36, 0x2b, 0x76, 0x60, 0x5b, 0xcc, 0x35, 0x5c, 0xbf, 0xe9, 0x57, 0xd8, 0x82, 0xcd, - 0x6c, 0xb9, 0xee, 0xa8, 0x0a, 0x1d, 0x85, 0x54, 0x09, 0xa5, 0xe7, 0xca, 0xff, 0xa8, 0xc0, 0x16, - 0xcf, 0xb3, 0xca, 0xef, 0x36, 0x18, 0xe2, 0x39, 0x42, 0x02, 0x96, 0xe1, 0xa6, 0x63, 0x75, 0x6c, - 0x47, 0xaf, 0xba, 0x55, 0xfd, 0xc0, 0xa8, 0xe8, 0x38, 0x5d, 0x0c, 0x4b, 0x6f, 0xea, 0xa6, 0x93, - 0x7a, 0xf4, 0x3b, 0xf0, 0xd5, 0x39, 0xbc, 0x66, 0xcb, 0x11, 0xbf, 0xe9, 0x2a, 0xf9, 0x2a, 0xfc, - 0xde, 0x1c, 0xe6, 0x88, 0x31, 0x57, 0xfe, 0x3e, 0xac, 0x24, 0xb2, 0xb8, 0x5c, 0x86, 0xd7, 0xe4, - 0xdf, 0x6d, 0xcf, 0xef, 0xf5, 0xfd, 0x63, 0xf5, 0x42, 0xba, 0xc0, 0x9a, 0xf8, 0x3e, 0x2d, 0xc0, - 0x05, 0x29, 0x17, 0x38, 0xde, 0xf8, 0xb4, 0xef, 0x77, 0x43, 0xaf, 0xa7, 0xe6, 0xca, 0xb7, 0x61, - 0x35, 0x81, 0x1d, 0x49, 0xbf, 0x7c, 0xa3, 0xc5, 0xf7, 0xab, 0xa6, 0x5e, 0x35, 0x3a, 0x4d, 0x75, - 0x81, 0x2e, 0xc5, 0xba, 0xb1, 0x57, 0x57, 0xa1, 0xfc, 0x73, 0x85, 0x4a, 0xcc, 0xf8, 0x7d, 0x9a, - 0x35, 0x4d, 0x8c, 0x15, 0x9d, 0x27, 0x0c, 0x91, 0x56, 0xb7, 0x6d, 0x76, 0x3d, 0x7e, 0x15, 0xb6, - 0xf8, 0x0f, 0x57, 0x33, 0xab, 0x6e, 0x5d, 0xb3, 0xaa, 0x87, 0x9a, 0x45, 0x27, 0xcf, 0x03, 0x35, - 0x87, 0x2b, 0x42, 0xa2, 0xb8, 0x4e, 0xab, 0x53, 0xa9, 0xab, 0x79, 0x3a, 0x01, 0x13, 0xf4, 0xb6, - 0x61, 0xaa, 0x05, 0x5c, 0x5f, 0x19, 0x6e, 0x6c, 0x96, 0x96, 0x2f, 0x94, 0x9f, 0x2b, 0x70, 0xd9, - 0xee, 0x1f, 0xfb, 0xdd, 0x70, 0x32, 0xf6, 0xb4, 0xc1, 0xf1, 0x70, 0xdc, 0x0f, 0x4f, 0x4e, 0xed, - 0x49, 0x3f, 0xf4, 0xc8, 0x2d, 0x78, 0xcb, 0x36, 0xf6, 0x4c, 0xcd, 0xa1, 0xeb, 0x43, 0x6b, 0xec, - 0xb5, 0x2c, 0xc3, 0xa9, 0x37, 0x5d, 0xbb, 0x63, 0x64, 0xa6, 0xce, 0x0d, 0x78, 0x63, 0x36, 0x6b, - 0x43, 0xdf, 0xd3, 0x2a, 0x0f, 0x54, 0x65, 0x7e, 0x83, 0xbb, 0x5a, 0x43, 0x33, 0x2b, 0x7a, 0xd5, - 0x3d, 0xb8, 0xa3, 0xe6, 0xc8, 0x5b, 0xf0, 0xe6, 0x6c, 0xd6, 0x9a, 0xd1, 0xb6, 0x29, 0x5b, 0x7e, - 0xfe, 0x73, 0xeb, 0x76, 0x93, 0x72, 0x15, 0xca, 0x7d, 0x50, 0xd3, 0x51, 0xf1, 0x19, 0x67, 0x0c, - 0xab, 0x63, 0x9a, 0x6c, 0x97, 0x5c, 0x87, 0x62, 0xcb, 0xa9, 0xeb, 0x16, 0x07, 0x46, 0x46, 0x24, - 0xe4, 0x8e, 0xa9, 0x75, 0x9c, 0x7a, 0xcb, 0x32, 0x3e, 0xc5, 0xed, 0x72, 0x0b, 0x36, 0xed, 0x86, - 0x56, 0xd9, 0xc7, 0x99, 0x69, 0x98, 0x6e, 0xa5, 0xae, 0x99, 0xa6, 0xde, 0x50, 0xa1, 0xfc, 0x0f, - 0x0a, 0xf3, 0x8a, 0x98, 0x16, 0x3e, 0x47, 0xbe, 0x06, 0x6f, 0xb7, 0xf6, 0x1d, 0xcd, 0x6d, 0x37, - 0x3a, 0x7b, 0x86, 0xe9, 0xda, 0x0f, 0xcc, 0x8a, 0x38, 0x48, 0x2b, 0xd9, 0x1d, 0xe5, 0x6d, 0xb8, - 0x31, 0x97, 0x3b, 0x86, 0x30, 0xbe, 0x09, 0xa5, 0xb9, 0x9c, 0xfc, 0x45, 0xca, 0xbf, 0x52, 0xe0, - 0xca, 0x9c, 0x5b, 0x4c, 0xf2, 0x2e, 0xdc, 0xaa, 0xeb, 0x5a, 0xb5, 0xa1, 0xdb, 0xb6, 0x4b, 0xdf, - 0x57, 0x37, 0x1d, 0xee, 0xb4, 0x31, 0x75, 0xbf, 0xb8, 0x05, 0x6f, 0xcd, 0x67, 0x8f, 0x4f, 0x9e, - 0xb7, 0xe1, 0xc6, 0x7c, 0x56, 0x7e, 0x12, 0xe5, 0xe8, 0xae, 0x31, 0x9f, 0x33, 0x3a, 0xc1, 0xf2, - 0xe5, 0x9f, 0x29, 0x70, 0x69, 0xba, 0xc2, 0x4e, 0xfb, 0x66, 0x98, 0xb6, 0xa3, 0x35, 0x1a, 0x6e, - 0x5b, 0xb3, 0xb4, 0xa6, 0xab, 0x9b, 0x56, 0xab, 0xd1, 0x98, 0xb6, 0x73, 0xdf, 0x80, 0x37, 0x66, - 0xb3, 0xda, 0x15, 0xcb, 0x68, 0xd3, 0x2d, 0xb0, 0x04, 0x3b, 0xb3, 0xb9, 0x74, 0xa3, 0xa2, 0xab, - 0xb9, 0xdd, 0xfb, 0xbf, 0xf8, 0x8f, 0x9d, 0x0b, 0xbf, 0x78, 0xbe, 0xa3, 0xfc, 0xfa, 0xf9, 0x8e, - 0xf2, 0xef, 0xcf, 0x77, 0x94, 0x4f, 0xdf, 0x39, 0x47, 0x92, 0xf8, 0x87, 0x8b, 0xe8, 0xa5, 0x74, - 0xf7, 0x7f, 0x03, 0x00, 0x00, 0xff, 0xff, 0xeb, 0xdc, 0x6a, 0x3b, 0x21, 0x96, 0x01, 0x00, + 0xfa, 0x9e, 0x55, 0xec, 0xb7, 0x67, 0x35, 0x9e, 0xce, 0x9e, 0x75, 0x5a, 0xb6, 0x31, 0x7b, 0xef, + 0xca, 0x68, 0x16, 0xf9, 0xe5, 0x1c, 0xcc, 0x70, 0x1f, 0x7f, 0xbd, 0xb1, 0x7d, 0xfd, 0xb6, 0xeb, + 0x4f, 0xa7, 0xb1, 0xa7, 0x44, 0xde, 0x80, 0xec, 0xb6, 0xa6, 0x1b, 0x45, 0xbe, 0x07, 0x40, 0xad, + 0xa8, 0x70, 0x1e, 0x70, 0xa9, 0x9d, 0xca, 0xd8, 0x05, 0x14, 0x52, 0x1c, 0xe3, 0x38, 0x52, 0x74, + 0x46, 0xd6, 0x1c, 0x05, 0x25, 0x7f, 0x0d, 0xe6, 0xd8, 0x7a, 0x51, 0x10, 0x11, 0x91, 0x64, 0x7e, + 0x1c, 0x6b, 0xf9, 0x7c, 0x6f, 0x99, 0xe8, 0x52, 0x16, 0x19, 0x8f, 0x57, 0x18, 0x67, 0x1e, 0x8c, + 0x74, 0xe7, 0xe5, 0xcc, 0x8a, 0x30, 0xd0, 0x0f, 0xb6, 0x9e, 0xc7, 0x21, 0xee, 0xb1, 0xbf, 0x9d, + 0x94, 0x6b, 0x81, 0xef, 0x6f, 0xa1, 0xe9, 0x7c, 0x87, 0x20, 0xf2, 0x65, 0x20, 0xca, 0x39, 0x9e, + 0xc3, 0xa8, 0x8c, 0x51, 0xcc, 0xd5, 0xc6, 0xb1, 0x93, 0x7d, 0x20, 0x8b, 0xf5, 0x49, 0x92, 0x26, + 0x26, 0x14, 0xe6, 0xc4, 0x47, 0x33, 0xa8, 0x4c, 0x6e, 0x12, 0xce, 0x4f, 0x19, 0xf1, 0x5e, 0xe2, + 0x92, 0x38, 0x45, 0xa1, 0x96, 0x21, 0xc5, 0x50, 0x39, 0x65, 0xb1, 0x23, 0xd7, 0x60, 0x0c, 0x3d, + 0xe0, 0xd6, 0xa4, 0xd1, 0x96, 0x30, 0x20, 0x41, 0x5f, 0x39, 0x67, 0xcf, 0x34, 0xbd, 0x8a, 0x51, + 0xd9, 0x75, 0xa0, 0x12, 0xec, 0xdb, 0xdd, 0x36, 0x2a, 0x77, 0x85, 0xbe, 0xa3, 0x11, 0xec, 0x3b, + 0x41, 0xd7, 0x74, 0x91, 0x44, 0x24, 0xf2, 0x0d, 0x18, 0xbf, 0xed, 0x3e, 0x96, 0xba, 0x5d, 0xa1, + 0xc0, 0x1d, 0x28, 0xb9, 0x7e, 0xcb, 0x7d, 0xec, 0x34, 0xba, 0xc9, 0x68, 0x89, 0x3c, 0xb9, 0xbe, + 0xc6, 0x92, 0x7c, 0x0d, 0x40, 0xd3, 0x38, 0x93, 0x43, 0x2b, 0x78, 0x41, 0x46, 0x31, 0xca, 0xd4, + 0x44, 0x23, 0x7f, 0x8d, 0x61, 0x42, 0x72, 0x98, 0xfb, 0xec, 0x24, 0x87, 0x63, 0x9f, 0x9d, 0xe4, + 0xb0, 0xb0, 0x0d, 0x27, 0x7b, 0x2e, 0x9d, 0x8c, 0xe0, 0x92, 0x97, 0xcd, 0xe0, 0x92, 0x27, 0x7b, + 0x1d, 0xb1, 0xa1, 0x19, 0x8a, 0x7a, 0xb6, 0x34, 0xd7, 0x5b, 0x3a, 0xf9, 0x4e, 0x3e, 0x71, 0xe4, + 0x8a, 0x8b, 0x05, 0x4f, 0x83, 0xd0, 0x4b, 0x26, 0xc9, 0x63, 0xca, 0x3a, 0x7e, 0x28, 0xe7, 0xe3, + 0x0b, 0x4d, 0x22, 0xcb, 0x2f, 0x3f, 0x9e, 0x3f, 0xed, 0xe9, 0xfb, 0x36, 0x4c, 0xf1, 0x64, 0x55, + 0xb7, 0xe8, 0xfe, 0x23, 0x3f, 0x68, 0xc8, 0x54, 0xae, 0x28, 0x83, 0xa7, 0x52, 0x44, 0x26, 0x70, + 0x49, 0x45, 0x3a, 0x55, 0x0d, 0x63, 0xed, 0x27, 0x33, 0x77, 0x31, 0x86, 0xd0, 0xcf, 0xdf, 0x8a, + 0xbc, 0xa1, 0x04, 0x35, 0x1a, 0xe8, 0x01, 0xa9, 0x03, 0x09, 0xcc, 0x90, 0xd7, 0x68, 0x60, 0xfd, + 0x41, 0x01, 0x08, 0xaf, 0x69, 0xc5, 0xed, 0xb8, 0xe8, 0x72, 0xe8, 0x61, 0xe8, 0x8c, 0x92, 0xc0, + 0x71, 0xb7, 0x9b, 0x54, 0x8f, 0x3b, 0x23, 0x8c, 0x64, 0x55, 0x99, 0x93, 0xbc, 0xe8, 0xa4, 0x08, + 0x7b, 0x6c, 0x75, 0xf9, 0x4f, 0xb3, 0xd5, 0x7d, 0x03, 0x9e, 0x2f, 0x77, 0x30, 0xeb, 0x9d, 0xac, + 0xe5, 0xba, 0x1f, 0xc8, 0x4d, 0xca, 0x70, 0x66, 0x71, 0x15, 0x5a, 0xaa, 0xa5, 0xfd, 0x58, 0x68, + 0x72, 0x0a, 0x9b, 0x97, 0x9d, 0x48, 0x77, 0x8e, 0x96, 0x72, 0x4a, 0x07, 0x4b, 0x32, 0xe4, 0x14, + 0x4e, 0x22, 0x79, 0x78, 0x81, 0x94, 0x53, 0x30, 0x9d, 0x43, 0xcc, 0xc3, 0x0b, 0x68, 0x0f, 0x59, + 0x47, 0x91, 0x90, 0xb7, 0x61, 0xbc, 0xdc, 0x8d, 0x7c, 0xc1, 0x58, 0x58, 0x77, 0xc7, 0x76, 0xd8, + 0xa2, 0x29, 0xc6, 0xd5, 0x27, 0x46, 0xb7, 0xfe, 0xb8, 0x00, 0x27, 0xd3, 0xc3, 0x2b, 0x4a, 0xd5, + 0xfa, 0xc8, 0x1d, 0xb2, 0x3e, 0xb2, 0x66, 0x03, 0x7f, 0x2c, 0x78, 0x6a, 0xb3, 0x81, 0x27, 0xcf, + 0xfb, 0x84, 0xb3, 0xa1, 0x06, 0xe3, 0xfa, 0x79, 0x37, 0xf4, 0x49, 0xcf, 0x3b, 0x9d, 0x0b, 0xbb, + 0xd4, 0x73, 0x9f, 0xf0, 0xe1, 0xf8, 0xe9, 0x28, 0xe9, 0x0e, 0xce, 0x31, 0xc8, 0xbf, 0x01, 0x67, + 0xf9, 0x9e, 0x94, 0xfc, 0xd8, 0xe5, 0x7d, 0xc9, 0x51, 0x0c, 0xdc, 0xd2, 0x93, 0x83, 0xc5, 0x4b, + 0x5c, 0x55, 0xe2, 0xa4, 0xba, 0xcd, 0xd9, 0xde, 0x77, 0x64, 0xcb, 0xb4, 0x4a, 0x0e, 0xe5, 0x8d, + 0x19, 0xf3, 0xb4, 0x6c, 0x66, 0xaf, 0x67, 0xb9, 0xbd, 0xf0, 0xf8, 0xa9, 0x1c, 0x6c, 0x7a, 0xbc, + 0x48, 0x75, 0x58, 0x3e, 0x53, 0x1d, 0x26, 0xf5, 0x29, 0x85, 0x4c, 0x7d, 0x4a, 0x05, 0xa6, 0x6b, + 0xdd, 0x6d, 0x59, 0x37, 0x22, 0x0e, 0x19, 0x9e, 0x7b, 0x59, 0x1f, 0x94, 0x24, 0xb1, 0x7e, 0x34, + 0x0f, 0x13, 0x9b, 0xcd, 0xee, 0xae, 0xd7, 0xae, 0xb8, 0x91, 0xfb, 0xcc, 0x6a, 0xe8, 0xde, 0x34, + 0x34, 0x74, 0xca, 0xbb, 0x4b, 0x7d, 0xd8, 0x40, 0xea, 0xb9, 0x9f, 0xc9, 0xc1, 0x74, 0x4c, 0xc2, + 0xcf, 0xd9, 0x35, 0x18, 0x62, 0x3f, 0xc4, 0xbd, 0xf5, 0x6c, 0x8a, 0x31, 0x4f, 0xa1, 0xa3, 0xfe, + 0x12, 0x3a, 0x33, 0x33, 0x3f, 0x05, 0x72, 0x58, 0xf8, 0x02, 0x8c, 0xc5, 0x6c, 0x8f, 0x92, 0x3a, + 0xe7, 0xd7, 0x72, 0x50, 0x4a, 0x7e, 0x09, 0xb9, 0x05, 0xa3, 0x8c, 0x93, 0x47, 0xe5, 0x95, 0xfa, + 0xc5, 0x1e, 0xdf, 0x7c, 0x49, 0xa0, 0xf1, 0xe6, 0x61, 0xe7, 0x53, 0x0e, 0xb1, 0x25, 0x87, 0x05, + 0x1b, 0x26, 0x74, 0xac, 0x8c, 0xd6, 0xbd, 0x66, 0x0a, 0x17, 0xc7, 0xb3, 0xfb, 0xc1, 0x48, 0xf8, + 0x63, 0xb4, 0x5a, 0xc8, 0x0d, 0xe7, 0x8d, 0xc9, 0x85, 0x7d, 0x95, 0x98, 0x37, 0x7c, 0x9a, 0x2d, + 0xc5, 0x21, 0x9d, 0xf5, 0x79, 0x96, 0x31, 0xa1, 0x15, 0x1e, 0x79, 0x0d, 0x46, 0x78, 0x7d, 0x7a, + 0xb2, 0x8a, 0x0e, 0x42, 0x74, 0x11, 0x97, 0xe3, 0x58, 0x7f, 0xbb, 0x00, 0xc7, 0xe3, 0xe6, 0xdd, + 0xed, 0x34, 0xdc, 0x88, 0x6e, 0xba, 0x81, 0xdb, 0x0a, 0x0f, 0x59, 0x01, 0x17, 0x52, 0x4d, 0xc3, + 0x34, 0x01, 0xb2, 0x69, 0x5a, 0x83, 0xac, 0x44, 0x83, 0x50, 0x7d, 0xc9, 0x1b, 0x24, 0x9b, 0x41, + 0x6e, 0x41, 0xa1, 0x46, 0x23, 0xb1, 0x6d, 0x9e, 0x4f, 0xf5, 0xaa, 0xde, 0xae, 0x4b, 0x35, 0x1a, + 0xf1, 0x41, 0xe4, 0xb1, 0x4a, 0xa8, 0x11, 0x2b, 0xb2, 0x46, 0x23, 0x72, 0x1f, 0x46, 0x56, 0x1f, + 0x77, 0x68, 0x3d, 0x12, 0x89, 0x9f, 0x2e, 0xf6, 0xe7, 0xc7, 0x71, 0xb5, 0xbc, 0x4f, 0x14, 0x01, + 0x7a, 0x67, 0x71, 0x94, 0x85, 0x6b, 0x50, 0x94, 0x95, 0x1f, 0x65, 0xe6, 0x2e, 0xbc, 0x09, 0xe3, + 0x5a, 0x25, 0x47, 0x9a, 0xf4, 0xbf, 0xc0, 0xf6, 0x55, 0xbf, 0x29, 0x73, 0x45, 0xad, 0xa6, 0xc4, + 0xbc, 0x5c, 0xec, 0x63, 0xcc, 0xc5, 0x3c, 0xe7, 0x81, 0x28, 0xea, 0x23, 0xef, 0x55, 0x61, 0xba, + 0xf6, 0xc0, 0xeb, 0xc4, 0x21, 0xfb, 0x8c, 0xc3, 0x14, 0x63, 0xdc, 0x8b, 0x3b, 0x77, 0xf2, 0x30, + 0x4d, 0xd2, 0x59, 0x7f, 0x9e, 0x83, 0x11, 0xf6, 0xd7, 0xbd, 0x6b, 0xcf, 0xe8, 0x96, 0x79, 0xd5, + 0xd8, 0x32, 0x67, 0xb4, 0xa8, 0xb9, 0xb8, 0x71, 0x5c, 0x3b, 0x64, 0xb3, 0x3c, 0x10, 0x03, 0xc4, + 0x91, 0xc9, 0x0d, 0x18, 0x15, 0x56, 0x3d, 0xc2, 0xfc, 0x5a, 0x0f, 0xc3, 0x2b, 0xed, 0x7d, 0xd4, + 0xe5, 0xdc, 0xef, 0x24, 0xb5, 0x19, 0x92, 0x9a, 0x89, 0xe4, 0x32, 0x78, 0xa2, 0x91, 0x61, 0xd0, + 0x47, 0x7f, 0x39, 0x1e, 0x44, 0x56, 0xcb, 0x09, 0xda, 0x23, 0x10, 0x41, 0x59, 0x3c, 0x64, 0x14, + 0xfa, 0x31, 0x39, 0x2e, 0x13, 0xb0, 0x65, 0xbe, 0x71, 0xfc, 0xf3, 0x39, 0x1e, 0x7a, 0x55, 0x36, + 0xec, 0x1d, 0x98, 0xb8, 0xee, 0x07, 0x8f, 0xdc, 0x80, 0x07, 0xd4, 0x13, 0x96, 0x03, 0xec, 0xea, + 0x38, 0xb9, 0xc3, 0xe1, 0x3c, 0x24, 0xdf, 0xc7, 0x07, 0x8b, 0x43, 0xcb, 0xbe, 0xdf, 0xb4, 0x0d, + 0x74, 0x72, 0x07, 0x26, 0x6f, 0xbb, 0x8f, 0xb5, 0x4b, 0x2f, 0x77, 0x80, 0xb9, 0xc8, 0x26, 0x30, + 0xbb, 0x35, 0x1f, 0x6e, 0x62, 0x65, 0xd2, 0x13, 0x0f, 0xa6, 0x36, 0xfd, 0x20, 0x12, 0x95, 0x78, + 0xed, 0x5d, 0xf1, 0xb1, 0x69, 0x23, 0xb1, 0xcb, 0x99, 0x46, 0x62, 0x27, 0x3b, 0x7e, 0x10, 0x39, + 0x3b, 0x8a, 0xdc, 0x08, 0xf2, 0x63, 0x30, 0x26, 0xef, 0xc0, 0x8c, 0x16, 0xc4, 0xec, 0xba, 0x1f, + 0xb4, 0x5c, 0x29, 0x94, 0xa3, 0x1e, 0x18, 0xed, 0x4d, 0x76, 0x10, 0x6c, 0xa7, 0x31, 0xc9, 0x87, + 0x59, 0x2e, 0x45, 0xc3, 0xb1, 0x95, 0x59, 0x86, 0x4b, 0x51, 0x2f, 0x2b, 0xb3, 0xb4, 0x73, 0xd1, + 0x6e, 0x3f, 0x2b, 0xd4, 0xe2, 0xf2, 0x15, 0x71, 0xfd, 0x3e, 0xdc, 0xca, 0x54, 0x8d, 0x5b, 0x0f, + 0x6b, 0xd3, 0x25, 0x28, 0x2c, 0x6f, 0x5e, 0xc7, 0xd7, 0x0b, 0x69, 0x68, 0xd3, 0xde, 0x73, 0xdb, + 0x75, 0x14, 0x96, 0x85, 0xe5, 0xb7, 0xbe, 0x23, 0x2f, 0x6f, 0x5e, 0x27, 0x2e, 0xcc, 0x6e, 0xd2, + 0xa0, 0xe5, 0x45, 0x5f, 0xb9, 0x72, 0x45, 0x1b, 0xa8, 0x22, 0x36, 0xed, 0xb2, 0x68, 0xda, 0x62, + 0x07, 0x51, 0x9c, 0xc7, 0x57, 0xae, 0x64, 0x0e, 0x87, 0x6a, 0x58, 0x16, 0x2f, 0xb6, 0x33, 0xde, + 0x76, 0x1f, 0xc7, 0x06, 0xfb, 0xa1, 0x70, 0xce, 0x3c, 0x2d, 0x27, 0x56, 0x6c, 0xec, 0x6f, 0xec, + 0x8c, 0x26, 0x11, 0xbb, 0xeb, 0xc4, 0xd3, 0x2b, 0x14, 0x6e, 0x2d, 0x0b, 0x52, 0xa5, 0x23, 0x3d, + 0x78, 0x75, 0x81, 0x5d, 0x43, 0x27, 0x77, 0xd5, 0x8d, 0x8d, 0xdf, 0x78, 0x44, 0x7a, 0xb1, 0xcb, + 0xfa, 0x8d, 0x8d, 0x2b, 0x52, 0x8c, 0xcf, 0x9a, 0x56, 0xd7, 0x7c, 0xee, 0xc1, 0x60, 0x9b, 0x5c, + 0xd2, 0x17, 0xc1, 0x89, 0xa3, 0x5f, 0x04, 0x29, 0x0c, 0xad, 0xfb, 0xf5, 0x07, 0x22, 0x32, 0xd1, + 0x97, 0xd9, 0x72, 0x6f, 0xfa, 0xf5, 0x07, 0x4f, 0xcf, 0xba, 0x16, 0xd9, 0x93, 0x0d, 0xd6, 0x54, + 0x36, 0x0b, 0x44, 0x9f, 0x08, 0x8b, 0xcd, 0x39, 0x75, 0x13, 0xd2, 0xca, 0xb8, 0xe0, 0xc3, 0x27, + 0x8d, 0xec, 0x5a, 0xdb, 0x24, 0x27, 0x14, 0x4a, 0x15, 0x1a, 0x3e, 0x88, 0xfc, 0xce, 0x4a, 0xd3, + 0xeb, 0x6c, 0xfb, 0x6e, 0xd0, 0x40, 0xdd, 0x5d, 0xd6, 0xfa, 0x7e, 0x39, 0x73, 0x7d, 0xcf, 0x34, + 0x38, 0xbd, 0x53, 0x97, 0x0c, 0xec, 0x14, 0x4b, 0xf2, 0x21, 0x4c, 0xb1, 0xc9, 0xbd, 0xfa, 0x38, + 0xa2, 0x6d, 0x3e, 0xf2, 0x33, 0x28, 0x3a, 0xcc, 0x69, 0xe1, 0xca, 0x55, 0x21, 0x9f, 0x53, 0xb8, + 0xd8, 0xa9, 0x22, 0x30, 0xa2, 0x3a, 0x19, 0xac, 0x48, 0x03, 0xe6, 0x6f, 0xbb, 0x8f, 0xb5, 0x44, + 0x66, 0xda, 0x24, 0x25, 0x38, 0xc1, 0x30, 0x8f, 0x3d, 0x9b, 0x60, 0x71, 0x40, 0xd1, 0x1e, 0xf3, + 0xb5, 0x27, 0x27, 0xf2, 0x7d, 0x70, 0x42, 0x7c, 0x56, 0x05, 0x73, 0x78, 0xf8, 0xc1, 0x7e, 0x6d, + 0xcf, 0x45, 0x5f, 0x9d, 0xd9, 0xa3, 0x6d, 0x88, 0xb2, 0xc3, 0x1a, 0x92, 0x8f, 0x13, 0x72, 0x46, + 0x76, 0xaf, 0x1a, 0xc8, 0x47, 0x30, 0xc5, 0x9f, 0x6c, 0xd6, 0xfc, 0x30, 0xc2, 0x0b, 0xfd, 0xdc, + 0xd1, 0x4c, 0xd0, 0xf9, 0x3b, 0x10, 0x77, 0xda, 0x48, 0x28, 0x00, 0x12, 0x9c, 0xc9, 0x5b, 0x30, + 0xbe, 0xe9, 0xb5, 0x79, 0xdc, 0xb5, 0xea, 0x26, 0xaa, 0x1e, 0xc5, 0xf9, 0xd3, 0xf1, 0xda, 0x8e, + 0xbc, 0x55, 0x77, 0xd4, 0x76, 0xa1, 0x63, 0x93, 0xfb, 0x30, 0x5e, 0xab, 0xad, 0x5d, 0xf7, 0xd8, + 0x01, 0xd8, 0xd9, 0x9f, 0x3f, 0xde, 0xa3, 0x95, 0xe7, 0x32, 0x5b, 0x39, 0x19, 0x86, 0x7b, 0x98, + 0x68, 0xda, 0xa9, 0xfb, 0x9d, 0x7d, 0x5b, 0xe7, 0x94, 0x61, 0x96, 0x7d, 0xe2, 0x29, 0x9b, 0x65, + 0x57, 0x61, 0x5a, 0x33, 0xb0, 0x44, 0xe3, 0xca, 0xf9, 0x38, 0xcc, 0x98, 0x6e, 0x86, 0x9d, 0x74, + 0x43, 0x4c, 0xd2, 0x49, 0x7b, 0xec, 0x93, 0x47, 0xb5, 0xc7, 0xf6, 0x60, 0x86, 0x0f, 0x86, 0x98, + 0x07, 0x38, 0xd2, 0x0b, 0x3d, 0xfa, 0xf0, 0x62, 0x66, 0x1f, 0xce, 0x8a, 0x91, 0x96, 0x93, 0x0c, + 0x9f, 0x28, 0xd3, 0x5c, 0xc9, 0x0e, 0x10, 0x01, 0x14, 0x69, 0xae, 0xb1, 0xae, 0xe7, 0x7b, 0xd4, + 0xf5, 0x62, 0x66, 0x5d, 0x53, 0xb2, 0xae, 0x6d, 0x5e, 0x4d, 0x06, 0x47, 0xd2, 0x96, 0xf5, 0xc8, + 0xf9, 0x85, 0x1d, 0x7b, 0xca, 0xd0, 0x83, 0xa6, 0x11, 0x78, 0xd0, 0xd3, 0xe4, 0xa4, 0x4d, 0xf6, + 0x7b, 0x06, 0x67, 0xf2, 0x18, 0x8e, 0xa7, 0x5b, 0x81, 0x75, 0x9e, 0xc6, 0x3a, 0x4f, 0x1b, 0x75, + 0x26, 0x91, 0xf8, 0xbc, 0x31, 0x3f, 0x2b, 0x59, 0x6b, 0x0f, 0xfe, 0xe4, 0x87, 0x73, 0x70, 0xe2, + 0xf6, 0xf5, 0x32, 0x26, 0xaa, 0xf2, 0x78, 0x18, 0x1e, 0xe5, 0xbe, 0x79, 0x46, 0xe8, 0xca, 0x93, + 0xfa, 0x7b, 0x29, 0x71, 0xe0, 0x56, 0xc1, 0x64, 0xc4, 0x73, 0xad, 0x1d, 0x97, 0xe7, 0xbf, 0x12, + 0x2c, 0x32, 0x7c, 0x3c, 0xbf, 0xfd, 0x87, 0x8b, 0x39, 0xbb, 0x57, 0x55, 0x37, 0x87, 0x8a, 0x93, + 0xa5, 0xa9, 0x2c, 0x83, 0xef, 0xdf, 0xcc, 0x27, 0xce, 0x0e, 0x52, 0x85, 0x51, 0x31, 0x25, 0x84, + 0x30, 0x9d, 0x1e, 0xf8, 0xd3, 0x99, 0x03, 0x3f, 0x2a, 0x66, 0x97, 0x2d, 0xe9, 0xc9, 0x23, 0xc6, + 0x0a, 0x2d, 0xf3, 0xc5, 0xed, 0xe3, 0x6b, 0xfc, 0x68, 0x40, 0x90, 0x71, 0x08, 0x56, 0x8e, 0xee, + 0x97, 0x64, 0xba, 0xbd, 0xe1, 0x69, 0x28, 0x6b, 0x23, 0x0f, 0x78, 0x82, 0x85, 0x82, 0x72, 0x6e, + 0x31, 0xb3, 0x29, 0x3c, 0xb5, 0x0a, 0x59, 0x2d, 0xd6, 0x6f, 0xe4, 0x60, 0xd2, 0x38, 0x7c, 0xc8, + 0x35, 0xcd, 0x73, 0x2b, 0x76, 0x66, 0x36, 0x70, 0x70, 0x3f, 0x4a, 0xfa, 0x74, 0x5d, 0x13, 0xe6, + 0xdb, 0xf9, 0xde, 0x74, 0x99, 0x49, 0xe7, 0xfb, 0xeb, 0xea, 0x54, 0xda, 0xa6, 0xa1, 0x1e, 0x69, + 0x9b, 0x7e, 0xe9, 0x14, 0x4c, 0x99, 0xb7, 0x13, 0xf2, 0x1a, 0x8c, 0xa0, 0x8a, 0x53, 0x5e, 0x75, + 0x79, 0x6a, 0x66, 0x84, 0x18, 0xa9, 0x99, 0x11, 0x42, 0x5e, 0x02, 0x50, 0x76, 0xb4, 0x52, 0xc1, + 0x3f, 0xfc, 0xe4, 0x60, 0x31, 0xf7, 0xba, 0xad, 0x15, 0x90, 0xaf, 0x03, 0x6c, 0xf8, 0x0d, 0xaa, + 0x52, 0xcb, 0xf5, 0x79, 0xc4, 0x7e, 0x39, 0x15, 0x7c, 0xfc, 0x58, 0xdb, 0x6f, 0xd0, 0x74, 0xa4, + 0x71, 0x8d, 0x23, 0xf9, 0x12, 0x0c, 0xdb, 0x5d, 0x76, 0xad, 0xe6, 0x1a, 0x8d, 0x71, 0x79, 0x08, + 0x74, 0x9b, 0x34, 0xbe, 0xb3, 0x05, 0xdd, 0xa4, 0x7d, 0x16, 0x03, 0x90, 0xf7, 0x78, 0x50, 0x72, + 0x11, 0x43, 0x6c, 0x38, 0x7e, 0xf2, 0xd0, 0x84, 0x83, 0x54, 0x14, 0x31, 0x8d, 0x84, 0xdc, 0x81, + 0x51, 0x5d, 0x57, 0xaf, 0xb9, 0x00, 0xeb, 0xef, 0x39, 0xda, 0x05, 0x50, 0xe4, 0xa4, 0x4b, 0xaa, + 0xf1, 0x25, 0x17, 0xf2, 0x36, 0x8c, 0x31, 0xf6, 0x6c, 0x27, 0x09, 0x85, 0xe0, 0x8f, 0x0f, 0x1b, + 0x5a, 0x83, 0xd8, 0x46, 0x64, 0x44, 0xfa, 0x52, 0x04, 0xe4, 0x43, 0x4c, 0xbb, 0x26, 0xba, 0xba, + 0xaf, 0x71, 0xc3, 0xf9, 0x54, 0x57, 0x63, 0x1e, 0xb6, 0x74, 0xce, 0x61, 0xc5, 0x8f, 0xec, 0xaa, + 0x08, 0x54, 0x83, 0x04, 0x92, 0x7f, 0x25, 0x55, 0xc1, 0xbc, 0x0c, 0xaa, 0x94, 0x4e, 0x11, 0x68, + 0xf0, 0x25, 0x1d, 0x28, 0xc5, 0x72, 0x97, 0xa8, 0x0b, 0xfa, 0xd5, 0xf5, 0x7a, 0xaa, 0x2e, 0x7d, + 0x00, 0x53, 0xd5, 0xa5, 0xb8, 0x93, 0x06, 0x4c, 0xc9, 0x3d, 0x5c, 0xd4, 0x37, 0xde, 0xaf, 0xbe, + 0x97, 0x52, 0xf5, 0xcd, 0x36, 0xb6, 0xd3, 0xf5, 0x24, 0x78, 0x92, 0xb7, 0x61, 0x52, 0x42, 0x70, + 0x7d, 0x88, 0xe4, 0xc6, 0xa8, 0x9c, 0x69, 0x6c, 0xa3, 0xe5, 0xbe, 0x99, 0x38, 0x51, 0x47, 0xd6, + 0xa9, 0xf9, 0xec, 0x98, 0x34, 0xa8, 0x93, 0xb3, 0xc2, 0x44, 0x26, 0x1f, 0xc0, 0x78, 0xb5, 0xc5, + 0x3e, 0xc4, 0x6f, 0xbb, 0x11, 0x15, 0xee, 0x61, 0xd2, 0x50, 0x43, 0x2b, 0xd1, 0xa6, 0x2a, 0x4f, + 0x45, 0x18, 0x17, 0x19, 0xa9, 0x08, 0x63, 0x30, 0xeb, 0x3c, 0xfe, 0x38, 0x23, 0xe6, 0xb0, 0x74, + 0x1d, 0x3b, 0x9d, 0x61, 0x2c, 0xa1, 0xb1, 0x17, 0xb1, 0xfa, 0x18, 0x54, 0x3e, 0x8e, 0x24, 0x62, + 0xf5, 0xe9, 0x3c, 0xc9, 0x3b, 0x30, 0x2e, 0x72, 0x6c, 0x94, 0xed, 0x8d, 0x70, 0xbe, 0x84, 0x1f, + 0x8f, 0x0e, 0xef, 0x32, 0x1d, 0x87, 0xe3, 0x06, 0x09, 0xab, 0xc0, 0x18, 0x9f, 0x7c, 0x05, 0xe6, + 0xee, 0x7b, 0xed, 0x86, 0xff, 0x28, 0x14, 0xc7, 0x94, 0xd8, 0xe8, 0x66, 0x62, 0x9f, 0x9c, 0x47, + 0xbc, 0x5c, 0x89, 0x4b, 0xa9, 0x8d, 0x2f, 0x93, 0x03, 0xf9, 0xab, 0x29, 0xce, 0x7c, 0x06, 0x91, + 0x7e, 0x33, 0x68, 0x29, 0x35, 0x83, 0xd2, 0xd5, 0x27, 0xa7, 0x53, 0x66, 0x35, 0xc4, 0x07, 0x62, + 0x9e, 0xef, 0x37, 0x7d, 0xaf, 0x3d, 0x3f, 0x8b, 0x7b, 0xe1, 0xf3, 0x49, 0x17, 0x73, 0xc4, 0xdb, + 0xf4, 0x9b, 0x5e, 0x7d, 0x1f, 0x93, 0xfb, 0x9f, 0x49, 0x8a, 0xc5, 0x1f, 0xf9, 0x86, 0xea, 0x3a, + 0x83, 0x35, 0xf9, 0x00, 0x26, 0xd8, 0xff, 0xea, 0xde, 0x3e, 0x67, 0x98, 0xd7, 0x69, 0x98, 0xa2, + 0x1e, 0x1c, 0x23, 0x4c, 0x02, 0x92, 0x71, 0xa5, 0x37, 0x58, 0x91, 0x37, 0x01, 0x98, 0x00, 0x27, + 0xb6, 0xe3, 0x63, 0x71, 0x68, 0x44, 0x14, 0xfb, 0xd2, 0x1b, 0x71, 0x8c, 0x4c, 0xde, 0x86, 0x71, + 0xf6, 0xab, 0xd6, 0x6d, 0xf8, 0x6c, 0x6d, 0x1c, 0x47, 0x5a, 0xee, 0x75, 0xc7, 0x68, 0x43, 0x0e, + 0x37, 0xbc, 0xee, 0x62, 0x74, 0xb2, 0x06, 0xd3, 0x18, 0xc2, 0xb2, 0xda, 0xa0, 0xed, 0x08, 0x1f, + 0x4d, 0xe7, 0x4f, 0x68, 0x8f, 0xca, 0xac, 0xc8, 0xf1, 0x54, 0x99, 0x2e, 0xee, 0x27, 0xc8, 0x48, + 0x08, 0xb3, 0xf1, 0xee, 0x12, 0x3f, 0x51, 0xcf, 0x63, 0x27, 0x49, 0x21, 0x37, 0x8d, 0xc1, 0xf7, + 0x63, 0x36, 0x22, 0xda, 0xc6, 0x25, 0x15, 0xfc, 0x7a, 0x85, 0x59, 0xdc, 0x89, 0x0d, 0xe4, 0xc6, + 0xca, 0x66, 0x32, 0xc6, 0xe3, 0x49, 0xfc, 0x02, 0x1c, 0xe6, 0xdd, 0x7a, 0x9c, 0xf4, 0x32, 0x23, + 0xce, 0x63, 0x06, 0x35, 0xf9, 0x5e, 0x38, 0x26, 0x77, 0x10, 0x51, 0x24, 0xe6, 0xf5, 0xc2, 0x11, + 0x77, 0xe2, 0xc6, 0xb6, 0xaa, 0x3a, 0x35, 0xa5, 0xb3, 0xab, 0x20, 0x2e, 0x8c, 0xe3, 0xb0, 0x8a, + 0x1a, 0x9f, 0xef, 0x57, 0xe3, 0x85, 0x54, 0x8d, 0xc7, 0x71, 0xa2, 0xa4, 0x2b, 0xd3, 0x79, 0x92, + 0x65, 0x98, 0x14, 0xeb, 0x48, 0xcc, 0xb6, 0x53, 0xd8, 0x5b, 0xa8, 0xe7, 0x91, 0x2b, 0x30, 0x35, + 0xe1, 0x4c, 0x12, 0x7d, 0x47, 0xe6, 0x8a, 0xfd, 0xd3, 0xc6, 0x8e, 0x9c, 0xd4, 0xe7, 0x9b, 0xc8, + 0x6c, 0x47, 0x8a, 0xa5, 0x98, 0xd5, 0xc7, 0x9d, 0x40, 0x68, 0x71, 0xce, 0xc4, 0xa9, 0x0f, 0x34, + 0xe1, 0xc7, 0xa1, 0x0a, 0x43, 0xdf, 0x12, 0xb2, 0x38, 0x90, 0xbb, 0x30, 0xab, 0x4e, 0x6d, 0x8d, + 0xf1, 0x62, 0x9c, 0x42, 0x22, 0x3e, 0xea, 0xb3, 0xf9, 0x66, 0xd1, 0x13, 0x17, 0x4e, 0x18, 0xe7, + 0xb4, 0xc6, 0xfa, 0x2c, 0xb2, 0xc6, 0x24, 0xab, 0xe6, 0x21, 0x9f, 0xcd, 0xbe, 0x17, 0x1f, 0xf2, + 0x11, 0x2c, 0x24, 0xcf, 0x66, 0xad, 0x96, 0x17, 0xb0, 0x96, 0x57, 0x9e, 0x1c, 0x2c, 0x9e, 0x4f, + 0x1d, 0xef, 0xd9, 0x15, 0xf5, 0xe1, 0x46, 0xbe, 0x0e, 0xf3, 0xe6, 0xf9, 0xac, 0xd5, 0x64, 0x61, + 0x4d, 0xb8, 0x74, 0xd4, 0xc1, 0x9e, 0x5d, 0x43, 0x4f, 0x1e, 0x24, 0x82, 0xc5, 0xcc, 0xd9, 0xad, + 0x55, 0x73, 0x2e, 0xfe, 0xa0, 0xd4, 0x2a, 0xc9, 0xae, 0xee, 0x30, 0x96, 0xe4, 0x11, 0x9c, 0xc9, + 0x3a, 0x26, 0xb4, 0x4a, 0x5f, 0x54, 0x7a, 0xd2, 0x57, 0xb3, 0x8f, 0x9c, 0xec, 0x9a, 0x0f, 0x61, + 0x4b, 0x3e, 0x84, 0x63, 0xda, 0xfa, 0xd2, 0xea, 0x7b, 0x09, 0xeb, 0x43, 0x8f, 0x5a, 0x7d, 0x61, + 0x66, 0xd7, 0x92, 0xcd, 0x83, 0xb4, 0x60, 0x56, 0x7e, 0x38, 0x2a, 0xa4, 0xc5, 0xd1, 0x73, 0xde, + 0xd8, 0x55, 0xd3, 0x18, 0x5a, 0x76, 0xea, 0x6d, 0xa7, 0x13, 0x13, 0xea, 0x33, 0x3d, 0x83, 0x2f, + 0x59, 0x83, 0x91, 0xda, 0x66, 0xf5, 0xfa, 0xf5, 0xd5, 0xf9, 0x97, 0xb1, 0x06, 0xe9, 0x7e, 0xc3, + 0x81, 0xc6, 0xa5, 0x49, 0x58, 0x7d, 0x75, 0xbc, 0x9d, 0x1d, 0xc3, 0xcb, 0x89, 0xa3, 0x92, 0x26, + 0x10, 0x7e, 0xe5, 0xd4, 0xab, 0x9f, 0x7f, 0xc5, 0x08, 0x08, 0xcb, 0x73, 0xa5, 0x68, 0xad, 0x7e, + 0x51, 0xb4, 0xfa, 0x54, 0x9a, 0x54, 0x37, 0xc6, 0xe5, 0xa5, 0x5a, 0xbb, 0x6f, 0x0e, 0x15, 0x2f, + 0x94, 0x2e, 0xde, 0x1c, 0x2a, 0x5e, 0x2c, 0xbd, 0x62, 0x9f, 0xca, 0x4e, 0x63, 0xcc, 0xbb, 0xd6, + 0x3e, 0xdf, 0xaf, 0x34, 0xee, 0x78, 0x6b, 0x1d, 0x4a, 0xc9, 0xe6, 0x91, 0x2f, 0xc2, 0xa4, 0x1e, + 0x12, 0x5e, 0x5e, 0x16, 0xb9, 0x67, 0x7d, 0xb0, 0x6b, 0x6c, 0x79, 0x06, 0xa2, 0xf5, 0x0b, 0x39, + 0x98, 0xcd, 0xe8, 0x43, 0x72, 0x1e, 0x86, 0x30, 0x9f, 0x84, 0xf6, 0x46, 0x9f, 0xc8, 0x23, 0x81, + 0xe5, 0xe4, 0x73, 0x30, 0x5a, 0xd9, 0xa8, 0xd5, 0xca, 0x1b, 0xf2, 0xba, 0xc9, 0xb7, 0xda, 0x76, + 0xe8, 0x84, 0xae, 0xf9, 0xb4, 0x27, 0xd0, 0xc8, 0xeb, 0x30, 0x52, 0xdd, 0x44, 0x02, 0x6e, 0x24, + 0x86, 0xd7, 0x2f, 0xaf, 0x93, 0xc4, 0x17, 0x48, 0xd6, 0x8f, 0xe5, 0x80, 0xa4, 0x27, 0x04, 0xb9, + 0x02, 0xe3, 0xfa, 0xb4, 0xe3, 0xdf, 0x8b, 0xcf, 0x50, 0xda, 0xd0, 0xd8, 0x3a, 0x0e, 0xa9, 0xc0, + 0x30, 0xe6, 0xbf, 0x52, 0x6f, 0x8a, 0x99, 0x87, 0xd7, 0x89, 0xd4, 0xe1, 0x35, 0x8c, 0xd9, 0xb5, + 0x6c, 0x4e, 0x6c, 0xfd, 0x4e, 0x0e, 0x48, 0xfa, 0xc0, 0x1f, 0xd8, 0xa6, 0xe1, 0x0d, 0xcd, 0xc9, + 0x57, 0x8f, 0x18, 0xaf, 0xd2, 0x7d, 0xe8, 0x17, 0xbd, 0xd8, 0x1d, 0xf8, 0xbc, 0xa1, 0x58, 0xe8, + 0xed, 0x19, 0x76, 0x11, 0x86, 0xef, 0xd1, 0x60, 0x5b, 0xda, 0x3f, 0xa2, 0xcd, 0xd4, 0x43, 0x06, + 0xd0, 0x2f, 0xda, 0x88, 0x61, 0xfd, 0x71, 0x0e, 0xe6, 0xb2, 0xa4, 0xd0, 0x43, 0x1c, 0xb8, 0xac, + 0x84, 0xef, 0x19, 0xda, 0x33, 0x70, 0x83, 0x2a, 0xe5, 0x71, 0xb6, 0x08, 0xc3, 0xec, 0x63, 0xe5, + 0x08, 0xa3, 0xa2, 0x83, 0xf5, 0x46, 0x68, 0x73, 0x38, 0x43, 0xe0, 0x41, 0xa9, 0x86, 0x30, 0x9e, + 0x19, 0x22, 0xa0, 0x90, 0x63, 0x73, 0x38, 0x43, 0xb8, 0xed, 0x37, 0x54, 0xea, 0x57, 0x44, 0x68, + 0x31, 0x80, 0xcd, 0xe1, 0xe4, 0x3c, 0x8c, 0xde, 0x69, 0xaf, 0x53, 0xf7, 0xa1, 0xcc, 0x58, 0x82, + 0xf6, 0x17, 0x7e, 0xdb, 0x69, 0x32, 0x98, 0x2d, 0x0b, 0xad, 0x9f, 0xc9, 0xc1, 0x4c, 0x4a, 0x00, + 0x3e, 0xdc, 0x47, 0xad, 0xbf, 0xb3, 0xc8, 0x20, 0xdf, 0xc7, 0x9b, 0x3f, 0x94, 0xdd, 0x7c, 0xeb, + 0xff, 0x1e, 0x82, 0x13, 0x3d, 0xf4, 0x11, 0xb1, 0x33, 0x5b, 0xee, 0x50, 0x67, 0xb6, 0xaf, 0xb2, + 0xfb, 0xbf, 0xeb, 0xb5, 0xc2, 0x2d, 0x3f, 0x6e, 0x71, 0x6c, 0x13, 0x8f, 0x65, 0x32, 0xfb, 0xad, + 0x34, 0x9e, 0x3e, 0xc9, 0x33, 0x90, 0x3b, 0x91, 0x9f, 0x16, 0x87, 0x0c, 0x66, 0x29, 0x77, 0xb2, + 0xc2, 0x5f, 0x10, 0x77, 0x32, 0xd3, 0xc1, 0x61, 0xe8, 0xa9, 0x3a, 0x38, 0x64, 0x1b, 0x47, 0x0e, + 0x7f, 0x1a, 0x53, 0xd9, 0x15, 0x98, 0xe4, 0x06, 0x28, 0xe5, 0x90, 0x0f, 0xd2, 0x48, 0xca, 0x68, + 0xc5, 0x0d, 0xd3, 0x63, 0x61, 0xd0, 0x90, 0x35, 0xd3, 0x18, 0x7f, 0x14, 0x1f, 0xce, 0xce, 0xf7, + 0x36, 0xb6, 0x37, 0x1e, 0xcc, 0x75, 0x52, 0xeb, 0x67, 0xf2, 0xa6, 0xaf, 0xd9, 0x5f, 0xc4, 0x99, + 0x77, 0x11, 0x86, 0xef, 0xef, 0xd1, 0x40, 0xee, 0x77, 0xd8, 0x90, 0x47, 0x0c, 0xa0, 0x37, 0x04, + 0x31, 0xc8, 0x75, 0x98, 0xda, 0xe4, 0x23, 0x21, 0xbb, 0x77, 0x28, 0xbe, 0x26, 0x76, 0x84, 0x32, + 0x23, 0xa3, 0x7f, 0x13, 0x54, 0xd6, 0x0d, 0x38, 0x6d, 0x2c, 0x48, 0x11, 0x1b, 0x83, 0xdb, 0xc4, + 0xf3, 0x13, 0x71, 0x2a, 0xf6, 0x02, 0x88, 0x77, 0x0f, 0x3b, 0x01, 0xb5, 0x76, 0xe0, 0x4c, 0x5f, + 0x46, 0xec, 0x20, 0x82, 0x8e, 0xfa, 0x95, 0x30, 0xdc, 0xeb, 0x4b, 0x6a, 0x6b, 0x74, 0xd6, 0xf7, + 0xc1, 0x84, 0xde, 0xcb, 0xb8, 0xa7, 0xb2, 0xdf, 0x62, 0x53, 0xe3, 0x7b, 0x2a, 0x03, 0xd8, 0x1c, + 0x1e, 0xab, 0x9f, 0xf3, 0xd9, 0xea, 0xe7, 0x78, 0xf8, 0x0b, 0x87, 0x0d, 0x3f, 0xab, 0x1c, 0x97, + 0xac, 0x56, 0x39, 0xfe, 0xd6, 0x2b, 0xc7, 0xe0, 0x17, 0x36, 0x87, 0x3f, 0xd5, 0xca, 0x7f, 0x5b, + 0xe6, 0x6d, 0x40, 0x93, 0x7b, 0x79, 0x9f, 0x8f, 0xb3, 0xb2, 0xce, 0x66, 0xdd, 0xd2, 0x63, 0xcc, + 0xf8, 0x90, 0xcc, 0x1f, 0x76, 0x48, 0x1e, 0x65, 0x22, 0x5e, 0x86, 0xd1, 0xb2, 0x78, 0xd6, 0x1e, + 0x8a, 0x05, 0x1b, 0x37, 0xf5, 0x86, 0x2d, 0xb1, 0xac, 0x6f, 0xe7, 0xe0, 0x58, 0xa6, 0x9a, 0x8f, + 0xd5, 0xca, 0xf5, 0x89, 0xda, 0x3a, 0x4c, 0x2a, 0x13, 0x39, 0xc6, 0x51, 0x3c, 0x9f, 0x07, 0xff, + 0x16, 0xeb, 0x05, 0x18, 0x53, 0x8f, 0x4c, 0x64, 0x4e, 0x0e, 0x1d, 0xda, 0x3a, 0xc9, 0xb7, 0x8a, + 0x1a, 0x00, 0x6b, 0xc1, 0x53, 0xb5, 0xcc, 0xb3, 0x7e, 0x3b, 0xcf, 0x73, 0x7a, 0x3d, 0xb3, 0xc1, + 0x08, 0xb3, 0xcd, 0xe9, 0xd8, 0x27, 0xf5, 0x0e, 0x41, 0x48, 0x56, 0x61, 0xa4, 0x16, 0xb9, 0x51, + 0x57, 0x3a, 0x6c, 0xcf, 0xea, 0x64, 0x58, 0x70, 0x6f, 0x29, 0x76, 0xd9, 0x0d, 0x11, 0x62, 0x5c, + 0x6c, 0x10, 0xa2, 0x59, 0xe5, 0x79, 0x30, 0xa1, 0xd3, 0x92, 0x0f, 0x60, 0x4a, 0x46, 0x58, 0xe3, + 0x5e, 0xec, 0xe2, 0x41, 0x4c, 0xda, 0x77, 0xc8, 0x08, 0x6b, 0xba, 0xd7, 0xbb, 0x81, 0xaf, 0xef, + 0xd4, 0x1d, 0x1d, 0xd9, 0xfa, 0x93, 0x11, 0x3e, 0x0f, 0x44, 0xa8, 0xc4, 0x6d, 0x98, 0xba, 0x53, + 0xad, 0xac, 0x68, 0x4a, 0x3b, 0x33, 0xd3, 0xc6, 0xea, 0xe3, 0x88, 0x06, 0x6d, 0xb7, 0x29, 0x10, + 0xf6, 0xe3, 0xb3, 0xc1, 0xf7, 0x1a, 0xf5, 0x6c, 0x85, 0x5e, 0x82, 0x23, 0xab, 0x83, 0x5f, 0x95, + 0x54, 0x1d, 0xf9, 0x01, 0xeb, 0x08, 0xdd, 0x56, 0xb3, 0x47, 0x1d, 0x26, 0x47, 0xb2, 0x87, 0x97, + 0xac, 0xbd, 0xee, 0xb6, 0x56, 0x4b, 0xa1, 0x7f, 0x2d, 0xe7, 0x44, 0x2d, 0xcf, 0x8b, 0x2b, 0x62, + 0x66, 0x3d, 0x29, 0xae, 0xf1, 0x02, 0x1e, 0x3a, 0x74, 0x01, 0xff, 0xf5, 0x1c, 0x8c, 0x70, 0x41, + 0x49, 0xcc, 0xaf, 0x1e, 0xa2, 0xd8, 0xfd, 0xa7, 0x23, 0x8a, 0x95, 0x70, 0x03, 0x37, 0x66, 0x1a, + 0x2f, 0x23, 0x95, 0xc4, 0x84, 0x95, 0x56, 0x9e, 0xa8, 0x7e, 0xe7, 0x25, 0x87, 0xcf, 0x57, 0x52, + 0x8d, 0xbd, 0x9b, 0x47, 0x0f, 0x75, 0xa0, 0x93, 0x1e, 0xe1, 0xa3, 0xc2, 0xbb, 0xd9, 0xf4, 0x69, + 0x5e, 0x87, 0x31, 0xe1, 0x33, 0xbd, 0xbc, 0x2f, 0x1e, 0xd9, 0x4a, 0x86, 0x25, 0x41, 0x63, 0x79, + 0x3f, 0x16, 0x02, 0x85, 0xd7, 0xb5, 0xb3, 0xbd, 0x6f, 0xe4, 0x2e, 0x93, 0x88, 0xe4, 0x0e, 0xcf, + 0xe9, 0xc3, 0x83, 0x49, 0x9a, 0xd1, 0xa3, 0x15, 0x5c, 0x44, 0x63, 0x91, 0x8e, 0x97, 0x19, 0xb1, + 0x23, 0x63, 0x1e, 0x64, 0x1d, 0x4a, 0x68, 0x7d, 0x42, 0x1b, 0xdc, 0x14, 0xa5, 0x5a, 0xe1, 0x7e, + 0xb9, 0xc2, 0x82, 0x30, 0xe2, 0x65, 0x8e, 0x30, 0x62, 0x31, 0x5d, 0x62, 0x52, 0x94, 0xec, 0xe2, + 0x56, 0x4a, 0xce, 0x3e, 0xf2, 0x36, 0x8c, 0xab, 0x60, 0x9e, 0xca, 0x29, 0x0f, 0x95, 0xed, 0x71, + 0xf4, 0x4f, 0xc3, 0x3d, 0x4f, 0x47, 0x27, 0x4b, 0x50, 0x64, 0x8b, 0x38, 0x99, 0x35, 0xad, 0x2b, + 0x60, 0xba, 0xa5, 0xbd, 0xc4, 0x23, 0x35, 0x98, 0x65, 0x8b, 0xa6, 0xe6, 0xb5, 0x77, 0x9b, 0x74, + 0xdd, 0xdf, 0xf5, 0xbb, 0xd1, 0x5d, 0x7b, 0x5d, 0x6c, 0xae, 0x5c, 0x54, 0x76, 0x5b, 0x4d, 0xa3, + 0x38, 0x30, 0x72, 0xe2, 0x66, 0x50, 0x6b, 0x7b, 0xd8, 0x1f, 0xe6, 0x61, 0x5c, 0x9b, 0x4f, 0xe4, + 0x22, 0x14, 0xab, 0xe1, 0xba, 0x5f, 0x7f, 0xa0, 0xc2, 0x75, 0x4d, 0x3e, 0x39, 0x58, 0x1c, 0xf3, + 0x42, 0xa7, 0x89, 0x40, 0x5b, 0x15, 0x93, 0x65, 0x98, 0xe4, 0x7f, 0xc9, 0x20, 0xeb, 0xf9, 0xd8, + 0x60, 0x90, 0x23, 0xcb, 0xf0, 0xea, 0xfa, 0xbe, 0x66, 0x90, 0x90, 0xaf, 0x01, 0x70, 0x00, 0x3a, + 0x78, 0x16, 0x06, 0x77, 0x4d, 0x15, 0x15, 0x64, 0xb8, 0x76, 0x6a, 0x0c, 0xc9, 0x37, 0x78, 0xf0, + 0x4f, 0x39, 0xff, 0x87, 0x06, 0xf7, 0xad, 0x65, 0xfc, 0x9d, 0x6c, 0x17, 0x7f, 0x9d, 0xa5, 0x88, + 0x2c, 0xb8, 0x60, 0xd3, 0xba, 0xff, 0x90, 0x06, 0xfb, 0xe5, 0x08, 0x11, 0x35, 0x0c, 0xeb, 0x7f, + 0xca, 0x69, 0xab, 0x86, 0x6c, 0x60, 0xa2, 0x3f, 0x3e, 0x23, 0x84, 0xbd, 0x89, 0x12, 0xe6, 0x25, + 0xdc, 0xa6, 0x3b, 0xcb, 0xcf, 0x0b, 0x7b, 0xd5, 0x59, 0x35, 0xaf, 0x12, 0x09, 0x00, 0x39, 0x90, + 0xbc, 0x0f, 0x43, 0xd8, 0x75, 0xf9, 0x43, 0x3f, 0x4d, 0x9e, 0xa7, 0x43, 0xac, 0xcf, 0xf0, 0x43, + 0x90, 0x92, 0x7c, 0x4e, 0x38, 0xc7, 0xf1, 0xce, 0x9f, 0xd2, 0x0e, 0x45, 0xd6, 0x0e, 0x75, 0x90, + 0xc6, 0x51, 0x1e, 0xb4, 0xd9, 0xf3, 0xef, 0xe4, 0xa1, 0x94, 0x5c, 0xab, 0xe4, 0x3d, 0x98, 0x90, + 0x27, 0x1d, 0x66, 0x82, 0x66, 0x5f, 0x39, 0x21, 0x22, 0x74, 0xcb, 0xe3, 0x2e, 0x99, 0x08, 0x5a, + 0x27, 0x60, 0x52, 0xc7, 0x96, 0x88, 0xba, 0xa4, 0xad, 0x92, 0xc8, 0x8f, 0x3a, 0x89, 0xf8, 0x91, + 0x12, 0x8d, 0xbc, 0x01, 0x85, 0xdb, 0xd7, 0xcb, 0xc2, 0x13, 0x43, 0x6e, 0x49, 0xb7, 0xaf, 0x97, + 0xf9, 0x6a, 0xe6, 0x96, 0x66, 0xa6, 0xdd, 0x1b, 0xc3, 0x27, 0xeb, 0x5a, 0x78, 0xd6, 0x11, 0x23, + 0x2d, 0x93, 0x04, 0xab, 0x8f, 0x3b, 0x3c, 0x4e, 0x2b, 0x4f, 0x31, 0x2d, 0x02, 0x15, 0xfe, 0xfb, + 0x05, 0x18, 0x53, 0xf5, 0x13, 0x02, 0x28, 0x54, 0x89, 0x9b, 0x0c, 0xfe, 0x4d, 0x4e, 0x42, 0x51, + 0xca, 0x51, 0xc2, 0x21, 0x63, 0x34, 0x14, 0x32, 0xd4, 0x3c, 0x48, 0x81, 0x89, 0x2f, 0x73, 0x5b, + 0xfe, 0x24, 0x57, 0x40, 0x49, 0x43, 0xbd, 0xc4, 0xa6, 0x21, 0x36, 0x60, 0xb6, 0x42, 0x23, 0x53, + 0x90, 0xf7, 0x78, 0xf0, 0x9b, 0x31, 0x3b, 0xef, 0x35, 0xc8, 0x7b, 0x50, 0x74, 0x1b, 0x0d, 0xda, + 0x70, 0x5c, 0x69, 0xb8, 0xd1, 0x6f, 0xd2, 0x14, 0x19, 0x37, 0x7e, 0x08, 0x20, 0x55, 0x39, 0x22, + 0x65, 0x18, 0x6b, 0xba, 0xdc, 0x16, 0xad, 0x31, 0xc0, 0x89, 0x12, 0x73, 0x28, 0x32, 0xb2, 0xbb, + 0x21, 0x6d, 0x90, 0x97, 0x61, 0x88, 0x8d, 0xa6, 0x38, 0x42, 0xa4, 0xf8, 0xc6, 0x06, 0x93, 0x77, + 0xd8, 0xda, 0x73, 0x36, 0x22, 0x90, 0x17, 0xa1, 0xd0, 0x5d, 0xda, 0x11, 0x87, 0x43, 0x29, 0x0e, + 0x95, 0xac, 0xd0, 0x58, 0x31, 0xb9, 0x0a, 0xc5, 0x47, 0x66, 0x94, 0xdd, 0x63, 0x89, 0x61, 0x54, + 0xf8, 0x0a, 0x71, 0xb9, 0x08, 0x23, 0xfc, 0x20, 0xb0, 0xce, 0x00, 0xc4, 0x55, 0xa7, 0xfd, 0x66, + 0xac, 0xaf, 0xc1, 0x98, 0xaa, 0x92, 0x9c, 0x06, 0x78, 0x40, 0xf7, 0x9d, 0x3d, 0xb7, 0xdd, 0x68, + 0x72, 0xf9, 0x6e, 0xc2, 0x1e, 0x7b, 0x40, 0xf7, 0xd7, 0x10, 0x40, 0x4e, 0xc0, 0x68, 0x87, 0x8d, + 0xaa, 0x98, 0xba, 0x13, 0xf6, 0x48, 0xa7, 0xbb, 0xcd, 0x66, 0xe8, 0x3c, 0x8c, 0xa2, 0xe6, 0x4d, + 0x2c, 0xb4, 0x49, 0x5b, 0xfe, 0xb4, 0xfe, 0xb4, 0x80, 0x19, 0x26, 0xb4, 0x76, 0x92, 0x73, 0x30, + 0x59, 0x0f, 0x28, 0x9e, 0x39, 0x2e, 0x93, 0xa4, 0x44, 0x3d, 0x13, 0x31, 0xb0, 0xda, 0x20, 0xe7, + 0x61, 0x5a, 0x64, 0x55, 0x67, 0x0d, 0xaa, 0x6f, 0x8b, 0x90, 0xd8, 0x13, 0xf6, 0x24, 0x07, 0xdf, + 0xa2, 0xfb, 0x2b, 0xdb, 0x18, 0xb4, 0xa9, 0xa4, 0xc7, 0xdc, 0x8c, 0x54, 0x32, 0x4c, 0x7b, 0x5a, + 0x83, 0xa3, 0x3d, 0xd6, 0x71, 0x18, 0x71, 0xdd, 0xdd, 0xae, 0xc7, 0x83, 0xab, 0x4c, 0xd8, 0xe2, + 0x17, 0x79, 0x15, 0x66, 0xe2, 0xd0, 0xac, 0xf2, 0x33, 0x86, 0xf1, 0x33, 0x4a, 0xaa, 0x60, 0x85, + 0xc3, 0xc9, 0xeb, 0x40, 0xf4, 0xfa, 0xfc, 0xed, 0x8f, 0x68, 0x9d, 0x4f, 0xb5, 0x09, 0x7b, 0x46, + 0x2b, 0xb9, 0x83, 0x05, 0xe4, 0x05, 0x98, 0x08, 0x68, 0x88, 0x52, 0x1c, 0x76, 0x1b, 0x26, 0x60, + 0xb2, 0xc7, 0x25, 0x8c, 0xf5, 0xdd, 0x05, 0x28, 0x69, 0xdd, 0x81, 0x61, 0x4d, 0x79, 0x3c, 0x68, + 0x7b, 0x2a, 0x86, 0xdb, 0x9d, 0x6a, 0x83, 0x7c, 0x05, 0x16, 0x34, 0x4c, 0x9e, 0x0b, 0xca, 0xa1, + 0x4d, 0x6f, 0xd7, 0xdb, 0x6e, 0x52, 0x31, 0x8d, 0xd2, 0x93, 0x55, 0xdd, 0xc1, 0xec, 0xf9, 0x98, + 0x9a, 0x67, 0x89, 0x5a, 0x15, 0xb4, 0x64, 0x1d, 0xe6, 0x12, 0x9c, 0x69, 0xc3, 0xe9, 0x76, 0x7a, + 0x46, 0x33, 0x8a, 0x79, 0x12, 0x93, 0x27, 0x6d, 0xdc, 0xed, 0x58, 0xcb, 0x30, 0x93, 0xda, 0x61, + 0xb4, 0x44, 0xcb, 0x7c, 0xc7, 0xec, 0x9f, 0x68, 0xd9, 0x6a, 0xc3, 0x84, 0x7e, 0x62, 0x1c, 0x12, + 0x3e, 0xfd, 0x38, 0x06, 0x11, 0xe0, 0xdb, 0xe9, 0xc8, 0x93, 0x83, 0xc5, 0xbc, 0xd7, 0xc0, 0xd0, + 0x01, 0x17, 0xa0, 0x28, 0x85, 0x1b, 0x21, 0x53, 0xa0, 0x86, 0x57, 0x48, 0xd5, 0xfb, 0xb6, 0x2a, + 0xb5, 0x5e, 0x86, 0x51, 0x71, 0x28, 0xf4, 0xd7, 0xeb, 0x5a, 0x3f, 0x92, 0x87, 0x69, 0x9b, 0xb2, + 0x2d, 0x8b, 0xf2, 0x9c, 0x09, 0xcf, 0xec, 0x35, 0x33, 0x3b, 0x14, 0x9d, 0xf1, 0x6d, 0x7d, 0xb2, + 0x15, 0xfc, 0x83, 0x1c, 0xcc, 0x66, 0xe0, 0x7e, 0xa2, 0x6c, 0x7d, 0xd7, 0x60, 0xac, 0xe2, 0xb9, + 0xcd, 0x72, 0xa3, 0xa1, 0x22, 0x0a, 0xa0, 0x48, 0x8c, 0x29, 0x3d, 0x5c, 0x06, 0xd5, 0xc5, 0x03, + 0x85, 0x4a, 0x5e, 0x11, 0x93, 0x22, 0xce, 0x94, 0x8e, 0x93, 0xe2, 0xe3, 0x83, 0x45, 0xe0, 0x6d, + 0x8a, 0x33, 0xc2, 0x62, 0x78, 0x48, 0x0e, 0x8c, 0x2d, 0xfe, 0x9f, 0xd9, 0xa1, 0xcb, 0x0e, 0x0f, + 0x99, 0xfc, 0xbc, 0x81, 0x12, 0x16, 0xfc, 0x78, 0x1e, 0x8e, 0x67, 0x13, 0x7e, 0xd2, 0xc4, 0x8b, + 0x98, 0x2a, 0x42, 0x0b, 0x69, 0x8b, 0x89, 0x17, 0x79, 0x5e, 0x09, 0xc4, 0x8f, 0x11, 0xc8, 0x0e, + 0x4c, 0xae, 0xbb, 0x61, 0xb4, 0x46, 0xdd, 0x20, 0xda, 0xa6, 0x6e, 0x34, 0x80, 0x8c, 0x2c, 0x1f, + 0x51, 0xe7, 0xf1, 0x98, 0xde, 0x93, 0x94, 0x09, 0x29, 0xd6, 0x64, 0xab, 0x26, 0xca, 0xd0, 0x00, + 0x13, 0xe5, 0x9b, 0x30, 0x5d, 0xa3, 0x2d, 0xb7, 0xb3, 0xe7, 0x07, 0xd2, 0x65, 0xf4, 0x12, 0x4c, + 0x2a, 0x50, 0xe6, 0x6c, 0x31, 0x8b, 0x0d, 0x7c, 0xad, 0x23, 0xe2, 0xad, 0xc4, 0x2c, 0xb6, 0xfe, + 0x56, 0x1e, 0x4e, 0x94, 0xeb, 0xc2, 0x22, 0x4b, 0x14, 0x48, 0xc3, 0xd1, 0xcf, 0xb8, 0x6e, 0x72, + 0x19, 0xc6, 0x6e, 0xbb, 0x8f, 0xd7, 0xa9, 0x1b, 0xd2, 0x50, 0xa4, 0xbd, 0xe2, 0x02, 0xa5, 0xfb, + 0x38, 0x36, 0x54, 0xb2, 0x63, 0x1c, 0xfd, 0xc6, 0x3d, 0xf4, 0x29, 0x6f, 0xdc, 0x16, 0x8c, 0xac, + 0xf9, 0xcd, 0x86, 0x38, 0x6e, 0xc5, 0x33, 0xe0, 0x1e, 0x42, 0x6c, 0x51, 0xc2, 0x2e, 0xaa, 0x53, + 0xaa, 0xc5, 0xd8, 0x84, 0xcf, 0xbc, 0x4b, 0xce, 0xc3, 0x28, 0x56, 0x54, 0xad, 0xe8, 0x87, 0x46, + 0x93, 0x62, 0xf2, 0xa2, 0x86, 0x2d, 0x0b, 0xf5, 0x9e, 0x18, 0xfe, 0x74, 0x3d, 0x61, 0xfd, 0x07, + 0xf8, 0xc2, 0xa8, 0x7f, 0x25, 0x3b, 0x89, 0xb4, 0x86, 0xe4, 0x06, 0x6c, 0x48, 0xfe, 0xa9, 0x0d, + 0x49, 0xa1, 0xe7, 0x90, 0x7c, 0x2b, 0x0f, 0xe3, 0xaa, 0xb1, 0xdf, 0x65, 0x71, 0x95, 0xd5, 0x77, + 0x0d, 0x14, 0xe6, 0xa1, 0xa6, 0xed, 0x15, 0x22, 0x9a, 0xc2, 0xfb, 0x30, 0x22, 0x16, 0x53, 0x2e, + 0x61, 0x40, 0x99, 0x18, 0xdd, 0xe5, 0x29, 0xc1, 0x7a, 0x04, 0x07, 0x34, 0xb4, 0x05, 0x1d, 0xc6, + 0xd1, 0xb8, 0x4f, 0xb7, 0xc5, 0x83, 0xf3, 0x33, 0x7b, 0x46, 0x65, 0xc7, 0xd1, 0x88, 0x3f, 0x6c, + 0xa0, 0xd3, 0xe9, 0x9f, 0x16, 0xa1, 0x94, 0x24, 0x39, 0x3c, 0x72, 0xf5, 0x66, 0x77, 0x9b, 0xdf, + 0x16, 0x78, 0xe4, 0xea, 0x4e, 0x77, 0xdb, 0x66, 0x30, 0xb4, 0x47, 0x09, 0xbc, 0x87, 0xf8, 0xd5, + 0x13, 0xc2, 0x1e, 0x25, 0xf0, 0x1e, 0x1a, 0xf6, 0x28, 0x81, 0xf7, 0x10, 0xaf, 0xe8, 0xeb, 0x35, + 0x74, 0xfd, 0xc5, 0xab, 0x82, 0xb8, 0xa2, 0x37, 0xc3, 0x64, 0x36, 0x19, 0x89, 0xc6, 0x8e, 0xca, + 0x65, 0xea, 0x06, 0x22, 0xca, 0xb2, 0xd8, 0xce, 0xf0, 0xa8, 0xdc, 0x46, 0x30, 0x4f, 0xfe, 0x6c, + 0xeb, 0x48, 0xa4, 0x09, 0x44, 0xfb, 0x29, 0x17, 0xf0, 0xe1, 0xb7, 0x56, 0x69, 0xfc, 0x34, 0xa7, + 0xb3, 0x76, 0xf4, 0xd5, 0x9c, 0xc1, 0xf7, 0x69, 0x2a, 0x4a, 0x37, 0x45, 0xe8, 0x38, 0x54, 0xcd, + 0x14, 0x0f, 0x65, 0x26, 0x7d, 0xe3, 0x81, 0x87, 0x96, 0x53, 0x0a, 0x9a, 0x98, 0x09, 0x79, 0x17, + 0xc6, 0x75, 0x87, 0x6e, 0xee, 0x76, 0x7c, 0x8a, 0x47, 0x03, 0xeb, 0x91, 0x7f, 0x50, 0x27, 0x20, + 0xdb, 0x70, 0x62, 0xc5, 0x6f, 0x87, 0xdd, 0x96, 0x8c, 0x3b, 0x16, 0x47, 0x3b, 0x05, 0x1c, 0x0a, + 0xf4, 0x0e, 0xad, 0x0b, 0x14, 0xe1, 0x3f, 0x2c, 0xad, 0xd3, 0xcd, 0x0b, 0x48, 0x2f, 0x46, 0x64, + 0x0b, 0xc6, 0x51, 0xd9, 0x28, 0xcc, 0xdf, 0xc6, 0xcd, 0x6d, 0x23, 0x2e, 0xa9, 0xb0, 0x85, 0xc1, + 0x03, 0xe7, 0xb8, 0xad, 0xa6, 0x34, 0x8e, 0xd6, 0x95, 0xa6, 0x1a, 0x32, 0xf9, 0x1a, 0x4c, 0xf1, + 0x6b, 0xf1, 0x7d, 0xba, 0xcd, 0xe7, 0xce, 0x84, 0x71, 0xc7, 0x37, 0x0b, 0xf9, 0x83, 0xb4, 0x50, + 0xf1, 0x3e, 0xa2, 0xdb, 0x7c, 0xec, 0x0d, 0xd7, 0x04, 0x03, 0x9f, 0xdc, 0x85, 0xd9, 0x35, 0x37, + 0xe4, 0x40, 0xcd, 0x33, 0x77, 0x12, 0x75, 0x9f, 0x68, 0x32, 0xba, 0xe7, 0x86, 0x52, 0x67, 0x9c, + 0xe9, 0x89, 0x9b, 0x45, 0x4f, 0x7e, 0x24, 0x07, 0xf3, 0x86, 0x4a, 0x59, 0x18, 0xff, 0xb4, 0x68, + 0x3b, 0x42, 0x1f, 0x84, 0x29, 0x95, 0x76, 0xba, 0x17, 0x1a, 0x1f, 0x92, 0x84, 0xd6, 0x3a, 0x88, + 0xcb, 0x75, 0x5b, 0xcc, 0x5e, 0x3c, 0xc4, 0x42, 0xc5, 0x35, 0x3d, 0x6d, 0x2e, 0xd4, 0xc4, 0xba, + 0x96, 0x68, 0xd6, 0xb5, 0x64, 0x7f, 0x0b, 0x15, 0x52, 0x4e, 0xa9, 0x90, 0xe6, 0x60, 0x18, 0x7b, + 0x55, 0x06, 0x12, 0xc1, 0x1f, 0xd6, 0xe7, 0xf4, 0x7d, 0x48, 0x88, 0x85, 0x7d, 0xf7, 0x21, 0xeb, + 0xbf, 0x1f, 0x81, 0xe9, 0xc4, 0xb4, 0x10, 0xf7, 0xd4, 0x5c, 0xea, 0x9e, 0x5a, 0x03, 0xe0, 0x4a, + 0xd4, 0x01, 0xb5, 0x9d, 0xd2, 0xff, 0x69, 0x5c, 0xb8, 0x31, 0xaa, 0x35, 0xa5, 0xb1, 0x61, 0x4c, + 0xf9, 0x8a, 0x1d, 0x50, 0xfb, 0xac, 0x98, 0xf2, 0x45, 0xaf, 0x31, 0x8d, 0xd9, 0x90, 0x45, 0x18, + 0xc6, 0xe8, 0x7f, 0xba, 0xfb, 0x99, 0xc7, 0x00, 0x36, 0x87, 0x93, 0x73, 0x30, 0xc2, 0x84, 0xa8, + 0x6a, 0x45, 0x6c, 0x82, 0x78, 0xb6, 0x30, 0x29, 0x8b, 0x49, 0x2c, 0xa2, 0x88, 0x5c, 0x83, 0x09, + 0xfe, 0x97, 0x08, 0x00, 0x31, 0x62, 0x5a, 0xa4, 0x39, 0x5e, 0x43, 0xc6, 0x80, 0x30, 0xf0, 0xd8, + 0xed, 0xa2, 0xd6, 0x45, 0xcd, 0x4a, 0xb5, 0x22, 0xc2, 0xc5, 0xe2, 0xed, 0x22, 0xe4, 0x40, 0x4c, + 0xeb, 0xae, 0x10, 0x98, 0x2c, 0x23, 0x8c, 0xc0, 0x8b, 0x78, 0xa7, 0x44, 0x59, 0x86, 0x1b, 0x7f, + 0xdb, 0xa2, 0x84, 0x5c, 0xe4, 0x8f, 0x16, 0x28, 0x16, 0xf2, 0xec, 0x59, 0xf8, 0x22, 0x80, 0x8a, + 0x09, 0x94, 0x0d, 0x55, 0x31, 0xab, 0x9c, 0xfd, 0xbd, 0xda, 0x72, 0xbd, 0xa6, 0xd8, 0x56, 0xb0, + 0x72, 0xc4, 0xa5, 0x0c, 0x6a, 0xc7, 0x08, 0xe4, 0x6d, 0x98, 0x62, 0x3f, 0x56, 0xfc, 0x56, 0xcb, + 0x6f, 0x23, 0xfb, 0xf1, 0x38, 0x96, 0x10, 0x92, 0xd4, 0xb1, 0x88, 0xd7, 0x92, 0xc0, 0x65, 0xe7, + 0x09, 0x3e, 0x88, 0x76, 0xf9, 0x73, 0xca, 0x44, 0x7c, 0x9e, 0x20, 0x69, 0xc8, 0xe1, 0xb6, 0x8e, + 0x44, 0xde, 0x84, 0x49, 0xf6, 0xf3, 0x86, 0xf7, 0x90, 0xf2, 0x0a, 0x27, 0xe3, 0x27, 0x7a, 0xa4, + 0xda, 0x65, 0x25, 0xbc, 0x3e, 0x13, 0x93, 0x7c, 0x19, 0x8e, 0x21, 0xa7, 0xba, 0xdf, 0xa1, 0x8d, + 0xf2, 0xce, 0x8e, 0xd7, 0xf4, 0xb8, 0x89, 0x10, 0x0f, 0x75, 0x80, 0xda, 0x6d, 0x5e, 0x31, 0x62, + 0x38, 0x6e, 0x8c, 0x62, 0x67, 0x53, 0x92, 0xfb, 0x50, 0x5a, 0xe9, 0x86, 0x91, 0xdf, 0x2a, 0x47, + 0x51, 0xe0, 0x6d, 0x77, 0x23, 0x1a, 0xce, 0x4f, 0x1b, 0x01, 0x01, 0xd8, 0xe2, 0x50, 0x85, 0x5c, + 0x1f, 0x54, 0x47, 0x0a, 0xc7, 0x55, 0x24, 0x76, 0x8a, 0x89, 0xf5, 0xdf, 0xe5, 0x60, 0xd2, 0x20, + 0x25, 0x6f, 0xc0, 0xc4, 0xf5, 0xc0, 0xa3, 0xed, 0x46, 0x73, 0x5f, 0xbb, 0xa8, 0xe2, 0x2d, 0x66, + 0x47, 0xc0, 0xf9, 0x57, 0x1b, 0x68, 0x4a, 0xcf, 0x93, 0xcf, 0xb4, 0xdf, 0xbb, 0xcc, 0xbd, 0x20, + 0xc5, 0x04, 0x2d, 0xc4, 0x11, 0x4a, 0x70, 0x82, 0x8a, 0xd9, 0xa9, 0xa1, 0x90, 0x77, 0x60, 0x84, + 0x3f, 0x9d, 0x0a, 0x63, 0xb2, 0x93, 0x59, 0x9f, 0xc9, 0x3d, 0x6e, 0x71, 0x22, 0xa2, 0xe1, 0x4a, + 0x68, 0x0b, 0x22, 0xeb, 0x67, 0x73, 0x40, 0xd2, 0xa8, 0x87, 0xe8, 0xbd, 0x0e, 0x35, 0x88, 0x79, + 0x5f, 0xad, 0xc6, 0x82, 0xa1, 0x8d, 0x66, 0x35, 0xf1, 0x02, 0xde, 0xf1, 0x62, 0xd5, 0xe9, 0x8a, + 0x38, 0x5e, 0x6c, 0xfd, 0x70, 0x1e, 0x20, 0xc6, 0x26, 0x5f, 0xe4, 0x49, 0x56, 0xbe, 0xdc, 0x75, + 0x9b, 0xde, 0x8e, 0x67, 0x46, 0x1d, 0x44, 0x26, 0xdf, 0x94, 0x25, 0xb6, 0x89, 0x48, 0xde, 0x83, + 0xe9, 0xda, 0xa6, 0x49, 0xab, 0x25, 0x94, 0x08, 0x3b, 0x4e, 0x82, 0x3c, 0x89, 0x8d, 0x46, 0xa3, + 0xfa, 0x68, 0x70, 0xa3, 0x51, 0x3e, 0x10, 0xa2, 0x84, 0x6d, 0x2c, 0xb5, 0x4d, 0x61, 0xf5, 0xdc, + 0xa8, 0x56, 0xc4, 0x2e, 0x85, 0xad, 0x0b, 0x3b, 0x4e, 0x47, 0x98, 0x43, 0xb3, 0x7d, 0xc2, 0xc0, + 0x8b, 0x3b, 0x72, 0xb8, 0x87, 0x57, 0xed, 0xcf, 0xa1, 0xda, 0xaf, 0xe5, 0x47, 0x54, 0x68, 0x3b, + 0x9e, 0xd9, 0x7b, 0x4f, 0xfc, 0xee, 0x3e, 0x6c, 0x38, 0x0b, 0x1a, 0x5f, 0x27, 0xac, 0x3e, 0xae, + 0xc6, 0x97, 0x14, 0xfe, 0x02, 0x9f, 0x61, 0x27, 0xf2, 0xf7, 0x72, 0x70, 0x2c, 0x93, 0x96, 0x5c, + 0x02, 0x88, 0x75, 0x4a, 0xa2, 0x97, 0x70, 0xc7, 0x8c, 0xe3, 0x72, 0xd8, 0x1a, 0x06, 0xf9, 0x6a, + 0x52, 0x1b, 0x74, 0xf8, 0x41, 0xb8, 0x20, 0xe3, 0x2e, 0x99, 0xda, 0xa0, 0x0c, 0x1d, 0x90, 0xf5, + 0x0f, 0x0a, 0x30, 0xa3, 0x85, 0xfd, 0xe0, 0x6d, 0x3d, 0xc4, 0x88, 0xf7, 0x01, 0x4c, 0xb0, 0xaf, + 0xf1, 0xea, 0xc2, 0x63, 0x89, 0xdb, 0x88, 0xbc, 0x92, 0x72, 0xf7, 0x12, 0xdc, 0x2e, 0xe9, 0xc8, + 0x3c, 0x1a, 0x1a, 0x6e, 0x9d, 0xf8, 0x26, 0x50, 0x4f, 0x7b, 0x2e, 0x19, 0xcc, 0x49, 0x08, 0x93, + 0x95, 0xfd, 0xb6, 0xdb, 0x52, 0xb5, 0x71, 0x5b, 0x91, 0x57, 0x7b, 0xd6, 0x66, 0x60, 0xf3, 0xea, + 0x62, 0xc7, 0x08, 0x5e, 0x96, 0xe1, 0x93, 0x6b, 0x50, 0x2d, 0xbc, 0x07, 0x33, 0xa9, 0x46, 0x1f, + 0x29, 0x30, 0xdb, 0x7d, 0x20, 0xe9, 0x76, 0x64, 0x70, 0x78, 0xd5, 0x0c, 0xfb, 0x77, 0x4c, 0x3d, + 0x0b, 0x63, 0x3a, 0x69, 0x6e, 0x79, 0xb2, 0xa4, 0x87, 0x6d, 0xfb, 0xb9, 0xbc, 0xee, 0x72, 0xf7, + 0xac, 0xaf, 0xba, 0xf7, 0x8d, 0xdb, 0xf0, 0x99, 0x5e, 0x63, 0x3a, 0x90, 0xd6, 0xe1, 0x3b, 0x05, + 0x38, 0xd1, 0x83, 0x92, 0xec, 0x27, 0x27, 0x11, 0xd7, 0x42, 0x5c, 0xe9, 0x5f, 0xe1, 0xd3, 0x98, + 0x4a, 0xe4, 0x8b, 0xdc, 0xe9, 0xbe, 0x8e, 0x29, 0x8b, 0xc5, 0xfd, 0x9b, 0x67, 0xd0, 0x57, 0xd0, + 0xa4, 0xb7, 0x3d, 0x87, 0x92, 0xf7, 0x60, 0x18, 0xfd, 0x2d, 0x13, 0x61, 0xc7, 0x18, 0x06, 0xc2, + 0xb5, 0x18, 0x6d, 0xec, 0xa7, 0x11, 0xa3, 0x8d, 0x01, 0xc8, 0x17, 0xa0, 0x50, 0xbe, 0x5f, 0x13, + 0xe3, 0x32, 0xa5, 0x93, 0xdf, 0xaf, 0xc5, 0xa1, 0xe1, 0x5d, 0x23, 0x86, 0x3b, 0xa3, 0x60, 0x84, + 0x37, 0x56, 0x36, 0xc5, 0xa8, 0xe8, 0x84, 0x37, 0x56, 0x36, 0x63, 0xc2, 0xdd, 0xba, 0x11, 0xc6, + 0xe5, 0xc6, 0xca, 0xe6, 0x67, 0x37, 0xed, 0xff, 0x66, 0x9e, 0x47, 0x0a, 0xe0, 0x1f, 0xf6, 0x1e, + 0x4c, 0x18, 0x61, 0x59, 0x73, 0xb1, 0x3c, 0xa6, 0xa2, 0xdf, 0x26, 0x8c, 0x6b, 0x0c, 0x02, 0x99, + 0x64, 0x81, 0xfd, 0x46, 0x89, 0x57, 0x37, 0x63, 0x51, 0x1c, 0x50, 0x26, 0x4e, 0x26, 0x59, 0x50, + 0x24, 0xe4, 0x2a, 0x14, 0xb7, 0x68, 0xdb, 0x6d, 0x47, 0x4a, 0x21, 0x8a, 0x06, 0xb2, 0x11, 0xc2, + 0x4c, 0xa9, 0x41, 0x21, 0xa2, 0x31, 0x67, 0x77, 0x3b, 0xac, 0x07, 0x1e, 0x46, 0x14, 0x51, 0x67, + 0x31, 0x37, 0xe6, 0xd4, 0x4a, 0x4c, 0x06, 0x09, 0x22, 0xeb, 0xe7, 0x72, 0x30, 0x2a, 0x06, 0x92, + 0x27, 0xc7, 0xd9, 0x8d, 0xcf, 0x12, 0x91, 0x1c, 0x67, 0xd7, 0x4b, 0x26, 0xc7, 0xd9, 0xe5, 0x61, + 0x3b, 0xc6, 0x84, 0xd3, 0xab, 0x7a, 0x1a, 0xe4, 0x79, 0xda, 0x39, 0xd0, 0xac, 0x36, 0x46, 0x1d, + 0xd4, 0x4b, 0xc6, 0xfa, 0xdb, 0xa2, 0x65, 0x37, 0x56, 0x36, 0xc9, 0x12, 0x14, 0xd7, 0x7d, 0x1e, + 0xa4, 0x45, 0xcf, 0x74, 0xd8, 0x14, 0x30, 0xbd, 0x83, 0x24, 0x1e, 0x6b, 0xdf, 0x66, 0xe0, 0x8b, + 0xbb, 0x8c, 0xd6, 0xbe, 0x0e, 0x07, 0x26, 0xda, 0xa7, 0x50, 0x07, 0x6e, 0x1f, 0xcd, 0xd8, 0x24, + 0xee, 0x5d, 0xc5, 0xe8, 0xf3, 0x37, 0x75, 0xef, 0x23, 0x51, 0x24, 0x77, 0x8a, 0x85, 0x5e, 0x3b, + 0xc5, 0xbd, 0xab, 0x76, 0x06, 0x15, 0xbe, 0xab, 0xc5, 0xe0, 0x1a, 0x0d, 0x1e, 0x3e, 0xc3, 0xbb, + 0x74, 0xf6, 0xbb, 0x5a, 0xf2, 0xf3, 0x06, 0xda, 0xa4, 0xff, 0x9b, 0x3c, 0x1c, 0xcf, 0x26, 0xd4, + 0xbf, 0x25, 0xd7, 0xe7, 0x5b, 0x2e, 0x40, 0x71, 0xcd, 0x0f, 0x23, 0xcd, 0x9e, 0x0e, 0xd5, 0xff, + 0x7b, 0x02, 0x66, 0xab, 0x52, 0x76, 0xe7, 0x66, 0x7f, 0xab, 0xe5, 0x89, 0xfc, 0xd0, 0x3f, 0x9e, + 0xdd, 0xb9, 0x79, 0x11, 0xb9, 0x01, 0x45, 0x5b, 0x78, 0xbf, 0x24, 0xba, 0x46, 0x82, 0x95, 0x34, + 0x45, 0x02, 0x01, 0x31, 0xa2, 0xe3, 0x0a, 0x18, 0x29, 0xc3, 0xa8, 0x18, 0xfd, 0xc4, 0xd3, 0x71, + 0xc6, 0x94, 0x31, 0x03, 0x56, 0x4b, 0x3a, 0xb6, 0xa3, 0xe0, 0x23, 0x60, 0xb5, 0x22, 0x1d, 0x59, + 0x70, 0x47, 0xe1, 0x8f, 0x84, 0xa6, 0xe9, 0xa2, 0x42, 0xb4, 0x7e, 0x24, 0x0f, 0x20, 0xb5, 0x36, + 0xcf, 0xec, 0x0c, 0xfb, 0x82, 0x31, 0xc3, 0x34, 0x4b, 0x9e, 0xc1, 0x93, 0x39, 0xde, 0x41, 0x8b, + 0x9a, 0xc1, 0x53, 0x39, 0x2e, 0xc2, 0xf0, 0x56, 0xac, 0xd0, 0x12, 0x6e, 0x15, 0xa8, 0x8e, 0xe6, + 0x70, 0x6b, 0x1b, 0xe6, 0x6e, 0xd0, 0x28, 0x56, 0x6f, 0xc9, 0xa7, 0xc7, 0xfe, 0x6c, 0x5f, 0x83, + 0x31, 0x81, 0xaf, 0xf6, 0x2f, 0xae, 0x8b, 0x11, 0x21, 0x27, 0x50, 0x17, 0x23, 0x11, 0xd8, 0x6e, + 0x54, 0xa1, 0x4d, 0x1a, 0xd1, 0xcf, 0xb6, 0x9a, 0x1a, 0x10, 0xfe, 0x29, 0xf8, 0x65, 0x83, 0xd5, + 0x70, 0x68, 0xff, 0xdc, 0x83, 0x63, 0xaa, 0xed, 0x4f, 0x93, 0xef, 0x65, 0x76, 0xa5, 0x14, 0xb1, + 0x9e, 0x63, 0x8e, 0x7d, 0x6c, 0x4f, 0x1e, 0xc3, 0x82, 0x24, 0xb8, 0xef, 0x29, 0x93, 0xc4, 0x81, + 0x68, 0xc9, 0xdb, 0x30, 0xae, 0xd1, 0x88, 0x58, 0xc5, 0xa8, 0xa6, 0x7e, 0xe4, 0x45, 0x7b, 0x4e, + 0xc8, 0xe1, 0xba, 0x9a, 0x5a, 0x43, 0xb7, 0x3e, 0x84, 0xe7, 0x95, 0xeb, 0x4b, 0x46, 0xd5, 0x09, + 0xe6, 0xb9, 0xa3, 0x31, 0xdf, 0x88, 0x3f, 0xab, 0xda, 0x56, 0xee, 0xaa, 0x92, 0x37, 0xd1, 0x3f, + 0x4b, 0x7c, 0xcc, 0xa9, 0x94, 0x03, 0xac, 0xe6, 0xe7, 0x6a, 0xbd, 0xa5, 0x35, 0x36, 0x83, 0xa1, + 0x41, 0x9c, 0x4b, 0x12, 0xff, 0x48, 0x1e, 0xa6, 0xef, 0x54, 0x2b, 0x2b, 0xca, 0xfa, 0xe8, 0xbb, + 0x2c, 0xd5, 0xa4, 0xf1, 0x6d, 0xbd, 0xf7, 0x1b, 0xeb, 0x2e, 0xcc, 0x26, 0xba, 0x01, 0x45, 0x87, + 0x77, 0xb9, 0x6f, 0x86, 0x02, 0x4b, 0xb1, 0xe1, 0x78, 0x16, 0xfb, 0x7b, 0x57, 0xed, 0x04, 0xb6, + 0xf5, 0xcf, 0xc6, 0x12, 0x7c, 0xc5, 0x16, 0xf6, 0x1a, 0x8c, 0x55, 0xc3, 0xb0, 0x4b, 0x83, 0xbb, + 0xf6, 0xba, 0xae, 0x2a, 0xf0, 0x10, 0xe8, 0x74, 0x83, 0xa6, 0x1d, 0x23, 0x90, 0x8b, 0x50, 0x14, + 0xe1, 0x7b, 0xe5, 0x9e, 0x80, 0x5a, 0x5b, 0x15, 0xfd, 0xd7, 0x56, 0xc5, 0xe4, 0x0d, 0x98, 0xe0, + 0x7f, 0xf3, 0xd9, 0x26, 0x3a, 0x1c, 0x95, 0x83, 0x02, 0x9d, 0xcf, 0x4e, 0xdb, 0x40, 0x23, 0xaf, + 0x40, 0xa1, 0xbc, 0x62, 0x0b, 0x75, 0x90, 0x90, 0x1b, 0x31, 0x81, 0x74, 0x97, 0x9a, 0x97, 0x88, + 0x15, 0x9b, 0x49, 0x7f, 0xd2, 0xd1, 0x5e, 0x68, 0xb2, 0x79, 0x9e, 0x6b, 0x01, 0x4b, 0x1c, 0x66, + 0x08, 0x23, 0x97, 0x61, 0xb4, 0xe2, 0x85, 0x9d, 0xa6, 0xbb, 0x2f, 0xf4, 0xd8, 0x3c, 0x8f, 0x12, + 0x07, 0x19, 0x1e, 0xef, 0x1c, 0x44, 0x2e, 0xca, 0xfc, 0x32, 0xc5, 0xd8, 0xc5, 0xa3, 0x47, 0x12, + 0x99, 0xd7, 0x60, 0x44, 0x04, 0xb9, 0x1d, 0xd3, 0xc2, 0xd7, 0x27, 0x83, 0xdb, 0x0a, 0x9c, 0xb4, + 0x13, 0x26, 0x3c, 0x4d, 0x27, 0xcc, 0x6d, 0x38, 0x71, 0x03, 0xb5, 0x37, 0x66, 0x1c, 0x9a, 0xbb, + 0x76, 0x55, 0xe8, 0xc3, 0xf1, 0x19, 0x88, 0x2b, 0x78, 0x92, 0xa1, 0x6c, 0x9c, 0x6e, 0xa0, 0xa7, + 0x05, 0xec, 0xc5, 0x88, 0x7c, 0x05, 0xe6, 0xb2, 0x8a, 0x84, 0xd6, 0x1c, 0x23, 0xae, 0x64, 0x57, + 0xa0, 0x47, 0x5c, 0xc9, 0xe2, 0x40, 0xd6, 0xa1, 0xc4, 0xe1, 0xe5, 0x46, 0xcb, 0x6b, 0x73, 0xcd, + 0x3f, 0xd7, 0xaa, 0xa3, 0xcf, 0x85, 0xe0, 0xea, 0xb2, 0x42, 0xfe, 0x02, 0x60, 0x78, 0xe9, 0x24, + 0x28, 0xc9, 0x4f, 0xe6, 0xd8, 0x6d, 0x8e, 0x87, 0x84, 0xbd, 0x6b, 0xaf, 0x87, 0x22, 0x5a, 0xd7, + 0xf1, 0xd8, 0x01, 0xa7, 0x16, 0x05, 0x5e, 0x7b, 0x57, 0x78, 0xe0, 0x6c, 0x09, 0x0f, 0x9c, 0xb7, + 0x3f, 0x91, 0x07, 0x0e, 0x67, 0x15, 0x3e, 0x39, 0x58, 0x9c, 0x08, 0x44, 0x9d, 0xb8, 0x8a, 0x8c, + 0x16, 0x60, 0x4a, 0xfb, 0x66, 0xd3, 0x7f, 0x74, 0xb7, 0xcd, 0x03, 0x52, 0xd2, 0x06, 0xff, 0xc8, + 0x69, 0xdc, 0xc1, 0x79, 0x4a, 0x7b, 0x56, 0xee, 0x74, 0x15, 0x42, 0xea, 0x43, 0x33, 0x39, 0xb0, + 0x8b, 0xa7, 0xf4, 0xf2, 0xe0, 0x1e, 0xa5, 0xa5, 0xf8, 0xe2, 0x29, 0x5d, 0x42, 0x1c, 0x9c, 0x46, + 0xfa, 0xe4, 0x31, 0x48, 0xc8, 0x65, 0x18, 0xb9, 0xed, 0x3e, 0x2e, 0xef, 0x52, 0x91, 0x37, 0x6c, + 0x52, 0x6e, 0x7f, 0x08, 0x5c, 0x2e, 0xfe, 0x3e, 0xf7, 0x22, 0x78, 0xce, 0x16, 0x68, 0xe4, 0xfb, + 0x73, 0x70, 0x9c, 0x2f, 0x63, 0xf9, 0x95, 0x35, 0x1a, 0x45, 0xac, 0x1f, 0x44, 0xd8, 0x2e, 0x99, + 0x75, 0xa3, 0x56, 0xbb, 0x93, 0x8d, 0xc7, 0x13, 0xb0, 0x8b, 0x9d, 0x41, 0x75, 0x5c, 0x28, 0x4a, + 0x8d, 0x10, 0xa1, 0x99, 0xf4, 0xc2, 0x42, 0xfe, 0x0b, 0xb2, 0xe5, 0xe4, 0x75, 0xdd, 0xf1, 0xb1, + 0x80, 0x72, 0xee, 0x68, 0xcb, 0x7d, 0xec, 0xb8, 0xbb, 0xd4, 0x78, 0xcf, 0x16, 0x7a, 0xe6, 0x9f, + 0xc9, 0xc1, 0xc9, 0x9e, 0x8d, 0x23, 0xd7, 0xe0, 0x84, 0xcc, 0xc5, 0xbf, 0x17, 0x45, 0x9d, 0xd0, + 0x91, 0x97, 0x01, 0xe1, 0x2a, 0x69, 0x1f, 0x13, 0xc5, 0x6b, 0xac, 0x54, 0xde, 0x0f, 0x42, 0xf2, + 0x1e, 0x9c, 0xf2, 0xda, 0x21, 0xad, 0x77, 0x03, 0x1a, 0x27, 0xf3, 0xf7, 0x1a, 0x81, 0x13, 0xb8, + 0xed, 0x5d, 0xe9, 0xf7, 0x69, 0x9f, 0x94, 0x38, 0x32, 0xa5, 0xbf, 0xd7, 0x08, 0x6c, 0x44, 0xb0, + 0xfe, 0x68, 0x8c, 0x9f, 0x8a, 0xe5, 0x6e, 0xb4, 0x27, 0xcf, 0xd1, 0xa5, 0x2c, 0x6f, 0x21, 0x6e, + 0x1e, 0xa8, 0x79, 0x0b, 0x99, 0x3e, 0x42, 0xf2, 0x39, 0x23, 0x9f, 0xf9, 0x9c, 0xf1, 0x1a, 0x8c, + 0xad, 0xec, 0xd1, 0xfa, 0x03, 0xe5, 0xb1, 0x51, 0x14, 0xfa, 0x62, 0x06, 0xe4, 0xf1, 0x67, 0x63, + 0x04, 0x72, 0x19, 0x00, 0xdd, 0x07, 0xb9, 0x90, 0xa5, 0xc5, 0x90, 0x47, 0x6f, 0x43, 0x61, 0x71, + 0xa1, 0xa1, 0x20, 0xfb, 0x9a, 0x7d, 0x5d, 0x37, 0xd1, 0xe0, 0xec, 0xc3, 0x60, 0x47, 0xa0, 0xc7, + 0x08, 0xec, 0xf3, 0xb4, 0xa5, 0x22, 0x36, 0xf6, 0x52, 0x6a, 0x3d, 0xe9, 0x48, 0x68, 0xfd, 0x28, + 0xcd, 0xd3, 0x71, 0x5f, 0x9f, 0x10, 0xd6, 0x8f, 0xca, 0x94, 0xdd, 0x8e, 0x11, 0xc8, 0x17, 0x60, + 0x74, 0x85, 0x06, 0xd1, 0xd6, 0xd6, 0x3a, 0x5a, 0x51, 0xf0, 0x40, 0xeb, 0x45, 0x0c, 0x8a, 0x1d, + 0x45, 0xcd, 0x8f, 0x0f, 0x16, 0x27, 0x23, 0xaf, 0x45, 0x55, 0x00, 0x59, 0x5b, 0x62, 0x93, 0x65, + 0x28, 0xf1, 0x77, 0xde, 0x58, 0x98, 0xc6, 0xad, 0xbe, 0xc8, 0x0f, 0x1e, 0xf1, 0x28, 0xfc, 0x88, + 0x6e, 0xab, 0x90, 0xe0, 0x29, 0x7c, 0xb2, 0x2a, 0x23, 0xe9, 0xeb, 0x1f, 0x09, 0xb1, 0x76, 0x27, + 0xb9, 0x04, 0xd8, 0xb7, 0xa6, 0x29, 0x48, 0x19, 0x26, 0x57, 0xfc, 0x56, 0xc7, 0x8d, 0x3c, 0x4c, + 0x4b, 0xb5, 0x2f, 0x76, 0x75, 0xd4, 0x50, 0xd5, 0xf5, 0x02, 0xe3, 0x88, 0xd0, 0x0b, 0xc8, 0x75, + 0x98, 0xb2, 0xfd, 0x2e, 0x1b, 0x24, 0x79, 0xad, 0xe4, 0x1b, 0x37, 0xda, 0x3a, 0x04, 0xac, 0x84, + 0x9d, 0x33, 0xe2, 0x0e, 0x69, 0x44, 0x12, 0x34, 0xa8, 0xc8, 0x46, 0x86, 0x7e, 0x5f, 0xdf, 0xad, + 0xf5, 0xc0, 0xe0, 0x29, 0x66, 0x19, 0x4f, 0x03, 0x57, 0x61, 0xbc, 0x56, 0xbb, 0xb3, 0x45, 0xc3, + 0xe8, 0x7a, 0xd3, 0x7f, 0x84, 0x9b, 0x75, 0x51, 0x24, 0x4c, 0x09, 0x7d, 0x27, 0xa2, 0x61, 0xe4, + 0xec, 0x34, 0xfd, 0x47, 0xb6, 0x8e, 0x45, 0xbe, 0xce, 0xfa, 0x43, 0x13, 0x6d, 0x44, 0xcc, 0xc4, + 0x7e, 0xd2, 0x17, 0x6e, 0x89, 0xf1, 0x92, 0x61, 0x32, 0x98, 0xd9, 0x59, 0x1a, 0x3a, 0xba, 0x1f, + 0xb1, 0x0b, 0x71, 0xb9, 0xd1, 0x08, 0x68, 0x18, 0x8a, 0x5d, 0x95, 0xbb, 0x1f, 0xe1, 0xed, 0xd9, + 0xe5, 0x05, 0x86, 0xfb, 0x91, 0x46, 0x40, 0xbe, 0x95, 0x83, 0x63, 0xba, 0x07, 0x03, 0x2e, 0x16, + 0xb4, 0xdb, 0xe0, 0x7b, 0xec, 0xeb, 0x97, 0xe4, 0xa9, 0x72, 0x49, 0x43, 0xbb, 0xf4, 0xf0, 0xca, + 0xa5, 0x72, 0xfc, 0xb3, 0x26, 0x89, 0x44, 0xd8, 0xb1, 0x2c, 0x7e, 0xfa, 0x09, 0xe1, 0x66, 0x90, + 0x92, 0x15, 0x26, 0x78, 0xb0, 0xf9, 0x84, 0x76, 0x40, 0xd5, 0x4d, 0xdc, 0xa2, 0x85, 0x82, 0x50, + 0xcc, 0x3e, 0x6e, 0x31, 0xe4, 0x75, 0x4c, 0xf9, 0x42, 0xa3, 0x21, 0x55, 0x98, 0xe6, 0x00, 0xb6, + 0x25, 0xf0, 0x6c, 0x1a, 0xb3, 0x71, 0x44, 0x6f, 0xc1, 0x06, 0x9f, 0xae, 0x31, 0xa3, 0x86, 0x1e, + 0xe2, 0x2f, 0x41, 0x87, 0x92, 0x7f, 0xad, 0x7c, 0x7b, 0x3d, 0x16, 0x5f, 0xbf, 0xbb, 0x2c, 0xfb, + 0x8d, 0x6f, 0xeb, 0x63, 0xd9, 0x7f, 0x97, 0xfb, 0x64, 0x6a, 0xdd, 0x20, 0x25, 0x7f, 0x03, 0x9c, + 0x94, 0xfc, 0x13, 0x34, 0x76, 0x02, 0xdb, 0xfa, 0xb8, 0x98, 0xe0, 0x2b, 0xac, 0xf9, 0x2c, 0x18, + 0xe1, 0x82, 0xbd, 0x9e, 0x9a, 0x9d, 0x8b, 0xfd, 0xb6, 0x28, 0x21, 0x27, 0xa1, 0x50, 0xab, 0xdd, + 0x11, 0x9d, 0x8c, 0x36, 0x7d, 0x61, 0xe8, 0xdb, 0x0c, 0xc6, 0x46, 0x08, 0x0d, 0xf5, 0xb4, 0x68, + 0xc9, 0x6c, 0x07, 0xb5, 0x11, 0xca, 0xfa, 0x5b, 0x8a, 0xd9, 0x43, 0x71, 0x7f, 0x0b, 0x31, 0x3b, + 0x16, 0xae, 0x57, 0x60, 0xbe, 0x1c, 0x86, 0x34, 0x60, 0x13, 0x54, 0xd8, 0x7f, 0x05, 0x42, 0x14, + 0x14, 0x07, 0x05, 0x56, 0xea, 0xd6, 0x43, 0xbb, 0x27, 0x22, 0xb9, 0x00, 0xc5, 0x72, 0xb7, 0xe1, + 0xd1, 0x76, 0xdd, 0x08, 0x27, 0xe4, 0x0a, 0x98, 0xad, 0x4a, 0xc9, 0x97, 0xe1, 0x58, 0x22, 0x40, + 0x97, 0xe8, 0x81, 0xd1, 0x78, 0x35, 0x4b, 0x51, 0x35, 0x7e, 0xb3, 0xe6, 0x5d, 0x92, 0x4d, 0x49, + 0xca, 0x50, 0x5a, 0x45, 0x4f, 0x96, 0x0a, 0xe5, 0xea, 0x73, 0x3f, 0xe0, 0x5e, 0x44, 0xfc, 0x62, + 0xc1, 0xbd, 0x5c, 0x9c, 0x86, 0x2a, 0xb4, 0x53, 0xe8, 0xe4, 0x16, 0xcc, 0x26, 0x61, 0xec, 0x4c, + 0xe0, 0x77, 0x08, 0x0c, 0xd7, 0x99, 0xe2, 0x82, 0xa7, 0x42, 0x16, 0x15, 0xd9, 0x86, 0x99, 0xd8, + 0x66, 0xc3, 0xbc, 0x59, 0x48, 0x53, 0x50, 0x55, 0x2e, 0x6f, 0x17, 0xcf, 0x8b, 0xc9, 0x38, 0x1b, + 0xdb, 0x7f, 0xa8, 0x1b, 0x86, 0x9d, 0x66, 0x47, 0x1a, 0x30, 0x55, 0xf3, 0x76, 0xdb, 0x5e, 0x7b, + 0xf7, 0x16, 0xdd, 0xdf, 0x74, 0xbd, 0x40, 0x18, 0xe5, 0x49, 0x93, 0xdb, 0x72, 0xb8, 0xdf, 0x6a, + 0xd1, 0x28, 0xc0, 0xd3, 0x96, 0x95, 0xa3, 0x03, 0x2c, 0x93, 0x18, 0x17, 0x42, 0x4e, 0x87, 0xce, + 0x65, 0x1d, 0xd7, 0x33, 0x8e, 0x15, 0x93, 0xa7, 0x71, 0xbb, 0x9b, 0x18, 0xf0, 0x76, 0xd7, 0x84, + 0x99, 0xd5, 0x76, 0x3d, 0xd8, 0xc7, 0x57, 0x0c, 0xd9, 0xb8, 0xc9, 0x43, 0x1a, 0xf7, 0xa2, 0x68, + 0xdc, 0x29, 0x57, 0xce, 0xb0, 0xac, 0xe6, 0xa5, 0x19, 0x93, 0x1a, 0xcc, 0xa0, 0xc4, 0x56, 0xad, + 0x6c, 0x56, 0xdb, 0x5e, 0xe4, 0x61, 0x02, 0x71, 0x7e, 0x5c, 0xbd, 0x24, 0x78, 0x9e, 0xe6, 0x52, + 0xbc, 0xd7, 0xe8, 0x38, 0x9e, 0x44, 0xd1, 0x99, 0xa6, 0xe8, 0xfb, 0x89, 0xd2, 0xd3, 0xff, 0x6a, + 0x44, 0x69, 0x4c, 0xb1, 0x95, 0x70, 0x0c, 0x2f, 0xc5, 0x7b, 0x7b, 0x88, 0x45, 0xec, 0x88, 0xf0, + 0xbb, 0x28, 0x9e, 0x18, 0x29, 0xb6, 0x4c, 0x3a, 0xeb, 0x5b, 0x63, 0x7c, 0x6f, 0xd7, 0xe5, 0xd7, + 0x5e, 0xc6, 0x78, 0x09, 0xb9, 0x36, 0x7f, 0x14, 0xb9, 0xb6, 0x70, 0xb8, 0x5c, 0x3b, 0x74, 0x98, + 0x5c, 0x9b, 0x10, 0x3c, 0x87, 0x8f, 0x2c, 0x78, 0x8e, 0x1c, 0x41, 0xf0, 0x1c, 0x3d, 0x92, 0xe0, + 0x69, 0x48, 0xd0, 0xc5, 0xc3, 0x24, 0xe8, 0xbf, 0x14, 0x53, 0x9f, 0x55, 0x31, 0x35, 0x4b, 0x54, + 0x38, 0x92, 0x98, 0xda, 0x5b, 0xca, 0x2c, 0xfd, 0xeb, 0x96, 0x32, 0x67, 0x9e, 0x8e, 0x94, 0x49, + 0x3e, 0xa1, 0x94, 0xf9, 0x57, 0xa0, 0x94, 0x3c, 0xf8, 0x0e, 0x8f, 0x24, 0xf8, 0xd4, 0xa2, 0x5e, + 0xb1, 0x63, 0x39, 0x79, 0xf0, 0xb0, 0x8b, 0xf4, 0x66, 0xe0, 0x3d, 0x74, 0x23, 0x7a, 0x4b, 0x1a, + 0x2f, 0x88, 0x28, 0x98, 0x1c, 0x8a, 0xdb, 0x87, 0x86, 0xa2, 0x64, 0xae, 0x7c, 0x96, 0xcc, 0x65, + 0xfd, 0x68, 0x1e, 0x66, 0x78, 0x84, 0x9a, 0x67, 0x5f, 0x87, 0xfe, 0xae, 0x21, 0x49, 0x9f, 0x8a, + 0x23, 0xbb, 0xea, 0x5f, 0xd7, 0x47, 0x8b, 0xfe, 0x35, 0x38, 0x96, 0xea, 0x0a, 0x94, 0xa6, 0x2b, + 0x32, 0x36, 0x50, 0x4a, 0x9e, 0x9e, 0xcf, 0xae, 0xe4, 0xde, 0x55, 0x3b, 0x45, 0x61, 0xfd, 0xe9, + 0x50, 0x8a, 0xbf, 0xd0, 0xa7, 0xeb, 0x1a, 0xf2, 0xdc, 0xd1, 0x34, 0xe4, 0xf9, 0xc1, 0x34, 0xe4, + 0x89, 0x63, 0xaa, 0x30, 0xc8, 0x31, 0xf5, 0x65, 0x98, 0xdc, 0xa2, 0x6e, 0x2b, 0xdc, 0xf2, 0x45, + 0x98, 0x7e, 0x6e, 0x2a, 0x2b, 0x43, 0xff, 0xb0, 0x32, 0x29, 0x0c, 0x2a, 0x93, 0x9f, 0x88, 0x11, + 0xb0, 0xad, 0x95, 0xc7, 0xed, 0xb7, 0x4d, 0x0e, 0xba, 0x84, 0x3f, 0xdc, 0x47, 0xc2, 0xaf, 0xc1, + 0x84, 0xa0, 0x8b, 0xc3, 0x27, 0xc6, 0xa2, 0x28, 0x2b, 0x42, 0xb8, 0xac, 0x5d, 0xe5, 0x73, 0x54, + 0xb5, 0x73, 0x29, 0xd4, 0x60, 0xc2, 0xba, 0x60, 0xb5, 0xdd, 0xe8, 0xf8, 0x5e, 0x1b, 0xbb, 0x60, + 0x34, 0xee, 0x02, 0x2a, 0xc0, 0xbc, 0x0b, 0x34, 0x24, 0xf2, 0x36, 0x4c, 0x95, 0x37, 0xab, 0x3a, + 0x59, 0x31, 0x56, 0xd2, 0xbb, 0x1d, 0xcf, 0x31, 0x48, 0x13, 0xb8, 0xfd, 0xa4, 0xb2, 0xb1, 0x7f, + 0x35, 0x52, 0x99, 0xf5, 0x4f, 0xc6, 0xe4, 0xf2, 0xfe, 0x6c, 0x95, 0x81, 0xa6, 0x7a, 0xaf, 0x70, + 0x44, 0xf5, 0xde, 0xd0, 0x61, 0xc2, 0x89, 0x21, 0x31, 0x0d, 0x1f, 0x41, 0x62, 0x1a, 0xf9, 0xd4, + 0xaa, 0xba, 0xd1, 0x23, 0xca, 0x40, 0x89, 0x95, 0x56, 0x1c, 0x64, 0xa5, 0x65, 0xca, 0x4d, 0x63, + 0x9f, 0x5e, 0x6e, 0x82, 0x23, 0xcb, 0x4d, 0xb5, 0xd8, 0xf1, 0x6c, 0xfc, 0x50, 0x7b, 0xde, 0xd3, + 0xe2, 0xbe, 0x32, 0x93, 0x1d, 0x9c, 0x48, 0xb9, 0xa0, 0x7d, 0x57, 0x09, 0x63, 0xdf, 0xc8, 0x16, + 0xc6, 0xfa, 0x9f, 0x36, 0x7f, 0x29, 0x8e, 0x3d, 0x15, 0x71, 0x2c, 0xc0, 0x01, 0xbb, 0xef, 0x06, + 0x6d, 0xbc, 0x72, 0x5e, 0x86, 0x51, 0x19, 0xef, 0x2b, 0x17, 0x6b, 0x4f, 0xd2, 0x81, 0xbe, 0x24, + 0x16, 0x59, 0x82, 0xa2, 0x24, 0xd6, 0x63, 0x97, 0x3f, 0x12, 0x30, 0x23, 0x94, 0x92, 0x80, 0x59, + 0x7f, 0x7f, 0x48, 0x6e, 0x0a, 0xac, 0x1d, 0x22, 0x55, 0xf8, 0xb2, 0x36, 0x09, 0x34, 0x61, 0x30, + 0x31, 0xcc, 0x09, 0x4b, 0x3f, 0x93, 0xe4, 0x13, 0x45, 0x60, 0x8b, 0x73, 0x83, 0x15, 0x06, 0xc8, + 0x0d, 0xf6, 0xa6, 0x91, 0x58, 0x6b, 0x28, 0xce, 0xe4, 0xc2, 0x16, 0x4a, 0xff, 0x94, 0x5a, 0xd7, + 0xf4, 0x0c, 0x58, 0xc3, 0x71, 0x90, 0x0f, 0xa4, 0xec, 0x93, 0xfb, 0x4a, 0x49, 0xb7, 0x23, 0x47, + 0x89, 0x6d, 0x38, 0xfa, 0xaf, 0x35, 0xb6, 0xe1, 0x2a, 0x80, 0x96, 0x9e, 0x99, 0x3f, 0xee, 0xbc, + 0xc4, 0xba, 0xe9, 0xf0, 0xd4, 0xcc, 0x1a, 0xa1, 0xf5, 0x7b, 0x04, 0x66, 0x6a, 0xb5, 0x3b, 0x15, + 0xcf, 0xdd, 0x6d, 0xfb, 0x61, 0xe4, 0xd5, 0xab, 0xed, 0x1d, 0x9f, 0x89, 0x76, 0x6a, 0x83, 0xd1, + 0x82, 0xd8, 0xc5, 0x9b, 0x8b, 0x2a, 0x66, 0x57, 0x87, 0xd5, 0x20, 0xf0, 0x03, 0xfd, 0xea, 0x40, + 0x19, 0xc0, 0xe6, 0x70, 0x26, 0x3d, 0xd5, 0xba, 0x3c, 0xcf, 0x2e, 0x7f, 0x6f, 0x43, 0xe9, 0x29, + 0xe4, 0x20, 0x5b, 0x96, 0x11, 0x9a, 0x9e, 0xb0, 0x42, 0x9a, 0x3e, 0x61, 0x44, 0x48, 0x8c, 0x8b, + 0xf9, 0xf6, 0x29, 0x8e, 0x37, 0x5c, 0x8a, 0x1d, 0x84, 0xeb, 0x0f, 0xe4, 0xa9, 0x35, 0xb0, 0x0f, + 0xc7, 0x0c, 0x17, 0xa8, 0x41, 0x15, 0x87, 0xaf, 0x08, 0x69, 0xcd, 0x42, 0x8f, 0xdb, 0x0c, 0xed, + 0xa1, 0x9e, 0x89, 0x22, 0xb3, 0x06, 0xf2, 0xa3, 0x39, 0x38, 0x9d, 0x59, 0xa2, 0x56, 0xf7, 0xb8, + 0x11, 0xa5, 0x52, 0xdb, 0x34, 0x78, 0xce, 0x8d, 0x5e, 0x55, 0x3b, 0x19, 0x5b, 0x41, 0xff, 0x9a, + 0xc8, 0xaf, 0xe7, 0xe0, 0x84, 0x81, 0xa1, 0xb6, 0xcf, 0x50, 0x79, 0x07, 0x67, 0xce, 0xeb, 0x8f, + 0x9e, 0xce, 0xbc, 0x3e, 0x67, 0x7e, 0x4b, 0xbc, 0xbb, 0xeb, 0xdf, 0xd0, 0xab, 0x85, 0xe4, 0x21, + 0xcc, 0x60, 0x91, 0x54, 0x62, 0xb2, 0x39, 0x2b, 0x74, 0x9f, 0x73, 0x71, 0xb3, 0xb9, 0x5b, 0x1f, + 0xe6, 0x4d, 0x5c, 0xfa, 0xce, 0xc1, 0xe2, 0xa4, 0x81, 0x2e, 0xe3, 0x3e, 0x3a, 0xb1, 0x26, 0xd4, + 0x6b, 0xef, 0xf8, 0xfa, 0xd1, 0x9b, 0xaa, 0x82, 0xfc, 0xe7, 0x39, 0x98, 0x67, 0x50, 0xfe, 0x19, + 0xd7, 0x03, 0xbf, 0xa5, 0xca, 0xa5, 0xa5, 0x45, 0x8f, 0x6e, 0x6b, 0x3e, 0x9d, 0x6e, 0x7b, 0x09, + 0x9b, 0xcc, 0xf7, 0x04, 0x67, 0x27, 0xf0, 0x5b, 0x71, 0xf3, 0x8d, 0xf4, 0xc3, 0xbd, 0x1a, 0x49, + 0x7e, 0x20, 0x07, 0x27, 0x0d, 0xcd, 0x8b, 0x1e, 0x1d, 0x5b, 0x38, 0x4f, 0xce, 0x2a, 0xb7, 0xea, + 0xb8, 0x68, 0xf9, 0x92, 0x98, 0xff, 0xe7, 0xb1, 0x05, 0xf1, 0x69, 0x81, 0x6d, 0x71, 0x5a, 0x1c, + 0x4b, 0x6b, 0x42, 0xef, 0x5a, 0x88, 0x07, 0x33, 0xf8, 0x46, 0x69, 0x58, 0x04, 0xcd, 0xf5, 0xb6, + 0x08, 0x52, 0xf9, 0xad, 0x30, 0xf4, 0x6e, 0x6f, 0xb3, 0xa0, 0x34, 0x57, 0xf2, 0x57, 0xe1, 0x64, + 0x0a, 0xa8, 0x56, 0xdb, 0xb1, 0x9e, 0xab, 0xed, 0xd5, 0x27, 0x07, 0x8b, 0x2f, 0x67, 0xd5, 0x96, + 0xb5, 0xd2, 0x7a, 0xd7, 0x40, 0x5c, 0x80, 0xb8, 0x50, 0x64, 0x31, 0xce, 0x9e, 0xa0, 0xaf, 0x8a, + 0xf9, 0xa1, 0xe1, 0xb3, 0xbd, 0x5c, 0x6b, 0x83, 0x7e, 0xe4, 0xc5, 0x48, 0x84, 0xc2, 0x84, 0x16, + 0x76, 0x78, 0x1f, 0xd3, 0x19, 0xf7, 0xac, 0xe4, 0x3b, 0x07, 0x8b, 0x06, 0x36, 0x13, 0xb1, 0xf5, + 0x78, 0xc6, 0xba, 0x88, 0x6d, 0x20, 0x92, 0x5f, 0xcb, 0xc1, 0x1c, 0x03, 0xc4, 0x93, 0x4a, 0x7c, + 0xd4, 0x7c, 0xbf, 0x59, 0xbf, 0xf7, 0x74, 0x66, 0xfd, 0x0b, 0xd8, 0x46, 0x7d, 0xd6, 0xa7, 0xba, + 0x24, 0xb3, 0x71, 0x38, 0xdb, 0x8d, 0xe7, 0x70, 0x63, 0xb6, 0x9f, 0x1c, 0x60, 0xb6, 0xf3, 0x01, + 0x38, 0x7c, 0xb6, 0xf7, 0xac, 0x85, 0x6c, 0xc1, 0x84, 0x90, 0xae, 0x79, 0x87, 0x9d, 0x31, 0x42, + 0x96, 0xea, 0x45, 0xfc, 0xca, 0x23, 0xa2, 0x32, 0xa7, 0xbe, 0xd0, 0xe0, 0x42, 0xda, 0x30, 0xcb, + 0x7f, 0x9b, 0xba, 0x8e, 0xc5, 0x9e, 0xba, 0x8e, 0x0b, 0xe2, 0x8b, 0xce, 0x0a, 0xfe, 0x09, 0x95, + 0x87, 0x1e, 0x8d, 0x21, 0x83, 0x31, 0xe9, 0x00, 0x31, 0xc0, 0x7c, 0xd1, 0x9e, 0xed, 0xaf, 0xe1, + 0x78, 0x59, 0xd4, 0xb9, 0x98, 0xac, 0x33, 0xb9, 0x72, 0x33, 0x78, 0x13, 0x17, 0xa6, 0x05, 0x94, + 0xdd, 0xa5, 0x71, 0x87, 0x7f, 0xc1, 0x88, 0x87, 0x91, 0x28, 0xe5, 0x82, 0xb9, 0xac, 0x09, 0xe3, + 0x95, 0x24, 0x36, 0xf4, 0x24, 0x3f, 0x72, 0x07, 0x66, 0xca, 0x9d, 0x4e, 0xd3, 0xa3, 0x0d, 0xfc, + 0x4a, 0x9e, 0x0a, 0xd6, 0x8a, 0x53, 0x68, 0xb8, 0xbc, 0x50, 0xdc, 0x16, 0x92, 0x79, 0x60, 0xd3, + 0xb4, 0xd6, 0xb7, 0x72, 0xa9, 0x46, 0x93, 0xd7, 0x60, 0x0c, 0x7f, 0x68, 0x2e, 0xd6, 0xa8, 0x04, + 0xe0, 0x4d, 0x44, 0x65, 0x44, 0x8c, 0xc0, 0x84, 0x25, 0x3d, 0xcc, 0x52, 0x81, 0x0b, 0x4b, 0xe2, + 0xa6, 0x1a, 0xdf, 0x4d, 0x17, 0xa5, 0xa5, 0x66, 0x21, 0x16, 0xba, 0xd0, 0x52, 0x53, 0xd8, 0x67, + 0x5a, 0x3f, 0x90, 0x37, 0xa7, 0x1d, 0xb9, 0xa0, 0xc9, 0xed, 0x5a, 0xa0, 0x27, 0x29, 0xb7, 0x6b, + 0xd2, 0xfa, 0xdf, 0xcb, 0xc1, 0xec, 0x1d, 0x2d, 0xf7, 0xd2, 0x96, 0x8f, 0xe3, 0xd2, 0x3f, 0x1b, + 0xd1, 0xd3, 0xca, 0xaa, 0xa2, 0x27, 0x7d, 0x62, 0x33, 0x05, 0xa7, 0x8c, 0x9d, 0xd5, 0x1e, 0xb4, + 0x7d, 0xc7, 0x86, 0x69, 0xc9, 0x6d, 0x38, 0x3a, 0x87, 0x5b, 0x3f, 0x9e, 0x87, 0x71, 0x6d, 0x09, + 0x90, 0xcf, 0xc3, 0x84, 0xce, 0x47, 0x57, 0x20, 0xe9, 0xd5, 0xda, 0x06, 0x16, 0x6a, 0x90, 0xa8, + 0xdb, 0x32, 0x34, 0x48, 0x6c, 0xa2, 0x23, 0xf4, 0x88, 0x57, 0x9b, 0xf7, 0x32, 0xae, 0x36, 0x47, + 0xca, 0x19, 0xfc, 0x76, 0xfa, 0x82, 0x33, 0x78, 0x8a, 0x5f, 0xeb, 0xa7, 0x72, 0x50, 0x4a, 0x2e, + 0xd2, 0xcf, 0xa4, 0x57, 0x8e, 0xf0, 0x5a, 0xf0, 0x63, 0x79, 0x15, 0x73, 0x5c, 0x7a, 0xf4, 0x3c, + 0xab, 0x26, 0x31, 0xef, 0x18, 0x8a, 0xfc, 0xe7, 0xcd, 0xe0, 0x34, 0xba, 0x2f, 0x6c, 0x76, 0x44, + 0xaa, 0xa1, 0x6f, 0xff, 0xe2, 0xe2, 0x73, 0xd6, 0x07, 0x30, 0x97, 0xec, 0x0e, 0x54, 0xe6, 0x97, + 0x61, 0xda, 0x84, 0x27, 0x33, 0x16, 0x24, 0xa9, 0xec, 0x24, 0xbe, 0xf5, 0xfb, 0xf9, 0x24, 0x6f, + 0x61, 0x1e, 0xc3, 0x36, 0x9d, 0xb6, 0xbb, 0xdd, 0x54, 0x11, 0xcb, 0xf9, 0xa6, 0xc3, 0x41, 0xb6, + 0x2c, 0x3b, 0x4a, 0x0a, 0x0f, 0xe5, 0x97, 0x52, 0xc8, 0xf6, 0x4b, 0x21, 0xd7, 0x12, 0x36, 0x66, + 0x5a, 0x10, 0x85, 0x47, 0x74, 0xdb, 0x89, 0xed, 0xcc, 0x12, 0xa6, 0x65, 0x2b, 0x30, 0x67, 0x44, + 0x04, 0x95, 0xf4, 0xc3, 0xb1, 0xee, 0x36, 0xc2, 0x02, 0x4e, 0x9c, 0x89, 0x4c, 0xd6, 0x60, 0x94, + 0x35, 0xf3, 0xb6, 0xdb, 0x11, 0x3a, 0x7a, 0xa2, 0xbc, 0xd4, 0x9a, 0xea, 0xc2, 0xa7, 0x39, 0xaa, + 0x35, 0x29, 0x3b, 0xf2, 0x8d, 0x94, 0xdb, 0x1c, 0xd1, 0xfa, 0x17, 0x39, 0xb6, 0xfe, 0xeb, 0x0f, + 0xbe, 0xcb, 0xf2, 0x80, 0xb0, 0x4f, 0xea, 0x63, 0xbd, 0xf5, 0x47, 0x79, 0x1e, 0x74, 0x5e, 0x4c, + 0x9f, 0x37, 0x61, 0x64, 0xcb, 0x0d, 0x76, 0x69, 0x24, 0xc2, 0xb1, 0xeb, 0x5c, 0x78, 0x41, 0x1c, + 0xe2, 0x21, 0xc2, 0xdf, 0xb6, 0x20, 0xd0, 0x75, 0x61, 0xf9, 0x81, 0x74, 0x61, 0x9a, 0xa6, 0xb7, + 0xf0, 0xd4, 0x34, 0xbd, 0xdf, 0xa3, 0xe2, 0xcb, 0x97, 0xa3, 0x01, 0x02, 0x4e, 0x9e, 0x4d, 0xe6, + 0x67, 0x48, 0x85, 0x06, 0x8d, 0xd9, 0x91, 0x6b, 0x7a, 0xc6, 0x07, 0xcd, 0xd5, 0xe3, 0x90, 0xdc, + 0x0e, 0xd6, 0x1f, 0x15, 0x78, 0x1f, 0x8b, 0x8e, 0x3a, 0x6f, 0xb8, 0x81, 0xe1, 0x3a, 0x61, 0x1b, + 0xbd, 0xee, 0x91, 0x8b, 0x86, 0x1d, 0xe7, 0x61, 0x88, 0xcd, 0x4d, 0xd1, 0x9b, 0x88, 0xc7, 0xe6, + 0xaf, 0x8e, 0xc7, 0xca, 0xd9, 0x5a, 0xc6, 0x33, 0x49, 0xcf, 0xb1, 0x83, 0xc7, 0x96, 0xbe, 0x96, + 0x11, 0x83, 0x5c, 0x80, 0xa1, 0x0d, 0xbf, 0x21, 0x03, 0x9b, 0xce, 0xa1, 0x33, 0xb0, 0xdf, 0xd0, + 0x58, 0xce, 0xe7, 0x6c, 0xc4, 0x60, 0xdf, 0xaa, 0x42, 0xb6, 0xeb, 0xdf, 0xda, 0xda, 0x71, 0x45, + 0xf4, 0x2d, 0xfd, 0x5b, 0xe3, 0xe8, 0xee, 0xab, 0x30, 0x65, 0x66, 0x08, 0x15, 0xb6, 0x6d, 0xa8, + 0xb1, 0x4d, 0x24, 0x1a, 0xd5, 0x15, 0xed, 0x26, 0x11, 0x59, 0x86, 0x49, 0x23, 0xa0, 0x9a, 0x78, + 0x2c, 0x43, 0xf5, 0xa6, 0x19, 0x8e, 0x4d, 0x57, 0x6f, 0x1a, 0x24, 0xec, 0x3c, 0x17, 0xed, 0xd7, + 0x9e, 0xcc, 0x52, 0x6d, 0x17, 0x38, 0xe4, 0x2a, 0x14, 0xb9, 0xd7, 0x6d, 0xb5, 0xa2, 0x3f, 0x7c, + 0x84, 0x08, 0x4b, 0x78, 0xad, 0x4b, 0x44, 0xcd, 0xcb, 0xf2, 0x73, 0x50, 0x12, 0x5b, 0x52, 0x9c, + 0xcf, 0xf2, 0x14, 0x0c, 0xad, 0x54, 0x2b, 0xb6, 0xbe, 0x8d, 0xd4, 0xbd, 0x46, 0x60, 0x23, 0x14, + 0x4d, 0xf7, 0x37, 0x68, 0xf4, 0xc8, 0x0f, 0x1e, 0xd8, 0x34, 0x8c, 0x02, 0x8f, 0xa7, 0x68, 0xc2, + 0x85, 0xf8, 0x79, 0xf2, 0x36, 0x0c, 0xa3, 0x91, 0x55, 0xe2, 0x64, 0x48, 0xd6, 0xb1, 0x3c, 0x29, + 0x26, 0xf0, 0x30, 0x5a, 0x6c, 0xd9, 0x9c, 0x88, 0xbc, 0x09, 0x43, 0x15, 0xda, 0xde, 0x4f, 0x24, + 0xa9, 0x49, 0x11, 0xab, 0x0d, 0xa1, 0x41, 0xdb, 0xfb, 0x36, 0x92, 0x58, 0x3f, 0x95, 0x87, 0x63, + 0x19, 0xcd, 0xba, 0xf7, 0xf9, 0x67, 0x74, 0x57, 0x5c, 0x36, 0x76, 0x45, 0xf9, 0xde, 0xd9, 0xb3, + 0xe3, 0x33, 0x37, 0xc9, 0x9f, 0xcf, 0xc1, 0x09, 0x73, 0x82, 0x0a, 0xab, 0xca, 0x7b, 0x57, 0xc9, + 0x5b, 0x30, 0xb2, 0x46, 0xdd, 0x06, 0x95, 0x09, 0x2c, 0x8e, 0xa9, 0xf8, 0x38, 0xdc, 0xa5, 0x90, + 0x17, 0x72, 0xb6, 0xb1, 0x03, 0x0a, 0x87, 0x92, 0x8a, 0x68, 0x1c, 0x97, 0xc7, 0x2d, 0xe9, 0xde, + 0x9b, 0x55, 0x55, 0x1f, 0xab, 0x81, 0xef, 0xe4, 0xe0, 0xf9, 0x3e, 0x34, 0x6c, 0xe0, 0xd8, 0xd0, + 0xeb, 0x03, 0x87, 0x27, 0x2a, 0x42, 0xc9, 0xbb, 0x30, 0xbd, 0x25, 0xe4, 0x79, 0x39, 0x1c, 0xf9, + 0x78, 0xbd, 0x48, 0x51, 0xdf, 0x91, 0xe3, 0x92, 0x44, 0x36, 0xfc, 0xce, 0x0b, 0x7d, 0xfd, 0xce, + 0x75, 0x37, 0xee, 0xa1, 0x41, 0xdd, 0xb8, 0x3f, 0x48, 0xe6, 0xd5, 0x17, 0xd1, 0xf4, 0x62, 0x27, + 0xf6, 0x5c, 0x6f, 0x27, 0xf6, 0xbe, 0x31, 0xbb, 0xac, 0x1f, 0xcf, 0x41, 0xc9, 0xe4, 0xfd, 0x69, + 0xc7, 0xf3, 0x1d, 0x63, 0x3c, 0x9f, 0xcf, 0x1e, 0xcf, 0xde, 0x03, 0xf9, 0x7f, 0xe4, 0x92, 0x1f, + 0x3b, 0xd0, 0x08, 0x5a, 0x30, 0x52, 0xf1, 0x5b, 0xae, 0xd7, 0xd6, 0xd3, 0xa3, 0x36, 0x10, 0x62, + 0x8b, 0x92, 0xc1, 0x7c, 0xfe, 0xcf, 0xc2, 0xf0, 0x86, 0xdf, 0x2e, 0x57, 0x84, 0xd1, 0x21, 0xf2, + 0x69, 0xfb, 0x6d, 0xc7, 0x6d, 0xd8, 0xbc, 0x80, 0xac, 0x03, 0xd4, 0xea, 0x01, 0xa5, 0xed, 0x9a, + 0xf7, 0xbd, 0x34, 0x21, 0x69, 0xb0, 0x1e, 0x6a, 0x76, 0x71, 0x63, 0xc1, 0x37, 0x9e, 0x10, 0x11, + 0x9d, 0xd0, 0xfb, 0x5e, 0x7d, 0xbf, 0xd5, 0xe8, 0x2d, 0x0a, 0x10, 0x13, 0x61, 0xae, 0x38, 0xaf, + 0x21, 0xf2, 0xff, 0x4e, 0x8a, 0x5c, 0x71, 0x0c, 0x60, 0xe4, 0x8a, 0x63, 0x00, 0xb6, 0xb5, 0xaf, + 0x51, 0x6f, 0x77, 0x8f, 0x5b, 0x9f, 0x4c, 0xf2, 0xa9, 0xba, 0x87, 0x10, 0x7d, 0x6b, 0xe7, 0x38, + 0xd6, 0xbf, 0x1c, 0x86, 0x93, 0x36, 0xdd, 0xf5, 0x98, 0x98, 0x7c, 0x37, 0xf4, 0xda, 0xbb, 0x86, + 0x57, 0xb6, 0x95, 0x98, 0x48, 0x22, 0x84, 0x31, 0x83, 0xa8, 0x8e, 0xb9, 0x08, 0x45, 0x76, 0x2a, + 0x6a, 0x73, 0x09, 0xdf, 0x50, 0x30, 0x31, 0x3b, 0x9f, 0xe4, 0xb2, 0x98, 0xbc, 0x22, 0x4e, 0x6d, + 0x2d, 0xc8, 0x3c, 0x3b, 0xb5, 0x3f, 0x3e, 0x58, 0x84, 0xda, 0x7e, 0x18, 0x51, 0xbc, 0xb1, 0x89, + 0x93, 0x5b, 0x89, 0xd6, 0x43, 0x3d, 0x44, 0xeb, 0xdb, 0x30, 0x57, 0x6e, 0xf0, 0xcd, 0xda, 0x6d, + 0x6e, 0x06, 0x5e, 0xbb, 0xee, 0x75, 0xdc, 0xa6, 0xbc, 0x2e, 0x62, 0x2f, 0xbb, 0xaa, 0xdc, 0xe9, + 0x28, 0x04, 0x3b, 0x93, 0x8c, 0x7d, 0x46, 0x65, 0xa3, 0x86, 0xce, 0xcb, 0xe2, 0x79, 0x0c, 0x3f, + 0xa3, 0xd1, 0x0e, 0xf1, 0x2b, 0x42, 0x5b, 0x15, 0xa3, 0x50, 0x8f, 0xe6, 0x0c, 0x5b, 0xeb, 0xb5, + 0xd8, 0x3b, 0x89, 0xc7, 0xc0, 0xe5, 0x26, 0x0f, 0x51, 0x33, 0x44, 0xb3, 0x07, 0x03, 0x2f, 0xa6, + 0xab, 0xd5, 0xd6, 0x18, 0x5d, 0x31, 0x45, 0x17, 0x86, 0x7b, 0x3a, 0x1d, 0xc7, 0x23, 0x97, 0xd9, + 0x54, 0x68, 0xf9, 0x11, 0xc5, 0x79, 0x3e, 0x16, 0x5f, 0x01, 0x02, 0x84, 0xf2, 0x2b, 0x80, 0x86, + 0x42, 0xde, 0x86, 0xd9, 0xd5, 0x95, 0x25, 0xa9, 0xd4, 0xac, 0xf8, 0xf5, 0x2e, 0x3e, 0x50, 0x03, + 0xd6, 0x87, 0x63, 0x48, 0xeb, 0x4b, 0x6c, 0x72, 0x67, 0xa1, 0x91, 0xf3, 0x30, 0x5a, 0xad, 0xf0, + 0xbe, 0x1f, 0xd7, 0x13, 0x3d, 0x08, 0xc3, 0x0f, 0x59, 0x48, 0xee, 0xc4, 0x32, 0xea, 0xc4, 0xa1, + 0xc2, 0xe4, 0xc9, 0x01, 0xe4, 0xd3, 0x37, 0x61, 0x72, 0xd9, 0x8f, 0xaa, 0xed, 0x30, 0x72, 0xdb, + 0x75, 0x5a, 0xad, 0xe8, 0x51, 0x17, 0xb7, 0xfd, 0xc8, 0xf1, 0x44, 0x09, 0x6b, 0xb9, 0x89, 0x49, + 0xbe, 0x88, 0xa4, 0x37, 0x68, 0x9b, 0x06, 0x71, 0xb4, 0xc5, 0x61, 0xde, 0xb7, 0x8c, 0x74, 0x57, + 0x95, 0xd8, 0x26, 0xa2, 0x48, 0x42, 0xc1, 0x93, 0x32, 0xad, 0xf8, 0x0d, 0x1a, 0xde, 0xbb, 0xf2, + 0x5d, 0x96, 0x84, 0x42, 0xfb, 0x36, 0xdc, 0x32, 0xaf, 0x64, 0xee, 0xaf, 0xff, 0x2e, 0x26, 0xa1, + 0x48, 0xe1, 0x92, 0x2f, 0xc2, 0x30, 0xfe, 0x14, 0xc2, 0xd6, 0x6c, 0x06, 0xdb, 0x58, 0xd0, 0xaa, + 0xf3, 0x9c, 0xca, 0x48, 0x40, 0xaa, 0x30, 0x2a, 0xe4, 0xfc, 0xa3, 0x84, 0x52, 0x17, 0x17, 0x06, + 0x3e, 0x33, 0x04, 0xbd, 0xd5, 0x80, 0x09, 0xbd, 0x42, 0xb6, 0x22, 0xd6, 0xdc, 0x70, 0x8f, 0x36, + 0xd8, 0x2f, 0x91, 0x05, 0x05, 0x57, 0xc4, 0x1e, 0x42, 0x1d, 0xd6, 0x0e, 0x5b, 0x43, 0x61, 0x5b, + 0x7c, 0x35, 0xbc, 0x1b, 0x8a, 0xa6, 0x88, 0x9b, 0xbf, 0x87, 0x5a, 0xa4, 0x86, 0x2d, 0x8a, 0xac, + 0xef, 0x81, 0xb9, 0x8d, 0x6e, 0xb3, 0xe9, 0x6e, 0x37, 0xa9, 0x8c, 0x92, 0x1d, 0xb9, 0x11, 0x25, + 0xcb, 0x30, 0x5c, 0xd3, 0xb2, 0x34, 0xce, 0xaa, 0x30, 0xe4, 0x31, 0x0e, 0xda, 0xd8, 0xe5, 0xd0, + 0x91, 0x3c, 0x91, 0x9f, 0x91, 0x93, 0x5a, 0xbf, 0x1b, 0x67, 0xf7, 0xde, 0x0a, 0xdc, 0xfa, 0x03, + 0x95, 0xa9, 0x73, 0xd0, 0x44, 0xe5, 0x37, 0x65, 0x23, 0xcc, 0xf3, 0x33, 0xab, 0xc1, 0x87, 0x35, + 0x86, 0xbc, 0x0d, 0xe3, 0xe2, 0x0c, 0xd5, 0xc2, 0x1f, 0x61, 0x8c, 0x09, 0x71, 0xfb, 0x48, 0x1a, + 0x47, 0xe8, 0xe8, 0x28, 0x1a, 0x98, 0x9f, 0x72, 0xef, 0xca, 0x67, 0x21, 0x1a, 0x98, 0x75, 0xf4, + 0x99, 0xba, 0xbf, 0x39, 0x9e, 0xec, 0x5b, 0x31, 0x77, 0xaf, 0xe9, 0x01, 0x4f, 0x72, 0xf1, 0x45, + 0x2d, 0x0e, 0x78, 0xa2, 0x5f, 0xd4, 0x14, 0xaa, 0x1a, 0x93, 0xfc, 0x21, 0x63, 0xf2, 0xae, 0x1c, + 0x93, 0x42, 0xef, 0x89, 0x31, 0xdb, 0x67, 0x1c, 0x6a, 0xf1, 0x0a, 0x19, 0x1a, 0xe8, 0x96, 0xff, + 0x1c, 0x46, 0x76, 0xe5, 0x24, 0xc9, 0x5d, 0x54, 0x70, 0xd2, 0x55, 0x07, 0xc3, 0x83, 0x33, 0x3d, + 0x64, 0x6b, 0xfe, 0x12, 0x4c, 0x94, 0xa3, 0xc8, 0xad, 0xef, 0xd1, 0x46, 0x85, 0x6d, 0x4f, 0x5a, + 0x6c, 0x06, 0x57, 0xc0, 0xf5, 0x37, 0x1c, 0x1d, 0x97, 0xc7, 0x1a, 0x73, 0x43, 0x61, 0xad, 0xa7, + 0x62, 0x8d, 0x31, 0x88, 0x19, 0x6b, 0x8c, 0x41, 0xc8, 0x65, 0x18, 0xad, 0xb6, 0x1f, 0x7a, 0xac, + 0x4f, 0x8a, 0x71, 0xda, 0x5e, 0x8f, 0x83, 0xf4, 0xcd, 0x55, 0x60, 0x91, 0x37, 0x35, 0x19, 0x7b, + 0x2c, 0xbe, 0x4f, 0x73, 0x0d, 0x8c, 0xf2, 0xea, 0xd6, 0xe5, 0x67, 0x25, 0x74, 0x5f, 0x83, 0x51, + 0xa9, 0x58, 0x83, 0xf8, 0x0e, 0x2d, 0x28, 0xd3, 0xde, 0x9f, 0x12, 0x19, 0x93, 0x3b, 0x6a, 0xd9, + 0x5c, 0xc6, 0xb5, 0xe4, 0x8e, 0x5a, 0x36, 0x17, 0x23, 0xb9, 0xa3, 0x96, 0xd7, 0x45, 0xe9, 0x24, + 0x26, 0x0e, 0xd5, 0x49, 0xdc, 0x83, 0x89, 0x4d, 0x37, 0x88, 0x3c, 0x26, 0xa3, 0xb4, 0xa3, 0x70, + 0x7e, 0xd2, 0x50, 0xe3, 0x69, 0x45, 0xcb, 0x67, 0x64, 0x3e, 0xc2, 0x8e, 0x86, 0x6f, 0x26, 0xce, + 0x8b, 0xe1, 0xd9, 0xb6, 0x7a, 0x53, 0x9f, 0xc6, 0x56, 0x0f, 0x3b, 0x15, 0x55, 0x37, 0xd3, 0xb1, + 0x82, 0x00, 0x65, 0xe8, 0x84, 0xfe, 0x46, 0x21, 0x92, 0xaf, 0xc2, 0x04, 0xfb, 0x7b, 0xd3, 0x6f, + 0x7a, 0x75, 0x8f, 0x86, 0xf3, 0x25, 0xfc, 0xb8, 0x33, 0x99, 0xab, 0x1f, 0x91, 0xf6, 0x6b, 0x34, + 0xe2, 0x0b, 0x18, 0x19, 0x27, 0x75, 0xb2, 0x06, 0x37, 0xf2, 0x1e, 0x4c, 0xb0, 0xd9, 0xb7, 0xed, + 0x86, 0x5c, 0x34, 0x9d, 0x89, 0xad, 0x2d, 0x1b, 0x02, 0x9e, 0x0a, 0xf7, 0xa7, 0x13, 0xb0, 0x63, + 0xbe, 0xdc, 0xe1, 0x1b, 0x24, 0xd1, 0x66, 0x7b, 0x27, 0xb5, 0x39, 0x4a, 0x34, 0xf2, 0x3e, 0x4c, + 0x94, 0x3b, 0x9d, 0x78, 0xc7, 0x99, 0xd5, 0xf4, 0x32, 0x9d, 0x8e, 0x93, 0xb9, 0xeb, 0x18, 0x14, + 0xc9, 0x8d, 0x79, 0xee, 0x48, 0x1b, 0x33, 0x79, 0x5d, 0x49, 0xeb, 0xc7, 0x62, 0x25, 0xa3, 0xb8, + 0xc7, 0x18, 0xa2, 0x3f, 0x17, 0xdc, 0x57, 0x60, 0x92, 0x6b, 0xdd, 0xa4, 0x34, 0x73, 0x3c, 0xb5, + 0x7a, 0x32, 0x84, 0x1a, 0x93, 0x86, 0xac, 0xc2, 0x14, 0x77, 0x74, 0x6b, 0x8a, 0x38, 0x8c, 0xf3, + 0x27, 0xe2, 0x44, 0xd3, 0xdc, 0x3f, 0xae, 0x89, 0xe1, 0xb9, 0x5d, 0x83, 0x4b, 0x82, 0xc8, 0xfa, + 0xe3, 0x1c, 0x9c, 0xe8, 0x31, 0xe2, 0x2a, 0x4a, 0x5f, 0xae, 0x7f, 0x94, 0x3e, 0xb6, 0x73, 0x98, + 0x97, 0x74, 0xfc, 0x7e, 0x21, 0x65, 0xe9, 0xe3, 0x25, 0xe5, 0x2d, 0x1f, 0x88, 0x88, 0x80, 0x2f, + 0xaa, 0xbe, 0xe9, 0xa3, 0xa6, 0xb0, 0x90, 0x3e, 0x84, 0x04, 0x1e, 0x6f, 0xd4, 0xb2, 0xf5, 0xe4, + 0x60, 0xf1, 0x8c, 0x08, 0xb0, 0xaf, 0x86, 0xf5, 0x23, 0xdf, 0x58, 0xc1, 0x19, 0xac, 0xad, 0x83, + 0x1c, 0x8c, 0x6b, 0xeb, 0x90, 0x9c, 0xd5, 0xdc, 0xe6, 0x4a, 0x3c, 0x45, 0x83, 0xc6, 0x21, 0xcf, + 0x4f, 0x22, 0x5c, 0x54, 0xf9, 0xc3, 0xf5, 0xa1, 0xb7, 0x99, 0x28, 0xa4, 0x45, 0x32, 0x6c, 0x19, + 0xca, 0x4b, 0x1b, 0xcb, 0x31, 0x8d, 0xaa, 0x1b, 0x46, 0xe5, 0x7a, 0xe4, 0x3d, 0xa4, 0x03, 0x1c, + 0x3a, 0x71, 0x1a, 0x55, 0x37, 0x8c, 0x1c, 0x17, 0xc9, 0x52, 0x69, 0x54, 0x15, 0x43, 0xeb, 0x07, + 0x73, 0x00, 0x77, 0xab, 0x2b, 0x18, 0x8a, 0xf4, 0xd3, 0x0a, 0x05, 0xd9, 0xe1, 0xdd, 0x24, 0xf7, + 0x3e, 0xe2, 0xc0, 0xff, 0x90, 0x83, 0x29, 0x13, 0x8d, 0xbc, 0x0b, 0xd3, 0xb5, 0x7a, 0xe0, 0x37, + 0x9b, 0xdb, 0x6e, 0xfd, 0xc1, 0xba, 0xd7, 0xa6, 0x3c, 0xb0, 0xd6, 0x30, 0x3f, 0x8b, 0x42, 0x55, + 0xe4, 0x34, 0x59, 0x99, 0x9d, 0x44, 0x26, 0x3f, 0x94, 0x83, 0xc9, 0xda, 0x9e, 0xff, 0x28, 0xce, + 0x6e, 0xcf, 0x07, 0xe4, 0x6b, 0x6c, 0x6d, 0x87, 0x7b, 0xfe, 0x23, 0x27, 0x23, 0xc5, 0xfd, 0xc7, + 0x07, 0x8b, 0xef, 0x0c, 0xf6, 0x4c, 0x5c, 0xf7, 0xf1, 0x26, 0x13, 0x85, 0x97, 0x8c, 0x4a, 0x6c, + 0xb3, 0x4e, 0xeb, 0xcf, 0x73, 0x30, 0x8e, 0x77, 0x9e, 0x66, 0x13, 0x65, 0xae, 0xef, 0xa6, 0x64, + 0x41, 0xea, 0xbb, 0xfa, 0x0c, 0xec, 0x1b, 0x30, 0x9d, 0x40, 0x23, 0x16, 0x8c, 0xd4, 0xd0, 0x55, + 0x5a, 0x57, 0x50, 0x70, 0xe7, 0x69, 0x5b, 0x94, 0x58, 0xab, 0x1a, 0xd9, 0xbd, 0x2b, 0xf8, 0xca, + 0xb8, 0x04, 0xe0, 0x49, 0x90, 0xbc, 0xd9, 0x90, 0x64, 0x4b, 0xee, 0x5d, 0xb1, 0x35, 0x2c, 0x6b, + 0x03, 0x46, 0x6a, 0x7e, 0x10, 0x2d, 0xef, 0xf3, 0xcb, 0x44, 0x85, 0x86, 0x75, 0xfd, 0x19, 0xd1, + 0x43, 0xd5, 0x7d, 0xdd, 0x16, 0x45, 0x64, 0x11, 0x86, 0xaf, 0x7b, 0xb4, 0xd9, 0xd0, 0xed, 0x45, + 0x77, 0x18, 0xc0, 0xe6, 0x70, 0x76, 0xe1, 0x3a, 0x1e, 0x47, 0xec, 0x8e, 0x0d, 0x53, 0x3f, 0xed, + 0xba, 0x59, 0x31, 0xfa, 0xf7, 0x05, 0x33, 0x67, 0xb0, 0x51, 0x53, 0x9f, 0xae, 0xfe, 0x8f, 0x73, + 0xb0, 0xd0, 0x9b, 0x44, 0xb7, 0x75, 0xcd, 0xf5, 0xb1, 0x75, 0x7d, 0x29, 0xf9, 0xec, 0x85, 0x68, + 0xe2, 0xd9, 0x2b, 0x7e, 0xec, 0xaa, 0xa0, 0xa9, 0x71, 0x5d, 0xa5, 0x74, 0x3f, 0xdb, 0xa7, 0xcd, + 0x88, 0xc8, 0x87, 0x39, 0x42, 0x1a, 0x5b, 0xd0, 0x5a, 0xbf, 0x31, 0x04, 0x27, 0x7b, 0x52, 0x90, + 0x35, 0x2d, 0xf8, 0xff, 0x94, 0x0a, 0x3b, 0xde, 0x13, 0xff, 0x12, 0xfe, 0x8b, 0xd6, 0x64, 0x49, + 0x67, 0x9a, 0x3b, 0x2a, 0xe8, 0x7b, 0x1e, 0x79, 0xbd, 0x7a, 0x28, 0x2f, 0x8e, 0x8e, 0xcc, 0x20, + 0x1d, 0xff, 0x1d, 0xdd, 0xae, 0x68, 0xe4, 0x7a, 0xcd, 0x50, 0x5f, 0x76, 0x0d, 0x0e, 0xb2, 0x65, + 0x59, 0x6c, 0x80, 0x3c, 0x94, 0x6d, 0x80, 0x6c, 0xfd, 0xcb, 0x1c, 0x8c, 0xa9, 0x66, 0x93, 0x05, + 0x38, 0xbe, 0x65, 0x97, 0x57, 0x56, 0x9d, 0xad, 0x0f, 0x36, 0x57, 0x9d, 0xbb, 0x1b, 0xb5, 0xcd, + 0xd5, 0x95, 0xea, 0xf5, 0xea, 0x6a, 0xa5, 0xf4, 0x1c, 0x99, 0x81, 0xc9, 0xbb, 0x1b, 0xb7, 0x36, + 0xee, 0xdc, 0xdf, 0x70, 0x56, 0x6d, 0xfb, 0x8e, 0x5d, 0xca, 0x91, 0x49, 0x18, 0xb3, 0x97, 0xcb, + 0x2b, 0xce, 0xc6, 0x9d, 0xca, 0x6a, 0x29, 0x4f, 0x4a, 0x30, 0xb1, 0x72, 0x67, 0x63, 0x63, 0x75, + 0x65, 0xab, 0x7a, 0xaf, 0xba, 0xf5, 0x41, 0xa9, 0x40, 0x08, 0x4c, 0x21, 0xc2, 0xa6, 0x5d, 0xdd, + 0x58, 0xa9, 0x6e, 0x96, 0xd7, 0x4b, 0x43, 0x0c, 0xc6, 0xf0, 0x35, 0xd8, 0xb0, 0x62, 0x74, 0xeb, + 0xee, 0xf2, 0x6a, 0x69, 0x84, 0xa1, 0xb0, 0xbf, 0x34, 0x94, 0x51, 0x56, 0x3d, 0xa2, 0x54, 0xca, + 0x5b, 0xe5, 0xe5, 0x72, 0x6d, 0xb5, 0x54, 0x24, 0x27, 0x60, 0xd6, 0x00, 0x39, 0xeb, 0x77, 0x6e, + 0x54, 0x37, 0x4a, 0x63, 0x64, 0x0e, 0x4a, 0x0a, 0x56, 0x59, 0x76, 0xee, 0xd6, 0x56, 0xed, 0x12, + 0x24, 0xa1, 0x1b, 0xe5, 0xdb, 0xab, 0xa5, 0x71, 0xeb, 0x1d, 0xee, 0xe6, 0xc4, 0xbb, 0x9a, 0x1c, + 0x07, 0x52, 0xdb, 0x2a, 0x6f, 0xdd, 0xad, 0x25, 0x3e, 0x7e, 0x1c, 0x46, 0x6b, 0x77, 0x57, 0x56, + 0x56, 0x6b, 0xb5, 0x52, 0x8e, 0x00, 0x8c, 0x5c, 0x2f, 0x57, 0xd7, 0x57, 0x2b, 0xa5, 0xbc, 0xf5, + 0x93, 0x39, 0x98, 0x91, 0x12, 0xa0, 0x7c, 0xc3, 0xf8, 0x94, 0x6b, 0xf1, 0x5d, 0xe3, 0x62, 0x2b, + 0xbd, 0x50, 0x12, 0x95, 0xf4, 0x59, 0x86, 0x3f, 0x9f, 0x83, 0x63, 0x99, 0xd8, 0xe4, 0x03, 0x28, + 0xc9, 0x16, 0xdc, 0x76, 0xa3, 0xfa, 0x5e, 0xbc, 0x8f, 0x9d, 0x49, 0xd4, 0x92, 0x40, 0xe3, 0x6a, + 0xcd, 0x38, 0x1d, 0x61, 0x8a, 0xcd, 0xe0, 0xc1, 0x72, 0xad, 0x6f, 0xe7, 0xe0, 0x44, 0x8f, 0x6a, + 0xc8, 0x0a, 0x8c, 0xa8, 0xb0, 0xe9, 0x7d, 0x0c, 0xaa, 0xe6, 0xbe, 0x73, 0xb0, 0x28, 0x10, 0x31, + 0x7f, 0x1b, 0xfe, 0x65, 0x8f, 0xa8, 0x38, 0xe8, 0x18, 0x8c, 0x9c, 0x77, 0xdf, 0xc9, 0x44, 0xcf, + 0x8b, 0x9a, 0xca, 0xf7, 0x6b, 0xcb, 0xe3, 0xa2, 0xef, 0x0a, 0xee, 0xa3, 0x10, 0xa3, 0x91, 0x5b, + 0x3f, 0x93, 0x63, 0xc2, 0x5d, 0x12, 0x91, 0xc9, 0xbc, 0xe5, 0x30, 0xec, 0xb6, 0xa8, 0xed, 0x37, + 0x69, 0xd9, 0xde, 0x10, 0xc7, 0x06, 0x4a, 0xab, 0x2e, 0x16, 0xe0, 0xb5, 0xc2, 0x71, 0x83, 0xb6, + 0xf1, 0x78, 0xaa, 0xd3, 0x90, 0x37, 0x01, 0x54, 0xbe, 0x7f, 0x19, 0xd4, 0x80, 0x07, 0xf5, 0x10, + 0x50, 0x53, 0xde, 0xd6, 0x90, 0xad, 0xbf, 0x9e, 0x83, 0x09, 0x71, 0x69, 0x2a, 0x37, 0x69, 0x10, + 0x7d, 0xba, 0xe9, 0xf5, 0xa6, 0x31, 0xbd, 0x94, 0xff, 0x80, 0xc6, 0x9f, 0x15, 0x67, 0xce, 0xac, + 0x7f, 0x9a, 0x83, 0x52, 0x12, 0x91, 0xbc, 0x0b, 0xc5, 0x1a, 0x7d, 0x48, 0x03, 0x2f, 0xda, 0x17, + 0x1b, 0xa5, 0x4c, 0x30, 0xc3, 0x71, 0x44, 0x19, 0x9f, 0x0f, 0xa1, 0xf8, 0x65, 0x2b, 0x9a, 0x41, + 0xf7, 0x7b, 0x4d, 0xed, 0x51, 0x78, 0x5a, 0x6a, 0x0f, 0xeb, 0x7f, 0xc9, 0xc3, 0x89, 0x1b, 0x34, + 0xd2, 0xbf, 0x49, 0xbd, 0x76, 0x7f, 0x6e, 0xb0, 0xef, 0xd2, 0xbe, 0x64, 0x1e, 0x46, 0xb1, 0x48, + 0x8e, 0xaf, 0x2d, 0x7f, 0x92, 0x65, 0x35, 0xaf, 0x0b, 0x46, 0x06, 0x8b, 0x1e, 0x75, 0x5f, 0xd2, + 0x62, 0xda, 0xab, 0x69, 0x7d, 0x1e, 0xa6, 0x30, 0x68, 0x6b, 0x97, 0x2d, 0x07, 0xda, 0x10, 0xea, + 0x9f, 0xa2, 0x9d, 0x80, 0x92, 0x57, 0xa0, 0xc4, 0x20, 0xe5, 0xfa, 0x83, 0xb6, 0xff, 0xa8, 0x49, + 0x1b, 0xbb, 0x94, 0x27, 0x68, 0x2f, 0xda, 0x29, 0xb8, 0xe4, 0x79, 0xb7, 0xcd, 0xaf, 0x6e, 0xb4, + 0x81, 0x3a, 0x1a, 0xc1, 0x33, 0x86, 0x2e, 0xbc, 0x09, 0xe3, 0x9f, 0x30, 0x3f, 0x85, 0xf5, 0x3f, + 0xe7, 0x60, 0x0e, 0x3f, 0x4e, 0xab, 0x58, 0xe6, 0x0e, 0x93, 0xbd, 0xa5, 0x85, 0x6c, 0x77, 0x19, + 0xc8, 0x5c, 0x0a, 0xaa, 0x17, 0x63, 0x9d, 0x50, 0x7e, 0x00, 0x9d, 0x50, 0xed, 0x28, 0x79, 0x52, + 0x07, 0x54, 0x69, 0xf1, 0x2c, 0xfc, 0xf1, 0x90, 0x5b, 0x3f, 0x94, 0x87, 0x51, 0x9b, 0x62, 0x02, + 0x49, 0x72, 0x1e, 0x46, 0x37, 0xfc, 0x88, 0x86, 0xb7, 0x8d, 0x6c, 0xa1, 0x6d, 0x06, 0x72, 0x5a, + 0x0d, 0x5b, 0x16, 0xb2, 0x09, 0xbf, 0x19, 0xf8, 0x8d, 0x6e, 0x3d, 0xd2, 0x27, 0x7c, 0x87, 0x83, + 0x6c, 0x59, 0x46, 0x5e, 0x83, 0x31, 0xc1, 0x59, 0xbd, 0x31, 0xa2, 0x6d, 0x6c, 0x40, 0x55, 0x02, + 0xd2, 0x18, 0x01, 0x65, 0x5a, 0x2e, 0x60, 0x0c, 0x69, 0x32, 0x6d, 0x4a, 0x66, 0x90, 0xa2, 0xfa, + 0x70, 0x1f, 0x51, 0xfd, 0x73, 0x30, 0x52, 0x0e, 0x43, 0x1a, 0x49, 0x27, 0xed, 0x09, 0x15, 0x31, + 0x27, 0xa4, 0x11, 0x67, 0xec, 0x62, 0xb9, 0x2d, 0xf0, 0xac, 0x7f, 0x91, 0x87, 0x61, 0xfc, 0x13, + 0xdf, 0x55, 0x83, 0xfa, 0x9e, 0xf1, 0xae, 0x1a, 0xd4, 0xf7, 0x6c, 0x84, 0x92, 0x2b, 0xa8, 0xa9, + 0x90, 0xd9, 0x05, 0xc4, 0xd7, 0xa3, 0x0a, 0xbe, 0x11, 0x83, 0x6d, 0x1d, 0x47, 0x3d, 0x38, 0x17, + 0x32, 0x43, 0x33, 0x1c, 0x87, 0xfc, 0x9d, 0x9a, 0xf8, 0x62, 0x0c, 0x21, 0xe3, 0x87, 0x76, 0xfe, + 0x4e, 0x0d, 0x7b, 0x63, 0xad, 0xbc, 0xf4, 0xc6, 0x35, 0x3d, 0xb1, 0x6d, 0xb8, 0xe7, 0x2e, 0xbd, + 0x71, 0xcd, 0x16, 0x25, 0xac, 0x7f, 0xb1, 0xcd, 0xf8, 0xf0, 0xca, 0x9d, 0x8a, 0xb1, 0x7f, 0xf1, + 0xdb, 0xf0, 0x91, 0xd5, 0x8e, 0x11, 0xc8, 0x12, 0x8c, 0x0b, 0x57, 0x76, 0xc4, 0xd7, 0x5c, 0xcd, + 0x85, 0xab, 0x3b, 0xa7, 0xd0, 0x91, 0xf8, 0x13, 0x9c, 0x18, 0x20, 0x99, 0x03, 0x4d, 0x3c, 0xc1, + 0xc9, 0x21, 0x0c, 0x6d, 0x0d, 0x25, 0xf6, 0x89, 0x8e, 0x9d, 0x85, 0x75, 0x9f, 0x68, 0x0c, 0xc2, + 0xab, 0x10, 0xac, 0x5f, 0xce, 0x43, 0x71, 0xb3, 0xd9, 0xdd, 0xf5, 0xda, 0xf7, 0xae, 0x10, 0x02, + 0x78, 0x8d, 0x93, 0x51, 0x9a, 0xd9, 0xdf, 0xe4, 0x24, 0x14, 0xe5, 0xcd, 0x4d, 0x6e, 0x48, 0xa1, + 0xb8, 0xb5, 0xcd, 0x83, 0x1c, 0x77, 0x91, 0xad, 0x5f, 0xfe, 0x24, 0x57, 0x40, 0xdd, 0xbf, 0x7a, + 0x5d, 0xd4, 0x86, 0xd8, 0x62, 0xb1, 0x15, 0x1a, 0x79, 0x1d, 0xf0, 0x90, 0x10, 0x97, 0x07, 0xa9, + 0xd0, 0xe6, 0x4d, 0x13, 0x72, 0x0a, 0x27, 0x41, 0x34, 0x72, 0x15, 0xc4, 0xc4, 0x14, 0xb9, 0x36, + 0x8f, 0x99, 0x04, 0x3c, 0x7b, 0x91, 0x24, 0x11, 0xa8, 0xe4, 0x6d, 0x18, 0x8f, 0x33, 0xdd, 0xc7, + 0x29, 0x34, 0x75, 0xca, 0x95, 0xb8, 0xfc, 0xde, 0x15, 0x5b, 0x47, 0xb7, 0xfe, 0xcb, 0x11, 0x98, + 0xd0, 0xdb, 0x43, 0x6c, 0x98, 0x0d, 0x9b, 0xec, 0xee, 0x2e, 0x6c, 0x9f, 0x3a, 0x58, 0x28, 0x8e, + 0xd3, 0xb3, 0x66, 0x83, 0x18, 0x1e, 0x37, 0x84, 0x92, 0x3e, 0xf8, 0x6b, 0xcf, 0xd9, 0x33, 0x61, + 0x0c, 0xe6, 0x78, 0xa4, 0x0c, 0x45, 0xbf, 0x13, 0xee, 0xd2, 0xb6, 0x27, 0xdf, 0x5b, 0xce, 0x19, + 0x8c, 0xee, 0x88, 0xc2, 0x14, 0x2f, 0x45, 0x46, 0xde, 0x80, 0x11, 0xbf, 0x43, 0xdb, 0xae, 0x27, + 0xce, 0xb8, 0xe7, 0x13, 0x0c, 0x68, 0xbb, 0x5c, 0xd5, 0x08, 0x05, 0x32, 0xb9, 0x0c, 0x43, 0xfe, + 0x03, 0x35, 0x5e, 0x27, 0x4d, 0xa2, 0x07, 0x91, 0xab, 0x91, 0x20, 0x22, 0x23, 0xf8, 0xc8, 0x6d, + 0xed, 0x88, 0x11, 0x33, 0x09, 0x6e, 0xba, 0xad, 0x1d, 0x9d, 0x80, 0x21, 0x92, 0xf7, 0x00, 0x3a, + 0xee, 0x2e, 0x0d, 0x9c, 0x46, 0x37, 0xda, 0x17, 0xe3, 0x76, 0xc6, 0x20, 0xdb, 0x64, 0xc5, 0x95, + 0x6e, 0xb4, 0xaf, 0xd1, 0x8e, 0x75, 0x24, 0x90, 0x94, 0x01, 0x5a, 0x6e, 0x14, 0xd1, 0xa0, 0xe5, + 0x0b, 0xe3, 0xb3, 0x71, 0x95, 0xa2, 0x92, 0x33, 0xb8, 0xad, 0x8a, 0x35, 0x0e, 0x1a, 0x11, 0x36, + 0xda, 0x0b, 0x5c, 0x91, 0xf1, 0x34, 0xd1, 0x68, 0x2f, 0x30, 0xbe, 0x92, 0x21, 0x92, 0x2f, 0xc2, + 0x68, 0xc3, 0x0b, 0xeb, 0x7e, 0xd0, 0x10, 0xc1, 0x19, 0x4e, 0x19, 0x34, 0x15, 0x5e, 0xa6, 0x91, + 0x49, 0x74, 0xd6, 0x5a, 0x11, 0xff, 0x6d, 0xc3, 0x7f, 0x84, 0x6a, 0xfe, 0x64, 0x6b, 0x6b, 0xaa, + 0x58, 0x6f, 0x6d, 0x4c, 0xc4, 0x86, 0x72, 0xd7, 0x8b, 0x9a, 0xee, 0xb6, 0x78, 0xe7, 0x36, 0x87, + 0xf2, 0x06, 0x16, 0xe9, 0x43, 0xc9, 0x91, 0xc9, 0x9b, 0x50, 0xa4, 0xed, 0x28, 0x70, 0x1d, 0xaf, + 0x21, 0x9c, 0xf6, 0xcc, 0x46, 0xb3, 0x03, 0xd8, 0xad, 0x56, 0xf4, 0x46, 0x23, 0x7e, 0xb5, 0xc1, + 0xfa, 0x27, 0xac, 0x7b, 0x2d, 0xe1, 0x6b, 0x67, 0xf6, 0x4f, 0x6d, 0xa5, 0x7a, 0x5b, 0xef, 0x1f, + 0x86, 0x48, 0xce, 0x00, 0xc4, 0x4f, 0xdc, 0xfc, 0x41, 0xc2, 0xd6, 0x20, 0x5f, 0x1a, 0xfa, 0xdf, + 0x7e, 0x71, 0x31, 0xb7, 0x0c, 0x50, 0x94, 0xd1, 0x29, 0xac, 0x75, 0x38, 0xd9, 0x73, 0x51, 0x90, + 0x8b, 0x50, 0xda, 0x71, 0x85, 0x4a, 0xac, 0xbe, 0xe7, 0xb6, 0xdb, 0xb4, 0x29, 0xb6, 0xa3, 0x69, + 0x09, 0x5f, 0xe1, 0x60, 0xce, 0xd9, 0x7a, 0x0f, 0xe6, 0xb2, 0x7a, 0x83, 0xbc, 0x00, 0x13, 0x7a, + 0x20, 0x0e, 0xc1, 0x64, 0xdc, 0xed, 0x78, 0x32, 0x14, 0x87, 0x60, 0xf0, 0xeb, 0x39, 0x38, 0xd5, + 0x6f, 0x6d, 0x91, 0x05, 0x28, 0x76, 0x02, 0xcf, 0x47, 0x19, 0x8e, 0xef, 0x80, 0xea, 0x37, 0x39, + 0x0d, 0xc0, 0x85, 0x8d, 0xc8, 0xdd, 0x15, 0xc6, 0xf8, 0xf6, 0x18, 0x42, 0xb6, 0xdc, 0xdd, 0x90, + 0xbc, 0x0a, 0x33, 0x0d, 0xba, 0xe3, 0x76, 0x9b, 0x91, 0x13, 0xd6, 0xf7, 0x68, 0x03, 0xfd, 0x5f, + 0xd0, 0xc8, 0xca, 0x2e, 0x89, 0x82, 0x9a, 0x84, 0xa7, 0x5a, 0x3c, 0xdc, 0xa3, 0xc5, 0x37, 0x87, + 0x8a, 0xb9, 0x52, 0xde, 0x46, 0x5b, 0x23, 0xeb, 0xfb, 0xf3, 0x30, 0xdf, 0x6b, 0x32, 0x91, 0x77, + 0xb2, 0xfa, 0x80, 0x6b, 0xf5, 0x75, 0xb8, 0xae, 0xd5, 0xd7, 0x6a, 0x23, 0x4b, 0xa0, 0xbc, 0x57, + 0x0e, 0xf3, 0x44, 0x97, 0x30, 0x46, 0xd3, 0x71, 0xc3, 0xf0, 0x11, 0x5b, 0x2f, 0x05, 0x2d, 0xd0, + 0x9e, 0x80, 0xe9, 0x34, 0x12, 0x46, 0xbe, 0x00, 0x50, 0x6f, 0xfa, 0x21, 0xc5, 0xc7, 0x73, 0x71, + 0x10, 0x73, 0x13, 0x5e, 0x05, 0xd5, 0x5f, 0x4b, 0x11, 0xba, 0xe2, 0x37, 0xa8, 0x18, 0x40, 0x17, + 0x4e, 0xf4, 0xd8, 0x3d, 0xd8, 0xf0, 0xc4, 0x89, 0x3d, 0x65, 0x9a, 0x80, 0xae, 0x4a, 0xef, 0x99, + 0xec, 0xf1, 0x7c, 0xaf, 0x39, 0xb2, 0x0f, 0x24, 0xbd, 0x45, 0x30, 0xee, 0xc2, 0x10, 0xb5, 0x1b, + 0x28, 0xee, 0x1c, 0x72, 0x37, 0x68, 0x92, 0x45, 0x18, 0x97, 0x69, 0x80, 0x98, 0xa0, 0xcb, 0x99, + 0x83, 0x00, 0xdd, 0xa2, 0x38, 0x79, 0x30, 0x1e, 0x24, 0xfa, 0x28, 0x89, 0x23, 0x74, 0x0c, 0x21, + 0x5b, 0xfb, 0x1d, 0xf9, 0x75, 0xa7, 0xe4, 0xfc, 0x36, 0x37, 0x6e, 0x51, 0xfa, 0xb3, 0x39, 0x39, + 0xfc, 0xe9, 0x9d, 0xef, 0xb0, 0xf6, 0x11, 0x40, 0x8f, 0x12, 0xd1, 0x30, 0xfc, 0x9b, 0x1d, 0xe9, + 0x72, 0xd5, 0x89, 0x23, 0x5d, 0xfc, 0x24, 0xe7, 0x61, 0x3a, 0xe0, 0x36, 0x87, 0x91, 0x2f, 0xfa, + 0x13, 0x47, 0xca, 0x9e, 0xe4, 0xe0, 0x2d, 0x1f, 0xfb, 0x54, 0xb4, 0xeb, 0xa6, 0xea, 0x30, 0xed, + 0x20, 0x20, 0x97, 0x60, 0x8c, 0x1d, 0x04, 0x18, 0xe7, 0x22, 0x61, 0xca, 0x8e, 0x78, 0x78, 0xac, + 0xda, 0xc5, 0x8f, 0xc4, 0xdf, 0x82, 0xd7, 0x3f, 0xc9, 0x49, 0x66, 0xfa, 0x31, 0x44, 0x4e, 0xc0, + 0xa8, 0x1f, 0xec, 0x6a, 0x9f, 0x36, 0xe2, 0x07, 0xbb, 0xec, 0xbb, 0x2e, 0x40, 0x89, 0x7b, 0x56, + 0x70, 0x97, 0xf5, 0x70, 0xbf, 0xcd, 0xef, 0xa9, 0x45, 0x7b, 0x8a, 0xc3, 0x31, 0xd7, 0xe9, 0x7e, + 0xbb, 0xce, 0x30, 0xc3, 0xd0, 0x77, 0xf4, 0xe0, 0x36, 0xe2, 0xb3, 0xa7, 0xc2, 0xd0, 0x8f, 0xa3, + 0xdc, 0x34, 0xc8, 0x32, 0x4c, 0x32, 0x3e, 0x2a, 0xc4, 0x8e, 0x38, 0x25, 0x4f, 0xa7, 0x4f, 0xc9, + 0xfd, 0x76, 0x5d, 0x36, 0xd1, 0x9e, 0x08, 0xb5, 0x5f, 0xe2, 0x6b, 0x7e, 0x2e, 0x0f, 0xc7, 0xb3, + 0xd1, 0x71, 0xbc, 0x58, 0x25, 0xe8, 0x60, 0xc4, 0xd5, 0x9b, 0xf6, 0x18, 0x83, 0xf0, 0x18, 0x0a, + 0x59, 0xad, 0xcd, 0x67, 0xb6, 0xf6, 0x15, 0x98, 0x41, 0x46, 0x42, 0x2e, 0x69, 0x7a, 0x61, 0x24, + 0x42, 0x03, 0xd8, 0xd3, 0xac, 0x80, 0x6f, 0x70, 0xeb, 0x0c, 0x4c, 0x5e, 0x82, 0x29, 0xb9, 0x45, + 0xf9, 0x8f, 0xda, 0xac, 0x62, 0xbe, 0x3f, 0x4d, 0x0a, 0xe8, 0x1d, 0x04, 0x92, 0x63, 0x30, 0xe2, + 0x76, 0x3a, 0xac, 0x4a, 0xbe, 0x2d, 0x0d, 0xbb, 0x9d, 0x4e, 0xb5, 0x41, 0xce, 0xc1, 0x24, 0xba, + 0x53, 0x39, 0x3b, 0x68, 0x53, 0x22, 0x0c, 0xd8, 0xec, 0x09, 0x04, 0x72, 0x3b, 0x93, 0x90, 0x2d, + 0x04, 0x46, 0x2b, 0x51, 0x46, 0x11, 0x05, 0xdc, 0x8e, 0x44, 0x10, 0x3d, 0xf3, 0x45, 0x98, 0x16, + 0xa7, 0xa9, 0xd8, 0xe1, 0x91, 0x52, 0xcc, 0x3f, 0x26, 0xe6, 0x8a, 0xf0, 0xe8, 0x20, 0x40, 0xd5, + 0x86, 0xa4, 0xfc, 0x83, 0x1c, 0x1c, 0xcb, 0x3c, 0x8e, 0xc9, 0x37, 0x80, 0x7b, 0x97, 0x44, 0xbe, + 0x13, 0xd0, 0xba, 0xd7, 0xf1, 0xd0, 0xff, 0x9e, 0xab, 0xab, 0x96, 0xfa, 0x1d, 0xe4, 0xe8, 0xa9, + 0xb2, 0xe5, 0xdb, 0x8a, 0x88, 0xdf, 0xa3, 0x4b, 0x41, 0x02, 0xbc, 0xf0, 0x21, 0x1c, 0xcb, 0x44, + 0xcd, 0xb8, 0xdf, 0xbe, 0x66, 0xa6, 0x91, 0x93, 0x0f, 0x10, 0x89, 0x8f, 0xd6, 0xee, 0xbd, 0xe2, + 0xf3, 0x7e, 0x4b, 0x7d, 0x5e, 0xe2, 0xe0, 0x26, 0xab, 0xc9, 0x69, 0x99, 0x25, 0x7b, 0x4a, 0xa2, + 0x9e, 0x33, 0x93, 0x7c, 0x08, 0xc7, 0xc4, 0x54, 0xd9, 0x0d, 0xdc, 0xce, 0x5e, 0xcc, 0x8e, 0x37, + 0xf4, 0xe5, 0x2c, 0x76, 0x7c, 0x0e, 0xdd, 0x60, 0xf8, 0x8a, 0xeb, 0xac, 0x9b, 0x06, 0x8a, 0x6f, + 0x08, 0xe4, 0xa1, 0x9f, 0xd1, 0x9a, 0x8c, 0x39, 0x98, 0xcb, 0x9a, 0x83, 0x03, 0x2f, 0x00, 0x51, + 0xe7, 0x0f, 0xe4, 0xe0, 0xec, 0x61, 0x6d, 0x26, 0xf7, 0xe1, 0x38, 0x3e, 0x91, 0x87, 0xbe, 0xfa, + 0x6c, 0xa7, 0xee, 0xd6, 0xf7, 0xa8, 0x98, 0x25, 0x56, 0xe6, 0xc7, 0x77, 0x3a, 0xb5, 0xda, 0x1d, + 0xed, 0xbb, 0x3b, 0x9d, 0x5a, 0xe8, 0xcb, 0xdf, 0x2b, 0x8c, 0x5c, 0xb4, 0xa1, 0x01, 0xcf, 0xf7, + 0xa1, 0xd4, 0x96, 0x55, 0x4e, 0x5f, 0x56, 0x17, 0xa0, 0xb4, 0x43, 0x1b, 0x4c, 0x84, 0xa2, 0x0d, + 0x6c, 0xda, 0xc3, 0x25, 0x9e, 0x8b, 0xd1, 0x9e, 0x52, 0xf0, 0x5a, 0xe8, 0xdf, 0x5b, 0x12, 0xb5, + 0xb4, 0xe4, 0x0e, 0xa9, 0x8b, 0x68, 0xe4, 0x12, 0xcc, 0x26, 0x62, 0x09, 0xc4, 0xce, 0xa9, 0xf6, + 0x0c, 0x2b, 0x32, 0x23, 0xcf, 0xbc, 0x00, 0x13, 0x72, 0x18, 0x02, 0xe5, 0xe2, 0x62, 0x8f, 0x0b, + 0x18, 0x9b, 0xe5, 0xa2, 0xba, 0xbf, 0x9f, 0x97, 0x22, 0xd3, 0xb2, 0xef, 0x47, 0x61, 0x14, 0xb8, + 0x1d, 0xe3, 0xde, 0x44, 0x5a, 0x70, 0xd2, 0x77, 0xbb, 0xd1, 0xde, 0x92, 0xc3, 0xfe, 0xf5, 0x03, + 0xe9, 0x6f, 0x5a, 0x97, 0x46, 0x73, 0xe3, 0x4b, 0x97, 0xcd, 0xad, 0xb3, 0xcc, 0xb0, 0xcb, 0x3a, + 0x32, 0x3b, 0xe1, 0x35, 0xae, 0x6b, 0xcf, 0xd9, 0x27, 0x38, 0xcf, 0x14, 0x16, 0x59, 0x83, 0x89, + 0x6d, 0xea, 0x06, 0x34, 0x70, 0xe2, 0xa4, 0xef, 0xc9, 0x8b, 0xd3, 0x32, 0x22, 0xa0, 0xfd, 0xa8, + 0xc9, 0x75, 0x7c, 0x3b, 0x2e, 0x21, 0xef, 0xc2, 0x98, 0xd7, 0x10, 0xa1, 0xf2, 0xc4, 0xf5, 0xc9, + 0x14, 0xd9, 0xab, 0x0d, 0x1e, 0x39, 0x2f, 0xe6, 0xc1, 0xee, 0x5e, 0x9e, 0x80, 0x2e, 0x4f, 0x1a, + 0x37, 0x4c, 0x6b, 0x59, 0x9e, 0xce, 0x69, 0xb2, 0x54, 0xca, 0xfa, 0xe3, 0x30, 0x12, 0x6a, 0xb1, + 0xfb, 0x6c, 0xf1, 0xcb, 0xfa, 0x2b, 0x70, 0x61, 0xd0, 0x3e, 0x22, 0xaf, 0x03, 0xe9, 0xd1, 0xe1, + 0x63, 0xf6, 0x8c, 0x9b, 0xea, 0xb7, 0x17, 0x40, 0x0f, 0x3e, 0xe6, 0xc9, 0x01, 0x97, 0xb0, 0xbb, + 0x81, 0x67, 0xfd, 0x60, 0x01, 0xa6, 0xcc, 0x3b, 0x35, 0x79, 0x15, 0x86, 0x14, 0xdb, 0x29, 0xa5, + 0xfb, 0xd5, 0x91, 0x18, 0x73, 0x1b, 0x91, 0xd8, 0x01, 0x81, 0x4f, 0x45, 0x4e, 0x4b, 0x57, 0xcf, + 0xda, 0x13, 0x08, 0x94, 0x6a, 0xd9, 0x9b, 0xc0, 0x53, 0xff, 0xe2, 0x5e, 0x16, 0x0d, 0x96, 0xe8, + 0xbe, 0xc8, 0x6e, 0xf6, 0xa8, 0x57, 0x9b, 0x60, 0xb4, 0x6c, 0x3f, 0xc1, 0xdc, 0xf6, 0xf1, 0x95, + 0x69, 0xa8, 0xf7, 0x95, 0x49, 0x7c, 0x4a, 0x8f, 0x2b, 0xd3, 0x70, 0x9f, 0x2b, 0x53, 0x4c, 0xa9, + 0x5f, 0x99, 0xf0, 0xe2, 0x3c, 0xda, 0xeb, 0xe2, 0x1c, 0xd3, 0xf0, 0x8b, 0xf3, 0x8b, 0xe2, 0x73, + 0x03, 0xf7, 0x91, 0x83, 0xfd, 0xc0, 0x8d, 0xda, 0xf8, 0x87, 0xd8, 0xee, 0x23, 0x7c, 0x54, 0x5b, + 0x1e, 0x03, 0xf9, 0x12, 0x67, 0xfd, 0x74, 0x2e, 0x71, 0xc9, 0x91, 0x43, 0xf1, 0x12, 0x4c, 0x79, + 0x2d, 0x26, 0x7d, 0xd1, 0x86, 0x26, 0x35, 0x4c, 0xda, 0x93, 0x12, 0xca, 0x25, 0x87, 0x97, 0x61, + 0x5a, 0xa1, 0x71, 0xef, 0x67, 0x6e, 0xa1, 0x6f, 0x2b, 0x6a, 0xe1, 0xfd, 0xfc, 0x2a, 0xcc, 0x28, + 0x44, 0x21, 0xa8, 0x72, 0xc1, 0x61, 0xd2, 0x2e, 0xc9, 0x02, 0x91, 0xc4, 0x32, 0xb4, 0x76, 0x93, + 0xa7, 0xd2, 0x67, 0xd4, 0x2a, 0xeb, 0xb7, 0x0a, 0x86, 0x00, 0x28, 0xab, 0x59, 0x86, 0x71, 0xb6, + 0x35, 0x8a, 0x4e, 0x12, 0xdb, 0xca, 0x0b, 0x3d, 0xba, 0x5f, 0xbc, 0x65, 0xd6, 0x6a, 0x77, 0x6c, + 0x08, 0x43, 0x5f, 0x3e, 0x6d, 0x3a, 0x7c, 0xf7, 0xe7, 0x32, 0x0c, 0x4e, 0x3f, 0xc9, 0x8e, 0xef, + 0x21, 0xaf, 0xf4, 0x67, 0x57, 0xee, 0x74, 0xb0, 0x8d, 0x6c, 0xf6, 0xe1, 0x29, 0xa0, 0x7e, 0xc9, + 0x0a, 0xee, 0x02, 0xde, 0x97, 0x42, 0x93, 0x79, 0x21, 0xe3, 0x5c, 0x4d, 0x31, 0xc7, 0x5e, 0x42, + 0xce, 0xa5, 0xae, 0xfc, 0x53, 0xb2, 0x5d, 0x85, 0x09, 0x76, 0xfb, 0x56, 0x0c, 0x87, 0x0c, 0x57, + 0xa5, 0x5e, 0x1f, 0xbf, 0x52, 0xbd, 0x6d, 0x8f, 0x33, 0x3a, 0xc9, 0x66, 0x0f, 0x4e, 0xea, 0x32, + 0xa2, 0xd9, 0xc8, 0x61, 0x19, 0x55, 0xae, 0x6f, 0x0f, 0xc4, 0xa2, 0x24, 0x36, 0xf5, 0xb8, 0x6b, + 0x02, 0x04, 0x9a, 0xb5, 0x07, 0x0b, 0xbd, 0x87, 0x84, 0x5d, 0x3b, 0xa8, 0xee, 0x1f, 0x6d, 0xcb, + 0x9f, 0xda, 0x01, 0x99, 0xd7, 0x0f, 0xc8, 0x93, 0x50, 0x94, 0xf6, 0x70, 0xf2, 0xa2, 0xe2, 0x72, + 0x5b, 0x38, 0xeb, 0xef, 0x14, 0xe0, 0xdc, 0x00, 0xc3, 0xd5, 0xa7, 0xce, 0xf7, 0x61, 0x9c, 0x2b, + 0x0c, 0xf9, 0xf6, 0xc9, 0x1f, 0xdb, 0xe5, 0x31, 0xc0, 0x98, 0x8a, 0xbd, 0x8e, 0x89, 0x30, 0xf1, + 0x7e, 0x07, 0xa1, 0xfa, 0x9b, 0x7c, 0x03, 0xa6, 0xf9, 0x86, 0xc6, 0xcd, 0x11, 0x76, 0xba, 0xcd, + 0x01, 0x76, 0xb4, 0xe7, 0xa5, 0xed, 0x74, 0x82, 0x14, 0x37, 0x39, 0xdc, 0x31, 0x6a, 0x0a, 0x46, + 0xb6, 0x60, 0x1c, 0xd1, 0x76, 0x5c, 0xaf, 0x39, 0x90, 0x11, 0xaf, 0xb4, 0xcc, 0xd6, 0xc9, 0xb8, + 0x15, 0x15, 0x03, 0x5c, 0xc7, 0xdf, 0xec, 0x92, 0xd7, 0xee, 0xb6, 0x1c, 0xb7, 0xd3, 0xe1, 0x73, + 0x41, 0xbc, 0xfa, 0x0c, 0xdb, 0x93, 0xed, 0x6e, 0xab, 0xdc, 0xe9, 0xe0, 0x90, 0xe2, 0xf3, 0xd0, + 0x0c, 0xc3, 0xe3, 0xab, 0x56, 0x62, 0x8e, 0x20, 0x26, 0x63, 0xc0, 0xd7, 0xad, 0xc0, 0x9d, 0x03, + 0x6e, 0x2c, 0xc0, 0xd5, 0xdd, 0x36, 0xff, 0x61, 0xfd, 0x59, 0x5e, 0xca, 0x66, 0xbd, 0xe7, 0xfd, + 0x5f, 0x0e, 0x51, 0xc6, 0x10, 0x5d, 0x80, 0x12, 0xeb, 0xfa, 0x78, 0x53, 0x51, 0x63, 0x34, 0xd5, + 0xee, 0xb6, 0x54, 0xdf, 0xe9, 0x1d, 0x3f, 0xa2, 0x77, 0xfc, 0x17, 0xa4, 0x40, 0x9a, 0xb9, 0x3d, + 0xf4, 0xee, 0x72, 0xeb, 0x7f, 0x2f, 0xc0, 0xf9, 0xc1, 0x36, 0x81, 0xbf, 0x1c, 0xb7, 0x8c, 0x71, + 0x4b, 0x5c, 0x82, 0x87, 0x93, 0x97, 0xe0, 0xac, 0xb5, 0x37, 0x92, 0xb5, 0xf6, 0x52, 0x57, 0xee, + 0xd1, 0x8c, 0x2b, 0x77, 0xe6, 0x02, 0x2d, 0x1e, 0xb2, 0x40, 0xc7, 0xf4, 0x79, 0xf2, 0xcf, 0xf3, + 0x30, 0x9b, 0xf1, 0x24, 0x42, 0x3e, 0x84, 0x59, 0x29, 0xda, 0xf3, 0x93, 0x83, 0x8b, 0xdc, 0xfc, + 0xf4, 0xbd, 0x98, 0x25, 0xd4, 0x23, 0x5a, 0x86, 0xe0, 0x3d, 0x23, 0xc4, 0xf9, 0xb8, 0xfc, 0x2f, + 0x8e, 0x20, 0x4f, 0x3e, 0x80, 0xe3, 0x18, 0xf6, 0xb4, 0xee, 0x68, 0xf2, 0xbc, 0x13, 0xd0, 0x1d, + 0x31, 0x1f, 0x5e, 0x48, 0x89, 0xbd, 0x5e, 0x5d, 0x6b, 0x8e, 0x4d, 0x77, 0xd6, 0x9e, 0xb3, 0xe7, + 0xc2, 0x0c, 0x78, 0xf2, 0x8e, 0xf0, 0x1f, 0xe5, 0xc0, 0x3a, 0xbc, 0xbf, 0x50, 0x57, 0x99, 0xec, + 0xf0, 0x31, 0x7b, 0xdc, 0xd5, 0x7a, 0xef, 0x1c, 0x4c, 0x06, 0x74, 0x27, 0xa0, 0xe1, 0x9e, 0xd6, + 0x7d, 0x63, 0xf6, 0x84, 0x00, 0xca, 0x8e, 0x91, 0xc1, 0x8e, 0x8e, 0x24, 0x64, 0x4b, 0x22, 0xeb, + 0xba, 0xba, 0xfa, 0x65, 0x8e, 0x03, 0x9b, 0x4d, 0x7a, 0x03, 0xf9, 0x8f, 0x9b, 0x43, 0xc5, 0x7c, + 0xa9, 0x60, 0x8b, 0x90, 0x4c, 0x3b, 0x5e, 0x93, 0x5a, 0xff, 0x30, 0x27, 0x25, 0x82, 0xac, 0xce, + 0x23, 0x1f, 0x6a, 0x46, 0x3c, 0x85, 0x94, 0x18, 0x92, 0x45, 0xa2, 0xdb, 0x3b, 0x88, 0x28, 0x41, + 0x08, 0x30, 0xa2, 0x04, 0x21, 0xe4, 0xd3, 0x58, 0x22, 0xbc, 0x29, 0xdf, 0x00, 0xd9, 0x6e, 0x77, + 0xef, 0x0a, 0xb9, 0x08, 0xa3, 0xfc, 0xd9, 0x4f, 0x36, 0x74, 0xda, 0x68, 0xe8, 0xbd, 0x2b, 0xb6, + 0x2c, 0xb7, 0xbe, 0x9d, 0x53, 0x0f, 0x1f, 0xc9, 0xe6, 0xdf, 0xbb, 0x42, 0xbe, 0x30, 0x98, 0x39, + 0x4e, 0x51, 0x9a, 0xe3, 0x28, 0x53, 0x9c, 0x2f, 0x1a, 0xa6, 0x38, 0x2f, 0xf6, 0xef, 0x27, 0xa1, + 0x62, 0x4d, 0x66, 0xa3, 0xfe, 0xb3, 0x1c, 0x9c, 0xee, 0x4b, 0x41, 0x4e, 0x41, 0xb1, 0xbc, 0x59, + 0xdd, 0x8a, 0x47, 0x96, 0xad, 0x16, 0x09, 0x21, 0x37, 0x60, 0x6c, 0xd9, 0x0d, 0xbd, 0x3a, 0x9b, + 0xc0, 0x99, 0x4a, 0xa3, 0x14, 0x5b, 0x85, 0xbe, 0xf6, 0x9c, 0x1d, 0xd3, 0x12, 0x07, 0x66, 0x70, + 0x15, 0xa4, 0xb2, 0xbd, 0x26, 0x15, 0x06, 0x29, 0x86, 0x29, 0x32, 0xb6, 0xc3, 0xa4, 0x80, 0xc9, + 0xc5, 0xf7, 0x50, 0x4a, 0x21, 0xbd, 0x1b, 0x78, 0x84, 0xc0, 0x5e, 0x17, 0xa0, 0xb8, 0x29, 0x1f, + 0x3f, 0x34, 0xfb, 0x35, 0xf9, 0xd0, 0x61, 0xab, 0x52, 0xeb, 0x6f, 0xe6, 0xe4, 0xad, 0xfe, 0xf0, + 0x0f, 0xd1, 0xd2, 0x00, 0x34, 0xfa, 0xa7, 0x01, 0x68, 0x7c, 0xc2, 0x34, 0x00, 0xd6, 0x2f, 0x8b, + 0xb0, 0x9b, 0xd5, 0xc6, 0x66, 0x22, 0x33, 0xd5, 0xa7, 0xb5, 0x43, 0x5c, 0x35, 0x66, 0xe7, 0xb9, + 0xff, 0x9f, 0xba, 0xab, 0xfb, 0x6d, 0xe4, 0xba, 0xee, 0x3b, 0x43, 0x4a, 0x2b, 0x1d, 0xea, 0x63, + 0x74, 0xbd, 0xde, 0x55, 0xb4, 0x5a, 0xad, 0xcd, 0xac, 0x37, 0x5e, 0x3a, 0xb6, 0xb3, 0xde, 0x3a, + 0xc9, 0xba, 0x75, 0x9c, 0x11, 0x39, 0x14, 0xc7, 0x22, 0x87, 0xf4, 0xcc, 0x50, 0xca, 0x3a, 0x1f, + 0x03, 0xae, 0x38, 0x2b, 0xb1, 0xa1, 0x86, 0x0c, 0x67, 0x68, 0x67, 0xfd, 0xd2, 0xf6, 0x25, 0x05, + 0x5a, 0xa4, 0x1f, 0x41, 0x51, 0x14, 0x45, 0x81, 0xa2, 0x80, 0xff, 0x8b, 0xfe, 0x03, 0x01, 0x82, + 0x00, 0x79, 0x6e, 0x01, 0xa3, 0x35, 0xd0, 0x3e, 0xa4, 0x8f, 0x45, 0x5f, 0xf2, 0x54, 0xdc, 0x73, + 0xef, 0x9d, 0xb9, 0x33, 0x43, 0xd2, 0x92, 0xbd, 0x69, 0x91, 0x27, 0x89, 0xe7, 0x9e, 0x73, 0xe7, + 0xce, 0xdc, 0xcf, 0x73, 0xee, 0x39, 0xbf, 0x23, 0xa5, 0x26, 0xc9, 0x3f, 0x6b, 0xbe, 0x3b, 0xa2, + 0x34, 0x54, 0xff, 0x53, 0x85, 0xdd, 0x45, 0xe2, 0x33, 0x93, 0x68, 0x29, 0x97, 0x4b, 0xa2, 0x75, + 0x0f, 0x56, 0x18, 0x2d, 0x9d, 0x99, 0x98, 0x8b, 0xd2, 0x0f, 0x2e, 0x8a, 0xc9, 0x97, 0x61, 0x59, + 0xaf, 0x3a, 0x49, 0xee, 0x04, 0xf4, 0x86, 0xe9, 0x9d, 0x84, 0xe8, 0x67, 0xc1, 0x8b, 0xc8, 0x0f, + 0xf2, 0xe9, 0x42, 0x78, 0xd2, 0x84, 0x9b, 0xd2, 0x07, 0xc9, 0x21, 0xe2, 0x62, 0x7b, 0x13, 0x04, + 0x57, 0x0e, 0x8a, 0x68, 0xe7, 0x53, 0x8f, 0x94, 0x61, 0xb9, 0x33, 0xf1, 0x43, 0x3f, 0x92, 0x3d, + 0x55, 0xc6, 0x48, 0xb1, 0x79, 0x09, 0xf7, 0x23, 0xe9, 0x3d, 0x65, 0x61, 0x83, 0xcb, 0x72, 0x28, + 0x37, 0x3a, 0x9e, 0x50, 0xb2, 0x2d, 0xb1, 0x94, 0xff, 0x54, 0x81, 0x6b, 0xb3, 0x9a, 0x45, 0x76, + 0xa1, 0x18, 0xcc, 0x4c, 0x74, 0x12, 0xb0, 0xe0, 0xa5, 0x12, 0x66, 0x85, 0x7d, 0x32, 0x9a, 0x9c, + 0xf7, 0x22, 0xd9, 0x3d, 0x47, 0x22, 0xdb, 0x40, 0x7f, 0xd4, 0xf1, 0x7f, 0x72, 0x5b, 0x2c, 0xb6, + 0x85, 0x5c, 0x6a, 0x14, 0xfc, 0x53, 0xd6, 0x01, 0xcc, 0x7e, 0xa7, 0x3d, 0x66, 0x00, 0xab, 0x0f, + 0xa0, 0x48, 0x9b, 0x95, 0x19, 0x8c, 0x74, 0x38, 0xe8, 0xad, 0x26, 0x67, 0x62, 0xad, 0x0a, 0x7b, + 0xe7, 0x43, 0x1b, 0x99, 0xcb, 0xc7, 0xb0, 0x91, 0xe6, 0x20, 0x46, 0x1a, 0x92, 0xab, 0xf4, 0x86, + 0xc6, 0x6b, 0xda, 0x1f, 0x8d, 0x98, 0x8b, 0xe8, 0xfe, 0x97, 0xfe, 0xe5, 0x93, 0xdb, 0x40, 0x7f, + 0x32, 0x99, 0x59, 0x90, 0x5d, 0xe5, 0xbf, 0x54, 0xe1, 0x5a, 0x12, 0x95, 0x26, 0xa6, 0xc4, 0xef, + 0x6c, 0x88, 0x84, 0x9e, 0x72, 0xe1, 0x17, 0x27, 0xa6, 0xfc, 0x0b, 0x2e, 0xf0, 0x1c, 0x3e, 0x80, + 0xed, 0x79, 0xfc, 0xe4, 0x95, 0x5c, 0xd6, 0x76, 0x0e, 0xd9, 0x10, 0xa7, 0x77, 0x97, 0x92, 0xb8, + 0xff, 0x52, 0x81, 0x1d, 0xee, 0xd8, 0xd8, 0xea, 0x0d, 0x82, 0xc8, 0x0f, 0x7a, 0xc1, 0x89, 0xff, + 0x6c, 0x42, 0x7c, 0x0e, 0x52, 0xcb, 0xd2, 0x4b, 0x69, 0xff, 0xd5, 0xdc, 0xd3, 0xe6, 0xbf, 0x2d, + 0xb9, 0x87, 0xe0, 0x1c, 0x27, 0x6c, 0xf0, 0x16, 0x59, 0x48, 0x65, 0x40, 0x09, 0x72, 0x48, 0x25, + 0x72, 0x94, 0xff, 0x08, 0xf6, 0x16, 0x3f, 0x80, 0x7c, 0x1f, 0xd6, 0x11, 0xd0, 0xbe, 0x3b, 0x3e, + 0x9d, 0xf4, 0xfa, 0xbe, 0xb0, 0x69, 0x09, 0x93, 0xa2, 0x5c, 0xc6, 0x00, 0x49, 0x78, 0x88, 0xdf, + 0x29, 0x42, 0xe5, 0x73, 0xa1, 0x94, 0xf7, 0xb0, 0x5c, 0x5b, 0xf9, 0x8f, 0x15, 0x20, 0xf9, 0x3a, + 0xc8, 0xd7, 0x61, 0xad, 0xeb, 0x56, 0x9d, 0xa8, 0x37, 0x89, 0x1a, 0xa3, 0xe9, 0x84, 0x03, 0x7d, + 0xb0, 0x88, 0xaf, 0xe8, 0x84, 0xae, 0x0c, 0x93, 0xc8, 0x3b, 0x1b, 0x4d, 0x27, 0x76, 0x8a, 0x0f, + 0x51, 0xf3, 0x7d, 0xff, 0x87, 0xfd, 0xde, 0xd3, 0x34, 0x6a, 0x3e, 0xa7, 0xa5, 0x50, 0xf3, 0x39, + 0xad, 0xfc, 0xb1, 0x02, 0x37, 0x85, 0xc7, 0x43, 0x7f, 0x46, 0x5b, 0xaa, 0x18, 0xd7, 0x3c, 0x11, + 0x40, 0x67, 0x8b, 0xce, 0xa6, 0x5b, 0x22, 0xf4, 0x1f, 0x1b, 0x88, 0x87, 0x54, 0x26, 0x4b, 0xbe, + 0x0d, 0x45, 0x27, 0x1a, 0x8d, 0x2f, 0x10, 0xfb, 0xaf, 0xc5, 0x3d, 0x1a, 0x8d, 0xc6, 0x58, 0x05, + 0x4a, 0x96, 0x7d, 0xb8, 0x26, 0x37, 0x4e, 0xb4, 0x98, 0xb4, 0xe0, 0x2a, 0x47, 0x82, 0xc9, 0xdc, + 0x0e, 0x2d, 0x78, 0xa7, 0xfd, 0x4d, 0x01, 0x30, 0xc0, 0x81, 0xb6, 0x6c, 0x51, 0x47, 0xf9, 0x2f, + 0x14, 0x28, 0xd1, 0xc3, 0x03, 0xaa, 0x63, 0x5f, 0x74, 0x48, 0xa7, 0xcf, 0x81, 0xe2, 0x72, 0x31, + 0xae, 0xfe, 0x42, 0x9b, 0xeb, 0x9b, 0xb0, 0x99, 0x11, 0x20, 0x65, 0x0c, 0x2d, 0x1d, 0x0e, 0x4e, + 0x7a, 0x0c, 0x84, 0x9b, 0xdd, 0xcc, 0xa5, 0x68, 0xe5, 0x3f, 0x53, 0xe0, 0x1a, 0x55, 0xde, 0x4d, + 0xb4, 0xdb, 0xda, 0xd3, 0xa1, 0x98, 0xef, 0xf4, 0x40, 0x24, 0x5c, 0x67, 0x58, 0xd8, 0x1b, 0x3b, + 0x10, 0x71, 0x9a, 0x1d, 0x97, 0x92, 0x06, 0xac, 0xf0, 0xfd, 0x25, 0xe4, 0xf8, 0x58, 0x7b, 0x92, + 0x55, 0x20, 0xa9, 0x98, 0x33, 0xd1, 0x37, 0xc1, 0x25, 0x8c, 0xcb, 0xd8, 0xb1, 0x74, 0xf9, 0xbf, + 0x15, 0xb8, 0x31, 0x47, 0x86, 0xbc, 0x0d, 0x4b, 0xe8, 0x92, 0xcf, 0x7b, 0x6f, 0x77, 0xce, 0x23, + 0xa2, 0x93, 0xb3, 0xa3, 0xfb, 0x6c, 0x23, 0x3a, 0xa7, 0x3f, 0x6c, 0x26, 0x45, 0xbe, 0x0b, 0xab, + 0x7a, 0xbf, 0xcf, 0xf5, 0x12, 0x35, 0xa5, 0x97, 0xcc, 0x79, 0xe2, 0x6b, 0x31, 0x3f, 0xd3, 0x4b, + 0x98, 0x73, 0x68, 0xbf, 0xef, 0xf1, 0x70, 0x83, 0xa4, 0xbe, 0x9d, 0x3f, 0x80, 0x8d, 0x34, 0xf3, + 0xa5, 0xf4, 0x92, 0xbf, 0x53, 0x40, 0x4b, 0xb7, 0xe1, 0xb7, 0x03, 0x8d, 0x30, 0xab, 0x9b, 0x3f, + 0x63, 0x50, 0xfd, 0xb5, 0x0a, 0xcf, 0xcf, 0xfc, 0xc2, 0xe4, 0x55, 0x58, 0xd6, 0xc7, 0x63, 0xb3, + 0xc6, 0x47, 0x15, 0x3f, 0xf0, 0xa0, 0xb9, 0x37, 0xa5, 0xb6, 0x31, 0x26, 0xf2, 0x00, 0x56, 0x70, + 0x64, 0x52, 0x01, 0x35, 0x41, 0xaa, 0x62, 0xd6, 0x90, 0x0c, 0x52, 0x95, 0x60, 0x24, 0x75, 0xd8, + 0xe0, 0x51, 0xd2, 0xb6, 0x7f, 0xea, 0xff, 0x38, 0x86, 0x4c, 0x45, 0x54, 0x57, 0x61, 0x43, 0xf6, + 0x26, 0xac, 0x4c, 0x8e, 0x13, 0x4e, 0x4b, 0x91, 0x26, 0x68, 0x58, 0xa7, 0x5c, 0x13, 0x83, 0xcb, + 0xc2, 0xb8, 0x75, 0xd6, 0x88, 0x39, 0x75, 0xe5, 0x24, 0xe3, 0xee, 0xd2, 0xc3, 0x70, 0x70, 0x1a, + 0x9c, 0xfb, 0x41, 0xf4, 0xdb, 0xeb, 0xae, 0xe4, 0x19, 0x17, 0xea, 0xae, 0xbf, 0x29, 0xb2, 0xc9, + 0x9c, 0x15, 0xa3, 0x27, 0x1a, 0x09, 0x21, 0x11, 0x4f, 0x34, 0x98, 0xf5, 0x92, 0xc5, 0x01, 0xd7, + 0xe0, 0x2a, 0x8b, 0xcf, 0x16, 0x33, 0xe3, 0xd6, 0xcc, 0x26, 0x30, 0x9e, 0xa3, 0xfb, 0xec, 0xf8, + 0xc2, 0x62, 0x03, 0x42, 0x5b, 0x88, 0x92, 0x23, 0x28, 0x55, 0x87, 0x7e, 0x2f, 0x98, 0x8e, 0xdd, + 0x8b, 0x5d, 0x03, 0x6e, 0xf3, 0x77, 0x59, 0x3b, 0x61, 0x62, 0x78, 0x7d, 0x88, 0x2b, 0xb9, 0x5c, + 0x11, 0x71, 0x63, 0x77, 0xe1, 0x22, 0x9a, 0x1c, 0xbf, 0xb6, 0xe0, 0xfb, 0x64, 0x89, 0x28, 0x97, + 0xf6, 0x85, 0xe7, 0xfe, 0xc4, 0x1e, 0x6c, 0x34, 0x7b, 0x61, 0xe4, 0x4e, 0x7a, 0x41, 0x88, 0xb8, + 0x4e, 0x17, 0xc0, 0xbd, 0x10, 0xf9, 0x71, 0x99, 0x29, 0x32, 0x8a, 0x45, 0x99, 0x29, 0x32, 0x5d, + 0x1d, 0x3d, 0x2f, 0xd5, 0x07, 0x41, 0x6f, 0x38, 0xf8, 0x48, 0x44, 0x55, 0xb0, 0xf3, 0xd2, 0x13, + 0x41, 0xb4, 0x93, 0xf2, 0xf2, 0xf7, 0x72, 0xfd, 0xc6, 0x5a, 0x59, 0x82, 0xab, 0x3c, 0xe6, 0x8e, + 0xc5, 0xa0, 0x75, 0x0c, 0xab, 0x66, 0x5a, 0x07, 0x9a, 0x42, 0x36, 0x00, 0x3a, 0x76, 0xbb, 0x6a, + 0x38, 0x0e, 0xfd, 0xad, 0xd2, 0xdf, 0x3c, 0x40, 0xad, 0xde, 0x6d, 0x6a, 0x05, 0x29, 0x46, 0xad, + 0x58, 0xfe, 0x85, 0x02, 0xd7, 0x67, 0x77, 0x25, 0x71, 0x01, 0xa3, 0x14, 0xf9, 0x85, 0xf0, 0xd7, + 0x17, 0xf6, 0xfb, 0x4c, 0x72, 0x36, 0xda, 0x31, 0x62, 0x51, 0x74, 0xaa, 0xb8, 0xf5, 0x49, 0x32, + 0xbb, 0x0e, 0xfa, 0xe5, 0x2a, 0x6c, 0xcf, 0xab, 0x23, 0xfd, 0xaa, 0x9b, 0x50, 0xd2, 0x3b, 0x9d, + 0xa6, 0x59, 0xd5, 0x5d, 0xb3, 0x6d, 0x69, 0x0a, 0x59, 0x85, 0xa5, 0x03, 0xbb, 0xdd, 0xed, 0x68, + 0x6a, 0xf9, 0x67, 0x0a, 0xac, 0x9b, 0x41, 0xe4, 0x9f, 0x32, 0x2f, 0xd5, 0x2f, 0x3a, 0xf9, 0xde, + 0x4a, 0x4d, 0xbe, 0xed, 0x38, 0x9e, 0x37, 0x7e, 0xc0, 0x85, 0x66, 0xde, 0xc7, 0x2a, 0x6c, 0xe5, + 0x64, 0x88, 0x03, 0x57, 0xf5, 0x63, 0xa7, 0x6d, 0xd6, 0xaa, 0xbc, 0x65, 0xe2, 0x54, 0xce, 0xa9, + 0xf9, 0xa7, 0xb0, 0x18, 0x98, 0x0f, 0x43, 0x6f, 0x34, 0xe8, 0x4b, 0xf9, 0xa4, 0x1a, 0x57, 0x6c, + 0x51, 0x13, 0xee, 0x64, 0x1f, 0x4d, 0x27, 0x3e, 0x56, 0xab, 0xa6, 0x2c, 0x9a, 0x31, 0x3d, 0x5f, + 0x31, 0x3a, 0x65, 0xf6, 0x68, 0x79, 0xbe, 0xea, 0xa4, 0x3e, 0x62, 0xc1, 0xf2, 0xc1, 0x20, 0x6a, + 0x4c, 0x1f, 0xf3, 0xf9, 0xbb, 0x97, 0xe0, 0xc9, 0x37, 0xa6, 0x8f, 0xf3, 0xd5, 0xa2, 0xb1, 0x8e, + 0xc5, 0xab, 0xa7, 0xaa, 0xe4, 0xb5, 0xec, 0xaf, 0x43, 0x89, 0x6b, 0x41, 0xa8, 0x60, 0xfc, 0x54, + 0x81, 0xed, 0x79, 0xef, 0x4e, 0x15, 0xab, 0x74, 0x80, 0xdd, 0xf5, 0x18, 0x61, 0x38, 0x1d, 0x59, + 0x27, 0xd8, 0xc8, 0x3b, 0x50, 0x62, 0xe9, 0xb7, 0x9d, 0x07, 0x5d, 0xdb, 0xe4, 0x03, 0xee, 0xd6, + 0xaf, 0x3f, 0xb9, 0x7d, 0x83, 0x25, 0xeb, 0xf6, 0xc2, 0x07, 0xde, 0x74, 0x32, 0x48, 0xa1, 0xb1, + 0xca, 0x12, 0xe5, 0x9f, 0x28, 0xb0, 0x33, 0xff, 0xa3, 0xd1, 0x5d, 0xcb, 0xa5, 0x67, 0xfd, 0x24, + 0x46, 0x09, 0x77, 0x2d, 0x3c, 0xff, 0x67, 0x82, 0x94, 0x62, 0x46, 0x2a, 0x14, 0x67, 0x7e, 0x54, + 0x73, 0x09, 0xdf, 0xd2, 0x42, 0x82, 0x11, 0x83, 0x22, 0xe7, 0x7c, 0x63, 0xf2, 0xad, 0x99, 0x20, + 0xe4, 0xe8, 0x0a, 0x2c, 0x83, 0x90, 0xa7, 0xd2, 0x53, 0xc8, 0x70, 0xe4, 0x6f, 0xc3, 0x12, 0x22, + 0x42, 0xf2, 0xc1, 0x42, 0x52, 0x5d, 0x8a, 0xb0, 0x90, 0x4c, 0xf7, 0x41, 0x26, 0x59, 0xf7, 0x41, + 0x42, 0xf9, 0x6f, 0x15, 0x28, 0x49, 0xbc, 0xe4, 0xf5, 0xcc, 0x0d, 0x91, 0xb0, 0xcd, 0x20, 0x49, + 0xee, 0x25, 0x71, 0x71, 0x74, 0x04, 0x1b, 0x98, 0xa8, 0x8f, 0x3b, 0xb1, 0x44, 0x02, 0x45, 0x75, + 0x2b, 0x4e, 0x2e, 0xd2, 0x10, 0x29, 0xb8, 0x59, 0xb6, 0xad, 0x14, 0xb3, 0xac, 0x13, 0xd1, 0x12, + 0x5d, 0x14, 0x94, 0xff, 0x4b, 0x85, 0xeb, 0x74, 0x12, 0x0f, 0xfd, 0x30, 0xa4, 0x54, 0x3f, 0x88, + 0xf8, 0xb1, 0x96, 0x7c, 0x03, 0x96, 0xcf, 0x2e, 0x67, 0x91, 0x65, 0xec, 0x84, 0x00, 0x6e, 0x8c, + 0xc2, 0xb1, 0x96, 0xfe, 0x4f, 0x5e, 0x04, 0x29, 0x29, 0x21, 0xce, 0x8b, 0xb5, 0x7d, 0x75, 0x5b, + 0xb1, 0x57, 0xc7, 0x71, 0x7a, 0xc2, 0x6f, 0xc2, 0x12, 0x5a, 0x61, 0xf8, 0x16, 0x25, 0x54, 0x8b, + 0xd9, 0xad, 0x43, 0x1b, 0x8d, 0xcd, 0x04, 0xc8, 0xeb, 0x00, 0x09, 0x02, 0x30, 0xdf, 0x83, 0x84, + 0x39, 0x23, 0x06, 0x01, 0xb6, 0x57, 0xcf, 0x9f, 0xf4, 0x38, 0xac, 0x6e, 0x05, 0xb6, 0xc4, 0x50, + 0x1a, 0x0b, 0xb8, 0x21, 0x7e, 0x4d, 0xb8, 0xc9, 0x0a, 0xcc, 0xb1, 0x80, 0x1c, 0xba, 0x03, 0x1b, + 0x61, 0x78, 0xe6, 0x49, 0xad, 0x47, 0xd4, 0x41, 0x7b, 0x2d, 0x0c, 0xcf, 0x92, 0xdc, 0x8a, 0x77, + 0x60, 0x23, 0x1a, 0x86, 0x32, 0xd7, 0x0a, 0xe3, 0x8a, 0x86, 0x61, 0xcc, 0x55, 0xfe, 0x0f, 0x15, + 0x56, 0x8f, 0xe9, 0xe1, 0x0f, 0x4d, 0x1a, 0x8b, 0x4d, 0x24, 0x6f, 0x40, 0xa9, 0x39, 0xea, 0xf1, + 0xfb, 0x98, 0x90, 0xa3, 0xa7, 0x61, 0xb0, 0xd4, 0x70, 0xd4, 0x13, 0x57, 0x3b, 0xa1, 0x2d, 0x33, + 0x7d, 0x46, 0xa0, 0xd7, 0xbb, 0xb0, 0xcc, 0xee, 0xc7, 0xb8, 0xf1, 0x4d, 0x1c, 0xff, 0xe3, 0x16, + 0xbd, 0xc6, 0x8a, 0xa5, 0x2b, 0x04, 0x76, 0xc7, 0x26, 0x9f, 0x45, 0x39, 0x78, 0x9a, 0x64, 0xc0, + 0x59, 0xba, 0x98, 0x01, 0x47, 0x02, 0x89, 0x59, 0xbe, 0x08, 0x48, 0xcc, 0xce, 0x43, 0x28, 0x49, + 0xed, 0xb9, 0x94, 0x36, 0xf0, 0x27, 0x2a, 0xac, 0xe3, 0x5b, 0xc5, 0xce, 0x32, 0xbf, 0x9b, 0xe6, + 0xa8, 0xb7, 0x52, 0xe6, 0xa8, 0x6d, 0xb9, 0xbf, 0xd8, 0x9b, 0x2d, 0xb0, 0x43, 0xbd, 0x0b, 0x5b, + 0x39, 0x46, 0xf2, 0x26, 0x2c, 0xd1, 0xe6, 0x0b, 0xf5, 0x5d, 0xcb, 0x8e, 0x80, 0x04, 0x50, 0x90, + 0xbe, 0x78, 0x68, 0x33, 0xee, 0xf2, 0xff, 0x28, 0xb0, 0xc6, 0xe1, 0xa5, 0x83, 0x27, 0xa3, 0xcf, + 0xfc, 0x9c, 0x77, 0xb3, 0x9f, 0x93, 0x85, 0x2d, 0xf3, 0xcf, 0xf9, 0x7f, 0xfd, 0x11, 0x1f, 0xa6, + 0x3e, 0xe2, 0x8d, 0x18, 0x5e, 0x48, 0xbc, 0xce, 0x82, 0x6f, 0xf8, 0xcf, 0x08, 0xb8, 0x97, 0x66, + 0x24, 0x3f, 0x80, 0x55, 0xcb, 0xff, 0x30, 0xa5, 0x05, 0xdf, 0x9d, 0x53, 0xe9, 0x6b, 0x31, 0x23, + 0x9b, 0x53, 0x78, 0x80, 0x08, 0xfc, 0x0f, 0xbd, 0xdc, 0xd5, 0x5c, 0x52, 0x25, 0x55, 0x84, 0xd3, + 0x62, 0x97, 0x19, 0xfa, 0x3c, 0x38, 0x06, 0x23, 0xf1, 0xff, 0xa9, 0x08, 0x90, 0xc4, 0x15, 0x5c, + 0x7e, 0xcf, 0xb9, 0xcb, 0x0d, 0xdd, 0xea, 0x7c, 0xf8, 0x27, 0x34, 0x79, 0x57, 0xb9, 0xdf, 0x7e, + 0xdf, 0x1f, 0xf6, 0xd8, 0xda, 0x5e, 0xd8, 0xbf, 0x83, 0x68, 0x7f, 0x31, 0x75, 0x4e, 0x9e, 0x40, + 0xf4, 0xee, 0xaf, 0x51, 0x86, 0x5c, 0xac, 0x4e, 0xf1, 0xf3, 0xc7, 0xea, 0x2c, 0x7d, 0x8e, 0x58, + 0x9d, 0xe5, 0x0b, 0xc6, 0xea, 0x74, 0x60, 0x75, 0x10, 0x7c, 0xe0, 0x07, 0xd1, 0x68, 0xf2, 0x14, + 0x3d, 0x0f, 0x12, 0xf3, 0x24, 0xfd, 0xd4, 0xa6, 0x28, 0x63, 0xfd, 0x8d, 0x87, 0x96, 0x98, 0x5f, + 0xee, 0xee, 0x98, 0x48, 0x7e, 0x0f, 0x92, 0x9b, 0x2c, 0x8e, 0x09, 0x3f, 0xff, 0xac, 0x73, 0x22, + 0x2e, 0xba, 0xbe, 0x0d, 0xe9, 0x0b, 0x2d, 0x1e, 0xe9, 0xca, 0x72, 0xda, 0xca, 0x05, 0xf2, 0x89, + 0xe6, 0x44, 0xba, 0xf3, 0xe2, 0xae, 0xcc, 0xbf, 0x51, 0x81, 0xe4, 0x1b, 0x4e, 0xde, 0x82, 0x12, + 0x5b, 0xfa, 0xbd, 0x49, 0xf8, 0x23, 0x1e, 0x60, 0xc2, 0x90, 0x16, 0x24, 0xb2, 0x8c, 0xb4, 0xc0, + 0xc8, 0x76, 0xf8, 0xa3, 0x21, 0xf9, 0x3e, 0x3c, 0x87, 0x1d, 0x3f, 0xf6, 0x27, 0x83, 0x51, 0xdf, + 0x43, 0x58, 0xbc, 0xde, 0x90, 0x67, 0x1b, 0x7a, 0x15, 0xd3, 0xe2, 0xe5, 0x8b, 0xe7, 0x0c, 0x10, + 0x8c, 0xe3, 0xe8, 0x20, 0x67, 0x87, 0x31, 0x12, 0x17, 0x34, 0x59, 0xfe, 0xc9, 0x74, 0x38, 0xe4, + 0x63, 0xae, 0xf2, 0xeb, 0x4f, 0x6e, 0xef, 0x64, 0xcb, 0xe6, 0x54, 0xbc, 0x91, 0x54, 0x5c, 0x9f, + 0x0e, 0x87, 0xe4, 0x1b, 0x00, 0xa3, 0xc0, 0x3b, 0x1f, 0x84, 0x21, 0xbb, 0x9c, 0x8a, 0x63, 0xb0, + 0x12, 0xaa, 0xdc, 0x7d, 0xa3, 0xa0, 0xc5, 0x88, 0xb4, 0xfb, 0xc6, 0xbd, 0x53, 0x1f, 0x23, 0x97, + 0x99, 0x23, 0x12, 0xc7, 0x0f, 0x17, 0xc4, 0xf4, 0x30, 0x3a, 0xf5, 0x9d, 0xc1, 0x47, 0xc2, 0x8f, + 0xfc, 0x7d, 0xd8, 0xe2, 0x2e, 0xc0, 0xc7, 0x83, 0xe8, 0x8c, 0xeb, 0x52, 0x5f, 0x44, 0x11, 0x93, + 0x94, 0xa9, 0x7f, 0x2d, 0x02, 0xe8, 0xc7, 0x8e, 0x00, 0x05, 0xb9, 0x07, 0x4b, 0x54, 0x43, 0x14, + 0x96, 0x26, 0x3c, 0xab, 0x62, 0xbd, 0xf2, 0x59, 0x15, 0x39, 0xe8, 0x3a, 0x61, 0xfb, 0xa7, 0x68, + 0xec, 0x54, 0x13, 0xb3, 0xd4, 0x84, 0x91, 0x52, 0x1a, 0x04, 0x23, 0x91, 0x26, 0x40, 0x02, 0xd3, + 0xc1, 0x75, 0x9e, 0xad, 0x24, 0xde, 0x9d, 0x17, 0x70, 0x60, 0xe8, 0x04, 0xea, 0x43, 0x1e, 0x3e, + 0x09, 0x1b, 0x39, 0x84, 0xa2, 0xdb, 0x8b, 0x23, 0x8c, 0xe6, 0x80, 0x97, 0xbc, 0xc0, 0xb3, 0x41, + 0x25, 0x00, 0x26, 0x1b, 0x51, 0x2f, 0x95, 0x34, 0x0f, 0x2b, 0x21, 0x06, 0x2c, 0xf3, 0x4c, 0x9f, + 0x73, 0x40, 0xaf, 0x78, 0xa2, 0x4f, 0x0e, 0x75, 0x89, 0x44, 0xf9, 0xb4, 0xc3, 0x73, 0x7a, 0xbe, + 0x01, 0x05, 0xc7, 0x69, 0xf1, 0x90, 0xdd, 0xf5, 0x44, 0xff, 0x74, 0x9c, 0x96, 0x48, 0x8c, 0x7c, + 0x2e, 0x89, 0x51, 0x66, 0xf2, 0xfb, 0x50, 0x92, 0xd4, 0x10, 0x1e, 0xec, 0x8e, 0xdf, 0x60, 0x90, + 0x90, 0xe5, 0xe5, 0x4c, 0xe2, 0x26, 0x4d, 0xd0, 0x0e, 0xa7, 0x8f, 0x7d, 0x7d, 0x3c, 0xc6, 0xe8, + 0x98, 0x0f, 0xfc, 0x09, 0x3b, 0x50, 0xae, 0x24, 0x28, 0x91, 0x5e, 0x6f, 0x3c, 0xf6, 0xfa, 0xa2, + 0x54, 0xb6, 0xb6, 0x65, 0x25, 0x49, 0x07, 0xb6, 0x1c, 0x3f, 0x9a, 0x8e, 0x99, 0x6b, 0x4d, 0x7d, + 0x34, 0xa1, 0xea, 0x21, 0x5b, 0x30, 0x10, 0x50, 0x2f, 0xa4, 0x85, 0xc2, 0x9f, 0xe9, 0xc9, 0x68, + 0x92, 0x51, 0x15, 0xf3, 0xc2, 0x65, 0x5f, 0xee, 0x72, 0xba, 0xdf, 0xa7, 0x95, 0x4e, 0xdc, 0xef, + 0x85, 0xd2, 0x99, 0xa8, 0x9a, 0xaf, 0xcf, 0x80, 0x6f, 0xc1, 0xab, 0x51, 0x09, 0xbe, 0x25, 0x05, + 0xda, 0xf2, 0x71, 0x51, 0x42, 0x10, 0xe3, 0x7d, 0xf1, 0x36, 0xc0, 0xbb, 0xa3, 0x41, 0xd0, 0xf2, + 0xa3, 0xb3, 0x51, 0x5f, 0x42, 0x91, 0x29, 0xfd, 0xe1, 0x68, 0x10, 0x78, 0xe7, 0x48, 0xfe, 0xcd, + 0x27, 0xb7, 0x25, 0x26, 0x5b, 0xfa, 0x9f, 0x7c, 0x15, 0x56, 0xe9, 0x2f, 0x37, 0x71, 0x10, 0x62, + 0x46, 0x69, 0x94, 0xe6, 0x09, 0xd6, 0x63, 0x06, 0xf2, 0x10, 0x91, 0xe5, 0x07, 0xe3, 0x48, 0x3a, + 0x56, 0x0b, 0x18, 0xf9, 0xc1, 0x38, 0xca, 0x82, 0x42, 0x4a, 0xcc, 0xa4, 0x11, 0x37, 0x5d, 0xe4, + 0x26, 0xe0, 0x00, 0xf6, 0x68, 0x79, 0xe5, 0x63, 0xcd, 0x13, 0x68, 0x74, 0x72, 0x16, 0xb9, 0x8c, + 0x18, 0x36, 0xc2, 0x69, 0xd4, 0xd8, 0x55, 0x19, 0xdf, 0xdd, 0x58, 0x23, 0xc2, 0xb3, 0xbe, 0x77, + 0x82, 0xe4, 0x54, 0x23, 0x62, 0x66, 0xb2, 0x0f, 0x9b, 0x4c, 0xfb, 0x88, 0x73, 0x1c, 0xf1, 0x9d, + 0x0e, 0xd7, 0xb6, 0x24, 0x09, 0x92, 0xfc, 0xf8, 0x8c, 0x00, 0xa9, 0xc3, 0x12, 0xaa, 0xf7, 0xdc, + 0xc1, 0xff, 0xa6, 0x6c, 0x27, 0xc9, 0xce, 0x23, 0x5c, 0x57, 0xd0, 0x42, 0x22, 0xaf, 0x2b, 0xc8, + 0x4a, 0xbe, 0x03, 0x60, 0x04, 0x93, 0xd1, 0x70, 0x88, 0x78, 0x89, 0x2b, 0xa8, 0xe4, 0xdd, 0x4a, + 0xcf, 0x47, 0xac, 0x25, 0x61, 0xe2, 0xd8, 0x3e, 0xf8, 0xdb, 0xcb, 0xa0, 0x2a, 0x4a, 0x75, 0x95, + 0x4d, 0x58, 0x66, 0x93, 0x11, 0xb1, 0x47, 0x39, 0x9a, 0xba, 0x84, 0x5c, 0xc9, 0xb0, 0x47, 0x39, + 0x3d, 0x8f, 0x3d, 0x2a, 0x09, 0x94, 0x0f, 0xe1, 0xda, 0xac, 0x17, 0x4b, 0x19, 0x24, 0x94, 0x8b, + 0x1a, 0x24, 0xfe, 0xb1, 0x00, 0x6b, 0x58, 0x9b, 0x58, 0x85, 0x75, 0x58, 0x77, 0xa6, 0x8f, 0x63, + 0x60, 0x0e, 0xb1, 0x1a, 0x63, 0xfb, 0x42, 0xb9, 0x40, 0x56, 0xd8, 0x53, 0x12, 0xc4, 0x80, 0x0d, + 0xb1, 0x13, 0x1c, 0x88, 0xa0, 0x81, 0x18, 0xf6, 0x53, 0x80, 0x4b, 0xe5, 0x73, 0xbc, 0x65, 0x84, + 0x92, 0xfd, 0xa0, 0x70, 0x99, 0xfd, 0xa0, 0x78, 0xa1, 0xfd, 0xe0, 0xbb, 0xb0, 0x26, 0x9e, 0x86, + 0x2b, 0xf9, 0xd2, 0x17, 0x5b, 0xc9, 0x53, 0x95, 0x91, 0x66, 0xbc, 0xa2, 0x2f, 0x2f, 0x5c, 0xd1, + 0xd1, 0x0a, 0x22, 0x66, 0x59, 0x2e, 0x6d, 0x33, 0xaf, 0x03, 0x93, 0x20, 0x1d, 0x54, 0x3b, 0x9f, + 0x63, 0x97, 0x7c, 0x13, 0x56, 0x9b, 0x23, 0x71, 0x29, 0x28, 0xdd, 0xc6, 0x0c, 0x05, 0x51, 0x3e, + 0x2e, 0xc4, 0x9c, 0xf1, 0xee, 0x56, 0x78, 0x16, 0xbb, 0xdb, 0x43, 0x00, 0x1e, 0x8d, 0x92, 0x24, + 0x2f, 0xc1, 0x29, 0x23, 0xe2, 0xae, 0xd3, 0x97, 0x42, 0x12, 0x33, 0x5d, 0x9d, 0xb8, 0xfb, 0x90, + 0x7e, 0x72, 0x32, 0x9a, 0x06, 0x51, 0x2a, 0xdb, 0x1f, 0x87, 0x60, 0xa0, 0x5b, 0x02, 0x96, 0xc9, + 0xcb, 0x43, 0x46, 0xec, 0xd9, 0x76, 0x08, 0x79, 0x2f, 0xf6, 0x7b, 0x5c, 0x98, 0xfc, 0xbc, 0x9c, + 0xfb, 0x42, 0x73, 0xbd, 0x1d, 0xcb, 0xbf, 0x50, 0x64, 0xcc, 0xe5, 0xcf, 0xd1, 0xd5, 0xdf, 0x04, + 0x88, 0xbd, 0x32, 0x44, 0x5f, 0x33, 0x4d, 0x2e, 0xa6, 0xca, 0x5f, 0x39, 0xe1, 0x95, 0xde, 0xa6, + 0xf0, 0xac, 0xde, 0xc6, 0x85, 0x52, 0xfb, 0x87, 0x51, 0x2f, 0x71, 0xe3, 0x01, 0x27, 0x3e, 0xc9, + 0xe2, 0xca, 0x24, 0x92, 0xb4, 0x27, 0xe7, 0xe0, 0xb9, 0x49, 0xda, 0x63, 0xc1, 0xf2, 0x7b, 0xb0, + 0x29, 0x07, 0x87, 0x3e, 0x0d, 0x4e, 0xc8, 0xb7, 0x18, 0x02, 0x9c, 0x92, 0xd2, 0x71, 0x24, 0x26, + 0xba, 0xe2, 0x3e, 0x0d, 0x4e, 0xd8, 0xf9, 0xa7, 0xf7, 0xa1, 0xdc, 0x56, 0xd4, 0x3e, 0x7f, 0xa5, + 0x00, 0xc9, 0xb3, 0xcb, 0xab, 0x89, 0xf2, 0xff, 0x70, 0xba, 0xcc, 0x9c, 0xca, 0x8a, 0x97, 0x39, + 0x95, 0x55, 0xfe, 0x4a, 0x81, 0x4d, 0x53, 0x6f, 0x71, 0x80, 0x64, 0x76, 0xbb, 0xf4, 0x22, 0xdc, + 0x32, 0xf5, 0x96, 0xd7, 0x69, 0x37, 0xcd, 0xea, 0x23, 0x6f, 0x26, 0xee, 0xe1, 0x2d, 0xf8, 0x52, + 0x9e, 0x25, 0xb9, 0x85, 0xda, 0x85, 0xed, 0x7c, 0xb1, 0xc0, 0x46, 0x9c, 0x2d, 0x2c, 0x60, 0x14, + 0x0b, 0x95, 0x77, 0x60, 0x53, 0xe0, 0x00, 0xba, 0x4d, 0x07, 0x91, 0x86, 0x37, 0xa1, 0x74, 0x64, + 0xd8, 0x66, 0xfd, 0x91, 0x57, 0xef, 0x36, 0x9b, 0xda, 0x15, 0xb2, 0x0e, 0xab, 0x9c, 0x50, 0xd5, + 0x35, 0x85, 0xac, 0xc1, 0x8a, 0x69, 0x39, 0x46, 0xb5, 0x6b, 0x1b, 0x9a, 0x5a, 0x79, 0x07, 0x36, + 0x3a, 0x93, 0xc1, 0x07, 0xbd, 0xc8, 0x3f, 0xf4, 0x9f, 0xe2, 0x25, 0xd2, 0x55, 0x28, 0xd8, 0xfa, + 0xb1, 0x76, 0x85, 0x00, 0x2c, 0x77, 0x0e, 0xab, 0xce, 0xfd, 0xfb, 0x9a, 0x42, 0x4a, 0x70, 0xf5, + 0xa0, 0xda, 0xf1, 0x0e, 0x5b, 0x8e, 0xa6, 0xd2, 0x1f, 0xfa, 0xb1, 0x83, 0x3f, 0x0a, 0x95, 0xaf, + 0xc1, 0x16, 0x9e, 0x15, 0x9a, 0x83, 0x30, 0xf2, 0x03, 0x7f, 0x82, 0x6d, 0x58, 0x83, 0x15, 0xc7, + 0xa7, 0x93, 0x3c, 0xf2, 0x59, 0x03, 0x5a, 0xd3, 0x61, 0x34, 0x18, 0x0f, 0xfd, 0x1f, 0x6b, 0x4a, + 0xe5, 0x21, 0x6c, 0xda, 0xa3, 0x69, 0x34, 0x08, 0x4e, 0x9d, 0x88, 0x72, 0x9c, 0x3e, 0x25, 0xcf, + 0xc3, 0x56, 0xd7, 0xd2, 0x5b, 0xfb, 0xe6, 0x41, 0xb7, 0xdd, 0x75, 0xbc, 0x96, 0xee, 0x56, 0x1b, + 0xec, 0x0a, 0xab, 0xd5, 0x76, 0x5c, 0xcf, 0x36, 0xaa, 0x86, 0xe5, 0x6a, 0x4a, 0xe5, 0xcf, 0x15, + 0xd8, 0xe8, 0x86, 0xdc, 0xed, 0xba, 0x8b, 0xc1, 0x93, 0x2f, 0xc0, 0x6e, 0xd7, 0x31, 0x6c, 0xcf, + 0x6d, 0x1f, 0x1a, 0x96, 0xd7, 0x75, 0xf4, 0x83, 0x2c, 0xe8, 0xe6, 0x6d, 0xb8, 0x29, 0x71, 0xd8, + 0x46, 0xb5, 0x7d, 0x64, 0xd8, 0x5e, 0x47, 0x77, 0x9c, 0xe3, 0xb6, 0x5d, 0xd3, 0x14, 0xb2, 0x03, + 0xd7, 0x67, 0x30, 0xb4, 0xea, 0xba, 0xa6, 0xe6, 0xca, 0x2c, 0xe3, 0x58, 0x6f, 0x7a, 0xfb, 0x6d, + 0x57, 0x2b, 0x54, 0x5a, 0x74, 0xa3, 0x43, 0xb0, 0x39, 0x96, 0x55, 0x60, 0x05, 0x8a, 0x56, 0xdb, + 0x32, 0xb2, 0xd7, 0x8c, 0x6b, 0xb0, 0xa2, 0x77, 0x3a, 0x76, 0xfb, 0x08, 0x3b, 0x14, 0x60, 0xb9, + 0x66, 0x58, 0xb4, 0x65, 0x05, 0x5a, 0xd2, 0xb1, 0xdb, 0xad, 0xb6, 0x6b, 0xd4, 0xb4, 0x62, 0xc5, + 0x16, 0x13, 0x46, 0x54, 0x7a, 0x32, 0x62, 0x77, 0x7a, 0x35, 0xa3, 0xae, 0x77, 0x9b, 0x2e, 0xff, + 0x20, 0x8f, 0x3c, 0xdb, 0x78, 0xaf, 0x6b, 0x38, 0xae, 0xa3, 0x29, 0x44, 0x83, 0x35, 0xcb, 0x30, + 0x6a, 0x8e, 0x67, 0x1b, 0x47, 0xa6, 0x71, 0xac, 0xa9, 0xb4, 0x4e, 0xf6, 0x3f, 0x7d, 0x42, 0xe5, + 0x63, 0x05, 0x08, 0x03, 0xea, 0x13, 0xe8, 0xef, 0xd8, 0x3f, 0x7b, 0xb0, 0xd3, 0xa0, 0x1f, 0x16, + 0x5f, 0xad, 0xd5, 0xae, 0x65, 0x3f, 0xd9, 0x75, 0x20, 0x99, 0xf2, 0x76, 0xbd, 0xae, 0x29, 0xe4, + 0x26, 0x3c, 0x97, 0xa1, 0xd7, 0xec, 0x76, 0x47, 0x53, 0x77, 0xd4, 0x15, 0x85, 0xdc, 0xc8, 0x15, + 0x1e, 0x1a, 0x46, 0x47, 0x2b, 0xd0, 0x2e, 0xca, 0x14, 0x88, 0x01, 0xc8, 0xc4, 0x8b, 0x95, 0x9f, + 0x28, 0x70, 0x9d, 0x35, 0x53, 0x8c, 0xe6, 0xb8, 0xa9, 0xbb, 0xb0, 0xcd, 0xe1, 0x47, 0x67, 0x35, + 0xf4, 0x1a, 0x68, 0xa9, 0x52, 0xd6, 0xcc, 0xe7, 0x61, 0x2b, 0x45, 0xc5, 0x76, 0xa8, 0x74, 0xae, + 0xa6, 0xc8, 0xfb, 0x86, 0xe3, 0x7a, 0x46, 0xbd, 0xde, 0xb6, 0x5d, 0xd6, 0x90, 0x42, 0xa5, 0x0c, + 0x5b, 0x55, 0x7f, 0x12, 0x51, 0x1d, 0x24, 0x08, 0x07, 0xa3, 0x00, 0x9b, 0xb0, 0x0e, 0xab, 0xc6, + 0x77, 0x5c, 0xc3, 0x72, 0xcc, 0xb6, 0xa5, 0x5d, 0xa9, 0xec, 0x66, 0x78, 0xc4, 0xac, 0x71, 0x9c, + 0x86, 0x76, 0xa5, 0xd2, 0x83, 0x75, 0xe1, 0xe6, 0xcc, 0x46, 0xc5, 0x1e, 0xec, 0x88, 0xb1, 0x86, + 0xf3, 0x37, 0xfb, 0x0a, 0xdb, 0x70, 0x2d, 0x5f, 0x6e, 0xb8, 0x9a, 0x42, 0x7b, 0x21, 0x53, 0x42, + 0xe9, 0x6a, 0xe5, 0x1f, 0x14, 0xd8, 0xe6, 0x79, 0x56, 0xf9, 0xdd, 0x06, 0x43, 0x3c, 0x47, 0x48, + 0xc0, 0x0a, 0xdc, 0x75, 0xed, 0xae, 0xe3, 0x1a, 0x35, 0xaf, 0x66, 0x1c, 0x99, 0x55, 0x03, 0x87, + 0x8b, 0x69, 0x1b, 0x2d, 0xc3, 0x72, 0x33, 0x8f, 0x7e, 0x05, 0xbe, 0xb2, 0x80, 0xd7, 0x6a, 0xbb, + 0xe2, 0x37, 0x9d, 0x25, 0x5f, 0x81, 0x2f, 0x2f, 0x60, 0x8e, 0x19, 0xd5, 0xca, 0xf7, 0x60, 0x2d, + 0x95, 0xc5, 0xe5, 0x06, 0x3c, 0x27, 0xff, 0xee, 0xf8, 0x41, 0x7f, 0x10, 0x9c, 0x6a, 0x57, 0xb2, + 0x05, 0xf6, 0x34, 0x08, 0x68, 0x01, 0x4e, 0x48, 0xb9, 0xc0, 0xf5, 0x27, 0xe7, 0x83, 0xa0, 0x17, + 0xf9, 0x7d, 0x4d, 0xad, 0xbc, 0x06, 0xeb, 0x29, 0xec, 0x48, 0xfa, 0xe5, 0x9b, 0x6d, 0xbe, 0x5e, + 0xb5, 0x8c, 0x9a, 0xd9, 0x6d, 0x69, 0x4b, 0x74, 0x2a, 0x36, 0xcc, 0x83, 0x86, 0x06, 0x95, 0x9f, + 0x29, 0xf4, 0xc4, 0x8c, 0xdf, 0xa7, 0x55, 0xd7, 0x45, 0x5f, 0xd1, 0x71, 0xc2, 0x10, 0x69, 0x0d, + 0xc7, 0x61, 0xd7, 0xe3, 0xbb, 0xb0, 0xcd, 0x7f, 0x78, 0xba, 0x55, 0xf3, 0x1a, 0xba, 0x5d, 0x3b, + 0xd6, 0x6d, 0x3a, 0x78, 0x1e, 0x69, 0x2a, 0xce, 0x08, 0x89, 0xe2, 0xb9, 0xed, 0x6e, 0xb5, 0xa1, + 0x15, 0xe8, 0x00, 0x4c, 0xd1, 0x3b, 0xa6, 0xa5, 0x15, 0x71, 0x7e, 0xe5, 0xb8, 0xb1, 0x5a, 0x5a, + 0xbe, 0x54, 0xf9, 0x54, 0x81, 0x1b, 0xce, 0xe0, 0x34, 0xe8, 0x45, 0xd3, 0x89, 0xaf, 0x0f, 0x4f, + 0x47, 0x93, 0x41, 0x74, 0x76, 0xee, 0x4c, 0x07, 0x91, 0x4f, 0xee, 0xc1, 0x4b, 0x8e, 0x79, 0x60, + 0xe9, 0x2e, 0x9d, 0x1f, 0x7a, 0xf3, 0xa0, 0x6d, 0x9b, 0x6e, 0xa3, 0xe5, 0x39, 0x5d, 0x33, 0x37, + 0x74, 0xee, 0xc0, 0x0b, 0xf3, 0x59, 0x9b, 0xc6, 0x81, 0x5e, 0x7d, 0xa4, 0x29, 0x8b, 0x2b, 0xdc, + 0xd7, 0x9b, 0xba, 0x55, 0x35, 0x6a, 0xde, 0xd1, 0x7d, 0x4d, 0x25, 0x2f, 0xc1, 0x8b, 0xf3, 0x59, + 0xeb, 0x66, 0xc7, 0xa1, 0x6c, 0x85, 0xc5, 0xcf, 0x6d, 0x38, 0x2d, 0xca, 0x55, 0xac, 0x0c, 0x40, + 0xcb, 0x46, 0xc5, 0xe7, 0x9c, 0x31, 0xec, 0xae, 0x65, 0xb1, 0x55, 0x72, 0x13, 0x4a, 0x6d, 0xb7, + 0x61, 0xd8, 0x1c, 0x18, 0x19, 0x91, 0x90, 0xbb, 0x96, 0xde, 0x75, 0x1b, 0x6d, 0xdb, 0x7c, 0x1f, + 0x97, 0xcb, 0x6d, 0xb8, 0xe6, 0x34, 0xf5, 0xea, 0x21, 0x8e, 0x4c, 0xd3, 0xf2, 0xaa, 0x0d, 0xdd, + 0xb2, 0x8c, 0xa6, 0x06, 0x95, 0xbf, 0x57, 0x98, 0x57, 0xc4, 0xac, 0xf0, 0x39, 0xf2, 0x55, 0x78, + 0xb9, 0x7d, 0xe8, 0xea, 0x5e, 0xa7, 0xd9, 0x3d, 0x30, 0x2d, 0xcf, 0x79, 0x64, 0x55, 0xc5, 0x46, + 0x5a, 0xcd, 0xaf, 0x28, 0x2f, 0xc3, 0x9d, 0x85, 0xdc, 0x09, 0x84, 0xf1, 0x5d, 0x28, 0x2f, 0xe4, + 0xe4, 0x2f, 0x52, 0xf9, 0xa5, 0x02, 0x37, 0x17, 0xdc, 0x62, 0x92, 0x57, 0xe1, 0x5e, 0xc3, 0xd0, + 0x6b, 0x4d, 0xc3, 0x71, 0x3c, 0xfa, 0xbe, 0x86, 0xe5, 0x72, 0xa7, 0x8d, 0x99, 0xeb, 0xc5, 0x3d, + 0x78, 0x69, 0x31, 0x7b, 0xb2, 0xf3, 0xbc, 0x0c, 0x77, 0x16, 0xb3, 0xf2, 0x9d, 0x48, 0xa5, 0xab, + 0xc6, 0x62, 0xce, 0x78, 0x07, 0x2b, 0x54, 0x7e, 0xaa, 0xc0, 0xf5, 0xd9, 0x0a, 0x3b, 0x6d, 0x9b, + 0x69, 0x39, 0xae, 0xde, 0x6c, 0x7a, 0x1d, 0xdd, 0xd6, 0x5b, 0x9e, 0x61, 0xd9, 0xed, 0x66, 0x73, + 0xd6, 0xca, 0x7d, 0x07, 0x5e, 0x98, 0xcf, 0xea, 0x54, 0x6d, 0xb3, 0x43, 0x97, 0xc0, 0x32, 0xec, + 0xcd, 0xe7, 0x32, 0xcc, 0xaa, 0xa1, 0xa9, 0xfb, 0x6f, 0xff, 0xfc, 0xdf, 0xf7, 0xae, 0xfc, 0xfc, + 0xd3, 0x3d, 0xe5, 0x57, 0x9f, 0xee, 0x29, 0xff, 0xf6, 0xe9, 0x9e, 0xf2, 0xfe, 0x2b, 0x97, 0x48, + 0x12, 0xff, 0x78, 0x19, 0xbd, 0x94, 0x1e, 0xfc, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x26, 0x8b, + 0x5e, 0x7c, 0xdd, 0x96, 0x01, 0x00, } func (this *PluginSpecV1) Equal(that interface{}) bool { @@ -31196,6 +31243,22 @@ func (m *RoleConditions) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.GithubPermissions) > 0 { + for iNdEx := len(m.GithubPermissions) - 1; iNdEx >= 0; iNdEx-- { + { + size, err := m.GithubPermissions[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 + } + } if len(m.SPIFFE) > 0 { for iNdEx := len(m.SPIFFE) - 1; iNdEx >= 0; iNdEx-- { { @@ -31629,6 +31692,42 @@ func (m *RoleConditions) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GitHubPermission) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubPermission) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubPermission) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Organizations) > 0 { + for iNdEx := len(m.Organizations) - 1; iNdEx >= 0; iNdEx-- { + i -= len(m.Organizations[iNdEx]) + copy(dAtA[i:], m.Organizations[iNdEx]) + i = encodeVarintTypes(dAtA, i, uint64(len(m.Organizations[iNdEx]))) + i-- + dAtA[i] = 0xa + } + } + return len(dAtA) - i, nil +} + func (m *SPIFFERoleCondition) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -49606,6 +49705,30 @@ func (m *RoleConditions) Size() (n int) { n += 2 + l + sovTypes(uint64(l)) } } + if len(m.GithubPermissions) > 0 { + for _, e := range m.GithubPermissions { + l = e.Size() + n += 2 + l + sovTypes(uint64(l)) + } + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *GitHubPermission) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if len(m.Organizations) > 0 { + for _, s := range m.Organizations { + l = len(s) + n += 1 + l + sovTypes(uint64(l)) + } + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -82609,6 +82732,123 @@ func (m *RoleConditions) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 42: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GithubPermissions", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GithubPermissions = append(m.GithubPermissions, GitHubPermission{}) + if err := m.GithubPermissions[len(m.GithubPermissions)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GitHubPermission) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubPermission: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubPermission: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Organizations", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Organizations = append(m.Organizations, string(dAtA[iNdEx:postIndex])) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) diff --git a/api/types/user.go b/api/types/user.go index 1af4c0717a30e..f60978b117323 100644 --- a/api/types/user.go +++ b/api/types/user.go @@ -121,6 +121,10 @@ type User interface { SetHostUserUID(uid string) // SetHostUserGID sets the GID for host users SetHostUserGID(gid string) + // SetGitHubUsername sets the GitHub username. + SetGitHubUsername(string) + // SetGitHubOrganizations sets the GitHub organizations. + SetGitHubOrganizations([]string) // GetCreatedBy returns information about user GetCreatedBy() CreatedBy // SetCreatedBy sets created by information @@ -408,6 +412,20 @@ func (u *UserV2) SetHostUserGID(uid string) { u.setTrait(constants.TraitHostUserGID, []string{uid}) } +// SetGitHubUsername sets the GitHub username. +func (u *UserV2) SetGitHubUsername(username string) { + if username == "" { + u.setTrait(constants.TraitGitHubUsername, nil) + } else { + u.setTrait(constants.TraitGitHubUsername, []string{username}) + } +} + +// SetGitHubOrganizations sets the GitHub organizations. +func (u *UserV2) SetGitHubOrganizations(orgs []string) { + u.setTrait(constants.TraitGitHubOrganizations, orgs) +} + // GetStatus returns login status of the user func (u *UserV2) GetStatus() LoginStatus { return u.Spec.Status diff --git a/api/utils/prompt/context_reader.go b/api/utils/prompt/context_reader.go index 0cb5c47192eef..1d94ff73794a8 100644 --- a/api/utils/prompt/context_reader.go +++ b/api/utils/prompt/context_reader.go @@ -189,6 +189,10 @@ func (cr *ContextReader) IsTerminal() bool { return cr.term.IsTerminal(cr.fd) } +func (cr *ContextReader) HandleInterrupt() { + cr.handleInterrupt() +} + // handleInterrupt restores terminal state on interrupts. // Called only on global ContextReaders, such as Stdin. func (cr *ContextReader) handleInterrupt() { diff --git a/api/utils/uri_test.go b/api/utils/uri_test.go index 8cb4c4aeb4509..7797fb1bf9f41 100644 --- a/api/utils/uri_test.go +++ b/api/utils/uri_test.go @@ -34,6 +34,7 @@ func TestParseSessionsURI(t *testing.T) { {info: "local default file system URI", in: "/home/log", url: &url.URL{Scheme: "file", Path: "/home/log"}}, {info: "explicit filesystem URI", in: "file:///home/log", url: &url.URL{Scheme: "file", Path: "/home/log"}}, {info: "other scheme", in: "other://my-bucket", url: &url.URL{Scheme: "other", Host: "my-bucket"}}, + {info: "other schemess", in: "s3://access.support.blueplanet.com/records", url: &url.URL{Scheme: "s3", Host: "access.support.blueplanet.com"}}, } for _, testCase := range testCases { t.Run(testCase.info, func(t *testing.T) { diff --git a/lib/auth/auth.go b/lib/auth/auth.go index 56592aeacdc3d..f2a99f9a47fc3 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -2980,6 +2980,11 @@ func generateCert(ctx context.Context, a *Server, req certRequest, caType types. // All users have access to this and join RBAC rules are checked after the connection is established. allowedLogins = append(allowedLogins, teleport.SSHSessionJoinPrincipal) + // Add git logins. + if githubUsername, ok := req.checker.Traits()[constants.TraitGitHubUsername]; ok { + allowedLogins = append(allowedLogins, githubUsername...) + } + requestedResourcesStr, err := types.ResourceIDsToString(req.checker.GetAllowedResourceIDs()) if err != nil { return nil, trace.Wrap(err) diff --git a/lib/auth/auth_with_roles.go b/lib/auth/auth_with_roles.go index 9e6cf9a4d618e..062827f126745 100644 --- a/lib/auth/auth_with_roles.go +++ b/lib/auth/auth_with_roles.go @@ -1502,6 +1502,13 @@ func (a *ServerWithRoles) ListUnifiedResources(ctx context.Context, req *proto.L continue } r.Logins = logins + } else if gitServer := r.GetGitServer(); gitServer != nil { + logins, err := checker.GetAllowedLoginsForResource(gitServer) + if err != nil { + log.WithError(err).WithField("resource", gitServer.GetName()).Warn("Unable to determine logins for git_server") + continue + } + r.Logins = logins } } } @@ -1715,6 +1722,7 @@ func (a *ServerWithRoles) ListResources(ctx context.Context, req proto.ListResou types.KindWindowsDesktop, types.KindWindowsDesktopService, types.KindUserGroup, + types.KindGitServer, types.KindSAMLIdPServiceProvider: default: @@ -1865,6 +1873,7 @@ func (a *ServerWithRoles) newResourceAccessChecker(resource string) (resourceAcc types.KindKubeServer, types.KindUserGroup, types.KindUnifiedResource, + types.KindGitServer, types.KindSAMLIdPServiceProvider: return &resourceChecker{AccessChecker: a.context.Checker}, nil default: diff --git a/lib/auth/authclient/api.go b/lib/auth/authclient/api.go index 8ec139f65ba57..2d4bc19dac75d 100644 --- a/lib/auth/authclient/api.go +++ b/lib/auth/authclient/api.go @@ -76,6 +76,9 @@ type Announcer interface { // UpsertDatabaseService registers a DatabaseService. UpsertDatabaseService(context.Context, types.DatabaseService) (*types.KeepAlive, error) + + // UpsertGitServer registers a Git server. + UpsertGitServer(context.Context, types.Server) (types.Server, error) } // accessPoint is an API interface implemented by a certificate authority (CA) @@ -306,6 +309,10 @@ type ReadProxyAccessPoint interface { // GetUserGroup returns the specified user group resources. GetUserGroup(ctx context.Context, name string) (types.UserGroup, error) + + // TODO + GetGitServer(ctx context.Context, name string) (types.Server, error) + GetGitServers(ctx context.Context) ([]types.Server, error) } // SnowflakeSessionWatcher is watcher interface used by Snowflake web session watcher. @@ -405,6 +412,10 @@ type ReadRemoteProxyAccessPoint interface { // GetDatabaseServers returns all registered database proxy servers. GetDatabaseServers(ctx context.Context, namespace string, opts ...services.MarshalOption) ([]types.DatabaseServer, error) + + // TODO + GetGitServer(ctx context.Context, name string) (types.Server, error) + GetGitServers(ctx context.Context) ([]types.Server, error) } // RemoteProxyAccessPoint is an API interface implemented by a certificate authority (CA) to be @@ -1189,6 +1200,8 @@ 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) + + services.GitServersGetter } type NodeWrapper struct { diff --git a/lib/auth/gitserver/gitserverv1/service.go b/lib/auth/gitserver/gitserverv1/service.go new file mode 100644 index 0000000000000..7d50f122f9a79 --- /dev/null +++ b/lib/auth/gitserver/gitserverv1/service.go @@ -0,0 +1,171 @@ +/* + * 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 . + */ + +package gitserverv1 + +import ( + "context" + "log/slog" + + "github.com/gravitational/teleport" + gitserverv1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/gitserver/v1" + "github.com/gravitational/teleport/api/types" + "github.com/gravitational/teleport/lib/authz" + "github.com/gravitational/teleport/lib/services" + "github.com/gravitational/trace" + "google.golang.org/protobuf/types/known/emptypb" +) + +// Config is the config for Service. +type Config struct { + Authorizer authz.Authorizer + Backend services.Presence + Cache services.GitServersGetter + Log *slog.Logger +} + +func (c *Config) CheckAndSetDefaults() error { + if c.Authorizer == nil { + return trace.BadParameter("authorizer is required") + } + if c.Backend == nil { + return trace.BadParameter("backend is required") + } + if c.Cache == nil { + return trace.BadParameter("cahe is required") + } + if c.Log == nil { + c.Log = slog.With(teleport.ComponentKey, "gitserver.service") + } + return nil +} + +type Service struct { + gitserverv1.UnsafeGitServerServiceServer + + cfg Config +} + +func NewService(cfg Config) (*Service, error) { + if err := cfg.CheckAndSetDefaults(); err != nil { + return nil, trace.Wrap(err) + } + return &Service{ + cfg: cfg, + }, nil +} + +func (s *Service) GetGitServer(ctx context.Context, req *gitserverv1.GetGitServerRequest) (*types.ServerV2, error) { + authCtx, err := s.authorize(ctx, types.VerbRead) + if err != nil { + return nil, trace.Wrap(err) + } + + server, err := s.cfg.Cache.GetGitServer(ctx, req.GetName()) + if err != nil { + return nil, trace.Wrap(err) + } + + if err := s.checkAccess(authCtx, server); err != nil { + if trace.IsAccessDenied(err) { + return nil, trace.NotFound("not found") + } + return nil, trace.Wrap(err) + } + + serverV2, ok := server.(*types.ServerV2) + if !ok { + return nil, trace.Errorf("encountered unexpected server type: %T", serverV2) + } + return serverV2, nil +} + +func (s *Service) UpsertGitServer(ctx context.Context, req *gitserverv1.UpsertGitServerRequest) (*types.ServerV2, error) { + authCtx, err := s.authorize(ctx, types.VerbCreate, types.VerbUpdate) + if err != nil { + return nil, trace.Wrap(err) + } + + server := types.Server(req.Server) + if err := services.CheckAndSetDefaults(server); err != nil { + return nil, trace.Wrap(err) + } + + if err := s.checkAccess(authCtx, server); err != nil { + return nil, trace.Wrap(err) + } + + prev, err := s.cfg.Cache.GetGitServer(ctx, server.GetName()) + if err == nil { + if err := s.checkAccess(authCtx, prev); err != nil { + return nil, trace.Wrap(err) + } + } else if !trace.IsNotFound(err) { + s.cfg.Log.DebugContext(ctx, "Failed to GetGitServer.", "error", err) + } + + upserted, err := s.cfg.Backend.UpsertGitServer(ctx, server) + if err != nil { + return nil, trace.Wrap(err) + } + + serverV2, ok := upserted.(*types.ServerV2) + if !ok { + return nil, trace.Errorf("encountered unexpected server type: %T", serverV2) + } + return serverV2, nil +} + +func (s *Service) DeleteGitServer(ctx context.Context, req *gitserverv1.DeleteGitServerRequest) (*emptypb.Empty, error) { + authCtx, err := s.authorize(ctx, types.VerbDelete) + if err != nil { + return nil, trace.Wrap(err) + } + + prev, err := s.cfg.Cache.GetGitServer(ctx, req.GetName()) + if err != nil { + return nil, trace.Wrap(err) + } + + if err := s.checkAccess(authCtx, prev); err != nil { + return nil, trace.Wrap(err) + } + + if err := s.cfg.Backend.DeleteGitServer(ctx, req.GetName()); err != nil { + return nil, trace.Wrap(err) + } + return &emptypb.Empty{}, nil +} + +func (s *Service) authorize(ctx context.Context, verb string, additionalVerbs ...string) (*authz.Context, error) { + authCtx, err := s.cfg.Authorizer.Authorize(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + if err := authCtx.CheckAccessToKind(types.KindGitServer, verb, additionalVerbs...); err != nil { + return nil, trace.Wrap(err) + } + return authCtx, nil +} + +func (s *Service) checkAccess(authCtx *authz.Context, server types.Server) error { + // MFA is not required for operations on git resources but will be enforced + // at the connection time. + state := services.AccessState{MFAVerified: true} + return trace.Wrap(authCtx.Checker.CheckAccess(server, state)) +} diff --git a/lib/auth/grpcserver.go b/lib/auth/grpcserver.go index f580ddad37405..8e07f04fef234 100644 --- a/lib/auth/grpcserver.go +++ b/lib/auth/grpcserver.go @@ -56,6 +56,7 @@ import ( dbobjectpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/dbobject/v1" dbobjectimportrulev12 "github.com/gravitational/teleport/api/gen/proto/go/teleport/dbobjectimportrule/v1" discoveryconfigpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/discoveryconfig/v1" + gitserverpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/gitserver/v1" integrationpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1" kubewaitingcontainerpb "github.com/gravitational/teleport/api/gen/proto/go/teleport/kubewaitingcontainer/v1" loginrulepb "github.com/gravitational/teleport/api/gen/proto/go/teleport/loginrule/v1" @@ -83,6 +84,7 @@ import ( "github.com/gravitational/teleport/lib/auth/dbobject/dbobjectv1" "github.com/gravitational/teleport/lib/auth/dbobjectimportrule/dbobjectimportrulev1" "github.com/gravitational/teleport/lib/auth/discoveryconfig/discoveryconfigv1" + "github.com/gravitational/teleport/lib/auth/gitserver/gitserverv1" integrationService "github.com/gravitational/teleport/lib/auth/integration/integrationv1" kubewaitingcontainerv1 "github.com/gravitational/teleport/lib/auth/kubewaitingcontainer" "github.com/gravitational/teleport/lib/auth/loginrule" @@ -5441,6 +5443,13 @@ func NewGRPCServer(cfg GRPCServerConfig) (*GRPCServer, error) { loginrulepb.RegisterLoginRuleServiceServer(server, loginrule.NotImplementedService{}) } + gitServerService, err := gitserverv1.NewService(gitserverv1.Config{ + Authorizer: cfg.Authorizer, + Backend: cfg.AuthServer.Services, + Cache: cfg.AuthServer.Cache, + }) + gitserverpb.RegisterGitServerServiceServer(server, gitServerService) + return authServer, nil } diff --git a/lib/auth/integration/integrationv1/service.go b/lib/auth/integration/integrationv1/service.go index e4db21a3ee27b..64a24e81540e7 100644 --- a/lib/auth/integration/integrationv1/service.go +++ b/lib/auth/integration/integrationv1/service.go @@ -412,9 +412,11 @@ func (s *Service) GenerateGitHubUserCert(ctx context.Context, in *integrationpb. } spec := integration.GetGitHubIntegrationSpec() + /*TODO removed Enabled if !spec.Proxy.Enabled { return nil, trace.BadParameter("GitHub Proxy for integration %s is disabled", in.Integration) } + */ caSigner, err := s.keyStoreManager.GetSSHSignerForKeySet(ctx, types.CAKeySet{ SSH: spec.Proxy.CertAuthority, diff --git a/lib/authz/permissions.go b/lib/authz/permissions.go index fc16841e602c5..63c548e0f3b11 100644 --- a/lib/authz/permissions.go +++ b/lib/authz/permissions.go @@ -796,6 +796,9 @@ func (a *authorizer) authorizeRemoteBuiltinRole(r RemoteBuiltinRole) (*Context, AppLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, DatabaseLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, KubernetesLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, + GithubPermissions: []types.GitHubPermission{{ + Organizations: []string{types.Wildcard}, + }}, Rules: []types.Rule{ types.NewRule(types.KindNode, services.RO()), types.NewRule(types.KindProxy, services.RO()), @@ -815,6 +818,7 @@ func (a *authorizer) authorizeRemoteBuiltinRole(r RemoteBuiltinRole) (*Context, types.NewRule(types.KindInstaller, services.RO()), types.NewRule(types.KindUIConfig, services.RO()), types.NewRule(types.KindDatabaseService, services.RO()), + types.NewRule(types.KindGitServer, services.RO()), // this rule allows remote proxy to update the cluster's certificate authorities // during certificates renewal { @@ -868,6 +872,9 @@ func roleSpecForProxy(clusterName string) types.RoleSpecV6 { DatabaseLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, DatabaseServiceLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, KubernetesLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, + GithubPermissions: []types.GitHubPermission{{ + Organizations: []string{types.Wildcard}, + }}, Rules: []types.Rule{ types.NewRule(types.KindProxy, services.RW()), types.NewRule(types.KindOIDCRequest, services.RW()), @@ -917,6 +924,7 @@ func roleSpecForProxy(clusterName string) types.RoleSpecV6 { types.NewRule(types.KindAuditQuery, services.RO()), types.NewRule(types.KindSecurityReport, services.RO()), types.NewRule(types.KindSecurityReportState, services.RO()), + types.NewRule(types.KindGitServer, services.RW()), // this rule allows cloud proxies to read // plugins of `openai` type, since Assist uses the OpenAI API and runs in Proxy. { @@ -1109,6 +1117,9 @@ func definitionForBuiltinRole(clusterName string, recConfig readonly.SessionReco DatabaseServiceLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, ClusterLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, WindowsDesktopLabels: types.Labels{types.Wildcard: []string{types.Wildcard}}, + GithubPermissions: []types.GitHubPermission{{ + Organizations: []string{types.Wildcard}, + }}, Rules: []types.Rule{ types.NewRule(types.Wildcard, services.RW()), types.NewRule(types.KindDevice, append(services.RW(), types.VerbCreateEnrollToken, types.VerbEnroll)), diff --git a/lib/cache/cache.go b/lib/cache/cache.go index f3320c43fecd9..7a66263f37c74 100644 --- a/lib/cache/cache.go +++ b/lib/cache/cache.go @@ -99,6 +99,7 @@ var highVolumeResources = map[string]struct{}{ types.KindWindowsDesktopService: {}, types.KindKubeServer: {}, types.KindDatabaseObject: {}, + types.KindGitServer: {}, } func isHighVolumeResource(kind string) bool { @@ -185,6 +186,7 @@ func ForAuth(cfg Config) Config { {Kind: types.KindAccessGraphSettings}, {Kind: types.KindSPIFFEFederation}, {Kind: types.KindStaticHostUser}, + {Kind: types.KindGitServer}, } cfg.QueueSize = defaults.AuthQueueSize // We don't want to enable partial health for auth cache because auth uses an event stream @@ -237,6 +239,7 @@ func ForProxy(cfg Config) Config { {Kind: types.KindSecurityReport}, {Kind: types.KindSecurityReportState}, {Kind: types.KindKubeWaitingContainer}, + {Kind: types.KindGitServer}, } cfg.QueueSize = defaults.ProxyQueueSize return cfg @@ -265,6 +268,7 @@ func ForRemoteProxy(cfg Config) Config { {Kind: types.KindDatabaseServer}, {Kind: types.KindDatabaseService}, {Kind: types.KindKubeServer}, + {Kind: types.KindGitServer}, } cfg.QueueSize = defaults.ProxyQueueSize return cfg @@ -3339,3 +3343,27 @@ func (c *Cache) GetAccessGraphSettings(ctx context.Context) (*clusterconfigpb.Ac } return rg.reader.GetAccessGraphSettings(ctx) } + +// TODO +func (c *Cache) GetGitServer(ctx context.Context, name string) (types.Server, error) { + ctx, span := c.Tracer.Start(ctx, "cache/GetGitServer") + defer span.End() + + rg, err := readCollectionCache(c, c.collections.gitServers) + if err != nil { + return nil, trace.Wrap(err) + } + defer rg.Release() + return rg.reader.GetGitServer(ctx, name) +} +func (c *Cache) GetGitServers(ctx context.Context) ([]types.Server, error) { + ctx, span := c.Tracer.Start(ctx, "cache/GetGitServers") + defer span.End() + + rg, err := readCollectionCache(c, c.collections.gitServers) + if err != nil { + return nil, trace.Wrap(err) + } + defer rg.Release() + return rg.reader.GetGitServers(ctx) +} diff --git a/lib/cache/collections.go b/lib/cache/collections.go index 747ede4464b61..6dfd280dd1748 100644 --- a/lib/cache/collections.go +++ b/lib/cache/collections.go @@ -254,6 +254,7 @@ type cacheCollections struct { globalNotifications collectionReader[notificationGetter] accessMonitoringRules collectionReader[accessMonitoringRuleGetter] spiffeFederations collectionReader[SPIFFEFederationReader] + gitServers collectionReader[services.GitServersGetter] } // setupCollections returns a registry of collections. @@ -394,6 +395,16 @@ func setupCollections(c *Cache, watches []types.WatchKind) (*cacheCollections, e watch: watch, } collections.byKind[resourceKind] = collections.nodes + case types.KindGitServer: + if c.Presence == nil { + return nil, trace.BadParameter("missing parameter Presence") + } + collections.gitServers = &genericCollection[types.Server, services.GitServersGetter, gitServerExecutor]{ + cache: c, + watch: watch, + } + collections.byKind[resourceKind] = collections.gitServers + case types.KindProxy: if c.Presence == nil { return nil, trace.BadParameter("missing parameter Presence") @@ -3359,3 +3370,33 @@ type accessGraphSettingsGetter interface { } var _ executor[*clusterconfigpb.AccessGraphSettings, accessGraphSettingsGetter] = accessGraphSettingsExecutor{} + +type gitServerExecutor struct{} + +func (gitServerExecutor) getAll(ctx context.Context, cache *Cache, loadSecrets bool) ([]types.Server, error) { + return cache.Presence.GetGitServers(ctx) +} + +func (gitServerExecutor) upsert(ctx context.Context, cache *Cache, resource types.Server) error { + _, err := cache.presenceCache.UpsertGitServer(ctx, resource) + return trace.Wrap(err) +} + +func (gitServerExecutor) deleteAll(ctx context.Context, cache *Cache) error { + return cache.presenceCache.DeleteAllGitServers(ctx) +} + +func (gitServerExecutor) delete(ctx context.Context, cache *Cache, resource types.Resource) error { + return cache.presenceCache.DeleteGitServer(ctx, resource.GetName()) +} + +func (gitServerExecutor) isSingleton() bool { return false } + +func (gitServerExecutor) getReader(cache *Cache, cacheOK bool) services.GitServersGetter { + if cacheOK { + return cache.presenceCache + } + return cache.Config.Presence +} + +var _ executor[types.Server, services.GitServersGetter] = gitServerExecutor{} diff --git a/lib/client/session.go b/lib/client/session.go index 6a1a7a9984d27..0286d19a7e15f 100644 --- a/lib/client/session.go +++ b/lib/client/session.go @@ -23,7 +23,6 @@ import ( "errors" "fmt" "io" - "log/slog" "net" "os" "os/signal" @@ -170,8 +169,6 @@ func newSession(ctx context.Context, } ns.env[sshutils.SessionEnvVar] = string(ns.id) - slog.DebugContext(ctx, "=== are we here?") - ns.env["GIT_PROTOCOL"] = "version=2" // Close the Terminal when finished. ns.closeWait.Add(1) diff --git a/lib/events/api.go b/lib/events/api.go index b827856da3c08..1a65cef644617 100644 --- a/lib/events/api.go +++ b/lib/events/api.go @@ -249,6 +249,9 @@ const ( ExecEventCode = "exitCode" ExecEventError = "exitError" + // GitCommand is an exec command executed by `git`. + GitCommandEvent = "git.command" + // SubsystemEvent is the result of the execution of a subsystem. SubsystemEvent = "subsystem" SubsystemName = "name" diff --git a/lib/events/codes.go b/lib/events/codes.go index d0cb174b31bf7..c7049d6cfce23 100644 --- a/lib/events/codes.go +++ b/lib/events/codes.go @@ -319,6 +319,11 @@ const ( // KubernetesClusterDeleteCode is the kube.delete event code. KubernetesClusterDeleteCode = "T3012I" + // GitCommandCode is the git command event code + GitCommandCode = "T3013I" + // GitCommandCode is the git command feature event code. + GitCommandFailureCode = "T3013E" + // The following codes correspond to SFTP file operations. SFTPOpenCode = "TS001I" SFTPOpenFailureCode = "TS001E" diff --git a/lib/events/dynamic.go b/lib/events/dynamic.go index 96de3d52f54dc..00e1316bf3535 100644 --- a/lib/events/dynamic.go +++ b/lib/events/dynamic.go @@ -420,6 +420,8 @@ func FromEventFields(fields EventFields) (events.AuditEvent, error) { e = &events.PluginUpdate{} case PluginDeleteEvent: e = &events.PluginDelete{} + case GitCommandEvent: + e = &events.GitCommand{} default: log.Errorf("Attempted to convert dynamic event of unknown type %q into protobuf event.", eventType) unknown := &events.Unknown{} diff --git a/lib/proxy/router.go b/lib/proxy/router.go index 4028ab026bd9a..945ec8ead42e6 100644 --- a/lib/proxy/router.go +++ b/lib/proxy/router.go @@ -23,8 +23,10 @@ import ( "context" "errors" "fmt" + "log/slog" "net" "os" + "strings" "sync" "github.com/gravitational/trace" @@ -33,6 +35,7 @@ import ( "go.opentelemetry.io/otel/attribute" oteltrace "go.opentelemetry.io/otel/trace" "golang.org/x/crypto/ssh" + "golang.org/x/exp/rand" "github.com/gravitational/teleport" "github.com/gravitational/teleport/api/observability/tracing" @@ -282,6 +285,10 @@ func (r *Router) DialHost(ctx context.Context, clientSrcAddr, clientDstAddr net. return nil, trace.Wrap(err) } } + } else if target.GetGitHub() != nil { + agentGetter = nil + isAgentlessNode = true + serverAddr = "github.com:22" } } else { @@ -382,6 +389,7 @@ func (r *Router) getRemoteCluster(ctx context.Context, clusterName string, check // for a reversetunnelclient.RemoteSite. It makes testing easier. type site interface { GetNodes(ctx context.Context, fn func(n services.Node) bool) ([]types.Server, error) + GetGitServers(ctx context.Context, fn func(n services.GitServer) bool) ([]types.Server, error) GetClusterNetworkingConfig(ctx context.Context) (types.ClusterNetworkingConfig, error) } @@ -401,6 +409,16 @@ func (r remoteSite) GetNodes(ctx context.Context, fn func(n services.Node) bool) return watcher.GetNodes(ctx, fn), nil } +// GetGitServers uses the wrapped sites GitServerWatcher to filter git servers. +func (r remoteSite) GetGitServers(ctx context.Context, fn func(n services.GitServer) bool) ([]types.Server, error) { + watcher, err := r.site.GitServerWatcher() + if err != nil { + return nil, trace.Wrap(err) + } + + return watcher.GetGitServers(ctx, fn), nil +} + // GetClusterNetworkingConfig uses the wrapped sites cache to retrieve the ClusterNetworkingConfig func (r remoteSite) GetClusterNetworkingConfig(ctx context.Context) (types.ClusterNetworkingConfig, error) { ap, err := r.site.CachingAccessPoint() @@ -420,6 +438,24 @@ func getServer(ctx context.Context, host, port string, site site) (types.Server, var disableUnqualifiedLookups = os.Getenv("TELEPORT_UNSTABLE_DISABLE_UNQUALIFIED_LOOKUPS") == "yes" +func getGitHubServer(ctx context.Context, org string, site site) (types.Server, error) { + servers, err := site.GetGitServers(ctx, func(s services.GitServer) bool { + github := s.GetGitHub() + return github != nil && github.Organization == org + }) + if err != nil { + return nil, trace.Wrap(err) + } + + slog.DebugContext(ctx, "=== routing getGitServer", "servers", servers) + if len(servers) == 0 { + return nil, trace.NotFound("unable to locate github server for organization %s", org) + } + + i := rand.Intn(len(servers)) + return servers[i], nil +} + // getServerWithResolver attempts to locate a node matching the provided host and port in // the provided site. The resolver argument is used in certain tests to mock DNS resolution // and can generally be left nil. @@ -428,6 +464,10 @@ func getServerWithResolver(ctx context.Context, host, port string, site site, re return nil, trace.BadParameter("invalid remote site provided") } + if strings.HasSuffix(host, "."+types.GitHubServerDomain) { + return getGitHubServer(ctx, strings.TrimSuffix(host, "."+types.GitHubServerDomain), site) + } + strategy := types.RoutingStrategy_UNAMBIGUOUS_MATCH var caseInsensitiveRouting bool if cfg, err := site.GetClusterNetworkingConfig(ctx); err == nil { diff --git a/lib/reversetunnel/localsite.go b/lib/reversetunnel/localsite.go index 6147d12d87b11..529fd7e1cc664 100644 --- a/lib/reversetunnel/localsite.go +++ b/lib/reversetunnel/localsite.go @@ -21,6 +21,7 @@ package reversetunnel import ( "context" "fmt" + "log/slog" "net" "slices" "sync" @@ -197,6 +198,11 @@ func (s *localSite) NodeWatcher() (*services.NodeWatcher, error) { return s.srv.NodeWatcher, nil } +// GitServerWatcher returns a services.GitServerWatcher for this cluster. +func (s *localSite) GitServerWatcher() (*services.GitServerWatcher, error) { + return s.srv.GitServerWatcher, nil +} + // GetClient returns a client to the full Auth Server API. func (s *localSite) GetClient() (authclient.ClientI, error) { return s.client, nil @@ -252,6 +258,11 @@ func shouldDialAndForward(params reversetunnelclient.DialParams, recConfig types if params.TargetServer != nil && params.TargetServer.IsOpenSSHNode() { return true } + // forward git servers + if params.TargetServer != nil && params.TargetServer.GetGitHub() != nil { + slog.DebugContext(context.Background(), "=== shouldDialAndForward", "github", params.TargetServer.GetGitHub().Organization) + return true + } // proxy session recording mode is being used and an SSH session // is being requested, the connection must be forwarded if params.ConnType == types.NodeTunnel && services.IsRecordAtProxy(recConfig.GetMode()) { diff --git a/lib/reversetunnel/peer.go b/lib/reversetunnel/peer.go index fc16cbe11cefa..fb0ff419aaa6f 100644 --- a/lib/reversetunnel/peer.go +++ b/lib/reversetunnel/peer.go @@ -98,6 +98,14 @@ func (p *clusterPeers) NodeWatcher() (*services.NodeWatcher, error) { return peer.NodeWatcher() } +func (p *clusterPeers) GitServerWatcher() (*services.GitServerWatcher, error) { + peer, err := p.pickPeer() + if err != nil { + return nil, trace.Wrap(err) + } + return peer.GitServerWatcher() +} + func (p *clusterPeers) GetClient() (authclient.ClientI, error) { peer, err := p.pickPeer() if err != nil { @@ -206,6 +214,10 @@ func (s *clusterPeer) NodeWatcher() (*services.NodeWatcher, error) { return nil, trace.ConnectionProblem(nil, "unable to fetch node watcher, this proxy %v has not been discovered yet, try again later", s) } +func (s *clusterPeer) GitServerWatcher() (*services.GitServerWatcher, error) { + return nil, trace.ConnectionProblem(nil, "unable to fetch git server watcher, this proxy %v has not been discovered yet, try again later", s) +} + func (s *clusterPeer) GetClient() (authclient.ClientI, error) { return nil, trace.ConnectionProblem(nil, "unable to fetch client, this proxy %v has not been discovered yet, try again later", s) } diff --git a/lib/reversetunnel/remotesite.go b/lib/reversetunnel/remotesite.go index 8e8b7e4c3fe79..db4e1adc2130e 100644 --- a/lib/reversetunnel/remotesite.go +++ b/lib/reversetunnel/remotesite.go @@ -86,6 +86,8 @@ type remoteSite struct { // nodeWatcher provides access the node set for the remote site nodeWatcher *services.NodeWatcher + // gitServerWatcher provides access the git server set for the remote site + gitServerWatcher *services.GitServerWatcher // remoteCA is the last remote certificate authority recorded by the client. // It is used to detect CA rotation status changes. If the rotation @@ -168,6 +170,11 @@ func (s *remoteSite) NodeWatcher() (*services.NodeWatcher, error) { return s.nodeWatcher, nil } +// GitServerWatcher returns the services.GitServerWatcher for the remote cluster. +func (s *remoteSite) GitServerWatcher() (*services.GitServerWatcher, error) { + return s.gitServerWatcher, nil +} + func (s *remoteSite) GetClient() (authclient.ClientI, error) { return s.remoteClient, nil } diff --git a/lib/reversetunnel/srv.go b/lib/reversetunnel/srv.go index d4557a2c75922..83296dad6a058 100644 --- a/lib/reversetunnel/srv.go +++ b/lib/reversetunnel/srv.go @@ -203,6 +203,9 @@ type Config struct { // NodeWatcher is a node watcher. NodeWatcher *services.NodeWatcher + // GitServerWatcher is a git server watcher + GitServerWatcher *services.GitServerWatcher + // CertAuthorityWatcher is a cert authority watcher. CertAuthorityWatcher *services.CertAuthorityWatcher @@ -272,6 +275,9 @@ func (cfg *Config) CheckAndSetDefaults() error { if cfg.NodeWatcher == nil { return trace.BadParameter("missing parameter NodeWatcher") } + if cfg.GitServerWatcher == nil { + return trace.BadParameter("missing parameter GitServerWatcher") + } if cfg.CertAuthorityWatcher == nil { return trace.BadParameter("missing parameter CertAuthorityWatcher") } @@ -1222,6 +1228,19 @@ func newRemoteSite(srv *server, domainName string, sconn ssh.Conn) (*remoteSite, return nil, trace.Wrap(err) } remoteSite.nodeWatcher = nodeWatcher + gitServerWatcher, err := services.NewGitServerWatcher(closeContext, services.GitServerWatcherConfig{ + ResourceWatcherConfig: services.ResourceWatcherConfig{ + Component: srv.Component, + Client: accessPoint, + Log: srv.Log, + MaxStaleness: time.Minute, + }, + GitServersGetter: accessPoint, + }) + if err != nil { + return nil, trace.Wrap(err) + } + remoteSite.gitServerWatcher = gitServerWatcher // instantiate a cache of host certificates for the forwarding server. the // certificate cache is created in each site (instead of creating it in // reversetunnel.server and passing it along) so that the host certificate diff --git a/lib/reversetunnelclient/api.go b/lib/reversetunnelclient/api.go index f7e8dfb47ef63..570c5cad4e111 100644 --- a/lib/reversetunnelclient/api.go +++ b/lib/reversetunnelclient/api.go @@ -124,6 +124,8 @@ type RemoteSite interface { CachingAccessPoint() (authclient.RemoteProxyAccessPoint, error) // NodeWatcher returns the node watcher that maintains the node set for the site NodeWatcher() (*services.NodeWatcher, error) + // TODO + GitServerWatcher() (*services.GitServerWatcher, error) // GetTunnelsCount returns the amount of active inbound tunnels // from the remote cluster GetTunnelsCount() int diff --git a/lib/service/service.go b/lib/service/service.go index 792a465ba46a2..7f05e6baeee3b 100644 --- a/lib/service/service.go +++ b/lib/service/service.go @@ -4322,6 +4322,18 @@ func (process *TeleportProcess) initProxyEndpoint(conn *Connector) error { if err != nil { return trace.Wrap(err) } + gitServerWatcher, err := services.NewGitServerWatcher(process.ExitContext(), services.GitServerWatcherConfig{ + ResourceWatcherConfig: services.ResourceWatcherConfig{ + Component: teleport.ComponentProxy, + Log: process.log.WithField(teleport.ComponentKey, teleport.ComponentProxy), + Client: accessPoint, + MaxStaleness: time.Minute, + }, + GitServersGetter: accessPoint, + }) + if err != nil { + return trace.Wrap(err) + } caWatcher, err := services.NewCertAuthorityWatcher(process.ExitContext(), services.CertAuthorityWatcherConfig{ ResourceWatcherConfig: services.ResourceWatcherConfig{ @@ -4415,6 +4427,7 @@ func (process *TeleportProcess) initProxyEndpoint(conn *Connector) error { LockWatcher: lockWatcher, PeerClient: peerClient, NodeWatcher: nodeWatcher, + GitServerWatcher: gitServerWatcher, CertAuthorityWatcher: caWatcher, CircuitBreakerConfig: process.Config.CircuitBreakerConfig, LocalAuthAddresses: utils.NetAddrsToStrings(process.Config.AuthServerAddresses()), diff --git a/lib/services/access_checker.go b/lib/services/access_checker.go index b4ccd0cfc0c48..d36e23bb7e715 100644 --- a/lib/services/access_checker.go +++ b/lib/services/access_checker.go @@ -258,7 +258,7 @@ type AccessChecker interface { // // Supports the following resource types: // - // - types.Server with GetKind() == types.KindNode + // - types.Server with GetKind() == types.KindNode or types.KindGitServer // - types.KindWindowsDesktop // - types.KindApp with IsAWSConsole() == true GetAllowedLoginsForResource(resource AccessCheckable) ([]string, error) @@ -766,10 +766,25 @@ func (a *accessChecker) EnumerateEntities(resource AccessCheckable, listFn roleE // // Supports the following resource types: // -// - types.Server with GetKind() == types.KindNode +// - types.Server with GetKind() == types.KindNode or types.KindGitServer // - types.KindWindowsDesktop // - types.KindApp with IsAWSConsole() == true func (a *accessChecker) GetAllowedLoginsForResource(resource AccessCheckable) ([]string, error) { + // Some logins are soly based on Traits instead of RoleSet. + switch resource.GetKind() { + case types.KindGitServer: + + switch resource.GetSubKind() { + case types.SubKindGitHub: + if err := a.CheckAccess(resource, AccessState{MFAVerified: true}); err != nil { + return nil, trace.Wrap(err) + } + return a.info.Traits[constants.TraitGitHubUsername], nil + default: + return nil, trace.BadParameter("received unsupported subkind for git_server: %v", resource.GetSubKind()) + } + } + // Create a map indexed by all logins in the RoleSet, // mapped to false if any role has it in its deny section, // true otherwise. @@ -795,6 +810,8 @@ func (a *accessChecker) GetAllowedLoginsForResource(resource AccessCheckable) ([ } loginGetter = role.GetAWSRoleARNs + case types.KindGitServer: + continue default: return nil, trace.BadParameter("received unsupported resource kind: %s", resource.GetKind()) } @@ -821,7 +838,7 @@ func (a *accessChecker) GetAllowedLoginsForResource(resource AccessCheckable) ([ var newLoginMatcher func(login string) RoleMatcher switch resource.GetKind() { - case types.KindNode: + case types.KindNode, types.KindGitServer: newLoginMatcher = NewLoginMatcher case types.KindWindowsDesktop: newLoginMatcher = NewWindowsLoginMatcher diff --git a/lib/services/local/events.go b/lib/services/local/events.go index b906d264d580a..57039219f0819 100644 --- a/lib/services/local/events.go +++ b/lib/services/local/events.go @@ -229,6 +229,8 @@ func (e *EventsService) NewWatcher(ctx context.Context, watch types.Watch) (type parser = newSPIFFEFederationParser() case types.KindStaticHostUser: parser = newStaticHostUserParser() + case types.KindGitServer: + parser = newGitServerParser() default: if watch.AllowPartialSuccess { continue @@ -2529,3 +2531,17 @@ func (p *spiffeFederationParser) parse(event backend.Event) (types.Resource, err return nil, trace.BadParameter("event %v is not supported", event.Type) } } + +func newGitServerParser() *gitServerParser { + return &gitServerParser{ + baseParser: newBaseParser(backend.NewKey(gitServerPrefix)), + } +} + +type gitServerParser struct { + baseParser +} + +func (p *gitServerParser) parse(event backend.Event) (types.Resource, error) { + return parseServer(event, types.KindGitServer) +} diff --git a/lib/services/local/presence.go b/lib/services/local/presence.go index e80735e145c47..88e1aea632271 100644 --- a/lib/services/local/presence.go +++ b/lib/services/local/presence.go @@ -21,6 +21,7 @@ package local import ( "bytes" "context" + "log/slog" "sort" "time" @@ -371,6 +372,43 @@ func (s *PresenceService) UpsertNode(ctx context.Context, server types.Server) ( }, nil } +// TODO +func (s *PresenceService) UpsertGitServer(ctx context.Context, server types.Server) (types.Server, error) { + // s.upsertGitServer calls serverv2.CheckAndSetDefaults. + err := s.upsertServer(ctx, gitServerPrefix, server) + return server, trace.Wrap(err) +} + +// TODO is this really needed? +func (s *PresenceService) GetGitServer(ctx context.Context, name string) (types.Server, error) { + if name == "" { + return nil, trace.BadParameter("missing parameter name") + } + item, err := s.Get(ctx, backend.NewKey(gitServerPrefix, name)) + if err != nil { + return nil, trace.Wrap(err) + } + return services.UnmarshalServer( + item.Value, + types.KindGitServer, + services.WithExpires(item.Expires), + services.WithRevision(item.Revision), + ) +} +func (s *PresenceService) GetGitServers(ctx context.Context) ([]types.Server, error) { + servers, err := s.getServers(ctx, types.KindGitServer, gitServerPrefix) + slog.DebugContext(ctx, "=== local.GetGitServers", "servers", servers, "error", err) + return servers, trace.Wrap(err) +} +func (s *PresenceService) DeleteGitServer(ctx context.Context, name string) error { + key := backend.NewKey(gitServerPrefix, name) + return s.Delete(ctx, key) +} +func (s *PresenceService) DeleteAllGitServers(ctx context.Context) error { + startKey := backend.ExactKey(gitServerPrefix) + return s.DeleteRange(ctx, startKey, backend.RangeEnd(startKey)) +} + // GetAuthServers returns a list of registered servers func (s *PresenceService) GetAuthServers() ([]types.Server, error) { return s.getServers(context.TODO(), types.KindAuthServer, authServersPrefix) @@ -1269,6 +1307,9 @@ func (s *PresenceService) listResources(ctx context.Context, req proto.ListResou case types.KindNode: keyPrefix = []string{nodesPrefix, req.Namespace} unmarshalItemFunc = backendItemToServer(types.KindNode) + case types.KindGitServer: + keyPrefix = []string{gitServerPrefix} + unmarshalItemFunc = backendItemToServer(types.KindGitServer) case types.KindWindowsDesktopService: keyPrefix = []string{windowsDesktopServicesPrefix} unmarshalItemFunc = backendItemToWindowsDesktopService @@ -1363,6 +1404,18 @@ func (s *PresenceService) listResourcesWithSort(ctx context.Context, req proto.L } resources = servers.AsResources() + case types.KindGitServer: + gitServers, err := s.GetGitServers(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + + servers := types.Servers(gitServers) + if err := servers.SortByCustom(req.SortBy); err != nil { + return nil, trace.Wrap(err) + } + resources = servers.AsResources() + case types.KindAppServer: appservers, err := s.GetApplicationServers(ctx, req.Namespace) if err != nil { @@ -1690,4 +1743,5 @@ const ( loginTimePrefix = "hostuser_interaction_time" serverInfoPrefix = "serverInfos" cloudLabelsPrefix = "cloudLabels" + gitServerPrefix = "gitServers" ) diff --git a/lib/services/matchers.go b/lib/services/matchers.go index 19d543ef022c4..32445a89e752f 100644 --- a/lib/services/matchers.go +++ b/lib/services/matchers.go @@ -157,6 +157,7 @@ func MatchResourceByFilters(resource types.ResourceWithLabels, filter MatchResou types.KindDatabaseService, types.KindKubernetesCluster, types.KindWindowsDesktop, types.KindWindowsDesktopService, + types.KindGitServer, types.KindUserGroup: specResource = resource case types.KindKubeServer: diff --git a/lib/services/presence.go b/lib/services/presence.go index 1b7528ebdf425..a9d74a20a90b1 100644 --- a/lib/services/presence.go +++ b/lib/services/presence.go @@ -55,6 +55,11 @@ type NodesStreamGetter interface { GetNodeStream(ctx context.Context, namespace string) stream.Stream[types.Server] } +type GitServersGetter interface { + GetGitServers(ctx context.Context) ([]types.Server, error) + GetGitServer(ctx context.Context, name string) (types.Server, error) +} + // Presence records and reports the presence of all components // of the cluster - Nodes, Proxies and SSH nodes type Presence interface { @@ -196,6 +201,12 @@ type Presence interface { // DeleteAllWindowsDesktopServices removes all Windows desktop services. DeleteAllWindowsDesktopServices(context.Context) error + //TODO + GitServersGetter + UpsertGitServer(context.Context, types.Server) (types.Server, error) + DeleteGitServer(context.Context, string) error + DeleteAllGitServers(context.Context) error + // ListResources returns a paginated list of resources. ListResources(ctx context.Context, req proto.ListResourcesRequest) (*types.ListResourcesResponse, error) } diff --git a/lib/services/resource.go b/lib/services/resource.go index bb384b582f9da..3d2b1edd595f8 100644 --- a/lib/services/resource.go +++ b/lib/services/resource.go @@ -241,6 +241,8 @@ func ParseShortcut(in string) (string, error) { return types.KindPlugin, nil case types.KindAccessGraphSettings, "ags": return types.KindAccessGraphSettings, nil + case types.KindGitServer, types.KindGitServer + "s": + return types.KindGitServer, nil } return "", trace.BadParameter("unsupported resource: %q - resources should be expressed as 'type/name', for example 'connector/github'", in) } diff --git a/lib/services/role.go b/lib/services/role.go index 0b37bcb889809..780375db54275 100644 --- a/lib/services/role.go +++ b/lib/services/role.go @@ -77,6 +77,7 @@ var DefaultImplicitRules = []types.Rule{ types.NewRule(types.KindUsageEvent, []string{types.VerbCreate}), types.NewRule(types.KindVnetConfig, RO()), types.NewRule(types.KindSPIFFEFederation, RO()), + types.NewRule(types.KindGitServer, RO()), } // DefaultCertAuthorityRules provides access the minimal set of resources @@ -305,6 +306,7 @@ func validateRoleExpressions(r types.Role) error { {"desktop_groups", r.GetDesktopGroups(condition.condition)}, {"impersonate.users", r.GetImpersonateConditions(condition.condition).Users}, {"impersonate.roles", r.GetImpersonateConditions(condition.condition).Roles}, + // TODO validate github orgs } { for _, value := range values.values { _, err := parse.NewTraitsTemplateExpression(value) @@ -489,6 +491,13 @@ func ApplyTraits(r types.Role, traits map[string][]string) (types.Role, error) { outDbRoles := applyValueTraitsSlice(inDbRoles, traits, "database role") r.SetDatabaseRoles(condition, apiutils.Deduplicate(outDbRoles)) + // apply templates to github permissions + gitHubPerms := r.GetGitHubPermissions(condition) + for i := range gitHubPerms { + gitHubPerms[i].Organizations = applyValueTraitsSlice(gitHubPerms[i].Organizations, traits, "github organization") + } + r.SetGitHubPermissions(condition, gitHubPerms) + for _, kind := range []string{ types.KindRemoteCluster, types.KindNode, @@ -628,7 +637,8 @@ func ApplyValueTraits(val string, traits map[string][]string) ([]string, error) constants.TraitKubeGroups, constants.TraitKubeUsers, constants.TraitDBNames, constants.TraitDBUsers, constants.TraitDBRoles, constants.TraitAWSRoleARNs, constants.TraitAzureIdentities, - constants.TraitGCPServiceAccounts, constants.TraitJWT: + constants.TraitGCPServiceAccounts, constants.TraitJWT, + constants.TraitGitHubOrganizations: default: return trace.BadParameter("unsupported variable %q", name) } @@ -2491,6 +2501,7 @@ func (l kubernetesClusterLabelMatcher) getKubeLabelMatchers(role types.Role, typ // AccessCheckable is the subset of types.Resource required for the RBAC checks. type AccessCheckable interface { GetKind() string + GetSubKind() string GetName() string GetMetadata() types.Metadata GetLabel(key string) (value string, ok bool) diff --git a/lib/services/unified_resource.go b/lib/services/unified_resource.go index 1d7aa928b9efa..e1205483d7858 100644 --- a/lib/services/unified_resource.go +++ b/lib/services/unified_resource.go @@ -48,6 +48,7 @@ var UnifiedResourceKinds []string = []string{ types.KindAppServer, types.KindWindowsDesktop, types.KindSAMLIdPServiceProvider, + types.KindGitServer, } // UnifiedResourceCacheConfig is used to configure a UnifiedResourceCache @@ -351,6 +352,7 @@ type ResourceGetter interface { WindowsDesktopGetter KubernetesServerGetter SAMLIdpServiceProviderGetter + GitServersGetter } // newWatcher starts and returns a new resource watcher for unified resources. @@ -383,7 +385,8 @@ func makeResourceSortKey(resource types.Resource) resourceSortKey { switch r := resource.(type) { case types.Server: name = r.GetHostname() + "/" + r.GetName() - kind = types.KindNode + //kind = types.KindNode + kind = r.GetKind() case types.AppServer: app := r.GetApp() if app != nil { @@ -454,6 +457,11 @@ func (c *UnifiedResourceCache) getResourcesAndUpdateCurrent(ctx context.Context) return trace.Wrap(err) } + newGitServers, err := c.getGitServers(ctx) + if err != nil { + return trace.Wrap(err) + } + c.rw.Lock() defer c.rw.Unlock() // empty the trees @@ -469,6 +477,7 @@ func (c *UnifiedResourceCache) getResourcesAndUpdateCurrent(ctx context.Context) putResources[types.KubeServer](c, newKubes) putResources[types.SAMLIdPServiceProvider](c, newSAMLApps) putResources[types.WindowsDesktop](c, newDesktops) + putResources[types.Server](c, newGitServers) c.stale = false c.defineCollectorAsInitialized() return nil @@ -485,6 +494,15 @@ func (c *UnifiedResourceCache) getNodes(ctx context.Context) ([]types.Server, er return newNodes, err } +// TODO +func (c *UnifiedResourceCache) getGitServers(ctx context.Context) ([]types.Server, error) { + servers, err := c.ResourceGetter.GetGitServers(ctx) + if err != nil { + return nil, trace.Wrap(err, "getting git servers for unified resource watcher") + } + return servers, nil +} + // getDatabaseServers will get all database servers func (c *UnifiedResourceCache) getDatabaseServers(ctx context.Context) ([]types.DatabaseServer, error) { newDbs, err := c.GetDatabaseServers(ctx, apidefaults.Namespace) @@ -782,6 +800,14 @@ func MakePaginatedResource(ctx context.Context, requestType string, r types.Reso } protoResource = &proto.PaginatedResource{Resource: &proto.PaginatedResource_Node{Node: srv}, Logins: logins, RequiresRequest: requiresRequest} + case types.KindGitServer: + srv, ok := resource.(*types.ServerV2) + if !ok { + return nil, trace.BadParameter("%s has invalid type %T", resourceKind, resource) + } + + // TODO logins + protoResource = &proto.PaginatedResource{Resource: &proto.PaginatedResource_GitServer{GitServer: srv}, Logins: logins, RequiresRequest: requiresRequest} case types.KindKubeServer: srv, ok := resource.(*types.KubernetesServerV3) if !ok { diff --git a/lib/services/watcher_git_server.go b/lib/services/watcher_git_server.go new file mode 100644 index 0000000000000..b11e0c1f8fdde --- /dev/null +++ b/lib/services/watcher_git_server.go @@ -0,0 +1,278 @@ +/* + * 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 . + */ + +package services + +import ( + "context" + "sync" + "time" + + "github.com/gravitational/teleport/api/types" + "github.com/gravitational/teleport/lib/utils" + "github.com/gravitational/trace" +) + +// GitServerWatcherConfig is a GitServerWatcher configuration. +type GitServerWatcherConfig struct { + ResourceWatcherConfig + GitServersGetter +} + +// CheckAndSetDefaults checks parameters and sets default values. +func (cfg *GitServerWatcherConfig) CheckAndSetDefaults() error { + if err := cfg.ResourceWatcherConfig.CheckAndSetDefaults(); err != nil { + return trace.Wrap(err) + } + if cfg.GitServersGetter == nil { + getter, ok := cfg.Client.(GitServersGetter) + if !ok { + return trace.BadParameter("missing parameter GitServersGetter and Client not usable as GitServersGetter") + } + cfg.GitServersGetter = getter + } + return nil +} + +// TODO refactor +type GitServerWatcher struct { + *resourceWatcher + *gitServerCollector +} + +// gitServerCollector accompanies resourceWatcher when monitoring gitServers. +type gitServerCollector struct { + GitServerWatcherConfig + + // initializationC is used to check whether the initial sync has completed + initializationC chan struct{} + once sync.Once + + cache *utils.FnCache + + rw sync.RWMutex + // current holds a map of the currently known gitServers keyed by server name + current map[string]types.Server + stale bool +} + +// NewGitServerWatcher returns a new instance of GitServerWatcher. +func NewGitServerWatcher(ctx context.Context, cfg GitServerWatcherConfig) (*GitServerWatcher, error) { + if err := cfg.CheckAndSetDefaults(); err != nil { + return nil, trace.Wrap(err) + } + + cache, err := utils.NewFnCache(utils.FnCacheConfig{ + Context: ctx, + TTL: 3 * time.Second, + Clock: cfg.Clock, + }) + if err != nil { + return nil, trace.Wrap(err) + } + + collector := &gitServerCollector{ + GitServerWatcherConfig: cfg, + current: map[string]types.Server{}, + initializationC: make(chan struct{}), + cache: cache, + stale: true, + } + + watcher, err := newResourceWatcher(ctx, collector, cfg.ResourceWatcherConfig) + if err != nil { + return nil, trace.Wrap(err) + } + + return &GitServerWatcher{resourceWatcher: watcher, gitServerCollector: collector}, nil +} + +// GitServer is a readonly subset of the types.Server interface which +// users may filter by in GetGitServers. +type GitServer interface { + types.ResourceWithLabels + GetTeleportVersion() string + GetGitHub() *types.GitHubServerMetadata +} + +// GetGitServers allows callers to retrieve a subset of gitServers that match the filter provided. The +// returned servers are a copy and can be safely modified. It is intentionally hard to retrieve +// the full set of gitServers to reduce the number of copies needed since the number of gitServers can get +// quite large and doing so can be expensive. +func (n *gitServerCollector) GetGitServers(ctx context.Context, fn func(n GitServer) bool) []types.Server { + // Attempt to freshen our data first. + n.refreshStaleGitServers(ctx) + + n.rw.RLock() + defer n.rw.RUnlock() + + var matched []types.Server + for _, server := range n.current { + if fn(server) { + matched = append(matched, server.DeepCopy()) + } + } + + return matched +} + +// GetGitServer allows callers to retrieve a gitServer based on its name. The +// returned server are a copy and can be safely modified. +func (n *gitServerCollector) GetGitServer(ctx context.Context, name string) (types.Server, error) { + // Attempt to freshen our data first. + n.refreshStaleGitServers(ctx) + + n.rw.RLock() + defer n.rw.RUnlock() + + server, found := n.current[name] + if !found { + return nil, trace.NotFound("server does not exist") + } + return server.DeepCopy(), nil +} + +// refreshStaleGitServers attempts to reload gitServers from the GitServerGetter if +// the collecter is stale. This ensures that no matter the health of +// the collecter callers will be returned the most up to date gitServer +// set as possible. +func (n *gitServerCollector) refreshStaleGitServers(ctx context.Context) error { + n.rw.RLock() + if !n.stale { + n.rw.RUnlock() + return nil + } + n.rw.RUnlock() + + _, err := utils.FnCacheGet(ctx, n.cache, "gitServers", func(ctx context.Context) (any, error) { + current, err := n.getGitServers(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + + n.rw.Lock() + defer n.rw.Unlock() + + // There is a chance that the watcher reinitialized while + // getting gitServers happened above. Check if we are still stale + // now that the lock is held to ensure that the refresh is + // still necessary. + if !n.stale { + return nil, nil + } + + n.current = current + return nil, trace.Wrap(err) + }) + + return trace.Wrap(err) +} + +func (n *gitServerCollector) GitServerCount() int { + n.rw.RLock() + defer n.rw.RUnlock() + return len(n.current) +} + +// resourceKinds specifies the resource kind to watch. +func (n *gitServerCollector) resourceKinds() []types.WatchKind { + return []types.WatchKind{{Kind: types.KindGitServer}} +} + +// getResourcesAndUpdateCurrent is called when the resources should be +// (re-)fetched directly. +func (n *gitServerCollector) getResourcesAndUpdateCurrent(ctx context.Context) error { + newCurrent, err := n.getGitServers(ctx) + if err != nil { + return trace.Wrap(err) + } + defer n.defineCollectorAsInitialized() + + if len(newCurrent) == 0 { + return nil + } + + n.rw.Lock() + defer n.rw.Unlock() + n.current = newCurrent + n.stale = false + return nil +} + +func (n *gitServerCollector) getGitServers(ctx context.Context) (map[string]types.Server, error) { + gitServers, err := n.GitServersGetter.GetGitServers(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + + if len(gitServers) == 0 { + return map[string]types.Server{}, nil + } + + current := make(map[string]types.Server, len(gitServers)) + for _, gitServer := range gitServers { + current[gitServer.GetName()] = gitServer + } + + return current, nil +} + +func (n *gitServerCollector) defineCollectorAsInitialized() { + n.once.Do(func() { + // mark watcher as initialized. + close(n.initializationC) + }) +} + +// processEventsAndUpdateCurrent is called when a watcher event is received. +func (n *gitServerCollector) processEventsAndUpdateCurrent(ctx context.Context, events []types.Event) { + n.rw.Lock() + defer n.rw.Unlock() + + for _, event := range events { + if event.Resource == nil || event.Resource.GetKind() != types.KindGitServer { + n.Log.Warningf("Unexpected event: %v.", event) + continue + } + + switch event.Type { + case types.OpDelete: + delete(n.current, event.Resource.GetName()) + case types.OpPut: + server, ok := event.Resource.(types.Server) + if !ok { + n.Log.Warningf("Unexpected type %T.", event.Resource) + continue + } + + n.current[server.GetName()] = server + default: + n.Log.Warningf("Skipping unsupported event type %s.", event.Type) + } + } +} + +func (n *gitServerCollector) initializationChan() <-chan struct{} { + return n.initializationC +} + +func (n *gitServerCollector) notifyStale() { + n.rw.Lock() + defer n.rw.Unlock() + n.stale = true +} diff --git a/lib/srv/ctx.go b/lib/srv/ctx.go index cd4b911f922e6..839c85e889df9 100644 --- a/lib/srv/ctx.go +++ b/lib/srv/ctx.go @@ -849,6 +849,12 @@ func (c *ServerContext) reportStats(conn utils.Stater) { return } + // TODO(greedy52) Is there a better place? + switch c.ServerSubKind { + case types.SubKindGitHub: + return + } + // Get the TX and RX bytes. txBytes, rxBytes := conn.Stat() diff --git a/lib/srv/exec.go b/lib/srv/exec.go index 60fe8adbd5b45..c7e5b2b34d1aa 100644 --- a/lib/srv/exec.go +++ b/lib/srv/exec.go @@ -340,9 +340,10 @@ func waitForSignal(fd *os.File, timeout time.Duration) error { // remoteExec is used to run an "exec" SSH request and return the result. type remoteExec struct { - command string - session *tracessh.Session - ctx *ServerContext + command string + session *tracessh.Session + ctx *ServerContext + gitHubAuditor *gitHubAuditor } // String describes this remote exec value @@ -363,6 +364,8 @@ func (e *remoteExec) SetCommand(command string) { // Start launches the given command returns (nil, nil) if successful. // ExecResult is only used to communicate an error while launching. func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, error) { + // TODO checkGitHub allowed by parsing path and compare the org + if _, err := checkSCPAllowed(e.ctx, e.GetCommand()); err != nil { e.ctx.GetServer().EmitAuditEvent(context.WithoutCancel(ctx), &apievents.SFTP{ Metadata: apievents.Metadata{ @@ -380,21 +383,28 @@ func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, er // hook up stdout/err the channel so the user can interact with the command e.session.Stdout = ch e.session.Stderr = ch.Stderr() - inputWriter, err := e.session.StdinPipe() + inputWriterCloser, err := e.session.StdinPipe() if err != nil { return nil, trace.Wrap(err) } - gitHubAuditor := &gitHubAuditor{ - command: e.GetCommand(), + inputWriter := io.Writer(inputWriterCloser) + + // Is there a better place? + switch e.ctx.ServerSubKind { + case types.SubKindGitHub: + e.gitHubAuditor = &gitHubAuditor{ + isPush: strings.HasPrefix(e.GetCommand(), gittransport.ReceivePackServiceName), + } + inputWriter = io.MultiWriter(inputWriter, e.gitHubAuditor) } + go func() { - defer gitHubAuditor.close() // copy from the channel (client) into stdin of the process - if _, err := io.Copy(io.MultiWriter(inputWriter, gitHubAuditor), ch); err != nil { + if _, err := io.Copy(inputWriter, ch); err != nil { e.ctx.Warnf("Failed copying data from SSH channel to remote command stdin: %v", err) } - inputWriter.Close() + inputWriterCloser.Close() }() err = e.session.Start(ctx, e.command) @@ -406,22 +416,66 @@ func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, er } type gitHubAuditor struct { - command string - + isPush bool // TODO avoid a copy, just pipe it to reader cachedPayload []byte } func (a *gitHubAuditor) Write(p []byte) (int, error) { - a.cachedPayload = append(a.cachedPayload, p...) + if a.isPush { + a.cachedPayload = append(a.cachedPayload, p...) + } return len(p), nil } -func (a *gitHubAuditor) close() { +func parseGitCommand(command string) (string, string, error) { + gitCommand, path, ok := strings.Cut(command, " '") + if !ok { + return "", "", trace.BadParameter("invalid git command %s", command) + } + + if strings.HasSuffix(path, "'") { + path = strings.TrimSuffix(path, "'") + } else { + return "", "", trace.BadParameter("invalid git command %s", command) + } + + return gitCommand, path, nil +} + +func (a *gitHubAuditor) emit(ctx *ServerContext, cmd string, execErr error) { + code := events.GitCommandCode + commandMeta := apievents.CommandMetadata{ + Command: cmd, + ExitCode: strconv.Itoa(exitCode(execErr)), + } + if execErr != nil { + code = events.GitCommandFailureCode + commandMeta.Error = execErr.Error() + } + + event := &apievents.GitCommand{ + Metadata: apievents.Metadata{ + Type: events.GitCommandEvent, + Code: code, + ClusterName: ctx.ClusterName, + }, + UserMetadata: ctx.Identity.GetUserMetadata(), + ConnectionMetadata: apievents.ConnectionMetadata{ + RemoteAddr: ctx.ServerConn.RemoteAddr().String(), + LocalAddr: ctx.ServerConn.LocalAddr().String(), + }, + SessionMetadata: ctx.GetSessionMetadata(), + ServerMetadata: ctx.GetServerMetadata(), + CommandMetadata: commandMeta, + } + if service, path, err := parseGitCommand(cmd); err == nil { + event.Service = service + event.Path = path + } + switch { - case strings.HasPrefix(a.command, gittransport.UploadPackServiceName): - slog.InfoContext(context.Background(), "[===AUDIT===] git fetch") - case strings.HasPrefix(a.command, gittransport.ReceivePackServiceName): + case a.isPush: if len(a.cachedPayload) > 4 { request := packp.NewReferenceUpdateRequest() err := request.Decode(bytes.NewReader(a.cachedPayload)) @@ -429,6 +483,13 @@ func (a *gitHubAuditor) close() { slog.InfoContext(context.Background(), "[===AUDIT===] git push, but error when decoding packp", "error", err) } else { for _, command := range request.Commands { + event.Actions = append(event.Actions, &apievents.GitCommandAction{ + Action: string(command.Action()), + Reference: string(command.Name), + Old: command.Old.String(), + New: command.New.String(), + }) + switch command.Action() { case packp.Create: slog.DebugContext(context.Background(), "[===AUDIT===] user created a new reference.", "reference", command.Name, "to", command.New) @@ -444,6 +505,12 @@ func (a *gitHubAuditor) close() { } else { slog.InfoContext(context.Background(), "[===AUDIT===] git push but server up-to-update") } + default: + slog.InfoContext(context.Background(), "[===AUDIT===] git fetch") + } + + if err := ctx.session.emitAuditEvent(ctx.srv.Context(), event); err != nil { + log.WithError(err).Warn("Failed to emit exec event.") } } @@ -458,7 +525,11 @@ func (e *remoteExec) Wait() *ExecResult { } // Emit the result of execution to the Audit Log. - emitExecAuditEvent(e.ctx, e.command, err) + if e.gitHubAuditor != nil { + e.gitHubAuditor.emit(e.ctx, e.command, err) + } else { + emitExecAuditEvent(e.ctx, e.command, err) + } return &ExecResult{ Command: e.GetCommand(), diff --git a/lib/srv/forward/sshserver.go b/lib/srv/forward/sshserver.go index 1ba72a8acc9c3..26012a627d209 100644 --- a/lib/srv/forward/sshserver.go +++ b/lib/srv/forward/sshserver.go @@ -24,6 +24,7 @@ import ( "errors" "fmt" "io" + "log/slog" "net" "strings" "time" @@ -510,6 +511,13 @@ func (s *Server) GetHostSudoers() srv.HostSudoers { // GetInfo returns a services.Server that represents this server. func (s *Server) GetInfo() types.Server { + spec := types.ServerSpecV2{ + Addr: s.AdvertiseAddr(), + } + if s.targetServer != nil { + spec.GitHub = s.targetServer.GetGitHub() + } + return &types.ServerV2{ Kind: types.KindNode, Version: types.V2, @@ -517,9 +525,7 @@ func (s *Server) GetInfo() types.Server { Name: s.ID(), Namespace: s.GetNamespace(), }, - Spec: types.ServerSpecV2{ - Addr: s.AdvertiseAddr(), - }, + Spec: spec, } } @@ -626,16 +632,18 @@ func (s *Server) Serve() { s.agentlessSigner = sshSigner } - if s.targetServer.GetSubKind() == types.SubKindOpenSSHGitHub { - sshSigner, err := s.getSSHSignerForGitHub(ctx) - if err != nil { - sconn.Close() - s.log.Warnf("Unable to generate GitHub user cert for user %v server %v: %v", s.identityContext.TeleportUser, s.targetServer.GetName(), err) - return - } - - s.agentlessSigner = sshSigner + } + if s.targetServer != nil && + s.targetServer.GetKind() == types.KindGitServer && + s.targetServer.GetSubKind() == types.SubKindGitHub { + sshSigner, err := s.getSSHSignerForGitHub(ctx) + if err != nil { + sconn.Close() + s.log.Warnf("Unable to generate GitHub user cert for user %v server %v: %v", s.identityContext.TeleportUser, s.targetServer.GetName(), err) + return } + + s.agentlessSigner = sshSigner } // Connect and authenticate to the remote node. @@ -683,6 +691,7 @@ func (s *Server) Serve() { // TODO how to keep a cache for this func (s *Server) getSSHSignerForGitHub(ctx context.Context) (ssh.Signer, error) { + slog.DebugContext(ctx, "=== getSSHSignerForGitHub") spec := s.targetServer.GetGitHub() if spec == nil || spec.Integration == "" { return nil, trace.BadParameter("GitHub server %s missing integration", s.targetServer) @@ -693,10 +702,18 @@ func (s *Server) getSSHSignerForGitHub(ctx context.Context) (ssh.Signer, error) if err != nil { return nil, trace.Wrap(err) } + + logins, err := s.identityContext.AccessChecker.GetAllowedLoginsForResource(s.targetServer) + if err != nil { + return nil, trace.Wrap(err) + } + if len(logins) == 0 { + return nil, trace.NotFound("no github login found") + } resp, err := s.authClient.GenerateGitHubUserCert(ctx, &integrationv1.GenerateGitHubUserCertRequest{ Integration: spec.Integration, PublicKey: priv.MarshalSSHPublicKey(), - Login: s.identityContext.Login, + Login: logins[0], KeyId: s.identityContext.TeleportUser, Ttl: durationpb.New(10 * time.Duration(time.Minute)), }) @@ -784,9 +801,11 @@ func (s *Server) Close() error { // newRemoteClient creates and returns a *ssh.Client and *ssh.Session // with a remote host. func (s *Server) newRemoteClient(ctx context.Context, systemLogin string, netConfig types.ClusterNetworkingConfig) (*tracessh.Client, error) { - // What? + // TODO(greedy52) beautify and add github host validation. hostKeyCallback := s.authHandlers.HostKeyAuth - if s.targetServer != nil && s.targetServer.GetSubKind() == types.SubKindOpenSSHGitHub { + if s.targetServer != nil && + s.targetServer.GetKind() == types.KindGitServer && + s.targetServer.GetSubKind() == types.SubKindGitHub { hostKeyCallback = ssh.InsecureIgnoreHostKey() systemLogin = "git" } diff --git a/lib/srv/sess.go b/lib/srv/sess.go index 0fb77a9ba7008..f3047a1b12ff7 100644 --- a/lib/srv/sess.go +++ b/lib/srv/sess.go @@ -786,6 +786,15 @@ func newSession(ctx context.Context, id rsession.ID, r *SessionRegistry, scx *Se serverMeta: scx.srv.TargetMetadata(), } + // TODO(greedy52) Is there a better way? + switch scx.srv.TargetMetadata().ServerSubKind { + case types.SubKindGitHub: + sess.emitter = &githubSessionEmitter{ + emitter: sess.emitter, + discard: events.NewDiscardEmitter(), + } + } + sess.io.OnWriteError = sess.onWriteError go func() { @@ -818,6 +827,21 @@ func newSession(ctx context.Context, id rsession.ID, r *SessionRegistry, scx *Se return sess, p, nil } +// TODO +type githubSessionEmitter struct { + emitter apievents.Emitter + discard apievents.Emitter +} + +func (e *githubSessionEmitter) EmitAuditEvent(ctx context.Context, event apievents.AuditEvent) error { + switch event.GetType() { + case events.GitCommandEvent: + return trace.Wrap(e.emitter.EmitAuditEvent(ctx, event)) + default: + return trace.Wrap(e.discard.EmitAuditEvent(ctx, event)) + } +} + // ID returns a string representation of the session ID. func (s *session) ID() string { s.mu.RLock() @@ -1398,6 +1422,12 @@ func newRecorder(s *session, ctx *ServerContext) (events.SessionPreparerRecorder return events.WithNoOpPreparer(events.NewDiscardRecorder()), nil } + // TODO(greedy52) Is there a better place? + switch s.serverMeta.ServerSubKind { + case types.SubKindGitHub: + return events.WithNoOpPreparer(events.NewDiscardRecorder()), nil + } + // Don't record non-interactive sessions when enhanced recording is disabled. if ctx.GetTerm() == nil && !ctx.srv.GetBPF().Enabled() { return events.WithNoOpPreparer(events.NewDiscardRecorder()), nil diff --git a/lib/web/apiserver.go b/lib/web/apiserver.go index e232a606927a0..4fe385cebd8a1 100644 --- a/lib/web/apiserver.go +++ b/lib/web/apiserver.go @@ -2744,6 +2744,7 @@ func makeUnifiedResourceRequest(r *http.Request) (*proto.ListUnifiedResourcesReq types.KindWindowsDesktop, types.KindKubernetesCluster, types.KindSAMLIdPServiceProvider, + types.KindGitServer, } } @@ -2903,12 +2904,22 @@ func (h *Handler) clusterUnifiedResourcesGet(w http.ResponseWriter, request *htt for _, enriched := range page { switch r := enriched.ResourceWithLabels.(type) { case types.Server: - logins, err := calculateSSHLogins(identity, accessChecker, r, enriched.Logins) - if err != nil { - return nil, trace.Wrap(err) - } + switch r.GetKind() { + case types.KindGitServer: + logins, err := accessChecker.GetAllowedLoginsForResource(r) + if err != nil { + return nil, trace.Wrap(err) + } + unifiedResources = append(unifiedResources, ui.MakeServer(site.GetName(), r, logins, enriched.RequiresRequest)) - unifiedResources = append(unifiedResources, ui.MakeServer(site.GetName(), r, logins, enriched.RequiresRequest)) + default: + logins, err := calculateSSHLogins(identity, accessChecker, r, enriched.Logins) + if err != nil { + return nil, trace.Wrap(err) + } + + unifiedResources = append(unifiedResources, ui.MakeServer(site.GetName(), r, logins, enriched.RequiresRequest)) + } case types.DatabaseServer: if !hasFetchedDBUsersAndNames { dbNames, dbUsers, err = getDatabaseUsersAndNames(accessChecker) diff --git a/lib/web/integrations.go b/lib/web/integrations.go index 2f33cb58faa50..4cea1ebeee48d 100644 --- a/lib/web/integrations.go +++ b/lib/web/integrations.go @@ -69,6 +69,19 @@ func (h *Handler) integrationsCreate(w http.ResponseWriter, r *http.Request, p h return nil, trace.Wrap(err) } + case types.IntegrationSubKindGitHub: + ig, err = types.NewIntegrationGitHub( + types.Metadata{ + Name: req.Name, + }, + &types.GitHubIntegrationSpecV1{ + Organization: req.GitHub.Organization, + }, + ) + if err != nil { + return nil, trace.Wrap(err) + } + default: return nil, trace.BadParameter("subkind %q is not supported", req.SubKind) } diff --git a/lib/web/ui/integration.go b/lib/web/ui/integration.go index c31a3ce5f5d45..48dace559d297 100644 --- a/lib/web/ui/integration.go +++ b/lib/web/ui/integration.go @@ -26,6 +26,7 @@ import ( "github.com/gravitational/teleport/api/types" "github.com/gravitational/teleport/lib/integrations/awsoidc" + "github.com/gravitational/teleport/lib/sshutils" ) // IntegrationAWSOIDCSpec contain the specific fields for the `aws-oidc` subkind integration. @@ -53,6 +54,13 @@ func (r *IntegrationAWSOIDCSpec) CheckAndSetDefaults() error { return nil } +type IntegrationGitHub struct { + Organization string `json:"organization"` + + PublicKeys []string `json:"publicKeys,omitempty"` + Fingerprints []string `json:"fingerprints,omitempty"` +} + // Integration describes Integration fields type Integration struct { // Name is the Integration name. @@ -61,6 +69,8 @@ type Integration struct { SubKind string `json:"subKind,omitempty"` // AWSOIDC contains the fields for `aws-oidc` subkind integration. AWSOIDC *IntegrationAWSOIDCSpec `json:"awsoidc,omitempty"` + // TODO + GitHub *IntegrationGitHub `json:"github,omitempty"` } // CheckAndSetDefaults for the create request. @@ -80,6 +90,13 @@ func (r *Integration) CheckAndSetDefaults() error { } } + switch r.SubKind { + case types.IntegrationSubKindGitHub: + if r.GitHub == nil && r.GitHub.Organization == "" { + return trace.BadParameter("missing organization for GitHub integration") + } + } + return nil } @@ -151,6 +168,30 @@ func MakeIntegration(ig types.Integration) (*Integration, error) { IssuerS3Bucket: s3Bucket, IssuerS3Prefix: s3Prefix, } + case types.IntegrationSubKindGitHub: + github := ig.GetGitHubIntegrationSpec() + if github == nil { + return nil, trace.BadParameter("missing github spec from created integration %v", ig) + } + + if github.Proxy == nil || len(github.Proxy.CertAuthority) == 0 { + return nil, trace.BadParameter("missing SSH certificate authorities from created integration %v", ig) + } + + ret.GitHub = &IntegrationGitHub{ + Organization: github.Organization, + PublicKeys: make([]string, 0, len(github.Proxy.CertAuthority)), + Fingerprints: make([]string, 0, len(github.Proxy.CertAuthority)), + } + + for _, ca := range github.Proxy.CertAuthority { + fingerprint, err := sshutils.AuthorizedKeyFingerprint(ca.PublicKey) + if err != nil { + return nil, trace.BadParameter("failed to parse public from created integration: %v", ig) + } + ret.GitHub.PublicKeys = append(ret.GitHub.PublicKeys, string(ca.PublicKey)) + ret.GitHub.Fingerprints = append(ret.GitHub.Fingerprints, fingerprint) + } } return ret, nil diff --git a/lib/web/ui/server.go b/lib/web/ui/server.go index 1192a980b7555..21e36af2c8444 100644 --- a/lib/web/ui/server.go +++ b/lib/web/ui/server.go @@ -61,6 +61,8 @@ type Server struct { AWS *AWSMetadata `json:"aws,omitempty"` // RequireRequest indicates if a returned resource is only accessible after an access request RequiresRequest bool `json:"requiresRequest,omitempty"` + + GitHub *types.GitHubServerMetadata `json:"github,omitempty"` } // AWSMetadata describes the AWS metadata for instances hosted in AWS. @@ -120,6 +122,7 @@ func MakeServer(clusterName string, server types.Server, logins []string, requir SubKind: server.GetSubKind(), RequiresRequest: requiresRequest, SSHLogins: logins, + GitHub: server.GetGitHub(), } if server.GetSubKind() == types.SubKindOpenSSHEICENode { diff --git a/tool/tctl/common/resource_command.go b/tool/tctl/common/resource_command.go index d8d7b10e38c5d..56493d7d9add6 100644 --- a/tool/tctl/common/resource_command.go +++ b/tool/tctl/common/resource_command.go @@ -166,6 +166,7 @@ func (rc *ResourceCommand) Initialize(app *kingpin.Application, config *servicec types.KindAccessGraphSettings: rc.upsertAccessGraphSettings, types.KindPlugin: rc.createPlugin, types.KindSPIFFEFederation: rc.createSPIFFEFederation, + types.KindGitServer: rc.createGitServer, } rc.UpdateHandlers = map[ResourceKind]ResourceCreateHandler{ types.KindUser: rc.updateUser, @@ -1081,6 +1082,30 @@ func (rc *ResourceCommand) createNode(ctx context.Context, client *authclient.Cl return nil } +func (rc *ResourceCommand) createGitServer(ctx context.Context, client *authclient.Client, raw services.UnknownResource) error { + server, err := services.UnmarshalServer(raw.Raw, types.KindGitServer) + if err != nil { + return trace.Wrap(err) + } + + name := server.GetName() + _, err = client.GetGitServer(ctx, name) + if err != nil && !trace.IsNotFound(err) { + return trace.Wrap(err) + } + exists := (err == nil) + if !rc.IsForced() && exists { + return trace.AlreadyExists("git_server %q already exists, use --force flag to override", name) + } + + _, err = client.UpsertGitServer(ctx, server) + if err != nil { + return trace.Wrap(err) + } + fmt.Printf("git_server %q has been %s\n", name, UpsertVerb(exists, rc.IsForced())) + return nil +} + func (rc *ResourceCommand) createOIDCConnector(ctx context.Context, client *authclient.Client, raw services.UnknownResource) error { conn, err := services.UnmarshalOIDCConnector(raw.Raw) if err != nil { @@ -1440,6 +1465,11 @@ func (rc *ResourceCommand) Delete(ctx context.Context, client *authclient.Client return trace.Wrap(err) } fmt.Printf("node %v has been deleted\n", rc.ref.Name) + case types.KindGitServer: + if err = client.DeleteGitServer(ctx, rc.ref.Name); err != nil { + return trace.Wrap(err) + } + fmt.Printf("git_server %v has been deleted\n", rc.ref.Name) case types.KindUser: if err = client.DeleteUser(ctx, rc.ref.Name); err != nil { return trace.Wrap(err) @@ -2074,6 +2104,54 @@ func (rc *ResourceCommand) getCollection(ctx context.Context, client *authclient return nil, trace.NotFound("node with ID %q not found", rc.ref.Name) } + return &collection, nil + case types.KindGitServer: + var search []string + if rc.ref.Name != "" { + search = []string{rc.ref.Name} + } + + req := proto.ListUnifiedResourcesRequest{ + Kinds: []string{types.KindGitServer}, + SearchKeywords: search, + SortBy: types.SortBy{Field: types.ResourceKind}, + } + + var collection serverCollection + for { + page, next, err := apiclient.GetUnifiedResourcePage(ctx, client, &req) + if err != nil { + return nil, trace.Wrap(err) + } + + for _, r := range page { + srv, ok := r.ResourceWithLabels.(types.Server) + if !ok { + log.Warnf("expected types.Server but received unexpected type %T", r) + continue + } + + if rc.ref.Name == "" { + collection.servers = append(collection.servers, srv) + continue + } + + if srv.GetName() == rc.ref.Name || srv.GetHostname() == rc.ref.Name { + collection.servers = []types.Server{srv} + return &collection, nil + } + } + + req.StartKey = next + if req.StartKey == "" { + break + } + } + + if len(collection.servers) == 0 && rc.ref.Name != "" { + return nil, trace.NotFound("git_server with ID %q not found", rc.ref.Name) + } + return &collection, nil case types.KindAuthServer: servers, err := client.GetAuthServers() diff --git a/tool/tctl/common/user_command.go b/tool/tctl/common/user_command.go index f2fc151226d1b..dcd5ab1a9e915 100644 --- a/tool/tctl/common/user_command.go +++ b/tool/tctl/common/user_command.go @@ -66,6 +66,9 @@ type UserCommand struct { hostUserUIDProvided bool hostUserGID string hostUserGIDProvided bool + gitHubUsername string + gitHubUsernameProvided bool + allowedGitHubOrgs []string ttl time.Duration @@ -101,6 +104,8 @@ func (u *UserCommand) Initialize(app *kingpin.Application, config *servicecfg.Co u.userAdd.Flag("gcp-service-accounts", "List of allowed GCP service accounts for the new user").StringsVar(&u.allowedGCPServiceAccounts) u.userAdd.Flag("host-user-uid", "UID for auto provisioned host users to use").IsSetByUser(&u.hostUserUIDProvided).StringVar(&u.hostUserUID) u.userAdd.Flag("host-user-gid", "GID for auto provisioned host users to use").IsSetByUser(&u.hostUserGIDProvided).StringVar(&u.hostUserGID) + u.userAdd.Flag("github-username", "GitHub username to use for GitHub integrations").IsSetByUser(&u.gitHubUsernameProvided).StringVar(&u.gitHubUsername) + u.userAdd.Flag("github-orgs", "List of allowed GitHub organizations").StringsVar(&u.allowedGitHubOrgs) u.userAdd.Flag("roles", "List of roles for the new user to assume").Required().StringsVar(&u.allowedRoles) @@ -136,6 +141,8 @@ func (u *UserCommand) Initialize(app *kingpin.Application, config *servicecfg.Co StringsVar(&u.allowedGCPServiceAccounts) u.userUpdate.Flag("set-host-user-uid", "UID for auto provisioned host users to use. Value can be reset by providing an empty string").IsSetByUser(&u.hostUserUIDProvided).StringVar(&u.hostUserUID) u.userUpdate.Flag("set-host-user-gid", "GID for auto provisioned host users to use. Value can be reset by providing an empty string").IsSetByUser(&u.hostUserGIDProvided).StringVar(&u.hostUserGID) + u.userUpdate.Flag("set-github-username", "GitHub username to use for GitHub integrations. Value can be reset by providing an empty string.").IsSetByUser(&u.gitHubUsernameProvided).StringVar(&u.gitHubUsername) + u.userUpdate.Flag("set-github-orgs", "List of allowed GitHub organizations").StringsVar(&u.allowedGitHubOrgs) u.userList = users.Command("ls", "Lists all user accounts.") u.userList.Flag("format", "Output format, 'text' or 'json'").Hidden().Default(teleport.Text).StringVar(&u.format) @@ -275,18 +282,20 @@ func (u *UserCommand) Add(ctx context.Context, client *authclient.Client) error } traits := map[string][]string{ - constants.TraitLogins: u.allowedLogins, - constants.TraitWindowsLogins: u.allowedWindowsLogins, - constants.TraitKubeUsers: flattenSlice(u.allowedKubeUsers), - constants.TraitKubeGroups: flattenSlice(u.allowedKubeGroups), - constants.TraitDBUsers: flattenSlice(u.allowedDatabaseUsers), - constants.TraitDBNames: flattenSlice(u.allowedDatabaseNames), - constants.TraitDBRoles: flattenSlice(u.allowedDatabaseRoles), - constants.TraitAWSRoleARNs: flattenSlice(u.allowedAWSRoleARNs), - constants.TraitAzureIdentities: azureIdentities, - constants.TraitGCPServiceAccounts: gcpServiceAccounts, - constants.TraitHostUserUID: {u.hostUserUID}, - constants.TraitHostUserGID: {u.hostUserGID}, + constants.TraitLogins: u.allowedLogins, + constants.TraitWindowsLogins: u.allowedWindowsLogins, + constants.TraitKubeUsers: flattenSlice(u.allowedKubeUsers), + constants.TraitKubeGroups: flattenSlice(u.allowedKubeGroups), + constants.TraitDBUsers: flattenSlice(u.allowedDatabaseUsers), + constants.TraitDBNames: flattenSlice(u.allowedDatabaseNames), + constants.TraitDBRoles: flattenSlice(u.allowedDatabaseRoles), + constants.TraitAWSRoleARNs: flattenSlice(u.allowedAWSRoleARNs), + constants.TraitAzureIdentities: azureIdentities, + constants.TraitGCPServiceAccounts: gcpServiceAccounts, + constants.TraitHostUserUID: {u.hostUserUID}, + constants.TraitHostUserGID: {u.hostUserGID}, + constants.TraitGitHubUsername: {u.gitHubUsername}, + constants.TraitGitHubOrganizations: flattenSlice(u.allowedGitHubOrgs), } user, err := types.NewUser(u.login) @@ -465,6 +474,15 @@ func (u *UserCommand) Update(ctx context.Context, client *authclient.Client) err user.SetHostUserGID(u.hostUserGID) updateMessages["Host user GID"] = []string{u.hostUserGID} } + if u.gitHubUsernameProvided { + user.SetGitHubUsername(u.gitHubUsername) + updateMessages["GitHub username"] = []string{u.gitHubUsername} + } + if len(u.allowedGitHubOrgs) > 0 { + allowedGitHubOrgs := flattenSlice(u.allowedGitHubOrgs) + user.SetGitHubOrganizations(allowedGitHubOrgs) + updateMessages["GitHub organizations"] = allowedGitHubOrgs + } if len(updateMessages) == 0 { return trace.BadParameter("Nothing to update. Please provide at least one --set flag.") diff --git a/tool/tsh/common/git.go b/tool/tsh/common/git.go index 19e67cdb3dd22..89edd99e715cd 100644 --- a/tool/tsh/common/git.go +++ b/tool/tsh/common/git.go @@ -19,13 +19,290 @@ package common import ( + "bytes" + "context" "fmt" + "os" + "os/exec" + "strings" + "github.com/gravitational/teleport" + apiclient "github.com/gravitational/teleport/api/client" + "github.com/gravitational/teleport/api/client/proto" + "github.com/gravitational/teleport/api/constants" + "github.com/gravitational/teleport/api/types" + "github.com/gravitational/teleport/api/utils/prompt" + "github.com/gravitational/teleport/lib/asciitable" + "github.com/gravitational/teleport/lib/client" "github.com/gravitational/trace" ) +func onGitClone(cf *CLIConf) error { + // TODO validate host and do a git_server fetch before cloning. + _, org, err := parseGitURL(strings.TrimSpace(cf.GitURL)) + if err != nil { + return trace.Wrap(err) + } + + config := fmt.Sprintf("core.sshcommand=%s", makeGitSSHCommand(org)) + cmd := exec.CommandContext(cf.Context, "git", "clone", "--config", config, cf.GitURL) + cmd.Stdin = cf.Stdin() + cmd.Stdout = cf.Stdout() + cmd.Stderr = cf.Stderr() + return trace.Wrap(cmd.Run()) +} + func onGitSSH(cf *CLIConf) error { - // TODO do a quick check on cf.UserHost before overwritting it? - cf.UserHost = fmt.Sprintf("%s@%s", cf.GitUsername, cf.GitServer) - return trace.Wrap(onSSH(cf)) + maybeUseTTYAsStdinFallback(cf.Context) + + // TODO validate the host is github.com + user, err := getGitHubUsername(cf) + if err != nil { + return trace.Wrap(err) + } + + cf.UserHost = fmt.Sprintf("%s@%s", user, types.MakeGitHubOrgServerDomain(cf.GitHubOrg)) + log.Debugf("=== onGitSSH org %s userhost %s command %s", cf.GitHubOrg, cf.UserHost, cf.RemoteCommand) + + tc, err := makeClient(cf) + if err != nil { + return trace.Wrap(err) + } + + tc.Stdin = os.Stdin + err = client.RetryWithRelogin(cf.Context, tc, func() error { + return tc.SSH(cf.Context, cf.RemoteCommand) + }) + // Exit with the same exit status as the failed command. + return trace.Wrap(convertSSHExitCode(tc, err)) +} + +func onGitConfig(cf *CLIConf) error { + switch cf.GitConfigAction { + case "": + return trace.Wrap(onGitConfigCheck(cf)) + case "update": + return trace.Wrap(onGitConfigUpdate(cf)) + case "reset": + return trace.Wrap(onGitConfigReset(cf)) + default: + return trace.BadParameter("unknown option for git config") + } +} + +func onGitConfigCheck(cf *CLIConf) error { + var bufStd bytes.Buffer + cmd := exec.CommandContext(cf.Context, "git", "config", "--local", "--default", "", "--get", "core.sshcommand") + cmd.Stdout = &bufStd + cmd.Stderr = cf.Stderr() + + if err := cmd.Run(); err != nil { + return trace.Wrap(err) + } + + output := strings.TrimSpace(bufStd.String()) + wantPrefix := makeGitSSHCommand("") + switch { + case strings.HasPrefix(output, wantPrefix): + _, org, _ := strings.Cut(output, wantPrefix) + fmt.Fprintf(cf.Stdout(), "The current git dir is configured with Teleport for GitHub organization %q.\n\n", org) + default: + fmt.Fprintf(cf.Stdout(), "The current git dir is not configured with Teleport.\n"+ + "Run 'tsh git config udpate' to configure it.\n\n") + } + + username, err := getGitHubUsername(cf) + if err != nil { + return trace.Wrap(err) + } + fmt.Fprintf(cf.Stdout(), "Your GitHub username is %q.\n", username) + return nil +} + +func onGitConfigUpdate(cf *CLIConf) error { + var bufStd bytes.Buffer + lsCmd := exec.CommandContext(cf.Context, "git", "ls-remote", "--get-url") + lsCmd.Stdout = &bufStd + lsCmd.Stderr = cf.Stderr() + if err := lsCmd.Run(); err != nil { + return trace.Wrap(err) + } + + for _, gitURL := range strings.Split(bufStd.String(), "\n") { + host, org, err := parseGitURL(strings.TrimSpace(gitURL)) + if err != nil { + return trace.Wrap(err) + } + if host == "github.com" { + cmd := exec.CommandContext(cf.Context, "git", "config", "--local", "--replace-all", "core.sshcommand", makeGitSSHCommand(org)) + cmd.Stdout = cf.Stdout() + cmd.Stderr = cf.Stderr() + return trace.NewAggregate(cmd.Run(), onGitConfigCheck(cf)) + } + } + return trace.NotFound("no supported git url found from 'git ls-remote --get-url': %s", bufStd.String()) +} + +func onGitConfigReset(cf *CLIConf) error { + // TODO do we want to verify the current content be fore reset + cmd := exec.CommandContext(cf.Context, "git", "config", "--local", "--unset-all", "core.sshcommand") + cmd.Stdout = cf.Stdout() + cmd.Stderr = cf.Stderr() + return trace.NewAggregate(cmd.Run(), onGitConfigCheck(cf)) +} + +func onGitList(cf *CLIConf) error { + tc, err := makeClient(cf) + if err != nil { + return trace.Wrap(err) + } + + var resources []*types.EnrichedResource + err = client.RetryWithRelogin(cf.Context, tc, func() error { + client, err := tc.ConnectToCluster(cf.Context) + if err != nil { + return trace.Wrap(err) + } + defer client.Close() + + // TODO + resources, err = apiclient.GetAllUnifiedResources(cf.Context, client.AuthClient, &proto.ListUnifiedResourcesRequest{ + Kinds: []string{types.KindGitServer}, + SortBy: types.SortBy{Field: types.ResourceMetadataName}, + IncludeLogins: true, + }) + return trace.Wrap(err) + }) + if err != nil { + return trace.Wrap(err) + } + + // TODO sort + return printGitServers(cf, resources) } + +func printGitServers(cf *CLIConf, resources []*types.EnrichedResource) error { + format := strings.ToLower(cf.Format) + switch format { + case teleport.Text, "": + return printGitServersAsText(cf, resources) + case teleport.JSON, teleport.YAML: + /* TODO + out, err := serializeNodes(nodes, format) + if err != nil { + return trace.Wrap(err) + } + if _, err := fmt.Fprintln(cf.Stdout(), out); err != nil { + return trace.Wrap(err) + } + */ + return trace.BadParameter("unsupported format %q", format) + default: + return trace.BadParameter("unsupported format %q", format) + } + return nil +} + +func printGitServersAsText(cf *CLIConf, resources []*types.EnrichedResource) error { + // TODO(greedy52) verbose mode? + var rows [][]string + for _, resource := range resources { + server, ok := resource.ResourceWithLabels.(types.Server) + if !ok { + return trace.BadParameter("expecting Git server but got %v", server) + } + + login := "(missing username)" + if len(resource.Logins) > 0 { + login = resource.Logins[0] + } + + if github := server.GetGitHub(); github != nil { + rows = append(rows, []string{ + "GitHub", + github.Organization, + login, + fmt.Sprintf("https://github.com/%s", github.Organization), + }) + } else { + return trace.BadParameter("expecting Git server but got %v", server) + } + } + + t := asciitable.MakeTable([]string{"Type", "Organization", "Username", "URL"}, rows...) + if _, err := fmt.Fprintln(cf.Stdout(), t.AsBuffer().String()); err != nil { + return trace.Wrap(err) + } + + fmt.Fprintln(cf.Stdout(), listGitServerHint) + + return nil +} + +func parseGitURL(url string) (string, string, error) { + // TODO support https url + _, hostAndMore, ok := strings.Cut(url, "@") + if !ok { + return "", "", trace.BadParameter("cannot parse git URL %s", url) + } + host, orgAndMore, ok := strings.Cut(hostAndMore, ":") + if !ok { + return "", "", trace.BadParameter("cannot parse git URL %s", url) + } + org, _, ok := strings.Cut(orgAndMore, "/") + if !ok { + return "", "", trace.BadParameter("cannot parse git URL %s", url) + } + return host, org, nil +} + +func makeGitSSHCommand(org string) string { + return "tsh git ssh --github-org " + org +} + +func getGitHubUsername(cf *CLIConf) (string, error) { + profile, err := cf.ProfileStatus() + if err != nil { + return "", trace.Wrap(err) + } + + usernames := profile.Traits[constants.TraitGitHubUsername] + if len(usernames) == 0 { + return "", trace.BadParameter("Your Teleport user does not have a GitHub username. Ask a cluster administrator to ensure your Teleport user has appropriate github_username set.") + } + // TODO print a warning for too many names? + return usernames[0], nil +} + +func maybeUseTTYAsStdinFallback(ctx context.Context) { + if prompt.Stdin().IsTerminal() { + return + } + + tty, err := os.Open("/dev/tty") + if err != nil { + log.Warn("Cannot open /dev/tty.") + return + } + + // Check if IsTerminal just to be safe. + cr := prompt.NewContextReader(tty) + if !cr.IsTerminal() { + defer tty.Close() + log.Warn("/dev/tty is not terminal.") + return + } + + go cr.HandleInterrupt() + prompt.SetStdin(cr) + + go func() { + <-ctx.Done() + tty.Close() + }() +} + +const listGitServerHint = "" + + "hint: use 'tsh git clone ' to clone a new repository\n" + + " use 'tsh git config update' to configure an existing repository to use Teleport\n" + + " once the repository is cloned or configured, use 'git' as normal\n" diff --git a/tool/tsh/common/tsh.go b/tool/tsh/common/tsh.go index 5c36fe9396310..57649e8728d06 100644 --- a/tool/tsh/common/tsh.go +++ b/tool/tsh/common/tsh.go @@ -550,12 +550,11 @@ type CLIConf struct { // DisableSSHResumption disables transparent SSH connection resumption. DisableSSHResumption bool - // GitUsername - GitUsername string - // GitServer - GitServer string + // GitHubOrg + GitHubOrg string // GitURL - GitURL string + GitURL string + GitConfigAction string } // Stdout returns the stdout writer. @@ -1210,14 +1209,18 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { vnetAdminSetupCmd := newVnetAdminSetupCommand(app) vnetDaemonCmd := newVnetDaemonCommand(app) - git := app.Command("git", "Git proxy commands.") + git := app.Command("git", "Git server commands.") + gitList := git.Command("ls", "List Git servers.") + // TODO(greedy52) support search keywords etc. + + gitConfig := git.Command("config", "Check Teleport config of the working git dir.") + gitConfig.Arg("action", "Action to perform. Valid options: update or reset.").EnumVar(&cf.GitConfigAction, "", "update", "reset") + gitClone := git.Command("clone", "Git clone.") - gitClone.Flag("username", "Git username.").Required().StringVar(&cf.GitUsername) gitClone.Arg("git-url", "Git URL").Required().StringVar(&cf.GitURL) gitSSH := git.Command("ssh", "Proxy Git SSH.").Hidden() - gitSSH.Flag("username", "Git username.").Required().StringVar(&cf.GitUsername) - gitSSH.Flag("server", "Git proxy server.").Required().StringVar(&cf.GitServer) + gitSSH.Flag("github-org", "GitHub organization.").Required().StringVar(&cf.GitHubOrg) gitSSH.Arg("[user@]host", "Remote hostname and the login to use").Required().StringVar(&cf.UserHost) gitSSH.Arg("command", "Command to execute on a remote host").StringsVar(&cf.RemoteCommand) gitSSH.Flag("option", "OpenSSH options in the format used in the configuration file").Short('o').AllowDuplicate().StringsVar(&cf.Options) @@ -1593,6 +1596,12 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { err = vnetDaemonCmd.run(&cf) case gitSSH.FullCommand(): err = onGitSSH(&cf) + case gitClone.FullCommand(): + err = onGitClone(&cf) + case gitList.FullCommand(): + err = onGitList(&cf) + case gitConfig.FullCommand(): + err = onGitConfig(&cf) default: // Handle commands that might not be available. switch { @@ -3658,6 +3667,10 @@ func onSSH(cf *CLIConf) error { fmt.Sprintf("%s@%s", tc.HostLogin, tc.Host), ) // Exit with the same exit status as the failed command. + return trace.Wrap(convertSSHExitCode(tc, err)) +} + +func convertSSHExitCode(tc *client.TeleportClient, err error) error { if tc.ExitStatus != 0 { var exitErr *common.ExitCodeError if errors.As(err, &exitErr) { diff --git a/web/packages/design/src/ResourceIcon/assets/git.svg b/web/packages/design/src/ResourceIcon/assets/git.svg new file mode 100644 index 0000000000000..cb1a374e8badc --- /dev/null +++ b/web/packages/design/src/ResourceIcon/assets/git.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/packages/design/src/ResourceIcon/icons.ts b/web/packages/design/src/ResourceIcon/icons.ts index aee4ef7939276..0fe803283641f 100644 --- a/web/packages/design/src/ResourceIcon/icons.ts +++ b/web/packages/design/src/ResourceIcon/icons.ts @@ -117,6 +117,7 @@ import g2 from './assets/g2.svg'; import gable from './assets/gable.svg'; import gemDark from './assets/gem-dark.svg'; import gemLight from './assets/gem-light.svg'; +import git from './assets/git.svg'; import githubDark from './assets/github-dark.svg'; import githubLight from './assets/github-light.svg'; import gitlab from './assets/gitlab.svg'; @@ -396,6 +397,7 @@ export { gable, gemDark, gemLight, + git, githubDark, githubLight, gitlab, diff --git a/web/packages/design/src/ResourceIcon/resourceIconSpecs.ts b/web/packages/design/src/ResourceIcon/resourceIconSpecs.ts index 26edb1aea66ba..32ed76cdc70c0 100644 --- a/web/packages/design/src/ResourceIcon/resourceIconSpecs.ts +++ b/web/packages/design/src/ResourceIcon/resourceIconSpecs.ts @@ -118,6 +118,7 @@ export const resourceIconSpecs = { g2: forAllThemes(i.g2), gable: forAllThemes(i.gable), gem: { dark: i.gemDark, light: i.gemLight }, + git: forAllThemes(i.git), github: { dark: i.githubDark, light: i.githubLight }, gitlab: forAllThemes(i.gitlab), gmail: forAllThemes(i.gmail), diff --git a/web/packages/design/src/assets/images/icons/github-mark-white.svg b/web/packages/design/src/assets/images/icons/github-mark-white.svg new file mode 100644 index 0000000000000..d5e64918546d9 --- /dev/null +++ b/web/packages/design/src/assets/images/icons/github-mark-white.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/packages/design/src/assets/images/icons/github-mark.svg b/web/packages/design/src/assets/images/icons/github-mark.svg new file mode 100644 index 0000000000000..37fa923df33fa --- /dev/null +++ b/web/packages/design/src/assets/images/icons/github-mark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web/packages/shared/components/UnifiedResources/FilterPanel.tsx b/web/packages/shared/components/UnifiedResources/FilterPanel.tsx index 3437efc1bba65..5aa735b436b85 100644 --- a/web/packages/shared/components/UnifiedResources/FilterPanel.tsx +++ b/web/packages/shared/components/UnifiedResources/FilterPanel.tsx @@ -52,6 +52,7 @@ const kindToLabel: Record = { kube_cluster: 'Kubernetes', node: 'Server', user_group: 'User group', + git_server: 'Git', }; const sortFieldOptions = [ diff --git a/web/packages/shared/components/UnifiedResources/shared/viewItemsFactory.ts b/web/packages/shared/components/UnifiedResources/shared/viewItemsFactory.ts index 9a70b5951a329..23c08fa8fb613 100644 --- a/web/packages/shared/components/UnifiedResources/shared/viewItemsFactory.ts +++ b/web/packages/shared/components/UnifiedResources/shared/viewItemsFactory.ts @@ -21,6 +21,7 @@ import { Database as DatabaseIcon, Kubernetes as KubernetesIcon, Server as ServerIcon, + GitHub as GitHubIcon, Desktop as DesktopIcon, } from 'design/Icon'; import { ResourceIconName } from 'design/ResourceIcon'; @@ -37,6 +38,7 @@ import { UnifiedResourceDesktop, UnifiedResourceKube, UnifiedResourceUserGroup, + UnifiedResourceGitServer, SharedUnifiedResource, } from '../types'; @@ -172,6 +174,27 @@ export function makeUnifiedResourceViewItemUserGroup( }; } +export function makeUnifiedResourceViewItemGitServer( + resource: UnifiedResourceNode, + ui: UnifiedResourceUi +): UnifiedResourceViewItem { + + return { + name: resource.github ? resource.github.organization: resource.hostname, + SecondaryIcon: GitHubIcon, + primaryIconName: 'git', + ActionButton: ui.ActionButton, + labels: resource.labels, + cardViewProps: { + primaryDesc: "GitHub Organization", + }, + listViewProps: { + resourceType: "GitHub Organization", + }, + requiresRequest: resource.requiresRequest, + }; +} + function formatNodeSubKind(subKind: NodeSubKind): string { switch (subKind) { case 'openssh-ec2-ice': @@ -216,5 +239,7 @@ export function mapResourceToViewItem({ resource, ui }: SharedUnifiedResource) { return makeUnifiedResourceViewItemDesktop(resource, ui); case 'user_group': return makeUnifiedResourceViewItemUserGroup(resource, ui); + case 'git_server': + return makeUnifiedResourceViewItemGitServer(resource, ui); } } diff --git a/web/packages/shared/components/UnifiedResources/types.ts b/web/packages/shared/components/UnifiedResources/types.ts index 22c0c52547181..8c249b43f7ca5 100644 --- a/web/packages/shared/components/UnifiedResources/types.ts +++ b/web/packages/shared/components/UnifiedResources/types.ts @@ -60,6 +60,18 @@ export interface UnifiedResourceNode { requiresRequest?: boolean; } +export interface UnifiedResourceGitServer { + kind: 'git_server'; + id: string; + hostname: string; + labels: ResourceLabel[]; + subKind: GitServerSubKind; + github?: { + organization: string; + }; + requiresRequest?: boolean; +} + export interface UnifiedResourceKube { kind: 'kube_cluster'; name: string; @@ -96,6 +108,7 @@ export type SharedUnifiedResource = { | UnifiedResourceNode | UnifiedResourceKube | UnifiedResourceDesktop + | UnifiedResourceGitServer | UnifiedResourceUserGroup; ui: UnifiedResourceUi; }; diff --git a/web/packages/shared/services/types.ts b/web/packages/shared/services/types.ts index ecc9c55f9233c..3f0896dc74f83 100644 --- a/web/packages/shared/services/types.ts +++ b/web/packages/shared/services/types.ts @@ -47,3 +47,5 @@ export type AuthProvider = { /** Values are taken from https://github.com/gravitational/teleport/blob/0460786b4c3afced1350dd9362ce761806e1c99d/api/types/constants.go#L140-L154 */ export type NodeSubKind = 'teleport' | 'openssh' | 'openssh-ec2-ice'; + +export type GitServerSubKind = 'github' ; diff --git a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx index 986f3e6a4954d..3b900566a0c25 100644 --- a/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx +++ b/web/packages/teleport/src/Audit/EventList/EventTypeCell.tsx @@ -288,6 +288,8 @@ const EventIconMap: Record = { [eventCodes.INTEGRATION_CREATE]: Icons.Info, [eventCodes.INTEGRATION_UPDATE]: Icons.Info, [eventCodes.INTEGRATION_DELETE]: Icons.Info, + [eventCodes.GIT_COMMAND]: Icons.GitHub, + [eventCodes.GIT_COMMAND_FAILURE]: Icons.GitHub, [eventCodes.UNKNOWN]: Icons.Question, }; diff --git a/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.story.tsx b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.story.tsx new file mode 100644 index 0000000000000..64c53edd97988 --- /dev/null +++ b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.story.tsx @@ -0,0 +1,94 @@ +/** + * 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 . + */ + +import React from 'react'; + +import ConnectDialog from './ConnectDialog'; + +export default { + title: 'Teleport/Databases/Connect', +}; + +export const ConnectDbNameFlagRequired = () => ( + null} + authType="local" + /> +); + +export const ConnectDbNameFlagOptional = () => ( + null} + authType="local" + /> +); + +export const ConnectNoDbNameFlag = () => ( + null} + authType="local" + /> +); + +export const ConnectDynamodb = () => ( + null} + authType="local" + /> +); + +export const ConnectSpanner = () => ( + null} + authType="local" + /> +); + +export const ConnectWithRequestId = () => { + return ( + null} + authType="local" + accessRequestId="e1e8072c-1eb8-5df4-a7bd-b6863b19271c" + /> + ); +}; diff --git a/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.test.tsx b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.test.tsx new file mode 100644 index 0000000000000..2660ea7c825b6 --- /dev/null +++ b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.test.tsx @@ -0,0 +1,102 @@ +/** + * 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 . + */ + +import React from 'react'; +import { render, screen } from 'design/utils/testing'; + +import ConnectDialog, { Props } from './ConnectDialog'; + +test('correct connect command generated for postgres db', () => { + render(); + + // --db-name flag should be required + const expectedOutput = + 'tsh db connect aurora --db-user= --db-name='; + + expect(screen.getByText(expectedOutput)).toBeInTheDocument(); +}); + +test('correct connect command generated for spanner', () => { + render(); + + // --db-name flag should be required + const expectedOutput = + 'tsh db connect gspanner --db-user= --db-name='; + + expect(screen.getByText(expectedOutput)).toBeInTheDocument(); +}); + +test('correct connect command generated for mysql db', () => { + render(); + + // --db-name flag should be optional + const expectedOutput = + 'tsh db connect aurora --db-user= [--db-name=]'; + + expect(screen.getByText(expectedOutput)).toBeInTheDocument(); +}); + +test('correct connect command generated for redis', () => { + render(); + + // There should be no --db-name flag + const expectedOutput = 'tsh db connect aurora --db-user='; + + expect(screen.getByText(expectedOutput)).toBeInTheDocument(); +}); + +test('correct connect command generated for dynamodb', () => { + render(); + + // Command should be `tsh proxy db --tunnel` instead of `tsh connect db` + const expectedOutput = 'tsh proxy db --tunnel aurora --db-user='; + + expect(screen.getByText(expectedOutput)).toBeInTheDocument(); +}); + +test('correct tsh login command generated with local authType', () => { + render(); + const output = + 'tsh login --proxy=localhost:443 --auth=local --user=yassine im-a-cluster'; + + expect(screen.getByText(output)).toBeInTheDocument(); +}); + +test('correct tsh login command generated with sso authType', () => { + render(); + const output = 'tsh login --proxy=localhost:443 im-a-cluster'; + + expect(screen.getByText(output)).toBeInTheDocument(); +}); + +test('correct tsh login command generated with passwordless authType', () => { + render(); + const output = + 'tsh login --proxy=localhost:443 --auth=passwordless --user=yassine im-a-cluster'; + + expect(screen.getByText(output)).toBeInTheDocument(); +}); + +const props: Props = { + username: 'yassine', + dbName: 'aurora', + clusterId: 'im-a-cluster', + onClose: () => null, + authType: 'local', + dbProtocol: 'postgres', +}; diff --git a/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.tsx b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.tsx new file mode 100644 index 0000000000000..7d3a5ad08c203 --- /dev/null +++ b/web/packages/teleport/src/GitServers/ConnectDialog/ConnectDialog.tsx @@ -0,0 +1,110 @@ +/** + * 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 . + */ + +import React from 'react'; +import { Text, Box, ButtonSecondary, Link } from 'design'; +import Dialog, { + DialogHeader, + DialogTitle, + DialogContent, + DialogFooter, +} from 'design/Dialog'; + +import { AuthType } from 'teleport/services/user'; +import TextSelectCopy from 'teleport/components/TextSelectCopy'; +import { generateTshLoginCommand } from 'teleport/lib/util'; + +export default function ConnectDialog({ + username, + clusterId, + organization, + onClose, + authType, + accessRequestId, +}: Props) { + let repoURL = "https://github.com/" + organization; + let title = "Connect To '" + organization + "' on GitHub" + return ( + ({ + maxWidth: '600px', + width: '100%', + })} + disableEscapeKeyDown={false} + onClose={onClose} + open={true} + > + + {title} + + + + + Step 1 + + {' - Login to Teleport'} + + + + + Step 2 + + {' - Connect'} +
+ {'To clone a new repository, find the SSH url of the repository on '} + + github.com + + {' then'} + `} + /> + {'To configure an existing git repository, go to the repository then'} + +
+ + {`Once the repository is cloned or configured, use 'git' as normal.`} + +
+ + Close + +
+ ); +} + +export type Props = { + organization: string; + onClose: () => void; + username: string; + clusterId: string; + authType: AuthType; + accessRequestId?: string; +}; diff --git a/web/packages/teleport/src/GitServers/ConnectDialog/index.ts b/web/packages/teleport/src/GitServers/ConnectDialog/index.ts new file mode 100644 index 0000000000000..36057e0d81bec --- /dev/null +++ b/web/packages/teleport/src/GitServers/ConnectDialog/index.ts @@ -0,0 +1,20 @@ +/** + * 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 . + */ + +import ConnectDialog from './ConnectDialog'; +export default ConnectDialog; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx new file mode 100644 index 0000000000000..d2aa232159413 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx @@ -0,0 +1,286 @@ +/** + * 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 React, { useEffect, useState } from 'react'; +import { Link as InternalRouteLink } from 'react-router-dom'; +import { useLocation } from 'react-router'; +import styled from 'styled-components'; +import { Box, ButtonSecondary, Text, Link, Flex, ButtonPrimary } from 'design'; +import * as Icons from 'design/Icon'; +import FieldInput from 'shared/components/FieldInput'; +import Validation, { Validator } from 'shared/components/Validation'; +import useAttempt from 'shared/hooks/useAttemptNext'; + +import { + IntegrationEnrollEvent, + IntegrationEnrollEventData, + IntegrationEnrollKind, + userEventService, +} from 'teleport/services/userEvent'; +import { Header } from 'teleport/Discover/Shared'; + +import { + Integration, + IntegrationKind, + integrationService, +} from 'teleport/services/integrations'; +import cfg from 'teleport/config'; + +import { TextSelectCopy } from 'shared/components/TextSelectCopy'; + +export function GitHub() { + const [username, setUsername] = useState(''); + const [integrationName, setIntegrationName] = useState(''); + const [isIntegrationNameEdited, setIsIntegrationNameEdited] = useState(false); + const [orgName, setOrgName] = useState(''); + const [createdIntegration, setCreatedIntegration] = useState(); + const { attempt, run } = useAttempt(''); + const [isCAExported, setCAExported] = useState(false); + const [isAccessSet, setAccessSet] = useState(false); + + const [eventData] = useState({ + id: crypto.randomUUID(), + kind: IntegrationEnrollKind.GitHub, + }); + + useEffect(() => { + if (!isIntegrationNameEdited) { + setIntegrationName("github-" + orgName); + } + }, [orgName, isIntegrationNameEdited]); + + function handleOnCreate(validator: Validator) { + if (!validator.validate()) { + return; + } + + run(() => + integrationService + .createIntegration({ + name: integrationName, + subKind: IntegrationKind.GitHub, //TODO + github: { + organization: orgName, + }, + }) + .then(res => { + setCreatedIntegration(res); + }) + ); + } + + function handleIntegrationNameChange(value: string) { + setIntegrationName(value); + setIsIntegrationNameEdited(true); + } + + if (isAccessSet) { + return ( + +
Create a GitHub Integration
+ + + + + Now to use the integration with 'git', login to Teleport: + + + {'To clone a new repository, find the SSH url of the repository on '} + + github.com + + {' then'} + `} + /> + {'To configure an existing git repository, go to the repository then'} + + + Once the repository is cloned or configured, use 'git' as normal. + + + + + + Go To Resources List + + + Go to Integration List + + + +
+ ) + } + if (isCAExported) { + return ( + +
Create a GitHub Integration
+ Update your user traits to allow access to the GitHub organization "{createdIntegration.spec.organization}" and provide your GitHub username. + + + Step 3 + + {({ validator }) => ( + + setUsername(e.target.value)} + /> + setUsername(e.target.value)} + /> + + )} + + + + setAccessSet(true)} + > + Configure access + + +
+ ) + } + if (createdIntegration) { + return ( + +
Create a GitHub Integration
+ + GitHub integration "{createdIntegration.name}" successfully added. Now we want add the SSH certificate authority to your GitHub organization. + + + + Step 2 + + Go to your organization's {' '} + + settings page for Authentication security + and click on "New CA": + + + +
+ + After the CA is added, it should have the following fingerprint: + + + +
+
+ + setCAExported(true)} + > + Next + + +
+ ) + } + return ( + +
Create a GitHub Integration
+ + + Teleport can issue short-lived SSH certificates for GitHub access. + + + + {({ validator }) => ( + <> + + Step 1 + + setOrgName(e.target.value)} + /> + handleIntegrationNameChange(e.target.value)} + /> + + + {attempt.status === 'failed' && ( + + + Error: {attempt.statusText} + + )} + + handleOnCreate(validator)} + disabled={ + attempt.status === 'processing' || !orgName + } + > + Create Integration + + + Back + + + + )} + +
+ ); +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; + +const RouteLink = styled(InternalRouteLink)` + color: ${({ theme }) => theme.colors.buttons.link.default}; + + &:hover, + &:focus { + color: ${({ theme }) => theme.colors.buttons.link.hover}; + } +`; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/index.ts b/web/packages/teleport/src/Integrations/Enroll/GitHub/index.ts new file mode 100644 index 0000000000000..f362b34110036 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/index.ts @@ -0,0 +1,19 @@ +/** + * 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 . + */ + +export { GitHub } from './GitHub'; diff --git a/web/packages/teleport/src/Integrations/Enroll/IntegrationRoute.tsx b/web/packages/teleport/src/Integrations/Enroll/IntegrationRoute.tsx index 347e226794abe..b9092effbf967 100644 --- a/web/packages/teleport/src/Integrations/Enroll/IntegrationRoute.tsx +++ b/web/packages/teleport/src/Integrations/Enroll/IntegrationRoute.tsx @@ -23,6 +23,7 @@ import { Route } from 'teleport/components/Router'; import { IntegrationKind } from 'teleport/services/integrations'; import { AwsOidc } from './AwsOidc'; +import { GitHub } from './GitHub'; export function getRoutesToEnrollIntegrations() { return [ @@ -32,5 +33,11 @@ export function getRoutesToEnrollIntegrations() { path={cfg.getIntegrationEnrollRoute(IntegrationKind.AwsOidc)} component={AwsOidc} />, + , ]; } diff --git a/web/packages/teleport/src/Integrations/Enroll/IntegrationTiles.tsx b/web/packages/teleport/src/Integrations/Enroll/IntegrationTiles.tsx index 1cb76ff971749..ecf4d75b55b6e 100644 --- a/web/packages/teleport/src/Integrations/Enroll/IntegrationTiles.tsx +++ b/web/packages/teleport/src/Integrations/Enroll/IntegrationTiles.tsx @@ -20,6 +20,7 @@ import React from 'react'; import { Link } from 'react-router-dom'; import { Text, Box } from 'design'; import { AWSIcon } from 'design/SVGIcon'; +import { GitHubIcon } from 'design/SVGIcon'; import cfg from 'teleport/config'; import { @@ -74,6 +75,34 @@ export function IntegrationTiles({ /> )} + + + + + + GitHub Organization + + {!hasIntegrationAccess && ( + + You don’t have sufficient permissions to create an integration. + Reach out to your Teleport administrator to request additional + permissions. + + } + /> + )} + {!isOnpremEnterprise && ( { } else { // Default is integration. switch (item.kind) { + case IntegrationKind.GitHub: + icon = ; + break case IntegrationKind.AwsOidc: case IntegrationKind.ExternalAuditStorage: formattedText = item.name; diff --git a/web/packages/teleport/src/UnifiedResources/ResourceActionButton.tsx b/web/packages/teleport/src/UnifiedResources/ResourceActionButton.tsx index c2c81ed31c47c..471080634e287 100644 --- a/web/packages/teleport/src/UnifiedResources/ResourceActionButton.tsx +++ b/web/packages/teleport/src/UnifiedResources/ResourceActionButton.tsx @@ -28,7 +28,9 @@ import { Database } from 'teleport/services/databases'; import { openNewTab } from 'teleport/lib/util'; import { Kube } from 'teleport/services/kube'; import { Desktop } from 'teleport/services/desktops'; +import { GitServer } from 'teleport/services/gitservers'; import DbConnectDialog from 'teleport/Databases/ConnectDialog'; +import GitServerConnectDialog from 'teleport/GitServers/ConnectDialog'; import KubeConnectDialog from 'teleport/Kubes/ConnectDialog'; import useStickyClusterId from 'teleport/useStickyClusterId'; import { Node, sortNodeLogins } from 'teleport/services/nodes'; @@ -55,6 +57,8 @@ export const ResourceActionButton = ({ resource }: Props) => { return ; case 'windows_desktop': return ; + case 'git_server': + return ; default: return null; } @@ -255,6 +259,41 @@ const AppLaunch = ({ app }: AppLaunchProps) => { ); }; +function GitServerConnect({ gitserver }: { gitserver: GitServer }) { + const ctx = useTeleport(); + const { clusterId } = useStickyClusterId(); + const [open, setOpen] = useState(false); + const organization = gitserver.github ? gitserver.github.organization : undefined; + const username = ctx.storeUser.state.username; + const authType = ctx.storeUser.state.authType; + const accessRequestId = ctx.storeUser.getAccessRequestId(); + return ( + <> + { + setOpen(true); + }} + > + Connect + + {open && ( + setOpen(false)} + authType={authType} + accessRequestId={accessRequestId} + /> + )} + + ); +} + + function DatabaseConnect({ database }: { database: Database }) { const { name, protocol } = database; const ctx = useTeleport(); diff --git a/web/packages/teleport/src/UnifiedResources/UnifiedResources.tsx b/web/packages/teleport/src/UnifiedResources/UnifiedResources.tsx index d3353edc34b7c..c36b6510dea3a 100644 --- a/web/packages/teleport/src/UnifiedResources/UnifiedResources.tsx +++ b/web/packages/teleport/src/UnifiedResources/UnifiedResources.tsx @@ -96,6 +96,10 @@ const getAvailableKindsWithAccess = (flags: FeatureFlags): FilterKind[] => { kind: 'windows_desktop', disabled: !flags.desktops, }, + { + kind: 'git_server', + disabled: !flags.nodes, + }, ]; }; diff --git a/web/packages/teleport/src/Users/UserAddEdit/TraitsEditor.tsx b/web/packages/teleport/src/Users/UserAddEdit/TraitsEditor.tsx index 50cba2e758791..ac6e86759887a 100644 --- a/web/packages/teleport/src/Users/UserAddEdit/TraitsEditor.tsx +++ b/web/packages/teleport/src/Users/UserAddEdit/TraitsEditor.tsx @@ -35,6 +35,7 @@ const traitsPreset = [ 'db_roles', 'db_users', 'gcp_service_accounts', + 'github_username', 'host_user_gid', 'host_user_uid', 'kubernetes_groups', diff --git a/web/packages/teleport/src/services/agents/types.ts b/web/packages/teleport/src/services/agents/types.ts index 767f43b9af79d..4b61edeb9f5d8 100644 --- a/web/packages/teleport/src/services/agents/types.ts +++ b/web/packages/teleport/src/services/agents/types.ts @@ -23,6 +23,7 @@ import { Database } from 'teleport/services/databases'; import { Node } from 'teleport/services/nodes'; import { Kube } from 'teleport/services/kube'; import { Desktop } from 'teleport/services/desktops'; +import { GitServer } from 'teleport/services/gitservers'; import { UserGroup } from '../userGroups'; @@ -35,6 +36,7 @@ export type UnifiedResource = | Node | Kube | Desktop + | GitServer | UserGroup; export type UnifiedResourceKind = UnifiedResource['kind']; diff --git a/web/packages/teleport/src/services/audit/makeEvent.ts b/web/packages/teleport/src/services/audit/makeEvent.ts index 7acaa2138b8f0..3636296d7ef46 100644 --- a/web/packages/teleport/src/services/audit/makeEvent.ts +++ b/web/packages/teleport/src/services/audit/makeEvent.ts @@ -1908,6 +1908,39 @@ export const formatters: Formatters = { return `User [${user}] deleted an integration [${name}]`; }, }, + [eventCodes.GIT_COMMAND]: { + type: 'git.command', + desc: 'Git Command', + format: ({ user, service, path, actions }) => { + if (service === "git-upload-pack") { + return `User [${user}] has fetched from [${path}]`; + }; + if (service === "git-receive-pack") { + if (actions && actions.length == 1) { + switch(actions[0].action) { + case "delete": + return `User [${user}] has deleted [${actions[0].reference}] from [${path}]`; + case "create": + return `User [${user}] has created [${actions[0].reference}] on [${path}]`; + case "update": + return `User [${user}] has updated [${actions[0].reference}] to [${actions[0].new.substring(0,7)}] on [${path}]`; + }; + }; + return `User [${user}] has attempted a push to [${path}]`; + } + if (service && path) { + return `User [${user}] has executed a Git Command [${service}] at [${path}]`; + } + return `User [${user}] has executed a GitHub Command`; + }, + }, + [eventCodes.GIT_COMMAND_FAILURE]: { + type: 'git.command', + desc: 'Git Command Failed', + format: ({ user, exitError, org }) => { + return `User [${user}] git command on [${org}] failed [${exitError}]}]`; + }, + }, [eventCodes.UNKNOWN]: { type: 'unknown', desc: 'Unknown Event', diff --git a/web/packages/teleport/src/services/audit/types.ts b/web/packages/teleport/src/services/audit/types.ts index c21b0810b1296..5a989231d2062 100644 --- a/web/packages/teleport/src/services/audit/types.ts +++ b/web/packages/teleport/src/services/audit/types.ts @@ -308,6 +308,8 @@ export const eventCodes = { INTEGRATION_CREATE: 'IG001I', INTEGRATION_UPDATE: 'IG002I', INTEGRATION_DELETE: 'IG003I', + GIT_COMMAND: 'T3013I', + GIT_COMMAND_FAILURE: 'T3013E', } as const; /** @@ -366,6 +368,12 @@ export type RawEvents = { typeof eventCodes.EXEC_FAILURE, { exitError: string } >; + [eventCodes.GIT_COMMAND]: RawEvent< + typeof eventCodes.GIT_COMMAND + >; + [eventCodes.GIT_COMMAND_FAILURE]: RawEvent< + typeof eventCodes.GIT_COMMAND_FAILURE + >; [eventCodes.BILLING_CARD_CREATE]: RawEvent< typeof eventCodes.BILLING_CARD_CREATE >; diff --git a/web/packages/teleport/src/services/gitservers/gitservers.ts b/web/packages/teleport/src/services/gitservers/gitservers.ts new file mode 100644 index 0000000000000..f6eafe2d46677 --- /dev/null +++ b/web/packages/teleport/src/services/gitservers/gitservers.ts @@ -0,0 +1,24 @@ +/** + * 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 . + */ + +import api from 'teleport/services/api'; +import cfg, { UrlResourcesParams } from 'teleport/config'; +import { ResourcesResponse } from 'teleport/services/agents'; + +import { GitServer } from './types'; +import makeGitServer from './makeGitServer'; diff --git a/web/packages/teleport/src/services/gitservers/index.ts b/web/packages/teleport/src/services/gitservers/index.ts new file mode 100644 index 0000000000000..69b87babe31e6 --- /dev/null +++ b/web/packages/teleport/src/services/gitservers/index.ts @@ -0,0 +1,23 @@ +/** + * 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 . + */ + +import service from './gitservers'; + +export * from './types'; +export * from './gitservers'; +export default service; diff --git a/web/packages/teleport/src/services/gitservers/makeGitServer.ts b/web/packages/teleport/src/services/gitservers/makeGitServer.ts new file mode 100644 index 0000000000000..9e044bf60eb57 --- /dev/null +++ b/web/packages/teleport/src/services/gitservers/makeGitServer.ts @@ -0,0 +1,55 @@ +/** + * 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 . + */ + +import { GitServer, GitHubMetadata } from './types'; + +export default function makeGitServer(json: any): GitServer { + json = json ?? {}; + const { + id, + siteId, + subKind, + hostname, + tags, + sshLogins, + github, + requiresRequest, + } = json; + + return { + kind: 'git_server', + id, + subKind, + clusterId: siteId, + hostname, + labels: tags ?? [], + requiresRequest, + sshLogins: sshLogins ?? [], + github: github ? makeGitHubMetadata(github) : undefined, + }; +} + +function makeGitHubMetadata(json: any): GitHubMetadata { + json = json ?? {}; + const { integration, organization } = json; + + return { + integration, + organization, + }; +} diff --git a/web/packages/teleport/src/services/gitservers/types.ts b/web/packages/teleport/src/services/gitservers/types.ts new file mode 100644 index 0000000000000..148928b3a5b8b --- /dev/null +++ b/web/packages/teleport/src/services/gitservers/types.ts @@ -0,0 +1,39 @@ +/** + * 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 . + */ + +import { GitServerSubKind } from 'shared/services'; + +import { ResourceLabel } from 'teleport/services/agents'; + +export interface GitServer { + kind: 'git_server'; + id: string; + clusterId: string; + hostname: string; + labels: ResourceLabel[]; + subKind: GitServerSubKind; + sshLogins: string[]; + github?: GitHubMetadata; + requiresRequest?: boolean; +} + +export type GitHubMetadata = { + integration: string; + organization: string; +}; + diff --git a/web/packages/teleport/src/services/integrations/integrations.ts b/web/packages/teleport/src/services/integrations/integrations.ts index f45b436394c43..be28f91650eb2 100644 --- a/web/packages/teleport/src/services/integrations/integrations.ts +++ b/web/packages/teleport/src/services/integrations/integrations.ts @@ -409,7 +409,7 @@ export function makeIntegrations(json: any): Integration[] { function makeIntegration(json: any): Integration { json = json || {}; - const { name, subKind, awsoidc } = json; + const { name, subKind, awsoidc, github } = json; return { resourceType: 'integration', name, @@ -418,7 +418,11 @@ function makeIntegration(json: any): Integration { roleArn: awsoidc?.roleArn, issuerS3Bucket: awsoidc?.issuerS3Bucket, issuerS3Prefix: awsoidc?.issuerS3Prefix, + organization: github?.organization, + publicKeys: github?.publicKeys, + fingerprints: github?.fingerprints, }, + details: github? "GitHub Organiztion \""+ github.organization +"\"": undefined, // The integration resource does not have a "status" field, but is // a required field for the table that lists both plugin and // integration resources together. As discussed, the only diff --git a/web/packages/teleport/src/services/integrations/types.ts b/web/packages/teleport/src/services/integrations/types.ts index 80dd390f5ec9a..0f4803f8325cc 100644 --- a/web/packages/teleport/src/services/integrations/types.ts +++ b/web/packages/teleport/src/services/integrations/types.ts @@ -52,12 +52,21 @@ export type Integration< export enum IntegrationKind { AwsOidc = 'aws-oidc', AzureOidc = 'azure-oidc', + GitHub = 'github', ExternalAuditStorage = 'external-audit-storage', } export type IntegrationSpecAwsOidc = { - roleArn: string; + roleArn?: string; issuerS3Prefix?: string; issuerS3Bucket?: string; + organization?: string; + publicKeys?: [string]; + fingerprints?: [string]; +}; +export type IntegrationSpecGitHub = { + organization: string; + publicKeys?: [string]; + fingerprints?: [string]; }; export enum IntegrationStatusCode { @@ -187,6 +196,7 @@ export type IntegrationCreateRequest = { name: string; subKind: IntegrationKind; awsoidc?: IntegrationSpecAwsOidc; + github?: IntegrationSpecGitHub; }; export type IntegrationListResponse = { diff --git a/web/packages/teleport/src/services/resources/makeUnifiedResource.ts b/web/packages/teleport/src/services/resources/makeUnifiedResource.ts index d0343d1f575fb..4b42f3d1c9714 100644 --- a/web/packages/teleport/src/services/resources/makeUnifiedResource.ts +++ b/web/packages/teleport/src/services/resources/makeUnifiedResource.ts @@ -22,6 +22,7 @@ import { makeDatabase } from '../databases/makeDatabase'; import { makeDesktop } from '../desktops/makeDesktop'; import makeKube from '../kube/makeKube'; import makeNode from '../nodes/makeNode'; +import makeGitServer from '../gitservers/makeGitServer'; export function makeUnifiedResource(json: any): UnifiedResource { json = json || {}; @@ -37,6 +38,8 @@ export function makeUnifiedResource(json: any): UnifiedResource { return makeNode(json); case 'windows_desktop': return makeDesktop(json); + case 'git_server': + return makeGitServer(json); default: throw new Error(`Unknown unified resource kind: "${json.kind}"`); } From f5934f9c0ea180e52179137f9b7b40b2e285fc2f Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Tue, 17 Sep 2024 09:46:05 -0400 Subject: [PATCH 3/8] per-session MFA --- api/client/proto/authservice.pb.go | 2735 +++++++++-------- .../legacy/client/proto/authservice.proto | 17 + api/types/events/events.pb.go | 108 +- api/types/server.go | 11 + lib/auth/auth.go | 32 + lib/auth/auth_with_roles.go | 2 + lib/auth/grpcserver.go | 6 + lib/client/api.go | 22 +- lib/client/client.go | 5 + lib/client/cluster_client.go | 21 +- 10 files changed, 1691 insertions(+), 1268 deletions(-) diff --git a/api/client/proto/authservice.pb.go b/api/client/proto/authservice.pb.go index e3a20a358e6bb..54af8e1739664 100644 --- a/api/client/proto/authservice.pb.go +++ b/api/client/proto/authservice.pb.go @@ -322,6 +322,9 @@ const ( // WindowsDesktop means a request for a TLS certificate for access to a specific // windows desktop. UserCertsRequest_WindowsDesktop UserCertsRequest_CertUsage = 5 + // GitServer means a request for an SSH certificate for access to a git + // server, as specified by RouteToGitServer. + UserCertsRequest_GitServer UserCertsRequest_CertUsage = 6 ) var UserCertsRequest_CertUsage_name = map[int32]string{ @@ -331,6 +334,7 @@ var UserCertsRequest_CertUsage_name = map[int32]string{ 3: "Database", 4: "App", 5: "WindowsDesktop", + 6: "GitServer", } var UserCertsRequest_CertUsage_value = map[string]int32{ @@ -340,6 +344,7 @@ var UserCertsRequest_CertUsage_value = map[string]int32{ "Database": 3, "App": 4, "WindowsDesktop": 5, + "GitServer": 6, } func (x UserCertsRequest_CertUsage) String() string { @@ -450,7 +455,7 @@ func (x DatabaseCertRequest_Requester) String() string { } func (DatabaseCertRequest_Requester) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{76, 0} + return fileDescriptor_0ffcffcda38ae159, []int{77, 0} } // Extensions are the extensions to add to the certificate. @@ -478,7 +483,7 @@ func (x DatabaseCertRequest_Extensions) String() string { } func (DatabaseCertRequest_Extensions) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{76, 1} + return fileDescriptor_0ffcffcda38ae159, []int{77, 1} } // Watch specifies watch parameters @@ -927,9 +932,11 @@ type UserCertsRequest struct { SSHPublicKeyAttestationStatement *v1.AttestationStatement `protobuf:"bytes,25,opt,name=SSHPublicKeyAttestationStatement,proto3" json:"ssh_public_key_attestation_statement,omitempty"` // TLSPublicKeyAttestationStatement is an attestation statement for TLSPublicKey. TLSPublicKeyAttestationStatement *v1.AttestationStatement `protobuf:"bytes,26,opt,name=TLSPublicKeyAttestationStatement,proto3" json:"tls_public_key_attestation_statement,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + // RouteToGitServer specifies application to issue certificate for. + RouteToGitServer RouteToGitServer `protobuf:"bytes,27,opt,name=RouteToGitServer,proto3" json:"route_to_git_server,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *UserCertsRequest) Reset() { *m = UserCertsRequest{} } @@ -1142,6 +1149,13 @@ func (m *UserCertsRequest) GetTLSPublicKeyAttestationStatement() *v1.Attestation return nil } +func (m *UserCertsRequest) GetRouteToGitServer() RouteToGitServer { + if m != nil { + return m.RouteToGitServer + } + return RouteToGitServer{} +} + // RouteToDatabase combines parameters for database service routing information. type RouteToDatabase struct { // ServiceName is the Teleport database proxy service name the cert is for. @@ -1285,6 +1299,55 @@ func (m *RouteToWindowsDesktop) GetLogin() string { return "" } +// RouteToGitServer combines parameters for Git server routing information. +type RouteToGitServer struct { + // GitHubOrganization is the GitHub organization to embed. + GitHubOrganization string `protobuf:"bytes,1,opt,name=GitHubOrganization,proto3" json:"github_organization"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RouteToGitServer) Reset() { *m = RouteToGitServer{} } +func (m *RouteToGitServer) String() string { return proto.CompactTextString(m) } +func (*RouteToGitServer) ProtoMessage() {} +func (*RouteToGitServer) Descriptor() ([]byte, []int) { + return fileDescriptor_0ffcffcda38ae159, []int{7} +} +func (m *RouteToGitServer) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *RouteToGitServer) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_RouteToGitServer.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *RouteToGitServer) XXX_Merge(src proto.Message) { + xxx_messageInfo_RouteToGitServer.Merge(m, src) +} +func (m *RouteToGitServer) XXX_Size() int { + return m.Size() +} +func (m *RouteToGitServer) XXX_DiscardUnknown() { + xxx_messageInfo_RouteToGitServer.DiscardUnknown(m) +} + +var xxx_messageInfo_RouteToGitServer proto.InternalMessageInfo + +func (m *RouteToGitServer) GetGitHubOrganization() string { + if m != nil { + return m.GitHubOrganization + } + return "" +} + // RouteToApp contains parameters for application access certificate requests. type RouteToApp struct { // Name is the application name certificate is being requested for. @@ -1314,7 +1377,7 @@ func (m *RouteToApp) Reset() { *m = RouteToApp{} } func (m *RouteToApp) String() string { return proto.CompactTextString(m) } func (*RouteToApp) ProtoMessage() {} func (*RouteToApp) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{7} + return fileDescriptor_0ffcffcda38ae159, []int{8} } func (m *RouteToApp) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1415,7 +1478,7 @@ func (m *GetUserRequest) Reset() { *m = GetUserRequest{} } func (m *GetUserRequest) String() string { return proto.CompactTextString(m) } func (*GetUserRequest) ProtoMessage() {} func (*GetUserRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{8} + return fileDescriptor_0ffcffcda38ae159, []int{9} } func (m *GetUserRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1471,7 +1534,7 @@ func (m *GetUsersRequest) Reset() { *m = GetUsersRequest{} } func (m *GetUsersRequest) String() string { return proto.CompactTextString(m) } func (*GetUsersRequest) ProtoMessage() {} func (*GetUsersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{9} + return fileDescriptor_0ffcffcda38ae159, []int{10} } func (m *GetUsersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1523,7 +1586,7 @@ func (m *ChangePasswordRequest) Reset() { *m = ChangePasswordRequest{} } func (m *ChangePasswordRequest) String() string { return proto.CompactTextString(m) } func (*ChangePasswordRequest) ProtoMessage() {} func (*ChangePasswordRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{10} + return fileDescriptor_0ffcffcda38ae159, []int{11} } func (m *ChangePasswordRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1599,7 +1662,7 @@ func (m *PluginDataSeq) Reset() { *m = PluginDataSeq{} } func (m *PluginDataSeq) String() string { return proto.CompactTextString(m) } func (*PluginDataSeq) ProtoMessage() {} func (*PluginDataSeq) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{11} + return fileDescriptor_0ffcffcda38ae159, []int{12} } func (m *PluginDataSeq) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1667,7 +1730,7 @@ func (m *RequestStateSetter) Reset() { *m = RequestStateSetter{} } func (m *RequestStateSetter) String() string { return proto.CompactTextString(m) } func (*RequestStateSetter) ProtoMessage() {} func (*RequestStateSetter) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{12} + return fileDescriptor_0ffcffcda38ae159, []int{13} } func (m *RequestStateSetter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1750,7 +1813,7 @@ func (m *RequestID) Reset() { *m = RequestID{} } func (m *RequestID) String() string { return proto.CompactTextString(m) } func (*RequestID) ProtoMessage() {} func (*RequestID) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{13} + return fileDescriptor_0ffcffcda38ae159, []int{14} } func (m *RequestID) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1798,7 +1861,7 @@ func (m *GetResetPasswordTokenRequest) Reset() { *m = GetResetPasswordTo func (m *GetResetPasswordTokenRequest) String() string { return proto.CompactTextString(m) } func (*GetResetPasswordTokenRequest) ProtoMessage() {} func (*GetResetPasswordTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{14} + return fileDescriptor_0ffcffcda38ae159, []int{15} } func (m *GetResetPasswordTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1851,7 +1914,7 @@ func (m *CreateResetPasswordTokenRequest) Reset() { *m = CreateResetPass func (m *CreateResetPasswordTokenRequest) String() string { return proto.CompactTextString(m) } func (*CreateResetPasswordTokenRequest) ProtoMessage() {} func (*CreateResetPasswordTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{15} + return fileDescriptor_0ffcffcda38ae159, []int{16} } func (m *CreateResetPasswordTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1917,7 +1980,7 @@ func (m *RenewableCertsRequest) Reset() { *m = RenewableCertsRequest{} } func (m *RenewableCertsRequest) String() string { return proto.CompactTextString(m) } func (*RenewableCertsRequest) ProtoMessage() {} func (*RenewableCertsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{16} + return fileDescriptor_0ffcffcda38ae159, []int{17} } func (m *RenewableCertsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1971,7 +2034,7 @@ func (m *PingRequest) Reset() { *m = PingRequest{} } func (m *PingRequest) String() string { return proto.CompactTextString(m) } func (*PingRequest) ProtoMessage() {} func (*PingRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{17} + return fileDescriptor_0ffcffcda38ae159, []int{18} } func (m *PingRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2027,7 +2090,7 @@ func (m *PingResponse) Reset() { *m = PingResponse{} } func (m *PingResponse) String() string { return proto.CompactTextString(m) } func (*PingResponse) ProtoMessage() {} func (*PingResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{18} + return fileDescriptor_0ffcffcda38ae159, []int{19} } func (m *PingResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2208,7 +2271,7 @@ func (m *Features) Reset() { *m = Features{} } func (m *Features) String() string { return proto.CompactTextString(m) } func (*Features) ProtoMessage() {} func (*Features) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{19} + return fileDescriptor_0ffcffcda38ae159, []int{20} } func (m *Features) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2483,7 +2546,7 @@ func (m *EntitlementInfo) Reset() { *m = EntitlementInfo{} } func (m *EntitlementInfo) String() string { return proto.CompactTextString(m) } func (*EntitlementInfo) ProtoMessage() {} func (*EntitlementInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{20} + return fileDescriptor_0ffcffcda38ae159, []int{21} } func (m *EntitlementInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2550,7 +2613,7 @@ func (m *DeviceTrustFeature) Reset() { *m = DeviceTrustFeature{} } func (m *DeviceTrustFeature) String() string { return proto.CompactTextString(m) } func (*DeviceTrustFeature) ProtoMessage() {} func (*DeviceTrustFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{21} + return fileDescriptor_0ffcffcda38ae159, []int{22} } func (m *DeviceTrustFeature) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2609,7 +2672,7 @@ func (m *AccessRequestsFeature) Reset() { *m = AccessRequestsFeature{} } func (m *AccessRequestsFeature) String() string { return proto.CompactTextString(m) } func (*AccessRequestsFeature) ProtoMessage() {} func (*AccessRequestsFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{22} + return fileDescriptor_0ffcffcda38ae159, []int{23} } func (m *AccessRequestsFeature) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2660,7 +2723,7 @@ func (m *AccessListFeature) Reset() { *m = AccessListFeature{} } func (m *AccessListFeature) String() string { return proto.CompactTextString(m) } func (*AccessListFeature) ProtoMessage() {} func (*AccessListFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{23} + return fileDescriptor_0ffcffcda38ae159, []int{24} } func (m *AccessListFeature) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2712,7 +2775,7 @@ func (m *AccessMonitoringFeature) Reset() { *m = AccessMonitoringFeature func (m *AccessMonitoringFeature) String() string { return proto.CompactTextString(m) } func (*AccessMonitoringFeature) ProtoMessage() {} func (*AccessMonitoringFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{24} + return fileDescriptor_0ffcffcda38ae159, []int{25} } func (m *AccessMonitoringFeature) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2768,7 +2831,7 @@ func (m *PolicyFeature) Reset() { *m = PolicyFeature{} } func (m *PolicyFeature) String() string { return proto.CompactTextString(m) } func (*PolicyFeature) ProtoMessage() {} func (*PolicyFeature) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{25} + return fileDescriptor_0ffcffcda38ae159, []int{26} } func (m *PolicyFeature) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2817,7 +2880,7 @@ func (m *DeleteUserRequest) Reset() { *m = DeleteUserRequest{} } func (m *DeleteUserRequest) String() string { return proto.CompactTextString(m) } func (*DeleteUserRequest) ProtoMessage() {} func (*DeleteUserRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{26} + return fileDescriptor_0ffcffcda38ae159, []int{27} } func (m *DeleteUserRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2865,7 +2928,7 @@ func (m *Semaphores) Reset() { *m = Semaphores{} } func (m *Semaphores) String() string { return proto.CompactTextString(m) } func (*Semaphores) ProtoMessage() {} func (*Semaphores) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{27} + return fileDescriptor_0ffcffcda38ae159, []int{28} } func (m *Semaphores) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2922,7 +2985,7 @@ func (m *AuditStreamRequest) Reset() { *m = AuditStreamRequest{} } func (m *AuditStreamRequest) String() string { return proto.CompactTextString(m) } func (*AuditStreamRequest) ProtoMessage() {} func (*AuditStreamRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{28} + return fileDescriptor_0ffcffcda38ae159, []int{29} } func (m *AuditStreamRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3047,7 +3110,7 @@ func (m *AuditStreamStatus) Reset() { *m = AuditStreamStatus{} } func (m *AuditStreamStatus) String() string { return proto.CompactTextString(m) } func (*AuditStreamStatus) ProtoMessage() {} func (*AuditStreamStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{29} + return fileDescriptor_0ffcffcda38ae159, []int{30} } func (m *AuditStreamStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3095,7 +3158,7 @@ func (m *CreateStream) Reset() { *m = CreateStream{} } func (m *CreateStream) String() string { return proto.CompactTextString(m) } func (*CreateStream) ProtoMessage() {} func (*CreateStream) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{30} + return fileDescriptor_0ffcffcda38ae159, []int{31} } func (m *CreateStream) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3146,7 +3209,7 @@ func (m *ResumeStream) Reset() { *m = ResumeStream{} } func (m *ResumeStream) String() string { return proto.CompactTextString(m) } func (*ResumeStream) ProtoMessage() {} func (*ResumeStream) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{31} + return fileDescriptor_0ffcffcda38ae159, []int{32} } func (m *ResumeStream) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3201,7 +3264,7 @@ func (m *CompleteStream) Reset() { *m = CompleteStream{} } func (m *CompleteStream) String() string { return proto.CompactTextString(m) } func (*CompleteStream) ProtoMessage() {} func (*CompleteStream) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{32} + return fileDescriptor_0ffcffcda38ae159, []int{33} } func (m *CompleteStream) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3241,7 +3304,7 @@ func (m *FlushAndCloseStream) Reset() { *m = FlushAndCloseStream{} } func (m *FlushAndCloseStream) String() string { return proto.CompactTextString(m) } func (*FlushAndCloseStream) ProtoMessage() {} func (*FlushAndCloseStream) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{33} + return fileDescriptor_0ffcffcda38ae159, []int{34} } func (m *FlushAndCloseStream) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3283,7 +3346,7 @@ func (m *UpsertApplicationServerRequest) Reset() { *m = UpsertApplicatio func (m *UpsertApplicationServerRequest) String() string { return proto.CompactTextString(m) } func (*UpsertApplicationServerRequest) ProtoMessage() {} func (*UpsertApplicationServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{34} + return fileDescriptor_0ffcffcda38ae159, []int{35} } func (m *UpsertApplicationServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3336,7 +3399,7 @@ func (m *DeleteApplicationServerRequest) Reset() { *m = DeleteApplicatio func (m *DeleteApplicationServerRequest) String() string { return proto.CompactTextString(m) } func (*DeleteApplicationServerRequest) ProtoMessage() {} func (*DeleteApplicationServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{35} + return fileDescriptor_0ffcffcda38ae159, []int{36} } func (m *DeleteApplicationServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3399,7 +3462,7 @@ func (m *DeleteAllApplicationServersRequest) Reset() { *m = DeleteAllApp func (m *DeleteAllApplicationServersRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAllApplicationServersRequest) ProtoMessage() {} func (*DeleteAllApplicationServersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{36} + return fileDescriptor_0ffcffcda38ae159, []int{37} } func (m *DeleteAllApplicationServersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3457,7 +3520,7 @@ func (m *GenerateAppTokenRequest) Reset() { *m = GenerateAppTokenRequest func (m *GenerateAppTokenRequest) String() string { return proto.CompactTextString(m) } func (*GenerateAppTokenRequest) ProtoMessage() {} func (*GenerateAppTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{37} + return fileDescriptor_0ffcffcda38ae159, []int{38} } func (m *GenerateAppTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3533,7 +3596,7 @@ func (m *GenerateAppTokenResponse) Reset() { *m = GenerateAppTokenRespon func (m *GenerateAppTokenResponse) String() string { return proto.CompactTextString(m) } func (*GenerateAppTokenResponse) ProtoMessage() {} func (*GenerateAppTokenResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{38} + return fileDescriptor_0ffcffcda38ae159, []int{39} } func (m *GenerateAppTokenResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3582,7 +3645,7 @@ func (m *GetAppSessionRequest) Reset() { *m = GetAppSessionRequest{} } func (m *GetAppSessionRequest) String() string { return proto.CompactTextString(m) } func (*GetAppSessionRequest) ProtoMessage() {} func (*GetAppSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{39} + return fileDescriptor_0ffcffcda38ae159, []int{40} } func (m *GetAppSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3631,7 +3694,7 @@ func (m *GetAppSessionResponse) Reset() { *m = GetAppSessionResponse{} } func (m *GetAppSessionResponse) String() string { return proto.CompactTextString(m) } func (*GetAppSessionResponse) ProtoMessage() {} func (*GetAppSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{40} + return fileDescriptor_0ffcffcda38ae159, []int{41} } func (m *GetAppSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3689,7 +3752,7 @@ func (m *ListAppSessionsRequest) Reset() { *m = ListAppSessionsRequest{} func (m *ListAppSessionsRequest) String() string { return proto.CompactTextString(m) } func (*ListAppSessionsRequest) ProtoMessage() {} func (*ListAppSessionsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{41} + return fileDescriptor_0ffcffcda38ae159, []int{42} } func (m *ListAppSessionsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3755,7 +3818,7 @@ func (m *ListAppSessionsResponse) Reset() { *m = ListAppSessionsResponse func (m *ListAppSessionsResponse) String() string { return proto.CompactTextString(m) } func (*ListAppSessionsResponse) ProtoMessage() {} func (*ListAppSessionsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{42} + return fileDescriptor_0ffcffcda38ae159, []int{43} } func (m *ListAppSessionsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3811,7 +3874,7 @@ func (m *GetSnowflakeSessionsResponse) Reset() { *m = GetSnowflakeSessio func (m *GetSnowflakeSessionsResponse) String() string { return proto.CompactTextString(m) } func (*GetSnowflakeSessionsResponse) ProtoMessage() {} func (*GetSnowflakeSessionsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{43} + return fileDescriptor_0ffcffcda38ae159, []int{44} } func (m *GetSnowflakeSessionsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3869,7 +3932,7 @@ func (m *ListSAMLIdPSessionsRequest) Reset() { *m = ListSAMLIdPSessionsR func (m *ListSAMLIdPSessionsRequest) String() string { return proto.CompactTextString(m) } func (*ListSAMLIdPSessionsRequest) ProtoMessage() {} func (*ListSAMLIdPSessionsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{44} + return fileDescriptor_0ffcffcda38ae159, []int{45} } func (m *ListSAMLIdPSessionsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3935,7 +3998,7 @@ func (m *ListSAMLIdPSessionsResponse) Reset() { *m = ListSAMLIdPSessions func (m *ListSAMLIdPSessionsResponse) String() string { return proto.CompactTextString(m) } func (*ListSAMLIdPSessionsResponse) ProtoMessage() {} func (*ListSAMLIdPSessionsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{45} + return fileDescriptor_0ffcffcda38ae159, []int{46} } func (m *ListSAMLIdPSessionsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4011,7 +4074,7 @@ func (m *CreateAppSessionRequest) Reset() { *m = CreateAppSessionRequest func (m *CreateAppSessionRequest) String() string { return proto.CompactTextString(m) } func (*CreateAppSessionRequest) ProtoMessage() {} func (*CreateAppSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{46} + return fileDescriptor_0ffcffcda38ae159, []int{47} } func (m *CreateAppSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4123,7 +4186,7 @@ func (m *CreateAppSessionResponse) Reset() { *m = CreateAppSessionRespon func (m *CreateAppSessionResponse) String() string { return proto.CompactTextString(m) } func (*CreateAppSessionResponse) ProtoMessage() {} func (*CreateAppSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{47} + return fileDescriptor_0ffcffcda38ae159, []int{48} } func (m *CreateAppSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4176,7 +4239,7 @@ func (m *CreateSnowflakeSessionRequest) Reset() { *m = CreateSnowflakeSe func (m *CreateSnowflakeSessionRequest) String() string { return proto.CompactTextString(m) } func (*CreateSnowflakeSessionRequest) ProtoMessage() {} func (*CreateSnowflakeSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{48} + return fileDescriptor_0ffcffcda38ae159, []int{49} } func (m *CreateSnowflakeSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4238,7 +4301,7 @@ func (m *CreateSnowflakeSessionResponse) Reset() { *m = CreateSnowflakeS func (m *CreateSnowflakeSessionResponse) String() string { return proto.CompactTextString(m) } func (*CreateSnowflakeSessionResponse) ProtoMessage() {} func (*CreateSnowflakeSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{49} + return fileDescriptor_0ffcffcda38ae159, []int{50} } func (m *CreateSnowflakeSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4291,7 +4354,7 @@ func (m *CreateSAMLIdPSessionRequest) Reset() { *m = CreateSAMLIdPSessio func (m *CreateSAMLIdPSessionRequest) String() string { return proto.CompactTextString(m) } func (*CreateSAMLIdPSessionRequest) ProtoMessage() {} func (*CreateSAMLIdPSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{50} + return fileDescriptor_0ffcffcda38ae159, []int{51} } func (m *CreateSAMLIdPSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4353,7 +4416,7 @@ func (m *CreateSAMLIdPSessionResponse) Reset() { *m = CreateSAMLIdPSessi func (m *CreateSAMLIdPSessionResponse) String() string { return proto.CompactTextString(m) } func (*CreateSAMLIdPSessionResponse) ProtoMessage() {} func (*CreateSAMLIdPSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{51} + return fileDescriptor_0ffcffcda38ae159, []int{52} } func (m *CreateSAMLIdPSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4402,7 +4465,7 @@ func (m *GetSnowflakeSessionRequest) Reset() { *m = GetSnowflakeSessionR func (m *GetSnowflakeSessionRequest) String() string { return proto.CompactTextString(m) } func (*GetSnowflakeSessionRequest) ProtoMessage() {} func (*GetSnowflakeSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{52} + return fileDescriptor_0ffcffcda38ae159, []int{53} } func (m *GetSnowflakeSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4451,7 +4514,7 @@ func (m *GetSnowflakeSessionResponse) Reset() { *m = GetSnowflakeSession func (m *GetSnowflakeSessionResponse) String() string { return proto.CompactTextString(m) } func (*GetSnowflakeSessionResponse) ProtoMessage() {} func (*GetSnowflakeSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{53} + return fileDescriptor_0ffcffcda38ae159, []int{54} } func (m *GetSnowflakeSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4500,7 +4563,7 @@ func (m *GetSAMLIdPSessionRequest) Reset() { *m = GetSAMLIdPSessionReque func (m *GetSAMLIdPSessionRequest) String() string { return proto.CompactTextString(m) } func (*GetSAMLIdPSessionRequest) ProtoMessage() {} func (*GetSAMLIdPSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{54} + return fileDescriptor_0ffcffcda38ae159, []int{55} } func (m *GetSAMLIdPSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4549,7 +4612,7 @@ func (m *GetSAMLIdPSessionResponse) Reset() { *m = GetSAMLIdPSessionResp func (m *GetSAMLIdPSessionResponse) String() string { return proto.CompactTextString(m) } func (*GetSAMLIdPSessionResponse) ProtoMessage() {} func (*GetSAMLIdPSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{55} + return fileDescriptor_0ffcffcda38ae159, []int{56} } func (m *GetSAMLIdPSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4597,7 +4660,7 @@ func (m *DeleteAppSessionRequest) Reset() { *m = DeleteAppSessionRequest func (m *DeleteAppSessionRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAppSessionRequest) ProtoMessage() {} func (*DeleteAppSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{56} + return fileDescriptor_0ffcffcda38ae159, []int{57} } func (m *DeleteAppSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4645,7 +4708,7 @@ func (m *DeleteSnowflakeSessionRequest) Reset() { *m = DeleteSnowflakeSe func (m *DeleteSnowflakeSessionRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSnowflakeSessionRequest) ProtoMessage() {} func (*DeleteSnowflakeSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{57} + return fileDescriptor_0ffcffcda38ae159, []int{58} } func (m *DeleteSnowflakeSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4693,7 +4756,7 @@ func (m *DeleteSAMLIdPSessionRequest) Reset() { *m = DeleteSAMLIdPSessio func (m *DeleteSAMLIdPSessionRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSAMLIdPSessionRequest) ProtoMessage() {} func (*DeleteSAMLIdPSessionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{58} + return fileDescriptor_0ffcffcda38ae159, []int{59} } func (m *DeleteSAMLIdPSessionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4742,7 +4805,7 @@ func (m *DeleteUserAppSessionsRequest) Reset() { *m = DeleteUserAppSessi func (m *DeleteUserAppSessionsRequest) String() string { return proto.CompactTextString(m) } func (*DeleteUserAppSessionsRequest) ProtoMessage() {} func (*DeleteUserAppSessionsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{59} + return fileDescriptor_0ffcffcda38ae159, []int{60} } func (m *DeleteUserAppSessionsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4791,7 +4854,7 @@ func (m *DeleteUserSAMLIdPSessionsRequest) Reset() { *m = DeleteUserSAML func (m *DeleteUserSAMLIdPSessionsRequest) String() string { return proto.CompactTextString(m) } func (*DeleteUserSAMLIdPSessionsRequest) ProtoMessage() {} func (*DeleteUserSAMLIdPSessionsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{60} + return fileDescriptor_0ffcffcda38ae159, []int{61} } func (m *DeleteUserSAMLIdPSessionsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4840,7 +4903,7 @@ func (m *GetWebSessionResponse) Reset() { *m = GetWebSessionResponse{} } func (m *GetWebSessionResponse) String() string { return proto.CompactTextString(m) } func (*GetWebSessionResponse) ProtoMessage() {} func (*GetWebSessionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{61} + return fileDescriptor_0ffcffcda38ae159, []int{62} } func (m *GetWebSessionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4889,7 +4952,7 @@ func (m *GetWebSessionsResponse) Reset() { *m = GetWebSessionsResponse{} func (m *GetWebSessionsResponse) String() string { return proto.CompactTextString(m) } func (*GetWebSessionsResponse) ProtoMessage() {} func (*GetWebSessionsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{62} + return fileDescriptor_0ffcffcda38ae159, []int{63} } func (m *GetWebSessionsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4938,7 +5001,7 @@ func (m *GetWebTokenResponse) Reset() { *m = GetWebTokenResponse{} } func (m *GetWebTokenResponse) String() string { return proto.CompactTextString(m) } func (*GetWebTokenResponse) ProtoMessage() {} func (*GetWebTokenResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{63} + return fileDescriptor_0ffcffcda38ae159, []int{64} } func (m *GetWebTokenResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4987,7 +5050,7 @@ func (m *GetWebTokensResponse) Reset() { *m = GetWebTokensResponse{} } func (m *GetWebTokensResponse) String() string { return proto.CompactTextString(m) } func (*GetWebTokensResponse) ProtoMessage() {} func (*GetWebTokensResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{64} + return fileDescriptor_0ffcffcda38ae159, []int{65} } func (m *GetWebTokensResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5036,7 +5099,7 @@ func (m *UpsertKubernetesServerRequest) Reset() { *m = UpsertKubernetesS func (m *UpsertKubernetesServerRequest) String() string { return proto.CompactTextString(m) } func (*UpsertKubernetesServerRequest) ProtoMessage() {} func (*UpsertKubernetesServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{65} + return fileDescriptor_0ffcffcda38ae159, []int{66} } func (m *UpsertKubernetesServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5087,7 +5150,7 @@ func (m *DeleteKubernetesServerRequest) Reset() { *m = DeleteKubernetesS func (m *DeleteKubernetesServerRequest) String() string { return proto.CompactTextString(m) } func (*DeleteKubernetesServerRequest) ProtoMessage() {} func (*DeleteKubernetesServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{66} + return fileDescriptor_0ffcffcda38ae159, []int{67} } func (m *DeleteKubernetesServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5141,7 +5204,7 @@ func (m *DeleteAllKubernetesServersRequest) Reset() { *m = DeleteAllKube func (m *DeleteAllKubernetesServersRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAllKubernetesServersRequest) ProtoMessage() {} func (*DeleteAllKubernetesServersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{67} + return fileDescriptor_0ffcffcda38ae159, []int{68} } func (m *DeleteAllKubernetesServersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5183,7 +5246,7 @@ func (m *UpsertDatabaseServerRequest) Reset() { *m = UpsertDatabaseServe func (m *UpsertDatabaseServerRequest) String() string { return proto.CompactTextString(m) } func (*UpsertDatabaseServerRequest) ProtoMessage() {} func (*UpsertDatabaseServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{68} + return fileDescriptor_0ffcffcda38ae159, []int{69} } func (m *UpsertDatabaseServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5236,7 +5299,7 @@ func (m *DeleteDatabaseServerRequest) Reset() { *m = DeleteDatabaseServe func (m *DeleteDatabaseServerRequest) String() string { return proto.CompactTextString(m) } func (*DeleteDatabaseServerRequest) ProtoMessage() {} func (*DeleteDatabaseServerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{69} + return fileDescriptor_0ffcffcda38ae159, []int{70} } func (m *DeleteDatabaseServerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5299,7 +5362,7 @@ func (m *DeleteAllDatabaseServersRequest) Reset() { *m = DeleteAllDataba func (m *DeleteAllDatabaseServersRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAllDatabaseServersRequest) ProtoMessage() {} func (*DeleteAllDatabaseServersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{70} + return fileDescriptor_0ffcffcda38ae159, []int{71} } func (m *DeleteAllDatabaseServersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5348,7 +5411,7 @@ func (m *DatabaseServiceV1List) Reset() { *m = DatabaseServiceV1List{} } func (m *DatabaseServiceV1List) String() string { return proto.CompactTextString(m) } func (*DatabaseServiceV1List) ProtoMessage() {} func (*DatabaseServiceV1List) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{71} + return fileDescriptor_0ffcffcda38ae159, []int{72} } func (m *DatabaseServiceV1List) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5397,7 +5460,7 @@ func (m *UpsertDatabaseServiceRequest) Reset() { *m = UpsertDatabaseServ func (m *UpsertDatabaseServiceRequest) String() string { return proto.CompactTextString(m) } func (*UpsertDatabaseServiceRequest) ProtoMessage() {} func (*UpsertDatabaseServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{72} + return fileDescriptor_0ffcffcda38ae159, []int{73} } func (m *UpsertDatabaseServiceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5444,7 +5507,7 @@ func (m *DeleteAllDatabaseServicesRequest) Reset() { *m = DeleteAllDatab func (m *DeleteAllDatabaseServicesRequest) String() string { return proto.CompactTextString(m) } func (*DeleteAllDatabaseServicesRequest) ProtoMessage() {} func (*DeleteAllDatabaseServicesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{73} + return fileDescriptor_0ffcffcda38ae159, []int{74} } func (m *DeleteAllDatabaseServicesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5489,7 +5552,7 @@ func (m *DatabaseCSRRequest) Reset() { *m = DatabaseCSRRequest{} } func (m *DatabaseCSRRequest) String() string { return proto.CompactTextString(m) } func (*DatabaseCSRRequest) ProtoMessage() {} func (*DatabaseCSRRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{74} + return fileDescriptor_0ffcffcda38ae159, []int{75} } func (m *DatabaseCSRRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5547,7 +5610,7 @@ func (m *DatabaseCSRResponse) Reset() { *m = DatabaseCSRResponse{} } func (m *DatabaseCSRResponse) String() string { return proto.CompactTextString(m) } func (*DatabaseCSRResponse) ProtoMessage() {} func (*DatabaseCSRResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{75} + return fileDescriptor_0ffcffcda38ae159, []int{76} } func (m *DatabaseCSRResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5617,7 +5680,7 @@ func (m *DatabaseCertRequest) Reset() { *m = DatabaseCertRequest{} } func (m *DatabaseCertRequest) String() string { return proto.CompactTextString(m) } func (*DatabaseCertRequest) ProtoMessage() {} func (*DatabaseCertRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{76} + return fileDescriptor_0ffcffcda38ae159, []int{77} } func (m *DatabaseCertRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5711,7 +5774,7 @@ func (m *DatabaseCertResponse) Reset() { *m = DatabaseCertResponse{} } func (m *DatabaseCertResponse) String() string { return proto.CompactTextString(m) } func (*DatabaseCertResponse) ProtoMessage() {} func (*DatabaseCertResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{77} + return fileDescriptor_0ffcffcda38ae159, []int{78} } func (m *DatabaseCertResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5767,7 +5830,7 @@ func (m *SnowflakeJWTRequest) Reset() { *m = SnowflakeJWTRequest{} } func (m *SnowflakeJWTRequest) String() string { return proto.CompactTextString(m) } func (*SnowflakeJWTRequest) ProtoMessage() {} func (*SnowflakeJWTRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{78} + return fileDescriptor_0ffcffcda38ae159, []int{79} } func (m *SnowflakeJWTRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5822,7 +5885,7 @@ func (m *SnowflakeJWTResponse) Reset() { *m = SnowflakeJWTResponse{} } func (m *SnowflakeJWTResponse) String() string { return proto.CompactTextString(m) } func (*SnowflakeJWTResponse) ProtoMessage() {} func (*SnowflakeJWTResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{79} + return fileDescriptor_0ffcffcda38ae159, []int{80} } func (m *SnowflakeJWTResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5871,7 +5934,7 @@ func (m *GetRoleRequest) Reset() { *m = GetRoleRequest{} } func (m *GetRoleRequest) String() string { return proto.CompactTextString(m) } func (*GetRoleRequest) ProtoMessage() {} func (*GetRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{80} + return fileDescriptor_0ffcffcda38ae159, []int{81} } func (m *GetRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5920,7 +5983,7 @@ func (m *GetRolesResponse) Reset() { *m = GetRolesResponse{} } func (m *GetRolesResponse) String() string { return proto.CompactTextString(m) } func (*GetRolesResponse) ProtoMessage() {} func (*GetRolesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{81} + return fileDescriptor_0ffcffcda38ae159, []int{82} } func (m *GetRolesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -5975,7 +6038,7 @@ func (m *ListRolesRequest) Reset() { *m = ListRolesRequest{} } func (m *ListRolesRequest) String() string { return proto.CompactTextString(m) } func (*ListRolesRequest) ProtoMessage() {} func (*ListRolesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{82} + return fileDescriptor_0ffcffcda38ae159, []int{83} } func (m *ListRolesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6040,7 +6103,7 @@ func (m *ListRolesResponse) Reset() { *m = ListRolesResponse{} } func (m *ListRolesResponse) String() string { return proto.CompactTextString(m) } func (*ListRolesResponse) ProtoMessage() {} func (*ListRolesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{83} + return fileDescriptor_0ffcffcda38ae159, []int{84} } func (m *ListRolesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6096,7 +6159,7 @@ func (m *CreateRoleRequest) Reset() { *m = CreateRoleRequest{} } func (m *CreateRoleRequest) String() string { return proto.CompactTextString(m) } func (*CreateRoleRequest) ProtoMessage() {} func (*CreateRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{84} + return fileDescriptor_0ffcffcda38ae159, []int{85} } func (m *CreateRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6145,7 +6208,7 @@ func (m *UpdateRoleRequest) Reset() { *m = UpdateRoleRequest{} } func (m *UpdateRoleRequest) String() string { return proto.CompactTextString(m) } func (*UpdateRoleRequest) ProtoMessage() {} func (*UpdateRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{85} + return fileDescriptor_0ffcffcda38ae159, []int{86} } func (m *UpdateRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6194,7 +6257,7 @@ func (m *UpsertRoleRequest) Reset() { *m = UpsertRoleRequest{} } func (m *UpsertRoleRequest) String() string { return proto.CompactTextString(m) } func (*UpsertRoleRequest) ProtoMessage() {} func (*UpsertRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{86} + return fileDescriptor_0ffcffcda38ae159, []int{87} } func (m *UpsertRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6243,7 +6306,7 @@ func (m *DeleteRoleRequest) Reset() { *m = DeleteRoleRequest{} } func (m *DeleteRoleRequest) String() string { return proto.CompactTextString(m) } func (*DeleteRoleRequest) ProtoMessage() {} func (*DeleteRoleRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{87} + return fileDescriptor_0ffcffcda38ae159, []int{88} } func (m *DeleteRoleRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6308,7 +6371,7 @@ func (m *MFAAuthenticateChallenge) Reset() { *m = MFAAuthenticateChallen func (m *MFAAuthenticateChallenge) String() string { return proto.CompactTextString(m) } func (*MFAAuthenticateChallenge) ProtoMessage() {} func (*MFAAuthenticateChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{88} + return fileDescriptor_0ffcffcda38ae159, []int{89} } func (m *MFAAuthenticateChallenge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6374,7 +6437,7 @@ func (m *MFAAuthenticateResponse) Reset() { *m = MFAAuthenticateResponse func (m *MFAAuthenticateResponse) String() string { return proto.CompactTextString(m) } func (*MFAAuthenticateResponse) ProtoMessage() {} func (*MFAAuthenticateResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{89} + return fileDescriptor_0ffcffcda38ae159, []int{90} } func (m *MFAAuthenticateResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6459,7 +6522,7 @@ func (m *TOTPChallenge) Reset() { *m = TOTPChallenge{} } func (m *TOTPChallenge) String() string { return proto.CompactTextString(m) } func (*TOTPChallenge) ProtoMessage() {} func (*TOTPChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{90} + return fileDescriptor_0ffcffcda38ae159, []int{91} } func (m *TOTPChallenge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6500,7 +6563,7 @@ func (m *TOTPResponse) Reset() { *m = TOTPResponse{} } func (m *TOTPResponse) String() string { return proto.CompactTextString(m) } func (*TOTPResponse) ProtoMessage() {} func (*TOTPResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{91} + return fileDescriptor_0ffcffcda38ae159, []int{92} } func (m *TOTPResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6553,7 +6616,7 @@ func (m *MFARegisterChallenge) Reset() { *m = MFARegisterChallenge{} } func (m *MFARegisterChallenge) String() string { return proto.CompactTextString(m) } func (*MFARegisterChallenge) ProtoMessage() {} func (*MFARegisterChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{92} + return fileDescriptor_0ffcffcda38ae159, []int{93} } func (m *MFARegisterChallenge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6642,7 +6705,7 @@ func (m *MFARegisterResponse) Reset() { *m = MFARegisterResponse{} } func (m *MFARegisterResponse) String() string { return proto.CompactTextString(m) } func (*MFARegisterResponse) ProtoMessage() {} func (*MFARegisterResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{93} + return fileDescriptor_0ffcffcda38ae159, []int{94} } func (m *MFARegisterResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6745,7 +6808,7 @@ func (m *TOTPRegisterChallenge) Reset() { *m = TOTPRegisterChallenge{} } func (m *TOTPRegisterChallenge) String() string { return proto.CompactTextString(m) } func (*TOTPRegisterChallenge) ProtoMessage() {} func (*TOTPRegisterChallenge) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{94} + return fileDescriptor_0ffcffcda38ae159, []int{95} } func (m *TOTPRegisterChallenge) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6844,7 +6907,7 @@ func (m *TOTPRegisterResponse) Reset() { *m = TOTPRegisterResponse{} } func (m *TOTPRegisterResponse) String() string { return proto.CompactTextString(m) } func (*TOTPRegisterResponse) ProtoMessage() {} func (*TOTPRegisterResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{95} + return fileDescriptor_0ffcffcda38ae159, []int{96} } func (m *TOTPRegisterResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6898,7 +6961,7 @@ func (m *AddMFADeviceRequest) Reset() { *m = AddMFADeviceRequest{} } func (m *AddMFADeviceRequest) String() string { return proto.CompactTextString(m) } func (*AddMFADeviceRequest) ProtoMessage() {} func (*AddMFADeviceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{96} + return fileDescriptor_0ffcffcda38ae159, []int{97} } func (m *AddMFADeviceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6938,7 +7001,7 @@ func (m *AddMFADeviceResponse) Reset() { *m = AddMFADeviceResponse{} } func (m *AddMFADeviceResponse) String() string { return proto.CompactTextString(m) } func (*AddMFADeviceResponse) ProtoMessage() {} func (*AddMFADeviceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{97} + return fileDescriptor_0ffcffcda38ae159, []int{98} } func (m *AddMFADeviceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -6978,7 +7041,7 @@ func (m *DeleteMFADeviceRequest) Reset() { *m = DeleteMFADeviceRequest{} func (m *DeleteMFADeviceRequest) String() string { return proto.CompactTextString(m) } func (*DeleteMFADeviceRequest) ProtoMessage() {} func (*DeleteMFADeviceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{98} + return fileDescriptor_0ffcffcda38ae159, []int{99} } func (m *DeleteMFADeviceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7018,7 +7081,7 @@ func (m *DeleteMFADeviceResponse) Reset() { *m = DeleteMFADeviceResponse func (m *DeleteMFADeviceResponse) String() string { return proto.CompactTextString(m) } func (*DeleteMFADeviceResponse) ProtoMessage() {} func (*DeleteMFADeviceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{99} + return fileDescriptor_0ffcffcda38ae159, []int{100} } func (m *DeleteMFADeviceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7073,7 +7136,7 @@ func (m *DeleteMFADeviceSyncRequest) Reset() { *m = DeleteMFADeviceSyncR func (m *DeleteMFADeviceSyncRequest) String() string { return proto.CompactTextString(m) } func (*DeleteMFADeviceSyncRequest) ProtoMessage() {} func (*DeleteMFADeviceSyncRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{100} + return fileDescriptor_0ffcffcda38ae159, []int{101} } func (m *DeleteMFADeviceSyncRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7153,7 +7216,7 @@ func (m *AddMFADeviceSyncRequest) Reset() { *m = AddMFADeviceSyncRequest func (m *AddMFADeviceSyncRequest) String() string { return proto.CompactTextString(m) } func (*AddMFADeviceSyncRequest) ProtoMessage() {} func (*AddMFADeviceSyncRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{101} + return fileDescriptor_0ffcffcda38ae159, []int{102} } func (m *AddMFADeviceSyncRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7229,7 +7292,7 @@ func (m *AddMFADeviceSyncResponse) Reset() { *m = AddMFADeviceSyncRespon func (m *AddMFADeviceSyncResponse) String() string { return proto.CompactTextString(m) } func (*AddMFADeviceSyncResponse) ProtoMessage() {} func (*AddMFADeviceSyncResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{102} + return fileDescriptor_0ffcffcda38ae159, []int{103} } func (m *AddMFADeviceSyncResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7284,7 +7347,7 @@ func (m *GetMFADevicesRequest) Reset() { *m = GetMFADevicesRequest{} } func (m *GetMFADevicesRequest) String() string { return proto.CompactTextString(m) } func (*GetMFADevicesRequest) ProtoMessage() {} func (*GetMFADevicesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{103} + return fileDescriptor_0ffcffcda38ae159, []int{104} } func (m *GetMFADevicesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7332,7 +7395,7 @@ func (m *GetMFADevicesResponse) Reset() { *m = GetMFADevicesResponse{} } func (m *GetMFADevicesResponse) String() string { return proto.CompactTextString(m) } func (*GetMFADevicesResponse) ProtoMessage() {} func (*GetMFADevicesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{104} + return fileDescriptor_0ffcffcda38ae159, []int{105} } func (m *GetMFADevicesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7379,7 +7442,7 @@ func (m *UserSingleUseCertsRequest) Reset() { *m = UserSingleUseCertsReq func (m *UserSingleUseCertsRequest) String() string { return proto.CompactTextString(m) } func (*UserSingleUseCertsRequest) ProtoMessage() {} func (*UserSingleUseCertsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{105} + return fileDescriptor_0ffcffcda38ae159, []int{106} } func (m *UserSingleUseCertsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7419,7 +7482,7 @@ func (m *UserSingleUseCertsResponse) Reset() { *m = UserSingleUseCertsRe func (m *UserSingleUseCertsResponse) String() string { return proto.CompactTextString(m) } func (*UserSingleUseCertsResponse) ProtoMessage() {} func (*UserSingleUseCertsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{106} + return fileDescriptor_0ffcffcda38ae159, []int{107} } func (m *UserSingleUseCertsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7458,6 +7521,7 @@ type IsMFARequiredRequest struct { // *IsMFARequiredRequest_WindowsDesktop // *IsMFARequiredRequest_AdminAction // *IsMFARequiredRequest_App + // *IsMFARequiredRequest_GitServer Target isIsMFARequiredRequest_Target `protobuf_oneof:"Target"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -7468,7 +7532,7 @@ func (m *IsMFARequiredRequest) Reset() { *m = IsMFARequiredRequest{} } func (m *IsMFARequiredRequest) String() string { return proto.CompactTextString(m) } func (*IsMFARequiredRequest) ProtoMessage() {} func (*IsMFARequiredRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{107} + return fileDescriptor_0ffcffcda38ae159, []int{108} } func (m *IsMFARequiredRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7521,6 +7585,9 @@ type IsMFARequiredRequest_AdminAction struct { type IsMFARequiredRequest_App struct { App *RouteToApp `protobuf:"bytes,6,opt,name=App,proto3,oneof" json:"App,omitempty"` } +type IsMFARequiredRequest_GitServer struct { + GitServer *RouteToGitServer `protobuf:"bytes,7,opt,name=GitServer,proto3,oneof" json:"GitServer,omitempty"` +} func (*IsMFARequiredRequest_KubernetesCluster) isIsMFARequiredRequest_Target() {} func (*IsMFARequiredRequest_Database) isIsMFARequiredRequest_Target() {} @@ -7528,6 +7595,7 @@ func (*IsMFARequiredRequest_Node) isIsMFARequiredRequest_Target() { func (*IsMFARequiredRequest_WindowsDesktop) isIsMFARequiredRequest_Target() {} func (*IsMFARequiredRequest_AdminAction) isIsMFARequiredRequest_Target() {} func (*IsMFARequiredRequest_App) isIsMFARequiredRequest_Target() {} +func (*IsMFARequiredRequest_GitServer) isIsMFARequiredRequest_Target() {} func (m *IsMFARequiredRequest) GetTarget() isIsMFARequiredRequest_Target { if m != nil { @@ -7578,6 +7646,13 @@ func (m *IsMFARequiredRequest) GetApp() *RouteToApp { return nil } +func (m *IsMFARequiredRequest) GetGitServer() *RouteToGitServer { + if x, ok := m.GetTarget().(*IsMFARequiredRequest_GitServer); ok { + return x.GitServer + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*IsMFARequiredRequest) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -7587,6 +7662,7 @@ func (*IsMFARequiredRequest) XXX_OneofWrappers() []interface{} { (*IsMFARequiredRequest_WindowsDesktop)(nil), (*IsMFARequiredRequest_AdminAction)(nil), (*IsMFARequiredRequest_App)(nil), + (*IsMFARequiredRequest_GitServer)(nil), } } @@ -7606,7 +7682,7 @@ func (m *StreamSessionEventsRequest) Reset() { *m = StreamSessionEventsR func (m *StreamSessionEventsRequest) String() string { return proto.CompactTextString(m) } func (*StreamSessionEventsRequest) ProtoMessage() {} func (*StreamSessionEventsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{108} + return fileDescriptor_0ffcffcda38ae159, []int{109} } func (m *StreamSessionEventsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7664,7 +7740,7 @@ func (m *NodeLogin) Reset() { *m = NodeLogin{} } func (m *NodeLogin) String() string { return proto.CompactTextString(m) } func (*NodeLogin) ProtoMessage() {} func (*NodeLogin) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{109} + return fileDescriptor_0ffcffcda38ae159, []int{110} } func (m *NodeLogin) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7718,7 +7794,7 @@ func (m *AdminAction) Reset() { *m = AdminAction{} } func (m *AdminAction) String() string { return proto.CompactTextString(m) } func (*AdminAction) ProtoMessage() {} func (*AdminAction) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{110} + return fileDescriptor_0ffcffcda38ae159, []int{111} } func (m *AdminAction) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7763,7 +7839,7 @@ func (m *IsMFARequiredResponse) Reset() { *m = IsMFARequiredResponse{} } func (m *IsMFARequiredResponse) String() string { return proto.CompactTextString(m) } func (*IsMFARequiredResponse) ProtoMessage() {} func (*IsMFARequiredResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{111} + return fileDescriptor_0ffcffcda38ae159, []int{112} } func (m *IsMFARequiredResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7833,7 +7909,7 @@ func (m *GetEventsRequest) Reset() { *m = GetEventsRequest{} } func (m *GetEventsRequest) String() string { return proto.CompactTextString(m) } func (*GetEventsRequest) ProtoMessage() {} func (*GetEventsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{112} + return fileDescriptor_0ffcffcda38ae159, []int{113} } func (m *GetEventsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -7934,7 +8010,7 @@ func (m *GetSessionEventsRequest) Reset() { *m = GetSessionEventsRequest func (m *GetSessionEventsRequest) String() string { return proto.CompactTextString(m) } func (*GetSessionEventsRequest) ProtoMessage() {} func (*GetSessionEventsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{113} + return fileDescriptor_0ffcffcda38ae159, []int{114} } func (m *GetSessionEventsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8014,7 +8090,7 @@ func (m *Events) Reset() { *m = Events{} } func (m *Events) String() string { return proto.CompactTextString(m) } func (*Events) ProtoMessage() {} func (*Events) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{114} + return fileDescriptor_0ffcffcda38ae159, []int{115} } func (m *Events) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8072,7 +8148,7 @@ func (m *GetLocksRequest) Reset() { *m = GetLocksRequest{} } func (m *GetLocksRequest) String() string { return proto.CompactTextString(m) } func (*GetLocksRequest) ProtoMessage() {} func (*GetLocksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{115} + return fileDescriptor_0ffcffcda38ae159, []int{116} } func (m *GetLocksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8127,7 +8203,7 @@ func (m *GetLocksResponse) Reset() { *m = GetLocksResponse{} } func (m *GetLocksResponse) String() string { return proto.CompactTextString(m) } func (*GetLocksResponse) ProtoMessage() {} func (*GetLocksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{116} + return fileDescriptor_0ffcffcda38ae159, []int{117} } func (m *GetLocksResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8175,7 +8251,7 @@ func (m *GetLockRequest) Reset() { *m = GetLockRequest{} } func (m *GetLockRequest) String() string { return proto.CompactTextString(m) } func (*GetLockRequest) ProtoMessage() {} func (*GetLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{117} + return fileDescriptor_0ffcffcda38ae159, []int{118} } func (m *GetLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8223,7 +8299,7 @@ func (m *DeleteLockRequest) Reset() { *m = DeleteLockRequest{} } func (m *DeleteLockRequest) String() string { return proto.CompactTextString(m) } func (*DeleteLockRequest) ProtoMessage() {} func (*DeleteLockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{118} + return fileDescriptor_0ffcffcda38ae159, []int{119} } func (m *DeleteLockRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8273,7 +8349,7 @@ func (m *ReplaceRemoteLocksRequest) Reset() { *m = ReplaceRemoteLocksReq func (m *ReplaceRemoteLocksRequest) String() string { return proto.CompactTextString(m) } func (*ReplaceRemoteLocksRequest) ProtoMessage() {} func (*ReplaceRemoteLocksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{119} + return fileDescriptor_0ffcffcda38ae159, []int{120} } func (m *ReplaceRemoteLocksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8329,7 +8405,7 @@ func (m *GetWindowsDesktopServicesResponse) Reset() { *m = GetWindowsDes func (m *GetWindowsDesktopServicesResponse) String() string { return proto.CompactTextString(m) } func (*GetWindowsDesktopServicesResponse) ProtoMessage() {} func (*GetWindowsDesktopServicesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{120} + return fileDescriptor_0ffcffcda38ae159, []int{121} } func (m *GetWindowsDesktopServicesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8378,7 +8454,7 @@ func (m *GetWindowsDesktopServiceRequest) Reset() { *m = GetWindowsDeskt func (m *GetWindowsDesktopServiceRequest) String() string { return proto.CompactTextString(m) } func (*GetWindowsDesktopServiceRequest) ProtoMessage() {} func (*GetWindowsDesktopServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{121} + return fileDescriptor_0ffcffcda38ae159, []int{122} } func (m *GetWindowsDesktopServiceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8427,7 +8503,7 @@ func (m *GetWindowsDesktopServiceResponse) Reset() { *m = GetWindowsDesk func (m *GetWindowsDesktopServiceResponse) String() string { return proto.CompactTextString(m) } func (*GetWindowsDesktopServiceResponse) ProtoMessage() {} func (*GetWindowsDesktopServiceResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{122} + return fileDescriptor_0ffcffcda38ae159, []int{123} } func (m *GetWindowsDesktopServiceResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8476,7 +8552,7 @@ func (m *DeleteWindowsDesktopServiceRequest) Reset() { *m = DeleteWindow func (m *DeleteWindowsDesktopServiceRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWindowsDesktopServiceRequest) ProtoMessage() {} func (*DeleteWindowsDesktopServiceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{123} + return fileDescriptor_0ffcffcda38ae159, []int{124} } func (m *DeleteWindowsDesktopServiceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8525,7 +8601,7 @@ func (m *GetWindowsDesktopsResponse) Reset() { *m = GetWindowsDesktopsRe func (m *GetWindowsDesktopsResponse) String() string { return proto.CompactTextString(m) } func (*GetWindowsDesktopsResponse) ProtoMessage() {} func (*GetWindowsDesktopsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{124} + return fileDescriptor_0ffcffcda38ae159, []int{125} } func (m *GetWindowsDesktopsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8578,7 +8654,7 @@ func (m *DeleteWindowsDesktopRequest) Reset() { *m = DeleteWindowsDeskto func (m *DeleteWindowsDesktopRequest) String() string { return proto.CompactTextString(m) } func (*DeleteWindowsDesktopRequest) ProtoMessage() {} func (*DeleteWindowsDesktopRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{125} + return fileDescriptor_0ffcffcda38ae159, []int{126} } func (m *DeleteWindowsDesktopRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8639,7 +8715,7 @@ func (m *WindowsDesktopCertRequest) Reset() { *m = WindowsDesktopCertReq func (m *WindowsDesktopCertRequest) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopCertRequest) ProtoMessage() {} func (*WindowsDesktopCertRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{126} + return fileDescriptor_0ffcffcda38ae159, []int{127} } func (m *WindowsDesktopCertRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8702,7 +8778,7 @@ func (m *WindowsDesktopCertResponse) Reset() { *m = WindowsDesktopCertRe func (m *WindowsDesktopCertResponse) String() string { return proto.CompactTextString(m) } func (*WindowsDesktopCertResponse) ProtoMessage() {} func (*WindowsDesktopCertResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{127} + return fileDescriptor_0ffcffcda38ae159, []int{128} } func (m *WindowsDesktopCertResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8751,7 +8827,7 @@ func (m *DesktopBootstrapScriptResponse) Reset() { *m = DesktopBootstrap func (m *DesktopBootstrapScriptResponse) String() string { return proto.CompactTextString(m) } func (*DesktopBootstrapScriptResponse) ProtoMessage() {} func (*DesktopBootstrapScriptResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{128} + return fileDescriptor_0ffcffcda38ae159, []int{129} } func (m *DesktopBootstrapScriptResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8802,7 +8878,7 @@ func (m *ListSAMLIdPServiceProvidersRequest) Reset() { *m = ListSAMLIdPS func (m *ListSAMLIdPServiceProvidersRequest) String() string { return proto.CompactTextString(m) } func (*ListSAMLIdPServiceProvidersRequest) ProtoMessage() {} func (*ListSAMLIdPServiceProvidersRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{129} + return fileDescriptor_0ffcffcda38ae159, []int{130} } func (m *ListSAMLIdPServiceProvidersRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8862,7 +8938,7 @@ func (m *ListSAMLIdPServiceProvidersResponse) Reset() { *m = ListSAMLIdP func (m *ListSAMLIdPServiceProvidersResponse) String() string { return proto.CompactTextString(m) } func (*ListSAMLIdPServiceProvidersResponse) ProtoMessage() {} func (*ListSAMLIdPServiceProvidersResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{130} + return fileDescriptor_0ffcffcda38ae159, []int{131} } func (m *ListSAMLIdPServiceProvidersResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8925,7 +9001,7 @@ func (m *GetSAMLIdPServiceProviderRequest) Reset() { *m = GetSAMLIdPServ func (m *GetSAMLIdPServiceProviderRequest) String() string { return proto.CompactTextString(m) } func (*GetSAMLIdPServiceProviderRequest) ProtoMessage() {} func (*GetSAMLIdPServiceProviderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{131} + return fileDescriptor_0ffcffcda38ae159, []int{132} } func (m *GetSAMLIdPServiceProviderRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -8974,7 +9050,7 @@ func (m *DeleteSAMLIdPServiceProviderRequest) Reset() { *m = DeleteSAMLI func (m *DeleteSAMLIdPServiceProviderRequest) String() string { return proto.CompactTextString(m) } func (*DeleteSAMLIdPServiceProviderRequest) ProtoMessage() {} func (*DeleteSAMLIdPServiceProviderRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{132} + return fileDescriptor_0ffcffcda38ae159, []int{133} } func (m *DeleteSAMLIdPServiceProviderRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9025,7 +9101,7 @@ func (m *ListUserGroupsRequest) Reset() { *m = ListUserGroupsRequest{} } func (m *ListUserGroupsRequest) String() string { return proto.CompactTextString(m) } func (*ListUserGroupsRequest) ProtoMessage() {} func (*ListUserGroupsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{133} + return fileDescriptor_0ffcffcda38ae159, []int{134} } func (m *ListUserGroupsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9085,7 +9161,7 @@ func (m *ListUserGroupsResponse) Reset() { *m = ListUserGroupsResponse{} func (m *ListUserGroupsResponse) String() string { return proto.CompactTextString(m) } func (*ListUserGroupsResponse) ProtoMessage() {} func (*ListUserGroupsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{134} + return fileDescriptor_0ffcffcda38ae159, []int{135} } func (m *ListUserGroupsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9148,7 +9224,7 @@ func (m *GetUserGroupRequest) Reset() { *m = GetUserGroupRequest{} } func (m *GetUserGroupRequest) String() string { return proto.CompactTextString(m) } func (*GetUserGroupRequest) ProtoMessage() {} func (*GetUserGroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{135} + return fileDescriptor_0ffcffcda38ae159, []int{136} } func (m *GetUserGroupRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9197,7 +9273,7 @@ func (m *DeleteUserGroupRequest) Reset() { *m = DeleteUserGroupRequest{} func (m *DeleteUserGroupRequest) String() string { return proto.CompactTextString(m) } func (*DeleteUserGroupRequest) ProtoMessage() {} func (*DeleteUserGroupRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{136} + return fileDescriptor_0ffcffcda38ae159, []int{137} } func (m *DeleteUserGroupRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9246,7 +9322,7 @@ func (m *CertAuthorityRequest) Reset() { *m = CertAuthorityRequest{} } func (m *CertAuthorityRequest) String() string { return proto.CompactTextString(m) } func (*CertAuthorityRequest) ProtoMessage() {} func (*CertAuthorityRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{137} + return fileDescriptor_0ffcffcda38ae159, []int{138} } func (m *CertAuthorityRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9295,7 +9371,7 @@ func (m *CRL) Reset() { *m = CRL{} } func (m *CRL) String() string { return proto.CompactTextString(m) } func (*CRL) ProtoMessage() {} func (*CRL) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{138} + return fileDescriptor_0ffcffcda38ae159, []int{139} } func (m *CRL) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9365,7 +9441,7 @@ func (m *ChangeUserAuthenticationRequest) Reset() { *m = ChangeUserAuthe func (m *ChangeUserAuthenticationRequest) String() string { return proto.CompactTextString(m) } func (*ChangeUserAuthenticationRequest) ProtoMessage() {} func (*ChangeUserAuthenticationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{139} + return fileDescriptor_0ffcffcda38ae159, []int{140} } func (m *ChangeUserAuthenticationRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9451,7 +9527,7 @@ func (m *ChangeUserAuthenticationResponse) Reset() { *m = ChangeUserAuth func (m *ChangeUserAuthenticationResponse) String() string { return proto.CompactTextString(m) } func (*ChangeUserAuthenticationResponse) ProtoMessage() {} func (*ChangeUserAuthenticationResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{140} + return fileDescriptor_0ffcffcda38ae159, []int{141} } func (m *ChangeUserAuthenticationResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9524,7 +9600,7 @@ func (m *StartAccountRecoveryRequest) Reset() { *m = StartAccountRecover func (m *StartAccountRecoveryRequest) String() string { return proto.CompactTextString(m) } func (*StartAccountRecoveryRequest) ProtoMessage() {} func (*StartAccountRecoveryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{141} + return fileDescriptor_0ffcffcda38ae159, []int{142} } func (m *StartAccountRecoveryRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9599,7 +9675,7 @@ func (m *VerifyAccountRecoveryRequest) Reset() { *m = VerifyAccountRecov func (m *VerifyAccountRecoveryRequest) String() string { return proto.CompactTextString(m) } func (*VerifyAccountRecoveryRequest) ProtoMessage() {} func (*VerifyAccountRecoveryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{142} + return fileDescriptor_0ffcffcda38ae159, []int{143} } func (m *VerifyAccountRecoveryRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9714,7 +9790,7 @@ func (m *CompleteAccountRecoveryRequest) Reset() { *m = CompleteAccountR func (m *CompleteAccountRecoveryRequest) String() string { return proto.CompactTextString(m) } func (*CompleteAccountRecoveryRequest) ProtoMessage() {} func (*CompleteAccountRecoveryRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{143} + return fileDescriptor_0ffcffcda38ae159, []int{144} } func (m *CompleteAccountRecoveryRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9820,7 +9896,7 @@ func (m *RecoveryCodes) Reset() { *m = RecoveryCodes{} } func (m *RecoveryCodes) String() string { return proto.CompactTextString(m) } func (*RecoveryCodes) ProtoMessage() {} func (*RecoveryCodes) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{144} + return fileDescriptor_0ffcffcda38ae159, []int{145} } func (m *RecoveryCodes) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9883,7 +9959,7 @@ func (m *CreateAccountRecoveryCodesRequest) Reset() { *m = CreateAccount func (m *CreateAccountRecoveryCodesRequest) String() string { return proto.CompactTextString(m) } func (*CreateAccountRecoveryCodesRequest) ProtoMessage() {} func (*CreateAccountRecoveryCodesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{145} + return fileDescriptor_0ffcffcda38ae159, []int{146} } func (m *CreateAccountRecoveryCodesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9934,7 +10010,7 @@ func (m *GetAccountRecoveryTokenRequest) Reset() { *m = GetAccountRecove func (m *GetAccountRecoveryTokenRequest) String() string { return proto.CompactTextString(m) } func (*GetAccountRecoveryTokenRequest) ProtoMessage() {} func (*GetAccountRecoveryTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{146} + return fileDescriptor_0ffcffcda38ae159, []int{147} } func (m *GetAccountRecoveryTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -9982,7 +10058,7 @@ func (m *GetAccountRecoveryCodesRequest) Reset() { *m = GetAccountRecove func (m *GetAccountRecoveryCodesRequest) String() string { return proto.CompactTextString(m) } func (*GetAccountRecoveryCodesRequest) ProtoMessage() {} func (*GetAccountRecoveryCodesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{147} + return fileDescriptor_0ffcffcda38ae159, []int{148} } func (m *GetAccountRecoveryCodesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10024,7 +10100,7 @@ func (m *UserCredentials) Reset() { *m = UserCredentials{} } func (m *UserCredentials) String() string { return proto.CompactTextString(m) } func (*UserCredentials) ProtoMessage() {} func (*UserCredentials) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{148} + return fileDescriptor_0ffcffcda38ae159, []int{149} } func (m *UserCredentials) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10078,7 +10154,7 @@ func (m *ContextUser) Reset() { *m = ContextUser{} } func (m *ContextUser) String() string { return proto.CompactTextString(m) } func (*ContextUser) ProtoMessage() {} func (*ContextUser) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{149} + return fileDescriptor_0ffcffcda38ae159, []int{150} } func (m *ContextUser) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10118,7 +10194,7 @@ func (m *Passwordless) Reset() { *m = Passwordless{} } func (m *Passwordless) String() string { return proto.CompactTextString(m) } func (*Passwordless) ProtoMessage() {} func (*Passwordless) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{150} + return fileDescriptor_0ffcffcda38ae159, []int{151} } func (m *Passwordless) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10182,7 +10258,7 @@ func (m *CreateAuthenticateChallengeRequest) Reset() { *m = CreateAuthen func (m *CreateAuthenticateChallengeRequest) String() string { return proto.CompactTextString(m) } func (*CreateAuthenticateChallengeRequest) ProtoMessage() {} func (*CreateAuthenticateChallengeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{151} + return fileDescriptor_0ffcffcda38ae159, []int{152} } func (m *CreateAuthenticateChallengeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10316,7 +10392,7 @@ func (m *CreatePrivilegeTokenRequest) Reset() { *m = CreatePrivilegeToke func (m *CreatePrivilegeTokenRequest) String() string { return proto.CompactTextString(m) } func (*CreatePrivilegeTokenRequest) ProtoMessage() {} func (*CreatePrivilegeTokenRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{152} + return fileDescriptor_0ffcffcda38ae159, []int{153} } func (m *CreatePrivilegeTokenRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10385,7 +10461,7 @@ func (m *CreateRegisterChallengeRequest) Reset() { *m = CreateRegisterCh func (m *CreateRegisterChallengeRequest) String() string { return proto.CompactTextString(m) } func (*CreateRegisterChallengeRequest) ProtoMessage() {} func (*CreateRegisterChallengeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{153} + return fileDescriptor_0ffcffcda38ae159, []int{154} } func (m *CreateRegisterChallengeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10474,7 +10550,7 @@ func (m *PaginatedResource) Reset() { *m = PaginatedResource{} } func (m *PaginatedResource) String() string { return proto.CompactTextString(m) } func (*PaginatedResource) ProtoMessage() {} func (*PaginatedResource) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{154} + return fileDescriptor_0ffcffcda38ae159, []int{155} } func (m *PaginatedResource) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10727,7 +10803,7 @@ func (m *ListUnifiedResourcesRequest) Reset() { *m = ListUnifiedResource func (m *ListUnifiedResourcesRequest) String() string { return proto.CompactTextString(m) } func (*ListUnifiedResourcesRequest) ProtoMessage() {} func (*ListUnifiedResourcesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{155} + return fileDescriptor_0ffcffcda38ae159, []int{156} } func (m *ListUnifiedResourcesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10864,7 +10940,7 @@ func (m *ListUnifiedResourcesResponse) Reset() { *m = ListUnifiedResourc func (m *ListUnifiedResourcesResponse) String() string { return proto.CompactTextString(m) } func (*ListUnifiedResourcesResponse) ProtoMessage() {} func (*ListUnifiedResourcesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{156} + return fileDescriptor_0ffcffcda38ae159, []int{157} } func (m *ListUnifiedResourcesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -10960,7 +11036,7 @@ func (m *ListResourcesRequest) Reset() { *m = ListResourcesRequest{} } func (m *ListResourcesRequest) String() string { return proto.CompactTextString(m) } func (*ListResourcesRequest) ProtoMessage() {} func (*ListResourcesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{157} + return fileDescriptor_0ffcffcda38ae159, []int{158} } func (m *ListResourcesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11096,7 +11172,7 @@ func (m *GetSSHTargetsRequest) Reset() { *m = GetSSHTargetsRequest{} } func (m *GetSSHTargetsRequest) String() string { return proto.CompactTextString(m) } func (*GetSSHTargetsRequest) ProtoMessage() {} func (*GetSSHTargetsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{158} + return fileDescriptor_0ffcffcda38ae159, []int{159} } func (m *GetSSHTargetsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11152,7 +11228,7 @@ func (m *GetSSHTargetsResponse) Reset() { *m = GetSSHTargetsResponse{} } func (m *GetSSHTargetsResponse) String() string { return proto.CompactTextString(m) } func (*GetSSHTargetsResponse) ProtoMessage() {} func (*GetSSHTargetsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{159} + return fileDescriptor_0ffcffcda38ae159, []int{160} } func (m *GetSSHTargetsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11207,7 +11283,7 @@ func (m *ListResourcesResponse) Reset() { *m = ListResourcesResponse{} } func (m *ListResourcesResponse) String() string { return proto.CompactTextString(m) } func (*ListResourcesResponse) ProtoMessage() {} func (*ListResourcesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{160} + return fileDescriptor_0ffcffcda38ae159, []int{161} } func (m *ListResourcesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11272,7 +11348,7 @@ func (m *CreateSessionTrackerRequest) Reset() { *m = CreateSessionTracke func (m *CreateSessionTrackerRequest) String() string { return proto.CompactTextString(m) } func (*CreateSessionTrackerRequest) ProtoMessage() {} func (*CreateSessionTrackerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{161} + return fileDescriptor_0ffcffcda38ae159, []int{162} } func (m *CreateSessionTrackerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11321,7 +11397,7 @@ func (m *GetSessionTrackerRequest) Reset() { *m = GetSessionTrackerReque func (m *GetSessionTrackerRequest) String() string { return proto.CompactTextString(m) } func (*GetSessionTrackerRequest) ProtoMessage() {} func (*GetSessionTrackerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{162} + return fileDescriptor_0ffcffcda38ae159, []int{163} } func (m *GetSessionTrackerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11370,7 +11446,7 @@ func (m *RemoveSessionTrackerRequest) Reset() { *m = RemoveSessionTracke func (m *RemoveSessionTrackerRequest) String() string { return proto.CompactTextString(m) } func (*RemoveSessionTrackerRequest) ProtoMessage() {} func (*RemoveSessionTrackerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{163} + return fileDescriptor_0ffcffcda38ae159, []int{164} } func (m *RemoveSessionTrackerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11418,7 +11494,7 @@ func (m *SessionTrackerUpdateState) Reset() { *m = SessionTrackerUpdateS func (m *SessionTrackerUpdateState) String() string { return proto.CompactTextString(m) } func (*SessionTrackerUpdateState) ProtoMessage() {} func (*SessionTrackerUpdateState) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{164} + return fileDescriptor_0ffcffcda38ae159, []int{165} } func (m *SessionTrackerUpdateState) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11466,7 +11542,7 @@ func (m *SessionTrackerAddParticipant) Reset() { *m = SessionTrackerAddP func (m *SessionTrackerAddParticipant) String() string { return proto.CompactTextString(m) } func (*SessionTrackerAddParticipant) ProtoMessage() {} func (*SessionTrackerAddParticipant) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{165} + return fileDescriptor_0ffcffcda38ae159, []int{166} } func (m *SessionTrackerAddParticipant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11514,7 +11590,7 @@ func (m *SessionTrackerRemoveParticipant) Reset() { *m = SessionTrackerR func (m *SessionTrackerRemoveParticipant) String() string { return proto.CompactTextString(m) } func (*SessionTrackerRemoveParticipant) ProtoMessage() {} func (*SessionTrackerRemoveParticipant) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{166} + return fileDescriptor_0ffcffcda38ae159, []int{167} } func (m *SessionTrackerRemoveParticipant) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11563,7 +11639,7 @@ func (m *SessionTrackerUpdateExpiry) Reset() { *m = SessionTrackerUpdate func (m *SessionTrackerUpdateExpiry) String() string { return proto.CompactTextString(m) } func (*SessionTrackerUpdateExpiry) ProtoMessage() {} func (*SessionTrackerUpdateExpiry) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{167} + return fileDescriptor_0ffcffcda38ae159, []int{168} } func (m *SessionTrackerUpdateExpiry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11618,7 +11694,7 @@ func (m *UpdateSessionTrackerRequest) Reset() { *m = UpdateSessionTracke func (m *UpdateSessionTrackerRequest) String() string { return proto.CompactTextString(m) } func (*UpdateSessionTrackerRequest) ProtoMessage() {} func (*UpdateSessionTrackerRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{168} + return fileDescriptor_0ffcffcda38ae159, []int{169} } func (m *UpdateSessionTrackerRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11736,7 +11812,7 @@ func (m *PresenceMFAChallengeRequest) Reset() { *m = PresenceMFAChalleng func (m *PresenceMFAChallengeRequest) String() string { return proto.CompactTextString(m) } func (*PresenceMFAChallengeRequest) ProtoMessage() {} func (*PresenceMFAChallengeRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{169} + return fileDescriptor_0ffcffcda38ae159, []int{170} } func (m *PresenceMFAChallengeRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11787,7 +11863,7 @@ func (m *PresenceMFAChallengeSend) Reset() { *m = PresenceMFAChallengeSe func (m *PresenceMFAChallengeSend) String() string { return proto.CompactTextString(m) } func (*PresenceMFAChallengeSend) ProtoMessage() {} func (*PresenceMFAChallengeSend) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{170} + return fileDescriptor_0ffcffcda38ae159, []int{171} } func (m *PresenceMFAChallengeSend) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11874,7 +11950,7 @@ func (m *GetDomainNameResponse) Reset() { *m = GetDomainNameResponse{} } func (m *GetDomainNameResponse) String() string { return proto.CompactTextString(m) } func (*GetDomainNameResponse) ProtoMessage() {} func (*GetDomainNameResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{171} + return fileDescriptor_0ffcffcda38ae159, []int{172} } func (m *GetDomainNameResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11923,7 +11999,7 @@ func (m *GetClusterCACertResponse) Reset() { *m = GetClusterCACertRespon func (m *GetClusterCACertResponse) String() string { return proto.CompactTextString(m) } func (*GetClusterCACertResponse) ProtoMessage() {} func (*GetClusterCACertResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{172} + return fileDescriptor_0ffcffcda38ae159, []int{173} } func (m *GetClusterCACertResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -11971,7 +12047,7 @@ func (m *GetLicenseResponse) Reset() { *m = GetLicenseResponse{} } func (m *GetLicenseResponse) String() string { return proto.CompactTextString(m) } func (*GetLicenseResponse) ProtoMessage() {} func (*GetLicenseResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{173} + return fileDescriptor_0ffcffcda38ae159, []int{174} } func (m *GetLicenseResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12019,7 +12095,7 @@ func (m *ListReleasesResponse) Reset() { *m = ListReleasesResponse{} } func (m *ListReleasesResponse) String() string { return proto.CompactTextString(m) } func (*ListReleasesResponse) ProtoMessage() {} func (*ListReleasesResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{174} + return fileDescriptor_0ffcffcda38ae159, []int{175} } func (m *ListReleasesResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12068,7 +12144,7 @@ func (m *GetOIDCAuthRequestRequest) Reset() { *m = GetOIDCAuthRequestReq func (m *GetOIDCAuthRequestRequest) String() string { return proto.CompactTextString(m) } func (*GetOIDCAuthRequestRequest) ProtoMessage() {} func (*GetOIDCAuthRequestRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{175} + return fileDescriptor_0ffcffcda38ae159, []int{176} } func (m *GetOIDCAuthRequestRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12117,7 +12193,7 @@ func (m *GetSAMLAuthRequestRequest) Reset() { *m = GetSAMLAuthRequestReq func (m *GetSAMLAuthRequestRequest) String() string { return proto.CompactTextString(m) } func (*GetSAMLAuthRequestRequest) ProtoMessage() {} func (*GetSAMLAuthRequestRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{176} + return fileDescriptor_0ffcffcda38ae159, []int{177} } func (m *GetSAMLAuthRequestRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12166,7 +12242,7 @@ func (m *GetGithubAuthRequestRequest) Reset() { *m = GetGithubAuthReques func (m *GetGithubAuthRequestRequest) String() string { return proto.CompactTextString(m) } func (*GetGithubAuthRequestRequest) ProtoMessage() {} func (*GetGithubAuthRequestRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{177} + return fileDescriptor_0ffcffcda38ae159, []int{178} } func (m *GetGithubAuthRequestRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12215,7 +12291,7 @@ func (m *CreateOIDCConnectorRequest) Reset() { *m = CreateOIDCConnectorR func (m *CreateOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateOIDCConnectorRequest) ProtoMessage() {} func (*CreateOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{178} + return fileDescriptor_0ffcffcda38ae159, []int{179} } func (m *CreateOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12264,7 +12340,7 @@ func (m *UpdateOIDCConnectorRequest) Reset() { *m = UpdateOIDCConnectorR func (m *UpdateOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateOIDCConnectorRequest) ProtoMessage() {} func (*UpdateOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{179} + return fileDescriptor_0ffcffcda38ae159, []int{180} } func (m *UpdateOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12313,7 +12389,7 @@ func (m *UpsertOIDCConnectorRequest) Reset() { *m = UpsertOIDCConnectorR func (m *UpsertOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertOIDCConnectorRequest) ProtoMessage() {} func (*UpsertOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{180} + return fileDescriptor_0ffcffcda38ae159, []int{181} } func (m *UpsertOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12362,7 +12438,7 @@ func (m *CreateSAMLConnectorRequest) Reset() { *m = CreateSAMLConnectorR func (m *CreateSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateSAMLConnectorRequest) ProtoMessage() {} func (*CreateSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{181} + return fileDescriptor_0ffcffcda38ae159, []int{182} } func (m *CreateSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12411,7 +12487,7 @@ func (m *UpdateSAMLConnectorRequest) Reset() { *m = UpdateSAMLConnectorR func (m *UpdateSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateSAMLConnectorRequest) ProtoMessage() {} func (*UpdateSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{182} + return fileDescriptor_0ffcffcda38ae159, []int{183} } func (m *UpdateSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12460,7 +12536,7 @@ func (m *UpsertSAMLConnectorRequest) Reset() { *m = UpsertSAMLConnectorR func (m *UpsertSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertSAMLConnectorRequest) ProtoMessage() {} func (*UpsertSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{183} + return fileDescriptor_0ffcffcda38ae159, []int{184} } func (m *UpsertSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12509,7 +12585,7 @@ func (m *CreateGithubConnectorRequest) Reset() { *m = CreateGithubConnec func (m *CreateGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateGithubConnectorRequest) ProtoMessage() {} func (*CreateGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{184} + return fileDescriptor_0ffcffcda38ae159, []int{185} } func (m *CreateGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12558,7 +12634,7 @@ func (m *UpdateGithubConnectorRequest) Reset() { *m = UpdateGithubConnec func (m *UpdateGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateGithubConnectorRequest) ProtoMessage() {} func (*UpdateGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{185} + return fileDescriptor_0ffcffcda38ae159, []int{186} } func (m *UpdateGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12607,7 +12683,7 @@ func (m *UpsertGithubConnectorRequest) Reset() { *m = UpsertGithubConnec func (m *UpsertGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertGithubConnectorRequest) ProtoMessage() {} func (*UpsertGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{186} + return fileDescriptor_0ffcffcda38ae159, []int{187} } func (m *UpsertGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12658,7 +12734,7 @@ func (m *GetSSODiagnosticInfoRequest) Reset() { *m = GetSSODiagnosticInf func (m *GetSSODiagnosticInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetSSODiagnosticInfoRequest) ProtoMessage() {} func (*GetSSODiagnosticInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{187} + return fileDescriptor_0ffcffcda38ae159, []int{188} } func (m *GetSSODiagnosticInfoRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12724,7 +12800,7 @@ func (m *SystemRoleAssertion) Reset() { *m = SystemRoleAssertion{} } func (m *SystemRoleAssertion) String() string { return proto.CompactTextString(m) } func (*SystemRoleAssertion) ProtoMessage() {} func (*SystemRoleAssertion) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{188} + return fileDescriptor_0ffcffcda38ae159, []int{189} } func (m *SystemRoleAssertion) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12794,7 +12870,7 @@ func (m *SystemRoleAssertionSet) Reset() { *m = SystemRoleAssertionSet{} func (m *SystemRoleAssertionSet) String() string { return proto.CompactTextString(m) } func (*SystemRoleAssertionSet) ProtoMessage() {} func (*SystemRoleAssertionSet) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{189} + return fileDescriptor_0ffcffcda38ae159, []int{190} } func (m *SystemRoleAssertionSet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12863,7 +12939,7 @@ func (m *UpstreamInventoryOneOf) Reset() { *m = UpstreamInventoryOneOf{} func (m *UpstreamInventoryOneOf) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryOneOf) ProtoMessage() {} func (*UpstreamInventoryOneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{190} + return fileDescriptor_0ffcffcda38ae159, []int{191} } func (m *UpstreamInventoryOneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12990,7 +13066,7 @@ func (m *DownstreamInventoryOneOf) Reset() { *m = DownstreamInventoryOne func (m *DownstreamInventoryOneOf) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryOneOf) ProtoMessage() {} func (*DownstreamInventoryOneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{191} + return fileDescriptor_0ffcffcda38ae159, []int{192} } func (m *DownstreamInventoryOneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13089,7 +13165,7 @@ func (m *DownstreamInventoryPing) Reset() { *m = DownstreamInventoryPing func (m *DownstreamInventoryPing) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryPing) ProtoMessage() {} func (*DownstreamInventoryPing) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{192} + return fileDescriptor_0ffcffcda38ae159, []int{193} } func (m *DownstreamInventoryPing) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13138,7 +13214,7 @@ func (m *UpstreamInventoryPong) Reset() { *m = UpstreamInventoryPong{} } func (m *UpstreamInventoryPong) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryPong) ProtoMessage() {} func (*UpstreamInventoryPong) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{193} + return fileDescriptor_0ffcffcda38ae159, []int{194} } func (m *UpstreamInventoryPong) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13205,7 +13281,7 @@ func (m *UpstreamInventoryHello) Reset() { *m = UpstreamInventoryHello{} func (m *UpstreamInventoryHello) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryHello) ProtoMessage() {} func (*UpstreamInventoryHello) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{194} + return fileDescriptor_0ffcffcda38ae159, []int{195} } func (m *UpstreamInventoryHello) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13305,7 +13381,7 @@ func (m *UpstreamInventoryAgentMetadata) Reset() { *m = UpstreamInventor func (m *UpstreamInventoryAgentMetadata) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryAgentMetadata) ProtoMessage() {} func (*UpstreamInventoryAgentMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{195} + return fileDescriptor_0ffcffcda38ae159, []int{196} } func (m *UpstreamInventoryAgentMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13407,7 +13483,7 @@ func (m *DownstreamInventoryHello) Reset() { *m = DownstreamInventoryHel func (m *DownstreamInventoryHello) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryHello) ProtoMessage() {} func (*DownstreamInventoryHello) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{196} + return fileDescriptor_0ffcffcda38ae159, []int{197} } func (m *DownstreamInventoryHello) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13510,7 +13586,7 @@ func (m *DownstreamInventoryHello_SupportedCapabilities) String() string { } func (*DownstreamInventoryHello_SupportedCapabilities) ProtoMessage() {} func (*DownstreamInventoryHello_SupportedCapabilities) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{196, 0} + return fileDescriptor_0ffcffcda38ae159, []int{197, 0} } func (m *DownstreamInventoryHello_SupportedCapabilities) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13683,7 +13759,7 @@ func (m *InventoryUpdateLabelsRequest) Reset() { *m = InventoryUpdateLab func (m *InventoryUpdateLabelsRequest) String() string { return proto.CompactTextString(m) } func (*InventoryUpdateLabelsRequest) ProtoMessage() {} func (*InventoryUpdateLabelsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{197} + return fileDescriptor_0ffcffcda38ae159, []int{198} } func (m *InventoryUpdateLabelsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13749,7 +13825,7 @@ func (m *DownstreamInventoryUpdateLabels) Reset() { *m = DownstreamInven func (m *DownstreamInventoryUpdateLabels) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryUpdateLabels) ProtoMessage() {} func (*DownstreamInventoryUpdateLabels) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{198} + return fileDescriptor_0ffcffcda38ae159, []int{199} } func (m *DownstreamInventoryUpdateLabels) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13810,7 +13886,7 @@ func (m *InventoryHeartbeat) Reset() { *m = InventoryHeartbeat{} } func (m *InventoryHeartbeat) String() string { return proto.CompactTextString(m) } func (*InventoryHeartbeat) ProtoMessage() {} func (*InventoryHeartbeat) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{199} + return fileDescriptor_0ffcffcda38ae159, []int{200} } func (m *InventoryHeartbeat) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13868,7 +13944,7 @@ func (m *UpstreamInventoryGoodbye) Reset() { *m = UpstreamInventoryGoodb func (m *UpstreamInventoryGoodbye) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryGoodbye) ProtoMessage() {} func (*UpstreamInventoryGoodbye) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{200} + return fileDescriptor_0ffcffcda38ae159, []int{201} } func (m *UpstreamInventoryGoodbye) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13918,7 +13994,7 @@ func (m *InventoryStatusRequest) Reset() { *m = InventoryStatusRequest{} func (m *InventoryStatusRequest) String() string { return proto.CompactTextString(m) } func (*InventoryStatusRequest) ProtoMessage() {} func (*InventoryStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{201} + return fileDescriptor_0ffcffcda38ae159, []int{202} } func (m *InventoryStatusRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13976,7 +14052,7 @@ func (m *InventoryStatusSummary) Reset() { *m = InventoryStatusSummary{} func (m *InventoryStatusSummary) String() string { return proto.CompactTextString(m) } func (*InventoryStatusSummary) ProtoMessage() {} func (*InventoryStatusSummary) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{202} + return fileDescriptor_0ffcffcda38ae159, []int{203} } func (m *InventoryStatusSummary) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14053,7 +14129,7 @@ func (m *InventoryConnectedServiceCountsRequest) Reset() { func (m *InventoryConnectedServiceCountsRequest) String() string { return proto.CompactTextString(m) } func (*InventoryConnectedServiceCountsRequest) ProtoMessage() {} func (*InventoryConnectedServiceCountsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{203} + return fileDescriptor_0ffcffcda38ae159, []int{204} } func (m *InventoryConnectedServiceCountsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14095,7 +14171,7 @@ func (m *InventoryConnectedServiceCounts) Reset() { *m = InventoryConnec func (m *InventoryConnectedServiceCounts) String() string { return proto.CompactTextString(m) } func (*InventoryConnectedServiceCounts) ProtoMessage() {} func (*InventoryConnectedServiceCounts) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{204} + return fileDescriptor_0ffcffcda38ae159, []int{205} } func (m *InventoryConnectedServiceCounts) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14149,7 +14225,7 @@ func (m *InventoryPingRequest) Reset() { *m = InventoryPingRequest{} } func (m *InventoryPingRequest) String() string { return proto.CompactTextString(m) } func (*InventoryPingRequest) ProtoMessage() {} func (*InventoryPingRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{205} + return fileDescriptor_0ffcffcda38ae159, []int{206} } func (m *InventoryPingRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14205,7 +14281,7 @@ func (m *InventoryPingResponse) Reset() { *m = InventoryPingResponse{} } func (m *InventoryPingResponse) String() string { return proto.CompactTextString(m) } func (*InventoryPingResponse) ProtoMessage() {} func (*InventoryPingResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{206} + return fileDescriptor_0ffcffcda38ae159, []int{207} } func (m *InventoryPingResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14254,7 +14330,7 @@ func (m *GetClusterAlertsResponse) Reset() { *m = GetClusterAlertsRespon func (m *GetClusterAlertsResponse) String() string { return proto.CompactTextString(m) } func (*GetClusterAlertsResponse) ProtoMessage() {} func (*GetClusterAlertsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{207} + return fileDescriptor_0ffcffcda38ae159, []int{208} } func (m *GetClusterAlertsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14301,7 +14377,7 @@ func (m *GetAlertAcksRequest) Reset() { *m = GetAlertAcksRequest{} } func (m *GetAlertAcksRequest) String() string { return proto.CompactTextString(m) } func (*GetAlertAcksRequest) ProtoMessage() {} func (*GetAlertAcksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{208} + return fileDescriptor_0ffcffcda38ae159, []int{209} } func (m *GetAlertAcksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14343,7 +14419,7 @@ func (m *GetAlertAcksResponse) Reset() { *m = GetAlertAcksResponse{} } func (m *GetAlertAcksResponse) String() string { return proto.CompactTextString(m) } func (*GetAlertAcksResponse) ProtoMessage() {} func (*GetAlertAcksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{209} + return fileDescriptor_0ffcffcda38ae159, []int{210} } func (m *GetAlertAcksResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14393,7 +14469,7 @@ func (m *ClearAlertAcksRequest) Reset() { *m = ClearAlertAcksRequest{} } func (m *ClearAlertAcksRequest) String() string { return proto.CompactTextString(m) } func (*ClearAlertAcksRequest) ProtoMessage() {} func (*ClearAlertAcksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{210} + return fileDescriptor_0ffcffcda38ae159, []int{211} } func (m *ClearAlertAcksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14442,7 +14518,7 @@ func (m *UpsertClusterAlertRequest) Reset() { *m = UpsertClusterAlertReq func (m *UpsertClusterAlertRequest) String() string { return proto.CompactTextString(m) } func (*UpsertClusterAlertRequest) ProtoMessage() {} func (*UpsertClusterAlertRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{211} + return fileDescriptor_0ffcffcda38ae159, []int{212} } func (m *UpsertClusterAlertRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14491,7 +14567,7 @@ func (m *GetConnectionDiagnosticRequest) Reset() { *m = GetConnectionDia func (m *GetConnectionDiagnosticRequest) String() string { return proto.CompactTextString(m) } func (*GetConnectionDiagnosticRequest) ProtoMessage() {} func (*GetConnectionDiagnosticRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{212} + return fileDescriptor_0ffcffcda38ae159, []int{213} } func (m *GetConnectionDiagnosticRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14542,7 +14618,7 @@ func (m *AppendDiagnosticTraceRequest) Reset() { *m = AppendDiagnosticTr func (m *AppendDiagnosticTraceRequest) String() string { return proto.CompactTextString(m) } func (*AppendDiagnosticTraceRequest) ProtoMessage() {} func (*AppendDiagnosticTraceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{213} + return fileDescriptor_0ffcffcda38ae159, []int{214} } func (m *AppendDiagnosticTraceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14597,7 +14673,7 @@ func (m *SubmitUsageEventRequest) Reset() { *m = SubmitUsageEventRequest func (m *SubmitUsageEventRequest) String() string { return proto.CompactTextString(m) } func (*SubmitUsageEventRequest) ProtoMessage() {} func (*SubmitUsageEventRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{214} + return fileDescriptor_0ffcffcda38ae159, []int{215} } func (m *SubmitUsageEventRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14644,7 +14720,7 @@ func (m *GetLicenseRequest) Reset() { *m = GetLicenseRequest{} } func (m *GetLicenseRequest) String() string { return proto.CompactTextString(m) } func (*GetLicenseRequest) ProtoMessage() {} func (*GetLicenseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{215} + return fileDescriptor_0ffcffcda38ae159, []int{216} } func (m *GetLicenseRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14684,7 +14760,7 @@ func (m *ListReleasesRequest) Reset() { *m = ListReleasesRequest{} } func (m *ListReleasesRequest) String() string { return proto.CompactTextString(m) } func (*ListReleasesRequest) ProtoMessage() {} func (*ListReleasesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{216} + return fileDescriptor_0ffcffcda38ae159, []int{217} } func (m *ListReleasesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14728,7 +14804,7 @@ func (m *CreateTokenV2Request) Reset() { *m = CreateTokenV2Request{} } func (m *CreateTokenV2Request) String() string { return proto.CompactTextString(m) } func (*CreateTokenV2Request) ProtoMessage() {} func (*CreateTokenV2Request) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{217} + return fileDescriptor_0ffcffcda38ae159, []int{218} } func (m *CreateTokenV2Request) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14805,7 +14881,7 @@ func (m *UpsertTokenV2Request) Reset() { *m = UpsertTokenV2Request{} } func (m *UpsertTokenV2Request) String() string { return proto.CompactTextString(m) } func (*UpsertTokenV2Request) ProtoMessage() {} func (*UpsertTokenV2Request) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{218} + return fileDescriptor_0ffcffcda38ae159, []int{219} } func (m *UpsertTokenV2Request) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14880,7 +14956,7 @@ func (m *GetHeadlessAuthenticationRequest) Reset() { *m = GetHeadlessAut func (m *GetHeadlessAuthenticationRequest) String() string { return proto.CompactTextString(m) } func (*GetHeadlessAuthenticationRequest) ProtoMessage() {} func (*GetHeadlessAuthenticationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{219} + return fileDescriptor_0ffcffcda38ae159, []int{220} } func (m *GetHeadlessAuthenticationRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14938,7 +15014,7 @@ func (m *UpdateHeadlessAuthenticationStateRequest) Reset() { func (m *UpdateHeadlessAuthenticationStateRequest) String() string { return proto.CompactTextString(m) } func (*UpdateHeadlessAuthenticationStateRequest) ProtoMessage() {} func (*UpdateHeadlessAuthenticationStateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{220} + return fileDescriptor_0ffcffcda38ae159, []int{221} } func (m *UpdateHeadlessAuthenticationStateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15004,7 +15080,7 @@ func (m *ExportUpgradeWindowsRequest) Reset() { *m = ExportUpgradeWindow func (m *ExportUpgradeWindowsRequest) String() string { return proto.CompactTextString(m) } func (*ExportUpgradeWindowsRequest) ProtoMessage() {} func (*ExportUpgradeWindowsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{221} + return fileDescriptor_0ffcffcda38ae159, []int{222} } func (m *ExportUpgradeWindowsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15070,7 +15146,7 @@ func (m *ExportUpgradeWindowsResponse) Reset() { *m = ExportUpgradeWindo func (m *ExportUpgradeWindowsResponse) String() string { return proto.CompactTextString(m) } func (*ExportUpgradeWindowsResponse) ProtoMessage() {} func (*ExportUpgradeWindowsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{222} + return fileDescriptor_0ffcffcda38ae159, []int{223} } func (m *ExportUpgradeWindowsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15145,7 +15221,7 @@ func (m *ListAccessRequestsRequest) Reset() { *m = ListAccessRequestsReq func (m *ListAccessRequestsRequest) String() string { return proto.CompactTextString(m) } func (*ListAccessRequestsRequest) ProtoMessage() {} func (*ListAccessRequestsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{223} + return fileDescriptor_0ffcffcda38ae159, []int{224} } func (m *ListAccessRequestsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15224,7 +15300,7 @@ func (m *ListAccessRequestsResponse) Reset() { *m = ListAccessRequestsRe func (m *ListAccessRequestsResponse) String() string { return proto.CompactTextString(m) } func (*ListAccessRequestsResponse) ProtoMessage() {} func (*ListAccessRequestsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{224} + return fileDescriptor_0ffcffcda38ae159, []int{225} } func (m *ListAccessRequestsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15280,7 +15356,7 @@ func (m *AccessRequestAllowedPromotionRequest) Reset() { *m = AccessRequ func (m *AccessRequestAllowedPromotionRequest) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotionRequest) ProtoMessage() {} func (*AccessRequestAllowedPromotionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{225} + return fileDescriptor_0ffcffcda38ae159, []int{226} } func (m *AccessRequestAllowedPromotionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15329,7 +15405,7 @@ func (m *AccessRequestAllowedPromotionResponse) Reset() { *m = AccessReq func (m *AccessRequestAllowedPromotionResponse) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotionResponse) ProtoMessage() {} func (*AccessRequestAllowedPromotionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{226} + return fileDescriptor_0ffcffcda38ae159, []int{227} } func (m *AccessRequestAllowedPromotionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15386,6 +15462,7 @@ func init() { proto.RegisterType((*UserCertsRequest)(nil), "proto.UserCertsRequest") proto.RegisterType((*RouteToDatabase)(nil), "proto.RouteToDatabase") proto.RegisterType((*RouteToWindowsDesktop)(nil), "proto.RouteToWindowsDesktop") + proto.RegisterType((*RouteToGitServer)(nil), "proto.RouteToGitServer") proto.RegisterType((*RouteToApp)(nil), "proto.RouteToApp") proto.RegisterType((*GetUserRequest)(nil), "proto.GetUserRequest") proto.RegisterType((*GetUsersRequest)(nil), "proto.GetUsersRequest") @@ -15624,937 +15701,943 @@ func init() { } var fileDescriptor_0ffcffcda38ae159 = []byte{ - // 14880 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x5b, 0x8c, 0x5c, 0x49, - 0x76, 0x18, 0x58, 0x99, 0xf5, 0x3e, 0xf5, 0x60, 0x32, 0xaa, 0x8a, 0x95, 0x2c, 0x3e, 0x92, 0xbc, - 0xec, 0x07, 0x9b, 0xd3, 0xc3, 0x47, 0xb1, 0xbb, 0xa7, 0x5f, 0xd3, 0xdd, 0x59, 0x0f, 0xb2, 0x8a, - 0xac, 0x57, 0xdf, 0xac, 0x2a, 0xf6, 0x4b, 0x93, 0x73, 0x2b, 0x33, 0x58, 0x75, 0xc5, 0xac, 0x7b, - 0x73, 0xee, 0xbd, 0x49, 0x36, 0x47, 0x2b, 0x2d, 0x34, 0xda, 0xc5, 0xea, 0x67, 0x77, 0x25, 0x60, - 0xb5, 0xd0, 0x42, 0x1f, 0xda, 0x05, 0xd6, 0x80, 0x61, 0xc0, 0x86, 0x7e, 0x04, 0x7d, 0xf9, 0xc3, - 0xf0, 0x87, 0xc7, 0x02, 0x04, 0xdb, 0x90, 0xf4, 0xe3, 0x8f, 0x92, 0x3d, 0x80, 0x7f, 0x0a, 0xf6, - 0x87, 0x60, 0xd8, 0x80, 0x07, 0x10, 0x60, 0xc4, 0x89, 0xc7, 0x8d, 0xb8, 0x8f, 0xcc, 0x2a, 0x92, - 0x3d, 0xf2, 0x0f, 0x59, 0x79, 0xe2, 0x9c, 0x13, 0x11, 0x27, 0xe2, 0x46, 0x9c, 0x38, 0x71, 0xe2, - 0x1c, 0xb8, 0x19, 0xd1, 0x16, 0x6d, 0xfb, 0x41, 0x74, 0xab, 0x45, 0xf7, 0x9d, 0xc6, 0xf3, 0x5b, - 0x8d, 0x96, 0x4b, 0xbd, 0xe8, 0x56, 0x3b, 0xf0, 0x23, 0xff, 0x96, 0xd3, 0x89, 0x0e, 0x42, 0x1a, - 0x3c, 0x75, 0x1b, 0xf4, 0x26, 0x42, 0xc8, 0x20, 0xfe, 0x37, 0x37, 0xbd, 0xef, 0xef, 0xfb, 0x1c, - 0x87, 0xfd, 0xc5, 0x0b, 0xe7, 0x2e, 0xec, 0xfb, 0xfe, 0x7e, 0x8b, 0x72, 0xe2, 0xbd, 0xce, 0xe3, - 0x5b, 0xf4, 0xb0, 0x1d, 0x3d, 0x17, 0x85, 0x95, 0x64, 0x61, 0xe4, 0x1e, 0xd2, 0x30, 0x72, 0x0e, - 0xdb, 0x02, 0xe1, 0x2d, 0xd5, 0x14, 0x27, 0x8a, 0x58, 0x49, 0xe4, 0xfa, 0xde, 0xad, 0xa7, 0x77, - 0xf4, 0x9f, 0x02, 0xf5, 0x7a, 0xd7, 0x56, 0x37, 0x68, 0x10, 0x85, 0x27, 0xc2, 0xa4, 0x4f, 0xa9, - 0x17, 0xa5, 0xaa, 0x17, 0x98, 0xd1, 0xf3, 0x36, 0x0d, 0x39, 0x8a, 0xfc, 0x4f, 0xa0, 0x5e, 0xcd, - 0x46, 0xc5, 0x7f, 0x05, 0xca, 0xf7, 0xb3, 0x51, 0x9e, 0xd1, 0x3d, 0x26, 0x53, 0x4f, 0xfd, 0xd1, - 0x03, 0x3d, 0x70, 0xda, 0x6d, 0x1a, 0xc4, 0x7f, 0x08, 0xf4, 0xf3, 0x0a, 0xfd, 0xf0, 0xb1, 0xc3, - 0x44, 0x74, 0xf8, 0xd8, 0x49, 0x75, 0xa3, 0x13, 0x3a, 0xfb, 0x54, 0x34, 0xff, 0xe9, 0x1d, 0xfd, - 0x27, 0x47, 0xb5, 0xfe, 0xb8, 0x00, 0x83, 0x8f, 0x9c, 0xa8, 0x71, 0x40, 0x3e, 0x85, 0xc1, 0x87, - 0xae, 0xd7, 0x0c, 0xcb, 0x85, 0x2b, 0xfd, 0xd7, 0xc7, 0xe6, 0x4b, 0x37, 0x79, 0x57, 0xb0, 0x90, - 0x15, 0x2c, 0xcc, 0xfe, 0xfc, 0xa8, 0xd2, 0x77, 0x7c, 0x54, 0x39, 0xf3, 0x84, 0xa1, 0xbd, 0xed, - 0x1f, 0xba, 0x11, 0x8e, 0xad, 0xcd, 0xe9, 0xc8, 0x0e, 0x4c, 0x55, 0x5b, 0x2d, 0xff, 0xd9, 0x96, - 0x13, 0x44, 0xae, 0xd3, 0xaa, 0x75, 0x1a, 0x0d, 0x1a, 0x86, 0xe5, 0xe2, 0x95, 0xc2, 0xf5, 0x91, - 0x85, 0x6b, 0xc7, 0x47, 0x95, 0x8a, 0xc3, 0x8a, 0xeb, 0x6d, 0x5e, 0x5e, 0x0f, 0x39, 0x82, 0xc6, - 0x28, 0x8b, 0xde, 0xfa, 0xf3, 0x21, 0x28, 0xad, 0xf8, 0x61, 0xb4, 0xc8, 0x46, 0xd4, 0xa6, 0x3f, - 0xe9, 0xd0, 0x30, 0x22, 0xd7, 0x60, 0x88, 0xc1, 0x56, 0x97, 0xca, 0x85, 0x2b, 0x85, 0xeb, 0xa3, - 0x0b, 0x63, 0xc7, 0x47, 0x95, 0xe1, 0x03, 0x3f, 0x8c, 0xea, 0x6e, 0xd3, 0x16, 0x45, 0xe4, 0x2d, - 0x18, 0xd9, 0xf0, 0x9b, 0x74, 0xc3, 0x39, 0xa4, 0xd8, 0x8a, 0xd1, 0x85, 0x89, 0xe3, 0xa3, 0xca, - 0xa8, 0xe7, 0x37, 0x69, 0xdd, 0x73, 0x0e, 0xa9, 0xad, 0x8a, 0xc9, 0x2e, 0x0c, 0xd8, 0x7e, 0x8b, - 0x96, 0xfb, 0x11, 0x6d, 0xe1, 0xf8, 0xa8, 0x32, 0x10, 0xf8, 0x2d, 0xfa, 0xcb, 0xa3, 0xca, 0x7b, - 0xfb, 0x6e, 0x74, 0xd0, 0xd9, 0xbb, 0xd9, 0xf0, 0x0f, 0x6f, 0xed, 0x07, 0xce, 0x53, 0x97, 0x4f, - 0x42, 0xa7, 0x75, 0x2b, 0x9e, 0xaa, 0x6d, 0x57, 0x8c, 0x7b, 0xed, 0x79, 0x18, 0xd1, 0x43, 0xc6, - 0xc9, 0x46, 0x7e, 0xe4, 0x11, 0x4c, 0x57, 0x9b, 0x4d, 0x97, 0x53, 0x6c, 0x05, 0xae, 0xd7, 0x70, - 0xdb, 0x4e, 0x2b, 0x2c, 0x0f, 0x5c, 0xe9, 0xbf, 0x3e, 0x2a, 0x84, 0xa2, 0xca, 0xeb, 0x6d, 0x85, - 0xa0, 0x09, 0x25, 0x93, 0x01, 0xb9, 0x0b, 0x23, 0x4b, 0x1b, 0x35, 0xd6, 0xf6, 0xb0, 0x3c, 0x88, - 0xcc, 0x66, 0x8f, 0x8f, 0x2a, 0x53, 0x4d, 0x2f, 0xc4, 0xae, 0xe9, 0x0c, 0x14, 0x22, 0x79, 0x0f, - 0xc6, 0xb7, 0x3a, 0x7b, 0x2d, 0xb7, 0xb1, 0xbd, 0x56, 0x7b, 0x48, 0x9f, 0x97, 0x87, 0xae, 0x14, - 0xae, 0x8f, 0x2f, 0x90, 0xe3, 0xa3, 0xca, 0x64, 0x1b, 0xe1, 0xf5, 0xa8, 0x15, 0xd6, 0x9f, 0xd0, - 0xe7, 0xb6, 0x81, 0x17, 0xd3, 0xd5, 0x6a, 0x2b, 0x8c, 0x6e, 0x38, 0x45, 0x17, 0x86, 0x07, 0x3a, - 0x1d, 0xc7, 0x23, 0xb7, 0x00, 0x6c, 0x7a, 0xe8, 0x47, 0xb4, 0xda, 0x6c, 0x06, 0xe5, 0x11, 0x94, - 0xed, 0x99, 0xe3, 0xa3, 0xca, 0x58, 0x80, 0xd0, 0xba, 0xd3, 0x6c, 0x06, 0xb6, 0x86, 0x42, 0x16, - 0x61, 0xc4, 0xf6, 0xb9, 0x80, 0xcb, 0xa3, 0x57, 0x0a, 0xd7, 0xc7, 0xe6, 0xcf, 0x88, 0x69, 0x28, - 0xc1, 0x0b, 0xe7, 0x8e, 0x8f, 0x2a, 0x24, 0x10, 0xbf, 0xf4, 0x5e, 0x4a, 0x0c, 0x52, 0x81, 0xe1, - 0x0d, 0x7f, 0xd1, 0x69, 0x1c, 0xd0, 0x32, 0xe0, 0xdc, 0x1b, 0x3c, 0x3e, 0xaa, 0x14, 0xbe, 0x6f, - 0x4b, 0x28, 0x79, 0x0a, 0x63, 0xf1, 0x40, 0x85, 0xe5, 0x31, 0x14, 0xdf, 0xf6, 0xf1, 0x51, 0xe5, - 0x5c, 0x88, 0xe0, 0x3a, 0x1b, 0x7a, 0x4d, 0x82, 0x2f, 0x31, 0x0b, 0xf4, 0x8a, 0xc8, 0x37, 0x30, - 0x13, 0xff, 0xac, 0x86, 0x21, 0x0d, 0x18, 0x8f, 0xd5, 0xa5, 0xf2, 0x04, 0x4a, 0xe6, 0x8d, 0xe3, - 0xa3, 0x8a, 0xa5, 0xb5, 0xa0, 0xee, 0x48, 0x94, 0xba, 0xdb, 0xd4, 0x7a, 0x9a, 0xcd, 0xe4, 0xc1, - 0xc0, 0xc8, 0x78, 0x69, 0xc2, 0xbe, 0xb4, 0xe3, 0x85, 0x91, 0xb3, 0xd7, 0xa2, 0x99, 0x48, 0xd6, - 0xdf, 0x15, 0x80, 0x6c, 0xb6, 0xa9, 0x57, 0xab, 0xad, 0xb0, 0xef, 0x49, 0x7e, 0x4e, 0x6f, 0xc3, - 0x28, 0x1f, 0x38, 0x36, 0xba, 0x45, 0x1c, 0xdd, 0xc9, 0xe3, 0xa3, 0x0a, 0x88, 0xd1, 0x65, 0x23, - 0x1b, 0x23, 0x90, 0xd7, 0xa1, 0x7f, 0x7b, 0x7b, 0x0d, 0xbf, 0x95, 0xfe, 0x85, 0xa9, 0xe3, 0xa3, - 0x4a, 0x7f, 0x14, 0xb5, 0x7e, 0x79, 0x54, 0x19, 0x59, 0xea, 0x04, 0x28, 0x16, 0x9b, 0x95, 0x93, - 0xd7, 0x61, 0x78, 0xb1, 0xd5, 0x09, 0x23, 0x1a, 0x94, 0x07, 0xe2, 0x8f, 0xb4, 0xc1, 0x41, 0xb6, - 0x2c, 0x23, 0xdf, 0x83, 0x81, 0x9d, 0x90, 0x06, 0xe5, 0x41, 0x1c, 0xef, 0x09, 0x31, 0xde, 0x0c, - 0xb4, 0x3b, 0xbf, 0x30, 0xc2, 0xbe, 0xc4, 0x4e, 0x48, 0x03, 0x1b, 0x91, 0xc8, 0x4d, 0x18, 0xe4, - 0x83, 0x36, 0x84, 0x8b, 0xd4, 0x84, 0x9a, 0x1d, 0x2d, 0xba, 0xfb, 0xde, 0xc2, 0xe8, 0xf1, 0x51, - 0x65, 0x10, 0x07, 0xcf, 0xe6, 0x68, 0x0f, 0x06, 0x46, 0x0a, 0xa5, 0xa2, 0x3d, 0xc2, 0x68, 0xd9, - 0x67, 0x61, 0x7d, 0x0f, 0xc6, 0xb4, 0xee, 0x93, 0x8b, 0x30, 0xc0, 0xfe, 0xc7, 0x45, 0x64, 0x9c, - 0x57, 0xc6, 0x36, 0x0e, 0x1b, 0xa1, 0xd6, 0xff, 0x3b, 0x05, 0x25, 0x46, 0x69, 0xac, 0x3c, 0x37, - 0x75, 0x51, 0x71, 0xba, 0x92, 0x29, 0xaa, 0x72, 0x41, 0x17, 0xd6, 0x75, 0x50, 0xb5, 0x8b, 0x45, - 0x68, 0xfc, 0xf8, 0xa8, 0x32, 0xd2, 0x11, 0xb0, 0xb8, 0x6d, 0xa4, 0x06, 0xc3, 0xcb, 0xdf, 0xb6, - 0xdd, 0x80, 0x86, 0x28, 0xda, 0xb1, 0xf9, 0xb9, 0x9b, 0x7c, 0xbb, 0xbc, 0x29, 0xb7, 0xcb, 0x9b, - 0xdb, 0x72, 0xbb, 0x5c, 0xb8, 0x24, 0x16, 0xe3, 0xb3, 0x94, 0x93, 0xc4, 0xf3, 0xe3, 0xf7, 0xfe, - 0xa6, 0x52, 0xb0, 0x25, 0x27, 0xf2, 0x36, 0x0c, 0xdd, 0xf3, 0x83, 0x43, 0x27, 0x12, 0x63, 0x30, - 0x7d, 0x7c, 0x54, 0x29, 0x3d, 0x46, 0x88, 0x36, 0xa5, 0x04, 0x0e, 0xb9, 0x07, 0x93, 0xb6, 0xdf, - 0x89, 0xe8, 0xb6, 0x2f, 0x47, 0x6e, 0x10, 0xa9, 0x2e, 0x1f, 0x1f, 0x55, 0xe6, 0x02, 0x56, 0x52, - 0x8f, 0xfc, 0xba, 0x18, 0x42, 0x8d, 0x3e, 0x41, 0x45, 0x96, 0x61, 0xb2, 0x8a, 0xab, 0xb7, 0x90, - 0x1a, 0x1f, 0xaf, 0xd1, 0x85, 0x4b, 0xc7, 0x47, 0x95, 0xf3, 0x0e, 0x96, 0xd4, 0x03, 0x51, 0xa4, - 0xb3, 0x31, 0x89, 0xc8, 0x06, 0x9c, 0x7d, 0xd8, 0xd9, 0xa3, 0x81, 0x47, 0x23, 0x1a, 0xca, 0x16, - 0x0d, 0x63, 0x8b, 0xae, 0x1c, 0x1f, 0x55, 0x2e, 0x3e, 0x51, 0x85, 0x19, 0x6d, 0x4a, 0x93, 0x12, - 0x0a, 0x67, 0x44, 0x43, 0x97, 0x9c, 0xc8, 0xd9, 0x73, 0x42, 0x8a, 0x8b, 0xd2, 0xd8, 0xfc, 0x39, - 0x2e, 0xe2, 0x9b, 0x89, 0xd2, 0x85, 0x6b, 0x42, 0xca, 0x17, 0x54, 0xdf, 0x9b, 0xa2, 0x48, 0xab, - 0x28, 0xc9, 0x93, 0xad, 0xcd, 0x6a, 0xdf, 0x19, 0xc5, 0xd6, 0xe2, 0xda, 0xac, 0xf6, 0x1d, 0x7d, - 0xd5, 0x52, 0x3b, 0xd0, 0x1a, 0x0c, 0xee, 0xb0, 0xdd, 0x19, 0xd7, 0xac, 0xc9, 0xf9, 0xab, 0xa2, - 0x45, 0xc9, 0xf9, 0x77, 0x93, 0xfd, 0x40, 0x44, 0xfc, 0xf2, 0xce, 0xe0, 0x8e, 0xae, 0xef, 0xc5, - 0x58, 0x46, 0x3e, 0x07, 0x10, 0xad, 0xaa, 0xb6, 0xdb, 0xe5, 0x31, 0xec, 0xe4, 0x59, 0xb3, 0x93, - 0xd5, 0x76, 0x7b, 0xe1, 0xb2, 0xe8, 0xdf, 0x39, 0xd5, 0x3f, 0xa7, 0xdd, 0xd6, 0xb8, 0x69, 0x4c, - 0xc8, 0xa7, 0x30, 0x8e, 0x4b, 0x9a, 0x1c, 0xd1, 0x71, 0x1c, 0xd1, 0x0b, 0xc7, 0x47, 0x95, 0x59, - 0x5c, 0xad, 0x32, 0xc6, 0xd3, 0x20, 0x20, 0xbf, 0x05, 0x33, 0x82, 0xdd, 0x23, 0xd7, 0x6b, 0xfa, - 0xcf, 0xc2, 0x25, 0x1a, 0x3e, 0x89, 0xfc, 0x36, 0x2e, 0x7f, 0x63, 0xf3, 0x17, 0xcd, 0xe6, 0x99, - 0x38, 0x0b, 0x37, 0x44, 0x4b, 0x2d, 0xd5, 0xd2, 0x67, 0x1c, 0xa1, 0xde, 0xe4, 0x18, 0xfa, 0x02, - 0x99, 0xc9, 0x82, 0xac, 0xc2, 0x99, 0x9d, 0x90, 0x1a, 0x7d, 0x98, 0xc4, 0xfd, 0xa1, 0xc2, 0x46, - 0xb8, 0x13, 0xd2, 0x7a, 0x5e, 0x3f, 0x92, 0x74, 0xc4, 0x06, 0xb2, 0x14, 0xf8, 0xed, 0xc4, 0x1c, - 0x3f, 0x83, 0x12, 0xb1, 0x8e, 0x8f, 0x2a, 0x97, 0x9b, 0x81, 0xdf, 0xae, 0xe7, 0x4f, 0xf4, 0x0c, - 0x6a, 0xf2, 0x23, 0x38, 0xb7, 0xe8, 0x7b, 0x1e, 0x6d, 0xb0, 0x15, 0x74, 0xc9, 0x75, 0xf6, 0x3d, - 0x3f, 0x8c, 0xdc, 0xc6, 0xea, 0x52, 0xb9, 0x14, 0x6f, 0x0f, 0x0d, 0x85, 0x51, 0x6f, 0x2a, 0x14, - 0x73, 0x7b, 0xc8, 0xe1, 0x42, 0xbe, 0x86, 0x09, 0x51, 0x17, 0x0d, 0x70, 0x6a, 0x9e, 0xed, 0x3e, - 0xd1, 0x14, 0x32, 0xdf, 0xe8, 0x03, 0xf9, 0x93, 0xab, 0x4e, 0x26, 0x2f, 0xf2, 0x0d, 0x8c, 0xad, - 0xdf, 0xab, 0xda, 0x34, 0x6c, 0xfb, 0x5e, 0x48, 0xcb, 0x04, 0x47, 0xf4, 0xb2, 0x60, 0xbd, 0x7e, - 0xaf, 0x5a, 0xed, 0x44, 0x07, 0xd4, 0x8b, 0xdc, 0x86, 0x13, 0x51, 0x89, 0xb5, 0x30, 0xc7, 0x66, - 0xde, 0xe1, 0x63, 0xa7, 0x1e, 0x08, 0x88, 0xd6, 0x0b, 0x9d, 0x1d, 0x99, 0x83, 0x91, 0x5a, 0x6d, - 0x65, 0xcd, 0xdf, 0x77, 0xbd, 0xf2, 0x14, 0x13, 0x86, 0xad, 0x7e, 0x93, 0xc7, 0x30, 0xa3, 0x9d, - 0x0d, 0xea, 0xec, 0x7f, 0x7a, 0x48, 0xbd, 0xa8, 0x3c, 0x8d, 0x6d, 0xf8, 0xbe, 0x3a, 0xdc, 0xdc, - 0xd4, 0x8f, 0x10, 0x4f, 0xef, 0xdc, 0xac, 0xc6, 0x3f, 0x6b, 0x92, 0x68, 0xa1, 0x58, 0x2e, 0xd8, - 0xd3, 0x4e, 0x46, 0x09, 0xd9, 0x86, 0xe1, 0xad, 0x4e, 0xd0, 0xf6, 0x43, 0x5a, 0x9e, 0x41, 0xc1, - 0x5d, 0xeb, 0xf6, 0x85, 0x0a, 0xd4, 0x85, 0x19, 0xb6, 0x44, 0xb7, 0xf9, 0x0f, 0xad, 0x77, 0x92, - 0x15, 0xf9, 0x0c, 0xc6, 0x6b, 0xb5, 0x95, 0x78, 0x43, 0x39, 0x87, 0x1b, 0xca, 0xc5, 0xe3, 0xa3, - 0x4a, 0x99, 0xa9, 0x54, 0xf1, 0xa6, 0xa2, 0x7f, 0x55, 0x3a, 0x05, 0xe3, 0xb0, 0xbd, 0x56, 0x8b, - 0x39, 0xcc, 0xc6, 0x1c, 0x98, 0x32, 0x97, 0xcd, 0x41, 0xa7, 0x20, 0xff, 0xb8, 0x00, 0x57, 0x74, - 0x96, 0x59, 0x82, 0x29, 0x9f, 0x7f, 0x11, 0x69, 0xce, 0x1f, 0x1f, 0x55, 0x6e, 0x9a, 0xfd, 0xa8, - 0x67, 0x0e, 0x96, 0xd6, 0xb6, 0x9e, 0x4d, 0xc1, 0xf6, 0xea, 0x1d, 0xc8, 0x6c, 0xef, 0xdc, 0x0b, - 0xb7, 0xd7, 0x94, 0x5a, 0xef, 0xf6, 0xf6, 0x6a, 0x8a, 0xf5, 0x05, 0x8c, 0xaa, 0x45, 0x9b, 0x0c, - 0x43, 0x7f, 0xb5, 0xd5, 0x2a, 0xf5, 0xb1, 0x3f, 0x6a, 0xb5, 0x95, 0x52, 0x81, 0x4c, 0x02, 0xc4, - 0x3b, 0x55, 0xa9, 0x48, 0xc6, 0x61, 0x44, 0xee, 0x24, 0xa5, 0x7e, 0xc4, 0x6f, 0xb7, 0x4b, 0x03, - 0x84, 0xc0, 0xa4, 0xb9, 0x9e, 0x95, 0x06, 0xad, 0xdf, 0x2f, 0xc0, 0xa8, 0xfa, 0x0e, 0xc9, 0x19, - 0x18, 0xdb, 0xd9, 0xa8, 0x6d, 0x2d, 0x2f, 0xae, 0xde, 0x5b, 0x5d, 0x5e, 0x2a, 0xf5, 0x91, 0x4b, - 0x70, 0x7e, 0xbb, 0xb6, 0x52, 0x5f, 0x5a, 0xa8, 0xaf, 0x6d, 0x2e, 0x56, 0xd7, 0xea, 0x5b, 0xf6, - 0xe6, 0x17, 0x5f, 0xd6, 0xb7, 0x77, 0x36, 0x36, 0x96, 0xd7, 0x4a, 0x05, 0x52, 0x86, 0x69, 0x56, - 0xfc, 0x70, 0x67, 0x61, 0x59, 0x47, 0x28, 0x15, 0xc9, 0x55, 0xb8, 0x94, 0x55, 0x52, 0x5f, 0x59, - 0xae, 0x2e, 0xad, 0x2d, 0xd7, 0x6a, 0xa5, 0x7e, 0x32, 0x0b, 0x53, 0x0c, 0xa5, 0xba, 0xb5, 0x65, - 0xd0, 0x0e, 0x58, 0x2d, 0x18, 0xd3, 0x3e, 0x00, 0x72, 0x11, 0xca, 0x8b, 0xcb, 0xf6, 0x76, 0x7d, - 0x6b, 0xc7, 0xde, 0xda, 0xac, 0x2d, 0xd7, 0xcd, 0x16, 0x26, 0x4b, 0xd7, 0x36, 0xef, 0xaf, 0x6e, - 0xd4, 0x19, 0xa8, 0x56, 0x2a, 0xb0, 0x66, 0x18, 0xa5, 0xb5, 0xd5, 0x8d, 0xfb, 0x6b, 0xcb, 0xf5, - 0x9d, 0xda, 0xb2, 0x40, 0x29, 0x5a, 0x3f, 0x2b, 0xa6, 0xb6, 0x74, 0x32, 0x0f, 0x63, 0x35, 0x6e, - 0xaf, 0xc0, 0x65, 0x8e, 0x1f, 0x10, 0x99, 0x8e, 0x36, 0x2e, 0xcc, 0x18, 0x7c, 0x05, 0xd3, 0x91, - 0x98, 0x96, 0xb6, 0xc5, 0xbe, 0xe6, 0x86, 0xdf, 0xd2, 0xb5, 0xb4, 0xb6, 0x80, 0xd9, 0xaa, 0x94, - 0xcc, 0x6b, 0xfa, 0x1c, 0x3f, 0x2d, 0xe2, 0x89, 0x44, 0xea, 0x73, 0xfa, 0xde, 0xae, 0x34, 0xbb, - 0xf9, 0x78, 0x48, 0x85, 0x1a, 0x86, 0x34, 0x19, 0xba, 0x84, 0xc2, 0x23, 0x6f, 0x49, 0x4d, 0x97, - 0x9f, 0xee, 0x70, 0xb3, 0x4f, 0x9c, 0x4b, 0x84, 0x92, 0x6b, 0x75, 0x72, 0x36, 0x56, 0xf2, 0x51, - 0x72, 0xce, 0x08, 0x61, 0x20, 0xb3, 0xc4, 0xfe, 0x69, 0x27, 0x50, 0x49, 0x05, 0x06, 0xf9, 0x8a, - 0xcb, 0xe5, 0x81, 0xba, 0x75, 0x8b, 0x01, 0x6c, 0x0e, 0xb7, 0xfe, 0xb4, 0x5f, 0x57, 0x32, 0x98, - 0x2e, 0xad, 0xc9, 0x1b, 0x75, 0x69, 0x94, 0x33, 0x42, 0x99, 0xda, 0x5c, 0xa3, 0x61, 0xc8, 0xcf, - 0x3b, 0x45, 0x35, 0x24, 0x10, 0x72, 0x60, 0xdd, 0x6d, 0x32, 0xb5, 0x59, 0xa1, 0xb0, 0xa3, 0x23, - 0xff, 0xaa, 0xf0, 0xe8, 0xd8, 0x1f, 0x1f, 0x1d, 0xc5, 0xa7, 0xc9, 0x8f, 0x8e, 0x31, 0x0a, 0x1b, - 0x75, 0xa1, 0xe6, 0x61, 0x2b, 0x06, 0xe2, 0x51, 0x17, 0xaa, 0xa1, 0x18, 0x75, 0x0d, 0x89, 0x7c, - 0x08, 0x50, 0x7d, 0x54, 0xc3, 0x33, 0x92, 0xbd, 0x21, 0x54, 0x5d, 0xdc, 0x94, 0x9c, 0x67, 0xa1, - 0x38, 0x82, 0x05, 0xfa, 0x19, 0x53, 0xc3, 0x26, 0x0b, 0x30, 0x51, 0xfd, 0x69, 0x27, 0xa0, 0xab, - 0x4d, 0xb6, 0xaf, 0x45, 0xfc, 0x30, 0x3d, 0xca, 0x17, 0x5e, 0x87, 0x15, 0xd4, 0x5d, 0x51, 0xa2, - 0x31, 0x30, 0x49, 0xc8, 0x26, 0x9c, 0xbd, 0xbf, 0xb8, 0x25, 0xe6, 0x61, 0xb5, 0xd1, 0xf0, 0x3b, - 0x5e, 0x24, 0xf4, 0xdb, 0xab, 0xc7, 0x47, 0x95, 0x4b, 0xfb, 0x8d, 0x76, 0x5d, 0xce, 0x59, 0x87, - 0x17, 0xeb, 0x0a, 0x6e, 0x8a, 0x96, 0x5c, 0x83, 0xfe, 0x1d, 0x7b, 0x55, 0x9c, 0xb4, 0xcf, 0x1e, - 0x1f, 0x55, 0x26, 0x3a, 0x81, 0xab, 0x91, 0xb0, 0x52, 0xab, 0x05, 0x93, 0xf7, 0x69, 0xc4, 0x26, - 0xa7, 0x3c, 0xd3, 0x74, 0x1f, 0xba, 0x8f, 0x61, 0xec, 0x91, 0x1b, 0x1d, 0xd4, 0x68, 0x23, 0xa0, - 0x91, 0xb4, 0xe7, 0xa0, 0x98, 0x9e, 0xb9, 0xd1, 0x41, 0x3d, 0xe4, 0x70, 0x7d, 0xef, 0xd6, 0xd0, - 0xad, 0x65, 0x38, 0x23, 0x6a, 0x53, 0x47, 0xa8, 0x79, 0x93, 0x61, 0x01, 0x19, 0xe2, 0x50, 0xe9, - 0x0c, 0x4d, 0x36, 0x7f, 0x5a, 0x84, 0x99, 0xc5, 0x03, 0xc7, 0xdb, 0xa7, 0x5b, 0x4e, 0x18, 0x3e, - 0xf3, 0x83, 0xa6, 0xd6, 0x78, 0x3c, 0x3f, 0xa6, 0x1a, 0x8f, 0x07, 0xc6, 0x79, 0x18, 0xdb, 0x6c, - 0x35, 0x25, 0x8d, 0x38, 0xdb, 0x62, 0x5d, 0x7e, 0xab, 0x59, 0x6f, 0x4b, 0x5e, 0x3a, 0x12, 0xa3, - 0xd9, 0xa0, 0xcf, 0x14, 0x4d, 0x7f, 0x4c, 0xe3, 0xd1, 0x67, 0x1a, 0x8d, 0x86, 0x44, 0x96, 0xe1, - 0x6c, 0x8d, 0x36, 0x7c, 0xaf, 0x79, 0xcf, 0x69, 0x44, 0x7e, 0xb0, 0xed, 0x3f, 0xa1, 0x9e, 0x98, - 0x84, 0xa8, 0xfc, 0x87, 0x58, 0x58, 0x7f, 0x8c, 0xa5, 0xf5, 0x88, 0x15, 0xdb, 0x69, 0x0a, 0xb2, - 0x09, 0x23, 0x8f, 0x84, 0x55, 0x50, 0x1c, 0x88, 0x5f, 0xbf, 0xa9, 0xcc, 0x84, 0x8b, 0x01, 0xc5, - 0x99, 0xe3, 0xb4, 0xd4, 0x91, 0x5e, 0xe9, 0x52, 0xb8, 0x5c, 0x49, 0x4c, 0x5b, 0x31, 0xb1, 0x76, - 0x60, 0x62, 0xab, 0xd5, 0xd9, 0x77, 0x3d, 0xb6, 0xb0, 0xd4, 0xe8, 0x4f, 0xc8, 0x12, 0x40, 0x0c, - 0x10, 0xb6, 0xbe, 0x29, 0x71, 0x8c, 0x8e, 0x0b, 0x76, 0xef, 0x8a, 0xaf, 0x0d, 0x21, 0x78, 0xea, - 0xb1, 0x35, 0x3a, 0xeb, 0xbf, 0xf5, 0x03, 0x11, 0x03, 0x80, 0x1b, 0x5d, 0x8d, 0x46, 0x6c, 0x0b, - 0x3a, 0x07, 0x45, 0x65, 0x92, 0x1b, 0x3a, 0x3e, 0xaa, 0x14, 0xdd, 0xa6, 0x5d, 0x5c, 0x5d, 0x22, - 0xef, 0xc0, 0x20, 0xa2, 0xa1, 0xfc, 0x27, 0x55, 0x7d, 0x3a, 0x07, 0xbe, 0xc0, 0xe0, 0x0e, 0x6b, - 0x73, 0x64, 0xf2, 0x2e, 0x8c, 0x2e, 0xd1, 0x16, 0xdd, 0x77, 0x22, 0x5f, 0x2e, 0x01, 0xdc, 0xc8, - 0x25, 0x81, 0xda, 0x9c, 0x8b, 0x31, 0xd9, 0x91, 0xd7, 0xa6, 0x4e, 0xe8, 0x7b, 0xfa, 0x91, 0x37, - 0x40, 0x88, 0x7e, 0xe4, 0xe5, 0x38, 0xe4, 0x0f, 0x0a, 0x30, 0x56, 0xf5, 0x3c, 0x61, 0x3c, 0x0a, - 0x85, 0xd4, 0x67, 0x6e, 0x2a, 0x6b, 0xeb, 0x9a, 0xb3, 0x47, 0x5b, 0xbb, 0x4e, 0xab, 0x43, 0xc3, - 0x85, 0x6f, 0xd8, 0x29, 0xe4, 0xdf, 0x1e, 0x55, 0x3e, 0x3a, 0x85, 0x39, 0x28, 0xb6, 0xdb, 0x6e, - 0x07, 0x8e, 0x1b, 0x85, 0xc7, 0x47, 0x95, 0x19, 0x27, 0xae, 0x50, 0xff, 0x6e, 0xb4, 0x76, 0xc4, - 0xeb, 0xff, 0x50, 0xaf, 0xf5, 0x9f, 0x1c, 0xc2, 0x99, 0x6a, 0x18, 0x76, 0x0e, 0x69, 0x2d, 0x72, - 0x82, 0x68, 0xdb, 0x3d, 0xa4, 0xb8, 0x88, 0x74, 0x37, 0x20, 0xbc, 0xf9, 0xf3, 0xa3, 0x4a, 0x81, - 0x1d, 0x7c, 0x1c, 0x24, 0x65, 0xba, 0x4d, 0x10, 0xd5, 0x23, 0x57, 0xdf, 0xc2, 0xd0, 0x94, 0x90, - 0xe4, 0x6d, 0x5d, 0x53, 0x4a, 0xc7, 0xea, 0x52, 0xde, 0x88, 0x5b, 0x8b, 0x70, 0xf1, 0x3e, 0x8d, - 0x6c, 0x1a, 0xd2, 0x48, 0x7e, 0x23, 0x38, 0xc3, 0x63, 0x03, 0xee, 0x30, 0xfe, 0x56, 0xc4, 0x38, - 0xfc, 0xfc, 0xbb, 0x90, 0x25, 0xd6, 0xff, 0x52, 0x80, 0xca, 0x62, 0x40, 0xf9, 0x99, 0x21, 0x87, - 0x51, 0xf7, 0xb5, 0xeb, 0x22, 0x0c, 0x6c, 0x3f, 0x6f, 0x4b, 0xcb, 0x0b, 0x96, 0xb2, 0x41, 0xb1, - 0x11, 0x7a, 0x42, 0x43, 0x96, 0xf5, 0x18, 0x66, 0x6c, 0xea, 0xd1, 0x67, 0xce, 0x5e, 0x8b, 0x1a, - 0xb6, 0xa0, 0x0a, 0x0c, 0xf2, 0x0f, 0x3d, 0xd5, 0x05, 0x0e, 0x3f, 0x9d, 0x5d, 0xcd, 0x9a, 0x80, - 0xb1, 0x2d, 0xd7, 0xdb, 0x17, 0xdc, 0xad, 0x3f, 0xe9, 0x87, 0x71, 0xfe, 0x5b, 0x1c, 0x83, 0x12, - 0x5b, 0x5c, 0xe1, 0x24, 0x5b, 0xdc, 0xfb, 0x30, 0xc1, 0xf6, 0x08, 0x1a, 0xec, 0xd2, 0x80, 0x6d, - 0xad, 0x42, 0x12, 0x78, 0xa4, 0x0b, 0xb1, 0xa0, 0xfe, 0x94, 0x97, 0xd8, 0x26, 0x22, 0x59, 0x83, - 0x49, 0x0e, 0xb8, 0x47, 0x9d, 0xa8, 0x13, 0x5b, 0xa5, 0xce, 0x88, 0x73, 0x8f, 0x04, 0xf3, 0xa9, - 0x29, 0x78, 0x3d, 0x16, 0x40, 0x3b, 0x41, 0x4b, 0x3e, 0x85, 0x33, 0x5b, 0x81, 0xff, 0xed, 0x73, - 0x6d, 0x53, 0xe7, 0x5f, 0x27, 0x3f, 0x21, 0xb1, 0xa2, 0xba, 0xbe, 0xb5, 0x27, 0xb1, 0xc9, 0x5b, - 0x30, 0xb2, 0x1a, 0x2e, 0xf8, 0x81, 0xeb, 0xed, 0xe3, 0x37, 0x3a, 0xc2, 0x8d, 0xf9, 0x6e, 0x58, - 0xdf, 0x43, 0xa0, 0xad, 0x8a, 0x13, 0x66, 0xe7, 0xe1, 0xde, 0x66, 0xe7, 0xdb, 0x00, 0x6b, 0xbe, - 0xd3, 0xac, 0xb6, 0x5a, 0x8b, 0xd5, 0x10, 0x77, 0x4f, 0xb1, 0x1f, 0xb5, 0x7c, 0xa7, 0x59, 0x77, - 0x5a, 0xad, 0x7a, 0xc3, 0x09, 0x6d, 0x0d, 0xe7, 0xc1, 0xc0, 0xc8, 0x50, 0x69, 0xd8, 0x3e, 0xb3, - 0xe6, 0x36, 0xa8, 0x17, 0xd2, 0x47, 0x4e, 0xe0, 0xb9, 0xde, 0x7e, 0x68, 0xfd, 0x93, 0xb3, 0x30, - 0xa2, 0xba, 0x7c, 0x53, 0x57, 0xec, 0xc5, 0x2e, 0x87, 0xa3, 0x1f, 0x9b, 0xad, 0x6c, 0x0d, 0x83, - 0x9c, 0x47, 0x55, 0x5f, 0xec, 0xaf, 0xc3, 0x6c, 0x36, 0x3a, 0xed, 0xb6, 0xcd, 0x60, 0xec, 0x2b, - 0x5b, 0x5a, 0x40, 0xf9, 0x8f, 0xf0, 0xaf, 0xac, 0xb9, 0x67, 0x17, 0x97, 0x16, 0xd8, 0xf4, 0xde, - 0x5c, 0x5d, 0x5a, 0x44, 0x51, 0x8e, 0xf0, 0xe9, 0xed, 0xbb, 0xcd, 0x86, 0x8d, 0x50, 0x56, 0x5a, - 0xab, 0xae, 0xaf, 0x09, 0x71, 0x61, 0x69, 0xe8, 0x1c, 0xb6, 0x6c, 0x84, 0x32, 0xe5, 0x90, 0x5b, - 0x20, 0x16, 0x7d, 0x2f, 0x0a, 0xfc, 0x56, 0x88, 0x1a, 0xcc, 0x08, 0x1f, 0x4e, 0x61, 0xba, 0x68, - 0x88, 0x22, 0x3b, 0x81, 0x4a, 0x1e, 0xc1, 0x6c, 0xb5, 0xf9, 0xd4, 0xf1, 0x1a, 0xb4, 0xc9, 0x4b, - 0x1e, 0xf9, 0xc1, 0x93, 0xc7, 0x2d, 0xff, 0x59, 0x88, 0xf2, 0x1e, 0x11, 0x96, 0x3e, 0x81, 0x22, - 0x2d, 0x21, 0xcf, 0x24, 0x92, 0x9d, 0x47, 0xcd, 0x3e, 0xa9, 0xc5, 0x96, 0xdf, 0x69, 0x8a, 0x51, - 0xc0, 0x4f, 0xaa, 0xc1, 0x00, 0x36, 0x87, 0x33, 0x29, 0xad, 0xd4, 0xd6, 0xd1, 0xae, 0x26, 0xa4, - 0x74, 0x10, 0x1e, 0xda, 0x0c, 0x46, 0x5e, 0x87, 0x61, 0xa9, 0xe7, 0x72, 0xc3, 0x3f, 0x1a, 0x9c, - 0xa5, 0x7e, 0x2b, 0xcb, 0xd8, 0x27, 0x61, 0xd3, 0x86, 0xff, 0x94, 0x06, 0xcf, 0x17, 0xfd, 0x26, - 0x95, 0x56, 0x20, 0x61, 0xe5, 0xe0, 0x05, 0xf5, 0x06, 0x2b, 0xb1, 0x4d, 0x44, 0x56, 0x01, 0xdf, - 0x03, 0xc3, 0xf2, 0x99, 0xb8, 0x02, 0xbe, 0x47, 0x86, 0xb6, 0x2c, 0x23, 0x4b, 0x70, 0xb6, 0xda, - 0x89, 0xfc, 0x43, 0x27, 0x72, 0x1b, 0x3b, 0xed, 0xfd, 0xc0, 0x61, 0x95, 0x94, 0x90, 0x00, 0xf5, - 0x7e, 0x47, 0x16, 0xd6, 0x3b, 0xa2, 0xd4, 0x4e, 0x13, 0x90, 0xf7, 0x60, 0x7c, 0x35, 0xe4, 0x96, - 0x3e, 0x27, 0xa4, 0x4d, 0x34, 0xd7, 0x88, 0x56, 0xba, 0x61, 0x1d, 0xed, 0x7e, 0x75, 0x76, 0x52, - 0x68, 0xda, 0x06, 0x1e, 0xb1, 0x60, 0xa8, 0x1a, 0x86, 0x6e, 0x18, 0xa1, 0x15, 0x66, 0x64, 0x01, - 0x8e, 0x8f, 0x2a, 0x43, 0x0e, 0x42, 0x6c, 0x51, 0x42, 0x1e, 0xc1, 0xd8, 0x12, 0x65, 0x8a, 0xe3, - 0x76, 0xd0, 0x09, 0x23, 0xb4, 0xa9, 0x8c, 0xcd, 0x9f, 0x17, 0x1f, 0xb6, 0x56, 0x22, 0xe6, 0x32, - 0xd7, 0xf6, 0x9a, 0x08, 0xaf, 0x47, 0xac, 0x40, 0xdf, 0xb5, 0x34, 0x7c, 0xa6, 0x15, 0x0b, 0x9a, - 0x15, 0xb7, 0xc9, 0x3e, 0xd5, 0x69, 0x6c, 0x03, 0x6a, 0xc5, 0x62, 0x6d, 0xa8, 0x1f, 0x60, 0x89, - 0xae, 0x15, 0x1b, 0x24, 0xa4, 0x91, 0x32, 0x1e, 0xcf, 0x18, 0x06, 0x42, 0xb3, 0x50, 0x36, 0xf1, - 0x94, 0xa6, 0xe5, 0x8f, 0x61, 0x6c, 0xb1, 0x13, 0x46, 0xfe, 0xe1, 0xf6, 0x01, 0x3d, 0xa4, 0x68, - 0x77, 0x11, 0xba, 0x7f, 0x03, 0xc1, 0xf5, 0x88, 0xc1, 0xf5, 0x6e, 0x6a, 0xe8, 0xe4, 0x73, 0x20, - 0x52, 0x89, 0xbf, 0xcf, 0xe6, 0x87, 0xc7, 0xe6, 0x32, 0x9a, 0x5e, 0x46, 0xb8, 0xe6, 0x2e, 0x75, - 0xff, 0xfa, 0xbe, 0x2a, 0xd6, 0xcd, 0x7f, 0x69, 0x62, 0xd6, 0x20, 0xde, 0xc4, 0xfb, 0x81, 0xd3, - 0x3e, 0x28, 0x97, 0x63, 0x2d, 0x5b, 0x74, 0x6a, 0x9f, 0xc1, 0x0d, 0x6d, 0x21, 0x46, 0x27, 0x35, - 0x00, 0xfe, 0x73, 0x8d, 0x0d, 0x3c, 0x37, 0xd6, 0x94, 0x0d, 0x79, 0xb1, 0x02, 0x29, 0xab, 0xf3, - 0xa8, 0x83, 0x70, 0xb6, 0x2d, 0xd7, 0x18, 0x4d, 0x8d, 0x0d, 0x79, 0x02, 0x25, 0xfe, 0x6b, 0xdd, - 0xf7, 0xdc, 0x88, 0x2f, 0xbd, 0x73, 0x86, 0x65, 0x2f, 0x59, 0x2c, 0x2b, 0x40, 0x8b, 0xaa, 0xa8, - 0xe0, 0x50, 0x95, 0x6a, 0xd5, 0xa4, 0x18, 0x93, 0x2d, 0x18, 0xdb, 0x0a, 0xfc, 0x66, 0xa7, 0x11, - 0xe1, 0x86, 0x7d, 0x01, 0x15, 0x45, 0x22, 0xea, 0xd1, 0x4a, 0xb8, 0x4c, 0xda, 0x1c, 0x50, 0x67, - 0x9b, 0xb9, 0x2e, 0x13, 0x0d, 0x91, 0x2c, 0xc0, 0xd0, 0x96, 0xdf, 0x72, 0x1b, 0xcf, 0xcb, 0x17, - 0xb1, 0xd1, 0xd3, 0x92, 0x19, 0x02, 0x65, 0x53, 0x51, 0x3b, 0x6c, 0x23, 0x48, 0xd7, 0x0e, 0x39, - 0x12, 0xa9, 0xc2, 0xc4, 0xe7, 0x6c, 0xc2, 0xb8, 0xbe, 0xe7, 0x39, 0x6e, 0x40, 0xcb, 0x97, 0x70, - 0x5c, 0xd0, 0xea, 0xfd, 0x13, 0xbd, 0x40, 0x9f, 0xce, 0x06, 0x05, 0x59, 0x85, 0x33, 0xab, 0x61, - 0x2d, 0x0a, 0xdc, 0x36, 0x5d, 0x77, 0x3c, 0x67, 0x9f, 0x36, 0xcb, 0x97, 0x63, 0xb3, 0xb3, 0x1b, - 0xd6, 0x43, 0x2c, 0xab, 0x1f, 0xf2, 0x42, 0xdd, 0xec, 0x9c, 0xa0, 0x23, 0x5f, 0xc0, 0xf4, 0xf2, - 0xb7, 0x11, 0x9b, 0x31, 0xad, 0x6a, 0xa7, 0xe9, 0x46, 0xb5, 0xc8, 0x0f, 0x9c, 0x7d, 0x5a, 0xae, - 0x20, 0xbf, 0xd7, 0x8e, 0x8f, 0x2a, 0x57, 0xa8, 0x28, 0xaf, 0x3b, 0x0c, 0xa1, 0x1e, 0x72, 0x0c, - 0xfd, 0x3a, 0x39, 0x8b, 0x03, 0x93, 0x7e, 0xad, 0xd3, 0x66, 0x8a, 0x2b, 0x4a, 0xff, 0x8a, 0x21, - 0x7d, 0xad, 0x84, 0x4b, 0x3f, 0xe4, 0x80, 0x94, 0xf4, 0x35, 0x44, 0x62, 0x03, 0x79, 0xe0, 0xbb, - 0x5e, 0xb5, 0x11, 0xb9, 0x4f, 0xa9, 0x38, 0xd7, 0x87, 0xe5, 0xab, 0xd8, 0x52, 0x34, 0x91, 0xff, - 0xba, 0xef, 0x7a, 0x75, 0x07, 0x8b, 0xeb, 0xc2, 0x0a, 0x60, 0x98, 0xc8, 0xd3, 0xd4, 0xe4, 0x47, - 0x70, 0x6e, 0xdd, 0xdf, 0x73, 0x5b, 0x94, 0x2f, 0x39, 0x5c, 0x2c, 0x68, 0xee, 0xb3, 0x90, 0x2f, - 0x9a, 0xc8, 0x0f, 0x11, 0xa3, 0x2e, 0x56, 0xab, 0x43, 0x85, 0xa3, 0x9b, 0xc8, 0xb3, 0xb9, 0x90, - 0x65, 0x18, 0xc7, 0xef, 0xb2, 0x85, 0x3f, 0xc3, 0xf2, 0x35, 0x3c, 0x1d, 0x5d, 0x4d, 0x28, 0x3c, - 0x37, 0x97, 0x35, 0x9c, 0x65, 0x2f, 0x0a, 0x9e, 0xdb, 0x06, 0x19, 0xf9, 0x04, 0xe6, 0x92, 0xd3, - 0x7b, 0xd1, 0xf7, 0x1e, 0xbb, 0xfb, 0x9d, 0x80, 0x36, 0xcb, 0xaf, 0xb1, 0xa6, 0xda, 0x5d, 0x30, - 0xe6, 0x1e, 0xc1, 0xd9, 0x54, 0x15, 0xa4, 0x04, 0xfd, 0x4f, 0xc4, 0x8d, 0xe3, 0xa8, 0xcd, 0xfe, - 0x24, 0x6f, 0xc3, 0xe0, 0x53, 0x76, 0x2c, 0x41, 0x8d, 0x21, 0xbe, 0xc3, 0xd2, 0x48, 0x57, 0xbd, - 0xc7, 0xbe, 0xcd, 0x91, 0x3e, 0x2c, 0xbe, 0x5f, 0x78, 0x30, 0x30, 0x32, 0x56, 0x1a, 0xe7, 0x17, - 0xc5, 0x0f, 0x06, 0x46, 0x26, 0x4a, 0x93, 0x56, 0x15, 0xce, 0x24, 0xf0, 0x49, 0x19, 0x86, 0xa9, - 0xc7, 0x54, 0xdd, 0x26, 0xd7, 0x59, 0x6c, 0xf9, 0x93, 0x4c, 0xc3, 0x60, 0xcb, 0x3d, 0x74, 0x23, - 0xac, 0x70, 0xd0, 0xe6, 0x3f, 0xac, 0x3f, 0x2c, 0x00, 0x49, 0x6f, 0x19, 0xe4, 0x56, 0x82, 0x0d, - 0x57, 0xf4, 0x04, 0x48, 0x37, 0x85, 0x4b, 0xee, 0x9f, 0xc3, 0x14, 0x1f, 0x33, 0xb9, 0xb9, 0x69, - 0x75, 0xf1, 0x45, 0x35, 0xa3, 0x58, 0x37, 0x87, 0x88, 0x62, 0xdc, 0x0a, 0xd7, 0xb0, 0x69, 0x1d, - 0x98, 0xc9, 0xdc, 0x2c, 0xc8, 0x3a, 0xcc, 0x1c, 0xfa, 0x5e, 0x74, 0xd0, 0x7a, 0x2e, 0xf7, 0x0a, - 0x51, 0x5b, 0x01, 0x6b, 0xc3, 0xf5, 0x31, 0x13, 0xc1, 0x9e, 0x12, 0x60, 0xc1, 0x11, 0xeb, 0x79, - 0x30, 0x30, 0x52, 0x2c, 0xf5, 0xab, 0x9e, 0x58, 0x36, 0x9c, 0x4d, 0xad, 0xb9, 0xe4, 0x87, 0x30, - 0xde, 0xc0, 0xa3, 0x8c, 0x51, 0x13, 0xdf, 0x71, 0x34, 0xb8, 0xfe, 0x39, 0x71, 0x38, 0xef, 0xca, - 0x3f, 0x28, 0xc0, 0x6c, 0xce, 0x6a, 0x7b, 0x7a, 0x51, 0x7f, 0x09, 0xe7, 0x0e, 0x9d, 0x6f, 0xeb, - 0x01, 0x9e, 0x54, 0xeb, 0x81, 0xe3, 0x25, 0xa4, 0x8d, 0x2b, 0x49, 0x36, 0x86, 0xee, 0xad, 0x73, - 0xe8, 0x7c, 0x6b, 0x23, 0x82, 0xcd, 0xca, 0x79, 0x3b, 0x3f, 0x83, 0x09, 0x63, 0x7d, 0x3d, 0x75, - 0xe3, 0xac, 0x3b, 0x70, 0x96, 0x9d, 0xe5, 0x23, 0x7a, 0x62, 0x0b, 0x95, 0xb5, 0x05, 0x50, 0xa3, - 0x87, 0x4e, 0xfb, 0xc0, 0x67, 0x7a, 0xf7, 0x82, 0xfe, 0x4b, 0x58, 0x38, 0x88, 0xb0, 0x38, 0xa8, - 0x82, 0xdd, 0xbb, 0x5c, 0x17, 0x0f, 0x15, 0xa6, 0xad, 0x51, 0x59, 0x7f, 0x51, 0x04, 0x22, 0x16, - 0xc8, 0x80, 0x3a, 0x87, 0xb2, 0x19, 0x1f, 0xc0, 0x38, 0x3f, 0x8f, 0x72, 0x30, 0x36, 0x67, 0x6c, - 0x7e, 0x4a, 0x7c, 0x79, 0x7a, 0xd1, 0x4a, 0x9f, 0x6d, 0xa0, 0x32, 0x52, 0x9b, 0xf2, 0x83, 0x34, - 0x92, 0x16, 0x0d, 0x52, 0xbd, 0x88, 0x91, 0xea, 0xbf, 0xc9, 0xa7, 0x30, 0xb9, 0xe8, 0x1f, 0xb6, - 0x99, 0x4c, 0x04, 0x71, 0xbf, 0x30, 0x52, 0x88, 0x7a, 0x8d, 0xc2, 0x95, 0x3e, 0x3b, 0x81, 0x4e, - 0x36, 0x60, 0xea, 0x5e, 0xab, 0x13, 0x1e, 0x54, 0xbd, 0xe6, 0x62, 0xcb, 0x0f, 0x25, 0x97, 0x01, - 0x61, 0x24, 0x10, 0xcb, 0x5b, 0x1a, 0x63, 0xa5, 0xcf, 0xce, 0x22, 0x24, 0xaf, 0xc3, 0xe0, 0xf2, - 0x53, 0xb6, 0xec, 0x4a, 0x9f, 0x0d, 0xe1, 0x52, 0xb6, 0xe9, 0xd1, 0xcd, 0xc7, 0x2b, 0x7d, 0x36, - 0x2f, 0x5d, 0x18, 0x85, 0x61, 0x79, 0x96, 0xbd, 0xc5, 0x54, 0x62, 0x25, 0xce, 0x5a, 0xe4, 0x44, - 0x9d, 0x90, 0xcc, 0xc1, 0xc8, 0x4e, 0x9b, 0x1d, 0xb1, 0xa4, 0x11, 0xc0, 0x56, 0xbf, 0xad, 0xb7, - 0x4d, 0x49, 0x93, 0x8b, 0xba, 0xfd, 0x98, 0x23, 0xc7, 0x00, 0x6b, 0xc5, 0x14, 0x6e, 0x77, 0x6c, - 0xa3, 0xde, 0x62, 0xa2, 0xde, 0x52, 0x52, 0xd6, 0xd6, 0x4c, 0xa6, 0xf0, 0xac, 0x2f, 0xe0, 0xf2, - 0x4e, 0x3b, 0xa4, 0x41, 0x54, 0x6d, 0xb7, 0x5b, 0x6e, 0x83, 0xdf, 0xf9, 0xe0, 0x99, 0x57, 0x4e, - 0x96, 0xf7, 0x60, 0x88, 0x03, 0xc4, 0x34, 0x91, 0x73, 0xb0, 0xda, 0x6e, 0x8b, 0x93, 0xf6, 0x5d, - 0xae, 0x9c, 0xf3, 0xb3, 0xb3, 0x2d, 0xb0, 0xad, 0xdf, 0x2b, 0xc0, 0x65, 0xfe, 0x05, 0xe4, 0xb2, - 0xfe, 0x1e, 0x8c, 0xa2, 0x47, 0x57, 0xdb, 0x69, 0xc8, 0x6f, 0x82, 0xbb, 0xb6, 0x49, 0xa0, 0x1d, - 0x97, 0x6b, 0xbe, 0x72, 0xc5, 0x7c, 0x5f, 0x39, 0xf9, 0x81, 0xf5, 0x67, 0x7e, 0x60, 0x9f, 0x83, - 0x25, 0x5a, 0xd4, 0x6a, 0xa5, 0x1a, 0x15, 0xbe, 0x48, 0xab, 0xac, 0xff, 0x54, 0x84, 0xd9, 0xfb, - 0xd4, 0xa3, 0x81, 0x83, 0xfd, 0x34, 0x6c, 0x3a, 0xba, 0xcf, 0x4c, 0xa1, 0xab, 0xcf, 0x4c, 0x45, - 0x5a, 0xc9, 0x8a, 0x68, 0x25, 0x4b, 0x39, 0x00, 0xb1, 0xe3, 0xe2, 0x8e, 0xbd, 0x2a, 0xba, 0x85, - 0xc7, 0xc5, 0x4e, 0xe0, 0xa2, 0x1d, 0x9c, 0xac, 0xc6, 0xfe, 0x36, 0x03, 0x3d, 0xcd, 0x65, 0x53, - 0xc2, 0xff, 0x60, 0x58, 0xf8, 0xdb, 0x98, 0x5e, 0x36, 0x1b, 0x30, 0xc4, 0x8d, 0x7b, 0x78, 0x5b, - 0x33, 0x36, 0x7f, 0x43, 0x7c, 0x53, 0x39, 0x1d, 0x14, 0x96, 0x40, 0xdc, 0xd8, 0xf9, 0x14, 0x88, - 0x10, 0x60, 0x0b, 0x2e, 0x73, 0x9f, 0xc3, 0x98, 0x86, 0x72, 0x92, 0xbd, 0x5f, 0x19, 0x19, 0x99, - 0xc6, 0xe8, 0xed, 0x73, 0x7b, 0xa5, 0xb6, 0xf7, 0x5b, 0x1f, 0x41, 0x39, 0xdd, 0x1a, 0x61, 0x58, - 0xea, 0x65, 0xc7, 0xb2, 0x96, 0x60, 0xfa, 0x3e, 0x8d, 0x70, 0xe2, 0xe2, 0x47, 0xa4, 0xf9, 0x8d, - 0x25, 0xbe, 0x33, 0xb9, 0xaa, 0xca, 0x5b, 0x1d, 0xfd, 0x2b, 0xad, 0xc1, 0x4c, 0x82, 0x8b, 0xa8, - 0xff, 0x43, 0x18, 0x16, 0x20, 0xb5, 0xa2, 0x0a, 0xe7, 0x53, 0xba, 0x27, 0x0a, 0x76, 0xe7, 0xf9, - 0xbc, 0x15, 0x9c, 0x6d, 0x49, 0x60, 0x1d, 0xc0, 0x39, 0xb6, 0xcd, 0xc6, 0x5c, 0xd5, 0x74, 0xbc, - 0x00, 0xa3, 0x6d, 0xa6, 0x28, 0x84, 0xee, 0x4f, 0xf9, 0x34, 0x1a, 0xb4, 0x47, 0x18, 0xa0, 0xe6, - 0xfe, 0x94, 0x92, 0x4b, 0x00, 0x58, 0x88, 0xdd, 0x14, 0xab, 0x00, 0xa2, 0x73, 0xc3, 0x1d, 0x01, - 0xf4, 0x3a, 0xe3, 0xf3, 0xc6, 0xc6, 0xbf, 0xad, 0x00, 0x66, 0x53, 0x35, 0x89, 0x0e, 0xdc, 0x82, - 0x11, 0xa9, 0xc2, 0x26, 0x4c, 0xea, 0x7a, 0x0f, 0x6c, 0x85, 0x44, 0xde, 0x80, 0x33, 0x1e, 0xfd, - 0x36, 0xaa, 0xa7, 0xda, 0x30, 0xc1, 0xc0, 0x5b, 0xb2, 0x1d, 0xd6, 0xaf, 0xa1, 0x19, 0xb5, 0xe6, - 0xf9, 0xcf, 0x1e, 0xb7, 0x9c, 0x27, 0x34, 0x55, 0xf1, 0x0f, 0x61, 0xa4, 0xd6, 0xbb, 0x62, 0xfe, - 0xf9, 0xc8, 0xca, 0x6d, 0x45, 0x62, 0xb5, 0x60, 0x8e, 0x75, 0xa9, 0x56, 0x5d, 0x5f, 0x5b, 0x6d, - 0x6e, 0x7d, 0xd7, 0x02, 0x7c, 0x0a, 0x17, 0x32, 0x6b, 0xfb, 0xae, 0x85, 0xf8, 0x4f, 0x07, 0x60, - 0x96, 0x6f, 0x26, 0xe9, 0x19, 0x7c, 0xf2, 0xa5, 0xe6, 0x57, 0x72, 0x23, 0x79, 0x3b, 0xe3, 0x46, - 0x12, 0x49, 0xf4, 0x1b, 0x49, 0xe3, 0x1e, 0xf2, 0xfd, 0xec, 0x7b, 0x48, 0xb4, 0x13, 0x99, 0xf7, - 0x90, 0xc9, 0xdb, 0xc7, 0xe5, 0xfc, 0xdb, 0x47, 0xbc, 0x66, 0xc9, 0xb8, 0x7d, 0xcc, 0xba, 0x73, - 0x4c, 0xb8, 0xfe, 0x8c, 0xbc, 0x5a, 0xd7, 0x9f, 0x37, 0x60, 0xb8, 0xda, 0x6e, 0x6b, 0xae, 0x74, - 0x38, 0x3c, 0x4e, 0xbb, 0xcd, 0x85, 0x27, 0x0b, 0xe5, 0x3a, 0x0f, 0x19, 0xeb, 0xfc, 0x07, 0x00, - 0x8b, 0xe8, 0xf0, 0x8f, 0x03, 0x37, 0x86, 0x18, 0xa8, 0xe1, 0xf3, 0x67, 0x00, 0x38, 0x70, 0xba, - 0x05, 0x24, 0x46, 0xe6, 0x8a, 0xbd, 0xb5, 0x0b, 0xe5, 0xf4, 0xf4, 0x79, 0x05, 0x4b, 0xd7, 0x9f, - 0x15, 0xe0, 0x92, 0x50, 0x72, 0x12, 0x1f, 0xf8, 0xe9, 0x67, 0xe7, 0xbb, 0x30, 0x2e, 0x68, 0xb7, - 0xe3, 0x0f, 0x81, 0x5f, 0x01, 0xcb, 0xc5, 0x98, 0xaf, 0xe8, 0x06, 0x1a, 0x79, 0x17, 0x46, 0xf0, - 0x8f, 0xf8, 0x1a, 0x84, 0x49, 0x66, 0x14, 0x51, 0xeb, 0xc9, 0xcb, 0x10, 0x85, 0x6a, 0x7d, 0x03, - 0x97, 0xf3, 0x1a, 0xfe, 0x0a, 0xe4, 0xf2, 0xcf, 0x0a, 0x70, 0x41, 0xb0, 0x37, 0x96, 0x8a, 0x17, - 0xda, 0x75, 0x4e, 0xe1, 0x80, 0xfb, 0x00, 0xc6, 0x58, 0x85, 0xb2, 0xdd, 0xfd, 0x62, 0x6b, 0x15, - 0x27, 0x87, 0xb8, 0x64, 0xc9, 0x89, 0x1c, 0xe1, 0x50, 0xe2, 0x1c, 0xb6, 0xa4, 0xf1, 0xc2, 0xd6, - 0x89, 0xad, 0xaf, 0xe0, 0x62, 0x76, 0x17, 0x5e, 0x81, 0x7c, 0x1e, 0xc0, 0x5c, 0xc6, 0xa6, 0xf0, - 0x62, 0x7b, 0xf2, 0x97, 0x70, 0x21, 0x93, 0xd7, 0x2b, 0x68, 0xe6, 0x0a, 0xd3, 0x38, 0xa2, 0x57, - 0x30, 0x84, 0xd6, 0x23, 0x38, 0x9f, 0xc1, 0xe9, 0x15, 0x34, 0xf1, 0x3e, 0xcc, 0x2a, 0x4d, 0xfb, - 0xa5, 0x5a, 0xb8, 0x0e, 0x97, 0x38, 0xa3, 0x57, 0x33, 0x2a, 0x0f, 0xe1, 0x82, 0x60, 0xf7, 0x0a, - 0xa4, 0xb7, 0x02, 0x17, 0xe3, 0x03, 0x75, 0x86, 0x9e, 0x74, 0xe2, 0x45, 0xc6, 0x5a, 0x83, 0x2b, - 0x31, 0xa7, 0x1c, 0xa5, 0xe1, 0xe4, 0xdc, 0xb8, 0x3a, 0x18, 0x8f, 0xd2, 0x2b, 0x19, 0xd1, 0x47, - 0x70, 0xce, 0x60, 0xfa, 0xca, 0x54, 0xa5, 0x55, 0x98, 0xe2, 0x8c, 0x4d, 0xd5, 0x79, 0x5e, 0x57, - 0x9d, 0xc7, 0xe6, 0xcf, 0xc6, 0x2c, 0x11, 0xbc, 0x7b, 0x37, 0x43, 0x9b, 0x5e, 0x47, 0x6d, 0x5a, - 0xa2, 0xc4, 0x2d, 0x7c, 0x17, 0x86, 0x38, 0x44, 0xb4, 0x2f, 0x83, 0x19, 0x3f, 0x2c, 0x70, 0x32, - 0x81, 0x6c, 0xfd, 0x08, 0x2e, 0xf1, 0x93, 0x68, 0x7c, 0x97, 0x68, 0x9e, 0x16, 0x7f, 0x98, 0x38, - 0x88, 0x9e, 0x17, 0x7c, 0x93, 0xf8, 0x39, 0xe7, 0xd1, 0x3d, 0x39, 0xb7, 0xf3, 0xf8, 0x9f, 0xe8, - 0x31, 0x96, 0x3c, 0x60, 0x16, 0x33, 0x0f, 0x98, 0xd7, 0xe0, 0xaa, 0x3a, 0x60, 0x26, 0xab, 0x91, - 0x53, 0xcb, 0xfa, 0x0a, 0x2e, 0xf0, 0x8e, 0x4a, 0x27, 0x39, 0xb3, 0x19, 0x1f, 0x25, 0xba, 0x39, - 0x2b, 0xba, 0x69, 0x62, 0xe7, 0x74, 0xf2, 0x7f, 0x2f, 0xc8, 0x4f, 0x2e, 0x9b, 0xf9, 0xaf, 0xfa, - 0xc4, 0xbd, 0x01, 0x15, 0x25, 0x10, 0xb3, 0x45, 0x2f, 0x76, 0xdc, 0x5e, 0x87, 0x19, 0x9d, 0x8d, - 0xdb, 0xa0, 0xbb, 0x77, 0xf0, 0x92, 0xe7, 0x1d, 0xf6, 0x59, 0x20, 0x40, 0x4e, 0xbb, 0x72, 0x86, - 0xdc, 0x10, 0xdf, 0x56, 0x98, 0x56, 0x1d, 0x2e, 0xa6, 0x87, 0xc2, 0x6d, 0x48, 0x0f, 0x79, 0xf2, - 0x29, 0xfb, 0x84, 0x11, 0x22, 0x06, 0x23, 0x97, 0xa9, 0xfc, 0x8e, 0x39, 0xb9, 0xa4, 0xb2, 0x2c, - 0xb9, 0xd4, 0x24, 0xfa, 0xcf, 0x6a, 0x97, 0xf3, 0xe1, 0x37, 0x81, 0xc8, 0xa2, 0xc5, 0x9a, 0x2d, - 0xab, 0x3e, 0x0f, 0xfd, 0x8b, 0x35, 0x5b, 0x3c, 0xcd, 0x41, 0x4d, 0xb0, 0x11, 0x06, 0x36, 0x83, - 0x25, 0x35, 0xf2, 0xe2, 0x09, 0x34, 0xf2, 0x07, 0x03, 0x23, 0xfd, 0xa5, 0x01, 0x9b, 0xd4, 0xdc, - 0x7d, 0xef, 0x91, 0x1b, 0x1d, 0xa8, 0x0a, 0xab, 0xd6, 0xd7, 0x30, 0x65, 0x54, 0x2f, 0xbe, 0xe2, - 0xae, 0x6f, 0x8a, 0x98, 0x3e, 0xbb, 0x58, 0x45, 0x27, 0x12, 0x34, 0x59, 0x8c, 0xf3, 0xf5, 0xa6, - 0xe1, 0xd4, 0xf1, 0xc1, 0xaa, 0x2d, 0x0b, 0xad, 0xff, 0x7f, 0x40, 0xe3, 0xae, 0xbd, 0xd4, 0xea, - 0xd2, 0xbb, 0x3b, 0x00, 0x7c, 0x86, 0x68, 0x9d, 0x63, 0x0a, 0xe0, 0x98, 0xf0, 0xcd, 0xe0, 0x4b, - 0xb2, 0xad, 0x21, 0x9d, 0xf4, 0x25, 0x97, 0xf0, 0xa8, 0xe5, 0x44, 0xf2, 0xf1, 0xa2, 0xf2, 0xa8, - 0x15, 0xac, 0x43, 0x5b, 0x47, 0x22, 0x3f, 0x4a, 0x3e, 0x37, 0x18, 0xc4, 0x3b, 0xa5, 0xd7, 0xe4, - 0x25, 0x73, 0xba, 0x6f, 0xa7, 0x7b, 0x71, 0xf0, 0x0c, 0x66, 0x18, 0xad, 0xfb, 0x18, 0x0f, 0x16, - 0xcb, 0xdf, 0x46, 0xd4, 0xe3, 0x6b, 0xfb, 0x10, 0xd6, 0xf3, 0x7a, 0x97, 0x7a, 0x62, 0x64, 0x61, - 0x7f, 0x8f, 0xf9, 0xd4, 0xa9, 0x2a, 0xb3, 0xb3, 0xf9, 0xe3, 0x24, 0xb2, 0xd7, 0x96, 0xbd, 0x66, - 0xdb, 0x77, 0xd5, 0x81, 0x89, 0x4f, 0xa2, 0xa0, 0x55, 0xa7, 0x02, 0x6e, 0xeb, 0x48, 0xd6, 0x1b, - 0x5d, 0xfd, 0xb4, 0x47, 0x60, 0x60, 0x7b, 0x71, 0x7b, 0xad, 0x54, 0xb0, 0x6e, 0x01, 0x68, 0x35, - 0x01, 0x0c, 0x6d, 0x6c, 0xda, 0xeb, 0xd5, 0xb5, 0x52, 0x1f, 0x99, 0x81, 0xb3, 0x8f, 0x56, 0x37, - 0x96, 0x36, 0x1f, 0xd5, 0xea, 0xb5, 0xf5, 0xaa, 0xbd, 0xbd, 0x58, 0xb5, 0x97, 0x4a, 0x05, 0xeb, - 0x1b, 0x98, 0x36, 0x7b, 0xf8, 0x4a, 0x27, 0x61, 0x04, 0x53, 0x4a, 0x9f, 0x79, 0xf0, 0x68, 0x5b, - 0xf3, 0xdf, 0x14, 0x87, 0xbf, 0xa4, 0x1f, 0x92, 0x38, 0x26, 0x8a, 0xcf, 0x48, 0x43, 0x22, 0x6f, - 0x71, 0xb5, 0x20, 0xf9, 0x16, 0x97, 0xa9, 0x05, 0xf5, 0x58, 0x2f, 0xc0, 0xa5, 0xef, 0x07, 0x30, - 0x6d, 0xd6, 0x7a, 0x52, 0x2b, 0xd5, 0x6b, 0xe8, 0xd8, 0xaa, 0x3d, 0xd4, 0x21, 0x44, 0xbf, 0x36, - 0x10, 0x2b, 0xeb, 0x0f, 0xa0, 0x24, 0xb0, 0xe2, 0x9d, 0xf7, 0x9a, 0x34, 0x23, 0x16, 0x32, 0x9e, - 0x15, 0x4a, 0x37, 0x6b, 0x1f, 0x4a, 0x6c, 0xc5, 0x14, 0x94, 0xbc, 0x82, 0x69, 0x18, 0x5c, 0x8b, - 0xaf, 0x73, 0x6c, 0xfe, 0x03, 0xdf, 0xab, 0x44, 0x4e, 0x10, 0x49, 0xaf, 0xaf, 0x51, 0x5b, 0xfd, - 0x26, 0x6f, 0xc1, 0xd0, 0x3d, 0xb7, 0x15, 0x09, 0xd3, 0x48, 0xbc, 0xc9, 0x33, 0xb6, 0xbc, 0xc0, - 0x16, 0x08, 0x96, 0x0d, 0x67, 0xb5, 0x0a, 0x4f, 0xd1, 0x54, 0x52, 0x86, 0xe1, 0x0d, 0xfa, 0xad, - 0x56, 0xbf, 0xfc, 0x69, 0xbd, 0x07, 0x67, 0x85, 0x47, 0x9d, 0x26, 0xa6, 0xab, 0xe2, 0xf5, 0x73, - 0xc1, 0x78, 0x82, 0x29, 0x58, 0x62, 0x11, 0xa3, 0xdb, 0x69, 0x37, 0x5f, 0x90, 0x8e, 0x6d, 0x14, - 0xa7, 0xa4, 0x7b, 0x53, 0xde, 0x02, 0xf5, 0x1a, 0xce, 0xbf, 0x28, 0x40, 0x39, 0x61, 0x65, 0x58, - 0x3c, 0x70, 0x5a, 0x2d, 0xea, 0xed, 0x53, 0x72, 0x1d, 0x06, 0xb6, 0x37, 0xb7, 0xb7, 0x84, 0x95, - 0x54, 0x3a, 0x00, 0x30, 0x90, 0xc2, 0xb1, 0x11, 0x83, 0x3c, 0x84, 0xb3, 0xd2, 0x67, 0x56, 0x15, - 0x89, 0x11, 0xba, 0xd4, 0xdd, 0x03, 0x37, 0x4d, 0x47, 0xde, 0x11, 0x26, 0x91, 0x9f, 0x74, 0xdc, - 0x80, 0x36, 0xd1, 0xf2, 0x13, 0xdf, 0xa6, 0x6b, 0x25, 0xb6, 0x8e, 0xc6, 0xdf, 0xaa, 0x5a, 0x7f, - 0x50, 0x80, 0xd9, 0x1c, 0xab, 0x09, 0x79, 0xcb, 0xe8, 0xce, 0x94, 0xd6, 0x1d, 0x89, 0xb2, 0xd2, - 0x27, 0xfa, 0xb3, 0xa8, 0x39, 0x12, 0xf7, 0x9f, 0xc2, 0x91, 0x78, 0xa5, 0x2f, 0x76, 0x1e, 0x5e, - 0x00, 0x18, 0x91, 0x70, 0xeb, 0x0c, 0x4c, 0x18, 0x72, 0xb3, 0x2c, 0x18, 0xd7, 0x6b, 0x66, 0x83, - 0xb3, 0xe8, 0x37, 0xd5, 0xe0, 0xb0, 0xbf, 0xad, 0xdf, 0x2f, 0xc0, 0x34, 0x76, 0x71, 0xdf, 0x65, - 0x4b, 0x5f, 0x2c, 0xa1, 0x79, 0xa3, 0x27, 0x17, 0x8d, 0x9e, 0x24, 0x70, 0x55, 0x97, 0x3e, 0x4c, - 0x75, 0xe9, 0x62, 0x56, 0x97, 0x70, 0x7a, 0xbb, 0xbe, 0x67, 0xf4, 0x44, 0xbb, 0x8a, 0xfa, 0xc3, - 0x02, 0x4c, 0x69, 0x6d, 0x52, 0xed, 0xbf, 0x63, 0x34, 0xe9, 0x42, 0x46, 0x93, 0x52, 0x42, 0x5e, - 0x48, 0xb5, 0xe8, 0xb5, 0x6e, 0x2d, 0xea, 0x29, 0xe3, 0xff, 0x50, 0x80, 0x99, 0x4c, 0x19, 0x90, - 0x73, 0x4c, 0xb7, 0x6d, 0x04, 0x34, 0x12, 0xe2, 0x15, 0xbf, 0x18, 0x7c, 0x35, 0x0c, 0x3b, 0x34, - 0x10, 0xdf, 0xb9, 0xf8, 0x45, 0x5e, 0x83, 0x89, 0x2d, 0x1a, 0xb8, 0x7e, 0x93, 0xbb, 0x98, 0x73, - 0xdf, 0xcd, 0x09, 0xdb, 0x04, 0x92, 0x8b, 0x30, 0x5a, 0x6d, 0xed, 0xfb, 0x81, 0x1b, 0x1d, 0xf0, - 0xdb, 0xc0, 0x51, 0x3b, 0x06, 0x30, 0xde, 0x4b, 0xee, 0x3e, 0xbf, 0xd4, 0x60, 0xc4, 0xe2, 0x17, - 0x5b, 0x5c, 0xa4, 0xb5, 0x70, 0x88, 0x2f, 0x2e, 0xd2, 0x14, 0x78, 0x0e, 0x86, 0x3e, 0xb7, 0x71, - 0x12, 0x60, 0x84, 0x00, 0x5b, 0xfc, 0x22, 0x93, 0xe8, 0x24, 0x8c, 0xaf, 0x12, 0xd0, 0x39, 0xf8, - 0x43, 0x98, 0xce, 0x92, 0x6b, 0xd6, 0x14, 0x12, 0xb4, 0x45, 0x45, 0xfb, 0x15, 0x4c, 0x55, 0x9b, - 0xcd, 0xf5, 0x7b, 0x55, 0xee, 0x73, 0x20, 0x46, 0x95, 0x7f, 0x3c, 0xdc, 0x5e, 0x27, 0x54, 0xb6, - 0x81, 0x55, 0xcf, 0x8d, 0xec, 0xa9, 0xe5, 0x6f, 0xdd, 0x30, 0x72, 0xbd, 0x7d, 0xcd, 0xa8, 0x68, - 0x9f, 0xdb, 0xa0, 0xcf, 0x32, 0xa6, 0x00, 0xdb, 0x4d, 0x4d, 0xde, 0x1c, 0x9e, 0xc1, 0x7c, 0x5a, - 0x63, 0x1b, 0x2f, 0x25, 0xb3, 0x26, 0xdf, 0xb8, 0xa0, 0xbf, 0xda, 0x78, 0x62, 0xfd, 0x00, 0xce, - 0xf1, 0x25, 0xad, 0x5b, 0xe3, 0x45, 0xb3, 0x75, 0x1b, 0xa8, 0xf5, 0xbe, 0xb4, 0x52, 0x74, 0x6d, - 0x99, 0x3d, 0x6e, 0xb4, 0x05, 0xab, 0xfc, 0x8f, 0x05, 0x98, 0x4b, 0x90, 0xd6, 0x9e, 0x7b, 0x0d, - 0xb9, 0x9e, 0xbe, 0x91, 0x74, 0xc2, 0x46, 0x3d, 0x80, 0x1b, 0xff, 0xdc, 0xa6, 0xf2, 0xc3, 0x26, - 0xb7, 0x00, 0x38, 0xb1, 0xb6, 0x7d, 0xa3, 0xe9, 0x5b, 0x38, 0xd9, 0xe0, 0x06, 0xae, 0xa1, 0x90, - 0x0e, 0x64, 0xc9, 0x5d, 0x7c, 0x23, 0xbd, 0x6c, 0xc3, 0x18, 0x15, 0x83, 0x0a, 0xf2, 0x7a, 0x8e, - 0x91, 0x38, 0x8b, 0xbf, 0xf5, 0x7f, 0xf4, 0xc3, 0xac, 0x3e, 0x80, 0x2f, 0xd2, 0xd7, 0x2d, 0x18, - 0x5b, 0xf4, 0xbd, 0x88, 0x7e, 0x1b, 0x69, 0x51, 0x09, 0x88, 0xba, 0x69, 0x57, 0x25, 0x42, 0x75, - 0xe4, 0x80, 0x3a, 0xd3, 0x63, 0x0c, 0x67, 0xc1, 0x18, 0x91, 0x2c, 0xc2, 0xc4, 0x06, 0x7d, 0x96, - 0x12, 0x20, 0x3a, 0x2c, 0x7a, 0xf4, 0x59, 0x5d, 0x13, 0xa2, 0xee, 0x45, 0x66, 0xd0, 0x90, 0x3d, - 0x98, 0x94, 0x93, 0xcb, 0x10, 0xe6, 0x9c, 0xbe, 0xab, 0x98, 0xd3, 0x99, 0xbf, 0xda, 0x67, 0x35, - 0xe4, 0xc8, 0x30, 0xc1, 0x91, 0x75, 0x9d, 0xd7, 0xc8, 0x1f, 0xa2, 0x9b, 0xdb, 0x96, 0x56, 0x62, - 0xb8, 0x83, 0x26, 0x1f, 0xa0, 0xeb, 0x2c, 0xac, 0x2d, 0x28, 0xa7, 0xc7, 0x43, 0xd4, 0xf6, 0x0e, - 0x0c, 0x71, 0xa8, 0x50, 0x03, 0x64, 0xc0, 0x19, 0x85, 0xcd, 0xcf, 0xe9, 0xbc, 0x1a, 0x5b, 0xe0, - 0x5a, 0x2b, 0x68, 0x3b, 0x51, 0x38, 0x4a, 0x11, 0xbb, 0x9d, 0x1c, 0x5e, 0xf4, 0xb4, 0x95, 0xc3, - 0xab, 0xfb, 0x99, 0xc8, 0xc7, 0x05, 0x8b, 0x68, 0x7e, 0xd2, 0x39, 0x89, 0x86, 0xdd, 0x80, 0x61, - 0x01, 0x4a, 0x84, 0xc2, 0x89, 0x3f, 0x3f, 0x89, 0x60, 0x7d, 0x08, 0xe7, 0xd1, 0x16, 0xe6, 0x7a, - 0xfb, 0x2d, 0xba, 0x13, 0x1a, 0xcf, 0x03, 0x7a, 0x7d, 0xd6, 0x1f, 0xc3, 0x5c, 0x16, 0x6d, 0xcf, - 0x2f, 0x9b, 0x07, 0xa7, 0xf8, 0xeb, 0x22, 0x4c, 0xaf, 0x86, 0xba, 0x32, 0xa1, 0x02, 0x54, 0x64, - 0x04, 0x4d, 0x40, 0x99, 0xac, 0xf4, 0x65, 0x05, 0x45, 0x78, 0x47, 0x7b, 0x9c, 0x58, 0xec, 0x16, - 0x0d, 0x81, 0x6d, 0x5b, 0xea, 0x79, 0xe2, 0x1b, 0x30, 0xb0, 0xc1, 0x96, 0xea, 0x7e, 0x31, 0x76, - 0x9c, 0x82, 0x81, 0xf0, 0x71, 0x20, 0xdb, 0x22, 0xd9, 0x0f, 0x72, 0x2f, 0xf5, 0x04, 0x71, 0xa0, - 0xf7, 0x6b, 0xff, 0x95, 0xbe, 0xd4, 0x6b, 0xc4, 0xf7, 0x60, 0xac, 0xda, 0x3c, 0xe4, 0x1e, 0x81, - 0xbe, 0x97, 0xf8, 0x2c, 0xb5, 0x92, 0x95, 0x3e, 0x5b, 0x47, 0x64, 0x27, 0xdc, 0x6a, 0xbb, 0x8d, - 0x1b, 0x55, 0x56, 0x04, 0x84, 0x95, 0x3e, 0x74, 0xb0, 0x5f, 0x18, 0x81, 0xa1, 0x6d, 0x27, 0xd8, - 0xa7, 0x91, 0xf5, 0x15, 0xcc, 0x09, 0x27, 0x15, 0x6e, 0xf9, 0x43, 0x57, 0x96, 0x30, 0xf6, 0x43, - 0xea, 0xe6, 0x58, 0x72, 0x19, 0x00, 0xf5, 0xfc, 0x55, 0xaf, 0x49, 0xbf, 0x15, 0x5e, 0x72, 0x1a, - 0xc4, 0x7a, 0x17, 0x46, 0x95, 0x84, 0x50, 0x99, 0xd5, 0x36, 0x3b, 0x94, 0xd6, 0xb4, 0xf1, 0xe6, - 0x52, 0x3e, 0xb4, 0x3c, 0x6f, 0xf4, 0x5d, 0xc4, 0x34, 0xe1, 0xda, 0xaf, 0x0b, 0x33, 0x89, 0x49, - 0x10, 0x3f, 0x99, 0x57, 0xfa, 0x27, 0x77, 0xe3, 0x53, 0xbf, 0x93, 0xea, 0x69, 0xf1, 0x44, 0xea, - 0xa9, 0xf5, 0x8f, 0x8a, 0x78, 0x70, 0x4a, 0xc9, 0x23, 0x61, 0x83, 0xd2, 0xed, 0x60, 0x0b, 0x30, - 0x8a, 0xbd, 0x5f, 0x92, 0x4f, 0xbf, 0xba, 0xfb, 0x58, 0x8c, 0xfc, 0xfc, 0xa8, 0xd2, 0x87, 0x8e, - 0x15, 0x31, 0x19, 0xf9, 0x04, 0x86, 0x97, 0xbd, 0x26, 0x72, 0xe8, 0x3f, 0x05, 0x07, 0x49, 0xc4, - 0xc6, 0x04, 0x9b, 0xbc, 0xcd, 0x3e, 0x61, 0x6e, 0xba, 0xb0, 0x35, 0x48, 0x7c, 0x82, 0x1b, 0xcc, - 0x3b, 0xc1, 0x0d, 0x25, 0x4e, 0x70, 0x16, 0x0c, 0x6e, 0x06, 0x4d, 0x11, 0x89, 0x64, 0x72, 0x7e, - 0x5c, 0x08, 0x0e, 0x61, 0x36, 0x2f, 0xb2, 0xfe, 0x73, 0x01, 0x66, 0xef, 0xd3, 0x28, 0x73, 0x0e, - 0x19, 0x52, 0x29, 0xbc, 0xb4, 0x54, 0x8a, 0x2f, 0x22, 0x15, 0xd5, 0xeb, 0xfe, 0xbc, 0x5e, 0x0f, - 0xe4, 0xf5, 0x7a, 0x30, 0xbf, 0xd7, 0xf7, 0x61, 0x88, 0x77, 0x95, 0x9d, 0x52, 0x57, 0x23, 0x7a, - 0x18, 0x9f, 0x52, 0x75, 0x0f, 0x31, 0x9b, 0x97, 0x31, 0x45, 0x72, 0xcd, 0x09, 0xf5, 0x53, 0xaa, - 0xf8, 0x69, 0xfd, 0x18, 0x1f, 0x8d, 0xae, 0xf9, 0x8d, 0x27, 0x9a, 0xb5, 0x73, 0x98, 0x7f, 0xa1, - 0x49, 0xeb, 0x38, 0xc3, 0xe2, 0x25, 0xb6, 0xc4, 0x20, 0x57, 0x60, 0x6c, 0xd5, 0xbb, 0xe7, 0x07, - 0x0d, 0xba, 0xe9, 0xb5, 0x38, 0xf7, 0x11, 0x5b, 0x07, 0x09, 0x2b, 0x80, 0xa8, 0x21, 0x3e, 0x5a, - 0x23, 0x20, 0x71, 0xb4, 0x66, 0xb0, 0xdd, 0x79, 0x9b, 0x97, 0x09, 0x23, 0x03, 0xfb, 0xbb, 0xdb, - 0xa9, 0x54, 0x1d, 0x5f, 0x7b, 0x21, 0xee, 0xc1, 0x79, 0x9b, 0xb6, 0x5b, 0x0e, 0xd3, 0xe9, 0x0e, - 0x7d, 0x8e, 0xaf, 0xfa, 0x7c, 0x25, 0xe3, 0xc1, 0x97, 0xe9, 0x2f, 0xa0, 0x9a, 0x5c, 0xec, 0xd2, - 0xe4, 0x43, 0xb8, 0x7a, 0x9f, 0x46, 0xe6, 0x82, 0x1a, 0xdb, 0x52, 0x45, 0xe7, 0x57, 0x60, 0x24, - 0x34, 0xed, 0xc0, 0x97, 0xe5, 0xf5, 0x43, 0x16, 0xe1, 0xee, 0x5d, 0x79, 0x53, 0x22, 0xf8, 0xa8, - 0xbf, 0xac, 0x4f, 0xa1, 0x92, 0x57, 0xdd, 0xc9, 0xdc, 0x39, 0x5d, 0xb8, 0x92, 0xcf, 0x40, 0x34, - 0x77, 0x19, 0xa4, 0xcd, 0x58, 0x7c, 0x42, 0xbd, 0x5a, 0x6b, 0x9a, 0x99, 0xc5, 0x1f, 0xd6, 0x82, - 0x74, 0x6c, 0x7b, 0x89, 0xe6, 0xd6, 0xf1, 0x3a, 0xd6, 0x64, 0x10, 0xcb, 0xb5, 0x0a, 0x23, 0x12, - 0x26, 0xe4, 0x3a, 0x9b, 0xd9, 0x52, 0x29, 0xd0, 0xa6, 0x64, 0xa0, 0xc8, 0xac, 0x1f, 0xcb, 0xab, - 0x09, 0x93, 0xe2, 0x64, 0x2f, 0x20, 0x4f, 0x72, 0x17, 0x61, 0xf9, 0x70, 0xde, 0xe4, 0xad, 0x9b, - 0x9c, 0x4b, 0x9a, 0xc9, 0x99, 0x5b, 0x9a, 0xaf, 0x98, 0x26, 0xd0, 0xa2, 0x98, 0x97, 0x31, 0x88, - 0x5c, 0xd6, 0x0d, 0xcb, 0xe3, 0xe9, 0x27, 0x95, 0xb7, 0x61, 0x2e, 0xab, 0x42, 0xed, 0x1c, 0xa8, - 0xac, 0x97, 0x42, 0xdf, 0x59, 0x82, 0xcb, 0x32, 0x16, 0x90, 0xef, 0x47, 0x61, 0x14, 0x38, 0xed, - 0x5a, 0x23, 0x70, 0xdb, 0x31, 0x95, 0x05, 0x43, 0x1c, 0x22, 0x24, 0xc1, 0xaf, 0x79, 0x38, 0x8e, - 0x28, 0xb1, 0x7e, 0xbb, 0x00, 0x96, 0xe1, 0x83, 0x84, 0xe3, 0xbc, 0x15, 0xf8, 0x4f, 0xdd, 0xa6, - 0x76, 0xb5, 0xf2, 0x96, 0x61, 0xd6, 0xe3, 0x4f, 0xe2, 0x92, 0xee, 0xcf, 0x62, 0xcd, 0xbc, 0x9d, - 0x30, 0xb5, 0x71, 0xc5, 0x13, 0xfd, 0x92, 0xcc, 0xa0, 0x2b, 0xca, 0x04, 0xf7, 0x5f, 0x0b, 0x70, - 0xad, 0x6b, 0x1b, 0x44, 0x7f, 0xf6, 0xa0, 0x94, 0x2c, 0x13, 0x33, 0xa8, 0xa2, 0xf9, 0x24, 0xa4, - 0x39, 0xec, 0xde, 0xe1, 0x3e, 0xd6, 0xd2, 0x77, 0xa7, 0xad, 0x38, 0xa7, 0xf8, 0x9d, 0xbe, 0xf5, - 0xe4, 0x03, 0x80, 0x6d, 0x3f, 0x72, 0x5a, 0x8b, 0x68, 0x00, 0xe8, 0x8f, 0xfd, 0xe5, 0x23, 0x06, - 0xad, 0x27, 0x83, 0x14, 0x68, 0xc8, 0xd6, 0x67, 0xf8, 0x5d, 0x67, 0x37, 0xfa, 0x64, 0x9f, 0xda, - 0x22, 0x5c, 0x4b, 0xdc, 0x8b, 0xbf, 0x00, 0x93, 0x08, 0x66, 0x98, 0xf8, 0x99, 0xee, 0x7d, 0x3f, - 0xf0, 0x3b, 0xed, 0x5f, 0xcd, 0xa8, 0xff, 0x79, 0x81, 0x3b, 0x2a, 0xea, 0xd5, 0x8a, 0x81, 0x5e, - 0x04, 0x88, 0xa1, 0x09, 0x87, 0x75, 0x55, 0xb0, 0x7b, 0x87, 0x1f, 0xb9, 0xd1, 0x62, 0xbe, 0xcf, - 0x19, 0x68, 0x64, 0xbf, 0xda, 0x91, 0xbc, 0x8b, 0x97, 0xe1, 0xaa, 0xf6, 0x93, 0xc9, 0xfd, 0x3d, - 0x69, 0xff, 0x38, 0x25, 0xdd, 0x01, 0x4c, 0xb3, 0x15, 0xa0, 0xda, 0x89, 0x0e, 0xfc, 0xc0, 0x8d, - 0xe4, 0xd3, 0x0b, 0xb2, 0x25, 0xde, 0x76, 0x73, 0xaa, 0x8f, 0x7f, 0x79, 0x54, 0x79, 0xff, 0x34, - 0x51, 0x1a, 0x25, 0xcf, 0x6d, 0xf5, 0x1e, 0xdc, 0x9a, 0x85, 0xfe, 0x45, 0x7b, 0x0d, 0x17, 0x3c, - 0x7b, 0x4d, 0x2d, 0x78, 0xf6, 0x9a, 0xf5, 0xb7, 0x45, 0xa8, 0xf0, 0xe8, 0x13, 0xe8, 0x43, 0x11, - 0x5b, 0x2d, 0x34, 0xa7, 0x8c, 0x93, 0x1a, 0x18, 0x12, 0xd1, 0x25, 0x8a, 0x27, 0x89, 0x2e, 0xf1, - 0x1b, 0x90, 0x63, 0xb2, 0x3a, 0x81, 0x15, 0xe0, 0xcd, 0xe3, 0xa3, 0xca, 0xb5, 0xd8, 0x0a, 0xc0, - 0x4b, 0xb3, 0xcc, 0x01, 0x39, 0x55, 0xa4, 0xed, 0x17, 0x03, 0x2f, 0x60, 0xbf, 0xb8, 0x0d, 0xc3, - 0x78, 0x98, 0x59, 0xdd, 0x12, 0x5e, 0x8d, 0x38, 0x3d, 0x31, 0x9e, 0x4c, 0xdd, 0xd5, 0x83, 0xb7, - 0x49, 0x34, 0xeb, 0xff, 0x2e, 0xc2, 0x95, 0x7c, 0x99, 0x8b, 0xb6, 0x2d, 0x01, 0xc4, 0xde, 0x1b, - 0xdd, 0xbc, 0x45, 0xf0, 0xdb, 0x79, 0x46, 0xf7, 0x94, 0xb7, 0x96, 0x46, 0xc7, 0x74, 0x1f, 0xf9, - 0xd0, 0x37, 0x71, 0x55, 0x60, 0xbc, 0xff, 0x15, 0xb1, 0x47, 0x05, 0xc8, 0x88, 0x3d, 0x2a, 0x60, - 0x64, 0x0f, 0x66, 0xb7, 0x02, 0xf7, 0xa9, 0x13, 0xd1, 0x87, 0xf4, 0x39, 0x7f, 0x08, 0xb3, 0x2c, - 0x5e, 0xbf, 0xf0, 0xd7, 0xdb, 0xd7, 0x8f, 0x8f, 0x2a, 0xaf, 0xb5, 0x39, 0x0a, 0xc6, 0x97, 0xe2, - 0x4f, 0x0f, 0xeb, 0xe9, 0x07, 0x31, 0x79, 0x8c, 0xac, 0x7f, 0x59, 0x80, 0x0b, 0xa8, 0x96, 0x0b, - 0xb3, 0xab, 0xac, 0xfc, 0x85, 0x9c, 0x06, 0xf5, 0x0e, 0x8a, 0xb9, 0x88, 0x4e, 0x83, 0xc6, 0x43, - 0x68, 0xdb, 0x40, 0x23, 0xab, 0x30, 0x26, 0x7e, 0xe3, 0xf7, 0xd7, 0x8f, 0x07, 0x82, 0x19, 0x6d, - 0xc1, 0xc2, 0xa9, 0xce, 0x4d, 0x45, 0x38, 0xb1, 0x05, 0x33, 0x7c, 0x2f, 0x68, 0xeb, 0xb4, 0xd6, - 0x2f, 0x8a, 0x70, 0x71, 0x97, 0x06, 0xee, 0xe3, 0xe7, 0x39, 0x9d, 0xd9, 0x84, 0x69, 0x09, 0xe2, - 0x11, 0x28, 0x8c, 0x4f, 0x8c, 0x47, 0x1f, 0x94, 0x4d, 0x15, 0x21, 0x2c, 0xe4, 0x17, 0x97, 0x49, - 0x78, 0x0a, 0x77, 0xc0, 0x77, 0x60, 0x24, 0x11, 0x03, 0x06, 0xc7, 0x5f, 0x7e, 0xa1, 0xf1, 0x50, - 0xad, 0xf4, 0xd9, 0x0a, 0x93, 0xfc, 0x4e, 0xfe, 0xfd, 0x8d, 0x30, 0x7d, 0xf4, 0xb2, 0x7f, 0xe2, - 0x07, 0xcb, 0x3e, 0x56, 0x47, 0x2b, 0xcd, 0xf8, 0x60, 0x57, 0xfa, 0xec, 0xbc, 0x9a, 0x16, 0xc6, - 0x60, 0xb4, 0x8a, 0x77, 0x52, 0xec, 0xe4, 0xfe, 0x5f, 0x8a, 0x70, 0x59, 0x3e, 0x6a, 0xc9, 0x11, - 0xf3, 0x17, 0x30, 0x2b, 0x41, 0xd5, 0x36, 0x53, 0x18, 0x68, 0xd3, 0x94, 0x34, 0x8f, 0x00, 0x2a, - 0x25, 0xed, 0x08, 0x9c, 0x58, 0xd8, 0x79, 0xe4, 0xaf, 0xc6, 0xfa, 0xf9, 0x49, 0x56, 0x44, 0x1e, - 0xb4, 0x42, 0xea, 0x6b, 0xa6, 0x21, 0x1a, 0x63, 0xfd, 0x6c, 0xa6, 0xac, 0xa7, 0x03, 0x2f, 0x6b, - 0x3d, 0x5d, 0xe9, 0x4b, 0xda, 0x4f, 0x17, 0x26, 0x61, 0x7c, 0x83, 0x3e, 0x8b, 0xe5, 0xfe, 0xbf, - 0x16, 0x12, 0x91, 0x06, 0x98, 0x86, 0xc1, 0x43, 0x0e, 0x14, 0xe2, 0xa0, 0x2e, 0x18, 0x69, 0x40, - 0xd7, 0x30, 0x38, 0xea, 0x2a, 0x0c, 0xf3, 0x8b, 0xda, 0xe6, 0x09, 0x4e, 0xf8, 0xea, 0x75, 0x0a, - 0x7f, 0x32, 0xd8, 0xe4, 0x87, 0x7d, 0x41, 0x6f, 0x3d, 0x84, 0xab, 0xc2, 0x7f, 0xd9, 0x1c, 0x7c, - 0xac, 0xe8, 0x94, 0xdb, 0x97, 0xe5, 0xc0, 0xe5, 0xfb, 0x34, 0xb9, 0xf4, 0x18, 0xaf, 0x77, 0x3e, - 0x85, 0x33, 0x06, 0x5c, 0x71, 0x44, 0xad, 0x54, 0xcd, 0x21, 0xc5, 0x3a, 0x89, 0x6d, 0x5d, 0xc9, - 0xaa, 0x42, 0x6f, 0xac, 0x45, 0x31, 0x94, 0x67, 0x10, 0x5f, 0xb1, 0x85, 0xa7, 0x58, 0xf5, 0xae, - 0x6b, 0xdf, 0x35, 0x5f, 0xf1, 0x78, 0xac, 0x37, 0xb9, 0xf3, 0xaa, 0x52, 0x6b, 0xc2, 0xb8, 0x0b, - 0xb0, 0x26, 0x61, 0x5c, 0x16, 0xb5, 0x68, 0x18, 0x5a, 0x3f, 0x1b, 0x04, 0x4b, 0x08, 0x36, 0xeb, - 0xf6, 0x59, 0xca, 0x63, 0x2f, 0xd5, 0x58, 0xb1, 0x51, 0x9d, 0xd3, 0x23, 0x48, 0xc6, 0xa5, 0x7c, - 0xe6, 0xa1, 0x9e, 0xd7, 0x88, 0xa1, 0xc6, 0xcc, 0x4b, 0xf5, 0xfe, 0xeb, 0x9c, 0x65, 0x92, 0x7f, - 0x6c, 0xaf, 0x1f, 0x1f, 0x55, 0xae, 0xe6, 0x2c, 0x93, 0x06, 0xdf, 0xec, 0x25, 0xd3, 0x36, 0xaf, - 0x44, 0xfa, 0x5f, 0xe4, 0x4a, 0x84, 0x7d, 0x91, 0xfa, 0xa5, 0xc8, 0x8e, 0x29, 0x4b, 0xf1, 0x3d, - 0xca, 0x2b, 0x6d, 0xbd, 0x48, 0x3c, 0xf8, 0xd7, 0x20, 0x06, 0x57, 0x83, 0x0d, 0x71, 0xa1, 0xa4, - 0xd9, 0x2c, 0x17, 0x0f, 0x68, 0xe3, 0x89, 0xb0, 0x15, 0xcb, 0x0b, 0xdd, 0x2c, 0x9b, 0x39, 0x8f, - 0x26, 0xcc, 0xbf, 0x73, 0x5e, 0x50, 0x6f, 0x30, 0x52, 0x3d, 0x60, 0x41, 0x92, 0x2d, 0xf9, 0x29, - 0x4c, 0xa9, 0xa1, 0x4e, 0xb8, 0x1f, 0x8d, 0xcd, 0xbf, 0x16, 0x07, 0x9e, 0x3c, 0x7c, 0xec, 0xdc, - 0x7c, 0x7a, 0xe7, 0x66, 0x06, 0x2e, 0x7f, 0x07, 0xdf, 0x90, 0x05, 0x9a, 0xef, 0x91, 0x7e, 0xd1, - 0x95, 0x45, 0xa8, 0x5d, 0x67, 0xff, 0x5f, 0xca, 0x59, 0x9e, 0xe9, 0x0b, 0x6e, 0x8b, 0x8a, 0x57, - 0x2f, 0x72, 0xf6, 0xe5, 0x5c, 0xc5, 0x15, 0xbe, 0xe3, 0xab, 0xb8, 0x3f, 0x29, 0xca, 0x27, 0x02, - 0xe9, 0xdb, 0xd0, 0x53, 0xdf, 0xc8, 0x65, 0xf6, 0xe0, 0x44, 0x9b, 0x69, 0x66, 0xe3, 0xc8, 0x82, - 0xbc, 0xcf, 0x54, 0xb1, 0xa1, 0x26, 0xd5, 0xdd, 0x40, 0x5c, 0x60, 0x5c, 0x71, 0xa2, 0xea, 0xa2, - 0x51, 0x25, 0x2f, 0xcb, 0xfa, 0x5f, 0xfe, 0xb2, 0xec, 0x77, 0x01, 0xce, 0x6e, 0x39, 0xfb, 0xae, - 0xc7, 0x16, 0x6d, 0x9b, 0x86, 0x7e, 0x27, 0x68, 0x50, 0x52, 0x85, 0x49, 0xd3, 0xff, 0xb3, 0x87, - 0x77, 0x2b, 0xdb, 0x97, 0x4c, 0x18, 0x99, 0x87, 0x51, 0xf5, 0xe6, 0x54, 0x6c, 0x26, 0x19, 0x6f, - 0x51, 0x57, 0xfa, 0xec, 0x18, 0x8d, 0x7c, 0x60, 0xdc, 0xef, 0x9c, 0x51, 0xcf, 0xa7, 0x11, 0x77, - 0x9e, 0x3b, 0xe8, 0x79, 0x7e, 0xd3, 0xdc, 0x10, 0xf9, 0x25, 0xc6, 0x8f, 0x53, 0x57, 0x3e, 0x83, - 0x46, 0x8b, 0x53, 0x76, 0x2f, 0xd4, 0x05, 0x72, 0xc3, 0x39, 0x67, 0x5c, 0x06, 0x7d, 0x05, 0x63, - 0x0f, 0x3b, 0x7b, 0x54, 0x5e, 0x6e, 0x0d, 0x89, 0xfd, 0x31, 0xe9, 0xd5, 0x2c, 0xca, 0x77, 0xef, - 0xf2, 0x31, 0x78, 0xd2, 0xd9, 0xa3, 0xe9, 0x38, 0xe1, 0x6c, 0x61, 0xd2, 0x98, 0x91, 0x03, 0x28, - 0x25, 0x1d, 0x90, 0x45, 0x34, 0xb5, 0x2e, 0x6e, 0xd3, 0x18, 0xca, 0x43, 0x8b, 0x46, 0xce, 0xdd, - 0x22, 0x8d, 0x4a, 0x52, 0x5c, 0xc9, 0x6f, 0xc2, 0x4c, 0xa6, 0xd5, 0x51, 0x3d, 0xa1, 0xea, 0x6e, - 0xd0, 0xc4, 0x45, 0x3d, 0x21, 0x35, 0xf9, 0x5e, 0xcb, 0xa8, 0x39, 0xbb, 0x16, 0xd2, 0x84, 0x33, - 0x09, 0xc7, 0x5a, 0x91, 0x72, 0x21, 0xdf, 0x55, 0x17, 0x37, 0x26, 0x19, 0xb5, 0x34, 0xb3, 0xae, - 0x24, 0x4b, 0xb2, 0x06, 0xa3, 0xea, 0xb8, 0x8f, 0xaf, 0xb3, 0xb2, 0x4d, 0x1b, 0xe5, 0xe3, 0xa3, - 0xca, 0x74, 0x6c, 0xda, 0x30, 0x78, 0xc6, 0x0c, 0xc8, 0x6f, 0xc1, 0x55, 0x35, 0x45, 0x37, 0x83, - 0x6c, 0x23, 0x90, 0x88, 0x76, 0x7e, 0x23, 0x39, 0xc3, 0xf3, 0xf0, 0x77, 0xef, 0x2c, 0x14, 0xcb, - 0x85, 0x95, 0x3e, 0xbb, 0x37, 0x6b, 0xf2, 0xb3, 0x02, 0x9c, 0xcb, 0xa9, 0x75, 0x1c, 0x6b, 0xed, - 0x69, 0x99, 0x43, 0xe5, 0x1e, 0x9f, 0x0d, 0xb9, 0xcd, 0xf8, 0x79, 0x9d, 0x34, 0xd1, 0x19, 0xfd, - 0xce, 0xa9, 0x89, 0x3c, 0x00, 0xd8, 0x77, 0x23, 0x31, 0xc7, 0x30, 0x10, 0x55, 0xc6, 0x07, 0x8a, - 0x02, 0x8d, 0xd1, 0x4c, 0x81, 0xee, 0xbb, 0x91, 0x98, 0x83, 0x6f, 0xc3, 0x10, 0x9e, 0xb7, 0xc3, - 0xf2, 0x04, 0x6a, 0xa4, 0x18, 0x0d, 0x07, 0x4f, 0xe5, 0xfa, 0x1e, 0x24, 0x70, 0xc8, 0x0a, 0xd3, - 0xec, 0x70, 0x0f, 0x94, 0x9a, 0x98, 0x88, 0x9d, 0x25, 0x4e, 0x07, 0xbc, 0x48, 0x46, 0xcc, 0x30, - 0x42, 0xe4, 0x9b, 0x64, 0x0b, 0x00, 0x23, 0x81, 0x58, 0xe1, 0x1e, 0x0c, 0x8c, 0x0c, 0x94, 0x06, - 0xf9, 0x47, 0x28, 0xbd, 0xbf, 0x7f, 0x77, 0x84, 0x3f, 0x15, 0xdd, 0xf1, 0xdc, 0xc7, 0x6e, 0xbc, - 0x18, 0xea, 0x96, 0xba, 0x38, 0x57, 0x8d, 0xd0, 0xa3, 0x73, 0xb2, 0xd2, 0x28, 0xa3, 0x5e, 0xb1, - 0xa7, 0x51, 0xef, 0xae, 0x76, 0xfd, 0xa5, 0x85, 0x9b, 0xe4, 0xfa, 0x92, 0x69, 0x44, 0x8b, 0xef, - 0xc5, 0xbe, 0x81, 0x21, 0x8c, 0x10, 0xc9, 0xef, 0x16, 0xc7, 0xe6, 0x6f, 0x8a, 0x2d, 0xa0, 0x4b, - 0xf3, 0x79, 0x48, 0x49, 0xf1, 0xfc, 0x9b, 0x4b, 0x1c, 0x01, 0x86, 0xc4, 0x11, 0x42, 0xb6, 0x61, - 0x6a, 0x2b, 0xa0, 0x4d, 0xe1, 0x83, 0xdc, 0x0e, 0x84, 0xa1, 0x83, 0x9b, 0x50, 0x50, 0x7d, 0x68, - 0xcb, 0xe2, 0x3a, 0x55, 0xe5, 0xfa, 0xe6, 0x9c, 0x41, 0x4e, 0x96, 0x61, 0xb2, 0x46, 0x9d, 0xa0, - 0x71, 0xf0, 0x90, 0x3e, 0x67, 0xaa, 0x93, 0x91, 0x9e, 0x21, 0xc4, 0x12, 0xd6, 0x5f, 0x2c, 0xd2, - 0xfd, 0x45, 0x4c, 0x22, 0xf2, 0x19, 0x0c, 0xd5, 0xfc, 0x20, 0x5a, 0x78, 0x2e, 0x16, 0x48, 0x79, - 0xfb, 0xc4, 0x81, 0x0b, 0xe7, 0x65, 0x8a, 0x8a, 0xd0, 0x0f, 0xa2, 0xfa, 0x9e, 0x11, 0x5e, 0x89, - 0xa3, 0x90, 0xe7, 0x30, 0x6d, 0x2e, 0x4e, 0xc2, 0x35, 0x76, 0x44, 0xa8, 0x6c, 0x59, 0x2b, 0x20, - 0x47, 0x59, 0xb8, 0x2e, 0xb8, 0x5f, 0x49, 0x2e, 0x81, 0x8f, 0xb1, 0x5c, 0x8f, 0x78, 0x94, 0x45, - 0x4f, 0xd6, 0x31, 0xb7, 0x07, 0xef, 0x51, 0x35, 0xe4, 0x2e, 0xb5, 0xa3, 0x71, 0x00, 0xaf, 0x0e, - 0x2e, 0x70, 0x28, 0x09, 0x27, 0x4c, 0x26, 0x84, 0xb1, 0x53, 0xa4, 0x64, 0x0b, 0xce, 0xee, 0x84, - 0x74, 0x2b, 0xa0, 0x4f, 0x5d, 0xfa, 0x4c, 0xf2, 0x83, 0x38, 0xda, 0x11, 0xe3, 0xd7, 0xe6, 0xa5, - 0x59, 0x0c, 0xd3, 0xc4, 0xe4, 0x03, 0x80, 0x2d, 0xd7, 0xf3, 0x68, 0x13, 0xaf, 0x30, 0xc7, 0x90, - 0x15, 0x9a, 0x67, 0xdb, 0x08, 0xad, 0xfb, 0x5e, 0x4b, 0x17, 0xa9, 0x86, 0x4c, 0x16, 0x60, 0x62, - 0xd5, 0x6b, 0xb4, 0x3a, 0xc2, 0xd5, 0x20, 0xc4, 0xc5, 0x49, 0x44, 0x61, 0x73, 0x79, 0x41, 0x3d, - 0xf5, 0x91, 0x9b, 0x24, 0xe4, 0x21, 0x10, 0x01, 0x10, 0xb3, 0xd6, 0xd9, 0x6b, 0x51, 0xf1, 0xb9, - 0xa3, 0xd9, 0x45, 0x32, 0xc2, 0xe9, 0x6e, 0x04, 0x37, 0x4b, 0x91, 0xcd, 0x7d, 0x00, 0x63, 0xda, - 0x9c, 0xcf, 0x88, 0x67, 0x30, 0xad, 0xc7, 0x33, 0x18, 0xd5, 0xe3, 0x16, 0xfc, 0x7f, 0x05, 0xb8, - 0x98, 0xfd, 0x2d, 0x09, 0x65, 0x6e, 0x13, 0x46, 0x15, 0x50, 0xbd, 0x60, 0x91, 0xc7, 0x88, 0x84, - 0x36, 0xc5, 0x3f, 0x68, 0xb9, 0xf2, 0xe8, 0xbd, 0x8f, 0x79, 0xbc, 0x80, 0x6d, 0xff, 0x7f, 0x1b, - 0x81, 0x69, 0xf4, 0xd4, 0x4e, 0xae, 0x53, 0x9f, 0x62, 0x5c, 0x12, 0x84, 0x69, 0xa6, 0x6a, 0x61, - 0xb5, 0xe2, 0xf0, 0x64, 0x10, 0x2d, 0x83, 0x80, 0xbc, 0xab, 0xfb, 0x57, 0x14, 0xb5, 0x5c, 0x22, - 0x12, 0xa8, 0x77, 0x21, 0x76, 0xbc, 0x78, 0xcb, 0xb8, 0xde, 0x3f, 0xf1, 0xa2, 0x37, 0x70, 0xd2, - 0x45, 0x6f, 0x47, 0x2d, 0x7a, 0x3c, 0xde, 0xc5, 0x9b, 0xda, 0xa2, 0xf7, 0xea, 0x57, 0xbb, 0xa1, - 0x57, 0xbd, 0xda, 0x0d, 0xbf, 0xdc, 0x6a, 0x37, 0xf2, 0x82, 0xab, 0xdd, 0x3d, 0x98, 0xdc, 0xa0, - 0xb4, 0xa9, 0x5d, 0xba, 0x8c, 0xc6, 0xbb, 0xa7, 0x47, 0xd1, 0x9c, 0x96, 0x75, 0xf3, 0x92, 0xa0, - 0xca, 0x5d, 0x35, 0xe1, 0xef, 0x67, 0xd5, 0x1c, 0x7b, 0xc5, 0xab, 0xe6, 0xf8, 0xcb, 0xac, 0x9a, - 0xa9, 0xa5, 0x6f, 0xe2, 0xd4, 0x4b, 0xdf, 0xcb, 0xac, 0x56, 0x9f, 0xa0, 0x7b, 0x62, 0xad, 0xb6, - 0x22, 0x3c, 0x51, 0x34, 0xd7, 0x8f, 0x15, 0x3f, 0x94, 0xde, 0xdb, 0xf8, 0x37, 0x83, 0x6d, 0xf9, - 0x81, 0xbc, 0x3e, 0xc7, 0xbf, 0xad, 0x05, 0x74, 0x4a, 0xd4, 0xe9, 0x95, 0xeb, 0xff, 0xb0, 0x78, - 0xfe, 0x27, 0xd6, 0xb8, 0xa4, 0xc6, 0x67, 0xcb, 0x72, 0xeb, 0xaf, 0x0b, 0xfc, 0x82, 0xf3, 0x7f, - 0xc4, 0xa5, 0xf2, 0x65, 0x2e, 0x1d, 0x7f, 0x27, 0x0e, 0x0b, 0x20, 0x42, 0x18, 0x04, 0x4e, 0xe3, - 0x49, 0x7c, 0xeb, 0xfb, 0x23, 0xf6, 0x9d, 0xeb, 0x05, 0x42, 0x37, 0x9e, 0x55, 0x92, 0xd2, 0x0b, - 0x77, 0xef, 0xc8, 0x05, 0x40, 0x44, 0x47, 0xe0, 0x60, 0x73, 0x01, 0xd0, 0x09, 0xd0, 0xef, 0xee, - 0x8c, 0x65, 0xf3, 0x57, 0xed, 0x99, 0x2d, 0x78, 0x2f, 0xfd, 0x2e, 0x1b, 0xf5, 0xf0, 0xf8, 0x5d, - 0xb6, 0x2e, 0xc6, 0xf8, 0x85, 0xf6, 0x0e, 0x5c, 0xb0, 0xe9, 0xa1, 0xff, 0x94, 0xbe, 0x5a, 0xb6, - 0x5f, 0xc3, 0x79, 0x93, 0x21, 0x7f, 0xc1, 0xc3, 0x83, 0xab, 0x7f, 0x92, 0x1d, 0x92, 0x5d, 0x10, - 0xf0, 0x90, 0xec, 0x3c, 0xb2, 0x33, 0xfb, 0x53, 0xdf, 0x37, 0xb0, 0xcc, 0xf2, 0xe1, 0xa2, 0xc9, - 0xbc, 0xda, 0x6c, 0x62, 0xe6, 0xc6, 0x86, 0xdb, 0x76, 0xbc, 0x88, 0x6c, 0xc2, 0x98, 0xf6, 0x33, - 0x61, 0x76, 0xd0, 0x4a, 0x84, 0x4e, 0x13, 0x03, 0x8c, 0x70, 0x9e, 0x31, 0xd8, 0xa2, 0x50, 0x49, - 0x8a, 0x87, 0x89, 0x4c, 0xaf, 0x73, 0x01, 0x26, 0xb4, 0x9f, 0xca, 0xfc, 0x89, 0x1f, 0xbf, 0x56, - 0x83, 0x29, 0x30, 0x93, 0xc4, 0x6a, 0xc0, 0x5c, 0x96, 0xd0, 0x30, 0xd2, 0xd3, 0x73, 0xb2, 0x1c, - 0xc7, 0x8c, 0xea, 0xed, 0xb9, 0x77, 0x26, 0x2f, 0x5e, 0x94, 0xf5, 0x7f, 0x0e, 0xc0, 0x05, 0x31, - 0x18, 0xaf, 0x72, 0xc4, 0xc9, 0x8f, 0x61, 0x4c, 0x1b, 0x63, 0x21, 0xf4, 0x2b, 0x32, 0x8c, 0x67, - 0xde, 0x5c, 0xe0, 0xe6, 0x91, 0x0e, 0x02, 0xea, 0x89, 0xe1, 0x5e, 0xe9, 0xb3, 0x75, 0x96, 0xa4, - 0x05, 0x93, 0xe6, 0x40, 0x0b, 0x0b, 0xd1, 0xb5, 0xcc, 0x4a, 0x4c, 0x54, 0x19, 0x14, 0xba, 0x59, - 0xcf, 0x1c, 0xee, 0x95, 0x3e, 0x3b, 0xc1, 0x9b, 0x7c, 0x0b, 0x67, 0x53, 0xa3, 0x2c, 0x0c, 0x7f, - 0x6f, 0x64, 0x56, 0x98, 0xc2, 0xe6, 0xa6, 0xdd, 0x00, 0xc1, 0xb9, 0xd5, 0xa6, 0x2b, 0x21, 0x4d, - 0x18, 0xd7, 0x07, 0x5e, 0x98, 0xb0, 0xae, 0x76, 0x11, 0x25, 0x47, 0xe4, 0xca, 0x9d, 0x90, 0x25, - 0x8e, 0xfd, 0x73, 0xd3, 0x5c, 0x6d, 0x20, 0x8f, 0xc0, 0x10, 0xff, 0xcd, 0x96, 0x80, 0xad, 0x80, - 0x86, 0xd4, 0x6b, 0x50, 0xc3, 0xd9, 0xfb, 0x25, 0x97, 0x80, 0x7f, 0x51, 0x80, 0x72, 0x16, 0xdf, - 0x1a, 0xf5, 0x9a, 0x64, 0x0b, 0x4a, 0xc9, 0x8a, 0xc4, 0xac, 0xb6, 0x54, 0xdc, 0xdd, 0xdc, 0x26, - 0xad, 0xf4, 0xd9, 0x29, 0x6a, 0xb2, 0x01, 0x67, 0x35, 0x98, 0x30, 0xd4, 0x16, 0x4f, 0x62, 0xa8, - 0x65, 0xa3, 0x90, 0x22, 0xd5, 0xed, 0xdc, 0x2b, 0xb8, 0x33, 0x2e, 0xf9, 0x87, 0x8e, 0xeb, 0x31, - 0x45, 0x57, 0x0b, 0x1b, 0x05, 0x31, 0x54, 0xc8, 0x86, 0x5b, 0x6e, 0x11, 0x2a, 0x1f, 0xa7, 0x28, - 0x14, 0xeb, 0x63, 0x5c, 0xc1, 0x85, 0xbd, 0x8f, 0x3f, 0x75, 0x55, 0xcc, 0xae, 0xc0, 0xe0, 0xf6, - 0x5a, 0x6d, 0xb1, 0x2a, 0x1e, 0xce, 0xf2, 0x70, 0x0b, 0xad, 0xb0, 0xde, 0x70, 0x6c, 0x5e, 0x60, - 0x7d, 0x04, 0xe4, 0x3e, 0x8d, 0x44, 0xe0, 0x77, 0x45, 0xf7, 0x3a, 0x0c, 0x0b, 0x90, 0xa0, 0x44, - 0x37, 0xbb, 0x96, 0xc0, 0x92, 0x65, 0xd6, 0x96, 0x3c, 0x27, 0xb4, 0xa8, 0x13, 0x6a, 0x1b, 0xf3, - 0xfb, 0x30, 0x12, 0x08, 0x98, 0xd8, 0x97, 0x27, 0x55, 0x8a, 0x0c, 0x04, 0x73, 0xdb, 0xb8, 0xc4, - 0xb1, 0xd5, 0x5f, 0xd6, 0x1a, 0x86, 0x46, 0xd9, 0x5c, 0x5d, 0x5a, 0x64, 0x52, 0x15, 0xc2, 0x92, - 0xc3, 0x71, 0x0b, 0xfd, 0xd1, 0x23, 0xaa, 0x3f, 0x9b, 0x45, 0xd1, 0xe0, 0x47, 0x2e, 0x02, 0x02, - 0x69, 0x28, 0xd6, 0x5d, 0x15, 0x68, 0x25, 0x83, 0x5b, 0x5e, 0xaa, 0x87, 0x0d, 0x0c, 0x21, 0x73, - 0x1f, 0x5d, 0x6f, 0x5e, 0x45, 0x23, 0x1c, 0x98, 0xe3, 0xdb, 0x3c, 0xeb, 0x95, 0x48, 0x66, 0xe7, - 0xab, 0xa5, 0x71, 0x11, 0x46, 0x15, 0x4c, 0xdd, 0xa3, 0x71, 0x59, 0x19, 0xf8, 0xbb, 0x77, 0xf9, - 0x0b, 0xe3, 0x86, 0x62, 0x10, 0xd3, 0xb1, 0x2a, 0xf8, 0x77, 0xf7, 0x1d, 0x57, 0x11, 0xd2, 0x20, - 0xfa, 0x4e, 0xab, 0x88, 0x63, 0x0c, 0x9d, 0xa6, 0x0a, 0x03, 0x7f, 0x77, 0xfe, 0x24, 0x82, 0xfa, - 0x8e, 0xab, 0x60, 0x82, 0xfa, 0xee, 0xaa, 0xa0, 0x32, 0x18, 0x13, 0x9f, 0xa4, 0xa9, 0x4a, 0x96, - 0xd3, 0x95, 0x48, 0x23, 0x78, 0x82, 0xa2, 0xeb, 0x78, 0x50, 0xb8, 0xc8, 0x85, 0xf5, 0x2b, 0xa8, - 0x86, 0x09, 0xec, 0xbb, 0xad, 0xe6, 0xff, 0x29, 0xf0, 0xd0, 0x50, 0xb5, 0x4d, 0x2d, 0x8d, 0xa4, - 0xf7, 0xd8, 0xd7, 0xae, 0xf9, 0xb5, 0xaf, 0xfd, 0xa1, 0xeb, 0x35, 0xf5, 0x6b, 0x7e, 0xa7, 0x13, - 0x1d, 0xa8, 0xd0, 0xc9, 0x4f, 0x5c, 0xaf, 0x69, 0x27, 0xb1, 0xc9, 0x07, 0x30, 0xa1, 0x81, 0x94, - 0xb6, 0xc6, 0xf3, 0x4f, 0xe8, 0xe4, 0x6e, 0xd3, 0x36, 0x31, 0xad, 0xbf, 0x2b, 0xc0, 0x54, 0x46, - 0x82, 0x63, 0x34, 0x66, 0xe0, 0x29, 0x48, 0x2d, 0x54, 0x22, 0xf9, 0x12, 0x46, 0xa9, 0x30, 0x36, - 0x49, 0x85, 0x88, 0x91, 0xf7, 0xb5, 0x64, 0xcc, 0x45, 0x2d, 0x0d, 0x58, 0x76, 0x02, 0x66, 0x1d, - 0x9d, 0x84, 0x00, 0x71, 0x4b, 0x84, 0xd9, 0xb8, 0xc6, 0x54, 0x5a, 0x2d, 0x93, 0xf3, 0x2b, 0x49, - 0x25, 0xad, 0x55, 0x63, 0xfd, 0x4e, 0x11, 0xce, 0x65, 0xf4, 0xbf, 0x46, 0xa3, 0xbf, 0x0f, 0x11, - 0x24, 0xf2, 0x69, 0xf7, 0xff, 0x8a, 0xf2, 0x69, 0x5b, 0xff, 0xa6, 0x08, 0xe7, 0x76, 0xda, 0x21, - 0xbe, 0xd6, 0x5a, 0xf5, 0x9e, 0x52, 0x2f, 0xf2, 0x83, 0xe7, 0xf8, 0xc2, 0x84, 0xbc, 0x0b, 0x83, - 0x2b, 0xb4, 0xd5, 0xf2, 0xc5, 0xfc, 0xbf, 0x24, 0x3d, 0x2d, 0x92, 0xd8, 0x88, 0xb4, 0xd2, 0x67, - 0x73, 0x6c, 0xf2, 0x01, 0x8c, 0xae, 0x50, 0x27, 0x88, 0xf6, 0xa8, 0x23, 0x8f, 0x2c, 0x32, 0x2b, - 0x86, 0x46, 0x22, 0x10, 0x56, 0xfa, 0xec, 0x18, 0x9b, 0xcc, 0xb3, 0xd3, 0xbc, 0xb7, 0xaf, 0x5e, - 0xa6, 0xe7, 0x54, 0xc8, 0x70, 0x56, 0xfa, 0x6c, 0xc4, 0x25, 0xeb, 0x30, 0x51, 0xdd, 0xa7, 0x5e, - 0xb4, 0x4e, 0x23, 0xa7, 0xe9, 0x44, 0x8e, 0x50, 0x6d, 0x5f, 0xcf, 0x23, 0x36, 0x90, 0x57, 0xfa, - 0x6c, 0x93, 0x9a, 0x7c, 0x04, 0xc3, 0xf7, 0x7d, 0xbf, 0xb9, 0xf7, 0x9c, 0x0a, 0x75, 0xb5, 0x92, - 0xc7, 0x48, 0xa0, 0xad, 0xf4, 0xd9, 0x92, 0x62, 0x61, 0x10, 0xfa, 0xd7, 0xc3, 0x7d, 0xeb, 0xa8, - 0x00, 0xe5, 0x25, 0xff, 0x99, 0x97, 0x29, 0xd5, 0x1f, 0x98, 0x52, 0x95, 0xec, 0x33, 0xf0, 0x13, - 0x72, 0x7d, 0x07, 0x06, 0xb6, 0x5c, 0x6f, 0x3f, 0xa1, 0x0a, 0x66, 0xd0, 0x31, 0x2c, 0x14, 0x8f, - 0xeb, 0xed, 0x93, 0x35, 0xa9, 0x83, 0x0b, 0x5b, 0x63, 0xbf, 0xa1, 0xf8, 0x67, 0x50, 0xeb, 0xd8, - 0xb1, 0xae, 0xcd, 0x7f, 0xcb, 0x0e, 0xbe, 0x05, 0xb3, 0x39, 0xf5, 0x8a, 0xa7, 0xe6, 0xac, 0x6f, - 0x03, 0xa8, 0xd8, 0xbc, 0x09, 0x33, 0x99, 0xe3, 0x97, 0x42, 0xfc, 0x87, 0x59, 0x13, 0x91, 0xf7, - 0xbc, 0x0c, 0xc3, 0x32, 0xf3, 0x12, 0xb7, 0xfd, 0xc8, 0x9f, 0xf8, 0xd8, 0x4a, 0x7e, 0xa8, 0x32, - 0x48, 0x88, 0xfc, 0x1e, 0x77, 0xb5, 0xa0, 0x4c, 0xfc, 0x73, 0xfa, 0xf0, 0x25, 0x3e, 0x1a, 0xc5, - 0x8b, 0xd5, 0xb9, 0xe2, 0x87, 0x91, 0xa7, 0xbc, 0x78, 0x6d, 0xf5, 0x9b, 0xdc, 0x80, 0x92, 0x4c, - 0x0d, 0x21, 0x72, 0xd0, 0x88, 0xec, 0xdf, 0x76, 0x0a, 0x4e, 0xde, 0x87, 0xd9, 0x24, 0x4c, 0xf6, - 0x92, 0xbf, 0x96, 0xcb, 0x2b, 0xb6, 0xfe, 0xaa, 0x88, 0x71, 0xb3, 0xbb, 0xcc, 0x6b, 0x26, 0xdd, - 0xcd, 0x9a, 0x90, 0x56, 0x71, 0xb3, 0x46, 0x2e, 0xc2, 0xe8, 0x66, 0xcd, 0x48, 0x5f, 0x65, 0xc7, - 0x00, 0xd6, 0x6c, 0xd6, 0x85, 0x6a, 0xd0, 0x38, 0x70, 0x23, 0xda, 0x88, 0x3a, 0x81, 0x58, 0x85, - 0xed, 0x14, 0x9c, 0x58, 0x30, 0x7e, 0xbf, 0xe5, 0xee, 0x35, 0x24, 0x33, 0x2e, 0x02, 0x03, 0x46, - 0xde, 0x80, 0xc9, 0x55, 0x2f, 0x8c, 0x9c, 0x56, 0x6b, 0x9d, 0x46, 0x07, 0x7e, 0x53, 0x24, 0xe0, - 0xb4, 0x13, 0x50, 0x56, 0xef, 0xa2, 0xef, 0x45, 0x8e, 0xeb, 0xd1, 0xc0, 0xee, 0x78, 0x91, 0x7b, - 0x48, 0x45, 0xdf, 0x53, 0x70, 0xf2, 0x0e, 0xcc, 0x28, 0xd8, 0x66, 0xd0, 0x38, 0xa0, 0x61, 0x14, - 0x60, 0x52, 0x3b, 0x0c, 0x1e, 0x64, 0x67, 0x17, 0x62, 0x0d, 0x2d, 0xbf, 0xd3, 0x5c, 0xf6, 0x9e, - 0xba, 0x81, 0xef, 0x61, 0x9e, 0x8b, 0x11, 0x51, 0x43, 0x02, 0x6e, 0xfd, 0xf1, 0x48, 0xe6, 0x67, - 0xfb, 0x32, 0x73, 0xf0, 0x4b, 0x18, 0x5f, 0x74, 0xda, 0xce, 0x9e, 0xdb, 0x72, 0x23, 0x57, 0x65, - 0xff, 0x7a, 0xb7, 0xc7, 0x37, 0x2f, 0x93, 0x85, 0xd0, 0xa6, 0x4e, 0x6c, 0x1b, 0xac, 0xe6, 0xfe, - 0x76, 0x08, 0x66, 0x32, 0xf1, 0xc8, 0x75, 0x91, 0x26, 0x4c, 0xad, 0xab, 0x22, 0x71, 0x96, 0x9d, - 0x04, 0xb3, 0xb1, 0x44, 0xd0, 0x62, 0x8b, 0x3a, 0x5e, 0x47, 0xa4, 0xcd, 0xb2, 0x0d, 0x18, 0x1b, - 0x4b, 0xa6, 0x37, 0x68, 0xcc, 0xd0, 0x09, 0xdb, 0x4e, 0x40, 0xc9, 0x15, 0x18, 0x63, 0x10, 0xc9, - 0x6a, 0x80, 0x3f, 0x17, 0xd4, 0x40, 0x8c, 0xd3, 0x86, 0xdf, 0xa4, 0x1a, 0xa7, 0x41, 0xce, 0xc9, - 0x84, 0x32, 0x4e, 0x0c, 0x22, 0x39, 0x0d, 0x71, 0x4e, 0x1a, 0x88, 0xbc, 0x06, 0x13, 0xd5, 0x76, - 0x5b, 0x63, 0x84, 0xf9, 0xb2, 0x6c, 0x13, 0x48, 0x2e, 0x03, 0x54, 0xdb, 0x6d, 0xc9, 0x06, 0x73, - 0x61, 0xd9, 0x1a, 0x84, 0xdc, 0x8c, 0x43, 0x9f, 0x69, 0xac, 0xf0, 0x3a, 0xc1, 0xce, 0x28, 0x61, - 0x72, 0x55, 0x71, 0xa2, 0x04, 0x53, 0xe0, 0x72, 0x4d, 0x80, 0xc9, 0xc7, 0x70, 0x3e, 0xe1, 0xc3, - 0xa1, 0x55, 0x80, 0xa6, 0x7e, 0x3b, 0x1f, 0x81, 0xbc, 0x07, 0xe7, 0x12, 0x85, 0xb2, 0x3a, 0xb4, - 0xea, 0xdb, 0x39, 0xa5, 0xe4, 0x43, 0x28, 0x27, 0x9e, 0x80, 0xc7, 0x95, 0xa2, 0x05, 0xdf, 0xce, - 0x2d, 0x67, 0x5f, 0x57, 0xe2, 0x2d, 0x99, 0xa8, 0x12, 0x2f, 0x2b, 0xed, 0xec, 0x42, 0xb2, 0x02, - 0x95, 0x4c, 0xbf, 0x18, 0xad, 0x62, 0xcc, 0xf1, 0x65, 0xf7, 0x42, 0x23, 0x0b, 0x70, 0x31, 0x13, - 0x45, 0x36, 0x03, 0x33, 0x7f, 0xd9, 0x5d, 0x71, 0xc8, 0x3c, 0x4c, 0xc7, 0xfe, 0x41, 0x5a, 0x13, - 0x30, 0xe9, 0x97, 0x9d, 0x59, 0x46, 0xde, 0x36, 0x1f, 0xfa, 0xf3, 0xca, 0x30, 0xe7, 0x97, 0x9d, - 0x2e, 0xb0, 0x8e, 0x0b, 0x70, 0x31, 0x73, 0xa3, 0x94, 0xfa, 0xfc, 0x5c, 0x52, 0x71, 0xd4, 0xd6, - 0x82, 0x1b, 0x30, 0x80, 0x0a, 0x3e, 0xb7, 0x15, 0x4b, 0xbf, 0x55, 0xa4, 0xe7, 0xac, 0x58, 0xa9, - 0x8d, 0x38, 0xe4, 0xbe, 0xba, 0x1b, 0xec, 0x47, 0x4b, 0xc6, 0xad, 0xa4, 0x02, 0x95, 0x51, 0xb9, - 0x7e, 0x47, 0x28, 0x6f, 0x03, 0x5f, 0xe6, 0x1a, 0xe6, 0xaf, 0x0a, 0x50, 0xe9, 0xa1, 0x1f, 0xa8, - 0x3e, 0x15, 0x4e, 0xd0, 0xa7, 0x07, 0xaa, 0x4f, 0xfc, 0x9d, 0xed, 0xfc, 0xc9, 0x74, 0x90, 0x57, - 0xdd, 0xad, 0x0e, 0x90, 0xb4, 0x1a, 0x4a, 0xbe, 0x0f, 0xa3, 0xb5, 0xda, 0x8a, 0xe1, 0x1c, 0x98, - 0xba, 0x1c, 0x8a, 0x31, 0xc8, 0xed, 0x13, 0x79, 0x03, 0x6a, 0xbe, 0x80, 0xd6, 0x12, 0x94, 0xf3, - 0x34, 0x48, 0x5c, 0x58, 0x78, 0x9c, 0x2e, 0xed, 0x62, 0x89, 0x2f, 0x2c, 0x26, 0xd8, 0x7a, 0x0f, - 0xce, 0x29, 0x6a, 0x9e, 0x00, 0x44, 0x0b, 0x22, 0x20, 0x8e, 0x9d, 0x2a, 0x58, 0x41, 0x0c, 0xb0, - 0xfe, 0x72, 0x20, 0x45, 0x58, 0xeb, 0x1c, 0x1e, 0x3a, 0xc1, 0x73, 0x52, 0x35, 0x09, 0xfb, 0x7b, - 0x6a, 0xfa, 0x0b, 0x03, 0x3f, 0x3f, 0xaa, 0xf4, 0x69, 0xdc, 0xd9, 0x72, 0x8c, 0x1b, 0xbb, 0xd7, - 0xa0, 0xfc, 0x4a, 0xaa, 0xc8, 0x03, 0x25, 0x19, 0x40, 0xb2, 0x0b, 0x13, 0x62, 0xcb, 0xc4, 0xdf, - 0x72, 0x6a, 0xdf, 0x4e, 0x4e, 0x6d, 0xa3, 0x79, 0x37, 0x0d, 0x12, 0x3e, 0x09, 0x4c, 0x36, 0xe4, - 0x4b, 0x98, 0x94, 0x0a, 0x92, 0x60, 0xcc, 0x9d, 0x88, 0xee, 0x74, 0x67, 0x6c, 0xd2, 0x70, 0xce, - 0x09, 0x46, 0xac, 0xc9, 0x72, 0x8d, 0xe1, 0x9c, 0x07, 0x4f, 0xd2, 0x64, 0x83, 0x44, 0x34, 0xd9, - 0x80, 0xcd, 0x7d, 0x06, 0x24, 0xdd, 0xaf, 0x5e, 0xb3, 0x78, 0x42, 0x9b, 0xc5, 0x73, 0x55, 0x98, - 0xca, 0xe8, 0xc0, 0xa9, 0x58, 0x7c, 0x06, 0x24, 0xdd, 0xd2, 0xd3, 0x70, 0xb0, 0xae, 0xc3, 0x1b, - 0x4a, 0x04, 0x6a, 0x36, 0x18, 0x3c, 0xa5, 0xe1, 0xf9, 0xb7, 0x8b, 0x50, 0xe9, 0x81, 0x4a, 0xfe, - 0xa8, 0x90, 0x94, 0x36, 0x9f, 0x8d, 0x1f, 0x24, 0xa5, 0x9d, 0x4d, 0x9f, 0x21, 0xf6, 0x85, 0x0f, - 0x7f, 0xf6, 0x37, 0x2f, 0xac, 0xf0, 0xa7, 0x87, 0xec, 0xf4, 0xd2, 0x1a, 0xd0, 0xa5, 0x65, 0xc3, - 0xb4, 0x71, 0x54, 0x3a, 0xc9, 0x9e, 0x71, 0x19, 0x40, 0xa4, 0x0b, 0x5d, 0xf3, 0xf7, 0x85, 0x7a, - 0xa6, 0x41, 0xac, 0x7b, 0x30, 0x93, 0xe0, 0x29, 0x8c, 0xe1, 0xdf, 0x07, 0xf5, 0x58, 0x1c, 0x99, - 0xf6, 0x2f, 0x9c, 0xfd, 0xe5, 0x51, 0x65, 0x82, 0x69, 0xd2, 0x37, 0xe3, 0x58, 0xf4, 0xf2, 0x2f, - 0x6b, 0x5d, 0x37, 0xe7, 0x57, 0x5b, 0x7a, 0x10, 0x1d, 0x72, 0x07, 0x86, 0x38, 0x24, 0x11, 0xf1, - 0x59, 0xc7, 0x16, 0x6b, 0x82, 0x40, 0xb4, 0x66, 0xf0, 0x69, 0x2b, 0xfe, 0xa8, 0xc6, 0xa1, 0x18, - 0xac, 0x1d, 0x9e, 0x01, 0x25, 0x06, 0xab, 0xa8, 0xd2, 0x03, 0xd5, 0x38, 0x64, 0x84, 0xf4, 0xbd, - 0x90, 0x78, 0x9e, 0xff, 0xac, 0x45, 0x9b, 0x3c, 0xbb, 0xdc, 0xc2, 0xb8, 0xf0, 0xbd, 0x18, 0x70, - 0x18, 0x03, 0x24, 0xb3, 0x3e, 0x85, 0x19, 0xb6, 0x41, 0x07, 0xc9, 0xfa, 0x30, 0xef, 0x01, 0x83, - 0x99, 0xce, 0xf1, 0x0e, 0x03, 0xa1, 0x73, 0xbc, 0x28, 0xb4, 0xd6, 0xe0, 0x3c, 0x37, 0x06, 0xea, - 0x5d, 0x8a, 0x4d, 0xef, 0x83, 0xf8, 0x3b, 0xf1, 0x30, 0x32, 0xa3, 0xf7, 0x1c, 0xcf, 0xfa, 0x04, - 0x5f, 0xde, 0x88, 0x49, 0xea, 0xfa, 0x5e, 0x6c, 0xf9, 0x3b, 0xd9, 0x53, 0xdd, 0xff, 0x19, 0x2e, - 0x56, 0xdb, 0x6d, 0xea, 0x35, 0x63, 0xc2, 0xed, 0xc0, 0x39, 0x61, 0x20, 0x05, 0x52, 0x85, 0x41, - 0xc4, 0x56, 0xf7, 0x96, 0xa2, 0xb9, 0x19, 0xcd, 0x41, 0x3c, 0x11, 0x02, 0x14, 0x2b, 0xe0, 0x94, - 0x56, 0x13, 0x66, 0x6b, 0x9d, 0xbd, 0x43, 0x37, 0x42, 0x97, 0x7a, 0x0c, 0x46, 0x22, 0xeb, 0x5e, - 0x95, 0x49, 0xab, 0xb8, 0x30, 0xae, 0xc7, 0x2f, 0x34, 0xd0, 0x2b, 0x5f, 0x04, 0x28, 0x79, 0x7a, - 0xe7, 0x66, 0x4c, 0x8a, 0x56, 0x0f, 0x5e, 0x0b, 0x16, 0x8b, 0xc4, 0x56, 0xd6, 0x14, 0x9c, 0xd5, - 0xef, 0x80, 0xf8, 0x0c, 0x99, 0x81, 0x29, 0xf3, 0x6e, 0x87, 0x83, 0xbf, 0x81, 0x69, 0x6e, 0x7b, - 0xe6, 0x21, 0xbc, 0xe7, 0xe3, 0x68, 0xd5, 0xc5, 0xdd, 0xf9, 0x84, 0x2f, 0x3f, 0xba, 0xf8, 0xaa, - 0xe4, 0x0c, 0xbb, 0xf3, 0xfc, 0xf5, 0xe4, 0xd3, 0x79, 0xe3, 0x06, 0xb1, 0xb8, 0x3b, 0xbf, 0x30, - 0x2c, 0x42, 0xa1, 0x32, 0xee, 0x7c, 0xf8, 0xbf, 0x13, 0xee, 0xf3, 0xf8, 0x60, 0x7f, 0x85, 0x3a, - 0xf8, 0xb8, 0x26, 0xfb, 0xd9, 0xf3, 0x24, 0x14, 0xdd, 0xa6, 0x3c, 0xad, 0xbb, 0x4d, 0xeb, 0xcf, - 0x0a, 0x70, 0x9d, 0xeb, 0x40, 0xd9, 0x74, 0x78, 0xd1, 0x93, 0x43, 0x4c, 0xde, 0x07, 0x9e, 0x01, - 0x5e, 0x28, 0x9a, 0x96, 0x68, 0x79, 0x37, 0x4e, 0x9c, 0x80, 0x54, 0x61, 0x5c, 0x7f, 0x9e, 0x72, - 0xb2, 0x50, 0x73, 0xf6, 0xd8, 0xe1, 0x63, 0x47, 0x3d, 0x59, 0x79, 0x02, 0x17, 0x96, 0xbf, 0x65, - 0x13, 0x42, 0xec, 0x4e, 0x42, 0x61, 0x8f, 0x9f, 0xd5, 0x9e, 0xd9, 0x16, 0x33, 0xc6, 0x3c, 0x4d, - 0x27, 0xc1, 0xec, 0x68, 0x2a, 0x37, 0x38, 0xa5, 0x35, 0x8f, 0xda, 0x06, 0xcc, 0xfa, 0xcb, 0x02, - 0x5c, 0xcc, 0xae, 0x4d, 0x2c, 0x2c, 0xab, 0x70, 0x76, 0xd1, 0xf1, 0x7c, 0xcf, 0x6d, 0x38, 0xad, - 0x5a, 0xe3, 0x80, 0x36, 0x3b, 0x2a, 0x60, 0xaa, 0x5a, 0x65, 0xf6, 0xa9, 0x27, 0xc9, 0x25, 0x8a, - 0x9d, 0xa6, 0x62, 0x87, 0x32, 0x7c, 0xe1, 0xc0, 0xd7, 0xde, 0x16, 0x0d, 0x14, 0x3f, 0xde, 0xb2, - 0x9c, 0x52, 0x72, 0x5b, 0x1a, 0xd9, 0x9b, 0x3b, 0x9e, 0x1b, 0x29, 0x22, 0x6e, 0x5d, 0xc9, 0x2a, - 0xb2, 0xfe, 0x55, 0x01, 0xce, 0x63, 0x8e, 0x24, 0x23, 0xeb, 0x62, 0x1c, 0x37, 0x58, 0x86, 0xbe, - 0x2d, 0x18, 0x2f, 0x36, 0x0c, 0x6c, 0x33, 0x06, 0x2e, 0x79, 0x1b, 0x06, 0x6a, 0xd2, 0x49, 0x6a, - 0x32, 0x91, 0xd2, 0x56, 0x50, 0xb0, 0x72, 0x1b, 0xb1, 0xd8, 0x9e, 0xb3, 0x44, 0xc3, 0x06, 0xf5, - 0x30, 0xf7, 0x30, 0x3f, 0xec, 0x6b, 0x90, 0x38, 0xec, 0xd1, 0x40, 0x5e, 0xd8, 0xa3, 0x41, 0x33, - 0xec, 0x91, 0xf5, 0x94, 0x67, 0x48, 0x4a, 0x76, 0x48, 0x0c, 0xd2, 0x27, 0xa9, 0x54, 0xc5, 0x7c, - 0x1f, 0x38, 0x97, 0xd5, 0xb3, 0xdd, 0xbb, 0xa9, 0x2c, 0xc4, 0xf9, 0x71, 0x7a, 0xb7, 0xe0, 0x35, - 0x03, 0xb7, 0xda, 0x6a, 0xf9, 0xcf, 0x68, 0x73, 0x2b, 0xf0, 0x0f, 0xfd, 0xc8, 0xc8, 0x10, 0x23, - 0x72, 0x75, 0xc7, 0xd7, 0x28, 0x62, 0x56, 0x26, 0xc0, 0xd6, 0xff, 0x04, 0xaf, 0xf7, 0xe0, 0x28, - 0x3a, 0x55, 0x83, 0xb3, 0x4e, 0xa2, 0x4c, 0x7a, 0xbb, 0xbc, 0x9e, 0xd5, 0xaf, 0x24, 0xa3, 0xd0, - 0x4e, 0xd3, 0xdf, 0xd8, 0x36, 0xd2, 0xfb, 0x92, 0x32, 0x4c, 0x6f, 0xd9, 0x9b, 0x4b, 0x3b, 0x8b, - 0xdb, 0xf5, 0xed, 0x2f, 0xb7, 0x96, 0xeb, 0x3b, 0x1b, 0x0f, 0x37, 0x36, 0x1f, 0x6d, 0xf0, 0x40, - 0xd7, 0x46, 0xc9, 0xf6, 0x72, 0x75, 0xbd, 0x54, 0x20, 0xd3, 0x50, 0x32, 0xc0, 0xcb, 0x3b, 0x0b, - 0xa5, 0xe2, 0x8d, 0x6f, 0x8c, 0xb4, 0xb5, 0xe4, 0x22, 0x94, 0x6b, 0x3b, 0x5b, 0x5b, 0x9b, 0xb6, - 0xe2, 0xaa, 0x87, 0xd9, 0x9e, 0x81, 0xb3, 0x46, 0xe9, 0x3d, 0x7b, 0x79, 0xb9, 0x54, 0x60, 0x4d, - 0x31, 0xc0, 0x5b, 0xf6, 0xf2, 0xfa, 0xea, 0xce, 0x7a, 0xa9, 0x78, 0xa3, 0xae, 0x3f, 0x13, 0x23, - 0x17, 0x60, 0x76, 0x69, 0x79, 0x77, 0x75, 0x71, 0x39, 0x8b, 0xf7, 0x34, 0x94, 0xf4, 0xc2, 0xed, - 0xcd, 0xed, 0x2d, 0xce, 0x5a, 0x87, 0x3e, 0x5a, 0x5e, 0xa8, 0xee, 0x6c, 0xaf, 0x6c, 0x94, 0xfa, - 0xad, 0x81, 0x91, 0x62, 0xa9, 0x78, 0xe3, 0xc7, 0xc6, 0x1b, 0x32, 0xd6, 0x7c, 0x81, 0xbe, 0x53, - 0xab, 0xde, 0xcf, 0xaf, 0x82, 0x97, 0xae, 0xdf, 0xab, 0x96, 0x0a, 0xe4, 0x12, 0x9c, 0x37, 0xa0, - 0x5b, 0xd5, 0x5a, 0xed, 0xd1, 0xa6, 0xbd, 0xb4, 0xb6, 0x5c, 0xab, 0x95, 0x8a, 0x37, 0x76, 0x8d, - 0x50, 0x6f, 0xac, 0x86, 0xf5, 0x7b, 0xd5, 0xba, 0xbd, 0xfc, 0xf9, 0xce, 0xaa, 0xbd, 0xbc, 0x94, - 0xae, 0xc1, 0x28, 0xfd, 0x72, 0xb9, 0x56, 0x2a, 0x90, 0x29, 0x38, 0x63, 0x40, 0x37, 0x36, 0x4b, - 0xc5, 0x1b, 0x6f, 0x88, 0x68, 0x60, 0x64, 0x12, 0x60, 0x69, 0xb9, 0xb6, 0xb8, 0xbc, 0xb1, 0xb4, - 0xba, 0x71, 0xbf, 0xd4, 0x47, 0x26, 0x60, 0xb4, 0xaa, 0x7e, 0x16, 0x6e, 0x7c, 0x08, 0x67, 0x12, - 0x27, 0x6a, 0x86, 0xa1, 0x0e, 0xa3, 0xa5, 0x3e, 0x14, 0xbf, 0xfc, 0x89, 0x66, 0x4d, 0x7e, 0x38, - 0x2e, 0x15, 0x6e, 0x2c, 0xc8, 0x34, 0xaa, 0xda, 0x77, 0x4e, 0xc6, 0x60, 0x78, 0x69, 0xf9, 0x5e, - 0x75, 0x67, 0x6d, 0xbb, 0xd4, 0xc7, 0x7e, 0x2c, 0xda, 0xcb, 0xd5, 0xed, 0xe5, 0xa5, 0x52, 0x81, - 0x8c, 0xc2, 0x60, 0x6d, 0xbb, 0xba, 0xbd, 0x5c, 0x2a, 0x92, 0x11, 0x18, 0xd8, 0xa9, 0x2d, 0xdb, - 0xa5, 0xfe, 0xf9, 0x7f, 0xfe, 0x47, 0x05, 0x6e, 0xdb, 0x93, 0xef, 0x91, 0xbe, 0xd1, 0x0e, 0x93, - 0x62, 0xc9, 0x13, 0x39, 0x23, 0x73, 0x4f, 0x8e, 0xa8, 0x05, 0xcc, 0x75, 0xb9, 0xec, 0x40, 0x84, - 0xeb, 0x85, 0xdb, 0x05, 0x62, 0xa3, 0x73, 0x48, 0xe2, 0x6c, 0xa5, 0x38, 0x67, 0x1f, 0x7f, 0xe7, - 0x2e, 0x75, 0x3d, 0x92, 0x91, 0xdf, 0x00, 0x4b, 0xe7, 0x99, 0x73, 0x02, 0xf9, 0xfe, 0xc9, 0x4e, - 0x1a, 0xb2, 0xce, 0x37, 0x4e, 0x86, 0x4e, 0x1e, 0xc0, 0x04, 0xd3, 0xcd, 0x15, 0x1a, 0xb9, 0x90, - 0x24, 0xd4, 0x8e, 0x03, 0x73, 0x17, 0xb3, 0x0b, 0x55, 0x5a, 0x97, 0x71, 0xec, 0x08, 0x3f, 0x58, - 0x87, 0x44, 0x46, 0x8c, 0x90, 0x10, 0xbe, 0xe2, 0xcf, 0x9d, 0x4d, 0x80, 0x77, 0xef, 0xdc, 0x2e, - 0x90, 0x1a, 0x86, 0x6b, 0x33, 0x94, 0x7c, 0x22, 0x1f, 0xc8, 0xa5, 0xb5, 0x7f, 0xde, 0x9a, 0x8a, - 0x4a, 0xc2, 0x98, 0x73, 0x3a, 0xd8, 0x00, 0x92, 0xd6, 0x9d, 0xc9, 0x95, 0x78, 0x1e, 0x64, 0xab, - 0xd5, 0x73, 0xe7, 0x52, 0x3e, 0x7f, 0xcb, 0x4c, 0x7b, 0x22, 0xcb, 0x30, 0x29, 0x9e, 0x83, 0x0b, - 0x6d, 0x9e, 0x74, 0x3b, 0x0f, 0xe4, 0xb2, 0xb9, 0x8f, 0x72, 0x52, 0x27, 0x02, 0x32, 0x17, 0xf7, - 0x23, 0x79, 0x4c, 0x98, 0xbb, 0x90, 0x59, 0x26, 0xfa, 0x77, 0x0f, 0x26, 0xcd, 0xc3, 0x05, 0x91, - 0x03, 0x94, 0x79, 0xe6, 0xc8, 0x6d, 0x50, 0x1d, 0x66, 0xd7, 0x1d, 0x17, 0xaf, 0x28, 0x84, 0x67, - 0x99, 0xf4, 0x0b, 0x23, 0x95, 0x2e, 0x8e, 0x62, 0x35, 0xea, 0x35, 0xd5, 0x20, 0xe4, 0x85, 0x68, - 0xc7, 0xcf, 0xa6, 0x26, 0x75, 0x64, 0xd3, 0xaf, 0x8e, 0x58, 0x66, 0x62, 0xdd, 0x2c, 0x57, 0xc9, - 0xb9, 0x3c, 0xef, 0x5e, 0xb2, 0x8e, 0x4a, 0x7a, 0x82, 0xa3, 0x36, 0x27, 0x4e, 0xcd, 0xae, 0x8c, - 0x41, 0x09, 0xb4, 0x84, 0xe4, 0xa2, 0x30, 0x24, 0x39, 0x82, 0xcb, 0x65, 0x76, 0xbb, 0x40, 0xbe, - 0xc1, 0xaf, 0x3a, 0x93, 0xdd, 0x23, 0x37, 0x3a, 0x10, 0xda, 0xcf, 0x85, 0x4c, 0x06, 0xe2, 0x43, - 0xe9, 0xc2, 0xdd, 0x86, 0xe9, 0x2c, 0x87, 0x62, 0x25, 0xd0, 0x2e, 0xde, 0xc6, 0xb9, 0xb3, 0xc0, - 0x66, 0x47, 0x8d, 0x66, 0xfe, 0x20, 0x75, 0xf1, 0x67, 0xcd, 0xe5, 0xf9, 0x31, 0x4c, 0xb2, 0x59, - 0xf2, 0x90, 0xd2, 0x76, 0xb5, 0xe5, 0x3e, 0xa5, 0x21, 0x91, 0xb1, 0x76, 0x15, 0x28, 0x8f, 0xf6, - 0x7a, 0x81, 0x7c, 0x0f, 0xc6, 0x1e, 0x39, 0x51, 0xe3, 0x40, 0xc4, 0x9c, 0x94, 0x21, 0x29, 0x11, - 0x36, 0x27, 0x7f, 0x61, 0xe1, 0xed, 0x02, 0xf9, 0x21, 0x0c, 0xdf, 0xa7, 0x11, 0x3e, 0x50, 0xbe, - 0xaa, 0x7c, 0xeb, 0xb8, 0x6d, 0x72, 0xd5, 0x53, 0x2f, 0x67, 0x64, 0x83, 0x93, 0x06, 0x54, 0x72, - 0x0b, 0x80, 0x2f, 0x08, 0xc8, 0x21, 0x59, 0x3c, 0x97, 0x6a, 0x36, 0xb9, 0xcf, 0x94, 0x87, 0x16, - 0x8d, 0xe8, 0x49, 0xab, 0xcc, 0x93, 0xd1, 0x1a, 0x4c, 0xaa, 0x4c, 0x38, 0x1b, 0x18, 0x1a, 0xc4, - 0x4a, 0x30, 0x0b, 0x4f, 0xc1, 0xed, 0x43, 0xf6, 0x55, 0xf0, 0x34, 0xb0, 0x18, 0x43, 0x02, 0x57, - 0xd2, 0x59, 0x3d, 0x10, 0x85, 0xbe, 0x84, 0x4a, 0x21, 0x72, 0x34, 0x8d, 0x76, 0xc5, 0x0f, 0x23, - 0x93, 0x56, 0x41, 0xb2, 0x69, 0x7f, 0x1d, 0xe6, 0xf4, 0x7a, 0xcd, 0xa0, 0xc7, 0xf1, 0x9a, 0x9b, - 0x17, 0x4b, 0x79, 0xee, 0x6a, 0x17, 0x0c, 0x71, 0x7e, 0xeb, 0xff, 0xdd, 0x62, 0x01, 0x97, 0x93, - 0x25, 0x98, 0x92, 0x75, 0x6d, 0xb6, 0xa9, 0x57, 0xab, 0xad, 0x60, 0xd6, 0x13, 0xe9, 0xc9, 0xa1, - 0xc1, 0x24, 0x77, 0x92, 0x2e, 0x62, 0x5b, 0x9f, 0x11, 0x2b, 0x82, 0x74, 0x8b, 0x20, 0x11, 0x6f, - 0x7d, 0x99, 0xd1, 0x78, 0x1f, 0x72, 0xa3, 0x92, 0xa1, 0xfc, 0xef, 0xce, 0x93, 0x2e, 0x07, 0xa0, - 0xb9, 0x9c, 0x23, 0xc4, 0xed, 0x02, 0xf9, 0x12, 0x48, 0xfa, 0x48, 0xa2, 0x44, 0x98, 0x7b, 0xfc, - 0x52, 0x22, 0xec, 0x72, 0x9e, 0x59, 0x86, 0x29, 0x15, 0x29, 0x26, 0x2e, 0x27, 0x39, 0x6d, 0xe9, - 0xb2, 0x83, 0xcd, 0x64, 0xb0, 0xd9, 0x9d, 0xef, 0xc2, 0x28, 0x13, 0x4e, 0x3e, 0x85, 0x29, 0x31, - 0xf7, 0x8d, 0xf6, 0x94, 0xd4, 0x32, 0x26, 0x0e, 0x37, 0xb9, 0x2d, 0x79, 0x00, 0x33, 0xb5, 0x84, - 0xe0, 0xb9, 0x1f, 0xfb, 0x79, 0x93, 0x05, 0x02, 0x6b, 0x34, 0xe2, 0x92, 0xcf, 0xe6, 0xf5, 0x10, - 0x08, 0xb7, 0x2d, 0x49, 0x76, 0x4f, 0x5d, 0xfa, 0x8c, 0x5c, 0x4a, 0x34, 0x9d, 0x01, 0x11, 0x0d, - 0xd7, 0xc1, 0xdc, 0x9e, 0x6d, 0xf3, 0x5c, 0xc8, 0x08, 0x35, 0x6e, 0xc0, 0xaf, 0x18, 0x04, 0xc6, - 0x25, 0xba, 0x18, 0xc7, 0xf3, 0xb9, 0x18, 0xe4, 0xb7, 0x30, 0xd2, 0x6b, 0xf7, 0xd3, 0x19, 0xf9, - 0x5e, 0xd6, 0x21, 0x3a, 0xe7, 0x7c, 0x39, 0xf7, 0xf6, 0xc9, 0x90, 0xd5, 0x79, 0x78, 0xe2, 0x3e, - 0x8d, 0xb6, 0x5a, 0x9d, 0x7d, 0x17, 0xb3, 0x64, 0x12, 0x65, 0x7b, 0x52, 0x20, 0x31, 0xbd, 0x65, - 0x80, 0xb5, 0xb8, 0xa0, 0x46, 0x7f, 0x42, 0x56, 0xa1, 0xc4, 0xb7, 0x11, 0x8d, 0xc5, 0xa5, 0x14, - 0x0b, 0x81, 0xe2, 0x04, 0xce, 0x61, 0x98, 0x3b, 0x5a, 0xb7, 0xb8, 0xcb, 0x11, 0x91, 0x9f, 0xb6, - 0xae, 0xa7, 0x4e, 0x19, 0x30, 0x15, 0xfd, 0x9e, 0x8d, 0x88, 0x4d, 0x43, 0x1a, 0xc9, 0x90, 0x32, - 0x3c, 0x47, 0xea, 0xb5, 0x58, 0x67, 0x48, 0x97, 0xc6, 0x2b, 0x48, 0x22, 0xfc, 0xd9, 0xee, 0x5d, - 0xa2, 0xf2, 0xc6, 0x66, 0x30, 0x7d, 0xc3, 0x50, 0x6d, 0x4e, 0xc7, 0xf7, 0x1d, 0xdc, 0xca, 0x30, - 0x8c, 0xce, 0x4c, 0xdc, 0x36, 0xf6, 0x5b, 0x52, 0x4d, 0x68, 0x54, 0xbb, 0xf3, 0xb8, 0x32, 0xb2, - 0xbd, 0x96, 0x69, 0xc2, 0x9d, 0x20, 0xa0, 0x1e, 0x27, 0xce, 0x53, 0x5b, 0xb2, 0xa8, 0x3f, 0xc1, - 0x15, 0x4c, 0xa3, 0xe6, 0xcf, 0xed, 0x7a, 0xb1, 0xe0, 0x39, 0x7d, 0x6e, 0x17, 0xc8, 0xfb, 0x30, - 0x22, 0xda, 0xc8, 0x88, 0x8c, 0x46, 0x87, 0x5d, 0x5a, 0x8d, 0x94, 0xc0, 0x85, 0x84, 0x6d, 0x36, - 0x71, 0xf2, 0x46, 0x9f, 0xb7, 0xf9, 0x7d, 0xb6, 0x67, 0x37, 0x5f, 0x84, 0x72, 0x51, 0x6e, 0xde, - 0x48, 0x59, 0x56, 0x51, 0x5d, 0x24, 0xa8, 0xc7, 0x2e, 0xcb, 0x99, 0x30, 0xf5, 0x1b, 0xe3, 0x17, - 0xaa, 0x30, 0x64, 0x4a, 0xfd, 0x36, 0xc0, 0xbd, 0xb6, 0xec, 0x55, 0x28, 0x55, 0x1b, 0xb8, 0xa1, - 0xd4, 0xe8, 0xa1, 0xd3, 0x3e, 0xf0, 0x03, 0xaa, 0xce, 0x3e, 0xc9, 0x02, 0xc9, 0x6b, 0x46, 0x29, - 0x28, 0xa2, 0x60, 0x8d, 0x3a, 0x18, 0xe4, 0x79, 0x56, 0x69, 0x28, 0x89, 0xa2, 0x6c, 0x8a, 0x2e, - 0x67, 0x9d, 0xe9, 0x45, 0x76, 0x3a, 0x6b, 0xbd, 0x1c, 0x9b, 0x0f, 0x71, 0xc1, 0x50, 0xc8, 0xa1, - 0xda, 0x21, 0x14, 0x48, 0x9d, 0x0a, 0xe5, 0xcb, 0x1b, 0x85, 0x5a, 0x95, 0x57, 0xcf, 0xb1, 0x58, - 0xf2, 0xa8, 0xf3, 0xaa, 0xff, 0x01, 0x4c, 0x2e, 0xb3, 0x05, 0xbd, 0xd3, 0x74, 0x79, 0x60, 0x7b, - 0x62, 0x46, 0x2a, 0xcf, 0x25, 0x5c, 0x91, 0x69, 0xb4, 0x90, 0x54, 0x58, 0x10, 0xe4, 0x9e, 0xa2, - 0xc1, 0xe4, 0x78, 0x4c, 0x4b, 0xb6, 0x22, 0xb7, 0x00, 0x9e, 0xf0, 0x85, 0xc9, 0x60, 0x96, 0x2b, - 0x96, 0xd5, 0x76, 0xbb, 0x25, 0x2d, 0xdb, 0xfc, 0xa6, 0xfe, 0x75, 0xe3, 0x24, 0x9a, 0x2a, 0x97, - 0xbc, 0xd3, 0xba, 0xe7, 0x17, 0x5a, 0x5a, 0xdb, 0x1c, 0x9e, 0x39, 0xe5, 0xbd, 0xe6, 0xa2, 0x0a, - 0x45, 0x5d, 0x6d, 0xb5, 0x52, 0xc4, 0x21, 0x79, 0xcb, 0xe4, 0x9e, 0x85, 0xd3, 0xab, 0x06, 0x3c, - 0xe9, 0x73, 0xe5, 0xad, 0xda, 0x6e, 0xf3, 0xc5, 0xf2, 0xb2, 0x5a, 0x30, 0xcc, 0x82, 0xf4, 0x49, - 0x3f, 0x59, 0x2e, 0xd6, 0xf6, 0x07, 0x38, 0xcd, 0xe2, 0xdc, 0xb7, 0x44, 0x3f, 0x37, 0x27, 0x53, - 0xff, 0x2a, 0x5d, 0x2e, 0x51, 0xa8, 0xf6, 0x89, 0x33, 0xa8, 0x41, 0xc5, 0x89, 0x74, 0x95, 0x81, - 0x27, 0x01, 0x97, 0xfc, 0x2e, 0xe7, 0x15, 0x2b, 0x83, 0x6b, 0x29, 0x99, 0x5f, 0x5c, 0x75, 0x39, - 0x27, 0x6f, 0xbd, 0xea, 0x72, 0x6e, 0x62, 0xf2, 0x07, 0x50, 0x4a, 0xa6, 0x36, 0x56, 0x4c, 0x73, - 0x72, 0x1e, 0xe7, 0x8e, 0xc9, 0x3d, 0x98, 0xd6, 0x47, 0x54, 0xf5, 0x3b, 0x6f, 0xf5, 0xcf, 0xe3, - 0xb3, 0x0d, 0x33, 0x99, 0x99, 0x88, 0xd5, 0x16, 0xdb, 0x2d, 0x4f, 0x71, 0x2e, 0x57, 0x0a, 0xe7, - 0xb2, 0x93, 0x91, 0x93, 0xd7, 0x4c, 0xfb, 0x41, 0x76, 0x6a, 0xe6, 0xb9, 0xd7, 0x7b, 0x60, 0x09, - 0x81, 0x7e, 0x83, 0x3b, 0x60, 0xaa, 0x8e, 0xab, 0x9a, 0x45, 0x21, 0xa7, 0x02, 0xab, 0x1b, 0x8a, - 0x9a, 0x03, 0xd3, 0x19, 0xc5, 0xf9, 0x22, 0xbe, 0x96, 0xcf, 0x33, 0x9e, 0x58, 0xbb, 0x32, 0xe2, - 0x72, 0xae, 0x64, 0xba, 0x26, 0xad, 0xee, 0x72, 0x24, 0x9d, 0x53, 0xf3, 0xe1, 0xe4, 0x4d, 0xce, - 0xe3, 0xd6, 0x54, 0xd6, 0x1f, 0x23, 0xa3, 0x74, 0xd2, 0xfa, 0x93, 0x95, 0x09, 0x5b, 0x89, 0xa1, - 0x5b, 0xae, 0x75, 0xbe, 0x1b, 0x7f, 0xcd, 0xcd, 0x41, 0x66, 0x15, 0xba, 0x39, 0x28, 0x93, 0xff, - 0x95, 0x7c, 0x04, 0x9d, 0xb9, 0xc3, 0xef, 0x7e, 0x13, 0x29, 0xb1, 0x89, 0x7e, 0xe2, 0xca, 0x4e, - 0x97, 0xad, 0xe6, 0x46, 0x26, 0x8a, 0x5e, 0xc5, 0x23, 0xf9, 0x0d, 0xe6, 0x48, 0xa9, 0x4b, 0xbe, - 0xf0, 0xee, 0x6a, 0xca, 0x26, 0x94, 0xe3, 0xc1, 0x4c, 0x74, 0xe0, 0x94, 0x43, 0x29, 0x85, 0x71, - 0x3e, 0x37, 0x4b, 0x38, 0x79, 0x33, 0xf5, 0xa5, 0xe7, 0x08, 0xa6, 0x6b, 0x15, 0x7c, 0x3d, 0xd7, - 0x22, 0x38, 0x5f, 0x88, 0x6d, 0xc1, 0x7a, 0x42, 0xf1, 0xd4, 0x7a, 0x9e, 0x91, 0x6d, 0xfc, 0x3e, - 0xea, 0xc5, 0x5a, 0xc6, 0xf0, 0xdc, 0x5e, 0x5f, 0xca, 0xe2, 0x13, 0xa6, 0x57, 0x5c, 0xad, 0x5d, - 0x52, 0x4f, 0x4b, 0x16, 0x9c, 0x66, 0xc5, 0x3d, 0x49, 0xd3, 0xf2, 0xf8, 0x2c, 0xc1, 0x98, 0x96, - 0x6a, 0x9c, 0x9c, 0x37, 0xc4, 0x64, 0xec, 0xa1, 0x73, 0x46, 0xe7, 0xcc, 0xed, 0x73, 0x11, 0x2d, - 0xd2, 0x2a, 0x61, 0x79, 0x6e, 0x2b, 0x2e, 0xa4, 0x79, 0x18, 0xd6, 0x68, 0x25, 0x05, 0xde, 0x9a, - 0x8b, 0x49, 0xe1, 0x18, 0x0d, 0xca, 0xef, 0x12, 0xd1, 0x45, 0xd3, 0xa3, 0x49, 0xf9, 0xfa, 0xeb, - 0x94, 0xc8, 0x67, 0x8a, 0x69, 0x57, 0x64, 0xf4, 0xbf, 0x73, 0xca, 0xb4, 0xa6, 0x41, 0xbb, 0x58, - 0x3a, 0xb6, 0xf0, 0xe1, 0x47, 0x46, 0xee, 0x75, 0xb5, 0xc2, 0x76, 0x4d, 0xcd, 0x9e, 0xa1, 0xbb, - 0xa9, 0x35, 0x3b, 0x97, 0x63, 0xd7, 0x64, 0xec, 0xb9, 0x2d, 0xfd, 0x91, 0xb6, 0x66, 0xa7, 0x32, - 0xac, 0x93, 0xeb, 0x49, 0xc5, 0x2d, 0x2f, 0x09, 0x7b, 0x97, 0x3d, 0x61, 0x3a, 0x2b, 0x39, 0xbb, - 0x66, 0x1e, 0xce, 0xcd, 0xdc, 0x9e, 0x21, 0x05, 0x5b, 0xce, 0xff, 0x1c, 0x6e, 0x5d, 0x52, 0xb5, - 0xe7, 0xb6, 0xf0, 0x2b, 0x6d, 0xa1, 0x4b, 0xa4, 0x54, 0x57, 0xc7, 0xf1, 0x1e, 0x39, 0xd7, 0x73, - 0x79, 0x6f, 0xe0, 0x53, 0xa1, 0x74, 0x3e, 0x74, 0xa5, 0xd9, 0x74, 0xcb, 0x96, 0x9e, 0x69, 0x3d, - 0x9e, 0x49, 0x77, 0x91, 0xf1, 0x3b, 0x97, 0xb0, 0xfd, 0xf6, 0x6a, 0xd8, 0x37, 0x72, 0x31, 0xce, - 0xc8, 0xa3, 0x9e, 0x58, 0x8c, 0xf3, 0x33, 0xad, 0x77, 0x39, 0x06, 0x9d, 0xa9, 0xb9, 0xfb, 0x9e, - 0x96, 0x06, 0x5d, 0x1d, 0x82, 0xd2, 0x99, 0xd9, 0xd5, 0x12, 0x93, 0x95, 0x35, 0x7d, 0x93, 0xe9, - 0x3f, 0x5c, 0x7b, 0xd7, 0x13, 0x5a, 0x93, 0xb9, 0xfc, 0x3c, 0xde, 0x6a, 0xb9, 0xc9, 0xcc, 0x80, - 0xad, 0x31, 0xd4, 0xb3, 0x49, 0x2b, 0x86, 0x19, 0x89, 0xad, 0x15, 0xc3, 0xcc, 0xf4, 0xd3, 0xb7, - 0xd0, 0xea, 0x62, 0xfb, 0x2d, 0xaa, 0x5b, 0x5d, 0xb4, 0xf4, 0xc4, 0x09, 0xa3, 0x07, 0xf9, 0x08, - 0x4d, 0x1e, 0xdd, 0xed, 0x24, 0xb3, 0x26, 0x27, 0xdd, 0xb3, 0x64, 0x54, 0xe5, 0x7e, 0x56, 0x36, - 0xf6, 0x64, 0xfa, 0xe9, 0xb9, 0x72, 0xba, 0x40, 0xd0, 0xbf, 0x2b, 0xad, 0x26, 0xd8, 0xe0, 0xb2, - 0x69, 0x6d, 0xca, 0x6f, 0xf3, 0xbb, 0xd2, 0x64, 0x62, 0x90, 0xa5, 0x32, 0x3f, 0x27, 0xc9, 0x7e, - 0x00, 0xe3, 0x71, 0x96, 0xe7, 0xdd, 0x79, 0x8d, 0x30, 0x91, 0xfa, 0x39, 0x49, 0xf8, 0xbe, 0xbc, - 0x56, 0xc1, 0xfa, 0xcc, 0xc2, 0xee, 0x2a, 0xc0, 0x27, 0xd2, 0x44, 0x63, 0xb4, 0x34, 0x95, 0x33, - 0xba, 0xcb, 0xca, 0x3d, 0xae, 0xa7, 0xa6, 0x54, 0xf3, 0x22, 0x23, 0xb9, 0xac, 0x9a, 0x17, 0x59, - 0xc9, 0x61, 0xe3, 0x6b, 0x87, 0x2f, 0xa5, 0x3d, 0x22, 0x66, 0x7a, 0xc9, 0x68, 0x56, 0x8a, 0xef, - 0xe5, 0xbc, 0xe2, 0x24, 0xeb, 0x1a, 0x94, 0x92, 0x79, 0x34, 0xd5, 0x61, 0x2e, 0x27, 0xe1, 0xa9, - 0x3a, 0x21, 0xe6, 0x26, 0xe0, 0xdc, 0x92, 0xc6, 0x75, 0x93, 0xef, 0xd5, 0xec, 0x46, 0xe9, 0xac, - 0xf3, 0xad, 0xed, 0x13, 0x46, 0x4a, 0x4d, 0xfd, 0x98, 0x9d, 0x4a, 0xd9, 0xa9, 0xab, 0x65, 0x19, - 0x59, 0x38, 0x5d, 0x19, 0xec, 0x29, 0x3b, 0xb3, 0xf7, 0x5b, 0xe6, 0xf9, 0xb7, 0x4b, 0xfc, 0xf5, - 0x9e, 0x57, 0xd0, 0xe4, 0xd7, 0x60, 0x36, 0x27, 0x54, 0x35, 0x79, 0x3d, 0x61, 0xa6, 0xcd, 0x0e, - 0x65, 0xad, 0x26, 0x48, 0x66, 0xae, 0xeb, 0x75, 0xf4, 0x5d, 0x30, 0xc2, 0x3a, 0xa4, 0xee, 0x03, - 0x1f, 0xb9, 0xd1, 0x01, 0x4f, 0xe9, 0xac, 0xad, 0xb9, 0x99, 0xf1, 0x20, 0x48, 0x0d, 0x0f, 0x32, - 0x06, 0x34, 0xe3, 0x4a, 0x30, 0x83, 0xe1, 0x5c, 0x36, 0x43, 0xb6, 0x76, 0xb0, 0xb9, 0x90, 0x11, - 0x73, 0x43, 0xcd, 0x85, 0xfc, 0x78, 0x1c, 0xb9, 0xcd, 0xdc, 0x92, 0x0a, 0x56, 0x36, 0xc7, 0xfc, - 0xf0, 0x1b, 0xb9, 0x1c, 0x1f, 0x30, 0x8e, 0xa9, 0x88, 0x1a, 0x24, 0x07, 0xbd, 0xfb, 0xea, 0x61, - 0xcb, 0xfd, 0xda, 0xa4, 0x9a, 0xd7, 0xda, 0x97, 0x17, 0xbb, 0x23, 0xb7, 0x7d, 0xcb, 0xf2, 0x7b, - 0xca, 0x6e, 0xdf, 0x49, 0x77, 0x6c, 0x75, 0x79, 0x96, 0x08, 0xea, 0x62, 0x74, 0x54, 0x83, 0xcf, - 0xe5, 0xc0, 0xc9, 0x06, 0x3a, 0x23, 0x25, 0xa1, 0xda, 0x89, 0x36, 0x3b, 0x6a, 0x4c, 0x2e, 0x3f, - 0x3e, 0x8f, 0x8d, 0xa8, 0x1b, 0xa7, 0x99, 0xc7, 0x89, 0x70, 0x1d, 0x62, 0x1e, 0x1b, 0xd0, 0xd3, - 0xcd, 0xe3, 0x04, 0x43, 0x73, 0x1e, 0x27, 0x9b, 0x99, 0x34, 0x13, 0xe4, 0x8e, 0x6a, 0xb2, 0x99, - 0x6a, 0x1e, 0x67, 0x73, 0xcc, 0x8f, 0x8e, 0x92, 0xcb, 0x51, 0xcd, 0x63, 0x93, 0x63, 0x0e, 0xfa, - 0x09, 0xe7, 0x71, 0xb2, 0x12, 0x73, 0x1e, 0x9f, 0xaa, 0x7d, 0x6a, 0x1e, 0x67, 0xb7, 0xef, 0xd4, - 0xf3, 0x38, 0x11, 0x4e, 0xc8, 0xe8, 0x68, 0xd6, 0x3c, 0x4e, 0xe2, 0xf3, 0x79, 0x9c, 0x84, 0x26, - 0x2c, 0x33, 0x5d, 0xe6, 0x71, 0x92, 0xf2, 0x73, 0xe4, 0x97, 0x08, 0x85, 0x72, 0x92, 0x99, 0x9c, - 0x1b, 0x45, 0x85, 0x3c, 0x42, 0xdb, 0x60, 0x02, 0x7e, 0xb2, 0xd9, 0x7c, 0x31, 0x8f, 0x29, 0xce, - 0xe7, 0x5d, 0x29, 0xc4, 0x64, 0x73, 0x4d, 0xc3, 0x57, 0x76, 0x24, 0x98, 0x2e, 0x0d, 0xde, 0x65, - 0xf3, 0xa6, 0xd9, 0x85, 0x6f, 0xb7, 0x40, 0x36, 0x5d, 0xf8, 0xaa, 0x73, 0x50, 0x92, 0x6f, 0x2e, - 0x49, 0xf7, 0xf9, 0xfd, 0x85, 0xbc, 0x1d, 0x49, 0xd2, 0xcd, 0x27, 0x4e, 0x56, 0xa7, 0x6e, 0xa9, - 0x3a, 0x61, 0x25, 0x5b, 0x7a, 0xda, 0x79, 0xbe, 0x2e, 0xb5, 0x87, 0x54, 0x04, 0xac, 0x44, 0xa7, - 0xf5, 0xb9, 0x9e, 0x5b, 0x42, 0xb6, 0xd1, 0x10, 0x9c, 0x86, 0x6b, 0x46, 0xe4, 0xbc, 0x50, 0x5b, - 0x3d, 0xb9, 0xa6, 0x62, 0xf9, 0xe8, 0x5c, 0xf3, 0x02, 0xfd, 0x28, 0xae, 0x69, 0xea, 0x4f, 0xd1, - 0x74, 0x26, 0x5e, 0x7c, 0x79, 0x8f, 0xfd, 0xfc, 0x73, 0xce, 0x94, 0xe1, 0x30, 0xc5, 0x70, 0xd1, - 0x4f, 0xed, 0x63, 0x71, 0xfd, 0x27, 0x81, 0xb9, 0xc2, 0xcf, 0xa2, 0x27, 0x9f, 0x42, 0x49, 0x2c, - 0x6f, 0x31, 0x83, 0x2c, 0xc4, 0xdc, 0xa1, 0x5b, 0x90, 0x16, 0xbb, 0x13, 0xb4, 0xe0, 0x24, 0x96, - 0xba, 0x93, 0x48, 0x22, 0xdf, 0xac, 0xc5, 0xb6, 0xc3, 0xed, 0xa0, 0x13, 0x46, 0xb4, 0x99, 0x36, - 0x47, 0x99, 0x8d, 0x91, 0x6e, 0x15, 0x26, 0xfa, 0xee, 0x3c, 0x59, 0xc5, 0xb5, 0xcd, 0x04, 0x77, - 0xb3, 0xd7, 0x65, 0xb3, 0xc1, 0xa5, 0x67, 0x45, 0x3d, 0x2d, 0x32, 0xdb, 0x94, 0x57, 0x77, 0x7e, - 0xa3, 0x94, 0x88, 0x4e, 0xd8, 0xbb, 0x3c, 0x11, 0xf1, 0x03, 0x35, 0xb7, 0x1d, 0xf6, 0x92, 0x4c, - 0xf2, 0xb1, 0x13, 0xf9, 0x0c, 0x46, 0x25, 0x71, 0x6f, 0x81, 0x24, 0xa9, 0x51, 0x20, 0x4b, 0x30, - 0x61, 0xbc, 0xe4, 0x52, 0xa7, 0x9b, 0xac, 0xf7, 0x5d, 0x5d, 0xc6, 0x79, 0xc2, 0x78, 0xb1, 0xa5, - 0xb8, 0x64, 0xbd, 0xe3, 0xca, 0xe5, 0xf2, 0x43, 0x18, 0x13, 0x22, 0xed, 0x2a, 0x8d, 0x7c, 0x63, - 0xdd, 0x8c, 0xe6, 0x15, 0xdd, 0x69, 0xba, 0xd1, 0xa2, 0xef, 0x3d, 0x76, 0xf7, 0x7b, 0x0a, 0x26, - 0x4d, 0xb2, 0x3b, 0x4f, 0xbe, 0xc6, 0x04, 0xc8, 0x32, 0x2d, 0x35, 0x8d, 0x9e, 0xf9, 0xc1, 0x13, - 0xd7, 0xdb, 0xef, 0xc1, 0xf2, 0x8a, 0xc9, 0x32, 0x49, 0x27, 0x1d, 0x4f, 0xbe, 0x86, 0xb9, 0x5a, - 0x3e, 0xf3, 0x9e, 0x4c, 0xba, 0x6f, 0x2f, 0x35, 0xb8, 0x88, 0xae, 0x37, 0xa7, 0x6d, 0x7b, 0x57, - 0xa6, 0x5f, 0xf2, 0x20, 0x8a, 0xd2, 0xd0, 0xdf, 0xf0, 0x83, 0x66, 0x6f, 0x8e, 0x15, 0xd3, 0x99, - 0x37, 0x41, 0x26, 0x85, 0xf1, 0x25, 0x9c, 0xaf, 0xe5, 0xb2, 0xee, 0xc5, 0xa2, 0x97, 0x26, 0x79, - 0x01, 0x45, 0x71, 0xca, 0x76, 0x77, 0xe5, 0xb9, 0x8a, 0x6b, 0x1a, 0xdb, 0x87, 0xb6, 0x02, 0xfa, - 0x98, 0x06, 0xe8, 0x32, 0xde, 0xcb, 0x59, 0xda, 0x44, 0x97, 0x3d, 0x5f, 0x85, 0xb3, 0xb5, 0x14, - 0xab, 0x3c, 0x92, 0x5e, 0x97, 0x47, 0x53, 0xd8, 0xd3, 0x13, 0xb6, 0xab, 0x87, 0x8b, 0xd1, 0xd8, - 0x7d, 0x1a, 0xed, 0xac, 0xf6, 0x90, 0x92, 0x7c, 0xd3, 0x20, 0x11, 0x77, 0xef, 0x30, 0xca, 0x9a, - 0x46, 0x99, 0xc6, 0xc8, 0xfd, 0x78, 0x3f, 0x93, 0x17, 0x29, 0x3d, 0xab, 0xcd, 0xe3, 0x70, 0x17, - 0xd7, 0x42, 0xe1, 0x36, 0xad, 0x99, 0x20, 0x39, 0x24, 0x36, 0xd5, 0x69, 0x1e, 0xd4, 0x21, 0xa9, - 0xf2, 0xe3, 0x1f, 0x9f, 0x1e, 0x02, 0x76, 0x39, 0xe5, 0x4e, 0xdf, 0x95, 0x05, 0x37, 0xa1, 0xae, - 0xf9, 0x8d, 0x27, 0xba, 0x09, 0x55, 0x4b, 0x91, 0x3f, 0x67, 0x26, 0xb0, 0x17, 0x2b, 0x3e, 0x66, - 0xb1, 0xd7, 0xbd, 0xc6, 0xf4, 0x24, 0xf9, 0xba, 0x09, 0xd5, 0x4c, 0xe7, 0x7f, 0x57, 0xda, 0x16, - 0xb1, 0x42, 0x93, 0x73, 0xae, 0x68, 0x94, 0x59, 0x11, 0x89, 0x4c, 0xb3, 0xa2, 0xde, 0xd0, 0xfc, - 0x8b, 0x00, 0x92, 0xce, 0xe7, 0xaf, 0x0e, 0x2b, 0xb9, 0xa9, 0xfe, 0xbb, 0x38, 0x7f, 0x4d, 0x09, - 0x97, 0x21, 0x43, 0xf0, 0x2a, 0x10, 0x71, 0xba, 0x2c, 0x16, 0xa5, 0xee, 0xc9, 0x74, 0xbb, 0x40, - 0x36, 0xe0, 0xdc, 0x7d, 0x1a, 0x89, 0x35, 0xce, 0xa6, 0x61, 0x14, 0xb8, 0x8d, 0xa8, 0xeb, 0xad, - 0xa2, 0x3c, 0x9b, 0x64, 0xd0, 0xec, 0xbe, 0xc3, 0xf8, 0xd5, 0xb2, 0xf9, 0x75, 0xa5, 0xeb, 0xe2, - 0x5f, 0x2b, 0xae, 0x2a, 0x4e, 0xd3, 0xc4, 0xfc, 0x29, 0x3e, 0xcc, 0xdd, 0x77, 0xf2, 0x49, 0x4b, - 0x71, 0xd4, 0x13, 0x71, 0xda, 0xba, 0x09, 0x43, 0x9c, 0x28, 0x77, 0x43, 0x1d, 0xd7, 0x69, 0xc8, - 0x1d, 0x18, 0x55, 0xfe, 0x37, 0xc4, 0x28, 0xca, 0x6d, 0xd7, 0x1d, 0x18, 0xe5, 0x47, 0xab, 0x93, - 0x93, 0x7c, 0x04, 0xa3, 0xca, 0x61, 0xe7, 0xd4, 0x3b, 0xfd, 0xa7, 0x30, 0xa1, 0xbb, 0xee, 0x9c, - 0x5e, 0x90, 0x3f, 0xc4, 0xbb, 0x5f, 0x79, 0xc5, 0x92, 0x4f, 0x3f, 0x93, 0xc8, 0x1a, 0x26, 0x44, - 0xca, 0x17, 0x48, 0x09, 0xcc, 0x6d, 0xfe, 0xd9, 0x14, 0x35, 0xf9, 0x48, 0xbe, 0xa6, 0x52, 0xc4, - 0x69, 0xa4, 0x2e, 0x32, 0x9b, 0xe4, 0x62, 0x7e, 0x11, 0x62, 0xb5, 0xc0, 0xf6, 0x6c, 0xf6, 0x49, - 0xee, 0xa8, 0x7b, 0x8b, 0x2e, 0x8f, 0xcb, 0x26, 0x6a, 0x69, 0xa9, 0x7c, 0x76, 0xf9, 0x8c, 0x2e, - 0xe7, 0xa7, 0xc0, 0xc3, 0xc1, 0x78, 0x80, 0xa7, 0xc0, 0x54, 0x69, 0x6e, 0xf7, 0xba, 0xa4, 0xd4, - 0x8b, 0x8f, 0xbd, 0x69, 0x76, 0x5d, 0xc8, 0xba, 0x9d, 0xa2, 0xc5, 0x1b, 0xd1, 0x57, 0xc2, 0x6e, - 0x55, 0x7a, 0x40, 0x9e, 0xbc, 0xb3, 0xf9, 0x2d, 0xbb, 0x90, 0x71, 0x2b, 0xde, 0x73, 0x2c, 0xf2, - 0xd8, 0xfd, 0x1a, 0x6a, 0x87, 0x99, 0xc1, 0xc0, 0xf2, 0x99, 0x5d, 0xd7, 0x1c, 0x2b, 0x32, 0x29, - 0xd5, 0xa6, 0xf7, 0x04, 0x9f, 0xa9, 0x65, 0x67, 0xfc, 0x7b, 0xa3, 0x07, 0x17, 0x29, 0x89, 0x37, - 0x7b, 0xe2, 0xa9, 0x3b, 0xd6, 0x0b, 0x7c, 0x87, 0xcd, 0xae, 0xaf, 0x47, 0x06, 0xc3, 0x8c, 0x6b, - 0x6f, 0xe5, 0x5e, 0x9a, 0xcd, 0xd0, 0x74, 0x2f, 0xed, 0xda, 0x87, 0x3c, 0xf1, 0x7f, 0x0e, 0x95, - 0xd8, 0x7b, 0xe4, 0x74, 0x83, 0x90, 0xef, 0xd5, 0x48, 0x52, 0x92, 0x0a, 0x49, 0xb7, 0x34, 0x3c, - 0x73, 0x57, 0xf3, 0x24, 0x1c, 0x6a, 0x6e, 0x49, 0xc2, 0x2b, 0x2e, 0x91, 0xfb, 0x32, 0x2f, 0x8b, - 0x66, 0x17, 0x3b, 0xac, 0x78, 0xb7, 0xf7, 0x4a, 0x18, 0xa5, 0x47, 0xfb, 0xf4, 0x8c, 0x94, 0x73, - 0x47, 0x82, 0x91, 0xd5, 0x65, 0x78, 0x7b, 0x5f, 0x3d, 0x96, 0x73, 0xc6, 0xf5, 0xf4, 0x03, 0xea, - 0xc4, 0x6f, 0xd5, 0x12, 0xb1, 0x03, 0xf5, 0xf7, 0xc1, 0xe9, 0xa2, 0xe4, 0x43, 0xab, 0x2c, 0x0c, - 0xe5, 0x51, 0x55, 0x96, 0x55, 0x30, 0x38, 0x3b, 0x8a, 0xf8, 0x81, 0x1b, 0x3d, 0x5f, 0xb4, 0xd7, - 0x62, 0xb3, 0x82, 0x5e, 0x20, 0x79, 0x83, 0x2c, 0xb4, 0xd7, 0xc8, 0x57, 0xb8, 0x94, 0x08, 0xf6, - 0x0b, 0xbe, 0x1f, 0x85, 0x51, 0xe0, 0xb4, 0x6b, 0x8d, 0xc0, 0x6d, 0x47, 0xb9, 0x9d, 0x8e, 0x1d, - 0xc0, 0xb3, 0xc8, 0x34, 0x7f, 0x54, 0x11, 0x5b, 0x3e, 0x2b, 0xfa, 0x8e, 0x7a, 0x93, 0x93, 0x55, - 0xd8, 0xe5, 0xe4, 0x52, 0x93, 0xd1, 0xe4, 0x5f, 0x25, 0xd3, 0x3a, 0xcc, 0xe6, 0xc4, 0x2c, 0x52, - 0xb7, 0xb7, 0xdd, 0x63, 0x1a, 0xcd, 0x75, 0xaf, 0x98, 0x7c, 0x0d, 0x33, 0x99, 0x41, 0x8d, 0x94, - 0x05, 0xba, 0x5b, 0xc8, 0xa3, 0x5e, 0xcc, 0x9f, 0x40, 0x99, 0xbf, 0x06, 0x41, 0xa7, 0x67, 0x23, - 0xbe, 0x4d, 0xfc, 0x46, 0x28, 0x07, 0x21, 0xb9, 0x5e, 0xe7, 0xe3, 0xa9, 0x07, 0xef, 0xd3, 0x18, - 0xd8, 0x24, 0x91, 0x5a, 0x5d, 0x7d, 0x78, 0x59, 0x85, 0xdd, 0x1e, 0x22, 0x6d, 0xc1, 0xcc, 0x2e, - 0x0d, 0xdc, 0xc7, 0xcf, 0x93, 0x0c, 0xa5, 0x64, 0x32, 0x4b, 0xbb, 0x71, 0xfc, 0x02, 0x66, 0x17, - 0xfd, 0xc3, 0xb6, 0x78, 0xf2, 0x67, 0xf0, 0x54, 0x57, 0xf1, 0xd9, 0xe5, 0xbd, 0x1d, 0xa1, 0xe6, - 0xf2, 0x93, 0xe0, 0x2b, 0xff, 0xb7, 0x9e, 0x79, 0xf2, 0xd5, 0xc3, 0x35, 0x93, 0x7e, 0x1b, 0x27, - 0x61, 0x56, 0x56, 0x7c, 0x7d, 0x12, 0x76, 0xc9, 0x9a, 0x9f, 0xf3, 0x80, 0x6c, 0x36, 0x27, 0x11, - 0x7e, 0x17, 0xae, 0x27, 0x68, 0xed, 0x86, 0xdc, 0x5b, 0xcc, 0x94, 0xe1, 0x09, 0x8f, 0xeb, 0xcc, - 0x7c, 0xe2, 0x99, 0xed, 0xd4, 0x22, 0x3b, 0xb4, 0x5a, 0x5d, 0x54, 0x2c, 0xa2, 0x87, 0x76, 0x60, - 0x98, 0x68, 0xc4, 0x9f, 0xd0, 0x69, 0xbb, 0xad, 0xd6, 0x29, 0x62, 0x54, 0x6a, 0x3f, 0x84, 0xf1, - 0x9a, 0x5e, 0x79, 0x46, 0x25, 0xb9, 0x93, 0x42, 0x3d, 0x21, 0xea, 0xdd, 0xf6, 0x2e, 0x8e, 0xa4, - 0x6a, 0xe3, 0x39, 0x51, 0x2f, 0x72, 0x5d, 0x67, 0x8c, 0x9c, 0x6d, 0x6a, 0x17, 0xc8, 0x4a, 0xa9, - 0xa8, 0x5c, 0x67, 0xb2, 0xd3, 0xbc, 0xd5, 0x79, 0x96, 0x99, 0x64, 0xc6, 0x4c, 0x62, 0xf5, 0x4e, - 0x4d, 0xab, 0x1c, 0xea, 0xbb, 0xa6, 0xdc, 0xe4, 0x7e, 0x3e, 0x71, 0x96, 0x3a, 0xdd, 0xcf, 0x27, - 0x95, 0xfb, 0x4e, 0xf7, 0xf3, 0xc9, 0x48, 0x6c, 0xb7, 0x8c, 0xbc, 0xe2, 0xf4, 0x3c, 0x5d, 0x8c, - 0x11, 0x8a, 0x4d, 0x46, 0x16, 0xa0, 0x87, 0x7a, 0x80, 0x10, 0x9e, 0xd4, 0xa7, 0x8b, 0xad, 0x35, - 0x19, 0x18, 0x24, 0x91, 0x05, 0xe8, 0x1e, 0x94, 0x78, 0x7e, 0x83, 0x38, 0xa6, 0x62, 0xec, 0x37, - 0x98, 0x4e, 0xbb, 0xd0, 0x65, 0x50, 0x4b, 0xc9, 0x68, 0x74, 0xca, 0x64, 0x96, 0x13, 0xa6, 0xae, - 0xcb, 0x54, 0x85, 0x38, 0xe6, 0x9c, 0x32, 0x4c, 0xa5, 0xc2, 0xd0, 0xcd, 0x9d, 0xcf, 0x28, 0x51, - 0x2a, 0xe5, 0xb8, 0x1e, 0xa1, 0x4e, 0x75, 0x29, 0x23, 0x6c, 0xdd, 0xdc, 0x85, 0xcc, 0x32, 0xc1, - 0x28, 0xe2, 0xd9, 0x99, 0xb3, 0xf3, 0x53, 0xc7, 0xaf, 0xc0, 0xba, 0xe0, 0xc8, 0x6a, 0x6e, 0x9c, - 0x04, 0x55, 0xd4, 0x4a, 0x55, 0x72, 0xa2, 0x8c, 0xa4, 0xd8, 0x6f, 0x66, 0x3c, 0xd4, 0x30, 0x30, - 0x62, 0x6f, 0xb0, 0xee, 0x19, 0xba, 0xc9, 0x23, 0x99, 0x2c, 0x26, 0xa7, 0xa6, 0x5e, 0x0c, 0x72, - 0x47, 0xf0, 0x91, 0x4c, 0x0f, 0xf3, 0xaa, 0x19, 0xef, 0xc1, 0xc5, 0xc4, 0xeb, 0x0f, 0x93, 0xf1, - 0x8d, 0xec, 0x27, 0x22, 0x99, 0xe2, 0xc9, 0xd7, 0xd9, 0xaf, 0xa4, 0x5f, 0x89, 0x24, 0xc6, 0xfd, - 0xb4, 0x6b, 0xde, 0x3a, 0x4c, 0xe2, 0x32, 0x23, 0xd3, 0xbb, 0xc7, 0xf1, 0x69, 0x4c, 0x70, 0x32, - 0x50, 0x52, 0xb2, 0x54, 0xb9, 0xcc, 0x8e, 0x8b, 0x17, 0xc5, 0x3c, 0x59, 0xfc, 0x9c, 0xf9, 0xcc, - 0x18, 0x81, 0x59, 0xbb, 0x98, 0xc8, 0x41, 0x4f, 0x7e, 0x08, 0x67, 0xe2, 0x87, 0xc6, 0x9c, 0x45, - 0x06, 0x5a, 0x17, 0x43, 0xd9, 0x99, 0xf8, 0xb5, 0xf1, 0xe9, 0xc9, 0x57, 0xe4, 0x56, 0x14, 0x93, - 0x5f, 0x4a, 0xbd, 0x95, 0x31, 0xfa, 0x70, 0x92, 0x1d, 0x49, 0x93, 0xed, 0x69, 0x47, 0xa7, 0x81, - 0x9f, 0x5b, 0x76, 0xe8, 0x45, 0xfd, 0x73, 0xeb, 0x1a, 0x1e, 0x52, 0xa9, 0xbf, 0x39, 0x7c, 0xd6, - 0xe1, 0x1a, 0x86, 0x6b, 0xd9, 0xe2, 0x01, 0xfa, 0xb2, 0xb1, 0xf2, 0xdb, 0x9e, 0x0c, 0xf2, 0xd2, - 0x82, 0xab, 0x3d, 0x63, 0x4f, 0x92, 0x5b, 0x86, 0x8b, 0x4b, 0xef, 0x28, 0x95, 0x5d, 0x4e, 0x1e, - 0xd3, 0x59, 0x21, 0x1c, 0xd5, 0x3e, 0xdb, 0x25, 0x9a, 0xa4, 0xda, 0x67, 0xbb, 0xc6, 0x80, 0xfc, - 0x02, 0x33, 0x30, 0x89, 0x3d, 0x0a, 0x43, 0x30, 0x51, 0x8f, 0x07, 0xa5, 0xee, 0x7a, 0xed, 0x73, - 0xd5, 0xbc, 0x14, 0x4d, 0x11, 0xe2, 0x99, 0xe6, 0xb2, 0x38, 0x89, 0xe5, 0x31, 0xef, 0xcd, 0xa4, - 0x8b, 0x6b, 0xf5, 0x65, 0x3e, 0x01, 0x4f, 0xdd, 0xf2, 0x1c, 0xf8, 0xc2, 0xd2, 0xcf, 0xff, 0xfd, - 0xe5, 0xc2, 0xcf, 0x7f, 0x71, 0xb9, 0xf0, 0xaf, 0x7f, 0x71, 0xb9, 0xf0, 0xef, 0x7e, 0x71, 0xb9, - 0xf0, 0xd5, 0xfc, 0xc9, 0x42, 0x23, 0x37, 0x5a, 0x2e, 0xf5, 0xa2, 0x5b, 0x9c, 0xdd, 0x10, 0xfe, - 0x77, 0xf7, 0xbf, 0x07, 0x00, 0x00, 0xff, 0xff, 0x65, 0xf0, 0x6c, 0x6d, 0xf0, 0xe8, 0x00, 0x00, + // 14974 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x5b, 0x6c, 0x5c, 0xc9, + 0x76, 0x18, 0xca, 0xe6, 0x9b, 0x8b, 0x0f, 0xb5, 0x8a, 0xa4, 0xd8, 0xa2, 0x28, 0xb5, 0xb4, 0x35, + 0x0f, 0x8d, 0xce, 0x1c, 0x3d, 0xa8, 0x99, 0x39, 0xf3, 0x3a, 0x33, 0xd3, 0x7c, 0x88, 0xa4, 0xc4, + 0xd7, 0xec, 0x26, 0xa9, 0x79, 0xf9, 0xf4, 0xd9, 0xec, 0x2e, 0x91, 0xdb, 0x6a, 0xee, 0xdd, 0x67, + 0xef, 0xdd, 0xd2, 0xe8, 0xf8, 0xda, 0x17, 0x3e, 0xbe, 0x17, 0xd7, 0x3f, 0xd7, 0xd7, 0x06, 0xae, + 0x2f, 0x7c, 0xe1, 0x0f, 0xe3, 0x02, 0x37, 0x40, 0x10, 0x20, 0x81, 0x7f, 0x0c, 0x7f, 0xe5, 0x23, + 0xc8, 0x47, 0x4e, 0x0c, 0x18, 0x49, 0x60, 0xe7, 0x27, 0x1f, 0x74, 0x72, 0x80, 0xfc, 0x10, 0xc9, + 0x87, 0x11, 0x24, 0x40, 0x0e, 0x60, 0x20, 0xa8, 0x55, 0x8f, 0x5d, 0xb5, 0x1f, 0xdd, 0xa4, 0xa4, + 0x39, 0xce, 0x8f, 0xc4, 0x5e, 0xb5, 0xd6, 0xaa, 0xaa, 0x55, 0xb5, 0xab, 0x56, 0xad, 0x5a, 0xb5, + 0x16, 0xdc, 0x8a, 0x68, 0x93, 0xb6, 0xfc, 0x20, 0xba, 0xdd, 0xa4, 0x07, 0x4e, 0xfd, 0xf9, 0xed, + 0x7a, 0xd3, 0xa5, 0x5e, 0x74, 0xbb, 0x15, 0xf8, 0x91, 0x7f, 0xdb, 0x69, 0x47, 0x87, 0x21, 0x0d, + 0x9e, 0xba, 0x75, 0x7a, 0x0b, 0x21, 0x64, 0x00, 0xff, 0x9b, 0x9d, 0x3a, 0xf0, 0x0f, 0x7c, 0x8e, + 0xc3, 0xfe, 0xe2, 0x85, 0xb3, 0x97, 0x0e, 0x7c, 0xff, 0xa0, 0x49, 0x39, 0xf1, 0x7e, 0xfb, 0xf1, + 0x6d, 0x7a, 0xd4, 0x8a, 0x9e, 0x8b, 0xc2, 0x72, 0xb2, 0x30, 0x72, 0x8f, 0x68, 0x18, 0x39, 0x47, + 0x2d, 0x81, 0xf0, 0x96, 0x6a, 0x8a, 0x13, 0x45, 0xac, 0x24, 0x72, 0x7d, 0xef, 0xf6, 0xd3, 0xbb, + 0xfa, 0x4f, 0x81, 0x7a, 0xa3, 0x63, 0xab, 0xeb, 0x34, 0x88, 0xc2, 0x53, 0x61, 0xd2, 0xa7, 0xd4, + 0x8b, 0x52, 0xd5, 0x0b, 0xcc, 0xe8, 0x79, 0x8b, 0x86, 0x1c, 0x45, 0xfe, 0x27, 0x50, 0xaf, 0x65, + 0xa3, 0xe2, 0xbf, 0x02, 0xe5, 0xfb, 0xd9, 0x28, 0xcf, 0xe8, 0x3e, 0x93, 0xa9, 0xa7, 0xfe, 0xe8, + 0x82, 0x1e, 0x38, 0xad, 0x16, 0x0d, 0xe2, 0x3f, 0x04, 0xfa, 0x45, 0x85, 0x7e, 0xf4, 0xd8, 0x61, + 0x22, 0x3a, 0x7a, 0xec, 0xa4, 0xba, 0xd1, 0x0e, 0x9d, 0x03, 0x2a, 0x9a, 0xff, 0xf4, 0xae, 0xfe, + 0x93, 0xa3, 0x5a, 0x7f, 0x52, 0x80, 0x81, 0x47, 0x4e, 0x54, 0x3f, 0x24, 0x9f, 0xc2, 0xc0, 0x43, + 0xd7, 0x6b, 0x84, 0xa5, 0xc2, 0xd5, 0xbe, 0x1b, 0xa3, 0xf3, 0xc5, 0x5b, 0xbc, 0x2b, 0x58, 0xc8, + 0x0a, 0x16, 0x66, 0x7e, 0x7e, 0x5c, 0xee, 0x39, 0x39, 0x2e, 0x9f, 0x7b, 0xc2, 0xd0, 0xde, 0xf6, + 0x8f, 0xdc, 0x08, 0xc7, 0xd6, 0xe6, 0x74, 0x64, 0x17, 0x26, 0x2b, 0xcd, 0xa6, 0xff, 0x6c, 0xdb, + 0x09, 0x22, 0xd7, 0x69, 0x56, 0xdb, 0xf5, 0x3a, 0x0d, 0xc3, 0x52, 0xef, 0xd5, 0xc2, 0x8d, 0xe1, + 0x85, 0xeb, 0x27, 0xc7, 0xe5, 0xb2, 0xc3, 0x8a, 0x6b, 0x2d, 0x5e, 0x5e, 0x0b, 0x39, 0x82, 0xc6, + 0x28, 0x8b, 0xde, 0xfa, 0x8b, 0x41, 0x28, 0xae, 0xfa, 0x61, 0xb4, 0xc8, 0x46, 0xd4, 0xa6, 0x3f, + 0x69, 0xd3, 0x30, 0x22, 0xd7, 0x61, 0x90, 0xc1, 0xd6, 0x96, 0x4a, 0x85, 0xab, 0x85, 0x1b, 0x23, + 0x0b, 0xa3, 0x27, 0xc7, 0xe5, 0xa1, 0x43, 0x3f, 0x8c, 0x6a, 0x6e, 0xc3, 0x16, 0x45, 0xe4, 0x2d, + 0x18, 0xde, 0xf4, 0x1b, 0x74, 0xd3, 0x39, 0xa2, 0xd8, 0x8a, 0x91, 0x85, 0xf1, 0x93, 0xe3, 0xf2, + 0x88, 0xe7, 0x37, 0x68, 0xcd, 0x73, 0x8e, 0xa8, 0xad, 0x8a, 0xc9, 0x1e, 0xf4, 0xdb, 0x7e, 0x93, + 0x96, 0xfa, 0x10, 0x6d, 0xe1, 0xe4, 0xb8, 0xdc, 0x1f, 0xf8, 0x4d, 0xfa, 0xcb, 0xe3, 0xf2, 0x7b, + 0x07, 0x6e, 0x74, 0xd8, 0xde, 0xbf, 0x55, 0xf7, 0x8f, 0x6e, 0x1f, 0x04, 0xce, 0x53, 0x97, 0x4f, + 0x42, 0xa7, 0x79, 0x3b, 0x9e, 0xaa, 0x2d, 0x57, 0x8c, 0x7b, 0xf5, 0x79, 0x18, 0xd1, 0x23, 0xc6, + 0xc9, 0x46, 0x7e, 0xe4, 0x11, 0x4c, 0x55, 0x1a, 0x0d, 0x97, 0x53, 0x6c, 0x07, 0xae, 0x57, 0x77, + 0x5b, 0x4e, 0x33, 0x2c, 0xf5, 0x5f, 0xed, 0xbb, 0x31, 0x22, 0x84, 0xa2, 0xca, 0x6b, 0x2d, 0x85, + 0xa0, 0x09, 0x25, 0x93, 0x01, 0xb9, 0x07, 0xc3, 0x4b, 0x9b, 0x55, 0xd6, 0xf6, 0xb0, 0x34, 0x80, + 0xcc, 0x66, 0x4e, 0x8e, 0xcb, 0x93, 0x0d, 0x2f, 0xc4, 0xae, 0xe9, 0x0c, 0x14, 0x22, 0x79, 0x0f, + 0xc6, 0xb6, 0xdb, 0xfb, 0x4d, 0xb7, 0xbe, 0xb3, 0x5e, 0x7d, 0x48, 0x9f, 0x97, 0x06, 0xaf, 0x16, + 0x6e, 0x8c, 0x2d, 0x90, 0x93, 0xe3, 0xf2, 0x44, 0x0b, 0xe1, 0xb5, 0xa8, 0x19, 0xd6, 0x9e, 0xd0, + 0xe7, 0xb6, 0x81, 0x17, 0xd3, 0x55, 0xab, 0xab, 0x8c, 0x6e, 0x28, 0x45, 0x17, 0x86, 0x87, 0x3a, + 0x1d, 0xc7, 0x23, 0xb7, 0x01, 0x6c, 0x7a, 0xe4, 0x47, 0xb4, 0xd2, 0x68, 0x04, 0xa5, 0x61, 0x94, + 0xed, 0xb9, 0x93, 0xe3, 0xf2, 0x68, 0x80, 0xd0, 0x9a, 0xd3, 0x68, 0x04, 0xb6, 0x86, 0x42, 0x16, + 0x61, 0xd8, 0xf6, 0xb9, 0x80, 0x4b, 0x23, 0x57, 0x0b, 0x37, 0x46, 0xe7, 0xcf, 0x89, 0x69, 0x28, + 0xc1, 0x0b, 0x17, 0x4e, 0x8e, 0xcb, 0x24, 0x10, 0xbf, 0xf4, 0x5e, 0x4a, 0x0c, 0x52, 0x86, 0xa1, + 0x4d, 0x7f, 0xd1, 0xa9, 0x1f, 0xd2, 0x12, 0xe0, 0xdc, 0x1b, 0x38, 0x39, 0x2e, 0x17, 0xbe, 0x6f, + 0x4b, 0x28, 0x79, 0x0a, 0xa3, 0xf1, 0x40, 0x85, 0xa5, 0x51, 0x14, 0xdf, 0xce, 0xc9, 0x71, 0xf9, + 0x42, 0x88, 0xe0, 0x1a, 0x1b, 0x7a, 0x4d, 0x82, 0x2f, 0x31, 0x0b, 0xf4, 0x8a, 0xc8, 0x37, 0x30, + 0x1d, 0xff, 0xac, 0x84, 0x21, 0x0d, 0x18, 0x8f, 0xb5, 0xa5, 0xd2, 0x38, 0x4a, 0xe6, 0x8d, 0x93, + 0xe3, 0xb2, 0xa5, 0xb5, 0xa0, 0xe6, 0x48, 0x94, 0x9a, 0xdb, 0xd0, 0x7a, 0x9a, 0xcd, 0xe4, 0x41, + 0xff, 0xf0, 0x58, 0x71, 0xdc, 0xbe, 0xbc, 0xeb, 0x85, 0x91, 0xb3, 0xdf, 0xa4, 0x99, 0x48, 0xd6, + 0xdf, 0x15, 0x80, 0x6c, 0xb5, 0xa8, 0x57, 0xad, 0xae, 0xb2, 0xef, 0x49, 0x7e, 0x4e, 0x6f, 0xc3, + 0x08, 0x1f, 0x38, 0x36, 0xba, 0xbd, 0x38, 0xba, 0x13, 0x27, 0xc7, 0x65, 0x10, 0xa3, 0xcb, 0x46, + 0x36, 0x46, 0x20, 0xaf, 0x43, 0xdf, 0xce, 0xce, 0x3a, 0x7e, 0x2b, 0x7d, 0x0b, 0x93, 0x27, 0xc7, + 0xe5, 0xbe, 0x28, 0x6a, 0xfe, 0xf2, 0xb8, 0x3c, 0xbc, 0xd4, 0x0e, 0x50, 0x2c, 0x36, 0x2b, 0x27, + 0xaf, 0xc3, 0xd0, 0x62, 0xb3, 0x1d, 0x46, 0x34, 0x28, 0xf5, 0xc7, 0x1f, 0x69, 0x9d, 0x83, 0x6c, + 0x59, 0x46, 0xbe, 0x07, 0xfd, 0xbb, 0x21, 0x0d, 0x4a, 0x03, 0x38, 0xde, 0xe3, 0x62, 0xbc, 0x19, + 0x68, 0x6f, 0x7e, 0x61, 0x98, 0x7d, 0x89, 0xed, 0x90, 0x06, 0x36, 0x22, 0x91, 0x5b, 0x30, 0xc0, + 0x07, 0x6d, 0x10, 0x17, 0xa9, 0x71, 0x35, 0x3b, 0x9a, 0x74, 0xef, 0xbd, 0x85, 0x91, 0x93, 0xe3, + 0xf2, 0x00, 0x0e, 0x9e, 0xcd, 0xd1, 0x1e, 0xf4, 0x0f, 0x17, 0x8a, 0xbd, 0xf6, 0x30, 0xa3, 0x65, + 0x9f, 0x85, 0xf5, 0x3d, 0x18, 0xd5, 0xba, 0x4f, 0xe6, 0xa0, 0x9f, 0xfd, 0x8f, 0x8b, 0xc8, 0x18, + 0xaf, 0x8c, 0x6d, 0x1c, 0x36, 0x42, 0xad, 0x3f, 0x9e, 0x82, 0x22, 0xa3, 0x34, 0x56, 0x9e, 0x5b, + 0xba, 0xa8, 0x38, 0x5d, 0xd1, 0x14, 0x55, 0xa9, 0xa0, 0x0b, 0xeb, 0x06, 0xa8, 0xda, 0xc5, 0x22, + 0x34, 0x76, 0x72, 0x5c, 0x1e, 0x6e, 0x0b, 0x58, 0xdc, 0x36, 0x52, 0x85, 0xa1, 0xe5, 0x6f, 0x5b, + 0x6e, 0x40, 0x43, 0x14, 0xed, 0xe8, 0xfc, 0xec, 0x2d, 0xbe, 0x5d, 0xde, 0x92, 0xdb, 0xe5, 0xad, + 0x1d, 0xb9, 0x5d, 0x2e, 0x5c, 0x16, 0x8b, 0xf1, 0x79, 0xca, 0x49, 0xe2, 0xf9, 0xf1, 0xfb, 0x7f, + 0x53, 0x2e, 0xd8, 0x92, 0x13, 0x79, 0x1b, 0x06, 0xef, 0xfb, 0xc1, 0x91, 0x13, 0x89, 0x31, 0x98, + 0x3a, 0x39, 0x2e, 0x17, 0x1f, 0x23, 0x44, 0x9b, 0x52, 0x02, 0x87, 0xdc, 0x87, 0x09, 0xdb, 0x6f, + 0x47, 0x74, 0xc7, 0x97, 0x23, 0x37, 0x80, 0x54, 0x57, 0x4e, 0x8e, 0xcb, 0xb3, 0x01, 0x2b, 0xa9, + 0x45, 0x7e, 0x4d, 0x0c, 0xa1, 0x46, 0x9f, 0xa0, 0x22, 0xcb, 0x30, 0x51, 0xc1, 0xd5, 0x5b, 0x48, + 0x8d, 0x8f, 0xd7, 0xc8, 0xc2, 0xe5, 0x93, 0xe3, 0xf2, 0x45, 0x07, 0x4b, 0x6a, 0x81, 0x28, 0xd2, + 0xd9, 0x98, 0x44, 0x64, 0x13, 0xce, 0x3f, 0x6c, 0xef, 0xd3, 0xc0, 0xa3, 0x11, 0x0d, 0x65, 0x8b, + 0x86, 0xb0, 0x45, 0x57, 0x4f, 0x8e, 0xcb, 0x73, 0x4f, 0x54, 0x61, 0x46, 0x9b, 0xd2, 0xa4, 0x84, + 0xc2, 0x39, 0xd1, 0xd0, 0x25, 0x27, 0x72, 0xf6, 0x9d, 0x90, 0xe2, 0xa2, 0x34, 0x3a, 0x7f, 0x81, + 0x8b, 0xf8, 0x56, 0xa2, 0x74, 0xe1, 0xba, 0x90, 0xf2, 0x25, 0xd5, 0xf7, 0x86, 0x28, 0xd2, 0x2a, + 0x4a, 0xf2, 0x64, 0x6b, 0xb3, 0xda, 0x77, 0x46, 0xb0, 0xb5, 0xb8, 0x36, 0xab, 0x7d, 0x47, 0x5f, + 0xb5, 0xd4, 0x0e, 0xb4, 0x0e, 0x03, 0xbb, 0x6c, 0x77, 0xc6, 0x35, 0x6b, 0x62, 0xfe, 0x9a, 0x68, + 0x51, 0x72, 0xfe, 0xdd, 0x62, 0x3f, 0x10, 0x11, 0xbf, 0xbc, 0x73, 0xb8, 0xa3, 0xeb, 0x7b, 0x31, + 0x96, 0x91, 0xcf, 0x01, 0x44, 0xab, 0x2a, 0xad, 0x56, 0x69, 0x14, 0x3b, 0x79, 0xde, 0xec, 0x64, + 0xa5, 0xd5, 0x5a, 0xb8, 0x22, 0xfa, 0x77, 0x41, 0xf5, 0xcf, 0x69, 0xb5, 0x34, 0x6e, 0x1a, 0x13, + 0xf2, 0x29, 0x8c, 0xe1, 0x92, 0x26, 0x47, 0x74, 0x0c, 0x47, 0xf4, 0xd2, 0xc9, 0x71, 0x79, 0x06, + 0x57, 0xab, 0x8c, 0xf1, 0x34, 0x08, 0xc8, 0x6f, 0xc1, 0xb4, 0x60, 0xf7, 0xc8, 0xf5, 0x1a, 0xfe, + 0xb3, 0x70, 0x89, 0x86, 0x4f, 0x22, 0xbf, 0x85, 0xcb, 0xdf, 0xe8, 0xfc, 0x9c, 0xd9, 0x3c, 0x13, + 0x67, 0xe1, 0xa6, 0x68, 0xa9, 0xa5, 0x5a, 0xfa, 0x8c, 0x23, 0xd4, 0x1a, 0x1c, 0x43, 0x5f, 0x20, + 0x33, 0x59, 0x90, 0x35, 0x38, 0xb7, 0x1b, 0x52, 0xa3, 0x0f, 0x13, 0xb8, 0x3f, 0x94, 0xd9, 0x08, + 0xb7, 0x43, 0x5a, 0xcb, 0xeb, 0x47, 0x92, 0x8e, 0xd8, 0x40, 0x96, 0x02, 0xbf, 0x95, 0x98, 0xe3, + 0xe7, 0x50, 0x22, 0xd6, 0xc9, 0x71, 0xf9, 0x4a, 0x23, 0xf0, 0x5b, 0xb5, 0xfc, 0x89, 0x9e, 0x41, + 0x4d, 0x7e, 0x04, 0x17, 0x16, 0x7d, 0xcf, 0xa3, 0x75, 0xb6, 0x82, 0x2e, 0xb9, 0xce, 0x81, 0xe7, + 0x87, 0x91, 0x5b, 0x5f, 0x5b, 0x2a, 0x15, 0xe3, 0xed, 0xa1, 0xae, 0x30, 0x6a, 0x0d, 0x85, 0x62, + 0x6e, 0x0f, 0x39, 0x5c, 0xc8, 0xd7, 0x30, 0x2e, 0xea, 0xa2, 0x01, 0x4e, 0xcd, 0xf3, 0x9d, 0x27, + 0x9a, 0x42, 0xe6, 0x1b, 0x7d, 0x20, 0x7f, 0x72, 0xd5, 0xc9, 0xe4, 0x45, 0xbe, 0x81, 0xd1, 0x8d, + 0xfb, 0x15, 0x9b, 0x86, 0x2d, 0xdf, 0x0b, 0x69, 0x89, 0xe0, 0x88, 0x5e, 0x11, 0xac, 0x37, 0xee, + 0x57, 0x2a, 0xed, 0xe8, 0x90, 0x7a, 0x91, 0x5b, 0x77, 0x22, 0x2a, 0xb1, 0x16, 0x66, 0xd9, 0xcc, + 0x3b, 0x7a, 0xec, 0xd4, 0x02, 0x01, 0xd1, 0x7a, 0xa1, 0xb3, 0x23, 0xb3, 0x30, 0x5c, 0xad, 0xae, + 0xae, 0xfb, 0x07, 0xae, 0x57, 0x9a, 0x64, 0xc2, 0xb0, 0xd5, 0x6f, 0xf2, 0x18, 0xa6, 0xb5, 0xb3, + 0x41, 0x8d, 0xfd, 0x4f, 0x8f, 0xa8, 0x17, 0x95, 0xa6, 0xb0, 0x0d, 0xdf, 0x57, 0x87, 0x9b, 0x5b, + 0xfa, 0x11, 0xe2, 0xe9, 0xdd, 0x5b, 0x95, 0xf8, 0x67, 0x55, 0x12, 0x2d, 0xf4, 0x96, 0x0a, 0xf6, + 0x94, 0x93, 0x51, 0x42, 0x76, 0x60, 0x68, 0xbb, 0x1d, 0xb4, 0xfc, 0x90, 0x96, 0xa6, 0x51, 0x70, + 0xd7, 0x3b, 0x7d, 0xa1, 0x02, 0x75, 0x61, 0x9a, 0x2d, 0xd1, 0x2d, 0xfe, 0x43, 0xeb, 0x9d, 0x64, + 0x45, 0x3e, 0x83, 0xb1, 0x6a, 0x75, 0x35, 0xde, 0x50, 0x2e, 0xe0, 0x86, 0x32, 0x77, 0x72, 0x5c, + 0x2e, 0x31, 0x95, 0x2a, 0xde, 0x54, 0xf4, 0xaf, 0x4a, 0xa7, 0x60, 0x1c, 0x76, 0xd6, 0xab, 0x31, + 0x87, 0x99, 0x98, 0x03, 0x53, 0xe6, 0xb2, 0x39, 0xe8, 0x14, 0xe4, 0x1f, 0x17, 0xe0, 0xaa, 0xce, + 0x32, 0x4b, 0x30, 0xa5, 0x8b, 0x2f, 0x22, 0xcd, 0xf9, 0x93, 0xe3, 0xf2, 0x2d, 0xb3, 0x1f, 0xb5, + 0xcc, 0xc1, 0xd2, 0xda, 0xd6, 0xb5, 0x29, 0xd8, 0x5e, 0xbd, 0x03, 0x99, 0xed, 0x9d, 0x7d, 0xe1, + 0xf6, 0x9a, 0x52, 0xeb, 0xde, 0xde, 0x6e, 0x4d, 0x21, 0xbf, 0x0e, 0x45, 0xb1, 0x20, 0xad, 0xb8, + 0x51, 0x95, 0x06, 0x4f, 0x69, 0x50, 0xba, 0x84, 0xcd, 0x9b, 0x31, 0x97, 0x3c, 0x55, 0xbc, 0xf0, + 0xba, 0x58, 0xed, 0x2e, 0xab, 0xd5, 0xee, 0xc0, 0x8d, 0x6a, 0x21, 0x16, 0x6a, 0x75, 0xa7, 0xf8, + 0x5a, 0x07, 0x30, 0xa2, 0x36, 0x08, 0x32, 0x04, 0x7d, 0x95, 0x66, 0xb3, 0xd8, 0xc3, 0xfe, 0xa8, + 0x56, 0x57, 0x8b, 0x05, 0x32, 0x01, 0x10, 0xef, 0x8a, 0xc5, 0x5e, 0x32, 0x06, 0xc3, 0x72, 0xd7, + 0x2a, 0xf6, 0x21, 0x7e, 0xab, 0x55, 0xec, 0x27, 0x04, 0x26, 0xcc, 0xb5, 0xb3, 0x38, 0x40, 0xc6, + 0x61, 0x44, 0x55, 0x53, 0x1c, 0xb4, 0xfe, 0xa0, 0x00, 0x23, 0x6a, 0x09, 0x20, 0xe7, 0x60, 0x74, + 0x77, 0xb3, 0xba, 0xbd, 0xbc, 0xb8, 0x76, 0x7f, 0x6d, 0x79, 0xa9, 0xd8, 0x43, 0x2e, 0xc3, 0xc5, + 0x9d, 0xea, 0x6a, 0x6d, 0x69, 0xa1, 0xb6, 0xbe, 0xb5, 0x58, 0x59, 0xaf, 0x6d, 0xdb, 0x5b, 0x5f, + 0x7c, 0x59, 0xdb, 0xd9, 0xdd, 0xdc, 0x5c, 0x5e, 0x2f, 0x16, 0x48, 0x09, 0xa6, 0x58, 0xf1, 0xc3, + 0xdd, 0x85, 0x65, 0x1d, 0xa1, 0xd8, 0x4b, 0xae, 0xc1, 0xe5, 0xac, 0x92, 0xda, 0xea, 0x72, 0x65, + 0x69, 0x7d, 0xb9, 0x5a, 0x2d, 0xf6, 0x91, 0x19, 0x98, 0x64, 0x28, 0x95, 0xed, 0x6d, 0x83, 0xb6, + 0xdf, 0x6a, 0xc2, 0xa8, 0xf6, 0xed, 0x91, 0x39, 0x28, 0x2d, 0x2e, 0xdb, 0x3b, 0xb5, 0xed, 0x5d, + 0x7b, 0x7b, 0xab, 0xba, 0x5c, 0x33, 0x5b, 0x98, 0x2c, 0x5d, 0xdf, 0x5a, 0x59, 0xdb, 0xac, 0x31, + 0x50, 0xb5, 0x58, 0x60, 0xcd, 0x30, 0x4a, 0xab, 0x6b, 0x9b, 0x2b, 0xeb, 0xcb, 0xb5, 0xdd, 0xea, + 0xb2, 0x40, 0xe9, 0xb5, 0x7e, 0xd6, 0x9b, 0xd2, 0x26, 0xc8, 0x3c, 0x8c, 0x56, 0xb9, 0xa9, 0x04, + 0x57, 0x58, 0x7e, 0x36, 0x65, 0xea, 0xe1, 0x98, 0xb0, 0xa0, 0xf0, 0xc5, 0x53, 0x47, 0x62, 0x0a, + 0xe2, 0x36, 0x9b, 0x05, 0x75, 0xbf, 0xa9, 0x2b, 0x88, 0x2d, 0x01, 0xb3, 0x55, 0x29, 0x99, 0xd7, + 0x54, 0x49, 0x7e, 0x50, 0xc5, 0xc3, 0x90, 0x54, 0x25, 0x75, 0xb5, 0x42, 0x29, 0x95, 0xf3, 0xf1, + 0x08, 0x0b, 0x0d, 0x10, 0x69, 0x32, 0xd4, 0x18, 0x85, 0x47, 0xde, 0x92, 0x4a, 0x36, 0x3f, 0x58, + 0xa2, 0x9e, 0x91, 0x38, 0x12, 0x09, 0xfd, 0xda, 0x6a, 0xe7, 0xec, 0xe9, 0xe4, 0xa3, 0xe4, 0x14, + 0x12, 0xc2, 0x40, 0x66, 0x89, 0xad, 0xdb, 0x4e, 0xa0, 0x92, 0x32, 0x0c, 0xf0, 0xc5, 0x9e, 0xcb, + 0x03, 0xd5, 0xfa, 0x26, 0x03, 0xd8, 0x1c, 0x6e, 0x7d, 0x9d, 0xfe, 0xa4, 0xc8, 0x0a, 0x90, 0x15, + 0x37, 0x5a, 0x6d, 0xef, 0x6f, 0x05, 0x07, 0x8e, 0xe7, 0xfe, 0x94, 0x9f, 0x22, 0x0b, 0xb1, 0xfe, + 0xc5, 0x8f, 0x70, 0x35, 0x5f, 0x2b, 0xb6, 0x33, 0x48, 0xac, 0x3f, 0xeb, 0xd3, 0x95, 0x27, 0x76, + 0x46, 0xd0, 0x06, 0x13, 0xcf, 0x08, 0x38, 0x88, 0x08, 0x65, 0xc7, 0x81, 0x2a, 0x0d, 0x43, 0x7e, + 0x8e, 0xeb, 0x55, 0xe3, 0x0d, 0x21, 0x07, 0xd6, 0xdc, 0x06, 0x3b, 0x0e, 0x28, 0x14, 0x76, 0x24, + 0xe6, 0xab, 0x05, 0x1e, 0x89, 0xfb, 0xe2, 0x23, 0xb1, 0x58, 0x72, 0xf8, 0x91, 0x38, 0x46, 0x61, + 0x53, 0x4a, 0xa8, 0xaf, 0xd8, 0x8a, 0xfe, 0x78, 0x4a, 0x09, 0x95, 0x57, 0x4c, 0x29, 0x0d, 0x89, + 0x7c, 0x08, 0x50, 0x79, 0x54, 0xc5, 0xb3, 0x9f, 0xbd, 0x29, 0x54, 0x78, 0xdc, 0x6c, 0x9d, 0x67, + 0xa1, 0x38, 0x5a, 0x06, 0xfa, 0xd9, 0x59, 0xc3, 0x26, 0x0b, 0x30, 0x5e, 0xf9, 0x69, 0x3b, 0xa0, + 0x6b, 0x0d, 0xb6, 0x5f, 0x47, 0xdc, 0x48, 0x30, 0xc2, 0x37, 0x14, 0x87, 0x15, 0xd4, 0x5c, 0x51, + 0xa2, 0x31, 0x30, 0x49, 0xc8, 0x16, 0x9c, 0x5f, 0x59, 0xdc, 0x16, 0x93, 0xbc, 0x52, 0xaf, 0xfb, + 0x6d, 0x2f, 0x12, 0x7a, 0xfb, 0x35, 0xb6, 0xaa, 0x1d, 0xd4, 0x5b, 0x35, 0xf9, 0x41, 0x38, 0xbc, + 0x58, 0x57, 0xdc, 0x53, 0xb4, 0xe4, 0x3a, 0xf4, 0xed, 0xda, 0x6b, 0xc2, 0x82, 0x70, 0xfe, 0xe4, + 0xb8, 0x3c, 0xde, 0x0e, 0x5c, 0x8d, 0x84, 0x95, 0x5a, 0x4d, 0x98, 0x58, 0xa1, 0x11, 0x9b, 0xf9, + 0xf2, 0xac, 0xd6, 0x79, 0xe8, 0x3e, 0x86, 0xd1, 0x47, 0x6e, 0x74, 0x58, 0xa5, 0xf5, 0x80, 0x46, + 0xd2, 0x4e, 0x85, 0x62, 0x7a, 0xe6, 0x46, 0x87, 0xb5, 0x90, 0xc3, 0x75, 0x9d, 0x44, 0x43, 0xb7, + 0x96, 0xe1, 0x9c, 0xa8, 0x4d, 0x1d, 0x0d, 0xe7, 0x4d, 0x86, 0x05, 0x64, 0x88, 0x43, 0xa5, 0x33, + 0x34, 0xd9, 0xfc, 0x59, 0x2f, 0x4c, 0x2f, 0x1e, 0x3a, 0xde, 0x01, 0xdd, 0x76, 0xc2, 0xf0, 0x99, + 0x1f, 0x34, 0xb4, 0xc6, 0xe3, 0xb9, 0x38, 0xd5, 0x78, 0x3c, 0x08, 0xcf, 0xc3, 0xe8, 0x56, 0xb3, + 0x21, 0x69, 0xc4, 0x99, 0x1d, 0xeb, 0xf2, 0x9b, 0x8d, 0x5a, 0x4b, 0xf2, 0xd2, 0x91, 0x18, 0xcd, + 0x26, 0x7d, 0xa6, 0x68, 0xfa, 0x62, 0x1a, 0x8f, 0x3e, 0xd3, 0x68, 0x34, 0x24, 0xb2, 0x0c, 0xe7, + 0xab, 0xb4, 0xee, 0x7b, 0x8d, 0xfb, 0x4e, 0x3d, 0xf2, 0x83, 0x1d, 0xff, 0x09, 0xf5, 0xc4, 0x24, + 0xc4, 0x8f, 0x2a, 0xc4, 0xc2, 0xda, 0x63, 0x2c, 0xad, 0x45, 0xac, 0xd8, 0x4e, 0x53, 0x90, 0x2d, + 0x18, 0x7e, 0x24, 0xac, 0x9d, 0xe2, 0xa0, 0xff, 0xfa, 0x2d, 0x65, 0xfe, 0x5c, 0x0c, 0x28, 0xce, + 0x1c, 0xa7, 0xa9, 0x4c, 0x15, 0x4a, 0x47, 0xc4, 0xb5, 0x50, 0x62, 0xda, 0x8a, 0x89, 0xb5, 0x0b, + 0xe3, 0xdb, 0xcd, 0xf6, 0x81, 0xeb, 0xb1, 0x55, 0xab, 0x4a, 0x7f, 0x42, 0x96, 0x00, 0x62, 0x80, + 0xb0, 0x61, 0x4e, 0x0a, 0xf3, 0x40, 0x5c, 0xb0, 0x77, 0x4f, 0x7c, 0x6d, 0x08, 0xc1, 0xd3, 0x9c, + 0xad, 0xd1, 0x59, 0xff, 0xbd, 0x0f, 0x88, 0x18, 0x00, 0xdc, 0xc0, 0xab, 0x34, 0x62, 0xfb, 0xdb, + 0x05, 0xe8, 0x55, 0xa6, 0xc6, 0xc1, 0x93, 0xe3, 0x72, 0xaf, 0xdb, 0xb0, 0x7b, 0xd7, 0x96, 0xc8, + 0x3b, 0x30, 0x80, 0x68, 0x28, 0xff, 0x09, 0x55, 0x9f, 0xce, 0x81, 0xaf, 0x5e, 0xa8, 0x39, 0xd8, + 0x1c, 0x99, 0xbc, 0x0b, 0x23, 0x4b, 0xb4, 0x49, 0x0f, 0x9c, 0xc8, 0x97, 0x4b, 0x00, 0x37, 0xde, + 0x49, 0xa0, 0x36, 0xe7, 0x62, 0x4c, 0x76, 0x94, 0xb7, 0xa9, 0x13, 0xfa, 0x9e, 0x7e, 0x94, 0x0f, + 0x10, 0xa2, 0x1f, 0xe5, 0x39, 0x0e, 0xf9, 0xc3, 0x02, 0x8c, 0x56, 0x3c, 0x4f, 0x18, 0xc5, 0x42, + 0x21, 0xf5, 0xe9, 0x5b, 0xca, 0x8a, 0xbc, 0xee, 0xec, 0xd3, 0xe6, 0x9e, 0xd3, 0x6c, 0xd3, 0x70, + 0xe1, 0x1b, 0xa6, 0x6f, 0xfc, 0xbb, 0xe3, 0xf2, 0x47, 0x67, 0x30, 0x73, 0xc5, 0xf6, 0xe8, 0x9d, + 0xc0, 0x71, 0xa3, 0xf0, 0xe4, 0xb8, 0x3c, 0xed, 0xc4, 0x15, 0xea, 0xdf, 0x8d, 0xd6, 0x8e, 0x78, + 0x73, 0x19, 0xec, 0xb6, 0xb9, 0x90, 0x23, 0x38, 0x57, 0x09, 0xc3, 0xf6, 0x11, 0xad, 0x46, 0x4e, + 0x10, 0xed, 0xb8, 0x47, 0x14, 0x17, 0x91, 0xce, 0x86, 0x91, 0x37, 0x7f, 0x7e, 0x5c, 0x2e, 0xb0, + 0x03, 0x9d, 0x83, 0xa4, 0x4c, 0x67, 0x0b, 0xa2, 0x5a, 0xe4, 0xea, 0xfb, 0x23, 0x9a, 0x48, 0x92, + 0xbc, 0xad, 0xeb, 0x4a, 0xa3, 0x59, 0x5b, 0xca, 0x1b, 0x71, 0x6b, 0x11, 0xe6, 0x56, 0x68, 0x64, + 0xd3, 0x90, 0x46, 0xf2, 0x1b, 0xc1, 0x19, 0x1e, 0x1b, 0xa6, 0x87, 0xf0, 0xb7, 0x22, 0xc6, 0xe1, + 0xe7, 0xdf, 0x85, 0x2c, 0xb1, 0xfe, 0xb7, 0x02, 0x94, 0x17, 0x03, 0xca, 0xcf, 0x42, 0x39, 0x8c, + 0x3a, 0xaf, 0x5d, 0x73, 0xd0, 0xbf, 0xf3, 0xbc, 0x25, 0x2d, 0x4a, 0x58, 0xca, 0x06, 0xc5, 0x46, + 0xe8, 0x29, 0x0d, 0x74, 0xd6, 0x63, 0x98, 0xb6, 0xa9, 0x47, 0x9f, 0x39, 0xfb, 0x4d, 0x6a, 0xd8, + 0xb8, 0xca, 0x30, 0xc0, 0x3f, 0xf4, 0x54, 0x17, 0x38, 0xfc, 0x6c, 0xf6, 0x42, 0x6b, 0x1c, 0x46, + 0xb7, 0x5d, 0xef, 0x40, 0x70, 0xb7, 0xfe, 0xb4, 0x0f, 0xc6, 0xf8, 0x6f, 0x71, 0xbc, 0x4b, 0x6c, + 0x71, 0x85, 0xd3, 0x6c, 0x71, 0xef, 0xc3, 0x38, 0xdf, 0xf7, 0xf7, 0x68, 0xc0, 0xb6, 0x56, 0x21, + 0x09, 0x3c, 0xaa, 0x72, 0x3d, 0xb9, 0xf6, 0x94, 0x97, 0xd8, 0x26, 0x22, 0x59, 0x87, 0x09, 0x0e, + 0xb8, 0x4f, 0x9d, 0xa8, 0x1d, 0x5b, 0xdb, 0xce, 0x09, 0x65, 0x5c, 0x82, 0xf9, 0xd4, 0x14, 0xbc, + 0x1e, 0x0b, 0xa0, 0x9d, 0xa0, 0x25, 0x9f, 0xc2, 0xb9, 0xed, 0xc0, 0xff, 0xf6, 0xb9, 0xb6, 0xa9, + 0xf3, 0xaf, 0x93, 0x9f, 0xfc, 0x58, 0x51, 0x4d, 0xdf, 0xda, 0x93, 0xd8, 0xe4, 0x2d, 0x18, 0x5e, + 0x0b, 0x17, 0xfc, 0xc0, 0xf5, 0x0e, 0xf0, 0x1b, 0x1d, 0xe6, 0x97, 0x14, 0x6e, 0x58, 0xdb, 0x47, + 0xa0, 0xad, 0x8a, 0x13, 0xe6, 0xf4, 0xa1, 0xee, 0xe6, 0xf4, 0x3b, 0x00, 0xeb, 0xbe, 0xd3, 0xa8, + 0x34, 0x9b, 0x8b, 0x95, 0x10, 0x77, 0x4f, 0xb1, 0x1f, 0x35, 0x7d, 0xa7, 0x51, 0x73, 0x9a, 0xcd, + 0x5a, 0xdd, 0x09, 0x6d, 0x0d, 0xe7, 0x41, 0xff, 0xf0, 0x60, 0x71, 0xc8, 0x3e, 0xb7, 0xee, 0xd6, + 0xa9, 0x17, 0xd2, 0x47, 0x4e, 0xe0, 0xb9, 0xde, 0x41, 0x68, 0xfd, 0x93, 0xf3, 0x30, 0xac, 0xba, + 0x7c, 0x4b, 0x3f, 0x44, 0x88, 0x5d, 0x0e, 0x47, 0x3f, 0x36, 0xc7, 0xd9, 0x1a, 0x06, 0xb9, 0x88, + 0xc7, 0x0a, 0xb1, 0xbf, 0x0e, 0xb1, 0xd9, 0xe8, 0xb4, 0x5a, 0x36, 0x83, 0xb1, 0xaf, 0x6c, 0x69, + 0x01, 0xe5, 0x3f, 0xcc, 0xbf, 0xb2, 0xc6, 0xbe, 0xdd, 0xbb, 0xb4, 0xc0, 0xa6, 0xf7, 0xd6, 0xda, + 0xd2, 0x22, 0x8a, 0x72, 0x98, 0x4f, 0x6f, 0xdf, 0x6d, 0xd4, 0x6d, 0x84, 0xb2, 0xd2, 0x6a, 0x65, + 0x63, 0x5d, 0x88, 0x0b, 0x4b, 0x43, 0xe7, 0xa8, 0x69, 0x23, 0x94, 0x69, 0x9e, 0xdc, 0xb2, 0xb2, + 0xe8, 0x7b, 0x51, 0xe0, 0x37, 0x43, 0xd4, 0x60, 0x86, 0xf9, 0x70, 0x0a, 0x93, 0x4c, 0x5d, 0x14, + 0xd9, 0x09, 0x54, 0xf2, 0x08, 0x66, 0x2a, 0x8d, 0xa7, 0x8e, 0x57, 0xa7, 0x0d, 0x5e, 0xf2, 0xc8, + 0x0f, 0x9e, 0x3c, 0x6e, 0xfa, 0xcf, 0x42, 0x94, 0xf7, 0xb0, 0xb0, 0x60, 0x0a, 0x14, 0x69, 0xe1, + 0x79, 0x26, 0x91, 0xec, 0x3c, 0x6a, 0xf6, 0x49, 0x2d, 0x36, 0xfd, 0x76, 0x43, 0x8c, 0x02, 0x7e, + 0x52, 0x75, 0x06, 0xb0, 0x39, 0x9c, 0x49, 0x69, 0xb5, 0xba, 0x81, 0xf6, 0x42, 0x21, 0xa5, 0xc3, + 0xf0, 0xc8, 0x66, 0x30, 0xf2, 0x3a, 0x0c, 0x49, 0x25, 0x9a, 0x5f, 0x68, 0xa0, 0x21, 0x5d, 0x2a, + 0xcf, 0xb2, 0x8c, 0x7d, 0x12, 0x36, 0xad, 0xfb, 0x4f, 0x69, 0xf0, 0x7c, 0xd1, 0x6f, 0x50, 0x69, + 0xdd, 0x12, 0xd6, 0x1b, 0x5e, 0x50, 0xab, 0xb3, 0x12, 0xdb, 0x44, 0x64, 0x15, 0xf0, 0x3d, 0x30, + 0x2c, 0x9d, 0x8b, 0x2b, 0xe0, 0x7b, 0x64, 0x68, 0xcb, 0x32, 0xb2, 0x04, 0xe7, 0x2b, 0xed, 0xc8, + 0x3f, 0x72, 0x22, 0xb7, 0xbe, 0xdb, 0x3a, 0x08, 0x1c, 0x56, 0x49, 0x11, 0x09, 0xf0, 0x50, 0xe1, + 0xc8, 0xc2, 0x5a, 0x5b, 0x94, 0xda, 0x69, 0x02, 0xf2, 0x1e, 0x8c, 0xad, 0x85, 0xdc, 0x82, 0xe9, + 0x84, 0xb4, 0x81, 0x66, 0x28, 0xd1, 0x4a, 0x37, 0xac, 0xa1, 0x3d, 0xb3, 0xc6, 0x8e, 0x21, 0x0d, + 0xdb, 0xc0, 0x23, 0x16, 0x0c, 0x56, 0xc2, 0xd0, 0x0d, 0x23, 0xb4, 0x2e, 0x0d, 0x2f, 0xc0, 0xc9, + 0x71, 0x79, 0xd0, 0x41, 0x88, 0x2d, 0x4a, 0xc8, 0x23, 0x18, 0x5d, 0xa2, 0x4c, 0x71, 0xdc, 0x09, + 0xda, 0x61, 0x84, 0xb6, 0xa2, 0xd1, 0xf9, 0x8b, 0xe2, 0xc3, 0xd6, 0x4a, 0xc4, 0x5c, 0xe6, 0xda, + 0x5e, 0x03, 0xe1, 0xb5, 0x88, 0x15, 0xe8, 0xbb, 0x96, 0x86, 0xcf, 0xb4, 0x62, 0x41, 0xb3, 0xea, + 0x36, 0xd8, 0xa7, 0x3a, 0x85, 0x6d, 0x40, 0xad, 0x58, 0xac, 0x0d, 0xb5, 0x43, 0x2c, 0xd1, 0xb5, + 0x62, 0x83, 0x84, 0xd4, 0x53, 0x46, 0xf1, 0x69, 0xc3, 0xf0, 0x69, 0x16, 0xca, 0x26, 0x9e, 0xd1, + 0x64, 0xfe, 0x31, 0x8c, 0x2e, 0xb6, 0xc3, 0xc8, 0x3f, 0xda, 0x39, 0xa4, 0x47, 0x14, 0xed, 0x49, + 0x42, 0xf7, 0xaf, 0x23, 0xb8, 0x16, 0x31, 0xb8, 0xde, 0x4d, 0x0d, 0x9d, 0x7c, 0x0e, 0x44, 0x2a, + 0xf1, 0x2b, 0x6c, 0x7e, 0x78, 0x6c, 0x2e, 0xa3, 0x49, 0x69, 0x98, 0x6b, 0xee, 0x52, 0xf7, 0xaf, + 0x1d, 0xa8, 0x62, 0xdd, 0xac, 0x99, 0x26, 0x66, 0x0d, 0xe2, 0x4d, 0x5c, 0x09, 0x9c, 0xd6, 0x61, + 0xa9, 0x14, 0x6b, 0xd9, 0xa2, 0x53, 0x07, 0x0c, 0x6e, 0x68, 0x0b, 0x31, 0x3a, 0xa9, 0x02, 0xf0, + 0x9f, 0xeb, 0x6c, 0xe0, 0xb9, 0x11, 0xaa, 0x64, 0xc8, 0x8b, 0x15, 0x48, 0x59, 0x5d, 0x44, 0x1d, + 0x84, 0xb3, 0x6d, 0xba, 0xc6, 0x68, 0x6a, 0x6c, 0xc8, 0x13, 0x28, 0xf2, 0x5f, 0x1b, 0xbe, 0xe7, + 0x46, 0x7c, 0xe9, 0x9d, 0x35, 0x2c, 0x96, 0xc9, 0x62, 0x59, 0x01, 0x5a, 0x8a, 0x45, 0x05, 0x47, + 0xaa, 0x54, 0xb7, 0xc8, 0x24, 0x29, 0xc9, 0x36, 0x8c, 0x6e, 0x07, 0x7e, 0xa3, 0x5d, 0x8f, 0x70, + 0xc3, 0xbe, 0x84, 0x8a, 0x22, 0x11, 0xf5, 0x68, 0x25, 0x5c, 0x26, 0x2d, 0x0e, 0xa8, 0xb1, 0xcd, + 0x5c, 0x97, 0x89, 0x86, 0x48, 0x16, 0x60, 0x70, 0xdb, 0x6f, 0xba, 0xf5, 0xe7, 0xa5, 0x39, 0x6c, + 0xf4, 0x94, 0x64, 0x86, 0x40, 0xd9, 0x54, 0xd4, 0x0e, 0x5b, 0x08, 0xd2, 0xb5, 0x43, 0x8e, 0x44, + 0x2a, 0x30, 0xfe, 0x39, 0x9b, 0x30, 0xae, 0xef, 0x79, 0x8e, 0x1b, 0xd0, 0xd2, 0x65, 0x1c, 0x17, + 0xb4, 0xe6, 0xff, 0x44, 0x2f, 0xd0, 0xa7, 0xb3, 0x41, 0x41, 0xd6, 0xe0, 0xdc, 0x5a, 0x58, 0x8d, + 0x02, 0xb7, 0x45, 0x37, 0x1c, 0xcf, 0x39, 0xa0, 0x8d, 0xd2, 0x95, 0xd8, 0x9c, 0xee, 0x86, 0xb5, + 0x10, 0xcb, 0x6a, 0x47, 0xbc, 0x50, 0x37, 0xa7, 0x27, 0xe8, 0xc8, 0x17, 0x30, 0xb5, 0xfc, 0x6d, + 0xc4, 0x66, 0x4c, 0xb3, 0xd2, 0x6e, 0xb8, 0x51, 0x35, 0xf2, 0x03, 0xe7, 0x80, 0x96, 0xca, 0xc8, + 0xef, 0xb5, 0x93, 0xe3, 0xf2, 0x55, 0x2a, 0xca, 0x6b, 0x0e, 0x43, 0xa8, 0x85, 0x1c, 0x43, 0xbf, + 0x26, 0xcf, 0xe2, 0xc0, 0xa4, 0x5f, 0x6d, 0xb7, 0x98, 0xe2, 0x8a, 0xd2, 0xbf, 0x6a, 0x48, 0x5f, + 0x2b, 0xe1, 0xd2, 0x0f, 0x39, 0x20, 0x25, 0x7d, 0x0d, 0x91, 0xd8, 0x40, 0x1e, 0xf8, 0xae, 0x57, + 0xa9, 0x47, 0xee, 0x53, 0x2a, 0xce, 0xf5, 0x61, 0xe9, 0x1a, 0xb6, 0x14, 0x4d, 0xff, 0xbf, 0xee, + 0xbb, 0x5e, 0xcd, 0xc1, 0xe2, 0x9a, 0xb0, 0x02, 0x18, 0xa6, 0xff, 0x34, 0x35, 0xf9, 0x11, 0x5c, + 0xd8, 0xf0, 0xf7, 0xdd, 0x26, 0xe5, 0x4b, 0x0e, 0x17, 0x0b, 0x9a, 0x31, 0x2d, 0xe4, 0x8b, 0xa6, + 0xff, 0x23, 0xc4, 0xa8, 0x89, 0xd5, 0xea, 0x48, 0xe1, 0xe8, 0xa6, 0xff, 0x6c, 0x2e, 0x64, 0x19, + 0xc6, 0xf0, 0xbb, 0x6c, 0xe2, 0xcf, 0xb0, 0x74, 0x1d, 0x4f, 0x47, 0xd7, 0x12, 0x0a, 0xcf, 0xad, + 0x65, 0x0d, 0x67, 0xd9, 0x8b, 0x82, 0xe7, 0xb6, 0x41, 0x46, 0x3e, 0x81, 0xd9, 0xe4, 0xf4, 0x5e, + 0xf4, 0xbd, 0xc7, 0xee, 0x41, 0x3b, 0xa0, 0x8d, 0xd2, 0x6b, 0xac, 0xa9, 0x76, 0x07, 0x8c, 0xd9, + 0x47, 0x70, 0x3e, 0x55, 0x05, 0x29, 0x42, 0xdf, 0x13, 0x71, 0x93, 0x3a, 0x62, 0xb3, 0x3f, 0xc9, + 0xdb, 0x30, 0xf0, 0x94, 0x1d, 0x4b, 0x50, 0x63, 0x88, 0xef, 0xe6, 0x34, 0xd2, 0x35, 0xef, 0xb1, + 0x6f, 0x73, 0xa4, 0x0f, 0x7b, 0xdf, 0x2f, 0x3c, 0xe8, 0x1f, 0x1e, 0x2d, 0x8e, 0xf1, 0x0b, 0xf0, + 0x07, 0xfd, 0xc3, 0xe3, 0xc5, 0x09, 0xab, 0x02, 0xe7, 0x12, 0xf8, 0xa4, 0x04, 0x43, 0xd4, 0x63, + 0xaa, 0x6e, 0x83, 0xeb, 0x2c, 0xb6, 0xfc, 0x49, 0xa6, 0x60, 0xa0, 0xe9, 0x1e, 0xb9, 0x11, 0x56, + 0x38, 0x60, 0xf3, 0x1f, 0xd6, 0x1f, 0x15, 0x80, 0xa4, 0xb7, 0x0c, 0x72, 0x3b, 0xc1, 0x86, 0x2b, + 0x7a, 0x02, 0xa4, 0x9b, 0xf8, 0x25, 0xf7, 0xcf, 0x61, 0x92, 0x8f, 0x99, 0xdc, 0xdc, 0xb4, 0xba, + 0xf8, 0xa2, 0x9a, 0x51, 0xac, 0x9b, 0x43, 0x44, 0x31, 0x6e, 0x85, 0xeb, 0xd8, 0xb4, 0x36, 0x4c, + 0x67, 0x6e, 0x16, 0x64, 0x03, 0xa6, 0x8f, 0x7c, 0x2f, 0x3a, 0x6c, 0x3e, 0x97, 0x7b, 0x85, 0xa8, + 0xad, 0x80, 0xb5, 0xe1, 0xfa, 0x98, 0x89, 0x60, 0x4f, 0x0a, 0xb0, 0xe0, 0x88, 0xf5, 0x3c, 0xe8, + 0x1f, 0xee, 0x2d, 0xf6, 0xa9, 0x9e, 0x58, 0x36, 0x9c, 0x4f, 0xad, 0xb9, 0xe4, 0x87, 0x30, 0x56, + 0xc7, 0xa3, 0x8c, 0x51, 0x13, 0xdf, 0x71, 0x34, 0xb8, 0xfe, 0x39, 0x71, 0x38, 0xef, 0xca, 0x3f, + 0x28, 0xc0, 0x4c, 0xce, 0x6a, 0x7b, 0x76, 0x51, 0x7f, 0x09, 0x17, 0x8e, 0x9c, 0x6f, 0x6b, 0x01, + 0x9e, 0x54, 0x6b, 0x81, 0xe3, 0x25, 0xa4, 0x8d, 0x2b, 0x49, 0x36, 0x86, 0xee, 0x85, 0x74, 0xe4, + 0x7c, 0x6b, 0x23, 0x82, 0xcd, 0xca, 0x79, 0x3b, 0x3f, 0x83, 0x71, 0x63, 0x7d, 0x3d, 0x73, 0xe3, + 0xac, 0xbb, 0x70, 0x9e, 0x9d, 0xe5, 0x23, 0x7a, 0x6a, 0x0b, 0x95, 0xb5, 0x0d, 0x50, 0xa5, 0x47, + 0x4e, 0xeb, 0xd0, 0x67, 0x7a, 0xf7, 0x82, 0xfe, 0x4b, 0x58, 0x38, 0x88, 0xb0, 0x38, 0xa8, 0x82, + 0xbd, 0x7b, 0x5c, 0x17, 0x0f, 0x15, 0xa6, 0xad, 0x51, 0x59, 0x7f, 0xd9, 0x0b, 0x44, 0x2c, 0x90, + 0x01, 0x75, 0x8e, 0x64, 0x33, 0x3e, 0x80, 0x31, 0x7e, 0x1e, 0xe5, 0x60, 0x6c, 0xce, 0xe8, 0xfc, + 0xa4, 0xf8, 0xf2, 0xf4, 0xa2, 0xd5, 0x1e, 0xdb, 0x40, 0x65, 0xa4, 0x36, 0xe5, 0x07, 0x69, 0x24, + 0xed, 0x35, 0x48, 0xf5, 0x22, 0x46, 0xaa, 0xff, 0x26, 0x9f, 0xc2, 0xc4, 0xa2, 0x7f, 0xd4, 0x62, + 0x32, 0x11, 0xc4, 0x7d, 0xc2, 0x48, 0x21, 0xea, 0x35, 0x0a, 0x57, 0x7b, 0xec, 0x04, 0x3a, 0xd9, + 0x84, 0xc9, 0xfb, 0xcd, 0x76, 0x78, 0x58, 0xf1, 0x1a, 0x8b, 0x4d, 0x3f, 0x94, 0x5c, 0xfa, 0x85, + 0x91, 0x40, 0x2c, 0x6f, 0x69, 0x8c, 0xd5, 0x1e, 0x3b, 0x8b, 0x90, 0xbc, 0x0e, 0x03, 0xcb, 0x4f, + 0xd9, 0xb2, 0x2b, 0x7d, 0x51, 0x84, 0xab, 0xdc, 0x96, 0x47, 0xb7, 0x1e, 0xaf, 0xf6, 0xd8, 0xbc, + 0x74, 0x61, 0x04, 0x86, 0xe4, 0x59, 0xf6, 0x36, 0x53, 0x89, 0x95, 0x38, 0xab, 0x91, 0x13, 0xb5, + 0x43, 0x32, 0x0b, 0xc3, 0xbb, 0x2d, 0x76, 0xc4, 0x92, 0x46, 0x00, 0x5b, 0xfd, 0xb6, 0xde, 0x36, + 0x25, 0x4d, 0xe6, 0x74, 0xfb, 0x31, 0x47, 0x8e, 0x01, 0xd6, 0xaa, 0x29, 0xdc, 0xce, 0xd8, 0x46, + 0xbd, 0xbd, 0x89, 0x7a, 0x8b, 0x49, 0x59, 0x5b, 0xd3, 0x99, 0xc2, 0xb3, 0xbe, 0x80, 0x2b, 0xbb, + 0xad, 0x90, 0x06, 0x51, 0xa5, 0xd5, 0x6a, 0xba, 0x75, 0x7e, 0x97, 0x85, 0x67, 0x5e, 0x39, 0x59, + 0xde, 0x83, 0x41, 0x71, 0x8b, 0xc5, 0xa7, 0x89, 0x9c, 0x83, 0x95, 0x56, 0x4b, 0x9c, 0xb4, 0xef, + 0x71, 0xe5, 0x9c, 0x9f, 0x9d, 0x6d, 0x81, 0x6d, 0xfd, 0x7e, 0x01, 0xae, 0xf0, 0x2f, 0x20, 0x97, + 0xf5, 0xf7, 0x60, 0x04, 0x3d, 0xd5, 0x5a, 0x4e, 0x5d, 0x7e, 0x13, 0xdc, 0x65, 0x4f, 0x02, 0xed, + 0xb8, 0x5c, 0xf3, 0x01, 0xec, 0xcd, 0xf7, 0x01, 0x94, 0x1f, 0x58, 0x5f, 0xe6, 0x07, 0xf6, 0x39, + 0x58, 0xa2, 0x45, 0xcd, 0x66, 0xaa, 0x51, 0xe1, 0x8b, 0xb4, 0xca, 0xfa, 0xcf, 0xbd, 0x30, 0xb3, + 0x42, 0x3d, 0x1a, 0x38, 0xd8, 0x4f, 0xc3, 0xa6, 0xa3, 0xfb, 0x02, 0x15, 0x3a, 0xfa, 0x02, 0x95, + 0xa5, 0x95, 0xac, 0x17, 0xad, 0x64, 0x29, 0xc7, 0x26, 0x76, 0x5c, 0xdc, 0xb5, 0xd7, 0x44, 0xb7, + 0xf0, 0xb8, 0xd8, 0x0e, 0x5c, 0xb4, 0x83, 0x93, 0xb5, 0xd8, 0x8f, 0xa8, 0xbf, 0xab, 0xb9, 0x6c, + 0x52, 0xdc, 0x34, 0x0e, 0x09, 0x3f, 0x22, 0xd3, 0x7b, 0x68, 0x13, 0x06, 0xb9, 0x71, 0x0f, 0xaf, + 0x82, 0x46, 0xe7, 0x6f, 0x8a, 0x6f, 0x2a, 0xa7, 0x83, 0xc2, 0x12, 0x88, 0x1b, 0x3b, 0x9f, 0x02, + 0x11, 0x02, 0x6c, 0xc1, 0x65, 0xf6, 0x73, 0x18, 0xd5, 0x50, 0x4e, 0xb3, 0xf7, 0x2b, 0x23, 0x23, + 0xd3, 0x18, 0xbd, 0x03, 0x6e, 0xaf, 0xd4, 0xf6, 0x7e, 0xeb, 0x23, 0x28, 0xa5, 0x5b, 0x23, 0x0c, + 0x4b, 0xdd, 0xec, 0x58, 0xd6, 0x12, 0x4c, 0xad, 0xd0, 0x08, 0x27, 0x2e, 0x7e, 0x44, 0x9a, 0x3f, + 0x5c, 0xe2, 0x3b, 0x93, 0xab, 0xaa, 0xbc, 0xd5, 0xd1, 0xbf, 0xd2, 0x2a, 0x4c, 0x27, 0xb8, 0x88, + 0xfa, 0x3f, 0x84, 0x21, 0x01, 0x52, 0x2b, 0xaa, 0x70, 0xaa, 0xa5, 0xfb, 0xa2, 0x60, 0x6f, 0x9e, + 0xcf, 0x5b, 0xc1, 0xd9, 0x96, 0x04, 0xd6, 0x21, 0x5c, 0x60, 0xdb, 0x6c, 0xcc, 0x55, 0x4d, 0xc7, + 0x4b, 0x30, 0xd2, 0x62, 0x8a, 0x42, 0xe8, 0xfe, 0x94, 0x4f, 0xa3, 0x01, 0x7b, 0x98, 0x01, 0xaa, + 0xee, 0x4f, 0x29, 0xb9, 0x0c, 0x80, 0x85, 0xd8, 0x4d, 0xb1, 0x0a, 0x20, 0x3a, 0x37, 0xdc, 0x11, + 0x40, 0x6f, 0x3a, 0x3e, 0x6f, 0x6c, 0xfc, 0xdb, 0x0a, 0x60, 0x26, 0x55, 0x93, 0xe8, 0xc0, 0x6d, + 0x18, 0x96, 0x2a, 0x6c, 0xc2, 0xa4, 0xae, 0xf7, 0xc0, 0x56, 0x48, 0xe4, 0x0d, 0x38, 0xe7, 0xd1, + 0x6f, 0xa3, 0x5a, 0xaa, 0x0d, 0xe3, 0x0c, 0xbc, 0x2d, 0xdb, 0x61, 0xfd, 0x1a, 0x9a, 0x51, 0xab, + 0x9e, 0xff, 0xec, 0x71, 0xd3, 0x79, 0x42, 0x53, 0x15, 0xff, 0x10, 0x86, 0xab, 0xdd, 0x2b, 0xe6, + 0x9f, 0x8f, 0xac, 0xdc, 0x56, 0x24, 0x56, 0x13, 0x66, 0x59, 0x97, 0xaa, 0x95, 0x8d, 0xf5, 0xb5, + 0xc6, 0xf6, 0x77, 0x2d, 0xc0, 0xa7, 0x70, 0x29, 0xb3, 0xb6, 0xef, 0x5a, 0x88, 0xff, 0xb4, 0x1f, + 0x66, 0xf8, 0x66, 0x92, 0x9e, 0xc1, 0xa7, 0x5f, 0x6a, 0x7e, 0x25, 0x37, 0x92, 0x77, 0x32, 0x6e, + 0x24, 0x91, 0x44, 0xbf, 0x91, 0x34, 0xee, 0x21, 0xdf, 0xcf, 0xbe, 0x87, 0x44, 0x3b, 0x91, 0x79, + 0x0f, 0x99, 0xbc, 0x7d, 0x5c, 0xce, 0xbf, 0x7d, 0xe4, 0xf7, 0xc0, 0xe9, 0xdb, 0xc7, 0xac, 0x3b, + 0xc7, 0x84, 0x4b, 0xd3, 0xf0, 0xab, 0x75, 0x69, 0x7a, 0x03, 0x86, 0x2a, 0xad, 0x96, 0xe6, 0x22, + 0x88, 0xc3, 0xe3, 0xb4, 0x5a, 0x5c, 0x78, 0xb2, 0x50, 0xae, 0xf3, 0x90, 0xb1, 0xce, 0x7f, 0x00, + 0xb0, 0x88, 0x0f, 0x19, 0x70, 0xe0, 0x46, 0x11, 0x03, 0x35, 0x7c, 0xfe, 0xbc, 0x01, 0x07, 0x4e, + 0xb7, 0x80, 0xc4, 0xc8, 0x5c, 0xb1, 0xb7, 0xf6, 0xa0, 0x94, 0x9e, 0x3e, 0xaf, 0x60, 0xe9, 0xfa, + 0xf3, 0x02, 0x5c, 0x16, 0x4a, 0x4e, 0xe2, 0x03, 0x3f, 0xfb, 0xec, 0x7c, 0x17, 0xc6, 0x04, 0xed, + 0x4e, 0xfc, 0x21, 0xf0, 0x2b, 0x60, 0xb9, 0x18, 0xf3, 0x15, 0xdd, 0x40, 0x23, 0xef, 0xc2, 0x30, + 0xfe, 0x11, 0x5f, 0x83, 0x30, 0xc9, 0x8c, 0x20, 0x6a, 0x2d, 0x79, 0x19, 0xa2, 0x50, 0xad, 0x6f, + 0xe0, 0x4a, 0x5e, 0xc3, 0x5f, 0x81, 0x5c, 0xfe, 0x59, 0x01, 0x2e, 0x09, 0xf6, 0xc6, 0x52, 0xf1, + 0x42, 0xbb, 0xce, 0x19, 0x1c, 0x8b, 0x1f, 0xc0, 0x28, 0xab, 0x50, 0xb6, 0xbb, 0x4f, 0x6c, 0xad, + 0xe2, 0xe4, 0x10, 0x97, 0x2c, 0x39, 0x91, 0x23, 0xbc, 0x55, 0x9c, 0xa3, 0xa6, 0x34, 0x5e, 0xd8, + 0x3a, 0xb1, 0xf5, 0x15, 0xcc, 0x65, 0x77, 0xe1, 0x15, 0xc8, 0xe7, 0x01, 0xcc, 0x66, 0x6c, 0x0a, + 0x2f, 0xb6, 0x27, 0x7f, 0x09, 0x97, 0x32, 0x79, 0xbd, 0x82, 0x66, 0xae, 0x32, 0x8d, 0x23, 0x7a, + 0x05, 0x43, 0x68, 0x3d, 0x82, 0x8b, 0x19, 0x9c, 0x5e, 0x41, 0x13, 0x57, 0x60, 0x46, 0x69, 0xda, + 0x2f, 0xd5, 0xc2, 0x0d, 0xb8, 0xcc, 0x19, 0xbd, 0x9a, 0x51, 0x79, 0x08, 0x97, 0x04, 0xbb, 0x57, + 0x20, 0xbd, 0x55, 0x98, 0x8b, 0x0f, 0xd4, 0x19, 0x7a, 0xd2, 0xa9, 0x17, 0x19, 0x6b, 0x1d, 0xae, + 0xc6, 0x9c, 0x72, 0x94, 0x86, 0xd3, 0x73, 0xe3, 0xea, 0x60, 0x3c, 0x4a, 0xaf, 0x64, 0x44, 0x1f, + 0xc1, 0x05, 0x83, 0xe9, 0x2b, 0x53, 0x95, 0xd6, 0x60, 0x92, 0x33, 0x36, 0x55, 0xe7, 0x79, 0x5d, + 0x75, 0x1e, 0x9d, 0x3f, 0x1f, 0xb3, 0x44, 0xf0, 0xde, 0xbd, 0x0c, 0x6d, 0x7a, 0x03, 0xb5, 0x69, + 0x89, 0x12, 0xb7, 0xf0, 0x5d, 0x18, 0xe4, 0x10, 0xd1, 0xbe, 0x0c, 0x66, 0xfc, 0xb0, 0xc0, 0xc9, + 0x04, 0xb2, 0xf5, 0x23, 0xb8, 0xcc, 0x4f, 0xa2, 0xf1, 0x5d, 0xa2, 0x79, 0x5a, 0xfc, 0x61, 0xe2, + 0x20, 0x7a, 0x51, 0xf0, 0x4d, 0xe2, 0xe7, 0x9c, 0x47, 0xf7, 0xe5, 0xdc, 0xce, 0xe3, 0x7f, 0xaa, + 0x47, 0x66, 0xf2, 0x80, 0xd9, 0x9b, 0x79, 0xc0, 0xbc, 0x0e, 0xd7, 0xd4, 0x01, 0x33, 0x59, 0x8d, + 0x9c, 0x5a, 0xd6, 0x57, 0x70, 0x89, 0x77, 0x54, 0x7a, 0xe0, 0x99, 0xcd, 0xf8, 0x28, 0xd1, 0xcd, + 0x19, 0xd1, 0x4d, 0x13, 0x3b, 0xa7, 0x93, 0xff, 0x67, 0x41, 0x7e, 0x72, 0xd9, 0xcc, 0x7f, 0xd5, + 0x27, 0xee, 0x4d, 0x28, 0x2b, 0x81, 0x98, 0x2d, 0x7a, 0xb1, 0xe3, 0xf6, 0x06, 0x4c, 0xeb, 0x6c, + 0xdc, 0x3a, 0xdd, 0xbb, 0x8b, 0x97, 0x3c, 0xef, 0xb0, 0xcf, 0x02, 0x01, 0x72, 0xda, 0x95, 0x32, + 0xe4, 0x86, 0xf8, 0xb6, 0xc2, 0xb4, 0x6a, 0x30, 0x97, 0x1e, 0x0a, 0xb7, 0x2e, 0x3d, 0xff, 0xc9, + 0xa7, 0xec, 0x13, 0x46, 0x88, 0x18, 0x8c, 0x5c, 0xa6, 0xf2, 0x3b, 0xe6, 0xe4, 0x92, 0xca, 0xb2, + 0xe4, 0x52, 0x93, 0xe8, 0x3f, 0xab, 0x5d, 0xce, 0x87, 0xdf, 0x04, 0x22, 0x8b, 0x16, 0xab, 0xb6, + 0xac, 0xfa, 0x22, 0xf4, 0x2d, 0x56, 0x6d, 0xf1, 0xe4, 0x08, 0x35, 0xc1, 0x7a, 0x18, 0xd8, 0x0c, + 0x96, 0xd4, 0xc8, 0x7b, 0x4f, 0xa1, 0x91, 0x3f, 0xe8, 0x1f, 0xee, 0x2b, 0xf6, 0xdb, 0xa4, 0xea, + 0x1e, 0x78, 0x8f, 0xdc, 0xe8, 0x50, 0x55, 0x58, 0xb1, 0xbe, 0x86, 0x49, 0xa3, 0x7a, 0xf1, 0x15, + 0x77, 0x7c, 0x2b, 0xc5, 0xf4, 0xd9, 0xc5, 0x0a, 0x3a, 0x91, 0xa0, 0xc9, 0x62, 0x8c, 0xaf, 0x37, + 0x75, 0xa7, 0x86, 0x0f, 0x71, 0x6d, 0x59, 0x68, 0xfd, 0xff, 0xfd, 0x1a, 0x77, 0xed, 0x05, 0x5a, + 0x87, 0xde, 0xdd, 0x05, 0xe0, 0x33, 0x44, 0xeb, 0x1c, 0x53, 0x00, 0x47, 0x85, 0x6f, 0x06, 0x5f, + 0x92, 0x6d, 0x0d, 0xe9, 0xb4, 0x2f, 0xd4, 0x84, 0xbb, 0x2e, 0x27, 0x92, 0x8f, 0x32, 0x95, 0xbb, + 0xae, 0x60, 0x1d, 0xda, 0x3a, 0x12, 0xf9, 0x51, 0xf2, 0x19, 0xc5, 0x00, 0xde, 0x29, 0xbd, 0x26, + 0x2f, 0x99, 0xd3, 0x7d, 0x3b, 0xdb, 0x4b, 0x8a, 0x67, 0x30, 0xcd, 0x68, 0xdd, 0xc7, 0x78, 0xb0, + 0x58, 0xfe, 0x36, 0xa2, 0x1e, 0x5f, 0xdb, 0x07, 0xb1, 0x9e, 0xd7, 0x3b, 0xd4, 0x13, 0x23, 0x0b, + 0xfb, 0x7b, 0xcc, 0xa7, 0x46, 0x55, 0x99, 0x9d, 0xcd, 0x1f, 0x27, 0x91, 0xbd, 0xbe, 0xec, 0x35, + 0x5a, 0xbe, 0xab, 0x0e, 0x4c, 0x7c, 0x12, 0x05, 0xcd, 0x1a, 0x15, 0x70, 0x5b, 0x47, 0xb2, 0xde, + 0xe8, 0xe8, 0x04, 0x3e, 0x0c, 0xfd, 0x3b, 0x8b, 0x3b, 0xeb, 0xc5, 0x82, 0x75, 0x1b, 0x40, 0xab, + 0x09, 0x60, 0x70, 0x73, 0xcb, 0xde, 0xa8, 0xac, 0x17, 0x7b, 0xc8, 0x34, 0x9c, 0x7f, 0xb4, 0xb6, + 0xb9, 0xb4, 0xf5, 0xa8, 0x5a, 0xab, 0x6e, 0x54, 0xec, 0x9d, 0xc5, 0x8a, 0xbd, 0x54, 0x2c, 0x58, + 0xdf, 0xc0, 0x94, 0xd9, 0xc3, 0x57, 0x3a, 0x09, 0x23, 0x98, 0x54, 0xfa, 0xcc, 0x83, 0x47, 0x3b, + 0x9a, 0xff, 0xa6, 0x38, 0xfc, 0x25, 0xfd, 0x90, 0xc4, 0x31, 0x51, 0x7c, 0x46, 0x1a, 0x12, 0x79, + 0x8b, 0xab, 0x05, 0xc9, 0x37, 0xc6, 0x4c, 0x2d, 0xa8, 0xc5, 0x7a, 0x01, 0x2e, 0x7d, 0x3f, 0x80, + 0x29, 0xb3, 0xd6, 0xd3, 0x5a, 0xa9, 0x5e, 0x43, 0xc7, 0x56, 0xed, 0x01, 0x12, 0x21, 0xfa, 0xb5, + 0x81, 0x58, 0x59, 0x7f, 0x00, 0x45, 0x81, 0x15, 0xef, 0xbc, 0xd7, 0xa5, 0x19, 0xb1, 0x90, 0xf1, + 0x5c, 0x52, 0xfa, 0x70, 0xfb, 0x50, 0x64, 0x2b, 0xa6, 0xa0, 0xe4, 0x15, 0x4c, 0xc1, 0xc0, 0x7a, + 0x7c, 0x9d, 0x63, 0xf3, 0x1f, 0xf8, 0x0e, 0x27, 0x72, 0x82, 0x48, 0x7a, 0x7d, 0x8d, 0xd8, 0xea, + 0x37, 0x79, 0x0b, 0x06, 0xef, 0xbb, 0xcd, 0x48, 0x98, 0x46, 0xe2, 0x4d, 0x9e, 0xb1, 0xe5, 0x05, + 0xb6, 0x40, 0xb0, 0x6c, 0x38, 0xaf, 0x55, 0x78, 0x86, 0xa6, 0x92, 0x12, 0x0c, 0x6d, 0xd2, 0x6f, + 0xb5, 0xfa, 0xe5, 0x4f, 0xeb, 0x3d, 0x38, 0x2f, 0x3c, 0xea, 0x34, 0x31, 0x5d, 0x13, 0xaf, 0xba, + 0x0b, 0xc6, 0xd3, 0x52, 0xc1, 0x12, 0x8b, 0x18, 0xdd, 0x6e, 0xab, 0xf1, 0x82, 0x74, 0x6c, 0xa3, + 0x38, 0x23, 0xdd, 0x9b, 0xf2, 0x16, 0xa8, 0xdb, 0x70, 0xfe, 0x65, 0x01, 0x4a, 0x09, 0x2b, 0xc3, + 0xe2, 0xa1, 0xd3, 0x6c, 0x52, 0xef, 0x80, 0x92, 0x1b, 0xd0, 0xbf, 0xb3, 0xb5, 0xb3, 0x2d, 0xac, + 0xa4, 0xd2, 0x01, 0x80, 0x81, 0x14, 0x8e, 0x8d, 0x18, 0xe4, 0x21, 0x9c, 0x97, 0x3e, 0xb3, 0xaa, + 0x48, 0x8c, 0xd0, 0xe5, 0xce, 0x1e, 0xb8, 0x69, 0x3a, 0xf2, 0x8e, 0x30, 0x89, 0xfc, 0xa4, 0xed, + 0x06, 0xb4, 0x81, 0x96, 0x9f, 0xf8, 0x36, 0x5d, 0x2b, 0xb1, 0x75, 0x34, 0xfe, 0x06, 0xd7, 0xfa, + 0xc3, 0x02, 0xcc, 0xe4, 0x58, 0x4d, 0xc8, 0x5b, 0x46, 0x77, 0x26, 0xb5, 0xee, 0x48, 0x94, 0xd5, + 0x1e, 0xd1, 0x9f, 0x45, 0xcd, 0x91, 0xb8, 0xef, 0x0c, 0x8e, 0xc4, 0xab, 0x3d, 0xb1, 0xf3, 0xf0, + 0x02, 0xc0, 0xb0, 0x84, 0x5b, 0xe7, 0x60, 0xdc, 0x90, 0x9b, 0x65, 0xc1, 0x98, 0x5e, 0x33, 0x1b, + 0x9c, 0x45, 0xbf, 0xa1, 0x06, 0x87, 0xfd, 0x6d, 0xfd, 0x41, 0x01, 0xa6, 0xb0, 0x8b, 0x07, 0x2e, + 0x5b, 0xfa, 0x62, 0x09, 0xcd, 0x1b, 0x3d, 0x99, 0x33, 0x7a, 0x92, 0xc0, 0x55, 0x5d, 0xfa, 0x30, + 0xd5, 0xa5, 0xb9, 0xac, 0x2e, 0xe1, 0xf4, 0x76, 0x7d, 0xcf, 0xe8, 0x89, 0x76, 0x15, 0xf5, 0x47, + 0x05, 0x98, 0xd4, 0xda, 0xa4, 0xda, 0x7f, 0xd7, 0x68, 0xd2, 0xa5, 0x8c, 0x26, 0xa5, 0x84, 0xbc, + 0x90, 0x6a, 0xd1, 0x6b, 0x9d, 0x5a, 0xd4, 0x55, 0xc6, 0xff, 0xb1, 0x00, 0xd3, 0x99, 0x32, 0x20, + 0x17, 0x98, 0x6e, 0x5b, 0x0f, 0x68, 0x24, 0xc4, 0x2b, 0x7e, 0x31, 0xf8, 0x5a, 0x18, 0xb6, 0x69, + 0x20, 0xbe, 0x73, 0xf1, 0x8b, 0xbc, 0x06, 0xe3, 0xdb, 0x34, 0x70, 0xfd, 0x06, 0x77, 0x31, 0xe7, + 0xbe, 0x9b, 0xe3, 0xb6, 0x09, 0x24, 0x73, 0x30, 0x52, 0x69, 0x1e, 0xf8, 0x81, 0x1b, 0x1d, 0xf2, + 0xdb, 0xc0, 0x11, 0x3b, 0x06, 0x30, 0xde, 0x4b, 0xee, 0x01, 0xbf, 0xd4, 0x60, 0xc4, 0xe2, 0x17, + 0x5b, 0x5c, 0xa4, 0xb5, 0x70, 0x90, 0x2f, 0x2e, 0xd2, 0x14, 0x78, 0x01, 0x06, 0x3f, 0xb7, 0x71, + 0x12, 0x60, 0xe4, 0x03, 0x5b, 0xfc, 0x22, 0x13, 0xe8, 0x24, 0x8c, 0xaf, 0x12, 0xd0, 0x39, 0xf8, + 0x43, 0x98, 0xca, 0x92, 0x6b, 0xd6, 0x14, 0x12, 0xb4, 0xbd, 0x8a, 0xf6, 0x2b, 0x98, 0xac, 0x34, + 0x1a, 0x1b, 0xf7, 0x2b, 0xdc, 0xe7, 0x40, 0x8c, 0x2a, 0xff, 0x78, 0xb8, 0xbd, 0x4e, 0xa8, 0x6c, + 0xfd, 0x6b, 0x9e, 0x1b, 0xd9, 0x93, 0xcb, 0xdf, 0xba, 0x61, 0xe4, 0x7a, 0x07, 0x9a, 0x51, 0xd1, + 0xbe, 0xb0, 0x49, 0x9f, 0x65, 0x4c, 0x01, 0xb6, 0x9b, 0x9a, 0xbc, 0x39, 0x3c, 0x83, 0xf9, 0x94, + 0xc6, 0x36, 0x5e, 0x4a, 0x66, 0x4c, 0xbe, 0x71, 0x41, 0x5f, 0xa5, 0xfe, 0xc4, 0xfa, 0x01, 0x5c, + 0xe0, 0x4b, 0x5a, 0xa7, 0xc6, 0x8b, 0x66, 0xeb, 0x36, 0x50, 0xeb, 0x7d, 0x69, 0xa5, 0xe8, 0xd8, + 0x32, 0x7b, 0xcc, 0x68, 0x0b, 0x56, 0xf9, 0x9f, 0x0a, 0x30, 0x9b, 0x20, 0xad, 0x3e, 0xf7, 0xea, + 0x72, 0x3d, 0x7d, 0x23, 0xe9, 0x84, 0x8d, 0x7a, 0x00, 0x37, 0xfe, 0xb9, 0x0d, 0xe5, 0x87, 0x4d, + 0x6e, 0x03, 0x70, 0x62, 0x6d, 0xfb, 0x46, 0xd3, 0xb7, 0x70, 0xb2, 0xc1, 0x0d, 0x5c, 0x43, 0x21, + 0x6d, 0xc8, 0x92, 0xbb, 0xf8, 0x46, 0xba, 0xd9, 0x86, 0x31, 0xda, 0x07, 0x15, 0xe4, 0xb5, 0x1c, + 0x23, 0x71, 0x16, 0x7f, 0xeb, 0xf7, 0xfa, 0x60, 0x46, 0x1f, 0xc0, 0x17, 0xe9, 0xeb, 0x36, 0x8c, + 0x2e, 0xfa, 0x5e, 0x44, 0xbf, 0x8d, 0xb4, 0x68, 0x0b, 0x44, 0xdd, 0xb4, 0xab, 0x12, 0xa1, 0x3a, + 0x72, 0x40, 0x8d, 0xe9, 0x31, 0x86, 0xb3, 0x60, 0x8c, 0x48, 0x16, 0x61, 0x7c, 0x93, 0x3e, 0x4b, + 0x09, 0x10, 0x1d, 0x16, 0x3d, 0xfa, 0xac, 0xa6, 0x09, 0x51, 0xf7, 0x22, 0x33, 0x68, 0xc8, 0x3e, + 0x4c, 0xc8, 0xc9, 0x65, 0x08, 0x73, 0x56, 0xdf, 0x55, 0xcc, 0xe9, 0xcc, 0xa3, 0x11, 0xb0, 0x1a, + 0x72, 0x64, 0x98, 0xe0, 0xc8, 0xba, 0xce, 0x6b, 0xe4, 0x0f, 0xec, 0xcd, 0x6d, 0x4b, 0x2b, 0x31, + 0xdc, 0x41, 0x93, 0x0f, 0xeb, 0x75, 0x16, 0xd6, 0x36, 0x94, 0xd2, 0xe3, 0x21, 0x6a, 0x7b, 0x07, + 0x06, 0x39, 0x54, 0xa8, 0x01, 0x32, 0x90, 0x8e, 0xc2, 0xe6, 0xe7, 0x74, 0x5e, 0x8d, 0x2d, 0x70, + 0xad, 0x55, 0xb4, 0x9d, 0x28, 0x1c, 0xa5, 0x88, 0xdd, 0x49, 0x0e, 0x2f, 0x7a, 0xda, 0xca, 0xe1, + 0xd5, 0xfd, 0x4c, 0xe4, 0xe3, 0x82, 0x45, 0x34, 0x3f, 0xe9, 0x9c, 0x44, 0xc3, 0x6e, 0xc2, 0x90, + 0x00, 0x25, 0x42, 0xfc, 0xc4, 0x9f, 0x9f, 0x44, 0xb0, 0x3e, 0x84, 0x8b, 0x68, 0x0b, 0x73, 0xbd, + 0x83, 0x26, 0xdd, 0x0d, 0x8d, 0xe7, 0x01, 0xdd, 0x3e, 0xeb, 0x8f, 0x61, 0x36, 0x8b, 0xb6, 0xeb, + 0x97, 0xcd, 0x83, 0x6e, 0xfc, 0x5e, 0x1f, 0x4c, 0xad, 0x85, 0xba, 0x32, 0xa1, 0x02, 0x6f, 0x64, + 0x04, 0x83, 0x40, 0x99, 0xac, 0xf6, 0x64, 0x05, 0x7b, 0x78, 0x47, 0x7b, 0xf9, 0xd8, 0xdb, 0x29, + 0xca, 0x03, 0xdb, 0xb6, 0xd4, 0xdb, 0xc7, 0x37, 0xa0, 0x7f, 0x93, 0x2d, 0xd5, 0x7d, 0x62, 0xec, + 0x38, 0x05, 0x03, 0xe1, 0xcb, 0x43, 0xb6, 0x45, 0xb2, 0x1f, 0xe4, 0x7e, 0xea, 0x7d, 0x63, 0x7f, + 0xf7, 0x28, 0x06, 0xab, 0x3d, 0xa9, 0xa7, 0x8e, 0xef, 0xc1, 0x68, 0xa5, 0x71, 0xc4, 0x3d, 0x02, + 0x7d, 0x2f, 0xf1, 0x59, 0x6a, 0x25, 0xab, 0x3d, 0xb6, 0x8e, 0xc8, 0x4e, 0xb8, 0x95, 0x56, 0x0b, + 0x37, 0xaa, 0xac, 0xc8, 0x0e, 0xab, 0x3d, 0xdc, 0xc1, 0xfe, 0x07, 0xda, 0xab, 0x5d, 0xf1, 0x78, + 0x26, 0xef, 0xd1, 0xf1, 0x6a, 0x8f, 0x1d, 0xe3, 0x2e, 0x0c, 0xc3, 0xe0, 0x8e, 0x13, 0x1c, 0xd0, + 0xc8, 0xfa, 0x0a, 0x66, 0x85, 0x77, 0x0b, 0x37, 0x19, 0xa2, 0x0f, 0x4c, 0x18, 0x3b, 0x30, 0x75, + 0xf2, 0x48, 0xb9, 0x02, 0x80, 0x07, 0x84, 0x35, 0xaf, 0x41, 0xbf, 0x15, 0xee, 0x75, 0x1a, 0xc4, + 0x7a, 0x17, 0x46, 0x94, 0x68, 0x51, 0x0b, 0xd6, 0x76, 0x49, 0x14, 0xf3, 0x94, 0xf1, 0x12, 0x54, + 0x3e, 0xff, 0xbc, 0x68, 0x08, 0x4d, 0x04, 0x79, 0xe1, 0x6a, 0xb3, 0x0b, 0xd3, 0x89, 0xd9, 0x13, + 0xc7, 0x10, 0x50, 0x8a, 0x2b, 0xf7, 0xff, 0x53, 0xbf, 0x93, 0x7a, 0x6d, 0xef, 0xa9, 0xf4, 0x5a, + 0xeb, 0x1f, 0xf5, 0xe2, 0x89, 0x2b, 0x25, 0x8f, 0x84, 0xf1, 0x4a, 0x37, 0xa0, 0x2d, 0xc0, 0x08, + 0xf6, 0x7e, 0x49, 0xbe, 0x19, 0xeb, 0xec, 0x9c, 0x31, 0xfc, 0xf3, 0xe3, 0x72, 0x0f, 0x7a, 0x64, + 0xc4, 0x64, 0xe4, 0x13, 0x18, 0x5a, 0xf6, 0x1a, 0xc8, 0xa1, 0xef, 0x0c, 0x1c, 0x24, 0x11, 0x1b, + 0x13, 0x6c, 0xf2, 0x0e, 0xfb, 0xf6, 0xb9, 0xcd, 0xc3, 0xd6, 0x20, 0xf1, 0xd1, 0x6f, 0x20, 0xef, + 0xe8, 0x37, 0x98, 0x38, 0xfa, 0x59, 0x30, 0xb0, 0x15, 0x34, 0xc4, 0x04, 0x9b, 0x98, 0x1f, 0x13, + 0x82, 0x43, 0x98, 0xcd, 0x8b, 0xac, 0xff, 0x52, 0x80, 0x99, 0x15, 0x1a, 0x65, 0xce, 0x21, 0x43, + 0x2a, 0x85, 0x97, 0x96, 0x4a, 0xef, 0x8b, 0x48, 0x45, 0xf5, 0xba, 0x2f, 0xaf, 0xd7, 0xfd, 0x79, + 0xbd, 0x1e, 0xc8, 0xef, 0xf5, 0x0a, 0x0c, 0xf2, 0xae, 0xb2, 0xe3, 0xed, 0x5a, 0x44, 0x8f, 0xe2, + 0xe3, 0xad, 0xee, 0x5a, 0x66, 0xf3, 0x32, 0xa6, 0x81, 0xae, 0x3b, 0xa1, 0x7e, 0xbc, 0x15, 0x3f, + 0xad, 0x1f, 0xe3, 0x6b, 0xd3, 0x75, 0xbf, 0xfe, 0x44, 0x33, 0x93, 0x0e, 0xf1, 0x2f, 0x34, 0x69, + 0x56, 0x67, 0x58, 0xbc, 0xc4, 0x96, 0x18, 0xe4, 0x2a, 0x8c, 0xae, 0x79, 0xf7, 0xfd, 0xa0, 0x4e, + 0xb7, 0xbc, 0x26, 0xe7, 0x3e, 0x6c, 0xeb, 0x20, 0x61, 0x3e, 0x10, 0x35, 0xc4, 0x67, 0x72, 0x04, + 0x24, 0xce, 0xe4, 0x0c, 0xb6, 0x37, 0x6f, 0xf3, 0x32, 0x61, 0x9d, 0x60, 0x7f, 0x77, 0x3a, 0xce, + 0xaa, 0x73, 0x6f, 0x37, 0xc4, 0x7d, 0xb8, 0x68, 0xd3, 0x56, 0xd3, 0x61, 0xca, 0xe0, 0x91, 0xcf, + 0xf1, 0x55, 0x9f, 0xaf, 0x66, 0xbc, 0x14, 0x33, 0x1d, 0x0d, 0x54, 0x93, 0x7b, 0x3b, 0x34, 0xf9, + 0x08, 0xae, 0xad, 0xd0, 0xc8, 0x5c, 0x89, 0x63, 0x23, 0xac, 0xe8, 0xfc, 0x2a, 0x0c, 0x87, 0xa6, + 0x01, 0xf9, 0x8a, 0xbc, 0xb7, 0xc8, 0x22, 0xdc, 0xbb, 0x27, 0xaf, 0x58, 0x04, 0x1f, 0xf5, 0x97, + 0xf5, 0x29, 0x94, 0xf3, 0xaa, 0x3b, 0x9d, 0x1f, 0xa8, 0x0b, 0x57, 0xf3, 0x19, 0x88, 0xe6, 0x2e, + 0x83, 0x34, 0x36, 0x8b, 0x4f, 0xa8, 0x5b, 0x6b, 0x4d, 0xfb, 0xb4, 0xf8, 0xc3, 0x5a, 0x90, 0x1e, + 0x71, 0x2f, 0xd1, 0xdc, 0x1a, 0xde, 0xe3, 0x9a, 0x0c, 0x62, 0xb9, 0x56, 0x60, 0x58, 0xc2, 0x84, + 0x5c, 0x67, 0x32, 0x5b, 0x2a, 0x05, 0xda, 0x90, 0x0c, 0x14, 0x99, 0xf5, 0x63, 0x79, 0xa7, 0x61, + 0x52, 0x9c, 0xee, 0xe9, 0xe4, 0x69, 0x2e, 0x31, 0x2c, 0x1f, 0x2e, 0x9a, 0xbc, 0x75, 0x5b, 0x75, + 0x51, 0xb3, 0x55, 0x73, 0x13, 0xf5, 0x55, 0xd3, 0x76, 0xda, 0x2b, 0xe6, 0x65, 0x0c, 0x22, 0x57, + 0x74, 0x8b, 0xf4, 0x58, 0xfa, 0x2d, 0xe6, 0x1d, 0x98, 0xcd, 0xaa, 0x50, 0x3b, 0x40, 0x2a, 0xb3, + 0xa7, 0x50, 0x94, 0x96, 0xe0, 0x8a, 0x0c, 0x8e, 0xe4, 0xfb, 0x51, 0x18, 0x05, 0x4e, 0xab, 0x5a, + 0x0f, 0xdc, 0x56, 0x4c, 0x65, 0xc1, 0x20, 0x87, 0x08, 0x49, 0xf0, 0xfb, 0x21, 0x8e, 0x23, 0x4a, + 0xac, 0xdf, 0x2e, 0x80, 0x65, 0x38, 0x2f, 0xe1, 0x38, 0x6f, 0x07, 0xfe, 0x53, 0xb7, 0xa1, 0xdd, + 0xc9, 0xbc, 0x65, 0xd8, 0x03, 0xf9, 0x5b, 0xba, 0xa4, 0xdf, 0xb4, 0x58, 0x33, 0xef, 0x24, 0x6c, + 0x74, 0x5c, 0x63, 0x45, 0x87, 0x26, 0x33, 0x0a, 0x8d, 0xb2, 0xdd, 0xfd, 0xb7, 0x02, 0x5c, 0xef, + 0xd8, 0x06, 0xd1, 0x9f, 0x7d, 0x28, 0x26, 0xcb, 0xc4, 0x0c, 0x2a, 0x6b, 0xce, 0x0c, 0x69, 0x0e, + 0x7b, 0x77, 0xb9, 0x73, 0xb6, 0x74, 0xfa, 0x69, 0x29, 0xce, 0x29, 0x7e, 0x67, 0x6f, 0x3d, 0xf9, + 0x00, 0x60, 0xc7, 0x8f, 0x9c, 0xe6, 0x22, 0x5a, 0x0e, 0xfa, 0x62, 0x47, 0xfb, 0x88, 0x41, 0x6b, + 0xc9, 0xe8, 0x06, 0x1a, 0xb2, 0xf5, 0x19, 0x7e, 0xd7, 0xd9, 0x8d, 0x3e, 0xdd, 0xa7, 0xb6, 0x08, + 0xd7, 0x13, 0x17, 0xea, 0x2f, 0xc0, 0x24, 0x82, 0x69, 0x26, 0x7e, 0xa6, 0xb4, 0xaf, 0x04, 0x7e, + 0xbb, 0xf5, 0xab, 0x19, 0xf5, 0xbf, 0x28, 0x70, 0x0f, 0x47, 0xbd, 0x5a, 0x31, 0xd0, 0x8b, 0x00, + 0x31, 0x34, 0xe1, 0xe9, 0xae, 0x0a, 0xf6, 0xee, 0xf2, 0xb3, 0x3a, 0x9a, 0xda, 0x0f, 0x38, 0x03, + 0x8d, 0xec, 0x57, 0x3b, 0x92, 0xf7, 0xf0, 0x16, 0x5d, 0xd5, 0x7e, 0x3a, 0xb9, 0xbf, 0x27, 0x0d, + 0x27, 0x67, 0xa4, 0x3b, 0x84, 0x29, 0xb6, 0x02, 0x54, 0xda, 0xd1, 0xa1, 0x1f, 0xb8, 0x91, 0x7c, + 0xb3, 0x41, 0xb6, 0xc5, 0xa3, 0x70, 0x4e, 0xf5, 0xf1, 0x2f, 0x8f, 0xcb, 0xef, 0x9f, 0x25, 0x6c, + 0xa5, 0xe4, 0xb9, 0xa3, 0x1e, 0x92, 0x5b, 0x33, 0xd0, 0xb7, 0x68, 0xaf, 0xe3, 0x82, 0x67, 0xaf, + 0xab, 0x05, 0xcf, 0x5e, 0xb7, 0xfe, 0xb6, 0x17, 0xca, 0x3c, 0x6c, 0x05, 0x3a, 0x5f, 0xc4, 0xe6, + 0x0e, 0xcd, 0x9b, 0xe3, 0xb4, 0x96, 0x89, 0x44, 0x58, 0x8a, 0xde, 0xd3, 0x84, 0xa5, 0xf8, 0x0d, + 0xc8, 0xb1, 0x75, 0x9d, 0xc2, 0x7c, 0xf0, 0xe6, 0xc9, 0x71, 0xf9, 0x7a, 0x6c, 0x3e, 0xe0, 0xa5, + 0x59, 0x76, 0x84, 0x9c, 0x2a, 0xd2, 0x86, 0x8f, 0xfe, 0x17, 0x30, 0x7c, 0xdc, 0x81, 0x21, 0x3c, + 0xcc, 0xac, 0x6d, 0x0b, 0x77, 0x48, 0x9c, 0x9e, 0x18, 0xe5, 0xa6, 0xe6, 0xea, 0xd1, 0xec, 0x24, + 0x9a, 0xf5, 0xff, 0xf4, 0xc2, 0xd5, 0x7c, 0x99, 0x8b, 0xb6, 0x2d, 0x01, 0xc4, 0x6e, 0x1f, 0x9d, + 0xdc, 0x4c, 0xf0, 0xdb, 0x79, 0x46, 0xf7, 0x95, 0x9b, 0x97, 0x46, 0xc7, 0x74, 0x1f, 0xf9, 0x42, + 0x38, 0x71, 0xc7, 0x60, 0x3c, 0x1c, 0x16, 0xc1, 0x58, 0x05, 0xc8, 0x08, 0xc6, 0x2a, 0x60, 0x64, + 0x1f, 0x66, 0xb6, 0x03, 0xf7, 0xa9, 0x13, 0xd1, 0x87, 0xf4, 0x39, 0x7f, 0x41, 0xb3, 0x2c, 0x9e, + 0xcd, 0xf0, 0x67, 0xdf, 0x37, 0x4e, 0x8e, 0xcb, 0xaf, 0xb5, 0x38, 0x0a, 0x06, 0xdc, 0xe2, 0x6f, + 0x16, 0x6b, 0xe9, 0x97, 0x34, 0x79, 0x8c, 0xac, 0x7f, 0x59, 0x80, 0x4b, 0xa8, 0x96, 0x0b, 0x7b, + 0xad, 0xac, 0xfc, 0x85, 0xbc, 0x0d, 0xf5, 0x0e, 0x8a, 0xb9, 0x88, 0xde, 0x86, 0xc6, 0x0b, 0x6a, + 0xdb, 0x40, 0x23, 0x6b, 0x30, 0x2a, 0x7e, 0xe3, 0xf7, 0xd7, 0x87, 0x07, 0x82, 0x69, 0x6d, 0xc1, + 0xc2, 0xa9, 0xce, 0x6d, 0x4c, 0x38, 0xb1, 0x05, 0x33, 0x7c, 0x68, 0x68, 0xeb, 0xb4, 0xd6, 0x2f, + 0x7a, 0x61, 0x6e, 0x8f, 0x06, 0xee, 0xe3, 0xe7, 0x39, 0x9d, 0xd9, 0x82, 0x29, 0x09, 0xe2, 0xa1, + 0x2b, 0x8c, 0x4f, 0x8c, 0x87, 0x63, 0x94, 0x4d, 0x15, 0xb1, 0x2f, 0xe4, 0x17, 0x97, 0x49, 0x78, + 0x06, 0x3f, 0xc2, 0x77, 0x60, 0x38, 0x11, 0x3c, 0x06, 0xc7, 0x5f, 0x7e, 0xa1, 0xf1, 0x50, 0xad, + 0xf6, 0xd8, 0x0a, 0x93, 0xfc, 0x4e, 0xfe, 0xc5, 0x8f, 0xb0, 0x99, 0x74, 0x33, 0x9c, 0xe2, 0x07, + 0xcb, 0x3e, 0x56, 0x47, 0x2b, 0xcd, 0xf8, 0x60, 0x57, 0x7b, 0xec, 0xbc, 0x9a, 0x16, 0x46, 0x61, + 0xa4, 0x82, 0x97, 0x59, 0xec, 0xe4, 0xfe, 0x5f, 0x7b, 0xe1, 0x8a, 0x7c, 0x0d, 0x93, 0x23, 0xe6, + 0x2f, 0x60, 0x46, 0x82, 0x2a, 0x2d, 0xa6, 0x30, 0xd0, 0x86, 0x29, 0x69, 0x1e, 0x12, 0x55, 0x4a, + 0xda, 0x11, 0x38, 0xb1, 0xb0, 0xf3, 0xc8, 0x5f, 0x8d, 0xd9, 0xf4, 0x93, 0xac, 0x50, 0x3e, 0x68, + 0xbe, 0xd4, 0xd7, 0x4c, 0x43, 0x34, 0xc6, 0xfa, 0xd9, 0x48, 0x99, 0x5d, 0xfb, 0x5f, 0xd6, 0xec, + 0xba, 0xda, 0x93, 0x34, 0xbc, 0x2e, 0x4c, 0xc0, 0xd8, 0x26, 0x7d, 0x16, 0xcb, 0xfd, 0x7f, 0x2f, + 0x24, 0x42, 0x14, 0x30, 0x0d, 0x83, 0xc7, 0x2a, 0x28, 0xc4, 0xd1, 0x60, 0x30, 0x44, 0x81, 0xae, + 0x61, 0x70, 0xd4, 0x35, 0x18, 0xe2, 0x37, 0xbc, 0x8d, 0x53, 0x9c, 0xf0, 0xd5, 0xb3, 0x16, 0xfe, + 0xd6, 0xb0, 0xc1, 0x0f, 0xfb, 0x82, 0xde, 0x7a, 0x08, 0xd7, 0x84, 0xe3, 0xb3, 0x39, 0xf8, 0x58, + 0xd1, 0x19, 0xb7, 0x2f, 0xcb, 0x81, 0x2b, 0x2b, 0x34, 0xb9, 0xf4, 0x18, 0xcf, 0x7e, 0x3e, 0x85, + 0x73, 0x06, 0x5c, 0x71, 0x44, 0xad, 0x54, 0xcd, 0x21, 0xc5, 0x3a, 0x89, 0x6d, 0x5d, 0xcd, 0xaa, + 0x42, 0x6f, 0xac, 0x45, 0x31, 0xb6, 0x69, 0x10, 0xdf, 0xcd, 0x85, 0x67, 0x58, 0xf5, 0x6e, 0x68, + 0xdf, 0x35, 0x5f, 0xf1, 0x78, 0x04, 0x3a, 0xb9, 0xf3, 0xaa, 0x52, 0x6b, 0xdc, 0xb8, 0x44, 0xb0, + 0x26, 0x60, 0x4c, 0x16, 0x35, 0x69, 0x18, 0x5a, 0x3f, 0x1b, 0x00, 0x4b, 0x08, 0x36, 0xeb, 0xda, + 0x5a, 0xca, 0x63, 0x3f, 0xd5, 0x58, 0xb1, 0x51, 0x5d, 0xd0, 0x43, 0x6a, 0xc6, 0xa5, 0x7c, 0xe6, + 0xa1, 0x9e, 0x57, 0x8f, 0xa1, 0xc6, 0xcc, 0x4b, 0xf5, 0xfe, 0xeb, 0x9c, 0x65, 0x92, 0x7f, 0x6c, + 0xaf, 0x9f, 0x1c, 0x97, 0xaf, 0xe5, 0x2c, 0x93, 0x06, 0xdf, 0xec, 0x25, 0xd3, 0x36, 0xef, 0x52, + 0xfa, 0x5e, 0xe4, 0x2e, 0x85, 0x7d, 0x91, 0xfa, 0x6d, 0xca, 0xae, 0x29, 0x4b, 0xf1, 0x3d, 0xca, + 0xbb, 0x70, 0xbd, 0x48, 0x44, 0x0a, 0xd0, 0x20, 0x06, 0x57, 0x83, 0x0d, 0x71, 0xa1, 0xa8, 0xd9, + 0x2c, 0x17, 0x0f, 0x69, 0xfd, 0x89, 0x30, 0x32, 0xcb, 0x9b, 0xe0, 0x2c, 0x63, 0x3b, 0x0f, 0xaf, + 0xcc, 0xbf, 0x73, 0x5e, 0x50, 0xab, 0x33, 0x52, 0x3d, 0xd2, 0x41, 0x92, 0x2d, 0xf9, 0x29, 0x4c, + 0xaa, 0xa1, 0x4e, 0xf8, 0x2d, 0x8d, 0xce, 0xbf, 0x16, 0x47, 0xe2, 0x3c, 0x7a, 0xec, 0xdc, 0x7a, + 0x7a, 0xf7, 0x56, 0x06, 0x2e, 0x7f, 0x40, 0x5f, 0x97, 0x05, 0x9a, 0xd3, 0x92, 0x7e, 0x43, 0x96, + 0x45, 0xa8, 0xdd, 0x83, 0xff, 0xdf, 0xca, 0xcb, 0x9e, 0xe9, 0x0b, 0x6e, 0x93, 0x8a, 0xe7, 0x32, + 0x72, 0xf6, 0xe5, 0xdc, 0xe1, 0x15, 0xbe, 0xe3, 0x3b, 0xbc, 0x3f, 0xed, 0x95, 0x6f, 0x0b, 0xd2, + 0xd7, 0xa8, 0x67, 0xbe, 0xca, 0xcb, 0xec, 0xc1, 0xa9, 0x36, 0xd3, 0xcc, 0xc6, 0x91, 0x05, 0x79, + 0x11, 0xaa, 0x82, 0x4a, 0x4d, 0xa8, 0x4b, 0x85, 0xb8, 0xc0, 0xb8, 0x1b, 0x45, 0xd5, 0x45, 0xa3, + 0x4a, 0xde, 0xb2, 0xf5, 0xbd, 0xfc, 0x2d, 0xdb, 0xef, 0x02, 0x9c, 0xdf, 0x76, 0x0e, 0x5c, 0x8f, + 0x2d, 0xda, 0x36, 0x0d, 0xfd, 0x76, 0x50, 0xa7, 0xa4, 0x02, 0x13, 0xa6, 0xe3, 0x68, 0x17, 0xb7, + 0x58, 0xb6, 0x2f, 0x99, 0x30, 0x32, 0x0f, 0x23, 0xea, 0xb1, 0xaa, 0xd8, 0x4c, 0x32, 0x1e, 0xb1, + 0xae, 0xf6, 0xd8, 0x31, 0x1a, 0xf9, 0xc0, 0xb8, 0x18, 0x3a, 0xa7, 0xde, 0x5d, 0x23, 0xee, 0x3c, + 0xf7, 0xec, 0xf3, 0xfc, 0x86, 0xb9, 0x21, 0xf2, 0x4b, 0x8c, 0x1f, 0xa7, 0xee, 0x8a, 0x06, 0x8c, + 0x16, 0xa7, 0xec, 0x5e, 0xa8, 0x0b, 0xe4, 0xc6, 0xb7, 0xce, 0xb8, 0x45, 0xfa, 0x0a, 0x46, 0x1f, + 0xb6, 0xf7, 0xa9, 0xbc, 0x15, 0x1b, 0x14, 0xfb, 0x63, 0xd2, 0x1d, 0x5a, 0x94, 0xef, 0xdd, 0xe3, + 0x63, 0xf0, 0xa4, 0xbd, 0x4f, 0xd3, 0x81, 0xd3, 0xd9, 0xc2, 0xa4, 0x31, 0x23, 0x87, 0x50, 0x4c, + 0x7a, 0x2e, 0x8b, 0x9b, 0xa4, 0x0e, 0xfe, 0xd6, 0x18, 0x03, 0x44, 0x0b, 0xcf, 0x9e, 0x0c, 0x5d, + 0xbb, 0xda, 0x63, 0xa7, 0xb8, 0x92, 0xdf, 0x84, 0xe9, 0x4c, 0xab, 0xa3, 0x7a, 0x7b, 0xd5, 0xd9, + 0xa0, 0x89, 0x8b, 0x7a, 0x42, 0x6a, 0xf2, 0xa1, 0x97, 0x51, 0x73, 0x76, 0x2d, 0xa4, 0x01, 0xe7, + 0x12, 0x1e, 0xb9, 0x22, 0x07, 0x45, 0xbe, 0x8f, 0x2f, 0x6e, 0x4c, 0x32, 0x96, 0x6a, 0x66, 0x5d, + 0x49, 0x96, 0x64, 0x1d, 0x46, 0xd4, 0x71, 0x1f, 0x9f, 0x75, 0x65, 0x9b, 0x36, 0x4a, 0x27, 0xc7, + 0xe5, 0xa9, 0xd8, 0xb4, 0x61, 0xf0, 0x8c, 0x19, 0x90, 0xdf, 0x82, 0x6b, 0x6a, 0x8a, 0x6e, 0x05, + 0xd9, 0x46, 0x20, 0x11, 0xfe, 0xfd, 0x66, 0x72, 0x86, 0xe7, 0xe1, 0xef, 0xdd, 0x5d, 0xe8, 0x2d, + 0x15, 0x56, 0x7b, 0xec, 0xee, 0xac, 0xc9, 0xcf, 0x0a, 0x70, 0x21, 0xa7, 0xd6, 0x31, 0xac, 0xb5, + 0xab, 0x65, 0x0e, 0x95, 0x7b, 0x7c, 0x6f, 0xe4, 0x36, 0xe2, 0x77, 0x79, 0xd2, 0x44, 0x67, 0xf4, + 0x3b, 0xa7, 0x26, 0xf2, 0x00, 0x20, 0x0e, 0x8f, 0x8c, 0x11, 0xac, 0x32, 0x3e, 0x50, 0x14, 0x68, + 0x56, 0x14, 0x65, 0x26, 0xd0, 0x03, 0x15, 0x45, 0xf6, 0x6d, 0x18, 0xc4, 0xf3, 0x76, 0x58, 0x1a, + 0x47, 0x8d, 0x14, 0xc3, 0xe8, 0xe0, 0xa9, 0x5c, 0xdf, 0x83, 0x04, 0x0e, 0x59, 0x65, 0x9a, 0x1d, + 0xee, 0x81, 0x52, 0x13, 0x13, 0x41, 0xb7, 0xc4, 0xe9, 0x80, 0x17, 0xc9, 0x50, 0x1b, 0x46, 0xce, + 0x00, 0x93, 0x6c, 0x01, 0x60, 0x38, 0x10, 0x2b, 0xdc, 0x83, 0xfe, 0xe1, 0xfe, 0xe2, 0x00, 0xff, + 0x08, 0xa5, 0xdb, 0xf8, 0xef, 0x0e, 0xf3, 0x37, 0xa6, 0xbb, 0x9e, 0xfb, 0xd8, 0x8d, 0x17, 0x43, + 0xdd, 0x52, 0x17, 0x27, 0xef, 0x11, 0x7a, 0x74, 0x4e, 0x9a, 0x1e, 0x65, 0xd4, 0xeb, 0xed, 0x6a, + 0xd4, 0xbb, 0xa7, 0x5d, 0x7f, 0x69, 0x71, 0x2a, 0xb9, 0xbe, 0x64, 0x1a, 0xd1, 0xe2, 0x7b, 0xb1, + 0x6f, 0x60, 0x10, 0x43, 0x4b, 0xf2, 0xbb, 0xc5, 0xd1, 0xf9, 0x5b, 0x62, 0x0b, 0xe8, 0xd0, 0x7c, + 0x1e, 0x8b, 0x52, 0xbc, 0x1b, 0xe7, 0x12, 0x47, 0x80, 0x21, 0x71, 0x84, 0x90, 0x1d, 0x98, 0xdc, + 0x0e, 0x68, 0x43, 0x38, 0x2f, 0xb7, 0x02, 0x61, 0xe8, 0xe0, 0x26, 0x14, 0x54, 0x1f, 0x5a, 0xb2, + 0xb8, 0x46, 0x55, 0xb9, 0xbe, 0x39, 0x67, 0x90, 0x93, 0x65, 0x98, 0xa8, 0x52, 0x27, 0xa8, 0x1f, + 0x3e, 0xa4, 0xcf, 0x99, 0xea, 0x64, 0xe4, 0xab, 0x08, 0xb1, 0x84, 0xf5, 0x17, 0x8b, 0x74, 0x47, + 0x13, 0x93, 0x88, 0x7c, 0x06, 0x83, 0x55, 0x3f, 0x88, 0x16, 0x9e, 0x8b, 0x05, 0x52, 0xde, 0x3e, + 0x71, 0xe0, 0xc2, 0x45, 0x99, 0xb3, 0x23, 0xf4, 0x83, 0xa8, 0xb6, 0x6f, 0xc4, 0x65, 0xe2, 0x28, + 0xe4, 0x39, 0x4c, 0x99, 0x8b, 0x93, 0xf0, 0xa9, 0x1d, 0x16, 0x2a, 0x5b, 0xd6, 0x0a, 0xc8, 0x51, + 0x16, 0x6e, 0x08, 0xee, 0x57, 0x93, 0x4b, 0xe0, 0x63, 0x2c, 0xd7, 0x43, 0x25, 0x65, 0xd1, 0x93, + 0x0d, 0x4c, 0x76, 0xc2, 0x7b, 0x54, 0x09, 0xb9, 0x2f, 0xee, 0x48, 0x1c, 0xf9, 0xab, 0x8d, 0x0b, + 0x1c, 0x4a, 0xc2, 0x09, 0x93, 0x19, 0x72, 0xec, 0x14, 0x29, 0xd9, 0x86, 0xf3, 0xbb, 0x21, 0xdd, + 0x0e, 0xe8, 0x53, 0x97, 0x3e, 0x93, 0xfc, 0x20, 0x0e, 0x93, 0xc4, 0xf8, 0xb5, 0x78, 0x69, 0x16, + 0xc3, 0x34, 0x31, 0xf9, 0x00, 0x60, 0xdb, 0xf5, 0x3c, 0xda, 0xc0, 0x2b, 0xcc, 0x51, 0x64, 0x85, + 0xe6, 0xd9, 0x16, 0x42, 0x6b, 0xbe, 0xd7, 0xd4, 0x45, 0xaa, 0x21, 0x93, 0x05, 0x18, 0x5f, 0xf3, + 0xea, 0xcd, 0xb6, 0x70, 0x35, 0x08, 0x71, 0x71, 0x12, 0xe1, 0xdb, 0x5c, 0x5e, 0x50, 0x4b, 0x7d, + 0xe4, 0x26, 0x09, 0x79, 0x08, 0x44, 0x00, 0xc4, 0xac, 0x75, 0xf6, 0x9b, 0x54, 0x7c, 0xee, 0x68, + 0x76, 0x91, 0x8c, 0x70, 0xba, 0x1b, 0x51, 0xd1, 0x52, 0x64, 0xb3, 0x1f, 0xc0, 0xa8, 0x36, 0xe7, + 0x33, 0x02, 0x21, 0x4c, 0xe9, 0x81, 0x10, 0x46, 0xf4, 0x80, 0x07, 0xff, 0x5f, 0x01, 0xe6, 0xb2, + 0xbf, 0x25, 0xa1, 0xcc, 0x6d, 0xc1, 0x88, 0x02, 0xaa, 0xa7, 0x2f, 0xf2, 0x18, 0x91, 0xd0, 0xa6, + 0xf8, 0x07, 0x2d, 0x57, 0x1e, 0xbd, 0xf7, 0x31, 0x8f, 0x17, 0xb0, 0xed, 0xff, 0x1f, 0xc3, 0x30, + 0x85, 0x2e, 0xde, 0xc9, 0x75, 0xea, 0x53, 0x0c, 0x68, 0x82, 0x30, 0xcd, 0x54, 0x2d, 0xac, 0x56, + 0x1c, 0x9e, 0x8c, 0xbe, 0x65, 0x10, 0x90, 0x77, 0x75, 0xff, 0x8a, 0x5e, 0x2d, 0xb9, 0x8a, 0x04, + 0xea, 0x5d, 0x88, 0x1d, 0x2f, 0xde, 0x32, 0xae, 0xf7, 0x4f, 0xbd, 0xe8, 0xf5, 0x9f, 0x76, 0xd1, + 0xdb, 0x55, 0x8b, 0x1e, 0x0f, 0x94, 0xf1, 0xa6, 0xb6, 0xe8, 0xbd, 0xfa, 0xd5, 0x6e, 0xf0, 0x55, + 0xaf, 0x76, 0x43, 0x2f, 0xb7, 0xda, 0x0d, 0xbf, 0xe0, 0x6a, 0x77, 0x1f, 0x26, 0x36, 0x29, 0x6d, + 0x68, 0x97, 0x2e, 0x23, 0xf1, 0xee, 0xe9, 0x51, 0x34, 0xa7, 0x65, 0xdd, 0xbc, 0x24, 0xa8, 0x72, + 0x57, 0x4d, 0xf8, 0xfb, 0x59, 0x35, 0x47, 0x5f, 0xf1, 0xaa, 0x39, 0xf6, 0x32, 0xab, 0x66, 0x6a, + 0xe9, 0x1b, 0x3f, 0xf3, 0xd2, 0xf7, 0x32, 0xab, 0xd5, 0x27, 0xe8, 0xd7, 0x58, 0xad, 0xae, 0x0a, + 0x4f, 0x14, 0xcd, 0xf5, 0x63, 0xd5, 0x0f, 0xa5, 0xdb, 0x37, 0xfe, 0xcd, 0x60, 0xdb, 0x7e, 0x20, + 0xaf, 0xcf, 0xf1, 0x6f, 0x6b, 0x01, 0xbd, 0x19, 0x75, 0x7a, 0xf5, 0x66, 0x60, 0x48, 0xbc, 0x1b, + 0x14, 0x6b, 0x5c, 0x52, 0xe3, 0xb3, 0x65, 0xb9, 0xf5, 0x6f, 0x0b, 0xfc, 0x82, 0xf3, 0x7f, 0xc6, + 0xa5, 0xf2, 0x65, 0x2e, 0x1d, 0x7f, 0x27, 0x8e, 0x27, 0x20, 0x62, 0x1f, 0x04, 0x4e, 0xfd, 0x49, + 0x7c, 0xeb, 0xfb, 0x23, 0xf6, 0x9d, 0xeb, 0x05, 0x42, 0x37, 0x9e, 0x51, 0x92, 0xd2, 0x0b, 0xf7, + 0xee, 0xca, 0x05, 0x40, 0x84, 0x55, 0xe0, 0x60, 0x73, 0x01, 0xd0, 0x09, 0xd0, 0xef, 0xee, 0x9c, + 0x65, 0xf3, 0xe7, 0xf0, 0x99, 0x2d, 0x78, 0x2f, 0xfd, 0xa0, 0x1b, 0xf5, 0xf0, 0xf8, 0x41, 0xb7, + 0x2e, 0xc6, 0xf8, 0x69, 0xf7, 0x2e, 0x5c, 0xb2, 0xe9, 0x91, 0xff, 0x94, 0xbe, 0x5a, 0xb6, 0x5f, + 0xc3, 0x45, 0x93, 0x21, 0x7f, 0xfa, 0xc3, 0xa3, 0xb2, 0x7f, 0x92, 0x1d, 0xcb, 0x5d, 0x10, 0xf0, + 0x58, 0xee, 0x3c, 0x24, 0x34, 0xfb, 0x53, 0xdf, 0x37, 0xb0, 0xcc, 0xf2, 0x61, 0xce, 0x64, 0x5e, + 0x69, 0x34, 0x30, 0x95, 0x65, 0xdd, 0x6d, 0x39, 0x5e, 0x44, 0xb6, 0x60, 0x54, 0xfb, 0x99, 0x30, + 0x3b, 0x68, 0x25, 0x42, 0xa7, 0x89, 0x01, 0x46, 0x1c, 0xd0, 0x18, 0x6c, 0x51, 0x28, 0x27, 0xc5, + 0xc3, 0x44, 0xa6, 0xd7, 0xb9, 0x00, 0xe3, 0xda, 0x4f, 0x65, 0xfe, 0xc4, 0x8f, 0x5f, 0xab, 0xc1, + 0x14, 0x98, 0x49, 0x62, 0xd5, 0x61, 0x36, 0x4b, 0x68, 0x18, 0x22, 0xea, 0x39, 0x59, 0x8e, 0x83, + 0x4d, 0x75, 0xf7, 0xdc, 0x3b, 0x97, 0x17, 0x68, 0xca, 0xfa, 0xbf, 0xfa, 0xe1, 0x92, 0x18, 0x8c, + 0x57, 0x39, 0xe2, 0xe4, 0xc7, 0x30, 0xaa, 0x8d, 0xb1, 0x10, 0xfa, 0x55, 0x19, 0xff, 0x33, 0x6f, + 0x2e, 0x70, 0xf3, 0x48, 0x1b, 0x01, 0xb5, 0xc4, 0x70, 0xaf, 0xf6, 0xd8, 0x3a, 0x4b, 0xd2, 0x84, + 0x09, 0x73, 0xa0, 0x85, 0x85, 0xe8, 0x7a, 0x66, 0x25, 0x26, 0xaa, 0x8c, 0x26, 0xdd, 0xa8, 0x65, + 0x0e, 0xf7, 0x6a, 0x8f, 0x9d, 0xe0, 0x4d, 0xbe, 0x85, 0xf3, 0xa9, 0x51, 0x16, 0x86, 0xbf, 0x37, + 0x32, 0x2b, 0x4c, 0x61, 0x73, 0xd3, 0x6e, 0x80, 0xe0, 0xdc, 0x6a, 0xd3, 0x95, 0x90, 0x06, 0x8c, + 0xe9, 0x03, 0x2f, 0x4c, 0x58, 0xd7, 0x3a, 0x88, 0x92, 0x23, 0x72, 0xe5, 0x4e, 0xc8, 0x12, 0xc7, + 0xfe, 0xb9, 0x69, 0xae, 0x36, 0x90, 0x87, 0x61, 0x90, 0xff, 0x66, 0x4b, 0xc0, 0x76, 0x40, 0x43, + 0xea, 0xd5, 0xa9, 0xe1, 0x25, 0xfe, 0x92, 0x4b, 0xc0, 0xbf, 0x28, 0x40, 0x29, 0x8b, 0x6f, 0x95, + 0x7a, 0x0d, 0xb2, 0x0d, 0xc5, 0x64, 0x45, 0x62, 0x56, 0x5b, 0x2a, 0x60, 0x6f, 0x6e, 0x93, 0x56, + 0x7b, 0xec, 0x14, 0x35, 0xd9, 0x84, 0xf3, 0x1a, 0x4c, 0x18, 0x6a, 0x7b, 0x4f, 0x63, 0xa8, 0x65, + 0xa3, 0x90, 0x22, 0xd5, 0xed, 0xdc, 0xab, 0xb8, 0x33, 0x2e, 0xf9, 0x47, 0x8e, 0xeb, 0x31, 0x45, + 0x57, 0x8b, 0x37, 0x05, 0x31, 0x54, 0xc8, 0x86, 0x5b, 0x6e, 0x11, 0x2a, 0x5f, 0xb5, 0x28, 0x14, + 0xeb, 0x63, 0x5c, 0xc1, 0x85, 0xbd, 0x8f, 0xbf, 0x91, 0x55, 0xcc, 0xae, 0xc2, 0xc0, 0xce, 0x7a, + 0x75, 0xb1, 0x22, 0x5e, 0xdc, 0xf2, 0x38, 0x0d, 0xcd, 0xb0, 0x56, 0x77, 0x6c, 0x5e, 0x60, 0x7d, + 0x04, 0x64, 0x85, 0x46, 0x22, 0x62, 0xbc, 0xa2, 0x7b, 0x1d, 0x86, 0x04, 0x48, 0x50, 0xa2, 0x9b, + 0x5d, 0x53, 0x60, 0xc9, 0x32, 0x6b, 0x5b, 0x9e, 0x13, 0x9a, 0xd4, 0x09, 0xb5, 0x8d, 0xf9, 0x7d, + 0x18, 0x0e, 0x04, 0x4c, 0xec, 0xcb, 0x13, 0x2a, 0xb7, 0x06, 0x82, 0xb9, 0x6d, 0x5c, 0xe2, 0xd8, + 0xea, 0x2f, 0x6b, 0x1d, 0x63, 0xaa, 0x6c, 0xad, 0x2d, 0x2d, 0x32, 0xa9, 0x0a, 0x61, 0xc9, 0xe1, + 0xb8, 0x8d, 0xfe, 0xe8, 0x11, 0xd5, 0xdf, 0xdb, 0xa2, 0x68, 0xf0, 0x23, 0x17, 0x91, 0x84, 0x34, + 0x14, 0xeb, 0x9e, 0x8a, 0xd0, 0x92, 0xc1, 0x2d, 0x2f, 0x47, 0xc4, 0x26, 0xc6, 0x9e, 0x59, 0x41, + 0xd7, 0x9b, 0x57, 0xd1, 0x08, 0x07, 0x66, 0xf9, 0x36, 0xcf, 0x7a, 0x25, 0xb2, 0xfb, 0xf9, 0x6a, + 0x69, 0x5c, 0x84, 0x11, 0x05, 0x53, 0xf7, 0x68, 0x5c, 0x56, 0x06, 0xfe, 0xde, 0x3d, 0xfe, 0x34, + 0xb9, 0xae, 0x18, 0xc4, 0x74, 0xac, 0x0a, 0xfe, 0xdd, 0x7d, 0xc7, 0x55, 0x84, 0x34, 0x88, 0xbe, + 0xd3, 0x2a, 0xe2, 0xe0, 0x44, 0x67, 0xa9, 0xc2, 0xc0, 0xdf, 0x9b, 0x3f, 0x8d, 0xa0, 0xbe, 0xe3, + 0x2a, 0x98, 0xa0, 0xbe, 0xbb, 0x2a, 0xa8, 0x8c, 0xe2, 0xc4, 0x27, 0x69, 0xaa, 0x92, 0xe5, 0x74, + 0x25, 0xd2, 0x08, 0x9e, 0xa0, 0xe8, 0x38, 0x1e, 0x14, 0xe6, 0xb8, 0xb0, 0x7e, 0x05, 0xd5, 0x30, + 0x81, 0x7d, 0xb7, 0xd5, 0xfc, 0xbf, 0x05, 0x1e, 0x53, 0xaa, 0xba, 0xa5, 0xe5, 0xd5, 0xf4, 0x1e, + 0xfb, 0xda, 0x35, 0xbf, 0xf6, 0xb5, 0x3f, 0x74, 0xbd, 0x86, 0x7e, 0xcd, 0xef, 0xb4, 0xa3, 0x43, + 0x15, 0x73, 0xf9, 0x89, 0xeb, 0x35, 0xec, 0x24, 0x36, 0xf9, 0x00, 0xc6, 0x35, 0x90, 0xd2, 0xd6, + 0x78, 0xe2, 0x0a, 0x9d, 0xdc, 0x6d, 0xd8, 0x26, 0xa6, 0xf5, 0x77, 0x05, 0x98, 0xcc, 0xc8, 0xf8, + 0x8c, 0xc6, 0x0c, 0x3c, 0x05, 0xa9, 0x85, 0x4a, 0x64, 0x6d, 0xc2, 0xf0, 0x16, 0xc6, 0x26, 0xa9, + 0x10, 0x31, 0x64, 0xbf, 0x96, 0x9d, 0xba, 0x57, 0xcb, 0x1f, 0x96, 0x9d, 0x91, 0x5a, 0x47, 0x27, + 0x21, 0x40, 0xdc, 0x12, 0x61, 0x36, 0xae, 0x32, 0x95, 0x56, 0x4b, 0x6d, 0xfd, 0x4a, 0x72, 0x6b, + 0x6b, 0xd5, 0x58, 0xbf, 0xd3, 0x0b, 0x17, 0x32, 0xfa, 0x5f, 0xa5, 0xd1, 0xdf, 0x87, 0x08, 0x12, + 0x09, 0xc6, 0xfb, 0x7e, 0x45, 0x09, 0xc6, 0xad, 0x7f, 0xd3, 0x0b, 0x17, 0x76, 0x5b, 0x21, 0xbe, + 0xd6, 0x5a, 0xf3, 0x9e, 0x52, 0x2f, 0xf2, 0x83, 0xe7, 0xf8, 0xc2, 0x84, 0xbc, 0x0b, 0x03, 0xab, + 0xb4, 0xd9, 0xf4, 0xc5, 0xfc, 0xbf, 0x2c, 0x3d, 0x2d, 0x92, 0xd8, 0x88, 0xb4, 0xda, 0x63, 0x73, + 0x6c, 0xf2, 0x01, 0x8c, 0xac, 0x52, 0x27, 0x88, 0xf6, 0xa9, 0x23, 0x8f, 0x2c, 0x32, 0x9d, 0x86, + 0x46, 0x22, 0x10, 0x56, 0x7b, 0xec, 0x18, 0x9b, 0xcc, 0xb3, 0xd3, 0xbc, 0x77, 0xa0, 0x9e, 0xb4, + 0xe7, 0x54, 0xc8, 0x70, 0x56, 0x7b, 0x6c, 0xc4, 0x25, 0x1b, 0x30, 0x5e, 0x39, 0xa0, 0x5e, 0xb4, + 0x41, 0x23, 0xa7, 0xe1, 0x44, 0x8e, 0x50, 0x6d, 0x5f, 0xcf, 0x23, 0x36, 0x90, 0x57, 0x7b, 0x6c, + 0x93, 0x9a, 0x7c, 0x04, 0x43, 0x2b, 0xbe, 0xdf, 0xd8, 0x7f, 0x4e, 0x85, 0xba, 0x5a, 0xce, 0x63, + 0x24, 0xd0, 0x56, 0x7b, 0x6c, 0x49, 0xb1, 0x30, 0x00, 0x7d, 0x1b, 0xe1, 0x81, 0x75, 0x5c, 0x80, + 0xd2, 0x92, 0xff, 0xcc, 0xcb, 0x94, 0xea, 0x0f, 0x4c, 0xa9, 0x4a, 0xf6, 0x19, 0xf8, 0x09, 0xb9, + 0xbe, 0x03, 0xfd, 0xdb, 0xae, 0x77, 0x90, 0x50, 0x05, 0x33, 0xe8, 0x18, 0x16, 0x8a, 0xc7, 0xf5, + 0x0e, 0xc8, 0xba, 0xd4, 0xc1, 0x85, 0xad, 0xb1, 0xcf, 0x50, 0xfc, 0x33, 0xa8, 0x75, 0xec, 0x58, + 0xd7, 0xe6, 0xbf, 0x65, 0x07, 0xdf, 0x82, 0x99, 0x9c, 0x7a, 0xc5, 0x1b, 0x75, 0xd6, 0xb7, 0x7e, + 0x54, 0x6c, 0xde, 0x84, 0xe9, 0xcc, 0xf1, 0x4b, 0x21, 0xfe, 0xc3, 0xac, 0x89, 0xc8, 0x7b, 0x5e, + 0x82, 0x21, 0x99, 0xb2, 0x89, 0xdb, 0x7e, 0xe4, 0x4f, 0x7c, 0x6c, 0x25, 0x3f, 0x54, 0x19, 0x5d, + 0x44, 0x7e, 0x8f, 0x7b, 0x5a, 0x34, 0x27, 0xfe, 0x39, 0x7d, 0xf8, 0x12, 0x1f, 0x8d, 0xe2, 0xc5, + 0xea, 0x5c, 0xf5, 0xc3, 0xc8, 0x53, 0x5e, 0xbc, 0xb6, 0xfa, 0x4d, 0x6e, 0x42, 0x51, 0xe6, 0x94, + 0x10, 0xc9, 0x6b, 0x44, 0x3a, 0x74, 0x3b, 0x05, 0x27, 0xef, 0xc3, 0x4c, 0x12, 0x26, 0x7b, 0xc9, + 0x5f, 0xcb, 0xe5, 0x15, 0x5b, 0x7f, 0xdd, 0x8b, 0x01, 0xb7, 0x3b, 0xcc, 0x6b, 0x26, 0xdd, 0xad, + 0xaa, 0x90, 0x56, 0xef, 0x56, 0x95, 0xcc, 0xc1, 0xc8, 0x56, 0xd5, 0xc8, 0x7b, 0x65, 0xc7, 0x00, + 0xd6, 0x6c, 0xd6, 0x85, 0x4a, 0x50, 0x3f, 0x74, 0x23, 0x5a, 0x8f, 0xda, 0x81, 0x58, 0x85, 0xed, + 0x14, 0x9c, 0x58, 0x30, 0xb6, 0xd2, 0x74, 0xf7, 0xeb, 0x92, 0x19, 0x17, 0x81, 0x01, 0x23, 0x6f, + 0xc0, 0xc4, 0x9a, 0x17, 0x46, 0x4e, 0xb3, 0xb9, 0x41, 0xa3, 0x43, 0xbf, 0x21, 0xd2, 0x82, 0xda, + 0x09, 0x28, 0xab, 0x77, 0xd1, 0xf7, 0x22, 0xc7, 0xf5, 0x68, 0x60, 0xb7, 0xbd, 0xc8, 0x3d, 0xa2, + 0xa2, 0xef, 0x29, 0x38, 0x79, 0x07, 0xa6, 0x15, 0x6c, 0x2b, 0xa8, 0x1f, 0xd2, 0x30, 0x0a, 0x30, + 0x1b, 0x1e, 0x46, 0x1d, 0xb2, 0xb3, 0x0b, 0xb1, 0x86, 0xa6, 0xdf, 0x6e, 0x2c, 0x7b, 0x4f, 0xdd, + 0xc0, 0xf7, 0x30, 0x41, 0xc6, 0xb0, 0xa8, 0x21, 0x01, 0xb7, 0xfe, 0x64, 0x38, 0xf3, 0xb3, 0x7d, + 0x99, 0x39, 0xf8, 0x25, 0x8c, 0x2d, 0x3a, 0x2d, 0x67, 0xdf, 0x6d, 0xba, 0x91, 0xab, 0xd2, 0x86, + 0xbd, 0xdb, 0xe5, 0x9b, 0x97, 0x59, 0x46, 0x68, 0x43, 0x27, 0xb6, 0x0d, 0x56, 0xb3, 0x7f, 0x3b, + 0x08, 0xd3, 0x99, 0x78, 0xe4, 0x86, 0xc8, 0x2f, 0xa6, 0xd6, 0x55, 0x91, 0x71, 0xcb, 0x4e, 0x82, + 0xd9, 0x58, 0x22, 0x68, 0xb1, 0x49, 0x1d, 0xaf, 0x2d, 0xf2, 0x6d, 0xd9, 0x06, 0x8c, 0x8d, 0x25, + 0xd3, 0x1b, 0x34, 0x66, 0xe8, 0x84, 0x6d, 0x27, 0xa0, 0xe4, 0x2a, 0x8c, 0x32, 0x88, 0x64, 0xd5, + 0xcf, 0x9f, 0x0b, 0x6a, 0x20, 0xc6, 0x69, 0xd3, 0x6f, 0x50, 0x8d, 0xd3, 0x00, 0xe7, 0x64, 0x42, + 0x19, 0x27, 0x06, 0x91, 0x9c, 0x06, 0x39, 0x27, 0x0d, 0x44, 0x5e, 0x83, 0xf1, 0x4a, 0xab, 0xa5, + 0x31, 0xc2, 0x44, 0x5b, 0xb6, 0x09, 0x24, 0x57, 0x00, 0x2a, 0xad, 0x96, 0x64, 0x83, 0x49, 0xb4, + 0x6c, 0x0d, 0x42, 0x6e, 0xc5, 0x31, 0xd3, 0x34, 0x56, 0x78, 0x9d, 0x60, 0x67, 0x94, 0x30, 0xb9, + 0xaa, 0x00, 0x53, 0x82, 0x29, 0x70, 0xb9, 0x26, 0xc0, 0xe4, 0x63, 0xb8, 0x98, 0xf0, 0xe1, 0xd0, + 0x2a, 0x40, 0x53, 0xbf, 0x9d, 0x8f, 0x40, 0xde, 0x83, 0x0b, 0x89, 0x42, 0x59, 0x1d, 0x5a, 0xf5, + 0xed, 0x9c, 0x52, 0xf2, 0x21, 0x94, 0x12, 0x6f, 0xc7, 0xe3, 0x4a, 0xd1, 0x82, 0x6f, 0xe7, 0x96, + 0xb3, 0xaf, 0x2b, 0xf1, 0x96, 0x4c, 0x54, 0x89, 0x97, 0x95, 0x76, 0x76, 0x21, 0x59, 0x85, 0x72, + 0xa6, 0x5f, 0x8c, 0x56, 0x31, 0x26, 0x07, 0xb3, 0xbb, 0xa1, 0x91, 0x05, 0x98, 0xcb, 0x44, 0x91, + 0xcd, 0xc0, 0x94, 0x61, 0x76, 0x47, 0x1c, 0x32, 0x0f, 0x53, 0xb1, 0x7f, 0x90, 0xd6, 0x04, 0xcc, + 0x16, 0x66, 0x67, 0x96, 0x91, 0xb7, 0xcd, 0x08, 0x01, 0xbc, 0x32, 0x4c, 0x16, 0x66, 0xa7, 0x0b, + 0xac, 0x93, 0x02, 0xcc, 0x65, 0x6e, 0x94, 0x52, 0x9f, 0x9f, 0x4d, 0x2a, 0x8e, 0xda, 0x5a, 0x70, + 0x13, 0xfa, 0x51, 0xc1, 0xe7, 0xb6, 0x62, 0xe9, 0xb7, 0x8a, 0xf4, 0x9c, 0x15, 0x2b, 0xb5, 0x11, + 0x87, 0xac, 0xa8, 0xbb, 0xc1, 0x3e, 0xb4, 0x64, 0xdc, 0x4e, 0x2a, 0x50, 0x19, 0x95, 0xeb, 0x77, + 0x84, 0xf2, 0x36, 0xf0, 0x65, 0xae, 0x61, 0xfe, 0xba, 0x00, 0xe5, 0x2e, 0xfa, 0x81, 0xea, 0x53, + 0xe1, 0x14, 0x7d, 0x7a, 0xa0, 0xfa, 0xc4, 0xdf, 0xd9, 0xce, 0x9f, 0x4e, 0x07, 0x79, 0xd5, 0xdd, + 0x6a, 0x03, 0x49, 0xab, 0xa1, 0xe4, 0xfb, 0x30, 0x52, 0xad, 0xae, 0x1a, 0xce, 0x81, 0xa9, 0xcb, + 0xa1, 0x18, 0x83, 0xdc, 0x39, 0x95, 0x37, 0xa0, 0xe6, 0x0b, 0x68, 0x2d, 0x41, 0x29, 0x4f, 0x83, + 0xc4, 0x85, 0x85, 0x07, 0xf8, 0xd2, 0x2e, 0x96, 0xf8, 0xc2, 0x62, 0x82, 0xad, 0xf7, 0xe0, 0x82, + 0xa2, 0xe6, 0x99, 0x43, 0xb4, 0x20, 0x02, 0xe2, 0xd8, 0xa9, 0x82, 0x15, 0xc4, 0x00, 0xeb, 0xaf, + 0xfa, 0x53, 0x84, 0xd5, 0xf6, 0xd1, 0x91, 0x13, 0x3c, 0x27, 0x15, 0x93, 0xb0, 0xaf, 0xab, 0xa6, + 0xbf, 0xd0, 0xff, 0xf3, 0xe3, 0x72, 0x8f, 0xc6, 0x9d, 0x2d, 0xc7, 0xb8, 0xb1, 0x7b, 0x75, 0xca, + 0xaf, 0xa4, 0x7a, 0x79, 0x84, 0x25, 0x03, 0x48, 0xf6, 0x60, 0x5c, 0x6c, 0x99, 0xf8, 0x5b, 0x4e, + 0xed, 0x3b, 0xc9, 0xa9, 0x6d, 0x34, 0xef, 0x96, 0x41, 0xc2, 0x27, 0x81, 0xc9, 0x86, 0x7c, 0x09, + 0x13, 0x52, 0x41, 0x12, 0x8c, 0xb9, 0x13, 0xd1, 0xdd, 0xce, 0x8c, 0x4d, 0x1a, 0xce, 0x39, 0xc1, + 0x88, 0x35, 0x59, 0xae, 0x31, 0x9c, 0xf3, 0xc0, 0x69, 0x9a, 0x6c, 0x90, 0x88, 0x26, 0x1b, 0xb0, + 0xd9, 0xcf, 0x80, 0xa4, 0xfb, 0xd5, 0x6d, 0x16, 0x8f, 0x6b, 0xb3, 0x78, 0xb6, 0x02, 0x93, 0x19, + 0x1d, 0x38, 0x13, 0x8b, 0xcf, 0x80, 0xa4, 0x5b, 0x7a, 0x16, 0x0e, 0xd6, 0x0d, 0x78, 0x43, 0x89, + 0x40, 0xcd, 0x06, 0x83, 0xa7, 0x34, 0x3c, 0xff, 0x76, 0x2f, 0x94, 0xbb, 0xa0, 0x92, 0x3f, 0x2e, + 0x24, 0xa5, 0xcd, 0x67, 0xe3, 0x07, 0x49, 0x69, 0x67, 0xd3, 0x67, 0x88, 0x7d, 0xe1, 0xc3, 0x9f, + 0xfd, 0xcd, 0x0b, 0x2b, 0xfc, 0xe9, 0x21, 0x3b, 0xbb, 0xb4, 0xfa, 0x75, 0x69, 0xd9, 0x30, 0x65, + 0x1c, 0x95, 0x4e, 0xb3, 0x67, 0x5c, 0x01, 0x10, 0x79, 0x46, 0xd7, 0xfd, 0x03, 0xa1, 0x9e, 0x69, + 0x10, 0xeb, 0x3e, 0x4c, 0x27, 0x78, 0x0a, 0x63, 0xf8, 0xf7, 0x41, 0x3d, 0x16, 0x47, 0xa6, 0x7d, + 0x0b, 0xe7, 0x7f, 0x79, 0x5c, 0x1e, 0x67, 0x9a, 0xf4, 0xad, 0x38, 0x88, 0xbd, 0xfc, 0xcb, 0xda, + 0xd0, 0xcd, 0xf9, 0x95, 0xa6, 0x1e, 0x7d, 0x87, 0xdc, 0x85, 0x41, 0x0e, 0x49, 0x84, 0x8a, 0xd6, + 0xb1, 0xc5, 0x9a, 0x20, 0x10, 0xad, 0x69, 0x7c, 0xda, 0x8a, 0x3f, 0x2a, 0x71, 0x28, 0x06, 0x6b, + 0x97, 0xa7, 0x4e, 0x89, 0xc1, 0x2a, 0x1c, 0x75, 0x7f, 0x25, 0x0e, 0x19, 0x21, 0x7d, 0x2f, 0x24, + 0x9e, 0xe7, 0x3f, 0x6b, 0xd2, 0x06, 0x4f, 0x4b, 0xb7, 0x30, 0x26, 0x7c, 0x2f, 0xfa, 0x1d, 0xc6, + 0x00, 0xc9, 0xac, 0x4f, 0x61, 0x9a, 0x6d, 0xd0, 0x41, 0xb2, 0x3e, 0x4c, 0x98, 0xc0, 0x60, 0xa6, + 0x73, 0xbc, 0xc3, 0x40, 0xe8, 0x1c, 0x2f, 0x0a, 0xad, 0x75, 0xb8, 0xc8, 0x8d, 0x81, 0x7a, 0x97, + 0x62, 0xd3, 0xfb, 0x00, 0xfe, 0x4e, 0x3c, 0x8c, 0xcc, 0xe8, 0x3d, 0xc7, 0xb3, 0x3e, 0xc1, 0x97, + 0x37, 0x62, 0x92, 0xba, 0xbe, 0x17, 0x5b, 0xfe, 0x4e, 0xf7, 0x54, 0xf7, 0x7f, 0x85, 0xb9, 0x4a, + 0xab, 0x45, 0xbd, 0x46, 0x4c, 0xb8, 0x13, 0x38, 0xa7, 0x0c, 0xa4, 0x40, 0x2a, 0x30, 0x80, 0xd8, + 0xea, 0xde, 0x52, 0x34, 0x37, 0xa3, 0x39, 0x88, 0x27, 0x62, 0x87, 0x62, 0x05, 0x9c, 0xd2, 0x6a, + 0xc0, 0x4c, 0xb5, 0xbd, 0x7f, 0xe4, 0x46, 0xe8, 0x52, 0x8f, 0xc1, 0x48, 0x64, 0xdd, 0x6b, 0x32, + 0xdb, 0x15, 0x17, 0xc6, 0x8d, 0xf8, 0x85, 0x06, 0x7a, 0xe5, 0x8b, 0x00, 0x25, 0x4f, 0xef, 0xde, + 0x8a, 0x49, 0xd1, 0xea, 0xc1, 0x6b, 0xc1, 0x62, 0x91, 0x11, 0xcb, 0x9a, 0x84, 0xf3, 0xfa, 0x1d, + 0x10, 0x9f, 0x21, 0xd3, 0x30, 0x69, 0xde, 0xed, 0x70, 0xf0, 0x37, 0x30, 0xc5, 0x6d, 0xcf, 0x3c, + 0xf6, 0xf7, 0x7c, 0x1c, 0xe6, 0xba, 0x77, 0x6f, 0x3e, 0xe1, 0xcb, 0x8f, 0x2e, 0xbe, 0x2a, 0xab, + 0xc3, 0xde, 0x3c, 0x7f, 0x3d, 0xf9, 0x74, 0xde, 0xb8, 0x41, 0xec, 0xdd, 0x9b, 0x5f, 0x18, 0x12, + 0x31, 0x54, 0x19, 0x77, 0x3e, 0xfc, 0xdf, 0x09, 0xf7, 0x79, 0x7c, 0xb0, 0xbf, 0x4a, 0x1d, 0x7c, + 0x5c, 0x93, 0xfd, 0xec, 0x79, 0x02, 0x7a, 0xdd, 0x86, 0x3c, 0xad, 0xbb, 0x0d, 0xeb, 0xcf, 0x0b, + 0x70, 0x83, 0xeb, 0x40, 0xd9, 0x74, 0x78, 0xd1, 0x93, 0x43, 0x4c, 0xde, 0x07, 0x9e, 0x3a, 0x5e, + 0x28, 0x9a, 0x96, 0x68, 0x79, 0x27, 0x4e, 0x9c, 0x80, 0x54, 0x60, 0x4c, 0x7f, 0x9e, 0x72, 0xba, + 0x18, 0x75, 0xf6, 0xe8, 0xd1, 0x63, 0x47, 0x3d, 0x59, 0x79, 0x02, 0x97, 0x96, 0xbf, 0x65, 0x13, + 0x42, 0xec, 0x4e, 0x42, 0x61, 0x8f, 0x9f, 0xd5, 0x9e, 0xdb, 0x11, 0x33, 0xc6, 0x3c, 0x4d, 0x27, + 0xc1, 0xec, 0x68, 0x2a, 0x37, 0x38, 0xa5, 0x35, 0x8f, 0xd8, 0x06, 0xcc, 0xfa, 0xab, 0x02, 0xcc, + 0x65, 0xd7, 0x26, 0x16, 0x96, 0x35, 0x38, 0xbf, 0xe8, 0x78, 0xbe, 0xe7, 0xd6, 0x9d, 0x66, 0xb5, + 0x7e, 0x48, 0x1b, 0x6d, 0x15, 0x69, 0x55, 0xad, 0x32, 0x07, 0xd4, 0x93, 0xe4, 0x12, 0xc5, 0x4e, + 0x53, 0xb1, 0x43, 0x19, 0xbe, 0x70, 0xe0, 0x6b, 0x6f, 0x93, 0x06, 0x8a, 0x1f, 0x6f, 0x59, 0x4e, + 0x29, 0xb9, 0x23, 0x8d, 0xec, 0x8d, 0x5d, 0xcf, 0x8d, 0x14, 0x11, 0xb7, 0xae, 0x64, 0x15, 0x59, + 0xff, 0xaa, 0x00, 0x17, 0x31, 0xb9, 0x92, 0x91, 0xae, 0x31, 0x0e, 0x38, 0x2c, 0x63, 0xe6, 0x16, + 0x8c, 0x17, 0x1b, 0x06, 0xb6, 0x19, 0x3c, 0x97, 0xbc, 0x0d, 0xfd, 0x55, 0xe9, 0x24, 0x35, 0x91, + 0xc8, 0x85, 0x2b, 0x28, 0x58, 0xb9, 0x8d, 0x58, 0x6c, 0xcf, 0x59, 0xa2, 0x61, 0x9d, 0x7a, 0x98, + 0xb4, 0x98, 0x1f, 0xf6, 0x35, 0x48, 0x1c, 0xf6, 0xa8, 0x3f, 0x2f, 0xec, 0xd1, 0x80, 0x19, 0xf6, + 0xc8, 0x7a, 0xca, 0x53, 0x2b, 0x25, 0x3b, 0x24, 0x06, 0xe9, 0x93, 0x54, 0x8e, 0x63, 0xbe, 0x0f, + 0x5c, 0xc8, 0xea, 0xd9, 0xde, 0xbd, 0x54, 0xfa, 0xe2, 0xfc, 0x00, 0xbf, 0xdb, 0xf0, 0x9a, 0x81, + 0x5b, 0x69, 0x36, 0xfd, 0x67, 0xb4, 0xb1, 0x1d, 0xf8, 0x47, 0x7e, 0x64, 0xa4, 0x96, 0x11, 0x49, + 0xbe, 0xe3, 0x6b, 0x14, 0x31, 0x2b, 0x13, 0x60, 0xeb, 0x7f, 0x81, 0xd7, 0xbb, 0x70, 0x14, 0x9d, + 0xaa, 0xc2, 0x79, 0x27, 0x51, 0x26, 0xbd, 0x5d, 0x5e, 0xcf, 0xea, 0x57, 0x92, 0x51, 0x68, 0xa7, + 0xe9, 0x6f, 0xee, 0x18, 0x79, 0x81, 0x49, 0x09, 0xa6, 0xb6, 0xed, 0xad, 0xa5, 0xdd, 0xc5, 0x9d, + 0xda, 0xce, 0x97, 0xdb, 0xcb, 0xb5, 0xdd, 0xcd, 0x87, 0x9b, 0x5b, 0x8f, 0x36, 0x79, 0x84, 0x6c, + 0xa3, 0x64, 0x67, 0xb9, 0xb2, 0x51, 0x2c, 0x90, 0x29, 0x28, 0x1a, 0xe0, 0xe5, 0xdd, 0x85, 0x62, + 0xef, 0xcd, 0x6f, 0x8c, 0x7c, 0xb7, 0x64, 0x0e, 0x4a, 0xd5, 0xdd, 0xed, 0xed, 0x2d, 0x5b, 0x71, + 0xd5, 0xe3, 0x73, 0x4f, 0xc3, 0x79, 0xa3, 0xf4, 0xbe, 0xbd, 0xbc, 0x5c, 0x2c, 0xb0, 0xa6, 0x18, + 0xe0, 0x6d, 0x7b, 0x79, 0x63, 0x6d, 0x77, 0xa3, 0xd8, 0x7b, 0xb3, 0xa6, 0x3f, 0x13, 0x23, 0x97, + 0x60, 0x66, 0x69, 0x79, 0x6f, 0x6d, 0x71, 0x39, 0x8b, 0xf7, 0x14, 0x14, 0xf5, 0xc2, 0x9d, 0xad, + 0x9d, 0x6d, 0xce, 0x5a, 0x87, 0x3e, 0x5a, 0x5e, 0xa8, 0xec, 0xee, 0xac, 0x6e, 0x16, 0xfb, 0xac, + 0xfe, 0xe1, 0xde, 0x62, 0xef, 0xcd, 0x1f, 0x1b, 0x6f, 0xc8, 0x58, 0xf3, 0x05, 0xfa, 0x6e, 0xb5, + 0xb2, 0x92, 0x5f, 0x05, 0x2f, 0xdd, 0xb8, 0x5f, 0x29, 0x16, 0xc8, 0x65, 0xb8, 0x68, 0x40, 0xb7, + 0x2b, 0xd5, 0xea, 0xa3, 0x2d, 0x7b, 0x69, 0x7d, 0xb9, 0x5a, 0x2d, 0xf6, 0xde, 0xdc, 0x33, 0x42, + 0xbd, 0xb1, 0x1a, 0x36, 0xee, 0x57, 0x6a, 0xf6, 0xf2, 0xe7, 0xbb, 0x6b, 0xf6, 0xf2, 0x52, 0xba, + 0x06, 0xa3, 0xf4, 0xcb, 0xe5, 0x6a, 0xb1, 0x40, 0x26, 0xe1, 0x9c, 0x01, 0xdd, 0xdc, 0x2a, 0xf6, + 0xde, 0x7c, 0x43, 0x44, 0x03, 0x23, 0x13, 0x00, 0x4b, 0xcb, 0xd5, 0xc5, 0xe5, 0xcd, 0xa5, 0xb5, + 0xcd, 0x95, 0x62, 0x0f, 0x19, 0x87, 0x91, 0x8a, 0xfa, 0x59, 0xb8, 0xf9, 0x21, 0x9c, 0x4b, 0x9c, + 0xa8, 0x19, 0x86, 0x3a, 0x8c, 0x16, 0x7b, 0x50, 0xfc, 0xf2, 0x27, 0x9a, 0x35, 0xf9, 0xe1, 0xb8, + 0x58, 0xb8, 0xb9, 0x20, 0xf3, 0xaf, 0x6a, 0xdf, 0x39, 0x19, 0x85, 0xa1, 0xa5, 0xe5, 0xfb, 0x95, + 0xdd, 0xf5, 0x9d, 0x62, 0x0f, 0xfb, 0xb1, 0x68, 0x2f, 0x57, 0x76, 0x96, 0x97, 0x8a, 0x05, 0x32, + 0x02, 0x03, 0xd5, 0x9d, 0xca, 0xce, 0x72, 0xb1, 0x97, 0x0c, 0x43, 0xff, 0x6e, 0x75, 0xd9, 0x2e, + 0xf6, 0xcd, 0xff, 0xf3, 0x3f, 0x2e, 0x70, 0xdb, 0x9e, 0x7c, 0x8f, 0xf4, 0x8d, 0x76, 0x98, 0x14, + 0x4b, 0x9e, 0x48, 0x36, 0x99, 0x7b, 0x72, 0x44, 0x2d, 0x60, 0xb6, 0xc3, 0x65, 0x07, 0x22, 0xdc, + 0x28, 0xdc, 0x29, 0x10, 0x1b, 0x9d, 0x43, 0x12, 0x67, 0x2b, 0xc5, 0x39, 0xfb, 0xf8, 0x3b, 0x7b, + 0xb9, 0xe3, 0x91, 0x8c, 0xfc, 0x06, 0x58, 0x3a, 0xcf, 0x9c, 0x13, 0xc8, 0xf7, 0x4f, 0x77, 0xd2, + 0x90, 0x75, 0xbe, 0x71, 0x3a, 0x74, 0xf2, 0x00, 0xc6, 0x99, 0x6e, 0xae, 0xd0, 0xc8, 0xa5, 0x24, + 0xa1, 0x76, 0x1c, 0x98, 0x9d, 0xcb, 0x2e, 0x54, 0xf9, 0x60, 0xc6, 0xb0, 0x23, 0xfc, 0x60, 0x1d, + 0x12, 0x19, 0x31, 0x42, 0x42, 0xf8, 0x8a, 0x3f, 0x7b, 0x3e, 0x01, 0xde, 0xbb, 0x7b, 0xa7, 0x40, + 0xaa, 0x18, 0xae, 0xcd, 0x50, 0xf2, 0x89, 0x7c, 0x20, 0x97, 0xd6, 0xfe, 0x79, 0x6b, 0xca, 0x2a, + 0x7b, 0x63, 0xce, 0xe9, 0x60, 0x13, 0x48, 0x5a, 0x77, 0x26, 0x57, 0xe3, 0x79, 0x90, 0xad, 0x56, + 0xcf, 0x5e, 0x48, 0xf9, 0xfc, 0x2d, 0x33, 0xed, 0x89, 0x2c, 0xc3, 0x84, 0x78, 0x0e, 0x2e, 0xb4, + 0x79, 0xd2, 0xe9, 0x3c, 0x90, 0xcb, 0x66, 0x05, 0xe5, 0xa4, 0x4e, 0x04, 0x64, 0x36, 0xee, 0x47, + 0xf2, 0x98, 0x30, 0x7b, 0x29, 0xb3, 0x4c, 0xf4, 0xef, 0x3e, 0x4c, 0x98, 0x87, 0x0b, 0x22, 0x07, + 0x28, 0xf3, 0xcc, 0x91, 0xdb, 0xa0, 0x1a, 0xcc, 0x6c, 0x38, 0x2e, 0x5e, 0x51, 0x08, 0xcf, 0x32, + 0xe9, 0x17, 0x46, 0xca, 0x1d, 0x1c, 0xc5, 0xaa, 0xd4, 0x6b, 0xa8, 0x41, 0xc8, 0x8b, 0xed, 0x8e, + 0x9f, 0x4d, 0x55, 0xea, 0xc8, 0xa6, 0x5f, 0x1d, 0xb1, 0xcc, 0x8c, 0xbc, 0x59, 0xae, 0x92, 0xb3, + 0x79, 0xde, 0xbd, 0x64, 0x03, 0x95, 0xf4, 0x04, 0x47, 0x6d, 0x4e, 0x9c, 0x99, 0x5d, 0x09, 0x83, + 0x12, 0x68, 0x99, 0xcc, 0x45, 0x61, 0x48, 0x72, 0x04, 0x97, 0xcb, 0xec, 0x4e, 0x81, 0x7c, 0x83, + 0x5f, 0x75, 0x26, 0xbb, 0x47, 0x6e, 0x74, 0x28, 0xb4, 0x9f, 0x4b, 0x99, 0x0c, 0xc4, 0x87, 0xd2, + 0x81, 0xbb, 0x0d, 0x53, 0x59, 0x0e, 0xc5, 0x4a, 0xa0, 0x1d, 0xbc, 0x8d, 0x73, 0x67, 0x81, 0xcd, + 0x8e, 0x1a, 0x8d, 0xfc, 0x41, 0xea, 0xe0, 0xcf, 0x9a, 0xcb, 0xf3, 0x63, 0x98, 0x60, 0xb3, 0xe4, + 0x21, 0xa5, 0xad, 0x4a, 0xd3, 0x7d, 0x4a, 0x43, 0x22, 0x83, 0xf4, 0x2a, 0x50, 0x1e, 0xed, 0x8d, + 0x02, 0xf9, 0x1e, 0x8c, 0x3e, 0x72, 0xa2, 0xfa, 0xa1, 0x88, 0x39, 0x29, 0x43, 0x52, 0x22, 0x6c, + 0x56, 0xfe, 0xc2, 0xc2, 0x3b, 0x05, 0xf2, 0x43, 0x18, 0x5a, 0xa1, 0x11, 0x3e, 0x50, 0xbe, 0xa6, + 0x7c, 0xeb, 0xb8, 0x6d, 0x72, 0xcd, 0x53, 0x2f, 0x67, 0x64, 0x83, 0x93, 0x06, 0x54, 0x72, 0x1b, + 0x80, 0x2f, 0x08, 0xc8, 0x21, 0x59, 0x3c, 0x9b, 0x6a, 0x36, 0x59, 0x61, 0xca, 0x43, 0x93, 0x46, + 0xf4, 0xb4, 0x55, 0xe6, 0xc9, 0x68, 0x1d, 0x26, 0x54, 0x0a, 0x9d, 0x4d, 0x0c, 0x0d, 0x62, 0x25, + 0x98, 0x85, 0x67, 0xe0, 0xf6, 0x21, 0xfb, 0x2a, 0x78, 0xfe, 0x58, 0x8c, 0x21, 0x81, 0x2b, 0xe9, + 0x8c, 0x1e, 0x88, 0x42, 0x5f, 0x42, 0xa5, 0x10, 0x39, 0x9a, 0x46, 0xbb, 0xea, 0x87, 0x91, 0x49, + 0xab, 0x20, 0xd9, 0xb4, 0xbf, 0x0e, 0xb3, 0x7a, 0xbd, 0x66, 0xb4, 0xe4, 0x78, 0xcd, 0xcd, 0x0b, + 0xc2, 0x3c, 0x7b, 0xad, 0x03, 0x86, 0x38, 0xbf, 0xf5, 0xfd, 0x6e, 0x6f, 0x01, 0x97, 0x93, 0x25, + 0x98, 0x94, 0x75, 0x6d, 0xb5, 0xa8, 0x57, 0xad, 0xae, 0x62, 0xba, 0x14, 0xe9, 0xc9, 0xa1, 0xc1, + 0x24, 0x77, 0x92, 0x2e, 0x62, 0x5b, 0x9f, 0x11, 0x2b, 0x82, 0x74, 0x8a, 0x20, 0x11, 0x6f, 0x7d, + 0x99, 0xd1, 0x78, 0x1f, 0x72, 0xa3, 0x92, 0xa1, 0xfc, 0xef, 0xcd, 0x93, 0x0e, 0x07, 0xa0, 0xd9, + 0x9c, 0x23, 0xc4, 0x9d, 0x02, 0xf9, 0x12, 0x48, 0xfa, 0x48, 0xa2, 0x44, 0x98, 0x7b, 0xfc, 0x52, + 0x22, 0xec, 0x70, 0x9e, 0x59, 0x86, 0x49, 0x15, 0x29, 0x26, 0x2e, 0x27, 0x39, 0x6d, 0xe9, 0xb0, + 0x83, 0x4d, 0x67, 0xb0, 0xd9, 0x9b, 0xef, 0xc0, 0x28, 0x13, 0x4e, 0x3e, 0x85, 0x49, 0x31, 0xf7, + 0x8d, 0xf6, 0x14, 0xd5, 0x32, 0x26, 0x0e, 0x37, 0xb9, 0x2d, 0x79, 0x00, 0xd3, 0xd5, 0x84, 0xe0, + 0xb9, 0x1f, 0xfb, 0x45, 0x93, 0x05, 0x02, 0xab, 0x34, 0xe2, 0x92, 0xcf, 0xe6, 0xf5, 0x10, 0x08, + 0xb7, 0x2d, 0x49, 0x76, 0x4f, 0x5d, 0xfa, 0x8c, 0x5c, 0x4e, 0x34, 0x9d, 0x01, 0x11, 0x0d, 0xd7, + 0xc1, 0xdc, 0x9e, 0xed, 0xf0, 0x24, 0xca, 0x08, 0x35, 0x6e, 0xc0, 0xaf, 0x1a, 0x04, 0xc6, 0x25, + 0xba, 0x18, 0xc7, 0x8b, 0xb9, 0x18, 0xe4, 0xb7, 0x30, 0xd2, 0x6b, 0xe7, 0xd3, 0x19, 0xf9, 0x5e, + 0xd6, 0x21, 0x3a, 0xe7, 0x7c, 0x39, 0xfb, 0xf6, 0xe9, 0x90, 0xd5, 0x79, 0x78, 0x7c, 0x85, 0x46, + 0xdb, 0xcd, 0xf6, 0x81, 0x8b, 0xe9, 0x35, 0x89, 0xb2, 0x3d, 0x29, 0x90, 0x98, 0xde, 0x32, 0xc0, + 0x5a, 0x5c, 0x50, 0xa5, 0x3f, 0x21, 0x6b, 0x50, 0xe4, 0xdb, 0x88, 0xc6, 0xe2, 0x72, 0x8a, 0x85, + 0x40, 0x71, 0x02, 0xe7, 0x28, 0xcc, 0x1d, 0xad, 0xdb, 0xdc, 0xe5, 0x88, 0xc8, 0x4f, 0x5b, 0xd7, + 0x53, 0x27, 0x0d, 0x98, 0x0a, 0x9b, 0xcf, 0x46, 0xc4, 0xa6, 0x21, 0x8d, 0x64, 0x48, 0x19, 0x9e, + 0x5c, 0xf5, 0x7a, 0xac, 0x33, 0xa4, 0x4b, 0xe3, 0x15, 0x24, 0x11, 0xfe, 0x6c, 0xef, 0x1e, 0x51, + 0x09, 0x67, 0x33, 0x98, 0xbe, 0x61, 0xa8, 0x36, 0x67, 0xe3, 0xfb, 0x0e, 0x6e, 0x65, 0x18, 0x46, + 0x67, 0x3a, 0x6e, 0x1b, 0xfb, 0x2d, 0xa9, 0xc6, 0x35, 0xaa, 0xbd, 0x79, 0x5c, 0x19, 0xd9, 0x5e, + 0xcb, 0x34, 0xe1, 0x76, 0x10, 0x50, 0x8f, 0x13, 0xe7, 0xa9, 0x2d, 0x59, 0xd4, 0x9f, 0xe0, 0x0a, + 0xa6, 0x51, 0xf3, 0xe7, 0x76, 0xdd, 0x58, 0xf0, 0x64, 0x40, 0x77, 0x0a, 0xe4, 0x7d, 0x18, 0x16, + 0x6d, 0x64, 0x44, 0x46, 0xa3, 0xc3, 0x0e, 0xad, 0x46, 0x4a, 0xe0, 0x42, 0xc2, 0x36, 0x9b, 0x38, + 0x79, 0xa3, 0xcf, 0xdb, 0xfc, 0x3e, 0xdb, 0xb3, 0x1b, 0x2f, 0x42, 0xb9, 0x28, 0x37, 0x6f, 0xa4, + 0x2c, 0xa9, 0xa8, 0x2e, 0x12, 0xd4, 0x65, 0x97, 0xe5, 0x4c, 0x98, 0xfa, 0x8d, 0xf1, 0x0b, 0x55, + 0x18, 0x32, 0xa5, 0x7e, 0x1b, 0xe0, 0x6e, 0x5b, 0xf6, 0x1a, 0x14, 0x2b, 0x75, 0xdc, 0x50, 0xaa, + 0xf4, 0xc8, 0x69, 0x1d, 0xfa, 0x01, 0x55, 0x67, 0x9f, 0x64, 0x81, 0xe4, 0x35, 0xad, 0x14, 0x14, + 0x51, 0xb0, 0x4e, 0x1d, 0x0c, 0xf2, 0x3c, 0xa3, 0x34, 0x94, 0x44, 0x51, 0x36, 0x45, 0x87, 0xb3, + 0xce, 0xd4, 0x22, 0x3b, 0x9d, 0x35, 0x5f, 0x8e, 0xcd, 0x87, 0xb8, 0x60, 0x28, 0xe4, 0x50, 0xed, + 0x10, 0x0a, 0xa4, 0x4e, 0x85, 0xf2, 0xe5, 0x8d, 0x42, 0xad, 0xc8, 0xab, 0xe7, 0x58, 0x2c, 0x79, + 0xd4, 0x79, 0xd5, 0xff, 0x00, 0x26, 0x96, 0xd9, 0x82, 0xde, 0x6e, 0xb8, 0x3c, 0xb0, 0x3d, 0x31, + 0x23, 0x95, 0xe7, 0x12, 0xae, 0xca, 0xfc, 0x5b, 0x48, 0x2a, 0x2c, 0x08, 0x72, 0x4f, 0xd1, 0x60, + 0x72, 0x3c, 0xa6, 0x24, 0x5b, 0x91, 0x5b, 0x00, 0x4f, 0xf8, 0xc2, 0x64, 0x30, 0xc3, 0x15, 0xcb, + 0x4a, 0xab, 0xd5, 0x94, 0x96, 0x6d, 0x7e, 0x53, 0xff, 0xba, 0x71, 0x12, 0x4d, 0x95, 0x4b, 0xde, + 0x69, 0xdd, 0xf3, 0x0b, 0x2d, 0x1f, 0x6e, 0x0e, 0xcf, 0x9c, 0xf2, 0x6e, 0x73, 0x51, 0x85, 0xa2, + 0xae, 0x34, 0x9b, 0x29, 0xe2, 0x90, 0xbc, 0x65, 0x72, 0xcf, 0xc2, 0xe9, 0x56, 0x03, 0x9e, 0xf4, + 0xb9, 0xf2, 0x56, 0x69, 0xb5, 0xf8, 0x62, 0x79, 0x45, 0x2d, 0x18, 0x66, 0x41, 0xfa, 0xa4, 0x9f, + 0x2c, 0x17, 0x6b, 0xfb, 0x03, 0x9c, 0x66, 0x71, 0xd2, 0x5c, 0xa2, 0x9f, 0x9b, 0x93, 0x39, 0x83, + 0x95, 0x2e, 0x97, 0x28, 0x54, 0xfb, 0xc4, 0x39, 0xd4, 0xa0, 0xe2, 0x0c, 0xbc, 0xca, 0xc0, 0x93, + 0x80, 0x4b, 0x7e, 0x57, 0xf2, 0x8a, 0x95, 0xc1, 0xb5, 0x98, 0x4c, 0x4c, 0xae, 0xba, 0x9c, 0x93, + 0xf0, 0x5e, 0x75, 0x39, 0x37, 0xa3, 0xf9, 0x03, 0x28, 0x26, 0x73, 0x22, 0x2b, 0xa6, 0x39, 0xc9, + 0x92, 0x73, 0xc7, 0xe4, 0x3e, 0x4c, 0xe9, 0x23, 0xaa, 0xfa, 0x9d, 0xb7, 0xfa, 0xe7, 0xf1, 0xd9, + 0x81, 0xe9, 0xcc, 0x14, 0xc6, 0x6a, 0x8b, 0xed, 0x94, 0xe0, 0x38, 0x97, 0x2b, 0x85, 0x0b, 0xd9, + 0x59, 0xcc, 0xc9, 0x6b, 0xa6, 0xfd, 0x20, 0x3b, 0xa7, 0xf3, 0xec, 0xeb, 0x5d, 0xb0, 0x84, 0x40, + 0xbf, 0xc1, 0x1d, 0x30, 0x55, 0xc7, 0x35, 0xcd, 0xa2, 0x90, 0x53, 0x81, 0xd5, 0x09, 0x45, 0xcd, + 0x81, 0xa9, 0x8c, 0xe2, 0x7c, 0x11, 0x5f, 0xcf, 0xe7, 0x19, 0x4f, 0xac, 0x3d, 0x19, 0x71, 0x39, + 0x57, 0x32, 0x1d, 0xb3, 0x5d, 0x77, 0x38, 0x92, 0xce, 0xaa, 0xf9, 0x70, 0xfa, 0x26, 0xe7, 0x71, + 0x6b, 0x28, 0xeb, 0x8f, 0x91, 0x8a, 0x3a, 0x69, 0xfd, 0xc9, 0x4a, 0xa1, 0xad, 0xc4, 0xd0, 0x29, + 0x49, 0x3b, 0xdf, 0x8d, 0xbf, 0xe6, 0xe6, 0x20, 0xb3, 0x0a, 0xdd, 0x1c, 0x94, 0xc9, 0xff, 0x6a, + 0x3e, 0x82, 0xce, 0xdc, 0xe1, 0x77, 0xbf, 0x89, 0x5c, 0xda, 0x44, 0x3f, 0x71, 0x65, 0xe7, 0xd9, + 0x56, 0x73, 0x23, 0x13, 0x45, 0xaf, 0xe2, 0x91, 0xfc, 0x06, 0x73, 0xa4, 0xd4, 0x21, 0xd1, 0x78, + 0x67, 0x35, 0x65, 0x0b, 0x4a, 0xf1, 0x60, 0x26, 0x3a, 0x70, 0xc6, 0xa1, 0x94, 0xc2, 0xb8, 0x98, + 0x9b, 0x5e, 0x9c, 0xbc, 0x99, 0xfa, 0xd2, 0x73, 0x04, 0xd3, 0xb1, 0x0a, 0xbe, 0x9e, 0x6b, 0x11, + 0x9c, 0x2f, 0xc5, 0xb6, 0x60, 0x3d, 0x13, 0x79, 0x6a, 0x3d, 0xcf, 0x48, 0x53, 0xbe, 0x82, 0x7a, + 0xb1, 0x96, 0x6a, 0x3c, 0xb7, 0xd7, 0x97, 0xb3, 0xf8, 0x84, 0xe9, 0x15, 0x57, 0x6b, 0x97, 0xd4, + 0xd3, 0x92, 0x05, 0x67, 0x59, 0x71, 0x4f, 0xd3, 0xb4, 0x3c, 0x3e, 0x4b, 0x30, 0xaa, 0xe5, 0x28, + 0x27, 0x17, 0x0d, 0x31, 0x19, 0x7b, 0xe8, 0xac, 0xd1, 0x39, 0x73, 0xfb, 0x5c, 0x44, 0x8b, 0xb4, + 0xca, 0x74, 0x9e, 0xdb, 0x8a, 0x4b, 0x69, 0x1e, 0x86, 0x35, 0x5a, 0x49, 0x81, 0xb7, 0x66, 0x2e, + 0x29, 0x1c, 0xa3, 0x41, 0xf9, 0x5d, 0x22, 0xba, 0x68, 0xba, 0x34, 0x29, 0x5f, 0x7f, 0x9d, 0x14, + 0x89, 0x50, 0x31, 0xed, 0x8a, 0x8c, 0xfe, 0x77, 0x41, 0x99, 0xd6, 0x34, 0x68, 0x07, 0x4b, 0xc7, + 0x36, 0x3e, 0xfc, 0xc8, 0x48, 0xda, 0xae, 0x56, 0xd8, 0x8e, 0x39, 0xdd, 0x33, 0x74, 0x37, 0xb5, + 0x66, 0xe7, 0x72, 0xec, 0x98, 0xc5, 0x3d, 0xb7, 0xa5, 0x3f, 0xd2, 0xd6, 0xec, 0x54, 0x6a, 0x76, + 0x72, 0x23, 0xa9, 0xb8, 0xe5, 0x65, 0x6f, 0xef, 0xb0, 0x27, 0x4c, 0x65, 0x65, 0x75, 0xd7, 0xcc, + 0xc3, 0xb9, 0x29, 0xdf, 0x33, 0xa4, 0x60, 0xcb, 0xf9, 0x9f, 0xc3, 0xad, 0x43, 0x8e, 0xf7, 0xdc, + 0x16, 0x7e, 0xa5, 0x2d, 0x74, 0x89, 0x5c, 0xec, 0xea, 0x38, 0xde, 0x25, 0x59, 0x7b, 0x2e, 0xef, + 0x4d, 0x7c, 0x2a, 0x94, 0x4e, 0xa4, 0xae, 0x34, 0x9b, 0x4e, 0x69, 0xd6, 0x33, 0xad, 0xc7, 0xd3, + 0xe9, 0x2e, 0x32, 0x7e, 0x17, 0x12, 0xb6, 0xdf, 0x6e, 0x0d, 0xfb, 0x46, 0x2e, 0xc6, 0x19, 0x09, + 0xd8, 0x13, 0x8b, 0x71, 0x7e, 0x8a, 0xf6, 0x0e, 0xc7, 0xa0, 0x73, 0x55, 0xf7, 0xc0, 0xd3, 0xf2, + 0xa7, 0xab, 0x43, 0x50, 0x3a, 0xa5, 0xbb, 0x5a, 0x62, 0xb2, 0xd2, 0xad, 0x6f, 0x31, 0xfd, 0x87, + 0x6b, 0xef, 0x7a, 0x26, 0x6c, 0x32, 0x9b, 0x9f, 0x00, 0x5c, 0x2d, 0x37, 0x99, 0xa9, 0xb3, 0x35, + 0x86, 0x7a, 0x1a, 0x6a, 0xc5, 0x30, 0x23, 0x23, 0xb6, 0x62, 0x98, 0x99, 0xb7, 0xfa, 0x36, 0x5a, + 0x5d, 0x6c, 0xbf, 0x49, 0x75, 0xab, 0x8b, 0x96, 0xd7, 0x38, 0x61, 0xf4, 0x20, 0x1f, 0xa1, 0xc9, + 0xa3, 0xb3, 0x9d, 0x64, 0xc6, 0xe4, 0xa4, 0x7b, 0x96, 0x8c, 0xa8, 0xa4, 0xd1, 0xca, 0xc6, 0x9e, + 0xcc, 0x5b, 0x3d, 0x5b, 0x4a, 0x17, 0x08, 0xfa, 0x77, 0xa5, 0xd5, 0x04, 0x1b, 0x5c, 0x32, 0xad, + 0x4d, 0xf9, 0x6d, 0x7e, 0x57, 0x9a, 0x4c, 0x0c, 0xb2, 0x54, 0xca, 0xe8, 0x24, 0xd9, 0x0f, 0x60, + 0x2c, 0x4e, 0x0f, 0xbd, 0x37, 0xaf, 0x11, 0x26, 0x72, 0x46, 0x27, 0x09, 0xdf, 0x97, 0xd7, 0x2a, + 0x58, 0x9f, 0x59, 0xd8, 0x59, 0x05, 0xf8, 0x44, 0x9a, 0x68, 0x8c, 0x96, 0xa6, 0x92, 0x4d, 0x77, + 0x58, 0xb9, 0xc7, 0xf4, 0x9c, 0x96, 0x6a, 0x5e, 0x64, 0x64, 0xa5, 0x55, 0xf3, 0x22, 0x2b, 0xab, + 0x6c, 0x7c, 0xed, 0xf0, 0xa5, 0xb4, 0x47, 0xc4, 0x4c, 0x2f, 0x1b, 0xcd, 0x4a, 0xf1, 0xbd, 0x92, + 0x57, 0x9c, 0x64, 0x5d, 0x85, 0x62, 0x32, 0x01, 0xa7, 0x3a, 0xcc, 0xe5, 0x64, 0x4a, 0x55, 0x27, + 0xc4, 0xdc, 0xcc, 0x9d, 0xdb, 0xd2, 0xb8, 0x6e, 0xf2, 0xbd, 0x96, 0xdd, 0x28, 0x9d, 0x75, 0xbe, + 0xb5, 0x7d, 0xdc, 0xc8, 0xc5, 0xa9, 0x1f, 0xb3, 0x53, 0xb9, 0x3e, 0x75, 0xb5, 0x2c, 0x23, 0x7d, + 0xa7, 0x2b, 0x83, 0x3d, 0x65, 0xa7, 0x04, 0x7f, 0xcb, 0x3c, 0xff, 0x76, 0x88, 0xbf, 0xde, 0xf5, + 0x0a, 0x9a, 0xfc, 0x1a, 0xcc, 0xe4, 0x84, 0xaa, 0x26, 0xaf, 0x27, 0xcc, 0xb4, 0xd9, 0xa1, 0xac, + 0xd5, 0x04, 0xc9, 0x4c, 0x92, 0xbd, 0x81, 0xbe, 0x0b, 0x46, 0x58, 0x87, 0xd4, 0x7d, 0xe0, 0x23, + 0x37, 0x3a, 0xe4, 0xb9, 0xa0, 0xb5, 0x35, 0x37, 0x33, 0x1e, 0x04, 0xa9, 0xe2, 0x41, 0xc6, 0x80, + 0x66, 0x5c, 0x09, 0x66, 0x30, 0x9c, 0xcd, 0x66, 0xc8, 0xd6, 0x0e, 0x36, 0x17, 0x32, 0x62, 0x6e, + 0xa8, 0xb9, 0x90, 0x1f, 0x8f, 0x23, 0xb7, 0x99, 0xdb, 0x52, 0xc1, 0xca, 0xe6, 0x98, 0x1f, 0x7e, + 0x23, 0x97, 0xe3, 0x03, 0xc6, 0x31, 0x15, 0x51, 0x83, 0xe4, 0xa0, 0x77, 0x5e, 0x3d, 0x6c, 0xb9, + 0x5f, 0x9b, 0x54, 0xf3, 0x5a, 0xfb, 0xf2, 0x62, 0x77, 0xe4, 0xb6, 0x6f, 0x59, 0x7e, 0x4f, 0xd9, + 0xed, 0x3b, 0xed, 0x8e, 0xad, 0x2e, 0xcf, 0x12, 0x41, 0x5d, 0x8c, 0x8e, 0x6a, 0xf0, 0xd9, 0x1c, + 0x38, 0xd9, 0x44, 0x67, 0xa4, 0x24, 0x54, 0x3b, 0xd1, 0x66, 0x47, 0x8d, 0xc9, 0xe5, 0xc7, 0xe7, + 0xb1, 0x11, 0x75, 0xe3, 0x2c, 0xf3, 0x38, 0x11, 0xae, 0x43, 0xcc, 0x63, 0x03, 0x7a, 0xb6, 0x79, + 0x9c, 0x60, 0x68, 0xce, 0xe3, 0x64, 0x33, 0x93, 0x66, 0x82, 0xdc, 0x51, 0x4d, 0x36, 0x53, 0xcd, + 0xe3, 0x6c, 0x8e, 0xf9, 0xd1, 0x51, 0x72, 0x39, 0xaa, 0x79, 0x6c, 0x72, 0xcc, 0x41, 0x3f, 0xe5, + 0x3c, 0x4e, 0x56, 0x62, 0xce, 0xe3, 0x33, 0xb5, 0x4f, 0xcd, 0xe3, 0xec, 0xf6, 0x9d, 0x79, 0x1e, + 0x27, 0xc2, 0x09, 0x19, 0x1d, 0xcd, 0x9a, 0xc7, 0x49, 0x7c, 0x3e, 0x8f, 0x93, 0xd0, 0x84, 0x65, + 0xa6, 0xc3, 0x3c, 0x4e, 0x52, 0x7e, 0x8e, 0xfc, 0x12, 0xa1, 0x50, 0x4e, 0x33, 0x93, 0x73, 0xa3, + 0xa8, 0x90, 0x47, 0x68, 0x1b, 0x4c, 0xc0, 0x4f, 0x37, 0x9b, 0xe7, 0xf2, 0x98, 0xe2, 0x7c, 0xde, + 0x93, 0x42, 0x4c, 0x36, 0xd7, 0x34, 0x7c, 0x65, 0x47, 0x82, 0xe9, 0xd0, 0xe0, 0x3d, 0x36, 0x6f, + 0x1a, 0x1d, 0xf8, 0x76, 0x0a, 0x64, 0xd3, 0x81, 0xaf, 0x3a, 0x07, 0x25, 0xf9, 0xe6, 0x92, 0x74, + 0x9e, 0xdf, 0x5f, 0xc8, 0xdb, 0x91, 0x24, 0xdd, 0x7c, 0xe2, 0x64, 0x75, 0xe6, 0x96, 0xaa, 0x13, + 0x56, 0xb2, 0xa5, 0x67, 0x9d, 0xe7, 0x1b, 0x52, 0x7b, 0x48, 0x45, 0xc0, 0x4a, 0x74, 0x5a, 0x9f, + 0xeb, 0xb9, 0x25, 0x64, 0x07, 0x0d, 0xc1, 0x69, 0xb8, 0x66, 0x44, 0xce, 0x0b, 0xb5, 0xd5, 0x95, + 0x6b, 0x2a, 0x96, 0x8f, 0xce, 0x35, 0x2f, 0xd0, 0x8f, 0xe2, 0x9a, 0xa6, 0xfe, 0x14, 0x4d, 0x67, + 0xe2, 0xc5, 0x97, 0xf7, 0xd8, 0xcf, 0x3f, 0xe7, 0x4c, 0x1a, 0x0e, 0x53, 0x0c, 0x17, 0xfd, 0xd4, + 0x3e, 0x16, 0xd7, 0x7f, 0x12, 0x98, 0x2b, 0xfc, 0x2c, 0x7a, 0xf2, 0x29, 0x14, 0xc5, 0xf2, 0x16, + 0x33, 0xc8, 0x42, 0xcc, 0x1d, 0xba, 0x05, 0x69, 0xb1, 0x3b, 0x45, 0x0b, 0x4e, 0x63, 0xa9, 0x3b, + 0x8d, 0x24, 0xf2, 0xcd, 0x5a, 0x6c, 0x3b, 0xdc, 0x09, 0xda, 0x61, 0x44, 0x1b, 0x69, 0x73, 0x94, + 0xd9, 0x18, 0xe9, 0x56, 0x61, 0xa2, 0xef, 0xcd, 0x93, 0x35, 0x5c, 0xdb, 0x4c, 0x70, 0x27, 0x7b, + 0x5d, 0x36, 0x1b, 0x5c, 0x7a, 0x56, 0xd5, 0xd3, 0x22, 0xb3, 0x4d, 0x79, 0x75, 0xe7, 0x37, 0x4a, + 0x89, 0xe8, 0x94, 0xbd, 0xcb, 0x13, 0x11, 0x3f, 0x50, 0x73, 0xdb, 0x61, 0x37, 0xc9, 0x24, 0x1f, + 0x3b, 0x91, 0xcf, 0x60, 0x44, 0x12, 0x77, 0x17, 0x48, 0x92, 0x1a, 0x05, 0xb2, 0x04, 0xe3, 0xc6, + 0x4b, 0x2e, 0x75, 0xba, 0xc9, 0x7a, 0xdf, 0xd5, 0x61, 0x9c, 0xc7, 0x8d, 0x17, 0x5b, 0x8a, 0x4b, + 0xd6, 0x3b, 0xae, 0x5c, 0x2e, 0x3f, 0x84, 0x51, 0x21, 0xd2, 0x8e, 0xd2, 0xc8, 0x37, 0xd6, 0x4d, + 0x6b, 0x5e, 0xd1, 0xed, 0x86, 0x1b, 0x2d, 0xfa, 0xde, 0x63, 0xf7, 0xa0, 0xab, 0x60, 0xd2, 0x24, + 0x7b, 0xf3, 0xe4, 0x6b, 0x4c, 0x80, 0x2c, 0xd3, 0x52, 0xd3, 0xe8, 0x99, 0x1f, 0x3c, 0x71, 0xbd, + 0x83, 0x2e, 0x2c, 0xaf, 0x9a, 0x2c, 0x93, 0x74, 0xd2, 0xf1, 0xe4, 0x6b, 0x98, 0xad, 0xe6, 0x33, + 0xef, 0xca, 0xa4, 0xf3, 0xf6, 0x52, 0x85, 0x39, 0x74, 0xbd, 0x39, 0x6b, 0xdb, 0x3b, 0x32, 0xfd, + 0x92, 0x07, 0x51, 0x94, 0x86, 0xfe, 0xba, 0x1f, 0x34, 0xba, 0x73, 0x2c, 0x9b, 0xce, 0xbc, 0x09, + 0x32, 0x29, 0x8c, 0x2f, 0xe1, 0x62, 0x35, 0x97, 0x75, 0x37, 0x16, 0xdd, 0x34, 0xc9, 0x4b, 0x28, + 0x8a, 0x33, 0xb6, 0xbb, 0x23, 0xcf, 0x35, 0x5c, 0xd3, 0xd8, 0x3e, 0xb4, 0x1d, 0xd0, 0xc7, 0x34, + 0x40, 0x97, 0xf1, 0x6e, 0xce, 0xd2, 0x26, 0xba, 0xec, 0xf9, 0x1a, 0x9c, 0xaf, 0xa6, 0x58, 0xe5, + 0x91, 0x74, 0xbb, 0x3c, 0x9a, 0xc4, 0x9e, 0x9e, 0xb2, 0x5d, 0x5d, 0x5c, 0x8c, 0x46, 0x57, 0x68, + 0xb4, 0xbb, 0xd6, 0x45, 0x4a, 0xf2, 0x4d, 0x83, 0x44, 0xdc, 0xbb, 0xcb, 0x28, 0xab, 0x1a, 0x65, + 0x1a, 0x23, 0xf7, 0xe3, 0xfd, 0x4c, 0x5e, 0xa4, 0x74, 0xad, 0x36, 0x8f, 0xc3, 0x3d, 0x5c, 0x0b, + 0x85, 0xdb, 0xb4, 0x66, 0x82, 0xe4, 0x90, 0xd8, 0x54, 0xa7, 0x79, 0x50, 0x87, 0xa4, 0xc2, 0x8f, + 0x7f, 0x7c, 0x7a, 0x08, 0xd8, 0x95, 0x94, 0x3b, 0x7d, 0x47, 0x16, 0xdc, 0x84, 0xba, 0xee, 0xd7, + 0x9f, 0xe8, 0x26, 0x54, 0x2d, 0x45, 0xfe, 0xac, 0x99, 0xc0, 0x5e, 0xac, 0xf8, 0x98, 0xc5, 0x5e, + 0xf7, 0x1a, 0xd3, 0x93, 0xe4, 0xeb, 0x26, 0x54, 0x33, 0x9d, 0xff, 0x3d, 0x69, 0x5b, 0xc4, 0x0a, + 0x4d, 0xce, 0xb9, 0xa2, 0x51, 0x66, 0x45, 0x24, 0x32, 0xcd, 0x8a, 0x7a, 0x43, 0xf3, 0x2f, 0x02, + 0x48, 0x3a, 0x9f, 0xbf, 0x3a, 0xac, 0xe4, 0xa6, 0xfa, 0xef, 0xe0, 0xfc, 0x35, 0x29, 0x5c, 0x86, + 0x0c, 0xc1, 0xab, 0x40, 0xc4, 0xe9, 0xb2, 0x58, 0x94, 0xba, 0x27, 0xd3, 0x9d, 0x02, 0xd9, 0x84, + 0x0b, 0x2b, 0x34, 0x12, 0x6b, 0x9c, 0x4d, 0xc3, 0x28, 0x70, 0xeb, 0x51, 0xc7, 0x5b, 0x45, 0x79, + 0x36, 0xc9, 0xa0, 0xd9, 0x7b, 0x87, 0xf1, 0xab, 0x66, 0xf3, 0xeb, 0x48, 0xd7, 0xc1, 0xbf, 0x56, + 0x5c, 0x55, 0x9c, 0xa5, 0x89, 0xf9, 0x53, 0x7c, 0x88, 0xbb, 0xef, 0xe4, 0x93, 0x16, 0xe3, 0xa8, + 0x27, 0xe2, 0xb4, 0x75, 0x0b, 0x06, 0x39, 0x51, 0xee, 0x86, 0x3a, 0xa6, 0xd3, 0x90, 0xbb, 0x30, + 0xa2, 0xfc, 0x6f, 0x88, 0x51, 0x94, 0xdb, 0xae, 0xbb, 0x30, 0xc2, 0x8f, 0x56, 0xa7, 0x27, 0xf9, + 0x08, 0x46, 0x94, 0xc3, 0xce, 0x99, 0x77, 0xfa, 0x4f, 0x61, 0x5c, 0x77, 0xdd, 0x39, 0xbb, 0x20, + 0x7f, 0x88, 0x77, 0xbf, 0xf2, 0x8a, 0x25, 0x9f, 0x7e, 0x3a, 0x91, 0x35, 0x4c, 0x88, 0x94, 0x2f, + 0x90, 0x12, 0x98, 0xdb, 0xfc, 0xf3, 0x29, 0x6a, 0xf2, 0x91, 0x7c, 0x4d, 0xa5, 0x88, 0xd3, 0x48, + 0x1d, 0x64, 0x36, 0xc1, 0xc5, 0xfc, 0x22, 0xc4, 0x6a, 0x81, 0xed, 0xda, 0xec, 0xd3, 0xdc, 0x51, + 0x77, 0x17, 0x5d, 0x1e, 0x97, 0x2d, 0xd4, 0xd2, 0x52, 0xf9, 0xec, 0xf2, 0x19, 0x5d, 0xc9, 0x4f, + 0x81, 0x87, 0x83, 0xf1, 0x00, 0x4f, 0x81, 0xa9, 0xd2, 0xdc, 0xee, 0x75, 0x48, 0xa9, 0x17, 0x1f, + 0x7b, 0xd3, 0xec, 0x3a, 0x90, 0x75, 0x3a, 0x45, 0x8b, 0x37, 0xa2, 0xaf, 0x84, 0xdd, 0x9a, 0xf4, + 0x80, 0x3c, 0x7d, 0x67, 0xf3, 0x5b, 0x76, 0x29, 0xe3, 0x56, 0xbc, 0xeb, 0x58, 0xe4, 0xb1, 0xfb, + 0x35, 0xd4, 0x0e, 0x33, 0x83, 0x81, 0xe5, 0x33, 0xbb, 0xa1, 0x39, 0x56, 0x64, 0x52, 0xaa, 0x4d, + 0xef, 0x09, 0x3e, 0x53, 0xcb, 0xce, 0xf8, 0xf7, 0x46, 0x17, 0x2e, 0x52, 0x12, 0x6f, 0x76, 0xc5, + 0x53, 0x77, 0xac, 0x97, 0xf8, 0x0e, 0x9b, 0x5d, 0x5f, 0x97, 0x0c, 0x86, 0x19, 0xd7, 0xde, 0xca, + 0xbd, 0x34, 0x9b, 0xa1, 0xe9, 0x5e, 0xda, 0xb1, 0x0f, 0x79, 0xe2, 0xff, 0x1c, 0xca, 0xb1, 0xf7, + 0xc8, 0xd9, 0x06, 0x21, 0xdf, 0xab, 0x91, 0xa4, 0x24, 0x15, 0x92, 0x4e, 0x69, 0x78, 0x66, 0xaf, + 0xe5, 0x49, 0x38, 0xd4, 0xdc, 0x92, 0x84, 0x57, 0x5c, 0x22, 0xf7, 0x65, 0x5e, 0x16, 0xcd, 0x0e, + 0x76, 0x58, 0xf1, 0x6e, 0xef, 0x95, 0x30, 0x4a, 0x8f, 0xf6, 0xd9, 0x19, 0x29, 0xe7, 0x8e, 0x04, + 0x23, 0xab, 0xc3, 0xf0, 0x76, 0xbf, 0x7a, 0x2c, 0xe5, 0x8c, 0xeb, 0xd9, 0x07, 0xd4, 0x89, 0xdf, + 0xaa, 0x25, 0x62, 0x07, 0xea, 0xef, 0x83, 0xd3, 0x45, 0xc9, 0x87, 0x56, 0x59, 0x18, 0xca, 0xa3, + 0xaa, 0x24, 0xab, 0x60, 0x70, 0x76, 0x14, 0xf1, 0x03, 0x37, 0x7a, 0xbe, 0x68, 0xaf, 0xc7, 0x66, + 0x05, 0xbd, 0x40, 0xf2, 0x06, 0x59, 0x68, 0xaf, 0x93, 0xaf, 0x70, 0x29, 0x11, 0xec, 0x17, 0x7c, + 0x3f, 0x0a, 0xa3, 0xc0, 0x69, 0x55, 0xeb, 0x81, 0xdb, 0x8a, 0x72, 0x3b, 0x1d, 0x3b, 0x80, 0x67, + 0x91, 0x69, 0xfe, 0xa8, 0x22, 0xb6, 0x7c, 0x56, 0xf4, 0x1d, 0xf5, 0x26, 0x27, 0xab, 0xb0, 0xc3, + 0xc9, 0xa5, 0x2a, 0xa3, 0xc9, 0xbf, 0x4a, 0xa6, 0x35, 0x98, 0xc9, 0x89, 0x59, 0xa4, 0x6e, 0x6f, + 0x3b, 0xc7, 0x34, 0x9a, 0xed, 0x5c, 0x31, 0xf9, 0x1a, 0xa6, 0x33, 0x83, 0x1a, 0x29, 0x0b, 0x74, + 0xa7, 0x90, 0x47, 0xdd, 0x98, 0x3f, 0x81, 0x12, 0x7f, 0x0d, 0x82, 0x4e, 0xcf, 0x46, 0x7c, 0x9b, + 0xf8, 0x8d, 0x50, 0x0e, 0x42, 0x72, 0xbd, 0xce, 0xc7, 0x53, 0x0f, 0xde, 0xa7, 0x30, 0xb0, 0x49, + 0x22, 0xb5, 0xba, 0xfa, 0xf0, 0xb2, 0x0a, 0x3b, 0x3d, 0x44, 0xda, 0x86, 0xe9, 0x3d, 0x1a, 0xb8, + 0x8f, 0x9f, 0x27, 0x19, 0x4a, 0xc9, 0x64, 0x96, 0x76, 0xe2, 0xf8, 0x05, 0xcc, 0x2c, 0xfa, 0x47, + 0x2d, 0xf1, 0xe4, 0xcf, 0xe0, 0xa9, 0xae, 0xe2, 0xb3, 0xcb, 0xbb, 0x3b, 0x42, 0xcd, 0xe6, 0x27, + 0xc1, 0x57, 0xfe, 0x6f, 0x5d, 0xf3, 0xe4, 0xab, 0x87, 0x6b, 0x26, 0xfd, 0x0e, 0x4e, 0xc2, 0xac, + 0xac, 0xf8, 0xfa, 0x24, 0xec, 0x90, 0x35, 0x3f, 0xe7, 0x01, 0xd9, 0x4c, 0x4e, 0x22, 0xfc, 0x0e, + 0x5c, 0x4f, 0xd1, 0xda, 0x4d, 0xb9, 0xb7, 0x98, 0x29, 0xc3, 0x13, 0x1e, 0xd7, 0x99, 0xf9, 0xc4, + 0x33, 0xdb, 0xa9, 0x45, 0x76, 0x68, 0x36, 0x3b, 0xa8, 0x58, 0x44, 0x0f, 0xed, 0xc0, 0x30, 0xd1, + 0x88, 0x3f, 0xae, 0xd3, 0x76, 0x5a, 0xad, 0x53, 0xc4, 0xa8, 0xd4, 0x7e, 0x08, 0x63, 0x55, 0xbd, + 0xf2, 0x8c, 0x4a, 0x72, 0x27, 0x85, 0x7a, 0x42, 0xd4, 0xbd, 0xed, 0x1d, 0x1c, 0x49, 0xd5, 0xc6, + 0x73, 0xaa, 0x5e, 0xe4, 0xba, 0xce, 0x18, 0x39, 0xdb, 0xd4, 0x2e, 0x90, 0x95, 0x52, 0x51, 0xb9, + 0xce, 0x64, 0xa7, 0x79, 0xab, 0xf1, 0x2c, 0x33, 0xc9, 0x8c, 0x99, 0xc4, 0xea, 0x9e, 0x9a, 0x56, + 0x39, 0xd4, 0x77, 0x4c, 0xb9, 0xc9, 0xfd, 0x7c, 0xe2, 0x2c, 0x75, 0xba, 0x9f, 0x4f, 0x2a, 0xf7, + 0x9d, 0xee, 0xe7, 0x93, 0x91, 0xd8, 0x6e, 0x19, 0x79, 0xc5, 0xe9, 0x79, 0x3a, 0x18, 0x23, 0x14, + 0x9b, 0x8c, 0x2c, 0x40, 0x0f, 0xf5, 0x00, 0x21, 0x3c, 0xa9, 0x4f, 0x07, 0x5b, 0x6b, 0x32, 0x30, + 0x48, 0x22, 0x0b, 0xd0, 0x7d, 0x28, 0xf2, 0xfc, 0x06, 0x71, 0x4c, 0xc5, 0xd8, 0x6f, 0x30, 0x9d, + 0x76, 0xa1, 0xc3, 0xa0, 0x16, 0x93, 0xd1, 0xe8, 0x94, 0xc9, 0x2c, 0x27, 0x4c, 0x5d, 0x87, 0xa9, + 0x0a, 0x71, 0xcc, 0x39, 0x65, 0x98, 0x4a, 0x85, 0xa1, 0x9b, 0xbd, 0x98, 0x51, 0xa2, 0x54, 0xca, + 0x31, 0x3d, 0x42, 0x9d, 0xea, 0x52, 0x46, 0xd8, 0xba, 0xd9, 0x4b, 0x99, 0x65, 0x82, 0x51, 0xc4, + 0xb3, 0x33, 0x67, 0xe7, 0xa7, 0x8e, 0x5f, 0x81, 0x75, 0xc0, 0x91, 0xd5, 0xdc, 0x3c, 0x0d, 0xaa, + 0xa8, 0x95, 0xaa, 0xe4, 0x44, 0x19, 0x49, 0xb1, 0xdf, 0xcc, 0x78, 0xa8, 0x61, 0x60, 0xc4, 0xde, + 0x60, 0x9d, 0x33, 0x74, 0x93, 0x47, 0x32, 0x59, 0x4c, 0x4e, 0x4d, 0xdd, 0x18, 0xe4, 0x8e, 0xe0, + 0x23, 0x99, 0x1e, 0xe6, 0x55, 0x33, 0xde, 0x87, 0xb9, 0xc4, 0xeb, 0x0f, 0x93, 0xf1, 0xcd, 0xec, + 0x27, 0x22, 0x99, 0xe2, 0xc9, 0xd7, 0xd9, 0xaf, 0xa6, 0x5f, 0x89, 0x24, 0xc6, 0xfd, 0xac, 0x6b, + 0xde, 0x06, 0x4c, 0xe0, 0x32, 0x23, 0xd3, 0xbb, 0xc7, 0xf1, 0x69, 0x4c, 0x70, 0x32, 0x50, 0x52, + 0xb2, 0x54, 0xb9, 0xcc, 0x8e, 0x89, 0x17, 0xc5, 0x3c, 0x59, 0xfc, 0xac, 0xf9, 0xcc, 0x18, 0x81, + 0x59, 0xbb, 0x98, 0xc8, 0x41, 0x4f, 0x7e, 0x08, 0xe7, 0xe2, 0x87, 0xc6, 0x9c, 0x45, 0x06, 0x5a, + 0x07, 0x43, 0xd9, 0xb9, 0xf8, 0xb5, 0xf1, 0xd9, 0xc9, 0x57, 0xe5, 0x56, 0x14, 0x93, 0x5f, 0x4e, + 0xbd, 0x95, 0x31, 0xfa, 0x70, 0x9a, 0x1d, 0x49, 0x93, 0xed, 0x59, 0x47, 0xa7, 0x8e, 0x9f, 0x5b, + 0x76, 0xe8, 0x45, 0xfd, 0x73, 0xeb, 0x18, 0x1e, 0x52, 0xa9, 0xbf, 0x39, 0x7c, 0x36, 0xe0, 0x3a, + 0x86, 0x6b, 0xd9, 0xe6, 0x01, 0xfa, 0xb2, 0xb1, 0xf2, 0xdb, 0x9e, 0x0c, 0xf2, 0xd2, 0x84, 0x6b, + 0x5d, 0x63, 0x4f, 0x92, 0xdb, 0x86, 0x8b, 0x4b, 0xf7, 0x28, 0x95, 0x1d, 0x4e, 0x1e, 0x53, 0x59, + 0x21, 0x1c, 0xd5, 0x3e, 0xdb, 0x21, 0x9a, 0xa4, 0xda, 0x67, 0x3b, 0xc6, 0x80, 0xfc, 0x02, 0x33, + 0x30, 0x89, 0x3d, 0x0a, 0x43, 0x30, 0x51, 0x8f, 0x07, 0xa5, 0xee, 0x78, 0xed, 0x73, 0xcd, 0xbc, + 0x14, 0x4d, 0x11, 0xe2, 0x99, 0xe6, 0x8a, 0x38, 0x89, 0xe5, 0x31, 0xef, 0xce, 0xa4, 0x83, 0x6b, + 0xf5, 0x15, 0x3e, 0x01, 0xcf, 0xdc, 0xf2, 0x1c, 0xf8, 0xc2, 0xd2, 0xcf, 0xff, 0xc3, 0x95, 0xc2, + 0xcf, 0x7f, 0x71, 0xa5, 0xf0, 0xaf, 0x7f, 0x71, 0xa5, 0xf0, 0xef, 0x7f, 0x71, 0xa5, 0xf0, 0xd5, + 0xfc, 0xe9, 0x42, 0x23, 0xd7, 0x9b, 0x2e, 0xf5, 0xa2, 0xdb, 0x9c, 0xdd, 0x20, 0xfe, 0x77, 0xef, + 0x7f, 0x04, 0x00, 0x00, 0xff, 0xff, 0xdf, 0xc4, 0x27, 0x4f, 0x01, 0xea, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -27498,6 +27581,18 @@ func (m *UserCertsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + { + size, err := m.RouteToGitServer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthservice(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xda if m.TLSPublicKeyAttestationStatement != nil { { size, err := m.TLSPublicKeyAttestationStatement.MarshalToSizedBuffer(dAtA[:i]) @@ -27704,12 +27799,12 @@ func (m *UserCertsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x22 } - n10, err10 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err10 != nil { - return 0, err10 + n11, err11 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err11 != nil { + return 0, err11 } - i -= n10 - i = encodeVarintAuthservice(dAtA, i, uint64(n10)) + i -= n11 + i = encodeVarintAuthservice(dAtA, i, uint64(n11)) i-- dAtA[i] = 0x1a if len(m.Username) > 0 { @@ -27834,6 +27929,40 @@ func (m *RouteToWindowsDesktop) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *RouteToGitServer) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *RouteToGitServer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *RouteToGitServer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.GitHubOrganization) > 0 { + i -= len(m.GitHubOrganization) + copy(dAtA[i:], m.GitHubOrganization) + i = encodeVarintAuthservice(dAtA, i, uint64(len(m.GitHubOrganization))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *RouteToApp) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -28131,12 +28260,12 @@ func (m *RequestStateSetter) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.XXX_unrecognized) } if m.AssumeStartTime != nil { - n12, err12 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) - if err12 != nil { - return 0, err12 + n13, err13 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.AssumeStartTime, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.AssumeStartTime):]) + if err13 != nil { + return 0, err13 } - i -= n12 - i = encodeVarintAuthservice(dAtA, i, uint64(n12)) + i -= n13 + i = encodeVarintAuthservice(dAtA, i, uint64(n13)) i-- dAtA[i] = 0x3a } @@ -29646,12 +29775,12 @@ func (m *GenerateAppTokenRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) dAtA[i] = 0x2a } } - n28, err28 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err28 != nil { - return 0, err28 + n29, err29 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err29 != nil { + return 0, err29 } - i -= n28 - i = encodeVarintAuthservice(dAtA, i, uint64(n28)) + i -= n29 + i = encodeVarintAuthservice(dAtA, i, uint64(n29)) i-- dAtA[i] = 0x22 if len(m.URI) > 0 { @@ -32769,6 +32898,27 @@ func (m *IsMFARequiredRequest_App) MarshalToSizedBuffer(dAtA []byte) (int, error } return len(dAtA) - i, nil } +func (m *IsMFARequiredRequest_GitServer) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IsMFARequiredRequest_GitServer) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.GitServer != nil { + { + size, err := m.GitServer.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthservice(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x3a + } + return len(dAtA) - i, nil +} func (m *StreamSessionEventsRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -32968,20 +33118,20 @@ func (m *GetEventsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x22 } } - n63, err63 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) - if err63 != nil { - return 0, err63 + n65, err65 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) + if err65 != nil { + return 0, err65 } - i -= n63 - i = encodeVarintAuthservice(dAtA, i, uint64(n63)) + i -= n65 + i = encodeVarintAuthservice(dAtA, i, uint64(n65)) i-- dAtA[i] = 0x1a - n64, err64 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) - if err64 != nil { - return 0, err64 + n66, err66 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + if err66 != nil { + return 0, err66 } - i -= n64 - i = encodeVarintAuthservice(dAtA, i, uint64(n64)) + i -= n66 + i = encodeVarintAuthservice(dAtA, i, uint64(n66)) i-- dAtA[i] = 0x12 if len(m.Namespace) > 0 { @@ -33035,20 +33185,20 @@ func (m *GetSessionEventsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) i-- dAtA[i] = 0x18 } - n65, err65 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) - if err65 != nil { - return 0, err65 + n67, err67 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) + if err67 != nil { + return 0, err67 } - i -= n65 - i = encodeVarintAuthservice(dAtA, i, uint64(n65)) + i -= n67 + i = encodeVarintAuthservice(dAtA, i, uint64(n67)) i-- dAtA[i] = 0x12 - n66, err66 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) - if err66 != nil { - return 0, err66 + n68, err68 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + if err68 != nil { + return 0, err68 } - i -= n66 - i = encodeVarintAuthservice(dAtA, i, uint64(n66)) + i -= n68 + i = encodeVarintAuthservice(dAtA, i, uint64(n68)) i-- dAtA[i] = 0xa return len(dAtA) - i, nil @@ -34414,12 +34564,12 @@ func (m *RecoveryCodes) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n73, err73 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err73 != nil { - return 0, err73 + n75, err75 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err75 != nil { + return 0, err75 } - i -= n73 - i = encodeVarintAuthservice(dAtA, i, uint64(n73)) + i -= n75 + i = encodeVarintAuthservice(dAtA, i, uint64(n75)) i-- dAtA[i] = 0x12 if len(m.Codes) > 0 { @@ -35884,12 +36034,12 @@ func (m *SessionTrackerUpdateExpiry) MarshalToSizedBuffer(dAtA []byte) (int, err copy(dAtA[i:], m.XXX_unrecognized) } if m.Expires != nil { - n99, err99 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err99 != nil { - return 0, err99 + n101, err101 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err101 != nil { + return 0, err101 } - i -= n99 - i = encodeVarintAuthservice(dAtA, i, uint64(n99)) + i -= n101 + i = encodeVarintAuthservice(dAtA, i, uint64(n101)) i-- dAtA[i] = 0xa } @@ -39153,6 +39303,8 @@ func (m *UserCertsRequest) Size() (n int) { l = m.TLSPublicKeyAttestationStatement.Size() n += 2 + l + sovAuthservice(uint64(l)) } + l = m.RouteToGitServer.Size() + n += 2 + l + sovAuthservice(uint64(l)) if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -39213,6 +39365,22 @@ func (m *RouteToWindowsDesktop) Size() (n int) { return n } +func (m *RouteToGitServer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.GitHubOrganization) + if l > 0 { + n += 1 + l + sovAuthservice(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *RouteToApp) Size() (n int) { if m == nil { return 0 @@ -41452,6 +41620,18 @@ func (m *IsMFARequiredRequest_App) Size() (n int) { } return n } +func (m *IsMFARequiredRequest_GitServer) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.GitServer != nil { + l = m.GitServer.Size() + n += 1 + l + sovAuthservice(uint64(l)) + } + return n +} func (m *StreamSessionEventsRequest) Size() (n int) { if m == nil { return 0 @@ -45921,6 +46101,39 @@ func (m *UserCertsRequest) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 27: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RouteToGitServer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if err := m.RouteToGitServer.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipAuthservice(dAtA[iNdEx:]) @@ -46269,6 +46482,89 @@ func (m *RouteToWindowsDesktop) Unmarshal(dAtA []byte) error { } return nil } +func (m *RouteToGitServer) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: RouteToGitServer: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: RouteToGitServer: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitHubOrganization", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.GitHubOrganization = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipAuthservice(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthAuthservice + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *RouteToApp) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -58236,6 +58532,41 @@ func (m *IsMFARequiredRequest) Unmarshal(dAtA []byte) error { } m.Target = &IsMFARequiredRequest_App{v} iNdEx = postIndex + case 7: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field GitServer", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + v := &RouteToGitServer{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Target = &IsMFARequiredRequest_GitServer{v} + 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 b3e9682725098..2a6e380cbb2d1 100644 --- a/api/proto/teleport/legacy/client/proto/authservice.proto +++ b/api/proto/teleport/legacy/client/proto/authservice.proto @@ -184,6 +184,9 @@ message UserCertsRequest { // WindowsDesktop means a request for a TLS certificate for access to a specific // windows desktop. WindowsDesktop = 5; + // GitServer means a request for an SSH certificate for access to a git + // server, as specified by RouteToGitServer. + GitServer = 6; } // CertUsage limits the resulting user certificate to a single protocol. CertUsage Usage = 10 [(gogoproto.jsontag) = "usage,omitempty"]; @@ -291,6 +294,12 @@ message UserCertsRequest { teleport.attestation.v1.AttestationStatement SSHPublicKeyAttestationStatement = 25 [(gogoproto.jsontag) = "ssh_public_key_attestation_statement,omitempty"]; // TLSPublicKeyAttestationStatement is an attestation statement for TLSPublicKey. teleport.attestation.v1.AttestationStatement TLSPublicKeyAttestationStatement = 26 [(gogoproto.jsontag) = "tls_public_key_attestation_statement,omitempty"]; + + // RouteToGitServer specifies application to issue certificate for. + RouteToGitServer RouteToGitServer = 27 [ + (gogoproto.nullable) = false, + (gogoproto.jsontag) = "route_to_git_server,omitempty" + ]; } // RouteToDatabase combines parameters for database service routing information. @@ -315,6 +324,12 @@ message RouteToWindowsDesktop { string Login = 2 [(gogoproto.jsontag) = "login"]; } +// RouteToGitServer combines parameters for Git server routing information. +message RouteToGitServer { + // GitHubOrganization is the GitHub organization to embed. + string GitHubOrganization = 1 [(gogoproto.jsontag) = "github_organization"]; +} + // RouteToApp contains parameters for application access certificate requests. message RouteToApp { // Name is the application name certificate is being requested for. @@ -1417,6 +1432,8 @@ message IsMFARequiredRequest { AdminAction AdminAction = 5; // App specifies the target App. RouteToApp App = 6; + // GitServer specifies the target GitServer + RouteToGitServer GitServer = 7; } } diff --git a/api/types/events/events.pb.go b/api/types/events/events.pb.go index 0009fc96cfae2..bd54052d4dc77 100644 --- a/api/types/events/events.pb.go +++ b/api/types/events/events.pb.go @@ -13814,11 +13814,11 @@ type GitCommand struct { CommandMetadata `protobuf:"bytes,6,opt,name=Command,proto3,embedded=Command" json:""` // Service is the type of the git request like git-upload-pack or // git-receive-pack. - Service string `protobuf:"bytes,7,opt,name=service,proto3" json:"service"` + Service string `protobuf:"bytes,8,opt,name=service,proto3" json:"service"` // Path is the Git repo path, usually /. - Path string `protobuf:"bytes,8,opt,name=path,proto3" json:"path"` + Path string `protobuf:"bytes,9,opt,name=path,proto3" json:"path"` // Actions defines details for a Git push. - Actions []*GitCommandAction `protobuf:"bytes,9,rep,name=actions,proto3" json:"actions,omitempty"` + Actions []*GitCommandAction `protobuf:"bytes,10,rep,name=actions,proto3" json:"actions,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -14154,7 +14154,7 @@ func init() { } var fileDescriptor_007ba1c3d6266d56 = []byte{ - // 16173 bytes of a gzipped FileDescriptorProto + // 16172 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x69, 0x70, 0x24, 0xd9, 0x79, 0x20, 0x86, 0x3a, 0x50, 0x00, 0x3e, 0x1c, 0x0d, 0xbc, 0xbe, 0xb2, 0x7b, 0xba, 0x1b, 0x33, 0x39, 0x9c, 0x66, 0xf7, 0x70, 0xa6, 0x7b, 0xa6, 0xa7, 0x67, 0x86, 0x73, 0x71, 0xa6, 0x80, 0x02, @@ -15122,50 +15122,50 @@ var fileDescriptor_007ba1c3d6266d56 = []byte{ 0x1c, 0x6e, 0xdb, 0xb7, 0xfd, 0x14, 0x4e, 0x5e, 0xce, 0xb9, 0x73, 0xc8, 0xf7, 0xf8, 0xd2, 0xac, 0x9a, 0xdf, 0xd5, 0xac, 0x1a, 0x5a, 0x54, 0xf4, 0xee, 0xc2, 0xa2, 0xe2, 0x55, 0xe8, 0xf3, 0x73, 0x17, 0x15, 0xa2, 0xd5, 0x0b, 0x70, 0xa7, 0xea, 0x7d, 0xe9, 0x3f, 0x06, 0x7d, 0x22, 0xe4, 0xb9, - 0x38, 0x2a, 0xe0, 0x89, 0x42, 0x80, 0x34, 0xff, 0x0f, 0xb6, 0xe1, 0x6f, 0xe9, 0xde, 0xaa, 0x38, - 0x1f, 0x48, 0x4e, 0xad, 0xec, 0x5f, 0x52, 0x86, 0x3e, 0xb1, 0x47, 0x55, 0x06, 0xf0, 0xb6, 0x52, - 0x49, 0x26, 0x50, 0xe2, 0x5b, 0x55, 0x7e, 0x22, 0x15, 0xc4, 0xf2, 0x35, 0xae, 0x00, 0xa9, 0x7f, - 0x90, 0x81, 0xd1, 0x78, 0x21, 0xf2, 0x04, 0x14, 0xf8, 0x5f, 0xe2, 0x81, 0x00, 0x8d, 0x9d, 0x79, - 0x09, 0xd9, 0xd8, 0x59, 0x50, 0x3f, 0x0b, 0x03, 0x9a, 0x7f, 0xf0, 0x90, 0x03, 0x94, 0x07, 0xa7, - 0x11, 0x79, 0xb5, 0x08, 0x28, 0xc9, 0xa3, 0x90, 0x5b, 0x68, 0xf8, 0x71, 0xc9, 0xf1, 0x04, 0x64, - 0x37, 0x64, 0x4b, 0x6e, 0x86, 0x65, 0x44, 0xf3, 0x74, 0x4d, 0x6c, 0x2d, 0x90, 0xc8, 0xa2, 0x6b, - 0x32, 0xd1, 0x3c, 0x5d, 0x7b, 0x7c, 0x8e, 0xc7, 0x7f, 0xbf, 0x69, 0x5a, 0x06, 0x39, 0x03, 0x27, - 0x6f, 0x55, 0xa6, 0xb4, 0xea, 0xcd, 0xf2, 0x7c, 0xa9, 0x7a, 0x6b, 0xbe, 0xb2, 0x38, 0x35, 0x59, - 0x9e, 0x2e, 0x4f, 0x95, 0x46, 0x7b, 0xc8, 0x71, 0x38, 0x16, 0xa2, 0x66, 0x6e, 0xcd, 0x15, 0xe7, - 0x47, 0x33, 0x64, 0x0c, 0x86, 0x43, 0xe0, 0xc4, 0xc2, 0xd2, 0x68, 0xf6, 0xf1, 0xf7, 0xc3, 0x20, - 0x5e, 0x70, 0x89, 0xcf, 0x1b, 0x82, 0xfe, 0x85, 0x89, 0xca, 0x94, 0x76, 0x1b, 0x99, 0x00, 0x14, - 0x4a, 0x53, 0xf3, 0x8c, 0x61, 0xe6, 0xf1, 0x7f, 0x9d, 0x01, 0xa8, 0x4c, 0x2f, 0x2d, 0x0a, 0xc2, - 0x41, 0xe8, 0x2b, 0xcf, 0xdf, 0x2e, 0xce, 0x96, 0x19, 0x5d, 0x3f, 0xe4, 0x17, 0x16, 0xa7, 0x58, - 0x0d, 0x03, 0xd0, 0x3b, 0x39, 0xbb, 0x50, 0x99, 0x1a, 0xcd, 0x32, 0xa0, 0x36, 0x55, 0x2c, 0x8d, - 0xe6, 0x18, 0xf0, 0x8e, 0x56, 0x5e, 0x9a, 0x1a, 0xcd, 0xb3, 0x3f, 0x67, 0x2b, 0x4b, 0xc5, 0xa5, - 0xd1, 0x5e, 0xf6, 0xe7, 0x34, 0xfe, 0x59, 0x60, 0xcc, 0x2a, 0x53, 0x4b, 0xf8, 0xa3, 0x8f, 0x35, - 0x61, 0xda, 0xff, 0xd5, 0xcf, 0x50, 0x8c, 0x75, 0xa9, 0xac, 0x8d, 0x0e, 0xb0, 0x1f, 0x8c, 0x25, - 0xfb, 0x01, 0xac, 0x71, 0xda, 0xd4, 0xdc, 0xc2, 0xed, 0xa9, 0xd1, 0x41, 0xc6, 0x6b, 0xee, 0x26, - 0x03, 0x0f, 0xb1, 0x3f, 0xb5, 0x39, 0xf6, 0xe7, 0x30, 0xe3, 0xa4, 0x4d, 0x15, 0x67, 0x17, 0x8b, - 0x4b, 0x33, 0xa3, 0x23, 0xac, 0x3d, 0xc8, 0xf3, 0x18, 0x2f, 0x39, 0x5f, 0x9c, 0x9b, 0x1a, 0x1d, - 0x15, 0x34, 0xa5, 0xd9, 0xf2, 0xfc, 0xcd, 0xd1, 0x31, 0x6c, 0xc8, 0x9b, 0x73, 0xf8, 0x83, 0xb0, - 0x02, 0xf8, 0xd7, 0xf1, 0xc7, 0x3f, 0x06, 0x85, 0x85, 0x0a, 0x1e, 0x69, 0x4f, 0xc3, 0xf1, 0x85, - 0x4a, 0x75, 0xe9, 0xcd, 0xc5, 0xa9, 0x98, 0xbc, 0xc7, 0x60, 0xd8, 0x47, 0xcc, 0x96, 0xe7, 0x6f, - 0x7d, 0x98, 0x4b, 0xdb, 0x07, 0xcd, 0x15, 0x27, 0x17, 0x2a, 0xa3, 0x59, 0xd6, 0x2b, 0x3e, 0xe8, - 0x4e, 0x79, 0xbe, 0xb4, 0x70, 0xa7, 0x32, 0x9a, 0x7b, 0xfc, 0x9e, 0x9f, 0x9a, 0x7c, 0xc1, 0x31, - 0xeb, 0xa6, 0x45, 0xce, 0xc3, 0x99, 0xd2, 0xd4, 0xed, 0xf2, 0xe4, 0x54, 0x75, 0x41, 0x2b, 0xdf, - 0x28, 0xcf, 0xc7, 0x6a, 0x3a, 0x09, 0x63, 0x51, 0x74, 0x71, 0xb1, 0x3c, 0x9a, 0x21, 0xa7, 0x80, - 0x44, 0xc1, 0xaf, 0x17, 0xe7, 0xa6, 0x47, 0xb3, 0x44, 0x81, 0x13, 0x51, 0x78, 0x79, 0x7e, 0xe9, - 0xd6, 0xfc, 0xd4, 0x68, 0xee, 0xf1, 0x9f, 0xcf, 0xc0, 0xc9, 0xd4, 0x08, 0x2b, 0x44, 0x85, 0x0b, - 0x53, 0xb3, 0xc5, 0xca, 0x52, 0x79, 0xb2, 0x32, 0x55, 0xd4, 0x26, 0x67, 0xaa, 0x93, 0xc5, 0xa5, - 0xa9, 0x1b, 0x0b, 0xda, 0x9b, 0xd5, 0x1b, 0x53, 0xf3, 0x53, 0x5a, 0x71, 0x76, 0xb4, 0x87, 0x3c, - 0x0a, 0xe3, 0x1d, 0x68, 0x2a, 0x53, 0x93, 0xb7, 0xb4, 0xf2, 0xd2, 0x9b, 0xa3, 0x19, 0xf2, 0x08, - 0x9c, 0xef, 0x48, 0xc4, 0x7e, 0x8f, 0x66, 0xc9, 0x05, 0x38, 0xdb, 0x89, 0xe4, 0x8d, 0xd9, 0xd1, - 0xdc, 0xe3, 0x3f, 0x9e, 0x01, 0x92, 0x0c, 0x91, 0x41, 0x1e, 0x86, 0x73, 0x4c, 0x2f, 0xaa, 0x9d, - 0x1b, 0xf8, 0x08, 0x9c, 0x4f, 0xa5, 0x90, 0x9a, 0x37, 0x0e, 0x0f, 0x75, 0x20, 0x11, 0x8d, 0x3b, - 0x07, 0x4a, 0x3a, 0x01, 0x36, 0xed, 0xb7, 0x32, 0x70, 0x32, 0xf5, 0x7c, 0x4d, 0x2e, 0xc1, 0xfb, - 0x8a, 0xa5, 0x39, 0xd6, 0x37, 0x93, 0x4b, 0xe5, 0x85, 0xf9, 0x4a, 0x75, 0x6e, 0xba, 0x58, 0x65, - 0xda, 0x77, 0xab, 0x12, 0xeb, 0xcd, 0x8b, 0xa0, 0x76, 0xa1, 0x9c, 0x9c, 0x29, 0xce, 0xdf, 0x60, - 0xc3, 0x8f, 0xbc, 0x0f, 0x1e, 0xee, 0x48, 0x37, 0x35, 0x5f, 0x9c, 0x98, 0x9d, 0x2a, 0x8d, 0x66, - 0xc9, 0x63, 0xf0, 0x48, 0x47, 0xaa, 0x52, 0xb9, 0xc2, 0xc9, 0x72, 0x13, 0xa5, 0x77, 0xfe, 0xd1, - 0x85, 0x9e, 0x77, 0xbe, 0x75, 0x21, 0xf3, 0x27, 0xdf, 0xba, 0x90, 0xf9, 0xab, 0x6f, 0x5d, 0xc8, - 0x7c, 0xe4, 0xda, 0x4e, 0x42, 0x9f, 0xf0, 0xe9, 0x77, 0xb9, 0x80, 0x7b, 0xdd, 0x67, 0xfe, 0x7d, - 0x00, 0x00, 0x00, 0xff, 0xff, 0xa8, 0xe4, 0x10, 0x03, 0x92, 0x64, 0x01, 0x00, + 0xd8, 0xfb, 0xe3, 0x89, 0x42, 0x80, 0x34, 0xff, 0x0f, 0xb6, 0xe1, 0x6f, 0xe9, 0xde, 0xaa, 0xbc, + 0xe1, 0xe7, 0x4e, 0xad, 0xec, 0x5f, 0x52, 0x86, 0x3e, 0xb1, 0x47, 0x55, 0x00, 0x6f, 0x2b, 0x95, + 0x64, 0x02, 0x25, 0xbe, 0x55, 0xe5, 0x27, 0x52, 0x41, 0x2c, 0x5f, 0xe3, 0x0a, 0x90, 0xfa, 0x07, + 0x19, 0x18, 0x8d, 0x17, 0x22, 0x4f, 0x40, 0x81, 0xff, 0x25, 0x1e, 0x08, 0xd0, 0xd8, 0x99, 0x97, + 0x90, 0x8d, 0x9d, 0x05, 0xf5, 0xb3, 0x30, 0xa0, 0xf9, 0x07, 0x0f, 0x39, 0x40, 0x79, 0x70, 0x1a, + 0x91, 0x57, 0x8b, 0x80, 0x92, 0x3c, 0x0a, 0xb9, 0x85, 0x86, 0x1f, 0x97, 0x1c, 0x4f, 0x40, 0x76, + 0x43, 0xb6, 0xe4, 0x66, 0x58, 0x46, 0x34, 0x4f, 0xd7, 0xc4, 0xd6, 0x02, 0x89, 0x2c, 0xba, 0x26, + 0x13, 0xcd, 0xd3, 0xb5, 0xc7, 0xe7, 0x78, 0xfc, 0xf7, 0x9b, 0xa6, 0x65, 0x90, 0x33, 0x70, 0xf2, + 0x56, 0x65, 0x4a, 0xab, 0xde, 0x2c, 0xcf, 0x97, 0xaa, 0xb7, 0xe6, 0x2b, 0x8b, 0x53, 0x93, 0xe5, + 0xe9, 0xf2, 0x54, 0x69, 0xb4, 0x87, 0x1c, 0x87, 0x63, 0x21, 0x6a, 0xe6, 0xd6, 0x5c, 0x71, 0x7e, + 0x34, 0x43, 0xc6, 0x60, 0x38, 0x04, 0x4e, 0x2c, 0x2c, 0x8d, 0x66, 0x1f, 0x7f, 0x3f, 0x0c, 0xe2, + 0x05, 0x97, 0xf8, 0xbc, 0x21, 0xe8, 0x5f, 0x98, 0xa8, 0x4c, 0x69, 0xb7, 0x91, 0x09, 0x40, 0xa1, + 0x34, 0x35, 0xcf, 0x18, 0x66, 0x1e, 0xff, 0xd7, 0x19, 0x80, 0xca, 0xf4, 0xd2, 0xa2, 0x20, 0x1c, + 0x84, 0xbe, 0xf2, 0xfc, 0xed, 0xe2, 0x6c, 0x99, 0xd1, 0xf5, 0x43, 0x7e, 0x61, 0x71, 0x8a, 0xd5, + 0x30, 0x00, 0xbd, 0x93, 0xb3, 0x0b, 0x95, 0xa9, 0xd1, 0x2c, 0x03, 0x6a, 0x53, 0xc5, 0xd2, 0x68, + 0x8e, 0x01, 0xef, 0x68, 0xe5, 0xa5, 0xa9, 0xd1, 0x3c, 0xfb, 0x73, 0xb6, 0xb2, 0x54, 0x5c, 0x1a, + 0xed, 0x65, 0x7f, 0x4e, 0xe3, 0x9f, 0x05, 0xc6, 0xac, 0x32, 0xb5, 0x84, 0x3f, 0xfa, 0x58, 0x13, + 0xa6, 0xfd, 0x5f, 0xfd, 0x0c, 0xc5, 0x58, 0x97, 0xca, 0xda, 0xe8, 0x00, 0xfb, 0xc1, 0x58, 0xb2, + 0x1f, 0xc0, 0x1a, 0xa7, 0x4d, 0xcd, 0x2d, 0xdc, 0x9e, 0x1a, 0x1d, 0x64, 0xbc, 0xe6, 0x6e, 0x32, + 0xf0, 0x10, 0xfb, 0x53, 0x9b, 0x63, 0x7f, 0x0e, 0x33, 0x4e, 0xda, 0x54, 0x71, 0x76, 0xb1, 0xb8, + 0x34, 0x33, 0x3a, 0xc2, 0xda, 0x83, 0x3c, 0x8f, 0xf1, 0x92, 0xf3, 0xc5, 0xb9, 0xa9, 0xd1, 0x51, + 0x41, 0x53, 0x9a, 0x2d, 0xcf, 0xdf, 0x1c, 0x1d, 0xc3, 0x86, 0xbc, 0x39, 0x87, 0x3f, 0x08, 0x2b, + 0x80, 0x7f, 0x1d, 0x7f, 0xfc, 0x63, 0x50, 0x58, 0xa8, 0xe0, 0x91, 0xf6, 0x34, 0x1c, 0x5f, 0xa8, + 0x54, 0x97, 0xde, 0x5c, 0x9c, 0x8a, 0xc9, 0x7b, 0x0c, 0x86, 0x7d, 0xc4, 0x6c, 0x79, 0xfe, 0xd6, + 0x87, 0xb9, 0xb4, 0x7d, 0xd0, 0x5c, 0x71, 0x72, 0xa1, 0x32, 0x9a, 0x65, 0xbd, 0xe2, 0x83, 0xee, + 0x94, 0xe7, 0x4b, 0x0b, 0x77, 0x2a, 0xa3, 0xb9, 0xc7, 0xef, 0xf9, 0xa9, 0xc9, 0x17, 0x1c, 0xb3, + 0x6e, 0x5a, 0xe4, 0x3c, 0x9c, 0x29, 0x4d, 0xdd, 0x2e, 0x4f, 0x4e, 0x55, 0x17, 0xb4, 0xf2, 0x8d, + 0xf2, 0x7c, 0xac, 0xa6, 0x93, 0x30, 0x16, 0x45, 0x17, 0x17, 0xcb, 0xa3, 0x19, 0x72, 0x0a, 0x48, + 0x14, 0xfc, 0x7a, 0x71, 0x6e, 0x7a, 0x34, 0x4b, 0x14, 0x38, 0x11, 0x85, 0x97, 0xe7, 0x97, 0x6e, + 0xcd, 0x4f, 0x8d, 0xe6, 0x1e, 0xff, 0xf9, 0x0c, 0x9c, 0x4c, 0x8d, 0xb0, 0x42, 0x54, 0xb8, 0x30, + 0x35, 0x5b, 0xac, 0x2c, 0x95, 0x27, 0x2b, 0x53, 0x45, 0x6d, 0x72, 0xa6, 0x3a, 0x59, 0x5c, 0x9a, + 0xba, 0xb1, 0xa0, 0xbd, 0x59, 0xbd, 0x31, 0x35, 0x3f, 0xa5, 0x15, 0x67, 0x47, 0x7b, 0xc8, 0xa3, + 0x30, 0xde, 0x81, 0xa6, 0x32, 0x35, 0x79, 0x4b, 0x2b, 0x2f, 0xbd, 0x39, 0x9a, 0x21, 0x8f, 0xc0, + 0xf9, 0x8e, 0x44, 0xec, 0xf7, 0x68, 0x96, 0x5c, 0x80, 0xb3, 0x9d, 0x48, 0xde, 0x98, 0x1d, 0xcd, + 0x3d, 0xfe, 0xe3, 0x19, 0x20, 0xc9, 0x10, 0x19, 0xe4, 0x61, 0x38, 0xc7, 0xf4, 0xa2, 0xda, 0xb9, + 0x81, 0x8f, 0xc0, 0xf9, 0x54, 0x0a, 0xa9, 0x79, 0xe3, 0xf0, 0x50, 0x07, 0x12, 0xd1, 0xb8, 0x73, + 0xa0, 0xa4, 0x13, 0x60, 0xd3, 0x7e, 0x2b, 0x03, 0x27, 0x53, 0xcf, 0xd7, 0xe4, 0x12, 0xbc, 0xaf, + 0x58, 0x9a, 0x63, 0x7d, 0x33, 0xb9, 0x54, 0x5e, 0x98, 0xaf, 0x54, 0xe7, 0xa6, 0x8b, 0x55, 0xa6, + 0x7d, 0xb7, 0x2a, 0xb1, 0xde, 0xbc, 0x08, 0x6a, 0x17, 0xca, 0xc9, 0x99, 0xe2, 0xfc, 0x0d, 0x36, + 0xfc, 0xc8, 0xfb, 0xe0, 0xe1, 0x8e, 0x74, 0x53, 0xf3, 0xc5, 0x89, 0xd9, 0xa9, 0xd2, 0x68, 0x96, + 0x3c, 0x06, 0x8f, 0x74, 0xa4, 0x2a, 0x95, 0x2b, 0x9c, 0x2c, 0x37, 0x51, 0x7a, 0xe7, 0x1f, 0x5d, + 0xe8, 0x79, 0xe7, 0x5b, 0x17, 0x32, 0x7f, 0xf2, 0xad, 0x0b, 0x99, 0xbf, 0xfa, 0xd6, 0x85, 0xcc, + 0x47, 0xae, 0xed, 0x24, 0xf4, 0x09, 0x9f, 0x7e, 0x97, 0x0b, 0xb8, 0xd7, 0x7d, 0xe6, 0xdf, 0x07, + 0x00, 0x00, 0xff, 0xff, 0x72, 0xad, 0x98, 0x56, 0x92, 0x64, 0x01, 0x00, } func (m *Metadata) Marshal() (dAtA []byte, err error) { @@ -35386,7 +35386,7 @@ func (m *GitCommand) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintEvents(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x4a + dAtA[i] = 0x52 } } if len(m.Path) > 0 { @@ -35394,14 +35394,14 @@ func (m *GitCommand) MarshalToSizedBuffer(dAtA []byte) (int, error) { copy(dAtA[i:], m.Path) i = encodeVarintEvents(dAtA, i, uint64(len(m.Path))) i-- - dAtA[i] = 0x42 + dAtA[i] = 0x4a } if len(m.Service) > 0 { i -= len(m.Service) copy(dAtA[i:], m.Service) i = encodeVarintEvents(dAtA, i, uint64(len(m.Service))) i-- - dAtA[i] = 0x3a + dAtA[i] = 0x42 } { size, err := m.CommandMetadata.MarshalToSizedBuffer(dAtA[:i]) @@ -98404,7 +98404,7 @@ func (m *GitCommand) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex - case 7: + case 8: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Service", wireType) } @@ -98436,7 +98436,7 @@ func (m *GitCommand) Unmarshal(dAtA []byte) error { } m.Service = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 8: + case 9: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) } @@ -98468,7 +98468,7 @@ func (m *GitCommand) Unmarshal(dAtA []byte) error { } m.Path = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex - case 9: + case 10: if wireType != 2 { return fmt.Errorf("proto: wrong wireType = %d for field Actions", wireType) } diff --git a/api/types/server.go b/api/types/server.go index 5adfe7b2b2112..c98543f3b5c2e 100644 --- a/api/types/server.go +++ b/api/types/server.go @@ -501,10 +501,21 @@ func (s *ServerV2) openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults() er return nil } +// TODO func MakeGitHubOrgServerDomain(org string) string { return fmt.Sprintf("%s.%s", org, GitHubServerDomain) } +func GetGitHubOrgFromNodeAddr(addr string) (string, bool) { + if host, _, err := net.SplitHostPort(addr); err == nil { + addr = host + } + if strings.HasSuffix(addr, "."+GitHubServerDomain) { + return strings.TrimSuffix(addr, "."+GitHubServerDomain), true + } + return "", false +} + func (s *ServerV2) githubCheckAndSetDefaults() error { if s.Spec.GitHub == nil || s.Spec.GitHub.Organization == "" { return trace.BadParameter("missing github organization") diff --git a/lib/auth/auth.go b/lib/auth/auth.go index f2a99f9a47fc3..e98dd2f47cebe 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -6354,6 +6354,38 @@ func (a *Server) isMFARequired(ctx context.Context, checker services.AccessCheck } } + case *proto.IsMFARequiredRequest_GitServer: + if t.GitServer == nil || t.GitServer.GitHubOrganization == "" { + return nil, trace.BadParameter("missing GitHubOrganization") + } + + allGitServers, err := a.GetGitServers(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + + var matchedServer types.Server + for _, server := range allGitServers { + if github := server.GetGitHub(); github != nil { + // RBAC is based on the GitHub org name so pick any server that matches. + if github.Organization == t.GitServer.GitHubOrganization { + matchedServer = server + break + } + } + } + if matchedServer == nil { + return nil, trace.NotFound("git server for github organization %q not found", t.GitServer.GitHubOrganization) + } + + accessError := checker.CheckAccess(matchedServer, services.AccessState{}) + switch { + case errors.Is(accessError, services.ErrSessionMFARequired): + noMFAAccessErr = accessError + case accessError != nil: + return nil, trace.Wrap(accessError) + } + case *proto.IsMFARequiredRequest_KubernetesCluster: if t.KubernetesCluster == "" { return nil, trace.BadParameter("missing KubernetesCluster field in a kubernetes-only UserCertsRequest") diff --git a/lib/auth/auth_with_roles.go b/lib/auth/auth_with_roles.go index 062827f126745..98f47eab5b196 100644 --- a/lib/auth/auth_with_roles.go +++ b/lib/auth/auth_with_roles.go @@ -3378,6 +3378,8 @@ func (a *ServerWithRoles) generateUserCerts(ctx context.Context, req proto.UserC case proto.UserCertsRequest_SSH: // SSH certs are ssh-only by definition, certReq.usage only applies to // TLS certs. + case proto.UserCertsRequest_GitServer: + // Same as SSH case proto.UserCertsRequest_All: // Unrestricted usage. case proto.UserCertsRequest_WindowsDesktop: diff --git a/lib/auth/grpcserver.go b/lib/auth/grpcserver.go index 8e07f04fef234..fbf0ed1c9c825 100644 --- a/lib/auth/grpcserver.go +++ b/lib/auth/grpcserver.go @@ -600,6 +600,10 @@ func validateUserCertsRequest(actx *grpcContext, req *authpb.UserCertsRequest) e if req.NodeName == "" { return trace.BadParameter("missing NodeName field in a ssh-only UserCertsRequest") } + case authpb.UserCertsRequest_GitServer: + if req.RouteToGitServer.GitHubOrganization == "" { + return trace.BadParameter("missing GithubOrganization field in a git-server-only UserCertsRequest") + } case authpb.UserCertsRequest_Kubernetes: if req.KubernetesCluster == "" { return trace.BadParameter("missing KubernetesCluster field in a kubernetes-only UserCertsRequest") @@ -2469,6 +2473,8 @@ func userSingleUseCertsGenerate(ctx context.Context, actx *grpcContext, req auth switch req.Usage { case authpb.UserCertsRequest_SSH: resp.SSH = certs.SSH + case authpb.UserCertsRequest_GitServer: + resp.SSH = certs.SSH case authpb.UserCertsRequest_Kubernetes, authpb.UserCertsRequest_Database, authpb.UserCertsRequest_WindowsDesktop, authpb.UserCertsRequest_App: resp.TLS = certs.TLS default: diff --git a/lib/client/api.go b/lib/client/api.go index bd6fd318823f1..9ddf4b7327ba7 100644 --- a/lib/client/api.go +++ b/lib/client/api.go @@ -2711,17 +2711,25 @@ func (tc *TeleportClient) runCommandOnNodes(ctx context.Context, clt *ClusterCli ) defer span.End() - // Let's check if the first node requires mfa. - // If it's required, run commands sequentially to avoid - // race conditions and weird ux during mfa. - mfaRequiredCheck, err := clt.AuthClient.IsMFARequired(ctx, &proto.IsMFARequiredRequest{ - Target: &proto.IsMFARequiredRequest_Node{ + req := &proto.IsMFARequiredRequest{} + if githubOrg, ok := types.GetGitHubOrgFromNodeAddr(nodes[0].addr); ok { + req.Target = &proto.IsMFARequiredRequest_GitServer{ + GitServer: &proto.RouteToGitServer{ + GitHubOrganization: githubOrg, + }, + } + } else { + req.Target = &proto.IsMFARequiredRequest_Node{ Node: &proto.NodeLogin{ Node: nodeName(targetNode{addr: nodes[0].addr}), Login: tc.Config.HostLogin, }, - }, - }) + } + } + // Let's check if the first node requires mfa. + // If it's required, run commands sequentially to avoid + // race conditions and weird ux during mfa. + mfaRequiredCheck, err := clt.AuthClient.IsMFARequired(ctx, req) if err != nil { return trace.Wrap(err) } diff --git a/lib/client/client.go b/lib/client/client.go index 9cad698bb0c53..92ebd7bf63212 100644 --- a/lib/client/client.go +++ b/lib/client/client.go @@ -122,6 +122,7 @@ type ReissueParams struct { RouteToDatabase proto.RouteToDatabase RouteToApp proto.RouteToApp RouteToWindowsDesktop proto.RouteToWindowsDesktop + RouteToGitServer proto.RouteToGitServer // ExistingCreds is a gross hack for lib/web/terminal.go to pass in // existing user credentials. The TeleportClient in lib/web/terminal.go @@ -167,6 +168,8 @@ func (p ReissueParams) usage() proto.UserCertsRequest_CertUsage { return proto.UserCertsRequest_App case p.RouteToWindowsDesktop.WindowsDesktop != "": return proto.UserCertsRequest_WindowsDesktop + case p.RouteToGitServer.GitHubOrganization != "": + return proto.UserCertsRequest_GitServer default: // All means a request for both SSH and TLS certificates for the // overall user session. These certificates are not specific to any SSH @@ -188,6 +191,8 @@ func (p ReissueParams) isMFARequiredRequest(sshLogin string) *proto.IsMFARequire req.Target = &proto.IsMFARequiredRequest_WindowsDesktop{WindowsDesktop: &p.RouteToWindowsDesktop} case p.RouteToApp.Name != "": req.Target = &proto.IsMFARequiredRequest_App{App: &p.RouteToApp} + case p.RouteToGitServer.GitHubOrganization != "": + req.Target = &proto.IsMFARequiredRequest_GitServer{GitServer: &p.RouteToGitServer} } return req } diff --git a/lib/client/cluster_client.go b/lib/client/cluster_client.go index 4b22a9df18c58..9f2bb732956e6 100644 --- a/lib/client/cluster_client.go +++ b/lib/client/cluster_client.go @@ -33,6 +33,7 @@ import ( proxyclient "github.com/gravitational/teleport/api/client/proxy" mfav1 "github.com/gravitational/teleport/api/gen/proto/go/teleport/mfa/v1" "github.com/gravitational/teleport/api/mfa" + "github.com/gravitational/teleport/api/types" "github.com/gravitational/teleport/api/utils/keys" "github.com/gravitational/teleport/lib/auth/authclient" "github.com/gravitational/teleport/lib/cryptosuites" @@ -309,14 +310,21 @@ func (c *ClusterClient) SessionSSHConfig(ctx context.Context, user string, targe defer authClient.Close() } + params := ReissueParams{ + RouteToCluster: target.Cluster, + MFACheck: target.MFACheck, + } + + if githubOrg, ok := types.GetGitHubOrgFromNodeAddr(target.Addr); ok { + params.RouteToGitServer.GitHubOrganization = githubOrg + } else { + params.NodeName = nodeName(targetNode{addr: target.Addr}) + } + log.Debug("Attempting to issue a single-use user certificate with an MFA check.") keyRing, err = c.performMFACeremony(ctx, mfaClt, - ReissueParams{ - NodeName: nodeName(targetNode{addr: target.Addr}), - RouteToCluster: target.Cluster, - MFACheck: target.MFACheck, - }, + params, keyRing, c.tc.NewMFAPrompt(), ) @@ -402,6 +410,7 @@ func (c *ClusterClient) prepareUserCertsRequest(ctx context.Context, params Reis RouteToDatabase: params.RouteToDatabase, RouteToWindowsDesktop: params.RouteToWindowsDesktop, RouteToApp: params.RouteToApp, + RouteToGitServer: params.RouteToGitServer, NodeName: params.NodeName, Usage: params.usage(), Format: c.tc.CertificateFormat, @@ -656,6 +665,8 @@ func PerformMFACeremony(ctx context.Context, params PerformMFACeremonyParams) (* return nil, nil, trace.Wrap(ceremonyFailedErr{err}) } + log.Debugf("==== params.MFAPrompt.Run resp %v", authnSolved) + // Issue certificate. certsReq := params.CertsReq certsReq.MFAResponse = authnSolved From 35c34f78ce180137ea21ffd3638864e6539fe4bf Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Tue, 1 Oct 2024 14:22:41 -0400 Subject: [PATCH 4/8] oauth flow --- api/client/alpn_conn_upgrade.go | 4 +- api/client/client.go | 15 +- api/client/proto/authservice.pb.go | 2270 +++++---- api/constants/constants.go | 5 - .../integration/v1/integration_service.pb.go | 248 +- .../userloginstate/v1/userloginstate.pb.go | 129 +- .../integration/v1/integration_service.proto | 4 + .../legacy/client/proto/authservice.proto | 10 + api/proto/teleport/legacy/types/types.proto | 36 +- .../userloginstate/v1/userloginstate.proto | 11 + api/types/github.go | 4 +- api/types/integration.go | 77 +- api/types/role.go | 4 +- api/types/server.go | 17 +- api/types/types.pb.go | 4118 +++++++++-------- api/types/user.go | 39 +- .../convert/v1/user_login_state.go | 13 +- api/types/userloginstate/user_login_state.go | 20 + api/utils/route.go | 5 - api/utils/uri_test.go | 1 - constants.go | 8 + e | 2 +- go.mod | 17 +- go.sum | 4 +- lib/auth/auth.go | 19 +- lib/auth/auth_with_roles.go | 91 +- lib/auth/authclient/clt.go | 1 + lib/auth/github.go | 121 +- lib/auth/gitserver/gitserverv1/service.go | 27 +- lib/auth/grpcserver.go | 13 + lib/auth/integration/integrationv1/service.go | 38 +- lib/auth/keygen/keygen.go | 6 + lib/auth/sessions.go | 2 + lib/auth/userloginstate/generator.go | 2 + lib/cache/cache.go | 5 +- lib/cache/collections.go | 2 +- lib/client/api.go | 123 + lib/client/cluster_client.go | 2 - lib/client/profile.go | 17 +- lib/proxy/router.go | 2 + lib/services/access_checker.go | 20 +- lib/services/authority.go | 6 + lib/services/integration.go | 2 +- lib/services/local/integrations.go | 29 +- lib/services/local/presence.go | 2 - lib/services/presets.go | 4 + lib/srv/authhandlers.go | 28 +- lib/srv/ctx.go | 4 + lib/srv/exec.go | 31 +- lib/srv/forward/sshserver.go | 32 +- lib/utils/utils.go | 4 +- lib/web/apiserver.go | 3 + lib/web/integrations.go | 9 +- lib/web/servers.go | 61 + lib/web/ui/integration.go | 13 +- lib/web/ui/server.go | 3 + tool/tctl/common/resource_command.go | 4 +- tool/tctl/common/user_command.go | 9 - tool/tsh/common/git.go | 116 +- tool/tsh/common/tsh.go | 15 +- .../Enroll/GitHub/ConfigureAccess.tsx | 134 + .../Enroll/GitHub/ConfigureGitHub.tsx | 77 + .../Enroll/GitHub/ConfigureOAuth.tsx | 152 + .../Enroll/GitHub/CreateGitServer.tsx | 115 + .../Enroll/GitHub/CreateIntegration.tsx | 119 + .../src/Integrations/Enroll/GitHub/GitHub.tsx | 300 +- .../src/Integrations/Enroll/GitHub/Usage.tsx | 89 + .../Integrations/Enroll/GitHub/useGitHub.tsx | 46 + web/packages/teleport/src/config.ts | 8 +- .../src/services/gitservers/gitservers.ts | 13 +- .../teleport/src/services/gitservers/index.ts | 5 +- .../teleport/src/services/gitservers/types.ts | 4 + .../src/services/integrations/integrations.ts | 1 + .../src/services/integrations/types.ts | 12 +- 74 files changed, 5543 insertions(+), 3459 deletions(-) create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureAccess.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureGitHub.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureOAuth.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/CreateGitServer.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/CreateIntegration.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/Usage.tsx create mode 100644 web/packages/teleport/src/Integrations/Enroll/GitHub/useGitHub.tsx diff --git a/api/client/alpn_conn_upgrade.go b/api/client/alpn_conn_upgrade.go index 2aeb5b8f63567..d9a4486ed78c5 100644 --- a/api/client/alpn_conn_upgrade.go +++ b/api/client/alpn_conn_upgrade.go @@ -74,11 +74,11 @@ func IsALPNConnUpgradeRequired(ctx context.Context, addr string, insecure bool, logger := slog.With("address", addr) if err != nil { if isRemoteNoALPNError(err) { - logger.WarnContext(ctx, "No ALPN protocol is negotiated by the server.", "upgrade_required", true) + logger.DebugContext(ctx, "No ALPN protocol is negotiated by the server.", "upgrade_required", true) return true } if isUnadvertisedALPNError(err) { - logger.WarnContext(ctx, "ALPN connection upgrade received an unadvertised ALPN protocol.", "error", err) + logger.DebugContext(ctx, "ALPN connection upgrade received an unadvertised ALPN protocol.", "error", err) return true } diff --git a/api/client/client.go b/api/client/client.go index 72a6735c4f985..c3964a26bc8f8 100644 --- a/api/client/client.go +++ b/api/client/client.go @@ -4471,10 +4471,11 @@ func (c *Client) integrationsClient() integrationpb.IntegrationServiceClient { // ListIntegrations returns a paginated list of Integrations. // The response includes a nextKey which must be used to fetch the next page. -func (c *Client) ListIntegrations(ctx context.Context, pageSize int, nextKey string) ([]types.Integration, string, error) { +func (c *Client) ListIntegrations(ctx context.Context, pageSize int, nextKey string, withSecrets bool) ([]types.Integration, string, error) { resp, err := c.integrationsClient().ListIntegrations(ctx, &integrationpb.ListIntegrationsRequest{ - Limit: int32(pageSize), - NextKey: nextKey, + Limit: int32(pageSize), + NextKey: nextKey, + WithSecrets: withSecrets, }) if err != nil { return nil, "", trace.Wrap(err) @@ -4493,7 +4494,7 @@ func (c *Client) ListAllIntegrations(ctx context.Context) ([]types.Integration, var result []types.Integration var nextKey string for { - integrations, nextKey, err := c.ListIntegrations(ctx, 0, nextKey) + integrations, nextKey, err := c.ListIntegrations(ctx, 0, nextKey, false /*withSecrets*/) if err != nil { return nil, trace.Wrap(err) } @@ -4957,3 +4958,9 @@ func (c *Client) GetRemoteCluster(ctx context.Context, name string) (types.Remot }) return rc, trace.Wrap(err) } + +// TODO +func (c *Client) CreateGithubAuthRequestForUser(ctx context.Context, req *proto.CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) { + resp, err := c.grpc.CreateGithubAuthRequestForUser(ctx, req) + return resp, trace.Wrap(err) +} diff --git a/api/client/proto/authservice.pb.go b/api/client/proto/authservice.pb.go index 8483b4181e57d..06ced3e6e0e9b 100644 --- a/api/client/proto/authservice.pb.go +++ b/api/client/proto/authservice.pb.go @@ -12287,6 +12287,63 @@ func (m *GetGithubAuthRequestRequest) GetStateToken() string { return "" } +type CreateGithubAuthRequestForUserRequest struct { + // CertRequest is the reissue cert request + CertRequest *UserCertsRequest `protobuf:"bytes,1,opt,name=cert_request,json=certRequest,proto3" json:"cert_request,omitempty"` + // RedirectUrl is the redirect url used by client browser. + RedirectUrl string `protobuf:"bytes,2,opt,name=redirect_url,json=redirectUrl,proto3" json:"redirect_url,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CreateGithubAuthRequestForUserRequest) Reset() { *m = CreateGithubAuthRequestForUserRequest{} } +func (m *CreateGithubAuthRequestForUserRequest) String() string { return proto.CompactTextString(m) } +func (*CreateGithubAuthRequestForUserRequest) ProtoMessage() {} +func (*CreateGithubAuthRequestForUserRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_0ffcffcda38ae159, []int{179} +} +func (m *CreateGithubAuthRequestForUserRequest) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *CreateGithubAuthRequestForUserRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_CreateGithubAuthRequestForUserRequest.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *CreateGithubAuthRequestForUserRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CreateGithubAuthRequestForUserRequest.Merge(m, src) +} +func (m *CreateGithubAuthRequestForUserRequest) XXX_Size() int { + return m.Size() +} +func (m *CreateGithubAuthRequestForUserRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CreateGithubAuthRequestForUserRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CreateGithubAuthRequestForUserRequest proto.InternalMessageInfo + +func (m *CreateGithubAuthRequestForUserRequest) GetCertRequest() *UserCertsRequest { + if m != nil { + return m.CertRequest + } + return nil +} + +func (m *CreateGithubAuthRequestForUserRequest) GetRedirectUrl() string { + if m != nil { + return m.RedirectUrl + } + return "" +} + // CreateOIDCConnectorRequest is a request for CreateOIDCConnector. type CreateOIDCConnectorRequest struct { // Connector to be created. @@ -12300,7 +12357,7 @@ func (m *CreateOIDCConnectorRequest) Reset() { *m = CreateOIDCConnectorR func (m *CreateOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateOIDCConnectorRequest) ProtoMessage() {} func (*CreateOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{179} + return fileDescriptor_0ffcffcda38ae159, []int{180} } func (m *CreateOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12349,7 +12406,7 @@ func (m *UpdateOIDCConnectorRequest) Reset() { *m = UpdateOIDCConnectorR func (m *UpdateOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateOIDCConnectorRequest) ProtoMessage() {} func (*UpdateOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{180} + return fileDescriptor_0ffcffcda38ae159, []int{181} } func (m *UpdateOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12398,7 +12455,7 @@ func (m *UpsertOIDCConnectorRequest) Reset() { *m = UpsertOIDCConnectorR func (m *UpsertOIDCConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertOIDCConnectorRequest) ProtoMessage() {} func (*UpsertOIDCConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{181} + return fileDescriptor_0ffcffcda38ae159, []int{182} } func (m *UpsertOIDCConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12447,7 +12504,7 @@ func (m *CreateSAMLConnectorRequest) Reset() { *m = CreateSAMLConnectorR func (m *CreateSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateSAMLConnectorRequest) ProtoMessage() {} func (*CreateSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{182} + return fileDescriptor_0ffcffcda38ae159, []int{183} } func (m *CreateSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12496,7 +12553,7 @@ func (m *UpdateSAMLConnectorRequest) Reset() { *m = UpdateSAMLConnectorR func (m *UpdateSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateSAMLConnectorRequest) ProtoMessage() {} func (*UpdateSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{183} + return fileDescriptor_0ffcffcda38ae159, []int{184} } func (m *UpdateSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12545,7 +12602,7 @@ func (m *UpsertSAMLConnectorRequest) Reset() { *m = UpsertSAMLConnectorR func (m *UpsertSAMLConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertSAMLConnectorRequest) ProtoMessage() {} func (*UpsertSAMLConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{184} + return fileDescriptor_0ffcffcda38ae159, []int{185} } func (m *UpsertSAMLConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12594,7 +12651,7 @@ func (m *CreateGithubConnectorRequest) Reset() { *m = CreateGithubConnec func (m *CreateGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*CreateGithubConnectorRequest) ProtoMessage() {} func (*CreateGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{185} + return fileDescriptor_0ffcffcda38ae159, []int{186} } func (m *CreateGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12643,7 +12700,7 @@ func (m *UpdateGithubConnectorRequest) Reset() { *m = UpdateGithubConnec func (m *UpdateGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpdateGithubConnectorRequest) ProtoMessage() {} func (*UpdateGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{186} + return fileDescriptor_0ffcffcda38ae159, []int{187} } func (m *UpdateGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12692,7 +12749,7 @@ func (m *UpsertGithubConnectorRequest) Reset() { *m = UpsertGithubConnec func (m *UpsertGithubConnectorRequest) String() string { return proto.CompactTextString(m) } func (*UpsertGithubConnectorRequest) ProtoMessage() {} func (*UpsertGithubConnectorRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{187} + return fileDescriptor_0ffcffcda38ae159, []int{188} } func (m *UpsertGithubConnectorRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12743,7 +12800,7 @@ func (m *GetSSODiagnosticInfoRequest) Reset() { *m = GetSSODiagnosticInf func (m *GetSSODiagnosticInfoRequest) String() string { return proto.CompactTextString(m) } func (*GetSSODiagnosticInfoRequest) ProtoMessage() {} func (*GetSSODiagnosticInfoRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{188} + return fileDescriptor_0ffcffcda38ae159, []int{189} } func (m *GetSSODiagnosticInfoRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12809,7 +12866,7 @@ func (m *SystemRoleAssertion) Reset() { *m = SystemRoleAssertion{} } func (m *SystemRoleAssertion) String() string { return proto.CompactTextString(m) } func (*SystemRoleAssertion) ProtoMessage() {} func (*SystemRoleAssertion) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{189} + return fileDescriptor_0ffcffcda38ae159, []int{190} } func (m *SystemRoleAssertion) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12879,7 +12936,7 @@ func (m *SystemRoleAssertionSet) Reset() { *m = SystemRoleAssertionSet{} func (m *SystemRoleAssertionSet) String() string { return proto.CompactTextString(m) } func (*SystemRoleAssertionSet) ProtoMessage() {} func (*SystemRoleAssertionSet) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{190} + return fileDescriptor_0ffcffcda38ae159, []int{191} } func (m *SystemRoleAssertionSet) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -12948,7 +13005,7 @@ func (m *UpstreamInventoryOneOf) Reset() { *m = UpstreamInventoryOneOf{} func (m *UpstreamInventoryOneOf) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryOneOf) ProtoMessage() {} func (*UpstreamInventoryOneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{191} + return fileDescriptor_0ffcffcda38ae159, []int{192} } func (m *UpstreamInventoryOneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13075,7 +13132,7 @@ func (m *DownstreamInventoryOneOf) Reset() { *m = DownstreamInventoryOne func (m *DownstreamInventoryOneOf) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryOneOf) ProtoMessage() {} func (*DownstreamInventoryOneOf) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{192} + return fileDescriptor_0ffcffcda38ae159, []int{193} } func (m *DownstreamInventoryOneOf) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13174,7 +13231,7 @@ func (m *DownstreamInventoryPing) Reset() { *m = DownstreamInventoryPing func (m *DownstreamInventoryPing) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryPing) ProtoMessage() {} func (*DownstreamInventoryPing) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{193} + return fileDescriptor_0ffcffcda38ae159, []int{194} } func (m *DownstreamInventoryPing) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13223,7 +13280,7 @@ func (m *UpstreamInventoryPong) Reset() { *m = UpstreamInventoryPong{} } func (m *UpstreamInventoryPong) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryPong) ProtoMessage() {} func (*UpstreamInventoryPong) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{194} + return fileDescriptor_0ffcffcda38ae159, []int{195} } func (m *UpstreamInventoryPong) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13290,7 +13347,7 @@ func (m *UpstreamInventoryHello) Reset() { *m = UpstreamInventoryHello{} func (m *UpstreamInventoryHello) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryHello) ProtoMessage() {} func (*UpstreamInventoryHello) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{195} + return fileDescriptor_0ffcffcda38ae159, []int{196} } func (m *UpstreamInventoryHello) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13390,7 +13447,7 @@ func (m *UpstreamInventoryAgentMetadata) Reset() { *m = UpstreamInventor func (m *UpstreamInventoryAgentMetadata) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryAgentMetadata) ProtoMessage() {} func (*UpstreamInventoryAgentMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{196} + return fileDescriptor_0ffcffcda38ae159, []int{197} } func (m *UpstreamInventoryAgentMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13492,7 +13549,7 @@ func (m *DownstreamInventoryHello) Reset() { *m = DownstreamInventoryHel func (m *DownstreamInventoryHello) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryHello) ProtoMessage() {} func (*DownstreamInventoryHello) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{197} + return fileDescriptor_0ffcffcda38ae159, []int{198} } func (m *DownstreamInventoryHello) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13595,7 +13652,7 @@ func (m *DownstreamInventoryHello_SupportedCapabilities) String() string { } func (*DownstreamInventoryHello_SupportedCapabilities) ProtoMessage() {} func (*DownstreamInventoryHello_SupportedCapabilities) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{197, 0} + return fileDescriptor_0ffcffcda38ae159, []int{198, 0} } func (m *DownstreamInventoryHello_SupportedCapabilities) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13768,7 +13825,7 @@ func (m *InventoryUpdateLabelsRequest) Reset() { *m = InventoryUpdateLab func (m *InventoryUpdateLabelsRequest) String() string { return proto.CompactTextString(m) } func (*InventoryUpdateLabelsRequest) ProtoMessage() {} func (*InventoryUpdateLabelsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{198} + return fileDescriptor_0ffcffcda38ae159, []int{199} } func (m *InventoryUpdateLabelsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13834,7 +13891,7 @@ func (m *DownstreamInventoryUpdateLabels) Reset() { *m = DownstreamInven func (m *DownstreamInventoryUpdateLabels) String() string { return proto.CompactTextString(m) } func (*DownstreamInventoryUpdateLabels) ProtoMessage() {} func (*DownstreamInventoryUpdateLabels) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{199} + return fileDescriptor_0ffcffcda38ae159, []int{200} } func (m *DownstreamInventoryUpdateLabels) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13899,7 +13956,7 @@ func (m *InventoryHeartbeat) Reset() { *m = InventoryHeartbeat{} } func (m *InventoryHeartbeat) String() string { return proto.CompactTextString(m) } func (*InventoryHeartbeat) ProtoMessage() {} func (*InventoryHeartbeat) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{200} + return fileDescriptor_0ffcffcda38ae159, []int{201} } func (m *InventoryHeartbeat) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -13971,7 +14028,7 @@ func (m *UpstreamInventoryGoodbye) Reset() { *m = UpstreamInventoryGoodb func (m *UpstreamInventoryGoodbye) String() string { return proto.CompactTextString(m) } func (*UpstreamInventoryGoodbye) ProtoMessage() {} func (*UpstreamInventoryGoodbye) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{201} + return fileDescriptor_0ffcffcda38ae159, []int{202} } func (m *UpstreamInventoryGoodbye) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14021,7 +14078,7 @@ func (m *InventoryStatusRequest) Reset() { *m = InventoryStatusRequest{} func (m *InventoryStatusRequest) String() string { return proto.CompactTextString(m) } func (*InventoryStatusRequest) ProtoMessage() {} func (*InventoryStatusRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{202} + return fileDescriptor_0ffcffcda38ae159, []int{203} } func (m *InventoryStatusRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14079,7 +14136,7 @@ func (m *InventoryStatusSummary) Reset() { *m = InventoryStatusSummary{} func (m *InventoryStatusSummary) String() string { return proto.CompactTextString(m) } func (*InventoryStatusSummary) ProtoMessage() {} func (*InventoryStatusSummary) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{203} + return fileDescriptor_0ffcffcda38ae159, []int{204} } func (m *InventoryStatusSummary) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14156,7 +14213,7 @@ func (m *InventoryConnectedServiceCountsRequest) Reset() { func (m *InventoryConnectedServiceCountsRequest) String() string { return proto.CompactTextString(m) } func (*InventoryConnectedServiceCountsRequest) ProtoMessage() {} func (*InventoryConnectedServiceCountsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{204} + return fileDescriptor_0ffcffcda38ae159, []int{205} } func (m *InventoryConnectedServiceCountsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14198,7 +14255,7 @@ func (m *InventoryConnectedServiceCounts) Reset() { *m = InventoryConnec func (m *InventoryConnectedServiceCounts) String() string { return proto.CompactTextString(m) } func (*InventoryConnectedServiceCounts) ProtoMessage() {} func (*InventoryConnectedServiceCounts) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{205} + return fileDescriptor_0ffcffcda38ae159, []int{206} } func (m *InventoryConnectedServiceCounts) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14252,7 +14309,7 @@ func (m *InventoryPingRequest) Reset() { *m = InventoryPingRequest{} } func (m *InventoryPingRequest) String() string { return proto.CompactTextString(m) } func (*InventoryPingRequest) ProtoMessage() {} func (*InventoryPingRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{206} + return fileDescriptor_0ffcffcda38ae159, []int{207} } func (m *InventoryPingRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14308,7 +14365,7 @@ func (m *InventoryPingResponse) Reset() { *m = InventoryPingResponse{} } func (m *InventoryPingResponse) String() string { return proto.CompactTextString(m) } func (*InventoryPingResponse) ProtoMessage() {} func (*InventoryPingResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{207} + return fileDescriptor_0ffcffcda38ae159, []int{208} } func (m *InventoryPingResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14357,7 +14414,7 @@ func (m *GetClusterAlertsResponse) Reset() { *m = GetClusterAlertsRespon func (m *GetClusterAlertsResponse) String() string { return proto.CompactTextString(m) } func (*GetClusterAlertsResponse) ProtoMessage() {} func (*GetClusterAlertsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{208} + return fileDescriptor_0ffcffcda38ae159, []int{209} } func (m *GetClusterAlertsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14404,7 +14461,7 @@ func (m *GetAlertAcksRequest) Reset() { *m = GetAlertAcksRequest{} } func (m *GetAlertAcksRequest) String() string { return proto.CompactTextString(m) } func (*GetAlertAcksRequest) ProtoMessage() {} func (*GetAlertAcksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{209} + return fileDescriptor_0ffcffcda38ae159, []int{210} } func (m *GetAlertAcksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14446,7 +14503,7 @@ func (m *GetAlertAcksResponse) Reset() { *m = GetAlertAcksResponse{} } func (m *GetAlertAcksResponse) String() string { return proto.CompactTextString(m) } func (*GetAlertAcksResponse) ProtoMessage() {} func (*GetAlertAcksResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{210} + return fileDescriptor_0ffcffcda38ae159, []int{211} } func (m *GetAlertAcksResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14496,7 +14553,7 @@ func (m *ClearAlertAcksRequest) Reset() { *m = ClearAlertAcksRequest{} } func (m *ClearAlertAcksRequest) String() string { return proto.CompactTextString(m) } func (*ClearAlertAcksRequest) ProtoMessage() {} func (*ClearAlertAcksRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{211} + return fileDescriptor_0ffcffcda38ae159, []int{212} } func (m *ClearAlertAcksRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14545,7 +14602,7 @@ func (m *UpsertClusterAlertRequest) Reset() { *m = UpsertClusterAlertReq func (m *UpsertClusterAlertRequest) String() string { return proto.CompactTextString(m) } func (*UpsertClusterAlertRequest) ProtoMessage() {} func (*UpsertClusterAlertRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{212} + return fileDescriptor_0ffcffcda38ae159, []int{213} } func (m *UpsertClusterAlertRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14594,7 +14651,7 @@ func (m *GetConnectionDiagnosticRequest) Reset() { *m = GetConnectionDia func (m *GetConnectionDiagnosticRequest) String() string { return proto.CompactTextString(m) } func (*GetConnectionDiagnosticRequest) ProtoMessage() {} func (*GetConnectionDiagnosticRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{213} + return fileDescriptor_0ffcffcda38ae159, []int{214} } func (m *GetConnectionDiagnosticRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14645,7 +14702,7 @@ func (m *AppendDiagnosticTraceRequest) Reset() { *m = AppendDiagnosticTr func (m *AppendDiagnosticTraceRequest) String() string { return proto.CompactTextString(m) } func (*AppendDiagnosticTraceRequest) ProtoMessage() {} func (*AppendDiagnosticTraceRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{214} + return fileDescriptor_0ffcffcda38ae159, []int{215} } func (m *AppendDiagnosticTraceRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14700,7 +14757,7 @@ func (m *SubmitUsageEventRequest) Reset() { *m = SubmitUsageEventRequest func (m *SubmitUsageEventRequest) String() string { return proto.CompactTextString(m) } func (*SubmitUsageEventRequest) ProtoMessage() {} func (*SubmitUsageEventRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{215} + return fileDescriptor_0ffcffcda38ae159, []int{216} } func (m *SubmitUsageEventRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14747,7 +14804,7 @@ func (m *GetLicenseRequest) Reset() { *m = GetLicenseRequest{} } func (m *GetLicenseRequest) String() string { return proto.CompactTextString(m) } func (*GetLicenseRequest) ProtoMessage() {} func (*GetLicenseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{216} + return fileDescriptor_0ffcffcda38ae159, []int{217} } func (m *GetLicenseRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14787,7 +14844,7 @@ func (m *ListReleasesRequest) Reset() { *m = ListReleasesRequest{} } func (m *ListReleasesRequest) String() string { return proto.CompactTextString(m) } func (*ListReleasesRequest) ProtoMessage() {} func (*ListReleasesRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{217} + return fileDescriptor_0ffcffcda38ae159, []int{218} } func (m *ListReleasesRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14831,7 +14888,7 @@ func (m *CreateTokenV2Request) Reset() { *m = CreateTokenV2Request{} } func (m *CreateTokenV2Request) String() string { return proto.CompactTextString(m) } func (*CreateTokenV2Request) ProtoMessage() {} func (*CreateTokenV2Request) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{218} + return fileDescriptor_0ffcffcda38ae159, []int{219} } func (m *CreateTokenV2Request) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14908,7 +14965,7 @@ func (m *UpsertTokenV2Request) Reset() { *m = UpsertTokenV2Request{} } func (m *UpsertTokenV2Request) String() string { return proto.CompactTextString(m) } func (*UpsertTokenV2Request) ProtoMessage() {} func (*UpsertTokenV2Request) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{219} + return fileDescriptor_0ffcffcda38ae159, []int{220} } func (m *UpsertTokenV2Request) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14983,7 +15040,7 @@ func (m *GetHeadlessAuthenticationRequest) Reset() { *m = GetHeadlessAut func (m *GetHeadlessAuthenticationRequest) String() string { return proto.CompactTextString(m) } func (*GetHeadlessAuthenticationRequest) ProtoMessage() {} func (*GetHeadlessAuthenticationRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{220} + return fileDescriptor_0ffcffcda38ae159, []int{221} } func (m *GetHeadlessAuthenticationRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15041,7 +15098,7 @@ func (m *UpdateHeadlessAuthenticationStateRequest) Reset() { func (m *UpdateHeadlessAuthenticationStateRequest) String() string { return proto.CompactTextString(m) } func (*UpdateHeadlessAuthenticationStateRequest) ProtoMessage() {} func (*UpdateHeadlessAuthenticationStateRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{221} + return fileDescriptor_0ffcffcda38ae159, []int{222} } func (m *UpdateHeadlessAuthenticationStateRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15107,7 +15164,7 @@ func (m *ExportUpgradeWindowsRequest) Reset() { *m = ExportUpgradeWindow func (m *ExportUpgradeWindowsRequest) String() string { return proto.CompactTextString(m) } func (*ExportUpgradeWindowsRequest) ProtoMessage() {} func (*ExportUpgradeWindowsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{222} + return fileDescriptor_0ffcffcda38ae159, []int{223} } func (m *ExportUpgradeWindowsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15173,7 +15230,7 @@ func (m *ExportUpgradeWindowsResponse) Reset() { *m = ExportUpgradeWindo func (m *ExportUpgradeWindowsResponse) String() string { return proto.CompactTextString(m) } func (*ExportUpgradeWindowsResponse) ProtoMessage() {} func (*ExportUpgradeWindowsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{223} + return fileDescriptor_0ffcffcda38ae159, []int{224} } func (m *ExportUpgradeWindowsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15248,7 +15305,7 @@ func (m *ListAccessRequestsRequest) Reset() { *m = ListAccessRequestsReq func (m *ListAccessRequestsRequest) String() string { return proto.CompactTextString(m) } func (*ListAccessRequestsRequest) ProtoMessage() {} func (*ListAccessRequestsRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{224} + return fileDescriptor_0ffcffcda38ae159, []int{225} } func (m *ListAccessRequestsRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15327,7 +15384,7 @@ func (m *ListAccessRequestsResponse) Reset() { *m = ListAccessRequestsRe func (m *ListAccessRequestsResponse) String() string { return proto.CompactTextString(m) } func (*ListAccessRequestsResponse) ProtoMessage() {} func (*ListAccessRequestsResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{225} + return fileDescriptor_0ffcffcda38ae159, []int{226} } func (m *ListAccessRequestsResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15383,7 +15440,7 @@ func (m *AccessRequestAllowedPromotionRequest) Reset() { *m = AccessRequ func (m *AccessRequestAllowedPromotionRequest) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotionRequest) ProtoMessage() {} func (*AccessRequestAllowedPromotionRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{226} + return fileDescriptor_0ffcffcda38ae159, []int{227} } func (m *AccessRequestAllowedPromotionRequest) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15432,7 +15489,7 @@ func (m *AccessRequestAllowedPromotionResponse) Reset() { *m = AccessReq func (m *AccessRequestAllowedPromotionResponse) String() string { return proto.CompactTextString(m) } func (*AccessRequestAllowedPromotionResponse) ProtoMessage() {} func (*AccessRequestAllowedPromotionResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_0ffcffcda38ae159, []int{227} + return fileDescriptor_0ffcffcda38ae159, []int{228} } func (m *AccessRequestAllowedPromotionResponse) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -15665,6 +15722,7 @@ func init() { proto.RegisterType((*GetOIDCAuthRequestRequest)(nil), "proto.GetOIDCAuthRequestRequest") proto.RegisterType((*GetSAMLAuthRequestRequest)(nil), "proto.GetSAMLAuthRequestRequest") proto.RegisterType((*GetGithubAuthRequestRequest)(nil), "proto.GetGithubAuthRequestRequest") + proto.RegisterType((*CreateGithubAuthRequestForUserRequest)(nil), "proto.CreateGithubAuthRequestForUserRequest") proto.RegisterType((*CreateOIDCConnectorRequest)(nil), "proto.CreateOIDCConnectorRequest") proto.RegisterType((*UpdateOIDCConnectorRequest)(nil), "proto.UpdateOIDCConnectorRequest") proto.RegisterType((*UpsertOIDCConnectorRequest)(nil), "proto.UpsertOIDCConnectorRequest") @@ -15728,948 +15786,953 @@ func init() { } var fileDescriptor_0ffcffcda38ae159 = []byte{ - // 15043 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x5b, 0x6c, 0x5c, 0x4b, - 0x76, 0x18, 0xca, 0xe6, 0x9b, 0x8b, 0xaf, 0x56, 0x91, 0x14, 0x5b, 0x14, 0xa5, 0x96, 0xb6, 0xce, - 0x43, 0x47, 0x73, 0x46, 0x0f, 0x9e, 0xc7, 0x9c, 0xd7, 0x9c, 0x73, 0x9a, 0x0f, 0x91, 0x94, 0xf8, - 0x3a, 0xbb, 0x49, 0xea, 0xbc, 0x3c, 0x3d, 0x9b, 0xdd, 0x25, 0x72, 0x5b, 0xcd, 0xbd, 0x7b, 0xf6, - 0xde, 0x2d, 0x1d, 0x8d, 0xaf, 0x7d, 0xe1, 0xf1, 0xbd, 0xb8, 0xfe, 0xb8, 0xd7, 0xd7, 0x06, 0xae, - 0x2f, 0x7c, 0xe1, 0x0f, 0xe3, 0x02, 0x09, 0x10, 0x04, 0x48, 0x90, 0x1f, 0xc3, 0x5f, 0xf9, 0x08, - 0xf2, 0x91, 0x89, 0x01, 0x23, 0x09, 0xec, 0xfc, 0xe4, 0x83, 0x4e, 0x06, 0xc8, 0x0f, 0x91, 0x7c, - 0x18, 0x41, 0x02, 0x64, 0x00, 0x03, 0x41, 0xad, 0x7a, 0xec, 0xaa, 0xfd, 0xe8, 0x26, 0x75, 0x74, - 0xc6, 0xf9, 0x91, 0xd8, 0xab, 0xd6, 0x5a, 0x55, 0xb5, 0xaa, 0x76, 0xd5, 0xaa, 0x55, 0xab, 0xd6, - 0x82, 0xdb, 0x11, 0x6d, 0xd2, 0x96, 0x1f, 0x44, 0x77, 0x9a, 0xf4, 0xd0, 0xa9, 0x3f, 0xbf, 0x53, - 0x6f, 0xba, 0xd4, 0x8b, 0xee, 0xb4, 0x02, 0x3f, 0xf2, 0xef, 0x38, 0xed, 0xe8, 0x28, 0xa4, 0xc1, - 0x53, 0xb7, 0x4e, 0x6f, 0x23, 0x84, 0x0c, 0xe0, 0x7f, 0x73, 0xd3, 0x87, 0xfe, 0xa1, 0xcf, 0x71, - 0xd8, 0x5f, 0xbc, 0x70, 0xee, 0xf2, 0xa1, 0xef, 0x1f, 0x36, 0x29, 0x27, 0x3e, 0x68, 0x3f, 0xbe, - 0x43, 0x8f, 0x5b, 0xd1, 0x73, 0x51, 0x58, 0x4e, 0x16, 0x46, 0xee, 0x31, 0x0d, 0x23, 0xe7, 0xb8, - 0x25, 0x10, 0xde, 0x50, 0x4d, 0x71, 0xa2, 0x88, 0x95, 0x44, 0xae, 0xef, 0xdd, 0x79, 0x7a, 0x4f, - 0xff, 0x29, 0x50, 0x6f, 0x76, 0x6c, 0x75, 0x9d, 0x06, 0x51, 0x78, 0x26, 0x4c, 0xfa, 0x94, 0x7a, - 0x51, 0xaa, 0x7a, 0x81, 0x19, 0x3d, 0x6f, 0xd1, 0x90, 0xa3, 0xc8, 0xff, 0x04, 0xea, 0xf5, 0x6c, - 0x54, 0xfc, 0x57, 0xa0, 0x7c, 0x3f, 0x1b, 0xe5, 0x19, 0x3d, 0x60, 0x32, 0xf5, 0xd4, 0x1f, 0x5d, - 0xd0, 0x03, 0xa7, 0xd5, 0xa2, 0x41, 0xfc, 0x87, 0x40, 0xbf, 0xa4, 0xd0, 0x8f, 0x1f, 0x3b, 0x4c, - 0x44, 0xc7, 0x8f, 0x9d, 0x54, 0x37, 0xda, 0xa1, 0x73, 0x48, 0x45, 0xf3, 0x9f, 0xde, 0xd3, 0x7f, - 0x72, 0x54, 0xeb, 0x4f, 0x0a, 0x30, 0xf0, 0xc8, 0x89, 0xea, 0x47, 0xe4, 0x13, 0x18, 0x78, 0xe8, - 0x7a, 0x8d, 0xb0, 0x54, 0xb8, 0xd6, 0x77, 0x73, 0x74, 0xa1, 0x78, 0x9b, 0x77, 0x05, 0x0b, 0x59, - 0xc1, 0xe2, 0xec, 0xcf, 0x4f, 0xca, 0x3d, 0xa7, 0x27, 0xe5, 0xc9, 0x27, 0x0c, 0xed, 0x4d, 0xff, - 0xd8, 0x8d, 0x70, 0x6c, 0x6d, 0x4e, 0x47, 0xf6, 0x60, 0xaa, 0xd2, 0x6c, 0xfa, 0xcf, 0x76, 0x9c, - 0x20, 0x72, 0x9d, 0x66, 0xb5, 0x5d, 0xaf, 0xd3, 0x30, 0x2c, 0xf5, 0x5e, 0x2b, 0xdc, 0x1c, 0x5e, - 0xbc, 0x71, 0x7a, 0x52, 0x2e, 0x3b, 0xac, 0xb8, 0xd6, 0xe2, 0xe5, 0xb5, 0x90, 0x23, 0x68, 0x8c, - 0xb2, 0xe8, 0xad, 0x3f, 0x1f, 0x84, 0xe2, 0x9a, 0x1f, 0x46, 0x4b, 0x6c, 0x44, 0x6d, 0xfa, 0x93, - 0x36, 0x0d, 0x23, 0x72, 0x03, 0x06, 0x19, 0x6c, 0x7d, 0xb9, 0x54, 0xb8, 0x56, 0xb8, 0x39, 0xb2, - 0x38, 0x7a, 0x7a, 0x52, 0x1e, 0x3a, 0xf2, 0xc3, 0xa8, 0xe6, 0x36, 0x6c, 0x51, 0x44, 0xde, 0x80, - 0xe1, 0x2d, 0xbf, 0x41, 0xb7, 0x9c, 0x63, 0x8a, 0xad, 0x18, 0x59, 0x1c, 0x3f, 0x3d, 0x29, 0x8f, - 0x78, 0x7e, 0x83, 0xd6, 0x3c, 0xe7, 0x98, 0xda, 0xaa, 0x98, 0xec, 0x43, 0xbf, 0xed, 0x37, 0x69, - 0xa9, 0x0f, 0xd1, 0x16, 0x4f, 0x4f, 0xca, 0xfd, 0x81, 0xdf, 0xa4, 0xbf, 0x3c, 0x29, 0xbf, 0x7b, - 0xe8, 0x46, 0x47, 0xed, 0x83, 0xdb, 0x75, 0xff, 0xf8, 0xce, 0x61, 0xe0, 0x3c, 0x75, 0xf9, 0x24, - 0x74, 0x9a, 0x77, 0xe2, 0xa9, 0xda, 0x72, 0xc5, 0xb8, 0x57, 0x9f, 0x87, 0x11, 0x3d, 0x66, 0x9c, - 0x6c, 0xe4, 0x47, 0x1e, 0xc1, 0x74, 0xa5, 0xd1, 0x70, 0x39, 0xc5, 0x4e, 0xe0, 0x7a, 0x75, 0xb7, - 0xe5, 0x34, 0xc3, 0x52, 0xff, 0xb5, 0xbe, 0x9b, 0x23, 0x42, 0x28, 0xaa, 0xbc, 0xd6, 0x52, 0x08, - 0x9a, 0x50, 0x32, 0x19, 0x90, 0xb7, 0x60, 0x78, 0x79, 0xab, 0xca, 0xda, 0x1e, 0x96, 0x06, 0x90, - 0xd9, 0xec, 0xe9, 0x49, 0x79, 0xaa, 0xe1, 0x85, 0xd8, 0x35, 0x9d, 0x81, 0x42, 0x24, 0xef, 0xc2, - 0xd8, 0x4e, 0xfb, 0xa0, 0xe9, 0xd6, 0x77, 0x37, 0xaa, 0x0f, 0xe9, 0xf3, 0xd2, 0xe0, 0xb5, 0xc2, - 0xcd, 0xb1, 0x45, 0x72, 0x7a, 0x52, 0x9e, 0x68, 0x21, 0xbc, 0x16, 0x35, 0xc3, 0xda, 0x13, 0xfa, - 0xdc, 0x36, 0xf0, 0x62, 0xba, 0x6a, 0x75, 0x8d, 0xd1, 0x0d, 0xa5, 0xe8, 0xc2, 0xf0, 0x48, 0xa7, - 0xe3, 0x78, 0xe4, 0x0e, 0x80, 0x4d, 0x8f, 0xfd, 0x88, 0x56, 0x1a, 0x8d, 0xa0, 0x34, 0x8c, 0xb2, - 0x9d, 0x3c, 0x3d, 0x29, 0x8f, 0x06, 0x08, 0xad, 0x39, 0x8d, 0x46, 0x60, 0x6b, 0x28, 0x64, 0x09, - 0x86, 0x6d, 0x9f, 0x0b, 0xb8, 0x34, 0x72, 0xad, 0x70, 0x73, 0x74, 0x61, 0x52, 0x4c, 0x43, 0x09, - 0x5e, 0xbc, 0x78, 0x7a, 0x52, 0x26, 0x81, 0xf8, 0xa5, 0xf7, 0x52, 0x62, 0x90, 0x32, 0x0c, 0x6d, - 0xf9, 0x4b, 0x4e, 0xfd, 0x88, 0x96, 0x00, 0xe7, 0xde, 0xc0, 0xe9, 0x49, 0xb9, 0xf0, 0x7d, 0x5b, - 0x42, 0xc9, 0x53, 0x18, 0x8d, 0x07, 0x2a, 0x2c, 0x8d, 0xa2, 0xf8, 0x76, 0x4f, 0x4f, 0xca, 0x17, - 0x43, 0x04, 0xd7, 0xd8, 0xd0, 0x6b, 0x12, 0xfc, 0x16, 0xb3, 0x40, 0xaf, 0x88, 0x7c, 0x0d, 0x33, - 0xf1, 0xcf, 0x4a, 0x18, 0xd2, 0x80, 0xf1, 0x58, 0x5f, 0x2e, 0x8d, 0xa3, 0x64, 0x5e, 0x3b, 0x3d, - 0x29, 0x5b, 0x5a, 0x0b, 0x6a, 0x8e, 0x44, 0xa9, 0xb9, 0x0d, 0xad, 0xa7, 0xd9, 0x4c, 0x1e, 0xf4, - 0x0f, 0x8f, 0x15, 0xc7, 0xed, 0x2b, 0x7b, 0x5e, 0x18, 0x39, 0x07, 0x4d, 0x9a, 0x89, 0x64, 0xfd, - 0x6d, 0x01, 0xc8, 0x76, 0x8b, 0x7a, 0xd5, 0xea, 0x1a, 0xfb, 0x9e, 0xe4, 0xe7, 0xf4, 0x26, 0x8c, - 0xf0, 0x81, 0x63, 0xa3, 0xdb, 0x8b, 0xa3, 0x3b, 0x71, 0x7a, 0x52, 0x06, 0x31, 0xba, 0x6c, 0x64, - 0x63, 0x04, 0xf2, 0x2a, 0xf4, 0xed, 0xee, 0x6e, 0xe0, 0xb7, 0xd2, 0xb7, 0x38, 0x75, 0x7a, 0x52, - 0xee, 0x8b, 0xa2, 0xe6, 0x2f, 0x4f, 0xca, 0xc3, 0xcb, 0xed, 0x00, 0xc5, 0x62, 0xb3, 0x72, 0xf2, - 0x2a, 0x0c, 0x2d, 0x35, 0xdb, 0x61, 0x44, 0x83, 0x52, 0x7f, 0xfc, 0x91, 0xd6, 0x39, 0xc8, 0x96, - 0x65, 0xe4, 0x7b, 0xd0, 0xbf, 0x17, 0xd2, 0xa0, 0x34, 0x80, 0xe3, 0x3d, 0x2e, 0xc6, 0x9b, 0x81, - 0xf6, 0x17, 0x16, 0x87, 0xd9, 0x97, 0xd8, 0x0e, 0x69, 0x60, 0x23, 0x12, 0xb9, 0x0d, 0x03, 0x7c, - 0xd0, 0x06, 0x71, 0x91, 0x1a, 0x57, 0xb3, 0xa3, 0x49, 0xf7, 0xdf, 0x5d, 0x1c, 0x39, 0x3d, 0x29, - 0x0f, 0xe0, 0xe0, 0xd9, 0x1c, 0xed, 0x41, 0xff, 0x70, 0xa1, 0xd8, 0x6b, 0x0f, 0x33, 0x5a, 0xf6, - 0x59, 0x58, 0xdf, 0x83, 0x51, 0xad, 0xfb, 0x64, 0x1e, 0xfa, 0xd9, 0xff, 0xb8, 0x88, 0x8c, 0xf1, - 0xca, 0xd8, 0xc6, 0x61, 0x23, 0xd4, 0xfa, 0xe3, 0x69, 0x28, 0x32, 0x4a, 0x63, 0xe5, 0xb9, 0xad, - 0x8b, 0x8a, 0xd3, 0x15, 0x4d, 0x51, 0x95, 0x0a, 0xba, 0xb0, 0x6e, 0x82, 0xaa, 0x5d, 0x2c, 0x42, - 0x63, 0xa7, 0x27, 0xe5, 0xe1, 0xb6, 0x80, 0xc5, 0x6d, 0x23, 0x55, 0x18, 0x5a, 0xf9, 0xa6, 0xe5, - 0x06, 0x34, 0x44, 0xd1, 0x8e, 0x2e, 0xcc, 0xdd, 0xe6, 0xdb, 0xe5, 0x6d, 0xb9, 0x5d, 0xde, 0xde, - 0x95, 0xdb, 0xe5, 0xe2, 0x15, 0xb1, 0x18, 0x5f, 0xa0, 0x9c, 0x24, 0x9e, 0x1f, 0xbf, 0xff, 0xd7, - 0xe5, 0x82, 0x2d, 0x39, 0x91, 0x37, 0x61, 0xf0, 0xbe, 0x1f, 0x1c, 0x3b, 0x91, 0x18, 0x83, 0xe9, - 0xd3, 0x93, 0x72, 0xf1, 0x31, 0x42, 0xb4, 0x29, 0x25, 0x70, 0xc8, 0x7d, 0x98, 0xb0, 0xfd, 0x76, - 0x44, 0x77, 0x7d, 0x39, 0x72, 0x03, 0x48, 0x75, 0xf5, 0xf4, 0xa4, 0x3c, 0x17, 0xb0, 0x92, 0x5a, - 0xe4, 0xd7, 0xc4, 0x10, 0x6a, 0xf4, 0x09, 0x2a, 0xb2, 0x02, 0x13, 0x15, 0x5c, 0xbd, 0x85, 0xd4, - 0xf8, 0x78, 0x8d, 0x2c, 0x5e, 0x39, 0x3d, 0x29, 0x5f, 0x72, 0xb0, 0xa4, 0x16, 0x88, 0x22, 0x9d, - 0x8d, 0x49, 0x44, 0xb6, 0xe0, 0xc2, 0xc3, 0xf6, 0x01, 0x0d, 0x3c, 0x1a, 0xd1, 0x50, 0xb6, 0x68, - 0x08, 0x5b, 0x74, 0xed, 0xf4, 0xa4, 0x3c, 0xff, 0x44, 0x15, 0x66, 0xb4, 0x29, 0x4d, 0x4a, 0x28, - 0x4c, 0x8a, 0x86, 0x2e, 0x3b, 0x91, 0x73, 0xe0, 0x84, 0x14, 0x17, 0xa5, 0xd1, 0x85, 0x8b, 0x5c, - 0xc4, 0xb7, 0x13, 0xa5, 0x8b, 0x37, 0x84, 0x94, 0x2f, 0xab, 0xbe, 0x37, 0x44, 0x91, 0x56, 0x51, - 0x92, 0x27, 0x5b, 0x9b, 0xd5, 0xbe, 0x33, 0x82, 0xad, 0xc5, 0xb5, 0x59, 0xed, 0x3b, 0xfa, 0xaa, - 0xa5, 0x76, 0xa0, 0x0d, 0x18, 0xd8, 0x63, 0xbb, 0x33, 0xae, 0x59, 0x13, 0x0b, 0xd7, 0x45, 0x8b, - 0x92, 0xf3, 0xef, 0x36, 0xfb, 0x81, 0x88, 0xf8, 0xe5, 0x4d, 0xe2, 0x8e, 0xae, 0xef, 0xc5, 0x58, - 0x46, 0x3e, 0x03, 0x10, 0xad, 0xaa, 0xb4, 0x5a, 0xa5, 0x51, 0xec, 0xe4, 0x05, 0xb3, 0x93, 0x95, - 0x56, 0x6b, 0xf1, 0xaa, 0xe8, 0xdf, 0x45, 0xd5, 0x3f, 0xa7, 0xd5, 0xd2, 0xb8, 0x69, 0x4c, 0xc8, - 0x27, 0x30, 0x86, 0x4b, 0x9a, 0x1c, 0xd1, 0x31, 0x1c, 0xd1, 0xcb, 0xa7, 0x27, 0xe5, 0x59, 0x5c, - 0xad, 0x32, 0xc6, 0xd3, 0x20, 0x20, 0xbf, 0x05, 0x33, 0x82, 0xdd, 0x23, 0xd7, 0x6b, 0xf8, 0xcf, - 0xc2, 0x65, 0x1a, 0x3e, 0x89, 0xfc, 0x16, 0x2e, 0x7f, 0xa3, 0x0b, 0xf3, 0x66, 0xf3, 0x4c, 0x9c, - 0xc5, 0x5b, 0xa2, 0xa5, 0x96, 0x6a, 0xe9, 0x33, 0x8e, 0x50, 0x6b, 0x70, 0x0c, 0x7d, 0x81, 0xcc, - 0x64, 0x41, 0xd6, 0x61, 0x72, 0x2f, 0xa4, 0x46, 0x1f, 0x26, 0x70, 0x7f, 0x28, 0xb3, 0x11, 0x6e, - 0x87, 0xb4, 0x96, 0xd7, 0x8f, 0x24, 0x1d, 0xb1, 0x81, 0x2c, 0x07, 0x7e, 0x2b, 0x31, 0xc7, 0x27, - 0x51, 0x22, 0xd6, 0xe9, 0x49, 0xf9, 0x6a, 0x23, 0xf0, 0x5b, 0xb5, 0xfc, 0x89, 0x9e, 0x41, 0x4d, - 0x7e, 0x04, 0x17, 0x97, 0x7c, 0xcf, 0xa3, 0x75, 0xb6, 0x82, 0x2e, 0xbb, 0xce, 0xa1, 0xe7, 0x87, - 0x91, 0x5b, 0x5f, 0x5f, 0x2e, 0x15, 0xe3, 0xed, 0xa1, 0xae, 0x30, 0x6a, 0x0d, 0x85, 0x62, 0x6e, - 0x0f, 0x39, 0x5c, 0xc8, 0x57, 0x30, 0x2e, 0xea, 0xa2, 0x01, 0x4e, 0xcd, 0x0b, 0x9d, 0x27, 0x9a, - 0x42, 0xe6, 0x1b, 0x7d, 0x20, 0x7f, 0x72, 0xd5, 0xc9, 0xe4, 0x45, 0xbe, 0x86, 0xd1, 0xcd, 0xfb, - 0x15, 0x9b, 0x86, 0x2d, 0xdf, 0x0b, 0x69, 0x89, 0xe0, 0x88, 0x5e, 0x15, 0xac, 0x37, 0xef, 0x57, - 0x2a, 0xed, 0xe8, 0x88, 0x7a, 0x91, 0x5b, 0x77, 0x22, 0x2a, 0xb1, 0x16, 0xe7, 0xd8, 0xcc, 0x3b, - 0x7e, 0xec, 0xd4, 0x02, 0x01, 0xd1, 0x7a, 0xa1, 0xb3, 0x23, 0x73, 0x30, 0x5c, 0xad, 0xae, 0x6d, - 0xf8, 0x87, 0xae, 0x57, 0x9a, 0x62, 0xc2, 0xb0, 0xd5, 0x6f, 0xf2, 0x18, 0x66, 0xb4, 0xb3, 0x41, - 0x8d, 0xfd, 0x4f, 0x8f, 0xa9, 0x17, 0x95, 0xa6, 0xb1, 0x0d, 0xdf, 0x57, 0x87, 0x9b, 0xdb, 0xfa, - 0x11, 0xe2, 0xe9, 0xbd, 0xdb, 0x95, 0xf8, 0x67, 0x55, 0x12, 0x2d, 0xf6, 0x96, 0x0a, 0xf6, 0xb4, - 0x93, 0x51, 0x42, 0x76, 0x61, 0x68, 0xa7, 0x1d, 0xb4, 0xfc, 0x90, 0x96, 0x66, 0x50, 0x70, 0x37, - 0x3a, 0x7d, 0xa1, 0x02, 0x75, 0x71, 0x86, 0x2d, 0xd1, 0x2d, 0xfe, 0x43, 0xeb, 0x9d, 0x64, 0x45, - 0x3e, 0x85, 0xb1, 0x6a, 0x75, 0x2d, 0xde, 0x50, 0x2e, 0xe2, 0x86, 0x32, 0x7f, 0x7a, 0x52, 0x2e, - 0x31, 0x95, 0x2a, 0xde, 0x54, 0xf4, 0xaf, 0x4a, 0xa7, 0x60, 0x1c, 0x76, 0x37, 0xaa, 0x31, 0x87, - 0xd9, 0x98, 0x03, 0x53, 0xe6, 0xb2, 0x39, 0xe8, 0x14, 0xe4, 0x1f, 0x15, 0xe0, 0x9a, 0xce, 0x32, - 0x4b, 0x30, 0xa5, 0x4b, 0x2f, 0x22, 0xcd, 0x85, 0xd3, 0x93, 0xf2, 0x6d, 0xb3, 0x1f, 0xb5, 0xcc, - 0xc1, 0xd2, 0xda, 0xd6, 0xb5, 0x29, 0xd8, 0x5e, 0xbd, 0x03, 0x99, 0xed, 0x9d, 0x7b, 0xe1, 0xf6, - 0x9a, 0x52, 0xeb, 0xde, 0xde, 0x6e, 0x4d, 0x21, 0xbf, 0x0e, 0x45, 0xb1, 0x20, 0xad, 0xba, 0x51, - 0x95, 0x06, 0x4f, 0x69, 0x50, 0xba, 0x8c, 0xcd, 0x9b, 0x35, 0x97, 0x3c, 0x55, 0xbc, 0xf8, 0xaa, - 0x58, 0xed, 0xae, 0xa8, 0xd5, 0xee, 0xd0, 0x8d, 0x6a, 0x21, 0x16, 0x6a, 0x75, 0xa7, 0xf8, 0x5a, - 0x87, 0x30, 0xa2, 0x36, 0x08, 0x32, 0x04, 0x7d, 0x95, 0x66, 0xb3, 0xd8, 0xc3, 0xfe, 0xa8, 0x56, - 0xd7, 0x8a, 0x05, 0x32, 0x01, 0x10, 0xef, 0x8a, 0xc5, 0x5e, 0x32, 0x06, 0xc3, 0x72, 0xd7, 0x2a, - 0xf6, 0x21, 0x7e, 0xab, 0x55, 0xec, 0x27, 0x04, 0x26, 0xcc, 0xb5, 0xb3, 0x38, 0x40, 0xc6, 0x61, - 0x44, 0x55, 0x53, 0x1c, 0xb4, 0xfe, 0xa0, 0x00, 0x23, 0x6a, 0x09, 0x20, 0x93, 0x30, 0xba, 0xb7, - 0x55, 0xdd, 0x59, 0x59, 0x5a, 0xbf, 0xbf, 0xbe, 0xb2, 0x5c, 0xec, 0x21, 0x57, 0xe0, 0xd2, 0x6e, - 0x75, 0xad, 0xb6, 0xbc, 0x58, 0xdb, 0xd8, 0x5e, 0xaa, 0x6c, 0xd4, 0x76, 0xec, 0xed, 0xcf, 0xbf, - 0xa8, 0xed, 0xee, 0x6d, 0x6d, 0xad, 0x6c, 0x14, 0x0b, 0xa4, 0x04, 0xd3, 0xac, 0xf8, 0xe1, 0xde, - 0xe2, 0x8a, 0x8e, 0x50, 0xec, 0x25, 0xd7, 0xe1, 0x4a, 0x56, 0x49, 0x6d, 0x6d, 0xa5, 0xb2, 0xbc, - 0xb1, 0x52, 0xad, 0x16, 0xfb, 0xc8, 0x2c, 0x4c, 0x31, 0x94, 0xca, 0xce, 0x8e, 0x41, 0xdb, 0x6f, - 0x35, 0x61, 0x54, 0xfb, 0xf6, 0xc8, 0x3c, 0x94, 0x96, 0x56, 0xec, 0xdd, 0xda, 0xce, 0x9e, 0xbd, - 0xb3, 0x5d, 0x5d, 0xa9, 0x99, 0x2d, 0x4c, 0x96, 0x6e, 0x6c, 0xaf, 0xae, 0x6f, 0xd5, 0x18, 0xa8, - 0x5a, 0x2c, 0xb0, 0x66, 0x18, 0xa5, 0xd5, 0xf5, 0xad, 0xd5, 0x8d, 0x95, 0xda, 0x5e, 0x75, 0x45, - 0xa0, 0xf4, 0x5a, 0x3f, 0xeb, 0x4d, 0x69, 0x13, 0x64, 0x01, 0x46, 0xab, 0xdc, 0x54, 0x82, 0x2b, - 0x2c, 0x3f, 0x9b, 0x32, 0xf5, 0x70, 0x4c, 0x58, 0x50, 0xf8, 0xe2, 0xa9, 0x23, 0x31, 0x05, 0x71, - 0x87, 0xcd, 0x82, 0xba, 0xdf, 0xd4, 0x15, 0xc4, 0x96, 0x80, 0xd9, 0xaa, 0x94, 0x2c, 0x68, 0xaa, - 0x24, 0x3f, 0xa8, 0xe2, 0x61, 0x48, 0xaa, 0x92, 0xba, 0x5a, 0xa1, 0x94, 0xca, 0x85, 0x78, 0x84, - 0x85, 0x06, 0x88, 0x34, 0x19, 0x6a, 0x8c, 0xc2, 0x23, 0x6f, 0x48, 0x25, 0x9b, 0x1f, 0x2c, 0x51, - 0xcf, 0x48, 0x1c, 0x89, 0x84, 0x7e, 0x6d, 0xb5, 0x73, 0xf6, 0x74, 0xf2, 0x61, 0x72, 0x0a, 0x09, - 0x61, 0x20, 0xb3, 0xc4, 0xd6, 0x6d, 0x27, 0x50, 0x49, 0x19, 0x06, 0xf8, 0x62, 0xcf, 0xe5, 0x81, - 0x6a, 0x7d, 0x93, 0x01, 0x6c, 0x0e, 0xb7, 0xbe, 0x4a, 0x7f, 0x52, 0x64, 0x15, 0xc8, 0xaa, 0x1b, - 0xad, 0xb5, 0x0f, 0xb6, 0x83, 0x43, 0xc7, 0x73, 0x7f, 0xca, 0x4f, 0x91, 0x85, 0x58, 0xff, 0xe2, - 0x47, 0xb8, 0x9a, 0xaf, 0x15, 0xdb, 0x19, 0x24, 0xd6, 0x9f, 0xf6, 0xe9, 0xca, 0x13, 0x3b, 0x23, - 0x68, 0x83, 0x89, 0x67, 0x04, 0x1c, 0x44, 0x84, 0xb2, 0xe3, 0x40, 0x95, 0x86, 0x21, 0x3f, 0xc7, - 0xf5, 0xaa, 0xf1, 0x86, 0x90, 0x03, 0x6b, 0x6e, 0x83, 0x1d, 0x07, 0x14, 0x0a, 0x3b, 0x12, 0xf3, - 0xd5, 0x02, 0x8f, 0xc4, 0x7d, 0xf1, 0x91, 0x58, 0x2c, 0x39, 0xfc, 0x48, 0x1c, 0xa3, 0xb0, 0x29, - 0x25, 0xd4, 0x57, 0x6c, 0x45, 0x7f, 0x3c, 0xa5, 0x84, 0xca, 0x2b, 0xa6, 0x94, 0x86, 0x44, 0x3e, - 0x00, 0xa8, 0x3c, 0xaa, 0xe2, 0xd9, 0xcf, 0xde, 0x12, 0x2a, 0x3c, 0x6e, 0xb6, 0xce, 0xb3, 0x50, - 0x1c, 0x2d, 0x03, 0xfd, 0xec, 0xac, 0x61, 0x93, 0x45, 0x18, 0xaf, 0xfc, 0xb4, 0x1d, 0xd0, 0xf5, - 0x06, 0xdb, 0xaf, 0x23, 0x6e, 0x24, 0x18, 0xe1, 0x1b, 0x8a, 0xc3, 0x0a, 0x6a, 0xae, 0x28, 0xd1, - 0x18, 0x98, 0x24, 0x64, 0x1b, 0x2e, 0xac, 0x2e, 0xed, 0x88, 0x49, 0x5e, 0xa9, 0xd7, 0xfd, 0xb6, - 0x17, 0x09, 0xbd, 0xfd, 0x3a, 0x5b, 0xd5, 0x0e, 0xeb, 0xad, 0x9a, 0xfc, 0x20, 0x1c, 0x5e, 0xac, - 0x2b, 0xee, 0x29, 0x5a, 0x72, 0x03, 0xfa, 0xf6, 0xec, 0x75, 0x61, 0x41, 0xb8, 0x70, 0x7a, 0x52, - 0x1e, 0x6f, 0x07, 0xae, 0x46, 0xc2, 0x4a, 0xad, 0x26, 0x4c, 0xac, 0xd2, 0x88, 0xcd, 0x7c, 0x79, - 0x56, 0xeb, 0x3c, 0x74, 0x1f, 0xc1, 0xe8, 0x23, 0x37, 0x3a, 0xaa, 0xd2, 0x7a, 0x40, 0x23, 0x69, - 0xa7, 0x42, 0x31, 0x3d, 0x73, 0xa3, 0xa3, 0x5a, 0xc8, 0xe1, 0xba, 0x4e, 0xa2, 0xa1, 0x5b, 0x2b, - 0x30, 0x29, 0x6a, 0x53, 0x47, 0xc3, 0x05, 0x93, 0x61, 0x01, 0x19, 0xe2, 0x50, 0xe9, 0x0c, 0x4d, - 0x36, 0x7f, 0xda, 0x0b, 0x33, 0x4b, 0x47, 0x8e, 0x77, 0x48, 0x77, 0x9c, 0x30, 0x7c, 0xe6, 0x07, - 0x0d, 0xad, 0xf1, 0x78, 0x2e, 0x4e, 0x35, 0x1e, 0x0f, 0xc2, 0x0b, 0x30, 0xba, 0xdd, 0x6c, 0x48, - 0x1a, 0x71, 0x66, 0xc7, 0xba, 0xfc, 0x66, 0xa3, 0xd6, 0x92, 0xbc, 0x74, 0x24, 0x46, 0xb3, 0x45, - 0x9f, 0x29, 0x9a, 0xbe, 0x98, 0xc6, 0xa3, 0xcf, 0x34, 0x1a, 0x0d, 0x89, 0xac, 0xc0, 0x85, 0x2a, - 0xad, 0xfb, 0x5e, 0xe3, 0xbe, 0x53, 0x8f, 0xfc, 0x60, 0xd7, 0x7f, 0x42, 0x3d, 0x31, 0x09, 0xf1, - 0xa3, 0x0a, 0xb1, 0xb0, 0xf6, 0x18, 0x4b, 0x6b, 0x11, 0x2b, 0xb6, 0xd3, 0x14, 0x64, 0x1b, 0x86, - 0x1f, 0x09, 0x6b, 0xa7, 0x38, 0xe8, 0xbf, 0x7a, 0x5b, 0x99, 0x3f, 0x97, 0x02, 0x8a, 0x33, 0xc7, - 0x69, 0x2a, 0x53, 0x85, 0xd2, 0x11, 0x71, 0x2d, 0x94, 0x98, 0xb6, 0x62, 0x62, 0xed, 0xc1, 0xf8, - 0x4e, 0xb3, 0x7d, 0xe8, 0x7a, 0x6c, 0xd5, 0xaa, 0xd2, 0x9f, 0x90, 0x65, 0x80, 0x18, 0x20, 0x6c, - 0x98, 0x53, 0xc2, 0x3c, 0x10, 0x17, 0xec, 0xbf, 0x25, 0xbe, 0x36, 0x84, 0xe0, 0x69, 0xce, 0xd6, - 0xe8, 0xac, 0xff, 0xde, 0x07, 0x44, 0x0c, 0x00, 0x6e, 0xe0, 0x55, 0x1a, 0xb1, 0xfd, 0xed, 0x22, - 0xf4, 0x2a, 0x53, 0xe3, 0xe0, 0xe9, 0x49, 0xb9, 0xd7, 0x6d, 0xd8, 0xbd, 0xeb, 0xcb, 0xe4, 0x6d, - 0x18, 0x40, 0x34, 0x94, 0xff, 0x84, 0xaa, 0x4f, 0xe7, 0xc0, 0x57, 0x2f, 0xd4, 0x1c, 0x6c, 0x8e, - 0x4c, 0xde, 0x81, 0x91, 0x65, 0xda, 0xa4, 0x87, 0x4e, 0xe4, 0xcb, 0x25, 0x80, 0x1b, 0xef, 0x24, - 0x50, 0x9b, 0x73, 0x31, 0x26, 0x3b, 0xca, 0xdb, 0xd4, 0x09, 0x7d, 0x4f, 0x3f, 0xca, 0x07, 0x08, - 0xd1, 0x8f, 0xf2, 0x1c, 0x87, 0xfc, 0x61, 0x01, 0x46, 0x2b, 0x9e, 0x27, 0x8c, 0x62, 0xa1, 0x90, - 0xfa, 0xcc, 0x6d, 0x65, 0x45, 0xde, 0x70, 0x0e, 0x68, 0x73, 0xdf, 0x69, 0xb6, 0x69, 0xb8, 0xf8, - 0x35, 0xd3, 0x37, 0xfe, 0xdd, 0x49, 0xf9, 0xc3, 0x73, 0x98, 0xb9, 0x62, 0x7b, 0xf4, 0x6e, 0xe0, - 0xb8, 0x51, 0x78, 0x7a, 0x52, 0x9e, 0x71, 0xe2, 0x0a, 0xf5, 0xef, 0x46, 0x6b, 0x47, 0xbc, 0xb9, - 0x0c, 0x76, 0xdb, 0x5c, 0xc8, 0x31, 0x4c, 0x56, 0xc2, 0xb0, 0x7d, 0x4c, 0xab, 0x91, 0x13, 0x44, - 0xbb, 0xee, 0x31, 0xc5, 0x45, 0xa4, 0xb3, 0x61, 0xe4, 0xf5, 0x9f, 0x9f, 0x94, 0x0b, 0xec, 0x40, - 0xe7, 0x20, 0x29, 0xd3, 0xd9, 0x82, 0xa8, 0x16, 0xb9, 0xfa, 0xfe, 0x88, 0x26, 0x92, 0x24, 0x6f, - 0xeb, 0x86, 0xd2, 0x68, 0xd6, 0x97, 0xf3, 0x46, 0xdc, 0x5a, 0x82, 0xf9, 0x55, 0x1a, 0xd9, 0x34, - 0xa4, 0x91, 0xfc, 0x46, 0x70, 0x86, 0xc7, 0x86, 0xe9, 0x21, 0xfc, 0xad, 0x88, 0x71, 0xf8, 0xf9, - 0x77, 0x21, 0x4b, 0xac, 0xff, 0xad, 0x00, 0xe5, 0xa5, 0x80, 0xf2, 0xb3, 0x50, 0x0e, 0xa3, 0xce, - 0x6b, 0xd7, 0x3c, 0xf4, 0xef, 0x3e, 0x6f, 0x49, 0x8b, 0x12, 0x96, 0xb2, 0x41, 0xb1, 0x11, 0x7a, - 0x46, 0x03, 0x9d, 0xf5, 0x18, 0x66, 0x6c, 0xea, 0xd1, 0x67, 0xce, 0x41, 0x93, 0x1a, 0x36, 0xae, - 0x32, 0x0c, 0xf0, 0x0f, 0x3d, 0xd5, 0x05, 0x0e, 0x3f, 0x9f, 0xbd, 0xd0, 0x1a, 0x87, 0xd1, 0x1d, - 0xd7, 0x3b, 0x14, 0xdc, 0xad, 0xff, 0xb3, 0x1f, 0xc6, 0xf8, 0x6f, 0x71, 0xbc, 0x4b, 0x6c, 0x71, - 0x85, 0xb3, 0x6c, 0x71, 0xef, 0xc1, 0x38, 0xdf, 0xf7, 0xf7, 0x69, 0xc0, 0xb6, 0x56, 0x21, 0x09, - 0x3c, 0xaa, 0x72, 0x3d, 0xb9, 0xf6, 0x94, 0x97, 0xd8, 0x26, 0x22, 0xd9, 0x80, 0x09, 0x0e, 0xb8, - 0x4f, 0x9d, 0xa8, 0x1d, 0x5b, 0xdb, 0x26, 0x85, 0x32, 0x2e, 0xc1, 0x7c, 0x6a, 0x0a, 0x5e, 0x8f, - 0x05, 0xd0, 0x4e, 0xd0, 0x92, 0x4f, 0x60, 0x72, 0x27, 0xf0, 0xbf, 0x79, 0xae, 0x6d, 0xea, 0xfc, - 0xeb, 0xe4, 0x27, 0x3f, 0x56, 0x54, 0xd3, 0xb7, 0xf6, 0x24, 0x36, 0x79, 0x03, 0x86, 0xd7, 0xc3, - 0x45, 0x3f, 0x70, 0xbd, 0x43, 0xfc, 0x46, 0x87, 0xf9, 0x25, 0x85, 0x1b, 0xd6, 0x0e, 0x10, 0x68, - 0xab, 0xe2, 0x84, 0x39, 0x7d, 0xa8, 0xbb, 0x39, 0xfd, 0x2e, 0xc0, 0x86, 0xef, 0x34, 0x2a, 0xcd, - 0xe6, 0x52, 0x25, 0xc4, 0xdd, 0x53, 0xec, 0x47, 0x4d, 0xdf, 0x69, 0xd4, 0x9c, 0x66, 0xb3, 0x56, - 0x77, 0x42, 0x5b, 0xc3, 0x21, 0x5f, 0xc2, 0xa5, 0xd0, 0x3d, 0xf4, 0xb0, 0x73, 0x35, 0xa7, 0x79, - 0xe8, 0x07, 0x6e, 0x74, 0x74, 0x5c, 0x0b, 0xdb, 0x6e, 0xc4, 0x6d, 0x59, 0x13, 0x0b, 0x57, 0xc5, - 0x22, 0x57, 0x95, 0x78, 0x15, 0x89, 0x56, 0x65, 0x58, 0xf6, 0x6c, 0x98, 0x5d, 0xf0, 0xa0, 0x7f, - 0x78, 0xb0, 0x38, 0x64, 0x4f, 0x6e, 0xb8, 0x75, 0xea, 0x85, 0xf4, 0x91, 0x13, 0x78, 0xae, 0x77, - 0x18, 0x5a, 0xff, 0xf8, 0x02, 0x0c, 0x2b, 0x71, 0xde, 0xd6, 0x0f, 0x28, 0x62, 0x07, 0xc5, 0x99, - 0x15, 0x9b, 0xfa, 0x6c, 0x0d, 0x83, 0x5c, 0xc2, 0x23, 0x8b, 0xd8, 0xbb, 0x87, 0xd8, 0x4c, 0x77, - 0x5a, 0x2d, 0x9b, 0xc1, 0xd8, 0x17, 0xbc, 0xbc, 0x88, 0x63, 0x3b, 0xcc, 0xbf, 0xe0, 0xc6, 0x81, - 0xdd, 0xbb, 0xbc, 0xc8, 0x3e, 0x9d, 0xed, 0xf5, 0xe5, 0x25, 0x1c, 0xa6, 0x61, 0xfe, 0xe9, 0xf8, - 0x6e, 0xa3, 0x6e, 0x23, 0x94, 0x95, 0x56, 0x2b, 0x9b, 0x1b, 0x62, 0x28, 0xb0, 0x34, 0x74, 0x8e, - 0x9b, 0x36, 0x42, 0x99, 0x56, 0xcb, 0xad, 0x36, 0x4b, 0xbe, 0x17, 0x05, 0x7e, 0x33, 0x44, 0xed, - 0x68, 0x98, 0x4f, 0x15, 0x61, 0xee, 0xa9, 0x8b, 0x22, 0x3b, 0x81, 0x4a, 0x1e, 0xc1, 0x6c, 0xa5, - 0xf1, 0xd4, 0xf1, 0xea, 0xb4, 0xc1, 0x4b, 0x1e, 0xf9, 0xc1, 0x93, 0xc7, 0x4d, 0xff, 0x59, 0x88, - 0x63, 0x39, 0x2c, 0xac, 0xa3, 0x02, 0x45, 0x5a, 0x8f, 0x9e, 0x49, 0x24, 0x3b, 0x8f, 0x9a, 0x7d, - 0xae, 0x4b, 0x4d, 0xbf, 0xdd, 0x10, 0x23, 0x8c, 0x9f, 0x6b, 0x9d, 0x01, 0x6c, 0x0e, 0x67, 0x52, - 0x5a, 0xab, 0x6e, 0xe2, 0xf8, 0x09, 0x29, 0x1d, 0x85, 0xc7, 0x36, 0x83, 0x91, 0x57, 0x61, 0x48, - 0x2a, 0xe8, 0xfc, 0xb2, 0x04, 0x8d, 0xf4, 0x52, 0x31, 0x97, 0x65, 0xec, 0x73, 0xb3, 0x69, 0xdd, - 0x7f, 0x4a, 0x83, 0xe7, 0x4b, 0x7e, 0x83, 0x4a, 0xcb, 0x99, 0xb0, 0x0c, 0xf1, 0x82, 0x5a, 0x9d, - 0x95, 0xd8, 0x26, 0x22, 0xab, 0x80, 0xef, 0xaf, 0x61, 0x69, 0x32, 0xae, 0x80, 0xef, 0xbf, 0xa1, - 0x2d, 0xcb, 0xc8, 0x32, 0x5c, 0xa8, 0xb4, 0x23, 0xff, 0xd8, 0x89, 0xdc, 0xfa, 0x5e, 0xeb, 0x30, - 0x70, 0x58, 0x25, 0x45, 0x24, 0xc0, 0x03, 0x8b, 0x23, 0x0b, 0x6b, 0x6d, 0x51, 0x6a, 0xa7, 0x09, - 0xc8, 0xbb, 0x30, 0xb6, 0x1e, 0x72, 0xeb, 0xa8, 0x13, 0xd2, 0x06, 0x9a, 0xb8, 0x44, 0x2b, 0xdd, - 0xb0, 0x86, 0xb6, 0xd2, 0x1a, 0x3b, 0xe2, 0x34, 0x6c, 0x03, 0x8f, 0x58, 0x30, 0x58, 0x09, 0x43, - 0x37, 0x8c, 0xd0, 0x72, 0x35, 0xbc, 0x08, 0xa7, 0x27, 0xe5, 0x41, 0x07, 0x21, 0xb6, 0x28, 0x21, - 0x8f, 0x60, 0x74, 0x99, 0x32, 0xa5, 0x74, 0x37, 0x68, 0x87, 0x11, 0xda, 0xa1, 0x46, 0x17, 0x2e, - 0x89, 0x45, 0x43, 0x2b, 0x11, 0x73, 0x99, 0x6b, 0x92, 0x0d, 0x84, 0xd7, 0x22, 0x56, 0xa0, 0xef, - 0x88, 0x1a, 0x3e, 0xd3, 0xb8, 0x05, 0xcd, 0x9a, 0xdb, 0x60, 0xcb, 0xc0, 0x34, 0xb6, 0x01, 0x35, - 0x6e, 0xb1, 0xee, 0xd4, 0x8e, 0xb0, 0x44, 0xd7, 0xb8, 0x0d, 0x12, 0x52, 0x4f, 0x19, 0xdc, 0x67, - 0x0c, 0xa3, 0xaa, 0x59, 0x28, 0x9b, 0x78, 0x4e, 0x73, 0xfc, 0x47, 0x30, 0xba, 0xd4, 0x0e, 0x23, - 0xff, 0x78, 0xf7, 0x88, 0x1e, 0x53, 0xb4, 0x55, 0x89, 0x73, 0x45, 0x1d, 0xc1, 0xb5, 0x88, 0xc1, - 0xf5, 0x6e, 0x6a, 0xe8, 0xe4, 0x33, 0x20, 0xf2, 0x80, 0xb0, 0xca, 0xe6, 0x87, 0xc7, 0xe6, 0x32, - 0x9a, 0xab, 0x86, 0xf9, 0xa9, 0x40, 0x9e, 0x2b, 0x6a, 0x87, 0xaa, 0x58, 0x37, 0x99, 0xa6, 0x89, - 0x59, 0x83, 0x78, 0x13, 0x57, 0x03, 0xa7, 0x75, 0x54, 0x2a, 0xc5, 0x1a, 0xbc, 0xe8, 0xd4, 0x21, - 0x83, 0x1b, 0x9a, 0x48, 0x8c, 0x4e, 0xaa, 0x00, 0xfc, 0xe7, 0x06, 0x1b, 0x78, 0x6e, 0xe0, 0x2a, - 0x19, 0xf2, 0x62, 0x05, 0x52, 0x56, 0x97, 0x50, 0xbf, 0xe1, 0x6c, 0x9b, 0xae, 0x31, 0x9a, 0x1a, - 0x1b, 0xf2, 0x04, 0x8a, 0xfc, 0xd7, 0xa6, 0xef, 0xb9, 0x11, 0x5f, 0xd6, 0xe7, 0x0c, 0x6b, 0x68, - 0xb2, 0x58, 0x56, 0x80, 0x56, 0x68, 0x51, 0xc1, 0xb1, 0x2a, 0xd5, 0xad, 0x3d, 0x49, 0x4a, 0xb2, - 0x03, 0xa3, 0x3b, 0x81, 0xdf, 0x68, 0xd7, 0x23, 0x54, 0x06, 0x2e, 0xe3, 0xfa, 0x4c, 0x44, 0x3d, - 0x5a, 0x09, 0x97, 0x49, 0x8b, 0x03, 0x6a, 0x6c, 0xf9, 0xd6, 0x65, 0xa2, 0x21, 0x92, 0x45, 0x18, - 0xdc, 0xf1, 0x9b, 0x6e, 0xfd, 0x79, 0x69, 0x1e, 0x1b, 0x3d, 0x2d, 0x99, 0x21, 0x50, 0x36, 0x15, - 0x35, 0xcf, 0x16, 0x82, 0x74, 0xcd, 0x93, 0x23, 0x91, 0x0a, 0x8c, 0x7f, 0xc6, 0x26, 0x8c, 0xeb, - 0x7b, 0x9e, 0xe3, 0x06, 0xb4, 0x74, 0x05, 0xc7, 0x05, 0x6f, 0x0a, 0x7e, 0xa2, 0x17, 0xe8, 0xd3, - 0xd9, 0xa0, 0x20, 0xeb, 0x30, 0xb9, 0x1e, 0x56, 0xa3, 0xc0, 0x6d, 0xd1, 0x4d, 0xc7, 0x73, 0x0e, - 0x69, 0xa3, 0x74, 0x35, 0x36, 0xd5, 0xbb, 0x61, 0x2d, 0xc4, 0xb2, 0xda, 0x31, 0x2f, 0xd4, 0x4d, - 0xf5, 0x09, 0x3a, 0xf2, 0x39, 0x4c, 0xaf, 0x7c, 0x13, 0xb1, 0x19, 0xd3, 0xac, 0xb4, 0x1b, 0x6e, - 0x54, 0x8d, 0xfc, 0xc0, 0x39, 0xa4, 0xa5, 0x32, 0xf2, 0x7b, 0xe5, 0xf4, 0xa4, 0x7c, 0x8d, 0x8a, - 0xf2, 0x9a, 0xc3, 0x10, 0x6a, 0x21, 0xc7, 0xd0, 0xaf, 0xe0, 0xb3, 0x38, 0x30, 0xe9, 0x57, 0xdb, - 0x2d, 0xa6, 0x14, 0xa3, 0xf4, 0xaf, 0x19, 0xd2, 0xd7, 0x4a, 0xb8, 0xf4, 0x43, 0x0e, 0x48, 0x49, - 0x5f, 0x43, 0x24, 0x36, 0x90, 0x07, 0xbe, 0xeb, 0x55, 0xea, 0x91, 0xfb, 0x94, 0x0a, 0x9b, 0x41, - 0x58, 0xba, 0x8e, 0x2d, 0xc5, 0x6b, 0x85, 0x5f, 0xf7, 0x5d, 0xaf, 0xe6, 0x60, 0x71, 0x4d, 0x58, - 0x18, 0x8c, 0x6b, 0x85, 0x34, 0x35, 0xf9, 0x11, 0x5c, 0xdc, 0xf4, 0x0f, 0xdc, 0x26, 0xe5, 0x4b, - 0x0e, 0x17, 0x0b, 0x9a, 0x48, 0x2d, 0xe4, 0x8b, 0xd7, 0x0a, 0xc7, 0x88, 0x51, 0x13, 0xab, 0xd5, - 0xb1, 0xc2, 0xd1, 0xaf, 0x15, 0xb2, 0xb9, 0x90, 0x15, 0x18, 0xc3, 0xef, 0xb2, 0x89, 0x3f, 0xc3, - 0xd2, 0x0d, 0x3c, 0x79, 0x5d, 0x4f, 0x28, 0x53, 0xb7, 0x57, 0x34, 0x9c, 0x15, 0x2f, 0x0a, 0x9e, - 0xdb, 0x06, 0x19, 0xf9, 0x18, 0xe6, 0x92, 0xd3, 0x7b, 0xc9, 0xf7, 0x1e, 0xbb, 0x87, 0xed, 0x80, - 0x36, 0x4a, 0xaf, 0xb0, 0xa6, 0xda, 0x1d, 0x30, 0xe6, 0x1e, 0xc1, 0x85, 0x54, 0x15, 0xa4, 0x08, - 0x7d, 0x4f, 0xc4, 0x2d, 0xed, 0x88, 0xcd, 0xfe, 0x24, 0x6f, 0xc2, 0xc0, 0x53, 0x76, 0xe4, 0x41, - 0x8d, 0x21, 0xbe, 0xf7, 0xd3, 0x48, 0xd7, 0xbd, 0xc7, 0xbe, 0xcd, 0x91, 0x3e, 0xe8, 0x7d, 0xaf, - 0xf0, 0xa0, 0x7f, 0x78, 0xb4, 0x38, 0xc6, 0x2f, 0xd7, 0x1f, 0xf4, 0x0f, 0x8f, 0x17, 0x27, 0xac, - 0x0a, 0x4c, 0x26, 0xf0, 0x49, 0x09, 0x86, 0xa8, 0xc7, 0xd4, 0xe8, 0x06, 0xd7, 0x59, 0x6c, 0xf9, - 0x93, 0x4c, 0xc3, 0x40, 0xd3, 0x3d, 0x76, 0x23, 0xac, 0x70, 0xc0, 0xe6, 0x3f, 0xac, 0x3f, 0x2a, - 0x00, 0x49, 0x6f, 0x19, 0xe4, 0x4e, 0x82, 0x0d, 0x57, 0x22, 0x05, 0x48, 0xbf, 0x3e, 0x90, 0xdc, - 0x3f, 0x83, 0x29, 0x3e, 0x66, 0x72, 0x73, 0xd3, 0xea, 0xe2, 0x8b, 0x6a, 0x46, 0xb1, 0x6e, 0x6a, - 0x11, 0xc5, 0xb8, 0x15, 0x6e, 0x60, 0xd3, 0xda, 0x30, 0x93, 0xb9, 0x59, 0x90, 0x4d, 0x98, 0x39, - 0xf6, 0xbd, 0xe8, 0xa8, 0xf9, 0x5c, 0xee, 0x15, 0xa2, 0xb6, 0x02, 0xd6, 0x86, 0xeb, 0x63, 0x26, - 0x82, 0x3d, 0x25, 0xc0, 0x82, 0x23, 0xd6, 0xf3, 0xa0, 0x7f, 0xb8, 0xb7, 0xd8, 0xa7, 0x7a, 0x62, - 0xd9, 0x70, 0x21, 0xb5, 0xe6, 0x92, 0x1f, 0xc2, 0x58, 0x1d, 0x8f, 0x49, 0x46, 0x4d, 0x7c, 0xc7, - 0xd1, 0xe0, 0xfa, 0xe7, 0xc4, 0xe1, 0xbc, 0x2b, 0x7f, 0xbf, 0x00, 0xb3, 0x39, 0xab, 0xed, 0xf9, - 0x45, 0xfd, 0x05, 0x5c, 0x3c, 0x76, 0xbe, 0xa9, 0x05, 0x78, 0x0a, 0xae, 0x05, 0x8e, 0x97, 0x90, - 0x36, 0xae, 0x24, 0xd9, 0x18, 0xba, 0x87, 0xd3, 0xb1, 0xf3, 0x8d, 0x8d, 0x08, 0x36, 0x2b, 0xe7, - 0xed, 0xfc, 0x14, 0xc6, 0x8d, 0xf5, 0xf5, 0xdc, 0x8d, 0xb3, 0xee, 0xc1, 0x85, 0x65, 0xda, 0xa4, - 0x11, 0x3d, 0xb3, 0xf5, 0xcb, 0xda, 0x01, 0xa8, 0xd2, 0x63, 0xa7, 0x75, 0xe4, 0x33, 0xbd, 0x7b, - 0x51, 0xff, 0x25, 0xac, 0x27, 0x44, 0x2a, 0xfa, 0xb2, 0x60, 0xff, 0x2d, 0xae, 0x8b, 0x87, 0x0a, - 0xd3, 0xd6, 0xa8, 0xac, 0xbf, 0xe8, 0x05, 0x22, 0x16, 0xc8, 0x80, 0x3a, 0xc7, 0xb2, 0x19, 0xef, - 0xc3, 0x18, 0x3f, 0xeb, 0x72, 0x30, 0x36, 0x67, 0x74, 0x61, 0x4a, 0x7c, 0x79, 0x7a, 0xd1, 0x5a, - 0x8f, 0x6d, 0xa0, 0x32, 0x52, 0x9b, 0xf2, 0x43, 0x3a, 0x92, 0xf6, 0x1a, 0xa4, 0x7a, 0x11, 0x23, - 0xd5, 0x7f, 0x93, 0x4f, 0x60, 0x62, 0xc9, 0x3f, 0x6e, 0x31, 0x99, 0x08, 0xe2, 0x3e, 0x61, 0x00, - 0x11, 0xf5, 0x1a, 0x85, 0x6b, 0x3d, 0x76, 0x02, 0x9d, 0x6c, 0xc1, 0xd4, 0xfd, 0x66, 0x3b, 0x3c, - 0xaa, 0x78, 0x8d, 0xa5, 0xa6, 0x1f, 0x4a, 0x2e, 0xfd, 0xc2, 0x00, 0x21, 0x96, 0xb7, 0x34, 0xc6, - 0x5a, 0x8f, 0x9d, 0x45, 0x48, 0x5e, 0x85, 0x81, 0x95, 0xa7, 0x6c, 0xd9, 0x95, 0x7e, 0x2e, 0xc2, - 0x0d, 0x6f, 0xdb, 0xa3, 0xdb, 0x8f, 0xd7, 0x7a, 0x6c, 0x5e, 0xba, 0x38, 0x02, 0x43, 0xf2, 0x9c, - 0x7c, 0x87, 0xa9, 0xc4, 0x4a, 0x9c, 0xd5, 0xc8, 0x89, 0xda, 0x21, 0x99, 0x83, 0xe1, 0xbd, 0x16, - 0x3b, 0xbe, 0x49, 0x03, 0x83, 0xad, 0x7e, 0x5b, 0x6f, 0x9a, 0x92, 0x26, 0xf3, 0xba, 0x6d, 0x9a, - 0x23, 0xc7, 0x00, 0x6b, 0xcd, 0x14, 0x6e, 0x67, 0x6c, 0xa3, 0xde, 0xde, 0x44, 0xbd, 0xc5, 0xa4, - 0xac, 0xad, 0x99, 0x4c, 0xe1, 0x59, 0x9f, 0xc3, 0xd5, 0xbd, 0x56, 0x48, 0x83, 0xa8, 0xd2, 0x6a, - 0x35, 0xdd, 0x3a, 0xbf, 0x27, 0xc3, 0xf3, 0xb4, 0x9c, 0x2c, 0xef, 0xc2, 0xa0, 0xb8, 0x21, 0xe3, - 0xd3, 0x44, 0xce, 0xc1, 0x4a, 0xab, 0x25, 0x4e, 0xf1, 0x6f, 0x71, 0xe5, 0x9c, 0x9f, 0xcb, 0x6d, - 0x81, 0x6d, 0xfd, 0x7e, 0x01, 0xae, 0xf2, 0x2f, 0x20, 0x97, 0xf5, 0xf7, 0x60, 0x04, 0xbd, 0xe0, - 0x5a, 0x4e, 0x5d, 0x7e, 0x13, 0xdc, 0x1d, 0x50, 0x02, 0xed, 0xb8, 0x5c, 0xf3, 0x2f, 0xec, 0xcd, - 0xf7, 0x2f, 0x94, 0x1f, 0x58, 0x5f, 0xe6, 0x07, 0xf6, 0x19, 0x58, 0xa2, 0x45, 0xcd, 0x66, 0xaa, - 0x51, 0xe1, 0x8b, 0xb4, 0xca, 0xfa, 0xcf, 0xbd, 0x30, 0xbb, 0x4a, 0x3d, 0x1a, 0x38, 0xd8, 0x4f, - 0xc3, 0x5e, 0xa4, 0xfb, 0x19, 0x15, 0x3a, 0xfa, 0x19, 0x95, 0xa5, 0x05, 0xae, 0x17, 0x2d, 0x70, - 0x29, 0xa7, 0x29, 0x76, 0x5c, 0xdc, 0xb3, 0xd7, 0x45, 0xb7, 0xf0, 0xb8, 0xd8, 0x0e, 0x5c, 0xb4, - 0xb1, 0x93, 0xf5, 0xd8, 0x47, 0xa9, 0xbf, 0xab, 0x29, 0x6e, 0x4a, 0xdc, 0x62, 0x0e, 0x09, 0x1f, - 0x25, 0xd3, 0x33, 0x69, 0x0b, 0x06, 0xb9, 0xe1, 0x10, 0xaf, 0x99, 0x46, 0x17, 0x6e, 0x89, 0x6f, - 0x2a, 0xa7, 0x83, 0xc2, 0xca, 0x88, 0x1b, 0x3b, 0x9f, 0x02, 0x11, 0x02, 0x6c, 0xc1, 0x65, 0xee, - 0x33, 0x18, 0xd5, 0x50, 0xce, 0xb2, 0xf7, 0x2b, 0x03, 0x26, 0xd3, 0x18, 0xbd, 0x43, 0x6e, 0x0b, - 0xd5, 0xf6, 0x7e, 0xeb, 0x43, 0x28, 0xa5, 0x5b, 0x23, 0x8c, 0x56, 0xdd, 0x6c, 0x64, 0xd6, 0x32, - 0x4c, 0xaf, 0xd2, 0x08, 0x27, 0x2e, 0x7e, 0x44, 0x9a, 0xaf, 0x5d, 0xe2, 0x3b, 0x93, 0xab, 0xaa, - 0xbc, 0x31, 0xd2, 0xbf, 0xd2, 0x2a, 0xcc, 0x24, 0xb8, 0x88, 0xfa, 0x3f, 0x80, 0x21, 0x01, 0x52, - 0x2b, 0xaa, 0x70, 0xd8, 0xa5, 0x07, 0xa2, 0x60, 0x7f, 0x81, 0xcf, 0x5b, 0xc1, 0xd9, 0x96, 0x04, - 0xd6, 0x11, 0x5c, 0x64, 0xdb, 0x6c, 0xcc, 0x55, 0x4d, 0xc7, 0xcb, 0x30, 0xd2, 0x62, 0x8a, 0x42, - 0xe8, 0xfe, 0x94, 0x4f, 0xa3, 0x01, 0x7b, 0x98, 0x01, 0xaa, 0xee, 0x4f, 0x29, 0xb9, 0x02, 0x80, - 0x85, 0xd8, 0x4d, 0xb1, 0x0a, 0x20, 0x3a, 0x37, 0x0a, 0x12, 0x40, 0x4f, 0x3d, 0x3e, 0x6f, 0x6c, - 0xfc, 0xdb, 0x0a, 0x60, 0x36, 0x55, 0x93, 0xe8, 0xc0, 0x1d, 0x18, 0x96, 0x2a, 0x6c, 0xc2, 0x5c, - 0xaf, 0xf7, 0xc0, 0x56, 0x48, 0xe4, 0x35, 0x98, 0xf4, 0xe8, 0x37, 0x51, 0x2d, 0xd5, 0x86, 0x71, - 0x06, 0xde, 0x91, 0xed, 0xb0, 0x7e, 0x0d, 0x4d, 0xb4, 0x55, 0xcf, 0x7f, 0xf6, 0xb8, 0xe9, 0x3c, - 0xa1, 0xa9, 0x8a, 0x7f, 0x08, 0xc3, 0xd5, 0xee, 0x15, 0xf3, 0xcf, 0x47, 0x56, 0x6e, 0x2b, 0x12, - 0xab, 0x09, 0x73, 0xac, 0x4b, 0xd5, 0xca, 0xe6, 0xc6, 0x7a, 0x63, 0xe7, 0xbb, 0x16, 0xe0, 0x53, - 0xb8, 0x9c, 0x59, 0xdb, 0x77, 0x2d, 0xc4, 0x7f, 0xda, 0x0f, 0xb3, 0x7c, 0x33, 0x49, 0xcf, 0xe0, - 0xb3, 0x2f, 0x35, 0xbf, 0x92, 0xdb, 0xce, 0xbb, 0x19, 0xb7, 0x9d, 0x48, 0xa2, 0xdf, 0x76, 0x1a, - 0x77, 0x9c, 0xef, 0x65, 0xdf, 0x71, 0xa2, 0x9d, 0xc8, 0xbc, 0xe3, 0x4c, 0xde, 0x6c, 0xae, 0xe4, - 0xdf, 0x6c, 0xf2, 0x3b, 0xe6, 0xf4, 0xcd, 0x66, 0xd6, 0x7d, 0x66, 0xc2, 0x5d, 0x6a, 0xf8, 0xe5, - 0xba, 0x4b, 0xbd, 0x06, 0x43, 0x95, 0x56, 0x4b, 0x73, 0x3f, 0xc4, 0xe1, 0x71, 0x5a, 0x2d, 0x2e, - 0x3c, 0x59, 0x28, 0xd7, 0x79, 0xc8, 0x58, 0xe7, 0xdf, 0x07, 0x58, 0xc2, 0x47, 0x12, 0x38, 0x70, - 0xa3, 0x88, 0x81, 0x1a, 0x3e, 0x7f, 0x3a, 0x81, 0x03, 0xa7, 0x5b, 0x40, 0x62, 0x64, 0xae, 0xd8, - 0x5b, 0xfb, 0x50, 0x4a, 0x4f, 0x9f, 0x97, 0xb0, 0x74, 0xfd, 0x59, 0x01, 0xae, 0x08, 0x25, 0x27, - 0xf1, 0x81, 0x9f, 0x7f, 0x76, 0xbe, 0x03, 0x63, 0x82, 0x76, 0x37, 0xfe, 0x10, 0xf8, 0xf5, 0xb2, - 0x5c, 0x8c, 0xf9, 0x8a, 0x6e, 0xa0, 0x91, 0x77, 0x60, 0x18, 0xff, 0x88, 0xaf, 0x58, 0x98, 0x64, - 0x46, 0x10, 0xb5, 0x96, 0xbc, 0x68, 0x51, 0xa8, 0xd6, 0xd7, 0x70, 0x35, 0xaf, 0xe1, 0x2f, 0x41, - 0x2e, 0xff, 0xac, 0x00, 0x97, 0x05, 0x7b, 0x63, 0xa9, 0x78, 0xa1, 0x5d, 0xe7, 0x1c, 0x4e, 0xcb, - 0x0f, 0x60, 0x94, 0x55, 0x28, 0xdb, 0xdd, 0x27, 0xb6, 0x56, 0x71, 0x72, 0x88, 0x4b, 0x96, 0x9d, - 0xc8, 0x11, 0x9e, 0x30, 0xce, 0x71, 0x53, 0x1a, 0x2f, 0x6c, 0x9d, 0xd8, 0xfa, 0x12, 0xe6, 0xb3, - 0xbb, 0xf0, 0x12, 0xe4, 0xf3, 0x00, 0xe6, 0x32, 0x36, 0x85, 0x17, 0xdb, 0x93, 0xbf, 0x80, 0xcb, - 0x99, 0xbc, 0x5e, 0x42, 0x33, 0xd7, 0x98, 0xc6, 0x11, 0xbd, 0x84, 0x21, 0xb4, 0x1e, 0xc1, 0xa5, - 0x0c, 0x4e, 0x2f, 0xa1, 0x89, 0xab, 0x30, 0xab, 0x34, 0xed, 0x6f, 0xd5, 0xc2, 0x4d, 0xb8, 0xc2, - 0x19, 0xbd, 0x9c, 0x51, 0x79, 0x08, 0x97, 0x05, 0xbb, 0x97, 0x20, 0xbd, 0x35, 0x98, 0x8f, 0x0f, - 0xd4, 0x19, 0x7a, 0xd2, 0x99, 0x17, 0x19, 0x6b, 0x03, 0xae, 0xc5, 0x9c, 0x72, 0x94, 0x86, 0xb3, - 0x73, 0xe3, 0xea, 0x60, 0x3c, 0x4a, 0x2f, 0x65, 0x44, 0x1f, 0xc1, 0x45, 0x83, 0xe9, 0x4b, 0x53, - 0x95, 0xd6, 0x61, 0x8a, 0x33, 0x36, 0x55, 0xe7, 0x05, 0x5d, 0x75, 0x1e, 0x5d, 0xb8, 0x10, 0xb3, - 0x44, 0xf0, 0xfe, 0x5b, 0x19, 0xda, 0xf4, 0x26, 0x6a, 0xd3, 0x12, 0x25, 0x6e, 0xe1, 0x3b, 0x30, - 0xc8, 0x21, 0xa2, 0x7d, 0x19, 0xcc, 0xf8, 0x61, 0x81, 0x93, 0x09, 0x64, 0xeb, 0x47, 0x70, 0x85, - 0x9f, 0x44, 0xe3, 0xbb, 0x44, 0xf3, 0xb4, 0xf8, 0xc3, 0xc4, 0x41, 0xf4, 0x92, 0xe0, 0x9b, 0xc4, - 0xcf, 0x39, 0x8f, 0x1e, 0xc8, 0xb9, 0x9d, 0xc7, 0xff, 0x4c, 0x0f, 0xd8, 0xe4, 0x01, 0xb3, 0x37, - 0xf3, 0x80, 0x79, 0x03, 0xae, 0xab, 0x03, 0x66, 0xb2, 0x1a, 0x39, 0xb5, 0xac, 0x2f, 0xe1, 0x32, - 0xef, 0xa8, 0xf4, 0xee, 0x33, 0x9b, 0xf1, 0x61, 0xa2, 0x9b, 0xb3, 0xa2, 0x9b, 0x26, 0x76, 0x4e, - 0x27, 0xff, 0xaf, 0x82, 0xfc, 0xe4, 0xb2, 0x99, 0xff, 0xaa, 0x4f, 0xdc, 0x5b, 0x50, 0x56, 0x02, - 0x31, 0x5b, 0xf4, 0x62, 0xc7, 0xed, 0x4d, 0x98, 0xd1, 0xd9, 0xb8, 0x75, 0xba, 0x7f, 0x0f, 0x2f, - 0x79, 0xde, 0x66, 0x9f, 0x05, 0x02, 0xe4, 0xb4, 0x2b, 0x65, 0xc8, 0x0d, 0xf1, 0x6d, 0x85, 0x69, - 0xd5, 0x60, 0x3e, 0x3d, 0x14, 0x6e, 0x5d, 0xbe, 0x2a, 0x20, 0x9f, 0xb0, 0x4f, 0x18, 0x21, 0x62, - 0x30, 0x72, 0x99, 0xca, 0xef, 0x98, 0x93, 0x4b, 0x2a, 0xcb, 0x92, 0x4b, 0x4d, 0xa2, 0xff, 0xac, - 0x76, 0x39, 0x1f, 0x7e, 0x13, 0x88, 0x2c, 0x5a, 0xaa, 0xda, 0xb2, 0xea, 0x4b, 0xd0, 0xb7, 0x54, - 0xb5, 0xc5, 0x73, 0x26, 0xd4, 0x04, 0xeb, 0x61, 0x60, 0x33, 0x58, 0x52, 0x23, 0xef, 0x3d, 0x83, - 0x46, 0xfe, 0xa0, 0x7f, 0xb8, 0xaf, 0xd8, 0x6f, 0x93, 0xaa, 0x7b, 0xe8, 0x3d, 0x72, 0xa3, 0x23, - 0x55, 0x61, 0xc5, 0xfa, 0x0a, 0xa6, 0x8c, 0xea, 0xc5, 0x57, 0xdc, 0xf1, 0x1d, 0x16, 0xd3, 0x67, - 0x97, 0x2a, 0xe8, 0xa0, 0x82, 0x26, 0x8b, 0x31, 0xbe, 0xde, 0xd4, 0x9d, 0x1a, 0x3e, 0xf2, 0xb5, - 0x65, 0xa1, 0xf5, 0xf7, 0xfa, 0x35, 0xee, 0xda, 0xeb, 0xb6, 0x0e, 0xbd, 0xbb, 0x07, 0xc0, 0x67, - 0x88, 0xd6, 0x39, 0xa6, 0x00, 0x8e, 0x0a, 0xbf, 0x0f, 0xbe, 0x24, 0xdb, 0x1a, 0xd2, 0x59, 0x5f, - 0xbf, 0x09, 0x57, 0x60, 0x4e, 0x24, 0x1f, 0x7c, 0x2a, 0x57, 0x60, 0xc1, 0x3a, 0xb4, 0x75, 0x24, - 0xf2, 0xa3, 0xe4, 0x13, 0x8d, 0x01, 0xbc, 0x53, 0x7a, 0x45, 0x5e, 0x32, 0xa7, 0xfb, 0x76, 0xbe, - 0x57, 0x1a, 0xcf, 0x60, 0x86, 0xd1, 0xba, 0x8f, 0xf1, 0x60, 0xb1, 0xf2, 0x4d, 0x44, 0x3d, 0xbe, - 0xb6, 0x0f, 0x62, 0x3d, 0xaf, 0x76, 0xa8, 0x27, 0x46, 0x16, 0xf6, 0xf7, 0x98, 0x4f, 0x8d, 0xaa, - 0x32, 0x3b, 0x9b, 0x3f, 0x4e, 0x22, 0x7b, 0x63, 0xc5, 0x6b, 0xb4, 0x7c, 0x57, 0x1d, 0x98, 0xf8, - 0x24, 0x0a, 0x9a, 0x35, 0x2a, 0xe0, 0xb6, 0x8e, 0x64, 0xbd, 0xd6, 0xd1, 0xc1, 0x7c, 0x18, 0xfa, - 0x77, 0x97, 0x76, 0x37, 0x8a, 0x05, 0xeb, 0x0e, 0x80, 0x56, 0x13, 0xc0, 0xe0, 0xd6, 0xb6, 0xbd, - 0x59, 0xd9, 0x28, 0xf6, 0x90, 0x19, 0xb8, 0xf0, 0x68, 0x7d, 0x6b, 0x79, 0xfb, 0x51, 0xb5, 0x56, - 0xdd, 0xac, 0xd8, 0xbb, 0x4b, 0x15, 0x7b, 0xb9, 0x58, 0xb0, 0xbe, 0x86, 0x69, 0xb3, 0x87, 0x2f, - 0x75, 0x12, 0x46, 0x30, 0xa5, 0xf4, 0x99, 0x07, 0x8f, 0x76, 0x35, 0xdf, 0x50, 0x71, 0xf8, 0x4b, - 0xfa, 0x38, 0x89, 0x63, 0xa2, 0xf8, 0x8c, 0x34, 0x24, 0xf2, 0x06, 0x57, 0x0b, 0x92, 0xef, 0x97, - 0x99, 0x5a, 0x50, 0x8b, 0xf5, 0x02, 0x5c, 0xfa, 0x7e, 0x00, 0xd3, 0x66, 0xad, 0x67, 0xb5, 0x52, - 0xbd, 0x82, 0x4e, 0xb3, 0xda, 0xe3, 0x26, 0x42, 0xf4, 0x6b, 0x03, 0xb1, 0xb2, 0xfe, 0x00, 0x8a, - 0x02, 0x2b, 0xde, 0x79, 0x6f, 0x48, 0x33, 0x62, 0x21, 0xe3, 0x29, 0xa6, 0xf4, 0x0f, 0xf7, 0xa1, - 0xc8, 0x56, 0x4c, 0x41, 0xc9, 0x2b, 0x98, 0x86, 0x81, 0x8d, 0xf8, 0x3a, 0xc7, 0xe6, 0x3f, 0xf0, - 0x8d, 0x4f, 0xe4, 0x04, 0x91, 0xf4, 0x28, 0x1b, 0xb1, 0xd5, 0x6f, 0xf2, 0x06, 0x0c, 0xde, 0x77, - 0x9b, 0x91, 0x30, 0x8d, 0xc4, 0x9b, 0x3c, 0x63, 0xcb, 0x0b, 0x6c, 0x81, 0x60, 0xd9, 0x70, 0x41, - 0xab, 0xf0, 0x1c, 0x4d, 0x25, 0x25, 0x18, 0xda, 0xa2, 0xdf, 0x68, 0xf5, 0xcb, 0x9f, 0xd6, 0xbb, - 0x70, 0x41, 0x78, 0xeb, 0x69, 0x62, 0xba, 0x2e, 0x5e, 0x8c, 0x17, 0x8c, 0x67, 0xab, 0x82, 0x25, - 0x16, 0x31, 0xba, 0xbd, 0x56, 0xe3, 0x05, 0xe9, 0xd8, 0x46, 0x71, 0x4e, 0xba, 0xd7, 0xe5, 0x2d, - 0x50, 0xb7, 0xe1, 0xfc, 0x8b, 0x02, 0x94, 0x12, 0x56, 0x86, 0xa5, 0x23, 0xa7, 0xd9, 0xa4, 0xde, - 0x21, 0x25, 0x37, 0xa1, 0x7f, 0x77, 0x7b, 0x77, 0x47, 0x58, 0x49, 0xa5, 0x03, 0x00, 0x03, 0x29, - 0x1c, 0x1b, 0x31, 0xc8, 0x43, 0xb8, 0x20, 0xfd, 0x71, 0x55, 0x91, 0x18, 0xa1, 0x2b, 0x9d, 0xbd, - 0x7b, 0xd3, 0x74, 0xe4, 0x6d, 0x61, 0x12, 0xf9, 0x49, 0xdb, 0x0d, 0x68, 0x03, 0x2d, 0x3f, 0xf1, - 0x6d, 0xba, 0x56, 0x62, 0xeb, 0x68, 0xfc, 0x7d, 0xaf, 0xf5, 0x87, 0x05, 0x98, 0xcd, 0xb1, 0x9a, - 0x90, 0x37, 0x8c, 0xee, 0x4c, 0x69, 0xdd, 0x91, 0x28, 0x6b, 0x3d, 0xa2, 0x3f, 0x4b, 0x9a, 0x93, - 0x72, 0xdf, 0x39, 0x9c, 0x94, 0xd7, 0x7a, 0x62, 0xc7, 0xe4, 0x45, 0x80, 0x61, 0x09, 0xb7, 0x26, - 0x61, 0xdc, 0x90, 0x9b, 0x65, 0xc1, 0x98, 0x5e, 0x33, 0x1b, 0x9c, 0x25, 0xbf, 0xa1, 0x06, 0x87, - 0xfd, 0x6d, 0xfd, 0x41, 0x01, 0xa6, 0xb1, 0x8b, 0x87, 0x2e, 0x5b, 0xfa, 0x62, 0x09, 0x2d, 0x18, - 0x3d, 0x99, 0x37, 0x7a, 0x92, 0xc0, 0x55, 0x5d, 0xfa, 0x20, 0xd5, 0xa5, 0xf9, 0xac, 0x2e, 0xe1, - 0xf4, 0x76, 0x7d, 0xcf, 0xe8, 0x89, 0x76, 0x15, 0xf5, 0x47, 0x05, 0x98, 0xd2, 0xda, 0xa4, 0xda, - 0x7f, 0xcf, 0x68, 0xd2, 0xe5, 0x8c, 0x26, 0xa5, 0x84, 0xbc, 0x98, 0x6a, 0xd1, 0x2b, 0x9d, 0x5a, - 0xd4, 0x55, 0xc6, 0xff, 0xb1, 0x00, 0x33, 0x99, 0x32, 0x20, 0x17, 0x99, 0x6e, 0x5b, 0x0f, 0x68, - 0x24, 0xc4, 0x2b, 0x7e, 0x31, 0xf8, 0x7a, 0x18, 0xb6, 0x69, 0x20, 0xbe, 0x73, 0xf1, 0x8b, 0xbc, - 0x02, 0xe3, 0x3b, 0x34, 0x70, 0xfd, 0x06, 0x77, 0x5f, 0xe7, 0x7e, 0xa1, 0xe3, 0xb6, 0x09, 0x24, - 0xf3, 0x30, 0xa2, 0xfc, 0x1a, 0xb9, 0x7d, 0xd2, 0x8e, 0x01, 0x8c, 0xf7, 0xb2, 0x7b, 0xc8, 0x2f, - 0x35, 0x18, 0xb1, 0xf8, 0xc5, 0x16, 0x17, 0x69, 0x2d, 0x1c, 0xe4, 0x8b, 0x8b, 0x34, 0x05, 0x5e, - 0x84, 0xc1, 0xcf, 0x6c, 0x9c, 0x04, 0x18, 0x55, 0xc1, 0x16, 0xbf, 0xc8, 0x04, 0x3a, 0x20, 0xe3, - 0x8b, 0x07, 0x74, 0x3c, 0xfe, 0x00, 0xa6, 0xb3, 0xe4, 0x9a, 0x35, 0x85, 0x04, 0x6d, 0xaf, 0xa2, - 0xfd, 0x12, 0xa6, 0x2a, 0x8d, 0xc6, 0xe6, 0xfd, 0x0a, 0xf7, 0x39, 0x10, 0xa3, 0xca, 0x3f, 0x1e, - 0x6e, 0xaf, 0x13, 0x2a, 0x5b, 0xff, 0xba, 0xe7, 0x46, 0xf6, 0xd4, 0xca, 0x37, 0x6e, 0x18, 0xb9, - 0xde, 0xa1, 0x66, 0x54, 0xb4, 0x2f, 0x6e, 0xd1, 0x67, 0x19, 0x53, 0x80, 0xed, 0xa6, 0x26, 0x6f, - 0x0e, 0xcf, 0x60, 0x3e, 0xad, 0xb1, 0x8d, 0x97, 0x92, 0x59, 0x93, 0x6f, 0x5c, 0xd0, 0x57, 0xa9, - 0x3f, 0xb1, 0x7e, 0x00, 0x17, 0xf9, 0x92, 0xd6, 0xa9, 0xf1, 0xa2, 0xd9, 0xba, 0x0d, 0xd4, 0x7a, - 0x4f, 0x5a, 0x29, 0x3a, 0xb6, 0xcc, 0x1e, 0x33, 0xda, 0x82, 0x55, 0xfe, 0xa7, 0x02, 0xcc, 0x25, - 0x48, 0xab, 0xcf, 0xbd, 0xba, 0x5c, 0x4f, 0x5f, 0x4b, 0x3a, 0x78, 0xa3, 0x1e, 0xc0, 0x8d, 0x7f, - 0x6e, 0x43, 0xf9, 0x78, 0x93, 0x3b, 0x00, 0x9c, 0x58, 0xdb, 0xbe, 0xd1, 0xf4, 0x2d, 0x9c, 0x6c, - 0x70, 0x03, 0xd7, 0x50, 0x48, 0x1b, 0xb2, 0xe4, 0x2e, 0xbe, 0x91, 0x6e, 0xb6, 0x61, 0x8c, 0x24, - 0x42, 0x05, 0x79, 0x2d, 0xc7, 0x48, 0x9c, 0xc5, 0xdf, 0xfa, 0xbd, 0x3e, 0x98, 0xd5, 0x07, 0xf0, - 0x45, 0xfa, 0xba, 0x03, 0xa3, 0x4b, 0xbe, 0x17, 0xd1, 0x6f, 0x22, 0x2d, 0x92, 0x03, 0x51, 0x37, - 0xed, 0xaa, 0x44, 0xa8, 0x8e, 0x1c, 0x50, 0x63, 0x7a, 0x8c, 0xe1, 0x2c, 0x18, 0x23, 0x92, 0x25, - 0x18, 0xdf, 0xa2, 0xcf, 0x52, 0x02, 0x44, 0x87, 0x45, 0x8f, 0x3e, 0xab, 0x69, 0x42, 0xd4, 0xbd, - 0xc8, 0x0c, 0x1a, 0x72, 0x00, 0x13, 0x72, 0x72, 0x19, 0xc2, 0x9c, 0xd3, 0x77, 0x15, 0x73, 0x3a, - 0xf3, 0x48, 0x07, 0xac, 0x86, 0x1c, 0x19, 0x26, 0x38, 0xb2, 0xae, 0xf3, 0x1a, 0xf9, 0xe3, 0x7d, - 0x73, 0xdb, 0xd2, 0x4a, 0x0c, 0x77, 0xd0, 0xe4, 0xa3, 0x7d, 0x9d, 0x85, 0xb5, 0x03, 0xa5, 0xf4, - 0x78, 0x88, 0xda, 0xde, 0x86, 0x41, 0x0e, 0x15, 0x6a, 0x80, 0x0c, 0xd2, 0xa3, 0xb0, 0xf9, 0x39, - 0x9d, 0x57, 0x63, 0x0b, 0x5c, 0x6b, 0x0d, 0x6d, 0x27, 0x0a, 0x47, 0x29, 0x62, 0x77, 0x93, 0xc3, - 0x8b, 0x9e, 0xb6, 0x72, 0x78, 0x75, 0x3f, 0x13, 0xf9, 0x70, 0x61, 0x09, 0xcd, 0x4f, 0x3a, 0x27, - 0xd1, 0xb0, 0x5b, 0x30, 0x24, 0x40, 0x89, 0xf0, 0x41, 0xf1, 0xe7, 0x27, 0x11, 0xac, 0x0f, 0xe0, - 0x12, 0xda, 0xc2, 0x5c, 0xef, 0xb0, 0x49, 0xf7, 0x42, 0xe3, 0xe9, 0x41, 0xb7, 0xcf, 0xfa, 0x23, - 0x98, 0xcb, 0xa2, 0xed, 0xfa, 0x65, 0xf3, 0x80, 0x1e, 0xbf, 0xd7, 0x07, 0xd3, 0xeb, 0xa1, 0xae, - 0x4c, 0xa8, 0xa0, 0x1e, 0x19, 0x81, 0x26, 0x50, 0x26, 0x6b, 0x3d, 0x59, 0x81, 0x24, 0xde, 0xd6, - 0x5e, 0x55, 0xf6, 0x76, 0x8a, 0x20, 0xc1, 0xb6, 0x2d, 0xf5, 0xae, 0xf2, 0x35, 0xe8, 0xdf, 0x62, - 0x4b, 0x75, 0x9f, 0x18, 0x3b, 0x4e, 0xc1, 0x40, 0xf8, 0xaa, 0x91, 0x6d, 0x91, 0xec, 0x07, 0xb9, - 0x9f, 0x7a, 0x3b, 0xd9, 0xdf, 0x3d, 0x42, 0xc2, 0x5a, 0x4f, 0xea, 0x19, 0xe5, 0xbb, 0x30, 0x5a, - 0x69, 0x1c, 0x73, 0x8f, 0x40, 0xdf, 0x4b, 0x7c, 0x96, 0x5a, 0xc9, 0x5a, 0x8f, 0xad, 0x23, 0xb2, - 0x13, 0x6e, 0xa5, 0xd5, 0xc2, 0x8d, 0x2a, 0x2b, 0x6a, 0xc4, 0x5a, 0x0f, 0x77, 0xb0, 0xff, 0x81, - 0xf6, 0x22, 0x58, 0x3c, 0xcc, 0xc9, 0x7b, 0xd0, 0xbc, 0xd6, 0x63, 0xc7, 0xb8, 0x8b, 0xc3, 0x30, - 0xb8, 0xeb, 0x04, 0x87, 0x34, 0xb2, 0xbe, 0x84, 0x39, 0xe1, 0xdd, 0xc2, 0x4d, 0x86, 0xe8, 0x03, - 0x13, 0xc6, 0x0e, 0x4c, 0x9d, 0x3c, 0x52, 0xae, 0x02, 0xe0, 0x01, 0x61, 0xdd, 0x6b, 0xd0, 0x6f, - 0x84, 0x7b, 0x9d, 0x06, 0xb1, 0xde, 0x81, 0x11, 0x25, 0x5a, 0xd4, 0x82, 0xb5, 0x5d, 0x12, 0xc5, - 0x3c, 0x6d, 0xbc, 0x32, 0x95, 0x4f, 0x4b, 0x2f, 0x19, 0x42, 0x13, 0x01, 0x64, 0xb8, 0xda, 0xec, - 0xc2, 0x4c, 0x62, 0xf6, 0xc4, 0xf1, 0x09, 0x94, 0xe2, 0xca, 0xfd, 0xff, 0xd4, 0xef, 0xa4, 0x5e, - 0xdb, 0x7b, 0x26, 0xbd, 0xd6, 0xfa, 0x87, 0xbd, 0x78, 0xe2, 0x4a, 0xc9, 0x23, 0x61, 0xbc, 0xd2, - 0x0d, 0x68, 0x8b, 0x30, 0x82, 0xbd, 0x5f, 0x96, 0xef, 0xd1, 0x3a, 0x3b, 0x67, 0x0c, 0xff, 0xfc, - 0xa4, 0xdc, 0x83, 0x1e, 0x19, 0x31, 0x19, 0xf9, 0x18, 0x86, 0x56, 0xbc, 0x06, 0x72, 0xe8, 0x3b, - 0x07, 0x07, 0x49, 0xc4, 0xc6, 0x04, 0x9b, 0xbc, 0xcb, 0xbe, 0x7d, 0x6e, 0xf3, 0xb0, 0x35, 0x48, - 0x7c, 0xf4, 0x1b, 0xc8, 0x3b, 0xfa, 0x0d, 0x26, 0x8e, 0x7e, 0x16, 0x0c, 0x6c, 0x07, 0x0d, 0x31, - 0xc1, 0x26, 0x16, 0xc6, 0x84, 0xe0, 0x10, 0x66, 0xf3, 0x22, 0xeb, 0xbf, 0x14, 0x60, 0x76, 0x95, - 0x46, 0x99, 0x73, 0xc8, 0x90, 0x4a, 0xe1, 0x5b, 0x4b, 0xa5, 0xf7, 0x45, 0xa4, 0xa2, 0x7a, 0xdd, - 0x97, 0xd7, 0xeb, 0xfe, 0xbc, 0x5e, 0x0f, 0xe4, 0xf7, 0x7a, 0x15, 0x06, 0x79, 0x57, 0xd9, 0xf1, - 0x76, 0x3d, 0xa2, 0xc7, 0xf1, 0xf1, 0x56, 0x77, 0x2d, 0xb3, 0x79, 0x19, 0xd3, 0x40, 0x37, 0x9c, - 0x50, 0x3f, 0xde, 0x8a, 0x9f, 0xd6, 0x8f, 0xf1, 0x25, 0xeb, 0x86, 0x5f, 0x7f, 0xa2, 0x99, 0x49, - 0x87, 0xf8, 0x17, 0x9a, 0x34, 0xab, 0x33, 0x2c, 0x5e, 0x62, 0x4b, 0x0c, 0x72, 0x0d, 0x46, 0xd7, - 0xbd, 0xfb, 0x7e, 0x50, 0xa7, 0xdb, 0x5e, 0x93, 0x73, 0x1f, 0xb6, 0x75, 0x90, 0x30, 0x1f, 0x88, - 0x1a, 0xe2, 0x33, 0x39, 0x02, 0x12, 0x67, 0x72, 0x06, 0xdb, 0x5f, 0xb0, 0x79, 0x99, 0xb0, 0x4e, - 0xb0, 0xbf, 0x3b, 0x1d, 0x67, 0xd5, 0xb9, 0xb7, 0x1b, 0xe2, 0x01, 0x5c, 0xb2, 0x69, 0xab, 0xe9, - 0x30, 0x65, 0xf0, 0xd8, 0xe7, 0xf8, 0xaa, 0xcf, 0xd7, 0x32, 0x5e, 0xa1, 0x99, 0x8e, 0x06, 0xaa, - 0xc9, 0xbd, 0x1d, 0x9a, 0x7c, 0x0c, 0xd7, 0x57, 0x69, 0x64, 0xae, 0xc4, 0xb1, 0x11, 0x56, 0x74, - 0x7e, 0x0d, 0x86, 0x43, 0xd3, 0x80, 0x2c, 0x5f, 0x55, 0x65, 0x12, 0xee, 0xbf, 0x25, 0xaf, 0x58, - 0x04, 0x1f, 0xf5, 0x97, 0xf5, 0x09, 0x94, 0xf3, 0xaa, 0x3b, 0x9b, 0x1f, 0xa8, 0x0b, 0xd7, 0xf2, - 0x19, 0x88, 0xe6, 0xae, 0x80, 0x34, 0x36, 0x8b, 0x4f, 0xa8, 0x5b, 0x6b, 0x4d, 0xfb, 0xb4, 0xf8, - 0xc3, 0x5a, 0x94, 0x1e, 0x71, 0xdf, 0xa2, 0xb9, 0x35, 0xbc, 0xc7, 0x35, 0x19, 0xc4, 0x72, 0xad, - 0xc0, 0xb0, 0x84, 0x09, 0xb9, 0xce, 0x66, 0xb6, 0x54, 0x0a, 0xb4, 0x21, 0x19, 0x28, 0x32, 0xeb, - 0xc7, 0xf2, 0x4e, 0xc3, 0xa4, 0x38, 0xdb, 0xb3, 0xcc, 0xb3, 0x5c, 0x62, 0x58, 0x3e, 0x5c, 0x32, - 0x79, 0xeb, 0xb6, 0xea, 0xa2, 0x66, 0xab, 0xe6, 0x26, 0xea, 0x6b, 0xa6, 0xed, 0xb4, 0x57, 0xcc, - 0xcb, 0x18, 0x44, 0xae, 0xea, 0x16, 0xe9, 0xb1, 0xf4, 0x3b, 0xcf, 0xbb, 0x30, 0x97, 0x55, 0xa1, - 0x76, 0x80, 0x54, 0x66, 0x4f, 0xa1, 0x28, 0x2d, 0xc3, 0x55, 0x19, 0x78, 0xc9, 0xf7, 0xa3, 0x30, - 0x0a, 0x9c, 0x56, 0xb5, 0x1e, 0xb8, 0xad, 0x98, 0xca, 0x82, 0x41, 0x0e, 0x11, 0x92, 0xe0, 0xf7, - 0x43, 0x1c, 0x47, 0x94, 0x58, 0xbf, 0x5d, 0x00, 0xcb, 0x70, 0x5e, 0xc2, 0x71, 0xde, 0x09, 0xfc, - 0xa7, 0x6e, 0x43, 0xbb, 0x93, 0x79, 0xc3, 0xb0, 0x07, 0xf2, 0xb7, 0x74, 0x49, 0xbf, 0x69, 0xb1, - 0x66, 0xde, 0x4d, 0xd8, 0xe8, 0xb8, 0xc6, 0x8a, 0x0e, 0x4d, 0x66, 0x84, 0x1b, 0x65, 0xbb, 0xfb, - 0x6f, 0x05, 0xb8, 0xd1, 0xb1, 0x0d, 0xa2, 0x3f, 0x07, 0x50, 0x4c, 0x96, 0x89, 0x19, 0x54, 0xd6, - 0x9c, 0x19, 0xd2, 0x1c, 0xf6, 0xef, 0x71, 0xe7, 0x6c, 0xe9, 0xf4, 0xd3, 0x52, 0x9c, 0x53, 0xfc, - 0xce, 0xdf, 0x7a, 0xf2, 0x3e, 0xc0, 0xae, 0x1f, 0x39, 0xcd, 0x25, 0xb4, 0x1c, 0xf4, 0xc5, 0x8e, - 0xf6, 0x11, 0x83, 0xd6, 0x92, 0x91, 0x13, 0x34, 0x64, 0xeb, 0x53, 0xfc, 0xae, 0xb3, 0x1b, 0x7d, - 0xb6, 0x4f, 0x6d, 0x09, 0x6e, 0x24, 0x2e, 0xd4, 0x5f, 0x80, 0x49, 0x04, 0x33, 0x4c, 0xfc, 0x4c, - 0x69, 0x5f, 0x0d, 0xfc, 0x76, 0xeb, 0x57, 0x33, 0xea, 0x7f, 0x5e, 0xe0, 0x1e, 0x8e, 0x7a, 0xb5, - 0x62, 0xa0, 0x97, 0x00, 0x62, 0x68, 0xc2, 0xd3, 0x5d, 0x15, 0xec, 0xdf, 0xe3, 0x67, 0x75, 0x34, - 0xb5, 0x1f, 0x72, 0x06, 0x1a, 0xd9, 0xaf, 0x76, 0x24, 0xdf, 0xc2, 0x5b, 0x74, 0x55, 0xfb, 0xd9, - 0xe4, 0xfe, 0xae, 0x34, 0x9c, 0x9c, 0x93, 0xee, 0x08, 0xa6, 0xd9, 0x0a, 0x50, 0x69, 0x47, 0x47, - 0x7e, 0xe0, 0x46, 0xf2, 0xcd, 0x06, 0xd9, 0x11, 0x0f, 0xce, 0x39, 0xd5, 0x47, 0xbf, 0x3c, 0x29, - 0xbf, 0x77, 0x9e, 0x90, 0x98, 0x92, 0xe7, 0xae, 0x7a, 0xa4, 0x6e, 0xcd, 0x42, 0xdf, 0x92, 0xbd, - 0x81, 0x0b, 0x9e, 0xbd, 0xa1, 0x16, 0x3c, 0x7b, 0xc3, 0xfa, 0x9b, 0x5e, 0x28, 0xf3, 0x90, 0x18, - 0xe8, 0x7c, 0x11, 0x9b, 0x3b, 0x34, 0x6f, 0x8e, 0xb3, 0x5a, 0x26, 0x12, 0x21, 0x2f, 0x7a, 0xcf, - 0x12, 0xf2, 0xe2, 0x37, 0x20, 0xc7, 0xd6, 0x75, 0x06, 0xf3, 0xc1, 0xeb, 0xa7, 0x27, 0xe5, 0x1b, - 0xb1, 0xf9, 0x80, 0x97, 0x66, 0xd9, 0x11, 0x72, 0xaa, 0x48, 0x1b, 0x3e, 0xfa, 0x5f, 0xc0, 0xf0, - 0x71, 0x17, 0x86, 0xf0, 0x30, 0xb3, 0xbe, 0x23, 0xdc, 0x21, 0x71, 0x7a, 0x62, 0x04, 0x9d, 0x9a, - 0xab, 0x47, 0xca, 0x93, 0x68, 0xd6, 0xff, 0xdb, 0x0b, 0xd7, 0xf2, 0x65, 0x2e, 0xda, 0xb6, 0x0c, - 0x10, 0xbb, 0x7d, 0x74, 0x72, 0x33, 0xc1, 0x6f, 0xe7, 0x19, 0x3d, 0x50, 0x6e, 0x5e, 0x1a, 0x1d, - 0xd3, 0x7d, 0xe4, 0x0b, 0xe1, 0xc4, 0x1d, 0x83, 0xf1, 0x70, 0x58, 0x04, 0x7a, 0x15, 0x20, 0x23, - 0xd0, 0xab, 0x80, 0x91, 0x03, 0x98, 0xdd, 0x09, 0xdc, 0xa7, 0x4e, 0x44, 0x1f, 0xd2, 0xe7, 0xfc, - 0x05, 0xcd, 0x8a, 0x78, 0x36, 0xc3, 0x9f, 0x7d, 0xdf, 0x3c, 0x3d, 0x29, 0xbf, 0xd2, 0xe2, 0x28, - 0x18, 0xcc, 0x8b, 0xbf, 0x59, 0xac, 0xa5, 0x5f, 0xd2, 0xe4, 0x31, 0xb2, 0xfe, 0x65, 0x01, 0x2e, - 0xa3, 0x5a, 0x2e, 0xec, 0xb5, 0xb2, 0xf2, 0x17, 0xf2, 0x36, 0xd4, 0x3b, 0x28, 0xe6, 0x22, 0x7a, - 0x1b, 0x1a, 0x2f, 0xa8, 0x6d, 0x03, 0x8d, 0xac, 0xc3, 0xa8, 0xf8, 0x8d, 0xdf, 0x5f, 0x1f, 0x1e, - 0x08, 0x66, 0xb4, 0x05, 0x0b, 0xa7, 0x3a, 0xb7, 0x31, 0xe1, 0xc4, 0x16, 0xcc, 0xf0, 0xa1, 0xa1, - 0xad, 0xd3, 0x5a, 0xbf, 0xe8, 0x85, 0xf9, 0x7d, 0x1a, 0xb8, 0x8f, 0x9f, 0xe7, 0x74, 0x66, 0x1b, - 0xa6, 0x25, 0x88, 0x87, 0xc5, 0x30, 0x3e, 0x31, 0x1e, 0xea, 0x51, 0x36, 0x55, 0xc4, 0xd5, 0x90, - 0x5f, 0x5c, 0x26, 0xe1, 0x39, 0xfc, 0x08, 0xdf, 0x86, 0xe1, 0x44, 0x60, 0x1a, 0x1c, 0x7f, 0xf9, - 0x85, 0xc6, 0x43, 0xb5, 0xd6, 0x63, 0x2b, 0x4c, 0xf2, 0x3b, 0xf9, 0x17, 0x3f, 0xc2, 0x66, 0xd2, - 0xcd, 0x70, 0x8a, 0x1f, 0x2c, 0xfb, 0x58, 0x1d, 0xad, 0x34, 0xe3, 0x83, 0x5d, 0xeb, 0xb1, 0xf3, - 0x6a, 0x5a, 0x1c, 0x85, 0x91, 0x0a, 0x5e, 0x66, 0xb1, 0x93, 0xfb, 0x7f, 0xed, 0x85, 0xab, 0xf2, - 0x35, 0x4c, 0x8e, 0x98, 0x3f, 0x87, 0x59, 0x09, 0xaa, 0xb4, 0x98, 0xc2, 0x40, 0x1b, 0xa6, 0xa4, - 0x79, 0xb8, 0x55, 0x29, 0x69, 0x47, 0xe0, 0xc4, 0xc2, 0xce, 0x23, 0x7f, 0x39, 0x66, 0xd3, 0x8f, - 0xb3, 0xc2, 0x04, 0xa1, 0xf9, 0x52, 0x5f, 0x33, 0x0d, 0xd1, 0x18, 0xeb, 0x67, 0x23, 0x65, 0x76, - 0xed, 0xff, 0xb6, 0x66, 0xd7, 0xb5, 0x9e, 0xa4, 0xe1, 0x75, 0x71, 0x02, 0xc6, 0xb6, 0xe8, 0xb3, - 0x58, 0xee, 0xff, 0x7b, 0x21, 0x11, 0xa2, 0x80, 0x69, 0x18, 0x3c, 0x56, 0x41, 0x21, 0x8e, 0x34, - 0x83, 0x21, 0x0a, 0x74, 0x0d, 0x83, 0xa3, 0xae, 0xc3, 0x10, 0xbf, 0xe1, 0x6d, 0x9c, 0xe1, 0x84, - 0xaf, 0x9e, 0xb5, 0xf0, 0xb7, 0x86, 0x0d, 0x7e, 0xd8, 0x17, 0xf4, 0xd6, 0x43, 0xb8, 0x2e, 0x1c, - 0x9f, 0xcd, 0xc1, 0xc7, 0x8a, 0xce, 0xb9, 0x7d, 0x59, 0x0e, 0x5c, 0x5d, 0xa5, 0xc9, 0xa5, 0xc7, - 0x78, 0xf6, 0xf3, 0x09, 0x4c, 0x1a, 0x70, 0xc5, 0x11, 0xb5, 0x52, 0x35, 0x87, 0x14, 0xeb, 0x24, - 0xb6, 0x75, 0x2d, 0xab, 0x0a, 0xbd, 0xb1, 0x16, 0xc5, 0xb8, 0xa9, 0x41, 0x7c, 0x37, 0x17, 0x9e, - 0x63, 0xd5, 0xbb, 0xa9, 0x7d, 0xd7, 0x7c, 0xc5, 0xe3, 0xd1, 0xed, 0xe4, 0xce, 0xab, 0x4a, 0xad, - 0x71, 0xe3, 0x12, 0xc1, 0x9a, 0x80, 0x31, 0x59, 0xd4, 0xa4, 0x61, 0x68, 0xfd, 0x6c, 0x00, 0x2c, - 0x21, 0xd8, 0xac, 0x6b, 0x6b, 0x29, 0x8f, 0x83, 0x54, 0x63, 0xc5, 0x46, 0x75, 0x51, 0x0f, 0xd7, - 0x19, 0x97, 0xf2, 0x99, 0x87, 0x7a, 0x5e, 0x3d, 0x86, 0x1a, 0x33, 0x2f, 0xd5, 0xfb, 0xaf, 0x72, - 0x96, 0x49, 0xfe, 0xb1, 0xbd, 0x7a, 0x7a, 0x52, 0xbe, 0x9e, 0xb3, 0x4c, 0x1a, 0x7c, 0xb3, 0x97, - 0x4c, 0xdb, 0xbc, 0x4b, 0xe9, 0x7b, 0x91, 0xbb, 0x14, 0xf6, 0x45, 0xea, 0xb7, 0x29, 0x7b, 0xa6, - 0x2c, 0xc5, 0xf7, 0x28, 0xef, 0xc2, 0xf5, 0x22, 0x11, 0x29, 0x40, 0x83, 0x18, 0x5c, 0x0d, 0x36, - 0xc4, 0x85, 0xa2, 0x66, 0xb3, 0x5c, 0x3a, 0xa2, 0xf5, 0x27, 0xc2, 0xc8, 0x2c, 0x6f, 0x82, 0xb3, - 0x8c, 0xed, 0x3c, 0x74, 0x33, 0xff, 0xce, 0x79, 0x41, 0xad, 0xce, 0x48, 0xf5, 0x48, 0x07, 0x49, - 0xb6, 0xe4, 0xa7, 0x30, 0xa5, 0x86, 0x3a, 0xe1, 0xb7, 0x34, 0xba, 0xf0, 0x4a, 0x1c, 0xe5, 0xf3, - 0xf8, 0xb1, 0x73, 0xfb, 0xe9, 0xbd, 0xdb, 0x19, 0xb8, 0xfc, 0x01, 0x7d, 0x5d, 0x16, 0x68, 0x4e, - 0x4b, 0xfa, 0x0d, 0x59, 0x16, 0xa1, 0x76, 0x0f, 0xfe, 0xff, 0x28, 0x2f, 0x7b, 0xa6, 0x2f, 0xb8, - 0x4d, 0x2a, 0x9e, 0xcb, 0xc8, 0xd9, 0x97, 0x73, 0x87, 0x57, 0xf8, 0x8e, 0xef, 0xf0, 0xfe, 0x49, - 0xaf, 0x7c, 0x5b, 0x90, 0xbe, 0x46, 0x3d, 0xf7, 0x55, 0x5e, 0x66, 0x0f, 0xce, 0xb4, 0x99, 0x66, - 0x36, 0x8e, 0x2c, 0xca, 0x8b, 0x50, 0x15, 0xb0, 0x6a, 0x42, 0x5d, 0x2a, 0xc4, 0x05, 0xc6, 0xdd, - 0x28, 0xaa, 0x2e, 0x1a, 0x55, 0xf2, 0x96, 0xad, 0xef, 0xdb, 0xdf, 0xb2, 0xfd, 0x2e, 0xc0, 0x85, - 0x1d, 0xe7, 0xd0, 0xf5, 0xd8, 0xa2, 0x6d, 0xd3, 0xd0, 0x6f, 0x07, 0x75, 0x4a, 0x2a, 0x30, 0x61, - 0x3a, 0x8e, 0x76, 0x71, 0x8b, 0x65, 0xfb, 0x92, 0x09, 0x23, 0x0b, 0x30, 0xa2, 0x1e, 0xab, 0x8a, - 0xcd, 0x24, 0xe3, 0x11, 0xeb, 0x5a, 0x8f, 0x1d, 0xa3, 0x91, 0xf7, 0x8d, 0x8b, 0xa1, 0x49, 0xf5, - 0xee, 0x1a, 0x71, 0x17, 0xb8, 0x67, 0x9f, 0xe7, 0x37, 0xcc, 0x0d, 0x91, 0x5f, 0x62, 0xfc, 0x38, - 0x75, 0x57, 0x34, 0x60, 0xb4, 0x38, 0x65, 0xf7, 0x42, 0x5d, 0x20, 0x37, 0x76, 0x76, 0xc6, 0x2d, - 0xd2, 0x97, 0x30, 0xfa, 0xb0, 0x7d, 0x40, 0xe5, 0xad, 0xd8, 0xa0, 0xd8, 0x1f, 0x93, 0xee, 0xd0, - 0xa2, 0x7c, 0xff, 0x2d, 0x3e, 0x06, 0x4f, 0xda, 0x07, 0x34, 0x1d, 0x94, 0x9d, 0x2d, 0x4c, 0x1a, - 0x33, 0x72, 0x04, 0xc5, 0xa4, 0xe7, 0xb2, 0xb8, 0x49, 0xea, 0xe0, 0x6f, 0x8d, 0x31, 0x40, 0xb4, - 0xd0, 0xef, 0xc9, 0xb0, 0xb8, 0x6b, 0x3d, 0x76, 0x8a, 0x2b, 0xf9, 0x4d, 0x98, 0xc9, 0xb4, 0x3a, - 0xaa, 0xb7, 0x57, 0x9d, 0x0d, 0x9a, 0xb8, 0xa8, 0x27, 0xa4, 0x26, 0x1f, 0x7a, 0x19, 0x35, 0x67, - 0xd7, 0x42, 0x1a, 0x30, 0x99, 0xf0, 0xc8, 0x15, 0xf9, 0x2d, 0xf2, 0x7d, 0x7c, 0x71, 0x63, 0x92, - 0x71, 0x5a, 0x33, 0xeb, 0x4a, 0xb2, 0x24, 0x1b, 0x30, 0xa2, 0x8e, 0xfb, 0xf8, 0xac, 0x2b, 0xdb, - 0xb4, 0x51, 0x3a, 0x3d, 0x29, 0x4f, 0xc7, 0xa6, 0x0d, 0x83, 0x67, 0xcc, 0x80, 0xfc, 0x16, 0x5c, - 0x57, 0x53, 0x74, 0x3b, 0xc8, 0x36, 0x02, 0x89, 0xd0, 0xf2, 0xb7, 0x92, 0x33, 0x3c, 0x0f, 0x7f, - 0xff, 0xde, 0x62, 0x6f, 0xa9, 0xb0, 0xd6, 0x63, 0x77, 0x67, 0x4d, 0x7e, 0x56, 0x80, 0x8b, 0x39, - 0xb5, 0x8e, 0x61, 0xad, 0x5d, 0x2d, 0x73, 0xa8, 0xdc, 0xe3, 0x7b, 0x23, 0xb7, 0x11, 0xbf, 0xcb, - 0x93, 0x26, 0x3a, 0xa3, 0xdf, 0x39, 0x35, 0x91, 0x07, 0x00, 0x71, 0xe8, 0x65, 0x8c, 0x60, 0x95, - 0xf1, 0x81, 0xa2, 0x40, 0xb3, 0x22, 0x34, 0x33, 0x81, 0x1e, 0xaa, 0x08, 0xb5, 0x6f, 0xc2, 0x20, - 0x9e, 0xb7, 0xc3, 0xd2, 0x38, 0x6a, 0xa4, 0x18, 0x46, 0x07, 0x4f, 0xe5, 0xfa, 0x1e, 0x24, 0x70, - 0xc8, 0x1a, 0xd3, 0xec, 0x70, 0x0f, 0x94, 0x9a, 0x98, 0x08, 0xba, 0x25, 0x4e, 0x07, 0xbc, 0x48, - 0x86, 0xda, 0x30, 0xf2, 0x11, 0x98, 0x64, 0x8b, 0x00, 0xc3, 0x81, 0x58, 0xe1, 0x1e, 0xf4, 0x0f, - 0xf7, 0x17, 0x07, 0xf8, 0x47, 0x28, 0xdd, 0xc6, 0x7f, 0x77, 0x98, 0xbf, 0x31, 0xdd, 0xf3, 0xdc, - 0xc7, 0x6e, 0xbc, 0x18, 0xea, 0x96, 0xba, 0x38, 0x31, 0x90, 0xd0, 0xa3, 0x73, 0x52, 0x00, 0x29, - 0xa3, 0x5e, 0x6f, 0x57, 0xa3, 0xde, 0x5b, 0xda, 0xf5, 0x97, 0x16, 0x03, 0x93, 0xeb, 0x4b, 0xa6, - 0x11, 0x2d, 0xbe, 0x17, 0xfb, 0x1a, 0x06, 0x31, 0x6c, 0x25, 0xbf, 0x5b, 0x1c, 0x5d, 0xb8, 0x2d, - 0xb6, 0x80, 0x0e, 0xcd, 0xe7, 0x71, 0x2e, 0xc5, 0xbb, 0x71, 0x2e, 0x71, 0x04, 0x18, 0x12, 0x47, - 0x08, 0xd9, 0x85, 0xa9, 0x9d, 0x80, 0x36, 0x84, 0xf3, 0x72, 0x2b, 0x10, 0x86, 0x0e, 0x6e, 0x42, - 0x41, 0xf5, 0xa1, 0x25, 0x8b, 0x6b, 0x54, 0x95, 0xeb, 0x9b, 0x73, 0x06, 0x39, 0x59, 0x81, 0x89, - 0x2a, 0x75, 0x82, 0xfa, 0xd1, 0x43, 0xfa, 0x9c, 0xa9, 0x4e, 0x46, 0x2e, 0x8c, 0x10, 0x4b, 0x58, - 0x7f, 0xb1, 0x48, 0x77, 0x34, 0x31, 0x89, 0xc8, 0xa7, 0x30, 0x58, 0xf5, 0x83, 0x68, 0xf1, 0xb9, - 0x58, 0x20, 0xe5, 0xed, 0x13, 0x07, 0x2e, 0x5e, 0x92, 0xf9, 0x40, 0x42, 0x3f, 0x88, 0x6a, 0x07, - 0x46, 0x5c, 0x26, 0x8e, 0x42, 0x9e, 0xc3, 0xb4, 0xb9, 0x38, 0x09, 0x9f, 0xda, 0x61, 0xa1, 0xb2, - 0x65, 0xad, 0x80, 0x1c, 0x65, 0xf1, 0xa6, 0xe0, 0x7e, 0x2d, 0xb9, 0x04, 0x3e, 0xc6, 0x72, 0x3d, - 0x54, 0x52, 0x16, 0x3d, 0xd9, 0xc4, 0x44, 0x2a, 0xbc, 0x47, 0x95, 0x90, 0xfb, 0xe2, 0x8e, 0xc4, - 0x91, 0xbf, 0xda, 0xb8, 0xc0, 0xa1, 0x24, 0x9c, 0x30, 0x99, 0x7d, 0xc7, 0x4e, 0x91, 0x92, 0x1d, - 0xb8, 0xb0, 0x17, 0xd2, 0x9d, 0x80, 0x3e, 0x75, 0xe9, 0x33, 0xc9, 0x0f, 0xe2, 0x30, 0x49, 0x8c, - 0x5f, 0x8b, 0x97, 0x66, 0x31, 0x4c, 0x13, 0x93, 0xf7, 0x01, 0x76, 0x5c, 0xcf, 0xa3, 0x0d, 0xbc, - 0xc2, 0x1c, 0x45, 0x56, 0x68, 0x9e, 0x6d, 0x21, 0xb4, 0xe6, 0x7b, 0x4d, 0x5d, 0xa4, 0x1a, 0x32, - 0x59, 0x84, 0xf1, 0x75, 0xaf, 0xde, 0x6c, 0x0b, 0x57, 0x83, 0x10, 0x17, 0x27, 0x11, 0xbe, 0xcd, - 0xe5, 0x05, 0xb5, 0xd4, 0x47, 0x6e, 0x92, 0x90, 0x87, 0x40, 0x04, 0x40, 0xcc, 0x5a, 0xe7, 0xa0, - 0x49, 0xc5, 0xe7, 0x8e, 0x66, 0x17, 0xc9, 0x08, 0xa7, 0xbb, 0x11, 0x15, 0x2d, 0x45, 0x36, 0xf7, - 0x3e, 0x8c, 0x6a, 0x73, 0x3e, 0x23, 0x10, 0xc2, 0xb4, 0x1e, 0x08, 0x61, 0x44, 0x0f, 0x78, 0xf0, - 0xff, 0x17, 0x60, 0x3e, 0xfb, 0x5b, 0x12, 0xca, 0xdc, 0x36, 0x8c, 0x28, 0xa0, 0x7a, 0xfa, 0x22, - 0x8f, 0x11, 0x09, 0x6d, 0x8a, 0x7f, 0xd0, 0x72, 0xe5, 0xd1, 0x7b, 0x1f, 0xf3, 0x78, 0x01, 0xdb, - 0xfe, 0xff, 0x31, 0x0c, 0xd3, 0xe8, 0xe2, 0x9d, 0x5c, 0xa7, 0x3e, 0xc1, 0x80, 0x26, 0x08, 0xd3, - 0x4c, 0xd5, 0xc2, 0x6a, 0xc5, 0xe1, 0xc9, 0xe8, 0x5b, 0x06, 0x01, 0x79, 0x47, 0xf7, 0xaf, 0xe8, - 0xd5, 0x12, 0xb7, 0x48, 0xa0, 0xde, 0x85, 0xd8, 0xf1, 0xe2, 0x0d, 0xe3, 0x7a, 0xff, 0xcc, 0x8b, - 0x5e, 0xff, 0x59, 0x17, 0xbd, 0x3d, 0xb5, 0xe8, 0xf1, 0x40, 0x19, 0xaf, 0x6b, 0x8b, 0xde, 0xcb, - 0x5f, 0xed, 0x06, 0x5f, 0xf6, 0x6a, 0x37, 0xf4, 0xed, 0x56, 0xbb, 0xe1, 0x17, 0x5c, 0xed, 0xee, - 0xc3, 0xc4, 0x16, 0xa5, 0x0d, 0xed, 0xd2, 0x65, 0x24, 0xde, 0x3d, 0x3d, 0x8a, 0xe6, 0xb4, 0xac, - 0x9b, 0x97, 0x04, 0x55, 0xee, 0xaa, 0x09, 0x7f, 0x37, 0xab, 0xe6, 0xe8, 0x4b, 0x5e, 0x35, 0xc7, - 0xbe, 0xcd, 0xaa, 0x99, 0x5a, 0xfa, 0xc6, 0xcf, 0xbd, 0xf4, 0x7d, 0x9b, 0xd5, 0xea, 0x63, 0xf4, - 0x6b, 0xac, 0x56, 0xd7, 0x84, 0x27, 0x8a, 0xe6, 0xfa, 0xb1, 0xe6, 0x87, 0xd2, 0xed, 0x1b, 0xff, - 0x66, 0xb0, 0x1d, 0x3f, 0x90, 0xd7, 0xe7, 0xf8, 0xb7, 0xb5, 0x88, 0xde, 0x8c, 0x3a, 0xbd, 0x7a, - 0x33, 0x30, 0x24, 0xde, 0x0d, 0x8a, 0x35, 0x2e, 0xa9, 0xf1, 0xd9, 0xb2, 0xdc, 0xfa, 0xb7, 0x05, - 0x7e, 0xc1, 0xf9, 0x3f, 0xe3, 0x52, 0xf9, 0x6d, 0x2e, 0x1d, 0x7f, 0x27, 0x8e, 0x27, 0x20, 0x62, - 0x1f, 0x04, 0x4e, 0xfd, 0x49, 0x7c, 0xeb, 0xfb, 0x23, 0xf6, 0x9d, 0xeb, 0x05, 0x42, 0x37, 0x9e, - 0x55, 0x92, 0xd2, 0x0b, 0xf7, 0xef, 0xc9, 0x05, 0x40, 0x84, 0x55, 0xe0, 0x60, 0x73, 0x01, 0xd0, - 0x09, 0xd0, 0xef, 0x6e, 0xd2, 0xb2, 0xf9, 0x73, 0xf8, 0xcc, 0x16, 0xbc, 0x9b, 0x7e, 0xd0, 0x8d, - 0x7a, 0x78, 0xfc, 0xa0, 0x5b, 0x17, 0x63, 0xfc, 0xb4, 0x7b, 0x0f, 0x2e, 0xdb, 0xf4, 0xd8, 0x7f, - 0x4a, 0x5f, 0x2e, 0xdb, 0xaf, 0xe0, 0x92, 0xc9, 0x90, 0x3f, 0xfd, 0xe1, 0x11, 0xdf, 0x3f, 0xce, - 0x8e, 0x13, 0x2f, 0x08, 0x78, 0x9c, 0x78, 0x1e, 0x6e, 0x9a, 0xfd, 0xa9, 0xef, 0x1b, 0x58, 0x66, - 0xf9, 0x30, 0x6f, 0x32, 0xaf, 0x34, 0x1a, 0x98, 0x26, 0xb3, 0xee, 0xb6, 0x1c, 0x2f, 0x22, 0xdb, - 0x30, 0xaa, 0xfd, 0x4c, 0x98, 0x1d, 0xb4, 0x12, 0xa1, 0xd3, 0xc4, 0x00, 0x23, 0x0e, 0x68, 0x0c, - 0xb6, 0x28, 0x94, 0x93, 0xe2, 0x61, 0x22, 0xd3, 0xeb, 0x5c, 0x84, 0x71, 0xed, 0xa7, 0x32, 0x7f, - 0xe2, 0xc7, 0xaf, 0xd5, 0x60, 0x0a, 0xcc, 0x24, 0xb1, 0xea, 0x30, 0x97, 0x25, 0x34, 0x0c, 0x11, - 0xf5, 0x9c, 0xac, 0xc4, 0xc1, 0xa6, 0xba, 0x7b, 0xee, 0x4d, 0xe6, 0x05, 0x9a, 0xb2, 0xfe, 0xef, - 0x7e, 0xb8, 0x2c, 0x06, 0xe3, 0x65, 0x8e, 0x38, 0xf9, 0x31, 0x8c, 0x6a, 0x63, 0x2c, 0x84, 0x7e, - 0x4d, 0xc6, 0xff, 0xcc, 0x9b, 0x0b, 0xdc, 0x3c, 0xd2, 0x46, 0x40, 0x2d, 0x31, 0xdc, 0x6b, 0x3d, - 0xb6, 0xce, 0x92, 0x34, 0x61, 0xc2, 0x1c, 0x68, 0x61, 0x21, 0xba, 0x91, 0x59, 0x89, 0x89, 0x2a, - 0xa3, 0x49, 0x37, 0x6a, 0x99, 0xc3, 0xbd, 0xd6, 0x63, 0x27, 0x78, 0x93, 0x6f, 0xe0, 0x42, 0x6a, - 0x94, 0x85, 0xe1, 0xef, 0xb5, 0xcc, 0x0a, 0x53, 0xd8, 0xdc, 0xb4, 0x1b, 0x20, 0x38, 0xb7, 0xda, - 0x74, 0x25, 0xa4, 0x01, 0x63, 0xfa, 0xc0, 0x0b, 0x13, 0xd6, 0xf5, 0x0e, 0xa2, 0xe4, 0x88, 0x5c, - 0xb9, 0x13, 0xb2, 0xc4, 0xb1, 0x7f, 0x6e, 0x9a, 0xab, 0x0d, 0xe4, 0x61, 0x18, 0xe4, 0xbf, 0xd9, - 0x12, 0xb0, 0x13, 0xd0, 0x90, 0x7a, 0x75, 0x6a, 0x78, 0x89, 0x7f, 0xcb, 0x25, 0xe0, 0x5f, 0x14, - 0xa0, 0x94, 0xc5, 0xb7, 0x4a, 0xbd, 0x06, 0xd9, 0x81, 0x62, 0xb2, 0x22, 0x31, 0xab, 0x2d, 0x15, - 0xb0, 0x37, 0xb7, 0x49, 0x6b, 0x3d, 0x76, 0x8a, 0x9a, 0x6c, 0xc1, 0x05, 0x0d, 0x26, 0x0c, 0xb5, - 0xbd, 0x67, 0x31, 0xd4, 0xb2, 0x51, 0x48, 0x91, 0xea, 0x76, 0xee, 0x35, 0xdc, 0x19, 0x97, 0xfd, - 0x63, 0xc7, 0xf5, 0x98, 0xa2, 0xab, 0xc5, 0x9b, 0x82, 0x18, 0x2a, 0x64, 0xc3, 0x2d, 0xb7, 0x08, - 0x95, 0xaf, 0x5a, 0x14, 0x8a, 0xf5, 0x11, 0xae, 0xe0, 0xc2, 0xde, 0xc7, 0xdf, 0xc8, 0x2a, 0x66, - 0xd7, 0x60, 0x60, 0x77, 0xa3, 0xba, 0x54, 0x11, 0x2f, 0x6e, 0x79, 0x9c, 0x86, 0x66, 0x58, 0xab, - 0x3b, 0x36, 0x2f, 0xb0, 0x3e, 0x04, 0xb2, 0x4a, 0x23, 0x11, 0x31, 0x5e, 0xd1, 0xbd, 0x0a, 0x43, - 0x02, 0x24, 0x28, 0xd1, 0xcd, 0xae, 0x29, 0xb0, 0x64, 0x99, 0xb5, 0x23, 0xcf, 0x09, 0x4d, 0xea, - 0x84, 0xda, 0xc6, 0xfc, 0x1e, 0x0c, 0x07, 0x02, 0x26, 0xf6, 0xe5, 0x09, 0x95, 0xb7, 0x03, 0xc1, - 0xdc, 0x36, 0x2e, 0x71, 0x6c, 0xf5, 0x97, 0xb5, 0x81, 0x31, 0x55, 0xb6, 0xd7, 0x97, 0x97, 0x98, - 0x54, 0x85, 0xb0, 0xe4, 0x70, 0xdc, 0x41, 0x7f, 0xf4, 0x88, 0xea, 0xef, 0x6d, 0x51, 0x34, 0xf8, - 0x91, 0x8b, 0x48, 0x42, 0x1a, 0x8a, 0xf5, 0x96, 0x8a, 0xd0, 0x92, 0xc1, 0x2d, 0x2f, 0xff, 0xc4, - 0x16, 0xc6, 0x9e, 0x59, 0x45, 0xd7, 0x9b, 0x97, 0xd1, 0x08, 0x07, 0xe6, 0xf8, 0x36, 0xcf, 0x7a, - 0x25, 0x32, 0x07, 0xfa, 0x6a, 0x69, 0x5c, 0x82, 0x11, 0x05, 0x53, 0xf7, 0x68, 0x5c, 0x56, 0x06, - 0xfe, 0xfe, 0x5b, 0xfc, 0x69, 0x72, 0x5d, 0x31, 0x88, 0xe9, 0x58, 0x15, 0xfc, 0xbb, 0xfb, 0x8e, - 0xab, 0x08, 0x69, 0x10, 0x7d, 0xa7, 0x55, 0xc4, 0xc1, 0x89, 0xce, 0x53, 0x85, 0x81, 0xbf, 0xbf, - 0x70, 0x16, 0x41, 0x7d, 0xc7, 0x55, 0x30, 0x41, 0x7d, 0x77, 0x55, 0x50, 0x19, 0xc5, 0x89, 0x4f, - 0xd2, 0x54, 0x25, 0x2b, 0xe9, 0x4a, 0xa4, 0x11, 0x3c, 0x41, 0xd1, 0x71, 0x3c, 0x28, 0xcc, 0x73, - 0x61, 0xfd, 0x0a, 0xaa, 0x61, 0x02, 0xfb, 0x6e, 0xab, 0xf9, 0xff, 0x0a, 0x3c, 0xa6, 0x54, 0x75, - 0x5b, 0xcb, 0xd9, 0xe9, 0x3d, 0xf6, 0xb5, 0x6b, 0x7e, 0xed, 0x6b, 0x7f, 0xe8, 0x7a, 0x0d, 0xfd, - 0x9a, 0xdf, 0x69, 0x47, 0x47, 0x2a, 0xe6, 0xf2, 0x13, 0xd7, 0x6b, 0xd8, 0x49, 0x6c, 0xf2, 0x3e, - 0x8c, 0x6b, 0x20, 0xa5, 0xad, 0xf1, 0xc4, 0x15, 0x3a, 0xb9, 0xdb, 0xb0, 0x4d, 0x4c, 0xeb, 0x6f, - 0x0b, 0x30, 0x95, 0x91, 0x4d, 0x1a, 0x8d, 0x19, 0x78, 0x0a, 0x52, 0x0b, 0x95, 0xc8, 0x08, 0x85, - 0xe1, 0x2d, 0x8c, 0x4d, 0x52, 0x21, 0x62, 0xc8, 0x7e, 0x2d, 0xf3, 0x75, 0xaf, 0x96, 0x9b, 0x2c, - 0x3b, 0xdb, 0xb5, 0x8e, 0x4e, 0x42, 0x80, 0xb8, 0x25, 0xc2, 0x6c, 0x5c, 0x65, 0x2a, 0xad, 0x96, - 0x36, 0xfb, 0xa5, 0xe4, 0xed, 0xd6, 0xaa, 0xb1, 0x7e, 0xa7, 0x17, 0x2e, 0x66, 0xf4, 0xbf, 0x4a, - 0xa3, 0xbf, 0x0b, 0x11, 0x24, 0x92, 0x97, 0xf7, 0xfd, 0x8a, 0x92, 0x97, 0x5b, 0xff, 0xa6, 0x17, - 0x2e, 0xee, 0xb5, 0x42, 0x7c, 0xad, 0xb5, 0xee, 0x3d, 0xa5, 0x5e, 0xe4, 0x07, 0xcf, 0xf1, 0x85, - 0x09, 0x79, 0x07, 0x06, 0xd6, 0x68, 0xb3, 0xe9, 0x8b, 0xf9, 0x7f, 0x45, 0x7a, 0x5a, 0x24, 0xb1, - 0x11, 0x69, 0xad, 0xc7, 0xe6, 0xd8, 0xe4, 0x7d, 0x18, 0x59, 0xa3, 0x4e, 0x10, 0x1d, 0x50, 0x47, - 0x1e, 0x59, 0x64, 0x3a, 0x0d, 0x8d, 0x44, 0x20, 0xac, 0xf5, 0xd8, 0x31, 0x36, 0x59, 0x60, 0xa7, - 0x79, 0xef, 0x50, 0x3d, 0x69, 0xcf, 0xa9, 0x90, 0xe1, 0xac, 0xf5, 0xd8, 0x88, 0x4b, 0x36, 0x61, - 0xbc, 0x72, 0x48, 0xbd, 0x68, 0x93, 0x46, 0x4e, 0xc3, 0x89, 0x1c, 0xa1, 0xda, 0xbe, 0x9a, 0x47, - 0x6c, 0x20, 0xaf, 0xf5, 0xd8, 0x26, 0x35, 0xf9, 0x10, 0x86, 0x56, 0x7d, 0xbf, 0x71, 0xf0, 0x9c, - 0x0a, 0x75, 0xb5, 0x9c, 0xc7, 0x48, 0xa0, 0xad, 0xf5, 0xd8, 0x92, 0x62, 0x71, 0x00, 0xfa, 0x36, - 0xc3, 0x43, 0xeb, 0xa4, 0x00, 0xa5, 0x65, 0xff, 0x99, 0x97, 0x29, 0xd5, 0x1f, 0x98, 0x52, 0x95, - 0xec, 0x33, 0xf0, 0x13, 0x72, 0x7d, 0x1b, 0xfa, 0x77, 0x5c, 0xef, 0x30, 0xa1, 0x0a, 0x66, 0xd0, - 0x31, 0x2c, 0x14, 0x8f, 0xeb, 0x1d, 0x92, 0x0d, 0xa9, 0x83, 0x0b, 0x5b, 0x63, 0x9f, 0xa1, 0xf8, - 0x67, 0x50, 0xeb, 0xd8, 0xb1, 0xae, 0xcd, 0x7f, 0xcb, 0x0e, 0xbe, 0x01, 0xb3, 0x39, 0xf5, 0x8a, - 0x37, 0xea, 0xac, 0x6f, 0xfd, 0xa8, 0xd8, 0xbc, 0x0e, 0x33, 0x99, 0xe3, 0x97, 0x42, 0xfc, 0x07, - 0x59, 0x13, 0x91, 0xf7, 0xbc, 0x04, 0x43, 0x32, 0x1d, 0x14, 0xb7, 0xfd, 0xc8, 0x9f, 0xf8, 0xd8, - 0x4a, 0x7e, 0xa8, 0x32, 0xba, 0x88, 0xfc, 0x1e, 0xf7, 0xb5, 0x68, 0x4e, 0xfc, 0x73, 0xfa, 0xe0, - 0x5b, 0x7c, 0x34, 0x8a, 0x17, 0xab, 0x73, 0xcd, 0x0f, 0x23, 0x4f, 0x79, 0xf1, 0xda, 0xea, 0x37, - 0xb9, 0x05, 0x45, 0x99, 0x53, 0x42, 0x24, 0xaf, 0x11, 0xa9, 0xd6, 0xed, 0x14, 0x9c, 0xbc, 0x07, - 0xb3, 0x49, 0x98, 0xec, 0x25, 0x7f, 0x2d, 0x97, 0x57, 0x6c, 0xfd, 0x55, 0x2f, 0x06, 0xdc, 0xee, - 0x30, 0xaf, 0x99, 0x74, 0xb7, 0xab, 0x42, 0x5a, 0xbd, 0xdb, 0x55, 0x32, 0x0f, 0x23, 0xdb, 0x55, - 0x23, 0xa7, 0x96, 0x1d, 0x03, 0x58, 0xb3, 0x59, 0x17, 0x2a, 0x41, 0xfd, 0xc8, 0x8d, 0x68, 0x3d, - 0x6a, 0x07, 0x62, 0x15, 0xb6, 0x53, 0x70, 0x62, 0xc1, 0xd8, 0x6a, 0xd3, 0x3d, 0xa8, 0x4b, 0x66, - 0x5c, 0x04, 0x06, 0x8c, 0xbc, 0x06, 0x13, 0xeb, 0x5e, 0x18, 0x39, 0xcd, 0xe6, 0x26, 0x8d, 0x8e, - 0xfc, 0x86, 0x48, 0x39, 0x6a, 0x27, 0xa0, 0xac, 0xde, 0x25, 0xdf, 0x8b, 0x1c, 0xd7, 0xa3, 0x81, - 0xdd, 0xf6, 0x22, 0xf7, 0x98, 0x8a, 0xbe, 0xa7, 0xe0, 0xe4, 0x6d, 0x98, 0x51, 0xb0, 0xed, 0xa0, - 0x7e, 0x44, 0xc3, 0x28, 0xc0, 0x4c, 0x7b, 0x18, 0x75, 0xc8, 0xce, 0x2e, 0xc4, 0x1a, 0x9a, 0x7e, - 0xbb, 0xb1, 0xe2, 0x3d, 0x75, 0x03, 0xdf, 0xc3, 0x04, 0x19, 0xc3, 0xa2, 0x86, 0x04, 0xdc, 0xfa, - 0x93, 0xe1, 0xcc, 0xcf, 0xf6, 0xdb, 0xcc, 0xc1, 0x2f, 0x60, 0x6c, 0xc9, 0x69, 0x39, 0x07, 0x6e, - 0xd3, 0x8d, 0x5c, 0x95, 0x92, 0xec, 0x9d, 0x2e, 0xdf, 0xbc, 0xcc, 0x32, 0x42, 0x1b, 0x3a, 0xb1, - 0x6d, 0xb0, 0x9a, 0xfb, 0x9b, 0x41, 0x98, 0xc9, 0xc4, 0x23, 0x37, 0x45, 0xee, 0x32, 0xb5, 0xae, - 0x8a, 0x8c, 0x5b, 0x76, 0x12, 0xcc, 0xc6, 0x12, 0x41, 0x4b, 0x4d, 0xea, 0x78, 0x6d, 0x91, 0x6f, - 0xcb, 0x36, 0x60, 0x6c, 0x2c, 0x99, 0xde, 0xa0, 0x31, 0x43, 0x27, 0x6c, 0x3b, 0x01, 0x25, 0xd7, - 0x60, 0x94, 0x41, 0x24, 0xab, 0x7e, 0xfe, 0x5c, 0x50, 0x03, 0x31, 0x4e, 0x5b, 0x7e, 0x83, 0x6a, - 0x9c, 0x06, 0x38, 0x27, 0x13, 0xca, 0x38, 0x31, 0x88, 0xe4, 0x34, 0xc8, 0x39, 0x69, 0x20, 0xf2, - 0x0a, 0x8c, 0x57, 0x5a, 0x2d, 0x8d, 0x11, 0x26, 0xda, 0xb2, 0x4d, 0x20, 0xb9, 0x0a, 0x50, 0x69, - 0xb5, 0x24, 0x1b, 0x4c, 0xa2, 0x65, 0x6b, 0x10, 0x72, 0x3b, 0x8e, 0x99, 0xa6, 0xb1, 0xc2, 0xeb, - 0x04, 0x3b, 0xa3, 0x84, 0xc9, 0x55, 0x05, 0x98, 0x12, 0x4c, 0x81, 0xcb, 0x35, 0x01, 0x26, 0x1f, - 0xc1, 0xa5, 0x84, 0x0f, 0x87, 0x56, 0x01, 0x9a, 0xfa, 0xed, 0x7c, 0x04, 0xf2, 0x2e, 0x5c, 0x4c, - 0x14, 0xca, 0xea, 0xd0, 0xaa, 0x6f, 0xe7, 0x94, 0x92, 0x0f, 0xa0, 0x94, 0x78, 0x3b, 0x1e, 0x57, - 0x8a, 0x16, 0x7c, 0x3b, 0xb7, 0x9c, 0x7d, 0x5d, 0x89, 0xb7, 0x64, 0xa2, 0x4a, 0xbc, 0xac, 0xb4, - 0xb3, 0x0b, 0xc9, 0x1a, 0x94, 0x33, 0xfd, 0x62, 0xb4, 0x8a, 0x31, 0x39, 0x98, 0xdd, 0x0d, 0x8d, - 0x2c, 0xc2, 0x7c, 0x26, 0x8a, 0x6c, 0x06, 0xa6, 0x0c, 0xb3, 0x3b, 0xe2, 0x90, 0x05, 0x98, 0x8e, - 0xfd, 0x83, 0xb4, 0x26, 0x60, 0xb6, 0x30, 0x3b, 0xb3, 0x8c, 0xbc, 0x69, 0x46, 0x08, 0xe0, 0x95, - 0x61, 0xb2, 0x30, 0x3b, 0x5d, 0x60, 0x9d, 0x16, 0x60, 0x3e, 0x73, 0xa3, 0x94, 0xfa, 0xfc, 0x5c, - 0x52, 0x71, 0xd4, 0xd6, 0x82, 0x5b, 0xd0, 0x8f, 0x0a, 0x3e, 0xb7, 0x15, 0x4b, 0xbf, 0x55, 0xa4, - 0xe7, 0xac, 0x58, 0xa9, 0x8d, 0x38, 0x64, 0x55, 0xdd, 0x0d, 0xf6, 0xa1, 0x25, 0xe3, 0x4e, 0x52, - 0x81, 0xca, 0xa8, 0x5c, 0xbf, 0x23, 0x94, 0xb7, 0x81, 0xdf, 0xe6, 0x1a, 0xe6, 0xaf, 0x0a, 0x50, - 0xee, 0xa2, 0x1f, 0xa8, 0x3e, 0x15, 0xce, 0xd0, 0xa7, 0x07, 0xaa, 0x4f, 0xfc, 0x9d, 0xed, 0xc2, - 0xd9, 0x74, 0x90, 0x97, 0xdd, 0xad, 0xbf, 0x2d, 0x00, 0x49, 0xeb, 0xa1, 0xe4, 0xfb, 0x30, 0x52, - 0xad, 0xae, 0x19, 0xde, 0x81, 0xa9, 0xdb, 0xa1, 0x18, 0x83, 0xdc, 0x3d, 0x93, 0x3b, 0xa0, 0xee, - 0x0c, 0xf8, 0x49, 0xca, 0x07, 0xb1, 0xaf, 0xa3, 0x0f, 0x62, 0xca, 0x03, 0x71, 0x25, 0xc3, 0xa9, - 0xae, 0xbf, 0x8b, 0x53, 0x5d, 0xda, 0x63, 0xce, 0x5a, 0x86, 0x52, 0x9e, 0x2a, 0x8b, 0x2b, 0x1c, - 0x8f, 0x34, 0xa6, 0xdd, 0x70, 0xf1, 0x15, 0xce, 0x04, 0x5b, 0xef, 0xc2, 0x45, 0x45, 0xcd, 0x53, - 0x98, 0x68, 0xd1, 0x0c, 0xc4, 0xf9, 0x57, 0x45, 0x4d, 0x88, 0x01, 0xd6, 0x5f, 0xf6, 0xa7, 0x08, - 0xab, 0xed, 0xe3, 0x63, 0x27, 0x78, 0x4e, 0x2a, 0x26, 0x61, 0x5f, 0xd7, 0x23, 0xc7, 0x62, 0xff, - 0xcf, 0x4f, 0xca, 0x3d, 0x1a, 0x77, 0xb6, 0x2f, 0xa0, 0x86, 0xe1, 0xd5, 0x29, 0xbf, 0x1b, 0xeb, - 0xe5, 0xa1, 0x9e, 0x0c, 0x20, 0xd9, 0x87, 0x71, 0xb1, 0x77, 0xe3, 0x6f, 0xf9, 0x8d, 0xdd, 0x4d, - 0x7e, 0x63, 0x46, 0xf3, 0x6e, 0x1b, 0x24, 0x7c, 0x36, 0x9a, 0x6c, 0xc8, 0x17, 0x30, 0x21, 0x35, - 0x35, 0xc1, 0x98, 0x7b, 0x33, 0xdd, 0xeb, 0xcc, 0xd8, 0xa4, 0xe1, 0x9c, 0x13, 0x8c, 0x58, 0x93, - 0xe5, 0x62, 0xc7, 0x39, 0x0f, 0x9c, 0xa5, 0xc9, 0x06, 0x89, 0x68, 0xb2, 0x01, 0x9b, 0xfb, 0x14, - 0x48, 0xba, 0x5f, 0xdd, 0x3e, 0xa7, 0x71, 0xed, 0x73, 0x9a, 0xab, 0xc0, 0x54, 0x46, 0x07, 0xce, - 0xc5, 0xe2, 0x53, 0x20, 0xe9, 0x96, 0x9e, 0x87, 0x83, 0x75, 0x13, 0x5e, 0x53, 0x22, 0x50, 0xb3, - 0xc1, 0xe0, 0x29, 0x2d, 0xe0, 0xbf, 0xdd, 0x0b, 0xe5, 0x2e, 0xa8, 0xe4, 0x8f, 0x0b, 0x49, 0x69, - 0xf3, 0xd9, 0xf8, 0x7e, 0x52, 0xda, 0xd9, 0xf4, 0x19, 0x62, 0x5f, 0xfc, 0xe0, 0x67, 0x7f, 0xfd, - 0xc2, 0x27, 0x8f, 0xf4, 0x90, 0x9d, 0x5f, 0x5a, 0xfd, 0xba, 0xb4, 0x6c, 0x98, 0x36, 0xce, 0x6c, - 0x67, 0xd9, 0xbc, 0xae, 0x02, 0x88, 0x84, 0xa7, 0x1b, 0xfe, 0xa1, 0xd0, 0x13, 0x35, 0x88, 0x75, - 0x1f, 0x66, 0x12, 0x3c, 0x85, 0x55, 0xfe, 0xfb, 0xa0, 0x5e, 0xad, 0x23, 0xd3, 0xbe, 0xc5, 0x0b, - 0xbf, 0x3c, 0x29, 0x8f, 0x33, 0x95, 0xfe, 0x76, 0x1c, 0x4d, 0x5f, 0xfe, 0x65, 0x6d, 0xea, 0xf7, - 0x0a, 0x95, 0xa6, 0x1e, 0x06, 0x88, 0xdc, 0x83, 0x41, 0x0e, 0x49, 0xc4, 0xac, 0xd6, 0xb1, 0xc5, - 0x9a, 0x20, 0x10, 0xad, 0x19, 0x7c, 0x63, 0x8b, 0x3f, 0x2a, 0x71, 0x4c, 0x08, 0x6b, 0x8f, 0xe7, - 0x70, 0x89, 0xc1, 0x2a, 0x2e, 0x76, 0x7f, 0x25, 0x8e, 0x5d, 0x21, 0x9d, 0x40, 0x24, 0x9e, 0xe7, - 0x3f, 0x6b, 0xd2, 0x06, 0xcf, 0x8f, 0xb7, 0x38, 0x26, 0x9c, 0x40, 0xfa, 0x1d, 0xc6, 0x00, 0xc9, - 0xac, 0x4f, 0x60, 0x86, 0x69, 0x0a, 0x41, 0xb2, 0x3e, 0xcc, 0xdc, 0xc0, 0x60, 0xa6, 0x97, 0xbe, - 0xc3, 0x40, 0xe8, 0xa5, 0x2f, 0x0a, 0xad, 0x0d, 0xb8, 0xc4, 0xad, 0x92, 0x7a, 0x97, 0xe2, 0x3b, - 0x80, 0x01, 0xfc, 0x9d, 0x78, 0xa1, 0x99, 0xd1, 0x7b, 0x8e, 0x67, 0x7d, 0x8c, 0x4f, 0x80, 0xc4, - 0x24, 0x75, 0x7d, 0x2f, 0x36, 0x41, 0x9e, 0xed, 0xcd, 0xf0, 0xff, 0x0a, 0xf3, 0x95, 0x56, 0x8b, - 0x7a, 0x8d, 0x98, 0x70, 0x37, 0x70, 0xce, 0x18, 0xd1, 0x81, 0x54, 0x60, 0x00, 0xb1, 0xd5, 0x05, - 0xaa, 0x68, 0x6e, 0x46, 0x73, 0x10, 0x4f, 0x04, 0x31, 0xc5, 0x0a, 0x38, 0xa5, 0xd5, 0x80, 0xd9, - 0x6a, 0xfb, 0xe0, 0xd8, 0x8d, 0xd0, 0xb7, 0x1f, 0xa3, 0xa2, 0xc8, 0xba, 0xd7, 0x65, 0xda, 0x2d, - 0x2e, 0x8c, 0x9b, 0xf1, 0x53, 0x11, 0x7c, 0x1e, 0x20, 0x22, 0xa5, 0x3c, 0xbd, 0x77, 0x3b, 0x26, - 0x45, 0xf3, 0x0b, 0xaf, 0x05, 0x8b, 0x45, 0x6a, 0x2e, 0x6b, 0x0a, 0x2e, 0xe8, 0x97, 0x51, 0x7c, - 0x86, 0xcc, 0xc0, 0x94, 0x79, 0xc9, 0xc4, 0xc1, 0x5f, 0xc3, 0x34, 0x37, 0x82, 0xf3, 0x20, 0xe4, - 0x0b, 0x71, 0xbc, 0xed, 0xde, 0xfd, 0x85, 0xc4, 0xa3, 0x02, 0xf4, 0x35, 0x56, 0xe9, 0x25, 0xf6, - 0x17, 0xf8, 0x33, 0xce, 0xa7, 0x0b, 0xc6, 0x55, 0x66, 0xef, 0xfe, 0xc2, 0xe2, 0x90, 0x08, 0xe6, - 0xca, 0xb8, 0xf3, 0xe1, 0xff, 0x4e, 0xb8, 0x2f, 0x60, 0xe4, 0x80, 0x35, 0xea, 0xe0, 0x2b, 0x9f, - 0xec, 0xf7, 0xd7, 0x13, 0xd0, 0xeb, 0x36, 0xa4, 0xd9, 0xc0, 0x6d, 0x58, 0x7f, 0x56, 0x80, 0x9b, - 0x5c, 0x19, 0xcb, 0xa6, 0xc3, 0x1b, 0xa7, 0x1c, 0x62, 0xf2, 0x1e, 0xf0, 0xfc, 0xf8, 0x42, 0xe3, - 0xb5, 0x44, 0xcb, 0x3b, 0x71, 0xe2, 0x04, 0xa4, 0x02, 0x63, 0xfa, 0x3b, 0x99, 0xb3, 0x05, 0xcb, - 0xb3, 0x47, 0x8f, 0x1f, 0x3b, 0xea, 0xed, 0xcc, 0x13, 0xb8, 0xbc, 0xf2, 0x0d, 0x9b, 0x10, 0x62, - 0x77, 0x12, 0x27, 0x87, 0xf8, 0x7d, 0xef, 0xe4, 0xae, 0x98, 0x31, 0xe6, 0xb1, 0x3e, 0x09, 0x66, - 0x67, 0x64, 0xb9, 0xc1, 0x29, 0xf5, 0x7d, 0xc4, 0x36, 0x60, 0xd6, 0x5f, 0x16, 0x60, 0x3e, 0xbb, - 0x36, 0xb1, 0xb0, 0xac, 0xc3, 0x85, 0x25, 0xc7, 0xf3, 0x3d, 0xb7, 0xee, 0x34, 0xab, 0xf5, 0x23, - 0xda, 0x68, 0xab, 0x90, 0xaf, 0x6a, 0x95, 0x39, 0xa4, 0x9e, 0x24, 0x97, 0x28, 0x76, 0x9a, 0x8a, - 0x9d, 0x0e, 0xf1, 0xa9, 0x05, 0x5f, 0x7b, 0x9b, 0x34, 0x50, 0xfc, 0x78, 0xcb, 0x72, 0x4a, 0xc9, - 0x5d, 0x69, 0xed, 0x6f, 0xec, 0x79, 0x6e, 0xa4, 0x88, 0xb8, 0x99, 0x27, 0xab, 0xc8, 0xfa, 0x57, - 0x05, 0xb8, 0x84, 0x59, 0x9e, 0x8c, 0xbc, 0x91, 0x71, 0xe4, 0x63, 0x19, 0xbc, 0xb7, 0x60, 0x3c, - 0x1d, 0x31, 0xb0, 0xcd, 0x28, 0xbe, 0xe4, 0x4d, 0xe8, 0xaf, 0x4a, 0x6f, 0xad, 0x89, 0x44, 0x52, - 0x5e, 0x41, 0xc1, 0xca, 0x6d, 0xc4, 0x62, 0x7b, 0xce, 0x32, 0x0d, 0xeb, 0xd4, 0xc3, 0xec, 0xc9, - 0xdc, 0xea, 0xa0, 0x41, 0xe2, 0xf8, 0x4b, 0xfd, 0x79, 0xf1, 0x97, 0x06, 0xcc, 0xf8, 0x4b, 0xd6, - 0x53, 0x9e, 0xe3, 0x29, 0xd9, 0x21, 0x31, 0x48, 0x1f, 0xa7, 0x92, 0x2d, 0xf3, 0x7d, 0xe0, 0x62, - 0x56, 0xcf, 0x98, 0x82, 0x9e, 0xc8, 0xa3, 0x9c, 0x1f, 0x69, 0x78, 0x07, 0x5e, 0x31, 0x70, 0x2b, - 0xcd, 0xa6, 0xff, 0x8c, 0x36, 0x76, 0x02, 0xff, 0xd8, 0x8f, 0x8c, 0x1c, 0x37, 0x22, 0xdb, 0x78, - 0x7c, 0x9f, 0x23, 0x66, 0x65, 0x02, 0x6c, 0xfd, 0x2f, 0xf0, 0x6a, 0x17, 0x8e, 0xa2, 0x53, 0x55, - 0xb8, 0xe0, 0x24, 0xca, 0xa4, 0xdb, 0xcd, 0xab, 0x59, 0xfd, 0x4a, 0x32, 0x0a, 0xed, 0x34, 0xfd, - 0xad, 0x5d, 0x23, 0x41, 0x31, 0x29, 0xc1, 0xf4, 0x8e, 0xbd, 0xbd, 0xbc, 0xb7, 0xb4, 0x5b, 0xdb, - 0xfd, 0x62, 0x67, 0xa5, 0xb6, 0xb7, 0xf5, 0x70, 0x6b, 0xfb, 0xd1, 0x16, 0x0f, 0xd5, 0x6d, 0x94, - 0xec, 0xae, 0x54, 0x36, 0x8b, 0x05, 0x32, 0x0d, 0x45, 0x03, 0xbc, 0xb2, 0xb7, 0x58, 0xec, 0xbd, - 0xf5, 0xb5, 0x91, 0x78, 0x97, 0xcc, 0x43, 0xa9, 0xba, 0xb7, 0xb3, 0xb3, 0x6d, 0x2b, 0xae, 0x7a, - 0xa0, 0xf0, 0x19, 0xb8, 0x60, 0x94, 0xde, 0xb7, 0x57, 0x56, 0x8a, 0x05, 0xd6, 0x14, 0x03, 0xbc, - 0x63, 0xaf, 0x6c, 0xae, 0xef, 0x6d, 0x16, 0x7b, 0x6f, 0xd5, 0xf4, 0xf7, 0x6a, 0xe4, 0x32, 0xcc, - 0x2e, 0xaf, 0xec, 0xaf, 0x2f, 0xad, 0x64, 0xf1, 0x9e, 0x86, 0xa2, 0x5e, 0xb8, 0xbb, 0xbd, 0xbb, - 0xc3, 0x59, 0xeb, 0xd0, 0x47, 0x2b, 0x8b, 0x95, 0xbd, 0xdd, 0xb5, 0xad, 0x62, 0x9f, 0xd5, 0x3f, - 0xdc, 0x5b, 0xec, 0xbd, 0xf5, 0x63, 0xe3, 0x31, 0x1b, 0x6b, 0xbe, 0x40, 0xdf, 0xab, 0x56, 0x56, - 0xf3, 0xab, 0xe0, 0xa5, 0x9b, 0xf7, 0x2b, 0xc5, 0x02, 0xb9, 0x02, 0x97, 0x0c, 0xe8, 0x4e, 0xa5, - 0x5a, 0x7d, 0xb4, 0x6d, 0x2f, 0x6f, 0xac, 0x54, 0xab, 0xc5, 0xde, 0x5b, 0xfb, 0x46, 0xcc, 0x39, - 0x56, 0xc3, 0xe6, 0xfd, 0x4a, 0xcd, 0x5e, 0xf9, 0x6c, 0x6f, 0xdd, 0x5e, 0x59, 0x4e, 0xd7, 0x60, - 0x94, 0x7e, 0xb1, 0x52, 0x2d, 0x16, 0xc8, 0x14, 0x4c, 0x1a, 0xd0, 0xad, 0xed, 0x62, 0xef, 0xad, - 0xd7, 0x44, 0x58, 0x32, 0x32, 0x01, 0xb0, 0xbc, 0x52, 0x5d, 0x5a, 0xd9, 0x5a, 0x5e, 0xdf, 0x5a, - 0x2d, 0xf6, 0x90, 0x71, 0x18, 0xa9, 0xa8, 0x9f, 0x85, 0x5b, 0x1f, 0xc0, 0x64, 0xe2, 0x68, 0xcf, - 0x30, 0xd4, 0xa1, 0xb8, 0xd8, 0x83, 0xe2, 0x97, 0x3f, 0xd1, 0xbe, 0xca, 0x4f, 0xe9, 0xc5, 0xc2, - 0xad, 0x45, 0x99, 0x08, 0x56, 0xfb, 0xce, 0xc9, 0x28, 0x0c, 0x2d, 0xaf, 0xdc, 0xaf, 0xec, 0x6d, - 0xec, 0x16, 0x7b, 0xd8, 0x8f, 0x25, 0x7b, 0xa5, 0xb2, 0xbb, 0xb2, 0x5c, 0x2c, 0x90, 0x11, 0x18, - 0xa8, 0xee, 0x56, 0x76, 0x57, 0x8a, 0xbd, 0x64, 0x18, 0xfa, 0xf7, 0xaa, 0x2b, 0x76, 0xb1, 0x6f, - 0xe1, 0x9f, 0xff, 0x71, 0x81, 0x1b, 0x19, 0xe5, 0xc3, 0xa8, 0xaf, 0xb5, 0xc3, 0xa4, 0x58, 0xf2, - 0x44, 0xd6, 0xcb, 0xdc, 0x93, 0x23, 0x6a, 0x01, 0x73, 0x1d, 0x6e, 0x5d, 0x10, 0xe1, 0x66, 0xe1, - 0x6e, 0x81, 0xd8, 0xe8, 0xa5, 0x92, 0x38, 0x5b, 0x29, 0xce, 0xd9, 0xc7, 0xdf, 0xb9, 0x2b, 0x1d, - 0x8f, 0x64, 0xe4, 0x37, 0xc0, 0xd2, 0x79, 0xe6, 0x9c, 0x40, 0xbe, 0x7f, 0xb6, 0x93, 0x86, 0xac, - 0xf3, 0xb5, 0xb3, 0xa1, 0x93, 0x07, 0x30, 0xce, 0x74, 0x73, 0x85, 0x46, 0x2e, 0x27, 0x09, 0xb5, - 0xe3, 0xc0, 0xdc, 0x7c, 0x76, 0xa1, 0x4a, 0x4c, 0x33, 0x86, 0x1d, 0xe1, 0x07, 0xeb, 0x90, 0xc8, - 0xd0, 0x15, 0x12, 0xc2, 0x57, 0xfc, 0xb9, 0x0b, 0x09, 0xf0, 0xfe, 0xbd, 0xbb, 0x05, 0x52, 0xc5, - 0xb8, 0x71, 0x86, 0x92, 0x4f, 0xe4, 0x4b, 0xbd, 0xb4, 0xf6, 0xcf, 0x5b, 0x53, 0x56, 0x69, 0x24, - 0x73, 0x4e, 0x07, 0x5b, 0x40, 0xd2, 0xba, 0x33, 0xb9, 0x16, 0xcf, 0x83, 0x6c, 0xb5, 0x7a, 0xee, - 0x62, 0xca, 0xf9, 0x70, 0x85, 0x69, 0x4f, 0x64, 0x05, 0x26, 0xc4, 0xbb, 0x74, 0xa1, 0xcd, 0x93, - 0x4e, 0xe7, 0x81, 0x5c, 0x36, 0xab, 0x28, 0x27, 0x75, 0x22, 0x20, 0x73, 0x71, 0x3f, 0x92, 0xc7, - 0x84, 0xb9, 0xcb, 0x99, 0x65, 0xa2, 0x7f, 0xf7, 0x61, 0xc2, 0x3c, 0x5c, 0x10, 0x39, 0x40, 0x99, - 0x67, 0x8e, 0xdc, 0x06, 0xd5, 0x60, 0x76, 0xd3, 0x71, 0xf1, 0xae, 0x44, 0xb8, 0xb8, 0x49, 0x07, - 0x35, 0x52, 0xee, 0xe0, 0xb1, 0x56, 0xa5, 0x5e, 0x43, 0x0d, 0x42, 0x5e, 0x90, 0x79, 0xfc, 0x6c, - 0xaa, 0x52, 0x47, 0x36, 0x1d, 0xfc, 0x88, 0x65, 0xa6, 0x06, 0xce, 0xf2, 0xd9, 0x9c, 0xcb, 0x73, - 0x33, 0x26, 0x9b, 0xa8, 0xa4, 0x27, 0x38, 0x6a, 0x73, 0xe2, 0xdc, 0xec, 0x4a, 0x18, 0x1d, 0x41, - 0x4b, 0xa9, 0x2e, 0x0a, 0x43, 0x92, 0x23, 0xb8, 0x5c, 0x66, 0x77, 0x0b, 0xe4, 0x6b, 0xfc, 0xaa, - 0x33, 0xd9, 0x3d, 0x72, 0xa3, 0x23, 0xa1, 0xfd, 0x5c, 0xce, 0x64, 0x20, 0x3e, 0x94, 0x0e, 0xdc, - 0x6d, 0x98, 0xce, 0xf2, 0x6c, 0x56, 0x02, 0xed, 0xe0, 0xf6, 0x9c, 0x3b, 0x0b, 0x6c, 0x76, 0xd4, - 0x68, 0xe4, 0x0f, 0x52, 0x07, 0xc7, 0xda, 0x5c, 0x9e, 0x1f, 0xc1, 0x04, 0x9b, 0x25, 0x0f, 0x29, - 0x6d, 0x55, 0x9a, 0xee, 0x53, 0x1a, 0x12, 0x19, 0x2d, 0x58, 0x81, 0xf2, 0x68, 0x6f, 0x16, 0xc8, - 0xf7, 0x60, 0xf4, 0x91, 0x13, 0xd5, 0x8f, 0x44, 0xf0, 0x4b, 0x19, 0x1b, 0x13, 0x61, 0x73, 0xf2, - 0x17, 0x16, 0xde, 0x2d, 0x90, 0x1f, 0xc2, 0xd0, 0x2a, 0x8d, 0xf0, 0xa5, 0xf4, 0x75, 0xe5, 0xe4, - 0xc7, 0x6d, 0x93, 0xeb, 0x9e, 0x7a, 0xc2, 0x23, 0x1b, 0x9c, 0x34, 0xe4, 0x92, 0x3b, 0x00, 0x7c, - 0x41, 0x40, 0x0e, 0xc9, 0xe2, 0xb9, 0x54, 0xb3, 0xc9, 0x2a, 0x53, 0x1e, 0x9a, 0x34, 0xa2, 0x67, - 0xad, 0x32, 0x4f, 0x46, 0x1b, 0x30, 0xa1, 0x72, 0xf9, 0x6c, 0x61, 0x8c, 0x12, 0x2b, 0xc1, 0x2c, - 0x3c, 0x07, 0xb7, 0x0f, 0xd8, 0x57, 0xc1, 0x13, 0xd9, 0x62, 0x30, 0x0b, 0x5c, 0x49, 0x67, 0xf5, - 0x88, 0x18, 0xfa, 0x12, 0x2a, 0x85, 0xc8, 0xd1, 0x34, 0xda, 0x35, 0x3f, 0x8c, 0x4c, 0x5a, 0x05, - 0xc9, 0xa6, 0xfd, 0x75, 0x98, 0xd3, 0xeb, 0x35, 0xc3, 0x36, 0xc7, 0x6b, 0x6e, 0x5e, 0x34, 0xe8, - 0xb9, 0xeb, 0x1d, 0x30, 0xc4, 0xf9, 0xad, 0xef, 0x77, 0x7b, 0x0b, 0xb8, 0x9c, 0x2c, 0xc3, 0x94, - 0xac, 0x6b, 0xbb, 0x45, 0xbd, 0x6a, 0x75, 0x0d, 0xf3, 0xb6, 0x48, 0x97, 0x12, 0x0d, 0x26, 0xb9, - 0x93, 0x74, 0x11, 0xdb, 0xfa, 0x8c, 0xa0, 0x15, 0xa4, 0x53, 0x28, 0x8b, 0x78, 0xeb, 0xcb, 0x0c, - 0x0b, 0xfc, 0x90, 0x1b, 0x95, 0x0c, 0xe5, 0x7f, 0x7f, 0x81, 0x74, 0x38, 0x00, 0xcd, 0xe5, 0x1c, - 0x21, 0xee, 0x16, 0xc8, 0x17, 0x40, 0xd2, 0x47, 0x12, 0x25, 0xc2, 0xdc, 0xe3, 0x97, 0x12, 0x61, - 0x87, 0xf3, 0xcc, 0x0a, 0x4c, 0xa9, 0x90, 0x35, 0x71, 0x39, 0xc9, 0x69, 0x4b, 0x87, 0x1d, 0x6c, - 0x26, 0x83, 0xcd, 0xfe, 0x42, 0x07, 0x46, 0x99, 0x70, 0xf2, 0x09, 0x4c, 0x89, 0xb9, 0x6f, 0xb4, - 0xa7, 0xa8, 0x96, 0x31, 0x71, 0xb8, 0xc9, 0x6d, 0xc9, 0x03, 0x98, 0xa9, 0x26, 0x04, 0xcf, 0x1d, - 0xea, 0x2f, 0x99, 0x2c, 0x10, 0x58, 0xa5, 0x11, 0x97, 0x7c, 0x36, 0xaf, 0x87, 0x40, 0xb8, 0x6d, - 0x49, 0xb2, 0x7b, 0xea, 0xd2, 0x67, 0xe4, 0x4a, 0xa2, 0xe9, 0x0c, 0x88, 0x68, 0xb8, 0x0e, 0xe6, - 0xf6, 0x6c, 0x97, 0x67, 0x73, 0x46, 0xa8, 0x71, 0x15, 0x7f, 0xcd, 0x20, 0x30, 0x6e, 0xf3, 0xc5, - 0x38, 0x5e, 0xca, 0xc5, 0x20, 0xbf, 0x85, 0x21, 0x67, 0x3b, 0x9f, 0xce, 0xc8, 0xf7, 0xb2, 0x0e, - 0xd1, 0x39, 0xe7, 0xcb, 0xb9, 0x37, 0xcf, 0x86, 0xac, 0xce, 0xc3, 0xe3, 0xab, 0x34, 0xda, 0x69, - 0xb6, 0x0f, 0x5d, 0xcc, 0xf3, 0x49, 0x94, 0xed, 0x49, 0x81, 0xc4, 0xf4, 0x96, 0x91, 0xde, 0xe2, - 0x82, 0x2a, 0xfd, 0x09, 0x59, 0x87, 0x22, 0xdf, 0x46, 0x34, 0x16, 0x57, 0x52, 0x2c, 0x04, 0x8a, - 0x13, 0x38, 0xc7, 0x61, 0xee, 0x68, 0xdd, 0xe1, 0xbe, 0x4f, 0x44, 0x7e, 0xda, 0xba, 0x9e, 0x3a, - 0x65, 0xc0, 0x54, 0xfc, 0x7e, 0x36, 0x22, 0x36, 0x0d, 0x69, 0x24, 0x63, 0xdb, 0xf0, 0x2c, 0xaf, - 0x37, 0x62, 0x9d, 0x21, 0x5d, 0x1a, 0xaf, 0x20, 0x89, 0x38, 0x6c, 0xfb, 0x6f, 0x11, 0x95, 0xf9, - 0x36, 0x83, 0xe9, 0x6b, 0x86, 0x6a, 0x73, 0x3e, 0xbe, 0x6f, 0xe3, 0x56, 0x86, 0xf1, 0x7c, 0x66, - 0xe2, 0xb6, 0xb1, 0xdf, 0x92, 0x6a, 0x5c, 0xa3, 0xda, 0x5f, 0xc0, 0x95, 0x91, 0xed, 0xb5, 0x4c, - 0x13, 0x6e, 0x07, 0x01, 0xf5, 0x38, 0x71, 0x9e, 0xda, 0x92, 0x45, 0xfd, 0x31, 0xae, 0x60, 0x1a, - 0x35, 0x7f, 0xf7, 0xd7, 0x8d, 0x05, 0xcf, 0x4a, 0x74, 0xb7, 0x40, 0xde, 0x83, 0x61, 0xd1, 0x46, - 0x46, 0x64, 0x34, 0x3a, 0xec, 0xd0, 0x6a, 0xa4, 0x04, 0x2e, 0x24, 0x6c, 0xb3, 0x89, 0x93, 0x37, - 0xfa, 0xbc, 0xcd, 0xef, 0xb1, 0x3d, 0xbb, 0xf1, 0x22, 0x94, 0x4b, 0x72, 0xf3, 0x46, 0xca, 0x92, - 0x0a, 0x2f, 0x23, 0x41, 0x5d, 0x76, 0x59, 0xce, 0x84, 0xa9, 0xdf, 0x18, 0x48, 0x51, 0xc5, 0x43, - 0x53, 0xea, 0xb7, 0x01, 0xee, 0xb6, 0x65, 0xaf, 0x43, 0xb1, 0x52, 0xc7, 0x0d, 0xa5, 0x4a, 0x8f, - 0x9d, 0xd6, 0x91, 0x1f, 0x50, 0x75, 0xf6, 0x49, 0x16, 0x48, 0x5e, 0x33, 0x4a, 0x41, 0x11, 0x05, - 0x1b, 0xd4, 0xc1, 0x68, 0xd3, 0xb3, 0x4a, 0x43, 0x49, 0x14, 0x65, 0x53, 0x74, 0x38, 0xeb, 0x4c, - 0x2f, 0xb1, 0xd3, 0x59, 0xf3, 0xdb, 0xb1, 0xf9, 0x00, 0x17, 0x0c, 0x85, 0x1c, 0xaa, 0x1d, 0x42, - 0x81, 0xd4, 0xa9, 0x50, 0x3e, 0x01, 0x52, 0xa8, 0x15, 0x79, 0xf5, 0x1c, 0x8b, 0x25, 0x8f, 0x3a, - 0xaf, 0xfa, 0x1f, 0xc0, 0xc4, 0x0a, 0x5b, 0xd0, 0xdb, 0x0d, 0x97, 0x47, 0xd8, 0x27, 0x66, 0xc8, - 0xf4, 0x5c, 0xc2, 0x35, 0x99, 0x08, 0x0c, 0x49, 0x85, 0x05, 0x41, 0xee, 0x29, 0x1a, 0x4c, 0x8e, - 0xc7, 0xb4, 0x64, 0x2b, 0x92, 0x1c, 0xe0, 0x09, 0x5f, 0x98, 0x0c, 0x66, 0xb9, 0x62, 0x59, 0x69, - 0xb5, 0x9a, 0xd2, 0xb2, 0xcd, 0xaf, 0xef, 0x5f, 0x35, 0x4e, 0xa2, 0xa9, 0x72, 0xc9, 0x3b, 0xad, - 0x7b, 0x7e, 0xae, 0x25, 0xe6, 0xcd, 0xe1, 0x99, 0x53, 0xde, 0x6d, 0x2e, 0xaa, 0x98, 0xd8, 0x95, - 0x66, 0x33, 0x45, 0x1c, 0x92, 0x37, 0x4c, 0xee, 0x59, 0x38, 0xdd, 0x6a, 0xc0, 0x93, 0x3e, 0x57, - 0xde, 0x2a, 0xad, 0x16, 0x5f, 0x2c, 0xaf, 0xaa, 0x05, 0xc3, 0x2c, 0x48, 0x9f, 0xf4, 0x93, 0xe5, - 0x62, 0x6d, 0x7f, 0x80, 0xd3, 0x2c, 0xce, 0xde, 0x4b, 0xf4, 0x73, 0x73, 0x32, 0x79, 0xb1, 0xd2, - 0xe5, 0x12, 0x85, 0x6a, 0x9f, 0x98, 0x44, 0x0d, 0x2a, 0x4e, 0x05, 0xac, 0x0c, 0x3c, 0x09, 0xb8, - 0xe4, 0x77, 0x35, 0xaf, 0x58, 0x19, 0x5c, 0x8b, 0xc9, 0x0c, 0xe9, 0xaa, 0xcb, 0x39, 0x99, 0xf7, - 0x55, 0x97, 0x73, 0x53, 0xab, 0x3f, 0x80, 0x62, 0x32, 0x39, 0xb3, 0x62, 0x9a, 0x93, 0xb5, 0x39, - 0x77, 0x4c, 0xee, 0xc3, 0xb4, 0x3e, 0xa2, 0xaa, 0xdf, 0x79, 0xab, 0x7f, 0x1e, 0x9f, 0x5d, 0x98, - 0xc9, 0xcc, 0xa5, 0xac, 0xb6, 0xd8, 0x4e, 0x99, 0x96, 0x73, 0xb9, 0x52, 0xb8, 0x98, 0x9d, 0x4e, - 0x9d, 0xbc, 0x62, 0xda, 0x0f, 0xb2, 0x93, 0x4b, 0xcf, 0xbd, 0xda, 0x05, 0x4b, 0x08, 0xf4, 0x6b, - 0xdc, 0x01, 0x53, 0x75, 0x5c, 0xd7, 0x2c, 0x0a, 0x39, 0x15, 0x58, 0x9d, 0x50, 0xd4, 0x1c, 0x98, - 0xce, 0x28, 0xce, 0x17, 0xf1, 0x8d, 0x7c, 0x9e, 0xf1, 0xc4, 0xda, 0x97, 0xa1, 0x9f, 0x73, 0x25, - 0xd3, 0x31, 0xed, 0x76, 0x87, 0x23, 0xe9, 0x9c, 0x9a, 0x0f, 0x67, 0x6f, 0x72, 0x1e, 0xb7, 0x86, - 0xb2, 0xfe, 0x18, 0x39, 0xb1, 0x93, 0xd6, 0x9f, 0xac, 0x5c, 0xde, 0x4a, 0x0c, 0x9d, 0xb2, 0xc5, - 0xf3, 0xdd, 0xf8, 0x2b, 0x6e, 0x0e, 0x32, 0xab, 0xd0, 0xcd, 0x41, 0x99, 0xfc, 0xaf, 0xe5, 0x23, - 0xe8, 0xcc, 0x1d, 0x7e, 0xf7, 0x9b, 0x48, 0xea, 0x4d, 0xf4, 0x13, 0x57, 0x76, 0xc2, 0x6f, 0x35, - 0x37, 0x32, 0x51, 0xf4, 0x2a, 0x1e, 0xc9, 0x6f, 0x30, 0x47, 0x4a, 0x1d, 0x32, 0x9e, 0x77, 0x56, - 0x53, 0xb6, 0xa1, 0x14, 0x0f, 0x66, 0xa2, 0x03, 0xe7, 0x1c, 0x4a, 0x29, 0x8c, 0x4b, 0xb9, 0x79, - 0xce, 0xc9, 0xeb, 0xa9, 0x2f, 0x3d, 0x47, 0x30, 0x1d, 0xab, 0xe0, 0xeb, 0xb9, 0x16, 0x4a, 0xfa, - 0x72, 0x6c, 0x0b, 0xd6, 0x53, 0xa2, 0xa7, 0xd6, 0xf3, 0x8c, 0x7c, 0xe9, 0xab, 0xa8, 0x17, 0x6b, - 0x39, 0xcf, 0x73, 0x7b, 0x7d, 0x25, 0x8b, 0x4f, 0x98, 0x5e, 0x71, 0xb5, 0x76, 0x49, 0x3d, 0x2d, - 0x59, 0x70, 0x9e, 0x15, 0xf7, 0x2c, 0x4d, 0xcb, 0xe3, 0xb3, 0x0c, 0xa3, 0x5a, 0xb2, 0x74, 0x72, - 0xc9, 0x10, 0x93, 0xb1, 0x87, 0xce, 0x19, 0x9d, 0x33, 0xb7, 0xcf, 0x25, 0xb4, 0x48, 0xab, 0x94, - 0xeb, 0xb9, 0xad, 0xb8, 0x9c, 0xe6, 0x61, 0x58, 0xa3, 0x95, 0x14, 0x78, 0x6b, 0xe6, 0x93, 0xc2, - 0x31, 0x1a, 0x94, 0xdf, 0x25, 0xa2, 0x8b, 0xa6, 0x4b, 0x93, 0xf2, 0xf5, 0xd7, 0x29, 0x91, 0x91, - 0x15, 0xf3, 0xbf, 0xc8, 0x30, 0x84, 0x17, 0x95, 0x69, 0x4d, 0x83, 0x76, 0xb0, 0x74, 0xec, 0xe0, - 0x0b, 0x94, 0x8c, 0xec, 0xf1, 0x6a, 0x85, 0xed, 0x98, 0x5c, 0x3e, 0x43, 0x77, 0x53, 0x6b, 0x76, - 0x2e, 0xc7, 0x8e, 0xe9, 0xe4, 0x73, 0x5b, 0xfa, 0x23, 0x6d, 0xcd, 0x4e, 0xe5, 0x88, 0x27, 0x37, - 0x93, 0x8a, 0x5b, 0x5e, 0x1a, 0xf9, 0x0e, 0x7b, 0xc2, 0x74, 0x56, 0x7a, 0x79, 0xcd, 0x3c, 0x9c, - 0x9b, 0x7b, 0x3e, 0x43, 0x0a, 0xb6, 0x9c, 0xff, 0x39, 0xdc, 0x3a, 0x24, 0x9b, 0xcf, 0x6d, 0xe1, - 0x97, 0xda, 0x42, 0x97, 0x48, 0x0a, 0xaf, 0x8e, 0xe3, 0x5d, 0xb2, 0xc6, 0xe7, 0xf2, 0xde, 0xc2, - 0x37, 0x4b, 0xe9, 0x8c, 0xee, 0x4a, 0xb3, 0xe9, 0x94, 0xef, 0x3d, 0xd3, 0x7a, 0x3c, 0x93, 0xee, - 0x22, 0xe3, 0x77, 0x31, 0x61, 0xfb, 0xed, 0xd6, 0xb0, 0xaf, 0xe5, 0x62, 0x9c, 0x91, 0x09, 0x3e, - 0xb1, 0x18, 0xe7, 0xe7, 0x8a, 0xef, 0x70, 0x0c, 0x9a, 0xac, 0xba, 0x87, 0x9e, 0x96, 0xc8, 0x5d, - 0x1d, 0x82, 0xd2, 0xb9, 0xe5, 0xd5, 0x12, 0x93, 0x95, 0xf7, 0x7d, 0x9b, 0xe9, 0x3f, 0x5c, 0x7b, - 0xd7, 0x53, 0x72, 0x93, 0xb9, 0xfc, 0x4c, 0xe4, 0x6a, 0xb9, 0xc9, 0xcc, 0xe1, 0xad, 0x31, 0xd4, - 0xf3, 0x61, 0x2b, 0x86, 0x19, 0xa9, 0xb9, 0x15, 0xc3, 0xcc, 0x04, 0xda, 0x77, 0xd0, 0xea, 0x62, - 0xfb, 0x4d, 0xaa, 0x5b, 0x5d, 0xb4, 0x04, 0xcb, 0x09, 0xa3, 0x07, 0xf9, 0x10, 0x4d, 0x1e, 0x9d, - 0xed, 0x24, 0xb3, 0x26, 0x27, 0xdd, 0xb3, 0x64, 0x44, 0x65, 0xaf, 0x56, 0x36, 0xf6, 0x64, 0x02, - 0xed, 0xb9, 0x52, 0xba, 0x40, 0xd0, 0xbf, 0x23, 0xad, 0x26, 0xd8, 0xe0, 0x92, 0x69, 0x6d, 0xca, - 0x6f, 0xf3, 0x3b, 0xd2, 0x64, 0x62, 0x90, 0xa5, 0x72, 0x57, 0x27, 0xc9, 0x7e, 0x00, 0x63, 0x71, - 0x9e, 0xea, 0xfd, 0x05, 0x8d, 0x30, 0x91, 0xbc, 0x3a, 0x49, 0xf8, 0x9e, 0xbc, 0x56, 0xc1, 0xfa, - 0xcc, 0xc2, 0xce, 0x2a, 0xc0, 0xc7, 0xd2, 0x44, 0x63, 0xb4, 0x34, 0x95, 0xf5, 0xba, 0xc3, 0xca, - 0x3d, 0xa6, 0x27, 0xd7, 0x54, 0xf3, 0x22, 0x23, 0x3d, 0xae, 0x9a, 0x17, 0x59, 0xe9, 0x6d, 0xe3, - 0x6b, 0x87, 0x2f, 0xa4, 0x3d, 0x22, 0x66, 0x7a, 0xc5, 0x68, 0x56, 0x8a, 0xef, 0xd5, 0xbc, 0xe2, - 0x24, 0xeb, 0x2a, 0x14, 0x93, 0x99, 0x40, 0xd5, 0x61, 0x2e, 0x27, 0x65, 0xab, 0x3a, 0x21, 0xe6, - 0xa6, 0x10, 0xdd, 0x91, 0xc6, 0x75, 0x93, 0xef, 0xf5, 0xec, 0x46, 0xe9, 0xac, 0xf3, 0xad, 0xed, - 0xe3, 0x46, 0x52, 0x50, 0xfd, 0x98, 0x9d, 0x4a, 0x3a, 0xaa, 0xab, 0x65, 0x19, 0x79, 0x44, 0x5d, - 0x19, 0x75, 0x2a, 0x3b, 0x37, 0xf9, 0x1b, 0xe6, 0xf9, 0xb7, 0x43, 0x20, 0xf8, 0xae, 0x57, 0xd0, - 0xe4, 0xd7, 0x60, 0x36, 0x27, 0x66, 0x36, 0x79, 0x35, 0x61, 0xa6, 0xcd, 0x8e, 0xa9, 0xad, 0x26, - 0x48, 0x66, 0xb6, 0xee, 0x4d, 0xf4, 0x5d, 0x30, 0xe2, 0x4b, 0xa4, 0xee, 0x03, 0x1f, 0xb9, 0xd1, - 0x11, 0x4f, 0x4a, 0xad, 0xad, 0xb9, 0x99, 0x81, 0x29, 0x48, 0x15, 0x0f, 0x32, 0x06, 0x34, 0xe3, - 0x4a, 0x30, 0x83, 0xe1, 0x5c, 0x36, 0x43, 0xb6, 0x76, 0xb0, 0xb9, 0x90, 0x11, 0xfc, 0x43, 0xcd, - 0x85, 0xfc, 0xc0, 0x20, 0xb9, 0xcd, 0xdc, 0x91, 0x0a, 0x56, 0x36, 0xc7, 0xfc, 0x38, 0x20, 0xb9, - 0x1c, 0x1f, 0x30, 0x8e, 0xa9, 0xd0, 0x1e, 0x24, 0x07, 0xbd, 0xf3, 0xea, 0x61, 0xcb, 0xfd, 0xda, - 0xa4, 0x5a, 0xd0, 0xda, 0x97, 0x17, 0x44, 0x24, 0xb7, 0x7d, 0x2b, 0xf2, 0x7b, 0xca, 0x6e, 0xdf, - 0x59, 0x77, 0x6c, 0x75, 0x79, 0x96, 0x88, 0x2e, 0x63, 0x74, 0x54, 0x83, 0xcf, 0xe5, 0xc0, 0xc9, - 0x16, 0x3a, 0x23, 0x25, 0xa1, 0xda, 0x89, 0x36, 0x3b, 0x7c, 0x4d, 0x2e, 0x3f, 0x3e, 0x8f, 0x8d, - 0xf0, 0x1f, 0xe7, 0x99, 0xc7, 0x89, 0xb8, 0x21, 0x62, 0x1e, 0x1b, 0xd0, 0xf3, 0xcd, 0xe3, 0x04, - 0x43, 0x73, 0x1e, 0x27, 0x9b, 0x99, 0x34, 0x13, 0xe4, 0x8e, 0x6a, 0xb2, 0x99, 0x6a, 0x1e, 0x67, - 0x73, 0xcc, 0x0f, 0xd3, 0x92, 0xcb, 0x51, 0xcd, 0x63, 0x93, 0x63, 0x0e, 0xfa, 0x19, 0xe7, 0x71, - 0xb2, 0x12, 0x73, 0x1e, 0x9f, 0xab, 0x7d, 0x6a, 0x1e, 0x67, 0xb7, 0xef, 0xdc, 0xf3, 0x38, 0x11, - 0xd7, 0xc8, 0xe8, 0x68, 0xd6, 0x3c, 0x4e, 0xe2, 0xf3, 0x79, 0x9c, 0x84, 0x26, 0x2c, 0x33, 0x1d, - 0xe6, 0x71, 0x92, 0xf2, 0x33, 0xe4, 0x97, 0x88, 0xc9, 0x72, 0x96, 0x99, 0x9c, 0x1b, 0xce, 0x85, - 0x3c, 0x42, 0xdb, 0x60, 0x02, 0x7e, 0xb6, 0xd9, 0x3c, 0x9f, 0xc7, 0x14, 0xe7, 0xf3, 0xbe, 0x14, - 0x62, 0xb2, 0xb9, 0xa6, 0xe1, 0x2b, 0x3b, 0x24, 0x4d, 0x87, 0x06, 0xef, 0xb3, 0x79, 0xd3, 0xe8, - 0xc0, 0xb7, 0x53, 0x44, 0x9d, 0x0e, 0x7c, 0xd5, 0x39, 0x28, 0xc9, 0x37, 0x97, 0xa4, 0xf3, 0xfc, - 0xfe, 0x5c, 0xde, 0x8e, 0x24, 0xe9, 0x16, 0x12, 0x27, 0xab, 0x73, 0xb7, 0x54, 0x9d, 0xb0, 0x92, - 0x2d, 0x3d, 0xef, 0x3c, 0xdf, 0x94, 0xda, 0x43, 0x2a, 0x14, 0x57, 0xa2, 0xd3, 0xfa, 0x5c, 0xcf, - 0x2d, 0x21, 0xbb, 0x68, 0x08, 0x4e, 0xc3, 0x35, 0x23, 0x72, 0x5e, 0xcc, 0xaf, 0xae, 0x5c, 0x53, - 0x41, 0x85, 0x74, 0xae, 0x79, 0x11, 0x87, 0x14, 0xd7, 0x34, 0xf5, 0x27, 0x68, 0x3a, 0x13, 0x2f, - 0xbe, 0xbc, 0xc7, 0x7e, 0xfe, 0x39, 0x67, 0xca, 0x70, 0x98, 0x62, 0xb8, 0xe8, 0xa7, 0xf6, 0x91, - 0xb8, 0xfe, 0x93, 0xc0, 0x5c, 0xe1, 0x67, 0xd1, 0x93, 0x4f, 0xa0, 0x28, 0x96, 0xb7, 0x98, 0x41, - 0x16, 0x62, 0xee, 0xd0, 0x2d, 0x4a, 0x8b, 0xdd, 0x19, 0x5a, 0x70, 0x16, 0x4b, 0xdd, 0x59, 0x24, - 0x91, 0x6f, 0xd6, 0x62, 0xdb, 0xe1, 0x6e, 0xd0, 0x0e, 0x23, 0xda, 0x48, 0x9b, 0xa3, 0xcc, 0xc6, - 0x48, 0xb7, 0x0a, 0x13, 0x7d, 0x7f, 0x81, 0xac, 0xe3, 0xda, 0x66, 0x82, 0x3b, 0xd9, 0xeb, 0xb2, - 0xd9, 0xe0, 0xd2, 0xb3, 0xa6, 0x9e, 0x16, 0x99, 0x6d, 0xca, 0xab, 0x3b, 0xbf, 0x51, 0x4a, 0x44, - 0x67, 0xec, 0x5d, 0x9e, 0x88, 0xf8, 0x81, 0x9a, 0xdb, 0x0e, 0xbb, 0x49, 0x26, 0xf9, 0xd8, 0x89, - 0x7c, 0x0a, 0x23, 0x92, 0xb8, 0xbb, 0x40, 0x92, 0xd4, 0x28, 0x90, 0x65, 0x18, 0x37, 0x5e, 0x72, - 0xa9, 0xd3, 0x4d, 0xd6, 0xfb, 0xae, 0x0e, 0xe3, 0x3c, 0x6e, 0xbc, 0xd8, 0x52, 0x5c, 0xb2, 0xde, - 0x71, 0xe5, 0x72, 0xf9, 0x21, 0x8c, 0x0a, 0x91, 0x76, 0x94, 0x46, 0xbe, 0xb1, 0x6e, 0x46, 0xf3, - 0x8a, 0x6e, 0x37, 0xdc, 0x68, 0xc9, 0xf7, 0x1e, 0xbb, 0x87, 0x5d, 0x05, 0x93, 0x26, 0xd9, 0x5f, - 0x20, 0x5f, 0x61, 0x26, 0x66, 0x99, 0x1f, 0x9b, 0x46, 0xcf, 0xfc, 0xe0, 0x89, 0xeb, 0x1d, 0x76, - 0x61, 0x79, 0xcd, 0x64, 0x99, 0xa4, 0x93, 0x8e, 0x27, 0x5f, 0xc1, 0x5c, 0x35, 0x9f, 0x79, 0x57, - 0x26, 0x9d, 0xb7, 0x97, 0x2a, 0xcc, 0xa3, 0xeb, 0xcd, 0x79, 0xdb, 0xde, 0x91, 0xe9, 0x17, 0x3c, - 0x9a, 0xa3, 0x34, 0xf4, 0xd7, 0xfd, 0xa0, 0xd1, 0x9d, 0x63, 0xd9, 0x74, 0xe6, 0x4d, 0x90, 0x49, - 0x61, 0x7c, 0x01, 0x97, 0xaa, 0xb9, 0xac, 0xbb, 0xb1, 0xe8, 0xa6, 0x49, 0x5e, 0x46, 0x51, 0x9c, - 0xb3, 0xdd, 0x1d, 0x79, 0xae, 0xe3, 0x9a, 0xc6, 0xf6, 0xa1, 0x9d, 0x80, 0x3e, 0xa6, 0x01, 0xba, - 0x8c, 0x77, 0x73, 0x96, 0x36, 0xd1, 0x65, 0xcf, 0xd7, 0xe1, 0x42, 0x35, 0xc5, 0x2a, 0x8f, 0xa4, - 0xdb, 0xe5, 0xd1, 0x14, 0xf6, 0xf4, 0x8c, 0xed, 0xea, 0xe2, 0x62, 0x34, 0xba, 0x4a, 0xa3, 0xbd, - 0xf5, 0x2e, 0x52, 0x92, 0x6f, 0x1a, 0x24, 0xe2, 0xfe, 0x3d, 0x46, 0x59, 0xd5, 0x28, 0xd3, 0x18, - 0xb9, 0x1f, 0xef, 0xa7, 0xf2, 0x22, 0xa5, 0x6b, 0xb5, 0x79, 0x1c, 0xde, 0xc2, 0xb5, 0x50, 0xb8, - 0x4d, 0x6b, 0x26, 0x48, 0x0e, 0x89, 0x4d, 0x75, 0x9a, 0x07, 0x75, 0x48, 0x2a, 0xfc, 0xf8, 0xc7, - 0xa7, 0x87, 0x80, 0x5d, 0x4d, 0xb9, 0xd3, 0x77, 0x64, 0xc1, 0x4d, 0xa8, 0x1b, 0x7e, 0xfd, 0x89, - 0x6e, 0x42, 0xd5, 0x72, 0xf5, 0xcf, 0x99, 0x99, 0xf4, 0xc5, 0x8a, 0x8f, 0xe9, 0xf4, 0x75, 0xaf, - 0x31, 0x3d, 0x5b, 0xbf, 0x6e, 0x42, 0x15, 0x70, 0x61, 0x41, 0x7a, 0x4b, 0xda, 0x16, 0xb1, 0x42, - 0x93, 0x73, 0xae, 0x68, 0x94, 0x59, 0x11, 0x89, 0x4c, 0xb3, 0xa2, 0xde, 0xd0, 0xfc, 0x8b, 0x00, - 0x62, 0xd3, 0x56, 0x13, 0x3d, 0xb1, 0x8f, 0x7d, 0x4e, 0x13, 0x3b, 0xe7, 0xa6, 0x8b, 0xba, 0x3b, - 0x7f, 0x4d, 0x09, 0x97, 0x21, 0x43, 0xf0, 0x2a, 0x22, 0x72, 0xba, 0x2c, 0x16, 0xa5, 0xee, 0xc9, - 0x74, 0xb7, 0x40, 0xb6, 0xe0, 0xe2, 0x2a, 0x8d, 0xc4, 0x1a, 0x67, 0xd3, 0x30, 0x0a, 0xdc, 0x7a, - 0xd4, 0xf1, 0x56, 0x51, 0x9e, 0x4d, 0x32, 0x68, 0xf6, 0xdf, 0x66, 0xfc, 0xaa, 0xd9, 0xfc, 0x3a, - 0xd2, 0x75, 0xf0, 0xaf, 0x15, 0x57, 0x15, 0xe7, 0x69, 0x62, 0xfe, 0x14, 0x1f, 0xe2, 0xee, 0x3b, - 0xf9, 0xa4, 0xc5, 0x38, 0xfa, 0x8a, 0x38, 0x6d, 0xdd, 0x86, 0x41, 0x4e, 0x94, 0xbb, 0xa1, 0x8e, - 0xe9, 0x34, 0xe4, 0x1e, 0x8c, 0x28, 0xff, 0x1b, 0x62, 0x14, 0xe5, 0xb6, 0xeb, 0x1e, 0x8c, 0xf0, - 0xa3, 0xd5, 0xd9, 0x49, 0x3e, 0x84, 0x11, 0xe5, 0xb0, 0x73, 0xee, 0x9d, 0xfe, 0x13, 0x18, 0xd7, - 0x5d, 0x77, 0xce, 0x2f, 0xc8, 0x1f, 0xe2, 0xdd, 0xaf, 0xbc, 0x62, 0xc9, 0xa7, 0x9f, 0x49, 0x04, - 0xa5, 0x11, 0x22, 0xe5, 0x0b, 0xa4, 0x04, 0xe6, 0x36, 0xff, 0x42, 0x8a, 0x9a, 0x7c, 0x28, 0x5f, - 0x53, 0x29, 0xe2, 0x34, 0x52, 0x07, 0x99, 0x4d, 0x70, 0x31, 0xbf, 0x08, 0xb1, 0x5a, 0x60, 0xbb, - 0x36, 0xfb, 0x2c, 0x77, 0xd4, 0xdd, 0x45, 0x97, 0xc7, 0x65, 0x1b, 0xb5, 0xb4, 0x54, 0x62, 0xbd, - 0x7c, 0x46, 0x57, 0xf3, 0x73, 0xf1, 0xe1, 0x60, 0x3c, 0xc0, 0x53, 0x60, 0xaa, 0x34, 0xb7, 0x7b, - 0x1d, 0x72, 0xfb, 0xc5, 0xc7, 0xde, 0x34, 0xbb, 0x0e, 0x64, 0x9d, 0x4e, 0xd1, 0xe2, 0x8d, 0xe8, - 0x4b, 0x61, 0xb7, 0x2e, 0x3d, 0x20, 0xcf, 0xde, 0xd9, 0xfc, 0x96, 0x5d, 0xce, 0xb8, 0x15, 0xef, - 0x3a, 0x16, 0x79, 0xec, 0x7e, 0x0d, 0xb5, 0xc3, 0xcc, 0xa8, 0x64, 0xf9, 0xcc, 0x6e, 0x6a, 0x8e, - 0x15, 0x99, 0x94, 0x6a, 0xd3, 0x7b, 0x82, 0xcf, 0xd4, 0xb2, 0x53, 0x0f, 0xbe, 0xd6, 0x85, 0x8b, - 0x94, 0xc4, 0xeb, 0x5d, 0xf1, 0xd4, 0x1d, 0xeb, 0x65, 0xbe, 0xc3, 0x66, 0xd7, 0xd7, 0x25, 0x95, - 0x62, 0xc6, 0xb5, 0xb7, 0x72, 0x2f, 0xcd, 0x66, 0x68, 0xba, 0x97, 0x76, 0xec, 0x43, 0x9e, 0xf8, - 0x3f, 0x83, 0x72, 0xec, 0x3d, 0x72, 0xbe, 0x41, 0xc8, 0xf7, 0x6a, 0x24, 0x29, 0x49, 0x85, 0xa4, - 0x53, 0x3e, 0xa0, 0xb9, 0xeb, 0x79, 0x12, 0x0e, 0x35, 0xb7, 0x24, 0xe1, 0x15, 0x97, 0x48, 0xc2, - 0x99, 0x97, 0xce, 0xb3, 0x83, 0x1d, 0x56, 0xbc, 0xdb, 0x7b, 0x29, 0x8c, 0xd2, 0xa3, 0x7d, 0x7e, - 0x46, 0xca, 0xb9, 0x23, 0xc1, 0xc8, 0xea, 0x30, 0xbc, 0xdd, 0xaf, 0x1e, 0x4b, 0x39, 0xe3, 0x7a, - 0xfe, 0x01, 0x75, 0xe2, 0xb7, 0x6a, 0x89, 0x20, 0x86, 0xfa, 0xfb, 0xe0, 0x74, 0x51, 0xf2, 0xa1, - 0x55, 0x16, 0x86, 0xf2, 0xa8, 0x2a, 0xc9, 0x2a, 0x18, 0x9c, 0x1d, 0x45, 0xfc, 0xc0, 0x8d, 0x9e, - 0x2f, 0xd9, 0x1b, 0xb1, 0x59, 0x41, 0x2f, 0x90, 0xbc, 0x41, 0x16, 0xda, 0x1b, 0xe4, 0x4b, 0x5c, - 0x4a, 0x04, 0xfb, 0x45, 0xdf, 0x8f, 0xc2, 0x28, 0x70, 0x5a, 0xd5, 0x7a, 0xe0, 0xb6, 0xa2, 0xdc, - 0x4e, 0xc7, 0x0e, 0xe0, 0x59, 0x64, 0x9a, 0x3f, 0xaa, 0x08, 0x72, 0x9f, 0x15, 0x7d, 0x47, 0xbd, - 0xc9, 0xc9, 0x2a, 0xec, 0x70, 0x72, 0xa9, 0xca, 0xb0, 0xf6, 0x2f, 0x93, 0x69, 0x0d, 0x66, 0x73, - 0x62, 0x16, 0xa9, 0xdb, 0xdb, 0xce, 0x31, 0x8d, 0xe6, 0x3a, 0x57, 0x4c, 0xbe, 0x82, 0x99, 0xcc, - 0xa0, 0x46, 0xca, 0x02, 0xdd, 0x29, 0xe4, 0x51, 0x37, 0xe6, 0x4f, 0xa0, 0xc4, 0x5f, 0x83, 0xa0, - 0xd3, 0xb3, 0x11, 0xdf, 0x26, 0x7e, 0x23, 0x94, 0x83, 0x90, 0x5c, 0xaf, 0xf3, 0xf1, 0xd4, 0x83, - 0xf7, 0x69, 0x0c, 0x6c, 0x92, 0xc8, 0xf1, 0xae, 0x3e, 0xbc, 0xac, 0xc2, 0x4e, 0x0f, 0x91, 0x76, - 0x60, 0x66, 0x9f, 0x06, 0xee, 0xe3, 0xe7, 0x49, 0x86, 0x52, 0x32, 0x99, 0xa5, 0x9d, 0x38, 0x7e, - 0x0e, 0xb3, 0x4b, 0xfe, 0x71, 0x4b, 0x3c, 0xf9, 0x33, 0x78, 0xaa, 0xab, 0xf8, 0xec, 0xf2, 0xee, - 0x8e, 0x50, 0x73, 0xf9, 0xd9, 0xf8, 0x95, 0xff, 0x5b, 0xd7, 0x84, 0xfd, 0xea, 0xe1, 0x9a, 0x49, - 0xbf, 0x8b, 0x93, 0x30, 0x2b, 0x3d, 0xbf, 0x3e, 0x09, 0x3b, 0xa4, 0xef, 0xcf, 0x79, 0x40, 0x36, - 0x9b, 0x93, 0x91, 0xbf, 0x03, 0xd7, 0x33, 0xb4, 0x76, 0x4b, 0xee, 0x2d, 0x66, 0xee, 0xf2, 0x84, - 0xc7, 0x75, 0x66, 0x62, 0xf3, 0xcc, 0x76, 0x6a, 0x91, 0x1d, 0x9a, 0xcd, 0x0e, 0x2a, 0x16, 0xd1, - 0x43, 0x3b, 0x30, 0x4c, 0x34, 0xe2, 0x8f, 0xeb, 0xb4, 0x9d, 0x56, 0xeb, 0x14, 0x31, 0x2a, 0xb5, - 0x1f, 0xc0, 0x58, 0x55, 0xaf, 0x3c, 0xa3, 0x92, 0xdc, 0x49, 0xa1, 0x9e, 0x10, 0x75, 0x6f, 0x7b, - 0x07, 0x47, 0x52, 0xb5, 0xf1, 0x9c, 0xa9, 0x17, 0xb9, 0xae, 0x33, 0x46, 0xf2, 0x38, 0xb5, 0x0b, - 0x64, 0xe5, 0x76, 0x54, 0xae, 0x33, 0xd9, 0xf9, 0xe6, 0x6a, 0x3c, 0xdd, 0x4d, 0x32, 0x75, 0x27, - 0xb1, 0xba, 0xe7, 0xc8, 0x55, 0x0e, 0xf5, 0x1d, 0x73, 0x7f, 0x72, 0x3f, 0x9f, 0x38, 0x5d, 0x9e, - 0xee, 0xe7, 0x93, 0x4a, 0xc2, 0xa7, 0xfb, 0xf9, 0x64, 0x64, 0xd8, 0x5b, 0x41, 0x5e, 0x71, 0x9e, - 0xa0, 0x0e, 0xc6, 0x08, 0xc5, 0x26, 0x23, 0x1d, 0xd1, 0x43, 0x3d, 0x40, 0x08, 0xcf, 0x2e, 0xd4, - 0xc1, 0xd6, 0x9a, 0x0c, 0x0c, 0x92, 0x48, 0x47, 0x74, 0x1f, 0x8a, 0x3c, 0xd1, 0x42, 0x1c, 0x53, - 0x31, 0xf6, 0x1b, 0x4c, 0xe7, 0x7f, 0xe8, 0x30, 0xa8, 0xc5, 0x64, 0x34, 0x3a, 0x65, 0x32, 0xcb, - 0x09, 0x53, 0xd7, 0x61, 0xaa, 0x42, 0x1c, 0x73, 0x4e, 0x19, 0xa6, 0x52, 0x61, 0xe8, 0xe6, 0x2e, - 0x65, 0x94, 0x28, 0x95, 0x72, 0x4c, 0x8f, 0x50, 0xa7, 0xba, 0x94, 0x11, 0xb6, 0x6e, 0xee, 0x72, - 0x66, 0x99, 0x60, 0x14, 0xf1, 0x34, 0xd1, 0xd9, 0x89, 0xb2, 0xe3, 0x57, 0x60, 0x1d, 0x70, 0x64, - 0x35, 0xb7, 0xce, 0x82, 0x2a, 0x6a, 0xa5, 0x2a, 0x4b, 0x52, 0x46, 0x76, 0xee, 0xd7, 0x33, 0x1e, - 0x6a, 0x18, 0x18, 0xb1, 0x37, 0x58, 0xe7, 0x54, 0xe1, 0xe4, 0x91, 0xcc, 0x5a, 0x93, 0x53, 0x53, - 0x37, 0x06, 0xb9, 0x23, 0xf8, 0x48, 0xe6, 0xa9, 0x79, 0xd9, 0x8c, 0x0f, 0x60, 0x3e, 0xf1, 0xfa, - 0xc3, 0x64, 0x7c, 0x2b, 0xfb, 0x89, 0x48, 0xa6, 0x78, 0xf2, 0x75, 0xf6, 0x6b, 0xe9, 0x57, 0x22, - 0x89, 0x71, 0x3f, 0xef, 0x9a, 0xb7, 0x09, 0x13, 0xb8, 0xcc, 0xc8, 0x3c, 0xf3, 0x71, 0x7c, 0x1a, - 0x13, 0x9c, 0x0c, 0x94, 0x94, 0x2c, 0x55, 0x2e, 0xb3, 0x63, 0xe2, 0x45, 0x31, 0xcf, 0x5a, 0x3f, - 0x67, 0x3e, 0x33, 0x46, 0x60, 0xd6, 0x2e, 0x26, 0x92, 0xe1, 0x93, 0x1f, 0xc2, 0x64, 0xfc, 0xd0, - 0x98, 0xb3, 0xc8, 0x40, 0xeb, 0x60, 0x28, 0x9b, 0x8c, 0x5f, 0x1b, 0x9f, 0x9f, 0x7c, 0x4d, 0x6e, - 0x45, 0x31, 0xf9, 0x95, 0xd4, 0x5b, 0x19, 0xa3, 0x0f, 0x67, 0xd9, 0x91, 0x34, 0xd9, 0x9e, 0x77, - 0x74, 0xea, 0xf8, 0xb9, 0x65, 0x87, 0x5e, 0xd4, 0x3f, 0xb7, 0x8e, 0xe1, 0x21, 0x95, 0xfa, 0x9b, - 0xc3, 0x67, 0x13, 0x6e, 0x60, 0xb8, 0x96, 0x1d, 0x1e, 0xa0, 0x2f, 0x1b, 0x2b, 0xbf, 0xed, 0xc9, - 0x20, 0x2f, 0x4d, 0xb8, 0xde, 0x35, 0xf6, 0x24, 0xb9, 0x63, 0xb8, 0xb8, 0x74, 0x8f, 0x52, 0xd9, - 0xe1, 0xe4, 0x31, 0x9d, 0x15, 0xc2, 0x51, 0xed, 0xb3, 0x1d, 0xa2, 0x49, 0xaa, 0x7d, 0xb6, 0x63, - 0x0c, 0xc8, 0xcf, 0x31, 0x15, 0x94, 0xd8, 0xa3, 0x30, 0x04, 0x13, 0xf5, 0x78, 0x50, 0xea, 0x8e, - 0xd7, 0x3e, 0xd7, 0xcd, 0x4b, 0xd1, 0x14, 0x21, 0x9e, 0x69, 0xae, 0x8a, 0x93, 0x58, 0x1e, 0xf3, - 0xee, 0x4c, 0x3a, 0xb8, 0x56, 0x5f, 0xe5, 0x13, 0xf0, 0xdc, 0x2d, 0xcf, 0x81, 0x2f, 0x2e, 0xff, - 0xfc, 0x3f, 0x5c, 0x2d, 0xfc, 0xfc, 0x17, 0x57, 0x0b, 0xff, 0xfa, 0x17, 0x57, 0x0b, 0xff, 0xfe, - 0x17, 0x57, 0x0b, 0x5f, 0x2e, 0x9c, 0x2d, 0x34, 0x72, 0xbd, 0xe9, 0x52, 0x2f, 0xba, 0xc3, 0xd9, - 0x0d, 0xe2, 0x7f, 0x6f, 0xfd, 0x8f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x09, 0x89, 0xf8, 0xdf, 0xe6, - 0xea, 0x00, 0x00, + // 15123 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0xbd, 0x5b, 0x6c, 0x5c, 0xc9, + 0x76, 0x18, 0xca, 0xe6, 0x9b, 0x8b, 0x0f, 0xb5, 0x8a, 0xa4, 0xd8, 0xa2, 0x28, 0xb5, 0xb4, 0x35, + 0x9a, 0xd1, 0xe8, 0xcc, 0xd1, 0x83, 0xf3, 0x38, 0xf3, 0x9e, 0x69, 0x3e, 0x44, 0x52, 0xe2, 0x6b, + 0x76, 0x93, 0xd4, 0xbc, 0x7c, 0xfa, 0x6c, 0x76, 0x97, 0xc8, 0x6d, 0x35, 0xf7, 0xee, 0xb3, 0xf7, + 0x6e, 0x69, 0x74, 0x7c, 0xed, 0x0b, 0x1f, 0xdf, 0x8b, 0xeb, 0x8f, 0x7b, 0x7d, 0x6d, 0x20, 0x0e, + 0x1c, 0x38, 0x80, 0x11, 0x20, 0x01, 0x82, 0x00, 0x0e, 0xf2, 0x63, 0xf8, 0x2b, 0x01, 0xf2, 0x95, + 0x13, 0x03, 0x46, 0x12, 0xd8, 0xf9, 0xc9, 0x07, 0x9d, 0x1c, 0x20, 0x3f, 0x44, 0xf2, 0x61, 0x04, + 0x09, 0x90, 0x03, 0x18, 0x08, 0x6a, 0xd5, 0x63, 0x57, 0xed, 0x47, 0x37, 0xa9, 0xd1, 0x1c, 0xe7, + 0x47, 0x62, 0xaf, 0x5a, 0x6b, 0x55, 0xd5, 0xaa, 0xda, 0x55, 0xab, 0x56, 0xad, 0x5a, 0x0b, 0x6e, + 0x47, 0xb4, 0x49, 0x5b, 0x7e, 0x10, 0xdd, 0x69, 0xd2, 0x03, 0xa7, 0xfe, 0xfc, 0x4e, 0xbd, 0xe9, + 0x52, 0x2f, 0xba, 0xd3, 0x0a, 0xfc, 0xc8, 0xbf, 0xe3, 0xb4, 0xa3, 0xc3, 0x90, 0x06, 0x4f, 0xdd, + 0x3a, 0xbd, 0x8d, 0x10, 0x32, 0x80, 0xff, 0xcd, 0x4e, 0x1d, 0xf8, 0x07, 0x3e, 0xc7, 0x61, 0x7f, + 0xf1, 0xc2, 0xd9, 0x4b, 0x07, 0xbe, 0x7f, 0xd0, 0xa4, 0x9c, 0x78, 0xbf, 0xfd, 0xf8, 0x0e, 0x3d, + 0x6a, 0x45, 0xcf, 0x45, 0x61, 0x39, 0x59, 0x18, 0xb9, 0x47, 0x34, 0x8c, 0x9c, 0xa3, 0x96, 0x40, + 0x78, 0x5d, 0x35, 0xc5, 0x89, 0x22, 0x56, 0x12, 0xb9, 0xbe, 0x77, 0xe7, 0xe9, 0x3d, 0xfd, 0xa7, + 0x40, 0xbd, 0xd9, 0xb1, 0xd5, 0x75, 0x1a, 0x44, 0xe1, 0xa9, 0x30, 0xe9, 0x53, 0xea, 0x45, 0xa9, + 0xea, 0x05, 0x66, 0xf4, 0xbc, 0x45, 0x43, 0x8e, 0x22, 0xff, 0x13, 0xa8, 0xd7, 0xb2, 0x51, 0xf1, + 0x5f, 0x81, 0xf2, 0xfd, 0x6c, 0x94, 0x67, 0x74, 0x9f, 0xc9, 0xd4, 0x53, 0x7f, 0x74, 0x41, 0x0f, + 0x9c, 0x56, 0x8b, 0x06, 0xf1, 0x1f, 0x02, 0xfd, 0xa2, 0x42, 0x3f, 0x7a, 0xec, 0x30, 0x11, 0x1d, + 0x3d, 0x76, 0x52, 0xdd, 0x68, 0x87, 0xce, 0x01, 0x15, 0xcd, 0x7f, 0x7a, 0x4f, 0xff, 0xc9, 0x51, + 0xad, 0x3f, 0x2a, 0xc0, 0xc0, 0x23, 0x27, 0xaa, 0x1f, 0x92, 0x4f, 0x60, 0xe0, 0xa1, 0xeb, 0x35, + 0xc2, 0x52, 0xe1, 0x6a, 0xdf, 0xcd, 0xd1, 0xf9, 0xe2, 0x6d, 0xde, 0x15, 0x2c, 0x64, 0x05, 0x0b, + 0x33, 0x3f, 0x3b, 0x2e, 0xf7, 0x9c, 0x1c, 0x97, 0xcf, 0x3d, 0x61, 0x68, 0x6f, 0xf8, 0x47, 0x6e, + 0x84, 0x63, 0x6b, 0x73, 0x3a, 0xb2, 0x0b, 0x93, 0x95, 0x66, 0xd3, 0x7f, 0xb6, 0xed, 0x04, 0x91, + 0xeb, 0x34, 0xab, 0xed, 0x7a, 0x9d, 0x86, 0x61, 0xa9, 0xf7, 0x6a, 0xe1, 0xe6, 0xf0, 0xc2, 0xf5, + 0x93, 0xe3, 0x72, 0xd9, 0x61, 0xc5, 0xb5, 0x16, 0x2f, 0xaf, 0x85, 0x1c, 0x41, 0x63, 0x94, 0x45, + 0x6f, 0xfd, 0xd9, 0x20, 0x14, 0x57, 0xfd, 0x30, 0x5a, 0x64, 0x23, 0x6a, 0xd3, 0x1f, 0xb7, 0x69, + 0x18, 0x91, 0xeb, 0x30, 0xc8, 0x60, 0x6b, 0x4b, 0xa5, 0xc2, 0xd5, 0xc2, 0xcd, 0x91, 0x85, 0xd1, + 0x93, 0xe3, 0xf2, 0xd0, 0xa1, 0x1f, 0x46, 0x35, 0xb7, 0x61, 0x8b, 0x22, 0xf2, 0x3a, 0x0c, 0x6f, + 0xfa, 0x0d, 0xba, 0xe9, 0x1c, 0x51, 0x6c, 0xc5, 0xc8, 0xc2, 0xf8, 0xc9, 0x71, 0x79, 0xc4, 0xf3, + 0x1b, 0xb4, 0xe6, 0x39, 0x47, 0xd4, 0x56, 0xc5, 0x64, 0x0f, 0xfa, 0x6d, 0xbf, 0x49, 0x4b, 0x7d, + 0x88, 0xb6, 0x70, 0x72, 0x5c, 0xee, 0x0f, 0xfc, 0x26, 0xfd, 0xc5, 0x71, 0xf9, 0x9d, 0x03, 0x37, + 0x3a, 0x6c, 0xef, 0xdf, 0xae, 0xfb, 0x47, 0x77, 0x0e, 0x02, 0xe7, 0xa9, 0xcb, 0x27, 0xa1, 0xd3, + 0xbc, 0x13, 0x4f, 0xd5, 0x96, 0x2b, 0xc6, 0xbd, 0xfa, 0x3c, 0x8c, 0xe8, 0x11, 0xe3, 0x64, 0x23, + 0x3f, 0xf2, 0x08, 0xa6, 0x2a, 0x8d, 0x86, 0xcb, 0x29, 0xb6, 0x03, 0xd7, 0xab, 0xbb, 0x2d, 0xa7, + 0x19, 0x96, 0xfa, 0xaf, 0xf6, 0xdd, 0x1c, 0x11, 0x42, 0x51, 0xe5, 0xb5, 0x96, 0x42, 0xd0, 0x84, + 0x92, 0xc9, 0x80, 0xbc, 0x09, 0xc3, 0x4b, 0x9b, 0x55, 0xd6, 0xf6, 0xb0, 0x34, 0x80, 0xcc, 0x66, + 0x4e, 0x8e, 0xcb, 0x93, 0x0d, 0x2f, 0xc4, 0xae, 0xe9, 0x0c, 0x14, 0x22, 0x79, 0x07, 0xc6, 0xb6, + 0xdb, 0xfb, 0x4d, 0xb7, 0xbe, 0xb3, 0x5e, 0x7d, 0x48, 0x9f, 0x97, 0x06, 0xaf, 0x16, 0x6e, 0x8e, + 0x2d, 0x90, 0x93, 0xe3, 0xf2, 0x44, 0x0b, 0xe1, 0xb5, 0xa8, 0x19, 0xd6, 0x9e, 0xd0, 0xe7, 0xb6, + 0x81, 0x17, 0xd3, 0x55, 0xab, 0xab, 0x8c, 0x6e, 0x28, 0x45, 0x17, 0x86, 0x87, 0x3a, 0x1d, 0xc7, + 0x23, 0x77, 0x00, 0x6c, 0x7a, 0xe4, 0x47, 0xb4, 0xd2, 0x68, 0x04, 0xa5, 0x61, 0x94, 0xed, 0xb9, + 0x93, 0xe3, 0xf2, 0x68, 0x80, 0xd0, 0x9a, 0xd3, 0x68, 0x04, 0xb6, 0x86, 0x42, 0x16, 0x61, 0xd8, + 0xf6, 0xb9, 0x80, 0x4b, 0x23, 0x57, 0x0b, 0x37, 0x47, 0xe7, 0xcf, 0x89, 0x69, 0x28, 0xc1, 0x0b, + 0x17, 0x4e, 0x8e, 0xcb, 0x24, 0x10, 0xbf, 0xf4, 0x5e, 0x4a, 0x0c, 0x52, 0x86, 0xa1, 0x4d, 0x7f, + 0xd1, 0xa9, 0x1f, 0xd2, 0x12, 0xe0, 0xdc, 0x1b, 0x38, 0x39, 0x2e, 0x17, 0xbe, 0x6f, 0x4b, 0x28, + 0x79, 0x0a, 0xa3, 0xf1, 0x40, 0x85, 0xa5, 0x51, 0x14, 0xdf, 0xce, 0xc9, 0x71, 0xf9, 0x42, 0x88, + 0xe0, 0x1a, 0x1b, 0x7a, 0x4d, 0x82, 0xdf, 0x62, 0x16, 0xe8, 0x15, 0x91, 0xaf, 0x61, 0x3a, 0xfe, + 0x59, 0x09, 0x43, 0x1a, 0x30, 0x1e, 0x6b, 0x4b, 0xa5, 0x71, 0x94, 0xcc, 0xab, 0x27, 0xc7, 0x65, + 0x4b, 0x6b, 0x41, 0xcd, 0x91, 0x28, 0x35, 0xb7, 0xa1, 0xf5, 0x34, 0x9b, 0xc9, 0x83, 0xfe, 0xe1, + 0xb1, 0xe2, 0xb8, 0x7d, 0x79, 0xd7, 0x0b, 0x23, 0x67, 0xbf, 0x49, 0x33, 0x91, 0xac, 0xbf, 0x29, + 0x00, 0xd9, 0x6a, 0x51, 0xaf, 0x5a, 0x5d, 0x65, 0xdf, 0x93, 0xfc, 0x9c, 0xde, 0x80, 0x11, 0x3e, + 0x70, 0x6c, 0x74, 0x7b, 0x71, 0x74, 0x27, 0x4e, 0x8e, 0xcb, 0x20, 0x46, 0x97, 0x8d, 0x6c, 0x8c, + 0x40, 0x6e, 0x40, 0xdf, 0xce, 0xce, 0x3a, 0x7e, 0x2b, 0x7d, 0x0b, 0x93, 0x27, 0xc7, 0xe5, 0xbe, + 0x28, 0x6a, 0xfe, 0xe2, 0xb8, 0x3c, 0xbc, 0xd4, 0x0e, 0x50, 0x2c, 0x36, 0x2b, 0x27, 0x37, 0x60, + 0x68, 0xb1, 0xd9, 0x0e, 0x23, 0x1a, 0x94, 0xfa, 0xe3, 0x8f, 0xb4, 0xce, 0x41, 0xb6, 0x2c, 0x23, + 0xdf, 0x83, 0xfe, 0xdd, 0x90, 0x06, 0xa5, 0x01, 0x1c, 0xef, 0x71, 0x31, 0xde, 0x0c, 0xb4, 0x37, + 0xbf, 0x30, 0xcc, 0xbe, 0xc4, 0x76, 0x48, 0x03, 0x1b, 0x91, 0xc8, 0x6d, 0x18, 0xe0, 0x83, 0x36, + 0x88, 0x8b, 0xd4, 0xb8, 0x9a, 0x1d, 0x4d, 0xba, 0xf7, 0xce, 0xc2, 0xc8, 0xc9, 0x71, 0x79, 0x00, + 0x07, 0xcf, 0xe6, 0x68, 0x0f, 0xfa, 0x87, 0x0b, 0xc5, 0x5e, 0x7b, 0x98, 0xd1, 0xb2, 0xcf, 0xc2, + 0xfa, 0x1e, 0x8c, 0x6a, 0xdd, 0x27, 0x73, 0xd0, 0xcf, 0xfe, 0xc7, 0x45, 0x64, 0x8c, 0x57, 0xc6, + 0x36, 0x0e, 0x1b, 0xa1, 0xd6, 0x1f, 0x4e, 0x41, 0x91, 0x51, 0x1a, 0x2b, 0xcf, 0x6d, 0x5d, 0x54, + 0x9c, 0xae, 0x68, 0x8a, 0xaa, 0x54, 0xd0, 0x85, 0x75, 0x13, 0x54, 0xed, 0x62, 0x11, 0x1a, 0x3b, + 0x39, 0x2e, 0x0f, 0xb7, 0x05, 0x2c, 0x6e, 0x1b, 0xa9, 0xc2, 0xd0, 0xf2, 0x37, 0x2d, 0x37, 0xa0, + 0x21, 0x8a, 0x76, 0x74, 0x7e, 0xf6, 0x36, 0xdf, 0x2e, 0x6f, 0xcb, 0xed, 0xf2, 0xf6, 0x8e, 0xdc, + 0x2e, 0x17, 0x2e, 0x8b, 0xc5, 0xf8, 0x3c, 0xe5, 0x24, 0xf1, 0xfc, 0xf8, 0xdd, 0xbf, 0x2a, 0x17, + 0x6c, 0xc9, 0x89, 0xbc, 0x01, 0x83, 0xf7, 0xfd, 0xe0, 0xc8, 0x89, 0xc4, 0x18, 0x4c, 0x9d, 0x1c, + 0x97, 0x8b, 0x8f, 0x11, 0xa2, 0x4d, 0x29, 0x81, 0x43, 0xee, 0xc3, 0x84, 0xed, 0xb7, 0x23, 0xba, + 0xe3, 0xcb, 0x91, 0x1b, 0x40, 0xaa, 0x2b, 0x27, 0xc7, 0xe5, 0xd9, 0x80, 0x95, 0xd4, 0x22, 0xbf, + 0x26, 0x86, 0x50, 0xa3, 0x4f, 0x50, 0x91, 0x65, 0x98, 0xa8, 0xe0, 0xea, 0x2d, 0xa4, 0xc6, 0xc7, + 0x6b, 0x64, 0xe1, 0xf2, 0xc9, 0x71, 0xf9, 0xa2, 0x83, 0x25, 0xb5, 0x40, 0x14, 0xe9, 0x6c, 0x4c, + 0x22, 0xb2, 0x09, 0xe7, 0x1f, 0xb6, 0xf7, 0x69, 0xe0, 0xd1, 0x88, 0x86, 0xb2, 0x45, 0x43, 0xd8, + 0xa2, 0xab, 0x27, 0xc7, 0xe5, 0xb9, 0x27, 0xaa, 0x30, 0xa3, 0x4d, 0x69, 0x52, 0x42, 0xe1, 0x9c, + 0x68, 0xe8, 0x92, 0x13, 0x39, 0xfb, 0x4e, 0x48, 0x71, 0x51, 0x1a, 0x9d, 0xbf, 0xc0, 0x45, 0x7c, + 0x3b, 0x51, 0xba, 0x70, 0x5d, 0x48, 0xf9, 0x92, 0xea, 0x7b, 0x43, 0x14, 0x69, 0x15, 0x25, 0x79, + 0xb2, 0xb5, 0x59, 0xed, 0x3b, 0x23, 0xd8, 0x5a, 0x5c, 0x9b, 0xd5, 0xbe, 0xa3, 0xaf, 0x5a, 0x6a, + 0x07, 0x5a, 0x87, 0x81, 0x5d, 0xb6, 0x3b, 0xe3, 0x9a, 0x35, 0x31, 0x7f, 0x4d, 0xb4, 0x28, 0x39, + 0xff, 0x6e, 0xb3, 0x1f, 0x88, 0x88, 0x5f, 0xde, 0x39, 0xdc, 0xd1, 0xf5, 0xbd, 0x18, 0xcb, 0xc8, + 0x67, 0x00, 0xa2, 0x55, 0x95, 0x56, 0xab, 0x34, 0x8a, 0x9d, 0x3c, 0x6f, 0x76, 0xb2, 0xd2, 0x6a, + 0x2d, 0x5c, 0x11, 0xfd, 0xbb, 0xa0, 0xfa, 0xe7, 0xb4, 0x5a, 0x1a, 0x37, 0x8d, 0x09, 0xf9, 0x04, + 0xc6, 0x70, 0x49, 0x93, 0x23, 0x3a, 0x86, 0x23, 0x7a, 0xe9, 0xe4, 0xb8, 0x3c, 0x83, 0xab, 0x55, + 0xc6, 0x78, 0x1a, 0x04, 0xe4, 0x37, 0x60, 0x5a, 0xb0, 0x7b, 0xe4, 0x7a, 0x0d, 0xff, 0x59, 0xb8, + 0x44, 0xc3, 0x27, 0x91, 0xdf, 0xc2, 0xe5, 0x6f, 0x74, 0x7e, 0xce, 0x6c, 0x9e, 0x89, 0xb3, 0x70, + 0x4b, 0xb4, 0xd4, 0x52, 0x2d, 0x7d, 0xc6, 0x11, 0x6a, 0x0d, 0x8e, 0xa1, 0x2f, 0x90, 0x99, 0x2c, + 0xc8, 0x1a, 0x9c, 0xdb, 0x0d, 0xa9, 0xd1, 0x87, 0x09, 0xdc, 0x1f, 0xca, 0x6c, 0x84, 0xdb, 0x21, + 0xad, 0xe5, 0xf5, 0x23, 0x49, 0x47, 0x6c, 0x20, 0x4b, 0x81, 0xdf, 0x4a, 0xcc, 0xf1, 0x73, 0x28, + 0x11, 0xeb, 0xe4, 0xb8, 0x7c, 0xa5, 0x11, 0xf8, 0xad, 0x5a, 0xfe, 0x44, 0xcf, 0xa0, 0x26, 0x3f, + 0x84, 0x0b, 0x8b, 0xbe, 0xe7, 0xd1, 0x3a, 0x5b, 0x41, 0x97, 0x5c, 0xe7, 0xc0, 0xf3, 0xc3, 0xc8, + 0xad, 0xaf, 0x2d, 0x95, 0x8a, 0xf1, 0xf6, 0x50, 0x57, 0x18, 0xb5, 0x86, 0x42, 0x31, 0xb7, 0x87, + 0x1c, 0x2e, 0xe4, 0x2b, 0x18, 0x17, 0x75, 0xd1, 0x00, 0xa7, 0xe6, 0xf9, 0xce, 0x13, 0x4d, 0x21, + 0xf3, 0x8d, 0x3e, 0x90, 0x3f, 0xb9, 0xea, 0x64, 0xf2, 0x22, 0x5f, 0xc3, 0xe8, 0xc6, 0xfd, 0x8a, + 0x4d, 0xc3, 0x96, 0xef, 0x85, 0xb4, 0x44, 0x70, 0x44, 0xaf, 0x08, 0xd6, 0x1b, 0xf7, 0x2b, 0x95, + 0x76, 0x74, 0x48, 0xbd, 0xc8, 0xad, 0x3b, 0x11, 0x95, 0x58, 0x0b, 0xb3, 0x6c, 0xe6, 0x1d, 0x3d, + 0x76, 0x6a, 0x81, 0x80, 0x68, 0xbd, 0xd0, 0xd9, 0x91, 0x59, 0x18, 0xae, 0x56, 0x57, 0xd7, 0xfd, + 0x03, 0xd7, 0x2b, 0x4d, 0x32, 0x61, 0xd8, 0xea, 0x37, 0x79, 0x0c, 0xd3, 0xda, 0xd9, 0xa0, 0xc6, + 0xfe, 0xa7, 0x47, 0xd4, 0x8b, 0x4a, 0x53, 0xd8, 0x86, 0xef, 0xab, 0xc3, 0xcd, 0x6d, 0xfd, 0x08, + 0xf1, 0xf4, 0xde, 0xed, 0x4a, 0xfc, 0xb3, 0x2a, 0x89, 0x16, 0x7a, 0x4b, 0x05, 0x7b, 0xca, 0xc9, + 0x28, 0x21, 0x3b, 0x30, 0xb4, 0xdd, 0x0e, 0x5a, 0x7e, 0x48, 0x4b, 0xd3, 0x28, 0xb8, 0xeb, 0x9d, + 0xbe, 0x50, 0x81, 0xba, 0x30, 0xcd, 0x96, 0xe8, 0x16, 0xff, 0xa1, 0xf5, 0x4e, 0xb2, 0x22, 0x9f, + 0xc2, 0x58, 0xb5, 0xba, 0x1a, 0x6f, 0x28, 0x17, 0x70, 0x43, 0x99, 0x3b, 0x39, 0x2e, 0x97, 0x98, + 0x4a, 0x15, 0x6f, 0x2a, 0xfa, 0x57, 0xa5, 0x53, 0x30, 0x0e, 0x3b, 0xeb, 0xd5, 0x98, 0xc3, 0x4c, + 0xcc, 0x81, 0x29, 0x73, 0xd9, 0x1c, 0x74, 0x0a, 0xf2, 0xc7, 0x05, 0xb8, 0xaa, 0xb3, 0xcc, 0x12, + 0x4c, 0xe9, 0xe2, 0x8b, 0x48, 0x73, 0xfe, 0xe4, 0xb8, 0x7c, 0xdb, 0xec, 0x47, 0x2d, 0x73, 0xb0, + 0xb4, 0xb6, 0x75, 0x6d, 0x0a, 0xb6, 0x57, 0xef, 0x40, 0x66, 0x7b, 0x67, 0x5f, 0xb8, 0xbd, 0xa6, + 0xd4, 0xba, 0xb7, 0xb7, 0x5b, 0x53, 0xc8, 0xaf, 0x42, 0x51, 0x2c, 0x48, 0x2b, 0x6e, 0x54, 0xa5, + 0xc1, 0x53, 0x1a, 0x94, 0x2e, 0x61, 0xf3, 0x66, 0xcc, 0x25, 0x4f, 0x15, 0x2f, 0xdc, 0x10, 0xab, + 0xdd, 0x65, 0xb5, 0xda, 0x1d, 0xb8, 0x51, 0x2d, 0xc4, 0x42, 0xad, 0xee, 0x14, 0x5f, 0xeb, 0x00, + 0x46, 0xd4, 0x06, 0x41, 0x86, 0xa0, 0xaf, 0xd2, 0x6c, 0x16, 0x7b, 0xd8, 0x1f, 0xd5, 0xea, 0x6a, + 0xb1, 0x40, 0x26, 0x00, 0xe2, 0x5d, 0xb1, 0xd8, 0x4b, 0xc6, 0x60, 0x58, 0xee, 0x5a, 0xc5, 0x3e, + 0xc4, 0x6f, 0xb5, 0x8a, 0xfd, 0x84, 0xc0, 0x84, 0xb9, 0x76, 0x16, 0x07, 0xc8, 0x38, 0x8c, 0xa8, + 0x6a, 0x8a, 0x83, 0xd6, 0xef, 0x15, 0x60, 0x44, 0x2d, 0x01, 0xe4, 0x1c, 0x8c, 0xee, 0x6e, 0x56, + 0xb7, 0x97, 0x17, 0xd7, 0xee, 0xaf, 0x2d, 0x2f, 0x15, 0x7b, 0xc8, 0x65, 0xb8, 0xb8, 0x53, 0x5d, + 0xad, 0x2d, 0x2d, 0xd4, 0xd6, 0xb7, 0x16, 0x2b, 0xeb, 0xb5, 0x6d, 0x7b, 0xeb, 0xf3, 0x2f, 0x6a, + 0x3b, 0xbb, 0x9b, 0x9b, 0xcb, 0xeb, 0xc5, 0x02, 0x29, 0xc1, 0x14, 0x2b, 0x7e, 0xb8, 0xbb, 0xb0, + 0xac, 0x23, 0x14, 0x7b, 0xc9, 0x35, 0xb8, 0x9c, 0x55, 0x52, 0x5b, 0x5d, 0xae, 0x2c, 0xad, 0x2f, + 0x57, 0xab, 0xc5, 0x3e, 0x32, 0x03, 0x93, 0x0c, 0xa5, 0xb2, 0xbd, 0x6d, 0xd0, 0xf6, 0x5b, 0x4d, + 0x18, 0xd5, 0xbe, 0x3d, 0x32, 0x07, 0xa5, 0xc5, 0x65, 0x7b, 0xa7, 0xb6, 0xbd, 0x6b, 0x6f, 0x6f, + 0x55, 0x97, 0x6b, 0x66, 0x0b, 0x93, 0xa5, 0xeb, 0x5b, 0x2b, 0x6b, 0x9b, 0x35, 0x06, 0xaa, 0x16, + 0x0b, 0xac, 0x19, 0x46, 0x69, 0x75, 0x6d, 0x73, 0x65, 0x7d, 0xb9, 0xb6, 0x5b, 0x5d, 0x16, 0x28, + 0xbd, 0xd6, 0x4f, 0x7b, 0x53, 0xda, 0x04, 0x99, 0x87, 0xd1, 0x2a, 0x37, 0x95, 0xe0, 0x0a, 0xcb, + 0xcf, 0xa6, 0x4c, 0x3d, 0x1c, 0x13, 0x16, 0x14, 0xbe, 0x78, 0xea, 0x48, 0x4c, 0x41, 0xdc, 0x66, + 0xb3, 0xa0, 0xee, 0x37, 0x75, 0x05, 0xb1, 0x25, 0x60, 0xb6, 0x2a, 0x25, 0xf3, 0x9a, 0x2a, 0xc9, + 0x0f, 0xaa, 0x78, 0x18, 0x92, 0xaa, 0xa4, 0xae, 0x56, 0x28, 0xa5, 0x72, 0x3e, 0x1e, 0x61, 0xa1, + 0x01, 0x22, 0x4d, 0x86, 0x1a, 0xa3, 0xf0, 0xc8, 0xeb, 0x52, 0xc9, 0xe6, 0x07, 0x4b, 0xd4, 0x33, + 0x12, 0x47, 0x22, 0xa1, 0x5f, 0x5b, 0xed, 0x9c, 0x3d, 0x9d, 0x7c, 0x90, 0x9c, 0x42, 0x42, 0x18, + 0xc8, 0x2c, 0xb1, 0x75, 0xdb, 0x09, 0x54, 0x52, 0x86, 0x01, 0xbe, 0xd8, 0x73, 0x79, 0xa0, 0x5a, + 0xdf, 0x64, 0x00, 0x9b, 0xc3, 0xad, 0xaf, 0xd2, 0x9f, 0x14, 0x59, 0x01, 0xb2, 0xe2, 0x46, 0xab, + 0xed, 0xfd, 0xad, 0xe0, 0xc0, 0xf1, 0xdc, 0x9f, 0xf0, 0x53, 0x64, 0x21, 0xd6, 0xbf, 0xf8, 0x11, + 0xae, 0xe6, 0x6b, 0xc5, 0x76, 0x06, 0x89, 0xf5, 0x27, 0x7d, 0xba, 0xf2, 0xc4, 0xce, 0x08, 0xda, + 0x60, 0xe2, 0x19, 0x01, 0x07, 0x11, 0xa1, 0xec, 0x38, 0x50, 0xa5, 0x61, 0xc8, 0xcf, 0x71, 0xbd, + 0x6a, 0xbc, 0x21, 0xe4, 0xc0, 0x9a, 0xdb, 0x60, 0xc7, 0x01, 0x85, 0xc2, 0x8e, 0xc4, 0x7c, 0xb5, + 0xc0, 0x23, 0x71, 0x5f, 0x7c, 0x24, 0x16, 0x4b, 0x0e, 0x3f, 0x12, 0xc7, 0x28, 0x6c, 0x4a, 0x09, + 0xf5, 0x15, 0x5b, 0xd1, 0x1f, 0x4f, 0x29, 0xa1, 0xf2, 0x8a, 0x29, 0xa5, 0x21, 0x91, 0xf7, 0x01, + 0x2a, 0x8f, 0xaa, 0x78, 0xf6, 0xb3, 0x37, 0x85, 0x0a, 0x8f, 0x9b, 0xad, 0xf3, 0x2c, 0x14, 0x47, + 0xcb, 0x40, 0x3f, 0x3b, 0x6b, 0xd8, 0x64, 0x01, 0xc6, 0x2b, 0x3f, 0x69, 0x07, 0x74, 0xad, 0xc1, + 0xf6, 0xeb, 0x88, 0x1b, 0x09, 0x46, 0xf8, 0x86, 0xe2, 0xb0, 0x82, 0x9a, 0x2b, 0x4a, 0x34, 0x06, + 0x26, 0x09, 0xd9, 0x82, 0xf3, 0x2b, 0x8b, 0xdb, 0x62, 0x92, 0x57, 0xea, 0x75, 0xbf, 0xed, 0x45, + 0x42, 0x6f, 0xbf, 0xc6, 0x56, 0xb5, 0x83, 0x7a, 0xab, 0x26, 0x3f, 0x08, 0x87, 0x17, 0xeb, 0x8a, + 0x7b, 0x8a, 0x96, 0x5c, 0x87, 0xbe, 0x5d, 0x7b, 0x4d, 0x58, 0x10, 0xce, 0x9f, 0x1c, 0x97, 0xc7, + 0xdb, 0x81, 0xab, 0x91, 0xb0, 0x52, 0xab, 0x09, 0x13, 0x2b, 0x34, 0x62, 0x33, 0x5f, 0x9e, 0xd5, + 0x3a, 0x0f, 0xdd, 0x87, 0x30, 0xfa, 0xc8, 0x8d, 0x0e, 0xab, 0xb4, 0x1e, 0xd0, 0x48, 0xda, 0xa9, + 0x50, 0x4c, 0xcf, 0xdc, 0xe8, 0xb0, 0x16, 0x72, 0xb8, 0xae, 0x93, 0x68, 0xe8, 0xd6, 0x32, 0x9c, + 0x13, 0xb5, 0xa9, 0xa3, 0xe1, 0xbc, 0xc9, 0xb0, 0x80, 0x0c, 0x71, 0xa8, 0x74, 0x86, 0x26, 0x9b, + 0x3f, 0xe9, 0x85, 0xe9, 0xc5, 0x43, 0xc7, 0x3b, 0xa0, 0xdb, 0x4e, 0x18, 0x3e, 0xf3, 0x83, 0x86, + 0xd6, 0x78, 0x3c, 0x17, 0xa7, 0x1a, 0x8f, 0x07, 0xe1, 0x79, 0x18, 0xdd, 0x6a, 0x36, 0x24, 0x8d, + 0x38, 0xb3, 0x63, 0x5d, 0x7e, 0xb3, 0x51, 0x6b, 0x49, 0x5e, 0x3a, 0x12, 0xa3, 0xd9, 0xa4, 0xcf, + 0x14, 0x4d, 0x5f, 0x4c, 0xe3, 0xd1, 0x67, 0x1a, 0x8d, 0x86, 0x44, 0x96, 0xe1, 0x7c, 0x95, 0xd6, + 0x7d, 0xaf, 0x71, 0xdf, 0xa9, 0x47, 0x7e, 0xb0, 0xe3, 0x3f, 0xa1, 0x9e, 0x98, 0x84, 0xf8, 0x51, + 0x85, 0x58, 0x58, 0x7b, 0x8c, 0xa5, 0xb5, 0x88, 0x15, 0xdb, 0x69, 0x0a, 0xb2, 0x05, 0xc3, 0x8f, + 0x84, 0xb5, 0x53, 0x1c, 0xf4, 0x6f, 0xdc, 0x56, 0xe6, 0xcf, 0xc5, 0x80, 0xe2, 0xcc, 0x71, 0x9a, + 0xca, 0x54, 0xa1, 0x74, 0x44, 0x5c, 0x0b, 0x25, 0xa6, 0xad, 0x98, 0x58, 0xbb, 0x30, 0xbe, 0xdd, + 0x6c, 0x1f, 0xb8, 0x1e, 0x5b, 0xb5, 0xaa, 0xf4, 0xc7, 0x64, 0x09, 0x20, 0x06, 0x08, 0x1b, 0xe6, + 0xa4, 0x30, 0x0f, 0xc4, 0x05, 0x7b, 0x6f, 0x8a, 0xaf, 0x0d, 0x21, 0x78, 0x9a, 0xb3, 0x35, 0x3a, + 0xeb, 0x7f, 0xf6, 0x01, 0x11, 0x03, 0x80, 0x1b, 0x78, 0x95, 0x46, 0x6c, 0x7f, 0xbb, 0x00, 0xbd, + 0xca, 0xd4, 0x38, 0x78, 0x72, 0x5c, 0xee, 0x75, 0x1b, 0x76, 0xef, 0xda, 0x12, 0x79, 0x0b, 0x06, + 0x10, 0x0d, 0xe5, 0x3f, 0xa1, 0xea, 0xd3, 0x39, 0xf0, 0xd5, 0x0b, 0x35, 0x07, 0x9b, 0x23, 0x93, + 0xb7, 0x61, 0x64, 0x89, 0x36, 0xe9, 0x81, 0x13, 0xf9, 0x72, 0x09, 0xe0, 0xc6, 0x3b, 0x09, 0xd4, + 0xe6, 0x5c, 0x8c, 0xc9, 0x8e, 0xf2, 0x36, 0x75, 0x42, 0xdf, 0xd3, 0x8f, 0xf2, 0x01, 0x42, 0xf4, + 0xa3, 0x3c, 0xc7, 0x21, 0xbf, 0x5f, 0x80, 0xd1, 0x8a, 0xe7, 0x09, 0xa3, 0x58, 0x28, 0xa4, 0x3e, + 0x7d, 0x5b, 0x59, 0x91, 0xd7, 0x9d, 0x7d, 0xda, 0xdc, 0x73, 0x9a, 0x6d, 0x1a, 0x2e, 0x7c, 0xcd, + 0xf4, 0x8d, 0xff, 0x70, 0x5c, 0xfe, 0xe0, 0x0c, 0x66, 0xae, 0xd8, 0x1e, 0xbd, 0x13, 0x38, 0x6e, + 0x14, 0x9e, 0x1c, 0x97, 0xa7, 0x9d, 0xb8, 0x42, 0xfd, 0xbb, 0xd1, 0xda, 0x11, 0x6f, 0x2e, 0x83, + 0xdd, 0x36, 0x17, 0x72, 0x04, 0xe7, 0x2a, 0x61, 0xd8, 0x3e, 0xa2, 0xd5, 0xc8, 0x09, 0xa2, 0x1d, + 0xf7, 0x88, 0xe2, 0x22, 0xd2, 0xd9, 0x30, 0xf2, 0xda, 0xcf, 0x8e, 0xcb, 0x05, 0x76, 0xa0, 0x73, + 0x90, 0x94, 0xe9, 0x6c, 0x41, 0x54, 0x8b, 0x5c, 0x7d, 0x7f, 0x44, 0x13, 0x49, 0x92, 0xb7, 0x75, + 0x5d, 0x69, 0x34, 0x6b, 0x4b, 0x79, 0x23, 0x6e, 0x2d, 0xc2, 0xdc, 0x0a, 0x8d, 0x6c, 0x1a, 0xd2, + 0x48, 0x7e, 0x23, 0x38, 0xc3, 0x63, 0xc3, 0xf4, 0x10, 0xfe, 0x56, 0xc4, 0x38, 0xfc, 0xfc, 0xbb, + 0x90, 0x25, 0xd6, 0xff, 0x55, 0x80, 0xf2, 0x62, 0x40, 0xf9, 0x59, 0x28, 0x87, 0x51, 0xe7, 0xb5, + 0x6b, 0x0e, 0xfa, 0x77, 0x9e, 0xb7, 0xa4, 0x45, 0x09, 0x4b, 0xd9, 0xa0, 0xd8, 0x08, 0x3d, 0xa5, + 0x81, 0xce, 0x7a, 0x0c, 0xd3, 0x36, 0xf5, 0xe8, 0x33, 0x67, 0xbf, 0x49, 0x0d, 0x1b, 0x57, 0x19, + 0x06, 0xf8, 0x87, 0x9e, 0xea, 0x02, 0x87, 0x9f, 0xcd, 0x5e, 0x68, 0x8d, 0xc3, 0xe8, 0xb6, 0xeb, + 0x1d, 0x08, 0xee, 0xd6, 0xff, 0xdb, 0x0f, 0x63, 0xfc, 0xb7, 0x38, 0xde, 0x25, 0xb6, 0xb8, 0xc2, + 0x69, 0xb6, 0xb8, 0x77, 0x61, 0x9c, 0xef, 0xfb, 0x7b, 0x34, 0x60, 0x5b, 0xab, 0x90, 0x04, 0x1e, + 0x55, 0xb9, 0x9e, 0x5c, 0x7b, 0xca, 0x4b, 0x6c, 0x13, 0x91, 0xac, 0xc3, 0x04, 0x07, 0xdc, 0xa7, + 0x4e, 0xd4, 0x8e, 0xad, 0x6d, 0xe7, 0x84, 0x32, 0x2e, 0xc1, 0x7c, 0x6a, 0x0a, 0x5e, 0x8f, 0x05, + 0xd0, 0x4e, 0xd0, 0x92, 0x4f, 0xe0, 0xdc, 0x76, 0xe0, 0x7f, 0xf3, 0x5c, 0xdb, 0xd4, 0xf9, 0xd7, + 0xc9, 0x4f, 0x7e, 0xac, 0xa8, 0xa6, 0x6f, 0xed, 0x49, 0x6c, 0xf2, 0x3a, 0x0c, 0xaf, 0x85, 0x0b, + 0x7e, 0xe0, 0x7a, 0x07, 0xf8, 0x8d, 0x0e, 0xf3, 0x4b, 0x0a, 0x37, 0xac, 0xed, 0x23, 0xd0, 0x56, + 0xc5, 0x09, 0x73, 0xfa, 0x50, 0x77, 0x73, 0xfa, 0x5d, 0x80, 0x75, 0xdf, 0x69, 0x54, 0x9a, 0xcd, + 0xc5, 0x4a, 0x88, 0xbb, 0xa7, 0xd8, 0x8f, 0x9a, 0xbe, 0xd3, 0xa8, 0x39, 0xcd, 0x66, 0xad, 0xee, + 0x84, 0xb6, 0x86, 0x43, 0xbe, 0x84, 0x8b, 0xa1, 0x7b, 0xe0, 0x61, 0xe7, 0x6a, 0x4e, 0xf3, 0xc0, + 0x0f, 0xdc, 0xe8, 0xf0, 0xa8, 0x16, 0xb6, 0xdd, 0x88, 0xdb, 0xb2, 0x26, 0xe6, 0xaf, 0x88, 0x45, + 0xae, 0x2a, 0xf1, 0x2a, 0x12, 0xad, 0xca, 0xb0, 0xec, 0x99, 0x30, 0xbb, 0xe0, 0x41, 0xff, 0xf0, + 0x60, 0x71, 0xc8, 0x3e, 0xb7, 0xee, 0xd6, 0xa9, 0x17, 0xd2, 0x47, 0x4e, 0xe0, 0xb9, 0xde, 0x41, + 0x68, 0xfd, 0xd3, 0xf3, 0x30, 0xac, 0xc4, 0x79, 0x5b, 0x3f, 0xa0, 0x88, 0x1d, 0x14, 0x67, 0x56, + 0x6c, 0xea, 0xb3, 0x35, 0x0c, 0x72, 0x11, 0x8f, 0x2c, 0x62, 0xef, 0x1e, 0x62, 0x33, 0xdd, 0x69, + 0xb5, 0x6c, 0x06, 0x63, 0x5f, 0xf0, 0xd2, 0x02, 0x8e, 0xed, 0x30, 0xff, 0x82, 0x1b, 0xfb, 0x76, + 0xef, 0xd2, 0x02, 0xfb, 0x74, 0xb6, 0xd6, 0x96, 0x16, 0x71, 0x98, 0x86, 0xf9, 0xa7, 0xe3, 0xbb, + 0x8d, 0xba, 0x8d, 0x50, 0x56, 0x5a, 0xad, 0x6c, 0xac, 0x8b, 0xa1, 0xc0, 0xd2, 0xd0, 0x39, 0x6a, + 0xda, 0x08, 0x65, 0x5a, 0x2d, 0xb7, 0xda, 0x2c, 0xfa, 0x5e, 0x14, 0xf8, 0xcd, 0x10, 0xb5, 0xa3, + 0x61, 0x3e, 0x55, 0x84, 0xb9, 0xa7, 0x2e, 0x8a, 0xec, 0x04, 0x2a, 0x79, 0x04, 0x33, 0x95, 0xc6, + 0x53, 0xc7, 0xab, 0xd3, 0x06, 0x2f, 0x79, 0xe4, 0x07, 0x4f, 0x1e, 0x37, 0xfd, 0x67, 0x21, 0x8e, + 0xe5, 0xb0, 0xb0, 0x8e, 0x0a, 0x14, 0x69, 0x3d, 0x7a, 0x26, 0x91, 0xec, 0x3c, 0x6a, 0xf6, 0xb9, + 0x2e, 0x36, 0xfd, 0x76, 0x43, 0x8c, 0x30, 0x7e, 0xae, 0x75, 0x06, 0xb0, 0x39, 0x9c, 0x49, 0x69, + 0xb5, 0xba, 0x81, 0xe3, 0x27, 0xa4, 0x74, 0x18, 0x1e, 0xd9, 0x0c, 0x46, 0x6e, 0xc0, 0x90, 0x54, + 0xd0, 0xf9, 0x65, 0x09, 0x1a, 0xe9, 0xa5, 0x62, 0x2e, 0xcb, 0xd8, 0xe7, 0x66, 0xd3, 0xba, 0xff, + 0x94, 0x06, 0xcf, 0x17, 0xfd, 0x06, 0x95, 0x96, 0x33, 0x61, 0x19, 0xe2, 0x05, 0xb5, 0x3a, 0x2b, + 0xb1, 0x4d, 0x44, 0x56, 0x01, 0xdf, 0x5f, 0xc3, 0xd2, 0xb9, 0xb8, 0x02, 0xbe, 0xff, 0x86, 0xb6, + 0x2c, 0x23, 0x4b, 0x70, 0xbe, 0xd2, 0x8e, 0xfc, 0x23, 0x27, 0x72, 0xeb, 0xbb, 0xad, 0x83, 0xc0, + 0x61, 0x95, 0x14, 0x91, 0x00, 0x0f, 0x2c, 0x8e, 0x2c, 0xac, 0xb5, 0x45, 0xa9, 0x9d, 0x26, 0x20, + 0xef, 0xc0, 0xd8, 0x5a, 0xc8, 0xad, 0xa3, 0x4e, 0x48, 0x1b, 0x68, 0xe2, 0x12, 0xad, 0x74, 0xc3, + 0x1a, 0xda, 0x4a, 0x6b, 0xec, 0x88, 0xd3, 0xb0, 0x0d, 0x3c, 0x62, 0xc1, 0x60, 0x25, 0x0c, 0xdd, + 0x30, 0x42, 0xcb, 0xd5, 0xf0, 0x02, 0x9c, 0x1c, 0x97, 0x07, 0x1d, 0x84, 0xd8, 0xa2, 0x84, 0x3c, + 0x82, 0xd1, 0x25, 0xca, 0x94, 0xd2, 0x9d, 0xa0, 0x1d, 0x46, 0x68, 0x87, 0x1a, 0x9d, 0xbf, 0x28, + 0x16, 0x0d, 0xad, 0x44, 0xcc, 0x65, 0xae, 0x49, 0x36, 0x10, 0x5e, 0x8b, 0x58, 0x81, 0xbe, 0x23, + 0x6a, 0xf8, 0x4c, 0xe3, 0x16, 0x34, 0xab, 0x6e, 0x83, 0x2d, 0x03, 0x53, 0xd8, 0x06, 0xd4, 0xb8, + 0xc5, 0xba, 0x53, 0x3b, 0xc4, 0x12, 0x5d, 0xe3, 0x36, 0x48, 0x48, 0x3d, 0x65, 0x70, 0x9f, 0x36, + 0x8c, 0xaa, 0x66, 0xa1, 0x6c, 0xe2, 0x19, 0xcd, 0xf1, 0x1f, 0xc2, 0xe8, 0x62, 0x3b, 0x8c, 0xfc, + 0xa3, 0x9d, 0x43, 0x7a, 0x44, 0xd1, 0x56, 0x25, 0xce, 0x15, 0x75, 0x04, 0xd7, 0x22, 0x06, 0xd7, + 0xbb, 0xa9, 0xa1, 0x93, 0xcf, 0x80, 0xc8, 0x03, 0xc2, 0x0a, 0x9b, 0x1f, 0x1e, 0x9b, 0xcb, 0x68, + 0xae, 0x1a, 0xe6, 0xa7, 0x02, 0x79, 0xae, 0xa8, 0x1d, 0xa8, 0x62, 0xdd, 0x64, 0x9a, 0x26, 0x66, + 0x0d, 0xe2, 0x4d, 0x5c, 0x09, 0x9c, 0xd6, 0x61, 0xa9, 0x14, 0x6b, 0xf0, 0xa2, 0x53, 0x07, 0x0c, + 0x6e, 0x68, 0x22, 0x31, 0x3a, 0xa9, 0x02, 0xf0, 0x9f, 0xeb, 0x6c, 0xe0, 0xb9, 0x81, 0xab, 0x64, + 0xc8, 0x8b, 0x15, 0x48, 0x59, 0x5d, 0x44, 0xfd, 0x86, 0xb3, 0x6d, 0xba, 0xc6, 0x68, 0x6a, 0x6c, + 0xc8, 0x13, 0x28, 0xf2, 0x5f, 0x1b, 0xbe, 0xe7, 0x46, 0x7c, 0x59, 0x9f, 0x35, 0xac, 0xa1, 0xc9, + 0x62, 0x59, 0x01, 0x5a, 0xa1, 0x45, 0x05, 0x47, 0xaa, 0x54, 0xb7, 0xf6, 0x24, 0x29, 0xc9, 0x36, + 0x8c, 0x6e, 0x07, 0x7e, 0xa3, 0x5d, 0x8f, 0x50, 0x19, 0xb8, 0x84, 0xeb, 0x33, 0x11, 0xf5, 0x68, + 0x25, 0x5c, 0x26, 0x2d, 0x0e, 0xa8, 0xb1, 0xe5, 0x5b, 0x97, 0x89, 0x86, 0x48, 0x16, 0x60, 0x70, + 0xdb, 0x6f, 0xba, 0xf5, 0xe7, 0xa5, 0x39, 0x6c, 0xf4, 0x94, 0x64, 0x86, 0x40, 0xd9, 0x54, 0xd4, + 0x3c, 0x5b, 0x08, 0xd2, 0x35, 0x4f, 0x8e, 0x44, 0x2a, 0x30, 0xfe, 0x19, 0x9b, 0x30, 0xae, 0xef, + 0x79, 0x8e, 0x1b, 0xd0, 0xd2, 0x65, 0x1c, 0x17, 0xbc, 0x29, 0xf8, 0xb1, 0x5e, 0xa0, 0x4f, 0x67, + 0x83, 0x82, 0xac, 0xc1, 0xb9, 0xb5, 0xb0, 0x1a, 0x05, 0x6e, 0x8b, 0x6e, 0x38, 0x9e, 0x73, 0x40, + 0x1b, 0xa5, 0x2b, 0xb1, 0xa9, 0xde, 0x0d, 0x6b, 0x21, 0x96, 0xd5, 0x8e, 0x78, 0xa1, 0x6e, 0xaa, + 0x4f, 0xd0, 0x91, 0xcf, 0x61, 0x6a, 0xf9, 0x9b, 0x88, 0xcd, 0x98, 0x66, 0xa5, 0xdd, 0x70, 0xa3, + 0x6a, 0xe4, 0x07, 0xce, 0x01, 0x2d, 0x95, 0x91, 0xdf, 0x2b, 0x27, 0xc7, 0xe5, 0xab, 0x54, 0x94, + 0xd7, 0x1c, 0x86, 0x50, 0x0b, 0x39, 0x86, 0x7e, 0x05, 0x9f, 0xc5, 0x81, 0x49, 0xbf, 0xda, 0x6e, + 0x31, 0xa5, 0x18, 0xa5, 0x7f, 0xd5, 0x90, 0xbe, 0x56, 0xc2, 0xa5, 0x1f, 0x72, 0x40, 0x4a, 0xfa, + 0x1a, 0x22, 0xb1, 0x81, 0x3c, 0xf0, 0x5d, 0xaf, 0x52, 0x8f, 0xdc, 0xa7, 0x54, 0xd8, 0x0c, 0xc2, + 0xd2, 0x35, 0x6c, 0x29, 0x5e, 0x2b, 0xfc, 0xaa, 0xef, 0x7a, 0x35, 0x07, 0x8b, 0x6b, 0xc2, 0xc2, + 0x60, 0x5c, 0x2b, 0xa4, 0xa9, 0xc9, 0x0f, 0xe1, 0xc2, 0x86, 0xbf, 0xef, 0x36, 0x29, 0x5f, 0x72, + 0xb8, 0x58, 0xd0, 0x44, 0x6a, 0x21, 0x5f, 0xbc, 0x56, 0x38, 0x42, 0x8c, 0x9a, 0x58, 0xad, 0x8e, + 0x14, 0x8e, 0x7e, 0xad, 0x90, 0xcd, 0x85, 0x2c, 0xc3, 0x18, 0x7e, 0x97, 0x4d, 0xfc, 0x19, 0x96, + 0xae, 0xe3, 0xc9, 0xeb, 0x5a, 0x42, 0x99, 0xba, 0xbd, 0xac, 0xe1, 0x2c, 0x7b, 0x51, 0xf0, 0xdc, + 0x36, 0xc8, 0xc8, 0xc7, 0x30, 0x9b, 0x9c, 0xde, 0x8b, 0xbe, 0xf7, 0xd8, 0x3d, 0x68, 0x07, 0xb4, + 0x51, 0x7a, 0x85, 0x35, 0xd5, 0xee, 0x80, 0x31, 0xfb, 0x08, 0xce, 0xa7, 0xaa, 0x20, 0x45, 0xe8, + 0x7b, 0x22, 0x6e, 0x69, 0x47, 0x6c, 0xf6, 0x27, 0x79, 0x03, 0x06, 0x9e, 0xb2, 0x23, 0x0f, 0x6a, + 0x0c, 0xf1, 0xbd, 0x9f, 0x46, 0xba, 0xe6, 0x3d, 0xf6, 0x6d, 0x8e, 0xf4, 0x7e, 0xef, 0xbb, 0x85, + 0x07, 0xfd, 0xc3, 0xa3, 0xc5, 0x31, 0x7e, 0xb9, 0xfe, 0xa0, 0x7f, 0x78, 0xbc, 0x38, 0x61, 0x55, + 0xe0, 0x5c, 0x02, 0x9f, 0x94, 0x60, 0x88, 0x7a, 0x4c, 0x8d, 0x6e, 0x70, 0x9d, 0xc5, 0x96, 0x3f, + 0xc9, 0x14, 0x0c, 0x34, 0xdd, 0x23, 0x37, 0xc2, 0x0a, 0x07, 0x6c, 0xfe, 0xc3, 0xfa, 0x83, 0x02, + 0x90, 0xf4, 0x96, 0x41, 0xee, 0x24, 0xd8, 0x70, 0x25, 0x52, 0x80, 0xf4, 0xeb, 0x03, 0xc9, 0xfd, + 0x33, 0x98, 0xe4, 0x63, 0x26, 0x37, 0x37, 0xad, 0x2e, 0xbe, 0xa8, 0x66, 0x14, 0xeb, 0xa6, 0x16, + 0x51, 0x8c, 0x5b, 0xe1, 0x3a, 0x36, 0xad, 0x0d, 0xd3, 0x99, 0x9b, 0x05, 0xd9, 0x80, 0xe9, 0x23, + 0xdf, 0x8b, 0x0e, 0x9b, 0xcf, 0xe5, 0x5e, 0x21, 0x6a, 0x2b, 0x60, 0x6d, 0xb8, 0x3e, 0x66, 0x22, + 0xd8, 0x93, 0x02, 0x2c, 0x38, 0x62, 0x3d, 0x0f, 0xfa, 0x87, 0x7b, 0x8b, 0x7d, 0xaa, 0x27, 0x96, + 0x0d, 0xe7, 0x53, 0x6b, 0x2e, 0xf9, 0x08, 0xc6, 0xea, 0x78, 0x4c, 0x32, 0x6a, 0xe2, 0x3b, 0x8e, + 0x06, 0xd7, 0x3f, 0x27, 0x0e, 0xe7, 0x5d, 0xf9, 0x47, 0x05, 0x98, 0xc9, 0x59, 0x6d, 0xcf, 0x2e, + 0xea, 0x2f, 0xe0, 0xc2, 0x91, 0xf3, 0x4d, 0x2d, 0xc0, 0x53, 0x70, 0x2d, 0x70, 0xbc, 0x84, 0xb4, + 0x71, 0x25, 0xc9, 0xc6, 0xd0, 0x3d, 0x9c, 0x8e, 0x9c, 0x6f, 0x6c, 0x44, 0xb0, 0x59, 0x39, 0x6f, + 0xe7, 0xa7, 0x30, 0x6e, 0xac, 0xaf, 0x67, 0x6e, 0x9c, 0x75, 0x0f, 0xce, 0x2f, 0xd1, 0x26, 0x8d, + 0xe8, 0xa9, 0xad, 0x5f, 0xd6, 0x36, 0x40, 0x95, 0x1e, 0x39, 0xad, 0x43, 0x9f, 0xe9, 0xdd, 0x0b, + 0xfa, 0x2f, 0x61, 0x3d, 0x21, 0x52, 0xd1, 0x97, 0x05, 0x7b, 0x6f, 0x72, 0x5d, 0x3c, 0x54, 0x98, + 0xb6, 0x46, 0x65, 0xfd, 0x79, 0x2f, 0x10, 0xb1, 0x40, 0x06, 0xd4, 0x39, 0x92, 0xcd, 0x78, 0x0f, + 0xc6, 0xf8, 0x59, 0x97, 0x83, 0xb1, 0x39, 0xa3, 0xf3, 0x93, 0xe2, 0xcb, 0xd3, 0x8b, 0x56, 0x7b, + 0x6c, 0x03, 0x95, 0x91, 0xda, 0x94, 0x1f, 0xd2, 0x91, 0xb4, 0xd7, 0x20, 0xd5, 0x8b, 0x18, 0xa9, + 0xfe, 0x9b, 0x7c, 0x02, 0x13, 0x8b, 0xfe, 0x51, 0x8b, 0xc9, 0x44, 0x10, 0xf7, 0x09, 0x03, 0x88, + 0xa8, 0xd7, 0x28, 0x5c, 0xed, 0xb1, 0x13, 0xe8, 0x64, 0x13, 0x26, 0xef, 0x37, 0xdb, 0xe1, 0x61, + 0xc5, 0x6b, 0x2c, 0x36, 0xfd, 0x50, 0x72, 0xe9, 0x17, 0x06, 0x08, 0xb1, 0xbc, 0xa5, 0x31, 0x56, + 0x7b, 0xec, 0x2c, 0x42, 0x72, 0x03, 0x06, 0x96, 0x9f, 0xb2, 0x65, 0x57, 0xfa, 0xb9, 0x08, 0x37, + 0xbc, 0x2d, 0x8f, 0x6e, 0x3d, 0x5e, 0xed, 0xb1, 0x79, 0xe9, 0xc2, 0x08, 0x0c, 0xc9, 0x73, 0xf2, + 0x1d, 0xa6, 0x12, 0x2b, 0x71, 0x56, 0x23, 0x27, 0x6a, 0x87, 0x64, 0x16, 0x86, 0x77, 0x5b, 0xec, + 0xf8, 0x26, 0x0d, 0x0c, 0xb6, 0xfa, 0x6d, 0xbd, 0x61, 0x4a, 0x9a, 0xcc, 0xe9, 0xb6, 0x69, 0x8e, + 0x1c, 0x03, 0xac, 0x55, 0x53, 0xb8, 0x9d, 0xb1, 0x8d, 0x7a, 0x7b, 0x13, 0xf5, 0x16, 0x93, 0xb2, + 0xb6, 0xa6, 0x33, 0x85, 0x67, 0x7d, 0x0e, 0x57, 0x76, 0x5b, 0x21, 0x0d, 0xa2, 0x4a, 0xab, 0xd5, + 0x74, 0xeb, 0xfc, 0x9e, 0x0c, 0xcf, 0xd3, 0x72, 0xb2, 0xbc, 0x03, 0x83, 0xe2, 0x86, 0x8c, 0x4f, + 0x13, 0x39, 0x07, 0x2b, 0xad, 0x96, 0x38, 0xc5, 0xbf, 0xc9, 0x95, 0x73, 0x7e, 0x2e, 0xb7, 0x05, + 0xb6, 0xf5, 0xbb, 0x05, 0xb8, 0xc2, 0xbf, 0x80, 0x5c, 0xd6, 0xdf, 0x83, 0x11, 0xf4, 0x82, 0x6b, + 0x39, 0x75, 0xf9, 0x4d, 0x70, 0x77, 0x40, 0x09, 0xb4, 0xe3, 0x72, 0xcd, 0xbf, 0xb0, 0x37, 0xdf, + 0xbf, 0x50, 0x7e, 0x60, 0x7d, 0x99, 0x1f, 0xd8, 0x67, 0x60, 0x89, 0x16, 0x35, 0x9b, 0xa9, 0x46, + 0x85, 0x2f, 0xd2, 0x2a, 0xeb, 0xbf, 0xf6, 0xc2, 0xcc, 0x0a, 0xf5, 0x68, 0xe0, 0x60, 0x3f, 0x0d, + 0x7b, 0x91, 0xee, 0x67, 0x54, 0xe8, 0xe8, 0x67, 0x54, 0x96, 0x16, 0xb8, 0x5e, 0xb4, 0xc0, 0xa5, + 0x9c, 0xa6, 0xd8, 0x71, 0x71, 0xd7, 0x5e, 0x13, 0xdd, 0xc2, 0xe3, 0x62, 0x3b, 0x70, 0xd1, 0xc6, + 0x4e, 0xd6, 0x62, 0x1f, 0xa5, 0xfe, 0xae, 0xa6, 0xb8, 0x49, 0x71, 0x8b, 0x39, 0x24, 0x7c, 0x94, + 0x4c, 0xcf, 0xa4, 0x4d, 0x18, 0xe4, 0x86, 0x43, 0xbc, 0x66, 0x1a, 0x9d, 0xbf, 0x25, 0xbe, 0xa9, + 0x9c, 0x0e, 0x0a, 0x2b, 0x23, 0x6e, 0xec, 0x7c, 0x0a, 0x44, 0x08, 0xb0, 0x05, 0x97, 0xd9, 0xcf, + 0x60, 0x54, 0x43, 0x39, 0xcd, 0xde, 0xaf, 0x0c, 0x98, 0x4c, 0x63, 0xf4, 0x0e, 0xb8, 0x2d, 0x54, + 0xdb, 0xfb, 0xad, 0x0f, 0xa0, 0x94, 0x6e, 0x8d, 0x30, 0x5a, 0x75, 0xb3, 0x91, 0x59, 0x4b, 0x30, + 0xb5, 0x42, 0x23, 0x9c, 0xb8, 0xf8, 0x11, 0x69, 0xbe, 0x76, 0x89, 0xef, 0x4c, 0xae, 0xaa, 0xf2, + 0xc6, 0x48, 0xff, 0x4a, 0xab, 0x30, 0x9d, 0xe0, 0x22, 0xea, 0x7f, 0x1f, 0x86, 0x04, 0x48, 0xad, + 0xa8, 0xc2, 0x61, 0x97, 0xee, 0x8b, 0x82, 0xbd, 0x79, 0x3e, 0x6f, 0x05, 0x67, 0x5b, 0x12, 0x58, + 0x87, 0x70, 0x81, 0x6d, 0xb3, 0x31, 0x57, 0x35, 0x1d, 0x2f, 0xc1, 0x48, 0x8b, 0x29, 0x0a, 0xa1, + 0xfb, 0x13, 0x3e, 0x8d, 0x06, 0xec, 0x61, 0x06, 0xa8, 0xba, 0x3f, 0xa1, 0xe4, 0x32, 0x00, 0x16, + 0x62, 0x37, 0xc5, 0x2a, 0x80, 0xe8, 0xdc, 0x28, 0x48, 0x00, 0x3d, 0xf5, 0xf8, 0xbc, 0xb1, 0xf1, + 0x6f, 0x2b, 0x80, 0x99, 0x54, 0x4d, 0xa2, 0x03, 0x77, 0x60, 0x58, 0xaa, 0xb0, 0x09, 0x73, 0xbd, + 0xde, 0x03, 0x5b, 0x21, 0x91, 0x57, 0xe1, 0x9c, 0x47, 0xbf, 0x89, 0x6a, 0xa9, 0x36, 0x8c, 0x33, + 0xf0, 0xb6, 0x6c, 0x87, 0xf5, 0x2b, 0x68, 0xa2, 0xad, 0x7a, 0xfe, 0xb3, 0xc7, 0x4d, 0xe7, 0x09, + 0x4d, 0x55, 0xfc, 0x11, 0x0c, 0x57, 0xbb, 0x57, 0xcc, 0x3f, 0x1f, 0x59, 0xb9, 0xad, 0x48, 0xac, + 0x26, 0xcc, 0xb2, 0x2e, 0x55, 0x2b, 0x1b, 0xeb, 0x6b, 0x8d, 0xed, 0xef, 0x5a, 0x80, 0x4f, 0xe1, + 0x52, 0x66, 0x6d, 0xdf, 0xb5, 0x10, 0xff, 0x79, 0x3f, 0xcc, 0xf0, 0xcd, 0x24, 0x3d, 0x83, 0x4f, + 0xbf, 0xd4, 0xfc, 0x52, 0x6e, 0x3b, 0xef, 0x66, 0xdc, 0x76, 0x22, 0x89, 0x7e, 0xdb, 0x69, 0xdc, + 0x71, 0xbe, 0x9b, 0x7d, 0xc7, 0x89, 0x76, 0x22, 0xf3, 0x8e, 0x33, 0x79, 0xb3, 0xb9, 0x9c, 0x7f, + 0xb3, 0xc9, 0xef, 0x98, 0xd3, 0x37, 0x9b, 0x59, 0xf7, 0x99, 0x09, 0x77, 0xa9, 0xe1, 0x97, 0xeb, + 0x2e, 0xf5, 0x2a, 0x0c, 0x55, 0x5a, 0x2d, 0xcd, 0xfd, 0x10, 0x87, 0xc7, 0x69, 0xb5, 0xb8, 0xf0, + 0x64, 0xa1, 0x5c, 0xe7, 0x21, 0x63, 0x9d, 0x7f, 0x0f, 0x60, 0x11, 0x1f, 0x49, 0xe0, 0xc0, 0x8d, + 0x22, 0x06, 0x6a, 0xf8, 0xfc, 0xe9, 0x04, 0x0e, 0x9c, 0x6e, 0x01, 0x89, 0x91, 0xb9, 0x62, 0x6f, + 0xed, 0x41, 0x29, 0x3d, 0x7d, 0x5e, 0xc2, 0xd2, 0xf5, 0xa7, 0x05, 0xb8, 0x2c, 0x94, 0x9c, 0xc4, + 0x07, 0x7e, 0xf6, 0xd9, 0xf9, 0x36, 0x8c, 0x09, 0xda, 0x9d, 0xf8, 0x43, 0xe0, 0xd7, 0xcb, 0x72, + 0x31, 0xe6, 0x2b, 0xba, 0x81, 0x46, 0xde, 0x86, 0x61, 0xfc, 0x23, 0xbe, 0x62, 0x61, 0x92, 0x19, + 0x41, 0xd4, 0x5a, 0xf2, 0xa2, 0x45, 0xa1, 0x5a, 0x5f, 0xc3, 0x95, 0xbc, 0x86, 0xbf, 0x04, 0xb9, + 0xfc, 0xcb, 0x02, 0x5c, 0x12, 0xec, 0x8d, 0xa5, 0xe2, 0x85, 0x76, 0x9d, 0x33, 0x38, 0x2d, 0x3f, + 0x80, 0x51, 0x56, 0xa1, 0x6c, 0x77, 0x9f, 0xd8, 0x5a, 0xc5, 0xc9, 0x21, 0x2e, 0x59, 0x72, 0x22, + 0x47, 0x78, 0xc2, 0x38, 0x47, 0x4d, 0x69, 0xbc, 0xb0, 0x75, 0x62, 0xeb, 0x4b, 0x98, 0xcb, 0xee, + 0xc2, 0x4b, 0x90, 0xcf, 0x03, 0x98, 0xcd, 0xd8, 0x14, 0x5e, 0x6c, 0x4f, 0xfe, 0x02, 0x2e, 0x65, + 0xf2, 0x7a, 0x09, 0xcd, 0x5c, 0x65, 0x1a, 0x47, 0xf4, 0x12, 0x86, 0xd0, 0x7a, 0x04, 0x17, 0x33, + 0x38, 0xbd, 0x84, 0x26, 0xae, 0xc0, 0x8c, 0xd2, 0xb4, 0xbf, 0x55, 0x0b, 0x37, 0xe0, 0x32, 0x67, + 0xf4, 0x72, 0x46, 0xe5, 0x21, 0x5c, 0x12, 0xec, 0x5e, 0x82, 0xf4, 0x56, 0x61, 0x2e, 0x3e, 0x50, + 0x67, 0xe8, 0x49, 0xa7, 0x5e, 0x64, 0xac, 0x75, 0xb8, 0x1a, 0x73, 0xca, 0x51, 0x1a, 0x4e, 0xcf, + 0x8d, 0xab, 0x83, 0xf1, 0x28, 0xbd, 0x94, 0x11, 0x7d, 0x04, 0x17, 0x0c, 0xa6, 0x2f, 0x4d, 0x55, + 0x5a, 0x83, 0x49, 0xce, 0xd8, 0x54, 0x9d, 0xe7, 0x75, 0xd5, 0x79, 0x74, 0xfe, 0x7c, 0xcc, 0x12, + 0xc1, 0x7b, 0x6f, 0x66, 0x68, 0xd3, 0x1b, 0xa8, 0x4d, 0x4b, 0x94, 0xb8, 0x85, 0x6f, 0xc3, 0x20, + 0x87, 0x88, 0xf6, 0x65, 0x30, 0xe3, 0x87, 0x05, 0x4e, 0x26, 0x90, 0xad, 0x1f, 0xc2, 0x65, 0x7e, + 0x12, 0x8d, 0xef, 0x12, 0xcd, 0xd3, 0xe2, 0x47, 0x89, 0x83, 0xe8, 0x45, 0xc1, 0x37, 0x89, 0x9f, + 0x73, 0x1e, 0xdd, 0x97, 0x73, 0x3b, 0x8f, 0xff, 0xa9, 0x1e, 0xb0, 0xc9, 0x03, 0x66, 0x6f, 0xe6, + 0x01, 0xf3, 0x3a, 0x5c, 0x53, 0x07, 0xcc, 0x64, 0x35, 0x72, 0x6a, 0x59, 0x5f, 0xc2, 0x25, 0xde, + 0x51, 0xe9, 0xdd, 0x67, 0x36, 0xe3, 0x83, 0x44, 0x37, 0x67, 0x44, 0x37, 0x4d, 0xec, 0x9c, 0x4e, + 0xfe, 0x7f, 0x05, 0xf9, 0xc9, 0x65, 0x33, 0xff, 0x65, 0x9f, 0xb8, 0x37, 0xa1, 0xac, 0x04, 0x62, + 0xb6, 0xe8, 0xc5, 0x8e, 0xdb, 0x1b, 0x30, 0xad, 0xb3, 0x71, 0xeb, 0x74, 0xef, 0x1e, 0x5e, 0xf2, + 0xbc, 0xc5, 0x3e, 0x0b, 0x04, 0xc8, 0x69, 0x57, 0xca, 0x90, 0x1b, 0xe2, 0xdb, 0x0a, 0xd3, 0xaa, + 0xc1, 0x5c, 0x7a, 0x28, 0xdc, 0xba, 0x7c, 0x55, 0x40, 0x3e, 0x61, 0x9f, 0x30, 0x42, 0xc4, 0x60, + 0xe4, 0x32, 0x95, 0xdf, 0x31, 0x27, 0x97, 0x54, 0x96, 0x25, 0x97, 0x9a, 0x44, 0xff, 0x59, 0xed, + 0x72, 0x3e, 0xfc, 0x3a, 0x10, 0x59, 0xb4, 0x58, 0xb5, 0x65, 0xd5, 0x17, 0xa1, 0x6f, 0xb1, 0x6a, + 0x8b, 0xe7, 0x4c, 0xa8, 0x09, 0xd6, 0xc3, 0xc0, 0x66, 0xb0, 0xa4, 0x46, 0xde, 0x7b, 0x0a, 0x8d, + 0xfc, 0x41, 0xff, 0x70, 0x5f, 0xb1, 0xdf, 0x26, 0x55, 0xf7, 0xc0, 0x7b, 0xe4, 0x46, 0x87, 0xaa, + 0xc2, 0x8a, 0xf5, 0x15, 0x4c, 0x1a, 0xd5, 0x8b, 0xaf, 0xb8, 0xe3, 0x3b, 0x2c, 0xa6, 0xcf, 0x2e, + 0x56, 0xd0, 0x41, 0x05, 0x4d, 0x16, 0x63, 0x7c, 0xbd, 0xa9, 0x3b, 0x35, 0x7c, 0xe4, 0x6b, 0xcb, + 0x42, 0xeb, 0x1f, 0xf6, 0x6b, 0xdc, 0xb5, 0xd7, 0x6d, 0x1d, 0x7a, 0x77, 0x0f, 0x80, 0xcf, 0x10, + 0xad, 0x73, 0x4c, 0x01, 0x1c, 0x15, 0x7e, 0x1f, 0x7c, 0x49, 0xb6, 0x35, 0xa4, 0xd3, 0xbe, 0x7e, + 0x13, 0xae, 0xc0, 0x9c, 0x48, 0x3e, 0xf8, 0x54, 0xae, 0xc0, 0x82, 0x75, 0x68, 0xeb, 0x48, 0xe4, + 0x87, 0xc9, 0x27, 0x1a, 0x03, 0x78, 0xa7, 0xf4, 0x8a, 0xbc, 0x64, 0x4e, 0xf7, 0xed, 0x6c, 0xaf, + 0x34, 0x9e, 0xc1, 0x34, 0xa3, 0x75, 0x1f, 0xe3, 0xc1, 0x62, 0xf9, 0x9b, 0x88, 0x7a, 0x7c, 0x6d, + 0x1f, 0xc4, 0x7a, 0x6e, 0x74, 0xa8, 0x27, 0x46, 0x16, 0xf6, 0xf7, 0x98, 0x4f, 0x8d, 0xaa, 0x32, + 0x3b, 0x9b, 0x3f, 0x4e, 0x22, 0x7b, 0x7d, 0xd9, 0x6b, 0xb4, 0x7c, 0x57, 0x1d, 0x98, 0xf8, 0x24, + 0x0a, 0x9a, 0x35, 0x2a, 0xe0, 0xb6, 0x8e, 0x64, 0xbd, 0xda, 0xd1, 0xc1, 0x7c, 0x18, 0xfa, 0x77, + 0x16, 0x77, 0xd6, 0x8b, 0x05, 0xeb, 0x0e, 0x80, 0x56, 0x13, 0xc0, 0xe0, 0xe6, 0x96, 0xbd, 0x51, + 0x59, 0x2f, 0xf6, 0x90, 0x69, 0x38, 0xff, 0x68, 0x6d, 0x73, 0x69, 0xeb, 0x51, 0xb5, 0x56, 0xdd, + 0xa8, 0xd8, 0x3b, 0x8b, 0x15, 0x7b, 0xa9, 0x58, 0xb0, 0xbe, 0x86, 0x29, 0xb3, 0x87, 0x2f, 0x75, + 0x12, 0x46, 0x30, 0xa9, 0xf4, 0x99, 0x07, 0x8f, 0x76, 0x34, 0xdf, 0x50, 0x71, 0xf8, 0x4b, 0xfa, + 0x38, 0x89, 0x63, 0xa2, 0xf8, 0x8c, 0x34, 0x24, 0xf2, 0x3a, 0x57, 0x0b, 0x92, 0xef, 0x97, 0x99, + 0x5a, 0x50, 0x8b, 0xf5, 0x02, 0x5c, 0xfa, 0x7e, 0x00, 0x53, 0x66, 0xad, 0xa7, 0xb5, 0x52, 0xbd, + 0x82, 0x4e, 0xb3, 0xda, 0xe3, 0x26, 0x42, 0xf4, 0x6b, 0x03, 0xb1, 0xb2, 0xfe, 0x00, 0x8a, 0x02, + 0x2b, 0xde, 0x79, 0xaf, 0x4b, 0x33, 0x62, 0x21, 0xe3, 0x29, 0xa6, 0xf4, 0x0f, 0xf7, 0xa1, 0xc8, + 0x56, 0x4c, 0x41, 0xc9, 0x2b, 0x98, 0x82, 0x81, 0xf5, 0xf8, 0x3a, 0xc7, 0xe6, 0x3f, 0xf0, 0x8d, + 0x4f, 0xe4, 0x04, 0x91, 0xf4, 0x28, 0x1b, 0xb1, 0xd5, 0x6f, 0xf2, 0x3a, 0x0c, 0xde, 0x77, 0x9b, + 0x91, 0x30, 0x8d, 0xc4, 0x9b, 0x3c, 0x63, 0xcb, 0x0b, 0x6c, 0x81, 0x60, 0xd9, 0x70, 0x5e, 0xab, + 0xf0, 0x0c, 0x4d, 0x25, 0x25, 0x18, 0xda, 0xa4, 0xdf, 0x68, 0xf5, 0xcb, 0x9f, 0xd6, 0x3b, 0x70, + 0x5e, 0x78, 0xeb, 0x69, 0x62, 0xba, 0x26, 0x5e, 0x8c, 0x17, 0x8c, 0x67, 0xab, 0x82, 0x25, 0x16, + 0x31, 0xba, 0xdd, 0x56, 0xe3, 0x05, 0xe9, 0xd8, 0x46, 0x71, 0x46, 0xba, 0xd7, 0xe4, 0x2d, 0x50, + 0xb7, 0xe1, 0xfc, 0xf3, 0x02, 0x94, 0x12, 0x56, 0x86, 0xc5, 0x43, 0xa7, 0xd9, 0xa4, 0xde, 0x01, + 0x25, 0x37, 0xa1, 0x7f, 0x67, 0x6b, 0x67, 0x5b, 0x58, 0x49, 0xa5, 0x03, 0x00, 0x03, 0x29, 0x1c, + 0x1b, 0x31, 0xc8, 0x43, 0x38, 0x2f, 0xfd, 0x71, 0x55, 0x91, 0x18, 0xa1, 0xcb, 0x9d, 0xbd, 0x7b, + 0xd3, 0x74, 0xe4, 0x2d, 0x61, 0x12, 0xf9, 0x71, 0xdb, 0x0d, 0x68, 0x03, 0x2d, 0x3f, 0xf1, 0x6d, + 0xba, 0x56, 0x62, 0xeb, 0x68, 0xfc, 0x7d, 0xaf, 0xf5, 0xfb, 0x05, 0x98, 0xc9, 0xb1, 0x9a, 0x90, + 0xd7, 0x8d, 0xee, 0x4c, 0x6a, 0xdd, 0x91, 0x28, 0xab, 0x3d, 0xa2, 0x3f, 0x8b, 0x9a, 0x93, 0x72, + 0xdf, 0x19, 0x9c, 0x94, 0x57, 0x7b, 0x62, 0xc7, 0xe4, 0x05, 0x80, 0x61, 0x09, 0xb7, 0xce, 0xc1, + 0xb8, 0x21, 0x37, 0xcb, 0x82, 0x31, 0xbd, 0x66, 0x36, 0x38, 0x8b, 0x7e, 0x43, 0x0d, 0x0e, 0xfb, + 0xdb, 0xfa, 0xbd, 0x02, 0x4c, 0x61, 0x17, 0x0f, 0x5c, 0xb6, 0xf4, 0xc5, 0x12, 0x9a, 0x37, 0x7a, + 0x32, 0x67, 0xf4, 0x24, 0x81, 0xab, 0xba, 0xf4, 0x7e, 0xaa, 0x4b, 0x73, 0x59, 0x5d, 0xc2, 0xe9, + 0xed, 0xfa, 0x9e, 0xd1, 0x13, 0xed, 0x2a, 0xea, 0x0f, 0x0a, 0x30, 0xa9, 0xb5, 0x49, 0xb5, 0xff, + 0x9e, 0xd1, 0xa4, 0x4b, 0x19, 0x4d, 0x4a, 0x09, 0x79, 0x21, 0xd5, 0xa2, 0x57, 0x3a, 0xb5, 0xa8, + 0xab, 0x8c, 0xff, 0x73, 0x01, 0xa6, 0x33, 0x65, 0x40, 0x2e, 0x30, 0xdd, 0xb6, 0x1e, 0xd0, 0x48, + 0x88, 0x57, 0xfc, 0x62, 0xf0, 0xb5, 0x30, 0x6c, 0xd3, 0x40, 0x7c, 0xe7, 0xe2, 0x17, 0x79, 0x05, + 0xc6, 0xb7, 0x69, 0xe0, 0xfa, 0x0d, 0xee, 0xbe, 0xce, 0xfd, 0x42, 0xc7, 0x6d, 0x13, 0x48, 0xe6, + 0x60, 0x44, 0xf9, 0x35, 0x72, 0xfb, 0xa4, 0x1d, 0x03, 0x18, 0xef, 0x25, 0xf7, 0x80, 0x5f, 0x6a, + 0x30, 0x62, 0xf1, 0x8b, 0x2d, 0x2e, 0xd2, 0x5a, 0x38, 0xc8, 0x17, 0x17, 0x69, 0x0a, 0xbc, 0x00, + 0x83, 0x9f, 0xd9, 0x38, 0x09, 0x30, 0xaa, 0x82, 0x2d, 0x7e, 0x91, 0x09, 0x74, 0x40, 0xc6, 0x17, + 0x0f, 0xe8, 0x78, 0xfc, 0x3e, 0x4c, 0x65, 0xc9, 0x35, 0x6b, 0x0a, 0x09, 0xda, 0x5e, 0x45, 0xfb, + 0x25, 0x4c, 0x56, 0x1a, 0x8d, 0x8d, 0xfb, 0x15, 0xee, 0x73, 0x20, 0x46, 0x95, 0x7f, 0x3c, 0xdc, + 0x5e, 0x27, 0x54, 0xb6, 0xfe, 0x35, 0xcf, 0x8d, 0xec, 0xc9, 0xe5, 0x6f, 0xdc, 0x30, 0x72, 0xbd, + 0x03, 0xcd, 0xa8, 0x68, 0x5f, 0xd8, 0xa4, 0xcf, 0x32, 0xa6, 0x00, 0xdb, 0x4d, 0x4d, 0xde, 0x1c, + 0x9e, 0xc1, 0x7c, 0x4a, 0x63, 0x1b, 0x2f, 0x25, 0x33, 0x26, 0xdf, 0xb8, 0xa0, 0xaf, 0x52, 0x7f, + 0x62, 0xfd, 0x00, 0x2e, 0xf0, 0x25, 0xad, 0x53, 0xe3, 0x45, 0xb3, 0x75, 0x1b, 0xa8, 0xf5, 0xae, + 0xb4, 0x52, 0x74, 0x6c, 0x99, 0x3d, 0x66, 0xb4, 0x05, 0xab, 0xfc, 0x2f, 0x05, 0x98, 0x4d, 0x90, + 0x56, 0x9f, 0x7b, 0x75, 0xb9, 0x9e, 0xbe, 0x9a, 0x74, 0xf0, 0x46, 0x3d, 0x80, 0x1b, 0xff, 0xdc, + 0x86, 0xf2, 0xf1, 0x26, 0x77, 0x00, 0x38, 0xb1, 0xb6, 0x7d, 0xa3, 0xe9, 0x5b, 0x38, 0xd9, 0xe0, + 0x06, 0xae, 0xa1, 0x90, 0x36, 0x64, 0xc9, 0x5d, 0x7c, 0x23, 0xdd, 0x6c, 0xc3, 0x18, 0x49, 0x84, + 0x0a, 0xf2, 0x5a, 0x8e, 0x91, 0x38, 0x8b, 0xbf, 0xf5, 0x3b, 0x7d, 0x30, 0xa3, 0x0f, 0xe0, 0x8b, + 0xf4, 0x75, 0x1b, 0x46, 0x17, 0x7d, 0x2f, 0xa2, 0xdf, 0x44, 0x5a, 0x24, 0x07, 0xa2, 0x6e, 0xda, + 0x55, 0x89, 0x50, 0x1d, 0x39, 0xa0, 0xc6, 0xf4, 0x18, 0xc3, 0x59, 0x30, 0x46, 0x24, 0x8b, 0x30, + 0xbe, 0x49, 0x9f, 0xa5, 0x04, 0x88, 0x0e, 0x8b, 0x1e, 0x7d, 0x56, 0xd3, 0x84, 0xa8, 0x7b, 0x91, + 0x19, 0x34, 0x64, 0x1f, 0x26, 0xe4, 0xe4, 0x32, 0x84, 0x39, 0xab, 0xef, 0x2a, 0xe6, 0x74, 0xe6, + 0x91, 0x0e, 0x58, 0x0d, 0x39, 0x32, 0x4c, 0x70, 0x64, 0x5d, 0xe7, 0x35, 0xf2, 0xc7, 0xfb, 0xe6, + 0xb6, 0xa5, 0x95, 0x18, 0xee, 0xa0, 0xc9, 0x47, 0xfb, 0x3a, 0x0b, 0x6b, 0x1b, 0x4a, 0xe9, 0xf1, + 0x10, 0xb5, 0xbd, 0x05, 0x83, 0x1c, 0x2a, 0xd4, 0x00, 0x19, 0xa4, 0x47, 0x61, 0xf3, 0x73, 0x3a, + 0xaf, 0xc6, 0x16, 0xb8, 0xd6, 0x2a, 0xda, 0x4e, 0x14, 0x8e, 0x52, 0xc4, 0xee, 0x26, 0x87, 0x17, + 0x3d, 0x6d, 0xe5, 0xf0, 0xea, 0x7e, 0x26, 0xf2, 0xe1, 0xc2, 0x22, 0x9a, 0x9f, 0x74, 0x4e, 0xa2, + 0x61, 0xb7, 0x60, 0x48, 0x80, 0x12, 0xe1, 0x83, 0xe2, 0xcf, 0x4f, 0x22, 0x58, 0xef, 0xc3, 0x45, + 0xb4, 0x85, 0xb9, 0xde, 0x41, 0x93, 0xee, 0x86, 0xc6, 0xd3, 0x83, 0x6e, 0x9f, 0xf5, 0x87, 0x30, + 0x9b, 0x45, 0xdb, 0xf5, 0xcb, 0xe6, 0x01, 0x3d, 0x7e, 0xa7, 0x0f, 0xa6, 0xd6, 0x42, 0x5d, 0x99, + 0x50, 0x41, 0x3d, 0x32, 0x02, 0x4d, 0xa0, 0x4c, 0x56, 0x7b, 0xb2, 0x02, 0x49, 0xbc, 0xa5, 0xbd, + 0xaa, 0xec, 0xed, 0x14, 0x41, 0x82, 0x6d, 0x5b, 0xea, 0x5d, 0xe5, 0xab, 0xd0, 0xbf, 0xc9, 0x96, + 0xea, 0x3e, 0x31, 0x76, 0x9c, 0x82, 0x81, 0xf0, 0x55, 0x23, 0xdb, 0x22, 0xd9, 0x0f, 0x72, 0x3f, + 0xf5, 0x76, 0xb2, 0xbf, 0x7b, 0x84, 0x84, 0xd5, 0x9e, 0xd4, 0x33, 0xca, 0x77, 0x60, 0xb4, 0xd2, + 0x38, 0xe2, 0x1e, 0x81, 0xbe, 0x97, 0xf8, 0x2c, 0xb5, 0x92, 0xd5, 0x1e, 0x5b, 0x47, 0x64, 0x27, + 0xdc, 0x4a, 0xab, 0x85, 0x1b, 0x55, 0x56, 0xd4, 0x88, 0xd5, 0x1e, 0xee, 0x60, 0xff, 0x03, 0xed, + 0x45, 0xb0, 0x78, 0x98, 0x93, 0xf7, 0xa0, 0x79, 0xb5, 0xc7, 0x8e, 0x71, 0x17, 0x86, 0x61, 0x70, + 0xc7, 0x09, 0x0e, 0x68, 0x64, 0x7d, 0x09, 0xb3, 0xc2, 0xbb, 0x85, 0x9b, 0x0c, 0xd1, 0x07, 0x26, + 0x8c, 0x1d, 0x98, 0x3a, 0x79, 0xa4, 0x5c, 0x01, 0xc0, 0x03, 0xc2, 0x9a, 0xd7, 0xa0, 0xdf, 0x08, + 0xf7, 0x3a, 0x0d, 0x62, 0xbd, 0x0d, 0x23, 0x4a, 0xb4, 0xa8, 0x05, 0x6b, 0xbb, 0x24, 0x8a, 0x79, + 0xca, 0x78, 0x65, 0x2a, 0x9f, 0x96, 0x5e, 0x34, 0x84, 0x26, 0x02, 0xc8, 0x70, 0xb5, 0xd9, 0x85, + 0xe9, 0xc4, 0xec, 0x89, 0xe3, 0x13, 0x28, 0xc5, 0x95, 0xfb, 0xff, 0xa9, 0xdf, 0x49, 0xbd, 0xb6, + 0xf7, 0x54, 0x7a, 0xad, 0xf5, 0x4f, 0x7a, 0xf1, 0xc4, 0x95, 0x92, 0x47, 0xc2, 0x78, 0xa5, 0x1b, + 0xd0, 0x16, 0x60, 0x04, 0x7b, 0xbf, 0x24, 0xdf, 0xa3, 0x75, 0x76, 0xce, 0x18, 0xfe, 0xd9, 0x71, + 0xb9, 0x07, 0x3d, 0x32, 0x62, 0x32, 0xf2, 0x31, 0x0c, 0x2d, 0x7b, 0x0d, 0xe4, 0xd0, 0x77, 0x06, + 0x0e, 0x92, 0x88, 0x8d, 0x09, 0x36, 0x79, 0x87, 0x7d, 0xfb, 0xdc, 0xe6, 0x61, 0x6b, 0x90, 0xf8, + 0xe8, 0x37, 0x90, 0x77, 0xf4, 0x1b, 0x4c, 0x1c, 0xfd, 0x2c, 0x18, 0xd8, 0x0a, 0x1a, 0x62, 0x82, + 0x4d, 0xcc, 0x8f, 0x09, 0xc1, 0x21, 0xcc, 0xe6, 0x45, 0xd6, 0x7f, 0x2b, 0xc0, 0xcc, 0x0a, 0x8d, + 0x32, 0xe7, 0x90, 0x21, 0x95, 0xc2, 0xb7, 0x96, 0x4a, 0xef, 0x8b, 0x48, 0x45, 0xf5, 0xba, 0x2f, + 0xaf, 0xd7, 0xfd, 0x79, 0xbd, 0x1e, 0xc8, 0xef, 0xf5, 0x0a, 0x0c, 0xf2, 0xae, 0xb2, 0xe3, 0xed, + 0x5a, 0x44, 0x8f, 0xe2, 0xe3, 0xad, 0xee, 0x5a, 0x66, 0xf3, 0x32, 0xa6, 0x81, 0xae, 0x3b, 0xa1, + 0x7e, 0xbc, 0x15, 0x3f, 0xad, 0x1f, 0xe1, 0x4b, 0xd6, 0x75, 0xbf, 0xfe, 0x44, 0x33, 0x93, 0x0e, + 0xf1, 0x2f, 0x34, 0x69, 0x56, 0x67, 0x58, 0xbc, 0xc4, 0x96, 0x18, 0xe4, 0x2a, 0x8c, 0xae, 0x79, + 0xf7, 0xfd, 0xa0, 0x4e, 0xb7, 0xbc, 0x26, 0xe7, 0x3e, 0x6c, 0xeb, 0x20, 0x61, 0x3e, 0x10, 0x35, + 0xc4, 0x67, 0x72, 0x04, 0x24, 0xce, 0xe4, 0x0c, 0xb6, 0x37, 0x6f, 0xf3, 0x32, 0x61, 0x9d, 0x60, + 0x7f, 0x77, 0x3a, 0xce, 0xaa, 0x73, 0x6f, 0x37, 0xc4, 0x7d, 0xb8, 0x68, 0xd3, 0x56, 0xd3, 0x61, + 0xca, 0xe0, 0x91, 0xcf, 0xf1, 0x55, 0x9f, 0xaf, 0x66, 0xbc, 0x42, 0x33, 0x1d, 0x0d, 0x54, 0x93, + 0x7b, 0x3b, 0x34, 0xf9, 0x08, 0xae, 0xad, 0xd0, 0xc8, 0x5c, 0x89, 0x63, 0x23, 0xac, 0xe8, 0xfc, + 0x2a, 0x0c, 0x87, 0xa6, 0x01, 0x59, 0xbe, 0xaa, 0xca, 0x24, 0xdc, 0x7b, 0x53, 0x5e, 0xb1, 0x08, + 0x3e, 0xea, 0x2f, 0xeb, 0x13, 0x28, 0xe7, 0x55, 0x77, 0x3a, 0x3f, 0x50, 0x17, 0xae, 0xe6, 0x33, + 0x10, 0xcd, 0x5d, 0x06, 0x69, 0x6c, 0x16, 0x9f, 0x50, 0xb7, 0xd6, 0x9a, 0xf6, 0x69, 0xf1, 0x87, + 0xb5, 0x20, 0x3d, 0xe2, 0xbe, 0x45, 0x73, 0x6b, 0x78, 0x8f, 0x6b, 0x32, 0x88, 0xe5, 0x5a, 0x81, + 0x61, 0x09, 0x13, 0x72, 0x9d, 0xc9, 0x6c, 0xa9, 0x14, 0x68, 0x43, 0x32, 0x50, 0x64, 0xd6, 0x8f, + 0xe4, 0x9d, 0x86, 0x49, 0x71, 0xba, 0x67, 0x99, 0xa7, 0xb9, 0xc4, 0xb0, 0x7c, 0xb8, 0x68, 0xf2, + 0xd6, 0x6d, 0xd5, 0x45, 0xcd, 0x56, 0xcd, 0x4d, 0xd4, 0x57, 0x4d, 0xdb, 0x69, 0xaf, 0x98, 0x97, + 0x31, 0x88, 0x5c, 0xd1, 0x2d, 0xd2, 0x63, 0xe9, 0x77, 0x9e, 0x77, 0x61, 0x36, 0xab, 0x42, 0xed, + 0x00, 0xa9, 0xcc, 0x9e, 0x42, 0x51, 0x5a, 0x82, 0x2b, 0x32, 0xf0, 0x92, 0xef, 0x47, 0x61, 0x14, + 0x38, 0xad, 0x6a, 0x3d, 0x70, 0x5b, 0x31, 0x95, 0x05, 0x83, 0x1c, 0x22, 0x24, 0xc1, 0xef, 0x87, + 0x38, 0x8e, 0x28, 0xb1, 0x7e, 0xb3, 0x00, 0x96, 0xe1, 0xbc, 0x84, 0xe3, 0xbc, 0x1d, 0xf8, 0x4f, + 0xdd, 0x86, 0x76, 0x27, 0xf3, 0xba, 0x61, 0x0f, 0xe4, 0x6f, 0xe9, 0x92, 0x7e, 0xd3, 0x62, 0xcd, + 0xbc, 0x9b, 0xb0, 0xd1, 0x71, 0x8d, 0x15, 0x1d, 0x9a, 0xcc, 0x08, 0x37, 0xca, 0x76, 0xf7, 0x3f, + 0x0a, 0x70, 0xbd, 0x63, 0x1b, 0x44, 0x7f, 0xf6, 0xa1, 0x98, 0x2c, 0x13, 0x33, 0xa8, 0xac, 0x39, + 0x33, 0xa4, 0x39, 0xec, 0xdd, 0xe3, 0xce, 0xd9, 0xd2, 0xe9, 0xa7, 0xa5, 0x38, 0xa7, 0xf8, 0x9d, + 0xbd, 0xf5, 0xe4, 0x3d, 0x80, 0x1d, 0x3f, 0x72, 0x9a, 0x8b, 0x68, 0x39, 0xe8, 0x8b, 0x1d, 0xed, + 0x23, 0x06, 0xad, 0x25, 0x23, 0x27, 0x68, 0xc8, 0xd6, 0xa7, 0xf8, 0x5d, 0x67, 0x37, 0xfa, 0x74, + 0x9f, 0xda, 0x22, 0x5c, 0x4f, 0x5c, 0xa8, 0xbf, 0x00, 0x93, 0x08, 0xa6, 0x99, 0xf8, 0x99, 0xd2, + 0xbe, 0x12, 0xf8, 0xed, 0xd6, 0x2f, 0x67, 0xd4, 0xff, 0xac, 0xc0, 0x3d, 0x1c, 0xf5, 0x6a, 0xc5, + 0x40, 0x2f, 0x02, 0xc4, 0xd0, 0x84, 0xa7, 0xbb, 0x2a, 0xd8, 0xbb, 0xc7, 0xcf, 0xea, 0x68, 0x6a, + 0x3f, 0xe0, 0x0c, 0x34, 0xb2, 0x5f, 0xee, 0x48, 0xbe, 0x89, 0xb7, 0xe8, 0xaa, 0xf6, 0xd3, 0xc9, + 0xfd, 0x1d, 0x69, 0x38, 0x39, 0x23, 0xdd, 0x21, 0x4c, 0xb1, 0x15, 0xa0, 0xd2, 0x8e, 0x0e, 0xfd, + 0xc0, 0x8d, 0xe4, 0x9b, 0x0d, 0xb2, 0x2d, 0x1e, 0x9c, 0x73, 0xaa, 0x0f, 0x7f, 0x71, 0x5c, 0x7e, + 0xf7, 0x2c, 0x21, 0x31, 0x25, 0xcf, 0x1d, 0xf5, 0x48, 0xdd, 0x9a, 0x81, 0xbe, 0x45, 0x7b, 0x1d, + 0x17, 0x3c, 0x7b, 0x5d, 0x2d, 0x78, 0xf6, 0xba, 0xf5, 0xd7, 0xbd, 0x50, 0xe6, 0x21, 0x31, 0xd0, + 0xf9, 0x22, 0x36, 0x77, 0x68, 0xde, 0x1c, 0xa7, 0xb5, 0x4c, 0x24, 0x42, 0x5e, 0xf4, 0x9e, 0x26, + 0xe4, 0xc5, 0xaf, 0x41, 0x8e, 0xad, 0xeb, 0x14, 0xe6, 0x83, 0xd7, 0x4e, 0x8e, 0xcb, 0xd7, 0x63, + 0xf3, 0x01, 0x2f, 0xcd, 0xb2, 0x23, 0xe4, 0x54, 0x91, 0x36, 0x7c, 0xf4, 0xbf, 0x80, 0xe1, 0xe3, + 0x2e, 0x0c, 0xe1, 0x61, 0x66, 0x6d, 0x5b, 0xb8, 0x43, 0xe2, 0xf4, 0xc4, 0x08, 0x3a, 0x35, 0x57, + 0x8f, 0x94, 0x27, 0xd1, 0xac, 0xbf, 0xdb, 0x0b, 0x57, 0xf3, 0x65, 0x2e, 0xda, 0xb6, 0x04, 0x10, + 0xbb, 0x7d, 0x74, 0x72, 0x33, 0xc1, 0x6f, 0xe7, 0x19, 0xdd, 0x57, 0x6e, 0x5e, 0x1a, 0x1d, 0xd3, + 0x7d, 0xe4, 0x0b, 0xe1, 0xc4, 0x1d, 0x83, 0xf1, 0x70, 0x58, 0x04, 0x7a, 0x15, 0x20, 0x23, 0xd0, + 0xab, 0x80, 0x91, 0x7d, 0x98, 0xd9, 0x0e, 0xdc, 0xa7, 0x4e, 0x44, 0x1f, 0xd2, 0xe7, 0xfc, 0x05, + 0xcd, 0xb2, 0x78, 0x36, 0xc3, 0x9f, 0x7d, 0xdf, 0x3c, 0x39, 0x2e, 0xbf, 0xd2, 0xe2, 0x28, 0x18, + 0xcc, 0x8b, 0xbf, 0x59, 0xac, 0xa5, 0x5f, 0xd2, 0xe4, 0x31, 0xb2, 0xfe, 0x75, 0x01, 0x2e, 0xa1, + 0x5a, 0x2e, 0xec, 0xb5, 0xb2, 0xf2, 0x17, 0xf2, 0x36, 0xd4, 0x3b, 0x28, 0xe6, 0x22, 0x7a, 0x1b, + 0x1a, 0x2f, 0xa8, 0x6d, 0x03, 0x8d, 0xac, 0xc1, 0xa8, 0xf8, 0x8d, 0xdf, 0x5f, 0x1f, 0x1e, 0x08, + 0xa6, 0xb5, 0x05, 0x0b, 0xa7, 0x3a, 0xb7, 0x31, 0xe1, 0xc4, 0x16, 0xcc, 0xf0, 0xa1, 0xa1, 0xad, + 0xd3, 0x5a, 0x3f, 0xef, 0x85, 0xb9, 0x3d, 0x1a, 0xb8, 0x8f, 0x9f, 0xe7, 0x74, 0x66, 0x0b, 0xa6, + 0x24, 0x88, 0x87, 0xc5, 0x30, 0x3e, 0x31, 0x1e, 0xea, 0x51, 0x36, 0x55, 0xc4, 0xd5, 0x90, 0x5f, + 0x5c, 0x26, 0xe1, 0x19, 0xfc, 0x08, 0xdf, 0x82, 0xe1, 0x44, 0x60, 0x1a, 0x1c, 0x7f, 0xf9, 0x85, + 0xc6, 0x43, 0xb5, 0xda, 0x63, 0x2b, 0x4c, 0xf2, 0x5b, 0xf9, 0x17, 0x3f, 0xc2, 0x66, 0xd2, 0xcd, + 0x70, 0x8a, 0x1f, 0x2c, 0xfb, 0x58, 0x1d, 0xad, 0x34, 0xe3, 0x83, 0x5d, 0xed, 0xb1, 0xf3, 0x6a, + 0x5a, 0x18, 0x85, 0x91, 0x0a, 0x5e, 0x66, 0xb1, 0x93, 0xfb, 0x7f, 0xef, 0x85, 0x2b, 0xf2, 0x35, + 0x4c, 0x8e, 0x98, 0x3f, 0x87, 0x19, 0x09, 0xaa, 0xb4, 0x98, 0xc2, 0x40, 0x1b, 0xa6, 0xa4, 0x79, + 0xb8, 0x55, 0x29, 0x69, 0x47, 0xe0, 0xc4, 0xc2, 0xce, 0x23, 0x7f, 0x39, 0x66, 0xd3, 0x8f, 0xb3, + 0xc2, 0x04, 0xa1, 0xf9, 0x52, 0x5f, 0x33, 0x0d, 0xd1, 0x18, 0xeb, 0x67, 0x23, 0x65, 0x76, 0xed, + 0xff, 0xb6, 0x66, 0xd7, 0xd5, 0x9e, 0xa4, 0xe1, 0x75, 0x61, 0x02, 0xc6, 0x36, 0xe9, 0xb3, 0x58, + 0xee, 0xff, 0x77, 0x21, 0x11, 0xa2, 0x80, 0x69, 0x18, 0x3c, 0x56, 0x41, 0x21, 0x8e, 0x34, 0x83, + 0x21, 0x0a, 0x74, 0x0d, 0x83, 0xa3, 0xae, 0xc1, 0x10, 0xbf, 0xe1, 0x6d, 0x9c, 0xe2, 0x84, 0xaf, + 0x9e, 0xb5, 0xf0, 0xb7, 0x86, 0x0d, 0x7e, 0xd8, 0x17, 0xf4, 0xd6, 0x43, 0xb8, 0x26, 0x1c, 0x9f, + 0xcd, 0xc1, 0xc7, 0x8a, 0xce, 0xb8, 0x7d, 0x59, 0x0e, 0x5c, 0x59, 0xa1, 0xc9, 0xa5, 0xc7, 0x78, + 0xf6, 0xf3, 0x09, 0x9c, 0x33, 0xe0, 0x8a, 0x23, 0x6a, 0xa5, 0x6a, 0x0e, 0x29, 0xd6, 0x49, 0x6c, + 0xeb, 0x6a, 0x56, 0x15, 0x7a, 0x63, 0x2d, 0x8a, 0x71, 0x53, 0x83, 0xf8, 0x6e, 0x2e, 0x3c, 0xc3, + 0xaa, 0x77, 0x53, 0xfb, 0xae, 0xf9, 0x8a, 0xc7, 0xa3, 0xdb, 0xc9, 0x9d, 0x57, 0x95, 0x5a, 0xe3, + 0xc6, 0x25, 0x82, 0x35, 0x01, 0x63, 0xb2, 0xa8, 0x49, 0xc3, 0xd0, 0xfa, 0xe9, 0x00, 0x58, 0x42, + 0xb0, 0x59, 0xd7, 0xd6, 0x52, 0x1e, 0xfb, 0xa9, 0xc6, 0x8a, 0x8d, 0xea, 0x82, 0x1e, 0xae, 0x33, + 0x2e, 0xe5, 0x33, 0x0f, 0xf5, 0xbc, 0x7a, 0x0c, 0x35, 0x66, 0x5e, 0xaa, 0xf7, 0x5f, 0xe5, 0x2c, + 0x93, 0xfc, 0x63, 0xbb, 0x71, 0x72, 0x5c, 0xbe, 0x96, 0xb3, 0x4c, 0x1a, 0x7c, 0xb3, 0x97, 0x4c, + 0xdb, 0xbc, 0x4b, 0xe9, 0x7b, 0x91, 0xbb, 0x14, 0xf6, 0x45, 0xea, 0xb7, 0x29, 0xbb, 0xa6, 0x2c, + 0xc5, 0xf7, 0x28, 0xef, 0xc2, 0xf5, 0x22, 0x11, 0x29, 0x40, 0x83, 0x18, 0x5c, 0x0d, 0x36, 0xc4, + 0x85, 0xa2, 0x66, 0xb3, 0x5c, 0x3c, 0xa4, 0xf5, 0x27, 0xc2, 0xc8, 0x2c, 0x6f, 0x82, 0xb3, 0x8c, + 0xed, 0x3c, 0x74, 0x33, 0xff, 0xce, 0x79, 0x41, 0xad, 0xce, 0x48, 0xf5, 0x48, 0x07, 0x49, 0xb6, + 0xe4, 0x27, 0x30, 0xa9, 0x86, 0x3a, 0xe1, 0xb7, 0x34, 0x3a, 0xff, 0x4a, 0x1c, 0xe5, 0xf3, 0xe8, + 0xb1, 0x73, 0xfb, 0xe9, 0xbd, 0xdb, 0x19, 0xb8, 0xfc, 0x01, 0x7d, 0x5d, 0x16, 0x68, 0x4e, 0x4b, + 0xfa, 0x0d, 0x59, 0x16, 0xa1, 0x76, 0x0f, 0xfe, 0x77, 0x94, 0x97, 0x3d, 0xd3, 0x17, 0xdc, 0x26, + 0x15, 0xcf, 0x65, 0xe4, 0xec, 0xcb, 0xb9, 0xc3, 0x2b, 0x7c, 0xc7, 0x77, 0x78, 0xff, 0xac, 0x57, + 0xbe, 0x2d, 0x48, 0x5f, 0xa3, 0x9e, 0xf9, 0x2a, 0x2f, 0xb3, 0x07, 0xa7, 0xda, 0x4c, 0x33, 0x1b, + 0x47, 0x16, 0xe4, 0x45, 0xa8, 0x0a, 0x58, 0x35, 0xa1, 0x2e, 0x15, 0xe2, 0x02, 0xe3, 0x6e, 0x14, + 0x55, 0x17, 0x8d, 0x2a, 0x79, 0xcb, 0xd6, 0xf7, 0xed, 0x6f, 0xd9, 0x7e, 0x1b, 0xe0, 0xfc, 0xb6, + 0x73, 0xe0, 0x7a, 0x6c, 0xd1, 0xb6, 0x69, 0xe8, 0xb7, 0x83, 0x3a, 0x25, 0x15, 0x98, 0x30, 0x1d, + 0x47, 0xbb, 0xb8, 0xc5, 0xb2, 0x7d, 0xc9, 0x84, 0x91, 0x79, 0x18, 0x51, 0x8f, 0x55, 0xc5, 0x66, + 0x92, 0xf1, 0x88, 0x75, 0xb5, 0xc7, 0x8e, 0xd1, 0xc8, 0x7b, 0xc6, 0xc5, 0xd0, 0x39, 0xf5, 0xee, + 0x1a, 0x71, 0xe7, 0xb9, 0x67, 0x9f, 0xe7, 0x37, 0xcc, 0x0d, 0x91, 0x5f, 0x62, 0xfc, 0x28, 0x75, + 0x57, 0x34, 0x60, 0xb4, 0x38, 0x65, 0xf7, 0x42, 0x5d, 0x20, 0x37, 0x76, 0x76, 0xc6, 0x2d, 0xd2, + 0x97, 0x30, 0xfa, 0xb0, 0xbd, 0x4f, 0xe5, 0xad, 0xd8, 0xa0, 0xd8, 0x1f, 0x93, 0xee, 0xd0, 0xa2, + 0x7c, 0xef, 0x4d, 0x3e, 0x06, 0x4f, 0xda, 0xfb, 0x34, 0x1d, 0x94, 0x9d, 0x2d, 0x4c, 0x1a, 0x33, + 0x72, 0x08, 0xc5, 0xa4, 0xe7, 0xb2, 0xb8, 0x49, 0xea, 0xe0, 0x6f, 0x8d, 0x31, 0x40, 0xb4, 0xd0, + 0xef, 0xc9, 0xb0, 0xb8, 0xab, 0x3d, 0x76, 0x8a, 0x2b, 0xf9, 0x75, 0x98, 0xce, 0xb4, 0x3a, 0xaa, + 0xb7, 0x57, 0x9d, 0x0d, 0x9a, 0xb8, 0xa8, 0x27, 0xa4, 0x26, 0x1f, 0x7a, 0x19, 0x35, 0x67, 0xd7, + 0x42, 0x1a, 0x70, 0x2e, 0xe1, 0x91, 0x2b, 0xf2, 0x5b, 0xe4, 0xfb, 0xf8, 0xe2, 0xc6, 0x24, 0xe3, + 0xb4, 0x66, 0xd6, 0x95, 0x64, 0x49, 0xd6, 0x61, 0x44, 0x1d, 0xf7, 0xf1, 0x59, 0x57, 0xb6, 0x69, + 0xa3, 0x74, 0x72, 0x5c, 0x9e, 0x8a, 0x4d, 0x1b, 0x06, 0xcf, 0x98, 0x01, 0xf9, 0x0d, 0xb8, 0xa6, + 0xa6, 0xe8, 0x56, 0x90, 0x6d, 0x04, 0x12, 0xa1, 0xe5, 0x6f, 0x25, 0x67, 0x78, 0x1e, 0xfe, 0xde, + 0xbd, 0x85, 0xde, 0x52, 0x61, 0xb5, 0xc7, 0xee, 0xce, 0x9a, 0xfc, 0xb4, 0x00, 0x17, 0x72, 0x6a, + 0x1d, 0xc3, 0x5a, 0xbb, 0x5a, 0xe6, 0x50, 0xb9, 0xc7, 0xf7, 0x46, 0x6e, 0x23, 0x7e, 0x97, 0x27, + 0x4d, 0x74, 0x46, 0xbf, 0x73, 0x6a, 0x22, 0x0f, 0x00, 0xe2, 0xd0, 0xcb, 0x18, 0xc1, 0x2a, 0xe3, + 0x03, 0x45, 0x81, 0x66, 0x45, 0x68, 0x66, 0x02, 0x3d, 0x50, 0x11, 0x6a, 0xdf, 0x80, 0x41, 0x3c, + 0x6f, 0x87, 0xa5, 0x71, 0xd4, 0x48, 0x31, 0x8c, 0x0e, 0x9e, 0xca, 0xf5, 0x3d, 0x48, 0xe0, 0x90, + 0x55, 0xa6, 0xd9, 0xe1, 0x1e, 0x28, 0x35, 0x31, 0x11, 0x74, 0x4b, 0x9c, 0x0e, 0x78, 0x91, 0x0c, + 0xb5, 0x61, 0xe4, 0x23, 0x30, 0xc9, 0x16, 0x00, 0x86, 0x03, 0xb1, 0xc2, 0x3d, 0xe8, 0x1f, 0xee, + 0x2f, 0x0e, 0xf0, 0x8f, 0x50, 0xba, 0x8d, 0xff, 0xf6, 0x30, 0x7f, 0x63, 0xba, 0xeb, 0xb9, 0x8f, + 0xdd, 0x78, 0x31, 0xd4, 0x2d, 0x75, 0x71, 0x62, 0x20, 0xa1, 0x47, 0xe7, 0xa4, 0x00, 0x52, 0x46, + 0xbd, 0xde, 0xae, 0x46, 0xbd, 0x37, 0xb5, 0xeb, 0x2f, 0x2d, 0x06, 0x26, 0xd7, 0x97, 0x4c, 0x23, + 0x5a, 0x7c, 0x2f, 0xf6, 0x35, 0x0c, 0x62, 0xd8, 0x4a, 0x7e, 0xb7, 0x38, 0x3a, 0x7f, 0x5b, 0x6c, + 0x01, 0x1d, 0x9a, 0xcf, 0xe3, 0x5c, 0x8a, 0x77, 0xe3, 0x5c, 0xe2, 0x08, 0x30, 0x24, 0x8e, 0x10, + 0xb2, 0x03, 0x93, 0xdb, 0x01, 0x6d, 0x08, 0xe7, 0xe5, 0x56, 0x20, 0x0c, 0x1d, 0xdc, 0x84, 0x82, + 0xea, 0x43, 0x4b, 0x16, 0xd7, 0xa8, 0x2a, 0xd7, 0x37, 0xe7, 0x0c, 0x72, 0xb2, 0x0c, 0x13, 0x55, + 0xea, 0x04, 0xf5, 0xc3, 0x87, 0xf4, 0x39, 0x53, 0x9d, 0x8c, 0x5c, 0x18, 0x21, 0x96, 0xb0, 0xfe, + 0x62, 0x91, 0xee, 0x68, 0x62, 0x12, 0x91, 0x4f, 0x61, 0xb0, 0xea, 0x07, 0xd1, 0xc2, 0x73, 0xb1, + 0x40, 0xca, 0xdb, 0x27, 0x0e, 0x5c, 0xb8, 0x28, 0xf3, 0x81, 0x84, 0x7e, 0x10, 0xd5, 0xf6, 0x8d, + 0xb8, 0x4c, 0x1c, 0x85, 0x3c, 0x87, 0x29, 0x73, 0x71, 0x12, 0x3e, 0xb5, 0xc3, 0x42, 0x65, 0xcb, + 0x5a, 0x01, 0x39, 0xca, 0xc2, 0x4d, 0xc1, 0xfd, 0x6a, 0x72, 0x09, 0x7c, 0x8c, 0xe5, 0x7a, 0xa8, + 0xa4, 0x2c, 0x7a, 0xb2, 0x81, 0x89, 0x54, 0x78, 0x8f, 0x2a, 0x21, 0xf7, 0xc5, 0x1d, 0x89, 0x23, + 0x7f, 0xb5, 0x71, 0x81, 0x43, 0x49, 0x38, 0x61, 0x32, 0xfb, 0x8e, 0x9d, 0x22, 0x25, 0xdb, 0x70, + 0x7e, 0x37, 0xa4, 0xdb, 0x01, 0x7d, 0xea, 0xd2, 0x67, 0x92, 0x1f, 0xc4, 0x61, 0x92, 0x18, 0xbf, + 0x16, 0x2f, 0xcd, 0x62, 0x98, 0x26, 0x26, 0xef, 0x01, 0x6c, 0xbb, 0x9e, 0x47, 0x1b, 0x78, 0x85, + 0x39, 0x8a, 0xac, 0xd0, 0x3c, 0xdb, 0x42, 0x68, 0xcd, 0xf7, 0x9a, 0xba, 0x48, 0x35, 0x64, 0xb2, + 0x00, 0xe3, 0x6b, 0x5e, 0xbd, 0xd9, 0x16, 0xae, 0x06, 0x21, 0x2e, 0x4e, 0x22, 0x7c, 0x9b, 0xcb, + 0x0b, 0x6a, 0xa9, 0x8f, 0xdc, 0x24, 0x21, 0x0f, 0x81, 0x08, 0x80, 0x98, 0xb5, 0xce, 0x7e, 0x93, + 0x8a, 0xcf, 0x1d, 0xcd, 0x2e, 0x92, 0x11, 0x4e, 0x77, 0x23, 0x2a, 0x5a, 0x8a, 0x6c, 0xf6, 0x3d, + 0x18, 0xd5, 0xe6, 0x7c, 0x46, 0x20, 0x84, 0x29, 0x3d, 0x10, 0xc2, 0x88, 0x1e, 0xf0, 0xe0, 0x1f, + 0x14, 0x60, 0x2e, 0xfb, 0x5b, 0x12, 0xca, 0xdc, 0x16, 0x8c, 0x28, 0xa0, 0x7a, 0xfa, 0x22, 0x8f, + 0x11, 0x09, 0x6d, 0x8a, 0x7f, 0xd0, 0x72, 0xe5, 0xd1, 0x7b, 0x1f, 0xf3, 0x78, 0x01, 0xdb, 0xfe, + 0xff, 0x33, 0x0c, 0x53, 0xe8, 0xe2, 0x9d, 0x5c, 0xa7, 0x3e, 0xc1, 0x80, 0x26, 0x08, 0xd3, 0x4c, + 0xd5, 0xc2, 0x6a, 0xc5, 0xe1, 0xc9, 0xe8, 0x5b, 0x06, 0x01, 0x79, 0x5b, 0xf7, 0xaf, 0xe8, 0xd5, + 0x12, 0xb7, 0x48, 0xa0, 0xde, 0x85, 0xd8, 0xf1, 0xe2, 0x75, 0xe3, 0x7a, 0xff, 0xd4, 0x8b, 0x5e, + 0xff, 0x69, 0x17, 0xbd, 0x5d, 0xb5, 0xe8, 0xf1, 0x40, 0x19, 0xaf, 0x69, 0x8b, 0xde, 0xcb, 0x5f, + 0xed, 0x06, 0x5f, 0xf6, 0x6a, 0x37, 0xf4, 0xed, 0x56, 0xbb, 0xe1, 0x17, 0x5c, 0xed, 0xee, 0xc3, + 0xc4, 0x26, 0xa5, 0x0d, 0xed, 0xd2, 0x65, 0x24, 0xde, 0x3d, 0x3d, 0x8a, 0xe6, 0xb4, 0xac, 0x9b, + 0x97, 0x04, 0x55, 0xee, 0xaa, 0x09, 0x7f, 0x3b, 0xab, 0xe6, 0xe8, 0x4b, 0x5e, 0x35, 0xc7, 0xbe, + 0xcd, 0xaa, 0x99, 0x5a, 0xfa, 0xc6, 0xcf, 0xbc, 0xf4, 0x7d, 0x9b, 0xd5, 0xea, 0x63, 0xf4, 0x6b, + 0xac, 0x56, 0x57, 0x85, 0x27, 0x8a, 0xe6, 0xfa, 0xb1, 0xea, 0x87, 0xd2, 0xed, 0x1b, 0xff, 0x66, + 0xb0, 0x6d, 0x3f, 0x90, 0xd7, 0xe7, 0xf8, 0xb7, 0xb5, 0x80, 0xde, 0x8c, 0x3a, 0xbd, 0x7a, 0x33, + 0x30, 0x24, 0xde, 0x0d, 0x8a, 0x35, 0x2e, 0xa9, 0xf1, 0xd9, 0xb2, 0xdc, 0xfa, 0xf7, 0x05, 0x7e, + 0xc1, 0xf9, 0xbf, 0xe3, 0x52, 0xf9, 0x6d, 0x2e, 0x1d, 0x7f, 0x2b, 0x8e, 0x27, 0x20, 0x62, 0x1f, + 0x04, 0x4e, 0xfd, 0x49, 0x7c, 0xeb, 0xfb, 0x43, 0xf6, 0x9d, 0xeb, 0x05, 0x42, 0x37, 0x9e, 0x51, + 0x92, 0xd2, 0x0b, 0xf7, 0xee, 0xc9, 0x05, 0x40, 0x84, 0x55, 0xe0, 0x60, 0x73, 0x01, 0xd0, 0x09, + 0xd0, 0xef, 0xee, 0x9c, 0x65, 0xf3, 0xe7, 0xf0, 0x99, 0x2d, 0x78, 0x27, 0xfd, 0xa0, 0x1b, 0xf5, + 0xf0, 0xf8, 0x41, 0xb7, 0x2e, 0xc6, 0xf8, 0x69, 0xf7, 0x2e, 0x5c, 0xb2, 0xe9, 0x91, 0xff, 0x94, + 0xbe, 0x5c, 0xb6, 0x5f, 0xc1, 0x45, 0x93, 0x21, 0x7f, 0xfa, 0xc3, 0x23, 0xbe, 0x7f, 0x9c, 0x1d, + 0x27, 0x5e, 0x10, 0xf0, 0x38, 0xf1, 0x3c, 0xdc, 0x34, 0xfb, 0x53, 0xdf, 0x37, 0xb0, 0xcc, 0xf2, + 0x61, 0xce, 0x64, 0x5e, 0x69, 0x34, 0x30, 0x4d, 0x66, 0xdd, 0x6d, 0x39, 0x5e, 0x44, 0xb6, 0x60, + 0x54, 0xfb, 0x99, 0x30, 0x3b, 0x68, 0x25, 0x42, 0xa7, 0x89, 0x01, 0x46, 0x1c, 0xd0, 0x18, 0x6c, + 0x51, 0x28, 0x27, 0xc5, 0xc3, 0x44, 0xa6, 0xd7, 0xb9, 0x00, 0xe3, 0xda, 0x4f, 0x65, 0xfe, 0xc4, + 0x8f, 0x5f, 0xab, 0xc1, 0x14, 0x98, 0x49, 0x62, 0xd5, 0x61, 0x36, 0x4b, 0x68, 0x18, 0x22, 0xea, + 0x39, 0x59, 0x8e, 0x83, 0x4d, 0x75, 0xf7, 0xdc, 0x3b, 0x97, 0x17, 0x68, 0xca, 0xfa, 0xff, 0xfb, + 0xe1, 0x92, 0x18, 0x8c, 0x97, 0x39, 0xe2, 0xe4, 0x47, 0x30, 0xaa, 0x8d, 0xb1, 0x10, 0xfa, 0x55, + 0x19, 0xff, 0x33, 0x6f, 0x2e, 0x70, 0xf3, 0x48, 0x1b, 0x01, 0xb5, 0xc4, 0x70, 0xaf, 0xf6, 0xd8, + 0x3a, 0x4b, 0xd2, 0x84, 0x09, 0x73, 0xa0, 0x85, 0x85, 0xe8, 0x7a, 0x66, 0x25, 0x26, 0xaa, 0x8c, + 0x26, 0xdd, 0xa8, 0x65, 0x0e, 0xf7, 0x6a, 0x8f, 0x9d, 0xe0, 0x4d, 0xbe, 0x81, 0xf3, 0xa9, 0x51, + 0x16, 0x86, 0xbf, 0x57, 0x33, 0x2b, 0x4c, 0x61, 0x73, 0xd3, 0x6e, 0x80, 0xe0, 0xdc, 0x6a, 0xd3, + 0x95, 0x90, 0x06, 0x8c, 0xe9, 0x03, 0x2f, 0x4c, 0x58, 0xd7, 0x3a, 0x88, 0x92, 0x23, 0x72, 0xe5, + 0x4e, 0xc8, 0x12, 0xc7, 0xfe, 0xb9, 0x69, 0xae, 0x36, 0x90, 0x87, 0x61, 0x90, 0xff, 0x66, 0x4b, + 0xc0, 0x76, 0x40, 0x43, 0xea, 0xd5, 0xa9, 0xe1, 0x25, 0xfe, 0x2d, 0x97, 0x80, 0x7f, 0x55, 0x80, + 0x52, 0x16, 0xdf, 0x2a, 0xf5, 0x1a, 0x64, 0x1b, 0x8a, 0xc9, 0x8a, 0xc4, 0xac, 0xb6, 0x54, 0xc0, + 0xde, 0xdc, 0x26, 0xad, 0xf6, 0xd8, 0x29, 0x6a, 0xb2, 0x09, 0xe7, 0x35, 0x98, 0x30, 0xd4, 0xf6, + 0x9e, 0xc6, 0x50, 0xcb, 0x46, 0x21, 0x45, 0xaa, 0xdb, 0xb9, 0x57, 0x71, 0x67, 0x5c, 0xf2, 0x8f, + 0x1c, 0xd7, 0x63, 0x8a, 0xae, 0x16, 0x6f, 0x0a, 0x62, 0xa8, 0x90, 0x0d, 0xb7, 0xdc, 0x22, 0x54, + 0xbe, 0x6a, 0x51, 0x28, 0xd6, 0x87, 0xb8, 0x82, 0x0b, 0x7b, 0x1f, 0x7f, 0x23, 0xab, 0x98, 0x5d, + 0x85, 0x81, 0x9d, 0xf5, 0xea, 0x62, 0x45, 0xbc, 0xb8, 0xe5, 0x71, 0x1a, 0x9a, 0x61, 0xad, 0xee, + 0xd8, 0xbc, 0xc0, 0xfa, 0x00, 0xc8, 0x0a, 0x8d, 0x44, 0xc4, 0x78, 0x45, 0x77, 0x03, 0x86, 0x04, + 0x48, 0x50, 0xa2, 0x9b, 0x5d, 0x53, 0x60, 0xc9, 0x32, 0x6b, 0x5b, 0x9e, 0x13, 0x9a, 0xd4, 0x09, + 0xb5, 0x8d, 0xf9, 0x5d, 0x18, 0x0e, 0x04, 0x4c, 0xec, 0xcb, 0x13, 0x2a, 0x6f, 0x07, 0x82, 0xb9, + 0x6d, 0x5c, 0xe2, 0xd8, 0xea, 0x2f, 0x6b, 0x1d, 0x63, 0xaa, 0x6c, 0xad, 0x2d, 0x2d, 0x32, 0xa9, + 0x0a, 0x61, 0xc9, 0xe1, 0xb8, 0x83, 0xfe, 0xe8, 0x11, 0xd5, 0xdf, 0xdb, 0xa2, 0x68, 0xf0, 0x23, + 0x17, 0x91, 0x84, 0x34, 0x14, 0xeb, 0x4d, 0x15, 0xa1, 0x25, 0x83, 0x5b, 0x5e, 0xfe, 0x89, 0x4d, + 0x8c, 0x3d, 0xb3, 0x82, 0xae, 0x37, 0x2f, 0xa3, 0x11, 0xff, 0xa2, 0x00, 0x37, 0xf8, 0x3e, 0x9f, + 0xe2, 0x79, 0xdf, 0x0f, 0xf4, 0x70, 0xa2, 0x7b, 0x30, 0x56, 0xa7, 0x41, 0x24, 0x0d, 0x4e, 0xca, + 0x32, 0x9e, 0x9d, 0x05, 0x2f, 0x7e, 0x25, 0x9e, 0x61, 0xa1, 0x1a, 0xad, 0x6b, 0x1e, 0x8f, 0x1f, + 0xc1, 0x18, 0x3b, 0x47, 0x04, 0xb4, 0x1e, 0xd5, 0xda, 0x81, 0xcc, 0x81, 0x85, 0xe4, 0x3a, 0x5c, + 0x27, 0x97, 0xf0, 0xdd, 0xa0, 0x69, 0x39, 0x30, 0xcb, 0xdb, 0xcf, 0x86, 0x45, 0xa4, 0x3e, 0xf4, + 0x55, 0xa3, 0x17, 0x61, 0x44, 0xc1, 0xd4, 0x45, 0x20, 0x1f, 0x6c, 0x03, 0x7f, 0xef, 0x4d, 0xfe, + 0xb6, 0xba, 0xae, 0x18, 0xc4, 0x74, 0xac, 0x0a, 0xbe, 0x70, 0x7c, 0xc7, 0x55, 0x84, 0x34, 0x88, + 0xbe, 0xd3, 0x2a, 0xe2, 0xe8, 0x4a, 0x67, 0xa9, 0xc2, 0xc0, 0xdf, 0x9b, 0x3f, 0x8d, 0xa0, 0xbe, + 0xe3, 0x2a, 0x98, 0xa0, 0xbe, 0xbb, 0x2a, 0xa8, 0x0c, 0x43, 0xc5, 0xbf, 0x88, 0x54, 0x25, 0xcb, + 0xe9, 0x4a, 0xa4, 0x15, 0x3f, 0x41, 0xd1, 0x71, 0x3c, 0x28, 0xcc, 0x71, 0x61, 0xfd, 0x12, 0xaa, + 0x61, 0x02, 0xfb, 0x6e, 0xab, 0xf9, 0x7b, 0x05, 0x1e, 0x14, 0xab, 0xba, 0xa5, 0x25, 0x1d, 0xf5, + 0x1e, 0xfb, 0x9a, 0x9f, 0x82, 0xb6, 0xb4, 0x3c, 0x74, 0xbd, 0x86, 0xee, 0xa7, 0xe0, 0xb4, 0xa3, + 0x43, 0x15, 0x34, 0xfa, 0x89, 0xeb, 0x35, 0xec, 0x24, 0x36, 0x79, 0x0f, 0xc6, 0x35, 0x90, 0x52, + 0x37, 0x79, 0xe6, 0x0d, 0x9d, 0xdc, 0x6d, 0xd8, 0x26, 0xa6, 0xf5, 0x37, 0x05, 0x98, 0xcc, 0x48, + 0x87, 0x8d, 0xd6, 0x18, 0x3c, 0xc6, 0xa9, 0x95, 0x56, 0xa4, 0xb4, 0xc2, 0xf8, 0x1c, 0xc6, 0x2e, + 0xaf, 0x10, 0x31, 0xe7, 0x80, 0x96, 0xba, 0x5b, 0x5b, 0xad, 0x72, 0xd2, 0x75, 0xeb, 0xe8, 0x24, + 0x04, 0x88, 0x5b, 0x22, 0xec, 0xde, 0x55, 0xa6, 0x93, 0x6b, 0x79, 0xbf, 0x5f, 0x4a, 0xe2, 0x71, + 0xad, 0x1a, 0xeb, 0xb7, 0x7a, 0xe1, 0x42, 0x46, 0xff, 0xab, 0x34, 0xfa, 0xdb, 0x10, 0x41, 0x22, + 0xfb, 0x7a, 0xdf, 0x2f, 0x29, 0xfb, 0xba, 0xf5, 0xef, 0x7a, 0xe1, 0xc2, 0x6e, 0x2b, 0xc4, 0xe7, + 0x66, 0x6b, 0xde, 0x53, 0xea, 0x45, 0x7e, 0xf0, 0x1c, 0x9f, 0xc8, 0x90, 0xb7, 0x61, 0x60, 0x95, + 0x36, 0x9b, 0xbe, 0x98, 0xff, 0x97, 0xe5, 0x9e, 0x96, 0xc4, 0x46, 0xa4, 0xd5, 0x1e, 0x9b, 0x63, + 0x93, 0xf7, 0x60, 0x64, 0x95, 0x3a, 0x41, 0xb4, 0x4f, 0x1d, 0x79, 0xe6, 0x92, 0xf9, 0x40, 0x34, + 0x12, 0x81, 0xb0, 0xda, 0x63, 0xc7, 0xd8, 0x64, 0x1e, 0xfa, 0xb7, 0x7d, 0xef, 0x40, 0xbd, 0xc9, + 0xcf, 0xa9, 0x90, 0xe1, 0xac, 0xf6, 0xd8, 0x88, 0x4b, 0x36, 0x60, 0xbc, 0x72, 0x40, 0xbd, 0x68, + 0x83, 0x46, 0x4e, 0xc3, 0x89, 0x1c, 0xa1, 0x9b, 0xdf, 0xc8, 0x23, 0x36, 0x90, 0x57, 0x7b, 0x6c, + 0x93, 0x9a, 0x7c, 0x00, 0x43, 0x2b, 0xbe, 0xdf, 0xd8, 0x7f, 0x4e, 0x85, 0xbe, 0x5d, 0xce, 0x63, + 0x24, 0xd0, 0x56, 0x7b, 0x6c, 0x49, 0xb1, 0x30, 0x00, 0x7d, 0x1b, 0xe1, 0x81, 0x75, 0x5c, 0x80, + 0xd2, 0x92, 0xff, 0xcc, 0xcb, 0x94, 0xea, 0x0f, 0x4c, 0xa9, 0x4a, 0xf6, 0x19, 0xf8, 0x09, 0xb9, + 0xbe, 0x05, 0xfd, 0xdb, 0xae, 0x77, 0x90, 0xd0, 0x65, 0x33, 0xe8, 0x18, 0x16, 0x8a, 0xc7, 0xf5, + 0x0e, 0xc8, 0xba, 0x3c, 0x44, 0x08, 0x63, 0x69, 0x9f, 0x71, 0x72, 0xc9, 0xa0, 0xd6, 0xb1, 0xe3, + 0xc3, 0x02, 0xff, 0x2d, 0x3b, 0xf8, 0x3a, 0xcc, 0xe4, 0xd4, 0x2b, 0x1e, 0xd9, 0xb3, 0xbe, 0xf5, + 0xa3, 0x66, 0xf6, 0x1a, 0x4c, 0x67, 0x8e, 0x5f, 0x0a, 0xf1, 0x1f, 0x67, 0x4d, 0x44, 0xde, 0xf3, + 0x12, 0x0c, 0xc9, 0x7c, 0x56, 0xdc, 0x78, 0x25, 0x7f, 0xe2, 0x6b, 0x31, 0xf9, 0xa1, 0xca, 0xf0, + 0x28, 0xf2, 0x7b, 0xdc, 0xd3, 0xc2, 0x51, 0xf1, 0xcf, 0xe9, 0xfd, 0x6f, 0xf1, 0xd1, 0x28, 0x5e, + 0xac, 0xce, 0x55, 0x3f, 0x8c, 0x3c, 0xe5, 0x86, 0x6c, 0xab, 0xdf, 0xe4, 0x16, 0x14, 0x65, 0x52, + 0x0c, 0x91, 0x7d, 0x47, 0xe4, 0x8a, 0xb7, 0x53, 0x70, 0xf2, 0x2e, 0xcc, 0x24, 0x61, 0xb2, 0x97, + 0xfc, 0xb9, 0x5f, 0x5e, 0xb1, 0xf5, 0x97, 0xbd, 0x18, 0x31, 0xbc, 0xc3, 0xbc, 0x66, 0xd2, 0xdd, + 0xaa, 0x0a, 0x69, 0xf5, 0x6e, 0x55, 0xc9, 0x1c, 0x8c, 0x6c, 0x55, 0x8d, 0xa4, 0x60, 0x76, 0x0c, + 0x60, 0xcd, 0x66, 0x5d, 0xa8, 0x04, 0xf5, 0x43, 0x37, 0xa2, 0xf5, 0xa8, 0x1d, 0x88, 0x55, 0xd8, + 0x4e, 0xc1, 0x89, 0x05, 0x63, 0x2b, 0x4d, 0x77, 0xbf, 0x2e, 0x99, 0x71, 0x11, 0x18, 0x30, 0xf2, + 0x2a, 0x4c, 0xac, 0x79, 0x61, 0xe4, 0x34, 0x9b, 0x1b, 0x34, 0x3a, 0xf4, 0x1b, 0x22, 0x67, 0xaa, + 0x9d, 0x80, 0xb2, 0x7a, 0x17, 0x7d, 0x2f, 0x72, 0x5c, 0x8f, 0x06, 0x76, 0xdb, 0x8b, 0xdc, 0x23, + 0x2a, 0xfa, 0x9e, 0x82, 0x93, 0xb7, 0x60, 0x5a, 0xc1, 0xb6, 0x82, 0xfa, 0x21, 0x0d, 0xa3, 0x00, + 0x53, 0x05, 0x62, 0xd8, 0x24, 0x3b, 0xbb, 0x10, 0x6b, 0x68, 0xfa, 0xed, 0xc6, 0xb2, 0xf7, 0xd4, + 0x0d, 0x7c, 0x0f, 0x33, 0x7c, 0x0c, 0x8b, 0x1a, 0x12, 0x70, 0xeb, 0x8f, 0x86, 0x33, 0x3f, 0xdb, + 0x6f, 0x33, 0x07, 0xbf, 0x80, 0xb1, 0x45, 0xa7, 0xe5, 0xec, 0xbb, 0x4d, 0x37, 0x72, 0x55, 0x4e, + 0xb5, 0xb7, 0xbb, 0x7c, 0xf3, 0x32, 0x4d, 0x0a, 0x6d, 0xe8, 0xc4, 0xb6, 0xc1, 0x6a, 0xf6, 0xaf, + 0x07, 0x61, 0x3a, 0x13, 0x8f, 0xdc, 0x14, 0xc9, 0xd7, 0xd4, 0xba, 0x2a, 0x52, 0x86, 0xd9, 0x49, + 0x30, 0x1b, 0x4b, 0x04, 0x2d, 0x36, 0xa9, 0xe3, 0xb5, 0x45, 0xc2, 0x30, 0xdb, 0x80, 0xb1, 0xb1, + 0x64, 0x7a, 0x83, 0xc6, 0x0c, 0xbd, 0xc8, 0xed, 0x04, 0x94, 0x5c, 0x85, 0x51, 0x06, 0x91, 0xac, + 0xfa, 0xf9, 0x7b, 0x47, 0x0d, 0xc4, 0x38, 0x6d, 0xfa, 0x0d, 0xaa, 0x71, 0x1a, 0xe0, 0x9c, 0x4c, + 0x28, 0xe3, 0xc4, 0x20, 0x92, 0xd3, 0x20, 0xe7, 0xa4, 0x81, 0xc8, 0x2b, 0x30, 0x5e, 0x69, 0xb5, + 0x34, 0x46, 0x98, 0x29, 0xcc, 0x36, 0x81, 0xe4, 0x0a, 0x40, 0xa5, 0xd5, 0x92, 0x6c, 0x30, 0x0b, + 0x98, 0xad, 0x41, 0xc8, 0xed, 0x38, 0xe8, 0x9b, 0xc6, 0x0a, 0xef, 0x43, 0xec, 0x8c, 0x12, 0x26, + 0x57, 0x15, 0x21, 0x4b, 0x30, 0x05, 0x2e, 0xd7, 0x04, 0x98, 0x7c, 0x08, 0x17, 0x13, 0x4e, 0x28, + 0x5a, 0x05, 0x78, 0x57, 0x61, 0xe7, 0x23, 0x90, 0x77, 0xe0, 0x42, 0xa2, 0x50, 0x56, 0x87, 0xd7, + 0x12, 0x76, 0x4e, 0x29, 0x79, 0x1f, 0x4a, 0x89, 0xc7, 0xef, 0x71, 0xa5, 0x78, 0x05, 0x61, 0xe7, + 0x96, 0xb3, 0xaf, 0x2b, 0xf1, 0x18, 0x4e, 0x54, 0x89, 0xb7, 0xad, 0x76, 0x76, 0x21, 0x59, 0x85, + 0x72, 0xa6, 0x63, 0x8f, 0x56, 0x31, 0x66, 0x37, 0xb3, 0xbb, 0xa1, 0x91, 0x05, 0x98, 0xcb, 0x44, + 0x91, 0xcd, 0xc0, 0x9c, 0x67, 0x76, 0x47, 0x1c, 0x32, 0x0f, 0x53, 0xb1, 0x83, 0x93, 0xd6, 0x04, + 0x4c, 0x77, 0x66, 0x67, 0x96, 0x91, 0x37, 0xcc, 0x10, 0x07, 0xbc, 0x32, 0xcc, 0x76, 0x66, 0xa7, + 0x0b, 0xac, 0x93, 0x02, 0xcc, 0x65, 0x6e, 0x94, 0x52, 0x9f, 0x9f, 0x4d, 0x2a, 0x8e, 0xda, 0x5a, + 0x70, 0x0b, 0xfa, 0x51, 0xc1, 0xe7, 0xc6, 0x6e, 0xe9, 0x78, 0x8b, 0xf4, 0x9c, 0x15, 0x2b, 0xb5, + 0x11, 0x87, 0xac, 0xa8, 0xcb, 0xcd, 0x3e, 0x34, 0xc5, 0xdc, 0x49, 0x2a, 0x50, 0x19, 0x95, 0xeb, + 0x97, 0x9c, 0xf2, 0x3a, 0xf3, 0xdb, 0xdc, 0x23, 0xfd, 0x65, 0x01, 0xca, 0x5d, 0xf4, 0x03, 0xd5, + 0xa7, 0xc2, 0x29, 0xfa, 0xf4, 0x40, 0xf5, 0x89, 0x3f, 0x14, 0x9e, 0x3f, 0x9d, 0x0e, 0xf2, 0xb2, + 0xbb, 0xf5, 0x37, 0x05, 0x20, 0x69, 0x3d, 0x94, 0x7c, 0x1f, 0x46, 0xaa, 0xd5, 0x55, 0xc3, 0xbd, + 0x31, 0x75, 0xbd, 0x15, 0x63, 0x90, 0xbb, 0xa7, 0xf2, 0x67, 0xd4, 0xbd, 0x19, 0x3f, 0x49, 0x39, + 0x51, 0xf6, 0x75, 0x74, 0xa2, 0x4c, 0xb9, 0x50, 0x2e, 0x67, 0x78, 0x05, 0xf6, 0x77, 0xf1, 0x0a, + 0x4c, 0xbb, 0xfc, 0x59, 0x4b, 0x50, 0xca, 0x53, 0x65, 0x71, 0x85, 0xe3, 0xa1, 0xd2, 0xb4, 0x2b, + 0x3a, 0xbe, 0xc2, 0x99, 0x60, 0xeb, 0x1d, 0xb8, 0xa0, 0xa8, 0x79, 0x0e, 0x16, 0x2d, 0x1c, 0x83, + 0x38, 0xff, 0xaa, 0xb0, 0x0f, 0x31, 0xc0, 0xfa, 0x8b, 0xfe, 0x14, 0x61, 0xb5, 0x7d, 0x74, 0xe4, + 0x04, 0xcf, 0x49, 0xc5, 0x24, 0xec, 0xeb, 0x7a, 0xe4, 0x58, 0xe8, 0xff, 0xd9, 0x71, 0xb9, 0x47, + 0xe3, 0xce, 0xf6, 0x05, 0xd4, 0x30, 0xbc, 0x3a, 0xe5, 0x97, 0x7b, 0xbd, 0x3c, 0x56, 0x95, 0x01, + 0x24, 0x7b, 0x30, 0x2e, 0xf6, 0x6e, 0xfc, 0x2d, 0xbf, 0xb1, 0xbb, 0xc9, 0x6f, 0xcc, 0x68, 0xde, + 0x6d, 0x83, 0x84, 0xcf, 0x46, 0x93, 0x0d, 0xf9, 0x02, 0x26, 0xa4, 0xa6, 0x26, 0x18, 0x73, 0x77, + 0xac, 0x7b, 0x9d, 0x19, 0x9b, 0x34, 0x9c, 0x73, 0x82, 0x11, 0x6b, 0xb2, 0x5c, 0xec, 0x38, 0xe7, + 0x81, 0xd3, 0x34, 0xd9, 0x20, 0x11, 0x4d, 0x36, 0x60, 0xb3, 0x9f, 0x02, 0x49, 0xf7, 0xab, 0xdb, + 0xe7, 0x34, 0xae, 0x7d, 0x4e, 0xb3, 0x15, 0x98, 0xcc, 0xe8, 0xc0, 0x99, 0x58, 0x7c, 0x0a, 0x24, + 0xdd, 0xd2, 0xb3, 0x70, 0xb0, 0x6e, 0xc2, 0xab, 0x4a, 0x04, 0x6a, 0x36, 0x18, 0x3c, 0xa5, 0x09, + 0xff, 0x37, 0x7b, 0xa1, 0xdc, 0x05, 0x95, 0xfc, 0x61, 0x21, 0x29, 0x6d, 0x3e, 0x1b, 0xdf, 0x4b, + 0x4a, 0x3b, 0x9b, 0x3e, 0x43, 0xec, 0x0b, 0xef, 0xff, 0xf4, 0xaf, 0x5e, 0xf8, 0xe4, 0x91, 0x1e, + 0xb2, 0xb3, 0x4b, 0xab, 0x5f, 0x97, 0x96, 0x0d, 0x53, 0xc6, 0x99, 0xed, 0x34, 0x9b, 0xd7, 0x15, + 0x00, 0x91, 0xb1, 0x75, 0xdd, 0x3f, 0x10, 0x7a, 0xa2, 0x06, 0xb1, 0xee, 0xc3, 0x74, 0x82, 0xa7, + 0xb8, 0x56, 0xf8, 0x3e, 0xa8, 0x67, 0xf7, 0xc8, 0xb4, 0x6f, 0xe1, 0xfc, 0x2f, 0x8e, 0xcb, 0xe3, + 0x4c, 0xa5, 0xbf, 0x1d, 0xa7, 0x03, 0x90, 0x7f, 0x59, 0x1b, 0xfa, 0xc5, 0x48, 0xa5, 0xa9, 0xc7, + 0x31, 0x22, 0xf7, 0x60, 0x90, 0x43, 0x12, 0x41, 0xb7, 0x75, 0x6c, 0xb1, 0x26, 0x08, 0x44, 0x6b, + 0x1a, 0x1f, 0x09, 0xe3, 0x8f, 0x4a, 0x1c, 0xd4, 0xc2, 0xda, 0xe5, 0x49, 0x68, 0x62, 0xb0, 0x0a, + 0xec, 0xdd, 0x5f, 0x89, 0x83, 0x6f, 0x48, 0x2f, 0x16, 0x89, 0xe7, 0xf9, 0xcf, 0x9a, 0xb4, 0xc1, + 0x13, 0xfc, 0x2d, 0x8c, 0x09, 0x2f, 0x96, 0x7e, 0x87, 0x31, 0x40, 0x32, 0xeb, 0x13, 0x98, 0x66, + 0x9a, 0x42, 0x90, 0xac, 0x0f, 0x53, 0x4f, 0x30, 0x98, 0xf9, 0xcc, 0xc0, 0x61, 0x20, 0x7c, 0x66, + 0x20, 0x0a, 0xad, 0x75, 0xb8, 0xc8, 0xad, 0x92, 0x7a, 0x97, 0xe2, 0x4b, 0x8c, 0x01, 0xfc, 0x9d, + 0x78, 0x62, 0x9a, 0xd1, 0x7b, 0x8e, 0x67, 0x7d, 0x8c, 0x6f, 0x98, 0xc4, 0x24, 0x75, 0x7d, 0x2f, + 0x36, 0x41, 0x9e, 0xee, 0xd1, 0xf3, 0xff, 0x09, 0x73, 0x95, 0x56, 0x8b, 0x7a, 0x8d, 0x98, 0x70, + 0x27, 0x70, 0x4e, 0x19, 0x92, 0x82, 0x54, 0x60, 0x00, 0xb1, 0xd5, 0x0d, 0xb0, 0x68, 0x6e, 0x46, + 0x73, 0x10, 0x4f, 0x44, 0x61, 0xc5, 0x0a, 0x38, 0xa5, 0xd5, 0x80, 0x99, 0x6a, 0x7b, 0xff, 0xc8, + 0x8d, 0xf0, 0x71, 0x02, 0x86, 0x75, 0x91, 0x75, 0xaf, 0xc9, 0xbc, 0x61, 0x5c, 0x18, 0x37, 0xe3, + 0xb7, 0x2e, 0xf8, 0xbe, 0x41, 0x84, 0x7a, 0x79, 0x7a, 0xef, 0x76, 0x4c, 0x8a, 0xe6, 0x17, 0x5e, + 0x0b, 0x16, 0x8b, 0xdc, 0x62, 0xd6, 0x24, 0x9c, 0xd7, 0x6f, 0xd3, 0xf8, 0x0c, 0x99, 0x86, 0x49, + 0xf3, 0x96, 0x8c, 0x83, 0xbf, 0x86, 0x29, 0x6e, 0x04, 0xe7, 0x51, 0xd4, 0xe7, 0xe3, 0x80, 0xe1, + 0xbd, 0x7b, 0xf3, 0x89, 0x57, 0x11, 0xe8, 0x2c, 0xad, 0xf2, 0x63, 0xec, 0xcd, 0xf3, 0x77, 0xa8, + 0x4f, 0xe7, 0x8d, 0xbb, 0xd8, 0xde, 0xbd, 0xf9, 0x85, 0x21, 0x11, 0x8d, 0x96, 0x71, 0xe7, 0xc3, + 0xff, 0x9d, 0x70, 0x9f, 0xc7, 0xd0, 0x07, 0xab, 0xd4, 0xc1, 0x67, 0x4a, 0xd9, 0x0f, 0xc8, 0x27, + 0xa0, 0xd7, 0x6d, 0x48, 0xb3, 0x81, 0xdb, 0xb0, 0xfe, 0xb4, 0x00, 0x37, 0xb9, 0x32, 0x96, 0x4d, + 0x87, 0x57, 0x66, 0x39, 0xc4, 0xe4, 0x5d, 0xe0, 0x09, 0xfe, 0x85, 0xc6, 0x6b, 0x89, 0x96, 0x77, + 0xe2, 0xc4, 0x09, 0x48, 0x05, 0xc6, 0xf4, 0x87, 0x3e, 0xa7, 0x8b, 0xf6, 0x67, 0x8f, 0x1e, 0x3d, + 0x76, 0xd4, 0xe3, 0x9f, 0x27, 0x70, 0x69, 0xf9, 0x1b, 0x36, 0x21, 0xc4, 0xee, 0x24, 0x4e, 0x0e, + 0xf1, 0x03, 0xe5, 0x73, 0x3b, 0x62, 0xc6, 0x98, 0xc7, 0xfa, 0x24, 0x98, 0x9d, 0x91, 0xe5, 0x06, + 0xa7, 0xd4, 0xf7, 0x11, 0xdb, 0x80, 0x59, 0x7f, 0x51, 0x80, 0xb9, 0xec, 0xda, 0xc4, 0xc2, 0xb2, + 0x06, 0xe7, 0x17, 0x1d, 0xcf, 0xf7, 0xdc, 0xba, 0xd3, 0xac, 0xd6, 0x0f, 0x69, 0xa3, 0xad, 0x62, + 0xd6, 0xaa, 0x55, 0xe6, 0x80, 0x7a, 0x92, 0x5c, 0xa2, 0xd8, 0x69, 0x2a, 0x76, 0x3a, 0xc4, 0xb7, + 0x22, 0x7c, 0xed, 0x6d, 0xd2, 0x40, 0xf1, 0xe3, 0x2d, 0xcb, 0x29, 0x25, 0x77, 0xa5, 0xb5, 0xbf, + 0xb1, 0xeb, 0xb9, 0x91, 0x22, 0xe2, 0x66, 0x9e, 0xac, 0x22, 0xeb, 0xdf, 0x14, 0xe0, 0x22, 0xa6, + 0xa9, 0x32, 0x12, 0x5f, 0xc6, 0xa1, 0x9b, 0x65, 0xf4, 0xe1, 0x82, 0xf1, 0xf6, 0xc5, 0xc0, 0x36, + 0xc3, 0x10, 0x93, 0x37, 0xa0, 0xbf, 0x2a, 0xdd, 0xcd, 0x26, 0x12, 0x59, 0x85, 0x05, 0x05, 0x2b, + 0xb7, 0x11, 0x8b, 0xed, 0x39, 0x4b, 0x34, 0xac, 0x53, 0x0f, 0xd3, 0x3f, 0x73, 0xab, 0x83, 0x06, + 0x89, 0x03, 0x48, 0xf5, 0xe7, 0x05, 0x90, 0x1a, 0x30, 0x03, 0x48, 0x59, 0x4f, 0x79, 0x92, 0xaa, + 0x64, 0x87, 0xc4, 0x20, 0x7d, 0x9c, 0xca, 0x16, 0xcd, 0xf7, 0x81, 0x0b, 0x59, 0x3d, 0x63, 0x0a, + 0x7a, 0x22, 0x11, 0x74, 0x7e, 0xa8, 0xe4, 0x6d, 0x78, 0xc5, 0xc0, 0xad, 0x34, 0x9b, 0xfe, 0x33, + 0xda, 0xd8, 0x0e, 0xfc, 0x23, 0x3f, 0x32, 0x92, 0xf4, 0x88, 0x74, 0xe9, 0xf1, 0x7d, 0x8e, 0x98, + 0x95, 0x09, 0xb0, 0xf5, 0x7f, 0xc0, 0x8d, 0x2e, 0x1c, 0x45, 0xa7, 0xaa, 0x70, 0xde, 0x49, 0x94, + 0x49, 0xbf, 0xa1, 0x1b, 0x59, 0xfd, 0x4a, 0x32, 0x0a, 0xed, 0x34, 0xfd, 0xad, 0x1d, 0x23, 0xc3, + 0x32, 0x29, 0xc1, 0xd4, 0xb6, 0xbd, 0xb5, 0xb4, 0xbb, 0xb8, 0x53, 0xdb, 0xf9, 0x62, 0x7b, 0xb9, + 0xb6, 0xbb, 0xf9, 0x70, 0x73, 0xeb, 0xd1, 0x26, 0x8f, 0x35, 0x6e, 0x94, 0xec, 0x2c, 0x57, 0x36, + 0x8a, 0x05, 0x32, 0x05, 0x45, 0x03, 0xbc, 0xbc, 0xbb, 0x50, 0xec, 0xbd, 0xf5, 0xb5, 0x91, 0x39, + 0x98, 0xcc, 0x41, 0xa9, 0xba, 0xbb, 0xbd, 0xbd, 0x65, 0x2b, 0xae, 0x7a, 0xa4, 0xf3, 0x69, 0x38, + 0x6f, 0x94, 0xde, 0xb7, 0x97, 0x97, 0x8b, 0x05, 0xd6, 0x14, 0x03, 0xbc, 0x6d, 0x2f, 0x6f, 0xac, + 0xed, 0x6e, 0x14, 0x7b, 0x6f, 0xd5, 0xf4, 0x07, 0x77, 0xe4, 0x12, 0xcc, 0x2c, 0x2d, 0xef, 0xad, + 0x2d, 0x2e, 0x67, 0xf1, 0x9e, 0x82, 0xa2, 0x5e, 0xb8, 0xb3, 0xb5, 0xb3, 0xcd, 0x59, 0xeb, 0xd0, + 0x47, 0xcb, 0x0b, 0x95, 0xdd, 0x9d, 0xd5, 0xcd, 0x62, 0x9f, 0xd5, 0x3f, 0xdc, 0x5b, 0xec, 0xbd, + 0xf5, 0x23, 0xe3, 0x35, 0x1e, 0x6b, 0xbe, 0x40, 0xdf, 0xad, 0x56, 0x56, 0xf2, 0xab, 0xe0, 0xa5, + 0x1b, 0xf7, 0x2b, 0xc5, 0x02, 0xb9, 0x0c, 0x17, 0x0d, 0xe8, 0x76, 0xa5, 0x5a, 0x7d, 0xb4, 0x65, + 0x2f, 0xad, 0x2f, 0x57, 0xab, 0xc5, 0xde, 0x5b, 0x7b, 0x46, 0xd0, 0x3c, 0x56, 0xc3, 0xc6, 0xfd, + 0x4a, 0xcd, 0x5e, 0xfe, 0x6c, 0x77, 0xcd, 0x5e, 0x5e, 0x4a, 0xd7, 0x60, 0x94, 0x7e, 0xb1, 0x5c, + 0x2d, 0x16, 0xc8, 0x24, 0x9c, 0x33, 0xa0, 0x9b, 0x5b, 0xc5, 0xde, 0x5b, 0xaf, 0x8a, 0xb8, 0x6a, + 0x64, 0x02, 0x60, 0x69, 0xb9, 0xba, 0xb8, 0xbc, 0xb9, 0xb4, 0xb6, 0xb9, 0x52, 0xec, 0x21, 0xe3, + 0x30, 0x52, 0x51, 0x3f, 0x0b, 0xb7, 0xde, 0x87, 0x73, 0x89, 0xa3, 0x3d, 0xc3, 0x50, 0x87, 0xe2, + 0x62, 0x0f, 0x8a, 0x5f, 0xfe, 0x44, 0xfb, 0x2a, 0x3f, 0xa5, 0x17, 0x0b, 0xb7, 0x16, 0x64, 0x26, + 0x5b, 0xed, 0x3b, 0x27, 0xa3, 0x30, 0xb4, 0xb4, 0x7c, 0xbf, 0xb2, 0xbb, 0xbe, 0x53, 0xec, 0x61, + 0x3f, 0x16, 0xed, 0xe5, 0xca, 0xce, 0xf2, 0x52, 0xb1, 0x40, 0x46, 0x60, 0xa0, 0xba, 0x53, 0xd9, + 0x59, 0x2e, 0xf6, 0x92, 0x61, 0xe8, 0xdf, 0xad, 0x2e, 0xdb, 0xc5, 0xbe, 0xf9, 0x3f, 0xfe, 0xfb, + 0x05, 0x6e, 0x64, 0x94, 0x2f, 0xbb, 0xbe, 0xd6, 0x0e, 0x93, 0x62, 0xc9, 0x13, 0x69, 0x3b, 0x73, + 0x4f, 0x8e, 0xa8, 0x05, 0xcc, 0x76, 0xb8, 0x75, 0x41, 0x84, 0x9b, 0x85, 0xbb, 0x05, 0x62, 0xa3, + 0x9b, 0x4d, 0xe2, 0x6c, 0xa5, 0x38, 0x67, 0x1f, 0x7f, 0x67, 0x2f, 0x77, 0x3c, 0x92, 0x91, 0x5f, + 0x03, 0x4b, 0xe7, 0x99, 0x73, 0x02, 0xf9, 0xfe, 0xe9, 0x4e, 0x1a, 0xb2, 0xce, 0x57, 0x4f, 0x87, + 0x4e, 0x1e, 0xc0, 0x38, 0xd3, 0xcd, 0x15, 0x1a, 0xb9, 0x94, 0x24, 0xd4, 0x8e, 0x03, 0xb3, 0x73, + 0xd9, 0x85, 0x2a, 0xb3, 0xce, 0x18, 0x76, 0x84, 0x1f, 0xac, 0x43, 0x22, 0x63, 0x6f, 0x48, 0x08, + 0x5f, 0xf1, 0x67, 0xcf, 0x27, 0xc0, 0x7b, 0xf7, 0xee, 0x16, 0x48, 0x15, 0x03, 0xdf, 0x19, 0x4a, + 0x3e, 0x91, 0x4f, 0x0d, 0xd3, 0xda, 0x3f, 0x6f, 0x4d, 0x59, 0xe5, 0xc1, 0xcc, 0x39, 0x1d, 0x6c, + 0x02, 0x49, 0xeb, 0xce, 0xe4, 0x6a, 0x3c, 0x0f, 0xb2, 0xd5, 0xea, 0xd9, 0x0b, 0x29, 0xef, 0xc9, + 0x65, 0xa6, 0x3d, 0x91, 0x65, 0x98, 0x10, 0x0f, 0xeb, 0x85, 0x36, 0x4f, 0x3a, 0x9d, 0x07, 0x72, + 0xd9, 0xac, 0xa0, 0x9c, 0xd4, 0x89, 0x80, 0xcc, 0xc6, 0xfd, 0x48, 0x1e, 0x13, 0x66, 0x2f, 0x65, + 0x96, 0x89, 0xfe, 0xdd, 0x87, 0x09, 0xf3, 0x70, 0x41, 0xe4, 0x00, 0x65, 0x9e, 0x39, 0x72, 0x1b, + 0x54, 0x83, 0x99, 0x0d, 0xc7, 0xc5, 0xbb, 0x12, 0xe1, 0xa3, 0x27, 0x3d, 0xec, 0x48, 0xb9, 0x83, + 0xcb, 0x5d, 0x95, 0x7a, 0x0d, 0x35, 0x08, 0x79, 0x51, 0xf2, 0xf1, 0xb3, 0xa9, 0x4a, 0x1d, 0xd9, + 0xf4, 0x50, 0x24, 0x96, 0x99, 0xdb, 0x38, 0xcb, 0xe9, 0x74, 0x36, 0xcf, 0x4f, 0x9a, 0x6c, 0xa0, + 0x92, 0x9e, 0xe0, 0xa8, 0xcd, 0x89, 0x33, 0xb3, 0x2b, 0x61, 0x78, 0x07, 0x2d, 0x27, 0xbc, 0x28, + 0x0c, 0x49, 0x8e, 0xe0, 0x72, 0x99, 0xdd, 0x2d, 0x90, 0xaf, 0xf1, 0xab, 0xce, 0x64, 0xf7, 0xc8, + 0x8d, 0x0e, 0x85, 0xf6, 0x73, 0x29, 0x93, 0x81, 0xf8, 0x50, 0x3a, 0x70, 0xb7, 0x61, 0x2a, 0xcb, + 0x35, 0x5b, 0x09, 0xb4, 0x83, 0xdf, 0x76, 0xee, 0x2c, 0xb0, 0xd9, 0x51, 0xa3, 0x91, 0x3f, 0x48, + 0x1d, 0x3c, 0x83, 0x73, 0x79, 0x7e, 0x08, 0x13, 0x6c, 0x96, 0x3c, 0xa4, 0xb4, 0x55, 0x69, 0xba, + 0x4f, 0x69, 0x48, 0x64, 0xb8, 0x63, 0x05, 0xca, 0xa3, 0xbd, 0x59, 0x20, 0xdf, 0x83, 0xd1, 0x47, + 0x4e, 0x54, 0x3f, 0x14, 0xd1, 0x3b, 0x65, 0x70, 0x4f, 0x84, 0xcd, 0xca, 0x5f, 0x58, 0x78, 0xb7, + 0x40, 0x3e, 0x82, 0xa1, 0x15, 0x1a, 0xe1, 0x53, 0xef, 0x6b, 0xca, 0x4b, 0x91, 0xdb, 0x26, 0xd7, + 0x3c, 0xf5, 0x06, 0x49, 0x36, 0x38, 0x69, 0xc8, 0x25, 0x77, 0x00, 0xf8, 0x82, 0x80, 0x1c, 0x92, + 0xc5, 0xb3, 0xa9, 0x66, 0x93, 0x15, 0xa6, 0x3c, 0x34, 0x69, 0x44, 0x4f, 0x5b, 0x65, 0x9e, 0x8c, + 0xd6, 0x61, 0x42, 0x25, 0x23, 0xda, 0xc4, 0x20, 0x2b, 0x56, 0x82, 0x59, 0x78, 0x06, 0x6e, 0xef, + 0xb3, 0xaf, 0x82, 0x67, 0xe2, 0x55, 0x9e, 0x86, 0x24, 0xcf, 0xf7, 0x50, 0x09, 0x91, 0xa3, 0x69, + 0xb4, 0xab, 0x7e, 0x18, 0x99, 0xb4, 0x0a, 0x92, 0x4d, 0xfb, 0xab, 0x30, 0xab, 0xd7, 0x6b, 0xc6, + 0x9d, 0x8e, 0xd7, 0xdc, 0xbc, 0x70, 0xd6, 0xb3, 0xd7, 0x3a, 0x60, 0x88, 0xf3, 0x5b, 0xdf, 0x6f, + 0xf7, 0x16, 0x70, 0x39, 0x59, 0x82, 0x49, 0x59, 0xd7, 0x56, 0x8b, 0x7a, 0xd5, 0xea, 0x2a, 0x26, + 0x9e, 0x91, 0x2e, 0x25, 0x1a, 0x4c, 0x72, 0x27, 0xe9, 0x22, 0xb6, 0xf5, 0x19, 0x51, 0x37, 0x48, + 0xa7, 0x58, 0x1c, 0xf1, 0xd6, 0x97, 0x19, 0xd7, 0xf8, 0x21, 0x37, 0x2a, 0x19, 0xca, 0xff, 0xde, + 0x3c, 0xe9, 0x70, 0x00, 0x9a, 0xcd, 0x39, 0x42, 0xdc, 0x2d, 0x90, 0x2f, 0x80, 0xa4, 0x8f, 0x24, + 0x4a, 0x84, 0xb9, 0xc7, 0x2f, 0x25, 0xc2, 0x0e, 0xe7, 0x99, 0x65, 0x98, 0x54, 0x31, 0x77, 0xe2, + 0x72, 0x92, 0xd3, 0x96, 0x0e, 0x3b, 0xd8, 0x74, 0x06, 0x9b, 0xbd, 0xf9, 0x0e, 0x8c, 0x32, 0xe1, + 0xe4, 0x13, 0x98, 0x14, 0x73, 0xdf, 0x68, 0x4f, 0x51, 0x2d, 0x63, 0xe2, 0x70, 0x93, 0xdb, 0x92, + 0x07, 0x30, 0x5d, 0x4d, 0x08, 0x9e, 0xbf, 0x08, 0xb8, 0x68, 0xb2, 0x40, 0x60, 0x95, 0x46, 0x5c, + 0xf2, 0xd9, 0xbc, 0x1e, 0x02, 0xe1, 0xb6, 0x25, 0xc9, 0xee, 0xa9, 0x4b, 0x9f, 0x91, 0xcb, 0x89, + 0xa6, 0x33, 0x20, 0xa2, 0xe1, 0x3a, 0x98, 0xdb, 0xb3, 0x1d, 0x9e, 0x8e, 0x1a, 0xa1, 0xc6, 0x55, + 0xfc, 0x55, 0x83, 0xc0, 0xb8, 0xcd, 0x17, 0xe3, 0x78, 0x31, 0x17, 0x83, 0xfc, 0x06, 0xc6, 0xcc, + 0xed, 0x7c, 0x3a, 0x23, 0xdf, 0xcb, 0x3a, 0x44, 0xe7, 0x9c, 0x2f, 0x67, 0xdf, 0x38, 0x1d, 0xb2, + 0x3a, 0x0f, 0x8f, 0xaf, 0xd0, 0x68, 0xbb, 0xd9, 0x3e, 0x70, 0x31, 0x51, 0x29, 0x51, 0xb6, 0x27, + 0x05, 0x12, 0xd3, 0x5b, 0x86, 0xaa, 0x8b, 0x0b, 0xaa, 0xf4, 0xc7, 0x64, 0x0d, 0x8a, 0x7c, 0x1b, + 0xd1, 0x58, 0x5c, 0x4e, 0xb1, 0x10, 0x28, 0x4e, 0xe0, 0x1c, 0x85, 0xb9, 0xa3, 0x75, 0x87, 0xfb, + 0x3e, 0x11, 0xf9, 0x69, 0xeb, 0x7a, 0xea, 0xa4, 0x01, 0x53, 0x09, 0x08, 0xd8, 0x88, 0xd8, 0x34, + 0xa4, 0x91, 0x0c, 0xce, 0xc3, 0xd3, 0xd4, 0x5e, 0x8f, 0x75, 0x86, 0x74, 0x69, 0xbc, 0x82, 0x24, + 0x02, 0xc9, 0xed, 0xbd, 0x49, 0x54, 0xea, 0xde, 0x0c, 0xa6, 0xaf, 0x1a, 0xaa, 0xcd, 0xd9, 0xf8, + 0xbe, 0x85, 0x5b, 0x19, 0x06, 0x24, 0x9a, 0x8e, 0xdb, 0xa6, 0xb9, 0x98, 0xcf, 0x8e, 0x6b, 0x54, + 0x7b, 0xf3, 0xb8, 0x32, 0xb2, 0xbd, 0x96, 0x69, 0xc2, 0xed, 0x20, 0xa0, 0x1e, 0x27, 0xce, 0x53, + 0x5b, 0xb2, 0xa8, 0x3f, 0xc6, 0x15, 0x4c, 0xa3, 0xe6, 0x0f, 0x17, 0xbb, 0xb1, 0xe0, 0x69, 0x95, + 0xee, 0x16, 0xc8, 0xbb, 0x30, 0x2c, 0xda, 0xc8, 0x88, 0x8c, 0x46, 0x87, 0x1d, 0x5a, 0x8d, 0x94, + 0xc0, 0x85, 0x84, 0x6d, 0x36, 0x71, 0xf2, 0x46, 0x9f, 0xb7, 0xf9, 0x5d, 0xb6, 0x67, 0x37, 0x5e, + 0x84, 0x72, 0x51, 0x6e, 0xde, 0x48, 0x59, 0x52, 0xf1, 0x71, 0x24, 0xa8, 0xcb, 0x2e, 0xcb, 0x99, + 0x30, 0xf5, 0x1b, 0x23, 0x41, 0xaa, 0x80, 0x6e, 0x4a, 0xfd, 0x36, 0xc0, 0xdd, 0xb6, 0xec, 0x35, + 0x28, 0x56, 0xea, 0xb8, 0xa1, 0x54, 0xe9, 0x91, 0xd3, 0x3a, 0xf4, 0x03, 0xaa, 0xce, 0x3e, 0xc9, + 0x02, 0xc9, 0x6b, 0x5a, 0x29, 0x28, 0xa2, 0x60, 0x9d, 0x3a, 0x18, 0x2e, 0x7b, 0x46, 0x69, 0x28, + 0x89, 0xa2, 0x6c, 0x8a, 0x0e, 0x67, 0x9d, 0xa9, 0x45, 0x76, 0x3a, 0x6b, 0x7e, 0x3b, 0x36, 0xef, + 0xe3, 0x82, 0xa1, 0x90, 0x43, 0xb5, 0x43, 0x28, 0x90, 0x3a, 0x15, 0xca, 0x37, 0x4c, 0x0a, 0xb5, + 0x22, 0xaf, 0x9e, 0x63, 0xb1, 0xe4, 0x51, 0xe7, 0x55, 0xff, 0x03, 0x98, 0x58, 0x66, 0x0b, 0x7a, + 0xbb, 0xe1, 0xf2, 0x14, 0x01, 0xc4, 0x8c, 0xf9, 0x9e, 0x4b, 0xb8, 0x2a, 0x33, 0x99, 0x21, 0xa9, + 0xb0, 0x20, 0xc8, 0x3d, 0x45, 0x83, 0xc9, 0xf1, 0x98, 0x92, 0x6c, 0x45, 0x96, 0x06, 0x3c, 0xe1, + 0x0b, 0x93, 0xc1, 0x0c, 0x57, 0x2c, 0x2b, 0xad, 0x56, 0x53, 0x5a, 0xb6, 0xf9, 0xf5, 0xfd, 0x0d, + 0xe3, 0x24, 0x9a, 0x2a, 0x97, 0xbc, 0xd3, 0xba, 0xe7, 0xe7, 0x5a, 0x66, 0xe1, 0x1c, 0x9e, 0x39, + 0xe5, 0xdd, 0xe6, 0xa2, 0x0a, 0xea, 0x5d, 0x69, 0x36, 0x53, 0xc4, 0x21, 0x79, 0xdd, 0xe4, 0x9e, + 0x85, 0xd3, 0xad, 0x06, 0x3c, 0xe9, 0x73, 0xe5, 0xad, 0xd2, 0x6a, 0xf1, 0xc5, 0xf2, 0x8a, 0x5a, + 0x30, 0xcc, 0x82, 0xf4, 0x49, 0x3f, 0x59, 0x2e, 0xd6, 0xf6, 0x07, 0x38, 0xcd, 0xe2, 0xf4, 0xc3, + 0x44, 0x3f, 0x37, 0x27, 0xb3, 0x2f, 0x2b, 0x5d, 0x2e, 0x51, 0xa8, 0xf6, 0x89, 0x73, 0xa8, 0x41, + 0xc5, 0xb9, 0x8c, 0x95, 0x81, 0x27, 0x01, 0x97, 0xfc, 0xae, 0xe4, 0x15, 0x2b, 0x83, 0x6b, 0x31, + 0x99, 0xe2, 0x5d, 0x75, 0x39, 0x9d, 0xfb, 0xdd, 0xec, 0x72, 0x6e, 0x6e, 0xf8, 0x07, 0x50, 0x4c, + 0x66, 0x97, 0x56, 0x4c, 0x73, 0xd2, 0x4e, 0xe7, 0x8e, 0xc9, 0x7d, 0x98, 0xd2, 0x47, 0x54, 0xf5, + 0x3b, 0x6f, 0xf5, 0xcf, 0xe3, 0xb3, 0x03, 0xd3, 0x99, 0xc9, 0xa0, 0xd5, 0x16, 0xdb, 0x29, 0x55, + 0x74, 0x2e, 0x57, 0x0a, 0x17, 0xb2, 0xf3, 0xc1, 0x93, 0x57, 0x4c, 0xfb, 0x41, 0x76, 0x76, 0xec, + 0xd9, 0x1b, 0x5d, 0xb0, 0x84, 0x40, 0xbf, 0xc6, 0x1d, 0x30, 0x55, 0xc7, 0x35, 0xcd, 0xa2, 0x90, + 0x53, 0x81, 0xd5, 0x09, 0x45, 0xcd, 0x81, 0xa9, 0x8c, 0xe2, 0x7c, 0x11, 0x5f, 0xcf, 0xe7, 0x19, + 0x4f, 0xac, 0x3d, 0x19, 0xbb, 0x3a, 0x57, 0x32, 0x1d, 0xf3, 0x86, 0x77, 0x38, 0x92, 0xce, 0xaa, + 0xf9, 0x70, 0xfa, 0x26, 0xe7, 0x71, 0x6b, 0x28, 0xeb, 0x8f, 0x91, 0xd4, 0x3b, 0x69, 0xfd, 0xc9, + 0x4a, 0x46, 0xae, 0xc4, 0xd0, 0x29, 0xdd, 0x3d, 0xdf, 0x8d, 0xbf, 0xe2, 0xe6, 0x20, 0xb3, 0x0a, + 0xdd, 0x1c, 0x94, 0xc9, 0xff, 0x6a, 0x3e, 0x82, 0xce, 0xdc, 0xe1, 0x77, 0xbf, 0x89, 0xac, 0xe4, + 0x44, 0x3f, 0x71, 0x65, 0x67, 0x2c, 0x57, 0x73, 0x23, 0x13, 0x45, 0xaf, 0xe2, 0x91, 0xfc, 0x06, + 0x73, 0xa4, 0xd4, 0x21, 0x65, 0x7b, 0x67, 0x35, 0x65, 0x0b, 0x4a, 0xf1, 0x60, 0x26, 0x3a, 0x70, + 0xc6, 0xa1, 0x94, 0xc2, 0xb8, 0x98, 0x9b, 0xa8, 0x9d, 0xbc, 0x96, 0xfa, 0xd2, 0x73, 0x04, 0xd3, + 0xb1, 0x0a, 0xbe, 0x9e, 0x6b, 0xb1, 0xb0, 0x2f, 0xc5, 0xb6, 0x60, 0x3d, 0xa7, 0x7b, 0x6a, 0x3d, + 0xcf, 0x48, 0xf8, 0xbe, 0x82, 0x7a, 0xb1, 0x96, 0xb4, 0x3d, 0xb7, 0xd7, 0x97, 0xb3, 0xf8, 0x84, + 0xe9, 0x15, 0x57, 0x6b, 0x97, 0xd4, 0xd3, 0x92, 0x05, 0x67, 0x59, 0x71, 0x4f, 0xd3, 0xb4, 0x3c, + 0x3e, 0x4b, 0x30, 0xaa, 0x65, 0x7b, 0x27, 0x17, 0x0d, 0x31, 0x19, 0x7b, 0xe8, 0xac, 0xd1, 0x39, + 0x73, 0xfb, 0x5c, 0x44, 0x8b, 0xb4, 0xca, 0x19, 0x9f, 0xdb, 0x8a, 0x4b, 0x69, 0x1e, 0x86, 0x35, + 0x5a, 0x49, 0x81, 0xb7, 0x66, 0x2e, 0x29, 0x1c, 0xa3, 0x41, 0xf9, 0x5d, 0x22, 0xba, 0x68, 0xba, + 0x34, 0x29, 0x5f, 0x7f, 0x9d, 0x14, 0x29, 0x65, 0x31, 0x81, 0x8d, 0x8c, 0xa3, 0x78, 0x41, 0x99, + 0xd6, 0x34, 0x68, 0x07, 0x4b, 0xc7, 0x36, 0xbe, 0x40, 0xc9, 0x48, 0x7f, 0xaf, 0x56, 0xd8, 0x8e, + 0xd9, 0xf1, 0x33, 0x74, 0x37, 0xb5, 0x66, 0xe7, 0x72, 0xec, 0x98, 0x0f, 0x3f, 0xb7, 0xa5, 0x3f, + 0xd4, 0xd6, 0xec, 0x54, 0x92, 0x7b, 0x72, 0x33, 0xa9, 0xb8, 0xe5, 0xe5, 0xc1, 0xef, 0xb0, 0x27, + 0x4c, 0x65, 0xe5, 0xc7, 0xd7, 0xcc, 0xc3, 0xb9, 0xc9, 0xf3, 0x33, 0xa4, 0x60, 0xcb, 0xf9, 0x9f, + 0xc3, 0xad, 0x43, 0xb6, 0xfc, 0xdc, 0x16, 0x7e, 0xa9, 0x2d, 0x74, 0x89, 0xac, 0xf6, 0xea, 0x38, + 0xde, 0x25, 0xed, 0x7d, 0x2e, 0xef, 0x4d, 0x7c, 0xb3, 0x94, 0x4e, 0x49, 0xaf, 0x34, 0x9b, 0x4e, + 0x09, 0xeb, 0x33, 0xad, 0xc7, 0xd3, 0xe9, 0x2e, 0x32, 0x7e, 0x17, 0x12, 0xb6, 0xdf, 0x6e, 0x0d, + 0xfb, 0x5a, 0x2e, 0xc6, 0x19, 0xa9, 0xec, 0x13, 0x8b, 0x71, 0x7e, 0xb2, 0xfb, 0x0e, 0xc7, 0xa0, + 0x73, 0x55, 0xf7, 0xc0, 0xd3, 0x32, 0xd1, 0xab, 0x43, 0x50, 0x3a, 0x39, 0xbe, 0x5a, 0x62, 0xb2, + 0x12, 0xd7, 0x6f, 0x31, 0xfd, 0x87, 0x6b, 0xef, 0x7a, 0x4e, 0x71, 0x32, 0x9b, 0x9f, 0x4a, 0x5d, + 0x2d, 0x37, 0x99, 0x49, 0xc8, 0x35, 0x86, 0x7a, 0x42, 0x6f, 0xc5, 0x30, 0x23, 0xb7, 0xb8, 0x62, + 0x98, 0x99, 0x01, 0xfc, 0x0e, 0x5a, 0x5d, 0x6c, 0xbf, 0x49, 0x75, 0xab, 0x8b, 0x96, 0x21, 0x3a, + 0x61, 0xf4, 0x20, 0x1f, 0xa0, 0xc9, 0xa3, 0xb3, 0x9d, 0x64, 0xc6, 0xe4, 0xa4, 0x7b, 0x96, 0x8c, + 0xa8, 0xf4, 0xdb, 0xca, 0xc6, 0x9e, 0xcc, 0x00, 0x3e, 0x5b, 0x4a, 0x17, 0x08, 0xfa, 0xb7, 0xa5, + 0xd5, 0x04, 0x1b, 0x5c, 0x32, 0xad, 0x4d, 0xf9, 0x6d, 0x7e, 0x5b, 0x9a, 0x4c, 0x0c, 0xb2, 0x54, + 0xf2, 0xed, 0x24, 0xd9, 0x0f, 0x60, 0x2c, 0x4e, 0xb4, 0xbd, 0x37, 0xaf, 0x11, 0x26, 0xb2, 0x6f, + 0x27, 0x09, 0xdf, 0x95, 0xd7, 0x2a, 0x58, 0x9f, 0x59, 0xd8, 0x59, 0x05, 0xf8, 0x58, 0x9a, 0x68, + 0x8c, 0x96, 0xa6, 0xd2, 0x76, 0x77, 0x58, 0xb9, 0xc7, 0xf4, 0xec, 0xa0, 0x6a, 0x5e, 0x64, 0xe4, + 0xf7, 0x55, 0xf3, 0x22, 0x2b, 0x3f, 0x6f, 0x7c, 0xed, 0xf0, 0x85, 0xb4, 0x47, 0xc4, 0x4c, 0x2f, + 0x1b, 0xcd, 0x4a, 0xf1, 0xbd, 0x92, 0x57, 0x9c, 0x64, 0x5d, 0x85, 0x62, 0x32, 0x95, 0xa9, 0x3a, + 0xcc, 0xe5, 0xe4, 0x9c, 0x55, 0x27, 0xc4, 0xdc, 0x1c, 0xa8, 0xdb, 0xd2, 0xb8, 0x6e, 0xf2, 0xbd, + 0x96, 0xdd, 0x28, 0x9d, 0x75, 0xbe, 0xb5, 0x7d, 0xdc, 0xc8, 0x6a, 0xaa, 0x1f, 0xb3, 0x53, 0x59, + 0x53, 0x75, 0xb5, 0x2c, 0x23, 0x11, 0xaa, 0x2b, 0xc3, 0x66, 0x65, 0x27, 0x57, 0x7f, 0xdd, 0x3c, + 0xff, 0x76, 0x88, 0x64, 0xdf, 0xf5, 0x0a, 0x9a, 0xfc, 0x0a, 0xcc, 0xe4, 0x04, 0xfd, 0x26, 0x37, + 0x12, 0x66, 0xda, 0xec, 0xa0, 0xe0, 0x6a, 0x82, 0x64, 0xa6, 0x1b, 0xdf, 0x40, 0xdf, 0x05, 0x23, + 0xbe, 0x44, 0xea, 0x3e, 0xf0, 0x91, 0x1b, 0x1d, 0xf2, 0xac, 0xda, 0xda, 0x9a, 0x9b, 0x19, 0x98, + 0x82, 0x54, 0xf1, 0x20, 0x63, 0x40, 0x33, 0xae, 0x04, 0x33, 0x18, 0xce, 0x66, 0x33, 0x64, 0x6b, + 0x07, 0x9b, 0x0b, 0x19, 0xc1, 0x3f, 0xd4, 0x5c, 0xc8, 0x0f, 0x0c, 0x92, 0xdb, 0xcc, 0x6d, 0xa9, + 0x60, 0x65, 0x73, 0xcc, 0x8f, 0x03, 0x92, 0xcb, 0xf1, 0x01, 0xe3, 0x98, 0x0a, 0xed, 0x41, 0x72, + 0xd0, 0x3b, 0xaf, 0x1e, 0xb6, 0xdc, 0xaf, 0x4d, 0xaa, 0x79, 0xad, 0x7d, 0x79, 0x41, 0x44, 0x72, + 0xdb, 0xb7, 0x2c, 0xbf, 0xa7, 0xec, 0xf6, 0x9d, 0x76, 0xc7, 0x56, 0x97, 0x67, 0x89, 0xf0, 0x38, + 0x46, 0x47, 0x35, 0xf8, 0x6c, 0x0e, 0x9c, 0x6c, 0xa2, 0x33, 0x52, 0x12, 0xaa, 0x9d, 0x68, 0xb3, + 0xe3, 0xef, 0xe4, 0xf2, 0xe3, 0xf3, 0xd8, 0x08, 0xff, 0x71, 0x96, 0x79, 0x9c, 0x88, 0x1b, 0x22, + 0xe6, 0xb1, 0x01, 0x3d, 0xdb, 0x3c, 0x4e, 0x30, 0x34, 0xe7, 0x71, 0xb2, 0x99, 0x49, 0x33, 0x41, + 0xee, 0xa8, 0x26, 0x9b, 0xa9, 0xe6, 0x71, 0x36, 0xc7, 0xfc, 0x30, 0x2d, 0xb9, 0x1c, 0xd5, 0x3c, + 0x36, 0x39, 0xe6, 0xa0, 0x9f, 0x72, 0x1e, 0x27, 0x2b, 0x31, 0xe7, 0xf1, 0x99, 0xda, 0xa7, 0xe6, + 0x71, 0x76, 0xfb, 0xce, 0x3c, 0x8f, 0x13, 0x81, 0x99, 0x8c, 0x8e, 0x66, 0xcd, 0xe3, 0x24, 0x3e, + 0x9f, 0xc7, 0x49, 0x68, 0xc2, 0x32, 0xd3, 0x61, 0x1e, 0x27, 0x29, 0x3f, 0x43, 0x7e, 0x89, 0x98, + 0x2c, 0xa7, 0x99, 0xc9, 0xb9, 0xe1, 0x5c, 0xc8, 0x23, 0xb4, 0x0d, 0x26, 0xe0, 0xa7, 0x9b, 0xcd, + 0x73, 0x79, 0x4c, 0x71, 0x3e, 0xef, 0x49, 0x21, 0x26, 0x9b, 0x6b, 0x1a, 0xbe, 0xb2, 0x43, 0xd2, + 0x74, 0x68, 0xf0, 0x1e, 0x9b, 0x37, 0x8d, 0x0e, 0x7c, 0x3b, 0x45, 0xd4, 0xe9, 0xc0, 0x57, 0x9d, + 0x83, 0x92, 0x7c, 0x73, 0x49, 0x3a, 0xcf, 0xef, 0xcf, 0xe5, 0xed, 0x48, 0x92, 0x6e, 0x3e, 0x71, + 0xb2, 0x3a, 0x73, 0x4b, 0xd5, 0x09, 0x2b, 0xd9, 0xd2, 0xb3, 0xce, 0xf3, 0x0d, 0xa9, 0x3d, 0xa4, + 0xe2, 0x7e, 0x25, 0x3a, 0xad, 0xcf, 0xf5, 0xdc, 0x12, 0xb2, 0x83, 0x86, 0xe0, 0x34, 0x5c, 0x33, + 0x22, 0xe7, 0x05, 0x2d, 0xeb, 0xc0, 0xf5, 0x50, 0xe6, 0x35, 0xc9, 0x0b, 0x4e, 0x46, 0xde, 0xc8, + 0x98, 0x50, 0xb9, 0x31, 0xcc, 0xba, 0xb6, 0x3f, 0x15, 0xbe, 0x48, 0x6f, 0x7f, 0x5e, 0x6c, 0x23, + 0xc5, 0x35, 0x4d, 0xfd, 0x09, 0x1a, 0xe9, 0xc4, 0xdb, 0x32, 0xef, 0xb1, 0x9f, 0x7f, 0xa2, 0x9a, + 0x34, 0x5c, 0xb3, 0x18, 0x2e, 0x7a, 0xc4, 0x7d, 0x28, 0x2e, 0x1a, 0x25, 0x30, 0x77, 0x98, 0xb3, + 0xe8, 0xc9, 0x27, 0x50, 0x14, 0x0b, 0x69, 0xcc, 0x20, 0x0b, 0x31, 0x77, 0x92, 0x2c, 0x48, 0xdb, + 0xe0, 0x29, 0x5a, 0x70, 0x1a, 0x9b, 0xe0, 0x69, 0x24, 0x91, 0x6f, 0x40, 0x63, 0x1b, 0xef, 0x4e, + 0xd0, 0x0e, 0x23, 0xda, 0x48, 0x1b, 0xbe, 0xcc, 0xc6, 0x48, 0x07, 0x0e, 0x13, 0x7d, 0x6f, 0x9e, + 0xac, 0xe1, 0x2a, 0x6a, 0x82, 0x3b, 0x59, 0x06, 0xb3, 0xd9, 0xe0, 0x22, 0xb7, 0xaa, 0x1e, 0x31, + 0x99, 0x6d, 0xca, 0xab, 0x3b, 0xbf, 0x51, 0x4a, 0x44, 0xa7, 0xec, 0x5d, 0x9e, 0x88, 0xf8, 0xd1, + 0x9d, 0x5b, 0x29, 0xbb, 0x49, 0x26, 0xf9, 0xac, 0x8a, 0x7c, 0x0a, 0x23, 0x92, 0xb8, 0xbb, 0x40, + 0x92, 0xd4, 0x28, 0x90, 0x25, 0x18, 0x37, 0xde, 0x8c, 0xa9, 0x73, 0x54, 0xd6, 0x4b, 0xb2, 0x0e, + 0xe3, 0x3c, 0x6e, 0xbc, 0x0d, 0x53, 0x5c, 0xb2, 0x5e, 0x8c, 0xe5, 0x72, 0xf9, 0x08, 0x46, 0x85, + 0x48, 0x3b, 0x4a, 0x23, 0xdf, 0x2c, 0x38, 0xad, 0xf9, 0x5f, 0xb7, 0x1b, 0x6e, 0xb4, 0xe8, 0x7b, + 0x8f, 0xdd, 0x83, 0xae, 0x82, 0x49, 0x93, 0xec, 0xcd, 0x93, 0xaf, 0x30, 0x69, 0xb5, 0x4c, 0x25, + 0x4e, 0xa3, 0x67, 0x7e, 0xf0, 0xc4, 0xf5, 0x0e, 0xba, 0xb0, 0xbc, 0x6a, 0xb2, 0x4c, 0xd2, 0x49, + 0x17, 0x97, 0xaf, 0x60, 0xb6, 0x9a, 0xcf, 0xbc, 0x2b, 0x93, 0xce, 0x1b, 0x59, 0x15, 0xe6, 0xd0, + 0xc9, 0xe7, 0xac, 0x6d, 0xef, 0xc8, 0xf4, 0x0b, 0x1e, 0xf8, 0x52, 0x5e, 0x29, 0xd4, 0xfd, 0xa0, + 0xd1, 0x9d, 0x63, 0xd9, 0x74, 0x1b, 0x4e, 0x90, 0x49, 0x61, 0x7c, 0x01, 0x17, 0xab, 0xb9, 0xac, + 0xbb, 0xb1, 0xe8, 0xa6, 0xb3, 0x5e, 0x42, 0x51, 0x9c, 0xb1, 0xdd, 0x1d, 0x79, 0xae, 0xe1, 0x9a, + 0xc6, 0xf6, 0xa1, 0xed, 0x80, 0x3e, 0xa6, 0x01, 0x3a, 0xa7, 0x77, 0x73, 0xcb, 0x36, 0xd1, 0x65, + 0xcf, 0xd7, 0xe0, 0x7c, 0x35, 0xc5, 0x2a, 0x8f, 0xa4, 0xdb, 0x35, 0xd5, 0x24, 0xf6, 0xf4, 0x94, + 0xed, 0xea, 0xe2, 0xcc, 0x34, 0xba, 0x42, 0xa3, 0xdd, 0xb5, 0x2e, 0x52, 0x92, 0xaf, 0x27, 0x24, + 0xe2, 0xde, 0x3d, 0x46, 0x59, 0xd5, 0x28, 0xd3, 0x18, 0xb9, 0x1f, 0xef, 0xa7, 0xf2, 0xca, 0xa6, + 0x6b, 0xb5, 0x79, 0x1c, 0xde, 0xc4, 0xb5, 0x50, 0x38, 0x68, 0x6b, 0xc6, 0x4e, 0x0e, 0x89, 0x8d, + 0x82, 0x9a, 0xaf, 0x76, 0x48, 0x2a, 0xfc, 0xa0, 0xc9, 0xa7, 0x87, 0x80, 0x5d, 0x49, 0x39, 0xee, + 0x77, 0x64, 0xc1, 0x8d, 0xb5, 0xeb, 0x7e, 0xfd, 0x89, 0x6e, 0xac, 0x65, 0xbf, 0x93, 0x86, 0x48, + 0x06, 0xdb, 0x9b, 0x17, 0x2b, 0x3e, 0xfb, 0x61, 0xf8, 0xa7, 0x21, 0x20, 0x5e, 0xf1, 0x93, 0x70, + 0x61, 0xab, 0x7a, 0x53, 0x5a, 0x31, 0xb1, 0x42, 0x93, 0x73, 0xae, 0x68, 0x94, 0x01, 0x13, 0x89, + 0x4c, 0x03, 0xa6, 0xde, 0xd0, 0xfc, 0x2b, 0x07, 0x62, 0xd3, 0x56, 0x13, 0x7d, 0xbe, 0x8f, 0x7c, + 0x4e, 0x13, 0xbb, 0x01, 0xa7, 0x8b, 0xba, 0xbb, 0x99, 0x4d, 0x0a, 0xe7, 0x24, 0x43, 0xf0, 0x2a, + 0x78, 0x74, 0xba, 0x2c, 0x16, 0xa5, 0xee, 0x33, 0x75, 0xb7, 0x40, 0x36, 0xe1, 0xc2, 0x0a, 0x8d, + 0xc4, 0x1a, 0x67, 0xd3, 0x30, 0x0a, 0xdc, 0x7a, 0xd4, 0xf1, 0xfe, 0x52, 0x9e, 0x82, 0x32, 0x68, + 0xf6, 0xde, 0x62, 0xfc, 0xaa, 0xd9, 0xfc, 0x3a, 0xd2, 0x75, 0xf0, 0xe4, 0x15, 0x97, 0x22, 0x67, + 0x69, 0x62, 0xfe, 0x14, 0x1f, 0xe2, 0x8e, 0x42, 0xf9, 0xa4, 0xc5, 0x38, 0xce, 0x8b, 0x38, 0xd7, + 0xdd, 0x86, 0x41, 0x4e, 0x94, 0xbb, 0xa1, 0x8e, 0xe9, 0x34, 0xe4, 0x1e, 0x8c, 0x28, 0x4f, 0x1f, + 0x62, 0x14, 0xe5, 0xb6, 0xeb, 0x1e, 0x8c, 0xf0, 0x43, 0xdc, 0xe9, 0x49, 0x3e, 0x80, 0x11, 0xe5, + 0x1a, 0x74, 0xe6, 0x9d, 0xfe, 0x13, 0x18, 0xd7, 0x9d, 0x84, 0xce, 0x2e, 0xc8, 0x8f, 0xf0, 0x96, + 0x59, 0x5e, 0xe6, 0xe4, 0xd3, 0x4f, 0x27, 0xc2, 0xdf, 0x08, 0x91, 0xf2, 0x05, 0x52, 0x02, 0x73, + 0x9b, 0x7f, 0x3e, 0x45, 0x4d, 0x3e, 0x90, 0xef, 0xb6, 0x14, 0x71, 0x1a, 0xa9, 0x83, 0xcc, 0x26, + 0xb8, 0x98, 0x5f, 0x84, 0x58, 0x2d, 0xb0, 0x5d, 0x9b, 0x7d, 0x9a, 0xdb, 0xf0, 0xee, 0xa2, 0xcb, + 0xe3, 0xb2, 0x85, 0x5a, 0x5a, 0x2a, 0x07, 0x61, 0x3e, 0xa3, 0x2b, 0xf9, 0x69, 0x0b, 0x71, 0x30, + 0x1e, 0xe0, 0x29, 0x30, 0x55, 0x9a, 0xdb, 0xbd, 0x0e, 0x69, 0x10, 0xe3, 0x03, 0x76, 0x9a, 0x5d, + 0x07, 0xb2, 0x4e, 0xe7, 0x75, 0xf1, 0x1a, 0xf5, 0xa5, 0xb0, 0x5b, 0x93, 0xbe, 0x96, 0xa7, 0xef, + 0x6c, 0x7e, 0xcb, 0x2e, 0x65, 0xdc, 0xbf, 0x77, 0x1d, 0x8b, 0x3c, 0x76, 0xbf, 0x82, 0xda, 0x61, + 0x66, 0xfc, 0xb3, 0x7c, 0x66, 0x37, 0x35, 0x17, 0x8e, 0x4c, 0x4a, 0xb5, 0xe9, 0x3d, 0xc1, 0x07, + 0x71, 0xd9, 0x59, 0x1a, 0x5f, 0xed, 0xc2, 0x45, 0x4a, 0xe2, 0xb5, 0xae, 0x78, 0xea, 0x36, 0xf7, + 0x12, 0xdf, 0x61, 0xb3, 0xeb, 0xeb, 0x92, 0x75, 0x32, 0xe3, 0x82, 0x5d, 0x39, 0xb2, 0x66, 0x33, + 0x34, 0x1d, 0x59, 0x3b, 0xf6, 0x21, 0x4f, 0xfc, 0x9f, 0x41, 0x39, 0xf6, 0x53, 0x39, 0xdb, 0x20, + 0xe4, 0xfb, 0x4f, 0x92, 0x94, 0xa4, 0x42, 0xd2, 0x29, 0x75, 0xd2, 0xec, 0xb5, 0x3c, 0x09, 0x87, + 0x9a, 0x03, 0x94, 0xf0, 0xbf, 0x4b, 0xe4, 0x2b, 0xcd, 0xcb, 0x7c, 0xda, 0xc1, 0xe2, 0x2b, 0x5e, + 0x08, 0xbe, 0x14, 0x46, 0xe9, 0xd1, 0x3e, 0x3b, 0x23, 0xe5, 0x46, 0x92, 0x60, 0x64, 0x75, 0x18, + 0xde, 0xee, 0x97, 0x9c, 0xa5, 0x9c, 0x71, 0x3d, 0xfb, 0x80, 0x3a, 0xf1, 0xab, 0xb8, 0x44, 0xb8, + 0x44, 0xfd, 0x25, 0x72, 0xba, 0x28, 0xf9, 0xa4, 0x2b, 0x0b, 0x43, 0xf9, 0x6e, 0x95, 0x64, 0x15, + 0x0c, 0xce, 0x8e, 0x22, 0x7e, 0xe0, 0x46, 0xcf, 0x17, 0xed, 0xf5, 0xd8, 0xac, 0xa0, 0x17, 0x48, + 0xde, 0x20, 0x0b, 0xed, 0x75, 0xf2, 0x25, 0x2e, 0x25, 0x82, 0xfd, 0x82, 0xef, 0x47, 0x61, 0x14, + 0x38, 0xad, 0x6a, 0x3d, 0x70, 0x5b, 0x51, 0x6e, 0xa7, 0x63, 0x57, 0xf3, 0x2c, 0x32, 0xcd, 0xf3, + 0x55, 0x84, 0xd3, 0xcf, 0x8a, 0xf3, 0xa3, 0x5e, 0xff, 0x64, 0x15, 0x76, 0x38, 0xb9, 0x54, 0x65, + 0x00, 0xfd, 0x97, 0xc9, 0xb4, 0x06, 0x33, 0x39, 0xd1, 0x91, 0xd4, 0x3d, 0x71, 0xe7, 0xe8, 0x49, + 0xb3, 0x9d, 0x2b, 0x26, 0x5f, 0xc1, 0x74, 0x66, 0xf8, 0x24, 0x65, 0xeb, 0xee, 0x14, 0x5c, 0xa9, + 0x1b, 0xf3, 0x27, 0x50, 0xe2, 0xef, 0x4e, 0xd0, 0xbd, 0xda, 0x88, 0xa4, 0x13, 0xbf, 0x46, 0xca, + 0x41, 0x48, 0xae, 0xd7, 0xf9, 0x78, 0xea, 0x69, 0xfd, 0x14, 0x86, 0x50, 0x49, 0xa4, 0xc3, 0x57, + 0x1f, 0x5e, 0x56, 0x61, 0xa7, 0x27, 0x4f, 0xdb, 0x30, 0xbd, 0x47, 0x03, 0xf7, 0xf1, 0xf3, 0x24, + 0x43, 0x29, 0x99, 0xcc, 0xd2, 0x4e, 0x1c, 0x3f, 0x87, 0x99, 0x45, 0xff, 0xa8, 0x25, 0x1e, 0x17, + 0x1a, 0x3c, 0xd5, 0xa5, 0x7f, 0x76, 0x79, 0x77, 0x97, 0xab, 0x59, 0xf5, 0xfa, 0x51, 0xa7, 0x5b, + 0xc4, 0xc7, 0xbb, 0x37, 0x4d, 0xc7, 0x85, 0x0c, 0x94, 0xf8, 0xcd, 0x88, 0x3c, 0xca, 0xe9, 0xf4, + 0x3b, 0x38, 0x09, 0x13, 0x74, 0xdc, 0x36, 0xa7, 0x4d, 0xc2, 0xac, 0xf2, 0xce, 0x4f, 0xd5, 0x32, + 0xb8, 0xf2, 0x0a, 0xf3, 0xb9, 0x9e, 0xa2, 0xb5, 0x9b, 0x72, 0x6f, 0x31, 0xd3, 0xbc, 0x27, 0x7c, + 0xbb, 0x33, 0x73, 0xc0, 0x67, 0xb6, 0x53, 0x8b, 0x21, 0xd1, 0x6c, 0x76, 0x50, 0xb1, 0x88, 0x1e, + 0x44, 0x82, 0x61, 0xa2, 0x11, 0x7f, 0x5c, 0xa7, 0xed, 0xb4, 0x5a, 0xa7, 0x88, 0x51, 0xa9, 0x7d, + 0x1f, 0xc6, 0xaa, 0x7a, 0xe5, 0x19, 0x95, 0xe4, 0x4e, 0x0a, 0xf5, 0x58, 0xa9, 0x7b, 0xdb, 0x3b, + 0xb8, 0xac, 0xaa, 0x8d, 0xe7, 0x54, 0xbd, 0xc8, 0x75, 0xd2, 0x31, 0xf2, 0xec, 0xa9, 0x5d, 0x20, + 0x2b, 0x0d, 0xa6, 0x72, 0xd2, 0xc9, 0x4e, 0xcd, 0x57, 0xe3, 0x99, 0x81, 0x92, 0x59, 0x4e, 0x89, + 0xd5, 0x3d, 0x9d, 0xb0, 0x72, 0xdd, 0xef, 0x98, 0x26, 0x95, 0x7b, 0x14, 0xc5, 0x99, 0x05, 0x75, + 0x8f, 0xa2, 0x54, 0xbe, 0x42, 0xdd, 0xa3, 0x28, 0x23, 0x19, 0xe1, 0x32, 0xf2, 0x8a, 0x53, 0x2a, + 0x75, 0x30, 0x46, 0x28, 0x36, 0x19, 0x99, 0x9b, 0x1e, 0xea, 0xa1, 0x48, 0x78, 0x22, 0xa6, 0x0e, + 0xb6, 0xd6, 0x64, 0x08, 0x92, 0x44, 0xe6, 0xa6, 0xfb, 0x50, 0xe4, 0x29, 0x1d, 0xe2, 0xe8, 0x8d, + 0xb1, 0x87, 0x62, 0x3a, 0xd3, 0x44, 0x87, 0x41, 0x2d, 0x26, 0xe3, 0xde, 0x29, 0x93, 0x59, 0x4e, + 0x40, 0xbc, 0x0e, 0x53, 0x15, 0xe2, 0xe8, 0x76, 0xca, 0x30, 0x95, 0x0a, 0x78, 0x37, 0x7b, 0x31, + 0xa3, 0x44, 0xa9, 0x94, 0x63, 0x7a, 0x2c, 0x3c, 0xd5, 0xa5, 0x8c, 0x00, 0x79, 0xb3, 0x97, 0x32, + 0xcb, 0x04, 0xa3, 0x88, 0x67, 0xd4, 0xce, 0xce, 0x29, 0x1e, 0xbf, 0x37, 0xeb, 0x80, 0x23, 0xab, + 0xb9, 0x75, 0x1a, 0x54, 0x51, 0x2b, 0x55, 0x09, 0xa5, 0x32, 0x12, 0x99, 0xbf, 0x96, 0xf1, 0x24, + 0xc4, 0xc0, 0x88, 0xfd, 0xce, 0x3a, 0x67, 0x55, 0x27, 0x8f, 0x64, 0x7e, 0x9c, 0x9c, 0x9a, 0xba, + 0x31, 0xc8, 0x1d, 0xc1, 0x47, 0x32, 0x23, 0xce, 0xcb, 0x66, 0xbc, 0x0f, 0x73, 0x89, 0x77, 0x26, + 0x26, 0xe3, 0x5b, 0xd9, 0x8f, 0x51, 0x32, 0xc5, 0x93, 0xaf, 0xb3, 0x5f, 0x4d, 0xbf, 0x47, 0x49, + 0x8c, 0xfb, 0x59, 0xd7, 0xbc, 0x0d, 0x98, 0xc0, 0x65, 0x46, 0xa6, 0xe4, 0x8f, 0x23, 0xe1, 0x98, + 0xe0, 0x64, 0x48, 0xa6, 0x64, 0xa9, 0x72, 0xce, 0x1d, 0x13, 0x6f, 0x97, 0x79, 0x82, 0xff, 0x59, + 0xf3, 0x41, 0x33, 0x02, 0xb3, 0x76, 0x31, 0x2c, 0xd8, 0xbb, 0x47, 0x3e, 0x82, 0x73, 0xf1, 0x93, + 0x66, 0xce, 0x22, 0x03, 0xad, 0x83, 0xa1, 0xec, 0x5c, 0xfc, 0xae, 0xf9, 0xec, 0xe4, 0xab, 0x72, + 0x2b, 0x8a, 0xc9, 0x2f, 0xa7, 0x5e, 0xe5, 0x18, 0x7d, 0x38, 0xcd, 0x8e, 0xa4, 0xc9, 0xf6, 0xac, + 0xa3, 0x53, 0xc7, 0xcf, 0x2d, 0x3b, 0xc8, 0xa3, 0xfe, 0xb9, 0x75, 0x0c, 0x44, 0xa9, 0xd4, 0xdf, + 0x1c, 0x3e, 0x1b, 0x70, 0x1d, 0x03, 0xc3, 0x6c, 0xf3, 0x50, 0x80, 0xd9, 0x58, 0xf9, 0x6d, 0x4f, + 0x86, 0x93, 0x69, 0xc2, 0xb5, 0xae, 0x51, 0x2e, 0xc9, 0x1d, 0xc3, 0x99, 0xa6, 0x7b, 0x3c, 0xcc, + 0x0e, 0x27, 0x8f, 0xa9, 0xac, 0x60, 0x91, 0x6a, 0x9f, 0xed, 0x10, 0xb7, 0x52, 0xed, 0xb3, 0x1d, + 0xa3, 0x4d, 0x7e, 0x8e, 0x49, 0xa7, 0xc4, 0x1e, 0x85, 0xc1, 0x9e, 0xa8, 0xc7, 0xc3, 0x5f, 0x77, + 0xbc, 0xf6, 0xb9, 0x66, 0x5e, 0x8a, 0xa6, 0x08, 0xf1, 0x4c, 0x73, 0x45, 0x9c, 0xc4, 0xf2, 0x98, + 0x77, 0x67, 0xd2, 0xc1, 0x89, 0xfb, 0x0a, 0x9f, 0x80, 0x67, 0x6e, 0x79, 0x0e, 0x7c, 0x61, 0xe9, + 0x67, 0xff, 0xe9, 0x4a, 0xe1, 0x67, 0x3f, 0xbf, 0x52, 0xf8, 0xb7, 0x3f, 0xbf, 0x52, 0xf8, 0x8f, + 0x3f, 0xbf, 0x52, 0xf8, 0x72, 0xfe, 0x74, 0x41, 0x98, 0xeb, 0x4d, 0x97, 0x7a, 0xd1, 0x1d, 0xce, + 0x6e, 0x10, 0xff, 0x7b, 0xf3, 0x7f, 0x05, 0x00, 0x00, 0xff, 0xff, 0x7d, 0xa4, 0x73, 0xad, 0x11, + 0xec, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -17045,6 +17108,8 @@ type AuthServiceClient interface { CreateGithubAuthRequest(ctx context.Context, in *types.GithubAuthRequest, opts ...grpc.CallOption) (*types.GithubAuthRequest, error) // GetGithubAuthRequest returns Github auth request if found. GetGithubAuthRequest(ctx context.Context, in *GetGithubAuthRequestRequest, opts ...grpc.CallOption) (*types.GithubAuthRequest, error) + // CreateGithubAuthRequestForUser TODO is there a better place? + CreateGithubAuthRequestForUser(ctx context.Context, in *CreateGithubAuthRequestForUserRequest, opts ...grpc.CallOption) (*types.GithubAuthRequest, error) // GetSSODiagnosticInfo returns SSO diagnostic info records. GetSSODiagnosticInfo(ctx context.Context, in *GetSSODiagnosticInfoRequest, opts ...grpc.CallOption) (*types.SSODiagnosticInfo, error) // GetServerInfos returns a stream of ServerInfos. @@ -18964,6 +19029,15 @@ func (c *authServiceClient) GetGithubAuthRequest(ctx context.Context, in *GetGit return out, nil } +func (c *authServiceClient) CreateGithubAuthRequestForUser(ctx context.Context, in *CreateGithubAuthRequestForUserRequest, opts ...grpc.CallOption) (*types.GithubAuthRequest, error) { + out := new(types.GithubAuthRequest) + err := c.cc.Invoke(ctx, "/proto.AuthService/CreateGithubAuthRequestForUser", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + func (c *authServiceClient) GetSSODiagnosticInfo(ctx context.Context, in *GetSSODiagnosticInfoRequest, opts ...grpc.CallOption) (*types.SSODiagnosticInfo, error) { out := new(types.SSODiagnosticInfo) err := c.cc.Invoke(ctx, "/proto.AuthService/GetSSODiagnosticInfo", in, out, opts...) @@ -20449,6 +20523,8 @@ type AuthServiceServer interface { CreateGithubAuthRequest(context.Context, *types.GithubAuthRequest) (*types.GithubAuthRequest, error) // GetGithubAuthRequest returns Github auth request if found. GetGithubAuthRequest(context.Context, *GetGithubAuthRequestRequest) (*types.GithubAuthRequest, error) + // CreateGithubAuthRequestForUser TODO is there a better place? + CreateGithubAuthRequestForUser(context.Context, *CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) // GetSSODiagnosticInfo returns SSO diagnostic info records. GetSSODiagnosticInfo(context.Context, *GetSSODiagnosticInfoRequest) (*types.SSODiagnosticInfo, error) // GetServerInfos returns a stream of ServerInfos. @@ -21181,6 +21257,9 @@ func (*UnimplementedAuthServiceServer) CreateGithubAuthRequest(ctx context.Conte func (*UnimplementedAuthServiceServer) GetGithubAuthRequest(ctx context.Context, req *GetGithubAuthRequestRequest) (*types.GithubAuthRequest, error) { return nil, status.Errorf(codes.Unimplemented, "method GetGithubAuthRequest not implemented") } +func (*UnimplementedAuthServiceServer) CreateGithubAuthRequestForUser(ctx context.Context, req *CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateGithubAuthRequestForUser not implemented") +} func (*UnimplementedAuthServiceServer) GetSSODiagnosticInfo(ctx context.Context, req *GetSSODiagnosticInfoRequest) (*types.SSODiagnosticInfo, error) { return nil, status.Errorf(codes.Unimplemented, "method GetSSODiagnosticInfo not implemented") } @@ -24149,6 +24228,24 @@ func _AuthService_GetGithubAuthRequest_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } +func _AuthService_CreateGithubAuthRequestForUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateGithubAuthRequestForUserRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(AuthServiceServer).CreateGithubAuthRequestForUser(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/proto.AuthService/CreateGithubAuthRequestForUser", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(AuthServiceServer).CreateGithubAuthRequestForUser(ctx, req.(*CreateGithubAuthRequestForUserRequest)) + } + return interceptor(ctx, in, info, handler) +} + func _AuthService_GetSSODiagnosticInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { in := new(GetSSODiagnosticInfoRequest) if err := dec(in); err != nil { @@ -26758,6 +26855,10 @@ var _AuthService_serviceDesc = grpc.ServiceDesc{ MethodName: "GetGithubAuthRequest", Handler: _AuthService_GetGithubAuthRequest_Handler, }, + { + MethodName: "CreateGithubAuthRequestForUser", + Handler: _AuthService_CreateGithubAuthRequestForUser_Handler, + }, { MethodName: "GetSSODiagnosticInfo", Handler: _AuthService_GetSSODiagnosticInfo_Handler, @@ -36567,6 +36668,52 @@ func (m *GetGithubAuthRequestRequest) MarshalToSizedBuffer(dAtA []byte) (int, er return len(dAtA) - i, nil } +func (m *CreateGithubAuthRequestForUserRequest) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *CreateGithubAuthRequestForUserRequest) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *CreateGithubAuthRequestForUserRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.RedirectUrl) > 0 { + i -= len(m.RedirectUrl) + copy(dAtA[i:], m.RedirectUrl) + i = encodeVarintAuthservice(dAtA, i, uint64(len(m.RedirectUrl))) + i-- + dAtA[i] = 0x12 + } + if m.CertRequest != nil { + { + size, err := m.CertRequest.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthservice(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *CreateOIDCConnectorRequest) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -43399,6 +43546,26 @@ func (m *GetGithubAuthRequestRequest) Size() (n int) { return n } +func (m *CreateGithubAuthRequestForUserRequest) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.CertRequest != nil { + l = m.CertRequest.Size() + n += 1 + l + sovAuthservice(uint64(l)) + } + l = len(m.RedirectUrl) + if l > 0 { + n += 1 + l + sovAuthservice(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + func (m *CreateOIDCConnectorRequest) Size() (n int) { if m == nil { return 0 @@ -67366,6 +67533,125 @@ func (m *GetGithubAuthRequestRequest) Unmarshal(dAtA []byte) error { } return nil } +func (m *CreateGithubAuthRequestForUserRequest) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: CreateGithubAuthRequestForUserRequest: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: CreateGithubAuthRequestForUserRequest: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CertRequest", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.CertRequest == nil { + m.CertRequest = &UserCertsRequest{} + } + if err := m.CertRequest.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RedirectUrl", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowAuthservice + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthAuthservice + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthAuthservice + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RedirectUrl = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipAuthservice(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthAuthservice + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *CreateOIDCConnectorRequest) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/api/constants/constants.go b/api/constants/constants.go index 9f7daea88a8d5..63b4ed2ebd863 100644 --- a/api/constants/constants.go +++ b/api/constants/constants.go @@ -406,11 +406,6 @@ const ( // the GID to create host user account with. TraitHostUserGID = "host_user_gid" - // TraitGitHubUsername is the name of the variable used to store the GitHub - // login. This trait expects a singler username so values besides the first - // will be ignored. - TraitGitHubUsername = "github_username" - // TraitGitHubOrganizations is the name of the variable used to store // allowed GitHub organizations. TraitGitHubOrganizations = "github_orgs" diff --git a/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go b/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go index ef9c4f7fc2ac1..c8ed6be8356cb 100644 --- a/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go +++ b/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go @@ -47,6 +47,8 @@ type ListIntegrationsRequest struct { Limit int32 `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"` // NextKey is the key for the next page of Integrations. NextKey string `protobuf:"bytes,2,opt,name=next_key,json=nextKey,proto3" json:"next_key,omitempty"` + // WithSecrets specifies whether to load associated secrets. + WithSecrets bool `protobuf:"varint,3,opt,name=with_secrets,json=withSecrets,proto3" json:"with_secrets,omitempty"` } func (x *ListIntegrationsRequest) Reset() { @@ -95,6 +97,13 @@ func (x *ListIntegrationsRequest) GetNextKey() string { return "" } +func (x *ListIntegrationsRequest) GetWithSecrets() bool { + if x != nil { + return x.WithSecrets + } + return false +} + // ListIntegrationsResponse is the response for ListIntegrationsRequest. type ListIntegrationsResponse struct { state protoimpl.MessageState @@ -539,6 +548,8 @@ type GenerateGitHubUserCertRequest struct { KeyId string `protobuf:"bytes,4,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"` // Ttl is the duration the certificate will be valid for. Ttl *durationpb.Duration `protobuf:"bytes,5,opt,name=ttl,proto3" json:"ttl,omitempty"` + // UserId is the GitHub user id. One of Login and UserId is required. + UserId string `protobuf:"bytes,6,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"` } func (x *GenerateGitHubUserCertRequest) Reset() { @@ -608,6 +619,13 @@ func (x *GenerateGitHubUserCertRequest) GetTtl() *durationpb.Duration { return nil } +func (x *GenerateGitHubUserCertRequest) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + // GenerateGitHubUserCertResponse contains a signed certificate. type GenerateGitHubUserCertResponse struct { state protoimpl.MessageState @@ -670,129 +688,133 @@ var file_teleport_integration_v1_integration_service_proto_rawDesc = []byte{ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x21, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x6c, 0x65, 0x67, 0x61, 0x63, 0x79, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, - 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x4a, 0x0a, 0x17, + 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x6d, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6e, 0x65, 0x78, 0x74, 0x4b, 0x65, 0x79, 0x22, 0x90, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, - 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, - 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, - 0x31, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, - 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x15, 0x47, - 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x74, 0x68, - 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, - 0x77, 0x69, 0x74, 0x68, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x52, 0x0a, 0x18, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, - 0x52, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, - 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x22, 0x5b, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, - 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x12, 0x20, - 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x22, 0x34, 0x0a, 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, - 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xba, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, - 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x6f, 0x67, - 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x12, - 0x15, 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x03, - 0x74, 0x74, 0x6c, 0x22, 0x47, 0x0a, 0x1e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, - 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, - 0x7a, 0x65, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x61, - 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x32, 0xfb, 0x06, 0x0a, - 0x12, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, - 0x69, 0x63, 0x65, 0x12, 0x77, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0e, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, - 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, + 0x07, 0x6e, 0x65, 0x78, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x74, 0x68, + 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, + 0x77, 0x69, 0x74, 0x68, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x90, 0x01, 0x0a, 0x18, + 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x0c, 0x69, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, - 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, - 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x56, 0x31, 0x12, 0x5c, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, - 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x6f, 0x6e, 0x56, 0x31, 0x52, 0x0c, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x78, 0x74, 0x4b, 0x65, 0x79, 0x12, 0x1f, 0x0a, + 0x0b, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, + 0x0a, 0x15, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x77, + 0x69, 0x74, 0x68, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x77, 0x69, 0x74, 0x68, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x73, 0x22, 0x52, + 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x0b, 0x69, 0x6e, + 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x52, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, + 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, + 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x2e, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x1e, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x5b, 0x0a, 0x1b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, + 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, 0x72, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x06, 0x69, 0x73, 0x73, 0x75, 0x65, + 0x72, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x34, 0x0a, 0x1c, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, + 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xd3, 0x01, 0x0a, 0x1d, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, + 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x6f, 0x67, + 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x03, 0x74, 0x74, 0x6c, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, + 0x47, 0x0a, 0x1e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, + 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, 0x5f, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x6f, + 0x72, 0x69, 0x7a, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x32, 0xfb, 0x06, 0x0a, 0x12, 0x49, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, + 0x77, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x12, 0x30, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x2e, 0x74, 0x65, 0x6c, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, - 0x12, 0x5e, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, + 0x12, 0x5c, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, + 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5c, + 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x49, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x56, 0x31, 0x12, 0x5e, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x12, 0x66, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x12, 0x34, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, - 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, - 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, - 0x01, 0x0a, 0x16, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, - 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x12, 0x36, 0x2e, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, - 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x37, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, - 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, - 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x5a, 0x5a, 0x58, 0x67, 0x69, - 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, - 0x61, 0x70, 0x69, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, - 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x12, 0x31, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, + 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x66, 0x0a, 0x15, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x12, 0x83, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34, 0x2e, + 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, + 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, + 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x41, 0x57, 0x53, 0x4f, 0x49, 0x44, 0x43, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x89, 0x01, 0x0a, 0x16, 0x47, + 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, + 0x72, 0x43, 0x65, 0x72, 0x74, 0x12, 0x36, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, + 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, + 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, + 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, + 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x5a, 0x5a, 0x58, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x61, 0x6c, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, + 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x6c, + 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x69, 0x6e, 0x74, 0x65, 0x67, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/api/gen/proto/go/teleport/userloginstate/v1/userloginstate.pb.go b/api/gen/proto/go/teleport/userloginstate/v1/userloginstate.pb.go index 6179327c8865c..05c7d3f32984e 100644 --- a/api/gen/proto/go/teleport/userloginstate/v1/userloginstate.pb.go +++ b/api/gen/proto/go/teleport/userloginstate/v1/userloginstate.pb.go @@ -112,6 +112,8 @@ type Spec struct { // original_traits are the user traits that are part of the user's static definition. These traits are // not affected by access granted by access lists and are obtained prior to granting access list access. OriginalTraits []*v11.Trait `protobuf:"bytes,5,rep,name=original_traits,json=originalTraits,proto3" json:"original_traits,omitempty"` + // GitHub is the external identity attached to this user state. + Github *GitHubIdentity `protobuf:"bytes,6,opt,name=github,proto3" json:"github,omitempty"` } func (x *Spec) Reset() { @@ -181,6 +183,71 @@ func (x *Spec) GetOriginalTraits() []*v11.Trait { return nil } +func (x *Spec) GetGithub() *GitHubIdentity { + if x != nil { + return x.Github + } + return nil +} + +// GitHubIdentity is the external identity attached to this user state. +type GitHubIdentity struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Id is the GitHub user ID. + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + // Username is the GitHub username. + Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"` +} + +func (x *GitHubIdentity) Reset() { + *x = GitHubIdentity{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_userloginstate_v1_userloginstate_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GitHubIdentity) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GitHubIdentity) ProtoMessage() {} + +func (x *GitHubIdentity) ProtoReflect() protoreflect.Message { + mi := &file_teleport_userloginstate_v1_userloginstate_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GitHubIdentity.ProtoReflect.Descriptor instead. +func (*GitHubIdentity) Descriptor() ([]byte, []int) { + return file_teleport_userloginstate_v1_userloginstate_proto_rawDescGZIP(), []int{2} +} + +func (x *GitHubIdentity) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GitHubIdentity) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + var File_teleport_userloginstate_v1_userloginstate_proto protoreflect.FileDescriptor var file_teleport_userloginstate_v1_userloginstate_proto_rawDesc = []byte{ @@ -201,7 +268,7 @@ var file_teleport_userloginstate_v1_userloginstate_proto_rawDesc = []byte{ 0x61, 0x64, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x75, 0x73, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x22, 0xd5, 0x01, 0x0a, 0x04, 0x53, + 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x22, 0x99, 0x02, 0x0a, 0x04, 0x53, 0x70, 0x65, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x72, 0x6f, 0x6c, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x06, 0x74, 0x72, 0x61, 0x69, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x65, 0x6c, 0x65, @@ -215,13 +282,21 @@ var file_teleport_userloginstate_v1_userloginstate_proto_rawDesc = []byte{ 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x74, 0x72, 0x61, 0x69, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x74, 0x52, 0x0e, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x72, 0x61, 0x69, - 0x74, 0x73, 0x42, 0x60, 0x5a, 0x5e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x74, - 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x65, 0x6e, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x2f, 0x76, 0x31, 0x3b, 0x75, 0x73, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x74, 0x65, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x73, 0x12, 0x42, 0x0a, 0x06, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x75, 0x73, + 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2e, 0x76, 0x31, 0x2e, + 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x06, + 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x22, 0x3c, 0x0a, 0x0e, 0x47, 0x69, 0x74, 0x48, 0x75, 0x62, + 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x42, 0x60, 0x5a, 0x5e, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, + 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x61, 0x76, 0x69, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, + 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x67, 0x65, + 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x75, 0x73, 0x65, 0x72, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x74, 0x65, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -236,23 +311,25 @@ func file_teleport_userloginstate_v1_userloginstate_proto_rawDescGZIP() []byte { return file_teleport_userloginstate_v1_userloginstate_proto_rawDescData } -var file_teleport_userloginstate_v1_userloginstate_proto_msgTypes = make([]protoimpl.MessageInfo, 2) +var file_teleport_userloginstate_v1_userloginstate_proto_msgTypes = make([]protoimpl.MessageInfo, 3) var file_teleport_userloginstate_v1_userloginstate_proto_goTypes = []any{ (*UserLoginState)(nil), // 0: teleport.userloginstate.v1.UserLoginState (*Spec)(nil), // 1: teleport.userloginstate.v1.Spec - (*v1.ResourceHeader)(nil), // 2: teleport.header.v1.ResourceHeader - (*v11.Trait)(nil), // 3: teleport.trait.v1.Trait + (*GitHubIdentity)(nil), // 2: teleport.userloginstate.v1.GitHubIdentity + (*v1.ResourceHeader)(nil), // 3: teleport.header.v1.ResourceHeader + (*v11.Trait)(nil), // 4: teleport.trait.v1.Trait } var file_teleport_userloginstate_v1_userloginstate_proto_depIdxs = []int32{ - 2, // 0: teleport.userloginstate.v1.UserLoginState.header:type_name -> teleport.header.v1.ResourceHeader + 3, // 0: teleport.userloginstate.v1.UserLoginState.header:type_name -> teleport.header.v1.ResourceHeader 1, // 1: teleport.userloginstate.v1.UserLoginState.spec:type_name -> teleport.userloginstate.v1.Spec - 3, // 2: teleport.userloginstate.v1.Spec.traits:type_name -> teleport.trait.v1.Trait - 3, // 3: teleport.userloginstate.v1.Spec.original_traits:type_name -> teleport.trait.v1.Trait - 4, // [4:4] is the sub-list for method output_type - 4, // [4:4] is the sub-list for method input_type - 4, // [4:4] is the sub-list for extension type_name - 4, // [4:4] is the sub-list for extension extendee - 0, // [0:4] is the sub-list for field type_name + 4, // 2: teleport.userloginstate.v1.Spec.traits:type_name -> teleport.trait.v1.Trait + 4, // 3: teleport.userloginstate.v1.Spec.original_traits:type_name -> teleport.trait.v1.Trait + 2, // 4: teleport.userloginstate.v1.Spec.github:type_name -> teleport.userloginstate.v1.GitHubIdentity + 5, // [5:5] is the sub-list for method output_type + 5, // [5:5] is the sub-list for method input_type + 5, // [5:5] is the sub-list for extension type_name + 5, // [5:5] is the sub-list for extension extendee + 0, // [0:5] is the sub-list for field type_name } func init() { file_teleport_userloginstate_v1_userloginstate_proto_init() } @@ -285,6 +362,18 @@ func file_teleport_userloginstate_v1_userloginstate_proto_init() { return nil } } + file_teleport_userloginstate_v1_userloginstate_proto_msgTypes[2].Exporter = func(v any, i int) any { + switch v := v.(*GitHubIdentity); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } type x struct{} out := protoimpl.TypeBuilder{ @@ -292,7 +381,7 @@ func file_teleport_userloginstate_v1_userloginstate_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_teleport_userloginstate_v1_userloginstate_proto_rawDesc, NumEnums: 0, - NumMessages: 2, + NumMessages: 3, NumExtensions: 0, NumServices: 0, }, diff --git a/api/proto/teleport/integration/v1/integration_service.proto b/api/proto/teleport/integration/v1/integration_service.proto index 453616cf33b97..e57e1f7033178 100644 --- a/api/proto/teleport/integration/v1/integration_service.proto +++ b/api/proto/teleport/integration/v1/integration_service.proto @@ -56,6 +56,8 @@ message ListIntegrationsRequest { int32 limit = 1; // NextKey is the key for the next page of Integrations. string next_key = 2; + // WithSecrets specifies whether to load associated secrets. + bool with_secrets = 3; } // ListIntegrationsResponse is the response for ListIntegrationsRequest. @@ -131,6 +133,8 @@ message GenerateGitHubUserCertRequest { string key_id = 4; // Ttl is the duration the certificate will be valid for. google.protobuf.Duration ttl = 5; + // UserId is the GitHub user id. One of Login and UserId is required. + string user_id = 6; } // GenerateGitHubUserCertResponse contains a signed certificate. diff --git a/api/proto/teleport/legacy/client/proto/authservice.proto b/api/proto/teleport/legacy/client/proto/authservice.proto index 05cfb1c891c56..2c6948be5ef7b 100644 --- a/api/proto/teleport/legacy/client/proto/authservice.proto +++ b/api/proto/teleport/legacy/client/proto/authservice.proto @@ -2209,6 +2209,13 @@ message GetGithubAuthRequestRequest { string StateToken = 1 [(gogoproto.jsontag) = "state_token"]; } +message CreateGithubAuthRequestForUserRequest { + // CertRequest is the reissue cert request + UserCertsRequest cert_request = 1 [(gogoproto.jsontag) = "cert_request,omitempty"]; + // RedirectUrl is the redirect url used by client browser. + string redirect_url = 2 [(gogoproto.jsontag) = "redirect_url,omitempty"]; +} + // CreateOIDCConnectorRequest is a request for CreateOIDCConnector. message CreateOIDCConnectorRequest { // Connector to be created. @@ -3183,6 +3190,9 @@ service AuthService { // GetGithubAuthRequest returns Github auth request if found. rpc GetGithubAuthRequest(GetGithubAuthRequestRequest) returns (types.GithubAuthRequest); + // CreateGithubAuthRequestForUser TODO is there a better place? + rpc CreateGithubAuthRequestForUser(CreateGithubAuthRequestForUserRequest) returns (types.GithubAuthRequest); + // GetSSODiagnosticInfo returns SSO diagnostic info records. rpc GetSSODiagnosticInfo(GetSSODiagnosticInfoRequest) returns (types.SSODiagnosticInfo); diff --git a/api/proto/teleport/legacy/types/types.proto b/api/proto/teleport/legacy/types/types.proto index 8bf1e5236094e..578ce01d1a5ad 100644 --- a/api/proto/teleport/legacy/types/types.proto +++ b/api/proto/teleport/legacy/types/types.proto @@ -3641,6 +3641,10 @@ message ExternalIdentity { // SAMLSingleLogoutURL is the SAML Single log-out URL to initiate SAML SLO (single log-out), if applicable. string SAMLSingleLogoutURL = 3 [(gogoproto.jsontag) = "samlSingleLogoutUrl,omitempty"]; + + // UserID is the ID of the identity. Some connectors like GitHub have an + // unique ID apart from the username. + string UserID = 4 [(gogoproto.jsontag) = "user_id,omitempty"]; } // LoginStatus is a login status of the user @@ -4982,6 +4986,11 @@ message GithubAuthRequest { teleport.attestation.v1.AttestationStatement ssh_attestation_statement = 21 [(gogoproto.jsontag) = "ssh_attestation_statement,omitempty"]; // TlsAttestationStatement is an attestation statement for the given TLS public key. teleport.attestation.v1.AttestationStatement tls_attestation_statement = 22 [(gogoproto.jsontag) = "tls_attestation_statement,omitempty"]; + + // AuthenticatedUser is the username of an authenticated Teleport user. This + // OAuth flow is used to retrieve GitHub identity info which will be added to + // the existing user. + string authenticated_user = 23 [(gogoproto.jsontag) = "authenticated_user,omitempty"]; } // SSOWarnings conveys a user-facing main message along with auxiliary warnings. @@ -5019,6 +5028,10 @@ message CreateUserParams { (gogoproto.jsontag) = "session_ttl,omitempty", (gogoproto.casttype) = "Duration" ]; + + // UserID is the ID of the identity. Some connectors like GitHub have an + // unique ID apart from the username. + string UserID = 9 [(gogoproto.jsontag) = "user_id,omitempty"]; } // SSODiagnosticInfo is a single SSO diagnostic info entry. @@ -5152,6 +5165,11 @@ message GithubClaims { // Teams is the users team membership repeated string Teams = 3 [(gogoproto.jsontag) = "teams"]; + + // ID is a global unique integer that is assigned to each GitHub user. The ID + // is immutable (unlike the GitHub username) and can be found in APIs like + // get user. + string ID = 4 [(gogoproto.jsontag) = "user_id,omitempty"]; } // TeamMapping represents a single team membership mapping. @@ -7084,14 +7102,24 @@ message GitHubIntegrationSpecV1 { // GitHubProxy specifies GitHub proxy related settings. message GitHubProxy { - // Enabled indicates GitHub proxy should be enabled. - bool enabled = 1 [(gogoproto.jsontag) = "enabled,omitempty"]; - // CertAuthority contains the active SSH CAs used between Teleport and // GitHub. GitHub does not allow the same CA to be used for a different // organization so the CA is defined per integration. TODO(greedy52) support // rotation, HSM encryption. - repeated SSHKeyPair cert_authority = 2 [(gogoproto.jsontag) = "cert_authority,omitempty"]; + repeated SSHKeyPair cert_authorities = 1 [(gogoproto.jsontag) = "cert_authorities,omitempty"]; + + // Connector specifies GitHub connector used to obtain user ID and username. + GitHubProxyConnector connector = 2 [(gogoproto.jsontag) = "connector,omitempty"]; +} + +// GitHubProxyConnector specifies the GitHub connector spec for a GitHub proxy. +message GitHubProxyConnector { + // ClientID is the Github OAuth app client ID. + string ClientID = 1 [(gogoproto.jsontag) = "client_id"]; + // ClientSecret is the Github OAuth app client secret. + string ClientSecret = 2 [(gogoproto.jsontag) = "client_secret"]; + // RedirectURL is the authorization callback URL. + string RedirectURL = 3 [(gogoproto.jsontag) = "redirect_url"]; } // HeadlessAuthentication holds data for an ongoing headless authentication attempt. diff --git a/api/proto/teleport/userloginstate/v1/userloginstate.proto b/api/proto/teleport/userloginstate/v1/userloginstate.proto index 5adaf0e952e9b..3e352b786317b 100644 --- a/api/proto/teleport/userloginstate/v1/userloginstate.proto +++ b/api/proto/teleport/userloginstate/v1/userloginstate.proto @@ -48,4 +48,15 @@ message Spec { // original_traits are the user traits that are part of the user's static definition. These traits are // not affected by access granted by access lists and are obtained prior to granting access list access. repeated teleport.trait.v1.Trait original_traits = 5; + + // GitHub is the external identity attached to this user state. + GitHubIdentity github = 6; +} + +// GitHubIdentity is the external identity attached to this user state. +message GitHubIdentity { + // Id is the GitHub user ID. + string id = 1; + // Username is the GitHub username. + string username = 2; } diff --git a/api/types/github.go b/api/types/github.go index 7c63ceb6e27e7..1c70f8c6fbd8a 100644 --- a/api/types/github.go +++ b/api/types/github.go @@ -343,10 +343,12 @@ func (r *GithubAuthRequest) Check() error { return trace.BadParameter("missing ConnectorID") case r.StateToken == "": return trace.BadParameter("missing StateToken") + case r.AuthenticatedUser != "" && r.ConnectorSpec == nil: + return trace.BadParameter("ConnectorSpec cannot be nil for AuthenticatedUser") // we could collapse these two checks into one, but the error message would become ambiguous. case r.SSOTestFlow && r.ConnectorSpec == nil: return trace.BadParameter("ConnectorSpec cannot be nil when SSOTestFlow is true") - case !r.SSOTestFlow && r.ConnectorSpec != nil: + case (!r.SSOTestFlow && r.AuthenticatedUser == "") && r.ConnectorSpec != nil: return trace.BadParameter("ConnectorSpec must be nil when SSOTestFlow is false") case len(r.PublicKey) != 0 && len(r.SshPublicKey) != 0: return trace.BadParameter("illegal to set both PublicKey and SshPublicKey") diff --git a/api/types/integration.go b/api/types/integration.go index 7f2707e07c3d0..a2606b3f23100 100644 --- a/api/types/integration.go +++ b/api/types/integration.go @@ -59,9 +59,11 @@ type Integration interface { // GetGitHubIntegrationSpec returns the GitHub spec. GetGitHubIntegrationSpec() *GitHubIntegrationSpecV1 + // SetGitHubIntegrationSpec returns the GitHub spec. + SetGitHubIntegrationSpec(*GitHubIntegrationSpecV1) - // SetGitHubSSHCertAuthority configures CA for GitHub integraion. - SetGitHubSSHCertAuthority(ca []*SSHKeyPair) error + // TODO + WithoutSecrets() Integration } var _ ResourceWithLabels = (*IntegrationV1)(nil) @@ -264,22 +266,6 @@ func (ig *IntegrationV1) SetAWSOIDCIntegrationSpec(awsOIDCSpec *AWSOIDCIntegrati } } -func (ig *IntegrationV1) SetGitHubSSHCertAuthority(cas []*SSHKeyPair) error { - if ig.GetSubKind() != IntegrationSubKindGitHub { - return trace.BadParameter("integration is not %q subkind", IntegrationSubKindGitHub) - } - - spec := ig.Spec.GetGitHub() - if spec.Proxy == nil { - spec.Proxy = &GitHubProxy{} - } - spec.Proxy.CertAuthority = cas - ig.Spec.SubKindSpec = &IntegrationSpecV1_GitHub{ - GitHub: spec, - } - return nil -} - // SetAWSOIDCRoleARN sets the RoleARN of the AWS OIDC Spec. func (ig *IntegrationV1) SetAWSOIDCRoleARN(roleARN string) { currentSubSpec := ig.Spec.GetAWSOIDC() @@ -314,6 +300,11 @@ func (ig *IntegrationV1) GetAzureOIDCIntegrationSpec() *AzureOIDCIntegrationSpec func (ig *IntegrationV1) GetGitHubIntegrationSpec() *GitHubIntegrationSpecV1 { return ig.Spec.GetGitHub() } +func (ig *IntegrationV1) SetGitHubIntegrationSpec(spec *GitHubIntegrationSpecV1) { + ig.Spec.SubKindSpec = &IntegrationSpecV1_GitHub{ + GitHub: spec, + } +} // Integrations is a list of Integration resources. type Integrations []Integration @@ -464,3 +455,53 @@ func (ig *IntegrationV1) MarshalJSON() ([]byte, error) { out, err := json.Marshal(d) return out, trace.Wrap(err) } + +func (ig *IntegrationV1) Copy() *IntegrationV1 { + return utils.CloneProtoMsg(ig) +} + +func (ig *IntegrationV1) WithoutSecrets() Integration { + switch ig.SubKind { + case IntegrationSubKindGitHub: + spec := ig.GetGitHubIntegrationSpec() + if spec == nil || spec.Proxy == nil { + return ig + } + + clone := ig.Copy() + spec = clone.GetGitHubIntegrationSpec() + for i := range spec.Proxy.CertAuthorities { + spec.Proxy.CertAuthorities[i].PrivateKey = nil + } + if spec.Proxy.Connector != nil { + spec.Proxy.Connector.ClientSecret = "" + } + clone.SetGitHubIntegrationSpec(spec) + return clone + } + return ig +} + +func (s *GitHubIntegrationSpecV1) MakeConnectorSpec() (*GithubConnectorSpecV3, error) { + if s.Proxy == nil { + return nil, trace.BadParameter("missing GitHub proxy settings") + } + if s.Proxy.Connector == nil { + return nil, trace.BadParameter("missing GitHub connector settings") + } + + return &GithubConnectorSpecV3{ + ClientID: s.Proxy.Connector.ClientID, + ClientSecret: s.Proxy.Connector.ClientSecret, + RedirectURL: s.Proxy.Connector.RedirectURL, + // TODO(greedy52) TeamsToRoles is not used for this flow. Consider use + // a different flag in the spec to avoid this fake mapping. + TeamsToRoles: []TeamRolesMapping{{ + Organization: s.Organization, + Team: "do-not-use", + }}, + // Only public github.com is supported for now. + EndpointURL: GithubURL, + APIEndpointURL: GithubAPIURL, + }, nil +} diff --git a/api/types/role.go b/api/types/role.go index de3a32c00e6f8..335d03a9faf4a 100644 --- a/api/types/role.go +++ b/api/types/role.go @@ -274,8 +274,9 @@ type Role interface { // SetSPIFFEConditions sets the allow or deny SPIFFERoleCondition. SetSPIFFEConditions(rct RoleConditionType, cond []*SPIFFERoleCondition) - // TODO + // GetGitHubPermissions returns the allow or deny GitHub-related permissions. GetGitHubPermissions(RoleConditionType) []GitHubPermission + // SetGitHubPermissions sets the allow or deny GitHub-related permissions. SetGitHubPermissions(RoleConditionType, []GitHubPermission) } @@ -1876,7 +1877,6 @@ func (r *RoleV6) GetLabelMatchers(rct RoleConditionType, kind string) (LabelMatc case KindUserGroup: return LabelMatchers{cond.GroupLabels, cond.GroupLabelsExpression}, nil case KindGitServer: - // TODO alternative to fake a label? return r.makeGitServerLabelMatchers(cond), nil } return LabelMatchers{}, trace.BadParameter("can't get label matchers for resource kind %q", kind) diff --git a/api/types/server.go b/api/types/server.go index c98543f3b5c2e..d906398d9472d 100644 --- a/api/types/server.go +++ b/api/types/server.go @@ -162,6 +162,18 @@ func NewEICENode(spec ServerSpecV2, labels map[string]string) (Server, error) { return server, nil } +func NewGitServer(subKind string, spec ServerSpecV2) (Server, error) { + server := &ServerV2{ + Kind: KindGitServer, + SubKind: subKind, + Spec: spec, + } + if err := server.CheckAndSetDefaults(); err != nil { + return nil, trace.Wrap(err) + } + return server, nil +} + // GetVersion returns resource version func (s *ServerV2) GetVersion() string { return s.Version @@ -501,11 +513,13 @@ func (s *ServerV2) openSSHEC2InstanceConnectEndpointNodeCheckAndSetDefaults() er return nil } -// TODO +// MakeGitHubOrgServerDomain creates a special domain name used in server's +// host address to identify the GitHub organization. func MakeGitHubOrgServerDomain(org string) string { return fmt.Sprintf("%s.%s", org, GitHubServerDomain) } +// GetGitHubOrgFromNodeAddr parses the organization from the node address. func GetGitHubOrgFromNodeAddr(addr string) (string, bool) { if host, _, err := net.SplitHostPort(addr); err == nil { addr = host @@ -587,7 +601,6 @@ func (s *ServerV2) CheckAndSetDefaults() error { return trace.Wrap(err) } - // TODO refactor switch s.Kind { case "": return trace.BadParameter("server Kind is empty") diff --git a/api/types/types.pb.go b/api/types/types.pb.go index 438fc44fc022d..5b0526ff9bda3 100644 --- a/api/types/types.pb.go +++ b/api/types/types.pb.go @@ -9095,7 +9095,10 @@ type ExternalIdentity struct { // Username is username supplied by external identity provider Username string `protobuf:"bytes,2,opt,name=Username,proto3" json:"username,omitempty"` // SAMLSingleLogoutURL is the SAML Single log-out URL to initiate SAML SLO (single log-out), if applicable. - SAMLSingleLogoutURL string `protobuf:"bytes,3,opt,name=SAMLSingleLogoutURL,proto3" json:"samlSingleLogoutUrl,omitempty"` + SAMLSingleLogoutURL string `protobuf:"bytes,3,opt,name=SAMLSingleLogoutURL,proto3" json:"samlSingleLogoutUrl,omitempty"` + // UserID is the ID of the identity. Some connectors like GitHub have an + // unique ID apart from the username. + UserID string `protobuf:"bytes,4,opt,name=UserID,proto3" json:"user_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -12553,9 +12556,13 @@ type GithubAuthRequest struct { SshAttestationStatement *v1.AttestationStatement `protobuf:"bytes,21,opt,name=ssh_attestation_statement,json=sshAttestationStatement,proto3" json:"ssh_attestation_statement,omitempty"` // TlsAttestationStatement is an attestation statement for the given TLS public key. TlsAttestationStatement *v1.AttestationStatement `protobuf:"bytes,22,opt,name=tls_attestation_statement,json=tlsAttestationStatement,proto3" json:"tls_attestation_statement,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + // AuthenticatedUser is the username of an authenticated Teleport user. This + // OAuth flow is used to retrieve GitHub identity info which will be added to + // the existing user. + AuthenticatedUser string `protobuf:"bytes,23,opt,name=authenticated_user,json=authenticatedUser,proto3" json:"authenticated_user,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *GithubAuthRequest) Reset() { *m = GithubAuthRequest{} } @@ -12652,7 +12659,10 @@ type CreateUserParams struct { // Traits is the set of traits the user is assigned. Traits github_com_gravitational_teleport_api_types_wrappers.Traits `protobuf:"bytes,7,opt,name=Traits,proto3,customtype=github.com/gravitational/teleport/api/types/wrappers.Traits" json:"traits,omitempty"` // SessionTTL determines the TTL. - SessionTTL Duration `protobuf:"varint,8,opt,name=SessionTTL,proto3,casttype=Duration" json:"session_ttl,omitempty"` + SessionTTL Duration `protobuf:"varint,8,opt,name=SessionTTL,proto3,casttype=Duration" json:"session_ttl,omitempty"` + // UserID is the ID of the identity. Some connectors like GitHub have an + // unique ID apart from the username. + UserID string `protobuf:"bytes,9,opt,name=UserID,proto3" json:"user_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -12827,7 +12837,11 @@ type GithubClaims struct { // OrganizationToTeams is the user's organization and team membership OrganizationToTeams github_com_gravitational_teleport_api_types_wrappers.Traits `protobuf:"bytes,2,opt,name=OrganizationToTeams,proto3,customtype=github.com/gravitational/teleport/api/types/wrappers.Traits" json:"organization_to_teams"` // Teams is the users team membership - Teams []string `protobuf:"bytes,3,rep,name=Teams,proto3" json:"teams"` + Teams []string `protobuf:"bytes,3,rep,name=Teams,proto3" json:"teams"` + // ID is a global unique integer that is assigned to each GitHub user. The ID + // is immutable (unlike the GitHub username) and can be found in APIs like + // get user. + ID string `protobuf:"bytes,4,opt,name=ID,proto3" json:"user_id,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -18754,16 +18768,16 @@ var xxx_messageInfo_GitHubIntegrationSpecV1 proto.InternalMessageInfo // GitHubProxy specifies GitHub proxy related settings. type GitHubProxy struct { - // Enabled indicates GitHub proxy should be enabled. - Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` // CertAuthority contains the active SSH CAs used between Teleport and // GitHub. GitHub does not allow the same CA to be used for a different // organization so the CA is defined per integration. TODO(greedy52) support // rotation, HSM encryption. - CertAuthority []*SSHKeyPair `protobuf:"bytes,2,rep,name=cert_authority,json=certAuthority,proto3" json:"cert_authority,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` + CertAuthorities []*SSHKeyPair `protobuf:"bytes,1,rep,name=cert_authorities,json=certAuthorities,proto3" json:"cert_authorities,omitempty"` + // Connector specifies GitHub connector used to obtain user ID and username. + Connector *GitHubProxyConnector `protobuf:"bytes,2,opt,name=connector,proto3" json:"connector,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` } func (m *GitHubProxy) Reset() { *m = GitHubProxy{} } @@ -18799,6 +18813,52 @@ func (m *GitHubProxy) XXX_DiscardUnknown() { var xxx_messageInfo_GitHubProxy proto.InternalMessageInfo +// GitHubProxyConnector specifies the GitHub connector spec for a GitHub proxy. +type GitHubProxyConnector struct { + // ClientID is the Github OAuth app client ID. + ClientID string `protobuf:"bytes,1,opt,name=ClientID,proto3" json:"client_id"` + // ClientSecret is the Github OAuth app client secret. + ClientSecret string `protobuf:"bytes,2,opt,name=ClientSecret,proto3" json:"client_secret"` + // RedirectURL is the authorization callback URL. + RedirectURL string `protobuf:"bytes,3,opt,name=RedirectURL,proto3" json:"redirect_url"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *GitHubProxyConnector) Reset() { *m = GitHubProxyConnector{} } +func (m *GitHubProxyConnector) String() string { return proto.CompactTextString(m) } +func (*GitHubProxyConnector) ProtoMessage() {} +func (*GitHubProxyConnector) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{326} +} +func (m *GitHubProxyConnector) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *GitHubProxyConnector) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_GitHubProxyConnector.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *GitHubProxyConnector) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitHubProxyConnector.Merge(m, src) +} +func (m *GitHubProxyConnector) XXX_Size() int { + return m.Size() +} +func (m *GitHubProxyConnector) XXX_DiscardUnknown() { + xxx_messageInfo_GitHubProxyConnector.DiscardUnknown(m) +} + +var xxx_messageInfo_GitHubProxyConnector proto.InternalMessageInfo + // HeadlessAuthentication holds data for an ongoing headless authentication attempt. type HeadlessAuthentication struct { // Header is the resource header. @@ -18831,7 +18891,7 @@ func (m *HeadlessAuthentication) Reset() { *m = HeadlessAuthentication{} func (m *HeadlessAuthentication) String() string { return proto.CompactTextString(m) } func (*HeadlessAuthentication) ProtoMessage() {} func (*HeadlessAuthentication) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{326} + return fileDescriptor_9198ee693835762e, []int{327} } func (m *HeadlessAuthentication) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18888,7 +18948,7 @@ func (m *WatchKind) Reset() { *m = WatchKind{} } func (m *WatchKind) String() string { return proto.CompactTextString(m) } func (*WatchKind) ProtoMessage() {} func (*WatchKind) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{327} + return fileDescriptor_9198ee693835762e, []int{328} } func (m *WatchKind) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18938,7 +18998,7 @@ func (m *WatchStatusV1) Reset() { *m = WatchStatusV1{} } func (m *WatchStatusV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusV1) ProtoMessage() {} func (*WatchStatusV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{328} + return fileDescriptor_9198ee693835762e, []int{329} } func (m *WatchStatusV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -18979,7 +19039,7 @@ func (m *WatchStatusSpecV1) Reset() { *m = WatchStatusSpecV1{} } func (m *WatchStatusSpecV1) String() string { return proto.CompactTextString(m) } func (*WatchStatusSpecV1) ProtoMessage() {} func (*WatchStatusSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{329} + return fileDescriptor_9198ee693835762e, []int{330} } func (m *WatchStatusSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19029,7 +19089,7 @@ func (m *ServerInfoV1) Reset() { *m = ServerInfoV1{} } func (m *ServerInfoV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoV1) ProtoMessage() {} func (*ServerInfoV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{330} + return fileDescriptor_9198ee693835762e, []int{331} } func (m *ServerInfoV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19071,7 +19131,7 @@ func (m *ServerInfoSpecV1) Reset() { *m = ServerInfoSpecV1{} } func (m *ServerInfoSpecV1) String() string { return proto.CompactTextString(m) } func (*ServerInfoSpecV1) ProtoMessage() {} func (*ServerInfoSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{331} + return fileDescriptor_9198ee693835762e, []int{332} } func (m *ServerInfoSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19128,7 +19188,7 @@ func (m *JamfSpecV1) Reset() { *m = JamfSpecV1{} } func (m *JamfSpecV1) String() string { return proto.CompactTextString(m) } func (*JamfSpecV1) ProtoMessage() {} func (*JamfSpecV1) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{332} + return fileDescriptor_9198ee693835762e, []int{333} } func (m *JamfSpecV1) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19193,7 +19253,7 @@ func (m *JamfInventoryEntry) Reset() { *m = JamfInventoryEntry{} } func (m *JamfInventoryEntry) String() string { return proto.CompactTextString(m) } func (*JamfInventoryEntry) ProtoMessage() {} func (*JamfInventoryEntry) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{333} + return fileDescriptor_9198ee693835762e, []int{334} } func (m *JamfInventoryEntry) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19250,7 +19310,7 @@ type MessageWithHeader struct { func (m *MessageWithHeader) Reset() { *m = MessageWithHeader{} } func (*MessageWithHeader) ProtoMessage() {} func (*MessageWithHeader) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{334} + return fileDescriptor_9198ee693835762e, []int{335} } func (m *MessageWithHeader) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19314,7 +19374,7 @@ func (m *AWSMatcher) Reset() { *m = AWSMatcher{} } func (m *AWSMatcher) String() string { return proto.CompactTextString(m) } func (*AWSMatcher) ProtoMessage() {} func (*AWSMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{335} + return fileDescriptor_9198ee693835762e, []int{336} } func (m *AWSMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19359,7 +19419,7 @@ func (m *AssumeRole) Reset() { *m = AssumeRole{} } func (m *AssumeRole) String() string { return proto.CompactTextString(m) } func (*AssumeRole) ProtoMessage() {} func (*AssumeRole) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{336} + return fileDescriptor_9198ee693835762e, []int{337} } func (m *AssumeRole) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19421,7 +19481,7 @@ func (m *InstallerParams) Reset() { *m = InstallerParams{} } func (m *InstallerParams) String() string { return proto.CompactTextString(m) } func (*InstallerParams) ProtoMessage() {} func (*InstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{337} + return fileDescriptor_9198ee693835762e, []int{338} } func (m *InstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19464,7 +19524,7 @@ func (m *AWSSSM) Reset() { *m = AWSSSM{} } func (m *AWSSSM) String() string { return proto.CompactTextString(m) } func (*AWSSSM) ProtoMessage() {} func (*AWSSSM) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{338} + return fileDescriptor_9198ee693835762e, []int{339} } func (m *AWSSSM) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19507,7 +19567,7 @@ func (m *AzureInstallerParams) Reset() { *m = AzureInstallerParams{} } func (m *AzureInstallerParams) String() string { return proto.CompactTextString(m) } func (*AzureInstallerParams) ProtoMessage() {} func (*AzureInstallerParams) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{339} + return fileDescriptor_9198ee693835762e, []int{340} } func (m *AzureInstallerParams) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19561,7 +19621,7 @@ func (m *AzureMatcher) Reset() { *m = AzureMatcher{} } func (m *AzureMatcher) String() string { return proto.CompactTextString(m) } func (*AzureMatcher) ProtoMessage() {} func (*AzureMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{340} + return fileDescriptor_9198ee693835762e, []int{341} } func (m *AzureMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19616,7 +19676,7 @@ func (m *GCPMatcher) Reset() { *m = GCPMatcher{} } func (m *GCPMatcher) String() string { return proto.CompactTextString(m) } func (*GCPMatcher) ProtoMessage() {} func (*GCPMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{341} + return fileDescriptor_9198ee693835762e, []int{342} } func (m *GCPMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19662,7 +19722,7 @@ func (m *KubernetesMatcher) Reset() { *m = KubernetesMatcher{} } func (m *KubernetesMatcher) String() string { return proto.CompactTextString(m) } func (*KubernetesMatcher) ProtoMessage() {} func (*KubernetesMatcher) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{342} + return fileDescriptor_9198ee693835762e, []int{343} } func (m *KubernetesMatcher) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19704,7 +19764,7 @@ func (m *OktaOptions) Reset() { *m = OktaOptions{} } func (m *OktaOptions) String() string { return proto.CompactTextString(m) } func (*OktaOptions) ProtoMessage() {} func (*OktaOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{343} + return fileDescriptor_9198ee693835762e, []int{344} } func (m *OktaOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19746,7 +19806,7 @@ func (m *AccessGraphSync) Reset() { *m = AccessGraphSync{} } func (m *AccessGraphSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphSync) ProtoMessage() {} func (*AccessGraphSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{344} + return fileDescriptor_9198ee693835762e, []int{345} } func (m *AccessGraphSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -19792,7 +19852,7 @@ func (m *AccessGraphAWSSync) Reset() { *m = AccessGraphAWSSync{} } func (m *AccessGraphAWSSync) String() string { return proto.CompactTextString(m) } func (*AccessGraphAWSSync) ProtoMessage() {} func (*AccessGraphAWSSync) Descriptor() ([]byte, []int) { - return fileDescriptor_9198ee693835762e, []int{345} + return fileDescriptor_9198ee693835762e, []int{346} } func (m *AccessGraphAWSSync) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -20205,6 +20265,7 @@ func init() { proto.RegisterType((*AzureOIDCIntegrationSpecV1)(nil), "types.AzureOIDCIntegrationSpecV1") proto.RegisterType((*GitHubIntegrationSpecV1)(nil), "types.GitHubIntegrationSpecV1") proto.RegisterType((*GitHubProxy)(nil), "types.GitHubProxy") + proto.RegisterType((*GitHubProxyConnector)(nil), "types.GitHubProxyConnector") proto.RegisterType((*HeadlessAuthentication)(nil), "types.HeadlessAuthentication") proto.RegisterType((*WatchKind)(nil), "types.WatchKind") proto.RegisterMapType((map[string]string)(nil), "types.WatchKind.FilterEntry") @@ -20232,1770 +20293,1775 @@ func init() { func init() { proto.RegisterFile("teleport/legacy/types/types.proto", fileDescriptor_9198ee693835762e) } var fileDescriptor_9198ee693835762e = []byte{ - // 28194 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6b, 0x70, 0x1c, 0x49, - 0x7a, 0x20, 0x36, 0xdd, 0x8d, 0x47, 0xe3, 0x43, 0x03, 0x68, 0x24, 0x40, 0x12, 0xc4, 0x90, 0x6c, - 0x4e, 0x71, 0x86, 0x43, 0xce, 0x83, 0x5c, 0x82, 0x3b, 0xdc, 0x9d, 0x9d, 0xd7, 0x36, 0xba, 0x41, - 0xa2, 0x49, 0x10, 0xc0, 0x56, 0x83, 0xe4, 0x8e, 0xf6, 0x51, 0x5b, 0xe8, 0x4e, 0x00, 0x35, 0xec, - 0xee, 0xea, 0xad, 0xaa, 0x26, 0x08, 0x49, 0xe7, 0xd3, 0xf3, 0x64, 0xf9, 0xac, 0xd7, 0x49, 0xb2, - 0x74, 0x0e, 0x9d, 0x42, 0x21, 0xdf, 0x9d, 0xe5, 0x73, 0x9c, 0xc2, 0x96, 0xac, 0xf0, 0x39, 0x14, - 0xd6, 0x49, 0x0e, 0x59, 0x56, 0xc8, 0x8e, 0xb3, 0x22, 0x7c, 0xb6, 0xc3, 0x6b, 0x05, 0x64, 0x59, - 0xf7, 0xc3, 0x81, 0x08, 0x47, 0x48, 0xbe, 0x08, 0x3f, 0xf6, 0x42, 0xe7, 0x8b, 0xfc, 0x32, 0xb3, - 0x2a, 0xb3, 0xaa, 0xba, 0xd1, 0x98, 0xe1, 0xdc, 0x89, 0x1b, 0xfa, 0x43, 0xa2, 0xbf, 0xfc, 0xbe, - 0x2f, 0x9f, 0x95, 0xf9, 0x7d, 0x99, 0xdf, 0x03, 0x5e, 0x0a, 0x68, 0x8b, 0x76, 0x5d, 0x2f, 0xb8, - 0xde, 0xa2, 0xbb, 0x76, 0xe3, 0xe0, 0x7a, 0x70, 0xd0, 0xa5, 0x3e, 0xff, 0xf7, 0x5a, 0xd7, 0x73, - 0x03, 0x97, 0x8c, 0xe2, 0x8f, 0xc5, 0xf9, 0x5d, 0x77, 0xd7, 0x45, 0xc8, 0x75, 0xf6, 0x17, 0x2f, - 0x5c, 0xbc, 0xb0, 0xeb, 0xba, 0xbb, 0x2d, 0x7a, 0x1d, 0x7f, 0x6d, 0xf7, 0x76, 0xae, 0x37, 0x7b, - 0x9e, 0x1d, 0x38, 0x6e, 0x47, 0x94, 0x97, 0xe2, 0xe5, 0x81, 0xd3, 0xa6, 0x7e, 0x60, 0xb7, 0xbb, - 0xfd, 0x18, 0xec, 0x7b, 0x76, 0xb7, 0x4b, 0x3d, 0x51, 0xfb, 0xe2, 0xd5, 0xb0, 0x81, 0x76, 0x10, - 0x30, 0x4a, 0xc6, 0xfc, 0xfa, 0x93, 0x1b, 0xea, 0x4f, 0x81, 0xfa, 0x66, 0x7a, 0x5f, 0x24, 0xc3, - 0x18, 0x67, 0xe3, 0x17, 0x73, 0x30, 0x71, 0x8f, 0xd2, 0x6e, 0xb9, 0xe5, 0x3c, 0xa1, 0xe4, 0x12, - 0x8c, 0xac, 0xdb, 0x6d, 0xba, 0x90, 0xb9, 0x98, 0xb9, 0x32, 0xb1, 0x3c, 0x73, 0x74, 0x58, 0x9a, - 0xf4, 0xa9, 0xf7, 0x84, 0x7a, 0x56, 0xc7, 0x6e, 0x53, 0x13, 0x0b, 0xc9, 0xeb, 0x30, 0xc1, 0xfe, - 0xf7, 0xbb, 0x76, 0x83, 0x2e, 0x64, 0x11, 0x73, 0xea, 0xe8, 0xb0, 0x34, 0xd1, 0x91, 0x40, 0x33, - 0x2a, 0x27, 0x35, 0x18, 0x5f, 0x79, 0xda, 0x75, 0x3c, 0xea, 0x2f, 0x8c, 0x5c, 0xcc, 0x5c, 0x99, - 0x5c, 0x5a, 0xbc, 0xc6, 0xfb, 0x7a, 0x4d, 0xf6, 0xf5, 0xda, 0x96, 0x1c, 0x8c, 0xe5, 0xb9, 0xdf, - 0x3f, 0x2c, 0xbd, 0x70, 0x74, 0x58, 0x1a, 0xa7, 0x9c, 0xe4, 0x27, 0xff, 0xb8, 0x94, 0x31, 0x25, - 0x3d, 0x79, 0x17, 0x46, 0xb6, 0x0e, 0xba, 0x74, 0x61, 0xe2, 0x62, 0xe6, 0xca, 0xf4, 0xd2, 0x85, - 0x6b, 0x7c, 0x7a, 0xc2, 0xc6, 0x47, 0x7f, 0x31, 0xac, 0xe5, 0xfc, 0xd1, 0x61, 0x69, 0x84, 0xa1, - 0x98, 0x48, 0x45, 0xde, 0x84, 0xb1, 0x55, 0xd7, 0x0f, 0x6a, 0xd5, 0x05, 0xc0, 0x26, 0x9f, 0x3a, - 0x3a, 0x2c, 0xcd, 0xee, 0xb9, 0x7e, 0x60, 0x39, 0xcd, 0x37, 0xdc, 0xb6, 0x13, 0xd0, 0x76, 0x37, - 0x38, 0x30, 0x05, 0x92, 0xf1, 0x14, 0xa6, 0x34, 0x7e, 0x64, 0x12, 0xc6, 0x1f, 0xac, 0xdf, 0x5b, - 0xdf, 0x78, 0xb4, 0x5e, 0x7c, 0x81, 0xe4, 0x61, 0x64, 0x7d, 0xa3, 0xba, 0x52, 0xcc, 0x90, 0x71, - 0xc8, 0x95, 0x37, 0x37, 0x8b, 0x59, 0x52, 0x80, 0x7c, 0xb5, 0xbc, 0x55, 0x5e, 0x2e, 0xd7, 0x57, - 0x8a, 0x39, 0x32, 0x07, 0x33, 0x8f, 0x6a, 0xeb, 0xd5, 0x8d, 0x47, 0x75, 0xab, 0xba, 0x52, 0xbf, - 0xb7, 0xb5, 0xb1, 0x59, 0x1c, 0x21, 0xd3, 0x00, 0xf7, 0x1e, 0x2c, 0xaf, 0x98, 0xeb, 0x2b, 0x5b, - 0x2b, 0xf5, 0xe2, 0x28, 0x99, 0x87, 0xa2, 0x24, 0xb1, 0xea, 0x2b, 0xe6, 0xc3, 0x5a, 0x65, 0xa5, - 0x38, 0x76, 0x77, 0x24, 0x9f, 0x2b, 0x8e, 0x98, 0xe3, 0x6b, 0xd4, 0xf6, 0x69, 0xad, 0x6a, 0xfc, - 0x07, 0x39, 0xc8, 0xdf, 0xa7, 0x81, 0xdd, 0xb4, 0x03, 0x9b, 0x9c, 0xd3, 0xe6, 0x07, 0xbb, 0xa8, - 0x4c, 0xcc, 0xa5, 0xe4, 0xc4, 0x8c, 0x1e, 0x1d, 0x96, 0x32, 0x6f, 0xaa, 0x13, 0xf2, 0x0e, 0x4c, - 0x56, 0xa9, 0xdf, 0xf0, 0x9c, 0x2e, 0x5b, 0x34, 0x0b, 0x39, 0x44, 0x3b, 0x7b, 0x74, 0x58, 0x3a, - 0xd5, 0x8c, 0xc0, 0xca, 0x80, 0xa8, 0xd8, 0xa4, 0x06, 0x63, 0x6b, 0xf6, 0x36, 0x6d, 0xf9, 0x0b, - 0xa3, 0x17, 0x73, 0x57, 0x26, 0x97, 0x5e, 0x14, 0x93, 0x20, 0x1b, 0x78, 0x8d, 0x97, 0xae, 0x74, - 0x02, 0xef, 0x60, 0x79, 0xfe, 0xe8, 0xb0, 0x54, 0x6c, 0x21, 0x40, 0x1d, 0x60, 0x8e, 0x42, 0xea, - 0xd1, 0xc2, 0x18, 0x3b, 0x76, 0x61, 0x9c, 0xff, 0xfd, 0xc3, 0x52, 0x86, 0x4d, 0x98, 0x58, 0x18, - 0x11, 0x3f, 0x7d, 0x89, 0x2c, 0x41, 0xde, 0xa4, 0x4f, 0x1c, 0x9f, 0xf5, 0x2c, 0x8f, 0x3d, 0x3b, - 0x7d, 0x74, 0x58, 0x22, 0x9e, 0x80, 0x29, 0xcd, 0x08, 0xf1, 0x16, 0xdf, 0x86, 0x49, 0xa5, 0xd5, - 0xa4, 0x08, 0xb9, 0xc7, 0xf4, 0x80, 0x8f, 0xb0, 0xc9, 0xfe, 0x24, 0xf3, 0x30, 0xfa, 0xc4, 0x6e, - 0xf5, 0xc4, 0x90, 0x9a, 0xfc, 0xc7, 0x17, 0xb2, 0x9f, 0xcf, 0xdc, 0x1d, 0xc9, 0x8f, 0x17, 0xf3, - 0x66, 0xb6, 0x56, 0x35, 0xfe, 0xd6, 0x08, 0xe4, 0x4d, 0x97, 0x7f, 0x88, 0xe4, 0x2a, 0x8c, 0xd6, - 0x03, 0x3b, 0x90, 0xd3, 0x34, 0x77, 0x74, 0x58, 0x9a, 0x61, 0x1f, 0x29, 0x55, 0xea, 0xe7, 0x18, - 0x0c, 0x75, 0x73, 0xcf, 0xf6, 0xe5, 0x74, 0x21, 0x6a, 0x97, 0x01, 0x54, 0x54, 0xc4, 0x20, 0x97, - 0x61, 0xe4, 0xbe, 0xdb, 0xa4, 0x62, 0xc6, 0xc8, 0xd1, 0x61, 0x69, 0xba, 0xed, 0x36, 0x55, 0x44, - 0x2c, 0x27, 0x6f, 0xc0, 0x44, 0xa5, 0xe7, 0x79, 0xb4, 0xc3, 0xd6, 0xfa, 0x08, 0x22, 0x4f, 0x1f, - 0x1d, 0x96, 0xa0, 0xc1, 0x81, 0x96, 0xd3, 0x34, 0x23, 0x04, 0x36, 0x0d, 0xf5, 0xc0, 0xf6, 0x02, - 0xda, 0x5c, 0x18, 0x1d, 0x6a, 0x1a, 0xd8, 0xf7, 0x39, 0xeb, 0x73, 0x92, 0xf8, 0x34, 0x08, 0x4e, - 0x64, 0x15, 0x26, 0xef, 0x78, 0x76, 0x83, 0x6e, 0x52, 0xcf, 0x71, 0x9b, 0x38, 0xbf, 0xb9, 0xe5, - 0xcb, 0x47, 0x87, 0xa5, 0xd3, 0xbb, 0x0c, 0x6c, 0x75, 0x11, 0x1e, 0x51, 0x7f, 0xfb, 0xb0, 0x94, - 0xaf, 0x8a, 0x2d, 0xd3, 0x54, 0x49, 0xc9, 0x37, 0xd8, 0xe4, 0xf8, 0x01, 0x0e, 0x2d, 0x6d, 0x2e, - 0x8c, 0x1f, 0xdb, 0x44, 0x43, 0x34, 0xf1, 0x74, 0xcb, 0xf6, 0x03, 0xcb, 0xe3, 0x74, 0xb1, 0x76, - 0xaa, 0x2c, 0xc9, 0x06, 0xe4, 0xeb, 0x8d, 0x3d, 0xda, 0xec, 0xb5, 0x28, 0x2e, 0x99, 0xc9, 0xa5, - 0x33, 0x62, 0x51, 0xcb, 0xf9, 0x94, 0xc5, 0xcb, 0x8b, 0x82, 0x37, 0xf1, 0x05, 0x44, 0x5d, 0x4f, - 0x12, 0xeb, 0x0b, 0xf9, 0x9f, 0xff, 0xa5, 0xd2, 0x0b, 0xdf, 0xf7, 0x47, 0x17, 0x5f, 0x30, 0xfe, - 0xf3, 0x2c, 0x14, 0xe3, 0x4c, 0xc8, 0x0e, 0x4c, 0x3d, 0xe8, 0x36, 0xed, 0x80, 0x56, 0x5a, 0x0e, - 0xed, 0x04, 0x3e, 0x2e, 0x92, 0xc1, 0x7d, 0x7a, 0x59, 0xd4, 0xbb, 0xd0, 0x43, 0x42, 0xab, 0xc1, - 0x29, 0x63, 0xbd, 0xd2, 0xd9, 0x46, 0xf5, 0xd4, 0x71, 0x03, 0xf7, 0x71, 0x85, 0x9d, 0xac, 0x1e, - 0xbe, 0xf5, 0xf7, 0xa9, 0x47, 0xb0, 0x15, 0x0b, 0xa8, 0xd3, 0xdc, 0x3e, 0xc0, 0x95, 0x39, 0xfc, - 0x02, 0x62, 0x24, 0x29, 0x0b, 0x88, 0x81, 0x8d, 0x7f, 0x96, 0x81, 0x69, 0x93, 0xfa, 0x6e, 0xcf, - 0x6b, 0xd0, 0x55, 0x6a, 0x37, 0xa9, 0xc7, 0x96, 0xff, 0x3d, 0xa7, 0xd3, 0x14, 0xdf, 0x14, 0x2e, - 0xff, 0xc7, 0x4e, 0x47, 0xdd, 0xba, 0xb1, 0x9c, 0x7c, 0x06, 0xc6, 0xeb, 0xbd, 0x6d, 0x44, 0xcd, - 0x46, 0x3b, 0x80, 0xdf, 0xdb, 0xb6, 0x62, 0xe8, 0x12, 0x8d, 0x5c, 0x87, 0xf1, 0x87, 0xd4, 0xf3, - 0xa3, 0xdd, 0x10, 0x8f, 0x86, 0x27, 0x1c, 0xa4, 0x12, 0x08, 0x2c, 0x72, 0x27, 0xda, 0x91, 0xc5, - 0xa1, 0x36, 0x13, 0xdb, 0x07, 0xa3, 0xa5, 0xd2, 0x16, 0x10, 0x75, 0xa9, 0x48, 0x2c, 0xe3, 0xa7, - 0xb2, 0x50, 0xac, 0xda, 0x81, 0xbd, 0x6d, 0xfb, 0x62, 0x3c, 0x1f, 0xde, 0x64, 0x7b, 0xbc, 0xd2, - 0x51, 0xdc, 0xe3, 0x59, 0xcb, 0x3f, 0x76, 0xf7, 0x5e, 0x89, 0x77, 0x6f, 0x92, 0x9d, 0xb0, 0xa2, - 0x7b, 0x51, 0xa7, 0xde, 0x3b, 0xbe, 0x53, 0x45, 0xd1, 0xa9, 0xbc, 0xec, 0x54, 0xd4, 0x15, 0xf2, - 0x1e, 0x8c, 0xd4, 0xbb, 0xb4, 0x21, 0x36, 0x11, 0x79, 0x2e, 0xe8, 0x9d, 0x63, 0x08, 0x0f, 0x6f, - 0x2e, 0x17, 0x04, 0x9b, 0x11, 0xbf, 0x4b, 0x1b, 0x26, 0x92, 0x29, 0x1f, 0xcd, 0x3f, 0xca, 0xc1, - 0x7c, 0x1a, 0x99, 0xda, 0x8f, 0xb1, 0x01, 0xfd, 0xb8, 0x02, 0x79, 0x76, 0x84, 0xb3, 0x63, 0x11, - 0xb7, 0x8b, 0x89, 0xe5, 0x02, 0x6b, 0xf2, 0x9e, 0x80, 0x99, 0x61, 0x29, 0xb9, 0x14, 0x4a, 0x04, - 0xf9, 0x88, 0x9f, 0x90, 0x08, 0xa4, 0x1c, 0xc0, 0xe6, 0x5a, 0x7e, 0xc2, 0x28, 0x38, 0x44, 0xc3, - 0x22, 0xc1, 0xd1, 0x5c, 0x7b, 0x02, 0xa2, 0x1d, 0x33, 0xf2, 0x50, 0x58, 0x81, 0xbc, 0xec, 0xd6, - 0x42, 0x01, 0x19, 0xcd, 0xc6, 0x06, 0xe9, 0xe1, 0x4d, 0x3e, 0x99, 0x4d, 0xf1, 0x5b, 0x65, 0x23, - 0x71, 0xc8, 0x4d, 0xc8, 0x6f, 0x7a, 0xee, 0xd3, 0x83, 0x5a, 0xd5, 0x5f, 0x98, 0xba, 0x98, 0xbb, - 0x32, 0xb1, 0x7c, 0xe6, 0xe8, 0xb0, 0x34, 0xd7, 0x65, 0x30, 0xcb, 0x69, 0xaa, 0x27, 0x6d, 0x88, - 0x78, 0x77, 0x24, 0x9f, 0x29, 0x66, 0xef, 0x8e, 0xe4, 0xb3, 0xc5, 0x1c, 0x17, 0x2f, 0xee, 0x8e, - 0xe4, 0x47, 0x8a, 0xa3, 0x77, 0x47, 0xf2, 0xa3, 0x28, 0x70, 0x4c, 0x14, 0xe1, 0xee, 0x48, 0x7e, - 0xb2, 0x58, 0xd0, 0x4e, 0x7b, 0x64, 0x10, 0xb8, 0x0d, 0xb7, 0x65, 0xe6, 0x1e, 0x98, 0x35, 0x73, - 0xac, 0x52, 0xae, 0x50, 0x2f, 0x30, 0x73, 0xe5, 0x47, 0x75, 0x73, 0xaa, 0x7a, 0xd0, 0xb1, 0xdb, - 0x4e, 0x83, 0x1f, 0x9d, 0x66, 0xee, 0x4e, 0x65, 0xd3, 0x28, 0xc3, 0x74, 0xd4, 0x97, 0x35, 0xc7, - 0x0f, 0xc8, 0x75, 0x98, 0x90, 0x10, 0xb6, 0xd1, 0xe5, 0x52, 0x7b, 0x6d, 0x46, 0x38, 0xc6, 0xef, - 0x65, 0x01, 0xa2, 0x92, 0xe7, 0xf4, 0x5b, 0xf8, 0x9c, 0xf6, 0x2d, 0x9c, 0x8a, 0x7f, 0x0b, 0x7d, - 0xbf, 0x02, 0xf2, 0x01, 0x8c, 0x31, 0xb1, 0xa0, 0x27, 0x45, 0xa2, 0x33, 0x71, 0x52, 0x2c, 0x7c, - 0x78, 0x73, 0x79, 0x5a, 0x10, 0x8f, 0xf9, 0x08, 0x31, 0x05, 0x99, 0xf2, 0x19, 0xfd, 0xe2, 0x78, - 0x34, 0x19, 0xe2, 0x03, 0xba, 0x02, 0xe1, 0x84, 0x8a, 0x01, 0xc5, 0x2f, 0xa3, 0x2b, 0x27, 0x39, - 0x2c, 0x25, 0x67, 0x81, 0x4d, 0xb8, 0x18, 0xd4, 0xf1, 0xa3, 0xc3, 0x52, 0xae, 0xe7, 0x39, 0xb8, - 0x08, 0xc8, 0x75, 0x10, 0xcb, 0x40, 0x0c, 0x20, 0x5b, 0x7d, 0xb3, 0x0d, 0xdb, 0x6a, 0x50, 0x2f, - 0x88, 0x46, 0x7c, 0x21, 0x23, 0x57, 0x0b, 0xe9, 0x82, 0xbe, 0x54, 0x16, 0x46, 0x70, 0x19, 0x5c, - 0x49, 0x1d, 0x95, 0x6b, 0x1a, 0x2a, 0x17, 0x23, 0x2f, 0xca, 0x53, 0xa9, 0xc9, 0xcb, 0xac, 0x84, - 0x48, 0xa9, 0x57, 0x40, 0x6e, 0x02, 0x5b, 0xa1, 0x62, 0xf4, 0x41, 0xd4, 0x53, 0x7e, 0x54, 0x5f, - 0x3e, 0x25, 0x38, 0x4d, 0xd9, 0xfb, 0x2a, 0x39, 0xc3, 0x26, 0xef, 0x00, 0x5b, 0xc2, 0x62, 0xdc, - 0x89, 0x20, 0xba, 0x53, 0xd9, 0xac, 0xb4, 0xdc, 0x5e, 0xb3, 0xfe, 0xa5, 0xb5, 0x88, 0x78, 0xb7, - 0xd1, 0x55, 0x89, 0xef, 0x54, 0x36, 0xc9, 0x3b, 0x30, 0x5a, 0xfe, 0xee, 0x9e, 0x47, 0x85, 0x7c, - 0x52, 0x90, 0x75, 0x32, 0xd8, 0xf2, 0x19, 0x41, 0x38, 0x63, 0xb3, 0x9f, 0xaa, 0x5c, 0x87, 0xe5, - 0xac, 0xe6, 0xad, 0xb5, 0xba, 0x90, 0x3d, 0x48, 0x6c, 0x58, 0xb6, 0xd6, 0x94, 0x66, 0x07, 0x5a, - 0xaf, 0x19, 0x15, 0xb9, 0x0e, 0xd9, 0x72, 0x15, 0x35, 0xa2, 0xc9, 0xa5, 0x09, 0x59, 0x6d, 0x75, - 0x79, 0x5e, 0x90, 0x14, 0x6c, 0xf5, 0x33, 0xc8, 0x96, 0xab, 0x64, 0x19, 0x46, 0xef, 0x1f, 0xd4, - 0xbf, 0xb4, 0x26, 0x36, 0xb3, 0x39, 0xb9, 0xae, 0x19, 0x6c, 0x03, 0x3f, 0x7b, 0x3f, 0x6a, 0x71, - 0xfb, 0xc0, 0xff, 0x66, 0x4b, 0x6d, 0x31, 0xa2, 0x91, 0x4d, 0x98, 0x28, 0x37, 0xdb, 0x4e, 0xe7, - 0x81, 0x4f, 0xbd, 0x85, 0x49, 0xe4, 0xb3, 0x10, 0x6b, 0x77, 0x58, 0xbe, 0xbc, 0x70, 0x74, 0x58, - 0x9a, 0xb7, 0xd9, 0x4f, 0xab, 0xe7, 0x53, 0x4f, 0xe1, 0x16, 0x31, 0x21, 0x9b, 0x00, 0xf7, 0xdd, - 0xce, 0xae, 0x5b, 0x0e, 0x5a, 0xb6, 0x1f, 0xdb, 0x1e, 0xa3, 0x82, 0x50, 0x7c, 0x38, 0xd5, 0x66, - 0x30, 0xcb, 0x66, 0x40, 0x85, 0xa1, 0xc2, 0x83, 0xdc, 0x86, 0xb1, 0x0d, 0xcf, 0x6e, 0xb4, 0xe8, - 0xc2, 0x14, 0x72, 0x9b, 0x17, 0xdc, 0x38, 0x50, 0xf6, 0x74, 0x41, 0x30, 0x2c, 0xba, 0x08, 0x56, - 0xd5, 0x14, 0x8e, 0xb8, 0xf8, 0x08, 0x48, 0x72, 0x4d, 0xa6, 0x28, 0x09, 0xaf, 0xab, 0x4a, 0x42, - 0xf4, 0xd1, 0x57, 0xdc, 0x76, 0xdb, 0xee, 0x34, 0x91, 0xf6, 0xe1, 0x92, 0xa2, 0x3b, 0x18, 0xdf, - 0x84, 0xd9, 0xc4, 0x60, 0x1d, 0xa3, 0xdf, 0xbd, 0x0f, 0x33, 0x55, 0xba, 0x63, 0xf7, 0x5a, 0x41, - 0x78, 0x92, 0xf0, 0x4f, 0x14, 0x35, 0xad, 0x26, 0x2f, 0xb2, 0xe4, 0xf1, 0x61, 0xc6, 0x91, 0x8d, - 0xf7, 0x60, 0x4a, 0xeb, 0x3e, 0x53, 0x15, 0xca, 0xbd, 0xa6, 0x13, 0xe0, 0x44, 0x66, 0x22, 0x55, - 0xc1, 0x66, 0x40, 0x9c, 0x2e, 0x33, 0x42, 0x30, 0xfe, 0xae, 0x2a, 0xad, 0x88, 0x9d, 0x88, 0xa9, - 0xd5, 0x62, 0x3f, 0xc8, 0x44, 0xb2, 0x53, 0x62, 0x3f, 0x08, 0x77, 0x83, 0xab, 0xfc, 0xdb, 0xcc, - 0x26, 0xbe, 0xcd, 0x49, 0x31, 0x13, 0x39, 0x7b, 0xdf, 0xe7, 0x5f, 0x64, 0xb8, 0x52, 0x73, 0x1f, - 0x7f, 0xa5, 0x7e, 0x00, 0x85, 0xfb, 0x76, 0xc7, 0xde, 0xa5, 0x4d, 0xd6, 0x03, 0xbe, 0xf7, 0x4c, - 0x2c, 0xbf, 0x78, 0x74, 0x58, 0x3a, 0xd3, 0xe6, 0x70, 0xec, 0xa5, 0xba, 0x88, 0x34, 0x02, 0x72, - 0x43, 0x7e, 0xd9, 0xa3, 0x29, 0x5f, 0xf6, 0x94, 0xa8, 0x7d, 0x14, 0xbf, 0x6c, 0xf1, 0x3d, 0x1b, - 0xbf, 0x3d, 0x81, 0x7d, 0x24, 0x6f, 0xc0, 0x98, 0x49, 0x77, 0xd9, 0x51, 0x93, 0x89, 0x26, 0xc9, - 0x43, 0x88, 0x3a, 0x30, 0x1c, 0x07, 0xe5, 0x0c, 0xda, 0xf4, 0xf7, 0x9c, 0x9d, 0x40, 0x8c, 0x4e, - 0x28, 0x67, 0x08, 0xb0, 0x22, 0x67, 0x08, 0x88, 0xae, 0xce, 0x72, 0x18, 0xdb, 0xfd, 0xcc, 0x6a, - 0x5d, 0x0c, 0x9a, 0x1c, 0x61, 0xb3, 0xaa, 0x6c, 0x23, 0x9e, 0x26, 0x25, 0x30, 0x6c, 0x72, 0x0b, - 0x26, 0xca, 0x8d, 0x86, 0xdb, 0x53, 0x74, 0x46, 0xfe, 0xdd, 0x72, 0xa0, 0x7e, 0x45, 0x12, 0xa1, - 0x92, 0x3a, 0x4c, 0xae, 0x30, 0x45, 0xcb, 0xa9, 0xd8, 0x8d, 0x3d, 0x39, 0x48, 0x72, 0x0f, 0x53, - 0x4a, 0xa2, 0x2f, 0x97, 0x22, 0xb0, 0xc1, 0x80, 0xea, 0x25, 0x83, 0x82, 0x4b, 0xb6, 0x60, 0xb2, - 0x4e, 0x1b, 0x1e, 0x0d, 0xea, 0x81, 0xeb, 0xd1, 0xd8, 0x96, 0xac, 0x94, 0x2c, 0x5f, 0x90, 0xba, - 0x9e, 0x8f, 0x40, 0xcb, 0x67, 0x50, 0x95, 0xab, 0x82, 0xcc, 0x85, 0xf6, 0xb6, 0xeb, 0x1d, 0x54, - 0x97, 0xc5, 0x36, 0x1d, 0x9d, 0xe9, 0x1c, 0xac, 0x0a, 0xed, 0x0c, 0xd2, 0xdc, 0xd6, 0x85, 0x76, - 0x8e, 0x85, 0x33, 0x55, 0xad, 0xa3, 0x6c, 0x25, 0x36, 0xed, 0x99, 0x68, 0x94, 0x11, 0xac, 0xcc, - 0x54, 0xd3, 0x47, 0xc9, 0x4c, 0x9b, 0x29, 0x81, 0x45, 0xba, 0x40, 0xe4, 0xac, 0x71, 0x41, 0xb7, - 0x45, 0x7d, 0x5f, 0xec, 0xe5, 0x67, 0x63, 0x93, 0x1f, 0x21, 0x2c, 0xbf, 0x22, 0x98, 0x9f, 0x97, - 0xcb, 0x40, 0xe8, 0x69, 0xac, 0x50, 0xa9, 0x27, 0x85, 0x37, 0x79, 0x1b, 0x60, 0xe5, 0x69, 0x40, - 0xbd, 0x8e, 0xdd, 0x0a, 0xef, 0xc1, 0xf0, 0xea, 0x87, 0x0a, 0xa8, 0x3e, 0xd1, 0x0a, 0x32, 0xa9, - 0xc0, 0x54, 0xd9, 0xf7, 0x7b, 0x6d, 0x6a, 0xba, 0x2d, 0x5a, 0x36, 0xd7, 0x71, 0xdf, 0x9f, 0x58, - 0x3e, 0x7f, 0x74, 0x58, 0x3a, 0x6b, 0x63, 0x81, 0xe5, 0xb9, 0x2d, 0x6a, 0xd9, 0x9e, 0xba, 0xba, - 0x75, 0x1a, 0xb2, 0x01, 0xb0, 0xd1, 0xa5, 0x9d, 0x3a, 0xb5, 0xbd, 0xc6, 0x5e, 0x6c, 0x9b, 0x8f, - 0x0a, 0x96, 0xcf, 0x89, 0x1e, 0xce, 0xbb, 0x5d, 0xda, 0xf1, 0x11, 0xa6, 0xb6, 0x2a, 0xc2, 0x24, - 0x8f, 0x60, 0xa6, 0x56, 0xbe, 0xbf, 0xe9, 0xb6, 0x9c, 0xc6, 0x81, 0x90, 0x9c, 0xa6, 0xf1, 0x76, - 0xf0, 0xb4, 0xe0, 0x1a, 0x2b, 0xe5, 0xdb, 0x93, 0x63, 0xb7, 0xad, 0x2e, 0x42, 0x2d, 0x21, 0x3f, - 0xc5, 0xb9, 0x90, 0x0f, 0xd9, 0x1a, 0xf4, 0x99, 0x30, 0xb8, 0x65, 0xef, 0xfa, 0x0b, 0x33, 0xda, - 0x6d, 0x57, 0xf9, 0x51, 0xfd, 0x9a, 0x52, 0xca, 0xc5, 0x94, 0x45, 0xbe, 0x10, 0x11, 0x6a, 0x05, - 0xf6, 0xae, 0xaf, 0x2f, 0xc4, 0x10, 0x9b, 0xdc, 0x05, 0xa8, 0xba, 0x8d, 0x5e, 0x9b, 0x76, 0x82, - 0xea, 0xf2, 0x42, 0x51, 0x57, 0x05, 0xc2, 0x82, 0x68, 0x6b, 0x6b, 0xba, 0x0d, 0x6d, 0x25, 0x2a, - 0xd4, 0x8b, 0xef, 0x43, 0x31, 0xde, 0x90, 0x13, 0x5e, 0x60, 0x4d, 0x15, 0xa7, 0x95, 0xde, 0xaf, - 0x3c, 0x75, 0xfc, 0xc0, 0x37, 0xbe, 0x47, 0xfb, 0x02, 0xd9, 0xee, 0x70, 0x8f, 0x1e, 0x6c, 0x7a, - 0x74, 0xc7, 0x79, 0x2a, 0x36, 0x33, 0xdc, 0x1d, 0x1e, 0xd3, 0x03, 0xab, 0x8b, 0x50, 0x75, 0x77, - 0x08, 0x51, 0xc9, 0x67, 0x21, 0x7f, 0xef, 0x7e, 0xfd, 0x1e, 0x3d, 0xa8, 0x55, 0xc5, 0x41, 0xc5, - 0xc9, 0xda, 0xbe, 0xc5, 0x48, 0xb5, 0xb5, 0x16, 0x62, 0x1a, 0xcb, 0xd1, 0x4e, 0xc8, 0x6a, 0xae, - 0xb4, 0x7a, 0x7e, 0x40, 0xbd, 0x5a, 0x55, 0xad, 0xb9, 0xc1, 0x81, 0xb1, 0x7d, 0x29, 0x44, 0x35, - 0xfe, 0x51, 0x16, 0x77, 0x41, 0xb6, 0xe0, 0x6b, 0x1d, 0x3f, 0xb0, 0x3b, 0x0d, 0x1a, 0x32, 0xc0, - 0x05, 0xef, 0x08, 0x68, 0x6c, 0xc1, 0x47, 0xc8, 0x7a, 0xd5, 0xd9, 0xa1, 0xab, 0x66, 0x55, 0xca, - 0x9b, 0x8b, 0x5a, 0x55, 0xbd, 0x5e, 0xf5, 0x04, 0x34, 0x56, 0x65, 0x84, 0x4c, 0x2e, 0xc3, 0x78, - 0xad, 0x7c, 0xbf, 0xdc, 0x0b, 0xf6, 0x70, 0x0f, 0xce, 0x73, 0xf9, 0x9c, 0xad, 0x56, 0xbb, 0x17, - 0xec, 0x99, 0xb2, 0x90, 0x5c, 0x47, 0xbd, 0xa7, 0x43, 0x03, 0x7e, 0x0d, 0x2b, 0x0e, 0x5d, 0x9f, - 0x83, 0x62, 0x6a, 0x0f, 0x03, 0x91, 0xd7, 0x60, 0xf4, 0xe1, 0x66, 0xa5, 0x56, 0x15, 0x8a, 0x33, - 0x9e, 0x44, 0x4f, 0xba, 0x0d, 0xbd, 0x25, 0x1c, 0xc5, 0xf8, 0x9d, 0x4c, 0xb4, 0xbf, 0x91, 0xcb, - 0x9a, 0x3c, 0x82, 0x97, 0x2e, 0x4c, 0x1e, 0x51, 0x2f, 0x5d, 0x50, 0x32, 0x31, 0x81, 0x54, 0x7a, - 0x7e, 0xe0, 0xb6, 0x57, 0x3a, 0xcd, 0xae, 0xeb, 0x74, 0x02, 0xa4, 0xe2, 0xa3, 0x66, 0x1c, 0x1d, - 0x96, 0x2e, 0x34, 0xb0, 0xd4, 0xa2, 0xa2, 0xd8, 0x8a, 0x71, 0x49, 0xa1, 0xfe, 0x04, 0x03, 0x69, - 0xfc, 0x41, 0x56, 0x3b, 0x97, 0x58, 0xf3, 0x4c, 0xda, 0x6d, 0x39, 0x0d, 0x54, 0xc5, 0xef, 0x78, - 0x6e, 0xaf, 0x1b, 0x2e, 0x07, 0x6c, 0x9e, 0x17, 0x95, 0x5a, 0xbb, 0xac, 0x58, 0xe7, 0x9d, 0x42, - 0x4d, 0xbe, 0x08, 0x05, 0x26, 0x22, 0x88, 0x9f, 0xfe, 0x42, 0x16, 0x67, 0xe2, 0x1c, 0x5e, 0x9f, - 0xf9, 0xd4, 0x0b, 0xd9, 0x68, 0xb2, 0x85, 0x4a, 0x41, 0x9a, 0xb0, 0xb0, 0xe5, 0xd9, 0x1d, 0xdf, - 0x09, 0x56, 0x3a, 0x0d, 0xef, 0x00, 0x45, 0x9a, 0x95, 0x8e, 0xbd, 0xdd, 0xa2, 0x4d, 0xec, 0x6e, - 0x7e, 0xf9, 0xca, 0xd1, 0x61, 0xe9, 0xe5, 0x80, 0xe3, 0x58, 0x34, 0x44, 0xb2, 0x28, 0xc7, 0x52, - 0x38, 0xf7, 0xe5, 0xc4, 0x44, 0x20, 0x39, 0xac, 0xf8, 0x7a, 0xc2, 0x4f, 0x77, 0x14, 0x81, 0xc2, - 0xd9, 0x60, 0x9b, 0x8f, 0xda, 0x4c, 0x95, 0xc0, 0xf8, 0xbf, 0x33, 0xd1, 0xc9, 0x49, 0xde, 0x85, - 0x49, 0xb1, 0xd4, 0x95, 0x75, 0x81, 0x5b, 0x9f, 0xfc, 0x2e, 0x62, 0x33, 0xab, 0xa2, 0x33, 0x85, - 0xbd, 0x5c, 0x59, 0x53, 0xd6, 0x06, 0x2a, 0xec, 0x76, 0xa3, 0x15, 0xa7, 0x92, 0x68, 0x6c, 0x11, - 0x6c, 0xad, 0xd5, 0xf5, 0x51, 0xc1, 0x45, 0x10, 0xb4, 0xfc, 0x94, 0x61, 0x50, 0x90, 0x3f, 0x79, - 0xc7, 0xff, 0xe7, 0x4c, 0xda, 0x01, 0x4d, 0x96, 0x61, 0xea, 0x91, 0xeb, 0x3d, 0xc6, 0xf9, 0x55, - 0x06, 0x01, 0x67, 0x7e, 0x5f, 0x16, 0xc4, 0x3b, 0xa4, 0x93, 0xa8, 0x6d, 0x53, 0x46, 0x43, 0x6f, - 0x5b, 0x8c, 0x83, 0x46, 0xc0, 0xe6, 0x21, 0xe4, 0x18, 0x7e, 0x1d, 0x38, 0x0f, 0x51, 0x13, 0xb4, - 0x25, 0xac, 0xa2, 0x1b, 0xff, 0x65, 0x46, 0x3d, 0x88, 0xd9, 0x20, 0x57, 0xdd, 0xb6, 0xed, 0x74, - 0x94, 0xee, 0xf0, 0x17, 0x21, 0x84, 0xc6, 0x5b, 0xa2, 0x20, 0x93, 0x9b, 0x90, 0xe7, 0xbf, 0xc2, - 0x4d, 0x12, 0xaf, 0xa3, 0x04, 0xa1, 0xbe, 0xc3, 0x4b, 0xc4, 0xc4, 0xcc, 0xe4, 0x4e, 0x3a, 0x33, - 0xbf, 0x9d, 0x51, 0xcf, 0xd0, 0x8f, 0x7b, 0x4a, 0xc4, 0x4e, 0x87, 0xec, 0x49, 0x4e, 0x87, 0x4f, - 0xdc, 0x85, 0xef, 0xcb, 0xc0, 0xa4, 0x72, 0xbd, 0xc0, 0xfa, 0xb0, 0xe9, 0xb9, 0x1f, 0xd1, 0x46, - 0xa0, 0xf7, 0xa1, 0xcb, 0x81, 0xb1, 0x3e, 0x84, 0xa8, 0x9f, 0xa0, 0x0f, 0xc6, 0x9f, 0x67, 0x84, - 0x72, 0x33, 0xf4, 0x36, 0xaf, 0x6f, 0xc9, 0xd9, 0x93, 0x9c, 0x6d, 0x5f, 0x84, 0x51, 0x93, 0x36, - 0x1d, 0x5f, 0x28, 0x26, 0xb3, 0xaa, 0x22, 0x85, 0x05, 0x91, 0xc0, 0xe3, 0xb1, 0x9f, 0xea, 0xc1, - 0x84, 0xe5, 0x4c, 0x02, 0xad, 0xf9, 0xb7, 0x5b, 0xf4, 0xa9, 0xc3, 0x3f, 0x46, 0x71, 0x46, 0xa2, - 0x04, 0xea, 0xf8, 0xd6, 0x0e, 0x2b, 0x11, 0xa2, 0xb0, 0xfa, 0xe1, 0x69, 0x34, 0xc6, 0x87, 0x00, - 0x51, 0x95, 0xe4, 0x1e, 0x14, 0xc5, 0x6a, 0x70, 0x3a, 0xbb, 0x5c, 0x02, 0x12, 0x63, 0x50, 0x3a, - 0x3a, 0x2c, 0xbd, 0xd8, 0x08, 0xcb, 0x84, 0xb8, 0xa8, 0xf0, 0x4d, 0x10, 0x1a, 0xff, 0x61, 0x16, - 0xb2, 0x65, 0x9c, 0x90, 0x7b, 0xf4, 0x20, 0xb0, 0xb7, 0x6f, 0x3b, 0x2d, 0xed, 0x63, 0x7a, 0x8c, - 0x50, 0x6b, 0xc7, 0xd1, 0xee, 0x19, 0x14, 0x64, 0xf6, 0x31, 0xdd, 0xf3, 0xb6, 0xdf, 0x42, 0x42, - 0xe5, 0x63, 0x7a, 0xec, 0x6d, 0xbf, 0x15, 0x27, 0x0b, 0x11, 0x89, 0x01, 0x63, 0xfc, 0xc3, 0x12, - 0x6b, 0x10, 0x8e, 0x0e, 0x4b, 0x63, 0xfc, 0xfb, 0x33, 0x45, 0x09, 0x39, 0x0b, 0xb9, 0xfa, 0xe6, - 0xba, 0xd8, 0x01, 0xf1, 0x3e, 0xcf, 0xef, 0x76, 0x4c, 0x06, 0x63, 0x75, 0xae, 0x55, 0xcb, 0x9b, - 0xa8, 0xc1, 0x8f, 0x46, 0x75, 0xb6, 0x9a, 0x76, 0x37, 0xae, 0xc3, 0x87, 0x88, 0xe4, 0x3d, 0x98, - 0xbc, 0x57, 0xad, 0xac, 0xba, 0x3e, 0xdf, 0xbd, 0xc6, 0xa2, 0xc5, 0xff, 0xb8, 0xd9, 0xb0, 0xf0, - 0x0a, 0x3d, 0x7e, 0x0c, 0x28, 0xf8, 0xc6, 0x0f, 0x67, 0x61, 0x52, 0xb9, 0xe0, 0x22, 0x9f, 0x15, - 0x2f, 0x9b, 0x19, 0x4d, 0x74, 0x57, 0x30, 0x58, 0x29, 0xbf, 0x0d, 0x69, 0xbb, 0x4d, 0x2a, 0xde, - 0x39, 0xa3, 0x9b, 0x87, 0xec, 0x30, 0x37, 0x0f, 0x6f, 0x03, 0xf0, 0x35, 0x80, 0x4d, 0x56, 0xc4, - 0x09, 0xc5, 0xc0, 0x41, 0x9d, 0x97, 0x08, 0x99, 0x3c, 0x84, 0xb9, 0x2d, 0xaf, 0xe7, 0x07, 0xf5, - 0x03, 0x3f, 0xa0, 0x6d, 0xc6, 0x6d, 0xd3, 0x75, 0x5b, 0x62, 0xfd, 0xbd, 0x7c, 0x74, 0x58, 0xba, - 0x18, 0xb0, 0x62, 0xcb, 0xc7, 0x72, 0x6c, 0x80, 0xd5, 0x75, 0x5d, 0xf5, 0x3e, 0x22, 0x8d, 0x81, - 0x61, 0x42, 0x41, 0xbd, 0xcd, 0x60, 0x27, 0x8b, 0x78, 0x05, 0x12, 0x77, 0xd4, 0xca, 0xc9, 0x22, - 0x5a, 0x99, 0x7c, 0x95, 0xd2, 0x49, 0x8c, 0xcf, 0xaa, 0x37, 0x69, 0xc3, 0x7e, 0xd8, 0xc6, 0x0f, - 0x64, 0xa2, 0x6d, 0xe4, 0xe1, 0x0d, 0xf2, 0x0e, 0x8c, 0xf1, 0x57, 0x37, 0xf1, 0x38, 0x79, 0x2a, - 0xd4, 0x46, 0xd5, 0x27, 0x39, 0x7e, 0x85, 0xfd, 0x87, 0xfc, 0x65, 0xfe, 0x05, 0x53, 0x90, 0x84, - 0xb7, 0xdf, 0xfa, 0x45, 0x98, 0xe4, 0x8e, 0xf7, 0xbc, 0x37, 0xd2, 0x6e, 0xbf, 0x8d, 0xdf, 0x1d, - 0x81, 0x69, 0x1d, 0x4d, 0x7d, 0x9a, 0xcb, 0x0c, 0xf5, 0x34, 0xf7, 0x45, 0xc8, 0xb3, 0xf1, 0x70, - 0x1a, 0x54, 0x4a, 0x64, 0x2f, 0xe3, 0x9b, 0x80, 0x80, 0x69, 0x4f, 0xce, 0xc0, 0xa7, 0x83, 0x29, - 0xa7, 0x66, 0x48, 0x45, 0x96, 0x94, 0xf7, 0xa3, 0x5c, 0x24, 0xa4, 0xc8, 0xf7, 0x23, 0xf5, 0x7b, - 0x08, 0x5f, 0x92, 0xde, 0x84, 0x31, 0x26, 0x98, 0x87, 0x77, 0x27, 0xd8, 0x4a, 0x26, 0xb3, 0xc7, - 0x6c, 0x4b, 0x38, 0x12, 0x79, 0x04, 0xf9, 0x35, 0xdb, 0x0f, 0xea, 0x94, 0x76, 0x86, 0x78, 0x74, - 0x2f, 0x89, 0xa1, 0x9a, 0xc3, 0x17, 0x6d, 0x9f, 0xd2, 0x4e, 0xec, 0xd5, 0x34, 0x64, 0x46, 0xbe, - 0x06, 0x50, 0x71, 0x3b, 0x81, 0xe7, 0xb6, 0xd6, 0xdc, 0xdd, 0x85, 0x31, 0x54, 0x5a, 0x2f, 0xc4, - 0x26, 0x20, 0x42, 0xe0, 0x7a, 0x6b, 0x78, 0x33, 0xd3, 0xe0, 0x05, 0x56, 0xcb, 0xdd, 0x55, 0xbf, - 0x83, 0x08, 0x9f, 0xdc, 0x86, 0xa2, 0xbc, 0x11, 0x78, 0xd0, 0xdd, 0xf5, 0x70, 0x81, 0x8c, 0x47, - 0x92, 0x07, 0x7d, 0x1a, 0x58, 0x3d, 0x01, 0x57, 0x77, 0xca, 0x38, 0x0d, 0xf9, 0x2a, 0x9c, 0x89, - 0xc3, 0xe4, 0x2c, 0xe7, 0x23, 0x99, 0x5c, 0x65, 0x97, 0xb2, 0xee, 0xfb, 0xb1, 0x30, 0xbe, 0x9d, - 0x85, 0x33, 0x7d, 0x3a, 0xcb, 0xbe, 0x07, 0x3c, 0xae, 0x95, 0xef, 0x21, 0x76, 0x4a, 0x73, 0x63, - 0xa1, 0x8b, 0x90, 0x15, 0x07, 0xdc, 0xc8, 0x72, 0xf1, 0xe8, 0xb0, 0x54, 0xd0, 0xe6, 0x31, 0x5b, - 0xab, 0x92, 0xbb, 0x30, 0xc2, 0xa6, 0x68, 0x88, 0x37, 0x6f, 0x79, 0x19, 0x34, 0x1d, 0x38, 0xea, - 0xf2, 0xc1, 0xa9, 0x43, 0x1e, 0xe4, 0xb3, 0x90, 0xdb, 0xda, 0x5a, 0xc3, 0xb5, 0x93, 0xc3, 0xbe, - 0x4f, 0x05, 0x41, 0x4b, 0x5b, 0xaa, 0x53, 0x8c, 0xf6, 0x5a, 0x68, 0x22, 0xc1, 0xd0, 0xc9, 0x97, - 0x63, 0xb6, 0x38, 0xaf, 0x0d, 0x9e, 0xe8, 0xe1, 0x4d, 0x73, 0x3e, 0x81, 0x45, 0x8c, 0xf1, 0x0b, - 0xd9, 0xe8, 0x1b, 0xbe, 0xed, 0xb4, 0x02, 0xea, 0x91, 0x45, 0xfe, 0x49, 0x46, 0xc2, 0x99, 0x19, - 0xfe, 0x26, 0x0b, 0xd1, 0xf7, 0xcd, 0x59, 0x85, 0x1f, 0xf2, 0x6b, 0xca, 0x87, 0x9c, 0xc3, 0x0f, - 0x79, 0xba, 0xef, 0x27, 0xfb, 0x5a, 0xca, 0xba, 0xc4, 0x0f, 0x31, 0x65, 0xed, 0xbd, 0x0c, 0x53, - 0xeb, 0xee, 0xca, 0xd3, 0x20, 0x44, 0x64, 0x1f, 0x60, 0xde, 0xd4, 0x81, 0x8c, 0xe3, 0x46, 0xab, - 0x49, 0xbd, 0xad, 0x3d, 0xbb, 0xa3, 0x3d, 0x3a, 0x9b, 0x09, 0x38, 0xc3, 0x5d, 0xa7, 0xfb, 0x3a, - 0xee, 0x38, 0xc7, 0x8d, 0xc3, 0x8d, 0xef, 0xcf, 0xca, 0xc1, 0x78, 0xb8, 0xf4, 0x9c, 0x3e, 0x6e, - 0xbe, 0xa5, 0x3d, 0x6e, 0xce, 0x85, 0xd7, 0xb2, 0xe1, 0x4b, 0xfd, 0xd2, 0x31, 0x0f, 0xfc, 0x7f, - 0x77, 0x0c, 0x0a, 0x2a, 0x3a, 0x1b, 0x87, 0x72, 0xb3, 0xe9, 0xa9, 0xe3, 0x60, 0x37, 0x9b, 0x9e, - 0x89, 0x50, 0xed, 0x3d, 0x3f, 0x37, 0xf0, 0x3d, 0xff, 0xeb, 0x30, 0x51, 0x69, 0x37, 0xb5, 0x57, - 0x46, 0x23, 0xa5, 0x79, 0xd7, 0x42, 0x24, 0xfe, 0x2d, 0x84, 0xb7, 0x8d, 0x8d, 0x76, 0x33, 0xf9, - 0xb6, 0x18, 0xb1, 0xd4, 0x4c, 0x01, 0x46, 0x3f, 0x89, 0x29, 0xc0, 0x2d, 0x98, 0x78, 0xe0, 0xd3, - 0xad, 0x5e, 0xa7, 0x43, 0x5b, 0xb8, 0xac, 0xf2, 0x5c, 0xd6, 0xef, 0xf9, 0xd4, 0x0a, 0x10, 0xaa, - 0x36, 0x20, 0x44, 0x55, 0x27, 0x78, 0x7c, 0xc0, 0x04, 0xdf, 0x84, 0xfc, 0x26, 0xa5, 0x1e, 0x8e, - 0xe9, 0x64, 0x24, 0xd2, 0x75, 0x29, 0xf5, 0x2c, 0x36, 0xb0, 0x9a, 0x89, 0x80, 0x40, 0xd4, 0xec, - 0x0a, 0x0a, 0x43, 0xda, 0x15, 0x90, 0x97, 0xa0, 0xd0, 0xed, 0x6d, 0xb7, 0x9c, 0x06, 0xf2, 0x15, - 0x06, 0x09, 0xe6, 0x24, 0x87, 0x31, 0xb6, 0x3e, 0xf9, 0x32, 0x4c, 0xa1, 0x8e, 0x13, 0x2e, 0xb9, - 0x69, 0xed, 0x39, 0x4e, 0x2b, 0xe3, 0x92, 0x4e, 0x83, 0x81, 0xac, 0x14, 0xbb, 0x19, 0x9d, 0x11, - 0xb9, 0x0b, 0xe3, 0xbb, 0x4e, 0x60, 0xed, 0xf5, 0xb6, 0x17, 0x66, 0x34, 0xa3, 0x93, 0x3b, 0x4e, - 0xb0, 0xda, 0xdb, 0xe6, 0x53, 0x1e, 0xb2, 0xc6, 0x1d, 0x6f, 0xd7, 0x09, 0xf6, 0x7a, 0xea, 0x5d, - 0xea, 0xd8, 0x2e, 0xe2, 0x2e, 0xd6, 0x61, 0x5a, 0x5f, 0x15, 0xcf, 0xe0, 0x85, 0x2f, 0xb4, 0xb7, - 0xc8, 0x17, 0x27, 0xee, 0x8e, 0xe4, 0xa1, 0x38, 0xc9, 0x2d, 0x2d, 0x4c, 0xd8, 0x0c, 0xc7, 0xc7, - 0x24, 0xf7, 0x7a, 0xdb, 0xd4, 0xeb, 0xd0, 0x80, 0xfa, 0x42, 0xa1, 0xf0, 0xcd, 0x91, 0x72, 0xb7, - 0xeb, 0x1b, 0xff, 0x59, 0x16, 0xc6, 0xcb, 0x8f, 0xea, 0xb5, 0xce, 0x8e, 0x8b, 0xef, 0x74, 0xe1, - 0xf3, 0x8c, 0xfa, 0x4e, 0x17, 0x3e, 0xcf, 0xa8, 0x8f, 0x32, 0xd7, 0x53, 0x54, 0x42, 0x34, 0xe5, - 0x55, 0x54, 0x42, 0x4d, 0x99, 0x8d, 0x5e, 0xaa, 0x72, 0x43, 0xbc, 0x54, 0x85, 0x97, 0x89, 0x23, - 0xc7, 0x5e, 0x26, 0x92, 0x77, 0x60, 0xb2, 0xd6, 0x09, 0xe8, 0xae, 0x17, 0x7d, 0x35, 0xa1, 0x7a, - 0x1a, 0x82, 0x55, 0x35, 0x41, 0xc1, 0x66, 0x4b, 0x92, 0x5f, 0x60, 0x86, 0x17, 0x97, 0xb8, 0x24, - 0xf9, 0x3d, 0x67, 0xec, 0x6e, 0x41, 0x22, 0x1a, 0xd5, 0xd8, 0x7a, 0x93, 0xd6, 0x00, 0x5c, 0x90, - 0x9d, 0x8e, 0x6e, 0xf0, 0xd9, 0xc0, 0x2e, 0xcf, 0xa6, 0x5b, 0x03, 0x18, 0x3f, 0x9d, 0x81, 0xf9, - 0xb4, 0x65, 0x44, 0xde, 0x87, 0x82, 0xeb, 0xed, 0xda, 0x1d, 0xe7, 0xbb, 0x79, 0x8f, 0x94, 0x0b, - 0x30, 0x15, 0xae, 0xaa, 0xfd, 0x2a, 0x9c, 0x0d, 0x88, 0xd2, 0x73, 0x5d, 0x5f, 0x4f, 0x1d, 0x10, - 0x05, 0x6c, 0xfc, 0x48, 0x16, 0x26, 0xcb, 0xdd, 0xee, 0x73, 0x6e, 0x29, 0xf6, 0x79, 0xed, 0x00, - 0x91, 0xda, 0x5e, 0xd8, 0xaf, 0xa1, 0x8c, 0xc4, 0x7e, 0x35, 0x0b, 0x33, 0x31, 0x0a, 0xb5, 0xf5, - 0x99, 0x21, 0xed, 0xc3, 0xb2, 0x43, 0xda, 0x87, 0xe5, 0x86, 0xb3, 0x0f, 0x1b, 0xf9, 0x24, 0x87, - 0xc2, 0xab, 0x90, 0x2b, 0x77, 0xbb, 0xf1, 0x77, 0xe6, 0x6e, 0xf7, 0xe1, 0x4d, 0xae, 0xb1, 0xdb, - 0xdd, 0xae, 0xc9, 0x30, 0xb4, 0x9d, 0x7a, 0x6c, 0xc8, 0x9d, 0xda, 0x78, 0x13, 0x26, 0x90, 0x17, - 0x5a, 0x65, 0x5d, 0x04, 0xdc, 0x62, 0x84, 0x41, 0x96, 0x56, 0x97, 0xd8, 0x7c, 0xfe, 0x45, 0x06, - 0x46, 0xf1, 0xf7, 0x73, 0xba, 0xc6, 0x96, 0xb4, 0x35, 0x56, 0x54, 0xd6, 0xd8, 0x30, 0xab, 0xeb, - 0x1f, 0xe4, 0x00, 0x2a, 0x1b, 0x66, 0x9d, 0x5f, 0xec, 0x90, 0xdb, 0x30, 0x63, 0xb7, 0x5a, 0xee, - 0x3e, 0x6d, 0x5a, 0xae, 0xe7, 0xec, 0x3a, 0x1d, 0x3e, 0x72, 0xf2, 0xf1, 0x53, 0x2f, 0x52, 0xfa, - 0x3c, 0x2d, 0x8a, 0x36, 0x78, 0x89, 0xca, 0xa7, 0x4d, 0x83, 0x3d, 0xb7, 0x29, 0x55, 0x54, 0x8d, - 0x8f, 0x28, 0x4a, 0xe1, 0x73, 0x9f, 0x97, 0xa8, 0x7c, 0xf6, 0x50, 0xe5, 0x96, 0x12, 0xb2, 0xc6, - 0x47, 0x14, 0xa5, 0xf0, 0xe1, 0x7a, 0xba, 0x4f, 0xd6, 0x60, 0x16, 0x21, 0x56, 0xc3, 0xa3, 0x4d, - 0xda, 0x09, 0x1c, 0xbb, 0xe5, 0x8b, 0x4b, 0x0d, 0xbc, 0xfe, 0x4a, 0x14, 0xaa, 0x4a, 0x1d, 0x16, - 0x56, 0xa2, 0x32, 0x72, 0x0d, 0xc6, 0xdb, 0xf6, 0x53, 0xcb, 0xde, 0xe5, 0x66, 0x00, 0x53, 0x5c, - 0x09, 0x16, 0x20, 0xf5, 0x18, 0x69, 0xdb, 0x4f, 0xcb, 0xbb, 0x94, 0xf5, 0x82, 0x3e, 0xed, 0xba, - 0xbe, 0xd2, 0x8b, 0xb1, 0xa8, 0x17, 0xb1, 0x22, 0xb5, 0x17, 0xa2, 0x48, 0xf4, 0xc2, 0xf8, 0x7f, - 0x46, 0x71, 0x69, 0x8b, 0x4d, 0x40, 0x58, 0xae, 0x65, 0x52, 0x2c, 0xd7, 0xde, 0x06, 0xe5, 0xe0, - 0x55, 0x77, 0x5e, 0x45, 0x84, 0x51, 0x15, 0xdf, 0x08, 0x99, 0x3c, 0x8e, 0xdb, 0xb0, 0xe5, 0xf0, - 0xcb, 0xb9, 0x14, 0x5f, 0x57, 0xcf, 0xc4, 0x7c, 0x6d, 0x15, 0x48, 0xad, 0xe3, 0xd3, 0x46, 0xcf, - 0xa3, 0xf5, 0xc7, 0x4e, 0xf7, 0x21, 0xf5, 0x9c, 0x9d, 0x03, 0x31, 0x2f, 0x28, 0x26, 0x3a, 0xa2, - 0xd4, 0xf2, 0x1f, 0x3b, 0x5d, 0xa6, 0x19, 0x3b, 0x3b, 0x07, 0x66, 0x0a, 0x0d, 0xf9, 0x00, 0xc6, - 0x4d, 0xba, 0xef, 0x39, 0x81, 0xb4, 0xcc, 0x98, 0x0e, 0xef, 0x71, 0x10, 0xca, 0xa7, 0xc8, 0xe3, - 0x3f, 0xd4, 0x8f, 0x55, 0x94, 0x93, 0x25, 0x7e, 0x76, 0x72, 0x0b, 0x8c, 0xa9, 0xa8, 0xb7, 0xe5, - 0x47, 0xf5, 0x7e, 0x47, 0x27, 0xb9, 0x0a, 0xa3, 0x78, 0x00, 0x0b, 0x11, 0x15, 0x3d, 0x1a, 0x50, - 0xa4, 0x53, 0xa5, 0x03, 0xc4, 0x20, 0x17, 0x00, 0xc2, 0x07, 0x31, 0x7f, 0x21, 0x8f, 0xc2, 0xa3, - 0x02, 0x89, 0x4b, 0x0f, 0x13, 0x27, 0x92, 0x1e, 0xd6, 0xa0, 0x68, 0xd2, 0x6f, 0xf6, 0x1c, 0x8f, - 0x36, 0xcb, 0x5d, 0x7c, 0x75, 0xf1, 0x17, 0x00, 0x17, 0xd8, 0xc5, 0xa3, 0xc3, 0xd2, 0x39, 0x4f, - 0x94, 0x59, 0x76, 0x97, 0x3f, 0xd6, 0x68, 0xab, 0x3b, 0x4e, 0x49, 0xde, 0x86, 0x11, 0xb6, 0x23, - 0x08, 0x6b, 0x37, 0x79, 0x7b, 0x1d, 0x6d, 0x12, 0xfc, 0x2e, 0xa1, 0xe1, 0x6a, 0x4b, 0x15, 0x49, - 0x3e, 0x3d, 0x0b, 0xb2, 0x5f, 0xcd, 0xc2, 0xa5, 0xf0, 0x10, 0xdc, 0xf0, 0xea, 0xe5, 0xfb, 0x6b, - 0xb5, 0xe6, 0xa6, 0xd0, 0x8a, 0x37, 0x3d, 0xf7, 0x89, 0xd3, 0xa4, 0xde, 0xc3, 0x1b, 0xc7, 0x6c, - 0xe1, 0x6b, 0xfc, 0xf3, 0xe1, 0x57, 0xea, 0x59, 0xcd, 0xd6, 0x46, 0x91, 0x35, 0x84, 0x39, 0x50, - 0xb7, 0x9b, 0xb8, 0x61, 0x5f, 0x7d, 0xc1, 0x8c, 0x18, 0x90, 0x1f, 0xc8, 0xc0, 0xe9, 0xf4, 0x86, - 0x88, 0x9b, 0x92, 0x92, 0xd4, 0xc8, 0xfa, 0xb4, 0x76, 0xf9, 0xd5, 0xa3, 0xc3, 0xd2, 0x25, 0xdf, - 0x6e, 0xb7, 0x2c, 0xa7, 0xc9, 0x6b, 0x73, 0x1a, 0xd4, 0xea, 0x0a, 0x04, 0xad, 0xde, 0x3e, 0x35, - 0x7d, 0x01, 0xe4, 0x4e, 0xbe, 0x90, 0x59, 0x06, 0xc8, 0xcb, 0x5b, 0x4b, 0xe3, 0x37, 0x32, 0xa0, - 0x2c, 0xed, 0xbc, 0x49, 0x9b, 0x8e, 0x47, 0x1b, 0x81, 0xd8, 0xcd, 0x85, 0xa7, 0x10, 0x87, 0xc5, - 0x4c, 0xab, 0x10, 0x46, 0xde, 0x87, 0x71, 0xb1, 0xeb, 0xe0, 0xc6, 0x1d, 0x7d, 0x12, 0xe2, 0x3e, - 0x94, 0xbb, 0x94, 0x25, 0x76, 0x2c, 0x49, 0xc4, 0xf4, 0xbe, 0xbb, 0x8f, 0xb6, 0x2a, 0x2d, 0xdb, - 0x69, 0xfb, 0xe2, 0xf4, 0xc3, 0x61, 0xfd, 0x68, 0x3f, 0xb0, 0x1a, 0x08, 0x55, 0xf5, 0xbe, 0x10, - 0xd5, 0xb8, 0x23, 0xaf, 0x63, 0x8f, 0xb1, 0x0f, 0x2c, 0xc1, 0xe8, 0xc3, 0xe8, 0x5a, 0x66, 0x79, - 0xe2, 0xe8, 0xb0, 0xc4, 0x97, 0x8b, 0xc9, 0xe1, 0xc6, 0xdf, 0xcc, 0xc0, 0xb4, 0xbe, 0x9e, 0xc8, - 0x35, 0x18, 0x13, 0x5e, 0x3a, 0x19, 0xbc, 0x7e, 0x62, 0xa3, 0x30, 0xc6, 0xfd, 0x73, 0x34, 0xaf, - 0x1c, 0x81, 0xc5, 0xce, 0x6f, 0xc1, 0x41, 0x1c, 0x5e, 0x78, 0x7e, 0x37, 0x38, 0xc8, 0x94, 0x65, - 0xc4, 0x60, 0x2a, 0x85, 0xdf, 0x6b, 0x05, 0xea, 0xab, 0x84, 0x87, 0x10, 0x53, 0x94, 0x18, 0x15, - 0x18, 0xe3, 0x7b, 0x49, 0xcc, 0x2e, 0x29, 0x73, 0x02, 0xbb, 0x24, 0xe3, 0x30, 0x03, 0x50, 0xaf, - 0xaf, 0xde, 0xa3, 0x07, 0x9b, 0xb6, 0xe3, 0xe1, 0x33, 0x1a, 0xee, 0xdb, 0xf7, 0xc4, 0xc7, 0x55, - 0x10, 0xcf, 0x68, 0x7c, 0x8f, 0x7f, 0x4c, 0x0f, 0xb4, 0x67, 0x34, 0x89, 0x8a, 0x87, 0x83, 0xe7, - 0x3c, 0xb1, 0x03, 0xca, 0x08, 0xb3, 0x48, 0xc8, 0x0f, 0x07, 0x0e, 0x8d, 0x51, 0x2a, 0xc8, 0xe4, - 0x6b, 0x30, 0x1d, 0xfd, 0x0a, 0x1f, 0x03, 0xa7, 0xc3, 0x0f, 0x58, 0x2f, 0x5c, 0xbe, 0x70, 0x74, - 0x58, 0x5a, 0x54, 0xb8, 0xc6, 0x9f, 0x09, 0x63, 0xcc, 0x8c, 0x5f, 0xce, 0xe0, 0x13, 0xb8, 0xec, - 0xe0, 0x65, 0x18, 0x09, 0xad, 0x2d, 0x0b, 0x62, 0xd7, 0xd1, 0x1f, 0x3c, 0xb0, 0x9c, 0x5c, 0x82, - 0x5c, 0xd4, 0x13, 0xdc, 0xab, 0xf5, 0x1e, 0xb0, 0x52, 0x72, 0x07, 0xc6, 0x87, 0x6a, 0x33, 0x7e, - 0x1a, 0x29, 0x6d, 0x95, 0xd4, 0x38, 0x0b, 0x77, 0x1f, 0x6d, 0x7d, 0xe7, 0xce, 0xc2, 0x4f, 0x64, - 0x61, 0x86, 0x8d, 0x6b, 0xb9, 0x17, 0xec, 0xb9, 0x9e, 0x13, 0x1c, 0x3c, 0xb7, 0xf7, 0x77, 0xef, - 0x6a, 0xa2, 0xf1, 0xa2, 0x3c, 0x65, 0xd4, 0xbe, 0x0d, 0x75, 0x8d, 0xf7, 0xdf, 0x8d, 0xc2, 0x5c, - 0x0a, 0x15, 0x79, 0x43, 0xbb, 0x62, 0x5f, 0x90, 0x5e, 0xb8, 0xdf, 0x3e, 0x2c, 0x15, 0x24, 0xfa, - 0x56, 0xe4, 0x95, 0xbb, 0xa4, 0xdb, 0x93, 0xf0, 0x91, 0xc2, 0x1b, 0x77, 0xd5, 0x9e, 0x44, 0xb7, - 0x22, 0xb9, 0x0a, 0xa3, 0xa6, 0xdb, 0xa2, 0xd2, 0xf8, 0x09, 0x25, 0x0c, 0x8f, 0x01, 0xb4, 0x37, - 0x63, 0x06, 0x20, 0xab, 0x30, 0xce, 0xfe, 0xb8, 0x6f, 0x77, 0xc5, 0x6b, 0x08, 0x09, 0x95, 0x33, - 0x84, 0x76, 0x9d, 0xce, 0xae, 0xaa, 0x9f, 0xb5, 0xa8, 0xd5, 0xb6, 0xbb, 0x9a, 0x28, 0xc4, 0x11, - 0x35, 0x3d, 0x2f, 0xdf, 0x5f, 0xcf, 0xcb, 0x1c, 0xab, 0xe7, 0xed, 0x00, 0xd4, 0x9d, 0xdd, 0x8e, - 0xd3, 0xd9, 0x2d, 0xb7, 0x76, 0x85, 0x2f, 0xf3, 0xd5, 0xfe, 0xb3, 0x70, 0x2d, 0x42, 0xc6, 0x85, - 0xfb, 0x22, 0x3e, 0x59, 0x72, 0x98, 0x65, 0xb7, 0x76, 0x35, 0x9f, 0x0b, 0x85, 0x33, 0x59, 0x07, - 0x28, 0x37, 0x02, 0xe7, 0x09, 0x5b, 0xc2, 0xbe, 0x90, 0x5b, 0x64, 0x93, 0x2b, 0xe5, 0x7b, 0xf4, - 0xa0, 0x4e, 0x83, 0xe8, 0xf1, 0xc7, 0x46, 0x54, 0xf6, 0x25, 0x68, 0x06, 0xf5, 0x11, 0x07, 0xd2, - 0x85, 0x53, 0xe5, 0x66, 0xd3, 0x61, 0x7d, 0xb0, 0x5b, 0xf8, 0x9a, 0x49, 0x9b, 0xc8, 0xba, 0x90, - 0xce, 0xfa, 0xaa, 0x60, 0xfd, 0x92, 0x1d, 0x52, 0x59, 0x01, 0x27, 0x8b, 0x57, 0x93, 0xce, 0xd8, - 0xa8, 0xc3, 0xb4, 0xde, 0x79, 0xdd, 0x07, 0xbb, 0x00, 0x79, 0xb3, 0x5e, 0xb6, 0xea, 0xab, 0xe5, - 0x1b, 0xc5, 0x0c, 0x29, 0x42, 0x41, 0xfc, 0x5a, 0xb2, 0x96, 0xde, 0xba, 0x55, 0xcc, 0x6a, 0x90, - 0xb7, 0x6e, 0x2c, 0x15, 0x73, 0x8b, 0xd9, 0x85, 0x4c, 0xcc, 0xfd, 0x69, 0xbc, 0x98, 0xe7, 0x57, - 0x73, 0xc6, 0xaf, 0x65, 0x20, 0x2f, 0xdb, 0x4e, 0x6e, 0x41, 0xae, 0x5e, 0x5f, 0x8d, 0x39, 0x2c, - 0x45, 0xa7, 0x0c, 0xdf, 0x4f, 0x7d, 0x5f, 0xb5, 0x4a, 0x65, 0x04, 0x8c, 0x6e, 0x6b, 0xad, 0x2e, - 0x84, 0x03, 0x49, 0x17, 0x6d, 0xde, 0x9c, 0x2e, 0xc5, 0x8b, 0xe3, 0x16, 0xe4, 0xee, 0x3e, 0xda, - 0x12, 0x5a, 0x85, 0xa4, 0x8b, 0xf6, 0x53, 0x4e, 0xf7, 0xd1, 0xbe, 0xba, 0xcb, 0x33, 0x02, 0xc3, - 0x84, 0x49, 0x65, 0x21, 0xf3, 0x43, 0xb7, 0xed, 0x86, 0x8e, 0xc7, 0xe2, 0xd0, 0x65, 0x10, 0x53, - 0x94, 0x30, 0x19, 0x61, 0xcd, 0x6d, 0xd8, 0x2d, 0x71, 0x7a, 0xa3, 0x8c, 0xd0, 0x62, 0x00, 0x93, - 0xc3, 0x8d, 0xdf, 0xc9, 0x40, 0x11, 0x25, 0x29, 0xb4, 0x2a, 0x75, 0x1f, 0xd3, 0xce, 0xc3, 0x1b, - 0xe4, 0x4d, 0xf9, 0xc9, 0x65, 0xc2, 0x0b, 0x87, 0x51, 0xfc, 0xe4, 0x62, 0x6f, 0x32, 0xe2, 0xb3, - 0x53, 0x7c, 0xbb, 0xb3, 0xc3, 0xfb, 0x84, 0x1e, 0xe3, 0xdb, 0x5d, 0x82, 0x51, 0x6c, 0x8e, 0xd8, - 0x1c, 0xb1, 0xe5, 0x01, 0x03, 0x98, 0x1c, 0xae, 0xec, 0x4d, 0x3f, 0x95, 0x4d, 0xf4, 0x61, 0xe9, - 0x3b, 0xca, 0xaf, 0x52, 0xef, 0xdc, 0x50, 0xfb, 0xf5, 0x87, 0x30, 0x1f, 0x1f, 0x12, 0xbc, 0x0c, - 0x2a, 0xc3, 0x8c, 0x0e, 0x97, 0xf7, 0x42, 0x67, 0x52, 0xeb, 0x7a, 0xb8, 0x64, 0xc6, 0xf1, 0x8d, - 0xff, 0x3d, 0x03, 0x13, 0xf8, 0xa7, 0xd9, 0x6b, 0xa1, 0x91, 0x50, 0xf9, 0x51, 0x5d, 0x5c, 0x47, - 0xab, 0xc2, 0x9c, 0xbd, 0xef, 0x5b, 0xe2, 0xc6, 0x5a, 0xdb, 0x63, 0x42, 0x64, 0x41, 0xca, 0xef, - 0x99, 0xe5, 0xe5, 0x48, 0x48, 0xca, 0x2f, 0xa4, 0xfd, 0x18, 0xa9, 0x40, 0x46, 0xd3, 0xc2, 0x47, - 0x75, 0xb6, 0xfc, 0xd4, 0x57, 0x7b, 0xa4, 0x73, 0x5b, 0xba, 0x69, 0x21, 0x47, 0xc3, 0x47, 0xfb, - 0x47, 0xf5, 0xb2, 0xb9, 0xae, 0x3d, 0xda, 0xb3, 0x36, 0x6a, 0x26, 0xec, 0x02, 0xc9, 0xf8, 0xc7, - 0x10, 0x1f, 0x40, 0x71, 0xe0, 0x9d, 0xf0, 0xdb, 0x78, 0x07, 0x46, 0xcb, 0xad, 0x96, 0xbb, 0x2f, - 0x76, 0x09, 0x79, 0x37, 0x15, 0x8e, 0x1f, 0x3f, 0xcf, 0xf0, 0x7a, 0x45, 0xf3, 0x15, 0x63, 0x00, - 0x52, 0x81, 0x89, 0xf2, 0xa3, 0x7a, 0xad, 0x56, 0xdd, 0xda, 0xe2, 0x7e, 0x31, 0xb9, 0xe5, 0x57, - 0xe4, 0xf8, 0x38, 0x4e, 0xd3, 0x8a, 0xbf, 0x1b, 0x47, 0xf2, 0x7b, 0x44, 0x47, 0xde, 0x03, 0xb8, - 0xeb, 0x3a, 0x1d, 0x7e, 0x9d, 0x24, 0x3a, 0x7f, 0xfe, 0xe8, 0xb0, 0x34, 0xf9, 0x91, 0xeb, 0x74, - 0xc4, 0xfd, 0x13, 0x6b, 0x7b, 0x84, 0x64, 0x2a, 0x7f, 0xb3, 0x91, 0x5e, 0x76, 0xb9, 0xe1, 0xcf, - 0x68, 0x34, 0xd2, 0xdb, 0x6e, 0xc2, 0xe6, 0x47, 0xa2, 0x91, 0x36, 0xcc, 0xd4, 0x7b, 0xbb, 0xbb, - 0x94, 0xed, 0xec, 0xe2, 0x02, 0x65, 0x4c, 0xe8, 0xb8, 0x61, 0x34, 0x12, 0xae, 0x8f, 0x30, 0x2d, - 0xc5, 0x5f, 0x7e, 0x83, 0x2d, 0xe4, 0x6f, 0x1d, 0x96, 0xc4, 0x7b, 0x34, 0x13, 0xd5, 0x7c, 0x49, - 0x9f, 0xbc, 0x3e, 0x89, 0xf3, 0x26, 0x1b, 0x30, 0xc6, 0xef, 0xee, 0x85, 0x9f, 0xc7, 0x4b, 0x03, - 0x3e, 0x1a, 0x8e, 0xd8, 0xef, 0x75, 0x88, 0x97, 0x92, 0x47, 0x90, 0xaf, 0x38, 0x5e, 0xa3, 0x45, - 0x2b, 0x35, 0x71, 0xf6, 0x5f, 0x1a, 0xc0, 0x52, 0xa2, 0xf2, 0x71, 0x69, 0xe0, 0xaf, 0x86, 0xa3, - 0xca, 0x02, 0x12, 0x83, 0xfc, 0x74, 0x06, 0x5e, 0x0c, 0x5b, 0x5f, 0xde, 0xa5, 0x9d, 0xe0, 0xbe, - 0x1d, 0x34, 0xf6, 0xa8, 0x27, 0x46, 0x69, 0x62, 0xd0, 0x28, 0x7d, 0x21, 0x31, 0x4a, 0x57, 0xa2, - 0x51, 0xb2, 0x19, 0x33, 0xab, 0xcd, 0xb9, 0x25, 0xc7, 0x6c, 0x50, 0xad, 0xc4, 0x02, 0x88, 0x5e, - 0xa5, 0x84, 0x9f, 0xe0, 0x2b, 0x03, 0x3a, 0x1c, 0x21, 0x0b, 0xfb, 0xfe, 0xf0, 0xb7, 0x66, 0xe7, - 0x16, 0x42, 0xc9, 0x3d, 0xe9, 0x54, 0xc5, 0xa5, 0x92, 0x8b, 0x03, 0x78, 0x73, 0x47, 0xab, 0xb9, - 0x01, 0xee, 0x93, 0x7c, 0xb6, 0xd7, 0xec, 0x6d, 0x21, 0x88, 0x1c, 0x33, 0xdb, 0x6b, 0x76, 0x34, - 0xdb, 0x2d, 0x3b, 0x3e, 0xdb, 0x6b, 0xf6, 0x36, 0xa9, 0x70, 0x4f, 0x50, 0xee, 0x36, 0x78, 0x61, - 0x10, 0xb7, 0xca, 0x26, 0x3f, 0x99, 0x53, 0x3c, 0x42, 0xbf, 0x02, 0x13, 0xf5, 0xae, 0xdd, 0xa0, - 0x2d, 0x67, 0x27, 0x10, 0x4f, 0x9e, 0x2f, 0x0f, 0x60, 0x15, 0xe2, 0x8a, 0x27, 0x2e, 0xf9, 0x53, - 0x55, 0x93, 0x42, 0x1c, 0xd6, 0xc2, 0xad, 0xcd, 0xfb, 0xe2, 0xd5, 0x73, 0x50, 0x0b, 0xb7, 0x36, - 0xef, 0x0b, 0x99, 0xa3, 0xdb, 0xd6, 0x64, 0x8e, 0xcd, 0xfb, 0xa4, 0x0b, 0xd3, 0x5b, 0xd4, 0xf3, - 0xec, 0x1d, 0xd7, 0x6b, 0xf3, 0x0b, 0x3b, 0xee, 0x8a, 0x72, 0x75, 0x10, 0x3f, 0x8d, 0x80, 0xdf, - 0xd4, 0x06, 0x12, 0x66, 0xc5, 0x6f, 0xf9, 0x62, 0xfc, 0x8d, 0xdf, 0xcc, 0xc1, 0x99, 0x3e, 0xad, - 0x24, 0xeb, 0x72, 0x57, 0xcc, 0x68, 0x37, 0xab, 0x7d, 0xd0, 0xaf, 0x1d, 0xbb, 0x51, 0xae, 0x41, - 0x71, 0xe5, 0x1e, 0x8a, 0xd3, 0xfc, 0xce, 0xbb, 0x52, 0x96, 0xe7, 0x09, 0xde, 0xfe, 0xd1, 0xc7, - 0x68, 0xa4, 0x27, 0xef, 0xca, 0x1b, 0x9a, 0x1b, 0x69, 0x82, 0x72, 0xf1, 0xfb, 0xb3, 0x30, 0x82, - 0x67, 0x5b, 0x2c, 0x78, 0x4e, 0xe6, 0x44, 0xc1, 0x73, 0xbe, 0x08, 0x85, 0x95, 0x7b, 0x5c, 0xd9, - 0x5d, 0xb5, 0xfd, 0x3d, 0xb1, 0xf3, 0xe2, 0x9b, 0x37, 0x7d, 0x6c, 0x09, 0xdd, 0x78, 0xcf, 0xd6, - 0xc4, 0x4a, 0x8d, 0x82, 0x3c, 0x80, 0x39, 0xde, 0x36, 0x67, 0xc7, 0x69, 0xf0, 0x18, 0x1c, 0x8e, - 0xdd, 0x12, 0xdb, 0xf0, 0xa5, 0xa3, 0xc3, 0x52, 0x89, 0x3e, 0x46, 0xf3, 0x43, 0x51, 0x6e, 0xf9, - 0x88, 0xa0, 0xda, 0x21, 0xa6, 0xd0, 0xab, 0x81, 0x01, 0xcc, 0x09, 0xac, 0x90, 0xd5, 0xc6, 0xea, - 0x66, 0xb8, 0x1c, 0xc9, 0xf8, 0x8d, 0x51, 0x58, 0xec, 0xbf, 0x83, 0x92, 0x2f, 0xe9, 0x13, 0x78, - 0xf9, 0xd8, 0x3d, 0xf7, 0xf8, 0x39, 0xfc, 0x32, 0xcc, 0xaf, 0x74, 0x02, 0xea, 0x75, 0x3d, 0x47, - 0x86, 0x82, 0x58, 0x75, 0x7d, 0x69, 0xee, 0x89, 0x76, 0x97, 0x34, 0x2c, 0x17, 0xf7, 0x92, 0x68, - 0x7c, 0xaa, 0xb0, 0x4a, 0xe5, 0x40, 0x56, 0x60, 0x5a, 0x81, 0xb7, 0x7a, 0xbb, 0x42, 0x66, 0xe0, - 0x4f, 0x0f, 0x0a, 0xcf, 0x56, 0x4f, 0xb5, 0x85, 0x8b, 0x11, 0x2d, 0xfe, 0x72, 0x4e, 0x2c, 0x8b, - 0x4b, 0x90, 0xab, 0xf7, 0xb6, 0xc5, 0x72, 0xe0, 0xca, 0x81, 0x76, 0x90, 0xb0, 0x52, 0xf2, 0x79, - 0x00, 0x93, 0x76, 0x5d, 0xdf, 0x09, 0x5c, 0xef, 0x40, 0xf5, 0x28, 0xf2, 0x42, 0xa8, 0x6e, 0x3b, - 0x2d, 0xa1, 0x64, 0x15, 0x66, 0xa2, 0x5f, 0x1b, 0xfb, 0x1d, 0x71, 0x99, 0x3a, 0xc1, 0x6f, 0x31, - 0x22, 0x72, 0xcb, 0x65, 0x65, 0xea, 0xd1, 0x18, 0x23, 0x23, 0x4b, 0x90, 0x7f, 0xe4, 0x7a, 0x8f, - 0x77, 0xd8, 0x44, 0x8d, 0x44, 0x87, 0xf7, 0xbe, 0x80, 0xa9, 0x87, 0x94, 0xc4, 0x63, 0x6b, 0x7e, - 0xa5, 0xf3, 0xc4, 0xf1, 0xdc, 0x4e, 0x9b, 0x76, 0x02, 0xf5, 0x0d, 0x9f, 0x46, 0x60, 0xcd, 0x97, - 0x33, 0x02, 0x33, 0x5d, 0xbd, 0xdc, 0x08, 0x5c, 0x4f, 0x3c, 0xe0, 0xf3, 0xe9, 0x66, 0x00, 0x6d, - 0xba, 0x19, 0x80, 0x0d, 0xa2, 0x49, 0x77, 0xc4, 0xb3, 0x01, 0x0e, 0xa2, 0x47, 0x77, 0x34, 0x47, - 0x55, 0xba, 0xc3, 0x84, 0x0f, 0x93, 0xee, 0xe0, 0x05, 0x83, 0x16, 0xdf, 0x69, 0x27, 0x71, 0x35, - 0x25, 0xd0, 0x8c, 0xdf, 0x9f, 0xe8, 0xbb, 0x6e, 0xd9, 0x6e, 0x7f, 0xb2, 0x75, 0xbb, 0x66, 0x0f, - 0xb1, 0x6e, 0xdf, 0x08, 0x2d, 0xb2, 0x55, 0xef, 0x6c, 0x84, 0xa8, 0xc7, 0x0d, 0xc7, 0x59, 0xfc, - 0x95, 0xfc, 0x49, 0x16, 0x91, 0x18, 0xa4, 0xec, 0xb0, 0x83, 0x94, 0x1b, 0x6a, 0x90, 0xc8, 0x32, - 0x4c, 0x85, 0x11, 0xc2, 0x36, 0xed, 0x40, 0xdb, 0x9b, 0xc2, 0xb0, 0x6e, 0x56, 0xd7, 0x0e, 0xd4, - 0xbd, 0x49, 0x27, 0x21, 0xef, 0xc2, 0xa4, 0x70, 0x4b, 0x40, 0x0e, 0xa3, 0x91, 0x65, 0x84, 0xf4, - 0x61, 0x88, 0xd1, 0xab, 0xe8, 0xec, 0x93, 0xdc, 0x74, 0xba, 0xb4, 0xe5, 0x74, 0x68, 0x1d, 0x6f, - 0xeb, 0xc5, 0x8a, 0xc1, 0x4f, 0xb2, 0x2b, 0x4a, 0x2c, 0x7e, 0x91, 0xaf, 0xdd, 0xd3, 0x69, 0x44, - 0xf1, 0xc5, 0x3a, 0x7e, 0xa2, 0xc5, 0xca, 0xed, 0xb2, 0xbc, 0x35, 0x77, 0xd7, 0x91, 0x96, 0xa8, - 0xd2, 0x2e, 0xcb, 0xb3, 0x5a, 0x0c, 0x1a, 0xb3, 0xcb, 0xe2, 0xa8, 0x4c, 0x93, 0x60, 0x3f, 0x6a, - 0x55, 0xf1, 0x44, 0x85, 0x9a, 0x04, 0x12, 0xe9, 0xe6, 0xbf, 0x1c, 0x49, 0x56, 0xb3, 0xd2, 0xb6, - 0x9d, 0x96, 0x70, 0xc2, 0x8d, 0xaa, 0xa1, 0x0c, 0x1a, 0xaf, 0x06, 0x51, 0x49, 0x03, 0x0a, 0x26, - 0xdd, 0xd9, 0xf4, 0xdc, 0x80, 0x36, 0x02, 0xda, 0x14, 0xd2, 0x93, 0x54, 0x20, 0x96, 0x5d, 0x97, - 0x4b, 0x86, 0xcb, 0x6f, 0xfe, 0xfe, 0x61, 0x29, 0xf3, 0xad, 0xc3, 0x12, 0x30, 0x10, 0xb7, 0x2d, - 0x3f, 0x3a, 0x2c, 0x9d, 0x61, 0xf3, 0xdf, 0x95, 0xc4, 0xea, 0x11, 0xa3, 0x32, 0x25, 0xdf, 0xc3, - 0x36, 0xdd, 0x70, 0x48, 0xa2, 0xca, 0x0a, 0x7d, 0x2a, 0x7b, 0x2b, 0xb5, 0xb2, 0x92, 0x32, 0xda, - 0xa9, 0x95, 0xa6, 0x56, 0x42, 0xde, 0x83, 0xc9, 0x4a, 0xad, 0xe2, 0x76, 0x76, 0x9c, 0xdd, 0xfa, - 0x6a, 0x19, 0x45, 0x30, 0xe1, 0x57, 0xd0, 0x70, 0xac, 0x06, 0xc2, 0x2d, 0x7f, 0xcf, 0xd6, 0xdc, - 0xcb, 0x22, 0x7c, 0x72, 0x07, 0xa6, 0xe5, 0x4f, 0x93, 0xee, 0x3c, 0x30, 0x6b, 0x28, 0x79, 0x49, - 0x67, 0x8e, 0x90, 0x03, 0x1b, 0x88, 0x9e, 0xa7, 0x4a, 0xe4, 0x31, 0x32, 0xb6, 0x18, 0xab, 0xb4, - 0xdb, 0x72, 0x0f, 0x58, 0xf3, 0xb6, 0x1c, 0xea, 0xa1, 0xac, 0x25, 0x16, 0x63, 0x33, 0x2c, 0xb1, - 0x02, 0x47, 0xdb, 0x6e, 0x63, 0x44, 0x64, 0x1d, 0x66, 0xc5, 0x12, 0x7f, 0xe8, 0xf8, 0xce, 0xb6, - 0xd3, 0x72, 0x82, 0x03, 0x94, 0xb2, 0x84, 0x14, 0x22, 0xbf, 0x8b, 0x27, 0x61, 0xa9, 0xc2, 0x2c, - 0x49, 0x6a, 0xfc, 0x5a, 0x16, 0xce, 0x0d, 0xd2, 0x38, 0x48, 0x5d, 0xdf, 0xcc, 0xae, 0x0c, 0xa1, - 0xa5, 0x1c, 0xbf, 0x9d, 0xad, 0xc0, 0xf4, 0x86, 0x62, 0xc2, 0x14, 0x9a, 0x94, 0xe1, 0x60, 0xa8, - 0xc6, 0x4d, 0xfa, 0x6a, 0x8f, 0x11, 0x2d, 0x3e, 0x11, 0xdb, 0xdc, 0xc7, 0x75, 0x74, 0xba, 0x05, - 0x13, 0x15, 0xb7, 0x13, 0xd0, 0xa7, 0x41, 0xcc, 0x1f, 0x97, 0x03, 0xe3, 0x4e, 0x5e, 0x12, 0xd5, - 0xf8, 0xff, 0xb3, 0x70, 0x7e, 0xa0, 0xc8, 0x4d, 0xb6, 0xf4, 0x51, 0xbb, 0x3a, 0x8c, 0x9c, 0x7e, - 0xfc, 0xb0, 0x2d, 0x25, 0xec, 0x8c, 0x8e, 0xf5, 0x23, 0x58, 0xfc, 0x1f, 0x32, 0x62, 0x90, 0x3e, - 0x03, 0xe3, 0x58, 0x55, 0x38, 0x44, 0xfc, 0x36, 0x0a, 0x77, 0x61, 0x47, 0xbf, 0x8d, 0xe2, 0x68, - 0xe4, 0x26, 0xe4, 0x2b, 0x76, 0xab, 0xa5, 0x78, 0x2b, 0xa3, 0x26, 0xd1, 0x40, 0x58, 0xcc, 0x58, - 0x4e, 0x22, 0x92, 0xb7, 0x01, 0xf8, 0xdf, 0xca, 0x59, 0x81, 0x9b, 0xa5, 0x20, 0x8b, 0x1d, 0x17, - 0x0a, 0x32, 0xc6, 0x38, 0x6c, 0xb8, 0xa1, 0x5b, 0x25, 0x8f, 0x71, 0xc8, 0x00, 0x5a, 0x8c, 0x43, - 0x06, 0x30, 0x7e, 0x3d, 0x07, 0x17, 0x06, 0xeb, 0x8d, 0xe4, 0x81, 0x3e, 0x05, 0xaf, 0x0d, 0xa5, - 0x6d, 0x1e, 0x3f, 0x07, 0x32, 0x62, 0x28, 0x1f, 0x90, 0x2b, 0x49, 0x73, 0xff, 0x6f, 0x1f, 0x96, - 0x14, 0x0b, 0xcc, 0xbb, 0xae, 0xd3, 0x51, 0xde, 0x26, 0xbe, 0x09, 0x50, 0x0f, 0xec, 0xc0, 0x69, - 0xdc, 0x7d, 0x74, 0x4f, 0x06, 0xd4, 0xb8, 0x35, 0x5c, 0xcb, 0x22, 0x3a, 0xbe, 0xaf, 0x08, 0x4f, - 0x23, 0x84, 0x5a, 0x1f, 0xed, 0x3f, 0xd6, 0x34, 0xe3, 0x08, 0x79, 0xf1, 0x0b, 0x50, 0x8c, 0x93, - 0x92, 0xcb, 0x30, 0x82, 0x0d, 0x50, 0x7c, 0x16, 0x62, 0x1c, 0xb0, 0x7c, 0xf1, 0xbe, 0x58, 0x3b, - 0x2b, 0x30, 0x2d, 0x1e, 0xc4, 0xf5, 0x3b, 0x38, 0xfc, 0x5e, 0xe5, 0x7b, 0x7a, 0xf2, 0x1e, 0x2e, - 0x46, 0x64, 0xfc, 0x45, 0x06, 0xce, 0xf6, 0xd5, 0xc8, 0xc9, 0xa6, 0x3e, 0x61, 0xaf, 0x1c, 0xa7, - 0xc2, 0x1f, 0x3b, 0x57, 0x8b, 0x3f, 0x26, 0xd7, 0xfe, 0xfb, 0x50, 0xa8, 0xf7, 0xb6, 0xe3, 0x4a, - 0x16, 0x0f, 0xaf, 0xa0, 0xc0, 0xd5, 0x13, 0x4c, 0xc5, 0x67, 0xfd, 0x97, 0x2f, 0xfe, 0xc2, 0xb2, - 0x44, 0xb1, 0xb2, 0x0a, 0x1d, 0x15, 0xd1, 0x15, 0x56, 0xb3, 0x2b, 0xd2, 0x89, 0x8c, 0x5f, 0xcd, - 0xa6, 0x6b, 0xab, 0x4c, 0xbb, 0x3f, 0x81, 0xb6, 0x7a, 0xa7, 0xb2, 0x79, 0x7c, 0xdf, 0xff, 0x2b, - 0xd9, 0x77, 0x7c, 0x00, 0x15, 0x3b, 0x9e, 0xbc, 0x50, 0x14, 0x0f, 0xa0, 0x72, 0x77, 0xf4, 0xf5, - 0x07, 0x50, 0x89, 0x4c, 0xde, 0x82, 0x89, 0x35, 0x97, 0xbb, 0xa8, 0xcb, 0x1e, 0x73, 0x4f, 0x3e, - 0x09, 0x54, 0xb7, 0xc7, 0x10, 0x93, 0xe9, 0x16, 0xfa, 0xc4, 0x4b, 0x63, 0x32, 0xd4, 0x2d, 0x62, - 0xcb, 0x45, 0xbf, 0x76, 0xd3, 0xc9, 0x8c, 0xff, 0x74, 0x14, 0x8c, 0xe3, 0x2f, 0x0d, 0xc8, 0x87, - 0xfa, 0xd8, 0x5d, 0x1b, 0xfa, 0xba, 0x61, 0xa8, 0x2d, 0xb7, 0xdc, 0x6b, 0x3a, 0xb4, 0xd3, 0xd0, - 0xfd, 0xcb, 0x05, 0x4c, 0xdd, 0x02, 0x25, 0xde, 0xc7, 0x71, 0xf7, 0x5a, 0xfc, 0x6f, 0x72, 0xd1, - 0xa7, 0x16, 0x3b, 0x1a, 0x33, 0x1f, 0xe3, 0x68, 0x24, 0xf7, 0xa0, 0xa8, 0x42, 0x94, 0x97, 0x50, - 0x94, 0x5c, 0x34, 0x46, 0xb1, 0x46, 0x25, 0x08, 0xf5, 0xf3, 0x35, 0x37, 0xfc, 0xf9, 0x1a, 0x89, - 0xef, 0x58, 0xff, 0x48, 0x52, 0x7c, 0x8f, 0xbb, 0x74, 0x2a, 0xe8, 0xd2, 0x1f, 0xdd, 0x17, 0x87, - 0xd6, 0xa8, 0xee, 0x8f, 0x9e, 0x72, 0x70, 0xa9, 0xe8, 0xd2, 0xa5, 0x1e, 0x7f, 0x2a, 0x1e, 0xa5, - 0xa1, 0x4b, 0x3d, 0xa7, 0x4f, 0x73, 0xa9, 0x0f, 0x49, 0xd8, 0x01, 0x68, 0xf6, 0x3a, 0x3c, 0x98, - 0xee, 0x78, 0x74, 0x00, 0x7a, 0xbd, 0x8e, 0x15, 0x0f, 0xa8, 0x1b, 0x22, 0x1a, 0x3f, 0x96, 0x85, - 0x69, 0xbe, 0xe1, 0xf2, 0xa7, 0x8c, 0xe7, 0xf6, 0x99, 0xe8, 0x1d, 0xed, 0x99, 0x48, 0x46, 0x0f, - 0x52, 0xbb, 0x36, 0xd4, 0x23, 0xd1, 0x1e, 0x90, 0x24, 0x0d, 0x31, 0xa1, 0xa0, 0x42, 0x07, 0xbf, - 0x0f, 0xdd, 0x88, 0x02, 0x4d, 0x89, 0xf3, 0x0e, 0x1f, 0xe9, 0x7c, 0x53, 0xe3, 0x61, 0xfc, 0xcd, - 0x2c, 0x4c, 0x29, 0x8f, 0xfa, 0xcf, 0xed, 0xc0, 0x7f, 0x41, 0x1b, 0xf8, 0x85, 0xd0, 0xad, 0x25, - 0xec, 0xd9, 0x50, 0xe3, 0xde, 0x83, 0xd9, 0x04, 0x49, 0xdc, 0x36, 0x22, 0x33, 0x8c, 0x6d, 0xc4, - 0x1b, 0xc9, 0xa8, 0x35, 0x3c, 0xf8, 0x73, 0x18, 0x0a, 0x41, 0x0d, 0x93, 0xf3, 0x13, 0x59, 0x98, - 0x17, 0xbf, 0x30, 0xcc, 0x1b, 0x97, 0x38, 0x9e, 0xdb, 0xb9, 0x28, 0x6b, 0x73, 0x51, 0xd2, 0xe7, - 0x42, 0xe9, 0x60, 0xff, 0x29, 0x31, 0x7e, 0x08, 0x60, 0xa1, 0x1f, 0xc1, 0xd0, 0xde, 0xa3, 0x91, - 0x3f, 0x4d, 0x76, 0x08, 0x7f, 0x9a, 0x35, 0x28, 0x62, 0x55, 0x22, 0x90, 0x93, 0xcf, 0xf4, 0xd6, - 0x5c, 0xa4, 0x24, 0xf2, 0x58, 0x7c, 0x22, 0xb0, 0x94, 0x1f, 0x53, 0x5c, 0x13, 0x94, 0xe4, 0x97, - 0x33, 0x30, 0x8d, 0xc0, 0x95, 0x27, 0xb4, 0x13, 0x20, 0xb3, 0x11, 0xe1, 0x68, 0x11, 0xbe, 0x22, - 0xd5, 0x03, 0xcf, 0xe9, 0xec, 0x8a, 0x67, 0xa4, 0x6d, 0xf1, 0x8c, 0xf4, 0x2e, 0x7f, 0xfe, 0xba, - 0xd6, 0x70, 0xdb, 0xd7, 0x77, 0x3d, 0xfb, 0x89, 0xc3, 0xed, 0x55, 0xec, 0xd6, 0xf5, 0x28, 0xf7, - 0x40, 0xd7, 0x89, 0x65, 0x13, 0x10, 0xac, 0xf0, 0x89, 0x8e, 0x37, 0x94, 0x62, 0xb5, 0x71, 0xfd, - 0x5a, 0x6f, 0x11, 0xf9, 0x2e, 0x38, 0xc3, 0xa3, 0xb4, 0x30, 0x35, 0xcd, 0xe9, 0xf4, 0xdc, 0x9e, - 0xbf, 0x6c, 0x37, 0x1e, 0x33, 0x59, 0x8d, 0xbb, 0xc3, 0x61, 0xcf, 0x1b, 0x61, 0xa1, 0xb5, 0xcd, - 0x4b, 0x35, 0xf7, 0xdf, 0x74, 0x06, 0x64, 0x15, 0x66, 0x79, 0x51, 0xb9, 0x17, 0xb8, 0xf5, 0x86, - 0xdd, 0x72, 0x3a, 0xbb, 0x78, 0x20, 0xe4, 0xf9, 0x79, 0x64, 0xf7, 0x02, 0xd7, 0xf2, 0x39, 0x5c, - 0x55, 0xb7, 0x13, 0x44, 0xa4, 0x06, 0x33, 0x26, 0xb5, 0x9b, 0xf7, 0xed, 0xa7, 0x15, 0xbb, 0x6b, - 0x37, 0x98, 0xf2, 0x9e, 0xc7, 0x27, 0x57, 0x3c, 0x95, 0x3d, 0x6a, 0x37, 0xad, 0xb6, 0xfd, 0xd4, - 0x6a, 0x88, 0x42, 0xfd, 0xde, 0x55, 0xa3, 0x0b, 0x59, 0x39, 0x9d, 0x90, 0xd5, 0x44, 0x9c, 0x95, - 0xd3, 0xe9, 0xcf, 0x2a, 0xa2, 0x93, 0xac, 0xb6, 0x6c, 0x6f, 0x97, 0x06, 0xdc, 0xdc, 0x13, 0x2e, - 0x66, 0xae, 0x64, 0x14, 0x56, 0x01, 0x96, 0x59, 0x68, 0xfa, 0x19, 0x67, 0xa5, 0xd0, 0xb1, 0x95, - 0xf7, 0xc8, 0x73, 0x02, 0xaa, 0xf6, 0x70, 0x12, 0x9b, 0x85, 0xe3, 0x8f, 0x86, 0xb2, 0xfd, 0xba, - 0x98, 0xa0, 0x8c, 0xb8, 0x29, 0x9d, 0x2c, 0x24, 0xb8, 0xa5, 0xf7, 0x32, 0x41, 0x19, 0x72, 0x53, - 0xfb, 0x39, 0x85, 0xfd, 0x54, 0xb8, 0xf5, 0xe9, 0x68, 0x82, 0x92, 0xac, 0xb3, 0x41, 0x0b, 0x68, - 0x87, 0xad, 0x68, 0x61, 0xee, 0x3a, 0x8d, 0x4d, 0x7b, 0x59, 0xd8, 0x6c, 0x15, 0x3d, 0x59, 0x6c, - 0xa5, 0x18, 0xbf, 0xc6, 0x89, 0xc9, 0xf7, 0xc2, 0xcc, 0x03, 0x9f, 0xde, 0xae, 0x6d, 0xd6, 0x65, - 0x50, 0x17, 0xbc, 0x21, 0x9a, 0x5e, 0xba, 0x71, 0xcc, 0xa6, 0x73, 0x4d, 0xa5, 0xc1, 0x14, 0x00, - 0x7c, 0xde, 0x7a, 0x3e, 0xb5, 0x76, 0x9c, 0xae, 0x1f, 0x46, 0xc8, 0x52, 0xe7, 0x2d, 0x56, 0x95, - 0xb1, 0x0a, 0xb3, 0x09, 0x36, 0x64, 0x1a, 0x80, 0x01, 0xad, 0x07, 0xeb, 0xf5, 0x95, 0xad, 0xe2, - 0x0b, 0xa4, 0x08, 0x05, 0xfc, 0xbd, 0xb2, 0x5e, 0x5e, 0x5e, 0x5b, 0xa9, 0x16, 0x33, 0x64, 0x16, - 0xa6, 0x10, 0x52, 0xad, 0xd5, 0x39, 0x28, 0xcb, 0x03, 0x40, 0x9b, 0x45, 0xfe, 0xe9, 0x06, 0xec, - 0x03, 0xc0, 0x33, 0xc5, 0xf8, 0xdb, 0x59, 0x38, 0x2b, 0x8f, 0x15, 0x1a, 0x30, 0x11, 0xcc, 0xe9, - 0xec, 0x3e, 0xe7, 0xa7, 0xc3, 0x6d, 0xed, 0x74, 0x78, 0x39, 0x76, 0x52, 0xc7, 0x7a, 0x39, 0xe0, - 0x88, 0xf8, 0xed, 0x09, 0x38, 0x3f, 0x90, 0x8a, 0x7c, 0x89, 0x9d, 0xe6, 0x0e, 0xed, 0x04, 0xb5, - 0x66, 0x8b, 0x6e, 0x39, 0x6d, 0xea, 0xf6, 0x02, 0x61, 0x5e, 0x7d, 0x09, 0x2f, 0x65, 0xb0, 0xd0, - 0x72, 0x9a, 0x2d, 0x6a, 0x05, 0xbc, 0x58, 0x5b, 0x6e, 0x49, 0x6a, 0xc6, 0x32, 0x4c, 0x47, 0x52, - 0xeb, 0x04, 0xd4, 0x7b, 0x82, 0x26, 0x5c, 0x21, 0xcb, 0xc7, 0x94, 0x76, 0x2d, 0x9b, 0x95, 0x5a, - 0x8e, 0x28, 0xd6, 0x59, 0x26, 0xa8, 0xc9, 0x6d, 0x85, 0x65, 0x85, 0xa9, 0x70, 0xf7, 0xed, 0xa7, - 0xc2, 0xa6, 0x44, 0x44, 0xf7, 0x0b, 0x59, 0x72, 0x2f, 0xd3, 0xb6, 0xfd, 0xd4, 0x4c, 0x92, 0x90, - 0xaf, 0xc1, 0x29, 0x71, 0x00, 0x89, 0x88, 0x03, 0xb2, 0xc7, 0x3c, 0x9e, 0xc1, 0xab, 0x47, 0x87, - 0xa5, 0x33, 0x32, 0x2e, 0xa2, 0x8c, 0x31, 0x91, 0xd6, 0xeb, 0x74, 0x2e, 0x64, 0x8b, 0x1d, 0xc8, - 0xb1, 0xe1, 0xb8, 0x4f, 0x7d, 0x5f, 0x3a, 0x1a, 0x09, 0xf5, 0x46, 0x1d, 0x4c, 0xab, 0xcd, 0xcb, - 0xcd, 0xbe, 0x94, 0x64, 0x15, 0xa6, 0x1f, 0xd1, 0x6d, 0x75, 0x7e, 0xc6, 0xc2, 0xad, 0xaa, 0xb8, - 0x4f, 0xb7, 0xfb, 0x4f, 0x4e, 0x8c, 0x8e, 0x38, 0x78, 0xc9, 0xfb, 0xf4, 0x60, 0xcd, 0xf1, 0x03, - 0xda, 0xa1, 0x1e, 0x46, 0xb2, 0x19, 0xc7, 0xcd, 0x60, 0x21, 0x92, 0x90, 0xf5, 0xf2, 0xe5, 0x97, - 0x8e, 0x0e, 0x4b, 0xe7, 0xb9, 0xc7, 0x5e, 0x4b, 0xc0, 0xad, 0x58, 0x32, 0x8f, 0x24, 0x57, 0xf2, - 0x0d, 0x98, 0x31, 0xdd, 0x5e, 0xe0, 0x74, 0x76, 0xeb, 0x81, 0x67, 0x07, 0x74, 0x97, 0x1f, 0x48, - 0x51, 0xc8, 0x9c, 0x58, 0xa9, 0x78, 0x1f, 0xe4, 0x40, 0xcb, 0x17, 0x50, 0xed, 0x44, 0xd0, 0x09, - 0xc8, 0xd7, 0x61, 0x9a, 0xfb, 0x9a, 0x87, 0x15, 0x4c, 0x68, 0x81, 0xc8, 0xf5, 0xc2, 0x87, 0x37, - 0x84, 0x09, 0x00, 0x42, 0xd3, 0x2a, 0x88, 0x71, 0x23, 0x5f, 0x11, 0x83, 0xb5, 0xe9, 0x74, 0x76, - 0xc3, 0x65, 0x0c, 0x38, 0xf2, 0x6f, 0x46, 0x43, 0xd2, 0x65, 0xcd, 0x95, 0xcb, 0xb8, 0x8f, 0x3d, - 0x53, 0x92, 0x0f, 0x09, 0xe0, 0x7c, 0xd9, 0xf7, 0x1d, 0x3f, 0x10, 0x4e, 0x08, 0x2b, 0x4f, 0x69, - 0xa3, 0xc7, 0x90, 0x99, 0xa2, 0x48, 0x3d, 0x6e, 0x04, 0x3b, 0xba, 0x7c, 0xed, 0xe8, 0xb0, 0xf4, - 0x9a, 0x8d, 0x88, 0x96, 0xf0, 0x5b, 0xb0, 0xa8, 0x44, 0xb5, 0xf6, 0x39, 0xae, 0xd2, 0x87, 0xc1, - 0x4c, 0xc9, 0xd7, 0xe1, 0x74, 0xc5, 0xf6, 0x69, 0xad, 0xe3, 0xd3, 0x8e, 0xef, 0x04, 0xce, 0x13, - 0x2a, 0x06, 0x15, 0x0f, 0xbf, 0x3c, 0xa6, 0x3d, 0x31, 0x1a, 0xb6, 0xcf, 0x3e, 0xcc, 0x10, 0xc5, - 0x12, 0x93, 0xa2, 0x54, 0xd3, 0x87, 0x0b, 0x31, 0x61, 0xba, 0x5e, 0x5f, 0xad, 0x3a, 0x76, 0xf8, - 0x5d, 0x4d, 0xe1, 0x78, 0xbd, 0x86, 0xf7, 0x33, 0xfe, 0x9e, 0xd5, 0x74, 0xec, 0xf0, 0x83, 0xea, - 0x33, 0x58, 0x31, 0x0e, 0xc6, 0x61, 0x06, 0x8a, 0xf1, 0xa9, 0x24, 0x5f, 0x86, 0x09, 0x6e, 0x0c, - 0x44, 0xfd, 0x3d, 0xe1, 0x2e, 0x2d, 0x6d, 0x4b, 0x42, 0xb8, 0x4e, 0x24, 0x9c, 0x82, 0xb8, 0xa9, - 0x11, 0x55, 0xed, 0x16, 0xd0, 0x29, 0x48, 0x12, 0x91, 0x26, 0x14, 0xf8, 0x6c, 0x51, 0x8c, 0x97, - 0x25, 0x6c, 0x42, 0x5f, 0x52, 0xbf, 0x0e, 0x51, 0x14, 0xe3, 0x8f, 0x4f, 0x3f, 0x62, 0x4d, 0x70, - 0x04, 0xad, 0x0a, 0x8d, 0xeb, 0x32, 0x40, 0x5e, 0x12, 0x1a, 0x67, 0xe1, 0x4c, 0x9f, 0x36, 0x1b, - 0x4f, 0xf0, 0x39, 0xb8, 0x4f, 0x8d, 0xe4, 0xcb, 0x30, 0x8f, 0x84, 0x15, 0xb7, 0xd3, 0xa1, 0x8d, - 0x00, 0xb7, 0x23, 0x79, 0x85, 0x9a, 0xe3, 0x36, 0x07, 0xbc, 0xbf, 0x8d, 0x10, 0xc1, 0x8a, 0xdf, - 0xa4, 0xa6, 0x72, 0x30, 0x7e, 0x2e, 0x0b, 0x0b, 0x62, 0x87, 0x33, 0x69, 0xc3, 0xf5, 0x9a, 0xcf, - 0xff, 0x89, 0xba, 0xa2, 0x9d, 0xa8, 0x97, 0xc2, 0x58, 0x1b, 0x69, 0x9d, 0x1c, 0x70, 0xa0, 0xfe, - 0x6a, 0x06, 0xce, 0x0d, 0x22, 0x62, 0xa3, 0x13, 0xc6, 0x07, 0x9b, 0x48, 0xc4, 0x01, 0xeb, 0xc2, - 0x1c, 0x4e, 0x68, 0x65, 0x8f, 0x36, 0x1e, 0xfb, 0xab, 0xae, 0x1f, 0xa0, 0x59, 0x7a, 0xb6, 0xcf, - 0x83, 0xe5, 0x1b, 0xa9, 0x0f, 0x96, 0xa7, 0xf9, 0x2a, 0x6b, 0x20, 0x0f, 0x1e, 0xc1, 0xec, 0x31, - 0x3d, 0xf0, 0xcd, 0x34, 0xd6, 0x68, 0x5e, 0x5c, 0xee, 0x05, 0x7b, 0x9b, 0x1e, 0xdd, 0xa1, 0x1e, - 0xed, 0x34, 0xe8, 0x77, 0x98, 0x79, 0xb1, 0xde, 0xb9, 0xa1, 0x6e, 0x30, 0xfe, 0x9d, 0x29, 0x98, - 0x4f, 0x23, 0x63, 0xe3, 0xa2, 0x28, 0xcd, 0xf1, 0xac, 0x6c, 0x3f, 0x98, 0x81, 0x42, 0x9d, 0x36, - 0xdc, 0x4e, 0xf3, 0x36, 0x9a, 0x85, 0x88, 0xd1, 0xb1, 0xb8, 0xd0, 0xc0, 0xe0, 0xd6, 0x4e, 0xcc, - 0x5e, 0xe4, 0xdb, 0x87, 0xa5, 0x2f, 0x0e, 0xa7, 0xab, 0x36, 0x5c, 0x8c, 0x71, 0x11, 0x60, 0xd4, - 0xf0, 0xb0, 0x0a, 0x7c, 0xe1, 0xd1, 0x2a, 0x25, 0xcb, 0x30, 0x25, 0x3e, 0x57, 0x57, 0x0d, 0x0f, - 0xc7, 0xc3, 0x91, 0xc8, 0x82, 0xc4, 0xfd, 0xa3, 0x46, 0x42, 0x6e, 0x42, 0xee, 0xc1, 0xd2, 0x6d, - 0x31, 0x07, 0x32, 0xee, 0xfa, 0x83, 0xa5, 0xdb, 0x78, 0x1d, 0xc6, 0x54, 0x8c, 0xa9, 0xde, 0x92, - 0x66, 0xa9, 0xf1, 0x60, 0xe9, 0x36, 0xf9, 0xeb, 0x70, 0xaa, 0xea, 0xf8, 0xa2, 0x0a, 0x6e, 0xe8, - 0xde, 0x44, 0xf7, 0xae, 0xb1, 0x3e, 0xab, 0xf7, 0x73, 0xa9, 0xab, 0xf7, 0xa5, 0x66, 0xc8, 0xc4, - 0xe2, 0x56, 0xf4, 0xcd, 0x78, 0x18, 0xbc, 0xf4, 0x7a, 0xc8, 0x47, 0x30, 0x8d, 0x77, 0xe7, 0x68, - 0xfb, 0x8f, 0x91, 0x87, 0xc7, 0xfb, 0xd4, 0xfc, 0x99, 0xd4, 0x9a, 0x17, 0xb9, 0x93, 0x38, 0x7a, - 0x10, 0x60, 0x94, 0x62, 0x4d, 0xeb, 0xd7, 0x38, 0x93, 0xbb, 0x30, 0x23, 0xc4, 0xaf, 0x8d, 0x9d, - 0xad, 0x3d, 0x5a, 0xb5, 0x0f, 0x84, 0x91, 0x05, 0x6a, 0x74, 0x42, 0x66, 0xb3, 0xdc, 0x1d, 0x2b, - 0xd8, 0xa3, 0x56, 0xd3, 0xd6, 0x04, 0x95, 0x18, 0x21, 0xf9, 0x1e, 0x98, 0x5c, 0x73, 0x1b, 0x4c, - 0xf2, 0xc6, 0x9d, 0x81, 0xdb, 0x5d, 0x7c, 0x88, 0x79, 0xbf, 0x38, 0x38, 0x26, 0x4e, 0x7d, 0xfb, - 0xb0, 0xf4, 0xce, 0x49, 0x17, 0x8d, 0x52, 0x81, 0xa9, 0xd6, 0x46, 0x2a, 0x90, 0x7f, 0x44, 0xb7, - 0x59, 0x6f, 0xe3, 0x39, 0x81, 0x24, 0x58, 0x98, 0x55, 0x89, 0x5f, 0x9a, 0x59, 0x95, 0x80, 0x11, - 0x0f, 0x66, 0x71, 0x7c, 0x36, 0x6d, 0xdf, 0xdf, 0x77, 0xbd, 0x26, 0x06, 0x7f, 0xef, 0x67, 0xd2, - 0xb1, 0x94, 0x3a, 0xf8, 0xe7, 0xf8, 0xe0, 0x77, 0x15, 0x0e, 0xaa, 0x00, 0x99, 0x60, 0x4f, 0xbe, - 0x01, 0xd3, 0xc2, 0xb3, 0xf9, 0xfe, 0xed, 0x32, 0x7e, 0x95, 0x05, 0xcd, 0x49, 0x4e, 0x2f, 0xe4, - 0x52, 0xaa, 0x70, 0x94, 0x96, 0x37, 0x50, 0x56, 0x7b, 0xc7, 0xd6, 0x5f, 0xcd, 0x54, 0x12, 0xb2, - 0x09, 0x93, 0x55, 0xfa, 0xc4, 0x69, 0x50, 0x74, 0xe4, 0x11, 0x46, 0xb4, 0x61, 0x52, 0x93, 0xa8, - 0x84, 0xdf, 0xc5, 0x34, 0x11, 0xc0, 0xdd, 0x82, 0x74, 0xab, 0xc9, 0x10, 0x91, 0xdc, 0x82, 0x5c, - 0xad, 0xba, 0x29, 0x6c, 0x68, 0xa5, 0x6f, 0x4c, 0xad, 0xb9, 0x29, 0x53, 0x40, 0xa0, 0x11, 0x94, - 0xd3, 0xd4, 0x2c, 0x70, 0x6b, 0xd5, 0x4d, 0xb2, 0x03, 0x53, 0x38, 0x00, 0xab, 0xd4, 0xe6, 0x63, - 0x3b, 0xd3, 0x67, 0x6c, 0xaf, 0xa5, 0x8e, 0xed, 0x02, 0x1f, 0xdb, 0x3d, 0x41, 0xad, 0xc5, 0xb4, - 0x57, 0xd9, 0x32, 0x91, 0x56, 0xe4, 0xd9, 0x90, 0x91, 0xd8, 0xb7, 0xd6, 0xd0, 0xc8, 0x43, 0x88, - 0xb4, 0x32, 0x2d, 0x47, 0x18, 0x1a, 0xbe, 0xaf, 0x89, 0x7e, 0x92, 0x0f, 0xf9, 0x02, 0x8c, 0x6c, - 0x3c, 0x0e, 0xec, 0x85, 0x59, 0x6d, 0x1c, 0x19, 0x48, 0x76, 0x1f, 0x6f, 0x21, 0xdd, 0xc7, 0x5a, - 0xa0, 0x24, 0xa4, 0x21, 0x4b, 0x30, 0xbe, 0x59, 0x7b, 0x58, 0x6f, 0xb9, 0xc1, 0x02, 0x09, 0xf5, - 0x24, 0xd2, 0x75, 0x9e, 0x58, 0x7e, 0xcb, 0xd5, 0x73, 0xf5, 0x48, 0x44, 0x36, 0x7d, 0xab, 0xb6, - 0xd7, 0xdc, 0xb7, 0x3d, 0xf4, 0xc0, 0x9c, 0xd3, 0xaa, 0x55, 0x4a, 0xf8, 0xf4, 0xed, 0x09, 0x40, - 0xcc, 0x2d, 0x53, 0x65, 0x41, 0xbe, 0x0b, 0xce, 0xfa, 0xce, 0x6e, 0xc7, 0x0e, 0x7a, 0x1e, 0xb5, - 0xec, 0xd6, 0xae, 0xeb, 0x39, 0xc1, 0x5e, 0xdb, 0xf2, 0x7b, 0x4e, 0x40, 0x17, 0xe6, 0xb5, 0x4c, - 0x9e, 0x75, 0x89, 0x57, 0x96, 0x68, 0x75, 0x86, 0x65, 0x9e, 0xf1, 0xd3, 0x0b, 0xc4, 0xed, 0xc5, - 0xac, 0x58, 0x82, 0x62, 0xd8, 0xee, 0xdf, 0x2e, 0x1b, 0xff, 0x45, 0x06, 0x37, 0x63, 0xf2, 0x1a, - 0x46, 0x31, 0x09, 0x9f, 0xe5, 0xf0, 0x1e, 0xd6, 0xee, 0xc6, 0x22, 0x23, 0x73, 0x14, 0xf2, 0x06, - 0x8c, 0xdd, 0xb6, 0x1b, 0x34, 0x90, 0x8f, 0xa7, 0x88, 0xbc, 0x83, 0x10, 0xf5, 0xd2, 0x96, 0xe3, - 0x30, 0x39, 0x91, 0x2f, 0xd2, 0x72, 0x94, 0x80, 0xb5, 0x52, 0x96, 0x6f, 0xa7, 0x28, 0x27, 0x8a, - 0xc5, 0xad, 0x64, 0x68, 0x8d, 0xd9, 0x19, 0xa7, 0x72, 0x30, 0xfe, 0x2c, 0x13, 0xed, 0x2e, 0xe4, - 0x55, 0x18, 0x31, 0x37, 0xc3, 0xf6, 0x73, 0x4f, 0xc7, 0x58, 0xf3, 0x11, 0x81, 0x7c, 0x05, 0x4e, - 0x29, 0x7c, 0x12, 0x46, 0xcf, 0xaf, 0xa0, 0x23, 0x9e, 0xd2, 0x92, 0x74, 0xcb, 0xe7, 0x74, 0x1e, - 0x28, 0x14, 0x47, 0x05, 0x55, 0xda, 0x71, 0x38, 0x6f, 0xa5, 0xb3, 0x2a, 0xef, 0x26, 0x22, 0xc4, - 0x3b, 0x9b, 0xc6, 0x81, 0xfb, 0xe1, 0x19, 0xbf, 0x95, 0xd1, 0x76, 0x8d, 0x30, 0xd3, 0x65, 0xe6, - 0x98, 0x4c, 0x97, 0x6f, 0x03, 0x94, 0x7b, 0x81, 0xbb, 0xd2, 0xf1, 0xdc, 0x16, 0xbf, 0x0d, 0x11, - 0xc1, 0xc1, 0xf1, 0x8e, 0x97, 0x22, 0x58, 0x73, 0x17, 0x0a, 0x91, 0x53, 0xed, 0xc3, 0x73, 0x1f, - 0xd7, 0x3e, 0xdc, 0xf8, 0x83, 0x8c, 0xf6, 0xdd, 0x30, 0x69, 0x4f, 0x7e, 0x7a, 0x8a, 0xf9, 0x4e, - 0xf2, 0xd3, 0x8b, 0x3e, 0xbc, 0x7f, 0x3b, 0x03, 0xa7, 0xb9, 0xa1, 0xf5, 0x7a, 0xaf, 0xbd, 0x4d, - 0xbd, 0x87, 0x76, 0xcb, 0x69, 0x46, 0x31, 0xa2, 0x22, 0x5b, 0x2e, 0xa5, 0x9a, 0x74, 0x7c, 0xae, - 0x70, 0x72, 0xc3, 0x6f, 0xab, 0x83, 0x85, 0xd6, 0x93, 0xb0, 0x54, 0x55, 0x38, 0xd3, 0xe9, 0x8d, - 0x5f, 0xcb, 0xc0, 0x4b, 0xc7, 0xd6, 0x42, 0xae, 0xc3, 0xb8, 0x8c, 0xca, 0x9e, 0xc1, 0x81, 0x47, - 0xa3, 0xc7, 0x64, 0x44, 0x76, 0x89, 0x45, 0xbe, 0x0a, 0xa7, 0x54, 0x56, 0x5b, 0x9e, 0xed, 0xa8, - 0xb1, 0xcf, 0x53, 0x5a, 0x1d, 0x30, 0x94, 0xb8, 0xd4, 0x95, 0xce, 0xc4, 0xf8, 0xff, 0x32, 0x4a, - 0xee, 0xdb, 0xe7, 0x54, 0x16, 0xbf, 0xa5, 0xc9, 0xe2, 0x32, 0x42, 0x5e, 0xd8, 0x2b, 0x56, 0x96, - 0xaa, 0x3f, 0xcd, 0x28, 0xc6, 0xbb, 0x08, 0xf8, 0x91, 0x2c, 0x4c, 0x3e, 0xf0, 0xa9, 0xc7, 0x1f, - 0x64, 0xbf, 0xb3, 0xe2, 0x84, 0x85, 0xfd, 0x1a, 0x2a, 0x92, 0xd3, 0x9f, 0x64, 0xf0, 0xa2, 0x5e, - 0xa5, 0x60, 0xa3, 0xa1, 0xe4, 0xbb, 0xc2, 0xd1, 0xc0, 0x4c, 0x57, 0x08, 0xe5, 0x01, 0x84, 0xd6, - 0xf4, 0xd4, 0x77, 0x98, 0xff, 0x70, 0x8d, 0x7c, 0x11, 0x46, 0x1f, 0xe0, 0xb5, 0xa3, 0x1e, 0x59, - 0x20, 0xe4, 0x8f, 0x85, 0x7c, 0x93, 0xee, 0xf9, 0x7a, 0xd0, 0x23, 0x4e, 0x48, 0xea, 0x30, 0x5e, - 0xf1, 0x28, 0x66, 0xb2, 0x1d, 0x19, 0xde, 0x2f, 0xb6, 0xc1, 0x49, 0xe2, 0x7e, 0xb1, 0x82, 0x93, - 0xf1, 0xb3, 0x59, 0x20, 0x51, 0x1f, 0x31, 0x6d, 0x8b, 0xff, 0xdc, 0x4e, 0xfa, 0x07, 0xda, 0xa4, - 0x9f, 0x4f, 0x4c, 0x3a, 0xef, 0xde, 0x50, 0x73, 0xff, 0x3b, 0x19, 0x38, 0x9d, 0x4e, 0x48, 0x2e, - 0xc1, 0xd8, 0xc6, 0xd6, 0xa6, 0x0c, 0x4e, 0x21, 0xba, 0xe2, 0x76, 0x51, 0xe7, 0x37, 0x45, 0x11, - 0x79, 0x13, 0xc6, 0xbe, 0x64, 0x56, 0xd8, 0x39, 0xa4, 0xc4, 0x17, 0xff, 0xa6, 0x67, 0x35, 0xf4, - 0xa3, 0x48, 0x20, 0xa9, 0x73, 0x9b, 0x7b, 0x66, 0x73, 0xfb, 0x13, 0x59, 0x98, 0x29, 0x37, 0x1a, - 0xd4, 0xf7, 0x99, 0x90, 0x43, 0xfd, 0xe0, 0xb9, 0x9d, 0xd8, 0xf4, 0xb0, 0x13, 0x5a, 0xdf, 0x86, - 0x9a, 0xd5, 0xdf, 0xcb, 0xc0, 0x29, 0x49, 0xf5, 0xc4, 0xa1, 0xfb, 0x5b, 0x7b, 0x1e, 0xf5, 0xf7, - 0xdc, 0x56, 0x73, 0xe8, 0x24, 0x06, 0x4c, 0xd0, 0xc3, 0xc8, 0xc4, 0xea, 0xeb, 0xfc, 0x0e, 0x42, - 0x34, 0x41, 0x8f, 0x47, 0x2f, 0xbe, 0x0e, 0xe3, 0xe5, 0x6e, 0xd7, 0x73, 0x9f, 0xf0, 0xcf, 0x5e, - 0x84, 0x35, 0xb3, 0x39, 0x48, 0x73, 0x2b, 0xe6, 0x20, 0xd6, 0x8c, 0x2a, 0xed, 0xf0, 0x80, 0x5d, - 0x53, 0xbc, 0x19, 0x4d, 0xda, 0x51, 0xe5, 0x63, 0x2c, 0x37, 0xea, 0x40, 0x36, 0x3d, 0xb7, 0xed, - 0x06, 0xb4, 0xc9, 0xfb, 0x83, 0xde, 0xd8, 0xc7, 0x06, 0xf8, 0xd9, 0x72, 0x82, 0x96, 0x16, 0xe0, - 0x27, 0x60, 0x00, 0x93, 0xc3, 0x8d, 0xff, 0x6b, 0x14, 0x0a, 0xea, 0xe8, 0x10, 0x83, 0x47, 0x26, - 0x77, 0x3d, 0x35, 0x24, 0x80, 0x8d, 0x10, 0x53, 0x94, 0x44, 0xf1, 0x34, 0xb2, 0xc7, 0xc6, 0xd3, - 0x78, 0x04, 0x53, 0x9b, 0x9e, 0x8b, 0xf1, 0xd7, 0x78, 0x86, 0x73, 0xbe, 0x15, 0xce, 0x29, 0xfa, - 0x23, 0x9b, 0x48, 0x7c, 0xd7, 0xc4, 0xdb, 0x93, 0xae, 0xc0, 0xb6, 0xe2, 0xf9, 0xcf, 0x75, 0x3e, - 0xdc, 0x64, 0xc2, 0xf6, 0x45, 0x10, 0xc5, 0xd0, 0x64, 0x82, 0x41, 0x74, 0x93, 0x09, 0x06, 0x51, - 0xbf, 0xb5, 0xd1, 0x67, 0xf5, 0xad, 0x91, 0x9f, 0xcd, 0xc0, 0x64, 0xb9, 0xd3, 0x11, 0x71, 0x3a, - 0x8e, 0x71, 0x51, 0xfe, 0xaa, 0xb0, 0x9a, 0x78, 0xe7, 0x63, 0x59, 0x4d, 0xa0, 0xdc, 0xe2, 0xa3, - 0xa4, 0x1a, 0x55, 0xa8, 0x6a, 0x50, 0x4a, 0x3b, 0xc8, 0x3b, 0x50, 0x0c, 0x17, 0x79, 0xad, 0xd3, - 0xa4, 0x4f, 0xa9, 0xbf, 0x30, 0x7e, 0x31, 0x77, 0x65, 0x4a, 0x04, 0x75, 0x55, 0x25, 0xd3, 0x38, - 0x22, 0xd9, 0x02, 0xb0, 0xc3, 0xd5, 0x15, 0xcb, 0x2d, 0x97, 0x5c, 0x7e, 0x42, 0x7a, 0xc6, 0xdf, - 0xf8, 0x30, 0xa5, 0x4a, 0xcf, 0x11, 0x1f, 0xd2, 0x86, 0x19, 0x9e, 0xd8, 0x0d, 0x13, 0xbe, 0x63, - 0x1c, 0x74, 0x38, 0x76, 0x1e, 0x5e, 0x15, 0xf7, 0x60, 0x2f, 0x8a, 0x74, 0x71, 0x98, 0x43, 0xde, - 0x4a, 0x09, 0x8a, 0x1e, 0xe7, 0xcd, 0x43, 0xe8, 0x9a, 0x67, 0x92, 0xed, 0xe5, 0x8b, 0xfe, 0x27, - 0x32, 0x70, 0x5a, 0x5d, 0xf4, 0xf5, 0xde, 0x76, 0xdb, 0x41, 0x5d, 0x90, 0x5c, 0x83, 0x09, 0xb1, - 0x26, 0x43, 0x25, 0x2a, 0x19, 0xce, 0x3d, 0x42, 0x21, 0x2b, 0x6c, 0x19, 0x32, 0x1e, 0x42, 0xea, - 0x9e, 0x8b, 0xed, 0x53, 0xac, 0x28, 0x4a, 0x1a, 0xea, 0xe1, 0x6f, 0x7d, 0x7d, 0x32, 0x88, 0xf1, - 0x3e, 0xcc, 0xea, 0x33, 0x51, 0xa7, 0x01, 0xb9, 0x0a, 0xe3, 0x72, 0xfa, 0x32, 0xe9, 0xd3, 0x27, - 0xcb, 0x8d, 0x47, 0x40, 0x12, 0xf4, 0x3e, 0x9a, 0x37, 0xd1, 0x40, 0x9a, 0xdf, 0xc9, 0xc7, 0xc5, - 0x04, 0xe2, 0xf2, 0x9c, 0x68, 0xdf, 0xa4, 0x66, 0x23, 0xce, 0x48, 0x8d, 0x3f, 0x9b, 0x86, 0xb9, - 0x94, 0x3d, 0xf7, 0x18, 0x99, 0xa8, 0xa4, 0x6f, 0x10, 0x13, 0x61, 0x84, 0x03, 0xb9, 0x2d, 0xbc, - 0x0f, 0xa3, 0xc7, 0x6e, 0x07, 0xdc, 0x43, 0x20, 0xb6, 0x0b, 0x70, 0xb2, 0x4f, 0x45, 0x2e, 0x52, - 0x83, 0x90, 0x8c, 0x3e, 0xb3, 0x20, 0x24, 0xcb, 0x30, 0x25, 0x7a, 0x25, 0xb6, 0x2b, 0xc5, 0x52, - 0xd5, 0xe3, 0x05, 0x56, 0x62, 0xdb, 0xd2, 0x49, 0x38, 0x0f, 0xdf, 0x6d, 0x3d, 0xa1, 0x82, 0xc7, - 0xb8, 0xca, 0x03, 0x0b, 0x52, 0x79, 0x28, 0x24, 0xe4, 0x3f, 0xc6, 0xdc, 0x54, 0x08, 0x51, 0xf7, - 0xac, 0xfc, 0xa0, 0x3d, 0xab, 0xf9, 0x6c, 0xf6, 0xac, 0xf3, 0xb2, 0x8d, 0xe9, 0x7b, 0x57, 0x4a, - 0xb3, 0xc8, 0xaf, 0x64, 0x60, 0x96, 0x47, 0xc2, 0x50, 0x1b, 0x3b, 0x30, 0xba, 0x41, 0xe3, 0xd9, - 0x34, 0xf6, 0x9c, 0xc8, 0xc9, 0x92, 0xde, 0xd6, 0x64, 0xa3, 0xc8, 0x77, 0x01, 0x84, 0x5f, 0x14, - 0x0f, 0x18, 0x39, 0xb9, 0x74, 0x2e, 0x65, 0x17, 0x08, 0x91, 0xa2, 0xf8, 0xf1, 0x41, 0x48, 0xa7, - 0x65, 0x24, 0x0b, 0xa1, 0xe4, 0xaf, 0xc3, 0x3c, 0xfb, 0x5e, 0x42, 0x88, 0x88, 0xdb, 0xb3, 0x30, - 0x89, 0xb5, 0x7c, 0xb6, 0xbf, 0x4c, 0x74, 0x2d, 0x8d, 0x8c, 0x87, 0x17, 0x8d, 0xb2, 0xba, 0x06, - 0xaa, 0x8b, 0x7f, 0x6a, 0x45, 0x18, 0x0e, 0x0b, 0x5b, 0xcf, 0x63, 0xbc, 0xf7, 0xd9, 0xdf, 0xce, - 0xca, 0x6f, 0x81, 0xef, 0x6f, 0xbe, 0xee, 0x30, 0x8a, 0x20, 0xf2, 0x25, 0x20, 0x61, 0x08, 0x09, - 0x0e, 0xa3, 0x32, 0xfe, 0x3b, 0xbf, 0x36, 0x8e, 0x42, 0x51, 0x78, 0xb2, 0x58, 0x5d, 0x24, 0x49, - 0x62, 0x42, 0x61, 0x5e, 0x74, 0x9a, 0x41, 0x65, 0xe2, 0x28, 0x7f, 0x61, 0x5a, 0x8b, 0x8a, 0x14, - 0x95, 0x44, 0xe9, 0x5f, 0x95, 0xec, 0x53, 0xda, 0x95, 0x53, 0x1a, 0x3b, 0x72, 0x0b, 0x26, 0xd0, - 0x6b, 0x73, 0x55, 0x1a, 0x6d, 0x09, 0x03, 0x12, 0xf4, 0xef, 0xb4, 0xf6, 0x74, 0xd3, 0xab, 0x08, - 0x95, 0xa9, 0x03, 0x55, 0xef, 0xc0, 0xec, 0x75, 0xf0, 0x72, 0x57, 0xdc, 0x77, 0x34, 0xbd, 0x03, - 0xcb, 0xeb, 0xe9, 0x6e, 0xbd, 0x88, 0x44, 0xbe, 0x01, 0x93, 0xf7, 0xed, 0xa7, 0xf2, 0x6e, 0x57, - 0x5c, 0xe0, 0x0e, 0xda, 0x81, 0x0c, 0xd9, 0x9b, 0xb6, 0xfd, 0xd4, 0x6a, 0xf6, 0xe2, 0xc1, 0x4d, - 0x71, 0x1b, 0x52, 0x59, 0x92, 0xaf, 0x01, 0x28, 0x37, 0xce, 0xe4, 0xd8, 0x0a, 0x5e, 0x92, 0xb1, - 0xbe, 0x52, 0x6f, 0xa2, 0x91, 0xbf, 0xc2, 0x30, 0x26, 0x39, 0xcc, 0x7f, 0x7a, 0x92, 0xc3, 0xa9, - 0x4f, 0x4f, 0x72, 0x58, 0xdc, 0x86, 0xb3, 0x7d, 0x3f, 0x9d, 0x94, 0x10, 0xac, 0xd7, 0xf5, 0x10, - 0xac, 0x67, 0xfb, 0x1d, 0xb1, 0xbe, 0x1e, 0xe6, 0x7f, 0xae, 0x38, 0xdf, 0x5f, 0x3a, 0xf9, 0x56, - 0x36, 0x76, 0xe4, 0x0a, 0xc5, 0x82, 0xa7, 0x98, 0xe9, 0x27, 0x93, 0x64, 0x31, 0x1d, 0x28, 0x3f, - 0x94, 0xb3, 0x91, 0x42, 0x13, 0xcb, 0xa0, 0xce, 0x8f, 0xe7, 0x4f, 0x7a, 0xfa, 0xbe, 0x0b, 0xd3, - 0x3c, 0x11, 0xe0, 0x3d, 0x7a, 0xb0, 0xef, 0x7a, 0x4d, 0x99, 0x26, 0x1b, 0x65, 0xf0, 0x44, 0xfa, - 0xdd, 0x18, 0x2e, 0xa9, 0x4a, 0x47, 0xc0, 0x51, 0xac, 0xfd, 0x6c, 0xea, 0x2e, 0xc6, 0x10, 0x06, - 0xf9, 0x08, 0x92, 0xb7, 0x42, 0x41, 0x8d, 0x7a, 0x6a, 0xb0, 0x7f, 0x4f, 0x02, 0x53, 0xe4, 0x35, - 0xea, 0x19, 0x7f, 0x94, 0x03, 0xc2, 0x6b, 0xaa, 0xd8, 0x5d, 0x1b, 0xdd, 0x64, 0x1d, 0x0c, 0x30, - 0x53, 0x14, 0x38, 0xf6, 0x76, 0x8b, 0xaa, 0xd1, 0x99, 0x84, 0x91, 0x6c, 0x58, 0x66, 0xc5, 0x15, - 0x9d, 0x04, 0x61, 0x9f, 0xad, 0x2e, 0xfb, 0x49, 0xb6, 0xba, 0x6f, 0xc0, 0x8b, 0xe5, 0x2e, 0x66, - 0x14, 0x95, 0xb5, 0xdc, 0x76, 0x3d, 0xb9, 0x49, 0x69, 0x0e, 0x58, 0x76, 0x88, 0x96, 0x68, 0xe9, - 0x20, 0x16, 0x8a, 0x9c, 0xc2, 0xd6, 0x65, 0x37, 0x50, 0x1d, 0xfa, 0xa5, 0x9c, 0xd2, 0xc5, 0x92, - 0x14, 0x39, 0x85, 0x93, 0x48, 0x1e, 0x8e, 0x27, 0xe5, 0x14, 0x4c, 0x95, 0x13, 0xf1, 0x70, 0x3c, - 0xda, 0x47, 0xd6, 0x09, 0x49, 0xc8, 0xbb, 0x30, 0x59, 0xee, 0x05, 0xae, 0x60, 0x2c, 0xac, 0xbb, - 0x23, 0x3b, 0x6c, 0xd1, 0x14, 0x4d, 0xf5, 0x89, 0xd0, 0x8d, 0x3f, 0xcd, 0xc1, 0xd9, 0xe4, 0xf4, - 0x8a, 0xd2, 0xf0, 0xfb, 0xc8, 0x1c, 0xf3, 0x7d, 0xa4, 0xad, 0x86, 0x6c, 0x14, 0xe6, 0xfc, 0x59, - 0xac, 0x06, 0x9e, 0x98, 0xf4, 0x63, 0xae, 0x86, 0x3a, 0x4c, 0xaa, 0xe7, 0xdd, 0xc8, 0xc7, 0x3d, - 0xef, 0x54, 0x2e, 0x4c, 0xa9, 0xe7, 0x71, 0x0c, 0x46, 0xa3, 0xa7, 0xa3, 0x78, 0x08, 0x03, 0x8e, - 0x41, 0xfe, 0x2d, 0xb8, 0xc8, 0xf7, 0xa4, 0x78, 0x67, 0x97, 0x0f, 0x24, 0x47, 0x31, 0x71, 0x4b, - 0x47, 0x87, 0xa5, 0x6b, 0xfc, 0xaa, 0xc4, 0x4a, 0x0c, 0x9b, 0xb5, 0x7d, 0x60, 0xc9, 0x96, 0x29, - 0x95, 0x1c, 0xcb, 0x1b, 0xb3, 0x91, 0x2a, 0x99, 0x22, 0xdf, 0x4c, 0x73, 0x7b, 0xe1, 0x51, 0x86, - 0x39, 0x58, 0xf7, 0x78, 0x91, 0xd7, 0x61, 0xd9, 0xd4, 0xeb, 0x30, 0x79, 0x9f, 0x92, 0x4b, 0xbd, - 0x4f, 0xa9, 0xc2, 0x4c, 0xbd, 0xb7, 0x2d, 0xeb, 0x8e, 0xfb, 0xbd, 0xf9, 0xbd, 0xed, 0xb4, 0x0e, - 0xc5, 0x49, 0x8c, 0x1f, 0xcd, 0x42, 0x61, 0xb3, 0xd5, 0xdb, 0x75, 0x3a, 0x55, 0x3b, 0xb0, 0x9f, - 0xdb, 0x1b, 0xba, 0xb7, 0xb5, 0x1b, 0xba, 0xd0, 0xbb, 0x2b, 0xec, 0xd8, 0x50, 0xd7, 0x73, 0x3f, - 0x93, 0x81, 0x99, 0x88, 0x84, 0x9f, 0xb3, 0xab, 0x30, 0xc2, 0x7e, 0x08, 0xbd, 0xf5, 0x62, 0x82, - 0x31, 0x4f, 0x4f, 0x16, 0xfe, 0x25, 0xee, 0xcc, 0xf4, 0xdc, 0x3f, 0xc8, 0x61, 0xf1, 0x73, 0x30, - 0x11, 0xb1, 0x3d, 0x49, 0x5a, 0xb2, 0x5f, 0xcf, 0x40, 0x31, 0xde, 0x13, 0x72, 0x0f, 0xc6, 0x19, - 0x27, 0x87, 0x4a, 0x95, 0xfa, 0xe5, 0x3e, 0x7d, 0xbe, 0x26, 0xd0, 0x78, 0xf3, 0x70, 0xf0, 0x29, - 0x87, 0x98, 0x92, 0xc3, 0xa2, 0x09, 0x05, 0x15, 0x2b, 0xa5, 0x75, 0x6f, 0xe8, 0xc2, 0xc5, 0xe9, - 0xf4, 0x71, 0xd0, 0x92, 0xa9, 0x69, 0xad, 0x16, 0x72, 0xc3, 0x65, 0x6d, 0x71, 0xe1, 0x58, 0xc5, - 0xd6, 0x0d, 0x5f, 0x66, 0x4b, 0x51, 0xe0, 0x73, 0x75, 0x9d, 0xa5, 0x2c, 0xe8, 0x10, 0x8f, 0xbc, - 0x01, 0x63, 0xbc, 0x3e, 0x35, 0x11, 0x50, 0x17, 0x21, 0xaa, 0x88, 0xcb, 0x71, 0x8c, 0xbf, 0x93, - 0x83, 0xd3, 0x51, 0xf3, 0x1e, 0x74, 0x9b, 0x76, 0x40, 0x37, 0x6d, 0xcf, 0x6e, 0xfb, 0xc7, 0x7c, - 0x01, 0x57, 0x12, 0x4d, 0xc3, 0x14, 0x2c, 0xb2, 0x69, 0x4a, 0x83, 0x8c, 0x58, 0x83, 0xf0, 0xfa, - 0x92, 0x37, 0x48, 0x36, 0x83, 0xdc, 0x83, 0x5c, 0x9d, 0x06, 0x62, 0xdb, 0xbc, 0x9c, 0x18, 0x55, - 0xb5, 0x5d, 0xd7, 0xea, 0x34, 0xe0, 0x93, 0xc8, 0xe3, 0xeb, 0x50, 0x2d, 0xa2, 0x6a, 0x9d, 0x06, - 0xe4, 0x11, 0x8c, 0xad, 0x3c, 0xed, 0xd2, 0x46, 0x20, 0x92, 0xea, 0x5d, 0x1d, 0xcc, 0x8f, 0xe3, - 0x2a, 0x39, 0xf5, 0x28, 0x02, 0xd4, 0xc1, 0xe2, 0x28, 0x8b, 0xb7, 0x20, 0x2f, 0x2b, 0x3f, 0xc9, - 0xca, 0x5d, 0x7c, 0x1b, 0x26, 0x95, 0x4a, 0x4e, 0xb4, 0xe8, 0x7f, 0x91, 0xed, 0xab, 0x6e, 0x4b, - 0xe6, 0xe1, 0x5b, 0x49, 0x88, 0x79, 0x4a, 0x16, 0x13, 0x2e, 0xe6, 0x59, 0x8f, 0x45, 0xd1, 0x00, - 0x79, 0xaf, 0x06, 0x33, 0xf5, 0xc7, 0x4e, 0x37, 0x0a, 0x6c, 0xa9, 0x1d, 0xa6, 0x98, 0x92, 0x42, - 0xe8, 0xdc, 0xf1, 0xc3, 0x34, 0x4e, 0x67, 0xfc, 0x45, 0x06, 0xc6, 0xd8, 0x5f, 0x0f, 0x6f, 0x3d, - 0xa7, 0x5b, 0xe6, 0x4d, 0x6d, 0xcb, 0x9c, 0x55, 0x62, 0x4b, 0xe3, 0xc6, 0x71, 0xeb, 0x98, 0xcd, - 0xf2, 0x50, 0x4c, 0x10, 0x47, 0x26, 0x77, 0x60, 0x5c, 0x58, 0xf5, 0x08, 0xf3, 0x6b, 0x35, 0x58, - 0xb5, 0xb4, 0xf7, 0x09, 0x95, 0x73, 0xb7, 0x1b, 0xbf, 0xcd, 0x90, 0xd4, 0x4c, 0x24, 0x97, 0x21, - 0x46, 0xb5, 0xec, 0xad, 0x2e, 0xfa, 0xcb, 0xf1, 0x50, 0xcb, 0x4a, 0xbe, 0xe5, 0x3e, 0xde, 0xf4, - 0x65, 0xf1, 0x90, 0x91, 0x1b, 0xc4, 0xe4, 0xb4, 0x4c, 0x6e, 0x99, 0xfa, 0xc6, 0xf1, 0x4f, 0x4f, - 0xf1, 0x00, 0xc5, 0xb2, 0x61, 0xef, 0x41, 0xe1, 0xb6, 0xeb, 0xed, 0xdb, 0x1e, 0x0f, 0x3b, 0x29, - 0x2c, 0x07, 0x98, 0xea, 0x38, 0xb5, 0xc3, 0xe1, 0x3c, 0x70, 0xe5, 0xb7, 0x0f, 0x4b, 0x23, 0xcb, - 0xae, 0xdb, 0x32, 0x35, 0x74, 0xb2, 0x01, 0x53, 0xf7, 0xed, 0xa7, 0x8a, 0xd2, 0xcb, 0x1d, 0x60, - 0xae, 0xb2, 0x05, 0xcc, 0xb4, 0xe6, 0xe3, 0x4d, 0xac, 0x74, 0x7a, 0xe2, 0xc0, 0xf4, 0xa6, 0xeb, - 0x05, 0xa2, 0x12, 0xa7, 0xb3, 0x2b, 0x3a, 0x9b, 0x34, 0x12, 0xbb, 0x9e, 0x6a, 0x24, 0x76, 0xb6, - 0xeb, 0x7a, 0x81, 0xb5, 0x13, 0x92, 0x6b, 0x81, 0xa9, 0x34, 0xc6, 0xe4, 0x3d, 0x98, 0x55, 0x02, - 0xef, 0xdd, 0x76, 0xbd, 0xb6, 0x2d, 0x85, 0x72, 0xbc, 0x07, 0x46, 0x7b, 0x93, 0x1d, 0x04, 0x9b, - 0x49, 0x4c, 0xf2, 0x95, 0x34, 0x97, 0xa2, 0xd1, 0xc8, 0xca, 0x2c, 0xc5, 0xa5, 0xa8, 0x9f, 0x95, - 0x59, 0xd2, 0xb9, 0x68, 0x77, 0x90, 0x15, 0x6a, 0x7e, 0xf9, 0x86, 0x50, 0xbf, 0x8f, 0xb7, 0x32, - 0x0d, 0xe7, 0xad, 0x8f, 0xb5, 0xe9, 0x12, 0xe4, 0x96, 0x37, 0x6f, 0xe3, 0xeb, 0x85, 0x34, 0xb4, - 0xe9, 0xec, 0xd9, 0x9d, 0x06, 0x0a, 0xcb, 0xc2, 0xf2, 0x5b, 0xdd, 0x91, 0x97, 0x37, 0x6f, 0x13, - 0x1b, 0xe6, 0x36, 0xa9, 0xd7, 0x76, 0x82, 0x2f, 0xdf, 0xb8, 0xa1, 0x4c, 0x54, 0x1e, 0x9b, 0x76, - 0x5d, 0x34, 0xad, 0xd4, 0x45, 0x14, 0xeb, 0xe9, 0x8d, 0x1b, 0xa9, 0xd3, 0x11, 0x36, 0x2c, 0x8d, - 0x17, 0xdb, 0x19, 0xef, 0xdb, 0x4f, 0x23, 0x83, 0x7d, 0x5f, 0x38, 0x67, 0x9e, 0x97, 0x0b, 0x2b, - 0x32, 0xf6, 0xd7, 0x76, 0x46, 0x9d, 0x88, 0xe9, 0x3a, 0xd1, 0xf2, 0xf2, 0x85, 0x5b, 0xcb, 0xa2, - 0xbc, 0xd2, 0x91, 0x1e, 0xbc, 0xaa, 0xc0, 0xae, 0xa0, 0x93, 0x07, 0xa1, 0xc6, 0xc6, 0x35, 0x1e, - 0x91, 0xba, 0xf1, 0xba, 0xaa, 0xb1, 0xf1, 0x8b, 0x14, 0xad, 0x5b, 0x33, 0xa1, 0x9a, 0xcf, 0x3d, - 0x18, 0x4c, 0x9d, 0x4b, 0x52, 0x11, 0x2c, 0x9c, 0x5c, 0x11, 0xa4, 0x30, 0xb2, 0xe6, 0x36, 0x1e, - 0x8b, 0x68, 0x5a, 0x5f, 0x62, 0x9f, 0x7b, 0xcb, 0x6d, 0x3c, 0x7e, 0x76, 0xd6, 0xb5, 0xc8, 0x9e, - 0xac, 0xb3, 0xa6, 0xb2, 0x55, 0x20, 0xc6, 0x44, 0x58, 0x6c, 0xce, 0x87, 0x9a, 0x90, 0x52, 0xc6, - 0x05, 0x1f, 0xbe, 0x68, 0xe4, 0xd0, 0x9a, 0x3a, 0x39, 0xa1, 0x50, 0xac, 0x52, 0xff, 0x71, 0xe0, - 0x76, 0x2b, 0x2d, 0xa7, 0xbb, 0xed, 0xda, 0x9e, 0x8c, 0x71, 0x9a, 0xfc, 0xbe, 0x5f, 0x4d, 0xfd, - 0xbe, 0x67, 0x9b, 0x9c, 0xde, 0x6a, 0x48, 0x06, 0x66, 0x82, 0x25, 0xf9, 0x0a, 0x4c, 0xb3, 0xc5, - 0xbd, 0xf2, 0x34, 0xa0, 0x1d, 0x3e, 0xf3, 0xb3, 0x28, 0x3a, 0xcc, 0x2b, 0x41, 0xfd, 0xc3, 0x42, - 0xbe, 0xa6, 0xf0, 0x63, 0xa7, 0x21, 0x81, 0x16, 0x89, 0x4c, 0x63, 0x45, 0x9a, 0xb0, 0x70, 0xdf, - 0x7e, 0xaa, 0x24, 0x89, 0x54, 0x16, 0x29, 0xc1, 0x05, 0x76, 0xe5, 0xe8, 0xb0, 0xf4, 0x32, 0x5b, - 0x60, 0x51, 0xd8, 0xdd, 0x3e, 0xeb, 0xb5, 0x2f, 0x27, 0xf2, 0x3d, 0x70, 0x46, 0x74, 0xab, 0x8a, - 0x99, 0x6e, 0x5c, 0xef, 0xa0, 0xbe, 0x67, 0xa3, 0xaf, 0xce, 0xdc, 0xc9, 0x36, 0x44, 0x39, 0x60, - 0x4d, 0xc9, 0xc7, 0xf2, 0x39, 0x23, 0xb3, 0x5f, 0x0d, 0xe4, 0x23, 0x98, 0xe6, 0x4f, 0x36, 0xab, - 0xae, 0x1f, 0xa0, 0x42, 0x3f, 0x7f, 0x32, 0x13, 0x74, 0xfe, 0x0e, 0xc4, 0x9d, 0x36, 0x62, 0x17, - 0x00, 0x31, 0xce, 0xe4, 0x1d, 0x98, 0xdc, 0x74, 0x3a, 0x3c, 0x56, 0x60, 0x6d, 0x13, 0xaf, 0x1e, - 0xc5, 0xf9, 0xd3, 0x75, 0x3a, 0x96, 0xd4, 0xaa, 0xbb, 0xe1, 0x76, 0xa1, 0x62, 0x93, 0x47, 0x30, - 0x59, 0xaf, 0xaf, 0xde, 0x76, 0xd8, 0x01, 0xd8, 0x3d, 0x58, 0x38, 0xdd, 0xa7, 0x95, 0x97, 0x52, - 0x5b, 0x39, 0xe5, 0xfb, 0x7b, 0x98, 0xc4, 0xdf, 0x6a, 0xb8, 0xdd, 0x03, 0x53, 0xe5, 0x94, 0x62, - 0x96, 0x7d, 0xe6, 0x19, 0x9b, 0x65, 0xd7, 0x60, 0x46, 0x31, 0xb0, 0x44, 0xe3, 0xca, 0x85, 0x28, - 0xc0, 0x8c, 0x6a, 0x86, 0x1d, 0x77, 0x43, 0x8c, 0xd3, 0x49, 0x7b, 0xec, 0xb3, 0x27, 0xb5, 0xc7, - 0x76, 0x60, 0x96, 0x4f, 0x86, 0x58, 0x07, 0x38, 0xd3, 0x8b, 0x7d, 0xc6, 0xf0, 0x6a, 0xea, 0x18, - 0xce, 0x89, 0x99, 0x96, 0x8b, 0x0c, 0x9f, 0x28, 0x93, 0x5c, 0xc9, 0x0e, 0x10, 0x01, 0xb4, 0x03, - 0x7b, 0xdb, 0xf6, 0x29, 0xd6, 0xf5, 0x62, 0x9f, 0xba, 0x5e, 0x4e, 0xad, 0x6b, 0x5a, 0xd6, 0xb5, - 0xcd, 0xab, 0x49, 0xe1, 0x48, 0x3a, 0xb2, 0x1e, 0xb9, 0xbe, 0x70, 0x60, 0xcf, 0x69, 0xf7, 0xa0, - 0x49, 0x04, 0x1e, 0xa8, 0x37, 0xbe, 0x68, 0xe3, 0xe3, 0x9e, 0xc2, 0x99, 0x3c, 0x85, 0xd3, 0xc9, - 0x56, 0x60, 0x9d, 0xe7, 0xb1, 0xce, 0xf3, 0x5a, 0x9d, 0x71, 0x24, 0xbe, 0x6e, 0xf4, 0x6e, 0xc5, - 0x6b, 0xed, 0xc3, 0x9f, 0xfc, 0x50, 0x06, 0xce, 0xdc, 0xbf, 0x5d, 0xc6, 0xbc, 0x72, 0x0e, 0x0f, - 0x1d, 0x15, 0xba, 0x6f, 0x5e, 0x10, 0x77, 0xe5, 0xf1, 0xfb, 0x7b, 0x29, 0x71, 0xe0, 0x56, 0xc1, - 0x64, 0xc4, 0x4b, 0xed, 0x1d, 0x9b, 0xa7, 0xab, 0x13, 0x2c, 0x52, 0x7c, 0x3c, 0x7f, 0xfe, 0x8f, - 0x4b, 0x19, 0xb3, 0x5f, 0x55, 0xa4, 0x05, 0x8b, 0xfa, 0xb0, 0x48, 0x8b, 0xf9, 0x3d, 0xda, 0x6a, - 0x2d, 0x94, 0x70, 0x45, 0xbf, 0x71, 0x74, 0x58, 0xba, 0x92, 0x18, 0xdd, 0xd0, 0x0a, 0x9f, 0x61, - 0x2a, 0x1d, 0x1e, 0xc0, 0xef, 0xee, 0x48, 0x7e, 0xaa, 0x38, 0x9d, 0x66, 0x5e, 0xfe, 0xdb, 0xd9, - 0xd8, 0x49, 0x45, 0x6a, 0x30, 0x2e, 0x16, 0xa0, 0x10, 0xdd, 0x93, 0xcb, 0xec, 0x7c, 0xea, 0x32, - 0x1b, 0x17, 0x6b, 0xd9, 0x94, 0xf4, 0x64, 0x9f, 0xb1, 0xc2, 0x56, 0x08, 0x5d, 0xe7, 0x6b, 0xfc, - 0x20, 0x42, 0x90, 0x76, 0xe4, 0x56, 0x4f, 0xee, 0x05, 0xa5, 0x3b, 0xd9, 0xe1, 0xd9, 0x2b, 0x6b, - 0x23, 0x8f, 0x79, 0xd2, 0x93, 0x5c, 0xe8, 0x4a, 0xa3, 0x67, 0x38, 0x79, 0x66, 0x15, 0xb2, 0x5a, - 0x8c, 0xdf, 0xca, 0xc0, 0x94, 0x76, 0xd4, 0x91, 0x5b, 0x8a, 0x9f, 0x58, 0xe4, 0x3a, 0xad, 0xe1, - 0xe0, 0xee, 0x17, 0xf7, 0x20, 0xbb, 0x25, 0x8c, 0xc5, 0xb3, 0xfd, 0xe9, 0x70, 0xf5, 0xc7, 0xdd, - 0x06, 0x07, 0xdf, 0x0c, 0x86, 0xa9, 0xd4, 0x46, 0xfa, 0xa4, 0x52, 0xfb, 0xe5, 0x73, 0x30, 0xad, - 0xeb, 0x42, 0xe4, 0x0d, 0x18, 0xc3, 0x0b, 0x55, 0xa9, 0x58, 0xf3, 0x24, 0xfb, 0x6e, 0x2c, 0x2b, - 0xa8, 0xc0, 0x21, 0xaf, 0x00, 0x84, 0x56, 0xbb, 0xf2, 0x39, 0x61, 0xf4, 0xe8, 0xb0, 0x94, 0x79, - 0xd3, 0x54, 0x0a, 0xc8, 0xd7, 0x01, 0xd6, 0xdd, 0x26, 0x0d, 0xf3, 0x4e, 0x0e, 0x78, 0x32, 0x7f, - 0x35, 0x91, 0x10, 0xe0, 0x54, 0xc7, 0x6d, 0xd2, 0x64, 0xf4, 0x7f, 0x85, 0x23, 0xf9, 0x02, 0x8c, - 0x9a, 0x3d, 0xa6, 0xc4, 0xf3, 0xfb, 0x93, 0x49, 0x79, 0xe4, 0xf4, 0x5a, 0x34, 0xd2, 0x10, 0xbd, - 0x5e, 0xdc, 0x1a, 0x8c, 0x01, 0xc8, 0x07, 0x3c, 0x51, 0x80, 0x88, 0xb2, 0x37, 0x1a, 0x3d, 0xb0, - 0x28, 0xa2, 0x48, 0x22, 0xce, 0x9e, 0x42, 0x42, 0x36, 0x60, 0x5c, 0x7d, 0x19, 0x50, 0x1c, 0x8e, - 0xd5, 0xd7, 0x23, 0x45, 0xdd, 0x14, 0x09, 0x2b, 0xe3, 0x8f, 0x06, 0x92, 0x0b, 0x79, 0x17, 0x26, - 0x18, 0x7b, 0xf6, 0x29, 0xfb, 0x42, 0xcd, 0xc0, 0x67, 0x14, 0xa5, 0x41, 0x6c, 0x3b, 0xd0, 0x62, - 0xe1, 0x85, 0x04, 0xe4, 0x2b, 0x98, 0x0a, 0x51, 0x0c, 0xf5, 0x40, 0x53, 0x8a, 0xcb, 0x89, 0xa1, - 0xc6, 0xdc, 0x88, 0xc9, 0xec, 0xf1, 0x21, 0x3f, 0xb2, 0x1b, 0xc6, 0xbb, 0x1a, 0x26, 0xb9, 0xc3, - 0x6b, 0x89, 0x0a, 0x16, 0x64, 0x08, 0xa7, 0x64, 0xfe, 0x50, 0x8d, 0x2f, 0xe9, 0x42, 0x31, 0x92, - 0xf2, 0x44, 0x5d, 0x30, 0xa8, 0xae, 0x37, 0x13, 0x75, 0xa9, 0x13, 0x98, 0xa8, 0x2e, 0xc1, 0x9d, - 0x34, 0x61, 0x5a, 0x9e, 0x18, 0xa2, 0xbe, 0xc9, 0x41, 0xf5, 0xbd, 0x92, 0xa8, 0x6f, 0xae, 0xb9, - 0x9d, 0xac, 0x27, 0xc6, 0x93, 0xbc, 0x0b, 0x53, 0x12, 0xc2, 0xb3, 0x79, 0x16, 0xa2, 0xb4, 0x8d, - 0xcd, 0xed, 0x44, 0x0e, 0x4f, 0x1d, 0x59, 0xa5, 0xe6, 0xab, 0x63, 0x4a, 0xa3, 0x8e, 0xaf, 0x0a, - 0x1d, 0x99, 0x7c, 0x08, 0x93, 0xb5, 0x36, 0xeb, 0x88, 0xdb, 0xb1, 0x03, 0x2a, 0x9c, 0xd1, 0xa4, - 0x59, 0x88, 0x52, 0xa2, 0x2c, 0x55, 0x9e, 0xa7, 0x34, 0x2a, 0xd2, 0xf2, 0x94, 0x46, 0x60, 0x36, - 0x78, 0xfc, 0x29, 0x48, 0xac, 0x61, 0xe9, 0xa8, 0x76, 0x3e, 0xc5, 0x34, 0x43, 0x61, 0x2f, 0xa2, - 0x59, 0x32, 0xa8, 0x7c, 0x8a, 0x89, 0x45, 0xb3, 0x54, 0x79, 0x92, 0xf7, 0x60, 0x52, 0xe4, 0xbd, - 0x29, 0x9b, 0xeb, 0xfe, 0x42, 0x11, 0x3b, 0x8f, 0xee, 0xf5, 0x32, 0x45, 0x8e, 0x65, 0x7b, 0x31, - 0x1b, 0xc4, 0x08, 0x9f, 0x7c, 0x19, 0xe6, 0x1f, 0x39, 0x9d, 0xa6, 0xbb, 0xef, 0x8b, 0x63, 0x4a, - 0x6c, 0x74, 0xb3, 0x91, 0x07, 0xd0, 0x3e, 0x2f, 0x0f, 0x85, 0xb3, 0xc4, 0xc6, 0x97, 0xca, 0x81, - 0xfc, 0xb5, 0x04, 0x67, 0xbe, 0x82, 0xc8, 0xa0, 0x15, 0xb4, 0x94, 0x58, 0x41, 0xc9, 0xea, 0xe3, - 0xcb, 0x29, 0xb5, 0x1a, 0xe2, 0x02, 0xd1, 0xcf, 0xf7, 0xbb, 0xae, 0xd3, 0x59, 0x98, 0xc3, 0xbd, - 0xf0, 0xc5, 0xb8, 0x43, 0x3b, 0xe2, 0x89, 0x7c, 0xaf, 0xc6, 0xd1, 0x61, 0xe9, 0x42, 0x5c, 0x08, - 0xff, 0xc8, 0xd5, 0x2e, 0xca, 0x53, 0x58, 0x93, 0x0f, 0xa1, 0xc0, 0xfe, 0x0f, 0x6f, 0x09, 0xe6, - 0x35, 0x63, 0x3e, 0x05, 0x53, 0xd4, 0x83, 0x73, 0x84, 0x89, 0x79, 0x52, 0x2e, 0x10, 0x34, 0x56, - 0xe4, 0x6d, 0x00, 0x26, 0xc7, 0x88, 0xed, 0xf8, 0x54, 0x14, 0x3c, 0x14, 0xc5, 0xa0, 0xe4, 0x46, - 0x1c, 0x21, 0x93, 0x77, 0x61, 0x92, 0xfd, 0xaa, 0xf7, 0x9a, 0x2e, 0xfb, 0x36, 0x4e, 0x23, 0x2d, - 0xf7, 0xf1, 0x63, 0xb4, 0x3e, 0x87, 0x6b, 0x3e, 0x7e, 0x11, 0x3a, 0x59, 0x85, 0x19, 0x0c, 0xf2, - 0x5a, 0xc3, 0x64, 0xd0, 0x81, 0x43, 0xfd, 0x85, 0x33, 0xca, 0x13, 0x36, 0x2b, 0xb2, 0x9c, 0xb0, - 0x4c, 0x55, 0x2e, 0x62, 0x64, 0xc4, 0x87, 0xb9, 0x68, 0x77, 0x89, 0x1e, 0xc4, 0x17, 0x70, 0x90, - 0xa4, 0x48, 0x9d, 0xc4, 0xe0, 0xfb, 0x31, 0x9b, 0x11, 0x65, 0xe3, 0x92, 0xcf, 0x09, 0x6a, 0x85, - 0x69, 0xdc, 0x89, 0x09, 0xe4, 0x4e, 0x65, 0x33, 0x1e, 0x05, 0xf5, 0x2c, 0xf6, 0x00, 0xa7, 0x79, - 0xb7, 0x11, 0x25, 0xa2, 0x4d, 0x89, 0x84, 0x9a, 0x42, 0x4d, 0xbe, 0x1b, 0x4e, 0xc9, 0x1d, 0x44, - 0x14, 0x89, 0x75, 0xbd, 0x78, 0xc2, 0x9d, 0xb8, 0xb9, 0x1d, 0x56, 0x9d, 0x58, 0xd2, 0xe9, 0x55, - 0x10, 0x1b, 0x26, 0x71, 0x5a, 0x45, 0x8d, 0x2f, 0x0e, 0xaa, 0xf1, 0x4a, 0xa2, 0xc6, 0xd3, 0xb8, - 0x50, 0x92, 0x95, 0xa9, 0x3c, 0xc9, 0x32, 0x4c, 0x89, 0xef, 0x48, 0xac, 0xb6, 0x73, 0x38, 0x5a, - 0x78, 0xab, 0x24, 0xbf, 0xc0, 0xc4, 0x82, 0xd3, 0x49, 0xd4, 0x1d, 0x99, 0x3f, 0x23, 0x9c, 0xd7, - 0x76, 0xe4, 0xf8, 0xeb, 0x81, 0x8e, 0xcc, 0x76, 0xa4, 0x48, 0x8a, 0x59, 0x79, 0xda, 0xf5, 0xc4, - 0x9d, 0xd1, 0x85, 0x28, 0x39, 0x88, 0x22, 0xfc, 0x58, 0x34, 0xc4, 0x50, 0xb7, 0x84, 0x34, 0x0e, - 0xe4, 0x01, 0xcc, 0x85, 0xa7, 0xb6, 0xc2, 0xb8, 0x14, 0x25, 0x59, 0x89, 0x8e, 0xfa, 0x74, 0xbe, - 0x69, 0xf4, 0xc4, 0x86, 0x33, 0xda, 0x39, 0xad, 0xb0, 0xbe, 0x88, 0xac, 0x31, 0xf1, 0xb1, 0x7e, - 0xc8, 0xa7, 0xb3, 0xef, 0xc7, 0x87, 0x7c, 0x04, 0x8b, 0xf1, 0xb3, 0x59, 0xa9, 0xe5, 0x25, 0xac, - 0xe5, 0xb5, 0xa3, 0xc3, 0xd2, 0xe5, 0xc4, 0xf1, 0x9e, 0x5e, 0xd1, 0x00, 0x6e, 0xe4, 0xeb, 0xb0, - 0xa0, 0x9f, 0xcf, 0x4a, 0x4d, 0x06, 0xd6, 0x84, 0x9f, 0x4e, 0x78, 0xb0, 0xa7, 0xd7, 0xd0, 0x97, - 0x07, 0x09, 0xa0, 0x94, 0xba, 0xba, 0x95, 0x6a, 0x2e, 0x45, 0x1d, 0x4a, 0x7c, 0x25, 0xe9, 0xd5, - 0x1d, 0xc7, 0x92, 0xec, 0xc3, 0x85, 0xb4, 0x63, 0x42, 0xa9, 0xf4, 0xe5, 0xf0, 0x56, 0xf6, 0xf5, - 0xf4, 0x23, 0x27, 0xbd, 0xe6, 0x63, 0xd8, 0x92, 0xaf, 0xc0, 0x29, 0xe5, 0xfb, 0x52, 0xea, 0x7b, - 0x05, 0xeb, 0x43, 0xff, 0x5d, 0xf5, 0xc3, 0x4c, 0xaf, 0x25, 0x9d, 0x07, 0x69, 0xc3, 0x9c, 0xec, - 0x38, 0x5e, 0x7f, 0x8b, 0xa3, 0xe7, 0xb2, 0xb6, 0xab, 0x26, 0x31, 0x94, 0xd4, 0xf5, 0xdb, 0x56, - 0x37, 0x22, 0x54, 0x57, 0x7a, 0x0a, 0x5f, 0xb2, 0x0a, 0x63, 0xf5, 0xcd, 0xda, 0xed, 0xdb, 0x2b, - 0x0b, 0xaf, 0x62, 0x0d, 0xd2, 0xd9, 0x87, 0x03, 0x35, 0xa5, 0x49, 0xd8, 0x98, 0x75, 0x9d, 0x9d, - 0x1d, 0xcd, 0xa7, 0x8a, 0xa3, 0x92, 0x16, 0x10, 0xae, 0x72, 0xaa, 0xd5, 0x2f, 0xbc, 0xa6, 0x85, - 0x9f, 0xe5, 0xd9, 0x84, 0x94, 0x56, 0xbf, 0x2c, 0x5a, 0x7d, 0x2e, 0x49, 0xaa, 0x9a, 0xfe, 0xf2, - 0x52, 0xa5, 0xdd, 0x77, 0x47, 0xf2, 0x57, 0x8a, 0x57, 0xef, 0x8e, 0xe4, 0xaf, 0x16, 0x5f, 0x33, - 0xcf, 0xa5, 0xa7, 0x16, 0xe7, 0x43, 0x6b, 0x5e, 0x1e, 0x54, 0x1a, 0x0d, 0xbc, 0xb1, 0x06, 0xc5, - 0x78, 0xf3, 0xc8, 0xe7, 0x61, 0x4a, 0x0d, 0xe8, 0x2c, 0x95, 0x45, 0xee, 0xc7, 0xef, 0xed, 0x6a, - 0x5b, 0x9e, 0x86, 0x68, 0xfc, 0x62, 0x06, 0xe6, 0x52, 0xc6, 0x90, 0x5c, 0x86, 0x11, 0xcc, 0xb8, - 0xa2, 0x58, 0x04, 0xc4, 0x32, 0xad, 0x60, 0x39, 0xf9, 0x0c, 0x8c, 0x57, 0xd7, 0xeb, 0xf5, 0xf2, - 0xba, 0x54, 0x37, 0xf9, 0x56, 0xdb, 0xf1, 0x2d, 0xdf, 0xd6, 0x1f, 0x12, 0x05, 0x1a, 0x79, 0x13, - 0xc6, 0x6a, 0x9b, 0x48, 0xc0, 0x4d, 0xd2, 0x50, 0xfd, 0x72, 0xba, 0x71, 0x7c, 0x81, 0x64, 0xfc, - 0x58, 0x06, 0x48, 0x72, 0x41, 0x90, 0x1b, 0x30, 0xa9, 0x2e, 0x3b, 0xde, 0x5f, 0x7c, 0xf4, 0x52, - 0xa6, 0xc6, 0x54, 0x71, 0x48, 0x15, 0x46, 0x31, 0x27, 0x5d, 0xf8, 0x82, 0x99, 0x7a, 0x78, 0x9d, - 0x49, 0x1c, 0x5e, 0xa3, 0x98, 0xf1, 0xce, 0xe4, 0xc4, 0xc6, 0xef, 0x65, 0x80, 0x24, 0x0f, 0xfc, - 0xa1, 0x2d, 0x28, 0xde, 0x52, 0x5c, 0x8a, 0xd5, 0x9c, 0x0a, 0x61, 0x42, 0x1c, 0x55, 0xd1, 0x8b, - 0x9c, 0x8f, 0x2f, 0x6b, 0x17, 0x0b, 0xfd, 0xfd, 0xd0, 0xae, 0xc2, 0xe8, 0x43, 0xea, 0x6d, 0x4b, - 0x6b, 0x4b, 0xb4, 0xd0, 0x7a, 0xc2, 0x00, 0xaa, 0xa2, 0x8d, 0x18, 0xc6, 0x9f, 0x66, 0x60, 0x3e, - 0x4d, 0x0a, 0x3d, 0xc6, 0x5d, 0xcc, 0x88, 0x79, 0xba, 0xa1, 0xf5, 0x04, 0x37, 0xdf, 0x0a, 0xfd, - 0xdb, 0x4a, 0x30, 0xca, 0x3a, 0x2b, 0x67, 0x18, 0x2f, 0x3a, 0xd8, 0x68, 0xf8, 0x26, 0x87, 0x33, - 0x04, 0x1e, 0x02, 0x6b, 0x04, 0xa3, 0xa7, 0x21, 0x02, 0x0a, 0x39, 0x26, 0x87, 0x33, 0x84, 0xfb, - 0x6e, 0x33, 0x4c, 0xc7, 0x8c, 0x08, 0x6d, 0x06, 0x30, 0x39, 0x9c, 0x5c, 0x86, 0xf1, 0x8d, 0xce, - 0x1a, 0xb5, 0x9f, 0xc8, 0xb8, 0xde, 0x68, 0xed, 0xe1, 0x76, 0xac, 0x16, 0x83, 0x99, 0xb2, 0xd0, - 0xf8, 0x99, 0x0c, 0xcc, 0x26, 0x04, 0xe0, 0xe3, 0x3d, 0xe2, 0x06, 0xbb, 0xa6, 0x0c, 0xd3, 0x3f, - 0xde, 0xfc, 0x91, 0xf4, 0xe6, 0x1b, 0xff, 0xef, 0x08, 0x9c, 0xe9, 0x73, 0x1f, 0x11, 0xb9, 0xce, - 0x65, 0x8e, 0x75, 0x9d, 0xfb, 0x2a, 0xd3, 0xff, 0x6d, 0xa7, 0xed, 0x6f, 0xb9, 0x51, 0x8b, 0x23, - 0x0b, 0x7c, 0x2c, 0x93, 0x19, 0xa9, 0xa5, 0xa9, 0xf6, 0xd9, 0x06, 0x52, 0x58, 0x81, 0x9b, 0x14, - 0x87, 0x34, 0x66, 0x09, 0xe7, 0xb5, 0xdc, 0x5f, 0x12, 0xe7, 0x35, 0xdd, 0x9d, 0x62, 0xe4, 0x99, - 0xba, 0x53, 0xa4, 0x9b, 0x62, 0x8e, 0x7e, 0x12, 0xc3, 0xdc, 0x0a, 0x4c, 0x71, 0x73, 0x97, 0xb2, - 0xcf, 0x27, 0x69, 0x2c, 0x61, 0x22, 0x63, 0xfb, 0xc9, 0xb9, 0xd0, 0x68, 0xc8, 0xaa, 0x6e, 0xfa, - 0x3f, 0x8e, 0xcf, 0x74, 0x97, 0xfb, 0x9b, 0xf6, 0x6b, 0xcf, 0xf3, 0x2a, 0xa9, 0xf1, 0x33, 0x59, - 0xdd, 0xb3, 0xed, 0x2f, 0xe3, 0xca, 0xbb, 0x0a, 0xa3, 0x8f, 0xf6, 0xa8, 0x27, 0xf7, 0x3b, 0x6c, - 0xc8, 0x3e, 0x03, 0xa8, 0x0d, 0x41, 0x0c, 0x72, 0x1b, 0xa6, 0x37, 0xf9, 0x4c, 0xc8, 0xe1, 0x1d, - 0x89, 0xd4, 0xc4, 0xae, 0xb8, 0xcc, 0x48, 0x19, 0xdf, 0x18, 0x95, 0x71, 0x07, 0xce, 0x6b, 0x1f, - 0xa4, 0x88, 0xc4, 0xc1, 0x2d, 0xf0, 0xf9, 0x89, 0x38, 0x1d, 0xf9, 0x1c, 0x44, 0xbb, 0x87, 0x19, - 0x83, 0x1a, 0x3b, 0x70, 0x61, 0x20, 0x23, 0x76, 0x10, 0x41, 0x37, 0xfc, 0x15, 0x33, 0x13, 0x1c, - 0x48, 0x6a, 0x2a, 0x74, 0xc6, 0xf7, 0x40, 0x41, 0x1d, 0x65, 0xdc, 0x53, 0xd9, 0x6f, 0xb1, 0xa9, - 0xf1, 0x3d, 0x95, 0x01, 0x4c, 0x0e, 0x8f, 0xae, 0x9f, 0xb3, 0xe9, 0xd7, 0xcf, 0xd1, 0xf4, 0xe7, - 0x8e, 0x9b, 0x7e, 0x56, 0x39, 0x7e, 0xb2, 0x4a, 0xe5, 0xf8, 0x5b, 0xad, 0x1c, 0x43, 0x6d, 0x98, - 0x1c, 0xfe, 0x4c, 0x2b, 0xff, 0x5d, 0x99, 0xd9, 0x04, 0x0d, 0xfc, 0xa5, 0x3e, 0x1f, 0x65, 0x4a, - 0x9e, 0x4b, 0xd3, 0xd2, 0x23, 0xcc, 0xe8, 0x90, 0xcc, 0x1e, 0x77, 0x48, 0x9e, 0x64, 0x21, 0x5e, - 0x87, 0xf1, 0xb2, 0x78, 0x44, 0x1f, 0x89, 0x04, 0x1b, 0x3b, 0xf1, 0x62, 0x2e, 0xb1, 0x8c, 0x9f, - 0xcf, 0xc0, 0xa9, 0xd4, 0x6b, 0x3e, 0x56, 0x2b, 0xbf, 0x4f, 0x54, 0xbe, 0xc3, 0xf8, 0x65, 0x22, - 0xc7, 0x38, 0x89, 0x9f, 0xf5, 0xf0, 0x7d, 0x31, 0x5e, 0x82, 0x89, 0xf0, 0x91, 0x89, 0xcc, 0xcb, - 0xa9, 0x43, 0xcb, 0x2a, 0xf9, 0x56, 0x51, 0x07, 0x60, 0x2d, 0x78, 0xa6, 0x76, 0x80, 0xc6, 0xef, - 0x66, 0x79, 0xd6, 0xbb, 0xe7, 0x36, 0xf4, 0x61, 0xba, 0xf1, 0x1e, 0xeb, 0x52, 0xff, 0x80, 0x87, - 0x64, 0x05, 0xc6, 0xea, 0x81, 0x1d, 0xf4, 0xa4, 0x7b, 0xf8, 0x9c, 0x4a, 0x86, 0x05, 0x0f, 0x97, - 0x22, 0x07, 0x61, 0x1f, 0x21, 0x9a, 0x62, 0x83, 0x10, 0xc5, 0x06, 0xd0, 0x81, 0x82, 0x4a, 0x4b, - 0x3e, 0x84, 0x69, 0x19, 0xcf, 0x8d, 0xfb, 0xcc, 0x8b, 0x07, 0x31, 0x69, 0x4d, 0x22, 0xe3, 0xb9, - 0xa9, 0x3e, 0xf6, 0x1a, 0xbe, 0xba, 0x53, 0x77, 0x55, 0x64, 0xe3, 0xcf, 0xc6, 0xf8, 0x3a, 0x10, - 0x81, 0x19, 0xb7, 0x61, 0x7a, 0xa3, 0x56, 0xad, 0x28, 0x97, 0x76, 0x7a, 0x5e, 0x8f, 0x95, 0xa7, - 0x01, 0xf5, 0x3a, 0x76, 0x4b, 0x20, 0x1c, 0x44, 0x67, 0x83, 0xeb, 0x34, 0x1b, 0xe9, 0x17, 0x7a, - 0x31, 0x8e, 0xac, 0x0e, 0xae, 0x2a, 0x85, 0x75, 0x64, 0x87, 0xac, 0xc3, 0xb7, 0xdb, 0xad, 0x3e, - 0x75, 0xe8, 0x1c, 0xc9, 0x1e, 0x2a, 0x59, 0x7b, 0xbd, 0x6d, 0xa5, 0x96, 0xdc, 0xe0, 0x5a, 0x2e, - 0x89, 0x5a, 0x5e, 0x14, 0x2a, 0x62, 0x6a, 0x3d, 0x09, 0xae, 0xd1, 0x07, 0x3c, 0x72, 0xec, 0x07, - 0xfc, 0x37, 0x32, 0x30, 0xc6, 0x05, 0x25, 0xb1, 0xbe, 0xfa, 0x88, 0x62, 0x8f, 0x9e, 0x8d, 0x28, - 0x56, 0xc4, 0x0d, 0x5c, 0x5b, 0x69, 0xbc, 0x8c, 0x54, 0x63, 0x0b, 0x56, 0xda, 0x94, 0xe2, 0xf5, - 0x3b, 0x2f, 0x39, 0x7e, 0xbd, 0x92, 0x5a, 0xe4, 0x4b, 0x3d, 0x7e, 0xac, 0xbb, 0x9e, 0xf4, 0x3f, - 0x1f, 0x17, 0xbe, 0xd4, 0xba, 0x07, 0xf5, 0x1a, 0x4c, 0x08, 0x0f, 0xed, 0xe5, 0x03, 0xf1, 0xc8, - 0x56, 0xd4, 0xec, 0x16, 0x9a, 0xcb, 0x07, 0x91, 0x10, 0x28, 0x7c, 0xbc, 0xad, 0xed, 0x03, 0x2d, - 0xbb, 0x9f, 0x44, 0x24, 0x1b, 0x3c, 0xeb, 0x15, 0x0f, 0x5d, 0xa9, 0xc7, 0xaa, 0x0e, 0xe1, 0x22, - 0xf6, 0x8b, 0x74, 0xf3, 0x4c, 0x89, 0x54, 0x19, 0xf1, 0x20, 0x6b, 0x50, 0x44, 0x5b, 0x17, 0xda, - 0xe4, 0x86, 0x2f, 0xb5, 0x2a, 0xf7, 0x02, 0x16, 0xf6, 0x8a, 0x01, 0x2f, 0xb3, 0x84, 0xc9, 0x8c, - 0xee, 0x80, 0x93, 0xa0, 0x64, 0x8a, 0x5b, 0x31, 0xbe, 0xfa, 0xc8, 0xbb, 0x30, 0x19, 0x86, 0x0e, - 0x0d, 0x5d, 0x00, 0xf1, 0xb2, 0x3d, 0x8a, 0x35, 0xaa, 0xe7, 0x4a, 0x52, 0xd0, 0xc9, 0x12, 0xe4, - 0xd9, 0x47, 0x1c, 0xcf, 0x2b, 0xd8, 0x13, 0x30, 0xd5, 0xae, 0x5f, 0xe2, 0x91, 0x3a, 0xcc, 0xb1, - 0x8f, 0xa6, 0xee, 0x74, 0x76, 0x5b, 0x74, 0xcd, 0xdd, 0x75, 0x7b, 0xc1, 0x03, 0x73, 0x4d, 0x6c, - 0xae, 0x5c, 0x54, 0xb6, 0xdb, 0x2d, 0xad, 0xd8, 0xd3, 0xb2, 0x46, 0xa7, 0x50, 0x2b, 0x7b, 0xd8, - 0x1f, 0x67, 0x61, 0x52, 0x59, 0x4f, 0xe4, 0x2a, 0xe4, 0x6b, 0xfe, 0x9a, 0xdb, 0x78, 0x1c, 0x06, - 0x07, 0x9b, 0x3a, 0x3a, 0x2c, 0x4d, 0x38, 0xbe, 0xd5, 0x42, 0xa0, 0x19, 0x16, 0x93, 0x65, 0x98, - 0xe2, 0x7f, 0xc9, 0x90, 0xee, 0xd9, 0xc8, 0x3c, 0x91, 0x23, 0xcb, 0x60, 0xee, 0xea, 0xbe, 0xa6, - 0x91, 0x90, 0xaf, 0x01, 0x70, 0x00, 0xba, 0x93, 0xe6, 0x86, 0x77, 0x84, 0x15, 0x15, 0xa4, 0x38, - 0x92, 0x2a, 0x0c, 0xc9, 0x37, 0x78, 0xa8, 0x51, 0xb9, 0xfe, 0x47, 0x86, 0xf7, 0xe4, 0x65, 0xfc, - 0xad, 0xf4, 0x80, 0x02, 0x2a, 0x4b, 0x11, 0xc7, 0x70, 0xd1, 0xa4, 0x0d, 0xf7, 0x09, 0xf5, 0x0e, - 0xca, 0x01, 0x22, 0x2a, 0x18, 0xc6, 0xff, 0x92, 0x51, 0xbe, 0x1a, 0xb2, 0x8e, 0xa9, 0x30, 0xf9, - 0x8a, 0x10, 0xf6, 0x26, 0xa1, 0x30, 0x2f, 0xe1, 0x26, 0xdd, 0x59, 0x7e, 0x51, 0x58, 0xc7, 0xce, - 0x85, 0xeb, 0x2a, 0x96, 0x22, 0x93, 0x03, 0xc9, 0x17, 0x61, 0x04, 0x87, 0x2e, 0x7b, 0x6c, 0xd7, - 0xe4, 0x79, 0x3a, 0xc2, 0xc6, 0x0c, 0x3b, 0x82, 0x94, 0xe4, 0x33, 0xc2, 0x15, 0x8f, 0x0f, 0xfe, - 0xb4, 0x72, 0x28, 0xb2, 0x76, 0x84, 0x07, 0x69, 0x14, 0x53, 0x42, 0x59, 0x3d, 0xff, 0x5e, 0x16, - 0x8a, 0xf1, 0x6f, 0x95, 0x7c, 0x00, 0x05, 0x79, 0xd2, 0x61, 0xae, 0x74, 0xd6, 0xcb, 0x82, 0x88, - 0x07, 0x2e, 0x8f, 0xbb, 0x78, 0xaa, 0x74, 0x95, 0x80, 0x49, 0x1d, 0x5b, 0x22, 0xc6, 0x93, 0xf2, - 0x95, 0x04, 0x6e, 0xd0, 0x8d, 0x45, 0xab, 0x94, 0x68, 0xe4, 0x2d, 0xc8, 0xdd, 0xbf, 0x5d, 0x16, - 0x7e, 0x1f, 0x72, 0x4b, 0xba, 0x7f, 0xbb, 0xcc, 0xbf, 0x66, 0x6e, 0xd7, 0xa6, 0x5b, 0xd9, 0x31, - 0x7c, 0xb2, 0xa6, 0x04, 0x83, 0x1d, 0xd3, 0x92, 0x40, 0x49, 0x70, 0xd8, 0xb9, 0xe3, 0xa3, 0xc2, - 0xf2, 0x24, 0xec, 0x22, 0x2c, 0xe2, 0x7f, 0x94, 0x83, 0x89, 0xb0, 0x7e, 0x42, 0x00, 0x85, 0x2a, - 0xa1, 0xc9, 0xe0, 0xdf, 0xe4, 0x2c, 0xe4, 0xa5, 0x1c, 0x25, 0xdc, 0x3f, 0xc6, 0x7d, 0x21, 0x43, - 0x2d, 0x80, 0x14, 0x98, 0xf8, 0x67, 0x6e, 0xca, 0x9f, 0xe4, 0x06, 0x84, 0xd2, 0x50, 0x3f, 0xb1, - 0x69, 0x84, 0x4d, 0x98, 0x19, 0xa2, 0x91, 0x69, 0xc8, 0x3a, 0x3c, 0xd4, 0xce, 0x84, 0x99, 0x75, - 0x9a, 0xe4, 0x03, 0xc8, 0xdb, 0xcd, 0x26, 0x6d, 0x5a, 0xb6, 0x34, 0xdc, 0x18, 0xb4, 0x68, 0xf2, - 0x8c, 0x1b, 0x3f, 0x04, 0x90, 0xaa, 0x1c, 0x90, 0x32, 0x4c, 0xb4, 0x6c, 0x6e, 0x9b, 0xd5, 0x1c, - 0xe2, 0x44, 0x89, 0x38, 0xe4, 0x19, 0xd9, 0x03, 0x9f, 0x36, 0xc9, 0xab, 0x30, 0xc2, 0x66, 0x53, - 0x1c, 0x21, 0x52, 0x7c, 0x63, 0x93, 0xc9, 0x07, 0x6c, 0xf5, 0x05, 0x13, 0x11, 0xc8, 0xcb, 0x90, - 0xeb, 0x2d, 0xed, 0x88, 0xc3, 0xa1, 0x18, 0x05, 0x66, 0x0e, 0xd1, 0x58, 0x31, 0xb9, 0x09, 0xf9, - 0x7d, 0x3d, 0xa6, 0xef, 0xa9, 0xd8, 0x34, 0x86, 0xf8, 0x21, 0xe2, 0x72, 0x1e, 0xc6, 0xf8, 0x41, - 0x60, 0x5c, 0x00, 0x88, 0xaa, 0x4e, 0x7a, 0xe9, 0x18, 0x5f, 0x83, 0x89, 0xb0, 0x4a, 0x72, 0x1e, - 0xe0, 0x31, 0x3d, 0xb0, 0xf6, 0xec, 0x4e, 0xb3, 0xc5, 0xe5, 0xbb, 0x82, 0x39, 0xf1, 0x98, 0x1e, - 0xac, 0x22, 0x80, 0x9c, 0x81, 0xf1, 0x2e, 0x9b, 0x55, 0xb1, 0x74, 0x0b, 0xe6, 0x58, 0xb7, 0xb7, - 0xcd, 0x56, 0xe8, 0x02, 0x8c, 0xe3, 0xcd, 0x9b, 0xf8, 0xd0, 0xa6, 0x4c, 0xf9, 0xd3, 0xf8, 0xf3, - 0x1c, 0xe6, 0xb3, 0x50, 0xda, 0x49, 0x2e, 0xc1, 0x54, 0xc3, 0xa3, 0x78, 0xe6, 0xd8, 0x4c, 0x92, - 0x12, 0xf5, 0x14, 0x22, 0x60, 0xad, 0x49, 0x2e, 0xc3, 0x4c, 0xb7, 0xb7, 0xdd, 0x72, 0x1a, 0xac, - 0x36, 0xab, 0xb1, 0x2d, 0x02, 0x70, 0x17, 0xcc, 0x29, 0x0e, 0xbe, 0x47, 0x0f, 0x2a, 0xdb, 0x18, - 0x22, 0xaa, 0xa8, 0x46, 0xf8, 0x0c, 0xc2, 0x74, 0xb1, 0xe6, 0x8c, 0x02, 0x47, 0x7b, 0xac, 0xd3, - 0x30, 0x66, 0xdb, 0xbb, 0x3d, 0x87, 0x87, 0x72, 0x29, 0x98, 0xe2, 0x17, 0x79, 0x1d, 0x66, 0xa3, - 0x40, 0xb0, 0xb2, 0x1b, 0xa3, 0xd8, 0x8d, 0x62, 0x58, 0x50, 0xe1, 0x70, 0xf2, 0x26, 0x10, 0xb5, - 0x3e, 0x77, 0xfb, 0x23, 0xda, 0xe0, 0x4b, 0xad, 0x60, 0xce, 0x2a, 0x25, 0x1b, 0x58, 0x40, 0x5e, - 0x82, 0x82, 0x47, 0x7d, 0x94, 0xe2, 0x70, 0xd8, 0x30, 0xdd, 0x93, 0x39, 0x29, 0x61, 0x6c, 0xec, - 0xae, 0x40, 0x51, 0x19, 0x0e, 0x0c, 0xa2, 0xca, 0xa3, 0x4f, 0x9b, 0xd3, 0x11, 0xdc, 0xec, 0xd6, - 0x9a, 0xe4, 0xcb, 0xb0, 0xa8, 0x60, 0xf2, 0xcc, 0x53, 0x16, 0x6d, 0x39, 0xbb, 0xce, 0x76, 0x8b, - 0x8a, 0x65, 0x94, 0x5c, 0xac, 0xa1, 0x0e, 0x66, 0x2e, 0x44, 0xd4, 0x3c, 0x27, 0xd5, 0x8a, 0xa0, - 0x25, 0x6b, 0x30, 0x1f, 0xe3, 0x4c, 0x9b, 0x56, 0xaf, 0xdb, 0x37, 0x76, 0x52, 0xc4, 0x93, 0xe8, - 0x3c, 0x69, 0xf3, 0x41, 0xd7, 0x58, 0x86, 0xd9, 0xc4, 0x0e, 0xa3, 0xa4, 0x22, 0xe7, 0x3b, 0xe6, - 0xe0, 0x54, 0xe4, 0x46, 0x07, 0x0a, 0xea, 0x89, 0x71, 0x4c, 0xb0, 0xf6, 0xd3, 0x18, 0xb2, 0x80, - 0x6f, 0xa7, 0x63, 0x47, 0x87, 0xa5, 0xac, 0xd3, 0xc4, 0x40, 0x05, 0x57, 0x20, 0x2f, 0x85, 0x1b, - 0x21, 0x53, 0xe0, 0x0d, 0xaf, 0x90, 0xaa, 0x0f, 0xcc, 0xb0, 0xd4, 0x78, 0x15, 0xc6, 0xc5, 0xa1, - 0x30, 0xf8, 0x5e, 0xd7, 0xf8, 0xe1, 0x2c, 0xcc, 0x98, 0x94, 0x6d, 0x59, 0x94, 0x67, 0x68, 0x78, - 0x6e, 0xd5, 0xcc, 0xf4, 0xc0, 0x77, 0x5a, 0xdf, 0x06, 0xe4, 0x46, 0xf8, 0x87, 0x19, 0x98, 0x4b, - 0xc1, 0xfd, 0x58, 0xb9, 0x01, 0x6f, 0xc1, 0x44, 0xd5, 0xb1, 0x5b, 0xe5, 0x66, 0x33, 0x8c, 0x5f, - 0x80, 0x22, 0x31, 0x26, 0x10, 0xb1, 0x19, 0x54, 0x15, 0x0f, 0x42, 0x54, 0xf2, 0x9a, 0x58, 0x14, - 0x51, 0x7a, 0x54, 0x5c, 0x14, 0xdf, 0x3e, 0x2c, 0x01, 0x6f, 0x53, 0x94, 0x33, 0x19, 0x83, 0x51, - 0x72, 0x60, 0xe4, 0x5f, 0xf0, 0xdc, 0x4e, 0x5d, 0x7a, 0x30, 0xca, 0x78, 0xf7, 0x86, 0x4a, 0x8f, - 0xf0, 0xe3, 0x59, 0x38, 0x9d, 0x4e, 0xf8, 0x71, 0xd3, 0x3c, 0x62, 0x62, 0x0a, 0x25, 0x80, 0x2e, - 0xa6, 0x79, 0xe4, 0x59, 0x2c, 0x10, 0x3f, 0x42, 0x20, 0x3b, 0x30, 0xb5, 0x66, 0xfb, 0xc1, 0x2a, - 0xb5, 0xbd, 0x60, 0x9b, 0xda, 0xc1, 0x10, 0x32, 0xb2, 0x7c, 0x44, 0x5d, 0xc0, 0x63, 0x7a, 0x4f, - 0x52, 0xc6, 0xa4, 0x58, 0x9d, 0x6d, 0xb8, 0x50, 0x46, 0x86, 0x58, 0x28, 0xdf, 0x84, 0x99, 0x3a, - 0x6d, 0xdb, 0xdd, 0x3d, 0xd7, 0x93, 0x0e, 0xaa, 0xd7, 0x60, 0x2a, 0x04, 0xa5, 0xae, 0x16, 0xbd, - 0x58, 0xc3, 0x57, 0x06, 0x22, 0xda, 0x4a, 0xf4, 0x62, 0xe3, 0x6f, 0x67, 0xe1, 0x4c, 0xb9, 0x21, - 0x2c, 0xb2, 0x44, 0x81, 0x34, 0x1c, 0xfd, 0x94, 0xeb, 0x26, 0xd7, 0x61, 0xe2, 0xbe, 0xfd, 0x74, - 0x8d, 0xda, 0x3e, 0xf5, 0x45, 0x92, 0x2d, 0x2e, 0x50, 0xda, 0x4f, 0x23, 0x43, 0x25, 0x33, 0xc2, - 0x51, 0x35, 0xee, 0x91, 0x4f, 0xa8, 0x71, 0x1b, 0x30, 0xb6, 0xea, 0xb6, 0x9a, 0xe2, 0xb8, 0x15, - 0xcf, 0x80, 0x7b, 0x08, 0x31, 0x45, 0x09, 0x53, 0x54, 0xa7, 0xc3, 0x16, 0x63, 0x13, 0x3e, 0xf5, - 0x21, 0xb9, 0x0c, 0xe3, 0x58, 0x51, 0x98, 0xa6, 0x18, 0x0f, 0x8d, 0x16, 0xc5, 0x54, 0x49, 0x4d, - 0x53, 0x16, 0xaa, 0x23, 0x31, 0xfa, 0xc9, 0x46, 0xc2, 0xf8, 0x07, 0xf8, 0xc2, 0xa8, 0xf6, 0x92, - 0x9d, 0x44, 0x4a, 0x43, 0x32, 0x43, 0x36, 0x24, 0xfb, 0xcc, 0xa6, 0x24, 0xd7, 0x77, 0x4a, 0x7e, - 0x24, 0x0b, 0x93, 0x61, 0x63, 0xbf, 0xc3, 0xa2, 0x38, 0x87, 0xfd, 0x1a, 0x2a, 0xa8, 0x44, 0x5d, - 0xd9, 0x2b, 0x44, 0xec, 0x86, 0x2f, 0xc2, 0x98, 0xf8, 0x98, 0x32, 0x31, 0x03, 0xca, 0xd8, 0xec, - 0x2e, 0x4f, 0x0b, 0xd6, 0x63, 0x38, 0xa1, 0xbe, 0x29, 0xe8, 0x30, 0x6a, 0xc7, 0x23, 0xba, 0x2d, - 0x1e, 0x9c, 0x9f, 0xdb, 0x33, 0x2a, 0x3d, 0x6a, 0x47, 0xd4, 0xb1, 0xa1, 0x4e, 0xa7, 0x7f, 0x92, - 0x87, 0x62, 0x9c, 0xe4, 0xf8, 0x38, 0xd9, 0x9b, 0xbd, 0x6d, 0xae, 0x2d, 0xf0, 0x38, 0xd9, 0xdd, - 0xde, 0xb6, 0xc9, 0x60, 0x68, 0x8f, 0xe2, 0x39, 0x4f, 0xb0, 0xd7, 0x05, 0x61, 0x8f, 0xe2, 0x39, - 0x4f, 0x34, 0x7b, 0x14, 0xcf, 0x79, 0x82, 0x2a, 0xfa, 0x5a, 0x1d, 0x1d, 0x8d, 0x51, 0x55, 0x10, - 0x2a, 0x7a, 0xcb, 0x8f, 0xe7, 0xae, 0x91, 0x68, 0xec, 0xa8, 0x5c, 0xa6, 0xb6, 0x27, 0x62, 0x3a, - 0x8b, 0xed, 0x0c, 0x8f, 0xca, 0x6d, 0x04, 0xf3, 0x54, 0xd3, 0xa6, 0x8a, 0x44, 0x5a, 0x40, 0x94, - 0x9f, 0xf2, 0x03, 0x3e, 0x5e, 0x6b, 0x95, 0xc6, 0x4f, 0xf3, 0x2a, 0x6b, 0x4b, 0xfd, 0x9a, 0x53, - 0xf8, 0x3e, 0xcb, 0x8b, 0xd2, 0x4d, 0x11, 0xa8, 0x0e, 0xaf, 0x66, 0xf2, 0xc7, 0x32, 0x93, 0x9e, - 0xf8, 0xc0, 0x03, 0xd9, 0x85, 0x17, 0x34, 0x11, 0x13, 0xf2, 0x3e, 0x4c, 0xaa, 0xee, 0xe3, 0xdc, - 0xc9, 0xf9, 0x1c, 0x8f, 0x3d, 0xd6, 0x27, 0xdb, 0xa1, 0x4a, 0x40, 0xb6, 0xe1, 0x4c, 0xc5, 0xed, - 0xf8, 0xbd, 0xb6, 0x8c, 0x72, 0x16, 0xc5, 0x56, 0x05, 0x9c, 0x0a, 0xf4, 0x45, 0x6d, 0x08, 0x14, - 0xe1, 0xad, 0x2c, 0xad, 0xd3, 0x75, 0x05, 0xa4, 0x1f, 0x23, 0xb2, 0x05, 0x93, 0x78, 0xd9, 0x28, - 0xcc, 0xdf, 0x26, 0xf5, 0x6d, 0x23, 0x2a, 0xa9, 0xb2, 0x0f, 0x83, 0x87, 0xe9, 0xb1, 0xdb, 0x2d, - 0x69, 0x1c, 0xad, 0x5e, 0x9a, 0x2a, 0xc8, 0xe4, 0x6b, 0x30, 0xcd, 0xd5, 0xe2, 0x47, 0x74, 0x9b, - 0xaf, 0x9d, 0x82, 0xa6, 0xe3, 0xeb, 0x85, 0xfc, 0x41, 0x5a, 0x5c, 0xf1, 0xee, 0xd3, 0x6d, 0x3e, - 0xf7, 0x9a, 0x6b, 0x82, 0x86, 0x4f, 0x1e, 0xc0, 0xdc, 0xaa, 0xed, 0x73, 0xa0, 0xe2, 0x07, 0x3c, - 0x85, 0x77, 0x9f, 0x68, 0x32, 0xba, 0x67, 0xfb, 0xf2, 0xce, 0x38, 0xd5, 0xef, 0x37, 0x8d, 0x9e, - 0xfc, 0x70, 0x06, 0x16, 0xb4, 0x2b, 0x65, 0x61, 0xfc, 0xd3, 0xa6, 0x9d, 0x00, 0x7d, 0x10, 0xa6, - 0xc3, 0x24, 0xd7, 0xfd, 0xd0, 0xf8, 0x94, 0xc4, 0x6e, 0xad, 0xbd, 0xa8, 0x5c, 0xb5, 0xc5, 0xec, - 0xc7, 0x43, 0x7c, 0xa8, 0xf8, 0x4d, 0xcf, 0xe8, 0x1f, 0x6a, 0xec, 0xbb, 0x96, 0x68, 0xc6, 0xad, - 0xf8, 0x78, 0x8b, 0x2b, 0xa4, 0x4c, 0x78, 0x85, 0x34, 0x0f, 0xa3, 0x38, 0xaa, 0x32, 0x6c, 0x09, - 0xfe, 0x30, 0x3e, 0xa3, 0xee, 0x43, 0x42, 0x2c, 0x1c, 0xb8, 0x0f, 0x19, 0xff, 0xe3, 0x18, 0xcc, - 0xc4, 0x96, 0x85, 0xd0, 0x53, 0x33, 0x09, 0x3d, 0xb5, 0x0e, 0xc0, 0x2f, 0x51, 0x87, 0xbc, 0xed, - 0x94, 0xfe, 0x4f, 0x93, 0xc2, 0x9d, 0x30, 0xfc, 0xa6, 0x14, 0x36, 0x8c, 0x29, 0xff, 0x62, 0x87, - 0xbc, 0x7d, 0x0e, 0x99, 0xf2, 0x8f, 0x5e, 0x61, 0x1a, 0xb1, 0x21, 0x25, 0x18, 0xc5, 0x58, 0x83, - 0xaa, 0xfb, 0x99, 0xc3, 0x00, 0x26, 0x87, 0x93, 0x4b, 0x30, 0xc6, 0x84, 0xa8, 0x5a, 0x55, 0x6c, - 0x82, 0x78, 0xb6, 0x30, 0x29, 0x8b, 0x49, 0x2c, 0xa2, 0x88, 0xdc, 0x82, 0x02, 0xff, 0x4b, 0x84, - 0x9b, 0x18, 0xd3, 0x2d, 0xd2, 0x2c, 0xa7, 0x29, 0x23, 0x4e, 0x68, 0x78, 0x4c, 0xbb, 0xa8, 0xf7, - 0xf0, 0x66, 0xa5, 0x56, 0x15, 0xc1, 0x69, 0x51, 0xbb, 0xf0, 0x39, 0x10, 0x93, 0xc8, 0x87, 0x08, - 0x4c, 0x96, 0x11, 0x46, 0xe0, 0x79, 0xd4, 0x29, 0x51, 0x96, 0xe1, 0xc6, 0xdf, 0xa6, 0x28, 0x21, - 0x57, 0xf9, 0xa3, 0x05, 0x8a, 0x85, 0x3c, 0x57, 0x17, 0xbe, 0x08, 0xe0, 0xc5, 0x04, 0xca, 0x86, - 0x61, 0x31, 0xab, 0x9c, 0xfd, 0xbd, 0xd2, 0xb6, 0x9d, 0x96, 0xd8, 0x56, 0xb0, 0x72, 0xc4, 0xa5, - 0x0c, 0x6a, 0x46, 0x08, 0xe4, 0x5d, 0x98, 0x66, 0x3f, 0x2a, 0x6e, 0xbb, 0xed, 0x76, 0x90, 0xfd, - 0x64, 0x14, 0xb9, 0x08, 0x49, 0x1a, 0x58, 0xc4, 0x6b, 0x89, 0xe1, 0xb2, 0xf3, 0x04, 0x1f, 0x44, - 0x7b, 0xfc, 0x39, 0xa5, 0x10, 0x9d, 0x27, 0x48, 0xea, 0x73, 0xb8, 0xa9, 0x22, 0x91, 0xb7, 0x61, - 0x8a, 0xfd, 0xbc, 0xe3, 0x3c, 0xa1, 0xbc, 0xc2, 0xa9, 0xe8, 0x89, 0x1e, 0xa9, 0x76, 0x59, 0x09, - 0xaf, 0x4f, 0xc7, 0x24, 0x5f, 0x82, 0x53, 0xc8, 0xa9, 0xe1, 0x76, 0x69, 0xb3, 0xbc, 0xb3, 0xe3, - 0xb4, 0x1c, 0x6e, 0x22, 0xc4, 0x03, 0x2b, 0xe0, 0xed, 0x36, 0xaf, 0x18, 0x31, 0x2c, 0x3b, 0x42, - 0x31, 0xd3, 0x29, 0xc9, 0x23, 0x28, 0x56, 0x7a, 0x7e, 0xe0, 0xb6, 0xcb, 0x41, 0xe0, 0x39, 0xdb, - 0xbd, 0x80, 0xfa, 0x0b, 0x33, 0x5a, 0xf8, 0x01, 0xf6, 0x71, 0x84, 0x85, 0xfc, 0x3e, 0xa8, 0x81, - 0x14, 0x96, 0x1d, 0x92, 0x98, 0x09, 0x26, 0xc6, 0x3f, 0xcd, 0xc0, 0x94, 0x46, 0x4a, 0xde, 0x82, - 0xc2, 0x6d, 0xcf, 0xa1, 0x9d, 0x66, 0xeb, 0x40, 0x51, 0x54, 0x51, 0x8b, 0xd9, 0x11, 0x70, 0xde, - 0x6b, 0x0d, 0x2d, 0xbc, 0xe7, 0xc9, 0xa6, 0xda, 0xef, 0x5d, 0xe7, 0x5e, 0x90, 0x62, 0x81, 0xe6, - 0xa2, 0x78, 0x28, 0xb8, 0x40, 0xc5, 0xea, 0x54, 0x50, 0xc8, 0x7b, 0x30, 0xc6, 0x9f, 0x4e, 0x85, - 0x31, 0xd9, 0xd9, 0xb4, 0x6e, 0x72, 0x8f, 0x5b, 0x5c, 0x88, 0x68, 0xb8, 0xe2, 0x9b, 0x82, 0xc8, - 0xf8, 0xd9, 0x0c, 0x90, 0x24, 0xea, 0x31, 0xf7, 0x5e, 0xc7, 0x1a, 0xc4, 0x7c, 0x31, 0xfc, 0x1a, - 0x73, 0xda, 0x6d, 0x34, 0xab, 0x89, 0x17, 0xf0, 0x81, 0x17, 0x5f, 0x9d, 0x7a, 0x11, 0xc7, 0x8b, - 0x8d, 0x1f, 0xca, 0x02, 0x44, 0xd8, 0xe4, 0xf3, 0x3c, 0xa5, 0xcb, 0x97, 0x7a, 0x76, 0xcb, 0xd9, - 0x71, 0xf4, 0x18, 0x87, 0xc8, 0xe4, 0x9b, 0xb2, 0xc4, 0xd4, 0x11, 0xc9, 0x07, 0x30, 0x53, 0xdf, - 0xd4, 0x69, 0x95, 0xf4, 0x15, 0x7e, 0xd7, 0x8a, 0x91, 0xc7, 0xb1, 0xd1, 0x68, 0x54, 0x9d, 0x0d, - 0x6e, 0x34, 0xca, 0x27, 0x42, 0x94, 0xb0, 0x8d, 0xa5, 0xbe, 0x29, 0xac, 0x9e, 0x9b, 0xb5, 0xaa, - 0xd8, 0xa5, 0xb0, 0x75, 0x7e, 0xd7, 0xea, 0x0a, 0x73, 0x68, 0xb6, 0x4f, 0x68, 0x78, 0xd1, 0x40, - 0x8e, 0xf6, 0xf1, 0xaa, 0xfd, 0x39, 0xbc, 0xf6, 0x6b, 0xbb, 0x01, 0x15, 0xb7, 0x1d, 0xcf, 0xad, - 0xde, 0x13, 0xbd, 0xbb, 0x8f, 0x6a, 0xce, 0x82, 0x5a, 0xef, 0x84, 0xd5, 0xc7, 0xcd, 0x48, 0x49, - 0xe1, 0x2f, 0xf0, 0x29, 0x76, 0x22, 0x7f, 0x2f, 0x03, 0xa7, 0x52, 0x69, 0xc9, 0x35, 0x80, 0xe8, - 0x4e, 0x49, 0x8c, 0x12, 0xee, 0x98, 0x51, 0x14, 0x10, 0x53, 0xc1, 0x20, 0x5f, 0x8d, 0xdf, 0x06, - 0x1d, 0x7f, 0x10, 0x2e, 0xca, 0x28, 0x4f, 0xfa, 0x6d, 0x50, 0xca, 0x1d, 0x90, 0xf1, 0x0f, 0x73, - 0x30, 0xab, 0x04, 0x19, 0xe1, 0x6d, 0x3d, 0xc6, 0x88, 0xf7, 0x31, 0x14, 0x58, 0x6f, 0x9c, 0x86, - 0xf0, 0x58, 0xe2, 0x36, 0x22, 0xaf, 0x25, 0xdc, 0xbd, 0x04, 0xb7, 0x6b, 0x2a, 0x32, 0x8f, 0xbd, - 0x86, 0x5b, 0x27, 0xbe, 0x09, 0x34, 0x92, 0x9e, 0x4b, 0x1a, 0x73, 0xe2, 0xc3, 0x54, 0xf5, 0xa0, - 0x63, 0xb7, 0xc3, 0xda, 0xb8, 0xad, 0xc8, 0xeb, 0x7d, 0x6b, 0xd3, 0xb0, 0x79, 0x75, 0x91, 0x63, - 0x04, 0x2f, 0x4b, 0xf1, 0xc9, 0xd5, 0xa8, 0x16, 0x3f, 0x80, 0xd9, 0x44, 0xa3, 0x4f, 0x14, 0x06, - 0xee, 0x11, 0x90, 0x64, 0x3b, 0x52, 0x38, 0xbc, 0xae, 0x07, 0x19, 0x3c, 0x15, 0x3e, 0x0b, 0x63, - 0xf2, 0x6a, 0x6e, 0x79, 0xb2, 0xa4, 0x06, 0x89, 0xfb, 0xb9, 0xac, 0xea, 0x72, 0xf7, 0xbc, 0x7f, - 0x75, 0x5f, 0xd4, 0xb4, 0xe1, 0x0b, 0xfd, 0xe6, 0x74, 0xa8, 0x5b, 0x87, 0x6f, 0xe5, 0xe0, 0x4c, - 0x1f, 0x4a, 0x72, 0x10, 0x5f, 0x44, 0xfc, 0x16, 0xe2, 0xc6, 0xe0, 0x0a, 0x9f, 0xc5, 0x52, 0x22, - 0x9f, 0xe7, 0x4e, 0xf7, 0x0d, 0x4c, 0x90, 0x2c, 0xf4, 0x6f, 0x9e, 0xaf, 0x3f, 0x84, 0xc6, 0xbd, - 0xed, 0x39, 0x94, 0x7c, 0x00, 0xa3, 0xe8, 0x6f, 0x19, 0x0b, 0x72, 0xc6, 0x30, 0x10, 0xae, 0x44, - 0x84, 0x63, 0x3f, 0xb5, 0x88, 0x70, 0x0c, 0x40, 0x3e, 0x07, 0xb9, 0xf2, 0xa3, 0xba, 0x98, 0x97, - 0x69, 0x95, 0xfc, 0x51, 0x3d, 0x0a, 0x44, 0x6f, 0x6b, 0x11, 0xe3, 0x19, 0x05, 0x23, 0xbc, 0x53, - 0xd9, 0x14, 0xb3, 0xa2, 0x12, 0xde, 0xa9, 0x6c, 0x46, 0x84, 0xbb, 0x0d, 0x2d, 0x68, 0xcc, 0x9d, - 0xca, 0xe6, 0xa7, 0xb7, 0xec, 0xff, 0xdd, 0x2c, 0x8f, 0x14, 0xc0, 0x3b, 0xf6, 0x01, 0x14, 0xb4, - 0x20, 0xb0, 0x99, 0x48, 0x1e, 0x0b, 0x63, 0xed, 0xc6, 0x8c, 0x6b, 0x34, 0x02, 0x99, 0xd2, 0x81, - 0xfd, 0x46, 0x89, 0x57, 0x35, 0x63, 0x09, 0x39, 0xa0, 0x4c, 0x1c, 0x4f, 0xe9, 0x10, 0x92, 0x90, - 0x9b, 0x90, 0xdf, 0xa2, 0x1d, 0xbb, 0x13, 0x84, 0x17, 0xa2, 0x68, 0x20, 0x1b, 0x20, 0x4c, 0x97, - 0x1a, 0x42, 0x44, 0x34, 0xe6, 0xec, 0x6d, 0xfb, 0x0d, 0xcf, 0xc1, 0x88, 0x22, 0xe1, 0x59, 0xcc, - 0x8d, 0x39, 0x95, 0x12, 0x9d, 0x41, 0x8c, 0xc8, 0xf8, 0xb9, 0x0c, 0x8c, 0x8b, 0x89, 0xe4, 0xa9, - 0x78, 0x76, 0xa3, 0xb3, 0x44, 0xa4, 0xe2, 0xd9, 0x75, 0xe2, 0xa9, 0x78, 0x76, 0x79, 0xd8, 0x8e, - 0x09, 0xe1, 0xf4, 0x1a, 0x3e, 0x0d, 0xf2, 0xac, 0xf0, 0x1c, 0xa8, 0x57, 0x1b, 0xa1, 0x0e, 0xeb, - 0x25, 0x63, 0xfc, 0x1d, 0xd1, 0xb2, 0x3b, 0x95, 0x4d, 0xb2, 0x04, 0xf9, 0x35, 0x97, 0x87, 0x84, - 0x51, 0xf3, 0x2a, 0xb6, 0x04, 0x4c, 0x1d, 0x20, 0x89, 0xc7, 0xda, 0xb7, 0xe9, 0xb9, 0x42, 0x97, - 0x51, 0xda, 0xd7, 0xe5, 0xc0, 0x58, 0xfb, 0x42, 0xd4, 0xa1, 0xdb, 0x47, 0x53, 0x36, 0x89, 0x87, - 0x37, 0x31, 0xd6, 0xfd, 0x5d, 0xd5, 0xfb, 0x48, 0x14, 0xc9, 0x9d, 0x62, 0xb1, 0xdf, 0x4e, 0xf1, - 0xf0, 0xa6, 0x99, 0x42, 0x85, 0xef, 0x6a, 0x11, 0xb8, 0x4e, 0xbd, 0x27, 0xcf, 0xf1, 0x2e, 0x9d, - 0xfe, 0xae, 0x16, 0xef, 0xde, 0x50, 0x9b, 0xf4, 0x7f, 0x9f, 0x85, 0xd3, 0xe9, 0x84, 0x6a, 0x5f, - 0x32, 0x03, 0xfa, 0x72, 0x05, 0xf2, 0xab, 0xae, 0x1f, 0x28, 0xf6, 0x74, 0x78, 0xfd, 0xbf, 0x27, - 0x60, 0x66, 0x58, 0xca, 0x74, 0x6e, 0xf6, 0x77, 0xf8, 0x79, 0x22, 0x3f, 0xf4, 0x8f, 0x67, 0x3a, - 0x37, 0x2f, 0x22, 0x77, 0x20, 0x6f, 0x0a, 0xef, 0x97, 0xd8, 0xd0, 0x48, 0x70, 0x28, 0x4d, 0x11, - 0x4f, 0x40, 0xb4, 0x58, 0xbc, 0x02, 0x46, 0xca, 0x30, 0x2e, 0x66, 0x3f, 0xf6, 0x74, 0x9c, 0xb2, - 0x64, 0xf4, 0xf0, 0xd8, 0x92, 0x8e, 0xed, 0x28, 0xf8, 0x08, 0x58, 0xab, 0x4a, 0x47, 0x16, 0xdc, - 0x51, 0xf8, 0x23, 0xa1, 0x6e, 0xba, 0x18, 0x22, 0x1a, 0x3f, 0x9c, 0x05, 0x90, 0xb7, 0x36, 0xcf, - 0xed, 0x0a, 0xfb, 0x9c, 0xb6, 0xc2, 0x14, 0x4b, 0x9e, 0xe1, 0x53, 0x47, 0x6e, 0xa0, 0x45, 0xcd, - 0xf0, 0x89, 0x23, 0x4b, 0x30, 0xba, 0x15, 0x5d, 0x68, 0x09, 0xb7, 0x0a, 0xbc, 0x8e, 0xe6, 0x70, - 0x63, 0x1b, 0xe6, 0xef, 0xd0, 0x20, 0xba, 0xde, 0x92, 0x4f, 0x8f, 0x83, 0xd9, 0xbe, 0x01, 0x13, - 0x02, 0x3f, 0xdc, 0xbf, 0xf8, 0x5d, 0x8c, 0x08, 0x39, 0x81, 0x77, 0x31, 0x12, 0x81, 0xed, 0x46, - 0x55, 0xda, 0xa2, 0x01, 0xfd, 0x74, 0xab, 0xa9, 0x03, 0xe1, 0x5d, 0xc1, 0x9e, 0x0d, 0x57, 0xc3, - 0xb1, 0xe3, 0xf3, 0x10, 0x4e, 0x85, 0x6d, 0x7f, 0x96, 0x7c, 0xaf, 0x33, 0x95, 0x52, 0x44, 0x96, - 0x8e, 0x38, 0x0e, 0xb0, 0x3d, 0x79, 0x0a, 0x8b, 0x92, 0xe0, 0x91, 0x13, 0x9a, 0x24, 0x0e, 0x45, - 0x4b, 0xde, 0x85, 0x49, 0x85, 0x46, 0x44, 0x46, 0xc6, 0x6b, 0xea, 0x7d, 0x27, 0xd8, 0xb3, 0x7c, - 0x0e, 0x57, 0xaf, 0xa9, 0x15, 0x74, 0xe3, 0x2b, 0xf0, 0x62, 0xe8, 0xfa, 0x92, 0x52, 0x75, 0x8c, - 0x79, 0xe6, 0x64, 0xcc, 0xd7, 0xa3, 0x6e, 0xd5, 0x3a, 0xa1, 0xbb, 0xaa, 0xe4, 0x4d, 0xd4, 0x6e, - 0x89, 0xce, 0x9c, 0x4b, 0x38, 0xc0, 0x2a, 0x7e, 0xae, 0xc6, 0x3b, 0x4a, 0x63, 0x53, 0x18, 0x6a, - 0xc4, 0x99, 0x38, 0xf1, 0x0f, 0x67, 0x61, 0x66, 0xa3, 0x56, 0xad, 0x84, 0xd6, 0x47, 0xdf, 0x61, - 0x89, 0x2d, 0xb5, 0xbe, 0xf5, 0xdf, 0x6f, 0x8c, 0x07, 0x30, 0x17, 0x1b, 0x06, 0x14, 0x1d, 0xde, - 0xe7, 0xbe, 0x19, 0x21, 0x58, 0x8a, 0x0d, 0xa7, 0xd3, 0xd8, 0x3f, 0xbc, 0x69, 0xc6, 0xb0, 0x8d, - 0x7f, 0x36, 0x11, 0xe3, 0x2b, 0xb6, 0xb0, 0x37, 0x60, 0xa2, 0xe6, 0xfb, 0x3d, 0xea, 0x3d, 0x30, - 0xd7, 0xd4, 0xab, 0x02, 0x07, 0x81, 0x56, 0xcf, 0x6b, 0x99, 0x11, 0x02, 0xb9, 0x0a, 0x79, 0x11, - 0x2c, 0x58, 0xee, 0x09, 0x78, 0x6b, 0x1b, 0xc6, 0x1a, 0x36, 0xc3, 0x62, 0xf2, 0x16, 0x14, 0xf8, - 0xdf, 0x7c, 0xb5, 0x89, 0x01, 0xc7, 0xcb, 0x41, 0x81, 0xce, 0x57, 0xa7, 0xa9, 0xa1, 0x91, 0xd7, - 0x20, 0x57, 0xae, 0x98, 0xe2, 0x3a, 0x48, 0xc8, 0x8d, 0x98, 0xae, 0xba, 0x47, 0x75, 0x25, 0xa2, - 0x62, 0x32, 0xe9, 0x4f, 0x3a, 0xda, 0x8b, 0x9b, 0x6c, 0x9e, 0x55, 0x5b, 0xc0, 0x62, 0x87, 0x19, - 0xc2, 0xc8, 0x75, 0x18, 0xaf, 0x3a, 0x7e, 0xb7, 0x65, 0x1f, 0x88, 0x7b, 0x6c, 0x9e, 0xb5, 0x89, - 0x83, 0x34, 0x8f, 0x77, 0x0e, 0x22, 0x57, 0x65, 0x36, 0x9b, 0x7c, 0xe4, 0xe2, 0xd1, 0x27, 0x65, - 0xcd, 0x1b, 0x30, 0x26, 0x42, 0xea, 0x4e, 0x28, 0xc1, 0xf2, 0xe3, 0xa1, 0x74, 0x05, 0x4e, 0xd2, - 0x09, 0x13, 0x9e, 0xa5, 0x13, 0xe6, 0x36, 0x9c, 0xb9, 0x83, 0xb7, 0x37, 0x7a, 0x1c, 0x9a, 0x07, - 0x66, 0x4d, 0xdc, 0x87, 0xe3, 0x33, 0x10, 0xbf, 0xe0, 0x89, 0x87, 0xb2, 0xb1, 0x7a, 0x9e, 0x9a, - 0x84, 0xb0, 0x1f, 0x23, 0xf2, 0x65, 0x98, 0x4f, 0x2b, 0x12, 0xb7, 0xe6, 0x18, 0x71, 0x25, 0xbd, - 0x02, 0x35, 0xe2, 0x4a, 0x1a, 0x07, 0xb2, 0x06, 0x45, 0x0e, 0x2f, 0x37, 0xdb, 0x4e, 0x87, 0xdf, - 0xfc, 0xf3, 0x5b, 0x75, 0xf4, 0xb9, 0x10, 0x5c, 0x6d, 0x56, 0xc8, 0x5f, 0x00, 0x34, 0x2f, 0x9d, - 0x18, 0x25, 0xf9, 0xc9, 0x0c, 0xd3, 0xe6, 0x78, 0x00, 0xda, 0x07, 0xe6, 0x9a, 0x2f, 0xa2, 0x75, - 0x9d, 0x8e, 0x1c, 0x70, 0xea, 0x81, 0xe7, 0x74, 0x76, 0x85, 0x07, 0xce, 0x96, 0xf0, 0xc0, 0x79, - 0xf7, 0x63, 0x79, 0xe0, 0x70, 0x56, 0xfe, 0xd1, 0x61, 0xa9, 0xe0, 0x89, 0x3a, 0xf1, 0x2b, 0xd2, - 0x5a, 0x80, 0x09, 0xf4, 0x5b, 0x2d, 0x77, 0xff, 0x41, 0x87, 0x87, 0xbf, 0xa4, 0x4d, 0xde, 0xc9, - 0x19, 0xdc, 0xc1, 0x79, 0x02, 0x7d, 0x56, 0x6e, 0xf5, 0x42, 0x84, 0x44, 0x47, 0x53, 0x39, 0x30, - 0xc5, 0x53, 0x7a, 0x79, 0x70, 0x8f, 0xd2, 0x62, 0xa4, 0x78, 0x4a, 0x97, 0x10, 0x0b, 0x97, 0x91, - 0xba, 0x78, 0x34, 0x12, 0x72, 0x1d, 0xc6, 0xee, 0xdb, 0x4f, 0xcb, 0xbb, 0x54, 0x64, 0x29, 0x9b, - 0x92, 0xdb, 0x1f, 0x02, 0x97, 0xf3, 0x7f, 0xc8, 0xbd, 0x08, 0x5e, 0x30, 0x05, 0x1a, 0xf9, 0xbe, - 0x0c, 0x9c, 0xe6, 0x9f, 0xb1, 0xec, 0x65, 0x9d, 0x06, 0x01, 0x1b, 0x07, 0x11, 0xb6, 0x4b, 0xe6, - 0xf8, 0xa8, 0xd7, 0x37, 0xd2, 0xf1, 0x78, 0xba, 0x77, 0xb1, 0x33, 0x84, 0x03, 0xe7, 0x8b, 0x52, - 0x2d, 0x20, 0x69, 0x2a, 0xbd, 0xb0, 0x90, 0xff, 0x9c, 0x6c, 0x39, 0x79, 0x53, 0x75, 0x7c, 0xcc, - 0xa1, 0x9c, 0x3b, 0xde, 0xb6, 0x9f, 0x5a, 0xf6, 0x2e, 0xd5, 0xde, 0xb3, 0xc5, 0x3d, 0xf3, 0xcf, - 0x64, 0xe0, 0x6c, 0xdf, 0xc6, 0x91, 0x5b, 0x70, 0x46, 0x66, 0xfe, 0xdf, 0x0b, 0x82, 0xae, 0x6f, - 0x49, 0x65, 0x40, 0xb8, 0x4a, 0x9a, 0xa7, 0x44, 0xf1, 0x2a, 0x2b, 0x95, 0xfa, 0x81, 0x4f, 0x3e, - 0x80, 0x73, 0x4e, 0xc7, 0xa7, 0x8d, 0x9e, 0x47, 0x2d, 0xc9, 0xa0, 0xe1, 0x34, 0x3d, 0xcb, 0xb3, - 0x3b, 0xbb, 0xd2, 0xef, 0xd3, 0x3c, 0x2b, 0x71, 0x84, 0xcb, 0x70, 0xc5, 0x69, 0x7a, 0x26, 0x22, - 0x18, 0x3f, 0x35, 0xc5, 0x4f, 0xc5, 0x72, 0x2f, 0xd8, 0x93, 0xe7, 0xe8, 0x52, 0x9a, 0xb7, 0x10, - 0x37, 0x0f, 0x54, 0xbc, 0x85, 0x74, 0x1f, 0x21, 0xf9, 0x9c, 0x91, 0x4d, 0x7d, 0xce, 0x78, 0x03, - 0x26, 0x2a, 0x7b, 0xb4, 0xf1, 0x38, 0xf4, 0xd8, 0xc8, 0x8b, 0xfb, 0x62, 0x06, 0xe4, 0xd1, 0x6e, - 0x23, 0x04, 0x72, 0x1d, 0x00, 0xdd, 0x07, 0xb9, 0x90, 0xa5, 0x44, 0xac, 0x47, 0x6f, 0x43, 0x61, - 0x71, 0xa1, 0xa0, 0x20, 0xfb, 0xba, 0x79, 0x5b, 0x35, 0xd1, 0xe0, 0xec, 0x7d, 0x6f, 0x47, 0xa0, - 0x47, 0x08, 0xac, 0x7b, 0xca, 0xa7, 0x22, 0x36, 0xf6, 0x62, 0xe2, 0x7b, 0x52, 0x91, 0xc8, 0x35, - 0x98, 0xd8, 0x94, 0xe6, 0xe9, 0xb8, 0xaf, 0x17, 0x90, 0x02, 0x22, 0x53, 0xf6, 0x85, 0x8c, 0x19, - 0xa1, 0x90, 0xcf, 0xc1, 0x78, 0x85, 0x7a, 0xc1, 0xd6, 0xd6, 0x1a, 0xda, 0x51, 0xf0, 0xc0, 0xee, - 0x79, 0x0c, 0xc2, 0x1d, 0x04, 0xad, 0x6f, 0x1f, 0x96, 0xa6, 0x02, 0xa7, 0x4d, 0xc3, 0x80, 0xb5, - 0xa6, 0xc4, 0x26, 0xcb, 0x50, 0xe4, 0x2f, 0xbd, 0x91, 0x38, 0x8d, 0x9b, 0x7d, 0x9e, 0x1f, 0x3d, - 0xe2, 0x59, 0x78, 0x9f, 0x6e, 0x87, 0x21, 0xc8, 0x13, 0xf8, 0x64, 0x45, 0x46, 0xee, 0x57, 0xbb, - 0x09, 0xd1, 0xfd, 0x4e, 0xfc, 0x23, 0x60, 0xbd, 0x4d, 0x52, 0x90, 0x32, 0x4c, 0x55, 0xdc, 0x76, - 0xd7, 0x0e, 0x1c, 0x4c, 0x83, 0x75, 0x20, 0xf6, 0x75, 0xbc, 0xa3, 0x6a, 0xa8, 0x05, 0xda, 0x21, - 0xa1, 0x16, 0x90, 0xdb, 0x30, 0x6d, 0xba, 0x3d, 0x36, 0x4d, 0x52, 0xb1, 0xe4, 0x5b, 0x37, 0x5a, - 0x3b, 0x78, 0xac, 0x84, 0x9d, 0x34, 0x42, 0x8b, 0xd4, 0x62, 0x09, 0x6a, 0x54, 0x64, 0x3d, 0xe5, - 0x86, 0x5f, 0xdd, 0xaf, 0xd5, 0x40, 0xe4, 0x09, 0x66, 0x29, 0x8f, 0x03, 0x37, 0x61, 0xb2, 0x5e, - 0xdf, 0xd8, 0xa2, 0x7e, 0x70, 0xbb, 0xe5, 0xee, 0xe3, 0x76, 0x9d, 0x17, 0x09, 0x5a, 0x7c, 0xd7, - 0x0a, 0xa8, 0x1f, 0x58, 0x3b, 0x2d, 0x77, 0xdf, 0x54, 0xb1, 0xc8, 0xd7, 0xd9, 0x78, 0x28, 0xc2, - 0x8d, 0x88, 0x9a, 0x38, 0x48, 0xfe, 0xc2, 0x4d, 0x31, 0xfa, 0x68, 0x98, 0x14, 0xa6, 0x0f, 0x96, - 0x82, 0x8e, 0x0e, 0x48, 0x4c, 0x25, 0x2e, 0x37, 0x9b, 0x1e, 0xf5, 0x7d, 0xb1, 0xaf, 0x72, 0x07, - 0x24, 0xd4, 0x9f, 0x6d, 0x5e, 0xa0, 0x39, 0x20, 0x29, 0x04, 0xe4, 0x47, 0x33, 0x70, 0x4a, 0xf5, - 0x61, 0xc0, 0xcf, 0x05, 0x2d, 0x37, 0xf8, 0x2e, 0xfb, 0xe6, 0x35, 0x79, 0xae, 0x5c, 0x53, 0xd0, - 0xae, 0x3d, 0xb9, 0x71, 0xad, 0x1c, 0xfd, 0xac, 0x4b, 0x22, 0x8c, 0x00, 0x55, 0x4a, 0xe5, 0x17, - 0xb5, 0x60, 0x21, 0x63, 0xce, 0xdb, 0x29, 0xc4, 0xa4, 0xc2, 0x84, 0x0f, 0xb6, 0xa2, 0xd0, 0x16, - 0xa8, 0xb6, 0x89, 0xdb, 0xb4, 0xb8, 0x24, 0x14, 0xeb, 0x8f, 0x5b, 0x0d, 0x39, 0x5d, 0x5d, 0xc6, - 0x50, 0x68, 0x48, 0x0d, 0x66, 0x38, 0x80, 0x6d, 0x0b, 0x3c, 0x7f, 0xc7, 0x5c, 0x14, 0x43, 0x5c, - 0xb0, 0xc1, 0xe7, 0x6b, 0xcc, 0xe1, 0xa1, 0x86, 0xf9, 0x8b, 0xd1, 0x91, 0x0f, 0x60, 0xda, 0xf7, - 0xf7, 0x2c, 0xe5, 0x7b, 0x9d, 0xc7, 0xaf, 0x18, 0xa3, 0x15, 0x8a, 0x92, 0x98, 0x9b, 0x56, 0xc1, - 0xf7, 0xf7, 0xa2, 0x2f, 0xfa, 0x03, 0x98, 0x46, 0xf3, 0x93, 0x88, 0xc1, 0xa9, 0x88, 0x81, 0x28, - 0x89, 0x33, 0x08, 0x5a, 0x7e, 0xc4, 0xe0, 0x6f, 0x65, 0xe0, 0x2c, 0xab, 0x28, 0x7d, 0x86, 0x4e, - 0x7f, 0x9c, 0x19, 0xc2, 0xf8, 0x6d, 0x7d, 0x79, 0xaa, 0x12, 0x96, 0xef, 0xef, 0xa5, 0x71, 0xc0, - 0x46, 0xb1, 0xc6, 0xa7, 0x37, 0xea, 0xcc, 0xc7, 0x6e, 0x54, 0x5f, 0x9e, 0x6a, 0xa3, 0x82, 0x96, - 0x9f, 0xc6, 0x01, 0x35, 0xb5, 0x7a, 0xf9, 0xfe, 0x5a, 0xa4, 0x6e, 0x7c, 0x67, 0x79, 0x62, 0x68, - 0x7d, 0x1b, 0xe0, 0x89, 0xf1, 0x80, 0xfb, 0xd0, 0x2a, 0xc3, 0x20, 0x35, 0x35, 0x0d, 0x1c, 0xd7, - 0xd4, 0x62, 0x34, 0x66, 0x0c, 0xdb, 0xf8, 0x76, 0x3e, 0xc6, 0x57, 0x58, 0x5f, 0x1a, 0x30, 0xc6, - 0x15, 0x31, 0x35, 0x71, 0x3f, 0x57, 0xd3, 0x4c, 0x51, 0x42, 0xce, 0x42, 0xae, 0x5e, 0xdf, 0x10, - 0x83, 0x8c, 0x36, 0x98, 0xbe, 0xef, 0x9a, 0x0c, 0xc6, 0x66, 0x08, 0x0d, 0x2b, 0x95, 0xe8, 0xd6, - 0xec, 0xbc, 0x33, 0x11, 0xca, 0xc6, 0x5b, 0xaa, 0x45, 0x23, 0xd1, 0x78, 0x0b, 0xb5, 0x28, 0x52, - 0x86, 0x2a, 0xb0, 0x50, 0xf6, 0x7d, 0xea, 0xb1, 0x05, 0x21, 0xec, 0xf5, 0x3c, 0x21, 0xba, 0x8b, - 0x83, 0x1d, 0x2b, 0xb5, 0x1b, 0xbe, 0xd9, 0x17, 0x91, 0x5c, 0x81, 0x7c, 0xb9, 0xd7, 0x74, 0x68, - 0xa7, 0xa1, 0x85, 0x7f, 0xb2, 0x05, 0xcc, 0x0c, 0x4b, 0xc9, 0x97, 0xe0, 0x54, 0x2c, 0xa0, 0x9a, - 0x18, 0x81, 0xf1, 0x68, 0xef, 0x95, 0xaa, 0x45, 0x64, 0x63, 0xc0, 0x87, 0x24, 0x9d, 0x92, 0x94, - 0xa1, 0xb8, 0x82, 0x9e, 0x47, 0x55, 0xca, 0x9f, 0x3b, 0x5c, 0x8f, 0x7b, 0x7d, 0x71, 0x45, 0x90, - 0x7b, 0x25, 0x59, 0xcd, 0xb0, 0xd0, 0x4c, 0xa0, 0x93, 0x7b, 0x30, 0x17, 0x87, 0xb1, 0x13, 0x9c, - 0xeb, 0x7c, 0xb8, 0xdf, 0x24, 0xb8, 0xe0, 0x19, 0x9e, 0x46, 0x45, 0xb6, 0x61, 0x36, 0xb2, 0xb1, - 0xd1, 0x35, 0x41, 0x69, 0xba, 0x1b, 0x96, 0x4b, 0x6d, 0xf0, 0x45, 0xb1, 0x18, 0xe7, 0x22, 0x7b, - 0x9d, 0x50, 0x23, 0x34, 0x93, 0xec, 0x48, 0x13, 0xa6, 0xeb, 0xce, 0x6e, 0xc7, 0xe9, 0xec, 0xde, - 0xa3, 0x07, 0x9b, 0xb6, 0xe3, 0x09, 0x23, 0x4a, 0x69, 0x22, 0x5d, 0xf6, 0x0f, 0xda, 0x6d, 0x1a, - 0x78, 0xb8, 0x11, 0xb2, 0x72, 0x74, 0x58, 0x66, 0x12, 0xfe, 0xa2, 0xcf, 0xe9, 0xd0, 0x19, 0xb0, - 0x6b, 0x3b, 0x9a, 0x10, 0xa0, 0xf3, 0xd4, 0xb4, 0xf1, 0xc2, 0x90, 0xda, 0x78, 0x0b, 0x66, 0x57, - 0x3a, 0x0d, 0xef, 0x00, 0x5f, 0x9d, 0x64, 0xe3, 0xa6, 0x8e, 0x69, 0xdc, 0xcb, 0xa2, 0x71, 0xe7, - 0x6c, 0xb9, 0xc2, 0xd2, 0x9a, 0x97, 0x64, 0x4c, 0xea, 0x30, 0x8b, 0x12, 0x76, 0xad, 0xba, 0x59, - 0xeb, 0x38, 0x81, 0x83, 0xe9, 0xe5, 0xb9, 0x70, 0xf1, 0x8a, 0xe0, 0x79, 0x9e, 0x6b, 0x5d, 0x4e, - 0xb3, 0x6b, 0x39, 0x12, 0x45, 0x65, 0x9a, 0xa0, 0x1f, 0xa4, 0xfa, 0xcc, 0xfc, 0xeb, 0x51, 0x7d, - 0x30, 0x01, 0x5b, 0xcc, 0x91, 0xbf, 0x18, 0x9d, 0xc3, 0x3e, 0x16, 0xb1, 0xe3, 0xdc, 0xed, 0xa1, - 0x30, 0xa9, 0x25, 0x60, 0xd3, 0xe9, 0x8c, 0xdf, 0x28, 0xf0, 0xbd, 0x5d, 0xd5, 0x37, 0xfa, 0x19, - 0x4f, 0xc6, 0xf4, 0x90, 0xec, 0x49, 0xf4, 0x90, 0xdc, 0xf1, 0x7a, 0xc8, 0xc8, 0x71, 0x7a, 0x48, - 0x4c, 0x51, 0x18, 0x3d, 0xb1, 0xa2, 0x30, 0x76, 0x22, 0x45, 0x61, 0xfc, 0x44, 0x8a, 0x82, 0xa6, - 0xf3, 0xe4, 0x8f, 0xd3, 0x79, 0xfe, 0x4a, 0xad, 0x78, 0x5e, 0xd5, 0x8a, 0x34, 0x61, 0xe1, 0x44, - 0x6a, 0xc5, 0x8f, 0xf4, 0xd5, 0x0a, 0x8a, 0x1f, 0x47, 0xbc, 0xbb, 0x34, 0x84, 0x56, 0x30, 0xac, - 0x4e, 0x30, 0xfb, 0x6c, 0x74, 0x02, 0xf2, 0xcc, 0x74, 0x82, 0xb9, 0x4f, 0xaa, 0x13, 0xcc, 0x3f, - 0x4b, 0x9d, 0xe0, 0xd4, 0x5f, 0x46, 0x9d, 0xe0, 0xf4, 0xbf, 0x19, 0x9d, 0xe0, 0x7b, 0xa1, 0x18, - 0x17, 0x53, 0x8e, 0x8f, 0xd3, 0xf9, 0xcc, 0x62, 0xca, 0x31, 0x21, 0x2a, 0x2e, 0x26, 0x90, 0xeb, - 0x00, 0x9b, 0x9e, 0xf3, 0xc4, 0x0e, 0xe8, 0x3d, 0x69, 0x1a, 0x24, 0x62, 0xcc, 0x72, 0x28, 0x9b, - 0x79, 0x53, 0x41, 0x09, 0x25, 0xe4, 0x6c, 0x9a, 0x84, 0x6c, 0xfc, 0x68, 0x16, 0x66, 0x79, 0xfc, - 0xa7, 0xe7, 0xff, 0x85, 0xea, 0x7d, 0x4d, 0xef, 0x39, 0x17, 0xc5, 0x4d, 0x56, 0x7b, 0x37, 0xe0, - 0x8d, 0xea, 0x6b, 0x70, 0x2a, 0x31, 0x14, 0xa8, 0xfb, 0x54, 0x65, 0xe4, 0xad, 0x84, 0xf6, 0xb3, - 0x90, 0x5e, 0xc9, 0xc3, 0x9b, 0x66, 0x82, 0xc2, 0xf8, 0xf3, 0x91, 0x04, 0x7f, 0xf1, 0x5a, 0xa5, - 0xbe, 0x3f, 0x65, 0x4e, 0xf6, 0xfe, 0x94, 0x1d, 0xee, 0xfd, 0x29, 0x26, 0x54, 0xe4, 0x86, 0x11, - 0x2a, 0xbe, 0x04, 0x53, 0x5b, 0xd4, 0x6e, 0xfb, 0x5b, 0xae, 0x48, 0x82, 0xc1, 0x0d, 0xd1, 0x65, - 0x60, 0x2d, 0x56, 0x26, 0x45, 0xf7, 0xd0, 0xa0, 0x2e, 0x60, 0x04, 0xec, 0x18, 0xe4, 0x59, 0x31, - 0x4c, 0x9d, 0x83, 0xaa, 0x8f, 0x8d, 0x0e, 0xd0, 0xc7, 0xea, 0x50, 0x10, 0x74, 0x51, 0x70, 0xd2, - 0x48, 0x71, 0x60, 0x45, 0x08, 0x97, 0xb5, 0x87, 0xb9, 0x59, 0xc3, 0xda, 0xb9, 0xce, 0xa0, 0x31, - 0x61, 0x43, 0xb0, 0xd2, 0x69, 0x76, 0x5d, 0xa7, 0x83, 0x43, 0x30, 0x1e, 0x0d, 0x01, 0x15, 0x60, - 0x3e, 0x04, 0x0a, 0x12, 0x79, 0x17, 0xa6, 0xcb, 0x9b, 0x35, 0x95, 0x2c, 0x1f, 0x3d, 0x81, 0xd9, - 0x5d, 0xc7, 0xd2, 0x48, 0x63, 0xb8, 0x83, 0x64, 0xe8, 0x89, 0x7f, 0x3d, 0x32, 0xb4, 0xf1, 0x2f, - 0x0a, 0xf2, 0xf3, 0xfe, 0x74, 0xaf, 0xda, 0xf5, 0xcb, 0xf3, 0xdc, 0x09, 0x2f, 0xcf, 0x47, 0x8e, - 0x13, 0x24, 0x35, 0xf9, 0x76, 0xf4, 0x44, 0xf2, 0xed, 0xd8, 0x27, 0xbe, 0x08, 0x1f, 0x3f, 0xa1, - 0xc4, 0x1a, 0xfb, 0xd6, 0xf2, 0xc3, 0x7c, 0x6b, 0xa9, 0x52, 0xee, 0xc4, 0x27, 0x97, 0x72, 0xe1, - 0xc4, 0x52, 0x6e, 0x3d, 0x72, 0xec, 0x9c, 0x3c, 0xd6, 0x5e, 0xfe, 0xbc, 0xd0, 0x2f, 0x67, 0xd3, - 0x83, 0x7f, 0x85, 0x2e, 0x9e, 0xdf, 0x51, 0xa2, 0xf3, 0x37, 0xd2, 0x45, 0xe7, 0xc1, 0xe7, 0xcd, - 0x89, 0x84, 0xe7, 0x1f, 0x7d, 0xb6, 0xc2, 0xf3, 0xb3, 0xbd, 0x52, 0xff, 0x2b, 0xf1, 0xf9, 0xaf, - 0xc4, 0xe7, 0x21, 0xc5, 0x67, 0x0f, 0x3f, 0xaf, 0x47, 0xb6, 0xd7, 0xc1, 0x0b, 0x9d, 0xeb, 0x30, - 0x2e, 0xa3, 0x1f, 0x66, 0xa2, 0xbb, 0xc9, 0x64, 0xd8, 0x43, 0x89, 0x45, 0x96, 0x20, 0x2f, 0x89, - 0xd5, 0x4c, 0x0e, 0xfb, 0x02, 0xa6, 0x05, 0x96, 0x13, 0x30, 0xe3, 0xef, 0x8f, 0xc8, 0x2d, 0x9c, - 0xad, 0x99, 0x4d, 0xdb, 0xb3, 0xdb, 0x98, 0xc6, 0x27, 0xfc, 0xc2, 0x14, 0xe1, 0x3d, 0xf6, 0x51, - 0xc6, 0xec, 0x9e, 0x75, 0x92, 0x8f, 0x15, 0x8f, 0x32, 0xca, 0x94, 0x98, 0x1b, 0x22, 0x53, 0xe2, - 0xdb, 0x5a, 0x9a, 0xc1, 0x91, 0x28, 0xaf, 0x15, 0xdb, 0xd6, 0x06, 0x27, 0x18, 0xbc, 0xa5, 0xe6, - 0x03, 0x1c, 0x8d, 0x42, 0x1e, 0x21, 0xe5, 0x80, 0x4c, 0x80, 0xa1, 0x36, 0x32, 0x76, 0x92, 0x48, - 0xaf, 0xe3, 0xff, 0x46, 0x23, 0xbd, 0xae, 0x00, 0x28, 0xa9, 0xf1, 0xf9, 0x43, 0xf7, 0x2b, 0xf8, - 0xf5, 0x1f, 0x9b, 0x16, 0x5f, 0x21, 0x34, 0xfe, 0x80, 0xc0, 0x6c, 0xbd, 0xbe, 0x51, 0x75, 0xec, - 0xdd, 0x8e, 0xeb, 0x07, 0x4e, 0xa3, 0xd6, 0xd9, 0x71, 0x99, 0x28, 0x1e, 0x1e, 0x07, 0x4a, 0x48, - 0xcf, 0xe8, 0x28, 0x08, 0x8b, 0x99, 0xaa, 0xb7, 0xe2, 0x79, 0xae, 0xa7, 0xaa, 0x7a, 0x94, 0x01, - 0x4c, 0x0e, 0x67, 0xd2, 0x6e, 0xbd, 0xc7, 0x73, 0x9c, 0x73, 0xeb, 0x03, 0x94, 0x76, 0x7d, 0x0e, - 0x32, 0x65, 0x19, 0xa1, 0xc9, 0x05, 0x2b, 0xb4, 0x9f, 0x33, 0x5a, 0xbc, 0xd8, 0xa8, 0x98, 0x1f, - 0x76, 0x42, 0x18, 0xc1, 0x6d, 0xb3, 0x8b, 0x70, 0xd5, 0x5c, 0x28, 0xf1, 0x0d, 0x1c, 0xc0, 0x29, - 0xcd, 0x21, 0x74, 0xd8, 0x6b, 0xf9, 0xd7, 0x84, 0x74, 0x6d, 0x60, 0xfc, 0x81, 0x94, 0xbb, 0x79, - 0x35, 0x2f, 0x4f, 0x6a, 0x0d, 0xec, 0x3c, 0x3b, 0x9f, 0x5a, 0x12, 0x7e, 0xdd, 0x93, 0x5a, 0xcc, - 0x5e, 0x65, 0xd3, 0xe0, 0x19, 0x88, 0xfa, 0x55, 0x6d, 0xa5, 0x6c, 0x05, 0x83, 0x6b, 0x22, 0xbf, - 0x99, 0x81, 0x33, 0x1a, 0x46, 0xb8, 0x5d, 0xf9, 0x61, 0xac, 0x84, 0xd4, 0x75, 0xfd, 0xd1, 0xb3, - 0x59, 0xd7, 0x97, 0xf4, 0xbe, 0x44, 0x1b, 0xaa, 0xda, 0x87, 0x7e, 0x2d, 0x24, 0x4f, 0x60, 0x16, - 0x8b, 0xe4, 0x13, 0x01, 0x5b, 0xb3, 0xe2, 0x65, 0x61, 0x3e, 0x6a, 0x36, 0x77, 0x72, 0xc6, 0x2c, - 0xb2, 0x4b, 0xdf, 0x3a, 0x2c, 0x4d, 0x69, 0xe8, 0x32, 0x0a, 0xae, 0x15, 0xbd, 0x33, 0x38, 0x9d, - 0x1d, 0x57, 0x15, 0x94, 0x12, 0x55, 0x90, 0x7f, 0x9c, 0x81, 0x05, 0x06, 0xe5, 0xdd, 0xb8, 0xed, - 0xb9, 0xed, 0xb0, 0x5c, 0xda, 0x9d, 0xf5, 0x19, 0xb6, 0xd6, 0xb3, 0x19, 0xb6, 0x57, 0xb0, 0xc9, - 0x7c, 0x4f, 0xb0, 0x76, 0x3c, 0xb7, 0x1d, 0x35, 0x5f, 0x4b, 0xfd, 0xde, 0xaf, 0x91, 0xe4, 0xfb, - 0x33, 0x70, 0x56, 0xbb, 0xd5, 0x54, 0x73, 0x05, 0x08, 0x57, 0xf2, 0xb9, 0x30, 0xc8, 0x44, 0x54, - 0xb4, 0x7c, 0x4d, 0xac, 0xff, 0xcb, 0xd8, 0x82, 0xe8, 0xb4, 0xc0, 0xb6, 0x58, 0x6d, 0x8e, 0xa5, - 0x34, 0xa1, 0x7f, 0x2d, 0xc4, 0x81, 0x59, 0xb4, 0xd7, 0xd0, 0xec, 0x23, 0xe7, 0xfb, 0xdb, 0x47, - 0x86, 0xd9, 0xfe, 0x30, 0x10, 0x79, 0x7f, 0x23, 0xc9, 0x24, 0x57, 0xf2, 0xd7, 0xe0, 0x6c, 0x02, - 0x18, 0x7e, 0x6d, 0xa7, 0xfa, 0x7e, 0x6d, 0xaf, 0x1f, 0x1d, 0x96, 0x5e, 0x4d, 0xab, 0x2d, 0xed, - 0x4b, 0xeb, 0x5f, 0x03, 0xb1, 0x01, 0xa2, 0x42, 0x21, 0x7e, 0xa4, 0x2f, 0xd0, 0xd7, 0xc5, 0xfa, - 0x50, 0xf0, 0xd9, 0x5e, 0xae, 0xb4, 0x41, 0x3d, 0xf2, 0x22, 0x24, 0x42, 0xa1, 0xa0, 0x04, 0x61, - 0x3f, 0x10, 0x66, 0x03, 0x7d, 0x2a, 0xf9, 0xd6, 0x61, 0x49, 0xc3, 0x66, 0x0a, 0x91, 0x1a, 0xdd, - 0x5d, 0x93, 0xf6, 0x54, 0x44, 0xf2, 0xeb, 0x19, 0x98, 0x67, 0x80, 0x68, 0x51, 0x89, 0x4e, 0x2d, - 0x0c, 0x5a, 0xf5, 0x7b, 0xcf, 0x66, 0xd5, 0xbf, 0x84, 0x6d, 0x54, 0x57, 0x7d, 0x62, 0x48, 0x52, - 0x1b, 0x87, 0xab, 0x5d, 0x33, 0x0d, 0xd2, 0x56, 0xfb, 0xd9, 0x21, 0x56, 0x3b, 0x9f, 0x80, 0xe3, - 0x57, 0x7b, 0xdf, 0x5a, 0xc8, 0x16, 0x14, 0x84, 0x2e, 0xc4, 0x07, 0xec, 0x82, 0x16, 0xc0, 0x59, - 0x2d, 0xe2, 0x0a, 0xaa, 0x88, 0x51, 0x9f, 0xe8, 0xa1, 0xc6, 0x85, 0x74, 0x60, 0x8e, 0xff, 0xd6, - 0xef, 0xa6, 0x4a, 0x7d, 0xef, 0xa6, 0xae, 0x88, 0x1e, 0x5d, 0x14, 0xfc, 0x63, 0x57, 0x54, 0x6a, - 0x6c, 0x9a, 0x14, 0xc6, 0xa4, 0x0b, 0x44, 0x03, 0xf3, 0x8f, 0xf6, 0xe2, 0xe0, 0x1b, 0xa9, 0x57, - 0x45, 0x9d, 0xa5, 0x78, 0x9d, 0xf1, 0x2f, 0x37, 0x85, 0x37, 0xb1, 0x61, 0x46, 0x40, 0xdd, 0xc7, - 0x94, 0xef, 0xf0, 0x2f, 0x69, 0xd1, 0x81, 0x62, 0xa5, 0x5c, 0x89, 0x92, 0x35, 0x61, 0xf4, 0xa6, - 0xd8, 0x86, 0x1e, 0xe7, 0x47, 0x36, 0x60, 0xb6, 0xdc, 0xed, 0xb6, 0x1c, 0xda, 0xc4, 0x5e, 0xf2, - 0xc4, 0xd8, 0x46, 0x94, 0x50, 0xc8, 0xe6, 0x85, 0x42, 0xb3, 0x8b, 0x67, 0xc5, 0x4e, 0xd2, 0x1a, - 0x3f, 0x92, 0x49, 0x34, 0x9a, 0xbc, 0x01, 0x13, 0xf8, 0x43, 0x09, 0x38, 0x81, 0x57, 0x3c, 0xbc, - 0x89, 0x78, 0x79, 0x14, 0x21, 0x30, 0x61, 0x49, 0x0d, 0x3a, 0x97, 0xe3, 0xc2, 0x92, 0xb8, 0x57, - 0x88, 0x6e, 0x12, 0x4a, 0xd2, 0x6e, 0x3d, 0x17, 0x09, 0x5d, 0x68, 0xb7, 0x2e, 0xac, 0xd5, 0x8d, - 0xef, 0xcf, 0xea, 0xcb, 0x8e, 0x5c, 0x51, 0xe4, 0x76, 0x25, 0xec, 0x9d, 0x94, 0xdb, 0x15, 0x69, - 0xfd, 0xef, 0x65, 0x60, 0x6e, 0x43, 0xc9, 0x44, 0xb7, 0xe5, 0xe2, 0xbc, 0x0c, 0xce, 0xcd, 0xf6, - 0xac, 0x72, 0x4c, 0xa9, 0x29, 0xf0, 0xd8, 0x4a, 0xc1, 0x25, 0x63, 0xa6, 0xb5, 0x07, 0x3d, 0x81, - 0xb0, 0x61, 0x4a, 0xaa, 0x2f, 0x8e, 0xce, 0xe1, 0xc6, 0x8f, 0x67, 0x61, 0x52, 0xf9, 0x04, 0xc8, - 0x67, 0xa1, 0xa0, 0xf2, 0x51, 0x2f, 0xfc, 0xd4, 0x6a, 0x4d, 0x0d, 0x0b, 0x6f, 0xfc, 0xa8, 0xdd, - 0xd6, 0x6e, 0xfc, 0xd8, 0x42, 0x47, 0xe8, 0x09, 0x55, 0x9b, 0x0f, 0x52, 0x54, 0x9b, 0x13, 0x65, - 0x50, 0x7f, 0x37, 0xa9, 0xe0, 0x0c, 0x9f, 0xf0, 0xdc, 0xf8, 0xa9, 0x0c, 0x14, 0xe3, 0x1f, 0xe9, - 0xa7, 0x32, 0x2a, 0x27, 0x78, 0xdd, 0xf9, 0xb1, 0x6c, 0x98, 0x81, 0x41, 0xfa, 0x37, 0x3e, 0xaf, - 0x06, 0x67, 0xef, 0x69, 0x0f, 0x2f, 0x2f, 0xea, 0xa1, 0xba, 0xd4, 0xc8, 0x00, 0xe9, 0xf1, 0xf9, - 0x46, 0x7e, 0xfe, 0x97, 0x4a, 0x2f, 0x18, 0x1f, 0xc2, 0x7c, 0x7c, 0x38, 0xf0, 0xf1, 0xa5, 0x0c, - 0x33, 0x3a, 0x3c, 0x9e, 0xbf, 0x25, 0x4e, 0x65, 0xc6, 0xf1, 0x8d, 0x3f, 0xcc, 0xc6, 0x79, 0x0b, - 0xe3, 0x33, 0xb6, 0xe9, 0x74, 0xec, 0xed, 0x56, 0x98, 0xbf, 0x81, 0x6f, 0x3a, 0x1c, 0x64, 0xca, - 0xb2, 0x93, 0x24, 0x34, 0x0a, 0xbd, 0xf4, 0x72, 0xe9, 0x5e, 0x7a, 0xe4, 0x56, 0xcc, 0xde, 0x56, - 0x09, 0x29, 0xb3, 0x4f, 0xb7, 0xad, 0xc8, 0xe6, 0x36, 0x66, 0x66, 0x5b, 0x81, 0x79, 0x2d, 0x3e, - 0xb2, 0xa4, 0x1f, 0x8d, 0xee, 0xda, 0x03, 0x2c, 0xe0, 0xc4, 0xa9, 0xc8, 0x64, 0x15, 0xc6, 0x59, - 0x33, 0xef, 0xdb, 0x5d, 0xf1, 0xa6, 0x42, 0x42, 0x9f, 0xdd, 0x56, 0xa8, 0xf0, 0x29, 0x6e, 0xbb, - 0x2d, 0xca, 0x8e, 0x7c, 0x75, 0x61, 0x09, 0x44, 0xe3, 0x9f, 0x67, 0xd8, 0xf7, 0xdf, 0x78, 0xfc, - 0x1d, 0x96, 0x15, 0x89, 0x75, 0x69, 0x80, 0x6d, 0xe4, 0x9f, 0x64, 0x79, 0x0a, 0x0e, 0xb1, 0x7c, - 0xde, 0x86, 0xb1, 0x2d, 0xdb, 0xdb, 0xa5, 0x81, 0x48, 0x4e, 0xa1, 0x72, 0xe1, 0x05, 0x51, 0xc0, - 0x9b, 0x00, 0x7f, 0x9b, 0x82, 0x40, 0xbd, 0x0b, 0xcb, 0x0e, 0x75, 0x17, 0xa6, 0xdc, 0xcb, 0xe7, - 0x9e, 0xd9, 0xbd, 0xfc, 0x77, 0x85, 0xd9, 0x36, 0xca, 0xc1, 0x10, 0xe1, 0x77, 0x2f, 0xc6, 0xb3, - 0xd5, 0x24, 0x02, 0x25, 0x47, 0xec, 0xc8, 0x2d, 0x35, 0xff, 0x8d, 0xe2, 0xf8, 0x76, 0x4c, 0xa6, - 0x1b, 0xe3, 0x4f, 0x72, 0x7c, 0x8c, 0xc5, 0x40, 0x5d, 0xd6, 0x9c, 0x62, 0xf1, 0x3b, 0x61, 0x1b, - 0xbd, 0x1a, 0x9f, 0x00, 0xcd, 0xa6, 0x2e, 0xc3, 0x08, 0x5b, 0x9b, 0x62, 0x34, 0x11, 0x8f, 0xad, - 0x5f, 0x15, 0x8f, 0x95, 0xb3, 0x6f, 0x19, 0xcf, 0x24, 0x35, 0xe3, 0x18, 0x1e, 0x5b, 0xea, 0xb7, - 0x8c, 0x18, 0xe4, 0x0a, 0x8c, 0xac, 0xbb, 0x4d, 0x19, 0xe6, 0x79, 0x1e, 0x43, 0x23, 0xb8, 0x4d, - 0xaa, 0x5d, 0x9a, 0x23, 0x06, 0xeb, 0x6b, 0x98, 0xc0, 0x42, 0xed, 0x6b, 0x7b, 0xc7, 0x16, 0xb1, - 0x08, 0xd5, 0xbe, 0x46, 0xb9, 0x2e, 0x56, 0x60, 0x5a, 0xcf, 0x97, 0x2c, 0x2c, 0x47, 0xf1, 0x76, - 0x3d, 0x96, 0x76, 0x59, 0x7d, 0x16, 0xd1, 0x89, 0xc8, 0x32, 0x4c, 0x69, 0xe1, 0x25, 0xc5, 0xe3, - 0x26, 0x5e, 0x6f, 0xea, 0xc1, 0x29, 0xd5, 0xeb, 0x4d, 0x8d, 0x84, 0x9d, 0xe7, 0xa2, 0xfd, 0xca, - 0x13, 0x67, 0xa2, 0xed, 0x02, 0x87, 0xdc, 0x84, 0x3c, 0x8f, 0x41, 0x50, 0xab, 0xaa, 0xcf, 0x54, - 0x3e, 0xc2, 0x62, 0x31, 0x3c, 0x24, 0xa2, 0xe2, 0x73, 0xfe, 0x19, 0x28, 0x8a, 0x2d, 0x29, 0xca, - 0xee, 0x7b, 0x0e, 0x46, 0x2a, 0xb5, 0xaa, 0xa9, 0x6e, 0x23, 0x0d, 0xa7, 0xe9, 0x99, 0x08, 0x45, - 0x47, 0xa6, 0x75, 0x1a, 0xec, 0xbb, 0xde, 0x63, 0x93, 0xfa, 0x81, 0xe7, 0xf0, 0x84, 0x75, 0xf8, - 0x21, 0x7e, 0x96, 0xbc, 0x0b, 0xa3, 0x68, 0xc2, 0x18, 0x3b, 0x19, 0xe2, 0x75, 0x2c, 0x4f, 0x89, - 0x05, 0x3c, 0x8a, 0xf6, 0x90, 0x26, 0x27, 0x22, 0x6f, 0xc3, 0x48, 0x95, 0x76, 0x0e, 0x62, 0x29, - 0xbb, 0x12, 0xc4, 0xe1, 0x86, 0xd0, 0xa4, 0x9d, 0x03, 0x13, 0x49, 0x8c, 0x9f, 0xca, 0xc2, 0xa9, - 0x94, 0x66, 0x3d, 0xfc, 0xec, 0x73, 0xba, 0x2b, 0x2e, 0x6b, 0xbb, 0xa2, 0x7c, 0x9f, 0xee, 0x3b, - 0xf0, 0xa9, 0x9b, 0xe4, 0x2f, 0x64, 0xe0, 0x8c, 0xbe, 0x40, 0x85, 0xcd, 0xf2, 0xc3, 0x9b, 0xe4, - 0x1d, 0x18, 0x5b, 0xa5, 0x76, 0x93, 0xca, 0x74, 0x3e, 0xa7, 0xc2, 0x68, 0x61, 0xdc, 0xc1, 0x9a, - 0x17, 0x72, 0xb6, 0x91, 0x3b, 0x1e, 0x87, 0x92, 0xaa, 0x68, 0x1c, 0x97, 0xc7, 0x0d, 0x19, 0xec, - 0x20, 0xad, 0xaa, 0x01, 0x56, 0x1e, 0xdf, 0xca, 0xc0, 0x8b, 0x03, 0x68, 0xd8, 0xc4, 0xb1, 0xa9, - 0x57, 0x27, 0x0e, 0x4f, 0x54, 0x84, 0x92, 0xf7, 0x61, 0x66, 0x4b, 0xc8, 0xf3, 0x72, 0x3a, 0xb2, - 0xd1, 0xf7, 0x22, 0x45, 0x7d, 0x4b, 0xce, 0x4b, 0x1c, 0x59, 0x8b, 0xc2, 0x91, 0x1b, 0x18, 0x85, - 0x43, 0x0d, 0x6a, 0x31, 0x32, 0x6c, 0x50, 0x8b, 0x0f, 0x61, 0x5e, 0xef, 0x9b, 0x88, 0x2d, 0x1a, - 0x85, 0xf4, 0xc8, 0xf4, 0x0f, 0xe9, 0x31, 0x30, 0x82, 0xa1, 0xf1, 0xe3, 0x19, 0x28, 0xea, 0xbc, - 0x3f, 0xe9, 0x7c, 0xbe, 0xa7, 0xcd, 0xe7, 0x8b, 0xe9, 0xf3, 0xd9, 0x7f, 0x22, 0xff, 0xcf, 0x4c, - 0xbc, 0xb3, 0x43, 0xcd, 0xa0, 0x01, 0x63, 0x55, 0xb7, 0x6d, 0x3b, 0x1d, 0x35, 0x59, 0x74, 0x13, - 0x21, 0xa6, 0x28, 0x19, 0x2e, 0x02, 0xca, 0x45, 0x18, 0x5d, 0x77, 0x3b, 0xe5, 0xaa, 0x30, 0xe9, - 0x45, 0x3e, 0x1d, 0xb7, 0x63, 0xd9, 0x4d, 0x93, 0x17, 0x90, 0x35, 0x80, 0x7a, 0xc3, 0xa3, 0xb4, - 0x53, 0x77, 0xbe, 0x9b, 0xc6, 0x24, 0x0d, 0x36, 0x42, 0xad, 0x1e, 0x6e, 0x2c, 0xfc, 0xe9, 0x12, - 0x11, 0x2d, 0xdf, 0xf9, 0x6e, 0x75, 0xbf, 0x55, 0xe8, 0x0d, 0x0a, 0x10, 0x11, 0x61, 0xe6, 0x4c, - 0xa7, 0x29, 0xb2, 0xa1, 0x4f, 0x89, 0xcc, 0x99, 0x0c, 0xa0, 0x65, 0xce, 0x64, 0x00, 0xb6, 0xb5, - 0xaf, 0x52, 0x67, 0x77, 0x8f, 0x5b, 0x0b, 0x4d, 0xf1, 0xa5, 0xba, 0x87, 0x10, 0x75, 0x6b, 0xe7, - 0x38, 0xc6, 0xbf, 0x1c, 0x85, 0xb3, 0x26, 0xdd, 0x75, 0x98, 0x98, 0xfc, 0xc0, 0x77, 0x3a, 0xbb, - 0x5a, 0x8c, 0x0a, 0x23, 0xb6, 0x90, 0x44, 0x40, 0x77, 0x06, 0x09, 0x07, 0xe6, 0x2a, 0xe4, 0xd9, - 0xa9, 0xa8, 0xac, 0x25, 0x7c, 0x43, 0x61, 0x67, 0xa7, 0x08, 0x82, 0x2a, 0x8b, 0xc9, 0x6b, 0xe2, - 0xd4, 0x56, 0x52, 0x6e, 0xb0, 0x53, 0xfb, 0xdb, 0x87, 0x25, 0xa8, 0x1f, 0xf8, 0x01, 0x45, 0x8d, - 0x4d, 0x9c, 0xdc, 0xa1, 0x68, 0x3d, 0xd2, 0x47, 0xb4, 0xbe, 0x0f, 0xf3, 0xe5, 0x26, 0xdf, 0xac, - 0xed, 0xd6, 0xa6, 0xe7, 0x74, 0x1a, 0x4e, 0xd7, 0x6e, 0x49, 0x75, 0x11, 0x47, 0xd9, 0x0e, 0xcb, - 0xad, 0x6e, 0x88, 0x60, 0xa6, 0x92, 0xb1, 0x6e, 0x54, 0xd7, 0xeb, 0x18, 0xca, 0x41, 0x3c, 0x8f, - 0x61, 0x37, 0x9a, 0x1d, 0x1f, 0x7b, 0xe1, 0x9b, 0x61, 0x31, 0x0a, 0xf5, 0xf8, 0x3e, 0xbc, 0xb5, - 0x56, 0x8f, 0x7c, 0x35, 0x79, 0x44, 0x70, 0xfe, 0xce, 0x1c, 0xb4, 0x7c, 0xb4, 0xcc, 0xd3, 0xf0, - 0x22, 0xba, 0x7a, 0x7d, 0x95, 0xd1, 0xe5, 0x13, 0x74, 0xbe, 0xbf, 0xa7, 0xd2, 0x71, 0x3c, 0x72, - 0x9d, 0x2d, 0x85, 0xb6, 0x1b, 0x50, 0x5c, 0xe7, 0x13, 0x91, 0x0a, 0xe0, 0x21, 0x94, 0xab, 0x00, - 0x0a, 0x0a, 0x79, 0x17, 0xe6, 0x56, 0x2a, 0x4b, 0xf2, 0x52, 0xb3, 0xea, 0x36, 0x7a, 0xf8, 0x2e, - 0x0c, 0x58, 0x1f, 0xce, 0x21, 0x6d, 0x2c, 0xb1, 0xc5, 0x9d, 0x86, 0x46, 0x2e, 0xc3, 0x78, 0xad, - 0xca, 0xc7, 0x7e, 0x52, 0x4d, 0x7b, 0x23, 0x0c, 0x75, 0x64, 0x21, 0xd9, 0x88, 0x64, 0xd4, 0xc2, - 0xb1, 0xc2, 0xe4, 0xd9, 0x21, 0xe4, 0xd3, 0xb7, 0x61, 0x6a, 0xd9, 0x0d, 0x6a, 0x1d, 0x3f, 0xb0, - 0x3b, 0x0d, 0x5a, 0xab, 0xaa, 0x31, 0x68, 0xb7, 0xdd, 0xc0, 0x72, 0x44, 0x09, 0x6b, 0xb9, 0x8e, - 0x49, 0x3e, 0x8f, 0xa4, 0x77, 0x68, 0x87, 0x7a, 0x51, 0xec, 0xd9, 0x51, 0x3e, 0xb6, 0x8c, 0x74, - 0x37, 0x2c, 0x31, 0x75, 0x44, 0x91, 0x92, 0x87, 0xa7, 0xa8, 0xab, 0xb8, 0x4d, 0xea, 0x3f, 0xbc, - 0xf1, 0x1d, 0x96, 0x92, 0x47, 0xe9, 0x1b, 0x6e, 0x99, 0x37, 0x52, 0xf7, 0xd7, 0x7f, 0x1f, 0x53, - 0xf2, 0x24, 0x70, 0xc9, 0xe7, 0x61, 0x14, 0x7f, 0x0a, 0x61, 0x6b, 0x2e, 0x85, 0x6d, 0x24, 0x68, - 0x35, 0x78, 0x86, 0x79, 0x24, 0x20, 0x35, 0x18, 0x17, 0x72, 0xfe, 0x49, 0x12, 0x4b, 0x08, 0x85, - 0x81, 0xaf, 0x0c, 0x41, 0x6f, 0x34, 0xa1, 0xa0, 0x56, 0xc8, 0xbe, 0x88, 0x55, 0xdb, 0xdf, 0xa3, - 0x4d, 0xf6, 0x4b, 0xe4, 0x84, 0xc2, 0x2f, 0x62, 0x0f, 0xa1, 0x16, 0x6b, 0x87, 0xa9, 0xa0, 0xb0, - 0x2d, 0xbe, 0xe6, 0x3f, 0xf0, 0x45, 0x53, 0x84, 0xe6, 0xef, 0xe0, 0x2d, 0x52, 0xd3, 0x14, 0x45, - 0xc6, 0x77, 0xc1, 0xfc, 0x7a, 0xaf, 0xd5, 0xb2, 0xb7, 0x5b, 0x54, 0xe6, 0x0c, 0x08, 0xec, 0x80, - 0x92, 0x65, 0x18, 0xad, 0x2b, 0x39, 0x6b, 0xe7, 0xc2, 0xa4, 0x0c, 0x11, 0x0e, 0xda, 0x44, 0x66, - 0x30, 0xac, 0x46, 0x2c, 0x5b, 0x2d, 0x27, 0x35, 0x7e, 0x3f, 0x03, 0xf3, 0xf2, 0x39, 0xda, 0xb3, - 0x1b, 0x8f, 0xc3, 0xbc, 0xc5, 0x97, 0xb5, 0xb5, 0x86, 0x0b, 0x36, 0xb6, 0x8c, 0xf8, 0xaa, 0xbb, - 0x2b, 0x1b, 0xa1, 0x9f, 0x9f, 0x69, 0x0d, 0x3e, 0xae, 0x31, 0xe4, 0x5d, 0x98, 0x14, 0x67, 0xa8, - 0x12, 0x0c, 0x0e, 0x23, 0xee, 0x08, 0xed, 0x23, 0x6e, 0x1c, 0xa1, 0xa2, 0xa3, 0x68, 0xa0, 0x77, - 0xe5, 0xe1, 0x8d, 0x4f, 0x43, 0x34, 0xd0, 0xeb, 0x18, 0xb0, 0x74, 0x7f, 0x7b, 0x32, 0x3e, 0xb6, - 0x62, 0xed, 0xde, 0x52, 0xc3, 0x3f, 0x65, 0x22, 0x45, 0x2d, 0x0a, 0xff, 0xa4, 0x2a, 0x6a, 0x21, - 0x6a, 0x38, 0x27, 0xd9, 0x63, 0xe6, 0xe4, 0x7d, 0x39, 0x27, 0xb9, 0xfe, 0x0b, 0x63, 0x6e, 0xc0, - 0x3c, 0xd4, 0xa3, 0x2f, 0x64, 0x64, 0x28, 0x2d, 0xff, 0x05, 0x8c, 0x73, 0xcd, 0x49, 0xe2, 0xbb, - 0xa8, 0xe0, 0xa4, 0x5e, 0x1d, 0x8c, 0x0e, 0xcf, 0xf4, 0x98, 0xad, 0xf9, 0x0b, 0x50, 0x28, 0x07, - 0x81, 0xdd, 0xd8, 0xa3, 0xcd, 0x2a, 0xdb, 0x9e, 0x94, 0x48, 0x35, 0xb6, 0x80, 0xab, 0x6f, 0x38, - 0x2a, 0x2e, 0x8f, 0xbc, 0x68, 0xfb, 0xc2, 0xb6, 0x32, 0x8c, 0xbc, 0xc8, 0x20, 0x7a, 0xe4, 0x45, - 0x06, 0x21, 0xd7, 0x61, 0xbc, 0xd6, 0x79, 0xe2, 0xb0, 0x31, 0xc9, 0x47, 0x49, 0xcc, 0x1d, 0x0e, - 0x52, 0x37, 0x57, 0x81, 0x45, 0xde, 0x56, 0x64, 0xec, 0x89, 0x48, 0x9f, 0xe6, 0x37, 0x30, 0x61, - 0x8c, 0x0b, 0x55, 0x7e, 0x0e, 0x85, 0xee, 0x5b, 0x30, 0x2e, 0x2f, 0xd6, 0x20, 0xd2, 0xa1, 0x05, - 0x65, 0xd2, 0x13, 0x5e, 0x22, 0x63, 0xaa, 0x5b, 0x25, 0xb7, 0xd5, 0xa4, 0x92, 0xea, 0x56, 0xc9, - 0x6d, 0xa5, 0xa5, 0xba, 0x55, 0xb2, 0x5c, 0x85, 0x77, 0x12, 0x85, 0x63, 0xef, 0x24, 0x1e, 0x42, - 0x61, 0xd3, 0xf6, 0x02, 0x87, 0xc9, 0x28, 0x9d, 0xc0, 0x5f, 0x98, 0xd2, 0xae, 0xf1, 0x94, 0xa2, - 0xe5, 0x0b, 0x32, 0x3b, 0x6b, 0x57, 0xc1, 0xd7, 0xd3, 0x88, 0x46, 0xf0, 0x74, 0xcb, 0xca, 0xe9, - 0x4f, 0x62, 0x59, 0x89, 0x83, 0x8a, 0x57, 0x37, 0x33, 0xd1, 0x05, 0x01, 0xca, 0xd0, 0xb1, 0xfb, - 0x9b, 0x10, 0x91, 0x7c, 0x15, 0x0a, 0xec, 0xef, 0x4d, 0xb7, 0xe5, 0x34, 0x1c, 0xea, 0x2f, 0x14, - 0xb1, 0x73, 0x17, 0x52, 0xbf, 0x7e, 0x44, 0x3a, 0xa8, 0xd3, 0x80, 0x7f, 0xc0, 0xc8, 0x38, 0x7e, - 0x27, 0xab, 0x71, 0x23, 0x1f, 0x40, 0x81, 0xad, 0xbe, 0x6d, 0xdb, 0xe7, 0xa2, 0xe9, 0x6c, 0x64, - 0x1b, 0xdb, 0x14, 0xf0, 0x44, 0xf0, 0x53, 0x95, 0x80, 0x1d, 0xf3, 0xe5, 0x2e, 0xdf, 0x20, 0x89, - 0xb2, 0xda, 0xbb, 0x89, 0xcd, 0x51, 0xa2, 0x91, 0x2f, 0x42, 0xa1, 0xdc, 0xed, 0x46, 0x3b, 0xce, - 0x9c, 0x72, 0x2f, 0xd3, 0xed, 0x5a, 0xa9, 0xbb, 0x8e, 0x46, 0x11, 0xdf, 0x98, 0xe7, 0x4f, 0xb4, - 0x31, 0x93, 0x37, 0x43, 0x69, 0xfd, 0x54, 0x74, 0xc9, 0x28, 0xf4, 0x18, 0x4d, 0xf4, 0xe7, 0x82, - 0x7b, 0x05, 0xa6, 0xf8, 0xad, 0x9b, 0x94, 0x66, 0x4e, 0x27, 0xbe, 0x9e, 0x14, 0xa1, 0x46, 0xa7, - 0x21, 0x2b, 0x30, 0xcd, 0xdd, 0x48, 0x5b, 0x22, 0x2a, 0xed, 0xc2, 0x99, 0x28, 0xed, 0x3e, 0xf7, - 0x3e, 0x6d, 0x61, 0xb2, 0x02, 0x5b, 0xe3, 0x12, 0x23, 0x32, 0xfe, 0x34, 0x03, 0x67, 0xfa, 0xcc, - 0x78, 0x18, 0xb3, 0x34, 0x33, 0x38, 0x66, 0x29, 0xdb, 0x39, 0x74, 0x25, 0x1d, 0xfb, 0x2f, 0xa4, - 0x2c, 0x75, 0xbe, 0xa4, 0xbc, 0xe5, 0x02, 0x11, 0xf9, 0x40, 0x44, 0xd5, 0x77, 0x5d, 0xbc, 0x29, - 0xcc, 0x25, 0x0f, 0x21, 0x81, 0xc7, 0x1b, 0xb5, 0x6c, 0x1c, 0x1d, 0x96, 0x2e, 0x88, 0x74, 0x23, - 0xe1, 0xb4, 0x7e, 0xe4, 0x6a, 0x5f, 0x70, 0x0a, 0x6b, 0xe3, 0x30, 0x03, 0x93, 0xca, 0x77, 0x48, - 0x2e, 0x2a, 0x4e, 0xa9, 0x45, 0x9e, 0xb0, 0x46, 0xe1, 0x90, 0xe5, 0x27, 0x11, 0x7e, 0x54, 0xd9, - 0xe3, 0xef, 0x43, 0xef, 0x33, 0x51, 0x48, 0x89, 0xeb, 0xda, 0xd6, 0x2e, 0x2f, 0x4d, 0x2c, 0xc7, - 0xa4, 0xd2, 0xb6, 0x1f, 0x94, 0x1b, 0x81, 0xf3, 0x84, 0x0e, 0x71, 0xe8, 0x44, 0x49, 0xa5, 0x6d, - 0x3f, 0xb0, 0x6c, 0x24, 0x4b, 0x24, 0x95, 0x0e, 0x19, 0x1a, 0x3f, 0x90, 0x01, 0x78, 0x50, 0xab, - 0x60, 0x60, 0xe6, 0x4f, 0x2a, 0x14, 0xa4, 0x07, 0xbb, 0x94, 0xdc, 0x07, 0x88, 0x03, 0xff, 0x53, - 0x06, 0xa6, 0x75, 0x34, 0xf2, 0x3e, 0xcc, 0xd4, 0x1b, 0x9e, 0xdb, 0x6a, 0x6d, 0xdb, 0x8d, 0xc7, - 0x6b, 0x4e, 0x87, 0xf2, 0x30, 0x83, 0xa3, 0xfc, 0x2c, 0xf2, 0xc3, 0x22, 0xab, 0xc5, 0xca, 0xcc, - 0x38, 0x32, 0xf9, 0xc1, 0x0c, 0x4c, 0xd5, 0xf7, 0xdc, 0xfd, 0x30, 0x32, 0xa0, 0x98, 0x90, 0xaf, - 0xb1, 0x6f, 0xdb, 0xdf, 0x73, 0xf7, 0xa3, 0x6c, 0x77, 0x9a, 0x2d, 0xe2, 0x7b, 0xc3, 0x3d, 0x13, - 0x37, 0x5c, 0xd4, 0x64, 0x02, 0xff, 0x9a, 0x56, 0x89, 0xa9, 0xd7, 0x69, 0xfc, 0x45, 0x06, 0x26, - 0x51, 0xe7, 0x69, 0xb5, 0x50, 0xe6, 0xfa, 0x4e, 0x4a, 0x9d, 0x16, 0xf6, 0x6b, 0xc0, 0xc4, 0xbe, - 0x05, 0x33, 0x31, 0x34, 0x62, 0xc0, 0x58, 0x1d, 0x03, 0x11, 0xa8, 0x17, 0x14, 0x3c, 0x34, 0x81, - 0x29, 0x4a, 0x8c, 0x15, 0x85, 0xec, 0xe1, 0x0d, 0x7c, 0x65, 0x5c, 0x02, 0x70, 0x24, 0x48, 0x6a, - 0x36, 0x24, 0xde, 0x92, 0x87, 0x37, 0x4c, 0x05, 0xcb, 0x58, 0x87, 0xb1, 0xba, 0xeb, 0x05, 0xcb, - 0x07, 0x5c, 0x99, 0xa8, 0x52, 0xbf, 0xa1, 0x3e, 0x23, 0x3a, 0x78, 0x75, 0xdf, 0x30, 0x45, 0x11, - 0x29, 0xc1, 0xe8, 0x6d, 0x87, 0xb6, 0x9a, 0xaa, 0xbd, 0xe8, 0x0e, 0x03, 0x98, 0x1c, 0xce, 0x14, - 0xae, 0xd3, 0x51, 0xfe, 0x82, 0xc8, 0x30, 0xf5, 0x93, 0x7e, 0x37, 0x15, 0x6d, 0x7c, 0x5f, 0xd2, - 0x33, 0xa8, 0x6b, 0x35, 0x0d, 0x18, 0xea, 0xff, 0x24, 0x03, 0x8b, 0xfd, 0x49, 0x54, 0x5b, 0xd7, - 0xcc, 0x00, 0x5b, 0xd7, 0x57, 0xe2, 0xcf, 0x5e, 0x88, 0x26, 0x9e, 0xbd, 0xa2, 0xc7, 0xae, 0x2a, - 0x9a, 0x1a, 0x37, 0xa8, 0x4c, 0x5a, 0x70, 0x71, 0x40, 0x9b, 0x11, 0x91, 0x4f, 0x73, 0x80, 0x34, - 0xa6, 0xa0, 0x35, 0x7e, 0x6b, 0x04, 0xce, 0xf6, 0xa5, 0x20, 0xab, 0x4a, 0x2a, 0x94, 0xe9, 0x30, - 0x09, 0x43, 0x5f, 0xfc, 0x6b, 0xf8, 0x2f, 0x5a, 0x93, 0xc5, 0x9d, 0x9f, 0x36, 0xc2, 0x14, 0x18, - 0x59, 0xe4, 0xf5, 0xfa, 0xb1, 0xbc, 0x38, 0x3a, 0x32, 0x83, 0x64, 0x36, 0x0c, 0x74, 0x93, 0xa3, - 0x81, 0xed, 0xb4, 0x7c, 0xf5, 0xb3, 0x6b, 0x72, 0x90, 0x29, 0xcb, 0x22, 0x03, 0xe4, 0x91, 0x74, - 0x03, 0x64, 0xe3, 0x5f, 0x66, 0x60, 0x22, 0x6c, 0x36, 0x59, 0x84, 0xd3, 0x5b, 0x66, 0xb9, 0xb2, - 0x62, 0x6d, 0x7d, 0xb8, 0xb9, 0x62, 0x3d, 0x58, 0xaf, 0x6f, 0xae, 0x54, 0x6a, 0xb7, 0x6b, 0x2b, - 0xd5, 0xe2, 0x0b, 0x64, 0x16, 0xa6, 0x1e, 0xac, 0xdf, 0x5b, 0xdf, 0x78, 0xb4, 0x6e, 0xad, 0x98, - 0xe6, 0x86, 0x59, 0xcc, 0x90, 0x29, 0x98, 0x30, 0x97, 0xcb, 0x15, 0x6b, 0x7d, 0xa3, 0xba, 0x52, - 0xcc, 0x92, 0x22, 0x14, 0x2a, 0x1b, 0xeb, 0xeb, 0x2b, 0x95, 0xad, 0xda, 0xc3, 0xda, 0xd6, 0x87, - 0xc5, 0x1c, 0x21, 0x30, 0x8d, 0x08, 0x9b, 0x66, 0x6d, 0xbd, 0x52, 0xdb, 0x2c, 0xaf, 0x15, 0x47, - 0x18, 0x8c, 0xe1, 0x2b, 0xb0, 0xd1, 0x90, 0xd1, 0xbd, 0x07, 0xcb, 0x2b, 0xc5, 0x31, 0x86, 0xc2, - 0xfe, 0x52, 0x50, 0xc6, 0x59, 0xf5, 0x88, 0x52, 0x2d, 0x6f, 0x95, 0x97, 0xcb, 0xf5, 0x95, 0x62, - 0x9e, 0x9c, 0x81, 0x39, 0x0d, 0x64, 0xad, 0x6d, 0xdc, 0xa9, 0xad, 0x17, 0x27, 0xc8, 0x3c, 0x14, - 0x43, 0x58, 0x75, 0xd9, 0x7a, 0x50, 0x5f, 0x31, 0x8b, 0x10, 0x87, 0xae, 0x97, 0xef, 0xaf, 0x14, - 0x27, 0x8d, 0xf7, 0xb8, 0x5b, 0x1a, 0x1f, 0x6a, 0x72, 0x1a, 0x48, 0x7d, 0xab, 0xbc, 0xf5, 0xa0, - 0x1e, 0xeb, 0xfc, 0x24, 0x8c, 0xd7, 0x1f, 0x54, 0x2a, 0x2b, 0xf5, 0x7a, 0x31, 0x43, 0x00, 0xc6, - 0x6e, 0x97, 0x6b, 0x6b, 0x2b, 0xd5, 0x62, 0xd6, 0xf8, 0xc9, 0x0c, 0xcc, 0x4a, 0x09, 0x50, 0xbe, - 0x61, 0x7c, 0xc2, 0x6f, 0xf1, 0x7d, 0x4d, 0xb1, 0x95, 0x3e, 0x43, 0xb1, 0x4a, 0x06, 0x7c, 0x86, - 0xbf, 0x90, 0x81, 0x53, 0xa9, 0xd8, 0xe4, 0x43, 0x28, 0xca, 0x16, 0xdc, 0xb7, 0x83, 0xc6, 0x5e, - 0xb4, 0x8f, 0x5d, 0x88, 0xd5, 0x12, 0x43, 0xe3, 0xd7, 0x9a, 0x51, 0x72, 0xd6, 0x04, 0x9b, 0xe1, - 0x43, 0x87, 0x1b, 0x3f, 0x9f, 0x81, 0x33, 0x7d, 0xaa, 0x21, 0x15, 0x18, 0x0b, 0x93, 0x48, 0x0c, - 0x30, 0xa8, 0x9a, 0xff, 0xd6, 0x61, 0x49, 0x20, 0x62, 0x36, 0x4b, 0xfc, 0xcb, 0x1c, 0x0b, 0xb3, - 0x42, 0x60, 0x6a, 0x06, 0x3e, 0x7c, 0x67, 0x63, 0x23, 0x2f, 0x6a, 0x2a, 0x3f, 0xaa, 0x2f, 0x4f, - 0x8a, 0xb1, 0xcb, 0xd9, 0xfb, 0x3e, 0xe6, 0x66, 0x30, 0x7e, 0x26, 0xc3, 0x84, 0xbb, 0x38, 0x22, - 0x93, 0x79, 0xcb, 0xbe, 0xdf, 0x6b, 0x53, 0xd3, 0x6d, 0xd1, 0xb2, 0xb9, 0x2e, 0x8e, 0x0d, 0x94, - 0x56, 0x6d, 0x2c, 0x40, 0xb5, 0xc2, 0xb2, 0xbd, 0x8e, 0xf6, 0x78, 0xaa, 0xd2, 0x90, 0xb7, 0x01, - 0x56, 0x9e, 0x06, 0xd4, 0xeb, 0xd8, 0xad, 0x30, 0x64, 0x08, 0x0f, 0x99, 0x23, 0xa0, 0xba, 0xbc, - 0xad, 0x20, 0x1b, 0x7f, 0x23, 0x03, 0x05, 0xa1, 0x34, 0x95, 0x5b, 0xd4, 0x0b, 0x3e, 0xd9, 0xf2, - 0x7a, 0x5b, 0x5b, 0x5e, 0xa1, 0xff, 0x80, 0xc2, 0x9f, 0x15, 0xa7, 0xae, 0xac, 0x7f, 0x92, 0x81, - 0x62, 0x1c, 0x91, 0xbc, 0x0f, 0xf9, 0x3a, 0x7d, 0x42, 0x3d, 0x27, 0x38, 0x10, 0x1b, 0xa5, 0x4c, - 0xb7, 0xc5, 0x71, 0x44, 0x19, 0x5f, 0x0f, 0xbe, 0xf8, 0x65, 0x86, 0x34, 0xc3, 0xee, 0xf7, 0xca, - 0xb5, 0x47, 0xee, 0x59, 0x5d, 0x7b, 0x18, 0xff, 0x5b, 0x16, 0xce, 0xdc, 0xa1, 0x81, 0xda, 0xa7, - 0xf0, 0xb5, 0xfb, 0x33, 0xc3, 0xf5, 0x4b, 0xe9, 0xc9, 0x02, 0x8c, 0x63, 0x91, 0x9c, 0x5f, 0x53, - 0xfe, 0x24, 0xcb, 0xe1, 0xba, 0xce, 0x69, 0xf9, 0x7c, 0xfa, 0xd4, 0x7d, 0x4d, 0xc9, 0xf0, 0x11, - 0x2e, 0xeb, 0xcb, 0x30, 0x8d, 0x21, 0xac, 0x7b, 0xec, 0x73, 0xa0, 0x4d, 0x71, 0xfd, 0x93, 0x37, - 0x63, 0x50, 0xf2, 0x1a, 0x14, 0x19, 0xa4, 0xdc, 0x78, 0xdc, 0x71, 0xf7, 0x5b, 0xb4, 0xb9, 0x4b, - 0x9b, 0x78, 0xac, 0xe7, 0xcd, 0x04, 0x5c, 0xf2, 0x7c, 0xd0, 0xe1, 0xaa, 0x1b, 0x6d, 0xe2, 0x1d, - 0x8d, 0xe0, 0x19, 0x41, 0x17, 0xdf, 0x86, 0xc9, 0x8f, 0x99, 0xad, 0xc7, 0xf8, 0x5f, 0x33, 0x30, - 0x8f, 0x9d, 0x53, 0x2a, 0x96, 0x99, 0x14, 0xe5, 0x68, 0x29, 0x09, 0x2c, 0x6c, 0x06, 0xd2, 0x3f, - 0x85, 0x70, 0x14, 0xa3, 0x3b, 0xa1, 0xec, 0x10, 0x77, 0x42, 0xf5, 0x93, 0x64, 0x8d, 0x1e, 0xf2, - 0x4a, 0xeb, 0xee, 0x48, 0x3e, 0x57, 0x1c, 0x89, 0xa6, 0xdc, 0xf8, 0xc1, 0x2c, 0x8c, 0x9b, 0x14, - 0xd3, 0xe9, 0x92, 0xcb, 0x30, 0xbe, 0xee, 0x06, 0xd4, 0xbf, 0xaf, 0xe5, 0x4e, 0xee, 0x30, 0x90, - 0xd5, 0x6e, 0x9a, 0xb2, 0x90, 0x2d, 0xf8, 0x4d, 0xcf, 0x6d, 0xf6, 0x1a, 0x81, 0xba, 0xe0, 0xbb, - 0x1c, 0x64, 0xca, 0x32, 0xf2, 0x06, 0x4c, 0x08, 0xce, 0xe1, 0x1b, 0x23, 0xda, 0xc6, 0x7a, 0x34, - 0x4c, 0xc7, 0x1c, 0x21, 0xa0, 0x4c, 0xcb, 0x05, 0x8c, 0x11, 0x45, 0xa6, 0x4d, 0xc8, 0x0c, 0x52, - 0x54, 0x1f, 0x1d, 0x20, 0xaa, 0x7f, 0x06, 0xc6, 0xca, 0xbe, 0x4f, 0x03, 0xe9, 0x54, 0x5f, 0x08, - 0xe3, 0x51, 0xf9, 0x34, 0xe0, 0x8c, 0x6d, 0x2c, 0x37, 0x05, 0x9e, 0xf1, 0xcf, 0xb3, 0x30, 0x8a, - 0x7f, 0xe2, 0xbb, 0xaa, 0xd7, 0xd8, 0xd3, 0xde, 0x55, 0xbd, 0xc6, 0x9e, 0x89, 0x50, 0x72, 0x03, - 0x6f, 0x2a, 0x64, 0xae, 0x15, 0xd1, 0x7b, 0xbc, 0x82, 0x6f, 0x46, 0x60, 0x53, 0xc5, 0x09, 0x1f, - 0x9c, 0x73, 0xa9, 0xa1, 0x34, 0x4e, 0x43, 0x76, 0xa3, 0x2e, 0x7a, 0x8c, 0x01, 0x9a, 0x5c, 0xdf, - 0xcc, 0x6e, 0xd4, 0x71, 0x34, 0x56, 0xcb, 0x4b, 0x6f, 0xdd, 0x52, 0xd3, 0x7c, 0xfb, 0x7b, 0xf6, - 0xd2, 0x5b, 0xb7, 0x4c, 0x51, 0xc2, 0xc6, 0x17, 0xdb, 0x8c, 0x0f, 0xaf, 0xdc, 0x05, 0x1c, 0xc7, - 0x17, 0xfb, 0x86, 0x8f, 0xac, 0x66, 0x84, 0x40, 0x96, 0x60, 0x52, 0x84, 0x1e, 0x40, 0x7c, 0x25, - 0x34, 0x80, 0x08, 0x4d, 0xc0, 0x29, 0x54, 0x24, 0xfe, 0x04, 0x27, 0x26, 0x48, 0x66, 0x84, 0x14, - 0x4f, 0x70, 0x72, 0x0a, 0x7d, 0x53, 0x41, 0xc1, 0x54, 0xf6, 0xf8, 0x86, 0x17, 0xb9, 0x76, 0x4f, - 0x2b, 0x3e, 0xec, 0x18, 0x92, 0x3c, 0x44, 0x30, 0x7e, 0x25, 0x0b, 0xf9, 0xcd, 0x56, 0x6f, 0xd7, - 0xe9, 0x3c, 0xbc, 0x41, 0x08, 0xa0, 0x1a, 0x27, 0x63, 0xd6, 0xb3, 0xbf, 0xc9, 0x59, 0xc8, 0x4b, - 0xcd, 0x4d, 0x6e, 0x48, 0xbe, 0xd0, 0xda, 0x16, 0x40, 0xce, 0x3b, 0x1f, 0x59, 0x53, 0xfe, 0x24, - 0x37, 0x20, 0xd4, 0xbf, 0xfa, 0x29, 0x6a, 0x23, 0xec, 0x63, 0x31, 0x43, 0x34, 0xf2, 0x26, 0xe0, - 0x21, 0x21, 0x94, 0x07, 0x79, 0xa1, 0xcd, 0x9b, 0x26, 0xe4, 0x14, 0x4e, 0x82, 0x68, 0xe4, 0x26, - 0x88, 0x85, 0x29, 0x32, 0x0f, 0x9f, 0xd2, 0x09, 0x78, 0x2e, 0x37, 0x49, 0x22, 0x50, 0xc9, 0xbb, - 0x30, 0xd9, 0xf0, 0x28, 0xbe, 0x3a, 0xda, 0xad, 0x28, 0xa1, 0xb0, 0x4a, 0x59, 0x89, 0xca, 0x1f, - 0xde, 0x30, 0x55, 0x74, 0xe3, 0xbf, 0x1e, 0x83, 0x82, 0xda, 0x1e, 0x62, 0xc2, 0x9c, 0xdf, 0x62, - 0xba, 0xbb, 0xb0, 0x7d, 0xea, 0x62, 0xa1, 0x38, 0x4e, 0x2f, 0xea, 0x0d, 0x62, 0x78, 0xdc, 0x10, - 0x4a, 0xc6, 0x4c, 0x58, 0x7d, 0xc1, 0x9c, 0xf5, 0x23, 0x30, 0xc7, 0x23, 0x65, 0xc8, 0xbb, 0x5d, - 0x7f, 0x97, 0x76, 0x1c, 0xf9, 0xde, 0x72, 0x49, 0x63, 0xb4, 0x21, 0x0a, 0x13, 0xbc, 0x42, 0x32, - 0xf2, 0x16, 0x8c, 0xb9, 0x5d, 0xda, 0xb1, 0x1d, 0x71, 0xc6, 0xbd, 0x18, 0x63, 0x40, 0x3b, 0xe5, - 0x9a, 0x42, 0x28, 0x90, 0xc9, 0x75, 0x18, 0x71, 0x1f, 0x87, 0xf3, 0x75, 0x56, 0x27, 0x7a, 0x1c, - 0xd8, 0x0a, 0x09, 0x22, 0x32, 0x82, 0x8f, 0xec, 0xf6, 0x8e, 0x98, 0x31, 0x9d, 0xe0, 0xae, 0xdd, - 0xde, 0x51, 0x09, 0x18, 0x22, 0xf9, 0x00, 0xa0, 0x6b, 0xef, 0x52, 0xcf, 0x6a, 0xf6, 0x82, 0x03, - 0x31, 0x6f, 0x17, 0x34, 0xb2, 0x4d, 0x56, 0x5c, 0xed, 0x05, 0x07, 0x0a, 0xed, 0x44, 0x57, 0x02, - 0x49, 0x19, 0xa0, 0x6d, 0x07, 0x01, 0xf5, 0xda, 0xae, 0x30, 0x3e, 0x9b, 0x0c, 0x13, 0xf6, 0x72, - 0x06, 0xf7, 0xc3, 0x62, 0x85, 0x83, 0x42, 0x84, 0x8d, 0x76, 0x3c, 0x5b, 0xe4, 0x7f, 0x8e, 0x35, - 0xda, 0xf1, 0xb4, 0x5e, 0x32, 0x44, 0xf2, 0x79, 0x18, 0x6f, 0x3a, 0x7e, 0xc3, 0xf5, 0x9a, 0x22, - 0x98, 0xc6, 0x39, 0x8d, 0xa6, 0xca, 0xcb, 0x14, 0x32, 0x89, 0xce, 0x5a, 0x2b, 0xa2, 0x2b, 0xae, - 0xbb, 0xfb, 0x78, 0xcd, 0x1f, 0x6f, 0x6d, 0x3d, 0x2c, 0x56, 0x5b, 0x1b, 0x11, 0xb1, 0xa9, 0xdc, - 0x75, 0x82, 0x96, 0xbd, 0x2d, 0xde, 0xb9, 0xf5, 0xa9, 0xbc, 0x83, 0x45, 0xea, 0x54, 0x72, 0x64, - 0xf2, 0x36, 0xe4, 0x69, 0x27, 0xf0, 0x6c, 0xcb, 0x69, 0x0a, 0xa7, 0x3d, 0xbd, 0xd1, 0xec, 0x00, - 0xb6, 0x6b, 0x55, 0xb5, 0xd1, 0x88, 0x5f, 0x6b, 0xb2, 0xf1, 0xf1, 0x1b, 0x4e, 0x5b, 0xf8, 0xda, - 0xe9, 0xe3, 0x53, 0xaf, 0xd4, 0xee, 0xab, 0xe3, 0xc3, 0x10, 0xc9, 0x05, 0x80, 0xe8, 0x89, 0x9b, - 0x3f, 0x48, 0x98, 0x0a, 0xe4, 0x0b, 0x23, 0xff, 0xc7, 0x2f, 0x95, 0x32, 0xcb, 0x00, 0x79, 0x19, - 0x4d, 0xc4, 0x58, 0x83, 0xb3, 0x7d, 0x3f, 0x0a, 0x72, 0x15, 0x8a, 0x3b, 0xb6, 0xb8, 0x12, 0x6b, - 0xec, 0xd9, 0x9d, 0x0e, 0x6d, 0x89, 0xed, 0x68, 0x46, 0xc2, 0x2b, 0x1c, 0xcc, 0x39, 0x1b, 0x1f, - 0xc0, 0x7c, 0xda, 0x68, 0x90, 0x97, 0xa0, 0xa0, 0x06, 0x4e, 0x11, 0x4c, 0x26, 0xed, 0xae, 0x23, - 0x43, 0xa7, 0x08, 0x06, 0xbf, 0x99, 0x81, 0x73, 0x83, 0xbe, 0x2d, 0xb2, 0x08, 0xf9, 0xae, 0xe7, - 0xb8, 0x28, 0xc3, 0xf1, 0x1d, 0x30, 0xfc, 0x4d, 0xce, 0x03, 0x70, 0x61, 0x23, 0xb0, 0x77, 0x85, - 0x31, 0xbe, 0x39, 0x81, 0x90, 0x2d, 0x7b, 0xd7, 0x27, 0xaf, 0xc3, 0x6c, 0x93, 0xee, 0xd8, 0xbd, - 0x56, 0x60, 0xf9, 0x8d, 0x3d, 0xda, 0x44, 0xff, 0x17, 0x34, 0xb2, 0x32, 0x8b, 0xa2, 0xa0, 0x2e, - 0xe1, 0x89, 0x16, 0x8f, 0xf6, 0x69, 0xf1, 0xdd, 0x91, 0x7c, 0xa6, 0x98, 0x35, 0xd1, 0xd6, 0xc8, - 0xf8, 0xbe, 0x2c, 0x2c, 0xf4, 0x5b, 0x4c, 0xe4, 0xbd, 0xb4, 0x31, 0xe0, 0xb7, 0xfa, 0x2a, 0x5c, - 0xbd, 0xd5, 0x57, 0x6a, 0x23, 0x4b, 0x10, 0x7a, 0xaf, 0x1c, 0xe7, 0x89, 0x2e, 0x61, 0x8c, 0xa6, - 0x6b, 0xfb, 0xfe, 0x3e, 0xfb, 0x5e, 0x72, 0x4a, 0x18, 0x4b, 0x01, 0x53, 0x69, 0x24, 0x8c, 0x7c, - 0x0e, 0xa0, 0xd1, 0x72, 0x7d, 0x8a, 0x8f, 0xe7, 0xe2, 0x20, 0xe6, 0x26, 0xbc, 0x21, 0x54, 0x7d, - 0x2d, 0x45, 0x68, 0xc5, 0x6d, 0x52, 0x31, 0x81, 0x36, 0x9c, 0xe9, 0xb3, 0x7b, 0xb0, 0xe9, 0x89, - 0xd2, 0x1c, 0xcb, 0xa4, 0x29, 0xbd, 0x30, 0xd9, 0x71, 0x7c, 0xc4, 0xb3, 0xfd, 0xd6, 0xc8, 0x01, - 0x90, 0xe4, 0x16, 0xc1, 0xb8, 0x0b, 0x43, 0xd4, 0x9e, 0x17, 0x72, 0xe7, 0x90, 0x07, 0x5e, 0x8b, - 0x94, 0x60, 0x52, 0x26, 0x45, 0x63, 0x82, 0x2e, 0x67, 0x0e, 0x02, 0x74, 0x8f, 0xe2, 0xe2, 0xc1, - 0x68, 0xab, 0xe8, 0xa3, 0x24, 0x8e, 0xd0, 0x09, 0x84, 0x6c, 0x1d, 0x74, 0x65, 0xef, 0xce, 0xc9, - 0xf5, 0xad, 0x6f, 0xdc, 0xa2, 0xf4, 0x67, 0x33, 0x72, 0xfa, 0x93, 0x3b, 0xdf, 0x71, 0xed, 0x23, - 0x80, 0x1e, 0x25, 0xa2, 0x61, 0xf8, 0x37, 0x3b, 0xd2, 0xe5, 0x57, 0x27, 0x8e, 0x74, 0xf1, 0x93, - 0x5c, 0x86, 0x19, 0x8f, 0xdb, 0x1c, 0x06, 0xae, 0x18, 0x4f, 0x9c, 0x29, 0x73, 0x8a, 0x83, 0xb7, - 0x5c, 0x1c, 0x53, 0xd1, 0xae, 0xbb, 0xe1, 0x80, 0x29, 0x07, 0x01, 0xb9, 0x06, 0x13, 0xec, 0x20, - 0xc0, 0xa8, 0x24, 0x31, 0x53, 0x76, 0xc4, 0xc3, 0x63, 0xd5, 0xcc, 0x7f, 0x24, 0xfe, 0x16, 0xbc, - 0xfe, 0xdb, 0x8c, 0x64, 0xa6, 0x1e, 0x43, 0xe4, 0x0c, 0x8c, 0xbb, 0xde, 0xae, 0xd2, 0xb5, 0x31, - 0xd7, 0xdb, 0x65, 0xfd, 0xba, 0x02, 0x45, 0xee, 0x59, 0xc1, 0x5d, 0xd6, 0xfd, 0x83, 0x0e, 0xd7, - 0x53, 0xf3, 0xe6, 0x34, 0x87, 0x63, 0xe6, 0xe7, 0x83, 0x4e, 0x83, 0x61, 0xfa, 0xbe, 0x6b, 0xa9, - 0xc1, 0x88, 0x44, 0xb7, 0xa7, 0x7d, 0xdf, 0x8d, 0xa2, 0x12, 0x35, 0xc9, 0x32, 0x4c, 0x31, 0x3e, - 0x61, 0x48, 0x24, 0x71, 0x4a, 0x9e, 0x4f, 0x9e, 0x92, 0x07, 0x9d, 0x86, 0x6c, 0xa2, 0x59, 0xf0, - 0x95, 0x5f, 0xa2, 0x37, 0xbf, 0x96, 0x85, 0xd3, 0xe9, 0xe8, 0x38, 0x5f, 0xac, 0x12, 0x74, 0x30, - 0xe2, 0xd7, 0x9b, 0xe6, 0x04, 0x83, 0xf0, 0x18, 0x0a, 0x69, 0xad, 0xcd, 0xa6, 0xb6, 0xf6, 0x35, - 0x98, 0x45, 0x46, 0x42, 0x2e, 0x69, 0x39, 0x7e, 0x20, 0x42, 0x03, 0x98, 0x33, 0xac, 0x80, 0x6f, - 0x70, 0x6b, 0x0c, 0x4c, 0x5e, 0x81, 0x69, 0xb9, 0x45, 0xb9, 0xfb, 0x1d, 0x56, 0x31, 0xdf, 0x9f, - 0xa6, 0x04, 0x74, 0x03, 0x81, 0xe4, 0x14, 0x8c, 0xd9, 0xdd, 0x2e, 0xab, 0x92, 0x6f, 0x4b, 0xa3, - 0x76, 0xb7, 0x5b, 0x6b, 0x92, 0x4b, 0x30, 0x85, 0xee, 0x54, 0xd6, 0x0e, 0xda, 0x94, 0x08, 0x03, - 0x36, 0xb3, 0x80, 0x40, 0x6e, 0x67, 0xe2, 0xb3, 0x0f, 0x81, 0xd1, 0x4a, 0x94, 0x71, 0x44, 0x01, - 0xbb, 0x1b, 0x22, 0x9c, 0x85, 0xbc, 0x7c, 0xdd, 0xe4, 0x56, 0xe1, 0xe6, 0xb8, 0xcd, 0x5f, 0x36, - 0xc5, 0xa0, 0x7d, 0x1e, 0x66, 0xc4, 0x41, 0x2b, 0x36, 0x7f, 0x64, 0x2a, 0x96, 0x26, 0x93, 0x80, - 0x45, 0x1e, 0x09, 0x10, 0xa0, 0x5a, 0x53, 0x0e, 0xf7, 0x1f, 0x65, 0xe0, 0x54, 0xea, 0x49, 0x4d, - 0xbe, 0x01, 0xdc, 0xf1, 0x24, 0x70, 0x2d, 0x8f, 0x36, 0x9c, 0xae, 0x83, 0xae, 0xf9, 0xfc, 0x26, - 0x6b, 0x69, 0xd0, 0x19, 0x8f, 0x4e, 0x2c, 0x5b, 0xae, 0x19, 0x12, 0x71, 0x15, 0xbb, 0xe8, 0xc5, - 0xc0, 0x8b, 0x5f, 0x81, 0x53, 0xa9, 0xa8, 0x29, 0xaa, 0xef, 0x1b, 0x7a, 0xbe, 0x4d, 0xf9, 0x36, - 0x11, 0xeb, 0xb4, 0xa2, 0x12, 0x8b, 0xee, 0xfd, 0x4e, 0xd8, 0xbd, 0xd8, 0x99, 0x4e, 0x56, 0xe2, - 0x2b, 0x36, 0x4d, 0x2c, 0x95, 0x44, 0x7d, 0x17, 0x2d, 0xf9, 0x0a, 0x9c, 0x12, 0xab, 0x68, 0xd7, - 0xb3, 0xbb, 0x7b, 0x11, 0x3b, 0xde, 0xd0, 0x57, 0xd3, 0xd8, 0xf1, 0xe5, 0x75, 0x87, 0xe1, 0x87, - 0x5c, 0xe7, 0xec, 0x24, 0x50, 0xf4, 0xc1, 0x93, 0xf2, 0x40, 0x4a, 0x6b, 0x52, 0x96, 0x67, 0x26, - 0x6d, 0x79, 0x0e, 0xfd, 0x6d, 0x88, 0x3a, 0xbf, 0x3f, 0x03, 0x17, 0x8f, 0x6b, 0x33, 0x79, 0x04, - 0xa7, 0xf1, 0xf5, 0xdc, 0x77, 0xc3, 0x6e, 0x5b, 0x0d, 0xbb, 0xb1, 0x47, 0xc5, 0x2a, 0x31, 0x52, - 0x3b, 0xdf, 0xed, 0xd6, 0xeb, 0x1b, 0x4a, 0xbf, 0xbb, 0xdd, 0xba, 0xef, 0xca, 0xdf, 0x15, 0x46, - 0x2e, 0xda, 0xd0, 0x84, 0x17, 0x07, 0x50, 0x2a, 0x5f, 0x5c, 0x46, 0xfd, 0xe2, 0xae, 0x40, 0x71, - 0x87, 0x36, 0x99, 0x74, 0x45, 0x9b, 0xd8, 0xb4, 0x27, 0x4b, 0x3c, 0x69, 0xad, 0x39, 0x1d, 0xc2, - 0xeb, 0xbe, 0xfb, 0x70, 0x49, 0xd4, 0xd2, 0x96, 0x9b, 0xa7, 0x2a, 0xbd, 0x91, 0x6b, 0x30, 0x17, - 0x0b, 0x33, 0x10, 0xf9, 0xad, 0x9a, 0xb3, 0xac, 0x48, 0x0f, 0x4a, 0xf3, 0x12, 0x14, 0xe4, 0x34, - 0x78, 0xa1, 0xf7, 0x8b, 0x39, 0x29, 0x60, 0x6c, 0x95, 0x8b, 0xea, 0xfe, 0x7e, 0x56, 0x4a, 0x53, - 0xcb, 0xae, 0x1b, 0xf8, 0x81, 0x67, 0x77, 0x35, 0x95, 0x8a, 0xb4, 0xe1, 0xac, 0x6b, 0xf7, 0x82, - 0xbd, 0x25, 0x8b, 0xfd, 0xeb, 0x7a, 0xd2, 0x15, 0xb5, 0x21, 0xed, 0xe9, 0x26, 0x97, 0xae, 0xeb, - 0xbb, 0x6a, 0x99, 0x61, 0x97, 0x55, 0x64, 0x76, 0xf8, 0x2b, 0x5c, 0x57, 0x5f, 0x30, 0xcf, 0x70, - 0x9e, 0x09, 0x2c, 0xb2, 0x0a, 0x85, 0x6d, 0x6a, 0x7b, 0xd4, 0xe3, 0x36, 0xa4, 0xa9, 0x3a, 0xd5, - 0x32, 0x22, 0xa0, 0x69, 0xa9, 0xce, 0x75, 0x72, 0x3b, 0x2a, 0x21, 0xef, 0xc3, 0x84, 0xd3, 0x14, - 0x51, 0x0f, 0x85, 0x66, 0xa5, 0x4b, 0xf3, 0xb5, 0x26, 0x0f, 0x82, 0x18, 0xf1, 0x60, 0x6a, 0x99, - 0x23, 0xa0, 0xcb, 0x53, 0x9a, 0xf2, 0x69, 0x2c, 0xcb, 0x83, 0x3b, 0x49, 0x46, 0xa6, 0x21, 0x1b, - 0x4e, 0x7b, 0xd6, 0x69, 0x92, 0xd3, 0x30, 0xe6, 0x2b, 0x61, 0x18, 0x4d, 0xf1, 0xcb, 0xf8, 0x5e, - 0xb8, 0x32, 0xec, 0x18, 0x91, 0x37, 0x81, 0xf4, 0x19, 0xf0, 0x09, 0x73, 0xd6, 0x4e, 0x8c, 0xdb, - 0x4b, 0xa0, 0x46, 0x91, 0x73, 0xe4, 0x84, 0x4b, 0xd8, 0x03, 0xcf, 0x31, 0x7e, 0x20, 0x07, 0xd3, - 0xba, 0xba, 0x4d, 0x5e, 0x87, 0x91, 0x90, 0xed, 0x74, 0x78, 0x2d, 0xac, 0x22, 0x31, 0xe6, 0x26, - 0x22, 0xb1, 0xb3, 0x03, 0x5f, 0x91, 0xac, 0xb6, 0x7a, 0x73, 0x6b, 0x16, 0x10, 0x28, 0x6f, 0x6c, - 0xef, 0x02, 0xcf, 0x91, 0x8e, 0x7b, 0x59, 0xe0, 0xb4, 0xe9, 0x10, 0x17, 0xb7, 0x79, 0xa6, 0xf4, - 0xe3, 0x95, 0x5b, 0x81, 0xd1, 0xb2, 0xfd, 0x84, 0x15, 0x2a, 0xda, 0xd4, 0x48, 0x7f, 0x6d, 0x4a, - 0x74, 0xa5, 0x8f, 0x36, 0x35, 0x3a, 0x40, 0x9b, 0x8a, 0x28, 0x55, 0x6d, 0x0a, 0x75, 0xea, 0xf1, - 0x7e, 0x3a, 0x75, 0x44, 0xc3, 0x75, 0xea, 0x97, 0x45, 0x77, 0x3d, 0x7b, 0xdf, 0xc2, 0x71, 0xe0, - 0xf6, 0x6e, 0xbc, 0x23, 0xa6, 0xbd, 0x8f, 0xef, 0x6d, 0xcb, 0x13, 0x20, 0x1f, 0xe9, 0x8c, 0x9f, - 0xce, 0xc4, 0xf4, 0x1f, 0x39, 0x15, 0xaf, 0xc0, 0xb4, 0xd3, 0x66, 0x82, 0x19, 0x6d, 0x2a, 0x02, - 0xc5, 0x94, 0x39, 0x25, 0xa1, 0x5c, 0xa8, 0x78, 0x15, 0x66, 0x42, 0x34, 0xee, 0x18, 0xcd, 0x8d, - 0xf7, 0xcd, 0x90, 0x5a, 0x38, 0x46, 0xbf, 0x0e, 0xb3, 0x21, 0xa2, 0x90, 0x61, 0xb9, 0x4c, 0x31, - 0x65, 0x16, 0x65, 0x81, 0xc8, 0xf6, 0xeb, 0x1b, 0xbb, 0xf1, 0x53, 0xe9, 0x53, 0x6a, 0x95, 0xf1, - 0x3b, 0x39, 0x4d, 0x36, 0x94, 0xd5, 0x2c, 0xc3, 0x24, 0xdb, 0x1a, 0xc5, 0x20, 0x89, 0x6d, 0xe5, - 0xa5, 0x3e, 0xc3, 0x2f, 0x9e, 0x39, 0xeb, 0xf5, 0x0d, 0x13, 0x7c, 0xdf, 0x95, 0xaf, 0x9e, 0x16, - 0xdf, 0xfd, 0xb9, 0x78, 0x83, 0xcb, 0x4f, 0xb2, 0xe3, 0x7b, 0xc8, 0x6b, 0x83, 0xd9, 0x95, 0xbb, - 0x5d, 0x6c, 0x23, 0x5b, 0x7d, 0x78, 0x0a, 0x84, 0xbf, 0x64, 0x05, 0x0f, 0x00, 0x55, 0x29, 0x5f, - 0x67, 0x9e, 0x4b, 0x39, 0x57, 0x13, 0xcc, 0x71, 0x94, 0x90, 0x73, 0xb1, 0x27, 0xff, 0x94, 0x6c, - 0x57, 0xa0, 0xc0, 0x14, 0xf3, 0x90, 0xe1, 0xc8, 0xbf, 0x62, 0xef, 0x6a, 0x9e, 0x1b, 0x39, 0xae, - 0xfb, 0x0e, 0x00, 0x92, 0xe0, 0x03, 0x3f, 0x86, 0x2d, 0x6a, 0x97, 0xe2, 0xee, 0x72, 0xa5, 0xd1, - 0x6a, 0xad, 0x85, 0x2c, 0xc9, 0xab, 0x8d, 0x2c, 0xad, 0x12, 0x59, 0x1e, 0x02, 0x03, 0x62, 0x96, - 0xf8, 0xd2, 0xcc, 0x80, 0xf4, 0x4a, 0xb6, 0x27, 0x58, 0x62, 0x48, 0x22, 0x06, 0x07, 0x30, 0x30, - 0x90, 0xbc, 0xba, 0x24, 0xb9, 0xd8, 0x55, 0x49, 0x9c, 0x0f, 0x57, 0x2a, 0x71, 0xa5, 0x52, 0x95, - 0x43, 0x74, 0xc8, 0x21, 0xc7, 0xdc, 0xf2, 0x0f, 0xb8, 0xca, 0xe5, 0x2a, 0x9f, 0x93, 0x2a, 0x55, - 0xa2, 0xaa, 0xe4, 0xe0, 0xe4, 0x96, 0x8a, 0x0f, 0x3e, 0xa5, 0xfa, 0x75, 0xf7, 0x4c, 0xcf, 0x0c, - 0x80, 0x25, 0xb5, 0x72, 0x12, 0x57, 0xf9, 0x44, 0xce, 0xeb, 0xd7, 0x8d, 0xfe, 0xee, 0xf7, 0xba, - 0xdf, 0xfb, 0xbd, 0x98, 0x17, 0xd3, 0xac, 0xc6, 0x97, 0xcc, 0xba, 0x55, 0xa0, 0xf9, 0x44, 0x31, - 0xa7, 0xf0, 0x8c, 0x2c, 0x3e, 0xc6, 0x2b, 0xb9, 0x20, 0x70, 0xde, 0xe6, 0xf6, 0x40, 0x24, 0x65, - 0x62, 0x55, 0x2f, 0x77, 0xe2, 0x04, 0xce, 0xa6, 0x9d, 0xc2, 0xf6, 0xec, 0x21, 0xa1, 0x1a, 0x89, - 0x27, 0xbb, 0x4e, 0x5b, 0xe2, 0x53, 0x3a, 0x20, 0x33, 0xf2, 0x01, 0x29, 0x0b, 0x93, 0xd9, 0x98, - 0x30, 0xa9, 0xfd, 0x6d, 0x16, 0x9e, 0x3f, 0xc7, 0x70, 0xcd, 0xf9, 0xcd, 0xaf, 0x42, 0x81, 0xdd, - 0x25, 0xb2, 0xed, 0x93, 0xbd, 0xc3, 0x8b, 0x63, 0x80, 0x16, 0xca, 0xf7, 0x3a, 0x2a, 0xc2, 0x44, - 0xfb, 0x1d, 0x8c, 0xc3, 0xff, 0xc9, 0x6f, 0xc3, 0x3a, 0xdb, 0xd0, 0x98, 0xa5, 0xc2, 0xf1, 0xa4, - 0x7f, 0x8e, 0x1d, 0xed, 0xaa, 0x30, 0xab, 0x4e, 0x64, 0xc5, 0x4d, 0x0e, 0x77, 0x0c, 0x3b, 0xa4, - 0x11, 0x07, 0x0a, 0xc8, 0x76, 0xdc, 0xe9, 0xf5, 0xcf, 0x65, 0xdf, 0x2b, 0x8c, 0xb6, 0xe5, 0x6c, - 0xcc, 0xc0, 0x8a, 0x12, 0x2a, 0xf8, 0x4d, 0xf5, 0x3f, 0x7f, 0x72, 0xe6, 0x76, 0x86, 0x43, 0x36, - 0x17, 0xf8, 0x83, 0xd0, 0x82, 0xb5, 0xea, 0x4f, 0xce, 0xf4, 0xe1, 0x10, 0x87, 0x14, 0x5f, 0x8e, - 0x36, 0x28, 0x1f, 0x5b, 0xb5, 0x82, 0x73, 0x11, 0x39, 0x69, 0x01, 0x6c, 0xdd, 0x72, 0xde, 0x4d, - 0x60, 0x76, 0x04, 0xec, 0x26, 0xdc, 0x62, 0x1f, 0xda, 0xcf, 0x33, 0x42, 0x36, 0x9b, 0x3d, 0xef, - 0x7f, 0x3d, 0x44, 0x53, 0x86, 0xe8, 0x45, 0x50, 0x69, 0xd7, 0x47, 0x9b, 0x4a, 0x38, 0x46, 0x6b, - 0xfe, 0xe4, 0x2c, 0xec, 0x3b, 0xb9, 0xe3, 0x17, 0xe5, 0x8e, 0x7f, 0x43, 0x08, 0xa4, 0x53, 0xb7, - 0x87, 0xd9, 0x5d, 0xae, 0xfd, 0x67, 0x16, 0x6e, 0x9d, 0x6f, 0x13, 0xf8, 0xf5, 0xb8, 0x4d, 0x19, - 0xb7, 0x84, 0x7e, 0xbc, 0x90, 0xd2, 0x8f, 0xa7, 0xac, 0xbd, 0xc5, 0x69, 0x6b, 0x2f, 0xa5, 0x8d, - 0x2f, 0x4d, 0xd1, 0xc6, 0xa7, 0x2e, 0xd0, 0xfc, 0x63, 0x16, 0xe8, 0xb2, 0x3c, 0x4f, 0xfe, 0x3d, - 0x03, 0x4f, 0x4d, 0x79, 0x2d, 0x21, 0xef, 0xc3, 0x53, 0x42, 0xb4, 0x67, 0x27, 0x07, 0x13, 0xb9, - 0xd9, 0xe9, 0x7b, 0x7b, 0x9a, 0x50, 0x8f, 0x6c, 0x53, 0x04, 0xef, 0x0d, 0x2e, 0xce, 0x47, 0xe9, - 0xff, 0x7f, 0x04, 0x79, 0xf2, 0x00, 0x2e, 0x23, 0x02, 0xe9, 0x91, 0x2b, 0xc9, 0xf3, 0xee, 0xc8, - 0x3b, 0xe6, 0xf3, 0xe1, 0xb9, 0x94, 0xd8, 0xdb, 0x3b, 0x92, 0xaa, 0x63, 0x79, 0xc7, 0xd5, 0x4b, - 0xd6, 0xe6, 0x78, 0x0a, 0x3d, 0xa9, 0x23, 0xfc, 0xbd, 0x02, 0xda, 0xe3, 0xfb, 0x0b, 0xaf, 0x31, - 0x93, 0x1d, 0xbe, 0x6c, 0x15, 0x3a, 0x52, 0xef, 0x3d, 0x0f, 0xab, 0x23, 0xef, 0x78, 0xe4, 0x8d, - 0x4f, 0xa5, 0xee, 0x5b, 0xb6, 0x56, 0x38, 0x51, 0x74, 0x8c, 0xc0, 0x41, 0xba, 0x90, 0x90, 0x2d, - 0x32, 0x69, 0x95, 0x50, 0xf5, 0x9b, 0x3a, 0x0e, 0x74, 0x36, 0xc9, 0x15, 0x64, 0x1f, 0xf7, 0x73, - 0xf9, 0x8c, 0x9a, 0xb5, 0x38, 0x5a, 0xd3, 0x71, 0xaf, 0xef, 0x69, 0xff, 0xa0, 0x08, 0x89, 0x60, - 0x5a, 0xe7, 0x91, 0xf7, 0x25, 0xfb, 0x9e, 0x6c, 0x4a, 0x0c, 0x99, 0x96, 0x45, 0x36, 0x85, 0xe0, - 0x00, 0x42, 0x48, 0x88, 0x01, 0x08, 0x21, 0xe5, 0x49, 0x8c, 0x14, 0xee, 0x89, 0xe7, 0x41, 0xba, - 0xdb, 0x1d, 0xdc, 0x21, 0xb7, 0x61, 0x89, 0xbd, 0x08, 0x8a, 0x8a, 0xae, 0xc7, 0x2a, 0x7a, 0x70, - 0xc7, 0x12, 0xe9, 0xda, 0x0f, 0x95, 0xf0, 0x4d, 0x24, 0x59, 0xfd, 0x83, 0x3b, 0xe4, 0x8d, 0xf3, - 0x59, 0xea, 0xe4, 0x85, 0xa5, 0x4e, 0x68, 0xa5, 0xf3, 0x66, 0xcc, 0x4a, 0xe7, 0xe6, 0xfc, 0x7e, - 0xe2, 0xb7, 0xaf, 0xc9, 0xb0, 0xfd, 0x3f, 0x57, 0xe0, 0xfa, 0xdc, 0x1c, 0xe4, 0x1a, 0xe4, 0xf5, - 0x96, 0xe9, 0x44, 0x23, 0x4b, 0x57, 0x8b, 0xa0, 0x90, 0x3d, 0x58, 0xde, 0xed, 0x8c, 0x7b, 0x47, - 0x74, 0x02, 0x4f, 0xbd, 0x34, 0x4a, 0x15, 0x1b, 0xb2, 0x57, 0x2f, 0x59, 0x51, 0x5e, 0xe2, 0xc2, - 0x06, 0xae, 0x82, 0x54, 0x58, 0xec, 0xe4, 0x85, 0x41, 0xaa, 0xc0, 0x54, 0x36, 0xba, 0xc3, 0xa4, - 0x88, 0xc9, 0xc5, 0xf7, 0x81, 0x90, 0x42, 0x66, 0x57, 0xf0, 0x02, 0x98, 0x5f, 0x2f, 0x42, 0xbe, - 0x25, 0xde, 0x45, 0x24, 0xd3, 0x36, 0xf1, 0x06, 0x62, 0x85, 0xa9, 0xda, 0x1f, 0x29, 0x42, 0xab, - 0x7f, 0x7c, 0x43, 0xa4, 0x88, 0x0e, 0xdd, 0xf9, 0x11, 0x1d, 0xba, 0x9f, 0x31, 0xa2, 0x83, 0xf6, - 0x77, 0x1c, 0x91, 0xd3, 0xec, 0xb6, 0x12, 0x21, 0xe1, 0x9e, 0xd4, 0x44, 0xd1, 0x88, 0xcd, 0xce, - 0xe7, 0xa5, 0x88, 0x40, 0xe9, 0xdf, 0x9a, 0x6d, 0xa9, 0x28, 0x4d, 0xd5, 0xbf, 0xcc, 0xc2, 0xb5, - 0x79, 0xd9, 0xa7, 0x46, 0xaf, 0x53, 0x2e, 0x16, 0xbd, 0xee, 0x36, 0xe4, 0x19, 0x2d, 0x1e, 0xc2, - 0x9d, 0x67, 0xa5, 0x1d, 0x2e, 0x92, 0xc9, 0xf3, 0xb0, 0xa8, 0x97, 0xec, 0x28, 0x0c, 0x06, 0x1a, - 0xca, 0x74, 0x8e, 0xc6, 0x68, 0x82, 0xc1, 0x93, 0xc8, 0x37, 0xd3, 0x91, 0x5f, 0x78, 0xfc, 0x8b, - 0xab, 0x52, 0x87, 0xa4, 0xc0, 0x72, 0xb1, 0xbe, 0x11, 0xb8, 0x2b, 0xc7, 0x4b, 0xb4, 0xd2, 0x51, - 0x64, 0x34, 0x58, 0x6c, 0x8d, 0xbc, 0xb1, 0x17, 0xc8, 0x46, 0x2c, 0x43, 0xa4, 0x58, 0x3c, 0x85, - 0x9b, 0x98, 0x74, 0x1e, 0x31, 0x8f, 0xc2, 0x45, 0xd9, 0xcb, 0x1b, 0x6d, 0x52, 0x28, 0xd9, 0x92, - 0x58, 0x68, 0x86, 0x5a, 0x67, 0xe2, 0x1f, 0x9d, 0x62, 0x38, 0xf0, 0xa5, 0xc8, 0x26, 0xa5, 0x8f, - 0x54, 0xda, 0xc0, 0xb1, 0x25, 0xb1, 0x68, 0xdf, 0x53, 0x60, 0x73, 0x5a, 0x3b, 0xc8, 0x35, 0xc8, - 0xf9, 0x53, 0x83, 0xdc, 0xf8, 0xcc, 0x11, 0xaa, 0x80, 0xf1, 0xb6, 0x8f, 0x07, 0xa3, 0xb3, 0x4e, - 0x20, 0x9b, 0xfa, 0x48, 0x64, 0x0b, 0xe8, 0x47, 0x05, 0xff, 0x27, 0x37, 0xc4, 0xee, 0x9c, 0x4d, - 0x85, 0xc5, 0xc1, 0x3f, 0x9a, 0x0e, 0x60, 0x76, 0x5b, 0xcd, 0x21, 0x03, 0x6b, 0xbd, 0x0b, 0x39, - 0x5a, 0xad, 0xc4, 0xec, 0xa5, 0xf3, 0x47, 0xaf, 0xd7, 0x38, 0x13, 0xab, 0xd5, 0xb8, 0x73, 0xd6, - 0xb7, 0x90, 0x59, 0x3b, 0x84, 0xb5, 0x38, 0x07, 0x31, 0xe2, 0xf0, 0x5e, 0x85, 0xd7, 0x54, 0x5e, - 0xd2, 0xee, 0x60, 0xc0, 0xcc, 0x4d, 0x77, 0x9f, 0xf9, 0xa7, 0x4f, 0x6e, 0x00, 0xfd, 0x64, 0x79, - 0xa6, 0xc1, 0x7f, 0x69, 0x7f, 0x92, 0x81, 0xcd, 0xc8, 0xc3, 0x4d, 0xac, 0xa1, 0x5f, 0x59, 0x77, - 0x0b, 0x3d, 0xe6, 0x0e, 0x20, 0x44, 0xac, 0x74, 0x03, 0xe7, 0x58, 0x21, 0xef, 0xc1, 0xd6, 0x2c, - 0x7e, 0xf2, 0x12, 0x2c, 0x23, 0x28, 0xc2, 0xb0, 0x73, 0xe4, 0xc9, 0x7b, 0x9f, 0x2f, 0x88, 0x56, - 0x94, 0xae, 0xfd, 0x44, 0x81, 0x6d, 0x6e, 0x24, 0x59, 0xef, 0xf4, 0xfc, 0xc0, 0xf3, 0x3b, 0xfe, - 0x91, 0xf7, 0xf9, 0xb8, 0x0b, 0xed, 0xc5, 0xf6, 0xb1, 0x17, 0xe2, 0xb6, 0xb0, 0xa9, 0x5f, 0x9b, - 0xdd, 0x5a, 0x72, 0x1b, 0x81, 0x3e, 0x8e, 0xd8, 0xe4, 0xcd, 0x31, 0xf7, 0x4c, 0x9f, 0x12, 0x64, - 0xf7, 0x4c, 0xe4, 0xd0, 0x7e, 0x17, 0x76, 0xe6, 0xff, 0x00, 0xf9, 0x06, 0xac, 0x62, 0x20, 0x83, - 0xf6, 0xf0, 0x64, 0xd4, 0xe9, 0x7a, 0xe2, 0x12, 0x4c, 0xdc, 0x41, 0xca, 0x69, 0x0c, 0xdc, 0x84, - 0xbb, 0x0b, 0x9e, 0x60, 0x88, 0x04, 0x9e, 0x29, 0x66, 0x89, 0x2c, 0x97, 0xa6, 0xfd, 0x9e, 0x02, - 0x24, 0x5d, 0x06, 0xf9, 0x32, 0xac, 0xb4, 0x9d, 0x92, 0x1d, 0x74, 0x46, 0x41, 0x75, 0x30, 0x19, - 0x71, 0xd0, 0x10, 0xe6, 0x3d, 0x16, 0x1c, 0xd1, 0xad, 0x64, 0x14, 0xb8, 0xa7, 0x83, 0xc9, 0xc8, - 0x8a, 0xf1, 0x21, 0x02, 0xbf, 0xe7, 0x7d, 0xab, 0xdb, 0x79, 0x14, 0x47, 0xe0, 0xe7, 0xb4, 0x18, - 0x02, 0x3f, 0xa7, 0x69, 0x1f, 0x2b, 0x70, 0x55, 0x58, 0x4f, 0x74, 0xa7, 0xd4, 0xa5, 0x84, 0x3e, - 0xd2, 0x23, 0x01, 0x9a, 0x36, 0x4f, 0x98, 0xdd, 0x10, 0x30, 0x02, 0x58, 0x41, 0x94, 0x6a, 0x59, - 0x5e, 0xf2, 0x55, 0xc8, 0xd9, 0xc1, 0x60, 0x78, 0x0e, 0x1c, 0x01, 0x35, 0x1c, 0xd1, 0x60, 0x30, - 0xc4, 0x22, 0x30, 0xa7, 0xe6, 0xc1, 0xa6, 0x5c, 0x39, 0x51, 0x63, 0x52, 0x87, 0x25, 0x8e, 0x2a, - 0x93, 0x78, 0x4e, 0x9a, 0xd3, 0xa6, 0xdd, 0x75, 0x01, 0x56, 0xc0, 0x41, 0xbb, 0x2c, 0x51, 0x86, - 0xf6, 0xc7, 0x0a, 0x14, 0xa8, 0xb4, 0x81, 0xfa, 0xdb, 0x93, 0x4e, 0xe9, 0xb8, 0xe0, 0x28, 0x5e, - 0x23, 0xc3, 0xe2, 0xcf, 0x75, 0x1a, 0xbf, 0x0e, 0xeb, 0x89, 0x0c, 0x44, 0x43, 0x37, 0xd5, 0x7e, - 0xef, 0xa8, 0xc3, 0x00, 0xbd, 0xd9, 0x53, 0x5e, 0x8c, 0xa6, 0xfd, 0x81, 0x02, 0x9b, 0x54, 0xdb, - 0x37, 0xf1, 0xa2, 0xd7, 0x9a, 0xf4, 0xc5, 0x7a, 0xa7, 0x12, 0x94, 0x30, 0xc3, 0x61, 0x2e, 0x74, - 0x4c, 0x82, 0xe2, 0x34, 0x2b, 0x4c, 0x25, 0x55, 0xc8, 0xf3, 0xf3, 0x65, 0xcc, 0xb1, 0xb6, 0x76, - 0xa4, 0x6b, 0x84, 0xa8, 0x60, 0xce, 0x44, 0x5b, 0x82, 0x5b, 0x18, 0xcf, 0x63, 0x85, 0xb9, 0xb5, - 0xff, 0x52, 0xe0, 0xca, 0x8c, 0x3c, 0xe4, 0x6d, 0x58, 0x40, 0xf3, 0x7e, 0x3e, 0x7a, 0xd7, 0x66, - 0xfc, 0x44, 0x70, 0x74, 0x7a, 0x70, 0x87, 0x1d, 0x44, 0x67, 0xf4, 0xc3, 0x62, 0xb9, 0xc8, 0xfb, - 0xb0, 0xac, 0x77, 0xbb, 0x5c, 0x91, 0xc9, 0xc4, 0x14, 0x99, 0x19, 0xbf, 0xf8, 0x4a, 0xc8, 0xcf, - 0x14, 0x19, 0x66, 0x68, 0xda, 0xed, 0xba, 0xdc, 0x75, 0x21, 0x2a, 0x6f, 0xfb, 0xb7, 0x60, 0x2d, - 0xce, 0x7c, 0x21, 0x45, 0xe6, 0x87, 0x0a, 0xa8, 0xf1, 0x3a, 0xfc, 0x72, 0x60, 0x16, 0xa6, 0x0d, - 0xf3, 0x63, 0x26, 0xd5, 0x9f, 0x65, 0xe0, 0xe9, 0xa9, 0x3d, 0x4c, 0x5e, 0x86, 0x45, 0x7d, 0x38, - 0x34, 0xcb, 0x7c, 0x56, 0x71, 0x09, 0x09, 0xef, 0x87, 0x63, 0x7a, 0x1e, 0x63, 0x22, 0x77, 0x21, - 0x8f, 0x33, 0x93, 0x66, 0xc8, 0x44, 0xa8, 0x57, 0xec, 0xfa, 0x24, 0x81, 0x7a, 0x25, 0x18, 0x49, - 0x05, 0xd6, 0xb8, 0xc7, 0xb5, 0xe5, 0x9d, 0x78, 0xdf, 0x09, 0xe1, 0x57, 0x11, 0x21, 0x56, 0x5c, - 0x3a, 0xbb, 0x23, 0x96, 0x26, 0xfb, 0x1c, 0xc7, 0x73, 0x91, 0x1a, 0xa8, 0x58, 0xa6, 0x5c, 0x12, - 0x83, 0xde, 0x42, 0x1f, 0x78, 0x56, 0x89, 0x19, 0x65, 0xa5, 0x72, 0x86, 0xc3, 0xa5, 0x8f, 0xc7, - 0xbd, 0x13, 0xff, 0xcc, 0xf3, 0x83, 0x5f, 0xde, 0x70, 0x45, 0xbf, 0x71, 0xae, 0xe1, 0xfa, 0xf3, - 0x1c, 0x5b, 0xcc, 0xc9, 0x6c, 0x54, 0xa2, 0x91, 0xd0, 0x16, 0x51, 0xa2, 0xc1, 0xf8, 0xb4, 0xcc, - 0xa7, 0xb8, 0x0c, 0x4b, 0xcc, 0xd7, 0x5b, 0xac, 0x8c, 0xeb, 0x53, 0xab, 0xc0, 0x78, 0x0e, 0xee, - 0x30, 0xf1, 0x85, 0xf9, 0x19, 0x8c, 0x2d, 0x91, 0x95, 0x1c, 0x40, 0xa1, 0xd4, 0xf7, 0x3a, 0xfe, - 0x64, 0xe8, 0x9c, 0xef, 0xdd, 0x70, 0x8b, 0xb7, 0x65, 0xe5, 0x88, 0x65, 0xc3, 0xf7, 0x46, 0xdc, - 0xc9, 0xe5, 0x82, 0x88, 0x13, 0x9a, 0x1e, 0xe7, 0xf0, 0x8e, 0xf2, 0x4b, 0x73, 0xfa, 0x27, 0x49, - 0xc4, 0x7c, 0x71, 0xbb, 0x7a, 0x6e, 0x9b, 0xec, 0xc2, 0x5a, 0xad, 0x33, 0x0e, 0x9c, 0x51, 0xc7, - 0x1f, 0x23, 0x46, 0xd4, 0x39, 0x30, 0x34, 0x44, 0x24, 0x6b, 0x76, 0x77, 0x19, 0x84, 0x59, 0xd9, - 0xdd, 0x65, 0xbc, 0x38, 0x2a, 0x2f, 0x55, 0x7a, 0x7e, 0xa7, 0xdf, 0xfb, 0x48, 0x78, 0x68, 0x30, - 0x79, 0xe9, 0x58, 0x10, 0xad, 0x28, 0x5d, 0xfb, 0x7a, 0x6a, 0xdc, 0x58, 0x2d, 0x0b, 0xb0, 0xc4, - 0xfd, 0xf7, 0x98, 0x3f, 0x5b, 0xcb, 0x68, 0x94, 0xcd, 0xc6, 0x9e, 0xaa, 0x90, 0x35, 0x80, 0x96, - 0xd5, 0x2c, 0x19, 0xb6, 0x4d, 0xbf, 0x33, 0xf4, 0x9b, 0x3b, 0xbb, 0x55, 0xda, 0x35, 0x35, 0x2b, - 0xf9, 0xbb, 0xe5, 0xb4, 0x1f, 0x2b, 0x70, 0x79, 0xfa, 0x50, 0x12, 0x07, 0xd0, 0xe3, 0x91, 0xbf, - 0x20, 0x7f, 0x79, 0xee, 0xb8, 0x4f, 0x25, 0x27, 0x3d, 0x27, 0x03, 0xe6, 0x91, 0x97, 0x11, 0xcf, - 0x44, 0x51, 0x0c, 0xe6, 0x5e, 0x57, 0x2b, 0xc1, 0xd6, 0xac, 0x32, 0xe2, 0x4d, 0x5d, 0x87, 0x82, - 0xde, 0x6a, 0xd5, 0xcc, 0x92, 0xee, 0x98, 0xcd, 0x86, 0xaa, 0x90, 0x65, 0x58, 0xd8, 0xb3, 0x9a, - 0xed, 0x96, 0x9a, 0xd1, 0x7e, 0xa0, 0xc0, 0xaa, 0xe9, 0x07, 0xde, 0x09, 0xb3, 0x78, 0x7d, 0xd2, - 0xc5, 0xf7, 0x56, 0x6c, 0xf1, 0x6d, 0x85, 0xbe, 0xc1, 0xe1, 0x0f, 0x9c, 0x6b, 0xe5, 0x7d, 0x9c, - 0x81, 0x8d, 0x54, 0x1e, 0x62, 0xc3, 0x92, 0x7e, 0x68, 0x37, 0xcd, 0x72, 0x89, 0xd7, 0x4c, 0x48, - 0xe5, 0x9c, 0x9a, 0xfe, 0x15, 0xe6, 0x4f, 0xf3, 0xe1, 0xd8, 0x1d, 0xf4, 0xba, 0x52, 0x24, 0xb1, - 0xea, 0x25, 0x4b, 0x94, 0x84, 0x27, 0xd9, 0x47, 0x93, 0x91, 0x87, 0xc5, 0x66, 0x62, 0x57, 0xa0, - 0x21, 0x3d, 0x5d, 0x30, 0x1a, 0x78, 0x76, 0x68, 0x7a, 0xba, 0xe8, 0xa8, 0x3c, 0xd2, 0x80, 0xc5, - 0xbd, 0x5e, 0x50, 0x9d, 0x3c, 0xe4, 0xeb, 0x77, 0x27, 0xc2, 0xa6, 0xaf, 0x4e, 0x1e, 0xa6, 0x8b, - 0xc5, 0xdb, 0x3d, 0xe6, 0xfb, 0x1e, 0x2b, 0x92, 0x97, 0xb2, 0xbb, 0x0a, 0x05, 0xae, 0x05, 0xa1, - 0x82, 0xf1, 0x7d, 0x05, 0xb6, 0x66, 0xb5, 0x9d, 0x2a, 0x56, 0x71, 0x67, 0xbd, 0xcb, 0x21, 0x5a, - 0x71, 0xdc, 0x4b, 0x4f, 0xb0, 0x91, 0x77, 0xa0, 0xc0, 0x02, 0xe5, 0xdb, 0x77, 0xdb, 0x96, 0xc9, - 0x27, 0xdc, 0xf5, 0x9f, 0x7d, 0x72, 0xe3, 0x0a, 0x0b, 0xab, 0xef, 0x8e, 0xef, 0xba, 0x93, 0x51, - 0x2f, 0x86, 0xec, 0x2a, 0xe7, 0xd0, 0xbe, 0xab, 0xc0, 0xf6, 0xec, 0x4e, 0xa3, 0xa7, 0x96, 0x43, - 0x65, 0xfd, 0xc8, 0xdf, 0x09, 0x4f, 0x2d, 0x94, 0xff, 0x13, 0x0e, 0x4f, 0x21, 0x23, 0xcd, 0x14, - 0x46, 0xfd, 0xcc, 0xa4, 0x42, 0xfd, 0xc5, 0x33, 0x09, 0x46, 0x74, 0xb0, 0x9c, 0xd1, 0xc7, 0xe4, - 0x2b, 0x53, 0x01, 0xcd, 0xd1, 0xac, 0x58, 0x06, 0x34, 0x8f, 0x85, 0xba, 0x90, 0xa1, 0xcd, 0xdf, - 0x86, 0x05, 0x44, 0x97, 0xe4, 0x93, 0x85, 0xc4, 0x86, 0x14, 0x21, 0x26, 0x99, 0xee, 0x83, 0x4c, - 0xb2, 0xee, 0x83, 0x04, 0xed, 0x2f, 0x14, 0x28, 0x48, 0xbc, 0xe4, 0xd5, 0xc4, 0x93, 0x92, 0xb8, - 0xcc, 0x41, 0x92, 0x3c, 0x4a, 0xe2, 0xa5, 0xe9, 0x00, 0xd6, 0x30, 0x44, 0x23, 0xb7, 0x7a, 0x09, - 0x04, 0x22, 0xeb, 0x46, 0x18, 0xa8, 0xa4, 0x2a, 0x82, 0xe5, 0xb3, 0xc8, 0x5d, 0x31, 0x66, 0x59, - 0x27, 0xa2, 0x29, 0xba, 0x48, 0xd0, 0xfe, 0x23, 0x03, 0x97, 0xe9, 0x22, 0xee, 0x7b, 0xe3, 0x31, - 0xa5, 0x7a, 0x7e, 0xc0, 0xc5, 0x5a, 0xf2, 0x06, 0x2c, 0x9e, 0x5e, 0xec, 0x0a, 0x97, 0xb1, 0x13, - 0x02, 0x78, 0x30, 0x0a, 0x23, 0x5d, 0xfa, 0x3f, 0x79, 0x0e, 0xe4, 0x80, 0x94, 0x59, 0xc4, 0x20, - 0xcb, 0x6c, 0x29, 0xd6, 0xf2, 0x30, 0x8c, 0x1d, 0xf7, 0x26, 0x2c, 0xe0, 0xb5, 0x0d, 0x3f, 0xa2, - 0x84, 0x6a, 0x31, 0xbd, 0x76, 0x78, 0xa9, 0x63, 0xb1, 0x0c, 0xe4, 0x55, 0x80, 0x08, 0x4d, 0x98, - 0x9f, 0x41, 0xe2, 0x3a, 0x23, 0x04, 0x14, 0xb6, 0x96, 0xcf, 0x8e, 0x3b, 0x1c, 0xa2, 0xb7, 0x08, - 0x1b, 0x62, 0x2a, 0x0d, 0x05, 0x74, 0x11, 0x7f, 0x57, 0x5c, 0x67, 0x09, 0xe6, 0x50, 0xc0, 0x17, - 0xdd, 0x4c, 0x05, 0xd5, 0x43, 0x04, 0xc3, 0x44, 0xe4, 0xbc, 0x9b, 0xa9, 0xc8, 0x79, 0x79, 0xc6, - 0x25, 0x87, 0xc7, 0xd3, 0xfe, 0x2d, 0x03, 0xcb, 0x87, 0x54, 0xf8, 0xc3, 0x2b, 0x8d, 0xf9, 0x57, - 0x24, 0xaf, 0x41, 0xa1, 0x36, 0xe8, 0xf0, 0x07, 0x9c, 0x31, 0x47, 0x62, 0x43, 0xc7, 0xab, 0xfe, - 0xa0, 0x23, 0xde, 0x82, 0xc6, 0x96, 0xcc, 0xf4, 0x18, 0xa7, 0xb1, 0xfb, 0xb0, 0xc8, 0x1e, 0xd4, - 0xf8, 0x6d, 0x9d, 0x10, 0xff, 0xc3, 0x1a, 0xbd, 0xc2, 0x92, 0xa5, 0x37, 0x07, 0xf6, 0x28, 0x27, - 0xcb, 0xa2, 0x1c, 0x88, 0x4d, 0xba, 0xc0, 0x59, 0x38, 0xdf, 0x05, 0x8e, 0x04, 0x38, 0xb3, 0x78, - 0x1e, 0xc0, 0x99, 0xed, 0x7b, 0x50, 0x90, 0xea, 0x73, 0x21, 0x6d, 0xe0, 0xf7, 0x33, 0xb0, 0x8a, - 0xad, 0x0a, 0xad, 0x6b, 0x7e, 0x35, 0xaf, 0xa3, 0xde, 0x8a, 0x5d, 0x47, 0x6d, 0xc9, 0xe3, 0xc5, - 0x5a, 0x36, 0xe7, 0x1e, 0xea, 0x3e, 0x6c, 0xa4, 0x18, 0xc9, 0xeb, 0xb0, 0x40, 0xab, 0x2f, 0xd4, - 0x77, 0x35, 0x39, 0x03, 0x22, 0x70, 0x42, 0xda, 0xf0, 0xb1, 0xc5, 0xb8, 0xb5, 0xff, 0x56, 0x60, - 0x85, 0x43, 0x55, 0xfb, 0xc7, 0x83, 0xc7, 0x76, 0xe7, 0xad, 0x64, 0x77, 0x32, 0x17, 0x68, 0xde, - 0x9d, 0xff, 0xdb, 0x9d, 0x78, 0x2f, 0xd6, 0x89, 0x57, 0x42, 0xa8, 0x22, 0xd1, 0x9c, 0x39, 0x7d, - 0xf8, 0x8f, 0x08, 0xde, 0x17, 0x67, 0x24, 0xdf, 0x84, 0xe5, 0x86, 0xf7, 0x61, 0x4c, 0x0b, 0xbe, - 0x35, 0xa3, 0xd0, 0x57, 0x42, 0x46, 0xb6, 0xa6, 0x50, 0x80, 0xf0, 0xbd, 0x0f, 0xdd, 0xd4, 0x5b, - 0x5e, 0x54, 0x24, 0x55, 0x84, 0xe3, 0xd9, 0x2e, 0x32, 0xf5, 0xb9, 0xa3, 0x0d, 0x7a, 0xf5, 0x7f, - 0x2f, 0x0b, 0x10, 0xf9, 0x28, 0x5c, 0xfc, 0xcc, 0xb9, 0xc5, 0x2f, 0xba, 0x33, 0xb3, 0xa1, 0xa4, - 0xf0, 0xca, 0xbb, 0xc4, 0x7d, 0x00, 0xba, 0x5e, 0xbf, 0xc3, 0xf6, 0xf6, 0xec, 0xee, 0x4d, 0x44, - 0x0e, 0x0c, 0xa9, 0x33, 0x62, 0x0e, 0xa2, 0xa7, 0x40, 0x99, 0x32, 0xa4, 0xfc, 0x7e, 0x72, 0x17, - 0xf3, 0xfb, 0x69, 0xc1, 0x72, 0xcf, 0xff, 0xc0, 0xf3, 0x83, 0xc1, 0xe8, 0x11, 0xde, 0xee, 0x47, - 0xd7, 0x86, 0xb4, 0x0b, 0x4c, 0x91, 0xc6, 0xc6, 0x01, 0x85, 0x89, 0x90, 0x5f, 0x1e, 0x86, 0x90, - 0x18, 0xfa, 0x2d, 0x2d, 0xa8, 0x8b, 0xf7, 0x73, 0xf9, 0x45, 0x75, 0xe9, 0x7e, 0x2e, 0x9f, 0x57, - 0x97, 0xef, 0xe7, 0xf2, 0xcb, 0x2a, 0x58, 0xd2, 0x7b, 0x59, 0xf8, 0x1e, 0x26, 0x3d, 0x61, 0xc5, - 0x9f, 0xa7, 0xb4, 0x5f, 0x64, 0x80, 0xa4, 0xab, 0x41, 0xde, 0x82, 0x02, 0xdb, 0x60, 0xdd, 0xd1, - 0xf8, 0xdb, 0xdc, 0x25, 0x84, 0x61, 0x23, 0x48, 0x64, 0x19, 0x1b, 0x81, 0x91, 0xad, 0xf1, 0xb7, - 0xfb, 0xe4, 0x1b, 0xf0, 0x14, 0x76, 0xef, 0xd0, 0x1b, 0xf5, 0x06, 0x5d, 0x17, 0x81, 0xec, 0x3a, - 0x7d, 0x1e, 0x1f, 0xe8, 0x65, 0x0c, 0x64, 0x97, 0x4e, 0x9e, 0x31, 0x0c, 0xe8, 0x79, 0xd1, 0x42, - 0xce, 0x16, 0x63, 0x24, 0x0e, 0xa8, 0x72, 0xfe, 0xe3, 0x49, 0xbf, 0xcf, 0x47, 0xb6, 0xf8, 0xb3, - 0x4f, 0x6e, 0x6c, 0x27, 0xd3, 0x66, 0x14, 0xbc, 0x16, 0x15, 0x5c, 0x99, 0xf4, 0xfb, 0xe4, 0x0d, - 0x80, 0x81, 0xef, 0x9e, 0xf5, 0xc6, 0x63, 0xf6, 0x66, 0x14, 0x7a, 0x4d, 0x45, 0x54, 0x79, 0x30, - 0x06, 0x7e, 0x9d, 0x11, 0xc9, 0x6f, 0x00, 0xba, 0x54, 0xa2, 0xaf, 0x31, 0xb3, 0x0f, 0xe2, 0x88, - 0xdf, 0x82, 0x18, 0x77, 0xd2, 0x3a, 0xf1, 0xec, 0xde, 0x47, 0xc2, 0xbc, 0xfb, 0x3d, 0xd8, 0xe0, - 0x96, 0xb9, 0x87, 0xbd, 0xe0, 0x94, 0x6b, 0x2c, 0x4f, 0xa2, 0xee, 0x48, 0x2a, 0xcb, 0x3f, 0xe7, - 0x00, 0xf4, 0x43, 0x5b, 0xc0, 0x78, 0xdc, 0x86, 0x05, 0xaa, 0x87, 0x89, 0xfb, 0x1c, 0x94, 0x08, - 0xb1, 0x5c, 0x59, 0x22, 0x44, 0x0e, 0xba, 0x1a, 0x2d, 0xef, 0x04, 0xaf, 0x14, 0x33, 0xd1, 0xe5, - 0xcf, 0x88, 0x91, 0x62, 0x72, 0x3a, 0x23, 0x91, 0x1a, 0x40, 0x04, 0xac, 0xc1, 0x35, 0x8b, 0x8d, - 0xc8, 0x43, 0x9d, 0x27, 0x70, 0x28, 0xe7, 0x08, 0x9c, 0x43, 0x9e, 0x3e, 0x11, 0x1b, 0xd9, 0x87, - 0x9c, 0xd3, 0x09, 0x7d, 0x82, 0x66, 0xc0, 0x8d, 0x3c, 0xcb, 0xe3, 0x37, 0x45, 0x90, 0x23, 0x6b, - 0x41, 0x27, 0x16, 0xe6, 0x0e, 0x0b, 0x21, 0x06, 0x2c, 0xf2, 0xd8, 0x9c, 0x33, 0x60, 0xaa, 0x78, - 0x68, 0x4e, 0x0e, 0x4e, 0x89, 0x44, 0x59, 0xa6, 0xe0, 0x51, 0x38, 0x5f, 0x83, 0xac, 0x6d, 0xd7, - 0xb9, 0x93, 0xed, 0x6a, 0xa4, 0xe5, 0xd9, 0x76, 0x5d, 0x04, 0x9e, 0x3e, 0x93, 0xb2, 0x51, 0x66, - 0xf2, 0x9b, 0x50, 0x90, 0x84, 0x7d, 0xee, 0x9e, 0x8e, 0x7d, 0xd0, 0x8b, 0xc8, 0xf2, 0xa6, 0x21, - 0x71, 0x93, 0x1a, 0xa8, 0xfb, 0x93, 0x87, 0x9e, 0x3e, 0x1c, 0xa2, 0xd3, 0xca, 0x07, 0xde, 0x88, - 0x89, 0x6d, 0xf9, 0x08, 0xd7, 0xd1, 0xed, 0x0c, 0x87, 0x6e, 0x57, 0xa4, 0xca, 0x77, 0x5a, 0xc9, - 0x9c, 0xa4, 0x05, 0x1b, 0xb6, 0x17, 0x4c, 0x86, 0xcc, 0xe2, 0xa5, 0x32, 0x18, 0x51, 0x25, 0x8c, - 0x39, 0xb3, 0x23, 0x04, 0xde, 0x98, 0x26, 0x0a, 0x33, 0xa3, 0xe3, 0xc1, 0x28, 0xa1, 0x90, 0xa5, - 0x33, 0x6b, 0x9e, 0x3c, 0xe4, 0xf4, 0x54, 0x8d, 0xab, 0x76, 0x78, 0xaa, 0x0a, 0xd5, 0x2e, 0x52, - 0xe8, 0x5e, 0x9d, 0x02, 0xb8, 0x82, 0x0f, 0x90, 0x12, 0xe0, 0x4a, 0x0c, 0x66, 0xe5, 0xe3, 0x9c, - 0x84, 0xf9, 0xc5, 0xc7, 0xe2, 0x6d, 0x80, 0xfb, 0x83, 0x9e, 0x5f, 0xf7, 0x82, 0xd3, 0x41, 0x57, - 0xc2, 0x7d, 0x29, 0xfc, 0xce, 0xa0, 0xe7, 0xbb, 0x67, 0x48, 0xfe, 0xc5, 0x27, 0x37, 0x24, 0x26, - 0x4b, 0xfa, 0x9f, 0x7c, 0x11, 0x96, 0xe9, 0x97, 0x13, 0xd9, 0xed, 0xb0, 0xab, 0x5f, 0xcc, 0xcd, - 0x43, 0xd8, 0x87, 0x0c, 0xe4, 0x1e, 0x62, 0xc1, 0xf7, 0x86, 0x81, 0x24, 0xbc, 0x0a, 0xe0, 0xf7, - 0xde, 0x30, 0x48, 0xc2, 0x38, 0x4a, 0xcc, 0xa4, 0x1a, 0x56, 0x5d, 0x44, 0x13, 0xe0, 0x90, 0xf3, - 0x78, 0xbf, 0xc9, 0xe7, 0x9a, 0x2b, 0xf0, 0xe3, 0xe4, 0xb8, 0x6f, 0x89, 0x6c, 0x58, 0x09, 0xbb, - 0x5a, 0x66, 0x0f, 0x52, 0x5c, 0xa8, 0x15, 0x81, 0xb3, 0xbb, 0xee, 0x11, 0x92, 0x63, 0x95, 0x08, - 0x99, 0xc9, 0x2e, 0xac, 0x33, 0x19, 0x3f, 0x8c, 0x4a, 0xc4, 0x45, 0x5c, 0xdc, 0xdb, 0xa2, 0xb0, - 0x45, 0xf2, 0xcf, 0x27, 0x32, 0x90, 0x0a, 0x2c, 0xa0, 0x12, 0xcd, 0xed, 0xee, 0xaf, 0xca, 0xb7, - 0x11, 0xc9, 0x75, 0x84, 0xfb, 0x0a, 0xde, 0x43, 0xc8, 0xfb, 0x0a, 0xb2, 0x92, 0xaf, 0x01, 0x18, - 0xfe, 0x68, 0xd0, 0xef, 0x23, 0xc2, 0x61, 0x1e, 0x55, 0xa9, 0xeb, 0xf1, 0xf5, 0x88, 0xa5, 0x44, - 0x4c, 0x1c, 0x8d, 0x07, 0xbf, 0xdd, 0x04, 0x0e, 0xa2, 0x54, 0x96, 0x66, 0xc2, 0x22, 0x5b, 0x8c, - 0x88, 0x16, 0xca, 0xf1, 0xcf, 0x25, 0xac, 0x49, 0x86, 0x16, 0xca, 0xe9, 0x69, 0xb4, 0x50, 0x29, - 0x83, 0xb6, 0x0f, 0x9b, 0xd3, 0x1a, 0x16, 0x53, 0xfb, 0x95, 0xf3, 0xaa, 0xfd, 0x7f, 0x93, 0x85, - 0x15, 0x2c, 0x4d, 0xec, 0xc2, 0x3a, 0xac, 0xda, 0x93, 0x87, 0x21, 0x94, 0x86, 0xd8, 0x8d, 0xb1, - 0x7e, 0x63, 0x39, 0x41, 0x56, 0x8b, 0x63, 0x39, 0x88, 0x01, 0x6b, 0xe2, 0x24, 0xd8, 0x13, 0xb6, - 0xfc, 0x21, 0x50, 0xa7, 0x80, 0x83, 0x4a, 0x47, 0x65, 0x4b, 0x64, 0x8a, 0xce, 0x83, 0xec, 0x45, - 0xce, 0x83, 0xdc, 0xb9, 0xce, 0x83, 0xf7, 0x61, 0x45, 0xfc, 0x1a, 0xee, 0xe4, 0x0b, 0x4f, 0xb6, - 0x93, 0xc7, 0x0a, 0x23, 0xb5, 0x70, 0x47, 0x5f, 0x9c, 0xbb, 0xa3, 0xe3, 0x5d, 0x83, 0x58, 0x65, - 0xa9, 0x40, 0xcb, 0xbc, 0x0c, 0x0c, 0x5b, 0xb4, 0x57, 0x6a, 0x7d, 0x86, 0x53, 0xf2, 0x75, 0x58, - 0xae, 0x0d, 0xc4, 0xd3, 0x9b, 0xf4, 0xe6, 0xd1, 0x17, 0x44, 0x59, 0x5c, 0x08, 0x39, 0xc3, 0xd3, - 0x2d, 0xfb, 0x79, 0x9c, 0x6e, 0xf7, 0x00, 0xb8, 0x93, 0x48, 0x14, 0x6e, 0x04, 0x97, 0x8c, 0xf0, - 0x94, 0x8e, 0x3f, 0xbd, 0x48, 0xcc, 0x74, 0x77, 0xe2, 0x56, 0x3d, 0xfa, 0xd1, 0xd1, 0x60, 0xe2, - 0x07, 0xb1, 0xf8, 0x7c, 0x1c, 0x34, 0x81, 0x1e, 0x09, 0x98, 0x26, 0x6f, 0x0f, 0x89, 0x6c, 0x9f, - 0xef, 0x80, 0x90, 0x77, 0x43, 0x73, 0xc4, 0xb9, 0xe1, 0xca, 0xb5, 0x54, 0x0f, 0xcd, 0x34, 0x42, - 0xd4, 0x7e, 0xac, 0xc8, 0x28, 0xc9, 0x9f, 0x61, 0xa8, 0xdf, 0x04, 0x08, 0x6d, 0x1f, 0xc4, 0x58, - 0x33, 0x7d, 0x29, 0xa4, 0xca, 0xbd, 0x1c, 0xf1, 0x4a, 0xad, 0xc9, 0x7e, 0x5e, 0xad, 0x71, 0xa0, - 0xd0, 0xfc, 0x56, 0xd0, 0x89, 0x8c, 0x65, 0xc0, 0x0e, 0x25, 0x59, 0xdc, 0x99, 0x44, 0x58, 0xf5, - 0x48, 0x0e, 0x9e, 0x19, 0x56, 0x3d, 0xcc, 0xa8, 0xbd, 0x0b, 0xeb, 0xb2, 0xcf, 0xe6, 0x23, 0xff, - 0x88, 0x7c, 0x85, 0x61, 0xb6, 0x29, 0x31, 0x8d, 0x45, 0x62, 0xa2, 0x3b, 0xee, 0x23, 0xff, 0x88, - 0xc9, 0x3f, 0x9d, 0x0f, 0xe5, 0xba, 0xa2, 0x8e, 0xf7, 0x53, 0x05, 0x48, 0x9a, 0x5d, 0xde, 0x4d, - 0x94, 0xff, 0x03, 0xe9, 0x32, 0x21, 0x95, 0xe5, 0x2e, 0x22, 0x95, 0x15, 0xff, 0x54, 0x81, 0x75, - 0x53, 0xaf, 0x73, 0x48, 0x63, 0xf6, 0x86, 0xf3, 0x1c, 0x5c, 0x37, 0xf5, 0xba, 0xdb, 0x6a, 0xd6, - 0xcc, 0xd2, 0x03, 0x77, 0x2a, 0x52, 0xe1, 0x75, 0x78, 0x26, 0xcd, 0x12, 0xbd, 0xf5, 0x5c, 0x83, - 0xad, 0x74, 0xb2, 0x40, 0x33, 0x9c, 0x9e, 0x59, 0x00, 0x1f, 0x66, 0x8b, 0xef, 0xc0, 0xba, 0x40, - 0xee, 0x73, 0x6a, 0x36, 0x62, 0x03, 0xaf, 0x43, 0xe1, 0xc0, 0xb0, 0xcc, 0xca, 0x03, 0xb7, 0xd2, - 0xae, 0xd5, 0xd4, 0x4b, 0x64, 0x15, 0x96, 0x39, 0xa1, 0xa4, 0xab, 0x0a, 0x59, 0x81, 0xbc, 0xd9, - 0xb0, 0x8d, 0x52, 0xdb, 0x32, 0xd4, 0x4c, 0xf1, 0x1d, 0x58, 0x6b, 0x8d, 0x7a, 0x1f, 0x74, 0x02, - 0x6f, 0xdf, 0x7b, 0x84, 0x4f, 0x35, 0x4b, 0x90, 0xb5, 0xf4, 0x43, 0xf5, 0x12, 0x01, 0x58, 0x6c, - 0xed, 0x97, 0xec, 0x3b, 0x77, 0x54, 0x85, 0x14, 0x60, 0x69, 0xaf, 0xd4, 0x72, 0xf7, 0xeb, 0xb6, - 0x9a, 0xa1, 0x1f, 0xfa, 0xa1, 0x8d, 0x1f, 0xd9, 0xe2, 0x97, 0x60, 0x03, 0x65, 0x85, 0x5a, 0x6f, - 0x1c, 0x78, 0xbe, 0x37, 0xc2, 0x3a, 0xac, 0x40, 0xde, 0xf6, 0xe8, 0x22, 0x0f, 0x3c, 0x56, 0x81, - 0xfa, 0xa4, 0x1f, 0xf4, 0x86, 0x7d, 0xef, 0x3b, 0xaa, 0x52, 0xbc, 0x07, 0xeb, 0xd6, 0x60, 0x12, - 0xf4, 0xfc, 0x13, 0x3b, 0xa0, 0x1c, 0x27, 0x8f, 0xc8, 0xd3, 0xb0, 0xd1, 0x6e, 0xe8, 0xf5, 0x5d, - 0x73, 0xaf, 0xdd, 0x6c, 0xdb, 0x6e, 0x5d, 0x77, 0x4a, 0x55, 0xf6, 0x50, 0x54, 0x6f, 0xda, 0x8e, - 0x6b, 0x19, 0x25, 0xa3, 0xe1, 0xa8, 0x4a, 0xf1, 0x0f, 0x15, 0x58, 0x6b, 0x8f, 0xb9, 0x35, 0x74, - 0x1b, 0x7d, 0x1a, 0x9f, 0x85, 0x6b, 0x6d, 0xdb, 0xb0, 0x5c, 0xa7, 0xb9, 0x6f, 0x34, 0xdc, 0xb6, - 0xad, 0xef, 0x25, 0x61, 0x32, 0x6f, 0xc0, 0x55, 0x89, 0xc3, 0x32, 0x4a, 0xcd, 0x03, 0xc3, 0x72, - 0x5b, 0xba, 0x6d, 0x1f, 0x36, 0xad, 0xb2, 0xaa, 0x90, 0x6d, 0xb8, 0x3c, 0x85, 0xa1, 0x5e, 0xd1, - 0xd5, 0x4c, 0x2a, 0xad, 0x61, 0x1c, 0xea, 0x35, 0x77, 0xb7, 0xe9, 0xa8, 0xd9, 0x62, 0x9d, 0x1e, - 0x74, 0x08, 0x0f, 0xc7, 0x2c, 0xf9, 0xf2, 0x90, 0x6b, 0x34, 0x1b, 0x46, 0xf2, 0x31, 0x6f, 0x05, - 0xf2, 0x7a, 0xab, 0x65, 0x35, 0x0f, 0x70, 0x40, 0x01, 0x16, 0xcb, 0x46, 0x83, 0xd6, 0x2c, 0x4b, - 0x53, 0x5a, 0x56, 0xb3, 0xde, 0x74, 0x8c, 0xb2, 0x9a, 0x2b, 0x5a, 0x62, 0xc1, 0x88, 0x42, 0x8f, - 0x06, 0xec, 0xe5, 0xac, 0x6c, 0x54, 0xf4, 0x76, 0xcd, 0xe1, 0x1d, 0xf2, 0xc0, 0xb5, 0x8c, 0x77, - 0xdb, 0x86, 0xed, 0xd8, 0xaa, 0x42, 0x54, 0x58, 0x69, 0x18, 0x46, 0xd9, 0x76, 0x2d, 0xe3, 0xc0, - 0x34, 0x0e, 0xd5, 0x0c, 0x2d, 0x93, 0xfd, 0x4f, 0x7f, 0xa1, 0xf8, 0xb1, 0x02, 0x84, 0x41, 0xeb, - 0x09, 0xbc, 0x76, 0x1c, 0x9f, 0x1d, 0xd8, 0xae, 0xd2, 0x8e, 0xc5, 0xa6, 0xd5, 0x9b, 0xe5, 0x64, - 0x97, 0x5d, 0x06, 0x92, 0x48, 0x6f, 0x56, 0x2a, 0xaa, 0x42, 0xae, 0xc2, 0x53, 0x09, 0x7a, 0xd9, - 0x6a, 0xb6, 0xd4, 0xcc, 0x76, 0x26, 0xaf, 0x90, 0x2b, 0xa9, 0xc4, 0x7d, 0xc3, 0x68, 0xa9, 0x59, - 0x3a, 0x44, 0x89, 0x04, 0x31, 0x01, 0x59, 0xf6, 0x5c, 0xf1, 0xbb, 0x0a, 0x5c, 0x66, 0xd5, 0x14, - 0xb3, 0x39, 0xac, 0xea, 0x35, 0xd8, 0xe2, 0x80, 0xa1, 0xd3, 0x2a, 0xba, 0x09, 0x6a, 0x2c, 0x95, - 0x55, 0xf3, 0x69, 0xd8, 0x88, 0x51, 0xb1, 0x1e, 0x19, 0xba, 0x56, 0x63, 0xe4, 0x5d, 0xc3, 0x76, - 0x5c, 0xa3, 0x52, 0x69, 0x5a, 0x0e, 0xab, 0x48, 0xb6, 0xa8, 0xc1, 0x46, 0xc9, 0x1b, 0x05, 0x54, - 0x07, 0xf1, 0xc7, 0xbd, 0x81, 0x8f, 0x55, 0x58, 0x85, 0x65, 0xe3, 0x6b, 0x8e, 0xd1, 0xb0, 0xcd, - 0x66, 0x43, 0xbd, 0x54, 0xbc, 0x96, 0xe0, 0x11, 0xab, 0xc6, 0xb6, 0xab, 0xea, 0xa5, 0x62, 0x07, - 0x56, 0x85, 0xf5, 0x31, 0x9b, 0x15, 0x3b, 0xb0, 0x2d, 0xe6, 0x1a, 0xae, 0xdf, 0x64, 0x13, 0xb6, - 0x60, 0x33, 0x9d, 0x6e, 0x38, 0xaa, 0x42, 0x47, 0x21, 0x91, 0x42, 0xe9, 0x99, 0xe2, 0x5f, 0x2b, - 0xb0, 0xc5, 0x23, 0xa3, 0xf2, 0x17, 0x04, 0x86, 0x51, 0x8e, 0x20, 0x7e, 0x45, 0xb8, 0xe5, 0x58, - 0x6d, 0xdb, 0x31, 0xca, 0x6e, 0xd9, 0x38, 0x30, 0x4b, 0x06, 0x4e, 0x17, 0xd3, 0x32, 0xea, 0x46, - 0xc3, 0x49, 0xfc, 0xf4, 0x4b, 0xf0, 0x85, 0x39, 0xbc, 0x8d, 0xa6, 0x23, 0xbe, 0xe9, 0x2a, 0xf9, - 0x02, 0x3c, 0x3f, 0x87, 0x39, 0x64, 0xcc, 0x14, 0xbf, 0x0e, 0x2b, 0xb1, 0xb8, 0x2b, 0x57, 0xe0, - 0x29, 0xf9, 0xbb, 0xe5, 0xf9, 0xdd, 0x9e, 0x7f, 0xa2, 0x5e, 0x4a, 0x26, 0x58, 0x13, 0xdf, 0xa7, - 0x09, 0xb8, 0x20, 0xe5, 0x04, 0xc7, 0x1b, 0x9d, 0xf5, 0xfc, 0x4e, 0xe0, 0x75, 0xd5, 0x4c, 0xf1, - 0x15, 0x58, 0x8d, 0xa1, 0x3d, 0xd2, 0x9e, 0xaf, 0x35, 0xf9, 0x7e, 0x55, 0x37, 0xca, 0x66, 0xbb, - 0xae, 0x2e, 0xd0, 0xa5, 0x58, 0x35, 0xf7, 0xaa, 0x2a, 0x14, 0x7f, 0xa0, 0x50, 0x89, 0x19, 0xfb, - 0xa7, 0x5e, 0xd1, 0xc5, 0x58, 0xd1, 0x79, 0xc2, 0x30, 0x64, 0x0d, 0xdb, 0x66, 0x8f, 0xd0, 0xd7, - 0x60, 0x8b, 0x7f, 0xb8, 0x7a, 0xa3, 0xec, 0x56, 0x75, 0xab, 0x7c, 0xa8, 0x5b, 0x74, 0xf2, 0x3c, - 0x50, 0x33, 0xb8, 0x22, 0x24, 0x8a, 0xeb, 0x34, 0xdb, 0xa5, 0xaa, 0x9a, 0xa5, 0x13, 0x30, 0x46, - 0x6f, 0x99, 0x0d, 0x35, 0x87, 0xeb, 0x2b, 0xc5, 0x8d, 0xc5, 0xd2, 0xf4, 0x85, 0xe2, 0xa7, 0x0a, - 0x5c, 0xb1, 0x7b, 0x27, 0x7e, 0x27, 0x98, 0x8c, 0x3c, 0xbd, 0x7f, 0x32, 0x18, 0xf5, 0x82, 0xd3, - 0x33, 0x7b, 0xd2, 0x0b, 0x3c, 0x72, 0x1b, 0x5e, 0xb0, 0xcd, 0xbd, 0x86, 0xee, 0xd0, 0xf5, 0xa1, - 0xd7, 0xf6, 0x9a, 0x96, 0xe9, 0x54, 0xeb, 0xae, 0xdd, 0x36, 0x53, 0x53, 0xe7, 0x26, 0x3c, 0x3b, - 0x9b, 0xb5, 0x66, 0xec, 0xe9, 0xa5, 0x07, 0xaa, 0x32, 0xbf, 0xc0, 0x5d, 0xbd, 0xa6, 0x37, 0x4a, - 0x46, 0xd9, 0x3d, 0xb8, 0xa3, 0x66, 0xc8, 0x0b, 0xf0, 0xdc, 0x6c, 0xd6, 0x8a, 0xd9, 0xb2, 0x29, - 0x5b, 0x76, 0xfe, 0xef, 0x56, 0xed, 0x3a, 0xe5, 0xca, 0x15, 0x7b, 0xa0, 0x26, 0x9d, 0xd5, 0x53, - 0x26, 0x0f, 0x56, 0xbb, 0xd1, 0x60, 0xbb, 0xe4, 0x3a, 0x14, 0x9a, 0x4e, 0xd5, 0xb0, 0x38, 0x94, - 0x31, 0x62, 0x17, 0xb7, 0x1b, 0x7a, 0xdb, 0xa9, 0x36, 0x2d, 0xf3, 0x3d, 0xdc, 0x2e, 0xb7, 0x60, - 0xd3, 0xae, 0xe9, 0xa5, 0x7d, 0x9c, 0x99, 0x66, 0xc3, 0x2d, 0x55, 0xf5, 0x46, 0xc3, 0xa8, 0xa9, - 0x50, 0xfc, 0x2b, 0x85, 0xd9, 0x1e, 0x4c, 0xf3, 0x6a, 0x23, 0x5f, 0x84, 0x17, 0x9b, 0xfb, 0x8e, - 0xee, 0xb6, 0x6a, 0xed, 0x3d, 0xb3, 0xe1, 0xda, 0x0f, 0x1a, 0x25, 0x71, 0x90, 0x96, 0xd2, 0x3b, - 0xca, 0x8b, 0x70, 0x73, 0x2e, 0x77, 0x04, 0x3a, 0x7c, 0x0b, 0xb4, 0xb9, 0x9c, 0xbc, 0x21, 0xc5, - 0x9f, 0x28, 0x70, 0x75, 0xce, 0x5b, 0x21, 0x79, 0x19, 0x6e, 0x57, 0x0d, 0xbd, 0x5c, 0x33, 0x6c, - 0xdb, 0xa5, 0xed, 0x35, 0x1a, 0x0e, 0x37, 0x8d, 0x98, 0xba, 0x5f, 0xdc, 0x86, 0x17, 0xe6, 0xb3, - 0x47, 0x27, 0xcf, 0x8b, 0x70, 0x73, 0x3e, 0x2b, 0x3f, 0x89, 0x32, 0x74, 0xd7, 0x98, 0xcf, 0x19, - 0x9e, 0x60, 0xd9, 0xe2, 0xf7, 0x15, 0xb8, 0x3c, 0x5d, 0x61, 0xa7, 0x75, 0x33, 0x1b, 0xb6, 0xa3, - 0xd7, 0x6a, 0x6e, 0x4b, 0xb7, 0xf4, 0xba, 0x6b, 0x34, 0xac, 0x66, 0xad, 0x36, 0x6d, 0xe7, 0xbe, - 0x09, 0xcf, 0xce, 0x66, 0xb5, 0x4b, 0x96, 0xd9, 0xa2, 0x5b, 0xa0, 0x06, 0x3b, 0xb3, 0xb9, 0x0c, - 0xb3, 0x64, 0xa8, 0x99, 0xdd, 0xb7, 0x7f, 0xf4, 0xaf, 0x3b, 0x97, 0x7e, 0xf4, 0xe9, 0x8e, 0xf2, - 0xd3, 0x4f, 0x77, 0x94, 0x7f, 0xf9, 0x74, 0x47, 0x79, 0xef, 0xa5, 0x0b, 0x84, 0x75, 0x7f, 0xb8, - 0x88, 0xb6, 0x40, 0x77, 0xff, 0x27, 0x00, 0x00, 0xff, 0xff, 0xe6, 0x55, 0xc4, 0x80, 0x67, 0xa1, - 0x01, 0x00, + // 28278 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xfd, 0x6b, 0x70, 0x1c, 0x59, + 0x76, 0x20, 0x06, 0x77, 0x55, 0xe1, 0x51, 0x38, 0x78, 0x15, 0x2e, 0x40, 0x12, 0x44, 0x93, 0x2c, + 0x76, 0xb2, 0x9b, 0x4d, 0xf6, 0x83, 0x1c, 0x82, 0xd3, 0x9c, 0xe9, 0xe9, 0xd7, 0x14, 0x50, 0x20, + 0x51, 0x24, 0x08, 0x60, 0xb2, 0x40, 0x72, 0x5a, 0xf3, 0xc8, 0x49, 0x54, 0x5d, 0x00, 0xd9, 0xac, + 0xaa, 0xac, 0xc9, 0xcc, 0x22, 0x08, 0x49, 0xfb, 0xad, 0x9e, 0xab, 0x4f, 0x5e, 0xeb, 0x2d, 0x59, + 0x5a, 0x87, 0x56, 0xa1, 0x90, 0x77, 0x6d, 0x79, 0x1d, 0xab, 0xb0, 0x25, 0x2b, 0xbc, 0x0e, 0x85, + 0xb5, 0x92, 0x43, 0x96, 0x15, 0xf2, 0xc6, 0x5a, 0x11, 0xde, 0xb5, 0xc3, 0x63, 0x05, 0x64, 0x59, + 0xfb, 0xc3, 0x81, 0x08, 0x47, 0x48, 0xde, 0x08, 0x3f, 0xc6, 0xa1, 0xb5, 0xe3, 0x9e, 0xfb, 0xc8, + 0x7b, 0xb3, 0xb2, 0x0a, 0x85, 0x6e, 0xf6, 0xae, 0x38, 0xa1, 0x3f, 0x24, 0xea, 0xdc, 0x73, 0xce, + 0x7d, 0xe6, 0xbd, 0xe7, 0xdc, 0x7b, 0x1e, 0xf0, 0x52, 0x44, 0x1b, 0xb4, 0xed, 0x07, 0xd1, 0xf5, + 0x06, 0xdd, 0x75, 0x6b, 0x07, 0xd7, 0xa3, 0x83, 0x36, 0x0d, 0xf9, 0xbf, 0xd7, 0xda, 0x81, 0x1f, + 0xf9, 0x64, 0x18, 0x7f, 0x2c, 0xcc, 0xed, 0xfa, 0xbb, 0x3e, 0x42, 0xae, 0xb3, 0xbf, 0x78, 0xe1, + 0xc2, 0x85, 0x5d, 0xdf, 0xdf, 0x6d, 0xd0, 0xeb, 0xf8, 0x6b, 0xbb, 0xb3, 0x73, 0xbd, 0xde, 0x09, + 0xdc, 0xc8, 0xf3, 0x5b, 0xa2, 0xbc, 0x98, 0x2c, 0x8f, 0xbc, 0x26, 0x0d, 0x23, 0xb7, 0xd9, 0xee, + 0xc5, 0x60, 0x3f, 0x70, 0xdb, 0x6d, 0x1a, 0x88, 0xda, 0x17, 0xae, 0xaa, 0x06, 0xba, 0x51, 0xc4, + 0x28, 0x19, 0xf3, 0xeb, 0x4f, 0x6e, 0xe8, 0x3f, 0x05, 0xea, 0x9b, 0xe9, 0x7d, 0x91, 0x0c, 0x13, + 0x9c, 0xad, 0x5f, 0xca, 0xc1, 0xd8, 0x3d, 0x4a, 0xdb, 0xa5, 0x86, 0xf7, 0x84, 0x92, 0x4b, 0x30, + 0xb4, 0xee, 0x36, 0xe9, 0x7c, 0xe6, 0x62, 0xe6, 0xca, 0xd8, 0xd2, 0xf4, 0xd1, 0x61, 0x71, 0x3c, + 0xa4, 0xc1, 0x13, 0x1a, 0x38, 0x2d, 0xb7, 0x49, 0x6d, 0x2c, 0x24, 0xaf, 0xc3, 0x18, 0xfb, 0x3f, + 0x6c, 0xbb, 0x35, 0x3a, 0x9f, 0x45, 0xcc, 0xc9, 0xa3, 0xc3, 0xe2, 0x58, 0x4b, 0x02, 0xed, 0xb8, + 0x9c, 0x54, 0x60, 0x74, 0xe5, 0x69, 0xdb, 0x0b, 0x68, 0x38, 0x3f, 0x74, 0x31, 0x73, 0x65, 0x7c, + 0x71, 0xe1, 0x1a, 0xef, 0xeb, 0x35, 0xd9, 0xd7, 0x6b, 0x5b, 0x72, 0x30, 0x96, 0x66, 0xff, 0xe0, + 0xb0, 0xf8, 0xc2, 0xd1, 0x61, 0x71, 0x94, 0x72, 0x92, 0x9f, 0xfc, 0x93, 0x62, 0xc6, 0x96, 0xf4, + 0xe4, 0x5d, 0x18, 0xda, 0x3a, 0x68, 0xd3, 0xf9, 0xb1, 0x8b, 0x99, 0x2b, 0x53, 0x8b, 0x17, 0xae, + 0xf1, 0xe9, 0x51, 0x8d, 0x8f, 0xff, 0x62, 0x58, 0x4b, 0xf9, 0xa3, 0xc3, 0xe2, 0x10, 0x43, 0xb1, + 0x91, 0x8a, 0xbc, 0x09, 0x23, 0xab, 0x7e, 0x18, 0x55, 0xca, 0xf3, 0x80, 0x4d, 0x3e, 0x75, 0x74, + 0x58, 0x9c, 0xd9, 0xf3, 0xc3, 0xc8, 0xf1, 0xea, 0x6f, 0xf8, 0x4d, 0x2f, 0xa2, 0xcd, 0x76, 0x74, + 0x60, 0x0b, 0x24, 0xeb, 0x29, 0x4c, 0x1a, 0xfc, 0xc8, 0x38, 0x8c, 0x3e, 0x58, 0xbf, 0xb7, 0xbe, + 0xf1, 0x68, 0xbd, 0xf0, 0x02, 0xc9, 0xc3, 0xd0, 0xfa, 0x46, 0x79, 0xa5, 0x90, 0x21, 0xa3, 0x90, + 0x2b, 0x6d, 0x6e, 0x16, 0xb2, 0x64, 0x02, 0xf2, 0xe5, 0xd2, 0x56, 0x69, 0xa9, 0x54, 0x5d, 0x29, + 0xe4, 0xc8, 0x2c, 0x4c, 0x3f, 0xaa, 0xac, 0x97, 0x37, 0x1e, 0x55, 0x9d, 0xf2, 0x4a, 0xf5, 0xde, + 0xd6, 0xc6, 0x66, 0x61, 0x88, 0x4c, 0x01, 0xdc, 0x7b, 0xb0, 0xb4, 0x62, 0xaf, 0xaf, 0x6c, 0xad, + 0x54, 0x0b, 0xc3, 0x64, 0x0e, 0x0a, 0x92, 0xc4, 0xa9, 0xae, 0xd8, 0x0f, 0x2b, 0xcb, 0x2b, 0x85, + 0x91, 0xbb, 0x43, 0xf9, 0x5c, 0x61, 0xc8, 0x1e, 0x5d, 0xa3, 0x6e, 0x48, 0x2b, 0x65, 0xeb, 0xdf, + 0xcb, 0x41, 0xfe, 0x3e, 0x8d, 0xdc, 0xba, 0x1b, 0xb9, 0xe4, 0x9c, 0x31, 0x3f, 0xd8, 0x45, 0x6d, + 0x62, 0x2e, 0x75, 0x4f, 0xcc, 0xf0, 0xd1, 0x61, 0x31, 0xf3, 0xa6, 0x3e, 0x21, 0xef, 0xc0, 0x78, + 0x99, 0x86, 0xb5, 0xc0, 0x6b, 0xb3, 0x45, 0x33, 0x9f, 0x43, 0xb4, 0xb3, 0x47, 0x87, 0xc5, 0x53, + 0xf5, 0x18, 0xac, 0x0d, 0x88, 0x8e, 0x4d, 0x2a, 0x30, 0xb2, 0xe6, 0x6e, 0xd3, 0x46, 0x38, 0x3f, + 0x7c, 0x31, 0x77, 0x65, 0x7c, 0xf1, 0x45, 0x31, 0x09, 0xb2, 0x81, 0xd7, 0x78, 0xe9, 0x4a, 0x2b, + 0x0a, 0x0e, 0x96, 0xe6, 0x8e, 0x0e, 0x8b, 0x85, 0x06, 0x02, 0xf4, 0x01, 0xe6, 0x28, 0xa4, 0x1a, + 0x2f, 0x8c, 0x91, 0x63, 0x17, 0xc6, 0xf9, 0x3f, 0x38, 0x2c, 0x66, 0xd8, 0x84, 0x89, 0x85, 0x11, + 0xf3, 0x33, 0x97, 0xc8, 0x22, 0xe4, 0x6d, 0xfa, 0xc4, 0x0b, 0x59, 0xcf, 0xf2, 0xd8, 0xb3, 0xd3, + 0x47, 0x87, 0x45, 0x12, 0x08, 0x98, 0xd6, 0x0c, 0x85, 0xb7, 0xf0, 0x36, 0x8c, 0x6b, 0xad, 0x26, + 0x05, 0xc8, 0x3d, 0xa6, 0x07, 0x7c, 0x84, 0x6d, 0xf6, 0x27, 0x99, 0x83, 0xe1, 0x27, 0x6e, 0xa3, + 0x23, 0x86, 0xd4, 0xe6, 0x3f, 0xbe, 0x90, 0xfd, 0x7c, 0xe6, 0xee, 0x50, 0x7e, 0xb4, 0x90, 0xb7, + 0xb3, 0x95, 0xb2, 0xf5, 0xd3, 0x43, 0x90, 0xb7, 0x7d, 0xfe, 0x21, 0x92, 0xab, 0x30, 0x5c, 0x8d, + 0xdc, 0x48, 0x4e, 0xd3, 0xec, 0xd1, 0x61, 0x71, 0x9a, 0x7d, 0xa4, 0x54, 0xab, 0x9f, 0x63, 0x30, + 0xd4, 0xcd, 0x3d, 0x37, 0x94, 0xd3, 0x85, 0xa8, 0x6d, 0x06, 0xd0, 0x51, 0x11, 0x83, 0x5c, 0x86, + 0xa1, 0xfb, 0x7e, 0x9d, 0x8a, 0x19, 0x23, 0x47, 0x87, 0xc5, 0xa9, 0xa6, 0x5f, 0xd7, 0x11, 0xb1, + 0x9c, 0xbc, 0x01, 0x63, 0xcb, 0x9d, 0x20, 0xa0, 0x2d, 0xb6, 0xd6, 0x87, 0x10, 0x79, 0xea, 0xe8, + 0xb0, 0x08, 0x35, 0x0e, 0x74, 0xbc, 0xba, 0x1d, 0x23, 0xb0, 0x69, 0xa8, 0x46, 0x6e, 0x10, 0xd1, + 0xfa, 0xfc, 0xf0, 0x40, 0xd3, 0xc0, 0xbe, 0xcf, 0x99, 0x90, 0x93, 0x24, 0xa7, 0x41, 0x70, 0x22, + 0xab, 0x30, 0x7e, 0x27, 0x70, 0x6b, 0x74, 0x93, 0x06, 0x9e, 0x5f, 0xc7, 0xf9, 0xcd, 0x2d, 0x5d, + 0x3e, 0x3a, 0x2c, 0x9e, 0xde, 0x65, 0x60, 0xa7, 0x8d, 0xf0, 0x98, 0xfa, 0xdb, 0x87, 0xc5, 0x7c, + 0x59, 0x6c, 0x99, 0xb6, 0x4e, 0x4a, 0xbe, 0xc1, 0x26, 0x27, 0x8c, 0x70, 0x68, 0x69, 0x7d, 0x7e, + 0xf4, 0xd8, 0x26, 0x5a, 0xa2, 0x89, 0xa7, 0x1b, 0x6e, 0x18, 0x39, 0x01, 0xa7, 0x4b, 0xb4, 0x53, + 0x67, 0x49, 0x36, 0x20, 0x5f, 0xad, 0xed, 0xd1, 0x7a, 0xa7, 0x41, 0x71, 0xc9, 0x8c, 0x2f, 0x9e, + 0x11, 0x8b, 0x5a, 0xce, 0xa7, 0x2c, 0x5e, 0x5a, 0x10, 0xbc, 0x49, 0x28, 0x20, 0xfa, 0x7a, 0x92, + 0x58, 0x5f, 0xc8, 0xff, 0xc2, 0x2f, 0x17, 0x5f, 0xf8, 0xbe, 0x3f, 0xbe, 0xf8, 0x82, 0xf5, 0x9f, + 0x65, 0xa1, 0x90, 0x64, 0x42, 0x76, 0x60, 0xf2, 0x41, 0xbb, 0xee, 0x46, 0x74, 0xb9, 0xe1, 0xd1, + 0x56, 0x14, 0xe2, 0x22, 0xe9, 0xdf, 0xa7, 0x97, 0x45, 0xbd, 0xf3, 0x1d, 0x24, 0x74, 0x6a, 0x9c, + 0x32, 0xd1, 0x2b, 0x93, 0x6d, 0x5c, 0x4f, 0x15, 0x37, 0xf0, 0x10, 0x57, 0xd8, 0xc9, 0xea, 0xe1, + 0x5b, 0x7f, 0x8f, 0x7a, 0x04, 0x5b, 0xb1, 0x80, 0x5a, 0xf5, 0xed, 0x03, 0x5c, 0x99, 0x83, 0x2f, + 0x20, 0x46, 0x92, 0xb2, 0x80, 0x18, 0xd8, 0xfa, 0x17, 0x19, 0x98, 0xb2, 0x69, 0xe8, 0x77, 0x82, + 0x1a, 0x5d, 0xa5, 0x6e, 0x9d, 0x06, 0x6c, 0xf9, 0xdf, 0xf3, 0x5a, 0x75, 0xf1, 0x4d, 0xe1, 0xf2, + 0x7f, 0xec, 0xb5, 0xf4, 0xad, 0x1b, 0xcb, 0xc9, 0x67, 0x60, 0xb4, 0xda, 0xd9, 0x46, 0xd4, 0x6c, + 0xbc, 0x03, 0x84, 0x9d, 0x6d, 0x27, 0x81, 0x2e, 0xd1, 0xc8, 0x75, 0x18, 0x7d, 0x48, 0x83, 0x30, + 0xde, 0x0d, 0xf1, 0x68, 0x78, 0xc2, 0x41, 0x3a, 0x81, 0xc0, 0x22, 0x77, 0xe2, 0x1d, 0x59, 0x1c, + 0x6a, 0xd3, 0x89, 0x7d, 0x30, 0x5e, 0x2a, 0x4d, 0x01, 0xd1, 0x97, 0x8a, 0xc4, 0xb2, 0x7e, 0x2a, + 0x0b, 0x85, 0xb2, 0x1b, 0xb9, 0xdb, 0x6e, 0x28, 0xc6, 0xf3, 0xe1, 0x4d, 0xb6, 0xc7, 0x6b, 0x1d, + 0xc5, 0x3d, 0x9e, 0xb5, 0xfc, 0x63, 0x77, 0xef, 0x95, 0x64, 0xf7, 0xc6, 0xd9, 0x09, 0x2b, 0xba, + 0x17, 0x77, 0xea, 0xbd, 0xe3, 0x3b, 0x55, 0x10, 0x9d, 0xca, 0xcb, 0x4e, 0xc5, 0x5d, 0x21, 0xef, + 0xc1, 0x50, 0xb5, 0x4d, 0x6b, 0x62, 0x13, 0x91, 0xe7, 0x82, 0xd9, 0x39, 0x86, 0xf0, 0xf0, 0xe6, + 0xd2, 0x84, 0x60, 0x33, 0x14, 0xb6, 0x69, 0xcd, 0x46, 0x32, 0xed, 0xa3, 0xf9, 0x47, 0x39, 0x98, + 0x4b, 0x23, 0xd3, 0xfb, 0x31, 0xd2, 0xa7, 0x1f, 0x57, 0x20, 0xcf, 0x8e, 0x70, 0x76, 0x2c, 0xe2, + 0x76, 0x31, 0xb6, 0x34, 0xc1, 0x9a, 0xbc, 0x27, 0x60, 0xb6, 0x2a, 0x25, 0x97, 0x94, 0x44, 0x90, + 0x8f, 0xf9, 0x09, 0x89, 0x40, 0xca, 0x01, 0x6c, 0xae, 0xe5, 0x27, 0x8c, 0x82, 0x43, 0x3c, 0x2c, + 0x12, 0x1c, 0xcf, 0x75, 0x20, 0x20, 0xc6, 0x31, 0x23, 0x0f, 0x85, 0x15, 0xc8, 0xcb, 0x6e, 0xcd, + 0x4f, 0x20, 0xa3, 0x99, 0xc4, 0x20, 0x3d, 0xbc, 0xc9, 0x27, 0xb3, 0x2e, 0x7e, 0xeb, 0x6c, 0x24, + 0x0e, 0xb9, 0x09, 0xf9, 0xcd, 0xc0, 0x7f, 0x7a, 0x50, 0x29, 0x87, 0xf3, 0x93, 0x17, 0x73, 0x57, + 0xc6, 0x96, 0xce, 0x1c, 0x1d, 0x16, 0x67, 0xdb, 0x0c, 0xe6, 0x78, 0x75, 0xfd, 0xa4, 0x55, 0x88, + 0x77, 0x87, 0xf2, 0x99, 0x42, 0xf6, 0xee, 0x50, 0x3e, 0x5b, 0xc8, 0x71, 0xf1, 0xe2, 0xee, 0x50, + 0x7e, 0xa8, 0x30, 0x7c, 0x77, 0x28, 0x3f, 0x8c, 0x02, 0xc7, 0x58, 0x01, 0xee, 0x0e, 0xe5, 0xc7, + 0x0b, 0x13, 0xc6, 0x69, 0x8f, 0x0c, 0x22, 0xbf, 0xe6, 0x37, 0xec, 0xdc, 0x03, 0xbb, 0x62, 0x8f, + 0x2c, 0x97, 0x96, 0x69, 0x10, 0xd9, 0xb9, 0xd2, 0xa3, 0xaa, 0x3d, 0x59, 0x3e, 0x68, 0xb9, 0x4d, + 0xaf, 0xc6, 0x8f, 0x4e, 0x3b, 0x77, 0x67, 0x79, 0xd3, 0x2a, 0xc1, 0x54, 0xdc, 0x97, 0x35, 0x2f, + 0x8c, 0xc8, 0x75, 0x18, 0x93, 0x10, 0xb6, 0xd1, 0xe5, 0x52, 0x7b, 0x6d, 0xc7, 0x38, 0xd6, 0xef, + 0x67, 0x01, 0xe2, 0x92, 0xe7, 0xf4, 0x5b, 0xf8, 0x9c, 0xf1, 0x2d, 0x9c, 0x4a, 0x7e, 0x0b, 0x3d, + 0xbf, 0x02, 0xf2, 0x01, 0x8c, 0x30, 0xb1, 0xa0, 0x23, 0x45, 0xa2, 0x33, 0x49, 0x52, 0x2c, 0x7c, + 0x78, 0x73, 0x69, 0x4a, 0x10, 0x8f, 0x84, 0x08, 0xb1, 0x05, 0x99, 0xf6, 0x19, 0xfd, 0xd2, 0x68, + 0x3c, 0x19, 0xe2, 0x03, 0xba, 0x02, 0x6a, 0x42, 0xc5, 0x80, 0xe2, 0x97, 0xd1, 0x96, 0x93, 0xac, + 0x4a, 0xc9, 0x59, 0x60, 0x13, 0x2e, 0x06, 0x75, 0xf4, 0xe8, 0xb0, 0x98, 0xeb, 0x04, 0x1e, 0x2e, + 0x02, 0x72, 0x1d, 0xc4, 0x32, 0x10, 0x03, 0xc8, 0x56, 0xdf, 0x4c, 0xcd, 0x75, 0x6a, 0x34, 0x88, + 0xe2, 0x11, 0x9f, 0xcf, 0xc8, 0xd5, 0x42, 0xda, 0x60, 0x2e, 0x95, 0xf9, 0x21, 0x5c, 0x06, 0x57, + 0x52, 0x47, 0xe5, 0x9a, 0x81, 0xca, 0xc5, 0xc8, 0x8b, 0xf2, 0x54, 0xaa, 0xf3, 0x32, 0xa7, 0x4b, + 0xa4, 0x34, 0x2b, 0x20, 0x37, 0x81, 0xad, 0x50, 0x31, 0xfa, 0x20, 0xea, 0x29, 0x3d, 0xaa, 0x2e, + 0x9d, 0x12, 0x9c, 0x26, 0xdd, 0x7d, 0x9d, 0x9c, 0x61, 0x93, 0x77, 0x80, 0x2d, 0x61, 0x31, 0xee, + 0x44, 0x10, 0xdd, 0x59, 0xde, 0x5c, 0x6e, 0xf8, 0x9d, 0x7a, 0xf5, 0x4b, 0x6b, 0x31, 0xf1, 0x6e, + 0xad, 0xad, 0x13, 0xdf, 0x59, 0xde, 0x24, 0xef, 0xc0, 0x70, 0xe9, 0xbb, 0x3b, 0x01, 0x15, 0xf2, + 0xc9, 0x84, 0xac, 0x93, 0xc1, 0x96, 0xce, 0x08, 0xc2, 0x69, 0x97, 0xfd, 0xd4, 0xe5, 0x3a, 0x2c, + 0x67, 0x35, 0x6f, 0xad, 0x55, 0x85, 0xec, 0x41, 0x12, 0xc3, 0xb2, 0xb5, 0xa6, 0x35, 0x3b, 0x32, + 0x7a, 0xcd, 0xa8, 0xc8, 0x75, 0xc8, 0x96, 0xca, 0xa8, 0x11, 0x8d, 0x2f, 0x8e, 0xc9, 0x6a, 0xcb, + 0x4b, 0x73, 0x82, 0x64, 0xc2, 0xd5, 0x3f, 0x83, 0x6c, 0xa9, 0x4c, 0x96, 0x60, 0xf8, 0xfe, 0x41, + 0xf5, 0x4b, 0x6b, 0x62, 0x33, 0x9b, 0x95, 0xeb, 0x9a, 0xc1, 0x36, 0xf0, 0xb3, 0x0f, 0xe3, 0x16, + 0x37, 0x0f, 0xc2, 0x6f, 0x36, 0xf4, 0x16, 0x23, 0x1a, 0xd9, 0x84, 0xb1, 0x52, 0xbd, 0xe9, 0xb5, + 0x1e, 0x84, 0x34, 0x98, 0x1f, 0x47, 0x3e, 0xf3, 0x89, 0x76, 0xab, 0xf2, 0xa5, 0xf9, 0xa3, 0xc3, + 0xe2, 0x9c, 0xcb, 0x7e, 0x3a, 0x9d, 0x90, 0x06, 0x1a, 0xb7, 0x98, 0x09, 0xd9, 0x04, 0xb8, 0xef, + 0xb7, 0x76, 0xfd, 0x52, 0xd4, 0x70, 0xc3, 0xc4, 0xf6, 0x18, 0x17, 0x28, 0xf1, 0xe1, 0x54, 0x93, + 0xc1, 0x1c, 0x97, 0x01, 0x35, 0x86, 0x1a, 0x0f, 0x72, 0x1b, 0x46, 0x36, 0x02, 0xb7, 0xd6, 0xa0, + 0xf3, 0x93, 0xc8, 0x6d, 0x4e, 0x70, 0xe3, 0x40, 0xd9, 0xd3, 0x79, 0xc1, 0xb0, 0xe0, 0x23, 0x58, + 0x57, 0x53, 0x38, 0xe2, 0xc2, 0x23, 0x20, 0xdd, 0x6b, 0x32, 0x45, 0x49, 0x78, 0x5d, 0x57, 0x12, + 0xe2, 0x8f, 0x7e, 0xd9, 0x6f, 0x36, 0xdd, 0x56, 0x1d, 0x69, 0x1f, 0x2e, 0x6a, 0xba, 0x83, 0xf5, + 0x4d, 0x98, 0xe9, 0x1a, 0xac, 0x63, 0xf4, 0xbb, 0xf7, 0x61, 0xba, 0x4c, 0x77, 0xdc, 0x4e, 0x23, + 0x52, 0x27, 0x09, 0xff, 0x44, 0x51, 0xd3, 0xaa, 0xf3, 0x22, 0x47, 0x1e, 0x1f, 0x76, 0x12, 0xd9, + 0x7a, 0x0f, 0x26, 0x8d, 0xee, 0x33, 0x55, 0xa1, 0xd4, 0xa9, 0x7b, 0x11, 0x4e, 0x64, 0x26, 0x56, + 0x15, 0x5c, 0x06, 0xc4, 0xe9, 0xb2, 0x63, 0x04, 0xeb, 0xef, 0xe9, 0xd2, 0x8a, 0xd8, 0x89, 0x98, + 0x5a, 0x2d, 0xf6, 0x83, 0x4c, 0x2c, 0x3b, 0x75, 0xed, 0x07, 0x6a, 0x37, 0xb8, 0xca, 0xbf, 0xcd, + 0x6c, 0xd7, 0xb7, 0x39, 0x2e, 0x66, 0x22, 0xe7, 0xee, 0x87, 0xfc, 0x8b, 0x54, 0x2b, 0x35, 0xf7, + 0xf1, 0x57, 0xea, 0x07, 0x30, 0x71, 0xdf, 0x6d, 0xb9, 0xbb, 0xb4, 0xce, 0x7a, 0xc0, 0xf7, 0x9e, + 0xb1, 0xa5, 0x17, 0x8f, 0x0e, 0x8b, 0x67, 0x9a, 0x1c, 0x8e, 0xbd, 0xd4, 0x17, 0x91, 0x41, 0x40, + 0x6e, 0xc8, 0x2f, 0x7b, 0x38, 0xe5, 0xcb, 0x9e, 0x14, 0xb5, 0x0f, 0xe3, 0x97, 0x2d, 0xbe, 0x67, + 0xeb, 0x77, 0xc6, 0xb0, 0x8f, 0xe4, 0x0d, 0x18, 0xb1, 0xe9, 0x2e, 0x3b, 0x6a, 0x32, 0xf1, 0x24, + 0x05, 0x08, 0xd1, 0x07, 0x86, 0xe3, 0xa0, 0x9c, 0x41, 0xeb, 0xe1, 0x9e, 0xb7, 0x13, 0x89, 0xd1, + 0x51, 0x72, 0x86, 0x00, 0x6b, 0x72, 0x86, 0x80, 0x98, 0xea, 0x2c, 0x87, 0xb1, 0xdd, 0xcf, 0x2e, + 0x57, 0xc5, 0xa0, 0xc9, 0x11, 0xb6, 0xcb, 0xda, 0x36, 0x12, 0x18, 0x52, 0x02, 0xc3, 0x26, 0xb7, + 0x60, 0xac, 0x54, 0xab, 0xf9, 0x1d, 0x4d, 0x67, 0xe4, 0xdf, 0x2d, 0x07, 0x9a, 0x57, 0x24, 0x31, + 0x2a, 0xa9, 0xc2, 0xf8, 0x0a, 0x53, 0xb4, 0xbc, 0x65, 0xb7, 0xb6, 0x27, 0x07, 0x49, 0xee, 0x61, + 0x5a, 0x49, 0xfc, 0xe5, 0x52, 0x04, 0xd6, 0x18, 0x50, 0xbf, 0x64, 0xd0, 0x70, 0xc9, 0x16, 0x8c, + 0x57, 0x69, 0x2d, 0xa0, 0x51, 0x35, 0xf2, 0x03, 0x9a, 0xd8, 0x92, 0xb5, 0x92, 0xa5, 0x0b, 0x52, + 0xd7, 0x0b, 0x11, 0xe8, 0x84, 0x0c, 0xaa, 0x73, 0xd5, 0x90, 0xb9, 0xd0, 0xde, 0xf4, 0x83, 0x83, + 0xf2, 0x92, 0xd8, 0xa6, 0xe3, 0x33, 0x9d, 0x83, 0x75, 0xa1, 0x9d, 0x41, 0xea, 0xdb, 0xa6, 0xd0, + 0xce, 0xb1, 0x70, 0xa6, 0xca, 0x55, 0x94, 0xad, 0xc4, 0xa6, 0x3d, 0x1d, 0x8f, 0x32, 0x82, 0xb5, + 0x99, 0xaa, 0x87, 0x28, 0x99, 0x19, 0x33, 0x25, 0xb0, 0x48, 0x1b, 0x88, 0x9c, 0x35, 0x2e, 0xe8, + 0x36, 0x68, 0x18, 0x8a, 0xbd, 0xfc, 0x6c, 0x62, 0xf2, 0x63, 0x84, 0xa5, 0x57, 0x04, 0xf3, 0xf3, + 0x72, 0x19, 0x08, 0x3d, 0x8d, 0x15, 0x6a, 0xf5, 0xa4, 0xf0, 0x26, 0x6f, 0x03, 0xac, 0x3c, 0x8d, + 0x68, 0xd0, 0x72, 0x1b, 0xea, 0x1e, 0x0c, 0xaf, 0x7e, 0xa8, 0x80, 0x9a, 0x13, 0xad, 0x21, 0x93, + 0x65, 0x98, 0x2c, 0x85, 0x61, 0xa7, 0x49, 0x6d, 0xbf, 0x41, 0x4b, 0xf6, 0x3a, 0xee, 0xfb, 0x63, + 0x4b, 0xe7, 0x8f, 0x0e, 0x8b, 0x67, 0x5d, 0x2c, 0x70, 0x02, 0xbf, 0x41, 0x1d, 0x37, 0xd0, 0x57, + 0xb7, 0x49, 0x43, 0x36, 0x00, 0x36, 0xda, 0xb4, 0x55, 0xa5, 0x6e, 0x50, 0xdb, 0x4b, 0x6c, 0xf3, + 0x71, 0xc1, 0xd2, 0x39, 0xd1, 0xc3, 0x39, 0xbf, 0x4d, 0x5b, 0x21, 0xc2, 0xf4, 0x56, 0xc5, 0x98, + 0xe4, 0x11, 0x4c, 0x57, 0x4a, 0xf7, 0x37, 0xfd, 0x86, 0x57, 0x3b, 0x10, 0x92, 0xd3, 0x14, 0xde, + 0x0e, 0x9e, 0x16, 0x5c, 0x13, 0xa5, 0x7c, 0x7b, 0xf2, 0xdc, 0xa6, 0xd3, 0x46, 0xa8, 0x23, 0xe4, + 0xa7, 0x24, 0x17, 0xf2, 0x21, 0x5b, 0x83, 0x21, 0x13, 0x06, 0xb7, 0xdc, 0xdd, 0x70, 0x7e, 0xda, + 0xb8, 0xed, 0x2a, 0x3d, 0xaa, 0x5e, 0xd3, 0x4a, 0xb9, 0x98, 0xb2, 0xc0, 0x17, 0x22, 0x42, 0x9d, + 0xc8, 0xdd, 0x0d, 0xcd, 0x85, 0xa8, 0xb0, 0xc9, 0x5d, 0x80, 0xb2, 0x5f, 0xeb, 0x34, 0x69, 0x2b, + 0x2a, 0x2f, 0xcd, 0x17, 0x4c, 0x55, 0x40, 0x15, 0xc4, 0x5b, 0x5b, 0xdd, 0xaf, 0x19, 0x2b, 0x51, + 0xa3, 0x5e, 0x78, 0x1f, 0x0a, 0xc9, 0x86, 0x9c, 0xf0, 0x02, 0x6b, 0xb2, 0x30, 0xa5, 0xf5, 0x7e, + 0xe5, 0xa9, 0x17, 0x46, 0xa1, 0xf5, 0x3d, 0xc6, 0x17, 0xc8, 0x76, 0x87, 0x7b, 0xf4, 0x60, 0x33, + 0xa0, 0x3b, 0xde, 0x53, 0xb1, 0x99, 0xe1, 0xee, 0xf0, 0x98, 0x1e, 0x38, 0x6d, 0x84, 0xea, 0xbb, + 0x83, 0x42, 0x25, 0x9f, 0x85, 0xfc, 0xbd, 0xfb, 0xd5, 0x7b, 0xf4, 0xa0, 0x52, 0x16, 0x07, 0x15, + 0x27, 0x6b, 0x86, 0x0e, 0x23, 0x35, 0xd6, 0x9a, 0xc2, 0xb4, 0x96, 0xe2, 0x9d, 0x90, 0xd5, 0xbc, + 0xdc, 0xe8, 0x84, 0x11, 0x0d, 0x2a, 0x65, 0xbd, 0xe6, 0x1a, 0x07, 0x26, 0xf6, 0x25, 0x85, 0x6a, + 0xfd, 0xa3, 0x2c, 0xee, 0x82, 0x6c, 0xc1, 0x57, 0x5a, 0x61, 0xe4, 0xb6, 0x6a, 0x54, 0x31, 0xc0, + 0x05, 0xef, 0x09, 0x68, 0x62, 0xc1, 0xc7, 0xc8, 0x66, 0xd5, 0xd9, 0x81, 0xab, 0x66, 0x55, 0xca, + 0x9b, 0x8b, 0x4a, 0x59, 0xbf, 0x5e, 0x0d, 0x04, 0x34, 0x51, 0x65, 0x8c, 0x4c, 0x2e, 0xc3, 0x68, + 0xa5, 0x74, 0xbf, 0xd4, 0x89, 0xf6, 0x70, 0x0f, 0xce, 0x73, 0xf9, 0x9c, 0xad, 0x56, 0xb7, 0x13, + 0xed, 0xd9, 0xb2, 0x90, 0x5c, 0x47, 0xbd, 0xa7, 0x45, 0x23, 0x7e, 0x0d, 0x2b, 0x0e, 0xdd, 0x90, + 0x83, 0x12, 0x6a, 0x0f, 0x03, 0x91, 0xd7, 0x60, 0xf8, 0xe1, 0xe6, 0x72, 0xa5, 0x2c, 0x14, 0x67, + 0x3c, 0x89, 0x9e, 0xb4, 0x6b, 0x66, 0x4b, 0x38, 0x8a, 0xf5, 0xbb, 0x99, 0x78, 0x7f, 0x23, 0x97, + 0x0d, 0x79, 0x04, 0x2f, 0x5d, 0x98, 0x3c, 0xa2, 0x5f, 0xba, 0xa0, 0x64, 0x62, 0x03, 0x59, 0xee, + 0x84, 0x91, 0xdf, 0x5c, 0x69, 0xd5, 0xdb, 0xbe, 0xd7, 0x8a, 0x90, 0x8a, 0x8f, 0x9a, 0x75, 0x74, + 0x58, 0xbc, 0x50, 0xc3, 0x52, 0x87, 0x8a, 0x62, 0x27, 0xc1, 0x25, 0x85, 0xfa, 0x13, 0x0c, 0xa4, + 0xf5, 0x87, 0x59, 0xe3, 0x5c, 0x62, 0xcd, 0xb3, 0x69, 0xbb, 0xe1, 0xd5, 0x50, 0x15, 0xbf, 0x13, + 0xf8, 0x9d, 0xb6, 0x5a, 0x0e, 0xd8, 0xbc, 0x20, 0x2e, 0x75, 0x76, 0x59, 0xb1, 0xc9, 0x3b, 0x85, + 0x9a, 0x7c, 0x11, 0x26, 0x98, 0x88, 0x20, 0x7e, 0x86, 0xf3, 0x59, 0x9c, 0x89, 0x73, 0x78, 0x7d, + 0x16, 0xd2, 0x40, 0xb1, 0x31, 0x64, 0x0b, 0x9d, 0x82, 0xd4, 0x61, 0x7e, 0x2b, 0x70, 0x5b, 0xa1, + 0x17, 0xad, 0xb4, 0x6a, 0xc1, 0x01, 0x8a, 0x34, 0x2b, 0x2d, 0x77, 0xbb, 0x41, 0xeb, 0xd8, 0xdd, + 0xfc, 0xd2, 0x95, 0xa3, 0xc3, 0xe2, 0xcb, 0x11, 0xc7, 0x71, 0xa8, 0x42, 0x72, 0x28, 0xc7, 0xd2, + 0x38, 0xf7, 0xe4, 0xc4, 0x44, 0x20, 0x39, 0xac, 0xf8, 0x7a, 0xc2, 0x4f, 0x77, 0x14, 0x81, 0xd4, + 0x6c, 0xb0, 0xcd, 0x47, 0x6f, 0xa6, 0x4e, 0x60, 0xfd, 0x1f, 0x99, 0xf8, 0xe4, 0x24, 0xef, 0xc2, + 0xb8, 0x58, 0xea, 0xda, 0xba, 0xc0, 0xad, 0x4f, 0x7e, 0x17, 0x89, 0x99, 0xd5, 0xd1, 0x99, 0xc2, + 0x5e, 0x5a, 0x5e, 0xd3, 0xd6, 0x06, 0x2a, 0xec, 0x6e, 0xad, 0x91, 0xa4, 0x92, 0x68, 0x6c, 0x11, + 0x6c, 0xad, 0x55, 0xcd, 0x51, 0xc1, 0x45, 0x10, 0x35, 0xc2, 0x94, 0x61, 0xd0, 0x90, 0x3f, 0x79, + 0xc7, 0xff, 0x87, 0x4c, 0xda, 0x01, 0x4d, 0x96, 0x60, 0xf2, 0x91, 0x1f, 0x3c, 0xc6, 0xf9, 0xd5, + 0x06, 0x01, 0x67, 0x7e, 0x5f, 0x16, 0x24, 0x3b, 0x64, 0x92, 0xe8, 0x6d, 0xd3, 0x46, 0xc3, 0x6c, + 0x5b, 0x82, 0x83, 0x41, 0xc0, 0xe6, 0x41, 0x71, 0x54, 0x5f, 0x07, 0xce, 0x43, 0xdc, 0x04, 0x63, + 0x09, 0xeb, 0xe8, 0xd6, 0x7f, 0x91, 0xd1, 0x0f, 0x62, 0x36, 0xc8, 0x65, 0xbf, 0xe9, 0x7a, 0x2d, + 0xad, 0x3b, 0xfc, 0x45, 0x08, 0xa1, 0xc9, 0x96, 0x68, 0xc8, 0xe4, 0x26, 0xe4, 0xf9, 0x2f, 0xb5, + 0x49, 0xe2, 0x75, 0x94, 0x20, 0x34, 0x77, 0x78, 0x89, 0xd8, 0x35, 0x33, 0xb9, 0x93, 0xce, 0xcc, + 0xef, 0x64, 0xf4, 0x33, 0xf4, 0xe3, 0x9e, 0x12, 0x89, 0xd3, 0x21, 0x7b, 0x92, 0xd3, 0xe1, 0x13, + 0x77, 0xe1, 0xfb, 0x32, 0x30, 0xae, 0x5d, 0x2f, 0xb0, 0x3e, 0x6c, 0x06, 0xfe, 0x47, 0xb4, 0x16, + 0x99, 0x7d, 0x68, 0x73, 0x60, 0xa2, 0x0f, 0x0a, 0xf5, 0x13, 0xf4, 0xc1, 0xfa, 0x8b, 0x8c, 0x50, + 0x6e, 0x06, 0xde, 0xe6, 0xcd, 0x2d, 0x39, 0x7b, 0x92, 0xb3, 0xed, 0x8b, 0x30, 0x6c, 0xd3, 0xba, + 0x17, 0x0a, 0xc5, 0x64, 0x46, 0x57, 0xa4, 0xb0, 0x20, 0x16, 0x78, 0x02, 0xf6, 0x53, 0x3f, 0x98, + 0xb0, 0x9c, 0x49, 0xa0, 0x95, 0xf0, 0x76, 0x83, 0x3e, 0xf5, 0xf8, 0xc7, 0x28, 0xce, 0x48, 0x94, + 0x40, 0xbd, 0xd0, 0xd9, 0x61, 0x25, 0x42, 0x14, 0xd6, 0x3f, 0x3c, 0x83, 0xc6, 0xfa, 0x10, 0x20, + 0xae, 0x92, 0xdc, 0x83, 0x82, 0x58, 0x0d, 0x5e, 0x6b, 0x97, 0x4b, 0x40, 0x62, 0x0c, 0x8a, 0x47, + 0x87, 0xc5, 0x17, 0x6b, 0xaa, 0x4c, 0x88, 0x8b, 0x1a, 0xdf, 0x2e, 0x42, 0xeb, 0x3f, 0xc8, 0x42, + 0xb6, 0x84, 0x13, 0x72, 0x8f, 0x1e, 0x44, 0xee, 0xf6, 0x6d, 0xaf, 0x61, 0x7c, 0x4c, 0x8f, 0x11, + 0xea, 0xec, 0x78, 0xc6, 0x3d, 0x83, 0x86, 0xcc, 0x3e, 0xa6, 0x7b, 0xc1, 0xf6, 0x5b, 0x48, 0xa8, + 0x7d, 0x4c, 0x8f, 0x83, 0xed, 0xb7, 0x92, 0x64, 0x0a, 0x91, 0x58, 0x30, 0xc2, 0x3f, 0x2c, 0xb1, + 0x06, 0xe1, 0xe8, 0xb0, 0x38, 0xc2, 0xbf, 0x3f, 0x5b, 0x94, 0x90, 0xb3, 0x90, 0xab, 0x6e, 0xae, + 0x8b, 0x1d, 0x10, 0xef, 0xf3, 0xc2, 0x76, 0xcb, 0x66, 0x30, 0x56, 0xe7, 0x5a, 0xb9, 0xb4, 0x89, + 0x1a, 0xfc, 0x70, 0x5c, 0x67, 0xa3, 0xee, 0xb6, 0x93, 0x3a, 0xbc, 0x42, 0x24, 0xef, 0xc1, 0xf8, + 0xbd, 0xf2, 0xf2, 0xaa, 0x1f, 0xf2, 0xdd, 0x6b, 0x24, 0x5e, 0xfc, 0x8f, 0xeb, 0x35, 0x07, 0xaf, + 0xd0, 0x93, 0xc7, 0x80, 0x86, 0x6f, 0xfd, 0x70, 0x16, 0xc6, 0xb5, 0x0b, 0x2e, 0xf2, 0x59, 0xf1, + 0xb2, 0x99, 0x31, 0x44, 0x77, 0x0d, 0x83, 0x95, 0xf2, 0xdb, 0x90, 0xa6, 0x5f, 0xa7, 0xe2, 0x9d, + 0x33, 0xbe, 0x79, 0xc8, 0x0e, 0x72, 0xf3, 0xf0, 0x36, 0x00, 0x5f, 0x03, 0xd8, 0x64, 0x4d, 0x9c, + 0xd0, 0x0c, 0x1c, 0xf4, 0x79, 0x89, 0x91, 0xc9, 0x43, 0x98, 0xdd, 0x0a, 0x3a, 0x61, 0x54, 0x3d, + 0x08, 0x23, 0xda, 0x64, 0xdc, 0x36, 0x7d, 0xbf, 0x21, 0xd6, 0xdf, 0xcb, 0x47, 0x87, 0xc5, 0x8b, + 0x11, 0x2b, 0x76, 0x42, 0x2c, 0xc7, 0x06, 0x38, 0x6d, 0xdf, 0xd7, 0xef, 0x23, 0xd2, 0x18, 0x58, + 0x36, 0x4c, 0xe8, 0xb7, 0x19, 0xec, 0x64, 0x11, 0xaf, 0x40, 0xe2, 0x8e, 0x5a, 0x3b, 0x59, 0x44, + 0x2b, 0xbb, 0x5f, 0xa5, 0x4c, 0x12, 0xeb, 0xb3, 0xfa, 0x4d, 0xda, 0xa0, 0x1f, 0xb6, 0xf5, 0x03, + 0x99, 0x78, 0x1b, 0x79, 0x78, 0x83, 0xbc, 0x03, 0x23, 0xfc, 0xd5, 0x4d, 0x3c, 0x4e, 0x9e, 0x52, + 0xda, 0xa8, 0xfe, 0x24, 0xc7, 0xaf, 0xb0, 0xff, 0x88, 0xbf, 0xcc, 0xbf, 0x60, 0x0b, 0x12, 0x75, + 0xfb, 0x6d, 0x5e, 0x84, 0x49, 0xee, 0x78, 0xcf, 0x7b, 0x23, 0xed, 0xf6, 0xdb, 0xfa, 0xbd, 0x21, + 0x98, 0x32, 0xd1, 0xf4, 0xa7, 0xb9, 0xcc, 0x40, 0x4f, 0x73, 0x5f, 0x84, 0x3c, 0x1b, 0x0f, 0xaf, + 0x46, 0xa5, 0x44, 0xf6, 0x32, 0xbe, 0x09, 0x08, 0x98, 0xf1, 0xe4, 0x0c, 0x7c, 0x3a, 0x98, 0x72, + 0x6a, 0x2b, 0x2a, 0xb2, 0xa8, 0xbd, 0x1f, 0xe5, 0x62, 0x21, 0x45, 0xbe, 0x1f, 0xe9, 0xdf, 0x83, + 0x7a, 0x49, 0x7a, 0x13, 0x46, 0x98, 0x60, 0xae, 0xee, 0x4e, 0xb0, 0x95, 0x4c, 0x66, 0x4f, 0xd8, + 0x96, 0x70, 0x24, 0xf2, 0x08, 0xf2, 0x6b, 0x6e, 0x18, 0x55, 0x29, 0x6d, 0x0d, 0xf0, 0xe8, 0x5e, + 0x14, 0x43, 0x35, 0x8b, 0x2f, 0xda, 0x21, 0xa5, 0xad, 0xc4, 0xab, 0xa9, 0x62, 0x46, 0xbe, 0x06, + 0xb0, 0xec, 0xb7, 0xa2, 0xc0, 0x6f, 0xac, 0xf9, 0xbb, 0xf3, 0x23, 0xa8, 0xb4, 0x5e, 0x48, 0x4c, + 0x40, 0x8c, 0xc0, 0xf5, 0x56, 0x75, 0x33, 0x53, 0xe3, 0x05, 0x4e, 0xc3, 0xdf, 0xd5, 0xbf, 0x83, + 0x18, 0x9f, 0xdc, 0x86, 0x82, 0xbc, 0x11, 0x78, 0xd0, 0xde, 0x0d, 0x70, 0x81, 0x8c, 0xc6, 0x92, + 0x07, 0x7d, 0x1a, 0x39, 0x1d, 0x01, 0xd7, 0x77, 0xca, 0x24, 0x0d, 0xf9, 0x2a, 0x9c, 0x49, 0xc2, + 0xe4, 0x2c, 0xe7, 0x63, 0x99, 0x5c, 0x67, 0x97, 0xb2, 0xee, 0x7b, 0xb1, 0xb0, 0xbe, 0x9d, 0x85, + 0x33, 0x3d, 0x3a, 0xcb, 0xbe, 0x07, 0x3c, 0xae, 0xb5, 0xef, 0x21, 0x71, 0x4a, 0x73, 0x63, 0xa1, + 0x8b, 0x90, 0x15, 0x07, 0xdc, 0xd0, 0x52, 0xe1, 0xe8, 0xb0, 0x38, 0x61, 0xcc, 0x63, 0xb6, 0x52, + 0x26, 0x77, 0x61, 0x88, 0x4d, 0xd1, 0x00, 0x6f, 0xde, 0xf2, 0x32, 0x68, 0x2a, 0xf2, 0xf4, 0xe5, + 0x83, 0x53, 0x87, 0x3c, 0xc8, 0x67, 0x21, 0xb7, 0xb5, 0xb5, 0x86, 0x6b, 0x27, 0x87, 0x7d, 0x9f, + 0x8c, 0xa2, 0x86, 0xb1, 0x54, 0x27, 0x19, 0xed, 0x35, 0x65, 0x22, 0xc1, 0xd0, 0xc9, 0x97, 0x13, + 0xb6, 0x38, 0xaf, 0xf5, 0x9f, 0xe8, 0xc1, 0x4d, 0x73, 0x3e, 0x81, 0x45, 0x8c, 0xf5, 0x8b, 0xd9, + 0xf8, 0x1b, 0xbe, 0xed, 0x35, 0x22, 0x1a, 0x90, 0x05, 0xfe, 0x49, 0xc6, 0xc2, 0x99, 0xad, 0x7e, + 0x93, 0xf9, 0xf8, 0xfb, 0xe6, 0xac, 0xd4, 0x87, 0xfc, 0x9a, 0xf6, 0x21, 0xe7, 0xf0, 0x43, 0x9e, + 0xea, 0xf9, 0xc9, 0xbe, 0x96, 0xb2, 0x2e, 0xf1, 0x43, 0x4c, 0x59, 0x7b, 0x2f, 0xc3, 0xe4, 0xba, + 0xbf, 0xf2, 0x34, 0x52, 0x88, 0xec, 0x03, 0xcc, 0xdb, 0x26, 0x90, 0x71, 0xdc, 0x68, 0xd4, 0x69, + 0xb0, 0xb5, 0xe7, 0xb6, 0x8c, 0x47, 0x67, 0xbb, 0x0b, 0xce, 0x70, 0xd7, 0xe9, 0xbe, 0x89, 0x3b, + 0xca, 0x71, 0x93, 0x70, 0xeb, 0xfb, 0xb3, 0x72, 0x30, 0x1e, 0x2e, 0x3e, 0xa7, 0x8f, 0x9b, 0x6f, + 0x19, 0x8f, 0x9b, 0xb3, 0xea, 0x5a, 0x56, 0xbd, 0xd4, 0x2f, 0x1e, 0xf3, 0xc0, 0xff, 0xf7, 0x46, + 0x60, 0x42, 0x47, 0x67, 0xe3, 0x50, 0xaa, 0xd7, 0x03, 0x7d, 0x1c, 0xdc, 0x7a, 0x3d, 0xb0, 0x11, + 0x6a, 0xbc, 0xe7, 0xe7, 0xfa, 0xbe, 0xe7, 0x7f, 0x1d, 0xc6, 0x96, 0x9b, 0x75, 0xe3, 0x95, 0xd1, + 0x4a, 0x69, 0xde, 0x35, 0x85, 0xc4, 0xbf, 0x05, 0x75, 0xdb, 0x58, 0x6b, 0xd6, 0xbb, 0xdf, 0x16, + 0x63, 0x96, 0x86, 0x29, 0xc0, 0xf0, 0x27, 0x31, 0x05, 0xb8, 0x05, 0x63, 0x0f, 0x42, 0xba, 0xd5, + 0x69, 0xb5, 0x68, 0x03, 0x97, 0x55, 0x9e, 0xcb, 0xfa, 0x9d, 0x90, 0x3a, 0x11, 0x42, 0xf5, 0x06, + 0x28, 0x54, 0x7d, 0x82, 0x47, 0xfb, 0x4c, 0xf0, 0x4d, 0xc8, 0x6f, 0x52, 0x1a, 0xe0, 0x98, 0x8e, + 0xc7, 0x22, 0x5d, 0x9b, 0xd2, 0xc0, 0x61, 0x03, 0x6b, 0x98, 0x08, 0x08, 0x44, 0xc3, 0xae, 0x60, + 0x62, 0x40, 0xbb, 0x02, 0xf2, 0x12, 0x4c, 0xb4, 0x3b, 0xdb, 0x0d, 0xaf, 0x86, 0x7c, 0x85, 0x41, + 0x82, 0x3d, 0xce, 0x61, 0x8c, 0x6d, 0x48, 0xbe, 0x0c, 0x93, 0xa8, 0xe3, 0xa8, 0x25, 0x37, 0x65, + 0x3c, 0xc7, 0x19, 0x65, 0x5c, 0xd2, 0xa9, 0x31, 0x90, 0x93, 0x62, 0x37, 0x63, 0x32, 0x22, 0x77, + 0x61, 0x74, 0xd7, 0x8b, 0x9c, 0xbd, 0xce, 0xf6, 0xfc, 0xb4, 0x61, 0x74, 0x72, 0xc7, 0x8b, 0x56, + 0x3b, 0xdb, 0x7c, 0xca, 0x15, 0x6b, 0xdc, 0xf1, 0x76, 0xbd, 0x68, 0xaf, 0xa3, 0xdf, 0xa5, 0x8e, + 0xec, 0x22, 0xee, 0x42, 0x15, 0xa6, 0xcc, 0x55, 0xf1, 0x0c, 0x5e, 0xf8, 0x94, 0xbd, 0x45, 0xbe, + 0x30, 0x76, 0x77, 0x28, 0x0f, 0x85, 0x71, 0x6e, 0x69, 0x61, 0xc3, 0xa6, 0x1a, 0x1f, 0x9b, 0xdc, + 0xeb, 0x6c, 0xd3, 0xa0, 0x45, 0x23, 0x1a, 0x0a, 0x85, 0x22, 0xb4, 0x87, 0x4a, 0xed, 0x76, 0x68, + 0xfd, 0xa7, 0x59, 0x18, 0x2d, 0x3d, 0xaa, 0x56, 0x5a, 0x3b, 0x3e, 0xbe, 0xd3, 0xa9, 0xe7, 0x19, + 0xfd, 0x9d, 0x4e, 0x3d, 0xcf, 0xe8, 0x8f, 0x32, 0xd7, 0x53, 0x54, 0x42, 0x34, 0xe5, 0xd5, 0x54, + 0x42, 0x43, 0x99, 0x8d, 0x5f, 0xaa, 0x72, 0x03, 0xbc, 0x54, 0xa9, 0xcb, 0xc4, 0xa1, 0x63, 0x2f, + 0x13, 0xc9, 0x3b, 0x30, 0x5e, 0x69, 0x45, 0x74, 0x37, 0x88, 0xbf, 0x1a, 0xa5, 0x9e, 0x2a, 0xb0, + 0xae, 0x26, 0x68, 0xd8, 0x6c, 0x49, 0xf2, 0x0b, 0x4c, 0x75, 0x71, 0x89, 0x4b, 0x92, 0xdf, 0x73, + 0x26, 0xee, 0x16, 0x24, 0xa2, 0x55, 0x4e, 0xac, 0x37, 0x69, 0x0d, 0xc0, 0x05, 0xd9, 0xa9, 0xf8, + 0x06, 0x9f, 0x0d, 0xec, 0xd2, 0x4c, 0xba, 0x35, 0x80, 0xf5, 0x33, 0x19, 0x98, 0x4b, 0x5b, 0x46, + 0xe4, 0x7d, 0x98, 0xf0, 0x83, 0x5d, 0xb7, 0xe5, 0x7d, 0x37, 0xef, 0x91, 0x76, 0x01, 0xa6, 0xc3, + 0x75, 0xb5, 0x5f, 0x87, 0xb3, 0x01, 0xd1, 0x7a, 0x6e, 0xea, 0xeb, 0xa9, 0x03, 0xa2, 0x81, 0xad, + 0x1f, 0xc9, 0xc2, 0x78, 0xa9, 0xdd, 0x7e, 0xce, 0x2d, 0xc5, 0x3e, 0x6f, 0x1c, 0x20, 0x52, 0xdb, + 0x53, 0xfd, 0x1a, 0xc8, 0x48, 0xec, 0xd7, 0xb2, 0x30, 0x9d, 0xa0, 0xd0, 0x5b, 0x9f, 0x19, 0xd0, + 0x3e, 0x2c, 0x3b, 0xa0, 0x7d, 0x58, 0x6e, 0x30, 0xfb, 0xb0, 0xa1, 0x4f, 0x72, 0x28, 0xbc, 0x0a, + 0xb9, 0x52, 0xbb, 0x9d, 0x7c, 0x67, 0x6e, 0xb7, 0x1f, 0xde, 0xe4, 0x1a, 0xbb, 0xdb, 0x6e, 0xdb, + 0x0c, 0xc3, 0xd8, 0xa9, 0x47, 0x06, 0xdc, 0xa9, 0xad, 0x37, 0x61, 0x0c, 0x79, 0xa1, 0x55, 0xd6, + 0x45, 0xc0, 0x2d, 0x46, 0x18, 0x64, 0x19, 0x75, 0x89, 0xcd, 0xe7, 0xff, 0xc9, 0xc0, 0x30, 0xfe, + 0x7e, 0x4e, 0xd7, 0xd8, 0xa2, 0xb1, 0xc6, 0x0a, 0xda, 0x1a, 0x1b, 0x64, 0x75, 0xfd, 0x83, 0x1c, + 0xc0, 0xf2, 0x86, 0x5d, 0xe5, 0x17, 0x3b, 0xe4, 0x36, 0x4c, 0xbb, 0x8d, 0x86, 0xbf, 0x4f, 0xeb, + 0x8e, 0x1f, 0x78, 0xbb, 0x5e, 0x8b, 0x8f, 0x9c, 0x7c, 0xfc, 0x34, 0x8b, 0xb4, 0x3e, 0x4f, 0x89, + 0xa2, 0x0d, 0x5e, 0xa2, 0xf3, 0x69, 0xd2, 0x68, 0xcf, 0xaf, 0x4b, 0x15, 0xd5, 0xe0, 0x23, 0x8a, + 0x52, 0xf8, 0xdc, 0xe7, 0x25, 0x3a, 0x9f, 0x3d, 0x54, 0xb9, 0xa5, 0x84, 0x6c, 0xf0, 0x11, 0x45, + 0x29, 0x7c, 0xb8, 0x9e, 0x1e, 0x92, 0x35, 0x98, 0x41, 0x88, 0x53, 0x0b, 0x68, 0x9d, 0xb6, 0x22, + 0xcf, 0x6d, 0x84, 0xe2, 0x52, 0x03, 0xaf, 0xbf, 0xba, 0x0a, 0x75, 0xa5, 0x0e, 0x0b, 0x97, 0xe3, + 0x32, 0x72, 0x0d, 0x46, 0x9b, 0xee, 0x53, 0xc7, 0xdd, 0xe5, 0x66, 0x00, 0x93, 0x5c, 0x09, 0x16, + 0x20, 0xfd, 0x18, 0x69, 0xba, 0x4f, 0x4b, 0xbb, 0x94, 0xf5, 0x82, 0x3e, 0x6d, 0xfb, 0xa1, 0xd6, + 0x8b, 0x91, 0xb8, 0x17, 0x89, 0x22, 0xbd, 0x17, 0xa2, 0x48, 0xf4, 0xc2, 0xfa, 0x3f, 0x87, 0x71, + 0x69, 0x8b, 0x4d, 0x40, 0x58, 0xae, 0x65, 0x52, 0x2c, 0xd7, 0xde, 0x06, 0xed, 0xe0, 0xd5, 0x77, + 0x5e, 0x4d, 0x84, 0xd1, 0x15, 0xdf, 0x18, 0x99, 0x3c, 0x4e, 0xda, 0xb0, 0xe5, 0xf0, 0xcb, 0xb9, + 0x94, 0x5c, 0x57, 0xcf, 0xc4, 0x7c, 0x6d, 0x15, 0x48, 0xa5, 0x15, 0xd2, 0x5a, 0x27, 0xa0, 0xd5, + 0xc7, 0x5e, 0xfb, 0x21, 0x0d, 0xbc, 0x9d, 0x03, 0x31, 0x2f, 0x28, 0x26, 0x7a, 0xa2, 0xd4, 0x09, + 0x1f, 0x7b, 0x6d, 0xa6, 0x19, 0x7b, 0x3b, 0x07, 0x76, 0x0a, 0x0d, 0xf9, 0x00, 0x46, 0x6d, 0xba, + 0x1f, 0x78, 0x91, 0xb4, 0xcc, 0x98, 0x52, 0xf7, 0x38, 0x08, 0xe5, 0x53, 0x14, 0xf0, 0x1f, 0xfa, + 0xc7, 0x2a, 0xca, 0xc9, 0x22, 0x3f, 0x3b, 0xb9, 0x05, 0xc6, 0x64, 0xdc, 0xdb, 0xd2, 0xa3, 0x6a, + 0xaf, 0xa3, 0x93, 0x5c, 0x85, 0x61, 0x3c, 0x80, 0x85, 0x88, 0x8a, 0x1e, 0x0d, 0x28, 0xd2, 0xe9, + 0xd2, 0x01, 0x62, 0x90, 0x0b, 0x00, 0xea, 0x41, 0x2c, 0x9c, 0xcf, 0xa3, 0xf0, 0xa8, 0x41, 0x92, + 0xd2, 0xc3, 0xd8, 0x89, 0xa4, 0x87, 0x35, 0x28, 0xd8, 0xf4, 0x9b, 0x1d, 0x2f, 0xa0, 0xf5, 0x52, + 0x1b, 0x5f, 0x5d, 0xc2, 0x79, 0xc0, 0x05, 0x76, 0xf1, 0xe8, 0xb0, 0x78, 0x2e, 0x10, 0x65, 0x8e, + 0xdb, 0xe6, 0x8f, 0x35, 0xc6, 0xea, 0x4e, 0x52, 0x92, 0xb7, 0x61, 0x88, 0xed, 0x08, 0xc2, 0xda, + 0x4d, 0xde, 0x5e, 0xc7, 0x9b, 0x04, 0xbf, 0x4b, 0xa8, 0xf9, 0xc6, 0x52, 0x45, 0x92, 0x4f, 0xcf, + 0x82, 0xec, 0xd7, 0xb2, 0x70, 0x49, 0x1d, 0x82, 0x1b, 0x41, 0xb5, 0x74, 0x7f, 0xad, 0x52, 0xdf, + 0x14, 0x5a, 0xf1, 0x66, 0xe0, 0x3f, 0xf1, 0xea, 0x34, 0x78, 0x78, 0xe3, 0x98, 0x2d, 0x7c, 0x8d, + 0x7f, 0x3e, 0xfc, 0x4a, 0x3d, 0x6b, 0xd8, 0xda, 0x68, 0xb2, 0x86, 0x30, 0x07, 0x6a, 0xb7, 0xbb, + 0x6e, 0xd8, 0x57, 0x5f, 0xb0, 0x63, 0x06, 0xe4, 0x07, 0x32, 0x70, 0x3a, 0xbd, 0x21, 0xe2, 0xa6, + 0xa4, 0x28, 0x35, 0xb2, 0x1e, 0xad, 0x5d, 0x7a, 0xf5, 0xe8, 0xb0, 0x78, 0x29, 0x74, 0x9b, 0x0d, + 0xc7, 0xab, 0xf3, 0xda, 0xbc, 0x1a, 0x75, 0xda, 0x02, 0xc1, 0xa8, 0xb7, 0x47, 0x4d, 0x5f, 0x00, + 0xb9, 0x93, 0xcf, 0x67, 0x96, 0x00, 0xf2, 0xf2, 0xd6, 0xd2, 0xfa, 0xcd, 0x0c, 0x68, 0x4b, 0x3b, + 0x6f, 0xd3, 0xba, 0x17, 0xd0, 0x5a, 0x24, 0x76, 0x73, 0xe1, 0x29, 0xc4, 0x61, 0x09, 0xd3, 0x2a, + 0x84, 0x91, 0xf7, 0x61, 0x54, 0xec, 0x3a, 0xb8, 0x71, 0xc7, 0x9f, 0x84, 0xb8, 0x0f, 0xe5, 0x2e, + 0x65, 0x5d, 0x3b, 0x96, 0x24, 0x62, 0x7a, 0xdf, 0xdd, 0x47, 0x5b, 0xcb, 0x0d, 0xd7, 0x6b, 0x86, + 0xe2, 0xf4, 0xc3, 0x61, 0xfd, 0x68, 0x3f, 0x72, 0x6a, 0x08, 0xd5, 0xf5, 0x3e, 0x85, 0x6a, 0xdd, + 0x91, 0xd7, 0xb1, 0xc7, 0xd8, 0x07, 0x16, 0x61, 0xf8, 0x61, 0x7c, 0x2d, 0xb3, 0x34, 0x76, 0x74, + 0x58, 0xe4, 0xcb, 0xc5, 0xe6, 0x70, 0xeb, 0x6f, 0x67, 0x60, 0xca, 0x5c, 0x4f, 0xe4, 0x1a, 0x8c, + 0x08, 0x2f, 0x9d, 0x0c, 0x5e, 0x3f, 0xb1, 0x51, 0x18, 0xe1, 0xfe, 0x39, 0x86, 0x57, 0x8e, 0xc0, + 0x62, 0xe7, 0xb7, 0xe0, 0x20, 0x0e, 0x2f, 0x3c, 0xbf, 0x6b, 0x1c, 0x64, 0xcb, 0x32, 0x62, 0x31, + 0x95, 0x22, 0xec, 0x34, 0x22, 0xfd, 0x55, 0x22, 0x40, 0x88, 0x2d, 0x4a, 0xac, 0x65, 0x18, 0xe1, + 0x7b, 0x49, 0xc2, 0x2e, 0x29, 0x73, 0x02, 0xbb, 0x24, 0xeb, 0x30, 0x03, 0x50, 0xad, 0xae, 0xde, + 0xa3, 0x07, 0x9b, 0xae, 0x17, 0xe0, 0x33, 0x1a, 0xee, 0xdb, 0xf7, 0xc4, 0xc7, 0x35, 0x21, 0x9e, + 0xd1, 0xf8, 0x1e, 0xff, 0x98, 0x1e, 0x18, 0xcf, 0x68, 0x12, 0x15, 0x0f, 0x87, 0xc0, 0x7b, 0xe2, + 0x46, 0x94, 0x11, 0x66, 0x91, 0x90, 0x1f, 0x0e, 0x1c, 0x9a, 0xa0, 0xd4, 0x90, 0xc9, 0xd7, 0x60, + 0x2a, 0xfe, 0xa5, 0x1e, 0x03, 0xa7, 0xd4, 0x07, 0x6c, 0x16, 0x2e, 0x5d, 0x38, 0x3a, 0x2c, 0x2e, + 0x68, 0x5c, 0x93, 0xcf, 0x84, 0x09, 0x66, 0xd6, 0xaf, 0x64, 0xf0, 0x09, 0x5c, 0x76, 0xf0, 0x32, + 0x0c, 0x29, 0x6b, 0xcb, 0x09, 0xb1, 0xeb, 0x98, 0x0f, 0x1e, 0x58, 0x4e, 0x2e, 0x41, 0x2e, 0xee, + 0x09, 0xee, 0xd5, 0x66, 0x0f, 0x58, 0x29, 0xb9, 0x03, 0xa3, 0x03, 0xb5, 0x19, 0x3f, 0x8d, 0x94, + 0xb6, 0x4a, 0x6a, 0x9c, 0x85, 0xbb, 0x8f, 0xb6, 0xbe, 0x73, 0x67, 0xe1, 0x27, 0xb2, 0x30, 0xcd, + 0xc6, 0xb5, 0xd4, 0x89, 0xf6, 0xfc, 0xc0, 0x8b, 0x0e, 0x9e, 0xdb, 0xfb, 0xbb, 0x77, 0x0d, 0xd1, + 0x78, 0x41, 0x9e, 0x32, 0x7a, 0xdf, 0x06, 0xba, 0xc6, 0xfb, 0x27, 0xc3, 0x30, 0x9b, 0x42, 0x45, + 0xde, 0x30, 0xae, 0xd8, 0xe7, 0xa5, 0x17, 0xee, 0xb7, 0x0f, 0x8b, 0x13, 0x12, 0x7d, 0x2b, 0xf6, + 0xca, 0x5d, 0x34, 0xed, 0x49, 0xf8, 0x48, 0xe1, 0x8d, 0xbb, 0x6e, 0x4f, 0x62, 0x5a, 0x91, 0x5c, + 0x85, 0x61, 0xdb, 0x6f, 0x50, 0x69, 0xfc, 0x84, 0x12, 0x46, 0xc0, 0x00, 0xc6, 0x9b, 0x31, 0x03, + 0x90, 0x55, 0x18, 0x65, 0x7f, 0xdc, 0x77, 0xdb, 0xe2, 0x35, 0x84, 0x28, 0xe5, 0x0c, 0xa1, 0x6d, + 0xaf, 0xb5, 0xab, 0xeb, 0x67, 0x0d, 0xea, 0x34, 0xdd, 0xb6, 0x21, 0x0a, 0x71, 0x44, 0x43, 0xcf, + 0xcb, 0xf7, 0xd6, 0xf3, 0x32, 0xc7, 0xea, 0x79, 0x3b, 0x00, 0x55, 0x6f, 0xb7, 0xe5, 0xb5, 0x76, + 0x4b, 0x8d, 0x5d, 0xe1, 0xcb, 0x7c, 0xb5, 0xf7, 0x2c, 0x5c, 0x8b, 0x91, 0x71, 0xe1, 0xbe, 0x88, + 0x4f, 0x96, 0x1c, 0xe6, 0xb8, 0x8d, 0x5d, 0xc3, 0xe7, 0x42, 0xe3, 0x4c, 0xd6, 0x01, 0x4a, 0xb5, + 0xc8, 0x7b, 0xc2, 0x96, 0x70, 0x28, 0xe4, 0x16, 0xd9, 0xe4, 0xe5, 0xd2, 0x3d, 0x7a, 0x50, 0xa5, + 0x51, 0xfc, 0xf8, 0xe3, 0x22, 0x2a, 0xfb, 0x12, 0x0c, 0x83, 0xfa, 0x98, 0x03, 0x69, 0xc3, 0xa9, + 0x52, 0xbd, 0xee, 0xb1, 0x3e, 0xb8, 0x0d, 0x7c, 0xcd, 0xa4, 0x75, 0x64, 0x3d, 0x91, 0xce, 0xfa, + 0xaa, 0x60, 0xfd, 0x92, 0xab, 0xa8, 0x9c, 0x88, 0x93, 0x25, 0xab, 0x49, 0x67, 0x6c, 0x55, 0x61, + 0xca, 0xec, 0xbc, 0xe9, 0x83, 0x3d, 0x01, 0x79, 0xbb, 0x5a, 0x72, 0xaa, 0xab, 0xa5, 0x1b, 0x85, + 0x0c, 0x29, 0xc0, 0x84, 0xf8, 0xb5, 0xe8, 0x2c, 0xbe, 0x75, 0xab, 0x90, 0x35, 0x20, 0x6f, 0xdd, + 0x58, 0x2c, 0xe4, 0x16, 0xb2, 0xf3, 0x99, 0x84, 0xfb, 0xd3, 0x68, 0x21, 0xcf, 0xaf, 0xe6, 0xac, + 0x5f, 0xcf, 0x40, 0x5e, 0xb6, 0x9d, 0xdc, 0x82, 0x5c, 0xb5, 0xba, 0x9a, 0x70, 0x58, 0x8a, 0x4f, + 0x19, 0xbe, 0x9f, 0x86, 0xa1, 0x6e, 0x95, 0xca, 0x08, 0x18, 0xdd, 0xd6, 0x5a, 0x55, 0x08, 0x07, + 0x92, 0x2e, 0xde, 0xbc, 0x39, 0x5d, 0x8a, 0x17, 0xc7, 0x2d, 0xc8, 0xdd, 0x7d, 0xb4, 0x25, 0xb4, + 0x0a, 0x49, 0x17, 0xef, 0xa7, 0x9c, 0xee, 0xa3, 0x7d, 0x7d, 0x97, 0x67, 0x04, 0x96, 0x0d, 0xe3, + 0xda, 0x42, 0xe6, 0x87, 0x6e, 0xd3, 0x57, 0x8e, 0xc7, 0xe2, 0xd0, 0x65, 0x10, 0x5b, 0x94, 0x30, + 0x19, 0x61, 0xcd, 0xaf, 0xb9, 0x0d, 0x71, 0x7a, 0xa3, 0x8c, 0xd0, 0x60, 0x00, 0x9b, 0xc3, 0xad, + 0xdf, 0xcd, 0x40, 0x01, 0x25, 0x29, 0xb4, 0x2a, 0xf5, 0x1f, 0xd3, 0xd6, 0xc3, 0x1b, 0xe4, 0x4d, + 0xf9, 0xc9, 0x65, 0xd4, 0x85, 0xc3, 0x30, 0x7e, 0x72, 0x89, 0x37, 0x19, 0xf1, 0xd9, 0x69, 0xbe, + 0xdd, 0xd9, 0xc1, 0x7d, 0x42, 0x8f, 0xf1, 0xed, 0x2e, 0xc2, 0x30, 0x36, 0x47, 0x6c, 0x8e, 0xd8, + 0xf2, 0x88, 0x01, 0x6c, 0x0e, 0xd7, 0xf6, 0xa6, 0x9f, 0xca, 0x76, 0xf5, 0x61, 0xf1, 0x3b, 0xca, + 0xaf, 0xd2, 0xec, 0xdc, 0x40, 0xfb, 0xf5, 0x87, 0x30, 0x97, 0x1c, 0x12, 0xbc, 0x0c, 0x2a, 0xc1, + 0xb4, 0x09, 0x97, 0xf7, 0x42, 0x67, 0x52, 0xeb, 0x7a, 0xb8, 0x68, 0x27, 0xf1, 0xad, 0xff, 0x25, + 0x03, 0x63, 0xf8, 0xa7, 0xdd, 0x69, 0xa0, 0x91, 0x50, 0xe9, 0x51, 0x55, 0x5c, 0x47, 0xeb, 0xc2, + 0x9c, 0xbb, 0x1f, 0x3a, 0xe2, 0xc6, 0xda, 0xd8, 0x63, 0x14, 0xb2, 0x20, 0xe5, 0xf7, 0xcc, 0xf2, + 0x72, 0x44, 0x91, 0xf2, 0x0b, 0xe9, 0x30, 0x41, 0x2a, 0x90, 0xd1, 0xb4, 0xf0, 0x51, 0x95, 0x2d, + 0x3f, 0xfd, 0xd5, 0x1e, 0xe9, 0xfc, 0x86, 0x69, 0x5a, 0xc8, 0xd1, 0xf0, 0xd1, 0xfe, 0x51, 0xb5, + 0x64, 0xaf, 0x1b, 0x8f, 0xf6, 0xac, 0x8d, 0x86, 0x09, 0xbb, 0x40, 0xb2, 0xfe, 0x31, 0x24, 0x07, + 0x50, 0x1c, 0x78, 0x27, 0xfc, 0x36, 0xde, 0x81, 0xe1, 0x52, 0xa3, 0xe1, 0xef, 0x8b, 0x5d, 0x42, + 0xde, 0x4d, 0xa9, 0xf1, 0xe3, 0xe7, 0x19, 0x5e, 0xaf, 0x18, 0xbe, 0x62, 0x0c, 0x40, 0x96, 0x61, + 0xac, 0xf4, 0xa8, 0x5a, 0xa9, 0x94, 0xb7, 0xb6, 0xb8, 0x5f, 0x4c, 0x6e, 0xe9, 0x15, 0x39, 0x3e, + 0x9e, 0x57, 0x77, 0x92, 0xef, 0xc6, 0xb1, 0xfc, 0x1e, 0xd3, 0x91, 0xf7, 0x00, 0xee, 0xfa, 0x5e, + 0x8b, 0x5f, 0x27, 0x89, 0xce, 0x9f, 0x3f, 0x3a, 0x2c, 0x8e, 0x7f, 0xe4, 0x7b, 0x2d, 0x71, 0xff, + 0xc4, 0xda, 0x1e, 0x23, 0xd9, 0xda, 0xdf, 0x6c, 0xa4, 0x97, 0x7c, 0x6e, 0xf8, 0x33, 0x1c, 0x8f, + 0xf4, 0xb6, 0xdf, 0x65, 0xf3, 0x23, 0xd1, 0x48, 0x13, 0xa6, 0xab, 0x9d, 0xdd, 0x5d, 0xca, 0x76, + 0x76, 0x71, 0x81, 0x32, 0x22, 0x74, 0x5c, 0x15, 0x8d, 0x84, 0xeb, 0x23, 0x4c, 0x4b, 0x09, 0x97, + 0xde, 0x60, 0x0b, 0xf9, 0x5b, 0x87, 0x45, 0xf1, 0x1e, 0xcd, 0x44, 0xb5, 0x50, 0xd2, 0x77, 0x5f, + 0x9f, 0x24, 0x79, 0x93, 0x0d, 0x18, 0xe1, 0x77, 0xf7, 0xc2, 0xcf, 0xe3, 0xa5, 0x3e, 0x1f, 0x0d, + 0x47, 0xec, 0xf5, 0x3a, 0xc4, 0x4b, 0xc9, 0x23, 0xc8, 0x2f, 0x7b, 0x41, 0xad, 0x41, 0x97, 0x2b, + 0xe2, 0xec, 0xbf, 0xd4, 0x87, 0xa5, 0x44, 0xe5, 0xe3, 0x52, 0xc3, 0x5f, 0x35, 0x4f, 0x97, 0x05, + 0x24, 0x06, 0xf9, 0x99, 0x0c, 0xbc, 0xa8, 0x5a, 0x5f, 0xda, 0xa5, 0xad, 0xe8, 0xbe, 0x1b, 0xd5, + 0xf6, 0x68, 0x20, 0x46, 0x69, 0xac, 0xdf, 0x28, 0x7d, 0xa1, 0x6b, 0x94, 0xae, 0xc4, 0xa3, 0xe4, + 0x32, 0x66, 0x4e, 0x93, 0x73, 0xeb, 0x1e, 0xb3, 0x7e, 0xb5, 0x12, 0x07, 0x20, 0x7e, 0x95, 0x12, + 0x7e, 0x82, 0xaf, 0xf4, 0xe9, 0x70, 0x8c, 0x2c, 0xec, 0xfb, 0xd5, 0x6f, 0xc3, 0xce, 0x4d, 0x41, + 0xc9, 0x3d, 0xe9, 0x54, 0xc5, 0xa5, 0x92, 0x8b, 0x7d, 0x78, 0x73, 0x47, 0xab, 0xd9, 0x3e, 0xee, + 0x93, 0x7c, 0xb6, 0xd7, 0xdc, 0x6d, 0x21, 0x88, 0x1c, 0x33, 0xdb, 0x6b, 0x6e, 0x3c, 0xdb, 0x0d, + 0x37, 0x39, 0xdb, 0x6b, 0xee, 0x36, 0x59, 0xe6, 0x9e, 0xa0, 0xdc, 0x6d, 0xf0, 0x42, 0x3f, 0x6e, + 0xcb, 0x9b, 0xfc, 0x64, 0x4e, 0xf1, 0x08, 0xfd, 0x0a, 0x8c, 0x55, 0xdb, 0x6e, 0x8d, 0x36, 0xbc, + 0x9d, 0x48, 0x3c, 0x79, 0xbe, 0xdc, 0x87, 0x95, 0xc2, 0x15, 0x4f, 0x5c, 0xf2, 0xa7, 0xae, 0x26, + 0x29, 0x1c, 0xd6, 0xc2, 0xad, 0xcd, 0xfb, 0xe2, 0xd5, 0xb3, 0x5f, 0x0b, 0xb7, 0x36, 0xef, 0x0b, + 0x99, 0xa3, 0xdd, 0x34, 0x64, 0x8e, 0xcd, 0xfb, 0xa4, 0x0d, 0x53, 0x5b, 0x34, 0x08, 0xdc, 0x1d, + 0x3f, 0x68, 0xf2, 0x0b, 0x3b, 0xee, 0x8a, 0x72, 0xb5, 0x1f, 0x3f, 0x83, 0x80, 0xdf, 0xd4, 0x46, + 0x12, 0xe6, 0x24, 0x6f, 0xf9, 0x12, 0xfc, 0xad, 0xdf, 0xca, 0xc1, 0x99, 0x1e, 0xad, 0x24, 0xeb, + 0x72, 0x57, 0xcc, 0x18, 0x37, 0xab, 0x3d, 0xd0, 0xaf, 0x1d, 0xbb, 0x51, 0xae, 0x41, 0x61, 0xe5, + 0x1e, 0x8a, 0xd3, 0xfc, 0xce, 0x7b, 0xb9, 0x24, 0xcf, 0x13, 0xbc, 0xfd, 0xa3, 0x8f, 0xd1, 0x48, + 0x4f, 0xde, 0x95, 0xd7, 0x0c, 0x37, 0xd2, 0x2e, 0xca, 0x85, 0xef, 0xcf, 0xc2, 0x10, 0x9e, 0x6d, + 0x89, 0xe0, 0x39, 0x99, 0x13, 0x05, 0xcf, 0xf9, 0x22, 0x4c, 0xac, 0xdc, 0xe3, 0xca, 0xee, 0xaa, + 0x1b, 0xee, 0x89, 0x9d, 0x17, 0xdf, 0xbc, 0xe9, 0x63, 0x47, 0xe8, 0xc6, 0x7b, 0xae, 0x21, 0x56, + 0x1a, 0x14, 0xe4, 0x01, 0xcc, 0xf2, 0xb6, 0x79, 0x3b, 0x5e, 0x8d, 0xc7, 0xe0, 0xf0, 0xdc, 0x86, + 0xd8, 0x86, 0x2f, 0x1d, 0x1d, 0x16, 0x8b, 0xf4, 0x31, 0x9a, 0x1f, 0x8a, 0x72, 0x27, 0x44, 0x04, + 0xdd, 0x0e, 0x31, 0x85, 0x5e, 0x0f, 0x0c, 0x60, 0x8f, 0x61, 0x85, 0xac, 0x36, 0x56, 0x37, 0xc3, + 0xe5, 0x48, 0xd6, 0x6f, 0x0e, 0xc3, 0x42, 0xef, 0x1d, 0x94, 0x7c, 0xc9, 0x9c, 0xc0, 0xcb, 0xc7, + 0xee, 0xb9, 0xc7, 0xcf, 0xe1, 0x97, 0x61, 0x6e, 0xa5, 0x15, 0xd1, 0xa0, 0x1d, 0x78, 0x32, 0x14, + 0xc4, 0xaa, 0x1f, 0x4a, 0x73, 0x4f, 0xb4, 0xbb, 0xa4, 0xaa, 0x5c, 0xdc, 0x4b, 0xa2, 0xf1, 0xa9, + 0xc6, 0x2a, 0x95, 0x03, 0x59, 0x81, 0x29, 0x0d, 0xde, 0xe8, 0xec, 0x0a, 0x99, 0x81, 0x3f, 0x3d, + 0x68, 0x3c, 0x1b, 0x1d, 0xdd, 0x16, 0x2e, 0x41, 0xb4, 0xf0, 0x2b, 0x39, 0xb1, 0x2c, 0x2e, 0x41, + 0xae, 0xda, 0xd9, 0x16, 0xcb, 0x81, 0x2b, 0x07, 0xc6, 0x41, 0xc2, 0x4a, 0xc9, 0xe7, 0x01, 0x6c, + 0xda, 0xf6, 0x43, 0x2f, 0xf2, 0x83, 0x03, 0xdd, 0xa3, 0x28, 0x50, 0x50, 0xd3, 0x76, 0x5a, 0x42, + 0xc9, 0x2a, 0x4c, 0xc7, 0xbf, 0x36, 0xf6, 0x5b, 0xe2, 0x32, 0x75, 0x8c, 0xdf, 0x62, 0xc4, 0xe4, + 0x8e, 0xcf, 0xca, 0xf4, 0xa3, 0x31, 0x41, 0x46, 0x16, 0x21, 0xff, 0xc8, 0x0f, 0x1e, 0xef, 0xb0, + 0x89, 0x1a, 0x8a, 0x0f, 0xef, 0x7d, 0x01, 0xd3, 0x0f, 0x29, 0x89, 0xc7, 0xd6, 0xfc, 0x4a, 0xeb, + 0x89, 0x17, 0xf8, 0xad, 0x26, 0x6d, 0x45, 0xfa, 0x1b, 0x3e, 0x8d, 0xc1, 0x86, 0x2f, 0x67, 0x0c, + 0x66, 0xba, 0x7a, 0xa9, 0x16, 0xf9, 0x81, 0x78, 0xc0, 0xe7, 0xd3, 0xcd, 0x00, 0xc6, 0x74, 0x33, + 0x00, 0x1b, 0x44, 0x9b, 0xee, 0x88, 0x67, 0x03, 0x1c, 0xc4, 0x80, 0xee, 0x18, 0x8e, 0xaa, 0x74, + 0x87, 0x09, 0x1f, 0x36, 0xdd, 0xc1, 0x0b, 0x06, 0x23, 0xbe, 0xd3, 0x4e, 0xd7, 0xd5, 0x94, 0x40, + 0xb3, 0xfe, 0x60, 0xac, 0xe7, 0xba, 0x65, 0xbb, 0xfd, 0xc9, 0xd6, 0xed, 0x9a, 0x3b, 0xc0, 0xba, + 0x7d, 0x43, 0x59, 0x64, 0xeb, 0xde, 0xd9, 0x08, 0xd1, 0x8f, 0x1b, 0x8e, 0xb3, 0xf0, 0xab, 0xf9, + 0x93, 0x2c, 0x22, 0x31, 0x48, 0xd9, 0x41, 0x07, 0x29, 0x37, 0xd0, 0x20, 0x91, 0x25, 0x98, 0x54, + 0x11, 0xc2, 0x36, 0xdd, 0xc8, 0xd8, 0x9b, 0x54, 0x58, 0x37, 0xa7, 0xed, 0x46, 0xfa, 0xde, 0x64, + 0x92, 0x90, 0x77, 0x61, 0x5c, 0xb8, 0x25, 0x20, 0x87, 0xe1, 0xd8, 0x32, 0x42, 0xfa, 0x30, 0x24, + 0xe8, 0x75, 0x74, 0xf6, 0x49, 0x6e, 0x7a, 0x6d, 0xda, 0xf0, 0x5a, 0xb4, 0x8a, 0xb7, 0xf5, 0x62, + 0xc5, 0xe0, 0x27, 0xd9, 0x16, 0x25, 0x0e, 0xbf, 0xc8, 0x37, 0xee, 0xe9, 0x0c, 0xa2, 0xe4, 0x62, + 0x1d, 0x3d, 0xd1, 0x62, 0xe5, 0x76, 0x59, 0xc1, 0x9a, 0xbf, 0xeb, 0x49, 0x4b, 0x54, 0x69, 0x97, + 0x15, 0x38, 0x0d, 0x06, 0x4d, 0xd8, 0x65, 0x71, 0x54, 0xa6, 0x49, 0xb0, 0x1f, 0x95, 0xb2, 0x78, + 0xa2, 0x42, 0x4d, 0x02, 0x89, 0x4c, 0xf3, 0x5f, 0x8e, 0x24, 0xab, 0x59, 0x69, 0xba, 0x5e, 0x43, + 0x38, 0xe1, 0xc6, 0xd5, 0x50, 0x06, 0x4d, 0x56, 0x83, 0xa8, 0xa4, 0x06, 0x13, 0x36, 0xdd, 0xd9, + 0x0c, 0xfc, 0x88, 0xd6, 0x22, 0x5a, 0x17, 0xd2, 0x93, 0x54, 0x20, 0x96, 0x7c, 0x9f, 0x4b, 0x86, + 0x4b, 0x6f, 0xfe, 0xc1, 0x61, 0x31, 0xf3, 0xad, 0xc3, 0x22, 0x30, 0x10, 0xb7, 0x2d, 0x3f, 0x3a, + 0x2c, 0x9e, 0x61, 0xf3, 0xdf, 0x96, 0xc4, 0xfa, 0x11, 0xa3, 0x33, 0x25, 0xdf, 0xc3, 0x36, 0x5d, + 0x35, 0x24, 0x71, 0x65, 0x13, 0x3d, 0x2a, 0x7b, 0x2b, 0xb5, 0xb2, 0xa2, 0x36, 0xda, 0xa9, 0x95, + 0xa6, 0x56, 0x42, 0xde, 0x83, 0xf1, 0xe5, 0xca, 0xb2, 0xdf, 0xda, 0xf1, 0x76, 0xab, 0xab, 0x25, + 0x14, 0xc1, 0x84, 0x5f, 0x41, 0xcd, 0x73, 0x6a, 0x08, 0x77, 0xc2, 0x3d, 0xd7, 0x70, 0x2f, 0x8b, + 0xf1, 0xc9, 0x1d, 0x98, 0x92, 0x3f, 0x6d, 0xba, 0xf3, 0xc0, 0xae, 0xa0, 0xe4, 0x25, 0x9d, 0x39, + 0x14, 0x07, 0x36, 0x10, 0x9d, 0x40, 0x97, 0xc8, 0x13, 0x64, 0x6c, 0x31, 0x96, 0x69, 0xbb, 0xe1, + 0x1f, 0xb0, 0xe6, 0x6d, 0x79, 0x34, 0x40, 0x59, 0x4b, 0x2c, 0xc6, 0xba, 0x2a, 0x71, 0x22, 0xcf, + 0xd8, 0x6e, 0x13, 0x44, 0x64, 0x1d, 0x66, 0xc4, 0x12, 0x7f, 0xe8, 0x85, 0xde, 0xb6, 0xd7, 0xf0, + 0xa2, 0x03, 0x94, 0xb2, 0x84, 0x14, 0x22, 0xbf, 0x8b, 0x27, 0xaa, 0x54, 0x63, 0xd6, 0x4d, 0x6a, + 0xfd, 0x7a, 0x16, 0xce, 0xf5, 0xd3, 0x38, 0x48, 0xd5, 0xdc, 0xcc, 0xae, 0x0c, 0xa0, 0xa5, 0x1c, + 0xbf, 0x9d, 0xad, 0xc0, 0xd4, 0x86, 0x66, 0xc2, 0xa4, 0x4c, 0xca, 0x70, 0x30, 0x74, 0xe3, 0x26, + 0x73, 0xb5, 0x27, 0x88, 0x16, 0x9e, 0x88, 0x6d, 0xee, 0xe3, 0x3a, 0x3a, 0xdd, 0x82, 0xb1, 0x65, + 0xbf, 0x15, 0xd1, 0xa7, 0x51, 0xc2, 0x1f, 0x97, 0x03, 0x93, 0x4e, 0x5e, 0x12, 0xd5, 0xfa, 0x7f, + 0xb3, 0x70, 0xbe, 0xaf, 0xc8, 0x4d, 0xb6, 0xcc, 0x51, 0xbb, 0x3a, 0x88, 0x9c, 0x7e, 0xfc, 0xb0, + 0x2d, 0x76, 0xd9, 0x19, 0x1d, 0xeb, 0x47, 0xb0, 0xf0, 0xdf, 0x65, 0xc4, 0x20, 0x7d, 0x06, 0x46, + 0xb1, 0x2a, 0x35, 0x44, 0xfc, 0x36, 0x0a, 0x77, 0x61, 0xcf, 0xbc, 0x8d, 0xe2, 0x68, 0xe4, 0x26, + 0xe4, 0x97, 0xdd, 0x46, 0x43, 0xf3, 0x56, 0x46, 0x4d, 0xa2, 0x86, 0xb0, 0x84, 0xb1, 0x9c, 0x44, + 0x24, 0x6f, 0x03, 0xf0, 0xbf, 0xb5, 0xb3, 0x02, 0x37, 0x4b, 0x41, 0x96, 0x38, 0x2e, 0x34, 0x64, + 0x8c, 0x71, 0x58, 0xf3, 0x95, 0x5b, 0x25, 0x8f, 0x71, 0xc8, 0x00, 0x46, 0x8c, 0x43, 0x06, 0xb0, + 0x7e, 0x23, 0x07, 0x17, 0xfa, 0xeb, 0x8d, 0xe4, 0x81, 0x39, 0x05, 0xaf, 0x0d, 0xa4, 0x6d, 0x1e, + 0x3f, 0x07, 0x32, 0x62, 0x28, 0x1f, 0x90, 0x2b, 0xdd, 0xe6, 0xfe, 0xdf, 0x3e, 0x2c, 0x6a, 0x16, + 0x98, 0x77, 0x7d, 0xaf, 0xa5, 0xbd, 0x4d, 0x7c, 0x13, 0xa0, 0x1a, 0xb9, 0x91, 0x57, 0xbb, 0xfb, + 0xe8, 0x9e, 0x0c, 0xa8, 0x71, 0x6b, 0xb0, 0x96, 0xc5, 0x74, 0x7c, 0x5f, 0x11, 0x9e, 0x46, 0x08, + 0x75, 0x3e, 0xda, 0x7f, 0x6c, 0x68, 0xc6, 0x31, 0xf2, 0xc2, 0x17, 0xa0, 0x90, 0x24, 0x25, 0x97, + 0x61, 0x08, 0x1b, 0xa0, 0xf9, 0x2c, 0x24, 0x38, 0x60, 0xf9, 0xc2, 0x7d, 0xb1, 0x76, 0x56, 0x60, + 0x4a, 0x3c, 0x88, 0x9b, 0x77, 0x70, 0xf8, 0xbd, 0xca, 0xf7, 0xf4, 0xee, 0x7b, 0xb8, 0x04, 0x91, + 0xf5, 0x97, 0x19, 0x38, 0xdb, 0x53, 0x23, 0x27, 0x9b, 0xe6, 0x84, 0xbd, 0x72, 0x9c, 0x0a, 0x7f, + 0xec, 0x5c, 0x2d, 0xfc, 0x98, 0x5c, 0xfb, 0xef, 0xc3, 0x44, 0xb5, 0xb3, 0x9d, 0x54, 0xb2, 0x78, + 0x78, 0x05, 0x0d, 0xae, 0x9f, 0x60, 0x3a, 0x3e, 0xeb, 0xbf, 0x7c, 0xf1, 0x17, 0x96, 0x25, 0x9a, + 0x95, 0x95, 0x72, 0x54, 0x44, 0x57, 0x58, 0xc3, 0xae, 0xc8, 0x24, 0xb2, 0x7e, 0x2d, 0x9b, 0xae, + 0xad, 0x32, 0xed, 0xfe, 0x04, 0xda, 0xea, 0x9d, 0xe5, 0xcd, 0xe3, 0xfb, 0xfe, 0x5f, 0xca, 0xbe, + 0xe3, 0x03, 0xa8, 0xd8, 0xf1, 0xe4, 0x85, 0xa2, 0x78, 0x00, 0x95, 0xbb, 0x63, 0x68, 0x3e, 0x80, + 0x4a, 0x64, 0xf2, 0x16, 0x8c, 0xad, 0xf9, 0xdc, 0x45, 0x5d, 0xf6, 0x98, 0x7b, 0xf2, 0x49, 0xa0, + 0xbe, 0x3d, 0x2a, 0x4c, 0xa6, 0x5b, 0x98, 0x13, 0x2f, 0x8d, 0xc9, 0x50, 0xb7, 0x48, 0x2c, 0x17, + 0xf3, 0xda, 0xcd, 0x24, 0xb3, 0xfe, 0x93, 0x61, 0xb0, 0x8e, 0xbf, 0x34, 0x20, 0x1f, 0x9a, 0x63, + 0x77, 0x6d, 0xe0, 0xeb, 0x86, 0x81, 0xb6, 0xdc, 0x52, 0xa7, 0xee, 0xd1, 0x56, 0xcd, 0xf4, 0x2f, + 0x17, 0x30, 0x7d, 0x0b, 0x94, 0x78, 0x1f, 0xc7, 0xdd, 0x6b, 0xe1, 0xbf, 0xce, 0xc5, 0x9f, 0x5a, + 0xe2, 0x68, 0xcc, 0x7c, 0x8c, 0xa3, 0x91, 0xdc, 0x83, 0x82, 0x0e, 0xd1, 0x5e, 0x42, 0x51, 0x72, + 0x31, 0x18, 0x25, 0x1a, 0xd5, 0x45, 0x68, 0x9e, 0xaf, 0xb9, 0xc1, 0xcf, 0xd7, 0x58, 0x7c, 0xc7, + 0xfa, 0x87, 0xba, 0xc5, 0xf7, 0xa4, 0x4b, 0xa7, 0x86, 0x2e, 0xfd, 0xd1, 0x43, 0x71, 0x68, 0x0d, + 0x9b, 0xfe, 0xe8, 0x29, 0x07, 0x97, 0x8e, 0x2e, 0x5d, 0xea, 0xf1, 0xa7, 0xe6, 0x51, 0xaa, 0x5c, + 0xea, 0x39, 0x7d, 0x9a, 0x4b, 0xbd, 0x22, 0x61, 0x07, 0xa0, 0xdd, 0x69, 0xf1, 0x60, 0xba, 0xa3, + 0xf1, 0x01, 0x18, 0x74, 0x5a, 0x4e, 0x32, 0xa0, 0xae, 0x42, 0xb4, 0x7e, 0x2c, 0x0b, 0x53, 0x7c, + 0xc3, 0xe5, 0x4f, 0x19, 0xcf, 0xed, 0x33, 0xd1, 0x3b, 0xc6, 0x33, 0x91, 0x8c, 0x1e, 0xa4, 0x77, + 0x6d, 0xa0, 0x47, 0xa2, 0x3d, 0x20, 0xdd, 0x34, 0xc4, 0x86, 0x09, 0x1d, 0xda, 0xff, 0x7d, 0xe8, + 0x46, 0x1c, 0x68, 0x4a, 0x9c, 0x77, 0xf8, 0x48, 0x17, 0xda, 0x06, 0x0f, 0xeb, 0x6f, 0x67, 0x61, + 0x52, 0x7b, 0xd4, 0x7f, 0x6e, 0x07, 0xfe, 0x0b, 0xc6, 0xc0, 0xcf, 0x2b, 0xb7, 0x16, 0xd5, 0xb3, + 0x81, 0xc6, 0xbd, 0x03, 0x33, 0x5d, 0x24, 0x49, 0xdb, 0x88, 0xcc, 0x20, 0xb6, 0x11, 0x6f, 0x74, + 0x47, 0xad, 0xe1, 0xc1, 0x9f, 0x55, 0x28, 0x04, 0x3d, 0x4c, 0xce, 0x4f, 0x64, 0x61, 0x4e, 0xfc, + 0xc2, 0x30, 0x6f, 0x5c, 0xe2, 0x78, 0x6e, 0xe7, 0xa2, 0x64, 0xcc, 0x45, 0xd1, 0x9c, 0x0b, 0xad, + 0x83, 0xbd, 0xa7, 0xc4, 0xfa, 0x21, 0x80, 0xf9, 0x5e, 0x04, 0x03, 0x7b, 0x8f, 0xc6, 0xfe, 0x34, + 0xd9, 0x01, 0xfc, 0x69, 0xd6, 0xa0, 0x80, 0x55, 0x89, 0x40, 0x4e, 0x21, 0xd3, 0x5b, 0x73, 0xb1, + 0x92, 0xc8, 0x63, 0xf1, 0x89, 0xc0, 0x52, 0x61, 0x42, 0x71, 0xed, 0xa2, 0x24, 0xbf, 0x92, 0x81, + 0x29, 0x04, 0xae, 0x3c, 0xa1, 0xad, 0x08, 0x99, 0x0d, 0x09, 0x47, 0x0b, 0xf5, 0x8a, 0x54, 0x8d, + 0x02, 0xaf, 0xb5, 0x2b, 0x9e, 0x91, 0xb6, 0xc5, 0x33, 0xd2, 0xbb, 0xfc, 0xf9, 0xeb, 0x5a, 0xcd, + 0x6f, 0x5e, 0xdf, 0x0d, 0xdc, 0x27, 0x1e, 0xb7, 0x57, 0x71, 0x1b, 0xd7, 0xe3, 0xdc, 0x03, 0x6d, + 0x2f, 0x91, 0x4d, 0x40, 0xb0, 0xc2, 0x27, 0x3a, 0xde, 0x50, 0x8a, 0xd5, 0x26, 0xf5, 0x6b, 0xb3, + 0x45, 0xe4, 0xbb, 0xe0, 0x0c, 0x8f, 0xd2, 0xc2, 0xd4, 0x34, 0xaf, 0xd5, 0xf1, 0x3b, 0xe1, 0x92, + 0x5b, 0x7b, 0xcc, 0x64, 0x35, 0xee, 0x0e, 0x87, 0x3d, 0xaf, 0xa9, 0x42, 0x67, 0x9b, 0x97, 0x1a, + 0xee, 0xbf, 0xe9, 0x0c, 0xc8, 0x2a, 0xcc, 0xf0, 0xa2, 0x52, 0x27, 0xf2, 0xab, 0x35, 0xb7, 0xe1, + 0xb5, 0x76, 0xf1, 0x40, 0xc8, 0xf3, 0xf3, 0xc8, 0xed, 0x44, 0xbe, 0x13, 0x72, 0xb8, 0xae, 0x6e, + 0x77, 0x11, 0x91, 0x0a, 0x4c, 0xdb, 0xd4, 0xad, 0xdf, 0x77, 0x9f, 0x2e, 0xbb, 0x6d, 0xb7, 0xc6, + 0x94, 0xf7, 0x3c, 0x3e, 0xb9, 0xe2, 0xa9, 0x1c, 0x50, 0xb7, 0xee, 0x34, 0xdd, 0xa7, 0x4e, 0x4d, + 0x14, 0x9a, 0xf7, 0xae, 0x06, 0x9d, 0x62, 0xe5, 0xb5, 0x14, 0xab, 0xb1, 0x24, 0x2b, 0xaf, 0xd5, + 0x9b, 0x55, 0x4c, 0x27, 0x59, 0x6d, 0xb9, 0xc1, 0x2e, 0x8d, 0xb8, 0xb9, 0x27, 0x5c, 0xcc, 0x5c, + 0xc9, 0x68, 0xac, 0x22, 0x2c, 0x73, 0xd0, 0xf4, 0x33, 0xc9, 0x4a, 0xa3, 0x63, 0x2b, 0xef, 0x51, + 0xe0, 0x45, 0x54, 0xef, 0xe1, 0x38, 0x36, 0x0b, 0xc7, 0x1f, 0x0d, 0x65, 0x7b, 0x75, 0xb1, 0x8b, + 0x32, 0xe6, 0xa6, 0x75, 0x72, 0xa2, 0x8b, 0x5b, 0x7a, 0x2f, 0xbb, 0x28, 0x15, 0x37, 0xbd, 0x9f, + 0x93, 0xd8, 0x4f, 0x8d, 0x5b, 0x8f, 0x8e, 0x76, 0x51, 0x92, 0x75, 0x36, 0x68, 0x11, 0x6d, 0xb1, + 0x15, 0x2d, 0xcc, 0x5d, 0xa7, 0xb0, 0x69, 0x2f, 0x0b, 0x9b, 0xad, 0x42, 0x20, 0x8b, 0x9d, 0x14, + 0xe3, 0xd7, 0x24, 0x31, 0xf9, 0x5e, 0x98, 0x7e, 0x10, 0xd2, 0xdb, 0x95, 0xcd, 0xaa, 0x0c, 0xea, + 0x82, 0x37, 0x44, 0x53, 0x8b, 0x37, 0x8e, 0xd9, 0x74, 0xae, 0xe9, 0x34, 0x98, 0x02, 0x80, 0xcf, + 0x5b, 0x27, 0xa4, 0xce, 0x8e, 0xd7, 0x0e, 0x55, 0x84, 0x2c, 0x7d, 0xde, 0x12, 0x55, 0x59, 0xab, + 0x30, 0xd3, 0xc5, 0x86, 0x4c, 0x01, 0x30, 0xa0, 0xf3, 0x60, 0xbd, 0xba, 0xb2, 0x55, 0x78, 0x81, + 0x14, 0x60, 0x02, 0x7f, 0xaf, 0xac, 0x97, 0x96, 0xd6, 0x56, 0xca, 0x85, 0x0c, 0x99, 0x81, 0x49, + 0x84, 0x94, 0x2b, 0x55, 0x0e, 0xca, 0xf2, 0x00, 0xd0, 0x76, 0x81, 0x7f, 0xba, 0x11, 0xfb, 0x00, + 0xf0, 0x4c, 0xb1, 0xfe, 0x4e, 0x16, 0xce, 0xca, 0x63, 0x85, 0x46, 0x4c, 0x04, 0xf3, 0x5a, 0xbb, + 0xcf, 0xf9, 0xe9, 0x70, 0xdb, 0x38, 0x1d, 0x5e, 0x4e, 0x9c, 0xd4, 0x89, 0x5e, 0xf6, 0x39, 0x22, + 0x7e, 0x67, 0x0c, 0xce, 0xf7, 0xa5, 0x22, 0x5f, 0x62, 0xa7, 0xb9, 0x47, 0x5b, 0x51, 0xa5, 0xde, + 0xa0, 0x5b, 0x5e, 0x93, 0xfa, 0x9d, 0x48, 0x98, 0x57, 0x5f, 0xc2, 0x4b, 0x19, 0x2c, 0x74, 0xbc, + 0x7a, 0x83, 0x3a, 0x11, 0x2f, 0x36, 0x96, 0x5b, 0x37, 0x35, 0x63, 0xa9, 0xd2, 0x91, 0x54, 0x5a, + 0x11, 0x0d, 0x9e, 0xa0, 0x09, 0x97, 0x62, 0xf9, 0x98, 0xd2, 0xb6, 0xe3, 0xb2, 0x52, 0xc7, 0x13, + 0xc5, 0x26, 0xcb, 0x2e, 0x6a, 0x72, 0x5b, 0x63, 0xb9, 0xcc, 0x54, 0xb8, 0xfb, 0xee, 0x53, 0x61, + 0x53, 0x22, 0xa2, 0xfb, 0x29, 0x96, 0xdc, 0xcb, 0xb4, 0xe9, 0x3e, 0xb5, 0xbb, 0x49, 0xc8, 0xd7, + 0xe0, 0x94, 0x38, 0x80, 0x44, 0xc4, 0x01, 0xd9, 0x63, 0x1e, 0xcf, 0xe0, 0xd5, 0xa3, 0xc3, 0xe2, + 0x19, 0x19, 0x17, 0x51, 0xc6, 0x98, 0x48, 0xeb, 0x75, 0x3a, 0x17, 0xb2, 0xc5, 0x0e, 0xe4, 0xc4, + 0x70, 0xdc, 0xa7, 0x61, 0x28, 0x1d, 0x8d, 0x84, 0x7a, 0xa3, 0x0f, 0xa6, 0xd3, 0xe4, 0xe5, 0x76, + 0x4f, 0x4a, 0xb2, 0x0a, 0x53, 0x8f, 0xe8, 0xb6, 0x3e, 0x3f, 0x23, 0x6a, 0xab, 0x2a, 0xec, 0xd3, + 0xed, 0xde, 0x93, 0x93, 0xa0, 0x23, 0x1e, 0x5e, 0xf2, 0x3e, 0x3d, 0x58, 0xf3, 0xc2, 0x88, 0xb6, + 0x68, 0x80, 0x91, 0x6c, 0x46, 0x71, 0x33, 0x98, 0x8f, 0x25, 0x64, 0xb3, 0x7c, 0xe9, 0xa5, 0xa3, + 0xc3, 0xe2, 0x79, 0xee, 0xb1, 0xd7, 0x10, 0x70, 0x27, 0x91, 0xcc, 0xa3, 0x9b, 0x2b, 0xf9, 0x06, + 0x4c, 0xdb, 0x7e, 0x27, 0xf2, 0x5a, 0xbb, 0xd5, 0x28, 0x70, 0x23, 0xba, 0xcb, 0x0f, 0xa4, 0x38, + 0x64, 0x4e, 0xa2, 0x54, 0xbc, 0x0f, 0x72, 0xa0, 0x13, 0x0a, 0xa8, 0x71, 0x22, 0x98, 0x04, 0xe4, + 0xeb, 0x30, 0xc5, 0x7d, 0xcd, 0x55, 0x05, 0x63, 0x46, 0x20, 0x72, 0xb3, 0xf0, 0xe1, 0x0d, 0x61, + 0x02, 0x80, 0xd0, 0xb4, 0x0a, 0x12, 0xdc, 0xc8, 0x57, 0xc4, 0x60, 0x6d, 0x7a, 0xad, 0x5d, 0xb5, + 0x8c, 0x01, 0x47, 0xfe, 0xcd, 0x78, 0x48, 0xda, 0xac, 0xb9, 0x72, 0x19, 0xf7, 0xb0, 0x67, 0xea, + 0xe6, 0x43, 0x22, 0x38, 0x5f, 0x0a, 0x43, 0x2f, 0x8c, 0x84, 0x13, 0xc2, 0xca, 0x53, 0x5a, 0xeb, + 0x30, 0x64, 0xa6, 0x28, 0xd2, 0x80, 0x1b, 0xc1, 0x0e, 0x2f, 0x5d, 0x3b, 0x3a, 0x2c, 0xbe, 0xe6, + 0x22, 0xa2, 0x23, 0xfc, 0x16, 0x1c, 0x2a, 0x51, 0x9d, 0x7d, 0x8e, 0xab, 0xf5, 0xa1, 0x3f, 0x53, + 0xf2, 0x75, 0x38, 0xbd, 0xec, 0x86, 0xb4, 0xd2, 0x0a, 0x69, 0x2b, 0xf4, 0x22, 0xef, 0x09, 0x15, + 0x83, 0x8a, 0x87, 0x5f, 0x1e, 0xd3, 0x9e, 0x58, 0x35, 0x37, 0x64, 0x1f, 0xa6, 0x42, 0x71, 0xc4, + 0xa4, 0x68, 0xd5, 0xf4, 0xe0, 0x42, 0x6c, 0x98, 0xaa, 0x56, 0x57, 0xcb, 0x9e, 0xab, 0xbe, 0xab, + 0x49, 0x1c, 0xaf, 0xd7, 0xf0, 0x7e, 0x26, 0xdc, 0x73, 0xea, 0x9e, 0xab, 0x3e, 0xa8, 0x1e, 0x83, + 0x95, 0xe0, 0x60, 0x1d, 0x66, 0xa0, 0x90, 0x9c, 0x4a, 0xf2, 0x65, 0x18, 0xe3, 0xc6, 0x40, 0x34, + 0xdc, 0x13, 0xee, 0xd2, 0xd2, 0xb6, 0x44, 0xc1, 0x4d, 0x22, 0xe1, 0x14, 0xc4, 0x4d, 0x8d, 0xa8, + 0x6e, 0xb7, 0x80, 0x4e, 0x41, 0x92, 0x88, 0xd4, 0x61, 0x82, 0xcf, 0x16, 0xc5, 0x78, 0x59, 0xc2, + 0x26, 0xf4, 0x25, 0xfd, 0xeb, 0x10, 0x45, 0x09, 0xfe, 0xf8, 0xf4, 0x23, 0xd6, 0x04, 0x47, 0x30, + 0xaa, 0x30, 0xb8, 0x2e, 0x01, 0xe4, 0x25, 0xa1, 0x75, 0x16, 0xce, 0xf4, 0x68, 0xb3, 0xf5, 0x04, + 0x9f, 0x83, 0x7b, 0xd4, 0x48, 0xbe, 0x0c, 0x73, 0x48, 0xb8, 0xec, 0xb7, 0x5a, 0xb4, 0x16, 0xe1, + 0x76, 0x24, 0xaf, 0x50, 0x73, 0xdc, 0xe6, 0x80, 0xf7, 0xb7, 0xa6, 0x10, 0x9c, 0xe4, 0x4d, 0x6a, + 0x2a, 0x07, 0xeb, 0xe7, 0xb3, 0x30, 0x2f, 0x76, 0x38, 0x9b, 0xd6, 0xfc, 0xa0, 0xfe, 0xfc, 0x9f, + 0xa8, 0x2b, 0xc6, 0x89, 0x7a, 0x49, 0xc5, 0xda, 0x48, 0xeb, 0x64, 0x9f, 0x03, 0xf5, 0xd7, 0x32, + 0x70, 0xae, 0x1f, 0x11, 0x1b, 0x1d, 0x15, 0x1f, 0x6c, 0xac, 0x2b, 0x0e, 0x58, 0x1b, 0x66, 0x71, + 0x42, 0x97, 0xf7, 0x68, 0xed, 0x71, 0xb8, 0xea, 0x87, 0x11, 0x9a, 0xa5, 0x67, 0x7b, 0x3c, 0x58, + 0xbe, 0x91, 0xfa, 0x60, 0x79, 0x9a, 0xaf, 0xb2, 0x1a, 0xf2, 0xe0, 0x11, 0xcc, 0x1e, 0xd3, 0x83, + 0xd0, 0x4e, 0x63, 0x8d, 0xe6, 0xc5, 0xa5, 0x4e, 0xb4, 0xb7, 0x19, 0xd0, 0x1d, 0x1a, 0xd0, 0x56, + 0x8d, 0x7e, 0x87, 0x99, 0x17, 0x9b, 0x9d, 0x1b, 0xe8, 0x06, 0xe3, 0xdf, 0x9a, 0x84, 0xb9, 0x34, + 0x32, 0x36, 0x2e, 0x9a, 0xd2, 0x9c, 0xcc, 0xca, 0xf6, 0x83, 0x19, 0x98, 0xa8, 0xd2, 0x9a, 0xdf, + 0xaa, 0xdf, 0x46, 0xb3, 0x10, 0x31, 0x3a, 0x0e, 0x17, 0x1a, 0x18, 0xdc, 0xd9, 0x49, 0xd8, 0x8b, + 0x7c, 0xfb, 0xb0, 0xf8, 0xc5, 0xc1, 0x74, 0xd5, 0x9a, 0x8f, 0x31, 0x2e, 0x22, 0x8c, 0x1a, 0xae, + 0xaa, 0xc0, 0x17, 0x1e, 0xa3, 0x52, 0xb2, 0x04, 0x93, 0xe2, 0x73, 0xf5, 0xf5, 0xf0, 0x70, 0x3c, + 0x1c, 0x89, 0x2c, 0xe8, 0xba, 0x7f, 0x34, 0x48, 0xc8, 0x4d, 0xc8, 0x3d, 0x58, 0xbc, 0x2d, 0xe6, + 0x40, 0xc6, 0x5d, 0x7f, 0xb0, 0x78, 0x1b, 0xaf, 0xc3, 0x98, 0x8a, 0x31, 0xd9, 0x59, 0x34, 0x2c, + 0x35, 0x1e, 0x2c, 0xde, 0x26, 0x7f, 0x13, 0x4e, 0x95, 0xbd, 0x50, 0x54, 0xc1, 0x0d, 0xdd, 0xeb, + 0xe8, 0xde, 0x35, 0xd2, 0x63, 0xf5, 0x7e, 0x2e, 0x75, 0xf5, 0xbe, 0x54, 0x57, 0x4c, 0x1c, 0x6e, + 0x45, 0x5f, 0x4f, 0x86, 0xc1, 0x4b, 0xaf, 0x87, 0x7c, 0x04, 0x53, 0x78, 0x77, 0x8e, 0xb6, 0xff, + 0x18, 0x79, 0x78, 0xb4, 0x47, 0xcd, 0x9f, 0x49, 0xad, 0x79, 0x81, 0x3b, 0x89, 0xa3, 0x07, 0x01, + 0x46, 0x29, 0x36, 0xb4, 0x7e, 0x83, 0x33, 0xb9, 0x0b, 0xd3, 0x42, 0xfc, 0xda, 0xd8, 0xd9, 0xda, + 0xa3, 0x65, 0xf7, 0x40, 0x18, 0x59, 0xa0, 0x46, 0x27, 0x64, 0x36, 0xc7, 0xdf, 0x71, 0xa2, 0x3d, + 0xea, 0xd4, 0x5d, 0x43, 0x50, 0x49, 0x10, 0x92, 0xef, 0x81, 0xf1, 0x35, 0xbf, 0xc6, 0x24, 0x6f, + 0xdc, 0x19, 0xb8, 0xdd, 0xc5, 0x87, 0x98, 0xf7, 0x8b, 0x83, 0x13, 0xe2, 0xd4, 0xb7, 0x0f, 0x8b, + 0xef, 0x9c, 0x74, 0xd1, 0x68, 0x15, 0xd8, 0x7a, 0x6d, 0x64, 0x19, 0xf2, 0x8f, 0xe8, 0x36, 0xeb, + 0x6d, 0x32, 0x27, 0x90, 0x04, 0x0b, 0xb3, 0x2a, 0xf1, 0xcb, 0x30, 0xab, 0x12, 0x30, 0x12, 0xc0, + 0x0c, 0x8e, 0xcf, 0xa6, 0x1b, 0x86, 0xfb, 0x7e, 0x50, 0xc7, 0xe0, 0xef, 0xbd, 0x4c, 0x3a, 0x16, + 0x53, 0x07, 0xff, 0x1c, 0x1f, 0xfc, 0xb6, 0xc6, 0x41, 0x17, 0x20, 0xbb, 0xd8, 0x93, 0x6f, 0xc0, + 0x94, 0xf0, 0x6c, 0xbe, 0x7f, 0xbb, 0x84, 0x5f, 0xe5, 0x84, 0xe1, 0x24, 0x67, 0x16, 0x72, 0x29, + 0x55, 0x38, 0x4a, 0xcb, 0x1b, 0x28, 0xa7, 0xb9, 0xe3, 0x9a, 0xaf, 0x66, 0x3a, 0x09, 0xd9, 0x84, + 0xf1, 0x32, 0x7d, 0xe2, 0xd5, 0x28, 0x3a, 0xf2, 0x08, 0x23, 0x5a, 0x95, 0xd4, 0x24, 0x2e, 0xe1, + 0x77, 0x31, 0x75, 0x04, 0x70, 0xb7, 0x20, 0xd3, 0x6a, 0x52, 0x21, 0x92, 0x5b, 0x90, 0xab, 0x94, + 0x37, 0x85, 0x0d, 0xad, 0xf4, 0x8d, 0xa9, 0xd4, 0x37, 0x65, 0x0a, 0x08, 0x34, 0x82, 0xf2, 0xea, + 0x86, 0x05, 0x6e, 0xa5, 0xbc, 0x49, 0x76, 0x60, 0x12, 0x07, 0x60, 0x95, 0xba, 0x7c, 0x6c, 0xa7, + 0x7b, 0x8c, 0xed, 0xb5, 0xd4, 0xb1, 0x9d, 0xe7, 0x63, 0xbb, 0x27, 0xa8, 0x8d, 0x98, 0xf6, 0x3a, + 0x5b, 0x26, 0xd2, 0x8a, 0x3c, 0x1b, 0x32, 0x12, 0xfb, 0xd6, 0x1a, 0x1a, 0x79, 0x08, 0x91, 0x56, + 0xa6, 0xe5, 0x50, 0xa1, 0xe1, 0x7b, 0x9a, 0xe8, 0x77, 0xf3, 0x21, 0x5f, 0x80, 0xa1, 0x8d, 0xc7, + 0x91, 0x3b, 0x3f, 0x63, 0x8c, 0x23, 0x03, 0xc9, 0xee, 0xe3, 0x2d, 0xa4, 0xff, 0xd8, 0x08, 0x94, + 0x84, 0x34, 0x64, 0x11, 0x46, 0x37, 0x2b, 0x0f, 0xab, 0x0d, 0x3f, 0x9a, 0x27, 0x4a, 0x4f, 0x22, + 0x6d, 0xef, 0x89, 0x13, 0x36, 0x7c, 0x33, 0x57, 0x8f, 0x44, 0x64, 0xd3, 0xb7, 0xea, 0x06, 0xf5, + 0x7d, 0x37, 0x40, 0x0f, 0xcc, 0x59, 0xa3, 0x5a, 0xad, 0x84, 0x4f, 0xdf, 0x9e, 0x00, 0x24, 0xdc, + 0x32, 0x75, 0x16, 0xe4, 0xbb, 0xe0, 0x6c, 0xe8, 0xed, 0xb6, 0xdc, 0xa8, 0x13, 0x50, 0xc7, 0x6d, + 0xec, 0xfa, 0x81, 0x17, 0xed, 0x35, 0x9d, 0xb0, 0xe3, 0x45, 0x74, 0x7e, 0xce, 0xc8, 0xe4, 0x59, + 0x95, 0x78, 0x25, 0x89, 0x56, 0x65, 0x58, 0xf6, 0x99, 0x30, 0xbd, 0x40, 0xdc, 0x5e, 0xcc, 0x88, + 0x25, 0x28, 0x86, 0xed, 0xfe, 0xed, 0x92, 0xf5, 0x9f, 0x67, 0x70, 0x33, 0x26, 0xaf, 0x61, 0x14, + 0x13, 0xf5, 0x2c, 0x87, 0xf7, 0xb0, 0x6e, 0x3b, 0x11, 0x19, 0x99, 0xa3, 0x90, 0x37, 0x60, 0xe4, + 0xb6, 0x5b, 0xa3, 0x91, 0x7c, 0x3c, 0x45, 0xe4, 0x1d, 0x84, 0xe8, 0x97, 0xb6, 0x1c, 0x87, 0xc9, + 0x89, 0x7c, 0x91, 0x96, 0xe2, 0x04, 0xac, 0xcb, 0x25, 0xf9, 0x76, 0x8a, 0x72, 0xa2, 0x58, 0xdc, + 0x5a, 0x86, 0xd6, 0x84, 0x9d, 0x71, 0x2a, 0x07, 0xeb, 0xcf, 0x33, 0xf1, 0xee, 0x42, 0x5e, 0x85, + 0x21, 0x7b, 0x53, 0xb5, 0x9f, 0x7b, 0x3a, 0x26, 0x9a, 0x8f, 0x08, 0xe4, 0x2b, 0x70, 0x4a, 0xe3, + 0xd3, 0x65, 0xf4, 0xfc, 0x0a, 0x3a, 0xe2, 0x69, 0x2d, 0x49, 0xb7, 0x7c, 0x4e, 0xe7, 0x81, 0x42, + 0x71, 0x5c, 0x50, 0xa6, 0x2d, 0x8f, 0xf3, 0xd6, 0x3a, 0xab, 0xf3, 0xae, 0x23, 0x42, 0xb2, 0xb3, + 0x69, 0x1c, 0xb8, 0x1f, 0x9e, 0xf5, 0xdb, 0x19, 0x63, 0xd7, 0x50, 0x99, 0x2e, 0x33, 0xc7, 0x64, + 0xba, 0x7c, 0x1b, 0xa0, 0xd4, 0x89, 0xfc, 0x95, 0x56, 0xe0, 0x37, 0xf8, 0x6d, 0x88, 0x08, 0x0e, + 0x8e, 0x77, 0xbc, 0x14, 0xc1, 0x86, 0xbb, 0x90, 0x42, 0x4e, 0xb5, 0x0f, 0xcf, 0x7d, 0x5c, 0xfb, + 0x70, 0xeb, 0x0f, 0x33, 0xc6, 0x77, 0xc3, 0xa4, 0x3d, 0xf9, 0xe9, 0x69, 0xe6, 0x3b, 0xdd, 0x9f, + 0x5e, 0xfc, 0xe1, 0xfd, 0xff, 0x33, 0x70, 0x9a, 0x1b, 0x5a, 0xaf, 0x77, 0x9a, 0xdb, 0x34, 0x78, + 0xe8, 0x36, 0xbc, 0x7a, 0x1c, 0x23, 0x2a, 0xb6, 0xe5, 0xd2, 0xaa, 0x49, 0xc7, 0xe7, 0x0a, 0x27, + 0x37, 0xfc, 0x76, 0x5a, 0x58, 0xe8, 0x3c, 0x51, 0xa5, 0xba, 0xc2, 0x99, 0x4e, 0x6f, 0xfd, 0x7a, + 0x06, 0x5e, 0x3a, 0xb6, 0x16, 0x72, 0x1d, 0x46, 0x65, 0x54, 0xf6, 0x0c, 0x0e, 0x3c, 0x1a, 0x3d, + 0x76, 0x47, 0x64, 0x97, 0x58, 0xe4, 0xab, 0x70, 0x4a, 0x67, 0xb5, 0x15, 0xb8, 0x9e, 0x1e, 0xfb, + 0x3c, 0xa5, 0xd5, 0x11, 0x43, 0x49, 0x4a, 0x5d, 0xe9, 0x4c, 0xac, 0xff, 0x3b, 0xa3, 0xe5, 0xbe, + 0x7d, 0x4e, 0x65, 0xf1, 0x5b, 0x86, 0x2c, 0x2e, 0x23, 0xe4, 0xa9, 0x5e, 0xb1, 0xb2, 0x54, 0xfd, + 0x69, 0x5a, 0x33, 0xde, 0x45, 0xc0, 0x8f, 0x64, 0x61, 0xfc, 0x41, 0x48, 0x03, 0xfe, 0x20, 0xfb, + 0x9d, 0x15, 0x27, 0x4c, 0xf5, 0x6b, 0xa0, 0x48, 0x4e, 0x7f, 0x9a, 0xc1, 0x8b, 0x7a, 0x9d, 0x82, + 0x8d, 0x86, 0x96, 0xef, 0x0a, 0x47, 0x03, 0x33, 0x5d, 0x21, 0x94, 0x07, 0x10, 0x5a, 0x33, 0x53, + 0xdf, 0x61, 0xfe, 0xc3, 0x35, 0xf2, 0x45, 0x18, 0x7e, 0x80, 0xd7, 0x8e, 0x66, 0x64, 0x01, 0xc5, + 0x1f, 0x0b, 0xf9, 0x26, 0xdd, 0x09, 0xcd, 0xa0, 0x47, 0x9c, 0x90, 0x54, 0x61, 0x74, 0x39, 0xa0, + 0x98, 0xc9, 0x76, 0x68, 0x70, 0xbf, 0xd8, 0x1a, 0x27, 0x49, 0xfa, 0xc5, 0x0a, 0x4e, 0xd6, 0xcf, + 0x65, 0x81, 0xc4, 0x7d, 0xc4, 0xb4, 0x2d, 0xe1, 0x73, 0x3b, 0xe9, 0x1f, 0x18, 0x93, 0x7e, 0xbe, + 0x6b, 0xd2, 0x79, 0xf7, 0x06, 0x9a, 0xfb, 0xdf, 0xcd, 0xc0, 0xe9, 0x74, 0x42, 0x72, 0x09, 0x46, + 0x36, 0xb6, 0x36, 0x65, 0x70, 0x0a, 0xd1, 0x15, 0xbf, 0x8d, 0x3a, 0xbf, 0x2d, 0x8a, 0xc8, 0x9b, + 0x30, 0xf2, 0x25, 0x7b, 0x99, 0x9d, 0x43, 0x5a, 0x7c, 0xf1, 0x6f, 0x06, 0x4e, 0xcd, 0x3c, 0x8a, + 0x04, 0x92, 0x3e, 0xb7, 0xb9, 0x67, 0x36, 0xb7, 0x3f, 0x91, 0x85, 0xe9, 0x52, 0xad, 0x46, 0xc3, + 0x90, 0x09, 0x39, 0x34, 0x8c, 0x9e, 0xdb, 0x89, 0x4d, 0x0f, 0x3b, 0x61, 0xf4, 0x6d, 0xa0, 0x59, + 0xfd, 0xfd, 0x0c, 0x9c, 0x92, 0x54, 0x4f, 0x3c, 0xba, 0xbf, 0xb5, 0x17, 0xd0, 0x70, 0xcf, 0x6f, + 0xd4, 0x07, 0x4e, 0x62, 0xc0, 0x04, 0x3d, 0x8c, 0x4c, 0xac, 0xbf, 0xce, 0xef, 0x20, 0xc4, 0x10, + 0xf4, 0x78, 0xf4, 0xe2, 0xeb, 0x30, 0x5a, 0x6a, 0xb7, 0x03, 0xff, 0x09, 0xff, 0xec, 0x45, 0x58, + 0x33, 0x97, 0x83, 0x0c, 0xb7, 0x62, 0x0e, 0x62, 0xcd, 0x28, 0xd3, 0x16, 0x0f, 0xd8, 0x35, 0xc9, + 0x9b, 0x51, 0xa7, 0x2d, 0x5d, 0x3e, 0xc6, 0x72, 0xab, 0x0a, 0x64, 0x33, 0xf0, 0x9b, 0x7e, 0x44, + 0xeb, 0xbc, 0x3f, 0xe8, 0x8d, 0x7d, 0x6c, 0x80, 0x9f, 0x2d, 0x2f, 0x6a, 0x18, 0x01, 0x7e, 0x22, + 0x06, 0xb0, 0x39, 0xdc, 0xfa, 0xdf, 0x87, 0x61, 0x42, 0x1f, 0x1d, 0x62, 0xf1, 0xc8, 0xe4, 0x7e, + 0xa0, 0x87, 0x04, 0x70, 0x11, 0x62, 0x8b, 0x92, 0x38, 0x9e, 0x46, 0xf6, 0xd8, 0x78, 0x1a, 0x8f, + 0x60, 0x72, 0x33, 0xf0, 0x31, 0xfe, 0x1a, 0xcf, 0x70, 0xce, 0xb7, 0xc2, 0x59, 0x4d, 0x7f, 0x64, + 0x13, 0x89, 0xef, 0x9a, 0x78, 0x7b, 0xd2, 0x16, 0xd8, 0x4e, 0x32, 0xff, 0xb9, 0xc9, 0x87, 0x9b, + 0x4c, 0xb8, 0xa1, 0x08, 0xa2, 0xa8, 0x4c, 0x26, 0x18, 0xc4, 0x34, 0x99, 0x60, 0x10, 0xfd, 0x5b, + 0x1b, 0x7e, 0x56, 0xdf, 0x1a, 0xf9, 0xb9, 0x0c, 0x8c, 0x97, 0x5a, 0x2d, 0x11, 0xa7, 0xe3, 0x18, + 0x17, 0xe5, 0xaf, 0x0a, 0xab, 0x89, 0x77, 0x3e, 0x96, 0xd5, 0x04, 0xca, 0x2d, 0x21, 0x4a, 0xaa, + 0x71, 0x85, 0xba, 0x06, 0xa5, 0xb5, 0x83, 0xbc, 0x03, 0x05, 0xb5, 0xc8, 0x2b, 0xad, 0x3a, 0x7d, + 0x4a, 0xc3, 0xf9, 0xd1, 0x8b, 0xb9, 0x2b, 0x93, 0x22, 0xa8, 0xab, 0x2e, 0x99, 0x26, 0x11, 0xc9, + 0x16, 0x80, 0xab, 0x56, 0x57, 0x22, 0xb7, 0x5c, 0xf7, 0xf2, 0x13, 0xd2, 0x33, 0xfe, 0xc6, 0x87, + 0x29, 0x5d, 0x7a, 0x8e, 0xf9, 0x90, 0x26, 0x4c, 0xf3, 0xc4, 0x6e, 0x98, 0xf0, 0x1d, 0xe3, 0xa0, + 0xc3, 0xb1, 0xf3, 0xf0, 0xaa, 0xb8, 0x07, 0x7b, 0x51, 0xa4, 0x8b, 0xc3, 0x1c, 0xf2, 0x4e, 0x4a, + 0x50, 0xf4, 0x24, 0x6f, 0x1e, 0x42, 0xd7, 0x3e, 0xd3, 0xdd, 0x5e, 0xbe, 0xe8, 0x7f, 0x22, 0x03, + 0xa7, 0xf5, 0x45, 0x5f, 0xed, 0x6c, 0x37, 0x3d, 0xd4, 0x05, 0xc9, 0x35, 0x18, 0x13, 0x6b, 0x52, + 0x29, 0x51, 0xdd, 0xe1, 0xdc, 0x63, 0x14, 0xb2, 0xc2, 0x96, 0x21, 0xe3, 0x21, 0xa4, 0xee, 0xd9, + 0xc4, 0x3e, 0xc5, 0x8a, 0xe2, 0xa4, 0xa1, 0x01, 0xfe, 0x36, 0xd7, 0x27, 0x83, 0x58, 0xef, 0xc3, + 0x8c, 0x39, 0x13, 0x55, 0x1a, 0x91, 0xab, 0x30, 0x2a, 0xa7, 0x2f, 0x93, 0x3e, 0x7d, 0xb2, 0xdc, + 0x7a, 0x04, 0xa4, 0x8b, 0x3e, 0x44, 0xf3, 0x26, 0x1a, 0x49, 0xf3, 0x3b, 0xf9, 0xb8, 0xd8, 0x85, + 0xb8, 0x34, 0x2b, 0xda, 0x37, 0x6e, 0xd8, 0x88, 0x33, 0x52, 0xeb, 0xcf, 0xa7, 0x60, 0x36, 0x65, + 0xcf, 0x3d, 0x46, 0x26, 0x2a, 0x9a, 0x1b, 0xc4, 0x98, 0x8a, 0x70, 0x20, 0xb7, 0x85, 0xf7, 0x61, + 0xf8, 0xd8, 0xed, 0x80, 0x7b, 0x08, 0x24, 0x76, 0x01, 0x4e, 0xf6, 0xa9, 0xc8, 0x45, 0x7a, 0x10, + 0x92, 0xe1, 0x67, 0x16, 0x84, 0x64, 0x09, 0x26, 0x45, 0xaf, 0xc4, 0x76, 0xa5, 0x59, 0xaa, 0x06, + 0xbc, 0xc0, 0xe9, 0xda, 0xb6, 0x4c, 0x12, 0xce, 0x23, 0xf4, 0x1b, 0x4f, 0xa8, 0xe0, 0x31, 0xaa, + 0xf3, 0xc0, 0x82, 0x54, 0x1e, 0x1a, 0x09, 0xf9, 0x8f, 0x30, 0x37, 0x15, 0x42, 0xf4, 0x3d, 0x2b, + 0xdf, 0x6f, 0xcf, 0xaa, 0x3f, 0x9b, 0x3d, 0xeb, 0xbc, 0x6c, 0x63, 0xfa, 0xde, 0x95, 0xd2, 0x2c, + 0xf2, 0xab, 0x19, 0x98, 0xe1, 0x91, 0x30, 0xf4, 0xc6, 0xf6, 0x8d, 0x6e, 0x50, 0x7b, 0x36, 0x8d, + 0x3d, 0x27, 0x72, 0xb2, 0xa4, 0xb7, 0xb5, 0xbb, 0x51, 0xe4, 0xbb, 0x00, 0xd4, 0x17, 0xc5, 0x03, + 0x46, 0x8e, 0x2f, 0x9e, 0x4b, 0xd9, 0x05, 0x14, 0x52, 0x1c, 0x3f, 0x3e, 0x52, 0x74, 0x46, 0x46, + 0x32, 0x05, 0x25, 0x7f, 0x13, 0xe6, 0xd8, 0xf7, 0xa2, 0x20, 0x22, 0x6e, 0xcf, 0xfc, 0x38, 0xd6, + 0xf2, 0xd9, 0xde, 0x32, 0xd1, 0xb5, 0x34, 0x32, 0x1e, 0x5e, 0x34, 0xce, 0xea, 0x1a, 0xe9, 0x2e, + 0xfe, 0xa9, 0x15, 0x61, 0x38, 0x2c, 0x6c, 0x3d, 0x8f, 0xf1, 0xde, 0x63, 0x7f, 0x3b, 0x2b, 0xbf, + 0x05, 0xbe, 0xbf, 0x85, 0xa6, 0xc3, 0x28, 0x82, 0xc8, 0x97, 0x80, 0xa8, 0x10, 0x12, 0x1c, 0x46, + 0x65, 0xfc, 0x77, 0x7e, 0x6d, 0x1c, 0x87, 0xa2, 0x08, 0x64, 0xb1, 0xbe, 0x48, 0xba, 0x89, 0x09, + 0x85, 0x39, 0xd1, 0x69, 0x06, 0x95, 0x89, 0xa3, 0xc2, 0xf9, 0x29, 0x23, 0x2a, 0x52, 0x5c, 0x12, + 0xa7, 0x7f, 0xd5, 0xb2, 0x4f, 0x19, 0x57, 0x4e, 0x69, 0xec, 0xc8, 0x2d, 0x18, 0x43, 0xaf, 0xcd, + 0x55, 0x69, 0xb4, 0x25, 0x0c, 0x48, 0xd0, 0xbf, 0xd3, 0xd9, 0x33, 0x4d, 0xaf, 0x62, 0x54, 0xa6, + 0x0e, 0x94, 0x83, 0x03, 0xbb, 0xd3, 0xc2, 0xcb, 0x5d, 0x71, 0xdf, 0x51, 0x0f, 0x0e, 0x9c, 0xa0, + 0x63, 0xba, 0xf5, 0x22, 0x12, 0xf9, 0x06, 0x8c, 0xdf, 0x77, 0x9f, 0xca, 0xbb, 0x5d, 0x71, 0x81, + 0xdb, 0x6f, 0x07, 0xb2, 0x64, 0x6f, 0x9a, 0xee, 0x53, 0xa7, 0xde, 0x49, 0x06, 0x37, 0xc5, 0x6d, + 0x48, 0x67, 0x49, 0xbe, 0x06, 0xa0, 0xdd, 0x38, 0x93, 0x63, 0x2b, 0x78, 0x49, 0xc6, 0xfa, 0x4a, + 0xbd, 0x89, 0x46, 0xfe, 0x1a, 0xc3, 0x84, 0xe4, 0x30, 0xf7, 0xe9, 0x49, 0x0e, 0xa7, 0x3e, 0x3d, + 0xc9, 0x61, 0x61, 0x1b, 0xce, 0xf6, 0xfc, 0x74, 0x52, 0x42, 0xb0, 0x5e, 0x37, 0x43, 0xb0, 0x9e, + 0xed, 0x75, 0xc4, 0x86, 0x66, 0x98, 0xff, 0xd9, 0xc2, 0x5c, 0x6f, 0xe9, 0xe4, 0x5b, 0xd9, 0xc4, + 0x91, 0x2b, 0x14, 0x0b, 0x9e, 0x62, 0xa6, 0x97, 0x4c, 0x92, 0xc5, 0x74, 0xa0, 0xfc, 0x50, 0xce, + 0xc6, 0x0a, 0x4d, 0x22, 0x83, 0x3a, 0x3f, 0x9e, 0x3f, 0xe9, 0xe9, 0xfb, 0x2e, 0x4c, 0xf1, 0x44, + 0x80, 0xf7, 0xe8, 0xc1, 0xbe, 0x1f, 0xd4, 0x65, 0x9a, 0x6c, 0x94, 0xc1, 0xbb, 0xd2, 0xef, 0x26, + 0x70, 0x49, 0x59, 0x3a, 0x02, 0x0e, 0x63, 0xed, 0x67, 0x53, 0x77, 0x31, 0x86, 0xd0, 0xcf, 0x47, + 0x90, 0xbc, 0xa5, 0x04, 0x35, 0x1a, 0xe8, 0xc1, 0xfe, 0x03, 0x09, 0x4c, 0x91, 0xd7, 0x68, 0x60, + 0xfd, 0x71, 0x0e, 0x08, 0xaf, 0x69, 0xd9, 0x6d, 0xbb, 0xe8, 0x26, 0xeb, 0x61, 0x80, 0x99, 0x82, + 0xc0, 0x71, 0xb7, 0x1b, 0x54, 0x8f, 0xce, 0x24, 0x8c, 0x64, 0x55, 0x99, 0x93, 0x54, 0x74, 0xba, + 0x08, 0x7b, 0x6c, 0x75, 0xd9, 0x4f, 0xb2, 0xd5, 0x7d, 0x03, 0x5e, 0x2c, 0xb5, 0x31, 0xa3, 0xa8, + 0xac, 0xe5, 0xb6, 0x1f, 0xc8, 0x4d, 0xca, 0x70, 0xc0, 0x72, 0x15, 0x5a, 0x57, 0x4b, 0xfb, 0xb1, + 0xd0, 0xe4, 0x14, 0xb6, 0x2e, 0xdb, 0x91, 0xee, 0xd0, 0x2f, 0xe5, 0x94, 0x36, 0x96, 0xa4, 0xc8, + 0x29, 0x9c, 0x44, 0xf2, 0xf0, 0x02, 0x29, 0xa7, 0x60, 0xaa, 0x9c, 0x98, 0x87, 0x17, 0xd0, 0x1e, + 0xb2, 0x8e, 0x22, 0x21, 0xef, 0xc2, 0x78, 0xa9, 0x13, 0xf9, 0x82, 0xb1, 0xb0, 0xee, 0x8e, 0xed, + 0xb0, 0x45, 0x53, 0x0c, 0xd5, 0x27, 0x46, 0xb7, 0xfe, 0x2c, 0x07, 0x67, 0xbb, 0xa7, 0x57, 0x94, + 0xaa, 0xef, 0x23, 0x73, 0xcc, 0xf7, 0x91, 0xb6, 0x1a, 0xb2, 0x71, 0x98, 0xf3, 0x67, 0xb1, 0x1a, + 0x78, 0x62, 0xd2, 0x8f, 0xb9, 0x1a, 0xaa, 0x30, 0xae, 0x9f, 0x77, 0x43, 0x1f, 0xf7, 0xbc, 0xd3, + 0xb9, 0x30, 0xa5, 0x9e, 0xc7, 0x31, 0x18, 0x8e, 0x9f, 0x8e, 0x92, 0x21, 0x0c, 0x38, 0x06, 0xf9, + 0xff, 0xc1, 0x45, 0xbe, 0x27, 0x25, 0x3b, 0xbb, 0x74, 0x20, 0x39, 0x8a, 0x89, 0x5b, 0x3c, 0x3a, + 0x2c, 0x5e, 0xe3, 0x57, 0x25, 0x4e, 0xd7, 0xb0, 0x39, 0xdb, 0x07, 0x8e, 0x6c, 0x99, 0x56, 0xc9, + 0xb1, 0xbc, 0x31, 0x1b, 0xa9, 0x96, 0x29, 0xf2, 0xcd, 0x34, 0xb7, 0x17, 0x1e, 0x65, 0x98, 0x83, + 0x4d, 0x8f, 0x17, 0x79, 0x1d, 0x96, 0x4d, 0xbd, 0x0e, 0x93, 0xf7, 0x29, 0xb9, 0xd4, 0xfb, 0x94, + 0x32, 0x4c, 0x57, 0x3b, 0xdb, 0xb2, 0xee, 0xa4, 0xdf, 0x5b, 0xd8, 0xd9, 0x4e, 0xeb, 0x50, 0x92, + 0xc4, 0xfa, 0xd1, 0x2c, 0x4c, 0x6c, 0x36, 0x3a, 0xbb, 0x5e, 0xab, 0xec, 0x46, 0xee, 0x73, 0x7b, + 0x43, 0xf7, 0xb6, 0x71, 0x43, 0xa7, 0xbc, 0xbb, 0x54, 0xc7, 0x06, 0xba, 0x9e, 0xfb, 0xd9, 0x0c, + 0x4c, 0xc7, 0x24, 0xfc, 0x9c, 0x5d, 0x85, 0x21, 0xf6, 0x43, 0xe8, 0xad, 0x17, 0xbb, 0x18, 0xf3, + 0xf4, 0x64, 0xea, 0x2f, 0x71, 0x67, 0x66, 0xe6, 0xfe, 0x41, 0x0e, 0x0b, 0x9f, 0x83, 0xb1, 0x98, + 0xed, 0x49, 0xd2, 0x92, 0xfd, 0x46, 0x06, 0x0a, 0xc9, 0x9e, 0x90, 0x7b, 0x30, 0xca, 0x38, 0x79, + 0x54, 0xaa, 0xd4, 0x2f, 0xf7, 0xe8, 0xf3, 0x35, 0x81, 0xc6, 0x9b, 0x87, 0x83, 0x4f, 0x39, 0xc4, + 0x96, 0x1c, 0x16, 0x6c, 0x98, 0xd0, 0xb1, 0x52, 0x5a, 0xf7, 0x86, 0x29, 0x5c, 0x9c, 0x4e, 0x1f, + 0x07, 0x23, 0x99, 0x9a, 0xd1, 0x6a, 0x21, 0x37, 0x5c, 0x36, 0x16, 0x17, 0x8e, 0x55, 0x62, 0xdd, + 0xf0, 0x65, 0xb6, 0x18, 0x07, 0x3e, 0xd7, 0xd7, 0x59, 0xca, 0x82, 0x56, 0x78, 0xe4, 0x0d, 0x18, + 0xe1, 0xf5, 0xe9, 0x89, 0x80, 0xda, 0x08, 0xd1, 0x45, 0x5c, 0x8e, 0x63, 0xfd, 0xdd, 0x1c, 0x9c, + 0x8e, 0x9b, 0xf7, 0xa0, 0x5d, 0x77, 0x23, 0xba, 0xe9, 0x06, 0x6e, 0x33, 0x3c, 0xe6, 0x0b, 0xb8, + 0xd2, 0xd5, 0x34, 0x4c, 0xc1, 0x22, 0x9b, 0xa6, 0x35, 0xc8, 0x4a, 0x34, 0x08, 0xaf, 0x2f, 0x79, + 0x83, 0x64, 0x33, 0xc8, 0x3d, 0xc8, 0x55, 0x69, 0x24, 0xb6, 0xcd, 0xcb, 0x5d, 0xa3, 0xaa, 0xb7, + 0xeb, 0x5a, 0x95, 0x46, 0x7c, 0x12, 0x79, 0x7c, 0x1d, 0x6a, 0x44, 0x54, 0xad, 0xd2, 0x88, 0x3c, + 0x82, 0x91, 0x95, 0xa7, 0x6d, 0x5a, 0x8b, 0x44, 0x52, 0xbd, 0xab, 0xfd, 0xf9, 0x71, 0x5c, 0x2d, + 0xa7, 0x1e, 0x45, 0x80, 0x3e, 0x58, 0x1c, 0x65, 0xe1, 0x16, 0xe4, 0x65, 0xe5, 0x27, 0x59, 0xb9, + 0x0b, 0x6f, 0xc3, 0xb8, 0x56, 0xc9, 0x89, 0x16, 0xfd, 0x2f, 0xb1, 0x7d, 0xd5, 0x6f, 0xc8, 0x3c, + 0x7c, 0x2b, 0x5d, 0x62, 0x9e, 0x96, 0xc5, 0x84, 0x8b, 0x79, 0xce, 0x63, 0x51, 0xd4, 0x47, 0xde, + 0xab, 0xc0, 0x74, 0xf5, 0xb1, 0xd7, 0x8e, 0x03, 0x5b, 0x1a, 0x87, 0x29, 0xa6, 0xa4, 0x10, 0x3a, + 0x77, 0xf2, 0x30, 0x4d, 0xd2, 0x59, 0x7f, 0x99, 0x81, 0x11, 0xf6, 0xd7, 0xc3, 0x5b, 0xcf, 0xe9, + 0x96, 0x79, 0xd3, 0xd8, 0x32, 0x67, 0xb4, 0xd8, 0xd2, 0xb8, 0x71, 0xdc, 0x3a, 0x66, 0xb3, 0x3c, + 0x14, 0x13, 0xc4, 0x91, 0xc9, 0x1d, 0x18, 0x15, 0x56, 0x3d, 0xc2, 0xfc, 0x5a, 0x0f, 0x56, 0x2d, + 0xed, 0x7d, 0x94, 0x72, 0xee, 0xb7, 0x93, 0xb7, 0x19, 0x92, 0x9a, 0x89, 0xe4, 0x32, 0xc4, 0xa8, + 0x91, 0xbd, 0xd5, 0x47, 0x7f, 0x39, 0x1e, 0x6a, 0x59, 0xcb, 0xb7, 0xdc, 0xc3, 0x9b, 0xbe, 0x24, + 0x1e, 0x32, 0x72, 0xfd, 0x98, 0x9c, 0x96, 0xc9, 0x2d, 0x53, 0xdf, 0x38, 0xfe, 0xd9, 0x29, 0x1e, + 0xa0, 0x58, 0x36, 0xec, 0x3d, 0x98, 0xb8, 0xed, 0x07, 0xfb, 0x6e, 0xc0, 0xc3, 0x4e, 0x0a, 0xcb, + 0x01, 0xa6, 0x3a, 0x4e, 0xee, 0x70, 0x38, 0x0f, 0x5c, 0xf9, 0xed, 0xc3, 0xe2, 0xd0, 0x92, 0xef, + 0x37, 0x6c, 0x03, 0x9d, 0x6c, 0xc0, 0xe4, 0x7d, 0xf7, 0xa9, 0xa6, 0xf4, 0x72, 0x07, 0x98, 0xab, + 0x6c, 0x01, 0x33, 0xad, 0xf9, 0x78, 0x13, 0x2b, 0x93, 0x9e, 0x78, 0x30, 0xb5, 0xe9, 0x07, 0x91, + 0xa8, 0xc4, 0x6b, 0xed, 0x8a, 0xce, 0x76, 0x1b, 0x89, 0x5d, 0x4f, 0x35, 0x12, 0x3b, 0xdb, 0xf6, + 0x83, 0xc8, 0xd9, 0x51, 0xe4, 0x46, 0x60, 0x2a, 0x83, 0x31, 0x79, 0x0f, 0x66, 0xb4, 0xc0, 0x7b, + 0xb7, 0xfd, 0xa0, 0xe9, 0x4a, 0xa1, 0x1c, 0xef, 0x81, 0xd1, 0xde, 0x64, 0x07, 0xc1, 0x76, 0x37, + 0x26, 0xf9, 0x4a, 0x9a, 0x4b, 0xd1, 0x70, 0x6c, 0x65, 0x96, 0xe2, 0x52, 0xd4, 0xcb, 0xca, 0xac, + 0xdb, 0xb9, 0x68, 0xb7, 0x9f, 0x15, 0x6a, 0x7e, 0xe9, 0x86, 0x50, 0xbf, 0x8f, 0xb7, 0x32, 0x55, + 0xf3, 0xd6, 0xc3, 0xda, 0x74, 0x11, 0x72, 0x4b, 0x9b, 0xb7, 0xf1, 0xf5, 0x42, 0x1a, 0xda, 0xb4, + 0xf6, 0xdc, 0x56, 0x0d, 0x85, 0x65, 0x61, 0xf9, 0xad, 0xef, 0xc8, 0x4b, 0x9b, 0xb7, 0x89, 0x0b, + 0xb3, 0x9b, 0x34, 0x68, 0x7a, 0xd1, 0x97, 0x6f, 0xdc, 0xd0, 0x26, 0x2a, 0x8f, 0x4d, 0xbb, 0x2e, + 0x9a, 0x56, 0x6c, 0x23, 0x8a, 0xf3, 0xf4, 0xc6, 0x8d, 0xd4, 0xe9, 0x50, 0x0d, 0x4b, 0xe3, 0xc5, + 0x76, 0xc6, 0xfb, 0xee, 0xd3, 0xd8, 0x60, 0x3f, 0x14, 0xce, 0x99, 0xe7, 0xe5, 0xc2, 0x8a, 0x8d, + 0xfd, 0x8d, 0x9d, 0xd1, 0x24, 0x62, 0xba, 0x4e, 0xbc, 0xbc, 0x42, 0xe1, 0xd6, 0xb2, 0x20, 0xaf, + 0x74, 0xa4, 0x07, 0xaf, 0x2e, 0xb0, 0x6b, 0xe8, 0xe4, 0x81, 0xd2, 0xd8, 0xb8, 0xc6, 0x23, 0x52, + 0x37, 0x5e, 0xd7, 0x35, 0x36, 0x7e, 0x91, 0x62, 0x74, 0x6b, 0x5a, 0xa9, 0xf9, 0xdc, 0x83, 0xc1, + 0x36, 0xb9, 0x74, 0x2b, 0x82, 0x13, 0x27, 0x57, 0x04, 0x29, 0x0c, 0xad, 0xf9, 0xb5, 0xc7, 0x22, + 0x9a, 0xd6, 0x97, 0xd8, 0xe7, 0xde, 0xf0, 0x6b, 0x8f, 0x9f, 0x9d, 0x75, 0x2d, 0xb2, 0x27, 0xeb, + 0xac, 0xa9, 0x6c, 0x15, 0x88, 0x31, 0x11, 0x16, 0x9b, 0x73, 0x4a, 0x13, 0xd2, 0xca, 0xb8, 0xe0, + 0xc3, 0x17, 0x8d, 0x1c, 0x5a, 0xdb, 0x24, 0x27, 0x14, 0x0a, 0x65, 0x1a, 0x3e, 0x8e, 0xfc, 0xf6, + 0x72, 0xc3, 0x6b, 0x6f, 0xfb, 0x6e, 0x20, 0x63, 0x9c, 0x76, 0x7f, 0xdf, 0xaf, 0xa6, 0x7e, 0xdf, + 0x33, 0x75, 0x4e, 0xef, 0xd4, 0x24, 0x03, 0xbb, 0x8b, 0x25, 0xf9, 0x0a, 0x4c, 0xb1, 0xc5, 0xbd, + 0xf2, 0x34, 0xa2, 0x2d, 0x3e, 0xf3, 0x33, 0x28, 0x3a, 0xcc, 0x69, 0x41, 0xfd, 0x55, 0x21, 0x5f, + 0x53, 0xf8, 0xb1, 0x53, 0x45, 0x60, 0x44, 0x22, 0x33, 0x58, 0x91, 0x3a, 0xcc, 0xdf, 0x77, 0x9f, + 0x6a, 0x49, 0x22, 0xb5, 0x45, 0x4a, 0x70, 0x81, 0x5d, 0x39, 0x3a, 0x2c, 0xbe, 0xcc, 0x16, 0x58, + 0x1c, 0x76, 0xb7, 0xc7, 0x7a, 0xed, 0xc9, 0x89, 0x7c, 0x0f, 0x9c, 0x11, 0xdd, 0x2a, 0x63, 0xa6, + 0x1b, 0x3f, 0x38, 0xa8, 0xee, 0xb9, 0xe8, 0xab, 0x33, 0x7b, 0xb2, 0x0d, 0x51, 0x0e, 0x58, 0x5d, + 0xf2, 0x71, 0x42, 0xce, 0xc8, 0xee, 0x55, 0x03, 0xf9, 0x08, 0xa6, 0xf8, 0x93, 0xcd, 0xaa, 0x1f, + 0x46, 0xa8, 0xd0, 0xcf, 0x9d, 0xcc, 0x04, 0x9d, 0xbf, 0x03, 0x71, 0xa7, 0x8d, 0xc4, 0x05, 0x40, + 0x82, 0x33, 0x79, 0x07, 0xc6, 0x37, 0xbd, 0x16, 0x8f, 0x15, 0x58, 0xd9, 0xc4, 0xab, 0x47, 0x71, + 0xfe, 0xb4, 0xbd, 0x96, 0x23, 0xb5, 0xea, 0xb6, 0xda, 0x2e, 0x74, 0x6c, 0xf2, 0x08, 0xc6, 0xab, + 0xd5, 0xd5, 0xdb, 0x1e, 0x3b, 0x00, 0xdb, 0x07, 0xf3, 0xa7, 0x7b, 0xb4, 0xf2, 0x52, 0x6a, 0x2b, + 0x27, 0xc3, 0x70, 0x0f, 0x93, 0xf8, 0x3b, 0x35, 0xbf, 0x7d, 0x60, 0xeb, 0x9c, 0x52, 0xcc, 0xb2, + 0xcf, 0x3c, 0x63, 0xb3, 0xec, 0x0a, 0x4c, 0x6b, 0x06, 0x96, 0x68, 0x5c, 0x39, 0x1f, 0x07, 0x98, + 0xd1, 0xcd, 0xb0, 0x93, 0x6e, 0x88, 0x49, 0x3a, 0x69, 0x8f, 0x7d, 0xf6, 0xa4, 0xf6, 0xd8, 0x1e, + 0xcc, 0xf0, 0xc9, 0x10, 0xeb, 0x00, 0x67, 0x7a, 0xa1, 0xc7, 0x18, 0x5e, 0x4d, 0x1d, 0xc3, 0x59, + 0x31, 0xd3, 0x72, 0x91, 0xe1, 0x13, 0x65, 0x37, 0x57, 0xb2, 0x03, 0x44, 0x00, 0xdd, 0xc8, 0xdd, + 0x76, 0x43, 0x8a, 0x75, 0xbd, 0xd8, 0xa3, 0xae, 0x97, 0x53, 0xeb, 0x9a, 0x92, 0x75, 0x6d, 0xf3, + 0x6a, 0x52, 0x38, 0x92, 0x96, 0xac, 0x47, 0xae, 0x2f, 0x1c, 0xd8, 0x73, 0xc6, 0x3d, 0x68, 0x37, + 0x02, 0x0f, 0xd4, 0x9b, 0x5c, 0xb4, 0xc9, 0x71, 0x4f, 0xe1, 0x4c, 0x9e, 0xc2, 0xe9, 0xee, 0x56, + 0x60, 0x9d, 0xe7, 0xb1, 0xce, 0xf3, 0x46, 0x9d, 0x49, 0x24, 0xbe, 0x6e, 0xcc, 0x6e, 0x25, 0x6b, + 0xed, 0xc1, 0x9f, 0xfc, 0x50, 0x06, 0xce, 0xdc, 0xbf, 0x5d, 0xc2, 0xbc, 0x72, 0x1e, 0x0f, 0x1d, + 0xa5, 0xdc, 0x37, 0x2f, 0x88, 0xbb, 0xf2, 0xe4, 0xfd, 0xbd, 0x94, 0x38, 0x70, 0xab, 0x60, 0x32, + 0xe2, 0xa5, 0xe6, 0x8e, 0xcb, 0xd3, 0xd5, 0x09, 0x16, 0x29, 0x3e, 0x9e, 0xbf, 0xf0, 0x27, 0xc5, + 0x8c, 0xdd, 0xab, 0x2a, 0xd2, 0x80, 0x05, 0x73, 0x58, 0xa4, 0xc5, 0xfc, 0x1e, 0x6d, 0x34, 0xe6, + 0x8b, 0xb8, 0xa2, 0xdf, 0x38, 0x3a, 0x2c, 0x5e, 0xe9, 0x1a, 0x5d, 0x65, 0x85, 0xcf, 0x30, 0xb5, + 0x0e, 0xf7, 0xe1, 0x77, 0x77, 0x28, 0x3f, 0x59, 0x98, 0x4a, 0x33, 0x2f, 0xff, 0x9d, 0x6c, 0xe2, + 0xa4, 0x22, 0x15, 0x18, 0x15, 0x0b, 0x50, 0x88, 0xee, 0xdd, 0xcb, 0xec, 0x7c, 0xea, 0x32, 0x1b, + 0x15, 0x6b, 0xd9, 0x96, 0xf4, 0x64, 0x9f, 0xb1, 0xc2, 0x56, 0x08, 0x5d, 0xe7, 0x6b, 0xfc, 0x20, + 0x42, 0x90, 0x71, 0xe4, 0x96, 0x4f, 0xee, 0x05, 0x65, 0x3a, 0xd9, 0xe1, 0xd9, 0x2b, 0x6b, 0x23, + 0x8f, 0x79, 0xd2, 0x93, 0x9c, 0x72, 0xa5, 0x31, 0x33, 0x9c, 0x3c, 0xb3, 0x0a, 0x59, 0x2d, 0xd6, + 0x6f, 0x67, 0x60, 0xd2, 0x38, 0xea, 0xc8, 0x2d, 0xcd, 0x4f, 0x2c, 0x76, 0x9d, 0x36, 0x70, 0x70, + 0xf7, 0x4b, 0x7a, 0x90, 0xdd, 0x12, 0xc6, 0xe2, 0xd9, 0xde, 0x74, 0xb8, 0xfa, 0x93, 0x6e, 0x83, + 0xfd, 0x6f, 0x06, 0x55, 0x2a, 0xb5, 0xa1, 0x1e, 0xa9, 0xd4, 0x7e, 0xe5, 0x1c, 0x4c, 0x99, 0xba, + 0x10, 0x79, 0x03, 0x46, 0xf0, 0x42, 0x55, 0x2a, 0xd6, 0x3c, 0xc9, 0xbe, 0x9f, 0xc8, 0x0a, 0x2a, + 0x70, 0xc8, 0x2b, 0x00, 0xca, 0x6a, 0x57, 0x3e, 0x27, 0x0c, 0x1f, 0x1d, 0x16, 0x33, 0x6f, 0xda, + 0x5a, 0x01, 0xf9, 0x3a, 0xc0, 0xba, 0x5f, 0xa7, 0x2a, 0xef, 0x64, 0x9f, 0x27, 0xf3, 0x57, 0xbb, + 0x12, 0x02, 0x9c, 0x6a, 0xf9, 0x75, 0xda, 0x1d, 0xfd, 0x5f, 0xe3, 0x48, 0xbe, 0x00, 0xc3, 0x76, + 0x87, 0x29, 0xf1, 0xfc, 0xfe, 0x64, 0x5c, 0x1e, 0x39, 0x9d, 0x06, 0x8d, 0x35, 0xc4, 0xa0, 0x93, + 0xb4, 0x06, 0x63, 0x00, 0xf2, 0x01, 0x4f, 0x14, 0x20, 0xa2, 0xec, 0x0d, 0xc7, 0x0f, 0x2c, 0x9a, + 0x28, 0xd2, 0x15, 0x67, 0x4f, 0x23, 0x21, 0x1b, 0x30, 0xaa, 0xbf, 0x0c, 0x68, 0x0e, 0xc7, 0xfa, + 0xeb, 0x91, 0xa6, 0x6e, 0x8a, 0x84, 0x95, 0xc9, 0x47, 0x03, 0xc9, 0x85, 0xbc, 0x0b, 0x63, 0x8c, + 0x3d, 0xfb, 0x94, 0x43, 0xa1, 0x66, 0xe0, 0x33, 0x8a, 0xd6, 0x20, 0xb6, 0x1d, 0x18, 0xb1, 0xf0, + 0x14, 0x01, 0xf9, 0x0a, 0xa6, 0x42, 0x14, 0x43, 0xdd, 0xd7, 0x94, 0xe2, 0x72, 0xd7, 0x50, 0x63, + 0x6e, 0xc4, 0xee, 0xec, 0xf1, 0x8a, 0x1f, 0xd9, 0x55, 0xf1, 0xae, 0x06, 0x49, 0xee, 0xf0, 0x5a, + 0x57, 0x05, 0xf3, 0x32, 0x84, 0x53, 0x77, 0xfe, 0x50, 0x83, 0x2f, 0x69, 0x43, 0x21, 0x96, 0xf2, + 0x44, 0x5d, 0xd0, 0xaf, 0xae, 0x37, 0xbb, 0xea, 0xd2, 0x27, 0xb0, 0xab, 0xba, 0x2e, 0xee, 0xa4, + 0x0e, 0x53, 0xf2, 0xc4, 0x10, 0xf5, 0x8d, 0xf7, 0xab, 0xef, 0x95, 0xae, 0xfa, 0x66, 0xeb, 0xdb, + 0xdd, 0xf5, 0x24, 0x78, 0x92, 0x77, 0x61, 0x52, 0x42, 0x78, 0x36, 0xcf, 0x89, 0x38, 0x6d, 0x63, + 0x7d, 0xbb, 0x2b, 0x87, 0xa7, 0x89, 0xac, 0x53, 0xf3, 0xd5, 0x31, 0x69, 0x50, 0x27, 0x57, 0x85, + 0x89, 0x4c, 0x3e, 0x84, 0xf1, 0x4a, 0x93, 0x75, 0xc4, 0x6f, 0xb9, 0x11, 0x15, 0xce, 0x68, 0xd2, + 0x2c, 0x44, 0x2b, 0xd1, 0x96, 0x2a, 0xcf, 0x53, 0x1a, 0x17, 0x19, 0x79, 0x4a, 0x63, 0x30, 0x1b, + 0x3c, 0xfe, 0x14, 0x24, 0xd6, 0xb0, 0x74, 0x54, 0x3b, 0x9f, 0x62, 0x9a, 0xa1, 0xb1, 0x17, 0xd1, + 0x2c, 0x19, 0x54, 0x3e, 0xc5, 0x24, 0xa2, 0x59, 0xea, 0x3c, 0xc9, 0x7b, 0x30, 0x2e, 0xf2, 0xde, + 0x94, 0xec, 0xf5, 0x70, 0xbe, 0x80, 0x9d, 0x47, 0xf7, 0x7a, 0x99, 0x22, 0xc7, 0x71, 0x83, 0x84, + 0x0d, 0x62, 0x8c, 0x4f, 0xbe, 0x0c, 0x73, 0x8f, 0xbc, 0x56, 0xdd, 0xdf, 0x0f, 0xc5, 0x31, 0x25, + 0x36, 0xba, 0x99, 0xd8, 0x03, 0x68, 0x9f, 0x97, 0x2b, 0xe1, 0xac, 0x6b, 0xe3, 0x4b, 0xe5, 0x40, + 0xfe, 0x46, 0x17, 0x67, 0xbe, 0x82, 0x48, 0xbf, 0x15, 0xb4, 0xd8, 0xb5, 0x82, 0xba, 0xab, 0x4f, + 0x2e, 0xa7, 0xd4, 0x6a, 0x88, 0x0f, 0xc4, 0x3c, 0xdf, 0xef, 0xfa, 0x5e, 0x6b, 0x7e, 0x16, 0xf7, + 0xc2, 0x17, 0x93, 0x0e, 0xed, 0x88, 0x27, 0xf2, 0xbd, 0x5a, 0x47, 0x87, 0xc5, 0x0b, 0x49, 0x21, + 0xfc, 0x23, 0xdf, 0xb8, 0x28, 0x4f, 0x61, 0x4d, 0x3e, 0x84, 0x09, 0xf6, 0xbf, 0xba, 0x25, 0x98, + 0x33, 0x8c, 0xf9, 0x34, 0x4c, 0x51, 0x0f, 0xce, 0x11, 0x26, 0xe6, 0x49, 0xb9, 0x40, 0x30, 0x58, + 0x91, 0xb7, 0x01, 0x98, 0x1c, 0x23, 0xb6, 0xe3, 0x53, 0x71, 0xf0, 0x50, 0x14, 0x83, 0xba, 0x37, + 0xe2, 0x18, 0x99, 0xbc, 0x0b, 0xe3, 0xec, 0x57, 0xb5, 0x53, 0xf7, 0xd9, 0xb7, 0x71, 0x1a, 0x69, + 0xb9, 0x8f, 0x1f, 0xa3, 0x0d, 0x39, 0xdc, 0xf0, 0xf1, 0x8b, 0xd1, 0xc9, 0x2a, 0x4c, 0x63, 0x90, + 0xd7, 0x0a, 0x26, 0x83, 0x8e, 0x3c, 0x1a, 0xce, 0x9f, 0xd1, 0x9e, 0xb0, 0x59, 0x91, 0xe3, 0xa9, + 0x32, 0x5d, 0xb9, 0x48, 0x90, 0x91, 0x10, 0x66, 0xe3, 0xdd, 0x25, 0x7e, 0x10, 0x9f, 0xc7, 0x41, + 0x92, 0x22, 0x75, 0x37, 0x06, 0xdf, 0x8f, 0xd9, 0x8c, 0x68, 0x1b, 0x97, 0x7c, 0x4e, 0xd0, 0x2b, + 0x4c, 0xe3, 0x4e, 0x6c, 0x20, 0x77, 0x96, 0x37, 0x93, 0x51, 0x50, 0xcf, 0x62, 0x0f, 0x70, 0x9a, + 0x77, 0x6b, 0x71, 0x22, 0xda, 0x94, 0x48, 0xa8, 0x29, 0xd4, 0xe4, 0xbb, 0xe1, 0x94, 0xdc, 0x41, + 0x44, 0x91, 0x58, 0xd7, 0x0b, 0x27, 0xdc, 0x89, 0xeb, 0xdb, 0xaa, 0xea, 0xae, 0x25, 0x9d, 0x5e, + 0x05, 0x71, 0x61, 0x1c, 0xa7, 0x55, 0xd4, 0xf8, 0x62, 0xbf, 0x1a, 0xaf, 0x74, 0xd5, 0x78, 0x1a, + 0x17, 0x4a, 0x77, 0x65, 0x3a, 0x4f, 0xb2, 0x04, 0x93, 0xe2, 0x3b, 0x12, 0xab, 0xed, 0x1c, 0x8e, + 0x16, 0xde, 0x2a, 0xc9, 0x2f, 0xb0, 0x6b, 0xc1, 0x99, 0x24, 0xfa, 0x8e, 0xcc, 0x9f, 0x11, 0xce, + 0x1b, 0x3b, 0x72, 0xf2, 0xf5, 0xc0, 0x44, 0x66, 0x3b, 0x52, 0x2c, 0xc5, 0xac, 0x3c, 0x6d, 0x07, + 0xe2, 0xce, 0xe8, 0x42, 0x9c, 0x1c, 0x44, 0x13, 0x7e, 0x1c, 0xaa, 0x30, 0xf4, 0x2d, 0x21, 0x8d, + 0x03, 0x79, 0x00, 0xb3, 0xea, 0xd4, 0xd6, 0x18, 0x17, 0xe3, 0x24, 0x2b, 0xf1, 0x51, 0x9f, 0xce, + 0x37, 0x8d, 0x9e, 0xb8, 0x70, 0xc6, 0x38, 0xa7, 0x35, 0xd6, 0x17, 0x91, 0x35, 0x26, 0x3e, 0x36, + 0x0f, 0xf9, 0x74, 0xf6, 0xbd, 0xf8, 0x90, 0x8f, 0x60, 0x21, 0x79, 0x36, 0x6b, 0xb5, 0xbc, 0x84, + 0xb5, 0xbc, 0x76, 0x74, 0x58, 0xbc, 0xdc, 0x75, 0xbc, 0xa7, 0x57, 0xd4, 0x87, 0x1b, 0xf9, 0x3a, + 0xcc, 0x9b, 0xe7, 0xb3, 0x56, 0x93, 0x85, 0x35, 0xe1, 0xa7, 0xa3, 0x0e, 0xf6, 0xf4, 0x1a, 0x7a, + 0xf2, 0x20, 0x11, 0x14, 0x53, 0x57, 0xb7, 0x56, 0xcd, 0xa5, 0xb8, 0x43, 0x5d, 0x5f, 0x49, 0x7a, + 0x75, 0xc7, 0xb1, 0x24, 0xfb, 0x70, 0x21, 0xed, 0x98, 0xd0, 0x2a, 0x7d, 0x59, 0xdd, 0xca, 0xbe, + 0x9e, 0x7e, 0xe4, 0xa4, 0xd7, 0x7c, 0x0c, 0x5b, 0xf2, 0x15, 0x38, 0xa5, 0x7d, 0x5f, 0x5a, 0x7d, + 0xaf, 0x60, 0x7d, 0xe8, 0xbf, 0xab, 0x7f, 0x98, 0xe9, 0xb5, 0xa4, 0xf3, 0x20, 0x4d, 0x98, 0x95, + 0x1d, 0xc7, 0xeb, 0x6f, 0x71, 0xf4, 0x5c, 0x36, 0x76, 0xd5, 0x6e, 0x0c, 0x2d, 0x75, 0xfd, 0xb6, + 0xd3, 0x8e, 0x09, 0xf5, 0x95, 0x9e, 0xc2, 0x97, 0xac, 0xc2, 0x48, 0x75, 0xb3, 0x72, 0xfb, 0xf6, + 0xca, 0xfc, 0xab, 0x58, 0x83, 0x74, 0xf6, 0xe1, 0x40, 0x43, 0x69, 0x12, 0x36, 0x66, 0x6d, 0x6f, + 0x67, 0xc7, 0xf0, 0xa9, 0xe2, 0xa8, 0xa4, 0x01, 0x84, 0xab, 0x9c, 0x7a, 0xf5, 0xf3, 0xaf, 0x19, + 0xe1, 0x67, 0x79, 0x36, 0x21, 0xad, 0xd5, 0x2f, 0x8b, 0x56, 0x9f, 0xeb, 0x26, 0xd5, 0x4d, 0x7f, + 0x79, 0xa9, 0xd6, 0xee, 0xbb, 0x43, 0xf9, 0x2b, 0x85, 0xab, 0x77, 0x87, 0xf2, 0x57, 0x0b, 0xaf, + 0xd9, 0xe7, 0xd2, 0x53, 0x8b, 0xf3, 0xa1, 0xb5, 0x2f, 0xf7, 0x2b, 0x8d, 0x07, 0xde, 0x5a, 0x83, + 0x42, 0xb2, 0x79, 0xe4, 0xf3, 0x30, 0xa9, 0x07, 0x74, 0x96, 0xca, 0x22, 0xf7, 0xe3, 0x0f, 0x76, + 0x8d, 0x2d, 0xcf, 0x40, 0xb4, 0x7e, 0x29, 0x03, 0xb3, 0x29, 0x63, 0x48, 0x2e, 0xc3, 0x10, 0x66, + 0x5c, 0xd1, 0x2c, 0x02, 0x12, 0x99, 0x56, 0xb0, 0x9c, 0x7c, 0x06, 0x46, 0xcb, 0xeb, 0xd5, 0x6a, + 0x69, 0x5d, 0xaa, 0x9b, 0x7c, 0xab, 0x6d, 0x85, 0x4e, 0xe8, 0x9a, 0x0f, 0x89, 0x02, 0x8d, 0xbc, + 0x09, 0x23, 0x95, 0x4d, 0x24, 0xe0, 0x26, 0x69, 0xa8, 0x7e, 0x79, 0xed, 0x24, 0xbe, 0x40, 0xb2, + 0x7e, 0x2c, 0x03, 0xa4, 0x7b, 0x41, 0x90, 0x1b, 0x30, 0xae, 0x2f, 0x3b, 0xde, 0x5f, 0x7c, 0xf4, + 0xd2, 0xa6, 0xc6, 0xd6, 0x71, 0x48, 0x19, 0x86, 0x31, 0x27, 0x9d, 0x7a, 0xc1, 0x4c, 0x3d, 0xbc, + 0xce, 0x74, 0x1d, 0x5e, 0xc3, 0x98, 0xf1, 0xce, 0xe6, 0xc4, 0xd6, 0xef, 0x67, 0x80, 0x74, 0x1f, + 0xf8, 0x03, 0x5b, 0x50, 0xbc, 0xa5, 0xb9, 0x14, 0xeb, 0x39, 0x15, 0x54, 0x42, 0x1c, 0x5d, 0xd1, + 0x8b, 0x9d, 0x8f, 0x2f, 0x1b, 0x17, 0x0b, 0xbd, 0xfd, 0xd0, 0xae, 0xc2, 0xf0, 0x43, 0x1a, 0x6c, + 0x4b, 0x6b, 0x4b, 0xb4, 0xd0, 0x7a, 0xc2, 0x00, 0xba, 0xa2, 0x8d, 0x18, 0xd6, 0x9f, 0x65, 0x60, + 0x2e, 0x4d, 0x0a, 0x3d, 0xc6, 0x5d, 0xcc, 0x4a, 0x78, 0xba, 0xa1, 0xf5, 0x04, 0x37, 0xdf, 0x52, + 0xfe, 0x6d, 0x45, 0x18, 0x66, 0x9d, 0x95, 0x33, 0x8c, 0x17, 0x1d, 0x6c, 0x34, 0x42, 0x9b, 0xc3, + 0x19, 0x02, 0x0f, 0x81, 0x35, 0x84, 0xd1, 0xd3, 0x10, 0x01, 0x85, 0x1c, 0x9b, 0xc3, 0x19, 0xc2, + 0x7d, 0xbf, 0xae, 0xd2, 0x31, 0x23, 0x42, 0x93, 0x01, 0x6c, 0x0e, 0x27, 0x97, 0x61, 0x74, 0xa3, + 0xb5, 0x46, 0xdd, 0x27, 0x32, 0xae, 0x37, 0x5a, 0x7b, 0xf8, 0x2d, 0xa7, 0xc1, 0x60, 0xb6, 0x2c, + 0xb4, 0x7e, 0x36, 0x03, 0x33, 0x5d, 0x02, 0xf0, 0xf1, 0x1e, 0x71, 0xfd, 0x5d, 0x53, 0x06, 0xe9, + 0x1f, 0x6f, 0xfe, 0x50, 0x7a, 0xf3, 0xad, 0xff, 0x6b, 0x08, 0xce, 0xf4, 0xb8, 0x8f, 0x88, 0x5d, + 0xe7, 0x32, 0xc7, 0xba, 0xce, 0x7d, 0x95, 0xe9, 0xff, 0xae, 0xd7, 0x0c, 0xb7, 0xfc, 0xb8, 0xc5, + 0xb1, 0x05, 0x3e, 0x96, 0xc9, 0x8c, 0xd4, 0xd2, 0x54, 0xfb, 0x6c, 0x0d, 0x29, 0x9c, 0xc8, 0xef, + 0x16, 0x87, 0x0c, 0x66, 0x5d, 0xce, 0x6b, 0xb9, 0xbf, 0x22, 0xce, 0x6b, 0xa6, 0x3b, 0xc5, 0xd0, + 0x33, 0x75, 0xa7, 0x48, 0x37, 0xc5, 0x1c, 0xfe, 0x24, 0x86, 0xb9, 0xcb, 0x30, 0xc9, 0xcd, 0x5d, + 0x4a, 0x21, 0x9f, 0xa4, 0x91, 0x2e, 0x13, 0x19, 0x37, 0xec, 0x9e, 0x0b, 0x83, 0x86, 0xac, 0x9a, + 0xa6, 0xff, 0xa3, 0xf8, 0x4c, 0x77, 0xb9, 0xb7, 0x69, 0xbf, 0xf1, 0x3c, 0xaf, 0x93, 0x5a, 0x3f, + 0x9b, 0x35, 0x3d, 0xdb, 0xfe, 0x2a, 0xae, 0xbc, 0xab, 0x30, 0xfc, 0x68, 0x8f, 0x06, 0x72, 0xbf, + 0xc3, 0x86, 0xec, 0x33, 0x80, 0xde, 0x10, 0xc4, 0x20, 0xb7, 0x61, 0x6a, 0x93, 0xcf, 0x84, 0x1c, + 0xde, 0xa1, 0x58, 0x4d, 0x6c, 0x8b, 0xcb, 0x8c, 0x94, 0xf1, 0x4d, 0x50, 0x59, 0x77, 0xe0, 0xbc, + 0xf1, 0x41, 0x8a, 0x48, 0x1c, 0xdc, 0x02, 0x9f, 0x9f, 0x88, 0x53, 0xb1, 0xcf, 0x41, 0xbc, 0x7b, + 0xd8, 0x09, 0xa8, 0xb5, 0x03, 0x17, 0xfa, 0x32, 0x62, 0x07, 0x11, 0xb4, 0xd5, 0xaf, 0x84, 0x99, + 0x60, 0x5f, 0x52, 0x5b, 0xa3, 0xb3, 0xbe, 0x07, 0x26, 0xf4, 0x51, 0xc6, 0x3d, 0x95, 0xfd, 0x16, + 0x9b, 0x1a, 0xdf, 0x53, 0x19, 0xc0, 0xe6, 0xf0, 0xf8, 0xfa, 0x39, 0x9b, 0x7e, 0xfd, 0x1c, 0x4f, + 0x7f, 0xee, 0xb8, 0xe9, 0x67, 0x95, 0xe3, 0x27, 0xab, 0x55, 0x8e, 0xbf, 0xf5, 0xca, 0x31, 0xd4, + 0x86, 0xcd, 0xe1, 0xcf, 0xb4, 0xf2, 0xdf, 0x93, 0x99, 0x4d, 0xd0, 0xc0, 0x5f, 0xea, 0xf3, 0x71, + 0xa6, 0xe4, 0xd9, 0x34, 0x2d, 0x3d, 0xc6, 0x8c, 0x0f, 0xc9, 0xec, 0x71, 0x87, 0xe4, 0x49, 0x16, + 0xe2, 0x75, 0x18, 0x2d, 0x89, 0x47, 0xf4, 0xa1, 0x58, 0xb0, 0x71, 0xbb, 0x5e, 0xcc, 0x25, 0x96, + 0xf5, 0x0b, 0x19, 0x38, 0x95, 0x7a, 0xcd, 0xc7, 0x6a, 0xe5, 0xf7, 0x89, 0xda, 0x77, 0x98, 0xbc, + 0x4c, 0xe4, 0x18, 0x27, 0xf1, 0xb3, 0x1e, 0xbc, 0x2f, 0xd6, 0x4b, 0x30, 0xa6, 0x1e, 0x99, 0xc8, + 0x9c, 0x9c, 0x3a, 0xb4, 0xac, 0x92, 0x6f, 0x15, 0x55, 0x00, 0xd6, 0x82, 0x67, 0x6a, 0x07, 0x68, + 0xfd, 0x5e, 0x96, 0x67, 0xbd, 0x7b, 0x6e, 0x43, 0x1f, 0xa6, 0x1b, 0xef, 0xb1, 0x2e, 0xf5, 0x0e, + 0x78, 0x48, 0x56, 0x60, 0xa4, 0x1a, 0xb9, 0x51, 0x47, 0xba, 0x87, 0xcf, 0xea, 0x64, 0x58, 0xf0, + 0x70, 0x31, 0x76, 0x10, 0x0e, 0x11, 0x62, 0x28, 0x36, 0x08, 0xd1, 0x6c, 0x00, 0x3d, 0x98, 0xd0, + 0x69, 0xc9, 0x87, 0x30, 0x25, 0xe3, 0xb9, 0x71, 0x9f, 0x79, 0xf1, 0x20, 0x26, 0xad, 0x49, 0x64, + 0x3c, 0x37, 0xdd, 0xc7, 0xde, 0xc0, 0xd7, 0x77, 0xea, 0xb6, 0x8e, 0x6c, 0xfd, 0xf9, 0x08, 0x5f, + 0x07, 0x22, 0x30, 0xe3, 0x36, 0x4c, 0x6d, 0x54, 0xca, 0xcb, 0xda, 0xa5, 0x9d, 0x99, 0xd7, 0x63, + 0xe5, 0x69, 0x44, 0x83, 0x96, 0xdb, 0x10, 0x08, 0x07, 0xf1, 0xd9, 0xe0, 0x7b, 0xf5, 0x5a, 0xfa, + 0x85, 0x5e, 0x82, 0x23, 0xab, 0x83, 0xab, 0x4a, 0xaa, 0x8e, 0xec, 0x80, 0x75, 0x84, 0x6e, 0xb3, + 0xd1, 0xa3, 0x0e, 0x93, 0x23, 0xd9, 0x43, 0x25, 0x6b, 0xaf, 0xb3, 0xad, 0xd5, 0x92, 0xeb, 0x5f, + 0xcb, 0x25, 0x51, 0xcb, 0x8b, 0x42, 0x45, 0x4c, 0xad, 0xa7, 0x8b, 0x6b, 0xfc, 0x01, 0x0f, 0x1d, + 0xfb, 0x01, 0xff, 0xad, 0x0c, 0x8c, 0x70, 0x41, 0x49, 0xac, 0xaf, 0x1e, 0xa2, 0xd8, 0xa3, 0x67, + 0x23, 0x8a, 0x15, 0x70, 0x03, 0x37, 0x56, 0x1a, 0x2f, 0x23, 0xe5, 0xc4, 0x82, 0x95, 0x36, 0xa5, + 0x78, 0xfd, 0xce, 0x4b, 0x8e, 0x5f, 0xaf, 0xa4, 0x12, 0xfb, 0x52, 0x8f, 0x1e, 0xeb, 0xae, 0x27, + 0xfd, 0xcf, 0x47, 0x85, 0x2f, 0xb5, 0xe9, 0x41, 0xbd, 0x06, 0x63, 0xc2, 0x43, 0x7b, 0xe9, 0x40, + 0x3c, 0xb2, 0x15, 0x0c, 0xbb, 0x85, 0xfa, 0xd2, 0x41, 0x2c, 0x04, 0x0a, 0x1f, 0x6f, 0x67, 0xfb, + 0xc0, 0xc8, 0xee, 0x27, 0x11, 0xc9, 0x06, 0xcf, 0x7a, 0xc5, 0x43, 0x57, 0x9a, 0xb1, 0xaa, 0x15, + 0x5c, 0xc4, 0x7e, 0x91, 0x6e, 0x9e, 0x29, 0x91, 0x2a, 0x63, 0x1e, 0x64, 0x0d, 0x0a, 0x68, 0xeb, + 0x42, 0xeb, 0xdc, 0xf0, 0xa5, 0x52, 0xe6, 0x5e, 0xc0, 0xc2, 0x5e, 0x31, 0xe2, 0x65, 0x8e, 0x30, + 0x99, 0x31, 0x1d, 0x70, 0xba, 0x28, 0xad, 0x9f, 0xce, 0x42, 0x21, 0xb9, 0xfa, 0xc8, 0xbb, 0x30, + 0xae, 0x42, 0x87, 0x2a, 0x17, 0x40, 0xbc, 0x6c, 0x8f, 0x63, 0x8d, 0x9a, 0xb9, 0x92, 0x34, 0x74, + 0xb2, 0x08, 0x79, 0xf6, 0x11, 0x27, 0xf3, 0x0a, 0x76, 0x04, 0x4c, 0xb7, 0xeb, 0x97, 0x78, 0xa4, + 0x0a, 0xb3, 0xec, 0xa3, 0xa9, 0x7a, 0xad, 0xdd, 0x06, 0x5d, 0xf3, 0x77, 0xfd, 0x4e, 0xf4, 0xc0, + 0x5e, 0x13, 0x9b, 0x2b, 0x17, 0x95, 0xdd, 0x66, 0xc3, 0x28, 0x0e, 0x8c, 0xac, 0xd1, 0x29, 0xd4, + 0x5a, 0xd6, 0xd3, 0xa1, 0x01, 0xb2, 0x9e, 0x6a, 0x5b, 0xde, 0x9f, 0x64, 0x61, 0x5c, 0x5b, 0x7e, + 0xe4, 0x2a, 0xe4, 0x2b, 0xe1, 0x9a, 0x5f, 0x7b, 0xac, 0x62, 0x89, 0x4d, 0x1e, 0x1d, 0x16, 0xc7, + 0xbc, 0xd0, 0x69, 0x20, 0xd0, 0x56, 0xc5, 0x64, 0x09, 0x26, 0xf9, 0x5f, 0x32, 0x02, 0x7c, 0x36, + 0xb6, 0x66, 0xe4, 0xc8, 0x32, 0xf6, 0xbb, 0xbe, 0x0d, 0x1a, 0x24, 0xe4, 0x6b, 0x00, 0x1c, 0x80, + 0xde, 0xa7, 0xb9, 0xc1, 0xfd, 0x66, 0x45, 0x05, 0x29, 0x7e, 0xa7, 0x1a, 0x43, 0xf2, 0x0d, 0x1e, + 0x99, 0x54, 0x7e, 0x2e, 0x43, 0x83, 0x3b, 0xfe, 0x32, 0xfe, 0x4e, 0x7a, 0xfc, 0x01, 0x9d, 0xa5, + 0x08, 0x7b, 0xb8, 0x60, 0xd3, 0x9a, 0xff, 0x84, 0x06, 0x07, 0xa5, 0x08, 0x11, 0x35, 0x0c, 0xeb, + 0x7f, 0xcc, 0x68, 0x1f, 0x19, 0x59, 0xc7, 0xcc, 0x99, 0x7c, 0x01, 0x09, 0xf3, 0x14, 0x25, 0xfb, + 0x4b, 0xb8, 0x4d, 0x77, 0x96, 0x5e, 0x14, 0xc6, 0xb4, 0xb3, 0x6a, 0x19, 0x26, 0x32, 0x6a, 0x72, + 0x20, 0xf9, 0x22, 0x0c, 0xe1, 0xd0, 0x65, 0x8f, 0xed, 0x9a, 0x3c, 0x7e, 0x87, 0xd8, 0x98, 0x61, + 0x47, 0x90, 0x92, 0x7c, 0x46, 0x78, 0xee, 0xf1, 0xc1, 0x9f, 0xd2, 0xce, 0x50, 0xd6, 0x0e, 0x75, + 0xee, 0xc6, 0x21, 0x28, 0xb4, 0xd5, 0xf3, 0xef, 0x64, 0xa1, 0x90, 0xfc, 0xb4, 0xc9, 0x07, 0x30, + 0x21, 0x0f, 0x46, 0x4c, 0xad, 0xce, 0x7a, 0x39, 0x21, 0xc2, 0x87, 0xcb, 0xd3, 0x31, 0x99, 0x59, + 0x5d, 0x27, 0x60, 0x42, 0xca, 0x96, 0x08, 0x09, 0xa5, 0x7d, 0x54, 0x91, 0x1f, 0xb5, 0x13, 0xc1, + 0x2d, 0x25, 0x1a, 0x79, 0x0b, 0x72, 0xf7, 0x6f, 0x97, 0x84, 0x9b, 0x88, 0xdc, 0xc1, 0xee, 0xdf, + 0x2e, 0xf1, 0x8f, 0x9f, 0x9b, 0xc1, 0x99, 0x46, 0x79, 0x0c, 0x9f, 0xac, 0x69, 0xb1, 0x63, 0x47, + 0x8c, 0x9c, 0x51, 0x12, 0xac, 0x3a, 0x77, 0x7c, 0x10, 0x59, 0x9e, 0xb3, 0x5d, 0x44, 0x51, 0xfc, + 0x0f, 0x73, 0x30, 0xa6, 0xea, 0x27, 0x04, 0x50, 0x06, 0x13, 0x8a, 0x0f, 0xfe, 0x4d, 0xce, 0x42, + 0x5e, 0x8a, 0x5d, 0xc2, 0x5b, 0x64, 0x34, 0x14, 0x22, 0xd7, 0x3c, 0x48, 0xf9, 0x8a, 0xef, 0x0a, + 0xb6, 0xfc, 0x49, 0x6e, 0x80, 0x12, 0x9e, 0x7a, 0x49, 0x59, 0x43, 0x6c, 0xc2, 0x6c, 0x85, 0x46, + 0xa6, 0x20, 0xeb, 0xf1, 0xc8, 0x3c, 0x63, 0x76, 0xd6, 0xab, 0x93, 0x0f, 0x20, 0xef, 0xd6, 0xeb, + 0xb4, 0xee, 0xb8, 0xd2, 0xce, 0xa3, 0xdf, 0xa2, 0xc9, 0x33, 0x6e, 0xfc, 0xcc, 0x40, 0xaa, 0x52, + 0x44, 0x4a, 0x30, 0xd6, 0x70, 0xb9, 0x29, 0x57, 0x7d, 0x80, 0x03, 0x28, 0xe6, 0x90, 0x67, 0x64, + 0x0f, 0x42, 0x5a, 0x27, 0xaf, 0xc2, 0x10, 0x9b, 0x4d, 0x71, 0xe2, 0x48, 0x69, 0x8f, 0x4d, 0x26, + 0x1f, 0xb0, 0xd5, 0x17, 0x6c, 0x44, 0x20, 0x2f, 0x43, 0xae, 0xb3, 0xb8, 0x23, 0xce, 0x92, 0x42, + 0x1c, 0xc7, 0x59, 0xa1, 0xb1, 0x62, 0x72, 0x13, 0xf2, 0xfb, 0x66, 0x08, 0xe0, 0x53, 0x89, 0x69, + 0x54, 0xf8, 0x0a, 0x71, 0x29, 0x0f, 0x23, 0xfc, 0xdc, 0xb0, 0x2e, 0x00, 0xc4, 0x55, 0x77, 0x3b, + 0xf5, 0x58, 0x5f, 0x83, 0x31, 0x55, 0x25, 0x39, 0x0f, 0xf0, 0x98, 0x1e, 0x38, 0x7b, 0x6e, 0xab, + 0xde, 0xe0, 0xe2, 0xe0, 0x84, 0x3d, 0xf6, 0x98, 0x1e, 0xac, 0x22, 0x80, 0x9c, 0x81, 0xd1, 0x36, + 0x9b, 0x55, 0xb1, 0x74, 0x27, 0xec, 0x91, 0x76, 0x67, 0x9b, 0xad, 0xd0, 0x79, 0x18, 0xc5, 0x8b, + 0x3a, 0xf1, 0xa1, 0x4d, 0xda, 0xf2, 0xa7, 0xf5, 0x17, 0x39, 0x4c, 0x7f, 0xa1, 0xb5, 0x93, 0x5c, + 0x82, 0xc9, 0x5a, 0x40, 0xf1, 0x88, 0x72, 0x99, 0xe0, 0x25, 0xea, 0x99, 0x88, 0x81, 0x95, 0x3a, + 0xb9, 0x0c, 0xd3, 0xed, 0xce, 0x76, 0xc3, 0xab, 0xb1, 0xda, 0x9c, 0xda, 0xb6, 0x88, 0xd7, 0x3d, + 0x61, 0x4f, 0x72, 0xf0, 0x3d, 0x7a, 0xb0, 0xbc, 0x8d, 0x11, 0xa5, 0x0a, 0x7a, 0x40, 0xd0, 0x48, + 0x65, 0x97, 0xb5, 0xa7, 0x35, 0x38, 0x9a, 0x6f, 0x9d, 0x86, 0x11, 0xd7, 0xdd, 0xed, 0x78, 0x3c, + 0xf2, 0xcb, 0x84, 0x2d, 0x7e, 0x91, 0xd7, 0x61, 0x26, 0x8e, 0x1b, 0x2b, 0xbb, 0x31, 0x8c, 0xdd, + 0x28, 0xa8, 0x82, 0x65, 0x0e, 0x27, 0x6f, 0x02, 0xd1, 0xeb, 0xf3, 0xb7, 0x3f, 0xa2, 0x35, 0xbe, + 0xd4, 0x26, 0xec, 0x19, 0xad, 0x64, 0x03, 0x0b, 0xc8, 0x4b, 0x30, 0x11, 0xd0, 0x10, 0x85, 0x3e, + 0x1c, 0x36, 0xcc, 0x0e, 0x65, 0x8f, 0x4b, 0x18, 0x1b, 0xbb, 0x2b, 0x50, 0xd0, 0x86, 0x03, 0x63, + 0xae, 0xf2, 0x60, 0xd5, 0xf6, 0x54, 0x0c, 0xb7, 0xdb, 0x95, 0x3a, 0xf9, 0x32, 0x2c, 0x68, 0x98, + 0x3c, 0x51, 0x95, 0x43, 0x1b, 0xde, 0xae, 0xb7, 0xdd, 0xa0, 0x62, 0x19, 0x75, 0x2f, 0x56, 0xa5, + 0xb2, 0xd9, 0xf3, 0x31, 0x35, 0x4f, 0x61, 0xb5, 0x22, 0x68, 0xc9, 0x1a, 0xcc, 0x25, 0x38, 0xd3, + 0xba, 0xd3, 0x69, 0xf7, 0x0c, 0xb5, 0x14, 0xf3, 0x24, 0x26, 0x4f, 0x5a, 0x7f, 0xd0, 0xb6, 0x96, + 0x60, 0xa6, 0x6b, 0x87, 0xd1, 0xce, 0x70, 0xbe, 0x63, 0xf6, 0x3f, 0xc3, 0xad, 0x16, 0x4c, 0xe8, + 0x27, 0xc6, 0x31, 0xb1, 0xdd, 0x4f, 0x63, 0x84, 0x03, 0xbe, 0x9d, 0x8e, 0x1c, 0x1d, 0x16, 0xb3, + 0x5e, 0x1d, 0xe3, 0x1a, 0x5c, 0x81, 0xbc, 0x94, 0x85, 0x84, 0x08, 0x82, 0x17, 0xc2, 0x42, 0x08, + 0x3f, 0xb0, 0x55, 0xa9, 0xf5, 0x2a, 0x8c, 0x8a, 0x43, 0xa1, 0xff, 0x35, 0xb0, 0xf5, 0xc3, 0x59, + 0x98, 0xb6, 0x29, 0xdb, 0xb2, 0x28, 0x4f, 0xe8, 0xf0, 0xdc, 0x6a, 0xa5, 0xe9, 0x71, 0xf2, 0x8c, + 0xbe, 0xf5, 0x49, 0xa5, 0xf0, 0x0f, 0x33, 0x30, 0x9b, 0x82, 0xfb, 0xb1, 0x52, 0x09, 0xde, 0x82, + 0xb1, 0xb2, 0xe7, 0x36, 0x4a, 0xf5, 0xba, 0x0a, 0x77, 0x80, 0x12, 0x34, 0xe6, 0x1b, 0x71, 0x19, + 0x54, 0x17, 0x0f, 0x14, 0x2a, 0x79, 0x4d, 0x2c, 0x8a, 0x38, 0x9b, 0x2a, 0x2e, 0x8a, 0x6f, 0x1f, + 0x16, 0x81, 0xb7, 0x29, 0x4e, 0xb1, 0x8c, 0xb1, 0x2b, 0x39, 0x30, 0x76, 0x47, 0x78, 0x6e, 0xa7, + 0x2e, 0x3d, 0x76, 0x65, 0xb2, 0x7b, 0x03, 0x65, 0x53, 0xf8, 0xf1, 0x2c, 0x9c, 0x4e, 0x27, 0xfc, + 0xb8, 0x59, 0x21, 0x31, 0x8f, 0x85, 0x16, 0x6f, 0x17, 0xb3, 0x42, 0xf2, 0xa4, 0x17, 0x88, 0x1f, + 0x23, 0x90, 0x1d, 0x98, 0x5c, 0x73, 0xc3, 0x68, 0x95, 0xba, 0x41, 0xb4, 0x4d, 0xdd, 0x68, 0x00, + 0x19, 0x59, 0xbe, 0xb9, 0xce, 0xe3, 0x31, 0xbd, 0x27, 0x29, 0x13, 0x52, 0xac, 0xc9, 0x56, 0x2d, + 0x94, 0xa1, 0x01, 0x16, 0xca, 0x37, 0x61, 0xba, 0x4a, 0x9b, 0x6e, 0x7b, 0xcf, 0x0f, 0xa4, 0x3f, + 0xeb, 0x35, 0x98, 0x54, 0xa0, 0xd4, 0xd5, 0x62, 0x16, 0x1b, 0xf8, 0xda, 0x40, 0xc4, 0x5b, 0x89, + 0x59, 0x6c, 0xfd, 0x9d, 0x2c, 0x9c, 0x29, 0xd5, 0x84, 0x01, 0x97, 0x28, 0x90, 0x76, 0xa6, 0x9f, + 0x72, 0xdd, 0xe4, 0x3a, 0x8c, 0xdd, 0x77, 0x9f, 0xae, 0x51, 0x37, 0xa4, 0xa1, 0xc8, 0xc9, 0xc5, + 0x05, 0x4a, 0xf7, 0x69, 0x6c, 0xd7, 0x64, 0xc7, 0x38, 0xba, 0x82, 0x3e, 0xf4, 0x09, 0x15, 0x74, + 0x0b, 0x46, 0x56, 0xfd, 0x46, 0x5d, 0x1c, 0xb7, 0xe2, 0xd5, 0x70, 0x0f, 0x21, 0xb6, 0x28, 0xb1, + 0xfe, 0x2c, 0x03, 0x53, 0xaa, 0xc5, 0xd8, 0x84, 0x4f, 0x7d, 0x48, 0x2e, 0xc3, 0x28, 0x56, 0xa4, + 0xb2, 0x1a, 0xe3, 0xa1, 0xd1, 0xa0, 0x98, 0x59, 0xa9, 0x6e, 0xcb, 0x42, 0x7d, 0x24, 0x86, 0x3f, + 0xd9, 0x48, 0x58, 0xff, 0x00, 0x1f, 0x24, 0xf5, 0x5e, 0xb2, 0x93, 0x48, 0x6b, 0x48, 0x66, 0xc0, + 0x86, 0x64, 0x9f, 0xd9, 0x94, 0xe4, 0x7a, 0x4e, 0xc9, 0x8f, 0x64, 0x61, 0x5c, 0x35, 0xf6, 0x3b, + 0x2c, 0xe8, 0xb3, 0xea, 0xd7, 0x40, 0x31, 0x28, 0xaa, 0xda, 0x5e, 0x21, 0x42, 0x3d, 0x7c, 0x11, + 0x46, 0xc4, 0xc7, 0x94, 0x49, 0xd8, 0x5b, 0x26, 0x66, 0x77, 0x69, 0x4a, 0xb0, 0x1e, 0xc1, 0x09, + 0x0d, 0x6d, 0x41, 0x87, 0x41, 0x3e, 0x1e, 0xd1, 0x6d, 0xf1, 0x3e, 0xfd, 0xdc, 0x9e, 0x51, 0xe9, + 0x41, 0x3e, 0xe2, 0x8e, 0x0d, 0x74, 0x3a, 0xfd, 0xd3, 0x3c, 0x14, 0x92, 0x24, 0xc7, 0x87, 0xd5, + 0xde, 0xec, 0x6c, 0x73, 0x6d, 0x81, 0x87, 0xd5, 0x6e, 0x77, 0xb6, 0x6d, 0x06, 0x43, 0xf3, 0x95, + 0xc0, 0x7b, 0x82, 0xbd, 0x9e, 0x10, 0xe6, 0x2b, 0x81, 0xf7, 0xc4, 0x30, 0x5f, 0x09, 0xbc, 0x27, + 0xa8, 0xa2, 0xaf, 0x55, 0xd1, 0x2f, 0x19, 0x55, 0x05, 0xa1, 0xa2, 0x37, 0xc2, 0x64, 0xaa, 0x1b, + 0x89, 0xc6, 0x8e, 0xca, 0x25, 0xea, 0x06, 0x22, 0x04, 0xb4, 0xd8, 0xce, 0xf0, 0xa8, 0xdc, 0x46, + 0x30, 0xcf, 0x4c, 0x6d, 0xeb, 0x48, 0xa4, 0x01, 0x44, 0xfb, 0x29, 0x3f, 0xe0, 0xe3, 0xb5, 0x56, + 0x69, 0x2b, 0x35, 0xa7, 0xb3, 0x76, 0xf4, 0xaf, 0x39, 0x85, 0xef, 0xb3, 0xbc, 0x57, 0xdd, 0x14, + 0x71, 0xed, 0xf0, 0x6a, 0x26, 0x7f, 0x2c, 0x33, 0xe9, 0xb8, 0x0f, 0x3c, 0xee, 0x9d, 0xba, 0xa0, + 0x89, 0x99, 0x90, 0xf7, 0x61, 0x5c, 0xf7, 0x36, 0xe7, 0x3e, 0xd1, 0xe7, 0x78, 0xa8, 0xb2, 0x1e, + 0xc9, 0x11, 0x75, 0x02, 0xb2, 0x0d, 0x67, 0x96, 0xfd, 0x56, 0xd8, 0x69, 0xca, 0xa0, 0x68, 0x71, + 0x28, 0x56, 0xc0, 0xa9, 0x40, 0xd7, 0xd5, 0x9a, 0x40, 0x11, 0xce, 0xcd, 0xd2, 0x98, 0xdd, 0x54, + 0x40, 0x7a, 0x31, 0x22, 0x5b, 0x30, 0x8e, 0x77, 0x93, 0xc2, 0x5a, 0x6e, 0xdc, 0xdc, 0x36, 0xe2, + 0x92, 0x32, 0xfb, 0x30, 0x78, 0x54, 0x1f, 0xb7, 0xd9, 0x90, 0xb6, 0xd4, 0xfa, 0x1d, 0xab, 0x86, + 0x4c, 0xbe, 0x06, 0x53, 0x5c, 0x2d, 0x7e, 0x44, 0xb7, 0xf9, 0xda, 0x99, 0x30, 0x74, 0x7c, 0xb3, + 0x90, 0xbf, 0x5f, 0x8b, 0x1b, 0xe1, 0x7d, 0xba, 0xcd, 0xe7, 0xde, 0xf0, 0x64, 0x30, 0xf0, 0xc9, + 0x03, 0x98, 0x5d, 0x75, 0x43, 0x0e, 0xd4, 0xdc, 0x86, 0x27, 0xf1, 0xee, 0x13, 0x2d, 0x4c, 0xf7, + 0xdc, 0x50, 0x5e, 0x31, 0xa7, 0xba, 0x09, 0xa7, 0xd1, 0x93, 0x1f, 0xce, 0xc0, 0xbc, 0x71, 0x03, + 0x2d, 0x6c, 0x85, 0x9a, 0xb4, 0x15, 0xa1, 0xcb, 0xc2, 0x94, 0xca, 0x89, 0xdd, 0x0b, 0x8d, 0x4f, + 0x49, 0xe2, 0x92, 0x3b, 0x88, 0xcb, 0x75, 0xd3, 0xcd, 0x5e, 0x3c, 0xc4, 0x87, 0x8a, 0xdf, 0xf4, + 0xb4, 0xf9, 0xa1, 0x26, 0xbe, 0x6b, 0x89, 0x66, 0xdd, 0x4a, 0x8e, 0xb7, 0xb8, 0x42, 0xca, 0xa8, + 0x2b, 0xa4, 0x39, 0x18, 0xc6, 0x51, 0x95, 0x51, 0x4e, 0xf0, 0x87, 0xf5, 0x19, 0x7d, 0x1f, 0x12, + 0x62, 0x61, 0xdf, 0x7d, 0xc8, 0xfa, 0xe7, 0x23, 0x30, 0x9d, 0x58, 0x16, 0x42, 0x4f, 0xcd, 0x74, + 0xe9, 0xa9, 0x55, 0x00, 0x7e, 0x89, 0x3a, 0xe0, 0x6d, 0xa7, 0x74, 0x97, 0x1a, 0x17, 0xde, 0x87, + 0xea, 0x9b, 0xd2, 0xd8, 0x30, 0xa6, 0xfc, 0x8b, 0x1d, 0xf0, 0xf6, 0x59, 0x31, 0xe5, 0x1f, 0xbd, + 0xc6, 0x34, 0x66, 0x43, 0x8a, 0x30, 0x8c, 0xa1, 0x09, 0x75, 0x6f, 0x35, 0x8f, 0x01, 0x6c, 0x0e, + 0x27, 0x97, 0x60, 0x84, 0x09, 0x51, 0x95, 0xb2, 0xd8, 0x04, 0xf1, 0x6c, 0x61, 0x52, 0x16, 0x93, + 0x58, 0x44, 0x11, 0xb9, 0x05, 0x13, 0xfc, 0x2f, 0x11, 0x9d, 0x62, 0xc4, 0x34, 0x60, 0x73, 0xbc, + 0xba, 0x0c, 0x50, 0x61, 0xe0, 0x31, 0xed, 0xa2, 0xda, 0xc1, 0x9b, 0x95, 0x4a, 0x59, 0xc4, 0xb2, + 0x45, 0xed, 0x22, 0xe4, 0x40, 0xcc, 0x39, 0xaf, 0x10, 0x98, 0x2c, 0x23, 0x6c, 0xc6, 0xf3, 0xa8, + 0x53, 0xa2, 0x2c, 0xc3, 0x6d, 0xc5, 0x6d, 0x51, 0x42, 0xae, 0xf2, 0x37, 0x0e, 0x14, 0x0b, 0x79, + 0x6a, 0x2f, 0x7c, 0x11, 0xc0, 0x8b, 0x09, 0x94, 0x0d, 0x55, 0x31, 0xab, 0x9c, 0xfd, 0xbd, 0xd2, + 0x74, 0xbd, 0x86, 0xd8, 0x56, 0xb0, 0x72, 0xc4, 0xa5, 0x0c, 0x6a, 0xc7, 0x08, 0xe4, 0x5d, 0x98, + 0x62, 0x3f, 0x96, 0xfd, 0x66, 0xd3, 0x6f, 0x21, 0xfb, 0xf1, 0x38, 0xd0, 0x11, 0x92, 0xd4, 0xb0, + 0x88, 0xd7, 0x92, 0xc0, 0x65, 0xe7, 0x09, 0xbe, 0x9f, 0x76, 0xf8, 0xeb, 0xcb, 0x44, 0x7c, 0x9e, + 0x20, 0x69, 0xc8, 0xe1, 0xb6, 0x8e, 0x44, 0xde, 0x86, 0x49, 0xf6, 0xf3, 0x8e, 0xf7, 0x84, 0xf2, + 0x0a, 0x27, 0xe3, 0x17, 0x7d, 0xa4, 0xda, 0x65, 0x25, 0xbc, 0x3e, 0x13, 0x93, 0x7c, 0x09, 0x4e, + 0x21, 0xa7, 0x9a, 0xdf, 0xa6, 0xf5, 0xd2, 0xce, 0x8e, 0xd7, 0xf0, 0xb8, 0x45, 0x11, 0x8f, 0xc3, + 0x80, 0xb7, 0xdb, 0xbc, 0x62, 0xc4, 0x70, 0xdc, 0x18, 0xc5, 0x4e, 0xa7, 0x24, 0x8f, 0xa0, 0xb0, + 0xdc, 0x09, 0x23, 0xbf, 0x59, 0x8a, 0xa2, 0xc0, 0xdb, 0xee, 0x44, 0x34, 0x9c, 0x9f, 0x36, 0xa2, + 0x15, 0xb0, 0x8f, 0x43, 0x15, 0xf2, 0xfb, 0xa0, 0x1a, 0x52, 0x38, 0xae, 0x22, 0xb1, 0xbb, 0x98, + 0x58, 0xff, 0x2c, 0x03, 0x93, 0x06, 0x29, 0x79, 0x0b, 0x26, 0x6e, 0x07, 0x1e, 0x6d, 0xd5, 0x1b, + 0x07, 0x9a, 0xa2, 0x8a, 0x5a, 0xcc, 0x8e, 0x80, 0xf3, 0x5e, 0x1b, 0x68, 0xea, 0x9e, 0x27, 0x9b, + 0x6a, 0xee, 0x77, 0x9d, 0x3b, 0x4d, 0x8a, 0x05, 0x9a, 0x8b, 0xc3, 0xa7, 0xe0, 0x02, 0x15, 0xab, + 0x53, 0x43, 0x21, 0xef, 0xc1, 0x08, 0x7f, 0x69, 0x15, 0xb6, 0x67, 0x67, 0xd3, 0xba, 0xc9, 0x1d, + 0x74, 0x71, 0x21, 0xa2, 0x9d, 0x4b, 0x68, 0x0b, 0x22, 0xeb, 0xe7, 0x32, 0x40, 0xba, 0x51, 0x8f, + 0xb9, 0xf7, 0x3a, 0xd6, 0x7e, 0xe6, 0x8b, 0xea, 0x6b, 0xcc, 0x19, 0xb7, 0xd1, 0xac, 0x26, 0x5e, + 0xc0, 0x07, 0x5e, 0x7c, 0x75, 0xfa, 0x45, 0x1c, 0x2f, 0xb6, 0x7e, 0x28, 0x0b, 0x10, 0x63, 0x93, + 0xcf, 0xf3, 0x0c, 0x30, 0x5f, 0xea, 0xb8, 0x0d, 0x6f, 0xc7, 0x33, 0x43, 0x22, 0x22, 0x93, 0x6f, + 0xca, 0x12, 0xdb, 0x44, 0x24, 0x1f, 0xc0, 0x74, 0x75, 0xd3, 0xa4, 0xd5, 0xb2, 0x5d, 0x84, 0x6d, + 0x27, 0x41, 0x9e, 0xc4, 0x46, 0x1b, 0x53, 0x7d, 0x36, 0xb8, 0x8d, 0x29, 0x9f, 0x08, 0x51, 0xc2, + 0x36, 0x96, 0xea, 0xa6, 0x30, 0x92, 0xae, 0xab, 0xf7, 0x42, 0x6c, 0x5d, 0xd8, 0x76, 0xda, 0xc2, + 0x7a, 0x9a, 0xed, 0x13, 0x06, 0x5e, 0x3c, 0x90, 0xc3, 0x3d, 0x9c, 0x70, 0x7f, 0x1e, 0xaf, 0xfd, + 0x9a, 0x7e, 0x44, 0xc5, 0x6d, 0xc7, 0x73, 0xab, 0xf7, 0xc4, 0xcf, 0xf4, 0xc3, 0x86, 0x6f, 0xa1, + 0xd1, 0x3b, 0x61, 0x24, 0x72, 0x33, 0x56, 0x52, 0xf8, 0x83, 0x7d, 0x8a, 0x59, 0xc9, 0xdf, 0xcf, + 0xc0, 0xa9, 0x54, 0x5a, 0x72, 0x0d, 0x20, 0xbe, 0x53, 0x12, 0xa3, 0x84, 0x3b, 0x66, 0x1c, 0x34, + 0xc4, 0xd6, 0x30, 0xc8, 0x57, 0x93, 0xb7, 0x41, 0xc7, 0x1f, 0x84, 0x0b, 0x32, 0x28, 0x94, 0x79, + 0x1b, 0x94, 0x72, 0x07, 0x64, 0xfd, 0xc3, 0x1c, 0xcc, 0x68, 0x31, 0x49, 0x78, 0x5b, 0x8f, 0xb1, + 0xf9, 0x7d, 0x0c, 0x13, 0xac, 0x37, 0x5e, 0x4d, 0x38, 0x38, 0x71, 0x93, 0x92, 0xd7, 0xba, 0xbc, + 0xc3, 0x04, 0xb7, 0x6b, 0x3a, 0x32, 0x0f, 0xd5, 0x86, 0x5b, 0x27, 0xbe, 0x09, 0xd4, 0xba, 0x1d, + 0x9d, 0x0c, 0xe6, 0x24, 0x84, 0xc9, 0xf2, 0x41, 0xcb, 0x6d, 0xaa, 0xda, 0xb8, 0x69, 0xc9, 0xeb, + 0x3d, 0x6b, 0x33, 0xb0, 0x79, 0x75, 0xb1, 0x1f, 0x05, 0x2f, 0x4b, 0x71, 0xe1, 0x35, 0xa8, 0x16, + 0x3e, 0x80, 0x99, 0xae, 0x46, 0x9f, 0x28, 0x6a, 0xdc, 0x23, 0x20, 0xdd, 0xed, 0x48, 0xe1, 0xf0, + 0xba, 0x19, 0x93, 0xf0, 0x94, 0x7a, 0x16, 0xc6, 0x5c, 0xd7, 0xdc, 0x50, 0x65, 0x51, 0x8f, 0x29, + 0xf7, 0xf3, 0x59, 0xdd, 0x43, 0xef, 0x79, 0xff, 0xea, 0xbe, 0x68, 0x68, 0xc3, 0x17, 0x7a, 0xcd, + 0xe9, 0x40, 0xb7, 0x0e, 0xdf, 0xca, 0xc1, 0x99, 0x1e, 0x94, 0xe4, 0x20, 0xb9, 0x88, 0xf8, 0x2d, + 0xc4, 0x8d, 0xfe, 0x15, 0x3e, 0x8b, 0xa5, 0x44, 0x3e, 0xcf, 0x7d, 0xf4, 0x6b, 0x98, 0x4f, 0x59, + 0xe8, 0xdf, 0x3c, 0xbd, 0xbf, 0x82, 0x26, 0x9d, 0xf3, 0x39, 0x94, 0x7c, 0x00, 0xc3, 0xe8, 0x9e, + 0x99, 0x88, 0x89, 0xc6, 0x30, 0x10, 0xae, 0x05, 0x90, 0x63, 0x3f, 0x8d, 0x00, 0x72, 0x0c, 0x40, + 0x3e, 0x07, 0xb9, 0xd2, 0xa3, 0xaa, 0x98, 0x97, 0x29, 0x9d, 0xfc, 0x51, 0x35, 0x8e, 0x5b, 0xef, + 0x1a, 0x01, 0xe6, 0x19, 0x05, 0x23, 0xbc, 0xb3, 0xbc, 0x29, 0x66, 0x45, 0x27, 0xbc, 0xb3, 0xbc, + 0x19, 0x13, 0xee, 0xd6, 0x8c, 0x18, 0x33, 0x77, 0x96, 0x37, 0x3f, 0xbd, 0x65, 0xff, 0x6f, 0x67, + 0x79, 0x60, 0x01, 0xde, 0xb1, 0x0f, 0x60, 0xc2, 0x88, 0x19, 0x9b, 0x89, 0xe5, 0x31, 0x15, 0x9a, + 0x37, 0x61, 0x8b, 0x63, 0x10, 0xc8, 0x0c, 0x10, 0xec, 0x37, 0x4a, 0xbc, 0xba, 0x19, 0x8b, 0xe2, + 0x80, 0x32, 0x71, 0x32, 0x03, 0x84, 0x22, 0x21, 0x37, 0x21, 0xbf, 0x45, 0x5b, 0x6e, 0x2b, 0x52, + 0x17, 0xa2, 0x68, 0x4f, 0x1b, 0x21, 0xcc, 0x94, 0x1a, 0x14, 0x22, 0xda, 0x7e, 0x76, 0xb6, 0xc3, + 0x5a, 0xe0, 0x61, 0x00, 0x12, 0x75, 0x16, 0x73, 0xdb, 0x4f, 0xad, 0xc4, 0x64, 0x90, 0x20, 0xb2, + 0x7e, 0x3e, 0x03, 0xa3, 0x62, 0x22, 0x79, 0xe6, 0x9e, 0xdd, 0xf8, 0x2c, 0x11, 0x99, 0x7b, 0x76, + 0xbd, 0x64, 0xe6, 0x9e, 0x5d, 0x1e, 0xe5, 0x63, 0x4c, 0xf8, 0xc8, 0xaa, 0xa7, 0x41, 0x9e, 0x44, + 0x9e, 0x03, 0xcd, 0x6a, 0x63, 0xd4, 0x41, 0x9d, 0x6a, 0xac, 0xbf, 0x2b, 0x5a, 0x76, 0x67, 0x79, + 0x93, 0x2c, 0x42, 0x7e, 0xcd, 0xe7, 0x11, 0x64, 0xf4, 0x34, 0x8c, 0x0d, 0x01, 0xd3, 0x07, 0x48, + 0xe2, 0xb1, 0xf6, 0x6d, 0x06, 0xbe, 0xd0, 0x65, 0xb4, 0xf6, 0xb5, 0x39, 0x30, 0xd1, 0x3e, 0x85, + 0x3a, 0x70, 0xfb, 0x68, 0xca, 0x26, 0xf1, 0xf0, 0x26, 0x86, 0xc6, 0xbf, 0xab, 0x3b, 0x2b, 0x89, + 0x22, 0xb9, 0x53, 0x2c, 0xf4, 0xda, 0x29, 0x1e, 0xde, 0xb4, 0x53, 0xa8, 0xf0, 0x5d, 0x2d, 0x06, + 0x57, 0x69, 0xf0, 0xe4, 0x39, 0xde, 0xa5, 0xd3, 0xdf, 0xd5, 0x92, 0xdd, 0x1b, 0x68, 0x93, 0xfe, + 0x6f, 0xb3, 0x70, 0x3a, 0x9d, 0x50, 0xef, 0x4b, 0xa6, 0x4f, 0x5f, 0xae, 0x40, 0x7e, 0xd5, 0x0f, + 0x23, 0xcd, 0xfc, 0x0e, 0xaf, 0xff, 0xf7, 0x04, 0xcc, 0x56, 0xa5, 0x4c, 0xe7, 0x66, 0x7f, 0xab, + 0xcf, 0x13, 0xf9, 0xa1, 0x3b, 0x3d, 0xd3, 0xb9, 0x79, 0x11, 0xb9, 0x03, 0x79, 0x5b, 0x38, 0xcb, + 0x24, 0x86, 0x46, 0x82, 0x95, 0x34, 0x45, 0x02, 0x01, 0x31, 0x42, 0xf7, 0x0a, 0x18, 0x29, 0xc1, + 0xa8, 0x98, 0xfd, 0xc4, 0xd3, 0x71, 0xca, 0x92, 0x31, 0xa3, 0x69, 0x4b, 0x3a, 0xb6, 0xa3, 0xe0, + 0x23, 0x60, 0xa5, 0x2c, 0xfd, 0x5e, 0x70, 0x47, 0xe1, 0x8f, 0x84, 0xa6, 0xa5, 0xa3, 0x42, 0xb4, + 0x7e, 0x38, 0x0b, 0x20, 0x6f, 0x6d, 0x9e, 0xdb, 0x15, 0xf6, 0x39, 0x63, 0x85, 0x69, 0x96, 0x3c, + 0x83, 0x67, 0x9a, 0xdc, 0x40, 0x8b, 0x9a, 0xc1, 0xf3, 0x4c, 0x16, 0x61, 0x78, 0x2b, 0xbe, 0xd0, + 0x12, 0x5e, 0x18, 0x78, 0x1d, 0xcd, 0xe1, 0xd6, 0x36, 0xcc, 0xdd, 0xa1, 0x51, 0x7c, 0xbd, 0x25, + 0x9f, 0x1e, 0xfb, 0xb3, 0x7d, 0x03, 0xc6, 0x04, 0xbe, 0xda, 0xbf, 0xf8, 0x5d, 0x8c, 0x88, 0x50, + 0x81, 0x77, 0x31, 0x12, 0x81, 0xed, 0x46, 0x65, 0xda, 0xa0, 0x11, 0xfd, 0x74, 0xab, 0xa9, 0x02, + 0xe1, 0x5d, 0xc1, 0x9e, 0x0d, 0x56, 0xc3, 0xb1, 0xe3, 0xf3, 0x10, 0x4e, 0xa9, 0xb6, 0x3f, 0x4b, + 0xbe, 0xd7, 0x99, 0x4a, 0x29, 0x02, 0x51, 0xc7, 0x1c, 0xfb, 0xd8, 0x9e, 0x3c, 0x85, 0x05, 0x49, + 0xf0, 0xc8, 0x53, 0x26, 0x89, 0x03, 0xd1, 0x92, 0x77, 0x61, 0x5c, 0xa3, 0x11, 0x81, 0x94, 0xf1, + 0x9a, 0x7a, 0xdf, 0x8b, 0xf6, 0x9c, 0x90, 0xc3, 0xf5, 0x6b, 0x6a, 0x0d, 0xdd, 0xfa, 0x0a, 0xbc, + 0xa8, 0x3c, 0x65, 0x52, 0xaa, 0x4e, 0x30, 0xcf, 0x9c, 0x8c, 0xf9, 0x7a, 0xdc, 0xad, 0x4a, 0x4b, + 0x79, 0xb7, 0x4a, 0xde, 0x44, 0xef, 0x96, 0xe8, 0xcc, 0xb9, 0x2e, 0x7f, 0x59, 0xcd, 0x2d, 0xd6, + 0x7a, 0x47, 0x6b, 0x6c, 0x0a, 0x43, 0x83, 0x38, 0x93, 0x24, 0xfe, 0xe1, 0x2c, 0x4c, 0x6f, 0x54, + 0xca, 0xcb, 0xca, 0xfa, 0xe8, 0x3b, 0x2c, 0x0f, 0xa6, 0xd1, 0xb7, 0xde, 0xfb, 0x8d, 0xf5, 0x00, + 0x66, 0x13, 0xc3, 0x80, 0xa2, 0xc3, 0xfb, 0xdc, 0x95, 0x43, 0x81, 0xa5, 0xd8, 0x70, 0x3a, 0x8d, + 0xfd, 0xc3, 0x9b, 0x76, 0x02, 0xdb, 0xfa, 0x17, 0x63, 0x09, 0xbe, 0x62, 0x0b, 0x7b, 0x03, 0xc6, + 0x2a, 0x61, 0xd8, 0xa1, 0xc1, 0x03, 0x7b, 0x4d, 0xbf, 0x2a, 0xf0, 0x10, 0xe8, 0x74, 0x82, 0x86, + 0x1d, 0x23, 0x90, 0xab, 0x90, 0x17, 0xb1, 0x85, 0xe5, 0x9e, 0x80, 0xb7, 0xb6, 0x2a, 0x34, 0xb1, + 0xad, 0x8a, 0xc9, 0x5b, 0x30, 0xc1, 0xff, 0xe6, 0xab, 0x4d, 0x0c, 0x38, 0x5e, 0x0e, 0x0a, 0x74, + 0xbe, 0x3a, 0x6d, 0x03, 0x8d, 0xbc, 0x06, 0xb9, 0xd2, 0xb2, 0x2d, 0xae, 0x83, 0x84, 0xdc, 0x88, + 0xd9, 0xad, 0x3b, 0xd4, 0x54, 0x22, 0x96, 0x6d, 0x26, 0xfd, 0x49, 0xbf, 0x7c, 0x71, 0x93, 0xcd, + 0x93, 0x70, 0x0b, 0x58, 0xe2, 0x30, 0x43, 0x18, 0xb9, 0x0e, 0xa3, 0x65, 0x2f, 0x6c, 0x37, 0xdc, + 0x03, 0x71, 0x8f, 0xcd, 0x93, 0x3c, 0x71, 0x90, 0xe1, 0x20, 0xcf, 0x41, 0xe4, 0xaa, 0x4c, 0x7e, + 0x93, 0x8f, 0x3d, 0x42, 0x7a, 0x64, 0xb8, 0x79, 0x03, 0x46, 0x44, 0x04, 0xde, 0x31, 0x2d, 0xb6, + 0x7e, 0x32, 0xf2, 0xae, 0xc0, 0xe9, 0xf6, 0xd9, 0x84, 0x67, 0xe9, 0xb3, 0xb9, 0x0d, 0x67, 0xee, + 0xe0, 0xed, 0x8d, 0x19, 0xb6, 0xe6, 0x81, 0x5d, 0x11, 0xf7, 0xe1, 0xf8, 0x0c, 0xc4, 0x2f, 0x78, + 0x92, 0x91, 0x6f, 0x9c, 0x4e, 0xa0, 0xe7, 0x2c, 0xec, 0xc5, 0x88, 0x7c, 0x19, 0xe6, 0xd2, 0x8a, + 0xc4, 0xad, 0x39, 0x06, 0x68, 0x49, 0xaf, 0x40, 0x0f, 0xd0, 0x92, 0xc6, 0x81, 0xac, 0x41, 0x81, + 0xc3, 0x4b, 0xf5, 0xa6, 0xd7, 0xe2, 0x37, 0xff, 0xfc, 0x56, 0x1d, 0x5d, 0x34, 0x04, 0x57, 0x97, + 0x15, 0xf2, 0x17, 0x00, 0xc3, 0xa9, 0x27, 0x41, 0x49, 0x7e, 0x32, 0xc3, 0xb4, 0x39, 0x1e, 0xaf, + 0xf6, 0x81, 0xbd, 0x16, 0x8a, 0xe0, 0x5e, 0xa7, 0x63, 0x7f, 0x9d, 0x6a, 0x14, 0x78, 0xad, 0x5d, + 0xe1, 0xb0, 0xb3, 0x25, 0x1c, 0x76, 0xde, 0xfd, 0x58, 0x0e, 0x3b, 0x9c, 0x55, 0x78, 0x74, 0x58, + 0x9c, 0x08, 0x44, 0x9d, 0xf8, 0x15, 0x19, 0x2d, 0xc0, 0x7c, 0xfb, 0x8d, 0x86, 0xbf, 0xff, 0xa0, + 0xc5, 0xa3, 0x65, 0xd2, 0x3a, 0xef, 0xe4, 0x34, 0xee, 0xe0, 0x3c, 0xdf, 0x3e, 0x2b, 0x77, 0x3a, + 0x0a, 0xa1, 0xab, 0xa3, 0xa9, 0x1c, 0x98, 0xe2, 0x29, 0x9d, 0x42, 0xb8, 0x03, 0x6a, 0x21, 0x56, + 0x3c, 0xa5, 0x07, 0x89, 0x83, 0xcb, 0x48, 0x5f, 0x3c, 0x06, 0x09, 0xb9, 0x0e, 0x23, 0xf7, 0xdd, + 0xa7, 0xa5, 0x5d, 0x2a, 0x92, 0x9a, 0x4d, 0xca, 0xed, 0x0f, 0x81, 0x4b, 0xf9, 0x3f, 0xe2, 0x5e, + 0x04, 0x2f, 0xd8, 0x02, 0x8d, 0x7c, 0x5f, 0x06, 0x4e, 0xf3, 0xcf, 0x58, 0xf6, 0xb2, 0x4a, 0xa3, + 0x88, 0x8d, 0x83, 0x88, 0xf2, 0x25, 0x53, 0x82, 0x54, 0xab, 0x1b, 0xe9, 0x78, 0x3c, 0x3b, 0xbc, + 0xd8, 0x19, 0xd4, 0xc0, 0x85, 0xa2, 0xd4, 0x88, 0x5f, 0x9a, 0x4a, 0x2f, 0x2c, 0xe4, 0x3f, 0x27, + 0x5b, 0x4e, 0xde, 0xd4, 0xfd, 0x24, 0x73, 0x28, 0xe7, 0x8e, 0x36, 0xdd, 0xa7, 0x8e, 0xbb, 0x4b, + 0x8d, 0xf7, 0x6c, 0x71, 0xcf, 0xfc, 0xb3, 0x19, 0x38, 0xdb, 0xb3, 0x71, 0xe4, 0x16, 0x9c, 0x71, + 0xb9, 0xf7, 0xaf, 0xb3, 0x17, 0x45, 0xed, 0xd0, 0x91, 0xca, 0x80, 0xf0, 0xac, 0xb4, 0x4f, 0x89, + 0xe2, 0x55, 0x56, 0x2a, 0xf5, 0x83, 0x90, 0x7c, 0x00, 0xe7, 0xbc, 0x56, 0x48, 0x6b, 0x9d, 0x80, + 0x3a, 0x92, 0x41, 0xcd, 0xab, 0x07, 0x4e, 0xe0, 0xb6, 0x76, 0xa5, 0x9b, 0xa8, 0x7d, 0x56, 0xe2, + 0x08, 0x0f, 0xe3, 0x65, 0xaf, 0x1e, 0xd8, 0x88, 0x60, 0xfd, 0xd4, 0x24, 0x3f, 0x15, 0x4b, 0x9d, + 0x68, 0x4f, 0x9e, 0xa3, 0x8b, 0x69, 0xce, 0x45, 0xdc, 0x3c, 0x50, 0x73, 0x2e, 0x32, 0x5d, 0x8a, + 0xe4, 0x73, 0x46, 0x36, 0xf5, 0x39, 0xe3, 0x0d, 0x18, 0x5b, 0xde, 0xa3, 0xb5, 0xc7, 0xca, 0x63, + 0x23, 0x2f, 0xee, 0x8b, 0x19, 0x90, 0x07, 0xc7, 0x8d, 0x11, 0xc8, 0x75, 0x00, 0xf4, 0x36, 0xe4, + 0x42, 0x96, 0x16, 0xe0, 0x1e, 0x9d, 0x13, 0x85, 0xc5, 0x85, 0x86, 0x82, 0xec, 0xab, 0xf6, 0x6d, + 0xdd, 0x44, 0x83, 0xb3, 0x0f, 0x83, 0x1d, 0x81, 0x1e, 0x23, 0xb0, 0xee, 0x69, 0x9f, 0x8a, 0xd8, + 0xd8, 0x0b, 0x5d, 0xdf, 0x93, 0x8e, 0x44, 0xae, 0xc1, 0xd8, 0xa6, 0x34, 0x4f, 0xc7, 0x7d, 0x7d, + 0x02, 0x29, 0x20, 0x36, 0x65, 0x9f, 0xcf, 0xd8, 0x31, 0x0a, 0xf9, 0x1c, 0x8c, 0x2e, 0xd3, 0x20, + 0xda, 0xda, 0x5a, 0x43, 0x3b, 0x0a, 0x1e, 0x07, 0x3e, 0x8f, 0x31, 0xbb, 0xa3, 0xa8, 0xf1, 0xed, + 0xc3, 0xe2, 0x64, 0xe4, 0x35, 0xa9, 0x8a, 0x6f, 0x6b, 0x4b, 0x6c, 0xb2, 0x04, 0x05, 0xfe, 0xd2, + 0x1b, 0x8b, 0xd3, 0xb8, 0xd9, 0xe7, 0xf9, 0xd1, 0x23, 0x9e, 0x85, 0xf7, 0xe9, 0xb6, 0x8a, 0x58, + 0xde, 0x85, 0x4f, 0x56, 0x64, 0xa0, 0x7f, 0xbd, 0x9b, 0x10, 0xdf, 0xef, 0x24, 0x3f, 0x02, 0xd6, + 0xdb, 0x6e, 0x0a, 0x52, 0x82, 0xc9, 0x65, 0xbf, 0xd9, 0x76, 0x23, 0x0f, 0xb3, 0x66, 0x1d, 0x88, + 0x7d, 0x1d, 0xef, 0xa8, 0x6a, 0x7a, 0x81, 0x71, 0x48, 0xe8, 0x05, 0xe4, 0x36, 0x4c, 0xd9, 0x7e, + 0x87, 0x4d, 0x93, 0x54, 0x2c, 0xf9, 0xd6, 0x8d, 0xd6, 0x0e, 0x01, 0x2b, 0x61, 0x27, 0x8d, 0xd0, + 0x22, 0x8d, 0xd0, 0x83, 0x06, 0x15, 0x59, 0x4f, 0xb9, 0xe1, 0xd7, 0xf7, 0x6b, 0x3d, 0x6e, 0x79, + 0x17, 0xb3, 0x94, 0xc7, 0x81, 0x9b, 0x30, 0x5e, 0xad, 0x6e, 0x6c, 0xd1, 0x30, 0xba, 0xdd, 0xf0, + 0xf7, 0x71, 0xbb, 0xce, 0x8b, 0x7c, 0x2e, 0xa1, 0xef, 0x44, 0x34, 0x8c, 0x9c, 0x9d, 0x86, 0xbf, + 0x6f, 0xeb, 0x58, 0xe4, 0xeb, 0x6c, 0x3c, 0x34, 0xe1, 0x46, 0x04, 0x59, 0xec, 0x27, 0x7f, 0xe1, + 0xa6, 0x18, 0x7f, 0x34, 0x4c, 0x0a, 0x33, 0x07, 0x4b, 0x43, 0x47, 0x07, 0x24, 0xa6, 0x12, 0x97, + 0xea, 0xf5, 0x80, 0x86, 0xa1, 0xd8, 0x57, 0xb9, 0x03, 0x12, 0xea, 0xcf, 0x2e, 0x2f, 0x30, 0x1c, + 0x90, 0x34, 0x02, 0xf2, 0xa3, 0x19, 0x38, 0xa5, 0xfb, 0x30, 0xe0, 0xe7, 0x82, 0x96, 0x1b, 0x7c, + 0x97, 0x7d, 0xf3, 0x9a, 0x3c, 0x57, 0xae, 0x69, 0x68, 0xd7, 0x9e, 0xdc, 0xb8, 0x56, 0x8a, 0x7f, + 0x56, 0x25, 0x11, 0x06, 0x8c, 0x2a, 0xa6, 0xf2, 0x8b, 0x5b, 0x30, 0x9f, 0xb1, 0xe7, 0xdc, 0x14, + 0x62, 0xb2, 0xcc, 0x84, 0x0f, 0xb6, 0xa2, 0xd0, 0x16, 0xa8, 0xb2, 0x89, 0xdb, 0xb4, 0xb8, 0x24, + 0x14, 0xeb, 0x8f, 0x5b, 0x0d, 0x79, 0x6d, 0x53, 0xc6, 0xd0, 0x68, 0x48, 0x05, 0xa6, 0x39, 0x80, + 0x6d, 0x0b, 0x3c, 0xdd, 0xc7, 0x6c, 0x1c, 0x72, 0x5c, 0xb0, 0xc1, 0xe7, 0x6b, 0x4c, 0xf9, 0xa1, + 0x47, 0x05, 0x4c, 0xd0, 0x91, 0x0f, 0x60, 0x2a, 0x0c, 0xf7, 0x1c, 0xed, 0x7b, 0x9d, 0xc3, 0xaf, + 0x18, 0x83, 0x1b, 0x8a, 0x92, 0x84, 0x9b, 0xd6, 0x44, 0x18, 0xee, 0xc5, 0x5f, 0xf4, 0x07, 0x30, + 0x85, 0xe6, 0x27, 0x31, 0x83, 0x53, 0x31, 0x03, 0x51, 0x92, 0x64, 0x10, 0x35, 0xc2, 0x98, 0xc1, + 0x4f, 0x67, 0xe0, 0x2c, 0xab, 0x28, 0x7d, 0x86, 0x4e, 0x7f, 0x9c, 0x19, 0xc2, 0x70, 0x6f, 0x3d, + 0x79, 0xea, 0x12, 0x56, 0x18, 0xee, 0xa5, 0x71, 0xc0, 0x46, 0xb1, 0xc6, 0xa7, 0x37, 0xea, 0xcc, + 0xc7, 0x6e, 0x54, 0x4f, 0x9e, 0x7a, 0xa3, 0xa2, 0x46, 0x98, 0xc6, 0x01, 0x35, 0xb5, 0x6a, 0xe9, + 0xfe, 0x5a, 0xac, 0x6e, 0x7c, 0x67, 0x79, 0x62, 0x18, 0x7d, 0xeb, 0xe3, 0x89, 0xf1, 0x80, 0xbb, + 0xdc, 0x6a, 0xc3, 0x20, 0x35, 0x35, 0x03, 0x9c, 0xd4, 0xd4, 0x12, 0x34, 0x76, 0x02, 0xdb, 0xfa, + 0x76, 0x3e, 0xc1, 0x57, 0x58, 0x5f, 0x5a, 0x30, 0xc2, 0x15, 0x31, 0x3d, 0xcf, 0x3f, 0x57, 0xd3, + 0x6c, 0x51, 0x42, 0xce, 0x42, 0xae, 0x5a, 0xdd, 0x10, 0x83, 0x8c, 0x36, 0x98, 0x61, 0xe8, 0xdb, + 0x0c, 0xc6, 0x66, 0x08, 0x0d, 0x2b, 0xb5, 0x60, 0xd8, 0xec, 0xbc, 0xb3, 0x11, 0xca, 0xc6, 0x5b, + 0xaa, 0x45, 0x43, 0xf1, 0x78, 0x0b, 0xb5, 0x28, 0x56, 0x86, 0x96, 0x61, 0xbe, 0x14, 0x86, 0x34, + 0x60, 0x0b, 0x42, 0xd8, 0xeb, 0x05, 0x42, 0x74, 0x17, 0x07, 0x3b, 0x56, 0xea, 0xd6, 0x42, 0xbb, + 0x27, 0x22, 0xb9, 0x02, 0xf9, 0x52, 0xa7, 0xee, 0xd1, 0x56, 0xcd, 0x88, 0x16, 0xe5, 0x0a, 0x98, + 0xad, 0x4a, 0xc9, 0x97, 0xe0, 0x54, 0x22, 0xfe, 0x9a, 0x18, 0x81, 0xd1, 0x78, 0xef, 0x95, 0xaa, + 0x45, 0x6c, 0x63, 0xc0, 0x87, 0x24, 0x9d, 0x92, 0x94, 0xa0, 0xb0, 0x82, 0x9e, 0x47, 0x65, 0xca, + 0x9f, 0x3b, 0xfc, 0x80, 0x7b, 0x7d, 0x71, 0x45, 0x90, 0x7b, 0x25, 0x39, 0x75, 0x55, 0x68, 0x77, + 0xa1, 0x93, 0x7b, 0x30, 0x9b, 0x84, 0xb1, 0x13, 0x9c, 0xeb, 0x7c, 0xb8, 0xdf, 0x74, 0x71, 0xc1, + 0x33, 0x3c, 0x8d, 0x8a, 0x6c, 0xc3, 0x4c, 0x6c, 0x63, 0x63, 0x6a, 0x82, 0xd2, 0x74, 0x57, 0x95, + 0x4b, 0x6d, 0xf0, 0x45, 0xb1, 0x18, 0x67, 0x63, 0x7b, 0x1d, 0xa5, 0x11, 0xda, 0xdd, 0xec, 0x48, + 0x1d, 0xa6, 0xaa, 0xde, 0x6e, 0xcb, 0x6b, 0xed, 0xde, 0xa3, 0x07, 0x9b, 0xae, 0x17, 0x08, 0x23, + 0x4a, 0x69, 0x22, 0x5d, 0x0a, 0x0f, 0x9a, 0x4d, 0x1a, 0x05, 0xb8, 0x11, 0xb2, 0x72, 0x74, 0x58, + 0x66, 0x12, 0xfe, 0x42, 0xc8, 0xe9, 0xd0, 0x19, 0xb0, 0xed, 0x7a, 0x86, 0x10, 0x60, 0xf2, 0x34, + 0xb4, 0xf1, 0x89, 0x01, 0xb5, 0xf1, 0x06, 0xcc, 0xac, 0xb4, 0x6a, 0xc1, 0x01, 0xbe, 0x3a, 0xc9, + 0xc6, 0x4d, 0x1e, 0xd3, 0xb8, 0x97, 0x45, 0xe3, 0xce, 0xb9, 0x72, 0x85, 0xa5, 0x35, 0xaf, 0x9b, + 0x31, 0xa9, 0xc2, 0x0c, 0x4a, 0xd8, 0x95, 0xf2, 0x66, 0xa5, 0xe5, 0x45, 0x1e, 0x66, 0xa3, 0xe7, + 0xc2, 0xc5, 0x2b, 0x82, 0xe7, 0x79, 0xae, 0x75, 0x79, 0xf5, 0xb6, 0xe3, 0x49, 0x14, 0x9d, 0x69, + 0x17, 0x7d, 0x3f, 0xd5, 0x67, 0xfa, 0x5f, 0x8f, 0xea, 0x83, 0xf9, 0xda, 0x12, 0x7e, 0xff, 0x85, + 0xf8, 0x1c, 0x0e, 0xb1, 0x88, 0x1d, 0xe7, 0x7e, 0x07, 0x85, 0x49, 0x23, 0x5f, 0x9b, 0x49, 0x67, + 0xfd, 0xe6, 0x04, 0xdf, 0xdb, 0x75, 0x7d, 0xa3, 0x97, 0xf1, 0x64, 0x42, 0x0f, 0xc9, 0x9e, 0x44, + 0x0f, 0xc9, 0x1d, 0xaf, 0x87, 0x0c, 0x1d, 0xa7, 0x87, 0x24, 0x14, 0x85, 0xe1, 0x13, 0x2b, 0x0a, + 0x23, 0x27, 0x52, 0x14, 0x46, 0x4f, 0xa4, 0x28, 0x18, 0x3a, 0x4f, 0xfe, 0x38, 0x9d, 0xe7, 0xaf, + 0xd5, 0x8a, 0xe7, 0x55, 0xad, 0x48, 0x13, 0x16, 0x4e, 0xa4, 0x56, 0xfc, 0x48, 0x4f, 0xad, 0xa0, + 0xf0, 0x71, 0xc4, 0xbb, 0x4b, 0x03, 0x68, 0x05, 0x83, 0xea, 0x04, 0x33, 0xcf, 0x46, 0x27, 0x20, + 0xcf, 0x4c, 0x27, 0x98, 0xfd, 0xa4, 0x3a, 0xc1, 0xdc, 0xb3, 0xd4, 0x09, 0x4e, 0xfd, 0x55, 0xd4, + 0x09, 0x4e, 0xff, 0x9b, 0xd1, 0x09, 0xbe, 0x17, 0x0a, 0x49, 0x31, 0xe5, 0xf8, 0xb0, 0x9e, 0xcf, + 0x2c, 0x04, 0x1d, 0x13, 0xa2, 0x92, 0x62, 0x02, 0xb9, 0x0e, 0xb0, 0x19, 0x78, 0x4f, 0xdc, 0x88, + 0xde, 0x93, 0xa6, 0x41, 0x22, 0x24, 0x2d, 0x87, 0xb2, 0x99, 0xb7, 0x35, 0x14, 0x25, 0x21, 0x67, + 0xd3, 0x24, 0x64, 0xeb, 0x47, 0xb3, 0x30, 0xc3, 0xc3, 0x45, 0x3d, 0xff, 0x2f, 0x54, 0xef, 0x1b, + 0x7a, 0xcf, 0xb9, 0x38, 0xcc, 0xb2, 0xde, 0xbb, 0x3e, 0x6f, 0x54, 0x5f, 0x83, 0x53, 0x5d, 0x43, + 0x81, 0xba, 0x4f, 0x59, 0x06, 0xea, 0xea, 0xd2, 0x7e, 0xe6, 0xd3, 0x2b, 0x79, 0x78, 0xd3, 0xee, + 0xa2, 0xb0, 0xfe, 0x62, 0xa8, 0x8b, 0xbf, 0x78, 0xad, 0xd2, 0xdf, 0x9f, 0x32, 0x27, 0x7b, 0x7f, + 0xca, 0x0e, 0xf6, 0xfe, 0x94, 0x10, 0x2a, 0x72, 0x83, 0x08, 0x15, 0x5f, 0x82, 0xc9, 0x2d, 0xea, + 0x36, 0xc3, 0x2d, 0x5f, 0xe4, 0xcc, 0xe0, 0x86, 0xe8, 0x32, 0x0e, 0x17, 0x2b, 0x93, 0xa2, 0xbb, + 0x32, 0xa8, 0x8b, 0x18, 0x01, 0x3b, 0x06, 0x79, 0x12, 0x0d, 0xdb, 0xe4, 0xa0, 0xeb, 0x63, 0xc3, + 0x7d, 0xf4, 0xb1, 0x2a, 0x4c, 0x08, 0xba, 0x38, 0x96, 0x69, 0xac, 0x38, 0xb0, 0x22, 0x84, 0xcb, + 0xda, 0x55, 0x2a, 0x57, 0x55, 0x3b, 0xd7, 0x19, 0x0c, 0x26, 0x6c, 0x08, 0x56, 0x5a, 0xf5, 0xb6, + 0xef, 0xb5, 0x70, 0x08, 0x46, 0xe3, 0x21, 0xa0, 0x02, 0xcc, 0x87, 0x40, 0x43, 0x22, 0xef, 0xc2, + 0x54, 0x69, 0xb3, 0xa2, 0x93, 0xe5, 0xe3, 0x27, 0x30, 0xb7, 0xed, 0x39, 0x06, 0x69, 0x02, 0xb7, + 0x9f, 0x0c, 0x3d, 0xf6, 0xaf, 0x47, 0x86, 0xb6, 0xfe, 0xc9, 0xa4, 0xfc, 0xbc, 0x3f, 0xdd, 0xab, + 0x76, 0xf3, 0xf2, 0x3c, 0x77, 0xc2, 0xcb, 0xf3, 0xa1, 0xe3, 0x04, 0x49, 0x43, 0xbe, 0x1d, 0x3e, + 0x91, 0x7c, 0x3b, 0xf2, 0x89, 0x2f, 0xc2, 0x47, 0x4f, 0x28, 0xb1, 0x26, 0xbe, 0xb5, 0xfc, 0x20, + 0xdf, 0x5a, 0xaa, 0x94, 0x3b, 0xf6, 0xc9, 0xa5, 0x5c, 0x38, 0xb1, 0x94, 0x5b, 0x8d, 0x1d, 0x3b, + 0xc7, 0x8f, 0xb5, 0x97, 0x3f, 0x2f, 0xf4, 0xcb, 0x99, 0xf4, 0xe0, 0x5f, 0xca, 0xc5, 0xf3, 0x3b, + 0x4a, 0x74, 0xfe, 0x46, 0xba, 0xe8, 0xdc, 0xff, 0xbc, 0x39, 0x91, 0xf0, 0xfc, 0xa3, 0xcf, 0x56, + 0x78, 0x7e, 0xb6, 0x57, 0xea, 0x7f, 0x2d, 0x3e, 0xff, 0xb5, 0xf8, 0x3c, 0x98, 0xf8, 0x4c, 0x36, + 0x80, 0xb8, 0x9d, 0x68, 0x8f, 0xb6, 0x22, 0xcc, 0x08, 0x5e, 0xc7, 0x29, 0xc6, 0xfb, 0x7d, 0xf1, + 0xbd, 0x76, 0x97, 0xea, 0xdf, 0xab, 0x51, 0x8a, 0x4e, 0xb0, 0x01, 0x7e, 0xaf, 0x8f, 0xdc, 0xa0, + 0x85, 0x37, 0x44, 0xd7, 0x61, 0x54, 0x86, 0x53, 0xcc, 0xc4, 0x97, 0x9d, 0xdd, 0x71, 0x14, 0x25, + 0x16, 0x59, 0x84, 0xbc, 0x24, 0xd6, 0x33, 0x49, 0xec, 0x0b, 0x98, 0x11, 0xa9, 0x4e, 0xc0, 0xac, + 0x7f, 0x3e, 0x24, 0xcf, 0x04, 0xd6, 0x84, 0x4d, 0x37, 0x70, 0x9b, 0x98, 0x46, 0x48, 0x7d, 0xb2, + 0x9a, 0x36, 0x90, 0xf8, 0xca, 0x13, 0x86, 0xd4, 0x26, 0xc9, 0xc7, 0x8a, 0x87, 0x19, 0x67, 0x6a, + 0xcc, 0x0d, 0x90, 0xa9, 0xf1, 0x6d, 0x23, 0xcd, 0xe1, 0x50, 0x9c, 0x57, 0x8b, 0xed, 0x93, 0xfd, + 0x13, 0x1c, 0xde, 0xd2, 0xf3, 0x11, 0x0e, 0xc7, 0x31, 0x94, 0x90, 0xb2, 0x4f, 0x26, 0x42, 0xa5, + 0xde, 0x8c, 0x9c, 0x24, 0xd2, 0xec, 0xe8, 0xbf, 0xd1, 0x48, 0xb3, 0x2b, 0x00, 0x5a, 0x6a, 0x7e, + 0xfe, 0x72, 0xfe, 0x0a, 0x6e, 0x27, 0xc7, 0xa6, 0xe5, 0xd7, 0x08, 0xb5, 0x90, 0x64, 0x63, 0x03, + 0x84, 0x15, 0xb5, 0xfe, 0x90, 0xc0, 0x4c, 0xb5, 0xba, 0x51, 0xf6, 0xdc, 0xdd, 0x96, 0x1f, 0x46, + 0x5e, 0xad, 0xd2, 0xda, 0xf1, 0x99, 0x2a, 0xa0, 0x8e, 0x23, 0x2d, 0xa4, 0x68, 0x7c, 0x14, 0xa9, + 0x62, 0xa6, 0x6a, 0xae, 0x04, 0x81, 0x1f, 0xe8, 0xaa, 0x26, 0x65, 0x00, 0x9b, 0xc3, 0x99, 0xb4, + 0x5d, 0xed, 0xf0, 0x94, 0xec, 0xdc, 0xfa, 0x01, 0xa5, 0xed, 0x90, 0x83, 0x6c, 0x59, 0x46, 0x68, + 0xf7, 0xfa, 0x16, 0xda, 0xd7, 0x19, 0x23, 0xbc, 0x6d, 0x5c, 0xcc, 0x3f, 0x5e, 0x21, 0x0c, 0x61, + 0x0f, 0xdb, 0x08, 0xd7, 0xcd, 0x95, 0xba, 0x3e, 0x99, 0x03, 0x38, 0x65, 0x38, 0xa4, 0x0e, 0xfa, + 0x2c, 0xf0, 0x9a, 0x90, 0xee, 0x2d, 0x8c, 0x7f, 0x90, 0xf2, 0x36, 0xa0, 0xa7, 0x11, 0x4a, 0xad, + 0x81, 0x9d, 0xa7, 0xe7, 0x53, 0x4b, 0xd4, 0x66, 0x30, 0x6e, 0x84, 0x18, 0xd6, 0xf6, 0x18, 0x9e, + 0x30, 0xa9, 0x57, 0xd5, 0x4e, 0xca, 0xce, 0xd1, 0xbf, 0x26, 0xf2, 0x5b, 0x19, 0x38, 0x63, 0x60, + 0xa8, 0xed, 0x32, 0x54, 0xb1, 0x1a, 0x52, 0x3f, 0x83, 0x8f, 0x9e, 0xcd, 0x67, 0x70, 0xc9, 0xec, + 0x4b, 0xbc, 0xa1, 0xeb, 0x7d, 0xe8, 0xd5, 0x42, 0xf2, 0x04, 0x66, 0xb0, 0x48, 0x3e, 0x51, 0xb0, + 0x35, 0x2b, 0x5e, 0x36, 0xe6, 0xe2, 0x66, 0x73, 0x27, 0x6b, 0x4c, 0x7a, 0xbb, 0xf8, 0xad, 0xc3, + 0xe2, 0xa4, 0x81, 0x2e, 0x83, 0xf6, 0x3a, 0xf1, 0x3b, 0x87, 0xd7, 0xda, 0xf1, 0xf5, 0x8d, 0xbf, + 0xab, 0x0a, 0xf2, 0x8f, 0x33, 0x30, 0xcf, 0xa0, 0xbc, 0x1b, 0xb7, 0x03, 0xbf, 0xa9, 0xca, 0xa5, + 0xdd, 0x5b, 0x8f, 0x61, 0x6b, 0x3c, 0x9b, 0x61, 0x7b, 0x05, 0x9b, 0xcc, 0xb7, 0x10, 0x67, 0x27, + 0xf0, 0x9b, 0x71, 0xf3, 0x8d, 0x4c, 0xf5, 0xbd, 0x1a, 0x49, 0xbe, 0x3f, 0x03, 0x67, 0x8d, 0x5b, + 0x55, 0x3d, 0xb5, 0x81, 0x70, 0x65, 0x9f, 0x55, 0x41, 0x2e, 0xe2, 0xa2, 0xa5, 0x6b, 0x62, 0xfd, + 0x5f, 0xc6, 0x16, 0xc4, 0x87, 0x0b, 0xb6, 0xc5, 0x69, 0x72, 0x2c, 0xad, 0x09, 0xbd, 0x6b, 0x21, + 0x1e, 0xcc, 0xa0, 0xbd, 0x88, 0x61, 0x9f, 0x39, 0xd7, 0xdb, 0x3e, 0x53, 0x25, 0x27, 0xc4, 0xb8, + 0xe9, 0xbd, 0x8d, 0x34, 0xbb, 0xb9, 0x92, 0xbf, 0x01, 0x67, 0xbb, 0x80, 0xea, 0x6b, 0x3b, 0xd5, + 0xf3, 0x6b, 0x7b, 0xfd, 0xe8, 0xb0, 0xf8, 0x6a, 0x5a, 0x6d, 0x69, 0x5f, 0x5a, 0xef, 0x1a, 0x88, + 0x0b, 0x10, 0x17, 0x0a, 0xf1, 0x27, 0x7d, 0x81, 0xbe, 0x2e, 0xd6, 0x87, 0x86, 0xcf, 0xb6, 0x7e, + 0xad, 0x0d, 0xfa, 0x09, 0x19, 0x23, 0x11, 0x0a, 0x13, 0x5a, 0xcc, 0xf8, 0x03, 0x61, 0xb6, 0xd0, + 0xa3, 0x92, 0x6f, 0x1d, 0x16, 0x0d, 0x6c, 0xa6, 0x90, 0xe9, 0xc1, 0xe8, 0x0d, 0x69, 0x53, 0x47, + 0x24, 0xbf, 0x91, 0x81, 0x39, 0x06, 0x88, 0x17, 0x95, 0xe8, 0xd4, 0x7c, 0xbf, 0x55, 0xbf, 0xf7, + 0x6c, 0x56, 0xfd, 0x4b, 0xd8, 0x46, 0x7d, 0xd5, 0x77, 0x0d, 0x49, 0x6a, 0xe3, 0x70, 0xb5, 0x1b, + 0xa6, 0x49, 0xc6, 0x6a, 0x3f, 0x3b, 0xc0, 0x6a, 0xe7, 0x13, 0x70, 0xfc, 0x6a, 0xef, 0x59, 0x0b, + 0xd9, 0x82, 0x09, 0xa1, 0x8b, 0xf1, 0x01, 0xbb, 0x60, 0x04, 0x90, 0xd6, 0x8b, 0xb8, 0x82, 0x2c, + 0x42, 0xea, 0x77, 0xf5, 0xd0, 0xe0, 0x42, 0x5a, 0x30, 0xcb, 0x7f, 0x9b, 0x77, 0x63, 0xc5, 0x9e, + 0x77, 0x63, 0x57, 0x44, 0x8f, 0x2e, 0x0a, 0xfe, 0x89, 0x2b, 0x32, 0x3d, 0x36, 0x4e, 0x0a, 0x63, + 0xd2, 0x06, 0x62, 0x80, 0xf9, 0x47, 0x7b, 0xb1, 0xff, 0x8d, 0xd8, 0xab, 0xa2, 0xce, 0x62, 0xb2, + 0xce, 0xe4, 0x97, 0x9b, 0xc2, 0x9b, 0xb8, 0x30, 0x2d, 0xa0, 0xfe, 0x63, 0xca, 0x77, 0xf8, 0x97, + 0x8c, 0xe8, 0x44, 0x89, 0x52, 0xae, 0xc4, 0xc9, 0x9a, 0x30, 0x7a, 0x54, 0x62, 0x43, 0x4f, 0xf2, + 0x23, 0x1b, 0x30, 0x53, 0x6a, 0xb7, 0x1b, 0x1e, 0xad, 0x63, 0x2f, 0x79, 0x1e, 0x6f, 0x2b, 0xce, + 0x7f, 0xe4, 0xf2, 0x42, 0xa1, 0x59, 0x26, 0x93, 0x78, 0x77, 0xd3, 0x5a, 0x3f, 0x92, 0xe9, 0x6a, + 0x34, 0x79, 0x03, 0xc6, 0xf0, 0x87, 0x16, 0xf0, 0x02, 0xaf, 0x98, 0x78, 0x13, 0xf1, 0xf2, 0x2a, + 0x46, 0x60, 0xc2, 0x92, 0x1e, 0xf4, 0x2e, 0xc7, 0x85, 0x25, 0x71, 0xaf, 0x11, 0xdf, 0x64, 0x14, + 0xa5, 0xdd, 0x7c, 0x2e, 0x16, 0xba, 0xd0, 0x6e, 0x5e, 0x58, 0xcb, 0x5b, 0xbf, 0x9a, 0x35, 0x97, + 0x1d, 0xb9, 0xa2, 0x89, 0xf9, 0x5a, 0xd8, 0x3d, 0x29, 0xe6, 0x6b, 0xc2, 0xfd, 0xdf, 0xcf, 0xc0, + 0xec, 0x86, 0x96, 0x38, 0x6f, 0xcb, 0xc7, 0x79, 0xe9, 0x9f, 0x4a, 0xee, 0x59, 0xa5, 0xc4, 0xd2, + 0x33, 0xf6, 0xb1, 0x95, 0x82, 0x4b, 0xc6, 0x4e, 0x6b, 0x0f, 0x7a, 0x22, 0x61, 0xc3, 0xb4, 0xcc, + 0x64, 0x1c, 0x9d, 0xc3, 0xc9, 0x2b, 0xf8, 0xb4, 0xde, 0x37, 0xb8, 0x7e, 0xb6, 0x52, 0xb6, 0x7e, + 0x3c, 0x0b, 0xe3, 0xda, 0x97, 0x42, 0x3e, 0x0b, 0x13, 0x7a, 0x75, 0xfa, 0xbd, 0xa4, 0xde, 0x3a, + 0xdb, 0xc0, 0xc2, 0x8b, 0x49, 0xea, 0x36, 0x8d, 0x8b, 0x49, 0xf6, 0x3d, 0x20, 0xf4, 0x84, 0x0a, + 0xd3, 0x07, 0x29, 0x0a, 0xd3, 0x89, 0xf2, 0xc2, 0xbf, 0xdb, 0xad, 0x36, 0x0d, 0x9e, 0xc6, 0xdd, + 0xfa, 0xa9, 0x0c, 0x14, 0x92, 0xdf, 0xf2, 0xa7, 0x32, 0x2a, 0x27, 0x78, 0x84, 0xfa, 0xb1, 0xac, + 0xca, 0x2b, 0x21, 0xdd, 0x30, 0x9f, 0x57, 0xbb, 0xb8, 0xf7, 0x8c, 0xf7, 0xa1, 0x17, 0xcd, 0x88, + 0x62, 0x7a, 0x00, 0x83, 0xf4, 0x30, 0x82, 0x43, 0xbf, 0xf0, 0xcb, 0xc5, 0x17, 0xac, 0x0f, 0x61, + 0x2e, 0x39, 0x1c, 0xf8, 0x46, 0x54, 0x82, 0x69, 0x13, 0x9e, 0xcc, 0x4a, 0x93, 0xa4, 0xb2, 0x93, + 0xf8, 0xd6, 0x1f, 0x65, 0x93, 0xbc, 0x85, 0x8d, 0x1c, 0xdb, 0x9b, 0x5a, 0xee, 0x76, 0x43, 0xa5, + 0x99, 0xe0, 0x7b, 0x13, 0x07, 0xd9, 0xb2, 0xec, 0x24, 0x69, 0x9a, 0x94, 0x33, 0x61, 0x2e, 0xdd, + 0x99, 0x90, 0xdc, 0x4a, 0x98, 0x05, 0x6b, 0x91, 0x6f, 0xf6, 0xe9, 0xb6, 0x13, 0x9b, 0x06, 0x27, + 0xac, 0x81, 0x97, 0x61, 0xce, 0x08, 0xe3, 0x2c, 0xe9, 0x87, 0xe3, 0x27, 0x81, 0x08, 0x0b, 0x38, + 0x71, 0x2a, 0x32, 0x59, 0x85, 0x51, 0xd6, 0xcc, 0xfb, 0x6e, 0x5b, 0x3c, 0xfd, 0x10, 0xe5, 0x5a, + 0xdc, 0x50, 0x7a, 0xa1, 0xe6, 0x5d, 0xdc, 0xa0, 0x4c, 0x32, 0xd0, 0x17, 0x96, 0x40, 0xb4, 0xfe, + 0x65, 0x86, 0x7d, 0xff, 0xb5, 0xc7, 0xdf, 0x61, 0xb9, 0x9e, 0x58, 0x97, 0xfa, 0x98, 0x70, 0xfe, + 0x69, 0x96, 0x67, 0x0a, 0x11, 0xcb, 0xe7, 0x6d, 0x18, 0xd9, 0x72, 0x83, 0x5d, 0x1a, 0x89, 0x1c, + 0x1a, 0x3a, 0x17, 0x5e, 0x10, 0xc7, 0xe5, 0x89, 0xf0, 0xb7, 0x2d, 0x08, 0xf4, 0x1b, 0xb6, 0xec, + 0x40, 0x37, 0x6c, 0xda, 0xf3, 0x41, 0xee, 0x99, 0x3d, 0x1f, 0x7c, 0x97, 0x4a, 0x0a, 0x52, 0x8a, + 0x06, 0x88, 0x12, 0x7c, 0x31, 0x99, 0x83, 0xa7, 0x2b, 0x9e, 0x73, 0xcc, 0x8e, 0xdc, 0xd2, 0xb3, + 0xfa, 0x68, 0xfe, 0x79, 0xc7, 0xe4, 0xef, 0xb1, 0xfe, 0x34, 0xc7, 0xc7, 0x58, 0x0c, 0xd4, 0x65, + 0xc3, 0x77, 0x17, 0xbf, 0x93, 0xc4, 0x75, 0x26, 0xf7, 0xe2, 0xbd, 0x0c, 0x43, 0x6c, 0x6d, 0x8a, + 0xd1, 0x44, 0x3c, 0xb6, 0x7e, 0x75, 0x3c, 0x56, 0xce, 0xbe, 0x65, 0x3c, 0x93, 0xf4, 0x3c, 0x6a, + 0x78, 0x6c, 0xe9, 0xdf, 0x32, 0x62, 0x90, 0x2b, 0x30, 0xb4, 0xee, 0xd7, 0x65, 0x34, 0xea, 0x39, + 0x8c, 0xe0, 0xe0, 0xd7, 0xa9, 0x71, 0xb7, 0x8f, 0x18, 0xac, 0xaf, 0x2a, 0xcf, 0x86, 0xde, 0xd7, + 0xe6, 0x8e, 0x2b, 0x42, 0x26, 0xea, 0x7d, 0x8d, 0x53, 0x72, 0xac, 0xc0, 0x94, 0x99, 0x05, 0x5a, + 0x18, 0xb8, 0xe2, 0x23, 0x40, 0x22, 0x99, 0xb4, 0xfe, 0x7a, 0x63, 0x12, 0x91, 0x25, 0x98, 0x34, + 0xa2, 0x60, 0x8a, 0x37, 0x58, 0xbc, 0x34, 0x35, 0x63, 0x68, 0xea, 0x97, 0xa6, 0x06, 0x09, 0x3b, + 0xcf, 0x45, 0xfb, 0xb5, 0x97, 0xd8, 0xae, 0xb6, 0x0b, 0x1c, 0x72, 0x13, 0xf2, 0x3c, 0x54, 0x82, + 0xba, 0x94, 0xc3, 0xd7, 0xb4, 0x10, 0x61, 0x89, 0x50, 0x23, 0x12, 0x51, 0x73, 0x8d, 0xff, 0x0c, + 0x14, 0xc4, 0x96, 0x14, 0xe7, 0x2c, 0x3e, 0x07, 0x43, 0xcb, 0x95, 0xb2, 0xad, 0x6f, 0x23, 0x35, + 0xaf, 0x1e, 0xd8, 0x08, 0x45, 0x7f, 0xab, 0x75, 0x1a, 0xed, 0xfb, 0xc1, 0x63, 0x9b, 0x86, 0x51, + 0xe0, 0xf1, 0x34, 0x7c, 0xf8, 0x21, 0x7e, 0x96, 0xbc, 0x0b, 0xc3, 0x68, 0x69, 0x99, 0x38, 0x19, + 0x92, 0x75, 0x2c, 0x4d, 0x8a, 0x05, 0x3c, 0x8c, 0x66, 0x9b, 0x36, 0x27, 0x22, 0x6f, 0xc3, 0x50, + 0x99, 0xb6, 0x0e, 0x12, 0x89, 0xc8, 0xba, 0x88, 0xd5, 0x86, 0x50, 0xa7, 0xad, 0x03, 0x1b, 0x49, + 0xac, 0x9f, 0xca, 0xc2, 0xa9, 0x94, 0x66, 0x3d, 0xfc, 0xec, 0x73, 0xba, 0x2b, 0x2e, 0x19, 0xbb, + 0xa2, 0x7c, 0x46, 0xef, 0x39, 0xf0, 0xa9, 0x9b, 0xe4, 0x2f, 0x66, 0xe0, 0x8c, 0xb9, 0x40, 0x85, + 0x69, 0xf5, 0xc3, 0x9b, 0xe4, 0x1d, 0x18, 0x59, 0xa5, 0x6e, 0x9d, 0xca, 0xac, 0x43, 0xa7, 0x54, + 0x50, 0x33, 0xee, 0x07, 0xce, 0x0b, 0x39, 0xdb, 0xd8, 0x6b, 0x90, 0x43, 0x49, 0x59, 0x34, 0x8e, + 0x8b, 0xed, 0x96, 0x8c, 0xc9, 0x90, 0x56, 0x55, 0x1f, 0x63, 0x94, 0x6f, 0x65, 0xe0, 0xc5, 0x3e, + 0x34, 0x6c, 0xe2, 0xd8, 0xd4, 0xeb, 0x13, 0x87, 0x27, 0x2a, 0x42, 0xc9, 0xfb, 0x30, 0xbd, 0x25, + 0xc4, 0x7e, 0x39, 0x1d, 0xd9, 0xf8, 0x7b, 0x91, 0x1a, 0x81, 0x23, 0xe7, 0x25, 0x89, 0x6c, 0x04, + 0x0b, 0xc9, 0xf5, 0x0d, 0x16, 0xa2, 0xc7, 0xde, 0x18, 0x1a, 0x34, 0xf6, 0xc6, 0x87, 0x30, 0x67, + 0xf6, 0x4d, 0x84, 0x40, 0x8d, 0x23, 0x8f, 0x64, 0x7a, 0x47, 0x1e, 0xe9, 0x1b, 0x68, 0xd1, 0xfa, + 0xf1, 0x0c, 0x14, 0x4c, 0xde, 0x9f, 0x74, 0x3e, 0xdf, 0x33, 0xe6, 0xf3, 0xc5, 0xf4, 0xf9, 0xec, + 0x3d, 0x91, 0xff, 0x5b, 0x26, 0xd9, 0xd9, 0x81, 0x66, 0xd0, 0x82, 0x91, 0xb2, 0xdf, 0x74, 0xbd, + 0x96, 0x9e, 0x02, 0xbb, 0x8e, 0x10, 0x5b, 0x94, 0x0c, 0x16, 0xa8, 0xe5, 0x22, 0x0c, 0xaf, 0xfb, + 0xad, 0x52, 0x59, 0x58, 0x1e, 0x23, 0x9f, 0x96, 0xdf, 0x72, 0xdc, 0xba, 0xcd, 0x0b, 0xc8, 0x1a, + 0x40, 0xb5, 0x16, 0x50, 0xda, 0xaa, 0x7a, 0xdf, 0x4d, 0x13, 0x92, 0x06, 0x1b, 0xa1, 0x46, 0x07, + 0x37, 0x16, 0xfe, 0xc2, 0x8a, 0x88, 0x4e, 0xe8, 0x7d, 0xb7, 0xbe, 0xdf, 0x6a, 0xf4, 0x16, 0x05, + 0x88, 0x89, 0x30, 0x1f, 0xa8, 0x57, 0x17, 0x39, 0xde, 0x27, 0x45, 0x3e, 0x50, 0x06, 0x30, 0xf2, + 0x81, 0x32, 0x00, 0xdb, 0xda, 0x57, 0xa9, 0xb7, 0xbb, 0xc7, 0x8d, 0x9a, 0x26, 0xf9, 0x52, 0xdd, + 0x43, 0x88, 0xbe, 0xb5, 0x73, 0x1c, 0xeb, 0x5f, 0x0d, 0xc3, 0x59, 0x9b, 0xee, 0x7a, 0x4c, 0x4c, + 0x7e, 0x10, 0x7a, 0xad, 0x5d, 0x23, 0x94, 0x86, 0x95, 0x58, 0x48, 0x22, 0xee, 0x3c, 0x83, 0xa8, + 0x81, 0xb9, 0x0a, 0x79, 0x76, 0x2a, 0x6a, 0x6b, 0x09, 0x9f, 0x5a, 0xd8, 0xd9, 0x29, 0x62, 0xb5, + 0xca, 0x62, 0xf2, 0x9a, 0x38, 0xb5, 0xb5, 0xcc, 0x20, 0xec, 0xd4, 0xfe, 0xf6, 0x61, 0x11, 0xaa, + 0x07, 0x61, 0x44, 0x51, 0x63, 0x13, 0x27, 0xb7, 0x12, 0xad, 0x87, 0x7a, 0x88, 0xd6, 0xf7, 0x61, + 0xae, 0x54, 0xe7, 0x9b, 0xb5, 0xdb, 0xd8, 0x0c, 0xbc, 0x56, 0xcd, 0x6b, 0xbb, 0x0d, 0xa9, 0x2e, + 0xe2, 0x28, 0xbb, 0xaa, 0xdc, 0x69, 0x2b, 0x04, 0x3b, 0x95, 0x8c, 0x75, 0xa3, 0xbc, 0x5e, 0xc5, + 0x88, 0x13, 0xe2, 0xd1, 0x0d, 0xbb, 0x51, 0x6f, 0x85, 0xd8, 0x8b, 0xd0, 0x56, 0xc5, 0x28, 0xd4, + 0xe3, 0x33, 0xf6, 0xd6, 0x5a, 0x35, 0x76, 0x29, 0xe5, 0x81, 0xcb, 0xf9, 0x73, 0x78, 0xd4, 0x08, + 0xd1, 0x80, 0xd0, 0xc0, 0x8b, 0xe9, 0xaa, 0xd5, 0x55, 0x46, 0x97, 0xef, 0xa2, 0x0b, 0xc3, 0x3d, + 0x9d, 0x8e, 0xe3, 0x91, 0xeb, 0x6c, 0x29, 0x34, 0xfd, 0x88, 0xe2, 0x3a, 0x1f, 0x8b, 0x55, 0x80, + 0x00, 0xa1, 0x5c, 0x05, 0xd0, 0x50, 0xc8, 0xbb, 0x30, 0xbb, 0xb2, 0xbc, 0x28, 0xef, 0x3e, 0xcb, + 0x7e, 0xad, 0x83, 0xcf, 0xd7, 0x80, 0xf5, 0xe1, 0x1c, 0xd2, 0xda, 0x22, 0x5b, 0xdc, 0x69, 0x68, + 0xe4, 0x32, 0x8c, 0x56, 0xca, 0x7c, 0xec, 0xc7, 0xf5, 0xec, 0x3c, 0xc2, 0x9e, 0x48, 0x16, 0x92, + 0x8d, 0x58, 0x46, 0x9d, 0x38, 0x56, 0x98, 0x3c, 0x3b, 0x80, 0x7c, 0xfa, 0x36, 0x4c, 0x2e, 0xf9, + 0x51, 0xa5, 0x15, 0x46, 0x6e, 0xab, 0x46, 0x2b, 0x65, 0x3d, 0x54, 0xee, 0xb6, 0x1f, 0x39, 0x9e, + 0x28, 0x61, 0x2d, 0x37, 0x31, 0xc9, 0xe7, 0x91, 0xf4, 0x0e, 0x6d, 0xd1, 0x20, 0x0e, 0x91, 0x3b, + 0xcc, 0xc7, 0x96, 0x91, 0xee, 0xaa, 0x12, 0xdb, 0x44, 0x14, 0x99, 0x83, 0x78, 0x26, 0xbd, 0x65, + 0xbf, 0x4e, 0xc3, 0x87, 0x37, 0xbe, 0xc3, 0x32, 0x07, 0x69, 0x7d, 0xc3, 0x2d, 0xf3, 0x46, 0xea, + 0xfe, 0xfa, 0xef, 0x62, 0xe6, 0xa0, 0x2e, 0x5c, 0xf2, 0x79, 0x18, 0xc6, 0x9f, 0x42, 0xd8, 0x9a, + 0x4d, 0x61, 0x1b, 0x0b, 0x5a, 0x35, 0x9e, 0x37, 0x1f, 0x09, 0x48, 0x05, 0x46, 0x85, 0x9c, 0x7f, + 0x92, 0xfc, 0x17, 0x42, 0x61, 0xe0, 0x2b, 0x43, 0xd0, 0x5b, 0x75, 0x98, 0xd0, 0x2b, 0x64, 0x5f, + 0xc4, 0xaa, 0x1b, 0xee, 0xd1, 0x3a, 0xfb, 0x25, 0x52, 0x57, 0xe1, 0x17, 0xb1, 0x87, 0x50, 0x87, + 0xb5, 0xc3, 0xd6, 0x50, 0xd8, 0x16, 0x5f, 0x09, 0x1f, 0x84, 0xa2, 0x29, 0x42, 0xf3, 0xf7, 0xf0, + 0x16, 0xa9, 0x6e, 0x8b, 0x22, 0xeb, 0xbb, 0x60, 0x6e, 0xbd, 0xd3, 0x68, 0xb8, 0xdb, 0x0d, 0x2a, + 0x53, 0x1b, 0x44, 0x6e, 0x44, 0xc9, 0x12, 0x0c, 0x57, 0xb5, 0x4c, 0xbc, 0xb3, 0x2a, 0x77, 0x44, + 0x8c, 0x83, 0xa6, 0x9b, 0x19, 0x8c, 0xfe, 0x91, 0xc8, 0xc1, 0xcb, 0x49, 0xad, 0x3f, 0xc8, 0xc0, + 0x9c, 0x7c, 0xe4, 0x0e, 0xdc, 0xda, 0x63, 0x95, 0x8d, 0xf9, 0xb2, 0xb1, 0xd6, 0x70, 0xc1, 0x26, + 0x96, 0x11, 0x5f, 0x75, 0x77, 0x65, 0x23, 0xcc, 0xf3, 0x33, 0xad, 0xc1, 0xc7, 0x35, 0x86, 0xbc, + 0x0b, 0xe3, 0xe2, 0x0c, 0xd5, 0x62, 0xd6, 0x61, 0x60, 0x20, 0xa1, 0x7d, 0x24, 0x4d, 0x2e, 0x74, + 0x74, 0x14, 0x0d, 0xcc, 0xae, 0x3c, 0xbc, 0xf1, 0x69, 0x88, 0x06, 0x66, 0x1d, 0x7d, 0x96, 0xee, + 0xef, 0x8c, 0x27, 0xc7, 0x56, 0xac, 0xdd, 0x5b, 0x7a, 0x94, 0xaa, 0x4c, 0xac, 0xa8, 0xc5, 0x51, + 0xaa, 0x74, 0x45, 0x4d, 0xa1, 0xaa, 0x39, 0xc9, 0x1e, 0x33, 0x27, 0xef, 0xcb, 0x39, 0xc9, 0xf5, + 0x5e, 0x18, 0xb3, 0x7d, 0xe6, 0xa1, 0x1a, 0x7f, 0x21, 0x43, 0x03, 0x69, 0xf9, 0x2f, 0x60, 0x38, + 0x6e, 0x4e, 0x92, 0xdc, 0x45, 0x05, 0x27, 0xfd, 0xea, 0x60, 0x78, 0x70, 0xa6, 0xc7, 0x6c, 0xcd, + 0x5f, 0x80, 0x89, 0x52, 0x14, 0xb9, 0xb5, 0x3d, 0x5a, 0x2f, 0xb3, 0xed, 0x49, 0x0b, 0xa8, 0xe3, + 0x0a, 0xb8, 0xfe, 0xd4, 0xa3, 0xe3, 0xf2, 0x00, 0x91, 0x6e, 0x28, 0x4c, 0x40, 0x55, 0x80, 0x48, + 0x06, 0x31, 0x03, 0x44, 0x32, 0x08, 0xb9, 0x0e, 0xa3, 0x95, 0xd6, 0x13, 0x8f, 0x8d, 0x49, 0x3e, + 0x4e, 0xcd, 0xee, 0x71, 0x90, 0xbe, 0xb9, 0x0a, 0x2c, 0xf2, 0xb6, 0x26, 0x63, 0x8f, 0xc5, 0xfa, + 0x34, 0xbf, 0x81, 0x51, 0xa1, 0x38, 0x74, 0xf9, 0x59, 0x09, 0xdd, 0xb7, 0x60, 0x54, 0x5e, 0xac, + 0x41, 0xac, 0x43, 0x0b, 0xca, 0x6e, 0x87, 0x7d, 0x89, 0x8c, 0x09, 0x7c, 0xb5, 0x14, 0x5c, 0xe3, + 0x5a, 0x02, 0x5f, 0x2d, 0x05, 0x97, 0x91, 0xc0, 0x57, 0x4b, 0xc6, 0xa5, 0xee, 0x24, 0x26, 0x8e, + 0xbd, 0x93, 0x78, 0x08, 0x13, 0x9b, 0x6e, 0x10, 0x79, 0x4c, 0x46, 0x69, 0x45, 0xe1, 0xfc, 0xa4, + 0x71, 0x8d, 0xa7, 0x15, 0x2d, 0x5d, 0x90, 0x49, 0x64, 0xdb, 0x1a, 0xbe, 0x99, 0xed, 0x34, 0x86, + 0xa7, 0x1b, 0x80, 0x4e, 0x7d, 0x12, 0x03, 0x50, 0x1c, 0x54, 0xbc, 0xba, 0x99, 0x8e, 0x2f, 0x08, + 0x50, 0x86, 0x4e, 0xdc, 0xdf, 0x28, 0x44, 0xf2, 0x55, 0x98, 0x60, 0x7f, 0x6f, 0xfa, 0x0d, 0xaf, + 0xe6, 0xd1, 0x70, 0xbe, 0x80, 0x9d, 0xbb, 0x90, 0xfa, 0xf5, 0x23, 0xd2, 0x41, 0x95, 0x46, 0xfc, + 0x03, 0x46, 0xc6, 0xc9, 0x3b, 0x59, 0x83, 0x1b, 0xf9, 0x00, 0x26, 0xd8, 0xea, 0xdb, 0x76, 0x43, + 0x2e, 0x9a, 0xce, 0xc4, 0x26, 0xbc, 0x75, 0x01, 0xef, 0x8a, 0xd1, 0xaa, 0x13, 0xb0, 0x63, 0xbe, + 0xd4, 0xe6, 0x1b, 0x24, 0xd1, 0x56, 0x7b, 0xbb, 0x6b, 0x73, 0x94, 0x68, 0xe4, 0x8b, 0x30, 0x51, + 0x6a, 0xb7, 0xe3, 0x1d, 0x67, 0x56, 0xbb, 0x97, 0x69, 0xb7, 0x9d, 0xd4, 0x5d, 0xc7, 0xa0, 0x48, + 0x6e, 0xcc, 0x73, 0x27, 0xda, 0x98, 0xc9, 0x9b, 0x4a, 0x5a, 0x3f, 0x15, 0x5f, 0x32, 0x0a, 0x3d, + 0xc6, 0x10, 0xfd, 0xb9, 0xe0, 0xbe, 0x0c, 0x93, 0xfc, 0xd6, 0x4d, 0x4a, 0x33, 0xa7, 0xbb, 0xbe, + 0x9e, 0x14, 0xa1, 0xc6, 0xa4, 0x21, 0x2b, 0x30, 0xc5, 0xbd, 0x5d, 0x1b, 0x22, 0x78, 0xee, 0xfc, + 0x19, 0xfc, 0x6a, 0x91, 0x0b, 0x77, 0x92, 0x6d, 0x60, 0x4e, 0x05, 0xd7, 0xe0, 0x92, 0x20, 0xb2, + 0xfe, 0x2c, 0x03, 0x67, 0x7a, 0xcc, 0xb8, 0x0a, 0xad, 0x9a, 0xe9, 0x1f, 0x5a, 0x95, 0xed, 0x1c, + 0xa6, 0x92, 0x8e, 0xfd, 0x17, 0x52, 0x96, 0x3e, 0x5f, 0x52, 0xde, 0xf2, 0x81, 0x88, 0xb4, 0x25, + 0xa2, 0xea, 0xbb, 0x3e, 0xde, 0x14, 0xe6, 0xba, 0x0f, 0x21, 0x81, 0xc7, 0x1b, 0xb5, 0x64, 0x1d, + 0x1d, 0x16, 0x2f, 0x88, 0xac, 0x28, 0x6a, 0x5a, 0x3f, 0xf2, 0x8d, 0x2f, 0x38, 0x85, 0xb5, 0x75, + 0x98, 0x81, 0x71, 0xed, 0x3b, 0x24, 0x17, 0x35, 0xdf, 0xd9, 0x02, 0xcf, 0xab, 0x63, 0xbe, 0xed, + 0xa9, 0xfb, 0xd0, 0xec, 0xf1, 0xf7, 0xa1, 0xf7, 0x99, 0x28, 0xa4, 0x85, 0x9f, 0x6d, 0x1a, 0x97, + 0x97, 0x36, 0x96, 0x63, 0xee, 0x6b, 0x37, 0x8c, 0x4a, 0xb5, 0xc8, 0x7b, 0x42, 0x07, 0x38, 0x74, + 0xe2, 0xdc, 0xd7, 0x6e, 0x18, 0x39, 0x2e, 0x92, 0x75, 0xe5, 0xbe, 0x56, 0x0c, 0xad, 0x1f, 0xc8, + 0x00, 0x3c, 0xa8, 0x2c, 0x63, 0xfc, 0xe8, 0x4f, 0x2a, 0x14, 0xa4, 0xc7, 0xe4, 0x94, 0xdc, 0xfb, + 0x88, 0x03, 0xff, 0x7d, 0x06, 0xa6, 0x4c, 0x34, 0xf2, 0x3e, 0x4c, 0x57, 0x6b, 0x81, 0xdf, 0x68, + 0x6c, 0xbb, 0xb5, 0xc7, 0x6b, 0x5e, 0x8b, 0xf2, 0x68, 0x88, 0xc3, 0xfc, 0x2c, 0x0a, 0x55, 0x91, + 0xd3, 0x60, 0x65, 0x76, 0x12, 0x99, 0xfc, 0x60, 0x06, 0x26, 0xab, 0x7b, 0xfe, 0xbe, 0x0a, 0x60, + 0x28, 0x26, 0xe4, 0x6b, 0xec, 0xdb, 0x0e, 0xf7, 0xfc, 0xfd, 0x38, 0x29, 0x9f, 0x61, 0xe1, 0xf8, + 0xde, 0x60, 0xaf, 0xc9, 0x35, 0x1f, 0x35, 0x99, 0x28, 0xbc, 0x66, 0x54, 0x62, 0x9b, 0x75, 0x5a, + 0x7f, 0x99, 0x81, 0x71, 0xd4, 0x79, 0x1a, 0x0d, 0x94, 0xb9, 0xbe, 0x93, 0x32, 0xbc, 0xa9, 0x7e, + 0xf5, 0x99, 0xd8, 0xb7, 0x60, 0x3a, 0x81, 0x46, 0x2c, 0x18, 0xa9, 0x62, 0xbc, 0x04, 0xfd, 0x82, + 0x82, 0x47, 0x50, 0xb0, 0x45, 0x89, 0xb5, 0xa2, 0x91, 0x3d, 0xbc, 0x81, 0xaf, 0x8c, 0x8b, 0x00, + 0x9e, 0x04, 0x49, 0xcd, 0x86, 0x24, 0x5b, 0xf2, 0xf0, 0x86, 0xad, 0x61, 0x59, 0xeb, 0x30, 0x52, + 0xf5, 0x83, 0x68, 0xe9, 0x80, 0x2b, 0x13, 0x65, 0x1a, 0xd6, 0xf4, 0x67, 0x44, 0x0f, 0xaf, 0xee, + 0x6b, 0xb6, 0x28, 0x22, 0x45, 0x18, 0xbe, 0xed, 0xd1, 0x46, 0x5d, 0x37, 0x2b, 0xdd, 0x61, 0x00, + 0x9b, 0xc3, 0x99, 0xc2, 0x75, 0x3a, 0x4e, 0xb3, 0x10, 0xdb, 0xaf, 0x7e, 0xd2, 0xef, 0x66, 0xd9, + 0x18, 0xdf, 0x97, 0xcc, 0x44, 0xef, 0x46, 0x4d, 0x7d, 0x86, 0xfa, 0x3f, 0xce, 0xc0, 0x42, 0x6f, + 0x12, 0xdd, 0x24, 0x36, 0xd3, 0xc7, 0x24, 0xf6, 0x95, 0xe4, 0xb3, 0x17, 0xa2, 0x89, 0x67, 0xaf, + 0xf8, 0xb1, 0xab, 0x8c, 0x06, 0xcc, 0x35, 0x2a, 0x73, 0x2b, 0x5c, 0xec, 0xd3, 0x66, 0x44, 0xe4, + 0xd3, 0x1c, 0x21, 0x8d, 0x2d, 0x68, 0xad, 0xdf, 0x1e, 0x82, 0xb3, 0x3d, 0x29, 0xc8, 0xaa, 0x96, + 0xb1, 0x65, 0x4a, 0xe5, 0x8a, 0xe8, 0x89, 0x7f, 0x0d, 0xff, 0x45, 0xa3, 0xb3, 0xa4, 0x8f, 0xd6, + 0x86, 0xca, 0xd4, 0x91, 0x45, 0x5e, 0xaf, 0x1f, 0xcb, 0x8b, 0xa3, 0x23, 0x33, 0xe8, 0x4e, 0xda, + 0x81, 0xde, 0x7c, 0x34, 0x72, 0xbd, 0x46, 0xa8, 0x7f, 0x76, 0x75, 0x0e, 0xb2, 0x65, 0x59, 0x6c, + 0xa7, 0x3c, 0x94, 0x6e, 0xa7, 0x6c, 0xfd, 0xab, 0x0c, 0x8c, 0xa9, 0x66, 0x93, 0x05, 0x38, 0xbd, + 0x65, 0x97, 0x96, 0x57, 0x9c, 0xad, 0x0f, 0x37, 0x57, 0x9c, 0x07, 0xeb, 0xd5, 0xcd, 0x95, 0xe5, + 0xca, 0xed, 0xca, 0x4a, 0xb9, 0xf0, 0x02, 0x99, 0x81, 0xc9, 0x07, 0xeb, 0xf7, 0xd6, 0x37, 0x1e, + 0xad, 0x3b, 0x2b, 0xb6, 0xbd, 0x61, 0x17, 0x32, 0x64, 0x12, 0xc6, 0xec, 0xa5, 0xd2, 0xb2, 0xb3, + 0xbe, 0x51, 0x5e, 0x29, 0x64, 0x49, 0x01, 0x26, 0x96, 0x37, 0xd6, 0xd7, 0x57, 0x96, 0xb7, 0x2a, + 0x0f, 0x2b, 0x5b, 0x1f, 0x16, 0x72, 0x84, 0xc0, 0x14, 0x22, 0x6c, 0xda, 0x95, 0xf5, 0xe5, 0xca, + 0x66, 0x69, 0xad, 0x30, 0xc4, 0x60, 0x0c, 0x5f, 0x83, 0x0d, 0x2b, 0x46, 0xf7, 0x1e, 0x2c, 0xad, + 0x14, 0x46, 0x18, 0x0a, 0xfb, 0x4b, 0x43, 0x19, 0x65, 0xd5, 0x23, 0x4a, 0xb9, 0xb4, 0x55, 0x5a, + 0x2a, 0x55, 0x57, 0x0a, 0x79, 0x72, 0x06, 0x66, 0x0d, 0x90, 0xb3, 0xb6, 0x71, 0xa7, 0xb2, 0x5e, + 0x18, 0x23, 0x73, 0x50, 0x50, 0xb0, 0xf2, 0x92, 0xf3, 0xa0, 0xba, 0x62, 0x17, 0x20, 0x09, 0x5d, + 0x2f, 0xdd, 0x5f, 0x29, 0x8c, 0x5b, 0xef, 0x71, 0xef, 0x39, 0x3e, 0xd4, 0xe4, 0x34, 0x90, 0xea, + 0x56, 0x69, 0xeb, 0x41, 0x35, 0xd1, 0xf9, 0x71, 0x18, 0xad, 0x3e, 0x58, 0x5e, 0x5e, 0xa9, 0x56, + 0x0b, 0x19, 0x02, 0x30, 0x72, 0xbb, 0x54, 0x59, 0x5b, 0x29, 0x17, 0xb2, 0xd6, 0x4f, 0x66, 0x60, + 0x46, 0x4a, 0x80, 0xf2, 0x0d, 0xe3, 0x13, 0x7e, 0x8b, 0xef, 0x1b, 0x8a, 0xad, 0x74, 0x6d, 0x4a, + 0x54, 0xd2, 0xe7, 0x33, 0xfc, 0xc5, 0x0c, 0x9c, 0x4a, 0xc5, 0x26, 0x1f, 0x42, 0x41, 0xb6, 0xe0, + 0xbe, 0x1b, 0xd5, 0xf6, 0xe2, 0x7d, 0xec, 0x42, 0xa2, 0x96, 0x04, 0x1a, 0xbf, 0xd6, 0x8c, 0x73, + 0xc8, 0x76, 0xb1, 0x19, 0x3c, 0xc2, 0xb9, 0xf5, 0x0b, 0x19, 0x38, 0xd3, 0xa3, 0x1a, 0xb2, 0x0c, + 0x23, 0x2a, 0xd7, 0x45, 0x1f, 0xbb, 0xab, 0xb9, 0x6f, 0x1d, 0x16, 0x05, 0x22, 0x26, 0xdd, 0xc4, + 0xbf, 0xec, 0x11, 0x95, 0xbc, 0x02, 0x33, 0x48, 0xf0, 0xe1, 0x3b, 0x9b, 0x18, 0x79, 0x51, 0x53, + 0xe9, 0x51, 0x75, 0x69, 0x5c, 0x8c, 0x5d, 0xce, 0xdd, 0x0f, 0x31, 0x85, 0x84, 0xf5, 0xb3, 0x19, + 0x26, 0xdc, 0x25, 0x11, 0x99, 0xcc, 0x5b, 0x0a, 0xc3, 0x4e, 0x93, 0xda, 0x7e, 0x83, 0x96, 0xec, + 0x75, 0x71, 0x6c, 0xa0, 0xb4, 0xea, 0x62, 0x01, 0xaa, 0x15, 0x8e, 0x1b, 0xb4, 0x8c, 0xc7, 0x53, + 0x9d, 0x86, 0xbc, 0x0d, 0xb0, 0xf2, 0x34, 0xa2, 0x41, 0xcb, 0x6d, 0xa8, 0xc8, 0x26, 0x3c, 0xb2, + 0x8f, 0x80, 0x9a, 0xf2, 0xb6, 0x86, 0x6c, 0xfd, 0xad, 0x0c, 0x4c, 0x08, 0xa5, 0xa9, 0xd4, 0xa0, + 0x41, 0xf4, 0xc9, 0x96, 0xd7, 0xdb, 0xc6, 0xf2, 0x52, 0x6e, 0x06, 0x1a, 0x7f, 0x56, 0x9c, 0xba, + 0xb2, 0xfe, 0x69, 0x06, 0x0a, 0x49, 0x44, 0xf2, 0x3e, 0xe4, 0xab, 0xf4, 0x09, 0x0d, 0xbc, 0xe8, + 0x40, 0x6c, 0x94, 0x32, 0x2b, 0x18, 0xc7, 0x11, 0x65, 0x7c, 0x3d, 0x84, 0xe2, 0x97, 0xad, 0x68, + 0x06, 0xdd, 0xef, 0xb5, 0x6b, 0x8f, 0xdc, 0xb3, 0xba, 0xf6, 0xb0, 0xfe, 0xe7, 0x2c, 0x9c, 0xb9, + 0x43, 0x23, 0xbd, 0x4f, 0xea, 0xb5, 0xfb, 0x33, 0x83, 0xf5, 0x4b, 0xeb, 0xc9, 0x3c, 0x8c, 0x62, + 0x91, 0x9c, 0x5f, 0x5b, 0xfe, 0x24, 0x4b, 0x6a, 0x5d, 0xe7, 0x8c, 0xb4, 0x43, 0x3d, 0xea, 0xbe, + 0xa6, 0x25, 0x22, 0x51, 0xcb, 0xfa, 0x32, 0x4c, 0x61, 0xa4, 0xed, 0x0e, 0xfb, 0x1c, 0x68, 0x5d, + 0x5c, 0xff, 0xe4, 0xed, 0x04, 0x94, 0xbc, 0x06, 0x05, 0x06, 0x29, 0xd5, 0x1e, 0xb7, 0xfc, 0xfd, + 0x06, 0xad, 0xef, 0xd2, 0x3a, 0x1e, 0xeb, 0x79, 0xbb, 0x0b, 0x2e, 0x79, 0x3e, 0x68, 0x71, 0xd5, + 0x8d, 0xd6, 0xf1, 0x8e, 0x46, 0xf0, 0x8c, 0xa1, 0x0b, 0x6f, 0xc3, 0xf8, 0xc7, 0x4c, 0x2a, 0x64, + 0xfd, 0x4f, 0x19, 0x98, 0xc3, 0xce, 0x69, 0x15, 0xcb, 0x84, 0x8f, 0x72, 0xb4, 0xb4, 0x3c, 0x1b, + 0x2e, 0x03, 0x99, 0x9f, 0x82, 0x1a, 0xc5, 0xf8, 0x4e, 0x28, 0x3b, 0xc0, 0x9d, 0x50, 0xf5, 0x24, + 0xc9, 0xad, 0x07, 0xbc, 0xd2, 0xba, 0x3b, 0x94, 0xcf, 0x15, 0x86, 0xe2, 0x29, 0xb7, 0x7e, 0x30, + 0x0b, 0xa3, 0x36, 0xc5, 0xac, 0xbf, 0xe4, 0x32, 0x8c, 0xae, 0xfb, 0x11, 0x0d, 0xef, 0x1b, 0x29, + 0x9e, 0x5b, 0x0c, 0xe4, 0x34, 0xeb, 0xb6, 0x2c, 0x64, 0x0b, 0x7e, 0x33, 0xf0, 0xeb, 0x9d, 0x5a, + 0xa4, 0x2f, 0xf8, 0x36, 0x07, 0xd9, 0xb2, 0x8c, 0xbc, 0x01, 0x63, 0x82, 0xb3, 0x7a, 0x63, 0x44, + 0x13, 0xda, 0x80, 0xaa, 0xac, 0xd1, 0x31, 0x02, 0xca, 0xb4, 0x5c, 0xc0, 0x18, 0xd2, 0x64, 0xda, + 0x2e, 0x99, 0x41, 0x8a, 0xea, 0xc3, 0x7d, 0x44, 0xf5, 0xcf, 0xc0, 0x48, 0x29, 0x0c, 0x69, 0x24, + 0x7d, 0xff, 0x27, 0x54, 0xd8, 0xac, 0x90, 0x46, 0x9c, 0xb1, 0x8b, 0xe5, 0xb6, 0xc0, 0xb3, 0xfe, + 0x65, 0x16, 0x86, 0xf1, 0x4f, 0x7c, 0x57, 0x0d, 0x6a, 0x7b, 0xc6, 0xbb, 0x6a, 0x50, 0xdb, 0xb3, + 0x11, 0x4a, 0x6e, 0xe0, 0x4d, 0x85, 0x4c, 0x09, 0x23, 0x7a, 0x8f, 0x57, 0xf0, 0xf5, 0x18, 0x6c, + 0xeb, 0x38, 0xea, 0xc1, 0x39, 0x97, 0x1a, 0xf1, 0xe3, 0x34, 0x64, 0x37, 0xaa, 0xa2, 0xc7, 0x18, + 0x47, 0xca, 0x0f, 0xed, 0xec, 0x46, 0x15, 0x47, 0x63, 0xb5, 0xb4, 0xf8, 0xd6, 0x2d, 0x3d, 0x1b, + 0x79, 0xb8, 0xe7, 0x2e, 0xbe, 0x75, 0xcb, 0x16, 0x25, 0x6c, 0x7c, 0xb1, 0xcd, 0xf8, 0xf0, 0xca, + 0x3d, 0xd5, 0x71, 0x7c, 0xb1, 0x6f, 0xf8, 0xc8, 0x6a, 0xc7, 0x08, 0x64, 0x11, 0xc6, 0x45, 0x84, + 0x04, 0xc4, 0xd7, 0x22, 0x18, 0x88, 0x08, 0x0a, 0x9c, 0x42, 0x47, 0xe2, 0x4f, 0x70, 0x62, 0x82, + 0x64, 0xe2, 0x4a, 0xf1, 0x04, 0x27, 0xa7, 0x30, 0xb4, 0x35, 0x14, 0xcc, 0xb8, 0x8f, 0x6f, 0x78, + 0xb1, 0x07, 0xfa, 0x94, 0xe6, 0x6a, 0x8f, 0x91, 0xd3, 0x15, 0x82, 0xf5, 0xab, 0x59, 0xc8, 0x6f, + 0x36, 0x3a, 0xbb, 0x5e, 0xeb, 0xe1, 0x0d, 0x42, 0x00, 0xd5, 0x38, 0x19, 0x5a, 0x9f, 0xfd, 0x4d, + 0xce, 0x42, 0x5e, 0x6a, 0x6e, 0x72, 0x43, 0x0a, 0x85, 0xd6, 0x36, 0x0f, 0x72, 0xde, 0xf9, 0xc8, + 0xda, 0xf2, 0x27, 0xb9, 0x01, 0x4a, 0xff, 0xea, 0xa5, 0xa8, 0x0d, 0xb1, 0x8f, 0xc5, 0x56, 0x68, + 0xe4, 0x4d, 0xc0, 0x43, 0x42, 0x28, 0x0f, 0xf2, 0x42, 0x9b, 0x37, 0x4d, 0xc8, 0x29, 0x9c, 0x04, + 0xd1, 0xc8, 0x4d, 0x10, 0x0b, 0x53, 0x24, 0x48, 0x3e, 0x65, 0x12, 0xf0, 0x94, 0x73, 0x92, 0x44, + 0xa0, 0x92, 0x77, 0x61, 0xbc, 0x16, 0x50, 0x7c, 0x75, 0x74, 0x1b, 0x71, 0xde, 0x63, 0x9d, 0x72, + 0x39, 0x2e, 0x7f, 0x78, 0xc3, 0xd6, 0xd1, 0xad, 0xff, 0x6a, 0x04, 0x26, 0xf4, 0xf6, 0x10, 0x1b, + 0x66, 0xc3, 0x06, 0xd3, 0xdd, 0x85, 0xed, 0x53, 0x1b, 0x0b, 0xc5, 0x71, 0x7a, 0xd1, 0x6c, 0x10, + 0xc3, 0xe3, 0x86, 0x50, 0x32, 0xb4, 0xc3, 0xea, 0x0b, 0xf6, 0x4c, 0x18, 0x83, 0x39, 0x1e, 0x29, + 0x41, 0xde, 0x6f, 0x87, 0xbb, 0xb4, 0xe5, 0xc9, 0xf7, 0x96, 0x4b, 0x06, 0xa3, 0x0d, 0x51, 0xd8, + 0xc5, 0x4b, 0x91, 0x91, 0xb7, 0x60, 0xc4, 0x6f, 0xd3, 0x96, 0xeb, 0x89, 0x33, 0xee, 0xc5, 0x04, + 0x03, 0xda, 0x2a, 0x55, 0x34, 0x42, 0x81, 0x4c, 0xae, 0xc3, 0x90, 0xff, 0x58, 0xcd, 0xd7, 0x59, + 0x93, 0xe8, 0x71, 0xe4, 0x6a, 0x24, 0x88, 0xc8, 0x08, 0x3e, 0x72, 0x9b, 0x3b, 0x62, 0xc6, 0x4c, + 0x82, 0xbb, 0x6e, 0x73, 0x47, 0x27, 0x60, 0x88, 0xe4, 0x03, 0x80, 0xb6, 0xbb, 0x4b, 0x03, 0xa7, + 0xde, 0x89, 0x0e, 0xc4, 0xbc, 0x5d, 0x30, 0xc8, 0x36, 0x59, 0x71, 0xb9, 0x13, 0x1d, 0x68, 0xb4, + 0x63, 0x6d, 0x09, 0x24, 0x25, 0x80, 0xa6, 0x1b, 0x45, 0x34, 0x68, 0xfa, 0xc2, 0xf8, 0x6c, 0x5c, + 0xe5, 0x15, 0xe6, 0x0c, 0xee, 0xab, 0x62, 0x8d, 0x83, 0x46, 0x84, 0x8d, 0xf6, 0x02, 0x57, 0xa4, + 0xa9, 0x4e, 0x34, 0xda, 0x0b, 0x8c, 0x5e, 0x32, 0x44, 0xf2, 0x79, 0x18, 0xad, 0x7b, 0x61, 0xcd, + 0x0f, 0xea, 0x22, 0xe6, 0xc7, 0x39, 0x83, 0xa6, 0xcc, 0xcb, 0x34, 0x32, 0x89, 0xce, 0x5a, 0x2b, + 0x82, 0x40, 0xae, 0xfb, 0xfb, 0x78, 0xcd, 0x9f, 0x6c, 0x6d, 0x55, 0x15, 0xeb, 0xad, 0x8d, 0x89, + 0xd8, 0x54, 0xee, 0x7a, 0x51, 0xc3, 0xdd, 0x16, 0xef, 0xdc, 0xe6, 0x54, 0xde, 0xc1, 0x22, 0x7d, + 0x2a, 0x39, 0x32, 0x79, 0x1b, 0xf2, 0xb4, 0x15, 0x05, 0xae, 0xe3, 0xd5, 0x85, 0x6f, 0x9f, 0xd9, + 0x68, 0x76, 0x00, 0xbb, 0x95, 0xb2, 0xde, 0x68, 0xc4, 0xaf, 0xd4, 0xd9, 0xf8, 0x84, 0x35, 0xaf, + 0x29, 0x5c, 0xf2, 0xcc, 0xf1, 0xa9, 0x2e, 0x57, 0xee, 0xeb, 0xe3, 0xc3, 0x10, 0xc9, 0x05, 0x80, + 0xf8, 0x89, 0x9b, 0x3f, 0x48, 0xd8, 0x1a, 0xe4, 0x0b, 0x43, 0xff, 0xeb, 0x2f, 0x17, 0x33, 0x4b, + 0x00, 0x79, 0x19, 0xf4, 0xc4, 0x5a, 0x83, 0xb3, 0x3d, 0x3f, 0x0a, 0x72, 0x15, 0x0a, 0x3b, 0xae, + 0xb8, 0x12, 0xab, 0xed, 0xb9, 0xad, 0x16, 0x6d, 0x88, 0xed, 0x68, 0x5a, 0xc2, 0x97, 0x39, 0x98, + 0x73, 0xb6, 0x3e, 0x80, 0xb9, 0xb4, 0xd1, 0x20, 0x2f, 0xc1, 0x84, 0x1e, 0xdf, 0x45, 0x30, 0x19, + 0x77, 0xdb, 0x9e, 0x8c, 0xf0, 0x22, 0x18, 0xfc, 0x56, 0x06, 0xce, 0xf5, 0xfb, 0xb6, 0xc8, 0x02, + 0xe4, 0xdb, 0x81, 0xe7, 0xa3, 0x0c, 0xc7, 0x77, 0x40, 0xf5, 0x9b, 0x9c, 0x07, 0xe0, 0xc2, 0x46, + 0xe4, 0xee, 0x0a, 0x63, 0x7c, 0x7b, 0x0c, 0x21, 0x5b, 0xee, 0x6e, 0x48, 0x5e, 0x87, 0x99, 0x3a, + 0xdd, 0x71, 0x3b, 0x8d, 0xc8, 0x09, 0x6b, 0x7b, 0xb4, 0x8e, 0x6e, 0x32, 0x68, 0x64, 0x65, 0x17, + 0x44, 0x41, 0x55, 0xc2, 0xbb, 0x5a, 0x3c, 0xdc, 0xa3, 0xc5, 0x77, 0x87, 0xf2, 0x99, 0x42, 0xd6, + 0x46, 0x5b, 0x23, 0xeb, 0xfb, 0xb2, 0x30, 0xdf, 0x6b, 0x31, 0x91, 0xf7, 0xd2, 0xc6, 0x80, 0xdf, + 0xea, 0xeb, 0x70, 0xfd, 0x56, 0x5f, 0xab, 0x8d, 0x2c, 0x82, 0x72, 0x72, 0x39, 0xce, 0xbf, 0x5d, + 0xc2, 0x18, 0x4d, 0xdb, 0x0d, 0xc3, 0x7d, 0xf6, 0xbd, 0xe4, 0xb4, 0x68, 0x9b, 0x02, 0xa6, 0xd3, + 0x48, 0x18, 0xf9, 0x1c, 0x40, 0xad, 0xe1, 0x87, 0x14, 0x1f, 0xcf, 0xc5, 0x41, 0xcc, 0x4d, 0x78, + 0x15, 0x54, 0x7f, 0x2d, 0x45, 0xe8, 0xb2, 0x5f, 0xa7, 0x62, 0x02, 0x5d, 0x38, 0xd3, 0x63, 0xf7, + 0x60, 0xd3, 0x13, 0x67, 0x63, 0x96, 0xb9, 0x5d, 0x3a, 0x2a, 0x27, 0x73, 0x72, 0xc4, 0xb3, 0xbd, + 0xd6, 0xc8, 0x01, 0x90, 0xee, 0x2d, 0x82, 0x71, 0x17, 0x86, 0xa8, 0x9d, 0x40, 0x71, 0xe7, 0x90, + 0x07, 0x41, 0x83, 0x14, 0x61, 0x5c, 0xe6, 0x6e, 0x63, 0x82, 0x2e, 0x67, 0x0e, 0x02, 0x74, 0x8f, + 0xe2, 0xe2, 0xc1, 0xa0, 0xb0, 0xe8, 0xca, 0x24, 0x8e, 0xd0, 0x31, 0x84, 0x6c, 0x1d, 0xb4, 0x65, + 0xef, 0xce, 0xc9, 0xf5, 0x6d, 0x6e, 0xdc, 0xa2, 0xf4, 0xe7, 0x32, 0x72, 0xfa, 0xbb, 0x77, 0xbe, + 0xe3, 0xda, 0x47, 0x00, 0x3d, 0x4a, 0x44, 0xc3, 0xf0, 0x6f, 0x76, 0xa4, 0xcb, 0xaf, 0x4e, 0x1c, + 0xe9, 0xe2, 0x27, 0xb9, 0x0c, 0xd3, 0x01, 0xb7, 0x39, 0x8c, 0x7c, 0x31, 0x9e, 0x38, 0x53, 0xf6, + 0x24, 0x07, 0x6f, 0xf9, 0x38, 0xa6, 0xa2, 0x5d, 0x77, 0xd5, 0x80, 0x69, 0x07, 0x01, 0xb9, 0x06, + 0x63, 0xec, 0x20, 0xc0, 0xe0, 0x29, 0x09, 0x53, 0x76, 0xc4, 0xc3, 0x63, 0xd5, 0xce, 0x7f, 0x24, + 0xfe, 0x16, 0xbc, 0xfe, 0x9b, 0x8c, 0x64, 0xa6, 0x1f, 0x43, 0xe4, 0x0c, 0x8c, 0xfa, 0xc1, 0xae, + 0xd6, 0xb5, 0x11, 0x3f, 0xd8, 0x65, 0xfd, 0xba, 0x02, 0x05, 0xee, 0x59, 0xc1, 0x3d, 0xdb, 0xc3, + 0x83, 0x16, 0xd7, 0x53, 0xf3, 0xf6, 0x14, 0x87, 0x63, 0x82, 0xea, 0x83, 0x56, 0x8d, 0x61, 0x86, + 0xa1, 0xef, 0xe8, 0x31, 0x93, 0x44, 0xb7, 0xa7, 0xc2, 0xd0, 0x8f, 0x83, 0x27, 0xd5, 0xc9, 0x12, + 0x4c, 0x32, 0x3e, 0x2a, 0x72, 0x93, 0x38, 0x25, 0xcf, 0x77, 0x9f, 0x92, 0x07, 0xad, 0x9a, 0x6c, + 0xa2, 0x3d, 0x11, 0x6a, 0xbf, 0x44, 0x6f, 0x7e, 0x3d, 0x0b, 0xa7, 0xd3, 0xd1, 0x71, 0xbe, 0x58, + 0x25, 0xe8, 0x60, 0xc4, 0xaf, 0x37, 0xed, 0x31, 0x06, 0xe1, 0x91, 0x19, 0xd2, 0x5a, 0x9b, 0x4d, + 0x6d, 0xed, 0x6b, 0x30, 0x83, 0x8c, 0x84, 0x5c, 0xd2, 0xf0, 0xc2, 0x48, 0x44, 0x10, 0xb0, 0xa7, + 0x59, 0x01, 0xdf, 0xe0, 0xd6, 0x18, 0x98, 0xbc, 0x02, 0x53, 0x72, 0x8b, 0xf2, 0xf7, 0x5b, 0xac, + 0x62, 0xbe, 0x3f, 0x4d, 0x0a, 0xe8, 0x06, 0x02, 0xc9, 0x29, 0x18, 0x71, 0xdb, 0x6d, 0x56, 0x25, + 0xdf, 0x96, 0x86, 0xdd, 0x76, 0xbb, 0x52, 0x27, 0x97, 0x60, 0x12, 0xdd, 0xa9, 0x9c, 0x1d, 0xb4, + 0x29, 0x11, 0x06, 0x6c, 0xf6, 0x04, 0x02, 0xb9, 0x9d, 0x49, 0xc8, 0x3e, 0x04, 0x46, 0x2b, 0x51, + 0x46, 0x11, 0x05, 0xdc, 0xb6, 0x42, 0x38, 0x0b, 0x79, 0xf9, 0xba, 0xc9, 0xad, 0xc2, 0xed, 0x51, + 0x97, 0xbf, 0x6c, 0x8a, 0x41, 0xfb, 0x3c, 0x4c, 0x8b, 0x83, 0x56, 0x6c, 0xfe, 0xc8, 0x54, 0x2c, + 0x4d, 0x26, 0x01, 0x8b, 0x74, 0x17, 0x20, 0x40, 0x95, 0xba, 0x1c, 0xee, 0x3f, 0xce, 0xc0, 0xa9, + 0xd4, 0x93, 0x9a, 0x7c, 0x03, 0xb8, 0xe3, 0x49, 0xe4, 0x3b, 0x01, 0xad, 0x79, 0x6d, 0x0f, 0x3d, + 0xf8, 0xf9, 0x4d, 0xd6, 0x62, 0xbf, 0x33, 0x1e, 0x9d, 0x58, 0xb6, 0x7c, 0x5b, 0x11, 0x71, 0x15, + 0xbb, 0x10, 0x24, 0xc0, 0x0b, 0x5f, 0x81, 0x53, 0xa9, 0xa8, 0x29, 0xaa, 0xef, 0x1b, 0x66, 0x5a, + 0x50, 0xf9, 0x36, 0x91, 0xe8, 0xb4, 0xa6, 0x12, 0x8b, 0xee, 0xfd, 0xae, 0xea, 0x5e, 0xe2, 0x4c, + 0x27, 0x2b, 0xc9, 0x15, 0x9b, 0x26, 0x96, 0x4a, 0xa2, 0x9e, 0x8b, 0x96, 0x7c, 0x05, 0x4e, 0x89, + 0x55, 0xb4, 0x1b, 0xb8, 0xed, 0xbd, 0x98, 0x1d, 0x6f, 0xe8, 0xab, 0x69, 0xec, 0xf8, 0xf2, 0xba, + 0xc3, 0xf0, 0x15, 0xd7, 0x59, 0xb7, 0x1b, 0x28, 0xfa, 0x10, 0x48, 0x79, 0x20, 0xa5, 0x35, 0x29, + 0xcb, 0x33, 0x93, 0xb6, 0x3c, 0x07, 0xfe, 0x36, 0x44, 0x9d, 0xdf, 0x9f, 0x81, 0x8b, 0xc7, 0xb5, + 0x99, 0x3c, 0x82, 0xd3, 0xf8, 0x7a, 0x1e, 0xfa, 0xaa, 0xdb, 0x4e, 0xcd, 0xad, 0xed, 0x51, 0xb1, + 0x4a, 0xac, 0xd4, 0xce, 0xb7, 0xdb, 0xd5, 0xea, 0x86, 0xd6, 0xef, 0x76, 0xbb, 0x1a, 0xfa, 0xf2, + 0xf7, 0x32, 0x23, 0x17, 0x6d, 0xa8, 0xc3, 0x8b, 0x7d, 0x28, 0xb5, 0x2f, 0x2e, 0xa3, 0x7f, 0x71, + 0x57, 0xa0, 0xb0, 0x43, 0xeb, 0x4c, 0xba, 0xa2, 0x75, 0x6c, 0xda, 0x93, 0x45, 0x9e, 0x5b, 0xd7, + 0x9e, 0x52, 0xf0, 0x6a, 0xe8, 0x3f, 0x5c, 0x14, 0xb5, 0x34, 0xe5, 0xe6, 0xa9, 0x4b, 0x6f, 0xe4, + 0x1a, 0xcc, 0x26, 0xa2, 0x11, 0xc4, 0xee, 0xad, 0xf6, 0x0c, 0x2b, 0x32, 0x43, 0xdd, 0xbc, 0x04, + 0x13, 0x72, 0x1a, 0x02, 0xe5, 0xfd, 0x62, 0x8f, 0x0b, 0x18, 0x5b, 0xe5, 0xa2, 0xba, 0x7f, 0x3f, + 0x2b, 0xa5, 0xa9, 0x25, 0xdf, 0x8f, 0xc2, 0x28, 0x70, 0xdb, 0x86, 0x4a, 0x45, 0x9a, 0x70, 0xd6, + 0x77, 0x3b, 0xd1, 0xde, 0xa2, 0xc3, 0xfe, 0xf5, 0x03, 0xe9, 0xb1, 0x5a, 0x93, 0xf6, 0x74, 0xe3, + 0x8b, 0xd7, 0xcd, 0x5d, 0xb5, 0xc4, 0xb0, 0x4b, 0x3a, 0x32, 0x3b, 0xfc, 0x35, 0xae, 0xab, 0x2f, + 0xd8, 0x67, 0x38, 0xcf, 0x2e, 0x2c, 0xb2, 0x0a, 0x13, 0xdb, 0xd4, 0x0d, 0x68, 0xc0, 0x6d, 0x48, + 0x53, 0x75, 0xaa, 0x25, 0x44, 0x40, 0xd3, 0x52, 0x93, 0xeb, 0xf8, 0x76, 0x5c, 0x42, 0xde, 0x87, + 0x31, 0xaf, 0x2e, 0x82, 0x33, 0x0a, 0xcd, 0xca, 0x94, 0xe6, 0x2b, 0x75, 0x1e, 0xab, 0x31, 0xe6, + 0xc1, 0xd4, 0x32, 0x4f, 0x40, 0x97, 0x26, 0x0d, 0xe5, 0xd3, 0x5a, 0x92, 0x07, 0x77, 0x37, 0x19, + 0x99, 0x82, 0xac, 0x9a, 0xf6, 0xac, 0x57, 0x27, 0xa7, 0x61, 0x24, 0xd4, 0xa2, 0x45, 0xda, 0xe2, + 0x97, 0xf5, 0xbd, 0x70, 0x65, 0xd0, 0x31, 0x22, 0x6f, 0xf2, 0x50, 0x4e, 0x29, 0x03, 0x3e, 0xc6, + 0x03, 0x35, 0x99, 0xe3, 0xf6, 0x12, 0xe8, 0xc1, 0xee, 0x3c, 0x39, 0xe1, 0x12, 0xf6, 0x20, 0xf0, + 0xac, 0x1f, 0xc8, 0xc1, 0x94, 0xa9, 0x6e, 0x93, 0xd7, 0x61, 0x48, 0xb1, 0x9d, 0x52, 0xd7, 0xc2, + 0x3a, 0x12, 0x63, 0x6e, 0x23, 0x12, 0x3b, 0x3b, 0xf0, 0x15, 0xc9, 0x69, 0xea, 0x37, 0xb7, 0xf6, + 0x04, 0x02, 0xe5, 0x8d, 0xed, 0x5d, 0xe0, 0xa9, 0xdc, 0x71, 0x2f, 0x8b, 0xbc, 0x26, 0x1d, 0xe0, + 0xe2, 0x36, 0xcf, 0x94, 0x7e, 0xbc, 0x72, 0x9b, 0x60, 0xb4, 0x6c, 0x3f, 0x61, 0x85, 0x9a, 0x36, + 0x35, 0xd4, 0x5b, 0x9b, 0x12, 0x5d, 0xe9, 0xa1, 0x4d, 0x0d, 0xf7, 0xd1, 0xa6, 0x62, 0x4a, 0x5d, + 0x9b, 0x42, 0x9d, 0x7a, 0xb4, 0x97, 0x4e, 0x1d, 0xd3, 0x70, 0x9d, 0xfa, 0x65, 0xd1, 0xdd, 0xc0, + 0xdd, 0x77, 0x70, 0x1c, 0xb8, 0xbd, 0x1b, 0xef, 0x88, 0xed, 0xee, 0xe3, 0x7b, 0xdb, 0xd2, 0x18, + 0xc8, 0x47, 0x3a, 0xeb, 0x67, 0x32, 0x09, 0xfd, 0x47, 0x4e, 0xc5, 0x2b, 0x30, 0xe5, 0x35, 0x99, + 0x60, 0x26, 0xe2, 0x72, 0xf1, 0x03, 0x60, 0xd2, 0x9e, 0x94, 0x50, 0x2e, 0x54, 0xbc, 0x0a, 0xd3, + 0x0a, 0x8d, 0x3b, 0x46, 0x73, 0xe3, 0x7d, 0x5b, 0x51, 0x0b, 0xc7, 0xe8, 0xd7, 0x61, 0x46, 0x21, + 0x0a, 0x19, 0x96, 0xcb, 0x14, 0x93, 0x76, 0x41, 0x16, 0x88, 0xa4, 0xc4, 0xa1, 0xb5, 0x9b, 0x3c, + 0x95, 0x3e, 0xa5, 0x56, 0x59, 0xbf, 0x9b, 0x33, 0x64, 0x43, 0x59, 0xcd, 0x12, 0x8c, 0xb3, 0xad, + 0x51, 0x0c, 0x92, 0xd8, 0x56, 0x5e, 0xea, 0x31, 0xfc, 0xe2, 0x99, 0xb3, 0x5a, 0xdd, 0xb0, 0x21, + 0x0c, 0x7d, 0xf9, 0xea, 0xe9, 0xf0, 0xdd, 0x9f, 0x8b, 0x37, 0xb8, 0xfc, 0xfe, 0x3f, 0xf6, 0xbe, + 0x26, 0x36, 0x92, 0xe3, 0xba, 0x7f, 0x7b, 0x66, 0x48, 0x0e, 0xdf, 0xf0, 0xa3, 0x59, 0xa2, 0x76, + 0xa9, 0xfd, 0xe0, 0x4a, 0xbd, 0xab, 0xf5, 0xee, 0xc8, 0x92, 0xbd, 0xda, 0xbf, 0x2c, 0xad, 0xfe, + 0x91, 0xe5, 0xe6, 0x4c, 0x0f, 0xa7, 0x97, 0xf3, 0xa5, 0xee, 0x1e, 0xd2, 0x2b, 0xc9, 0xee, 0xcc, + 0x72, 0x9a, 0xe4, 0xc4, 0xc3, 0x9e, 0xf1, 0x7c, 0x48, 0x5e, 0x5d, 0x92, 0x5c, 0x6c, 0x20, 0x89, + 0xf3, 0x61, 0x04, 0x88, 0x11, 0x04, 0xc8, 0x21, 0x3a, 0xe4, 0xe0, 0x63, 0x6e, 0x39, 0xe4, 0x6a, + 0xc0, 0x30, 0xe0, 0x73, 0x02, 0x08, 0x89, 0x80, 0xe4, 0x90, 0xe4, 0x16, 0xc4, 0x07, 0x9f, 0x82, + 0x7a, 0x55, 0xd5, 0x5d, 0xfd, 0x31, 0xb3, 0xa4, 0x56, 0x4e, 0x6c, 0xc0, 0x27, 0xb2, 0x5f, 0xbd, + 0xaa, 0xa9, 0xef, 0x7a, 0xaf, 0xea, 0xbd, 0xdf, 0x13, 0xc5, 0xb1, 0x3d, 0xa4, 0x38, 0xbf, 0x38, + 0x7d, 0x38, 0xc4, 0x3a, 0xd2, 0xd9, 0x87, 0xa7, 0x40, 0xf0, 0x25, 0x7e, 0xa0, 0x0d, 0xa8, 0x4a, + 0x8d, 0xa3, 0x85, 0x67, 0x53, 0xce, 0xd5, 0x44, 0xe1, 0xd8, 0x4b, 0x58, 0xb2, 0x3a, 0x15, 0xff, + 0x8a, 0x62, 0x0d, 0x58, 0xa1, 0x8a, 0x79, 0x50, 0x60, 0x2e, 0xe2, 0xc5, 0x34, 0xab, 0xf1, 0x25, + 0xb3, 0x6e, 0x15, 0x68, 0x3e, 0x51, 0xcc, 0x09, 0x3c, 0x27, 0x8b, 0x8f, 0xd1, 0x4a, 0x2e, 0x08, + 0x38, 0xba, 0xb9, 0x3d, 0x10, 0x4a, 0x99, 0x58, 0xd5, 0x8b, 0x9d, 0x28, 0x81, 0xb3, 0x69, 0x27, + 0x70, 0x79, 0xf6, 0x90, 0x50, 0x8d, 0xc4, 0x93, 0x5d, 0xa7, 0x2d, 0xf1, 0x29, 0x1d, 0x90, 0x19, + 0xf9, 0x80, 0x94, 0x85, 0xc9, 0x6c, 0x44, 0x98, 0xd4, 0xfe, 0x26, 0x0b, 0x37, 0xce, 0x30, 0x5c, + 0x73, 0x7e, 0xf3, 0x6b, 0x50, 0x60, 0x77, 0x89, 0x6c, 0xfb, 0x64, 0xef, 0xf0, 0xe2, 0x18, 0xa0, + 0x85, 0xf2, 0xbd, 0x8e, 0x8a, 0x30, 0xe1, 0x7e, 0x07, 0xe3, 0xe0, 0x7f, 0xf2, 0xdb, 0xb0, 0xce, + 0x36, 0x34, 0x66, 0xa9, 0x70, 0x34, 0xed, 0x9f, 0x61, 0x47, 0xbb, 0x22, 0xcc, 0xaa, 0x63, 0x59, + 0x71, 0x93, 0xc3, 0x1d, 0xc3, 0x0e, 0x68, 0xc4, 0x81, 0x02, 0xb2, 0x1d, 0x75, 0x7a, 0xfd, 0x33, + 0xd9, 0xf7, 0x0a, 0xa3, 0x6d, 0x39, 0x1b, 0x33, 0xb0, 0xa2, 0x84, 0x0a, 0x7e, 0x53, 0xfd, 0xcf, + 0x9f, 0x9e, 0xba, 0x9d, 0xe1, 0x90, 0xcd, 0x05, 0xfe, 0x20, 0xb4, 0x60, 0xad, 0xfa, 0xd3, 0x53, + 0x7d, 0x38, 0xc4, 0x21, 0xc5, 0x97, 0xa3, 0x0d, 0xca, 0xc7, 0x56, 0xad, 0xe0, 0x5c, 0x44, 0x4e, + 0x5a, 0x00, 0x5b, 0xb7, 0x9c, 0x77, 0x13, 0x98, 0x1d, 0x01, 0xbb, 0x09, 0xb7, 0xd8, 0x87, 0xf6, + 0xf3, 0x8c, 0x90, 0xcd, 0x66, 0xcf, 0xfb, 0xdf, 0x0c, 0x51, 0xca, 0x10, 0xdd, 0x06, 0x95, 0x76, + 0x7d, 0xb8, 0xa9, 0x04, 0x63, 0xb4, 0xe6, 0x4f, 0x4f, 0x83, 0xbe, 0x93, 0x3b, 0x7e, 0x51, 0xee, + 0xf8, 0xd7, 0x85, 0x40, 0x9a, 0xba, 0x3d, 0xcc, 0xee, 0x72, 0xed, 0x3f, 0xb3, 0x70, 0xeb, 0x6c, + 0x9b, 0xc0, 0x6f, 0xc6, 0x2d, 0x65, 0xdc, 0x62, 0xfa, 0xf1, 0x42, 0x42, 0x3f, 0x4e, 0x59, 0x7b, + 0x8b, 0x69, 0x6b, 0x2f, 0xa1, 0x8d, 0x2f, 0xa5, 0x68, 0xe3, 0xa9, 0x0b, 0x34, 0xff, 0x84, 0x05, + 0xba, 0x2c, 0xcf, 0x93, 0x7f, 0xcb, 0xc0, 0x33, 0x29, 0xaf, 0x25, 0xe4, 0x3d, 0x78, 0x46, 0x88, + 0xf6, 0xec, 0xe4, 0x60, 0x22, 0x37, 0x3b, 0x7d, 0xef, 0xa4, 0x09, 0xf5, 0xc8, 0x96, 0x22, 0x78, + 0x6f, 0x70, 0x71, 0x3e, 0x4c, 0xff, 0xd5, 0x11, 0xe4, 0xc9, 0x43, 0xb8, 0x88, 0x40, 0xa9, 0x87, + 0xae, 0x24, 0xcf, 0xbb, 0x23, 0xef, 0x88, 0xcf, 0x87, 0x17, 0x12, 0x62, 0x6f, 0xef, 0x50, 0xaa, + 0x8e, 0xe5, 0x1d, 0x55, 0x2f, 0x58, 0x9b, 0xe3, 0x14, 0x7a, 0x5c, 0x47, 0xf8, 0x91, 0x02, 0xda, + 0x93, 0xfb, 0x0b, 0xaf, 0x31, 0xe3, 0x1d, 0xbe, 0x6c, 0x15, 0x3a, 0x52, 0xef, 0xdd, 0x80, 0xd5, + 0x91, 0x77, 0x34, 0xf2, 0xc6, 0x27, 0x52, 0xf7, 0x2d, 0x5b, 0x2b, 0x9c, 0x28, 0x3a, 0x46, 0xc0, + 0x25, 0x9d, 0x4b, 0xc8, 0x16, 0x99, 0xb4, 0x4a, 0xa0, 0xfa, 0xa5, 0x8e, 0x03, 0x9d, 0x4d, 0x72, + 0x05, 0xd9, 0xc7, 0x83, 0x5c, 0x3e, 0xa3, 0x66, 0x2d, 0x0e, 0xea, 0x74, 0xd4, 0xeb, 0x7b, 0xda, + 0xdf, 0x29, 0x42, 0x22, 0x48, 0xeb, 0x3c, 0xf2, 0x9e, 0x64, 0xdf, 0x93, 0x4d, 0x88, 0x21, 0x69, + 0x59, 0x64, 0x53, 0x08, 0x0e, 0x20, 0x84, 0x84, 0x08, 0x80, 0x10, 0x52, 0x9e, 0xc6, 0x48, 0xe1, + 0xbe, 0x78, 0x1e, 0xa4, 0xbb, 0xdd, 0xfe, 0x5d, 0x72, 0x07, 0x96, 0xd8, 0x8b, 0xa0, 0xa8, 0xe8, + 0x7a, 0xa4, 0xa2, 0xfb, 0x77, 0x2d, 0x91, 0xae, 0xfd, 0x50, 0x09, 0xde, 0x44, 0xe2, 0xd5, 0xdf, + 0xbf, 0x4b, 0x5e, 0x3f, 0x9b, 0xa5, 0x4e, 0x5e, 0x58, 0xea, 0x04, 0x56, 0x3a, 0x6f, 0x44, 0xac, + 0x74, 0x6e, 0xce, 0xef, 0x27, 0x7e, 0xfb, 0xca, 0xa0, 0x72, 0x42, 0x08, 0x85, 0x9f, 0x2b, 0x70, + 0x6d, 0x6e, 0x0e, 0x72, 0x15, 0xf2, 0x7a, 0xcb, 0x74, 0xc2, 0x91, 0xa5, 0xab, 0x45, 0x50, 0xc8, + 0x2e, 0x2c, 0xef, 0x74, 0xc6, 0xbd, 0x43, 0x3a, 0x81, 0x53, 0x2f, 0x8d, 0x12, 0xc5, 0x06, 0xec, + 0xd5, 0x0b, 0x56, 0x98, 0x97, 0xb8, 0xb0, 0x81, 0xab, 0x20, 0x11, 0xbd, 0x3b, 0x7e, 0x61, 0x90, + 0x28, 0x30, 0x91, 0x8d, 0xee, 0x30, 0x09, 0x62, 0x7c, 0xf1, 0x7d, 0x20, 0xa4, 0x90, 0xd9, 0x15, + 0x3c, 0x07, 0x34, 0xd8, 0x6d, 0xc8, 0xb7, 0xc4, 0xbb, 0x88, 0x64, 0xda, 0x26, 0xde, 0x40, 0xac, + 0x20, 0x55, 0xfb, 0x23, 0x45, 0x68, 0xf5, 0x4f, 0x6e, 0x88, 0x14, 0x78, 0xa2, 0x3b, 0x3f, 0xf0, + 0x44, 0xf7, 0x33, 0x06, 0x9e, 0xd0, 0xfe, 0x96, 0x03, 0x77, 0x9a, 0xdd, 0x56, 0x2c, 0x72, 0xdd, + 0xd3, 0x9a, 0x28, 0x1a, 0x91, 0xd9, 0x79, 0x43, 0x0a, 0x5c, 0x94, 0xfc, 0xad, 0xd9, 0x96, 0x8a, + 0xd2, 0x54, 0xfd, 0x8b, 0x2c, 0x5c, 0x9d, 0x97, 0x3d, 0x35, 0xc8, 0x9e, 0x72, 0xbe, 0x20, 0x7b, + 0x77, 0x20, 0xcf, 0x68, 0xd1, 0x48, 0xf3, 0x3c, 0x2b, 0xed, 0x70, 0x91, 0x4c, 0x6e, 0xc0, 0xa2, + 0x5e, 0xb2, 0xc3, 0x68, 0x1d, 0x68, 0x28, 0xd3, 0x39, 0x1c, 0xa3, 0x09, 0x06, 0x4f, 0x22, 0xdf, + 0x4c, 0x06, 0xa8, 0xe1, 0x61, 0x3a, 0xae, 0x48, 0x1d, 0x92, 0xc0, 0xd4, 0xc5, 0xfa, 0x86, 0x18, + 0xb0, 0x1c, 0x56, 0xd1, 0x4a, 0x06, 0xbb, 0xd1, 0x60, 0xb1, 0x35, 0xf2, 0xc6, 0xde, 0x44, 0x36, + 0x62, 0x19, 0x22, 0xc5, 0xe2, 0x29, 0xdc, 0xc4, 0xa4, 0xf3, 0x98, 0x79, 0x14, 0x2e, 0xca, 0x5e, + 0xde, 0x68, 0x93, 0x42, 0xc9, 0x96, 0xc4, 0x42, 0x33, 0xd4, 0x3a, 0x53, 0xff, 0xf0, 0x04, 0xa3, + 0x96, 0x2f, 0x85, 0x36, 0x29, 0x7d, 0xa4, 0xd2, 0x06, 0x8e, 0x2d, 0x89, 0x45, 0xfb, 0x9e, 0x02, + 0x9b, 0x69, 0xed, 0x20, 0x57, 0x21, 0xe7, 0xa7, 0xc6, 0xe2, 0xf1, 0x99, 0x23, 0x54, 0x01, 0xc3, + 0x82, 0x1f, 0x0d, 0x46, 0xa7, 0x9d, 0x89, 0x6c, 0xea, 0x23, 0x91, 0x2d, 0xa0, 0x1f, 0x15, 0xfc, + 0x9f, 0x5c, 0x17, 0xbb, 0x73, 0x36, 0x11, 0xbd, 0x07, 0xff, 0x68, 0x3a, 0x80, 0xd9, 0x6d, 0x35, + 0x87, 0x0c, 0xd3, 0xf5, 0x1e, 0xe4, 0x68, 0xb5, 0x62, 0xb3, 0x97, 0xce, 0x1f, 0xbd, 0x5e, 0xe3, + 0x4c, 0xac, 0x56, 0xe3, 0xce, 0x69, 0xdf, 0x42, 0x66, 0xed, 0x00, 0xd6, 0xa2, 0x1c, 0xc4, 0x88, + 0xc2, 0x7b, 0x15, 0x5e, 0x55, 0x79, 0x49, 0x3b, 0x83, 0x01, 0x33, 0x37, 0xdd, 0x79, 0xee, 0x1f, + 0x3f, 0xb9, 0x0e, 0xf4, 0x93, 0xe5, 0x49, 0x83, 0xff, 0xd2, 0xfe, 0x24, 0x03, 0x9b, 0xa1, 0x87, + 0x9b, 0x58, 0x43, 0xbf, 0xb6, 0xee, 0x16, 0x7a, 0xc4, 0x1d, 0x40, 0x88, 0x58, 0xc9, 0x06, 0xce, + 0xb1, 0x42, 0xde, 0x85, 0xad, 0x59, 0xfc, 0xe4, 0x25, 0x58, 0x46, 0x50, 0x84, 0x61, 0xe7, 0xd0, + 0x93, 0xf7, 0x3e, 0x5f, 0x10, 0xad, 0x30, 0x5d, 0xfb, 0xa9, 0x02, 0x97, 0xb9, 0x91, 0x64, 0xbd, + 0xd3, 0xf3, 0x27, 0x9e, 0xdf, 0xf1, 0x0f, 0xbd, 0xcf, 0xc7, 0x5d, 0x68, 0x37, 0xb2, 0x8f, 0xbd, + 0x18, 0xb5, 0x85, 0x4d, 0xfc, 0xda, 0xec, 0xd6, 0x92, 0x3b, 0x08, 0xf4, 0x71, 0xc8, 0x26, 0x6f, + 0x8e, 0xb9, 0x67, 0xfa, 0x94, 0x20, 0xbb, 0x67, 0x22, 0x87, 0xf6, 0xbb, 0xb0, 0x3d, 0xff, 0x07, + 0xc8, 0x37, 0x60, 0x15, 0xe3, 0x2d, 0xb4, 0x87, 0xc7, 0xa3, 0x4e, 0xd7, 0x13, 0x97, 0x60, 0xe2, + 0x0e, 0x52, 0x4e, 0x63, 0xe0, 0x26, 0xdc, 0x5d, 0xf0, 0x18, 0x23, 0x39, 0xf0, 0x4c, 0x11, 0x4b, + 0x64, 0xb9, 0x34, 0xed, 0xf7, 0x14, 0x20, 0xc9, 0x32, 0xc8, 0x57, 0x60, 0xa5, 0xed, 0x94, 0xec, + 0x49, 0x67, 0x34, 0xa9, 0x0e, 0xa6, 0x23, 0x0e, 0x1a, 0xc2, 0xbc, 0xc7, 0x26, 0x87, 0x74, 0x2b, + 0x19, 0x4d, 0xdc, 0x93, 0xc1, 0x74, 0x64, 0x45, 0xf8, 0x10, 0xd7, 0xdf, 0xf3, 0xbe, 0xd5, 0xed, + 0x3c, 0x8e, 0xe2, 0xfa, 0x73, 0x5a, 0x04, 0xd7, 0x9f, 0xd3, 0xb4, 0x8f, 0x15, 0xb8, 0x22, 0xac, + 0x27, 0xba, 0x29, 0x75, 0x29, 0xa1, 0x8f, 0xf4, 0x48, 0x80, 0xa6, 0xcd, 0x13, 0x66, 0x37, 0x04, + 0x8c, 0x00, 0x56, 0x10, 0xa5, 0x5a, 0x96, 0x97, 0x7c, 0x0d, 0x72, 0xf6, 0x64, 0x30, 0x3c, 0x03, + 0x8e, 0x80, 0x1a, 0x8c, 0xe8, 0x64, 0x30, 0xc4, 0x22, 0x30, 0xa7, 0xe6, 0xc1, 0xa6, 0x5c, 0x39, + 0x51, 0x63, 0x52, 0x87, 0x25, 0x8e, 0x2a, 0x13, 0x7b, 0x4e, 0x9a, 0xd3, 0xa6, 0x9d, 0x75, 0x01, + 0x56, 0xc0, 0x41, 0xbb, 0x2c, 0x51, 0x86, 0xf6, 0xc7, 0x0a, 0x14, 0xa8, 0xb4, 0x81, 0xfa, 0xdb, + 0xd3, 0x4e, 0xe9, 0xa8, 0xe0, 0x28, 0x5e, 0x23, 0x83, 0xe2, 0xcf, 0x74, 0x1a, 0xbf, 0x06, 0xeb, + 0xb1, 0x0c, 0x44, 0x43, 0x37, 0xd5, 0x7e, 0xef, 0xb0, 0xc3, 0x70, 0xbf, 0xd9, 0x53, 0x5e, 0x84, + 0xa6, 0xfd, 0x81, 0x02, 0x9b, 0x54, 0xdb, 0x37, 0xf1, 0xa2, 0xd7, 0x9a, 0xf6, 0xc5, 0x7a, 0xa7, + 0x12, 0x94, 0x30, 0xc3, 0x61, 0x2e, 0x74, 0x4c, 0x82, 0xe2, 0x34, 0x2b, 0x48, 0x25, 0x55, 0xc8, + 0xf3, 0xf3, 0x65, 0xcc, 0xb1, 0xb6, 0xb6, 0xa5, 0x6b, 0x84, 0xb0, 0x60, 0xce, 0x44, 0x5b, 0x82, + 0x5b, 0x18, 0xcf, 0x63, 0x05, 0xb9, 0xb5, 0xff, 0x52, 0xe0, 0xd2, 0x8c, 0x3c, 0xe4, 0x2d, 0x58, + 0x40, 0xf3, 0x7e, 0x3e, 0x7a, 0x57, 0x67, 0xfc, 0xc4, 0xe4, 0xf0, 0x64, 0xff, 0x2e, 0x3b, 0x88, + 0x4e, 0xe9, 0x87, 0xc5, 0x72, 0x91, 0xf7, 0x60, 0x59, 0xef, 0x76, 0xb9, 0x22, 0x93, 0x89, 0x28, + 0x32, 0x33, 0x7e, 0xf1, 0x95, 0x80, 0x9f, 0x29, 0x32, 0xcc, 0xd0, 0xb4, 0xdb, 0x75, 0xb9, 0xeb, + 0x42, 0x58, 0xde, 0xe5, 0xdf, 0x82, 0xb5, 0x28, 0xf3, 0xb9, 0x14, 0x99, 0x1f, 0x2a, 0xa0, 0x46, + 0xeb, 0xf0, 0xcb, 0x81, 0x59, 0x48, 0x1b, 0xe6, 0x27, 0x4c, 0xaa, 0x3f, 0xcb, 0xc0, 0xb3, 0xa9, + 0x3d, 0x4c, 0x5e, 0x86, 0x45, 0x7d, 0x38, 0x34, 0xcb, 0x7c, 0x56, 0x71, 0x09, 0x09, 0xef, 0x87, + 0x23, 0x7a, 0x1e, 0x63, 0x22, 0xf7, 0x20, 0x8f, 0x33, 0x93, 0x66, 0xc8, 0x84, 0xa8, 0x57, 0xec, + 0xfa, 0x24, 0x86, 0x7a, 0x25, 0x18, 0x49, 0x05, 0xd6, 0xb8, 0xc7, 0xb5, 0xe5, 0x1d, 0x7b, 0xdf, + 0x09, 0xe0, 0x57, 0x11, 0x21, 0x56, 0x5c, 0x3a, 0xbb, 0x23, 0x96, 0x26, 0xfb, 0x1c, 0x47, 0x73, + 0x91, 0x1a, 0xa8, 0x58, 0xa6, 0x5c, 0x12, 0x83, 0xde, 0x42, 0x1f, 0x78, 0x56, 0x89, 0x19, 0x65, + 0x25, 0x72, 0x06, 0xc3, 0xa5, 0x8f, 0xc7, 0xbd, 0x63, 0xff, 0xd4, 0xf3, 0x27, 0xbf, 0xbc, 0xe1, + 0x0a, 0x7f, 0xe3, 0x4c, 0xc3, 0xf5, 0xe7, 0x39, 0xb6, 0x98, 0xe3, 0xd9, 0xa8, 0x44, 0x23, 0xa1, + 0x2d, 0xa2, 0x44, 0x83, 0x61, 0x74, 0x99, 0x4f, 0x71, 0x19, 0x96, 0x98, 0xaf, 0xb7, 0x58, 0x19, + 0xd7, 0x52, 0xab, 0xc0, 0x78, 0xf6, 0xef, 0x32, 0xf1, 0x85, 0xf9, 0x19, 0x8c, 0x2d, 0x91, 0x95, + 0xec, 0x43, 0xa1, 0xd4, 0xf7, 0x3a, 0xfe, 0x74, 0xe8, 0x9c, 0xed, 0xdd, 0x70, 0x8b, 0xb7, 0x65, + 0xe5, 0x90, 0x65, 0xc3, 0xf7, 0x46, 0xdc, 0xc9, 0xe5, 0x82, 0x88, 0x13, 0x98, 0x1e, 0xe7, 0xf0, + 0x8e, 0xf2, 0xcb, 0x73, 0xfa, 0x27, 0x4e, 0xc4, 0x7c, 0x51, 0xbb, 0x7a, 0x6e, 0x9b, 0xec, 0xc2, + 0x5a, 0xad, 0x33, 0x9e, 0x38, 0xa3, 0x8e, 0x3f, 0x46, 0x8c, 0xa8, 0x33, 0x60, 0x68, 0x88, 0x80, + 0xdb, 0xec, 0xee, 0x72, 0x12, 0x64, 0x65, 0x77, 0x97, 0xd1, 0xe2, 0xa8, 0xbc, 0x54, 0xe9, 0xf9, + 0x9d, 0x7e, 0xef, 0x23, 0xe1, 0xa1, 0xc1, 0xe4, 0xa5, 0x23, 0x41, 0xb4, 0xc2, 0x74, 0xed, 0xfd, + 0xc4, 0xb8, 0xb1, 0x5a, 0x16, 0x60, 0x89, 0xfb, 0xef, 0x31, 0x7f, 0xb6, 0x96, 0xd1, 0x28, 0x9b, + 0x8d, 0x5d, 0x55, 0x21, 0x6b, 0x00, 0x2d, 0xab, 0x59, 0x32, 0x6c, 0x9b, 0x7e, 0x67, 0xe8, 0x37, + 0x77, 0x76, 0xab, 0xb4, 0x6b, 0x6a, 0x56, 0xf2, 0x77, 0xcb, 0x69, 0x3f, 0x51, 0xe0, 0x62, 0xfa, + 0x50, 0x12, 0x07, 0xd0, 0xe3, 0x91, 0xbf, 0x20, 0x7f, 0x65, 0xee, 0xb8, 0xa7, 0x92, 0xe3, 0x9e, + 0x93, 0x13, 0xe6, 0x91, 0x97, 0x11, 0xcf, 0x44, 0x61, 0xa8, 0xe8, 0x5e, 0x57, 0x2b, 0xc1, 0xd6, + 0xac, 0x32, 0xa2, 0x4d, 0x5d, 0x87, 0x82, 0xde, 0x6a, 0xd5, 0xcc, 0x92, 0xee, 0x98, 0xcd, 0x86, + 0xaa, 0x90, 0x65, 0x58, 0xd8, 0xb5, 0x9a, 0xed, 0x96, 0x9a, 0xd1, 0x7e, 0xa0, 0xc0, 0xaa, 0xe9, + 0x4f, 0xbc, 0x63, 0x66, 0xf1, 0xfa, 0xb4, 0x8b, 0xef, 0xcd, 0xc8, 0xe2, 0xdb, 0x0a, 0x7c, 0x83, + 0x83, 0x1f, 0x38, 0xd3, 0xca, 0xfb, 0x38, 0x03, 0x1b, 0x89, 0x3c, 0xc4, 0x86, 0x25, 0xfd, 0xc0, + 0x6e, 0x9a, 0xe5, 0x12, 0xaf, 0x99, 0x90, 0xca, 0x39, 0x35, 0xf9, 0x2b, 0xcc, 0x9f, 0xe6, 0xc3, + 0xb1, 0x3b, 0xe8, 0x75, 0xa5, 0x80, 0x67, 0xd5, 0x0b, 0x96, 0x28, 0x09, 0x4f, 0xb2, 0x8f, 0xa6, + 0x23, 0x0f, 0x8b, 0xcd, 0x44, 0xae, 0x40, 0x03, 0x7a, 0xb2, 0x60, 0x34, 0xf0, 0xec, 0xd0, 0xf4, + 0x64, 0xd1, 0x61, 0x79, 0xa4, 0x01, 0x8b, 0xbb, 0xbd, 0x49, 0x75, 0xfa, 0x88, 0xaf, 0xdf, 0xed, + 0x10, 0xc2, 0xbe, 0x3a, 0x7d, 0x94, 0x2c, 0x16, 0x6f, 0xf7, 0x98, 0xef, 0x7b, 0xa4, 0x48, 0x5e, + 0xca, 0xce, 0x2a, 0x14, 0xb8, 0x16, 0x84, 0x0a, 0xc6, 0xf7, 0x15, 0xd8, 0x9a, 0xd5, 0x76, 0xaa, + 0x58, 0x45, 0x9d, 0xf5, 0x2e, 0x06, 0x68, 0xc5, 0x51, 0x2f, 0x3d, 0xc1, 0x46, 0xde, 0x86, 0x02, + 0x8b, 0xe7, 0x6f, 0xdf, 0x6b, 0x5b, 0x26, 0x9f, 0x70, 0xd7, 0xfe, 0xfd, 0x93, 0xeb, 0x97, 0x58, + 0xf4, 0x7f, 0x77, 0x7c, 0xcf, 0x9d, 0x8e, 0x7a, 0x11, 0x64, 0x57, 0x39, 0x87, 0xf6, 0x5d, 0x05, + 0x2e, 0xcf, 0xee, 0x34, 0x7a, 0x6a, 0x39, 0x54, 0xd6, 0x0f, 0xfd, 0x9d, 0xf0, 0xd4, 0x42, 0xf9, + 0x3f, 0xe6, 0xf0, 0x14, 0x30, 0xd2, 0x4c, 0x41, 0x70, 0xd2, 0x4c, 0x22, 0x22, 0x61, 0x34, 0x93, + 0x60, 0x44, 0x07, 0xcb, 0x19, 0x7d, 0x4c, 0xbe, 0x9a, 0x0a, 0x68, 0x8e, 0x66, 0xc5, 0x32, 0xa0, + 0x79, 0x24, 0x22, 0x86, 0x0c, 0x6d, 0xfe, 0x16, 0x2c, 0x20, 0xba, 0x24, 0x9f, 0x2c, 0x24, 0x32, + 0xa4, 0x08, 0x31, 0xc9, 0x74, 0x1f, 0x64, 0x92, 0x75, 0x1f, 0x24, 0x68, 0xff, 0xa0, 0x40, 0x41, + 0xe2, 0x25, 0xef, 0x83, 0x8a, 0x81, 0x21, 0xb9, 0x11, 0xcb, 0xa4, 0x17, 0x40, 0x86, 0x6d, 0x04, + 0x01, 0x4a, 0xaa, 0x22, 0x48, 0x3f, 0x1e, 0xd5, 0x71, 0x76, 0x39, 0xd2, 0x01, 0x4d, 0xd3, 0xc3, + 0x24, 0x62, 0xc1, 0x72, 0x60, 0x24, 0x15, 0x3b, 0x10, 0xa5, 0x4a, 0x04, 0xd6, 0x52, 0xbc, 0x6f, + 0xc5, 0x67, 0xc4, 0x6e, 0x59, 0x10, 0xb5, 0x1f, 0x29, 0xb0, 0x99, 0x96, 0xf9, 0x57, 0x33, 0x8e, + 0xac, 0xf6, 0x1f, 0x19, 0xb8, 0x48, 0x37, 0xa7, 0xbe, 0x37, 0x1e, 0xeb, 0x61, 0x48, 0x37, 0x3a, + 0x94, 0xaf, 0xc3, 0xe2, 0xc9, 0xf9, 0xae, 0xa6, 0x19, 0x3b, 0x21, 0x80, 0x07, 0xbe, 0x30, 0x3e, + 0xa6, 0xff, 0x93, 0x17, 0x40, 0x8e, 0x07, 0x9a, 0x45, 0x6c, 0xb5, 0xcc, 0x96, 0x62, 0x2d, 0x0f, + 0x83, 0xd0, 0x7d, 0x6f, 0xc0, 0x02, 0x5e, 0x47, 0xf1, 0xa3, 0x57, 0xa8, 0x4c, 0xe9, 0xb5, 0xc3, + 0xcb, 0x2a, 0x8b, 0x65, 0x20, 0x5f, 0x02, 0x08, 0x51, 0x92, 0xf9, 0xd9, 0x2a, 0xae, 0x69, 0x02, + 0xa0, 0x64, 0x6b, 0xf9, 0xf4, 0xa8, 0xc3, 0xa1, 0x87, 0x8b, 0xb0, 0x21, 0xfa, 0x7d, 0x28, 0x20, + 0x99, 0xf8, 0x7b, 0xe9, 0x3a, 0x4b, 0x30, 0x87, 0x02, 0x96, 0xe9, 0x66, 0x22, 0xa6, 0x21, 0x22, + 0x33, 0xc6, 0x02, 0x17, 0xde, 0x4c, 0x04, 0x2e, 0xcc, 0x33, 0x2e, 0x39, 0x3a, 0xa1, 0xf6, 0xaf, + 0x19, 0x58, 0x3e, 0xa0, 0x42, 0x2d, 0x5e, 0xd5, 0xcc, 0xbf, 0xfa, 0x79, 0x15, 0x0a, 0xb5, 0x41, + 0x87, 0x3f, 0x4c, 0x8d, 0x39, 0xc2, 0x1c, 0x8e, 0x66, 0x7f, 0xd0, 0x11, 0x6f, 0x5c, 0x63, 0x4b, + 0x66, 0x7a, 0x82, 0x33, 0xdc, 0x03, 0x58, 0x64, 0x0f, 0x85, 0xfc, 0x16, 0x52, 0xa8, 0x35, 0x41, + 0x8d, 0x5e, 0x61, 0xc9, 0xd2, 0x5b, 0x0a, 0x7b, 0x6c, 0x94, 0x65, 0x6c, 0x0e, 0x30, 0x27, 0x5d, + 0x4c, 0x2d, 0x9c, 0xed, 0x62, 0x4a, 0x02, 0xd2, 0x59, 0x3c, 0x0b, 0x90, 0xce, 0xe5, 0xfb, 0x50, + 0x90, 0xea, 0x73, 0x2e, 0x2d, 0xe7, 0xf7, 0x33, 0xb0, 0x8a, 0xad, 0x0a, 0xac, 0x86, 0x7e, 0x3d, + 0xaf, 0xd9, 0xde, 0x8c, 0x5c, 0xb3, 0x6d, 0xc9, 0xe3, 0xc5, 0x5a, 0x36, 0xe7, 0x7e, 0xed, 0x01, + 0x6c, 0x24, 0x18, 0xc9, 0x6b, 0xb0, 0x40, 0xab, 0x2f, 0x36, 0x51, 0x35, 0x3e, 0x03, 0x42, 0xd0, + 0x45, 0xda, 0xf0, 0xb1, 0xc5, 0xb8, 0xb5, 0xff, 0x56, 0x60, 0x85, 0x43, 0x70, 0xfb, 0x47, 0x83, + 0x27, 0x76, 0xe7, 0xad, 0x78, 0x77, 0x32, 0xd7, 0x6e, 0xde, 0x9d, 0xff, 0xdb, 0x9d, 0x78, 0x3f, + 0xd2, 0x89, 0x97, 0x02, 0x08, 0x26, 0xd1, 0x9c, 0x39, 0x7d, 0xf8, 0xf7, 0x08, 0x4a, 0x18, 0x65, + 0x24, 0xdf, 0x84, 0xe5, 0x86, 0xf7, 0x61, 0x44, 0xbb, 0xbf, 0x35, 0xa3, 0xd0, 0x57, 0x02, 0x46, + 0xb6, 0xa6, 0x50, 0x30, 0xf2, 0xbd, 0x0f, 0xdd, 0xc4, 0x1b, 0x65, 0x58, 0x24, 0x55, 0xf0, 0xa3, + 0xd9, 0xce, 0x33, 0xf5, 0xb9, 0x03, 0x11, 0xa2, 0x15, 0x7c, 0x2f, 0x0b, 0x10, 0xfa, 0x5e, 0xd0, + 0x05, 0x18, 0x31, 0xcf, 0x10, 0x0f, 0x23, 0x48, 0x92, 0xe7, 0xb8, 0xb0, 0xda, 0xb8, 0xc5, 0x2f, + 0xf0, 0x33, 0xb3, 0x21, 0xb2, 0xf0, 0x2a, 0xbf, 0xc4, 0x7d, 0x1b, 0xba, 0x5e, 0xbf, 0xc3, 0xf6, + 0xf6, 0xec, 0xce, 0x4d, 0x44, 0x44, 0x0c, 0xa8, 0x33, 0x22, 0x34, 0xa2, 0x07, 0x44, 0x99, 0x32, + 0x24, 0xfc, 0x99, 0x72, 0xe7, 0xf3, 0x67, 0x6a, 0xc1, 0x72, 0xcf, 0xff, 0xc0, 0xf3, 0x27, 0x83, + 0xd1, 0x63, 0x7c, 0xb5, 0x08, 0xaf, 0x43, 0x69, 0x17, 0x98, 0x22, 0x8d, 0x8d, 0x03, 0x1e, 0xe4, + 0x01, 0xbf, 0x3c, 0x0c, 0x01, 0x31, 0xf0, 0xc7, 0x5a, 0x50, 0x17, 0x1f, 0xe4, 0xf2, 0x8b, 0xea, + 0xd2, 0x83, 0x5c, 0x3e, 0xaf, 0x2e, 0x3f, 0xc8, 0xe5, 0x97, 0x55, 0xb0, 0xa4, 0x77, 0xc0, 0xe0, + 0x9d, 0x4f, 0x3a, 0xcb, 0xa3, 0xe7, 0xb4, 0xf6, 0x8b, 0x0c, 0x90, 0x64, 0x35, 0xc8, 0x9b, 0x50, + 0x60, 0x1b, 0xac, 0x3b, 0x1a, 0x7f, 0x9b, 0xbb, 0xba, 0x30, 0xcc, 0x07, 0x89, 0x2c, 0x63, 0x3e, + 0x30, 0xb2, 0x35, 0xfe, 0x76, 0x9f, 0x7c, 0x03, 0x9e, 0xc1, 0xee, 0x1d, 0x7a, 0xa3, 0xde, 0xa0, + 0xeb, 0x22, 0x40, 0x5f, 0xa7, 0xcf, 0xc3, 0x23, 0xbd, 0x8c, 0x71, 0xfc, 0x92, 0xc9, 0x33, 0x86, + 0x01, 0x3d, 0x4a, 0x5a, 0xc8, 0xd9, 0x62, 0x8c, 0xc4, 0x01, 0x55, 0xce, 0x7f, 0x34, 0xed, 0xf7, + 0xf9, 0xc8, 0x16, 0xa9, 0x94, 0x15, 0x4f, 0x9b, 0x51, 0xf0, 0x5a, 0x58, 0x70, 0x65, 0xda, 0xef, + 0x93, 0xd7, 0x01, 0x06, 0xbe, 0x7b, 0xda, 0x1b, 0x8f, 0xd9, 0x5b, 0x58, 0xe0, 0x0d, 0x16, 0x52, + 0xe5, 0xc1, 0x18, 0xf8, 0x75, 0x46, 0x24, 0xff, 0x0f, 0xd0, 0x55, 0x14, 0x7d, 0xa8, 0x99, 0xdd, + 0x13, 0x47, 0x32, 0x17, 0xc4, 0xa8, 0xf3, 0xd9, 0xb1, 0x67, 0xf7, 0x3e, 0x12, 0x66, 0xeb, 0xef, + 0xc2, 0x06, 0xb7, 0x38, 0x3e, 0xe8, 0x4d, 0x4e, 0xb8, 0x26, 0xf6, 0x34, 0x6a, 0x9c, 0xa4, 0x8a, + 0xfd, 0x53, 0x0e, 0x40, 0x3f, 0xb0, 0x05, 0x3c, 0xc9, 0x1d, 0x58, 0xa0, 0xfa, 0xa5, 0xb8, 0xa7, + 0x42, 0x49, 0x17, 0xcb, 0x95, 0x25, 0x5d, 0xe4, 0xa0, 0xab, 0xd1, 0xf2, 0x8e, 0xf1, 0xaa, 0x34, + 0x13, 0x5e, 0x6a, 0x8d, 0x18, 0x29, 0xa2, 0x7f, 0x30, 0x12, 0xa9, 0x01, 0x84, 0x80, 0x21, 0x5c, + 0x63, 0xda, 0x08, 0x3d, 0xef, 0x79, 0x02, 0x87, 0xa8, 0x0e, 0x41, 0x47, 0xe4, 0xe9, 0x13, 0xb2, + 0x91, 0x3d, 0xc8, 0x39, 0x9d, 0xc0, 0xd7, 0x69, 0x06, 0x8c, 0xca, 0xf3, 0x3c, 0x7c, 0x55, 0x08, + 0xa5, 0xb2, 0x36, 0xe9, 0x44, 0xa2, 0xfc, 0x61, 0x21, 0xc4, 0x80, 0x45, 0x1e, 0x9a, 0x74, 0x06, + 0xfc, 0x16, 0x8f, 0x4c, 0xca, 0x41, 0x37, 0x91, 0x28, 0xcb, 0x14, 0x3c, 0x08, 0xe9, 0xab, 0x90, + 0xb5, 0xed, 0x3a, 0x77, 0x1e, 0x5e, 0x0d, 0xb5, 0x57, 0xdb, 0xae, 0x8b, 0xb8, 0xdf, 0xa7, 0x52, + 0x36, 0xca, 0x4c, 0xfe, 0x3f, 0x14, 0x24, 0x25, 0x86, 0xbb, 0xdd, 0x63, 0x1f, 0xf4, 0x42, 0xb2, + 0xbc, 0x69, 0x48, 0xdc, 0xa4, 0x06, 0xea, 0xde, 0xf4, 0x91, 0xa7, 0x0f, 0x87, 0xe8, 0x8c, 0xf3, + 0x81, 0x37, 0x62, 0x62, 0x5b, 0x3e, 0xc4, 0xab, 0x74, 0x3b, 0xc3, 0xa1, 0xdb, 0x15, 0xa9, 0xf2, + 0x5d, 0x5d, 0x3c, 0x27, 0x69, 0xc1, 0x86, 0xed, 0x4d, 0xa6, 0x43, 0x66, 0xc9, 0x53, 0x19, 0x8c, + 0xa8, 0x72, 0xc9, 0x9c, 0xf4, 0x11, 0xda, 0x6f, 0x4c, 0x13, 0x85, 0xf9, 0xd4, 0xd1, 0x60, 0x14, + 0x53, 0x34, 0x93, 0x99, 0x35, 0x4f, 0x1e, 0x72, 0x7a, 0xaa, 0x46, 0x55, 0x56, 0x3c, 0x55, 0x85, + 0xca, 0x1a, 0x2a, 0xaa, 0x5f, 0x4a, 0x01, 0x92, 0xc1, 0x87, 0x55, 0x09, 0x48, 0x26, 0x02, 0x1f, + 0xf3, 0x71, 0x4e, 0xc2, 0x32, 0xe3, 0x63, 0xf1, 0x16, 0xc0, 0x83, 0x41, 0xcf, 0xaf, 0x7b, 0x93, + 0x93, 0x41, 0x57, 0xc2, 0xb3, 0x29, 0xfc, 0xce, 0xa0, 0xe7, 0xbb, 0xa7, 0x48, 0xfe, 0xc5, 0x27, + 0xd7, 0x25, 0x26, 0x4b, 0xfa, 0x9f, 0x7c, 0x11, 0x96, 0xe9, 0x97, 0x13, 0xda, 0x23, 0xb1, 0x2b, + 0x6d, 0xcc, 0xcd, 0x10, 0xbf, 0x43, 0x06, 0x72, 0x1f, 0x31, 0xee, 0x7b, 0xc3, 0x89, 0x24, 0xbc, + 0x0a, 0x40, 0xfb, 0xde, 0x70, 0x12, 0x87, 0xa7, 0x94, 0x98, 0x49, 0x35, 0xa8, 0xba, 0x88, 0x92, + 0xc0, 0xa1, 0xf4, 0x51, 0x19, 0xe4, 0x73, 0xcd, 0x15, 0xb8, 0x78, 0xb2, 0x32, 0x18, 0xcb, 0x86, + 0x95, 0xb0, 0xab, 0x65, 0xf6, 0xd0, 0xc6, 0x85, 0x5a, 0x11, 0xb7, 0xbc, 0xeb, 0x1e, 0x22, 0x39, + 0x52, 0x89, 0x80, 0x99, 0xec, 0xc0, 0x3a, 0x93, 0xf1, 0x83, 0x68, 0x4b, 0x5c, 0xc4, 0xc5, 0xbd, + 0x2d, 0x0c, 0xc7, 0x24, 0xff, 0x7c, 0x2c, 0x03, 0xa9, 0xc0, 0x02, 0x5e, 0x0e, 0x70, 0x7f, 0x82, + 0x2b, 0xf2, 0x2d, 0x4b, 0x7c, 0x1d, 0xe1, 0xbe, 0x82, 0xf7, 0x2b, 0xf2, 0xbe, 0x82, 0xac, 0xe4, + 0xeb, 0x00, 0x86, 0x3f, 0x1a, 0xf4, 0xfb, 0x88, 0xdc, 0x98, 0x47, 0x55, 0xea, 0x5a, 0x74, 0x3d, + 0x62, 0x29, 0x21, 0x13, 0x47, 0x19, 0xc2, 0x6f, 0x37, 0x86, 0xef, 0x28, 0x95, 0xa5, 0x99, 0xb0, + 0xc8, 0x16, 0x23, 0xa2, 0xa0, 0x72, 0x5c, 0x77, 0x09, 0x43, 0x93, 0xa1, 0xa0, 0x72, 0x7a, 0x12, + 0x05, 0x55, 0xca, 0xa0, 0xed, 0xc1, 0x66, 0x5a, 0xc3, 0x22, 0xd7, 0x19, 0xca, 0x59, 0xaf, 0x33, + 0xfe, 0x3a, 0x0b, 0x2b, 0x58, 0x9a, 0xd8, 0x85, 0x75, 0x58, 0xb5, 0xa7, 0x8f, 0x02, 0x88, 0x10, + 0xb1, 0x1b, 0x63, 0xfd, 0xc6, 0x72, 0x82, 0xfc, 0x04, 0x1a, 0xc9, 0x41, 0x0c, 0x58, 0x13, 0x27, + 0xc1, 0xae, 0xf0, 0x51, 0x08, 0x00, 0x48, 0x05, 0xcc, 0x55, 0x32, 0xda, 0x5c, 0x2c, 0x53, 0x78, + 0x1e, 0x64, 0xcf, 0x73, 0x1e, 0xe4, 0xce, 0x74, 0x1e, 0xbc, 0x07, 0x2b, 0xe2, 0xd7, 0x70, 0x27, + 0x5f, 0x78, 0xba, 0x9d, 0x3c, 0x52, 0x18, 0xa9, 0x05, 0x3b, 0xfa, 0xe2, 0xdc, 0x1d, 0x1d, 0xdf, + 0x95, 0xc5, 0x2a, 0x4b, 0xc4, 0x99, 0xe6, 0x65, 0x60, 0x38, 0xa6, 0xdd, 0x52, 0xeb, 0x33, 0x9c, + 0x92, 0xaf, 0xc1, 0x72, 0x6d, 0x20, 0x9e, 0x14, 0xa5, 0xb7, 0x9c, 0xbe, 0x20, 0xca, 0xe2, 0x42, + 0xc0, 0x19, 0x9c, 0x6e, 0xd9, 0xcf, 0xe3, 0x74, 0xbb, 0x0f, 0xc0, 0x9d, 0x5f, 0xc2, 0x30, 0x2a, + 0xb8, 0x64, 0x84, 0x07, 0x78, 0xf4, 0x49, 0x49, 0x62, 0xa6, 0xbb, 0x13, 0xb7, 0x56, 0xd2, 0x0f, + 0x0f, 0x07, 0x53, 0x7f, 0x12, 0x89, 0x3b, 0xc8, 0xc1, 0x20, 0xe8, 0x91, 0x80, 0x69, 0xf2, 0xf6, + 0x10, 0xcb, 0xf6, 0xf9, 0x0e, 0x08, 0x79, 0x27, 0x30, 0xb3, 0x9c, 0x1b, 0xdc, 0x5d, 0x4b, 0xf4, + 0xd0, 0x4c, 0xe3, 0x4a, 0xed, 0x27, 0x8a, 0x8c, 0xfe, 0xfc, 0x19, 0x86, 0xfa, 0x0d, 0x80, 0xc0, + 0xa6, 0x43, 0x8c, 0x35, 0xd3, 0x97, 0x02, 0xaa, 0xdc, 0xcb, 0x21, 0xaf, 0xd4, 0x9a, 0xec, 0xe7, + 0xd5, 0x1a, 0x07, 0x0a, 0xcd, 0x6f, 0x4d, 0x3a, 0xa1, 0x11, 0x10, 0xd8, 0x81, 0x24, 0x8b, 0x3b, + 0x93, 0x08, 0x42, 0x1f, 0xca, 0xc1, 0x33, 0x83, 0xd0, 0x07, 0x19, 0xb5, 0x77, 0x60, 0x5d, 0xf6, + 0x45, 0x7d, 0xec, 0x1f, 0x92, 0xaf, 0x32, 0x2c, 0x3a, 0x25, 0xa2, 0xb1, 0x48, 0x4c, 0x74, 0xc7, + 0x7d, 0xec, 0x1f, 0x32, 0xf9, 0xa7, 0xf3, 0xa1, 0x5c, 0x57, 0xd4, 0xf1, 0x7e, 0xa6, 0x00, 0x49, + 0xb2, 0xcb, 0xbb, 0x89, 0xf2, 0x7f, 0x20, 0x5d, 0xc6, 0xa4, 0xb2, 0xdc, 0x79, 0xa4, 0xb2, 0xe2, + 0x9f, 0x2a, 0xb0, 0x6e, 0xea, 0x75, 0x0e, 0xd5, 0xcc, 0xde, 0xa6, 0x5e, 0x80, 0x6b, 0xa6, 0x5e, + 0x77, 0x5b, 0xcd, 0x9a, 0x59, 0x7a, 0xe8, 0xa6, 0x22, 0x30, 0x5e, 0x83, 0xe7, 0x92, 0x2c, 0xe1, + 0x1b, 0xd6, 0x55, 0xd8, 0x4a, 0x26, 0x0b, 0x94, 0xc6, 0xf4, 0xcc, 0x02, 0xd0, 0x31, 0x5b, 0x7c, + 0x1b, 0xd6, 0x05, 0x22, 0xa1, 0x53, 0xb3, 0x11, 0xf3, 0x78, 0x1d, 0x0a, 0xfb, 0x86, 0x65, 0x56, + 0x1e, 0xba, 0x95, 0x76, 0xad, 0xa6, 0x5e, 0x20, 0xab, 0xb0, 0xcc, 0x09, 0x25, 0x5d, 0x55, 0xc8, + 0x0a, 0xe4, 0xcd, 0x86, 0x6d, 0x94, 0xda, 0x96, 0xa1, 0x66, 0x8a, 0x6f, 0xc3, 0x5a, 0x6b, 0xd4, + 0xfb, 0xa0, 0x33, 0xf1, 0xf6, 0xbc, 0xc7, 0xf8, 0x04, 0xb5, 0x04, 0x59, 0x4b, 0x3f, 0x50, 0x2f, + 0x10, 0x80, 0xc5, 0xd6, 0x5e, 0xc9, 0xbe, 0x7b, 0x57, 0x55, 0x48, 0x01, 0x96, 0x76, 0x4b, 0x2d, + 0x77, 0xaf, 0x6e, 0xab, 0x19, 0xfa, 0xa1, 0x1f, 0xd8, 0xf8, 0x91, 0x2d, 0x7e, 0x19, 0x36, 0x50, + 0x56, 0xa8, 0xf5, 0xc6, 0x13, 0xcf, 0xf7, 0x46, 0x58, 0x87, 0x15, 0xc8, 0xdb, 0x1e, 0x5d, 0xe4, + 0x13, 0x8f, 0x55, 0xa0, 0x3e, 0xed, 0x4f, 0x7a, 0xc3, 0xbe, 0xf7, 0x1d, 0x55, 0x29, 0xde, 0x87, + 0x75, 0x6b, 0x30, 0x9d, 0xf4, 0xfc, 0x63, 0x7b, 0x42, 0x39, 0x8e, 0x1f, 0x93, 0x67, 0x61, 0xa3, + 0xdd, 0xd0, 0xeb, 0x3b, 0xe6, 0x6e, 0xbb, 0xd9, 0xb6, 0xdd, 0xba, 0xee, 0x94, 0xaa, 0xec, 0x01, + 0xac, 0xde, 0xb4, 0x1d, 0xd7, 0x32, 0x4a, 0x46, 0xc3, 0x51, 0x95, 0xe2, 0x1f, 0x2a, 0xb0, 0xd6, + 0x1e, 0x73, 0x2b, 0xef, 0x36, 0xfa, 0x6a, 0x3e, 0x0f, 0x57, 0xdb, 0xb6, 0x61, 0xb9, 0x4e, 0x73, + 0xcf, 0x68, 0xb8, 0x6d, 0x5b, 0xdf, 0x8d, 0xc3, 0x7f, 0x5e, 0x87, 0x2b, 0x12, 0x87, 0x65, 0x94, + 0x9a, 0xfb, 0x86, 0xe5, 0xb6, 0x74, 0xdb, 0x3e, 0x68, 0x5a, 0x65, 0x55, 0x21, 0x97, 0xe1, 0x62, + 0x0a, 0x43, 0xbd, 0xa2, 0xab, 0x99, 0x44, 0x5a, 0xc3, 0x38, 0xd0, 0x6b, 0xee, 0x4e, 0xd3, 0x51, + 0xb3, 0xc5, 0x3a, 0x3d, 0xe8, 0x10, 0xf6, 0x8e, 0x59, 0x28, 0xe6, 0x21, 0xd7, 0x68, 0x36, 0x8c, + 0xf8, 0x23, 0xe5, 0x0a, 0xe4, 0xf5, 0x56, 0xcb, 0x6a, 0xee, 0xe3, 0x80, 0x02, 0x2c, 0x96, 0x8d, + 0x06, 0xad, 0x59, 0x96, 0xa6, 0xb4, 0xac, 0x66, 0xbd, 0xe9, 0x18, 0x65, 0x35, 0x57, 0xb4, 0xc4, + 0x82, 0x11, 0x85, 0x1e, 0x0e, 0xd8, 0x8b, 0x60, 0xd9, 0xa8, 0xe8, 0xed, 0x9a, 0xc3, 0x3b, 0xe4, + 0xa1, 0x6b, 0x19, 0xef, 0xb4, 0x0d, 0xdb, 0xb1, 0x55, 0x85, 0xa8, 0xb0, 0xd2, 0x30, 0x8c, 0xb2, + 0xed, 0x5a, 0xc6, 0xbe, 0x69, 0x1c, 0xa8, 0x19, 0x5a, 0x26, 0xfb, 0x9f, 0xfe, 0x42, 0xf1, 0x63, + 0x05, 0x08, 0x83, 0x0c, 0x14, 0x38, 0xf4, 0x38, 0x3e, 0xdb, 0x70, 0xb9, 0x4a, 0x3b, 0x16, 0x9b, + 0x56, 0x6f, 0x96, 0xe3, 0x5d, 0x76, 0x11, 0x48, 0x2c, 0xbd, 0x59, 0xa9, 0xa8, 0x0a, 0xb9, 0x02, + 0xcf, 0xc4, 0xe8, 0x65, 0xab, 0xd9, 0x52, 0x33, 0x97, 0x33, 0x79, 0x85, 0x5c, 0x4a, 0x24, 0xee, + 0x19, 0x46, 0x4b, 0xcd, 0xd2, 0x21, 0x8a, 0x25, 0x88, 0x09, 0xc8, 0xb2, 0xe7, 0x8a, 0xdf, 0x55, + 0xe0, 0x22, 0xab, 0xa6, 0x98, 0xcd, 0x41, 0x55, 0xaf, 0xc2, 0x16, 0x07, 0x42, 0x4d, 0xab, 0xe8, + 0x26, 0xa8, 0x91, 0x54, 0x56, 0xcd, 0x67, 0x61, 0x23, 0x42, 0xc5, 0x7a, 0x64, 0xe8, 0x5a, 0x8d, + 0x90, 0x77, 0x0c, 0xdb, 0x71, 0x8d, 0x4a, 0xa5, 0x69, 0x39, 0xac, 0x22, 0xd9, 0xa2, 0x06, 0x1b, + 0x25, 0x6f, 0x34, 0xa1, 0x3a, 0x88, 0x3f, 0xee, 0x0d, 0x7c, 0xac, 0xc2, 0x2a, 0x2c, 0x1b, 0x5f, + 0x77, 0x8c, 0x86, 0x6d, 0x36, 0x1b, 0xea, 0x85, 0xe2, 0xd5, 0x18, 0x8f, 0x58, 0x35, 0xb6, 0x5d, + 0x55, 0x2f, 0x14, 0x3b, 0xb0, 0x2a, 0xac, 0xaa, 0xd9, 0xac, 0xd8, 0x86, 0xcb, 0x62, 0xae, 0xe1, + 0xfa, 0x8d, 0x37, 0x61, 0x0b, 0x36, 0x93, 0xe9, 0x86, 0xa3, 0x2a, 0x74, 0x14, 0x62, 0x29, 0x94, + 0x9e, 0x29, 0xfe, 0x95, 0x02, 0x5b, 0x3c, 0xe2, 0x2b, 0x7f, 0x41, 0x60, 0xd8, 0xeb, 0x08, 0x4e, + 0x58, 0x84, 0x5b, 0x8e, 0xd5, 0xb6, 0x1d, 0xa3, 0xec, 0x96, 0x8d, 0x7d, 0xb3, 0x64, 0xe0, 0x74, + 0x31, 0x2d, 0xa3, 0x6e, 0x34, 0x9c, 0xd8, 0x4f, 0xbf, 0x04, 0x5f, 0x98, 0xc3, 0xdb, 0x68, 0x3a, + 0xe2, 0x9b, 0xae, 0x92, 0x2f, 0xc0, 0x8d, 0x39, 0xcc, 0x01, 0x63, 0xa6, 0xf8, 0x3e, 0xac, 0x44, + 0xe2, 0xc9, 0x5c, 0x82, 0x67, 0xe4, 0xef, 0x96, 0xe7, 0x77, 0x7b, 0xfe, 0xb1, 0x7a, 0x21, 0x9e, + 0x60, 0x4d, 0x7d, 0x9f, 0x26, 0xe0, 0x82, 0x94, 0x13, 0x1c, 0x6f, 0x74, 0xda, 0xf3, 0x3b, 0x13, + 0xaf, 0xab, 0x66, 0x8a, 0xaf, 0xc0, 0x6a, 0x04, 0xc5, 0x92, 0xf6, 0x7c, 0xad, 0xc9, 0xf7, 0xab, + 0xba, 0x51, 0x36, 0xdb, 0x75, 0x75, 0x81, 0x2e, 0xc5, 0xaa, 0xb9, 0x5b, 0x55, 0xa1, 0xf8, 0x03, + 0x85, 0x4a, 0xcc, 0xd8, 0x3f, 0xf5, 0x8a, 0x2e, 0xc6, 0x8a, 0xce, 0x13, 0x86, 0x8d, 0x6b, 0xd8, + 0x36, 0x7b, 0x5c, 0xbf, 0x0a, 0x5b, 0xfc, 0xc3, 0xd5, 0x1b, 0x65, 0xb7, 0xaa, 0x5b, 0xe5, 0x03, + 0xdd, 0xa2, 0x93, 0xe7, 0xa1, 0x9a, 0xc1, 0x15, 0x21, 0x51, 0x5c, 0xa7, 0xd9, 0x2e, 0x55, 0xd5, + 0x2c, 0x9d, 0x80, 0x11, 0x7a, 0xcb, 0x6c, 0xa8, 0x39, 0x5c, 0x5f, 0x09, 0x6e, 0x2c, 0x96, 0xa6, + 0x2f, 0x14, 0x3f, 0x55, 0xe0, 0x92, 0xdd, 0x3b, 0xf6, 0x3b, 0x93, 0xe9, 0xc8, 0xd3, 0xfb, 0xc7, + 0x83, 0x51, 0x6f, 0x72, 0x72, 0x6a, 0x4f, 0x7b, 0x13, 0x8f, 0xdc, 0x81, 0x17, 0x6d, 0x73, 0xb7, + 0xa1, 0x3b, 0x74, 0x7d, 0xe8, 0xb5, 0xdd, 0xa6, 0x65, 0x3a, 0xd5, 0xba, 0x6b, 0xb7, 0xcd, 0xc4, + 0xd4, 0xb9, 0x09, 0xcf, 0xcf, 0x66, 0xad, 0x19, 0xbb, 0x7a, 0xe9, 0xa1, 0xaa, 0xcc, 0x2f, 0x70, + 0x47, 0xaf, 0xe9, 0x8d, 0x92, 0x51, 0x76, 0xf7, 0xef, 0xaa, 0x19, 0xf2, 0x22, 0xbc, 0x30, 0x9b, + 0xb5, 0x62, 0xb6, 0x6c, 0xca, 0x96, 0x9d, 0xff, 0xbb, 0x55, 0xbb, 0x4e, 0xb9, 0x72, 0xc5, 0x1e, + 0xa8, 0x71, 0x27, 0xfc, 0x84, 0x29, 0x87, 0xd5, 0x6e, 0x34, 0xd8, 0x2e, 0xb9, 0x0e, 0x85, 0xa6, + 0x53, 0x35, 0x2c, 0x0e, 0xd1, 0x8c, 0x98, 0xcc, 0xed, 0x86, 0xde, 0x76, 0xaa, 0x4d, 0xcb, 0x7c, + 0x17, 0xb7, 0xcb, 0x2d, 0xd8, 0xb4, 0x6b, 0x7a, 0x69, 0x0f, 0x67, 0xa6, 0xd9, 0x70, 0x4b, 0x55, + 0xbd, 0xd1, 0x30, 0x6a, 0x2a, 0x14, 0xff, 0x52, 0x61, 0x36, 0x15, 0x69, 0xde, 0x7a, 0xe4, 0x8b, + 0x70, 0xbb, 0xb9, 0xe7, 0xe8, 0x6e, 0xab, 0xd6, 0xde, 0x35, 0x1b, 0xae, 0xfd, 0xb0, 0x51, 0x12, + 0x07, 0x69, 0x29, 0xb9, 0xa3, 0xdc, 0x86, 0x9b, 0x73, 0xb9, 0x43, 0x30, 0xe5, 0x5b, 0xa0, 0xcd, + 0xe5, 0xe4, 0x0d, 0x29, 0xfe, 0x54, 0x81, 0x2b, 0x73, 0xde, 0x0a, 0xc9, 0xcb, 0x70, 0xa7, 0x6a, + 0xe8, 0xe5, 0x9a, 0x61, 0xdb, 0x2e, 0x6d, 0xaf, 0xd1, 0x70, 0xb8, 0xc9, 0x47, 0xea, 0x7e, 0x71, + 0x07, 0x5e, 0x9c, 0xcf, 0x1e, 0x9e, 0x3c, 0xb7, 0xe1, 0xe6, 0x7c, 0x56, 0x7e, 0x12, 0x65, 0xe8, + 0xae, 0x31, 0x9f, 0x33, 0x38, 0xc1, 0xb2, 0xc5, 0xef, 0x2b, 0x70, 0x31, 0x5d, 0x61, 0xa7, 0x75, + 0x33, 0x1b, 0xb6, 0xa3, 0xd7, 0x6a, 0x6e, 0x4b, 0xb7, 0xf4, 0xba, 0x6b, 0x34, 0xac, 0x66, 0xad, + 0x96, 0xb6, 0x73, 0xdf, 0x84, 0xe7, 0x67, 0xb3, 0xda, 0x25, 0xcb, 0x6c, 0xd1, 0x2d, 0x50, 0x83, + 0xed, 0xd9, 0x5c, 0x86, 0x59, 0x32, 0xd4, 0xcc, 0xce, 0x5b, 0x3f, 0xfe, 0x97, 0xed, 0x0b, 0x3f, + 0xfe, 0x74, 0x5b, 0xf9, 0xd9, 0xa7, 0xdb, 0xca, 0x3f, 0x7f, 0xba, 0xad, 0xbc, 0xfb, 0xd2, 0x39, + 0xa2, 0xda, 0x3f, 0x5a, 0x44, 0x1b, 0xa7, 0x7b, 0xff, 0x13, 0x00, 0x00, 0xff, 0xff, 0x0e, 0xf1, + 0x2a, 0x7a, 0x15, 0xa3, 0x01, 0x00, } func (this *PluginSpecV1) Equal(that interface{}) bool { @@ -33314,6 +33380,13 @@ func (m *ExternalIdentity) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.UserID) > 0 { + i -= len(m.UserID) + copy(dAtA[i:], m.UserID) + i = encodeVarintTypes(dAtA, i, uint64(len(m.UserID))) + i-- + dAtA[i] = 0x22 + } if len(m.SAMLSingleLogoutURL) > 0 { i -= len(m.SAMLSingleLogoutURL) copy(dAtA[i:], m.SAMLSingleLogoutURL) @@ -37713,6 +37786,15 @@ func (m *GithubAuthRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.AuthenticatedUser) > 0 { + i -= len(m.AuthenticatedUser) + copy(dAtA[i:], m.AuthenticatedUser) + i = encodeVarintTypes(dAtA, i, uint64(len(m.AuthenticatedUser))) + i-- + dAtA[i] = 0x1 + i-- + dAtA[i] = 0xba + } if m.TlsAttestationStatement != nil { { size, err := m.TlsAttestationStatement.MarshalToSizedBuffer(dAtA[:i]) @@ -37978,6 +38060,13 @@ func (m *CreateUserParams) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.UserID) > 0 { + i -= len(m.UserID) + copy(dAtA[i:], m.UserID) + i = encodeVarintTypes(dAtA, i, uint64(len(m.UserID))) + i-- + dAtA[i] = 0x4a + } if m.SessionTTL != 0 { i = encodeVarintTypes(dAtA, i, uint64(m.SessionTTL)) i-- @@ -38409,6 +38498,13 @@ func (m *GithubClaims) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.ID) > 0 { + i -= len(m.ID) + copy(dAtA[i:], m.ID) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ID))) + i-- + dAtA[i] = 0x22 + } if len(m.Teams) > 0 { for iNdEx := len(m.Teams) - 1; iNdEx >= 0; iNdEx-- { i -= len(m.Teams[iNdEx]) @@ -45120,10 +45216,22 @@ func (m *GitHubProxy) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - if len(m.CertAuthority) > 0 { - for iNdEx := len(m.CertAuthority) - 1; iNdEx >= 0; iNdEx-- { + if m.Connector != nil { + { + size, err := m.Connector.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + } + if len(m.CertAuthorities) > 0 { + for iNdEx := len(m.CertAuthorities) - 1; iNdEx >= 0; iNdEx-- { { - size, err := m.CertAuthority[iNdEx].MarshalToSizedBuffer(dAtA[:i]) + size, err := m.CertAuthorities[iNdEx].MarshalToSizedBuffer(dAtA[:i]) if err != nil { return 0, err } @@ -45131,18 +45239,56 @@ func (m *GitHubProxy) MarshalToSizedBuffer(dAtA []byte) (int, error) { i = encodeVarintTypes(dAtA, i, uint64(size)) } i-- - dAtA[i] = 0x12 + dAtA[i] = 0xa } } - if m.Enabled { + return len(dAtA) - i, nil +} + +func (m *GitHubProxyConnector) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *GitHubProxyConnector) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitHubProxyConnector) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.RedirectURL) > 0 { + i -= len(m.RedirectURL) + copy(dAtA[i:], m.RedirectURL) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RedirectURL))) i-- - if m.Enabled { - dAtA[i] = 1 - } else { - dAtA[i] = 0 - } + dAtA[i] = 0x1a + } + if len(m.ClientSecret) > 0 { + i -= len(m.ClientSecret) + copy(dAtA[i:], m.ClientSecret) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ClientSecret))) i-- - dAtA[i] = 0x8 + dAtA[i] = 0x12 + } + if len(m.ClientID) > 0 { + i -= len(m.ClientID) + copy(dAtA[i:], m.ClientID) + i = encodeVarintTypes(dAtA, i, uint64(len(m.ClientID))) + i-- + dAtA[i] = 0xa } return len(dAtA) - i, nil } @@ -51021,6 +51167,10 @@ func (m *ExternalIdentity) Size() (n int) { if l > 0 { n += 1 + l + sovTypes(uint64(l)) } + l = len(m.UserID) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -53084,6 +53234,10 @@ func (m *GithubAuthRequest) Size() (n int) { l = m.TlsAttestationStatement.Size() n += 2 + l + sovTypes(uint64(l)) } + l = len(m.AuthenticatedUser) + if l > 0 { + n += 2 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -53155,6 +53309,10 @@ func (m *CreateUserParams) Size() (n int) { if m.SessionTTL != 0 { n += 1 + sovTypes(uint64(m.SessionTTL)) } + l = len(m.UserID) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -53302,6 +53460,10 @@ func (m *GithubClaims) Size() (n int) { n += 1 + l + sovTypes(uint64(l)) } } + l = len(m.ID) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -56382,15 +56544,40 @@ func (m *GitHubProxy) Size() (n int) { } var l int _ = l - if m.Enabled { - n += 2 - } - if len(m.CertAuthority) > 0 { - for _, e := range m.CertAuthority { + if len(m.CertAuthorities) > 0 { + for _, e := range m.CertAuthorities { l = e.Size() n += 1 + l + sovTypes(uint64(l)) } } + if m.Connector != nil { + l = m.Connector.Size() + n += 1 + l + sovTypes(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *GitHubProxyConnector) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ClientID) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.ClientSecret) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } + l = len(m.RedirectURL) + if l > 0 { + n += 1 + l + sovTypes(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -87514,6 +87701,38 @@ func (m *ExternalIdentity) Unmarshal(dAtA []byte) error { } m.SAMLSingleLogoutURL = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UserID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -101533,6 +101752,38 @@ func (m *GithubAuthRequest) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 23: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AuthenticatedUser", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.AuthenticatedUser = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -101943,6 +102194,38 @@ func (m *CreateUserParams) Unmarshal(dAtA []byte) error { break } } + case 9: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field UserID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.UserID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -102968,6 +103251,38 @@ func (m *GithubClaims) Unmarshal(dAtA []byte) error { } m.Teams = append(m.Teams, string(dAtA[iNdEx:postIndex])) iNdEx = postIndex + case 4: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipTypes(dAtA[iNdEx:]) @@ -120960,10 +121275,10 @@ func (m *GitHubProxy) Unmarshal(dAtA []byte) error { } switch fieldNum { case 1: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Enabled", wireType) + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field CertAuthorities", wireType) } - var v int + var msglen int for shift := uint(0); ; shift += 7 { if shift >= 64 { return ErrIntOverflowTypes @@ -120973,15 +121288,29 @@ func (m *GitHubProxy) Unmarshal(dAtA []byte) error { } b := dAtA[iNdEx] iNdEx++ - v |= int(b&0x7F) << shift + msglen |= int(b&0x7F) << shift if b < 0x80 { break } } - m.Enabled = bool(v != 0) + if msglen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.CertAuthorities = append(m.CertAuthorities, &SSHKeyPair{}) + if err := m.CertAuthorities[len(m.CertAuthorities)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex case 2: if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field CertAuthority", wireType) + return fmt.Errorf("proto: wrong wireType = %d for field Connector", wireType) } var msglen int for shift := uint(0); ; shift += 7 { @@ -121008,10 +121337,159 @@ func (m *GitHubProxy) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.CertAuthority = append(m.CertAuthority, &SSHKeyPair{}) - if err := m.CertAuthority[len(m.CertAuthority)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + if m.Connector == nil { + m.Connector = &GitHubProxyConnector{} + } + if err := m.Connector.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipTypes(dAtA[iNdEx:]) + if err != nil { return err } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthTypes + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *GitHubProxyConnector) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: GitHubProxyConnector: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitHubProxyConnector: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientID", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClientID = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ClientSecret", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ClientSecret = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 3: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RedirectURL", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowTypes + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthTypes + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthTypes + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.RedirectURL = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex default: iNdEx = preIndex diff --git a/api/types/user.go b/api/types/user.go index f60978b117323..114e0d06cb54e 100644 --- a/api/types/user.go +++ b/api/types/user.go @@ -61,6 +61,8 @@ type User interface { GetSAMLIdentities() []ExternalIdentity // GetGithubIdentities returns a list of connected Github identities GetGithubIdentities() []ExternalIdentity + // SetGithubIdentities updates the list of connected GitHub identities + SetGithubIdentities([]ExternalIdentity) // Get local authentication secrets (may be nil). GetLocalAuth() *LocalAuthSecrets // Set local authentication secrets (use nil to delete). @@ -121,8 +123,6 @@ type User interface { SetHostUserUID(uid string) // SetHostUserGID sets the GID for host users SetHostUserGID(gid string) - // SetGitHubUsername sets the GitHub username. - SetGitHubUsername(string) // SetGitHubOrganizations sets the GitHub organizations. SetGitHubOrganizations([]string) // GetCreatedBy returns information about user @@ -154,6 +154,10 @@ type User interface { // who were created before this property was introduced and didn't perform any // password-related activity since then. See RFD 0159 for details. SetPasswordState(PasswordState) + // GetGitHubUserID finds a GitHub user ID from connected identities. + GetGitHubUserID() string + // GetGitHubUsername finds a GitHub username from connected identities. + GetGitHubUsername() string } // NewUser creates new empty user @@ -412,15 +416,6 @@ func (u *UserV2) SetHostUserGID(uid string) { u.setTrait(constants.TraitHostUserGID, []string{uid}) } -// SetGitHubUsername sets the GitHub username. -func (u *UserV2) SetGitHubUsername(username string) { - if username == "" { - u.setTrait(constants.TraitGitHubUsername, nil) - } else { - u.setTrait(constants.TraitGitHubUsername, []string{username}) - } -} - // SetGitHubOrganizations sets the GitHub organizations. func (u *UserV2) SetGitHubOrganizations(orgs []string) { u.setTrait(constants.TraitGitHubOrganizations, orgs) @@ -446,6 +441,11 @@ func (u *UserV2) GetGithubIdentities() []ExternalIdentity { return u.Spec.GithubIdentities } +// SetGithubIdentities updates the list of connected GitHub identities +func (u *UserV2) SetGithubIdentities(identities []ExternalIdentity) { + u.Spec.GithubIdentities = identities +} + // GetLocalAuth gets local authentication secrets (may be nil). func (u *UserV2) GetLocalAuth() *LocalAuthSecrets { return u.Spec.LocalAuth @@ -575,6 +575,23 @@ func (u *UserV2) SetPasswordState(state PasswordState) { u.Status.PasswordState = state } +func (u *UserV2) GetGitHubUserID() string { + for _, github := range u.GetGithubIdentities() { + if github.UserID != "" { + return github.UserID + } + } + return "" +} +func (u *UserV2) GetGitHubUsername() string { + for _, github := range u.GetGithubIdentities() { + if github.Username != "" { + return github.Username + } + } + return "" +} + // IsEmpty returns true if there's no info about who created this user func (c CreatedBy) IsEmpty() bool { return c.User.Name == "" diff --git a/api/types/userloginstate/convert/v1/user_login_state.go b/api/types/userloginstate/convert/v1/user_login_state.go index 4bf45f5b9ec72..2525bf4fa9d47 100644 --- a/api/types/userloginstate/convert/v1/user_login_state.go +++ b/api/types/userloginstate/convert/v1/user_login_state.go @@ -32,14 +32,19 @@ func FromProto(msg *userloginstatev1.UserLoginState) (*userloginstate.UserLoginS return nil, trace.BadParameter("spec is missing") } - uls, err := userloginstate.New(headerv1.FromMetadataProto(msg.Header.Metadata), userloginstate.Spec{ + spec := userloginstate.Spec{ OriginalRoles: msg.Spec.GetOriginalRoles(), OriginalTraits: traitv1.FromProto(msg.Spec.OriginalTraits), Roles: msg.Spec.Roles, Traits: traitv1.FromProto(msg.Spec.Traits), UserType: types.UserType(msg.Spec.UserType), - }) + } + if msg.Spec.Github != nil { + spec.GitHubUserID = msg.Spec.Github.Id + spec.GitHubUsername = msg.Spec.Github.Username + } + uls, err := userloginstate.New(headerv1.FromMetadataProto(msg.Header.Metadata), spec) return uls, trace.Wrap(err) } @@ -53,6 +58,10 @@ func ToProto(uls *userloginstate.UserLoginState) *userloginstatev1.UserLoginStat Roles: uls.GetRoles(), Traits: traitv1.ToProto(uls.GetTraits()), UserType: string(uls.Spec.UserType), + Github: &userloginstatev1.GitHubIdentity{ + Id: uls.GetGitHubUserID(), + Username: uls.GetGitHubUsername(), + }, }, } } diff --git a/api/types/userloginstate/user_login_state.go b/api/types/userloginstate/user_login_state.go index c704856eb392e..2679e609c1283 100644 --- a/api/types/userloginstate/user_login_state.go +++ b/api/types/userloginstate/user_login_state.go @@ -55,6 +55,13 @@ type Spec struct { // UserType is the type of user that this state represents. UserType types.UserType `json:"user_type" yaml:"user_type"` + + // GitHubUserID indicates the GitHub user ID identified by the GitHub + // identity connector. + GitHubUserID string + // GitHubUsername indicates the GitHub username identified by the GitHub + // identity connector. + GitHubUsername string } // New creates a new user login state. @@ -123,3 +130,16 @@ func (u *UserLoginState) IsBot() bool { func (u *UserLoginState) GetMetadata() types.Metadata { return legacy.FromHeaderMetadata(u.Metadata) } + +func (u *UserLoginState) GetGitHubUserID() string { + return u.Spec.GitHubUserID +} +func (u *UserLoginState) SetGitHubUserID(githubUserID string) { + u.Spec.GitHubUserID = githubUserID +} +func (u *UserLoginState) GetGitHubUsername() string { + return u.Spec.GitHubUsername +} +func (u *UserLoginState) SetGitHubUsername(githubUsername string) { + u.Spec.GitHubUsername = githubUsername +} diff --git a/api/utils/route.go b/api/utils/route.go index 5612c92740304..1ca83926e4ee1 100644 --- a/api/utils/route.go +++ b/api/utils/route.go @@ -136,11 +136,6 @@ func (m *SSHRouteMatcher) RouteToServerScore(server RouteableServer) (score int) return directMatch } - // TODO do it properly - if server.GetAddr() == "github.com:22" && server.GetHostname() == m.cfg.Host { - return directMatch - } - hostnameMatch := m.routeToHostname(server.GetHostname()) // if the server has connected over a reverse tunnel diff --git a/api/utils/uri_test.go b/api/utils/uri_test.go index 7797fb1bf9f41..8cb4c4aeb4509 100644 --- a/api/utils/uri_test.go +++ b/api/utils/uri_test.go @@ -34,7 +34,6 @@ func TestParseSessionsURI(t *testing.T) { {info: "local default file system URI", in: "/home/log", url: &url.URL{Scheme: "file", Path: "/home/log"}}, {info: "explicit filesystem URI", in: "file:///home/log", url: &url.URL{Scheme: "file", Path: "/home/log"}}, {info: "other scheme", in: "other://my-bucket", url: &url.URL{Scheme: "other", Host: "my-bucket"}}, - {info: "other schemess", in: "s3://access.support.blueplanet.com/records", url: &url.URL{Scheme: "s3", Host: "access.support.blueplanet.com"}}, } for _, testCase := range testCases { t.Run(testCase.info, func(t *testing.T) { diff --git a/constants.go b/constants.go index bf003bd18741f..2ba7730f5d9e5 100644 --- a/constants.go +++ b/constants.go @@ -507,6 +507,12 @@ const ( // Machine ID bot instance, if any. This identifier is persisted through // certificate renewals. CertExtensionBotInstanceID = "bot-instance-id@goteleport.com" + // CertExtensionGitHubUserID indicates the GitHub user ID identified by the + // GitHub identity connector. + CertExtensionGitHubUserID = "github-id@goteleport.com" + // CertExtensionGitHubUsername indicates the GitHub username identified by + // the GitHub identity connector. + CertExtensionGitHubUsername = "github-login@goteleport.com" // CertCriticalOptionSourceAddress is a critical option that defines IP addresses (in CIDR notation) // from which this certificate is accepted for authentication. @@ -624,6 +630,8 @@ const ( // TraitInternalJWTVariable is the variable used to store JWT token for // app sessions. TraitInternalJWTVariable = "{{internal.jwt}}" + + TraitInternalGitHubOrgs = "{{internal.github_orgs}}" ) // SCP is Secure Copy. diff --git a/e b/e index e2fb89d846b4b..3d9e215d34085 160000 --- a/e +++ b/e @@ -1 +1 @@ -Subproject commit e2fb89d846b4bd885775e2785e3e1fb972de6697 +Subproject commit 3d9e215d34085c7909ce8f6ecf316533b7dd0db4 diff --git a/go.mod b/go.mod index ce3aa152714b7..d9f875dc0efea 100644 --- a/go.mod +++ b/go.mod @@ -92,6 +92,7 @@ require ( github.com/fxamacker/cbor/v2 v2.7.0 github.com/ghodss/yaml v1.0.0 github.com/gizak/termui/v3 v3.1.0 + github.com/go-git/go-git/v5 v5.12.0 github.com/go-jose/go-jose/v3 v3.0.3 github.com/go-ldap/ldap/v3 v3.4.8 github.com/go-logr/logr v1.4.2 @@ -333,6 +334,8 @@ require ( github.com/go-errors/errors v1.4.2 // indirect github.com/go-faster/city v1.0.1 // indirect github.com/go-faster/errors v0.7.1 // indirect + github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect + github.com/go-git/go-billy/v5 v5.5.0 // indirect github.com/go-gorp/gorp/v3 v3.1.0 // indirect github.com/go-jose/go-jose/v4 v4.0.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect @@ -382,6 +385,7 @@ require ( github.com/hashicorp/go-retryablehttp v0.7.7 // indirect github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.6.0 // indirect + github.com/hashicorp/golang-lru v1.0.2 // indirect github.com/hashicorp/hcl v1.0.1-vault-5 // indirect github.com/huandu/xstrings v1.5.0 // indirect github.com/imdario/mergo v0.3.16 // indirect @@ -392,6 +396,7 @@ require ( github.com/jackc/pgpassfile v1.0.0 // indirect github.com/jackc/pgservicefile v0.0.0-20231201235250-de7065d80cb9 // indirect github.com/jackc/puddle/v2 v2.2.1 // indirect + github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect github.com/jcmturner/aescts/v2 v2.0.0 // indirect github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect github.com/jcmturner/gofork v1.7.6 // indirect @@ -455,6 +460,7 @@ require ( github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pierrec/lz4/v4 v4.1.21 // indirect github.com/pingcap/errors v0.11.5-0.20201126102027-b0a155152ca3 // indirect + github.com/pjbgf/sha1cd v0.3.0 // indirect github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pkg/xattr v0.4.10 // indirect @@ -533,6 +539,7 @@ require ( gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/mgo.v2 v2.0.0-20190816093944-a6b53ec6cb22 // indirect + gopkg.in/warnings.v0 v0.1.2 // indirect k8s.io/component-helpers v0.31.0 // indirect k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect k8s.io/metrics v0.31.0 // indirect @@ -545,16 +552,6 @@ require ( sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect ) -require github.com/go-git/go-git/v5 v5.12.0 - -require ( - github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect - github.com/go-git/go-billy/v5 v5.5.0 // indirect - github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect - github.com/pjbgf/sha1cd v0.3.0 // indirect - gopkg.in/warnings.v0 v0.1.2 // indirect -) - // Update also `ignore` in .github/dependabot.yml. replace ( github.com/alecthomas/kingpin/v2 => github.com/gravitational/kingpin/v2 v2.1.11-0.20230515143221-4ec6b70ecd33 diff --git a/go.sum b/go.sum index e8c74fdb0f3d1..78067da24d887 100644 --- a/go.sum +++ b/go.sum @@ -1629,8 +1629,8 @@ github.com/hashicorp/go-version v1.6.0 h1:feTTfFNnjP967rlCxM/I9g701jU+RN74YKx2mO github.com/hashicorp/go-version v1.6.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc= -github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= +github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c= +github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k= github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= github.com/hashicorp/hcl v1.0.1-vault-5 h1:kI3hhbbyzr4dldA8UdTb7ZlVVlI2DACdCfz31RPDgJM= diff --git a/lib/auth/auth.go b/lib/auth/auth.go index 5ce4e3e1c7776..ed183741f8f13 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -2092,6 +2092,12 @@ type certRequest struct { // botInstanceID is the unique identifier of the bot instance associated // with this cert, if any botInstanceID string + // githubUserID indicates the GitHub user ID identified by the GitHub + // identity connector. + githubUserID string + // githubUsername indicates the GitHub username identified by the GitHub + // identity connector. + githubUsername string } // check verifies the cert request is valid. @@ -2268,6 +2274,8 @@ func (a *Server) GenerateUserTestCerts(req GenerateUserTestCertsRequest) ([]byte tlsPublicKeyAttestationStatement: req.TLSAttestationStatement, appName: req.AppName, appSessionID: req.AppSessionID, + githubUserID: userState.GetGitHubUserID(), + githubUsername: userState.GetGitHubUsername(), }) if err != nil { return nil, nil, trace.Wrap(err) @@ -3000,9 +3008,12 @@ func generateCert(ctx context.Context, a *Server, req certRequest, caType types. // All users have access to this and join RBAC rules are checked after the connection is established. allowedLogins = append(allowedLogins, teleport.SSHSessionJoinPrincipal) - // Add git logins. - if githubUsername, ok := req.checker.Traits()[constants.TraitGitHubUsername]; ok { - allowedLogins = append(allowedLogins, githubUsername...) + // TODO(greedy52) any better way to validate user id from client cert? + // could we use user state or req.githubUserID only? + if req.githubUserID != "" { + allowedLogins = append(allowedLogins, githubUserID) + } else if req.user.GetGitHubUserID() != "" && req.user.GetGitHubUserID() != req.githubUserID { + allowedLogins = append(allowedLogins, req.user.GetGitHubUserID()) } requestedResourcesStr, err := types.ResourceIDsToString(req.checker.GetAllowedResourceIDs()) @@ -3065,6 +3076,8 @@ func generateCert(ctx context.Context, a *Server, req certRequest, caType types. DeviceID: req.deviceExtensions.DeviceID, DeviceAssetTag: req.deviceExtensions.AssetTag, DeviceCredentialID: req.deviceExtensions.CredentialID, + GitHubUserID: req.githubUserID, + GitHubUsername: req.githubUsername, } signedSSHCert, err = a.GenerateUserCert(params) if err != nil { diff --git a/lib/auth/auth_with_roles.go b/lib/auth/auth_with_roles.go index d9f6bef39a372..c398c1a279f3b 100644 --- a/lib/auth/auth_with_roles.go +++ b/lib/auth/auth_with_roles.go @@ -1501,13 +1501,6 @@ func (a *ServerWithRoles) ListUnifiedResources(ctx context.Context, req *proto.L continue } r.Logins = logins - } else if gitServer := r.GetGitServer(); gitServer != nil { - logins, err := checker.GetAllowedLoginsForResource(gitServer) - if err != nil { - log.WithError(err).WithField("resource", gitServer.GetName()).Warn("Unable to determine logins for git_server") - continue - } - r.Logins = logins } } } @@ -3363,6 +3356,11 @@ func (a *ServerWithRoles) generateUserCerts(ctx context.Context, req proto.UserC // SSH certs are ssh-only by definition, certReq.usage only applies to // TLS certs. case proto.UserCertsRequest_GitServer: + if loginState, err := a.authServer.GetUserOrLoginState(ctx, user.GetName()); err == nil && loginState != nil { + certReq.githubUserID = loginState.GetGitHubUserID() + certReq.githubUsername = loginState.GetGitHubUsername() + } + // Same as SSH case proto.UserCertsRequest_All: // Unrestricted usage. @@ -4115,6 +4113,85 @@ func (a *ServerWithRoles) CreateGithubAuthRequest(ctx context.Context, req types return githubReq, nil } +func (a *ServerWithRoles) getGithubServers(ctx context.Context, org string) (types.Server, error) { + resources, err := client.GetAllUnifiedResources(ctx, a, &proto.ListUnifiedResourcesRequest{ + Kinds: []string{types.KindGitServer}, + SortBy: types.SortBy{Field: types.ResourceMetadataName}, + PredicateExpression: fmt.Sprintf("resource.spec.github.organization == \"%s\"", org), + }) + if err != nil { + return nil, trace.Wrap(err) + } + + for _, resource := range resources { + server, ok := resource.ResourceWithLabels.(types.Server) + if !ok { + // TODO log a warning + continue + } + if github := server.GetGitHub(); github != nil { + if github.Organization == org && github.Integration != "" { + return server, nil + } + } + } + return nil, trace.NotFound("no git server found for github organization %s", org) +} + +// TODO +func (a *ServerWithRoles) CreateGithubAuthRequestForUser(ctx context.Context, req *proto.CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) { + if req.CertRequest == nil { + return nil, trace.BadParameter("missing cert request") + } + org := req.CertRequest.RouteToGitServer.GitHubOrganization + if org == "" { + return nil, trace.BadParameter("one of github organization or connector id must be provided") + } + + githubServer, err := a.getGithubServers(ctx, org) + if err != nil { + return nil, trace.Wrap(err, "failed to get github server") + } + + integration, err := a.authServer.GetIntegration(ctx, githubServer.GetGitHub().Integration, true) + if err != nil { + return nil, trace.Wrap(err, "failed to find integration") + } + + igSpec := integration.GetGitHubIntegrationSpec() + if igSpec == nil { + return nil, trace.BadParameter("invalid github integration %s", githubServer.GetGitHub().Integration) + } + + connectorSpec, err := igSpec.MakeConnectorSpec() + if err != nil { + return nil, trace.BadParameter("invalid github integration %s: %v", githubServer.GetGitHub().Integration, err) + } + + authRequest := types.GithubAuthRequest{ + ConnectorID: "integration-" + integration.GetName(), + ConnectorSpec: connectorSpec, + AuthenticatedUser: a.context.User.GetName(), + CertTTL: a.context.Identity.GetIdentity().Expires.Sub(a.authServer.clock.Now()), // TODO validate? + ClientRedirectURL: req.RedirectUrl, + ClientLoginIP: a.context.Identity.GetIdentity().LoginIP, + KubernetesCluster: req.CertRequest.KubernetesCluster, + SshPublicKey: req.CertRequest.SSHPublicKey, + TlsPublicKey: req.CertRequest.TLSPublicKey, + SshAttestationStatement: req.CertRequest.SSHPublicKeyAttestationStatement, + TlsAttestationStatement: req.CertRequest.TLSPublicKeyAttestationStatement, + Compatibility: req.CertRequest.Format, + } + resp, err := a.authServer.CreateGithubAuthRequest(ctx, authRequest) + if err != nil { + // TODO emit something else + // emitSSOLoginFailureEvent(a.authServer.closeCtx, a.authServer.emitter, events.LoginMethodGithub, err, req.SSOTestFlow) + return nil, trace.Wrap(err) + } + + return resp, nil +} + // GetGithubAuthRequest returns Github auth request if found. func (a *ServerWithRoles) GetGithubAuthRequest(ctx context.Context, stateToken string) (*types.GithubAuthRequest, error) { if err := a.action(apidefaults.Namespace, types.KindGithubRequest, types.VerbRead); err != nil { diff --git a/lib/auth/authclient/clt.go b/lib/auth/authclient/clt.go index 8452bcdbae4d6..b657bfb0b9a77 100644 --- a/lib/auth/authclient/clt.go +++ b/lib/auth/authclient/clt.go @@ -1861,6 +1861,7 @@ type ClientI interface { // TODO is there a better place for this? GenerateGitHubUserCert(ctx context.Context, in *integrationv1.GenerateGitHubUserCertRequest) (*integrationv1.GenerateGitHubUserCertResponse, error) + CreateGithubAuthRequestForUser(ctx context.Context, req *proto.CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) } type CreateAppSessionForV15Client interface { diff --git a/lib/auth/github.go b/lib/auth/github.go index ed80928ce7a68..55fc410237539 100644 --- a/lib/auth/github.go +++ b/lib/auth/github.go @@ -487,7 +487,7 @@ func validateGithubAuthCallbackHelper(ctx context.Context, m githubManager, diag } func (a *Server) getGithubConnectorAndClient(ctx context.Context, request types.GithubAuthRequest) (types.GithubConnector, *oauth2.Client, error) { - if request.SSOTestFlow { + if request.SSOTestFlow || request.AuthenticatedUser != "" { if request.ConnectorSpec == nil { return nil, nil, trace.BadParameter("ConnectorSpec cannot be nil when SSOTestFlow is true") } @@ -503,6 +503,7 @@ func (a *Server) getGithubConnectorAndClient(ctx context.Context, request types. } // construct client directly. + // TODO we should cache for AuthenticatedUser flow. config := newGithubOAuth2Config(connector) client, err := oauth2.NewClient(http.DefaultClient, config) if err != nil { @@ -566,6 +567,30 @@ func (a *Server) getGithubOAuth2Client(connector types.GithubConnector) (*oauth2 return client, nil } +func (a *Server) validateGithubAuthCallbackForAuthenticatedUser(ctx context.Context, code string, req *types.GithubAuthRequest) (*authclient.GithubAuthResponse, error) { + githubUser, err := a.getGithubUser(ctx, code, req) + if err != nil { + return nil, trace.Wrap(err) + } + + // Attach the new (but secondary) identity. + teleportUser, err := a.GetUser(ctx, req.AuthenticatedUser, false) + if err != nil { + return nil, trace.Wrap(err) + } + teleportUser.SetGithubIdentities(append(teleportUser.GetGithubIdentities(), githubUser.makeExternalIdentity(req.ConnectorID))) + + // Instead of updating the user, refresh the user login state. + userState, err := a.ulsGenerator.Refresh(ctx, teleportUser, a.UserLoginStates) + if err != nil { + return nil, trace.Wrap(err) + } + + // TODO this flow is not a login technically, should a.CallLoginHook be called? + // TODO what about existing access requests? + return a.makeGithubAuthResponse(ctx, req, userState, githubUser, req.CertTTL) +} + // ValidateGithubAuthCallback validates Github auth callback redirect func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODiagContext, q url.Values) (*authclient.GithubAuthResponse, error) { logger := log.WithFields(logrus.Fields{teleport.ComponentKey: "github"}) @@ -606,10 +631,15 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia } diagCtx.Info.TestFlow = req.SSOTestFlow + if req.AuthenticatedUser != "" { + return a.validateGithubAuthCallbackForAuthenticatedUser(ctx, code, req) + } + connector, client, err := a.getGithubConnectorAndClient(ctx, *req) if err != nil { return nil, trace.Wrap(err, "Failed to get GitHub connector and client.") } + diagCtx.Info.GithubTeamsToLogins = connector.GetTeamsToLogins() diagCtx.Info.GithubTeamsToRoles = connector.GetTeamsToRoles() logger.Debugf("Connector %q teams to logins: %v, roles: %v", connector.GetName(), connector.GetTeamsToLogins(), connector.GetTeamsToRoles()) @@ -642,6 +672,7 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia Roles: params.Roles, Traits: params.Traits, SessionTTL: types.Duration(params.SessionTTL), + UserID: params.UserID, } user, err := a.createGithubUser(ctx, params, req.SSOTestFlow) @@ -653,25 +684,30 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia return nil, trace.Wrap(err) } + // Auth was successful, return session, certificate, etc. to caller. userState, err := a.GetUserOrLoginState(ctx, user.GetName()) if err != nil { return nil, trace.Wrap(err) } - // Auth was successful, return session, certificate, etc. to caller. - auth := authclient.GithubAuthResponse{ - Req: GithubAuthRequestFromProto(req), - Identity: types.ExternalIdentity{ - ConnectorID: params.ConnectorName, - Username: params.Username, - }, - Username: user.GetName(), - } - // In test flow skip signing and creating web sessions. if req.SSOTestFlow { diagCtx.Info.Success = true - return &auth, nil + return &authclient.GithubAuthResponse{ + Req: GithubAuthRequestFromProto(req), + Identity: userResp.makeExternalIdentity(req.ConnectorID), + Username: userState.GetName(), + }, nil + } + + return a.makeGithubAuthResponse(ctx, req, userState, userResp, params.SessionTTL) +} + +func (a *Server) makeGithubAuthResponse(ctx context.Context, req *types.GithubAuthRequest, userState services.UserState, githubUser *GithubUserResponse, sessionTTL time.Duration) (*authclient.GithubAuthResponse, error) { + auth := authclient.GithubAuthResponse{ + Req: GithubAuthRequestFromProto(req), + Identity: githubUser.makeExternalIdentity(req.ConnectorID), + Username: userState.GetName(), } // If the request is coming from a browser, create a web session. @@ -680,7 +716,7 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia User: userState.GetName(), Roles: userState.GetRoles(), Traits: userState.GetTraits(), - SessionTTL: params.SessionTTL, + SessionTTL: sessionTTL, LoginTime: a.clock.Now().UTC(), LoginIP: req.ClientLoginIP, LoginUserAgent: req.ClientUserAgent, @@ -711,7 +747,7 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia if len(sshPublicKey)+len(tlsPublicKey) > 0 { sshCert, tlsCert, err := a.CreateSessionCerts(ctx, &SessionCertsRequest{ UserState: userState, - SessionTTL: params.SessionTTL, + SessionTTL: sessionTTL, SSHPubKey: sshPublicKey, TLSPubKey: tlsPublicKey, SSHAttestationStatement: sshAttestationStatement, @@ -747,6 +783,43 @@ func (a *Server) validateGithubAuthCallback(ctx context.Context, diagCtx *SSODia return &auth, nil } +func (a *Server) getGithubUser(ctx context.Context, code string, req *types.GithubAuthRequest) (*GithubUserResponse, error) { + logger := log.WithFields(logrus.Fields{teleport.ComponentKey: "github"}) + + connector, client, err := a.getGithubConnectorAndClient(ctx, *req) + if err != nil { + return nil, trace.Wrap(err, "Failed to get GitHub connector and client.") + } + + logger.Debugf("Connector %q for authenticated user %v", connector.GetName(), req.AuthenticatedUser) + + // exchange the authorization code received by the callback for an access token + token, err := client.RequestToken(oauth2.GrantTypeAuthCode, code) + if err != nil { + return nil, trace.Wrap(err, "Requesting GitHub OAuth2 token failed.") + } + + logger.Debugf("Obtained OAuth2 token: Type=%v Expires=%v Scope=%v.", + token.TokenType, token.Expires, token.Scope) + + // Get the Github organizations the user is a member of so we don't + // make unnecessary API requests + apiEndpoint, err := buildAPIEndpoint(connector.GetAPIEndpointURL()) + if err != nil { + return nil, trace.Wrap(err) + } + ghClient := &githubAPIClient{ + token: token.AccessToken, + authServer: a, + apiEndpoint: apiEndpoint, + } + userResp, err := ghClient.getUser() + if err != nil { + return nil, trace.Wrap(err, "failed to query GitHub user info") + } + return userResp, nil +} + func (a *Server) getGithubUserAndTeams( ctx context.Context, connector types.GithubConnector, @@ -848,12 +921,16 @@ type CreateUserParams struct { // SessionTTL is how long this session will last. SessionTTL time.Duration + + // UserID is the ID of the connector identity. + UserID string } func (a *Server) calculateGithubUser(ctx context.Context, diagCtx *SSODiagContext, connector types.GithubConnector, claims *types.GithubClaims, request *types.GithubAuthRequest) (*CreateUserParams, error) { p := CreateUserParams{ ConnectorName: connector.GetName(), Username: claims.Username, + UserID: claims.ID, } // Calculate logins, kubegroups, roles, and traits. @@ -917,6 +994,7 @@ func (a *Server) createGithubUser(ctx context.Context, p *CreateUserParams, dryR GithubIdentities: []types.ExternalIdentity{{ ConnectorID: p.ConnectorName, Username: p.Username, + UserID: p.UserID, }}, CreatedBy: types.CreatedBy{ User: types.UserRef{Name: teleport.UserSystem}, @@ -1076,6 +1154,7 @@ func populateGithubClaims(user *GithubUserResponse, teams []GithubTeamResponse) Username: user.Login, OrganizationToTeams: orgToTeams, Teams: teamList, + ID: user.getIDStr(), } log.WithFields(logrus.Fields{teleport.ComponentKey: "github"}).Debugf( "Claims: %#v.", claims) @@ -1097,6 +1176,20 @@ type githubAPIClient struct { type GithubUserResponse struct { // Login is the username Login string `json:"login"` + // ID is the user ID + ID int64 `json:"id"` +} + +func (r GithubUserResponse) getIDStr() string { + return fmt.Sprintf("%v", r.ID) +} + +func (r GithubUserResponse) makeExternalIdentity(connectorID string) types.ExternalIdentity { + return types.ExternalIdentity{ + ConnectorID: connectorID, + Username: r.Login, + UserID: r.getIDStr(), + } } // getEmails retrieves a list of emails for authenticated user diff --git a/lib/auth/gitserver/gitserverv1/service.go b/lib/auth/gitserver/gitserverv1/service.go index 7d50f122f9a79..84b8699e0e02d 100644 --- a/lib/auth/gitserver/gitserverv1/service.go +++ b/lib/auth/gitserver/gitserverv1/service.go @@ -96,7 +96,7 @@ func (s *Service) GetGitServer(ctx context.Context, req *gitserverv1.GetGitServe } func (s *Service) UpsertGitServer(ctx context.Context, req *gitserverv1.UpsertGitServerRequest) (*types.ServerV2, error) { - authCtx, err := s.authorize(ctx, types.VerbCreate, types.VerbUpdate) + _, err := s.authorize(ctx, types.VerbCreate, types.VerbUpdate) if err != nil { return nil, trace.Wrap(err) } @@ -106,19 +106,6 @@ func (s *Service) UpsertGitServer(ctx context.Context, req *gitserverv1.UpsertGi return nil, trace.Wrap(err) } - if err := s.checkAccess(authCtx, server); err != nil { - return nil, trace.Wrap(err) - } - - prev, err := s.cfg.Cache.GetGitServer(ctx, server.GetName()) - if err == nil { - if err := s.checkAccess(authCtx, prev); err != nil { - return nil, trace.Wrap(err) - } - } else if !trace.IsNotFound(err) { - s.cfg.Log.DebugContext(ctx, "Failed to GetGitServer.", "error", err) - } - upserted, err := s.cfg.Backend.UpsertGitServer(ctx, server) if err != nil { return nil, trace.Wrap(err) @@ -132,20 +119,10 @@ func (s *Service) UpsertGitServer(ctx context.Context, req *gitserverv1.UpsertGi } func (s *Service) DeleteGitServer(ctx context.Context, req *gitserverv1.DeleteGitServerRequest) (*emptypb.Empty, error) { - authCtx, err := s.authorize(ctx, types.VerbDelete) + _, err := s.authorize(ctx, types.VerbDelete) if err != nil { return nil, trace.Wrap(err) } - - prev, err := s.cfg.Cache.GetGitServer(ctx, req.GetName()) - if err != nil { - return nil, trace.Wrap(err) - } - - if err := s.checkAccess(authCtx, prev); err != nil { - return nil, trace.Wrap(err) - } - if err := s.cfg.Backend.DeleteGitServer(ctx, req.GetName()); err != nil { return nil, trace.Wrap(err) } diff --git a/lib/auth/grpcserver.go b/lib/auth/grpcserver.go index 75f34ff09e6ca..c93234c303562 100644 --- a/lib/auth/grpcserver.go +++ b/lib/auth/grpcserver.go @@ -2918,6 +2918,19 @@ func (g *GRPCServer) CreateGithubAuthRequest(ctx context.Context, req *types.Git return response, nil } +// TODO +func (g *GRPCServer) CreateGithubAuthRequestForUser(ctx context.Context, req *authpb.CreateGithubAuthRequestForUserRequest) (*types.GithubAuthRequest, error) { + auth, err := g.authenticate(ctx) + if err != nil { + return nil, trace.Wrap(err) + } + response, err := auth.CreateGithubAuthRequestForUser(ctx, req) + if err != nil { + return nil, trace.Wrap(err) + } + return response, nil +} + // GetGithubAuthRequest gets a GithubAuthRequest by id. func (g *GRPCServer) GetGithubAuthRequest(ctx context.Context, req *authpb.GetGithubAuthRequestRequest) (*types.GithubAuthRequest, error) { auth, err := g.authenticate(ctx) diff --git a/lib/auth/integration/integrationv1/service.go b/lib/auth/integration/integrationv1/service.go index 64a24e81540e7..0e3fdf86e49dd 100644 --- a/lib/auth/integration/integrationv1/service.go +++ b/lib/auth/integration/integrationv1/service.go @@ -156,7 +156,7 @@ func (s *Service) ListIntegrations(ctx context.Context, req *integrationpb.ListI return nil, trace.Wrap(err) } - results, nextKey, err := s.cache.ListIntegrations(ctx, int(req.GetLimit()), req.GetNextKey()) + results, nextKey, err := s.cache.ListIntegrations(ctx, int(req.GetLimit()), req.GetNextKey(), req.WithSecrets) if err != nil { return nil, trace.Wrap(err) } @@ -225,18 +225,19 @@ func (s *Service) CreateIntegration(ctx context.Context, req *integrationpb.Crea // TODO move to a helper? reqIg := req.GetIntegration() - if reqIg.GetSubKind() == types.IntegrationSubKindGitHub { - // TODO make your own purpose? - ca, err := s.keyStoreManager.NewSSHKeyPair(ctx, cryptosuites.UserCASSH) - if err != nil { - return nil, trace.Wrap(err) + switch reqIg.GetSubKind() { + case types.IntegrationSubKindGitHub: + spec := reqIg.GetGitHubIntegrationSpec() + if spec.Proxy == nil { + spec.Proxy = &types.GitHubProxy{} } // TODO(greedy52) support per auth CA like HSM. - if err := reqIg.SetGitHubSSHCertAuthority([]*types.SSHKeyPair{ca}); err != nil { + ca, err := s.keyStoreManager.NewSSHKeyPair(ctx, cryptosuites.UserCASSH) + if err != nil { return nil, trace.Wrap(err) } + spec.Proxy.CertAuthorities = append(spec.Proxy.CertAuthorities, ca) } - ig, err := s.backend.CreateIntegration(ctx, reqIg) if err != nil { return nil, trace.Wrap(err) @@ -401,6 +402,10 @@ func (s *Service) GenerateGitHubUserCert(ctx context.Context, in *integrationpb. return nil, trace.AccessDenied("GenerateGitHubUserCert is only available to proxy services") } + if in.Login == "" && in.UserId == "" { + return nil, trace.AccessDenied("one of github user login or id must be provided") + } + key, _, _, _, err := ssh.ParseAuthorizedKey(in.PublicKey) if err != nil { return nil, trace.Wrap(err) @@ -412,14 +417,9 @@ func (s *Service) GenerateGitHubUserCert(ctx context.Context, in *integrationpb. } spec := integration.GetGitHubIntegrationSpec() - /*TODO removed Enabled - if !spec.Proxy.Enabled { - return nil, trace.BadParameter("GitHub Proxy for integration %s is disabled", in.Integration) - } - */ caSigner, err := s.keyStoreManager.GetSSHSignerForKeySet(ctx, types.CAKeySet{ - SSH: spec.Proxy.CertAuthority, + SSH: spec.Proxy.CertAuthorities, }) if err != nil { return nil, trace.Wrap(err) @@ -435,9 +435,15 @@ func (s *Service) GenerateGitHubUserCert(ctx context.Context, in *integrationpb. KeyId: in.KeyId, ValidAfter: uint64(validAfter.Unix()), ValidBefore: uint64(expires.Unix()), + Permissions: ssh.Permissions{ + Extensions: make(map[string]string), + }, } - newSSHCert.Extensions = map[string]string{ - "login@github.com": in.Login, + switch { + case in.UserId != "": + newSSHCert.Extensions["id@github.com"] = in.UserId + case in.Login != "": + newSSHCert.Extensions["login@github.com"] = in.Login } if err := newSSHCert.SignCert(rand.Reader, caSigner); err != nil { return nil, trace.Wrap(err) diff --git a/lib/auth/keygen/keygen.go b/lib/auth/keygen/keygen.go index ce8a26dd78dfe..87a0c0c54ce10 100644 --- a/lib/auth/keygen/keygen.go +++ b/lib/auth/keygen/keygen.go @@ -218,6 +218,12 @@ func (k *Keygen) GenerateUserCertWithoutValidation(c services.UserCertParams) ([ if credID := c.DeviceCredentialID; credID != "" { cert.Permissions.Extensions[teleport.CertExtensionDeviceCredentialID] = credID } + if c.GitHubUserID != "" { + cert.Permissions.Extensions[teleport.CertExtensionGitHubUserID] = c.GitHubUserID + } + if c.GitHubUsername != "" { + cert.Permissions.Extensions[teleport.CertExtensionGitHubUsername] = c.GitHubUsername + } if c.PinnedIP != "" { if modules.GetModules().BuildType() != modules.BuildEnterprise { diff --git a/lib/auth/sessions.go b/lib/auth/sessions.go index 0b394e1450da4..41ca9f733406b 100644 --- a/lib/auth/sessions.go +++ b/lib/auth/sessions.go @@ -742,6 +742,8 @@ func (a *Server) CreateSessionCerts(ctx context.Context, req *SessionCertsReques routeToCluster: req.RouteToCluster, kubernetesCluster: req.KubernetesCluster, loginIP: req.LoginIP, + githubUserID: req.UserState.GetGitHubUserID(), + githubUsername: req.UserState.GetGitHubUsername(), }) if err != nil { return nil, nil, trace.Wrap(err) diff --git a/lib/auth/userloginstate/generator.go b/lib/auth/userloginstate/generator.go index 5b8551b392db4..696d879a83afc 100644 --- a/lib/auth/userloginstate/generator.go +++ b/lib/auth/userloginstate/generator.go @@ -145,6 +145,8 @@ func (g *Generator) Generate(ctx context.Context, user types.User) (*userloginst Roles: utils.CopyStrings(user.GetRoles()), Traits: traits, UserType: user.GetUserType(), + GitHubUserID: user.GetGitHubUserID(), + GitHubUsername: user.GetGitHubUsername(), }) if err != nil { return nil, trace.Wrap(err) diff --git a/lib/cache/cache.go b/lib/cache/cache.go index 679d31bb2561c..8e1046da496c0 100644 --- a/lib/cache/cache.go +++ b/lib/cache/cache.go @@ -2844,7 +2844,7 @@ func (c *Cache) GetOktaAssignment(ctx context.Context, name string) (types.OktaA } // ListIntegrations returns a paginated list of all Integrations resources. -func (c *Cache) ListIntegrations(ctx context.Context, pageSize int, nextKey string) ([]types.Integration, string, error) { +func (c *Cache) ListIntegrations(ctx context.Context, pageSize int, nextKey string, withSecrets bool) ([]types.Integration, string, error) { ctx, span := c.Tracer.Start(ctx, "cache/ListIntegrations") defer span.End() @@ -2853,7 +2853,8 @@ func (c *Cache) ListIntegrations(ctx context.Context, pageSize int, nextKey stri return nil, "", trace.Wrap(err) } defer rg.Release() - return rg.reader.ListIntegrations(ctx, pageSize, nextKey) + // TODO bypass cache when withSecrets = true and watch.LoadSecrets = false + return rg.reader.ListIntegrations(ctx, pageSize, nextKey, withSecrets) } // GetIntegration returns the specified Integration resources. diff --git a/lib/cache/collections.go b/lib/cache/collections.go index da46f5549c45e..cf153459827bd 100644 --- a/lib/cache/collections.go +++ b/lib/cache/collections.go @@ -2695,7 +2695,7 @@ func (integrationsExecutor) getAll(ctx context.Context, cache *Cache, loadSecret for { var igs []types.Integration var err error - igs, startKey, err = cache.Integrations.ListIntegrations(ctx, 0, startKey) + igs, startKey, err = cache.Integrations.ListIntegrations(ctx, 0, startKey, loadSecrets) if err != nil { return nil, trace.Wrap(err) } diff --git a/lib/client/api.go b/lib/client/api.go index c26045d5a40fa..a4baefda9cdd0 100644 --- a/lib/client/api.go +++ b/lib/client/api.go @@ -27,6 +27,7 @@ import ( "errors" "fmt" "io" + "log/slog" "net" "net/url" "os" @@ -739,6 +740,7 @@ func WithMakeCurrentProfile(makeCurrentProfile bool) RetryWithReloginOption { // IsErrorResolvableWithRelogin returns true if relogin is attempted on `err`. func IsErrorResolvableWithRelogin(err error) bool { + slog.InfoContext(context.Background(), "=== IsErrorResolvableWithRelogin", "err", err) // Private key policy errors indicate that the user must login with an // unexpected private key policy requirement satisfied. This can occur // in the following cases: @@ -1696,6 +1698,89 @@ func WithLocalCommandExecutor(executor func(string, []string) error) func(*SSHOp } } +// TODO +func (tc *TeleportClient) ReissueWithGitHubAuth(ctx context.Context, githubOrg string) error { + keyRing, err := tc.localAgent.GetKeyRing(tc.SiteName, WithAllCerts...) + if err != nil { + return trace.Wrap(err) + } + + clusterClient, err := tc.ConnectToCluster(ctx) + if err != nil { + return trace.Wrap(err) + } + defer clusterClient.Close() + + newUserKeys, certReq, err := clusterClient.prepareUserCertsRequest(ctx, ReissueParams{ + // TODO + //AccessRequests: profile.ActiveRequests.AccessRequests, + RouteToCluster: tc.SiteName, + RouteToGitServer: proto.RouteToGitServer{ + GitHubOrganization: githubOrg, + }, + }, keyRing) + + // TODO REFACTOR!!!! + sshLoginSSO := SSHLoginSSO{ + SSHLogin: SSHLogin{ + ProxyAddr: tc.WebProxyAddr, + /* No need to pass in request related fields since we are not gonna use SSHLogin for the actual request + SSHPubKey: certReq.SSHPublicKey, + TLSPubKey: certReq.TLSPublicKey, + SSHAttestationStatement: certReq.SSHPublicKeyAttestationStatement., + TLSAttestationStatement: certReq.TLSPublicKeyAttestationStatement, + */ + TTL: tc.KeyTTL, + Insecure: tc.InsecureSkipVerify, + Pool: loopbackPool(tc.WebProxyAddr), + Compatibility: tc.CertificateFormat, + RouteToCluster: tc.SiteName, + KubernetesCluster: tc.KubernetesCluster, + ExtraHeaders: tc.ExtraProxyHeaders, + }, + ConnectorID: "TODO", // is this needed? + ConnectorName: "TODO", // is this needed? + Protocol: constants.Github, + BindAddr: tc.BindAddr, + CallbackAddr: tc.CallbackAddr, + Browser: tc.Browser, + PrivateKeyPolicy: tc.PrivateKeyPolicy, + ProxySupportsKeyPolicyMessage: true, + } + + rootClient, err := clusterClient.ConnectToRootCluster(ctx) + if err != nil { + return trace.Wrap(err) + } + defer rootClient.Close() + + loginFunc := func(redirectorReq SSOLoginConsoleReq) (*SSOLoginConsoleResponse, error) { + authRequest, err := rootClient.CreateGithubAuthRequestForUser(ctx, &proto.CreateGithubAuthRequestForUserRequest{ + CertRequest: certReq, + RedirectUrl: redirectorReq.RedirectURL, + //ConnectorId: tc.ConnectorId, do we want this? + }) + if err != nil { + return nil, trace.Wrap(err) + } + return &SSOLoginConsoleResponse{ + RedirectURL: authRequest.RedirectURL, + }, nil + } + + resp, err := SSHAgentSSOLogin(ctx, sshLoginSSO, &RedirectorConfig{ + SSOLoginConsoleRequestFn: loginFunc, + }) + if err != nil { + return trace.Wrap(err) + } + + keyRing.ClusterName = tc.SiteName + keyRing.SSHPrivateKey = newUserKeys.ssh + keyRing.Cert = resp.Cert + return trace.Wrap(tc.localAgent.AddKeyRing(keyRing)) +} + // SSH connects to a node and, if 'command' is specified, executes the command on it, // otherwise runs interactive shell // @@ -4722,6 +4807,10 @@ func (tc *TeleportClient) AskOTP(ctx context.Context) (token string, err error) ) defer span.End() + // TODO(greedy52) move to proper place? + closeFunc := maybeUseTTYAsStdinFallback() + defer closeFunc() + stdin := prompt.Stdin() if !stdin.IsTerminal() { return "", trace.Wrap(prompt.ErrNotTerminal, "cannot perform OTP login without a terminal") @@ -4738,6 +4827,10 @@ func (tc *TeleportClient) AskPassword(ctx context.Context) (pwd string, err erro ) defer span.End() + // TODO(greedy52) move to proper place? + closeFunc := maybeUseTTYAsStdinFallback() + defer closeFunc() + stdin := prompt.Stdin() if !stdin.IsTerminal() { return "", trace.Wrap(prompt.ErrNotTerminal, "cannot perform password login without a terminal") @@ -4746,6 +4839,36 @@ func (tc *TeleportClient) AskPassword(ctx context.Context) (pwd string, err erro ctx, tc.Stderr, stdin, fmt.Sprintf("Enter password for Teleport user %v", tc.Config.Username)) } +// TODO(greedy52) move to proper place? +func maybeUseTTYAsStdinFallback() func() { + if prompt.Stdin().IsTerminal() { + return func() {} + } + + tty, err := os.Open("/dev/tty") + if err != nil { + log.Warn("Cannot open /dev/tty.") + return func() {} + } + + // Check if IsTerminal just to be safe. + cr := prompt.NewContextReader(tty) + if !cr.IsTerminal() { + defer tty.Close() + log.Warn("/dev/tty is not terminal.") + return func() {} + } + + go cr.HandleInterrupt() + oldStdin := prompt.Stdin() + prompt.SetStdin(cr) + + return func() { + prompt.SetStdin(oldStdin) + tty.Close() + } +} + // LoadTLSConfig returns the user's TLS configuration, either from static // configuration or from its key store. func (tc *TeleportClient) LoadTLSConfig() (*tls.Config, error) { diff --git a/lib/client/cluster_client.go b/lib/client/cluster_client.go index e1badd7184426..95eda5f2c94f6 100644 --- a/lib/client/cluster_client.go +++ b/lib/client/cluster_client.go @@ -693,8 +693,6 @@ func PerformMFACeremony(ctx context.Context, params PerformMFACeremonyParams) (* return nil, nil, trace.Wrap(ceremonyFailedErr{err}) } - log.Debugf("==== params.MFAPrompt.Run resp %v", authnSolved) - // Issue certificate. certsReq := params.CertsReq certsReq.MFAResponse = authnSolved diff --git a/lib/client/profile.go b/lib/client/profile.go index e335cd62e5137..7f8560524d753 100644 --- a/lib/client/profile.go +++ b/lib/client/profile.go @@ -22,6 +22,7 @@ import ( "net/url" "os" "path/filepath" + "slices" "sort" "sync" "time" @@ -242,6 +243,10 @@ type ProfileStatus struct { // SAMLSingleLogoutEnabled is whether SAML SLO (single logout) is enabled, this can only be true if this is a SAML SSO session // using an auth connector with a SAML SLO URL configured. SAMLSingleLogoutEnabled bool + + //TODO + GitHubUserID string + GitHubUsername string } // profileOptions contains fields needed to initialize a profile beyond those @@ -312,6 +317,8 @@ func profileStatusFromKeyRing(keyRing *KeyRing, opts profileOptions) (*ProfileSt ext == teleport.CertExtensionTeleportTraits || ext == teleport.CertExtensionTeleportRouteToCluster || ext == teleport.CertExtensionTeleportActiveRequests || + ext == teleport.CertExtensionGitHubUserID || + ext == teleport.CertExtensionGitHubUsername || ext == teleport.CertExtensionAllowedResources { continue } @@ -348,6 +355,12 @@ func profileStatusFromKeyRing(keyRing *KeyRing, opts profileOptions) (*ProfileSt } } + githubUserID := sshCert.Extensions[teleport.CertExtensionGitHubUserID] + githubUsername := sshCert.Extensions[teleport.CertExtensionGitHubUsername] + logins := slices.DeleteFunc(sshCert.ValidPrincipals, func(login string) bool { + return githubUserID != "" && githubUserID == login + }) + return &ProfileStatus{ Name: opts.ProfileName, Dir: opts.ProfileDir, @@ -356,7 +369,7 @@ func profileStatusFromKeyRing(keyRing *KeyRing, opts profileOptions) (*ProfileSt Host: opts.WebProxyAddr, }, Username: opts.Username, - Logins: sshCert.ValidPrincipals, + Logins: logins, ValidUntil: validUntil, Extensions: extensions, CriticalOptions: sshCert.CriticalOptions, @@ -375,6 +388,8 @@ func profileStatusFromKeyRing(keyRing *KeyRing, opts profileOptions) (*ProfileSt IsVirtual: opts.IsVirtual, AllowedResourceIDs: allowedResourceIDs, SAMLSingleLogoutEnabled: opts.SAMLSingleLogoutEnabled, + GitHubUserID: githubUserID, + GitHubUsername: githubUsername, }, nil } diff --git a/lib/proxy/router.go b/lib/proxy/router.go index 945ec8ead42e6..1a727a3058c99 100644 --- a/lib/proxy/router.go +++ b/lib/proxy/router.go @@ -439,6 +439,7 @@ func getServer(ctx context.Context, host, port string, site site) (types.Server, var disableUnqualifiedLookups = os.Getenv("TELEPORT_UNSTABLE_DISABLE_UNQUALIFIED_LOOKUPS") == "yes" func getGitHubServer(ctx context.Context, org string, site site) (types.Server, error) { + slog.DebugContext(ctx, "=== getGitHubServer", "org", org) servers, err := site.GetGitServers(ctx, func(s services.GitServer) bool { github := s.GetGitHub() return github != nil && github.Organization == org @@ -464,6 +465,7 @@ func getServerWithResolver(ctx context.Context, host, port string, site site, re return nil, trace.BadParameter("invalid remote site provided") } + slog.DebugContext(ctx, "=== getServerWithResolver", "host", host) if strings.HasSuffix(host, "."+types.GitHubServerDomain) { return getGitHubServer(ctx, strings.TrimSuffix(host, "."+types.GitHubServerDomain), site) } diff --git a/lib/services/access_checker.go b/lib/services/access_checker.go index 219ef2d7edd8b..304414467f114 100644 --- a/lib/services/access_checker.go +++ b/lib/services/access_checker.go @@ -771,21 +771,6 @@ func (a *accessChecker) EnumerateEntities(resource AccessCheckable, listFn roleE // - types.KindWindowsDesktop // - types.KindApp with IsAWSConsole() == true func (a *accessChecker) GetAllowedLoginsForResource(resource AccessCheckable) ([]string, error) { - // Some logins are soly based on Traits instead of RoleSet. - switch resource.GetKind() { - case types.KindGitServer: - - switch resource.GetSubKind() { - case types.SubKindGitHub: - if err := a.CheckAccess(resource, AccessState{MFAVerified: true}); err != nil { - return nil, trace.Wrap(err) - } - return a.info.Traits[constants.TraitGitHubUsername], nil - default: - return nil, trace.BadParameter("received unsupported subkind for git_server: %v", resource.GetSubKind()) - } - } - // Create a map indexed by all logins in the RoleSet, // mapped to false if any role has it in its deny section, // true otherwise. @@ -1359,6 +1344,11 @@ type UserState interface { // IsBot returns true if the user belongs to a bot. IsBot() bool + + // GetGitHubUserID finds a GitHub user ID from connected identities. + GetGitHubUserID() string + // GetGitHubUsername finds a GitHub username from connected identities. + GetGitHubUsername() string } // AccessInfoFromUser return a new AccessInfo populated from the roles and diff --git a/lib/services/authority.go b/lib/services/authority.go index fdcc8d40820d2..3f0a5214afff0 100644 --- a/lib/services/authority.go +++ b/lib/services/authority.go @@ -396,6 +396,12 @@ type UserCertParams struct { // DeviceCredentialID is the identifier for the credential used by the device // to authenticate itself. DeviceCredentialID string + // GitHubUserID indicates the GitHub user ID identified by the GitHub + // identity connector. + GitHubUserID string + // GitHubUsername indicates the GitHub username identified by the GitHub + // identity connector. + GitHubUsername string } // CheckAndSetDefaults checks the user certificate parameters diff --git a/lib/services/integration.go b/lib/services/integration.go index e4d45cba0db59..2bf556dec7766 100644 --- a/lib/services/integration.go +++ b/lib/services/integration.go @@ -44,7 +44,7 @@ type Integrations interface { // IntegrationsGetter defines methods for List/Read operations on Integration Resources. type IntegrationsGetter interface { // ListIntegrations returns a paginated list of all integration resources. - ListIntegrations(ctx context.Context, pageSize int, nextToken string) ([]types.Integration, string, error) + ListIntegrations(ctx context.Context, pageSize int, nextToken string, withSecrets bool) ([]types.Integration, string, error) // GetIntegration returns the specified integration resources. GetIntegration(ctx context.Context, name string, withSecrets bool) (types.Integration, error) } diff --git a/lib/services/local/integrations.go b/lib/services/local/integrations.go index f19d2d11f6c10..e65639d8fa8ef 100644 --- a/lib/services/local/integrations.go +++ b/lib/services/local/integrations.go @@ -76,25 +76,17 @@ func NewIntegrationsService(backend backend.Backend, opts ...IntegrationsService } // ListIntegrations returns a paginated list of Integration resources. -func (s *IntegrationsService) ListIntegrations(ctx context.Context, pageSize int, pageToken string) ([]types.Integration, string, error) { +func (s *IntegrationsService) ListIntegrations(ctx context.Context, pageSize int, pageToken string, withSecrets bool) ([]types.Integration, string, error) { igs, nextKey, err := s.svc.ListResources(ctx, pageSize, pageToken) if err != nil { return nil, "", trace.Wrap(err) } - /* TODO fix cache? - for _, ig := range igs { - switch ig.GetSubKind() { - case types.IntegrationSubKindGitHub: - if ig.GetGitHubIntegrationSpec().Proxy != nil { - cas := ig.GetGitHubIntegrationSpec().Proxy.CertAuthority - for _, ca := range cas { - ca.PrivateKey = nil - } - ig.SetGitHubSSHCertAuthority(cas) - } + + if !withSecrets { + for i, ig := range igs { + igs[i] = ig.WithoutSecrets() } } - */ return igs, nextKey, nil } @@ -107,16 +99,7 @@ func (s *IntegrationsService) GetIntegration(ctx context.Context, name string, w } if !withSecrets { - switch ig.GetSubKind() { - case types.IntegrationSubKindGitHub: - if ig.GetGitHubIntegrationSpec().Proxy != nil { - cas := ig.GetGitHubIntegrationSpec().Proxy.CertAuthority - for _, ca := range cas { - ca.PrivateKey = nil - } - ig.SetGitHubSSHCertAuthority(cas) - } - } + return ig.WithoutSecrets(), nil } return ig, nil diff --git a/lib/services/local/presence.go b/lib/services/local/presence.go index 3938cf47fe047..ad29662e5b1e9 100644 --- a/lib/services/local/presence.go +++ b/lib/services/local/presence.go @@ -20,7 +20,6 @@ package local import ( "context" - "log/slog" "sort" "time" @@ -396,7 +395,6 @@ func (s *PresenceService) GetGitServer(ctx context.Context, name string) (types. } func (s *PresenceService) GetGitServers(ctx context.Context) ([]types.Server, error) { servers, err := s.getServers(ctx, types.KindGitServer, gitServerPrefix) - slog.DebugContext(ctx, "=== local.GetGitServers", "servers", servers, "error", err) return servers, trace.Wrap(err) } func (s *PresenceService) DeleteGitServer(ctx context.Context, name string) error { diff --git a/lib/services/presets.go b/lib/services/presets.go index b9c134197c288..15015090b17c7 100644 --- a/lib/services/presets.go +++ b/lib/services/presets.go @@ -181,6 +181,7 @@ func NewPresetEditorRole() types.Role { types.NewRule(types.KindSPIFFEFederation, RW()), types.NewRule(types.KindNotification, RW()), types.NewRule(types.KindStaticHostUser, RW()), + types.NewRule(types.KindGitServer, RW()), }, }, }, @@ -240,6 +241,9 @@ func NewPresetAccessRole() types.Role { types.NewRule(types.KindInstance, RO()), types.NewRule(types.KindClusterMaintenanceConfig, RO()), }, + GithubPermissions: []types.GitHubPermission{{ + Organizations: []string{teleport.TraitInternalGitHubOrgs}, + }}, }, }, } diff --git a/lib/srv/authhandlers.go b/lib/srv/authhandlers.go index d80f5704acfe4..2cf69b78b8894 100644 --- a/lib/srv/authhandlers.go +++ b/lib/srv/authhandlers.go @@ -233,6 +233,7 @@ func (h *AuthHandlers) CreateIdentityContext(sconn *ssh.ServerConn) (IdentityCon } identity.PreviousIdentityExpires = asTime } + identity.GitHubUserID = certificate.Extensions[teleport.CertExtensionGitHubUserID] return identity, nil } @@ -475,8 +476,12 @@ func (h *AuthHandlers) UserKeyAuth(conn ssh.ConnMetadata, key ssh.PublicKey) (*s // exists and it is an agentless node, preform an RBAC check. // Otherwise if the target node does not exist the node is // probably an unregistered SSH node; do not preform an RBAC check - if h.c.TargetServer != nil && h.c.TargetServer.IsOpenSSHNode() { - err = h.canLoginWithRBAC(cert, ca, clusterName.GetClusterName(), h.c.TargetServer, teleportUser, conn.User()) + if h.c.TargetServer != nil { + switch { + case h.c.TargetServer.IsOpenSSHNode(), + h.c.TargetServer.GetGitHub() != nil: + err = h.canLoginWithRBAC(cert, ca, clusterName.GetClusterName(), h.c.TargetServer, teleportUser, conn.User()) + } } } else { // the SSH server is a Teleport node, preform an RBAC check now @@ -663,11 +668,28 @@ func (a *ahLoginChecker) canLoginWithRBAC(cert *ssh.Certificate, ca types.CertAu state.EnableDeviceVerification = true state.DeviceVerified = dtauthz.IsSSHDeviceVerified(cert) + // TODO refactor to services? + roleMatchers := []services.RoleMatcher{} + switch { + case target.GetGitHub() != nil: + switch cert.Extensions[teleport.CertExtensionGitHubUserID] { + case "": + return trace.AccessDenied("user %s@%s has no github user associated", teleportUser, ca.GetClusterName()) + case osUser: + // yes + default: + return trace.AccessDenied("user %s@%s is not authorized to impersonate github user %s", teleportUser, ca.GetClusterName(), osUser) + } + + default: + roleMatchers = append(roleMatchers, services.NewLoginMatcher(osUser)) + } + // check if roles allow access to server if err := accessChecker.CheckAccess( target, state, - services.NewLoginMatcher(osUser), + roleMatchers..., ); err != nil { return trace.AccessDenied("user %s@%s is not authorized to login as %v@%s: %v", teleportUser, ca.GetClusterName(), osUser, clusterName, err) diff --git a/lib/srv/ctx.go b/lib/srv/ctx.go index d5886439f547c..ec8e9abbe2b3e 100644 --- a/lib/srv/ctx.go +++ b/lib/srv/ctx.go @@ -250,6 +250,9 @@ type IdentityContext struct { // deadline in cases where both require_session_mfa and disconnect_expired_cert // are enabled. See https://github.com/gravitational/teleport/issues/18544. PreviousIdentityExpires time.Time + + // TODO + GitHubUserID string } // ServerContext holds session specific context, such as SSH auth agents, PTYs, @@ -1096,6 +1099,7 @@ func (id *IdentityContext) GetUserMetadata() apievents.UserMetadata { UserKind: userKind, BotName: id.BotName, BotInstanceID: id.BotInstanceID, + // TODO add github user id } } diff --git a/lib/srv/exec.go b/lib/srv/exec.go index c7e5b2b34d1aa..20ea548e4bb40 100644 --- a/lib/srv/exec.go +++ b/lib/srv/exec.go @@ -97,6 +97,15 @@ type Exec interface { // NewExecRequest creates a new local or remote Exec. func NewExecRequest(ctx *ServerContext, command string) (Exec, error) { + // Always remote for git proxies. + if ctx.ServerSubKind == types.SubKindGitHub { + return &remoteExec{ + ctx: ctx, + command: command, + session: ctx.RemoteSession, + }, nil + } + // It doesn't matter what mode the cluster is in, if this is a Teleport node // return a local *localExec. if ctx.srv.Component() == teleport.ComponentNode { @@ -393,8 +402,28 @@ func (e *remoteExec) Start(ctx context.Context, ch ssh.Channel) (*ExecResult, er // Is there a better place? switch e.ctx.ServerSubKind { case types.SubKindGitHub: + command, path, err := parseGitCommand(e.GetCommand()) + if err != nil { + return nil, trace.Wrap(err, "failed to parse git command", "command", e.GetCommand()) + } + + // TODO move this to parseGitCommand + org, _, ok := strings.Cut(path, "/") + if !ok { + return nil, trace.Wrap(err, "failed to parse git command", "command", e.GetCommand()) + } + + spec := e.ctx.GetServer().GetInfo().GetGitHub() + if spec == nil { + return nil, trace.BadParameter("missing github spec for github server") + } + + if spec.Organization != org { + return nil, trace.AccessDenied("expect organization %v but got %v", spec.Organization, org) + } + e.gitHubAuditor = &gitHubAuditor{ - isPush: strings.HasPrefix(e.GetCommand(), gittransport.ReceivePackServiceName), + isPush: command == gittransport.ReceivePackServiceName, } inputWriter = io.MultiWriter(inputWriter, e.gitHubAuditor) } diff --git a/lib/srv/forward/sshserver.go b/lib/srv/forward/sshserver.go index 26012a627d209..8d1fb33aeeb81 100644 --- a/lib/srv/forward/sshserver.go +++ b/lib/srv/forward/sshserver.go @@ -26,6 +26,7 @@ import ( "io" "log/slog" "net" + "slices" "strings" "time" @@ -515,6 +516,7 @@ func (s *Server) GetInfo() types.Server { Addr: s.AdvertiseAddr(), } if s.targetServer != nil { + spec.Hostname = s.targetServer.GetHostname() spec.GitHub = s.targetServer.GetGitHub() } @@ -696,6 +698,9 @@ func (s *Server) getSSHSignerForGitHub(ctx context.Context) (ssh.Signer, error) if spec == nil || spec.Integration == "" { return nil, trace.BadParameter("GitHub server %s missing integration", s.targetServer) } + if s.identityContext.GitHubUserID == "" { + return nil, trace.BadParameter("user no associated github user") + } // generate a new key pair priv, err := native.GeneratePrivateKey() @@ -703,17 +708,10 @@ func (s *Server) getSSHSignerForGitHub(ctx context.Context) (ssh.Signer, error) return nil, trace.Wrap(err) } - logins, err := s.identityContext.AccessChecker.GetAllowedLoginsForResource(s.targetServer) - if err != nil { - return nil, trace.Wrap(err) - } - if len(logins) == 0 { - return nil, trace.NotFound("no github login found") - } resp, err := s.authClient.GenerateGitHubUserCert(ctx, &integrationv1.GenerateGitHubUserCertRequest{ Integration: spec.Integration, PublicKey: priv.MarshalSSHPublicKey(), - Login: logins[0], + UserId: s.identityContext.GitHubUserID, KeyId: s.identityContext.TeleportUser, Ttl: durationpb.New(10 * time.Duration(time.Minute)), }) @@ -798,16 +796,30 @@ func (s *Server) Close() error { return trace.NewAggregate(errs...) } +// https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints +var knownGithubDotComFingerprints = []string{ + "SHA256:uNiVztksCsDhcc0u9e8BujQXVUpKZIDTMczCvj3tD2s", + "SHA256:br9IjFspm1vxR3iA35FWE+4VTyz1hYVLIE2t1/CeyWQ", + "SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM", + "SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU", +} + // newRemoteClient creates and returns a *ssh.Client and *ssh.Session // with a remote host. func (s *Server) newRemoteClient(ctx context.Context, systemLogin string, netConfig types.ClusterNetworkingConfig) (*tracessh.Client, error) { - // TODO(greedy52) beautify and add github host validation. + // TODO(greedy52) beautify and retrive github fingerprints with API. hostKeyCallback := s.authHandlers.HostKeyAuth if s.targetServer != nil && s.targetServer.GetKind() == types.KindGitServer && s.targetServer.GetSubKind() == types.SubKindGitHub { - hostKeyCallback = ssh.InsecureIgnoreHostKey() systemLogin = "git" + hostKeyCallback = func(hostname string, remote net.Addr, key ssh.PublicKey) error { + actualFingerprint := ssh.FingerprintSHA256(key) + if slices.Contains(knownGithubDotComFingerprints, actualFingerprint) { + return nil + } + return trace.BadParameter("cannot verify github.com: unknown fingerprint %v algo %v", actualFingerprint, key.Type()) + } } // the proxy will use the agentless signer as the auth method when diff --git a/lib/utils/utils.go b/lib/utils/utils.go index b1931e2ae8cf4..f984ae4b6b34f 100644 --- a/lib/utils/utils.go +++ b/lib/utils/utils.go @@ -402,7 +402,9 @@ func IsHandshakeFailedError(err error) bool { if err == nil { return false } - return strings.Contains(trace.Unwrap(err).Error(), "ssh: handshake failed") + // TODO(greedy52) investigate this + errStr := trace.Unwrap(err).Error() + return strings.Contains(errStr, "ssh: handshake failed") && !strings.Contains(errStr, "(ssh: handshake failed") } // IsCertExpiredError specifies whether this error indicates diff --git a/lib/web/apiserver.go b/lib/web/apiserver.go index 2f140efc09b11..185a66d4d7968 100644 --- a/lib/web/apiserver.go +++ b/lib/web/apiserver.go @@ -1050,6 +1050,9 @@ func (h *Handler) bindDefaultEndpoints() { h.PUT("/webapi/sites/:site/lastseennotification", h.WithClusterAuth(h.notificationsUpsertLastSeenTimestamp)) // Upsert a notification state when to mark a notification as read or hide it. h.PUT("/webapi/sites/:site/notificationstate", h.WithClusterAuth(h.notificationsUpsertNotificationState)) + + // Git Servers + h.POST("/webapi/sites/:site/gitserver", h.WithClusterAuth(h.handleGitServerCreate)) } // GetProxyClient returns authenticated auth server client diff --git a/lib/web/integrations.go b/lib/web/integrations.go index 4cea1ebeee48d..56039f01dd35d 100644 --- a/lib/web/integrations.go +++ b/lib/web/integrations.go @@ -76,6 +76,13 @@ func (h *Handler) integrationsCreate(w http.ResponseWriter, r *http.Request, p h }, &types.GitHubIntegrationSpecV1{ Organization: req.GitHub.Organization, + Proxy: &types.GitHubProxy{ + Connector: &types.GitHubProxyConnector{ + ClientID: req.GitHub.ConnectorClientID, + ClientSecret: req.GitHub.ConnectorClientSecret, + RedirectURL: req.GitHub.ConnectorRedirectURL, + }, + }, }, ) if err != nil { @@ -222,7 +229,7 @@ func (h *Handler) integrationsList(w http.ResponseWriter, r *http.Request, p htt startKey := values.Get("startKey") - igs, nextKey, err := clt.ListIntegrations(r.Context(), int(limit), startKey) + igs, nextKey, err := clt.ListIntegrations(r.Context(), int(limit), startKey, false) if err != nil { return nil, trace.Wrap(err) } diff --git a/lib/web/servers.go b/lib/web/servers.go index 62919e6194637..a1c749251c384 100644 --- a/lib/web/servers.go +++ b/lib/web/servers.go @@ -350,6 +350,30 @@ type desktopIsActive struct { Active bool `json:"active"` } +type createGitServerRequest struct { + SubKind string `json:"subKind,omitempty"` + GitHub *ui.GitHubServerMetadata `json:"github,omitempty"` +} + +func (r *createGitServerRequest) checkAndSetDefaults() error { + switch r.SubKind { + case types.SubKindGitHub: + if r.GitHub == nil { + return trace.BadParameter("missing github metadata for GitHub server") + } + if r.GitHub.Integration == "" { + return trace.BadParameter("missing integration for GitHub server") + } + if r.GitHub.Organization == "" { + return trace.BadParameter("missing organization for GitHub server") + } + return nil + + default: + return trace.BadParameter("invalid subkind %q, only %q is supported", r.SubKind, types.SubKindOpenSSHEICENode) + } +} + // createNodeRequest contains the required information to create a Node. type createNodeRequest struct { Name string `json:"name,omitempty"` @@ -385,6 +409,43 @@ func (r *createNodeRequest) checkAndSetDefaults() error { return nil } +func (h *Handler) handleGitServerCreate(w http.ResponseWriter, r *http.Request, p httprouter.Params, sctx *SessionContext, site reversetunnelclient.RemoteSite) (interface{}, error) { + ctx := r.Context() + + var req *createGitServerRequest + if err := httplib.ReadJSON(r, &req); err != nil { + return nil, trace.Wrap(err) + } + + if err := req.checkAndSetDefaults(); err != nil { + return nil, trace.Wrap(err) + } + + clt, err := sctx.GetUserClient(ctx, site) + if err != nil { + return nil, trace.Wrap(err) + } + + server, err := types.NewGitServer( + req.SubKind, + types.ServerSpecV2{ + GitHub: &types.GitHubServerMetadata{ + Organization: req.GitHub.Organization, + Integration: req.GitHub.Integration, + }, + }, + ) + if err != nil { + return nil, trace.Wrap(err) + } + + if _, err := clt.UpsertGitServer(ctx, server); err != nil { + return nil, trace.Wrap(err) + } + + return ui.MakeServer(site.GetName(), server, nil /*logins*/, false /* requiresRequest */), nil +} + // handleNodeCreate creates a Teleport Node. func (h *Handler) handleNodeCreate(w http.ResponseWriter, r *http.Request, p httprouter.Params, sctx *SessionContext, site reversetunnelclient.RemoteSite) (interface{}, error) { ctx := r.Context() diff --git a/lib/web/ui/integration.go b/lib/web/ui/integration.go index 48dace559d297..81e31f9cc4123 100644 --- a/lib/web/ui/integration.go +++ b/lib/web/ui/integration.go @@ -55,7 +55,10 @@ func (r *IntegrationAWSOIDCSpec) CheckAndSetDefaults() error { } type IntegrationGitHub struct { - Organization string `json:"organization"` + Organization string `json:"organization"` + ConnectorClientID string `json:"connectorClientID"` + ConnectorClientSecret string `json:"connectorClientSecret"` + ConnectorRedirectURL string `json:"connectorRedirectURL"` PublicKeys []string `json:"publicKeys,omitempty"` Fingerprints []string `json:"fingerprints,omitempty"` @@ -174,17 +177,17 @@ func MakeIntegration(ig types.Integration) (*Integration, error) { return nil, trace.BadParameter("missing github spec from created integration %v", ig) } - if github.Proxy == nil || len(github.Proxy.CertAuthority) == 0 { + if github.Proxy == nil || len(github.Proxy.CertAuthorities) == 0 { return nil, trace.BadParameter("missing SSH certificate authorities from created integration %v", ig) } ret.GitHub = &IntegrationGitHub{ Organization: github.Organization, - PublicKeys: make([]string, 0, len(github.Proxy.CertAuthority)), - Fingerprints: make([]string, 0, len(github.Proxy.CertAuthority)), + PublicKeys: make([]string, 0, len(github.Proxy.CertAuthorities)), + Fingerprints: make([]string, 0, len(github.Proxy.CertAuthorities)), } - for _, ca := range github.Proxy.CertAuthority { + for _, ca := range github.Proxy.CertAuthorities { fingerprint, err := sshutils.AuthorizedKeyFingerprint(ca.PublicKey) if err != nil { return nil, trace.BadParameter("failed to parse public from created integration: %v", ig) diff --git a/lib/web/ui/server.go b/lib/web/ui/server.go index 21e36af2c8444..2319aea62fb89 100644 --- a/lib/web/ui/server.go +++ b/lib/web/ui/server.go @@ -76,6 +76,9 @@ type AWSMetadata struct { SubnetID string `json:"subnetId"` } +// GitHubServerMetadata defines server metadata for GitHub server. +type GitHubServerMetadata types.GitHubServerMetadata + // sortedLabels is a sort wrapper that sorts labels by name type sortedLabels []Label diff --git a/tool/tctl/common/resource_command.go b/tool/tctl/common/resource_command.go index 5212cdb3a92ef..c11bb0c131977 100644 --- a/tool/tctl/common/resource_command.go +++ b/tool/tctl/common/resource_command.go @@ -1346,6 +1346,8 @@ func (rc *ResourceCommand) createIntegration(ctx context.Context, client *authcl switch integration.GetSubKind() { case types.IntegrationSubKindAWSOIDC: existingIntegration.SetAWSOIDCIntegrationSpec(integration.GetAWSOIDCIntegrationSpec()) + case types.IntegrationSubKindGitHub: + existingIntegration.SetGitHubIntegrationSpec(integration.GetGitHubIntegrationSpec()) default: return trace.BadParameter("subkind %q is not supported", integration.GetSubKind()) } @@ -2843,7 +2845,7 @@ func (rc *ResourceCommand) getCollection(ctx context.Context, client *authclient var err error var nextKey string for { - igs, nextKey, err = client.ListIntegrations(ctx, 0, nextKey) + igs, nextKey, err = client.ListIntegrations(ctx, 0, nextKey, rc.withSecrets) if err != nil { return nil, trace.Wrap(err) } diff --git a/tool/tctl/common/user_command.go b/tool/tctl/common/user_command.go index dcd5ab1a9e915..cd2bf1346d58a 100644 --- a/tool/tctl/common/user_command.go +++ b/tool/tctl/common/user_command.go @@ -66,8 +66,6 @@ type UserCommand struct { hostUserUIDProvided bool hostUserGID string hostUserGIDProvided bool - gitHubUsername string - gitHubUsernameProvided bool allowedGitHubOrgs []string ttl time.Duration @@ -104,7 +102,6 @@ func (u *UserCommand) Initialize(app *kingpin.Application, config *servicecfg.Co u.userAdd.Flag("gcp-service-accounts", "List of allowed GCP service accounts for the new user").StringsVar(&u.allowedGCPServiceAccounts) u.userAdd.Flag("host-user-uid", "UID for auto provisioned host users to use").IsSetByUser(&u.hostUserUIDProvided).StringVar(&u.hostUserUID) u.userAdd.Flag("host-user-gid", "GID for auto provisioned host users to use").IsSetByUser(&u.hostUserGIDProvided).StringVar(&u.hostUserGID) - u.userAdd.Flag("github-username", "GitHub username to use for GitHub integrations").IsSetByUser(&u.gitHubUsernameProvided).StringVar(&u.gitHubUsername) u.userAdd.Flag("github-orgs", "List of allowed GitHub organizations").StringsVar(&u.allowedGitHubOrgs) u.userAdd.Flag("roles", "List of roles for the new user to assume").Required().StringsVar(&u.allowedRoles) @@ -141,7 +138,6 @@ func (u *UserCommand) Initialize(app *kingpin.Application, config *servicecfg.Co StringsVar(&u.allowedGCPServiceAccounts) u.userUpdate.Flag("set-host-user-uid", "UID for auto provisioned host users to use. Value can be reset by providing an empty string").IsSetByUser(&u.hostUserUIDProvided).StringVar(&u.hostUserUID) u.userUpdate.Flag("set-host-user-gid", "GID for auto provisioned host users to use. Value can be reset by providing an empty string").IsSetByUser(&u.hostUserGIDProvided).StringVar(&u.hostUserGID) - u.userUpdate.Flag("set-github-username", "GitHub username to use for GitHub integrations. Value can be reset by providing an empty string.").IsSetByUser(&u.gitHubUsernameProvided).StringVar(&u.gitHubUsername) u.userUpdate.Flag("set-github-orgs", "List of allowed GitHub organizations").StringsVar(&u.allowedGitHubOrgs) u.userList = users.Command("ls", "Lists all user accounts.") @@ -294,7 +290,6 @@ func (u *UserCommand) Add(ctx context.Context, client *authclient.Client) error constants.TraitGCPServiceAccounts: gcpServiceAccounts, constants.TraitHostUserUID: {u.hostUserUID}, constants.TraitHostUserGID: {u.hostUserGID}, - constants.TraitGitHubUsername: {u.gitHubUsername}, constants.TraitGitHubOrganizations: flattenSlice(u.allowedGitHubOrgs), } @@ -474,10 +469,6 @@ func (u *UserCommand) Update(ctx context.Context, client *authclient.Client) err user.SetHostUserGID(u.hostUserGID) updateMessages["Host user GID"] = []string{u.hostUserGID} } - if u.gitHubUsernameProvided { - user.SetGitHubUsername(u.gitHubUsername) - updateMessages["GitHub username"] = []string{u.gitHubUsername} - } if len(u.allowedGitHubOrgs) > 0 { allowedGitHubOrgs := flattenSlice(u.allowedGitHubOrgs) user.SetGitHubOrganizations(allowedGitHubOrgs) diff --git a/tool/tsh/common/git.go b/tool/tsh/common/git.go index 89edd99e715cd..9157ea23e40ef 100644 --- a/tool/tsh/common/git.go +++ b/tool/tsh/common/git.go @@ -20,8 +20,8 @@ package common import ( "bytes" - "context" "fmt" + "log/slog" "os" "os/exec" "strings" @@ -29,9 +29,7 @@ import ( "github.com/gravitational/teleport" apiclient "github.com/gravitational/teleport/api/client" "github.com/gravitational/teleport/api/client/proto" - "github.com/gravitational/teleport/api/constants" "github.com/gravitational/teleport/api/types" - "github.com/gravitational/teleport/api/utils/prompt" "github.com/gravitational/teleport/lib/asciitable" "github.com/gravitational/teleport/lib/client" "github.com/gravitational/trace" @@ -52,22 +50,40 @@ func onGitClone(cf *CLIConf) error { return trace.Wrap(cmd.Run()) } +func onGitLogin(cf *CLIConf) error { + tc, err := makeClient(cf) + if err != nil { + return trace.Wrap(err) + } + + _, name, err := getGitHubUser(cf, tc) + if err != nil { + return trace.Wrap(err) + } + fmt.Fprintf(cf.Stdout(), "Your GitHub username is %q.\n", name) + return nil +} + func onGitSSH(cf *CLIConf) error { - maybeUseTTYAsStdinFallback(cf.Context) + tc, err := makeClient(cf) + if err != nil { + return trace.Wrap(err) + } // TODO validate the host is github.com - user, err := getGitHubUsername(cf) + userID, _, err := getGitHubUser(cf, tc) if err != nil { return trace.Wrap(err) } - cf.UserHost = fmt.Sprintf("%s@%s", user, types.MakeGitHubOrgServerDomain(cf.GitHubOrg)) - log.Debugf("=== onGitSSH org %s userhost %s command %s", cf.GitHubOrg, cf.UserHost, cf.RemoteCommand) + cf.UserHost = fmt.Sprintf("%s@%s", userID, types.MakeGitHubOrgServerDomain(cf.GitHubOrg)) - tc, err := makeClient(cf) + // Make again to reflect cf.UserHost change // TODO improve perf + tc, err = makeClient(cf) if err != nil { return trace.Wrap(err) } + slog.InfoContext(cf.Context, "==tc", "hostlogin", tc.Config.HostLogin) tc.Stdin = os.Stdin err = client.RetryWithRelogin(cf.Context, tc, func() error { @@ -106,12 +122,19 @@ func onGitConfigCheck(cf *CLIConf) error { case strings.HasPrefix(output, wantPrefix): _, org, _ := strings.Cut(output, wantPrefix) fmt.Fprintf(cf.Stdout(), "The current git dir is configured with Teleport for GitHub organization %q.\n\n", org) + cf.GitHubOrg = org default: fmt.Fprintf(cf.Stdout(), "The current git dir is not configured with Teleport.\n"+ "Run 'tsh git config udpate' to configure it.\n\n") + return nil } - username, err := getGitHubUsername(cf) + tc, err := makeClient(cf) + if err != nil { + return trace.Wrap(err) + } + + _, username, err := getGitHubUser(cf, tc) if err != nil { return trace.Wrap(err) } @@ -167,9 +190,11 @@ func onGitList(cf *CLIConf) error { // TODO resources, err = apiclient.GetAllUnifiedResources(cf.Context, client.AuthClient, &proto.ListUnifiedResourcesRequest{ - Kinds: []string{types.KindGitServer}, - SortBy: types.SortBy{Field: types.ResourceMetadataName}, - IncludeLogins: true, + Kinds: []string{types.KindGitServer}, + SortBy: types.SortBy{Field: types.ResourceMetadataName}, + SearchKeywords: tc.SearchKeywords, + PredicateExpression: tc.PredicateExpression, + IncludeLogins: true, }) return trace.Wrap(err) }) @@ -205,16 +230,23 @@ func printGitServers(cf *CLIConf, resources []*types.EnrichedResource) error { func printGitServersAsText(cf *CLIConf, resources []*types.EnrichedResource) error { // TODO(greedy52) verbose mode? + profile, err := cf.ProfileStatus() + if err != nil { + return trace.Wrap(err) + } var rows [][]string + var showLoginNote bool for _, resource := range resources { server, ok := resource.ResourceWithLabels.(types.Server) if !ok { return trace.BadParameter("expecting Git server but got %v", server) } - login := "(missing username)" - if len(resource.Logins) > 0 { - login = resource.Logins[0] + login := "(n/a)*" + if profile.GitHubUsername != "" && profile.GitHubUserID != "" { + login = profile.GitHubUsername + } else { + showLoginNote = true } if github := server.GetGitHub(); github != nil { @@ -234,7 +266,11 @@ func printGitServersAsText(cf *CLIConf, resources []*types.EnrichedResource) err return trace.Wrap(err) } - fmt.Fprintln(cf.Stdout(), listGitServerHint) + if showLoginNote { + fmt.Fprintln(cf.Stdout(), gitLoginNote) + } + + fmt.Fprintln(cf.Stdout(), gitCommandsGeneralHint) return nil } @@ -260,49 +296,39 @@ func makeGitSSHCommand(org string) string { return "tsh git ssh --github-org " + org } -func getGitHubUsername(cf *CLIConf) (string, error) { +func getGitHubUser(cf *CLIConf, tc *client.TeleportClient) (string, string, error) { profile, err := cf.ProfileStatus() if err != nil { - return "", trace.Wrap(err) + return "", "", trace.Wrap(err) } - usernames := profile.Traits[constants.TraitGitHubUsername] - if len(usernames) == 0 { - return "", trace.BadParameter("Your Teleport user does not have a GitHub username. Ask a cluster administrator to ensure your Teleport user has appropriate github_username set.") + if profile.GitHubUserID != "" && profile.GitHubUsername != "" { + return profile.GitHubUserID, profile.GitHubUsername, nil } - // TODO print a warning for too many names? - return usernames[0], nil -} -func maybeUseTTYAsStdinFallback(ctx context.Context) { - if prompt.Stdin().IsTerminal() { - return + err = client.RetryWithRelogin(cf.Context, tc, func() error { + return tc.ReissueWithGitHubAuth(cf.Context, cf.GitHubOrg) + }) + if err != nil { + return "", "", trace.Wrap(err) } - tty, err := os.Open("/dev/tty") + profile, err = tc.ProfileStatus() if err != nil { - log.Warn("Cannot open /dev/tty.") - return + return "", "", trace.Wrap(err) } - // Check if IsTerminal just to be safe. - cr := prompt.NewContextReader(tty) - if !cr.IsTerminal() { - defer tty.Close() - log.Warn("/dev/tty is not terminal.") - return + if profile.GitHubUserID == "" { + return "", "", trace.BadParameter("cannot retrieve github identity") } - - go cr.HandleInterrupt() - prompt.SetStdin(cr) - - go func() { - <-ctx.Done() - tty.Close() - }() + return profile.GitHubUserID, profile.GitHubUsername, nil } -const listGitServerHint = "" + +const gitLoginNote = "" + + "(n/a)*: Usernames will be retrieved automatically upon git commands.\n" + + " Alternatively, run `tsh git login --github-org `.\n" + +const gitCommandsGeneralHint = "" + "hint: use 'tsh git clone ' to clone a new repository\n" + " use 'tsh git config update' to configure an existing repository to use Teleport\n" + " once the repository is cloned or configured, use 'git' as normal\n" diff --git a/tool/tsh/common/tsh.go b/tool/tsh/common/tsh.go index 3d374a4f26b6b..621864817599b 100644 --- a/tool/tsh/common/tsh.go +++ b/tool/tsh/common/tsh.go @@ -1216,7 +1216,8 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { git := app.Command("git", "Git server commands.") gitList := git.Command("ls", "List Git servers.") - // TODO(greedy52) support search keywords etc. + gitList.Flag("search", searchHelp).StringVar(&cf.SearchKeywords) + gitList.Flag("query", queryHelp).StringVar(&cf.PredicateExpression) gitConfig := git.Command("config", "Check Teleport config of the working git dir.") gitConfig.Arg("action", "Action to perform. Valid options: update or reset.").EnumVar(&cf.GitConfigAction, "", "update", "reset") @@ -1224,6 +1225,9 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { gitClone := git.Command("clone", "Git clone.") gitClone.Arg("git-url", "Git URL").Required().StringVar(&cf.GitURL) + gitLogin := git.Command("login", "Opens a browser and retrieves your login from GitHub.") + gitLogin.Flag("github-org", "GitHub organization.").Required().StringVar(&cf.GitHubOrg) + gitSSH := git.Command("ssh", "Proxy Git SSH.").Hidden() gitSSH.Flag("github-org", "GitHub organization.").Required().StringVar(&cf.GitHubOrg) gitSSH.Arg("[user@]host", "Remote hostname and the login to use").Required().StringVar(&cf.UserHost) @@ -1607,6 +1611,8 @@ func Run(ctx context.Context, args []string, opts ...CliOption) error { err = onGitList(&cf) case gitConfig.FullCommand(): err = onGitConfig(&cf) + case gitLogin.FullCommand(): + err = onGitLogin(&cf) default: // Handle commands that might not be available. switch { @@ -4570,6 +4576,9 @@ func printStatus(debug bool, p *profileInfo, env map[string]string, isActive boo fmt.Printf(" Allowed Resources: %s\n", allowedResourcesStr) } } + if p.GitHubUsername != "" { + fmt.Printf(" GitHub username: %s\n", p.GitHubUsername) + } fmt.Printf(" Valid until: %v [%v]\n", p.ValidUntil, humanDuration) fmt.Printf(" Extensions: %v\n", strings.Join(p.Extensions, ", ")) @@ -4738,6 +4747,8 @@ type profileInfo struct { Extensions []string `json:"extensions,omitempty"` CriticalOptions map[string]string `json:"critical_options,omitempty"` AllowedResourceIDs []types.ResourceID `json:"allowed_resources,omitempty"` + GitHubUserID string `json:"github_userid,omitempty"` + GitHubUsername string `json:"github_login,omitempty"` } func makeAllProfileInfo(active *client.ProfileStatus, others []*client.ProfileStatus, env map[string]string) (*profileInfo, []*profileInfo) { @@ -4787,6 +4798,8 @@ func makeProfileInfo(p *client.ProfileStatus, env map[string]string, isActive bo Extensions: p.Extensions, CriticalOptions: p.CriticalOptions, AllowedResourceIDs: p.AllowedResourceIDs, + GitHubUserID: p.GitHubUserID, + GitHubUsername: p.GitHubUsername, } // update active profile info from env diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureAccess.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureAccess.tsx new file mode 100644 index 0000000000000..78d237504e912 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureAccess.tsx @@ -0,0 +1,134 @@ +/** + * 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 { Box, ButtonPrimary, ButtonSecondary, Text } from 'design'; +import React, { useEffect, useState } from 'react'; + +import Validation, { Validator } from 'shared/components/Validation'; +import { TextSelectCopyMulti } from 'shared/components/TextSelectCopy'; +import FieldInput from 'shared/components/FieldInput'; +import styled from 'styled-components'; +import useAttempt from 'shared/hooks/useAttemptNext'; + +import { Header } from 'teleport/Discover/Shared'; + +type Line = { + text: string; + comment?: string; +}; +export function ConfigureAccess({ + resourceService, + organizationName, + onNext, + }) { + // TODO set role + const [roleName, setRoleName] = useState('github-' + organizationName); + const [roleText, setRoleText] = useState(''); + const [lines, setLines] = useState([]); + const { attempt, run } = useAttempt(''); + + useEffect(() => { + const roleText = + `kind: role +metadata: + name: ` + roleName + ` +spec: + allow: + github_permissions: + - orgs: + - ` + organizationName + ` +version: v7 +`; + setRoleText(roleText); + setLines([{text:roleText}]) + }, [organizationName, roleName]); + + function handleOnCreate(validator: Validator) { + if (!validator.validate()) { + return; + } + + run(() => + resourceService + .createRole(roleText) + .then(() => { + onNext(); + }) + ); + } + + return ( + +
Create a GitHub Integration
+ + Teleport can issue short-lived SSH certificates for GitHub access. + + + + + Step 5 Configure access to the Git server + The Git server resource is successfully created. +
+ + To grant access to the Git server, create the following Teleport + role for GitHub organization "{organizationName}". + +
+ + {({ validator }) => ( + <> + setRoleName(e.target.value)} + /> + Role definition: + + Once created, assign the role to desired Teleport users. + + handleOnCreate(validator)} + disabled={ + attempt.status === 'processing' + } + > + Create Role + + onNext()} + > + Skip + + + + )} + +
+
+ ); +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureGitHub.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureGitHub.tsx new file mode 100644 index 0000000000000..180f3c8a4cc00 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureGitHub.tsx @@ -0,0 +1,77 @@ +/** + * 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 { Box, ButtonPrimary, Link, Text } from 'design'; +import { TextSelectCopy } from 'shared/components/TextSelectCopy'; +import React from 'react'; +import styled from 'styled-components'; + +import { Header } from 'teleport/Discover/Shared'; + +export function ConfigureGitHub({ + integration, + onNext, + }){ + return ( + +
Create a GitHub Integration
+ + Teleport can issue short-lived SSH certificates for GitHub access. + + + + Step 3 Configure SSH certificate authority on GitHub + + GitHub integration "{integration.name}" successfully added. Now we want add the SSH certificate authority to your GitHub organization. + +
+ + Go to your organization's {' '} + + Authentication security page + and click on "New CA": + + + +
+ + After the CA is added, it should have the following SHA256 fingerprint: + + + +
+
+ + onNext()} + > + Next + + +
+ ); +} +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; + diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureOAuth.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureOAuth.tsx new file mode 100644 index 0000000000000..1a7e1bf19de52 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/ConfigureOAuth.tsx @@ -0,0 +1,152 @@ +/** + * + * 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 { Box, ButtonPrimary, ButtonSecondary, Flex, Link, Text } from 'design'; +import Validation, { Validator } from 'shared/components/Validation'; +import React, { useState } from 'react'; +import styled from 'styled-components'; +import FieldInput from 'shared/components/FieldInput'; +import { TextSelectCopy, TextSelectCopyMulti } from 'shared/components/TextSelectCopy'; + +import cfg from 'teleport/config'; +import { Header } from 'teleport/Discover/Shared'; + +export function ConfigureOAuth({ + cluster, + onCreatedSpec, + }){ + + const [orgName, setOrgName] = useState(''); + const [clientID, setClientID] = useState(''); + const [clientSecret, setClientSecret] = useState(''); + const homePageURL = "https://" + cluster.publicURL; + const callbackURL = "https://" + cluster.publicURL + "/v1/webapi/github/callback" + + function handleOnCreate(validator: Validator) { + if (!validator.validate()) { + return; + } + onCreatedSpec({ + organization: orgName, + connectorClientID: clientID, + connectorClientSecret: clientSecret, + connectorRedirectURL: callbackURL, + }); + } + + return ( + +
Create a GitHub Integration
+ + + Teleport can issue short-lived SSH certificates for GitHub access. + + + {({ validator }) => ( + <> + + Step 1 Configure an OAuth App + + The first setup step is to configure a GitHub OAuth app, which + Teleport will use to retrieve login information from your users' + browsers. + + +
+ + setOrgName(e.target.value)} + /> + + + + Now go to your organization's{' '} + + OAuth apps page + {' '} + under developer settings and click on "New OAuth app". Fill in + the app with the following information: + + + +
+ + Click on "Register Application" and then "Generate a new client + secret". Copy the ClientID and Client Secret below: + + + setClientID(e.target.value)} + /> + setClientSecret(e.target.value)} + /> + + + handleOnCreate(validator)} + disabled={!orgName || !clientID || !clientSecret} + > + Next + + +
+ + )} +
+
+ ); +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateGitServer.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateGitServer.tsx new file mode 100644 index 0000000000000..443c2a6f417c8 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateGitServer.tsx @@ -0,0 +1,115 @@ +/** + * 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 { Box, ButtonPrimary, Flex, Text } from 'design'; +import React from 'react'; +import useAttempt from 'shared/hooks/useAttemptNext'; +import Validation, { Validator } from 'shared/components/Validation'; +import * as Icons from 'design/Icon'; + +import { Header } from 'teleport/Discover/Shared'; +import { gitServerService } from 'teleport/services/gitservers'; +import styled from 'styled-components'; +import { TextSelectCopyMulti } from 'shared/components/TextSelectCopy'; + +export function CreateGitServer({ + organizationName, + integrationName, + onCreatedGitServer, + }){ + + const gitServerText = + `kind: git_server +sub_kind: github +version: v2 +spec: + github: + integration: ` + integrationName + ` + organization: ` + organizationName; + const { attempt, run } = useAttempt(''); + + function handleOnCreate(validator: Validator) { + if (!validator.validate()) { + return; + } + + run(() => + gitServerService + .createGitServer({ + subKind: "github", + github: { + organization: organizationName, + integration: integrationName, + }, + }) + .then(res =>{ + onCreatedGitServer(res); + }) + ); + } + + return ( + +
Create a GitHub Integration
+ + Teleport can issue short-lived SSH certificates for GitHub access. + + + + + Step 4 Create a Git proxy server + + Now let's create a Git server resource for your Teleport users to proxy their git commands. + + + + + {({ validator }) => ( + <> + {attempt.status === 'failed' && ( + + + Error: {attempt.statusText} + + )} + + handleOnCreate(validator)} + disabled={attempt.status === 'success'} + > + Create Git Server + + + + )} + + +
+ ); +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; + diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateIntegration.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateIntegration.tsx new file mode 100644 index 0000000000000..fcf918b068df1 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/CreateIntegration.tsx @@ -0,0 +1,119 @@ +/** + * 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 { Box, ButtonPrimary, ButtonSecondary, Flex, Text } from 'design'; +import Validation, { Validator } from 'shared/components/Validation'; +import FieldInput from 'shared/components/FieldInput'; +import useAttempt from 'shared/hooks/useAttemptNext'; +import * as Icons from 'design/Icon'; +import React, { useEffect, useState } from 'react'; +import styled from 'styled-components'; + +import { + IntegrationKind, + integrationService, +} from 'teleport/services/integrations'; +import { Header } from 'teleport/Discover/Shared'; + +export function CreateIntegration({ + spec, + onCreatedIntegration, + }){ + const [integrationName, setIntegrationName] = useState(''); + const [isIntegrationNameEdited, setIsIntegrationNameEdited] = useState(false); + const { attempt, run } = useAttempt(''); + + useEffect(() => { + if (!isIntegrationNameEdited) { + setIntegrationName("github-" + spec.organization); + } + }, [spec.organization, isIntegrationNameEdited]); + + function handleIntegrationNameChange(value: string) { + setIntegrationName(value); + setIsIntegrationNameEdited(true); + } + + function handleOnCreate(validator: Validator) { + if (!validator.validate()) { + return; + } + + run(() => + integrationService + .createIntegration({ + name: integrationName, + subKind: IntegrationKind.GitHub, + github: spec, + }) + .then(res => { + onCreatedIntegration(res); + }) + ); + } + + return ( + +
Create a GitHub Integration
+ + + Teleport can issue short-lived SSH certificates for GitHub access. + + + + {({ validator }) => ( + <> + + Step 2 Create the GitHub integration + + handleIntegrationNameChange(e.target.value)} + /> + + + {attempt.status === 'failed' && ( + + + Error: {attempt.statusText} + + )} + + handleOnCreate(validator)} + disabled={ + attempt.status === 'processing' + } + > + Create Integration + + + + )} + +
+ ); +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx index d2aa232159413..b596d3d6ffe6b 100644 --- a/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/GitHub.tsx @@ -18,269 +18,83 @@ import React, { useEffect, useState } from 'react'; import { Link as InternalRouteLink } from 'react-router-dom'; -import { useLocation } from 'react-router'; import styled from 'styled-components'; import { Box, ButtonSecondary, Text, Link, Flex, ButtonPrimary } from 'design'; -import * as Icons from 'design/Icon'; import FieldInput from 'shared/components/FieldInput'; import Validation, { Validator } from 'shared/components/Validation'; -import useAttempt from 'shared/hooks/useAttemptNext'; - -import { - IntegrationEnrollEvent, - IntegrationEnrollEventData, - IntegrationEnrollKind, - userEventService, -} from 'teleport/services/userEvent'; +import { TextSelectCopy } from 'shared/components/TextSelectCopy'; import { Header } from 'teleport/Discover/Shared'; -import { - Integration, - IntegrationKind, - integrationService, -} from 'teleport/services/integrations'; +import { Integration, IntegrationSpecGitHub } from 'teleport/services/integrations'; import cfg from 'teleport/config'; - -import { TextSelectCopy } from 'shared/components/TextSelectCopy'; +import useGitHub from 'teleport/Integrations/Enroll/GitHub/useGitHub'; +import { ConfigureOAuth } from 'teleport/Integrations/Enroll/GitHub/ConfigureOAuth'; +import { Resource } from 'teleport/services/resources'; +import { CreateIntegration } from 'teleport/Integrations/Enroll/GitHub/CreateIntegration'; +import { ConfigureGitHub } from 'teleport/Integrations/Enroll/GitHub/ConfigureGitHub'; +import { GitServer } from 'teleport/services/gitservers'; +import { CreateGitServer } from 'teleport/Integrations/Enroll/GitHub/CreateGitServer'; +import { ConfigureAccess } from 'teleport/Integrations/Enroll/GitHub/ConfigureAccess'; +import useTeleport from 'teleport/useTeleport'; +import { Usage } from 'teleport/Integrations/Enroll/GitHub/Usage'; export function GitHub() { - const [username, setUsername] = useState(''); - const [integrationName, setIntegrationName] = useState(''); - const [isIntegrationNameEdited, setIsIntegrationNameEdited] = useState(false); - const [orgName, setOrgName] = useState(''); + const ctx = useTeleport(); + const cluster = ctx.storeUser.state.cluster; + + // State in sequence. + const [spec, setSpec] = useState(); const [createdIntegration, setCreatedIntegration] = useState(); - const { attempt, run } = useAttempt(''); const [isCAExported, setCAExported] = useState(false); + const [gitServer, setGitServer] = useState(); const [isAccessSet, setAccessSet] = useState(false); - const [eventData] = useState({ - id: crypto.randomUUID(), - kind: IntegrationEnrollKind.GitHub, - }); - - useEffect(() => { - if (!isIntegrationNameEdited) { - setIntegrationName("github-" + orgName); - } - }, [orgName, isIntegrationNameEdited]); - - function handleOnCreate(validator: Validator) { - if (!validator.validate()) { - return; - } - - run(() => - integrationService - .createIntegration({ - name: integrationName, - subKind: IntegrationKind.GitHub, //TODO - github: { - organization: orgName, - }, - }) - .then(res => { - setCreatedIntegration(res); - }) - ); - } - - function handleIntegrationNameChange(value: string) { - setIntegrationName(value); - setIsIntegrationNameEdited(true); - } - - if (isAccessSet) { + if (!spec) { return ( - -
Create a GitHub Integration
- - - - - Now to use the integration with 'git', login to Teleport: - - - {'To clone a new repository, find the SSH url of the repository on '} - - github.com - - {' then'} - `} - /> - {'To configure an existing git repository, go to the repository then'} - - - Once the repository is cloned or configured, use 'git' as normal. - - - - - - Go To Resources List - - - Go to Integration List - - - -
+ ) } - if (isCAExported) { + if (!createdIntegration) { return ( - -
Create a GitHub Integration
- Update your user traits to allow access to the GitHub organization "{createdIntegration.spec.organization}" and provide your GitHub username. - - - Step 3 - - {({ validator }) => ( - - setUsername(e.target.value)} - /> - setUsername(e.target.value)} - /> - - )} - - - - setAccessSet(true)} - > - Configure access - - -
+ ) } - if (createdIntegration) { + if (!isCAExported) { return ( - -
Create a GitHub Integration
- - GitHub integration "{createdIntegration.name}" successfully added. Now we want add the SSH certificate authority to your GitHub organization. - - - - Step 2 - - Go to your organization's {' '} - - settings page for Authentication security - and click on "New CA": - - - -
- - After the CA is added, it should have the following fingerprint: - - - -
-
- - setCAExported(true)} - > - Next - - -
+ setCAExported(true)} + /> ) } - return ( - -
Create a GitHub Integration
- - - Teleport can issue short-lived SSH certificates for GitHub access. - - - - {({ validator }) => ( - <> - - Step 1 - - setOrgName(e.target.value)} - /> - handleIntegrationNameChange(e.target.value)} - /> - - - {attempt.status === 'failed' && ( - - - Error: {attempt.statusText} - - )} - - handleOnCreate(validator)} - disabled={ - attempt.status === 'processing' || !orgName - } - > - Create Integration - - - Back - - - - )} - -
- ); -} - -const Container = styled(Box)` - max-width: 1000px; - background-color: ${p => p.theme.colors.spotBackground[0]}; - border-radius: ${p => `${p.theme.space[2]}px`}; - padding: ${p => p.theme.space[3]}px; -`; - -const RouteLink = styled(InternalRouteLink)` - color: ${({ theme }) => theme.colors.buttons.link.default}; - - &:hover, - &:focus { - color: ${({ theme }) => theme.colors.buttons.link.hover}; + if (!gitServer) { + return( + + ) + } + if (!isAccessSet) { + return( + setAccessSet(true)} + /> + ) } -`; + + return ( + + ) +} \ No newline at end of file diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/Usage.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/Usage.tsx new file mode 100644 index 0000000000000..92716610f6485 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/Usage.tsx @@ -0,0 +1,89 @@ +/** + * 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 { Box, ButtonPrimary, ButtonSecondary, Flex, Text } from 'design'; +import { Link } from 'react-router-dom'; +import { TextSelectCopy } from 'shared/components/TextSelectCopy'; +import React from 'react'; +import styled from 'styled-components'; + +import cfg from 'teleport/config'; +import { Header } from 'teleport/Discover/Shared'; + +export function Usage({ + integration, + + }){ + return( + +
Create a GitHub Integration
+ + + Teleport can issue short-lived SSH certificates for GitHub access. + + + + + + + You are done! + +
+ + Once your Teleport user is granted permission to the Git server, login using "tsh". + + +
+ To list the Git servers: + + {'To clone a new repository, find the SSH url of the repository on '} + + github.com + + {' then'} + `} + /> + {'To configure an existing git repository, go to the repository then:'} + + + Once the repository is cloned or configured, use 'git' as normal. + +
+ + Go to Integration List + +
+
+
+
+ ) +} + +const Container = styled(Box)` + max-width: 1000px; + background-color: ${p => p.theme.colors.spotBackground[0]}; + border-radius: ${p => `${p.theme.space[2]}px`}; + padding: ${p => p.theme.space[3]}px; +`; diff --git a/web/packages/teleport/src/Integrations/Enroll/GitHub/useGitHub.tsx b/web/packages/teleport/src/Integrations/Enroll/GitHub/useGitHub.tsx new file mode 100644 index 0000000000000..93d876d9af6c3 --- /dev/null +++ b/web/packages/teleport/src/Integrations/Enroll/GitHub/useGitHub.tsx @@ -0,0 +1,46 @@ +/** + * 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 { useEffect, useState } from 'react'; + +import useAttempt from 'shared/hooks/useAttemptNext'; + +import { Resource } from 'teleport/services/resources'; +import useTeleport from 'teleport/useTeleport'; + +export default function useGitHub() { + const ctx = useTeleport(); + const [connectors, setConnectors] = useState[]>([]); + const { attempt, run } = useAttempt('processing'); + + function fetchGithubConnectors(){ + return ctx.resourceService.fetchGithubConnectors().then(response => { + setConnectors(response); + }); + } + + useEffect(() => { + run(() => fetchGithubConnectors()); + }, []); + + return { + connectors, + attempt, + }; +} + +export type State = ReturnType; diff --git a/web/packages/teleport/src/config.ts b/web/packages/teleport/src/config.ts index 61800d5c97ac2..1a200693a747d 100644 --- a/web/packages/teleport/src/config.ts +++ b/web/packages/teleport/src/config.ts @@ -222,7 +222,9 @@ const cfg = { '/v1/webapi/sites/:clusterId/resources?searchAsRoles=:searchAsRoles?&limit=:limit?&startKey=:startKey?&kinds=:kinds?&query=:query?&search=:search?&sort=:sort?&pinnedOnly=:pinnedOnly?&includedResourceMode=:includedResourceMode?', nodesPath: '/v1/webapi/sites/:clusterId/nodes?searchAsRoles=:searchAsRoles?&limit=:limit?&startKey=:startKey?&query=:query?&search=:search?&sort=:sort?', - nodesPathNoParams: '/v1/webapi/sites/:clusterId/nodes', + nodesPathNoParams: '', + + gitServerPath: '/v1/webapi/sites/:clusterId/gitserver', databaseServicesPath: `/v1/webapi/sites/:clusterId/databaseservices`, databaseIamPolicyPath: `/v1/webapi/sites/:clusterId/databases/:database/iam/policy`, @@ -733,6 +735,10 @@ const cfg = { return generatePath(cfg.api.nodesPathNoParams, { clusterId }); }, + getGitServerUrl(clusterId: string) { + return generatePath(cfg.api.gitServerPath, { clusterId }); + }, + getDatabaseServicesUrl(clusterId: string) { return generatePath(cfg.api.databaseServicesPath, { clusterId, diff --git a/web/packages/teleport/src/services/gitservers/gitservers.ts b/web/packages/teleport/src/services/gitservers/gitservers.ts index f6eafe2d46677..d4ffbfb94f758 100644 --- a/web/packages/teleport/src/services/gitservers/gitservers.ts +++ b/web/packages/teleport/src/services/gitservers/gitservers.ts @@ -17,8 +17,15 @@ */ import api from 'teleport/services/api'; -import cfg, { UrlResourcesParams } from 'teleport/config'; -import { ResourcesResponse } from 'teleport/services/agents'; +import cfg from 'teleport/config'; -import { GitServer } from './types'; +import { GitServer, CreateGitServerRequest } from './types'; import makeGitServer from './makeGitServer'; + +export const gitServerService = { + createGitServer(req: CreateGitServerRequest ): Promise { + return api + .post(cfg.getGitServerUrl(cfg.proxyCluster), req) + .then(makeGitServer) + }, +} \ No newline at end of file diff --git a/web/packages/teleport/src/services/gitservers/index.ts b/web/packages/teleport/src/services/gitservers/index.ts index 69b87babe31e6..e9a7987fd8306 100644 --- a/web/packages/teleport/src/services/gitservers/index.ts +++ b/web/packages/teleport/src/services/gitservers/index.ts @@ -16,8 +16,5 @@ * along with this program. If not, see . */ -import service from './gitservers'; - export * from './types'; -export * from './gitservers'; -export default service; +export * from './gitservers'; \ No newline at end of file diff --git a/web/packages/teleport/src/services/gitservers/types.ts b/web/packages/teleport/src/services/gitservers/types.ts index 148928b3a5b8b..b287f89bcbd30 100644 --- a/web/packages/teleport/src/services/gitservers/types.ts +++ b/web/packages/teleport/src/services/gitservers/types.ts @@ -37,3 +37,7 @@ export type GitHubMetadata = { organization: string; }; +export type CreateGitServerRequest = { + subKind: string; + github: GitHubMetadata; +} \ No newline at end of file diff --git a/web/packages/teleport/src/services/integrations/integrations.ts b/web/packages/teleport/src/services/integrations/integrations.ts index be28f91650eb2..b63cc6eed61ed 100644 --- a/web/packages/teleport/src/services/integrations/integrations.ts +++ b/web/packages/teleport/src/services/integrations/integrations.ts @@ -421,6 +421,7 @@ function makeIntegration(json: any): Integration { organization: github?.organization, publicKeys: github?.publicKeys, fingerprints: github?.fingerprints, + connectorID: github?.connectorID, }, details: github? "GitHub Organiztion \""+ github.organization +"\"": undefined, // The integration resource does not have a "status" field, but is diff --git a/web/packages/teleport/src/services/integrations/types.ts b/web/packages/teleport/src/services/integrations/types.ts index 6c0255618be85..838ee1ff0ab4b 100644 --- a/web/packages/teleport/src/services/integrations/types.ts +++ b/web/packages/teleport/src/services/integrations/types.ts @@ -65,14 +65,18 @@ export enum IntegrationKind { ExternalAuditStorage = 'external-audit-storage', } export type IntegrationSpecAwsOidc = { - roleArn?: string; - issuerS3Prefix?: string; + connectorID?: string; // TODO move to GitHub + fingerprints?: [string]; issuerS3Bucket?: string; - organization?: string; + issuerS3Prefix?: string; + organization?: string; // TODO move to GitHub publicKeys?: [string]; - fingerprints?: [string]; + roleArn?: string; }; export type IntegrationSpecGitHub = { + connectorClientID: string; + connectorClientSecret: string; + connectorRedirectURL: string; organization: string; publicKeys?: [string]; fingerprints?: [string]; From ab5ff4efedb549ce7ef4eec151661ea19357722f Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Mon, 28 Oct 2024 09:40:33 -0400 Subject: [PATCH 5/8] Release v17.0.0-dev.githubproxy.1 --- Makefile | 2 +- api/version.go | 2 +- examples/chart/access/discord/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +-- examples/chart/access/email/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 24 +++---- .../__snapshot__/deployment_test.yaml.snap | 58 ++++++++-------- examples/chart/access/jira/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +-- examples/chart/access/mattermost/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 28 ++++---- examples/chart/access/msteams/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +-- examples/chart/access/pagerduty/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +-- examples/chart/access/slack/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +-- examples/chart/event-handler/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 6 +- examples/chart/teleport-cluster/Chart.yaml | 2 +- .../charts/teleport-operator/Chart.yaml | 2 +- .../auth_clusterrole_test.yaml.snap | 4 +- .../__snapshot__/auth_config_test.yaml.snap | 4 +- .../auth_deployment_test.yaml.snap | 8 +-- .../__snapshot__/proxy_config_test.yaml.snap | 4 +- .../proxy_deployment_test.yaml.snap | 36 +++++----- examples/chart/teleport-kube-agent/Chart.yaml | 2 +- .../__snapshot__/deployment_test.yaml.snap | 60 ++++++++--------- .../tests/__snapshot__/job_test.yaml.snap | 8 +-- .../__snapshot__/statefulset_test.yaml.snap | 66 +++++++++---------- .../updater_deployment_test.yaml.snap | 4 +- lib/auth/auth.go | 2 +- 39 files changed, 203 insertions(+), 203 deletions(-) diff --git a/Makefile b/Makefile index 4c6f543454bea..21a5081600f66 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ # Stable releases: "1.0.0" # Pre-releases: "1.0.0-alpha.1", "1.0.0-beta.2", "1.0.0-rc.3" # Master/dev branch: "1.0.0-dev" -VERSION=17.0.0-dev +VERSION=17.0.0-dev.githubproxy.1 DOCKER_IMAGE ?= teleport diff --git a/api/version.go b/api/version.go index 17bbdd36f118c..c5a70c93d673e 100644 --- a/api/version.go +++ b/api/version.go @@ -3,6 +3,6 @@ package api import "github.com/coreos/go-semver/semver" -const Version = "17.0.0-dev" +const Version = "17.0.0-dev.githubproxy.1" var SemVersion = semver.New(Version) diff --git a/examples/chart/access/discord/Chart.yaml b/examples/chart/access/discord/Chart.yaml index 345bb8c893c0b..44a6e633fdb86 100644 --- a/examples/chart/access/discord/Chart.yaml +++ b/examples/chart/access/discord/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap index d2ca5c3a439b3..d5d75bb597c38 100644 --- a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-discord-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap index 208c6936060fc..2a833956efac5 100644 --- a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-discord-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-discord spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-discord-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 spec: containers: - command: diff --git a/examples/chart/access/email/Chart.yaml b/examples/chart/access/email/Chart.yaml index f589b552357d2..a83ff2ca78804 100644 --- a/examples/chart/access/email/Chart.yaml +++ b/examples/chart/access/email/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap index 07109f0b0b1f9..27ff1be97adf5 100644 --- a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap @@ -26,8 +26,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on): 1: | @@ -59,8 +59,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, no starttls): 1: | @@ -92,8 +92,8 @@ should match the snapshot (smtp on, no starttls): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, password file): 1: | @@ -125,8 +125,8 @@ should match the snapshot (smtp on, password file): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, roleToRecipients set): 1: | @@ -161,8 +161,8 @@ should match the snapshot (smtp on, roleToRecipients set): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, starttls disabled): 1: | @@ -194,6 +194,6 @@ should match the snapshot (smtp on, starttls disabled): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap index b7e81f481eedb..76e0ca4ebea8e 100644 --- a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -22,8 +22,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -34,7 +34,7 @@ should be possible to override volume name (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -75,8 +75,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -90,8 +90,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -136,8 +136,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -151,8 +151,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -163,7 +163,7 @@ should match the snapshot (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -204,8 +204,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -219,8 +219,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -231,7 +231,7 @@ should match the snapshot (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -272,8 +272,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -287,8 +287,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -299,7 +299,7 @@ should mount external secret (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -340,8 +340,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -355,8 +355,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-email-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -367,7 +367,7 @@ should mount external secret (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: diff --git a/examples/chart/access/jira/Chart.yaml b/examples/chart/access/jira/Chart.yaml index bda1cd653e046..476ca43cbdef6 100644 --- a/examples/chart/access/jira/Chart.yaml +++ b/examples/chart/access/jira/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap index d1a5b3b3d5390..6bf6885477f21 100644 --- a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap @@ -32,6 +32,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-jira-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap index 6911e6e41ed78..150cad388bae8 100644 --- a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-jira-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-jira spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-jira-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 spec: containers: - command: diff --git a/examples/chart/access/mattermost/Chart.yaml b/examples/chart/access/mattermost/Chart.yaml index 2f171d58f08da..a5760b5587095 100644 --- a/examples/chart/access/mattermost/Chart.yaml +++ b/examples/chart/access/mattermost/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap index 0b130d51c7218..995da7a6f4a0a 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap @@ -22,6 +22,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap index 723e8279c09d3..55e737cecc750 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -75,8 +75,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -90,8 +90,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -102,7 +102,7 @@ should mount external secret: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: @@ -143,8 +143,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -158,8 +158,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 spec: containers: - command: @@ -170,7 +170,7 @@ should override volume name: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: diff --git a/examples/chart/access/msteams/Chart.yaml b/examples/chart/access/msteams/Chart.yaml index 9ba10864dc698..73cce9a325ec9 100644 --- a/examples/chart/access/msteams/Chart.yaml +++ b/examples/chart/access/msteams/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap index 553e036515e21..8d4ab8e323dd4 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap @@ -29,6 +29,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap index 0c95e9d24e3ff..f223953b48d78 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-msteams spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 spec: containers: - command: diff --git a/examples/chart/access/pagerduty/Chart.yaml b/examples/chart/access/pagerduty/Chart.yaml index 711acf2fa83e8..5bc5b518dbd60 100644 --- a/examples/chart/access/pagerduty/Chart.yaml +++ b/examples/chart/access/pagerduty/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap index 64083c3642b5c..bf50a7bd27683 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap @@ -21,6 +21,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap index c44a3284ccc85..143ce556f820d 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-pagerduty spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 spec: containers: - command: diff --git a/examples/chart/access/slack/Chart.yaml b/examples/chart/access/slack/Chart.yaml index d295bc30b3f90..2ef058a2f5e0b 100644 --- a/examples/chart/access/slack/Chart.yaml +++ b/examples/chart/access/slack/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap index 78e6b06bb439a..f2b41801e50ff 100644 --- a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-slack-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap index d19f3c2783750..aecd401a74945 100644 --- a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-slack-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-slack spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-slack-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 spec: containers: - command: diff --git a/examples/chart/event-handler/Chart.yaml b/examples/chart/event-handler/Chart.yaml index 7eaacdb7f530b..95eff1d06df4a 100644 --- a/examples/chart/event-handler/Chart.yaml +++ b/examples/chart/event-handler/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" apiVersion: v2 name: teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap index 4d0b7a15e3ad0..253aeff486fa6 100644 --- a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap @@ -26,6 +26,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap index d7a6dc7a36b7a..ef7f61bfc618b 100644 --- a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.1 name: RELEASE-NAME-teleport-plugin-event-handler spec: replicas: 1 @@ -82,7 +82,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: "true" - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-plugin-event-handler:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-plugin-event-handler:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: teleport-plugin-event-handler ports: diff --git a/examples/chart/teleport-cluster/Chart.yaml b/examples/chart/teleport-cluster/Chart.yaml index ea212b038a5d4..d0fbdc7ac9835 100644 --- a/examples/chart/teleport-cluster/Chart.yaml +++ b/examples/chart/teleport-cluster/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" name: teleport-cluster apiVersion: v2 diff --git a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml index 36e7fe2312354..d9b08f435fcc4 100644 --- a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml +++ b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" name: teleport-operator apiVersion: v2 diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap index 81a2e28b7c823..7d206135d2927 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap @@ -8,8 +8,8 @@ adds operator permissions to ClusterRole: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-cluster-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 teleport.dev/majorVersion: "17" name: RELEASE-NAME rules: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap index bff9e2a397a73..72059a8bf849a 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap @@ -1848,8 +1848,8 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-cluster-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 teleport.dev/majorVersion: "17" name: RELEASE-NAME-auth namespace: NAMESPACE diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap index 4fef4cd91bf80..4b1ad750f604b 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap @@ -8,7 +8,7 @@ - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -141,7 +141,7 @@ should set nodeSelector when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -238,7 +238,7 @@ should set resources when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -324,7 +324,7 @@ should set securityContext when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap index 32830dc1a9d48..b687f2a1c3407 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap @@ -567,8 +567,8 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-cluster-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 teleport.dev/majorVersion: "17" name: RELEASE-NAME-proxy namespace: NAMESPACE diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap index 4e3f20a977377..ac25e08a24401 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap @@ -11,8 +11,8 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-cluster-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 teleport.dev/majorVersion: "17" name: RELEASE-NAME-proxy namespace: NAMESPACE @@ -26,7 +26,7 @@ sets clusterDomain on Deployment Pods: template: metadata: annotations: - checksum/config: 9ba7ee951511bedbbb6ab297c0b044322b0a39391e801ed8fc3bf44a58f112b9 + checksum/config: fa45db9211a0ee11be2bedfc8f0a87c3f795c3a0a02e0ac6020a37acb199b7ad kubernetes.io/pod: test-annotation kubernetes.io/pod-different: 4 labels: @@ -34,8 +34,8 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev - helm.sh/chart: teleport-cluster-17.0.0-dev + app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 teleport.dev/majorVersion: "17" spec: affinity: @@ -44,7 +44,7 @@ sets clusterDomain on Deployment Pods: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -105,7 +105,7 @@ sets clusterDomain on Deployment Pods: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.test.com - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update serviceAccountName: RELEASE-NAME-proxy terminationGracePeriodSeconds: 60 @@ -137,7 +137,7 @@ should provision initContainer correctly when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update resources: limits: @@ -201,7 +201,7 @@ should set nodeSelector when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -262,7 +262,7 @@ should set nodeSelector when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update nodeSelector: environment: security @@ -313,7 +313,7 @@ should set resources for wait-auth-update initContainer when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -381,7 +381,7 @@ should set resources for wait-auth-update initContainer when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update resources: limits: @@ -421,7 +421,7 @@ should set resources when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -489,7 +489,7 @@ should set resources when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update resources: limits: @@ -529,7 +529,7 @@ should set securityContext for initContainers when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -597,7 +597,7 @@ should set securityContext for initContainers when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update securityContext: allowPrivilegeEscalation: false @@ -637,7 +637,7 @@ should set securityContext when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -705,7 +705,7 @@ should set securityContext when set in values: - wait - no-resolve - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 name: wait-auth-update securityContext: allowPrivilegeEscalation: false diff --git a/examples/chart/teleport-kube-agent/Chart.yaml b/examples/chart/teleport-kube-agent/Chart.yaml index a8b88bcc772fb..774ee323edda7 100644 --- a/examples/chart/teleport-kube-agent/Chart.yaml +++ b/examples/chart/teleport-kube-agent/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev" +.version: &version "17.0.0-dev.githubproxy.1" name: teleport-kube-agent apiVersion: v2 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap index bee6bf8282eac..681282bf3342f 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap @@ -32,7 +32,7 @@ sets Deployment annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -109,7 +109,7 @@ sets Deployment labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -173,7 +173,7 @@ sets Pod annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -237,7 +237,7 @@ sets Pod labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -322,7 +322,7 @@ should add emptyDir for data when existingDataVolume is not set if action is Upg value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -387,7 +387,7 @@ should add insecureSkipProxyTLSVerify to args when set in values if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -451,7 +451,7 @@ should correctly configure existingDataVolume when set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -513,7 +513,7 @@ should expose diag port if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -589,7 +589,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -665,7 +665,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -729,7 +729,7 @@ should have one replica when replicaCount is not set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -793,7 +793,7 @@ should mount extraVolumes and extraVolumeMounts if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -862,7 +862,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf an value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -932,7 +932,7 @@ should mount jamfCredentialsSecret.name when role is jamf and action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1004,7 +1004,7 @@ should mount tls.existingCASecretName and set environment when set in values if value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1078,7 +1078,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: http://username:password@my.proxy.host:3128 - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1148,7 +1148,7 @@ should provision initContainer correctly when set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1270,7 +1270,7 @@ should set affinity when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1334,7 +1334,7 @@ should set default serviceAccountName when not set in values if action is Upgrad value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1411,7 +1411,7 @@ should set environment when extraEnv set in values if action is Upgrade: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1539,7 +1539,7 @@ should set imagePullPolicy when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -1603,7 +1603,7 @@ should set nodeSelector if set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1669,7 +1669,7 @@ should set not set priorityClassName when not set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set preferred affinity when more than one replica is used if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1809,7 +1809,7 @@ should set priorityClassName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1874,7 +1874,7 @@ should set probeTimeoutSeconds when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1948,7 +1948,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set if value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2012,7 +2012,7 @@ should set resources when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2083,7 +2083,7 @@ should set serviceAccountName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2147,7 +2147,7 @@ should set tolerations when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap index f6533a0aeea95..99843656b581f 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap @@ -25,7 +25,7 @@ should create ServiceAccount for post-delete hook by default: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -108,7 +108,7 @@ should not create ServiceAccount for post-delete hook if serviceAccount.create i fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -138,7 +138,7 @@ should not create ServiceAccount, Role or RoleBinding for post-delete hook if se fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -168,7 +168,7 @@ should set nodeSelector in post-delete hook: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap index 3a7ced7542085..0809fe56076b1 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap @@ -18,7 +18,7 @@ sets Pod annotations when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -90,7 +90,7 @@ sets Pod labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -186,7 +186,7 @@ sets StatefulSet labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -290,7 +290,7 @@ should add insecureSkipProxyTLSVerify to args when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -362,7 +362,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and action value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -454,7 +454,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and is Fre value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -536,7 +536,7 @@ should add volumeMount for data volume when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -608,7 +608,7 @@ should expose diag port: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -680,7 +680,7 @@ should generate Statefulset when storage is disabled and mode is a Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -766,7 +766,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -850,7 +850,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -922,7 +922,7 @@ should have one replica when replicaCount is not set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -994,7 +994,7 @@ should install Statefulset when storage is disabled and mode is a Fresh Install: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1068,7 +1068,7 @@ should mount extraVolumes and extraVolumeMounts: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1145,7 +1145,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1225,7 +1225,7 @@ should mount jamfCredentialsSecret.name when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1307,7 +1307,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1391,7 +1391,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: /etc/teleport-tls-ca/ca.pem - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1471,7 +1471,7 @@ should not add emptyDir for data when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1543,7 +1543,7 @@ should provision initContainer correctly when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1673,7 +1673,7 @@ should set affinity when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set default serviceAccountName when not set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1830,7 +1830,7 @@ should set environment when extraEnv set in values: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1974,7 +1974,7 @@ should set imagePullPolicy when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -2046,7 +2046,7 @@ should set nodeSelector if set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2132,7 +2132,7 @@ should set preferred affinity when more than one replica is used: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2204,7 +2204,7 @@ should set probeTimeoutSeconds when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2286,7 +2286,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2358,7 +2358,7 @@ should set resources when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2437,7 +2437,7 @@ should set serviceAccountName when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2509,7 +2509,7 @@ should set storage.requests when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2581,7 +2581,7 @@ should set storage.storageClassName when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2653,7 +2653,7 @@ should set tolerations when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap index a0ad90efdf202..31093509b7c6b 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap @@ -27,7 +27,7 @@ sets the affinity: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -73,7 +73,7 @@ sets the tolerations: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/lib/auth/auth.go b/lib/auth/auth.go index ed183741f8f13..6afc5bfdba98d 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -3011,7 +3011,7 @@ func generateCert(ctx context.Context, a *Server, req certRequest, caType types. // TODO(greedy52) any better way to validate user id from client cert? // could we use user state or req.githubUserID only? if req.githubUserID != "" { - allowedLogins = append(allowedLogins, githubUserID) + allowedLogins = append(allowedLogins, req.githubUserID) } else if req.user.GetGitHubUserID() != "" && req.user.GetGitHubUserID() != req.githubUserID { allowedLogins = append(allowedLogins, req.user.GetGitHubUserID()) } From 4488820d9a7f8e14e4c98a49dc78baf1029cd715 Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Mon, 28 Oct 2024 10:25:36 -0400 Subject: [PATCH 6/8] Release v10.2.7-dev.me.2 --- Makefile | 2 +- api/version.go | 2 +- examples/chart/access/discord/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/email/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 24 ++-- .../__snapshot__/deployment_test.yaml.snap | 58 ++++----- examples/chart/access/jira/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/mattermost/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 28 ++-- examples/chart/access/msteams/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/pagerduty/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/slack/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/event-handler/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 6 +- examples/chart/teleport-cluster/Chart.yaml | 2 +- .../charts/teleport-operator/Chart.yaml | 2 +- .../auth_clusterrole_test.yaml.snap | 6 +- .../__snapshot__/auth_config_test.yaml.snap | 6 +- .../auth_deployment_test.yaml.snap | 8 +- .../__snapshot__/proxy_config_test.yaml.snap | 6 +- .../proxy_deployment_test.yaml.snap | 54 ++++---- examples/chart/teleport-kube-agent/Chart.yaml | 2 +- .../tests/__snapshot__/config_test.yaml.snap | 120 +++++++++--------- .../__snapshot__/deployment_test.yaml.snap | 64 +++++----- .../tests/__snapshot__/job_test.yaml.snap | 8 +- .../__snapshot__/statefulset_test.yaml.snap | 70 +++++----- .../updater_deployment_test.yaml.snap | 4 +- 39 files changed, 278 insertions(+), 278 deletions(-) diff --git a/Makefile b/Makefile index 21a5081600f66..f924db821e304 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ # Stable releases: "1.0.0" # Pre-releases: "1.0.0-alpha.1", "1.0.0-beta.2", "1.0.0-rc.3" # Master/dev branch: "1.0.0-dev" -VERSION=17.0.0-dev.githubproxy.1 +VERSION=10.2.7-dev.me.2 DOCKER_IMAGE ?= teleport diff --git a/api/version.go b/api/version.go index c5a70c93d673e..ac1072eaf7fb3 100644 --- a/api/version.go +++ b/api/version.go @@ -3,6 +3,6 @@ package api import "github.com/coreos/go-semver/semver" -const Version = "17.0.0-dev.githubproxy.1" +const Version = "10.2.7-dev.me.2" var SemVersion = semver.New(Version) diff --git a/examples/chart/access/discord/Chart.yaml b/examples/chart/access/discord/Chart.yaml index 44a6e633fdb86..850c128ec1499 100644 --- a/examples/chart/access/discord/Chart.yaml +++ b/examples/chart/access/discord/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap index d5d75bb597c38..9e78f24320af9 100644 --- a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap index 2a833956efac5..64a3292fb1e2a 100644 --- a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-discord spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 spec: containers: - command: diff --git a/examples/chart/access/email/Chart.yaml b/examples/chart/access/email/Chart.yaml index a83ff2ca78804..87c0290c33ffb 100644 --- a/examples/chart/access/email/Chart.yaml +++ b/examples/chart/access/email/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap index 27ff1be97adf5..2c224ff4325b8 100644 --- a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap @@ -26,8 +26,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on): 1: | @@ -59,8 +59,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, no starttls): 1: | @@ -92,8 +92,8 @@ should match the snapshot (smtp on, no starttls): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, password file): 1: | @@ -125,8 +125,8 @@ should match the snapshot (smtp on, password file): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, roleToRecipients set): 1: | @@ -161,8 +161,8 @@ should match the snapshot (smtp on, roleToRecipients set): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, starttls disabled): 1: | @@ -194,6 +194,6 @@ should match the snapshot (smtp on, starttls disabled): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap index 76e0ca4ebea8e..07340292cc3ab 100644 --- a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -22,8 +22,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -34,7 +34,7 @@ should be possible to override volume name (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -75,8 +75,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -90,8 +90,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -136,8 +136,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -151,8 +151,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -163,7 +163,7 @@ should match the snapshot (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -204,8 +204,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -219,8 +219,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -231,7 +231,7 @@ should match the snapshot (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -272,8 +272,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -287,8 +287,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -299,7 +299,7 @@ should mount external secret (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -340,8 +340,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -355,8 +355,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 spec: containers: - command: @@ -367,7 +367,7 @@ should mount external secret (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: diff --git a/examples/chart/access/jira/Chart.yaml b/examples/chart/access/jira/Chart.yaml index 476ca43cbdef6..2d3594629e2ce 100644 --- a/examples/chart/access/jira/Chart.yaml +++ b/examples/chart/access/jira/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap index 6bf6885477f21..98fcf521fee07 100644 --- a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap @@ -32,6 +32,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap index 150cad388bae8..0fc23d6e51ee9 100644 --- a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-jira spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 spec: containers: - command: diff --git a/examples/chart/access/mattermost/Chart.yaml b/examples/chart/access/mattermost/Chart.yaml index a5760b5587095..c90bc218ba3ce 100644 --- a/examples/chart/access/mattermost/Chart.yaml +++ b/examples/chart/access/mattermost/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap index 995da7a6f4a0a..51006266ac572 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap @@ -22,6 +22,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap index 55e737cecc750..524be3fe6638f 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 spec: containers: - command: @@ -75,8 +75,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -90,8 +90,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 spec: containers: - command: @@ -102,7 +102,7 @@ should mount external secret: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: @@ -143,8 +143,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -158,8 +158,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 spec: containers: - command: @@ -170,7 +170,7 @@ should override volume name: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: diff --git a/examples/chart/access/msteams/Chart.yaml b/examples/chart/access/msteams/Chart.yaml index 73cce9a325ec9..652d19b412d31 100644 --- a/examples/chart/access/msteams/Chart.yaml +++ b/examples/chart/access/msteams/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap index 8d4ab8e323dd4..b48b61f4bff69 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap @@ -29,6 +29,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap index f223953b48d78..a954e064e139d 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-msteams spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 spec: containers: - command: diff --git a/examples/chart/access/pagerduty/Chart.yaml b/examples/chart/access/pagerduty/Chart.yaml index 5bc5b518dbd60..53473c167a4ad 100644 --- a/examples/chart/access/pagerduty/Chart.yaml +++ b/examples/chart/access/pagerduty/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap index bf50a7bd27683..fd7fcf07603d5 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap @@ -21,6 +21,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap index 143ce556f820d..6c36ce10d130b 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-pagerduty spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 spec: containers: - command: diff --git a/examples/chart/access/slack/Chart.yaml b/examples/chart/access/slack/Chart.yaml index 2ef058a2f5e0b..66f2b93cb0fc9 100644 --- a/examples/chart/access/slack/Chart.yaml +++ b/examples/chart/access/slack/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap index f2b41801e50ff..d0b5f85aa5569 100644 --- a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap index aecd401a74945..9189990be77dc 100644 --- a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-slack spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 spec: containers: - command: diff --git a/examples/chart/event-handler/Chart.yaml b/examples/chart/event-handler/Chart.yaml index 95eff1d06df4a..076aa0d0e2f0b 100644 --- a/examples/chart/event-handler/Chart.yaml +++ b/examples/chart/event-handler/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" apiVersion: v2 name: teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap index 253aeff486fa6..6e1be70ed2bd8 100644 --- a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap @@ -26,6 +26,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-event-handler-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap index ef7f61bfc618b..4f61682f6ac39 100644 --- a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.1 + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-plugin-event-handler-10.2.7-dev.me.2 name: RELEASE-NAME-teleport-plugin-event-handler spec: replicas: 1 @@ -82,7 +82,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: "true" - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-plugin-event-handler:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-plugin-event-handler:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: teleport-plugin-event-handler ports: diff --git a/examples/chart/teleport-cluster/Chart.yaml b/examples/chart/teleport-cluster/Chart.yaml index d0fbdc7ac9835..87d18cea23bd2 100644 --- a/examples/chart/teleport-cluster/Chart.yaml +++ b/examples/chart/teleport-cluster/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" name: teleport-cluster apiVersion: v2 diff --git a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml index d9b08f435fcc4..d95e3c0280e46 100644 --- a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml +++ b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" name: teleport-operator apiVersion: v2 diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap index 7d206135d2927..ce1cc59720a3b 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap @@ -8,9 +8,9 @@ adds operator permissions to ClusterRole: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 - teleport.dev/majorVersion: "17" + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 + teleport.dev/majorVersion: "10" name: RELEASE-NAME rules: - apiGroups: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap index 72059a8bf849a..0b0deae2d1e11 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap @@ -1848,9 +1848,9 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 - teleport.dev/majorVersion: "17" + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 + teleport.dev/majorVersion: "10" name: RELEASE-NAME-auth namespace: NAMESPACE uses athena as primary backend when configured: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap index 4b1ad750f604b..b1ab5260cb3bd 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap @@ -8,7 +8,7 @@ - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -141,7 +141,7 @@ should set nodeSelector when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -238,7 +238,7 @@ should set resources when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -324,7 +324,7 @@ should set securityContext when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap index b687f2a1c3407..a3366d5236a7a 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap @@ -567,8 +567,8 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 - teleport.dev/majorVersion: "17" + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 + teleport.dev/majorVersion: "10" name: RELEASE-NAME-proxy namespace: NAMESPACE diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap index ac25e08a24401..6ac577c4f7852 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap @@ -11,9 +11,9 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 - teleport.dev/majorVersion: "17" + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 + teleport.dev/majorVersion: "10" name: RELEASE-NAME-proxy namespace: NAMESPACE spec: @@ -26,7 +26,7 @@ sets clusterDomain on Deployment Pods: template: metadata: annotations: - checksum/config: fa45db9211a0ee11be2bedfc8f0a87c3f795c3a0a02e0ac6020a37acb199b7ad + checksum/config: c08fe362d355e7ef083f866779b2930fb97d0f167151d8513302a6a597242868 kubernetes.io/pod: test-annotation kubernetes.io/pod-different: 4 labels: @@ -34,9 +34,9 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 17.0.0-dev.githubproxy.1 - helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.1 - teleport.dev/majorVersion: "17" + app.kubernetes.io/version: 10.2.7-dev.me.2 + helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 + teleport.dev/majorVersion: "10" spec: affinity: podAntiAffinity: null @@ -44,7 +44,7 @@ sets clusterDomain on Deployment Pods: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -104,8 +104,8 @@ sets clusterDomain on Deployment Pods: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.test.com - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.test.com + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update serviceAccountName: RELEASE-NAME-proxy terminationGracePeriodSeconds: 60 @@ -136,8 +136,8 @@ should provision initContainer correctly when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update resources: limits: @@ -201,7 +201,7 @@ should set nodeSelector when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -261,8 +261,8 @@ should set nodeSelector when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update nodeSelector: environment: security @@ -313,7 +313,7 @@ should set resources for wait-auth-update initContainer when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -380,8 +380,8 @@ should set resources for wait-auth-update initContainer when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update resources: limits: @@ -421,7 +421,7 @@ should set resources when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -488,8 +488,8 @@ should set resources when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update resources: limits: @@ -529,7 +529,7 @@ should set securityContext for initContainers when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -596,8 +596,8 @@ should set securityContext for initContainers when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update securityContext: allowPrivilegeEscalation: false @@ -637,7 +637,7 @@ should set securityContext when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -704,8 +704,8 @@ should set securityContext when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 name: wait-auth-update securityContext: allowPrivilegeEscalation: false diff --git a/examples/chart/teleport-kube-agent/Chart.yaml b/examples/chart/teleport-kube-agent/Chart.yaml index 774ee323edda7..77b2bf5512386 100644 --- a/examples/chart/teleport-kube-agent/Chart.yaml +++ b/examples/chart/teleport-kube-agent/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "17.0.0-dev.githubproxy.1" +.version: &version "10.2.7-dev.me.2" name: teleport-kube-agent apiVersion: v2 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap index ad817a9498ce3..84cc9b231e349 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap @@ -21,6 +21,8 @@ does not generate a config for clusterrole.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -34,8 +36,6 @@ does not generate a config for clusterrole.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -63,6 +63,8 @@ does not generate a config for pdb.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -76,8 +78,6 @@ does not generate a config for pdb.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -105,6 +105,8 @@ matches snapshot and tests for annotations.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -118,8 +120,6 @@ matches snapshot and tests for annotations.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: annotations: @@ -150,6 +150,8 @@ matches snapshot and tests for extra-labels.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -163,8 +165,6 @@ matches snapshot and tests for extra-labels.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: labels: @@ -195,6 +195,8 @@ matches snapshot for affinity.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -208,8 +210,6 @@ matches snapshot for affinity.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -254,6 +254,8 @@ matches snapshot for all-v6.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -267,8 +269,6 @@ matches snapshot for all-v6.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: annotations: @@ -317,6 +317,8 @@ matches snapshot for app-discovery-full.yaml: ssh_service: enabled: false teleport: + auth_servers: + - teleport.example.com join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -330,8 +332,6 @@ matches snapshot for app-discovery-full.yaml: output: text output: stderr severity: INFO - proxy_server: teleport.example.com - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -371,6 +371,8 @@ matches snapshot for app-discovery-minimal.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -384,8 +386,6 @@ matches snapshot for app-discovery-minimal.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -425,6 +425,8 @@ matches snapshot for aws-databases.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -438,8 +440,6 @@ matches snapshot for aws-databases.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -488,6 +488,8 @@ matches snapshot for azure-databases.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -501,8 +503,6 @@ matches snapshot for azure-databases.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -530,6 +530,8 @@ matches snapshot for backwards-compatibility.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -543,8 +545,6 @@ matches snapshot for backwards-compatibility.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -572,6 +572,8 @@ matches snapshot for ca-pin.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 ca_pin: - sha256:7e12c17c20d9cb504bbcb3f0236be3f446861f1396dcbb44425fe28ec1c108f1 join_params: @@ -587,8 +589,6 @@ matches snapshot for ca-pin.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -621,6 +621,8 @@ matches snapshot for db.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -634,8 +636,6 @@ matches snapshot for db.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -665,6 +665,8 @@ matches snapshot for dynamic-app.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -678,8 +680,6 @@ matches snapshot for dynamic-app.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -709,6 +709,8 @@ matches snapshot for dynamic-db.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -722,8 +724,6 @@ matches snapshot for dynamic-db.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -751,6 +751,8 @@ matches snapshot for imagepullsecrets.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -764,8 +766,6 @@ matches snapshot for imagepullsecrets.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -793,6 +793,8 @@ matches snapshot for initcontainers.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -806,8 +808,6 @@ matches snapshot for initcontainers.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -837,6 +837,8 @@ matches snapshot for jamf-service-existing-secret.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -850,8 +852,6 @@ matches snapshot for jamf-service-existing-secret.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -881,6 +881,8 @@ matches snapshot for jamf-service.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -894,8 +896,6 @@ matches snapshot for jamf-service.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -923,6 +923,8 @@ matches snapshot for join-params-iam.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: iam token_name: /etc/teleport-secrets/auth-token @@ -936,8 +938,6 @@ matches snapshot for join-params-iam.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -965,6 +965,8 @@ matches snapshot for join-params-token.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -978,8 +980,6 @@ matches snapshot for join-params-token.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1007,6 +1007,8 @@ matches snapshot for log-basic.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1020,8 +1022,6 @@ matches snapshot for log-basic.yaml: output: json output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1049,6 +1049,8 @@ matches snapshot for log-extra.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1062,8 +1064,6 @@ matches snapshot for log-extra.yaml: output: json output: /var/lib/teleport/test.log severity: DEBUG - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1091,6 +1091,8 @@ matches snapshot for log-legacy.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1104,8 +1106,6 @@ matches snapshot for log-legacy.yaml: output: text output: stderr severity: DEBUG - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1133,6 +1133,8 @@ matches snapshot for node-selector.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1146,8 +1148,6 @@ matches snapshot for node-selector.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1175,6 +1175,8 @@ matches snapshot for pdb.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1188,8 +1190,6 @@ matches snapshot for pdb.yaml: output: json output: /var/lib/teleport/test.log severity: DEBUG - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1217,6 +1217,8 @@ matches snapshot for resources.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1230,8 +1232,6 @@ matches snapshot for resources.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1259,6 +1259,8 @@ matches snapshot for stateful.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1272,8 +1274,6 @@ matches snapshot for stateful.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1301,6 +1301,8 @@ matches snapshot for tolerations.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1314,8 +1316,6 @@ matches snapshot for tolerations.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1427,6 +1427,8 @@ matches snapshot for volumes.yaml: ssh_service: enabled: false teleport: + auth_servers: + - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1440,8 +1442,6 @@ matches snapshot for volumes.yaml: output: text output: stderr severity: INFO - proxy_server: proxy.example.com:3080 - version: v3 kind: ConfigMap metadata: name: RELEASE-NAME diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap index 681282bf3342f..a749eb245cfeb 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap @@ -18,7 +18,7 @@ sets Deployment annotations when specified if action is Upgrade: template: metadata: annotations: - checksum/config: 310911b3e71e9339802aeca1d182e1acf5153470f507ce4af423a73e6e06eaba + checksum/config: 5c712e1a4d8cad82d1f3dcfc16e2e76e4b5db710106a83d4770db3eb20a23c83 kubernetes.io/pod: test-annotation kubernetes.io/pod-different: 4 labels: @@ -32,7 +32,7 @@ sets Deployment annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -95,7 +95,7 @@ sets Deployment labels when specified if action is Upgrade: template: metadata: annotations: - checksum/config: 9e9cb2e4d76c492bccf0b1e2be4a5acffc8fe747484eb62e615c5ed8dc8c3fc6 + checksum/config: 31a44629ffb583f06c03b229a2ba405fede8683ad493b347774ac906482713c9 labels: app: RELEASE-NAME app.kubernetes.io/name: teleport-kube-agent @@ -109,7 +109,7 @@ sets Deployment labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -173,7 +173,7 @@ sets Pod annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -237,7 +237,7 @@ sets Pod labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -322,7 +322,7 @@ should add emptyDir for data when existingDataVolume is not set if action is Upg value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -387,7 +387,7 @@ should add insecureSkipProxyTLSVerify to args when set in values if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -451,7 +451,7 @@ should correctly configure existingDataVolume when set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -513,7 +513,7 @@ should expose diag port if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -589,7 +589,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -665,7 +665,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -729,7 +729,7 @@ should have one replica when replicaCount is not set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -793,7 +793,7 @@ should mount extraVolumes and extraVolumeMounts if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -862,7 +862,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf an value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -932,7 +932,7 @@ should mount jamfCredentialsSecret.name when role is jamf and action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1004,7 +1004,7 @@ should mount tls.existingCASecretName and set environment when set in values if value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1078,7 +1078,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: http://username:password@my.proxy.host:3128 - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1148,7 +1148,7 @@ should provision initContainer correctly when set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1270,7 +1270,7 @@ should set affinity when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1334,7 +1334,7 @@ should set default serviceAccountName when not set in values if action is Upgrad value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1411,7 +1411,7 @@ should set environment when extraEnv set in values if action is Upgrade: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1539,7 +1539,7 @@ should set imagePullPolicy when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -1603,7 +1603,7 @@ should set nodeSelector if set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1669,7 +1669,7 @@ should set not set priorityClassName when not set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set preferred affinity when more than one replica is used if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1809,7 +1809,7 @@ should set priorityClassName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1874,7 +1874,7 @@ should set probeTimeoutSeconds when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1948,7 +1948,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set if value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2012,7 +2012,7 @@ should set resources when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2083,7 +2083,7 @@ should set serviceAccountName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2147,7 +2147,7 @@ should set tolerations when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap index 99843656b581f..5695702fac008 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap @@ -25,7 +25,7 @@ should create ServiceAccount for post-delete hook by default: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -108,7 +108,7 @@ should not create ServiceAccount for post-delete hook if serviceAccount.create i fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -138,7 +138,7 @@ should not create ServiceAccount, Role or RoleBinding for post-delete hook if se fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -168,7 +168,7 @@ should set nodeSelector in post-delete hook: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap index 0809fe56076b1..05f27064348f4 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap @@ -18,7 +18,7 @@ sets Pod annotations when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -90,7 +90,7 @@ sets Pod labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -162,7 +162,7 @@ sets StatefulSet labels when specified: template: metadata: annotations: - checksum/config: 9e9cb2e4d76c492bccf0b1e2be4a5acffc8fe747484eb62e615c5ed8dc8c3fc6 + checksum/config: 31a44629ffb583f06c03b229a2ba405fede8683ad493b347774ac906482713c9 labels: app: RELEASE-NAME app.kubernetes.io/name: teleport-kube-agent @@ -186,7 +186,7 @@ sets StatefulSet labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -290,7 +290,7 @@ should add insecureSkipProxyTLSVerify to args when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -362,7 +362,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and action value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -432,7 +432,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and is Fre template: metadata: annotations: - checksum/config: 5784fa709686cf9d0818ad218ab23bb886fa3877e4a84eb1bdeb25acbe8e6b3c + checksum/config: aad1abc028d17cf65b68719460fefea0ea2dbacf0a75d20e080a5b45073a505c labels: app: RELEASE-NAME spec: @@ -454,7 +454,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and is Fre value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -536,7 +536,7 @@ should add volumeMount for data volume when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -608,7 +608,7 @@ should expose diag port: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -680,7 +680,7 @@ should generate Statefulset when storage is disabled and mode is a Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -766,7 +766,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -850,7 +850,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -922,7 +922,7 @@ should have one replica when replicaCount is not set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -994,7 +994,7 @@ should install Statefulset when storage is disabled and mode is a Fresh Install: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1068,7 +1068,7 @@ should mount extraVolumes and extraVolumeMounts: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1145,7 +1145,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1225,7 +1225,7 @@ should mount jamfCredentialsSecret.name when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1307,7 +1307,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1391,7 +1391,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: /etc/teleport-tls-ca/ca.pem - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1471,7 +1471,7 @@ should not add emptyDir for data when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1543,7 +1543,7 @@ should provision initContainer correctly when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1673,7 +1673,7 @@ should set affinity when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set default serviceAccountName when not set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1830,7 +1830,7 @@ should set environment when extraEnv set in values: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1974,7 +1974,7 @@ should set imagePullPolicy when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -2046,7 +2046,7 @@ should set nodeSelector if set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2132,7 +2132,7 @@ should set preferred affinity when more than one replica is used: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2204,7 +2204,7 @@ should set probeTimeoutSeconds when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2286,7 +2286,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2358,7 +2358,7 @@ should set resources when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2437,7 +2437,7 @@ should set serviceAccountName when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2509,7 +2509,7 @@ should set storage.requests when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2581,7 +2581,7 @@ should set storage.storageClassName when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2653,7 +2653,7 @@ should set tolerations when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap index 31093509b7c6b..303a8d5367563 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap @@ -27,7 +27,7 @@ sets the affinity: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -73,7 +73,7 @@ sets the tolerations: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.1 + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:10.2.7-dev.me.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 From 5b32293a046ea79a9c9b92b74815b840085dbec0 Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Mon, 28 Oct 2024 11:21:00 -0400 Subject: [PATCH 7/8] Release v17.0.0-dev.githubproxy.2 --- Makefile | 2 +- api/version.go | 2 +- e | 2 +- examples/chart/access/discord/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/email/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 24 ++-- .../__snapshot__/deployment_test.yaml.snap | 58 ++++----- examples/chart/access/jira/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/mattermost/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 28 ++-- examples/chart/access/msteams/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/pagerduty/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/access/slack/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 8 +- examples/chart/event-handler/Chart.yaml | 2 +- .../__snapshot__/configmap_test.yaml.snap | 4 +- .../__snapshot__/deployment_test.yaml.snap | 6 +- examples/chart/teleport-cluster/Chart.yaml | 2 +- .../charts/teleport-operator/Chart.yaml | 2 +- .../auth_clusterrole_test.yaml.snap | 6 +- .../__snapshot__/auth_config_test.yaml.snap | 6 +- .../auth_deployment_test.yaml.snap | 8 +- .../__snapshot__/proxy_config_test.yaml.snap | 6 +- .../proxy_deployment_test.yaml.snap | 54 ++++---- examples/chart/teleport-kube-agent/Chart.yaml | 2 +- .../tests/__snapshot__/config_test.yaml.snap | 120 +++++++++--------- .../__snapshot__/deployment_test.yaml.snap | 64 +++++----- .../tests/__snapshot__/job_test.yaml.snap | 8 +- .../__snapshot__/statefulset_test.yaml.snap | 70 +++++----- .../updater_deployment_test.yaml.snap | 4 +- 40 files changed, 279 insertions(+), 279 deletions(-) diff --git a/Makefile b/Makefile index f924db821e304..d4abc044f162a 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ # Stable releases: "1.0.0" # Pre-releases: "1.0.0-alpha.1", "1.0.0-beta.2", "1.0.0-rc.3" # Master/dev branch: "1.0.0-dev" -VERSION=10.2.7-dev.me.2 +VERSION=17.0.0-dev.githubproxy.2 DOCKER_IMAGE ?= teleport diff --git a/api/version.go b/api/version.go index ac1072eaf7fb3..74269a2a45921 100644 --- a/api/version.go +++ b/api/version.go @@ -3,6 +3,6 @@ package api import "github.com/coreos/go-semver/semver" -const Version = "10.2.7-dev.me.2" +const Version = "17.0.0-dev.githubproxy.2" var SemVersion = semver.New(Version) diff --git a/e b/e index 3d9e215d34085..04b2ef6daa546 160000 --- a/e +++ b/e @@ -1 +1 @@ -Subproject commit 3d9e215d34085c7909ce8f6ecf316533b7dd0db4 +Subproject commit 04b2ef6daa546175d44a8959d1a60c5dfdfb4e91 diff --git a/examples/chart/access/discord/Chart.yaml b/examples/chart/access/discord/Chart.yaml index 850c128ec1499..e4d015342a7d8 100644 --- a/examples/chart/access/discord/Chart.yaml +++ b/examples/chart/access/discord/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap index 9e78f24320af9..c4c4b75db1bf8 100644 --- a/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-discord diff --git a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap index 64a3292fb1e2a..a219eb71aa233 100644 --- a/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/discord/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-discord spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-discord - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-discord-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-discord-17.0.0-dev.githubproxy.2 spec: containers: - command: diff --git a/examples/chart/access/email/Chart.yaml b/examples/chart/access/email/Chart.yaml index 87c0290c33ffb..654b543785cf2 100644 --- a/examples/chart/access/email/Chart.yaml +++ b/examples/chart/access/email/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap index 2c224ff4325b8..66d903a69c5a0 100644 --- a/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/configmap_test.yaml.snap @@ -26,8 +26,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on): 1: | @@ -59,8 +59,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, no starttls): 1: | @@ -92,8 +92,8 @@ should match the snapshot (smtp on, no starttls): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, password file): 1: | @@ -125,8 +125,8 @@ should match the snapshot (smtp on, password file): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, roleToRecipients set): 1: | @@ -161,8 +161,8 @@ should match the snapshot (smtp on, roleToRecipients set): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email should match the snapshot (smtp on, starttls disabled): 1: | @@ -194,6 +194,6 @@ should match the snapshot (smtp on, starttls disabled): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email diff --git a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap index 07340292cc3ab..5c1b7e95a8326 100644 --- a/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/email/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -22,8 +22,8 @@ should be possible to override volume name (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -34,7 +34,7 @@ should be possible to override volume name (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -75,8 +75,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -90,8 +90,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -136,8 +136,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -151,8 +151,8 @@ should match the snapshot (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -163,7 +163,7 @@ should match the snapshot (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -204,8 +204,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -219,8 +219,8 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -231,7 +231,7 @@ should match the snapshot (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -272,8 +272,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -287,8 +287,8 @@ should mount external secret (mailgun on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -299,7 +299,7 @@ should mount external secret (mailgun on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: @@ -340,8 +340,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-email spec: replicas: 1 @@ -355,8 +355,8 @@ should mount external secret (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-email - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-email-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-email-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -367,7 +367,7 @@ should mount external secret (smtp on): env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-email:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-email:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-email ports: diff --git a/examples/chart/access/jira/Chart.yaml b/examples/chart/access/jira/Chart.yaml index 2d3594629e2ce..6122f1de69861 100644 --- a/examples/chart/access/jira/Chart.yaml +++ b/examples/chart/access/jira/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap index 98fcf521fee07..a51175cad1f93 100644 --- a/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/configmap_test.yaml.snap @@ -32,6 +32,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-jira diff --git a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap index 0fc23d6e51ee9..547ec8dc42a7f 100644 --- a/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/jira/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-jira spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-jira - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-jira-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-jira-17.0.0-dev.githubproxy.2 spec: containers: - command: diff --git a/examples/chart/access/mattermost/Chart.yaml b/examples/chart/access/mattermost/Chart.yaml index c90bc218ba3ce..0a598c00ba7fa 100644 --- a/examples/chart/access/mattermost/Chart.yaml +++ b/examples/chart/access/mattermost/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap index 51006266ac572..bd05ddf9d3b44 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/configmap_test.yaml.snap @@ -22,6 +22,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-mattermost diff --git a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap index 524be3fe6638f..db8819108adda 100644 --- a/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/mattermost/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -75,8 +75,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -90,8 +90,8 @@ should mount external secret: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -102,7 +102,7 @@ should mount external secret: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: @@ -143,8 +143,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-mattermost spec: replicas: 1 @@ -158,8 +158,8 @@ should override volume name: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-mattermost - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-mattermost-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-mattermost-17.0.0-dev.githubproxy.2 spec: containers: - command: @@ -170,7 +170,7 @@ should override volume name: env: - name: TELEPORT_PLUGIN_FAIL_FAST value: "true" - image: public.ecr.aws/gravitational/teleport-plugin-mattermost:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-mattermost:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-mattermost ports: diff --git a/examples/chart/access/msteams/Chart.yaml b/examples/chart/access/msteams/Chart.yaml index 652d19b412d31..d35a0c1a8783b 100644 --- a/examples/chart/access/msteams/Chart.yaml +++ b/examples/chart/access/msteams/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap index b48b61f4bff69..5daf85a124b99 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/configmap_test.yaml.snap @@ -29,6 +29,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-msteams diff --git a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap index a954e064e139d..a5be7f09264f7 100644 --- a/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/msteams/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-msteams spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-msteams - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-msteams-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-msteams-17.0.0-dev.githubproxy.2 spec: containers: - command: diff --git a/examples/chart/access/pagerduty/Chart.yaml b/examples/chart/access/pagerduty/Chart.yaml index 53473c167a4ad..4bcbf6cc6ae90 100644 --- a/examples/chart/access/pagerduty/Chart.yaml +++ b/examples/chart/access/pagerduty/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap index fd7fcf07603d5..43bdd6e30ed94 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/configmap_test.yaml.snap @@ -21,6 +21,6 @@ should match the snapshot (smtp on): app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-pagerduty diff --git a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap index 6c36ce10d130b..61a0457b9137c 100644 --- a/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/pagerduty/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-pagerduty spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-pagerduty - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-pagerduty-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-pagerduty-17.0.0-dev.githubproxy.2 spec: containers: - command: diff --git a/examples/chart/access/slack/Chart.yaml b/examples/chart/access/slack/Chart.yaml index 66f2b93cb0fc9..91a31540d9e4d 100644 --- a/examples/chart/access/slack/Chart.yaml +++ b/examples/chart/access/slack/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap index d0b5f85aa5569..5a99545c8fb68 100644 --- a/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/configmap_test.yaml.snap @@ -24,6 +24,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-slack diff --git a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap index 9189990be77dc..22defb7c3e17d 100644 --- a/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/access/slack/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-slack spec: replicas: 1 @@ -22,8 +22,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-slack - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-slack-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-slack-17.0.0-dev.githubproxy.2 spec: containers: - command: diff --git a/examples/chart/event-handler/Chart.yaml b/examples/chart/event-handler/Chart.yaml index 076aa0d0e2f0b..fd785ce4638f6 100644 --- a/examples/chart/event-handler/Chart.yaml +++ b/examples/chart/event-handler/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" apiVersion: v2 name: teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap index 6e1be70ed2bd8..87b0930dfda4d 100644 --- a/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/configmap_test.yaml.snap @@ -26,6 +26,6 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-event-handler-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-event-handler diff --git a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap index 4f61682f6ac39..ae5d2bcff8cfa 100644 --- a/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/event-handler/tests/__snapshot__/deployment_test.yaml.snap @@ -7,8 +7,8 @@ should match the snapshot: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-plugin-event-handler - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-plugin-event-handler-10.2.7-dev.me.2 + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-plugin-event-handler-17.0.0-dev.githubproxy.2 name: RELEASE-NAME-teleport-plugin-event-handler spec: replicas: 1 @@ -82,7 +82,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: "true" - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-plugin-event-handler:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-plugin-event-handler:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: teleport-plugin-event-handler ports: diff --git a/examples/chart/teleport-cluster/Chart.yaml b/examples/chart/teleport-cluster/Chart.yaml index 87d18cea23bd2..b6b19b2e27ec6 100644 --- a/examples/chart/teleport-cluster/Chart.yaml +++ b/examples/chart/teleport-cluster/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" name: teleport-cluster apiVersion: v2 diff --git a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml index d95e3c0280e46..e320cbc8a7bd5 100644 --- a/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml +++ b/examples/chart/teleport-cluster/charts/teleport-operator/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" name: teleport-operator apiVersion: v2 diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap index ce1cc59720a3b..3db5605376e51 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_clusterrole_test.yaml.snap @@ -8,9 +8,9 @@ adds operator permissions to ClusterRole: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 - teleport.dev/majorVersion: "10" + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.2 + teleport.dev/majorVersion: "17" name: RELEASE-NAME rules: - apiGroups: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap index 0b0deae2d1e11..e2802af0d4969 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_config_test.yaml.snap @@ -1848,9 +1848,9 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 - teleport.dev/majorVersion: "10" + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.2 + teleport.dev/majorVersion: "17" name: RELEASE-NAME-auth namespace: NAMESPACE uses athena as primary backend when configured: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap index b1ab5260cb3bd..eb0444478a273 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/auth_deployment_test.yaml.snap @@ -8,7 +8,7 @@ - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -141,7 +141,7 @@ should set nodeSelector when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -238,7 +238,7 @@ should set resources when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -324,7 +324,7 @@ should set securityContext when set in values: - args: - --diag-addr=0.0.0.0:3000 - --apply-on-startup=/etc/teleport/apply-on-startup.yaml - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap index a3366d5236a7a..06c41e1654e15 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_config_test.yaml.snap @@ -567,8 +567,8 @@ sets clusterDomain on Configmap: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 - teleport.dev/majorVersion: "10" + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.2 + teleport.dev/majorVersion: "17" name: RELEASE-NAME-proxy namespace: NAMESPACE diff --git a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap index 6ac577c4f7852..25727c18862b0 100644 --- a/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap +++ b/examples/chart/teleport-cluster/tests/__snapshot__/proxy_deployment_test.yaml.snap @@ -11,9 +11,9 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 - teleport.dev/majorVersion: "10" + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.2 + teleport.dev/majorVersion: "17" name: RELEASE-NAME-proxy namespace: NAMESPACE spec: @@ -26,7 +26,7 @@ sets clusterDomain on Deployment Pods: template: metadata: annotations: - checksum/config: c08fe362d355e7ef083f866779b2930fb97d0f167151d8513302a6a597242868 + checksum/config: 4ac2bb4e0e0c82d336bb0a6946a4bc0aea2219d57fdfbfbee31ec43632dea3d5 kubernetes.io/pod: test-annotation kubernetes.io/pod-different: 4 labels: @@ -34,9 +34,9 @@ sets clusterDomain on Deployment Pods: app.kubernetes.io/instance: RELEASE-NAME app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: teleport-cluster - app.kubernetes.io/version: 10.2.7-dev.me.2 - helm.sh/chart: teleport-cluster-10.2.7-dev.me.2 - teleport.dev/majorVersion: "10" + app.kubernetes.io/version: 17.0.0-dev.githubproxy.2 + helm.sh/chart: teleport-cluster-17.0.0-dev.githubproxy.2 + teleport.dev/majorVersion: "17" spec: affinity: podAntiAffinity: null @@ -44,7 +44,7 @@ sets clusterDomain on Deployment Pods: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -104,8 +104,8 @@ sets clusterDomain on Deployment Pods: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.test.com - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.test.com + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update serviceAccountName: RELEASE-NAME-proxy terminationGracePeriodSeconds: 60 @@ -136,8 +136,8 @@ should provision initContainer correctly when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update resources: limits: @@ -201,7 +201,7 @@ should set nodeSelector when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -261,8 +261,8 @@ should set nodeSelector when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update nodeSelector: environment: security @@ -313,7 +313,7 @@ should set resources for wait-auth-update initContainer when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -380,8 +380,8 @@ should set resources for wait-auth-update initContainer when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update resources: limits: @@ -421,7 +421,7 @@ should set resources when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -488,8 +488,8 @@ should set resources when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update resources: limits: @@ -529,7 +529,7 @@ should set securityContext for initContainers when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -596,8 +596,8 @@ should set securityContext for initContainers when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update securityContext: allowPrivilegeEscalation: false @@ -637,7 +637,7 @@ should set securityContext when set in values: containers: - args: - --diag-addr=0.0.0.0:3000 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent lifecycle: preStop: @@ -704,8 +704,8 @@ should set securityContext when set in values: - teleport - wait - no-resolve - - RELEASE-NAME-auth-v9.NAMESPACE.svc.cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + - RELEASE-NAME-auth-v16.NAMESPACE.svc.cluster.local + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 name: wait-auth-update securityContext: allowPrivilegeEscalation: false diff --git a/examples/chart/teleport-kube-agent/Chart.yaml b/examples/chart/teleport-kube-agent/Chart.yaml index 77b2bf5512386..e81c01e27d217 100644 --- a/examples/chart/teleport-kube-agent/Chart.yaml +++ b/examples/chart/teleport-kube-agent/Chart.yaml @@ -1,4 +1,4 @@ -.version: &version "10.2.7-dev.me.2" +.version: &version "17.0.0-dev.githubproxy.2" name: teleport-kube-agent apiVersion: v2 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap index 84cc9b231e349..ad817a9498ce3 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/config_test.yaml.snap @@ -21,8 +21,6 @@ does not generate a config for clusterrole.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -36,6 +34,8 @@ does not generate a config for clusterrole.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -63,8 +63,6 @@ does not generate a config for pdb.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -78,6 +76,8 @@ does not generate a config for pdb.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -105,8 +105,6 @@ matches snapshot and tests for annotations.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -120,6 +118,8 @@ matches snapshot and tests for annotations.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: annotations: @@ -150,8 +150,6 @@ matches snapshot and tests for extra-labels.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -165,6 +163,8 @@ matches snapshot and tests for extra-labels.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: labels: @@ -195,8 +195,6 @@ matches snapshot for affinity.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -210,6 +208,8 @@ matches snapshot for affinity.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -254,8 +254,6 @@ matches snapshot for all-v6.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -269,6 +267,8 @@ matches snapshot for all-v6.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: annotations: @@ -317,8 +317,6 @@ matches snapshot for app-discovery-full.yaml: ssh_service: enabled: false teleport: - auth_servers: - - teleport.example.com join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -332,6 +330,8 @@ matches snapshot for app-discovery-full.yaml: output: text output: stderr severity: INFO + proxy_server: teleport.example.com + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -371,8 +371,6 @@ matches snapshot for app-discovery-minimal.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -386,6 +384,8 @@ matches snapshot for app-discovery-minimal.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -425,8 +425,6 @@ matches snapshot for aws-databases.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -440,6 +438,8 @@ matches snapshot for aws-databases.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -488,8 +488,6 @@ matches snapshot for azure-databases.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -503,6 +501,8 @@ matches snapshot for azure-databases.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -530,8 +530,6 @@ matches snapshot for backwards-compatibility.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -545,6 +543,8 @@ matches snapshot for backwards-compatibility.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -572,8 +572,6 @@ matches snapshot for ca-pin.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 ca_pin: - sha256:7e12c17c20d9cb504bbcb3f0236be3f446861f1396dcbb44425fe28ec1c108f1 join_params: @@ -589,6 +587,8 @@ matches snapshot for ca-pin.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -621,8 +621,6 @@ matches snapshot for db.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -636,6 +634,8 @@ matches snapshot for db.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -665,8 +665,6 @@ matches snapshot for dynamic-app.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -680,6 +678,8 @@ matches snapshot for dynamic-app.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -709,8 +709,6 @@ matches snapshot for dynamic-db.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -724,6 +722,8 @@ matches snapshot for dynamic-db.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -751,8 +751,6 @@ matches snapshot for imagepullsecrets.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -766,6 +764,8 @@ matches snapshot for imagepullsecrets.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -793,8 +793,6 @@ matches snapshot for initcontainers.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -808,6 +806,8 @@ matches snapshot for initcontainers.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -837,8 +837,6 @@ matches snapshot for jamf-service-existing-secret.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -852,6 +850,8 @@ matches snapshot for jamf-service-existing-secret.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -881,8 +881,6 @@ matches snapshot for jamf-service.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -896,6 +894,8 @@ matches snapshot for jamf-service.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -923,8 +923,6 @@ matches snapshot for join-params-iam.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: iam token_name: /etc/teleport-secrets/auth-token @@ -938,6 +936,8 @@ matches snapshot for join-params-iam.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -965,8 +965,6 @@ matches snapshot for join-params-token.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -980,6 +978,8 @@ matches snapshot for join-params-token.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1007,8 +1007,6 @@ matches snapshot for log-basic.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1022,6 +1020,8 @@ matches snapshot for log-basic.yaml: output: json output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1049,8 +1049,6 @@ matches snapshot for log-extra.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1064,6 +1062,8 @@ matches snapshot for log-extra.yaml: output: json output: /var/lib/teleport/test.log severity: DEBUG + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1091,8 +1091,6 @@ matches snapshot for log-legacy.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1106,6 +1104,8 @@ matches snapshot for log-legacy.yaml: output: text output: stderr severity: DEBUG + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1133,8 +1133,6 @@ matches snapshot for node-selector.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1148,6 +1146,8 @@ matches snapshot for node-selector.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1175,8 +1175,6 @@ matches snapshot for pdb.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1190,6 +1188,8 @@ matches snapshot for pdb.yaml: output: json output: /var/lib/teleport/test.log severity: DEBUG + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1217,8 +1217,6 @@ matches snapshot for resources.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1232,6 +1230,8 @@ matches snapshot for resources.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1259,8 +1259,6 @@ matches snapshot for stateful.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1274,6 +1272,8 @@ matches snapshot for stateful.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1301,8 +1301,6 @@ matches snapshot for tolerations.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1316,6 +1314,8 @@ matches snapshot for tolerations.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME @@ -1427,8 +1427,6 @@ matches snapshot for volumes.yaml: ssh_service: enabled: false teleport: - auth_servers: - - proxy.example.com:3080 join_params: method: token token_name: /etc/teleport-secrets/auth-token @@ -1442,6 +1440,8 @@ matches snapshot for volumes.yaml: output: text output: stderr severity: INFO + proxy_server: proxy.example.com:3080 + version: v3 kind: ConfigMap metadata: name: RELEASE-NAME diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap index a749eb245cfeb..9159a8f7f46d7 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/deployment_test.yaml.snap @@ -18,7 +18,7 @@ sets Deployment annotations when specified if action is Upgrade: template: metadata: annotations: - checksum/config: 5c712e1a4d8cad82d1f3dcfc16e2e76e4b5db710106a83d4770db3eb20a23c83 + checksum/config: 310911b3e71e9339802aeca1d182e1acf5153470f507ce4af423a73e6e06eaba kubernetes.io/pod: test-annotation kubernetes.io/pod-different: 4 labels: @@ -32,7 +32,7 @@ sets Deployment annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -95,7 +95,7 @@ sets Deployment labels when specified if action is Upgrade: template: metadata: annotations: - checksum/config: 31a44629ffb583f06c03b229a2ba405fede8683ad493b347774ac906482713c9 + checksum/config: 9e9cb2e4d76c492bccf0b1e2be4a5acffc8fe747484eb62e615c5ed8dc8c3fc6 labels: app: RELEASE-NAME app.kubernetes.io/name: teleport-kube-agent @@ -109,7 +109,7 @@ sets Deployment labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -173,7 +173,7 @@ sets Pod annotations when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -237,7 +237,7 @@ sets Pod labels when specified if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -322,7 +322,7 @@ should add emptyDir for data when existingDataVolume is not set if action is Upg value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -387,7 +387,7 @@ should add insecureSkipProxyTLSVerify to args when set in values if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -451,7 +451,7 @@ should correctly configure existingDataVolume when set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -513,7 +513,7 @@ should expose diag port if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -589,7 +589,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -665,7 +665,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -729,7 +729,7 @@ should have one replica when replicaCount is not set if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -793,7 +793,7 @@ should mount extraVolumes and extraVolumeMounts if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -862,7 +862,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf an value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -932,7 +932,7 @@ should mount jamfCredentialsSecret.name when role is jamf and action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1004,7 +1004,7 @@ should mount tls.existingCASecretName and set environment when set in values if value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1078,7 +1078,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: http://username:password@my.proxy.host:3128 - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1148,7 +1148,7 @@ should provision initContainer correctly when set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1270,7 +1270,7 @@ should set affinity when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1334,7 +1334,7 @@ should set default serviceAccountName when not set in values if action is Upgrad value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1411,7 +1411,7 @@ should set environment when extraEnv set in values if action is Upgrade: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1539,7 +1539,7 @@ should set imagePullPolicy when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -1603,7 +1603,7 @@ should set nodeSelector if set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1669,7 +1669,7 @@ should set not set priorityClassName when not set in values if action is Upgrade value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set preferred affinity when more than one replica is used if action is Up value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1809,7 +1809,7 @@ should set priorityClassName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1874,7 +1874,7 @@ should set probeTimeoutSeconds when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1948,7 +1948,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set if value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2012,7 +2012,7 @@ should set resources when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2083,7 +2083,7 @@ should set serviceAccountName when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2147,7 +2147,7 @@ should set tolerations when set in values if action is Upgrade: value: "true" - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap index 5695702fac008..5228349dc8b1d 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/job_test.yaml.snap @@ -25,7 +25,7 @@ should create ServiceAccount for post-delete hook by default: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -108,7 +108,7 @@ should not create ServiceAccount for post-delete hook if serviceAccount.create i fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -138,7 +138,7 @@ should not create ServiceAccount, Role or RoleBinding for post-delete hook if se fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: @@ -168,7 +168,7 @@ should set nodeSelector in post-delete hook: fieldPath: metadata.namespace - name: RELEASE_NAME value: RELEASE-NAME - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent name: post-delete-job securityContext: diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap index 05f27064348f4..50f6a428ea94f 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/statefulset_test.yaml.snap @@ -18,7 +18,7 @@ sets Pod annotations when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -90,7 +90,7 @@ sets Pod labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -162,7 +162,7 @@ sets StatefulSet labels when specified: template: metadata: annotations: - checksum/config: 31a44629ffb583f06c03b229a2ba405fede8683ad493b347774ac906482713c9 + checksum/config: 9e9cb2e4d76c492bccf0b1e2be4a5acffc8fe747484eb62e615c5ed8dc8c3fc6 labels: app: RELEASE-NAME app.kubernetes.io/name: teleport-kube-agent @@ -186,7 +186,7 @@ sets StatefulSet labels when specified: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -290,7 +290,7 @@ should add insecureSkipProxyTLSVerify to args when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -362,7 +362,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and action value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -432,7 +432,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and is Fre template: metadata: annotations: - checksum/config: aad1abc028d17cf65b68719460fefea0ea2dbacf0a75d20e080a5b45073a505c + checksum/config: 5784fa709686cf9d0818ad218ab23bb886fa3877e4a84eb1bdeb25acbe8e6b3c labels: app: RELEASE-NAME spec: @@ -454,7 +454,7 @@ should add volumeClaimTemplate for data volume when using StatefulSet and is Fre value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -536,7 +536,7 @@ should add volumeMount for data volume when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -608,7 +608,7 @@ should expose diag port: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -680,7 +680,7 @@ should generate Statefulset when storage is disabled and mode is a Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -766,7 +766,7 @@ should have multiple replicas when replicaCount is set (using .replicaCount, dep value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -850,7 +850,7 @@ should have multiple replicas when replicaCount is set (using highAvailability.r value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -922,7 +922,7 @@ should have one replica when replicaCount is not set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -994,7 +994,7 @@ should install Statefulset when storage is disabled and mode is a Fresh Install: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1068,7 +1068,7 @@ should mount extraVolumes and extraVolumeMounts: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1145,7 +1145,7 @@ should mount jamfCredentialsSecret if it already exists and when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1225,7 +1225,7 @@ should mount jamfCredentialsSecret.name when role is jamf: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1307,7 +1307,7 @@ should mount tls.existingCASecretName and set environment when set in values: value: cluster.local - name: SSL_CERT_FILE value: /etc/teleport-tls-ca/ca.pem - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1391,7 +1391,7 @@ should mount tls.existingCASecretName and set extra environment when set in valu value: /etc/teleport-tls-ca/ca.pem - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1471,7 +1471,7 @@ should not add emptyDir for data when using StatefulSet: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1543,7 +1543,7 @@ should provision initContainer correctly when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1673,7 +1673,7 @@ should set affinity when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1745,7 +1745,7 @@ should set default serviceAccountName when not set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1830,7 +1830,7 @@ should set environment when extraEnv set in values: value: cluster.local - name: HTTPS_PROXY value: http://username:password@my.proxy.host:3128 - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -1974,7 +1974,7 @@ should set imagePullPolicy when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: Always livenessProbe: failureThreshold: 6 @@ -2046,7 +2046,7 @@ should set nodeSelector if set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2132,7 +2132,7 @@ should set preferred affinity when more than one replica is used: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2204,7 +2204,7 @@ should set probeTimeoutSeconds when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2286,7 +2286,7 @@ should set required affinity when highAvailability.requireAntiAffinity is set: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2358,7 +2358,7 @@ should set resources when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2437,7 +2437,7 @@ should set serviceAccountName when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2509,7 +2509,7 @@ should set storage.requests when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2581,7 +2581,7 @@ should set storage.storageClassName when set in values and action is an Upgrade: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -2653,7 +2653,7 @@ should set tolerations when set in values: value: RELEASE-NAME - name: TELEPORT_KUBE_CLUSTER_DOMAIN value: cluster.local - image: public.ecr.aws/gravitational/teleport-distroless:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-distroless:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 diff --git a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap index 303a8d5367563..15212d8f2d34f 100644 --- a/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap +++ b/examples/chart/teleport-kube-agent/tests/__snapshot__/updater_deployment_test.yaml.snap @@ -27,7 +27,7 @@ sets the affinity: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 @@ -73,7 +73,7 @@ sets the tolerations: - --base-image=public.ecr.aws/gravitational/teleport-distroless - --version-server=https://my-custom-version-server/v1 - --version-channel=custom/preview - image: public.ecr.aws/gravitational/teleport-kube-agent-updater:10.2.7-dev.me.2 + image: public.ecr.aws/gravitational/teleport-kube-agent-updater:17.0.0-dev.githubproxy.2 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 6 From e52979bd7f928ffe453dcc5b68263e8cec289bd5 Mon Sep 17 00:00:00 2001 From: STeve Huang Date: Tue, 12 Nov 2024 15:21:22 -0500 Subject: [PATCH 8/8] preserve github info during user login state refresh --- lib/auth/auth.go | 9 +++++++-- lib/auth/userloginstate/generator.go | 27 +++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/lib/auth/auth.go b/lib/auth/auth.go index 6afc5bfdba98d..dbb43b1964b2b 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -2122,6 +2122,13 @@ func (r *certRequest) check() error { return trace.BadParameter("must provide a public key") } + if r.githubUserID == "" { + r.githubUserID = r.user.GetGitHubUserID() + } + if r.githubUsername == "" { + r.githubUsername = r.user.GetGitHubUsername() + } + return nil } @@ -3012,8 +3019,6 @@ func generateCert(ctx context.Context, a *Server, req certRequest, caType types. // could we use user state or req.githubUserID only? if req.githubUserID != "" { allowedLogins = append(allowedLogins, req.githubUserID) - } else if req.user.GetGitHubUserID() != "" && req.user.GetGitHubUserID() != req.githubUserID { - allowedLogins = append(allowedLogins, req.user.GetGitHubUserID()) } requestedResourcesStr, err := types.ResourceIDsToString(req.checker.GetAllowedResourceIDs()) diff --git a/lib/auth/userloginstate/generator.go b/lib/auth/userloginstate/generator.go index 696d879a83afc..d2098687bab20 100644 --- a/lib/auth/userloginstate/generator.go +++ b/lib/auth/userloginstate/generator.go @@ -19,7 +19,9 @@ package userloginstate import ( + "cmp" "context" + "log/slog" "github.com/gravitational/trace" "github.com/jonboulle/clockwork" @@ -280,6 +282,29 @@ func (g *Generator) emitUsageEvent(ctx context.Context, user types.User, state * return nil } +// maybePreserveOldStates retrieves states from old user login state and keeps +// them in the new one. +// +// Currently these states are being preserved during refresh: +// - GitHub user ID and username +func maybePreserveOldStates(ctx context.Context, newState *userloginstate.UserLoginState, ulsService services.UserLoginStates) *userloginstate.UserLoginState { + if newState.GetGitHubUserID() != "" && newState.GetGitHubUsername() != "" { + return newState + } + + oldState, err := ulsService.GetUserLoginState(ctx, newState.GetName()) + if err != nil { + if !trace.IsNotFound(err) { + slog.WarnContext(ctx, "failed to fetch old login state", "error", err) + } + return newState + } + + newState.SetGitHubUserID(cmp.Or(newState.GetGitHubUserID(), oldState.GetGitHubUserID())) + newState.SetGitHubUsername(cmp.Or(newState.GetGitHubUsername(), oldState.GetGitHubUsername())) + return newState +} + // Refresh will take the user and update the user login state in the backend. func (g *Generator) Refresh(ctx context.Context, user types.User, ulsService services.UserLoginStates) (*userloginstate.UserLoginState, error) { uls, err := g.Generate(ctx, user) @@ -287,6 +312,8 @@ func (g *Generator) Refresh(ctx context.Context, user types.User, ulsService ser return nil, trace.Wrap(err) } + uls = maybePreserveOldStates(ctx, uls, ulsService) + uls, err = ulsService.UpsertUserLoginState(ctx, uls) return uls, trace.Wrap(err) }