From 5478cde0e61f1e0c8cda8d5f69d0914b234b70db Mon Sep 17 00:00:00 2001 From: Tiago Silva Date: Fri, 31 Mar 2023 16:24:12 +0100 Subject: [PATCH 01/79] Fix Flaky Tests Detector bypass on merge queue (#23896) * Fix Flaky Tests Detector bypass on merge queue * Do not run fld in the mq --------- Co-authored-by: Roman Tkachenko --- ...bypass.yaml => flaky-tests-merge-queue.yaml} | 17 +++++++---------- .github/workflows/flaky-tests.yaml | 1 + 2 files changed, 8 insertions(+), 10 deletions(-) rename .github/workflows/{flaky-tests-bypass.yaml => flaky-tests-merge-queue.yaml} (55%) diff --git a/.github/workflows/flaky-tests-bypass.yaml b/.github/workflows/flaky-tests-merge-queue.yaml similarity index 55% rename from .github/workflows/flaky-tests-bypass.yaml rename to .github/workflows/flaky-tests-merge-queue.yaml index ef22dca17b19d..9e39e3d942525 100644 --- a/.github/workflows/flaky-tests-bypass.yaml +++ b/.github/workflows/flaky-tests-merge-queue.yaml @@ -1,20 +1,17 @@ -# This workflow is required to ensure that required Github check passes even if -# the actual "Flaky Tests Detector" workflow is skipped due to path filtering. -# Otherwise it will stay forever pending. +# This check runs only on PRs that are in the merge queue. +# +# PRs in the merge queue have already been approved but the reviewers check +# is still required so this workflow allows the required check to succeed, +# otherwise PRs in the merge queue would be blocked indefinitely. # # See "Handling skipped but required checks" for more info: # # https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks # # Note both workflows must have the same name. - name: Flaky Tests Detector -run-name: Skip Flaky Tests Detector - ${{ github.run_id }} - @${{ github.actor }} - on: - pull_request: - paths-ignore: - - '**.go' + merge_group: jobs: test: @@ -25,4 +22,4 @@ jobs: contents: none steps: - - run: 'echo "No changes to verify"' + - run: 'echo "Skipping reviewers check in merge queue"' diff --git a/.github/workflows/flaky-tests.yaml b/.github/workflows/flaky-tests.yaml index 05d6f4a5c34bd..10d7cd0a90263 100644 --- a/.github/workflows/flaky-tests.yaml +++ b/.github/workflows/flaky-tests.yaml @@ -5,6 +5,7 @@ on: pull_request: paths: - '**.go' + - '.github/workflows/flaky-tests.yaml' jobs: test: From 79d9812a294f6b263f17fc0bbb2a41ce37bacfc4 Mon Sep 17 00:00:00 2001 From: Alan Parra Date: Fri, 31 Mar 2023 12:07:58 -0300 Subject: [PATCH 02/79] Implement `tctl create -f` for devices (#23801) * Implement `tctl create -f` for devices * Update e/ reference --- e | 2 +- tool/tctl/common/resource_command.go | 33 +++++++++++++++++++--------- 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/e b/e index 219ed708e460a..31c66422be08b 160000 --- a/e +++ b/e @@ -1 +1 @@ -Subproject commit 219ed708e460ac6f04025fab33861839168d7262 +Subproject commit 31c66422be08b3931ec03359e0db5d4cb256705f diff --git a/tool/tctl/common/resource_command.go b/tool/tctl/common/resource_command.go index 9cfec0a53697c..6b91e4a52f9c6 100644 --- a/tool/tctl/common/resource_command.go +++ b/tool/tctl/common/resource_command.go @@ -784,25 +784,38 @@ func (rc *ResourceCommand) createSAMLIdPServiceProvider(ctx context.Context, cli } func (rc *ResourceCommand) createDevice(ctx context.Context, client auth.ClientI, raw services.UnknownResource) error { - if rc.IsForced() { - fmt.Printf("Warning: Devices cannot be overwritten with the --force flag\n") - } - dev, err := device.UnmarshalDevice(raw.Raw) if err != nil { return trace.Wrap(err) } - // TODO(codingllama): Figure out a way to call BulkCreateDevices here? - _, err = client.DevicesClient().CreateDevice(ctx, &devicepb.CreateDeviceRequest{ - Device: dev, - CreateAsResource: true, - }) + if rc.IsForced() { + _, err = client.DevicesClient().UpsertDevice(ctx, &devicepb.UpsertDeviceRequest{ + Device: dev, + CreateAsResource: true, + }) + // err checked below + } else { + _, err = client.DevicesClient().CreateDevice(ctx, &devicepb.CreateDeviceRequest{ + Device: dev, + CreateAsResource: true, + }) + // err checked below + } if err != nil { return trail.FromGRPC(err) } - fmt.Printf("Device %v/%v added to the inventory\n", dev.AssetTag, devicetrust.FriendlyOSType(dev.OsType)) + verb := "created" + if rc.IsForced() { + verb = "updated" + } + + fmt.Printf("Device %v/%v %v\n", + dev.AssetTag, + devicetrust.FriendlyOSType(dev.OsType), + verb, + ) return nil } From c55586a85eaa02ab04a385631c100b292bbcb3f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Andr=C3=A9=20Dinis?= Date: Fri, 31 Mar 2023 16:17:07 +0100 Subject: [PATCH 03/79] Metrics: add IsSSO to Discover Events (#23791) * Metrics: add IsSSO to Discover Events * review pt1 * use services.UserGetter interface * godocs, renamings * add isSSO to user identity * remove ctx from convert * add godocs to usermetadata fields * add UserType enum --- api/types/user.go | 21 + gen/proto/go/prehog/v1alpha/teleport.pb.go | 1148 +++++++++-------- gen/proto/js/prehog/v1alpha/teleport_pb.d.ts | 4 + gen/proto/js/prehog/v1alpha/teleport_pb.js | 32 +- lib/auth/auth.go | 13 +- lib/auth/auth_with_roles.go | 2 +- lib/auth/bot.go | 2 +- lib/authz/permissions.go | 34 +- lib/authz/permissions_test.go | 26 + lib/tlsca/ca.go | 3 + lib/usagereporter/teleport/types.go | 48 +- lib/usagereporter/teleport/types_discover.go | 6 +- .../teleport/usagereporter_test.go | 32 +- lib/web/ui/user.go | 2 +- proto/prehog/v1alpha/teleport.proto | 3 + 15 files changed, 773 insertions(+), 603 deletions(-) diff --git a/api/types/user.go b/api/types/user.go index 78d5573701432..48ec73908a1ce 100644 --- a/api/types/user.go +++ b/api/types/user.go @@ -26,6 +26,16 @@ import ( "github.com/gravitational/teleport/api/utils" ) +// UserType is the user's types that indicates where it was created. +type UserType string + +const ( + // UserTypeSSO identifies a user that was created from an SSO provider. + UserTypeSSO UserType = "sso" + // UserTypeLocal identifies a user that was created in Teleport itself and has no connection to an external identity. + UserTypeLocal UserType = "local" +) + // User represents teleport embedded user or external user. type User interface { // ResourceWithSecrets provides common resource properties @@ -99,6 +109,8 @@ type User interface { GetCreatedBy() CreatedBy // SetCreatedBy sets created by information SetCreatedBy(CreatedBy) + // GetUserType indicates if the User was created by an SSO Provider or locally. + GetUserType() UserType // GetTraits gets the trait map for this user used to populate role variables. GetTraits() map[string][]string // SetTraits sets the trait map for this user used to populate role variables. @@ -404,6 +416,15 @@ func (u UserV2) GetGCPServiceAccounts() []string { return u.getTrait(constants.TraitGCPServiceAccounts) } +// GetUserType indicates if the User was created by an SSO Provider or locally. +func (u UserV2) GetUserType() UserType { + if u.GetCreatedBy().Connector == nil { + return UserTypeLocal + } + + return UserTypeSSO +} + func (u *UserV2) String() string { return fmt.Sprintf("User(name=%v, roles=%v, identities=%v)", u.Metadata.Name, u.Spec.Roles, u.Spec.OIDCIdentities) } diff --git a/gen/proto/go/prehog/v1alpha/teleport.pb.go b/gen/proto/go/prehog/v1alpha/teleport.pb.go index 8ba810fc60ea8..96bd123564d64 100644 --- a/gen/proto/go/prehog/v1alpha/teleport.pb.go +++ b/gen/proto/go/prehog/v1alpha/teleport.pb.go @@ -1114,6 +1114,8 @@ type DiscoverMetadata struct { Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // anonymized UserName string `protobuf:"bytes,2,opt,name=user_name,json=userName,proto3" json:"user_name,omitempty"` + // SSO indicates whether the user is from an SSO provider. + Sso bool `protobuf:"varint,3,opt,name=sso,proto3" json:"sso,omitempty"` } func (x *DiscoverMetadata) Reset() { @@ -1162,6 +1164,13 @@ func (x *DiscoverMetadata) GetUserName() string { return "" } +func (x *DiscoverMetadata) GetSso() bool { + if x != nil { + return x.Sso + } + return false +} + // DiscoverResourceMetadata contains common metadata identifying resource type being added. type DiscoverResourceMetadata struct { state protoimpl.MessageState @@ -3409,108 +3418,64 @@ var file_prehog_v1alpha_teleport_proto_rawDesc = []byte{ 0x1e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x10, + 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x10, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x58, 0x0a, - 0x18, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3c, 0x0a, 0x08, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x72, - 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x08, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x62, 0x0a, 0x12, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x36, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x73, 0x73, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x03, 0x73, 0x73, 0x6f, 0x22, + 0x58, 0x0a, 0x18, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3c, 0x0a, 0x08, 0x72, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x92, 0x01, 0x0a, 0x16, - 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, - 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, - 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, - 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x22, 0xe2, 0x01, 0x0a, 0x20, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, - 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, - 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xde, 0x01, 0x0a, 0x1c, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, - 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, - 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x1f, 0x55, 0x49, 0x44, 0x69, 0x73, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, - 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, - 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, + 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x62, 0x0a, 0x12, 0x44, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x36, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x1e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x22, 0x92, 0x01, + 0x0a, 0x16, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, - 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, - 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe6, 0x01, 0x0a, 0x24, 0x55, - 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x4d, 0x54, 0x4c, 0x53, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x22, 0xe2, 0x01, 0x0a, 0x20, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x31, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, + 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, - 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, - 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xf0, 0x01, 0x0a, 0x2e, 0x55, 0x49, - 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xde, 0x01, 0x0a, 0x1c, 0x55, 0x49, 0x44, 0x69, + 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, + 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, + 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, + 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, + 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, + 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe1, 0x01, 0x0a, 0x1f, 0x55, 0x49, 0x44, + 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, + 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, @@ -3522,27 +3487,40 @@ var file_prehog_v1alpha_teleport_proto_rawDesc = []byte{ 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x91, 0x02, 0x0a, - 0x26, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, - 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe6, 0x01, 0x0a, + 0x24, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x4d, 0x54, 0x4c, 0x53, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, + 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, + 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xf3, 0x01, 0x0a, 0x31, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, + 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, + 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, + 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x22, 0xeb, 0x01, 0x0a, 0x29, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, - 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, - 0x49, 0x41, 0x4d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, + 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xf0, 0x01, 0x0a, 0x2e, + 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, + 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, @@ -3554,24 +3532,42 @@ var file_prehog_v1alpha_teleport_proto_rawDesc = []byte{ 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe4, - 0x01, 0x0a, 0x22, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, 0x72, 0x69, - 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, - 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x91, + 0x02, 0x0a, 0x26, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, + 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, + 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xdf, 0x01, 0x0a, 0x1d, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, + 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, + 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0xeb, 0x01, 0x0a, 0x29, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, + 0x72, 0x65, 0x49, 0x41, 0x4d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, + 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, + 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x22, 0xe4, 0x01, 0x0a, 0x22, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, + 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, + 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, @@ -3583,454 +3579,468 @@ var file_prehog_v1alpha_teleport_proto_rawDesc = []byte{ 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x18, 0x55, 0x49, 0x44, 0x69, - 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xdf, 0x01, 0x0a, 0x1d, 0x55, 0x49, 0x44, 0x69, + 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, + 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, + 0x61, 0x74, 0x61, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, + 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, + 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x18, 0x55, 0x49, + 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, 0x61, 0x6d, - 0x65, 0x22, 0x38, 0x0a, 0x19, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, - 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, + 0x65, 0x72, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, + 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x65, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6c, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x19, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, + 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, + 0x1d, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, + 0x53, 0x61, 0x76, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3c, 0x0a, 0x1d, 0x55, - 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x61, - 0x76, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x1f, 0x55, 0x49, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x49, 0x0a, 0x2a, 0x55, 0x49, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x56, 0x69, 0x65, 0x77, - 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, - 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x0a, 0x10, 0x4b, 0x75, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x40, 0x0a, 0x09, 0x53, 0x46, 0x54, 0x50, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x03, 0x0a, 0x12, 0x41, 0x67, 0x65, 0x6e, - 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x6f, 0x73, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73, 0x74, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x0e, 0x0a, - 0x02, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x1d, 0x0a, - 0x0a, 0x6f, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x11, - 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x68, 0x6f, 0x73, 0x74, 0x41, 0x72, 0x63, - 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x67, 0x6c, 0x69, - 0x62, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x67, 0x6c, 0x69, 0x62, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, - 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, - 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, - 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x74, 0x61, - 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, 0x75, 0x6e, - 0x74, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, - 0x72, 0x5f, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4f, - 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2b, 0x0a, 0x11, 0x63, - 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x45, 0x6e, 0x76, - 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xc3, 0x21, 0x0a, 0x12, 0x53, 0x75, 0x62, - 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, - 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3f, 0x0a, 0x0a, - 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, 0x3f, 0x0a, - 0x0a, 0x73, 0x73, 0x6f, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x53, 0x53, 0x4f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x48, 0x00, 0x52, 0x09, 0x73, 0x73, 0x6f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x4e, - 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x48, - 0x0a, 0x0d, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, - 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x65, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x4c, 0x0a, 0x0f, 0x75, 0x69, 0x5f, 0x62, - 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x55, 0x49, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x75, 0x69, 0x42, 0x61, 0x6e, 0x6e, 0x65, - 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x92, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, 0x6f, 0x6e, - 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x67, - 0x6f, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x63, - 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x65, - 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, - 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x6f, 0x54, - 0x6f, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x23, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, - 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x6f, 0x54, 0x6f, 0x44, 0x61, 0x73, - 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x82, 0x01, 0x0a, 0x23, - 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x5f, 0x66, - 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x6c, - 0x69, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x70, 0x72, 0x65, 0x68, - 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, - 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x1e, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x46, 0x69, - 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, - 0x12, 0x92, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, - 0x61, 0x64, 0x64, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, - 0x64, 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, - 0x61, 0x74, 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x23, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x46, 0x69, - 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x61, 0x74, 0x65, 0x72, - 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x7b, 0x0a, 0x20, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, - 0x61, 0x72, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, - 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x31, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, - 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x12, 0x87, 0x01, 0x0a, 0x24, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, - 0x64, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, - 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x35, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x67, 0x69, - 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, - 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x20, 0x75, 0x69, 0x4f, 0x6e, - 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x12, 0x7b, 0x0a, 0x20, - 0x75, 0x69, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, - 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x43, - 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x75, 0x69, 0x52, - 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, - 0x69, 0x6e, 0x75, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x6f, 0x0a, 0x1c, 0x75, 0x69, 0x5f, - 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x5f, 0x63, - 0x6f, 0x70, 0x79, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2d, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, - 0x43, 0x6f, 0x70, 0x79, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x18, 0x75, 0x69, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, - 0x73, 0x43, 0x6f, 0x70, 0x79, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x72, 0x0a, 0x1d, 0x75, 0x69, - 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x5f, - 0x70, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3e, 0x0a, 0x1f, 0x55, + 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x61, + 0x6e, 0x63, 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, + 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x49, 0x0a, 0x2a, 0x55, + 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x56, 0x69, + 0x65, 0x77, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, + 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, + 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2f, 0x0a, 0x10, 0x4b, 0x75, 0x62, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, + 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x40, 0x0a, 0x09, 0x53, 0x46, 0x54, 0x50, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9e, 0x03, 0x0a, 0x12, 0x41, 0x67, + 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x68, 0x6f, + 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x6f, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, + 0x0e, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x6f, 0x73, 0x12, + 0x1d, 0x0a, 0x0a, 0x6f, 0x73, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6f, 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, + 0x0a, 0x11, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, + 0x75, 0x72, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x68, 0x6f, 0x73, 0x74, 0x41, + 0x72, 0x63, 0x68, 0x69, 0x74, 0x65, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x67, + 0x6c, 0x69, 0x62, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x67, 0x6c, 0x69, 0x62, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, + 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x6d, 0x65, 0x74, 0x68, + 0x6f, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x6c, 0x6c, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x6e, + 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x52, + 0x75, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, + 0x6e, 0x65, 0x72, 0x5f, 0x6f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, + 0x72, 0x4f, 0x72, 0x63, 0x68, 0x65, 0x73, 0x74, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x2b, 0x0a, + 0x11, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x45, + 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xc3, 0x21, 0x0a, 0x12, 0x53, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x3f, + 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x12, + 0x3f, 0x0a, 0x0a, 0x73, 0x73, 0x6f, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x53, 0x4f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x09, 0x73, 0x73, 0x6f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x12, 0x4e, 0x0a, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, + 0x52, 0x0e, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x12, 0x48, 0x0a, 0x0d, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x4c, 0x0a, 0x0f, 0x75, 0x69, + 0x5f, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x72, 0x43, 0x6c, 0x69, + 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0d, 0x75, 0x69, 0x42, 0x61, 0x6e, + 0x6e, 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x92, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, + 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, + 0x5f, 0x67, 0x6f, 0x5f, 0x74, 0x6f, 0x5f, 0x64, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, + 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, + 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, + 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, + 0x6f, 0x54, 0x6f, 0x44, 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x63, + 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x23, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x47, 0x6f, 0x54, 0x6f, 0x44, + 0x61, 0x73, 0x68, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x82, 0x01, + 0x0a, 0x23, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x61, 0x64, 0x64, + 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, + 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x70, 0x72, + 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, + 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x1e, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, + 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6c, 0x69, + 0x63, 0x6b, 0x12, 0x92, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x5f, 0x61, 0x64, 0x64, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x41, 0x64, 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x4c, 0x61, 0x74, 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x23, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x41, 0x64, 0x64, + 0x46, 0x69, 0x72, 0x73, 0x74, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4c, 0x61, 0x74, + 0x65, 0x72, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x7b, 0x0a, 0x20, 0x75, 0x69, 0x5f, 0x6f, 0x6e, + 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, 0x65, 0x74, 0x43, + 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x75, 0x69, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x53, 0x65, 0x74, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x53, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x12, 0x87, 0x01, 0x0a, 0x24, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x68, 0x61, + 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, + 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x53, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x20, 0x75, 0x69, + 0x4f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x43, + 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x12, 0x7b, + 0x0a, 0x20, 0x75, 0x69, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, + 0x64, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x5f, 0x63, 0x6c, 0x69, + 0x63, 0x6b, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, + 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, + 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x75, + 0x69, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x43, 0x6f, + 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x6f, 0x0a, 0x1c, 0x75, + 0x69, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x73, + 0x5f, 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x64, - 0x65, 0x73, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x48, 0x00, 0x52, 0x19, 0x75, 0x69, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, - 0x6f, 0x64, 0x65, 0x73, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x63, - 0x0a, 0x19, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x75, 0x69, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0x82, 0x01, 0x0a, 0x24, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x65, 0x6c, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x20, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6f, 0x0a, 0x1d, 0x75, 0x73, 0x65, 0x72, - 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x73, 0x73, - 0x75, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, - 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1a, 0x75, - 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x49, 0x73, - 0x73, 0x75, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x10, 0x73, 0x65, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x32, 0x18, 0x14, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x56, 0x32, 0x12, 0x76, 0x0a, 0x20, 0x75, 0x69, 0x5f, 0x64, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x5f, 0x73, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x15, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, - 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x1c, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, - 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x12, 0x7f, 0x0a, 0x23, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, - 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, - 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, - 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, - 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x1f, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, - 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, - 0x74, 0x12, 0x8f, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x74, 0x6c, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, - 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, - 0x72, 0x65, 0x4d, 0x54, 0x4c, 0x53, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x24, 0x75, - 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, - 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x4d, 0x74, 0x6c, 0x73, 0x45, 0x76, - 0x65, 0x6e, 0x74, 0x12, 0xb8, 0x01, 0x0a, 0x38, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x63, 0x74, 0x69, - 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x74, 0x6f, 0x6f, - 0x6c, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, - 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, - 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x49, 0x6e, 0x73, - 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x31, 0x75, 0x69, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6f, - 0x6c, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0xae, - 0x01, 0x0a, 0x34, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, - 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, - 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, - 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, - 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x2e, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, - 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, - 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, - 0x95, 0x01, 0x0a, 0x2b, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, - 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x5f, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, - 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x41, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x52, - 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, - 0x26, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, 0x44, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x9f, 0x01, 0x0a, 0x2f, 0x75, 0x69, 0x5f, 0x64, - 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, - 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x61, 0x6d, 0x5f, 0x70, - 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1b, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x39, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, - 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x49, 0x41, - 0x4d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x29, - 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, - 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x49, 0x61, 0x6d, 0x50, 0x6f, - 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x88, 0x01, 0x0a, 0x26, 0x75, 0x69, - 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, - 0x70, 0x61, 0x6c, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x5f, 0x65, - 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, 0x72, 0x65, - 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, - 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x22, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6e, - 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x21, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2d, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x1d, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, 0x73, 0x74, - 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, - 0x69, 0x0a, 0x1b, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x63, - 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1e, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, + 0x65, 0x73, 0x43, 0x6f, 0x70, 0x79, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x18, 0x75, 0x69, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, 0x6f, + 0x64, 0x65, 0x73, 0x43, 0x6f, 0x70, 0x79, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x72, 0x0a, 0x1d, + 0x75, 0x69, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x64, 0x65, + 0x73, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x43, + 0x6f, 0x64, 0x65, 0x73, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x19, 0x75, 0x69, 0x52, 0x65, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x79, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x50, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x6c, 0x69, 0x63, 0x6b, + 0x12, 0x63, 0x0a, 0x19, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, + 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x11, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x16, 0x75, + 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x82, 0x01, 0x0a, 0x24, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, + 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x20, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x6f, 0x0a, 0x1d, 0x75, 0x73, + 0x65, 0x72, 0x5f, 0x63, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, 0x5f, 0x69, + 0x73, 0x73, 0x75, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2a, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, + 0x74, 0x65, 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, + 0x1a, 0x75, 0x73, 0x65, 0x72, 0x43, 0x65, 0x72, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x65, + 0x49, 0x73, 0x73, 0x75, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x4d, 0x0a, 0x10, 0x73, + 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x76, 0x32, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0e, 0x73, 0x65, 0x73, 0x73, + 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x56, 0x32, 0x12, 0x76, 0x0a, 0x20, 0x75, 0x69, + 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, + 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, - 0x52, 0x18, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x0b, 0x72, 0x6f, - 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x12, 0x63, - 0x0a, 0x18, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x77, 0x5f, - 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x29, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x1c, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x12, 0x7f, 0x0a, 0x23, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x72, 0x65, 0x67, 0x69, 0x73, + 0x74, 0x65, 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x2f, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x1f, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, + 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x45, 0x76, + 0x65, 0x6e, 0x74, 0x12, 0x8f, 0x01, 0x0a, 0x29, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x5f, 0x6d, 0x74, 0x6c, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x75, 0x72, 0x65, 0x4d, 0x54, 0x4c, 0x53, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, + 0x24, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, 0x62, + 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x4d, 0x74, 0x6c, 0x73, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0xb8, 0x01, 0x0a, 0x38, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x74, + 0x6f, 0x6f, 0x6c, 0x73, 0x5f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x5f, 0x65, 0x76, 0x65, + 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, + 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x31, 0x75, + 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x54, + 0x6f, 0x6f, 0x6c, 0x73, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x12, 0xae, 0x01, 0x0a, 0x34, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x5f, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x75, 0x72, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x3e, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, 0x6b, 0x74, + 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6f, 0x72, + 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, + 0x00, 0x52, 0x2e, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x65, 0x73, + 0x6b, 0x74, 0x6f, 0x70, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x6f, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x12, 0x95, 0x01, 0x0a, 0x2b, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, + 0x72, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, + 0x64, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x5f, 0x65, 0x76, 0x65, 0x6e, + 0x74, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, + 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, + 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, + 0x00, 0x52, 0x26, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x41, 0x75, 0x74, + 0x6f, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x52, 0x65, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x9f, 0x01, 0x0a, 0x2f, 0x75, 0x69, + 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x62, 0x61, + 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x5f, 0x69, 0x61, 0x6d, + 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1b, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, + 0x61, 0x74, 0x61, 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, + 0x49, 0x41, 0x4d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, + 0x52, 0x29, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x44, 0x61, 0x74, 0x61, + 0x62, 0x61, 0x73, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x49, 0x61, 0x6d, + 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x88, 0x01, 0x0a, 0x26, + 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x6e, + 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, + 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x70, + 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, + 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, + 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x22, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, + 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x79, 0x0a, 0x21, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, 0x73, + 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x1d, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x65, + 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x12, 0x69, 0x0a, 0x1b, 0x75, 0x69, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, + 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, + 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x48, 0x00, 0x52, 0x18, 0x75, 0x69, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x43, 0x6f, + 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x42, 0x0a, 0x0b, + 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x18, 0x1f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x72, 0x6f, 0x6c, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x12, 0x63, 0x0a, 0x18, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, + 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x20, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, + 0x6f, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, + 0x14, 0x75, 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, + 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x70, 0x0a, 0x1d, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x61, 0x76, 0x65, + 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, + 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x61, 0x76, + 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x18, 0x75, + 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x61, + 0x76, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x76, 0x0a, 0x1f, 0x75, 0x69, 0x5f, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x61, + 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2f, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, - 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x14, 0x75, - 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x6c, - 0x69, 0x63, 0x6b, 0x12, 0x70, 0x0a, 0x1d, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x61, 0x76, 0x65, 0x5f, 0x63, - 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x70, 0x72, 0x65, - 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x61, 0x76, 0x65, 0x43, - 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x18, 0x75, 0x69, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x53, 0x61, 0x76, 0x65, - 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x76, 0x0a, 0x1f, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x63, - 0x65, 0x6c, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, - 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, - 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x43, - 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, - 0x00, 0x52, 0x1a, 0x75, 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, - 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x98, 0x01, - 0x0a, 0x2b, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, 0x77, 0x5f, - 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, - 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, 0x23, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, + 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x48, 0x00, 0x52, 0x1a, 0x75, 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, + 0x52, 0x6f, 0x6c, 0x65, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, + 0x98, 0x01, 0x0a, 0x2b, 0x75, 0x69, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x6e, 0x65, + 0x77, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x5f, 0x64, 0x6f, 0x63, 0x75, + 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x18, + 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x55, 0x49, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, + 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x56, 0x69, 0x65, 0x77, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, + 0x74, 0x48, 0x00, 0x52, 0x25, 0x75, 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, 0x6c, 0x65, 0x56, 0x69, 0x65, 0x77, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, - 0x00, 0x52, 0x25, 0x75, 0x69, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x77, 0x52, 0x6f, - 0x6c, 0x65, 0x56, 0x69, 0x65, 0x77, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x45, 0x0a, 0x0c, 0x6b, 0x75, 0x62, 0x65, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, - 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, - 0x4b, 0x75, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x48, 0x00, 0x52, 0x0b, 0x6b, 0x75, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2f, 0x0a, 0x04, 0x73, 0x66, 0x74, 0x70, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, - 0x46, 0x54, 0x50, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x04, 0x73, 0x66, 0x74, 0x70, - 0x12, 0x56, 0x0a, 0x14, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x12, 0x45, 0x0a, 0x0c, 0x6b, 0x75, + 0x62, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x2e, 0x4b, 0x75, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x48, 0x00, 0x52, 0x0b, 0x6b, 0x75, 0x62, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x2f, 0x0a, 0x04, 0x73, 0x66, 0x74, 0x70, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x2e, 0x53, 0x46, 0x54, 0x50, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x04, 0x73, 0x66, + 0x74, 0x70, 0x12, 0x56, 0x0a, 0x14, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, + 0x64, 0x61, 0x74, 0x61, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x12, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, + 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x12, 0x72, 0x65, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, + 0x18, 0x27, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, + 0x52, 0x11, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, + 0x65, 0x61, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x08, + 0x10, 0x09, 0x52, 0x1c, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x67, + 0x65, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, + 0x22, 0x15, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x51, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, + 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, - 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x48, 0x00, 0x52, 0x12, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x57, 0x0a, 0x12, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x18, 0x27, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, - 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52, 0x11, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, - 0x74, 0x42, 0x07, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09, - 0x52, 0x1c, 0x75, 0x69, 0x5f, 0x6f, 0x6e, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x5f, 0x67, 0x65, 0x74, - 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x22, 0x15, - 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x51, 0x0a, 0x13, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x70, - 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x16, 0x0a, 0x14, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x48, 0x65, 0x6c, 0x6c, - 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x2a, 0xe2, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4b, 0x69, - 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, - 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, - 0x4e, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x52, 0x45, 0x53, - 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x50, 0x50, 0x5f, 0x53, - 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x45, 0x53, 0x4f, 0x55, - 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4b, 0x55, 0x42, 0x45, 0x5f, 0x53, 0x45, - 0x52, 0x56, 0x45, 0x52, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, - 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, - 0x52, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, - 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, 0x44, 0x45, 0x53, - 0x4b, 0x54, 0x4f, 0x50, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, - 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x50, 0x45, - 0x4e, 0x53, 0x53, 0x48, 0x10, 0x06, 0x2a, 0xaa, 0x06, 0x0a, 0x10, 0x44, 0x69, 0x73, 0x63, 0x6f, - 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x1d, 0x44, - 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, - 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, - 0x0a, 0x18, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, - 0x52, 0x43, 0x45, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x01, 0x12, 0x20, 0x0a, 0x1c, - 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, - 0x45, 0x5f, 0x4b, 0x55, 0x42, 0x45, 0x52, 0x4e, 0x45, 0x54, 0x45, 0x53, 0x10, 0x02, 0x12, 0x33, - 0x0a, 0x2f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, - 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, - 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, - 0x44, 0x10, 0x03, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, - 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, - 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, - 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x32, 0x0a, 0x2e, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, + 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x53, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x16, 0x0a, 0x14, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x17, 0x0a, 0x15, 0x48, 0x65, + 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x2a, 0xe2, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, + 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, + 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, + 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x10, 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x52, + 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x41, 0x50, 0x50, + 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x52, 0x45, 0x53, + 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4b, 0x55, 0x42, 0x45, 0x5f, + 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x52, 0x45, 0x53, 0x4f, + 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x44, 0x42, 0x5f, 0x53, 0x45, 0x52, + 0x56, 0x45, 0x52, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, + 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, 0x44, + 0x45, 0x53, 0x4b, 0x54, 0x4f, 0x50, 0x10, 0x05, 0x12, 0x1e, 0x0a, 0x1a, 0x52, 0x45, 0x53, 0x4f, + 0x55, 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4e, 0x4f, 0x44, 0x45, 0x5f, 0x4f, + 0x50, 0x45, 0x4e, 0x53, 0x53, 0x48, 0x10, 0x06, 0x2a, 0xaa, 0x06, 0x0a, 0x10, 0x44, 0x69, 0x73, + 0x63, 0x6f, 0x76, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x0a, + 0x1d, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, + 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x1c, 0x0a, 0x18, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, + 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x10, 0x01, 0x12, 0x20, + 0x0a, 0x1c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, + 0x52, 0x43, 0x45, 0x5f, 0x4b, 0x55, 0x42, 0x45, 0x52, 0x4e, 0x45, 0x54, 0x45, 0x53, 0x10, 0x02, + 0x12, 0x33, 0x0a, 0x2f, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, + 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, + 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, + 0x54, 0x45, 0x44, 0x10, 0x03, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, - 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x4f, 0x4e, 0x47, 0x4f, 0x44, 0x42, 0x5f, 0x53, 0x45, 0x4c, 0x46, - 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x49, 0x53, - 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, - 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, - 0x5f, 0x52, 0x44, 0x53, 0x10, 0x06, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, - 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x52, 0x44, 0x53, 0x10, 0x07, - 0x12, 0x26, 0x0a, 0x22, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, - 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, - 0x4e, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x10, 0x08, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x49, 0x53, 0x43, - 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x41, 0x50, - 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x43, 0x50, 0x10, 0x09, 0x12, - 0x25, 0x0a, 0x21, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, - 0x55, 0x52, 0x43, 0x45, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, 0x44, 0x45, 0x53, - 0x4b, 0x54, 0x4f, 0x50, 0x10, 0x0a, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, - 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x52, - 0x44, 0x53, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, - 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, - 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x52, 0x45, 0x44, 0x53, - 0x48, 0x49, 0x46, 0x54, 0x10, 0x0c, 0x12, 0x34, 0x0a, 0x30, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, - 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, - 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x53, - 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x30, 0x0a, 0x2c, - 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, - 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x52, 0x45, 0x44, 0x49, 0x53, - 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x0e, 0x12, 0x2b, - 0x0a, 0x27, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, - 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, - 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x47, 0x43, 0x50, 0x10, 0x0f, 0x12, 0x28, 0x0a, 0x24, 0x44, + 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, + 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x32, 0x0a, 0x2e, 0x44, 0x49, 0x53, 0x43, 0x4f, + 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, + 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x4f, 0x4e, 0x47, 0x4f, 0x44, 0x42, 0x5f, 0x53, 0x45, + 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x05, 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, - 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, - 0x47, 0x43, 0x50, 0x10, 0x10, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, - 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, - 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, 0x47, 0x43, - 0x50, 0x10, 0x11, 0x2a, 0xa3, 0x01, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, - 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x49, 0x53, 0x43, 0x4f, - 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, - 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, 0x44, 0x10, - 0x02, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, - 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, - 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, - 0x41, 0x42, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x32, 0xb4, 0x02, 0x0a, 0x18, 0x54, 0x65, - 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5b, 0x0a, 0x0b, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, + 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, + 0x45, 0x53, 0x5f, 0x52, 0x44, 0x53, 0x10, 0x06, 0x12, 0x28, 0x0a, 0x24, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, + 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, 0x4c, 0x5f, 0x52, 0x44, 0x53, + 0x10, 0x07, 0x12, 0x26, 0x0a, 0x22, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, + 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, + 0x49, 0x4f, 0x4e, 0x5f, 0x48, 0x54, 0x54, 0x50, 0x10, 0x08, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x49, + 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, + 0x41, 0x50, 0x50, 0x4c, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x54, 0x43, 0x50, 0x10, + 0x09, 0x12, 0x25, 0x0a, 0x21, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, + 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, 0x44, + 0x45, 0x53, 0x4b, 0x54, 0x4f, 0x50, 0x10, 0x0a, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, + 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, + 0x5f, 0x52, 0x44, 0x53, 0x10, 0x0b, 0x12, 0x30, 0x0a, 0x2c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, + 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, + 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x52, 0x45, + 0x44, 0x53, 0x48, 0x49, 0x46, 0x54, 0x10, 0x0c, 0x12, 0x34, 0x0a, 0x30, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, + 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, + 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x30, + 0x0a, 0x2c, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, + 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x52, 0x45, 0x44, + 0x49, 0x53, 0x5f, 0x53, 0x45, 0x4c, 0x46, 0x5f, 0x48, 0x4f, 0x53, 0x54, 0x45, 0x44, 0x10, 0x0e, + 0x12, 0x2b, 0x0a, 0x27, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, + 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x50, + 0x4f, 0x53, 0x54, 0x47, 0x52, 0x45, 0x53, 0x5f, 0x47, 0x43, 0x50, 0x10, 0x0f, 0x12, 0x28, 0x0a, + 0x24, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, + 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x4d, 0x59, 0x53, 0x51, + 0x4c, 0x5f, 0x47, 0x43, 0x50, 0x10, 0x10, 0x12, 0x2c, 0x0a, 0x28, 0x44, 0x49, 0x53, 0x43, 0x4f, + 0x56, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x53, 0x4f, 0x55, 0x52, 0x43, 0x45, 0x5f, 0x44, 0x41, 0x54, + 0x41, 0x42, 0x41, 0x53, 0x45, 0x5f, 0x53, 0x51, 0x4c, 0x53, 0x45, 0x52, 0x56, 0x45, 0x52, 0x5f, + 0x47, 0x43, 0x50, 0x10, 0x11, 0x2a, 0xa3, 0x01, 0x0a, 0x0e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, + 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x0a, 0x1b, 0x44, 0x49, 0x53, 0x43, + 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x49, 0x53, + 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, + 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, + 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x4b, 0x49, 0x50, 0x50, 0x45, + 0x44, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, + 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x1b, + 0x0a, 0x17, 0x44, 0x49, 0x53, 0x43, 0x4f, 0x56, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, + 0x53, 0x5f, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x32, 0xb4, 0x02, 0x0a, 0x18, + 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x69, 0x6e, + 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5b, 0x0a, 0x0b, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x72, + 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x03, 0x88, 0x02, 0x01, 0x12, 0x5b, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, + 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x70, 0x72, 0x65, 0x68, - 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, - 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, - 0x88, 0x02, 0x01, 0x12, 0x5b, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, - 0x6e, 0x74, 0x73, 0x12, 0x23, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, - 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x12, 0x5e, 0x0a, 0x0d, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, - 0x74, 0x12, 0x24, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, - 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x42, 0x3f, 0x5a, 0x3d, 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, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, - 0x67, 0x6f, 0x2f, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x70, 0x72, 0x65, + 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x5e, 0x0a, 0x0d, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, + 0x6f, 0x72, 0x74, 0x12, 0x24, 0x2e, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, + 0x72, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x70, 0x72, 0x65, 0x68, + 0x6f, 0x67, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x2e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, + 0x54, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x42, 0x3f, 0x5a, 0x3d, 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, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x70, 0x72, 0x65, 0x68, 0x6f, 0x67, 0x2f, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/gen/proto/js/prehog/v1alpha/teleport_pb.d.ts b/gen/proto/js/prehog/v1alpha/teleport_pb.d.ts index 17d0992dc9c93..bdd589f7b78be 100644 --- a/gen/proto/js/prehog/v1alpha/teleport_pb.d.ts +++ b/gen/proto/js/prehog/v1alpha/teleport_pb.d.ts @@ -391,6 +391,9 @@ export class DiscoverMetadata extends jspb.Message { getUserName(): string; setUserName(value: string): DiscoverMetadata; + getSso(): boolean; + setSso(value: boolean): DiscoverMetadata; + serializeBinary(): Uint8Array; toObject(includeInstance?: boolean): DiscoverMetadata.AsObject; @@ -406,6 +409,7 @@ export namespace DiscoverMetadata { export type AsObject = { id: string, userName: string, + sso: boolean, } } diff --git a/gen/proto/js/prehog/v1alpha/teleport_pb.js b/gen/proto/js/prehog/v1alpha/teleport_pb.js index 621a24b44b877..0000f91125da6 100644 --- a/gen/proto/js/prehog/v1alpha/teleport_pb.js +++ b/gen/proto/js/prehog/v1alpha/teleport_pb.js @@ -3439,7 +3439,8 @@ proto.prehog.v1alpha.DiscoverMetadata.prototype.toObject = function(opt_includeI proto.prehog.v1alpha.DiscoverMetadata.toObject = function(includeInstance, msg) { var f, obj = { id: jspb.Message.getFieldWithDefault(msg, 1, ""), - userName: jspb.Message.getFieldWithDefault(msg, 2, "") + userName: jspb.Message.getFieldWithDefault(msg, 2, ""), + sso: jspb.Message.getBooleanFieldWithDefault(msg, 3, false) }; if (includeInstance) { @@ -3484,6 +3485,10 @@ proto.prehog.v1alpha.DiscoverMetadata.deserializeBinaryFromReader = function(msg var value = /** @type {string} */ (reader.readString()); msg.setUserName(value); break; + case 3: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setSso(value); + break; default: reader.skipField(); break; @@ -3527,6 +3532,13 @@ proto.prehog.v1alpha.DiscoverMetadata.serializeBinaryToWriter = function(message f ); } + f = message.getSso(); + if (f) { + writer.writeBool( + 3, + f + ); + } }; @@ -3566,6 +3578,24 @@ proto.prehog.v1alpha.DiscoverMetadata.prototype.setUserName = function(value) { }; +/** + * optional bool sso = 3; + * @return {boolean} + */ +proto.prehog.v1alpha.DiscoverMetadata.prototype.getSso = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 3, false)); +}; + + +/** + * @param {boolean} value + * @return {!proto.prehog.v1alpha.DiscoverMetadata} returns this + */ +proto.prehog.v1alpha.DiscoverMetadata.prototype.setSso = function(value) { + return jspb.Message.setProto3BooleanField(this, 3, value); +}; + + diff --git a/lib/auth/auth.go b/lib/auth/auth.go index 6b7d4a1270806..120bc03fb751d 100644 --- a/lib/auth/auth.go +++ b/lib/auth/auth.go @@ -2073,6 +2073,7 @@ func generateCert(a *Server, req certRequest, caType types.CertAuthType) (*proto AssetTag: req.deviceExtensions.AssetTag, CredentialID: req.deviceExtensions.CredentialID, }, + UserType: req.user.GetUserType(), } var signedTLSCert []byte @@ -4314,7 +4315,17 @@ func (a *Server) SubmitUsageEvent(ctx context.Context, req *proto.SubmitUsageEve return trace.Wrap(err) } - event, err := usagereporter.ConvertUsageEvent(req.GetEvent(), username) + userIsSSO, err := authz.GetClientUserIsSSO(ctx) + if err != nil { + return trace.Wrap(err) + } + + userMetadata := usagereporter.UserMetadata{ + Username: username, + IsSSO: userIsSSO, + } + + event, err := usagereporter.ConvertUsageEvent(req.GetEvent(), userMetadata) if err != nil { return trace.Wrap(err) } diff --git a/lib/auth/auth_with_roles.go b/lib/auth/auth_with_roles.go index 70e15ff8d56c4..d6cabbce49db6 100644 --- a/lib/auth/auth_with_roles.go +++ b/lib/auth/auth_with_roles.go @@ -2607,7 +2607,7 @@ func (a *ServerWithRoles) generateUserCerts(ctx context.Context, req proto.UserC } // Do not allow SSO users to be impersonated. - if req.Username != a.context.User.GetName() && user.GetCreatedBy().Connector != nil { + if req.Username != a.context.User.GetName() && user.GetUserType() == types.UserTypeSSO { log.Warningf("User %v tried to issue a cert for externally managed user %v, this is not supported.", a.context.User.GetName(), req.Username) return nil, trace.AccessDenied("access denied") } diff --git a/lib/auth/bot.go b/lib/auth/bot.go index 21ce02a5609a6..4f948fc7dda89 100644 --- a/lib/auth/bot.go +++ b/lib/auth/bot.go @@ -485,7 +485,7 @@ func (s *Server) generateInitialBotCerts(ctx context.Context, username string, p } // Do not allow SSO users to be impersonated. - if user.GetCreatedBy().Connector != nil { + if user.GetUserType() == types.UserTypeSSO { log.Warningf("Tried to issue a renewable cert for externally managed user %v, this is not supported.", username) return nil, trace.AccessDenied("access denied") } diff --git a/lib/authz/permissions.go b/lib/authz/permissions.go index a5230ae2eddc9..51c6c0461fecd 100644 --- a/lib/authz/permissions.go +++ b/lib/authz/permissions.go @@ -369,6 +369,7 @@ func (a *authorizer) authorizeRemoteUser(ctx context.Context, u RemoteUser) (*Co LoginIP: u.Identity.LoginIP, PinnedIP: u.Identity.PinnedIP, PrivateKeyPolicy: u.Identity.PrivateKeyPolicy, + UserType: u.Identity.UserType, } if checker.PinSourceIP() && identity.PinnedIP == "" { return nil, trace.AccessDenied("pinned IP is required for the user, but is not present on identity") @@ -931,21 +932,42 @@ func ClientUsername(ctx context.Context) string { return identity.Username } -// GetClientUsername returns the username of a remote HTTP client making the call. -// If ctx didn't pass through auth middleware or did not come from an HTTP -// request, returns an error. -func GetClientUsername(ctx context.Context) (string, error) { +func userIdentityFromContext(ctx context.Context) (*tlsca.Identity, error) { userWithIdentity, err := UserFromContext(ctx) if err != nil { - return "", trace.AccessDenied("missing identity") + return nil, trace.AccessDenied("missing identity") } + identity := userWithIdentity.GetIdentity() if identity.Username == "" { - return "", trace.AccessDenied("missing identity username") + return nil, trace.AccessDenied("missing identity username") + } + + return &identity, nil +} + +// GetClientUsername returns the username of a remote HTTP client making the call. +// If ctx didn't pass through auth middleware or did not come from an HTTP +// request, returns an error. +func GetClientUsername(ctx context.Context) (string, error) { + identity, err := userIdentityFromContext(ctx) + if err != nil { + return "", trace.Wrap(err) } return identity.Username, nil } +// GetClientUserIsSSO extracts the identity of a remote HTTP client and indicates whether that is an SSO user. +// If ctx didn't pass through auth middleware or did not come from an HTTP +// request, returns an error. +func GetClientUserIsSSO(ctx context.Context) (bool, error) { + identity, err := userIdentityFromContext(ctx) + if err != nil { + return false, trace.Wrap(err) + } + return identity.UserType == types.UserTypeSSO, nil +} + // ClientImpersonator returns the impersonator username of a remote client // making the call. If not present, returns an empty string func ClientImpersonator(ctx context.Context) string { diff --git a/lib/authz/permissions_test.go b/lib/authz/permissions_test.go index 2e85a92094ec2..f00a995e3062f 100644 --- a/lib/authz/permissions_test.go +++ b/lib/authz/permissions_test.go @@ -182,6 +182,32 @@ func upsertLockWithPutEvent(ctx context.Context, t *testing.T, client *testClien } } +func TestGetClientUserIsSSO(t *testing.T) { + ctx := context.Background() + + u := LocalUser{ + Username: "someuser", + Identity: tlsca.Identity{ + Username: "someuser", + Groups: []string{"somerole"}, + }, + } + + // Non SSO user must return false + nonSSOUserCtx := context.WithValue(ctx, contextUser, u) + + isSSO, err := GetClientUserIsSSO(nonSSOUserCtx) + require.NoError(t, err) + require.False(t, isSSO, "expected a non-SSO user") + + // An SSO user must return true + u.Identity.UserType = types.UserTypeSSO + ssoUserCtx := context.WithValue(ctx, contextUser, u) + localUserIsSSO, err := GetClientUserIsSSO(ssoUserCtx) + require.NoError(t, err) + require.True(t, localUserIsSSO, "expected an SSO user") +} + func TestAuthorizer_Authorize_deviceTrust(t *testing.T) { t.Parallel() diff --git a/lib/tlsca/ca.go b/lib/tlsca/ca.go index ed55400bcc3a5..9b242abb5e596 100644 --- a/lib/tlsca/ca.go +++ b/lib/tlsca/ca.go @@ -190,6 +190,9 @@ type Identity struct { // DeviceExtensions holds device-aware extensions for the identity. DeviceExtensions DeviceExtensions + + // UserType indicates if the User was created by an SSO Provider or locally. + UserType types.UserType } // RouteToApp holds routing information for applications. diff --git a/lib/usagereporter/teleport/types.go b/lib/usagereporter/teleport/types.go index 150abefbacc98..b9c8cbfe7b2ae 100644 --- a/lib/usagereporter/teleport/types.go +++ b/lib/usagereporter/teleport/types.go @@ -407,10 +407,18 @@ func (u *ResourceHeartbeatEvent) Anonymize(a utils.Anonymizer) prehogv1.SubmitEv } } +// UserMetadata contains user metadata information which is used to contextualize events with user information. +type UserMetadata struct { + // Username contains the user's name. + Username string + // IsSSO indicates if the user was created by an SSO provider. + IsSSO bool +} + // ConvertUsageEvent converts a usage event from an API object into an // anonymizable event. All events that can be submitted externally via the Auth // API need to be defined here. -func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername string) (Anonymizable, error) { +func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, userMD UserMetadata) (Anonymizable, error) { // Note: events (especially pre-registration) that embed a username of their // own should generally pass that through rather than using the identity // username provided to the function. It may be the username of a Teleport @@ -419,16 +427,16 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st switch e := event.GetEvent().(type) { case *usageeventsv1.UsageEventOneOf_UiBannerClick: return &UIBannerClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, Alert: e.UiBannerClick.Alert, }, nil case *usageeventsv1.UsageEventOneOf_UiOnboardAddFirstResourceClick: return &UIOnboardAddFirstResourceClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiOnboardAddFirstResourceLaterClick: return &UIOnboardAddFirstResourceLaterClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiOnboardCompleteGoToDashboardClick: return &UIOnboardCompleteGoToDashboardClickEvent{ @@ -458,23 +466,23 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st }, nil case *usageeventsv1.UsageEventOneOf_UiCreateNewRoleClick: return &UICreateNewRoleClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiCreateNewRoleSaveClick: return &UICreateNewRoleSaveClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiCreateNewRoleCancelClick: return &UICreateNewRoleCancelClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiCreateNewRoleViewDocumentationClick: return &UICreateNewRoleViewDocumentationClickEvent{ - UserName: identityUsername, + UserName: userMD.Username, }, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverStartedEvent: ret := &UIDiscoverStartedEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverStartedEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverStartedEvent.Metadata, userMD), Status: discoverStatusToPrehog(e.UiDiscoverStartedEvent.Status), } if err := ret.CheckAndSetDefaults(); err != nil { @@ -484,7 +492,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverResourceSelectionEvent: ret := &UIDiscoverResourceSelectionEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverResourceSelectionEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverResourceSelectionEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverResourceSelectionEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverResourceSelectionEvent.Status), } @@ -495,7 +503,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDeployServiceEvent: ret := &UIDiscoverDeployServiceEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDeployServiceEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDeployServiceEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDeployServiceEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDeployServiceEvent.Status), } @@ -506,7 +514,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDatabaseRegisterEvent: ret := &UIDiscoverDatabaseRegisterEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseRegisterEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseRegisterEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDatabaseRegisterEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDatabaseRegisterEvent.Status), } @@ -517,7 +525,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDatabaseConfigureMtlsEvent: ret := &UIDiscoverDatabaseConfigureMTLSEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseConfigureMtlsEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseConfigureMtlsEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDatabaseConfigureMtlsEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDatabaseConfigureMtlsEvent.Status), } @@ -528,7 +536,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDesktopActiveDirectoryToolsInstallEvent: ret := &UIDiscoverDesktopActiveDirectoryToolsInstallEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDesktopActiveDirectoryToolsInstallEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDesktopActiveDirectoryToolsInstallEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDesktopActiveDirectoryToolsInstallEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDesktopActiveDirectoryToolsInstallEvent.Status), } @@ -539,7 +547,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDesktopActiveDirectoryConfigureEvent: ret := &UIDiscoverDesktopActiveDirectoryConfigureEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDesktopActiveDirectoryConfigureEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDesktopActiveDirectoryConfigureEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDesktopActiveDirectoryConfigureEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDesktopActiveDirectoryConfigureEvent.Status), } @@ -550,7 +558,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverAutoDiscoveredResourcesEvent: ret := &UIDiscoverAutoDiscoveredResourcesEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverAutoDiscoveredResourcesEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverAutoDiscoveredResourcesEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverAutoDiscoveredResourcesEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverAutoDiscoveredResourcesEvent.Status), ResourcesCount: e.UiDiscoverAutoDiscoveredResourcesEvent.ResourcesCount, @@ -562,7 +570,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverDatabaseConfigureIamPolicyEvent: ret := &UIDiscoverDatabaseConfigureIAMPolicyEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseConfigureIamPolicyEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverDatabaseConfigureIamPolicyEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverDatabaseConfigureIamPolicyEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverDatabaseConfigureIamPolicyEvent.Status), } @@ -573,7 +581,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverPrincipalsConfigureEvent: ret := &UIDiscoverPrincipalsConfigureEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverPrincipalsConfigureEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverPrincipalsConfigureEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverPrincipalsConfigureEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverPrincipalsConfigureEvent.Status), } @@ -584,7 +592,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverTestConnectionEvent: ret := &UIDiscoverTestConnectionEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverTestConnectionEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverTestConnectionEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverTestConnectionEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverTestConnectionEvent.Status), } @@ -595,7 +603,7 @@ func ConvertUsageEvent(event *usageeventsv1.UsageEventOneOf, identityUsername st return ret, nil case *usageeventsv1.UsageEventOneOf_UiDiscoverCompletedEvent: ret := &UIDiscoverCompletedEvent{ - Metadata: discoverMetadataToPrehog(e.UiDiscoverCompletedEvent.Metadata, identityUsername), + Metadata: discoverMetadataToPrehog(e.UiDiscoverCompletedEvent.Metadata, userMD), Resource: discoverResourceToPrehog(e.UiDiscoverCompletedEvent.Resource), Status: discoverStatusToPrehog(e.UiDiscoverCompletedEvent.Status), } diff --git a/lib/usagereporter/teleport/types_discover.go b/lib/usagereporter/teleport/types_discover.go index ef92ba6dfbe47..42f31ffe11919 100644 --- a/lib/usagereporter/teleport/types_discover.go +++ b/lib/usagereporter/teleport/types_discover.go @@ -24,10 +24,11 @@ import ( "github.com/gravitational/teleport/lib/utils" ) -func discoverMetadataToPrehog(u *usageeventsv1.DiscoverMetadata, identityUsername string) *prehogv1.DiscoverMetadata { +func discoverMetadataToPrehog(u *usageeventsv1.DiscoverMetadata, userMD UserMetadata) *prehogv1.DiscoverMetadata { return &prehogv1.DiscoverMetadata{ Id: u.Id, - UserName: identityUsername, + UserName: userMD.Username, + Sso: userMD.IsSSO, } } @@ -121,6 +122,7 @@ func (u *UIDiscoverStartedEvent) Anonymize(a utils.Anonymizer) prehogv1.SubmitEv Metadata: &prehogv1.DiscoverMetadata{ Id: u.Metadata.Id, UserName: a.AnonymizeString(u.Metadata.UserName), + Sso: u.Metadata.Sso, }, Status: u.Status, }, diff --git a/lib/usagereporter/teleport/usagereporter_test.go b/lib/usagereporter/teleport/usagereporter_test.go index 419b545bad7e4..b2d42aa828174 100644 --- a/lib/usagereporter/teleport/usagereporter_test.go +++ b/lib/usagereporter/teleport/usagereporter_test.go @@ -35,6 +35,7 @@ func TestConvertUsageEvent(t *testing.T) { name string event *usageeventsv1.UsageEventOneOf identityUsername string + isSSOUser bool errCheck require.ErrorAssertionFunc expected *prehogv1.SubmitEventRequest }{ @@ -53,6 +54,7 @@ func TestConvertUsageEvent(t *testing.T) { Metadata: &prehogv1.DiscoverMetadata{ Id: "someid", UserName: expectedAnonymizedUserString, + Sso: false, }, Status: &prehogv1.DiscoverStepStatus{Status: prehogv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, }, @@ -74,6 +76,7 @@ func TestConvertUsageEvent(t *testing.T) { Metadata: &prehogv1.DiscoverMetadata{ Id: "someid", UserName: expectedAnonymizedUserString, + Sso: false, }, Resource: &prehogv1.DiscoverResourceMetadata{Resource: prehogv1.DiscoverResource_DISCOVER_RESOURCE_SERVER}, Status: &prehogv1.DiscoverStepStatus{Status: prehogv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, @@ -139,6 +142,7 @@ func TestConvertUsageEvent(t *testing.T) { Metadata: &prehogv1.DiscoverMetadata{ Id: "someid", UserName: expectedAnonymizedUserString, + Sso: false, }, Resource: &prehogv1.DiscoverResourceMetadata{Resource: prehogv1.DiscoverResource_DISCOVER_RESOURCE_SERVER}, Status: &prehogv1.DiscoverStepStatus{Status: prehogv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, @@ -163,6 +167,7 @@ func TestConvertUsageEvent(t *testing.T) { Metadata: &prehogv1.DiscoverMetadata{ Id: "someid", UserName: expectedAnonymizedUserString, + Sso: false, }, Resource: &prehogv1.DiscoverResourceMetadata{Resource: prehogv1.DiscoverResource_DISCOVER_RESOURCE_SERVER}, Status: &prehogv1.DiscoverStepStatus{Status: prehogv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, @@ -184,13 +189,38 @@ func TestConvertUsageEvent(t *testing.T) { errCheck: func(tt require.TestingT, err error, i ...interface{}) { require.True(tt, trace.IsBadParameter(err), "exepcted trace.IsBadParameter error, got: %v", err) }, + }, { + name: "discover started event with sso user", + event: &usageeventsv1.UsageEventOneOf{Event: &usageeventsv1.UsageEventOneOf_UiDiscoverStartedEvent{ + UiDiscoverStartedEvent: &usageeventsv1.UIDiscoverStartedEvent{ + Metadata: &usageeventsv1.DiscoverMetadata{Id: "someid"}, + Status: &usageeventsv1.DiscoverStepStatus{Status: usageeventsv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, + }, + }}, + identityUsername: "myuser", + isSSOUser: true, + errCheck: require.NoError, + expected: &prehogv1.SubmitEventRequest{Event: &prehogv1.SubmitEventRequest_UiDiscoverStartedEvent{ + UiDiscoverStartedEvent: &prehogv1.UIDiscoverStartedEvent{ + Metadata: &prehogv1.DiscoverMetadata{ + Id: "someid", + UserName: expectedAnonymizedUserString, + Sso: true, + }, + Status: &prehogv1.DiscoverStepStatus{Status: prehogv1.DiscoverStatus_DISCOVER_STATUS_SUCCESS}, + }, + }}, }, } { t.Run(tt.name, func(t *testing.T) { tt := tt t.Parallel() - usageEvent, err := ConvertUsageEvent(tt.event, tt.identityUsername) + userMD := UserMetadata{ + Username: tt.identityUsername, + IsSSO: tt.isSSOUser, + } + usageEvent, err := ConvertUsageEvent(tt.event, userMD) tt.errCheck(t, err) if err != nil { return diff --git a/lib/web/ui/user.go b/lib/web/ui/user.go index 68fad8a03edfe..62f52edf91b25 100644 --- a/lib/web/ui/user.go +++ b/lib/web/ui/user.go @@ -65,7 +65,7 @@ func NewUserListEntry(teleUser types.User) (*UserListEntry, error) { } authType := "local" - if teleUser.GetCreatedBy().Connector != nil { + if teleUser.GetUserType() == types.UserTypeSSO { authType = teleUser.GetCreatedBy().Connector.Type } diff --git a/proto/prehog/v1alpha/teleport.proto b/proto/prehog/v1alpha/teleport.proto index c27c7e32c50d6..fbeaca52cdb26 100644 --- a/proto/prehog/v1alpha/teleport.proto +++ b/proto/prehog/v1alpha/teleport.proto @@ -146,6 +146,9 @@ message DiscoverMetadata { // anonymized string user_name = 2; + + // SSO indicates whether the user is from an SSO provider. + bool sso = 3; } // DiscoverResource represents a resource type. From f0fcf62fb253c69d67858ef248d213a1dd0560e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Andr=C3=A9=20Dinis?= Date: Fri, 31 Mar 2023 16:20:51 +0100 Subject: [PATCH 04/79] Integration resource: add types and grpc methods (#23553) * Integration resource: add types and grpc methods This commit adds the new types for Integration resource. It also adds the gRPC methods that will be used later on for: - Integrations CRUD management - Integrations resource caching * decouple integration service from auth * return resource on CRU operations * Add OneOf prop to distinguish Integrations subkind * Version subkind spec * godocs --- api/client/proto/authservice.pb.go | 1773 ++++++----- .../integration/v1/integration_service.pb.go | 646 ++++ .../v1/integration_service_grpc.pb.go | 322 ++ .../integration/v1/integration_service.proto | 88 + .../legacy/client/proto/authservice.proto | 2 + api/proto/teleport/legacy/types/types.proto | 36 + api/types/types.pb.go | 2791 ++++++++++------- build.assets/genproto.sh | 1 + 8 files changed, 3748 insertions(+), 1911 deletions(-) create mode 100644 api/gen/proto/go/teleport/integration/v1/integration_service.pb.go create mode 100644 api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go create mode 100644 api/proto/teleport/integration/v1/integration_service.proto diff --git a/api/client/proto/authservice.pb.go b/api/client/proto/authservice.pb.go index 233b819040cd1..8434171d3be15 100644 --- a/api/client/proto/authservice.pb.go +++ b/api/client/proto/authservice.pb.go @@ -346,6 +346,7 @@ type Event struct { // *Event_UIConfig // *Event_OktaImportRule // *Event_OktaAssignment + // *Event_Integration Resource isEvent_Resource `protobuf_oneof:"Resource"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` @@ -508,6 +509,9 @@ type Event_OktaImportRule struct { type Event_OktaAssignment struct { OktaAssignment *types.OktaAssignmentV1 `protobuf:"bytes,41,opt,name=OktaAssignment,proto3,oneof" json:"okta_assignment,omitempty"` } +type Event_Integration struct { + Integration *types.IntegrationV1 `protobuf:"bytes,42,opt,name=Integration,proto3,oneof" json:"integration,omitempty"` +} func (*Event_ResourceHeader) isEvent_Resource() {} func (*Event_CertAuthority) isEvent_Resource() {} @@ -548,6 +552,7 @@ func (*Event_UserGroup) isEvent_Resource() {} func (*Event_UIConfig) isEvent_Resource() {} func (*Event_OktaImportRule) isEvent_Resource() {} func (*Event_OktaAssignment) isEvent_Resource() {} +func (*Event_Integration) isEvent_Resource() {} func (m *Event) GetResource() isEvent_Resource { if m != nil { @@ -836,6 +841,13 @@ func (m *Event) GetOktaAssignment() *types.OktaAssignmentV1 { return nil } +func (m *Event) GetIntegration() *types.IntegrationV1 { + if x, ok := m.GetResource().(*Event_Integration); ok { + return x.Integration + } + return nil +} + // XXX_OneofWrappers is for the internal use of the proto package. func (*Event) XXX_OneofWrappers() []interface{} { return []interface{}{ @@ -878,6 +890,7 @@ func (*Event) XXX_OneofWrappers() []interface{} { (*Event_UIConfig)(nil), (*Event_OktaImportRule)(nil), (*Event_OktaAssignment)(nil), + (*Event_Integration)(nil), } } @@ -14090,814 +14103,816 @@ func init() { } var fileDescriptor_0ffcffcda38ae159 = []byte{ - // 12908 bytes of a gzipped FileDescriptorProto + // 12935 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0xbd, 0x5d, 0x6c, 0x1c, 0x49, 0x92, 0x18, 0xac, 0x6e, 0xfe, 0x07, 0x7f, 0xd4, 0x4a, 0xf1, 0xa7, 0xd5, 0xa2, 0xd4, 0x52, 0x69, - 0xa4, 0xd1, 0xcc, 0xed, 0xea, 0x87, 0x9c, 0xff, 0x99, 0x9d, 0xd9, 0xee, 0x26, 0x25, 0x52, 0xa2, - 0x48, 0x6e, 0x35, 0xd9, 0x9c, 0xdd, 0x9d, 0xdd, 0xde, 0x62, 0x77, 0x8a, 0xac, 0x4f, 0xcd, 0xae, - 0xde, 0xaa, 0x6a, 0x69, 0x74, 0x1f, 0xfc, 0x73, 0x3e, 0xef, 0x3d, 0xf8, 0x60, 0x7b, 0x0d, 0xdc, - 0xd9, 0x3e, 0xdc, 0x83, 0x0d, 0xd8, 0x2f, 0x36, 0x60, 0xc3, 0x0f, 0x3e, 0x1c, 0x60, 0x18, 0x30, - 0xce, 0x36, 0xe0, 0xb5, 0x01, 0x03, 0x7e, 0xf0, 0xc1, 0x80, 0x0f, 0xa0, 0x7d, 0x0b, 0x3f, 0x11, - 0xf0, 0x93, 0x61, 0x3f, 0xec, 0x93, 0x91, 0xbf, 0x95, 0x59, 0x95, 0x55, 0x4d, 0xce, 0x70, 0xc7, - 0x2f, 0x12, 0x3b, 0x33, 0x22, 0x32, 0x33, 0x32, 0x2b, 0x32, 0x32, 0x32, 0x32, 0x02, 0xee, 0x85, - 0xb8, 0x83, 0x7b, 0x9e, 0x1f, 0xde, 0xef, 0xe0, 0x03, 0xa7, 0xf5, 0xfa, 0x7e, 0xab, 0xe3, 0xe2, - 0x6e, 0x78, 0xbf, 0xe7, 0x7b, 0xa1, 0x77, 0xdf, 0xe9, 0x87, 0x87, 0x01, 0xf6, 0x5f, 0xba, 0x2d, - 0x7c, 0x8f, 0x96, 0xa0, 0x11, 0xfa, 0x5f, 0x69, 0xf6, 0xc0, 0x3b, 0xf0, 0x18, 0x0c, 0xf9, 0x8b, - 0x55, 0x96, 0xae, 0x1e, 0x78, 0xde, 0x41, 0x07, 0x33, 0xe4, 0xfd, 0xfe, 0xf3, 0xfb, 0xf8, 0xa8, - 0x17, 0xbe, 0xe6, 0x95, 0xe5, 0x78, 0x65, 0xe8, 0x1e, 0xe1, 0x20, 0x74, 0x8e, 0x7a, 0x1c, 0xe0, - 0x6e, 0x66, 0x57, 0x5a, 0xd8, 0x0f, 0x03, 0x0e, 0xf9, 0x56, 0x1c, 0x32, 0x7c, 0xdd, 0xc3, 0xc1, - 0x7d, 0xfc, 0x12, 0x77, 0x43, 0xf1, 0x1f, 0x07, 0xbd, 0x69, 0x06, 0xa5, 0xff, 0x72, 0x90, 0x6f, - 0x9b, 0x41, 0x5e, 0xe1, 0x7d, 0x32, 0xfc, 0xae, 0xfc, 0x63, 0x00, 0xb8, 0xef, 0xf4, 0x7a, 0xd8, - 0x8f, 0xfe, 0x48, 0xf4, 0xb5, 0x1f, 0x38, 0x07, 0x98, 0xf7, 0xf1, 0xe5, 0x43, 0xf5, 0x27, 0x03, - 0xb5, 0xfe, 0x6c, 0x11, 0x46, 0x56, 0x49, 0x01, 0xfa, 0x00, 0x86, 0x77, 0x5e, 0xf7, 0x70, 0x31, - 0x77, 0x23, 0x77, 0x77, 0x66, 0xa9, 0xc0, 0xea, 0xef, 0x6d, 0xf5, 0xb0, 0xef, 0x84, 0xae, 0xd7, - 0xad, 0xa2, 0x93, 0xe3, 0xf2, 0x0c, 0x69, 0xf7, 0x5b, 0xde, 0x91, 0x1b, 0x52, 0x2e, 0xdb, 0x14, - 0x03, 0xed, 0xc1, 0x8c, 0x8d, 0x03, 0xaf, 0xef, 0xb7, 0xf0, 0x1a, 0x76, 0xda, 0xd8, 0x2f, 0xe6, - 0x6f, 0xe4, 0xee, 0x4e, 0x2e, 0xcd, 0xdd, 0x63, 0x43, 0xd6, 0x2b, 0xab, 0xf3, 0x27, 0xc7, 0x65, - 0xe4, 0xf3, 0xb2, 0x88, 0xd8, 0xda, 0x05, 0x3b, 0x46, 0x06, 0x7d, 0x01, 0xd3, 0x35, 0xec, 0x87, - 0x95, 0x7e, 0x78, 0xe8, 0xf9, 0x6e, 0xf8, 0xba, 0x38, 0x44, 0xe9, 0xce, 0x73, 0xba, 0x5a, 0x5d, - 0x63, 0xa9, 0xba, 0x78, 0x72, 0x5c, 0x2e, 0x92, 0x39, 0x6b, 0x3a, 0xa2, 0x54, 0x23, 0xaf, 0x13, - 0x43, 0x9f, 0xc3, 0x54, 0x3d, 0x74, 0x42, 0xb7, 0xb5, 0xe3, 0xbd, 0xc0, 0xdd, 0xa0, 0x38, 0xac, - 0x75, 0x5a, 0xad, 0x6a, 0x2c, 0x55, 0xaf, 0x9e, 0x1c, 0x97, 0x17, 0x02, 0x5a, 0xd6, 0x0c, 0x69, - 0xa1, 0x46, 0x5a, 0xa3, 0x84, 0x7e, 0x02, 0x33, 0xdb, 0xbe, 0xf7, 0xd2, 0x0d, 0x5c, 0xaf, 0x4b, - 0x8b, 0x8a, 0x23, 0x94, 0xf6, 0x02, 0xa7, 0xad, 0x57, 0x36, 0x96, 0xaa, 0xd7, 0x4e, 0x8e, 0xcb, - 0x57, 0x7a, 0xa2, 0x94, 0x35, 0xa0, 0x73, 0x46, 0x47, 0x41, 0x3b, 0x30, 0x59, 0xeb, 0xf4, 0x83, - 0x10, 0xfb, 0x9b, 0xce, 0x11, 0x2e, 0x8e, 0x52, 0xf2, 0xb3, 0x82, 0x2f, 0x51, 0x4d, 0x63, 0xa9, - 0x5a, 0x3a, 0x39, 0x2e, 0xcf, 0xb7, 0x58, 0x51, 0xb3, 0xeb, 0x1c, 0xe9, 0x2c, 0x57, 0xc9, 0xa0, - 0xf7, 0x61, 0x78, 0x37, 0xc0, 0x7e, 0x71, 0x9c, 0x92, 0x9b, 0xe6, 0xe4, 0x48, 0x51, 0x63, 0x89, - 0xcd, 0x7f, 0x3f, 0xc0, 0xbe, 0x86, 0x4f, 0x11, 0x08, 0xa2, 0xed, 0x75, 0x70, 0x71, 0x42, 0x43, - 0x24, 0x45, 0x8d, 0xf7, 0x18, 0xa2, 0xef, 0x75, 0xf4, 0x86, 0x29, 0x02, 0x5a, 0x87, 0x09, 0xd2, - 0x72, 0xd0, 0x73, 0x5a, 0xb8, 0x08, 0x14, 0xbb, 0xc0, 0xb1, 0x65, 0x79, 0x75, 0xe1, 0xe4, 0xb8, - 0x7c, 0xb9, 0x2b, 0x7e, 0x6a, 0x54, 0x22, 0x6c, 0xf4, 0x19, 0x8c, 0xd6, 0xb1, 0xff, 0x12, 0xfb, - 0xc5, 0x49, 0x4a, 0xe7, 0xa2, 0x98, 0x48, 0x5a, 0xd8, 0x58, 0xaa, 0xce, 0x9e, 0x1c, 0x97, 0x0b, - 0x01, 0xfd, 0xa5, 0xd1, 0xe0, 0x68, 0x64, 0xb5, 0xd9, 0xf8, 0x25, 0xf6, 0x03, 0xbc, 0xd3, 0xef, - 0x76, 0x71, 0xa7, 0x38, 0xa5, 0xad, 0x36, 0xad, 0x4e, 0xac, 0x36, 0x9f, 0x15, 0x36, 0x43, 0x5a, - 0xaa, 0xaf, 0x36, 0x0d, 0x01, 0x1d, 0x42, 0x81, 0xfd, 0x55, 0xf3, 0xba, 0x5d, 0xdc, 0x22, 0x9f, - 0x54, 0x71, 0x9a, 0x36, 0x70, 0x85, 0x37, 0x10, 0xaf, 0x6e, 0x2c, 0x55, 0xcb, 0x27, 0xc7, 0xe5, - 0xab, 0x8c, 0x76, 0xb3, 0x25, 0x2b, 0xb4, 0x66, 0x12, 0x54, 0xc9, 0x38, 0x2a, 0xad, 0x16, 0x0e, - 0x02, 0x1b, 0xff, 0xb4, 0x8f, 0x83, 0xb0, 0x38, 0xa3, 0x8d, 0x43, 0xab, 0x6b, 0x2c, 0xb3, 0x71, - 0x38, 0xb4, 0xb0, 0xe9, 0xb3, 0x52, 0x7d, 0x1c, 0x1a, 0x02, 0xda, 0x06, 0xa8, 0xf4, 0x7a, 0x75, - 0x1c, 0x90, 0xc5, 0x58, 0xbc, 0x48, 0x49, 0x5f, 0xe6, 0xa4, 0xf7, 0xf0, 0x3e, 0xaf, 0x68, 0x2c, - 0x55, 0xaf, 0x9c, 0x1c, 0x97, 0xe7, 0x9c, 0x5e, 0xaf, 0x19, 0xb0, 0x22, 0x8d, 0xa8, 0x42, 0x83, - 0xf1, 0xfd, 0xc8, 0x0b, 0x31, 0x5f, 0x8a, 0xc5, 0x42, 0x8c, 0xef, 0x4a, 0x9d, 0xe8, 0xaf, 0x4f, - 0x0b, 0x9b, 0x7c, 0x59, 0xc7, 0xf9, 0xae, 0x20, 0x90, 0x6f, 0x71, 0xc5, 0x09, 0x9d, 0x7d, 0x27, - 0xc0, 0x7c, 0x79, 0x5c, 0xd2, 0xbe, 0x45, 0xbd, 0xb2, 0xb1, 0xcc, 0xbe, 0xc5, 0x36, 0x2f, 0x6d, - 0x1a, 0xd6, 0x4b, 0x8c, 0x1e, 0xe1, 0x48, 0x34, 0xf0, 0x22, 0x1a, 0xc0, 0x91, 0x57, 0x78, 0xdf, - 0xcc, 0x91, 0x08, 0x14, 0xad, 0xc1, 0xf8, 0x1e, 0xde, 0x67, 0x92, 0xe3, 0x32, 0xa5, 0x77, 0x29, - 0xa2, 0xc7, 0x64, 0xc6, 0x32, 0xfb, 0x2a, 0x08, 0xb5, 0xa4, 0xb4, 0x90, 0xd8, 0xe8, 0x67, 0x39, - 0x58, 0x10, 0x5f, 0x38, 0x0e, 0x5f, 0x79, 0xfe, 0x0b, 0xb7, 0x7b, 0x50, 0xf3, 0xba, 0xcf, 0xdd, - 0x83, 0xe2, 0x2c, 0xa5, 0x7c, 0x23, 0x26, 0x34, 0x62, 0x50, 0x8d, 0xa5, 0xea, 0x9b, 0x27, 0xc7, - 0xe5, 0x5b, 0x52, 0x80, 0xc8, 0x7a, 0xb2, 0x20, 0x9f, 0xbb, 0x07, 0x5a, 0xc3, 0x69, 0x6d, 0xa1, - 0xdf, 0xca, 0xc1, 0x3c, 0x1f, 0x9d, 0x8d, 0x5b, 0x9e, 0xdf, 0x8e, 0xba, 0x31, 0x47, 0xbb, 0x51, - 0x96, 0x5f, 0xab, 0x09, 0xa8, 0xb1, 0x54, 0xbd, 0x73, 0x72, 0x5c, 0xb6, 0x38, 0xe3, 0x9a, 0xbe, - 0xa8, 0x36, 0x75, 0x22, 0xa5, 0x21, 0xb2, 0x12, 0x88, 0xf0, 0xdf, 0xf6, 0xf1, 0x73, 0xec, 0xe3, - 0x6e, 0x0b, 0x17, 0xe7, 0xb5, 0x95, 0xa0, 0x57, 0x0a, 0xa9, 0x4c, 0xb6, 0x92, 0x66, 0x4f, 0x16, - 0xeb, 0x2b, 0x41, 0x47, 0x41, 0x3f, 0x05, 0xc4, 0x19, 0x50, 0xe9, 0xb7, 0xdd, 0x90, 0x0f, 0x70, - 0x81, 0xb6, 0x72, 0x55, 0xe7, 0xb3, 0x02, 0xd0, 0x58, 0xaa, 0x5a, 0x27, 0xc7, 0xe5, 0xeb, 0x82, - 0xc5, 0x0e, 0xa9, 0x32, 0x0d, 0xcc, 0x40, 0x9c, 0x48, 0xde, 0x0d, 0xaf, 0xf5, 0xa2, 0x58, 0xd4, - 0x24, 0x2f, 0x29, 0x12, 0x22, 0xbb, 0xe3, 0xb5, 0x5e, 0xe8, 0x92, 0x97, 0xd4, 0xa2, 0x10, 0x2e, - 0xf3, 0x59, 0xb2, 0x71, 0x10, 0xfa, 0x2e, 0x95, 0x1d, 0x41, 0xf1, 0x0a, 0xa5, 0xb3, 0x28, 0x64, - 0x70, 0x12, 0xa2, 0xf1, 0x0e, 0xeb, 0x2d, 0x5f, 0x08, 0x4d, 0x5f, 0xa9, 0xd3, 0x9a, 0x31, 0x91, - 0x47, 0x7f, 0x01, 0xe6, 0xf6, 0xdc, 0x6e, 0xdb, 0x7b, 0x15, 0xac, 0xe0, 0xe0, 0x45, 0xe8, 0xf5, - 0xea, 0x4c, 0xd3, 0x2b, 0x96, 0x68, 0xbb, 0xd7, 0xc5, 0x32, 0x37, 0xc1, 0x34, 0x96, 0xab, 0xb7, - 0x4f, 0x8e, 0xcb, 0x37, 0x5f, 0xb1, 0xca, 0x66, 0x9b, 0xd5, 0x36, 0xb9, 0xb2, 0xa8, 0x35, 0x6e, - 0x6e, 0x85, 0x2c, 0x01, 0xbd, 0xa2, 0x78, 0x55, 0x5b, 0x02, 0x7a, 0xa5, 0x10, 0x06, 0xb1, 0x06, - 0xf5, 0x25, 0xa0, 0xa3, 0xa0, 0xc7, 0x30, 0x2e, 0xc4, 0x43, 0x71, 0x51, 0xfb, 0x74, 0x45, 0x71, - 0x63, 0x99, 0x69, 0x40, 0x42, 0xc4, 0xe8, 0x5f, 0xae, 0x80, 0x42, 0x1b, 0x30, 0x41, 0x65, 0x24, - 0x15, 0x59, 0xd7, 0x28, 0x25, 0x24, 0x16, 0xaa, 0x28, 0x6f, 0x2c, 0x57, 0x8b, 0x27, 0xc7, 0xe5, - 0x59, 0x26, 0x65, 0x13, 0x82, 0x2a, 0x22, 0x80, 0x96, 0x61, 0xa8, 0xd2, 0xeb, 0x15, 0xaf, 0x53, - 0x3a, 0x53, 0x11, 0x9d, 0xc6, 0x72, 0xf5, 0xd2, 0xc9, 0x71, 0x79, 0xda, 0xe9, 0xe9, 0xc3, 0x22, - 0xd0, 0x68, 0x1f, 0x0a, 0xf5, 0xae, 0xf7, 0xea, 0x79, 0xc7, 0x79, 0x81, 0x85, 0x78, 0x2b, 0xa7, - 0x8b, 0x37, 0xba, 0x59, 0x05, 0x02, 0xc1, 0x28, 0xe4, 0x12, 0xf4, 0xc8, 0xb6, 0xf8, 0xb4, 0xbf, - 0x8f, 0xfd, 0x2e, 0x0e, 0x71, 0xc0, 0x47, 0x7b, 0x43, 0xdb, 0x16, 0xe3, 0xd5, 0x8d, 0x65, 0xd6, - 0xd2, 0x0b, 0x59, 0x6e, 0x1a, 0x7b, 0x82, 0x2a, 0xea, 0xc0, 0xa5, 0xa8, 0x4c, 0x6c, 0x35, 0x37, - 0x69, 0x53, 0xa5, 0x44, 0x53, 0xd1, 0x76, 0x73, 0xe3, 0xe4, 0xb8, 0xbc, 0xa8, 0xb4, 0x65, 0xda, - 0x72, 0x92, 0x84, 0xd1, 0x53, 0x98, 0x58, 0xef, 0x06, 0xa1, 0xd3, 0xe9, 0x60, 0xbf, 0x68, 0x69, - 0xd3, 0x27, 0xcb, 0x1b, 0x0f, 0x99, 0x10, 0x77, 0x45, 0x81, 0x3e, 0x7b, 0x12, 0x0e, 0xb5, 0xe1, - 0xa2, 0xba, 0xe7, 0x90, 0xef, 0xe5, 0x16, 0x25, 0x59, 0x34, 0x6c, 0x62, 0xe4, 0x4b, 0x79, 0x58, - 0xbd, 0x7e, 0x72, 0x5c, 0x2e, 0x69, 0xbb, 0x58, 0xfc, 0x13, 0x89, 0x93, 0x44, 0x7f, 0x85, 0xc8, - 0xe8, 0xca, 0xb3, 0x8d, 0xf5, 0xf6, 0x36, 0x2f, 0xa2, 0x4a, 0x27, 0xd1, 0xe7, 0xdf, 0xd0, 0x65, - 0xb4, 0x11, 0xa8, 0xf1, 0x90, 0xed, 0x14, 0x81, 0x73, 0xd4, 0x69, 0xba, 0x6d, 0xf9, 0x5d, 0x36, - 0x7b, 0x1c, 0x20, 0x26, 0xa4, 0x8d, 0x44, 0xd0, 0x8f, 0x60, 0x46, 0xd6, 0xb0, 0x15, 0x77, 0x3b, - 0x7d, 0xc5, 0xd1, 0x41, 0x2a, 0xed, 0x25, 0x17, 0x5c, 0x8c, 0x18, 0xf9, 0xaa, 0x88, 0xc2, 0xfa, - 0xd8, 0xf7, 0xfa, 0xbd, 0xe2, 0x1d, 0x6d, 0x5a, 0x64, 0x79, 0xe3, 0x21, 0xfb, 0xaa, 0x88, 0xae, - 0xdb, 0x3c, 0x20, 0x25, 0xfa, 0xbc, 0x48, 0x40, 0xb2, 0x4f, 0xef, 0xae, 0x73, 0x29, 0xff, 0xa6, - 0xf6, 0xb1, 0x8b, 0x62, 0x31, 0xc5, 0x7d, 0xd7, 0x24, 0xd0, 0x25, 0x36, 0x72, 0x60, 0x66, 0xeb, - 0x45, 0xe8, 0xac, 0x1f, 0x91, 0x53, 0x9b, 0xdd, 0xef, 0xe0, 0xe2, 0x5d, 0x4d, 0x30, 0xe9, 0x95, - 0x62, 0x7e, 0xbd, 0x17, 0xa1, 0xd3, 0x74, 0x69, 0x71, 0xd3, 0xef, 0xc7, 0x14, 0xec, 0x18, 0x41, - 0x22, 0xfb, 0x48, 0x49, 0x25, 0x08, 0xdc, 0x83, 0xee, 0x11, 0xee, 0x86, 0xc5, 0xb7, 0x12, 0x4d, - 0x44, 0x95, 0x8d, 0x87, 0x4c, 0xf6, 0xd1, 0x26, 0x1c, 0x59, 0x9c, 0x6c, 0x21, 0x42, 0xa9, 0x02, - 0x8c, 0x8b, 0x03, 0xdc, 0x93, 0xe1, 0xf1, 0xb1, 0xc2, 0xb8, 0xb5, 0x06, 0x23, 0x7b, 0x4e, 0xd8, - 0x3a, 0x44, 0x9f, 0xc1, 0xc8, 0x53, 0xb7, 0xdb, 0x0e, 0x8a, 0xb9, 0x1b, 0x43, 0x54, 0xc7, 0x67, - 0xa7, 0x4b, 0x5a, 0x49, 0x2a, 0xaa, 0x0b, 0xbf, 0x38, 0x2e, 0x5f, 0x38, 0x39, 0x2e, 0x5f, 0x7c, - 0x41, 0xc0, 0x94, 0x23, 0x26, 0xc3, 0xb3, 0xfe, 0x79, 0x1e, 0x26, 0x24, 0x34, 0x5a, 0x84, 0x61, - 0xf2, 0x3f, 0x3d, 0xab, 0x4e, 0x54, 0xc7, 0x4f, 0x8e, 0xcb, 0xc3, 0x04, 0xcf, 0xa6, 0xa5, 0x68, - 0x09, 0x26, 0x37, 0x3c, 0xa7, 0x5d, 0xc7, 0x2d, 0x1f, 0x87, 0x01, 0x3d, 0x8c, 0x8e, 0x57, 0x0b, - 0x27, 0xc7, 0xe5, 0xa9, 0x8e, 0xe7, 0xb4, 0x9b, 0x01, 0x2b, 0xb7, 0x55, 0x20, 0x42, 0x91, 0x9e, - 0xa4, 0x86, 0x22, 0x8a, 0xe4, 0xc4, 0x61, 0xd3, 0x52, 0xf4, 0x04, 0x46, 0x1f, 0xb9, 0x1d, 0x22, - 0x30, 0x86, 0x69, 0xff, 0x17, 0xe3, 0xfd, 0xbf, 0xc7, 0xaa, 0x57, 0xbb, 0xa1, 0xff, 0x9a, 0x1d, - 0x34, 0x9e, 0xd3, 0x02, 0x65, 0x20, 0x9c, 0x02, 0x7a, 0x00, 0x63, 0xf5, 0xfe, 0x3e, 0xed, 0xfe, - 0x08, 0x6d, 0x8c, 0xee, 0x06, 0x41, 0x7f, 0xbf, 0x49, 0x86, 0xa0, 0x20, 0x08, 0xb0, 0xd2, 0x87, - 0x30, 0xa9, 0x90, 0x47, 0x05, 0x18, 0x7a, 0x81, 0x5f, 0xb3, 0xb1, 0xdb, 0xe4, 0x4f, 0x34, 0x0b, - 0x23, 0x2f, 0x9d, 0x4e, 0x1f, 0xd3, 0xa1, 0x4e, 0xd8, 0xec, 0xc7, 0x47, 0xf9, 0x0f, 0x72, 0xd6, - 0x1f, 0x8d, 0x42, 0x61, 0xcd, 0x0b, 0x42, 0x72, 0xf2, 0x95, 0x2a, 0xfc, 0x2d, 0x18, 0x25, 0x65, - 0xeb, 0x2b, 0x9c, 0x7f, 0x93, 0x27, 0xc7, 0xe5, 0xb1, 0x43, 0x2f, 0x08, 0x9b, 0x6e, 0xdb, 0xe6, - 0x55, 0xe8, 0x2d, 0x18, 0xdf, 0xf4, 0xda, 0x98, 0x32, 0x85, 0x92, 0xad, 0x4e, 0x9f, 0x1c, 0x97, - 0x27, 0xba, 0x5e, 0x1b, 0xd3, 0x53, 0xa4, 0x2d, 0xab, 0x51, 0x83, 0x9f, 0xfe, 0x18, 0xef, 0xaa, - 0x84, 0x77, 0xe4, 0xb8, 0xf7, 0xab, 0xe3, 0xf2, 0x7b, 0x07, 0x6e, 0x78, 0xd8, 0xdf, 0xbf, 0xd7, - 0xf2, 0x8e, 0xee, 0x1f, 0xf8, 0xce, 0x4b, 0x37, 0xa4, 0xb6, 0x04, 0xa7, 0x73, 0x5f, 0x5a, 0x28, - 0x9c, 0x9e, 0xcb, 0x2d, 0x23, 0xf5, 0xd7, 0x41, 0x88, 0x8f, 0x08, 0x25, 0x7e, 0x38, 0xdc, 0x83, - 0xd9, 0x4a, 0xbb, 0xed, 0x32, 0x8c, 0x6d, 0xdf, 0xed, 0xb6, 0xdc, 0x9e, 0xd3, 0x09, 0xe8, 0x1c, - 0x4c, 0x54, 0x6f, 0x9d, 0x1c, 0x97, 0xcb, 0x8e, 0xac, 0x6f, 0xf6, 0x24, 0x80, 0xc2, 0x43, 0x23, - 0x01, 0xb4, 0x0c, 0xe3, 0x2b, 0x9b, 0x75, 0x7a, 0x74, 0x2c, 0x8e, 0x50, 0x62, 0xf4, 0x23, 0x6d, - 0x77, 0x03, 0x3a, 0x34, 0x95, 0x80, 0x04, 0x44, 0xef, 0xc1, 0xd4, 0x76, 0x7f, 0xbf, 0xe3, 0xb6, - 0x76, 0x36, 0xea, 0x4f, 0xf1, 0x6b, 0x7a, 0xe6, 0x9e, 0x62, 0x2a, 0x56, 0x8f, 0x96, 0x37, 0xc3, - 0x4e, 0xd0, 0x7c, 0x81, 0x5f, 0xdb, 0x1a, 0x5c, 0x84, 0x57, 0xaf, 0xaf, 0x11, 0xbc, 0xb1, 0x04, - 0x5e, 0x10, 0x1c, 0xaa, 0x78, 0x0c, 0x0e, 0xdd, 0x07, 0x60, 0x27, 0x99, 0x4a, 0xbb, 0xcd, 0x8e, - 0xe4, 0x13, 0xd5, 0x8b, 0x27, 0xc7, 0xe5, 0x49, 0x7e, 0xf6, 0x71, 0xda, 0x6d, 0xdf, 0x56, 0x40, - 0x50, 0x0d, 0xc6, 0x6d, 0x8f, 0x31, 0x98, 0x1f, 0xc4, 0x2f, 0xca, 0x83, 0x38, 0x2b, 0xe6, 0xa6, - 0x17, 0xfe, 0x4b, 0x1d, 0xa5, 0x80, 0x40, 0x65, 0x18, 0xdb, 0xf4, 0x6a, 0x4e, 0xeb, 0x90, 0x1d, - 0xc7, 0xc7, 0xab, 0x23, 0x27, 0xc7, 0xe5, 0xdc, 0xb7, 0x6d, 0x51, 0x8a, 0x5e, 0xc2, 0x64, 0x34, - 0x51, 0x41, 0x71, 0x92, 0xb2, 0x6f, 0xe7, 0xe4, 0xb8, 0x3c, 0x1f, 0xd0, 0xe2, 0x26, 0x99, 0x7a, - 0x85, 0x83, 0x5f, 0x63, 0x15, 0xa8, 0x0d, 0xa1, 0x0e, 0x5c, 0xdb, 0x25, 0x1b, 0xe2, 0x7e, 0x07, - 0x47, 0xc5, 0x95, 0x20, 0xc0, 0x3e, 0xa1, 0xb5, 0xbe, 0x42, 0x4f, 0xeb, 0x13, 0xfc, 0x98, 0x10, - 0xf5, 0x84, 0xc8, 0x2e, 0x06, 0xd2, 0x74, 0xd5, 0x8f, 0x2b, 0x9b, 0x98, 0xf5, 0x2f, 0x72, 0x80, - 0xb6, 0x7a, 0xb8, 0x5b, 0xaf, 0xaf, 0x91, 0x4f, 0x47, 0x7c, 0x39, 0x77, 0x61, 0x9c, 0x48, 0x7f, - 0xb2, 0x48, 0xf8, 0xb7, 0x33, 0x75, 0x72, 0x5c, 0x1e, 0xef, 0xf3, 0x32, 0x5b, 0xd6, 0xa2, 0x6f, - 0xc1, 0x04, 0x9b, 0x4d, 0x32, 0xe5, 0x79, 0x3a, 0xe5, 0x33, 0x27, 0xc7, 0x65, 0xe0, 0x53, 0x4e, - 0xa6, 0x3b, 0x02, 0x40, 0xb7, 0x61, 0x68, 0x67, 0x67, 0x83, 0x7e, 0x40, 0x43, 0xd5, 0xcb, 0x27, - 0xc7, 0xe5, 0xa1, 0x30, 0xec, 0xfc, 0xea, 0xb8, 0x3c, 0xbe, 0xd2, 0x67, 0xd6, 0x37, 0x9b, 0xd4, - 0xa3, 0xdb, 0x30, 0x26, 0x14, 0x97, 0xe1, 0xe8, 0xcb, 0xe5, 0x1a, 0x89, 0x2d, 0xea, 0xac, 0xdf, - 0x80, 0x49, 0xa5, 0xef, 0x44, 0xb4, 0x91, 0xff, 0x69, 0x87, 0xa7, 0x98, 0x68, 0x6b, 0x91, 0x31, - 0xd1, 0x52, 0xeb, 0x0f, 0xa7, 0xa0, 0x40, 0x7a, 0xad, 0x49, 0x08, 0xad, 0xf7, 0xb9, 0x41, 0xbd, - 0x57, 0xb9, 0x92, 0xcf, 0xe4, 0x4a, 0x1d, 0xc6, 0x56, 0xbf, 0xec, 0xb9, 0x3e, 0x0e, 0xb8, 0x29, - 0xaf, 0x74, 0x8f, 0x59, 0x68, 0xef, 0x09, 0x0b, 0xed, 0xbd, 0x1d, 0x61, 0xa1, 0xad, 0x5e, 0xe3, - 0x5b, 0xc2, 0x25, 0xcc, 0x50, 0xa2, 0xd9, 0xfb, 0xf9, 0x7f, 0x2b, 0xe7, 0x6c, 0x41, 0x09, 0x7d, - 0x0b, 0x46, 0x1f, 0x79, 0xfe, 0x91, 0x13, 0x72, 0xa6, 0x30, 0xf1, 0x4b, 0x4b, 0x34, 0xf1, 0x4b, - 0x4b, 0xd0, 0x23, 0x98, 0xb1, 0xbd, 0x7e, 0x88, 0x77, 0x3c, 0xc1, 0x4a, 0x26, 0x85, 0xe9, 0x86, - 0xea, 0x93, 0x9a, 0x66, 0xe8, 0x25, 0xb5, 0x3c, 0x3b, 0x86, 0x85, 0x56, 0x61, 0x46, 0x33, 0x8c, - 0x04, 0xc5, 0x51, 0xfa, 0x29, 0xb0, 0x43, 0xa3, 0x66, 0x4e, 0x51, 0xe5, 0x49, 0x0c, 0x09, 0x6d, - 0x9a, 0xb4, 0xd2, 0x31, 0xda, 0xa3, 0x81, 0x9a, 0xa7, 0x49, 0xef, 0xc4, 0x70, 0x91, 0x77, 0x54, - 0x1e, 0x43, 0xc6, 0xb9, 0x39, 0x85, 0x6d, 0x59, 0xb1, 0xda, 0xea, 0x2d, 0xce, 0xe5, 0xab, 0x72, - 0xec, 0xc9, 0x83, 0x89, 0x1d, 0xa7, 0x49, 0x24, 0xa8, 0xdc, 0x1d, 0x26, 0x68, 0x6f, 0x99, 0x91, - 0x4e, 0xec, 0x0e, 0xaa, 0x6c, 0x91, 0xfb, 0xc4, 0x06, 0x8c, 0xec, 0x06, 0xce, 0x01, 0x93, 0x2c, - 0x33, 0x4b, 0x37, 0x79, 0x8f, 0xe2, 0xab, 0x8f, 0xda, 0x75, 0x29, 0x20, 0xfd, 0x14, 0x2e, 0x52, - 0xa3, 0xb5, 0xaa, 0x11, 0xd0, 0x3a, 0xf4, 0x3d, 0x00, 0xde, 0x2b, 0x72, 0xb2, 0x99, 0xe4, 0xea, - 0x97, 0x36, 0xc8, 0x4a, 0xaf, 0x57, 0xbd, 0xce, 0xc7, 0x37, 0x2f, 0xc7, 0xa7, 0x9d, 0x75, 0x6c, - 0x85, 0x08, 0xfa, 0x0c, 0xa6, 0xa8, 0xe0, 0x11, 0x33, 0x3a, 0x45, 0x67, 0x94, 0x9a, 0x7e, 0xa9, - 0x2c, 0x31, 0xcc, 0xa7, 0x86, 0x80, 0xfe, 0x22, 0xcc, 0x71, 0x72, 0xb1, 0x63, 0xe6, 0x34, 0x3f, - 0x56, 0x6b, 0xdd, 0xd3, 0x61, 0xaa, 0x6f, 0xf3, 0x9e, 0x5a, 0xb2, 0xa7, 0xa9, 0x07, 0x4f, 0xdb, - 0xdc, 0x0c, 0x5a, 0x87, 0x8b, 0xbb, 0x01, 0xd6, 0xc6, 0x30, 0x43, 0xa5, 0x38, 0x3d, 0x31, 0xf5, - 0x03, 0xdc, 0x4c, 0x1b, 0x47, 0x1c, 0x0f, 0xd9, 0x80, 0x56, 0x7c, 0xaf, 0x17, 0x5b, 0xe3, 0x17, - 0x29, 0x47, 0xa8, 0x01, 0xa0, 0xed, 0x7b, 0xbd, 0x66, 0xfa, 0x42, 0x37, 0x60, 0xa3, 0x1f, 0xc3, - 0x7c, 0x64, 0xa7, 0x5c, 0x71, 0x9d, 0x83, 0xae, 0x17, 0x84, 0x6e, 0x6b, 0x7d, 0x85, 0x9a, 0xfc, - 0xb8, 0xf0, 0x8e, 0xec, 0x9c, 0xcd, 0xb6, 0x04, 0xd1, 0x85, 0x77, 0x0a, 0x15, 0xf4, 0x43, 0x98, - 0xe6, 0x6d, 0x71, 0xbb, 0xf8, 0xa5, 0xec, 0x85, 0x26, 0x81, 0xb9, 0x8d, 0x5a, 0xfc, 0x64, 0x0a, - 0x8e, 0x4e, 0x0b, 0x7d, 0x01, 0x93, 0xcf, 0x1e, 0x55, 0x6c, 0x1c, 0xf4, 0xbc, 0x6e, 0x80, 0xb9, - 0x9d, 0xef, 0x3a, 0x27, 0xfd, 0xec, 0x51, 0xa5, 0xd2, 0x0f, 0x0f, 0x71, 0x37, 0x74, 0x5b, 0x4e, - 0x88, 0x05, 0x14, 0x33, 0xbe, 0x1f, 0x3d, 0x77, 0x9a, 0x3e, 0x2f, 0x51, 0x46, 0xa1, 0x92, 0xb3, - 0x3e, 0x87, 0x09, 0xb9, 0xec, 0xd1, 0x18, 0x0c, 0x55, 0x3a, 0x9d, 0xc2, 0x05, 0xf2, 0x47, 0xbd, - 0xbe, 0x56, 0xc8, 0xa1, 0x19, 0x80, 0xe8, 0x5b, 0x2f, 0xe4, 0xd1, 0x54, 0x64, 0x66, 0x28, 0x0c, - 0x51, 0xf8, 0x5e, 0xaf, 0x30, 0x8c, 0x50, 0xdc, 0xbe, 0x51, 0x18, 0xb1, 0x3e, 0x86, 0x09, 0x39, - 0x10, 0x74, 0x11, 0x26, 0x77, 0x37, 0xeb, 0xdb, 0xab, 0xb5, 0xf5, 0x47, 0xeb, 0xab, 0x2b, 0x85, - 0x0b, 0xe8, 0x1a, 0x5c, 0xd9, 0xa9, 0xaf, 0x35, 0x57, 0xaa, 0xcd, 0x8d, 0xad, 0x5a, 0x65, 0xa3, - 0xb9, 0x6d, 0x6f, 0x7d, 0xfe, 0xfd, 0xe6, 0xce, 0xee, 0xe6, 0xe6, 0xea, 0x46, 0x21, 0x67, 0xfd, - 0x97, 0x5c, 0x42, 0x9e, 0x10, 0xf5, 0x9a, 0x9f, 0xda, 0x36, 0xa3, 0x7d, 0x90, 0xaa, 0xd7, 0xe2, - 0xc4, 0x47, 0xd9, 0xa7, 0x02, 0x91, 0x2d, 0x62, 0x9b, 0x30, 0xaa, 0xe5, 0x75, 0xd4, 0x2d, 0xa2, - 0xc7, 0xcb, 0x6c, 0x59, 0x8b, 0x96, 0x94, 0xcd, 0x64, 0x28, 0xd2, 0x8f, 0xc5, 0x66, 0xa2, 0x0a, - 0x16, 0xb9, 0xad, 0x2c, 0x29, 0x46, 0x97, 0xe1, 0x08, 0xc7, 0x20, 0xc8, 0x24, 0x9c, 0xd5, 0x4f, - 0xf9, 0x54, 0xd1, 0xc7, 0x09, 0x1b, 0x11, 0x1b, 0x21, 0x95, 0x45, 0xb1, 0x2f, 0x32, 0x61, 0xfe, - 0x29, 0xc3, 0xc8, 0x86, 0x77, 0xe0, 0x76, 0xf9, 0x20, 0x27, 0x4e, 0x8e, 0xcb, 0x23, 0x1d, 0x52, - 0x60, 0xb3, 0x72, 0xeb, 0x6f, 0x0c, 0xa9, 0x62, 0x4b, 0x1e, 0x3b, 0x72, 0xc6, 0x63, 0xc7, 0xb7, - 0x60, 0x82, 0x1f, 0x5c, 0xd7, 0x57, 0x38, 0x45, 0xba, 0x0d, 0x0b, 0x33, 0xa8, 0xdb, 0xb6, 0x23, - 0x00, 0xa2, 0x30, 0xb2, 0x3d, 0x99, 0x2a, 0x8c, 0x43, 0x91, 0xc2, 0xc8, 0x77, 0x6d, 0xa6, 0x30, - 0x46, 0x20, 0x64, 0x22, 0xd5, 0x4b, 0xa4, 0xe1, 0x68, 0x22, 0xd5, 0xeb, 0x22, 0xfd, 0x8a, 0xe8, - 0x23, 0x80, 0xca, 0x5e, 0x9d, 0xaa, 0x4b, 0xf6, 0x26, 0xdf, 0x3a, 0xe9, 0x22, 0x77, 0x5e, 0x05, - 0x5c, 0xe1, 0xf2, 0x55, 0xcd, 0x52, 0x81, 0x46, 0x55, 0x98, 0xae, 0xfc, 0x66, 0xdf, 0xc7, 0xeb, - 0x6d, 0xf2, 0x9d, 0x84, 0x4c, 0x85, 0x9e, 0xe0, 0x17, 0x10, 0xa4, 0xa2, 0xe9, 0xf2, 0x1a, 0x85, - 0x80, 0x8e, 0x82, 0xb6, 0xe0, 0xd2, 0xe3, 0x9a, 0xb0, 0x1a, 0x54, 0x5a, 0x2d, 0xaf, 0xdf, 0x0d, - 0xf9, 0x7e, 0x79, 0xf3, 0xe4, 0xb8, 0x7c, 0xed, 0xa0, 0x15, 0x19, 0x1e, 0x1c, 0x56, 0xad, 0x6e, - 0x98, 0x09, 0x5c, 0xab, 0x03, 0x33, 0x8f, 0x71, 0x48, 0x96, 0x92, 0x50, 0x7e, 0xb2, 0xe7, 0xe4, - 0x13, 0x98, 0xdc, 0x73, 0xc3, 0x43, 0xfd, 0x70, 0x49, 0x39, 0xf0, 0xca, 0x0d, 0x0f, 0xc5, 0xe1, - 0x52, 0xfd, 0xcc, 0x15, 0x70, 0x6b, 0x15, 0x2e, 0xf2, 0xd6, 0xa4, 0xae, 0xb5, 0xa4, 0x13, 0xcc, - 0x45, 0xa7, 0x55, 0x95, 0xa0, 0x4e, 0xe6, 0x8f, 0xf2, 0x30, 0x57, 0x3b, 0x74, 0xba, 0x07, 0x78, - 0xdb, 0x09, 0x82, 0x57, 0x9e, 0xdf, 0x56, 0x3a, 0x4f, 0xaf, 0xf0, 0x12, 0x9d, 0xa7, 0xf7, 0x74, - 0x4b, 0x30, 0xb9, 0xd5, 0x69, 0x0b, 0x1c, 0xae, 0x97, 0xd2, 0xb6, 0xbc, 0x4e, 0xbb, 0xd9, 0x13, - 0xb4, 0x54, 0x20, 0x82, 0xb3, 0x89, 0x5f, 0x49, 0x9c, 0xa1, 0x08, 0xa7, 0x8b, 0x5f, 0x29, 0x38, - 0x0a, 0x10, 0x5a, 0x85, 0x4b, 0x75, 0xdc, 0xf2, 0xba, 0xed, 0x47, 0x4e, 0x2b, 0xf4, 0x7c, 0x76, - 0x93, 0x31, 0x1c, 0xe9, 0x09, 0x01, 0xad, 0x6c, 0x3e, 0xa7, 0xb5, 0xec, 0x02, 0xc3, 0x4e, 0x62, - 0xa0, 0x2d, 0x7a, 0x0f, 0x42, 0x2f, 0xc2, 0xf9, 0x0d, 0xea, 0xed, 0x7b, 0xf2, 0x66, 0xbc, 0xe6, - 0x63, 0xba, 0x28, 0x9c, 0x8e, 0x54, 0xdc, 0xa5, 0xd8, 0xa5, 0xc2, 0x45, 0x40, 0xda, 0x92, 0x88, - 0xb5, 0x0b, 0xd3, 0xdb, 0x9d, 0xfe, 0x81, 0xdb, 0x25, 0x62, 0xa0, 0x8e, 0x7f, 0x8a, 0x56, 0x00, - 0xa2, 0x02, 0x6e, 0x9c, 0x10, 0xa6, 0xa6, 0xa8, 0xa2, 0xb1, 0xcc, 0x3f, 0x24, 0x5a, 0x42, 0x15, - 0x24, 0x5b, 0xc1, 0xb3, 0xfe, 0xda, 0x10, 0x20, 0x3e, 0x01, 0xf5, 0xd0, 0x09, 0x71, 0x1d, 0x87, - 0x44, 0xd8, 0xce, 0x43, 0x5e, 0x9e, 0xb1, 0x47, 0x4f, 0x8e, 0xcb, 0x79, 0xb7, 0x6d, 0xe7, 0xd7, - 0x57, 0xd0, 0x3b, 0x30, 0x42, 0xc1, 0x28, 0xff, 0x67, 0x64, 0x7b, 0x2a, 0x05, 0x26, 0x39, 0x02, - 0xf2, 0xa7, 0xcd, 0x80, 0xd1, 0xbb, 0x30, 0xb1, 0x82, 0x3b, 0xf8, 0xc0, 0x09, 0x3d, 0xf1, 0x75, - 0xb3, 0x53, 0xab, 0x28, 0x54, 0xd6, 0x5c, 0x04, 0x49, 0xb4, 0x63, 0x1b, 0x3b, 0x81, 0xd7, 0x55, - 0xb5, 0x63, 0x9f, 0x96, 0xa8, 0xda, 0x31, 0x83, 0x41, 0xbf, 0x9f, 0x83, 0xc9, 0x4a, 0xb7, 0xcb, - 0x4f, 0x83, 0x01, 0xe7, 0xfa, 0xdc, 0x3d, 0xe9, 0x60, 0xb0, 0xe1, 0xec, 0xe3, 0x4e, 0xc3, 0xe9, - 0xf4, 0x71, 0x50, 0xfd, 0x82, 0x28, 0x2c, 0xff, 0xf5, 0xb8, 0xfc, 0xf1, 0x19, 0xce, 0x77, 0x91, - 0xab, 0xc2, 0x8e, 0xef, 0xb8, 0x61, 0x40, 0x2f, 0x09, 0xa3, 0x06, 0xd5, 0xef, 0x46, 0xe9, 0x07, - 0x7a, 0x0b, 0x46, 0xd8, 0x79, 0x93, 0x29, 0xd9, 0x54, 0x16, 0xc7, 0x0e, 0x9a, 0x36, 0x83, 0xb0, - 0x6e, 0xc9, 0xfd, 0x6e, 0x7d, 0x25, 0x6d, 0x0a, 0xac, 0x1a, 0x2c, 0x3e, 0xc6, 0xa1, 0x8d, 0x03, - 0x1c, 0x8a, 0x45, 0x4b, 0x97, 0x5c, 0x64, 0x22, 0x19, 0xa3, 0xbf, 0x25, 0x32, 0x9d, 0x0f, 0xb6, - 0x50, 0x45, 0x8d, 0xf5, 0x57, 0x73, 0x50, 0xae, 0xf9, 0x98, 0xed, 0xf7, 0x29, 0x84, 0xb2, 0x85, - 0xc9, 0x22, 0xf7, 0xb9, 0xc8, 0x47, 0xb5, 0x84, 0x4b, 0xdc, 0xaf, 0xe2, 0x74, 0xa7, 0x42, 0xeb, - 0x39, 0xcc, 0xd9, 0xb8, 0x8b, 0x5f, 0x91, 0xd3, 0xac, 0x76, 0x8a, 0x2b, 0xc3, 0x08, 0xfb, 0xf2, - 0x12, 0x43, 0x60, 0xe5, 0x67, 0x3b, 0xa4, 0x5a, 0xff, 0x28, 0x0f, 0x05, 0x36, 0xdc, 0xaa, 0x17, - 0x9e, 0x6e, 0x7c, 0x7c, 0x04, 0xf9, 0x01, 0xe7, 0xda, 0x3b, 0x11, 0xb7, 0x87, 0x22, 0xe5, 0x80, - 0x76, 0x95, 0xec, 0x71, 0xa2, 0x92, 0x0c, 0x88, 0xad, 0x02, 0x66, 0x01, 0xa2, 0x03, 0xa2, 0xab, - 0x80, 0xcf, 0x3d, 0xfa, 0x9d, 0x1c, 0x8c, 0xb2, 0x75, 0x95, 0xbd, 0x72, 0xf7, 0xce, 0x67, 0xe5, - 0x16, 0x42, 0xfa, 0x97, 0xfa, 0x1d, 0xb1, 0x3a, 0xeb, 0x9f, 0xe4, 0xe1, 0x92, 0xc2, 0x2b, 0x26, - 0x96, 0xd0, 0x5b, 0x4c, 0xb7, 0x51, 0x18, 0x46, 0x6d, 0x6a, 0xd4, 0xd0, 0x1c, 0x9d, 0x94, 0x29, - 0xe7, 0xde, 0x82, 0x71, 0x32, 0xa4, 0xb8, 0xf9, 0x8d, 0xee, 0xb0, 0x0c, 0x54, 0x54, 0x9f, 0x9a, - 0x7b, 0xf7, 0x61, 0x9c, 0xfe, 0x49, 0x66, 0x64, 0x38, 0x7d, 0x46, 0x24, 0x10, 0x72, 0x01, 0x9e, - 0x78, 0x6e, 0xf7, 0x19, 0x0e, 0x0f, 0x3d, 0x61, 0xac, 0x5c, 0x27, 0x72, 0xf0, 0xff, 0xf3, 0xdc, - 0x6e, 0xf3, 0x88, 0x16, 0x9f, 0xd5, 0xbc, 0x13, 0x11, 0xb4, 0x15, 0xe2, 0xd6, 0x03, 0x28, 0x10, - 0x91, 0x75, 0xfa, 0xa5, 0x65, 0xcd, 0x02, 0x7a, 0x8c, 0xc3, 0xaa, 0xa7, 0x6d, 0xa6, 0xd6, 0x34, - 0x4c, 0x6e, 0xbb, 0xdd, 0x03, 0xf1, 0xf3, 0x9f, 0x0d, 0xc1, 0x14, 0xfb, 0xcd, 0x67, 0x20, 0xa6, - 0xf2, 0xe4, 0x4e, 0xa3, 0xf2, 0x7c, 0x00, 0xd3, 0xfc, 0xe6, 0x09, 0xfb, 0xf4, 0x46, 0x82, 0xcd, - 0x07, 0x3d, 0x32, 0xb0, 0x9b, 0xa7, 0xe6, 0x4b, 0x56, 0x63, 0xeb, 0x80, 0x68, 0x03, 0x66, 0x58, - 0xc1, 0x23, 0xec, 0x84, 0xfd, 0xc8, 0xea, 0x71, 0x91, 0x9f, 0x1a, 0x44, 0x31, 0x93, 0x67, 0x9c, - 0xd6, 0x73, 0x5e, 0x68, 0xc7, 0x70, 0xd1, 0x67, 0x70, 0x71, 0xdb, 0xf7, 0xbe, 0x7c, 0xad, 0x28, - 0x79, 0x4c, 0xa4, 0xcf, 0x9d, 0x1c, 0x97, 0x2f, 0xf5, 0x48, 0x55, 0x53, 0x55, 0xf5, 0xe2, 0xd0, - 0x64, 0x4d, 0xad, 0x07, 0x55, 0xcf, 0x77, 0xbb, 0x07, 0x74, 0x36, 0xc7, 0xd9, 0x9a, 0x72, 0x83, - 0xe6, 0x3e, 0x2d, 0xb4, 0x65, 0x75, 0xcc, 0xf8, 0x38, 0x36, 0xd8, 0xf8, 0xf8, 0x00, 0x60, 0xc3, - 0x73, 0xda, 0x95, 0x4e, 0xa7, 0x56, 0x09, 0xa8, 0xc9, 0x41, 0x35, 0xb9, 0x3b, 0x9d, 0x4e, 0xb3, - 0xe5, 0x04, 0xb6, 0x02, 0xf3, 0x64, 0x78, 0x7c, 0xb4, 0x30, 0x66, 0x5f, 0xdc, 0x70, 0x5b, 0xb8, - 0x1b, 0xe0, 0x3d, 0xc7, 0xef, 0xba, 0xdd, 0x83, 0xc0, 0xfa, 0xb3, 0x61, 0x18, 0x97, 0x43, 0xbe, - 0xa7, 0x1e, 0x7b, 0xb8, 0x6a, 0x44, 0x25, 0x54, 0x64, 0x16, 0xb1, 0x15, 0x08, 0x74, 0x85, 0x5d, - 0x73, 0x32, 0xa5, 0x6c, 0x8c, 0xac, 0x6e, 0xa7, 0xd7, 0x63, 0x97, 0x99, 0xf3, 0x90, 0x5f, 0xa9, - 0x52, 0xfe, 0x8f, 0xb3, 0x9d, 0xa0, 0xbd, 0x6f, 0xe7, 0x57, 0xaa, 0x64, 0x95, 0x6d, 0xad, 0xaf, - 0xd4, 0x28, 0x2b, 0xc7, 0xd9, 0x2a, 0xf3, 0xdc, 0x76, 0xcb, 0xa6, 0xa5, 0xa4, 0xb6, 0x5e, 0x79, - 0xb6, 0xc1, 0xd9, 0x45, 0x6b, 0x03, 0xe7, 0xa8, 0x63, 0xd3, 0x52, 0x72, 0x54, 0x60, 0x27, 0xdc, - 0x9a, 0xd7, 0x0d, 0x7d, 0xaf, 0x13, 0x50, 0x8d, 0x76, 0x9c, 0x4d, 0x27, 0x3f, 0x1a, 0xb7, 0x78, - 0x95, 0x1d, 0x03, 0x45, 0x7b, 0xb0, 0x50, 0x69, 0xbf, 0x74, 0xba, 0x2d, 0xdc, 0x66, 0x35, 0x7b, - 0x9e, 0xff, 0xe2, 0x79, 0xc7, 0x7b, 0x15, 0x50, 0x7e, 0x8f, 0x73, 0x4b, 0x12, 0x07, 0x11, 0x27, - 0xed, 0x57, 0x02, 0xc8, 0x4e, 0xc3, 0x26, 0x52, 0xb2, 0xd6, 0xf1, 0xfa, 0x6d, 0x3e, 0x0b, 0x54, - 0x4a, 0xb6, 0x48, 0x81, 0xcd, 0xca, 0x09, 0x97, 0xd6, 0xea, 0xcf, 0xa8, 0xdd, 0x86, 0x73, 0xe9, - 0x30, 0x38, 0xb2, 0x49, 0x19, 0xba, 0x0d, 0x63, 0xe2, 0xd4, 0xc3, 0xcc, 0xbf, 0xd4, 0xc2, 0x28, - 0x4e, 0x3b, 0xa2, 0x8e, 0x7c, 0x12, 0x36, 0x6e, 0x79, 0x2f, 0xb1, 0xff, 0xba, 0xe6, 0xb5, 0xb1, - 0xb0, 0x32, 0xf0, 0x53, 0x34, 0xab, 0x68, 0xb6, 0x48, 0x8d, 0xad, 0x03, 0x92, 0x06, 0x98, 0xe2, - 0x14, 0x50, 0xdf, 0x21, 0xde, 0x00, 0x53, 0xac, 0x02, 0x5b, 0xd4, 0xa1, 0x15, 0xb8, 0x54, 0xe9, - 0x87, 0xde, 0x91, 0x13, 0xba, 0xad, 0xdd, 0xde, 0x81, 0xef, 0x90, 0x46, 0x0a, 0x14, 0x81, 0x1e, - 0xed, 0x1c, 0x51, 0xd9, 0xec, 0xf3, 0x5a, 0x3b, 0x89, 0xf0, 0x64, 0x78, 0x7c, 0xb2, 0x30, 0xf5, - 0x64, 0x78, 0x7c, 0xaa, 0x30, 0xfd, 0x64, 0x78, 0x7c, 0xba, 0x30, 0x63, 0x3d, 0x84, 0x4b, 0x4c, - 0xce, 0x9c, 0x5a, 0xe1, 0xb7, 0xb6, 0x01, 0xea, 0xf8, 0xc8, 0xe9, 0x1d, 0x7a, 0x64, 0x45, 0x56, - 0xd5, 0x5f, 0x5c, 0x61, 0x44, 0xd2, 0x77, 0x85, 0x57, 0x34, 0x96, 0xc5, 0x39, 0x4d, 0x40, 0xda, - 0x0a, 0x96, 0xf5, 0x1f, 0xf3, 0x80, 0xa8, 0x0f, 0x47, 0x3d, 0xf4, 0xb1, 0x73, 0x24, 0xba, 0xf1, - 0x21, 0x4c, 0xb1, 0x2d, 0x83, 0x15, 0xd3, 0xee, 0x10, 0x6d, 0x94, 0xc9, 0x0a, 0xb5, 0x6a, 0xed, - 0x82, 0xad, 0x81, 0x12, 0x54, 0x1b, 0x07, 0xfd, 0x23, 0x81, 0x9a, 0xd7, 0x50, 0xd5, 0x2a, 0x82, - 0xaa, 0xfe, 0x46, 0x9f, 0xc1, 0x4c, 0xcd, 0x3b, 0xea, 0x11, 0x9e, 0x70, 0xe4, 0x21, 0xbe, 0x73, - 0xf2, 0x76, 0xb5, 0xca, 0xb5, 0x0b, 0x76, 0x0c, 0x1c, 0x6d, 0xc2, 0xe5, 0x47, 0x9d, 0x7e, 0x70, - 0x58, 0xe9, 0xb6, 0x6b, 0x1d, 0x2f, 0x10, 0x54, 0x86, 0xb9, 0x7d, 0x97, 0x4b, 0xba, 0x24, 0xc4, - 0xda, 0x05, 0xdb, 0x84, 0x88, 0x6e, 0x73, 0x87, 0x54, 0xbe, 0x83, 0x4f, 0xdf, 0xe3, 0xfe, 0xaa, - 0x5b, 0x5d, 0xbc, 0xf5, 0x7c, 0xed, 0x82, 0xcd, 0x6a, 0xab, 0x13, 0x30, 0x26, 0xa4, 0xfc, 0x7d, - 0xb2, 0x58, 0x24, 0x3b, 0x89, 0xb6, 0xdc, 0x0f, 0x50, 0x09, 0xc6, 0x77, 0x7b, 0x44, 0xf8, 0x08, - 0x15, 0xce, 0x96, 0xbf, 0xad, 0x6f, 0xe9, 0x9c, 0x46, 0x8b, 0xea, 0x39, 0x9b, 0x01, 0x47, 0x05, - 0xd6, 0x9a, 0xce, 0xdc, 0x6c, 0x68, 0xad, 0xdd, 0x7c, 0xac, 0xdd, 0x42, 0x9c, 0xd7, 0xd6, 0x9c, - 0x91, 0x79, 0xd6, 0xe7, 0x70, 0x7d, 0xb7, 0x47, 0x0e, 0x35, 0x95, 0x5e, 0xaf, 0xe3, 0xb6, 0xe8, - 0x7e, 0xca, 0x76, 0x03, 0xb1, 0x58, 0xde, 0x93, 0xde, 0x8e, 0xb9, 0x54, 0xdf, 0x10, 0x38, 0x39, - 0x2e, 0x8f, 0xb2, 0x5d, 0x45, 0x38, 0x39, 0x5a, 0x3f, 0xcf, 0xc1, 0x75, 0xf6, 0x05, 0xa4, 0x92, - 0xfe, 0x0d, 0xd5, 0x27, 0x53, 0x51, 0x53, 0xa4, 0x07, 0xa6, 0xea, 0x75, 0x19, 0xdd, 0x25, 0xe6, - 0xd3, 0xef, 0x12, 0x33, 0x2f, 0x57, 0xad, 0xef, 0x81, 0xc5, 0x7b, 0xd4, 0xe9, 0x24, 0x3a, 0x15, - 0x7c, 0x95, 0x5e, 0x59, 0xff, 0x33, 0x0f, 0x0b, 0x8f, 0x71, 0x17, 0xfb, 0x0e, 0x1d, 0xa7, 0xa6, - 0x91, 0x9f, 0xfe, 0x0e, 0x47, 0xaa, 0x9b, 0xf9, 0x14, 0x75, 0xf3, 0x0a, 0x0c, 0xed, 0xda, 0xeb, - 0x7c, 0x58, 0x54, 0x90, 0xf6, 0x7d, 0xd7, 0x26, 0x65, 0x68, 0x3d, 0xba, 0xe9, 0x18, 0x1e, 0x78, - 0xd3, 0x71, 0x99, 0x5b, 0x7e, 0xc7, 0xf8, 0x4d, 0x87, 0x7e, 0xbf, 0xb1, 0xa9, 0xe8, 0xb4, 0x44, - 0xdc, 0xbc, 0xcd, 0xbf, 0xa9, 0x94, 0x01, 0x72, 0xf5, 0x94, 0x5d, 0x45, 0xd3, 0x25, 0xc0, 0xb4, - 0x54, 0xa1, 0x9b, 0x96, 0xbe, 0x07, 0x93, 0x0a, 0x88, 0xe1, 0x3a, 0xf9, 0x5b, 0xea, 0x75, 0xf2, - 0xe4, 0xd2, 0x7c, 0xa4, 0x43, 0xd7, 0x43, 0xa2, 0x1d, 0x30, 0x25, 0x5a, 0xbd, 0x66, 0xfe, 0x18, - 0x8a, 0xc9, 0xde, 0x70, 0x95, 0x6b, 0xd0, 0x29, 0xc4, 0x5a, 0x81, 0xd9, 0xc7, 0x38, 0x8c, 0x1c, - 0x42, 0x95, 0x4b, 0xa8, 0xd8, 0x77, 0x96, 0x61, 0xfd, 0xb2, 0xea, 0x30, 0x17, 0xa3, 0xc2, 0xdb, - 0xff, 0x08, 0xc6, 0x84, 0x2b, 0x49, 0x2e, 0xdd, 0x95, 0x84, 0xae, 0x5b, 0x4e, 0xd9, 0x16, 0x08, - 0xd6, 0x1e, 0xcc, 0x6b, 0x44, 0x03, 0x49, 0xf5, 0x3b, 0x30, 0x2e, 0xca, 0x62, 0x66, 0x03, 0x8d, - 0x2c, 0x5d, 0x5a, 0x81, 0x40, 0x96, 0x28, 0xd6, 0x21, 0xcc, 0x6f, 0xb8, 0x81, 0x4e, 0x99, 0x8d, - 0xfa, 0x2a, 0x4c, 0xf4, 0x9c, 0x03, 0xdc, 0x0c, 0xdc, 0xdf, 0x64, 0xeb, 0x73, 0xc4, 0x1e, 0x27, - 0x05, 0x75, 0xf7, 0x37, 0x31, 0xba, 0x06, 0x40, 0x2b, 0x29, 0xff, 0xb8, 0x78, 0xa1, 0xe0, 0xec, - 0x3c, 0x87, 0x60, 0x98, 0x2c, 0x63, 0xb6, 0x20, 0x6d, 0xfa, 0xb7, 0xe5, 0xc3, 0x42, 0xa2, 0x25, - 0x3e, 0x86, 0xfb, 0x20, 0xbb, 0x96, 0x31, 0x06, 0x5b, 0x02, 0xa1, 0x3b, 0x70, 0xb1, 0x8b, 0xbf, - 0x0c, 0x9b, 0x89, 0x3e, 0x4c, 0x93, 0xe2, 0x6d, 0xd1, 0x0f, 0xeb, 0x47, 0xf4, 0x74, 0x1d, 0xf7, - 0xf5, 0x3a, 0x37, 0xe6, 0x75, 0xa0, 0x44, 0x86, 0xa4, 0xbb, 0xf6, 0xfc, 0xda, 0x18, 0xf8, 0x12, - 0xae, 0x1a, 0x5b, 0xfb, 0x75, 0x33, 0xf1, 0xcf, 0xf3, 0xb0, 0xc0, 0x76, 0xa9, 0xe4, 0xa7, 0x71, - 0x7a, 0x19, 0xf6, 0x8d, 0x18, 0x85, 0x1f, 0x18, 0x8c, 0xc2, 0x14, 0x45, 0x35, 0x0a, 0x6b, 0xa6, - 0xe0, 0x0f, 0xcc, 0xa6, 0x60, 0xaa, 0x40, 0xea, 0xa6, 0xe0, 0xb8, 0x01, 0x78, 0x35, 0xdd, 0x00, - 0x4c, 0xcd, 0x61, 0x06, 0x03, 0xb0, 0xc1, 0xec, 0xfb, 0x64, 0x78, 0x3c, 0x5f, 0x18, 0xb2, 0x1a, - 0x50, 0x4c, 0xb2, 0xf8, 0x1c, 0xe4, 0xc6, 0x1f, 0xe7, 0xe0, 0x1a, 0xd7, 0x30, 0x62, 0x1f, 0xc1, - 0xd9, 0x67, 0xf0, 0x5d, 0x98, 0xe2, 0xb8, 0x3b, 0xd1, 0x62, 0x61, 0x5e, 0x9b, 0x42, 0x12, 0x32, - 0x71, 0xaa, 0x81, 0xa1, 0x77, 0x95, 0xd3, 0x3e, 0xb3, 0x20, 0x5d, 0x21, 0xdb, 0x25, 0x33, 0x0b, - 0xa4, 0x9e, 0xf9, 0xad, 0x2f, 0xe0, 0x7a, 0x5a, 0xc7, 0xcf, 0x81, 0x2f, 0x7f, 0x92, 0x83, 0xab, - 0x9c, 0xbc, 0xf6, 0x39, 0x7d, 0x25, 0x91, 0x7f, 0x06, 0xbf, 0x83, 0x27, 0x30, 0x49, 0x1a, 0x14, - 0xfd, 0xd6, 0x9f, 0x11, 0x29, 0x35, 0x2b, 0x4e, 0xe8, 0xf0, 0xab, 0x2c, 0xe7, 0xa8, 0x23, 0x3c, - 0x0a, 0x6d, 0x15, 0xd9, 0xfa, 0x01, 0x2c, 0x9a, 0x87, 0x70, 0x0e, 0xfc, 0x79, 0x02, 0x25, 0x83, - 0xe0, 0xfc, 0x6a, 0x1b, 0xe2, 0xf7, 0xe1, 0xaa, 0x91, 0xd6, 0x39, 0x74, 0x73, 0x8d, 0x6c, 0xf7, - 0xe1, 0x39, 0x4c, 0xa1, 0xb5, 0x07, 0x57, 0x0c, 0x94, 0xce, 0xa1, 0x8b, 0x8f, 0x61, 0x41, 0xaa, - 0xb9, 0x5f, 0xab, 0x87, 0xcf, 0xe0, 0x1a, 0x23, 0x74, 0x3e, 0xb3, 0xf2, 0x14, 0xae, 0x72, 0x72, - 0xe7, 0xc0, 0xbd, 0x35, 0x58, 0x8c, 0x4e, 0xb3, 0x06, 0x5d, 0xe2, 0xd4, 0x42, 0xc6, 0xda, 0x80, - 0x1b, 0x11, 0xa5, 0x94, 0x8d, 0xf5, 0xf4, 0xd4, 0x98, 0x2e, 0x16, 0xcd, 0xd2, 0x39, 0xea, 0x62, - 0x11, 0xe0, 0xb9, 0xa9, 0x13, 0xeb, 0x70, 0x99, 0x11, 0xd6, 0xf5, 0xd6, 0x25, 0x55, 0x6f, 0x35, - 0xbe, 0xc0, 0x49, 0xaa, 0xb2, 0xcf, 0xa8, 0x2a, 0x2b, 0x40, 0xa2, 0x1e, 0xbe, 0x0b, 0xa3, 0xfc, - 0x91, 0x21, 0xeb, 0x9f, 0x81, 0x18, 0xd3, 0xd4, 0x19, 0x1a, 0x07, 0xb6, 0x7e, 0x0c, 0xd7, 0xd8, - 0x31, 0x30, 0xee, 0xcc, 0x2e, 0xa6, 0xe4, 0x3b, 0xb1, 0x53, 0x60, 0x86, 0xcf, 0xbc, 0xe9, 0x30, - 0xb8, 0x2f, 0xd6, 0x76, 0x1a, 0xfd, 0x53, 0x79, 0x8a, 0x8a, 0xd3, 0x5d, 0xde, 0x78, 0xba, 0xbb, - 0x05, 0x37, 0xe5, 0xe9, 0x2e, 0xde, 0x8c, 0x34, 0xdb, 0xfe, 0x00, 0xae, 0xb2, 0x81, 0xea, 0x4f, - 0xab, 0x44, 0x37, 0x3e, 0x8e, 0x0d, 0x33, 0xf5, 0xed, 0x96, 0x69, 0x90, 0x7f, 0x3d, 0x27, 0x3e, - 0x39, 0x33, 0xf1, 0x6f, 0xfa, 0xb8, 0xbb, 0x09, 0x65, 0xc9, 0x10, 0xbd, 0x47, 0x5f, 0xed, 0xac, - 0xfb, 0x0c, 0xe6, 0x12, 0xee, 0xff, 0x44, 0x61, 0x45, 0xef, 0x90, 0xcf, 0x82, 0x16, 0x88, 0x65, - 0x97, 0xfa, 0x5c, 0xc0, 0x96, 0x90, 0x56, 0x13, 0x16, 0x93, 0x53, 0xe1, 0xb6, 0x84, 0x63, 0x10, - 0xfa, 0x8c, 0x7c, 0xc2, 0xec, 0x0d, 0x42, 0x6e, 0xc0, 0x1b, 0x04, 0xfe, 0x1d, 0x33, 0x74, 0x81, - 0x65, 0x59, 0x42, 0xd4, 0xc4, 0xc6, 0x4f, 0x5a, 0x17, 0xeb, 0xe1, 0x9f, 0xe6, 0x00, 0x89, 0xba, - 0x5a, 0xdd, 0x16, 0x6d, 0x5f, 0x81, 0xa1, 0x5a, 0xdd, 0xe6, 0x0e, 0x89, 0xf4, 0xbc, 0xdd, 0x0a, - 0x7c, 0x9b, 0x94, 0xc5, 0xd5, 0xd6, 0xfc, 0x69, 0xd4, 0xd6, 0x75, 0x40, 0x75, 0xf7, 0xa0, 0xbb, - 0xe7, 0x86, 0x87, 0xb2, 0xb1, 0x0a, 0x37, 0x11, 0xd3, 0xb7, 0x7a, 0x81, 0x7b, 0xd0, 0x6d, 0xd2, - 0x5b, 0x78, 0xf9, 0x92, 0xa2, 0xe5, 0xd8, 0x06, 0x24, 0xeb, 0x87, 0x70, 0x59, 0xeb, 0x2f, 0xff, - 0xee, 0x33, 0x5d, 0x2f, 0xd1, 0x1d, 0x18, 0xab, 0x55, 0xe8, 0x8d, 0x1d, 0xb5, 0x30, 0x4c, 0x31, - 0x09, 0xd5, 0x72, 0x9a, 0xf4, 0xdd, 0xb9, 0x2d, 0x2a, 0xad, 0x7f, 0x38, 0xac, 0x50, 0x57, 0xbc, - 0x51, 0x33, 0xd8, 0xf1, 0x10, 0x80, 0xad, 0x29, 0x85, 0x1b, 0x44, 0x65, 0x9c, 0xe4, 0x97, 0x0c, - 0x4c, 0x88, 0xdb, 0x0a, 0xd0, 0x69, 0x7d, 0x50, 0xb9, 0xf7, 0x0f, 0x43, 0x12, 0x37, 0x71, 0xd2, - 0xfb, 0x87, 0x93, 0x0e, 0x6c, 0x15, 0x08, 0xfd, 0x38, 0xee, 0x97, 0x35, 0x42, 0x2f, 0xbe, 0xdf, - 0xe0, 0x86, 0x0c, 0xc3, 0xd8, 0xce, 0xe6, 0x9a, 0xf5, 0x0a, 0xe6, 0x08, 0xae, 0xfb, 0x9c, 0x3a, - 0x5f, 0xad, 0x7e, 0x19, 0xe2, 0x2e, 0xdb, 0x0d, 0x46, 0x69, 0x3b, 0xb7, 0x33, 0xda, 0x89, 0x80, - 0xf9, 0x43, 0xe9, 0x88, 0x4e, 0x13, 0xcb, 0x3a, 0xdb, 0x4c, 0x9f, 0xae, 0x3a, 0x7b, 0x63, 0xb5, - 0xdb, 0xee, 0x79, 0xae, 0x3c, 0x86, 0xb0, 0x55, 0xe7, 0x77, 0x9a, 0x98, 0x97, 0xdb, 0x2a, 0x90, - 0x75, 0x27, 0xd3, 0x1f, 0x6b, 0x1c, 0x86, 0x77, 0x6a, 0x3b, 0x1b, 0x85, 0x9c, 0x75, 0x1f, 0x40, - 0x69, 0x09, 0x60, 0x74, 0x73, 0xcb, 0x7e, 0x56, 0xd9, 0x28, 0x5c, 0x40, 0x73, 0x70, 0x69, 0x6f, - 0x7d, 0x73, 0x65, 0x6b, 0xaf, 0xde, 0xac, 0x3f, 0xab, 0xd8, 0x3b, 0xb5, 0x8a, 0xbd, 0x52, 0xc8, - 0x59, 0x5f, 0xc0, 0xac, 0x3e, 0xc2, 0x73, 0x5d, 0x84, 0x21, 0x5c, 0x96, 0x1a, 0xd0, 0x93, 0xbd, - 0x1d, 0xc5, 0x7b, 0x85, 0x1f, 0xa9, 0xe2, 0x17, 0x6a, 0xfc, 0xf0, 0xc5, 0xbf, 0x3b, 0x05, 0x48, - 0xbb, 0x06, 0xcd, 0x67, 0x5e, 0x83, 0x5a, 0xef, 0xc3, 0xac, 0xde, 0xea, 0x69, 0x8d, 0x4a, 0x6f, - 0x50, 0xb7, 0x1e, 0xc5, 0xa3, 0x91, 0x9c, 0xed, 0xa3, 0x2e, 0x72, 0x59, 0xfc, 0x3e, 0x14, 0x38, - 0x54, 0xb4, 0x57, 0xdf, 0x12, 0x56, 0x3f, 0x26, 0x33, 0xf5, 0xc7, 0xec, 0xc2, 0xc9, 0xe0, 0x4d, - 0x71, 0x8f, 0x30, 0xa8, 0x85, 0xbf, 0x93, 0x83, 0x62, 0xcc, 0x39, 0xb0, 0x76, 0xe8, 0x74, 0x3a, - 0xb8, 0x7b, 0x80, 0xd1, 0x5d, 0x18, 0xde, 0xd9, 0xda, 0xd9, 0xe6, 0x76, 0xb6, 0x59, 0xbe, 0x4c, - 0x49, 0x91, 0x84, 0xb1, 0x29, 0x04, 0x7a, 0x0a, 0x97, 0x84, 0x13, 0x8b, 0xac, 0xe2, 0xc7, 0x98, - 0x6b, 0xd9, 0x2e, 0x31, 0x49, 0xbc, 0x27, 0xc3, 0xe3, 0xb9, 0x42, 0xde, 0xfa, 0xfd, 0x1c, 0x2c, - 0xa4, 0xb8, 0x2d, 0xa2, 0xb7, 0xb4, 0x8e, 0x5d, 0x56, 0x3a, 0x26, 0x40, 0xd6, 0x2e, 0xf0, 0x9e, - 0xd5, 0x14, 0x1f, 0x9d, 0xa1, 0x33, 0xf8, 0xe8, 0xf0, 0x67, 0xca, 0x14, 0x8e, 0xbf, 0x1c, 0x62, - 0x9e, 0x90, 0x17, 0x61, 0x5a, 0xe3, 0x80, 0x65, 0xc1, 0x94, 0xda, 0x32, 0x61, 0x73, 0xcd, 0x6b, - 0x4b, 0x36, 0x93, 0xbf, 0xad, 0xbf, 0x95, 0x83, 0x59, 0xea, 0x4e, 0x79, 0xe0, 0x92, 0xef, 0x2a, - 0x62, 0xf1, 0x92, 0x36, 0x92, 0x45, 0x6d, 0x24, 0x31, 0x58, 0x39, 0xa4, 0x8f, 0x12, 0x43, 0x5a, - 0x34, 0x0d, 0x89, 0x9e, 0x02, 0x5d, 0xaf, 0xab, 0x8d, 0x44, 0xb9, 0x96, 0xf8, 0xbb, 0x39, 0xb8, - 0xac, 0xf4, 0x49, 0xf6, 0xff, 0xa1, 0xd6, 0xa5, 0xab, 0x86, 0x2e, 0x25, 0x98, 0x5c, 0x4d, 0xf4, - 0xe8, 0x8d, 0xac, 0x1e, 0x0d, 0xe4, 0xf1, 0x9f, 0xe6, 0x60, 0xce, 0xc8, 0x03, 0x34, 0x4f, 0x54, - 0xad, 0x96, 0x8f, 0x43, 0xce, 0x5e, 0xfe, 0x8b, 0x94, 0xaf, 0x07, 0x41, 0x9f, 0xc7, 0xf6, 0x98, - 0xb0, 0xf9, 0x2f, 0xf4, 0x06, 0x4c, 0x6f, 0x63, 0xdf, 0xf5, 0xda, 0xcc, 0x7b, 0x8b, 0xdd, 0x70, - 0x4f, 0xdb, 0x7a, 0x21, 0x5a, 0x84, 0x89, 0x4a, 0xe7, 0xc0, 0xf3, 0xdd, 0xf0, 0x90, 0xdd, 0x0c, - 0x4d, 0xd8, 0x51, 0x01, 0xa1, 0xbd, 0xe2, 0x1e, 0x08, 0xa7, 0x8d, 0x69, 0x9b, 0xff, 0x42, 0x45, - 0x18, 0x13, 0x06, 0x1e, 0x6a, 0x1e, 0xb2, 0xc5, 0x4f, 0x82, 0xf1, 0x3d, 0x9b, 0x2e, 0x02, 0xfa, - 0x9a, 0xc6, 0xe6, 0xbf, 0xac, 0xb7, 0x61, 0xd6, 0xc4, 0x47, 0xe3, 0x92, 0xf9, 0xcb, 0x79, 0xb8, - 0x5c, 0x69, 0xb7, 0x9f, 0x3d, 0xaa, 0xac, 0x60, 0x55, 0xc1, 0x79, 0x07, 0x86, 0xd7, 0xbb, 0x6e, - 0xc8, 0xb5, 0x1b, 0xe1, 0xe0, 0x6b, 0x80, 0x24, 0x50, 0x64, 0x86, 0xc8, 0xff, 0xc8, 0x86, 0xcb, - 0xab, 0x5f, 0xba, 0x41, 0xe8, 0x76, 0x0f, 0x54, 0x2f, 0xe1, 0xfc, 0x69, 0xbc, 0x84, 0xd7, 0x2e, - 0xd8, 0x26, 0x64, 0xb4, 0x03, 0xf3, 0x9b, 0xf8, 0x95, 0x61, 0x09, 0xc9, 0xc7, 0x13, 0x92, 0xac, - 0x61, 0xe5, 0xa4, 0xe0, 0xaa, 0x2b, 0xf4, 0x77, 0xf2, 0xf4, 0x85, 0x95, 0x32, 0x30, 0xde, 0xf2, - 0x2e, 0xcc, 0x2a, 0x1d, 0x8a, 0x24, 0x4e, 0x8e, 0xbf, 0x03, 0x35, 0x0e, 0x47, 0xfd, 0x90, 0x8c, - 0xe8, 0x68, 0x0f, 0x16, 0xf4, 0x4e, 0x45, 0x94, 0xf5, 0x8f, 0xc1, 0x04, 0xb2, 0x76, 0xc1, 0x4e, - 0xc3, 0x46, 0x4b, 0x30, 0x54, 0x69, 0xbd, 0xe0, 0x6c, 0x31, 0x4f, 0x19, 0x1b, 0x59, 0xa5, 0xf5, - 0x82, 0xbe, 0x6e, 0x6e, 0xbd, 0xd0, 0xbe, 0x87, 0x7f, 0x9b, 0x83, 0x85, 0x94, 0x19, 0x46, 0xd7, - 0x01, 0x58, 0xa1, 0x22, 0xdb, 0x95, 0x12, 0xa2, 0x6a, 0xb1, 0x5f, 0xd4, 0x93, 0x6b, 0x88, 0x6a, - 0x1c, 0xe2, 0x1d, 0x42, 0x54, 0x61, 0x2b, 0x40, 0x68, 0x1b, 0x26, 0xd9, 0x2f, 0xf6, 0x1c, 0x62, - 0x98, 0xe2, 0x20, 0x0d, 0x87, 0xbd, 0x7f, 0xa0, 0x2a, 0x49, 0x9b, 0x16, 0x34, 0xe3, 0xcf, 0x20, - 0x54, 0x12, 0xdc, 0x9c, 0x59, 0x8b, 0x8f, 0x42, 0x0e, 0x1a, 0xdd, 0x85, 0x51, 0x56, 0xc8, 0xe7, - 0x50, 0x44, 0x59, 0x89, 0x80, 0x79, 0xbd, 0xf5, 0xf7, 0x73, 0x30, 0xcf, 0xf6, 0xb6, 0xc4, 0xa7, - 0xf1, 0xbe, 0xf6, 0x69, 0xdc, 0x94, 0x1d, 0x36, 0x01, 0x6b, 0x5f, 0x47, 0x55, 0xf7, 0x9d, 0x3f, - 0xed, 0x57, 0xa1, 0x22, 0xa9, 0xeb, 0xf6, 0x1f, 0xe4, 0x84, 0x75, 0x27, 0xb9, 0x74, 0x57, 0x61, - 0xea, 0xab, 0x2d, 0x59, 0x0d, 0x0d, 0xbd, 0xcb, 0x56, 0x54, 0x3e, 0x7b, 0xa4, 0x99, 0x8b, 0xea, - 0x13, 0x28, 0xa5, 0xb3, 0x66, 0xd0, 0xb2, 0xb2, 0x1e, 0x19, 0xb0, 0xbf, 0xca, 0x74, 0xf6, 0x13, - 0x74, 0xea, 0xaf, 0xbb, 0x2d, 0x31, 0xa3, 0x77, 0xe2, 0x7e, 0x8e, 0xa9, 0xbe, 0x63, 0x6a, 0x6f, - 0xf3, 0xd1, 0x35, 0x02, 0x5f, 0x9c, 0x54, 0x6d, 0x53, 0xbb, 0xff, 0x2f, 0xf3, 0xfa, 0x5a, 0xfc, - 0x2a, 0x8d, 0xd6, 0x60, 0x7a, 0x13, 0xbf, 0x4a, 0xb4, 0x4b, 0xfd, 0x62, 0xba, 0xf8, 0x55, 0x53, - 0x69, 0x5b, 0x75, 0x18, 0xd7, 0x70, 0xd0, 0x3e, 0xcc, 0x08, 0xa9, 0x71, 0x5a, 0xe1, 0xc9, 0xde, - 0x82, 0x91, 0x16, 0x52, 0x5e, 0x6e, 0xc4, 0x28, 0x9e, 0xff, 0xf7, 0x6c, 0x6d, 0x43, 0x31, 0xc9, - 0x3d, 0xde, 0xda, 0x3b, 0x83, 0xe6, 0x9e, 0x99, 0x41, 0xda, 0xfa, 0x3a, 0x58, 0xa3, 0xa6, 0x29, - 0x09, 0x23, 0x6d, 0x0d, 0x0f, 0xe2, 0x93, 0x41, 0xfd, 0x6b, 0xc4, 0x64, 0xa8, 0xcf, 0x91, 0x85, - 0xdb, 0x6b, 0x8d, 0x5a, 0xf7, 0x54, 0x4a, 0xbc, 0x63, 0x6f, 0xc3, 0x18, 0x2f, 0x92, 0xcf, 0xbc, - 0xe3, 0xab, 0x52, 0x00, 0x58, 0x7f, 0x90, 0x83, 0x2b, 0xd4, 0xd6, 0xe8, 0x76, 0x0f, 0x3a, 0x78, - 0x37, 0xd0, 0x3d, 0x57, 0xbf, 0xad, 0x09, 0x9a, 0x85, 0x94, 0xf7, 0x3b, 0xbf, 0x2e, 0xf1, 0xf2, - 0xf7, 0x72, 0x50, 0x32, 0xf5, 0xed, 0x7c, 0x25, 0xcc, 0x3d, 0x7e, 0x2c, 0xcb, 0x73, 0x2b, 0x0a, - 0x43, 0x97, 0x6d, 0x8a, 0xc1, 0x92, 0x41, 0x92, 0xff, 0x35, 0xd1, 0xf2, 0x7f, 0x72, 0x30, 0xbb, - 0x1e, 0xd0, 0xee, 0xff, 0xb4, 0xef, 0xfa, 0x58, 0xba, 0xff, 0xdf, 0x33, 0x3d, 0x27, 0xa4, 0xf3, - 0x6a, 0x0e, 0x53, 0xf1, 0x8e, 0xf2, 0x72, 0x26, 0x9f, 0xf5, 0x4e, 0x50, 0x8b, 0x4d, 0x72, 0x07, - 0x86, 0x37, 0x89, 0x3a, 0x35, 0xc4, 0xd7, 0x1f, 0xc3, 0x20, 0x45, 0xf4, 0x91, 0x0b, 0xe9, 0x32, - 0xf9, 0x81, 0x1e, 0x25, 0x9e, 0xd2, 0x0c, 0x0f, 0x7e, 0x07, 0x97, 0x0c, 0xaa, 0x52, 0x1d, 0x87, - 0xd1, 0x1d, 0xc7, 0x3f, 0xc0, 0xa1, 0xf5, 0x03, 0x28, 0x71, 0x2f, 0x1f, 0x66, 0xbd, 0xa5, 0xbe, - 0x40, 0x41, 0xe4, 0xc8, 0x95, 0xe5, 0x99, 0x73, 0x1d, 0xa0, 0x1e, 0x3a, 0x7e, 0xb8, 0xde, 0x6d, - 0xe3, 0x2f, 0xe9, 0x68, 0x47, 0x6c, 0xa5, 0xc4, 0x7a, 0x17, 0x26, 0xe4, 0x10, 0xe8, 0x59, 0x4e, - 0xd1, 0x18, 0xe9, 0x70, 0x66, 0xb5, 0xc7, 0x3d, 0xe2, 0x45, 0xcf, 0x32, 0xcc, 0xc5, 0xa6, 0x82, - 0xaf, 0x93, 0x12, 0x99, 0x30, 0x56, 0xc6, 0x5c, 0x17, 0x6d, 0xf9, 0xdb, 0xaa, 0xc1, 0xa5, 0xc4, - 0x4c, 0x23, 0x44, 0x5f, 0x7b, 0xb1, 0x73, 0x3a, 0xd9, 0x50, 0xea, 0xf5, 0x35, 0x52, 0xb6, 0xb3, - 0x51, 0x67, 0xce, 0xd9, 0xa4, 0x6c, 0x67, 0xa3, 0x5e, 0x1d, 0x65, 0x2b, 0xc7, 0xfa, 0xc7, 0x79, - 0x7a, 0x7c, 0x4d, 0xf0, 0x20, 0x66, 0x3b, 0x54, 0xed, 0x97, 0x55, 0x98, 0xa0, 0x23, 0x5e, 0x11, - 0xcf, 0x0f, 0xb2, 0x1d, 0x53, 0xc6, 0x7f, 0x71, 0x5c, 0xbe, 0x40, 0xbd, 0x51, 0x22, 0x34, 0xf4, - 0x29, 0x8c, 0xad, 0x76, 0xdb, 0x94, 0xc2, 0xd0, 0x19, 0x28, 0x08, 0x24, 0x32, 0x0f, 0xb4, 0xcb, - 0x44, 0x15, 0xe2, 0x06, 0x24, 0x5b, 0x29, 0xa1, 0x6c, 0x76, 0x8f, 0x5c, 0xe6, 0x00, 0x36, 0x62, - 0xb3, 0x1f, 0x84, 0x9b, 0xb4, 0x0b, 0xe2, 0xe9, 0xfd, 0x84, 0x2d, 0x7f, 0x23, 0x0b, 0x46, 0xb6, - 0xfc, 0x36, 0x7f, 0x38, 0x3b, 0xb3, 0x34, 0x25, 0x62, 0x17, 0x92, 0x32, 0x9b, 0x55, 0x59, 0xff, - 0x2b, 0x07, 0x0b, 0x8f, 0x71, 0x68, 0x5c, 0x37, 0x1a, 0x57, 0x72, 0x5f, 0x9b, 0x2b, 0xf9, 0xaf, - 0xc2, 0x15, 0x39, 0xea, 0xa1, 0xb4, 0x51, 0x0f, 0xa7, 0x8d, 0x7a, 0x24, 0x7d, 0xd4, 0x8f, 0x61, - 0x94, 0x0d, 0x15, 0xdd, 0x82, 0x91, 0xf5, 0x10, 0x1f, 0x45, 0x66, 0x0d, 0xd5, 0xad, 0xce, 0x66, - 0x75, 0xe4, 0xc4, 0xb5, 0xe1, 0x04, 0xa1, 0x78, 0x0e, 0x30, 0x61, 0x8b, 0x9f, 0xd6, 0x4f, 0xe8, - 0xc3, 0xa5, 0x0d, 0xaf, 0xf5, 0x42, 0xb1, 0x52, 0x8f, 0xb1, 0xaf, 0x32, 0x7e, 0xab, 0x41, 0xa0, - 0x58, 0x8d, 0x2d, 0x20, 0xd0, 0x0d, 0x98, 0x5c, 0xef, 0x3e, 0xf2, 0xfc, 0x16, 0xde, 0xea, 0x76, - 0x18, 0xf5, 0x71, 0x5b, 0x2d, 0xe2, 0xb6, 0x18, 0xde, 0x42, 0x64, 0x8b, 0xa1, 0x05, 0x31, 0x5b, - 0x0c, 0x0b, 0x6f, 0x65, 0xb3, 0x3a, 0x6e, 0xea, 0x21, 0x7f, 0x67, 0x19, 0x62, 0xa4, 0xc5, 0x66, - 0x10, 0xe0, 0x3e, 0x5c, 0xb1, 0x71, 0xaf, 0xe3, 0x10, 0x85, 0xeb, 0xc8, 0x63, 0xf0, 0x72, 0xcc, - 0x37, 0x0c, 0xfe, 0xe3, 0xba, 0x51, 0x59, 0x76, 0x39, 0x9f, 0xd1, 0xe5, 0x23, 0xb8, 0xf9, 0x18, - 0x87, 0xc6, 0x18, 0x55, 0xd1, 0xe0, 0xd7, 0x60, 0x3c, 0xd0, 0xed, 0xf7, 0x83, 0xc2, 0x63, 0xf1, - 0x1b, 0x2e, 0x4e, 0x47, 0xfe, 0x65, 0x7d, 0x06, 0xe5, 0xb4, 0xe6, 0x4e, 0xe7, 0x03, 0xeb, 0xc2, - 0x8d, 0x74, 0x02, 0x72, 0x5b, 0x14, 0xb6, 0x7e, 0x79, 0x74, 0xce, 0xee, 0xad, 0x7e, 0x3d, 0xc0, - 0xff, 0xb0, 0xaa, 0xc2, 0x1b, 0xf0, 0x6b, 0x74, 0xb7, 0x49, 0xaf, 0xd1, 0x75, 0x02, 0x11, 0x5f, - 0x2b, 0x30, 0x2e, 0xca, 0x38, 0x5f, 0x53, 0xc3, 0x7f, 0x51, 0x86, 0xb6, 0x05, 0x01, 0x89, 0x66, - 0xfd, 0x44, 0x5c, 0x29, 0xe9, 0x18, 0xa7, 0x7b, 0x14, 0x73, 0x9a, 0x3b, 0x24, 0xcb, 0x83, 0x2b, - 0x3a, 0x6d, 0xd5, 0xf0, 0x5f, 0x50, 0x0c, 0xff, 0xcc, 0xde, 0x7f, 0x43, 0x37, 0x44, 0xe7, 0xf9, - 0xba, 0x8c, 0x8a, 0xd0, 0x75, 0xd5, 0xbc, 0x3f, 0x95, 0x7c, 0x45, 0xf4, 0x00, 0x4a, 0xa6, 0x06, - 0x15, 0x03, 0x8a, 0xb4, 0x21, 0xf3, 0xc8, 0x11, 0xbf, 0x95, 0x03, 0x4b, 0xf3, 0x8c, 0xd2, 0x22, - 0x39, 0xc9, 0x4f, 0xe6, 0x2d, 0x21, 0xd8, 0xa8, 0x2f, 0x16, 0xf3, 0x8d, 0xef, 0x90, 0x02, 0xf5, - 0xe9, 0x16, 0x93, 0x76, 0x0f, 0x60, 0x6c, 0x13, 0x7f, 0x19, 0x89, 0x1f, 0xa6, 0x8b, 0x52, 0x6f, - 0xa9, 0x17, 0x58, 0x7d, 0x14, 0x2a, 0xc0, 0x88, 0x22, 0x74, 0x2b, 0xb3, 0x0f, 0xbc, 0xff, 0xfb, - 0x50, 0x88, 0xd7, 0xf1, 0xb9, 0x1f, 0x18, 0xd4, 0x8a, 0xbe, 0xae, 0x88, 0xc7, 0xb2, 0x0a, 0xec, - 0x04, 0xbd, 0xb3, 0xf7, 0x1e, 0x7d, 0x08, 0xb0, 0xe3, 0x85, 0x4e, 0xa7, 0x46, 0x6d, 0x5c, 0x54, - 0xf0, 0xb3, 0x8b, 0xa7, 0x90, 0x94, 0x36, 0xe3, 0xaf, 0x57, 0x15, 0x60, 0xeb, 0xbb, 0xf4, 0x8b, - 0x34, 0x77, 0xfa, 0x74, 0x1f, 0x49, 0x0d, 0x6e, 0xc5, 0x3c, 0x11, 0xbe, 0x02, 0x91, 0x10, 0xe6, - 0x08, 0xfb, 0x65, 0x48, 0xac, 0x6f, 0x66, 0xd6, 0xff, 0x43, 0x8e, 0xb9, 0x4f, 0xaa, 0xcd, 0xf2, - 0x89, 0xae, 0x01, 0x44, 0xa5, 0x31, 0xff, 0x7c, 0x35, 0xc2, 0x17, 0x3d, 0xbc, 0x46, 0x11, 0xbe, - 0x02, 0x5b, 0x41, 0xfb, 0x66, 0x67, 0x72, 0x99, 0xba, 0x1f, 0xc8, 0xd6, 0x4f, 0xc7, 0xf7, 0xf7, - 0x84, 0x8d, 0xe6, 0x8c, 0x78, 0x87, 0x30, 0xab, 0x05, 0x41, 0x8e, 0xa2, 0xba, 0x46, 0xc1, 0x9f, - 0x27, 0xaa, 0x9f, 0xfc, 0xea, 0xb8, 0xfc, 0xc1, 0x59, 0x5e, 0x75, 0x09, 0x9a, 0x3b, 0xf2, 0xf1, - 0xa2, 0xb5, 0x00, 0x43, 0x35, 0x7b, 0x83, 0x8a, 0x2a, 0x7b, 0x43, 0x8a, 0x2a, 0x7b, 0xc3, 0xfa, - 0x57, 0x79, 0x28, 0xb3, 0xb7, 0xcb, 0xd4, 0x6b, 0x25, 0x3a, 0x2b, 0x29, 0x6e, 0x30, 0xa7, 0xb5, - 0x10, 0xc4, 0xde, 0x26, 0xe7, 0x4f, 0xf3, 0x36, 0xf9, 0xff, 0xff, 0xea, 0x56, 0x55, 0x16, 0xe0, - 0x2e, 0x32, 0x0c, 0xb0, 0x5a, 0x93, 0x85, 0x20, 0xa5, 0x89, 0xa4, 0x49, 0x63, 0xf8, 0xec, 0x26, - 0x0d, 0xeb, 0x6f, 0xe7, 0xe1, 0x46, 0x3a, 0x07, 0x79, 0x4b, 0x2b, 0x5a, 0x54, 0xda, 0x0c, 0x6f, - 0x1b, 0xfa, 0x25, 0x28, 0x51, 0x69, 0xe3, 0x91, 0x68, 0xc5, 0xfb, 0x9d, 0xd8, 0x2d, 0x95, 0xf6, - 0xac, 0x47, 0xc4, 0xf4, 0x66, 0x45, 0x5a, 0x60, 0x29, 0x5e, 0x86, 0xf6, 0x61, 0x61, 0xdb, 0x77, - 0x5f, 0x3a, 0x21, 0x7e, 0x8a, 0x5f, 0x6f, 0x7b, 0x1d, 0xb7, 0xf5, 0x7a, 0xb5, 0xeb, 0xec, 0x77, - 0x70, 0x9b, 0xdf, 0xb8, 0xdf, 0x3d, 0x39, 0x2e, 0xbf, 0xd1, 0x63, 0x20, 0xe4, 0x33, 0x6b, 0xf6, - 0x28, 0x50, 0x13, 0x33, 0x28, 0x85, 0x68, 0x1a, 0x21, 0xeb, 0xdf, 0xe7, 0xe0, 0x2a, 0x55, 0x8f, - 0xf9, 0x3d, 0x81, 0x68, 0xfc, 0x2b, 0x39, 0x5d, 0xaa, 0x03, 0xe4, 0x2b, 0x8b, 0x3a, 0x5d, 0x6a, - 0xef, 0x9b, 0x6c, 0x0d, 0x0c, 0xad, 0xc3, 0x24, 0xff, 0xad, 0x18, 0x83, 0xe7, 0x14, 0xf1, 0x43, - 0x17, 0x2e, 0xb3, 0x05, 0xd1, 0x65, 0xca, 0x89, 0x35, 0xe9, 0xab, 0x5f, 0x15, 0xd7, 0xfa, 0x65, - 0x1e, 0x16, 0x1b, 0xd8, 0x77, 0x9f, 0xbf, 0x4e, 0x19, 0xcc, 0x16, 0xcc, 0x8a, 0x22, 0x3a, 0x66, - 0xfd, 0x83, 0x61, 0x41, 0x6b, 0x44, 0x57, 0x03, 0x02, 0xd0, 0x94, 0xdf, 0x8f, 0x11, 0xf1, 0x0c, - 0xee, 0x94, 0xef, 0xc0, 0x78, 0x2c, 0x1e, 0x00, 0x9d, 0x7f, 0xf1, 0xbd, 0xe9, 0x31, 0x0e, 0xe5, - 0x87, 0xf7, 0xdb, 0xe9, 0x17, 0x8e, 0xdc, 0x2e, 0x30, 0x28, 0x9a, 0x0a, 0xfd, 0xfc, 0xc8, 0xa7, - 0xe7, 0x28, 0xb5, 0x86, 0xcf, 0x6f, 0xed, 0x82, 0x9d, 0xd6, 0x52, 0x75, 0x12, 0x26, 0x2a, 0xf4, - 0x3a, 0x94, 0x1c, 0xc3, 0xff, 0x77, 0x1e, 0xae, 0x8b, 0x17, 0x39, 0x29, 0x6c, 0xfe, 0x1c, 0x16, - 0x44, 0x51, 0xa5, 0x47, 0xb6, 0x7f, 0xdc, 0xd6, 0x39, 0xcd, 0x02, 0x47, 0x09, 0x4e, 0x3b, 0x1c, - 0x26, 0x62, 0x76, 0x1a, 0xfa, 0xf9, 0x98, 0x37, 0x3f, 0x35, 0x45, 0x67, 0xa0, 0x66, 0x46, 0x55, - 0x02, 0xea, 0x21, 0xdf, 0x55, 0x69, 0xd8, 0x4e, 0x98, 0x47, 0x87, 0xbf, 0xae, 0x79, 0x74, 0xed, - 0x42, 0xdc, 0x40, 0x5a, 0x9d, 0x81, 0xa9, 0x4d, 0xfc, 0x2a, 0xe2, 0xfb, 0xcf, 0x72, 0xb1, 0x07, - 0x84, 0x44, 0x5f, 0x60, 0x2f, 0x09, 0x73, 0xd1, 0x03, 0x7f, 0xfa, 0x80, 0x50, 0xd5, 0x17, 0x18, - 0xe8, 0x3a, 0x8c, 0x31, 0x07, 0xdc, 0xf6, 0x29, 0x4e, 0xda, 0xf2, 0x69, 0x4d, 0x8b, 0xa1, 0xb0, - 0x43, 0x37, 0xc7, 0xb7, 0x9e, 0xc2, 0x4d, 0xee, 0xff, 0xad, 0x4f, 0x3e, 0x6d, 0xe8, 0x8c, 0x9b, - 0x91, 0xe5, 0xc0, 0xf5, 0xc7, 0x38, 0x2e, 0x7a, 0xb4, 0xa7, 0x47, 0x9f, 0xc1, 0x45, 0xad, 0x5c, - 0x52, 0xa4, 0x3a, 0xa6, 0x5c, 0x43, 0x92, 0x74, 0x1c, 0xda, 0xba, 0x61, 0x6a, 0x42, 0xed, 0xac, - 0x85, 0x69, 0x04, 0x28, 0x3f, 0xba, 0x13, 0x0e, 0xce, 0x20, 0xf5, 0xee, 0x2a, 0xdf, 0x35, 0x93, - 0x78, 0x2c, 0x4a, 0x8f, 0xd8, 0x47, 0x65, 0xad, 0x35, 0x0d, 0x93, 0x35, 0xaf, 0x1b, 0xe2, 0x2f, - 0xa9, 0xe2, 0x62, 0xcd, 0xc0, 0x94, 0xa8, 0xea, 0xe0, 0x20, 0xb0, 0xfe, 0x70, 0x08, 0x2c, 0xce, - 0x58, 0x93, 0x2d, 0x54, 0xf0, 0x63, 0x3f, 0xd1, 0x59, 0xbe, 0x51, 0xcd, 0xab, 0x16, 0xdf, 0xa8, - 0x96, 0xad, 0x3c, 0xaa, 0xb5, 0xb5, 0xa2, 0x52, 0x3d, 0xaa, 0x6d, 0x7c, 0xf4, 0x3f, 0x4c, 0x11, - 0x93, 0xec, 0x63, 0xa3, 0x01, 0xa5, 0x53, 0xc4, 0xa4, 0x46, 0xd7, 0x2c, 0x32, 0x6d, 0x8d, 0x0d, - 0x5c, 0x81, 0x40, 0xf2, 0xe5, 0xa4, 0xac, 0xe1, 0xbe, 0x45, 0xac, 0xa0, 0x99, 0x48, 0xa2, 0xa0, - 0x12, 0x41, 0xbb, 0x3a, 0x2f, 0xf9, 0xf7, 0x28, 0x7c, 0x30, 0xd4, 0x2a, 0x46, 0xb5, 0xa7, 0x94, - 0xe8, 0x39, 0x29, 0x34, 0x58, 0xc5, 0xbe, 0xfd, 0x7b, 0xd2, 0x0b, 0x9f, 0x6c, 0xa4, 0x6e, 0x07, - 0xf3, 0x27, 0x27, 0x62, 0x5a, 0xfa, 0xe6, 0xbb, 0xec, 0xdc, 0xa9, 0x64, 0x34, 0x0d, 0xcb, 0x89, - 0x39, 0x7a, 0xda, 0x05, 0x8a, 0x89, 0xbe, 0x75, 0x9c, 0x13, 0x6f, 0x0f, 0x12, 0x17, 0xbc, 0x67, - 0xd5, 0x0b, 0xab, 0xda, 0x9d, 0x6c, 0x3e, 0xe5, 0x4e, 0x56, 0xbb, 0xc1, 0x0a, 0x07, 0x5c, 0xd2, - 0x0e, 0x7d, 0xfd, 0x4b, 0x9d, 0xff, 0x31, 0x02, 0x97, 0xb6, 0x9d, 0x03, 0xb7, 0x4b, 0x64, 0x8f, - 0x88, 0x94, 0x8b, 0x2a, 0x89, 0x04, 0x05, 0xd9, 0x4e, 0xae, 0x86, 0x0c, 0x04, 0x4b, 0x6a, 0xac, - 0xf0, 0x7c, 0xda, 0x7b, 0x50, 0x3d, 0x22, 0xf8, 0x87, 0x9a, 0x0d, 0x3f, 0x91, 0x2c, 0x83, 0x7a, - 0xdd, 0x75, 0xbd, 0x76, 0x2c, 0x69, 0x07, 0xb5, 0x83, 0x27, 0xa3, 0xa8, 0x8f, 0x9c, 0x73, 0x14, - 0xf5, 0x1f, 0xc0, 0xe4, 0xd3, 0xfe, 0xbe, 0x4c, 0x08, 0x31, 0x3a, 0x30, 0x4a, 0x37, 0x9d, 0x83, - 0x17, 0xfd, 0x7d, 0x73, 0x4a, 0x08, 0x95, 0x98, 0x31, 0xe2, 0xf8, 0xd8, 0xaf, 0x25, 0xe2, 0x78, - 0x6a, 0xb0, 0xfb, 0xf1, 0x6f, 0x24, 0xd8, 0xbd, 0x21, 0x6a, 0xf8, 0xc4, 0xb9, 0x47, 0x0d, 0xaf, - 0x02, 0x8c, 0xfb, 0x51, 0xd0, 0xe7, 0xe1, 0xc2, 0x88, 0xf5, 0x6f, 0xc6, 0x60, 0x96, 0x9c, 0xce, - 0xc5, 0x0a, 0x0f, 0xa2, 0xed, 0x6f, 0x4a, 0x94, 0x29, 0x87, 0x4d, 0xae, 0xa9, 0xb2, 0xf2, 0x66, - 0x2c, 0xc1, 0x90, 0x86, 0x80, 0xde, 0x55, 0xef, 0x36, 0xf2, 0x4a, 0xd8, 0xc9, 0x64, 0x6e, 0x18, - 0xf5, 0xd2, 0xe3, 0x2d, 0xcd, 0xb4, 0x9e, 0x69, 0x8b, 0x58, 0x8e, 0xdb, 0xdb, 0x79, 0xbc, 0x2a, - 0xba, 0x31, 0xe8, 0x67, 0xff, 0xc8, 0x10, 0xbf, 0x0b, 0xa3, 0x34, 0xb8, 0x8c, 0x78, 0xa0, 0xfb, - 0x26, 0x17, 0x12, 0x26, 0x26, 0xb0, 0x30, 0x34, 0x81, 0x12, 0x28, 0xba, 0x43, 0x0b, 0xd4, 0x18, - 0x32, 0x0c, 0x04, 0xed, 0xc0, 0xe5, 0x6d, 0x1f, 0xb7, 0xb9, 0xcf, 0x69, 0xcf, 0xe7, 0x47, 0x39, - 0xf6, 0x52, 0x8e, 0x86, 0x60, 0xec, 0x89, 0xea, 0x26, 0x96, 0xf5, 0xaa, 0x94, 0x35, 0xa0, 0xa3, - 0x55, 0x98, 0xa9, 0x63, 0xc7, 0x6f, 0x1d, 0x3e, 0xc5, 0xaf, 0xc9, 0xe6, 0x10, 0x14, 0xc7, 0xa2, - 0xb8, 0xa5, 0x01, 0xad, 0x21, 0x03, 0xa5, 0x55, 0xea, 0x95, 0xb7, 0x8e, 0x84, 0xbe, 0x0b, 0xa3, - 0x75, 0xcf, 0x0f, 0xab, 0xaf, 0x63, 0xc9, 0x82, 0x58, 0x61, 0xf5, 0x8a, 0x88, 0xdd, 0x1a, 0x78, - 0x7e, 0xd8, 0xdc, 0x57, 0xf9, 0xc6, 0xf1, 0xd0, 0x23, 0xa2, 0x79, 0x12, 0x6d, 0x58, 0x9a, 0x4d, - 0x58, 0x40, 0x0a, 0xae, 0x5d, 0x52, 0x15, 0xda, 0x64, 0x3b, 0x89, 0x61, 0xa1, 0xd7, 0x30, 0xab, - 0xaf, 0x7f, 0x1e, 0xa9, 0x1b, 0xb4, 0xb4, 0x1b, 0x26, 0x90, 0xea, 0x5d, 0xde, 0xcb, 0x1b, 0xf1, - 0xaf, 0x2c, 0x11, 0xbc, 0xdb, 0xd8, 0x04, 0x7a, 0x46, 0x43, 0xe7, 0x32, 0xce, 0x54, 0x02, 0x11, - 0x10, 0x99, 0x0c, 0x82, 0xc6, 0xa2, 0xeb, 0xd3, 0x6f, 0x88, 0x72, 0xd4, 0x09, 0xe2, 0x71, 0x91, - 0xed, 0x04, 0x2a, 0xda, 0x86, 0x4b, 0xbb, 0x01, 0xde, 0xf6, 0xf1, 0x4b, 0x17, 0xbf, 0x12, 0xf4, - 0xa6, 0x28, 0x3d, 0x3a, 0xdd, 0x84, 0x5e, 0x8f, 0xd5, 0x9a, 0x08, 0x26, 0x91, 0x4b, 0x1f, 0xc2, - 0xa4, 0xb2, 0xde, 0xce, 0x14, 0x39, 0xfc, 0x4f, 0x73, 0xcc, 0xb4, 0xa7, 0x2c, 0x60, 0x6e, 0x59, - 0xd8, 0x82, 0x09, 0x59, 0x28, 0x1f, 0x16, 0x08, 0xed, 0x24, 0xb6, 0xbb, 0xb1, 0xcf, 0x47, 0x7c, - 0xdd, 0x6a, 0x6f, 0x23, 0x1a, 0xdf, 0xac, 0xb9, 0xed, 0xb7, 0xa3, 0x27, 0x88, 0xfc, 0xb9, 0xa4, - 0xef, 0xb4, 0x5e, 0x44, 0xf6, 0xce, 0x1f, 0x93, 0xef, 0x43, 0xad, 0xe0, 0x39, 0x8e, 0x16, 0xf4, - 0x04, 0x35, 0xbc, 0x52, 0x84, 0xc9, 0x97, 0x2f, 0x31, 0x59, 0xb1, 0xfe, 0xe1, 0xa8, 0x08, 0xd4, - 0xf9, 0xf6, 0xa2, 0x65, 0xb3, 0x17, 0x74, 0xc6, 0x1e, 0xbc, 0x97, 0x7c, 0x03, 0x46, 0xf3, 0x11, - 0x44, 0x6f, 0xc0, 0x54, 0x36, 0x46, 0xaf, 0xc1, 0x76, 0xe1, 0xaa, 0x8d, 0x8f, 0xbc, 0x97, 0xf8, - 0x7c, 0xc9, 0xfe, 0x10, 0xae, 0xe8, 0x04, 0x77, 0x7b, 0x6d, 0x1a, 0x3a, 0x83, 0xdd, 0x7a, 0x1a, - 0x43, 0xd9, 0x71, 0x04, 0x16, 0xca, 0x8e, 0x05, 0x37, 0x22, 0x7f, 0xaa, 0xf2, 0x96, 0xd6, 0x59, - 0x1e, 0x2c, 0xea, 0xc4, 0x2b, 0xed, 0xf6, 0xb6, 0xe3, 0x87, 0x6e, 0xcb, 0xed, 0x39, 0xdd, 0x10, - 0x6d, 0xc1, 0xa4, 0xf2, 0x33, 0xa6, 0xdb, 0x28, 0x35, 0x6c, 0xf6, 0x7b, 0x51, 0x81, 0xaa, 0x83, - 0x29, 0x70, 0x16, 0x86, 0x72, 0x9c, 0x3d, 0x84, 0x65, 0x6a, 0x9b, 0x55, 0x98, 0x56, 0x7e, 0xca, - 0xa3, 0x02, 0x0d, 0x53, 0xa9, 0xb4, 0xa0, 0x33, 0x4c, 0x47, 0xb1, 0x5a, 0x50, 0x32, 0x31, 0x8d, - 0x86, 0x74, 0x78, 0x8d, 0x56, 0xa3, 0xe0, 0x10, 0x83, 0x6f, 0x9b, 0x2f, 0xa6, 0x05, 0x86, 0xb0, - 0xfe, 0xe6, 0x30, 0x5c, 0xe5, 0x93, 0x71, 0x9e, 0x33, 0x8e, 0x7e, 0x02, 0x93, 0xca, 0x1c, 0x73, - 0xa6, 0xdf, 0x10, 0x0e, 0x2a, 0x69, 0x6b, 0x81, 0xe9, 0x60, 0x7d, 0x5a, 0xd0, 0x8c, 0x4d, 0x37, - 0xd1, 0xc1, 0xd4, 0x65, 0xd3, 0x81, 0x19, 0x7d, 0xa2, 0xb9, 0x1a, 0x7a, 0xcb, 0xd8, 0x88, 0x0e, - 0x2a, 0xe2, 0x22, 0xb5, 0x9b, 0xc6, 0xe9, 0xa6, 0x69, 0x99, 0xf4, 0x45, 0xf4, 0x25, 0x5c, 0x4a, - 0xcc, 0x32, 0x3f, 0x56, 0xdd, 0x31, 0x36, 0x98, 0x80, 0x66, 0xb1, 0xb8, 0x7d, 0x5a, 0x9c, 0xda, - 0x6c, 0xb2, 0x11, 0xd4, 0x86, 0x29, 0x75, 0xe2, 0xb9, 0x9e, 0x7c, 0x33, 0x83, 0x95, 0x0c, 0x90, - 0x29, 0x45, 0x9c, 0x97, 0x74, 0xee, 0xf5, 0x4c, 0x86, 0x1a, 0xd5, 0xea, 0x38, 0x8c, 0xb2, 0xdf, - 0x44, 0x04, 0x6c, 0xfb, 0x38, 0xc0, 0xdd, 0x16, 0x56, 0x7d, 0x8d, 0xbe, 0xae, 0x08, 0xf8, 0x77, - 0x39, 0x28, 0x9a, 0xe8, 0xd6, 0x71, 0xb7, 0x8d, 0xb6, 0xa1, 0x10, 0x6f, 0x88, 0xaf, 0x6a, 0x4b, - 0xec, 0x0a, 0xe9, 0x5d, 0x22, 0x7a, 0x73, 0xa2, 0x9b, 0x9b, 0x70, 0x49, 0x29, 0x3b, 0xa3, 0x53, - 0x57, 0x12, 0x55, 0x3d, 0xfa, 0xae, 0x51, 0xdf, 0xb5, 0x15, 0xef, 0xc8, 0x71, 0xbb, 0x44, 0x41, - 0x54, 0xc2, 0x38, 0x40, 0x54, 0xca, 0x79, 0xc3, 0x8e, 0x87, 0xb4, 0x54, 0x38, 0x38, 0x4a, 0x10, - 0xeb, 0x13, 0x2a, 0xc1, 0xf9, 0xa1, 0x82, 0x3d, 0x92, 0x91, 0xc4, 0x6e, 0xc0, 0xc8, 0xce, 0x46, - 0xbd, 0x56, 0xe1, 0x4f, 0x6e, 0xd8, 0xd3, 0xce, 0x4e, 0xd0, 0x6c, 0x39, 0x36, 0xab, 0xb0, 0x3e, - 0xa6, 0xd1, 0xeb, 0x78, 0xec, 0x33, 0x89, 0x77, 0x1b, 0xc6, 0x78, 0x11, 0xc7, 0xa4, 0x57, 0xc3, - 0x1d, 0x0e, 0x25, 0xea, 0xac, 0x6d, 0xa1, 0x5f, 0x77, 0xb0, 0x13, 0x28, 0x1b, 0xf3, 0x07, 0x44, - 0x15, 0x67, 0x65, 0x7c, 0x5f, 0x9e, 0x91, 0xa1, 0x45, 0x69, 0x31, 0x3b, 0x2e, 0x0b, 0x18, 0x5b, - 0xfe, 0x65, 0xfd, 0x49, 0x1e, 0x66, 0x45, 0x00, 0x17, 0xcd, 0x14, 0x30, 0x30, 0x84, 0xe4, 0xf7, - 0xf5, 0x18, 0x39, 0x35, 0x19, 0x23, 0xe7, 0x6b, 0xe4, 0x7d, 0xe0, 0xd1, 0x75, 0x4e, 0xf9, 0x20, - 0xed, 0xa9, 0xd4, 0xbe, 0x87, 0x35, 0xed, 0xdb, 0x34, 0x1e, 0x4d, 0xfb, 0xa6, 0xd3, 0xc2, 0xb4, - 0x6f, 0xa1, 0x73, 0x7f, 0x1d, 0x85, 0xe9, 0x03, 0xb2, 0xb4, 0xb4, 0x26, 0x4f, 0xfb, 0x56, 0x69, - 0x83, 0x3e, 0x82, 0xdf, 0x5a, 0x5f, 0xa9, 0x91, 0x35, 0xcd, 0xbb, 0x2a, 0x66, 0xe0, 0x3e, 0xf5, - 0x5a, 0xe3, 0x34, 0xd5, 0x85, 0x49, 0x45, 0x2c, 0x0f, 0xfd, 0xa0, 0x80, 0x58, 0xcb, 0xf2, 0x49, - 0xbd, 0x81, 0x5a, 0x5a, 0x3c, 0xd4, 0x4d, 0x1a, 0x2c, 0xe0, 0x31, 0x9d, 0xaf, 0xf3, 0xe8, 0xc4, - 0x1f, 0xe4, 0x58, 0xf4, 0x81, 0xfa, 0x96, 0x12, 0xa0, 0xbd, 0xfb, 0xdc, 0x53, 0x2c, 0xa1, 0x4a, - 0x33, 0x4a, 0x2e, 0x1f, 0x6a, 0x09, 0xa5, 0x39, 0xf7, 0xf8, 0x93, 0x3f, 0x9a, 0x15, 0xc7, 0x8e, - 0x43, 0xa3, 0x0f, 0x61, 0x5a, 0x29, 0x92, 0x9b, 0x34, 0x8b, 0xbc, 0xa7, 0xa2, 0xbb, 0x6d, 0x5b, - 0x87, 0xb4, 0x7e, 0x96, 0x87, 0xab, 0x19, 0xd9, 0x3f, 0xe8, 0x19, 0x90, 0x1e, 0xe0, 0x25, 0xa7, - 0x78, 0xcc, 0x62, 0xfa, 0xbc, 0x51, 0x93, 0x91, 0x12, 0x10, 0x7d, 0x02, 0x93, 0x6a, 0x32, 0x92, - 0xbc, 0x12, 0x18, 0xdb, 0x9c, 0x80, 0x44, 0x05, 0x47, 0x01, 0x40, 0xd4, 0x13, 0xfe, 0x6e, 0xb8, - 0x4e, 0x5f, 0xa0, 0x46, 0x99, 0x4c, 0xce, 0x25, 0xa5, 0x8a, 0xd2, 0x8c, 0xf5, 0xbb, 0x79, 0xb8, - 0x9e, 0xc1, 0x87, 0x3a, 0x0e, 0xff, 0x5f, 0xb0, 0x22, 0x96, 0x5f, 0x66, 0xe8, 0x1b, 0xca, 0x2f, - 0x63, 0xfd, 0x5e, 0x1e, 0xe6, 0x77, 0x7b, 0x01, 0x75, 0x2e, 0x5d, 0xef, 0xbe, 0xc4, 0xdd, 0xd0, - 0xf3, 0x5f, 0x53, 0xe7, 0x38, 0xf4, 0x2e, 0x8c, 0xac, 0xe1, 0x4e, 0xc7, 0xe3, 0xdb, 0xda, 0x35, - 0x61, 0x9c, 0x8e, 0x43, 0x53, 0xa0, 0xb5, 0x0b, 0x36, 0x83, 0x46, 0x1f, 0xc2, 0xc4, 0x1a, 0x76, - 0xfc, 0x70, 0x1f, 0x3b, 0x42, 0x73, 0xbd, 0xc2, 0x51, 0x15, 0x14, 0x0e, 0xb0, 0x76, 0xc1, 0x8e, - 0xa0, 0xd1, 0x12, 0x0c, 0x6f, 0x7b, 0xdd, 0x03, 0xf9, 0xfa, 0x2c, 0xa5, 0x41, 0x02, 0xb3, 0x76, - 0xc1, 0xa6, 0xb0, 0xe8, 0x19, 0x4c, 0x57, 0x0e, 0x70, 0x37, 0x7c, 0x86, 0x43, 0xa7, 0xed, 0x84, - 0x0e, 0xd7, 0x70, 0x6e, 0xa7, 0x21, 0x6b, 0xc0, 0x34, 0xcf, 0xab, 0x5a, 0x50, 0x1d, 0x81, 0xa1, - 0x67, 0xc1, 0x81, 0xf5, 0xf3, 0x1c, 0x14, 0x57, 0xbc, 0x57, 0x5d, 0x23, 0x63, 0xde, 0xd7, 0x19, - 0x23, 0x5c, 0xa0, 0x0d, 0xf0, 0x31, 0xd6, 0xbc, 0x03, 0xc3, 0xdb, 0x6e, 0xf7, 0x20, 0xb6, 0xa9, - 0x1b, 0xf0, 0x08, 0x14, 0x1d, 0xa1, 0xdb, 0x3d, 0x10, 0x5d, 0x7a, 0x0b, 0x16, 0x52, 0x20, 0xd1, - 0x8c, 0x14, 0x6f, 0xc3, 0x54, 0xac, 0xbd, 0x09, 0x73, 0x46, 0xa6, 0x25, 0x00, 0xff, 0x75, 0xce, - 0x30, 0xfb, 0xac, 0xaf, 0x45, 0x18, 0x13, 0x81, 0x5f, 0xd9, 0x3e, 0x20, 0x7e, 0x52, 0xe7, 0x4c, - 0xf1, 0x75, 0xf0, 0x50, 0x7f, 0xf2, 0x23, 0x68, 0x28, 0x8f, 0xef, 0xd9, 0x1a, 0xfe, 0xe8, 0x6b, - 0xac, 0x54, 0x49, 0x8b, 0xb4, 0xb9, 0xe6, 0x05, 0x61, 0x57, 0xfa, 0x0e, 0xd8, 0xf2, 0xb7, 0xf5, - 0x9f, 0xf3, 0x34, 0x6c, 0x60, 0xc6, 0x34, 0x93, 0x71, 0x6f, 0xd5, 0xf9, 0x38, 0xf2, 0x5b, 0x75, - 0xb4, 0x08, 0x13, 0x5b, 0x75, 0x2d, 0xae, 0xad, 0x1d, 0x15, 0xa0, 0xb7, 0x59, 0xf2, 0xb0, 0x8a, - 0xdf, 0x3a, 0x74, 0x43, 0xdc, 0x0a, 0xfb, 0x3e, 0x17, 0x4e, 0x76, 0xa2, 0x1c, 0x59, 0x30, 0xf5, - 0xb8, 0xe3, 0xee, 0xb7, 0x04, 0x31, 0xd6, 0x39, 0xad, 0x0c, 0xdd, 0x81, 0x19, 0x9e, 0xd4, 0x90, - 0x85, 0xfd, 0xe5, 0xd9, 0xb7, 0xec, 0x58, 0x29, 0x69, 0xb7, 0xe6, 0x75, 0x43, 0xc7, 0xed, 0x62, - 0xdf, 0xee, 0x77, 0x43, 0x97, 0xa7, 0xb8, 0x9e, 0xb0, 0x13, 0xe5, 0xe8, 0x1d, 0x98, 0x93, 0x65, - 0x5b, 0x7e, 0xeb, 0x10, 0x07, 0xa1, 0x4f, 0x43, 0xa4, 0xd3, 0xc7, 0xd8, 0xb6, 0xb9, 0x92, 0xb6, - 0xd0, 0xf1, 0xfa, 0xed, 0xd5, 0xee, 0x4b, 0xd7, 0xf7, 0x58, 0x3a, 0xbc, 0x71, 0xde, 0x42, 0xac, - 0xdc, 0xda, 0x36, 0x7e, 0x01, 0x5f, 0x63, 0x71, 0x58, 0x35, 0x40, 0x49, 0x09, 0x80, 0xbe, 0x0d, - 0x13, 0xf5, 0xfa, 0x9a, 0x76, 0x07, 0x10, 0x37, 0xcb, 0xdb, 0x11, 0x84, 0xf5, 0x1e, 0xcc, 0x4b, - 0x22, 0x2c, 0xe6, 0xa5, 0xe2, 0x02, 0xce, 0x13, 0xa4, 0x48, 0xcf, 0xf3, 0xa8, 0xc0, 0xfa, 0x61, - 0x02, 0xaf, 0xde, 0x3f, 0x3a, 0x72, 0xfc, 0xd7, 0xa8, 0xa2, 0xe3, 0x0d, 0x0d, 0x94, 0x75, 0xd5, - 0xe1, 0x5f, 0x1c, 0x97, 0x2f, 0xa8, 0xc4, 0x6d, 0x98, 0xd5, 0xbe, 0x48, 0xd1, 0xa5, 0x52, 0x7c, - 0x23, 0x51, 0x3e, 0x95, 0xeb, 0x00, 0x3c, 0x28, 0xee, 0x86, 0x77, 0xc0, 0x3d, 0x83, 0x95, 0x12, - 0xeb, 0x11, 0xcc, 0xc5, 0x68, 0x72, 0xc5, 0xea, 0xdb, 0x20, 0x55, 0x41, 0x4a, 0x74, 0xa8, 0x7a, - 0xe9, 0x57, 0xc7, 0xe5, 0x69, 0xb2, 0x2c, 0xee, 0x45, 0xa1, 0xad, 0xc4, 0x5f, 0xd6, 0x33, 0x55, - 0x63, 0xaf, 0x74, 0xb4, 0x37, 0x1d, 0x0f, 0x61, 0x94, 0x95, 0xc4, 0x02, 0xc8, 0xa8, 0xd0, 0x7c, - 0xb4, 0x1c, 0xd0, 0x9a, 0xa3, 0x7e, 0x5b, 0xf4, 0x47, 0x25, 0xf2, 0x10, 0xb6, 0x76, 0x59, 0x34, - 0xc3, 0xa8, 0x58, 0x06, 0xa9, 0x19, 0xae, 0x44, 0x9e, 0xcc, 0xc2, 0x2c, 0x29, 0xe0, 0xba, 0xde, - 0xab, 0x0e, 0x6e, 0x1f, 0x60, 0x9a, 0x47, 0x71, 0x8a, 0x9b, 0x25, 0x87, 0x1d, 0x42, 0x80, 0xa2, - 0x59, 0x9f, 0xc1, 0x5c, 0xad, 0x83, 0x1d, 0x3f, 0xde, 0x1e, 0xba, 0x03, 0x63, 0xb4, 0x4c, 0xbf, - 0x12, 0x73, 0x48, 0x11, 0xbd, 0x12, 0xe3, 0x95, 0x44, 0xc9, 0x64, 0x71, 0x3d, 0xd4, 0x21, 0x45, - 0xfa, 0xdd, 0x08, 0xfd, 0x1d, 0xf3, 0x13, 0x32, 0x8c, 0x9e, 0xc1, 0x59, 0x9f, 0xd2, 0x8b, 0x68, - 0x53, 0x1a, 0x9e, 0xd3, 0xf9, 0xa1, 0xfd, 0x25, 0x58, 0xac, 0xf4, 0x7a, 0xb8, 0xdb, 0x8e, 0x10, - 0xc9, 0x31, 0xf8, 0x74, 0xfe, 0xbd, 0xa8, 0x02, 0x23, 0x14, 0x5a, 0x9a, 0x26, 0x78, 0x77, 0x0d, - 0xdd, 0xa1, 0x70, 0x5c, 0xe7, 0xa6, 0x0d, 0x30, 0x4c, 0xab, 0x0d, 0x0b, 0xf5, 0xfe, 0xfe, 0x91, - 0xcb, 0x32, 0xee, 0x50, 0x1f, 0x79, 0xd1, 0xf6, 0xba, 0x08, 0x40, 0xcb, 0x98, 0x71, 0xf7, 0x9e, - 0x90, 0xcd, 0xf7, 0xe8, 0xed, 0x1e, 0xf7, 0x9b, 0x7f, 0xf9, 0xf0, 0x5e, 0x84, 0x4a, 0xb7, 0x43, - 0xd6, 0x0a, 0xad, 0xe6, 0x41, 0x6a, 0xad, 0xcb, 0x70, 0x49, 0x3d, 0xe6, 0xb1, 0x15, 0x32, 0x07, - 0x97, 0xf5, 0xe3, 0x1b, 0x2b, 0xfe, 0x02, 0x66, 0x99, 0x5d, 0x92, 0x45, 0x04, 0x5a, 0x8a, 0x82, - 0xdf, 0xe4, 0x1b, 0x4b, 0xb1, 0x3b, 0x41, 0xea, 0xa4, 0x29, 0x63, 0xbd, 0x35, 0x96, 0x98, 0x33, - 0xd1, 0xcb, 0x25, 0xcd, 0x48, 0x90, 0x6f, 0x2c, 0x55, 0xc7, 0xf8, 0xd9, 0x83, 0x50, 0x67, 0xd3, - 0xff, 0x6b, 0xa1, 0xbe, 0x44, 0xbd, 0x51, 0xd7, 0xb0, 0x43, 0xef, 0x9a, 0xcd, 0x3e, 0x7d, 0x33, - 0x90, 0x77, 0xdb, 0x62, 0xeb, 0x71, 0xdb, 0xd6, 0x1f, 0xe7, 0xe0, 0x2e, 0x33, 0x5b, 0x98, 0xf1, - 0xe8, 0x69, 0x22, 0x05, 0x19, 0x7d, 0x00, 0x2c, 0x39, 0x06, 0xb7, 0x3b, 0x5a, 0xbc, 0xe7, 0x59, - 0x94, 0x18, 0x02, 0xaa, 0xc0, 0x94, 0x7a, 0x29, 0x1d, 0x7b, 0x33, 0x9c, 0x62, 0x57, 0xb0, 0x27, - 0x8f, 0x9e, 0x3b, 0xe2, 0xc7, 0xdb, 0x6f, 0xc3, 0xc4, 0x56, 0x0f, 0x33, 0xa9, 0x82, 0xc6, 0x61, - 0x78, 0x7d, 0x73, 0x7d, 0x87, 0x25, 0x6b, 0xda, 0xde, 0xdd, 0x29, 0xe4, 0x10, 0xc0, 0xe8, 0xca, - 0xea, 0xc6, 0xea, 0xce, 0x6a, 0x21, 0xff, 0x76, 0x53, 0xbd, 0x89, 0x46, 0x57, 0x61, 0x61, 0x65, - 0xb5, 0xb1, 0x5e, 0x5b, 0x6d, 0xee, 0x7c, 0x7f, 0x7b, 0xb5, 0xa9, 0x87, 0xfe, 0x98, 0x85, 0x82, - 0x5a, 0xb9, 0xb3, 0xb5, 0xb3, 0x5d, 0xc8, 0xa1, 0x22, 0xcc, 0xaa, 0xa5, 0x7b, 0xab, 0xd5, 0xca, - 0xee, 0xce, 0xda, 0x66, 0x61, 0xc8, 0x1a, 0x1e, 0xcf, 0x17, 0xf2, 0x6f, 0xff, 0x44, 0xbb, 0xa6, - 0x46, 0x8b, 0x50, 0xe4, 0xe0, 0xbb, 0xf5, 0xca, 0xe3, 0xf4, 0x26, 0x58, 0xed, 0xb3, 0x47, 0x95, - 0x42, 0x0e, 0x5d, 0x83, 0x2b, 0x5a, 0xe9, 0x76, 0xa5, 0x5e, 0xdf, 0xdb, 0xb2, 0x57, 0x36, 0x56, - 0xeb, 0xf5, 0x42, 0xfe, 0xed, 0x3b, 0xfc, 0x9d, 0x09, 0x9a, 0x01, 0x58, 0x59, 0xad, 0xd7, 0x56, - 0x37, 0x57, 0xd6, 0x37, 0x1f, 0x17, 0x2e, 0xa0, 0x69, 0x98, 0xa8, 0xc8, 0x9f, 0xb9, 0xa5, 0x9f, - 0xfd, 0x6e, 0x0e, 0x26, 0x09, 0xf7, 0xc4, 0x05, 0xe4, 0x17, 0xca, 0x4e, 0xc3, 0xe5, 0x39, 0x0f, - 0xa1, 0x9c, 0xba, 0xad, 0xd0, 0x0f, 0xa9, 0x94, 0xa1, 0x48, 0x52, 0x80, 0xbb, 0xb9, 0x07, 0x39, - 0x64, 0x53, 0x13, 0x4a, 0x6c, 0x2b, 0x93, 0x94, 0xcd, 0x5b, 0x63, 0x29, 0xa5, 0x5a, 0xec, 0x80, - 0x4f, 0x60, 0x9a, 0xec, 0x30, 0xb2, 0x16, 0x5d, 0x8d, 0xc3, 0x2b, 0x9b, 0x5a, 0x69, 0xd1, 0x5c, - 0x29, 0x63, 0x9d, 0x4d, 0xd1, 0xfe, 0x05, 0xa1, 0xd3, 0x25, 0x9a, 0xdb, 0x9c, 0x9a, 0xfe, 0xb9, - 0xdb, 0xc2, 0xec, 0x0e, 0xa9, 0x74, 0x29, 0x56, 0xdc, 0x78, 0xf8, 0x20, 0x87, 0xea, 0xf4, 0x2d, - 0x8c, 0xb6, 0x55, 0x21, 0x71, 0x5d, 0x9c, 0xdc, 0xc3, 0x58, 0x6f, 0xca, 0xd2, 0xee, 0x91, 0xb2, - 0xc7, 0x6d, 0x02, 0x4a, 0xee, 0x00, 0xe8, 0x46, 0x34, 0x15, 0xe6, 0xcd, 0xa1, 0x34, 0x9f, 0x30, - 0x4e, 0xaf, 0x12, 0x19, 0x80, 0x56, 0x61, 0x86, 0xfb, 0xf8, 0xf0, 0x3d, 0x09, 0x65, 0xed, 0x6a, - 0xa9, 0x64, 0x1e, 0x53, 0x3e, 0xc9, 0x7d, 0x0d, 0x95, 0xa2, 0x71, 0xc4, 0x37, 0xbb, 0xd2, 0x55, - 0x63, 0x1d, 0x1f, 0xdf, 0x23, 0x98, 0xd1, 0xb7, 0x48, 0x24, 0x26, 0xc8, 0xb8, 0x73, 0xa6, 0x76, - 0xa8, 0x09, 0x0b, 0xcf, 0x1c, 0x97, 0x6a, 0x8d, 0xdc, 0x04, 0x2a, 0x0c, 0x98, 0xa8, 0x9c, 0x61, - 0xd1, 0xac, 0xe3, 0x6e, 0xbb, 0x34, 0xe8, 0x15, 0x28, 0x5d, 0xb9, 0x75, 0x21, 0xe9, 0x75, 0x03, - 0x30, 0xb2, 0xf4, 0x50, 0xef, 0x26, 0x9b, 0x7e, 0x29, 0xed, 0x1a, 0x0a, 0x3d, 0xa3, 0x5b, 0x4d, - 0x8c, 0xa2, 0xb2, 0x26, 0xce, 0x4c, 0xae, 0x48, 0x3d, 0xcd, 0x42, 0x37, 0x7e, 0x9f, 0x14, 0xa0, - 0x14, 0xc6, 0xa5, 0x12, 0x7b, 0x90, 0x43, 0x5f, 0x80, 0x95, 0x46, 0x6e, 0xcf, 0x0d, 0x0f, 0xf9, - 0x7d, 0xea, 0x55, 0x23, 0x01, 0xfe, 0xa1, 0x64, 0x50, 0xb7, 0x61, 0xd6, 0x74, 0xf3, 0x25, 0x19, - 0x9a, 0x71, 0x2d, 0x96, 0xba, 0x0a, 0x6c, 0xb2, 0x61, 0xb6, 0xd3, 0x27, 0x29, 0xe3, 0xe2, 0x25, - 0x95, 0xe6, 0x27, 0x30, 0x43, 0x56, 0xc9, 0x53, 0x8c, 0x7b, 0x95, 0x8e, 0xfb, 0x12, 0x07, 0x48, - 0xbc, 0x90, 0x96, 0x45, 0x69, 0xb8, 0x77, 0x73, 0xe8, 0x37, 0x60, 0x92, 0xe6, 0x9b, 0xe6, 0x0f, - 0xfa, 0xa6, 0xd4, 0x1c, 0xd4, 0x25, 0xf1, 0x8b, 0x56, 0x3e, 0xc8, 0xa1, 0xef, 0xc0, 0xd8, 0x63, - 0x1c, 0x52, 0x77, 0x9d, 0x9b, 0xd2, 0x08, 0xcc, 0x2e, 0x5c, 0xd7, 0xbb, 0xd2, 0x35, 0x42, 0x74, - 0x38, 0x7e, 0xce, 0x40, 0xf7, 0x01, 0x98, 0x40, 0xa0, 0x14, 0xe2, 0xd5, 0xa5, 0x44, 0xb7, 0xd1, - 0x63, 0xb2, 0xcf, 0x75, 0x70, 0x88, 0x4f, 0xdb, 0x64, 0x1a, 0x8f, 0x36, 0x60, 0x46, 0x86, 0x87, - 0xdb, 0xa4, 0xfe, 0x9e, 0x56, 0x8c, 0x58, 0x70, 0x06, 0x6a, 0x1f, 0x91, 0xaf, 0x82, 0x19, 0x65, - 0xe5, 0xeb, 0x71, 0x94, 0xf6, 0x9e, 0x5c, 0x32, 0x91, 0x81, 0x29, 0xb8, 0x32, 0x85, 0xb6, 0xc4, - 0x8d, 0x27, 0xd5, 0x8e, 0xe1, 0x62, 0x28, 0xa9, 0xed, 0xea, 0x2f, 0xc9, 0x23, 0x99, 0x9b, 0xf6, - 0x00, 0xbe, 0x74, 0x33, 0x03, 0x82, 0x89, 0x3b, 0x2a, 0x49, 0x56, 0xc8, 0x19, 0x84, 0x35, 0xa3, - 0x66, 0xfc, 0x15, 0x66, 0xa6, 0x64, 0x06, 0xe3, 0x12, 0x4a, 0x56, 0x91, 0x5d, 0x4f, 0x7b, 0xc1, - 0x1c, 0xed, 0x7a, 0x86, 0x27, 0xe6, 0xd1, 0xae, 0x67, 0x7c, 0xf4, 0xfc, 0x94, 0x9d, 0x8a, 0xb4, - 0xbc, 0x9f, 0x8d, 0x25, 0x24, 0x7c, 0xb7, 0xb4, 0x0a, 0xfe, 0x61, 0xcf, 0x9b, 0xea, 0x1a, 0xcb, - 0x0f, 0x72, 0x68, 0x15, 0x2e, 0x4b, 0xf7, 0xdc, 0xa8, 0x0a, 0xa5, 0x20, 0xa4, 0x2e, 0x82, 0xcf, - 0xe0, 0x32, 0x5f, 0x52, 0x1a, 0x99, 0x82, 0x94, 0x0e, 0xdc, 0x32, 0x9c, 0x4a, 0xe0, 0x09, 0xcc, - 0xd5, 0x63, 0x83, 0x62, 0xf7, 0x98, 0x57, 0x74, 0x12, 0x4a, 0xf2, 0xb7, 0x54, 0x5a, 0x4f, 0x01, - 0xb1, 0x83, 0x87, 0x20, 0xf7, 0xd2, 0xc5, 0xaf, 0xd0, 0xb5, 0xd8, 0x90, 0x48, 0x21, 0x05, 0xa3, - 0xe2, 0x25, 0x8d, 0x45, 0x68, 0x87, 0x05, 0xbd, 0x67, 0x89, 0x65, 0x9c, 0x9e, 0xb3, 0xef, 0x76, - 0xdc, 0xd0, 0xc5, 0x64, 0x85, 0xa9, 0x08, 0x6a, 0x95, 0x98, 0xc6, 0x2b, 0xa9, 0x10, 0xe8, 0x53, - 0x98, 0x7e, 0x8c, 0xc3, 0x28, 0xbf, 0x1d, 0x5a, 0x48, 0x64, 0xc4, 0xe3, 0x53, 0x27, 0x1e, 0x83, - 0xe8, 0x49, 0xf5, 0xd6, 0xa1, 0xc0, 0xa4, 0xa3, 0x42, 0xe2, 0x5a, 0x82, 0x04, 0x07, 0x71, 0x7c, - 0xe7, 0x28, 0x48, 0xe5, 0xd6, 0x7d, 0x66, 0x28, 0x44, 0x62, 0xd9, 0xaa, 0xea, 0xd7, 0x65, 0xad, - 0x4c, 0x86, 0xe2, 0x98, 0x33, 0x26, 0x76, 0x43, 0xb7, 0xa2, 0xad, 0x30, 0x35, 0x5b, 0x5b, 0x09, - 0xc5, 0x9f, 0x6a, 0x34, 0x96, 0x91, 0x8c, 0x11, 0x6e, 0x20, 0x7a, 0x47, 0xdb, 0xb1, 0xcf, 0x46, - 0xf7, 0x53, 0x98, 0x90, 0x19, 0xc2, 0xa4, 0x58, 0x89, 0xe7, 0x57, 0x2b, 0x15, 0x93, 0x15, 0x7c, - 0xa4, 0x9f, 0xb0, 0x7c, 0x80, 0x3a, 0x7e, 0x3c, 0x89, 0x56, 0x2a, 0x63, 0x3f, 0x84, 0x49, 0x25, - 0x7d, 0x96, 0x5c, 0xc8, 0xc9, 0x94, 0x5a, 0xa5, 0x69, 0xa5, 0xef, 0x8d, 0xa5, 0x07, 0x39, 0x74, - 0x9f, 0x6e, 0x2d, 0xd4, 0x57, 0x79, 0x2e, 0x42, 0x53, 0x12, 0xea, 0xc4, 0x50, 0xd0, 0xfb, 0xf4, - 0x81, 0x76, 0xad, 0xef, 0xfb, 0xb8, 0xcb, 0xf0, 0xd2, 0x34, 0x88, 0x18, 0xe2, 0xa7, 0x54, 0x98, - 0x28, 0x88, 0xec, 0x62, 0x70, 0x10, 0x36, 0x0b, 0xd5, 0xf7, 0x20, 0x87, 0x96, 0x61, 0x5c, 0x64, - 0xdb, 0x44, 0xf3, 0x7a, 0x57, 0xd3, 0x87, 0xb7, 0x0c, 0xc0, 0x98, 0x4d, 0x7b, 0xaa, 0x57, 0xa7, - 0xb2, 0x73, 0x99, 0xec, 0x97, 0xed, 0x33, 0x22, 0x7d, 0x2a, 0xf6, 0x4c, 0x8a, 0x54, 0xd4, 0xa6, - 0x50, 0x65, 0x67, 0x1a, 0x3e, 0x51, 0x78, 0xb5, 0x24, 0xa0, 0x91, 0xc2, 0x6b, 0xca, 0x0d, 0x9a, - 0x4a, 0x67, 0x1d, 0x0a, 0x95, 0x16, 0x95, 0xe3, 0x32, 0x49, 0x91, 0x3c, 0x6d, 0xc4, 0x2b, 0x04, - 0xad, 0xb9, 0x78, 0xce, 0xa3, 0x0d, 0xec, 0xd0, 0x37, 0xeb, 0x0b, 0x52, 0x27, 0x88, 0x55, 0x99, - 0x31, 0x32, 0x4e, 0x17, 0xb3, 0x35, 0x72, 0x1e, 0xea, 0x7c, 0x3d, 0x32, 0x1f, 0x51, 0x59, 0xa6, - 0x24, 0x70, 0x9a, 0x8f, 0xe3, 0xcb, 0x73, 0x98, 0x70, 0xca, 0x90, 0xa0, 0x15, 0xb8, 0xc8, 0x5f, - 0xc8, 0x4a, 0xb6, 0xa4, 0x61, 0xa7, 0x35, 0xff, 0x3e, 0xcc, 0xac, 0x12, 0x59, 0xdf, 0x6f, 0xbb, - 0x2c, 0x4e, 0x07, 0xd2, 0x03, 0x2f, 0xa4, 0x22, 0xae, 0x89, 0xfc, 0x81, 0x4a, 0x66, 0x23, 0xf9, - 0x95, 0x26, 0x93, 0x47, 0x95, 0x66, 0x05, 0x59, 0x35, 0x09, 0x12, 0x3f, 0x27, 0x2f, 0xa4, 0xe4, - 0x12, 0x42, 0xb7, 0xb5, 0xb3, 0x5f, 0x5a, 0x42, 0x20, 0x83, 0xb6, 0xf7, 0xb9, 0x12, 0x5d, 0x3d, - 0x85, 0x66, 0x76, 0x92, 0xa1, 0xd4, 0x71, 0xcb, 0x97, 0xf5, 0xc6, 0x64, 0x40, 0xe8, 0x2d, 0x9d, - 0x7a, 0x46, 0xc2, 0xa0, 0xd4, 0x16, 0xe8, 0xd9, 0x5a, 0xcf, 0x55, 0x83, 0xae, 0x67, 0xa7, 0xd4, - 0x51, 0xce, 0xd6, 0x29, 0x49, 0x6e, 0x9e, 0xd0, 0x65, 0x16, 0x85, 0x60, 0x47, 0xea, 0x49, 0x35, - 0x1e, 0x81, 0x5e, 0xaa, 0x50, 0xe6, 0x84, 0x35, 0x8f, 0xa9, 0xb8, 0x54, 0xc2, 0xb9, 0xa7, 0x0a, - 0xbc, 0x6b, 0x26, 0x3a, 0x81, 0xb2, 0x17, 0x5e, 0x8c, 0xa5, 0x7e, 0x91, 0xe6, 0x11, 0x73, 0xf2, - 0x99, 0xd2, 0xf5, 0xb4, 0x6a, 0x4e, 0xb1, 0x2e, 0x32, 0x80, 0x2a, 0x23, 0xbd, 0xae, 0xed, 0x50, - 0xc9, 0xc1, 0x96, 0x53, 0xeb, 0x25, 0xef, 0x0a, 0xf1, 0x50, 0xfd, 0x92, 0x68, 0x4a, 0x0c, 0xff, - 0x0c, 0x91, 0x38, 0xab, 0x2e, 0x8d, 0x81, 0x1c, 0x4c, 0xa3, 0xb3, 0x03, 0x73, 0xc6, 0xc8, 0xfa, - 0x52, 0x8d, 0xc8, 0x8a, 0xbb, 0x9f, 0x4a, 0x15, 0xc3, 0xbc, 0x39, 0xb9, 0x06, 0x7a, 0x43, 0x3f, - 0xfa, 0x9b, 0x53, 0x0d, 0x94, 0x6e, 0x0f, 0x80, 0xe2, 0x0c, 0xfd, 0x82, 0x6e, 0x9b, 0x89, 0x36, - 0x6e, 0x2a, 0xc6, 0x80, 0x94, 0x06, 0xac, 0x2c, 0x10, 0xb9, 0x06, 0x66, 0x4d, 0xc9, 0x7d, 0x52, - 0x59, 0x7c, 0x2b, 0x9d, 0x66, 0xb4, 0xb0, 0x1a, 0xe2, 0x3d, 0x7b, 0x2a, 0x67, 0x32, 0x93, 0x30, - 0x64, 0x9c, 0x26, 0x4b, 0x72, 0x3d, 0x9c, 0xbe, 0xcb, 0xe9, 0x96, 0xa1, 0x59, 0x53, 0xea, 0x8f, - 0xb8, 0xe1, 0xc6, 0x94, 0xd9, 0x41, 0xb2, 0x21, 0x33, 0x77, 0x48, 0x83, 0x19, 0x71, 0x74, 0xea, - 0xaa, 0x11, 0xc7, 0x48, 0xfa, 0x46, 0x3a, 0x40, 0xb4, 0x22, 0x0c, 0x39, 0x8c, 0xe4, 0x8a, 0x48, - 0xcf, 0xa6, 0x24, 0x57, 0x44, 0x56, 0x0a, 0x24, 0x5b, 0x7c, 0x74, 0x29, 0x6c, 0xc9, 0x48, 0x78, - 0x91, 0x71, 0xe4, 0x2a, 0x46, 0x13, 0x17, 0xeb, 0xf6, 0x59, 0xa7, 0xed, 0x0b, 0xb8, 0x92, 0x9a, - 0xdc, 0x02, 0xbd, 0x99, 0xf8, 0xa0, 0x53, 0x38, 0x91, 0xde, 0xd3, 0x69, 0x2d, 0x2f, 0x85, 0xb4, - 0x62, 0xc5, 0x52, 0x60, 0x24, 0x44, 0xbf, 0x21, 0x3f, 0x06, 0x13, 0xfd, 0x4a, 0x8e, 0x8b, 0xd3, - 0x88, 0x7e, 0x53, 0x4a, 0x0c, 0x29, 0x53, 0x95, 0x7e, 0x09, 0x95, 0x2e, 0x5e, 0x71, 0x16, 0x99, - 0x7a, 0x9a, 0xae, 0xa5, 0xd1, 0x59, 0xa1, 0x47, 0x0e, 0x91, 0xf2, 0x02, 0x5d, 0xd1, 0xd8, 0xa4, - 0x6d, 0xb7, 0x25, 0x6d, 0x70, 0xfa, 0x4e, 0x5b, 0xa3, 0xe6, 0x62, 0x99, 0x62, 0x23, 0xb5, 0x17, - 0x57, 0x93, 0x34, 0x34, 0x53, 0xb1, 0xe4, 0x02, 0xeb, 0xcd, 0x62, 0x9c, 0x39, 0x5a, 0x87, 0xd2, - 0x87, 0x84, 0x54, 0xd6, 0x0c, 0xe8, 0x52, 0xba, 0xaa, 0x7b, 0x99, 0x1d, 0x1e, 0x58, 0xc0, 0x29, - 0xf1, 0x50, 0x6d, 0x5e, 0xda, 0xbd, 0x94, 0xd2, 0x0c, 0x33, 0xc7, 0x36, 0x75, 0x61, 0x31, 0x64, - 0x0b, 0x91, 0x32, 0x34, 0x33, 0x99, 0x88, 0x41, 0xcd, 0x93, 0x52, 0x39, 0x95, 0x62, 0x66, 0xfa, - 0x90, 0xd4, 0x9e, 0xfe, 0x58, 0x91, 0xca, 0x89, 0x9c, 0x20, 0xe8, 0x6e, 0x5c, 0xc7, 0x4b, 0x4b, - 0x1b, 0x92, 0x21, 0xf5, 0x67, 0x4d, 0xe9, 0x44, 0x14, 0xdb, 0x6d, 0x6a, 0xae, 0x11, 0x03, 0x17, - 0xa4, 0x78, 0x4b, 0xa1, 0x96, 0x91, 0x5c, 0x24, 0xb5, 0x87, 0x3f, 0x50, 0xc4, 0x5b, 0x2c, 0x09, - 0x88, 0x34, 0x2a, 0x0c, 0xc8, 0x12, 0x92, 0x4a, 0x7b, 0x93, 0x3a, 0x3d, 0x25, 0x33, 0x78, 0x48, - 0xdd, 0x25, 0x2b, 0xbf, 0x87, 0xd1, 0xb4, 0x3b, 0x97, 0x1c, 0x22, 0xa1, 0x37, 0x1f, 0x33, 0xcc, - 0x0e, 0xea, 0x98, 0x94, 0xc3, 0x86, 0xcc, 0x1f, 0x31, 0x39, 0x9c, 0x9e, 0x1b, 0x24, 0xe3, 0xc4, - 0x74, 0xb1, 0xee, 0x1e, 0x74, 0x95, 0x34, 0x1c, 0xf2, 0xbc, 0x94, 0x4c, 0x25, 0x22, 0x45, 0x8c, - 0x29, 0x6b, 0xc7, 0x56, 0xe4, 0x0c, 0xad, 0x26, 0x54, 0x40, 0xa5, 0xf4, 0x3c, 0x12, 0x52, 0xdc, - 0x18, 0x33, 0x30, 0x28, 0x04, 0xd5, 0x6c, 0x06, 0x92, 0xa0, 0x21, 0xb1, 0x82, 0x24, 0x68, 0x4c, - 0x7f, 0xc0, 0x4c, 0x30, 0xb6, 0xd7, 0xc1, 0xaa, 0x09, 0x46, 0xc9, 0x45, 0x10, 0xb3, 0x85, 0xa0, - 0x8f, 0xa9, 0x25, 0x24, 0xdb, 0x7c, 0xb2, 0xa0, 0x53, 0x8a, 0xa4, 0xe5, 0xb2, 0xb8, 0x0c, 0xa0, - 0x0d, 0xea, 0x94, 0x07, 0x1b, 0x37, 0x28, 0x92, 0x6e, 0xdc, 0x50, 0x3b, 0x9a, 0x6e, 0x27, 0x9d, - 0x52, 0x23, 0xe0, 0x4a, 0x5e, 0x19, 0xc2, 0x74, 0x4b, 0x5e, 0x99, 0x82, 0x5f, 0xd3, 0x33, 0xf0, - 0x8e, 0x38, 0xc9, 0x47, 0xf4, 0xae, 0x65, 0x46, 0xaf, 0x2e, 0x5d, 0xcf, 0x0e, 0xf9, 0xcc, 0xef, - 0xf1, 0x0a, 0xf1, 0x20, 0xbd, 0xc8, 0x14, 0x7c, 0x5c, 0x89, 0x7d, 0x2c, 0x4f, 0x43, 0xa9, 0xd1, - 0x7d, 0xb7, 0x85, 0xb1, 0x5a, 0xa7, 0x9b, 0x12, 0x82, 0x5a, 0x25, 0x9d, 0xad, 0xa0, 0x44, 0xf1, - 0x7a, 0xd5, 0xb3, 0x69, 0x22, 0x1e, 0xb0, 0xaa, 0xa0, 0x18, 0x42, 0xfc, 0xba, 0xe2, 0xf1, 0x9c, - 0x39, 0xa1, 0xc5, 0x5b, 0xfa, 0x59, 0x2f, 0x23, 0xf6, 0xc3, 0xc0, 0x9b, 0x52, 0xf4, 0x23, 0x91, - 0xfe, 0x32, 0x19, 0xee, 0xfd, 0x76, 0xcc, 0xec, 0x6a, 0x8e, 0x16, 0x50, 0xca, 0x8a, 0x26, 0x8f, - 0x9e, 0xd1, 0x2b, 0xf6, 0xad, 0xf5, 0x95, 0x1a, 0x77, 0x1b, 0xf2, 0xfc, 0xc4, 0xb5, 0xd5, 0x9e, - 0x1b, 0x1e, 0xb2, 0xfc, 0x07, 0x8a, 0xf4, 0x61, 0x20, 0x1a, 0x62, 0x63, 0x19, 0xd5, 0xa9, 0xe6, - 0xae, 0x95, 0x1a, 0x6e, 0xae, 0x0c, 0x04, 0x4b, 0x66, 0x82, 0x34, 0x83, 0x13, 0x55, 0x0c, 0xc8, - 0x87, 0xa7, 0x77, 0x33, 0xa5, 0x0f, 0x59, 0xfa, 0x05, 0x5b, 0x36, 0x66, 0x32, 0xa7, 0x15, 0xdf, - 0x8f, 0x61, 0x8e, 0x31, 0x3c, 0xf6, 0x52, 0x41, 0xeb, 0x8f, 0x52, 0x5e, 0x4a, 0x29, 0x47, 0x9b, - 0xd4, 0x73, 0x23, 0x5e, 0xaa, 0x9c, 0x62, 0xcc, 0x4f, 0x21, 0x52, 0xe9, 0xb1, 0xa9, 0x24, 0x6a, - 0xfb, 0x57, 0x9a, 0x4a, 0x0d, 0xb1, 0xb1, 0xc4, 0xa7, 0x52, 0x2b, 0x3d, 0xdb, 0x54, 0xc6, 0x08, - 0xea, 0x53, 0xa9, 0x77, 0x33, 0xa5, 0x0f, 0x83, 0xa7, 0xd2, 0x4c, 0xe6, 0xcc, 0x53, 0x19, 0x7b, - 0x26, 0xa2, 0xf5, 0xc7, 0x34, 0x95, 0x71, 0x78, 0x36, 0x95, 0xf1, 0xd2, 0xd8, 0x81, 0x34, 0x63, - 0x2a, 0xe3, 0x98, 0xdf, 0xa3, 0xf4, 0xd8, 0x3b, 0x94, 0x33, 0x4d, 0xa6, 0x88, 0x69, 0x10, 0x43, - 0x6d, 0x2c, 0xa3, 0x3d, 0x6a, 0x0d, 0x89, 0x95, 0x9f, 0x6e, 0x42, 0x17, 0xd3, 0x88, 0xd2, 0x29, - 0x5d, 0x17, 0x7a, 0x56, 0xbc, 0xbb, 0xa9, 0x7d, 0xc9, 0x9a, 0x0f, 0x36, 0xad, 0x71, 0x52, 0x67, - 0x9d, 0xd8, 0x67, 0x42, 0x68, 0x26, 0x9e, 0xf2, 0xc4, 0x7a, 0xa5, 0x4e, 0x6e, 0x6a, 0x0d, 0xda, - 0xa1, 0xb6, 0x9e, 0x64, 0xb9, 0x62, 0x27, 0x4a, 0x7b, 0x33, 0x34, 0x90, 0x6a, 0xe2, 0x6d, 0x90, - 0x4a, 0x35, 0xed, 0xe1, 0x90, 0xa4, 0x9a, 0xc4, 0x5e, 0xa1, 0x9f, 0xed, 0x8e, 0x4f, 0x8e, 0x49, - 0xed, 0xe4, 0x19, 0x4a, 0xe7, 0x9f, 0xb8, 0xd1, 0xd4, 0xc1, 0x1b, 0x4b, 0x68, 0x9d, 0x2e, 0x40, - 0xbd, 0x38, 0xeb, 0x90, 0x69, 0x26, 0x43, 0xd7, 0xc7, 0x9a, 0x74, 0xb9, 0xd4, 0xfb, 0x94, 0xd6, - 0x76, 0x7a, 0xa7, 0xe4, 0x09, 0xfc, 0x94, 0xa3, 0x4b, 0x5b, 0x1d, 0x4c, 0x0b, 0x64, 0x07, 0xde, - 0x41, 0x9c, 0x89, 0x3b, 0x81, 0xa2, 0xef, 0xc2, 0x84, 0x40, 0x1e, 0xcc, 0x90, 0x38, 0x36, 0x65, - 0xc8, 0xa7, 0x30, 0xa9, 0xf8, 0xa0, 0xa2, 0xb4, 0x96, 0x32, 0x54, 0xca, 0x49, 0xc5, 0x43, 0xf6, - 0xec, 0xf8, 0x2b, 0x30, 0xad, 0x79, 0xd8, 0x4a, 0x45, 0xc8, 0xe4, 0x77, 0x9b, 0x45, 0x45, 0xf3, - 0xa4, 0x95, 0x54, 0x4c, 0xfe, 0xb5, 0xd9, 0x4a, 0x99, 0xf2, 0x5a, 0x50, 0x51, 0xca, 0x92, 0xcf, - 0x16, 0x15, 0xa5, 0xcc, 0xf4, 0xc0, 0xf0, 0x3b, 0x30, 0xc9, 0x97, 0x47, 0xe6, 0xcc, 0xa6, 0x9f, - 0x96, 0xe7, 0x14, 0x9f, 0xc1, 0x7e, 0xdb, 0x0d, 0x6b, 0x5e, 0xf7, 0xb9, 0x7b, 0x30, 0x70, 0x92, - 0x93, 0x28, 0x8d, 0x25, 0xd4, 0xa0, 0xb1, 0x97, 0x45, 0x44, 0x6c, 0x1c, 0xbe, 0xf2, 0xfc, 0x17, - 0x6e, 0xf7, 0x60, 0x00, 0xc9, 0x1b, 0x3a, 0xc9, 0x38, 0x1e, 0xa3, 0x5b, 0x4f, 0xa7, 0x3b, 0x10, - 0x3f, 0xe3, 0xb4, 0xbc, 0x48, 0xef, 0xed, 0xcf, 0xda, 0xe3, 0xf4, 0x9b, 0x83, 0x2b, 0x91, 0xb7, - 0x9d, 0x8d, 0x5b, 0x9e, 0xdf, 0x1e, 0x4c, 0xac, 0xac, 0xfb, 0xb6, 0xc5, 0xd0, 0x1a, 0x4b, 0x84, - 0x6a, 0x3d, 0x95, 0xea, 0x20, 0xec, 0x8c, 0xdd, 0xe2, 0x2a, 0x1d, 0xfb, 0x19, 0x7b, 0x9b, 0xfe, - 0x65, 0x10, 0x09, 0x4c, 0x24, 0xfd, 0xb6, 0x8f, 0x9f, 0x63, 0x9f, 0xba, 0x4c, 0x0e, 0x72, 0x16, - 0xd4, 0xc1, 0x1b, 0x4b, 0x84, 0x4a, 0x3d, 0x41, 0x25, 0x0d, 0x3a, 0x4b, 0x51, 0xa2, 0x43, 0x3b, - 0x65, 0x6f, 0xd2, 0xc8, 0x7c, 0x40, 0x6d, 0x96, 0xbb, 0xeb, 0x03, 0x38, 0x22, 0x9c, 0x78, 0x05, - 0x60, 0xe3, 0x21, 0xc1, 0xac, 0x2b, 0x98, 0x49, 0x88, 0xd4, 0x36, 0xbf, 0x2b, 0x8c, 0x93, 0x03, - 0x9b, 0x4d, 0xf7, 0x46, 0x98, 0x90, 0x79, 0x21, 0x90, 0x72, 0xac, 0xd7, 0xb2, 0x1e, 0x94, 0xa6, - 0x55, 0x97, 0xc1, 0x00, 0x55, 0x98, 0x16, 0xad, 0xe6, 0x47, 0x50, 0xee, 0x45, 0x8d, 0x89, 0x13, - 0xe2, 0x24, 0x98, 0x59, 0x62, 0xc3, 0x6b, 0xbd, 0x50, 0xcd, 0x12, 0x4a, 0xc0, 0xfd, 0x92, 0x1e, - 0x0e, 0x9f, 0x6f, 0x48, 0x34, 0x26, 0xbe, 0xea, 0xa0, 0xa1, 0x86, 0xdc, 0x57, 0xcd, 0x12, 0x7a, - 0x72, 0x00, 0x69, 0x96, 0xa0, 0x0d, 0xea, 0x94, 0x07, 0x9b, 0x25, 0x28, 0x92, 0x6e, 0x96, 0x50, - 0x3b, 0x9a, 0x2e, 0x2e, 0x50, 0x32, 0x3b, 0x80, 0x54, 0x78, 0x53, 0x13, 0x07, 0x64, 0xf8, 0x5e, - 0x5c, 0x36, 0x24, 0x34, 0x91, 0xc7, 0xfd, 0xf4, 0x64, 0x27, 0x25, 0xdd, 0x91, 0xe0, 0x41, 0x0e, - 0x6d, 0xd2, 0x04, 0xd9, 0x5c, 0x80, 0xd9, 0x38, 0x08, 0x7d, 0x97, 0x3e, 0x86, 0x49, 0xdf, 0xad, - 0x85, 0x7e, 0x6b, 0xc0, 0x69, 0xbc, 0x43, 0xe8, 0xd5, 0xcd, 0xf4, 0x32, 0xf1, 0x32, 0x2c, 0x3a, - 0xdc, 0xfc, 0x77, 0x96, 0x2e, 0xa6, 0x2f, 0xf1, 0x31, 0x76, 0xeb, 0x9d, 0x8e, 0x5a, 0x88, 0x42, - 0xe0, 0x71, 0x8d, 0xfd, 0x1e, 0x8c, 0x32, 0xa4, 0xd4, 0x3d, 0x72, 0x4a, 0xc5, 0x41, 0x0f, 0x85, - 0x8b, 0x16, 0x41, 0xd1, 0xaa, 0x52, 0xfb, 0xf5, 0x10, 0x26, 0x98, 0x2d, 0xff, 0xf4, 0x28, 0x1f, - 0x0b, 0x47, 0xae, 0xac, 0x8e, 0xa5, 0xfb, 0x36, 0x4e, 0xab, 0x17, 0xde, 0x67, 0x67, 0xe4, 0x77, - 0xe8, 0x7d, 0x8a, 0x30, 0x5b, 0xa6, 0xe3, 0xcf, 0xc5, 0x82, 0xc6, 0x71, 0x96, 0x32, 0x01, 0x29, - 0x33, 0x03, 0xa5, 0x75, 0xff, 0x52, 0x02, 0x1b, 0x7d, 0x2c, 0x9e, 0x0f, 0x48, 0xe4, 0x24, 0x50, - 0x06, 0xcf, 0x66, 0x18, 0x9b, 0xbf, 0x0a, 0xb2, 0x14, 0xb0, 0x03, 0xbb, 0x7d, 0x9a, 0x7b, 0x9f, - 0xc1, 0xac, 0x4b, 0xa3, 0xb2, 0x45, 0x15, 0xaf, 0x44, 0x38, 0xc3, 0x74, 0x42, 0xd7, 0xd3, 0x23, - 0x20, 0xd2, 0xc9, 0x78, 0x42, 0x0f, 0x56, 0xc9, 0x2c, 0x4f, 0x69, 0xc3, 0xcb, 0x88, 0xa8, 0x18, - 0x9d, 0x24, 0x93, 0xe4, 0x32, 0xd0, 0xb2, 0x0e, 0xa6, 0x6c, 0xc2, 0xce, 0x87, 0xdc, 0xba, 0x70, - 0x40, 0x3a, 0xfd, 0x60, 0x33, 0x94, 0x20, 0xc3, 0x4d, 0xd3, 0xc0, 0xb9, 0x48, 0x23, 0xf7, 0x23, - 0xaa, 0xff, 0x99, 0x53, 0xbb, 0xa4, 0x12, 0xbb, 0xab, 0x5c, 0x56, 0x66, 0x27, 0x85, 0x79, 0x41, - 0xdf, 0x65, 0x98, 0x03, 0x3e, 0xde, 0x19, 0x40, 0x45, 0x70, 0xe2, 0xcd, 0x81, 0x70, 0xf2, 0xde, - 0x82, 0xa7, 0xe5, 0x37, 0xb7, 0x37, 0x20, 0x80, 0xa5, 0xe1, 0x2a, 0x29, 0x25, 0x6f, 0x8a, 0x20, - 0xa8, 0x7b, 0x77, 0x65, 0x8e, 0x21, 0x8d, 0xfd, 0xdf, 0x53, 0xb2, 0xeb, 0x9f, 0x71, 0x12, 0xd2, - 0x35, 0x7a, 0x94, 0xcc, 0x26, 0x83, 0xb2, 0x02, 0x0b, 0x96, 0x6e, 0xa6, 0x71, 0x38, 0x50, 0xae, - 0xfa, 0xb9, 0x2f, 0x49, 0x2c, 0xf4, 0x69, 0x5a, 0x10, 0xd5, 0x0c, 0xdb, 0x11, 0x7f, 0xa8, 0x72, - 0x2e, 0x84, 0x92, 0xb3, 0x7d, 0x76, 0x42, 0xf2, 0xc2, 0x34, 0x46, 0xc8, 0xca, 0x98, 0xde, 0xb3, - 0xf8, 0x83, 0xc4, 0xa7, 0xe2, 0xac, 0x13, 0xea, 0x44, 0x8f, 0x33, 0x92, 0x29, 0x6f, 0xa4, 0x2e, - 0x97, 0x9a, 0x7e, 0x47, 0xce, 0x6e, 0x46, 0xbe, 0x9c, 0x1a, 0xf9, 0x4c, 0x59, 0x13, 0x5a, 0xbe, - 0x8d, 0x9a, 0xbd, 0x11, 0x59, 0x1d, 0x0c, 0x89, 0x38, 0x4a, 0x20, 0x2a, 0xed, 0x0d, 0x54, 0x87, - 0x12, 0x5b, 0x22, 0xa6, 0x87, 0xcd, 0xd2, 0xa3, 0xde, 0x54, 0x99, 0x71, 0xba, 0xa8, 0x43, 0x89, - 0x2d, 0x97, 0xf3, 0x24, 0xda, 0xa4, 0xb9, 0xd5, 0x8c, 0x14, 0x6f, 0x2b, 0xcf, 0x12, 0xd3, 0x9f, - 0x8b, 0x97, 0xb2, 0x1b, 0x46, 0x3f, 0x84, 0x39, 0xe3, 0x7b, 0x71, 0x79, 0xa7, 0x9d, 0xf5, 0x9a, - 0x7c, 0x10, 0xf1, 0x17, 0x50, 0x4c, 0x4b, 0xa7, 0x11, 0x79, 0xf8, 0x67, 0x67, 0x2c, 0x91, 0x32, - 0x75, 0x60, 0x5e, 0x8e, 0x4d, 0x98, 0x35, 0xa5, 0xa8, 0x90, 0x1f, 0x47, 0x46, 0xfe, 0x0a, 0xe3, - 0x33, 0x82, 0x6d, 0x98, 0x33, 0xa6, 0x89, 0x90, 0x9c, 0xc9, 0x4a, 0x22, 0x61, 0xa4, 0xf8, 0x39, - 0x2c, 0xa4, 0xe4, 0x44, 0x88, 0x2e, 0xde, 0x32, 0x73, 0x26, 0x64, 0x38, 0x00, 0x94, 0xd2, 0xc3, - 0xed, 0x4b, 0xbf, 0x8f, 0x81, 0x11, 0xf9, 0x4b, 0xc6, 0x1c, 0x24, 0x68, 0x87, 0x2e, 0x42, 0x53, - 0xfc, 0x7d, 0x75, 0x11, 0x66, 0xc4, 0xe7, 0x4f, 0x79, 0xfe, 0xb1, 0x90, 0x12, 0x72, 0x3f, 0x83, - 0xea, 0x29, 0x7a, 0xbb, 0x29, 0xe4, 0xbf, 0x1e, 0x83, 0x3d, 0xe6, 0x4b, 0x68, 0x0c, 0xd0, 0x6e, - 0xec, 0xa7, 0xf2, 0xdc, 0xb8, 0xd3, 0xc9, 0x50, 0x83, 0x90, 0xfa, 0xde, 0x98, 0x40, 0x36, 0x1e, - 0x92, 0x43, 0x84, 0x8a, 0x9b, 0x25, 0x51, 0x13, 0xc8, 0x54, 0xf1, 0xfc, 0x08, 0xa6, 0xea, 0x6a, - 0xe3, 0x86, 0x46, 0x52, 0x17, 0x85, 0xf4, 0xb2, 0x1f, 0xdc, 0xf7, 0x81, 0xb7, 0x62, 0x95, 0x4e, - 0xe7, 0x54, 0xa3, 0x48, 0xb5, 0xc9, 0x6a, 0x11, 0x6f, 0xa5, 0xa4, 0x36, 0x05, 0x72, 0x96, 0x36, - 0x59, 0x73, 0x90, 0xdc, 0x55, 0xca, 0xd2, 0x28, 0x5e, 0x60, 0xc6, 0x19, 0x5c, 0x2e, 0x22, 0x43, - 0x58, 0xc2, 0xa7, 0xea, 0x43, 0x70, 0x16, 0x65, 0x30, 0xc3, 0x88, 0x18, 0x7f, 0x00, 0x1e, 0x0b, - 0x4b, 0xd8, 0x80, 0xa2, 0x88, 0xf7, 0xc5, 0x22, 0x6e, 0x45, 0x11, 0x86, 0x22, 0xd7, 0xa8, 0xf4, - 0x80, 0x60, 0x19, 0x7c, 0x2b, 0xc4, 0x63, 0x69, 0x48, 0xcb, 0x51, 0x4a, 0x90, 0x8d, 0x8c, 0xd5, - 0x00, 0x51, 0xc4, 0x0c, 0x69, 0x9f, 0x49, 0x04, 0xd1, 0x28, 0x5d, 0x31, 0xd4, 0x48, 0xcd, 0x6a, - 0x4a, 0x8d, 0xaf, 0x21, 0x3d, 0x47, 0x0c, 0x41, 0x37, 0x4a, 0x57, 0x8d, 0x75, 0x9c, 0x50, 0x08, - 0x57, 0x33, 0x72, 0xcb, 0x49, 0x6d, 0x75, 0x70, 0x0e, 0xbc, 0xd2, 0xdb, 0xa7, 0x01, 0xe5, 0xad, - 0x62, 0x19, 0xbf, 0x2f, 0x09, 0x85, 0xde, 0x34, 0xb8, 0xfa, 0x9a, 0xd2, 0xb6, 0x95, 0x06, 0xa5, - 0xb5, 0x43, 0x7b, 0xb0, 0x18, 0x73, 0x45, 0xd6, 0x5b, 0x1a, 0x44, 0x20, 0x75, 0x06, 0xf7, 0x60, - 0x91, 0xbf, 0x8d, 0x3e, 0x67, 0xc2, 0xfb, 0xb0, 0x98, 0x95, 0xb0, 0x0e, 0xbd, 0x6d, 0x76, 0x37, - 0x36, 0xb2, 0x27, 0x5d, 0x75, 0xbd, 0x91, 0x74, 0x3b, 0x8e, 0xcd, 0xfb, 0x59, 0xc5, 0xca, 0x33, - 0x98, 0xd1, 0x93, 0xd5, 0x21, 0x55, 0x74, 0x24, 0x52, 0xe7, 0x95, 0xae, 0xa5, 0xd4, 0xf2, 0xf5, - 0xf1, 0x29, 0x15, 0xf4, 0xb2, 0x42, 0x8d, 0x97, 0x10, 0x4f, 0x06, 0x57, 0x32, 0x64, 0xbe, 0x43, - 0xdf, 0x81, 0x8b, 0xd1, 0xfb, 0x36, 0x46, 0xc2, 0x00, 0x96, 0x61, 0x2f, 0xba, 0x18, 0xbd, 0x74, - 0x3b, 0x3b, 0xfa, 0x9a, 0x90, 0xf6, 0x11, 0xfa, 0xb5, 0x84, 0x07, 0xb6, 0x36, 0x86, 0xd3, 0x08, - 0x7d, 0x85, 0xb7, 0x67, 0x9d, 0x9d, 0x16, 0xfd, 0xdc, 0xcc, 0x81, 0x63, 0xd4, 0xcf, 0x2d, 0x33, - 0xb8, 0x8d, 0xd4, 0x30, 0x53, 0xe8, 0x74, 0xe0, 0xe6, 0xc0, 0x50, 0x37, 0xe8, 0xbe, 0x16, 0x59, - 0x60, 0x70, 0x50, 0x9c, 0xb4, 0x21, 0x55, 0x57, 0x7e, 0xf1, 0xe7, 0xd7, 0x73, 0xbf, 0xf8, 0xe5, - 0xf5, 0xdc, 0x7f, 0xfa, 0xe5, 0xf5, 0xdc, 0x7f, 0xff, 0xe5, 0xf5, 0xdc, 0x0f, 0x96, 0x4e, 0x17, - 0x77, 0xae, 0xd5, 0x71, 0x71, 0x37, 0xbc, 0xcf, 0xc8, 0x8d, 0xd2, 0xff, 0x96, 0xff, 0x6f, 0x00, - 0x00, 0x00, 0xff, 0xff, 0x41, 0x60, 0xa9, 0xb2, 0xae, 0xcb, 0x00, 0x00, + 0xa4, 0xd1, 0xe8, 0x76, 0xf5, 0x43, 0xcd, 0xff, 0xcc, 0xce, 0x6c, 0x77, 0x93, 0x12, 0x29, 0x51, + 0x24, 0xb7, 0x9a, 0x6c, 0xce, 0xee, 0xce, 0x6e, 0x6f, 0xb1, 0x3b, 0x45, 0xd6, 0xa7, 0x66, 0x57, + 0x6f, 0x55, 0xb5, 0x34, 0xba, 0x0f, 0xfe, 0x39, 0x9f, 0xf7, 0x1e, 0x7c, 0xb0, 0xbd, 0x06, 0xee, + 0x6c, 0x1f, 0xee, 0xc1, 0x06, 0xec, 0x17, 0x1b, 0xb0, 0x71, 0x0f, 0x3e, 0x1c, 0x60, 0x18, 0x30, + 0xce, 0x36, 0xe0, 0xb5, 0x01, 0x03, 0x7e, 0xf0, 0xc1, 0x80, 0x0d, 0xd0, 0xbe, 0x85, 0x9f, 0x08, + 0xf8, 0xc9, 0xb0, 0x1f, 0xf6, 0xc9, 0xc8, 0xdf, 0xca, 0xac, 0xca, 0xaa, 0x26, 0x35, 0xdc, 0xf1, + 0x8b, 0xc4, 0xce, 0x8c, 0x88, 0xcc, 0x8c, 0xcc, 0x8a, 0x8c, 0x8c, 0x8c, 0x8c, 0x80, 0xbb, 0x21, + 0xee, 0xe0, 0x9e, 0xe7, 0x87, 0xf7, 0x3a, 0x78, 0xdf, 0x69, 0xbd, 0xbe, 0xd7, 0xea, 0xb8, 0xb8, + 0x1b, 0xde, 0xeb, 0xf9, 0x5e, 0xe8, 0xdd, 0x73, 0xfa, 0xe1, 0x41, 0x80, 0xfd, 0x97, 0x6e, 0x0b, + 0xdf, 0xa5, 0x25, 0x68, 0x84, 0xfe, 0x57, 0x9a, 0xdd, 0xf7, 0xf6, 0x3d, 0x06, 0x43, 0xfe, 0x62, + 0x95, 0xa5, 0xcb, 0xfb, 0x9e, 0xb7, 0xdf, 0xc1, 0x0c, 0x79, 0xaf, 0xff, 0xfc, 0x1e, 0x3e, 0xec, + 0x85, 0xaf, 0x79, 0x65, 0x39, 0x5e, 0x19, 0xba, 0x87, 0x38, 0x08, 0x9d, 0xc3, 0x1e, 0x07, 0xb8, + 0x9d, 0xd9, 0x95, 0x16, 0xf6, 0xc3, 0x80, 0x43, 0xbe, 0x13, 0x87, 0x0c, 0x5f, 0xf7, 0x70, 0x70, + 0x0f, 0xbf, 0xc4, 0xdd, 0x50, 0xfc, 0xc7, 0x41, 0xaf, 0x9b, 0x41, 0xe9, 0xbf, 0x1c, 0xe4, 0xdb, + 0x66, 0x90, 0x57, 0x78, 0x8f, 0x0c, 0xbf, 0x2b, 0xff, 0x18, 0x00, 0xee, 0x3b, 0xbd, 0x1e, 0xf6, + 0xa3, 0x3f, 0x12, 0x7d, 0xed, 0x07, 0xce, 0x3e, 0xe6, 0x7d, 0x7c, 0xf9, 0x40, 0xfd, 0xc9, 0x40, + 0xad, 0x3f, 0xba, 0x02, 0x23, 0x2b, 0xa4, 0x00, 0x7d, 0x08, 0xc3, 0xdb, 0xaf, 0x7b, 0xb8, 0x98, + 0xbb, 0x96, 0xbb, 0x3d, 0xb3, 0x54, 0x60, 0xf5, 0x77, 0x37, 0x7b, 0xd8, 0x77, 0x42, 0xd7, 0xeb, + 0x56, 0xd1, 0xf1, 0x51, 0x79, 0x86, 0xb4, 0xfb, 0x2d, 0xef, 0xd0, 0x0d, 0x29, 0x97, 0x6d, 0x8a, + 0x81, 0x76, 0x61, 0xc6, 0xc6, 0x81, 0xd7, 0xf7, 0x5b, 0x78, 0x15, 0x3b, 0x6d, 0xec, 0x17, 0xf3, + 0xd7, 0x72, 0xb7, 0x27, 0x97, 0xe6, 0xee, 0xb2, 0x21, 0xeb, 0x95, 0xd5, 0xf9, 0xe3, 0xa3, 0x32, + 0xf2, 0x79, 0x59, 0x44, 0x6c, 0xf5, 0x9c, 0x1d, 0x23, 0x83, 0xbe, 0x84, 0xe9, 0x1a, 0xf6, 0xc3, + 0x4a, 0x3f, 0x3c, 0xf0, 0x7c, 0x37, 0x7c, 0x5d, 0x1c, 0xa2, 0x74, 0xe7, 0x39, 0x5d, 0xad, 0xae, + 0xb1, 0x54, 0x5d, 0x3c, 0x3e, 0x2a, 0x17, 0xc9, 0x9c, 0x35, 0x1d, 0x51, 0xaa, 0x91, 0xd7, 0x89, + 0xa1, 0x2f, 0x60, 0xaa, 0x1e, 0x3a, 0xa1, 0xdb, 0xda, 0xf6, 0x5e, 0xe0, 0x6e, 0x50, 0x1c, 0xd6, + 0x3a, 0xad, 0x56, 0x35, 0x96, 0xaa, 0x97, 0x8f, 0x8f, 0xca, 0x0b, 0x01, 0x2d, 0x6b, 0x86, 0xb4, + 0x50, 0x23, 0xad, 0x51, 0x42, 0x3f, 0x81, 0x99, 0x2d, 0xdf, 0x7b, 0xe9, 0x06, 0xae, 0xd7, 0xa5, + 0x45, 0xc5, 0x11, 0x4a, 0x7b, 0x81, 0xd3, 0xd6, 0x2b, 0x1b, 0x4b, 0xd5, 0x2b, 0xc7, 0x47, 0xe5, + 0x4b, 0x3d, 0x51, 0xca, 0x1a, 0xd0, 0x39, 0xa3, 0xa3, 0xa0, 0x6d, 0x98, 0xac, 0x75, 0xfa, 0x41, + 0x88, 0xfd, 0x0d, 0xe7, 0x10, 0x17, 0x47, 0x29, 0xf9, 0x59, 0xc1, 0x97, 0xa8, 0xa6, 0xb1, 0x54, + 0x2d, 0x1d, 0x1f, 0x95, 0xe7, 0x5b, 0xac, 0xa8, 0xd9, 0x75, 0x0e, 0x75, 0x96, 0xab, 0x64, 0xd0, + 0x07, 0x30, 0xbc, 0x13, 0x60, 0xbf, 0x38, 0x4e, 0xc9, 0x4d, 0x73, 0x72, 0xa4, 0xa8, 0xb1, 0xc4, + 0xe6, 0xbf, 0x1f, 0x60, 0x5f, 0xc3, 0xa7, 0x08, 0x04, 0xd1, 0xf6, 0x3a, 0xb8, 0x38, 0xa1, 0x21, + 0x92, 0xa2, 0xc6, 0xfb, 0x0c, 0xd1, 0xf7, 0x3a, 0x7a, 0xc3, 0x14, 0x01, 0xad, 0xc1, 0x04, 0x69, + 0x39, 0xe8, 0x39, 0x2d, 0x5c, 0x04, 0x8a, 0x5d, 0xe0, 0xd8, 0xb2, 0xbc, 0xba, 0x70, 0x7c, 0x54, + 0xbe, 0xd8, 0x15, 0x3f, 0x35, 0x2a, 0x11, 0x36, 0xfa, 0x1c, 0x46, 0xeb, 0xd8, 0x7f, 0x89, 0xfd, + 0xe2, 0x24, 0xa5, 0x73, 0x5e, 0x4c, 0x24, 0x2d, 0x6c, 0x2c, 0x55, 0x67, 0x8f, 0x8f, 0xca, 0x85, + 0x80, 0xfe, 0xd2, 0x68, 0x70, 0x34, 0xb2, 0xda, 0x6c, 0xfc, 0x12, 0xfb, 0x01, 0xde, 0xee, 0x77, + 0xbb, 0xb8, 0x53, 0x9c, 0xd2, 0x56, 0x9b, 0x56, 0x27, 0x56, 0x9b, 0xcf, 0x0a, 0x9b, 0x21, 0x2d, + 0xd5, 0x57, 0x9b, 0x86, 0x80, 0x0e, 0xa0, 0xc0, 0xfe, 0xaa, 0x79, 0xdd, 0x2e, 0x6e, 0x91, 0x4f, + 0xaa, 0x38, 0x4d, 0x1b, 0xb8, 0xc4, 0x1b, 0x88, 0x57, 0x37, 0x96, 0xaa, 0xe5, 0xe3, 0xa3, 0xf2, + 0x65, 0x46, 0xbb, 0xd9, 0x92, 0x15, 0x5a, 0x33, 0x09, 0xaa, 0x64, 0x1c, 0x95, 0x56, 0x0b, 0x07, + 0x81, 0x8d, 0x7f, 0xda, 0xc7, 0x41, 0x58, 0x9c, 0xd1, 0xc6, 0xa1, 0xd5, 0x35, 0x1e, 0xb2, 0x71, + 0x38, 0xb4, 0xb0, 0xe9, 0xb3, 0x52, 0x7d, 0x1c, 0x1a, 0x02, 0xda, 0x02, 0xa8, 0xf4, 0x7a, 0x75, + 0x1c, 0x90, 0xc5, 0x58, 0x3c, 0x4f, 0x49, 0x5f, 0xe4, 0xa4, 0x77, 0xf1, 0x1e, 0xaf, 0x68, 0x2c, + 0x55, 0x2f, 0x1d, 0x1f, 0x95, 0xe7, 0x9c, 0x5e, 0xaf, 0x19, 0xb0, 0x22, 0x8d, 0xa8, 0x42, 0x83, + 0xf1, 0xfd, 0xd0, 0x0b, 0x31, 0x5f, 0x8a, 0xc5, 0x42, 0x8c, 0xef, 0x4a, 0x9d, 0xe8, 0xaf, 0x4f, + 0x0b, 0x9b, 0x7c, 0x59, 0xc7, 0xf9, 0xae, 0x20, 0x90, 0x6f, 0x71, 0xd9, 0x09, 0x9d, 0x3d, 0x27, + 0xc0, 0x7c, 0x79, 0x5c, 0xd0, 0xbe, 0x45, 0xbd, 0xb2, 0xf1, 0x90, 0x7d, 0x8b, 0x6d, 0x5e, 0xda, + 0x34, 0xac, 0x97, 0x18, 0x3d, 0xc2, 0x91, 0x68, 0xe0, 0x45, 0x34, 0x80, 0x23, 0xaf, 0xf0, 0x9e, + 0x99, 0x23, 0x11, 0x28, 0x5a, 0x85, 0xf1, 0x5d, 0xbc, 0xc7, 0x24, 0xc7, 0x45, 0x4a, 0xef, 0x42, + 0x44, 0x8f, 0xc9, 0x8c, 0x87, 0xec, 0xab, 0x20, 0xd4, 0x92, 0xd2, 0x42, 0x62, 0xa3, 0x9f, 0xe5, + 0x60, 0x41, 0x7c, 0xe1, 0x38, 0x7c, 0xe5, 0xf9, 0x2f, 0xdc, 0xee, 0x7e, 0xcd, 0xeb, 0x3e, 0x77, + 0xf7, 0x8b, 0xb3, 0x94, 0xf2, 0xb5, 0x98, 0xd0, 0x88, 0x41, 0x35, 0x96, 0xaa, 0x6f, 0x1f, 0x1f, + 0x95, 0x6f, 0x48, 0x01, 0x22, 0xeb, 0xc9, 0x82, 0x7c, 0xee, 0xee, 0x6b, 0x0d, 0xa7, 0xb5, 0x85, + 0x7e, 0x2b, 0x07, 0xf3, 0x7c, 0x74, 0x36, 0x6e, 0x79, 0x7e, 0x3b, 0xea, 0xc6, 0x1c, 0xed, 0x46, + 0x59, 0x7e, 0xad, 0x26, 0xa0, 0xc6, 0x52, 0xf5, 0xd6, 0xf1, 0x51, 0xd9, 0xe2, 0x8c, 0x6b, 0xfa, + 0xa2, 0xda, 0xd4, 0x89, 0x94, 0x86, 0xc8, 0x4a, 0x20, 0xc2, 0x7f, 0xcb, 0xc7, 0xcf, 0xb1, 0x8f, + 0xbb, 0x2d, 0x5c, 0x9c, 0xd7, 0x56, 0x82, 0x5e, 0x29, 0xa4, 0x32, 0xd9, 0x4a, 0x9a, 0x3d, 0x59, + 0xac, 0xaf, 0x04, 0x1d, 0x05, 0xfd, 0x14, 0x10, 0x67, 0x40, 0xa5, 0xdf, 0x76, 0x43, 0x3e, 0xc0, + 0x05, 0xda, 0xca, 0x65, 0x9d, 0xcf, 0x0a, 0x40, 0x63, 0xa9, 0x6a, 0x1d, 0x1f, 0x95, 0xaf, 0x0a, + 0x16, 0x3b, 0xa4, 0xca, 0x34, 0x30, 0x03, 0x71, 0x22, 0x79, 0xd7, 0xbd, 0xd6, 0x8b, 0x62, 0x51, + 0x93, 0xbc, 0xa4, 0x48, 0x88, 0xec, 0x8e, 0xd7, 0x7a, 0xa1, 0x4b, 0x5e, 0x52, 0x8b, 0x42, 0xb8, + 0xc8, 0x67, 0xc9, 0xc6, 0x41, 0xe8, 0xbb, 0x54, 0x76, 0x04, 0xc5, 0x4b, 0x94, 0xce, 0xa2, 0x90, + 0xc1, 0x49, 0x88, 0xc6, 0xbb, 0xac, 0xb7, 0x7c, 0x21, 0x34, 0x7d, 0xa5, 0x4e, 0x6b, 0xc6, 0x44, + 0x1e, 0xfd, 0x05, 0x98, 0xdb, 0x75, 0xbb, 0x6d, 0xef, 0x55, 0xb0, 0x8c, 0x83, 0x17, 0xa1, 0xd7, + 0xab, 0x33, 0x4d, 0xaf, 0x58, 0xa2, 0xed, 0x5e, 0x15, 0xcb, 0xdc, 0x04, 0xd3, 0x78, 0x58, 0xbd, + 0x79, 0x7c, 0x54, 0xbe, 0xfe, 0x8a, 0x55, 0x36, 0xdb, 0xac, 0xb6, 0xc9, 0x95, 0x45, 0xad, 0x71, + 0x73, 0x2b, 0x64, 0x09, 0xe8, 0x15, 0xc5, 0xcb, 0xda, 0x12, 0xd0, 0x2b, 0x85, 0x30, 0x88, 0x35, + 0xa8, 0x2f, 0x01, 0x1d, 0x05, 0x3d, 0x86, 0x71, 0x21, 0x1e, 0x8a, 0x8b, 0xda, 0xa7, 0x2b, 0x8a, + 0x1b, 0x0f, 0x99, 0x06, 0x24, 0x44, 0x8c, 0xfe, 0xe5, 0x0a, 0x28, 0xb4, 0x0e, 0x13, 0x54, 0x46, + 0x52, 0x91, 0x75, 0x85, 0x52, 0x42, 0x62, 0xa1, 0x8a, 0xf2, 0xc6, 0xc3, 0x6a, 0xf1, 0xf8, 0xa8, + 0x3c, 0xcb, 0xa4, 0x6c, 0x42, 0x50, 0x45, 0x04, 0xd0, 0x43, 0x18, 0xaa, 0xf4, 0x7a, 0xc5, 0xab, + 0x94, 0xce, 0x54, 0x44, 0xa7, 0xf1, 0xb0, 0x7a, 0xe1, 0xf8, 0xa8, 0x3c, 0xed, 0xf4, 0xf4, 0x61, + 0x11, 0x68, 0xb4, 0x07, 0x85, 0x7a, 0xd7, 0x7b, 0xf5, 0xbc, 0xe3, 0xbc, 0xc0, 0x42, 0xbc, 0x95, + 0xd3, 0xc5, 0x1b, 0xdd, 0xac, 0x02, 0x81, 0x60, 0x14, 0x72, 0x09, 0x7a, 0x64, 0x5b, 0x7c, 0xda, + 0xdf, 0xc3, 0x7e, 0x17, 0x87, 0x38, 0xe0, 0xa3, 0xbd, 0xa6, 0x6d, 0x8b, 0xf1, 0xea, 0xc6, 0x43, + 0xd6, 0xd2, 0x0b, 0x59, 0x6e, 0x1a, 0x7b, 0x82, 0x2a, 0xea, 0xc0, 0x85, 0xa8, 0x4c, 0x6c, 0x35, + 0xd7, 0x69, 0x53, 0xa5, 0x44, 0x53, 0xd1, 0x76, 0x73, 0xed, 0xf8, 0xa8, 0xbc, 0xa8, 0xb4, 0x65, + 0xda, 0x72, 0x92, 0x84, 0xd1, 0x53, 0x98, 0x58, 0xeb, 0x06, 0xa1, 0xd3, 0xe9, 0x60, 0xbf, 0x68, + 0x69, 0xd3, 0x27, 0xcb, 0x1b, 0x0f, 0x98, 0x10, 0x77, 0x45, 0x81, 0x3e, 0x7b, 0x12, 0x0e, 0xb5, + 0xe1, 0xbc, 0xba, 0xe7, 0x90, 0xef, 0xe5, 0x06, 0x25, 0x59, 0x34, 0x6c, 0x62, 0xe4, 0x4b, 0x79, + 0x50, 0xbd, 0x7a, 0x7c, 0x54, 0x2e, 0x69, 0xbb, 0x58, 0xfc, 0x13, 0x89, 0x93, 0x44, 0x7f, 0x85, + 0xc8, 0xe8, 0xca, 0xb3, 0xf5, 0xb5, 0xf6, 0x16, 0x2f, 0xa2, 0x4a, 0x27, 0xd1, 0xe7, 0xdf, 0xd2, + 0x65, 0xb4, 0x11, 0xa8, 0xf1, 0x80, 0xed, 0x14, 0x81, 0x73, 0xd8, 0x69, 0xba, 0x6d, 0xf9, 0x5d, + 0x36, 0x7b, 0x1c, 0x20, 0x26, 0xa4, 0x8d, 0x44, 0xd0, 0x8f, 0x60, 0x46, 0xd6, 0xb0, 0x15, 0x77, + 0x33, 0x7d, 0xc5, 0xd1, 0x41, 0x2a, 0xed, 0x25, 0x17, 0x5c, 0x8c, 0x18, 0xf9, 0xaa, 0x88, 0xc2, + 0xfa, 0xd8, 0xf7, 0xfa, 0xbd, 0xe2, 0x2d, 0x6d, 0x5a, 0x64, 0x79, 0xe3, 0x01, 0xfb, 0xaa, 0x88, + 0xae, 0xdb, 0xdc, 0x27, 0x25, 0xfa, 0xbc, 0x48, 0x40, 0xb2, 0x4f, 0xef, 0xac, 0x71, 0x29, 0xff, + 0xb6, 0xf6, 0xb1, 0x8b, 0x62, 0x31, 0xc5, 0x7d, 0xd7, 0x24, 0xd0, 0x25, 0x36, 0x72, 0x60, 0x66, + 0xf3, 0x45, 0xe8, 0xac, 0x1d, 0x92, 0x53, 0x9b, 0xdd, 0xef, 0xe0, 0xe2, 0x6d, 0x4d, 0x30, 0xe9, + 0x95, 0x62, 0x7e, 0xbd, 0x17, 0xa1, 0xd3, 0x74, 0x69, 0x71, 0xd3, 0xef, 0xc7, 0x14, 0xec, 0x18, + 0x41, 0x22, 0xfb, 0x48, 0x49, 0x25, 0x08, 0xdc, 0xfd, 0xee, 0x21, 0xee, 0x86, 0xc5, 0x77, 0x12, + 0x4d, 0x44, 0x95, 0x8d, 0x07, 0x4c, 0xf6, 0xd1, 0x26, 0x1c, 0x59, 0x9c, 0x6c, 0x21, 0x42, 0x41, + 0x75, 0x98, 0x5c, 0xeb, 0x86, 0x78, 0x9f, 0x1d, 0x18, 0x8b, 0x77, 0xb4, 0x43, 0x89, 0x52, 0xd3, + 0x78, 0xc0, 0x54, 0x21, 0x37, 0x2a, 0xd2, 0xcf, 0x24, 0x0a, 0x6c, 0x15, 0x60, 0x5c, 0x9c, 0x0a, + 0x9f, 0x0c, 0x8f, 0x8f, 0x15, 0xc6, 0xad, 0x55, 0x18, 0xd9, 0x75, 0xc2, 0xd6, 0x01, 0xfa, 0x1c, + 0x46, 0x9e, 0xba, 0xdd, 0x76, 0x50, 0xcc, 0x5d, 0x1b, 0xa2, 0x07, 0x07, 0x76, 0x64, 0xa5, 0x95, + 0xa4, 0xa2, 0xba, 0xf0, 0x8b, 0xa3, 0xf2, 0xb9, 0xe3, 0xa3, 0xf2, 0xf9, 0x17, 0x04, 0x4c, 0x39, + 0xb7, 0x32, 0x3c, 0xeb, 0x9f, 0xe5, 0x61, 0x42, 0x42, 0xa3, 0x45, 0x18, 0x26, 0xff, 0xd3, 0x03, + 0xf0, 0x44, 0x75, 0xfc, 0xf8, 0xa8, 0x3c, 0x4c, 0xf0, 0x6c, 0x5a, 0x8a, 0x96, 0x60, 0x72, 0xdd, + 0x73, 0xda, 0x75, 0xdc, 0xf2, 0x71, 0x18, 0xd0, 0x13, 0xee, 0x78, 0xb5, 0x70, 0x7c, 0x54, 0x9e, + 0xea, 0x78, 0x4e, 0xbb, 0x19, 0xb0, 0x72, 0x5b, 0x05, 0x22, 0x14, 0xe9, 0xf1, 0x6c, 0x28, 0xa2, + 0x48, 0x8e, 0x31, 0x36, 0x2d, 0x45, 0x4f, 0x60, 0xf4, 0x91, 0xdb, 0x21, 0x52, 0x68, 0x98, 0xf6, + 0x7f, 0x31, 0xde, 0xff, 0xbb, 0xac, 0x7a, 0xa5, 0x1b, 0xfa, 0xaf, 0xd9, 0xe9, 0xe5, 0x39, 0x2d, + 0x50, 0x06, 0xc2, 0x29, 0xa0, 0xfb, 0x30, 0x56, 0xef, 0xef, 0xd1, 0xee, 0x8f, 0xd0, 0xc6, 0xe8, + 0x16, 0x13, 0xf4, 0xf7, 0x9a, 0x64, 0x08, 0x0a, 0x82, 0x00, 0x2b, 0x7d, 0x04, 0x93, 0x0a, 0x79, + 0x54, 0x80, 0xa1, 0x17, 0xf8, 0x35, 0x1b, 0xbb, 0x4d, 0xfe, 0x44, 0xb3, 0x30, 0xf2, 0xd2, 0xe9, + 0xf4, 0x31, 0x1d, 0xea, 0x84, 0xcd, 0x7e, 0x7c, 0x9c, 0xff, 0x30, 0x67, 0xfd, 0xf1, 0x28, 0x14, + 0x56, 0xbd, 0x20, 0x24, 0xc7, 0x69, 0x79, 0x2e, 0xb8, 0x01, 0xa3, 0xa4, 0x6c, 0x6d, 0x99, 0xf3, + 0x6f, 0xf2, 0xf8, 0xa8, 0x3c, 0x76, 0xe0, 0x05, 0x61, 0xd3, 0x6d, 0xdb, 0xbc, 0x0a, 0xbd, 0x03, + 0xe3, 0x1b, 0x5e, 0x1b, 0x53, 0xa6, 0x50, 0xb2, 0xd5, 0xe9, 0xe3, 0xa3, 0xf2, 0x44, 0xd7, 0x6b, + 0x63, 0x7a, 0x34, 0xb5, 0x65, 0x35, 0x6a, 0xf0, 0x23, 0x25, 0xe3, 0x5d, 0x95, 0xf0, 0x8e, 0x9c, + 0x21, 0x7f, 0x75, 0x54, 0x7e, 0x7f, 0xdf, 0x0d, 0x0f, 0xfa, 0x7b, 0x77, 0x5b, 0xde, 0xe1, 0xbd, + 0x7d, 0xdf, 0x79, 0xe9, 0x86, 0x74, 0xa5, 0x38, 0x9d, 0x7b, 0xd2, 0xec, 0xe1, 0xf4, 0x5c, 0x6e, + 0x6e, 0xa9, 0xbf, 0x0e, 0x42, 0x7c, 0x48, 0x28, 0xf1, 0x13, 0xe7, 0x2e, 0xcc, 0x56, 0xda, 0x6d, + 0x97, 0x61, 0x6c, 0xf9, 0x6e, 0xb7, 0xe5, 0xf6, 0x9c, 0x4e, 0x40, 0xe7, 0x60, 0xa2, 0x7a, 0xe3, + 0xf8, 0xa8, 0x5c, 0x76, 0x64, 0x7d, 0xb3, 0x27, 0x01, 0x14, 0x1e, 0x1a, 0x09, 0xa0, 0x87, 0x30, + 0xbe, 0xbc, 0x51, 0xa7, 0xe7, 0xd1, 0xe2, 0x08, 0x25, 0x46, 0xbf, 0xfc, 0x76, 0x37, 0xa0, 0x43, + 0x53, 0x09, 0x48, 0x40, 0xf4, 0x3e, 0x4c, 0x6d, 0xf5, 0xf7, 0x3a, 0x6e, 0x6b, 0x7b, 0xbd, 0xfe, + 0x14, 0xbf, 0xa6, 0x07, 0xf9, 0x29, 0xa6, 0xb7, 0xf5, 0x68, 0x79, 0x33, 0xec, 0x04, 0xcd, 0x17, + 0xf8, 0xb5, 0xad, 0xc1, 0x45, 0x78, 0xf5, 0xfa, 0x2a, 0xc1, 0x1b, 0x4b, 0xe0, 0x05, 0xc1, 0x81, + 0x8a, 0xc7, 0xe0, 0xd0, 0x3d, 0x00, 0x76, 0x3c, 0xaa, 0xb4, 0xdb, 0xec, 0x9c, 0x3f, 0x51, 0x3d, + 0x7f, 0x7c, 0x54, 0x9e, 0xe4, 0x07, 0x2a, 0xa7, 0xdd, 0xf6, 0x6d, 0x05, 0x04, 0xd5, 0x60, 0xdc, + 0xf6, 0x18, 0x83, 0xf9, 0xe9, 0xfe, 0xbc, 0x3c, 0xdd, 0xb3, 0x62, 0x6e, 0xcf, 0xe1, 0xbf, 0xd4, + 0x51, 0x0a, 0x08, 0x54, 0x86, 0xb1, 0x0d, 0xaf, 0xe6, 0xb4, 0x0e, 0xd8, 0x19, 0x7f, 0xbc, 0x3a, + 0x72, 0x7c, 0x54, 0xce, 0x7d, 0xdb, 0x16, 0xa5, 0xe8, 0x25, 0x4c, 0x46, 0x13, 0x15, 0x14, 0x27, + 0x29, 0xfb, 0xb6, 0x8f, 0x8f, 0xca, 0xf3, 0x01, 0x2d, 0x6e, 0x92, 0xa9, 0x57, 0x38, 0xf8, 0x35, + 0x56, 0x81, 0xda, 0x10, 0xea, 0xc0, 0x95, 0x1d, 0xb2, 0xcb, 0xee, 0x75, 0x70, 0x54, 0x5c, 0x09, + 0x02, 0xec, 0x13, 0x5a, 0x6b, 0xcb, 0xd4, 0x04, 0x30, 0xc1, 0xcf, 0x1e, 0x51, 0x4f, 0x88, 0x40, + 0x64, 0x20, 0x4d, 0x57, 0xfd, 0xb8, 0xb2, 0x89, 0x59, 0xff, 0x3c, 0x07, 0x68, 0xb3, 0x87, 0xbb, + 0xf5, 0xfa, 0x2a, 0xf9, 0x74, 0xc4, 0x97, 0x73, 0x1b, 0xc6, 0xc9, 0x96, 0x42, 0x16, 0x09, 0xff, + 0x76, 0xa6, 0x8e, 0x8f, 0xca, 0xe3, 0x7d, 0x5e, 0x66, 0xcb, 0x5a, 0xf4, 0x2d, 0x98, 0x60, 0xb3, + 0x49, 0xa6, 0x3c, 0x4f, 0xa7, 0x7c, 0xe6, 0xf8, 0xa8, 0x0c, 0x7c, 0xca, 0xc9, 0x74, 0x47, 0x00, + 0xe8, 0x26, 0x0c, 0x6d, 0x6f, 0xaf, 0xd3, 0x0f, 0x68, 0xa8, 0x7a, 0xf1, 0xf8, 0xa8, 0x3c, 0x14, + 0x86, 0x9d, 0x5f, 0x1d, 0x95, 0xc7, 0x97, 0xfb, 0x4c, 0xb6, 0xda, 0xa4, 0x1e, 0xdd, 0x84, 0x31, + 0xa1, 0x0d, 0x0d, 0x47, 0x5f, 0x2e, 0x57, 0x73, 0x6c, 0x51, 0x67, 0xfd, 0x06, 0x4c, 0x2a, 0x7d, + 0x27, 0xa2, 0x8d, 0xfc, 0x4f, 0x3b, 0x3c, 0xc5, 0x44, 0x5b, 0x8b, 0x8c, 0x89, 0x96, 0x5a, 0x7f, + 0x38, 0x05, 0x05, 0xd2, 0x6b, 0x4d, 0x42, 0x68, 0xbd, 0xcf, 0x0d, 0xea, 0xbd, 0xca, 0x95, 0x7c, + 0x26, 0x57, 0xea, 0x30, 0xb6, 0xf2, 0x55, 0xcf, 0xf5, 0x71, 0xc0, 0xed, 0x83, 0xa5, 0xbb, 0xcc, + 0xec, 0x7b, 0x57, 0x98, 0x7d, 0xef, 0x6e, 0x0b, 0xb3, 0x6f, 0xf5, 0x0a, 0xdf, 0x12, 0x2e, 0x60, + 0x86, 0x12, 0xcd, 0xde, 0xcf, 0xff, 0x5b, 0x39, 0x67, 0x0b, 0x4a, 0xe8, 0x5b, 0x30, 0xfa, 0xc8, + 0xf3, 0x0f, 0x9d, 0x90, 0x33, 0x85, 0x89, 0x5f, 0x5a, 0xa2, 0x89, 0x5f, 0x5a, 0x82, 0x1e, 0xc1, + 0x8c, 0xed, 0xf5, 0x43, 0xbc, 0xed, 0x09, 0x56, 0x32, 0x29, 0x4c, 0x77, 0x69, 0x9f, 0xd4, 0x34, + 0x43, 0x2f, 0xa9, 0x3a, 0xda, 0x31, 0x2c, 0xb4, 0x02, 0x33, 0x9a, 0xb5, 0x25, 0x28, 0x8e, 0xd2, + 0x4f, 0x81, 0x9d, 0x44, 0x35, 0x1b, 0x8d, 0x2a, 0x4f, 0x62, 0x48, 0x68, 0xc3, 0xa4, 0xea, 0x8e, + 0xd1, 0x1e, 0x0d, 0x54, 0x67, 0x4d, 0xca, 0x2c, 0x86, 0xf3, 0xbc, 0xa3, 0xf2, 0x6c, 0x33, 0xce, + 0x6d, 0x34, 0x6c, 0xcb, 0x8a, 0xd5, 0x56, 0x6f, 0x70, 0x2e, 0x5f, 0x96, 0x63, 0x4f, 0x9e, 0x76, + 0xec, 0x38, 0x4d, 0x22, 0x41, 0xe5, 0xee, 0x30, 0x41, 0x7b, 0xcb, 0x2c, 0x7f, 0x62, 0x77, 0x50, + 0x65, 0x8b, 0xdc, 0x27, 0xd6, 0x61, 0x64, 0x27, 0x70, 0xf6, 0x99, 0x64, 0x99, 0x59, 0xba, 0xce, + 0x7b, 0x14, 0x5f, 0x7d, 0xd4, 0x58, 0x4c, 0x01, 0xe9, 0xa7, 0x70, 0x9e, 0x5a, 0xc2, 0x55, 0x8d, + 0x80, 0xd6, 0xa1, 0xef, 0x01, 0xf0, 0x5e, 0x91, 0xe3, 0xd2, 0x24, 0xd7, 0xe9, 0xb4, 0x41, 0x56, + 0x7a, 0xbd, 0xea, 0x55, 0x3e, 0xbe, 0x79, 0x39, 0x3e, 0xed, 0x00, 0x65, 0x2b, 0x44, 0xd0, 0xe7, + 0x30, 0x45, 0x05, 0x8f, 0x98, 0xd1, 0x29, 0x3a, 0xa3, 0xd4, 0x9e, 0x4c, 0x65, 0x89, 0x61, 0x3e, + 0x35, 0x04, 0xf4, 0x17, 0x61, 0x8e, 0x93, 0x8b, 0x9d, 0x5d, 0xa7, 0xf9, 0x59, 0x5d, 0xeb, 0x9e, + 0x0e, 0x53, 0xbd, 0xc3, 0x7b, 0x6a, 0xc9, 0x9e, 0xa6, 0x9e, 0x66, 0x6d, 0x73, 0x33, 0x68, 0x0d, + 0xce, 0xef, 0x04, 0x58, 0x1b, 0xc3, 0x0c, 0x95, 0xe2, 0xf4, 0x18, 0xd6, 0x0f, 0x70, 0x33, 0x6d, + 0x1c, 0x71, 0x3c, 0x64, 0x03, 0x5a, 0xf6, 0xbd, 0x5e, 0x6c, 0x8d, 0x9f, 0xa7, 0x1c, 0xa1, 0x56, + 0x85, 0xb6, 0xef, 0xf5, 0x9a, 0xe9, 0x0b, 0xdd, 0x80, 0x8d, 0x7e, 0x0c, 0xf3, 0x91, 0xf1, 0x73, + 0xd9, 0x75, 0xf6, 0xbb, 0x5e, 0x10, 0xba, 0xad, 0xb5, 0x65, 0x6a, 0x47, 0xe4, 0xc2, 0x3b, 0x32, + 0x9e, 0x36, 0xdb, 0x12, 0x44, 0x17, 0xde, 0x29, 0x54, 0xd0, 0x0f, 0x61, 0x9a, 0xb7, 0xc5, 0x8d, + 0xed, 0x17, 0xb2, 0x17, 0x9a, 0x04, 0xe6, 0x86, 0x6f, 0xf1, 0x93, 0x29, 0x38, 0x3a, 0x2d, 0xf4, + 0x25, 0x4c, 0x3e, 0x7b, 0x54, 0xb1, 0x71, 0xd0, 0xf3, 0xba, 0x01, 0xe6, 0xc6, 0xc3, 0xab, 0x9c, + 0xf4, 0xb3, 0x47, 0x95, 0x4a, 0x3f, 0x3c, 0xc0, 0xdd, 0xd0, 0x6d, 0x39, 0x21, 0x16, 0x50, 0xcc, + 0xa2, 0x7f, 0xf8, 0xdc, 0x69, 0xfa, 0xbc, 0x44, 0x19, 0x85, 0x4a, 0xce, 0xfa, 0x02, 0x26, 0xe4, + 0xb2, 0x47, 0x63, 0x30, 0x54, 0xe9, 0x74, 0x0a, 0xe7, 0xc8, 0x1f, 0xf5, 0xfa, 0x6a, 0x21, 0x87, + 0x66, 0x00, 0xa2, 0x6f, 0xbd, 0x90, 0x47, 0x53, 0x91, 0xed, 0xa2, 0x30, 0x44, 0xe1, 0x7b, 0xbd, + 0xc2, 0x30, 0x42, 0x71, 0xa3, 0x49, 0x61, 0xc4, 0xfa, 0x04, 0x26, 0xe4, 0x40, 0xd0, 0x79, 0x98, + 0xdc, 0xd9, 0xa8, 0x6f, 0xad, 0xd4, 0xd6, 0x1e, 0xad, 0xad, 0x2c, 0x17, 0xce, 0xa1, 0x2b, 0x70, + 0x69, 0xbb, 0xbe, 0xda, 0x5c, 0xae, 0x36, 0xd7, 0x37, 0x6b, 0x95, 0xf5, 0xe6, 0x96, 0xbd, 0xf9, + 0xc5, 0xf7, 0x9b, 0xdb, 0x3b, 0x1b, 0x1b, 0x2b, 0xeb, 0x85, 0x9c, 0xf5, 0x9f, 0x73, 0x09, 0x79, + 0x42, 0xd4, 0x6b, 0x7e, 0x14, 0xdc, 0x88, 0xf6, 0x41, 0xaa, 0x5e, 0x8b, 0x63, 0x24, 0x65, 0x9f, + 0x0a, 0x44, 0xb6, 0x88, 0x2d, 0xc2, 0xa8, 0x96, 0xd7, 0x51, 0xb7, 0x88, 0x1e, 0x2f, 0xb3, 0x65, + 0x2d, 0x5a, 0x52, 0x36, 0x93, 0xa1, 0x48, 0x3f, 0x16, 0x9b, 0x89, 0x2a, 0x58, 0xe4, 0xb6, 0xb2, + 0xa4, 0x58, 0x72, 0x86, 0x23, 0x1c, 0x83, 0x20, 0x93, 0x70, 0x56, 0x3f, 0xe5, 0x53, 0x45, 0x9f, + 0x24, 0x0c, 0x4f, 0x6c, 0x84, 0x54, 0x16, 0xc5, 0xbe, 0xc8, 0x84, 0x4d, 0xa9, 0x0c, 0x23, 0xeb, + 0xde, 0xbe, 0xdb, 0xe5, 0x83, 0x9c, 0x38, 0x3e, 0x2a, 0x8f, 0x74, 0x48, 0x81, 0xcd, 0xca, 0xad, + 0xbf, 0x31, 0xa4, 0x8a, 0x2d, 0x79, 0xec, 0xc8, 0x19, 0x8f, 0x1d, 0xdf, 0x82, 0x09, 0x7e, 0x1a, + 0x5e, 0x5b, 0xe6, 0x14, 0xe9, 0x36, 0x2c, 0x6c, 0xab, 0x6e, 0xdb, 0x8e, 0x00, 0x88, 0xc2, 0xc8, + 0xf6, 0x64, 0xaa, 0x30, 0x0e, 0x45, 0x0a, 0x23, 0xdf, 0xb5, 0x99, 0xc2, 0x18, 0x81, 0x90, 0x89, + 0x54, 0x6f, 0xa6, 0x86, 0xa3, 0x89, 0x54, 0xef, 0xa0, 0xf4, 0x7b, 0xa7, 0x8f, 0x01, 0x2a, 0xbb, + 0x75, 0xaa, 0x2e, 0xd9, 0x1b, 0x7c, 0xeb, 0xa4, 0x8b, 0xdc, 0x79, 0x15, 0x70, 0x85, 0xcb, 0x57, + 0x35, 0x4b, 0x05, 0x1a, 0x55, 0x61, 0xba, 0xf2, 0x9b, 0x7d, 0x1f, 0xaf, 0xb5, 0xc9, 0x77, 0x12, + 0x32, 0x15, 0x7a, 0x82, 0xdf, 0x6a, 0x90, 0x8a, 0xa6, 0xcb, 0x6b, 0x14, 0x02, 0x3a, 0x0a, 0xda, + 0x84, 0x0b, 0x8f, 0x6b, 0xc2, 0x14, 0x51, 0x69, 0xb5, 0xbc, 0x7e, 0x37, 0xe4, 0xfb, 0xe5, 0xf5, + 0xe3, 0xa3, 0xf2, 0x95, 0xfd, 0x56, 0x64, 0xcd, 0x70, 0x58, 0xb5, 0xba, 0x61, 0x26, 0x70, 0xad, + 0x0e, 0xcc, 0x3c, 0xc6, 0x21, 0x59, 0x4a, 0x42, 0xf9, 0xc9, 0x9e, 0x93, 0x4f, 0x61, 0x72, 0xd7, + 0x0d, 0x0f, 0xf4, 0xc3, 0x25, 0xe5, 0xc0, 0x2b, 0x37, 0x3c, 0x10, 0x87, 0x4b, 0xf5, 0x33, 0x57, + 0xc0, 0xad, 0x15, 0x38, 0xcf, 0x5b, 0x93, 0xba, 0xd6, 0x92, 0x4e, 0x30, 0x17, 0x9d, 0x56, 0x55, + 0x82, 0x3a, 0x99, 0x3f, 0xce, 0xc3, 0x5c, 0xed, 0xc0, 0xe9, 0xee, 0xe3, 0x2d, 0x27, 0x08, 0x5e, + 0x79, 0x7e, 0x5b, 0xe9, 0x3c, 0xbd, 0x17, 0x4c, 0x74, 0x9e, 0x5e, 0xfe, 0x2d, 0xc1, 0xe4, 0x66, + 0xa7, 0x2d, 0x70, 0xb8, 0x5e, 0x4a, 0xdb, 0xf2, 0x3a, 0xed, 0x66, 0x4f, 0xd0, 0x52, 0x81, 0x08, + 0xce, 0x06, 0x7e, 0x25, 0x71, 0x86, 0x22, 0x9c, 0x2e, 0x7e, 0xa5, 0xe0, 0x28, 0x40, 0x68, 0x05, + 0x2e, 0xd4, 0x71, 0xcb, 0xeb, 0xb6, 0x1f, 0x39, 0xad, 0xd0, 0xf3, 0xd9, 0xf5, 0xc8, 0x70, 0xa4, + 0x27, 0x04, 0xb4, 0xb2, 0xf9, 0x9c, 0xd6, 0xb2, 0x5b, 0x11, 0x3b, 0x89, 0x81, 0x36, 0xe9, 0xe5, + 0x0a, 0xbd, 0x5d, 0xe7, 0xd7, 0xb2, 0x37, 0xef, 0xca, 0xeb, 0xf6, 0x9a, 0x8f, 0xe9, 0xa2, 0x70, + 0x3a, 0x52, 0x71, 0x97, 0x62, 0x97, 0x0a, 0x17, 0x01, 0x69, 0x4b, 0x22, 0xd6, 0x0e, 0x4c, 0x6f, + 0x75, 0xfa, 0xfb, 0x6e, 0x97, 0x88, 0x81, 0x3a, 0xfe, 0x29, 0x5a, 0x06, 0x88, 0x0a, 0xb8, 0x71, + 0x42, 0xd8, 0xaf, 0xa2, 0x8a, 0xc6, 0x43, 0xfe, 0x21, 0xd1, 0x12, 0xaa, 0x20, 0xd9, 0x0a, 0x9e, + 0xf5, 0xd7, 0x86, 0x00, 0xf1, 0x09, 0xa8, 0x87, 0x4e, 0x88, 0xeb, 0x38, 0x24, 0xc2, 0x76, 0x1e, + 0xf2, 0xf2, 0x8c, 0x3d, 0x7a, 0x7c, 0x54, 0xce, 0xbb, 0x6d, 0x3b, 0xbf, 0xb6, 0x8c, 0xde, 0x85, + 0x11, 0x0a, 0x46, 0xf9, 0x3f, 0x23, 0xdb, 0x53, 0x29, 0x30, 0xc9, 0x11, 0x90, 0x3f, 0x6d, 0x06, + 0x8c, 0xde, 0x83, 0x89, 0x65, 0xdc, 0xc1, 0xfb, 0x4e, 0xe8, 0x89, 0xaf, 0x9b, 0x9d, 0x5a, 0x45, + 0xa1, 0xb2, 0xe6, 0x22, 0x48, 0xa2, 0x1d, 0xdb, 0xd8, 0x09, 0xbc, 0xae, 0xaa, 0x1d, 0xfb, 0xb4, + 0x44, 0xd5, 0x8e, 0x19, 0x0c, 0xfa, 0xfd, 0x1c, 0x4c, 0x56, 0xba, 0x5d, 0x7e, 0x1a, 0x0c, 0x38, + 0xd7, 0xe7, 0xee, 0x4a, 0xaf, 0x85, 0x75, 0x67, 0x0f, 0x77, 0x1a, 0x4e, 0xa7, 0x8f, 0x83, 0xea, + 0x97, 0x44, 0x61, 0xf9, 0x2f, 0x47, 0xe5, 0x4f, 0x4e, 0x71, 0xbe, 0x8b, 0xfc, 0x1f, 0xb6, 0x7d, + 0xc7, 0x0d, 0x03, 0x7a, 0xf3, 0x18, 0x35, 0xa8, 0x7e, 0x37, 0x4a, 0x3f, 0xd0, 0x3b, 0x30, 0xc2, + 0xce, 0x9b, 0x4c, 0xc9, 0xa6, 0xb2, 0x38, 0x76, 0xd0, 0xb4, 0x19, 0x84, 0x75, 0x43, 0xee, 0x77, + 0x6b, 0xcb, 0x69, 0x53, 0x60, 0xd5, 0x60, 0xf1, 0x31, 0x0e, 0x6d, 0x1c, 0xe0, 0x50, 0x2c, 0x5a, + 0xba, 0xe4, 0x22, 0x13, 0xc9, 0x18, 0xfd, 0x2d, 0x91, 0xe9, 0x7c, 0xb0, 0x85, 0x2a, 0x6a, 0xac, + 0xbf, 0x9a, 0x83, 0x72, 0xcd, 0xc7, 0x6c, 0xbf, 0x4f, 0x21, 0x94, 0x2d, 0x4c, 0x16, 0xb9, 0x23, + 0x47, 0x3e, 0xaa, 0x25, 0x5c, 0xe2, 0xce, 0x1a, 0x27, 0x3b, 0x15, 0x5a, 0xcf, 0x61, 0xce, 0xc6, + 0x5d, 0xfc, 0x8a, 0x9c, 0x66, 0xb5, 0x53, 0x5c, 0x19, 0x46, 0xd8, 0x97, 0x97, 0x18, 0x02, 0x2b, + 0x3f, 0xdd, 0x21, 0xd5, 0xfa, 0x47, 0x79, 0x28, 0xb0, 0xe1, 0x56, 0xbd, 0xf0, 0x64, 0xe3, 0xe3, + 0x23, 0xc8, 0x0f, 0x38, 0xd7, 0xde, 0x8a, 0xb8, 0x3d, 0x14, 0x29, 0x07, 0xb4, 0xab, 0x64, 0x8f, + 0x13, 0x95, 0x64, 0x40, 0x6c, 0x15, 0x30, 0x0b, 0x10, 0x1d, 0x10, 0x5d, 0x05, 0x7c, 0xee, 0xd1, + 0xef, 0xe4, 0x60, 0x94, 0xad, 0xab, 0xec, 0x95, 0xbb, 0x7b, 0x36, 0x2b, 0xb7, 0x10, 0xd2, 0xbf, + 0xd4, 0xef, 0x88, 0xd5, 0x59, 0xff, 0x24, 0x0f, 0x17, 0x14, 0x5e, 0x31, 0xb1, 0x84, 0xde, 0x61, + 0xba, 0x8d, 0xc2, 0x30, 0x6a, 0x53, 0xa3, 0xd6, 0xeb, 0xe8, 0xa4, 0x4c, 0x39, 0xf7, 0x0e, 0x8c, + 0x93, 0x21, 0xc5, 0xcd, 0x6f, 0x74, 0x87, 0x65, 0xa0, 0xa2, 0xfa, 0xc4, 0xdc, 0xbb, 0x07, 0xe3, + 0xf4, 0x4f, 0x32, 0x23, 0xc3, 0xe9, 0x33, 0x22, 0x81, 0x90, 0x0b, 0xf0, 0xc4, 0x73, 0xbb, 0xcf, + 0x70, 0x78, 0xe0, 0x09, 0x63, 0xe5, 0x1a, 0x91, 0x83, 0xff, 0x9f, 0xe7, 0x76, 0x9b, 0x87, 0xb4, + 0xf8, 0xb4, 0xe6, 0x9d, 0x88, 0xa0, 0xad, 0x10, 0xb7, 0xee, 0x43, 0x81, 0x88, 0xac, 0x93, 0x2f, + 0x2d, 0x6b, 0x16, 0xd0, 0x63, 0x1c, 0x56, 0x3d, 0x6d, 0x33, 0xb5, 0xa6, 0x61, 0x72, 0xcb, 0xed, + 0xee, 0x8b, 0x9f, 0x7f, 0x34, 0x04, 0x53, 0xec, 0x37, 0x9f, 0x81, 0x98, 0xca, 0x93, 0x3b, 0x89, + 0xca, 0xf3, 0x21, 0x4c, 0xf3, 0xeb, 0x2c, 0xec, 0xd3, 0x6b, 0x0e, 0x36, 0x1f, 0xf4, 0xc8, 0xc0, + 0xae, 0xb3, 0x9a, 0x2f, 0x59, 0x8d, 0xad, 0x03, 0xa2, 0x75, 0x98, 0x61, 0x05, 0x8f, 0xb0, 0x13, + 0xf6, 0x23, 0xab, 0xc7, 0x79, 0x7e, 0x6a, 0x10, 0xc5, 0x4c, 0x9e, 0x71, 0x5a, 0xcf, 0x79, 0xa1, + 0x1d, 0xc3, 0x45, 0x9f, 0xc3, 0xf9, 0x2d, 0xdf, 0xfb, 0xea, 0xb5, 0xa2, 0xe4, 0x31, 0x91, 0x3e, + 0x77, 0x7c, 0x54, 0xbe, 0xd0, 0x23, 0x55, 0x4d, 0x55, 0xd5, 0x8b, 0x43, 0x93, 0x35, 0xb5, 0x16, + 0x54, 0x3d, 0xdf, 0xed, 0xee, 0xd3, 0xd9, 0x1c, 0x67, 0x6b, 0xca, 0x0d, 0x9a, 0x7b, 0xb4, 0xd0, + 0x96, 0xd5, 0x31, 0xe3, 0xe3, 0xd8, 0x60, 0xe3, 0xe3, 0x7d, 0x80, 0x75, 0xcf, 0x69, 0x57, 0x3a, + 0x9d, 0x5a, 0x25, 0xa0, 0x26, 0x07, 0xd5, 0xe4, 0xee, 0x74, 0x3a, 0xcd, 0x96, 0x13, 0xd8, 0x0a, + 0xcc, 0x93, 0xe1, 0xf1, 0xd1, 0xc2, 0x98, 0x7d, 0x7e, 0xdd, 0x6d, 0xe1, 0x6e, 0x80, 0x77, 0x1d, + 0xbf, 0xeb, 0x76, 0xf7, 0x03, 0xeb, 0xbf, 0x0e, 0xc3, 0xb8, 0x1c, 0xf2, 0x5d, 0xf5, 0xd8, 0xc3, + 0x55, 0x23, 0x2a, 0xa1, 0x22, 0xb3, 0x88, 0xad, 0x40, 0xa0, 0x4b, 0xec, 0xee, 0x94, 0x29, 0x65, + 0x63, 0x64, 0x75, 0x3b, 0xbd, 0x1e, 0xbb, 0x21, 0x9d, 0x87, 0xfc, 0x72, 0x95, 0xf2, 0x7f, 0x9c, + 0xed, 0x04, 0xed, 0x3d, 0x3b, 0xbf, 0x5c, 0x25, 0xab, 0x6c, 0x73, 0x6d, 0xb9, 0x46, 0x59, 0x39, + 0xce, 0x56, 0x99, 0xe7, 0xb6, 0x5b, 0x36, 0x2d, 0x25, 0xb5, 0xf5, 0xca, 0xb3, 0x75, 0xce, 0x2e, + 0x5a, 0x1b, 0x38, 0x87, 0x1d, 0x9b, 0x96, 0x92, 0xa3, 0x02, 0x3b, 0xe1, 0xd6, 0xbc, 0x6e, 0xe8, + 0x7b, 0x9d, 0x80, 0x6a, 0xb4, 0xe3, 0x6c, 0x3a, 0xf9, 0xd1, 0xb8, 0xc5, 0xab, 0xec, 0x18, 0x28, + 0xda, 0x85, 0x85, 0x4a, 0xfb, 0xa5, 0xd3, 0x6d, 0xe1, 0x36, 0xab, 0xd9, 0xf5, 0xfc, 0x17, 0xcf, + 0x3b, 0xde, 0xab, 0x80, 0xf2, 0x7b, 0x9c, 0x5b, 0x92, 0x38, 0x88, 0x38, 0x69, 0xbf, 0x12, 0x40, + 0x76, 0x1a, 0x36, 0x91, 0x92, 0xb5, 0x8e, 0xd7, 0x6f, 0xf3, 0x59, 0xa0, 0x52, 0xb2, 0x45, 0x0a, + 0x6c, 0x56, 0x4e, 0xb8, 0xb4, 0x5a, 0x7f, 0x46, 0xed, 0x36, 0x9c, 0x4b, 0x07, 0xc1, 0xa1, 0x4d, + 0xca, 0xd0, 0x4d, 0x18, 0x13, 0xa7, 0x1e, 0x66, 0xfe, 0xa5, 0x16, 0x46, 0x71, 0xda, 0x11, 0x75, + 0xe4, 0x93, 0xb0, 0x71, 0xcb, 0x7b, 0x89, 0xfd, 0xd7, 0x35, 0xaf, 0x8d, 0x85, 0x95, 0x81, 0x9f, + 0xa2, 0x59, 0x45, 0xb3, 0x45, 0x6a, 0x6c, 0x1d, 0x90, 0x34, 0xc0, 0x14, 0xa7, 0x80, 0x3a, 0x24, + 0xf1, 0x06, 0x98, 0x62, 0x15, 0xd8, 0xa2, 0x0e, 0x2d, 0xc3, 0x85, 0x4a, 0x3f, 0xf4, 0x0e, 0x9d, + 0xd0, 0x6d, 0xed, 0xf4, 0xf6, 0x7d, 0x87, 0x34, 0x52, 0xa0, 0x08, 0xf4, 0x68, 0xe7, 0x88, 0xca, + 0x66, 0x9f, 0xd7, 0xda, 0x49, 0x84, 0x27, 0xc3, 0xe3, 0x93, 0x85, 0xa9, 0x27, 0xc3, 0xe3, 0x53, + 0x85, 0xe9, 0x27, 0xc3, 0xe3, 0xd3, 0x85, 0x19, 0xeb, 0x01, 0x5c, 0x60, 0x72, 0xe6, 0xc4, 0x0a, + 0xbf, 0xb5, 0x05, 0x50, 0xc7, 0x87, 0x4e, 0xef, 0xc0, 0x23, 0x2b, 0xb2, 0xaa, 0xfe, 0xe2, 0x0a, + 0x23, 0x92, 0x0e, 0x31, 0xbc, 0xa2, 0xf1, 0x50, 0x9c, 0xd3, 0x04, 0xa4, 0xad, 0x60, 0x59, 0xff, + 0x21, 0x0f, 0x88, 0x3a, 0x86, 0xd4, 0x43, 0x1f, 0x3b, 0x87, 0xa2, 0x1b, 0x1f, 0xc1, 0x14, 0xdb, + 0x32, 0x58, 0x31, 0xed, 0x0e, 0xd1, 0x46, 0x99, 0xac, 0x50, 0xab, 0x56, 0xcf, 0xd9, 0x1a, 0x28, + 0x41, 0xb5, 0x71, 0xd0, 0x3f, 0x14, 0xa8, 0x79, 0x0d, 0x55, 0xad, 0x22, 0xa8, 0xea, 0x6f, 0xf4, + 0x39, 0xcc, 0xd4, 0xbc, 0xc3, 0x1e, 0xe1, 0x09, 0x47, 0x1e, 0xe2, 0x3b, 0x27, 0x6f, 0x57, 0xab, + 0x5c, 0x3d, 0x67, 0xc7, 0xc0, 0xd1, 0x06, 0x5c, 0x7c, 0xd4, 0xe9, 0x07, 0x07, 0x95, 0x6e, 0xbb, + 0xd6, 0xf1, 0x02, 0x41, 0x65, 0x98, 0xdb, 0x77, 0xb9, 0xa4, 0x4b, 0x42, 0xac, 0x9e, 0xb3, 0x4d, + 0x88, 0xe8, 0x26, 0xf7, 0x72, 0xe5, 0x3b, 0xf8, 0xf4, 0x5d, 0xee, 0x04, 0xbb, 0xd9, 0xc5, 0x9b, + 0xcf, 0x57, 0xcf, 0xd9, 0xac, 0xb6, 0x3a, 0x01, 0x63, 0x42, 0xca, 0xdf, 0x23, 0x8b, 0x45, 0xb2, + 0x93, 0x68, 0xcb, 0xfd, 0x00, 0x95, 0x60, 0x7c, 0xa7, 0x47, 0x84, 0x8f, 0x50, 0xe1, 0x6c, 0xf9, + 0xdb, 0xfa, 0x96, 0xce, 0x69, 0xb4, 0xa8, 0x9e, 0xb3, 0x19, 0x70, 0x54, 0x60, 0xad, 0xea, 0xcc, + 0xcd, 0x86, 0xd6, 0xda, 0xcd, 0xc7, 0xda, 0x2d, 0xc4, 0x79, 0x6d, 0xcd, 0x19, 0x99, 0x67, 0x7d, + 0x01, 0x57, 0x77, 0x7a, 0xe4, 0x50, 0x53, 0xe9, 0xf5, 0x3a, 0x6e, 0x8b, 0xee, 0xa7, 0x6c, 0x37, + 0x10, 0x8b, 0xe5, 0x7d, 0xe9, 0x42, 0x99, 0x4b, 0x75, 0x38, 0x81, 0xe3, 0xa3, 0xf2, 0x28, 0xdb, + 0x55, 0x84, 0xe7, 0xa4, 0xf5, 0xf3, 0x1c, 0x5c, 0x65, 0x5f, 0x40, 0x2a, 0xe9, 0xdf, 0x50, 0x1d, + 0x3d, 0x15, 0x35, 0x45, 0xba, 0x75, 0xaa, 0xae, 0x9c, 0xd1, 0x5d, 0x62, 0x3e, 0xfd, 0x2e, 0x31, + 0xf3, 0x72, 0xd5, 0xfa, 0x1e, 0x58, 0xbc, 0x47, 0x9d, 0x4e, 0xa2, 0x53, 0xc1, 0x9b, 0xf4, 0xca, + 0xfa, 0x9f, 0x79, 0x58, 0x78, 0x8c, 0xbb, 0xd8, 0x77, 0xe8, 0x38, 0x35, 0x8d, 0xfc, 0xe4, 0x77, + 0x38, 0x52, 0xdd, 0xcc, 0xa7, 0xa8, 0x9b, 0x97, 0x60, 0x68, 0xc7, 0x5e, 0xe3, 0xc3, 0xa2, 0x82, + 0xb4, 0xef, 0xbb, 0x36, 0x29, 0x43, 0x6b, 0xd1, 0x4d, 0xc7, 0xf0, 0xc0, 0x9b, 0x8e, 0x8b, 0xdc, + 0xf2, 0x3b, 0xc6, 0x6f, 0x3a, 0xf4, 0xfb, 0x8d, 0x0d, 0x45, 0xa7, 0x25, 0xe2, 0xe6, 0x0e, 0xff, + 0xa6, 0x52, 0x06, 0xc8, 0xd5, 0x53, 0x76, 0x15, 0x4d, 0x97, 0x00, 0xd3, 0x52, 0x85, 0x6e, 0x5a, + 0xfa, 0x1e, 0x4c, 0x2a, 0x20, 0x86, 0xeb, 0xe4, 0x6f, 0xa9, 0xd7, 0xc9, 0x93, 0x4b, 0xf3, 0x91, + 0x0e, 0x5d, 0x0f, 0x89, 0x76, 0xc0, 0x94, 0x68, 0xf5, 0x9a, 0xf9, 0x13, 0x28, 0x26, 0x7b, 0xc3, + 0x55, 0xae, 0x41, 0xa7, 0x10, 0x6b, 0x19, 0x66, 0x1f, 0xe3, 0x30, 0xf2, 0x32, 0x55, 0x2e, 0xa1, + 0x62, 0xdf, 0x59, 0x86, 0xf5, 0xcb, 0xaa, 0xc3, 0x5c, 0x8c, 0x0a, 0x6f, 0xff, 0x63, 0x18, 0x13, + 0xfe, 0x29, 0xb9, 0x74, 0xff, 0x14, 0xba, 0x6e, 0x39, 0x65, 0x5b, 0x20, 0x58, 0xbb, 0x30, 0xaf, + 0x11, 0x0d, 0x24, 0xd5, 0xef, 0xc0, 0xb8, 0x28, 0x8b, 0x99, 0x0d, 0x34, 0xb2, 0x74, 0x69, 0x05, + 0x02, 0x59, 0xa2, 0x58, 0x07, 0x30, 0xbf, 0xee, 0x06, 0x3a, 0x65, 0x36, 0xea, 0xcb, 0x30, 0xd1, + 0x73, 0xf6, 0x71, 0x33, 0x70, 0x7f, 0x93, 0xad, 0xcf, 0x11, 0x7b, 0x9c, 0x14, 0xd4, 0xdd, 0xdf, + 0xc4, 0xe8, 0x0a, 0x00, 0xad, 0xa4, 0xfc, 0xe3, 0xe2, 0x85, 0x82, 0xb3, 0xf3, 0x1c, 0x82, 0x61, + 0xb2, 0x8c, 0xd9, 0x82, 0xb4, 0xe9, 0xdf, 0x96, 0x0f, 0x0b, 0x89, 0x96, 0xf8, 0x18, 0xee, 0x81, + 0xec, 0x5a, 0xc6, 0x18, 0x6c, 0x09, 0x84, 0x6e, 0xc1, 0xf9, 0x2e, 0xfe, 0x2a, 0x6c, 0x26, 0xfa, + 0x30, 0x4d, 0x8a, 0xb7, 0x44, 0x3f, 0xac, 0x1f, 0xd1, 0xd3, 0x75, 0xdc, 0x81, 0xec, 0xcc, 0x98, + 0xd7, 0x81, 0x12, 0x19, 0x92, 0xee, 0x2f, 0xf4, 0x6b, 0x63, 0xe0, 0x4b, 0xb8, 0x6c, 0x6c, 0xed, + 0xd7, 0xcd, 0xc4, 0x3f, 0xcf, 0xc3, 0x02, 0xdb, 0xa5, 0x92, 0x9f, 0xc6, 0xc9, 0x65, 0xd8, 0x37, + 0x62, 0x14, 0xbe, 0x6f, 0x30, 0x0a, 0x53, 0x14, 0xd5, 0x28, 0xac, 0x99, 0x82, 0x3f, 0x34, 0x9b, + 0x82, 0xa9, 0x02, 0xa9, 0x9b, 0x82, 0xe3, 0x06, 0xe0, 0x95, 0x74, 0x03, 0x30, 0x35, 0x87, 0x19, + 0x0c, 0xc0, 0x06, 0xb3, 0xef, 0x93, 0xe1, 0xf1, 0x7c, 0x61, 0xc8, 0x6a, 0x40, 0x31, 0xc9, 0xe2, + 0x33, 0x90, 0x1b, 0x7f, 0x92, 0x83, 0x2b, 0x5c, 0xc3, 0x88, 0x7d, 0x04, 0xa7, 0x9f, 0xc1, 0xf7, + 0x60, 0x8a, 0xe3, 0x6e, 0x47, 0x8b, 0x85, 0xb9, 0x82, 0x0a, 0x49, 0xc8, 0xc4, 0xa9, 0x06, 0x86, + 0xde, 0x53, 0x4e, 0xfb, 0xcc, 0x82, 0x74, 0x89, 0x6c, 0x97, 0xcc, 0x2c, 0x90, 0x7a, 0xe6, 0xb7, + 0xbe, 0x84, 0xab, 0x69, 0x1d, 0x3f, 0x03, 0xbe, 0xfc, 0x69, 0x0e, 0x2e, 0x73, 0xf2, 0xda, 0xe7, + 0xf4, 0x46, 0x22, 0xff, 0x14, 0x7e, 0x07, 0x4f, 0x60, 0x92, 0x34, 0x28, 0xfa, 0xad, 0xbf, 0x4d, + 0x52, 0x6a, 0x96, 0x9d, 0xd0, 0xe1, 0x57, 0x59, 0xce, 0x61, 0x47, 0xb8, 0x29, 0xda, 0x2a, 0xb2, + 0xf5, 0x03, 0x58, 0x34, 0x0f, 0xe1, 0x0c, 0xf8, 0xf3, 0x04, 0x4a, 0x06, 0xc1, 0xf9, 0x66, 0x1b, + 0xe2, 0xf7, 0xe1, 0xb2, 0x91, 0xd6, 0x19, 0x74, 0x73, 0x95, 0x6c, 0xf7, 0xe1, 0x19, 0x4c, 0xa1, + 0xb5, 0x0b, 0x97, 0x0c, 0x94, 0xce, 0xa0, 0x8b, 0x8f, 0x61, 0x41, 0xaa, 0xb9, 0x5f, 0xab, 0x87, + 0xcf, 0xe0, 0x0a, 0x23, 0x74, 0x36, 0xb3, 0xf2, 0x14, 0x2e, 0x73, 0x72, 0x67, 0xc0, 0xbd, 0x55, + 0x58, 0x8c, 0x4e, 0xb3, 0x06, 0x5d, 0xe2, 0xc4, 0x42, 0xc6, 0x5a, 0x87, 0x6b, 0x11, 0xa5, 0x94, + 0x8d, 0xf5, 0xe4, 0xd4, 0x98, 0x2e, 0x16, 0xcd, 0xd2, 0x19, 0xea, 0x62, 0x11, 0xe0, 0x99, 0xa9, + 0x13, 0x6b, 0x70, 0x91, 0x11, 0xd6, 0xf5, 0xd6, 0x25, 0x55, 0x6f, 0x35, 0x3e, 0xeb, 0x49, 0xaa, + 0xb2, 0xcf, 0xa8, 0x2a, 0x2b, 0x40, 0xa2, 0x1e, 0xbe, 0x07, 0xa3, 0xfc, 0xe5, 0x22, 0xeb, 0x9f, + 0x81, 0x18, 0xd3, 0xd4, 0x19, 0x1a, 0x07, 0xb6, 0x7e, 0x0c, 0x57, 0xd8, 0x31, 0x30, 0xee, 0x21, + 0x2f, 0xa6, 0xe4, 0x3b, 0xb1, 0x53, 0x60, 0x86, 0x23, 0xbe, 0xe9, 0x30, 0xb8, 0x27, 0xd6, 0x76, + 0x1a, 0xfd, 0x13, 0x79, 0x8a, 0x8a, 0xd3, 0x5d, 0xde, 0x78, 0xba, 0xbb, 0x01, 0xd7, 0xe5, 0xe9, + 0x2e, 0xde, 0x8c, 0x34, 0xdb, 0xfe, 0x00, 0x2e, 0xb3, 0x81, 0xea, 0xef, 0xb5, 0x44, 0x37, 0x3e, + 0x89, 0x0d, 0x33, 0xf5, 0x41, 0x98, 0x69, 0x90, 0x7f, 0x3d, 0x27, 0x3e, 0x39, 0x33, 0xf1, 0x6f, + 0xfa, 0xb8, 0xbb, 0x01, 0x65, 0xc9, 0x10, 0xbd, 0x47, 0x6f, 0x76, 0xd6, 0x7d, 0x06, 0x73, 0x89, + 0x37, 0x05, 0x44, 0x61, 0x45, 0xef, 0x92, 0xcf, 0x82, 0x16, 0x88, 0x65, 0x97, 0xfa, 0x06, 0xc1, + 0x96, 0x90, 0x56, 0x13, 0x16, 0x93, 0x53, 0xe1, 0xb6, 0x84, 0x63, 0x10, 0xfa, 0x9c, 0x7c, 0xc2, + 0xec, 0x61, 0x43, 0x6e, 0xc0, 0xc3, 0x06, 0xfe, 0x1d, 0x33, 0x74, 0x81, 0x65, 0x59, 0x42, 0xd4, + 0xc4, 0xc6, 0x4f, 0x5a, 0x17, 0xeb, 0xe1, 0x9f, 0xe6, 0x00, 0x89, 0xba, 0x5a, 0xdd, 0x16, 0x6d, + 0x5f, 0x82, 0xa1, 0x5a, 0xdd, 0xe6, 0x0e, 0x89, 0xf4, 0xbc, 0xdd, 0x0a, 0x7c, 0x9b, 0x94, 0xc5, + 0xd5, 0xd6, 0xfc, 0x49, 0xd4, 0xd6, 0x35, 0x40, 0x75, 0x77, 0xbf, 0xbb, 0xeb, 0x86, 0x07, 0xb2, + 0xb1, 0x0a, 0x37, 0x11, 0x53, 0xaf, 0xf7, 0xc0, 0xdd, 0xef, 0x36, 0xe9, 0x2d, 0xbc, 0x7c, 0x9e, + 0xd1, 0x72, 0x6c, 0x03, 0x92, 0xf5, 0x43, 0xb8, 0xa8, 0xf5, 0x97, 0x7f, 0xf7, 0x99, 0xae, 0x97, + 0xe8, 0x16, 0x8c, 0xd5, 0x2a, 0xf4, 0xc6, 0x8e, 0x5a, 0x18, 0xa6, 0x98, 0x84, 0x6a, 0x39, 0x4d, + 0xfa, 0x98, 0xdd, 0x16, 0x95, 0xd6, 0x3f, 0x1c, 0x56, 0xa8, 0x2b, 0xde, 0xa8, 0x19, 0xec, 0x78, + 0x00, 0xc0, 0xd6, 0x94, 0xc2, 0x0d, 0xa2, 0x32, 0x4e, 0xf2, 0x4b, 0x06, 0x26, 0xc4, 0x6d, 0x05, + 0xe8, 0xa4, 0x3e, 0xa8, 0xdc, 0xfb, 0x87, 0x21, 0x89, 0x9b, 0x38, 0xe9, 0xfd, 0xc3, 0x49, 0x07, + 0xb6, 0x0a, 0x84, 0x7e, 0x1c, 0xf7, 0xcb, 0x1a, 0xa1, 0x17, 0xdf, 0x6f, 0x71, 0x43, 0x86, 0x61, + 0x6c, 0xa7, 0x73, 0xcd, 0x7a, 0x05, 0x73, 0x04, 0xd7, 0x7d, 0x4e, 0x9d, 0xaf, 0x56, 0xbe, 0x0a, + 0x71, 0x97, 0xed, 0x06, 0xa3, 0xb4, 0x9d, 0x9b, 0x19, 0xed, 0x44, 0xc0, 0xfc, 0xf5, 0x75, 0x44, + 0xa7, 0x89, 0x65, 0x9d, 0x6d, 0xa6, 0x4f, 0x57, 0x9d, 0xbd, 0xbe, 0xd2, 0x6d, 0xf7, 0x3c, 0x57, + 0x1e, 0x43, 0xd8, 0xaa, 0xf3, 0x3b, 0x4d, 0xcc, 0xcb, 0x6d, 0x15, 0xc8, 0xba, 0x95, 0xe9, 0x8f, + 0x35, 0x0e, 0xc3, 0xdb, 0xb5, 0xed, 0xf5, 0x42, 0xce, 0xba, 0x07, 0xa0, 0xb4, 0x04, 0x30, 0xba, + 0xb1, 0x69, 0x3f, 0xab, 0xac, 0x17, 0xce, 0xa1, 0x39, 0xb8, 0xb0, 0xbb, 0xb6, 0xb1, 0xbc, 0xb9, + 0x5b, 0x6f, 0xd6, 0x9f, 0x55, 0xec, 0xed, 0x5a, 0xc5, 0x5e, 0x2e, 0xe4, 0xac, 0x2f, 0x61, 0x56, + 0x1f, 0xe1, 0x99, 0x2e, 0xc2, 0x10, 0x2e, 0x4a, 0x0d, 0xe8, 0xc9, 0xee, 0xb6, 0xe2, 0xbd, 0xc2, + 0x8f, 0x54, 0xf1, 0x0b, 0x35, 0x7e, 0xf8, 0xe2, 0xdf, 0x9d, 0x02, 0xa4, 0x5d, 0x83, 0xe6, 0x33, + 0xaf, 0x41, 0xad, 0x0f, 0x60, 0x56, 0x6f, 0xf5, 0xa4, 0x46, 0xa5, 0xb7, 0xa8, 0x5b, 0x8f, 0xe2, + 0xd1, 0x48, 0xce, 0xf6, 0x51, 0x17, 0xb9, 0x2c, 0xfe, 0x00, 0x0a, 0x1c, 0x2a, 0xda, 0xab, 0x6f, + 0x08, 0xab, 0x1f, 0x93, 0x99, 0xfa, 0x0b, 0x79, 0xe1, 0x64, 0xf0, 0xb6, 0xb8, 0x47, 0x18, 0xd4, + 0xc2, 0xdf, 0xc9, 0x41, 0x31, 0xe6, 0x1c, 0x58, 0x3b, 0x70, 0x3a, 0x1d, 0xdc, 0xdd, 0xc7, 0xe8, + 0x36, 0x0c, 0x6f, 0x6f, 0x6e, 0x6f, 0x71, 0x3b, 0xdb, 0x2c, 0x5f, 0xa6, 0xa4, 0x48, 0xc2, 0xd8, + 0x14, 0x02, 0x3d, 0x85, 0x0b, 0xc2, 0x89, 0x45, 0x56, 0xf1, 0x63, 0xcc, 0x95, 0x6c, 0x97, 0x98, + 0x24, 0xde, 0x93, 0xe1, 0xf1, 0x5c, 0x21, 0x6f, 0xfd, 0x7e, 0x0e, 0x16, 0x52, 0xdc, 0x16, 0xd1, + 0x3b, 0x5a, 0xc7, 0x2e, 0x2a, 0x1d, 0x13, 0x20, 0xab, 0xe7, 0x78, 0xcf, 0x6a, 0x8a, 0x8f, 0xce, + 0xd0, 0x29, 0x7c, 0x74, 0xf8, 0xdb, 0x67, 0x0a, 0xc7, 0x5f, 0x0e, 0x31, 0x4f, 0xc8, 0xf3, 0x30, + 0xad, 0x71, 0xc0, 0xb2, 0x60, 0x4a, 0x6d, 0x99, 0xb0, 0xb9, 0xe6, 0xb5, 0x25, 0x9b, 0xc9, 0xdf, + 0xd6, 0xdf, 0xca, 0xc1, 0x2c, 0x75, 0xa7, 0xdc, 0x77, 0xc9, 0x77, 0x15, 0xb1, 0x78, 0x49, 0x1b, + 0xc9, 0xa2, 0x36, 0x92, 0x18, 0xac, 0x1c, 0xd2, 0xc7, 0x89, 0x21, 0x2d, 0x9a, 0x86, 0x44, 0x4f, + 0x81, 0xae, 0xd7, 0xd5, 0x46, 0xa2, 0x5c, 0x4b, 0xfc, 0xdd, 0x1c, 0x5c, 0x54, 0xfa, 0x24, 0xfb, + 0xff, 0x40, 0xeb, 0xd2, 0x65, 0x43, 0x97, 0x12, 0x4c, 0xae, 0x26, 0x7a, 0xf4, 0x56, 0x56, 0x8f, + 0x06, 0xf2, 0xf8, 0xcf, 0x72, 0x30, 0x67, 0xe4, 0x01, 0x9a, 0x27, 0xaa, 0x56, 0xcb, 0xc7, 0x21, + 0x67, 0x2f, 0xff, 0x45, 0xca, 0xd7, 0x82, 0xa0, 0xcf, 0x03, 0x86, 0x4c, 0xd8, 0xfc, 0x17, 0x7a, + 0x0b, 0xa6, 0xb7, 0xb0, 0xef, 0x7a, 0x6d, 0xe6, 0xbd, 0xc5, 0x6e, 0xb8, 0xa7, 0x6d, 0xbd, 0x10, + 0x2d, 0xc2, 0x44, 0xa5, 0xb3, 0xef, 0xf9, 0x6e, 0x78, 0xc0, 0x6e, 0x86, 0x26, 0xec, 0xa8, 0x80, + 0xd0, 0x5e, 0x76, 0xf7, 0x85, 0xd3, 0xc6, 0xb4, 0xcd, 0x7f, 0xa1, 0x22, 0x8c, 0x09, 0x03, 0x0f, + 0x35, 0x0f, 0xd9, 0xe2, 0x27, 0xc1, 0xf8, 0x9e, 0x4d, 0x17, 0x01, 0x7d, 0x4d, 0x63, 0xf3, 0x5f, + 0xd6, 0x1d, 0x98, 0x35, 0xf1, 0xd1, 0xb8, 0x64, 0xfe, 0x72, 0x1e, 0x2e, 0x56, 0xda, 0xed, 0x67, + 0x8f, 0x2a, 0xcb, 0x58, 0x55, 0x70, 0xde, 0x85, 0xe1, 0xb5, 0xae, 0x1b, 0x72, 0xed, 0x46, 0x38, + 0xf8, 0x1a, 0x20, 0x09, 0x14, 0x99, 0x21, 0xf2, 0x3f, 0xb2, 0xe1, 0xe2, 0xca, 0x57, 0x6e, 0x10, + 0xba, 0xdd, 0x7d, 0xd5, 0x4b, 0x38, 0x7f, 0x12, 0x2f, 0xe1, 0xd5, 0x73, 0xb6, 0x09, 0x19, 0x6d, + 0xc3, 0xfc, 0x06, 0x7e, 0x65, 0x58, 0x42, 0xf2, 0xf1, 0x84, 0x24, 0x6b, 0x58, 0x39, 0x29, 0xb8, + 0xea, 0x0a, 0xfd, 0x9d, 0x3c, 0x7d, 0x61, 0xa5, 0x0c, 0x8c, 0xb7, 0xbc, 0x03, 0xb3, 0x4a, 0x87, + 0x22, 0x89, 0x93, 0xe3, 0x8f, 0x4b, 0x8d, 0xc3, 0x51, 0x3f, 0x24, 0x23, 0x3a, 0xda, 0x85, 0x05, + 0xbd, 0x53, 0x11, 0x65, 0xfd, 0x63, 0x30, 0x81, 0xac, 0x9e, 0xb3, 0xd3, 0xb0, 0xd1, 0x12, 0x0c, + 0x55, 0x5a, 0x2f, 0x38, 0x5b, 0xcc, 0x53, 0xc6, 0x46, 0x56, 0x69, 0xbd, 0xa0, 0x4f, 0xa6, 0x5b, + 0x2f, 0xb4, 0xef, 0xe1, 0xdf, 0xe4, 0x60, 0x21, 0x65, 0x86, 0xd1, 0x55, 0x00, 0x56, 0xa8, 0xc8, + 0x76, 0xa5, 0x84, 0xa8, 0x5a, 0xec, 0x17, 0xf5, 0xe4, 0x1a, 0xa2, 0x1a, 0x87, 0x78, 0x87, 0x10, + 0x55, 0xd8, 0x0a, 0x10, 0xda, 0x82, 0x49, 0xf6, 0x8b, 0x3d, 0x87, 0x18, 0xa6, 0x38, 0x48, 0xc3, + 0x61, 0xef, 0x1f, 0xa8, 0x4a, 0xd2, 0xa6, 0x05, 0xcd, 0xf8, 0x33, 0x08, 0x95, 0x04, 0x37, 0x67, + 0xd6, 0xe2, 0xa3, 0x90, 0x83, 0x46, 0xb7, 0x61, 0x94, 0x15, 0xf2, 0x39, 0x14, 0xa1, 0x5b, 0x22, + 0x60, 0x5e, 0x6f, 0xfd, 0xfd, 0x1c, 0xcc, 0xb3, 0xbd, 0x2d, 0xf1, 0x69, 0x7c, 0xa0, 0x7d, 0x1a, + 0xd7, 0x65, 0x87, 0x4d, 0xc0, 0xda, 0xd7, 0x51, 0xd5, 0x7d, 0xe7, 0x4f, 0xfa, 0x55, 0xa8, 0x48, + 0xea, 0xba, 0xfd, 0x07, 0x39, 0x61, 0xdd, 0x49, 0x2e, 0xdd, 0x15, 0x98, 0x7a, 0xb3, 0x25, 0xab, + 0xa1, 0xa1, 0xf7, 0xd8, 0x8a, 0xca, 0x67, 0x8f, 0x34, 0x73, 0x51, 0x7d, 0x0a, 0xa5, 0x74, 0xd6, + 0x0c, 0x5a, 0x56, 0xd6, 0x23, 0x03, 0xf6, 0x9b, 0x4c, 0x67, 0x3f, 0x41, 0xa7, 0xfe, 0xba, 0xdb, + 0x12, 0x33, 0x7a, 0x2b, 0xee, 0xe7, 0x98, 0xea, 0x3b, 0xa6, 0xf6, 0x36, 0x1f, 0x5d, 0x23, 0xf0, + 0xc5, 0x49, 0xd5, 0x36, 0xb5, 0xfb, 0xff, 0x22, 0xaf, 0xaf, 0xc5, 0x37, 0x69, 0xb4, 0x06, 0xd3, + 0x1b, 0xf8, 0x55, 0xa2, 0x5d, 0xea, 0x17, 0xd3, 0xc5, 0xaf, 0x9a, 0x4a, 0xdb, 0xaa, 0xc3, 0xb8, + 0x86, 0x83, 0xf6, 0x60, 0x46, 0x48, 0x8d, 0x93, 0x0a, 0x4f, 0xf6, 0x16, 0x8c, 0xb4, 0x90, 0xf2, + 0x72, 0x23, 0x46, 0xf1, 0xec, 0xbf, 0x67, 0x6b, 0x0b, 0x8a, 0x49, 0xee, 0xf1, 0xd6, 0xde, 0x1d, + 0x34, 0xf7, 0xcc, 0x0c, 0xd2, 0xd6, 0xd7, 0xc1, 0x2a, 0x35, 0x4d, 0x49, 0x18, 0x69, 0x6b, 0xb8, + 0x1f, 0x9f, 0x0c, 0xea, 0x5f, 0x23, 0x26, 0x43, 0x7d, 0x8e, 0x2c, 0xdc, 0x5e, 0x6b, 0xd4, 0xba, + 0xa7, 0x52, 0xe2, 0x1d, 0xbb, 0x03, 0x63, 0xbc, 0x48, 0x3e, 0xf3, 0x8e, 0xaf, 0x4a, 0x01, 0x60, + 0xfd, 0x41, 0x0e, 0x2e, 0x51, 0x5b, 0xa3, 0xdb, 0xdd, 0xef, 0xe0, 0x9d, 0x40, 0xf7, 0x5c, 0xfd, + 0xb6, 0x26, 0x68, 0x16, 0x52, 0xde, 0xef, 0xfc, 0xba, 0xc4, 0xcb, 0xdf, 0xcb, 0x41, 0xc9, 0xd4, + 0xb7, 0xb3, 0x95, 0x30, 0x77, 0xf9, 0xb1, 0x2c, 0xcf, 0xad, 0x28, 0x0c, 0x5d, 0xb6, 0x29, 0x06, + 0x4b, 0x06, 0x49, 0xfe, 0xd7, 0x44, 0xcb, 0xff, 0xc9, 0xc1, 0xec, 0x5a, 0x40, 0xbb, 0xff, 0xd3, + 0xbe, 0xeb, 0x63, 0xe9, 0xfe, 0x7f, 0xd7, 0xf4, 0x9c, 0x90, 0xce, 0xab, 0x39, 0xf6, 0xc5, 0xbb, + 0xca, 0xcb, 0x99, 0x7c, 0xd6, 0x3b, 0x41, 0x2d, 0xe0, 0xc9, 0x2d, 0x18, 0xde, 0x20, 0xea, 0xd4, + 0x10, 0x5f, 0x7f, 0x0c, 0x83, 0x14, 0xd1, 0x47, 0x2e, 0xa4, 0xcb, 0xe4, 0x07, 0x7a, 0x94, 0x78, + 0x4a, 0x33, 0x3c, 0xf8, 0x1d, 0x5c, 0x32, 0x52, 0x4b, 0x75, 0x1c, 0x46, 0xb7, 0x1d, 0x7f, 0x1f, + 0x87, 0xd6, 0x0f, 0xa0, 0xc4, 0xbd, 0x7c, 0x98, 0xf5, 0x96, 0xfa, 0x02, 0x05, 0x91, 0x23, 0x57, + 0x96, 0x67, 0xce, 0x55, 0x80, 0x7a, 0xe8, 0xf8, 0xe1, 0x5a, 0xb7, 0x8d, 0xbf, 0xa2, 0xa3, 0x1d, + 0xb1, 0x95, 0x12, 0xeb, 0x3d, 0x98, 0x90, 0x43, 0xa0, 0x67, 0x39, 0x45, 0x63, 0xa4, 0xc3, 0x99, + 0xd5, 0x1e, 0xf7, 0x88, 0x17, 0x3d, 0x0f, 0x61, 0x2e, 0x36, 0x15, 0x7c, 0x9d, 0x94, 0xc8, 0x84, + 0xb1, 0x32, 0xe6, 0xba, 0x68, 0xcb, 0xdf, 0x56, 0x0d, 0x2e, 0x24, 0x66, 0x1a, 0x21, 0xfa, 0xda, + 0x8b, 0x9d, 0xd3, 0xc9, 0x86, 0x52, 0xaf, 0xaf, 0x92, 0xb2, 0xed, 0xf5, 0x3a, 0x73, 0xce, 0x26, + 0x65, 0xdb, 0xeb, 0xf5, 0xea, 0x28, 0x5b, 0x39, 0xd6, 0x3f, 0xce, 0xd3, 0xe3, 0x6b, 0x82, 0x07, + 0x31, 0xdb, 0xa1, 0x6a, 0xbf, 0xac, 0xc2, 0x04, 0x1d, 0xf1, 0xb2, 0x78, 0x7e, 0x90, 0xed, 0x98, + 0x32, 0xfe, 0x8b, 0xa3, 0xf2, 0x39, 0xea, 0x8d, 0x12, 0xa1, 0xa1, 0xcf, 0x60, 0x6c, 0xa5, 0xdb, + 0xa6, 0x14, 0x86, 0x4e, 0x41, 0x41, 0x20, 0x91, 0x79, 0xa0, 0x5d, 0x26, 0xaa, 0x10, 0x37, 0x20, + 0xd9, 0x4a, 0x09, 0x65, 0xb3, 0x7b, 0xe8, 0x32, 0x07, 0xb0, 0x11, 0x9b, 0xfd, 0x20, 0xdc, 0xa4, + 0x5d, 0x10, 0x4f, 0xef, 0x27, 0x6c, 0xf9, 0x1b, 0x59, 0x30, 0xb2, 0xe9, 0xb7, 0xf9, 0xc3, 0xd9, + 0x99, 0xa5, 0x29, 0x11, 0x10, 0x91, 0x94, 0xd9, 0xac, 0xca, 0xfa, 0x5f, 0x39, 0x58, 0x78, 0x8c, + 0x43, 0xe3, 0xba, 0xd1, 0xb8, 0x92, 0xfb, 0xda, 0x5c, 0xc9, 0xbf, 0x09, 0x57, 0xe4, 0xa8, 0x87, + 0xd2, 0x46, 0x3d, 0x9c, 0x36, 0xea, 0x91, 0xf4, 0x51, 0x3f, 0x86, 0x51, 0x36, 0x54, 0x74, 0x03, + 0x46, 0xd6, 0x42, 0x7c, 0x18, 0x99, 0x35, 0x54, 0xb7, 0x3a, 0x9b, 0xd5, 0x91, 0x13, 0xd7, 0xba, + 0x13, 0x84, 0xe2, 0x39, 0xc0, 0x84, 0x2d, 0x7e, 0x5a, 0x3f, 0xa1, 0x0f, 0x97, 0xd6, 0xbd, 0xd6, + 0x0b, 0xc5, 0x4a, 0x3d, 0xc6, 0xbe, 0xca, 0xf8, 0xad, 0x06, 0x81, 0x62, 0x35, 0xb6, 0x80, 0x40, + 0xd7, 0x60, 0x72, 0xad, 0xfb, 0xc8, 0xf3, 0x5b, 0x78, 0xb3, 0xdb, 0x61, 0xd4, 0xc7, 0x6d, 0xb5, + 0x88, 0xdb, 0x62, 0x78, 0x0b, 0x91, 0x2d, 0x86, 0x16, 0xc4, 0x6c, 0x31, 0x2c, 0x66, 0x96, 0xcd, + 0xea, 0xb8, 0xa9, 0x87, 0xfc, 0x9d, 0x65, 0x88, 0x91, 0x16, 0x9b, 0x41, 0x80, 0x7b, 0x70, 0xc9, + 0xc6, 0xbd, 0x8e, 0x43, 0x14, 0xae, 0x43, 0x8f, 0xc1, 0xcb, 0x31, 0x5f, 0x33, 0xf8, 0x8f, 0xeb, + 0x46, 0x65, 0xd9, 0xe5, 0x7c, 0x46, 0x97, 0x0f, 0xe1, 0xfa, 0x63, 0x1c, 0x1a, 0x03, 0x5f, 0x45, + 0x83, 0x5f, 0x85, 0xf1, 0x40, 0xb7, 0xdf, 0x0f, 0x8a, 0xb9, 0xc5, 0x6f, 0xb8, 0x38, 0x1d, 0xf9, + 0x97, 0xf5, 0x39, 0x94, 0xd3, 0x9a, 0x3b, 0x99, 0x0f, 0xac, 0x0b, 0xd7, 0xd2, 0x09, 0xc8, 0x6d, + 0x51, 0xd8, 0xfa, 0xe5, 0xd1, 0x39, 0xbb, 0xb7, 0xfa, 0xf5, 0x00, 0xff, 0xc3, 0xaa, 0x0a, 0x6f, + 0xc0, 0xaf, 0xd1, 0xdd, 0x26, 0xbd, 0x46, 0xd7, 0x09, 0x44, 0x7c, 0xad, 0xc0, 0xb8, 0x28, 0xe3, + 0x7c, 0x4d, 0x8d, 0x29, 0x46, 0x19, 0xda, 0x16, 0x04, 0x24, 0x9a, 0xf5, 0x13, 0x71, 0xa5, 0xa4, + 0x63, 0x9c, 0xec, 0x51, 0xcc, 0x49, 0xee, 0x90, 0x2c, 0x0f, 0x2e, 0xe9, 0xb4, 0x55, 0xc3, 0x7f, + 0x41, 0x31, 0xfc, 0x33, 0x7b, 0xff, 0x35, 0xdd, 0x10, 0x9d, 0xe7, 0xeb, 0x32, 0x2a, 0x42, 0x57, + 0x55, 0xf3, 0xfe, 0x54, 0xf2, 0x15, 0xd1, 0x7d, 0x28, 0x99, 0x1a, 0x54, 0x0c, 0x28, 0xd2, 0x86, + 0xcc, 0x23, 0x47, 0xfc, 0x56, 0x0e, 0x2c, 0xcd, 0x33, 0x4a, 0x0b, 0x0f, 0x25, 0x3f, 0x99, 0x77, + 0x84, 0x60, 0xa3, 0xbe, 0x58, 0xcc, 0x37, 0xbe, 0x43, 0x0a, 0xd4, 0xa7, 0x5b, 0x4c, 0xda, 0xdd, + 0x87, 0xb1, 0x0d, 0xfc, 0x55, 0x24, 0x7e, 0x98, 0x2e, 0x4a, 0xbd, 0xa5, 0x5e, 0x60, 0xf5, 0x51, + 0xa8, 0x00, 0x23, 0x8a, 0xd0, 0x8d, 0xcc, 0x3e, 0xf0, 0xfe, 0xef, 0x41, 0x21, 0x5e, 0xc7, 0xe7, + 0x7e, 0x60, 0xa4, 0x2c, 0xfa, 0xba, 0x22, 0x1e, 0x20, 0x2b, 0xb0, 0x13, 0xf4, 0x4e, 0xdf, 0x7b, + 0xf4, 0x11, 0xc0, 0xb6, 0x17, 0x3a, 0x9d, 0x1a, 0xb5, 0x71, 0x51, 0xc1, 0xcf, 0x2e, 0x9e, 0x42, + 0x52, 0xda, 0x8c, 0xbf, 0x5e, 0x55, 0x80, 0xad, 0xef, 0xd2, 0x2f, 0xd2, 0xdc, 0xe9, 0x93, 0x7d, + 0x24, 0x35, 0xb8, 0x11, 0xf3, 0x44, 0x78, 0x03, 0x22, 0x21, 0xcc, 0x11, 0xf6, 0xcb, 0x38, 0x5b, + 0xdf, 0xcc, 0xac, 0xff, 0xfb, 0x1c, 0x73, 0x9f, 0x54, 0x9b, 0xe5, 0x13, 0x5d, 0x03, 0x88, 0x4a, + 0x63, 0xfe, 0xf9, 0x6a, 0xd8, 0x30, 0x7a, 0x78, 0x8d, 0xc2, 0x86, 0x05, 0xb6, 0x82, 0xf6, 0xcd, + 0xce, 0xe4, 0x43, 0xea, 0x7e, 0x20, 0x5b, 0x3f, 0x19, 0xdf, 0xdf, 0x17, 0x36, 0x9a, 0x53, 0xe2, + 0x1d, 0xc0, 0xac, 0x16, 0x59, 0x39, 0x0a, 0x15, 0x1b, 0x45, 0x94, 0x9e, 0xa8, 0x7e, 0xfa, 0xab, + 0xa3, 0xf2, 0x87, 0xa7, 0x79, 0xd5, 0x25, 0x68, 0x6e, 0xcb, 0xc7, 0x8b, 0xd6, 0x02, 0x0c, 0xd5, + 0xec, 0x75, 0x2a, 0xaa, 0xec, 0x75, 0x29, 0xaa, 0xec, 0x75, 0xeb, 0x5f, 0xe6, 0xa1, 0xcc, 0xde, + 0x2e, 0x53, 0xaf, 0x95, 0xe8, 0xac, 0xa4, 0xb8, 0xc1, 0x9c, 0xd4, 0x42, 0x10, 0x7b, 0x9b, 0x9c, + 0x3f, 0xc9, 0xdb, 0xe4, 0xff, 0xff, 0xcd, 0xad, 0xaa, 0x2c, 0x6a, 0x5e, 0x64, 0x18, 0x60, 0xb5, + 0x26, 0x0b, 0x41, 0x4a, 0x13, 0x49, 0x93, 0xc6, 0xf0, 0xe9, 0x4d, 0x1a, 0xd6, 0xdf, 0xce, 0xc3, + 0xb5, 0x74, 0x0e, 0xf2, 0x96, 0x96, 0xb5, 0x50, 0xb7, 0x19, 0xde, 0x36, 0xf4, 0x4b, 0x50, 0x42, + 0xdd, 0xc6, 0xc3, 0xdb, 0x8a, 0xf7, 0x3b, 0xb1, 0x5b, 0x2a, 0xed, 0x59, 0x8f, 0x08, 0x14, 0xce, + 0x8a, 0xb4, 0xc0, 0x52, 0xbc, 0x0c, 0xed, 0xc1, 0xc2, 0x96, 0xef, 0xbe, 0x74, 0x42, 0xfc, 0x14, + 0xbf, 0xde, 0xf2, 0x3a, 0x6e, 0xeb, 0xf5, 0x4a, 0xd7, 0xd9, 0xeb, 0xe0, 0x36, 0xbf, 0x71, 0xbf, + 0x7d, 0x7c, 0x54, 0x7e, 0xab, 0xc7, 0x40, 0xc8, 0x67, 0xd6, 0xec, 0x51, 0xa0, 0x26, 0x66, 0x50, + 0x0a, 0xd1, 0x34, 0x42, 0xd6, 0xbf, 0xcb, 0xc1, 0x65, 0xaa, 0x1e, 0xf3, 0x7b, 0x02, 0xd1, 0xf8, + 0x1b, 0x39, 0x5d, 0xaa, 0x03, 0xe4, 0x2b, 0x8b, 0x3a, 0x5d, 0x6a, 0xef, 0x9b, 0x6c, 0x0d, 0x0c, + 0xad, 0xc1, 0x24, 0xff, 0xad, 0x18, 0x83, 0xe7, 0x14, 0xf1, 0x43, 0x17, 0x2e, 0xb3, 0x05, 0xd1, + 0x65, 0xca, 0x89, 0x35, 0xe9, 0xab, 0x5f, 0x15, 0xd7, 0xfa, 0x65, 0x1e, 0x16, 0x1b, 0xd8, 0x77, + 0x9f, 0xbf, 0x4e, 0x19, 0xcc, 0x26, 0xcc, 0x8a, 0x22, 0x3a, 0x66, 0xfd, 0x83, 0x61, 0x41, 0x6b, + 0x44, 0x57, 0x03, 0x02, 0xd0, 0x94, 0xdf, 0x8f, 0x11, 0xf1, 0x14, 0xee, 0x94, 0xef, 0xc2, 0x78, + 0x2c, 0x1e, 0x00, 0x9d, 0x7f, 0xf1, 0xbd, 0xe9, 0x81, 0x13, 0xe5, 0x87, 0xf7, 0xdb, 0xe9, 0x17, + 0x8e, 0xdc, 0x2e, 0x30, 0x28, 0x9a, 0x0a, 0xfd, 0xfc, 0xc8, 0xa7, 0xe7, 0x28, 0xb5, 0x86, 0xcf, + 0x6f, 0xf5, 0x9c, 0x9d, 0xd6, 0x52, 0x75, 0x12, 0x26, 0x2a, 0xf4, 0x3a, 0x94, 0x1c, 0xc3, 0xff, + 0x77, 0x1e, 0xae, 0x8a, 0x17, 0x39, 0x29, 0x6c, 0xfe, 0x02, 0x16, 0x44, 0x51, 0xa5, 0x47, 0xb6, + 0x7f, 0xdc, 0xd6, 0x39, 0xcd, 0x02, 0x47, 0x09, 0x4e, 0x3b, 0x1c, 0x26, 0x62, 0x76, 0x1a, 0xfa, + 0xd9, 0x98, 0x37, 0x3f, 0x33, 0x45, 0x67, 0xa0, 0x66, 0x46, 0x55, 0x02, 0xea, 0x31, 0x1b, 0x55, + 0x69, 0xd8, 0x4e, 0x98, 0x47, 0x87, 0xbf, 0xae, 0x79, 0x74, 0xf5, 0x5c, 0xdc, 0x40, 0x5a, 0x9d, + 0x81, 0xa9, 0x0d, 0xfc, 0x2a, 0xe2, 0xfb, 0xcf, 0x72, 0xb1, 0x07, 0x84, 0x44, 0x5f, 0x60, 0x2f, + 0x09, 0x73, 0xd1, 0x03, 0x7f, 0xfa, 0x80, 0x50, 0xd5, 0x17, 0x18, 0xe8, 0x1a, 0x8c, 0x31, 0x07, + 0xdc, 0xf6, 0x09, 0x4e, 0xda, 0xf2, 0x69, 0x4d, 0x8b, 0xa1, 0xb0, 0x43, 0x37, 0xc7, 0xb7, 0x9e, + 0xc2, 0x75, 0xee, 0xff, 0xad, 0x4f, 0x3e, 0x6d, 0xe8, 0x94, 0x9b, 0x91, 0xe5, 0xc0, 0xd5, 0xc7, + 0x38, 0x2e, 0x7a, 0xb4, 0xa7, 0x47, 0x9f, 0xc3, 0x79, 0xad, 0x5c, 0x52, 0xa4, 0x3a, 0xa6, 0x5c, + 0x43, 0x92, 0x74, 0x1c, 0xda, 0xba, 0x66, 0x6a, 0x42, 0xed, 0xac, 0x85, 0x69, 0x04, 0x28, 0x3f, + 0xba, 0x13, 0x0e, 0x4e, 0x21, 0xf5, 0x6e, 0x2b, 0xdf, 0x35, 0x93, 0x78, 0x2c, 0x4a, 0x8f, 0xd8, + 0x47, 0x65, 0xad, 0x35, 0x0d, 0x93, 0x35, 0xaf, 0x1b, 0xe2, 0xaf, 0xa8, 0xe2, 0x62, 0xcd, 0xc0, + 0x94, 0xa8, 0xea, 0xe0, 0x20, 0xb0, 0xfe, 0x70, 0x08, 0x2c, 0xce, 0x58, 0x93, 0x2d, 0x54, 0xf0, + 0x63, 0x2f, 0xd1, 0x59, 0xbe, 0x51, 0xcd, 0xab, 0x16, 0xdf, 0xa8, 0x96, 0xad, 0x3c, 0xaa, 0xb5, + 0xb5, 0xa2, 0x52, 0x3d, 0x54, 0x6e, 0x7c, 0xf4, 0x3f, 0x4c, 0x11, 0x93, 0xec, 0x63, 0xa3, 0x51, + 0xaa, 0x53, 0xc4, 0xa4, 0x46, 0xd7, 0x2c, 0x32, 0x6d, 0x8d, 0x0d, 0x5c, 0x81, 0x40, 0xf2, 0xe5, + 0xa4, 0xac, 0xe1, 0xbe, 0x45, 0xac, 0xa0, 0x99, 0xc8, 0xcc, 0xa0, 0x12, 0x41, 0x3b, 0x3a, 0x2f, + 0xf9, 0xf7, 0x28, 0x7c, 0x30, 0xd4, 0x2a, 0x46, 0xb5, 0xa7, 0x94, 0xe8, 0x89, 0x2e, 0x34, 0x58, + 0xc5, 0xbe, 0xfd, 0x7b, 0xd2, 0x0b, 0x9f, 0x6c, 0xa4, 0x6e, 0x07, 0xf3, 0x27, 0x27, 0x62, 0x5a, + 0xfa, 0xe6, 0xbb, 0xec, 0xdc, 0x89, 0x64, 0x34, 0x0d, 0xcb, 0x89, 0x39, 0x7a, 0xda, 0x05, 0x8a, + 0x89, 0xbe, 0x75, 0x94, 0x13, 0x6f, 0x0f, 0x12, 0x17, 0xbc, 0xa7, 0xd5, 0x0b, 0xab, 0xda, 0x9d, + 0x6c, 0x3e, 0xe5, 0x4e, 0x56, 0xbb, 0xc1, 0x0a, 0x07, 0x5c, 0xd2, 0x0e, 0x7d, 0xfd, 0x4b, 0x9d, + 0xff, 0x31, 0x02, 0x17, 0xb6, 0x9c, 0x7d, 0xb7, 0x4b, 0x64, 0x8f, 0x88, 0x94, 0x8b, 0x2a, 0x89, + 0xac, 0x07, 0xd9, 0x4e, 0xae, 0x86, 0xb4, 0x06, 0x4b, 0x6a, 0x00, 0xf2, 0x7c, 0xda, 0x7b, 0x50, + 0x3d, 0xcc, 0xf8, 0x47, 0x9a, 0x0d, 0x3f, 0x91, 0x81, 0x83, 0x7a, 0xdd, 0x75, 0xbd, 0x76, 0x2c, + 0x13, 0x08, 0xb5, 0x83, 0x27, 0x43, 0xb3, 0x8f, 0x9c, 0x71, 0x68, 0xf6, 0x1f, 0xc0, 0xe4, 0xd3, + 0xfe, 0x9e, 0xcc, 0x32, 0x31, 0x3a, 0x30, 0xf4, 0x37, 0x9d, 0x83, 0x17, 0xfd, 0x3d, 0x73, 0x9e, + 0x09, 0x95, 0x98, 0x31, 0x8c, 0xf9, 0xd8, 0xaf, 0x25, 0x8c, 0x79, 0x6a, 0x04, 0xfd, 0xf1, 0x6f, + 0x24, 0x82, 0xbe, 0x21, 0x14, 0xf9, 0xc4, 0x99, 0x87, 0x22, 0xaf, 0x02, 0x8c, 0xfb, 0x51, 0xd0, + 0xe7, 0xe1, 0xc2, 0x88, 0xf5, 0xaf, 0xc7, 0x60, 0x96, 0x9c, 0xce, 0xc5, 0x0a, 0x0f, 0xa2, 0xed, + 0x6f, 0x4a, 0x94, 0x29, 0x87, 0x4d, 0xae, 0xa9, 0xb2, 0xf2, 0x66, 0x2c, 0x6b, 0x91, 0x86, 0x80, + 0xde, 0x53, 0xef, 0x36, 0xf2, 0x4a, 0xd8, 0xc9, 0x64, 0xc2, 0x19, 0xf5, 0xd2, 0xe3, 0x1d, 0xcd, + 0xb4, 0x9e, 0x69, 0x8b, 0x78, 0x18, 0xb7, 0xb7, 0xf3, 0x78, 0x55, 0x74, 0x63, 0xd0, 0xcf, 0xfe, + 0x91, 0x21, 0x7e, 0x07, 0x46, 0x69, 0x70, 0x19, 0xf1, 0x40, 0xf7, 0x6d, 0x2e, 0x24, 0x4c, 0x4c, + 0x60, 0x61, 0x68, 0x02, 0x25, 0x50, 0x74, 0x87, 0x16, 0xa8, 0x31, 0x64, 0x18, 0x08, 0xda, 0x86, + 0x8b, 0x5b, 0x3e, 0x6e, 0x73, 0x9f, 0xd3, 0x9e, 0xcf, 0x8f, 0x72, 0xec, 0xa5, 0x1c, 0x0d, 0xc1, + 0xd8, 0x13, 0xd5, 0x4d, 0x2c, 0xeb, 0x55, 0x29, 0x6b, 0x40, 0x47, 0x2b, 0x30, 0x53, 0xc7, 0x8e, + 0xdf, 0x3a, 0x78, 0x8a, 0x5f, 0x93, 0xcd, 0x21, 0x28, 0x8e, 0x45, 0x71, 0x4b, 0x03, 0x5a, 0x43, + 0x06, 0x4a, 0xab, 0xd4, 0x2b, 0x6f, 0x1d, 0x09, 0x7d, 0x17, 0x46, 0xeb, 0x9e, 0x1f, 0x56, 0x5f, + 0xc7, 0x32, 0x10, 0xb1, 0xc2, 0xea, 0x25, 0x11, 0xbb, 0x35, 0xf0, 0xfc, 0xb0, 0xb9, 0xa7, 0xf2, + 0x8d, 0xe3, 0xa1, 0x47, 0x44, 0xf3, 0x24, 0xda, 0xb0, 0x34, 0x9b, 0xb0, 0x80, 0x14, 0x5c, 0xbb, + 0xa4, 0x2a, 0xb4, 0xc9, 0x76, 0x12, 0xc3, 0x42, 0xaf, 0x61, 0x56, 0x5f, 0xff, 0x3c, 0x52, 0x37, + 0x68, 0xb9, 0x3c, 0x4c, 0x20, 0xd5, 0xdb, 0xbc, 0x97, 0xd7, 0xe2, 0x5f, 0x59, 0x22, 0x78, 0xb7, + 0xb1, 0x09, 0xf4, 0x8c, 0x86, 0xce, 0x65, 0x9c, 0xa9, 0x04, 0x22, 0x20, 0x32, 0x19, 0x04, 0x8d, + 0x45, 0xd7, 0xa7, 0xdf, 0x10, 0xe5, 0xa8, 0x13, 0xc4, 0xe3, 0x22, 0xdb, 0x09, 0x54, 0xb4, 0x05, + 0x17, 0x76, 0x02, 0xbc, 0xe5, 0xe3, 0x97, 0x2e, 0x7e, 0x25, 0xe8, 0x4d, 0x51, 0x7a, 0x74, 0xba, + 0x09, 0xbd, 0x1e, 0xab, 0x35, 0x11, 0x4c, 0x22, 0x97, 0x3e, 0x82, 0x49, 0x65, 0xbd, 0x9d, 0x2a, + 0x72, 0xf8, 0x9f, 0xe5, 0x98, 0x69, 0x4f, 0x59, 0xc0, 0xdc, 0xb2, 0xb0, 0x09, 0x13, 0xb2, 0x50, + 0x3e, 0x2c, 0x10, 0xda, 0x49, 0x6c, 0x77, 0x63, 0x9f, 0x8f, 0xf8, 0xba, 0xd5, 0xde, 0x46, 0x34, + 0xbe, 0x59, 0x73, 0xdb, 0x6f, 0x47, 0x4f, 0x10, 0xf9, 0x73, 0x49, 0xdf, 0x69, 0xbd, 0x88, 0xec, + 0x9d, 0x3f, 0x26, 0xdf, 0x87, 0x5a, 0xc1, 0x13, 0x27, 0x2d, 0xe8, 0x59, 0x6f, 0x78, 0xa5, 0x88, + 0xbd, 0x2f, 0x5f, 0x62, 0xb2, 0x62, 0xfd, 0xc3, 0x51, 0x11, 0xa8, 0xf3, 0xed, 0x79, 0xcb, 0x66, + 0x2f, 0xe8, 0x8c, 0x3d, 0x78, 0x3f, 0xf9, 0x06, 0x8c, 0x26, 0x39, 0x88, 0xde, 0x80, 0xa9, 0x6c, + 0x8c, 0x5e, 0x83, 0xed, 0xc0, 0x65, 0x1b, 0x1f, 0x7a, 0x2f, 0xf1, 0xd9, 0x92, 0xfd, 0x21, 0x5c, + 0xd2, 0x09, 0xee, 0xf4, 0xda, 0x34, 0x74, 0x06, 0xbb, 0xf5, 0x34, 0x86, 0xb2, 0xe3, 0x08, 0x2c, + 0x94, 0x1d, 0x0b, 0x6e, 0x44, 0xfe, 0x54, 0xe5, 0x2d, 0xad, 0xb3, 0x3c, 0x58, 0xd4, 0x89, 0x57, + 0xda, 0xed, 0x2d, 0xc7, 0x0f, 0xdd, 0x96, 0xdb, 0x73, 0xba, 0x21, 0xda, 0x84, 0x49, 0xe5, 0x67, + 0x4c, 0xb7, 0x51, 0x6a, 0xd8, 0xec, 0xf7, 0xa2, 0x02, 0x55, 0x07, 0x53, 0xe0, 0x2c, 0x0c, 0xe5, + 0x38, 0x7b, 0x08, 0xcb, 0xd4, 0x36, 0xab, 0x30, 0xad, 0xfc, 0x94, 0x47, 0x05, 0x1a, 0xa6, 0x52, + 0x69, 0x41, 0x67, 0x98, 0x8e, 0x62, 0xb5, 0xa0, 0x64, 0x62, 0x1a, 0x0d, 0xe9, 0xf0, 0x1a, 0xad, + 0x44, 0xc1, 0x21, 0x06, 0xdf, 0x36, 0x9f, 0x4f, 0x0b, 0x0c, 0x61, 0xfd, 0xcd, 0x61, 0xb8, 0xcc, + 0x27, 0xe3, 0x2c, 0x67, 0x1c, 0xfd, 0x04, 0x26, 0x95, 0x39, 0xe6, 0x4c, 0xbf, 0x26, 0x1c, 0x54, + 0xd2, 0xd6, 0x02, 0xd3, 0xc1, 0xfa, 0xb4, 0xa0, 0x19, 0x9b, 0x6e, 0xa2, 0x83, 0xa9, 0xcb, 0xa6, + 0x03, 0x33, 0xfa, 0x44, 0x73, 0x35, 0xf4, 0x86, 0xb1, 0x11, 0x1d, 0x54, 0xc4, 0x45, 0x6a, 0x37, + 0x8d, 0xd3, 0x4d, 0x73, 0x3d, 0xe9, 0x8b, 0xe8, 0x2b, 0xb8, 0x90, 0x98, 0x65, 0x7e, 0xac, 0xba, + 0x65, 0x6c, 0x30, 0x01, 0xcd, 0x62, 0x71, 0xfb, 0xb4, 0x38, 0xb5, 0xd9, 0x64, 0x23, 0xa8, 0x0d, + 0x53, 0xea, 0xc4, 0x73, 0x3d, 0xf9, 0x7a, 0x06, 0x2b, 0x19, 0x20, 0x53, 0x8a, 0x38, 0x2f, 0xe9, + 0xdc, 0xeb, 0xe9, 0x11, 0x35, 0xaa, 0xd5, 0x71, 0x18, 0x65, 0xbf, 0x89, 0x08, 0xd8, 0xf2, 0x71, + 0x80, 0xbb, 0x2d, 0xac, 0xfa, 0x1a, 0x7d, 0x5d, 0x11, 0xf0, 0x6f, 0x73, 0x50, 0x34, 0xd1, 0xad, + 0xe3, 0x6e, 0x1b, 0x6d, 0x41, 0x21, 0xde, 0x10, 0x5f, 0xd5, 0x96, 0xd8, 0x15, 0xd2, 0xbb, 0x44, + 0xf4, 0xe6, 0x44, 0x37, 0x37, 0xe0, 0x82, 0x52, 0x76, 0x4a, 0xa7, 0xae, 0x24, 0xaa, 0x7a, 0xf4, + 0x5d, 0xa5, 0xbe, 0x6b, 0xcb, 0xde, 0xa1, 0xe3, 0x76, 0x89, 0x82, 0xa8, 0x84, 0x71, 0x80, 0xa8, + 0x94, 0xf3, 0x86, 0x1d, 0x0f, 0x69, 0xa9, 0x70, 0x70, 0x94, 0x20, 0xd6, 0xa7, 0x54, 0x82, 0xf3, + 0x43, 0x05, 0x7b, 0x24, 0x23, 0x89, 0x5d, 0x83, 0x91, 0xed, 0xf5, 0x7a, 0xad, 0xc2, 0x9f, 0xdc, + 0xb0, 0xa7, 0x9d, 0x9d, 0xa0, 0xd9, 0x72, 0x6c, 0x56, 0x61, 0x7d, 0x42, 0xa3, 0xd7, 0xf1, 0xd8, + 0x67, 0x12, 0xef, 0x26, 0x8c, 0xf1, 0x22, 0x8e, 0x49, 0xaf, 0x86, 0x3b, 0x1c, 0x4a, 0xd4, 0x59, + 0x5b, 0x42, 0xbf, 0xee, 0x60, 0x27, 0x50, 0x36, 0xe6, 0x0f, 0x89, 0x2a, 0xce, 0xca, 0xf8, 0xbe, + 0x3c, 0x23, 0x43, 0x8b, 0xd2, 0x62, 0x76, 0x5c, 0x16, 0x30, 0xb6, 0xfc, 0xcb, 0xfa, 0xd3, 0x3c, + 0xcc, 0x8a, 0x00, 0x2e, 0x9a, 0x29, 0x60, 0x60, 0x08, 0xc9, 0xef, 0xeb, 0x31, 0x72, 0x6a, 0x32, + 0x46, 0xce, 0xd7, 0xc8, 0xfb, 0xc0, 0xa3, 0xeb, 0x9c, 0xf0, 0x41, 0xda, 0x53, 0xa9, 0x7d, 0x0f, + 0x6b, 0xda, 0xb7, 0x69, 0x3c, 0x9a, 0xf6, 0x4d, 0xa7, 0x85, 0x69, 0xdf, 0x42, 0xe7, 0xfe, 0x3a, + 0x0a, 0xd3, 0x87, 0x64, 0x69, 0x69, 0x4d, 0x9e, 0xf4, 0xad, 0xd2, 0x3a, 0x7d, 0x04, 0xbf, 0xb9, + 0xb6, 0x5c, 0x23, 0x6b, 0x9a, 0x77, 0x55, 0xcc, 0xc0, 0x3d, 0xea, 0xb5, 0xc6, 0x69, 0xaa, 0x0b, + 0x93, 0x8a, 0x58, 0x1e, 0xfa, 0x41, 0x01, 0xb1, 0x1e, 0xca, 0x27, 0xf5, 0x06, 0x6a, 0x69, 0xf1, + 0x50, 0x37, 0x68, 0xb0, 0x80, 0xc7, 0x74, 0xbe, 0xce, 0xa2, 0x13, 0x7f, 0x90, 0x63, 0xd1, 0x07, + 0xea, 0x9b, 0x4a, 0x80, 0xf6, 0xee, 0x73, 0x4f, 0xb1, 0x84, 0x2a, 0xcd, 0x28, 0xb9, 0x7c, 0xa8, + 0x25, 0x94, 0x26, 0xf2, 0xe3, 0x4f, 0xfe, 0x68, 0x56, 0x1c, 0x3b, 0x0e, 0x8d, 0x3e, 0x82, 0x69, + 0xa5, 0x48, 0x6e, 0xd2, 0x2c, 0xf2, 0x9e, 0x8a, 0xee, 0xb6, 0x6d, 0x1d, 0xd2, 0xfa, 0x59, 0x1e, + 0x2e, 0x67, 0x64, 0xff, 0xa0, 0x67, 0x40, 0x7a, 0x80, 0x97, 0x9c, 0xe2, 0x31, 0x8b, 0xe9, 0xf3, + 0x46, 0x4d, 0x46, 0x4a, 0x40, 0xf4, 0x29, 0x4c, 0xaa, 0xc9, 0x48, 0xf2, 0x4a, 0x60, 0x6c, 0x73, + 0x02, 0x12, 0x15, 0x1c, 0x05, 0x00, 0x51, 0x4f, 0xf8, 0xbb, 0xe1, 0x3a, 0x7d, 0x81, 0x1a, 0x65, + 0x32, 0x39, 0x93, 0x94, 0x2a, 0x4a, 0x33, 0xd6, 0xef, 0xe6, 0xe1, 0x6a, 0x06, 0x1f, 0xea, 0x38, + 0xfc, 0x7f, 0xc1, 0x8a, 0x58, 0x7e, 0x99, 0xa1, 0x6f, 0x28, 0xbf, 0x8c, 0xf5, 0x7b, 0x79, 0x98, + 0xdf, 0xe9, 0x05, 0xd4, 0xb9, 0x74, 0xad, 0xfb, 0x12, 0x77, 0x43, 0xcf, 0x7f, 0x4d, 0x9d, 0xe3, + 0xd0, 0x7b, 0x30, 0xb2, 0x8a, 0x3b, 0x1d, 0x8f, 0x6f, 0x6b, 0x57, 0x84, 0x71, 0x3a, 0x0e, 0x4d, + 0x81, 0x56, 0xcf, 0xd9, 0x0c, 0x1a, 0x7d, 0x04, 0x13, 0xab, 0xd8, 0xf1, 0xc3, 0x3d, 0xec, 0x08, + 0xcd, 0xf5, 0x12, 0x47, 0x55, 0x50, 0x38, 0xc0, 0xea, 0x39, 0x3b, 0x82, 0x46, 0x4b, 0x30, 0xbc, + 0xe5, 0x75, 0xf7, 0xe5, 0xeb, 0xb3, 0x94, 0x06, 0x09, 0xcc, 0xea, 0x39, 0x9b, 0xc2, 0xa2, 0x67, + 0x30, 0x5d, 0xd9, 0xc7, 0xdd, 0xf0, 0x19, 0x0e, 0x9d, 0xb6, 0x13, 0x3a, 0x5c, 0xc3, 0xb9, 0x99, + 0x86, 0xac, 0x01, 0xd3, 0xe4, 0xb1, 0x6a, 0x41, 0x75, 0x04, 0x86, 0x9e, 0x05, 0xfb, 0xd6, 0xcf, + 0x73, 0x50, 0x5c, 0xf6, 0x5e, 0x75, 0x8d, 0x8c, 0xf9, 0x40, 0x67, 0x8c, 0x70, 0x81, 0x36, 0xc0, + 0xc7, 0x58, 0xf3, 0x2e, 0x0c, 0x6f, 0xb9, 0xdd, 0xfd, 0xd8, 0xa6, 0x6e, 0xc0, 0x23, 0x50, 0x74, + 0x84, 0x6e, 0x77, 0x5f, 0x74, 0xe9, 0x1d, 0x58, 0x48, 0x81, 0x44, 0x33, 0x52, 0xbc, 0x0d, 0x53, + 0xb1, 0xf6, 0x36, 0xcc, 0x19, 0x99, 0x96, 0x00, 0xfc, 0x57, 0x39, 0xc3, 0xec, 0xb3, 0xbe, 0x16, + 0x61, 0x4c, 0x04, 0x7e, 0x65, 0xfb, 0x80, 0xf8, 0x49, 0x9d, 0x33, 0xc5, 0xd7, 0xc1, 0x43, 0xfd, + 0xc9, 0x8f, 0xa0, 0xa1, 0x3c, 0xbe, 0x67, 0x6b, 0xf8, 0xe3, 0xaf, 0xb1, 0x52, 0x25, 0x2d, 0xd2, + 0xe6, 0xaa, 0x17, 0x84, 0x5d, 0xe9, 0x3b, 0x60, 0xcb, 0xdf, 0xd6, 0x7f, 0xca, 0xd3, 0xb0, 0x81, + 0x19, 0xd3, 0x4c, 0xc6, 0xbd, 0x59, 0xe7, 0xe3, 0xc8, 0x6f, 0xd6, 0xd1, 0x22, 0x4c, 0x6c, 0xd6, + 0xb5, 0xb8, 0xb6, 0x76, 0x54, 0x80, 0xee, 0xb0, 0xe4, 0x61, 0x15, 0xbf, 0x75, 0xe0, 0x86, 0xb8, + 0x15, 0xf6, 0x7d, 0x2e, 0x9c, 0xec, 0x44, 0x39, 0xb2, 0x60, 0xea, 0x71, 0xc7, 0xdd, 0x6b, 0x09, + 0x62, 0xac, 0x73, 0x5a, 0x19, 0xba, 0x05, 0x33, 0x3c, 0x53, 0x22, 0x0b, 0xfb, 0xcb, 0xb3, 0x6f, + 0xd9, 0xb1, 0x52, 0xd2, 0x6e, 0xcd, 0xeb, 0x86, 0x8e, 0xdb, 0xc5, 0xbe, 0xdd, 0xef, 0x86, 0x2e, + 0xcf, 0x9b, 0x3d, 0x61, 0x27, 0xca, 0xd1, 0xbb, 0x30, 0x27, 0xcb, 0x36, 0xfd, 0xd6, 0x01, 0x0e, + 0x42, 0x9f, 0x86, 0x48, 0xa7, 0x8f, 0xb1, 0x6d, 0x73, 0x25, 0x6d, 0xa1, 0xe3, 0xf5, 0xdb, 0x2b, + 0xdd, 0x97, 0xae, 0xef, 0xb1, 0x1c, 0x7b, 0xe3, 0xbc, 0x85, 0x58, 0xb9, 0xb5, 0x65, 0xfc, 0x02, + 0xbe, 0xc6, 0xe2, 0xb0, 0x6a, 0x80, 0x92, 0x12, 0x00, 0x7d, 0x1b, 0x26, 0xea, 0xf5, 0x55, 0xed, + 0x0e, 0x20, 0x6e, 0x96, 0xb7, 0x23, 0x08, 0xeb, 0x7d, 0x98, 0x97, 0x44, 0x58, 0xcc, 0x4b, 0xc5, + 0x05, 0x9c, 0x27, 0x48, 0x91, 0x9e, 0xe7, 0x51, 0x81, 0xf5, 0xc3, 0x04, 0x5e, 0xbd, 0x7f, 0x78, + 0xe8, 0xf8, 0xaf, 0x51, 0x45, 0xc7, 0x1b, 0x1a, 0x28, 0xeb, 0xaa, 0xc3, 0xbf, 0x38, 0x2a, 0x9f, + 0x53, 0x89, 0xdb, 0x30, 0xab, 0x7d, 0x91, 0xa2, 0x4b, 0xa5, 0xf8, 0x46, 0xa2, 0x7c, 0x2a, 0x57, + 0x01, 0x78, 0x50, 0xdc, 0x75, 0x6f, 0x9f, 0x7b, 0x06, 0x2b, 0x25, 0xd6, 0x23, 0x98, 0x8b, 0xd1, + 0xe4, 0x8a, 0xd5, 0xb7, 0x41, 0xaa, 0x82, 0x94, 0xe8, 0x50, 0xf5, 0xc2, 0xaf, 0x8e, 0xca, 0xd3, + 0x64, 0x59, 0xdc, 0x8d, 0x42, 0x5b, 0x89, 0xbf, 0xac, 0x67, 0xaa, 0xc6, 0x5e, 0xe9, 0x68, 0x6f, + 0x3a, 0x1e, 0xc0, 0x28, 0x2b, 0x89, 0x05, 0x90, 0x51, 0xa1, 0xf9, 0x68, 0x39, 0xa0, 0x35, 0x47, + 0xfd, 0xb6, 0xe8, 0x8f, 0x4a, 0xe4, 0x21, 0x6c, 0xed, 0xb0, 0x68, 0x86, 0x51, 0xb1, 0x0c, 0x52, + 0x33, 0x5c, 0x89, 0x3c, 0x99, 0x85, 0x59, 0x52, 0xc0, 0x75, 0xbd, 0x57, 0x1d, 0xdc, 0xde, 0xc7, + 0x64, 0xc1, 0x55, 0xa7, 0xb8, 0x59, 0x72, 0xd8, 0x21, 0x04, 0x28, 0x9a, 0xf5, 0x39, 0xcc, 0xd5, + 0x3a, 0xd8, 0xf1, 0xe3, 0xed, 0xa1, 0x5b, 0x30, 0x46, 0xcb, 0xf4, 0x2b, 0x31, 0x87, 0x14, 0xd1, + 0x2b, 0x31, 0x5e, 0x49, 0x94, 0x4c, 0x16, 0xd7, 0x43, 0x1d, 0x52, 0xa4, 0xdf, 0x8d, 0xd0, 0xdf, + 0x31, 0x3f, 0x21, 0xc3, 0xe8, 0x19, 0x9c, 0xf5, 0x19, 0xbd, 0x88, 0x36, 0xa5, 0xe1, 0x39, 0x99, + 0x1f, 0xda, 0x5f, 0x82, 0xc5, 0x4a, 0xaf, 0x87, 0xbb, 0xed, 0x08, 0x91, 0x1c, 0x83, 0x4f, 0xe6, + 0xdf, 0x8b, 0x2a, 0x30, 0x42, 0xa1, 0xa5, 0x69, 0x82, 0x77, 0xd7, 0xd0, 0x1d, 0x0a, 0xc7, 0x75, + 0x6e, 0xda, 0x00, 0xc3, 0xb4, 0xda, 0xb0, 0x50, 0xef, 0xef, 0x1d, 0xba, 0x2c, 0xe3, 0x0e, 0xf5, + 0x91, 0x17, 0x6d, 0xaf, 0x89, 0x00, 0xb4, 0x8c, 0x19, 0xb7, 0xef, 0x0a, 0xd9, 0x7c, 0x97, 0xde, + 0xee, 0x71, 0xbf, 0xf9, 0x97, 0x0f, 0xee, 0x46, 0xa8, 0x74, 0x3b, 0x64, 0xad, 0xd0, 0x6a, 0x1e, + 0xa4, 0xd6, 0xba, 0x08, 0x17, 0xd4, 0x63, 0x1e, 0x5b, 0x21, 0x73, 0x70, 0x51, 0x3f, 0xbe, 0xb1, + 0xe2, 0x2f, 0x61, 0x96, 0xd9, 0x25, 0x59, 0x44, 0xa0, 0xa5, 0x28, 0xf8, 0x4d, 0xbe, 0xb1, 0x14, + 0xbb, 0x13, 0xa4, 0x4e, 0x9a, 0x32, 0xd6, 0x5b, 0x63, 0x89, 0x39, 0x13, 0xbd, 0x5c, 0xd2, 0x8c, + 0x04, 0xf9, 0xc6, 0x52, 0x75, 0x8c, 0x9f, 0x3d, 0x08, 0x75, 0x36, 0xfd, 0xbf, 0x16, 0xea, 0x4b, + 0xd4, 0x1b, 0x75, 0x15, 0x3b, 0xf4, 0xae, 0xd9, 0xec, 0xd3, 0x37, 0x03, 0x79, 0xb7, 0x2d, 0xb6, + 0x1e, 0xb7, 0x6d, 0xfd, 0x49, 0x0e, 0x6e, 0x33, 0xb3, 0x85, 0x19, 0x8f, 0x9e, 0x26, 0x52, 0x90, + 0xd1, 0x87, 0xc0, 0x92, 0x63, 0x70, 0xbb, 0xa3, 0xc5, 0x7b, 0x9e, 0x45, 0x89, 0x21, 0xa0, 0x0a, + 0x4c, 0xa9, 0x97, 0xd2, 0xb1, 0x37, 0xc3, 0x29, 0x76, 0x05, 0x7b, 0xf2, 0xf0, 0xb9, 0x23, 0x7e, + 0xdc, 0xb9, 0x03, 0x13, 0x9b, 0x3d, 0xcc, 0xa4, 0x0a, 0x1a, 0x87, 0xe1, 0xb5, 0x8d, 0xb5, 0x6d, + 0x96, 0xac, 0x69, 0x6b, 0x67, 0xbb, 0x90, 0x43, 0x00, 0xa3, 0xcb, 0x2b, 0xeb, 0x2b, 0xdb, 0x2b, + 0x85, 0xfc, 0x9d, 0xa6, 0x7a, 0x13, 0x8d, 0x2e, 0xc3, 0xc2, 0xf2, 0x4a, 0x63, 0xad, 0xb6, 0xd2, + 0xdc, 0xfe, 0xfe, 0xd6, 0x4a, 0x53, 0x0f, 0xfd, 0x31, 0x0b, 0x05, 0xb5, 0x72, 0x7b, 0x73, 0x7b, + 0xab, 0x90, 0x43, 0x45, 0x98, 0x55, 0x4b, 0x77, 0x57, 0xaa, 0x95, 0x9d, 0xed, 0xd5, 0x8d, 0xc2, + 0x90, 0x35, 0x3c, 0x9e, 0x2f, 0xe4, 0xef, 0xfc, 0x44, 0xbb, 0xa6, 0x46, 0x8b, 0x50, 0xe4, 0xe0, + 0x3b, 0xf5, 0xca, 0xe3, 0xf4, 0x26, 0x58, 0xed, 0xb3, 0x47, 0x95, 0x42, 0x0e, 0x5d, 0x81, 0x4b, + 0x5a, 0xe9, 0x56, 0xa5, 0x5e, 0xdf, 0xdd, 0xb4, 0x97, 0xd7, 0x57, 0xea, 0xf5, 0x42, 0xfe, 0xce, + 0x2d, 0xfe, 0xce, 0x04, 0xcd, 0x00, 0x2c, 0xaf, 0xd4, 0x6b, 0x2b, 0x1b, 0xcb, 0x6b, 0x1b, 0x8f, + 0x0b, 0xe7, 0xd0, 0x34, 0x4c, 0x54, 0xe4, 0xcf, 0xdc, 0xd2, 0xcf, 0x7e, 0x37, 0x07, 0x93, 0x84, + 0x7b, 0xe2, 0x02, 0xf2, 0x4b, 0x65, 0xa7, 0xe1, 0xf2, 0x9c, 0x87, 0x50, 0x4e, 0xdd, 0x56, 0xe8, + 0x87, 0x54, 0xca, 0x50, 0x24, 0x29, 0xc0, 0xed, 0xdc, 0xfd, 0x1c, 0xb2, 0xa9, 0x09, 0x25, 0xb6, + 0x95, 0x49, 0xca, 0xe6, 0xad, 0xb1, 0x94, 0x52, 0x2d, 0x76, 0xc0, 0x27, 0x30, 0x4d, 0x76, 0x18, + 0x59, 0x8b, 0x2e, 0xc7, 0xe1, 0x95, 0x4d, 0xad, 0xb4, 0x68, 0xae, 0x94, 0xb1, 0xce, 0xa6, 0x68, + 0xff, 0x82, 0xd0, 0xe9, 0x12, 0xcd, 0x6d, 0x4e, 0xcd, 0x29, 0xdd, 0x6d, 0x61, 0x76, 0x87, 0x54, + 0xba, 0x10, 0x2b, 0x6e, 0x3c, 0xb8, 0x9f, 0x43, 0x75, 0xfa, 0x16, 0x46, 0xdb, 0xaa, 0x90, 0xb8, + 0x2e, 0x4e, 0xee, 0x61, 0xac, 0x37, 0x65, 0x69, 0xf7, 0x48, 0xd9, 0xe3, 0x36, 0x00, 0x25, 0x77, + 0x00, 0x74, 0x2d, 0x9a, 0x0a, 0xf3, 0xe6, 0x50, 0x9a, 0x4f, 0x18, 0xa7, 0x57, 0x88, 0x0c, 0x40, + 0x2b, 0x30, 0xc3, 0x7d, 0x7c, 0xf8, 0x9e, 0x84, 0xb2, 0x76, 0xb5, 0x54, 0x32, 0x8f, 0x29, 0x9f, + 0xe4, 0xbe, 0x86, 0x4a, 0xd1, 0x38, 0xe2, 0x9b, 0x5d, 0xe9, 0xb2, 0xb1, 0x8e, 0x8f, 0xef, 0x11, + 0xcc, 0xe8, 0x5b, 0x24, 0x12, 0x13, 0x64, 0xdc, 0x39, 0x53, 0x3b, 0xd4, 0x84, 0x85, 0x67, 0x8e, + 0x4b, 0xb5, 0x46, 0x6e, 0x02, 0x15, 0x06, 0x4c, 0x54, 0xce, 0xb0, 0x68, 0xd6, 0x71, 0xb7, 0x5d, + 0x1a, 0xf4, 0x0a, 0x94, 0xae, 0xdc, 0xba, 0x90, 0xf4, 0xba, 0x01, 0x18, 0x59, 0x7a, 0xa8, 0x77, + 0x93, 0x4d, 0xbf, 0x94, 0x76, 0x0d, 0x85, 0x9e, 0xd1, 0xad, 0x26, 0x46, 0x51, 0x59, 0x13, 0xa7, + 0x26, 0x57, 0xa4, 0x9e, 0x66, 0xa1, 0x1b, 0xbf, 0x4f, 0x0a, 0x50, 0x0a, 0xe3, 0x52, 0x89, 0xdd, + 0xcf, 0xa1, 0x2f, 0xc1, 0x4a, 0x23, 0xb7, 0xeb, 0x86, 0x07, 0xfc, 0x3e, 0xf5, 0xb2, 0x91, 0x00, + 0xff, 0x50, 0x32, 0xa8, 0xdb, 0x30, 0x6b, 0xba, 0xf9, 0x92, 0x0c, 0xcd, 0xb8, 0x16, 0x4b, 0x5d, + 0x05, 0x36, 0xd9, 0x30, 0xdb, 0xe9, 0x93, 0x94, 0x71, 0xf1, 0x92, 0x4a, 0xf3, 0x53, 0x98, 0x21, + 0xab, 0xe4, 0x29, 0xc6, 0xbd, 0x4a, 0xc7, 0x7d, 0x89, 0x03, 0x24, 0x5e, 0x48, 0xcb, 0xa2, 0x34, + 0xdc, 0xdb, 0x39, 0xf4, 0x1b, 0x30, 0x49, 0xf3, 0x4d, 0xf3, 0x07, 0x7d, 0x53, 0x6a, 0x0e, 0xea, + 0x92, 0xf8, 0x45, 0x2b, 0xef, 0xe7, 0xd0, 0x77, 0x60, 0xec, 0x31, 0x0e, 0xa9, 0xbb, 0xce, 0x75, + 0x69, 0x04, 0x66, 0x17, 0xae, 0x6b, 0x5d, 0xe9, 0x1a, 0x21, 0x3a, 0x1c, 0x3f, 0x67, 0xa0, 0x7b, + 0x00, 0x4c, 0x20, 0x50, 0x0a, 0xf1, 0xea, 0x52, 0xa2, 0xdb, 0xe8, 0x31, 0xd9, 0xe7, 0x3a, 0x38, + 0xc4, 0x27, 0x6d, 0x32, 0x8d, 0x47, 0xeb, 0x30, 0x23, 0xc3, 0xc3, 0x6d, 0x50, 0x7f, 0x4f, 0x2b, + 0x46, 0x2c, 0x38, 0x05, 0xb5, 0x8f, 0xc9, 0x57, 0xc1, 0x8c, 0xb2, 0xf2, 0xf5, 0x38, 0x4a, 0x7b, + 0x4f, 0x2e, 0x99, 0xc8, 0xc0, 0x14, 0x5c, 0x99, 0x42, 0x5b, 0xe2, 0xc6, 0x93, 0x6a, 0xc7, 0x70, + 0x31, 0x94, 0xd4, 0x76, 0xf5, 0x97, 0xe4, 0x91, 0xcc, 0x4d, 0x7b, 0x00, 0x5f, 0xba, 0x9e, 0x01, + 0xc1, 0xc4, 0x1d, 0x95, 0x24, 0xcb, 0xe4, 0x0c, 0xc2, 0x9a, 0x51, 0x33, 0xfe, 0x0a, 0x33, 0x53, + 0x32, 0x83, 0x71, 0x09, 0x25, 0xab, 0xc8, 0xae, 0xa7, 0xbd, 0x60, 0x8e, 0x76, 0x3d, 0xc3, 0x13, + 0xf3, 0x68, 0xd7, 0x33, 0x3e, 0x7a, 0x7e, 0xca, 0x4e, 0x45, 0x5a, 0xde, 0xcf, 0xc6, 0x12, 0x12, + 0xbe, 0x5b, 0x5a, 0x05, 0xff, 0xb0, 0xe7, 0x4d, 0x75, 0x8d, 0x87, 0xf7, 0x73, 0x68, 0x05, 0x2e, + 0x4a, 0xf7, 0xdc, 0xa8, 0x0a, 0xa5, 0x20, 0xa4, 0x2e, 0x82, 0xcf, 0xe1, 0x22, 0x5f, 0x52, 0x1a, + 0x99, 0x82, 0x94, 0x0e, 0xdc, 0x32, 0x9c, 0x4a, 0xe0, 0x09, 0xcc, 0xd5, 0x63, 0x83, 0x62, 0xf7, + 0x98, 0x97, 0x74, 0x12, 0x4a, 0xf2, 0xb7, 0x54, 0x5a, 0x4f, 0x01, 0xb1, 0x83, 0x87, 0x20, 0xf7, + 0xd2, 0xc5, 0xaf, 0xd0, 0x95, 0xd8, 0x90, 0x48, 0x21, 0x05, 0xa3, 0xe2, 0x25, 0x8d, 0x45, 0x68, + 0x9b, 0x05, 0xbd, 0x67, 0x89, 0x65, 0x9c, 0x9e, 0xb3, 0xe7, 0x76, 0xdc, 0xd0, 0xc5, 0x64, 0x85, + 0xa9, 0x08, 0x6a, 0x95, 0x98, 0xc6, 0x4b, 0xa9, 0x10, 0xe8, 0x33, 0x98, 0x7e, 0x8c, 0xc3, 0x28, + 0xbf, 0x1d, 0x5a, 0x48, 0x64, 0xc4, 0xe3, 0x53, 0x27, 0x1e, 0x83, 0xe8, 0x49, 0xf5, 0xd6, 0xa0, + 0xc0, 0xa4, 0xa3, 0x42, 0xe2, 0x4a, 0x82, 0x04, 0x07, 0x71, 0x7c, 0xe7, 0x30, 0x48, 0xe5, 0xd6, + 0x3d, 0x66, 0x28, 0x44, 0x62, 0xd9, 0xaa, 0xea, 0xd7, 0x45, 0xad, 0x4c, 0x86, 0xe2, 0x98, 0x33, + 0x26, 0x76, 0x43, 0x37, 0xa2, 0xad, 0x30, 0x35, 0x5b, 0x5b, 0x09, 0xc5, 0x9f, 0x6a, 0x34, 0x1e, + 0x22, 0x19, 0x23, 0xdc, 0x40, 0xf4, 0x96, 0xb6, 0x63, 0x9f, 0x8e, 0xee, 0x67, 0x30, 0x21, 0x33, + 0x84, 0x49, 0xb1, 0x12, 0xcf, 0xaf, 0x56, 0x2a, 0x26, 0x2b, 0xf8, 0x48, 0x3f, 0x65, 0xf9, 0x00, + 0x75, 0xfc, 0x78, 0x12, 0xad, 0x54, 0xc6, 0x7e, 0x04, 0x93, 0x4a, 0xfa, 0x2c, 0xb9, 0x90, 0x93, + 0x29, 0xb5, 0x4a, 0xd3, 0x4a, 0xdf, 0x1b, 0x4b, 0xf7, 0x73, 0xe8, 0x1e, 0xdd, 0x5a, 0xa8, 0xaf, + 0xf2, 0x5c, 0x84, 0xa6, 0x24, 0xd4, 0x89, 0xa1, 0xa0, 0x0f, 0xe8, 0x03, 0xed, 0x5a, 0xdf, 0xf7, + 0x71, 0x97, 0xe1, 0xa5, 0x69, 0x10, 0x31, 0xc4, 0xcf, 0xa8, 0x30, 0x51, 0x10, 0xd9, 0xc5, 0xe0, + 0x20, 0x6c, 0x16, 0xaa, 0xef, 0x7e, 0x0e, 0x3d, 0x84, 0x71, 0x91, 0x6d, 0x13, 0xcd, 0xeb, 0x5d, + 0x4d, 0x1f, 0xde, 0x43, 0x00, 0xc6, 0x6c, 0xda, 0x53, 0xbd, 0x3a, 0x95, 0x9d, 0x0f, 0xc9, 0x7e, + 0xd9, 0x3e, 0x25, 0xd2, 0x67, 0x62, 0xcf, 0xa4, 0x48, 0x45, 0x6d, 0x0a, 0x55, 0x76, 0xa6, 0xe1, + 0x13, 0x85, 0x57, 0x4b, 0x02, 0x1a, 0x29, 0xbc, 0xa6, 0xdc, 0xa0, 0xa9, 0x74, 0xd6, 0xa0, 0x50, + 0x69, 0x51, 0x39, 0x2e, 0x93, 0x14, 0xc9, 0xd3, 0x46, 0xbc, 0x42, 0xd0, 0x9a, 0x8b, 0xe7, 0x3c, + 0x5a, 0xc7, 0x0e, 0x7d, 0xb3, 0xbe, 0x20, 0x75, 0x82, 0x58, 0x95, 0x19, 0x23, 0xe3, 0x74, 0x31, + 0x5b, 0x23, 0xe7, 0xa1, 0xce, 0xd7, 0x23, 0xf3, 0x31, 0x95, 0x65, 0x4a, 0x02, 0xa7, 0xf9, 0x38, + 0xbe, 0x3c, 0x87, 0x09, 0xa7, 0x0c, 0x09, 0x5a, 0x81, 0xf3, 0xfc, 0x85, 0xac, 0x64, 0x4b, 0x1a, + 0x76, 0x5a, 0xf3, 0x1f, 0xc0, 0xcc, 0x0a, 0x91, 0xf5, 0xfd, 0xb6, 0xcb, 0xe2, 0x74, 0x20, 0x3d, + 0xf0, 0x42, 0x2a, 0xe2, 0xaa, 0xc8, 0x1f, 0xa8, 0x64, 0x36, 0x92, 0x5f, 0x69, 0x32, 0x79, 0x54, + 0x69, 0x56, 0x90, 0x55, 0x93, 0x20, 0xf1, 0x73, 0xf2, 0x42, 0x4a, 0x2e, 0x21, 0x74, 0x53, 0x3b, + 0xfb, 0xa5, 0x25, 0x04, 0x32, 0x68, 0x7b, 0x5f, 0x28, 0xd1, 0xd5, 0x53, 0x68, 0x66, 0x27, 0x19, + 0x4a, 0x1d, 0xb7, 0x7c, 0x59, 0x6f, 0x4c, 0x06, 0x84, 0xde, 0xd1, 0xa9, 0x67, 0x24, 0x0c, 0x4a, + 0x6d, 0x81, 0x9e, 0xad, 0xf5, 0x5c, 0x35, 0xe8, 0x6a, 0x76, 0x4a, 0x1d, 0xe5, 0x6c, 0x9d, 0x92, + 0xe4, 0xe6, 0x09, 0x5d, 0x66, 0x51, 0x08, 0x76, 0xa4, 0x9e, 0x54, 0xe3, 0x11, 0xe8, 0xa5, 0x0a, + 0x65, 0x4e, 0x58, 0xf3, 0x98, 0x8a, 0x4b, 0x25, 0x9c, 0x7b, 0xaa, 0xc0, 0xbb, 0x62, 0xa2, 0x13, + 0x28, 0x7b, 0xe1, 0xf9, 0x58, 0xea, 0x17, 0x69, 0x1e, 0x31, 0x27, 0x9f, 0x29, 0x5d, 0x4d, 0xab, + 0xe6, 0x14, 0xeb, 0x22, 0x03, 0xa8, 0x32, 0xd2, 0xab, 0xda, 0x0e, 0x95, 0x1c, 0x6c, 0x39, 0xb5, + 0x5e, 0xf2, 0xae, 0x10, 0x0f, 0xd5, 0x2f, 0x89, 0xa6, 0xc4, 0xf0, 0xcf, 0x10, 0x89, 0xb3, 0xea, + 0xd2, 0x18, 0xc8, 0xc1, 0x34, 0x3a, 0xdb, 0x30, 0x67, 0x8c, 0xac, 0x2f, 0xd5, 0x88, 0xac, 0xb8, + 0xfb, 0xa9, 0x54, 0x31, 0xcc, 0x9b, 0x93, 0x6b, 0xa0, 0xb7, 0xf4, 0xa3, 0xbf, 0x39, 0xd5, 0x40, + 0xe9, 0xe6, 0x00, 0x28, 0xce, 0xd0, 0x2f, 0xe9, 0xb6, 0x99, 0x68, 0xe3, 0xba, 0x62, 0x0c, 0x48, + 0x69, 0xc0, 0xca, 0x02, 0x91, 0x6b, 0x60, 0xd6, 0x94, 0xdc, 0x27, 0x95, 0xc5, 0x37, 0xd2, 0x69, + 0x46, 0x0b, 0xab, 0x21, 0xde, 0xb3, 0xa7, 0x72, 0x26, 0x33, 0x09, 0x43, 0xc6, 0x69, 0xb2, 0x24, + 0xd7, 0xc3, 0xc9, 0xbb, 0x9c, 0x6e, 0x19, 0x9a, 0x35, 0xa5, 0xfe, 0x88, 0x1b, 0x6e, 0x4c, 0x99, + 0x1d, 0x24, 0x1b, 0x32, 0x73, 0x87, 0x34, 0x98, 0x11, 0x47, 0xa7, 0xae, 0x1a, 0x71, 0x8c, 0xa4, + 0xaf, 0xa5, 0x03, 0x44, 0x2b, 0xc2, 0x90, 0xc3, 0x48, 0xae, 0x88, 0xf4, 0x6c, 0x4a, 0x72, 0x45, + 0x64, 0xa5, 0x40, 0xb2, 0xc5, 0x47, 0x97, 0xc2, 0x96, 0x8c, 0x84, 0x17, 0x19, 0x47, 0xae, 0x62, + 0x34, 0x71, 0xb1, 0x6e, 0x9f, 0x76, 0xda, 0xbe, 0x84, 0x4b, 0xa9, 0xc9, 0x2d, 0xd0, 0xdb, 0x89, + 0x0f, 0x3a, 0x85, 0x13, 0xe9, 0x3d, 0x9d, 0xd6, 0xf2, 0x52, 0x48, 0x2b, 0x56, 0x2c, 0x05, 0x46, + 0x42, 0xf4, 0x1b, 0xf2, 0x63, 0x30, 0xd1, 0xaf, 0xe4, 0xb8, 0x38, 0x89, 0xe8, 0x37, 0xa5, 0xc4, + 0x90, 0x32, 0x55, 0xe9, 0x97, 0x50, 0xe9, 0xe2, 0x15, 0xa7, 0x91, 0xa9, 0x27, 0xe9, 0x5a, 0x1a, + 0x9d, 0x65, 0x7a, 0xe4, 0x10, 0x29, 0x2f, 0xd0, 0x25, 0x8d, 0x4d, 0xda, 0x76, 0x5b, 0xd2, 0x06, + 0xa7, 0xef, 0xb4, 0x35, 0x6a, 0x2e, 0x96, 0x29, 0x36, 0x52, 0x7b, 0x71, 0x39, 0x49, 0x43, 0x33, + 0x15, 0x4b, 0x2e, 0xb0, 0xde, 0x2c, 0xc6, 0x99, 0xa3, 0x75, 0x28, 0x7d, 0x48, 0x48, 0x65, 0xcd, + 0x80, 0x2e, 0xa5, 0xab, 0xba, 0x17, 0xd9, 0xe1, 0x81, 0x05, 0x9c, 0x12, 0x0f, 0xd5, 0xe6, 0xa5, + 0xdd, 0x4b, 0x29, 0xcd, 0x30, 0x73, 0x6c, 0x51, 0x17, 0x16, 0x43, 0xb6, 0x10, 0x29, 0x43, 0x33, + 0x93, 0x89, 0x18, 0xd4, 0x3c, 0x29, 0x95, 0x53, 0x29, 0x66, 0xa6, 0x0f, 0x49, 0xed, 0xe9, 0x8f, + 0x15, 0xa9, 0x9c, 0xc8, 0x09, 0x82, 0x6e, 0xc7, 0x75, 0xbc, 0xb4, 0xb4, 0x21, 0x19, 0x52, 0x7f, + 0xd6, 0x94, 0x4e, 0x44, 0xb1, 0xdd, 0xa6, 0xe6, 0x1a, 0x31, 0x70, 0x41, 0x8a, 0xb7, 0x14, 0x6a, + 0x19, 0xc9, 0x45, 0x52, 0x7b, 0xf8, 0x03, 0x45, 0xbc, 0xc5, 0x92, 0x80, 0x48, 0xa3, 0xc2, 0x80, + 0x2c, 0x21, 0xa9, 0xb4, 0x37, 0xa8, 0xd3, 0x53, 0x32, 0x83, 0x87, 0xd4, 0x5d, 0xb2, 0xf2, 0x7b, + 0x18, 0x4d, 0xbb, 0x73, 0xc9, 0x21, 0x12, 0x7a, 0xf3, 0x31, 0xc3, 0xec, 0xa0, 0x8e, 0x49, 0x39, + 0x6c, 0xc8, 0xfc, 0x11, 0x93, 0xc3, 0xe9, 0xb9, 0x41, 0x32, 0x4e, 0x4c, 0xe7, 0xeb, 0xee, 0x7e, + 0x57, 0x49, 0xc3, 0x21, 0xcf, 0x4b, 0xc9, 0x54, 0x22, 0x52, 0xc4, 0x98, 0xb2, 0x76, 0x6c, 0x46, + 0xce, 0xd0, 0x6a, 0x42, 0x05, 0x54, 0x4a, 0xcf, 0x23, 0x21, 0xc5, 0x8d, 0x31, 0x03, 0x83, 0x42, + 0x50, 0xcd, 0x66, 0x20, 0x09, 0x1a, 0x12, 0x2b, 0x48, 0x82, 0xc6, 0xf4, 0x07, 0xcc, 0x04, 0x63, + 0x7b, 0x1d, 0xac, 0x9a, 0x60, 0x94, 0x5c, 0x04, 0x31, 0x5b, 0x08, 0xfa, 0x84, 0x5a, 0x42, 0xb2, + 0xcd, 0x27, 0x0b, 0x3a, 0xa5, 0x48, 0x5a, 0x3e, 0x14, 0x97, 0x01, 0xb4, 0x41, 0x9d, 0xf2, 0x60, + 0xe3, 0x06, 0x45, 0xd2, 0x8d, 0x1b, 0x6a, 0x47, 0xd3, 0xed, 0xa4, 0x53, 0x6a, 0x04, 0x5c, 0xc9, + 0x2b, 0x43, 0x98, 0x6e, 0xc9, 0x2b, 0x53, 0xf0, 0x6b, 0x7a, 0x06, 0xde, 0x16, 0x27, 0xf9, 0x88, + 0xde, 0x95, 0xcc, 0xe8, 0xd5, 0xa5, 0xab, 0xd9, 0x21, 0x9f, 0xf9, 0x3d, 0x5e, 0x21, 0x1e, 0xa4, + 0x17, 0x99, 0x82, 0x8f, 0x2b, 0xb1, 0x8f, 0xe5, 0x69, 0x28, 0x35, 0xba, 0xef, 0x96, 0x30, 0x56, + 0xeb, 0x74, 0x53, 0x42, 0x50, 0xab, 0xa4, 0xb3, 0x15, 0x94, 0x28, 0x5e, 0xaf, 0x7a, 0x36, 0x4d, + 0xc4, 0x03, 0x56, 0x15, 0x14, 0x43, 0x88, 0x5f, 0x57, 0x3c, 0x9e, 0x33, 0x27, 0xb4, 0x78, 0x47, + 0x3f, 0xeb, 0x65, 0xc4, 0x7e, 0x18, 0x78, 0x53, 0x8a, 0x7e, 0x24, 0xd2, 0x5f, 0x26, 0xc3, 0xbd, + 0xdf, 0x8c, 0x99, 0x5d, 0xcd, 0xd1, 0x02, 0x4a, 0x59, 0xd1, 0xe4, 0xd1, 0x33, 0x7a, 0xc5, 0xbe, + 0xb9, 0xb6, 0x5c, 0xe3, 0x6e, 0x43, 0x9e, 0x9f, 0xb8, 0xb6, 0xda, 0x75, 0xc3, 0x03, 0x96, 0xff, + 0x40, 0x91, 0x3e, 0x0c, 0x44, 0x43, 0x6c, 0x3c, 0x44, 0x75, 0xaa, 0xb9, 0x6b, 0xa5, 0x86, 0x9b, + 0x2b, 0x03, 0xc1, 0x92, 0x99, 0x20, 0xcd, 0xe0, 0x44, 0x15, 0x03, 0xf2, 0xe1, 0xe9, 0xdd, 0x4c, + 0xe9, 0x43, 0x96, 0x7e, 0xc1, 0x96, 0x8d, 0x99, 0xcc, 0x49, 0xc5, 0xf7, 0x63, 0x98, 0x63, 0x0c, + 0x8f, 0xbd, 0x54, 0xd0, 0xfa, 0xa3, 0x94, 0x97, 0x52, 0xca, 0xd1, 0x06, 0xf5, 0xdc, 0x88, 0x97, + 0x2a, 0xa7, 0x18, 0xf3, 0x53, 0x88, 0x54, 0x7a, 0x6c, 0x2a, 0x89, 0xda, 0xfe, 0x46, 0x53, 0xa9, + 0x21, 0x36, 0x96, 0xf8, 0x54, 0x6a, 0xa5, 0xa7, 0x9b, 0xca, 0x18, 0x41, 0x7d, 0x2a, 0xf5, 0x6e, + 0xa6, 0xf4, 0x61, 0xf0, 0x54, 0x9a, 0xc9, 0x9c, 0x7a, 0x2a, 0x63, 0xcf, 0x44, 0xb4, 0xfe, 0x98, + 0xa6, 0x32, 0x0e, 0xcf, 0xa6, 0x32, 0x5e, 0x1a, 0x3b, 0x90, 0x66, 0x4c, 0x65, 0x1c, 0xf3, 0x7b, + 0x94, 0x1e, 0x7b, 0x87, 0x72, 0xaa, 0xc9, 0x14, 0x31, 0x0d, 0x62, 0xa8, 0x8d, 0x87, 0x68, 0x97, + 0x5a, 0x43, 0x62, 0xe5, 0x27, 0x9b, 0xd0, 0xc5, 0x34, 0xa2, 0x74, 0x4a, 0xd7, 0x84, 0x9e, 0x15, + 0xef, 0x6e, 0x6a, 0x5f, 0xb2, 0xe6, 0x83, 0x4d, 0x6b, 0x9c, 0xd4, 0x69, 0x27, 0xf6, 0x99, 0x10, + 0x9a, 0x89, 0xa7, 0x3c, 0xb1, 0x5e, 0xa9, 0x93, 0x9b, 0x5a, 0x83, 0xb6, 0xa9, 0xad, 0x27, 0x59, + 0xae, 0xd8, 0x89, 0xd2, 0xde, 0x0c, 0x0d, 0xa4, 0x9a, 0x78, 0x1b, 0xa4, 0x52, 0x4d, 0x7b, 0x38, + 0x24, 0xa9, 0x26, 0xb1, 0x97, 0xe9, 0x67, 0xbb, 0xed, 0x93, 0x63, 0x52, 0x3b, 0x79, 0x86, 0xd2, + 0xf9, 0x27, 0x6e, 0x34, 0x75, 0xf0, 0xc6, 0x12, 0x5a, 0xa3, 0x0b, 0x50, 0x2f, 0xce, 0x3a, 0x64, + 0x9a, 0xc9, 0xd0, 0xf5, 0xb1, 0x2a, 0x5d, 0x2e, 0xf5, 0x3e, 0xa5, 0xb5, 0x9d, 0xde, 0x29, 0x79, + 0x02, 0x3f, 0xe1, 0xe8, 0xd2, 0x56, 0x07, 0xd3, 0x02, 0xd9, 0x81, 0x77, 0x10, 0x67, 0xe2, 0x4e, + 0xa0, 0xe8, 0xbb, 0x30, 0x21, 0x90, 0x07, 0x33, 0x24, 0x8e, 0x4d, 0x19, 0xf2, 0x19, 0x4c, 0x2a, + 0x3e, 0xa8, 0x28, 0xad, 0xa5, 0x0c, 0x95, 0x72, 0x52, 0xf1, 0x90, 0x3d, 0x3d, 0xfe, 0x32, 0x4c, + 0x6b, 0x1e, 0xb6, 0x52, 0x11, 0x32, 0xf9, 0xdd, 0x66, 0x51, 0xd1, 0x3c, 0x69, 0x25, 0x15, 0x93, + 0x7f, 0x6d, 0xb6, 0x52, 0xa6, 0xbc, 0x16, 0x54, 0x94, 0xb2, 0xe4, 0xb3, 0x45, 0x45, 0x29, 0x33, + 0x3d, 0x30, 0xfc, 0x0e, 0x4c, 0xf2, 0xe5, 0x91, 0x39, 0xb3, 0xe9, 0xa7, 0xe5, 0x39, 0xc5, 0x67, + 0xb0, 0xdf, 0x76, 0xc3, 0x9a, 0xd7, 0x7d, 0xee, 0xee, 0x0f, 0x9c, 0xe4, 0x24, 0x4a, 0x63, 0x09, + 0x35, 0x68, 0xec, 0x65, 0x11, 0x11, 0x1b, 0x87, 0xaf, 0x3c, 0xff, 0x85, 0xdb, 0xdd, 0x1f, 0x40, + 0xf2, 0x9a, 0x4e, 0x32, 0x8e, 0xc7, 0xe8, 0xd6, 0xd3, 0xe9, 0x0e, 0xc4, 0xcf, 0x38, 0x2d, 0x2f, + 0xd2, 0x7b, 0xfb, 0xd3, 0xf6, 0x38, 0xfd, 0xe6, 0xe0, 0x52, 0xe4, 0x6d, 0x67, 0xe3, 0x96, 0xe7, + 0xb7, 0x07, 0x13, 0x2b, 0xeb, 0xbe, 0x6d, 0x31, 0xb4, 0xc6, 0x12, 0xa1, 0x5a, 0x4f, 0xa5, 0x3a, + 0x08, 0x3b, 0x63, 0xb7, 0xb8, 0x4c, 0xc7, 0x7e, 0xca, 0xde, 0xa6, 0x7f, 0x19, 0x44, 0x02, 0x13, + 0x49, 0xbf, 0xe5, 0xe3, 0xe7, 0xd8, 0xa7, 0x2e, 0x93, 0x83, 0x9c, 0x05, 0x75, 0xf0, 0xc6, 0x12, + 0xa1, 0x52, 0x4f, 0x50, 0x49, 0x83, 0xce, 0x52, 0x94, 0xe8, 0xd0, 0x4e, 0xd8, 0x9b, 0x34, 0x32, + 0x1f, 0x52, 0x9b, 0xe5, 0xce, 0xda, 0x00, 0x8e, 0x08, 0x27, 0x5e, 0x01, 0xd8, 0x78, 0x40, 0x30, + 0xeb, 0x0a, 0x66, 0x12, 0x22, 0xb5, 0xcd, 0xef, 0x0a, 0xe3, 0xe4, 0xc0, 0x66, 0xd3, 0xbd, 0x11, + 0x26, 0x64, 0x5e, 0x08, 0xa4, 0x1c, 0xeb, 0xb5, 0xac, 0x07, 0xa5, 0x69, 0xd5, 0x65, 0x30, 0x40, + 0x15, 0xa6, 0x45, 0xab, 0xf9, 0x11, 0x94, 0x7b, 0x51, 0x63, 0xe2, 0x84, 0x38, 0x09, 0x66, 0x96, + 0x58, 0xf7, 0x5a, 0x2f, 0x54, 0xb3, 0x84, 0x12, 0x70, 0xbf, 0xa4, 0x87, 0xc3, 0xe7, 0x1b, 0x12, + 0x8d, 0x89, 0xaf, 0x3a, 0x68, 0xa8, 0x21, 0xf7, 0x55, 0xb3, 0x84, 0x9e, 0x1c, 0x40, 0x9a, 0x25, + 0x68, 0x83, 0x3a, 0xe5, 0xc1, 0x66, 0x09, 0x8a, 0xa4, 0x9b, 0x25, 0xd4, 0x8e, 0xa6, 0x8b, 0x0b, + 0x94, 0xcc, 0x0e, 0x20, 0x15, 0xde, 0xd4, 0xc4, 0x01, 0x19, 0xbe, 0x17, 0x17, 0x0d, 0x09, 0x4d, + 0xe4, 0x71, 0x3f, 0x3d, 0xd9, 0x49, 0x49, 0x77, 0x24, 0xb8, 0x9f, 0x43, 0x1b, 0x34, 0x41, 0x36, + 0x17, 0x60, 0x36, 0x0e, 0x42, 0xdf, 0xa5, 0x8f, 0x61, 0xd2, 0x77, 0x6b, 0xa1, 0xdf, 0x1a, 0x70, + 0x1a, 0xef, 0x12, 0x7a, 0x75, 0x33, 0xbd, 0x4c, 0xbc, 0x0c, 0x8b, 0x0e, 0x37, 0xff, 0x9d, 0xa6, + 0x8b, 0xe9, 0x4b, 0x7c, 0x8c, 0xdd, 0x7a, 0xa7, 0xa3, 0x16, 0xa2, 0x10, 0x78, 0x5c, 0x63, 0xbf, + 0x0b, 0xa3, 0x0c, 0x29, 0x75, 0x8f, 0x9c, 0x52, 0x71, 0xd0, 0x03, 0xe1, 0xa2, 0x45, 0x50, 0xb4, + 0xaa, 0xd4, 0x7e, 0x3d, 0x80, 0x09, 0x66, 0xcb, 0x3f, 0x39, 0xca, 0x27, 0xc2, 0x91, 0x2b, 0xab, + 0x63, 0xe9, 0xbe, 0x8d, 0xd3, 0xea, 0x85, 0xf7, 0xe9, 0x19, 0xf9, 0x1d, 0x7a, 0x9f, 0x22, 0xcc, + 0x96, 0xe9, 0xf8, 0x73, 0xb1, 0xa0, 0x71, 0x9c, 0xa5, 0x4c, 0x40, 0xca, 0xcc, 0x40, 0x69, 0xdd, + 0xbf, 0x90, 0xc0, 0x46, 0x9f, 0x88, 0xe7, 0x03, 0x12, 0x39, 0x09, 0x94, 0xc1, 0xb3, 0x19, 0xc6, + 0xe6, 0x37, 0x41, 0x96, 0x02, 0x76, 0x60, 0xb7, 0x4f, 0x72, 0xef, 0x33, 0x98, 0x75, 0x69, 0x54, + 0x36, 0xa9, 0xe2, 0x95, 0x08, 0x67, 0x98, 0x4e, 0xe8, 0x6a, 0x7a, 0x04, 0x44, 0x3a, 0x19, 0x4f, + 0xe8, 0xc1, 0x2a, 0x99, 0xe5, 0x29, 0x6d, 0x78, 0x19, 0x11, 0x15, 0xa3, 0x93, 0x64, 0x92, 0x5c, + 0x06, 0x5a, 0xd6, 0xc1, 0x94, 0x4d, 0xd8, 0xd9, 0x90, 0x5b, 0x13, 0x0e, 0x48, 0x27, 0x1f, 0x6c, + 0x86, 0x12, 0x64, 0xb8, 0x69, 0x1a, 0x38, 0x17, 0x69, 0xe4, 0x7e, 0x44, 0xf5, 0x3f, 0x73, 0x6a, + 0x97, 0x54, 0x62, 0xb7, 0x95, 0xcb, 0xca, 0xec, 0xa4, 0x30, 0x2f, 0xe8, 0xbb, 0x0c, 0x73, 0xc0, + 0xc7, 0x5b, 0x03, 0xa8, 0x08, 0x4e, 0xbc, 0x3d, 0x10, 0x4e, 0xde, 0x5b, 0xf0, 0xb4, 0xfc, 0xe6, + 0xf6, 0x06, 0x04, 0xb0, 0x34, 0x5c, 0x25, 0xa5, 0xe4, 0x4d, 0x11, 0x04, 0x75, 0xef, 0xae, 0xcc, + 0x31, 0xa4, 0xb1, 0xff, 0x7b, 0x4a, 0x76, 0xfd, 0x53, 0x4e, 0x42, 0xba, 0x46, 0x8f, 0x92, 0xd9, + 0x64, 0x50, 0x56, 0x60, 0xc1, 0xd2, 0xf5, 0x34, 0x0e, 0x07, 0xca, 0x55, 0x3f, 0xf7, 0x25, 0x89, + 0x85, 0x3e, 0x4d, 0x0b, 0xa2, 0x9a, 0x61, 0x3b, 0xe2, 0x0f, 0x55, 0xce, 0x84, 0x50, 0x72, 0xb6, + 0x4f, 0x4f, 0x48, 0x5e, 0x98, 0xc6, 0x08, 0x59, 0x19, 0xd3, 0x7b, 0x1a, 0x7f, 0x90, 0xf8, 0x54, + 0x9c, 0x76, 0x42, 0x9d, 0xe8, 0x71, 0x46, 0x32, 0xe5, 0x8d, 0xd4, 0xe5, 0x52, 0xd3, 0xef, 0xc8, + 0xd9, 0xcd, 0xc8, 0x97, 0x53, 0x23, 0x9f, 0x29, 0x6b, 0x42, 0xcb, 0xb7, 0x51, 0xb3, 0xd7, 0x23, + 0xab, 0x83, 0x21, 0x11, 0x47, 0x09, 0x44, 0xa5, 0xbd, 0x8e, 0xea, 0x50, 0x62, 0x4b, 0xc4, 0xf4, + 0xb0, 0x59, 0x7a, 0xd4, 0x9b, 0x2a, 0x33, 0x4e, 0x17, 0x75, 0x28, 0xb1, 0xe5, 0x72, 0x96, 0x44, + 0x9b, 0x34, 0xb7, 0x9a, 0x91, 0xe2, 0x4d, 0xe5, 0x59, 0x62, 0xfa, 0x73, 0xf1, 0x52, 0x76, 0xc3, + 0xe8, 0x87, 0x30, 0x67, 0x7c, 0x2f, 0x2e, 0xef, 0xb4, 0xb3, 0x5e, 0x93, 0x0f, 0x22, 0xfe, 0x02, + 0x8a, 0x69, 0xe9, 0x34, 0x22, 0x0f, 0xff, 0xec, 0x8c, 0x25, 0x52, 0xa6, 0x0e, 0xcc, 0xcb, 0xb1, + 0x01, 0xb3, 0xa6, 0x14, 0x15, 0xf2, 0xe3, 0xc8, 0xc8, 0x5f, 0x61, 0x7c, 0x46, 0xb0, 0x05, 0x73, + 0xc6, 0x34, 0x11, 0x92, 0x33, 0x59, 0x49, 0x24, 0x8c, 0x14, 0xbf, 0x80, 0x85, 0x94, 0x9c, 0x08, + 0xd1, 0xc5, 0x5b, 0x66, 0xce, 0x84, 0x0c, 0x07, 0x80, 0x52, 0x7a, 0xb8, 0x7d, 0xe9, 0xf7, 0x31, + 0x30, 0x22, 0x7f, 0xc9, 0x98, 0x83, 0x04, 0x6d, 0xd3, 0x45, 0x68, 0x8a, 0xbf, 0xaf, 0x2e, 0xc2, + 0x8c, 0xf8, 0xfc, 0x29, 0xcf, 0x3f, 0x16, 0x52, 0x42, 0xee, 0x67, 0x50, 0x3d, 0x41, 0x6f, 0x37, + 0x84, 0xfc, 0xd7, 0x63, 0xb0, 0xc7, 0x7c, 0x09, 0x8d, 0x01, 0xda, 0x8d, 0xfd, 0x54, 0x9e, 0x1b, + 0x77, 0x3a, 0x19, 0x6a, 0x10, 0x52, 0xdf, 0x1b, 0x13, 0xc8, 0xc6, 0x03, 0x72, 0x88, 0x50, 0x71, + 0xb3, 0x24, 0x6a, 0x02, 0x99, 0x2a, 0x9e, 0x1f, 0xc3, 0x54, 0x5d, 0x6d, 0xdc, 0xd0, 0x48, 0xea, + 0xa2, 0x90, 0x5e, 0xf6, 0x83, 0xfb, 0x3e, 0xf0, 0x56, 0xac, 0xd2, 0xe9, 0x9c, 0x68, 0x14, 0xa9, + 0x36, 0x59, 0x2d, 0xe2, 0xad, 0x94, 0xd4, 0xa6, 0x40, 0xce, 0xd2, 0x26, 0x6b, 0x0e, 0x92, 0xbb, + 0x42, 0x59, 0x1a, 0xc5, 0x0b, 0xcc, 0x38, 0x83, 0xcb, 0x45, 0x64, 0x08, 0x4b, 0xf8, 0x54, 0x7d, + 0x08, 0xce, 0xa2, 0x0c, 0x66, 0x18, 0x11, 0xe3, 0x0f, 0xc0, 0x63, 0x61, 0x09, 0x1b, 0x50, 0x14, + 0xf1, 0xbe, 0x58, 0xc4, 0xad, 0x28, 0xc2, 0x50, 0xe4, 0x1a, 0x95, 0x1e, 0x10, 0x2c, 0x83, 0x6f, + 0x85, 0x78, 0x2c, 0x0d, 0x69, 0x39, 0x4a, 0x09, 0xb2, 0x91, 0xb1, 0x1a, 0x20, 0x8a, 0x98, 0x21, + 0xed, 0x33, 0x89, 0x20, 0x1a, 0xa5, 0x4b, 0x86, 0x1a, 0xa9, 0x59, 0x4d, 0xa9, 0xf1, 0x35, 0xa4, + 0xe7, 0x88, 0x21, 0xe8, 0x46, 0xe9, 0xb2, 0xb1, 0x8e, 0x13, 0x0a, 0xe1, 0x72, 0x46, 0x6e, 0x39, + 0xa9, 0xad, 0x0e, 0xce, 0x81, 0x57, 0xba, 0x73, 0x12, 0x50, 0xde, 0x2a, 0x96, 0xf1, 0xfb, 0x92, + 0x50, 0xe8, 0x6d, 0x83, 0xab, 0xaf, 0x29, 0x6d, 0x5b, 0x69, 0x50, 0x5a, 0x3b, 0xb4, 0x0b, 0x8b, + 0x31, 0x57, 0x64, 0xbd, 0xa5, 0x41, 0x04, 0x52, 0x67, 0x70, 0x17, 0x16, 0xf9, 0xdb, 0xe8, 0x33, + 0x26, 0xbc, 0x07, 0x8b, 0x59, 0x09, 0xeb, 0xd0, 0x1d, 0xb3, 0xbb, 0xb1, 0x91, 0x3d, 0xe9, 0xaa, + 0xeb, 0xb5, 0xa4, 0xdb, 0x71, 0x6c, 0xde, 0x4f, 0x2b, 0x56, 0x9e, 0xc1, 0x8c, 0x9e, 0xac, 0x0e, + 0xa9, 0xa2, 0x23, 0x91, 0x3a, 0xaf, 0x74, 0x25, 0xa5, 0x96, 0xaf, 0x8f, 0xcf, 0xa8, 0xa0, 0x97, + 0x15, 0x6a, 0xbc, 0x84, 0x78, 0x32, 0xb8, 0x92, 0x21, 0xf3, 0x1d, 0xfa, 0x0e, 0x9c, 0x8f, 0xde, + 0xb7, 0x31, 0x12, 0x06, 0xb0, 0x0c, 0x7b, 0xd1, 0xf9, 0xe8, 0xa5, 0xdb, 0xe9, 0xd1, 0x57, 0x85, + 0xb4, 0x8f, 0xd0, 0xaf, 0x24, 0x3c, 0xb0, 0xb5, 0x31, 0x9c, 0x44, 0xe8, 0x2b, 0xbc, 0x3d, 0xed, + 0xec, 0xb4, 0xe8, 0xe7, 0x66, 0x0e, 0x1c, 0xa3, 0x7e, 0x6e, 0x99, 0xc1, 0x6d, 0xa4, 0x86, 0x99, + 0x42, 0xa7, 0x03, 0xd7, 0x07, 0x86, 0xba, 0x41, 0xf7, 0xb4, 0xc8, 0x02, 0x83, 0x83, 0xe2, 0xa4, + 0x0d, 0xa9, 0xba, 0xfc, 0x8b, 0x3f, 0xbf, 0x9a, 0xfb, 0xc5, 0x2f, 0xaf, 0xe6, 0xfe, 0xe3, 0x2f, + 0xaf, 0xe6, 0xfe, 0xfb, 0x2f, 0xaf, 0xe6, 0x7e, 0xb0, 0x74, 0xb2, 0xb8, 0x73, 0xad, 0x8e, 0x8b, + 0xbb, 0xe1, 0x3d, 0x46, 0x6e, 0x94, 0xfe, 0xf7, 0xf0, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0x89, + 0x0a, 0xd3, 0x8e, 0x03, 0xcc, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -25400,6 +25415,29 @@ func (m *Event_OktaAssignment) MarshalToSizedBuffer(dAtA []byte) (int, error) { } return len(dAtA) - i, nil } +func (m *Event_Integration) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Event_Integration) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.Integration != nil { + { + size, err := m.Integration.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintAuthservice(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x2 + i-- + dAtA[i] = 0xd2 + } + return len(dAtA) - i, nil +} func (m *Watch) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -25884,12 +25922,12 @@ func (m *UserCertsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { i-- dAtA[i] = 0x22 } - n45, err45 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err45 != nil { - return 0, err45 + n46, err46 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err46 != nil { + return 0, err46 } - i -= n45 - i = encodeVarintAuthservice(dAtA, i, uint64(n45)) + i -= n46 + i = encodeVarintAuthservice(dAtA, i, uint64(n46)) i-- dAtA[i] = 0x1a if len(m.Username) > 0 { @@ -27506,12 +27544,12 @@ func (m *GenerateAppTokenRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) dAtA[i] = 0x2a } } - n57, err57 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) - if err57 != nil { - return 0, err57 + n58, err58 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Expires):]) + if err58 != nil { + return 0, err58 } - i -= n57 - i = encodeVarintAuthservice(dAtA, i, uint64(n57)) + i -= n58 + i = encodeVarintAuthservice(dAtA, i, uint64(n58)) i-- dAtA[i] = 0x22 if len(m.URI) > 0 { @@ -31085,21 +31123,21 @@ func (m *GetEventsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { dAtA[i] = 0x22 } } - n99, err99 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) - if err99 != nil { - return 0, err99 - } - i -= n99 - i = encodeVarintAuthservice(dAtA, i, uint64(n99)) - i-- - dAtA[i] = 0x1a - n100, err100 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + n100, err100 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) if err100 != nil { return 0, err100 } i -= n100 i = encodeVarintAuthservice(dAtA, i, uint64(n100)) i-- + dAtA[i] = 0x1a + n101, err101 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + if err101 != nil { + return 0, err101 + } + i -= n101 + i = encodeVarintAuthservice(dAtA, i, uint64(n101)) + i-- dAtA[i] = 0x12 if len(m.Namespace) > 0 { i -= len(m.Namespace) @@ -31152,21 +31190,21 @@ func (m *GetSessionEventsRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) i-- dAtA[i] = 0x18 } - n101, err101 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) - if err101 != nil { - return 0, err101 - } - i -= n101 - i = encodeVarintAuthservice(dAtA, i, uint64(n101)) - i-- - dAtA[i] = 0x12 - n102, err102 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + n102, err102 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.EndDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.EndDate):]) if err102 != nil { return 0, err102 } i -= n102 i = encodeVarintAuthservice(dAtA, i, uint64(n102)) i-- + dAtA[i] = 0x12 + n103, err103 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.StartDate, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.StartDate):]) + if err103 != nil { + return 0, err103 + } + i -= n103 + i = encodeVarintAuthservice(dAtA, i, uint64(n103)) + i-- dAtA[i] = 0xa return len(dAtA) - i, nil } @@ -32490,12 +32528,12 @@ func (m *RecoveryCodes) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } - n109, err109 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) - if err109 != nil { - return 0, err109 + n110, err110 := github_com_gogo_protobuf_types.StdTimeMarshalTo(m.Created, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(m.Created):]) + if err110 != nil { + return 0, err110 } - i -= n109 - i = encodeVarintAuthservice(dAtA, i, uint64(n109)) + i -= n110 + i = encodeVarintAuthservice(dAtA, i, uint64(n110)) i-- dAtA[i] = 0x12 if len(m.Codes) > 0 { @@ -33528,12 +33566,12 @@ func (m *SessionTrackerUpdateExpiry) MarshalToSizedBuffer(dAtA []byte) (int, err copy(dAtA[i:], m.XXX_unrecognized) } if m.Expires != nil { - n126, err126 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) - if err126 != nil { - return 0, err126 + n127, err127 := github_com_gogo_protobuf_types.StdTimeMarshalTo(*m.Expires, dAtA[i-github_com_gogo_protobuf_types.SizeOfStdTime(*m.Expires):]) + if err127 != nil { + return 0, err127 } - i -= n126 - i = encodeVarintAuthservice(dAtA, i, uint64(n126)) + i -= n127 + i = encodeVarintAuthservice(dAtA, i, uint64(n127)) i-- dAtA[i] = 0xa } @@ -35951,6 +35989,18 @@ func (m *Event_OktaAssignment) Size() (n int) { } return n } +func (m *Event_Integration) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.Integration != nil { + l = m.Integration.Size() + n += 2 + l + sovAuthservice(uint64(l)) + } + return n +} func (m *Watch) Size() (n int) { if m == nil { return 0 @@ -42119,6 +42169,41 @@ func (m *Event) Unmarshal(dAtA []byte) error { } m.Resource = &Event_OktaAssignment{v} iNdEx = postIndex + case 42: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Integration", 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.IntegrationV1{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.Resource = &Event_Integration{v} + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipAuthservice(dAtA[iNdEx:]) 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 new file mode 100644 index 0000000000000..c2f634328b8d7 --- /dev/null +++ b/api/gen/proto/go/teleport/integration/v1/integration_service.pb.go @@ -0,0 +1,646 @@ +// Copyright 2023 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.30.0 +// protoc (unknown) +// source: teleport/integration/v1/integration_service.proto + +package v1 + +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) +) + +// ListIntegrationsRequest is a request for a paginated list of Integrations. +type ListIntegrationsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Limit is the maximum amount of resources to retrieve. + 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"` +} + +func (x *ListIntegrationsRequest) Reset() { + *x = ListIntegrationsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListIntegrationsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListIntegrationsRequest) ProtoMessage() {} + +func (x *ListIntegrationsRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_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 ListIntegrationsRequest.ProtoReflect.Descriptor instead. +func (*ListIntegrationsRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{0} +} + +func (x *ListIntegrationsRequest) GetLimit() int32 { + if x != nil { + return x.Limit + } + return 0 +} + +func (x *ListIntegrationsRequest) GetNextKey() string { + if x != nil { + return x.NextKey + } + return "" +} + +// ListIntegrationsResponse is the response for ListIntegrationsRequest. +type ListIntegrationsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Integrations is a list of Integrations. + Integrations []*types.IntegrationV1 `protobuf:"bytes,1,rep,name=integrations,proto3" json:"integrations,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"` + // TotalCount is the total number of integrations in all pages. + TotalCount int32 `protobuf:"varint,3,opt,name=total_count,json=totalCount,proto3" json:"total_count,omitempty"` +} + +func (x *ListIntegrationsResponse) Reset() { + *x = ListIntegrationsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListIntegrationsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListIntegrationsResponse) ProtoMessage() {} + +func (x *ListIntegrationsResponse) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_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 ListIntegrationsResponse.ProtoReflect.Descriptor instead. +func (*ListIntegrationsResponse) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{1} +} + +func (x *ListIntegrationsResponse) GetIntegrations() []*types.IntegrationV1 { + if x != nil { + return x.Integrations + } + return nil +} + +func (x *ListIntegrationsResponse) GetNextKey() string { + if x != nil { + return x.NextKey + } + return "" +} + +func (x *ListIntegrationsResponse) GetTotalCount() int32 { + if x != nil { + return x.TotalCount + } + return 0 +} + +// GetIntegrationRequest is a request for a specific Integration resource. +type GetIntegrationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Name is the name of the Integration to be requested. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *GetIntegrationRequest) Reset() { + *x = GetIntegrationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetIntegrationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetIntegrationRequest) ProtoMessage() {} + +func (x *GetIntegrationRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_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 GetIntegrationRequest.ProtoReflect.Descriptor instead. +func (*GetIntegrationRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{2} +} + +func (x *GetIntegrationRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// CreateIntegrationRequest is the request to create the provided integration. +type CreateIntegrationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Integration is the integration to be created. + Integration *types.IntegrationV1 `protobuf:"bytes,1,opt,name=integration,proto3" json:"integration,omitempty"` +} + +func (x *CreateIntegrationRequest) Reset() { + *x = CreateIntegrationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateIntegrationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateIntegrationRequest) ProtoMessage() {} + +func (x *CreateIntegrationRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[3] + 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 CreateIntegrationRequest.ProtoReflect.Descriptor instead. +func (*CreateIntegrationRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{3} +} + +func (x *CreateIntegrationRequest) GetIntegration() *types.IntegrationV1 { + if x != nil { + return x.Integration + } + return nil +} + +// UpdateIntegrationRequest is the request to update the provided integration. +type UpdateIntegrationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Integration is the integration to be created. + Integration *types.IntegrationV1 `protobuf:"bytes,1,opt,name=integration,proto3" json:"integration,omitempty"` +} + +func (x *UpdateIntegrationRequest) Reset() { + *x = UpdateIntegrationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpdateIntegrationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateIntegrationRequest) ProtoMessage() {} + +func (x *UpdateIntegrationRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[4] + 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 UpdateIntegrationRequest.ProtoReflect.Descriptor instead. +func (*UpdateIntegrationRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{4} +} + +func (x *UpdateIntegrationRequest) GetIntegration() *types.IntegrationV1 { + if x != nil { + return x.Integration + } + return nil +} + +// DeleteIntegrationRequest is a request for deleting a specific Integration resource. +type DeleteIntegrationRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Name is the name of the Integration to be deleted. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *DeleteIntegrationRequest) Reset() { + *x = DeleteIntegrationRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteIntegrationRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteIntegrationRequest) ProtoMessage() {} + +func (x *DeleteIntegrationRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[5] + 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 DeleteIntegrationRequest.ProtoReflect.Descriptor instead. +func (*DeleteIntegrationRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{5} +} + +func (x *DeleteIntegrationRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// DeleteAllIntegrationsRequest is the request for deleting all integrations. +type DeleteAllIntegrationsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteAllIntegrationsRequest) Reset() { + *x = DeleteAllIntegrationsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteAllIntegrationsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteAllIntegrationsRequest) ProtoMessage() {} + +func (x *DeleteAllIntegrationsRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_integration_v1_integration_service_proto_msgTypes[6] + 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 DeleteAllIntegrationsRequest.ProtoReflect.Descriptor instead. +func (*DeleteAllIntegrationsRequest) Descriptor() ([]byte, []int) { + return file_teleport_integration_v1_integration_service_proto_rawDescGZIP(), []int{6} +} + +var File_teleport_integration_v1_integration_service_proto protoreflect.FileDescriptor + +var file_teleport_integration_v1_integration_service_proto_rawDesc = []byte{ + 0x0a, 0x31, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x67, + 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, + 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, + 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, 0x2b, 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, + 0x32, 0xe9, 0x04, 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, 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, 0x42, 0x4c, 0x5a, 0x4a, + 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, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, +} + +var ( + file_teleport_integration_v1_integration_service_proto_rawDescOnce sync.Once + file_teleport_integration_v1_integration_service_proto_rawDescData = file_teleport_integration_v1_integration_service_proto_rawDesc +) + +func file_teleport_integration_v1_integration_service_proto_rawDescGZIP() []byte { + file_teleport_integration_v1_integration_service_proto_rawDescOnce.Do(func() { + file_teleport_integration_v1_integration_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_teleport_integration_v1_integration_service_proto_rawDescData) + }) + return file_teleport_integration_v1_integration_service_proto_rawDescData +} + +var file_teleport_integration_v1_integration_service_proto_msgTypes = make([]protoimpl.MessageInfo, 7) +var file_teleport_integration_v1_integration_service_proto_goTypes = []interface{}{ + (*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 + (*types.IntegrationV1)(nil), // 7: types.IntegrationV1 + (*emptypb.Empty)(nil), // 8: google.protobuf.Empty +} +var file_teleport_integration_v1_integration_service_proto_depIdxs = []int32{ + 7, // 0: teleport.integration.v1.ListIntegrationsResponse.integrations:type_name -> types.IntegrationV1 + 7, // 1: teleport.integration.v1.CreateIntegrationRequest.integration:type_name -> types.IntegrationV1 + 7, // 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 + 1, // 9: teleport.integration.v1.IntegrationService.ListIntegrations:output_type -> teleport.integration.v1.ListIntegrationsResponse + 7, // 10: teleport.integration.v1.IntegrationService.GetIntegration:output_type -> types.IntegrationV1 + 7, // 11: teleport.integration.v1.IntegrationService.CreateIntegration:output_type -> types.IntegrationV1 + 7, // 12: teleport.integration.v1.IntegrationService.UpdateIntegration:output_type -> types.IntegrationV1 + 8, // 13: teleport.integration.v1.IntegrationService.DeleteIntegration:output_type -> google.protobuf.Empty + 8, // 14: teleport.integration.v1.IntegrationService.DeleteAllIntegrations:output_type -> google.protobuf.Empty + 9, // [9:15] is the sub-list for method output_type + 3, // [3:9] 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 +} + +func init() { file_teleport_integration_v1_integration_service_proto_init() } +func file_teleport_integration_v1_integration_service_proto_init() { + if File_teleport_integration_v1_integration_service_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_teleport_integration_v1_integration_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListIntegrationsRequest); 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[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListIntegrationsResponse); 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[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetIntegrationRequest); 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[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateIntegrationRequest); 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[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateIntegrationRequest); 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[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteIntegrationRequest); 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[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteAllIntegrationsRequest); 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_integration_v1_integration_service_proto_rawDesc, + NumEnums: 0, + NumMessages: 7, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_teleport_integration_v1_integration_service_proto_goTypes, + DependencyIndexes: file_teleport_integration_v1_integration_service_proto_depIdxs, + MessageInfos: file_teleport_integration_v1_integration_service_proto_msgTypes, + }.Build() + File_teleport_integration_v1_integration_service_proto = out.File + file_teleport_integration_v1_integration_service_proto_rawDesc = nil + file_teleport_integration_v1_integration_service_proto_goTypes = nil + file_teleport_integration_v1_integration_service_proto_depIdxs = nil +} 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 new file mode 100644 index 0000000000000..ec23efa6326fd --- /dev/null +++ b/api/gen/proto/go/teleport/integration/v1/integration_service_grpc.pb.go @@ -0,0 +1,322 @@ +// Copyright 2023 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.3.0 +// - protoc (unknown) +// source: teleport/integration/v1/integration_service.proto + +package v1 + +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.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +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" +) + +// IntegrationServiceClient is the client API for IntegrationService 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. +type IntegrationServiceClient interface { + // ListIntegrations returns a paginated list of Integration resources. + ListIntegrations(ctx context.Context, in *ListIntegrationsRequest, opts ...grpc.CallOption) (*ListIntegrationsResponse, error) + // GetIntegration returns the specified Integration resource. + GetIntegration(ctx context.Context, in *GetIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) + // CreateIntegration creates a new Integration resource. + CreateIntegration(ctx context.Context, in *CreateIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) + // UpdateIntegration updates an existing Integration resource. + UpdateIntegration(ctx context.Context, in *UpdateIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) + // DeleteIntegration removes the specified Integration resource. + DeleteIntegration(ctx context.Context, in *DeleteIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + // DeleteAllIntegrations removes all Integrations. + DeleteAllIntegrations(ctx context.Context, in *DeleteAllIntegrationsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) +} + +type integrationServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewIntegrationServiceClient(cc grpc.ClientConnInterface) IntegrationServiceClient { + return &integrationServiceClient{cc} +} + +func (c *integrationServiceClient) ListIntegrations(ctx context.Context, in *ListIntegrationsRequest, opts ...grpc.CallOption) (*ListIntegrationsResponse, error) { + out := new(ListIntegrationsResponse) + err := c.cc.Invoke(ctx, IntegrationService_ListIntegrations_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *integrationServiceClient) GetIntegration(ctx context.Context, in *GetIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) { + out := new(types.IntegrationV1) + err := c.cc.Invoke(ctx, IntegrationService_GetIntegration_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *integrationServiceClient) CreateIntegration(ctx context.Context, in *CreateIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) { + out := new(types.IntegrationV1) + err := c.cc.Invoke(ctx, IntegrationService_CreateIntegration_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *integrationServiceClient) UpdateIntegration(ctx context.Context, in *UpdateIntegrationRequest, opts ...grpc.CallOption) (*types.IntegrationV1, error) { + out := new(types.IntegrationV1) + err := c.cc.Invoke(ctx, IntegrationService_UpdateIntegration_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *integrationServiceClient) DeleteIntegration(ctx context.Context, in *DeleteIntegrationRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, IntegrationService_DeleteIntegration_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *integrationServiceClient) DeleteAllIntegrations(ctx context.Context, in *DeleteAllIntegrationsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { + out := new(emptypb.Empty) + err := c.cc.Invoke(ctx, IntegrationService_DeleteAllIntegrations_FullMethodName, in, out, opts...) + 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 +type IntegrationServiceServer interface { + // ListIntegrations returns a paginated list of Integration resources. + ListIntegrations(context.Context, *ListIntegrationsRequest) (*ListIntegrationsResponse, error) + // GetIntegration returns the specified Integration resource. + GetIntegration(context.Context, *GetIntegrationRequest) (*types.IntegrationV1, error) + // CreateIntegration creates a new Integration resource. + CreateIntegration(context.Context, *CreateIntegrationRequest) (*types.IntegrationV1, error) + // UpdateIntegration updates an existing Integration resource. + UpdateIntegration(context.Context, *UpdateIntegrationRequest) (*types.IntegrationV1, error) + // DeleteIntegration removes the specified Integration resource. + DeleteIntegration(context.Context, *DeleteIntegrationRequest) (*emptypb.Empty, error) + // DeleteAllIntegrations removes all Integrations. + DeleteAllIntegrations(context.Context, *DeleteAllIntegrationsRequest) (*emptypb.Empty, error) + mustEmbedUnimplementedIntegrationServiceServer() +} + +// UnimplementedIntegrationServiceServer must be embedded to have forward compatible implementations. +type UnimplementedIntegrationServiceServer struct { +} + +func (UnimplementedIntegrationServiceServer) ListIntegrations(context.Context, *ListIntegrationsRequest) (*ListIntegrationsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListIntegrations not implemented") +} +func (UnimplementedIntegrationServiceServer) GetIntegration(context.Context, *GetIntegrationRequest) (*types.IntegrationV1, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetIntegration not implemented") +} +func (UnimplementedIntegrationServiceServer) CreateIntegration(context.Context, *CreateIntegrationRequest) (*types.IntegrationV1, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateIntegration not implemented") +} +func (UnimplementedIntegrationServiceServer) UpdateIntegration(context.Context, *UpdateIntegrationRequest) (*types.IntegrationV1, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateIntegration not implemented") +} +func (UnimplementedIntegrationServiceServer) DeleteIntegration(context.Context, *DeleteIntegrationRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteIntegration not implemented") +} +func (UnimplementedIntegrationServiceServer) DeleteAllIntegrations(context.Context, *DeleteAllIntegrationsRequest) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteAllIntegrations not implemented") +} +func (UnimplementedIntegrationServiceServer) mustEmbedUnimplementedIntegrationServiceServer() {} + +// UnsafeIntegrationServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to IntegrationServiceServer will +// result in compilation errors. +type UnsafeIntegrationServiceServer interface { + mustEmbedUnimplementedIntegrationServiceServer() +} + +func RegisterIntegrationServiceServer(s grpc.ServiceRegistrar, srv IntegrationServiceServer) { + s.RegisterService(&IntegrationService_ServiceDesc, srv) +} + +func _IntegrationService_ListIntegrations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ListIntegrationsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).ListIntegrations(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_ListIntegrations_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).ListIntegrations(ctx, req.(*ListIntegrationsRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _IntegrationService_GetIntegration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetIntegrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).GetIntegration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_GetIntegration_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).GetIntegration(ctx, req.(*GetIntegrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _IntegrationService_CreateIntegration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateIntegrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).CreateIntegration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_CreateIntegration_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).CreateIntegration(ctx, req.(*CreateIntegrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _IntegrationService_UpdateIntegration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateIntegrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).UpdateIntegration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_UpdateIntegration_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).UpdateIntegration(ctx, req.(*UpdateIntegrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _IntegrationService_DeleteIntegration_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteIntegrationRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).DeleteIntegration(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_DeleteIntegration_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).DeleteIntegration(ctx, req.(*DeleteIntegrationRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _IntegrationService_DeleteAllIntegrations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteAllIntegrationsRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(IntegrationServiceServer).DeleteAllIntegrations(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: IntegrationService_DeleteAllIntegrations_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(IntegrationServiceServer).DeleteAllIntegrations(ctx, req.(*DeleteAllIntegrationsRequest)) + } + 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) +var IntegrationService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "teleport.integration.v1.IntegrationService", + HandlerType: (*IntegrationServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ListIntegrations", + Handler: _IntegrationService_ListIntegrations_Handler, + }, + { + MethodName: "GetIntegration", + Handler: _IntegrationService_GetIntegration_Handler, + }, + { + MethodName: "CreateIntegration", + Handler: _IntegrationService_CreateIntegration_Handler, + }, + { + MethodName: "UpdateIntegration", + Handler: _IntegrationService_UpdateIntegration_Handler, + }, + { + MethodName: "DeleteIntegration", + Handler: _IntegrationService_DeleteIntegration_Handler, + }, + { + MethodName: "DeleteAllIntegrations", + Handler: _IntegrationService_DeleteAllIntegrations_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 new file mode 100644 index 0000000000000..cf5ad106b80f8 --- /dev/null +++ b/api/proto/teleport/integration/v1/integration_service.proto @@ -0,0 +1,88 @@ +// Copyright 2023 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.integration.v1; + +import "google/protobuf/empty.proto"; +import "teleport/legacy/types/types.proto"; + +option go_package = "github.com/gravitational/teleport/api/gen/proto/go/teleport/integration/v1"; + +// IntegrationService provides methods to manage Integrations with 3rd party APIs. +service IntegrationService { + // ListIntegrations returns a paginated list of Integration resources. + rpc ListIntegrations(ListIntegrationsRequest) returns (ListIntegrationsResponse); + + // GetIntegration returns the specified Integration resource. + rpc GetIntegration(GetIntegrationRequest) returns (types.IntegrationV1); + + // CreateIntegration creates a new Integration resource. + rpc CreateIntegration(CreateIntegrationRequest) returns (types.IntegrationV1); + + // UpdateIntegration updates an existing Integration resource. + rpc UpdateIntegration(UpdateIntegrationRequest) returns (types.IntegrationV1); + + // DeleteIntegration removes the specified Integration resource. + rpc DeleteIntegration(DeleteIntegrationRequest) returns (google.protobuf.Empty); + + // DeleteAllIntegrations removes all Integrations. + rpc DeleteAllIntegrations(DeleteAllIntegrationsRequest) returns (google.protobuf.Empty); +} + +// ListIntegrationsRequest is a request for a paginated list of Integrations. +message ListIntegrationsRequest { + // Limit is the maximum amount of resources to retrieve. + int32 limit = 1; + // NextKey is the key for the next page of Integrations. + string next_key = 2; +} + +// ListIntegrationsResponse is the response for ListIntegrationsRequest. +message ListIntegrationsResponse { + // Integrations is a list of Integrations. + repeated types.IntegrationV1 integrations = 1; + // NextKey is the key for the next page of Integrations. + string next_key = 2; + // TotalCount is the total number of integrations in all pages. + int32 total_count = 3; +} + +// GetIntegrationRequest is a request for a specific Integration resource. +message GetIntegrationRequest { + // Name is the name of the Integration to be requested. + string name = 1; +} + +// CreateIntegrationRequest is the request to create the provided integration. +message CreateIntegrationRequest { + // Integration is the integration to be created. + types.IntegrationV1 integration = 1; +} + +// UpdateIntegrationRequest is the request to update the provided integration. +message UpdateIntegrationRequest { + // Integration is the integration to be created. + types.IntegrationV1 integration = 1; +} + +// DeleteIntegrationRequest is a request for deleting a specific Integration resource. +message DeleteIntegrationRequest { + // Name is the name of the Integration to be deleted. + string name = 1; +} + +// DeleteAllIntegrationsRequest is the request for deleting all integrations. +message DeleteAllIntegrationsRequest {} diff --git a/api/proto/teleport/legacy/client/proto/authservice.proto b/api/proto/teleport/legacy/client/proto/authservice.proto index 0c38f9bb27e2e..e7f68b4754b8e 100644 --- a/api/proto/teleport/legacy/client/proto/authservice.proto +++ b/api/proto/teleport/legacy/client/proto/authservice.proto @@ -130,6 +130,8 @@ message Event { types.OktaImportRuleV1 OktaImportRule = 40 [(gogoproto.jsontag) = "okta_import_rule,omitempty"]; // OktaAssignment is an OktaAssignment resource. types.OktaAssignmentV1 OktaAssignment = 41 [(gogoproto.jsontag) = "okta_assignment,omitempty"]; + // Integration is an Integration resource. + types.IntegrationV1 Integration = 42 [(gogoproto.jsontag) = "integration,omitempty"]; } } diff --git a/api/proto/teleport/legacy/types/types.proto b/api/proto/teleport/legacy/types/types.proto index 4d73e431f58fd..94b43233517c9 100644 --- a/api/proto/teleport/legacy/types/types.proto +++ b/api/proto/teleport/legacy/types/types.proto @@ -5263,6 +5263,42 @@ message OktaAssignmentActionTargetV1 { string id = 2 [(gogoproto.jsontag) = "id"]; } +// IntegrationV1 represents a connection between Teleport and some other 3rd party system. +// This connection allows API access to that service from Teleport. +// Each Integration instance must have a SubKind defined which identifies the external system. +message IntegrationV1 { + option (gogoproto.goproto_stringer) = false; + option (gogoproto.stringer) = false; + + // Header is the resource header. + ResourceHeader Header = 1 [ + (gogoproto.nullable) = false, + (gogoproto.jsontag) = "", + (gogoproto.embed) = true + ]; + + // Spec is an Integration specification. + IntegrationSpecV1 Spec = 2 [ + (gogoproto.nullable) = false, + (gogoproto.jsontag) = "spec" + ]; +} + +// IntegrationSpecV1 contains properties of all the supported integrations. +message IntegrationSpecV1 { + oneof SubKindSpec { + // AWSOIDC contains the specific fields to handle the AWS OIDC Integration subkind + AWSOIDCIntegrationSpecV1 AWSOIDC = 1 [(gogoproto.jsontag) = "aws_oidc,omitempty"]; + } +} + +// AWSOIDCIntegrationSpecV1 contains the spec properties for the AWS OIDC SubKind Integration. +message AWSOIDCIntegrationSpecV1 { + // RoleARN contains the Role ARN used to set up the Integration. + // This is the AWS Role that Teleport will use to issue tokens for API Calls. + string RoleARN = 1 [(gogoproto.jsontag) = "role_arn,omitempty"]; +} + // HeadlessAuthentication holds data for an ongoing headless authentication attempt. message HeadlessAuthentication { // Header is the resource header. diff --git a/api/types/types.pb.go b/api/types/types.pb.go index 56f80859c9f30..db6982317127f 100644 --- a/api/types/types.pb.go +++ b/api/types/types.pb.go @@ -13952,6 +13952,171 @@ func (m *OktaAssignmentActionTargetV1) XXX_DiscardUnknown() { var xxx_messageInfo_OktaAssignmentActionTargetV1 proto.InternalMessageInfo +// IntegrationV1 represents a connection between Teleport and some other 3rd party system. +// This connection allows API access to that service from Teleport. +// Each Integration instance must have a SubKind defined which identifies the external system. +type IntegrationV1 struct { + // Header is the resource header. + ResourceHeader `protobuf:"bytes,1,opt,name=Header,proto3,embedded=Header" json:""` + // Spec is an Integration specification. + Spec IntegrationSpecV1 `protobuf:"bytes,2,opt,name=Spec,proto3" json:"spec"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *IntegrationV1) Reset() { *m = IntegrationV1{} } +func (*IntegrationV1) ProtoMessage() {} +func (*IntegrationV1) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{255} +} +func (m *IntegrationV1) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *IntegrationV1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_IntegrationV1.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 *IntegrationV1) XXX_Merge(src proto.Message) { + xxx_messageInfo_IntegrationV1.Merge(m, src) +} +func (m *IntegrationV1) XXX_Size() int { + return m.Size() +} +func (m *IntegrationV1) XXX_DiscardUnknown() { + xxx_messageInfo_IntegrationV1.DiscardUnknown(m) +} + +var xxx_messageInfo_IntegrationV1 proto.InternalMessageInfo + +// IntegrationSpecV1 contains properties of all the supported integrations. +type IntegrationSpecV1 struct { + // Types that are valid to be assigned to SubKindSpec: + // + // *IntegrationSpecV1_AWSOIDC + SubKindSpec isIntegrationSpecV1_SubKindSpec `protobuf_oneof:"SubKindSpec"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +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{256} +} +func (m *IntegrationSpecV1) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *IntegrationSpecV1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_IntegrationSpecV1.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 *IntegrationSpecV1) XXX_Merge(src proto.Message) { + xxx_messageInfo_IntegrationSpecV1.Merge(m, src) +} +func (m *IntegrationSpecV1) XXX_Size() int { + return m.Size() +} +func (m *IntegrationSpecV1) XXX_DiscardUnknown() { + xxx_messageInfo_IntegrationSpecV1.DiscardUnknown(m) +} + +var xxx_messageInfo_IntegrationSpecV1 proto.InternalMessageInfo + +type isIntegrationSpecV1_SubKindSpec interface { + isIntegrationSpecV1_SubKindSpec() + MarshalTo([]byte) (int, error) + Size() int +} + +type IntegrationSpecV1_AWSOIDC struct { + AWSOIDC *AWSOIDCIntegrationSpecV1 `protobuf:"bytes,1,opt,name=AWSOIDC,proto3,oneof" json:"aws_oidc,omitempty"` +} + +func (*IntegrationSpecV1_AWSOIDC) isIntegrationSpecV1_SubKindSpec() {} + +func (m *IntegrationSpecV1) GetSubKindSpec() isIntegrationSpecV1_SubKindSpec { + if m != nil { + return m.SubKindSpec + } + return nil +} + +func (m *IntegrationSpecV1) GetAWSOIDC() *AWSOIDCIntegrationSpecV1 { + if x, ok := m.GetSubKindSpec().(*IntegrationSpecV1_AWSOIDC); ok { + return x.AWSOIDC + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*IntegrationSpecV1) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*IntegrationSpecV1_AWSOIDC)(nil), + } +} + +// AWSOIDCIntegrationSpecV1 contains the spec properties for the AWS OIDC SubKind Integration. +type AWSOIDCIntegrationSpecV1 struct { + // RoleARN contains the Role ARN used to set up the Integration. + // This is the AWS Role that Teleport will use to issue tokens for API Calls. + RoleARN string `protobuf:"bytes,1,opt,name=RoleARN,proto3" json:"role_arn,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *AWSOIDCIntegrationSpecV1) Reset() { *m = AWSOIDCIntegrationSpecV1{} } +func (m *AWSOIDCIntegrationSpecV1) String() string { return proto.CompactTextString(m) } +func (*AWSOIDCIntegrationSpecV1) ProtoMessage() {} +func (*AWSOIDCIntegrationSpecV1) Descriptor() ([]byte, []int) { + return fileDescriptor_9198ee693835762e, []int{257} +} +func (m *AWSOIDCIntegrationSpecV1) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *AWSOIDCIntegrationSpecV1) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_AWSOIDCIntegrationSpecV1.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 *AWSOIDCIntegrationSpecV1) XXX_Merge(src proto.Message) { + xxx_messageInfo_AWSOIDCIntegrationSpecV1.Merge(m, src) +} +func (m *AWSOIDCIntegrationSpecV1) XXX_Size() int { + return m.Size() +} +func (m *AWSOIDCIntegrationSpecV1) XXX_DiscardUnknown() { + xxx_messageInfo_AWSOIDCIntegrationSpecV1.DiscardUnknown(m) +} + +var xxx_messageInfo_AWSOIDCIntegrationSpecV1 proto.InternalMessageInfo + // HeadlessAuthentication holds data for an ongoing headless authentication attempt. type HeadlessAuthentication struct { // Header is the resource header. @@ -13975,7 +14140,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{255} + return fileDescriptor_9198ee693835762e, []int{258} } func (m *HeadlessAuthentication) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -14303,625 +14468,628 @@ func init() { proto.RegisterType((*OktaAssignmentSpecV1)(nil), "types.OktaAssignmentSpecV1") proto.RegisterType((*OktaAssignmentActionV1)(nil), "types.OktaAssignmentActionV1") proto.RegisterType((*OktaAssignmentActionTargetV1)(nil), "types.OktaAssignmentActionTargetV1") + proto.RegisterType((*IntegrationV1)(nil), "types.IntegrationV1") + proto.RegisterType((*IntegrationSpecV1)(nil), "types.IntegrationSpecV1") + proto.RegisterType((*AWSOIDCIntegrationSpecV1)(nil), "types.AWSOIDCIntegrationSpecV1") proto.RegisterType((*HeadlessAuthentication)(nil), "types.HeadlessAuthentication") } func init() { proto.RegisterFile("teleport/legacy/types/types.proto", fileDescriptor_9198ee693835762e) } var fileDescriptor_9198ee693835762e = []byte{ - // 19370 bytes of a gzipped FileDescriptorProto + // 19469 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6d, 0x8c, 0x1c, 0x49, 0x76, 0x20, 0xc6, 0xac, 0xea, 0x8f, 0xea, 0xd7, 0x5f, 0xd5, 0xd1, 0x4d, 0xb2, 0xc9, 0xf9, 0x68, 0x4e, 0xce, 0x0c, 0x87, 0xe4, 0xcc, 0x90, 0xcb, 0xe6, 0x0e, 0x77, 0x67, 0xe7, 0xb3, 0xba, 0xaa, 0xc8, 0xae, 0x61, 0x7f, 0xd4, 0x64, 0xf5, 0xc7, 0xce, 0x7e, 0x28, 0x37, 0xbb, 0x2a, 0xba, 0x3b, - 0x97, 0x55, 0x95, 0xa5, 0xcc, 0x2c, 0x92, 0xbd, 0x3a, 0xe1, 0x4e, 0x77, 0xa7, 0x5b, 0xcb, 0x3a, - 0x69, 0x25, 0x7b, 0x25, 0xed, 0xdd, 0xe9, 0x2c, 0x41, 0xf0, 0xd9, 0xf2, 0xf9, 0x24, 0x1c, 0xa4, - 0x1f, 0x3a, 0xe3, 0xe0, 0xb3, 0x05, 0x18, 0xc2, 0xda, 0x86, 0x7d, 0x32, 0x60, 0xc3, 0xf0, 0x9e, - 0xd1, 0xb6, 0x24, 0xc3, 0x30, 0xf8, 0xe3, 0x60, 0x43, 0xb0, 0x8d, 0x5b, 0x5b, 0x86, 0x11, 0x2f, - 0x22, 0x32, 0x23, 0xb2, 0xb2, 0xaa, 0xab, 0x87, 0x1c, 0xdf, 0x71, 0xe0, 0x3f, 0x64, 0xd7, 0x8b, - 0xf7, 0x5e, 0x44, 0x46, 0xbc, 0x78, 0xf1, 0xe2, 0xc5, 0x8b, 0x17, 0xf0, 0x52, 0x48, 0x9b, 0xb4, - 0xe3, 0xf9, 0xe1, 0x8d, 0x26, 0x3d, 0x70, 0xea, 0x47, 0x37, 0xc2, 0xa3, 0x0e, 0x0d, 0xf8, 0xbf, - 0xd7, 0x3b, 0xbe, 0x17, 0x7a, 0x64, 0x14, 0x7f, 0x5c, 0x5c, 0x38, 0xf0, 0x0e, 0x3c, 0x84, 0xdc, - 0x60, 0x7f, 0xf1, 0xc2, 0x8b, 0x4b, 0x07, 0x9e, 0x77, 0xd0, 0xa4, 0x37, 0xf0, 0xd7, 0x5e, 0x77, - 0xff, 0x46, 0xe8, 0xb6, 0x68, 0x10, 0x3a, 0xad, 0x8e, 0x40, 0xb8, 0x1a, 0x55, 0xe0, 0x84, 0x21, - 0x2b, 0x09, 0x5d, 0xaf, 0x7d, 0xe3, 0xc1, 0x4d, 0xf5, 0xa7, 0x40, 0x7d, 0x33, 0xbd, 0x2d, 0x0f, - 0x7d, 0xa7, 0xd3, 0xa1, 0x7e, 0xfc, 0x07, 0x47, 0x37, 0xff, 0x20, 0x0b, 0x13, 0xf7, 0x28, 0xed, - 0x14, 0x9a, 0xee, 0x03, 0x4a, 0x5e, 0x86, 0x91, 0x0d, 0xa7, 0x45, 0x17, 0x8d, 0x4b, 0xc6, 0x95, - 0x89, 0x95, 0xd9, 0xc7, 0xc7, 0x4b, 0x93, 0x01, 0xf5, 0x1f, 0x50, 0xdf, 0x6e, 0x3b, 0x2d, 0x6a, - 0x61, 0x21, 0x79, 0x1d, 0x26, 0xd8, 0xff, 0x41, 0xc7, 0xa9, 0xd3, 0xc5, 0x0c, 0x62, 0x4e, 0x3f, - 0x3e, 0x5e, 0x9a, 0x68, 0x4b, 0xa0, 0x15, 0x97, 0x93, 0xcb, 0x30, 0xbe, 0x46, 0x9d, 0x80, 0x56, - 0x4a, 0x8b, 0xd9, 0x4b, 0xc6, 0x95, 0xec, 0xca, 0xd4, 0xe3, 0xe3, 0xa5, 0x5c, 0x93, 0x81, 0x6c, - 0xb7, 0x61, 0xc9, 0x42, 0x52, 0x81, 0xf1, 0xf2, 0xa3, 0x8e, 0xeb, 0xd3, 0x60, 0x71, 0xe4, 0x92, - 0x71, 0x65, 0x72, 0xf9, 0xe2, 0x75, 0xde, 0x29, 0xd7, 0x65, 0xa7, 0x5c, 0xdf, 0x92, 0x9d, 0xb2, - 0x32, 0xff, 0xc3, 0xe3, 0xa5, 0x33, 0x8f, 0x8f, 0x97, 0xc6, 0x29, 0x27, 0xf9, 0xa5, 0xff, 0x61, - 0xc9, 0xb0, 0x24, 0x3d, 0x79, 0x17, 0x46, 0xb6, 0x8e, 0x3a, 0x74, 0x71, 0xe2, 0x92, 0x71, 0x65, - 0x66, 0xf9, 0xc5, 0xeb, 0x7c, 0x18, 0xa2, 0x8f, 0x8c, 0xff, 0x62, 0x58, 0x2b, 0xb9, 0xc7, 0xc7, - 0x4b, 0x23, 0x0c, 0xc5, 0x42, 0x2a, 0xf2, 0x26, 0x8c, 0xad, 0x7a, 0x41, 0x58, 0x29, 0x2d, 0x02, - 0x7e, 0xda, 0xd9, 0xc7, 0xc7, 0x4b, 0x73, 0x87, 0x5e, 0x10, 0xda, 0x6e, 0xe3, 0x0d, 0xaf, 0xe5, - 0x86, 0xb4, 0xd5, 0x09, 0x8f, 0x2c, 0x81, 0x64, 0x3e, 0x82, 0x69, 0x8d, 0x1f, 0x99, 0x84, 0xf1, - 0xed, 0x8d, 0x7b, 0x1b, 0x9b, 0xbb, 0x1b, 0xf9, 0x33, 0x24, 0x07, 0x23, 0x1b, 0x9b, 0xa5, 0x72, - 0xde, 0x20, 0xe3, 0x90, 0x2d, 0x54, 0xab, 0xf9, 0x0c, 0x99, 0x82, 0x5c, 0xa9, 0xb0, 0x55, 0x58, - 0x29, 0xd4, 0xca, 0xf9, 0x2c, 0x99, 0x87, 0xd9, 0xdd, 0xca, 0x46, 0x69, 0x73, 0xb7, 0x66, 0x97, - 0xca, 0xb5, 0x7b, 0x5b, 0x9b, 0xd5, 0xfc, 0x08, 0x99, 0x01, 0xb8, 0xb7, 0xbd, 0x52, 0xb6, 0x36, - 0xca, 0x5b, 0xe5, 0x5a, 0x7e, 0x94, 0x2c, 0x40, 0x5e, 0x92, 0xd8, 0xb5, 0xb2, 0xb5, 0x53, 0x29, - 0x96, 0xf3, 0x63, 0xe6, 0x77, 0xb3, 0x90, 0x5b, 0xa7, 0xa1, 0xd3, 0x70, 0x42, 0x87, 0x3c, 0xaf, - 0x0d, 0x1c, 0x7e, 0x93, 0x32, 0x62, 0x2f, 0xf7, 0x8e, 0xd8, 0xe8, 0xe3, 0xe3, 0x25, 0xe3, 0x4d, - 0x75, 0xa4, 0xde, 0x81, 0xc9, 0x12, 0x0d, 0xea, 0xbe, 0xdb, 0x61, 0xd2, 0x84, 0xa3, 0x35, 0xb1, - 0x72, 0xe1, 0xf1, 0xf1, 0xd2, 0xd9, 0x46, 0x0c, 0x56, 0x7a, 0x40, 0xc5, 0x26, 0x15, 0x18, 0x5b, - 0x73, 0xf6, 0x68, 0x33, 0x58, 0x1c, 0xbd, 0x94, 0xbd, 0x32, 0xb9, 0xfc, 0x9c, 0xe8, 0x75, 0xd9, - 0xc0, 0xeb, 0xbc, 0xb4, 0xdc, 0x0e, 0xfd, 0xa3, 0x95, 0x85, 0xc7, 0xc7, 0x4b, 0xf9, 0x26, 0x02, - 0xd4, 0x1e, 0xe5, 0x28, 0xa4, 0x16, 0x4b, 0xc2, 0xd8, 0x89, 0x92, 0xf0, 0xc2, 0x0f, 0x8f, 0x97, - 0x0c, 0x36, 0x42, 0x42, 0x12, 0x62, 0x7e, 0xba, 0x4c, 0x5c, 0x82, 0x4c, 0xa5, 0xb4, 0x38, 0x8e, - 0x12, 0x98, 0x7f, 0x7c, 0xbc, 0x34, 0xa5, 0x0d, 0x66, 0xa6, 0x52, 0xba, 0xf8, 0x36, 0x4c, 0x2a, - 0x6d, 0x24, 0x79, 0xc8, 0xde, 0xa7, 0x47, 0xbc, 0x3f, 0x2d, 0xf6, 0x27, 0x59, 0x80, 0xd1, 0x07, - 0x4e, 0xb3, 0x2b, 0x3a, 0xd0, 0xe2, 0x3f, 0xbe, 0x92, 0xf9, 0xb2, 0x61, 0xfe, 0x1b, 0x23, 0x90, - 0xb3, 0x3c, 0x3e, 0x0b, 0xc9, 0x55, 0x18, 0xad, 0x85, 0x4e, 0x28, 0x87, 0x62, 0xfe, 0xf1, 0xf1, - 0xd2, 0x2c, 0x9b, 0xa1, 0x54, 0xa9, 0x8f, 0x63, 0x30, 0xd4, 0xea, 0xa1, 0x13, 0xc8, 0x21, 0x41, - 0xd4, 0x0e, 0x03, 0xa8, 0xa8, 0x88, 0x41, 0x2e, 0xc3, 0xc8, 0xba, 0xd7, 0xa0, 0x62, 0x54, 0xc8, - 0xe3, 0xe3, 0xa5, 0x99, 0x96, 0xd7, 0x50, 0x11, 0xb1, 0x9c, 0xbc, 0x01, 0x13, 0xc5, 0xae, 0xef, - 0xd3, 0x36, 0x13, 0xe0, 0x11, 0x44, 0x9e, 0x79, 0x7c, 0xbc, 0x04, 0x75, 0x0e, 0x64, 0x53, 0x2e, - 0x46, 0x60, 0x5d, 0x5d, 0x0b, 0x1d, 0x3f, 0xa4, 0x8d, 0xc5, 0xd1, 0xa1, 0xba, 0x9a, 0x4d, 0xba, - 0xb9, 0x80, 0x93, 0x24, 0xbb, 0x5a, 0x70, 0x22, 0xab, 0x30, 0x79, 0xd7, 0x77, 0xea, 0xb4, 0x4a, - 0x7d, 0xd7, 0x6b, 0xe0, 0x18, 0x66, 0x57, 0x2e, 0x3f, 0x3e, 0x5e, 0x3a, 0x77, 0xc0, 0xc0, 0x76, - 0x07, 0xe1, 0x31, 0xf5, 0x8f, 0x8f, 0x97, 0x72, 0xa5, 0xae, 0x8f, 0xbd, 0x67, 0xa9, 0xa4, 0xe4, - 0x5b, 0x6c, 0x48, 0x82, 0x10, 0xbb, 0x96, 0x36, 0x70, 0xf4, 0x06, 0x37, 0xd1, 0x14, 0x4d, 0x3c, - 0xd7, 0x74, 0x82, 0xd0, 0xf6, 0x39, 0x5d, 0xa2, 0x9d, 0x2a, 0x4b, 0xb2, 0x09, 0xb9, 0x5a, 0xfd, - 0x90, 0x36, 0xba, 0x4d, 0xba, 0x98, 0x43, 0xf6, 0xe7, 0x85, 0xe0, 0xca, 0xf1, 0x94, 0xc5, 0x2b, - 0x17, 0x05, 0x6f, 0x12, 0x08, 0x88, 0xd2, 0xf7, 0x11, 0x93, 0xaf, 0xe4, 0x7e, 0xf0, 0x9b, 0x4b, - 0x67, 0xfe, 0xca, 0x7f, 0x7f, 0xe9, 0x8c, 0xf9, 0x07, 0x19, 0xc8, 0x27, 0x99, 0x90, 0x7d, 0x98, - 0xde, 0xee, 0x34, 0x9c, 0x90, 0x16, 0x9b, 0x2e, 0x6d, 0x87, 0x01, 0x0a, 0xc9, 0xe0, 0x6f, 0x7a, - 0x45, 0xd4, 0xbb, 0xd8, 0x45, 0x42, 0xbb, 0xce, 0x29, 0x13, 0x5f, 0xa5, 0xb3, 0x8d, 0xeb, 0xa9, - 0xa1, 0xf6, 0x0e, 0x50, 0xc2, 0x4e, 0x57, 0x0f, 0xd7, 0xfb, 0x7d, 0xea, 0x11, 0x6c, 0x85, 0x00, - 0xb5, 0x1b, 0x7b, 0x47, 0x28, 0x99, 0xc3, 0x0b, 0x10, 0x23, 0x49, 0x11, 0x20, 0x06, 0x36, 0xff, - 0x27, 0x03, 0x66, 0x2c, 0x1a, 0x78, 0x5d, 0xbf, 0x4e, 0x57, 0xa9, 0xd3, 0xa0, 0x3e, 0x13, 0xff, - 0x7b, 0x6e, 0xbb, 0x21, 0xe6, 0x14, 0x8a, 0xff, 0x7d, 0xb7, 0xad, 0x4e, 0x61, 0x2c, 0x27, 0x5f, - 0x80, 0xf1, 0x5a, 0x77, 0x0f, 0x51, 0xf9, 0x9c, 0x3a, 0x87, 0x23, 0xd6, 0xdd, 0xb3, 0x13, 0xe8, - 0x12, 0x8d, 0xdc, 0x80, 0xf1, 0x1d, 0xea, 0x07, 0xb1, 0xc6, 0x43, 0x7d, 0xff, 0x80, 0x83, 0x54, - 0x02, 0x81, 0x45, 0xee, 0xc6, 0x5a, 0x57, 0xac, 0x54, 0xb3, 0x09, 0x5d, 0x17, 0x8b, 0x4a, 0x4b, - 0x40, 0x54, 0x51, 0x91, 0x58, 0xe6, 0x2f, 0x67, 0x20, 0x5f, 0x72, 0x42, 0x67, 0xcf, 0x09, 0x44, - 0x7f, 0xee, 0xdc, 0x62, 0x7a, 0x5c, 0xf9, 0x50, 0xd4, 0xe3, 0xac, 0xe5, 0x9f, 0xfa, 0xf3, 0x5e, - 0x4d, 0x7e, 0xde, 0x24, 0x5b, 0x36, 0xc5, 0xe7, 0xc5, 0x1f, 0xf5, 0xde, 0xc9, 0x1f, 0x95, 0x17, - 0x1f, 0x95, 0x93, 0x1f, 0x15, 0x7f, 0x0a, 0x79, 0x0f, 0x46, 0x6a, 0x1d, 0x5a, 0x17, 0x4a, 0x44, - 0xea, 0x7e, 0xfd, 0xe3, 0x18, 0xc2, 0xce, 0xad, 0x95, 0x29, 0xc1, 0x66, 0x24, 0xe8, 0xd0, 0xba, - 0x85, 0x64, 0xca, 0xa4, 0xf9, 0x4f, 0xc7, 0x60, 0x21, 0x8d, 0x8c, 0xbc, 0xa7, 0x2f, 0x4e, 0xbc, - 0x7b, 0x9e, 0xeb, 0xbb, 0x38, 0x2d, 0x1a, 0xfa, 0xf2, 0x74, 0x0d, 0x72, 0x55, 0x26, 0x90, 0x75, - 0xaf, 0x29, 0x7a, 0x8e, 0x69, 0xc5, 0x5c, 0x47, 0xc2, 0x0c, 0x2b, 0x2a, 0x27, 0xcf, 0x41, 0x76, - 0xdb, 0xaa, 0x88, 0xee, 0x9a, 0x78, 0x7c, 0xbc, 0x94, 0xed, 0xfa, 0xee, 0xa2, 0x61, 0x31, 0x28, - 0xb9, 0x01, 0x63, 0xc5, 0x42, 0x91, 0xfa, 0x21, 0x76, 0xd3, 0xd4, 0xca, 0x79, 0x26, 0x2d, 0x75, - 0xc7, 0xae, 0x53, 0x3f, 0xd4, 0xaa, 0x17, 0x68, 0xe4, 0x75, 0xc8, 0x16, 0x76, 0x6b, 0xa2, 0x67, - 0x40, 0xf4, 0x4c, 0x61, 0xb7, 0xb6, 0x32, 0x2d, 0x3a, 0x22, 0xeb, 0x3c, 0x0c, 0x18, 0xf7, 0xc2, - 0x6e, 0x4d, 0x1d, 0xad, 0xb1, 0x01, 0xa3, 0x75, 0x05, 0x72, 0xcc, 0xfa, 0x60, 0x0b, 0x3c, 0x2a, - 0xc5, 0x09, 0x6e, 0x54, 0x1d, 0x0a, 0x98, 0x15, 0x95, 0x92, 0x97, 0x23, 0x63, 0x26, 0x17, 0xf3, - 0x13, 0xc6, 0x8c, 0x34, 0x61, 0xc8, 0x23, 0x98, 0x2e, 0x1d, 0xb5, 0x9d, 0x96, 0x5b, 0x17, 0x4b, - 0xf8, 0x04, 0x2e, 0xe1, 0xd7, 0x07, 0x0c, 0xe3, 0x75, 0x8d, 0x80, 0xaf, 0xea, 0x52, 0xf9, 0x2e, - 0x36, 0x78, 0x99, 0x9d, 0x5c, 0xe1, 0x17, 0x0d, 0x4b, 0xaf, 0x88, 0xcd, 0x25, 0xa9, 0x22, 0xd1, - 0xda, 0x8a, 0xc5, 0x4e, 0x82, 0xe3, 0xb9, 0xe4, 0x0b, 0x88, 0x3a, 0x97, 0xa2, 0x45, 0xf7, 0x3d, - 0xc8, 0xde, 0x2d, 0x56, 0x17, 0x27, 0x91, 0x07, 0x11, 0x3c, 0xee, 0x16, 0xab, 0xc5, 0xa6, 0xd7, - 0x6d, 0xd4, 0x3e, 0x5e, 0x5b, 0x39, 0x2f, 0xd8, 0x4c, 0x1f, 0xd4, 0x3b, 0x5a, 0x8b, 0x18, 0x1d, - 0x29, 0x43, 0x4e, 0x7e, 0xe5, 0xe2, 0x14, 0xf2, 0x98, 0x4b, 0x7c, 0xfc, 0xce, 0x2d, 0x3e, 0xd7, - 0x1a, 0xe2, 0xb7, 0xda, 0x0a, 0x89, 0x43, 0x6e, 0xa1, 0x94, 0x3d, 0x3a, 0xaa, 0x94, 0x82, 0xc5, - 0xe9, 0x4b, 0xd9, 0x2b, 0x13, 0x28, 0x1e, 0xf3, 0x1d, 0x06, 0xb3, 0xdd, 0x86, 0x6a, 0xec, 0x44, - 0x88, 0x17, 0x77, 0x81, 0xf4, 0x76, 0x66, 0x8a, 0xf9, 0xf1, 0xba, 0x6a, 0x7e, 0x4c, 0x2e, 0x9f, - 0x15, 0x0d, 0x2c, 0x7a, 0xad, 0x96, 0xd3, 0x6e, 0x20, 0xed, 0xce, 0xb2, 0x6a, 0x95, 0x14, 0x60, - 0x26, 0x6e, 0xfd, 0x9a, 0x1b, 0x84, 0xe4, 0x06, 0x4c, 0x48, 0x08, 0x5b, 0x79, 0xb2, 0xa9, 0xdf, - 0x69, 0xc5, 0x38, 0xe6, 0x1f, 0x65, 0x00, 0xe2, 0x92, 0x67, 0x54, 0x39, 0x7d, 0x49, 0x53, 0x4e, - 0x67, 0x93, 0x52, 0xdd, 0x57, 0x2d, 0x91, 0x0f, 0x60, 0x8c, 0xd9, 0x69, 0x5d, 0x69, 0x87, 0x9e, - 0x4f, 0x92, 0x62, 0xe1, 0xce, 0xad, 0x95, 0x19, 0x41, 0x3c, 0x16, 0x20, 0xc4, 0x12, 0x64, 0x8a, - 0x5e, 0xfb, 0xbd, 0xd1, 0x78, 0x30, 0x84, 0x46, 0xbb, 0xa2, 0xa8, 0x24, 0x23, 0x9e, 0xc4, 0x52, - 0x25, 0x29, 0x0a, 0xe9, 0x02, 0x57, 0x48, 0xbc, 0x53, 0xc7, 0x85, 0x42, 0x4a, 0xaa, 0x23, 0xde, - 0x81, 0x27, 0xaa, 0xa3, 0x4e, 0x72, 0xae, 0x8f, 0xa0, 0x18, 0x5c, 0x49, 0xed, 0x95, 0xb4, 0x59, - 0x7e, 0xe9, 0xa4, 0x59, 0x9e, 0x9c, 0xe3, 0xb7, 0xfa, 0x29, 0xc0, 0xb3, 0x72, 0x4a, 0x3a, 0x0f, - 0x55, 0x72, 0x54, 0x84, 0xef, 0xf0, 0xf9, 0x3c, 0xd6, 0x77, 0x3e, 0x9f, 0x4d, 0x9d, 0xcf, 0x7c, - 0x36, 0xbf, 0x03, 0xa3, 0x85, 0xef, 0x74, 0x7d, 0x2a, 0x0c, 0xc6, 0x29, 0x59, 0x27, 0x83, 0x45, - 0x8a, 0x60, 0xd6, 0x61, 0x3f, 0x55, 0x43, 0x1b, 0xcb, 0x59, 0xcd, 0x5b, 0x6b, 0x35, 0x61, 0x0c, - 0x92, 0x44, 0xb7, 0x6c, 0xad, 0x29, 0xcd, 0x0e, 0xb5, 0xaf, 0x66, 0x54, 0xe4, 0x06, 0x64, 0x0a, - 0x25, 0xdc, 0x77, 0x4e, 0x2e, 0x4f, 0xc8, 0x6a, 0x4b, 0x2b, 0x0b, 0x82, 0x64, 0xca, 0xd1, 0x36, - 0x1d, 0x85, 0x12, 0x59, 0x81, 0xd1, 0xf5, 0xa3, 0xda, 0xc7, 0x6b, 0x42, 0xfb, 0xcd, 0x4b, 0xb9, - 0x66, 0xb0, 0x4d, 0x5c, 0xba, 0x82, 0xb8, 0xc5, 0xad, 0xa3, 0xe0, 0x27, 0x9b, 0x6a, 0x8b, 0x11, - 0xed, 0xb3, 0x53, 0x20, 0xff, 0xb6, 0x6a, 0xa0, 0x08, 0x59, 0x67, 0xdb, 0x63, 0x21, 0x71, 0x46, - 0x6c, 0x2e, 0xf5, 0x48, 0x5c, 0x24, 0x6f, 0x57, 0xf9, 0xe8, 0x67, 0x7a, 0x46, 0x7f, 0x52, 0x59, - 0xfe, 0xf8, 0x98, 0x47, 0x7d, 0x91, 0xfd, 0xd4, 0x7d, 0x41, 0x3e, 0x80, 0xa9, 0x75, 0xa7, 0xed, - 0x1c, 0xd0, 0xc6, 0x76, 0xc0, 0xcc, 0xde, 0x11, 0xd4, 0xc2, 0xcc, 0x4e, 0x38, 0xdf, 0xe2, 0x70, - 0xbb, 0x1b, 0x68, 0x56, 0xad, 0xa5, 0x11, 0x90, 0x9b, 0x52, 0x76, 0x46, 0x53, 0x64, 0x47, 0x2e, - 0xd9, 0xa3, 0x28, 0x3b, 0x42, 0x62, 0xcc, 0x1f, 0x8c, 0xe1, 0x37, 0x92, 0x37, 0x60, 0xcc, 0xa2, - 0x07, 0xb1, 0x75, 0x82, 0xbb, 0x5c, 0x1f, 0x21, 0x6a, 0xc7, 0x70, 0x1c, 0x5c, 0xfa, 0x68, 0x23, - 0x38, 0x74, 0xf7, 0x43, 0xd1, 0x3b, 0xd1, 0xd2, 0x27, 0xc0, 0xca, 0xd2, 0x27, 0x20, 0xda, 0xd2, - 0x27, 0x60, 0x6c, 0x7e, 0x59, 0xa5, 0x9a, 0xe8, 0x34, 0xd9, 0xc3, 0x56, 0x49, 0x11, 0x54, 0x5f, - 0x5b, 0x79, 0x18, 0x36, 0xb9, 0x0d, 0x13, 0x85, 0x7a, 0xdd, 0xeb, 0x2a, 0xdb, 0xc4, 0xc5, 0xc7, - 0xc7, 0x4b, 0x0b, 0x0e, 0x07, 0xea, 0xae, 0x8e, 0x18, 0x95, 0xd4, 0x60, 0xb2, 0xcc, 0xf6, 0x56, - 0x6e, 0xd1, 0xa9, 0x1f, 0xca, 0x4e, 0x92, 0xb3, 0x44, 0x29, 0x89, 0x6c, 0xfd, 0xb3, 0x14, 0x81, - 0x75, 0x06, 0x54, 0x7d, 0x07, 0x0a, 0x2e, 0xd9, 0x82, 0xc9, 0x1a, 0xad, 0xfb, 0x34, 0xac, 0x85, - 0x9e, 0x4f, 0x13, 0x93, 0x5e, 0x29, 0x59, 0x79, 0x51, 0x6e, 0xef, 0x02, 0x04, 0xda, 0x01, 0x83, - 0xaa, 0x5c, 0x15, 0x64, 0x6e, 0xa7, 0xb7, 0x3c, 0xff, 0xa8, 0xb4, 0x22, 0x14, 0x41, 0xbc, 0x6a, - 0x70, 0xb0, 0x6a, 0xa7, 0x33, 0x48, 0x63, 0x4f, 0xb7, 0xd3, 0x39, 0x16, 0x8e, 0x54, 0xa9, 0x86, - 0xeb, 0xb5, 0x50, 0x0b, 0xb3, 0x71, 0x2f, 0x23, 0x58, 0x19, 0xa9, 0x46, 0x80, 0xab, 0xbd, 0x36, - 0x52, 0x02, 0x8b, 0x74, 0x80, 0xc8, 0x51, 0xe3, 0xb6, 0x54, 0x93, 0x06, 0x81, 0xd0, 0x16, 0x17, - 0x12, 0x83, 0x1f, 0x23, 0xac, 0xbc, 0x2a, 0x98, 0xbf, 0x20, 0xc5, 0x40, 0x6c, 0xcd, 0x58, 0xa1, - 0x52, 0x4f, 0x0a, 0x6f, 0xf2, 0x36, 0x40, 0xf9, 0x51, 0x48, 0xfd, 0xb6, 0xd3, 0x8c, 0xfc, 0x59, - 0xe8, 0xd1, 0xa1, 0x02, 0xaa, 0x0f, 0xb4, 0x82, 0x4c, 0x8a, 0x30, 0x5d, 0x08, 0x82, 0x6e, 0x8b, - 0x5a, 0x5e, 0x93, 0x16, 0xac, 0x0d, 0xb4, 0xad, 0x26, 0x56, 0x5e, 0x78, 0x7c, 0xbc, 0x74, 0xc1, - 0xc1, 0x02, 0xdb, 0xf7, 0x9a, 0xd4, 0x76, 0x7c, 0x55, 0xba, 0x75, 0x1a, 0xf3, 0xa7, 0xb4, 0x91, - 0x65, 0x52, 0x77, 0x8f, 0x1e, 0x55, 0x7d, 0xba, 0xef, 0x3e, 0x12, 0x93, 0x04, 0xa5, 0xee, 0x3e, - 0x3d, 0xb2, 0x3b, 0x08, 0x55, 0xa5, 0x2e, 0x42, 0x25, 0x5f, 0x84, 0xdc, 0xbd, 0xf5, 0xda, 0x3d, - 0x7a, 0x54, 0x29, 0x89, 0x55, 0x90, 0x93, 0xb5, 0x02, 0x9b, 0x91, 0x6a, 0xdf, 0x10, 0x61, 0x9a, - 0x2b, 0xf1, 0x0c, 0x63, 0x35, 0x17, 0x9b, 0xdd, 0x20, 0xa4, 0x7e, 0xa5, 0xa4, 0xd6, 0x5c, 0xe7, - 0xc0, 0x84, 0xbc, 0x47, 0xa8, 0xe6, 0x3f, 0x33, 0x70, 0x76, 0xb1, 0x8e, 0xac, 0xb4, 0xd9, 0xb6, - 0xb5, 0x4e, 0x23, 0x06, 0xd8, 0x91, 0xae, 0x80, 0x26, 0x3a, 0x32, 0x46, 0xd6, 0xab, 0xce, 0x0c, - 0x5d, 0x35, 0xab, 0x52, 0x6e, 0x82, 0x85, 0xef, 0x54, 0x54, 0xe9, 0x0b, 0x68, 0xa2, 0xca, 0x18, - 0x99, 0x5c, 0x86, 0xf1, 0x4a, 0x61, 0xbd, 0xd0, 0x0d, 0x0f, 0x71, 0x6e, 0xe7, 0xb8, 0x65, 0xe1, - 0x3a, 0x2d, 0xdb, 0xe9, 0x86, 0x87, 0x96, 0x2c, 0x34, 0xff, 0xd0, 0x88, 0x45, 0x9b, 0x6d, 0xb1, - 0x15, 0x0f, 0x22, 0x6e, 0xb1, 0xd9, 0x16, 0x42, 0xdd, 0x62, 0xa3, 0x2f, 0xd1, 0x02, 0x52, 0xec, - 0x06, 0xa1, 0xd7, 0x2a, 0xb7, 0x1b, 0x1d, 0xcf, 0x6d, 0x87, 0x48, 0xc5, 0x3f, 0xcc, 0x7c, 0x7c, - 0xbc, 0xf4, 0x62, 0x1d, 0x4b, 0x6d, 0x2a, 0x8a, 0xed, 0x04, 0x97, 0x14, 0xea, 0x27, 0xf8, 0x56, - 0xf3, 0x3f, 0xcb, 0x68, 0x2a, 0x89, 0x35, 0xcf, 0xa2, 0x9d, 0xa6, 0x5b, 0xc7, 0x8d, 0xc1, 0x5d, - 0xdf, 0xeb, 0x76, 0xa2, 0x11, 0xc3, 0xe6, 0xf9, 0x71, 0xa9, 0x7d, 0xc0, 0x8a, 0x75, 0xde, 0x29, - 0xd4, 0xe4, 0x43, 0x98, 0x62, 0xab, 0x83, 0xf8, 0x19, 0x2c, 0x66, 0x70, 0x55, 0x79, 0x1e, 0x9d, - 0x25, 0x01, 0xf5, 0x23, 0x36, 0xda, 0xb2, 0xa2, 0x52, 0x90, 0x06, 0x2c, 0x6e, 0xf9, 0x4e, 0x3b, - 0x70, 0xc3, 0x72, 0xbb, 0xee, 0x1f, 0xe1, 0x6a, 0x56, 0x6e, 0x3b, 0x7b, 0x4d, 0xda, 0xc0, 0xcf, - 0xcd, 0xad, 0x5c, 0x79, 0x7c, 0xbc, 0xf4, 0x4a, 0xc8, 0x71, 0x6c, 0x1a, 0x21, 0xd9, 0x94, 0x63, - 0x29, 0x9c, 0xfb, 0x72, 0x62, 0xab, 0x9f, 0xec, 0x56, 0x74, 0x80, 0x8f, 0x44, 0xbb, 0xe4, 0xf3, - 0xd1, 0x68, 0x30, 0x35, 0xa3, 0x36, 0x53, 0x25, 0x30, 0xff, 0x0f, 0x23, 0x56, 0x9a, 0xe4, 0x5d, - 0x98, 0x14, 0xd2, 0xa8, 0xc8, 0xc5, 0x45, 0xa6, 0x7e, 0xa5, 0xe8, 0x26, 0x46, 0x56, 0x45, 0x67, - 0xbb, 0x81, 0x42, 0x71, 0x4d, 0x91, 0x0d, 0xdc, 0x0d, 0x38, 0xf5, 0x66, 0x92, 0x4a, 0xa2, 0x31, - 0x21, 0xd8, 0x5a, 0xab, 0xe9, 0xbd, 0x82, 0x42, 0x10, 0x36, 0x83, 0x94, 0x6e, 0x50, 0x90, 0x9f, - 0xfc, 0xc3, 0xff, 0x5b, 0x23, 0x4d, 0x37, 0x93, 0x15, 0x98, 0xde, 0xf5, 0xfc, 0xfb, 0x38, 0xbe, - 0x4a, 0x27, 0xe0, 0xc8, 0x3f, 0x94, 0x05, 0xc9, 0x0f, 0xd2, 0x49, 0xd4, 0xb6, 0x29, 0xbd, 0xa1, - 0xb7, 0x2d, 0xc1, 0x41, 0x23, 0x60, 0xe3, 0x10, 0x71, 0x8c, 0x66, 0x07, 0x8e, 0x43, 0xdc, 0x04, - 0x4d, 0x84, 0x55, 0x74, 0xf3, 0xaf, 0x18, 0x30, 0xa9, 0x18, 0xce, 0x4c, 0x1d, 0x55, 0x7d, 0xef, - 0xdb, 0xb4, 0x1e, 0xea, 0x9a, 0xb0, 0xc3, 0x81, 0x09, 0x75, 0x14, 0xa1, 0x26, 0x34, 0x60, 0xe6, - 0x14, 0x1a, 0xd0, 0xfc, 0xdf, 0x0c, 0x61, 0x54, 0x0d, 0xad, 0x63, 0x74, 0x7d, 0x90, 0x39, 0x8d, - 0xee, 0xfb, 0x10, 0x46, 0x2d, 0xda, 0x70, 0x03, 0x61, 0x10, 0xcd, 0xa9, 0x06, 0x1c, 0x16, 0xc4, - 0x36, 0xa4, 0xcf, 0x7e, 0xaa, 0x36, 0x24, 0x96, 0xb3, 0x95, 0xaf, 0x12, 0xdc, 0x69, 0xd2, 0x47, - 0x2e, 0x97, 0x04, 0xa1, 0x43, 0x71, 0xe5, 0x73, 0x03, 0x7b, 0x9f, 0x95, 0x88, 0x25, 0x58, 0x1d, - 0x75, 0x8d, 0xc6, 0xfc, 0x04, 0x20, 0xae, 0x92, 0xdc, 0x83, 0xbc, 0x98, 0x1b, 0x6e, 0xfb, 0xa0, - 0xea, 0x35, 0xdd, 0xba, 0xb0, 0xcc, 0x57, 0x96, 0x1e, 0x1f, 0x2f, 0x3d, 0x57, 0x8f, 0xca, 0xec, - 0x0e, 0x16, 0x2a, 0x7c, 0x7b, 0x08, 0xcd, 0x7f, 0x37, 0xc3, 0x76, 0x19, 0xac, 0x8f, 0xee, 0xd1, - 0xa3, 0xd0, 0xd9, 0xbb, 0xe3, 0x36, 0xa9, 0xba, 0x24, 0xdd, 0x47, 0xa8, 0xbd, 0xef, 0x6a, 0x2e, - 0x6a, 0x05, 0x99, 0xdc, 0x82, 0xdc, 0x3d, 0x7f, 0xef, 0x2d, 0x24, 0xcc, 0x44, 0xfb, 0xc6, 0xf9, - 0xfb, 0xfe, 0xde, 0x5b, 0x49, 0xb2, 0x08, 0x91, 0x98, 0x30, 0x56, 0xf2, 0x5a, 0x8e, 0x2b, 0xf7, - 0xea, 0xc0, 0x36, 0xbc, 0x0d, 0x84, 0x58, 0xa2, 0x84, 0xed, 0x54, 0x6b, 0xd5, 0x0d, 0x31, 0xfd, - 0x70, 0xa7, 0x1a, 0x74, 0xda, 0x16, 0x83, 0xb1, 0x3a, 0xd7, 0x4a, 0x85, 0x2a, 0xee, 0x1c, 0x46, - 0xe3, 0x3a, 0x9b, 0x0d, 0xa7, 0x93, 0xdc, 0x3b, 0x44, 0x88, 0xe4, 0x3d, 0x98, 0xbc, 0x57, 0x2a, - 0xae, 0x7a, 0x01, 0x9f, 0x3a, 0x63, 0xf1, 0xd4, 0xb9, 0xdf, 0xa8, 0xdb, 0xe8, 0xc7, 0x4a, 0xea, - 0x20, 0x05, 0xdf, 0xfc, 0x1d, 0x03, 0x26, 0x95, 0xad, 0x1b, 0xf9, 0xa2, 0x38, 0x44, 0x31, 0xf0, - 0x60, 0xf0, 0x5c, 0xef, 0xe6, 0x8e, 0x95, 0x72, 0xbf, 0x46, 0xcb, 0x6b, 0x50, 0x71, 0xa4, 0x12, - 0xef, 0x78, 0x32, 0xc3, 0xec, 0x78, 0xde, 0x06, 0xe0, 0x32, 0x80, 0x4d, 0x56, 0xd6, 0x32, 0xe5, - 0x20, 0x55, 0x1d, 0x97, 0x18, 0xd9, 0xb4, 0x60, 0x4a, 0xdd, 0xed, 0x30, 0xf5, 0x23, 0x1c, 0xc3, - 0xc2, 0x4b, 0xa2, 0xa8, 0x1f, 0xc1, 0xad, 0xd7, 0x51, 0xad, 0x93, 0x98, 0x7f, 0xd5, 0x88, 0x27, - 0xee, 0xce, 0x4d, 0xf2, 0x0e, 0x8c, 0x71, 0x97, 0xba, 0x38, 0x79, 0x38, 0x1b, 0xd9, 0x9d, 0xaa, - 0xbf, 0x9d, 0xbb, 0x43, 0xfe, 0x98, 0x1f, 0xad, 0x9d, 0xb1, 0x04, 0x49, 0xe4, 0x49, 0xd1, 0x37, - 0x90, 0x92, 0x3b, 0xfa, 0x0c, 0x6e, 0xa6, 0x79, 0x52, 0xcc, 0x7f, 0x2b, 0x0b, 0x33, 0x3a, 0x9a, - 0xea, 0x77, 0x37, 0x86, 0xf2, 0xbb, 0x7f, 0x08, 0x39, 0xf6, 0x65, 0x6e, 0x9d, 0xca, 0x05, 0xf8, - 0x15, 0xf4, 0x2f, 0x09, 0x98, 0x20, 0x09, 0x3b, 0x47, 0x3f, 0x3e, 0x5e, 0x82, 0xda, 0x51, 0x10, - 0xd2, 0x16, 0x33, 0x43, 0xad, 0x88, 0x8a, 0x2c, 0x2b, 0x6e, 0xd3, 0x6c, 0xbc, 0x26, 0x49, 0xb7, - 0xa9, 0x2a, 0x81, 0x91, 0x03, 0xf5, 0x4d, 0x18, 0x63, 0xa6, 0x52, 0xb4, 0x4b, 0xc2, 0x56, 0x32, - 0x2b, 0x2a, 0x71, 0x1a, 0xcc, 0x91, 0xc8, 0x2e, 0xe4, 0xd6, 0x9c, 0x20, 0xac, 0x51, 0xda, 0x1e, - 0xe2, 0x44, 0x6d, 0x49, 0x74, 0xd5, 0x3c, 0x1e, 0x57, 0x05, 0x94, 0xb6, 0x13, 0x47, 0x22, 0x11, - 0x33, 0xf2, 0x4d, 0x80, 0xa2, 0xd7, 0x0e, 0x7d, 0xaf, 0xb9, 0xe6, 0x1d, 0x2c, 0x8e, 0xa1, 0xd3, - 0xe6, 0xc5, 0xc4, 0x00, 0xc4, 0x08, 0xdc, 0x55, 0x13, 0xed, 0xc1, 0xea, 0xbc, 0xc0, 0x6e, 0x7a, - 0x07, 0xaa, 0xe4, 0xc5, 0xf8, 0xe6, 0x8f, 0x33, 0x70, 0xbe, 0x0f, 0x1b, 0xa6, 0xb4, 0x71, 0x51, - 0x55, 0x94, 0x76, 0x62, 0x2d, 0xe5, 0x07, 0xe7, 0xfc, 0x88, 0x95, 0xc9, 0xc6, 0x48, 0xfa, 0x11, - 0x2b, 0xf9, 0x08, 0x46, 0xd8, 0xc7, 0x0f, 0x71, 0x54, 0x24, 0x37, 0x54, 0x33, 0xa1, 0xab, 0x0e, - 0x0c, 0x76, 0x0a, 0xf2, 0x20, 0x5f, 0x84, 0xec, 0xd6, 0xd6, 0x1a, 0x8e, 0x4a, 0x16, 0x0d, 0xbb, - 0xe9, 0x30, 0x6c, 0x6a, 0x87, 0x8a, 0xd3, 0x8c, 0xf6, 0x7a, 0x74, 0xb2, 0xc8, 0xd0, 0xc9, 0x57, - 0x13, 0xc7, 0xd4, 0xd7, 0x06, 0x77, 0xe1, 0xf0, 0xa7, 0xd6, 0x4f, 0x72, 0x7c, 0xec, 0xc7, 0x93, - 0xe3, 0x8e, 0xdb, 0x0c, 0xa9, 0x4f, 0x2e, 0x72, 0x59, 0x8f, 0x77, 0x2b, 0x56, 0xf4, 0x9b, 0x2c, - 0xc6, 0x13, 0x87, 0x73, 0x8a, 0x66, 0xc8, 0x35, 0x65, 0x86, 0x64, 0x71, 0x86, 0xcc, 0xf4, 0x9b, - 0x0b, 0xe6, 0xcf, 0x64, 0x64, 0x15, 0x3b, 0xcb, 0xcf, 0xa8, 0x5f, 0xf7, 0x2d, 0xcd, 0xaf, 0x3b, - 0x1f, 0xf9, 0x0b, 0xa2, 0x53, 0x8a, 0xe5, 0x13, 0x0e, 0x9b, 0xde, 0x86, 0x29, 0xd9, 0x05, 0xe8, - 0x1e, 0xbf, 0x0a, 0xe3, 0xf2, 0xb8, 0x94, 0x3b, 0xc7, 0x67, 0x35, 0x9e, 0x3b, 0xcb, 0x96, 0x2c, - 0x37, 0xff, 0xf6, 0xa8, 0xa4, 0xe5, 0x35, 0xb1, 0x2e, 0x2c, 0x34, 0x1a, 0xbe, 0xda, 0x85, 0x4e, - 0xa3, 0xe1, 0x5b, 0x08, 0x65, 0x6b, 0x42, 0xb5, 0xbb, 0xd7, 0x74, 0xeb, 0x88, 0xa3, 0xd8, 0x33, - 0x1d, 0x84, 0xda, 0x0c, 0x55, 0x9d, 0x99, 0x31, 0xb2, 0x76, 0xd6, 0x93, 0x1d, 0x78, 0xd6, 0xf3, - 0x13, 0x30, 0x51, 0x6c, 0x35, 0x34, 0xb7, 0xae, 0x99, 0xd2, 0x29, 0xd7, 0x23, 0x24, 0x2e, 0xd6, - 0xcf, 0x8b, 0x3e, 0x5a, 0xa8, 0xb7, 0x1a, 0xbd, 0xce, 0xdc, 0x98, 0xa5, 0x76, 0x58, 0x33, 0xfa, - 0x24, 0x87, 0x35, 0xb7, 0x61, 0x62, 0x3b, 0xa0, 0x5b, 0xdd, 0x76, 0x9b, 0x36, 0x71, 0x4d, 0xcf, - 0x71, 0x13, 0xb4, 0x1b, 0x50, 0x3b, 0x44, 0xa8, 0xda, 0x80, 0x08, 0x55, 0x15, 0xab, 0xf1, 0x01, - 0x62, 0xf5, 0x45, 0x18, 0x29, 0x74, 0x3a, 0xf2, 0x14, 0x2b, 0xf2, 0x39, 0x76, 0x3a, 0x38, 0x83, - 0x67, 0x9c, 0x4e, 0x47, 0x3f, 0x93, 0x42, 0x6c, 0x3c, 0xbb, 0xa1, 0xd4, 0xc7, 0x01, 0x9a, 0x8c, - 0xed, 0x93, 0x0e, 0xa5, 0x7e, 0x72, 0x78, 0x22, 0x44, 0xed, 0xc0, 0x67, 0x6a, 0xd8, 0x03, 0x9f, - 0x1a, 0xcc, 0xe8, 0x43, 0xf0, 0x14, 0x7c, 0xb5, 0x1f, 0x8d, 0xe4, 0x72, 0xf9, 0x89, 0x8f, 0x46, - 0x72, 0x90, 0x9f, 0x34, 0xbf, 0x9b, 0x81, 0xc9, 0x42, 0xa7, 0xf3, 0x8c, 0x9f, 0x29, 0x7f, 0x59, - 0x9b, 0xde, 0xe7, 0xe2, 0x61, 0x3c, 0xc5, 0x71, 0xf2, 0xef, 0x66, 0x60, 0x36, 0x41, 0xa1, 0xb6, - 0xde, 0x18, 0xf2, 0x8c, 0x35, 0x33, 0xe4, 0x19, 0x6b, 0xb6, 0xff, 0x19, 0xab, 0x3a, 0x79, 0x46, - 0x9e, 0x64, 0xf2, 0xbc, 0x06, 0xd9, 0x42, 0xa7, 0x93, 0x74, 0x4f, 0x77, 0x3a, 0x3b, 0xb7, 0xb8, - 0xc1, 0xed, 0x74, 0x3a, 0x16, 0xc3, 0xd0, 0x64, 0x73, 0x6c, 0x48, 0xd9, 0x34, 0xdf, 0x84, 0x09, - 0xe4, 0x85, 0xfa, 0xf0, 0x92, 0x98, 0x48, 0x5c, 0x19, 0x6a, 0x75, 0xf1, 0x49, 0x63, 0xfe, 0x5f, - 0x6c, 0x67, 0xc7, 0x7e, 0x3f, 0xa3, 0x32, 0xb6, 0xac, 0xc9, 0x58, 0x5e, 0x91, 0xb1, 0x61, 0xa4, - 0xeb, 0x97, 0x47, 0xb0, 0xb7, 0x84, 0x5c, 0x89, 0x53, 0x3a, 0x23, 0xe5, 0x94, 0xee, 0x09, 0xd4, - 0xff, 0xfd, 0xe4, 0x79, 0x5d, 0x16, 0x07, 0xe3, 0xe5, 0x64, 0x53, 0x9f, 0xca, 0x51, 0xdd, 0x2a, - 0x90, 0x4a, 0x3b, 0xa0, 0xf5, 0xae, 0x4f, 0x6b, 0xf7, 0xdd, 0xce, 0x0e, 0xf5, 0xdd, 0xfd, 0x23, - 0xb1, 0xfd, 0x45, 0x0d, 0xed, 0x8a, 0x52, 0x3b, 0xb8, 0xef, 0x76, 0xd8, 0xde, 0xc3, 0xdd, 0x3f, - 0xb2, 0x52, 0x68, 0xc8, 0x07, 0x30, 0x6e, 0xd1, 0x87, 0xbe, 0x1b, 0xca, 0x33, 0x82, 0x99, 0x68, - 0x9f, 0x81, 0x50, 0x6e, 0x47, 0xfb, 0xfc, 0x87, 0x3a, 0xfe, 0xa2, 0x9c, 0x2c, 0xf3, 0x73, 0x23, - 0x7e, 0x16, 0x30, 0x1d, 0x7f, 0x6d, 0x61, 0xb7, 0xb6, 0x32, 0xd7, 0xe7, 0xd0, 0xf0, 0x2a, 0x8c, - 0xa2, 0x9b, 0x43, 0xac, 0x0e, 0x18, 0x4e, 0x57, 0x67, 0x00, 0x75, 0x8f, 0x8f, 0x18, 0x9f, 0xdd, - 0x99, 0xd9, 0xf7, 0x47, 0x71, 0x7e, 0x9e, 0x10, 0x8f, 0x39, 0xe0, 0x44, 0x57, 0x97, 0x95, 0xec, - 0x69, 0x64, 0x65, 0x07, 0xa6, 0x6a, 0x4c, 0x4b, 0xe8, 0x47, 0xbb, 0xcf, 0xc7, 0x9d, 0x77, 0x5d, - 0x2d, 0x1e, 0x64, 0xd4, 0x6a, 0x7c, 0x88, 0x9d, 0x94, 0x41, 0x6e, 0x3b, 0xbf, 0xa0, 0x30, 0x4e, - 0x91, 0xbe, 0x48, 0x9d, 0xd5, 0x79, 0x67, 0x9d, 0x5a, 0xee, 0xc6, 0x9e, 0x4c, 0xee, 0xc6, 0x3f, - 0x95, 0xdc, 0x25, 0x82, 0x60, 0x73, 0xa7, 0x09, 0x82, 0xbd, 0xf8, 0x01, 0xcc, 0xf5, 0xf4, 0xf0, - 0x69, 0x76, 0x02, 0x9f, 0x9d, 0x58, 0xfe, 0x34, 0x28, 0x33, 0x2b, 0x67, 0xd1, 0x86, 0xeb, 0xd3, - 0x7a, 0x88, 0x9a, 0x5d, 0x28, 0x63, 0x5f, 0xc0, 0x12, 0x67, 0x8c, 0x08, 0x23, 0xef, 0xc3, 0x38, - 0x77, 0x01, 0xf0, 0xad, 0x77, 0x3c, 0x23, 0x85, 0xbb, 0x80, 0xc7, 0x48, 0x73, 0x0c, 0xb5, 0x57, - 0x05, 0x91, 0x79, 0x57, 0x7a, 0x1d, 0x4e, 0x98, 0x17, 0x4b, 0x30, 0xba, 0x13, 0xf7, 0x0c, 0x06, - 0x5f, 0xf1, 0x8f, 0xb0, 0x38, 0xdc, 0xfc, 0x79, 0x03, 0x66, 0xf4, 0xaf, 0x24, 0xd7, 0x61, 0x4c, - 0x44, 0x9a, 0x1a, 0xb8, 0x17, 0x64, 0x5f, 0x33, 0xc6, 0x63, 0x4c, 0xb5, 0xc8, 0x52, 0x81, 0xc5, - 0x56, 0x16, 0xc1, 0x41, 0xb8, 0x11, 0x70, 0x65, 0x11, 0x42, 0x6a, 0xc9, 0x32, 0x62, 0xc2, 0x98, - 0x45, 0x83, 0x6e, 0x33, 0x54, 0xdd, 0x5d, 0x3e, 0x42, 0x2c, 0x51, 0x62, 0x16, 0x61, 0x8c, 0xab, - 0xa4, 0xc4, 0x41, 0x9b, 0x71, 0x8a, 0x83, 0x36, 0xf3, 0xd8, 0x00, 0xa8, 0xd5, 0x56, 0xef, 0xd1, - 0xa3, 0xaa, 0xe3, 0xfa, 0xe8, 0x9f, 0xc5, 0x29, 0x7d, 0x4f, 0x0c, 0xf9, 0x94, 0xf0, 0xcf, 0xf2, - 0xe9, 0x7f, 0x9f, 0x1e, 0x69, 0xfe, 0x59, 0x89, 0x8a, 0x7a, 0xc3, 0x77, 0x1f, 0x38, 0x21, 0x65, - 0x84, 0x19, 0x24, 0xe4, 0x7a, 0x83, 0x43, 0x13, 0x94, 0x0a, 0x32, 0xf9, 0x26, 0xcc, 0xc4, 0xbf, - 0x70, 0xab, 0x9f, 0x45, 0x07, 0x99, 0x14, 0x2b, 0xbd, 0x70, 0xe5, 0xc5, 0xc7, 0xc7, 0x4b, 0x17, - 0x15, 0xae, 0x49, 0xcf, 0x7a, 0x82, 0x99, 0xf9, 0x5b, 0x06, 0x3a, 0xf6, 0xe5, 0x07, 0x5e, 0x86, - 0x91, 0x28, 0x7c, 0x60, 0x8a, 0xbb, 0x13, 0x12, 0x9e, 0x34, 0x2c, 0x27, 0x2f, 0x43, 0x36, 0xfe, - 0x12, 0x54, 0xf9, 0xfa, 0x17, 0xb0, 0x52, 0x72, 0x17, 0xc6, 0x87, 0x6a, 0x33, 0x8a, 0x78, 0x4a, - 0x5b, 0x25, 0x35, 0x8e, 0xc2, 0x47, 0xbb, 0x5b, 0x9f, 0xdf, 0x51, 0xf8, 0x5e, 0x06, 0x66, 0x59, - 0xbf, 0x16, 0xba, 0xe1, 0xa1, 0xe7, 0xbb, 0xe1, 0xd1, 0x33, 0xbb, 0xef, 0x7f, 0x57, 0x33, 0xda, - 0x2e, 0x4a, 0xdd, 0xa7, 0x7e, 0xdb, 0x50, 0xdb, 0xff, 0x3f, 0x1a, 0x85, 0xf9, 0x14, 0x2a, 0xf2, - 0x86, 0xe6, 0xef, 0x5a, 0x94, 0xd7, 0x43, 0x7e, 0x7c, 0xbc, 0x34, 0x25, 0xd1, 0xb7, 0xe2, 0xeb, - 0x22, 0xcb, 0xfa, 0x29, 0x19, 0xef, 0x29, 0x74, 0x7f, 0xa9, 0xa7, 0x64, 0xfa, 0xd9, 0xd8, 0x55, - 0x18, 0xb5, 0xbc, 0x26, 0xe5, 0x0b, 0xa9, 0x30, 0x54, 0x7c, 0x06, 0xd0, 0x0e, 0x23, 0x18, 0x80, - 0xac, 0xc2, 0x38, 0xfb, 0x63, 0xdd, 0xe9, 0x08, 0xa7, 0x1f, 0x89, 0xb6, 0x0d, 0x08, 0xed, 0xb8, - 0xed, 0x03, 0x75, 0xe7, 0xd0, 0xa4, 0x76, 0xcb, 0xe9, 0x68, 0x2b, 0x1b, 0x47, 0xd4, 0x76, 0x20, - 0xb9, 0xfe, 0x3b, 0x10, 0xe3, 0xc4, 0x1d, 0x48, 0x03, 0xa0, 0xe6, 0x1e, 0xb4, 0xdd, 0xf6, 0x41, - 0xa1, 0x79, 0x20, 0x2e, 0xd9, 0x5c, 0xed, 0x3f, 0x0a, 0xd7, 0x63, 0x64, 0x14, 0x5c, 0xee, 0x0b, - 0xe7, 0x30, 0xdb, 0x69, 0x6a, 0x1e, 0xc9, 0x18, 0x95, 0x6c, 0x00, 0x14, 0xea, 0xa1, 0xfb, 0x80, - 0x09, 0x70, 0x20, 0x02, 0x3b, 0x65, 0x83, 0x8b, 0x85, 0x7b, 0xf4, 0xa8, 0x46, 0xc3, 0xd8, 0xc3, - 0xe9, 0x20, 0x2a, 0x9b, 0x07, 0x6a, 0x1f, 0x2a, 0x1c, 0x48, 0x07, 0xce, 0x16, 0x1a, 0x0d, 0x97, - 0x7d, 0x81, 0xd3, 0xdc, 0xf2, 0xd9, 0x60, 0x34, 0x90, 0xf5, 0x54, 0x3a, 0xeb, 0xab, 0x82, 0xf5, - 0x4b, 0x4e, 0x44, 0x65, 0x87, 0x9c, 0x2c, 0x59, 0x4d, 0x3a, 0x63, 0x73, 0x13, 0x66, 0xf4, 0x4f, - 0xd7, 0xaf, 0x06, 0x4d, 0x41, 0xce, 0xaa, 0x15, 0xec, 0xda, 0x6a, 0xe1, 0x66, 0xde, 0x20, 0x79, - 0x98, 0x12, 0xbf, 0x96, 0xed, 0xe5, 0xb7, 0x6e, 0xe7, 0x33, 0x1a, 0xe4, 0xad, 0x9b, 0xcb, 0xf9, - 0xec, 0x47, 0x23, 0xb9, 0x6c, 0x7e, 0xe4, 0xa3, 0x91, 0xdc, 0x48, 0x7e, 0xf4, 0xa3, 0x91, 0xdc, - 0x78, 0x3e, 0x27, 0xf6, 0xfb, 0xbf, 0x67, 0x40, 0x4e, 0xb6, 0x9b, 0xdc, 0x86, 0x6c, 0xad, 0xb6, - 0x9a, 0x88, 0xee, 0x8c, 0xd7, 0x17, 0xae, 0x49, 0x83, 0xe0, 0x50, 0xd5, 0xa4, 0xb5, 0xda, 0x2a, - 0xa3, 0xdb, 0x5a, 0xab, 0x89, 0xe5, 0x5d, 0xd2, 0xc5, 0x6a, 0x9b, 0xd3, 0xa5, 0x84, 0xbc, 0xdd, - 0x86, 0xec, 0x47, 0xbb, 0x5b, 0x62, 0x5b, 0x22, 0xe9, 0x62, 0x4d, 0xca, 0xe9, 0xbe, 0xfd, 0x50, - 0xd5, 0xef, 0x8c, 0xc0, 0xb4, 0x60, 0x52, 0x11, 0x61, 0xbe, 0xdc, 0xb6, 0xbc, 0xe8, 0xda, 0x8c, - 0x58, 0x6e, 0x19, 0xc4, 0x12, 0x25, 0xcc, 0x3a, 0x58, 0xf3, 0xea, 0x4e, 0x53, 0xac, 0xdb, 0x68, - 0x1d, 0x34, 0x19, 0xc0, 0xe2, 0x70, 0xf3, 0x0f, 0x0d, 0xc8, 0x57, 0x7d, 0xef, 0x81, 0xcb, 0xd4, - 0xcc, 0x96, 0x77, 0x9f, 0xb6, 0x77, 0x6e, 0x92, 0x37, 0xe5, 0x64, 0x33, 0xa2, 0x4d, 0xf0, 0x28, - 0x4e, 0xb6, 0x84, 0x6f, 0x54, 0x4c, 0x38, 0xe5, 0xf6, 0x51, 0x66, 0xf8, 0x1b, 0x0d, 0x27, 0xdc, - 0x3e, 0x5a, 0x82, 0x51, 0x6c, 0x8e, 0x12, 0x54, 0x3e, 0x1a, 0x32, 0x80, 0xc5, 0xe1, 0xea, 0xa6, - 0x32, 0xd3, 0xf3, 0x0d, 0xcb, 0x9f, 0xab, 0x5b, 0x01, 0xfa, 0xc7, 0x0d, 0xa5, 0xa9, 0x3f, 0x81, - 0x85, 0x64, 0x97, 0xa0, 0x83, 0xa2, 0x00, 0xb3, 0x3a, 0x5c, 0xfa, 0x2a, 0xce, 0xa7, 0xd6, 0xb5, - 0xb3, 0x6c, 0x25, 0xf1, 0xcd, 0x3f, 0x35, 0x60, 0x02, 0xff, 0xb4, 0xba, 0x4d, 0x3c, 0x77, 0x2e, - 0xec, 0xd6, 0x44, 0xb8, 0x9b, 0x6a, 0xc6, 0x39, 0x0f, 0x03, 0x5b, 0xc4, 0xc6, 0x69, 0xfa, 0x25, - 0x42, 0x16, 0xa4, 0x3c, 0xb8, 0x4f, 0x1e, 0x50, 0x45, 0xa4, 0x3c, 0x0a, 0x30, 0x48, 0x90, 0x0a, - 0x64, 0x0c, 0x95, 0xd8, 0xad, 0x31, 0xf1, 0x53, 0x8f, 0xa5, 0x90, 0xce, 0x6b, 0xea, 0xa1, 0x12, - 0x1c, 0x0d, 0x4f, 0xa5, 0x76, 0x6b, 0x05, 0x6b, 0x43, 0x3b, 0x95, 0x62, 0x6d, 0xd4, 0xa2, 0xb1, - 0x04, 0x92, 0xf9, 0x3f, 0x8f, 0x27, 0x3b, 0x50, 0x2c, 0x75, 0xa7, 0x9c, 0x1b, 0xef, 0xc0, 0x68, - 0xa1, 0xd9, 0xf4, 0x1e, 0x0a, 0x2d, 0x21, 0xfd, 0x25, 0x51, 0xff, 0xf1, 0x95, 0xcc, 0x61, 0x28, - 0x5a, 0x60, 0x2d, 0x03, 0x90, 0x22, 0x4c, 0x14, 0x76, 0x6b, 0x95, 0x4a, 0x69, 0x6b, 0x6b, 0x4d, - 0x5c, 0x05, 0x7d, 0x55, 0xf6, 0x8f, 0xeb, 0x36, 0xec, 0xe4, 0xf1, 0x4d, 0x6c, 0xb9, 0xc7, 0x74, - 0xe4, 0x3d, 0x80, 0x8f, 0x3c, 0xb7, 0xbd, 0x4e, 0xc3, 0x43, 0xaf, 0x21, 0x3e, 0xfe, 0x85, 0xc7, - 0xc7, 0x4b, 0x93, 0xdf, 0xf6, 0xdc, 0xb6, 0xdd, 0x42, 0x30, 0x6b, 0x7b, 0x8c, 0x64, 0x29, 0x7f, - 0xb3, 0x9e, 0x5e, 0xf1, 0xf8, 0x59, 0xf2, 0x68, 0xdc, 0xd3, 0x7b, 0x5e, 0xcf, 0x31, 0xb2, 0x44, - 0x23, 0x2d, 0x98, 0xad, 0x75, 0x0f, 0x0e, 0x28, 0xd3, 0xea, 0x62, 0xf7, 0x3b, 0x26, 0xf6, 0x5c, - 0xd1, 0x45, 0x5a, 0xbe, 0x13, 0x61, 0xfb, 0x93, 0x60, 0xe5, 0x0d, 0x26, 0xc8, 0x3f, 0x3a, 0x5e, - 0x12, 0xc7, 0x42, 0xcc, 0x48, 0x0b, 0x24, 0x7d, 0xaf, 0xff, 0x25, 0xc9, 0x9b, 0x6c, 0xc2, 0xd8, - 0x5d, 0x37, 0x5c, 0xed, 0xee, 0x89, 0xed, 0xeb, 0x4b, 0x03, 0x26, 0x0d, 0x47, 0xe4, 0x3b, 0xf8, - 0x03, 0x37, 0x3c, 0xec, 0xaa, 0xe1, 0x8b, 0x82, 0x0d, 0xd9, 0x85, 0x5c, 0xd1, 0xf5, 0xeb, 0x4d, - 0x5a, 0xac, 0x88, 0x55, 0xff, 0xe5, 0x01, 0x2c, 0x25, 0x2a, 0xef, 0x97, 0x3a, 0xfe, 0xaa, 0xbb, - 0xaa, 0x15, 0x20, 0x31, 0xc8, 0xbf, 0x69, 0xc0, 0x73, 0x51, 0xeb, 0x0b, 0x07, 0xb4, 0x1d, 0xae, - 0x3b, 0x61, 0xfd, 0x90, 0xfa, 0xd1, 0x1d, 0x92, 0x01, 0xbd, 0xf4, 0x95, 0x9e, 0x5e, 0xba, 0x12, - 0xf7, 0x92, 0xc3, 0x98, 0xd9, 0x2d, 0xce, 0xad, 0xb7, 0xcf, 0x06, 0xd5, 0x4a, 0x6c, 0x80, 0x7b, - 0xdd, 0x3d, 0xea, 0xb7, 0x69, 0x48, 0x03, 0x11, 0x54, 0xfd, 0xea, 0x80, 0x0f, 0x8e, 0x91, 0x45, - 0x48, 0x61, 0xf4, 0x5b, 0x0b, 0x9d, 0x88, 0xa0, 0xe4, 0x9e, 0x8c, 0x0f, 0xe6, 0x16, 0xc9, 0xa5, - 0x01, 0xbc, 0x79, 0xcc, 0xf0, 0xfc, 0x80, 0x58, 0x73, 0x3e, 0xda, 0x6b, 0xce, 0x9e, 0x30, 0x42, - 0x4e, 0x18, 0xed, 0x35, 0x27, 0x1e, 0xed, 0xa6, 0x93, 0x1c, 0xed, 0x35, 0x67, 0xcf, 0xfc, 0xe7, - 0x23, 0x70, 0xb1, 0xbf, 0xa8, 0x90, 0x8f, 0xe5, 0xfc, 0xe5, 0x5a, 0xf2, 0xf2, 0x89, 0xc2, 0x75, - 0xfd, 0xc4, 0x59, 0xfd, 0x55, 0x58, 0x28, 0xb7, 0x43, 0xea, 0x77, 0x7c, 0x57, 0xde, 0x10, 0x5a, - 0xf5, 0x02, 0x19, 0x2a, 0xf1, 0xca, 0xe3, 0xe3, 0xa5, 0x4b, 0x34, 0x2a, 0x17, 0x51, 0x33, 0x18, - 0xb8, 0xa1, 0xb0, 0x4a, 0xe5, 0x70, 0xf1, 0xb7, 0xb2, 0x30, 0x82, 0x4a, 0xf9, 0x65, 0xc8, 0xd6, - 0xba, 0x7b, 0x42, 0x1b, 0x73, 0xf3, 0x45, 0x13, 0x75, 0x56, 0x4a, 0xbe, 0x0c, 0x60, 0xd1, 0x8e, - 0x17, 0xb8, 0xa1, 0xe7, 0x1f, 0xa9, 0x61, 0x96, 0x7e, 0x04, 0xd5, 0x03, 0x86, 0x24, 0x94, 0xac, - 0xc2, 0x6c, 0xfc, 0x6b, 0xf3, 0x61, 0x9b, 0x4a, 0xaf, 0x1b, 0xee, 0xb0, 0x62, 0x72, 0xdb, 0x63, - 0x65, 0xea, 0xe4, 0x4d, 0x90, 0x91, 0x65, 0xc8, 0xed, 0x7a, 0xfe, 0xfd, 0x7d, 0xd6, 0xc3, 0x23, - 0xb1, 0x7a, 0x79, 0x28, 0x60, 0xea, 0x34, 0x92, 0x78, 0xe4, 0x1d, 0x98, 0x2c, 0xb7, 0x1f, 0xb8, - 0xbe, 0xd7, 0x6e, 0xd1, 0xb6, 0x8c, 0x8c, 0xe1, 0x9e, 0x83, 0x18, 0xac, 0x05, 0x4e, 0xc7, 0x60, - 0xb6, 0x8f, 0x28, 0xd4, 0x43, 0xcf, 0x17, 0x81, 0x31, 0x7c, 0x9c, 0x18, 0x40, 0x1b, 0x27, 0x06, - 0x60, 0x9d, 0x68, 0xd1, 0x7d, 0xe1, 0x19, 0xc5, 0x4e, 0xf4, 0xe9, 0xbe, 0x16, 0x15, 0x4e, 0xf7, - 0x99, 0x7a, 0xb4, 0xe8, 0x3e, 0x6e, 0x7e, 0x72, 0x71, 0xfb, 0x7d, 0xba, 0xdf, 0xb3, 0x6d, 0x16, - 0x68, 0xe6, 0x6f, 0xf7, 0x17, 0xb8, 0x35, 0xe7, 0xb4, 0x02, 0xb7, 0xe6, 0x0c, 0x21, 0x70, 0x6f, - 0x44, 0x61, 0x48, 0x99, 0x38, 0xca, 0x9e, 0x87, 0x21, 0xa9, 0x13, 0x82, 0xe3, 0x5c, 0xfc, 0xd7, - 0x4e, 0x25, 0x44, 0xa2, 0x93, 0x32, 0xc3, 0x76, 0x52, 0x76, 0xa8, 0x4e, 0x22, 0x2b, 0x30, 0x1d, - 0xdd, 0xb2, 0xaf, 0x3a, 0x22, 0x28, 0x57, 0x84, 0xf1, 0x44, 0x39, 0x13, 0xec, 0x8e, 0x13, 0xaa, - 0x46, 0xb9, 0x4e, 0x42, 0xde, 0x85, 0x49, 0x11, 0x8b, 0x87, 0x1c, 0x46, 0xe3, 0x20, 0x40, 0x19, - 0xb8, 0x97, 0xa0, 0x57, 0xd1, 0x49, 0x19, 0x66, 0xaa, 0x6e, 0x87, 0x36, 0xdd, 0x36, 0xad, 0x61, - 0x98, 0x8f, 0x90, 0x18, 0x8c, 0x69, 0xeb, 0x88, 0x12, 0x9b, 0x47, 0x00, 0x69, 0x3e, 0x04, 0x8d, - 0x28, 0x29, 0xac, 0xe3, 0xa7, 0x11, 0x56, 0xf3, 0xf7, 0x32, 0xf0, 0xfc, 0xa0, 0x35, 0x87, 0xd4, - 0x74, 0x61, 0xb9, 0x32, 0xc4, 0x3a, 0x75, 0xb2, 0xb8, 0x94, 0x61, 0x66, 0xd3, 0x3f, 0x70, 0xda, - 0xee, 0x77, 0xd0, 0x96, 0x88, 0xa2, 0x09, 0xf1, 0xcb, 0x3d, 0xa5, 0x44, 0x77, 0xd0, 0x25, 0x88, - 0x2e, 0x3e, 0x10, 0x62, 0xf4, 0x69, 0xa3, 0x27, 0x6f, 0xc3, 0x44, 0xd1, 0x6b, 0x87, 0xf4, 0x51, - 0x98, 0x08, 0x02, 0xe7, 0xc0, 0x64, 0x10, 0xb8, 0x44, 0x35, 0xff, 0xc8, 0x80, 0x17, 0x07, 0xaf, - 0x5b, 0x64, 0x5b, 0xef, 0xb6, 0x6b, 0x43, 0xad, 0x76, 0x27, 0x76, 0xdc, 0xc5, 0x75, 0xf1, 0xc5, - 0x65, 0x98, 0x11, 0x41, 0x23, 0xba, 0x59, 0x8c, 0x1d, 0x28, 0x82, 0xaf, 0x52, 0x4c, 0xe3, 0x04, - 0x91, 0xf9, 0x17, 0x06, 0x5c, 0xe8, 0xbb, 0x48, 0x92, 0xaa, 0xfe, 0x0d, 0xaf, 0x9e, 0xb4, 0xaa, - 0x9e, 0xdc, 0xfc, 0x5f, 0x30, 0x44, 0xfb, 0xdf, 0x87, 0xa9, 0x5a, 0x77, 0x2f, 0x79, 0x73, 0x18, - 0x67, 0x4e, 0xa0, 0xc0, 0xb5, 0xc3, 0x0f, 0x05, 0xce, 0xbe, 0x5f, 0xc6, 0xc6, 0x61, 0x34, 0xb7, - 0xb4, 0xed, 0xf1, 0xfb, 0xa3, 0x70, 0x54, 0x8c, 0xb6, 0x55, 0x6d, 0x86, 0x04, 0x91, 0xf9, 0x0b, - 0x19, 0x98, 0xe1, 0x67, 0x03, 0x7c, 0xe3, 0xf1, 0xcc, 0x6e, 0xea, 0xde, 0xd1, 0x36, 0x75, 0xf2, - 0xda, 0x8a, 0xfa, 0x69, 0x43, 0x6d, 0xe9, 0x0e, 0x81, 0xf4, 0xd2, 0x10, 0x4b, 0x9e, 0x60, 0x0d, - 0xb3, 0x9b, 0xbb, 0x19, 0xdf, 0x70, 0xc2, 0x0c, 0x38, 0x75, 0x1b, 0xb7, 0xd4, 0x81, 0xa5, 0xf1, - 0x30, 0x7f, 0x3e, 0x03, 0xd3, 0x8a, 0xf3, 0xed, 0x99, 0xed, 0xf8, 0xaf, 0x68, 0x1d, 0xbf, 0x28, - 0xfd, 0x55, 0xf1, 0x97, 0x0d, 0xd5, 0xef, 0x5d, 0x98, 0xeb, 0x21, 0x49, 0xfa, 0x30, 0x8d, 0x61, - 0x7c, 0x98, 0x6f, 0xf4, 0x5e, 0x6b, 0xe1, 0x89, 0x46, 0xa2, 0x6b, 0x2d, 0xea, 0x3d, 0x9a, 0xef, - 0x65, 0x60, 0x41, 0xfc, 0x2a, 0x74, 0x1b, 0x6e, 0x58, 0xf4, 0xda, 0xfb, 0xee, 0xc1, 0x33, 0x3b, - 0x16, 0x05, 0x6d, 0x2c, 0x96, 0xf4, 0xb1, 0x50, 0x3e, 0xb0, 0xff, 0x90, 0x98, 0x7f, 0x1d, 0x60, - 0xb1, 0x1f, 0xc1, 0xd0, 0x21, 0x97, 0xf1, 0x95, 0xc3, 0xcc, 0x10, 0x57, 0x0e, 0xd7, 0x20, 0x8f, - 0x55, 0xd5, 0x68, 0xc0, 0x3a, 0x21, 0x88, 0xb3, 0x1c, 0x5c, 0x7a, 0x7c, 0xbc, 0xf4, 0xbc, 0xc3, - 0xca, 0xec, 0x40, 0x14, 0xda, 0x5d, 0x5f, 0xdd, 0xf8, 0xf5, 0x50, 0x92, 0xdf, 0x32, 0x60, 0x06, - 0x81, 0xe5, 0x07, 0xb4, 0x1d, 0x22, 0xb3, 0x11, 0x11, 0xaa, 0x13, 0xed, 0xf9, 0x6a, 0xa1, 0xef, - 0xb6, 0x0f, 0xc4, 0xa6, 0x6f, 0x4f, 0x6c, 0xfa, 0xde, 0xe5, 0x9b, 0xd5, 0xeb, 0x75, 0xaf, 0x75, - 0xe3, 0xc0, 0x77, 0x1e, 0xb8, 0xdc, 0xaf, 0xec, 0x34, 0x6f, 0xc4, 0x49, 0xae, 0x3a, 0x6e, 0x22, - 0x6d, 0x95, 0x60, 0x85, 0x1b, 0x6a, 0xde, 0x50, 0x8a, 0xd5, 0x26, 0x9a, 0x99, 0x68, 0x11, 0xf9, - 0x1a, 0x9c, 0xe7, 0x77, 0x44, 0xd8, 0x92, 0xea, 0xb6, 0xbb, 0x5e, 0x37, 0x58, 0x71, 0xea, 0xf7, - 0x99, 0x1a, 0xe7, 0xc7, 0xcb, 0xf8, 0xe5, 0xf5, 0xa8, 0xd0, 0xde, 0xe3, 0xa5, 0x0a, 0xcb, 0x7e, - 0x0c, 0xc8, 0x2a, 0xcc, 0xf1, 0xa2, 0x42, 0x37, 0xf4, 0x6a, 0x75, 0xa7, 0xe9, 0xb6, 0x0f, 0xd0, - 0x26, 0xca, 0xf1, 0xe5, 0xc5, 0xe9, 0x86, 0x9e, 0x1d, 0x70, 0xb8, 0xc2, 0xaf, 0x97, 0x88, 0x54, - 0xd8, 0x16, 0xc4, 0x69, 0xac, 0x3b, 0x8f, 0x8a, 0x4e, 0xc7, 0xa9, 0xbb, 0x21, 0xbf, 0x68, 0x98, - 0xe5, 0xb7, 0x03, 0x7c, 0xea, 0x34, 0xec, 0x96, 0xf3, 0xc8, 0xae, 0x8b, 0x42, 0x7d, 0x0f, 0xa2, - 0xd1, 0x45, 0xac, 0xdc, 0x76, 0xc4, 0x6a, 0x22, 0xc9, 0xca, 0x6d, 0xf7, 0x67, 0x15, 0xd3, 0x49, - 0x56, 0x5b, 0x8e, 0x7f, 0x40, 0x43, 0x7e, 0x2c, 0xcb, 0x36, 0xd4, 0x86, 0xc2, 0x2a, 0xc4, 0x32, - 0x1b, 0x8f, 0x68, 0x93, 0xac, 0x14, 0x3a, 0x26, 0x79, 0xbb, 0xbe, 0x1b, 0x52, 0xf5, 0x0b, 0x27, - 0xb1, 0x59, 0xd8, 0xff, 0x78, 0x30, 0xdd, 0xef, 0x13, 0x7b, 0x28, 0x63, 0x6e, 0xca, 0x47, 0x4e, - 0xf5, 0x70, 0x4b, 0xff, 0xca, 0x1e, 0xca, 0x88, 0x9b, 0xfa, 0x9d, 0xd3, 0xf8, 0x9d, 0x0a, 0xb7, - 0x3e, 0x1f, 0xda, 0x43, 0x49, 0x36, 0x58, 0xa7, 0x85, 0xb4, 0xcd, 0x24, 0x5a, 0x1c, 0x4b, 0xcf, - 0x60, 0xd3, 0x5e, 0x11, 0x67, 0x2b, 0x79, 0x5f, 0x16, 0xdb, 0x29, 0x87, 0xd4, 0x49, 0x62, 0xf2, - 0x97, 0x60, 0x76, 0x3b, 0xa0, 0x77, 0x2a, 0xd5, 0x9a, 0xbc, 0x13, 0xb4, 0x38, 0x8b, 0x27, 0x2e, - 0x37, 0x4f, 0x50, 0x3a, 0xd7, 0x55, 0x1a, 0x4c, 0x37, 0xc5, 0xc7, 0xad, 0x1b, 0x50, 0x7b, 0xdf, - 0xed, 0x04, 0xd1, 0xfd, 0x3c, 0x75, 0xdc, 0x12, 0x55, 0x99, 0xab, 0x30, 0xd7, 0xc3, 0x86, 0xcc, - 0x00, 0x30, 0xa0, 0xbd, 0xbd, 0x51, 0x2b, 0x6f, 0xe5, 0xcf, 0x90, 0x3c, 0x4c, 0xe1, 0xef, 0xf2, - 0x46, 0x61, 0x65, 0xad, 0x5c, 0xca, 0x1b, 0x64, 0x0e, 0xa6, 0x11, 0x52, 0xaa, 0xd4, 0x38, 0x28, - 0xf3, 0xd1, 0x48, 0x6e, 0x34, 0x3f, 0x66, 0xe5, 0xf9, 0xd4, 0x0d, 0xd9, 0x04, 0xc0, 0x35, 0xc5, - 0xfc, 0x5b, 0x19, 0xb8, 0x20, 0x97, 0x15, 0x1a, 0xb2, 0xad, 0xb2, 0xdb, 0x3e, 0x78, 0xc6, 0x57, - 0x87, 0x3b, 0xda, 0xea, 0xf0, 0x4a, 0x62, 0xa5, 0x4e, 0x7c, 0xe5, 0x80, 0x25, 0xe2, 0x57, 0xc7, - 0xe1, 0x85, 0x81, 0x54, 0xe4, 0x63, 0xb6, 0x9a, 0xbb, 0xb4, 0x1d, 0x56, 0x1a, 0x4d, 0xba, 0xe5, - 0xb6, 0xa8, 0xd7, 0x0d, 0x45, 0x18, 0xc4, 0xcb, 0x8f, 0x8f, 0x97, 0xe6, 0x79, 0xae, 0x28, 0xdb, - 0x6d, 0x34, 0xa9, 0x1d, 0xf2, 0x62, 0x4d, 0xdc, 0x7a, 0xa9, 0x19, 0xcb, 0x28, 0x9f, 0x5d, 0xa5, - 0x1d, 0x52, 0xff, 0x81, 0xc3, 0x53, 0xe6, 0x08, 0x96, 0xf7, 0x29, 0xed, 0xd8, 0x0e, 0x2b, 0xb5, - 0x5d, 0x51, 0xac, 0xb3, 0xec, 0xa1, 0x26, 0x77, 0x14, 0x96, 0x45, 0xb6, 0x1b, 0x58, 0x77, 0x1e, - 0x09, 0x0f, 0xb0, 0xb8, 0xfe, 0x1b, 0xb1, 0xe4, 0xb7, 0xcf, 0x5b, 0xce, 0x23, 0xab, 0x97, 0x84, - 0x7c, 0x13, 0xce, 0x8a, 0x05, 0x48, 0x84, 0xe9, 0xcb, 0x2f, 0xe6, 0x97, 0x00, 0x5e, 0x7b, 0x7c, - 0xbc, 0x74, 0x5e, 0x2c, 0x5f, 0xb6, 0xbc, 0xf2, 0x90, 0xf6, 0xd5, 0xe9, 0x5c, 0xc8, 0x16, 0x5b, - 0x90, 0x13, 0xdd, 0xb1, 0x4e, 0x83, 0xc0, 0x39, 0x90, 0xde, 0x62, 0x1e, 0x8b, 0xa4, 0x74, 0xa6, - 0xdd, 0xe2, 0xe5, 0x56, 0x5f, 0x4a, 0xb2, 0x0a, 0x33, 0xbb, 0x74, 0x4f, 0x1d, 0x9f, 0xb1, 0x48, - 0x55, 0xe5, 0x1f, 0xd2, 0xbd, 0xfe, 0x83, 0x93, 0xa0, 0x23, 0x2e, 0xcc, 0x61, 0x9c, 0xe6, 0x9a, - 0x1b, 0x84, 0xb4, 0x4d, 0x7d, 0xbc, 0xca, 0x34, 0x8e, 0xca, 0x60, 0x31, 0xb6, 0x90, 0xf5, 0xf2, - 0x95, 0x97, 0x1e, 0x1f, 0x2f, 0xbd, 0xc0, 0x63, 0x3e, 0x9b, 0x02, 0x6e, 0x27, 0x12, 0xc7, 0xf5, - 0x72, 0x25, 0xdf, 0x82, 0x59, 0xcb, 0xeb, 0x86, 0x6e, 0xfb, 0xa0, 0x16, 0xfa, 0x4e, 0x48, 0x0f, - 0xf8, 0x82, 0x14, 0xdf, 0x99, 0x4a, 0x94, 0x0a, 0x5f, 0x19, 0x07, 0xda, 0x81, 0x80, 0x6a, 0x2b, - 0x82, 0x4e, 0x40, 0x7e, 0x02, 0x66, 0x78, 0x54, 0x77, 0x54, 0xc1, 0x84, 0x96, 0x63, 0x45, 0x2f, - 0xdc, 0xb9, 0xc9, 0xf7, 0x5b, 0x3c, 0x3a, 0x3c, 0xad, 0x82, 0x04, 0x37, 0xf2, 0x75, 0xd1, 0x59, - 0x55, 0xb7, 0x7d, 0x10, 0x89, 0x31, 0x60, 0xcf, 0xbf, 0x19, 0x77, 0x49, 0x87, 0x35, 0x57, 0x8a, - 0x71, 0x9f, 0xd3, 0x87, 0x5e, 0x3e, 0xe6, 0xb1, 0x01, 0xf9, 0x64, 0x03, 0xc9, 0x57, 0x61, 0x82, - 0x3b, 0xa4, 0x69, 0x70, 0x28, 0x2e, 0x57, 0xc9, 0x0b, 0x3a, 0x11, 0x5c, 0x27, 0x12, 0x29, 0x17, - 0xb8, 0xbb, 0x9b, 0xaa, 0x47, 0xb2, 0xab, 0x67, 0xac, 0x98, 0x19, 0x69, 0xc0, 0x14, 0x6f, 0x03, - 0xc5, 0x6b, 0x80, 0xe2, 0x5c, 0xf2, 0x25, 0x75, 0xcc, 0x45, 0x51, 0x82, 0x3f, 0xde, 0x94, 0x13, - 0x5f, 0xca, 0x11, 0xb4, 0x2a, 0x34, 0xae, 0x2b, 0x00, 0x39, 0x49, 0x68, 0x5e, 0x80, 0xf3, 0x7d, - 0xda, 0x6c, 0x3e, 0x40, 0x87, 0x5f, 0x9f, 0x1a, 0xc9, 0x57, 0x61, 0x01, 0x09, 0x8b, 0x5e, 0xbb, - 0x4d, 0xeb, 0x21, 0x4e, 0x32, 0xe9, 0x33, 0xc8, 0x72, 0x77, 0x30, 0xff, 0xde, 0x7a, 0x84, 0x60, - 0x27, 0x5d, 0x07, 0xa9, 0x1c, 0xcc, 0x5f, 0xcb, 0xc0, 0xa2, 0x98, 0xb7, 0x16, 0xad, 0x7b, 0x7e, - 0xe3, 0xd9, 0x5f, 0x27, 0xca, 0xda, 0x3a, 0xf1, 0x72, 0x74, 0x57, 0x23, 0xed, 0x23, 0x07, 0x2c, - 0x13, 0xbf, 0x6b, 0xc0, 0xf3, 0x83, 0x88, 0x58, 0xef, 0x44, 0xd7, 0x1e, 0x27, 0x7a, 0xae, 0x37, - 0x76, 0x60, 0x1e, 0x07, 0xb4, 0x78, 0x48, 0xeb, 0xf7, 0x83, 0x55, 0x2f, 0x08, 0x31, 0x2c, 0x22, - 0xa3, 0x85, 0x44, 0xaf, 0x78, 0x1e, 0x3f, 0xbb, 0xc1, 0x03, 0x2e, 0xe3, 0x47, 0xc7, 0x4b, 0xc0, - 0x40, 0xfc, 0xa2, 0xa2, 0xf0, 0x42, 0x3e, 0x3a, 0xb2, 0xeb, 0xc8, 0x83, 0x5f, 0xcc, 0xbc, 0x4f, - 0x8f, 0x02, 0x2b, 0x8d, 0x35, 0x1e, 0x71, 0x17, 0xba, 0xe1, 0x61, 0xd5, 0xa7, 0xfb, 0xd4, 0xa7, - 0xed, 0x3a, 0xfd, 0x9c, 0x1d, 0x71, 0xeb, 0x1f, 0x37, 0xd4, 0xbe, 0xfc, 0xff, 0x9e, 0x80, 0x85, - 0x34, 0x32, 0xd6, 0x2f, 0xca, 0x56, 0x30, 0x99, 0xac, 0xf6, 0xaf, 0x19, 0x30, 0x55, 0xa3, 0x75, - 0xaf, 0xdd, 0xb8, 0x83, 0x8e, 0x7f, 0xd1, 0x3b, 0x36, 0x5f, 0x0a, 0x19, 0xdc, 0xde, 0x4f, 0x9c, - 0x08, 0xfc, 0xf8, 0x78, 0xe9, 0xc3, 0xe1, 0x76, 0x60, 0x75, 0x0f, 0x6f, 0xa5, 0x85, 0x98, 0x84, - 0x25, 0xaa, 0x02, 0x63, 0x9f, 0xb4, 0x4a, 0xc9, 0x0a, 0x4c, 0x8b, 0xe9, 0xea, 0xa9, 0xb7, 0x5e, - 0xd1, 0xc1, 0x5d, 0x97, 0x05, 0x3d, 0xd7, 0xe4, 0x35, 0x12, 0x72, 0x0b, 0xb2, 0xdb, 0xcb, 0x77, - 0xc4, 0x18, 0xc8, 0x4b, 0x3b, 0xdb, 0xcb, 0x77, 0xd0, 0xc9, 0xc3, 0x0c, 0xe7, 0xe9, 0xee, 0xb2, - 0xe6, 0x8b, 0xdf, 0x5e, 0xbe, 0x43, 0xfe, 0x32, 0x9c, 0x2d, 0xb9, 0x81, 0xa8, 0x82, 0x07, 0x5b, - 0x34, 0x30, 0xb8, 0x70, 0xac, 0x8f, 0xf4, 0x7e, 0x29, 0x55, 0x7a, 0x5f, 0x6a, 0x44, 0x4c, 0x6c, - 0x1e, 0xc9, 0xd1, 0x48, 0xde, 0xee, 0x4d, 0xaf, 0x87, 0x7c, 0x1b, 0x66, 0xd0, 0xdf, 0x88, 0xf1, - 0x27, 0x98, 0x70, 0x63, 0xbc, 0x4f, 0xcd, 0x5f, 0x48, 0xad, 0xf9, 0x22, 0xba, 0x2f, 0x6d, 0x8c, - 0x62, 0xc1, 0xe4, 0x1c, 0xda, 0x5e, 0x56, 0xe3, 0x4c, 0x3e, 0x82, 0x59, 0x61, 0x54, 0x6c, 0xee, - 0x6f, 0x1d, 0xd2, 0x92, 0x73, 0x24, 0x4e, 0x69, 0x70, 0x9f, 0x22, 0x2c, 0x11, 0xdb, 0xdb, 0xb7, - 0xc3, 0x43, 0x6a, 0x37, 0x1c, 0x6d, 0xf9, 0x4d, 0x10, 0x92, 0x9f, 0x82, 0xc9, 0x35, 0xaf, 0xce, - 0xec, 0x49, 0xd4, 0x0c, 0x13, 0xc8, 0xe7, 0x13, 0xcc, 0x9c, 0xca, 0xc1, 0x09, 0x23, 0xe1, 0xc7, - 0xc7, 0x4b, 0xef, 0x9c, 0x56, 0x68, 0x94, 0x0a, 0x2c, 0xb5, 0x36, 0x52, 0x84, 0xdc, 0x2e, 0xdd, - 0x63, 0x5f, 0x9b, 0xcc, 0xfa, 0x27, 0xc1, 0xe2, 0xe0, 0x4c, 0xfc, 0xd2, 0x0e, 0xce, 0x04, 0x8c, - 0xf8, 0x30, 0x87, 0xfd, 0x53, 0x75, 0x82, 0xe0, 0xa1, 0xe7, 0x37, 0x30, 0x97, 0xce, 0x64, 0x9f, - 0xce, 0x5f, 0x4e, 0xed, 0xfc, 0xe7, 0x79, 0xe7, 0x77, 0x14, 0x0e, 0xaa, 0x59, 0xd4, 0xc3, 0x9e, - 0x7c, 0x0b, 0x66, 0x2c, 0xfa, 0x93, 0x5d, 0xd7, 0xa7, 0xeb, 0x77, 0x0a, 0x38, 0x2b, 0xa7, 0xb4, - 0x10, 0x4d, 0xbd, 0x90, 0xdb, 0x5e, 0x3e, 0x87, 0x49, 0xbf, 0x8a, 0xdd, 0xda, 0x77, 0x74, 0x37, - 0xb1, 0x4a, 0x42, 0xaa, 0x30, 0x59, 0xa2, 0x0f, 0xdc, 0x3a, 0xc5, 0x40, 0x32, 0xdc, 0x87, 0x2a, - 0x59, 0xc8, 0xe2, 0x12, 0xee, 0x61, 0x68, 0x20, 0x80, 0x87, 0xa5, 0xe9, 0x31, 0xe9, 0x11, 0x22, - 0xb9, 0x0d, 0xd9, 0x4a, 0xa9, 0x8a, 0x9b, 0xd0, 0x38, 0x3e, 0xab, 0xd2, 0xa8, 0xca, 0x8c, 0x5a, - 0x78, 0xcc, 0xe5, 0x36, 0xb4, 0x24, 0x6a, 0x95, 0x52, 0x95, 0xec, 0xc3, 0x34, 0x76, 0xc0, 0x2a, - 0x75, 0x78, 0xdf, 0xce, 0xf6, 0xe9, 0xdb, 0xeb, 0xa9, 0x7d, 0xbb, 0xc8, 0xfb, 0xf6, 0x50, 0x50, - 0x6b, 0x29, 0x82, 0x54, 0xb6, 0x7c, 0x63, 0x68, 0xfe, 0x07, 0x06, 0x4e, 0x7f, 0x72, 0x0d, 0xef, - 0x13, 0x45, 0x67, 0x2b, 0xe8, 0xcf, 0x72, 0x3a, 0x89, 0xfc, 0x16, 0x1c, 0x85, 0xbc, 0x01, 0x63, - 0x77, 0x9c, 0x3a, 0x0d, 0xa5, 0x47, 0x1e, 0x91, 0xf7, 0x11, 0xa2, 0x3a, 0xbf, 0x38, 0x0e, 0xb3, - 0x4c, 0x78, 0xb7, 0x14, 0xe2, 0x8c, 0xe9, 0xc5, 0x82, 0xbc, 0x28, 0x8b, 0x96, 0x89, 0xe8, 0x4e, - 0x25, 0xa5, 0xba, 0x5d, 0x77, 0x54, 0x5e, 0xa9, 0x1c, 0xcc, 0xff, 0xd5, 0x88, 0xe5, 0x99, 0xbc, - 0x06, 0x23, 0x56, 0x35, 0x6a, 0x3f, 0x8f, 0xec, 0x4c, 0x34, 0x1f, 0x11, 0xc8, 0xd7, 0xe1, 0xac, - 0xc2, 0x07, 0xfb, 0x84, 0x36, 0x58, 0x83, 0xf8, 0xc7, 0xbc, 0x8a, 0xa1, 0x87, 0x4a, 0x4b, 0x1c, - 0x8e, 0x91, 0x68, 0x51, 0x3a, 0x0f, 0x34, 0xc3, 0xe2, 0x82, 0x12, 0x6d, 0xbb, 0x9c, 0xb7, 0xf2, - 0xb1, 0x2a, 0xef, 0x06, 0x22, 0x24, 0x3f, 0x36, 0x8d, 0x03, 0x8f, 0x3e, 0x34, 0xdf, 0xd2, 0xc4, - 0x34, 0x4a, 0x4e, 0x6d, 0x0c, 0x4e, 0x4e, 0x6d, 0xfe, 0x0b, 0x43, 0xc9, 0x43, 0xfe, 0x8c, 0xae, - 0xf8, 0xb7, 0xb5, 0x15, 0x7f, 0x41, 0x90, 0x46, 0x5f, 0xc5, 0xca, 0x52, 0xad, 0xb4, 0x59, 0xe5, - 0x10, 0x18, 0x01, 0xdf, 0xcd, 0xc0, 0xe4, 0x76, 0x40, 0x7d, 0x7e, 0x98, 0xf1, 0xf9, 0xba, 0xa5, - 0x19, 0x7d, 0xd7, 0x50, 0xf7, 0xe8, 0xfe, 0xc4, 0x40, 0x27, 0x97, 0x4a, 0xc1, 0x7a, 0x83, 0x81, - 0xd4, 0xde, 0xe8, 0x06, 0xd4, 0xb7, 0x10, 0xca, 0xef, 0x4f, 0xad, 0xe9, 0xf7, 0xa7, 0x9a, 0x16, - 0x83, 0x91, 0x0f, 0x61, 0x74, 0x1b, 0xb7, 0xec, 0x7a, 0xf4, 0x7c, 0xc4, 0x1f, 0x0b, 0xf9, 0xc4, - 0xec, 0xb2, 0x3f, 0x55, 0xbd, 0x82, 0x65, 0xa4, 0x06, 0xe3, 0x45, 0x9f, 0x62, 0xc6, 0xf1, 0x91, - 0xe1, 0x23, 0x40, 0xeb, 0x9c, 0x24, 0x19, 0x01, 0x2a, 0x38, 0x99, 0xbf, 0x92, 0x01, 0x12, 0x7f, - 0x23, 0xe6, 0x44, 0x0b, 0x9e, 0xd9, 0x41, 0xff, 0x40, 0x1b, 0xf4, 0x17, 0x7a, 0x06, 0x9d, 0x7f, - 0xde, 0x50, 0x63, 0xff, 0x87, 0x06, 0x9c, 0x4b, 0x27, 0x24, 0x2f, 0xc3, 0xd8, 0xe6, 0x56, 0x55, - 0x5e, 0xc0, 0x10, 0x9f, 0xe2, 0x75, 0x70, 0x67, 0x61, 0x89, 0x22, 0xf2, 0x26, 0x8c, 0x7d, 0x6c, - 0x15, 0x99, 0xf2, 0x51, 0x92, 0xb3, 0xfc, 0xa4, 0x6f, 0xd7, 0x75, 0xfd, 0x23, 0x90, 0xd4, 0xb1, - 0xcd, 0x3e, 0xb5, 0xb1, 0xfd, 0x5e, 0x06, 0x66, 0x0b, 0xf5, 0x3a, 0x0d, 0x02, 0xb6, 0x9a, 0xd3, - 0x20, 0x7c, 0x66, 0x07, 0x36, 0xfd, 0x6a, 0x85, 0xf6, 0x6d, 0x43, 0x8d, 0xea, 0x1f, 0x19, 0x70, - 0x56, 0x52, 0x3d, 0x70, 0xe9, 0xc3, 0xad, 0x43, 0x9f, 0x06, 0x87, 0x5e, 0xb3, 0x31, 0x74, 0x06, - 0x28, 0xb6, 0xb8, 0x63, 0x2e, 0x0c, 0xf5, 0x64, 0x6b, 0x1f, 0x21, 0xda, 0xe2, 0xce, 0xf3, 0x65, - 0xdc, 0x80, 0xf1, 0x42, 0xa7, 0xe3, 0x7b, 0x0f, 0xf8, 0xb4, 0x9f, 0x16, 0x01, 0xb1, 0x1c, 0xa4, - 0x05, 0xd0, 0x72, 0x10, 0x6b, 0x46, 0x89, 0xb6, 0xf9, 0xdd, 0xd6, 0x69, 0xde, 0x8c, 0x06, 0x6d, - 0xab, 0x26, 0x33, 0x96, 0x9b, 0xbf, 0x38, 0x02, 0x53, 0xea, 0x87, 0x10, 0x93, 0xe7, 0x83, 0xf1, - 0x7c, 0x35, 0x4e, 0xdd, 0x41, 0x88, 0x25, 0x4a, 0xe2, 0xeb, 0x1d, 0x99, 0x13, 0xaf, 0x77, 0xec, - 0xc2, 0x74, 0xd5, 0xf7, 0x3a, 0x5e, 0x40, 0x1b, 0xfc, 0xd1, 0x08, 0xae, 0xb5, 0xe6, 0x15, 0x83, - 0x92, 0xf5, 0x39, 0xba, 0xef, 0x71, 0x3b, 0xd5, 0x11, 0xd8, 0x76, 0xf2, 0x49, 0x09, 0x9d, 0x0f, - 0x3f, 0x19, 0x74, 0x02, 0x71, 0xdb, 0x3c, 0x3a, 0x19, 0x64, 0x10, 0xfd, 0x64, 0x90, 0x41, 0xd4, - 0x69, 0x31, 0xfa, 0xb4, 0xa6, 0x05, 0xf9, 0x15, 0x03, 0x26, 0x0b, 0xed, 0xb6, 0xb8, 0x36, 0x72, - 0x42, 0xdc, 0xec, 0x37, 0xc4, 0xe1, 0xe0, 0x3b, 0x9f, 0xea, 0x70, 0x70, 0xcb, 0x77, 0xdc, 0x30, - 0xc0, 0x68, 0xe2, 0xb8, 0x42, 0xd5, 0x22, 0x56, 0xda, 0x41, 0xde, 0x81, 0x7c, 0x24, 0x8f, 0x95, - 0x76, 0x83, 0x3e, 0xa2, 0xc1, 0xe2, 0xf8, 0xa5, 0xec, 0x95, 0x69, 0xfe, 0xde, 0x8d, 0x76, 0xea, - 0x99, 0x44, 0x34, 0xbf, 0x67, 0xc0, 0x39, 0x55, 0x20, 0x6a, 0xdd, 0xbd, 0x96, 0x8b, 0x96, 0x3d, - 0xb9, 0x0e, 0x13, 0x62, 0xbc, 0x22, 0xfb, 0xaf, 0x37, 0x0d, 0x4e, 0x8c, 0x42, 0xca, 0x6c, 0x88, - 0x18, 0x0f, 0xe1, 0x6b, 0x99, 0x4f, 0x4c, 0x37, 0x56, 0xb4, 0xb2, 0x28, 0x3a, 0x3b, 0xef, 0xe3, - 0x6f, 0x7d, 0xec, 0x18, 0xc4, 0x7c, 0x1f, 0xe6, 0xf4, 0x56, 0xd6, 0x28, 0xa6, 0x32, 0x91, 0x9f, - 0x66, 0xa4, 0x7f, 0x9a, 0x2c, 0x37, 0x77, 0x81, 0xf4, 0xd0, 0x07, 0x78, 0xc2, 0x4d, 0x43, 0x19, - 0x81, 0x21, 0xfd, 0xcb, 0x3d, 0x88, 0xd1, 0x4b, 0x3c, 0x93, 0x6a, 0x77, 0x23, 0xa9, 0xf9, 0x9f, - 0x4f, 0xc2, 0x7c, 0x8a, 0xea, 0x38, 0x61, 0x69, 0x5f, 0xd2, 0x27, 0xcf, 0x44, 0x14, 0x92, 0x2e, - 0xa7, 0xcc, 0xfb, 0xf2, 0x7d, 0x95, 0x01, 0x53, 0x65, 0xd0, 0xa3, 0x2b, 0x9f, 0xc5, 0xf2, 0xae, - 0xde, 0x1a, 0x19, 0x7d, 0x6a, 0xb7, 0x46, 0x56, 0x60, 0x5a, 0x7c, 0x95, 0x98, 0xca, 0x63, 0xb1, - 0x5b, 0xc5, 0xe7, 0x05, 0x76, 0xcf, 0x94, 0xd6, 0x49, 0x38, 0x8f, 0xc0, 0x6b, 0x3e, 0xa0, 0x82, - 0xc7, 0xb8, 0xca, 0x03, 0x0b, 0x52, 0x79, 0x28, 0x24, 0xe4, 0xdf, 0xc7, 0xe4, 0x88, 0x08, 0x51, - 0xe7, 0x73, 0x6e, 0xd0, 0x7c, 0x6e, 0x3c, 0x9d, 0xf9, 0xfc, 0x82, 0x6c, 0x63, 0xfa, 0xbc, 0x4e, - 0x69, 0x16, 0xf9, 0x6d, 0x03, 0xe6, 0xf8, 0xd5, 0x05, 0xb5, 0xb1, 0x03, 0xc3, 0xd1, 0xeb, 0x4f, - 0xa7, 0xb1, 0xcf, 0x07, 0x58, 0x6d, 0x9f, 0xb6, 0xf6, 0x36, 0x8a, 0x7c, 0x0d, 0x20, 0x9a, 0x51, - 0xc1, 0x22, 0xe8, 0xd7, 0xf5, 0xd3, 0x96, 0xcf, 0x38, 0x59, 0x4f, 0x18, 0xd1, 0x69, 0x29, 0x31, - 0x23, 0x28, 0xf9, 0xcb, 0xb0, 0xc0, 0xe6, 0x4b, 0x04, 0x11, 0x17, 0xad, 0x16, 0x27, 0xb1, 0x96, - 0x2f, 0xf6, 0x5f, 0xda, 0xaf, 0xa7, 0x91, 0xf1, 0x2b, 0xfd, 0x71, 0x46, 0xe9, 0xb0, 0xa5, 0xee, - 0x14, 0xd3, 0x28, 0xf0, 0xe6, 0x22, 0xb6, 0x9e, 0xa7, 0xc6, 0xe9, 0xa3, 0xdf, 0x2e, 0xc8, 0xb9, - 0xc0, 0xf5, 0x5b, 0xa0, 0xc7, 0xcf, 0x22, 0x88, 0x7c, 0x0c, 0x24, 0x8a, 0xf9, 0xe7, 0x30, 0xea, - 0xcb, 0x07, 0x16, 0xd0, 0xc7, 0x12, 0xdf, 0x1d, 0xf0, 0x65, 0xb1, 0x2a, 0x24, 0xbd, 0xc4, 0x84, - 0xc2, 0x82, 0xf8, 0x68, 0x06, 0x95, 0xc9, 0x23, 0x83, 0xc5, 0x19, 0xed, 0x1a, 0x5b, 0x5c, 0x12, - 0xa7, 0x9e, 0x56, 0x32, 0x50, 0x6a, 0xbb, 0xe5, 0x34, 0x76, 0xe4, 0x36, 0x4c, 0xac, 0x79, 0x07, - 0x6e, 0x7b, 0x55, 0x9e, 0xdb, 0x8b, 0x33, 0xc4, 0x26, 0x03, 0xda, 0x87, 0xfa, 0xe9, 0x7b, 0x8c, - 0xca, 0xac, 0xda, 0x92, 0x7f, 0x64, 0x75, 0xdb, 0x8b, 0x79, 0x8c, 0x27, 0x41, 0x73, 0xa6, 0xe1, - 0x1f, 0xd9, 0x7e, 0x57, 0x8f, 0x72, 0x46, 0xa4, 0x8b, 0x7b, 0x70, 0xa1, 0xef, 0xa0, 0xa5, 0x64, - 0x0f, 0xb8, 0xa1, 0x67, 0x0f, 0xb8, 0xd0, 0x4f, 0xb9, 0x07, 0x6a, 0x06, 0x81, 0xdf, 0x30, 0x12, - 0xda, 0x5c, 0x98, 0x5e, 0x3c, 0xeb, 0x5b, 0xbf, 0xe5, 0x2e, 0x83, 0xd9, 0x88, 0xb9, 0xbe, 0xcf, - 0xc4, 0x26, 0x1f, 0xd3, 0xf7, 0xea, 0x7a, 0x81, 0x9a, 0xff, 0x09, 0x15, 0xbb, 0xf9, 0xab, 0x19, - 0x20, 0xbc, 0x85, 0x45, 0xa7, 0xe3, 0xec, 0xb9, 0x4d, 0x37, 0x74, 0xf1, 0xc6, 0x46, 0x5e, 0xb0, - 0x70, 0xf6, 0x9a, 0x54, 0xbd, 0xee, 0x24, 0xe2, 0x58, 0xa2, 0x32, 0x3b, 0x69, 0xa4, 0xf5, 0x10, - 0xf6, 0x11, 0xc5, 0xcc, 0x93, 0x88, 0xe2, 0xb7, 0xe0, 0xb9, 0x42, 0x07, 0x53, 0x0e, 0xcb, 0x5a, - 0xee, 0x78, 0xbe, 0x14, 0x22, 0xe9, 0xb2, 0xc1, 0xf3, 0x55, 0x27, 0x42, 0xeb, 0x69, 0xe9, 0x20, - 0x16, 0xe6, 0x3f, 0xca, 0xc0, 0x85, 0xde, 0x8e, 0x11, 0xdf, 0x16, 0x0d, 0x8f, 0x71, 0xc2, 0xf0, - 0xa4, 0xf5, 0x63, 0x06, 0xa5, 0xf3, 0xa9, 0xf5, 0x23, 0xcf, 0xf9, 0xfb, 0x29, 0xfb, 0xb1, 0x06, - 0x93, 0xea, 0x4c, 0x1e, 0xf9, 0xb4, 0x33, 0x59, 0xe5, 0x62, 0xfe, 0x87, 0x86, 0x9a, 0x89, 0x96, - 0xbc, 0x99, 0x16, 0x28, 0xc9, 0xf3, 0x47, 0x70, 0xb0, 0x1e, 0x23, 0x29, 0x37, 0x81, 0x99, 0xd4, - 0x4d, 0xa0, 0x4c, 0x85, 0x91, 0x4d, 0x4d, 0x85, 0x51, 0x82, 0xd9, 0x5a, 0x77, 0x4f, 0xd6, 0x8d, - 0x88, 0x23, 0x5a, 0xe8, 0xb2, 0x2d, 0xdb, 0xaf, 0xdf, 0x27, 0xd3, 0x48, 0xcc, 0x9f, 0xcb, 0xc0, - 0x54, 0xb5, 0xd9, 0x3d, 0x70, 0xdb, 0x25, 0x27, 0x74, 0x9e, 0xd9, 0x7d, 0xe9, 0xdb, 0xda, 0xbe, - 0x34, 0x8a, 0x07, 0x8e, 0x3e, 0x6c, 0xa8, 0x4d, 0xe9, 0xf7, 0x0d, 0x98, 0x8d, 0x49, 0xb8, 0x72, - 0x5c, 0x85, 0x11, 0xf6, 0x43, 0x98, 0xb9, 0x97, 0x7a, 0x18, 0xf3, 0x2c, 0x90, 0xd1, 0x5f, 0x62, - 0xa7, 0xa8, 0xbf, 0xe8, 0x85, 0x1c, 0x2e, 0x7e, 0x89, 0xbf, 0xad, 0x73, 0xfa, 0xec, 0x8f, 0xbf, - 0x6f, 0x40, 0x3e, 0xf9, 0x25, 0xe4, 0x1e, 0x8c, 0x33, 0x4e, 0x6e, 0xf4, 0x4e, 0xcf, 0x2b, 0x7d, - 0xbe, 0xf9, 0xba, 0x40, 0xe3, 0xcd, 0xc3, 0xce, 0xa7, 0x1c, 0x62, 0x49, 0x0e, 0x17, 0x2d, 0x98, - 0x52, 0xb1, 0x52, 0x5a, 0xf7, 0x86, 0xbe, 0x22, 0x9c, 0x4b, 0xef, 0x07, 0xb5, 0xd5, 0xbf, 0xae, - 0xb5, 0x5a, 0xac, 0x05, 0xc3, 0xbe, 0xd2, 0x86, 0x29, 0x68, 0xb8, 0x94, 0xaa, 0x72, 0x96, 0x22, - 0xd0, 0x11, 0x1e, 0xdb, 0xd0, 0xf2, 0xfa, 0x84, 0x9c, 0xe1, 0x86, 0xb6, 0x83, 0x10, 0x75, 0x45, - 0xe4, 0x38, 0xe6, 0xdf, 0xcd, 0xc2, 0xb9, 0xb8, 0x79, 0xfc, 0xcd, 0xba, 0xaa, 0xe3, 0x3b, 0xad, - 0xe0, 0x84, 0x19, 0x70, 0xa5, 0xa7, 0x69, 0x98, 0xf6, 0x4d, 0x36, 0x4d, 0x69, 0x90, 0x99, 0x68, - 0x10, 0x7a, 0x02, 0x78, 0x83, 0x64, 0x33, 0xc8, 0x3d, 0xc8, 0xd6, 0x68, 0x28, 0x74, 0xd1, 0xe5, - 0x9e, 0x5e, 0x55, 0xdb, 0x75, 0xbd, 0x46, 0x43, 0x3e, 0x88, 0xfc, 0x76, 0x12, 0xd5, 0x6e, 0xcc, - 0xb3, 0x3d, 0xdd, 0x2e, 0x8c, 0x95, 0x1f, 0x75, 0x68, 0x3d, 0x14, 0xf9, 0x97, 0xae, 0x0e, 0xe6, - 0xc7, 0x71, 0x95, 0x2c, 0x4f, 0x14, 0x01, 0x6a, 0x67, 0x71, 0x94, 0x8b, 0xb7, 0x21, 0x27, 0x2b, - 0x3f, 0x55, 0xb6, 0xa2, 0xb7, 0x61, 0x52, 0xa9, 0xe4, 0x54, 0x42, 0xff, 0x17, 0x06, 0x8c, 0xb1, - 0x95, 0x60, 0xe7, 0xf6, 0x33, 0xaa, 0x91, 0x6e, 0x69, 0x1a, 0x69, 0x4e, 0x49, 0xca, 0x81, 0xf3, - 0xf2, 0xf6, 0x09, 0xba, 0xe8, 0x98, 0xad, 0x2b, 0x11, 0x32, 0xb9, 0x0b, 0xe3, 0xe2, 0x3c, 0x4e, - 0x44, 0x0e, 0xa9, 0x59, 0x3e, 0xe4, 0x49, 0x5d, 0x64, 0x2a, 0x7b, 0x9d, 0xe4, 0xde, 0x42, 0x52, - 0x93, 0x52, 0x7c, 0x43, 0x5b, 0xcb, 0xee, 0xec, 0x61, 0x00, 0x33, 0xcf, 0x52, 0xa1, 0x64, 0x40, - 0xef, 0x73, 0x69, 0xaa, 0x20, 0xbc, 0x63, 0xd9, 0x41, 0x4c, 0xce, 0xc9, 0x14, 0xbd, 0xa9, 0x8e, - 0xb3, 0x9f, 0xcd, 0xf3, 0xfc, 0x0e, 0xb2, 0x61, 0xef, 0xc1, 0xd4, 0x1d, 0xcf, 0x7f, 0xe8, 0xf8, - 0xfc, 0xd6, 0x2e, 0x7e, 0x26, 0x4f, 0xef, 0x3f, 0xbd, 0xcf, 0xe1, 0xfc, 0xde, 0xef, 0x8f, 0x8f, - 0x97, 0x46, 0x56, 0x3c, 0xaf, 0x69, 0x69, 0xe8, 0x64, 0x13, 0xa6, 0xd7, 0x9d, 0x47, 0x22, 0xca, - 0x65, 0x6b, 0x6b, 0x4d, 0x44, 0x24, 0x5e, 0x7d, 0x7c, 0xbc, 0x74, 0xa1, 0xe5, 0x3c, 0x8a, 0x4e, - 0x57, 0xfb, 0x5f, 0x22, 0xd7, 0xe9, 0x89, 0x0b, 0x33, 0x55, 0xcf, 0x0f, 0x45, 0x25, 0x6c, 0x63, - 0x94, 0xed, 0x73, 0xbe, 0x79, 0x23, 0xf5, 0x7c, 0xf3, 0x02, 0xdb, 0x0d, 0xda, 0xfb, 0x11, 0xb9, - 0x76, 0x6b, 0x4e, 0x63, 0x4c, 0xde, 0x83, 0xb9, 0x22, 0xf5, 0x43, 0x77, 0xdf, 0xad, 0x3b, 0x21, - 0xbd, 0xe3, 0xf9, 0x2d, 0x27, 0x14, 0x6b, 0x39, 0x7a, 0x65, 0xea, 0x94, 0x73, 0x6a, 0x39, 0xa1, - 0xd5, 0x8b, 0x49, 0xbe, 0x9e, 0x16, 0xe3, 0x39, 0x1a, 0x47, 0xb2, 0xa5, 0xc4, 0x78, 0xf6, 0x8b, - 0x64, 0xeb, 0x8d, 0xf6, 0x3c, 0x18, 0x14, 0x40, 0x91, 0x5b, 0xb9, 0x29, 0x62, 0x2f, 0x4e, 0x0e, - 0x90, 0x88, 0xc6, 0xad, 0x4f, 0xa0, 0xc4, 0x32, 0x64, 0x57, 0xaa, 0x77, 0xd0, 0xcf, 0x26, 0x02, - 0x16, 0x68, 0xfb, 0xd0, 0x69, 0xd7, 0xd1, 0xc0, 0x13, 0x41, 0x4b, 0xaa, 0xc2, 0x5b, 0xa9, 0xde, - 0x21, 0x0e, 0xcc, 0x57, 0xa9, 0xdf, 0x72, 0xc3, 0xaf, 0xde, 0xbc, 0xa9, 0x0c, 0x54, 0x0e, 0x9b, - 0x76, 0x43, 0x34, 0x6d, 0xa9, 0x83, 0x28, 0xf6, 0xa3, 0x9b, 0x37, 0x53, 0x87, 0x23, 0x6a, 0x58, - 0x1a, 0x2f, 0x52, 0x86, 0x99, 0x75, 0xe7, 0x51, 0x1c, 0x6b, 0x16, 0x88, 0x68, 0xf9, 0x17, 0xa4, - 0x60, 0xc5, 0x71, 0x6a, 0xda, 0xed, 0x2e, 0x9d, 0x88, 0xbc, 0x0b, 0x93, 0xb1, 0x78, 0x05, 0x22, - 0xce, 0x10, 0x0d, 0x35, 0x45, 0x38, 0x35, 0x23, 0x53, 0x41, 0x27, 0xdb, 0x91, 0x9f, 0x87, 0x5b, - 0xe9, 0x22, 0xff, 0xec, 0x0d, 0xd5, 0xcf, 0xe3, 0x60, 0x89, 0xf6, 0x59, 0xb3, 0xd1, 0xce, 0x88, - 0x07, 0xdf, 0x59, 0x3a, 0x17, 0xc5, 0x7d, 0x54, 0xf5, 0xbd, 0x56, 0x27, 0xc4, 0x60, 0x85, 0x84, - 0xfb, 0xa8, 0x83, 0x25, 0x29, 0xee, 0x23, 0x4e, 0x42, 0x28, 0x8c, 0xac, 0x79, 0xf5, 0xfb, 0x18, - 0x3e, 0x30, 0xb1, 0xf2, 0x31, 0x9b, 0xee, 0x4d, 0xaf, 0x7e, 0xff, 0xe9, 0x05, 0x86, 0x20, 0x7b, - 0xb2, 0xc1, 0x9a, 0xca, 0xa4, 0x40, 0xf4, 0x89, 0x08, 0x36, 0x58, 0x88, 0xac, 0x77, 0xa5, 0x8c, - 0xdb, 0x15, 0x5c, 0x68, 0x64, 0xd7, 0x5a, 0x3a, 0x39, 0xa1, 0x90, 0x2f, 0xd1, 0xe0, 0x7e, 0xe8, - 0x75, 0x8a, 0x4d, 0xb7, 0xb3, 0xe7, 0x39, 0x7e, 0x03, 0x77, 0xd2, 0x69, 0xf3, 0xfb, 0xb5, 0xd4, - 0xf9, 0x3d, 0xd7, 0xe0, 0xf4, 0x76, 0x5d, 0x32, 0xb0, 0x7a, 0x58, 0x92, 0xaf, 0xc3, 0x0c, 0x13, - 0xee, 0xf2, 0xa3, 0x90, 0xb6, 0xf9, 0xc8, 0xcf, 0xe1, 0xca, 0xbc, 0xa0, 0x64, 0x43, 0x8a, 0x0a, - 0xb9, 0x4c, 0xe1, 0x64, 0xa7, 0x11, 0x81, 0x2a, 0x53, 0x3a, 0x2b, 0xd2, 0x80, 0xc5, 0x75, 0xe7, - 0x51, 0x7c, 0x65, 0x53, 0x15, 0x52, 0x82, 0x02, 0x86, 0x4f, 0xc6, 0x30, 0x01, 0x8b, 0xb3, 0x16, - 0xf4, 0x91, 0xd7, 0xbe, 0x9c, 0xc8, 0x4f, 0xc1, 0x79, 0xf1, 0x59, 0x25, 0x4c, 0xf5, 0xe7, 0xf9, - 0x47, 0xb5, 0x43, 0x07, 0xc3, 0x4c, 0xe7, 0x4f, 0xa7, 0x10, 0x65, 0x87, 0x35, 0x24, 0x1f, 0x3b, - 0xe0, 0x8c, 0xac, 0x7e, 0x35, 0x90, 0x6f, 0xc1, 0x0c, 0x77, 0xa0, 0xae, 0x7a, 0x41, 0x88, 0x9b, - 0xd0, 0x85, 0x3e, 0x75, 0x5e, 0x4e, 0xad, 0x33, 0xcf, 0xbd, 0xb2, 0x3c, 0xde, 0x10, 0x7d, 0xc8, - 0x09, 0x7e, 0xe4, 0x1d, 0x98, 0xac, 0xba, 0x6d, 0x7e, 0x7d, 0xb9, 0x52, 0x5d, 0x3c, 0x1b, 0xaf, - 0x3a, 0x1d, 0xb7, 0x6d, 0xcb, 0xfd, 0x5f, 0x27, 0x52, 0x12, 0x2a, 0x36, 0xd9, 0x85, 0xc9, 0x5a, - 0x6d, 0xf5, 0x8e, 0xcb, 0x96, 0xbd, 0xce, 0xd1, 0xe2, 0xb9, 0x3e, 0x6d, 0x7b, 0x39, 0xb5, 0x6d, - 0xd3, 0x41, 0x70, 0x88, 0x8f, 0x69, 0xd8, 0x75, 0xaf, 0x73, 0x64, 0xa9, 0x9c, 0x52, 0xe2, 0x88, - 0xce, 0x3f, 0xe5, 0x38, 0xa2, 0x0a, 0xcc, 0x2a, 0x01, 0x1a, 0x18, 0x9c, 0xb1, 0x18, 0xbf, 0x37, - 0xa2, 0xc6, 0x0d, 0x25, 0xa3, 0xc1, 0x93, 0x74, 0x32, 0x80, 0xe8, 0xc2, 0x29, 0x03, 0x88, 0x3e, - 0x1a, 0xc9, 0x4d, 0xe7, 0x67, 0xcc, 0xff, 0x38, 0x93, 0x98, 0xda, 0xa4, 0x02, 0xe3, 0x42, 0x1e, - 0x84, 0xad, 0xd3, 0xdb, 0xa3, 0x2f, 0xa4, 0xf6, 0xe8, 0xb8, 0x90, 0x30, 0x4b, 0xd2, 0x93, 0x87, - 0x8c, 0xd5, 0xbe, 0xd3, 0x6d, 0xca, 0x7c, 0x13, 0xdf, 0xe4, 0x33, 0x17, 0x41, 0x9a, 0x8e, 0x2a, - 0x9d, 0x3e, 0xe2, 0x51, 0x0f, 0xa8, 0x45, 0x65, 0x25, 0x6b, 0x23, 0xf7, 0x79, 0x92, 0xad, 0x6c, - 0x14, 0x36, 0xa7, 0x67, 0xd4, 0x7a, 0x6a, 0x15, 0xb2, 0x5a, 0xcc, 0x7f, 0x62, 0xc0, 0xb4, 0xa6, - 0x1b, 0xc8, 0x6d, 0x25, 0x26, 0x34, 0x0e, 0xfe, 0xd7, 0x70, 0x50, 0x70, 0x92, 0xd1, 0xa2, 0xb7, - 0x45, 0x9c, 0x4e, 0xa6, 0x3f, 0x5d, 0xea, 0x0b, 0x28, 0x83, 0x3d, 0x15, 0x51, 0xd2, 0xce, 0x91, - 0x3e, 0x49, 0x3b, 0x7f, 0x30, 0x07, 0x33, 0xba, 0xf1, 0xc8, 0x76, 0x73, 0xe8, 0xed, 0x94, 0xae, - 0x38, 0x9e, 0x86, 0x16, 0x21, 0xda, 0xdb, 0x0a, 0x08, 0x21, 0xaf, 0x02, 0x44, 0xb1, 0x33, 0xd2, - 0xdb, 0x36, 0xfa, 0xf8, 0x78, 0xc9, 0x78, 0xd3, 0x52, 0x0a, 0xc8, 0x4f, 0x00, 0x6c, 0x78, 0x0d, - 0x1a, 0x25, 0x4a, 0x1e, 0xe0, 0xf1, 0x7f, 0xad, 0x27, 0x01, 0xcd, 0xd9, 0xb6, 0xd7, 0xa0, 0xbd, - 0xd9, 0x66, 0x14, 0x8e, 0xe4, 0x2b, 0x30, 0x6a, 0x75, 0x9b, 0x54, 0xfa, 0x96, 0x26, 0xe5, 0x6c, - 0xed, 0x36, 0x95, 0x67, 0x45, 0xfd, 0x6e, 0xf2, 0xa0, 0x97, 0x01, 0xc8, 0x07, 0x3c, 0x31, 0x8d, - 0xb8, 0x42, 0x3e, 0x1a, 0xfb, 0x1f, 0x15, 0xdd, 0xdd, 0x73, 0x89, 0x5c, 0x21, 0x21, 0x9b, 0x30, - 0x2e, 0x96, 0x66, 0x71, 0x90, 0xfa, 0x62, 0x9a, 0x0b, 0x5f, 0xb1, 0xcf, 0x45, 0xa6, 0x5b, 0x04, - 0xeb, 0x5e, 0x75, 0xee, 0xf7, 0x7b, 0x17, 0x26, 0x18, 0x7b, 0xfe, 0x4e, 0xe6, 0x78, 0xec, 0x65, - 0x54, 0x1a, 0x94, 0x7c, 0x2a, 0x33, 0x26, 0x20, 0x5f, 0xc7, 0xd4, 0xd7, 0xa2, 0xab, 0x07, 0x9e, - 0x04, 0x5d, 0xee, 0xe9, 0xea, 0x05, 0xa7, 0xd3, 0x49, 0x79, 0x69, 0x20, 0xe2, 0x47, 0x0e, 0xa2, - 0x1b, 0xdb, 0xc3, 0x24, 0x13, 0xba, 0xd6, 0x53, 0xc1, 0xa2, 0xbc, 0x84, 0xdc, 0x9b, 0xf0, 0x5a, - 0xe3, 0x4b, 0x3a, 0x90, 0x8f, 0x97, 0x45, 0x51, 0x17, 0x0c, 0xaa, 0xeb, 0xcd, 0x9e, 0xba, 0xd4, - 0x01, 0xec, 0xa9, 0xae, 0x87, 0x3b, 0x69, 0xc4, 0xef, 0x00, 0x8b, 0xfa, 0x26, 0x07, 0xd5, 0xf7, - 0x6a, 0x4f, 0x7d, 0xf3, 0x8d, 0xbd, 0xde, 0x7a, 0x12, 0x3c, 0xc9, 0xbb, 0x30, 0x2d, 0x21, 0x38, - 0x3f, 0xc4, 0xe3, 0x04, 0xfc, 0x05, 0xeb, 0x3d, 0x8c, 0xc4, 0xd6, 0xd3, 0x31, 0xab, 0xc8, 0x2a, - 0x35, 0x97, 0x8e, 0x69, 0x8d, 0x3a, 0x29, 0x15, 0x3a, 0x32, 0xf9, 0x04, 0x26, 0x2b, 0x2d, 0xf6, - 0x21, 0x5e, 0xdb, 0x09, 0xa9, 0x08, 0x3c, 0x95, 0xa7, 0x5a, 0x4a, 0x89, 0x22, 0xaa, 0xfc, 0x1d, - 0xb1, 0xb8, 0x48, 0x35, 0x94, 0x15, 0x0a, 0xd6, 0x79, 0xdc, 0xdf, 0x2b, 0x64, 0x58, 0x06, 0xa5, - 0xbe, 0x90, 0x72, 0xb2, 0xa4, 0xb0, 0x17, 0xa9, 0x1a, 0x18, 0xd4, 0x16, 0x13, 0x22, 0x91, 0xaa, - 0x41, 0xe5, 0x49, 0xde, 0x83, 0x49, 0x91, 0x67, 0xad, 0x60, 0x6d, 0x04, 0x8b, 0xf9, 0xf8, 0x09, - 0x59, 0x99, 0x92, 0xcd, 0x76, 0xfc, 0x44, 0x78, 0x41, 0x8c, 0x4f, 0xbe, 0x0a, 0x0b, 0xbb, 0x6e, - 0xbb, 0xe1, 0x3d, 0x0c, 0xc4, 0x32, 0x25, 0x14, 0xdd, 0x5c, 0x1c, 0x7b, 0xf9, 0x90, 0x97, 0xdb, - 0xd2, 0x64, 0xea, 0x51, 0x7c, 0xa9, 0x1c, 0xc8, 0x4f, 0xf7, 0x70, 0xe6, 0x12, 0x44, 0x06, 0x49, - 0xd0, 0x72, 0x8f, 0x04, 0xf5, 0x56, 0x9f, 0x14, 0xa7, 0xd4, 0x6a, 0x88, 0x07, 0x44, 0x58, 0x19, - 0x62, 0xad, 0xfa, 0xc8, 0x73, 0xdb, 0x8b, 0xf3, 0xa8, 0x0b, 0x9f, 0x4b, 0x5e, 0x5e, 0x41, 0x3c, - 0xfe, 0x60, 0x99, 0x7c, 0x76, 0x51, 0xb7, 0x5f, 0xbe, 0xed, 0x69, 0x8e, 0xbb, 0x14, 0xd6, 0xe4, - 0x13, 0x98, 0x62, 0xff, 0x47, 0xdb, 0xaa, 0x05, 0x2d, 0x16, 0x41, 0xc1, 0x14, 0xf5, 0xe0, 0x18, - 0x61, 0x22, 0xb8, 0x94, 0x1d, 0x97, 0xc6, 0x8a, 0xbc, 0x0d, 0xc0, 0x6c, 0x44, 0xa1, 0x8e, 0xcf, - 0xc6, 0xd9, 0xfa, 0xd0, 0x94, 0xec, 0x55, 0xc4, 0x31, 0x32, 0xdb, 0xeb, 0xb1, 0x5f, 0xb5, 0x6e, - 0xc3, 0x63, 0x73, 0xe3, 0x1c, 0xd2, 0xe2, 0x5e, 0x0f, 0x69, 0x03, 0x0e, 0x57, 0xa5, 0x43, 0x41, - 0x27, 0xab, 0x30, 0x8b, 0x19, 0x4c, 0x2a, 0x0d, 0xda, 0x0e, 0xf1, 0x1c, 0x66, 0xf1, 0xbc, 0x72, - 0xc2, 0xc3, 0x8a, 0x6c, 0x37, 0x2a, 0x53, 0xed, 0xb2, 0x04, 0x19, 0x09, 0x60, 0x3e, 0xd6, 0x2e, - 0xf1, 0x79, 0xd1, 0x22, 0x76, 0x92, 0x3c, 0xd3, 0xeb, 0xc5, 0xe0, 0xfa, 0x98, 0x8d, 0x88, 0xa2, - 0xb8, 0xa4, 0x7b, 0x53, 0xad, 0x30, 0x8d, 0x3b, 0xb1, 0x80, 0xdc, 0x2d, 0x56, 0xf5, 0xdc, 0x2e, - 0xc1, 0xe2, 0x05, 0xfc, 0x02, 0x1c, 0xe6, 0x83, 0x7a, 0xc7, 0x4e, 0x64, 0x85, 0xd1, 0x0e, 0x6e, - 0x7a, 0xa9, 0xc9, 0x77, 0xe0, 0x6c, 0xf4, 0xca, 0x34, 0x2f, 0x12, 0x72, 0x7d, 0xf1, 0x94, 0x9a, - 0xb8, 0xb1, 0x17, 0x55, 0xdd, 0x23, 0xd2, 0xe9, 0x55, 0x98, 0x7f, 0xc7, 0x00, 0xd2, 0xfb, 0x9d, - 0x43, 0x3b, 0xb2, 0xdf, 0x52, 0xe2, 0x99, 0xd5, 0x97, 0xf4, 0xa2, 0xac, 0x4e, 0xea, 0xfa, 0x16, - 0x47, 0x3e, 0x5f, 0xd6, 0xec, 0xa9, 0xbe, 0x41, 0x70, 0xe6, 0x9f, 0x19, 0xb0, 0x90, 0x36, 0xa3, - 0x4e, 0xc8, 0xa2, 0x6e, 0x26, 0x62, 0xe7, 0xd0, 0x33, 0xcd, 0x63, 0xe7, 0xa2, 0x88, 0xb9, 0x25, - 0x18, 0x65, 0x5f, 0x20, 0xcf, 0x17, 0xd1, 0x68, 0x63, 0x9f, 0x18, 0x58, 0x1c, 0xce, 0x10, 0xf8, - 0xd5, 0x3d, 0x66, 0xd5, 0x8d, 0x72, 0x04, 0x1c, 0x30, 0x8b, 0xc3, 0x19, 0x02, 0x33, 0x0e, 0xa5, - 0x31, 0x83, 0x08, 0xcc, 0x66, 0x0c, 0x2c, 0x0e, 0x27, 0x97, 0x61, 0x7c, 0xb3, 0xbd, 0x46, 0x9d, - 0x07, 0x32, 0xdb, 0x14, 0x7a, 0xd2, 0xbd, 0xb6, 0xdd, 0x64, 0x30, 0x4b, 0x16, 0x9a, 0xdf, 0x37, + 0x97, 0x55, 0x95, 0xa5, 0xcc, 0x2c, 0x92, 0xbd, 0x92, 0x70, 0xa7, 0xbb, 0xd3, 0xad, 0x65, 0x9d, + 0xb4, 0xd2, 0x59, 0x1f, 0x7b, 0x77, 0x3a, 0x4b, 0x10, 0x7c, 0xb6, 0x7c, 0x3e, 0x09, 0x07, 0xe9, + 0x87, 0xce, 0x38, 0xf8, 0x6c, 0x01, 0x86, 0xb0, 0xb6, 0x61, 0x9f, 0x0c, 0xd8, 0x30, 0xbc, 0x67, + 0xb4, 0x2d, 0xc9, 0x30, 0x0c, 0xfe, 0x38, 0xd8, 0x10, 0x6c, 0xe3, 0xd6, 0x96, 0x61, 0xc4, 0x8b, + 0x88, 0xcc, 0x88, 0xac, 0xac, 0xea, 0xea, 0x21, 0xc7, 0x77, 0x1c, 0xdc, 0x1f, 0xb2, 0xeb, 0xc5, + 0x7b, 0x2f, 0x22, 0x23, 0x5e, 0xbc, 0x78, 0xf1, 0xe2, 0xc5, 0x0b, 0x78, 0x29, 0xa4, 0x4d, 0xda, + 0xf1, 0xfc, 0xf0, 0x46, 0x93, 0x1e, 0x38, 0xf5, 0xa3, 0x1b, 0xe1, 0x51, 0x87, 0x06, 0xfc, 0xdf, + 0xeb, 0x1d, 0xdf, 0x0b, 0x3d, 0x32, 0x8a, 0x3f, 0x2e, 0x2e, 0x1c, 0x78, 0x07, 0x1e, 0x42, 0x6e, + 0xb0, 0xbf, 0x78, 0xe1, 0xc5, 0xa5, 0x03, 0xcf, 0x3b, 0x68, 0xd2, 0x1b, 0xf8, 0x6b, 0xaf, 0xbb, + 0x7f, 0x23, 0x74, 0x5b, 0x34, 0x08, 0x9d, 0x56, 0x47, 0x20, 0x5c, 0x8d, 0x2a, 0x70, 0xc2, 0x90, + 0x95, 0x84, 0xae, 0xd7, 0xbe, 0xf1, 0xe0, 0xa6, 0xfa, 0x53, 0xa0, 0xbe, 0x99, 0xde, 0x96, 0x87, + 0xbe, 0xd3, 0xe9, 0x50, 0x3f, 0xfe, 0x83, 0xa3, 0x9b, 0x7f, 0x90, 0x85, 0x89, 0x7b, 0x94, 0x76, + 0x0a, 0x4d, 0xf7, 0x01, 0x25, 0x2f, 0xc3, 0xc8, 0x86, 0xd3, 0xa2, 0x8b, 0xc6, 0x25, 0xe3, 0xca, + 0xc4, 0xca, 0xec, 0xe3, 0xe3, 0xa5, 0xc9, 0x80, 0xfa, 0x0f, 0xa8, 0x6f, 0xb7, 0x9d, 0x16, 0xb5, + 0xb0, 0x90, 0xbc, 0x0e, 0x13, 0xec, 0xff, 0xa0, 0xe3, 0xd4, 0xe9, 0x62, 0x06, 0x31, 0xa7, 0x1f, + 0x1f, 0x2f, 0x4d, 0xb4, 0x25, 0xd0, 0x8a, 0xcb, 0xc9, 0x65, 0x18, 0x5f, 0xa3, 0x4e, 0x40, 0x2b, + 0xa5, 0xc5, 0xec, 0x25, 0xe3, 0x4a, 0x76, 0x65, 0xea, 0xf1, 0xf1, 0x52, 0xae, 0xc9, 0x40, 0xb6, + 0xdb, 0xb0, 0x64, 0x21, 0xa9, 0xc0, 0x78, 0xf9, 0x51, 0xc7, 0xf5, 0x69, 0xb0, 0x38, 0x72, 0xc9, + 0xb8, 0x32, 0xb9, 0x7c, 0xf1, 0x3a, 0xef, 0x94, 0xeb, 0xb2, 0x53, 0xae, 0x6f, 0xc9, 0x4e, 0x59, + 0x99, 0xff, 0xc1, 0xf1, 0xd2, 0x99, 0xc7, 0xc7, 0x4b, 0xe3, 0x94, 0x93, 0xfc, 0xe2, 0xff, 0xb8, + 0x64, 0x58, 0x92, 0x9e, 0xbc, 0x0b, 0x23, 0x5b, 0x47, 0x1d, 0xba, 0x38, 0x71, 0xc9, 0xb8, 0x32, + 0xb3, 0xfc, 0xe2, 0x75, 0x3e, 0x0c, 0xd1, 0x47, 0xc6, 0x7f, 0x31, 0xac, 0x95, 0xdc, 0xe3, 0xe3, + 0xa5, 0x11, 0x86, 0x62, 0x21, 0x15, 0x79, 0x13, 0xc6, 0x56, 0xbd, 0x20, 0xac, 0x94, 0x16, 0x01, + 0x3f, 0xed, 0xec, 0xe3, 0xe3, 0xa5, 0xb9, 0x43, 0x2f, 0x08, 0x6d, 0xb7, 0xf1, 0x86, 0xd7, 0x72, + 0x43, 0xda, 0xea, 0x84, 0x47, 0x96, 0x40, 0x32, 0x1f, 0xc1, 0xb4, 0xc6, 0x8f, 0x4c, 0xc2, 0xf8, + 0xf6, 0xc6, 0xbd, 0x8d, 0xcd, 0xdd, 0x8d, 0xfc, 0x19, 0x92, 0x83, 0x91, 0x8d, 0xcd, 0x52, 0x39, + 0x6f, 0x90, 0x71, 0xc8, 0x16, 0xaa, 0xd5, 0x7c, 0x86, 0x4c, 0x41, 0xae, 0x54, 0xd8, 0x2a, 0xac, + 0x14, 0x6a, 0xe5, 0x7c, 0x96, 0xcc, 0xc3, 0xec, 0x6e, 0x65, 0xa3, 0xb4, 0xb9, 0x5b, 0xb3, 0x4b, + 0xe5, 0xda, 0xbd, 0xad, 0xcd, 0x6a, 0x7e, 0x84, 0xcc, 0x00, 0xdc, 0xdb, 0x5e, 0x29, 0x5b, 0x1b, + 0xe5, 0xad, 0x72, 0x2d, 0x3f, 0x4a, 0x16, 0x20, 0x2f, 0x49, 0xec, 0x5a, 0xd9, 0xda, 0xa9, 0x14, + 0xcb, 0xf9, 0x31, 0xf3, 0xbb, 0x59, 0xc8, 0xad, 0xd3, 0xd0, 0x69, 0x38, 0xa1, 0x43, 0x9e, 0xd7, + 0x06, 0x0e, 0xbf, 0x49, 0x19, 0xb1, 0x97, 0x7b, 0x47, 0x6c, 0xf4, 0xf1, 0xf1, 0x92, 0xf1, 0xa6, + 0x3a, 0x52, 0xef, 0xc0, 0x64, 0x89, 0x06, 0x75, 0xdf, 0xed, 0x30, 0x69, 0xc2, 0xd1, 0x9a, 0x58, + 0xb9, 0xf0, 0xf8, 0x78, 0xe9, 0x6c, 0x23, 0x06, 0x2b, 0x3d, 0xa0, 0x62, 0x93, 0x0a, 0x8c, 0xad, + 0x39, 0x7b, 0xb4, 0x19, 0x2c, 0x8e, 0x5e, 0xca, 0x5e, 0x99, 0x5c, 0x7e, 0x4e, 0xf4, 0xba, 0x6c, + 0xe0, 0x75, 0x5e, 0x5a, 0x6e, 0x87, 0xfe, 0xd1, 0xca, 0xc2, 0xe3, 0xe3, 0xa5, 0x7c, 0x13, 0x01, + 0x6a, 0x8f, 0x72, 0x14, 0x52, 0x8b, 0x25, 0x61, 0xec, 0x44, 0x49, 0x78, 0xe1, 0x07, 0xc7, 0x4b, + 0x06, 0x1b, 0x21, 0x21, 0x09, 0x31, 0x3f, 0x5d, 0x26, 0x2e, 0x41, 0xa6, 0x52, 0x5a, 0x1c, 0x47, + 0x09, 0xcc, 0x3f, 0x3e, 0x5e, 0x9a, 0xd2, 0x06, 0x33, 0x53, 0x29, 0x5d, 0x7c, 0x1b, 0x26, 0x95, + 0x36, 0x92, 0x3c, 0x64, 0xef, 0xd3, 0x23, 0xde, 0x9f, 0x16, 0xfb, 0x93, 0x2c, 0xc0, 0xe8, 0x03, + 0xa7, 0xd9, 0x15, 0x1d, 0x68, 0xf1, 0x1f, 0x5f, 0xc9, 0x7c, 0xd9, 0x30, 0xff, 0xe6, 0x08, 0xe4, + 0x2c, 0x8f, 0xcf, 0x42, 0x72, 0x15, 0x46, 0x6b, 0xa1, 0x13, 0xca, 0xa1, 0x98, 0x7f, 0x7c, 0xbc, + 0x34, 0xcb, 0x66, 0x28, 0x55, 0xea, 0xe3, 0x18, 0x0c, 0xb5, 0x7a, 0xe8, 0x04, 0x72, 0x48, 0x10, + 0xb5, 0xc3, 0x00, 0x2a, 0x2a, 0x62, 0x90, 0xcb, 0x30, 0xb2, 0xee, 0x35, 0xa8, 0x18, 0x15, 0xf2, + 0xf8, 0x78, 0x69, 0xa6, 0xe5, 0x35, 0x54, 0x44, 0x2c, 0x27, 0x6f, 0xc0, 0x44, 0xb1, 0xeb, 0xfb, + 0xb4, 0xcd, 0x04, 0x78, 0x04, 0x91, 0x67, 0x1e, 0x1f, 0x2f, 0x41, 0x9d, 0x03, 0xd9, 0x94, 0x8b, + 0x11, 0x58, 0x57, 0xd7, 0x42, 0xc7, 0x0f, 0x69, 0x63, 0x71, 0x74, 0xa8, 0xae, 0x66, 0x93, 0x6e, + 0x2e, 0xe0, 0x24, 0xc9, 0xae, 0x16, 0x9c, 0xc8, 0x2a, 0x4c, 0xde, 0xf5, 0x9d, 0x3a, 0xad, 0x52, + 0xdf, 0xf5, 0x1a, 0x38, 0x86, 0xd9, 0x95, 0xcb, 0x8f, 0x8f, 0x97, 0xce, 0x1d, 0x30, 0xb0, 0xdd, + 0x41, 0x78, 0x4c, 0xfd, 0xa3, 0xe3, 0xa5, 0x5c, 0xa9, 0xeb, 0x63, 0xef, 0x59, 0x2a, 0x29, 0xf9, + 0x16, 0x1b, 0x92, 0x20, 0xc4, 0xae, 0xa5, 0x0d, 0x1c, 0xbd, 0xc1, 0x4d, 0x34, 0x45, 0x13, 0xcf, + 0x35, 0x9d, 0x20, 0xb4, 0x7d, 0x4e, 0x97, 0x68, 0xa7, 0xca, 0x92, 0x6c, 0x42, 0xae, 0x56, 0x3f, + 0xa4, 0x8d, 0x6e, 0x93, 0x2e, 0xe6, 0x90, 0xfd, 0x79, 0x21, 0xb8, 0x72, 0x3c, 0x65, 0xf1, 0xca, + 0x45, 0xc1, 0x9b, 0x04, 0x02, 0xa2, 0xf4, 0x7d, 0xc4, 0xe4, 0x2b, 0xb9, 0xef, 0xff, 0xe6, 0xd2, + 0x99, 0xbf, 0xfc, 0x3f, 0x5c, 0x3a, 0x63, 0xfe, 0x41, 0x06, 0xf2, 0x49, 0x26, 0x64, 0x1f, 0xa6, + 0xb7, 0x3b, 0x0d, 0x27, 0xa4, 0xc5, 0xa6, 0x4b, 0xdb, 0x61, 0x80, 0x42, 0x32, 0xf8, 0x9b, 0x5e, + 0x11, 0xf5, 0x2e, 0x76, 0x91, 0xd0, 0xae, 0x73, 0xca, 0xc4, 0x57, 0xe9, 0x6c, 0xe3, 0x7a, 0x6a, + 0xa8, 0xbd, 0x03, 0x94, 0xb0, 0xd3, 0xd5, 0xc3, 0xf5, 0x7e, 0x9f, 0x7a, 0x04, 0x5b, 0x21, 0x40, + 0xed, 0xc6, 0xde, 0x11, 0x4a, 0xe6, 0xf0, 0x02, 0xc4, 0x48, 0x52, 0x04, 0x88, 0x81, 0xcd, 0xff, + 0xd9, 0x80, 0x19, 0x8b, 0x06, 0x5e, 0xd7, 0xaf, 0xd3, 0x55, 0xea, 0x34, 0xa8, 0xcf, 0xc4, 0xff, + 0x9e, 0xdb, 0x6e, 0x88, 0x39, 0x85, 0xe2, 0x7f, 0xdf, 0x6d, 0xab, 0x53, 0x18, 0xcb, 0xc9, 0x17, + 0x60, 0xbc, 0xd6, 0xdd, 0x43, 0x54, 0x3e, 0xa7, 0xce, 0xe1, 0x88, 0x75, 0xf7, 0xec, 0x04, 0xba, + 0x44, 0x23, 0x37, 0x60, 0x7c, 0x87, 0xfa, 0x41, 0xac, 0xf1, 0x50, 0xdf, 0x3f, 0xe0, 0x20, 0x95, + 0x40, 0x60, 0x91, 0xbb, 0xb1, 0xd6, 0x15, 0x2b, 0xd5, 0x6c, 0x42, 0xd7, 0xc5, 0xa2, 0xd2, 0x12, + 0x10, 0x55, 0x54, 0x24, 0x96, 0xf9, 0x4b, 0x19, 0xc8, 0x97, 0x9c, 0xd0, 0xd9, 0x73, 0x02, 0xd1, + 0x9f, 0x3b, 0xb7, 0x98, 0x1e, 0x57, 0x3e, 0x14, 0xf5, 0x38, 0x6b, 0xf9, 0xa7, 0xfe, 0xbc, 0x57, + 0x93, 0x9f, 0x37, 0xc9, 0x96, 0x4d, 0xf1, 0x79, 0xf1, 0x47, 0xbd, 0x77, 0xf2, 0x47, 0xe5, 0xc5, + 0x47, 0xe5, 0xe4, 0x47, 0xc5, 0x9f, 0x42, 0xde, 0x83, 0x91, 0x5a, 0x87, 0xd6, 0x85, 0x12, 0x91, + 0xba, 0x5f, 0xff, 0x38, 0x86, 0xb0, 0x73, 0x6b, 0x65, 0x4a, 0xb0, 0x19, 0x09, 0x3a, 0xb4, 0x6e, + 0x21, 0x99, 0x32, 0x69, 0xfe, 0xb3, 0x31, 0x58, 0x48, 0x23, 0x23, 0xef, 0xe9, 0x8b, 0x13, 0xef, + 0x9e, 0xe7, 0xfa, 0x2e, 0x4e, 0x8b, 0x86, 0xbe, 0x3c, 0x5d, 0x83, 0x5c, 0x95, 0x09, 0x64, 0xdd, + 0x6b, 0x8a, 0x9e, 0x63, 0x5a, 0x31, 0xd7, 0x91, 0x30, 0xc3, 0x8a, 0xca, 0xc9, 0x73, 0x90, 0xdd, + 0xb6, 0x2a, 0xa2, 0xbb, 0x26, 0x1e, 0x1f, 0x2f, 0x65, 0xbb, 0xbe, 0xbb, 0x68, 0x58, 0x0c, 0x4a, + 0x6e, 0xc0, 0x58, 0xb1, 0x50, 0xa4, 0x7e, 0x88, 0xdd, 0x34, 0xb5, 0x72, 0x9e, 0x49, 0x4b, 0xdd, + 0xb1, 0xeb, 0xd4, 0x0f, 0xb5, 0xea, 0x05, 0x1a, 0x79, 0x1d, 0xb2, 0x85, 0xdd, 0x9a, 0xe8, 0x19, + 0x10, 0x3d, 0x53, 0xd8, 0xad, 0xad, 0x4c, 0x8b, 0x8e, 0xc8, 0x3a, 0x0f, 0x03, 0xc6, 0xbd, 0xb0, + 0x5b, 0x53, 0x47, 0x6b, 0x6c, 0xc0, 0x68, 0x5d, 0x81, 0x1c, 0xb3, 0x3e, 0xd8, 0x02, 0x8f, 0x4a, + 0x71, 0x82, 0x1b, 0x55, 0x87, 0x02, 0x66, 0x45, 0xa5, 0xe4, 0xe5, 0xc8, 0x98, 0xc9, 0xc5, 0xfc, + 0x84, 0x31, 0x23, 0x4d, 0x18, 0xf2, 0x08, 0xa6, 0x4b, 0x47, 0x6d, 0xa7, 0xe5, 0xd6, 0xc5, 0x12, + 0x3e, 0x81, 0x4b, 0xf8, 0xf5, 0x01, 0xc3, 0x78, 0x5d, 0x23, 0xe0, 0xab, 0xba, 0x54, 0xbe, 0x8b, + 0x0d, 0x5e, 0x66, 0x27, 0x57, 0xf8, 0x45, 0xc3, 0xd2, 0x2b, 0x62, 0x73, 0x49, 0xaa, 0x48, 0xb4, + 0xb6, 0x62, 0xb1, 0x93, 0xe0, 0x78, 0x2e, 0xf9, 0x02, 0xa2, 0xce, 0xa5, 0x68, 0xd1, 0x7d, 0x0f, + 0xb2, 0x77, 0x8b, 0xd5, 0xc5, 0x49, 0xe4, 0x41, 0x04, 0x8f, 0xbb, 0xc5, 0x6a, 0xb1, 0xe9, 0x75, + 0x1b, 0xb5, 0x8f, 0xd7, 0x56, 0xce, 0x0b, 0x36, 0xd3, 0x07, 0xf5, 0x8e, 0xd6, 0x22, 0x46, 0x47, + 0xca, 0x90, 0x93, 0x5f, 0xb9, 0x38, 0x85, 0x3c, 0xe6, 0x12, 0x1f, 0xbf, 0x73, 0x8b, 0xcf, 0xb5, + 0x86, 0xf8, 0xad, 0xb6, 0x42, 0xe2, 0x90, 0x5b, 0x28, 0x65, 0x8f, 0x8e, 0x2a, 0xa5, 0x60, 0x71, + 0xfa, 0x52, 0xf6, 0xca, 0x04, 0x8a, 0xc7, 0x7c, 0x87, 0xc1, 0x6c, 0xb7, 0xa1, 0x1a, 0x3b, 0x11, + 0xe2, 0xc5, 0x5d, 0x20, 0xbd, 0x9d, 0x99, 0x62, 0x7e, 0xbc, 0xae, 0x9a, 0x1f, 0x93, 0xcb, 0x67, + 0x45, 0x03, 0x8b, 0x5e, 0xab, 0xe5, 0xb4, 0x1b, 0x48, 0xbb, 0xb3, 0xac, 0x5a, 0x25, 0x05, 0x98, + 0x89, 0x5b, 0xbf, 0xe6, 0x06, 0x21, 0xb9, 0x01, 0x13, 0x12, 0xc2, 0x56, 0x9e, 0x6c, 0xea, 0x77, + 0x5a, 0x31, 0x8e, 0xf9, 0x47, 0x19, 0x80, 0xb8, 0xe4, 0x19, 0x55, 0x4e, 0x5f, 0xd2, 0x94, 0xd3, + 0xd9, 0xa4, 0x54, 0xf7, 0x55, 0x4b, 0xe4, 0x03, 0x18, 0x63, 0x76, 0x5a, 0x57, 0xda, 0xa1, 0xe7, + 0x93, 0xa4, 0x58, 0xb8, 0x73, 0x6b, 0x65, 0x46, 0x10, 0x8f, 0x05, 0x08, 0xb1, 0x04, 0x99, 0xa2, + 0xd7, 0x7e, 0x6f, 0x34, 0x1e, 0x0c, 0xa1, 0xd1, 0xae, 0x28, 0x2a, 0xc9, 0x88, 0x27, 0xb1, 0x54, + 0x49, 0x8a, 0x42, 0xba, 0xc0, 0x15, 0x12, 0xef, 0xd4, 0x71, 0xa1, 0x90, 0x92, 0xea, 0x88, 0x77, + 0xe0, 0x89, 0xea, 0xa8, 0x93, 0x9c, 0xeb, 0x23, 0x28, 0x06, 0x57, 0x52, 0x7b, 0x25, 0x6d, 0x96, + 0x5f, 0x3a, 0x69, 0x96, 0x27, 0xe7, 0xf8, 0xad, 0x7e, 0x0a, 0xf0, 0xac, 0x9c, 0x92, 0xce, 0x43, + 0x95, 0x1c, 0x15, 0xe1, 0x3b, 0x7c, 0x3e, 0x8f, 0xf5, 0x9d, 0xcf, 0x67, 0x53, 0xe7, 0x33, 0x9f, + 0xcd, 0xef, 0xc0, 0x68, 0xe1, 0x3b, 0x5d, 0x9f, 0x0a, 0x83, 0x71, 0x4a, 0xd6, 0xc9, 0x60, 0x91, + 0x22, 0x98, 0x75, 0xd8, 0x4f, 0xd5, 0xd0, 0xc6, 0x72, 0x56, 0xf3, 0xd6, 0x5a, 0x4d, 0x18, 0x83, + 0x24, 0xd1, 0x2d, 0x5b, 0x6b, 0x4a, 0xb3, 0x43, 0xed, 0xab, 0x19, 0x15, 0xb9, 0x01, 0x99, 0x42, + 0x09, 0xf7, 0x9d, 0x93, 0xcb, 0x13, 0xb2, 0xda, 0xd2, 0xca, 0x82, 0x20, 0x99, 0x72, 0xb4, 0x4d, + 0x47, 0xa1, 0x44, 0x56, 0x60, 0x74, 0xfd, 0xa8, 0xf6, 0xf1, 0x9a, 0xd0, 0x7e, 0xf3, 0x52, 0xae, + 0x19, 0x6c, 0x13, 0x97, 0xae, 0x20, 0x6e, 0x71, 0xeb, 0x28, 0xf8, 0xf1, 0xa6, 0xda, 0x62, 0x44, + 0xfb, 0xec, 0x14, 0xc8, 0xbf, 0xa3, 0x1a, 0x28, 0x42, 0xd6, 0xd9, 0xf6, 0x58, 0x48, 0x9c, 0x11, + 0x9b, 0x4b, 0x3d, 0x12, 0x17, 0xc9, 0xdb, 0x55, 0x3e, 0xfa, 0x99, 0x9e, 0xd1, 0x9f, 0x54, 0x96, + 0x3f, 0x3e, 0xe6, 0x51, 0x5f, 0x64, 0x3f, 0x75, 0x5f, 0x90, 0x0f, 0x60, 0x6a, 0xdd, 0x69, 0x3b, + 0x07, 0xb4, 0xb1, 0x1d, 0x30, 0xb3, 0x77, 0x04, 0xb5, 0x30, 0xb3, 0x13, 0xce, 0xb7, 0x38, 0xdc, + 0xee, 0x06, 0x9a, 0x55, 0x6b, 0x69, 0x04, 0xe4, 0xa6, 0x94, 0x9d, 0xd1, 0x14, 0xd9, 0x91, 0x4b, + 0xf6, 0x28, 0xca, 0x8e, 0x90, 0x18, 0xf3, 0xfb, 0x63, 0xf8, 0x8d, 0xe4, 0x0d, 0x18, 0xb3, 0xe8, + 0x41, 0x6c, 0x9d, 0xe0, 0x2e, 0xd7, 0x47, 0x88, 0xda, 0x31, 0x1c, 0x07, 0x97, 0x3e, 0xda, 0x08, + 0x0e, 0xdd, 0xfd, 0x50, 0xf4, 0x4e, 0xb4, 0xf4, 0x09, 0xb0, 0xb2, 0xf4, 0x09, 0x88, 0xb6, 0xf4, + 0x09, 0x18, 0x9b, 0x5f, 0x56, 0xa9, 0x26, 0x3a, 0x4d, 0xf6, 0xb0, 0x55, 0x52, 0x04, 0xd5, 0xd7, + 0x56, 0x1e, 0x86, 0x4d, 0x6e, 0xc3, 0x44, 0xa1, 0x5e, 0xf7, 0xba, 0xca, 0x36, 0x71, 0xf1, 0xf1, + 0xf1, 0xd2, 0x82, 0xc3, 0x81, 0xba, 0xab, 0x23, 0x46, 0x25, 0x35, 0x98, 0x2c, 0xb3, 0xbd, 0x95, + 0x5b, 0x74, 0xea, 0x87, 0xb2, 0x93, 0xe4, 0x2c, 0x51, 0x4a, 0x22, 0x5b, 0xff, 0x2c, 0x45, 0x60, + 0x9d, 0x01, 0x55, 0xdf, 0x81, 0x82, 0x4b, 0xb6, 0x60, 0xb2, 0x46, 0xeb, 0x3e, 0x0d, 0x6b, 0xa1, + 0xe7, 0xd3, 0xc4, 0xa4, 0x57, 0x4a, 0x56, 0x5e, 0x94, 0xdb, 0xbb, 0x00, 0x81, 0x76, 0xc0, 0xa0, + 0x2a, 0x57, 0x05, 0x99, 0xdb, 0xe9, 0x2d, 0xcf, 0x3f, 0x2a, 0xad, 0x08, 0x45, 0x10, 0xaf, 0x1a, + 0x1c, 0xac, 0xda, 0xe9, 0x0c, 0xd2, 0xd8, 0xd3, 0xed, 0x74, 0x8e, 0x85, 0x23, 0x55, 0xaa, 0xe1, + 0x7a, 0x2d, 0xd4, 0xc2, 0x6c, 0xdc, 0xcb, 0x08, 0x56, 0x46, 0xaa, 0x11, 0xe0, 0x6a, 0xaf, 0x8d, + 0x94, 0xc0, 0x22, 0x1d, 0x20, 0x72, 0xd4, 0xb8, 0x2d, 0xd5, 0xa4, 0x41, 0x20, 0xb4, 0xc5, 0x85, + 0xc4, 0xe0, 0xc7, 0x08, 0x2b, 0xaf, 0x0a, 0xe6, 0x2f, 0x48, 0x31, 0x10, 0x5b, 0x33, 0x56, 0xa8, + 0xd4, 0x93, 0xc2, 0x9b, 0xbc, 0x0d, 0x50, 0x7e, 0x14, 0x52, 0xbf, 0xed, 0x34, 0x23, 0x7f, 0x16, + 0x7a, 0x74, 0xa8, 0x80, 0xea, 0x03, 0xad, 0x20, 0x93, 0x22, 0x4c, 0x17, 0x82, 0xa0, 0xdb, 0xa2, + 0x96, 0xd7, 0xa4, 0x05, 0x6b, 0x03, 0x6d, 0xab, 0x89, 0x95, 0x17, 0x1e, 0x1f, 0x2f, 0x5d, 0x70, + 0xb0, 0xc0, 0xf6, 0xbd, 0x26, 0xb5, 0x1d, 0x5f, 0x95, 0x6e, 0x9d, 0xc6, 0xfc, 0x09, 0x6d, 0x64, + 0x99, 0xd4, 0xdd, 0xa3, 0x47, 0x55, 0x9f, 0xee, 0xbb, 0x8f, 0xc4, 0x24, 0x41, 0xa9, 0xbb, 0x4f, + 0x8f, 0xec, 0x0e, 0x42, 0x55, 0xa9, 0x8b, 0x50, 0xc9, 0x17, 0x21, 0x77, 0x6f, 0xbd, 0x76, 0x8f, + 0x1e, 0x55, 0x4a, 0x62, 0x15, 0xe4, 0x64, 0xad, 0xc0, 0x66, 0xa4, 0xda, 0x37, 0x44, 0x98, 0xe6, + 0x4a, 0x3c, 0xc3, 0x58, 0xcd, 0xc5, 0x66, 0x37, 0x08, 0xa9, 0x5f, 0x29, 0xa9, 0x35, 0xd7, 0x39, + 0x30, 0x21, 0xef, 0x11, 0xaa, 0xf9, 0xcf, 0x0c, 0x9c, 0x5d, 0xac, 0x23, 0x2b, 0x6d, 0xb6, 0x6d, + 0xad, 0xd3, 0x88, 0x01, 0x76, 0xa4, 0x2b, 0xa0, 0x89, 0x8e, 0x8c, 0x91, 0xf5, 0xaa, 0x33, 0x43, + 0x57, 0xcd, 0xaa, 0x94, 0x9b, 0x60, 0xe1, 0x3b, 0x15, 0x55, 0xfa, 0x02, 0x9a, 0xa8, 0x32, 0x46, + 0x26, 0x97, 0x61, 0xbc, 0x52, 0x58, 0x2f, 0x74, 0xc3, 0x43, 0x9c, 0xdb, 0x39, 0x6e, 0x59, 0xb8, + 0x4e, 0xcb, 0x76, 0xba, 0xe1, 0xa1, 0x25, 0x0b, 0xcd, 0x3f, 0x34, 0x62, 0xd1, 0x66, 0x5b, 0x6c, + 0xc5, 0x83, 0x88, 0x5b, 0x6c, 0xb6, 0x85, 0x50, 0xb7, 0xd8, 0xe8, 0x4b, 0xb4, 0x80, 0x14, 0xbb, + 0x41, 0xe8, 0xb5, 0xca, 0xed, 0x46, 0xc7, 0x73, 0xdb, 0x21, 0x52, 0xf1, 0x0f, 0x33, 0x1f, 0x1f, + 0x2f, 0xbd, 0x58, 0xc7, 0x52, 0x9b, 0x8a, 0x62, 0x3b, 0xc1, 0x25, 0x85, 0xfa, 0x09, 0xbe, 0xd5, + 0xfc, 0xcf, 0x33, 0x9a, 0x4a, 0x62, 0xcd, 0xb3, 0x68, 0xa7, 0xe9, 0xd6, 0x71, 0x63, 0x70, 0xd7, + 0xf7, 0xba, 0x9d, 0x68, 0xc4, 0xb0, 0x79, 0x7e, 0x5c, 0x6a, 0x1f, 0xb0, 0x62, 0x9d, 0x77, 0x0a, + 0x35, 0xf9, 0x10, 0xa6, 0xd8, 0xea, 0x20, 0x7e, 0x06, 0x8b, 0x19, 0x5c, 0x55, 0x9e, 0x47, 0x67, + 0x49, 0x40, 0xfd, 0x88, 0x8d, 0xb6, 0xac, 0xa8, 0x14, 0xa4, 0x01, 0x8b, 0x5b, 0xbe, 0xd3, 0x0e, + 0xdc, 0xb0, 0xdc, 0xae, 0xfb, 0x47, 0xb8, 0x9a, 0x95, 0xdb, 0xce, 0x5e, 0x93, 0x36, 0xf0, 0x73, + 0x73, 0x2b, 0x57, 0x1e, 0x1f, 0x2f, 0xbd, 0x12, 0x72, 0x1c, 0x9b, 0x46, 0x48, 0x36, 0xe5, 0x58, + 0x0a, 0xe7, 0xbe, 0x9c, 0xd8, 0xea, 0x27, 0xbb, 0x15, 0x1d, 0xe0, 0x23, 0xd1, 0x2e, 0xf9, 0x7c, + 0x34, 0x1a, 0x4c, 0xcd, 0xa8, 0xcd, 0x54, 0x09, 0xcc, 0xff, 0xd3, 0x88, 0x95, 0x26, 0x79, 0x17, + 0x26, 0x85, 0x34, 0x2a, 0x72, 0x71, 0x91, 0xa9, 0x5f, 0x29, 0xba, 0x89, 0x91, 0x55, 0xd1, 0xd9, + 0x6e, 0xa0, 0x50, 0x5c, 0x53, 0x64, 0x03, 0x77, 0x03, 0x4e, 0xbd, 0x99, 0xa4, 0x92, 0x68, 0x4c, + 0x08, 0xb6, 0xd6, 0x6a, 0x7a, 0xaf, 0xa0, 0x10, 0x84, 0xcd, 0x20, 0xa5, 0x1b, 0x14, 0xe4, 0x27, + 0xff, 0xf0, 0xff, 0xce, 0x48, 0xd3, 0xcd, 0x64, 0x05, 0xa6, 0x77, 0x3d, 0xff, 0x3e, 0x8e, 0xaf, + 0xd2, 0x09, 0x38, 0xf2, 0x0f, 0x65, 0x41, 0xf2, 0x83, 0x74, 0x12, 0xb5, 0x6d, 0x4a, 0x6f, 0xe8, + 0x6d, 0x4b, 0x70, 0xd0, 0x08, 0xd8, 0x38, 0x44, 0x1c, 0xa3, 0xd9, 0x81, 0xe3, 0x10, 0x37, 0x41, + 0x13, 0x61, 0x15, 0xdd, 0xfc, 0xcb, 0x06, 0x4c, 0x2a, 0x86, 0x33, 0x53, 0x47, 0x55, 0xdf, 0xfb, + 0x36, 0xad, 0x87, 0xba, 0x26, 0xec, 0x70, 0x60, 0x42, 0x1d, 0x45, 0xa8, 0x09, 0x0d, 0x98, 0x39, + 0x85, 0x06, 0x34, 0xff, 0x77, 0x43, 0x18, 0x55, 0x43, 0xeb, 0x18, 0x5d, 0x1f, 0x64, 0x4e, 0xa3, + 0xfb, 0x3e, 0x84, 0x51, 0x8b, 0x36, 0xdc, 0x40, 0x18, 0x44, 0x73, 0xaa, 0x01, 0x87, 0x05, 0xb1, + 0x0d, 0xe9, 0xb3, 0x9f, 0xaa, 0x0d, 0x89, 0xe5, 0x6c, 0xe5, 0xab, 0x04, 0x77, 0x9a, 0xf4, 0x91, + 0xcb, 0x25, 0x41, 0xe8, 0x50, 0x5c, 0xf9, 0xdc, 0xc0, 0xde, 0x67, 0x25, 0x62, 0x09, 0x56, 0x47, + 0x5d, 0xa3, 0x31, 0x3f, 0x01, 0x88, 0xab, 0x24, 0xf7, 0x20, 0x2f, 0xe6, 0x86, 0xdb, 0x3e, 0xa8, + 0x7a, 0x4d, 0xb7, 0x2e, 0x2c, 0xf3, 0x95, 0xa5, 0xc7, 0xc7, 0x4b, 0xcf, 0xd5, 0xa3, 0x32, 0xbb, + 0x83, 0x85, 0x0a, 0xdf, 0x1e, 0x42, 0xf3, 0xdf, 0xcb, 0xb0, 0x5d, 0x06, 0xeb, 0xa3, 0x7b, 0xf4, + 0x28, 0x74, 0xf6, 0xee, 0xb8, 0x4d, 0xaa, 0x2e, 0x49, 0xf7, 0x11, 0x6a, 0xef, 0xbb, 0x9a, 0x8b, + 0x5a, 0x41, 0x26, 0xb7, 0x20, 0x77, 0xcf, 0xdf, 0x7b, 0x0b, 0x09, 0x33, 0xd1, 0xbe, 0x71, 0xfe, + 0xbe, 0xbf, 0xf7, 0x56, 0x92, 0x2c, 0x42, 0x24, 0x26, 0x8c, 0x95, 0xbc, 0x96, 0xe3, 0xca, 0xbd, + 0x3a, 0xb0, 0x0d, 0x6f, 0x03, 0x21, 0x96, 0x28, 0x61, 0x3b, 0xd5, 0x5a, 0x75, 0x43, 0x4c, 0x3f, + 0xdc, 0xa9, 0x06, 0x9d, 0xb6, 0xc5, 0x60, 0xac, 0xce, 0xb5, 0x52, 0xa1, 0x8a, 0x3b, 0x87, 0xd1, + 0xb8, 0xce, 0x66, 0xc3, 0xe9, 0x24, 0xf7, 0x0e, 0x11, 0x22, 0x79, 0x0f, 0x26, 0xef, 0x95, 0x8a, + 0xab, 0x5e, 0xc0, 0xa7, 0xce, 0x58, 0x3c, 0x75, 0xee, 0x37, 0xea, 0x36, 0xfa, 0xb1, 0x92, 0x3a, + 0x48, 0xc1, 0x37, 0x7f, 0xc7, 0x80, 0x49, 0x65, 0xeb, 0x46, 0xbe, 0x28, 0x0e, 0x51, 0x0c, 0x3c, + 0x18, 0x3c, 0xd7, 0xbb, 0xb9, 0x63, 0xa5, 0xdc, 0xaf, 0xd1, 0xf2, 0x1a, 0x54, 0x1c, 0xa9, 0xc4, + 0x3b, 0x9e, 0xcc, 0x30, 0x3b, 0x9e, 0xb7, 0x01, 0xb8, 0x0c, 0x60, 0x93, 0x95, 0xb5, 0x4c, 0x39, + 0x48, 0x55, 0xc7, 0x25, 0x46, 0x36, 0x2d, 0x98, 0x52, 0x77, 0x3b, 0x4c, 0xfd, 0x08, 0xc7, 0xb0, + 0xf0, 0x92, 0x28, 0xea, 0x47, 0x70, 0xeb, 0x75, 0x54, 0xeb, 0x24, 0xe6, 0x5f, 0x31, 0xe2, 0x89, + 0xbb, 0x73, 0x93, 0xbc, 0x03, 0x63, 0xdc, 0xa5, 0x2e, 0x4e, 0x1e, 0xce, 0x46, 0x76, 0xa7, 0xea, + 0x6f, 0xe7, 0xee, 0x90, 0x3f, 0xe6, 0x47, 0x6b, 0x67, 0x2c, 0x41, 0x12, 0x79, 0x52, 0xf4, 0x0d, + 0xa4, 0xe4, 0x8e, 0x3e, 0x83, 0x9b, 0x69, 0x9e, 0x14, 0xf3, 0xdf, 0xce, 0xc2, 0x8c, 0x8e, 0xa6, + 0xfa, 0xdd, 0x8d, 0xa1, 0xfc, 0xee, 0x1f, 0x42, 0x8e, 0x7d, 0x99, 0x5b, 0xa7, 0x72, 0x01, 0x7e, + 0x05, 0xfd, 0x4b, 0x02, 0x26, 0x48, 0xc2, 0xce, 0xd1, 0x8f, 0x8e, 0x97, 0xa0, 0x76, 0x14, 0x84, + 0xb4, 0xc5, 0xcc, 0x50, 0x2b, 0xa2, 0x22, 0xcb, 0x8a, 0xdb, 0x34, 0x1b, 0xaf, 0x49, 0xd2, 0x6d, + 0xaa, 0x4a, 0x60, 0xe4, 0x40, 0x7d, 0x13, 0xc6, 0x98, 0xa9, 0x14, 0xed, 0x92, 0xb0, 0x95, 0xcc, + 0x8a, 0x4a, 0x9c, 0x06, 0x73, 0x24, 0xb2, 0x0b, 0xb9, 0x35, 0x27, 0x08, 0x6b, 0x94, 0xb6, 0x87, + 0x38, 0x51, 0x5b, 0x12, 0x5d, 0x35, 0x8f, 0xc7, 0x55, 0x01, 0xa5, 0xed, 0xc4, 0x91, 0x48, 0xc4, + 0x8c, 0x7c, 0x13, 0xa0, 0xe8, 0xb5, 0x43, 0xdf, 0x6b, 0xae, 0x79, 0x07, 0x8b, 0x63, 0xe8, 0xb4, + 0x79, 0x31, 0x31, 0x00, 0x31, 0x02, 0x77, 0xd5, 0x44, 0x7b, 0xb0, 0x3a, 0x2f, 0xb0, 0x9b, 0xde, + 0x81, 0x2a, 0x79, 0x31, 0xbe, 0xf9, 0xa3, 0x0c, 0x9c, 0xef, 0xc3, 0x86, 0x29, 0x6d, 0x5c, 0x54, + 0x15, 0xa5, 0x9d, 0x58, 0x4b, 0xf9, 0xc1, 0x39, 0x3f, 0x62, 0x65, 0xb2, 0x31, 0x92, 0x7e, 0xc4, + 0x4a, 0x3e, 0x82, 0x11, 0xf6, 0xf1, 0x43, 0x1c, 0x15, 0xc9, 0x0d, 0xd5, 0x4c, 0xe8, 0xaa, 0x03, + 0x83, 0x9d, 0x82, 0x3c, 0xc8, 0x17, 0x21, 0xbb, 0xb5, 0xb5, 0x86, 0xa3, 0x92, 0x45, 0xc3, 0x6e, + 0x3a, 0x0c, 0x9b, 0xda, 0xa1, 0xe2, 0x34, 0xa3, 0xbd, 0x1e, 0x9d, 0x2c, 0x32, 0x74, 0xf2, 0xd5, + 0xc4, 0x31, 0xf5, 0xb5, 0xc1, 0x5d, 0x38, 0xfc, 0xa9, 0xf5, 0x93, 0x1c, 0x1f, 0xfb, 0xf1, 0xe4, + 0xb8, 0xe3, 0x36, 0x43, 0xea, 0x93, 0x8b, 0x5c, 0xd6, 0xe3, 0xdd, 0x8a, 0x15, 0xfd, 0x26, 0x8b, + 0xf1, 0xc4, 0xe1, 0x9c, 0xa2, 0x19, 0x72, 0x4d, 0x99, 0x21, 0x59, 0x9c, 0x21, 0x33, 0xfd, 0xe6, + 0x82, 0xf9, 0xd3, 0x19, 0x59, 0xc5, 0xce, 0xf2, 0x33, 0xea, 0xd7, 0x7d, 0x4b, 0xf3, 0xeb, 0xce, + 0x47, 0xfe, 0x82, 0xe8, 0x94, 0x62, 0xf9, 0x84, 0xc3, 0xa6, 0xb7, 0x61, 0x4a, 0x76, 0x01, 0xba, + 0xc7, 0xaf, 0xc2, 0xb8, 0x3c, 0x2e, 0xe5, 0xce, 0xf1, 0x59, 0x8d, 0xe7, 0xce, 0xb2, 0x25, 0xcb, + 0xcd, 0xbf, 0x3d, 0x2a, 0x69, 0x79, 0x4d, 0xac, 0x0b, 0x0b, 0x8d, 0x86, 0xaf, 0x76, 0xa1, 0xd3, + 0x68, 0xf8, 0x16, 0x42, 0xd9, 0x9a, 0x50, 0xed, 0xee, 0x35, 0xdd, 0x3a, 0xe2, 0x28, 0xf6, 0x4c, + 0x07, 0xa1, 0x36, 0x43, 0x55, 0x67, 0x66, 0x8c, 0xac, 0x9d, 0xf5, 0x64, 0x07, 0x9e, 0xf5, 0xfc, + 0x18, 0x4c, 0x14, 0x5b, 0x0d, 0xcd, 0xad, 0x6b, 0xa6, 0x74, 0xca, 0xf5, 0x08, 0x89, 0x8b, 0xf5, + 0xf3, 0xa2, 0x8f, 0x16, 0xea, 0xad, 0x46, 0xaf, 0x33, 0x37, 0x66, 0xa9, 0x1d, 0xd6, 0x8c, 0x3e, + 0xc9, 0x61, 0xcd, 0x6d, 0x98, 0xd8, 0x0e, 0xe8, 0x56, 0xb7, 0xdd, 0xa6, 0x4d, 0x5c, 0xd3, 0x73, + 0xdc, 0x04, 0xed, 0x06, 0xd4, 0x0e, 0x11, 0xaa, 0x36, 0x20, 0x42, 0x55, 0xc5, 0x6a, 0x7c, 0x80, + 0x58, 0x7d, 0x11, 0x46, 0x0a, 0x9d, 0x8e, 0x3c, 0xc5, 0x8a, 0x7c, 0x8e, 0x9d, 0x0e, 0xce, 0xe0, + 0x19, 0xa7, 0xd3, 0xd1, 0xcf, 0xa4, 0x10, 0x1b, 0xcf, 0x6e, 0x28, 0xf5, 0x71, 0x80, 0x26, 0x63, + 0xfb, 0xa4, 0x43, 0xa9, 0x9f, 0x1c, 0x9e, 0x08, 0x51, 0x3b, 0xf0, 0x99, 0x1a, 0xf6, 0xc0, 0xa7, + 0x06, 0x33, 0xfa, 0x10, 0x3c, 0x05, 0x5f, 0xed, 0x47, 0x23, 0xb9, 0x5c, 0x7e, 0xe2, 0xa3, 0x91, + 0x1c, 0xe4, 0x27, 0xcd, 0xef, 0x66, 0x60, 0xb2, 0xd0, 0xe9, 0x3c, 0xe3, 0x67, 0xca, 0x5f, 0xd6, + 0xa6, 0xf7, 0xb9, 0x78, 0x18, 0x4f, 0x71, 0x9c, 0xfc, 0xbb, 0x19, 0x98, 0x4d, 0x50, 0xa8, 0xad, + 0x37, 0x86, 0x3c, 0x63, 0xcd, 0x0c, 0x79, 0xc6, 0x9a, 0xed, 0x7f, 0xc6, 0xaa, 0x4e, 0x9e, 0x91, + 0x27, 0x99, 0x3c, 0xaf, 0x41, 0xb6, 0xd0, 0xe9, 0x24, 0xdd, 0xd3, 0x9d, 0xce, 0xce, 0x2d, 0x6e, + 0x70, 0x3b, 0x9d, 0x8e, 0xc5, 0x30, 0x34, 0xd9, 0x1c, 0x1b, 0x52, 0x36, 0xcd, 0x37, 0x61, 0x02, + 0x79, 0xa1, 0x3e, 0xbc, 0x24, 0x26, 0x12, 0x57, 0x86, 0x5a, 0x5d, 0x7c, 0xd2, 0x98, 0xff, 0x37, + 0xdb, 0xd9, 0xb1, 0xdf, 0xcf, 0xa8, 0x8c, 0x2d, 0x6b, 0x32, 0x96, 0x57, 0x64, 0x6c, 0x18, 0xe9, + 0xfa, 0xa5, 0x11, 0xec, 0x2d, 0x21, 0x57, 0xe2, 0x94, 0xce, 0x48, 0x39, 0xa5, 0x7b, 0x02, 0xf5, + 0x7f, 0x3f, 0x79, 0x5e, 0x97, 0xc5, 0xc1, 0x78, 0x39, 0xd9, 0xd4, 0xa7, 0x72, 0x54, 0xb7, 0x0a, + 0xa4, 0xd2, 0x0e, 0x68, 0xbd, 0xeb, 0xd3, 0xda, 0x7d, 0xb7, 0xb3, 0x43, 0x7d, 0x77, 0xff, 0x48, + 0x6c, 0x7f, 0x51, 0x43, 0xbb, 0xa2, 0xd4, 0x0e, 0xee, 0xbb, 0x1d, 0xb6, 0xf7, 0x70, 0xf7, 0x8f, + 0xac, 0x14, 0x1a, 0xf2, 0x01, 0x8c, 0x5b, 0xf4, 0xa1, 0xef, 0x86, 0xf2, 0x8c, 0x60, 0x26, 0xda, + 0x67, 0x20, 0x94, 0xdb, 0xd1, 0x3e, 0xff, 0xa1, 0x8e, 0xbf, 0x28, 0x27, 0xcb, 0xfc, 0xdc, 0x88, + 0x9f, 0x05, 0x4c, 0xc7, 0x5f, 0x5b, 0xd8, 0xad, 0xad, 0xcc, 0xf5, 0x39, 0x34, 0xbc, 0x0a, 0xa3, + 0xe8, 0xe6, 0x10, 0xab, 0x03, 0x86, 0xd3, 0xd5, 0x19, 0x40, 0xdd, 0xe3, 0x23, 0xc6, 0x67, 0x77, + 0x66, 0xf6, 0xcb, 0xa3, 0x38, 0x3f, 0x4f, 0x88, 0xc7, 0x1c, 0x70, 0xa2, 0xab, 0xcb, 0x4a, 0xf6, + 0x34, 0xb2, 0xb2, 0x03, 0x53, 0x35, 0xa6, 0x25, 0xf4, 0xa3, 0xdd, 0xe7, 0xe3, 0xce, 0xbb, 0xae, + 0x16, 0x0f, 0x32, 0x6a, 0x35, 0x3e, 0xc4, 0x4e, 0xca, 0x20, 0xb7, 0x9d, 0x5f, 0x50, 0x18, 0xa7, + 0x48, 0x5f, 0xa4, 0xce, 0xea, 0xbc, 0xb3, 0x4e, 0x2d, 0x77, 0x63, 0x4f, 0x26, 0x77, 0xe3, 0x9f, + 0x4a, 0xee, 0x12, 0x41, 0xb0, 0xb9, 0xd3, 0x04, 0xc1, 0x5e, 0xfc, 0x00, 0xe6, 0x7a, 0x7a, 0xf8, + 0x34, 0x3b, 0x81, 0xcf, 0x4e, 0x2c, 0x7f, 0x0a, 0x94, 0x99, 0x95, 0xb3, 0x68, 0xc3, 0xf5, 0x69, + 0x3d, 0x44, 0xcd, 0x2e, 0x94, 0xb1, 0x2f, 0x60, 0x89, 0x33, 0x46, 0x84, 0x91, 0xf7, 0x61, 0x9c, + 0xbb, 0x00, 0xf8, 0xd6, 0x3b, 0x9e, 0x91, 0xc2, 0x5d, 0xc0, 0x63, 0xa4, 0x39, 0x86, 0xda, 0xab, + 0x82, 0xc8, 0xbc, 0x2b, 0xbd, 0x0e, 0x27, 0xcc, 0x8b, 0x25, 0x18, 0xdd, 0x89, 0x7b, 0x06, 0x83, + 0xaf, 0xf8, 0x47, 0x58, 0x1c, 0x6e, 0xfe, 0x9c, 0x01, 0x33, 0xfa, 0x57, 0x92, 0xeb, 0x30, 0x26, + 0x22, 0x4d, 0x0d, 0xdc, 0x0b, 0xb2, 0xaf, 0x19, 0xe3, 0x31, 0xa6, 0x5a, 0x64, 0xa9, 0xc0, 0x62, + 0x2b, 0x8b, 0xe0, 0x20, 0xdc, 0x08, 0xb8, 0xb2, 0x08, 0x21, 0xb5, 0x64, 0x19, 0x31, 0x61, 0xcc, + 0xa2, 0x41, 0xb7, 0x19, 0xaa, 0xee, 0x2e, 0x1f, 0x21, 0x96, 0x28, 0x31, 0x8b, 0x30, 0xc6, 0x55, + 0x52, 0xe2, 0xa0, 0xcd, 0x38, 0xc5, 0x41, 0x9b, 0x79, 0x6c, 0x00, 0xd4, 0x6a, 0xab, 0xf7, 0xe8, + 0x51, 0xd5, 0x71, 0x7d, 0xf4, 0xcf, 0xe2, 0x94, 0xbe, 0x27, 0x86, 0x7c, 0x4a, 0xf8, 0x67, 0xf9, + 0xf4, 0xbf, 0x4f, 0x8f, 0x34, 0xff, 0xac, 0x44, 0x45, 0xbd, 0xe1, 0xbb, 0x0f, 0x9c, 0x90, 0x32, + 0xc2, 0x0c, 0x12, 0x72, 0xbd, 0xc1, 0xa1, 0x09, 0x4a, 0x05, 0x99, 0x7c, 0x13, 0x66, 0xe2, 0x5f, + 0xb8, 0xd5, 0xcf, 0xa2, 0x83, 0x4c, 0x8a, 0x95, 0x5e, 0xb8, 0xf2, 0xe2, 0xe3, 0xe3, 0xa5, 0x8b, + 0x0a, 0xd7, 0xa4, 0x67, 0x3d, 0xc1, 0xcc, 0xfc, 0x2d, 0x03, 0x1d, 0xfb, 0xf2, 0x03, 0x2f, 0xc3, + 0x48, 0x14, 0x3e, 0x30, 0xc5, 0xdd, 0x09, 0x09, 0x4f, 0x1a, 0x96, 0x93, 0x97, 0x21, 0x1b, 0x7f, + 0x09, 0xaa, 0x7c, 0xfd, 0x0b, 0x58, 0x29, 0xb9, 0x0b, 0xe3, 0x43, 0xb5, 0x19, 0x45, 0x3c, 0xa5, + 0xad, 0x92, 0x1a, 0x47, 0xe1, 0xa3, 0xdd, 0xad, 0xcf, 0xef, 0x28, 0x7c, 0x2f, 0x03, 0xb3, 0xac, + 0x5f, 0x0b, 0xdd, 0xf0, 0xd0, 0xf3, 0xdd, 0xf0, 0xe8, 0x99, 0xdd, 0xf7, 0xbf, 0xab, 0x19, 0x6d, + 0x17, 0xa5, 0xee, 0x53, 0xbf, 0x6d, 0xa8, 0xed, 0xff, 0x1f, 0x8d, 0xc2, 0x7c, 0x0a, 0x15, 0x79, + 0x43, 0xf3, 0x77, 0x2d, 0xca, 0xeb, 0x21, 0x3f, 0x3a, 0x5e, 0x9a, 0x92, 0xe8, 0x5b, 0xf1, 0x75, + 0x91, 0x65, 0xfd, 0x94, 0x8c, 0xf7, 0x14, 0xba, 0xbf, 0xd4, 0x53, 0x32, 0xfd, 0x6c, 0xec, 0x2a, + 0x8c, 0x5a, 0x5e, 0x93, 0xf2, 0x85, 0x54, 0x18, 0x2a, 0x3e, 0x03, 0x68, 0x87, 0x11, 0x0c, 0x40, + 0x56, 0x61, 0x9c, 0xfd, 0xb1, 0xee, 0x74, 0x84, 0xd3, 0x8f, 0x44, 0xdb, 0x06, 0x84, 0x76, 0xdc, + 0xf6, 0x81, 0xba, 0x73, 0x68, 0x52, 0xbb, 0xe5, 0x74, 0xb4, 0x95, 0x8d, 0x23, 0x6a, 0x3b, 0x90, + 0x5c, 0xff, 0x1d, 0x88, 0x71, 0xe2, 0x0e, 0xa4, 0x01, 0x50, 0x73, 0x0f, 0xda, 0x6e, 0xfb, 0xa0, + 0xd0, 0x3c, 0x10, 0x97, 0x6c, 0xae, 0xf6, 0x1f, 0x85, 0xeb, 0x31, 0x32, 0x0a, 0x2e, 0xf7, 0x85, + 0x73, 0x98, 0xed, 0x34, 0x35, 0x8f, 0x64, 0x8c, 0x4a, 0x36, 0x00, 0x0a, 0xf5, 0xd0, 0x7d, 0xc0, + 0x04, 0x38, 0x10, 0x81, 0x9d, 0xb2, 0xc1, 0xc5, 0xc2, 0x3d, 0x7a, 0x54, 0xa3, 0x61, 0xec, 0xe1, + 0x74, 0x10, 0x95, 0xcd, 0x03, 0xb5, 0x0f, 0x15, 0x0e, 0xa4, 0x03, 0x67, 0x0b, 0x8d, 0x86, 0xcb, + 0xbe, 0xc0, 0x69, 0x6e, 0xf9, 0x6c, 0x30, 0x1a, 0xc8, 0x7a, 0x2a, 0x9d, 0xf5, 0x55, 0xc1, 0xfa, + 0x25, 0x27, 0xa2, 0xb2, 0x43, 0x4e, 0x96, 0xac, 0x26, 0x9d, 0xb1, 0xb9, 0x09, 0x33, 0xfa, 0xa7, + 0xeb, 0x57, 0x83, 0xa6, 0x20, 0x67, 0xd5, 0x0a, 0x76, 0x6d, 0xb5, 0x70, 0x33, 0x6f, 0x90, 0x3c, + 0x4c, 0x89, 0x5f, 0xcb, 0xf6, 0xf2, 0x5b, 0xb7, 0xf3, 0x19, 0x0d, 0xf2, 0xd6, 0xcd, 0xe5, 0x7c, + 0xf6, 0xa3, 0x91, 0x5c, 0x36, 0x3f, 0xf2, 0xd1, 0x48, 0x6e, 0x24, 0x3f, 0xfa, 0xd1, 0x48, 0x6e, + 0x3c, 0x9f, 0x13, 0xfb, 0xfd, 0xdf, 0x33, 0x20, 0x27, 0xdb, 0x4d, 0x6e, 0x43, 0xb6, 0x56, 0x5b, + 0x4d, 0x44, 0x77, 0xc6, 0xeb, 0x0b, 0xd7, 0xa4, 0x41, 0x70, 0xa8, 0x6a, 0xd2, 0x5a, 0x6d, 0x95, + 0xd1, 0x6d, 0xad, 0xd5, 0xc4, 0xf2, 0x2e, 0xe9, 0x62, 0xb5, 0xcd, 0xe9, 0x52, 0x42, 0xde, 0x6e, + 0x43, 0xf6, 0xa3, 0xdd, 0x2d, 0xb1, 0x2d, 0x91, 0x74, 0xb1, 0x26, 0xe5, 0x74, 0xdf, 0x7e, 0xa8, + 0xea, 0x77, 0x46, 0x60, 0x5a, 0x30, 0xa9, 0x88, 0x30, 0x5f, 0x6e, 0x5b, 0x5e, 0x74, 0x6d, 0x46, + 0x2c, 0xb7, 0x0c, 0x62, 0x89, 0x12, 0x66, 0x1d, 0xac, 0x79, 0x75, 0xa7, 0x29, 0xd6, 0x6d, 0xb4, + 0x0e, 0x9a, 0x0c, 0x60, 0x71, 0xb8, 0xf9, 0x87, 0x06, 0xe4, 0xab, 0xbe, 0xf7, 0xc0, 0x65, 0x6a, + 0x66, 0xcb, 0xbb, 0x4f, 0xdb, 0x3b, 0x37, 0xc9, 0x9b, 0x72, 0xb2, 0x19, 0xd1, 0x26, 0x78, 0x14, + 0x27, 0x5b, 0xc2, 0x37, 0x2a, 0x26, 0x9c, 0x72, 0xfb, 0x28, 0x33, 0xfc, 0x8d, 0x86, 0x13, 0x6e, + 0x1f, 0x2d, 0xc1, 0x28, 0x36, 0x47, 0x09, 0x2a, 0x1f, 0x0d, 0x19, 0xc0, 0xe2, 0x70, 0x75, 0x53, + 0x99, 0xe9, 0xf9, 0x86, 0xe5, 0xcf, 0xd5, 0xad, 0x00, 0xfd, 0xe3, 0x86, 0xd2, 0xd4, 0x9f, 0xc0, + 0x42, 0xb2, 0x4b, 0xd0, 0x41, 0x51, 0x80, 0x59, 0x1d, 0x2e, 0x7d, 0x15, 0xe7, 0x53, 0xeb, 0xda, + 0x59, 0xb6, 0x92, 0xf8, 0xe6, 0x9f, 0x1a, 0x30, 0x81, 0x7f, 0x5a, 0xdd, 0x26, 0x9e, 0x3b, 0x17, + 0x76, 0x6b, 0x22, 0xdc, 0x4d, 0x35, 0xe3, 0x9c, 0x87, 0x81, 0x2d, 0x62, 0xe3, 0x34, 0xfd, 0x12, + 0x21, 0x0b, 0x52, 0x1e, 0xdc, 0x27, 0x0f, 0xa8, 0x22, 0x52, 0x1e, 0x05, 0x18, 0x24, 0x48, 0x05, + 0x32, 0x86, 0x4a, 0xec, 0xd6, 0x98, 0xf8, 0xa9, 0xc7, 0x52, 0x48, 0xe7, 0x35, 0xf5, 0x50, 0x09, + 0x8e, 0x86, 0xa7, 0x52, 0xbb, 0xb5, 0x82, 0xb5, 0xa1, 0x9d, 0x4a, 0xb1, 0x36, 0x6a, 0xd1, 0x58, + 0x02, 0xc9, 0xfc, 0x5f, 0xc6, 0x93, 0x1d, 0x28, 0x96, 0xba, 0x53, 0xce, 0x8d, 0x77, 0x60, 0xb4, + 0xd0, 0x6c, 0x7a, 0x0f, 0x85, 0x96, 0x90, 0xfe, 0x92, 0xa8, 0xff, 0xf8, 0x4a, 0xe6, 0x30, 0x14, + 0x2d, 0xb0, 0x96, 0x01, 0x48, 0x11, 0x26, 0x0a, 0xbb, 0xb5, 0x4a, 0xa5, 0xb4, 0xb5, 0xb5, 0x26, + 0xae, 0x82, 0xbe, 0x2a, 0xfb, 0xc7, 0x75, 0x1b, 0x76, 0xf2, 0xf8, 0x26, 0xb6, 0xdc, 0x63, 0x3a, + 0xf2, 0x1e, 0xc0, 0x47, 0x9e, 0xdb, 0x5e, 0xa7, 0xe1, 0xa1, 0xd7, 0x10, 0x1f, 0xff, 0xc2, 0xe3, + 0xe3, 0xa5, 0xc9, 0x6f, 0x7b, 0x6e, 0xdb, 0x6e, 0x21, 0x98, 0xb5, 0x3d, 0x46, 0xb2, 0x94, 0xbf, + 0x59, 0x4f, 0xaf, 0x78, 0xfc, 0x2c, 0x79, 0x34, 0xee, 0xe9, 0x3d, 0xaf, 0xe7, 0x18, 0x59, 0xa2, + 0x91, 0x16, 0xcc, 0xd6, 0xba, 0x07, 0x07, 0x94, 0x69, 0x75, 0xb1, 0xfb, 0x1d, 0x13, 0x7b, 0xae, + 0xe8, 0x22, 0x2d, 0xdf, 0x89, 0xb0, 0xfd, 0x49, 0xb0, 0xf2, 0x06, 0x13, 0xe4, 0x1f, 0x1e, 0x2f, + 0x89, 0x63, 0x21, 0x66, 0xa4, 0x05, 0x92, 0xbe, 0xd7, 0xff, 0x92, 0xe4, 0x4d, 0x36, 0x61, 0xec, + 0xae, 0x1b, 0xae, 0x76, 0xf7, 0xc4, 0xf6, 0xf5, 0xa5, 0x01, 0x93, 0x86, 0x23, 0xf2, 0x1d, 0xfc, + 0x81, 0x1b, 0x1e, 0x76, 0xd5, 0xf0, 0x45, 0xc1, 0x86, 0xec, 0x42, 0xae, 0xe8, 0xfa, 0xf5, 0x26, + 0x2d, 0x56, 0xc4, 0xaa, 0xff, 0xf2, 0x00, 0x96, 0x12, 0x95, 0xf7, 0x4b, 0x1d, 0x7f, 0xd5, 0x5d, + 0xd5, 0x0a, 0x90, 0x18, 0xe4, 0xdf, 0x32, 0xe0, 0xb9, 0xa8, 0xf5, 0x85, 0x03, 0xda, 0x0e, 0xd7, + 0x9d, 0xb0, 0x7e, 0x48, 0xfd, 0xe8, 0x0e, 0xc9, 0x80, 0x5e, 0xfa, 0x4a, 0x4f, 0x2f, 0x5d, 0x89, + 0x7b, 0xc9, 0x61, 0xcc, 0xec, 0x16, 0xe7, 0xd6, 0xdb, 0x67, 0x83, 0x6a, 0x25, 0x36, 0xc0, 0xbd, + 0xee, 0x1e, 0xf5, 0xdb, 0x34, 0xa4, 0x81, 0x08, 0xaa, 0x7e, 0x75, 0xc0, 0x07, 0xc7, 0xc8, 0x22, + 0xa4, 0x30, 0xfa, 0xad, 0x85, 0x4e, 0x44, 0x50, 0x72, 0x4f, 0xc6, 0x07, 0x73, 0x8b, 0xe4, 0xd2, + 0x00, 0xde, 0x3c, 0x66, 0x78, 0x7e, 0x40, 0xac, 0x39, 0x1f, 0xed, 0x35, 0x67, 0x4f, 0x18, 0x21, + 0x27, 0x8c, 0xf6, 0x9a, 0x13, 0x8f, 0x76, 0xd3, 0x49, 0x8e, 0xf6, 0x9a, 0xb3, 0x67, 0xfe, 0xf3, + 0x11, 0xb8, 0xd8, 0x5f, 0x54, 0xc8, 0xc7, 0x72, 0xfe, 0x72, 0x2d, 0x79, 0xf9, 0x44, 0xe1, 0xba, + 0x7e, 0xe2, 0xac, 0xfe, 0x2a, 0x2c, 0x94, 0xdb, 0x21, 0xf5, 0x3b, 0xbe, 0x2b, 0x6f, 0x08, 0xad, + 0x7a, 0x81, 0x0c, 0x95, 0x78, 0xe5, 0xf1, 0xf1, 0xd2, 0x25, 0x1a, 0x95, 0x8b, 0xa8, 0x19, 0x0c, + 0xdc, 0x50, 0x58, 0xa5, 0x72, 0xb8, 0xf8, 0x5b, 0x59, 0x18, 0x41, 0xa5, 0xfc, 0x32, 0x64, 0x6b, + 0xdd, 0x3d, 0xa1, 0x8d, 0xb9, 0xf9, 0xa2, 0x89, 0x3a, 0x2b, 0x25, 0x5f, 0x06, 0xb0, 0x68, 0xc7, + 0x0b, 0xdc, 0xd0, 0xf3, 0x8f, 0xd4, 0x30, 0x4b, 0x3f, 0x82, 0xea, 0x01, 0x43, 0x12, 0x4a, 0x56, + 0x61, 0x36, 0xfe, 0xb5, 0xf9, 0xb0, 0x4d, 0xa5, 0xd7, 0x0d, 0x77, 0x58, 0x31, 0xb9, 0xed, 0xb1, + 0x32, 0x75, 0xf2, 0x26, 0xc8, 0xc8, 0x32, 0xe4, 0x76, 0x3d, 0xff, 0xfe, 0x3e, 0xeb, 0xe1, 0x91, + 0x58, 0xbd, 0x3c, 0x14, 0x30, 0x75, 0x1a, 0x49, 0x3c, 0xf2, 0x0e, 0x4c, 0x96, 0xdb, 0x0f, 0x5c, + 0xdf, 0x6b, 0xb7, 0x68, 0x5b, 0x46, 0xc6, 0x70, 0xcf, 0x41, 0x0c, 0xd6, 0x02, 0xa7, 0x63, 0x30, + 0xdb, 0x47, 0x14, 0xea, 0xa1, 0xe7, 0x8b, 0xc0, 0x18, 0x3e, 0x4e, 0x0c, 0xa0, 0x8d, 0x13, 0x03, + 0xb0, 0x4e, 0xb4, 0xe8, 0xbe, 0xf0, 0x8c, 0x62, 0x27, 0xfa, 0x74, 0x5f, 0x8b, 0x0a, 0xa7, 0xfb, + 0x4c, 0x3d, 0x5a, 0x74, 0x1f, 0x37, 0x3f, 0xb9, 0xb8, 0xfd, 0x3e, 0xdd, 0xef, 0xd9, 0x36, 0x0b, + 0x34, 0xf3, 0xb7, 0xfb, 0x0b, 0xdc, 0x9a, 0x73, 0x5a, 0x81, 0x5b, 0x73, 0x86, 0x10, 0xb8, 0x37, + 0xa2, 0x30, 0xa4, 0x4c, 0x1c, 0x65, 0xcf, 0xc3, 0x90, 0xd4, 0x09, 0xc1, 0x71, 0x2e, 0xfe, 0x1b, + 0xa7, 0x12, 0x22, 0xd1, 0x49, 0x99, 0x61, 0x3b, 0x29, 0x3b, 0x54, 0x27, 0x91, 0x15, 0x98, 0x8e, + 0x6e, 0xd9, 0x57, 0x1d, 0x11, 0x94, 0x2b, 0xc2, 0x78, 0xa2, 0x9c, 0x09, 0x76, 0xc7, 0x09, 0x55, + 0xa3, 0x5c, 0x27, 0x21, 0xef, 0xc2, 0xa4, 0x88, 0xc5, 0x43, 0x0e, 0xa3, 0x71, 0x10, 0xa0, 0x0c, + 0xdc, 0x4b, 0xd0, 0xab, 0xe8, 0xa4, 0x0c, 0x33, 0x55, 0xb7, 0x43, 0x9b, 0x6e, 0x9b, 0xd6, 0x30, + 0xcc, 0x47, 0x48, 0x0c, 0xc6, 0xb4, 0x75, 0x44, 0x89, 0xcd, 0x23, 0x80, 0x34, 0x1f, 0x82, 0x46, + 0x94, 0x14, 0xd6, 0xf1, 0xd3, 0x08, 0xab, 0xf9, 0x7b, 0x19, 0x78, 0x7e, 0xd0, 0x9a, 0x43, 0x6a, + 0xba, 0xb0, 0x5c, 0x19, 0x62, 0x9d, 0x3a, 0x59, 0x5c, 0xca, 0x30, 0xb3, 0xe9, 0x1f, 0x38, 0x6d, + 0xf7, 0x3b, 0x68, 0x4b, 0x44, 0xd1, 0x84, 0xf8, 0xe5, 0x9e, 0x52, 0xa2, 0x3b, 0xe8, 0x12, 0x44, + 0x17, 0x1f, 0x08, 0x31, 0xfa, 0xb4, 0xd1, 0x93, 0xb7, 0x61, 0xa2, 0xe8, 0xb5, 0x43, 0xfa, 0x28, + 0x4c, 0x04, 0x81, 0x73, 0x60, 0x32, 0x08, 0x5c, 0xa2, 0x9a, 0x7f, 0x64, 0xc0, 0x8b, 0x83, 0xd7, + 0x2d, 0xb2, 0xad, 0x77, 0xdb, 0xb5, 0xa1, 0x56, 0xbb, 0x13, 0x3b, 0xee, 0xe2, 0xba, 0xf8, 0xe2, + 0x32, 0xcc, 0x88, 0xa0, 0x11, 0xdd, 0x2c, 0xc6, 0x0e, 0x14, 0xc1, 0x57, 0x29, 0xa6, 0x71, 0x82, + 0xc8, 0xfc, 0x0b, 0x03, 0x2e, 0xf4, 0x5d, 0x24, 0x49, 0x55, 0xff, 0x86, 0x57, 0x4f, 0x5a, 0x55, + 0x4f, 0x6e, 0xfe, 0xcf, 0x1b, 0xa2, 0xfd, 0xef, 0xc3, 0x54, 0xad, 0xbb, 0x97, 0xbc, 0x39, 0x8c, + 0x33, 0x27, 0x50, 0xe0, 0xda, 0xe1, 0x87, 0x02, 0x67, 0xdf, 0x2f, 0x63, 0xe3, 0x30, 0x9a, 0x5b, + 0xda, 0xf6, 0xf8, 0xfd, 0x51, 0x38, 0x2a, 0x46, 0xdb, 0xaa, 0x36, 0x43, 0x82, 0xc8, 0xfc, 0xf9, + 0x0c, 0xcc, 0xf0, 0xb3, 0x01, 0xbe, 0xf1, 0x78, 0x66, 0x37, 0x75, 0xef, 0x68, 0x9b, 0x3a, 0x79, + 0x6d, 0x45, 0xfd, 0xb4, 0xa1, 0xb6, 0x74, 0x87, 0x40, 0x7a, 0x69, 0x88, 0x25, 0x4f, 0xb0, 0x86, + 0xd9, 0xcd, 0xdd, 0x8c, 0x6f, 0x38, 0x61, 0x06, 0x9c, 0xba, 0x8d, 0x5b, 0xea, 0xc0, 0xd2, 0x78, + 0x98, 0x3f, 0x97, 0x81, 0x69, 0xc5, 0xf9, 0xf6, 0xcc, 0x76, 0xfc, 0x57, 0xb4, 0x8e, 0x5f, 0x94, + 0xfe, 0xaa, 0xf8, 0xcb, 0x86, 0xea, 0xf7, 0x2e, 0xcc, 0xf5, 0x90, 0x24, 0x7d, 0x98, 0xc6, 0x30, + 0x3e, 0xcc, 0x37, 0x7a, 0xaf, 0xb5, 0xf0, 0x44, 0x23, 0xd1, 0xb5, 0x16, 0xf5, 0x1e, 0xcd, 0xf7, + 0x32, 0xb0, 0x20, 0x7e, 0x15, 0xba, 0x0d, 0x37, 0x2c, 0x7a, 0xed, 0x7d, 0xf7, 0xe0, 0x99, 0x1d, + 0x8b, 0x82, 0x36, 0x16, 0x4b, 0xfa, 0x58, 0x28, 0x1f, 0xd8, 0x7f, 0x48, 0xcc, 0xbf, 0x06, 0xb0, + 0xd8, 0x8f, 0x60, 0xe8, 0x90, 0xcb, 0xf8, 0xca, 0x61, 0x66, 0x88, 0x2b, 0x87, 0x6b, 0x90, 0xc7, + 0xaa, 0x6a, 0x34, 0x60, 0x9d, 0x10, 0xc4, 0x59, 0x0e, 0x2e, 0x3d, 0x3e, 0x5e, 0x7a, 0xde, 0x61, + 0x65, 0x76, 0x20, 0x0a, 0xed, 0xae, 0xaf, 0x6e, 0xfc, 0x7a, 0x28, 0xc9, 0x6f, 0x19, 0x30, 0x83, + 0xc0, 0xf2, 0x03, 0xda, 0x0e, 0x91, 0xd9, 0x88, 0x08, 0xd5, 0x89, 0xf6, 0x7c, 0xb5, 0xd0, 0x77, + 0xdb, 0x07, 0x62, 0xd3, 0xb7, 0x27, 0x36, 0x7d, 0xef, 0xf2, 0xcd, 0xea, 0xf5, 0xba, 0xd7, 0xba, + 0x71, 0xe0, 0x3b, 0x0f, 0x5c, 0xee, 0x57, 0x76, 0x9a, 0x37, 0xe2, 0x24, 0x57, 0x1d, 0x37, 0x91, + 0xb6, 0x4a, 0xb0, 0xc2, 0x0d, 0x35, 0x6f, 0x28, 0xc5, 0x6a, 0x13, 0xcd, 0x4c, 0xb4, 0x88, 0x7c, + 0x0d, 0xce, 0xf3, 0x3b, 0x22, 0x6c, 0x49, 0x75, 0xdb, 0x5d, 0xaf, 0x1b, 0xac, 0x38, 0xf5, 0xfb, + 0x4c, 0x8d, 0xf3, 0xe3, 0x65, 0xfc, 0xf2, 0x7a, 0x54, 0x68, 0xef, 0xf1, 0x52, 0x85, 0x65, 0x3f, + 0x06, 0x64, 0x15, 0xe6, 0x78, 0x51, 0xa1, 0x1b, 0x7a, 0xb5, 0xba, 0xd3, 0x74, 0xdb, 0x07, 0x68, + 0x13, 0xe5, 0xf8, 0xf2, 0xe2, 0x74, 0x43, 0xcf, 0x0e, 0x38, 0x5c, 0xe1, 0xd7, 0x4b, 0x44, 0x2a, + 0x6c, 0x0b, 0xe2, 0x34, 0xd6, 0x9d, 0x47, 0x45, 0xa7, 0xe3, 0xd4, 0xdd, 0x90, 0x5f, 0x34, 0xcc, + 0xf2, 0xdb, 0x01, 0x3e, 0x75, 0x1a, 0x76, 0xcb, 0x79, 0x64, 0xd7, 0x45, 0xa1, 0xbe, 0x07, 0xd1, + 0xe8, 0x22, 0x56, 0x6e, 0x3b, 0x62, 0x35, 0x91, 0x64, 0xe5, 0xb6, 0xfb, 0xb3, 0x8a, 0xe9, 0x24, + 0xab, 0x2d, 0xc7, 0x3f, 0xa0, 0x21, 0x3f, 0x96, 0x65, 0x1b, 0x6a, 0x43, 0x61, 0x15, 0x62, 0x99, + 0x8d, 0x47, 0xb4, 0x49, 0x56, 0x0a, 0x1d, 0x93, 0xbc, 0x5d, 0xdf, 0x0d, 0xa9, 0xfa, 0x85, 0x93, + 0xd8, 0x2c, 0xec, 0x7f, 0x3c, 0x98, 0xee, 0xf7, 0x89, 0x3d, 0x94, 0x31, 0x37, 0xe5, 0x23, 0xa7, + 0x7a, 0xb8, 0xa5, 0x7f, 0x65, 0x0f, 0x65, 0xc4, 0x4d, 0xfd, 0xce, 0x69, 0xfc, 0x4e, 0x85, 0x5b, + 0x9f, 0x0f, 0xed, 0xa1, 0x24, 0x1b, 0xac, 0xd3, 0x42, 0xda, 0x66, 0x12, 0x2d, 0x8e, 0xa5, 0x67, + 0xb0, 0x69, 0xaf, 0x88, 0xb3, 0x95, 0xbc, 0x2f, 0x8b, 0xed, 0x94, 0x43, 0xea, 0x24, 0x31, 0xf9, + 0x49, 0x98, 0xdd, 0x0e, 0xe8, 0x9d, 0x4a, 0xb5, 0x26, 0xef, 0x04, 0x2d, 0xce, 0xe2, 0x89, 0xcb, + 0xcd, 0x13, 0x94, 0xce, 0x75, 0x95, 0x06, 0xd3, 0x4d, 0xf1, 0x71, 0xeb, 0x06, 0xd4, 0xde, 0x77, + 0x3b, 0x41, 0x74, 0x3f, 0x4f, 0x1d, 0xb7, 0x44, 0x55, 0xe6, 0x2a, 0xcc, 0xf5, 0xb0, 0x21, 0x33, + 0x00, 0x0c, 0x68, 0x6f, 0x6f, 0xd4, 0xca, 0x5b, 0xf9, 0x33, 0x24, 0x0f, 0x53, 0xf8, 0xbb, 0xbc, + 0x51, 0x58, 0x59, 0x2b, 0x97, 0xf2, 0x06, 0x99, 0x83, 0x69, 0x84, 0x94, 0x2a, 0x35, 0x0e, 0xca, + 0x7c, 0x34, 0x92, 0x1b, 0xcd, 0x8f, 0x59, 0x79, 0x3e, 0x75, 0x43, 0x36, 0x01, 0x70, 0x4d, 0x31, + 0xff, 0x56, 0x06, 0x2e, 0xc8, 0x65, 0x85, 0x86, 0x6c, 0xab, 0xec, 0xb6, 0x0f, 0x9e, 0xf1, 0xd5, + 0xe1, 0x8e, 0xb6, 0x3a, 0xbc, 0x92, 0x58, 0xa9, 0x13, 0x5f, 0x39, 0x60, 0x89, 0xf8, 0xd5, 0x71, + 0x78, 0x61, 0x20, 0x15, 0xf9, 0x98, 0xad, 0xe6, 0x2e, 0x6d, 0x87, 0x95, 0x46, 0x93, 0x6e, 0xb9, + 0x2d, 0xea, 0x75, 0x43, 0x11, 0x06, 0xf1, 0xf2, 0xe3, 0xe3, 0xa5, 0x79, 0x9e, 0x2b, 0xca, 0x76, + 0x1b, 0x4d, 0x6a, 0x87, 0xbc, 0x58, 0x13, 0xb7, 0x5e, 0x6a, 0xc6, 0x32, 0xca, 0x67, 0x57, 0x69, + 0x87, 0xd4, 0x7f, 0xe0, 0xf0, 0x94, 0x39, 0x82, 0xe5, 0x7d, 0x4a, 0x3b, 0xb6, 0xc3, 0x4a, 0x6d, + 0x57, 0x14, 0xeb, 0x2c, 0x7b, 0xa8, 0xc9, 0x1d, 0x85, 0x65, 0x91, 0xed, 0x06, 0xd6, 0x9d, 0x47, + 0xc2, 0x03, 0x2c, 0xae, 0xff, 0x46, 0x2c, 0xf9, 0xed, 0xf3, 0x96, 0xf3, 0xc8, 0xea, 0x25, 0x21, + 0xdf, 0x84, 0xb3, 0x62, 0x01, 0x12, 0x61, 0xfa, 0xf2, 0x8b, 0xf9, 0x25, 0x80, 0xd7, 0x1e, 0x1f, + 0x2f, 0x9d, 0x17, 0xcb, 0x97, 0x2d, 0xaf, 0x3c, 0xa4, 0x7d, 0x75, 0x3a, 0x17, 0xb2, 0xc5, 0x16, + 0xe4, 0x44, 0x77, 0xac, 0xd3, 0x20, 0x70, 0x0e, 0xa4, 0xb7, 0x98, 0xc7, 0x22, 0x29, 0x9d, 0x69, + 0xb7, 0x78, 0xb9, 0xd5, 0x97, 0x92, 0xac, 0xc2, 0xcc, 0x2e, 0xdd, 0x53, 0xc7, 0x67, 0x2c, 0x52, + 0x55, 0xf9, 0x87, 0x74, 0xaf, 0xff, 0xe0, 0x24, 0xe8, 0x88, 0x0b, 0x73, 0x18, 0xa7, 0xb9, 0xe6, + 0x06, 0x21, 0x6d, 0x53, 0x1f, 0xaf, 0x32, 0x8d, 0xa3, 0x32, 0x58, 0x8c, 0x2d, 0x64, 0xbd, 0x7c, + 0xe5, 0xa5, 0xc7, 0xc7, 0x4b, 0x2f, 0xf0, 0x98, 0xcf, 0xa6, 0x80, 0xdb, 0x89, 0xc4, 0x71, 0xbd, + 0x5c, 0xc9, 0xb7, 0x60, 0xd6, 0xf2, 0xba, 0xa1, 0xdb, 0x3e, 0xa8, 0x85, 0xbe, 0x13, 0xd2, 0x03, + 0xbe, 0x20, 0xc5, 0x77, 0xa6, 0x12, 0xa5, 0xc2, 0x57, 0xc6, 0x81, 0x76, 0x20, 0xa0, 0xda, 0x8a, + 0xa0, 0x13, 0x90, 0x1f, 0x83, 0x19, 0x1e, 0xd5, 0x1d, 0x55, 0x30, 0xa1, 0xe5, 0x58, 0xd1, 0x0b, + 0x77, 0x6e, 0xf2, 0xfd, 0x16, 0x8f, 0x0e, 0x4f, 0xab, 0x20, 0xc1, 0x8d, 0x7c, 0x5d, 0x74, 0x56, + 0xd5, 0x6d, 0x1f, 0x44, 0x62, 0x0c, 0xd8, 0xf3, 0x6f, 0xc6, 0x5d, 0xd2, 0x61, 0xcd, 0x95, 0x62, + 0xdc, 0xe7, 0xf4, 0xa1, 0x97, 0x8f, 0x79, 0x6c, 0x40, 0x3e, 0xd9, 0x40, 0xf2, 0x55, 0x98, 0xe0, + 0x0e, 0x69, 0x1a, 0x1c, 0x8a, 0xcb, 0x55, 0xf2, 0x82, 0x4e, 0x04, 0xd7, 0x89, 0x44, 0xca, 0x05, + 0xee, 0xee, 0xa6, 0xea, 0x91, 0xec, 0xea, 0x19, 0x2b, 0x66, 0x46, 0x1a, 0x30, 0xc5, 0xdb, 0x40, + 0xf1, 0x1a, 0xa0, 0x38, 0x97, 0x7c, 0x49, 0x1d, 0x73, 0x51, 0x94, 0xe0, 0x8f, 0x37, 0xe5, 0xc4, + 0x97, 0x72, 0x04, 0xad, 0x0a, 0x8d, 0xeb, 0x0a, 0x40, 0x4e, 0x12, 0x9a, 0x17, 0xe0, 0x7c, 0x9f, + 0x36, 0x9b, 0x0f, 0xd0, 0xe1, 0xd7, 0xa7, 0x46, 0xf2, 0x55, 0x58, 0x40, 0xc2, 0xa2, 0xd7, 0x6e, + 0xd3, 0x7a, 0x88, 0x93, 0x4c, 0xfa, 0x0c, 0xb2, 0xdc, 0x1d, 0xcc, 0xbf, 0xb7, 0x1e, 0x21, 0xd8, + 0x49, 0xd7, 0x41, 0x2a, 0x07, 0xf3, 0xd7, 0x32, 0xb0, 0x28, 0xe6, 0xad, 0x45, 0xeb, 0x9e, 0xdf, + 0x78, 0xf6, 0xd7, 0x89, 0xb2, 0xb6, 0x4e, 0xbc, 0x1c, 0xdd, 0xd5, 0x48, 0xfb, 0xc8, 0x01, 0xcb, + 0xc4, 0xef, 0x1a, 0xf0, 0xfc, 0x20, 0x22, 0xd6, 0x3b, 0xd1, 0xb5, 0xc7, 0x89, 0x9e, 0xeb, 0x8d, + 0x1d, 0x98, 0xc7, 0x01, 0x2d, 0x1e, 0xd2, 0xfa, 0xfd, 0x60, 0xd5, 0x0b, 0x42, 0x0c, 0x8b, 0xc8, + 0x68, 0x21, 0xd1, 0x2b, 0x9e, 0xc7, 0xcf, 0x6e, 0xf0, 0x80, 0xcb, 0xf8, 0xe1, 0xf1, 0x12, 0x30, + 0x10, 0xbf, 0xa8, 0x28, 0xbc, 0x90, 0x8f, 0x8e, 0xec, 0x3a, 0xf2, 0xe0, 0x17, 0x33, 0xef, 0xd3, + 0xa3, 0xc0, 0x4a, 0x63, 0x8d, 0x47, 0xdc, 0x85, 0x6e, 0x78, 0x58, 0xf5, 0xe9, 0x3e, 0xf5, 0x69, + 0xbb, 0x4e, 0x3f, 0x67, 0x47, 0xdc, 0xfa, 0xc7, 0x0d, 0xb5, 0x2f, 0xff, 0x7f, 0x26, 0x60, 0x21, + 0x8d, 0x8c, 0xf5, 0x8b, 0xb2, 0x15, 0x4c, 0x26, 0xab, 0xfd, 0xab, 0x06, 0x4c, 0xd5, 0x68, 0xdd, + 0x6b, 0x37, 0xee, 0xa0, 0xe3, 0x5f, 0xf4, 0x8e, 0xcd, 0x97, 0x42, 0x06, 0xb7, 0xf7, 0x13, 0x27, + 0x02, 0x3f, 0x3a, 0x5e, 0xfa, 0x70, 0xb8, 0x1d, 0x58, 0xdd, 0xc3, 0x5b, 0x69, 0x21, 0x26, 0x61, + 0x89, 0xaa, 0xc0, 0xd8, 0x27, 0xad, 0x52, 0xb2, 0x02, 0xd3, 0x62, 0xba, 0x7a, 0xea, 0xad, 0x57, + 0x74, 0x70, 0xd7, 0x65, 0x41, 0xcf, 0x35, 0x79, 0x8d, 0x84, 0xdc, 0x82, 0xec, 0xf6, 0xf2, 0x1d, + 0x31, 0x06, 0xf2, 0xd2, 0xce, 0xf6, 0xf2, 0x1d, 0x74, 0xf2, 0x30, 0xc3, 0x79, 0xba, 0xbb, 0xac, + 0xf9, 0xe2, 0xb7, 0x97, 0xef, 0x90, 0xbf, 0x04, 0x67, 0x4b, 0x6e, 0x20, 0xaa, 0xe0, 0xc1, 0x16, + 0x0d, 0x0c, 0x2e, 0x1c, 0xeb, 0x23, 0xbd, 0x5f, 0x4a, 0x95, 0xde, 0x97, 0x1a, 0x11, 0x13, 0x9b, + 0x47, 0x72, 0x34, 0x92, 0xb7, 0x7b, 0xd3, 0xeb, 0x21, 0xdf, 0x86, 0x19, 0xf4, 0x37, 0x62, 0xfc, + 0x09, 0x26, 0xdc, 0x18, 0xef, 0x53, 0xf3, 0x17, 0x52, 0x6b, 0xbe, 0x88, 0xee, 0x4b, 0x1b, 0xa3, + 0x58, 0x30, 0x39, 0x87, 0xb6, 0x97, 0xd5, 0x38, 0x93, 0x8f, 0x60, 0x56, 0x18, 0x15, 0x9b, 0xfb, + 0x5b, 0x87, 0xb4, 0xe4, 0x1c, 0x89, 0x53, 0x1a, 0xdc, 0xa7, 0x08, 0x4b, 0xc4, 0xf6, 0xf6, 0xed, + 0xf0, 0x90, 0xda, 0x0d, 0x47, 0x5b, 0x7e, 0x13, 0x84, 0xe4, 0x27, 0x60, 0x72, 0xcd, 0xab, 0x33, + 0x7b, 0x12, 0x35, 0xc3, 0x04, 0xf2, 0xf9, 0x04, 0x33, 0xa7, 0x72, 0x70, 0xc2, 0x48, 0xf8, 0xd1, + 0xf1, 0xd2, 0x3b, 0xa7, 0x15, 0x1a, 0xa5, 0x02, 0x4b, 0xad, 0x8d, 0x14, 0x21, 0xb7, 0x4b, 0xf7, + 0xd8, 0xd7, 0x26, 0xb3, 0xfe, 0x49, 0xb0, 0x38, 0x38, 0x13, 0xbf, 0xb4, 0x83, 0x33, 0x01, 0x23, + 0x3e, 0xcc, 0x61, 0xff, 0x54, 0x9d, 0x20, 0x78, 0xe8, 0xf9, 0x0d, 0xcc, 0xa5, 0x33, 0xd9, 0xa7, + 0xf3, 0x97, 0x53, 0x3b, 0xff, 0x79, 0xde, 0xf9, 0x1d, 0x85, 0x83, 0x6a, 0x16, 0xf5, 0xb0, 0x27, + 0xdf, 0x82, 0x19, 0x8b, 0xfe, 0x78, 0xd7, 0xf5, 0xe9, 0xfa, 0x9d, 0x02, 0xce, 0xca, 0x29, 0x2d, + 0x44, 0x53, 0x2f, 0xe4, 0xb6, 0x97, 0xcf, 0x61, 0xd2, 0xaf, 0x62, 0xb7, 0xf6, 0x1d, 0xdd, 0x4d, + 0xac, 0x92, 0x90, 0x2a, 0x4c, 0x96, 0xe8, 0x03, 0xb7, 0x4e, 0x31, 0x90, 0x0c, 0xf7, 0xa1, 0x4a, + 0x16, 0xb2, 0xb8, 0x84, 0x7b, 0x18, 0x1a, 0x08, 0xe0, 0x61, 0x69, 0x7a, 0x4c, 0x7a, 0x84, 0x48, + 0x6e, 0x43, 0xb6, 0x52, 0xaa, 0xe2, 0x26, 0x34, 0x8e, 0xcf, 0xaa, 0x34, 0xaa, 0x32, 0xa3, 0x16, + 0x1e, 0x73, 0xb9, 0x0d, 0x2d, 0x89, 0x5a, 0xa5, 0x54, 0x25, 0xfb, 0x30, 0x8d, 0x1d, 0xb0, 0x4a, + 0x1d, 0xde, 0xb7, 0xb3, 0x7d, 0xfa, 0xf6, 0x7a, 0x6a, 0xdf, 0x2e, 0xf2, 0xbe, 0x3d, 0x14, 0xd4, + 0x5a, 0x8a, 0x20, 0x95, 0x2d, 0xdf, 0x18, 0x9a, 0xff, 0xa1, 0x81, 0xd3, 0x9f, 0x5c, 0xc3, 0xfb, + 0x44, 0xd1, 0xd9, 0x0a, 0xfa, 0xb3, 0x9c, 0x4e, 0x22, 0xbf, 0x05, 0x47, 0x21, 0x6f, 0xc0, 0xd8, + 0x1d, 0xa7, 0x4e, 0x43, 0xe9, 0x91, 0x47, 0xe4, 0x7d, 0x84, 0xa8, 0xce, 0x2f, 0x8e, 0xc3, 0x2c, + 0x13, 0xde, 0x2d, 0x85, 0x38, 0x63, 0x7a, 0xb1, 0x20, 0x2f, 0xca, 0xa2, 0x65, 0x22, 0xba, 0x53, + 0x49, 0xa9, 0x6e, 0xd7, 0x1d, 0x95, 0x57, 0x2a, 0x07, 0xf3, 0x7f, 0x33, 0x62, 0x79, 0x26, 0xaf, + 0xc1, 0x88, 0x55, 0x8d, 0xda, 0xcf, 0x23, 0x3b, 0x13, 0xcd, 0x47, 0x04, 0xf2, 0x75, 0x38, 0xab, + 0xf0, 0xc1, 0x3e, 0xa1, 0x0d, 0xd6, 0x20, 0xfe, 0x31, 0xaf, 0x62, 0xe8, 0xa1, 0xd2, 0x12, 0x87, + 0x63, 0x24, 0x5a, 0x94, 0xce, 0x03, 0xcd, 0xb0, 0xb8, 0xa0, 0x44, 0xdb, 0x2e, 0xe7, 0xad, 0x7c, + 0xac, 0xca, 0xbb, 0x81, 0x08, 0xc9, 0x8f, 0x4d, 0xe3, 0xc0, 0xa3, 0x0f, 0xcd, 0xb7, 0x34, 0x31, + 0x8d, 0x92, 0x53, 0x1b, 0x83, 0x93, 0x53, 0x9b, 0xff, 0xc2, 0x50, 0xf2, 0x90, 0x3f, 0xa3, 0x2b, + 0xfe, 0x6d, 0x6d, 0xc5, 0x5f, 0x10, 0xa4, 0xd1, 0x57, 0xb1, 0xb2, 0x54, 0x2b, 0x6d, 0x56, 0x39, + 0x04, 0x46, 0xc0, 0x77, 0x33, 0x30, 0xb9, 0x1d, 0x50, 0x9f, 0x1f, 0x66, 0x7c, 0xbe, 0x6e, 0x69, + 0x46, 0xdf, 0x35, 0xd4, 0x3d, 0xba, 0x3f, 0x31, 0xd0, 0xc9, 0xa5, 0x52, 0xb0, 0xde, 0x60, 0x20, + 0xb5, 0x37, 0xba, 0x01, 0xf5, 0x2d, 0x84, 0xf2, 0xfb, 0x53, 0x6b, 0xfa, 0xfd, 0xa9, 0xa6, 0xc5, + 0x60, 0xe4, 0x43, 0x18, 0xdd, 0xc6, 0x2d, 0xbb, 0x1e, 0x3d, 0x1f, 0xf1, 0xc7, 0x42, 0x3e, 0x31, + 0xbb, 0xec, 0x4f, 0x55, 0xaf, 0x60, 0x19, 0xa9, 0xc1, 0x78, 0xd1, 0xa7, 0x98, 0x71, 0x7c, 0x64, + 0xf8, 0x08, 0xd0, 0x3a, 0x27, 0x49, 0x46, 0x80, 0x0a, 0x4e, 0xe6, 0xaf, 0x64, 0x80, 0xc4, 0xdf, + 0x88, 0x39, 0xd1, 0x82, 0x67, 0x76, 0xd0, 0x3f, 0xd0, 0x06, 0xfd, 0x85, 0x9e, 0x41, 0xe7, 0x9f, + 0x37, 0xd4, 0xd8, 0xff, 0xa1, 0x01, 0xe7, 0xd2, 0x09, 0xc9, 0xcb, 0x30, 0xb6, 0xb9, 0x55, 0x95, + 0x17, 0x30, 0xc4, 0xa7, 0x78, 0x1d, 0xdc, 0x59, 0x58, 0xa2, 0x88, 0xbc, 0x09, 0x63, 0x1f, 0x5b, + 0x45, 0xa6, 0x7c, 0x94, 0xe4, 0x2c, 0x3f, 0xee, 0xdb, 0x75, 0x5d, 0xff, 0x08, 0x24, 0x75, 0x6c, + 0xb3, 0x4f, 0x6d, 0x6c, 0xbf, 0x97, 0x81, 0xd9, 0x42, 0xbd, 0x4e, 0x83, 0x80, 0xad, 0xe6, 0x34, + 0x08, 0x9f, 0xd9, 0x81, 0x4d, 0xbf, 0x5a, 0xa1, 0x7d, 0xdb, 0x50, 0xa3, 0xfa, 0x47, 0x06, 0x9c, + 0x95, 0x54, 0x0f, 0x5c, 0xfa, 0x70, 0xeb, 0xd0, 0xa7, 0xc1, 0xa1, 0xd7, 0x6c, 0x0c, 0x9d, 0x01, + 0x8a, 0x2d, 0xee, 0x98, 0x0b, 0x43, 0x3d, 0xd9, 0xda, 0x47, 0x88, 0xb6, 0xb8, 0xf3, 0x7c, 0x19, + 0x37, 0x60, 0xbc, 0xd0, 0xe9, 0xf8, 0xde, 0x03, 0x3e, 0xed, 0xa7, 0x45, 0x40, 0x2c, 0x07, 0x69, + 0x01, 0xb4, 0x1c, 0xc4, 0x9a, 0x51, 0xa2, 0x6d, 0x7e, 0xb7, 0x75, 0x9a, 0x37, 0xa3, 0x41, 0xdb, + 0xaa, 0xc9, 0x8c, 0xe5, 0xe6, 0x2f, 0x8c, 0xc0, 0x94, 0xfa, 0x21, 0xc4, 0xe4, 0xf9, 0x60, 0x3c, + 0x5f, 0x8d, 0x53, 0x77, 0x10, 0x62, 0x89, 0x92, 0xf8, 0x7a, 0x47, 0xe6, 0xc4, 0xeb, 0x1d, 0xbb, + 0x30, 0x5d, 0xf5, 0xbd, 0x8e, 0x17, 0xd0, 0x06, 0x7f, 0x34, 0x82, 0x6b, 0xad, 0x79, 0xc5, 0xa0, + 0x64, 0x7d, 0x8e, 0xee, 0x7b, 0xdc, 0x4e, 0x75, 0x04, 0xb6, 0x9d, 0x7c, 0x52, 0x42, 0xe7, 0xc3, + 0x4f, 0x06, 0x9d, 0x40, 0xdc, 0x36, 0x8f, 0x4e, 0x06, 0x19, 0x44, 0x3f, 0x19, 0x64, 0x10, 0x75, + 0x5a, 0x8c, 0x3e, 0xad, 0x69, 0x41, 0x7e, 0xc5, 0x80, 0xc9, 0x42, 0xbb, 0x2d, 0xae, 0x8d, 0x9c, + 0x10, 0x37, 0xfb, 0x0d, 0x71, 0x38, 0xf8, 0xce, 0xa7, 0x3a, 0x1c, 0xdc, 0xf2, 0x1d, 0x37, 0x0c, + 0x30, 0x9a, 0x38, 0xae, 0x50, 0xb5, 0x88, 0x95, 0x76, 0x90, 0x77, 0x20, 0x1f, 0xc9, 0x63, 0xa5, + 0xdd, 0xa0, 0x8f, 0x68, 0xb0, 0x38, 0x7e, 0x29, 0x7b, 0x65, 0x9a, 0xbf, 0x77, 0xa3, 0x9d, 0x7a, + 0x26, 0x11, 0xcd, 0xef, 0x19, 0x70, 0x4e, 0x15, 0x88, 0x5a, 0x77, 0xaf, 0xe5, 0xa2, 0x65, 0x4f, + 0xae, 0xc3, 0x84, 0x18, 0xaf, 0xc8, 0xfe, 0xeb, 0x4d, 0x83, 0x13, 0xa3, 0x90, 0x32, 0x1b, 0x22, + 0xc6, 0x43, 0xf8, 0x5a, 0xe6, 0x13, 0xd3, 0x8d, 0x15, 0xad, 0x2c, 0x8a, 0xce, 0xce, 0xfb, 0xf8, + 0x5b, 0x1f, 0x3b, 0x06, 0x31, 0xdf, 0x87, 0x39, 0xbd, 0x95, 0x35, 0x8a, 0xa9, 0x4c, 0xe4, 0xa7, + 0x19, 0xe9, 0x9f, 0x26, 0xcb, 0xcd, 0x5d, 0x20, 0x3d, 0xf4, 0x01, 0x9e, 0x70, 0xd3, 0x50, 0x46, + 0x60, 0x48, 0xff, 0x72, 0x0f, 0x62, 0xf4, 0x12, 0xcf, 0xa4, 0xda, 0xdd, 0x48, 0x6a, 0xfe, 0x17, + 0x93, 0x30, 0x9f, 0xa2, 0x3a, 0x4e, 0x58, 0xda, 0x97, 0xf4, 0xc9, 0x33, 0x11, 0x85, 0xa4, 0xcb, + 0x29, 0xf3, 0xbe, 0x7c, 0x5f, 0x65, 0xc0, 0x54, 0x19, 0xf4, 0xe8, 0xca, 0x67, 0xb1, 0xbc, 0xab, + 0xb7, 0x46, 0x46, 0x9f, 0xda, 0xad, 0x91, 0x15, 0x98, 0x16, 0x5f, 0x25, 0xa6, 0xf2, 0x58, 0xec, + 0x56, 0xf1, 0x79, 0x81, 0xdd, 0x33, 0xa5, 0x75, 0x12, 0xce, 0x23, 0xf0, 0x9a, 0x0f, 0xa8, 0xe0, + 0x31, 0xae, 0xf2, 0xc0, 0x82, 0x54, 0x1e, 0x0a, 0x09, 0xf9, 0x0f, 0x30, 0x39, 0x22, 0x42, 0xd4, + 0xf9, 0x9c, 0x1b, 0x34, 0x9f, 0x1b, 0x4f, 0x67, 0x3e, 0xbf, 0x20, 0xdb, 0x98, 0x3e, 0xaf, 0x53, + 0x9a, 0x45, 0x7e, 0xdb, 0x80, 0x39, 0x7e, 0x75, 0x41, 0x6d, 0xec, 0xc0, 0x70, 0xf4, 0xfa, 0xd3, + 0x69, 0xec, 0xf3, 0x01, 0x56, 0xdb, 0xa7, 0xad, 0xbd, 0x8d, 0x22, 0x5f, 0x03, 0x88, 0x66, 0x54, + 0xb0, 0x08, 0xfa, 0x75, 0xfd, 0xb4, 0xe5, 0x33, 0x4e, 0xd6, 0x13, 0x46, 0x74, 0x5a, 0x4a, 0xcc, + 0x08, 0x4a, 0xfe, 0x12, 0x2c, 0xb0, 0xf9, 0x12, 0x41, 0xc4, 0x45, 0xab, 0xc5, 0x49, 0xac, 0xe5, + 0x8b, 0xfd, 0x97, 0xf6, 0xeb, 0x69, 0x64, 0xfc, 0x4a, 0x7f, 0x9c, 0x51, 0x3a, 0x6c, 0xa9, 0x3b, + 0xc5, 0x34, 0x0a, 0xbc, 0xb9, 0x88, 0xad, 0xe7, 0xa9, 0x71, 0xfa, 0xe8, 0xb7, 0x0b, 0x72, 0x2e, + 0x70, 0xfd, 0x16, 0xe8, 0xf1, 0xb3, 0x08, 0x22, 0x1f, 0x03, 0x89, 0x62, 0xfe, 0x39, 0x8c, 0xfa, + 0xf2, 0x81, 0x05, 0xf4, 0xb1, 0xc4, 0x77, 0x07, 0x7c, 0x59, 0xac, 0x0a, 0x49, 0x2f, 0x31, 0xa1, + 0xb0, 0x20, 0x3e, 0x9a, 0x41, 0x65, 0xf2, 0xc8, 0x60, 0x71, 0x46, 0xbb, 0xc6, 0x16, 0x97, 0xc4, + 0xa9, 0xa7, 0x95, 0x0c, 0x94, 0xda, 0x6e, 0x39, 0x8d, 0x1d, 0xb9, 0x0d, 0x13, 0x6b, 0xde, 0x81, + 0xdb, 0x5e, 0x95, 0xe7, 0xf6, 0xe2, 0x0c, 0xb1, 0xc9, 0x80, 0xf6, 0xa1, 0x7e, 0xfa, 0x1e, 0xa3, + 0x32, 0xab, 0xb6, 0xe4, 0x1f, 0x59, 0xdd, 0xf6, 0x62, 0x1e, 0xe3, 0x49, 0xd0, 0x9c, 0x69, 0xf8, + 0x47, 0xb6, 0xdf, 0xd5, 0xa3, 0x9c, 0x11, 0xe9, 0xe2, 0x1e, 0x5c, 0xe8, 0x3b, 0x68, 0x29, 0xd9, + 0x03, 0x6e, 0xe8, 0xd9, 0x03, 0x2e, 0xf4, 0x53, 0xee, 0x81, 0x9a, 0x41, 0xe0, 0x37, 0x8c, 0x84, + 0x36, 0x17, 0xa6, 0x17, 0xcf, 0xfa, 0xd6, 0x6f, 0xb9, 0xcb, 0x60, 0x36, 0x62, 0xae, 0xef, 0x33, + 0xb1, 0xc9, 0xc7, 0xf4, 0xbd, 0xba, 0x5e, 0xa0, 0xe6, 0x7f, 0x42, 0xc5, 0x6e, 0xfe, 0x6a, 0x06, + 0x08, 0x6f, 0x61, 0xd1, 0xe9, 0x38, 0x7b, 0x6e, 0xd3, 0x0d, 0x5d, 0xbc, 0xb1, 0x91, 0x17, 0x2c, + 0x9c, 0xbd, 0x26, 0x55, 0xaf, 0x3b, 0x89, 0x38, 0x96, 0xa8, 0xcc, 0x4e, 0x1a, 0x69, 0x3d, 0x84, + 0x7d, 0x44, 0x31, 0xf3, 0x24, 0xa2, 0xf8, 0x2d, 0x78, 0xae, 0xd0, 0xc1, 0x94, 0xc3, 0xb2, 0x96, + 0x3b, 0x9e, 0x2f, 0x85, 0x48, 0xba, 0x6c, 0xf0, 0x7c, 0xd5, 0x89, 0xd0, 0x7a, 0x5a, 0x3a, 0x88, + 0x85, 0xf9, 0x8f, 0x32, 0x70, 0xa1, 0xb7, 0x63, 0xc4, 0xb7, 0x45, 0xc3, 0x63, 0x9c, 0x30, 0x3c, + 0x69, 0xfd, 0x98, 0x41, 0xe9, 0x7c, 0x6a, 0xfd, 0xc8, 0x73, 0xfe, 0x7e, 0xca, 0x7e, 0xac, 0xc1, + 0xa4, 0x3a, 0x93, 0x47, 0x3e, 0xed, 0x4c, 0x56, 0xb9, 0x98, 0xff, 0x91, 0xa1, 0x66, 0xa2, 0x25, + 0x6f, 0xa6, 0x05, 0x4a, 0xf2, 0xfc, 0x11, 0x1c, 0xac, 0xc7, 0x48, 0xca, 0x4d, 0x60, 0x26, 0x75, + 0x13, 0x28, 0x53, 0x61, 0x64, 0x53, 0x53, 0x61, 0x94, 0x60, 0xb6, 0xd6, 0xdd, 0x93, 0x75, 0x23, + 0xe2, 0x88, 0x16, 0xba, 0x6c, 0xcb, 0xf6, 0xeb, 0xf7, 0xc9, 0x34, 0x12, 0xf3, 0x67, 0x33, 0x30, + 0x55, 0x6d, 0x76, 0x0f, 0xdc, 0x76, 0xc9, 0x09, 0x9d, 0x67, 0x76, 0x5f, 0xfa, 0xb6, 0xb6, 0x2f, + 0x8d, 0xe2, 0x81, 0xa3, 0x0f, 0x1b, 0x6a, 0x53, 0xfa, 0xcb, 0x06, 0xcc, 0xc6, 0x24, 0x5c, 0x39, + 0xae, 0xc2, 0x08, 0xfb, 0x21, 0xcc, 0xdc, 0x4b, 0x3d, 0x8c, 0x79, 0x16, 0xc8, 0xe8, 0x2f, 0xb1, + 0x53, 0xd4, 0x5f, 0xf4, 0x42, 0x0e, 0x17, 0xbf, 0xc4, 0xdf, 0xd6, 0x39, 0x7d, 0xf6, 0xc7, 0xdf, + 0x37, 0x20, 0x9f, 0xfc, 0x12, 0x72, 0x0f, 0xc6, 0x19, 0x27, 0x37, 0x7a, 0xa7, 0xe7, 0x95, 0x3e, + 0xdf, 0x7c, 0x5d, 0xa0, 0xf1, 0xe6, 0x61, 0xe7, 0x53, 0x0e, 0xb1, 0x24, 0x87, 0x8b, 0x16, 0x4c, + 0xa9, 0x58, 0x29, 0xad, 0x7b, 0x43, 0x5f, 0x11, 0xce, 0xa5, 0xf7, 0x83, 0xda, 0xea, 0x5f, 0xd7, + 0x5a, 0x2d, 0xd6, 0x82, 0x61, 0x5f, 0x69, 0xc3, 0x14, 0x34, 0x5c, 0x4a, 0x55, 0x39, 0x4b, 0x11, + 0xe8, 0x08, 0x8f, 0x6d, 0x68, 0x79, 0x7d, 0x42, 0xce, 0x70, 0x43, 0xdb, 0x41, 0x88, 0xba, 0x22, + 0x72, 0x1c, 0xf3, 0xef, 0x66, 0xe1, 0x5c, 0xdc, 0x3c, 0xfe, 0x66, 0x5d, 0xd5, 0xf1, 0x9d, 0x56, + 0x70, 0xc2, 0x0c, 0xb8, 0xd2, 0xd3, 0x34, 0x4c, 0xfb, 0x26, 0x9b, 0xa6, 0x34, 0xc8, 0x4c, 0x34, + 0x08, 0x3d, 0x01, 0xbc, 0x41, 0xb2, 0x19, 0xe4, 0x1e, 0x64, 0x6b, 0x34, 0x14, 0xba, 0xe8, 0x72, + 0x4f, 0xaf, 0xaa, 0xed, 0xba, 0x5e, 0xa3, 0x21, 0x1f, 0x44, 0x7e, 0x3b, 0x89, 0x6a, 0x37, 0xe6, + 0xd9, 0x9e, 0x6e, 0x17, 0xc6, 0xca, 0x8f, 0x3a, 0xb4, 0x1e, 0x8a, 0xfc, 0x4b, 0x57, 0x07, 0xf3, + 0xe3, 0xb8, 0x4a, 0x96, 0x27, 0x8a, 0x00, 0xb5, 0xb3, 0x38, 0xca, 0xc5, 0xdb, 0x90, 0x93, 0x95, + 0x9f, 0x2a, 0x5b, 0xd1, 0xdb, 0x30, 0xa9, 0x54, 0x72, 0x2a, 0xa1, 0xff, 0x0b, 0x03, 0xc6, 0xd8, + 0x4a, 0xb0, 0x73, 0xfb, 0x19, 0xd5, 0x48, 0xb7, 0x34, 0x8d, 0x34, 0xa7, 0x24, 0xe5, 0xc0, 0x79, + 0x79, 0xfb, 0x04, 0x5d, 0x74, 0xcc, 0xd6, 0x95, 0x08, 0x99, 0xdc, 0x85, 0x71, 0x71, 0x1e, 0x27, + 0x22, 0x87, 0xd4, 0x2c, 0x1f, 0xf2, 0xa4, 0x2e, 0x32, 0x95, 0xbd, 0x4e, 0x72, 0x6f, 0x21, 0xa9, + 0x49, 0x29, 0xbe, 0xa1, 0xad, 0x65, 0x77, 0xf6, 0x30, 0x80, 0x99, 0x67, 0xa9, 0x50, 0x32, 0xa0, + 0xf7, 0xb9, 0x34, 0x55, 0x10, 0xde, 0xb1, 0xec, 0x20, 0x26, 0xe7, 0x64, 0x8a, 0xde, 0x54, 0xc7, + 0xd9, 0xcf, 0xe4, 0x79, 0x7e, 0x07, 0xd9, 0xb0, 0xf7, 0x60, 0xea, 0x8e, 0xe7, 0x3f, 0x74, 0x7c, + 0x7e, 0x6b, 0x17, 0x3f, 0x93, 0xa7, 0xf7, 0x9f, 0xde, 0xe7, 0x70, 0x7e, 0xef, 0xf7, 0x47, 0xc7, + 0x4b, 0x23, 0x2b, 0x9e, 0xd7, 0xb4, 0x34, 0x74, 0xb2, 0x09, 0xd3, 0xeb, 0xce, 0x23, 0x11, 0xe5, + 0xb2, 0xb5, 0xb5, 0x26, 0x22, 0x12, 0xaf, 0x3e, 0x3e, 0x5e, 0xba, 0xd0, 0x72, 0x1e, 0x45, 0xa7, + 0xab, 0xfd, 0x2f, 0x91, 0xeb, 0xf4, 0xc4, 0x85, 0x99, 0xaa, 0xe7, 0x87, 0xa2, 0x12, 0xb6, 0x31, + 0xca, 0xf6, 0x39, 0xdf, 0xbc, 0x91, 0x7a, 0xbe, 0x79, 0x81, 0xed, 0x06, 0xed, 0xfd, 0x88, 0x5c, + 0xbb, 0x35, 0xa7, 0x31, 0x26, 0xef, 0xc1, 0x5c, 0x91, 0xfa, 0xa1, 0xbb, 0xef, 0xd6, 0x9d, 0x90, + 0xde, 0xf1, 0xfc, 0x96, 0x13, 0x8a, 0xb5, 0x1c, 0xbd, 0x32, 0x75, 0xca, 0x39, 0xb5, 0x9c, 0xd0, + 0xea, 0xc5, 0x24, 0x5f, 0x4f, 0x8b, 0xf1, 0x1c, 0x8d, 0x23, 0xd9, 0x52, 0x62, 0x3c, 0xfb, 0x45, + 0xb2, 0xf5, 0x46, 0x7b, 0x1e, 0x0c, 0x0a, 0xa0, 0xc8, 0xad, 0xdc, 0x14, 0xb1, 0x17, 0x27, 0x07, + 0x48, 0x44, 0xe3, 0xd6, 0x27, 0x50, 0x62, 0x19, 0xb2, 0x2b, 0xd5, 0x3b, 0xe8, 0x67, 0x13, 0x01, + 0x0b, 0xb4, 0x7d, 0xe8, 0xb4, 0xeb, 0x68, 0xe0, 0x89, 0xa0, 0x25, 0x55, 0xe1, 0xad, 0x54, 0xef, + 0x10, 0x07, 0xe6, 0xab, 0xd4, 0x6f, 0xb9, 0xe1, 0x57, 0x6f, 0xde, 0x54, 0x06, 0x2a, 0x87, 0x4d, + 0xbb, 0x21, 0x9a, 0xb6, 0xd4, 0x41, 0x14, 0xfb, 0xd1, 0xcd, 0x9b, 0xa9, 0xc3, 0x11, 0x35, 0x2c, + 0x8d, 0x17, 0x29, 0xc3, 0xcc, 0xba, 0xf3, 0x28, 0x8e, 0x35, 0x0b, 0x44, 0xb4, 0xfc, 0x0b, 0x52, + 0xb0, 0xe2, 0x38, 0x35, 0xed, 0x76, 0x97, 0x4e, 0x44, 0xde, 0x85, 0xc9, 0x58, 0xbc, 0x02, 0x11, + 0x67, 0x88, 0x86, 0x9a, 0x22, 0x9c, 0x9a, 0x91, 0xa9, 0xa0, 0x93, 0xed, 0xc8, 0xcf, 0xc3, 0xad, + 0x74, 0x91, 0x7f, 0xf6, 0x86, 0xea, 0xe7, 0x71, 0xb0, 0x44, 0xfb, 0xac, 0xd9, 0x68, 0x67, 0xc4, + 0x83, 0xef, 0x2c, 0x9d, 0x8b, 0xe2, 0x3e, 0xaa, 0xfa, 0x5e, 0xab, 0x13, 0x62, 0xb0, 0x42, 0xc2, + 0x7d, 0xd4, 0xc1, 0x92, 0x14, 0xf7, 0x11, 0x27, 0x21, 0x14, 0x46, 0xd6, 0xbc, 0xfa, 0x7d, 0x0c, + 0x1f, 0x98, 0x58, 0xf9, 0x98, 0x4d, 0xf7, 0xa6, 0x57, 0xbf, 0xff, 0xf4, 0x02, 0x43, 0x90, 0x3d, + 0xd9, 0x60, 0x4d, 0x65, 0x52, 0x20, 0xfa, 0x44, 0x04, 0x1b, 0x2c, 0x44, 0xd6, 0xbb, 0x52, 0xc6, + 0xed, 0x0a, 0x2e, 0x34, 0xb2, 0x6b, 0x2d, 0x9d, 0x9c, 0x50, 0xc8, 0x97, 0x68, 0x70, 0x3f, 0xf4, + 0x3a, 0xc5, 0xa6, 0xdb, 0xd9, 0xf3, 0x1c, 0xbf, 0x81, 0x3b, 0xe9, 0xb4, 0xf9, 0xfd, 0x5a, 0xea, + 0xfc, 0x9e, 0x6b, 0x70, 0x7a, 0xbb, 0x2e, 0x19, 0x58, 0x3d, 0x2c, 0xc9, 0xd7, 0x61, 0x86, 0x09, + 0x77, 0xf9, 0x51, 0x48, 0xdb, 0x7c, 0xe4, 0xe7, 0x70, 0x65, 0x5e, 0x50, 0xb2, 0x21, 0x45, 0x85, + 0x5c, 0xa6, 0x70, 0xb2, 0xd3, 0x88, 0x40, 0x95, 0x29, 0x9d, 0x15, 0x69, 0xc0, 0xe2, 0xba, 0xf3, + 0x28, 0xbe, 0xb2, 0xa9, 0x0a, 0x29, 0x41, 0x01, 0xc3, 0x27, 0x63, 0x98, 0x80, 0xc5, 0x59, 0x0b, + 0xfa, 0xc8, 0x6b, 0x5f, 0x4e, 0xe4, 0x27, 0xe0, 0xbc, 0xf8, 0xac, 0x12, 0xa6, 0xfa, 0xf3, 0xfc, + 0xa3, 0xda, 0xa1, 0x83, 0x61, 0xa6, 0xf3, 0xa7, 0x53, 0x88, 0xb2, 0xc3, 0x1a, 0x92, 0x8f, 0x1d, + 0x70, 0x46, 0x56, 0xbf, 0x1a, 0xc8, 0xb7, 0x60, 0x86, 0x3b, 0x50, 0x57, 0xbd, 0x20, 0xc4, 0x4d, + 0xe8, 0x42, 0x9f, 0x3a, 0x2f, 0xa7, 0xd6, 0x99, 0xe7, 0x5e, 0x59, 0x1e, 0x6f, 0x88, 0x3e, 0xe4, + 0x04, 0x3f, 0xf2, 0x0e, 0x4c, 0x56, 0xdd, 0x36, 0xbf, 0xbe, 0x5c, 0xa9, 0x2e, 0x9e, 0x8d, 0x57, + 0x9d, 0x8e, 0xdb, 0xb6, 0xe5, 0xfe, 0xaf, 0x13, 0x29, 0x09, 0x15, 0x9b, 0xec, 0xc2, 0x64, 0xad, + 0xb6, 0x7a, 0xc7, 0x65, 0xcb, 0x5e, 0xe7, 0x68, 0xf1, 0x5c, 0x9f, 0xb6, 0xbd, 0x9c, 0xda, 0xb6, + 0xe9, 0x20, 0x38, 0xc4, 0xc7, 0x34, 0xec, 0xba, 0xd7, 0x39, 0xb2, 0x54, 0x4e, 0x29, 0x71, 0x44, + 0xe7, 0x9f, 0x72, 0x1c, 0x51, 0x05, 0x66, 0x95, 0x00, 0x0d, 0x0c, 0xce, 0x58, 0x8c, 0xdf, 0x1b, + 0x51, 0xe3, 0x86, 0x92, 0xd1, 0xe0, 0x49, 0x3a, 0x19, 0x40, 0x74, 0xe1, 0x94, 0x01, 0x44, 0x1f, + 0x8d, 0xe4, 0xa6, 0xf3, 0x33, 0xe6, 0x7f, 0x92, 0x49, 0x4c, 0x6d, 0x52, 0x81, 0x71, 0x21, 0x0f, + 0xc2, 0xd6, 0xe9, 0xed, 0xd1, 0x17, 0x52, 0x7b, 0x74, 0x5c, 0x48, 0x98, 0x25, 0xe9, 0xc9, 0x43, + 0xc6, 0x6a, 0xdf, 0xe9, 0x36, 0x65, 0xbe, 0x89, 0x6f, 0xf2, 0x99, 0x8b, 0x20, 0x4d, 0x47, 0x95, + 0x4e, 0x1f, 0xf1, 0xa8, 0x07, 0xd4, 0xa2, 0xb2, 0x92, 0xb5, 0x91, 0xfb, 0x3c, 0xc9, 0x56, 0x36, + 0x0a, 0x9b, 0xd3, 0x33, 0x6a, 0x3d, 0xb5, 0x0a, 0x59, 0x2d, 0xe6, 0x3f, 0x31, 0x60, 0x5a, 0xd3, + 0x0d, 0xe4, 0xb6, 0x12, 0x13, 0x1a, 0x07, 0xff, 0x6b, 0x38, 0x28, 0x38, 0xc9, 0x68, 0xd1, 0xdb, + 0x22, 0x4e, 0x27, 0xd3, 0x9f, 0x2e, 0xf5, 0x05, 0x94, 0xc1, 0x9e, 0x8a, 0x28, 0x69, 0xe7, 0x48, + 0x9f, 0xa4, 0x9d, 0xdf, 0x9f, 0x83, 0x19, 0xdd, 0x78, 0x64, 0xbb, 0x39, 0xf4, 0x76, 0x4a, 0x57, + 0x1c, 0x4f, 0x43, 0x8b, 0x10, 0xed, 0x6d, 0x05, 0x84, 0x90, 0x57, 0x01, 0xa2, 0xd8, 0x19, 0xe9, + 0x6d, 0x1b, 0x7d, 0x7c, 0xbc, 0x64, 0xbc, 0x69, 0x29, 0x05, 0xe4, 0xc7, 0x00, 0x36, 0xbc, 0x06, + 0x8d, 0x12, 0x25, 0x0f, 0xf0, 0xf8, 0xbf, 0xd6, 0x93, 0x80, 0xe6, 0x6c, 0xdb, 0x6b, 0xd0, 0xde, + 0x6c, 0x33, 0x0a, 0x47, 0xf2, 0x15, 0x18, 0xb5, 0xba, 0x4d, 0x2a, 0x7d, 0x4b, 0x93, 0x72, 0xb6, + 0x76, 0x9b, 0xca, 0xb3, 0xa2, 0x7e, 0x37, 0x79, 0xd0, 0xcb, 0x00, 0xe4, 0x03, 0x9e, 0x98, 0x46, + 0x5c, 0x21, 0x1f, 0x8d, 0xfd, 0x8f, 0x8a, 0xee, 0xee, 0xb9, 0x44, 0xae, 0x90, 0x90, 0x4d, 0x18, + 0x17, 0x4b, 0xb3, 0x38, 0x48, 0x7d, 0x31, 0xcd, 0x85, 0xaf, 0xd8, 0xe7, 0x22, 0xd3, 0x2d, 0x82, + 0x75, 0xaf, 0x3a, 0xf7, 0xfb, 0xbd, 0x0b, 0x13, 0x8c, 0x3d, 0x7f, 0x27, 0x73, 0x3c, 0xf6, 0x32, + 0x2a, 0x0d, 0x4a, 0x3e, 0x95, 0x19, 0x13, 0x90, 0xaf, 0x63, 0xea, 0x6b, 0xd1, 0xd5, 0x03, 0x4f, + 0x82, 0x2e, 0xf7, 0x74, 0xf5, 0x82, 0xd3, 0xe9, 0xa4, 0xbc, 0x34, 0x10, 0xf1, 0x23, 0x07, 0xd1, + 0x8d, 0xed, 0x61, 0x92, 0x09, 0x5d, 0xeb, 0xa9, 0x60, 0x51, 0x5e, 0x42, 0xee, 0x4d, 0x78, 0xad, + 0xf1, 0x25, 0x1d, 0xc8, 0xc7, 0xcb, 0xa2, 0xa8, 0x0b, 0x06, 0xd5, 0xf5, 0x66, 0x4f, 0x5d, 0xea, + 0x00, 0xf6, 0x54, 0xd7, 0xc3, 0x9d, 0x34, 0xe2, 0x77, 0x80, 0x45, 0x7d, 0x93, 0x83, 0xea, 0x7b, + 0xb5, 0xa7, 0xbe, 0xf9, 0xc6, 0x5e, 0x6f, 0x3d, 0x09, 0x9e, 0xe4, 0x5d, 0x98, 0x96, 0x10, 0x9c, + 0x1f, 0xe2, 0x71, 0x02, 0xfe, 0x82, 0xf5, 0x1e, 0x46, 0x62, 0xeb, 0xe9, 0x98, 0x55, 0x64, 0x95, + 0x9a, 0x4b, 0xc7, 0xb4, 0x46, 0x9d, 0x94, 0x0a, 0x1d, 0x99, 0x7c, 0x02, 0x93, 0x95, 0x16, 0xfb, + 0x10, 0xaf, 0xed, 0x84, 0x54, 0x04, 0x9e, 0xca, 0x53, 0x2d, 0xa5, 0x44, 0x11, 0x55, 0xfe, 0x8e, + 0x58, 0x5c, 0xa4, 0x1a, 0xca, 0x0a, 0x05, 0xeb, 0x3c, 0xee, 0xef, 0x15, 0x32, 0x2c, 0x83, 0x52, + 0x5f, 0x48, 0x39, 0x59, 0x52, 0xd8, 0x8b, 0x54, 0x0d, 0x0c, 0x6a, 0x8b, 0x09, 0x91, 0x48, 0xd5, + 0xa0, 0xf2, 0x24, 0xef, 0xc1, 0xa4, 0xc8, 0xb3, 0x56, 0xb0, 0x36, 0x82, 0xc5, 0x7c, 0xfc, 0x84, + 0xac, 0x4c, 0xc9, 0x66, 0x3b, 0x7e, 0x22, 0xbc, 0x20, 0xc6, 0x27, 0x5f, 0x85, 0x85, 0x5d, 0xb7, + 0xdd, 0xf0, 0x1e, 0x06, 0x62, 0x99, 0x12, 0x8a, 0x6e, 0x2e, 0x8e, 0xbd, 0x7c, 0xc8, 0xcb, 0x6d, + 0x69, 0x32, 0xf5, 0x28, 0xbe, 0x54, 0x0e, 0xe4, 0xa7, 0x7a, 0x38, 0x73, 0x09, 0x22, 0x83, 0x24, + 0x68, 0xb9, 0x47, 0x82, 0x7a, 0xab, 0x4f, 0x8a, 0x53, 0x6a, 0x35, 0xc4, 0x03, 0x22, 0xac, 0x0c, + 0xb1, 0x56, 0x7d, 0xe4, 0xb9, 0xed, 0xc5, 0x79, 0xd4, 0x85, 0xcf, 0x25, 0x2f, 0xaf, 0x20, 0x1e, + 0x7f, 0xb0, 0x4c, 0x3e, 0xbb, 0xa8, 0xdb, 0x2f, 0xdf, 0xf6, 0x34, 0xc7, 0x5d, 0x0a, 0x6b, 0xf2, + 0x09, 0x4c, 0xb1, 0xff, 0xa3, 0x6d, 0xd5, 0x82, 0x16, 0x8b, 0xa0, 0x60, 0x8a, 0x7a, 0x70, 0x8c, + 0x30, 0x11, 0x5c, 0xca, 0x8e, 0x4b, 0x63, 0x45, 0xde, 0x06, 0x60, 0x36, 0xa2, 0x50, 0xc7, 0x67, + 0xe3, 0x6c, 0x7d, 0x68, 0x4a, 0xf6, 0x2a, 0xe2, 0x18, 0x99, 0xed, 0xf5, 0xd8, 0xaf, 0x5a, 0xb7, + 0xe1, 0xb1, 0xb9, 0x71, 0x0e, 0x69, 0x71, 0xaf, 0x87, 0xb4, 0x01, 0x87, 0xab, 0xd2, 0xa1, 0xa0, + 0x93, 0x55, 0x98, 0xc5, 0x0c, 0x26, 0x95, 0x06, 0x6d, 0x87, 0x78, 0x0e, 0xb3, 0x78, 0x5e, 0x39, + 0xe1, 0x61, 0x45, 0xb6, 0x1b, 0x95, 0xa9, 0x76, 0x59, 0x82, 0x8c, 0x04, 0x30, 0x1f, 0x6b, 0x97, + 0xf8, 0xbc, 0x68, 0x11, 0x3b, 0x49, 0x9e, 0xe9, 0xf5, 0x62, 0x70, 0x7d, 0xcc, 0x46, 0x44, 0x51, + 0x5c, 0xd2, 0xbd, 0xa9, 0x56, 0x98, 0xc6, 0x9d, 0x58, 0x40, 0xee, 0x16, 0xab, 0x7a, 0x6e, 0x97, + 0x60, 0xf1, 0x02, 0x7e, 0x01, 0x0e, 0xf3, 0x41, 0xbd, 0x63, 0x27, 0xb2, 0xc2, 0x68, 0x07, 0x37, + 0xbd, 0xd4, 0xe4, 0x3b, 0x70, 0x36, 0x7a, 0x65, 0x9a, 0x17, 0x09, 0xb9, 0xbe, 0x78, 0x4a, 0x4d, + 0xdc, 0xd8, 0x8b, 0xaa, 0xee, 0x11, 0xe9, 0xf4, 0x2a, 0xcc, 0xbf, 0x63, 0x00, 0xe9, 0xfd, 0xce, + 0xa1, 0x1d, 0xd9, 0x6f, 0x29, 0xf1, 0xcc, 0xea, 0x4b, 0x7a, 0x51, 0x56, 0x27, 0x75, 0x7d, 0x8b, + 0x23, 0x9f, 0x2f, 0x6b, 0xf6, 0x54, 0xdf, 0x20, 0x38, 0xf3, 0xcf, 0x0c, 0x58, 0x48, 0x9b, 0x51, + 0x27, 0x64, 0x51, 0x37, 0x13, 0xb1, 0x73, 0xe8, 0x99, 0xe6, 0xb1, 0x73, 0x51, 0xc4, 0xdc, 0x12, + 0x8c, 0xb2, 0x2f, 0x90, 0xe7, 0x8b, 0x68, 0xb4, 0xb1, 0x4f, 0x0c, 0x2c, 0x0e, 0x67, 0x08, 0xfc, + 0xea, 0x1e, 0xb3, 0xea, 0x46, 0x39, 0x02, 0x0e, 0x98, 0xc5, 0xe1, 0x0c, 0x81, 0x19, 0x87, 0xd2, + 0x98, 0x41, 0x04, 0x66, 0x33, 0x06, 0x16, 0x87, 0x93, 0xcb, 0x30, 0xbe, 0xd9, 0x5e, 0xa3, 0xce, + 0x03, 0x99, 0x6d, 0x0a, 0x3d, 0xe9, 0x5e, 0xdb, 0x6e, 0x32, 0x98, 0x25, 0x0b, 0xcd, 0x5f, 0x36, 0x60, 0xae, 0x67, 0x32, 0x9f, 0x9c, 0x28, 0x7e, 0x70, 0x94, 0xd0, 0x30, 0xdf, 0xc7, 0x9b, 0x3f, 0x92, 0xde, 0x7c, 0xf3, 0x77, 0x47, 0xe0, 0x7c, 0x1f, 0xdb, 0x2a, 0x8e, 0xf0, 0x33, 0x4e, 0x8c, 0xf0, 0xfb, 0x06, 0xb3, 0x65, 0x1c, 0xb7, 0x15, 0x6c, 0x79, 0x71, 0x8b, 0xe3, 0x60, 0x08, 0x2c, @@ -14929,364 +15097,364 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x99, 0xf5, 0xc4, 0xd8, 0x65, 0xff, 0x15, 0x89, 0xb1, 0xd3, 0x23, 0x5b, 0x46, 0x9e, 0x6a, 0x64, 0x4b, 0xfa, 0xd9, 0xf1, 0xe8, 0x93, 0x9c, 0xc1, 0x17, 0x61, 0xba, 0x46, 0x1d, 0xbf, 0x7e, 0x58, 0x08, 0xf8, 0x20, 0x8d, 0xc5, 0x39, 0x9e, 0x02, 0x2c, 0xb0, 0x9d, 0xa0, 0x77, 0x2c, 0x34, 0x1a, - 0xf3, 0xfb, 0x19, 0x3d, 0x34, 0xf0, 0x5f, 0x45, 0x79, 0xb9, 0x0a, 0xa3, 0xbb, 0x87, 0xd4, 0x97, - 0xaa, 0x07, 0x1b, 0xf2, 0x90, 0x01, 0xd4, 0x86, 0x20, 0x06, 0xb9, 0x03, 0x33, 0x55, 0xde, 0x7f, - 0xb2, 0x53, 0x46, 0xe2, 0x85, 0xaa, 0x23, 0xcc, 0xa9, 0x94, 0x5e, 0x49, 0x50, 0x99, 0x3f, 0x05, - 0x53, 0x6a, 0xa3, 0x51, 0xb1, 0xb0, 0xdf, 0x62, 0x66, 0x73, 0xc5, 0xc2, 0x00, 0x16, 0x87, 0x9f, - 0xf8, 0x08, 0x44, 0xdc, 0x9b, 0xd9, 0x93, 0x7a, 0x93, 0x55, 0x8e, 0x72, 0xab, 0x54, 0x8e, 0xbf, - 0xd5, 0xca, 0x43, 0x06, 0xb0, 0x38, 0xfc, 0xa9, 0x56, 0xfe, 0x9f, 0xc8, 0x1c, 0x64, 0x6f, 0xc1, - 0x44, 0xbc, 0x40, 0xc7, 0xa9, 0x76, 0xe7, 0xd3, 0x96, 0xdd, 0x18, 0x93, 0x55, 0xb5, 0x43, 0xfd, - 0x3d, 0x2d, 0x8e, 0xf8, 0x01, 0x03, 0xa8, 0x55, 0x21, 0xc6, 0x69, 0xc6, 0xf5, 0x06, 0x8c, 0x17, - 0x84, 0x1b, 0x91, 0x0f, 0x28, 0x8f, 0x95, 0xee, 0xf1, 0x19, 0x4a, 0x2c, 0xf3, 0x07, 0x06, 0x9c, - 0x4d, 0xb5, 0xdb, 0x59, 0xad, 0x7c, 0x83, 0xa0, 0x88, 0x75, 0x72, 0x77, 0xc0, 0x31, 0x4e, 0x13, - 0x13, 0x3d, 0xfc, 0xb7, 0x98, 0x2f, 0xc1, 0x44, 0xe4, 0x35, 0x22, 0x0b, 0x72, 0xe8, 0xf0, 0x6c, - 0x49, 0x3a, 0x1f, 0xfe, 0xc2, 0x80, 0x31, 0xd6, 0x84, 0x67, 0xf6, 0x8a, 0x71, 0xfa, 0x49, 0x23, - 0xfb, 0xa4, 0xa1, 0x2e, 0x16, 0xff, 0xd6, 0x18, 0x40, 0x8c, 0x4c, 0xf6, 0x60, 0x66, 0xb3, 0x52, - 0x2a, 0x2a, 0xe6, 0xa7, 0x9e, 0x63, 0x2d, 0x7a, 0x98, 0x84, 0x23, 0x1c, 0xc5, 0x3a, 0xc6, 0x73, - 0x1b, 0xf5, 0x74, 0xd3, 0x34, 0xc1, 0x91, 0xd5, 0x51, 0x2b, 0xac, 0xaf, 0x29, 0x75, 0x64, 0x86, - 0xac, 0x23, 0x70, 0x5a, 0xcd, 0x3e, 0x75, 0xe8, 0x1c, 0xc9, 0x21, 0xe4, 0xef, 0xe2, 0x2a, 0xa6, - 0xd4, 0x92, 0x1d, 0x5c, 0xcb, 0xcb, 0xa2, 0x96, 0xe7, 0xf8, 0xf2, 0x97, 0x5e, 0x4f, 0x0f, 0xd7, - 0x58, 0x72, 0x47, 0x4e, 0x94, 0xdc, 0xbf, 0x61, 0xc0, 0x18, 0x5f, 0x26, 0xc5, 0x68, 0xf5, 0x59, - 0x88, 0x77, 0x9f, 0xce, 0x42, 0x9c, 0x47, 0xcd, 0xa5, 0x39, 0xcc, 0x78, 0x19, 0x29, 0xc1, 0x58, - 0x2d, 0x74, 0xc2, 0xae, 0x0c, 0xba, 0x97, 0xc7, 0xc9, 0xb8, 0x91, 0xe4, 0x25, 0x71, 0x64, 0x79, - 0x80, 0xbf, 0x55, 0x2e, 0x1c, 0x83, 0x54, 0xe2, 0xa0, 0xe6, 0xf1, 0x13, 0x83, 0x9a, 0x65, 0x20, - 0xf8, 0xb8, 0x08, 0x6a, 0xd6, 0x43, 0x99, 0xd7, 0x60, 0x42, 0x84, 0x4a, 0xaf, 0x1c, 0x09, 0x77, - 0x91, 0x74, 0xfb, 0x46, 0x70, 0xe5, 0x25, 0x4a, 0x0e, 0xb2, 0xf7, 0xb4, 0x57, 0x56, 0x22, 0x44, - 0xb2, 0x09, 0x13, 0xf1, 0x85, 0x6b, 0x3d, 0x6f, 0x48, 0x04, 0x17, 0x77, 0x89, 0x64, 0xbc, 0x65, - 0xca, 0xfd, 0xea, 0x98, 0x87, 0xf9, 0x8b, 0x06, 0xe4, 0x93, 0xf2, 0x82, 0xef, 0xdf, 0xcb, 0x2b, - 0xea, 0x51, 0x88, 0x23, 0x7f, 0xff, 0x3e, 0xba, 0xd3, 0xae, 0xbf, 0xbb, 0xae, 0xa0, 0x93, 0x65, - 0xc8, 0xb1, 0x69, 0xd7, 0x4e, 0x3c, 0x80, 0xdf, 0x15, 0x30, 0x35, 0xc6, 0x45, 0xe2, 0x29, 0xb3, - 0xf6, 0x9f, 0x66, 0x61, 0x52, 0x19, 0x2c, 0x72, 0x15, 0x72, 0x95, 0x60, 0xcd, 0xab, 0xdf, 0xa7, - 0x0d, 0x71, 0x74, 0x3e, 0xfd, 0xf8, 0x78, 0x69, 0xc2, 0x0d, 0xec, 0x26, 0x02, 0xad, 0xa8, 0x98, - 0xac, 0xc0, 0x34, 0xff, 0x4b, 0xe6, 0xae, 0xc9, 0xc4, 0xc7, 0x7e, 0x1c, 0x59, 0x66, 0xad, 0x51, - 0xcd, 0x04, 0x8d, 0x84, 0x7c, 0x13, 0x80, 0x03, 0x86, 0x7c, 0xae, 0x57, 0x4e, 0xe0, 0xb3, 0xa2, - 0x82, 0x94, 0x57, 0x7b, 0x15, 0x86, 0xe4, 0x5b, 0xfc, 0xf6, 0xb9, 0x14, 0xae, 0x93, 0xc3, 0xf0, - 0x4d, 0x19, 0xb3, 0xc7, 0xf8, 0xdb, 0xe9, 0x61, 0xf3, 0x2a, 0x4b, 0xf2, 0x3d, 0x03, 0x2e, 0x5a, - 0xb4, 0xee, 0x3d, 0xa0, 0xfe, 0x51, 0x21, 0x44, 0x2c, 0xb5, 0xc6, 0x93, 0x63, 0xf4, 0x6f, 0x89, - 0x1a, 0x5f, 0xf3, 0x05, 0x17, 0xbc, 0x16, 0xdc, 0xea, 0x84, 0xf6, 0x80, 0x26, 0x0c, 0xa8, 0xd2, - 0xfc, 0xef, 0x0c, 0x65, 0x0a, 0x90, 0x0d, 0xcc, 0x07, 0xcb, 0x85, 0x45, 0x1c, 0x83, 0x44, 0x16, - 0x9e, 0x84, 0x5b, 0x74, 0x7f, 0xe5, 0x39, 0x71, 0xca, 0x3d, 0x1f, 0x89, 0x5c, 0x22, 0x4f, 0x2c, - 0x07, 0x92, 0x0f, 0xc5, 0xcb, 0xca, 0x27, 0x3f, 0x59, 0x21, 0x97, 0x9a, 0x11, 0x36, 0x46, 0xca, - 0x7b, 0xca, 0x5f, 0x10, 0x61, 0xa0, 0x59, 0xed, 0xd9, 0x34, 0x06, 0x62, 0xed, 0x88, 0xd6, 0x98, - 0xf8, 0xa6, 0x86, 0x22, 0xad, 0xbf, 0x9a, 0x81, 0x7c, 0x72, 0xe2, 0x91, 0x0f, 0x60, 0x4a, 0x5e, - 0x9e, 0x5f, 0x75, 0x44, 0x4a, 0x9c, 0x29, 0x91, 0x92, 0x46, 0xc0, 0xed, 0x43, 0x47, 0x7b, 0x88, - 0x44, 0x23, 0x60, 0x0b, 0xf2, 0x96, 0xb8, 0x00, 0xa8, 0x4c, 0xa0, 0xd0, 0x0b, 0x3b, 0x89, 0x57, - 0x94, 0x24, 0x1a, 0x79, 0x0b, 0xb2, 0xeb, 0x77, 0x0a, 0x22, 0x3c, 0x4a, 0xea, 0x97, 0xf5, 0x3b, - 0x05, 0x7e, 0xa4, 0xc5, 0x4f, 0xaa, 0xf4, 0x73, 0x33, 0x86, 0x4f, 0xd6, 0x94, 0x7c, 0x04, 0x63, - 0x5a, 0x76, 0x4d, 0x09, 0x8e, 0x3e, 0xee, 0xe4, 0xc4, 0x04, 0xea, 0x2b, 0x2d, 0xe6, 0xbf, 0x97, - 0x85, 0x89, 0xa8, 0x7e, 0x42, 0x00, 0xed, 0x0d, 0x11, 0x21, 0x85, 0x7f, 0x93, 0x0b, 0x90, 0x93, - 0x26, 0x86, 0x7c, 0xce, 0x39, 0x10, 0xe6, 0xc5, 0x22, 0x48, 0x5b, 0x82, 0x9b, 0x17, 0x96, 0xfc, - 0x49, 0x6e, 0x42, 0x64, 0x28, 0xf4, 0xb3, 0x28, 0x46, 0xd8, 0x80, 0x59, 0x11, 0x1a, 0x99, 0x81, - 0x8c, 0xcb, 0x2f, 0x77, 0x4d, 0x58, 0x19, 0xb7, 0x41, 0x3e, 0x80, 0x9c, 0xd3, 0x68, 0xd0, 0x86, - 0xed, 0xc8, 0xf3, 0x84, 0x41, 0x42, 0x93, 0x63, 0xdc, 0xb8, 0x46, 0x47, 0xaa, 0x42, 0x48, 0x0a, - 0x30, 0x81, 0xaf, 0x96, 0x77, 0x03, 0xda, 0x18, 0x62, 0x79, 0x88, 0x39, 0xe4, 0x18, 0xd9, 0x76, - 0x40, 0x1b, 0xe4, 0x35, 0x18, 0x61, 0xa3, 0x29, 0xd6, 0x83, 0xe8, 0xcd, 0x99, 0xcd, 0xad, 0x2a, - 0xef, 0xb0, 0xd5, 0x33, 0x16, 0x22, 0x90, 0x57, 0x20, 0xdb, 0x5d, 0xde, 0x17, 0x9a, 0x3e, 0x1f, - 0xe7, 0x06, 0x89, 0xd0, 0x58, 0x31, 0xb9, 0x05, 0xb9, 0x87, 0x7a, 0x5a, 0x89, 0xb3, 0x89, 0x61, - 0x8c, 0xf0, 0x23, 0xc4, 0x95, 0x1c, 0x8c, 0xf1, 0xd3, 0x50, 0xf3, 0x45, 0x80, 0xb8, 0xea, 0xde, - 0x60, 0x36, 0xf3, 0x9b, 0x30, 0x11, 0x55, 0x49, 0x5e, 0x00, 0xb8, 0x4f, 0x8f, 0xec, 0x43, 0xa7, - 0xdd, 0x68, 0x72, 0x83, 0x73, 0xca, 0x9a, 0xb8, 0x4f, 0x8f, 0x56, 0x11, 0x40, 0xce, 0xc3, 0x78, - 0x87, 0x8d, 0xaa, 0x7c, 0x03, 0xcc, 0x1a, 0xeb, 0x74, 0xf7, 0x98, 0x84, 0x2e, 0xc2, 0x38, 0x3a, - 0x51, 0xc4, 0x44, 0x9b, 0xb6, 0xe4, 0x4f, 0xf3, 0x37, 0x32, 0x98, 0x28, 0x4c, 0x69, 0x27, 0x79, - 0x19, 0xa6, 0xeb, 0x3e, 0xc5, 0xe5, 0x08, 0x1f, 0x90, 0x13, 0xf5, 0x4c, 0xc5, 0xc0, 0x4a, 0x83, - 0x5c, 0x86, 0xd9, 0xf8, 0x51, 0x32, 0xbb, 0xbe, 0x27, 0x72, 0xc0, 0x4c, 0x59, 0xd3, 0x1d, 0xf9, - 0x2a, 0x59, 0x71, 0x0f, 0x2f, 0x25, 0xe6, 0xd5, 0x2b, 0xff, 0x61, 0x94, 0xbf, 0xdc, 0x9a, 0x55, - 0xe0, 0x78, 0x4c, 0x78, 0x0e, 0xc6, 0x1c, 0xe7, 0xa0, 0xeb, 0xf2, 0x0b, 0x52, 0x53, 0x96, 0xf8, - 0x45, 0x5e, 0x87, 0xb9, 0xc0, 0x3d, 0x68, 0x3b, 0x61, 0xd7, 0x17, 0x99, 0xda, 0xa8, 0x8f, 0x22, - 0x35, 0x6d, 0xe5, 0xa3, 0x82, 0x22, 0x87, 0x93, 0x37, 0x81, 0xa8, 0xf5, 0x79, 0x7b, 0xdf, 0xa6, - 0x75, 0x2e, 0x6a, 0x53, 0xd6, 0x9c, 0x52, 0xb2, 0x89, 0x05, 0xe4, 0x25, 0x98, 0xf2, 0x69, 0x80, - 0x26, 0x19, 0x76, 0x1b, 0xe6, 0xd1, 0xb4, 0x26, 0x25, 0xec, 0x1e, 0x3d, 0x32, 0x57, 0x60, 0xae, - 0x67, 0x3e, 0x92, 0x37, 0xb9, 0x75, 0x2f, 0xd6, 0xe7, 0x29, 0xbe, 0x99, 0x61, 0x4a, 0x2a, 0xf1, - 0x3e, 0x3f, 0x47, 0x32, 0xdb, 0x30, 0xa5, 0xea, 0xd7, 0x13, 0xb2, 0xeb, 0x9c, 0x8b, 0x5e, 0xb4, - 0x9f, 0x58, 0x19, 0x7b, 0x7c, 0xbc, 0x94, 0x71, 0x1b, 0x78, 0xa3, 0xe1, 0x0a, 0xe4, 0xa4, 0x95, - 0xa0, 0xbe, 0xc9, 0x2d, 0x0c, 0xca, 0x23, 0x2b, 0x2a, 0x35, 0x5f, 0x83, 0x71, 0xa1, 0x42, 0x07, - 0x3b, 0xb4, 0xcc, 0x9f, 0xcd, 0xc0, 0xac, 0x45, 0xd9, 0x04, 0x17, 0xaf, 0x5d, 0x7f, 0xce, 0x9e, - 0x67, 0xd3, 0xbe, 0x6d, 0x40, 0x32, 0xab, 0xdf, 0x31, 0x60, 0x3e, 0x05, 0xf7, 0x53, 0xa5, 0x28, - 0xbe, 0x0d, 0x13, 0x25, 0xd7, 0x69, 0x16, 0x1a, 0x8d, 0xe8, 0x8e, 0x06, 0x5a, 0x83, 0x0d, 0x36, - 0x9d, 0x1c, 0x06, 0x55, 0x17, 0xd3, 0x08, 0x95, 0x5c, 0x13, 0x42, 0x11, 0xa7, 0xf7, 0x97, 0x0f, - 0xc0, 0x01, 0x6f, 0x53, 0xfc, 0xfc, 0x1b, 0xde, 0xeb, 0xe7, 0xc0, 0x38, 0xaa, 0xe6, 0x99, 0x1d, - 0xba, 0xf4, 0x7b, 0xfd, 0xc9, 0xcf, 0x1b, 0x6a, 0xdb, 0xf9, 0x8b, 0x19, 0x38, 0x97, 0x4e, 0xf8, - 0x69, 0xb3, 0x4d, 0x63, 0x26, 0x31, 0xe5, 0x8d, 0x3d, 0xcc, 0x36, 0xcd, 0xd3, 0x8e, 0x21, 0x7e, - 0x8c, 0x40, 0xf6, 0x61, 0x7a, 0xcd, 0x09, 0xc2, 0x55, 0xea, 0xf8, 0xe1, 0x1e, 0x75, 0xc2, 0x21, - 0x2c, 0xd8, 0x57, 0xe4, 0x5b, 0xc9, 0xb8, 0xa8, 0x1d, 0x4a, 0xca, 0x84, 0x81, 0xa7, 0xb3, 0x8d, - 0x04, 0x65, 0x64, 0x08, 0x41, 0xf9, 0x49, 0x98, 0xad, 0xd1, 0x96, 0xd3, 0x39, 0xf4, 0x7c, 0x2a, - 0x7c, 0xf0, 0xd7, 0x61, 0x3a, 0x02, 0xa5, 0x4a, 0x8b, 0x5e, 0xac, 0xe1, 0x2b, 0x1d, 0x11, 0xab, - 0x12, 0xbd, 0xd8, 0xfc, 0x5b, 0x19, 0x38, 0x5f, 0xa8, 0x8b, 0x63, 0x35, 0x51, 0x20, 0x4f, 0xff, - 0x3f, 0xe3, 0xba, 0xc9, 0x0d, 0x98, 0x58, 0x77, 0x1e, 0xad, 0x51, 0x27, 0xa0, 0x81, 0xc8, 0xf5, - 0xc9, 0xcd, 0x2f, 0xe7, 0x51, 0x7c, 0xda, 0x64, 0xc5, 0x38, 0xea, 0x66, 0x73, 0xe4, 0x09, 0x37, - 0x9b, 0x26, 0x8c, 0xad, 0x7a, 0xcd, 0x86, 0x58, 0x9c, 0xc4, 0xf9, 0xc7, 0x21, 0x42, 0x2c, 0x51, - 0x62, 0xfe, 0x99, 0x01, 0x33, 0x51, 0x8b, 0xb1, 0x09, 0x9f, 0x79, 0x97, 0x5c, 0x86, 0x71, 0xac, - 0x28, 0x7a, 0x28, 0x1e, 0x17, 0x8d, 0x26, 0x03, 0xd9, 0x6e, 0xc3, 0x92, 0x85, 0x6a, 0x4f, 0x8c, - 0x3e, 0x59, 0x4f, 0x98, 0x7f, 0x1f, 0x8f, 0x56, 0xd4, 0xaf, 0x64, 0x2b, 0x91, 0xd2, 0x10, 0x63, - 0xc8, 0x86, 0x64, 0x9e, 0xda, 0x90, 0x64, 0xfb, 0x0e, 0xc9, 0x77, 0x33, 0x30, 0x19, 0x35, 0xf6, - 0x73, 0x96, 0x10, 0x27, 0xfa, 0xae, 0xa1, 0x6e, 0x2a, 0xd5, 0x14, 0x5d, 0x21, 0x2e, 0x04, 0x7d, - 0x08, 0x63, 0x62, 0x32, 0x19, 0x89, 0x53, 0xf0, 0xc4, 0xe8, 0xae, 0xcc, 0x08, 0xd6, 0x63, 0x38, - 0xa0, 0x81, 0x25, 0xe8, 0xf0, 0x2a, 0xd8, 0x2e, 0xdd, 0x13, 0x27, 0x6d, 0xcf, 0xec, 0x1a, 0x95, - 0x7e, 0x15, 0x2c, 0xfe, 0xb0, 0xa1, 0x56, 0xa7, 0xe3, 0x51, 0xc8, 0x27, 0x49, 0x4e, 0x4e, 0x39, - 0x54, 0xed, 0xee, 0x89, 0x27, 0x7d, 0x31, 0xe5, 0x50, 0xa7, 0xbb, 0x67, 0x31, 0x18, 0xb9, 0x0c, - 0x23, 0x55, 0xdf, 0x7d, 0x80, 0x5f, 0x2d, 0x5e, 0x34, 0xee, 0xf8, 0xee, 0x03, 0xf5, 0x38, 0x97, - 0x95, 0xe3, 0x86, 0x76, 0xad, 0x86, 0xe1, 0xf5, 0x68, 0x58, 0x8b, 0x0d, 0x6d, 0x33, 0x48, 0x26, - 0x1b, 0x94, 0x68, 0x6c, 0xa9, 0x5c, 0xa1, 0x8e, 0x2f, 0xd2, 0xe3, 0x08, 0x75, 0x86, 0x4b, 0xe5, - 0x1e, 0x82, 0xf9, 0x8b, 0x17, 0x96, 0x8a, 0x44, 0x9a, 0x40, 0x94, 0x9f, 0x72, 0x02, 0x9f, 0xbc, - 0xc7, 0xbb, 0x24, 0xbd, 0x6f, 0x2a, 0x6b, 0x5b, 0x9d, 0xcd, 0x29, 0x7c, 0x9f, 0xa6, 0x8f, 0xb0, - 0x2a, 0x2e, 0x4b, 0xa3, 0x23, 0x23, 0x77, 0x22, 0x33, 0x79, 0xff, 0x04, 0xf8, 0x65, 0xea, 0xc8, - 0x9d, 0x11, 0x33, 0x21, 0xef, 0xc3, 0xa4, 0x7a, 0x69, 0x82, 0x87, 0xf6, 0x3f, 0xcf, 0x2f, 0x29, - 0xf7, 0x49, 0xba, 0xac, 0x12, 0x90, 0x3d, 0x38, 0x5f, 0xf4, 0xda, 0x41, 0xb7, 0x45, 0x1b, 0xda, - 0x49, 0x70, 0xa5, 0x84, 0x1b, 0xcc, 0x09, 0x1e, 0x81, 0x5d, 0x17, 0x28, 0x22, 0x46, 0x5f, 0x86, - 0x18, 0xe9, 0x1b, 0x90, 0x7e, 0x8c, 0xc8, 0x16, 0x4c, 0xd6, 0x0a, 0xeb, 0x6b, 0x32, 0xf0, 0x7d, - 0x52, 0x57, 0x1b, 0x71, 0x49, 0x89, 0x4d, 0x0c, 0x7e, 0xf7, 0xd3, 0x69, 0x35, 0x65, 0x84, 0x8b, - 0xea, 0x7d, 0x54, 0x90, 0xcd, 0x2f, 0xa8, 0xf2, 0x2d, 0xcc, 0x8d, 0x81, 0xf2, 0x6d, 0xfe, 0x37, - 0x63, 0x30, 0x9b, 0xa8, 0x4e, 0xec, 0x7f, 0x8c, 0x9e, 0xfd, 0x4f, 0x0d, 0x80, 0xbb, 0xb2, 0x86, - 0xf4, 0x39, 0xc9, 0xe0, 0xc8, 0x49, 0x11, 0xaf, 0x1d, 0x8d, 0x95, 0xc2, 0x86, 0x31, 0xe5, 0x92, - 0x30, 0xa4, 0xcf, 0x31, 0x62, 0xca, 0x85, 0x49, 0x61, 0x1a, 0xb3, 0x21, 0x4b, 0x30, 0x8a, 0xb7, - 0xd9, 0xd5, 0xd8, 0x54, 0x97, 0x01, 0x2c, 0x0e, 0x27, 0x2f, 0xc3, 0x18, 0x5b, 0x9c, 0x2b, 0x25, - 0x31, 0xb9, 0x50, 0x67, 0xb1, 0xd5, 0x9b, 0xad, 0x84, 0xa2, 0x88, 0xdc, 0x86, 0x29, 0xfe, 0x97, - 0xb8, 0xbc, 0x33, 0xa6, 0xc7, 0x6d, 0xd8, 0x6e, 0x43, 0xde, 0xdf, 0xd1, 0xf0, 0x98, 0xd5, 0x5a, - 0xeb, 0xee, 0x89, 0xd7, 0xa2, 0xc6, 0x63, 0xab, 0x35, 0xe0, 0x40, 0x7c, 0x23, 0x25, 0x42, 0x60, - 0x6b, 0xa4, 0x88, 0x47, 0xca, 0xe1, 0x5e, 0x05, 0xd7, 0x48, 0x1e, 0x8a, 0x64, 0x89, 0x12, 0x72, - 0x95, 0x7b, 0x95, 0xd1, 0xdc, 0xe0, 0x49, 0x3b, 0xd1, 0x0f, 0x8c, 0x1b, 0x5e, 0xb4, 0x39, 0xa2, - 0x62, 0x56, 0x39, 0xfb, 0xbb, 0xdc, 0x72, 0xdc, 0xa6, 0x10, 0x57, 0xac, 0x1c, 0x71, 0x29, 0x83, - 0x5a, 0x31, 0x02, 0x79, 0x17, 0x66, 0xd8, 0x8f, 0xa2, 0xd7, 0x6a, 0x79, 0x6d, 0x64, 0x3f, 0x19, - 0x5f, 0xb3, 0x44, 0x92, 0x3a, 0x16, 0xf1, 0x5a, 0x12, 0xb8, 0x4c, 0x4f, 0xe1, 0x19, 0x53, 0x97, - 0xfb, 0xbb, 0xa7, 0x62, 0x3d, 0x85, 0xa4, 0x01, 0x87, 0x5b, 0x2a, 0x12, 0x79, 0x1b, 0xa6, 0xd9, - 0xcf, 0xbb, 0xee, 0x03, 0xca, 0x2b, 0x9c, 0x8e, 0x8f, 0xfb, 0x90, 0xea, 0x80, 0x95, 0xf0, 0xfa, - 0x74, 0x4c, 0xf2, 0x31, 0x9c, 0x45, 0x4e, 0x75, 0xaf, 0x43, 0x1b, 0x85, 0xfd, 0x7d, 0xb7, 0xe9, - 0xf2, 0x77, 0xad, 0xf9, 0x35, 0x15, 0xf4, 0x31, 0xf2, 0x8a, 0x11, 0xc3, 0x76, 0x62, 0x14, 0x2b, - 0x9d, 0x92, 0xec, 0x42, 0xbe, 0xd8, 0x0d, 0x42, 0xaf, 0x55, 0x08, 0x43, 0xdf, 0xdd, 0xeb, 0x86, - 0x34, 0x58, 0x9c, 0xd5, 0x2e, 0x73, 0xb0, 0xc9, 0x11, 0x15, 0x72, 0x3f, 0x43, 0x1d, 0x29, 0x6c, - 0x27, 0x22, 0xb1, 0x7a, 0x98, 0x98, 0xff, 0xb5, 0x01, 0xd3, 0x1a, 0x29, 0x79, 0x0b, 0xa6, 0xee, - 0xf8, 0x2e, 0x6d, 0x37, 0x9a, 0x47, 0xca, 0x06, 0x08, 0xad, 0xe3, 0x7d, 0x01, 0xe7, 0x5f, 0xad, - 0xa1, 0x45, 0xfe, 0x83, 0x4c, 0x6a, 0x40, 0xcc, 0x0d, 0x1e, 0x22, 0x2d, 0x04, 0x34, 0x1b, 0xdf, - 0x2e, 0x43, 0x01, 0x15, 0xd2, 0xa9, 0xa0, 0x90, 0xf7, 0x60, 0x8c, 0x9f, 0x46, 0x89, 0xe8, 0x8c, - 0x0b, 0x69, 0x9f, 0xc9, 0xc3, 0xf1, 0x51, 0x10, 0xf1, 0x10, 0x3c, 0xb0, 0x04, 0x91, 0xf9, 0x2b, - 0x06, 0x90, 0x5e, 0xd4, 0x13, 0xfc, 0x29, 0x27, 0x1e, 0xae, 0x7f, 0x18, 0xcd, 0xc6, 0xac, 0xe6, - 0x13, 0x64, 0x35, 0xf1, 0x02, 0xde, 0xf1, 0x62, 0xd6, 0xa9, 0x0e, 0x1e, 0x5e, 0x6c, 0xfe, 0xf5, - 0x0c, 0x40, 0x8c, 0x4d, 0xbe, 0xcc, 0xb3, 0x2e, 0x7e, 0xdc, 0x75, 0x9a, 0xee, 0xbe, 0xab, 0x67, - 0x39, 0x40, 0x26, 0x3f, 0x29, 0x4b, 0x2c, 0x1d, 0x91, 0x7c, 0x00, 0xb3, 0xb5, 0xaa, 0x4e, 0xab, - 0x64, 0x98, 0x0b, 0x3a, 0x76, 0x82, 0x3c, 0x89, 0x8d, 0x51, 0x58, 0xea, 0x68, 0xf0, 0x28, 0x2c, - 0x3e, 0x10, 0xa2, 0x84, 0x29, 0x96, 0x5a, 0x15, 0x9f, 0xb5, 0x6a, 0xd0, 0x46, 0xa5, 0x24, 0xb4, - 0x14, 0xb6, 0x2e, 0xe8, 0xd8, 0x1d, 0x5e, 0x80, 0x6f, 0x29, 0x69, 0x78, 0x71, 0x47, 0x8e, 0xf6, - 0x09, 0xb9, 0xff, 0x35, 0x74, 0x27, 0xb5, 0xbc, 0x90, 0x8a, 0x5d, 0xf4, 0x33, 0x6b, 0x4f, 0xc7, - 0x47, 0x99, 0xa3, 0x5a, 0x24, 0xb1, 0xf6, 0x75, 0x1c, 0x63, 0xe7, 0x56, 0x6c, 0xfc, 0xf2, 0x43, - 0x4d, 0x79, 0x94, 0xa9, 0x98, 0x7e, 0x7f, 0xcf, 0x80, 0xb3, 0xa9, 0xb4, 0xe4, 0x3a, 0x40, 0xec, - 0xab, 0x10, 0xbd, 0xc4, 0x9f, 0xb4, 0x8a, 0xa0, 0x96, 0x82, 0x41, 0xbe, 0x91, 0xf4, 0x32, 0x9c, - 0xbc, 0x10, 0xca, 0x87, 0xfa, 0x67, 0x74, 0x2f, 0x43, 0x8a, 0x6f, 0xc1, 0xfc, 0x9d, 0x2c, 0xcc, - 0x29, 0x57, 0xb6, 0x78, 0x5b, 0x4f, 0x88, 0x8a, 0xbb, 0x2f, 0x9f, 0x4f, 0x13, 0x01, 0x94, 0x19, - 0xed, 0x45, 0xc0, 0x1e, 0x6e, 0xd7, 0x55, 0x64, 0x7e, 0x51, 0x1c, 0x55, 0xa7, 0x78, 0x4d, 0xad, - 0x27, 0x86, 0x52, 0x63, 0x4e, 0x02, 0x98, 0x2e, 0x1d, 0xb5, 0x9d, 0x56, 0x54, 0x1b, 0x3f, 0x7e, - 0x7f, 0xbd, 0x6f, 0x6d, 0x1a, 0x36, 0xaf, 0x4e, 0xda, 0x9c, 0x8b, 0x0d, 0x5e, 0x96, 0x12, 0xb0, - 0xaf, 0x51, 0x5d, 0xfc, 0x00, 0xe6, 0x7a, 0x1a, 0x7d, 0xaa, 0x3b, 0xeb, 0xbb, 0x40, 0x7a, 0xdb, - 0x91, 0xc2, 0xe1, 0x75, 0x3d, 0x23, 0xc2, 0xd9, 0xe8, 0x70, 0xae, 0xd5, 0x72, 0xda, 0xfc, 0xb5, - 0xe6, 0x9d, 0x65, 0xf5, 0x46, 0xfb, 0xaf, 0x65, 0xd4, 0x78, 0xdc, 0x67, 0x7d, 0xd6, 0x7d, 0xa8, - 0xed, 0xb2, 0x5e, 0xec, 0x37, 0xa6, 0x43, 0xed, 0x66, 0x7f, 0x94, 0x85, 0xf3, 0x7d, 0x28, 0xc9, - 0x51, 0x52, 0x88, 0xf8, 0xee, 0xf6, 0xe6, 0xe0, 0x0a, 0x9f, 0x86, 0x28, 0x91, 0x2f, 0xf3, 0x1b, - 0x39, 0x75, 0x7c, 0x29, 0x41, 0xec, 0xeb, 0xa2, 0x37, 0xa0, 0x39, 0x34, 0x79, 0x15, 0x87, 0x43, - 0xc9, 0x07, 0xf2, 0x0d, 0x68, 0xfd, 0xca, 0x38, 0xc3, 0xe0, 0x6f, 0x3e, 0xc7, 0xf7, 0xeb, 0xd3, - 0xdf, 0x7d, 0xfe, 0x12, 0x64, 0x0b, 0xbb, 0x35, 0x31, 0x2e, 0x33, 0x2a, 0xf9, 0x6e, 0x2d, 0x4e, - 0xb2, 0xe5, 0x68, 0xd9, 0xb0, 0x18, 0x05, 0x23, 0xbc, 0x5b, 0xac, 0x8a, 0x51, 0x51, 0x09, 0xef, - 0x16, 0xab, 0x31, 0xe1, 0x41, 0x5d, 0xbb, 0x8c, 0x77, 0xb7, 0x58, 0xfd, 0xec, 0xc4, 0xfe, 0x6f, - 0x66, 0xf8, 0x35, 0x22, 0xfe, 0x61, 0x1f, 0xc0, 0x94, 0x96, 0xb1, 0xc6, 0x88, 0xed, 0xb1, 0x28, - 0xdb, 0x4e, 0x22, 0xfa, 0x41, 0x23, 0x90, 0xe9, 0xea, 0xa2, 0x87, 0x33, 0xd5, 0xe0, 0x05, 0xfd, - 0xb1, 0xcd, 0x64, 0xba, 0xba, 0x88, 0x84, 0xdc, 0x82, 0xdc, 0x16, 0x6d, 0x3b, 0xed, 0x30, 0x72, - 0xb4, 0x61, 0xb0, 0x5d, 0x88, 0x30, 0xdd, 0x6a, 0x88, 0x10, 0xf1, 0x99, 0x53, 0xe5, 0xd9, 0xcf, - 0x68, 0x2d, 0xe6, 0x21, 0xa0, 0x4a, 0x49, 0xe2, 0x9d, 0x58, 0x9d, 0xc8, 0xfc, 0x35, 0x03, 0xc6, - 0xc5, 0x40, 0x2a, 0x8f, 0xf3, 0x19, 0x43, 0x3c, 0xce, 0x77, 0x1b, 0x26, 0x44, 0x44, 0xbc, 0xfe, - 0x42, 0xac, 0x08, 0xa2, 0x4f, 0xbc, 0x10, 0x1b, 0xa1, 0x0e, 0x1d, 0x4b, 0xfe, 0x77, 0x45, 0xcb, - 0xee, 0x16, 0xab, 0x64, 0x19, 0x72, 0x6b, 0x5e, 0xdd, 0x51, 0xd6, 0x39, 0x54, 0x3b, 0x4d, 0x01, - 0x53, 0x3b, 0x48, 0xe2, 0xe9, 0x2f, 0xdf, 0x66, 0x86, 0x7f, 0xf9, 0x76, 0xd8, 0xf6, 0xd1, 0x14, - 0x25, 0xb1, 0x73, 0x6b, 0xcd, 0x0d, 0x42, 0xf2, 0x91, 0x1a, 0xa3, 0x2f, 0x8a, 0xa4, 0xa6, 0xb8, - 0xd8, 0x4f, 0x53, 0xec, 0xdc, 0xb2, 0x52, 0xa8, 0xf0, 0xbc, 0x26, 0x06, 0xf3, 0xe7, 0xc6, 0x3f, - 0x67, 0x79, 0x98, 0x93, 0x9f, 0x37, 0x94, 0x92, 0xfe, 0xa7, 0x19, 0x38, 0x97, 0x4e, 0xa8, 0x7e, - 0x8b, 0x31, 0xe0, 0x5b, 0xae, 0x40, 0x6e, 0xd5, 0x0b, 0x42, 0x25, 0xe0, 0x09, 0xdd, 0xca, 0x87, - 0x02, 0x66, 0x45, 0xa5, 0x6c, 0xcf, 0xcd, 0xfe, 0x8e, 0xa6, 0x27, 0xf2, 0xc3, 0xcb, 0x33, 0x6c, - 0xcf, 0xcd, 0x8b, 0xc8, 0x5d, 0xc8, 0x59, 0x22, 0x9c, 0x3c, 0xd1, 0x35, 0x12, 0x1c, 0x59, 0x53, - 0xc4, 0x17, 0x10, 0x2d, 0x71, 0x90, 0x80, 0x91, 0x02, 0x8c, 0x8b, 0xd1, 0x4f, 0x1c, 0x49, 0xa6, - 0x88, 0x8c, 0x9e, 0xcb, 0x4b, 0xd2, 0x31, 0x8d, 0x82, 0x87, 0x4b, 0x95, 0x92, 0x8c, 0x0c, 0x47, - 0x8d, 0xc2, 0x0f, 0x9f, 0xf4, 0xec, 0x61, 0x11, 0xa2, 0xf9, 0xb3, 0x19, 0x80, 0x5d, 0xba, 0xf7, - 0x6c, 0xa7, 0x77, 0xff, 0x92, 0x26, 0x61, 0x4a, 0x3c, 0xc5, 0xf0, 0xd9, 0xdd, 0x37, 0x31, 0xae, - 0x61, 0xf8, 0xdc, 0xee, 0x4b, 0x30, 0xca, 0xbd, 0x9d, 0xca, 0x26, 0x91, 0xbb, 0x39, 0x39, 0xdc, - 0xdc, 0x83, 0x85, 0xbb, 0x34, 0x8c, 0xdd, 0x5b, 0xf2, 0x48, 0x6b, 0x30, 0xdb, 0x37, 0x60, 0x42, - 0xe0, 0xeb, 0xef, 0xd5, 0xca, 0xfb, 0x68, 0xe8, 0x8b, 0x91, 0x08, 0x4c, 0x1b, 0x95, 0x68, 0x93, - 0x86, 0xf4, 0xb3, 0xad, 0xa6, 0x06, 0x84, 0x7f, 0x0a, 0x7e, 0xd9, 0x70, 0x35, 0x9c, 0xd8, 0x3f, - 0x3b, 0x70, 0x36, 0x6a, 0xfb, 0xd3, 0xe4, 0x7b, 0x83, 0x6d, 0x29, 0x45, 0x1a, 0xac, 0x98, 0xe3, - 0x80, 0x98, 0x86, 0x47, 0x70, 0x51, 0x12, 0xec, 0xba, 0x51, 0x60, 0xd8, 0x50, 0xb4, 0xe4, 0x5d, - 0x98, 0x54, 0x68, 0x44, 0xa2, 0x41, 0x74, 0x7f, 0x3e, 0x74, 0xc3, 0x43, 0x3b, 0xe0, 0x70, 0xd5, - 0xfd, 0xa9, 0xa0, 0x9b, 0x5f, 0x87, 0xe7, 0xa2, 0x30, 0xfa, 0x94, 0xaa, 0x13, 0xcc, 0x8d, 0xd3, - 0x31, 0xdf, 0x88, 0x3f, 0xab, 0xd2, 0x8e, 0x2e, 0x75, 0x49, 0xde, 0x44, 0xfd, 0x2c, 0xf1, 0x31, - 0xcf, 0xf7, 0x5c, 0x13, 0x53, 0x6e, 0x83, 0x99, 0xef, 0x28, 0x8d, 0x4d, 0x61, 0xa8, 0x11, 0x1b, - 0x49, 0xe2, 0x9f, 0xcd, 0xc0, 0xec, 0x66, 0xa5, 0x54, 0x8c, 0xa2, 0x5a, 0x3e, 0x67, 0xb9, 0xe7, - 0xb5, 0x6f, 0xeb, 0xaf, 0x6f, 0xcc, 0x6d, 0x98, 0x4f, 0x74, 0x03, 0x9a, 0x0e, 0xef, 0xf3, 0x70, - 0xf7, 0x08, 0x2c, 0xcd, 0x86, 0x73, 0x69, 0xec, 0x77, 0x6e, 0x59, 0x09, 0x6c, 0xf3, 0x1f, 0xe6, - 0x12, 0x7c, 0x85, 0x0a, 0x7b, 0x03, 0x26, 0x2a, 0x41, 0xd0, 0xa5, 0xfe, 0xb6, 0xb5, 0xa6, 0xba, - 0x0a, 0x5c, 0x04, 0xda, 0x5d, 0xbf, 0x69, 0xc5, 0x08, 0xe4, 0x2a, 0xe4, 0x44, 0xea, 0x25, 0xa9, - 0x13, 0xd0, 0x6b, 0x1b, 0x65, 0x6e, 0xb2, 0xa2, 0x62, 0xf2, 0x16, 0x4c, 0xf1, 0xbf, 0xb9, 0xb4, - 0x89, 0x0e, 0x47, 0xe7, 0xa0, 0x40, 0xe7, 0xd2, 0x69, 0x69, 0x68, 0xe4, 0x1a, 0x64, 0x0b, 0x45, - 0x4b, 0x7d, 0xa6, 0xd2, 0xa9, 0xfb, 0xfc, 0xb9, 0x5a, 0x7d, 0x13, 0x51, 0xb4, 0x98, 0xf5, 0x27, - 0x5c, 0x49, 0xbe, 0xf0, 0x64, 0xa3, 0x04, 0x48, 0x6f, 0x53, 0x62, 0x31, 0x43, 0x18, 0xb9, 0x01, - 0xe3, 0x25, 0x37, 0xe8, 0x34, 0x9d, 0x23, 0xe1, 0xc7, 0xe6, 0x19, 0x69, 0x39, 0x48, 0x95, 0x19, - 0x81, 0x45, 0xae, 0xc2, 0x28, 0x3a, 0x59, 0x85, 0x2f, 0x9b, 0xe7, 0x6d, 0x65, 0x00, 0x2d, 0x6f, - 0x2b, 0x03, 0x60, 0x66, 0x3f, 0x9e, 0xa0, 0x68, 0x42, 0xc9, 0xec, 0x97, 0x4c, 0x4c, 0x24, 0x70, - 0x7a, 0xef, 0x47, 0xc1, 0xd3, 0xbc, 0x1f, 0xb5, 0x07, 0xe7, 0xef, 0xa2, 0xf7, 0x46, 0xbf, 0xa4, - 0xba, 0x6d, 0x55, 0x84, 0x3f, 0x1c, 0x4f, 0x7c, 0xb8, 0x83, 0x27, 0x79, 0xcf, 0x35, 0xf1, 0x14, - 0x75, 0x3f, 0x46, 0xe4, 0xab, 0xb0, 0x90, 0x56, 0x24, 0xbc, 0xe6, 0x78, 0x41, 0x3c, 0xbd, 0x02, - 0xf5, 0x86, 0x76, 0x1a, 0x07, 0xb2, 0x06, 0x79, 0x0e, 0x2f, 0x34, 0x5a, 0x6e, 0x9b, 0x7b, 0xfe, - 0xa7, 0xe3, 0x27, 0xc2, 0x04, 0x57, 0x87, 0x15, 0xf2, 0x13, 0x00, 0xed, 0xe2, 0x43, 0x82, 0x92, - 0xfc, 0x92, 0xc1, 0x76, 0x73, 0x3c, 0x9d, 0xcf, 0xb6, 0xb5, 0x16, 0x88, 0xab, 0xfc, 0xfd, 0x9e, - 0xf7, 0xde, 0x7a, 0x4a, 0xcf, 0x7b, 0x4f, 0xf9, 0xa2, 0x4e, 0x9c, 0x45, 0x5a, 0x0b, 0xf0, 0x5d, - 0xa3, 0x66, 0xd3, 0x7b, 0xb8, 0xdd, 0x7e, 0x40, 0x7d, 0x77, 0xdf, 0xa5, 0x0d, 0xfe, 0x91, 0xb3, - 0xa8, 0xc1, 0xf9, 0xbb, 0x46, 0xf8, 0xee, 0x54, 0x37, 0x42, 0xe8, 0xf9, 0xd0, 0x54, 0x0e, 0x6c, - 0xe3, 0x29, 0xc3, 0xf0, 0xf9, 0xed, 0xb4, 0x7c, 0xbc, 0xf1, 0x94, 0x31, 0xfb, 0x36, 0x8a, 0x91, - 0x2a, 0x3c, 0x1a, 0x89, 0x88, 0xf9, 0xfd, 0xaf, 0x72, 0x5c, 0x23, 0x17, 0xba, 0xe1, 0xa1, 0xd4, - 0xe1, 0xcb, 0x69, 0x57, 0x09, 0x78, 0xc8, 0x93, 0x72, 0x95, 0x40, 0xbf, 0x40, 0x20, 0x5d, 0xe9, - 0x99, 0x54, 0x57, 0xfa, 0x1b, 0x30, 0x81, 0xaf, 0x2a, 0x46, 0x31, 0xdb, 0x39, 0xe1, 0xab, 0x64, - 0x40, 0x9e, 0x0b, 0x29, 0x46, 0x20, 0x37, 0x00, 0x30, 0x47, 0x32, 0x5f, 0xe0, 0x95, 0xdc, 0x73, - 0x98, 0x4a, 0x59, 0x9c, 0x22, 0x2b, 0x28, 0xc8, 0xbe, 0x66, 0xdd, 0x51, 0x8f, 0x9d, 0x39, 0xfb, - 0xc0, 0xdf, 0x17, 0xe8, 0x31, 0x02, 0xfb, 0x3c, 0x65, 0x98, 0x84, 0x52, 0xc9, 0xf7, 0x8c, 0xa5, - 0x8a, 0x84, 0x11, 0x5d, 0x32, 0x40, 0x15, 0x75, 0xca, 0x94, 0x88, 0xe8, 0x8a, 0x82, 0x59, 0xad, - 0x18, 0x81, 0x7c, 0x09, 0xc6, 0x8b, 0xd4, 0x0f, 0xb7, 0xb6, 0xd6, 0xc4, 0xcb, 0xe8, 0x6c, 0x5f, - 0x9e, 0xc3, 0x64, 0x5a, 0x61, 0xd8, 0xfc, 0xf1, 0xf1, 0xd2, 0x74, 0xe8, 0xb6, 0xe8, 0xf5, 0xe8, - 0x18, 0x57, 0x62, 0x93, 0x15, 0xc8, 0xf3, 0x33, 0xc6, 0xd8, 0x90, 0x43, 0x35, 0x93, 0xe3, 0x4a, - 0x4f, 0x1c, 0x48, 0x3e, 0xa4, 0x7b, 0x51, 0x2a, 0xb1, 0x1e, 0x7c, 0x52, 0x96, 0x19, 0xf8, 0xd4, - 0x8f, 0x84, 0xd8, 0xb3, 0x20, 0x14, 0xb3, 0xf6, 0xad, 0xbd, 0x14, 0xa4, 0x00, 0xd3, 0x45, 0xaf, - 0xd5, 0x71, 0x42, 0x17, 0x53, 0x30, 0x1f, 0x09, 0x8d, 0x82, 0xde, 0x91, 0xba, 0x5a, 0xa0, 0x3f, - 0x92, 0xa8, 0x14, 0x90, 0x3b, 0x30, 0x63, 0x79, 0x5d, 0x36, 0x48, 0x72, 0x4b, 0xc3, 0x95, 0x46, - 0xf4, 0xfc, 0x2e, 0x1b, 0x4b, 0x5b, 0xec, 0x5f, 0xb4, 0x14, 0x17, 0x1a, 0x15, 0xd9, 0x48, 0xf1, - 0x2d, 0xab, 0x9a, 0x42, 0x4d, 0x28, 0xd6, 0xc3, 0x2c, 0xc5, 0x2d, 0x7d, 0x0b, 0x26, 0x6b, 0xb5, - 0xcd, 0x2d, 0x1a, 0x84, 0x77, 0x9a, 0xde, 0x43, 0x54, 0x14, 0x39, 0x91, 0xc7, 0x34, 0xf0, 0xec, - 0x90, 0x06, 0xa1, 0xbd, 0xdf, 0xf4, 0x1e, 0x5a, 0x2a, 0x16, 0xf9, 0x09, 0xe5, 0xd5, 0x48, 0x5c, - 0xf9, 0x67, 0x4f, 0x5c, 0xf9, 0x13, 0x2f, 0x4a, 0xb2, 0xf5, 0x3f, 0xf5, 0x45, 0x49, 0x86, 0x8e, - 0x17, 0x10, 0xd8, 0x66, 0xac, 0xd0, 0x68, 0xf8, 0x34, 0x08, 0xc4, 0x8c, 0x56, 0xde, 0xc4, 0x75, - 0x78, 0x81, 0x76, 0x01, 0x41, 0x21, 0x20, 0xdf, 0x35, 0xe0, 0xac, 0x1a, 0xc3, 0x8c, 0x93, 0xa5, - 0x45, 0xdb, 0xe1, 0xe2, 0x1c, 0xb6, 0xf4, 0xcd, 0xeb, 0x52, 0xa3, 0x5d, 0x57, 0xd0, 0xae, 0x3f, - 0xb8, 0x79, 0x5d, 0x79, 0x3a, 0xad, 0x26, 0x89, 0xf0, 0xf9, 0xec, 0xa5, 0x54, 0x7e, 0xaa, 0x76, - 0x72, 0x52, 0x48, 0xd1, 0xca, 0xab, 0x15, 0xd6, 0xd7, 0x62, 0x53, 0xe5, 0xf3, 0x15, 0x1d, 0xac, - 0x7d, 0xdb, 0x80, 0xe8, 0xe0, 0x6d, 0x98, 0x4f, 0x74, 0x83, 0xb4, 0xf2, 0x34, 0x70, 0xd2, 0xca, - 0x4b, 0xd0, 0x58, 0x09, 0x6c, 0xf3, 0x1f, 0x8c, 0x27, 0xf8, 0x8a, 0x88, 0x20, 0x13, 0xc6, 0xb8, - 0x11, 0xa7, 0x3e, 0xf6, 0xc3, 0x4d, 0x3c, 0x4b, 0x94, 0x90, 0x0b, 0x90, 0xad, 0xd5, 0x36, 0xd5, - 0xa7, 0xc8, 0x82, 0xc0, 0xb3, 0x18, 0x8c, 0x8d, 0x10, 0x06, 0xfb, 0x28, 0x69, 0xb3, 0x98, 0xc6, - 0xb2, 0x10, 0xca, 0xfa, 0x5b, 0x9a, 0x54, 0x23, 0x71, 0x7f, 0x0b, 0x93, 0x2a, 0x36, 0xa4, 0x8a, - 0xb0, 0x58, 0x08, 0x02, 0xea, 0xf3, 0x97, 0x90, 0x31, 0x86, 0xc4, 0x17, 0xcb, 0xbe, 0x50, 0xcc, - 0x58, 0xa9, 0x53, 0x0f, 0xac, 0xbe, 0x88, 0xe4, 0x0a, 0xe4, 0x0a, 0xdd, 0x86, 0x4b, 0xdb, 0x75, - 0x2d, 0x17, 0x83, 0x23, 0x60, 0x56, 0x54, 0x4a, 0x3e, 0x86, 0xb3, 0x82, 0x48, 0xda, 0x7e, 0xa2, - 0x07, 0xc6, 0xe3, 0xd9, 0x23, 0xcd, 0x92, 0xf8, 0x7c, 0x92, 0x77, 0x49, 0x3a, 0x25, 0x29, 0x40, - 0xbe, 0x8c, 0xd1, 0xf0, 0x25, 0xca, 0x5d, 0xa5, 0x9e, 0x2f, 0x1e, 0x2e, 0x45, 0x23, 0x92, 0x47, - 0xca, 0xdb, 0x8d, 0xa8, 0xd0, 0xea, 0x41, 0x27, 0xf7, 0x60, 0x3e, 0x09, 0x63, 0x3a, 0x98, 0xdb, - 0x8b, 0x98, 0xb7, 0xa5, 0x87, 0x0b, 0x6a, 0xe1, 0x34, 0x2a, 0xb2, 0x07, 0x73, 0xf1, 0xf9, 0xbc, - 0x6e, 0x45, 0xca, 0x70, 0xb2, 0xa8, 0x5c, 0x5a, 0x92, 0xcf, 0x09, 0x61, 0x9c, 0x8f, 0xcf, 0xfa, - 0x23, 0x6b, 0xd2, 0xea, 0x65, 0x47, 0x1a, 0x30, 0x53, 0x73, 0x0f, 0xda, 0x6e, 0xfb, 0xe0, 0x1e, - 0x3d, 0xaa, 0x3a, 0xae, 0x2f, 0x02, 0x7b, 0x64, 0xd8, 0x5e, 0x21, 0x38, 0x6a, 0xb5, 0x68, 0xe8, - 0xe3, 0xea, 0xc6, 0xca, 0xf1, 0x8a, 0x9b, 0xc1, 0xd4, 0x78, 0xc0, 0xe9, 0xf0, 0x3a, 0x47, 0xc7, - 0x71, 0x35, 0x35, 0xae, 0xf3, 0xd4, 0x2c, 0xf9, 0xa9, 0x21, 0x2d, 0xf9, 0x26, 0xcc, 0x95, 0xdb, - 0x75, 0xff, 0x08, 0x3d, 0xd6, 0xb2, 0x71, 0xd3, 0x27, 0x34, 0xee, 0x15, 0xd1, 0xb8, 0xe7, 0x1d, - 0x29, 0x61, 0x69, 0xcd, 0xeb, 0x65, 0x4c, 0x6a, 0xe2, 0x95, 0xd6, 0x4a, 0xa9, 0x5a, 0x69, 0xbb, - 0xa1, 0x8b, 0xcf, 0xee, 0xf0, 0xe5, 0xe1, 0x55, 0xc1, 0xf3, 0x05, 0x6e, 0xb1, 0xb9, 0x8d, 0x8e, - 0xed, 0x4a, 0x94, 0x9e, 0x67, 0x58, 0x55, 0x7a, 0xf3, 0xff, 0x1c, 0xe7, 0xda, 0x50, 0xb5, 0xb0, - 0xfa, 0x85, 0x2a, 0x25, 0x2c, 0xaf, 0xcc, 0x69, 0x2c, 0xaf, 0xec, 0xc9, 0x96, 0xd7, 0xc8, 0x49, - 0x96, 0x57, 0xc2, 0x34, 0x1a, 0x3d, 0xb5, 0x69, 0x34, 0x76, 0x0a, 0xd3, 0x68, 0xfc, 0x54, 0xa6, - 0x91, 0x66, 0xe3, 0xe5, 0x4e, 0xb2, 0xf1, 0xfe, 0x7f, 0x43, 0xea, 0x59, 0x35, 0xa4, 0xd2, 0x16, - 0xd7, 0x53, 0x19, 0x52, 0xfd, 0xed, 0xa0, 0xfc, 0xff, 0xc7, 0x76, 0xd0, 0x5f, 0x82, 0x7c, 0x52, - 0x35, 0x9f, 0x9c, 0x28, 0xe8, 0xa9, 0xe5, 0xf3, 0x60, 0x0b, 0x47, 0x52, 0x35, 0xb2, 0xad, 0x55, - 0xd5, 0x77, 0x1f, 0x38, 0x21, 0x8d, 0x5f, 0xaa, 0xc4, 0xad, 0x55, 0x87, 0x43, 0x71, 0xba, 0x2a, - 0x28, 0x91, 0x55, 0x90, 0x49, 0xb3, 0x0a, 0xcc, 0x9f, 0xcb, 0xc0, 0x1c, 0x4f, 0x41, 0xf0, 0xec, - 0x7b, 0xf4, 0xde, 0xd7, 0x6c, 0x3d, 0x19, 0xb8, 0x93, 0xf8, 0xba, 0x01, 0x3e, 0xbd, 0x6f, 0xc2, - 0xd9, 0x9e, 0xae, 0x40, 0x7b, 0xaf, 0x24, 0x93, 0x3f, 0xf4, 0x58, 0x7c, 0x8b, 0xe9, 0x95, 0xec, - 0xdc, 0xb2, 0x7a, 0x28, 0xcc, 0x7f, 0x9e, 0xed, 0xe1, 0x2f, 0xbc, 0x7b, 0xaa, 0xbf, 0xce, 0x38, - 0x9d, 0xbf, 0x2e, 0x33, 0x9c, 0xbf, 0x2e, 0xb1, 0x2c, 0x64, 0x87, 0x59, 0x16, 0x3e, 0x86, 0xe9, - 0x2d, 0xea, 0xb4, 0x82, 0x2d, 0x4f, 0x64, 0x14, 0xe4, 0x81, 0x7b, 0x32, 0xb7, 0x03, 0x2b, 0x93, - 0xe6, 0x4a, 0x14, 0x80, 0x10, 0x32, 0x02, 0xa6, 0xca, 0x78, 0x8a, 0x41, 0x4b, 0xe7, 0xa0, 0xda, - 0xa0, 0xa3, 0x03, 0x6c, 0xd0, 0x1a, 0x4c, 0x09, 0xba, 0x38, 0x3b, 0x52, 0x6c, 0x2c, 0xb1, 0x22, - 0x84, 0xcb, 0xda, 0xa3, 0x97, 0x01, 0xa2, 0xda, 0xb9, 0x9d, 0xa4, 0x31, 0x61, 0x5d, 0x50, 0x6e, - 0x37, 0x3a, 0x9e, 0xdb, 0xc6, 0x2e, 0x18, 0x8f, 0xbb, 0x80, 0x0a, 0x30, 0xef, 0x02, 0x05, 0x89, - 0xbc, 0x0b, 0x33, 0x85, 0x6a, 0x45, 0x25, 0xcb, 0xa9, 0xef, 0x84, 0xbb, 0xb6, 0x46, 0x9a, 0xc0, - 0x35, 0xff, 0x71, 0x4e, 0xce, 0xad, 0xcf, 0xd6, 0x37, 0xa3, 0x7b, 0x5b, 0xb2, 0xa7, 0xf4, 0xb6, - 0x8c, 0x9c, 0xb4, 0x12, 0x6b, 0xe6, 0xc1, 0xe8, 0x29, 0xcc, 0x83, 0xb1, 0x27, 0xf6, 0x9c, 0x8c, - 0x9f, 0x72, 0xc1, 0x4f, 0x88, 0x79, 0x6e, 0x18, 0x31, 0x4f, 0x35, 0x12, 0x26, 0x9e, 0xdc, 0x48, - 0x80, 0x53, 0x1b, 0x09, 0xca, 0xa3, 0x8e, 0x93, 0x43, 0x3d, 0xea, 0x68, 0x0c, 0xf1, 0xa8, 0xe3, - 0xe7, 0xca, 0xf2, 0xf8, 0x56, 0xba, 0xe5, 0x31, 0x58, 0xd5, 0x3f, 0xa3, 0xb6, 0x87, 0x8f, 0x1d, - 0xb4, 0xeb, 0xf8, 0x6c, 0x07, 0x16, 0x90, 0x1b, 0x30, 0x2e, 0x13, 0xac, 0x18, 0xf1, 0x66, 0xb6, - 0x37, 0xb3, 0x8a, 0xc4, 0x62, 0x9b, 0x35, 0x49, 0x2c, 0x2e, 0x23, 0xf3, 0x5c, 0x12, 0x02, 0xa6, - 0xe5, 0x92, 0x10, 0x30, 0xf3, 0xdf, 0x19, 0x91, 0x93, 0x90, 0x6d, 0x26, 0xc4, 0x03, 0x46, 0x2b, - 0x4a, 0xa7, 0x2b, 0x96, 0x4f, 0xa2, 0x5b, 0x13, 0x41, 0x36, 0x3a, 0xc9, 0xa7, 0xc9, 0x4e, 0xa3, - 0xe4, 0xec, 0xce, 0x0e, 0x91, 0xb3, 0xfb, 0x6d, 0x2d, 0xe1, 0xf5, 0x48, 0x9c, 0x61, 0x95, 0x09, - 0xe6, 0xe0, 0x54, 0xd7, 0xb7, 0xd5, 0xcc, 0xd4, 0xa3, 0xf1, 0xbd, 0x6d, 0xa4, 0x1c, 0x90, 0x93, - 0x3a, 0x32, 0xe5, 0xc6, 0x4e, 0x93, 0xa9, 0x69, 0xfc, 0x5f, 0x6a, 0xa6, 0xa6, 0x32, 0x80, 0xf2, - 0xaa, 0x0d, 0xf7, 0x6d, 0xbf, 0xca, 0xba, 0xe9, 0xe4, 0x17, 0x6d, 0x14, 0x42, 0xf3, 0x5f, 0xcc, - 0xc1, 0x5c, 0xad, 0xb6, 0x59, 0x72, 0x9d, 0x83, 0xb6, 0x17, 0x84, 0x6e, 0xbd, 0xd2, 0xde, 0xf7, - 0x98, 0x1d, 0x13, 0x4d, 0x68, 0x25, 0x6b, 0x50, 0x3c, 0x99, 0xa3, 0x62, 0x66, 0x27, 0x97, 0x7d, - 0xdf, 0xf3, 0x55, 0x3b, 0x99, 0x32, 0x80, 0xc5, 0xe1, 0xcc, 0x54, 0xa8, 0x75, 0xf9, 0xf3, 0x24, - 0xfc, 0xb8, 0x01, 0x4d, 0x85, 0x80, 0x83, 0x2c, 0x59, 0x46, 0x68, 0xaf, 0xc0, 0x0a, 0xd3, 0xf1, - 0xbc, 0x96, 0xef, 0x29, 0x2e, 0xe6, 0xea, 0x4a, 0x2c, 0x27, 0x78, 0x6b, 0xa3, 0x83, 0x70, 0xf5, - 0x6c, 0xaa, 0x67, 0x0e, 0x1c, 0xc1, 0x59, 0xed, 0xf6, 0xc1, 0xb0, 0x7e, 0x9c, 0x6b, 0xc2, 0x34, - 0x31, 0xf1, 0x12, 0x55, 0x8a, 0x33, 0x47, 0x4d, 0x19, 0x9b, 0x5a, 0x03, 0xf9, 0x39, 0x03, 0x5e, - 0x48, 0x2d, 0x89, 0x66, 0xf7, 0xa4, 0x96, 0x73, 0x4b, 0x51, 0x1a, 0xf8, 0xa4, 0xcb, 0xeb, 0xfd, - 0xaa, 0xb6, 0x53, 0x54, 0xc1, 0xe0, 0x9a, 0xc8, 0x3f, 0x36, 0xe0, 0xbc, 0x86, 0x11, 0xa9, 0xab, - 0x00, 0x97, 0x95, 0xbe, 0x72, 0xfd, 0xed, 0xa7, 0x23, 0xd7, 0x2f, 0xeb, 0xdf, 0x12, 0x6b, 0x53, - 0xf5, 0x1b, 0xfa, 0xb5, 0x90, 0x3c, 0x80, 0x39, 0x2c, 0x92, 0x3e, 0x25, 0x26, 0xb3, 0xc2, 0x15, - 0xb5, 0x10, 0x37, 0x9b, 0xdf, 0xa8, 0xc1, 0xf7, 0x0c, 0x96, 0x7f, 0x74, 0xbc, 0x34, 0xad, 0xa1, - 0x63, 0xba, 0x4f, 0x6c, 0x43, 0xe4, 0x98, 0x72, 0xdb, 0xfb, 0x9e, 0xf6, 0xec, 0x6e, 0xb2, 0x0a, - 0xf2, 0x1f, 0x19, 0xb0, 0xc8, 0xa0, 0xfc, 0x33, 0xee, 0xf8, 0x5e, 0x2b, 0x2a, 0x97, 0x87, 0x9c, - 0x7d, 0xba, 0xad, 0xf9, 0x74, 0xba, 0xed, 0x55, 0x6c, 0x32, 0xd7, 0x09, 0xf6, 0xbe, 0xef, 0xb5, - 0xe2, 0xe6, 0x6b, 0xaf, 0xb6, 0xf4, 0x6b, 0x24, 0xf9, 0x19, 0x03, 0x2e, 0x68, 0xdb, 0x7a, 0x35, - 0xc9, 0xa5, 0xb8, 0xb7, 0x24, 0x4f, 0xc4, 0xd5, 0xa2, 0x95, 0xeb, 0x42, 0xfe, 0x2f, 0x63, 0x0b, - 0xe2, 0xd5, 0x02, 0xdb, 0x62, 0xb7, 0x38, 0x96, 0xd2, 0x84, 0xfe, 0xb5, 0x10, 0x17, 0xe6, 0xf0, - 0x88, 0x46, 0x3b, 0x8c, 0x5f, 0xe8, 0x7f, 0x18, 0x1f, 0xe5, 0x9d, 0xc6, 0x44, 0x82, 0xfd, 0x4f, - 0xe4, 0x7b, 0xb9, 0x92, 0x9f, 0x86, 0x0b, 0x3d, 0xc0, 0x68, 0xb6, 0x9d, 0xed, 0x3b, 0xdb, 0x5e, - 0x7f, 0x7c, 0xbc, 0xf4, 0x5a, 0x5a, 0x6d, 0x69, 0x33, 0xad, 0x7f, 0x0d, 0xc4, 0x01, 0x88, 0x0b, - 0xc5, 0x33, 0x30, 0xe9, 0x02, 0xfa, 0xba, 0x90, 0x0f, 0x05, 0x9f, 0xe9, 0x72, 0xa5, 0x0d, 0xea, - 0x92, 0x17, 0x23, 0x11, 0x0a, 0x53, 0x4a, 0x12, 0xc5, 0x23, 0x7c, 0x0f, 0xa6, 0x6f, 0x25, 0x3f, - 0x3a, 0x5e, 0xd2, 0xb0, 0x99, 0x49, 0xab, 0x66, 0x67, 0x54, 0x4d, 0x5a, 0x0d, 0x91, 0xfc, 0xbe, - 0x01, 0x0b, 0x0c, 0x10, 0x0b, 0x95, 0xf8, 0xa8, 0xc5, 0x41, 0x52, 0x7f, 0xf8, 0x74, 0xa4, 0xfe, - 0x25, 0x6c, 0xa3, 0x2a, 0xf5, 0x3d, 0x5d, 0x92, 0xda, 0x38, 0x94, 0x76, 0xed, 0x34, 0x50, 0x93, - 0xf6, 0x0b, 0x43, 0x48, 0x3b, 0x1f, 0x80, 0x93, 0xa5, 0xbd, 0x6f, 0x2d, 0x64, 0x0b, 0xa6, 0x84, - 0x35, 0xcb, 0x3b, 0xec, 0x45, 0x2d, 0x67, 0x9b, 0x5a, 0xc4, 0xb7, 0x18, 0x22, 0xc7, 0x64, 0xcf, - 0x17, 0x6a, 0x5c, 0x48, 0x1b, 0xe6, 0xf9, 0x6f, 0x7d, 0x63, 0xbf, 0xd4, 0x77, 0x63, 0x7f, 0x45, - 0x7c, 0xd1, 0x25, 0xc1, 0x3f, 0xb1, 0xbf, 0x57, 0xd3, 0xb7, 0xa7, 0x30, 0x26, 0x1d, 0x20, 0x1a, - 0x98, 0x4f, 0xda, 0x4b, 0x83, 0xb7, 0xf3, 0xaf, 0x89, 0x3a, 0x97, 0x92, 0x75, 0x26, 0x67, 0x6e, - 0x0a, 0x6f, 0xe2, 0xc0, 0xac, 0x80, 0xb2, 0xbd, 0x2b, 0x6a, 0xf8, 0x97, 0xb4, 0x2b, 0xce, 0x89, - 0x52, 0xfe, 0x28, 0x8a, 0xac, 0x09, 0xaf, 0xa0, 0x27, 0x14, 0x7a, 0x92, 0x9f, 0xf9, 0x5d, 0xa3, - 0xa7, 0x0e, 0xb6, 0x47, 0xc6, 0x1f, 0xca, 0x65, 0x44, 0xdc, 0x23, 0x73, 0x8e, 0xb8, 0x57, 0x8f, - 0x11, 0x98, 0x6d, 0xa3, 0x26, 0xba, 0xc8, 0x8a, 0x77, 0x54, 0x39, 0x28, 0xde, 0xba, 0x2d, 0xc9, - 0x98, 0xa6, 0x6c, 0x6c, 0x23, 0x61, 0x4c, 0x93, 0x88, 0x64, 0x32, 0x7f, 0x26, 0xa3, 0x4b, 0x09, - 0xb9, 0xa2, 0x98, 0xd9, 0x4a, 0xaa, 0x0d, 0x69, 0x66, 0x2b, 0xc6, 0xf5, 0xdf, 0x33, 0x60, 0x7e, - 0xd3, 0x3f, 0x70, 0xda, 0xee, 0x77, 0x78, 0x22, 0x2e, 0x0f, 0xbb, 0x31, 0xba, 0x87, 0xf1, 0x99, - 0x26, 0xf4, 0xf6, 0x94, 0x8a, 0xd9, 0xc0, 0xe2, 0x08, 0x5b, 0x69, 0xed, 0xc1, 0x28, 0x51, 0x6c, - 0x98, 0x92, 0x57, 0x9d, 0xa3, 0x73, 0xb8, 0xf9, 0x8b, 0x19, 0x98, 0x54, 0x24, 0x96, 0x7c, 0x11, - 0xa6, 0x54, 0x3e, 0xaa, 0x7f, 0x45, 0xad, 0xd6, 0xd2, 0xb0, 0xd0, 0xc1, 0x42, 0x9d, 0x96, 0xe6, - 0x60, 0x61, 0x72, 0x89, 0xd0, 0x53, 0xee, 0x44, 0x3e, 0x48, 0xd9, 0x89, 0x9c, 0xea, 0xe9, 0x9d, - 0x77, 0x7b, 0xf7, 0x23, 0xc3, 0xbf, 0x94, 0x63, 0xfe, 0xb2, 0x01, 0xf9, 0xe4, 0x9c, 0xfa, 0x4c, - 0x7a, 0xe5, 0x14, 0x9e, 0xec, 0x5f, 0xc8, 0x40, 0x1e, 0x5f, 0xf8, 0xa2, 0x0d, 0x19, 0xfb, 0xfe, - 0xac, 0x06, 0x14, 0xbc, 0xa7, 0x39, 0x99, 0x9f, 0x8b, 0x96, 0x01, 0xf5, 0xe3, 0x06, 0xe4, 0x04, - 0x19, 0xf9, 0xc1, 0x6f, 0x2e, 0x9d, 0x31, 0x3f, 0x81, 0x85, 0x64, 0x77, 0xa0, 0xa3, 0xb9, 0x00, - 0xb3, 0x3a, 0x3c, 0x99, 0x2e, 0x39, 0x49, 0x65, 0x25, 0xf1, 0xcd, 0x3f, 0xce, 0x24, 0x79, 0x8b, - 0xe0, 0x02, 0xa6, 0x74, 0xda, 0xce, 0x5e, 0x33, 0xca, 0xe8, 0x2a, 0x1e, 0x6f, 0x46, 0x90, 0x25, - 0xcb, 0x4e, 0x93, 0x38, 0x3b, 0x8a, 0xe0, 0xce, 0xa6, 0x47, 0x70, 0x93, 0xdb, 0x89, 0x88, 0x18, - 0xe5, 0xba, 0xf1, 0x43, 0xba, 0x67, 0xc7, 0x51, 0x31, 0x89, 0x40, 0x98, 0x22, 0x2c, 0x68, 0x39, - 0xd9, 0x24, 0xfd, 0x68, 0xec, 0xda, 0x0c, 0xb1, 0x80, 0x13, 0xa7, 0x22, 0x93, 0x55, 0x18, 0x67, - 0xcd, 0x5c, 0x77, 0x3a, 0xc2, 0x7f, 0xac, 0xbe, 0x71, 0x2b, 0xd7, 0x1a, 0xe5, 0x4a, 0x47, 0x93, - 0xb2, 0x15, 0x5a, 0x7b, 0xb9, 0x8a, 0x23, 0x9a, 0x7f, 0x6e, 0xb0, 0xf9, 0x5f, 0xbf, 0xff, 0x39, - 0x4b, 0xe9, 0xcd, 0x3e, 0x69, 0x40, 0xec, 0xcb, 0x9f, 0x64, 0x78, 0x52, 0x5e, 0x21, 0x3e, 0x6f, - 0xc3, 0xd8, 0x96, 0xe3, 0x1f, 0xd0, 0x50, 0xa4, 0x8f, 0x55, 0xb9, 0xf0, 0x82, 0xf8, 0x32, 0x74, - 0x88, 0xbf, 0x2d, 0x41, 0xa0, 0xba, 0xae, 0x32, 0x43, 0xb9, 0xae, 0x14, 0x47, 0x68, 0xf6, 0xa9, - 0x39, 0x42, 0xbf, 0x16, 0xe5, 0xc3, 0x2d, 0x84, 0x43, 0xa4, 0xfc, 0xba, 0x94, 0x4c, 0x0e, 0xdd, - 0x93, 0x9c, 0x2d, 0x66, 0x47, 0x6e, 0xab, 0xe9, 0xa6, 0x95, 0xa0, 0xe8, 0x13, 0x12, 0x4b, 0x9b, - 0x7f, 0x3f, 0xcb, 0xfb, 0x58, 0x74, 0xd4, 0x65, 0xed, 0xc2, 0x04, 0xce, 0x13, 0xa6, 0xe8, 0xd5, - 0xbb, 0x6b, 0x78, 0xc8, 0x7f, 0x19, 0x46, 0x98, 0x6c, 0x8a, 0xde, 0xe4, 0xef, 0x93, 0x7a, 0x4d, - 0xed, 0x8e, 0x1b, 0x2b, 0x67, 0x73, 0x19, 0xd7, 0x24, 0x35, 0xb3, 0x3d, 0x2e, 0x5b, 0xea, 0x5c, - 0x46, 0x0c, 0xbc, 0x36, 0xe7, 0x35, 0xa8, 0x3a, 0x45, 0xdb, 0xfa, 0x43, 0x8d, 0x58, 0xce, 0xbe, - 0x34, 0x4a, 0x30, 0xab, 0x7e, 0x69, 0x6b, 0xdf, 0xb1, 0x79, 0x62, 0x53, 0xf5, 0x4b, 0xe3, 0x5c, - 0xb4, 0x65, 0x98, 0xd1, 0x1f, 0x79, 0x12, 0x71, 0x41, 0x78, 0xdf, 0x31, 0xf1, 0x40, 0x94, 0xea, - 0x85, 0xd6, 0x89, 0xc8, 0x0a, 0x4c, 0x6b, 0x09, 0x6d, 0xc4, 0x31, 0x0e, 0xfa, 0x22, 0xf5, 0x74, - 0x38, 0xaa, 0x2f, 0x52, 0x23, 0x61, 0xab, 0xb9, 0x68, 0xbf, 0x72, 0x98, 0xd3, 0xd3, 0x76, 0x81, - 0xa3, 0x5c, 0x2c, 0xfa, 0x02, 0xe4, 0x85, 0x6e, 0x89, 0x9e, 0x24, 0xc0, 0xc3, 0xd5, 0x4a, 0xc9, - 0x52, 0xf5, 0x41, 0xdd, 0x6d, 0xf8, 0x16, 0x42, 0xcd, 0xef, 0x1b, 0x70, 0x61, 0x83, 0x86, 0x0f, + 0xf3, 0x97, 0x33, 0x7a, 0x68, 0xe0, 0xbf, 0x8a, 0xf2, 0x72, 0x15, 0x46, 0x77, 0x0f, 0xa9, 0x2f, + 0x55, 0x0f, 0x36, 0xe4, 0x21, 0x03, 0xa8, 0x0d, 0x41, 0x0c, 0x72, 0x07, 0x66, 0xaa, 0xbc, 0xff, + 0x64, 0xa7, 0x8c, 0xc4, 0x0b, 0x55, 0x47, 0x98, 0x53, 0x29, 0xbd, 0x92, 0xa0, 0x32, 0x7f, 0x02, + 0xa6, 0xd4, 0x46, 0xa3, 0x62, 0x61, 0xbf, 0xc5, 0xcc, 0xe6, 0x8a, 0x85, 0x01, 0x2c, 0x0e, 0x3f, + 0xf1, 0x11, 0x88, 0xb8, 0x37, 0xb3, 0x27, 0xf5, 0x26, 0xab, 0x1c, 0xe5, 0x56, 0xa9, 0x1c, 0x7f, + 0xab, 0x95, 0x87, 0x0c, 0x60, 0x71, 0xf8, 0x53, 0xad, 0xfc, 0x3f, 0x95, 0x39, 0xc8, 0xde, 0x82, + 0x89, 0x78, 0x81, 0x8e, 0x53, 0xed, 0xce, 0xa7, 0x2d, 0xbb, 0x31, 0x26, 0xab, 0x6a, 0x87, 0xfa, + 0x7b, 0x5a, 0x1c, 0xf1, 0x03, 0x06, 0x50, 0xab, 0x42, 0x8c, 0xd3, 0x8c, 0xeb, 0x0d, 0x18, 0x2f, + 0x08, 0x37, 0x22, 0x1f, 0x50, 0x1e, 0x2b, 0xdd, 0xe3, 0x33, 0x94, 0x58, 0xe6, 0xf7, 0x0d, 0x38, + 0x9b, 0x6a, 0xb7, 0xb3, 0x5a, 0xf9, 0x06, 0x41, 0x11, 0xeb, 0xe4, 0xee, 0x80, 0x63, 0x9c, 0x26, + 0x26, 0x7a, 0xf8, 0x6f, 0x31, 0x5f, 0x82, 0x89, 0xc8, 0x6b, 0x44, 0x16, 0xe4, 0xd0, 0xe1, 0xd9, + 0x92, 0x74, 0x3e, 0xfc, 0x85, 0x01, 0x63, 0xac, 0x09, 0xcf, 0xec, 0x15, 0xe3, 0xf4, 0x93, 0x46, + 0xf6, 0x49, 0x43, 0x5d, 0x2c, 0xfe, 0xad, 0x31, 0x80, 0x18, 0x99, 0xec, 0xc1, 0xcc, 0x66, 0xa5, + 0x54, 0x54, 0xcc, 0x4f, 0x3d, 0xc7, 0x5a, 0xf4, 0x30, 0x09, 0x47, 0x38, 0x8a, 0x75, 0x8c, 0xe7, + 0x36, 0xea, 0xe9, 0xa6, 0x69, 0x82, 0x23, 0xab, 0xa3, 0x56, 0x58, 0x5f, 0x53, 0xea, 0xc8, 0x0c, + 0x59, 0x47, 0xe0, 0xb4, 0x9a, 0x7d, 0xea, 0xd0, 0x39, 0x92, 0x43, 0xc8, 0xdf, 0xc5, 0x55, 0x4c, + 0xa9, 0x25, 0x3b, 0xb8, 0x96, 0x97, 0x45, 0x2d, 0xcf, 0xf1, 0xe5, 0x2f, 0xbd, 0x9e, 0x1e, 0xae, + 0xb1, 0xe4, 0x8e, 0x9c, 0x28, 0xb9, 0x7f, 0xdd, 0x80, 0x31, 0xbe, 0x4c, 0x8a, 0xd1, 0xea, 0xb3, + 0x10, 0xef, 0x3e, 0x9d, 0x85, 0x38, 0x8f, 0x9a, 0x4b, 0x73, 0x98, 0xf1, 0x32, 0x52, 0x82, 0xb1, + 0x5a, 0xe8, 0x84, 0x5d, 0x19, 0x74, 0x2f, 0x8f, 0x93, 0x71, 0x23, 0xc9, 0x4b, 0xe2, 0xc8, 0xf2, + 0x00, 0x7f, 0xab, 0x5c, 0x38, 0x06, 0xa9, 0xc4, 0x41, 0xcd, 0xe3, 0x27, 0x06, 0x35, 0xcb, 0x40, + 0xf0, 0x71, 0x11, 0xd4, 0xac, 0x87, 0x32, 0xaf, 0xc1, 0x84, 0x08, 0x95, 0x5e, 0x39, 0x12, 0xee, + 0x22, 0xe9, 0xf6, 0x8d, 0xe0, 0xca, 0x4b, 0x94, 0x1c, 0x64, 0xef, 0x69, 0xaf, 0xac, 0x44, 0x88, + 0x64, 0x13, 0x26, 0xe2, 0x0b, 0xd7, 0x7a, 0xde, 0x90, 0x08, 0x2e, 0xee, 0x12, 0xc9, 0x78, 0xcb, + 0x94, 0xfb, 0xd5, 0x31, 0x0f, 0xf3, 0x17, 0x0c, 0xc8, 0x27, 0xe5, 0x05, 0xdf, 0xbf, 0x97, 0x57, + 0xd4, 0xa3, 0x10, 0x47, 0xfe, 0xfe, 0x7d, 0x74, 0xa7, 0x5d, 0x7f, 0x77, 0x5d, 0x41, 0x27, 0xcb, + 0x90, 0x63, 0xd3, 0xae, 0x9d, 0x78, 0x00, 0xbf, 0x2b, 0x60, 0x6a, 0x8c, 0x8b, 0xc4, 0x53, 0x66, + 0xed, 0x3f, 0xcd, 0xc2, 0xa4, 0x32, 0x58, 0xe4, 0x2a, 0xe4, 0x2a, 0xc1, 0x9a, 0x57, 0xbf, 0x4f, + 0x1b, 0xe2, 0xe8, 0x7c, 0xfa, 0xf1, 0xf1, 0xd2, 0x84, 0x1b, 0xd8, 0x4d, 0x04, 0x5a, 0x51, 0x31, + 0x59, 0x81, 0x69, 0xfe, 0x97, 0xcc, 0x5d, 0x93, 0x89, 0x8f, 0xfd, 0x38, 0xb2, 0xcc, 0x5a, 0xa3, + 0x9a, 0x09, 0x1a, 0x09, 0xf9, 0x26, 0x00, 0x07, 0x0c, 0xf9, 0x5c, 0xaf, 0x9c, 0xc0, 0x67, 0x45, + 0x05, 0x29, 0xaf, 0xf6, 0x2a, 0x0c, 0xc9, 0xb7, 0xf8, 0xed, 0x73, 0x29, 0x5c, 0x27, 0x87, 0xe1, + 0x9b, 0x32, 0x66, 0x8f, 0xf1, 0xb7, 0xd3, 0xc3, 0xe6, 0x55, 0x96, 0xe4, 0x7b, 0x06, 0x5c, 0xb4, + 0x68, 0xdd, 0x7b, 0x40, 0xfd, 0xa3, 0x42, 0x88, 0x58, 0x6a, 0x8d, 0x27, 0xc7, 0xe8, 0xdf, 0x12, + 0x35, 0xbe, 0xe6, 0x0b, 0x2e, 0x78, 0x2d, 0xb8, 0xd5, 0x09, 0xed, 0x01, 0x4d, 0x18, 0x50, 0xa5, + 0xf9, 0xdf, 0x1b, 0xca, 0x14, 0x20, 0x1b, 0x98, 0x0f, 0x96, 0x0b, 0x8b, 0x38, 0x06, 0x89, 0x2c, + 0x3c, 0x09, 0xb7, 0xe8, 0xfe, 0xca, 0x73, 0xe2, 0x94, 0x7b, 0x3e, 0x12, 0xb9, 0x44, 0x9e, 0x58, + 0x0e, 0x24, 0x1f, 0x8a, 0x97, 0x95, 0x4f, 0x7e, 0xb2, 0x42, 0x2e, 0x35, 0x23, 0x6c, 0x8c, 0x94, + 0xf7, 0x94, 0xbf, 0x20, 0xc2, 0x40, 0xb3, 0xda, 0xb3, 0x69, 0x0c, 0xc4, 0xda, 0x11, 0xad, 0x31, + 0xf1, 0x4d, 0x0d, 0x45, 0x5a, 0x7f, 0x35, 0x03, 0xf9, 0xe4, 0xc4, 0x23, 0x1f, 0xc0, 0x94, 0xbc, + 0x3c, 0xbf, 0xea, 0x88, 0x94, 0x38, 0x53, 0x22, 0x25, 0x8d, 0x80, 0xdb, 0x87, 0x8e, 0xf6, 0x10, + 0x89, 0x46, 0xc0, 0x16, 0xe4, 0x2d, 0x71, 0x01, 0x50, 0x99, 0x40, 0xa1, 0x17, 0x76, 0x12, 0xaf, + 0x28, 0x49, 0x34, 0xf2, 0x16, 0x64, 0xd7, 0xef, 0x14, 0x44, 0x78, 0x94, 0xd4, 0x2f, 0xeb, 0x77, + 0x0a, 0xfc, 0x48, 0x8b, 0x9f, 0x54, 0xe9, 0xe7, 0x66, 0x0c, 0x9f, 0xac, 0x29, 0xf9, 0x08, 0xc6, + 0xb4, 0xec, 0x9a, 0x12, 0x1c, 0x7d, 0xdc, 0xc9, 0x89, 0x09, 0xd4, 0x57, 0x5a, 0xcc, 0x7f, 0x3f, + 0x0b, 0x13, 0x51, 0xfd, 0x84, 0x00, 0xda, 0x1b, 0x22, 0x42, 0x0a, 0xff, 0x26, 0x17, 0x20, 0x27, + 0x4d, 0x0c, 0xf9, 0x9c, 0x73, 0x20, 0xcc, 0x8b, 0x45, 0x90, 0xb6, 0x04, 0x37, 0x2f, 0x2c, 0xf9, + 0x93, 0xdc, 0x84, 0xc8, 0x50, 0xe8, 0x67, 0x51, 0x8c, 0xb0, 0x01, 0xb3, 0x22, 0x34, 0x32, 0x03, + 0x19, 0x97, 0x5f, 0xee, 0x9a, 0xb0, 0x32, 0x6e, 0x83, 0x7c, 0x00, 0x39, 0xa7, 0xd1, 0xa0, 0x0d, + 0xdb, 0x91, 0xe7, 0x09, 0x83, 0x84, 0x26, 0xc7, 0xb8, 0x71, 0x8d, 0x8e, 0x54, 0x85, 0x90, 0x14, + 0x60, 0x02, 0x5f, 0x2d, 0xef, 0x06, 0xb4, 0x31, 0xc4, 0xf2, 0x10, 0x73, 0xc8, 0x31, 0xb2, 0xed, + 0x80, 0x36, 0xc8, 0x6b, 0x30, 0xc2, 0x46, 0x53, 0xac, 0x07, 0xd1, 0x9b, 0x33, 0x9b, 0x5b, 0x55, + 0xde, 0x61, 0xab, 0x67, 0x2c, 0x44, 0x20, 0xaf, 0x40, 0xb6, 0xbb, 0xbc, 0x2f, 0x34, 0x7d, 0x3e, + 0xce, 0x0d, 0x12, 0xa1, 0xb1, 0x62, 0x72, 0x0b, 0x72, 0x0f, 0xf5, 0xb4, 0x12, 0x67, 0x13, 0xc3, + 0x18, 0xe1, 0x47, 0x88, 0x2b, 0x39, 0x18, 0xe3, 0xa7, 0xa1, 0xe6, 0x8b, 0x00, 0x71, 0xd5, 0xbd, + 0xc1, 0x6c, 0xe6, 0x37, 0x61, 0x22, 0xaa, 0x92, 0xbc, 0x00, 0x70, 0x9f, 0x1e, 0xd9, 0x87, 0x4e, + 0xbb, 0xd1, 0xe4, 0x06, 0xe7, 0x94, 0x35, 0x71, 0x9f, 0x1e, 0xad, 0x22, 0x80, 0x9c, 0x87, 0xf1, + 0x0e, 0x1b, 0x55, 0xf9, 0x06, 0x98, 0x35, 0xd6, 0xe9, 0xee, 0x31, 0x09, 0x5d, 0x84, 0x71, 0x74, + 0xa2, 0x88, 0x89, 0x36, 0x6d, 0xc9, 0x9f, 0xe6, 0x6f, 0x64, 0x30, 0x51, 0x98, 0xd2, 0x4e, 0xf2, + 0x32, 0x4c, 0xd7, 0x7d, 0x8a, 0xcb, 0x11, 0x3e, 0x20, 0x27, 0xea, 0x99, 0x8a, 0x81, 0x95, 0x06, + 0xb9, 0x0c, 0xb3, 0xf1, 0xa3, 0x64, 0x76, 0x7d, 0x4f, 0xe4, 0x80, 0x99, 0xb2, 0xa6, 0x3b, 0xf2, + 0x55, 0xb2, 0xe2, 0x1e, 0x5e, 0x4a, 0xcc, 0xab, 0x57, 0xfe, 0xc3, 0x28, 0x7f, 0xb9, 0x35, 0xab, + 0xc0, 0xf1, 0x98, 0xf0, 0x1c, 0x8c, 0x39, 0xce, 0x41, 0xd7, 0xe5, 0x17, 0xa4, 0xa6, 0x2c, 0xf1, + 0x8b, 0xbc, 0x0e, 0x73, 0x81, 0x7b, 0xd0, 0x76, 0xc2, 0xae, 0x2f, 0x32, 0xb5, 0x51, 0x1f, 0x45, + 0x6a, 0xda, 0xca, 0x47, 0x05, 0x45, 0x0e, 0x27, 0x6f, 0x02, 0x51, 0xeb, 0xf3, 0xf6, 0xbe, 0x4d, + 0xeb, 0x5c, 0xd4, 0xa6, 0xac, 0x39, 0xa5, 0x64, 0x13, 0x0b, 0xc8, 0x4b, 0x30, 0xe5, 0xd3, 0x00, + 0x4d, 0x32, 0xec, 0x36, 0xcc, 0xa3, 0x69, 0x4d, 0x4a, 0xd8, 0x3d, 0x7a, 0x64, 0xae, 0xc0, 0x5c, + 0xcf, 0x7c, 0x24, 0x6f, 0x72, 0xeb, 0x5e, 0xac, 0xcf, 0x53, 0x7c, 0x33, 0xc3, 0x94, 0x54, 0xe2, + 0x7d, 0x7e, 0x8e, 0x64, 0xb6, 0x61, 0x4a, 0xd5, 0xaf, 0x27, 0x64, 0xd7, 0x39, 0x17, 0xbd, 0x68, + 0x3f, 0xb1, 0x32, 0xf6, 0xf8, 0x78, 0x29, 0xe3, 0x36, 0xf0, 0x46, 0xc3, 0x15, 0xc8, 0x49, 0x2b, + 0x41, 0x7d, 0x93, 0x5b, 0x18, 0x94, 0x47, 0x56, 0x54, 0x6a, 0xbe, 0x06, 0xe3, 0x42, 0x85, 0x0e, + 0x76, 0x68, 0x99, 0x3f, 0x93, 0x81, 0x59, 0x8b, 0xb2, 0x09, 0x2e, 0x5e, 0xbb, 0xfe, 0x9c, 0x3d, + 0xcf, 0xa6, 0x7d, 0xdb, 0x80, 0x64, 0x56, 0xbf, 0x63, 0xc0, 0x7c, 0x0a, 0xee, 0xa7, 0x4a, 0x51, + 0x7c, 0x1b, 0x26, 0x4a, 0xae, 0xd3, 0x2c, 0x34, 0x1a, 0xd1, 0x1d, 0x0d, 0xb4, 0x06, 0x1b, 0x6c, + 0x3a, 0x39, 0x0c, 0xaa, 0x2e, 0xa6, 0x11, 0x2a, 0xb9, 0x26, 0x84, 0x22, 0x4e, 0xef, 0x2f, 0x1f, + 0x80, 0x03, 0xde, 0xa6, 0xf8, 0xf9, 0x37, 0xbc, 0xd7, 0xcf, 0x81, 0x71, 0x54, 0xcd, 0x33, 0x3b, + 0x74, 0xe9, 0xf7, 0xfa, 0x93, 0x9f, 0x37, 0xd4, 0xb6, 0xf3, 0x17, 0x32, 0x70, 0x2e, 0x9d, 0xf0, + 0xd3, 0x66, 0x9b, 0xc6, 0x4c, 0x62, 0xca, 0x1b, 0x7b, 0x98, 0x6d, 0x9a, 0xa7, 0x1d, 0x43, 0xfc, + 0x18, 0x81, 0xec, 0xc3, 0xf4, 0x9a, 0x13, 0x84, 0xab, 0xd4, 0xf1, 0xc3, 0x3d, 0xea, 0x84, 0x43, + 0x58, 0xb0, 0xaf, 0xc8, 0xb7, 0x92, 0x71, 0x51, 0x3b, 0x94, 0x94, 0x09, 0x03, 0x4f, 0x67, 0x1b, + 0x09, 0xca, 0xc8, 0x10, 0x82, 0xf2, 0xe3, 0x30, 0x5b, 0xa3, 0x2d, 0xa7, 0x73, 0xe8, 0xf9, 0x54, + 0xf8, 0xe0, 0xaf, 0xc3, 0x74, 0x04, 0x4a, 0x95, 0x16, 0xbd, 0x58, 0xc3, 0x57, 0x3a, 0x22, 0x56, + 0x25, 0x7a, 0xb1, 0xf9, 0xb7, 0x32, 0x70, 0xbe, 0x50, 0x17, 0xc7, 0x6a, 0xa2, 0x40, 0x9e, 0xfe, + 0x7f, 0xc6, 0x75, 0x93, 0x1b, 0x30, 0xb1, 0xee, 0x3c, 0x5a, 0xa3, 0x4e, 0x40, 0x03, 0x91, 0xeb, + 0x93, 0x9b, 0x5f, 0xce, 0xa3, 0xf8, 0xb4, 0xc9, 0x8a, 0x71, 0xd4, 0xcd, 0xe6, 0xc8, 0x13, 0x6e, + 0x36, 0x4d, 0x18, 0x5b, 0xf5, 0x9a, 0x0d, 0xb1, 0x38, 0x89, 0xf3, 0x8f, 0x43, 0x84, 0x58, 0xa2, + 0xc4, 0xfc, 0x33, 0x03, 0x66, 0xa2, 0x16, 0x63, 0x13, 0x3e, 0xf3, 0x2e, 0xb9, 0x0c, 0xe3, 0x58, + 0x51, 0xf4, 0x50, 0x3c, 0x2e, 0x1a, 0x4d, 0x06, 0xb2, 0xdd, 0x86, 0x25, 0x0b, 0xd5, 0x9e, 0x18, + 0x7d, 0xb2, 0x9e, 0x30, 0xff, 0x3e, 0x1e, 0xad, 0xa8, 0x5f, 0xc9, 0x56, 0x22, 0xa5, 0x21, 0xc6, + 0x90, 0x0d, 0xc9, 0x3c, 0xb5, 0x21, 0xc9, 0xf6, 0x1d, 0x92, 0xef, 0x66, 0x60, 0x32, 0x6a, 0xec, + 0xe7, 0x2c, 0x21, 0x4e, 0xf4, 0x5d, 0x43, 0xdd, 0x54, 0xaa, 0x29, 0xba, 0x42, 0x5c, 0x08, 0xfa, + 0x10, 0xc6, 0xc4, 0x64, 0x32, 0x12, 0xa7, 0xe0, 0x89, 0xd1, 0x5d, 0x99, 0x11, 0xac, 0xc7, 0x70, + 0x40, 0x03, 0x4b, 0xd0, 0xe1, 0x55, 0xb0, 0x5d, 0xba, 0x27, 0x4e, 0xda, 0x9e, 0xd9, 0x35, 0x2a, + 0xfd, 0x2a, 0x58, 0xfc, 0x61, 0x43, 0xad, 0x4e, 0xc7, 0xa3, 0x90, 0x4f, 0x92, 0x9c, 0x9c, 0x72, + 0xa8, 0xda, 0xdd, 0x13, 0x4f, 0xfa, 0x62, 0xca, 0xa1, 0x4e, 0x77, 0xcf, 0x62, 0x30, 0x72, 0x19, + 0x46, 0xaa, 0xbe, 0xfb, 0x00, 0xbf, 0x5a, 0xbc, 0x68, 0xdc, 0xf1, 0xdd, 0x07, 0xea, 0x71, 0x2e, + 0x2b, 0xc7, 0x0d, 0xed, 0x5a, 0x0d, 0xc3, 0xeb, 0xd1, 0xb0, 0x16, 0x1b, 0xda, 0x66, 0x90, 0x4c, + 0x36, 0x28, 0xd1, 0xd8, 0x52, 0xb9, 0x42, 0x1d, 0x5f, 0xa4, 0xc7, 0x11, 0xea, 0x0c, 0x97, 0xca, + 0x3d, 0x04, 0xf3, 0x17, 0x2f, 0x2c, 0x15, 0x89, 0x34, 0x81, 0x28, 0x3f, 0xe5, 0x04, 0x3e, 0x79, + 0x8f, 0x77, 0x49, 0x7a, 0xdf, 0x54, 0xd6, 0xb6, 0x3a, 0x9b, 0x53, 0xf8, 0x3e, 0x4d, 0x1f, 0x61, + 0x55, 0x5c, 0x96, 0x46, 0x47, 0x46, 0xee, 0x44, 0x66, 0xf2, 0xfe, 0x09, 0xf0, 0xcb, 0xd4, 0x91, + 0x3b, 0x23, 0x66, 0x42, 0xde, 0x87, 0x49, 0xf5, 0xd2, 0x04, 0x0f, 0xed, 0x7f, 0x9e, 0x5f, 0x52, + 0xee, 0x93, 0x74, 0x59, 0x25, 0x20, 0x7b, 0x70, 0xbe, 0xe8, 0xb5, 0x83, 0x6e, 0x8b, 0x36, 0xb4, + 0x93, 0xe0, 0x4a, 0x09, 0x37, 0x98, 0x13, 0x3c, 0x02, 0xbb, 0x2e, 0x50, 0x44, 0x8c, 0xbe, 0x0c, + 0x31, 0xd2, 0x37, 0x20, 0xfd, 0x18, 0x91, 0x2d, 0x98, 0xac, 0x15, 0xd6, 0xd7, 0x64, 0xe0, 0xfb, + 0xa4, 0xae, 0x36, 0xe2, 0x92, 0x12, 0x9b, 0x18, 0xfc, 0xee, 0xa7, 0xd3, 0x6a, 0xca, 0x08, 0x17, + 0xd5, 0xfb, 0xa8, 0x20, 0x9b, 0x5f, 0x50, 0xe5, 0x5b, 0x98, 0x1b, 0x03, 0xe5, 0xdb, 0xfc, 0x6f, + 0xc7, 0x60, 0x36, 0x51, 0x9d, 0xd8, 0xff, 0x18, 0x3d, 0xfb, 0x9f, 0x1a, 0x00, 0x77, 0x65, 0x0d, + 0xe9, 0x73, 0x92, 0xc1, 0x91, 0x93, 0x22, 0x5e, 0x3b, 0x1a, 0x2b, 0x85, 0x0d, 0x63, 0xca, 0x25, + 0x61, 0x48, 0x9f, 0x63, 0xc4, 0x94, 0x0b, 0x93, 0xc2, 0x34, 0x66, 0x43, 0x96, 0x60, 0x14, 0x6f, + 0xb3, 0xab, 0xb1, 0xa9, 0x2e, 0x03, 0x58, 0x1c, 0x4e, 0x5e, 0x86, 0x31, 0xb6, 0x38, 0x57, 0x4a, + 0x62, 0x72, 0xa1, 0xce, 0x62, 0xab, 0x37, 0x5b, 0x09, 0x45, 0x11, 0xb9, 0x0d, 0x53, 0xfc, 0x2f, + 0x71, 0x79, 0x67, 0x4c, 0x8f, 0xdb, 0xb0, 0xdd, 0x86, 0xbc, 0xbf, 0xa3, 0xe1, 0x31, 0xab, 0xb5, + 0xd6, 0xdd, 0x13, 0xaf, 0x45, 0x8d, 0xc7, 0x56, 0x6b, 0xc0, 0x81, 0xf8, 0x46, 0x4a, 0x84, 0xc0, + 0xd6, 0x48, 0x11, 0x8f, 0x94, 0xc3, 0xbd, 0x0a, 0xae, 0x91, 0x3c, 0x14, 0xc9, 0x12, 0x25, 0xe4, + 0x2a, 0xf7, 0x2a, 0xa3, 0xb9, 0xc1, 0x93, 0x76, 0xa2, 0x1f, 0x18, 0x37, 0xbc, 0x68, 0x73, 0x44, + 0xc5, 0xac, 0x72, 0xf6, 0x77, 0xb9, 0xe5, 0xb8, 0x4d, 0x21, 0xae, 0x58, 0x39, 0xe2, 0x52, 0x06, + 0xb5, 0x62, 0x04, 0xf2, 0x2e, 0xcc, 0xb0, 0x1f, 0x45, 0xaf, 0xd5, 0xf2, 0xda, 0xc8, 0x7e, 0x32, + 0xbe, 0x66, 0x89, 0x24, 0x75, 0x2c, 0xe2, 0xb5, 0x24, 0x70, 0x99, 0x9e, 0xc2, 0x33, 0xa6, 0x2e, + 0xf7, 0x77, 0x4f, 0xc5, 0x7a, 0x0a, 0x49, 0x03, 0x0e, 0xb7, 0x54, 0x24, 0xf2, 0x36, 0x4c, 0xb3, + 0x9f, 0x77, 0xdd, 0x07, 0x94, 0x57, 0x38, 0x1d, 0x1f, 0xf7, 0x21, 0xd5, 0x01, 0x2b, 0xe1, 0xf5, + 0xe9, 0x98, 0xe4, 0x63, 0x38, 0x8b, 0x9c, 0xea, 0x5e, 0x87, 0x36, 0x0a, 0xfb, 0xfb, 0x6e, 0xd3, + 0xe5, 0xef, 0x5a, 0xf3, 0x6b, 0x2a, 0xe8, 0x63, 0xe4, 0x15, 0x23, 0x86, 0xed, 0xc4, 0x28, 0x56, + 0x3a, 0x25, 0xd9, 0x85, 0x7c, 0xb1, 0x1b, 0x84, 0x5e, 0xab, 0x10, 0x86, 0xbe, 0xbb, 0xd7, 0x0d, + 0x69, 0xb0, 0x38, 0xab, 0x5d, 0xe6, 0x60, 0x93, 0x23, 0x2a, 0xe4, 0x7e, 0x86, 0x3a, 0x52, 0xd8, + 0x4e, 0x44, 0x62, 0xf5, 0x30, 0x31, 0xff, 0x1b, 0x03, 0xa6, 0x35, 0x52, 0xf2, 0x16, 0x4c, 0xdd, + 0xf1, 0x5d, 0xda, 0x6e, 0x34, 0x8f, 0x94, 0x0d, 0x10, 0x5a, 0xc7, 0xfb, 0x02, 0xce, 0xbf, 0x5a, + 0x43, 0x8b, 0xfc, 0x07, 0x99, 0xd4, 0x80, 0x98, 0x1b, 0x3c, 0x44, 0x5a, 0x08, 0x68, 0x36, 0xbe, + 0x5d, 0x86, 0x02, 0x2a, 0xa4, 0x53, 0x41, 0x21, 0xef, 0xc1, 0x18, 0x3f, 0x8d, 0x12, 0xd1, 0x19, + 0x17, 0xd2, 0x3e, 0x93, 0x87, 0xe3, 0xa3, 0x20, 0xe2, 0x21, 0x78, 0x60, 0x09, 0x22, 0xf3, 0x57, + 0x0c, 0x20, 0xbd, 0xa8, 0x27, 0xf8, 0x53, 0x4e, 0x3c, 0x5c, 0xff, 0x30, 0x9a, 0x8d, 0x59, 0xcd, + 0x27, 0xc8, 0x6a, 0xe2, 0x05, 0xbc, 0xe3, 0xc5, 0xac, 0x53, 0x1d, 0x3c, 0xbc, 0xd8, 0xfc, 0x6b, + 0x19, 0x80, 0x18, 0x9b, 0x7c, 0x99, 0x67, 0x5d, 0xfc, 0xb8, 0xeb, 0x34, 0xdd, 0x7d, 0x57, 0xcf, + 0x72, 0x80, 0x4c, 0x7e, 0x5c, 0x96, 0x58, 0x3a, 0x22, 0xf9, 0x00, 0x66, 0x6b, 0x55, 0x9d, 0x56, + 0xc9, 0x30, 0x17, 0x74, 0xec, 0x04, 0x79, 0x12, 0x1b, 0xa3, 0xb0, 0xd4, 0xd1, 0xe0, 0x51, 0x58, + 0x7c, 0x20, 0x44, 0x09, 0x53, 0x2c, 0xb5, 0x2a, 0x3e, 0x6b, 0xd5, 0xa0, 0x8d, 0x4a, 0x49, 0x68, + 0x29, 0x6c, 0x5d, 0xd0, 0xb1, 0x3b, 0xbc, 0x00, 0xdf, 0x52, 0xd2, 0xf0, 0xe2, 0x8e, 0x1c, 0xed, + 0x13, 0x72, 0xff, 0x6b, 0xe8, 0x4e, 0x6a, 0x79, 0x21, 0x15, 0xbb, 0xe8, 0x67, 0xd6, 0x9e, 0x8e, + 0x8f, 0x32, 0x47, 0xb5, 0x48, 0x62, 0xed, 0xeb, 0x38, 0xc6, 0xce, 0xad, 0xd8, 0xf8, 0xe5, 0x87, + 0x9a, 0xf2, 0x28, 0x53, 0x31, 0xfd, 0xfe, 0x9e, 0x01, 0x67, 0x53, 0x69, 0xc9, 0x75, 0x80, 0xd8, + 0x57, 0x21, 0x7a, 0x89, 0x3f, 0x69, 0x15, 0x41, 0x2d, 0x05, 0x83, 0x7c, 0x23, 0xe9, 0x65, 0x38, + 0x79, 0x21, 0x94, 0x0f, 0xf5, 0xcf, 0xe8, 0x5e, 0x86, 0x14, 0xdf, 0x82, 0xf9, 0x3b, 0x59, 0x98, + 0x53, 0xae, 0x6c, 0xf1, 0xb6, 0x9e, 0x10, 0x15, 0x77, 0x5f, 0x3e, 0x9f, 0x26, 0x02, 0x28, 0x33, + 0xda, 0x8b, 0x80, 0x3d, 0xdc, 0xae, 0xab, 0xc8, 0xfc, 0xa2, 0x38, 0xaa, 0x4e, 0xf1, 0x9a, 0x5a, + 0x4f, 0x0c, 0xa5, 0xc6, 0x9c, 0x04, 0x30, 0x5d, 0x3a, 0x6a, 0x3b, 0xad, 0xa8, 0x36, 0x7e, 0xfc, + 0xfe, 0x7a, 0xdf, 0xda, 0x34, 0x6c, 0x5e, 0x9d, 0xb4, 0x39, 0x17, 0x1b, 0xbc, 0x2c, 0x25, 0x60, + 0x5f, 0xa3, 0xba, 0xf8, 0x01, 0xcc, 0xf5, 0x34, 0xfa, 0x54, 0x77, 0xd6, 0x77, 0x81, 0xf4, 0xb6, + 0x23, 0x85, 0xc3, 0xeb, 0x7a, 0x46, 0x84, 0xb3, 0xd1, 0xe1, 0x5c, 0xab, 0xe5, 0xb4, 0xf9, 0x6b, + 0xcd, 0x3b, 0xcb, 0xea, 0x8d, 0xf6, 0x5f, 0xcb, 0xa8, 0xf1, 0xb8, 0xcf, 0xfa, 0xac, 0xfb, 0x50, + 0xdb, 0x65, 0xbd, 0xd8, 0x6f, 0x4c, 0x87, 0xda, 0xcd, 0xfe, 0x30, 0x0b, 0xe7, 0xfb, 0x50, 0x92, + 0xa3, 0xa4, 0x10, 0xf1, 0xdd, 0xed, 0xcd, 0xc1, 0x15, 0x3e, 0x0d, 0x51, 0x22, 0x5f, 0xe6, 0x37, + 0x72, 0xea, 0xf8, 0x52, 0x82, 0xd8, 0xd7, 0x45, 0x6f, 0x40, 0x73, 0x68, 0xf2, 0x2a, 0x0e, 0x87, + 0x92, 0x0f, 0xe4, 0x1b, 0xd0, 0xfa, 0x95, 0x71, 0x86, 0xc1, 0xdf, 0x7c, 0x8e, 0xef, 0xd7, 0xa7, + 0xbf, 0xfb, 0xfc, 0x25, 0xc8, 0x16, 0x76, 0x6b, 0x62, 0x5c, 0x66, 0x54, 0xf2, 0xdd, 0x5a, 0x9c, + 0x64, 0xcb, 0xd1, 0xb2, 0x61, 0x31, 0x0a, 0x46, 0x78, 0xb7, 0x58, 0x15, 0xa3, 0xa2, 0x12, 0xde, + 0x2d, 0x56, 0x63, 0xc2, 0x83, 0xba, 0x76, 0x19, 0xef, 0x6e, 0xb1, 0xfa, 0xd9, 0x89, 0xfd, 0xdf, + 0xc8, 0xf0, 0x6b, 0x44, 0xfc, 0xc3, 0x3e, 0x80, 0x29, 0x2d, 0x63, 0x8d, 0x11, 0xdb, 0x63, 0x51, + 0xb6, 0x9d, 0x44, 0xf4, 0x83, 0x46, 0x20, 0xd3, 0xd5, 0x45, 0x0f, 0x67, 0xaa, 0xc1, 0x0b, 0xfa, + 0x63, 0x9b, 0xc9, 0x74, 0x75, 0x11, 0x09, 0xb9, 0x05, 0xb9, 0x2d, 0xda, 0x76, 0xda, 0x61, 0xe4, + 0x68, 0xc3, 0x60, 0xbb, 0x10, 0x61, 0xba, 0xd5, 0x10, 0x21, 0xe2, 0x33, 0xa7, 0xca, 0xb3, 0x9f, + 0xd1, 0x5a, 0xcc, 0x43, 0x40, 0x95, 0x92, 0xc4, 0x3b, 0xb1, 0x3a, 0x91, 0xf9, 0x6b, 0x06, 0x8c, + 0x8b, 0x81, 0x54, 0x1e, 0xe7, 0x33, 0x86, 0x78, 0x9c, 0xef, 0x36, 0x4c, 0x88, 0x88, 0x78, 0xfd, + 0x85, 0x58, 0x11, 0x44, 0x9f, 0x78, 0x21, 0x36, 0x42, 0x1d, 0x3a, 0x96, 0xfc, 0xef, 0x8a, 0x96, + 0xdd, 0x2d, 0x56, 0xc9, 0x32, 0xe4, 0xd6, 0xbc, 0xba, 0xa3, 0xac, 0x73, 0xa8, 0x76, 0x9a, 0x02, + 0xa6, 0x76, 0x90, 0xc4, 0xd3, 0x5f, 0xbe, 0xcd, 0x0c, 0xff, 0xf2, 0xed, 0xb0, 0xed, 0xa3, 0x29, + 0x4a, 0x62, 0xe7, 0xd6, 0x9a, 0x1b, 0x84, 0xe4, 0x23, 0x35, 0x46, 0x5f, 0x14, 0x49, 0x4d, 0x71, + 0xb1, 0x9f, 0xa6, 0xd8, 0xb9, 0x65, 0xa5, 0x50, 0xe1, 0x79, 0x4d, 0x0c, 0xe6, 0xcf, 0x8d, 0x7f, + 0xce, 0xf2, 0x30, 0x27, 0x3f, 0x6f, 0x28, 0x25, 0xfd, 0x4f, 0x33, 0x70, 0x2e, 0x9d, 0x50, 0xfd, + 0x16, 0x63, 0xc0, 0xb7, 0x5c, 0x81, 0xdc, 0xaa, 0x17, 0x84, 0x4a, 0xc0, 0x13, 0xba, 0x95, 0x0f, + 0x05, 0xcc, 0x8a, 0x4a, 0xd9, 0x9e, 0x9b, 0xfd, 0x1d, 0x4d, 0x4f, 0xe4, 0x87, 0x97, 0x67, 0xd8, + 0x9e, 0x9b, 0x17, 0x91, 0xbb, 0x90, 0xb3, 0x44, 0x38, 0x79, 0xa2, 0x6b, 0x24, 0x38, 0xb2, 0xa6, + 0x88, 0x2f, 0x20, 0x5a, 0xe2, 0x20, 0x01, 0x23, 0x05, 0x18, 0x17, 0xa3, 0x9f, 0x38, 0x92, 0x4c, + 0x11, 0x19, 0x3d, 0x97, 0x97, 0xa4, 0x63, 0x1a, 0x05, 0x0f, 0x97, 0x2a, 0x25, 0x19, 0x19, 0x8e, + 0x1a, 0x85, 0x1f, 0x3e, 0xe9, 0xd9, 0xc3, 0x22, 0x44, 0xf3, 0x67, 0x32, 0x00, 0xbb, 0x74, 0xef, + 0xd9, 0x4e, 0xef, 0xfe, 0x25, 0x4d, 0xc2, 0x94, 0x78, 0x8a, 0xe1, 0xb3, 0xbb, 0x6f, 0x62, 0x5c, + 0xc3, 0xf0, 0xb9, 0xdd, 0x97, 0x60, 0x94, 0x7b, 0x3b, 0x95, 0x4d, 0x22, 0x77, 0x73, 0x72, 0xb8, + 0xb9, 0x07, 0x0b, 0x77, 0x69, 0x18, 0xbb, 0xb7, 0xe4, 0x91, 0xd6, 0x60, 0xb6, 0x6f, 0xc0, 0x84, + 0xc0, 0xd7, 0xdf, 0xab, 0x95, 0xf7, 0xd1, 0xd0, 0x17, 0x23, 0x11, 0x98, 0x36, 0x2a, 0xd1, 0x26, + 0x0d, 0xe9, 0x67, 0x5b, 0x4d, 0x0d, 0x08, 0xff, 0x14, 0xfc, 0xb2, 0xe1, 0x6a, 0x38, 0xb1, 0x7f, + 0x76, 0xe0, 0x6c, 0xd4, 0xf6, 0xa7, 0xc9, 0xf7, 0x06, 0xdb, 0x52, 0x8a, 0x34, 0x58, 0x31, 0xc7, + 0x01, 0x31, 0x0d, 0x8f, 0xe0, 0xa2, 0x24, 0xd8, 0x75, 0xa3, 0xc0, 0xb0, 0xa1, 0x68, 0xc9, 0xbb, + 0x30, 0xa9, 0xd0, 0x88, 0x44, 0x83, 0xe8, 0xfe, 0x7c, 0xe8, 0x86, 0x87, 0x76, 0xc0, 0xe1, 0xaa, + 0xfb, 0x53, 0x41, 0x37, 0xbf, 0x0e, 0xcf, 0x45, 0x61, 0xf4, 0x29, 0x55, 0x27, 0x98, 0x1b, 0xa7, + 0x63, 0xbe, 0x11, 0x7f, 0x56, 0xa5, 0x1d, 0x5d, 0xea, 0x92, 0xbc, 0x89, 0xfa, 0x59, 0xe2, 0x63, + 0x9e, 0xef, 0xb9, 0x26, 0xa6, 0xdc, 0x06, 0x33, 0xdf, 0x51, 0x1a, 0x9b, 0xc2, 0x50, 0x23, 0x36, + 0x92, 0xc4, 0x3f, 0x93, 0x81, 0xd9, 0xcd, 0x4a, 0xa9, 0x18, 0x45, 0xb5, 0x7c, 0xce, 0x72, 0xcf, + 0x6b, 0xdf, 0xd6, 0x5f, 0xdf, 0x98, 0xdb, 0x30, 0x9f, 0xe8, 0x06, 0x34, 0x1d, 0xde, 0xe7, 0xe1, + 0xee, 0x11, 0x58, 0x9a, 0x0d, 0xe7, 0xd2, 0xd8, 0xef, 0xdc, 0xb2, 0x12, 0xd8, 0xe6, 0x3f, 0xcc, + 0x25, 0xf8, 0x0a, 0x15, 0xf6, 0x06, 0x4c, 0x54, 0x82, 0xa0, 0x4b, 0xfd, 0x6d, 0x6b, 0x4d, 0x75, + 0x15, 0xb8, 0x08, 0xb4, 0xbb, 0x7e, 0xd3, 0x8a, 0x11, 0xc8, 0x55, 0xc8, 0x89, 0xd4, 0x4b, 0x52, + 0x27, 0xa0, 0xd7, 0x36, 0xca, 0xdc, 0x64, 0x45, 0xc5, 0xe4, 0x2d, 0x98, 0xe2, 0x7f, 0x73, 0x69, + 0x13, 0x1d, 0x8e, 0xce, 0x41, 0x81, 0xce, 0xa5, 0xd3, 0xd2, 0xd0, 0xc8, 0x35, 0xc8, 0x16, 0x8a, + 0x96, 0xfa, 0x4c, 0xa5, 0x53, 0xf7, 0xf9, 0x73, 0xb5, 0xfa, 0x26, 0xa2, 0x68, 0x31, 0xeb, 0x4f, + 0xb8, 0x92, 0x7c, 0xe1, 0xc9, 0x46, 0x09, 0x90, 0xde, 0xa6, 0xc4, 0x62, 0x86, 0x30, 0x72, 0x03, + 0xc6, 0x4b, 0x6e, 0xd0, 0x69, 0x3a, 0x47, 0xc2, 0x8f, 0xcd, 0x33, 0xd2, 0x72, 0x90, 0x2a, 0x33, + 0x02, 0x8b, 0x5c, 0x85, 0x51, 0x74, 0xb2, 0x0a, 0x5f, 0x36, 0xcf, 0xdb, 0xca, 0x00, 0x5a, 0xde, + 0x56, 0x06, 0xc0, 0xcc, 0x7e, 0x3c, 0x41, 0xd1, 0x84, 0x92, 0xd9, 0x2f, 0x99, 0x98, 0x48, 0xe0, + 0xf4, 0xde, 0x8f, 0x82, 0xa7, 0x79, 0x3f, 0x6a, 0x0f, 0xce, 0xdf, 0x45, 0xef, 0x8d, 0x7e, 0x49, + 0x75, 0xdb, 0xaa, 0x08, 0x7f, 0x38, 0x9e, 0xf8, 0x70, 0x07, 0x4f, 0xf2, 0x9e, 0x6b, 0xe2, 0x29, + 0xea, 0x7e, 0x8c, 0xc8, 0x57, 0x61, 0x21, 0xad, 0x48, 0x78, 0xcd, 0xf1, 0x82, 0x78, 0x7a, 0x05, + 0xea, 0x0d, 0xed, 0x34, 0x0e, 0x64, 0x0d, 0xf2, 0x1c, 0x5e, 0x68, 0xb4, 0xdc, 0x36, 0xf7, 0xfc, + 0x4f, 0xc7, 0x4f, 0x84, 0x09, 0xae, 0x0e, 0x2b, 0xe4, 0x27, 0x00, 0xda, 0xc5, 0x87, 0x04, 0x25, + 0xf9, 0x45, 0x83, 0xed, 0xe6, 0x78, 0x3a, 0x9f, 0x6d, 0x6b, 0x2d, 0x10, 0x57, 0xf9, 0xfb, 0x3d, + 0xef, 0xbd, 0xf5, 0x94, 0x9e, 0xf7, 0x9e, 0xf2, 0x45, 0x9d, 0x38, 0x8b, 0xb4, 0x16, 0xe0, 0xbb, + 0x46, 0xcd, 0xa6, 0xf7, 0x70, 0xbb, 0xfd, 0x80, 0xfa, 0xee, 0xbe, 0x4b, 0x1b, 0xfc, 0x23, 0x67, + 0x51, 0x83, 0xf3, 0x77, 0x8d, 0xf0, 0xdd, 0xa9, 0x6e, 0x84, 0xd0, 0xf3, 0xa1, 0xa9, 0x1c, 0xd8, + 0xc6, 0x53, 0x86, 0xe1, 0xf3, 0xdb, 0x69, 0xf9, 0x78, 0xe3, 0x29, 0x63, 0xf6, 0x6d, 0x14, 0x23, + 0x55, 0x78, 0x34, 0x12, 0x11, 0xf3, 0xfb, 0x5f, 0xe7, 0xb8, 0x46, 0x2e, 0x74, 0xc3, 0x43, 0xa9, + 0xc3, 0x97, 0xd3, 0xae, 0x12, 0xf0, 0x90, 0x27, 0xe5, 0x2a, 0x81, 0x7e, 0x81, 0x40, 0xba, 0xd2, + 0x33, 0xa9, 0xae, 0xf4, 0x37, 0x60, 0x02, 0x5f, 0x55, 0x8c, 0x62, 0xb6, 0x73, 0xc2, 0x57, 0xc9, + 0x80, 0x3c, 0x17, 0x52, 0x8c, 0x40, 0x6e, 0x00, 0x60, 0x8e, 0x64, 0xbe, 0xc0, 0x2b, 0xb9, 0xe7, + 0x30, 0x95, 0xb2, 0x38, 0x45, 0x56, 0x50, 0x90, 0x7d, 0xcd, 0xba, 0xa3, 0x1e, 0x3b, 0x73, 0xf6, + 0x81, 0xbf, 0x2f, 0xd0, 0x63, 0x04, 0xf6, 0x79, 0xca, 0x30, 0x09, 0xa5, 0x92, 0xef, 0x19, 0x4b, + 0x15, 0x09, 0x23, 0xba, 0x64, 0x80, 0x2a, 0xea, 0x94, 0x29, 0x11, 0xd1, 0x15, 0x05, 0xb3, 0x5a, + 0x31, 0x02, 0xf9, 0x12, 0x8c, 0x17, 0xa9, 0x1f, 0x6e, 0x6d, 0xad, 0x89, 0x97, 0xd1, 0xd9, 0xbe, + 0x3c, 0x87, 0xc9, 0xb4, 0xc2, 0xb0, 0xf9, 0xa3, 0xe3, 0xa5, 0xe9, 0xd0, 0x6d, 0xd1, 0xeb, 0xd1, + 0x31, 0xae, 0xc4, 0x26, 0x2b, 0x90, 0xe7, 0x67, 0x8c, 0xb1, 0x21, 0x87, 0x6a, 0x26, 0xc7, 0x95, + 0x9e, 0x38, 0x90, 0x7c, 0x48, 0xf7, 0xa2, 0x54, 0x62, 0x3d, 0xf8, 0xa4, 0x2c, 0x33, 0xf0, 0xa9, + 0x1f, 0x09, 0xb1, 0x67, 0x41, 0x28, 0x66, 0xed, 0x5b, 0x7b, 0x29, 0x48, 0x01, 0xa6, 0x8b, 0x5e, + 0xab, 0xe3, 0x84, 0x2e, 0xa6, 0x60, 0x3e, 0x12, 0x1a, 0x05, 0xbd, 0x23, 0x75, 0xb5, 0x40, 0x7f, + 0x24, 0x51, 0x29, 0x20, 0x77, 0x60, 0xc6, 0xf2, 0xba, 0x6c, 0x90, 0xe4, 0x96, 0x86, 0x2b, 0x8d, + 0xe8, 0xf9, 0x5d, 0x36, 0x96, 0xb6, 0xd8, 0xbf, 0x68, 0x29, 0x2e, 0x34, 0x2a, 0xb2, 0x91, 0xe2, + 0x5b, 0x56, 0x35, 0x85, 0x9a, 0x50, 0xac, 0x87, 0x59, 0x8a, 0x5b, 0xfa, 0x16, 0x4c, 0xd6, 0x6a, + 0x9b, 0x5b, 0x34, 0x08, 0xef, 0x34, 0xbd, 0x87, 0xa8, 0x28, 0x72, 0x22, 0x8f, 0x69, 0xe0, 0xd9, + 0x21, 0x0d, 0x42, 0x7b, 0xbf, 0xe9, 0x3d, 0xb4, 0x54, 0x2c, 0xf2, 0x63, 0xca, 0xab, 0x91, 0xb8, + 0xf2, 0xcf, 0x9e, 0xb8, 0xf2, 0x27, 0x5e, 0x94, 0x64, 0xeb, 0x7f, 0xea, 0x8b, 0x92, 0x0c, 0x1d, + 0x2f, 0x20, 0xb0, 0xcd, 0x58, 0xa1, 0xd1, 0xf0, 0x69, 0x10, 0x88, 0x19, 0xad, 0xbc, 0x89, 0xeb, + 0xf0, 0x02, 0xed, 0x02, 0x82, 0x42, 0x40, 0xbe, 0x6b, 0xc0, 0x59, 0x35, 0x86, 0x19, 0x27, 0x4b, + 0x8b, 0xb6, 0xc3, 0xc5, 0x39, 0x6c, 0xe9, 0x9b, 0xd7, 0xa5, 0x46, 0xbb, 0xae, 0xa0, 0x5d, 0x7f, + 0x70, 0xf3, 0xba, 0xf2, 0x74, 0x5a, 0x4d, 0x12, 0xe1, 0xf3, 0xd9, 0x4b, 0xa9, 0xfc, 0x54, 0xed, + 0xe4, 0xa4, 0x90, 0xa2, 0x95, 0x57, 0x2b, 0xac, 0xaf, 0xc5, 0xa6, 0xca, 0xe7, 0x2b, 0x3a, 0x58, + 0xfb, 0xb6, 0x01, 0xd1, 0xc1, 0xdb, 0x30, 0x9f, 0xe8, 0x06, 0x69, 0xe5, 0x69, 0xe0, 0xa4, 0x95, + 0x97, 0xa0, 0xb1, 0x12, 0xd8, 0xe6, 0x3f, 0x18, 0x4f, 0xf0, 0x15, 0x11, 0x41, 0x26, 0x8c, 0x71, + 0x23, 0x4e, 0x7d, 0xec, 0x87, 0x9b, 0x78, 0x96, 0x28, 0x21, 0x17, 0x20, 0x5b, 0xab, 0x6d, 0xaa, + 0x4f, 0x91, 0x05, 0x81, 0x67, 0x31, 0x18, 0x1b, 0x21, 0x0c, 0xf6, 0x51, 0xd2, 0x66, 0x31, 0x8d, + 0x65, 0x21, 0x94, 0xf5, 0xb7, 0x34, 0xa9, 0x46, 0xe2, 0xfe, 0x16, 0x26, 0x55, 0x6c, 0x48, 0x15, + 0x61, 0xb1, 0x10, 0x04, 0xd4, 0xe7, 0x2f, 0x21, 0x63, 0x0c, 0x89, 0x2f, 0x96, 0x7d, 0xa1, 0x98, + 0xb1, 0x52, 0xa7, 0x1e, 0x58, 0x7d, 0x11, 0xc9, 0x15, 0xc8, 0x15, 0xba, 0x0d, 0x97, 0xb6, 0xeb, + 0x5a, 0x2e, 0x06, 0x47, 0xc0, 0xac, 0xa8, 0x94, 0x7c, 0x0c, 0x67, 0x05, 0x91, 0xb4, 0xfd, 0x44, + 0x0f, 0x8c, 0xc7, 0xb3, 0x47, 0x9a, 0x25, 0xf1, 0xf9, 0x24, 0xef, 0x92, 0x74, 0x4a, 0x52, 0x80, + 0x7c, 0x19, 0xa3, 0xe1, 0x4b, 0x94, 0xbb, 0x4a, 0x3d, 0x5f, 0x3c, 0x5c, 0x8a, 0x46, 0x24, 0x8f, + 0x94, 0xb7, 0x1b, 0x51, 0xa1, 0xd5, 0x83, 0x4e, 0xee, 0xc1, 0x7c, 0x12, 0xc6, 0x74, 0x30, 0xb7, + 0x17, 0x31, 0x6f, 0x4b, 0x0f, 0x17, 0xd4, 0xc2, 0x69, 0x54, 0x64, 0x0f, 0xe6, 0xe2, 0xf3, 0x79, + 0xdd, 0x8a, 0x94, 0xe1, 0x64, 0x51, 0xb9, 0xb4, 0x24, 0x9f, 0x13, 0xc2, 0x38, 0x1f, 0x9f, 0xf5, + 0x47, 0xd6, 0xa4, 0xd5, 0xcb, 0x8e, 0x34, 0x60, 0xa6, 0xe6, 0x1e, 0xb4, 0xdd, 0xf6, 0xc1, 0x3d, + 0x7a, 0x54, 0x75, 0x5c, 0x5f, 0x04, 0xf6, 0xc8, 0xb0, 0xbd, 0x42, 0x70, 0xd4, 0x6a, 0xd1, 0xd0, + 0xc7, 0xd5, 0x8d, 0x95, 0xe3, 0x15, 0x37, 0x83, 0xa9, 0xf1, 0x80, 0xd3, 0xe1, 0x75, 0x8e, 0x8e, + 0xe3, 0x6a, 0x6a, 0x5c, 0xe7, 0xa9, 0x59, 0xf2, 0x53, 0x43, 0x5a, 0xf2, 0x4d, 0x98, 0x2b, 0xb7, + 0xeb, 0xfe, 0x11, 0x7a, 0xac, 0x65, 0xe3, 0xa6, 0x4f, 0x68, 0xdc, 0x2b, 0xa2, 0x71, 0xcf, 0x3b, + 0x52, 0xc2, 0xd2, 0x9a, 0xd7, 0xcb, 0x98, 0xd4, 0xc4, 0x2b, 0xad, 0x95, 0x52, 0xb5, 0xd2, 0x76, + 0x43, 0x17, 0x9f, 0xdd, 0xe1, 0xcb, 0xc3, 0xab, 0x82, 0xe7, 0x0b, 0xdc, 0x62, 0x73, 0x1b, 0x1d, + 0xdb, 0x95, 0x28, 0x3d, 0xcf, 0xb0, 0xaa, 0xf4, 0xe6, 0xff, 0x35, 0xce, 0xb5, 0xa1, 0x6a, 0x61, + 0xf5, 0x0b, 0x55, 0x4a, 0x58, 0x5e, 0x99, 0xd3, 0x58, 0x5e, 0xd9, 0x93, 0x2d, 0xaf, 0x91, 0x93, + 0x2c, 0xaf, 0x84, 0x69, 0x34, 0x7a, 0x6a, 0xd3, 0x68, 0xec, 0x14, 0xa6, 0xd1, 0xf8, 0xa9, 0x4c, + 0x23, 0xcd, 0xc6, 0xcb, 0x9d, 0x64, 0xe3, 0xfd, 0x6b, 0x43, 0xea, 0x59, 0x35, 0xa4, 0xd2, 0x16, + 0xd7, 0x53, 0x19, 0x52, 0xfd, 0xed, 0xa0, 0xfc, 0xff, 0xcf, 0x76, 0xd0, 0x4f, 0x42, 0x3e, 0xa9, + 0x9a, 0x4f, 0x4e, 0x14, 0xf4, 0xd4, 0xf2, 0x79, 0xb0, 0x85, 0x23, 0xa9, 0x1a, 0xd9, 0xd6, 0xaa, + 0xea, 0xbb, 0x0f, 0x9c, 0x90, 0xc6, 0x2f, 0x55, 0xe2, 0xd6, 0xaa, 0xc3, 0xa1, 0x38, 0x5d, 0x15, + 0x94, 0xc8, 0x2a, 0xc8, 0xa4, 0x59, 0x05, 0xe6, 0xcf, 0x66, 0x60, 0x8e, 0xa7, 0x20, 0x78, 0xf6, + 0x3d, 0x7a, 0xef, 0x6b, 0xb6, 0x9e, 0x0c, 0xdc, 0x49, 0x7c, 0xdd, 0x00, 0x9f, 0xde, 0x37, 0xe1, + 0x6c, 0x4f, 0x57, 0xa0, 0xbd, 0x57, 0x92, 0xc9, 0x1f, 0x7a, 0x2c, 0xbe, 0xc5, 0xf4, 0x4a, 0x76, + 0x6e, 0x59, 0x3d, 0x14, 0xe6, 0x3f, 0xcf, 0xf6, 0xf0, 0x17, 0xde, 0x3d, 0xd5, 0x5f, 0x67, 0x9c, + 0xce, 0x5f, 0x97, 0x19, 0xce, 0x5f, 0x97, 0x58, 0x16, 0xb2, 0xc3, 0x2c, 0x0b, 0x1f, 0xc3, 0xf4, + 0x16, 0x75, 0x5a, 0xc1, 0x96, 0x27, 0x32, 0x0a, 0xf2, 0xc0, 0x3d, 0x99, 0xdb, 0x81, 0x95, 0x49, + 0x73, 0x25, 0x0a, 0x40, 0x08, 0x19, 0x01, 0x53, 0x65, 0x3c, 0xc5, 0xa0, 0xa5, 0x73, 0x50, 0x6d, + 0xd0, 0xd1, 0x01, 0x36, 0x68, 0x0d, 0xa6, 0x04, 0x5d, 0x9c, 0x1d, 0x29, 0x36, 0x96, 0x58, 0x11, + 0xc2, 0x65, 0xed, 0xd1, 0xcb, 0x00, 0x51, 0xed, 0xdc, 0x4e, 0xd2, 0x98, 0xb0, 0x2e, 0x28, 0xb7, + 0x1b, 0x1d, 0xcf, 0x6d, 0x63, 0x17, 0x8c, 0xc7, 0x5d, 0x40, 0x05, 0x98, 0x77, 0x81, 0x82, 0x44, + 0xde, 0x85, 0x99, 0x42, 0xb5, 0xa2, 0x92, 0xe5, 0xd4, 0x77, 0xc2, 0x5d, 0x5b, 0x23, 0x4d, 0xe0, + 0x9a, 0xff, 0x38, 0x27, 0xe7, 0xd6, 0x67, 0xeb, 0x9b, 0xd1, 0xbd, 0x2d, 0xd9, 0x53, 0x7a, 0x5b, + 0x46, 0x4e, 0x5a, 0x89, 0x35, 0xf3, 0x60, 0xf4, 0x14, 0xe6, 0xc1, 0xd8, 0x13, 0x7b, 0x4e, 0xc6, + 0x4f, 0xb9, 0xe0, 0x27, 0xc4, 0x3c, 0x37, 0x8c, 0x98, 0xa7, 0x1a, 0x09, 0x13, 0x4f, 0x6e, 0x24, + 0xc0, 0xa9, 0x8d, 0x04, 0xe5, 0x51, 0xc7, 0xc9, 0xa1, 0x1e, 0x75, 0x34, 0x86, 0x78, 0xd4, 0xf1, + 0x73, 0x65, 0x79, 0x7c, 0x2b, 0xdd, 0xf2, 0x18, 0xac, 0xea, 0x9f, 0x51, 0xdb, 0xc3, 0xc7, 0x0e, + 0xda, 0x75, 0x7c, 0xb6, 0x03, 0x0b, 0xc8, 0x0d, 0x18, 0x97, 0x09, 0x56, 0x8c, 0x78, 0x33, 0xdb, + 0x9b, 0x59, 0x45, 0x62, 0xb1, 0xcd, 0x9a, 0x24, 0x16, 0x97, 0x91, 0x79, 0x2e, 0x09, 0x01, 0xd3, + 0x72, 0x49, 0x08, 0x98, 0xf9, 0xef, 0x8e, 0xc8, 0x49, 0xc8, 0x36, 0x13, 0xe2, 0x01, 0xa3, 0x15, + 0xa5, 0xd3, 0x15, 0xcb, 0x27, 0xd1, 0xad, 0x89, 0x20, 0x1b, 0x9d, 0xe4, 0xd3, 0x64, 0xa7, 0x51, + 0x72, 0x76, 0x67, 0x87, 0xc8, 0xd9, 0xfd, 0xb6, 0x96, 0xf0, 0x7a, 0x24, 0xce, 0xb0, 0xca, 0x04, + 0x73, 0x70, 0xaa, 0xeb, 0xdb, 0x6a, 0x66, 0xea, 0xd1, 0xf8, 0xde, 0x36, 0x52, 0x0e, 0xc8, 0x49, + 0x1d, 0x99, 0x72, 0x63, 0xa7, 0xc9, 0xd4, 0x34, 0xfe, 0x2f, 0x35, 0x53, 0x53, 0x19, 0x40, 0x79, + 0xd5, 0x86, 0xfb, 0xb6, 0x5f, 0x65, 0xdd, 0x74, 0xf2, 0x8b, 0x36, 0x0a, 0xa1, 0xf9, 0x2f, 0xe6, + 0x60, 0xae, 0x56, 0xdb, 0x2c, 0xb9, 0xce, 0x41, 0xdb, 0x0b, 0x42, 0xb7, 0x5e, 0x69, 0xef, 0x7b, + 0xcc, 0x8e, 0x89, 0x26, 0xb4, 0x92, 0x35, 0x28, 0x9e, 0xcc, 0x51, 0x31, 0xb3, 0x93, 0xcb, 0xbe, + 0xef, 0xf9, 0xaa, 0x9d, 0x4c, 0x19, 0xc0, 0xe2, 0x70, 0x66, 0x2a, 0xd4, 0xba, 0xfc, 0x79, 0x12, + 0x7e, 0xdc, 0x80, 0xa6, 0x42, 0xc0, 0x41, 0x96, 0x2c, 0x23, 0xb4, 0x57, 0x60, 0x85, 0xe9, 0x78, + 0x5e, 0xcb, 0xf7, 0x14, 0x17, 0x73, 0x75, 0x25, 0x96, 0x13, 0xbc, 0xb5, 0xd1, 0x41, 0xb8, 0x7a, + 0x36, 0xd5, 0x33, 0x07, 0x8e, 0xe0, 0xac, 0x76, 0xfb, 0x60, 0x58, 0x3f, 0xce, 0x35, 0x61, 0x9a, + 0x98, 0x78, 0x89, 0x2a, 0xc5, 0x99, 0xa3, 0xa6, 0x8c, 0x4d, 0xad, 0x81, 0xfc, 0xac, 0x01, 0x2f, + 0xa4, 0x96, 0x44, 0xb3, 0x7b, 0x52, 0xcb, 0xb9, 0xa5, 0x28, 0x0d, 0x7c, 0xd2, 0xe5, 0xf5, 0x7e, + 0x55, 0xdb, 0x29, 0xaa, 0x60, 0x70, 0x4d, 0xe4, 0x1f, 0x1b, 0x70, 0x5e, 0xc3, 0x88, 0xd4, 0x55, + 0x80, 0xcb, 0x4a, 0x5f, 0xb9, 0xfe, 0xf6, 0xd3, 0x91, 0xeb, 0x97, 0xf5, 0x6f, 0x89, 0xb5, 0xa9, + 0xfa, 0x0d, 0xfd, 0x5a, 0x48, 0x1e, 0xc0, 0x1c, 0x16, 0x49, 0x9f, 0x12, 0x93, 0x59, 0xe1, 0x8a, + 0x5a, 0x88, 0x9b, 0xcd, 0x6f, 0xd4, 0xe0, 0x7b, 0x06, 0xcb, 0x3f, 0x3c, 0x5e, 0x9a, 0xd6, 0xd0, + 0x31, 0xdd, 0x27, 0xb6, 0x21, 0x72, 0x4c, 0xb9, 0xed, 0x7d, 0x4f, 0x7b, 0x76, 0x37, 0x59, 0x05, + 0xf9, 0x8f, 0x0d, 0x58, 0x64, 0x50, 0xfe, 0x19, 0x77, 0x7c, 0xaf, 0x15, 0x95, 0xcb, 0x43, 0xce, + 0x3e, 0xdd, 0xd6, 0x7c, 0x3a, 0xdd, 0xf6, 0x2a, 0x36, 0x99, 0xeb, 0x04, 0x7b, 0xdf, 0xf7, 0x5a, + 0x71, 0xf3, 0xb5, 0x57, 0x5b, 0xfa, 0x35, 0x92, 0xfc, 0xb4, 0x01, 0x17, 0xb4, 0x6d, 0xbd, 0x9a, + 0xe4, 0x52, 0xdc, 0x5b, 0x92, 0x27, 0xe2, 0x6a, 0xd1, 0xca, 0x75, 0x21, 0xff, 0x97, 0xb1, 0x05, + 0xf1, 0x6a, 0x81, 0x6d, 0xb1, 0x5b, 0x1c, 0x4b, 0x69, 0x42, 0xff, 0x5a, 0x88, 0x0b, 0x73, 0x78, + 0x44, 0xa3, 0x1d, 0xc6, 0x2f, 0xf4, 0x3f, 0x8c, 0x8f, 0xf2, 0x4e, 0x63, 0x22, 0xc1, 0xfe, 0x27, + 0xf2, 0xbd, 0x5c, 0xc9, 0x4f, 0xc1, 0x85, 0x1e, 0x60, 0x34, 0xdb, 0xce, 0xf6, 0x9d, 0x6d, 0xaf, + 0x3f, 0x3e, 0x5e, 0x7a, 0x2d, 0xad, 0xb6, 0xb4, 0x99, 0xd6, 0xbf, 0x06, 0xe2, 0x00, 0xc4, 0x85, + 0xe2, 0x19, 0x98, 0x74, 0x01, 0x7d, 0x5d, 0xc8, 0x87, 0x82, 0xcf, 0x74, 0xb9, 0xd2, 0x06, 0x75, + 0xc9, 0x8b, 0x91, 0x08, 0x85, 0x29, 0x25, 0x89, 0xe2, 0x11, 0xbe, 0x07, 0xd3, 0xb7, 0x92, 0x1f, + 0x1e, 0x2f, 0x69, 0xd8, 0xcc, 0xa4, 0x55, 0xb3, 0x33, 0xaa, 0x26, 0xad, 0x86, 0x48, 0x7e, 0xdf, + 0x80, 0x05, 0x06, 0x88, 0x85, 0x4a, 0x7c, 0xd4, 0xe2, 0x20, 0xa9, 0x3f, 0x7c, 0x3a, 0x52, 0xff, + 0x12, 0xb6, 0x51, 0x95, 0xfa, 0x9e, 0x2e, 0x49, 0x6d, 0x1c, 0x4a, 0xbb, 0x76, 0x1a, 0xa8, 0x49, + 0xfb, 0x85, 0x21, 0xa4, 0x9d, 0x0f, 0xc0, 0xc9, 0xd2, 0xde, 0xb7, 0x16, 0xb2, 0x05, 0x53, 0xc2, + 0x9a, 0xe5, 0x1d, 0xf6, 0xa2, 0x96, 0xb3, 0x4d, 0x2d, 0xe2, 0x5b, 0x0c, 0x91, 0x63, 0xb2, 0xe7, + 0x0b, 0x35, 0x2e, 0xa4, 0x0d, 0xf3, 0xfc, 0xb7, 0xbe, 0xb1, 0x5f, 0xea, 0xbb, 0xb1, 0xbf, 0x22, + 0xbe, 0xe8, 0x92, 0xe0, 0x9f, 0xd8, 0xdf, 0xab, 0xe9, 0xdb, 0x53, 0x18, 0x93, 0x0e, 0x10, 0x0d, + 0xcc, 0x27, 0xed, 0xa5, 0xc1, 0xdb, 0xf9, 0xd7, 0x44, 0x9d, 0x4b, 0xc9, 0x3a, 0x93, 0x33, 0x37, + 0x85, 0x37, 0x71, 0x60, 0x56, 0x40, 0xd9, 0xde, 0x15, 0x35, 0xfc, 0x4b, 0xda, 0x15, 0xe7, 0x44, + 0x29, 0x7f, 0x14, 0x45, 0xd6, 0x84, 0x57, 0xd0, 0x13, 0x0a, 0x3d, 0xc9, 0xcf, 0xfc, 0xae, 0xd1, + 0x53, 0x07, 0xdb, 0x23, 0xe3, 0x0f, 0xe5, 0x32, 0x22, 0xee, 0x91, 0x39, 0x47, 0xdc, 0xab, 0xc7, + 0x08, 0xcc, 0xb6, 0x51, 0x13, 0x5d, 0x64, 0xc5, 0x3b, 0xaa, 0x1c, 0x14, 0x6f, 0xdd, 0x96, 0x64, + 0x4c, 0x53, 0x36, 0xb6, 0x91, 0x30, 0xa6, 0x49, 0x44, 0x32, 0x99, 0x3f, 0x9d, 0xd1, 0xa5, 0x84, + 0x5c, 0x51, 0xcc, 0x6c, 0x25, 0xd5, 0x86, 0x34, 0xb3, 0x15, 0xe3, 0xfa, 0xef, 0x19, 0x30, 0xbf, + 0xe9, 0x1f, 0x38, 0x6d, 0xf7, 0x3b, 0x3c, 0x11, 0x97, 0x87, 0xdd, 0x18, 0xdd, 0xc3, 0xf8, 0x4c, + 0x13, 0x7a, 0x7b, 0x4a, 0xc5, 0x6c, 0x60, 0x71, 0x84, 0xad, 0xb4, 0xf6, 0x60, 0x94, 0x28, 0x36, + 0x4c, 0xc9, 0xab, 0xce, 0xd1, 0x39, 0xdc, 0xfc, 0x85, 0x0c, 0x4c, 0x2a, 0x12, 0x4b, 0xbe, 0x08, + 0x53, 0x2a, 0x1f, 0xd5, 0xbf, 0xa2, 0x56, 0x6b, 0x69, 0x58, 0xe8, 0x60, 0xa1, 0x4e, 0x4b, 0x73, + 0xb0, 0x30, 0xb9, 0x44, 0xe8, 0x29, 0x77, 0x22, 0x1f, 0xa4, 0xec, 0x44, 0x4e, 0xf5, 0xf4, 0xce, + 0xbb, 0xbd, 0xfb, 0x91, 0xe1, 0x5f, 0xca, 0x31, 0x7f, 0xc9, 0x80, 0x7c, 0x72, 0x4e, 0x7d, 0x26, + 0xbd, 0x72, 0x0a, 0x4f, 0xf6, 0xcf, 0x67, 0x20, 0x8f, 0x2f, 0x7c, 0xd1, 0x86, 0x8c, 0x7d, 0x7f, + 0x56, 0x03, 0x0a, 0xde, 0xd3, 0x9c, 0xcc, 0xcf, 0x45, 0xcb, 0x80, 0xfa, 0x71, 0x03, 0x72, 0x82, + 0x8c, 0x7c, 0xff, 0x37, 0x97, 0xce, 0x98, 0x9f, 0xc0, 0x42, 0xb2, 0x3b, 0xd0, 0xd1, 0x5c, 0x80, + 0x59, 0x1d, 0x9e, 0x4c, 0x97, 0x9c, 0xa4, 0xb2, 0x92, 0xf8, 0xe6, 0x1f, 0x67, 0x92, 0xbc, 0x45, + 0x70, 0x01, 0x53, 0x3a, 0x6d, 0x67, 0xaf, 0x19, 0x65, 0x74, 0x15, 0x8f, 0x37, 0x23, 0xc8, 0x92, + 0x65, 0xa7, 0x49, 0x9c, 0x1d, 0x45, 0x70, 0x67, 0xd3, 0x23, 0xb8, 0xc9, 0xed, 0x44, 0x44, 0x8c, + 0x72, 0xdd, 0xf8, 0x21, 0xdd, 0xb3, 0xe3, 0xa8, 0x98, 0x44, 0x20, 0x4c, 0x11, 0x16, 0xb4, 0x9c, + 0x6c, 0x92, 0x7e, 0x34, 0x76, 0x6d, 0x86, 0x58, 0xc0, 0x89, 0x53, 0x91, 0xc9, 0x2a, 0x8c, 0xb3, + 0x66, 0xae, 0x3b, 0x1d, 0xe1, 0x3f, 0x56, 0xdf, 0xb8, 0x95, 0x6b, 0x8d, 0x72, 0xa5, 0xa3, 0x49, + 0xd9, 0x0a, 0xad, 0xbd, 0x5c, 0xc5, 0x11, 0xcd, 0x3f, 0x37, 0xd8, 0xfc, 0xaf, 0xdf, 0xff, 0x9c, + 0xa5, 0xf4, 0x66, 0x9f, 0x34, 0x20, 0xf6, 0xe5, 0x4f, 0x32, 0x3c, 0x29, 0xaf, 0x10, 0x9f, 0xb7, + 0x61, 0x6c, 0xcb, 0xf1, 0x0f, 0x68, 0x28, 0xd2, 0xc7, 0xaa, 0x5c, 0x78, 0x41, 0x7c, 0x19, 0x3a, + 0xc4, 0xdf, 0x96, 0x20, 0x50, 0x5d, 0x57, 0x99, 0xa1, 0x5c, 0x57, 0x8a, 0x23, 0x34, 0xfb, 0xd4, + 0x1c, 0xa1, 0x5f, 0x8b, 0xf2, 0xe1, 0x16, 0xc2, 0x21, 0x52, 0x7e, 0x5d, 0x4a, 0x26, 0x87, 0xee, + 0x49, 0xce, 0x16, 0xb3, 0x23, 0xb7, 0xd5, 0x74, 0xd3, 0x4a, 0x50, 0xf4, 0x09, 0x89, 0xa5, 0xcd, + 0xbf, 0x9f, 0xe5, 0x7d, 0x2c, 0x3a, 0xea, 0xb2, 0x76, 0x61, 0x02, 0xe7, 0x09, 0x53, 0xf4, 0xea, + 0xdd, 0x35, 0x3c, 0xe4, 0xbf, 0x0c, 0x23, 0x4c, 0x36, 0x45, 0x6f, 0xf2, 0xf7, 0x49, 0xbd, 0xa6, + 0x76, 0xc7, 0x8d, 0x95, 0xb3, 0xb9, 0x8c, 0x6b, 0x92, 0x9a, 0xd9, 0x1e, 0x97, 0x2d, 0x75, 0x2e, + 0x23, 0x06, 0x5e, 0x9b, 0xf3, 0x1a, 0x54, 0x9d, 0xa2, 0x6d, 0xfd, 0xa1, 0x46, 0x2c, 0x67, 0x5f, + 0x1a, 0x25, 0x98, 0x55, 0xbf, 0xb4, 0xb5, 0xef, 0xd8, 0x3c, 0xb1, 0xa9, 0xfa, 0xa5, 0x71, 0x2e, + 0xda, 0x32, 0xcc, 0xe8, 0x8f, 0x3c, 0x89, 0xb8, 0x20, 0xbc, 0xef, 0x98, 0x78, 0x20, 0x4a, 0xf5, + 0x42, 0xeb, 0x44, 0x64, 0x05, 0xa6, 0xb5, 0x84, 0x36, 0xe2, 0x18, 0x07, 0x7d, 0x91, 0x7a, 0x3a, + 0x1c, 0xd5, 0x17, 0xa9, 0x91, 0xb0, 0xd5, 0x5c, 0xb4, 0x5f, 0x39, 0xcc, 0xe9, 0x69, 0xbb, 0xc0, + 0x51, 0x2e, 0x16, 0x7d, 0x01, 0xf2, 0x42, 0xb7, 0x44, 0x4f, 0x12, 0xe0, 0xe1, 0x6a, 0xa5, 0x64, + 0xa9, 0xfa, 0xa0, 0xee, 0x36, 0x7c, 0x0b, 0xa1, 0xe6, 0x2f, 0x1b, 0x70, 0x61, 0x83, 0x86, 0x0f, 0x3d, 0xff, 0xbe, 0x45, 0x83, 0xd0, 0x77, 0xf9, 0x0b, 0x07, 0x38, 0xa3, 0xbe, 0x48, 0xde, 0x95, 0x6f, 0x67, 0xeb, 0x2a, 0x3e, 0x59, 0xc7, 0xca, 0xb4, 0x90, 0xc4, 0x51, 0x0c, 0x5c, 0x91, 0x6f, 0x66, 0xbf, 0x2d, 0xde, 0xcc, 0xce, 0x0c, 0x26, 0x8e, 0x66, 0x76, 0x83, 0xb6, 0xe5, 0x5b, 0xd9, - 0xbf, 0x9c, 0x81, 0xb3, 0x29, 0xcd, 0xda, 0xf9, 0xe2, 0x33, 0xaa, 0xde, 0x56, 0x34, 0xf5, 0x76, + 0xbf, 0x94, 0x81, 0xb3, 0x29, 0xcd, 0xda, 0xf9, 0xe2, 0x33, 0xaa, 0xde, 0x56, 0x34, 0xf5, 0x76, 0x49, 0x90, 0xf6, 0xed, 0xf8, 0x54, 0x6d, 0xf7, 0xeb, 0x06, 0x9c, 0xd7, 0x65, 0x4d, 0x04, 0x97, 0xed, 0xdc, 0x22, 0xef, 0xc0, 0xd8, 0x2a, 0x75, 0x1a, 0x54, 0x66, 0xce, 0x8e, 0x9f, 0x4d, 0xe5, 0xb7, 0x68, 0x78, 0x21, 0x67, 0xfb, 0xc7, 0x5c, 0x19, 0x9d, 0xb1, 0x04, 0x09, 0x29, 0x89, 0xc6, - 0x71, 0xc3, 0xda, 0x94, 0x37, 0xda, 0xd2, 0xaa, 0x1a, 0x70, 0x34, 0xfd, 0x23, 0x03, 0x9e, 0x1b, + 0x71, 0xc3, 0xda, 0x94, 0x37, 0xda, 0xd2, 0xaa, 0x1a, 0x70, 0x34, 0xfd, 0x43, 0x03, 0x9e, 0x1b, 0x40, 0xc3, 0x06, 0x8e, 0x0d, 0xbd, 0x3a, 0x70, 0xb8, 0x34, 0x22, 0x94, 0xbc, 0x0f, 0xb3, 0x5b, 0xc2, 0x30, 0x97, 0xc3, 0x91, 0x89, 0x45, 0x5f, 0xda, 0xec, 0xb6, 0x1c, 0x97, 0x24, 0xb2, 0x76, 0xd5, 0x32, 0x3b, 0xf0, 0xaa, 0xa5, 0x7a, 0x73, 0x71, 0x64, 0xd8, 0x9b, 0x8b, 0x9f, 0x24, 0xdf, @@ -15294,11 +15462,11 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x7d, 0x9d, 0xf7, 0x93, 0x8e, 0xe7, 0x7b, 0xda, 0x78, 0x3e, 0x97, 0x3e, 0x9e, 0xfd, 0x07, 0xf2, 0x37, 0x8c, 0xe4, 0xc7, 0x0e, 0x35, 0x82, 0x26, 0x8c, 0x95, 0xbc, 0x96, 0xe3, 0xb6, 0xd5, 0x27, 0xb6, 0x1a, 0x08, 0xb1, 0x44, 0xc9, 0x70, 0xd7, 0x5c, 0x2f, 0xc1, 0xe8, 0x86, 0xd7, 0x2e, 0x94, - 0x44, 0x24, 0x19, 0xf2, 0x69, 0x7b, 0x6d, 0xdb, 0x69, 0x58, 0xbc, 0xc0, 0xfc, 0xb9, 0x51, 0xb8, + 0x44, 0x24, 0x19, 0xf2, 0x69, 0x7b, 0x6d, 0xdb, 0x69, 0x58, 0xbc, 0xc0, 0xfc, 0xd9, 0x51, 0xb8, 0x60, 0xd1, 0x03, 0x97, 0x99, 0x8e, 0xdb, 0x81, 0xdb, 0x3e, 0xd0, 0xee, 0xf4, 0x99, 0x89, 0x31, 0x11, 0x89, 0x15, 0x19, 0x24, 0xaa, 0xe3, 0x2a, 0xe4, 0xd8, 0x5a, 0xa1, 0x0c, 0x0b, 0x1e, 0x03, 0xe0, 0x83, 0xa7, 0x5c, 0x5e, 0x64, 0x31, 0xb9, 0x26, 0x56, 0x32, 0x25, 0xf5, 0x2d, 0x5b, 0xc9, - 0x7e, 0x7c, 0xbc, 0x04, 0xb5, 0xa3, 0x20, 0xa4, 0xb8, 0x8b, 0x11, 0xab, 0x59, 0x64, 0x6e, 0x8e, + 0x7e, 0x74, 0xbc, 0x04, 0xb5, 0xa3, 0x20, 0xa4, 0xb8, 0x8b, 0x11, 0xab, 0x59, 0x64, 0x6e, 0x8e, 0xf4, 0x31, 0x37, 0xd7, 0x61, 0xa1, 0xd0, 0xe0, 0x7a, 0xcf, 0x69, 0x56, 0x7d, 0xb7, 0x5d, 0x77, 0x3b, 0x4e, 0x53, 0x6e, 0xa1, 0xf0, 0x30, 0xc8, 0x89, 0xca, 0xed, 0x4e, 0x84, 0x60, 0xa5, 0x92, 0xb1, 0xcf, 0x28, 0x6d, 0xd4, 0xf8, 0x7b, 0x96, 0xfc, 0x84, 0x07, 0x3f, 0xa3, 0xd1, 0x0e, 0xf8, @@ -15318,11 +15486,11 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x4d, 0x11, 0x1b, 0x53, 0x17, 0x9d, 0x1c, 0x0d, 0x4b, 0x14, 0x99, 0x5f, 0x83, 0x85, 0x8d, 0x6e, 0xb3, 0xc9, 0x36, 0xa9, 0x32, 0x8d, 0x66, 0xe8, 0x84, 0x94, 0xac, 0xc0, 0x28, 0xfe, 0x21, 0x1e, 0xa7, 0x9e, 0xd7, 0x5f, 0xeb, 0xc4, 0x22, 0x0c, 0x4f, 0x32, 0xf0, 0x46, 0x60, 0xa8, 0xbf, 0xf6, - 0xca, 0x49, 0xcd, 0x1f, 0xc6, 0xef, 0x1e, 0x6e, 0xf9, 0x4e, 0xfd, 0x3e, 0xf5, 0xc5, 0x0a, 0x34, + 0xca, 0x49, 0xcd, 0x1f, 0xc4, 0xef, 0x1e, 0x6e, 0xf9, 0x4e, 0xfd, 0x3e, 0xf5, 0xc5, 0x0a, 0x34, 0xec, 0xbb, 0x8c, 0x1f, 0xc9, 0x46, 0xe8, 0xab, 0x42, 0x5a, 0x83, 0x4f, 0x6a, 0x0c, 0x79, 0x17, 0x26, 0xc5, 0xca, 0xa0, 0xe4, 0xb1, 0xc0, 0xcb, 0xc2, 0xf2, 0xfd, 0xd4, 0xc4, 0x89, 0xb9, 0x8a, 0x8e, 0x0b, 0x9e, 0xfe, 0x29, 0x3b, 0x37, 0x3f, 0x8b, 0x05, 0x4f, 0xaf, 0x63, 0x80, 0xe8, 0xfe, - 0x2c, 0x24, 0xfb, 0x56, 0xc8, 0xee, 0x6d, 0xf5, 0xe6, 0xba, 0x11, 0xef, 0x24, 0xe2, 0x9b, 0xeb, + 0x0c, 0x24, 0xfb, 0x56, 0xc8, 0xee, 0x6d, 0xf5, 0xe6, 0xba, 0x11, 0xef, 0x24, 0xe2, 0x9b, 0xeb, 0xea, 0x4e, 0x22, 0x42, 0x8d, 0xc6, 0x24, 0x73, 0xc2, 0x98, 0xbc, 0x2f, 0xc7, 0x24, 0xdb, 0x5f, 0x30, 0xe6, 0x07, 0x8c, 0x43, 0x2d, 0x9e, 0x21, 0x23, 0x43, 0x6d, 0x42, 0xcf, 0x60, 0x8a, 0x3e, 0x4e, 0x92, 0x54, 0x68, 0x82, 0x93, 0xba, 0xb3, 0x1d, 0x1d, 0x9e, 0xe9, 0x09, 0x3b, 0xdb, 0xaf, @@ -15348,7 +15516,7 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x08, 0x59, 0xe1, 0x90, 0xe1, 0xea, 0x1c, 0x25, 0x33, 0x73, 0xb2, 0xcf, 0x6b, 0x9d, 0xd9, 0x13, 0x4a, 0x5e, 0xa7, 0x56, 0xc2, 0x41, 0xc5, 0xca, 0xf1, 0x29, 0x31, 0x27, 0x08, 0x0b, 0xf5, 0xd0, 0x7d, 0x40, 0x87, 0xd0, 0xdc, 0xf1, 0x53, 0x62, 0x4e, 0x10, 0xda, 0x0e, 0x92, 0xf5, 0x3c, 0x25, - 0x16, 0x31, 0x34, 0xff, 0xaa, 0x01, 0xb0, 0x5d, 0x29, 0x62, 0x62, 0xb6, 0x27, 0x5d, 0x59, 0xd3, + 0x16, 0x31, 0x34, 0xff, 0x8a, 0x01, 0xb0, 0x5d, 0x29, 0x62, 0x62, 0xb6, 0x27, 0x5d, 0x59, 0xd3, 0x93, 0xdd, 0x48, 0xee, 0x03, 0xd6, 0xd4, 0x2a, 0xcc, 0xe8, 0x58, 0x6c, 0x87, 0x5f, 0xab, 0xfb, 0x5e, 0xb3, 0xb9, 0xe7, 0xd4, 0xef, 0xaf, 0xb9, 0x6d, 0xca, 0xb3, 0x8c, 0x8c, 0x72, 0x7d, 0x1e, 0x44, 0x45, 0x76, 0x93, 0x95, 0x59, 0x49, 0x64, 0xf3, 0x2f, 0x0c, 0x98, 0xac, 0xb4, 0x83, 0xd0, @@ -15366,7 +15534,7 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x75, 0xfc, 0x17, 0x23, 0x6b, 0x92, 0x81, 0xfc, 0x9b, 0x51, 0xee, 0xd9, 0x0c, 0xf2, 0x7a, 0xfd, 0x44, 0x5e, 0x1c, 0x1d, 0x99, 0x41, 0x6f, 0x1a, 0x5a, 0xbc, 0x6f, 0x41, 0x43, 0xc7, 0x6d, 0x06, 0xea, 0xb4, 0x6b, 0x70, 0x90, 0x25, 0xcb, 0xe2, 0x60, 0xcc, 0x91, 0xf4, 0x60, 0x4c, 0xf3, 0xff, - 0x31, 0x60, 0x22, 0x6a, 0x36, 0xb9, 0x08, 0xe7, 0xb6, 0xac, 0x42, 0xb1, 0x6c, 0x6f, 0x7d, 0x52, + 0x35, 0x60, 0x22, 0x6a, 0x36, 0xb9, 0x08, 0xe7, 0xb6, 0xac, 0x42, 0xb1, 0x6c, 0x6f, 0x7d, 0x52, 0x2d, 0xdb, 0xdb, 0x1b, 0xb5, 0x6a, 0xb9, 0x58, 0xb9, 0x53, 0x29, 0x97, 0xf2, 0x67, 0xc8, 0x1c, 0x4c, 0x6f, 0x6f, 0xdc, 0xdb, 0xd8, 0xdc, 0xdd, 0xb0, 0xcb, 0x96, 0xb5, 0x69, 0xe5, 0x0d, 0x32, 0x0d, 0x13, 0xd6, 0x4a, 0xa1, 0x68, 0x6f, 0x6c, 0x96, 0xca, 0xf9, 0x0c, 0xc9, 0xc3, 0x54, 0x71, @@ -15378,13 +15546,13 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x65, 0x2b, 0x0f, 0x49, 0xe8, 0x46, 0x61, 0xbd, 0x9c, 0x9f, 0x34, 0xdf, 0xe3, 0x57, 0x2c, 0x78, 0x57, 0x93, 0x73, 0x40, 0x6a, 0x5b, 0x85, 0xad, 0xed, 0x5a, 0xe2, 0xe3, 0x27, 0x61, 0xbc, 0xb6, 0x5d, 0x2c, 0x96, 0x6b, 0xb5, 0xbc, 0x41, 0x00, 0xc6, 0xee, 0x14, 0x2a, 0x6b, 0xe5, 0x52, 0x3e, - 0x63, 0xfe, 0x92, 0x01, 0x73, 0xd2, 0x7e, 0x91, 0x7e, 0xe5, 0x27, 0x9c, 0x8b, 0xef, 0x6b, 0xdb, + 0x63, 0xfe, 0xa2, 0x01, 0x73, 0xd2, 0x7e, 0x91, 0x7e, 0xe5, 0x27, 0x9c, 0x8b, 0xef, 0x6b, 0xdb, 0x32, 0x19, 0x01, 0x9f, 0xa8, 0x64, 0xc0, 0x34, 0xf4, 0xe1, 0x6c, 0x2a, 0x32, 0xf9, 0x04, 0xf2, 0xb2, 0x01, 0xeb, 0x4e, 0x58, 0x3f, 0x8c, 0xd5, 0xd8, 0x8b, 0x89, 0x4a, 0x12, 0x68, 0xdc, 0x3d, - 0x16, 0x3f, 0xb6, 0xd3, 0xc3, 0xc6, 0xfc, 0x09, 0x38, 0xdf, 0x87, 0x96, 0x14, 0x61, 0x2c, 0xca, - 0xc8, 0x3a, 0x20, 0x02, 0x65, 0xe1, 0x47, 0xc7, 0x4b, 0x02, 0x11, 0x9f, 0x1c, 0xc1, 0xbf, 0x2c, - 0x01, 0x31, 0xff, 0x86, 0x01, 0x53, 0xc2, 0xea, 0x2d, 0x34, 0xa9, 0x1f, 0x3e, 0x59, 0x0f, 0xbf, - 0xad, 0xf5, 0x70, 0x14, 0x4e, 0xac, 0xf0, 0x67, 0xc5, 0xa9, 0x9d, 0xfb, 0x5f, 0x1a, 0x90, 0x4f, + 0x16, 0x3f, 0xb6, 0xd3, 0xc3, 0xc6, 0xfc, 0x31, 0x38, 0xdf, 0x87, 0x96, 0x14, 0x61, 0x2c, 0xca, + 0xc8, 0x3a, 0x20, 0x02, 0x65, 0xe1, 0x87, 0xc7, 0x4b, 0x02, 0x11, 0x9f, 0x1c, 0xc1, 0xbf, 0x2c, + 0x01, 0x31, 0xff, 0xba, 0x01, 0x53, 0xc2, 0xea, 0x2d, 0x34, 0xa9, 0x1f, 0x3e, 0x59, 0x0f, 0xbf, + 0xad, 0xf5, 0x70, 0x14, 0x4e, 0xac, 0xf0, 0x67, 0xc5, 0xa9, 0x9d, 0xfb, 0x5f, 0x19, 0x90, 0x4f, 0x22, 0x92, 0xf7, 0x21, 0x57, 0xa3, 0x0f, 0xa8, 0xef, 0x86, 0x47, 0x42, 0x57, 0xc8, 0x54, 0xef, 0x1c, 0x47, 0x94, 0x71, 0xe7, 0x5a, 0x20, 0x7e, 0x59, 0x11, 0xcd, 0xb0, 0x2a, 0x4f, 0xd9, 0xb7, 0x66, 0x9f, 0xd6, 0xbe, 0xd5, 0xfc, 0x47, 0x19, 0x38, 0x7f, 0x97, 0x86, 0xea, 0x37, 0x45, 0xe7, @@ -15395,7 +15563,7 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x07, 0x2b, 0x73, 0x56, 0x0f, 0xfc, 0xe2, 0xdb, 0x30, 0xf9, 0x29, 0x33, 0x40, 0x9b, 0xff, 0xcc, 0x80, 0x05, 0x6c, 0xb4, 0xc2, 0x10, 0xbd, 0xaa, 0x5f, 0x88, 0x7b, 0x41, 0x49, 0x8a, 0xea, 0x30, 0x90, 0xbe, 0x0d, 0x89, 0x7a, 0x27, 0xde, 0xac, 0x67, 0x86, 0xd8, 0xac, 0xd7, 0x4e, 0xf3, 0xc2, - 0xd5, 0x90, 0xbe, 0x06, 0xfe, 0xda, 0x68, 0x3c, 0x94, 0xe6, 0x5f, 0xcb, 0xc0, 0xb8, 0x45, 0xf1, + 0xd5, 0x90, 0xbe, 0x06, 0xfe, 0xda, 0x68, 0x3c, 0x94, 0xe6, 0x5f, 0xcd, 0xc0, 0xb8, 0x45, 0xf1, 0xe9, 0x1f, 0x72, 0x19, 0xc6, 0x37, 0xbc, 0x90, 0x06, 0xeb, 0xda, 0x3b, 0x4f, 0x6d, 0x06, 0xb2, 0x5b, 0x0d, 0x4b, 0x16, 0x32, 0x41, 0xae, 0xfa, 0x5e, 0xa3, 0x5b, 0x0f, 0x55, 0x41, 0xee, 0x70, 0x90, 0x25, 0xcb, 0xc8, 0x1b, 0x30, 0x21, 0x38, 0x47, 0x47, 0x1a, 0x18, 0x53, 0xe7, 0xd3, 0xe8, @@ -15418,7 +15586,7 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x7b, 0x88, 0x05, 0xf3, 0x41, 0x93, 0x6d, 0x08, 0x45, 0xd4, 0x44, 0x07, 0x0b, 0xc5, 0x32, 0x79, 0x49, 0x6f, 0x10, 0xc3, 0xe3, 0x21, 0x14, 0x35, 0x1a, 0x86, 0x6e, 0xfb, 0x20, 0x58, 0x3d, 0x63, 0xcd, 0x05, 0x31, 0x98, 0xe3, 0x91, 0x02, 0xe4, 0xbc, 0x4e, 0x70, 0x40, 0xdb, 0xae, 0x74, 0x84, - 0xbf, 0xac, 0x31, 0xda, 0x14, 0x85, 0x3d, 0xbc, 0x22, 0xb2, 0xaf, 0x8c, 0xfc, 0x2f, 0xbf, 0xb9, + 0xbf, 0xac, 0x31, 0xda, 0x14, 0x85, 0x3d, 0xbc, 0x22, 0xb2, 0xaf, 0x8c, 0xfc, 0xaf, 0xbf, 0xb9, 0x64, 0xac, 0x00, 0xe4, 0x02, 0x51, 0x6a, 0xae, 0xc1, 0x85, 0xbe, 0xcd, 0x20, 0x57, 0x21, 0xbf, 0xef, 0x88, 0x9d, 0x6d, 0xfd, 0xd0, 0x69, 0xb7, 0x69, 0x53, 0x08, 0xc0, 0xac, 0x84, 0x17, 0x39, 0x98, 0x73, 0x36, 0x7f, 0xd3, 0x80, 0xe7, 0x07, 0x35, 0x86, 0x89, 0x91, 0x13, 0x1d, 0xc3, 0x5a, @@ -15429,98 +15597,104 @@ var fileDescriptor_9198ee693835762e = []byte{ 0x84, 0xbe, 0xd3, 0xd1, 0x06, 0x96, 0xb4, 0xe0, 0x82, 0xe7, 0x74, 0xc3, 0xc3, 0x65, 0x7c, 0x60, 0xde, 0xf3, 0x65, 0x20, 0x6d, 0x5d, 0x1e, 0xb7, 0x4c, 0x2e, 0xdf, 0xd0, 0xfb, 0xbd, 0xc0, 0xb0, 0x0b, 0x2a, 0x72, 0xd1, 0x6b, 0x50, 0x85, 0xeb, 0xea, 0x19, 0xeb, 0x3c, 0xe7, 0xd9, 0x83, 0xb5, - 0x32, 0xad, 0x09, 0x9e, 0xf9, 0x97, 0xe0, 0xca, 0xb0, 0x5c, 0xf1, 0x4d, 0xde, 0xf4, 0x26, 0x4e, - 0x58, 0x73, 0x4e, 0x92, 0x92, 0xbf, 0xc9, 0x1b, 0xdd, 0xb2, 0x75, 0x45, 0x5f, 0x4f, 0x4a, 0xd8, - 0xb6, 0xef, 0x9a, 0xef, 0xc1, 0x8c, 0x3e, 0x4b, 0xc8, 0xeb, 0x30, 0x12, 0x71, 0x9d, 0x89, 0xac, - 0x34, 0x15, 0x89, 0xf1, 0xb6, 0x10, 0xc9, 0xfc, 0x19, 0x03, 0xe6, 0x53, 0xe6, 0x0a, 0xf9, 0x3a, - 0xcc, 0xcb, 0x2e, 0xe5, 0xd3, 0x01, 0x0f, 0x36, 0x45, 0x67, 0x5e, 0x4d, 0xeb, 0x4c, 0x44, 0xc3, - 0x53, 0x4f, 0xbd, 0x1b, 0xe7, 0x44, 0x37, 0xc6, 0xe5, 0xc9, 0x0e, 0xfc, 0x07, 0x06, 0x98, 0x27, - 0xb3, 0x62, 0x9d, 0xd1, 0xd3, 0x96, 0x09, 0x6b, 0xd2, 0x89, 0xb1, 0xc9, 0xcb, 0x30, 0xed, 0xd3, - 0x7d, 0x9f, 0x06, 0x87, 0x02, 0x87, 0x77, 0xd8, 0x94, 0x00, 0x72, 0xa4, 0xf7, 0x41, 0x06, 0x96, - 0x0f, 0x61, 0x0e, 0x2a, 0xef, 0x6e, 0x0b, 0x22, 0xf3, 0x6d, 0xa9, 0x38, 0xd6, 0xdc, 0x20, 0xdc, - 0xb9, 0x49, 0xae, 0xc2, 0x38, 0xd7, 0x15, 0x72, 0x57, 0x30, 0xab, 0x75, 0xcf, 0xce, 0x4d, 0x4b, - 0x96, 0x9b, 0xbf, 0x2d, 0xee, 0x3d, 0x55, 0x1a, 0xd5, 0x44, 0xa6, 0xa6, 0x27, 0xdd, 0xfc, 0x94, - 0x35, 0xd3, 0xfc, 0x65, 0x25, 0xf1, 0x48, 0x6f, 0x5d, 0xfd, 0xf7, 0x40, 0x4a, 0x6c, 0xd7, 0xdf, - 0x34, 0xe0, 0xf9, 0x41, 0xe4, 0xa9, 0x49, 0xa5, 0x8c, 0xd3, 0x25, 0x95, 0xba, 0x0a, 0x39, 0x0e, - 0xd3, 0xb3, 0xb2, 0x0a, 0x52, 0xb7, 0x61, 0x45, 0xc5, 0x66, 0x01, 0xa0, 0xd2, 0xa8, 0x6e, 0x76, - 0xf8, 0xed, 0xab, 0x5b, 0x30, 0xc2, 0xda, 0x96, 0xe8, 0x28, 0xd6, 0xd4, 0xc2, 0xfa, 0x9a, 0x40, - 0xe2, 0x96, 0x41, 0xe0, 0xb4, 0x9a, 0x16, 0x22, 0x9b, 0xbb, 0x30, 0xa3, 0x63, 0x90, 0xb2, 0x1e, - 0x00, 0x1c, 0x3f, 0x24, 0xb1, 0xe2, 0x79, 0x7c, 0x7f, 0xb5, 0x72, 0xe1, 0x47, 0xc7, 0x4b, 0xc0, - 0x7e, 0x72, 0x9a, 0xb4, 0x00, 0x61, 0xf3, 0x7b, 0x19, 0x58, 0x88, 0x0f, 0x19, 0xe4, 0x70, 0x3d, - 0xb3, 0x3e, 0xc3, 0x82, 0xe6, 0xd3, 0x5a, 0xea, 0xc9, 0xd5, 0x2e, 0x3f, 0x70, 0xc0, 0x56, 0xfa, - 0x2e, 0x2c, 0xf6, 0xc3, 0x27, 0xaf, 0xf7, 0x64, 0x53, 0x16, 0xc1, 0x30, 0x51, 0xda, 0x65, 0x25, - 0xb9, 0xf2, 0x16, 0x7f, 0xd6, 0x0c, 0xaf, 0x01, 0x3c, 0xe1, 0x14, 0x51, 0x64, 0xfb, 0x5f, 0x37, - 0x60, 0x61, 0xf3, 0x7e, 0xe8, 0x54, 0x5a, 0x1d, 0xcf, 0x0f, 0xad, 0x6e, 0x53, 0xb6, 0xed, 0x0a, - 0xe4, 0xaa, 0x72, 0x5d, 0xe3, 0xde, 0x62, 0x34, 0xd8, 0xe5, 0xda, 0x66, 0x45, 0xa5, 0x64, 0x15, - 0x72, 0x22, 0x62, 0x5a, 0x3e, 0xf2, 0x23, 0x7d, 0x01, 0x3a, 0x63, 0x81, 0xc4, 0xfa, 0x09, 0xbb, - 0x5b, 0xd0, 0x58, 0x11, 0xb5, 0xf9, 0xe7, 0x06, 0x9c, 0xef, 0x43, 0x43, 0xde, 0x83, 0x51, 0x74, - 0x07, 0x08, 0xc5, 0xf2, 0x7c, 0x9f, 0x2a, 0xc2, 0xfa, 0xe1, 0xce, 0x4d, 0xee, 0xa4, 0x6a, 0xb1, - 0x1f, 0x16, 0xa7, 0x22, 0x5f, 0x87, 0x89, 0x42, 0xa3, 0xa1, 0x3d, 0x45, 0xf4, 0xe6, 0xe0, 0x56, - 0x5e, 0x8f, 0xf0, 0xf9, 0x9b, 0x2e, 0xdc, 0xfc, 0x6d, 0x34, 0xc4, 0x5b, 0x2e, 0x56, 0xcc, 0xef, - 0xe2, 0xbb, 0x30, 0xa3, 0x23, 0x9f, 0x6a, 0x0f, 0xf8, 0x03, 0x03, 0xf2, 0x7a, 0x1b, 0x3e, 0x9b, - 0x53, 0xf9, 0xb4, 0x61, 0x3e, 0x41, 0xf3, 0xfd, 0x14, 0x9c, 0x4d, 0xed, 0x60, 0xf2, 0x26, 0x8c, - 0x15, 0x3a, 0x1d, 0x66, 0xb8, 0x1b, 0xf1, 0x51, 0xaf, 0xd3, 0xe9, 0x24, 0xc2, 0xf8, 0x04, 0x12, - 0xb9, 0x05, 0x39, 0x94, 0x5b, 0x46, 0x90, 0x89, 0x23, 0xff, 0xf0, 0xa2, 0x4b, 0x32, 0xf2, 0x4f, - 0x22, 0x46, 0xfd, 0x52, 0x08, 0x02, 0xf7, 0xa0, 0xcd, 0x76, 0xc5, 0x9f, 0x5d, 0xbf, 0xc4, 0x75, - 0x0c, 0xd5, 0x2f, 0xdf, 0xe1, 0x93, 0x26, 0x49, 0x75, 0x42, 0x52, 0xfb, 0x12, 0x8c, 0x17, 0x78, - 0xac, 0xa9, 0x90, 0xc0, 0x17, 0x52, 0x5b, 0xc0, 0x71, 0x76, 0x6e, 0x72, 0x95, 0xe6, 0x70, 0x0a, - 0x4b, 0x92, 0x9a, 0xff, 0x7b, 0x06, 0xce, 0xa5, 0x13, 0x90, 0x6f, 0x44, 0x7b, 0x07, 0x6e, 0xf0, - 0x7c, 0x79, 0x20, 0xff, 0x54, 0x30, 0xb7, 0x8a, 0xf4, 0x0d, 0xb2, 0xd8, 0x64, 0xdc, 0x05, 0x11, - 0xbb, 0x9f, 0x58, 0x59, 0xd3, 0xd8, 0xf0, 0x98, 0xf5, 0x9d, 0x9b, 0xc2, 0x63, 0x2e, 0x42, 0xfe, - 0xf9, 0xff, 0xe6, 0xef, 0x1b, 0x70, 0xb1, 0x7f, 0xdd, 0x64, 0x12, 0xc6, 0x85, 0x97, 0x98, 0x7b, - 0x4d, 0xab, 0xe5, 0x8d, 0x52, 0x65, 0xe3, 0x6e, 0xde, 0x20, 0x33, 0x00, 0xc2, 0x85, 0x7a, 0x67, - 0x7b, 0x2d, 0x9f, 0x51, 0xbc, 0xa8, 0x59, 0x56, 0x56, 0x5c, 0x2b, 0x17, 0x36, 0xca, 0x25, 0x7b, - 0xbb, 0xca, 0x7d, 0xc4, 0xf8, 0x7b, 0xbb, 0x6a, 0x0b, 0x9c, 0x51, 0x86, 0x53, 0xb5, 0x36, 0x19, - 0x3d, 0xe3, 0x37, 0x46, 0xe6, 0x61, 0x56, 0xe2, 0xc8, 0x4a, 0xc6, 0xc9, 0x39, 0x20, 0x11, 0x30, - 0x46, 0xce, 0x99, 0x7f, 0x66, 0xc0, 0xf3, 0x83, 0x3e, 0x95, 0x7c, 0x0b, 0xd0, 0x5d, 0x2f, 0xfa, - 0x7e, 0x65, 0x88, 0xde, 0x19, 0x50, 0x98, 0x3c, 0x02, 0x08, 0xb9, 0x6b, 0x39, 0xe3, 0xca, 0x15, - 0x32, 0xca, 0x2b, 0xe8, 0x36, 0xcc, 0x0a, 0xbc, 0x38, 0x98, 0x93, 0xde, 0xa7, 0xb3, 0x30, 0x59, - 0xa8, 0x56, 0xd7, 0x2a, 0xc5, 0xc2, 0x56, 0x65, 0x73, 0x23, 0x6f, 0x90, 0x09, 0x18, 0xbd, 0x6b, - 0x6d, 0x6e, 0x57, 0xf3, 0x19, 0xf3, 0xef, 0x64, 0xe0, 0x1c, 0x9b, 0x2d, 0x4d, 0x1a, 0x04, 0xcc, - 0x02, 0x65, 0x06, 0x88, 0x78, 0x74, 0xe7, 0x4b, 0x30, 0x76, 0x38, 0xc4, 0xd4, 0xcb, 0xc9, 0xa9, - 0x67, 0x09, 0x74, 0xb6, 0x6d, 0xea, 0x46, 0xa7, 0xb8, 0x16, 0xfe, 0xcd, 0xb6, 0x46, 0x71, 0x8a, - 0x20, 0xfe, 0x58, 0xb1, 0x35, 0xd1, 0x89, 0x12, 0x05, 0x7d, 0x19, 0x46, 0x31, 0xf2, 0x06, 0x17, - 0xed, 0x99, 0x28, 0x32, 0x3a, 0xbd, 0x65, 0x18, 0x92, 0x63, 0x71, 0x02, 0x72, 0x03, 0x20, 0xbe, - 0x6e, 0x20, 0x16, 0x6e, 0x69, 0xcb, 0x44, 0x37, 0x0e, 0xac, 0x89, 0xd6, 0xbe, 0x23, 0x2e, 0x1f, - 0x5c, 0x83, 0x39, 0x99, 0x4b, 0xab, 0x23, 0x43, 0x47, 0x78, 0x94, 0x8c, 0x35, 0xcb, 0x0b, 0x2a, - 0x1d, 0x11, 0x3e, 0x72, 0xed, 0x03, 0x98, 0x95, 0x3e, 0xea, 0xad, 0xb5, 0x1a, 0x1e, 0x29, 0xcf, - 0xc2, 0xe4, 0x4e, 0xd9, 0xaa, 0xdc, 0xf9, 0xc4, 0xbe, 0xb3, 0xbd, 0xb6, 0x96, 0x3f, 0x43, 0xa6, - 0x61, 0x42, 0x00, 0x8a, 0x85, 0xbc, 0x41, 0xa6, 0x20, 0x57, 0xd9, 0xa8, 0x95, 0x8b, 0xdb, 0x56, - 0x39, 0x9f, 0xb9, 0xb6, 0x0c, 0x33, 0x71, 0xf6, 0x35, 0x1c, 0x99, 0x71, 0xc8, 0x5a, 0x85, 0xdd, - 0xfc, 0x19, 0x26, 0xcc, 0xd5, 0x7b, 0xc5, 0xda, 0xcd, 0x9b, 0x79, 0x83, 0x0d, 0xd7, 0xdd, 0x62, - 0xd5, 0xbe, 0xb7, 0x5e, 0xcb, 0x67, 0xae, 0x7d, 0x01, 0xe6, 0x30, 0x1a, 0x9a, 0xd9, 0xd8, 0xb4, - 0x4d, 0x7d, 0xac, 0x76, 0x0a, 0x72, 0x35, 0xda, 0x71, 0x7c, 0x27, 0xa4, 0xbc, 0xce, 0xf5, 0x6e, - 0x33, 0x74, 0x3b, 0x4d, 0xfa, 0x28, 0x6f, 0x5c, 0x7b, 0x1b, 0x66, 0x2d, 0xaf, 0xcb, 0xf6, 0xac, - 0xb5, 0x90, 0x61, 0x1c, 0x1c, 0x91, 0xb3, 0x30, 0xb7, 0xbd, 0x51, 0x58, 0x5f, 0xa9, 0xdc, 0xdd, - 0xde, 0xdc, 0xae, 0xd9, 0xeb, 0x85, 0xad, 0xe2, 0x2a, 0x17, 0x85, 0xf5, 0xcd, 0xda, 0x96, 0x6d, - 0x95, 0x8b, 0xe5, 0x8d, 0xad, 0xbc, 0x71, 0xed, 0xe7, 0x0d, 0xfe, 0xf6, 0x2a, 0xee, 0x0f, 0xb6, - 0xd1, 0x67, 0x7c, 0x09, 0x9e, 0xdf, 0xae, 0x95, 0x2d, 0x7b, 0x6b, 0xf3, 0x5e, 0x79, 0xc3, 0xde, - 0xae, 0x15, 0xee, 0x26, 0xcf, 0x75, 0x96, 0xe0, 0x39, 0x05, 0xc3, 0x2a, 0x17, 0x37, 0x77, 0xca, - 0x96, 0x5d, 0x2d, 0xd4, 0x6a, 0xbb, 0x9b, 0x56, 0x29, 0x6f, 0x90, 0x8b, 0x70, 0x2e, 0x05, 0x61, - 0xfd, 0x4e, 0x21, 0x9f, 0xe9, 0x29, 0xdb, 0x28, 0xef, 0x16, 0xd6, 0xec, 0x95, 0xcd, 0xad, 0x7c, - 0xf6, 0x1a, 0x3e, 0xe1, 0x85, 0xce, 0x5c, 0x1e, 0x76, 0x95, 0x83, 0x91, 0x8d, 0xcd, 0x8d, 0x72, - 0x52, 0x2f, 0x4c, 0x41, 0xae, 0x50, 0xad, 0x5a, 0x9b, 0x3b, 0xe5, 0x12, 0xd7, 0x0a, 0xa5, 0xf2, - 0x06, 0x6b, 0x59, 0xf6, 0x9a, 0x09, 0x73, 0x45, 0xea, 0x87, 0xe5, 0x47, 0x21, 0x6d, 0x33, 0x83, - 0x10, 0xfb, 0x6e, 0x1a, 0x26, 0xca, 0x5f, 0xdd, 0x2a, 0x6f, 0xd4, 0x98, 0xf4, 0x9f, 0xb9, 0xf6, - 0x7c, 0x02, 0x47, 0x0e, 0x4b, 0xad, 0xb6, 0x9a, 0x3f, 0x73, 0xed, 0x1b, 0x30, 0xa5, 0x85, 0x14, - 0x9e, 0x87, 0x79, 0xf5, 0x77, 0x95, 0xb6, 0x1b, 0x6e, 0xfb, 0x20, 0x7f, 0x26, 0x59, 0x60, 0x75, - 0xdb, 0x6d, 0x56, 0x80, 0x1f, 0xaf, 0x16, 0x6c, 0x51, 0xbf, 0xe5, 0xb6, 0x9d, 0x90, 0x36, 0xf2, - 0x99, 0x6b, 0xd7, 0x61, 0x5a, 0xf3, 0x83, 0xb3, 0x7a, 0xd7, 0x36, 0x85, 0x38, 0xac, 0x97, 0x4b, - 0x95, 0xed, 0xf5, 0xfc, 0x28, 0xfb, 0xec, 0xd5, 0xca, 0xdd, 0xd5, 0x3c, 0x5c, 0xfb, 0x06, 0xcc, - 0x88, 0xc0, 0x8a, 0xf5, 0x3b, 0x05, 0xd9, 0xd0, 0xcd, 0x3b, 0x77, 0xc4, 0xf9, 0x12, 0x53, 0x56, - 0x38, 0xa3, 0x9f, 0x87, 0x45, 0xf1, 0xc3, 0x2e, 0x6c, 0x94, 0xec, 0xd5, 0x82, 0x55, 0xda, 0x2d, - 0x58, 0x65, 0xfb, 0x5e, 0xf9, 0x93, 0x7c, 0x86, 0xa9, 0x38, 0x15, 0x62, 0x6f, 0x6d, 0x6e, 0x17, - 0x57, 0xf3, 0xd9, 0x6b, 0x2e, 0xe4, 0x93, 0x7b, 0xe3, 0x1e, 0x6d, 0x6c, 0x6d, 0x6f, 0x6c, 0xf0, - 0x5e, 0x9f, 0x85, 0xc9, 0xcd, 0xad, 0xd5, 0xb2, 0x25, 0xce, 0xf2, 0xf0, 0xf0, 0x6e, 0x7b, 0xa3, - 0xb0, 0xbd, 0xb5, 0xba, 0x69, 0x55, 0xbe, 0x86, 0x4a, 0x79, 0x11, 0x16, 0x6a, 0x6b, 0x85, 0xe2, - 0x3d, 0x7b, 0x63, 0x73, 0xcb, 0xae, 0x6c, 0xd8, 0xc5, 0xd5, 0xc2, 0xc6, 0x46, 0x79, 0x2d, 0x0f, - 0xd7, 0xfe, 0x0b, 0x03, 0x9e, 0x1b, 0x30, 0x9b, 0xc9, 0x9b, 0x70, 0x75, 0xb5, 0x5c, 0x28, 0xad, - 0x95, 0x6b, 0x35, 0x9b, 0xb1, 0x2c, 0x6f, 0x6c, 0x09, 0x7d, 0x65, 0xd7, 0xb6, 0x0a, 0x5b, 0x49, - 0x09, 0xbc, 0x0a, 0xaf, 0x0e, 0x46, 0x8f, 0x85, 0xe5, 0x0a, 0xbc, 0x32, 0x18, 0x55, 0x08, 0x4f, - 0x86, 0x5c, 0x83, 0xcb, 0x83, 0x31, 0x23, 0xa1, 0xcb, 0xae, 0xbc, 0xf7, 0xc3, 0x3f, 0x79, 0xf1, - 0xcc, 0x0f, 0xff, 0xf4, 0x45, 0xe3, 0x8f, 0xff, 0xf4, 0x45, 0xe3, 0x7f, 0xfc, 0xd3, 0x17, 0x8d, - 0xaf, 0xbd, 0x7e, 0x8a, 0x7b, 0xd0, 0x7b, 0x63, 0xb8, 0xdf, 0xbe, 0xf5, 0xff, 0x06, 0x00, 0x00, - 0xff, 0xff, 0xbb, 0x30, 0xa7, 0xa5, 0xbc, 0x27, 0x01, 0x00, + 0x32, 0xad, 0x09, 0x9e, 0xf9, 0x93, 0x70, 0x65, 0x58, 0xae, 0xf8, 0x26, 0x6f, 0x7a, 0x13, 0x27, + 0xac, 0x39, 0x27, 0x49, 0xc9, 0xdf, 0xe4, 0x8d, 0x6e, 0xd9, 0xba, 0xa2, 0xaf, 0x27, 0x25, 0x6c, + 0xdb, 0x77, 0xcd, 0xf7, 0x60, 0x46, 0x9f, 0x25, 0xe4, 0x75, 0x18, 0x89, 0xb8, 0xce, 0x44, 0x56, + 0x9a, 0x8a, 0xc4, 0x78, 0x5b, 0x88, 0x64, 0xfe, 0xb4, 0x01, 0xf3, 0x29, 0x73, 0x85, 0x7c, 0x1d, + 0xe6, 0x65, 0x97, 0xf2, 0xe9, 0x80, 0x07, 0x9b, 0xa2, 0x33, 0xaf, 0xa6, 0x75, 0x26, 0xa2, 0xe1, + 0xa9, 0xa7, 0xde, 0x8d, 0x73, 0xa2, 0x1b, 0xe3, 0xf2, 0x64, 0x07, 0xfe, 0x03, 0x03, 0xcc, 0x93, + 0x59, 0xb1, 0xce, 0xe8, 0x69, 0xcb, 0x84, 0x35, 0xe9, 0xc4, 0xd8, 0xe4, 0x65, 0x98, 0xf6, 0xe9, + 0xbe, 0x4f, 0x83, 0x43, 0x81, 0xc3, 0x3b, 0x6c, 0x4a, 0x00, 0x39, 0xd2, 0xfb, 0x20, 0x03, 0xcb, + 0x87, 0x30, 0x07, 0x95, 0x77, 0xb7, 0x05, 0x91, 0xf9, 0xb6, 0x54, 0x1c, 0x6b, 0x6e, 0x10, 0xee, + 0xdc, 0x24, 0x57, 0x61, 0x9c, 0xeb, 0x0a, 0xb9, 0x2b, 0x98, 0xd5, 0xba, 0x67, 0xe7, 0xa6, 0x25, + 0xcb, 0xcd, 0xdf, 0x16, 0xf7, 0x9e, 0x2a, 0x8d, 0x6a, 0x22, 0x53, 0xd3, 0x93, 0x6e, 0x7e, 0xca, + 0x9a, 0x69, 0xfe, 0xb2, 0x92, 0x78, 0xa4, 0xb7, 0xae, 0xfe, 0x7b, 0x20, 0x25, 0xb6, 0xeb, 0x6f, + 0x18, 0xf0, 0xfc, 0x20, 0xf2, 0xd4, 0xa4, 0x52, 0xc6, 0xe9, 0x92, 0x4a, 0x5d, 0x85, 0x1c, 0x87, + 0xe9, 0x59, 0x59, 0x05, 0xa9, 0xdb, 0xb0, 0xa2, 0x62, 0xb3, 0x00, 0x50, 0x69, 0x54, 0x37, 0x3b, + 0xfc, 0xf6, 0xd5, 0x2d, 0x18, 0x61, 0x6d, 0x4b, 0x74, 0x14, 0x6b, 0x6a, 0x61, 0x7d, 0x4d, 0x20, + 0x71, 0xcb, 0x20, 0x70, 0x5a, 0x4d, 0x0b, 0x91, 0xcd, 0x5d, 0x98, 0xd1, 0x31, 0x48, 0x59, 0x0f, + 0x00, 0x8e, 0x1f, 0x92, 0x58, 0xf1, 0x3c, 0xbe, 0xbf, 0x5a, 0xb9, 0xf0, 0xc3, 0xe3, 0x25, 0x60, + 0x3f, 0x39, 0x4d, 0x5a, 0x80, 0xb0, 0xf9, 0xbd, 0x0c, 0x2c, 0xc4, 0x87, 0x0c, 0x72, 0xb8, 0x9e, + 0x59, 0x9f, 0x61, 0x41, 0xf3, 0x69, 0x2d, 0xf5, 0xe4, 0x6a, 0x97, 0x1f, 0x38, 0x60, 0x2b, 0x7d, + 0x17, 0x16, 0xfb, 0xe1, 0x93, 0xd7, 0x7b, 0xb2, 0x29, 0x8b, 0x60, 0x98, 0x28, 0xed, 0xb2, 0x92, + 0x5c, 0x79, 0x8b, 0x3f, 0x6b, 0x86, 0xd7, 0x00, 0x9e, 0x70, 0x8a, 0x28, 0xb2, 0xfd, 0x6f, 0x1a, + 0xb0, 0xb0, 0x79, 0x3f, 0x74, 0x2a, 0xad, 0x8e, 0xe7, 0x87, 0x56, 0xb7, 0x29, 0xdb, 0x76, 0x05, + 0x72, 0x55, 0xb9, 0xae, 0x71, 0x6f, 0x31, 0x1a, 0xec, 0x72, 0x6d, 0xb3, 0xa2, 0x52, 0xb2, 0x0a, + 0x39, 0x11, 0x31, 0x2d, 0x1f, 0xf9, 0x91, 0xbe, 0x00, 0x9d, 0xb1, 0x40, 0x62, 0xfd, 0x84, 0xdd, + 0x2d, 0x68, 0xac, 0x88, 0xda, 0xfc, 0x73, 0x03, 0xce, 0xf7, 0xa1, 0x21, 0xef, 0xc1, 0x28, 0xba, + 0x03, 0x84, 0x62, 0x79, 0xbe, 0x4f, 0x15, 0x61, 0xfd, 0x70, 0xe7, 0x26, 0x77, 0x52, 0xb5, 0xd8, + 0x0f, 0x8b, 0x53, 0x91, 0xaf, 0xc3, 0x44, 0xa1, 0xd1, 0xd0, 0x9e, 0x22, 0x7a, 0x73, 0x70, 0x2b, + 0xaf, 0x47, 0xf8, 0xfc, 0x4d, 0x17, 0x6e, 0xfe, 0x36, 0x1a, 0xe2, 0x2d, 0x17, 0x2b, 0xe6, 0x77, + 0xf1, 0x5d, 0x98, 0xd1, 0x91, 0x4f, 0xb5, 0x07, 0xfc, 0xbe, 0x01, 0x79, 0xbd, 0x0d, 0x9f, 0xcd, + 0xa9, 0x7c, 0xda, 0x30, 0x9f, 0xa0, 0xf9, 0x7e, 0x02, 0xce, 0xa6, 0x76, 0x30, 0x79, 0x13, 0xc6, + 0x0a, 0x9d, 0x0e, 0x33, 0xdc, 0x8d, 0xf8, 0xa8, 0xd7, 0xe9, 0x74, 0x12, 0x61, 0x7c, 0x02, 0x89, + 0xdc, 0x82, 0x1c, 0xca, 0x2d, 0x23, 0xc8, 0xc4, 0x91, 0x7f, 0x78, 0xd1, 0x25, 0x19, 0xf9, 0x27, + 0x11, 0xa3, 0x7e, 0x29, 0x04, 0x81, 0x7b, 0xd0, 0x66, 0xbb, 0xe2, 0xcf, 0xae, 0x5f, 0xe2, 0x3a, + 0x86, 0xea, 0x97, 0xef, 0xf0, 0x49, 0x93, 0xa4, 0x3a, 0x21, 0xa9, 0x7d, 0x09, 0xc6, 0x0b, 0x3c, + 0xd6, 0x54, 0x48, 0xe0, 0x0b, 0xa9, 0x2d, 0xe0, 0x38, 0x3b, 0x37, 0xb9, 0x4a, 0x73, 0x38, 0x85, + 0x25, 0x49, 0xcd, 0xff, 0x23, 0x03, 0xe7, 0xd2, 0x09, 0xc8, 0x37, 0xa2, 0xbd, 0x03, 0x37, 0x78, + 0xbe, 0x3c, 0x90, 0x7f, 0x2a, 0x98, 0x5b, 0x45, 0xfa, 0x06, 0x59, 0x6c, 0x32, 0xee, 0x82, 0x88, + 0xdd, 0x4f, 0xac, 0xac, 0x69, 0x6c, 0x78, 0xcc, 0xfa, 0xce, 0x4d, 0xe1, 0x31, 0x17, 0x21, 0xff, + 0xfc, 0x7f, 0xf3, 0xf7, 0x0d, 0xb8, 0xd8, 0xbf, 0x6e, 0x32, 0x09, 0xe3, 0xc2, 0x4b, 0xcc, 0xbd, + 0xa6, 0xd5, 0xf2, 0x46, 0xa9, 0xb2, 0x71, 0x37, 0x6f, 0x90, 0x19, 0x00, 0xe1, 0x42, 0xbd, 0xb3, + 0xbd, 0x96, 0xcf, 0x28, 0x5e, 0xd4, 0x2c, 0x2b, 0x2b, 0xae, 0x95, 0x0b, 0x1b, 0xe5, 0x92, 0xbd, + 0x5d, 0xe5, 0x3e, 0x62, 0xfc, 0xbd, 0x5d, 0xb5, 0x05, 0xce, 0x28, 0xc3, 0xa9, 0x5a, 0x9b, 0x8c, + 0x9e, 0xf1, 0x1b, 0x23, 0xf3, 0x30, 0x2b, 0x71, 0x64, 0x25, 0xe3, 0xe4, 0x1c, 0x90, 0x08, 0x18, + 0x23, 0xe7, 0xcc, 0x3f, 0x33, 0xe0, 0xf9, 0x41, 0x9f, 0x4a, 0xbe, 0x05, 0xe8, 0xae, 0x17, 0x7d, + 0xbf, 0x32, 0x44, 0xef, 0x0c, 0x28, 0x4c, 0x1e, 0x01, 0x84, 0xdc, 0xb5, 0x9c, 0x71, 0xe5, 0x0a, + 0x19, 0xe5, 0x15, 0x74, 0x1b, 0x66, 0x05, 0x5e, 0x1c, 0xcc, 0x49, 0xef, 0xd3, 0x59, 0x98, 0x2c, + 0x54, 0xab, 0x6b, 0x95, 0x62, 0x61, 0xab, 0xb2, 0xb9, 0x91, 0x37, 0xc8, 0x04, 0x8c, 0xde, 0xb5, + 0x36, 0xb7, 0xab, 0xf9, 0x8c, 0xf9, 0x37, 0x0d, 0x98, 0xae, 0xb4, 0x43, 0x7a, 0xc0, 0xf3, 0x3a, + 0x3c, 0xe9, 0x8c, 0xfb, 0x8a, 0x36, 0xe3, 0x16, 0xa3, 0xa3, 0xae, 0xa8, 0x82, 0xa1, 0xa6, 0xdb, + 0x43, 0x98, 0xeb, 0x21, 0x21, 0x35, 0x18, 0x2f, 0xec, 0xd6, 0x36, 0x2b, 0xa5, 0xa2, 0x68, 0x98, + 0x5c, 0x9e, 0x05, 0xb4, 0xb7, 0x12, 0xee, 0x42, 0x7b, 0x18, 0xd8, 0x9e, 0xdb, 0x50, 0xb2, 0xbc, + 0xac, 0x9e, 0xb1, 0x24, 0x27, 0x66, 0x8e, 0x0b, 0x0b, 0x03, 0x17, 0xef, 0x35, 0x58, 0xec, 0xc7, + 0x8d, 0xd9, 0x2c, 0x96, 0xd7, 0xa4, 0x05, 0x6b, 0x43, 0xf5, 0xd0, 0xe1, 0x55, 0x21, 0xc7, 0x6f, + 0x27, 0xaf, 0x0a, 0x15, 0xac, 0x0d, 0xf3, 0xef, 0x64, 0xe0, 0x1c, 0xeb, 0x97, 0x26, 0x0d, 0x02, + 0x66, 0xdd, 0x33, 0xe3, 0x4e, 0x3c, 0x68, 0xf4, 0x25, 0x18, 0x3b, 0x1c, 0xa2, 0x93, 0x73, 0xb2, + 0x93, 0x2d, 0x81, 0xce, 0xb6, 0xa4, 0xdd, 0xe8, 0x84, 0xdc, 0xc2, 0xbf, 0xd9, 0xb6, 0x33, 0x4e, + 0xbf, 0xc4, 0x1f, 0x82, 0xb6, 0x26, 0x3a, 0x51, 0x12, 0xa6, 0x2f, 0xc3, 0x28, 0x46, 0x35, 0xa1, + 0x41, 0x34, 0x13, 0x45, 0x9d, 0xa7, 0xb7, 0x0c, 0xc3, 0x9d, 0x2c, 0x4e, 0x40, 0x6e, 0x00, 0xc4, + 0x57, 0x39, 0x84, 0x51, 0x24, 0xed, 0xc4, 0xe8, 0x36, 0x87, 0x35, 0xd1, 0xda, 0x77, 0xc4, 0xc5, + 0x8e, 0x6b, 0x30, 0x27, 0xf3, 0x94, 0x75, 0x64, 0x58, 0x0e, 0x8f, 0x40, 0xb2, 0x66, 0x79, 0x41, + 0xa5, 0x23, 0x42, 0x73, 0xae, 0x7d, 0x00, 0xb3, 0xd2, 0xff, 0xbf, 0xb5, 0x56, 0xc3, 0xe3, 0xfa, + 0x59, 0x98, 0xdc, 0x29, 0x5b, 0x95, 0x3b, 0x9f, 0xd8, 0x77, 0xb6, 0xd7, 0xd6, 0xf2, 0x67, 0xc8, + 0x34, 0x4c, 0x08, 0x40, 0xb1, 0x90, 0x37, 0xc8, 0x14, 0xe4, 0x2a, 0x1b, 0xb5, 0x72, 0x71, 0xdb, + 0x2a, 0xe7, 0x33, 0xd7, 0x96, 0x61, 0x26, 0xce, 0x6c, 0x87, 0x52, 0x3f, 0x0e, 0x59, 0xab, 0xb0, + 0x9b, 0x3f, 0xc3, 0x14, 0x45, 0xf5, 0x5e, 0xb1, 0x76, 0xf3, 0x66, 0xde, 0x60, 0x53, 0xe1, 0x6e, + 0xb1, 0x6a, 0xdf, 0x5b, 0xaf, 0xe5, 0x33, 0xd7, 0xbe, 0x00, 0x73, 0x18, 0x69, 0xce, 0xf6, 0x2f, + 0xb4, 0x4d, 0x7d, 0xac, 0x76, 0x0a, 0x72, 0x35, 0xda, 0x71, 0x7c, 0x27, 0xa4, 0xbc, 0xce, 0xf5, + 0x6e, 0x33, 0x74, 0x3b, 0x4d, 0xfa, 0x28, 0x6f, 0x5c, 0x7b, 0x1b, 0x66, 0x2d, 0xaf, 0x1b, 0xba, + 0xed, 0x83, 0x5a, 0xc8, 0x30, 0x0e, 0x8e, 0xc8, 0x59, 0x98, 0xdb, 0xde, 0x28, 0xac, 0xaf, 0x54, + 0xee, 0x6e, 0x6f, 0x6e, 0xd7, 0xec, 0xf5, 0xc2, 0x56, 0x71, 0x95, 0x4f, 0xb3, 0xf5, 0xcd, 0xda, + 0x96, 0x6d, 0x95, 0x8b, 0xe5, 0x8d, 0xad, 0xbc, 0x71, 0xed, 0xe7, 0x0c, 0xfe, 0xae, 0x2d, 0xee, + 0xbd, 0xb6, 0xd1, 0x1f, 0x7f, 0x09, 0x9e, 0xdf, 0xae, 0x95, 0x2d, 0x7b, 0x6b, 0xf3, 0x5e, 0x79, + 0xc3, 0xde, 0xae, 0x15, 0xee, 0x26, 0xcf, 0xcc, 0x96, 0xe0, 0x39, 0x05, 0xc3, 0x2a, 0x17, 0x37, + 0x77, 0xca, 0x96, 0x5d, 0x2d, 0xd4, 0x6a, 0xbb, 0x9b, 0x56, 0x29, 0x6f, 0x90, 0x8b, 0x70, 0x2e, + 0x05, 0x61, 0xfd, 0x4e, 0x21, 0x9f, 0xe9, 0x29, 0xdb, 0x28, 0xef, 0x16, 0xd6, 0xec, 0x95, 0xcd, + 0xad, 0x7c, 0xf6, 0x1a, 0x3e, 0x8f, 0x86, 0x8e, 0x72, 0x1e, 0xd2, 0x96, 0x83, 0x91, 0x8d, 0xcd, + 0x8d, 0x72, 0x52, 0xe7, 0x4e, 0x41, 0xae, 0x50, 0xad, 0x5a, 0x9b, 0x3b, 0xe5, 0x12, 0xd7, 0xb8, + 0xa5, 0xf2, 0x06, 0x6b, 0x59, 0xf6, 0x9a, 0x09, 0x73, 0x45, 0xea, 0x87, 0xe5, 0x47, 0x21, 0x6d, + 0x33, 0x63, 0x1b, 0xfb, 0x6e, 0x1a, 0x26, 0xca, 0x5f, 0xdd, 0x2a, 0x6f, 0xd4, 0x98, 0x66, 0x39, + 0x73, 0xed, 0xf9, 0x04, 0x8e, 0x1c, 0x96, 0x5a, 0x6d, 0x35, 0x7f, 0xe6, 0xda, 0x37, 0x60, 0x4a, + 0x0b, 0xd7, 0x3c, 0x0f, 0xf3, 0xea, 0xef, 0x2a, 0x6d, 0x37, 0xdc, 0xf6, 0x41, 0xfe, 0x4c, 0xb2, + 0xc0, 0xea, 0xb6, 0xdb, 0xac, 0x00, 0x3f, 0x5e, 0x2d, 0xd8, 0xa2, 0x7e, 0xcb, 0x6d, 0x3b, 0x21, + 0x6d, 0xe4, 0x33, 0xd7, 0xae, 0xc3, 0xb4, 0x76, 0xc6, 0xc0, 0xea, 0x5d, 0xdb, 0x14, 0xe2, 0xb0, + 0x5e, 0x2e, 0x55, 0xb6, 0xd7, 0xf3, 0xa3, 0xec, 0xb3, 0x57, 0x2b, 0x77, 0x57, 0xf3, 0x70, 0xed, + 0x1b, 0x30, 0x23, 0x82, 0x56, 0xd6, 0xef, 0x14, 0x64, 0x43, 0x37, 0xef, 0xdc, 0x11, 0x67, 0x77, + 0x6c, 0x21, 0x40, 0x6d, 0xf9, 0x3c, 0x2c, 0x8a, 0x1f, 0x76, 0x61, 0xa3, 0x64, 0xaf, 0x16, 0xac, + 0xd2, 0x6e, 0xc1, 0x2a, 0xdb, 0xf7, 0xca, 0x9f, 0xe4, 0x33, 0x6c, 0xf9, 0x50, 0x21, 0xf6, 0xd6, + 0xe6, 0x76, 0x71, 0x35, 0x9f, 0xbd, 0xe6, 0x42, 0x3e, 0xe9, 0x77, 0xe8, 0x59, 0xe9, 0xac, 0xed, + 0x8d, 0x0d, 0xde, 0xeb, 0xb3, 0x30, 0xb9, 0xb9, 0xb5, 0x5a, 0xb6, 0xc4, 0x39, 0x29, 0x1e, 0x8c, + 0x6e, 0x6f, 0x14, 0xb6, 0xb7, 0x56, 0x37, 0xad, 0xca, 0xd7, 0x70, 0xc1, 0x5b, 0x84, 0x85, 0xda, + 0x5a, 0xa1, 0x78, 0xcf, 0xde, 0xd8, 0xdc, 0xb2, 0x2b, 0x1b, 0x76, 0x71, 0xb5, 0xb0, 0xb1, 0x51, + 0x5e, 0xcb, 0xc3, 0xb5, 0xff, 0xd2, 0x80, 0xe7, 0x06, 0xcc, 0x66, 0xf2, 0x26, 0x5c, 0x5d, 0x2d, + 0x17, 0x4a, 0x6b, 0xe5, 0x5a, 0xcd, 0x66, 0x2c, 0xcb, 0x1b, 0x5b, 0x62, 0x2d, 0xb0, 0x6b, 0x5b, + 0x85, 0xad, 0xa4, 0x04, 0x5e, 0x85, 0x57, 0x07, 0xa3, 0xc7, 0xc2, 0x72, 0x05, 0x5e, 0x19, 0x8c, + 0x2a, 0x84, 0x27, 0x43, 0xae, 0xc1, 0xe5, 0xc1, 0x98, 0x91, 0xd0, 0x65, 0x57, 0xde, 0xfb, 0xc1, + 0x9f, 0xbc, 0x78, 0xe6, 0x07, 0x7f, 0xfa, 0xa2, 0xf1, 0xc7, 0x7f, 0xfa, 0xa2, 0xf1, 0x3f, 0xfd, + 0xe9, 0x8b, 0xc6, 0xd7, 0x5e, 0x3f, 0xc5, 0x1d, 0xf3, 0xbd, 0x31, 0xf4, 0x65, 0xdc, 0xfa, 0xff, + 0x02, 0x00, 0x00, 0xff, 0xff, 0x2d, 0x6e, 0x37, 0xff, 0x18, 0x29, 0x01, 0x00, } func (this *PluginSpecV1) Equal(that interface{}) bool { @@ -32416,6 +32590,144 @@ func (m *OktaAssignmentActionTargetV1) MarshalToSizedBuffer(dAtA []byte) (int, e return len(dAtA) - i, nil } +func (m *IntegrationV1) 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 *IntegrationV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IntegrationV1) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + { + size, err := m.Spec.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x12 + { + size, err := m.ResourceHeader.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + +func (m *IntegrationSpecV1) 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 *IntegrationSpecV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IntegrationSpecV1) 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.SubKindSpec != nil { + { + size := m.SubKindSpec.Size() + i -= size + if _, err := m.SubKindSpec.MarshalTo(dAtA[i:]); err != nil { + return 0, err + } + } + } + return len(dAtA) - i, nil +} + +func (m *IntegrationSpecV1_AWSOIDC) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *IntegrationSpecV1_AWSOIDC) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + if m.AWSOIDC != nil { + { + size, err := m.AWSOIDC.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintTypes(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} +func (m *AWSOIDCIntegrationSpecV1) 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 *AWSOIDCIntegrationSpecV1) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *AWSOIDCIntegrationSpecV1) 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.RoleARN) > 0 { + i -= len(m.RoleARN) + copy(dAtA[i:], m.RoleARN) + i = encodeVarintTypes(dAtA, i, uint64(len(m.RoleARN))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + func (m *HeadlessAuthentication) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -40001,6 +40313,65 @@ func (m *OktaAssignmentActionTargetV1) Size() (n int) { return n } +func (m *IntegrationV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = m.ResourceHeader.Size() + n += 1 + l + sovTypes(uint64(l)) + l = m.Spec.Size() + n += 1 + l + sovTypes(uint64(l)) + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *IntegrationSpecV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.SubKindSpec != nil { + n += m.SubKindSpec.Size() + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *IntegrationSpecV1_AWSOIDC) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + if m.AWSOIDC != nil { + l = m.AWSOIDC.Size() + n += 1 + l + sovTypes(uint64(l)) + } + return n +} +func (m *AWSOIDCIntegrationSpecV1) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.RoleARN) + if l > 0 { + 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 @@ -89713,6 +90084,292 @@ func (m *OktaAssignmentActionTargetV1) Unmarshal(dAtA []byte) error { } return nil } +func (m *IntegrationV1) 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: IntegrationV1: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: IntegrationV1: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ResourceHeader", 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 err := m.ResourceHeader.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Spec", 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 err := m.Spec.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 *IntegrationSpecV1) 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: IntegrationSpecV1: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: IntegrationSpecV1: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field AWSOIDC", 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 := &AWSOIDCIntegrationSpecV1{} + if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + m.SubKindSpec = &IntegrationSpecV1_AWSOIDC{v} + 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 *AWSOIDCIntegrationSpecV1) 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: AWSOIDCIntegrationSpecV1: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: AWSOIDCIntegrationSpecV1: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field RoleARN", 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.RoleARN = 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 *HeadlessAuthentication) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/build.assets/genproto.sh b/build.assets/genproto.sh index aa903a9fcf42e..9c9cbc5fdd72f 100755 --- a/build.assets/genproto.sh +++ b/build.assets/genproto.sh @@ -21,6 +21,7 @@ main() { # Add your protos to the list if you can. buf generate --template=buf-go.gen.yaml \ --path=api/proto/teleport/devicetrust/ \ + --path=api/proto/teleport/integration/ \ --path=api/proto/teleport/kube/ \ --path=api/proto/teleport/loginrule/ \ --path=api/proto/teleport/okta/ \ From a4785855c5cfd2883857b6c6d395c98d43044abc Mon Sep 17 00:00:00 2001 From: Gabriel Corado Date: Fri, 31 Mar 2023 12:20:55 -0300 Subject: [PATCH 05/79] Set CRL LDAP path based on certificate authority type (#23814) * refactor(windows): use CA type to define CRL path * chore(windows): update updateCRL comment * chore(windows): fix imports --- lib/auth/windows/certificate_authority.go | 18 ++++++++++-------- lib/auth/windows/ldap.go | 22 ++++++++++++++++++---- lib/auth/windows/windows.go | 5 ++++- lib/auth/windows/windows_test.go | 20 ++++++++++++++++++-- lib/srv/db/sqlserver/kinit/kinit.go | 2 ++ lib/srv/desktop/windows_server.go | 1 + tool/tctl/common/auth_command.go | 1 + 7 files changed, 54 insertions(+), 15 deletions(-) diff --git a/lib/auth/windows/certificate_authority.go b/lib/auth/windows/certificate_authority.go index 3067200f10e8f..6f4d1cc43c46e 100644 --- a/lib/auth/windows/certificate_authority.go +++ b/lib/auth/windows/certificate_authority.go @@ -59,8 +59,9 @@ func (c *CertificateStoreClient) Update(ctx context.Context) error { // have to do it here. // // TODO(zmb3): support multiple CA certs per cluster (such as with HSMs). + caType := types.UserCA ca, err := c.cfg.AccessPoint.GetCertAuthority(ctx, types.CertAuthID{ - Type: types.UserCA, + Type: caType, DomainName: c.cfg.ClusterName, }, false) if err != nil { @@ -90,7 +91,7 @@ func (c *CertificateStoreClient) Update(ctx context.Context) error { if err := c.updateCAInNTAuthStore(ctx, caDER); err != nil { return trace.Wrap(err, "updating NTAuth store over LDAP: %v", err) } - if err := c.updateCRL(ctx, crlDER); err != nil { + if err := c.updateCRL(ctx, crlDER, caType); err != nil { return trace.Wrap(err, "updating CRL over LDAP: %v", err) } return nil @@ -156,7 +157,7 @@ func (c *CertificateStoreClient) updateCAInNTAuthStore(ctx context.Context, caDE return nil } -func (c *CertificateStoreClient) updateCRL(ctx context.Context, crlDER []byte) error { +func (c *CertificateStoreClient) updateCRL(ctx context.Context, crlDER []byte, caType types.CertAuthType) error { // Publish the CRL for current cluster CA. For trusted clusters, their // respective windows_desktop_services will publish CRLs of their CAs so we // don't have to do it here. @@ -165,12 +166,13 @@ func (c *CertificateStoreClient) updateCRL(ctx context.Context, crlDER []byte) e // another nested container with the CA name, I think, and then multiple // separate CRL objects in that container. // - // We name our parent container "Teleport" and the CRL object is named - // after the Teleport cluster name. For example, CRL for cluster "prod" - // will be placed at: + // We name our parent container based on the CA type (for example, for User + // CA, it is called "Teleport"), and the CRL object is named after the + // Teleport cluster name. So, for instance, CRL for cluster "prod" and User + // CA will be placed at: // ... > CDP > Teleport > prod - containerDN := crlContainerDN(c.cfg.LDAPConfig) - crlDN := crlDN(c.cfg.ClusterName, c.cfg.LDAPConfig) + containerDN := crlContainerDN(c.cfg.LDAPConfig, caType) + crlDN := crlDN(c.cfg.ClusterName, c.cfg.LDAPConfig, caType) // Create the parent container. if err := c.cfg.LC.CreateContainer(containerDN); err != nil { diff --git a/lib/auth/windows/ldap.go b/lib/auth/windows/ldap.go index 1f328db4e1c6b..f896e188130f2 100644 --- a/lib/auth/windows/ldap.go +++ b/lib/auth/windows/ldap.go @@ -24,6 +24,8 @@ import ( "github.com/go-ldap/ldap/v3" "github.com/gravitational/trace" + + "github.com/gravitational/teleport/api/types" ) // LDAPConfig contains parameters for connecting to an LDAP server. @@ -276,10 +278,22 @@ func CombineLDAPFilters(filters []string) string { return "(&" + strings.Join(filters, "") + ")" } -func crlContainerDN(config LDAPConfig) string { - return "CN=Teleport,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration," + config.DomainDN() +func crlContainerDN(config LDAPConfig, caType types.CertAuthType) string { + return fmt.Sprintf("CN=%s,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,%s", crlKeyName(caType), config.DomainDN()) +} + +func crlDN(clusterName string, config LDAPConfig, caType types.CertAuthType) string { + return "CN=" + clusterName + "," + crlContainerDN(config, caType) } -func crlDN(clusterName string, config LDAPConfig) string { - return "CN=" + clusterName + "," + crlContainerDN(config) +// crlKeyName returns the appropriate LDAP key given the CA type. +// +// Note: UserCA must use "Teleport" to keep backwards compatibility. +func crlKeyName(caType types.CertAuthType) string { + switch caType { + case types.DatabaseCA: + return "TeleportDB" + default: + return "Teleport" + } } diff --git a/lib/auth/windows/windows.go b/lib/auth/windows/windows.go index 0f9cbf90fb63f..f8f7dea91b319 100644 --- a/lib/auth/windows/windows.go +++ b/lib/auth/windows/windows.go @@ -107,7 +107,7 @@ func getCertRequest(req *GenerateCredentialsRequest) (*certRequest, error) { // CRLs in it. Each service can also handle RDP connections for a different // domain, with the assumption that some other windows_desktop_service // published a CRL there. - crlDN := crlDN(req.ClusterName, req.LDAPConfig) + crlDN := crlDN(req.ClusterName, req.LDAPConfig, req.CAType) return &certRequest{csrPEM: csrPEM, crlEndpoint: fmt.Sprintf("ldap:///%s?certificateRevocationList?base?objectClass=cRLDistributionPoint", crlDN), keyDER: keyDER}, nil } @@ -142,6 +142,9 @@ type GenerateCredentialsRequest struct { LDAPConfig LDAPConfig // AuthClient is the windows AuthInterface AuthClient AuthInterface + // CAType is the certificate authority type used to generate the certificate. + // This is used to proper generate the CRL LDAP path. + CAType types.CertAuthType } // GenerateWindowsDesktopCredentials generates a private key / certificate pair for the given diff --git a/lib/auth/windows/windows_test.go b/lib/auth/windows/windows_test.go index 7104c74547058..ed2c1c7ca238f 100644 --- a/lib/auth/windows/windows_test.go +++ b/lib/auth/windows/windows_test.go @@ -139,23 +139,39 @@ func TestGenerateCredentials(t *testing.T) { func TestCRLDN(t *testing.T) { for _, test := range []struct { + name string clusterName string crlDN string + caType types.CertAuthType }{ { + name: "test cluster name", clusterName: "test", crlDN: "CN=test,CN=Teleport,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=test,DC=goteleport,DC=com", }, { + name: "full cluster name", clusterName: "cluster.goteleport.com", crlDN: "CN=cluster.goteleport.com,CN=Teleport,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=test,DC=goteleport,DC=com", }, + { + name: "database CA", + clusterName: "cluster.goteleport.com", + caType: types.DatabaseCA, + crlDN: "CN=cluster.goteleport.com,CN=TeleportDB,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=test,DC=goteleport,DC=com", + }, + { + name: "user CA", + clusterName: "cluster.goteleport.com", + caType: types.UserCA, + crlDN: "CN=cluster.goteleport.com,CN=Teleport,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=test,DC=goteleport,DC=com", + }, } { - t.Run(test.clusterName, func(t *testing.T) { + t.Run(test.name, func(t *testing.T) { cfg := LDAPConfig{ Domain: "test.goteleport.com", } - require.Equal(t, test.crlDN, crlDN(test.clusterName, cfg)) + require.Equal(t, test.crlDN, crlDN(test.clusterName, cfg, test.caType)) }) } } diff --git a/lib/srv/db/sqlserver/kinit/kinit.go b/lib/srv/db/sqlserver/kinit/kinit.go index b7fc77bc6c0b5..a0a80264d4060 100644 --- a/lib/srv/db/sqlserver/kinit/kinit.go +++ b/lib/srv/db/sqlserver/kinit/kinit.go @@ -31,6 +31,7 @@ import ( "github.com/jcmturner/gokrb5/v8/credentials" "github.com/sirupsen/logrus" + "github.com/gravitational/teleport/api/types" "github.com/gravitational/teleport/lib/auth/windows" ) @@ -208,6 +209,7 @@ func (d *DBCertGetter) GetCertificateBytes(ctx context.Context) (*WindowsCAAndKe } certPEM, keyPEM, caCerts, err := windows.CertKeyPEM(ctx, &windows.GenerateCredentialsRequest{ + CAType: types.DatabaseCA, Username: d.UserName, Domain: d.RealmName, TTL: certTTL, diff --git a/lib/srv/desktop/windows_server.go b/lib/srv/desktop/windows_server.go index c17b854c86f80..10b10e28530de 100644 --- a/lib/srv/desktop/windows_server.go +++ b/lib/srv/desktop/windows_server.go @@ -1140,6 +1140,7 @@ func (s *WindowsService) generateUserCert(ctx context.Context, username string, // https://docs.microsoft.com/en-us/windows/security/identity-protection/smart-cards/smart-card-certificate-requirements-and-enumeration func (s *WindowsService) generateCredentials(ctx context.Context, username, domain string, ttl time.Duration, activeDirectorySID string) (certDER, keyDER []byte, err error) { return windows.GenerateWindowsDesktopCredentials(ctx, &windows.GenerateCredentialsRequest{ + CAType: types.UserCA, Username: username, Domain: domain, TTL: ttl, diff --git a/tool/tctl/common/auth_command.go b/tool/tctl/common/auth_command.go index 93696b0eed27f..785c55aaeeac8 100644 --- a/tool/tctl/common/auth_command.go +++ b/tool/tctl/common/auth_command.go @@ -292,6 +292,7 @@ func (a *AuthCommand) generateWindowsCert(ctx context.Context, clusterAPI auth.C } certDER, _, err := windows.GenerateWindowsDesktopCredentials(ctx, &windows.GenerateCredentialsRequest{ + CAType: types.UserCA, Username: a.windowsUser, Domain: a.windowsDomain, ActiveDirectorySID: a.windowsSID, From 065d7823998c0a41e36376fc1b648c4888290736 Mon Sep 17 00:00:00 2001 From: Alex Fornuto Date: Fri, 31 Mar 2023 10:22:22 -0500 Subject: [PATCH 06/79] split and notate new vs existing mysql user (#18010) --- .../guides/mysql-self-hosted.mdx | 49 ++++++++++++++----- 1 file changed, 38 insertions(+), 11 deletions(-) diff --git a/docs/pages/database-access/guides/mysql-self-hosted.mdx b/docs/pages/database-access/guides/mysql-self-hosted.mdx index f963a5b9d0cc1..e71f4f72afe4d 100644 --- a/docs/pages/database-access/guides/mysql-self-hosted.mdx +++ b/docs/pages/database-access/guides/mysql-self-hosted.mdx @@ -54,8 +54,8 @@ which you'll need to enable mutual TLS on your MySQL server. ## Step 3/4. Configure MySQL/MariaDB - - To configure MySQL to accept TLS connections, add the following to your + +To configure MySQL to accept TLS connections, add the following to your MySQL configuration file, `mysql.cnf`: ```conf @@ -65,9 +65,10 @@ ssl-ca=/path/to/server.cas ssl-cert=/path/to/server.crt ssl-key=/path/to/server.key ``` - - - To configure MariaDB to accept TLS connections, add the following to your + + + +To configure MariaDB to accept TLS connections, add the following to your MariaDB configuration file, `mysql.cnf`: ```conf @@ -77,29 +78,55 @@ ssl-ca=/path/to/server.cas ssl-cert=/path/to/server.crt ssl-key=/path/to/server.key ``` - + + Additionally, your MySQL/MariaDB database user accounts must be configured to require a -valid client certificate. If you're creating a new user: +valid client certificate. + + + +Create a new user: ```sql CREATE USER 'alice'@'%' REQUIRE SUBJECT '/CN=alice'; ``` -If you're updating an existing user: +By default, the created user may not have access to anything and won't be able +to connect, so let's grant it some permissions: + +```sql +GRANT ALL ON `%`.* TO 'alice'@'%'; +``` + + +This is an example command that grants database-wide permissions to a user. +In a production environment you should follow the principle of least privilege + + + + +Because Teleport uses certificates to authenticate database users, the user must +not have a password set. Note that removing an existing user's password may break +existing integrations. Consider using a new Database user specifically for Teleport +access. + +Update the existing user to require a valid certificate: ```sql ALTER USER 'alice'@'%' REQUIRE SUBJECT '/CN=alice'; ``` -By default, the created user may not have access to anything and won't be able -to connect, so let's grant it some permissions: +Remove the password from the user: ```sql -GRANT ALL ON `%`.* TO 'alice'@'%'; +SET PASSWORD FOR 'alice'@'%' = PASSWORD(""); ``` + + + See [Configuring MySQL to Use Encrypted Connections](https://dev.mysql.com/doc/refman/8.0/en/using-encrypted-connections.html) in the MySQL documentation or From e7e6307d7361082af096c7ff3707c8dddc092cc1 Mon Sep 17 00:00:00 2001 From: rosstimothy <39066650+rosstimothy@users.noreply.github.com> Date: Fri, 31 Mar 2023 11:25:30 -0400 Subject: [PATCH 07/79] Prevent unknown ssh requests from terminating sessions (#23874) Instead of returning and aborting a session if an unknown request is received servers now log the warning and continue on. --- lib/srv/forward/sshserver.go | 9 +++++++-- lib/srv/regular/sshserver.go | 18 ++++++++++++++---- lib/srv/regular/sshserver_test.go | 24 ++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/lib/srv/forward/sshserver.go b/lib/srv/forward/sshserver.go index a00cd0b4e7295..cd8e21fdbae9b 100644 --- a/lib/srv/forward/sshserver.go +++ b/lib/srv/forward/sshserver.go @@ -1135,8 +1135,13 @@ func (s *Server) dispatch(ctx context.Context, ch ssh.Channel, req *ssh.Request, case sshutils.PuTTYWinadjRequest: return s.handlePuTTYWinadj(ch, req) default: - return trace.BadParameter( - "%v doesn't support request type '%v'", s.Component(), req.Type) + s.log.Warnf("%v doesn't support request type '%v'", s.Component(), req.Type) + if req.WantReply { + if err := req.Reply(false, nil); err != nil { + s.log.Errorf("sending error reply on SSH channel: %v", err) + } + } + return nil } } diff --git a/lib/srv/regular/sshserver.go b/lib/srv/regular/sshserver.go index d16568b8b5ca2..e0922b9c7bd74 100644 --- a/lib/srv/regular/sshserver.go +++ b/lib/srv/regular/sshserver.go @@ -1590,8 +1590,13 @@ func (s *Server) dispatch(ctx context.Context, ch ssh.Channel, req *ssh.Request, s.Logger.Debugf("%v: deliberately ignoring request for '%v' channel", s.Component(), sshutils.PuTTYSimpleRequest) return nil default: - return trace.BadParameter( - "(%v) proxy doesn't support request type '%v'", s.Component(), req.Type) + s.Logger.Warnf("(%v) proxy doesn't support request type '%v'", s.Component(), req.Type) + if req.WantReply { + if err := req.Reply(false, nil); err != nil { + s.Logger.Errorf("sending error reply on SSH channel: %v", err) + } + } + return nil } } @@ -1688,8 +1693,13 @@ func (s *Server) dispatch(ctx context.Context, ch ssh.Channel, req *ssh.Request, case sshutils.PuTTYWinadjRequest: return s.handlePuTTYWinadj(ch, req) default: - return trace.BadParameter( - "%v doesn't support request type '%v'", s.Component(), req.Type) + s.Logger.Warnf("%v doesn't support request type '%v'", s.Component(), req.Type) + if req.WantReply { + if err := req.Reply(false, nil); err != nil { + s.Logger.Errorf("sending error reply on SSH channel: %v", err) + } + } + return nil } } diff --git a/lib/srv/regular/sshserver_test.go b/lib/srv/regular/sshserver_test.go index 7fca6e3c966d2..8b6be168e11f7 100644 --- a/lib/srv/regular/sshserver_test.go +++ b/lib/srv/regular/sshserver_test.go @@ -1695,6 +1695,30 @@ func TestEnvs(t *testing.T) { } } +// TestUnknownRequest validates that any unknown session +// requests do not terminate the session. +func TestUnknownRequest(t *testing.T) { + t.Parallel() + ctx := context.Background() + + f := newFixtureWithoutDiskBasedLogging(t) + + se, err := f.ssh.clt.NewSession(ctx) + require.NoError(t, err) + defer se.Close() + + // send a random request that won't be handled + ok, err := se.SendRequest(ctx, uuid.NewString(), true, nil) + require.NoError(t, err) + require.False(t, ok) + + // ensure the session is still active + require.NoError(t, se.Setenv(ctx, "HOME_TEST", "/test")) + output, err := se.Output(ctx, "env") + require.NoError(t, err) + require.Contains(t, string(output), "HOME_TEST=/test") +} + // TestNoAuth tries to log in with no auth methods and should be rejected func TestNoAuth(t *testing.T) { t.Parallel() From e139e6db701ed08a46d1471743e15130e17f36ca Mon Sep 17 00:00:00 2001 From: Jakub Nyckowski Date: Fri, 31 Mar 2023 11:37:19 -0400 Subject: [PATCH 08/79] Update SFTP library (#23711) Update SFTP fork to include https://github.com/gravitational/sftp/commit/dfe4e0d9441974df84d743ac3b4f5834ce97004d Fixes https://github.com/gravitational/teleport/issues/22263 --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index 96d6e1deda9fd..8406a1cf2ed43 100644 --- a/go.mod +++ b/go.mod @@ -377,7 +377,7 @@ replace ( github.com/julienschmidt/httprouter => github.com/gravitational/httprouter v1.3.1-0.20220408074523-c876c5e705a5 github.com/keys-pub/go-libfido2 => github.com/gravitational/go-libfido2 v1.5.3-0.20230202181331-c71192ef1c8a github.com/microsoft/go-mssqldb => github.com/gravitational/go-mssqldb v0.11.1-0.20230209180904-0f00ae61fb60 - github.com/pkg/sftp => github.com/gravitational/sftp v1.13.6-0.20220927202521-0e74d42f8055 + github.com/pkg/sftp => github.com/gravitational/sftp v1.13.6-0.20230328150159-dfe4e0d94419 github.com/sirupsen/logrus => github.com/gravitational/logrus v1.4.4-0.20210817004754-047e20245621 github.com/vulcand/predicate => github.com/gravitational/predicate v1.3.0 // Use our internal crypto fork, to work around the issue with OpenSSH <= 7.6 mentioned here: https://github.com/golang/go/issues/53391 diff --git a/go.sum b/go.sum index 564d10b3830d1..336e572d412dd 100644 --- a/go.sum +++ b/go.sum @@ -647,8 +647,8 @@ github.com/gravitational/redis/v9 v9.0.0-teleport.3 h1:Eg/j3jiNUZ558KDXOqzF682EF github.com/gravitational/redis/v9 v9.0.0-teleport.3/go.mod h1:8et+z03j0l8N+DvsVnclzjf3Dl/pFHgRk+2Ct1qw66A= github.com/gravitational/roundtrip v1.0.2 h1:eOCY0NEKKaB0ksJmvhO6lPMFz1pIIef+vyPBTBROQ5c= github.com/gravitational/roundtrip v1.0.2/go.mod h1:fuI1booM2hLRA/B/m5MRAPOU6mBZNYcNycono2UuTw0= -github.com/gravitational/sftp v1.13.6-0.20220927202521-0e74d42f8055 h1:iUQqKNaW1lywWSVZkeCQX0vygPfJ63UGx6Ng94e2t1o= -github.com/gravitational/sftp v1.13.6-0.20220927202521-0e74d42f8055/go.mod h1:wHDZ0IZX6JcBYRK1TH9bcVq8G7TLpVHYIGJRFnmPfxg= +github.com/gravitational/sftp v1.13.6-0.20230328150159-dfe4e0d94419 h1:520SBVjHrTsfTPs7Udp+aXJV4WXOlKexKoIyiN0BJys= +github.com/gravitational/sftp v1.13.6-0.20230328150159-dfe4e0d94419/go.mod h1:wHDZ0IZX6JcBYRK1TH9bcVq8G7TLpVHYIGJRFnmPfxg= github.com/gravitational/trace v1.2.1 h1:Iaf43aqbKV5H8bdiRs1qByjEHgAfADJ0lt0JwRyu+q8= github.com/gravitational/trace v1.2.1/go.mod h1:n0ijrq6psJY0sOI/NzLp+xdd8xl79jjwzVOFHDY6+kQ= github.com/gravitational/ttlmap v0.0.0-20171116003245-91fd36b9004c h1:C2iWDiod8vQ3YnOiCdMP9qYeg2UifQ8KSk36r0NswSE= From efd790b5f0798a715e283524ff72340ec2993692 Mon Sep 17 00:00:00 2001 From: Alan Parra Date: Fri, 31 Mar 2023 12:51:13 -0300 Subject: [PATCH 09/79] Migrate to OpenSSL 3.0 (#23810) * Use OpenSSL 3.0.x (buildbox) * Use OpenSSL 3.0.x (buildbox-centos7) * Use OpenSSL 3.0.x (macOS) --- build.assets/Dockerfile | 20 +++++++++- build.assets/Dockerfile-centos7 | 37 +++++++++++-------- build.assets/build-fido2-macos.sh | 6 +-- .../lib}/pkgconfig/libcrypto-static.pc | 9 +++-- .../local/lib64/pkgconfig/libcrypto-static.pc | 5 ++- 5 files changed, 51 insertions(+), 26 deletions(-) rename build.assets/pkgconfig/buildbox/usr/{lib/x86_64-linux-gnu => local/lib}/pkgconfig/libcrypto-static.pc (59%) diff --git a/build.assets/Dockerfile b/build.assets/Dockerfile index 58c7635808609..9d9aa80c3c4d3 100644 --- a/build.assets/Dockerfile +++ b/build.assets/Dockerfile @@ -38,8 +38,17 @@ RUN git clone --depth=1 https://github.com/PJK/libcbor.git -b v0.10.2 && \ make install && \ make clean +# Install openssl. +# install_sw install only binaries, skips docs. +RUN git clone --depth=1 https://github.com/openssl/openssl.git -b openssl-3.0.8 && \ + cd openssl && \ + [ "$(git rev-parse HEAD)" = '31157bc0b46e04227b8468d3e6915e4d0332777c' ] && \ + ./config --release --libdir=/usr/local/lib && \ + make && \ + make install_sw + # Install libfido2. -# Depends on libcbor, libssl-dev, zlib1g-dev and libudev. +# Depends on libcbor, libcrypto (OpenSSL 3.x), libudev and zlib1g-dev. RUN git clone --depth=1 https://github.com/Yubico/libfido2.git -b 1.12.0 && \ cd libfido2 && \ [ "$(git rev-parse HEAD)" = '659a02679f99fd34a44e06e35dce90794f6ecc86' ] && \ @@ -48,6 +57,7 @@ RUN git clone --depth=1 https://github.com/Yubico/libfido2.git -b 1.12.0 && \ -DBUILD_MANPAGES=OFF \ -DBUILD_TOOLS=OFF \ -DCMAKE_BUILD_TYPE=Release . && \ + grep 'CRYPTO_VERSION:INTERNAL=3\.0\.' CMakeCache.txt && \ make && \ make install && \ make clean @@ -298,16 +308,24 @@ COPY --from=libbpf /opt/libbpf/usr /usr/libbpf-${LIBBPF_VERSION} # Copy libfido2 libraries. # Do this near the end to take better advantage of the multi-stage build. COPY --from=libfido2 /usr/local/include/ /usr/local/include/ +COPY --from=libfido2 /usr/local/lib/engines-3/ /usr/local/lib/engines-3/ +COPY --from=libfido2 /usr/local/lib/ossl-modules/ /usr/local/lib/ossl-modules/ COPY --from=libfido2 /usr/local/lib/pkgconfig/ /usr/local/lib/pkgconfig/ COPY --from=libfido2 \ /usr/local/lib/libcbor.a \ + /usr/local/lib/libcrypto.a \ + /usr/local/lib/libcrypto.so.3 \ /usr/local/lib/libfido2.a \ /usr/local/lib/libfido2.so.1.12.0 \ + /usr/local/lib/libssl.a \ + /usr/local/lib/libssl.so.3 \ /usr/local/lib/libudev.a \ /usr/local/lib/ RUN cd /usr/local/lib && \ + ln -s libcrypto.so.3 libcrypto.so && \ ln -s libfido2.so.1.12.0 libfido2.so.1 && \ ln -s libfido2.so.1 libfido2.so && \ + ln -s libssl.so.3 libssl.so && \ ldconfig COPY pkgconfig/buildbox/ / diff --git a/build.assets/Dockerfile-centos7 b/build.assets/Dockerfile-centos7 index 16b29b078f944..81ab2a14b3b75 100644 --- a/build.assets/Dockerfile-centos7 +++ b/build.assets/Dockerfile-centos7 @@ -53,6 +53,7 @@ RUN yum groupinstall -y 'Development Tools' && \ ${DEVTOOLSET}-gcc* \ git \ libudev-devel \ + perl-IPC-Cmd \ zlib-devel && \ yum clean all @@ -63,16 +64,6 @@ RUN git clone --depth=1 https://github.com/illiliti/libudev-zero.git -b 1.0.1 && [ "$(git rev-parse HEAD)" = '4154cf252c17297f98a8ca33693ead003b4509da' ] && \ make install-static LIBDIR='$(PREFIX)/lib64' -# Instal openssl. -# Pulled from source because repository versions are too old. -# install_sw install only binaries, skips docs. -RUN git clone --depth=1 https://github.com/openssl/openssl.git -b OpenSSL_1_1_1t && \ - cd openssl && \ - [ "$(git rev-parse HEAD)" = '830bf8e1e4749ad65c51b6a1d0d769ae689404ba' ] && \ - ./config --release --libdir=/usr/local/lib64 && \ - make && \ - make install_sw - # Install libcbor. RUN git clone --depth=1 https://github.com/PJK/libcbor.git -b v0.10.2 && \ cd libcbor && \ @@ -84,18 +75,30 @@ RUN git clone --depth=1 https://github.com/PJK/libcbor.git -b v0.10.2 && \ make && \ make install +# Install openssl. +# install_sw install only binaries, skips docs. +RUN git clone --depth=1 https://github.com/openssl/openssl.git -b openssl-3.0.8 && \ + cd openssl && \ + [ "$(git rev-parse HEAD)" = '31157bc0b46e04227b8468d3e6915e4d0332777c' ] && \ + ./config --release --libdir=/usr/local/lib64 && \ + make && \ + make install_sw +# Necessary for libfido2 to find the correct libcrypto. +ENV PKG_CONFIG_PATH="/usr/local/lib64/pkgconfig" + # Install libfido2. -# Depends on libcbor, openssl, zlib-devel and libudev. +# Depends on libcbor, libcrypto (OpenSSL 3.x), libudev and zlib-devel. # Linked so `make build/tsh` finds the library where it expects it. RUN git clone --depth=1 https://github.com/Yubico/libfido2.git -b 1.12.0 && \ cd libfido2 && \ [ "$(git rev-parse HEAD)" = '659a02679f99fd34a44e06e35dce90794f6ecc86' ] && \ scl enable ${DEVTOOLSET} "\ - cmake3 \ + CFLAGS=-pthread cmake3 \ -DBUILD_EXAMPLES=OFF \ -DBUILD_MANPAGES=OFF \ -DBUILD_TOOLS=OFF \ -DCMAKE_BUILD_TYPE=Release . && \ + grep 'CRYPTO_VERSION:INTERNAL=3\.0\.' CMakeCache.txt && \ make" && \ make install && \ make clean @@ -255,23 +258,25 @@ RUN curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --p # Do this last to take better advantage of the multi-stage build. USER root COPY --from=libfido2 /usr/local/include/ /usr/local/include/ +COPY --from=libfido2 /usr/local/lib64/engines-3/ /usr/local/lib64/engines-3/ +COPY --from=libfido2 /usr/local/lib64/ossl-modules/ /usr/local/lib64/ossl-modules/ COPY --from=libfido2 /usr/local/lib64/pkgconfig/ /usr/local/lib64/pkgconfig/ COPY --from=libfido2 \ /usr/local/lib64/libcbor.a \ /usr/local/lib64/libcrypto.a \ - /usr/local/lib64/libcrypto.so.1.1 \ + /usr/local/lib64/libcrypto.so.3 \ /usr/local/lib64/libfido2.a \ /usr/local/lib64/libfido2.so.1.12.0 \ /usr/local/lib64/libssl.a \ - /usr/local/lib64/libssl.so.1.1 \ + /usr/local/lib64/libssl.so.3 \ /usr/local/lib64/libudev.a \ /usr/local/lib64/ # Re-create usual lib64 links. RUN cd /usr/local/lib64 && \ - ln -s libcrypto.so.1.1 libcrypto.so && \ + ln -s libcrypto.so.3 libcrypto.so && \ ln -s libfido2.so.1.12.0 libfido2.so.1 && \ ln -s libfido2.so.1 libfido2.so && \ - ln -s libssl.so.1.1 libssl.so && \ + ln -s libssl.so.3 libssl.so && \ # Update ld. echo /usr/local/lib64 > /etc/ld.so.conf.d/libfido2.conf && \ ldconfig diff --git a/build.assets/build-fido2-macos.sh b/build.assets/build-fido2-macos.sh index e7ed1c5d73763..eb346133b86d8 100755 --- a/build.assets/build-fido2-macos.sh +++ b/build.assets/build-fido2-macos.sh @@ -16,8 +16,8 @@ readonly MACOS_VERSION_MIN=10.13 # Note: versions are the same as the corresponding git tags for each repo. readonly CBOR_VERSION=v0.10.2 readonly CBOR_COMMIT=efa6c0886bae46bdaef9b679f61f4b9d8bc296ae -readonly CRYPTO_VERSION=OpenSSL_1_1_1t -readonly CRYPTO_COMMIT=830bf8e1e4749ad65c51b6a1d0d769ae689404ba +readonly CRYPTO_VERSION=openssl-3.0.8 +readonly CRYPTO_COMMIT=31157bc0b46e04227b8468d3e6915e4d0332777c readonly FIDO2_VERSION=1.12.0 readonly FIDO2_COMMIT=659a02679f99fd34a44e06e35dce90794f6ecc86 @@ -108,7 +108,6 @@ crypto_build() { ./config \ -mmacosx-version-min="$MACOS_VERSION_MIN" \ --prefix="$dest" \ - --openssldir="$dest/openssl@1.1" \ no-shared \ no-zlib # Build and copy only what we need instead of 'make && make install'. @@ -143,6 +142,7 @@ fido2_build() { -DCMAKE_OSX_DEPLOYMENT_TARGET="$MACOS_VERSION_MIN" \ -G "Unix Makefiles" \ . + grep 'CRYPTO_VERSION:INTERNAL=3\.0\.' CMakeCache.txt # double-check OpenSSL make make install } diff --git a/build.assets/pkgconfig/buildbox/usr/lib/x86_64-linux-gnu/pkgconfig/libcrypto-static.pc b/build.assets/pkgconfig/buildbox/usr/local/lib/pkgconfig/libcrypto-static.pc similarity index 59% rename from build.assets/pkgconfig/buildbox/usr/lib/x86_64-linux-gnu/pkgconfig/libcrypto-static.pc rename to build.assets/pkgconfig/buildbox/usr/local/lib/pkgconfig/libcrypto-static.pc index 615ad01155071..a50be3fb61c50 100644 --- a/build.assets/pkgconfig/buildbox/usr/lib/x86_64-linux-gnu/pkgconfig/libcrypto-static.pc +++ b/build.assets/pkgconfig/buildbox/usr/local/lib/pkgconfig/libcrypto-static.pc @@ -1,11 +1,12 @@ -prefix=/usr +prefix=/usr/local exec_prefix=${prefix} -libdir=${exec_prefix}/lib/x86_64-linux-gnu +libdir=${exec_prefix}/lib includedir=${prefix}/include -enginesdir=${libdir}/engines-1.1 +enginesdir=${libdir}/engines-3 +modulesdir=${libdir}/ossl-modules Name: OpenSSL-libcrypto Description: OpenSSL cryptography library -Version: 1.1.1 +Version: 3.0.8 Libs: ${libdir}/libcrypto.a -ldl -pthread Cflags: -I${includedir} diff --git a/build.assets/pkgconfig/centos7/usr/local/lib64/pkgconfig/libcrypto-static.pc b/build.assets/pkgconfig/centos7/usr/local/lib64/pkgconfig/libcrypto-static.pc index 466eeb2745889..dd5588c1a6961 100644 --- a/build.assets/pkgconfig/centos7/usr/local/lib64/pkgconfig/libcrypto-static.pc +++ b/build.assets/pkgconfig/centos7/usr/local/lib64/pkgconfig/libcrypto-static.pc @@ -2,10 +2,11 @@ prefix=/usr/local exec_prefix=${prefix} libdir=${exec_prefix}/lib64 includedir=${prefix}/include -enginesdir=${libdir}/engines-1.1 +enginesdir=${libdir}/engines-3 +modulesdir=${libdir}/ossl-modules Name: OpenSSL-libcrypto Description: OpenSSL cryptography library -Version: 1.1.1t +Version: 3.0.8 Libs: ${libdir}/libcrypto.a -ldl -pthread Cflags: -I${includedir} From 10a075cfe113161f36962f3806b3ee4186fc4461 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Justinas=20Stankevi=C4=8Dius?= Date: Fri, 31 Mar 2023 19:05:51 +0300 Subject: [PATCH 10/79] Hosted plugins onboarding prerequisites (#23234) * Respect route exactness in TopNav * Allow submitting CSRF token via form * Skip "safe" methods in CSRF checks * Export getXCSRFToken * Add WithAuth2 * Passthrough "name" of FieldInput Allows it to be used in an actual form * icomoon: add hashtag icon * Add GetAvailablePluginTypes to PluginService proto * Expose ProxyPublicAddr For use in Enterprise web Plugin * Run prettier * Factor out app.MetaRedirect * Rename: WithAuth2 -> WithAuthCookieAndCSRF * Run GCI * Renegerate protos --- .../teleport/plugins/v1/plugin_service.pb.go | 492 +++++++++++++----- .../plugins/v1/plugin_service_grpc.pb.go | 53 +- .../teleport/plugins/v1/plugin_service.proto | 27 + lib/httplib/csrf/csrf.go | 17 + lib/httplib/httplib.go | 17 +- lib/web/apiserver.go | 40 +- lib/web/app/redirect.go | 23 + lib/web/connection_diagnostic.go | 2 +- web/packages/design/src/Icon/Icon.jsx | 1 + web/packages/design/src/Icon/Icon.story.js | 1 + .../src/assets/icomoon/fonts/icomoon.svg | 1 + .../src/assets/icomoon/fonts/icomoon.ttf | Bin 53988 -> 54308 bytes .../src/assets/icomoon/fonts/icomoon.woff | Bin 54064 -> 54384 bytes .../src/assets/icomoon/fonts/icomoon.woff2 | Bin 23164 -> 23240 bytes .../design/src/assets/icomoon/style.css | 5 +- .../components/FieldInput/FieldInput.tsx | 2 + .../__snapshots__/FieldInput.test.tsx.snap | 8 +- web/packages/teleport/src/TopBar/TopBar.tsx | 2 +- .../teleport/src/services/api/index.js | 9 +- 19 files changed, 523 insertions(+), 177 deletions(-) diff --git a/api/gen/proto/go/teleport/plugins/v1/plugin_service.pb.go b/api/gen/proto/go/teleport/plugins/v1/plugin_service.pb.go index e10f0dc858509..4608d99e65116 100644 --- a/api/gen/proto/go/teleport/plugins/v1/plugin_service.pb.go +++ b/api/gen/proto/go/teleport/plugins/v1/plugin_service.pb.go @@ -36,6 +36,68 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) +// PluginType represents a single type of hosted plugin +// that can be onboarded. +type PluginType struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Type is a string corresponding to api.PluginTypeXXX constants + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + // OAuthClientID contains the client ID of the OAuth application + // that is used with this plugin's API provider. + // For plugins that are not authenticated via OAuth, + // this will be empty. + OauthClientId string `protobuf:"bytes,2,opt,name=oauth_client_id,json=oauthClientId,proto3" json:"oauth_client_id,omitempty"` +} + +func (x *PluginType) Reset() { + *x = PluginType{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PluginType) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PluginType) ProtoMessage() {} + +func (x *PluginType) ProtoReflect() protoreflect.Message { + mi := &file_teleport_plugins_v1_plugin_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 PluginType.ProtoReflect.Descriptor instead. +func (*PluginType) Descriptor() ([]byte, []int) { + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{0} +} + +func (x *PluginType) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *PluginType) GetOauthClientId() string { + if x != nil { + return x.OauthClientId + } + return "" +} + // CreatePluginRequest creates a new plugin from the given spec and initial credentials. type CreatePluginRequest struct { state protoimpl.MessageState @@ -54,7 +116,7 @@ type CreatePluginRequest struct { func (x *CreatePluginRequest) Reset() { *x = CreatePluginRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[0] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -67,7 +129,7 @@ func (x *CreatePluginRequest) String() string { func (*CreatePluginRequest) ProtoMessage() {} func (x *CreatePluginRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[0] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -80,7 +142,7 @@ func (x *CreatePluginRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreatePluginRequest.ProtoReflect.Descriptor instead. func (*CreatePluginRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{0} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{1} } func (x *CreatePluginRequest) GetPlugin() *types.PluginV1 { @@ -110,7 +172,7 @@ type GetPluginRequest struct { func (x *GetPluginRequest) Reset() { *x = GetPluginRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[1] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -123,7 +185,7 @@ func (x *GetPluginRequest) String() string { func (*GetPluginRequest) ProtoMessage() {} func (x *GetPluginRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[1] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -136,7 +198,7 @@ func (x *GetPluginRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPluginRequest.ProtoReflect.Descriptor instead. func (*GetPluginRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{1} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{2} } func (x *GetPluginRequest) GetName() string { @@ -162,7 +224,7 @@ type ListPluginsRequest struct { func (x *ListPluginsRequest) Reset() { *x = ListPluginsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[2] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -175,7 +237,7 @@ func (x *ListPluginsRequest) String() string { func (*ListPluginsRequest) ProtoMessage() {} func (x *ListPluginsRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[2] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -188,7 +250,7 @@ func (x *ListPluginsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPluginsRequest.ProtoReflect.Descriptor instead. func (*ListPluginsRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{2} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{3} } func (x *ListPluginsRequest) GetPageSize() int32 { @@ -221,7 +283,7 @@ type ListPluginsResponse struct { func (x *ListPluginsResponse) Reset() { *x = ListPluginsResponse{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[3] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -234,7 +296,7 @@ func (x *ListPluginsResponse) String() string { func (*ListPluginsResponse) ProtoMessage() {} func (x *ListPluginsResponse) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[3] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -247,7 +309,7 @@ func (x *ListPluginsResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPluginsResponse.ProtoReflect.Descriptor instead. func (*ListPluginsResponse) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{3} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{4} } func (x *ListPluginsResponse) GetPlugins() []*types.PluginV1 { @@ -277,7 +339,7 @@ type DeletePluginRequest struct { func (x *DeletePluginRequest) Reset() { *x = DeletePluginRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[4] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -290,7 +352,7 @@ func (x *DeletePluginRequest) String() string { func (*DeletePluginRequest) ProtoMessage() {} func (x *DeletePluginRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[4] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -303,7 +365,7 @@ func (x *DeletePluginRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeletePluginRequest.ProtoReflect.Descriptor instead. func (*DeletePluginRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{4} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{5} } func (x *DeletePluginRequest) GetName() string { @@ -329,7 +391,7 @@ type SetPluginCredentialsRequest struct { func (x *SetPluginCredentialsRequest) Reset() { *x = SetPluginCredentialsRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[5] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -342,7 +404,7 @@ func (x *SetPluginCredentialsRequest) String() string { func (*SetPluginCredentialsRequest) ProtoMessage() {} func (x *SetPluginCredentialsRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[5] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -355,7 +417,7 @@ func (x *SetPluginCredentialsRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SetPluginCredentialsRequest.ProtoReflect.Descriptor instead. func (*SetPluginCredentialsRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{5} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{6} } func (x *SetPluginCredentialsRequest) GetName() string { @@ -387,7 +449,7 @@ type SetPluginStatusRequest struct { func (x *SetPluginStatusRequest) Reset() { *x = SetPluginStatusRequest{} if protoimpl.UnsafeEnabled { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[6] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -400,7 +462,7 @@ func (x *SetPluginStatusRequest) String() string { func (*SetPluginStatusRequest) ProtoMessage() {} func (x *SetPluginStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[6] + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -413,7 +475,7 @@ func (x *SetPluginStatusRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use SetPluginStatusRequest.ProtoReflect.Descriptor instead. func (*SetPluginStatusRequest) Descriptor() ([]byte, []int) { - return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{6} + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{7} } func (x *SetPluginStatusRequest) GetName() string { @@ -430,6 +492,95 @@ func (x *SetPluginStatusRequest) GetStatus() *types.PluginStatusV1 { return nil } +// GetAvailablePluginTypesRequest is the request type for GetAvailablePluginTypes +type GetAvailablePluginTypesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetAvailablePluginTypesRequest) Reset() { + *x = GetAvailablePluginTypesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetAvailablePluginTypesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetAvailablePluginTypesRequest) ProtoMessage() {} + +func (x *GetAvailablePluginTypesRequest) ProtoReflect() protoreflect.Message { + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[8] + 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 GetAvailablePluginTypesRequest.ProtoReflect.Descriptor instead. +func (*GetAvailablePluginTypesRequest) Descriptor() ([]byte, []int) { + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{8} +} + +// GetAvailablePluginTypesResponse is a response to for GetAvailablePluginTypes +type GetAvailablePluginTypesResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // PluginTypes is a list of hosted plugins + // that the auth service supports. + PluginTypes []*PluginType `protobuf:"bytes,1,rep,name=plugin_types,json=pluginTypes,proto3" json:"plugin_types,omitempty"` +} + +func (x *GetAvailablePluginTypesResponse) Reset() { + *x = GetAvailablePluginTypesResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_teleport_plugins_v1_plugin_service_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetAvailablePluginTypesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetAvailablePluginTypesResponse) ProtoMessage() {} + +func (x *GetAvailablePluginTypesResponse) ProtoReflect() protoreflect.Message { + mi := &file_teleport_plugins_v1_plugin_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 GetAvailablePluginTypesResponse.ProtoReflect.Descriptor instead. +func (*GetAvailablePluginTypesResponse) Descriptor() ([]byte, []int) { + return file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP(), []int{9} +} + +func (x *GetAvailablePluginTypesResponse) GetPluginTypes() []*PluginType { + if x != nil { + return x.PluginTypes + } + return nil +} + var File_teleport_plugins_v1_plugin_service_proto protoreflect.FileDescriptor var file_teleport_plugins_v1_plugin_service_proto_rawDesc = []byte{ @@ -441,84 +592,105 @@ var file_teleport_plugins_v1_plugin_service_proto_rawDesc = []byte{ 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, - 0x98, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, - 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x56, 0x31, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, - 0x12, 0x58, 0x0a, 0x15, 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x5f, 0x63, 0x72, - 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x6f, - 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, - 0x6c, 0x73, 0x56, 0x31, 0x52, 0x14, 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x43, - 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x22, 0x26, 0x0a, 0x10, 0x47, 0x65, - 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x4e, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, - 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4b, - 0x65, 0x79, 0x22, 0x5b, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x70, 0x6c, 0x75, - 0x67, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x79, 0x70, - 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x56, 0x31, 0x52, 0x07, 0x70, 0x6c, 0x75, - 0x67, 0x69, 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, 0x22, - 0x29, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x6f, 0x0a, 0x1b, 0x53, 0x65, - 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, - 0x6c, 0x73, 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, 0x3c, 0x0a, - 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, - 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x56, 0x31, 0x52, 0x0b, - 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x22, 0x5b, 0x0a, 0x16, 0x53, - 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 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, 0x2d, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65, - 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x56, 0x31, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x32, 0x94, 0x04, 0x0a, 0x0d, 0x50, 0x6c, 0x75, - 0x67, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x0c, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x2e, 0x74, 0x65, 0x6c, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x43, 0x0a, 0x09, - 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x25, 0x2e, 0x74, 0x65, 0x6c, 0x65, - 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, - 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x56, - 0x31, 0x12, 0x50, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, - 0x6e, 0x12, 0x28, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, - 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6c, - 0x75, 0x67, 0x69, 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, 0x60, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, - 0x6e, 0x73, 0x12, 0x27, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, - 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, - 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x74, 0x65, - 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, - 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x30, 0x2e, + 0x48, 0x0a, 0x0a, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6f, 0x61, 0x75, 0x74, + 0x68, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x98, 0x01, 0x0a, 0x13, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x27, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, + 0x56, 0x31, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x58, 0x0a, 0x15, 0x62, 0x6f, + 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, + 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x74, 0x79, 0x70, 0x65, + 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x42, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, + 0x70, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x56, 0x31, 0x52, 0x14, + 0x62, 0x6f, 0x6f, 0x74, 0x73, 0x74, 0x72, 0x61, 0x70, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, + 0x69, 0x61, 0x6c, 0x73, 0x22, 0x26, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, + 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, 0x4e, 0x0a, 0x12, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x1b, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x61, 0x72, 0x74, 0x4b, 0x65, 0x79, 0x22, 0x5b, 0x0a, 0x13, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, + 0x67, 0x69, 0x6e, 0x56, 0x31, 0x52, 0x07, 0x70, 0x6c, 0x75, 0x67, 0x69, 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, 0x22, 0x29, 0x0a, 0x13, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x6f, 0x0a, 0x1b, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, + 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 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, 0x3c, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x74, + 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, + 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x56, 0x31, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, + 0x74, 0x69, 0x61, 0x6c, 0x73, 0x22, 0x5b, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, + 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 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, 0x2d, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, + 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x56, 0x31, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x22, 0x20, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, + 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x22, 0x65, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, + 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0c, 0x70, 0x6c, 0x75, 0x67, 0x69, + 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, + 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x32, 0x9b, 0x05, 0x0a, 0x0d, + 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x50, 0x0a, + 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, - 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 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, 0x56, 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x50, 0x6c, - 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2b, 0x2e, 0x74, 0x65, 0x6c, - 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, - 0x2e, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x42, - 0x48, 0x5a, 0x46, 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, 0x70, - 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x33, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, + 0x43, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x25, 0x2e, 0x74, + 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, + 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x0f, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x50, 0x6c, 0x75, 0x67, + 0x69, 0x6e, 0x56, 0x31, 0x12, 0x50, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6c, + 0x75, 0x67, 0x69, 0x6e, 0x12, 0x28, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, + 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 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, 0x60, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, + 0x75, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x27, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, + 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, + 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, + 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x14, 0x53, 0x65, 0x74, 0x50, + 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, + 0x12, 0x30, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, + 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, + 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 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, 0x56, 0x0a, 0x0f, 0x53, 0x65, + 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2b, 0x2e, + 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, + 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x53, 0x74, 0x61, + 0x74, 0x75, 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, 0x84, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, + 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x33, + 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, + 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, + 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x70, + 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x48, 0x5a, 0x46, 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, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x73, + 0x2f, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -533,44 +705,50 @@ func file_teleport_plugins_v1_plugin_service_proto_rawDescGZIP() []byte { return file_teleport_plugins_v1_plugin_service_proto_rawDescData } -var file_teleport_plugins_v1_plugin_service_proto_msgTypes = make([]protoimpl.MessageInfo, 7) +var file_teleport_plugins_v1_plugin_service_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_teleport_plugins_v1_plugin_service_proto_goTypes = []interface{}{ - (*CreatePluginRequest)(nil), // 0: teleport.plugins.v1.CreatePluginRequest - (*GetPluginRequest)(nil), // 1: teleport.plugins.v1.GetPluginRequest - (*ListPluginsRequest)(nil), // 2: teleport.plugins.v1.ListPluginsRequest - (*ListPluginsResponse)(nil), // 3: teleport.plugins.v1.ListPluginsResponse - (*DeletePluginRequest)(nil), // 4: teleport.plugins.v1.DeletePluginRequest - (*SetPluginCredentialsRequest)(nil), // 5: teleport.plugins.v1.SetPluginCredentialsRequest - (*SetPluginStatusRequest)(nil), // 6: teleport.plugins.v1.SetPluginStatusRequest - (*types.PluginV1)(nil), // 7: types.PluginV1 - (*types.PluginBootstrapCredentialsV1)(nil), // 8: types.PluginBootstrapCredentialsV1 - (*types.PluginCredentialsV1)(nil), // 9: types.PluginCredentialsV1 - (*types.PluginStatusV1)(nil), // 10: types.PluginStatusV1 - (*emptypb.Empty)(nil), // 11: google.protobuf.Empty + (*PluginType)(nil), // 0: teleport.plugins.v1.PluginType + (*CreatePluginRequest)(nil), // 1: teleport.plugins.v1.CreatePluginRequest + (*GetPluginRequest)(nil), // 2: teleport.plugins.v1.GetPluginRequest + (*ListPluginsRequest)(nil), // 3: teleport.plugins.v1.ListPluginsRequest + (*ListPluginsResponse)(nil), // 4: teleport.plugins.v1.ListPluginsResponse + (*DeletePluginRequest)(nil), // 5: teleport.plugins.v1.DeletePluginRequest + (*SetPluginCredentialsRequest)(nil), // 6: teleport.plugins.v1.SetPluginCredentialsRequest + (*SetPluginStatusRequest)(nil), // 7: teleport.plugins.v1.SetPluginStatusRequest + (*GetAvailablePluginTypesRequest)(nil), // 8: teleport.plugins.v1.GetAvailablePluginTypesRequest + (*GetAvailablePluginTypesResponse)(nil), // 9: teleport.plugins.v1.GetAvailablePluginTypesResponse + (*types.PluginV1)(nil), // 10: types.PluginV1 + (*types.PluginBootstrapCredentialsV1)(nil), // 11: types.PluginBootstrapCredentialsV1 + (*types.PluginCredentialsV1)(nil), // 12: types.PluginCredentialsV1 + (*types.PluginStatusV1)(nil), // 13: types.PluginStatusV1 + (*emptypb.Empty)(nil), // 14: google.protobuf.Empty } var file_teleport_plugins_v1_plugin_service_proto_depIdxs = []int32{ - 7, // 0: teleport.plugins.v1.CreatePluginRequest.plugin:type_name -> types.PluginV1 - 8, // 1: teleport.plugins.v1.CreatePluginRequest.bootstrap_credentials:type_name -> types.PluginBootstrapCredentialsV1 - 7, // 2: teleport.plugins.v1.ListPluginsResponse.plugins:type_name -> types.PluginV1 - 9, // 3: teleport.plugins.v1.SetPluginCredentialsRequest.credentials:type_name -> types.PluginCredentialsV1 - 10, // 4: teleport.plugins.v1.SetPluginStatusRequest.status:type_name -> types.PluginStatusV1 - 0, // 5: teleport.plugins.v1.PluginService.CreatePlugin:input_type -> teleport.plugins.v1.CreatePluginRequest - 1, // 6: teleport.plugins.v1.PluginService.GetPlugin:input_type -> teleport.plugins.v1.GetPluginRequest - 4, // 7: teleport.plugins.v1.PluginService.DeletePlugin:input_type -> teleport.plugins.v1.DeletePluginRequest - 2, // 8: teleport.plugins.v1.PluginService.ListPlugins:input_type -> teleport.plugins.v1.ListPluginsRequest - 5, // 9: teleport.plugins.v1.PluginService.SetPluginCredentials:input_type -> teleport.plugins.v1.SetPluginCredentialsRequest - 6, // 10: teleport.plugins.v1.PluginService.SetPluginStatus:input_type -> teleport.plugins.v1.SetPluginStatusRequest - 11, // 11: teleport.plugins.v1.PluginService.CreatePlugin:output_type -> google.protobuf.Empty - 7, // 12: teleport.plugins.v1.PluginService.GetPlugin:output_type -> types.PluginV1 - 11, // 13: teleport.plugins.v1.PluginService.DeletePlugin:output_type -> google.protobuf.Empty - 3, // 14: teleport.plugins.v1.PluginService.ListPlugins:output_type -> teleport.plugins.v1.ListPluginsResponse - 11, // 15: teleport.plugins.v1.PluginService.SetPluginCredentials:output_type -> google.protobuf.Empty - 11, // 16: teleport.plugins.v1.PluginService.SetPluginStatus:output_type -> google.protobuf.Empty - 11, // [11:17] is the sub-list for method output_type - 5, // [5:11] 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 + 10, // 0: teleport.plugins.v1.CreatePluginRequest.plugin:type_name -> types.PluginV1 + 11, // 1: teleport.plugins.v1.CreatePluginRequest.bootstrap_credentials:type_name -> types.PluginBootstrapCredentialsV1 + 10, // 2: teleport.plugins.v1.ListPluginsResponse.plugins:type_name -> types.PluginV1 + 12, // 3: teleport.plugins.v1.SetPluginCredentialsRequest.credentials:type_name -> types.PluginCredentialsV1 + 13, // 4: teleport.plugins.v1.SetPluginStatusRequest.status:type_name -> types.PluginStatusV1 + 0, // 5: teleport.plugins.v1.GetAvailablePluginTypesResponse.plugin_types:type_name -> teleport.plugins.v1.PluginType + 1, // 6: teleport.plugins.v1.PluginService.CreatePlugin:input_type -> teleport.plugins.v1.CreatePluginRequest + 2, // 7: teleport.plugins.v1.PluginService.GetPlugin:input_type -> teleport.plugins.v1.GetPluginRequest + 5, // 8: teleport.plugins.v1.PluginService.DeletePlugin:input_type -> teleport.plugins.v1.DeletePluginRequest + 3, // 9: teleport.plugins.v1.PluginService.ListPlugins:input_type -> teleport.plugins.v1.ListPluginsRequest + 6, // 10: teleport.plugins.v1.PluginService.SetPluginCredentials:input_type -> teleport.plugins.v1.SetPluginCredentialsRequest + 7, // 11: teleport.plugins.v1.PluginService.SetPluginStatus:input_type -> teleport.plugins.v1.SetPluginStatusRequest + 8, // 12: teleport.plugins.v1.PluginService.GetAvailablePluginTypes:input_type -> teleport.plugins.v1.GetAvailablePluginTypesRequest + 14, // 13: teleport.plugins.v1.PluginService.CreatePlugin:output_type -> google.protobuf.Empty + 10, // 14: teleport.plugins.v1.PluginService.GetPlugin:output_type -> types.PluginV1 + 14, // 15: teleport.plugins.v1.PluginService.DeletePlugin:output_type -> google.protobuf.Empty + 4, // 16: teleport.plugins.v1.PluginService.ListPlugins:output_type -> teleport.plugins.v1.ListPluginsResponse + 14, // 17: teleport.plugins.v1.PluginService.SetPluginCredentials:output_type -> google.protobuf.Empty + 14, // 18: teleport.plugins.v1.PluginService.SetPluginStatus:output_type -> google.protobuf.Empty + 9, // 19: teleport.plugins.v1.PluginService.GetAvailablePluginTypes:output_type -> teleport.plugins.v1.GetAvailablePluginTypesResponse + 13, // [13:20] is the sub-list for method output_type + 6, // [6:13] is the sub-list for method input_type + 6, // [6:6] is the sub-list for extension type_name + 6, // [6:6] is the sub-list for extension extendee + 0, // [0:6] is the sub-list for field type_name } func init() { file_teleport_plugins_v1_plugin_service_proto_init() } @@ -580,7 +758,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } if !protoimpl.UnsafeEnabled { file_teleport_plugins_v1_plugin_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreatePluginRequest); i { + switch v := v.(*PluginType); i { case 0: return &v.state case 1: @@ -592,7 +770,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPluginRequest); i { + switch v := v.(*CreatePluginRequest); i { case 0: return &v.state case 1: @@ -604,7 +782,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPluginsRequest); i { + switch v := v.(*GetPluginRequest); i { case 0: return &v.state case 1: @@ -616,7 +794,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPluginsResponse); i { + switch v := v.(*ListPluginsRequest); i { case 0: return &v.state case 1: @@ -628,7 +806,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeletePluginRequest); i { + switch v := v.(*ListPluginsResponse); i { case 0: return &v.state case 1: @@ -640,7 +818,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetPluginCredentialsRequest); i { + switch v := v.(*DeletePluginRequest); i { case 0: return &v.state case 1: @@ -652,6 +830,18 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { } } file_teleport_plugins_v1_plugin_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetPluginCredentialsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_teleport_plugins_v1_plugin_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SetPluginStatusRequest); i { case 0: return &v.state @@ -663,6 +853,30 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { return nil } } + file_teleport_plugins_v1_plugin_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetAvailablePluginTypesRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_teleport_plugins_v1_plugin_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetAvailablePluginTypesResponse); 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{ @@ -670,7 +884,7 @@ func file_teleport_plugins_v1_plugin_service_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_teleport_plugins_v1_plugin_service_proto_rawDesc, NumEnums: 0, - NumMessages: 7, + NumMessages: 10, NumExtensions: 0, NumServices: 1, }, diff --git a/api/gen/proto/go/teleport/plugins/v1/plugin_service_grpc.pb.go b/api/gen/proto/go/teleport/plugins/v1/plugin_service_grpc.pb.go index 33547f6824a26..17808cf464d02 100644 --- a/api/gen/proto/go/teleport/plugins/v1/plugin_service_grpc.pb.go +++ b/api/gen/proto/go/teleport/plugins/v1/plugin_service_grpc.pb.go @@ -35,12 +35,13 @@ import ( const _ = grpc.SupportPackageIsVersion7 const ( - PluginService_CreatePlugin_FullMethodName = "/teleport.plugins.v1.PluginService/CreatePlugin" - PluginService_GetPlugin_FullMethodName = "/teleport.plugins.v1.PluginService/GetPlugin" - PluginService_DeletePlugin_FullMethodName = "/teleport.plugins.v1.PluginService/DeletePlugin" - PluginService_ListPlugins_FullMethodName = "/teleport.plugins.v1.PluginService/ListPlugins" - PluginService_SetPluginCredentials_FullMethodName = "/teleport.plugins.v1.PluginService/SetPluginCredentials" - PluginService_SetPluginStatus_FullMethodName = "/teleport.plugins.v1.PluginService/SetPluginStatus" + PluginService_CreatePlugin_FullMethodName = "/teleport.plugins.v1.PluginService/CreatePlugin" + PluginService_GetPlugin_FullMethodName = "/teleport.plugins.v1.PluginService/GetPlugin" + PluginService_DeletePlugin_FullMethodName = "/teleport.plugins.v1.PluginService/DeletePlugin" + PluginService_ListPlugins_FullMethodName = "/teleport.plugins.v1.PluginService/ListPlugins" + PluginService_SetPluginCredentials_FullMethodName = "/teleport.plugins.v1.PluginService/SetPluginCredentials" + PluginService_SetPluginStatus_FullMethodName = "/teleport.plugins.v1.PluginService/SetPluginStatus" + PluginService_GetAvailablePluginTypes_FullMethodName = "/teleport.plugins.v1.PluginService/GetAvailablePluginTypes" ) // PluginServiceClient is the client API for PluginService service. @@ -59,6 +60,9 @@ type PluginServiceClient interface { SetPluginCredentials(ctx context.Context, in *SetPluginCredentialsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) // SetPluginCredentials sets the status for the given plugin. SetPluginStatus(ctx context.Context, in *SetPluginStatusRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) + // GetAvailablePluginTypes returns the types of plugins + // that the auth server supports onboarding. + GetAvailablePluginTypes(ctx context.Context, in *GetAvailablePluginTypesRequest, opts ...grpc.CallOption) (*GetAvailablePluginTypesResponse, error) } type pluginServiceClient struct { @@ -123,6 +127,15 @@ func (c *pluginServiceClient) SetPluginStatus(ctx context.Context, in *SetPlugin return out, nil } +func (c *pluginServiceClient) GetAvailablePluginTypes(ctx context.Context, in *GetAvailablePluginTypesRequest, opts ...grpc.CallOption) (*GetAvailablePluginTypesResponse, error) { + out := new(GetAvailablePluginTypesResponse) + err := c.cc.Invoke(ctx, PluginService_GetAvailablePluginTypes_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + // PluginServiceServer is the server API for PluginService service. // All implementations must embed UnimplementedPluginServiceServer // for forward compatibility @@ -139,6 +152,9 @@ type PluginServiceServer interface { SetPluginCredentials(context.Context, *SetPluginCredentialsRequest) (*emptypb.Empty, error) // SetPluginCredentials sets the status for the given plugin. SetPluginStatus(context.Context, *SetPluginStatusRequest) (*emptypb.Empty, error) + // GetAvailablePluginTypes returns the types of plugins + // that the auth server supports onboarding. + GetAvailablePluginTypes(context.Context, *GetAvailablePluginTypesRequest) (*GetAvailablePluginTypesResponse, error) mustEmbedUnimplementedPluginServiceServer() } @@ -164,6 +180,9 @@ func (UnimplementedPluginServiceServer) SetPluginCredentials(context.Context, *S func (UnimplementedPluginServiceServer) SetPluginStatus(context.Context, *SetPluginStatusRequest) (*emptypb.Empty, error) { return nil, status.Errorf(codes.Unimplemented, "method SetPluginStatus not implemented") } +func (UnimplementedPluginServiceServer) GetAvailablePluginTypes(context.Context, *GetAvailablePluginTypesRequest) (*GetAvailablePluginTypesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetAvailablePluginTypes not implemented") +} func (UnimplementedPluginServiceServer) mustEmbedUnimplementedPluginServiceServer() {} // UnsafePluginServiceServer may be embedded to opt out of forward compatibility for this service. @@ -285,6 +304,24 @@ func _PluginService_SetPluginStatus_Handler(srv interface{}, ctx context.Context return interceptor(ctx, in, info, handler) } +func _PluginService_GetAvailablePluginTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetAvailablePluginTypesRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PluginServiceServer).GetAvailablePluginTypes(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: PluginService_GetAvailablePluginTypes_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PluginServiceServer).GetAvailablePluginTypes(ctx, req.(*GetAvailablePluginTypesRequest)) + } + return interceptor(ctx, in, info, handler) +} + // PluginService_ServiceDesc is the grpc.ServiceDesc for PluginService service. // It's only intended for direct use with grpc.RegisterService, // and not to be introspected or modified (even as a copy) @@ -316,6 +353,10 @@ var PluginService_ServiceDesc = grpc.ServiceDesc{ MethodName: "SetPluginStatus", Handler: _PluginService_SetPluginStatus_Handler, }, + { + MethodName: "GetAvailablePluginTypes", + Handler: _PluginService_GetAvailablePluginTypes_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "teleport/plugins/v1/plugin_service.proto", diff --git a/api/proto/teleport/plugins/v1/plugin_service.proto b/api/proto/teleport/plugins/v1/plugin_service.proto index b5a2975d4fb16..344b365e84899 100644 --- a/api/proto/teleport/plugins/v1/plugin_service.proto +++ b/api/proto/teleport/plugins/v1/plugin_service.proto @@ -21,6 +21,19 @@ import "teleport/legacy/types/types.proto"; option go_package = "github.com/gravitational/teleport/api/gen/proto/go/teleport/plugins/v1"; +// PluginType represents a single type of hosted plugin +// that can be onboarded. +message PluginType { + // Type is a string corresponding to api.PluginTypeXXX constants + string type = 1; + + // OAuthClientID contains the client ID of the OAuth application + // that is used with this plugin's API provider. + // For plugins that are not authenticated via OAuth, + // this will be empty. + string oauth_client_id = 2; +} + // CreatePluginRequest creates a new plugin from the given spec and initial credentials. message CreatePluginRequest { // Plugin is the plugin object without live credentials. @@ -81,6 +94,16 @@ message SetPluginStatusRequest { types.PluginStatusV1 status = 2; } +// GetAvailablePluginTypesRequest is the request type for GetAvailablePluginTypes +message GetAvailablePluginTypesRequest {} + +// GetAvailablePluginTypesResponse is a response to for GetAvailablePluginTypes +message GetAvailablePluginTypesResponse { + // PluginTypes is a list of hosted plugins + // that the auth service supports. + repeated PluginType plugin_types = 1; +} + // PluginService provides CRUD operations for Plugin resources. service PluginService { // CreatePlugin creates a new plugin instance. @@ -100,4 +123,8 @@ service PluginService { // SetPluginCredentials sets the status for the given plugin. rpc SetPluginStatus(SetPluginStatusRequest) returns (google.protobuf.Empty); + + // GetAvailablePluginTypes returns the types of plugins + // that the auth server supports onboarding. + rpc GetAvailablePluginTypes(GetAvailablePluginTypesRequest) returns (GetAvailablePluginTypesResponse); } diff --git a/lib/httplib/csrf/csrf.go b/lib/httplib/csrf/csrf.go index c5d3d3945a28f..47dbf68a727f1 100644 --- a/lib/httplib/csrf/csrf.go +++ b/lib/httplib/csrf/csrf.go @@ -34,6 +34,8 @@ const ( CookieName = "__Host-grv_csrf" // HeaderName is the default HTTP request header to inspect. HeaderName = "X-CSRF-Token" + // FormFieldName is the default form field to inspect. + FormFieldName = "csrf_token" // tokenLenBytes is CSRF token length in bytes. tokenLenBytes = 32 // defaultMaxAge is the default MaxAge for cookies. @@ -76,6 +78,21 @@ func VerifyHTTPHeader(r *http.Request) error { return nil } +// VerifyFormField checks if HTTP form value matches the cookie. +func VerifyFormField(r *http.Request) error { + token := r.FormValue(FormFieldName) + if len(token) == 0 { + return trace.BadParameter("cannot retrieve CSRF token from form field %q", FormFieldName) + } + + err := VerifyToken(token, r) + if err != nil { + return trace.Wrap(err) + } + + return nil +} + // VerifyToken validates given token based on HTTP request cookie func VerifyToken(token string, r *http.Request) error { realToken, err := ExtractTokenFromCookie(r) diff --git a/lib/httplib/httplib.go b/lib/httplib/httplib.go index 1e26d590df118..92a82e5f9c5df 100644 --- a/lib/httplib/httplib.go +++ b/lib/httplib/httplib.go @@ -139,15 +139,18 @@ func MakeStdHandlerWithErrorWriter(fn StdHandlerFunc, errWriter ErrorWriter) htt // WithCSRFProtection ensures that request to unauthenticated API is checked against CSRF attacks func WithCSRFProtection(fn HandlerFunc) httprouter.Handle { - hanlderFn := MakeHandler(fn) + handlerFn := MakeHandler(fn) return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { - err := csrf.VerifyHTTPHeader(r) - if err != nil { - log.Warningf("unable to validate CSRF token %v", err) - trace.WriteError(w, trace.AccessDenied("access denied")) - return + if r.Method != http.MethodGet && r.Method != http.MethodHead { + errHeader := csrf.VerifyHTTPHeader(r) + errForm := csrf.VerifyFormField(r) + if errForm != nil && errHeader != nil { + log.Warningf("unable to validate CSRF token: %v, %v", errHeader, errForm) + trace.WriteError(w, trace.AccessDenied("access denied")) + return + } } - hanlderFn(w, r, p) + handlerFn(w, r, p) } } diff --git a/lib/web/apiserver.go b/lib/web/apiserver.go index db9a1254798e0..0780827738a6f 100644 --- a/lib/web/apiserver.go +++ b/lib/web/apiserver.go @@ -91,21 +91,8 @@ import ( const ( // SSOLoginFailureMessage is a generic error message to avoid disclosing sensitive SSO failure messages. SSOLoginFailureMessage = "Failed to login. Please check Teleport's log for more details." - metaRedirectHTML = ` - - - - Teleport Redirection Service - - - - - -` ) -var metaRedirectTemplate = template.Must(template.New("meta-redirect").Parse(metaRedirectHTML)) - // healthCheckAppServerFunc defines a function used to perform a health check // to AppServer that can handle application requests (based on cluster name and // public address). @@ -858,6 +845,11 @@ func (h *Handler) getUserContext(w http.ResponseWriter, r *http.Request, p httpr return userContext, nil } +// PublicProxyAddr returns the publicly advertised proxy address +func (h *Handler) PublicProxyAddr() string { + return h.cfg.PublicProxyAddr +} + func localSettings(cap types.AuthPreference) (webclient.AuthenticationSettings, error) { as := webclient.AuthenticationSettings{ Type: constants.Local, @@ -1569,7 +1561,7 @@ func (h *Handler) installer(w http.ResponseWriter, r *http.Request, p httprouter } tmpl := installers.Template{ - PublicProxyAddr: h.cfg.PublicProxyAddr, + PublicProxyAddr: h.PublicProxyAddr(), TeleportPackage: teleportPackage, RepoChannel: repoChannel, } @@ -3577,14 +3569,13 @@ func (h *Handler) WithRedirect(fn redirectHandlerFunc) httprouter.Handle { // See https://github.com/gravitational/teleport/issues/7467. func (h *Handler) WithMetaRedirect(fn redirectHandlerFunc) httprouter.Handle { return func(w http.ResponseWriter, r *http.Request, p httprouter.Params) { - app.SetRedirectPageHeaders(w.Header(), "") redirectURL := fn(w, r, p) if !isValidRedirectURL(redirectURL) { redirectURL = client.LoginFailedRedirectURL } - err := metaRedirectTemplate.Execute(w, redirectURL) + err := app.MetaRedirect(w, redirectURL) if err != nil { - h.log.WithError(err).Warn("Failed to execute template.") + h.log.WithError(err).Warn("Failed to issue a redirect.") } } } @@ -3600,6 +3591,21 @@ func (h *Handler) WithAuth(fn ContextHandler) httprouter.Handle { }) } +// WithAuthCookieAndCSRF ensures that a request is authenticated +// for plain old non-AJAX requests (does not check the Bearer header). +// It enforces CSRF checks (except for "safe" methods). +func (h *Handler) WithAuthCookieAndCSRF(fn ContextHandler) httprouter.Handle { + f := func(w http.ResponseWriter, r *http.Request, p httprouter.Params) (interface{}, error) { + sctx, err := h.AuthenticateRequest(w, r, false) + if err != nil { + return nil, trace.Wrap(err) + } + return fn(w, r, p, sctx) + } + + return httplib.WithCSRFProtection(f) +} + // WithLimiter adds IP-based rate limiting to fn. func (h *Handler) WithLimiter(fn httplib.HandlerFunc) httprouter.Handle { return httplib.MakeHandler(func(w http.ResponseWriter, r *http.Request, p httprouter.Params) (interface{}, error) { diff --git a/lib/web/app/redirect.go b/lib/web/app/redirect.go index 5fe990a1163b2..23f58310f3ea8 100644 --- a/lib/web/app/redirect.go +++ b/lib/web/app/redirect.go @@ -18,12 +18,29 @@ package app import ( "fmt" + "html/template" "net/http" "strings" + "github.com/gravitational/trace" + "github.com/gravitational/teleport/lib/httplib" ) +const metaRedirectHTML = ` + + + + Teleport Redirection Service + + + + + +` + +var metaRedirectTemplate = template.Must(template.New("meta-redirect").Parse(metaRedirectHTML)) + func SetRedirectPageHeaders(h http.Header, nonce string) { httplib.SetNoCacheHeaders(h) httplib.SetDefaultSecurityHeaders(h) @@ -42,3 +59,9 @@ func SetRedirectPageHeaders(h http.Header, nonce string) { }, ";") h.Set("Content-Security-Policy", csp) } + +// MetaRedirect issues a "meta refresh" redirect. +func MetaRedirect(w http.ResponseWriter, redirectURL string) error { + SetRedirectPageHeaders(w.Header(), "") + return trace.Wrap(metaRedirectTemplate.Execute(w, redirectURL)) +} diff --git a/lib/web/connection_diagnostic.go b/lib/web/connection_diagnostic.go index 653197c25c286..d2b71731d5e80 100644 --- a/lib/web/connection_diagnostic.go +++ b/lib/web/connection_diagnostic.go @@ -74,7 +74,7 @@ func (h *Handler) diagnoseConnection(w http.ResponseWriter, r *http.Request, p h ResourceKind: req.ResourceKind, UserClient: userClt, ProxyHostPort: h.ProxyHostPort(), - PublicProxyAddr: h.cfg.PublicProxyAddr, + PublicProxyAddr: h.PublicProxyAddr(), KubernetesPublicProxyAddr: h.kubeProxyHostPort(), TLSRoutingEnabled: proxySettings.TLSRoutingEnabled, } diff --git a/web/packages/design/src/Icon/Icon.jsx b/web/packages/design/src/Icon/Icon.jsx index 4425ea6c3653b..149cffbfd4553 100644 --- a/web/packages/design/src/Icon/Icon.jsx +++ b/web/packages/design/src/Icon/Icon.jsx @@ -164,6 +164,7 @@ export const ForwarderAdded = makeFontIcon( export const Github = makeFontIcon('Github', 'icon-github'); export const Google = makeFontIcon('Google', 'icon-google-plus'); export const Graph = makeFontIcon('Graph', 'icon-graph'); +export const Hashtag = makeFontIcon('Hashtag', 'icon-hashtag'); export const Home = makeFontIcon('Home', 'icon-home3'); export const Info = makeFontIcon('Info', 'icon-info_outline'); export const InfoFilled = makeFontIcon('Info', 'icon-info'); diff --git a/web/packages/design/src/Icon/Icon.story.js b/web/packages/design/src/Icon/Icon.story.js index a754eb0f85b29..04aa8954564e2 100644 --- a/web/packages/design/src/Icon/Icon.story.js +++ b/web/packages/design/src/Icon/Icon.story.js @@ -112,6 +112,7 @@ export const ListOfIcons = () => ( + diff --git a/web/packages/design/src/assets/icomoon/fonts/icomoon.svg b/web/packages/design/src/assets/icomoon/fonts/icomoon.svg index 7a7d4a111389c..72cb616f1ce6b 100644 --- a/web/packages/design/src/assets/icomoon/fonts/icomoon.svg +++ b/web/packages/design/src/assets/icomoon/fonts/icomoon.svg @@ -188,4 +188,5 @@ + \ No newline at end of file diff --git a/web/packages/design/src/assets/icomoon/fonts/icomoon.ttf b/web/packages/design/src/assets/icomoon/fonts/icomoon.ttf index 2c048e96ab770b701ad498a17b3371165b47e3d5..51f8135983638228fe13720458ca0be8453bfff6 100644 GIT binary patch delta 643 zcmaE|lzGVt=6VK31_lOhh6V;^1_S?KeItG${tZBpJwTk0oSRs1xB0R@0|TQB5Z_5p zEG__w3otM+{Q%M&={c2YADk3#G5|F*Fq~SDk(!vIGEHtH1H;(`KmoH1pa91M))_$l z4Ip17Be$gD`YL5jApZ~0j2Aii$(D(H%6B;!7%n^kT2PjoSW&=mjR|Plr5KC6L+{XPMXAM&3yo)2B(3*D&UQ zC<&%4Ha>Nr2FA$~nGz;1VB+2Uk*VTjJrjd4(8+I^^MFzrKy%HN*%{gS7_}MMjg7>_ zl^0P%APABmyFFE+$3> SX^>h5CSYU;Z??aMuTmBR@{a)ZJjuyVwoF`c`7Q?o!}%3J3rcbmD+(B{GBGnSTm)LkppciC zn>y2r^EZ%h1C(zo$S*DdIur;l9htbpow0cmqc!&qAUBJ_fq|7lYqA?-+T?YNIg@3W zvRHr$87EI<%GmsksrsZc$eTd?>HmJ!cz&C&4BRXrV;Js#Pf>@_laHJ=XWY5@&)FwT eo1a`LVH5y|%}ypp2A~gtfC*@t@aFnUOBn&fs#z2O diff --git a/web/packages/design/src/assets/icomoon/fonts/icomoon.woff b/web/packages/design/src/assets/icomoon/fonts/icomoon.woff index 775de3ce89d87211a4bddc954f07f5784bd127cb..e188aded30732918d7c09520434e253a7bf89b97 100644 GIT binary patch delta 655 zcmZuvO-LI-6n<}JlG!8>g_O3Z5KW>;7Zn9_NUR(%`g$f=#^iV-c3x#^{&6pGmUHJCR_r33X!wj>z&d)dajpgZ7 z3J~b~RDgi4F?XNcu9%_H=4{p~0H96ys&M@Dn?!)!7;z2b#Ph<=7FS4{1YqA34qrw4GWl8ZjUEirrb`OJ z=&_NtR%qi78x)Rcd}cgnWz(d+CC@X3m-l^t3i-t%oo1$TF^!Hpg~`Ac*)uQ(9xz=8 z=h+X({f!w_=GY?^>~(ipzMkZ(+a(4eI>#B$0SB7~CZZB$5bvNI9=drej2)UNv7>L?~DdYvexHDNe$ooG?Ak$5G}CQA|KlZ|*yNX{9Hpx@i5S;r&?ZMxb=2sqSv^`|6 zX^UFuw0=7DeEOOc32=ugj3pOVn1 I=MG-uC883Dy#N3J delta 342 zcmeycf_cL-X0dXAH#Y`G1|Ya>z`zZnFFj#kocxeUY@&{E{letj!~zBe#tb070>Z3Q zwjWPVECz}(+W^&aK(Ro2PGuTU%!PsBBv9^T!C5y^>5SCG6b6PfTYzfJKv+ea=Wqs4 z5GeKr$X5Yjjt8vMGjdBR7#Pk9FfcGZ0pZK5l*MxLlY#2&&VK<~S^~l=F5l(IO{@SK zei7&x1_dy_%EX+Pn41a|>j0{01L2uooWBe5i-CGB3rzgu&)7WKhtZmQ2T*wyg98IA zgVy9pjA@g9G3HFpV9H`)U@^{{_j_f=ePOFz|8^_U|_ia kJw+WxPZl_5&bV{4$GIm=n+-0OFtUNeZ|CN9mku!k08~L=ivR!s diff --git a/web/packages/design/src/assets/icomoon/fonts/icomoon.woff2 b/web/packages/design/src/assets/icomoon/fonts/icomoon.woff2 index 5644d418cc2ab60764f84df692ea389e2d98cc22..8dbec5707339a1de227f0036c699399269b59143 100644 GIT binary patch literal 23240 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 diff --git a/web/packages/design/src/assets/icomoon/style.css b/web/packages/design/src/assets/icomoon/style.css index 67cf31a35caa2..2ddc852e47ea2 100644 --- a/web/packages/design/src/assets/icomoon/style.css +++ b/web/packages/design/src/assets/icomoon/style.css @@ -1,6 +1,6 @@ @font-face { font-family: 'icomoon'; - src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format('truetype'); + src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format('truetype'); font-weight: normal; font-style: normal; font-display: block; @@ -555,6 +555,9 @@ .icon-credit-card-alt:before { content: "\f283"; } +.icon-hashtag:before { + content: "\f292"; +} .icon-spinner8:before { content: "\e981"; } diff --git a/web/packages/shared/components/FieldInput/FieldInput.tsx b/web/packages/shared/components/FieldInput/FieldInput.tsx index dbcc244897040..5bde2409396f5 100644 --- a/web/packages/shared/components/FieldInput/FieldInput.tsx +++ b/web/packages/shared/components/FieldInput/FieldInput.tsx @@ -33,6 +33,7 @@ const FieldInput = forwardRef( min, max, rule = defaultRule, + name, type = 'text', autoFocus = false, autoComplete = 'off', @@ -53,6 +54,7 @@ const FieldInput = forwardRef( mt={1} ref={ref} type={type} + name={name} hasError={hasError || markAsError} placeholder={placeholder} autoFocus={autoFocus} diff --git a/web/packages/shared/components/FieldInput/__snapshots__/FieldInput.test.tsx.snap b/web/packages/shared/components/FieldInput/__snapshots__/FieldInput.test.tsx.snap index a3ad6cd25d472..fb564416b7b2d 100644 --- a/web/packages/shared/components/FieldInput/__snapshots__/FieldInput.test.tsx.snap +++ b/web/packages/shared/components/FieldInput/__snapshots__/FieldInput.test.tsx.snap @@ -82,7 +82,6 @@ exports[`snapshot tests 1`] = `
@@ -1423,10 +1463,10 @@ exports[`render with all access 1`] = ` width="24px" >
- RDS & Aurora + Redshift PostgreSQL
@@ -1451,7 +1491,7 @@ exports[`render with all access 1`] = ` @@ -1463,10 +1503,10 @@ exports[`render with all access 1`] = ` width="24px" >
- RDS Proxy + Redshift Serverless
@@ -1491,7 +1531,7 @@ exports[`render with all access 1`] = `
@@ -1517,13 +1557,13 @@ exports[`render with all access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift PostgreSQL + Cache for Redis
@@ -1531,7 +1571,7 @@ exports[`render with all access 1`] = `
@@ -1557,13 +1597,13 @@ exports[`render with all access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift Serverless + PostgreSQL
@@ -1571,7 +1611,7 @@ exports[`render with all access 1`] = `
@@ -1603,7 +1643,7 @@ exports[`render with all access 1`] = ` class="c13" color="white" > - Cache for Redis + MySQL @@ -1611,7 +1651,7 @@ exports[`render with all access 1`] = ` @@ -1643,7 +1683,7 @@ exports[`render with all access 1`] = ` class="c13" color="white" > - PostgreSQL & MySQL + SQL Server (Preview) @@ -1651,7 +1691,7 @@ exports[`render with all access 1`] = ` @@ -1677,7 +1717,7 @@ exports[`render with all access 1`] = ` color="#a8afb2" font-size="12px" > - Azure + Microsoft
+ +
+
+ +
+
+
+ Amazon Web Services (AWS) +
+
+ RDS Proxy +
+
+
+
+ +
+
+ +
+
+
+ Database +
+
+ High Availability +
+
+
+
+ +
+
+ +
+
+
+ Database +
+
+ Dynamic Registration +
+
+
+
- RDS & Aurora + Redshift PostgreSQL
@@ -2996,10 +3156,10 @@ exports[`render with no access 1`] = ` width="24px" >
- RDS Proxy + Redshift Serverless
@@ -3054,13 +3214,13 @@ exports[`render with no access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift PostgreSQL + Cache for Redis
@@ -3098,13 +3258,13 @@ exports[`render with no access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift Serverless + PostgreSQL
@@ -3148,7 +3308,7 @@ exports[`render with no access 1`] = ` class="c14" color="white" > - Cache for Redis + MySQL @@ -3192,7 +3352,7 @@ exports[`render with no access 1`] = ` class="c14" color="white" > - PostgreSQL & MySQL + SQL Server (Preview) @@ -3230,7 +3390,7 @@ exports[`render with no access 1`] = ` color="#a8afb2" font-size="12px" > - Azure + Microsoft
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Amazon Web Services (AWS) +
+
+ RDS Proxy +
+
+
+
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Database +
+
+ High Availability +
+
+
+
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Database +
+
+ Dynamic Registration +
+
+
+
- RDS & Aurora + Redshift PostgreSQL
@@ -4618,10 +4910,10 @@ exports[`render with partial access 1`] = ` width="24px" >
- RDS Proxy + Redshift Serverless
@@ -4676,13 +4968,13 @@ exports[`render with partial access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift PostgreSQL + Cache for Redis
@@ -4720,13 +5012,13 @@ exports[`render with partial access 1`] = ` color="#a8afb2" font-size="12px" > - Amazon Web Services (AWS) + Azure
- Redshift Serverless + PostgreSQL
@@ -4770,7 +5062,7 @@ exports[`render with partial access 1`] = ` class="c13" color="white" > - Cache for Redis + MySQL @@ -4814,7 +5106,7 @@ exports[`render with partial access 1`] = ` class="c13" color="white" > - PostgreSQL & MySQL + SQL Server (Preview) @@ -4852,7 +5144,7 @@ exports[`render with partial access 1`] = ` color="#a8afb2" font-size="12px" > - Azure + Microsoft
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Amazon Web Services (AWS) +
+
+ RDS Proxy +
+
+
+
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Database +
+
+ High Availability +
+
+
+
+ +
+ Lacking Permissions +
+
+
+ +
+
+
+ Database +
+
+ Dynamic Registration +
+
+
+
, Application: , + Database: , Aws: , Azure: , Cockroach: , diff --git a/web/packages/teleport/src/Discover/SelectResource/resources.tsx b/web/packages/teleport/src/Discover/SelectResource/resources.tsx index 36dad739586d8..4236897602cdc 100644 --- a/web/packages/teleport/src/Discover/SelectResource/resources.tsx +++ b/web/packages/teleport/src/Discover/SelectResource/resources.tsx @@ -14,10 +14,16 @@ * limitations under the License. */ +import { DiscoverEventResource } from 'teleport/services/userEvent'; + import { ResourceKind } from '../Shared/ResourceKind'; -import { DATABASES, DATABASES_UNGUIDED } from './databases'; -import { ResourceSpec, DatabaseLocation } from './types'; +import { + DATABASES, + DATABASES_UNGUIDED, + DATABASES_UNGUIDED_DOC, +} from './databases'; +import { ResourceSpec, DatabaseLocation, DatabaseEngine } from './types'; import { icons } from './icons'; const baseServerKeywords = 'server node'; @@ -27,30 +33,35 @@ export const SERVERS: ResourceSpec[] = [ kind: ResourceKind.Server, keywords: baseServerKeywords + 'ubuntu', Icon: icons.Linux, + event: DiscoverEventResource.Server, }, { name: 'Debian 8+', kind: ResourceKind.Server, keywords: baseServerKeywords + 'debian', Icon: icons.Linux, + event: DiscoverEventResource.Server, }, { name: 'RHEL/CentOS 7+', kind: ResourceKind.Server, keywords: baseServerKeywords + 'rhel centos', Icon: icons.Linux, + event: DiscoverEventResource.Server, }, { name: 'Amazon Linux 2', kind: ResourceKind.Server, keywords: baseServerKeywords + 'amazon linux', Icon: icons.Aws, + event: DiscoverEventResource.Server, }, { name: 'macOS (Intel)', kind: ResourceKind.Server, keywords: baseServerKeywords + 'mac macos intel', Icon: icons.Apple, + event: DiscoverEventResource.Server, }, ]; @@ -62,6 +73,7 @@ export const APPLICATIONS: ResourceSpec[] = [ Icon: icons.Application, unguidedLink: 'https://goteleport.com/docs/application-access/getting-started/', + event: DiscoverEventResource.ApplicationHttp, }, ]; @@ -71,6 +83,7 @@ export const WINDOWS_DESKTOPS: ResourceSpec[] = [ kind: ResourceKind.Desktop, keywords: 'windows desktop active directory ad', Icon: icons.Windows, + event: DiscoverEventResource.WindowsDesktop, }, // { // name: 'Non Active Directory', @@ -87,6 +100,7 @@ export const KUBERNETES: ResourceSpec[] = [ kind: ResourceKind.Kubernetes, keywords: 'kubernetes cluster kubes', Icon: icons.Kube, + event: DiscoverEventResource.Kubernetes, }, ]; @@ -97,6 +111,7 @@ export const RESOURCES: ResourceSpec[] = [ ...SERVERS, ...DATABASES, ...DATABASES_UNGUIDED, + ...DATABASES_UNGUIDED_DOC, ]; export function getResourcePretitle(r: ResourceSpec) { @@ -108,14 +123,20 @@ export function getResourcePretitle(r: ResourceSpec) { case ResourceKind.Database: if (r.dbMeta) { switch (r.dbMeta.location) { - case DatabaseLocation.AWS: + case DatabaseLocation.Aws: return 'Amazon Web Services (AWS)'; - case DatabaseLocation.GCP: + case DatabaseLocation.Gcp: return 'Google Cloud Provider (GCP)'; case DatabaseLocation.SelfHosted: return 'Self-Hosted'; case DatabaseLocation.Azure: return 'Azure'; + case DatabaseLocation.Microsoft: + return 'Microsoft'; + } + + if (r.dbMeta.engine === DatabaseEngine.Doc) { + return 'Database'; } } break; diff --git a/web/packages/teleport/src/Discover/SelectResource/types.ts b/web/packages/teleport/src/Discover/SelectResource/types.ts index 5d2baeae93b31..8f5aaf6b5e757 100644 --- a/web/packages/teleport/src/Discover/SelectResource/types.ts +++ b/web/packages/teleport/src/Discover/SelectResource/types.ts @@ -16,26 +16,33 @@ import { ResourceKind } from '../Shared/ResourceKind'; +import type { DiscoverEventResource } from 'teleport/services/userEvent'; + export enum DatabaseLocation { - AWS, + Aws, SelfHosted, - GCP, + Gcp, Azure, - Snowflake, - Mongo, + Microsoft, TODO, } +// DatabaseEngine represents the db "protocol". export enum DatabaseEngine { - PostgreSQL, - MySQL, - Mongo, - SQLServer, - RedShift, + Postgres, + MySql, + MongoDb, Redis, + CoackroachDb, + SqlServer, + Snowflake, + Cassandra, + ElasticSearch, + DynamoDb, + Redshift, - TODO, + Doc, } export interface ResourceSpec { @@ -54,4 +61,8 @@ export interface ResourceSpec { // It is used as a flag, that when defined, means that // this resource is not "guided" (has no UI interactive flow). unguidedLink?: string; + // event is the expected backend enum event name that describes + // the type of this resource (eg. server v. kubernetes), + // used for usage reporting. + event: DiscoverEventResource; } diff --git a/web/packages/teleport/src/Discover/Shared/ResourceKind.ts b/web/packages/teleport/src/Discover/Shared/ResourceKind.ts index 61ad34401edf4..0852bb899a7ae 100644 --- a/web/packages/teleport/src/Discover/Shared/ResourceKind.ts +++ b/web/packages/teleport/src/Discover/Shared/ResourceKind.ts @@ -14,14 +14,6 @@ * limitations under the License. */ -import { DiscoverEventResource } from 'teleport/services/userEvent'; - -import { - DatabaseEngine, - DatabaseLocation, - ResourceSpec, -} from '../SelectResource/types'; - import type { JoinRole } from 'teleport/services/joinToken'; export enum ResourceKind { @@ -46,68 +38,3 @@ export function resourceKindToJoinRole(kind: ResourceKind): JoinRole { return 'Node'; } } - -export function resourceKindToEventResource( - resourceSpec: ResourceSpec -): DiscoverEventResource { - switch (resourceSpec.kind) { - case ResourceKind.Database: - const { engine, location } = resourceSpec.dbMeta; - if (location === DatabaseLocation.AWS) { - if (engine === DatabaseEngine.PostgreSQL) { - return DiscoverEventResource.DatabasePostgresRds; - } - if (engine === DatabaseEngine.MySQL) { - return DiscoverEventResource.DatabaseMysqlRds; - } - if (engine === DatabaseEngine.SQLServer) { - return DiscoverEventResource.DatabaseSqlServerRds; - } - if (engine === DatabaseEngine.RedShift) { - return DiscoverEventResource.DatabasePostgresRedshift; - } - } - - if (location === DatabaseLocation.SelfHosted) { - if (engine === DatabaseEngine.PostgreSQL) { - return DiscoverEventResource.DatabasePostgresSelfHosted; - } - if (engine === DatabaseEngine.MySQL) { - return DiscoverEventResource.DatabaseMysqlSelfHosted; - } - if (engine === DatabaseEngine.Mongo) { - return DiscoverEventResource.DatabaseMongodbSelfHosted; - } - if (engine === DatabaseEngine.SQLServer) { - return DiscoverEventResource.DatabaseSqlServerSelfHosted; - } - if (engine === DatabaseEngine.Redis) { - return DiscoverEventResource.DatabaseRedisSelfHosted; - } - } - - if (location === DatabaseLocation.GCP) { - if (engine === DatabaseEngine.PostgreSQL) { - return DiscoverEventResource.DatabasePostgresGcp; - } - if (engine === DatabaseEngine.MySQL) { - return DiscoverEventResource.DatabaseMysqlGcp; - } - if (engine === DatabaseEngine.SQLServer) { - return DiscoverEventResource.DatabaseMysqlGcp; - } - } - console.error(`resource database event not defined for ${resourceSpec}`); - return null; - case ResourceKind.Desktop: - return DiscoverEventResource.WindowsDesktop; - case ResourceKind.Kubernetes: - return DiscoverEventResource.Kubernetes; - case ResourceKind.Server: - return DiscoverEventResource.Server; - case ResourceKind.Application: - return DiscoverEventResource.ApplicationHttp; - default: - console.error(`resource event not defined for ${resourceSpec}`); - } -} diff --git a/web/packages/teleport/src/Discover/useDiscover.test.tsx b/web/packages/teleport/src/Discover/useDiscover.test.tsx index 28780a6bf9055..a1623a10f8196 100644 --- a/web/packages/teleport/src/Discover/useDiscover.test.tsx +++ b/web/packages/teleport/src/Discover/useDiscover.test.tsx @@ -111,7 +111,6 @@ describe('emitting events', () => { expect.objectContaining({ id: expect.any(String), currEventName: DiscoverEvent.DeployService, - eventResourceName: DiscoverEventResource.Server, }) ); @@ -162,7 +161,6 @@ describe('emitting events', () => { expect(result.current.eventState).toEqual({ id, currEventName: DiscoverEvent.PrincipalsConfigure, - eventResourceName: DiscoverEventResource.Server, }); jest.resetAllMocks(); diff --git a/web/packages/teleport/src/Discover/useDiscover.tsx b/web/packages/teleport/src/Discover/useDiscover.tsx index 5bf5c5b795582..47c292acf5e9b 100644 --- a/web/packages/teleport/src/Discover/useDiscover.tsx +++ b/web/packages/teleport/src/Discover/useDiscover.tsx @@ -32,7 +32,6 @@ import { ResourceViewConfig, View, } from './flow'; -import { resourceKindToEventResource } from './Shared/ResourceKind'; import { viewConfigs } from './resourceViewConfigs'; import type { Node } from 'teleport/services/nodes'; @@ -61,7 +60,6 @@ type EventState = { id: string; currEventName: DiscoverEvent; manuallyEmitSuccessEvent: boolean; - eventResourceName: DiscoverEventResource; }; type CustomEventInput = { @@ -87,19 +85,19 @@ export function DiscoverProvider(props: React.PropsWithChildren) { const emitEvent = useCallback( (status: DiscoverEventStepStatus, custom?: CustomEventInput) => { - const { id, currEventName, eventResourceName } = eventState; + const { id, currEventName } = eventState; userEventService.captureDiscoverEvent({ event: custom?.eventName || currEventName, eventData: { id, - resource: custom?.eventResourceName || eventResourceName, + resource: custom?.eventResourceName || resourceSpec?.event, autoDiscoverResourcesCount: custom?.autoDiscoverResourcesCount, ...status, }, }); }, - [eventState] + [eventState, resourceSpec] ); useEffect(() => { @@ -141,7 +139,6 @@ export function DiscoverProvider(props: React.PropsWithChildren) { setEventState({ id, currEventName: DiscoverEvent.Started, - eventResourceName: null, manuallyEmitSuccessEvent: null, }); userEventService.captureDiscoverEvent({ @@ -159,6 +156,20 @@ export function DiscoverProvider(props: React.PropsWithChildren) { // onSelectResources initializes all the required // variables needed to start a guided flow. function onSelectResource(resource: ResourceSpec) { + // We still want to emit an event if user clicked on + // unguided links to gather data on which unguided resource + // is most popular. + if (resource.unguidedLink) { + emitEvent( + { stepStatus: DiscoverEventStatus.Success }, + { + eventName: DiscoverEvent.ResourceSelection, + eventResourceName: resource.event, + } + ); + return; + } + // Process each view and assign each with an index number. const currCfg = viewConfigs.find(r => r.kind === resource.kind); let indexedViews = []; @@ -173,20 +184,20 @@ export function DiscoverProvider(props: React.PropsWithChildren) { indexedViews, currentStep ); - const eventResourceName = resourceKindToEventResource(resource); - // At this point it's considered the user has // successfully selected a resource, so we send an event. emitEvent( { stepStatus: DiscoverEventStatus.Success }, - { eventName: DiscoverEvent.ResourceSelection, eventResourceName } + { + eventName: DiscoverEvent.ResourceSelection, + eventResourceName: resource.event, + } ); // Init all required states to start the flow. setEventState({ ...eventState, currEventName: eventName, - eventResourceName, manuallyEmitSuccessEvent, }); setViewConfig(currCfg); diff --git a/web/packages/teleport/src/services/userEvent/types.ts b/web/packages/teleport/src/services/userEvent/types.ts index 3521b368399ba..313b4d06e0f1d 100644 --- a/web/packages/teleport/src/services/userEvent/types.ts +++ b/web/packages/teleport/src/services/userEvent/types.ts @@ -74,6 +74,28 @@ export enum DiscoverEventResource { DatabaseMysqlGcp = 'DISCOVER_RESOURCE_DATABASE_MYSQL_GCP', DatabaseSqlServerGcp = 'DISCOVER_RESOURCE_DATABASE_SQLSERVER_GCP', + DatabasePostgresRedshiftServerless = 'DISCOVER_RESOURCE_DATABASE_POSTGRES_REDSHIFT_SERVERLESS', + DatabasePostgresAzure = 'DISCOVER_RESOURCE_DATABASE_POSTGRES_AZURE', + DatabaseDynamoDb = 'DISCOVER_RESOURCE_DATABASE_DYNAMODB', + DatabaseCassandraKeyspaces = 'DISCOVER_RESOURCE_DATABASE_CASSANDRA_KEYSPACES', + DatabaseCassandraSelfHosted = 'DISCOVER_RESOURCE_DATABASE_CASSANDRA_SELF_HOSTED', + DatabaseElasticSearchSelfHosted = 'DISCOVER_RESOURCE_DATABASE_ELASTICSEARCH_SELF_HOSTED', + DatabaseRedisElasticache = 'DISCOVER_RESOURCE_DATABASE_REDIS_ELASTICACHE', + DatabaseRedisMemoryDb = 'DISCOVER_RESOURCE_DATABASE_REDIS_MEMORYDB', + DatabaseRedisAzureCache = 'DISCOVER_RESOURCE_DATABASE_REDIS_AZURE_CACHE', + DatabaseRedisClusterSelfHosted = 'DISCOVER_RESOURCE_DATABASE_REDIS_CLUSTER_SELF_HOSTED', + + DatabaseMysqlAzure = 'DISCOVER_RESOURCE_DATABASE_MYSQL_AZURE', + DatabaseSqlServerAzure = 'DISCOVER_RESOURCE_DATABASE_SQLSERVER_AZURE', + DatabaseSqlServerMicrosoft = 'DISCOVER_RESOURCE_DATABASE_SQLSERVER_MICROSOFT', + DatabaseCockroachDbSelfHosted = 'DISCOVER_RESOURCE_DATABASE_COCKROACHDB_SELF_HOSTED', + DatabaseMongodbAtlas = 'DISCOVER_RESOURCE_DATABASE_MONGODB_ATLAS', + DatabaseSnowflake = 'DISCOVER_RESOURCE_DATABASE_SNOWFLAKE', + + DatabaseDocRdsProxy = 'DISCOVER_RESOURCE_DOC_DATABASE_RDS_PROXY', + DatabaseDocHighAvailability = 'DISCOVER_RESOURCE_DOC_DATABASE_HIGH_AVAILABILITY', + DatabaseDocDynamicRegistration = 'DISCOVER_RESOURCE_DOC_DATABASE_DYNAMIC_REGISTRATION', + ApplicationHttp = 'DISCOVER_RESOURCE_APPLICATION_HTTP', ApplicationTcp = 'DISCOVER_RESOURCE_APPLICATION_TCP', WindowsDesktop = 'DISCOVER_RESOURCE_WINDOWS_DESKTOP', From d7d3857c0d60f0199ee2bb7ae63d1a6159103e9e Mon Sep 17 00:00:00 2001 From: Michael Date: Tue, 4 Apr 2023 17:10:34 -0500 Subject: [PATCH 78/79] Remove deprecated web api routes (#24050) --- lib/web/apiserver.go | 6 ------ 1 file changed, 6 deletions(-) diff --git a/lib/web/apiserver.go b/lib/web/apiserver.go index 3dcdb0d26fde2..20c4517a2f7c2 100644 --- a/lib/web/apiserver.go +++ b/lib/web/apiserver.go @@ -545,12 +545,6 @@ func (h *Handler) bindDefaultEndpoints() { // App sessions h.POST("/webapi/sessions/app", h.WithAuth(h.createAppSession)) - // DELETE IN 13, deprecated/unused web sessions routes (avatus) - // https://github.com/gravitational/teleport/pull/19892 - h.POST("/webapi/sessions", httplib.WithCSRFProtection(h.WithLimiterHandlerFunc(h.createWebSession))) - h.DELETE("/webapi/sessions", h.WithAuth(h.deleteWebSession)) - h.POST("/webapi/sessions/renew", h.WithAuth(h.renewWebSession)) - // Web sessions h.POST("/webapi/sessions/web", httplib.WithCSRFProtection(h.WithLimiterHandlerFunc(h.createWebSession))) h.DELETE("/webapi/sessions/web", h.WithAuth(h.deleteWebSession)) From a3cc31b79c675e3b084913332d57dedf9b32625d Mon Sep 17 00:00:00 2001 From: Jakub Nyckowski Date: Thu, 6 Apr 2023 16:12:32 -0400 Subject: [PATCH 79/79] Fix compilation errors after branch update --- lib/client/client.go | 35 ----------------------------------- lib/web/command.go | 24 +++++++++++++----------- 2 files changed, 13 insertions(+), 46 deletions(-) diff --git a/lib/client/client.go b/lib/client/client.go index 2f473034a95dc..cc1e6941858ae 100644 --- a/lib/client/client.go +++ b/lib/client/client.go @@ -1581,41 +1581,6 @@ func NewNodeClient(ctx context.Context, sshConfig *ssh.ClientConfig, conn net.Co return nc, nil } -func (c *NodeClient) RunCommand(ctx context.Context, cmd []string, sessToJoin types.SessionTracker) error { - ctx, span := c.Tracer.Start( - ctx, - "nodeClient/RunCommand", - oteltrace.WithSpanKind(oteltrace.SpanKindClient), - ) - defer span.End() - - env := c.TC.newSessionEnv() - - nodeSession, err := newSession(ctx, c, sessToJoin, env, c.TC.Stdin, c.TC.Stdout, c.TC.Stderr, c.TC.EnableEscapeSequences) - if err != nil { - return trace.Wrap(err) - } - - if err = nodeSession.runCommand(ctx, types.SessionPeerMode, cmd, c.TC.OnShellCreated, false); err != nil { - switch e := trace.Unwrap(err).(type) { - case *ssh.ExitError: - c.TC.ExitStatus = e.ExitStatus() - case *ssh.ExitMissingError: - c.TC.ExitStatus = 1 - } - - return trace.Wrap(err) - } - - if nodeSession.ExitMsg == "" { - fmt.Fprintln(c.TC.Stderr, "the connection was closed on the remote side at ", time.Now().Format(time.RFC822)) - } else { - fmt.Fprintln(c.TC.Stderr, nodeSession.ExitMsg) - } - - return nil -} - // RunInteractiveShell creates an interactive shell on the node and copies stdin/stdout/stderr // to and from the node and local shell. This will block until the interactive shell on the node // is terminated. diff --git a/lib/web/command.go b/lib/web/command.go index f84cf8bc7931e..658df118eaa00 100644 --- a/lib/web/command.go +++ b/lib/web/command.go @@ -433,16 +433,15 @@ func (t *commandHandler) streamOutput(ctx context.Context, ws WSConn, tc *client getAgent := func() (teleagent.Agent, error) { return teleagent.NopCloser(tc.LocalAgent()), nil } - signerCreator := func() (ssh.Signer, error) { - cert, err := t.ctx.GetSSHCertificate() - if err != nil { - return nil, trace.Wrap(err) - } - validBefore := time.Unix(int64(cert.ValidBefore), 0) - ttl := time.Until(validBefore) - return agentless.CreateAuthSigner(ctx, t.ctx.GetUser(), tc.SiteName, ttl, t.router) + cert, err := t.ctx.GetSSHCertificate() + if err != nil { + t.log.WithError(err).Warn("Unable to stream terminal - failed to get certificate") + t.writeError(err) + return } - conn, _, err := t.router.DialHost(ctx, ws.RemoteAddr(), ws.LocalAddr(), t.sessionData.ServerID, strconv.Itoa(t.sessionData.ServerHostPort), tc.SiteName, accessChecker, getAgent, signerCreator) + + signer := agentless.SignerFromSSHCertificate(cert, t.authProvider) + conn, _, err := t.router.DialHost(ctx, ws.RemoteAddr(), ws.LocalAddr(), t.sessionData.ServerID, strconv.Itoa(t.sessionData.ServerHostPort), tc.SiteName, accessChecker, getAgent, signer) if err != nil { t.log.WithError(err).Warn("Unable to stream terminal - failed to dial host.") @@ -472,7 +471,10 @@ func (t *commandHandler) streamOutput(ctx context.Context, ws WSConn, tc *client HostKeyCallback: tc.HostKeyCallback, } - nc, connectErr := client.NewNodeClient(ctx, sshConfig, conn, net.JoinHostPort(t.sessionData.ServerID, strconv.Itoa(t.sessionData.ServerHostPort)), tc, modules.GetModules().IsBoringBinary()) + nc, connectErr := client.NewNodeClient(ctx, sshConfig, conn, + net.JoinHostPort(t.sessionData.ServerID, strconv.Itoa(t.sessionData.ServerHostPort)), + t.sessionData.ServerHostname, + tc, modules.GetModules().IsBoringBinary()) switch { case connectErr != nil && !trace.IsAccessDenied(connectErr): // catastrophic error, return it t.log.WithError(connectErr).Warn("Unable to stream terminal - failed to create node client") @@ -509,7 +511,7 @@ func (t *commandHandler) streamOutput(ctx context.Context, ws WSConn, tc *client // Establish SSH connection to the server. This function will block until // either an error occurs or it completes successfully. - if err = nc.RunCommand(ctx, t.interactiveCommand, nil); err != nil { + if err = nc.RunCommand(ctx, t.interactiveCommand); err != nil { t.log.WithError(err).Warn("Unable to stream terminal - failure running interactive shell") t.writeError(err) return