From f2b66f965df6e3c72672f2f2b3f53fe71d6c1f93 Mon Sep 17 00:00:00 2001 From: hubmat00 <54903550+hubmat00@users.noreply.github.com> Date: Fri, 13 Oct 2023 13:37:53 +0200 Subject: [PATCH] feat: add the ability to exclude files when using the git file generator (#13690) Signed-off-by: hubmat00 <54903550+hubmat00@users.noreply.github.com> --- .../excludes/git-files-exclude-example.yaml | 28 + .../git-generator-files-fasttemplate.yaml | 26 + .../generator_spec_processor_test.go | 14 +- applicationset/generators/git.go | 53 +- applicationset/generators/git_test.go | 277 ++- applicationset/generators/matrix_test.go | 14 +- assets/swagger.json | 34 +- cmd/argocd/commands/applicationset_test.go | 6 +- .../applicationset/Generators-Git.md | 40 + manifests/core-install.yaml | 6 + manifests/crds/applicationset-crd.yaml | 6 + manifests/ha/install.yaml | 6 + manifests/install.yaml | 6 + .../v1alpha1/applicationset_types.go | 20 +- pkg/apis/application/v1alpha1/generated.pb.go | 2150 ++++++++--------- pkg/apis/application/v1alpha1/generated.proto | 20 +- .../application/v1alpha1/openapi_generated.go | 81 +- .../v1alpha1/zz_generated.deepcopy.go | 52 +- test/e2e/applicationset_test.go | 16 +- test/e2e/matrix_e2e_test.go | 12 +- test/e2e/merge_e2e_test.go | 8 +- 21 files changed, 1513 insertions(+), 1362 deletions(-) create mode 100644 applicationset/examples/git-generator-files-discovery/excludes/git-files-exclude-example.yaml create mode 100644 applicationset/examples/git-generator-files-discovery/excludes/git-generator-files-fasttemplate.yaml diff --git a/applicationset/examples/git-generator-files-discovery/excludes/git-files-exclude-example.yaml b/applicationset/examples/git-generator-files-discovery/excludes/git-files-exclude-example.yaml new file mode 100644 index 0000000000000..c26b25fe9c0df --- /dev/null +++ b/applicationset/examples/git-generator-files-discovery/excludes/git-files-exclude-example.yaml @@ -0,0 +1,28 @@ +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet +metadata: + name: guestbook +spec: + goTemplate: true + goTemplateOptions: ["missingkey=error"] + generators: + - git: + repoURL: https://github.com/argoproj/argo-cd.git + revision: HEAD + files: + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json" + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/*/dev/config.json" + exclude: true + template: + metadata: + name: '{{.cluster.name}}-guestbook' + spec: + project: default + source: + repoURL: https://github.com/argoproj/argo-cd.git + targetRevision: HEAD + path: "applicationset/examples/git-generator-files-discovery/apps/guestbook" + destination: + server: https://kubernetes.default.svc + #server: '{{.cluster.address}}' + namespace: guestbook diff --git a/applicationset/examples/git-generator-files-discovery/excludes/git-generator-files-fasttemplate.yaml b/applicationset/examples/git-generator-files-discovery/excludes/git-generator-files-fasttemplate.yaml new file mode 100644 index 0000000000000..d66d8f2ddaca1 --- /dev/null +++ b/applicationset/examples/git-generator-files-discovery/excludes/git-generator-files-fasttemplate.yaml @@ -0,0 +1,26 @@ +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet +metadata: + name: guestbook +spec: + generators: + - git: + repoURL: https://github.com/argoproj/argo-cd.git + revision: HEAD + files: + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json" + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/*/dev/config.json" + exclude: true + template: + metadata: + name: '{{cluster.name}}-guestbook' + spec: + project: default + source: + repoURL: https://github.com/argoproj/argo-cd.git + targetRevision: HEAD + path: "applicationset/examples/git-generator-files-discovery/apps/guestbook" + destination: + server: https://kubernetes.default.svc + #server: '{{cluster.address}}' + namespace: guestbook diff --git a/applicationset/generators/generator_spec_processor_test.go b/applicationset/generators/generator_spec_processor_test.go index b5838e7af7cbe..218bdb3008587 100644 --- a/applicationset/generators/generator_spec_processor_test.go +++ b/applicationset/generators/generator_spec_processor_test.go @@ -423,16 +423,16 @@ func TestInterpolateGenerator(t *testing.T) { assert.Equal(t, "p1", interpolatedGenerator.Clusters.Selector.MatchLabels["path-zero"]) assert.Equal(t, "p1/p2/app3", interpolatedGenerator.Clusters.Selector.MatchLabels["path-full"]) - fileNamePath := argov1alpha1.GitFileGeneratorItem{ + fileNamePath := argov1alpha1.GitGeneratorItem{ Path: "{{name}}", } - fileServerPath := argov1alpha1.GitFileGeneratorItem{ + fileServerPath := argov1alpha1.GitGeneratorItem{ Path: "{{server}}", } requestedGenerator = &argov1alpha1.ApplicationSetGenerator{ Git: &argov1alpha1.GitGenerator{ - Files: append([]argov1alpha1.GitFileGeneratorItem{}, fileNamePath, fileServerPath), + Files: append([]argov1alpha1.GitGeneratorItem{}, fileNamePath, fileServerPath), Template: argov1alpha1.ApplicationSetTemplate{}, }, } @@ -477,16 +477,16 @@ func TestInterpolateGenerator_go(t *testing.T) { assert.Equal(t, "p1", interpolatedGenerator.Clusters.Selector.MatchLabels["path-zero"]) assert.Equal(t, "p1/p2/app3", interpolatedGenerator.Clusters.Selector.MatchLabels["path-full"]) - fileNamePath := argov1alpha1.GitFileGeneratorItem{ + fileNamePath := argov1alpha1.GitGeneratorItem{ Path: "{{.name}}", } - fileServerPath := argov1alpha1.GitFileGeneratorItem{ + fileServerPath := argov1alpha1.GitGeneratorItem{ Path: "{{.server}}", } requestedGenerator = &argov1alpha1.ApplicationSetGenerator{ Git: &argov1alpha1.GitGenerator{ - Files: append([]argov1alpha1.GitFileGeneratorItem{}, fileNamePath, fileServerPath), + Files: append([]argov1alpha1.GitGeneratorItem{}, fileNamePath, fileServerPath), Template: argov1alpha1.ApplicationSetTemplate{}, }, } @@ -530,7 +530,7 @@ func TestInterpolateGeneratorError(t *testing.T) { {name: "Error templating", args: args{ requestedGenerator: &argov1alpha1.ApplicationSetGenerator{Git: &argov1alpha1.GitGenerator{ RepoURL: "foo", - Files: []argov1alpha1.GitFileGeneratorItem{{Path: "bar/"}}, + Files: []argov1alpha1.GitGeneratorItem{{Path: "bar/"}}, Revision: "main", Values: map[string]string{ "git_test": "{{ toPrettyJson . }}", diff --git a/applicationset/generators/git.go b/applicationset/generators/git.go index 07c1b11849cd0..a116555f1e803 100644 --- a/applicationset/generators/git.go +++ b/applicationset/generators/git.go @@ -3,6 +3,7 @@ package generators import ( "context" "fmt" + "github.com/bmatcuk/doublestar/v4" "path" "sort" "strconv" @@ -100,15 +101,17 @@ func (g *GitGenerator) generateParamsForGitDirectories(appSetGenerator *argoproj func (g *GitGenerator) generateParamsForGitFiles(appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) { - // Get all files that match the requested path string, removing duplicates + // Get all files that match the requested path string but are not configured as excludes, removing duplicates allFiles := make(map[string][]byte) for _, requestedPath := range appSetGenerator.Git.Files { - files, err := g.repos.GetFiles(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, requestedPath.Path) - if err != nil { - return nil, err - } - for filePath, content := range files { - allFiles[filePath] = content + if !requestedPath.Exclude { + files, err := g.repos.GetFiles(context.TODO(), appSetGenerator.Git.RepoURL, appSetGenerator.Git.Revision, requestedPath.Path) + if err != nil { + return nil, err + } + for filePath, content := range files { + allFiles[filePath] = content + } } } @@ -120,9 +123,11 @@ func (g *GitGenerator) generateParamsForGitFiles(appSetGenerator *argoprojiov1al } sort.Strings(allPaths) + filteredPaths := g.filterFilePaths(appSetGenerator.Git.Files, allPaths) + // Generate params from each path, and return res := []map[string]interface{}{} - for _, path := range allPaths { + for _, path := range filteredPaths { // A JSON / YAML file path can contain multiple sets of parameters (ie it is an array) paramsArray, err := g.generateParamsFromGitFile(path, allFiles[path], appSetGenerator.Git.Values, useGoTemplate, goTemplateOptions, appSetGenerator.Git.PathParamPrefix) @@ -212,7 +217,7 @@ func (g *GitGenerator) generateParamsFromGitFile(filePath string, fileContent [] return res, nil } -func (g *GitGenerator) filterApps(Directories []argoprojiov1alpha1.GitDirectoryGeneratorItem, allPaths []string) []string { +func (g *GitGenerator) filterApps(Directories []argoprojiov1alpha1.GitGeneratorItem, allPaths []string) []string { res := []string{} for _, appPath := range allPaths { appInclude := false @@ -240,6 +245,36 @@ func (g *GitGenerator) filterApps(Directories []argoprojiov1alpha1.GitDirectoryG return res } +func (g *GitGenerator) filterFilePaths(Files []argoprojiov1alpha1.GitGeneratorItem, allPaths []string) []string { + res := []string{} + for _, itemPath := range allPaths { + include := false + exclude := false + for _, requestedPath := range Files { + // exec doublestar.Match only on excluded requestedPaths to stay backwards-compatible with the default + // greedy git file generator globbing + if requestedPath.Exclude { + match, err := doublestar.Match(requestedPath.Path, itemPath) + if err != nil { + log.WithError(err).WithField("requestedPath", requestedPath). + WithField("appPath", itemPath).Error("error while matching appPath to requestedPath") + continue + } + if match { + exclude = true + } + } else { + include = true + } + } + // Whenever there is a path with exclude: true it wont be included, even if it is included in a different path pattern + if include && !exclude { + res = append(res, itemPath) + } + } + return res +} + func (g *GitGenerator) generateParamsFromApps(requestedApps []string, appSetGenerator *argoprojiov1alpha1.ApplicationSetGenerator, useGoTemplate bool, goTemplateOptions []string) ([]map[string]interface{}, error) { res := make([]map[string]interface{}, len(requestedApps)) for i, a := range requestedApps { diff --git a/applicationset/generators/git_test.go b/applicationset/generators/git_test.go index f0d1d29bca6ec..b47498024f3ad 100644 --- a/applicationset/generators/git_test.go +++ b/applicationset/generators/git_test.go @@ -177,7 +177,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { cases := []struct { name string - directories []argoprojiov1alpha1.GitDirectoryGeneratorItem + directories []argoprojiov1alpha1.GitGeneratorItem pathParamPrefix string repoApps []string repoError error @@ -187,7 +187,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }{ { name: "happy flow - created apps", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{ "app1", "app2", @@ -204,7 +204,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "It prefixes path parameters with PathParamPrefix", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, pathParamPrefix: "myRepo", repoApps: []string{ "app1", @@ -222,7 +222,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "It filters application according to the paths", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "p1/*"}, {Path: "p1/*/*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "p1/*"}, {Path: "p1/*/*"}}, repoApps: []string{ "app1", "p1/app2", @@ -238,7 +238,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "It filters application according to the paths with Exclude", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "p1/*", Exclude: true}, {Path: "*"}, {Path: "*/*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "p1/*", Exclude: true}, {Path: "*"}, {Path: "*/*"}}, repoApps: []string{ "app1", "app2", @@ -256,7 +256,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "Expecting same exclude behavior with different order", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}, {Path: "*/*"}, {Path: "p1/*", Exclude: true}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}, {Path: "*/*"}, {Path: "p1/*", Exclude: true}}, repoApps: []string{ "app1", "app2", @@ -274,7 +274,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "Value variable interpolation", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}, {Path: "*/*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}, {Path: "*/*"}}, repoApps: []string{ "app1", "p1/app2", @@ -293,7 +293,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "handles empty response from repo server", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{}, repoError: nil, expected: []map[string]interface{}{}, @@ -301,7 +301,7 @@ func TestGitGenerateParamsFromDirectories(t *testing.T) { }, { name: "handles error from repo server", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{}, repoError: fmt.Errorf("error"), expected: []map[string]interface{}{}, @@ -355,7 +355,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { cases := []struct { name string - directories []argoprojiov1alpha1.GitDirectoryGeneratorItem + directories []argoprojiov1alpha1.GitGeneratorItem pathParamPrefix string repoApps []string repoError error @@ -364,7 +364,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }{ { name: "happy flow - created apps", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{ "app1", "app2", @@ -408,7 +408,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "It prefixes path parameters with PathParamPrefix", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, pathParamPrefix: "myRepo", repoApps: []string{ "app1", @@ -459,7 +459,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "It filters application according to the paths", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "p1/*"}, {Path: "p1/*/*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "p1/*"}, {Path: "p1/*/*"}}, repoApps: []string{ "app1", "p1/app2", @@ -496,7 +496,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "It filters application according to the paths with Exclude", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "p1/*", Exclude: true}, {Path: "*"}, {Path: "*/*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "p1/*", Exclude: true}, {Path: "*"}, {Path: "*/*"}}, repoApps: []string{ "app1", "app2", @@ -542,7 +542,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "Expecting same exclude behavior with different order", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}, {Path: "*/*"}, {Path: "p1/*", Exclude: true}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}, {Path: "*/*"}, {Path: "p1/*", Exclude: true}}, repoApps: []string{ "app1", "app2", @@ -589,7 +589,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "handles empty response from repo server", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{}, repoError: nil, expected: []map[string]interface{}{}, @@ -597,7 +597,7 @@ func TestGitGenerateParamsFromDirectoriesGoTemplate(t *testing.T) { }, { name: "handles error from repo server", - directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, repoApps: []string{}, repoError: fmt.Errorf("error"), expected: []map[string]interface{}{}, @@ -653,7 +653,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { cases := []struct { name string // files is the list of paths/globs to match - files []argoprojiov1alpha1.GitFileGeneratorItem + files []argoprojiov1alpha1.GitGeneratorItem // repoFileContents maps repo path to the literal contents of that path repoFileContents map[string][]byte // if repoPathsError is non-nil, the call to GetPaths(...) will return this error value @@ -664,7 +664,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }{ { name: "happy flow: create params from git files", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(`{ "cluster": { @@ -724,7 +724,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }, { name: "Value variable interpolation", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(`{ "cluster": { @@ -792,7 +792,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }, { name: "handles error during getting repo paths", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{}, repoPathsError: fmt.Errorf("paths error"), expected: []map[string]interface{}{}, @@ -800,7 +800,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }, { name: "test invalid JSON file returns error", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(`invalid json file`), }, @@ -810,7 +810,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }, { name: "test JSON array", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(` [ @@ -865,7 +865,7 @@ func TestGitGenerateParamsFromFiles(t *testing.T) { }, { name: "Test YAML flow", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.yaml"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.yaml"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.yaml": []byte(` cluster: @@ -919,7 +919,7 @@ cluster: }, { name: "test YAML array", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.yaml"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.yaml"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.yaml": []byte(` - cluster: @@ -963,6 +963,175 @@ cluster: }, expectedError: nil, }, + { + name: "filter files according to file-path with exclude", + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}, {Path: "p1/**/config.json", Exclude: true}}, + repoFileContents: map[string][]byte{ + "app1/config.json": []byte(`{}`), + "app2/config.json": []byte(`{}`), + "p1/app2/config.json": []byte(`{}`), + "p1/app3/config.json": []byte(`{}`), + "p2/app3/config.json": []byte(`{}`), + }, + repoPathsError: nil, + expected: []map[string]interface{}{ + { + "path": "app1", + "path.basename": "app1", + "path.basenameNormalized": "app1", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app1", + }, + { + "path": "app2", + "path.basename": "app2", + "path.basenameNormalized": "app2", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app2", + }, + { + "path": "p2/app3", + "path.basename": "app3", + "path.basenameNormalized": "app3", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "p2", + "path[1]": "app3", + }, + }, + expectedError: nil, + }, + { + name: "filter files according to a directory-Path with exclude", + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}, {Path: "p1/**", Exclude: true}}, + repoFileContents: map[string][]byte{ + "app1/config.json": []byte(`{}`), + "app2/config.json": []byte(`{}`), + "p1/app2/config.json": []byte(`{}`), + "p1/app3/config.json": []byte(`{}`), + "p2/app3/config.json": []byte(`{}`), + }, + repoPathsError: nil, + expected: []map[string]interface{}{ + { + "path": "app1", + "path.basename": "app1", + "path.basenameNormalized": "app1", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app1", + }, + { + "path": "app2", + "path.basename": "app2", + "path.basenameNormalized": "app2", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app2", + }, + { + "path": "p2/app3", + "path.basename": "app3", + "path.basenameNormalized": "app3", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "p2", + "path[1]": "app3", + }, + }, + expectedError: nil, + }, + { + name: "filter files according to multiple file-paths with exclude", + files: []argoprojiov1alpha1.GitGeneratorItem{ + {Path: "**/config.json"}, + {Path: "p1/app2/config.json", Exclude: true}, + {Path: "p1/app3/config.json", Exclude: true}, + }, + repoFileContents: map[string][]byte{ + "app1/config.json": []byte(`{}`), + "app2/config.json": []byte(`{}`), + "p1/app2/config.json": []byte(`{}`), + "p1/app3/config.json": []byte(`{}`), + "p2/app3/config.json": []byte(`{}`), + }, + repoPathsError: nil, + expected: []map[string]interface{}{ + { + "path": "app1", + "path.basename": "app1", + "path.basenameNormalized": "app1", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app1", + }, + { + "path": "app2", + "path.basename": "app2", + "path.basenameNormalized": "app2", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "app2", + }, + { + "path": "p2/app3", + "path.basename": "app3", + "path.basenameNormalized": "app3", + "path.filename": "config.json", + "path.filenameNormalized": "config.json", + "path[0]": "p2", + "path[1]": "app3", + }, + }, + expectedError: nil, + }, + { + name: "test compatibility with greedy git file generator globbing and exclude filter", + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "some-path/*.yaml"}}, + repoFileContents: map[string][]byte{ + "some-path/values.yaml": []byte(` +cluster: + owner: john.doe@example.com + name: production + address: https://kubernetes.default.svc +`), + "some-path/staging/values.yaml": []byte(` +cluster: + owner: foo.bar@example.com + name: staging + address: https://kubernetes.default.svc +`), + }, + repoPathsError: nil, + expected: []map[string]interface{}{ + { + "cluster.owner": "john.doe@example.com", + "cluster.name": "production", + "cluster.address": "https://kubernetes.default.svc", + "path": "some-path", + "path.basename": "some-path", + "path[0]": "some-path", + "path.basenameNormalized": "some-path", + "path.filename": "values.yaml", + "path.filenameNormalized": "values.yaml", + }, + { + "cluster.owner": "foo.bar@example.com", + "cluster.name": "staging", + "cluster.address": "https://kubernetes.default.svc", + "path": "some-path/staging", + "path.basename": "staging", + "path[0]": "some-path", + "path[1]": "staging", + "path.basenameNormalized": "staging", + "path.filename": "values.yaml", + "path.filenameNormalized": "values.yaml", + }, + }, + expectedError: nil, + }, } for _, testCase := range cases { @@ -1012,7 +1181,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { cases := []struct { name string // files is the list of paths/globs to match - files []argoprojiov1alpha1.GitFileGeneratorItem + files []argoprojiov1alpha1.GitGeneratorItem // repoFileContents maps repo path to the literal contents of that path repoFileContents map[string][]byte // if repoPathsError is non-nil, the call to GetPaths(...) will return this error value @@ -1022,7 +1191,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { }{ { name: "happy flow: create params from git files", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(`{ "cluster": { @@ -1098,7 +1267,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { }, { name: "handles error during getting repo paths", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{}, repoPathsError: fmt.Errorf("paths error"), expected: []map[string]interface{}{}, @@ -1106,7 +1275,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { }, { name: "test invalid JSON file returns error", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(`invalid json file`), }, @@ -1116,7 +1285,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { }, { name: "test JSON array", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.json"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.json": []byte(` [ @@ -1185,7 +1354,7 @@ func TestGitGenerateParamsFromFilesGoTemplate(t *testing.T) { }, { name: "Test YAML flow", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.yaml"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.yaml"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.yaml": []byte(` cluster: @@ -1255,7 +1424,7 @@ cluster: }, { name: "test YAML array", - files: []argoprojiov1alpha1.GitFileGeneratorItem{{Path: "**/config.yaml"}}, + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.yaml"}}, repoFileContents: map[string][]byte{ "cluster-config/production/config.yaml": []byte(` - cluster: @@ -1313,6 +1482,50 @@ cluster: }, expectedError: nil, }, + { + name: "filter files according to file-path with exclude", + files: []argoprojiov1alpha1.GitGeneratorItem{{Path: "**/config.json"}, {Path: "cluster-config/dev/config.json", Exclude: true}}, + repoFileContents: map[string][]byte{ + "cluster-config/dev/config.json": []byte(`{ + "cluster": { + "owner": "john.doe@example.com", + "name": "dev", + "address": "https://kubernetes.default.svc" + } +} +`), + "cluster-config/production/config.json": []byte(`{ + "cluster": { + "owner": "john.doe@example.com", + "name": "production", + "address": "https://kubernetes.default.svc" + } +} +`), + }, + repoPathsError: nil, + expected: []map[string]interface{}{ + { + "cluster": map[string]interface{}{ + "owner": "john.doe@example.com", + "name": "production", + "address": "https://kubernetes.default.svc", + }, + "path": map[string]interface{}{ + "path": "cluster-config/production", + "basename": "production", + "filename": "config.json", + "basenameNormalized": "production", + "filenameNormalized": "config.json", + "segments": []string{ + "cluster-config", + "production", + }, + }, + }, + }, + expectedError: nil, + }, } for _, testCase := range cases { diff --git a/applicationset/generators/matrix_test.go b/applicationset/generators/matrix_test.go index 35748b98bcf19..9eb71a2f5cfb4 100644 --- a/applicationset/generators/matrix_test.go +++ b/applicationset/generators/matrix_test.go @@ -27,7 +27,7 @@ func TestMatrixGenerate(t *testing.T) { gitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + Directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, } listGenerator := &argoprojiov1alpha1.ListGenerator{ @@ -200,7 +200,7 @@ func TestMatrixGenerateGoTemplate(t *testing.T) { gitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + Directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, } listGenerator := &argoprojiov1alpha1.ListGenerator{ @@ -417,7 +417,7 @@ func TestMatrixGetRequeueAfter(t *testing.T) { gitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Directories: []argoprojiov1alpha1.GitDirectoryGeneratorItem{{Path: "*"}}, + Directories: []argoprojiov1alpha1.GitGeneratorItem{{Path: "*"}}, } listGenerator := &argoprojiov1alpha1.ListGenerator{ @@ -558,7 +558,7 @@ func TestInterpolatedMatrixGenerate(t *testing.T) { interpolatedGitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Files: []argoprojiov1alpha1.GitFileGeneratorItem{ + Files: []argoprojiov1alpha1.GitGeneratorItem{ {Path: "examples/git-generator-files-discovery/cluster-config/dev/config.json"}, {Path: "examples/git-generator-files-discovery/cluster-config/prod/config.json"}, }, @@ -707,7 +707,7 @@ func TestInterpolatedMatrixGenerateGoTemplate(t *testing.T) { interpolatedGitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Files: []argoprojiov1alpha1.GitFileGeneratorItem{ + Files: []argoprojiov1alpha1.GitGeneratorItem{ {Path: "examples/git-generator-files-discovery/cluster-config/dev/config.json"}, {Path: "examples/git-generator-files-discovery/cluster-config/prod/config.json"}, }, @@ -897,7 +897,7 @@ func TestMatrixGenerateListElementsYaml(t *testing.T) { gitGenerator := &argoprojiov1alpha1.GitGenerator{ RepoURL: "RepoURL", Revision: "Revision", - Files: []argoprojiov1alpha1.GitFileGeneratorItem{ + Files: []argoprojiov1alpha1.GitGeneratorItem{ {Path: "config.yaml"}, }, } @@ -1102,7 +1102,7 @@ func TestGitGenerator_GenerateParams_list_x_git_matrix_generator(t *testing.T) { gitGeneratorSpec := &argoprojiov1alpha1.GitGenerator{ RepoURL: "https://git.example.com", - Files: []argoprojiov1alpha1.GitFileGeneratorItem{ + Files: []argoprojiov1alpha1.GitGeneratorItem{ {Path: "some/path.json"}, }, } diff --git a/assets/swagger.json b/assets/swagger.json index ae4688966dd0c..ac3af2d0fb255 100644 --- a/assets/swagger.json +++ b/assets/swagger.json @@ -7032,38 +7032,19 @@ } } }, - "v1alpha1GitDirectoryGeneratorItem": { - "type": "object", - "properties": { - "exclude": { - "type": "boolean" - }, - "path": { - "type": "string" - } - } - }, - "v1alpha1GitFileGeneratorItem": { - "type": "object", - "properties": { - "path": { - "type": "string" - } - } - }, "v1alpha1GitGenerator": { "type": "object", "properties": { "directories": { "type": "array", "items": { - "$ref": "#/definitions/v1alpha1GitDirectoryGeneratorItem" + "$ref": "#/definitions/v1alpha1GitGeneratorItem" } }, "files": { "type": "array", "items": { - "$ref": "#/definitions/v1alpha1GitFileGeneratorItem" + "$ref": "#/definitions/v1alpha1GitGeneratorItem" } }, "pathParamPrefix": { @@ -7091,6 +7072,17 @@ } } }, + "v1alpha1GitGeneratorItem": { + "type": "object", + "properties": { + "exclude": { + "type": "boolean" + }, + "path": { + "type": "string" + } + } + }, "v1alpha1GnuPGPublicKey": { "type": "object", "title": "GnuPGPublicKey is a representation of a GnuPG public key", diff --git a/cmd/argocd/commands/applicationset_test.go b/cmd/argocd/commands/applicationset_test.go index 18e5f85feebbc..0349150b931bd 100644 --- a/cmd/argocd/commands/applicationset_test.go +++ b/cmd/argocd/commands/applicationset_test.go @@ -44,7 +44,7 @@ func TestPrintApplicationSetTable(t *testing.T) { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argo-cd.git", Revision: "head", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "applicationset/examples/git-generator-directory/cluster-addons/*", }, @@ -79,7 +79,7 @@ func TestPrintApplicationSetTable(t *testing.T) { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argo-cd.git", Revision: "head", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "applicationset/examples/git-generator-directory/cluster-addons/*", }, @@ -122,7 +122,7 @@ func TestPrintAppSetSummaryTable(t *testing.T) { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argo-cd.git", Revision: "head", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "applicationset/examples/git-generator-directory/cluster-addons/*", }, diff --git a/docs/operator-manual/applicationset/Generators-Git.md b/docs/operator-manual/applicationset/Generators-Git.md index 1dcd85ea24b2a..c22749bfdfccb 100644 --- a/docs/operator-manual/applicationset/Generators-Git.md +++ b/docs/operator-manual/applicationset/Generators-Git.md @@ -337,6 +337,46 @@ The filename can always be accessed using `{{path.filename}}`. **Note**: The default behavior of the Git file generator is very greedy. Please see [Git File Generator Globbing](./Generators-Git-File-Globbing.md) for more information. +### Exclude files + +The Git file generator also supports an `exclude` option in order to exclude files/folders in the repository from being scanned by the ApplicationSet controller: + +```yaml +apiVersion: argoproj.io/v1alpha1 +kind: ApplicationSet +metadata: + name: guestbook +spec: + goTemplate: true + goTemplateOptions: ["missingkey=error"] + generators: + - git: + repoURL: https://github.com/argoproj/argo-cd.git + revision: HEAD + files: + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/**/config.json" + - path: "applicationset/examples/git-generator-files-discovery/cluster-config/*/dev/config.json" + exclude: true + template: + metadata: + name: '{{.cluster.name}}-guestbook' + spec: + project: default + source: + repoURL: https://github.com/argoproj/argo-cd.git + targetRevision: HEAD + path: "applicationset/examples/git-generator-files-discovery/apps/guestbook" + destination: + server: https://kubernetes.default.svc + #server: '{{.cluster.address}}' + namespace: guestbook +``` +(*The full example can be found [here](https://github.com/argoproj/argo-cd/tree/master/applicationset/examples/git-generator-files-discovery/excludes).*) + +This example excludes the config.json file in the `dev` directory from the list of files scanned for this `ApplicationSet` resource. + +File exclude paths are matched using [doublestar.Match](https://github.com/bmatcuk/doublestar/blob/master/match.go#L8) + ### Pass additional key-value pairs via `values` field You may pass additional, arbitrary string key-value pairs via the `values` field of the git files generator. Values added via the `values` field are added as `values.(field)`. diff --git a/manifests/core-install.yaml b/manifests/core-install.yaml index 8456f5c3ef430..7342c3c62ab94 100644 --- a/manifests/core-install.yaml +++ b/manifests/core-install.yaml @@ -6077,6 +6077,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -8389,6 +8391,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -13352,6 +13356,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: diff --git a/manifests/crds/applicationset-crd.yaml b/manifests/crds/applicationset-crd.yaml index 9348368951811..b67607e4bd0b6 100644 --- a/manifests/crds/applicationset-crd.yaml +++ b/manifests/crds/applicationset-crd.yaml @@ -1213,6 +1213,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -3525,6 +3527,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -8488,6 +8492,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: diff --git a/manifests/ha/install.yaml b/manifests/ha/install.yaml index a2e1e5b91b668..c84661b03ff4a 100644 --- a/manifests/ha/install.yaml +++ b/manifests/ha/install.yaml @@ -6077,6 +6077,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -8389,6 +8391,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -13352,6 +13356,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: diff --git a/manifests/install.yaml b/manifests/install.yaml index 6783484ed0150..897b8f7af7281 100644 --- a/manifests/install.yaml +++ b/manifests/install.yaml @@ -6077,6 +6077,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -8389,6 +8391,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: @@ -13352,6 +13356,8 @@ spec: files: items: properties: + exclude: + type: boolean path: type: string required: diff --git a/pkg/apis/application/v1alpha1/applicationset_types.go b/pkg/apis/application/v1alpha1/applicationset_types.go index 99db8124e51ea..f8a603be8b8c6 100644 --- a/pkg/apis/application/v1alpha1/applicationset_types.go +++ b/pkg/apis/application/v1alpha1/applicationset_types.go @@ -390,27 +390,23 @@ type DuckTypeGenerator struct { } type GitGenerator struct { - RepoURL string `json:"repoURL" protobuf:"bytes,1,name=repoURL"` - Directories []GitDirectoryGeneratorItem `json:"directories,omitempty" protobuf:"bytes,2,name=directories"` - Files []GitFileGeneratorItem `json:"files,omitempty" protobuf:"bytes,3,name=files"` - Revision string `json:"revision" protobuf:"bytes,4,name=revision"` - RequeueAfterSeconds *int64 `json:"requeueAfterSeconds,omitempty" protobuf:"bytes,5,name=requeueAfterSeconds"` - Template ApplicationSetTemplate `json:"template,omitempty" protobuf:"bytes,6,name=template"` - PathParamPrefix string `json:"pathParamPrefix,omitempty" protobuf:"bytes,7,name=pathParamPrefix"` + RepoURL string `json:"repoURL" protobuf:"bytes,1,name=repoURL"` + Directories []GitGeneratorItem `json:"directories,omitempty" protobuf:"bytes,2,name=directories"` + Files []GitGeneratorItem `json:"files,omitempty" protobuf:"bytes,3,name=files"` + Revision string `json:"revision" protobuf:"bytes,4,name=revision"` + RequeueAfterSeconds *int64 `json:"requeueAfterSeconds,omitempty" protobuf:"bytes,5,name=requeueAfterSeconds"` + Template ApplicationSetTemplate `json:"template,omitempty" protobuf:"bytes,6,name=template"` + PathParamPrefix string `json:"pathParamPrefix,omitempty" protobuf:"bytes,7,name=pathParamPrefix"` // Values contains key/value pairs which are passed directly as parameters to the template Values map[string]string `json:"values,omitempty" protobuf:"bytes,8,name=values"` } -type GitDirectoryGeneratorItem struct { +type GitGeneratorItem struct { Path string `json:"path" protobuf:"bytes,1,name=path"` Exclude bool `json:"exclude,omitempty" protobuf:"bytes,2,name=exclude"` } -type GitFileGeneratorItem struct { - Path string `json:"path" protobuf:"bytes,1,name=path"` -} - // SCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos. type SCMProviderGenerator struct { // Which provider to use and config for it. diff --git a/pkg/apis/application/v1alpha1/generated.pb.go b/pkg/apis/application/v1alpha1/generated.pb.go index 91e8f8d42963b..cd1b34d538417 100644 --- a/pkg/apis/application/v1alpha1/generated.pb.go +++ b/pkg/apis/application/v1alpha1/generated.pb.go @@ -1637,15 +1637,15 @@ func (m *ExecProviderConfig) XXX_DiscardUnknown() { var xxx_messageInfo_ExecProviderConfig proto.InternalMessageInfo -func (m *GitDirectoryGeneratorItem) Reset() { *m = GitDirectoryGeneratorItem{} } -func (*GitDirectoryGeneratorItem) ProtoMessage() {} -func (*GitDirectoryGeneratorItem) Descriptor() ([]byte, []int) { +func (m *GitGenerator) Reset() { *m = GitGenerator{} } +func (*GitGenerator) ProtoMessage() {} +func (*GitGenerator) Descriptor() ([]byte, []int) { return fileDescriptor_030104ce3b95bcac, []int{57} } -func (m *GitDirectoryGeneratorItem) XXX_Unmarshal(b []byte) error { +func (m *GitGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *GitDirectoryGeneratorItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GitGenerator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1653,55 +1653,27 @@ func (m *GitDirectoryGeneratorItem) XXX_Marshal(b []byte, deterministic bool) ([ } return b[:n], nil } -func (m *GitDirectoryGeneratorItem) XXX_Merge(src proto.Message) { - xxx_messageInfo_GitDirectoryGeneratorItem.Merge(m, src) +func (m *GitGenerator) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitGenerator.Merge(m, src) } -func (m *GitDirectoryGeneratorItem) XXX_Size() int { +func (m *GitGenerator) XXX_Size() int { return m.Size() } -func (m *GitDirectoryGeneratorItem) XXX_DiscardUnknown() { - xxx_messageInfo_GitDirectoryGeneratorItem.DiscardUnknown(m) +func (m *GitGenerator) XXX_DiscardUnknown() { + xxx_messageInfo_GitGenerator.DiscardUnknown(m) } -var xxx_messageInfo_GitDirectoryGeneratorItem proto.InternalMessageInfo +var xxx_messageInfo_GitGenerator proto.InternalMessageInfo -func (m *GitFileGeneratorItem) Reset() { *m = GitFileGeneratorItem{} } -func (*GitFileGeneratorItem) ProtoMessage() {} -func (*GitFileGeneratorItem) Descriptor() ([]byte, []int) { +func (m *GitGeneratorItem) Reset() { *m = GitGeneratorItem{} } +func (*GitGeneratorItem) ProtoMessage() {} +func (*GitGeneratorItem) Descriptor() ([]byte, []int) { return fileDescriptor_030104ce3b95bcac, []int{58} } -func (m *GitFileGeneratorItem) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *GitFileGeneratorItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil -} -func (m *GitFileGeneratorItem) XXX_Merge(src proto.Message) { - xxx_messageInfo_GitFileGeneratorItem.Merge(m, src) -} -func (m *GitFileGeneratorItem) XXX_Size() int { - return m.Size() -} -func (m *GitFileGeneratorItem) XXX_DiscardUnknown() { - xxx_messageInfo_GitFileGeneratorItem.DiscardUnknown(m) -} - -var xxx_messageInfo_GitFileGeneratorItem proto.InternalMessageInfo - -func (m *GitGenerator) Reset() { *m = GitGenerator{} } -func (*GitGenerator) ProtoMessage() {} -func (*GitGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{59} -} -func (m *GitGenerator) XXX_Unmarshal(b []byte) error { +func (m *GitGeneratorItem) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) } -func (m *GitGenerator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { +func (m *GitGeneratorItem) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { b = b[:cap(b)] n, err := m.MarshalToSizedBuffer(b) if err != nil { @@ -1709,22 +1681,22 @@ func (m *GitGenerator) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) } return b[:n], nil } -func (m *GitGenerator) XXX_Merge(src proto.Message) { - xxx_messageInfo_GitGenerator.Merge(m, src) +func (m *GitGeneratorItem) XXX_Merge(src proto.Message) { + xxx_messageInfo_GitGeneratorItem.Merge(m, src) } -func (m *GitGenerator) XXX_Size() int { +func (m *GitGeneratorItem) XXX_Size() int { return m.Size() } -func (m *GitGenerator) XXX_DiscardUnknown() { - xxx_messageInfo_GitGenerator.DiscardUnknown(m) +func (m *GitGeneratorItem) XXX_DiscardUnknown() { + xxx_messageInfo_GitGeneratorItem.DiscardUnknown(m) } -var xxx_messageInfo_GitGenerator proto.InternalMessageInfo +var xxx_messageInfo_GitGeneratorItem proto.InternalMessageInfo func (m *GnuPGPublicKey) Reset() { *m = GnuPGPublicKey{} } func (*GnuPGPublicKey) ProtoMessage() {} func (*GnuPGPublicKey) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{60} + return fileDescriptor_030104ce3b95bcac, []int{59} } func (m *GnuPGPublicKey) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1752,7 +1724,7 @@ var xxx_messageInfo_GnuPGPublicKey proto.InternalMessageInfo func (m *GnuPGPublicKeyList) Reset() { *m = GnuPGPublicKeyList{} } func (*GnuPGPublicKeyList) ProtoMessage() {} func (*GnuPGPublicKeyList) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{61} + return fileDescriptor_030104ce3b95bcac, []int{60} } func (m *GnuPGPublicKeyList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1780,7 +1752,7 @@ var xxx_messageInfo_GnuPGPublicKeyList proto.InternalMessageInfo func (m *HealthStatus) Reset() { *m = HealthStatus{} } func (*HealthStatus) ProtoMessage() {} func (*HealthStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{62} + return fileDescriptor_030104ce3b95bcac, []int{61} } func (m *HealthStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1808,7 +1780,7 @@ var xxx_messageInfo_HealthStatus proto.InternalMessageInfo func (m *HelmFileParameter) Reset() { *m = HelmFileParameter{} } func (*HelmFileParameter) ProtoMessage() {} func (*HelmFileParameter) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{63} + return fileDescriptor_030104ce3b95bcac, []int{62} } func (m *HelmFileParameter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1836,7 +1808,7 @@ var xxx_messageInfo_HelmFileParameter proto.InternalMessageInfo func (m *HelmOptions) Reset() { *m = HelmOptions{} } func (*HelmOptions) ProtoMessage() {} func (*HelmOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{64} + return fileDescriptor_030104ce3b95bcac, []int{63} } func (m *HelmOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1864,7 +1836,7 @@ var xxx_messageInfo_HelmOptions proto.InternalMessageInfo func (m *HelmParameter) Reset() { *m = HelmParameter{} } func (*HelmParameter) ProtoMessage() {} func (*HelmParameter) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{65} + return fileDescriptor_030104ce3b95bcac, []int{64} } func (m *HelmParameter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1892,7 +1864,7 @@ var xxx_messageInfo_HelmParameter proto.InternalMessageInfo func (m *HostInfo) Reset() { *m = HostInfo{} } func (*HostInfo) ProtoMessage() {} func (*HostInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{66} + return fileDescriptor_030104ce3b95bcac, []int{65} } func (m *HostInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1920,7 +1892,7 @@ var xxx_messageInfo_HostInfo proto.InternalMessageInfo func (m *HostResourceInfo) Reset() { *m = HostResourceInfo{} } func (*HostResourceInfo) ProtoMessage() {} func (*HostResourceInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{67} + return fileDescriptor_030104ce3b95bcac, []int{66} } func (m *HostResourceInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1948,7 +1920,7 @@ var xxx_messageInfo_HostResourceInfo proto.InternalMessageInfo func (m *Info) Reset() { *m = Info{} } func (*Info) ProtoMessage() {} func (*Info) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{68} + return fileDescriptor_030104ce3b95bcac, []int{67} } func (m *Info) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -1976,7 +1948,7 @@ var xxx_messageInfo_Info proto.InternalMessageInfo func (m *InfoItem) Reset() { *m = InfoItem{} } func (*InfoItem) ProtoMessage() {} func (*InfoItem) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{69} + return fileDescriptor_030104ce3b95bcac, []int{68} } func (m *InfoItem) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2004,7 +1976,7 @@ var xxx_messageInfo_InfoItem proto.InternalMessageInfo func (m *JWTToken) Reset() { *m = JWTToken{} } func (*JWTToken) ProtoMessage() {} func (*JWTToken) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{70} + return fileDescriptor_030104ce3b95bcac, []int{69} } func (m *JWTToken) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2032,7 +2004,7 @@ var xxx_messageInfo_JWTToken proto.InternalMessageInfo func (m *JWTTokens) Reset() { *m = JWTTokens{} } func (*JWTTokens) ProtoMessage() {} func (*JWTTokens) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{71} + return fileDescriptor_030104ce3b95bcac, []int{70} } func (m *JWTTokens) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2060,7 +2032,7 @@ var xxx_messageInfo_JWTTokens proto.InternalMessageInfo func (m *JsonnetVar) Reset() { *m = JsonnetVar{} } func (*JsonnetVar) ProtoMessage() {} func (*JsonnetVar) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{72} + return fileDescriptor_030104ce3b95bcac, []int{71} } func (m *JsonnetVar) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2088,7 +2060,7 @@ var xxx_messageInfo_JsonnetVar proto.InternalMessageInfo func (m *KnownTypeField) Reset() { *m = KnownTypeField{} } func (*KnownTypeField) ProtoMessage() {} func (*KnownTypeField) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{73} + return fileDescriptor_030104ce3b95bcac, []int{72} } func (m *KnownTypeField) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2116,7 +2088,7 @@ var xxx_messageInfo_KnownTypeField proto.InternalMessageInfo func (m *KustomizeGvk) Reset() { *m = KustomizeGvk{} } func (*KustomizeGvk) ProtoMessage() {} func (*KustomizeGvk) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{74} + return fileDescriptor_030104ce3b95bcac, []int{73} } func (m *KustomizeGvk) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2144,7 +2116,7 @@ var xxx_messageInfo_KustomizeGvk proto.InternalMessageInfo func (m *KustomizeOptions) Reset() { *m = KustomizeOptions{} } func (*KustomizeOptions) ProtoMessage() {} func (*KustomizeOptions) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{75} + return fileDescriptor_030104ce3b95bcac, []int{74} } func (m *KustomizeOptions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2172,7 +2144,7 @@ var xxx_messageInfo_KustomizeOptions proto.InternalMessageInfo func (m *KustomizePatch) Reset() { *m = KustomizePatch{} } func (*KustomizePatch) ProtoMessage() {} func (*KustomizePatch) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{76} + return fileDescriptor_030104ce3b95bcac, []int{75} } func (m *KustomizePatch) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2200,7 +2172,7 @@ var xxx_messageInfo_KustomizePatch proto.InternalMessageInfo func (m *KustomizeReplica) Reset() { *m = KustomizeReplica{} } func (*KustomizeReplica) ProtoMessage() {} func (*KustomizeReplica) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{77} + return fileDescriptor_030104ce3b95bcac, []int{76} } func (m *KustomizeReplica) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2228,7 +2200,7 @@ var xxx_messageInfo_KustomizeReplica proto.InternalMessageInfo func (m *KustomizeResId) Reset() { *m = KustomizeResId{} } func (*KustomizeResId) ProtoMessage() {} func (*KustomizeResId) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{78} + return fileDescriptor_030104ce3b95bcac, []int{77} } func (m *KustomizeResId) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2256,7 +2228,7 @@ var xxx_messageInfo_KustomizeResId proto.InternalMessageInfo func (m *KustomizeSelector) Reset() { *m = KustomizeSelector{} } func (*KustomizeSelector) ProtoMessage() {} func (*KustomizeSelector) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{79} + return fileDescriptor_030104ce3b95bcac, []int{78} } func (m *KustomizeSelector) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2284,7 +2256,7 @@ var xxx_messageInfo_KustomizeSelector proto.InternalMessageInfo func (m *ListGenerator) Reset() { *m = ListGenerator{} } func (*ListGenerator) ProtoMessage() {} func (*ListGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{80} + return fileDescriptor_030104ce3b95bcac, []int{79} } func (m *ListGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2312,7 +2284,7 @@ var xxx_messageInfo_ListGenerator proto.InternalMessageInfo func (m *ManagedNamespaceMetadata) Reset() { *m = ManagedNamespaceMetadata{} } func (*ManagedNamespaceMetadata) ProtoMessage() {} func (*ManagedNamespaceMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{81} + return fileDescriptor_030104ce3b95bcac, []int{80} } func (m *ManagedNamespaceMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2340,7 +2312,7 @@ var xxx_messageInfo_ManagedNamespaceMetadata proto.InternalMessageInfo func (m *MatrixGenerator) Reset() { *m = MatrixGenerator{} } func (*MatrixGenerator) ProtoMessage() {} func (*MatrixGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{82} + return fileDescriptor_030104ce3b95bcac, []int{81} } func (m *MatrixGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2368,7 +2340,7 @@ var xxx_messageInfo_MatrixGenerator proto.InternalMessageInfo func (m *MergeGenerator) Reset() { *m = MergeGenerator{} } func (*MergeGenerator) ProtoMessage() {} func (*MergeGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{83} + return fileDescriptor_030104ce3b95bcac, []int{82} } func (m *MergeGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2396,7 +2368,7 @@ var xxx_messageInfo_MergeGenerator proto.InternalMessageInfo func (m *NestedMatrixGenerator) Reset() { *m = NestedMatrixGenerator{} } func (*NestedMatrixGenerator) ProtoMessage() {} func (*NestedMatrixGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{84} + return fileDescriptor_030104ce3b95bcac, []int{83} } func (m *NestedMatrixGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2424,7 +2396,7 @@ var xxx_messageInfo_NestedMatrixGenerator proto.InternalMessageInfo func (m *NestedMergeGenerator) Reset() { *m = NestedMergeGenerator{} } func (*NestedMergeGenerator) ProtoMessage() {} func (*NestedMergeGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{85} + return fileDescriptor_030104ce3b95bcac, []int{84} } func (m *NestedMergeGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2452,7 +2424,7 @@ var xxx_messageInfo_NestedMergeGenerator proto.InternalMessageInfo func (m *Operation) Reset() { *m = Operation{} } func (*Operation) ProtoMessage() {} func (*Operation) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{86} + return fileDescriptor_030104ce3b95bcac, []int{85} } func (m *Operation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2480,7 +2452,7 @@ var xxx_messageInfo_Operation proto.InternalMessageInfo func (m *OperationInitiator) Reset() { *m = OperationInitiator{} } func (*OperationInitiator) ProtoMessage() {} func (*OperationInitiator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{87} + return fileDescriptor_030104ce3b95bcac, []int{86} } func (m *OperationInitiator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2508,7 +2480,7 @@ var xxx_messageInfo_OperationInitiator proto.InternalMessageInfo func (m *OperationState) Reset() { *m = OperationState{} } func (*OperationState) ProtoMessage() {} func (*OperationState) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{88} + return fileDescriptor_030104ce3b95bcac, []int{87} } func (m *OperationState) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2536,7 +2508,7 @@ var xxx_messageInfo_OperationState proto.InternalMessageInfo func (m *OptionalArray) Reset() { *m = OptionalArray{} } func (*OptionalArray) ProtoMessage() {} func (*OptionalArray) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{89} + return fileDescriptor_030104ce3b95bcac, []int{88} } func (m *OptionalArray) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2564,7 +2536,7 @@ var xxx_messageInfo_OptionalArray proto.InternalMessageInfo func (m *OptionalMap) Reset() { *m = OptionalMap{} } func (*OptionalMap) ProtoMessage() {} func (*OptionalMap) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{90} + return fileDescriptor_030104ce3b95bcac, []int{89} } func (m *OptionalMap) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2592,7 +2564,7 @@ var xxx_messageInfo_OptionalMap proto.InternalMessageInfo func (m *OrphanedResourceKey) Reset() { *m = OrphanedResourceKey{} } func (*OrphanedResourceKey) ProtoMessage() {} func (*OrphanedResourceKey) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{91} + return fileDescriptor_030104ce3b95bcac, []int{90} } func (m *OrphanedResourceKey) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2620,7 +2592,7 @@ var xxx_messageInfo_OrphanedResourceKey proto.InternalMessageInfo func (m *OrphanedResourcesMonitorSettings) Reset() { *m = OrphanedResourcesMonitorSettings{} } func (*OrphanedResourcesMonitorSettings) ProtoMessage() {} func (*OrphanedResourcesMonitorSettings) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{92} + return fileDescriptor_030104ce3b95bcac, []int{91} } func (m *OrphanedResourcesMonitorSettings) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2648,7 +2620,7 @@ var xxx_messageInfo_OrphanedResourcesMonitorSettings proto.InternalMessageInfo func (m *OverrideIgnoreDiff) Reset() { *m = OverrideIgnoreDiff{} } func (*OverrideIgnoreDiff) ProtoMessage() {} func (*OverrideIgnoreDiff) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{93} + return fileDescriptor_030104ce3b95bcac, []int{92} } func (m *OverrideIgnoreDiff) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2676,7 +2648,7 @@ var xxx_messageInfo_OverrideIgnoreDiff proto.InternalMessageInfo func (m *PluginConfigMapRef) Reset() { *m = PluginConfigMapRef{} } func (*PluginConfigMapRef) ProtoMessage() {} func (*PluginConfigMapRef) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{94} + return fileDescriptor_030104ce3b95bcac, []int{93} } func (m *PluginConfigMapRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2704,7 +2676,7 @@ var xxx_messageInfo_PluginConfigMapRef proto.InternalMessageInfo func (m *PluginGenerator) Reset() { *m = PluginGenerator{} } func (*PluginGenerator) ProtoMessage() {} func (*PluginGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{95} + return fileDescriptor_030104ce3b95bcac, []int{94} } func (m *PluginGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2732,7 +2704,7 @@ var xxx_messageInfo_PluginGenerator proto.InternalMessageInfo func (m *PluginInput) Reset() { *m = PluginInput{} } func (*PluginInput) ProtoMessage() {} func (*PluginInput) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{96} + return fileDescriptor_030104ce3b95bcac, []int{95} } func (m *PluginInput) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2760,7 +2732,7 @@ var xxx_messageInfo_PluginInput proto.InternalMessageInfo func (m *ProjectRole) Reset() { *m = ProjectRole{} } func (*ProjectRole) ProtoMessage() {} func (*ProjectRole) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{97} + return fileDescriptor_030104ce3b95bcac, []int{96} } func (m *ProjectRole) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2788,7 +2760,7 @@ var xxx_messageInfo_ProjectRole proto.InternalMessageInfo func (m *PullRequestGenerator) Reset() { *m = PullRequestGenerator{} } func (*PullRequestGenerator) ProtoMessage() {} func (*PullRequestGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{98} + return fileDescriptor_030104ce3b95bcac, []int{97} } func (m *PullRequestGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2816,7 +2788,7 @@ var xxx_messageInfo_PullRequestGenerator proto.InternalMessageInfo func (m *PullRequestGeneratorAzureDevOps) Reset() { *m = PullRequestGeneratorAzureDevOps{} } func (*PullRequestGeneratorAzureDevOps) ProtoMessage() {} func (*PullRequestGeneratorAzureDevOps) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{99} + return fileDescriptor_030104ce3b95bcac, []int{98} } func (m *PullRequestGeneratorAzureDevOps) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2844,7 +2816,7 @@ var xxx_messageInfo_PullRequestGeneratorAzureDevOps proto.InternalMessageInfo func (m *PullRequestGeneratorBitbucket) Reset() { *m = PullRequestGeneratorBitbucket{} } func (*PullRequestGeneratorBitbucket) ProtoMessage() {} func (*PullRequestGeneratorBitbucket) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{100} + return fileDescriptor_030104ce3b95bcac, []int{99} } func (m *PullRequestGeneratorBitbucket) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2872,7 +2844,7 @@ var xxx_messageInfo_PullRequestGeneratorBitbucket proto.InternalMessageInfo func (m *PullRequestGeneratorBitbucketServer) Reset() { *m = PullRequestGeneratorBitbucketServer{} } func (*PullRequestGeneratorBitbucketServer) ProtoMessage() {} func (*PullRequestGeneratorBitbucketServer) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{101} + return fileDescriptor_030104ce3b95bcac, []int{100} } func (m *PullRequestGeneratorBitbucketServer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2900,7 +2872,7 @@ var xxx_messageInfo_PullRequestGeneratorBitbucketServer proto.InternalMessageInf func (m *PullRequestGeneratorFilter) Reset() { *m = PullRequestGeneratorFilter{} } func (*PullRequestGeneratorFilter) ProtoMessage() {} func (*PullRequestGeneratorFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{102} + return fileDescriptor_030104ce3b95bcac, []int{101} } func (m *PullRequestGeneratorFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2928,7 +2900,7 @@ var xxx_messageInfo_PullRequestGeneratorFilter proto.InternalMessageInfo func (m *PullRequestGeneratorGitLab) Reset() { *m = PullRequestGeneratorGitLab{} } func (*PullRequestGeneratorGitLab) ProtoMessage() {} func (*PullRequestGeneratorGitLab) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{103} + return fileDescriptor_030104ce3b95bcac, []int{102} } func (m *PullRequestGeneratorGitLab) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2956,7 +2928,7 @@ var xxx_messageInfo_PullRequestGeneratorGitLab proto.InternalMessageInfo func (m *PullRequestGeneratorGitea) Reset() { *m = PullRequestGeneratorGitea{} } func (*PullRequestGeneratorGitea) ProtoMessage() {} func (*PullRequestGeneratorGitea) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{104} + return fileDescriptor_030104ce3b95bcac, []int{103} } func (m *PullRequestGeneratorGitea) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -2984,7 +2956,7 @@ var xxx_messageInfo_PullRequestGeneratorGitea proto.InternalMessageInfo func (m *PullRequestGeneratorGithub) Reset() { *m = PullRequestGeneratorGithub{} } func (*PullRequestGeneratorGithub) ProtoMessage() {} func (*PullRequestGeneratorGithub) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{105} + return fileDescriptor_030104ce3b95bcac, []int{104} } func (m *PullRequestGeneratorGithub) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3012,7 +2984,7 @@ var xxx_messageInfo_PullRequestGeneratorGithub proto.InternalMessageInfo func (m *RefTarget) Reset() { *m = RefTarget{} } func (*RefTarget) ProtoMessage() {} func (*RefTarget) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{106} + return fileDescriptor_030104ce3b95bcac, []int{105} } func (m *RefTarget) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3040,7 +3012,7 @@ var xxx_messageInfo_RefTarget proto.InternalMessageInfo func (m *RepoCreds) Reset() { *m = RepoCreds{} } func (*RepoCreds) ProtoMessage() {} func (*RepoCreds) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{107} + return fileDescriptor_030104ce3b95bcac, []int{106} } func (m *RepoCreds) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3068,7 +3040,7 @@ var xxx_messageInfo_RepoCreds proto.InternalMessageInfo func (m *RepoCredsList) Reset() { *m = RepoCredsList{} } func (*RepoCredsList) ProtoMessage() {} func (*RepoCredsList) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{108} + return fileDescriptor_030104ce3b95bcac, []int{107} } func (m *RepoCredsList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3096,7 +3068,7 @@ var xxx_messageInfo_RepoCredsList proto.InternalMessageInfo func (m *Repository) Reset() { *m = Repository{} } func (*Repository) ProtoMessage() {} func (*Repository) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{109} + return fileDescriptor_030104ce3b95bcac, []int{108} } func (m *Repository) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3124,7 +3096,7 @@ var xxx_messageInfo_Repository proto.InternalMessageInfo func (m *RepositoryCertificate) Reset() { *m = RepositoryCertificate{} } func (*RepositoryCertificate) ProtoMessage() {} func (*RepositoryCertificate) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{110} + return fileDescriptor_030104ce3b95bcac, []int{109} } func (m *RepositoryCertificate) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3152,7 +3124,7 @@ var xxx_messageInfo_RepositoryCertificate proto.InternalMessageInfo func (m *RepositoryCertificateList) Reset() { *m = RepositoryCertificateList{} } func (*RepositoryCertificateList) ProtoMessage() {} func (*RepositoryCertificateList) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{111} + return fileDescriptor_030104ce3b95bcac, []int{110} } func (m *RepositoryCertificateList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3180,7 +3152,7 @@ var xxx_messageInfo_RepositoryCertificateList proto.InternalMessageInfo func (m *RepositoryList) Reset() { *m = RepositoryList{} } func (*RepositoryList) ProtoMessage() {} func (*RepositoryList) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{112} + return fileDescriptor_030104ce3b95bcac, []int{111} } func (m *RepositoryList) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3208,7 +3180,7 @@ var xxx_messageInfo_RepositoryList proto.InternalMessageInfo func (m *ResourceAction) Reset() { *m = ResourceAction{} } func (*ResourceAction) ProtoMessage() {} func (*ResourceAction) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{113} + return fileDescriptor_030104ce3b95bcac, []int{112} } func (m *ResourceAction) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3236,7 +3208,7 @@ var xxx_messageInfo_ResourceAction proto.InternalMessageInfo func (m *ResourceActionDefinition) Reset() { *m = ResourceActionDefinition{} } func (*ResourceActionDefinition) ProtoMessage() {} func (*ResourceActionDefinition) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{114} + return fileDescriptor_030104ce3b95bcac, []int{113} } func (m *ResourceActionDefinition) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3264,7 +3236,7 @@ var xxx_messageInfo_ResourceActionDefinition proto.InternalMessageInfo func (m *ResourceActionParam) Reset() { *m = ResourceActionParam{} } func (*ResourceActionParam) ProtoMessage() {} func (*ResourceActionParam) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{115} + return fileDescriptor_030104ce3b95bcac, []int{114} } func (m *ResourceActionParam) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3292,7 +3264,7 @@ var xxx_messageInfo_ResourceActionParam proto.InternalMessageInfo func (m *ResourceActions) Reset() { *m = ResourceActions{} } func (*ResourceActions) ProtoMessage() {} func (*ResourceActions) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{116} + return fileDescriptor_030104ce3b95bcac, []int{115} } func (m *ResourceActions) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3320,7 +3292,7 @@ var xxx_messageInfo_ResourceActions proto.InternalMessageInfo func (m *ResourceDiff) Reset() { *m = ResourceDiff{} } func (*ResourceDiff) ProtoMessage() {} func (*ResourceDiff) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{117} + return fileDescriptor_030104ce3b95bcac, []int{116} } func (m *ResourceDiff) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3348,7 +3320,7 @@ var xxx_messageInfo_ResourceDiff proto.InternalMessageInfo func (m *ResourceIgnoreDifferences) Reset() { *m = ResourceIgnoreDifferences{} } func (*ResourceIgnoreDifferences) ProtoMessage() {} func (*ResourceIgnoreDifferences) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{118} + return fileDescriptor_030104ce3b95bcac, []int{117} } func (m *ResourceIgnoreDifferences) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3376,7 +3348,7 @@ var xxx_messageInfo_ResourceIgnoreDifferences proto.InternalMessageInfo func (m *ResourceNetworkingInfo) Reset() { *m = ResourceNetworkingInfo{} } func (*ResourceNetworkingInfo) ProtoMessage() {} func (*ResourceNetworkingInfo) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{119} + return fileDescriptor_030104ce3b95bcac, []int{118} } func (m *ResourceNetworkingInfo) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3404,7 +3376,7 @@ var xxx_messageInfo_ResourceNetworkingInfo proto.InternalMessageInfo func (m *ResourceNode) Reset() { *m = ResourceNode{} } func (*ResourceNode) ProtoMessage() {} func (*ResourceNode) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{120} + return fileDescriptor_030104ce3b95bcac, []int{119} } func (m *ResourceNode) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3432,7 +3404,7 @@ var xxx_messageInfo_ResourceNode proto.InternalMessageInfo func (m *ResourceOverride) Reset() { *m = ResourceOverride{} } func (*ResourceOverride) ProtoMessage() {} func (*ResourceOverride) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{121} + return fileDescriptor_030104ce3b95bcac, []int{120} } func (m *ResourceOverride) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3460,7 +3432,7 @@ var xxx_messageInfo_ResourceOverride proto.InternalMessageInfo func (m *ResourceRef) Reset() { *m = ResourceRef{} } func (*ResourceRef) ProtoMessage() {} func (*ResourceRef) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{122} + return fileDescriptor_030104ce3b95bcac, []int{121} } func (m *ResourceRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3488,7 +3460,7 @@ var xxx_messageInfo_ResourceRef proto.InternalMessageInfo func (m *ResourceResult) Reset() { *m = ResourceResult{} } func (*ResourceResult) ProtoMessage() {} func (*ResourceResult) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{123} + return fileDescriptor_030104ce3b95bcac, []int{122} } func (m *ResourceResult) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3516,7 +3488,7 @@ var xxx_messageInfo_ResourceResult proto.InternalMessageInfo func (m *ResourceStatus) Reset() { *m = ResourceStatus{} } func (*ResourceStatus) ProtoMessage() {} func (*ResourceStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{124} + return fileDescriptor_030104ce3b95bcac, []int{123} } func (m *ResourceStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3544,7 +3516,7 @@ var xxx_messageInfo_ResourceStatus proto.InternalMessageInfo func (m *RetryStrategy) Reset() { *m = RetryStrategy{} } func (*RetryStrategy) ProtoMessage() {} func (*RetryStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{125} + return fileDescriptor_030104ce3b95bcac, []int{124} } func (m *RetryStrategy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3572,7 +3544,7 @@ var xxx_messageInfo_RetryStrategy proto.InternalMessageInfo func (m *RevisionHistory) Reset() { *m = RevisionHistory{} } func (*RevisionHistory) ProtoMessage() {} func (*RevisionHistory) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{126} + return fileDescriptor_030104ce3b95bcac, []int{125} } func (m *RevisionHistory) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3600,7 +3572,7 @@ var xxx_messageInfo_RevisionHistory proto.InternalMessageInfo func (m *RevisionMetadata) Reset() { *m = RevisionMetadata{} } func (*RevisionMetadata) ProtoMessage() {} func (*RevisionMetadata) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{127} + return fileDescriptor_030104ce3b95bcac, []int{126} } func (m *RevisionMetadata) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3628,7 +3600,7 @@ var xxx_messageInfo_RevisionMetadata proto.InternalMessageInfo func (m *SCMProviderGenerator) Reset() { *m = SCMProviderGenerator{} } func (*SCMProviderGenerator) ProtoMessage() {} func (*SCMProviderGenerator) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{128} + return fileDescriptor_030104ce3b95bcac, []int{127} } func (m *SCMProviderGenerator) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3656,7 +3628,7 @@ var xxx_messageInfo_SCMProviderGenerator proto.InternalMessageInfo func (m *SCMProviderGeneratorAWSCodeCommit) Reset() { *m = SCMProviderGeneratorAWSCodeCommit{} } func (*SCMProviderGeneratorAWSCodeCommit) ProtoMessage() {} func (*SCMProviderGeneratorAWSCodeCommit) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{129} + return fileDescriptor_030104ce3b95bcac, []int{128} } func (m *SCMProviderGeneratorAWSCodeCommit) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3684,7 +3656,7 @@ var xxx_messageInfo_SCMProviderGeneratorAWSCodeCommit proto.InternalMessageInfo func (m *SCMProviderGeneratorAzureDevOps) Reset() { *m = SCMProviderGeneratorAzureDevOps{} } func (*SCMProviderGeneratorAzureDevOps) ProtoMessage() {} func (*SCMProviderGeneratorAzureDevOps) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{130} + return fileDescriptor_030104ce3b95bcac, []int{129} } func (m *SCMProviderGeneratorAzureDevOps) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3712,7 +3684,7 @@ var xxx_messageInfo_SCMProviderGeneratorAzureDevOps proto.InternalMessageInfo func (m *SCMProviderGeneratorBitbucket) Reset() { *m = SCMProviderGeneratorBitbucket{} } func (*SCMProviderGeneratorBitbucket) ProtoMessage() {} func (*SCMProviderGeneratorBitbucket) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{131} + return fileDescriptor_030104ce3b95bcac, []int{130} } func (m *SCMProviderGeneratorBitbucket) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3740,7 +3712,7 @@ var xxx_messageInfo_SCMProviderGeneratorBitbucket proto.InternalMessageInfo func (m *SCMProviderGeneratorBitbucketServer) Reset() { *m = SCMProviderGeneratorBitbucketServer{} } func (*SCMProviderGeneratorBitbucketServer) ProtoMessage() {} func (*SCMProviderGeneratorBitbucketServer) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{132} + return fileDescriptor_030104ce3b95bcac, []int{131} } func (m *SCMProviderGeneratorBitbucketServer) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3768,7 +3740,7 @@ var xxx_messageInfo_SCMProviderGeneratorBitbucketServer proto.InternalMessageInf func (m *SCMProviderGeneratorFilter) Reset() { *m = SCMProviderGeneratorFilter{} } func (*SCMProviderGeneratorFilter) ProtoMessage() {} func (*SCMProviderGeneratorFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{133} + return fileDescriptor_030104ce3b95bcac, []int{132} } func (m *SCMProviderGeneratorFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3796,7 +3768,7 @@ var xxx_messageInfo_SCMProviderGeneratorFilter proto.InternalMessageInfo func (m *SCMProviderGeneratorGitea) Reset() { *m = SCMProviderGeneratorGitea{} } func (*SCMProviderGeneratorGitea) ProtoMessage() {} func (*SCMProviderGeneratorGitea) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{134} + return fileDescriptor_030104ce3b95bcac, []int{133} } func (m *SCMProviderGeneratorGitea) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3824,7 +3796,7 @@ var xxx_messageInfo_SCMProviderGeneratorGitea proto.InternalMessageInfo func (m *SCMProviderGeneratorGithub) Reset() { *m = SCMProviderGeneratorGithub{} } func (*SCMProviderGeneratorGithub) ProtoMessage() {} func (*SCMProviderGeneratorGithub) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{135} + return fileDescriptor_030104ce3b95bcac, []int{134} } func (m *SCMProviderGeneratorGithub) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3852,7 +3824,7 @@ var xxx_messageInfo_SCMProviderGeneratorGithub proto.InternalMessageInfo func (m *SCMProviderGeneratorGitlab) Reset() { *m = SCMProviderGeneratorGitlab{} } func (*SCMProviderGeneratorGitlab) ProtoMessage() {} func (*SCMProviderGeneratorGitlab) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{136} + return fileDescriptor_030104ce3b95bcac, []int{135} } func (m *SCMProviderGeneratorGitlab) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3880,7 +3852,7 @@ var xxx_messageInfo_SCMProviderGeneratorGitlab proto.InternalMessageInfo func (m *SecretRef) Reset() { *m = SecretRef{} } func (*SecretRef) ProtoMessage() {} func (*SecretRef) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{137} + return fileDescriptor_030104ce3b95bcac, []int{136} } func (m *SecretRef) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3908,7 +3880,7 @@ var xxx_messageInfo_SecretRef proto.InternalMessageInfo func (m *SignatureKey) Reset() { *m = SignatureKey{} } func (*SignatureKey) ProtoMessage() {} func (*SignatureKey) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{138} + return fileDescriptor_030104ce3b95bcac, []int{137} } func (m *SignatureKey) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3936,7 +3908,7 @@ var xxx_messageInfo_SignatureKey proto.InternalMessageInfo func (m *SyncOperation) Reset() { *m = SyncOperation{} } func (*SyncOperation) ProtoMessage() {} func (*SyncOperation) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{139} + return fileDescriptor_030104ce3b95bcac, []int{138} } func (m *SyncOperation) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3964,7 +3936,7 @@ var xxx_messageInfo_SyncOperation proto.InternalMessageInfo func (m *SyncOperationResource) Reset() { *m = SyncOperationResource{} } func (*SyncOperationResource) ProtoMessage() {} func (*SyncOperationResource) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{140} + return fileDescriptor_030104ce3b95bcac, []int{139} } func (m *SyncOperationResource) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -3992,7 +3964,7 @@ var xxx_messageInfo_SyncOperationResource proto.InternalMessageInfo func (m *SyncOperationResult) Reset() { *m = SyncOperationResult{} } func (*SyncOperationResult) ProtoMessage() {} func (*SyncOperationResult) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{141} + return fileDescriptor_030104ce3b95bcac, []int{140} } func (m *SyncOperationResult) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4020,7 +3992,7 @@ var xxx_messageInfo_SyncOperationResult proto.InternalMessageInfo func (m *SyncPolicy) Reset() { *m = SyncPolicy{} } func (*SyncPolicy) ProtoMessage() {} func (*SyncPolicy) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{142} + return fileDescriptor_030104ce3b95bcac, []int{141} } func (m *SyncPolicy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4048,7 +4020,7 @@ var xxx_messageInfo_SyncPolicy proto.InternalMessageInfo func (m *SyncPolicyAutomated) Reset() { *m = SyncPolicyAutomated{} } func (*SyncPolicyAutomated) ProtoMessage() {} func (*SyncPolicyAutomated) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{143} + return fileDescriptor_030104ce3b95bcac, []int{142} } func (m *SyncPolicyAutomated) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4076,7 +4048,7 @@ var xxx_messageInfo_SyncPolicyAutomated proto.InternalMessageInfo func (m *SyncStatus) Reset() { *m = SyncStatus{} } func (*SyncStatus) ProtoMessage() {} func (*SyncStatus) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{144} + return fileDescriptor_030104ce3b95bcac, []int{143} } func (m *SyncStatus) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4104,7 +4076,7 @@ var xxx_messageInfo_SyncStatus proto.InternalMessageInfo func (m *SyncStrategy) Reset() { *m = SyncStrategy{} } func (*SyncStrategy) ProtoMessage() {} func (*SyncStrategy) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{145} + return fileDescriptor_030104ce3b95bcac, []int{144} } func (m *SyncStrategy) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4132,7 +4104,7 @@ var xxx_messageInfo_SyncStrategy proto.InternalMessageInfo func (m *SyncStrategyApply) Reset() { *m = SyncStrategyApply{} } func (*SyncStrategyApply) ProtoMessage() {} func (*SyncStrategyApply) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{146} + return fileDescriptor_030104ce3b95bcac, []int{145} } func (m *SyncStrategyApply) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4160,7 +4132,7 @@ var xxx_messageInfo_SyncStrategyApply proto.InternalMessageInfo func (m *SyncStrategyHook) Reset() { *m = SyncStrategyHook{} } func (*SyncStrategyHook) ProtoMessage() {} func (*SyncStrategyHook) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{147} + return fileDescriptor_030104ce3b95bcac, []int{146} } func (m *SyncStrategyHook) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4188,7 +4160,7 @@ var xxx_messageInfo_SyncStrategyHook proto.InternalMessageInfo func (m *SyncWindow) Reset() { *m = SyncWindow{} } func (*SyncWindow) ProtoMessage() {} func (*SyncWindow) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{148} + return fileDescriptor_030104ce3b95bcac, []int{147} } func (m *SyncWindow) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4216,7 +4188,7 @@ var xxx_messageInfo_SyncWindow proto.InternalMessageInfo func (m *TLSClientConfig) Reset() { *m = TLSClientConfig{} } func (*TLSClientConfig) ProtoMessage() {} func (*TLSClientConfig) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{149} + return fileDescriptor_030104ce3b95bcac, []int{148} } func (m *TLSClientConfig) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4244,7 +4216,7 @@ var xxx_messageInfo_TLSClientConfig proto.InternalMessageInfo func (m *TagFilter) Reset() { *m = TagFilter{} } func (*TagFilter) ProtoMessage() {} func (*TagFilter) Descriptor() ([]byte, []int) { - return fileDescriptor_030104ce3b95bcac, []int{150} + return fileDescriptor_030104ce3b95bcac, []int{149} } func (m *TagFilter) XXX_Unmarshal(b []byte) error { return m.Unmarshal(b) @@ -4337,10 +4309,9 @@ func init() { proto.RegisterType((*EnvEntry)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.EnvEntry") proto.RegisterType((*ExecProviderConfig)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.ExecProviderConfig") proto.RegisterMapType((map[string]string)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.ExecProviderConfig.EnvEntry") - proto.RegisterType((*GitDirectoryGeneratorItem)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GitDirectoryGeneratorItem") - proto.RegisterType((*GitFileGeneratorItem)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GitFileGeneratorItem") proto.RegisterType((*GitGenerator)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GitGenerator") proto.RegisterMapType((map[string]string)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GitGenerator.ValuesEntry") + proto.RegisterType((*GitGeneratorItem)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GitGeneratorItem") proto.RegisterType((*GnuPGPublicKey)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GnuPGPublicKey") proto.RegisterType((*GnuPGPublicKeyList)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.GnuPGPublicKeyList") proto.RegisterType((*HealthStatus)(nil), "github.com.argoproj.argo_cd.v2.pkg.apis.application.v1alpha1.HealthStatus") @@ -4448,692 +4419,690 @@ func init() { } var fileDescriptor_030104ce3b95bcac = []byte{ - // 10945 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6f, 0x70, 0x1c, 0xc9, - 0x75, 0x18, 0xae, 0xd9, 0x3f, 0xc0, 0xee, 0x03, 0x08, 0x92, 0x4d, 0xf2, 0x0e, 0xa4, 0xee, 0x0e, - 0xf4, 0xdc, 0xcf, 0xa7, 0xf3, 0x4f, 0x77, 0x80, 0x8f, 0xba, 0x53, 0x2e, 0x3a, 0x5b, 0x32, 0xfe, - 0x90, 0x20, 0x48, 0x80, 0xc0, 0x35, 0x40, 0x52, 0x3a, 0xf9, 0x74, 0x1a, 0xec, 0x36, 0x16, 0x43, - 0xcc, 0xce, 0xcc, 0xcd, 0xcc, 0x82, 0xc0, 0x59, 0x92, 0x25, 0x4b, 0xb6, 0x95, 0xe8, 0xcf, 0x29, - 0x52, 0x52, 0x3e, 0x27, 0x91, 0x23, 0x5b, 0x4e, 0x2a, 0xae, 0x44, 0x15, 0x27, 0xf9, 0x10, 0x27, - 0x4e, 0xca, 0x65, 0x3b, 0x95, 0x52, 0x4a, 0x49, 0xd9, 0x95, 0x72, 0x59, 0x4e, 0x62, 0x23, 0x12, - 0x52, 0xae, 0xa4, 0x52, 0x15, 0x57, 0x39, 0xf1, 0x07, 0x87, 0xc9, 0x87, 0x54, 0xff, 0xef, 0x99, - 0x9d, 0x05, 0x16, 0xc0, 0x80, 0xa4, 0x94, 0xfb, 0xb6, 0xdb, 0xef, 0xcd, 0x7b, 0x3d, 0x3d, 0xdd, - 0xef, 0xbd, 0x7e, 0xfd, 0xde, 0x6b, 0x98, 0x6f, 0xb9, 0xc9, 0x7a, 0x67, 0x75, 0xbc, 0x11, 0xb4, - 0x27, 0x9c, 0xa8, 0x15, 0x84, 0x51, 0x70, 0x87, 0xfd, 0x78, 0xb6, 0xd1, 0x9c, 0xd8, 0xbc, 0x34, - 0x11, 0x6e, 0xb4, 0x26, 0x9c, 0xd0, 0x8d, 0x27, 0x9c, 0x30, 0xf4, 0xdc, 0x86, 0x93, 0xb8, 0x81, - 0x3f, 0xb1, 0xf9, 0x9c, 0xe3, 0x85, 0xeb, 0xce, 0x73, 0x13, 0x2d, 0xe2, 0x93, 0xc8, 0x49, 0x48, - 0x73, 0x3c, 0x8c, 0x82, 0x24, 0x40, 0x3f, 0xa2, 0xa9, 0x8d, 0x4b, 0x6a, 0xec, 0xc7, 0x6b, 0x8d, - 0xe6, 0xf8, 0xe6, 0xa5, 0xf1, 0x70, 0xa3, 0x35, 0x4e, 0xa9, 0x8d, 0x1b, 0xd4, 0xc6, 0x25, 0xb5, - 0x0b, 0xcf, 0x1a, 0x7d, 0x69, 0x05, 0xad, 0x60, 0x82, 0x11, 0x5d, 0xed, 0xac, 0xb1, 0x7f, 0xec, - 0x0f, 0xfb, 0xc5, 0x99, 0x5d, 0xb0, 0x37, 0x5e, 0x8c, 0xc7, 0xdd, 0x80, 0x76, 0x6f, 0xa2, 0x11, - 0x44, 0x64, 0x62, 0xb3, 0xab, 0x43, 0x17, 0xae, 0x6a, 0x1c, 0xb2, 0x95, 0x10, 0x3f, 0x76, 0x03, - 0x3f, 0x7e, 0x96, 0x76, 0x81, 0x44, 0x9b, 0x24, 0x32, 0x5f, 0xcf, 0x40, 0xc8, 0xa3, 0xf4, 0xbc, - 0xa6, 0xd4, 0x76, 0x1a, 0xeb, 0xae, 0x4f, 0xa2, 0x6d, 0xfd, 0x78, 0x9b, 0x24, 0x4e, 0xde, 0x53, - 0x13, 0xbd, 0x9e, 0x8a, 0x3a, 0x7e, 0xe2, 0xb6, 0x49, 0xd7, 0x03, 0xef, 0xdd, 0xef, 0x81, 0xb8, - 0xb1, 0x4e, 0xda, 0x4e, 0xd7, 0x73, 0xef, 0xe9, 0xf5, 0x5c, 0x27, 0x71, 0xbd, 0x09, 0xd7, 0x4f, - 0xe2, 0x24, 0xca, 0x3e, 0x64, 0xbf, 0x0e, 0x27, 0x26, 0x6f, 0x2f, 0x4f, 0x76, 0x92, 0xf5, 0xe9, - 0xc0, 0x5f, 0x73, 0x5b, 0xe8, 0x05, 0x18, 0x6a, 0x78, 0x9d, 0x38, 0x21, 0xd1, 0x0d, 0xa7, 0x4d, - 0x46, 0xad, 0x8b, 0xd6, 0xd3, 0xf5, 0xa9, 0x33, 0xdf, 0xdc, 0x19, 0x7b, 0xc7, 0xee, 0xce, 0xd8, - 0xd0, 0xb4, 0x06, 0x61, 0x13, 0x0f, 0xfd, 0x10, 0x0c, 0x46, 0x81, 0x47, 0x26, 0xf1, 0x8d, 0xd1, - 0x12, 0x7b, 0xe4, 0xa4, 0x78, 0x64, 0x10, 0xf3, 0x66, 0x2c, 0xe1, 0xf6, 0xef, 0x97, 0x00, 0x26, - 0xc3, 0x70, 0x29, 0x0a, 0xee, 0x90, 0x46, 0x82, 0x3e, 0x0a, 0x35, 0x3a, 0x74, 0x4d, 0x27, 0x71, - 0x18, 0xb7, 0xa1, 0x4b, 0x3f, 0x3c, 0xce, 0xdf, 0x64, 0xdc, 0x7c, 0x13, 0x3d, 0x71, 0x28, 0xf6, - 0xf8, 0xe6, 0x73, 0xe3, 0x8b, 0xab, 0xf4, 0xf9, 0x05, 0x92, 0x38, 0x53, 0x48, 0x30, 0x03, 0xdd, - 0x86, 0x15, 0x55, 0xe4, 0x43, 0x25, 0x0e, 0x49, 0x83, 0x75, 0x6c, 0xe8, 0xd2, 0xfc, 0xf8, 0x51, - 0x66, 0xe8, 0xb8, 0xee, 0xf9, 0x72, 0x48, 0x1a, 0x53, 0xc3, 0x82, 0x73, 0x85, 0xfe, 0xc3, 0x8c, - 0x0f, 0xda, 0x84, 0x81, 0x38, 0x71, 0x92, 0x4e, 0x3c, 0x5a, 0x66, 0x1c, 0x6f, 0x14, 0xc6, 0x91, - 0x51, 0x9d, 0x1a, 0x11, 0x3c, 0x07, 0xf8, 0x7f, 0x2c, 0xb8, 0xd9, 0x7f, 0x64, 0xc1, 0x88, 0x46, - 0x9e, 0x77, 0xe3, 0x04, 0xfd, 0x78, 0xd7, 0xe0, 0x8e, 0xf7, 0x37, 0xb8, 0xf4, 0x69, 0x36, 0xb4, - 0xa7, 0x04, 0xb3, 0x9a, 0x6c, 0x31, 0x06, 0xb6, 0x0d, 0x55, 0x37, 0x21, 0xed, 0x78, 0xb4, 0x74, - 0xb1, 0xfc, 0xf4, 0xd0, 0xa5, 0xab, 0x45, 0xbd, 0xe7, 0xd4, 0x09, 0xc1, 0xb4, 0x3a, 0x47, 0xc9, - 0x63, 0xce, 0xc5, 0xfe, 0x95, 0x61, 0xf3, 0xfd, 0xe8, 0x80, 0xa3, 0xe7, 0x60, 0x28, 0x0e, 0x3a, - 0x51, 0x83, 0x60, 0x12, 0x06, 0xf1, 0xa8, 0x75, 0xb1, 0x4c, 0xa7, 0x1e, 0x9d, 0xa9, 0xcb, 0xba, - 0x19, 0x9b, 0x38, 0xe8, 0x8b, 0x16, 0x0c, 0x37, 0x49, 0x9c, 0xb8, 0x3e, 0xe3, 0x2f, 0x3b, 0xbf, - 0x72, 0xe4, 0xce, 0xcb, 0xc6, 0x19, 0x4d, 0x7c, 0xea, 0xac, 0x78, 0x91, 0x61, 0xa3, 0x31, 0xc6, - 0x29, 0xfe, 0x74, 0xc5, 0x35, 0x49, 0xdc, 0x88, 0xdc, 0x90, 0xfe, 0x67, 0x73, 0xc6, 0x58, 0x71, - 0x33, 0x1a, 0x84, 0x4d, 0x3c, 0xe4, 0x43, 0x95, 0xae, 0xa8, 0x78, 0xb4, 0xc2, 0xfa, 0x3f, 0x77, - 0xb4, 0xfe, 0x8b, 0x41, 0xa5, 0x8b, 0x55, 0x8f, 0x3e, 0xfd, 0x17, 0x63, 0xce, 0x06, 0x7d, 0xc1, - 0x82, 0x51, 0xb1, 0xe2, 0x31, 0xe1, 0x03, 0x7a, 0x7b, 0xdd, 0x4d, 0x88, 0xe7, 0xc6, 0xc9, 0x68, - 0x95, 0xf5, 0x61, 0xa2, 0xbf, 0xb9, 0x35, 0x1b, 0x05, 0x9d, 0xf0, 0xba, 0xeb, 0x37, 0xa7, 0x2e, - 0x0a, 0x4e, 0xa3, 0xd3, 0x3d, 0x08, 0xe3, 0x9e, 0x2c, 0xd1, 0x57, 0x2c, 0xb8, 0xe0, 0x3b, 0x6d, - 0x12, 0x87, 0x0e, 0xfd, 0xb4, 0x1c, 0x3c, 0xe5, 0x39, 0x8d, 0x0d, 0xd6, 0xa3, 0x81, 0xc3, 0xf5, - 0xc8, 0x16, 0x3d, 0xba, 0x70, 0xa3, 0x27, 0x69, 0xbc, 0x07, 0x5b, 0xf4, 0x75, 0x0b, 0x4e, 0x07, - 0x51, 0xb8, 0xee, 0xf8, 0xa4, 0x29, 0xa1, 0xf1, 0xe8, 0x20, 0x5b, 0x7a, 0x1f, 0x39, 0xda, 0x27, - 0x5a, 0xcc, 0x92, 0x5d, 0x08, 0x7c, 0x37, 0x09, 0xa2, 0x65, 0x92, 0x24, 0xae, 0xdf, 0x8a, 0xa7, - 0xce, 0xed, 0xee, 0x8c, 0x9d, 0xee, 0xc2, 0xc2, 0xdd, 0xfd, 0x41, 0x3f, 0x01, 0x43, 0xf1, 0xb6, - 0xdf, 0xb8, 0xed, 0xfa, 0xcd, 0xe0, 0x6e, 0x3c, 0x5a, 0x2b, 0x62, 0xf9, 0x2e, 0x2b, 0x82, 0x62, - 0x01, 0x6a, 0x06, 0xd8, 0xe4, 0x96, 0xff, 0xe1, 0xf4, 0x54, 0xaa, 0x17, 0xfd, 0xe1, 0xf4, 0x64, - 0xda, 0x83, 0x2d, 0xfa, 0x59, 0x0b, 0x4e, 0xc4, 0x6e, 0xcb, 0x77, 0x92, 0x4e, 0x44, 0xae, 0x93, - 0xed, 0x78, 0x14, 0x58, 0x47, 0xae, 0x1d, 0x71, 0x54, 0x0c, 0x92, 0x53, 0xe7, 0x44, 0x1f, 0x4f, - 0x98, 0xad, 0x31, 0x4e, 0xf3, 0xcd, 0x5b, 0x68, 0x7a, 0x5a, 0x0f, 0x15, 0xbb, 0xd0, 0xf4, 0xa4, - 0xee, 0xc9, 0x12, 0xfd, 0x18, 0x9c, 0xe2, 0x4d, 0x6a, 0x64, 0xe3, 0xd1, 0x61, 0x26, 0x68, 0xcf, - 0xee, 0xee, 0x8c, 0x9d, 0x5a, 0xce, 0xc0, 0x70, 0x17, 0x36, 0x7a, 0x1d, 0xc6, 0x42, 0x12, 0xb5, - 0xdd, 0x64, 0xd1, 0xf7, 0xb6, 0xa5, 0xf8, 0x6e, 0x04, 0x21, 0x69, 0x8a, 0xee, 0xc4, 0xa3, 0x27, - 0x2e, 0x5a, 0x4f, 0xd7, 0xa6, 0xde, 0x25, 0xba, 0x39, 0xb6, 0xb4, 0x37, 0x3a, 0xde, 0x8f, 0x9e, - 0xfd, 0xaf, 0x4b, 0x70, 0x2a, 0xab, 0x38, 0xd1, 0xdf, 0xb1, 0xe0, 0xe4, 0x9d, 0xbb, 0xc9, 0x4a, - 0xb0, 0x41, 0xfc, 0x78, 0x6a, 0x9b, 0x8a, 0x37, 0xa6, 0x32, 0x86, 0x2e, 0x35, 0x8a, 0x55, 0xd1, - 0xe3, 0xd7, 0xd2, 0x5c, 0x2e, 0xfb, 0x49, 0xb4, 0x3d, 0xf5, 0xa8, 0x78, 0xbb, 0x93, 0xd7, 0x6e, - 0xaf, 0x98, 0x50, 0x9c, 0xed, 0xd4, 0x85, 0xcf, 0x59, 0x70, 0x36, 0x8f, 0x04, 0x3a, 0x05, 0xe5, - 0x0d, 0xb2, 0xcd, 0xad, 0x32, 0x4c, 0x7f, 0xa2, 0x57, 0xa1, 0xba, 0xe9, 0x78, 0x1d, 0x22, 0xac, - 0x9b, 0xd9, 0xa3, 0xbd, 0x88, 0xea, 0x19, 0xe6, 0x54, 0xdf, 0x57, 0x7a, 0xd1, 0xb2, 0x7f, 0xa7, - 0x0c, 0x43, 0x86, 0x7e, 0xbb, 0x0f, 0x16, 0x5b, 0x90, 0xb2, 0xd8, 0x16, 0x0a, 0x53, 0xcd, 0x3d, - 0x4d, 0xb6, 0xbb, 0x19, 0x93, 0x6d, 0xb1, 0x38, 0x96, 0x7b, 0xda, 0x6c, 0x28, 0x81, 0x7a, 0x10, - 0x52, 0x8b, 0x9c, 0xaa, 0xfe, 0x4a, 0x11, 0x9f, 0x70, 0x51, 0x92, 0x9b, 0x3a, 0xb1, 0xbb, 0x33, - 0x56, 0x57, 0x7f, 0xb1, 0x66, 0x64, 0x7f, 0xdb, 0x82, 0xb3, 0x46, 0x1f, 0xa7, 0x03, 0xbf, 0xe9, - 0xb2, 0x4f, 0x7b, 0x11, 0x2a, 0xc9, 0x76, 0x28, 0xcd, 0x7e, 0x35, 0x52, 0x2b, 0xdb, 0x21, 0xc1, - 0x0c, 0x42, 0x0d, 0xfd, 0x36, 0x89, 0x63, 0xa7, 0x45, 0xb2, 0x86, 0xfe, 0x02, 0x6f, 0xc6, 0x12, - 0x8e, 0x22, 0x40, 0x9e, 0x13, 0x27, 0x2b, 0x91, 0xe3, 0xc7, 0x8c, 0xfc, 0x8a, 0xdb, 0x26, 0x62, - 0x80, 0xff, 0xff, 0xfe, 0x66, 0x0c, 0x7d, 0x62, 0xea, 0x91, 0xdd, 0x9d, 0x31, 0x34, 0xdf, 0x45, - 0x09, 0xe7, 0x50, 0xb7, 0xbf, 0x62, 0xc1, 0x23, 0xf9, 0xb6, 0x18, 0x7a, 0x0a, 0x06, 0xf8, 0x96, - 0x4f, 0xbc, 0x9d, 0xfe, 0x24, 0xac, 0x15, 0x0b, 0x28, 0x9a, 0x80, 0xba, 0xd2, 0x13, 0xe2, 0x1d, - 0x4f, 0x0b, 0xd4, 0xba, 0x56, 0x2e, 0x1a, 0x87, 0x0e, 0x1a, 0xfd, 0x23, 0x2c, 0x37, 0x35, 0x68, - 0x6c, 0x93, 0xc4, 0x20, 0xf6, 0x7f, 0xb2, 0xe0, 0xa4, 0xd1, 0xab, 0xfb, 0x60, 0x9a, 0xfb, 0x69, - 0xd3, 0x7c, 0xae, 0xb0, 0xf9, 0xdc, 0xc3, 0x36, 0xff, 0x82, 0x05, 0x17, 0x0c, 0xac, 0x05, 0x27, - 0x69, 0xac, 0x5f, 0xde, 0x0a, 0x23, 0x12, 0xd3, 0xed, 0x34, 0x7a, 0xdc, 0x90, 0x5b, 0x53, 0x43, - 0x82, 0x42, 0xf9, 0x3a, 0xd9, 0xe6, 0x42, 0xec, 0x19, 0xa8, 0xf1, 0xc9, 0x19, 0x44, 0x62, 0xc4, - 0xd5, 0xbb, 0x2d, 0x8a, 0x76, 0xac, 0x30, 0x90, 0x0d, 0x03, 0x4c, 0x38, 0xd1, 0xc5, 0x4a, 0xd5, - 0x10, 0xd0, 0x8f, 0x78, 0x8b, 0xb5, 0x60, 0x01, 0xb1, 0xe3, 0x54, 0x77, 0x96, 0x22, 0xc2, 0x3e, - 0x6e, 0xf3, 0x8a, 0x4b, 0xbc, 0x66, 0x4c, 0xb7, 0x0d, 0x8e, 0xef, 0x07, 0x89, 0xd8, 0x01, 0x18, - 0xdb, 0x86, 0x49, 0xdd, 0x8c, 0x4d, 0x1c, 0xca, 0xd4, 0x73, 0x56, 0x89, 0xc7, 0x47, 0x54, 0x30, - 0x9d, 0x67, 0x2d, 0x58, 0x40, 0xec, 0xdd, 0x12, 0xdb, 0xa0, 0xa8, 0xa5, 0x4f, 0xee, 0xc7, 0xee, - 0x36, 0x4a, 0xc9, 0xca, 0xa5, 0xe2, 0x04, 0x17, 0xe9, 0xbd, 0xc3, 0x7d, 0x23, 0x23, 0x2e, 0x71, - 0xa1, 0x5c, 0xf7, 0xde, 0xe5, 0xfe, 0x66, 0x09, 0xc6, 0xd2, 0x0f, 0x74, 0x49, 0x5b, 0xba, 0xa5, - 0x32, 0x18, 0x65, 0x9d, 0x18, 0x06, 0x3e, 0x36, 0xf1, 0x7a, 0x08, 0xac, 0xd2, 0x71, 0x0a, 0x2c, - 0x53, 0x9e, 0x96, 0xf7, 0x91, 0xa7, 0x4f, 0xa9, 0x51, 0xaf, 0x64, 0x04, 0x58, 0x5a, 0xa7, 0x5c, - 0x84, 0x4a, 0x9c, 0x90, 0x70, 0xb4, 0x9a, 0x96, 0x47, 0xcb, 0x09, 0x09, 0x31, 0x83, 0xd8, 0xff, - 0xad, 0x04, 0x8f, 0xa6, 0xc7, 0x50, 0xab, 0x80, 0x0f, 0xa4, 0x54, 0xc0, 0xbb, 0x4d, 0x15, 0x70, - 0x6f, 0x67, 0xec, 0x9d, 0x3d, 0x1e, 0xfb, 0x9e, 0xd1, 0x10, 0x68, 0x36, 0x33, 0x8a, 0x13, 0xe9, - 0x51, 0xbc, 0xb7, 0x33, 0xf6, 0x78, 0x8f, 0x77, 0xcc, 0x0c, 0xf3, 0x53, 0x30, 0x10, 0x11, 0x27, - 0x0e, 0x7c, 0x31, 0xd0, 0xea, 0x73, 0x60, 0xd6, 0x8a, 0x05, 0xd4, 0xfe, 0x77, 0xf5, 0xec, 0x60, - 0xcf, 0x72, 0x27, 0x5c, 0x10, 0x21, 0x17, 0x2a, 0xcc, 0xac, 0xe7, 0xa2, 0xe1, 0xfa, 0xd1, 0x96, - 0x11, 0x55, 0x03, 0x8a, 0xf4, 0x54, 0x8d, 0x7e, 0x35, 0xda, 0x84, 0x19, 0x0b, 0xb4, 0x05, 0xb5, - 0x86, 0xb4, 0xb6, 0x4b, 0x45, 0xf8, 0xa5, 0x84, 0xad, 0xad, 0x39, 0x0e, 0x53, 0x79, 0xad, 0x4c, - 0x74, 0xc5, 0x0d, 0x11, 0x28, 0xb7, 0xdc, 0x44, 0x7c, 0xd6, 0x23, 0xee, 0xa7, 0x66, 0x5d, 0xe3, - 0x15, 0x07, 0xa9, 0x12, 0x99, 0x75, 0x13, 0x4c, 0xe9, 0xa3, 0x9f, 0xb6, 0x60, 0x28, 0x6e, 0xb4, - 0x97, 0xa2, 0x60, 0xd3, 0x6d, 0x92, 0x48, 0x58, 0x53, 0x47, 0x14, 0x4d, 0xcb, 0xd3, 0x0b, 0x92, - 0xa0, 0xe6, 0xcb, 0xf7, 0xb7, 0x1a, 0x82, 0x4d, 0xbe, 0x74, 0x97, 0xf1, 0xa8, 0x78, 0xf7, 0x19, - 0xd2, 0x70, 0xa9, 0xfe, 0x93, 0x9b, 0x2a, 0x36, 0x53, 0x8e, 0x6c, 0x5d, 0xce, 0x74, 0x1a, 0x1b, - 0x74, 0xbd, 0xe9, 0x0e, 0xbd, 0x73, 0x77, 0x67, 0xec, 0xd1, 0xe9, 0x7c, 0x9e, 0xb8, 0x57, 0x67, - 0xd8, 0x80, 0x85, 0x1d, 0xcf, 0xc3, 0xe4, 0xf5, 0x0e, 0x61, 0x2e, 0x93, 0x02, 0x06, 0x6c, 0x49, - 0x13, 0xcc, 0x0c, 0x98, 0x01, 0xc1, 0x26, 0x5f, 0xf4, 0x3a, 0x0c, 0xb4, 0x9d, 0x24, 0x72, 0xb7, - 0x84, 0x9f, 0xe4, 0x88, 0xf6, 0xfe, 0x02, 0xa3, 0xa5, 0x99, 0x33, 0x4d, 0xcd, 0x1b, 0xb1, 0x60, - 0x84, 0xda, 0x50, 0x6d, 0x93, 0xa8, 0x45, 0x46, 0x6b, 0x45, 0xf8, 0x84, 0x17, 0x28, 0x29, 0xcd, - 0xb0, 0x4e, 0xad, 0x23, 0xd6, 0x86, 0x39, 0x17, 0xf4, 0x2a, 0xd4, 0x62, 0xe2, 0x91, 0x06, 0xb5, - 0x6f, 0xea, 0x8c, 0xe3, 0x7b, 0xfa, 0xb4, 0xf5, 0xa8, 0x61, 0xb1, 0x2c, 0x1e, 0xe5, 0x0b, 0x4c, - 0xfe, 0xc3, 0x8a, 0x24, 0x1d, 0xc0, 0xd0, 0xeb, 0xb4, 0x5c, 0x7f, 0x14, 0x8a, 0x18, 0xc0, 0x25, - 0x46, 0x2b, 0x33, 0x80, 0xbc, 0x11, 0x0b, 0x46, 0xf6, 0x1f, 0x5b, 0x80, 0xd2, 0x42, 0xed, 0x3e, - 0x18, 0xb5, 0xaf, 0xa7, 0x8d, 0xda, 0xf9, 0x22, 0xad, 0x8e, 0x1e, 0x76, 0xed, 0xaf, 0xd7, 0x21, - 0xa3, 0x0e, 0x6e, 0x90, 0x38, 0x21, 0xcd, 0xb7, 0x45, 0xf8, 0xdb, 0x22, 0xfc, 0x6d, 0x11, 0xae, - 0x44, 0xf8, 0x6a, 0x46, 0x84, 0xbf, 0xdf, 0x58, 0xf5, 0xfa, 0x50, 0xf5, 0x35, 0x75, 0xea, 0x6a, - 0xf6, 0xc0, 0x40, 0xa0, 0x92, 0xe0, 0xda, 0xf2, 0xe2, 0x8d, 0x5c, 0x99, 0xfd, 0x5a, 0x5a, 0x66, - 0x1f, 0x95, 0xc5, 0xff, 0x0b, 0x52, 0xfa, 0x5f, 0x59, 0xf0, 0xae, 0xb4, 0xf4, 0x92, 0x33, 0x67, - 0xae, 0xe5, 0x07, 0x11, 0x99, 0x71, 0xd7, 0xd6, 0x48, 0x44, 0xfc, 0x06, 0x89, 0x95, 0x17, 0xc3, - 0xea, 0xe5, 0xc5, 0x40, 0xcf, 0xc3, 0xf0, 0x9d, 0x38, 0xf0, 0x97, 0x02, 0xd7, 0x17, 0x22, 0x88, - 0x6e, 0x84, 0x4f, 0xed, 0xee, 0x8c, 0x0d, 0xd3, 0x11, 0x95, 0xed, 0x38, 0x85, 0x85, 0xa6, 0xe1, - 0xf4, 0x9d, 0xd7, 0x97, 0x9c, 0xc4, 0x70, 0x07, 0xc8, 0x8d, 0x3b, 0x3b, 0xb0, 0xb8, 0xf6, 0x72, - 0x06, 0x88, 0xbb, 0xf1, 0xed, 0xbf, 0x51, 0x82, 0xf3, 0x99, 0x17, 0x09, 0x3c, 0x2f, 0xe8, 0x24, - 0x74, 0x53, 0x83, 0x7e, 0xc1, 0x82, 0x53, 0xed, 0xb4, 0xc7, 0x21, 0x16, 0x8e, 0xdd, 0x0f, 0x16, - 0xa6, 0x23, 0x32, 0x2e, 0x8d, 0xa9, 0x51, 0x31, 0x42, 0xa7, 0x32, 0x80, 0x18, 0x77, 0xf5, 0x05, - 0xbd, 0x0a, 0xf5, 0xb6, 0xb3, 0x75, 0x33, 0x6c, 0x3a, 0x89, 0xdc, 0x4f, 0xf6, 0x76, 0x03, 0x74, - 0x12, 0xd7, 0x1b, 0xe7, 0xc7, 0xf5, 0xe3, 0x73, 0x7e, 0xb2, 0x18, 0x2d, 0x27, 0x91, 0xeb, 0xb7, - 0xb8, 0x3b, 0x6f, 0x41, 0x92, 0xc1, 0x9a, 0xa2, 0xfd, 0x55, 0x2b, 0xab, 0xa4, 0xd4, 0xe8, 0x44, - 0x4e, 0x42, 0x5a, 0xdb, 0xe8, 0x63, 0x50, 0xa5, 0x1b, 0x3f, 0x39, 0x2a, 0xb7, 0x8b, 0xd4, 0x9c, - 0xc6, 0x97, 0xd0, 0x4a, 0x94, 0xfe, 0x8b, 0x31, 0x67, 0x6a, 0xff, 0x71, 0x2d, 0x6b, 0x2c, 0xb0, - 0xc3, 0xdb, 0x4b, 0x00, 0xad, 0x60, 0x85, 0xb4, 0x43, 0x8f, 0x0e, 0x8b, 0xc5, 0x4e, 0x00, 0x94, - 0xaf, 0x63, 0x56, 0x41, 0xb0, 0x81, 0x85, 0xfe, 0x92, 0x05, 0xd0, 0x92, 0x73, 0x5e, 0x1a, 0x02, - 0x37, 0x8b, 0x7c, 0x1d, 0xbd, 0xa2, 0x74, 0x5f, 0x14, 0x43, 0x6c, 0x30, 0x47, 0x3f, 0x65, 0x41, - 0x2d, 0x91, 0xdd, 0xe7, 0xaa, 0x71, 0xa5, 0xc8, 0x9e, 0xc8, 0x97, 0xd6, 0x36, 0x91, 0x1a, 0x12, - 0xc5, 0x17, 0xfd, 0x8c, 0x05, 0x10, 0x6f, 0xfb, 0x8d, 0xa5, 0xc0, 0x73, 0x1b, 0xdb, 0x42, 0x63, - 0xde, 0x2a, 0xd4, 0x1f, 0xa3, 0xa8, 0x4f, 0x8d, 0xd0, 0xd1, 0xd0, 0xff, 0xb1, 0xc1, 0x19, 0x7d, - 0x02, 0x6a, 0xb1, 0x98, 0x6e, 0x42, 0x47, 0xae, 0x14, 0xeb, 0x15, 0xe2, 0xb4, 0x85, 0x78, 0x15, - 0xff, 0xb0, 0xe2, 0x89, 0x7e, 0xce, 0x82, 0x93, 0x61, 0xda, 0xcf, 0x27, 0xd4, 0x61, 0x71, 0x32, - 0x20, 0xe3, 0x47, 0x9c, 0x3a, 0xb3, 0xbb, 0x33, 0x76, 0x32, 0xd3, 0x88, 0xb3, 0xbd, 0xa0, 0x12, - 0x50, 0xcf, 0xe0, 0xc5, 0x90, 0xfb, 0x1c, 0x07, 0xb5, 0x04, 0x9c, 0xcd, 0x02, 0x71, 0x37, 0x3e, - 0x5a, 0x82, 0xb3, 0xb4, 0x77, 0xdb, 0xdc, 0xfc, 0x94, 0xea, 0x25, 0x66, 0xca, 0xb0, 0x36, 0xf5, - 0x98, 0x98, 0x21, 0xcc, 0xab, 0x9f, 0xc5, 0xc1, 0xb9, 0x4f, 0xa2, 0xdf, 0xb1, 0xe0, 0x31, 0x97, - 0xa9, 0x01, 0xd3, 0x61, 0xae, 0x35, 0x82, 0x38, 0x89, 0x25, 0x85, 0xca, 0x8a, 0x5e, 0xea, 0x67, - 0xea, 0xff, 0x13, 0x6f, 0xf0, 0xd8, 0xdc, 0x1e, 0x5d, 0xc2, 0x7b, 0x76, 0xd8, 0xfe, 0x56, 0x29, - 0x75, 0xac, 0xa1, 0x7c, 0x89, 0x4c, 0x6a, 0x34, 0xa4, 0x1b, 0x47, 0x0a, 0xc1, 0x42, 0xa5, 0x86, - 0x72, 0x12, 0x69, 0xa9, 0xa1, 0x9a, 0x62, 0x6c, 0x30, 0xa7, 0xb6, 0xe5, 0x69, 0x27, 0xeb, 0xb1, - 0x14, 0x82, 0xec, 0xd5, 0x22, 0xbb, 0xd4, 0x7d, 0x08, 0x75, 0x5e, 0x74, 0xed, 0x74, 0x17, 0x08, - 0x77, 0x77, 0xc9, 0xfe, 0x56, 0xfa, 0x28, 0xc5, 0x58, 0x83, 0x7d, 0x1c, 0x13, 0x7d, 0xd1, 0x82, - 0xa1, 0x28, 0xf0, 0x3c, 0xd7, 0x6f, 0x51, 0x79, 0x21, 0x94, 0xde, 0x87, 0x8f, 0x45, 0xef, 0x08, - 0xc1, 0xc0, 0x2c, 0x54, 0xac, 0x79, 0x62, 0xb3, 0x03, 0xf6, 0x1f, 0x59, 0x30, 0xda, 0x4b, 0xae, - 0x21, 0x02, 0xef, 0x94, 0x8b, 0x56, 0x05, 0x49, 0x2c, 0xfa, 0x33, 0xc4, 0x23, 0xca, 0x7f, 0x5c, - 0x9b, 0x7a, 0x52, 0xbc, 0xe6, 0x3b, 0x97, 0x7a, 0xa3, 0xe2, 0xbd, 0xe8, 0xa0, 0x57, 0xe0, 0x94, - 0xf1, 0x5e, 0xb1, 0x1a, 0x98, 0xfa, 0xd4, 0x38, 0x35, 0x24, 0x26, 0x33, 0xb0, 0x7b, 0x3b, 0x63, - 0x8f, 0x64, 0xdb, 0x84, 0xe0, 0xed, 0xa2, 0x63, 0xff, 0x72, 0x29, 0xfb, 0xb5, 0x94, 0xce, 0x7c, - 0xcb, 0xea, 0xda, 0x95, 0x7f, 0xf0, 0x38, 0xf4, 0x14, 0xdb, 0xbf, 0xab, 0x38, 0x8c, 0xde, 0x38, - 0x0f, 0xf0, 0xa0, 0xd7, 0xfe, 0x37, 0x15, 0xd8, 0xa3, 0x67, 0x7d, 0x18, 0xc1, 0x07, 0x3e, 0x1d, - 0xfc, 0xbc, 0xa5, 0x4e, 0x8e, 0xca, 0x6c, 0x91, 0x37, 0x8f, 0x6b, 0xec, 0xf9, 0x3e, 0x24, 0xe6, - 0xc1, 0x06, 0xca, 0x1b, 0x9d, 0x3e, 0xa3, 0x42, 0x5f, 0xb3, 0xd2, 0x67, 0x5f, 0x3c, 0x7a, 0xcc, - 0x3d, 0xb6, 0x3e, 0x19, 0x07, 0x6a, 0xbc, 0x63, 0xfa, 0x18, 0xa6, 0xd7, 0x51, 0xdb, 0x38, 0xc0, - 0x9a, 0xeb, 0x3b, 0x9e, 0xfb, 0x06, 0xdd, 0x65, 0x54, 0x99, 0xa2, 0x64, 0x96, 0xc7, 0x15, 0xd5, - 0x8a, 0x0d, 0x8c, 0x0b, 0x7f, 0x11, 0x86, 0x8c, 0x37, 0xcf, 0x89, 0x91, 0x38, 0x6b, 0xc6, 0x48, - 0xd4, 0x8d, 0xd0, 0x86, 0x0b, 0xef, 0x87, 0x53, 0xd9, 0x0e, 0x1e, 0xe4, 0x79, 0xfb, 0xcf, 0x07, - 0xb3, 0x87, 0x51, 0x2b, 0x24, 0x6a, 0xd3, 0xae, 0xbd, 0xed, 0x20, 0x7a, 0xdb, 0x41, 0xf4, 0xb6, - 0x83, 0xc8, 0xf4, 0xf1, 0x0b, 0xe7, 0xc7, 0xe0, 0x7d, 0x72, 0x7e, 0xa4, 0xdc, 0x39, 0xb5, 0xc2, - 0xdd, 0x39, 0xf6, 0x6e, 0x15, 0x52, 0x76, 0x14, 0x1f, 0xef, 0x1f, 0x82, 0xc1, 0x88, 0x84, 0xc1, - 0x4d, 0x3c, 0x2f, 0x74, 0x88, 0x8e, 0x83, 0xe7, 0xcd, 0x58, 0xc2, 0xa9, 0xae, 0x09, 0x9d, 0x64, - 0x5d, 0x28, 0x11, 0xa5, 0x6b, 0x96, 0x9c, 0x64, 0x1d, 0x33, 0x08, 0x7a, 0x3f, 0x8c, 0x24, 0x4e, - 0xd4, 0xa2, 0x66, 0xf3, 0x26, 0xfb, 0xac, 0xe2, 0xc8, 0xf2, 0x11, 0x81, 0x3b, 0xb2, 0x92, 0x82, - 0xe2, 0x0c, 0x36, 0x7a, 0x1d, 0x2a, 0xeb, 0xc4, 0x6b, 0x8b, 0x21, 0x5f, 0x2e, 0x4e, 0xc6, 0xb3, - 0x77, 0xbd, 0x4a, 0xbc, 0x36, 0x97, 0x40, 0xf4, 0x17, 0x66, 0xac, 0xe8, 0x7c, 0xab, 0x6f, 0x74, - 0xe2, 0x24, 0x68, 0xbb, 0x6f, 0x48, 0x4f, 0xdd, 0x07, 0x0b, 0x66, 0x7c, 0x5d, 0xd2, 0xe7, 0x2e, - 0x11, 0xf5, 0x17, 0x6b, 0xce, 0xac, 0x1f, 0x4d, 0x37, 0x62, 0x9f, 0x6a, 0x5b, 0x38, 0xdc, 0x8a, - 0xee, 0xc7, 0x8c, 0xa4, 0xcf, 0xfb, 0xa1, 0xfe, 0x62, 0xcd, 0x19, 0x6d, 0xab, 0x79, 0x3f, 0xc4, - 0xfa, 0x70, 0xb3, 0xe0, 0x3e, 0xf0, 0x39, 0x9f, 0x3b, 0xff, 0x9f, 0x84, 0x6a, 0x63, 0xdd, 0x89, - 0x92, 0xd1, 0x61, 0x36, 0x69, 0x94, 0x6b, 0x66, 0x9a, 0x36, 0x62, 0x0e, 0x43, 0x8f, 0x43, 0x39, - 0x22, 0x6b, 0x2c, 0xfc, 0xd2, 0x08, 0xcc, 0xc1, 0x64, 0x0d, 0xd3, 0x76, 0xfb, 0x17, 0x4b, 0x69, - 0x73, 0x29, 0xfd, 0xde, 0x7c, 0xb6, 0x37, 0x3a, 0x51, 0x2c, 0xdd, 0x37, 0xc6, 0x6c, 0x67, 0xcd, - 0x58, 0xc2, 0xd1, 0xa7, 0x2c, 0x18, 0xbc, 0x13, 0x07, 0xbe, 0x4f, 0x12, 0xa1, 0x9a, 0x6e, 0x15, - 0x3c, 0x14, 0xd7, 0x38, 0x75, 0xdd, 0x07, 0xd1, 0x80, 0x25, 0x5f, 0xda, 0x5d, 0xb2, 0xd5, 0xf0, - 0x3a, 0xcd, 0xae, 0x58, 0x8b, 0xcb, 0xbc, 0x19, 0x4b, 0x38, 0x45, 0x75, 0x7d, 0x8e, 0x5a, 0x49, - 0xa3, 0xce, 0xf9, 0x02, 0x55, 0xc0, 0xed, 0xbf, 0x36, 0x00, 0xe7, 0x72, 0x17, 0x07, 0x35, 0x64, - 0x98, 0xa9, 0x70, 0xc5, 0xf5, 0x88, 0x8c, 0x32, 0x62, 0x86, 0xcc, 0x2d, 0xd5, 0x8a, 0x0d, 0x0c, - 0xf4, 0x93, 0x00, 0xa1, 0x13, 0x39, 0x6d, 0xa2, 0xdc, 0xab, 0x47, 0xb6, 0x17, 0x68, 0x3f, 0x96, - 0x24, 0x4d, 0xbd, 0x37, 0x55, 0x4d, 0x31, 0x36, 0x58, 0xa2, 0x17, 0x60, 0x28, 0x22, 0x1e, 0x71, - 0x62, 0x16, 0xbd, 0x9b, 0x4d, 0x45, 0xc0, 0x1a, 0x84, 0x4d, 0x3c, 0xf4, 0x94, 0x0a, 0xc8, 0xca, - 0x04, 0xa6, 0xa4, 0x83, 0xb2, 0xd0, 0x9b, 0x16, 0x8c, 0xac, 0xb9, 0x1e, 0xd1, 0xdc, 0x45, 0xe2, - 0xc0, 0xe2, 0xd1, 0x5f, 0xf2, 0x8a, 0x49, 0x57, 0x4b, 0xc8, 0x54, 0x73, 0x8c, 0x33, 0xec, 0xe9, - 0x67, 0xde, 0x24, 0x11, 0x13, 0xad, 0x03, 0xe9, 0xcf, 0x7c, 0x8b, 0x37, 0x63, 0x09, 0x47, 0x93, - 0x70, 0x32, 0x74, 0xe2, 0x78, 0x3a, 0x22, 0x4d, 0xe2, 0x27, 0xae, 0xe3, 0xf1, 0xb0, 0xfe, 0x9a, - 0x0e, 0xeb, 0x5d, 0x4a, 0x83, 0x71, 0x16, 0x1f, 0x7d, 0x08, 0x1e, 0xe5, 0xfe, 0x8b, 0x05, 0x37, - 0x8e, 0x5d, 0xbf, 0xa5, 0xa7, 0x81, 0x70, 0xe3, 0x8c, 0x09, 0x52, 0x8f, 0xce, 0xe5, 0xa3, 0xe1, - 0x5e, 0xcf, 0xa3, 0x67, 0xa0, 0x16, 0x6f, 0xb8, 0xe1, 0x74, 0xd4, 0x8c, 0xd9, 0xd9, 0x45, 0x4d, - 0x3b, 0x0d, 0x97, 0x45, 0x3b, 0x56, 0x18, 0xa8, 0x01, 0xc3, 0xfc, 0x93, 0xf0, 0x88, 0x32, 0x21, - 0x1f, 0x9f, 0xed, 0xa9, 0x1e, 0x45, 0xe6, 0xd9, 0x38, 0x76, 0xee, 0x5e, 0x96, 0x27, 0x29, 0xdc, - 0xf1, 0x7f, 0xcb, 0x20, 0x83, 0x53, 0x44, 0xed, 0x9f, 0x2f, 0xa5, 0x77, 0xdc, 0xe6, 0x22, 0x45, - 0x31, 0x5d, 0x8a, 0xc9, 0x2d, 0x27, 0x92, 0xde, 0x98, 0x23, 0x66, 0x1f, 0x08, 0xba, 0xb7, 0x9c, - 0xc8, 0x5c, 0xd4, 0x8c, 0x01, 0x96, 0x9c, 0xd0, 0x1d, 0xa8, 0x24, 0x9e, 0x53, 0x50, 0xba, 0x92, - 0xc1, 0x51, 0x3b, 0x40, 0xe6, 0x27, 0x63, 0xcc, 0x78, 0xa0, 0xc7, 0xa8, 0xd5, 0xbf, 0x2a, 0x4f, - 0x3a, 0x84, 0xa1, 0xbe, 0x1a, 0x63, 0xd6, 0x6a, 0xff, 0x79, 0x3d, 0x47, 0xae, 0x2a, 0x45, 0x86, - 0x2e, 0x01, 0xd0, 0x0d, 0xe4, 0x52, 0x44, 0xd6, 0xdc, 0x2d, 0x61, 0x48, 0xa8, 0xb5, 0x7b, 0x43, - 0x41, 0xb0, 0x81, 0x25, 0x9f, 0x59, 0xee, 0xac, 0xd1, 0x67, 0x4a, 0xdd, 0xcf, 0x70, 0x08, 0x36, - 0xb0, 0xd0, 0xf3, 0x30, 0xe0, 0xb6, 0x9d, 0x96, 0x8a, 0xa4, 0x7c, 0x8c, 0x2e, 0xda, 0x39, 0xd6, - 0x72, 0x6f, 0x67, 0x6c, 0x44, 0x75, 0x88, 0x35, 0x61, 0x81, 0x8b, 0x7e, 0xd9, 0x82, 0xe1, 0x46, - 0xd0, 0x6e, 0x07, 0x3e, 0xdf, 0x76, 0x89, 0x3d, 0xe4, 0x9d, 0xe3, 0x52, 0xf3, 0xe3, 0xd3, 0x06, - 0x33, 0xbe, 0x89, 0x54, 0x79, 0x55, 0x26, 0x08, 0xa7, 0x7a, 0x65, 0xae, 0xed, 0xea, 0x3e, 0x6b, - 0xfb, 0xd7, 0x2c, 0x38, 0xcd, 0x9f, 0x35, 0x76, 0x83, 0x22, 0x85, 0x28, 0x38, 0xe6, 0xd7, 0xea, - 0xda, 0x20, 0x2b, 0x2f, 0x5d, 0x17, 0x1c, 0x77, 0x77, 0x12, 0xcd, 0xc2, 0xe9, 0xb5, 0x20, 0x6a, - 0x10, 0x73, 0x20, 0x84, 0x60, 0x52, 0x84, 0xae, 0x64, 0x11, 0x70, 0xf7, 0x33, 0xe8, 0x16, 0x3c, - 0x62, 0x34, 0x9a, 0xe3, 0xc0, 0x65, 0xd3, 0x13, 0x82, 0xda, 0x23, 0x57, 0x72, 0xb1, 0x70, 0x8f, - 0xa7, 0xd3, 0x0e, 0x93, 0x7a, 0x1f, 0x0e, 0x93, 0xd7, 0xe0, 0x7c, 0xa3, 0x7b, 0x64, 0x36, 0xe3, - 0xce, 0x6a, 0xcc, 0x25, 0x55, 0x6d, 0xea, 0x07, 0x04, 0x81, 0xf3, 0xd3, 0xbd, 0x10, 0x71, 0x6f, - 0x1a, 0xe8, 0x63, 0x50, 0x8b, 0x08, 0xfb, 0x2a, 0xb1, 0xc8, 0xa7, 0x39, 0xe2, 0x2e, 0x59, 0x5b, - 0xa0, 0x9c, 0xac, 0x96, 0xbd, 0xa2, 0x21, 0xc6, 0x8a, 0x23, 0xba, 0x0b, 0x83, 0xa1, 0x93, 0x34, - 0xd6, 0x45, 0x16, 0xcd, 0x91, 0xc3, 0x58, 0x14, 0xf3, 0x25, 0x4a, 0x55, 0x4f, 0xf2, 0x25, 0xce, - 0x04, 0x4b, 0x6e, 0x17, 0x3e, 0x00, 0xa7, 0xbb, 0x16, 0xd2, 0x81, 0x9c, 0x25, 0x33, 0xf0, 0x48, - 0xfe, 0x94, 0x3d, 0x90, 0xcb, 0xe4, 0x1f, 0x67, 0x62, 0x4f, 0x0d, 0x33, 0xb6, 0x0f, 0xf7, 0x9b, - 0x03, 0x65, 0xe2, 0x6f, 0x0a, 0x09, 0x7e, 0xe5, 0x68, 0x23, 0x77, 0xd9, 0xdf, 0xe4, 0x2b, 0x8e, - 0xf9, 0x18, 0x2e, 0xfb, 0x9b, 0x98, 0xd2, 0x46, 0x5f, 0xb6, 0x52, 0x66, 0x18, 0x77, 0xda, 0x7d, - 0xe4, 0x58, 0xec, 0xf6, 0xbe, 0x2d, 0x33, 0xfb, 0xdf, 0x96, 0xe0, 0xe2, 0x7e, 0x44, 0xfa, 0x18, - 0xbe, 0x27, 0x61, 0x20, 0x66, 0xa7, 0xc9, 0x42, 0x24, 0x0e, 0xd1, 0x99, 0xc2, 0xcf, 0x97, 0x5f, - 0xc3, 0x02, 0x84, 0x3c, 0x28, 0xb7, 0x9d, 0x50, 0xf8, 0x72, 0xe6, 0x8e, 0x9a, 0x8d, 0x42, 0xff, - 0x3b, 0xde, 0x82, 0x13, 0x72, 0x0f, 0x81, 0xd1, 0x80, 0x29, 0x1b, 0x94, 0x40, 0xd5, 0x89, 0x22, - 0x47, 0x1e, 0x5d, 0x5e, 0x2f, 0x86, 0xdf, 0x24, 0x25, 0x39, 0x75, 0x7a, 0x77, 0x67, 0xec, 0x44, - 0xaa, 0x09, 0x73, 0x66, 0xf6, 0xe7, 0x07, 0x53, 0x19, 0x19, 0xec, 0x3c, 0x3a, 0x86, 0x01, 0xe1, - 0xc2, 0xb1, 0x8a, 0x4e, 0x02, 0xe2, 0x29, 0x75, 0x6c, 0x97, 0x26, 0x12, 0x93, 0x05, 0x2b, 0xf4, - 0x39, 0x8b, 0xa5, 0xff, 0xca, 0x2c, 0x15, 0xb1, 0x37, 0x3a, 0x9e, 0x6c, 0x64, 0x33, 0xa9, 0x58, - 0x36, 0x62, 0x93, 0x3b, 0xd5, 0x99, 0x21, 0x4f, 0x64, 0xcb, 0xee, 0x90, 0x64, 0x82, 0xb0, 0x84, - 0xa3, 0xad, 0x9c, 0x73, 0xe7, 0x02, 0x52, 0x48, 0xfb, 0x38, 0x69, 0xfe, 0x9a, 0x05, 0xa7, 0xdd, - 0xec, 0x01, 0xa2, 0xd8, 0x49, 0x1c, 0x31, 0xb2, 0xa1, 0xf7, 0xf9, 0xa4, 0x52, 0xa6, 0x5d, 0x20, - 0xdc, 0xdd, 0x19, 0xd4, 0x84, 0x8a, 0xeb, 0xaf, 0x05, 0xc2, 0x84, 0x98, 0x3a, 0x5a, 0xa7, 0xe6, - 0xfc, 0xb5, 0x40, 0xaf, 0x66, 0xfa, 0x0f, 0x33, 0xea, 0x68, 0x1e, 0xce, 0x46, 0xc2, 0xd7, 0x73, - 0xd5, 0x8d, 0xe9, 0x8e, 0x7c, 0xde, 0x6d, 0xbb, 0x09, 0x53, 0xff, 0xe5, 0xa9, 0xd1, 0xdd, 0x9d, - 0xb1, 0xb3, 0x38, 0x07, 0x8e, 0x73, 0x9f, 0x42, 0x6f, 0xc0, 0xa0, 0xcc, 0x57, 0xae, 0x15, 0xb1, - 0x2b, 0xeb, 0x9e, 0xff, 0x6a, 0x32, 0x2d, 0x8b, 0xd4, 0x64, 0xc9, 0xd0, 0x7e, 0x73, 0x08, 0xba, - 0x0f, 0x25, 0xd1, 0xc7, 0xa1, 0x1e, 0xa9, 0x1c, 0x6a, 0xab, 0x08, 0x65, 0x29, 0xbf, 0xaf, 0x38, - 0x10, 0x55, 0x86, 0x88, 0xce, 0x96, 0xd6, 0x1c, 0xe9, 0x76, 0x21, 0xd6, 0x67, 0x97, 0x05, 0xcc, - 0x6d, 0xc1, 0x55, 0x9f, 0x4b, 0x6d, 0xfb, 0x0d, 0xcc, 0x78, 0xa0, 0x08, 0x06, 0xd6, 0x89, 0xe3, - 0x25, 0xeb, 0xc5, 0xb8, 0xd0, 0xaf, 0x32, 0x5a, 0xd9, 0x4c, 0x1a, 0xde, 0x8a, 0x05, 0x27, 0xb4, - 0x05, 0x83, 0xeb, 0x7c, 0x02, 0x08, 0x0b, 0x7e, 0xe1, 0xa8, 0x83, 0x9b, 0x9a, 0x55, 0xfa, 0x73, - 0x8b, 0x06, 0x2c, 0xd9, 0xb1, 0xa0, 0x15, 0xe3, 0x3c, 0x9e, 0x2f, 0xdd, 0xe2, 0x92, 0x88, 0xfa, - 0x3f, 0x8c, 0xff, 0x28, 0x0c, 0x47, 0xa4, 0x11, 0xf8, 0x0d, 0xd7, 0x23, 0xcd, 0x49, 0xe9, 0x1e, - 0x3f, 0x48, 0xea, 0x09, 0xdb, 0x05, 0x63, 0x83, 0x06, 0x4e, 0x51, 0x44, 0x9f, 0xb5, 0x60, 0x44, - 0x25, 0x5e, 0xd2, 0x0f, 0x42, 0x84, 0x3b, 0x76, 0xbe, 0xa0, 0x34, 0x4f, 0x46, 0x73, 0x0a, 0xed, - 0xee, 0x8c, 0x8d, 0xa4, 0xdb, 0x70, 0x86, 0x2f, 0x7a, 0x05, 0x20, 0x58, 0xe5, 0x91, 0x29, 0x93, - 0x89, 0xf0, 0xcd, 0x1e, 0xe4, 0x55, 0x47, 0x78, 0x0e, 0x9a, 0xa4, 0x80, 0x0d, 0x6a, 0xe8, 0x3a, - 0x00, 0x5f, 0x36, 0x2b, 0xdb, 0xa1, 0x34, 0xf3, 0x65, 0xee, 0x10, 0x2c, 0x2b, 0xc8, 0xbd, 0x9d, - 0xb1, 0x6e, 0x5f, 0x19, 0x0b, 0x1b, 0x30, 0x1e, 0x47, 0x3f, 0x01, 0x83, 0x71, 0xa7, 0xdd, 0x76, - 0x94, 0xe7, 0xb6, 0xc0, 0xac, 0x36, 0x4e, 0xd7, 0x10, 0x45, 0xbc, 0x01, 0x4b, 0x8e, 0xe8, 0x0e, - 0x15, 0xaa, 0xb1, 0x70, 0xe2, 0xb1, 0x55, 0xc4, 0x6d, 0x82, 0x21, 0xf6, 0x4e, 0xef, 0x95, 0x81, - 0x36, 0x38, 0x07, 0xe7, 0xde, 0xce, 0xd8, 0x23, 0xe9, 0xf6, 0xf9, 0x40, 0xe4, 0x99, 0xe5, 0xd2, - 0x44, 0xd7, 0x64, 0xf9, 0x12, 0xfa, 0xda, 0x32, 0xab, 0xfe, 0x69, 0x5d, 0xbe, 0x84, 0x35, 0xf7, - 0x1e, 0x33, 0xf3, 0x61, 0xb4, 0x00, 0x67, 0x1a, 0x81, 0x9f, 0x44, 0x81, 0xe7, 0xf1, 0x9a, 0x3c, - 0x7c, 0xc7, 0xc5, 0x3d, 0xbb, 0xef, 0x14, 0xdd, 0x3e, 0x33, 0xdd, 0x8d, 0x82, 0xf3, 0x9e, 0xb3, - 0xfd, 0x74, 0xc8, 0x9e, 0x18, 0x9c, 0xe7, 0x61, 0x98, 0x6c, 0x25, 0x24, 0xf2, 0x1d, 0xef, 0x26, - 0x9e, 0x97, 0x3e, 0x4d, 0xb6, 0x06, 0x2e, 0x1b, 0xed, 0x38, 0x85, 0x85, 0x6c, 0xe5, 0x66, 0x30, - 0x72, 0x27, 0xb9, 0x9b, 0x41, 0x3a, 0x15, 0xec, 0xff, 0x55, 0x4a, 0x19, 0x64, 0x2b, 0x11, 0x21, - 0x28, 0x80, 0xaa, 0x1f, 0x34, 0x95, 0xec, 0xbf, 0x56, 0x8c, 0xec, 0xbf, 0x11, 0x34, 0x8d, 0x1a, - 0x27, 0xf4, 0x5f, 0x8c, 0x39, 0x1f, 0x56, 0x04, 0x42, 0x56, 0xcb, 0x60, 0x00, 0xb1, 0xd1, 0x28, - 0x92, 0xb3, 0x2a, 0x02, 0xb1, 0x68, 0x32, 0xc2, 0x69, 0xbe, 0x68, 0x03, 0xaa, 0xeb, 0x41, 0x9c, - 0xc8, 0xed, 0xc7, 0x11, 0x77, 0x3a, 0x57, 0x83, 0x38, 0x61, 0x56, 0x84, 0x7a, 0x6d, 0xda, 0x12, - 0x63, 0xce, 0xc3, 0xfe, 0x2f, 0x56, 0xca, 0x83, 0x7d, 0x9b, 0x85, 0xaf, 0x6e, 0x12, 0x9f, 0x2e, - 0x6b, 0x33, 0xd0, 0xe7, 0x2f, 0x64, 0x92, 0x01, 0xdf, 0xd5, 0xab, 0xe2, 0xd4, 0x5d, 0x4a, 0x61, - 0x9c, 0x91, 0x30, 0x62, 0x82, 0x3e, 0x69, 0xa5, 0xd3, 0x32, 0x4b, 0x45, 0x6c, 0x30, 0xcc, 0xd4, - 0xe4, 0x7d, 0x33, 0x3c, 0xed, 0x2f, 0x5b, 0x30, 0x38, 0xe5, 0x34, 0x36, 0x82, 0xb5, 0x35, 0xf4, - 0x0c, 0xd4, 0x9a, 0x9d, 0xc8, 0xcc, 0x10, 0x55, 0xdb, 0xf6, 0x19, 0xd1, 0x8e, 0x15, 0x06, 0x9d, - 0xc3, 0x6b, 0x4e, 0x43, 0x26, 0x28, 0x97, 0xf9, 0x1c, 0xbe, 0xc2, 0x5a, 0xb0, 0x80, 0xa0, 0x17, - 0x60, 0xa8, 0xed, 0x6c, 0xc9, 0x87, 0xb3, 0xee, 0xf3, 0x05, 0x0d, 0xc2, 0x26, 0x9e, 0xfd, 0x2f, - 0x2d, 0x18, 0x9d, 0x72, 0x62, 0xb7, 0x31, 0xd9, 0x49, 0xd6, 0xa7, 0xdc, 0x64, 0xb5, 0xd3, 0xd8, - 0x20, 0x09, 0xcf, 0x4a, 0xa7, 0xbd, 0xec, 0xc4, 0x74, 0x29, 0xa9, 0x7d, 0x9d, 0xea, 0xe5, 0x4d, - 0xd1, 0x8e, 0x15, 0x06, 0x7a, 0x03, 0x86, 0x42, 0x27, 0x8e, 0xef, 0x06, 0x51, 0x13, 0x93, 0xb5, - 0x62, 0x6a, 0x42, 0x2c, 0x93, 0x46, 0x44, 0x12, 0x4c, 0xd6, 0xc4, 0x11, 0xaf, 0xa6, 0x8f, 0x4d, - 0x66, 0xf6, 0x17, 0x2d, 0x38, 0x3f, 0x45, 0x9c, 0x88, 0x44, 0xac, 0x84, 0x84, 0x7a, 0x91, 0x69, - 0x2f, 0xe8, 0x34, 0xd1, 0xeb, 0x50, 0x4b, 0x68, 0x33, 0xed, 0x96, 0x55, 0x6c, 0xb7, 0xd8, 0x09, - 0xed, 0x8a, 0x20, 0x8e, 0x15, 0x1b, 0xfb, 0xaf, 0x5b, 0x30, 0xcc, 0x0e, 0xbb, 0x66, 0x48, 0xe2, - 0xb8, 0x5e, 0x57, 0xa5, 0x25, 0xab, 0xcf, 0x4a, 0x4b, 0x17, 0xa1, 0xb2, 0x1e, 0xb4, 0x49, 0xf6, - 0xa0, 0xf6, 0x6a, 0x40, 0xb7, 0xd5, 0x14, 0x82, 0x9e, 0xa3, 0x1f, 0xde, 0xf5, 0x13, 0x87, 0x2e, - 0x01, 0xe9, 0x4c, 0x3d, 0xc9, 0x3f, 0xba, 0x6a, 0xc6, 0x26, 0x8e, 0xfd, 0x9b, 0x75, 0x18, 0x14, - 0xa7, 0xf9, 0x7d, 0x57, 0x26, 0x90, 0xfb, 0xfb, 0x52, 0xcf, 0xfd, 0x7d, 0x0c, 0x03, 0x0d, 0x56, - 0xc7, 0x4d, 0x98, 0x91, 0xd7, 0x0b, 0x09, 0xff, 0xe0, 0xa5, 0xe1, 0x74, 0xb7, 0xf8, 0x7f, 0x2c, - 0x58, 0xa1, 0x2f, 0x59, 0x70, 0xb2, 0x11, 0xf8, 0x3e, 0x69, 0x68, 0x1b, 0xa7, 0x52, 0xc4, 0x29, - 0xff, 0x74, 0x9a, 0xa8, 0x3e, 0x69, 0xc9, 0x00, 0x70, 0x96, 0x3d, 0x7a, 0x09, 0x4e, 0xf0, 0x31, - 0xbb, 0x95, 0xf2, 0x00, 0xeb, 0x02, 0x3c, 0x26, 0x10, 0xa7, 0x71, 0xd1, 0x38, 0xf7, 0xa4, 0x8b, - 0x52, 0x37, 0x03, 0xfa, 0xd8, 0xce, 0x28, 0x72, 0x63, 0x60, 0xa0, 0x08, 0x50, 0x44, 0xd6, 0x22, - 0x12, 0xaf, 0x8b, 0x68, 0x07, 0x66, 0x5f, 0x0d, 0x1e, 0x2e, 0x8b, 0x19, 0x77, 0x51, 0xc2, 0x39, - 0xd4, 0xd1, 0x86, 0xd8, 0x60, 0xd6, 0x8a, 0x90, 0xa1, 0xe2, 0x33, 0xf7, 0xdc, 0x67, 0x8e, 0x41, - 0x35, 0x5e, 0x77, 0xa2, 0x26, 0xb3, 0xeb, 0xca, 0x3c, 0x73, 0x66, 0x99, 0x36, 0x60, 0xde, 0x8e, - 0x66, 0xe0, 0x54, 0xa6, 0x7c, 0x50, 0x2c, 0x3c, 0xb5, 0x2a, 0x4b, 0x22, 0x53, 0x78, 0x28, 0xc6, - 0x5d, 0x4f, 0x98, 0xce, 0x87, 0xa1, 0x7d, 0x9c, 0x0f, 0xdb, 0x2a, 0xa6, 0x8e, 0xfb, 0x50, 0x5f, - 0x2e, 0x64, 0x00, 0xfa, 0x0a, 0xa0, 0xfb, 0x42, 0x26, 0x80, 0xee, 0x04, 0xeb, 0xc0, 0xad, 0x62, - 0x3a, 0x70, 0xf0, 0x68, 0xb9, 0x07, 0x19, 0xfd, 0xf6, 0x67, 0x16, 0xc8, 0xef, 0x3a, 0xed, 0x34, - 0xd6, 0x09, 0x9d, 0x32, 0xe8, 0xfd, 0x30, 0xa2, 0xb6, 0xd0, 0xd3, 0x41, 0xc7, 0xe7, 0x81, 0x6f, - 0x65, 0x7d, 0x24, 0x8b, 0x53, 0x50, 0x9c, 0xc1, 0x46, 0x13, 0x50, 0xa7, 0xe3, 0xc4, 0x1f, 0xe5, - 0xba, 0x56, 0x6d, 0xd3, 0x27, 0x97, 0xe6, 0xc4, 0x53, 0x1a, 0x07, 0x05, 0x70, 0xda, 0x73, 0xe2, - 0x84, 0xf5, 0x80, 0xee, 0xa8, 0x0f, 0x59, 0x43, 0x80, 0x85, 0xe2, 0xcf, 0x67, 0x09, 0xe1, 0x6e, - 0xda, 0xf6, 0xb7, 0x2b, 0x70, 0x22, 0x25, 0x19, 0x0f, 0xa8, 0xa4, 0x9f, 0x81, 0x9a, 0xd4, 0x9b, - 0xd9, 0x6a, 0x27, 0x4a, 0xb9, 0x2a, 0x0c, 0xaa, 0xb4, 0x56, 0xb5, 0x56, 0xcd, 0x1a, 0x15, 0x86, - 0xc2, 0xc5, 0x26, 0x1e, 0x13, 0xca, 0x89, 0x17, 0x4f, 0x7b, 0x2e, 0xf1, 0x13, 0xde, 0xcd, 0x62, - 0x84, 0xf2, 0xca, 0xfc, 0xb2, 0x49, 0x54, 0x0b, 0xe5, 0x0c, 0x00, 0x67, 0xd9, 0xa3, 0xcf, 0x58, - 0x70, 0xc2, 0xb9, 0x1b, 0xeb, 0x62, 0xa3, 0x22, 0x54, 0xee, 0x88, 0x4a, 0x2a, 0x55, 0xbf, 0x94, - 0xbb, 0x7c, 0x53, 0x4d, 0x38, 0xcd, 0x14, 0xbd, 0x65, 0x01, 0x22, 0x5b, 0xa4, 0x21, 0x83, 0xf9, - 0x44, 0x5f, 0x06, 0x8a, 0xd8, 0x69, 0x5e, 0xee, 0xa2, 0xcb, 0xa5, 0x7a, 0x77, 0x3b, 0xce, 0xe9, - 0x83, 0xfd, 0xcf, 0xca, 0x6a, 0x41, 0xe9, 0xf8, 0x51, 0xc7, 0x88, 0x63, 0xb3, 0x0e, 0x1f, 0xc7, - 0xa6, 0xe3, 0x01, 0xba, 0x53, 0x13, 0x53, 0x99, 0x4c, 0xa5, 0x07, 0x94, 0xc9, 0xf4, 0x53, 0x56, - 0xaa, 0xae, 0xcf, 0xd0, 0xa5, 0x57, 0x8a, 0x8d, 0x5d, 0x1d, 0xe7, 0xb1, 0x0a, 0x19, 0xe9, 0x9e, - 0x0e, 0x51, 0xa1, 0xd2, 0xd4, 0x40, 0x3b, 0x90, 0x34, 0xfc, 0x0f, 0x65, 0x18, 0x32, 0x34, 0x69, - 0xae, 0x59, 0x64, 0x3d, 0x64, 0x66, 0x51, 0xe9, 0x00, 0x66, 0xd1, 0x4f, 0x42, 0xbd, 0x21, 0xa5, - 0x7c, 0x31, 0x95, 0x6d, 0xb3, 0xba, 0x43, 0x0b, 0x7a, 0xd5, 0x84, 0x35, 0x4f, 0x34, 0x9b, 0x4a, - 0x9c, 0x11, 0x1a, 0xa2, 0xc2, 0x34, 0x44, 0x5e, 0x66, 0x8b, 0xd0, 0x14, 0xdd, 0xcf, 0xb0, 0xf2, - 0x4f, 0xa1, 0x2b, 0xde, 0x4b, 0x46, 0x98, 0xf3, 0xf2, 0x4f, 0x4b, 0x73, 0xb2, 0x19, 0x9b, 0x38, - 0xf6, 0xb7, 0x2d, 0xf5, 0x71, 0xef, 0x43, 0xa1, 0x83, 0x3b, 0xe9, 0x42, 0x07, 0x97, 0x0b, 0x19, - 0xe6, 0x1e, 0x15, 0x0e, 0x6e, 0xc0, 0xe0, 0x74, 0xd0, 0x6e, 0x3b, 0x7e, 0x13, 0xfd, 0x20, 0x0c, - 0x36, 0xf8, 0x4f, 0xe1, 0xd8, 0x61, 0xc7, 0x83, 0x02, 0x8a, 0x25, 0x0c, 0x3d, 0x06, 0x15, 0x27, - 0x6a, 0x49, 0x67, 0x0e, 0x0b, 0x6d, 0x99, 0x8c, 0x5a, 0x31, 0x66, 0xad, 0xf6, 0x3f, 0xaa, 0x00, - 0x4c, 0x07, 0xed, 0xd0, 0x89, 0x48, 0x73, 0x25, 0x60, 0x95, 0xf5, 0x8e, 0xf5, 0x50, 0x4d, 0x6f, - 0x96, 0x1e, 0xe6, 0x83, 0x35, 0xe3, 0x70, 0xa5, 0x7c, 0x9f, 0x0f, 0x57, 0x7a, 0x9c, 0x97, 0x55, - 0x1e, 0xa2, 0xf3, 0x32, 0xfb, 0xf3, 0x16, 0x20, 0x3a, 0x69, 0x02, 0x9f, 0xf8, 0x89, 0x3e, 0xd0, - 0x9e, 0x80, 0x7a, 0x43, 0xb6, 0x0a, 0xc3, 0x4a, 0x8b, 0x08, 0x09, 0xc0, 0x1a, 0xa7, 0x8f, 0x1d, - 0xf2, 0x93, 0x52, 0x7e, 0x97, 0xd3, 0x51, 0xb1, 0x4c, 0xea, 0x0b, 0x71, 0x6e, 0xff, 0x56, 0x09, - 0x1e, 0xe1, 0x2a, 0x79, 0xc1, 0xf1, 0x9d, 0x16, 0x69, 0xd3, 0x5e, 0xf5, 0x1b, 0xa2, 0xd0, 0xa0, - 0x5b, 0x33, 0x57, 0x46, 0xb9, 0x1e, 0x75, 0xed, 0xf2, 0x35, 0xc7, 0x57, 0xd9, 0x9c, 0xef, 0x26, - 0x98, 0x11, 0x47, 0x31, 0xd4, 0x64, 0x29, 0x77, 0x21, 0x8b, 0x0b, 0x62, 0xa4, 0xc4, 0x92, 0xd0, - 0x9b, 0x04, 0x2b, 0x46, 0xd4, 0x70, 0xf5, 0x82, 0xc6, 0x06, 0x26, 0x61, 0xc0, 0xe4, 0xae, 0x11, - 0x64, 0x38, 0x2f, 0xda, 0xb1, 0xc2, 0xb0, 0x7f, 0xcb, 0x82, 0xac, 0x46, 0x32, 0x4a, 0x98, 0x59, - 0x7b, 0x96, 0x30, 0x3b, 0x40, 0x0d, 0xb1, 0x1f, 0x87, 0x21, 0x27, 0xa1, 0x46, 0x04, 0xdf, 0x76, - 0x97, 0x0f, 0x77, 0xac, 0xb1, 0x10, 0x34, 0xdd, 0x35, 0x97, 0x6d, 0xb7, 0x4d, 0x72, 0xf6, 0xff, - 0xa8, 0xc0, 0xe9, 0xae, 0x5c, 0x0c, 0xf4, 0x22, 0x0c, 0x37, 0xc4, 0xf4, 0x08, 0xa5, 0x43, 0xab, - 0x6e, 0x06, 0xa5, 0x69, 0x18, 0x4e, 0x61, 0xf6, 0x31, 0x41, 0xe7, 0xe0, 0x4c, 0x44, 0x37, 0xfa, - 0x1d, 0x32, 0xb9, 0x96, 0x90, 0x68, 0x99, 0x34, 0x02, 0xbf, 0xc9, 0x0b, 0xed, 0x95, 0xa7, 0x1e, - 0xdd, 0xdd, 0x19, 0x3b, 0x83, 0xbb, 0xc1, 0x38, 0xef, 0x19, 0x14, 0xc2, 0x09, 0xcf, 0xb4, 0x01, - 0xc5, 0x06, 0xe0, 0x50, 0xe6, 0xa3, 0xb2, 0x11, 0x52, 0xcd, 0x38, 0xcd, 0x20, 0x6d, 0x48, 0x56, - 0x1f, 0x90, 0x21, 0xf9, 0x69, 0x6d, 0x48, 0xf2, 0xf3, 0xf7, 0x0f, 0x17, 0x9c, 0x8b, 0x73, 0xdc, - 0x96, 0xe4, 0xcb, 0x50, 0x93, 0xb1, 0x49, 0x7d, 0xc5, 0xf4, 0x98, 0x74, 0x7a, 0x48, 0xb4, 0x7b, - 0x25, 0xc8, 0xd9, 0x84, 0xd0, 0x75, 0xa6, 0x35, 0x7e, 0x6a, 0x9d, 0x1d, 0x4c, 0xeb, 0xa3, 0x2d, - 0x1e, 0x97, 0xc5, 0x75, 0xdb, 0x87, 0x8a, 0xde, 0x44, 0xe9, 0x50, 0x2d, 0x95, 0xa2, 0xa0, 0xc2, - 0xb5, 0x2e, 0x01, 0x68, 0x43, 0x4d, 0x04, 0xa0, 0xab, 0x63, 0x5f, 0x6d, 0xcf, 0x61, 0x03, 0x8b, - 0xee, 0xa9, 0x5d, 0x3f, 0x4e, 0x1c, 0xcf, 0xbb, 0xea, 0xfa, 0x89, 0x70, 0x0e, 0x2a, 0x25, 0x3e, - 0xa7, 0x41, 0xd8, 0xc4, 0xbb, 0xf0, 0x5e, 0xe3, 0xbb, 0x1c, 0xe4, 0x7b, 0xae, 0xc3, 0xf9, 0x59, - 0x37, 0x51, 0x69, 0x13, 0x6a, 0x1e, 0x51, 0x3b, 0x4c, 0xa5, 0x01, 0x59, 0x3d, 0xd3, 0x80, 0x8c, - 0xb4, 0x85, 0x52, 0x3a, 0xcb, 0x22, 0x9b, 0xb6, 0x60, 0xbf, 0x08, 0x67, 0x67, 0xdd, 0xe4, 0x8a, - 0xeb, 0x91, 0x03, 0x32, 0xb1, 0x7f, 0x63, 0x00, 0x86, 0xcd, 0xc4, 0xbb, 0x83, 0x64, 0x32, 0x7d, - 0x91, 0x9a, 0x5a, 0xe2, 0xed, 0x5c, 0x75, 0x68, 0x76, 0xfb, 0xc8, 0x59, 0x80, 0xf9, 0x23, 0x66, - 0x58, 0x5b, 0x9a, 0x27, 0x36, 0x3b, 0x80, 0xee, 0x42, 0x75, 0x8d, 0x85, 0xd5, 0x97, 0x8b, 0x88, - 0x2c, 0xc8, 0x1b, 0x51, 0xbd, 0xcc, 0x78, 0x60, 0x3e, 0xe7, 0x47, 0x35, 0x64, 0x94, 0xce, 0xd5, - 0x32, 0x42, 0x41, 0x45, 0x96, 0x96, 0xc2, 0xe8, 0x25, 0xea, 0xab, 0x87, 0x10, 0xf5, 0x29, 0xc1, - 0x3b, 0xf0, 0x80, 0x04, 0x2f, 0x4b, 0x91, 0x48, 0xd6, 0x99, 0xfd, 0x26, 0x62, 0xd7, 0x07, 0xd9, - 0x20, 0x18, 0x29, 0x12, 0x29, 0x30, 0xce, 0xe2, 0xa3, 0x4f, 0x28, 0xd1, 0x5d, 0x2b, 0xc2, 0xaf, - 0x6a, 0xce, 0xe8, 0xe3, 0x96, 0xda, 0x9f, 0x2f, 0xc1, 0xc8, 0xac, 0xdf, 0x59, 0x9a, 0x5d, 0xea, - 0xac, 0x7a, 0x6e, 0xe3, 0x3a, 0xd9, 0xa6, 0xa2, 0x79, 0x83, 0x6c, 0xcf, 0xcd, 0x88, 0x15, 0xa4, - 0xe6, 0xcc, 0x75, 0xda, 0x88, 0x39, 0x8c, 0x0a, 0xa3, 0x35, 0xd7, 0x6f, 0x91, 0x28, 0x8c, 0x5c, - 0xe1, 0xf2, 0x34, 0x84, 0xd1, 0x15, 0x0d, 0xc2, 0x26, 0x1e, 0xa5, 0x1d, 0xdc, 0xf5, 0x49, 0x94, - 0x35, 0x64, 0x17, 0x69, 0x23, 0xe6, 0x30, 0x8a, 0x94, 0x44, 0x9d, 0x38, 0x11, 0x93, 0x51, 0x21, - 0xad, 0xd0, 0x46, 0xcc, 0x61, 0x74, 0xa5, 0xc7, 0x9d, 0x55, 0x16, 0xb8, 0x91, 0x09, 0x94, 0x5f, - 0xe6, 0xcd, 0x58, 0xc2, 0x29, 0xea, 0x06, 0xd9, 0x9e, 0xa1, 0xbb, 0xde, 0x4c, 0xbe, 0xcc, 0x75, - 0xde, 0x8c, 0x25, 0x9c, 0x55, 0x08, 0x4c, 0x0f, 0xc7, 0xf7, 0x5c, 0x85, 0xc0, 0x74, 0xf7, 0x7b, - 0xec, 0x9f, 0x7f, 0xc9, 0x82, 0x61, 0x33, 0xdc, 0x0a, 0xb5, 0x32, 0x36, 0xee, 0x62, 0x57, 0x81, - 0xd9, 0x1f, 0xcd, 0xbb, 0x71, 0xab, 0xe5, 0x26, 0x41, 0x18, 0x3f, 0x4b, 0xfc, 0x96, 0xeb, 0x13, - 0x76, 0x8a, 0xce, 0xc3, 0xb4, 0x52, 0xb1, 0x5c, 0xd3, 0x41, 0x93, 0x1c, 0xc2, 0x48, 0xb6, 0x6f, - 0xc3, 0xe9, 0xae, 0x24, 0xa9, 0x3e, 0x4c, 0x8b, 0x7d, 0x53, 0x54, 0x6d, 0x0c, 0x43, 0x94, 0xb0, - 0xac, 0x52, 0x33, 0x0d, 0xa7, 0xf9, 0x42, 0xa2, 0x9c, 0x96, 0x1b, 0xeb, 0xa4, 0xad, 0x12, 0xdf, - 0x98, 0x7f, 0xfd, 0x56, 0x16, 0x88, 0xbb, 0xf1, 0xed, 0x2f, 0x58, 0x70, 0x22, 0x95, 0xb7, 0x56, - 0x90, 0x11, 0xc4, 0x56, 0x5a, 0xc0, 0xa2, 0xff, 0x58, 0x08, 0x74, 0x99, 0x29, 0x53, 0xbd, 0xd2, - 0x34, 0x08, 0x9b, 0x78, 0xf6, 0x97, 0x4b, 0x50, 0x93, 0x11, 0x14, 0x7d, 0x74, 0xe5, 0x73, 0x16, - 0x9c, 0x50, 0x67, 0x1a, 0xcc, 0x59, 0x56, 0x2a, 0x22, 0xc9, 0x80, 0xf6, 0x40, 0x6d, 0xb7, 0xfd, - 0xb5, 0x40, 0x5b, 0xe4, 0xd8, 0x64, 0x86, 0xd3, 0xbc, 0xd1, 0x2d, 0x80, 0x78, 0x3b, 0x4e, 0x48, - 0xdb, 0x70, 0xdb, 0xd9, 0xc6, 0x8a, 0x1b, 0x6f, 0x04, 0x11, 0xa1, 0xeb, 0xeb, 0x46, 0xd0, 0x24, - 0xcb, 0x0a, 0x53, 0x9b, 0x50, 0xba, 0x0d, 0x1b, 0x94, 0xec, 0x7f, 0x50, 0x82, 0x53, 0xd9, 0x2e, - 0xa1, 0x0f, 0xc3, 0xb0, 0xe4, 0x6e, 0xdc, 0x1e, 0x26, 0xc3, 0x46, 0x86, 0xb1, 0x01, 0xbb, 0xb7, - 0x33, 0x36, 0xd6, 0x7d, 0x7b, 0xdb, 0xb8, 0x89, 0x82, 0x53, 0xc4, 0xf8, 0xc1, 0x92, 0x38, 0x01, - 0x9d, 0xda, 0x9e, 0x0c, 0x43, 0x71, 0x3a, 0x64, 0x1c, 0x2c, 0x99, 0x50, 0x9c, 0xc1, 0x46, 0x4b, - 0x70, 0xd6, 0x68, 0xb9, 0x41, 0xdc, 0xd6, 0xfa, 0x6a, 0x10, 0xc9, 0x9d, 0xd5, 0x63, 0x3a, 0xb0, - 0xab, 0x1b, 0x07, 0xe7, 0x3e, 0x49, 0xb5, 0x7d, 0xc3, 0x09, 0x9d, 0x86, 0x9b, 0x6c, 0x0b, 0x3f, - 0xa4, 0x92, 0x4d, 0xd3, 0xa2, 0x1d, 0x2b, 0x0c, 0x7b, 0x01, 0x2a, 0x7d, 0xce, 0xa0, 0xbe, 0x2c, - 0xfa, 0x97, 0xa1, 0x46, 0xc9, 0x49, 0xf3, 0xae, 0x08, 0x92, 0x01, 0xd4, 0xe4, 0x05, 0x20, 0xc8, - 0x86, 0xb2, 0xeb, 0xc8, 0xb3, 0x3b, 0xf5, 0x5a, 0x73, 0x71, 0xdc, 0x61, 0x9b, 0x64, 0x0a, 0x44, - 0x4f, 0x42, 0x99, 0x6c, 0x85, 0xd9, 0x43, 0xba, 0xcb, 0x5b, 0xa1, 0x1b, 0x91, 0x98, 0x22, 0x91, - 0xad, 0x10, 0x5d, 0x80, 0x92, 0xdb, 0x14, 0x4a, 0x0a, 0x04, 0x4e, 0x69, 0x6e, 0x06, 0x97, 0xdc, - 0xa6, 0xbd, 0x05, 0x75, 0x75, 0xe3, 0x08, 0xda, 0x90, 0xb2, 0xdb, 0x2a, 0x22, 0xe4, 0x49, 0xd2, - 0xed, 0x21, 0xb5, 0x3b, 0x00, 0x3a, 0x81, 0xaf, 0x28, 0xf9, 0x72, 0x11, 0x2a, 0x8d, 0x40, 0x24, - 0x17, 0xd7, 0x34, 0x19, 0x26, 0xb4, 0x19, 0xc4, 0xbe, 0x0d, 0x23, 0xd7, 0xfd, 0xe0, 0x2e, 0x2b, - 0x97, 0xce, 0xaa, 0x83, 0x51, 0xc2, 0x6b, 0xf4, 0x47, 0xd6, 0x44, 0x60, 0x50, 0xcc, 0x61, 0xaa, - 0xde, 0x52, 0xa9, 0x57, 0xbd, 0x25, 0xfb, 0x93, 0x16, 0x0c, 0xab, 0x4c, 0xa0, 0xd9, 0xcd, 0x0d, - 0x4a, 0xb7, 0x15, 0x05, 0x9d, 0x30, 0x4b, 0x97, 0xdd, 0x09, 0x84, 0x39, 0xcc, 0x4c, 0x91, 0x2b, - 0xed, 0x93, 0x22, 0x77, 0x11, 0x2a, 0x1b, 0xae, 0xdf, 0xcc, 0x5e, 0x72, 0x71, 0xdd, 0xf5, 0x9b, - 0x98, 0x41, 0x68, 0x17, 0x4e, 0xa9, 0x2e, 0x48, 0x85, 0xf0, 0x22, 0x0c, 0xaf, 0x76, 0x5c, 0xaf, - 0x29, 0xcb, 0x9e, 0x65, 0x3c, 0x25, 0x53, 0x06, 0x0c, 0xa7, 0x30, 0xe9, 0xbe, 0x6e, 0xd5, 0xf5, - 0x9d, 0x68, 0x7b, 0x49, 0x6b, 0x20, 0x25, 0x94, 0xa6, 0x14, 0x04, 0x1b, 0x58, 0xf6, 0x9b, 0x65, - 0x18, 0x49, 0xe7, 0x43, 0xf5, 0xb1, 0xbd, 0x7a, 0x12, 0xaa, 0x2c, 0x45, 0x2a, 0xfb, 0x69, 0xd9, - 0xf3, 0x98, 0xc3, 0x50, 0x0c, 0x03, 0xbc, 0xb8, 0x42, 0x31, 0x17, 0xc4, 0xa8, 0x4e, 0x2a, 0xff, - 0x0a, 0x8b, 0x27, 0x13, 0xf5, 0x1c, 0x04, 0x2b, 0xf4, 0x19, 0x0b, 0x06, 0x83, 0xd0, 0xac, 0xd3, - 0xf3, 0xa1, 0x22, 0x73, 0xc5, 0x44, 0xb2, 0x8c, 0xb0, 0x88, 0xd5, 0xa7, 0x97, 0x9f, 0x43, 0xb2, - 0xbe, 0xf0, 0x3e, 0x18, 0x36, 0x31, 0xf7, 0x33, 0x8a, 0x6b, 0xa6, 0x51, 0xfc, 0x39, 0x73, 0x52, - 0x88, 0x6c, 0xb8, 0x3e, 0x96, 0xdb, 0x4d, 0xa8, 0x36, 0x54, 0x00, 0xc0, 0xa1, 0x8a, 0x65, 0xaa, - 0x6a, 0x07, 0xec, 0x10, 0x88, 0x53, 0xb3, 0xbf, 0x6d, 0x19, 0xf3, 0x03, 0x93, 0x78, 0xae, 0x89, - 0x22, 0x28, 0xb7, 0x36, 0x37, 0x84, 0x29, 0x7a, 0xad, 0xa0, 0xe1, 0x9d, 0xdd, 0xdc, 0xd0, 0x73, - 0xdc, 0x6c, 0xc5, 0x94, 0x59, 0x1f, 0x4e, 0xc0, 0x54, 0xd2, 0x64, 0x79, 0xff, 0xa4, 0x49, 0xfb, - 0xad, 0x12, 0x9c, 0xee, 0x9a, 0x54, 0xe8, 0x0d, 0xa8, 0x46, 0xf4, 0x2d, 0xc5, 0xeb, 0xcd, 0x17, - 0x96, 0xe6, 0x18, 0xcf, 0x35, 0xb5, 0xde, 0x4d, 0xb7, 0x63, 0xce, 0x12, 0x5d, 0x03, 0xa4, 0xc3, - 0x54, 0x94, 0x07, 0x92, 0xbf, 0xf2, 0x05, 0xf1, 0x28, 0x9a, 0xec, 0xc2, 0xc0, 0x39, 0x4f, 0xa1, - 0x97, 0xb2, 0x8e, 0xcc, 0x72, 0xfa, 0xdc, 0x72, 0x2f, 0x9f, 0xa4, 0xfd, 0xcf, 0x4b, 0x70, 0x22, - 0x55, 0x36, 0x09, 0x79, 0x50, 0x23, 0x1e, 0x73, 0xea, 0x4b, 0x65, 0x73, 0xd4, 0x62, 0xc2, 0x4a, - 0x41, 0x5e, 0x16, 0x74, 0xb1, 0xe2, 0xf0, 0x70, 0x1c, 0xae, 0xbf, 0x08, 0xc3, 0xb2, 0x43, 0x1f, - 0x72, 0xda, 0x9e, 0x18, 0x40, 0x35, 0x47, 0x2f, 0x1b, 0x30, 0x9c, 0xc2, 0xb4, 0x7f, 0xbb, 0x0c, - 0xa3, 0xfc, 0x14, 0xa4, 0xa9, 0x66, 0xde, 0x82, 0xdc, 0x6f, 0xfd, 0x65, 0x5d, 0xdc, 0x8c, 0x0f, - 0xe4, 0xea, 0x51, 0x6b, 0xf7, 0xe7, 0x33, 0xea, 0x2b, 0x32, 0xeb, 0x17, 0x32, 0x91, 0x59, 0xdc, - 0xec, 0x6e, 0x1d, 0x53, 0x8f, 0xbe, 0xb7, 0x42, 0xb5, 0xfe, 0x6e, 0x09, 0x4e, 0x66, 0x2e, 0x46, - 0x40, 0x6f, 0xa6, 0x6b, 0xe9, 0x5a, 0x45, 0xf8, 0xca, 0xf7, 0xac, 0x95, 0x7f, 0xb0, 0x8a, 0xba, - 0x0f, 0x68, 0xa9, 0xd8, 0xbf, 0x57, 0x82, 0x91, 0xf4, 0x8d, 0x0e, 0x0f, 0xe1, 0x48, 0xbd, 0x1b, - 0xea, 0xac, 0x68, 0x39, 0xbb, 0xa9, 0x92, 0xbb, 0xe4, 0x79, 0x7d, 0x68, 0xd9, 0x88, 0x35, 0xfc, - 0xa1, 0x28, 0x54, 0x6c, 0xff, 0x3d, 0x0b, 0xce, 0xf1, 0xb7, 0xcc, 0xce, 0xc3, 0xbf, 0x92, 0x37, - 0xba, 0xaf, 0x16, 0xdb, 0xc1, 0x4c, 0x51, 0xbe, 0xfd, 0xc6, 0x97, 0xdd, 0x90, 0x27, 0x7a, 0x9b, - 0x9e, 0x0a, 0x0f, 0x61, 0x67, 0x0f, 0x34, 0x19, 0xec, 0xdf, 0x2b, 0x83, 0xbe, 0x14, 0x10, 0xb9, - 0x22, 0xc7, 0xb1, 0x90, 0xe2, 0x84, 0xcb, 0xdb, 0x7e, 0x43, 0x5f, 0x3f, 0x58, 0xcb, 0xa4, 0x38, - 0xfe, 0xac, 0x05, 0x43, 0xae, 0xef, 0x26, 0xae, 0xc3, 0xb6, 0xd1, 0xc5, 0x5c, 0x58, 0xa6, 0xd8, - 0xcd, 0x71, 0xca, 0x41, 0x64, 0x9e, 0xe3, 0x28, 0x66, 0xd8, 0xe4, 0x8c, 0x3e, 0x2a, 0x82, 0xa7, - 0xcb, 0x85, 0x65, 0xe7, 0xd6, 0x32, 0x11, 0xd3, 0x21, 0x35, 0xbc, 0x92, 0xa8, 0xa0, 0xa4, 0x76, - 0x4c, 0x49, 0xa9, 0x3a, 0xb7, 0xfa, 0x7a, 0x66, 0xda, 0x8c, 0x39, 0x23, 0x3b, 0x06, 0xd4, 0x3d, - 0x16, 0x07, 0x0c, 0x4c, 0x9d, 0x80, 0xba, 0xd3, 0x49, 0x82, 0x36, 0x1d, 0x26, 0x71, 0xd4, 0xa4, - 0x43, 0x6f, 0x25, 0x00, 0x6b, 0x1c, 0xfb, 0xcd, 0x2a, 0x64, 0x92, 0x0e, 0xd1, 0x96, 0x79, 0xa1, - 0xa5, 0x55, 0xec, 0x85, 0x96, 0xaa, 0x33, 0x79, 0x97, 0x5a, 0xa2, 0x16, 0x54, 0xc3, 0x75, 0x27, - 0x96, 0x66, 0xf5, 0xcb, 0x6a, 0x1f, 0x47, 0x1b, 0xef, 0xed, 0x8c, 0xfd, 0x58, 0x7f, 0x5e, 0x57, - 0x3a, 0x57, 0x27, 0x78, 0xf1, 0x10, 0xcd, 0x9a, 0xd1, 0xc0, 0x9c, 0xfe, 0x41, 0xae, 0x6c, 0xfb, - 0x94, 0xa8, 0xce, 0x8e, 0x49, 0xdc, 0xf1, 0x12, 0x31, 0x1b, 0x5e, 0x2e, 0x70, 0x95, 0x71, 0xc2, - 0x3a, 0x5d, 0x9e, 0xff, 0xc7, 0x06, 0x53, 0xf4, 0x61, 0xa8, 0xc7, 0x89, 0x13, 0x25, 0x87, 0x4c, - 0x70, 0x55, 0x83, 0xbe, 0x2c, 0x89, 0x60, 0x4d, 0x0f, 0xbd, 0xc2, 0x6a, 0xb5, 0xba, 0xf1, 0xfa, - 0x21, 0x73, 0x1e, 0x64, 0x5d, 0x57, 0x41, 0x01, 0x1b, 0xd4, 0xd0, 0x25, 0x00, 0x36, 0xb7, 0x79, - 0xa0, 0x5f, 0x8d, 0x79, 0x99, 0x94, 0x28, 0xc4, 0x0a, 0x82, 0x0d, 0x2c, 0xfb, 0x87, 0x21, 0x5d, - 0xef, 0x01, 0x8d, 0xc9, 0xf2, 0x12, 0xdc, 0x0b, 0xcd, 0x72, 0x17, 0x52, 0x95, 0x20, 0x7e, 0xcd, - 0x02, 0xb3, 0x28, 0x05, 0x7a, 0x9d, 0x57, 0xbf, 0xb0, 0x8a, 0x38, 0x39, 0x34, 0xe8, 0x8e, 0x2f, - 0x38, 0x61, 0xe6, 0x08, 0x5b, 0x96, 0xc0, 0xb8, 0xf0, 0x5e, 0xa8, 0x49, 0xe8, 0x81, 0x8c, 0xba, - 0x4f, 0xc0, 0x99, 0xec, 0x75, 0xdf, 0xe2, 0xd4, 0x69, 0x7f, 0xd7, 0x8f, 0xf4, 0xe7, 0x94, 0x7a, - 0xf9, 0x73, 0xfa, 0xb8, 0xd6, 0xf4, 0xd7, 0x2d, 0xb8, 0xb8, 0xdf, 0xad, 0xe4, 0xe8, 0x31, 0xa8, - 0xdc, 0x75, 0x22, 0x59, 0x44, 0x9b, 0x09, 0xca, 0xdb, 0x4e, 0xe4, 0x63, 0xd6, 0x8a, 0xb6, 0x61, - 0x80, 0x47, 0x83, 0x09, 0x6b, 0xfd, 0xe5, 0x62, 0xef, 0x48, 0xbf, 0x4e, 0x8c, 0xed, 0x02, 0x8f, - 0x44, 0xc3, 0x82, 0xa1, 0xfd, 0x1d, 0x0b, 0xd0, 0xe2, 0x26, 0x89, 0x22, 0xb7, 0x69, 0xc4, 0xaf, - 0xb1, 0x5b, 0x4e, 0x8c, 0xdb, 0x4c, 0xcc, 0x14, 0xd7, 0xcc, 0x2d, 0x27, 0xc6, 0xbf, 0xfc, 0x5b, - 0x4e, 0x4a, 0x07, 0xbb, 0xe5, 0x04, 0x2d, 0xc2, 0xb9, 0x36, 0xdf, 0x6e, 0xf0, 0x9b, 0x03, 0xf8, - 0xde, 0x43, 0x25, 0x94, 0x9d, 0xdf, 0xdd, 0x19, 0x3b, 0xb7, 0x90, 0x87, 0x80, 0xf3, 0x9f, 0xb3, - 0xdf, 0x0b, 0x88, 0x87, 0xad, 0x4d, 0xe7, 0xc5, 0x20, 0xf5, 0x74, 0xbf, 0xd8, 0x5f, 0xad, 0xc2, - 0xc9, 0x4c, 0x89, 0x55, 0xba, 0xd5, 0xeb, 0x0e, 0x7a, 0x3a, 0xb2, 0xfe, 0xee, 0xee, 0x5e, 0x5f, - 0x61, 0x54, 0x3e, 0x54, 0x5d, 0x3f, 0xec, 0x24, 0xc5, 0xe4, 0x90, 0xf2, 0x4e, 0xcc, 0x51, 0x82, - 0x86, 0xbb, 0x98, 0xfe, 0xc5, 0x9c, 0x4d, 0x91, 0x41, 0x59, 0x29, 0x63, 0xbc, 0xf2, 0x80, 0xdc, - 0x01, 0x9f, 0xd2, 0x21, 0x52, 0xd5, 0x22, 0x1c, 0x8b, 0x99, 0xc9, 0x72, 0xdc, 0x47, 0xed, 0xbf, - 0x5a, 0x82, 0x21, 0xe3, 0xa3, 0xa1, 0x5f, 0x4c, 0x97, 0x6c, 0xb2, 0x8a, 0x7b, 0x25, 0x46, 0x7f, - 0x5c, 0x17, 0x65, 0xe2, 0xaf, 0xf4, 0x54, 0x77, 0xb5, 0xa6, 0x7b, 0x3b, 0x63, 0xa7, 0x32, 0xf5, - 0x98, 0x52, 0x15, 0x9c, 0x2e, 0x7c, 0x1c, 0x4e, 0x66, 0xc8, 0xe4, 0xbc, 0xf2, 0x4a, 0xfa, 0x36, - 0xf7, 0x23, 0xba, 0xa5, 0xcc, 0x21, 0xfb, 0x06, 0x1d, 0x32, 0x91, 0x46, 0x17, 0x78, 0xa4, 0x0f, - 0x1f, 0x6c, 0x26, 0x5b, 0xb6, 0xd4, 0x67, 0xb6, 0xec, 0xd3, 0x50, 0x0b, 0x03, 0xcf, 0x6d, 0xb8, - 0xaa, 0xaa, 0x20, 0xcb, 0xcf, 0x5d, 0x12, 0x6d, 0x58, 0x41, 0xd1, 0x5d, 0xa8, 0xab, 0x8b, 0xef, - 0x85, 0x7f, 0xbb, 0xa8, 0x43, 0x1f, 0x65, 0xb4, 0xe8, 0x0b, 0xed, 0x35, 0x2f, 0x64, 0xc3, 0x00, - 0x53, 0x82, 0x32, 0xf4, 0x9f, 0xf9, 0xde, 0x99, 0x76, 0x8c, 0xb1, 0x80, 0xd8, 0x5f, 0xaf, 0xc3, - 0xd9, 0xbc, 0x3a, 0xd7, 0xe8, 0x63, 0x30, 0xc0, 0xfb, 0x58, 0xcc, 0x55, 0x0a, 0x79, 0x3c, 0x66, - 0x19, 0x41, 0xd1, 0x2d, 0xf6, 0x1b, 0x0b, 0x9e, 0x82, 0xbb, 0xe7, 0xac, 0x8a, 0x19, 0x72, 0x3c, - 0xdc, 0xe7, 0x1d, 0xcd, 0x7d, 0xde, 0xe1, 0xdc, 0x3d, 0x67, 0x15, 0x6d, 0x41, 0xb5, 0xe5, 0x26, - 0xc4, 0x11, 0x4e, 0x84, 0xdb, 0xc7, 0xc2, 0x9c, 0x38, 0xdc, 0x4a, 0x63, 0x3f, 0x31, 0x67, 0x88, - 0xbe, 0x66, 0xc1, 0xc9, 0xd5, 0x74, 0x6a, 0xbc, 0x10, 0x9e, 0xce, 0x31, 0xd4, 0x32, 0x4f, 0x33, - 0xe2, 0xd7, 0xfc, 0x64, 0x1a, 0x71, 0xb6, 0x3b, 0xe8, 0xd3, 0x16, 0x0c, 0xae, 0xb9, 0x9e, 0x51, - 0xd6, 0xf6, 0x18, 0x3e, 0xce, 0x15, 0xc6, 0x40, 0xef, 0x38, 0xf8, 0xff, 0x18, 0x4b, 0xce, 0xbd, - 0x34, 0xd5, 0xc0, 0x51, 0x35, 0xd5, 0xe0, 0x03, 0xd2, 0x54, 0x9f, 0xb5, 0xa0, 0xae, 0x46, 0x5a, - 0xa4, 0x3b, 0x7f, 0xf8, 0x18, 0x3f, 0x39, 0xf7, 0x9c, 0xa8, 0xbf, 0x58, 0x33, 0x47, 0x5f, 0xb2, - 0x60, 0xc8, 0x79, 0xa3, 0x13, 0x91, 0x26, 0xd9, 0x0c, 0xc2, 0x58, 0xdc, 0x11, 0xf8, 0x6a, 0xf1, - 0x9d, 0x99, 0xa4, 0x4c, 0x66, 0xc8, 0xe6, 0x62, 0x18, 0x8b, 0xb4, 0x24, 0xdd, 0x80, 0xcd, 0x2e, - 0xd8, 0x3b, 0x25, 0x18, 0xdb, 0x87, 0x02, 0x7a, 0x11, 0x86, 0x83, 0xa8, 0xe5, 0xf8, 0xee, 0x1b, - 0x66, 0xad, 0x0b, 0x65, 0x65, 0x2d, 0x1a, 0x30, 0x9c, 0xc2, 0x34, 0x13, 0xb2, 0x4b, 0xfb, 0x24, - 0x64, 0x5f, 0x84, 0x4a, 0x44, 0xc2, 0x20, 0xbb, 0x59, 0x60, 0x29, 0x01, 0x0c, 0x82, 0x1e, 0x87, - 0xb2, 0x13, 0xba, 0x22, 0x10, 0x4d, 0xed, 0x81, 0x26, 0x97, 0xe6, 0x30, 0x6d, 0x4f, 0xd5, 0x87, - 0xa8, 0xde, 0x97, 0xfa, 0x10, 0xc6, 0x95, 0xfe, 0x03, 0x3d, 0xaf, 0xf4, 0x7f, 0xab, 0x0c, 0x8f, - 0xef, 0x39, 0x5f, 0x74, 0x1c, 0x9e, 0xb5, 0x47, 0x1c, 0x9e, 0x1c, 0x9e, 0xd2, 0x7e, 0xc3, 0x53, - 0xee, 0x31, 0x3c, 0x9f, 0xa6, 0xcb, 0x40, 0xd6, 0x08, 0x29, 0xe6, 0x96, 0xb7, 0x5e, 0x25, 0x47, - 0xc4, 0x0a, 0x90, 0x50, 0xac, 0xf9, 0xd2, 0x3d, 0x40, 0x2a, 0x19, 0xb9, 0x5a, 0x84, 0x1a, 0xe8, - 0x59, 0x33, 0x84, 0xcf, 0xfd, 0x5e, 0x19, 0xce, 0xf6, 0xcf, 0x95, 0xe0, 0xc9, 0x3e, 0xa4, 0xb7, - 0x39, 0x8b, 0xad, 0x3e, 0x67, 0xf1, 0xf7, 0xf6, 0x67, 0xb2, 0xff, 0xaa, 0x05, 0x17, 0x7a, 0x2b, - 0x0f, 0xf4, 0x1c, 0x0c, 0xad, 0x46, 0x8e, 0xdf, 0x58, 0x67, 0x37, 0x57, 0xca, 0x41, 0x61, 0x63, - 0xad, 0x9b, 0xb1, 0x89, 0x43, 0xb7, 0xb7, 0x3c, 0x26, 0xc1, 0xc0, 0x90, 0xc9, 0xa3, 0x74, 0x7b, - 0xbb, 0x92, 0x05, 0xe2, 0x6e, 0x7c, 0xfb, 0x4f, 0x4b, 0xf9, 0xdd, 0xe2, 0x46, 0xc6, 0x41, 0xbe, - 0x93, 0xf8, 0x0a, 0xa5, 0x3e, 0x64, 0x49, 0xf9, 0x7e, 0xcb, 0x92, 0x4a, 0x2f, 0x59, 0x82, 0x66, - 0xe0, 0x94, 0x71, 0x25, 0x0a, 0x4f, 0x08, 0xe6, 0x01, 0xb7, 0xaa, 0x4a, 0xc6, 0x52, 0x06, 0x8e, - 0xbb, 0x9e, 0x40, 0xcf, 0x40, 0xcd, 0xf5, 0x63, 0xd2, 0xe8, 0x44, 0x3c, 0xd0, 0xdb, 0x48, 0xc2, - 0x9a, 0x13, 0xed, 0x58, 0x61, 0xd8, 0xbf, 0x54, 0x82, 0xf3, 0x3d, 0xed, 0xac, 0xfb, 0x24, 0xbb, - 0xcc, 0xcf, 0x51, 0xb9, 0x3f, 0x9f, 0xc3, 0x1c, 0xa4, 0xea, 0xbe, 0x83, 0xf4, 0xfb, 0xbd, 0x27, - 0x26, 0xb5, 0xb9, 0xbf, 0x6f, 0x47, 0xe9, 0x25, 0x38, 0xe1, 0x84, 0x21, 0xc7, 0x63, 0xf1, 0x9a, - 0x99, 0x2a, 0x39, 0x93, 0x26, 0x10, 0xa7, 0x71, 0xfb, 0xd2, 0x9e, 0x7f, 0x68, 0x41, 0x1d, 0x93, - 0x35, 0x2e, 0x1d, 0xd0, 0x1d, 0x31, 0x44, 0x56, 0x11, 0xf5, 0x34, 0xe9, 0xc0, 0xc6, 0x2e, 0xab, - 0x33, 0x99, 0x37, 0xd8, 0xdd, 0x57, 0xe7, 0x94, 0x0e, 0x74, 0x75, 0x8e, 0xba, 0x3c, 0xa5, 0xdc, - 0xfb, 0xf2, 0x14, 0xfb, 0x1b, 0x83, 0xf4, 0xf5, 0xc2, 0x60, 0x3a, 0x22, 0xcd, 0x98, 0x7e, 0xdf, - 0x4e, 0xe4, 0x89, 0x49, 0xa2, 0xbe, 0xef, 0x4d, 0x3c, 0x8f, 0x69, 0x7b, 0xea, 0x28, 0xa6, 0x74, - 0xa0, 0x1a, 0x21, 0xe5, 0x7d, 0x6b, 0x84, 0xbc, 0x04, 0x27, 0xe2, 0x78, 0x7d, 0x29, 0x72, 0x37, - 0x9d, 0x84, 0x5c, 0x27, 0xdb, 0xc2, 0xca, 0xd2, 0x79, 0xfd, 0xcb, 0x57, 0x35, 0x10, 0xa7, 0x71, - 0xd1, 0x2c, 0x9c, 0xd6, 0x95, 0x3a, 0x48, 0x94, 0xb0, 0xe8, 0x7e, 0x3e, 0x13, 0x54, 0x12, 0xaf, - 0xae, 0xed, 0x21, 0x10, 0x70, 0xf7, 0x33, 0x54, 0xbe, 0xa5, 0x1a, 0x69, 0x47, 0x06, 0xd2, 0xf2, - 0x2d, 0x45, 0x87, 0xf6, 0xa5, 0xeb, 0x09, 0xb4, 0x00, 0x67, 0xf8, 0xc4, 0x98, 0x0c, 0x43, 0xe3, - 0x8d, 0x06, 0xd3, 0x75, 0x0c, 0x67, 0xbb, 0x51, 0x70, 0xde, 0x73, 0xe8, 0x05, 0x18, 0x52, 0xcd, - 0x73, 0x33, 0xe2, 0x14, 0x41, 0x79, 0x31, 0x14, 0x99, 0xb9, 0x26, 0x36, 0xf1, 0xd0, 0x87, 0xe0, - 0x51, 0xfd, 0x97, 0xa7, 0x80, 0xf1, 0xa3, 0xb5, 0x19, 0x51, 0x04, 0x49, 0x5d, 0xd5, 0x31, 0x9b, - 0x8b, 0xd6, 0xc4, 0xbd, 0x9e, 0x47, 0xab, 0x70, 0x41, 0x81, 0x2e, 0xfb, 0x09, 0xcb, 0xe7, 0x88, - 0xc9, 0x94, 0x13, 0x93, 0x9b, 0x91, 0xc7, 0xca, 0x26, 0xd5, 0xf5, 0x2d, 0x8a, 0xb3, 0x6e, 0x72, - 0x35, 0x0f, 0x13, 0xcf, 0xe3, 0x3d, 0xa8, 0xa0, 0x09, 0xa8, 0x13, 0xdf, 0x59, 0xf5, 0xc8, 0xe2, - 0xf4, 0x1c, 0x2b, 0xa6, 0x64, 0x9c, 0xe4, 0x5d, 0x96, 0x00, 0xac, 0x71, 0x54, 0x84, 0xe9, 0x70, - 0xcf, 0x1b, 0x3d, 0x97, 0xe0, 0x6c, 0xab, 0x11, 0x52, 0xdb, 0xc3, 0x6d, 0x90, 0xc9, 0x06, 0x0b, - 0xa8, 0xa3, 0x1f, 0x86, 0x17, 0x98, 0x54, 0xe1, 0xd3, 0xb3, 0xd3, 0x4b, 0x5d, 0x38, 0x38, 0xf7, - 0x49, 0x16, 0x78, 0x19, 0x05, 0x5b, 0xdb, 0xa3, 0x67, 0x32, 0x81, 0x97, 0xb4, 0x11, 0x73, 0x18, - 0xba, 0x06, 0x88, 0xc5, 0xe2, 0x5f, 0x4d, 0x92, 0x50, 0x19, 0x3b, 0xa3, 0x67, 0xd9, 0x2b, 0xa9, - 0x30, 0xb2, 0x2b, 0x5d, 0x18, 0x38, 0xe7, 0x29, 0xfb, 0x3f, 0x5a, 0x70, 0x42, 0xad, 0xd7, 0xfb, - 0x90, 0x8d, 0xe2, 0xa5, 0xb3, 0x51, 0x66, 0x8f, 0x2e, 0xf1, 0x58, 0xcf, 0x7b, 0x84, 0x34, 0xff, - 0xf4, 0x10, 0x80, 0x96, 0x8a, 0x4a, 0x21, 0x59, 0x3d, 0x15, 0xd2, 0x43, 0x2b, 0x91, 0xf2, 0x2a, - 0xa7, 0x54, 0x1f, 0x6c, 0xe5, 0x94, 0x65, 0x38, 0x27, 0xcd, 0x05, 0x7e, 0x56, 0x74, 0x35, 0x88, - 0x95, 0x80, 0xab, 0x4d, 0x3d, 0x2e, 0x08, 0x9d, 0x9b, 0xcb, 0x43, 0xc2, 0xf9, 0xcf, 0xa6, 0xac, - 0x94, 0xc1, 0xfd, 0xac, 0x14, 0xbd, 0xa6, 0xe7, 0xd7, 0xe4, 0x9d, 0x1c, 0x99, 0x35, 0x3d, 0x7f, - 0x65, 0x19, 0x6b, 0x9c, 0x7c, 0xc1, 0x5e, 0x2f, 0x48, 0xb0, 0xc3, 0x81, 0x05, 0xbb, 0x14, 0x31, - 0x43, 0x3d, 0x45, 0x8c, 0xf4, 0x49, 0x0f, 0xf7, 0xf4, 0x49, 0xbf, 0x1f, 0x46, 0x5c, 0x7f, 0x9d, - 0x44, 0x6e, 0x42, 0x9a, 0x6c, 0x2d, 0x30, 0xf1, 0x53, 0xd3, 0x6a, 0x7d, 0x2e, 0x05, 0xc5, 0x19, - 0xec, 0xb4, 0x5c, 0x1c, 0xe9, 0x43, 0x2e, 0xf6, 0xd0, 0x46, 0x27, 0x8b, 0xd1, 0x46, 0xa7, 0x8e, - 0xae, 0x8d, 0x4e, 0x1f, 0xab, 0x36, 0x42, 0x85, 0x68, 0xa3, 0xbe, 0x04, 0xbd, 0xb1, 0xfd, 0x3b, - 0xbb, 0xcf, 0xf6, 0xaf, 0x97, 0x2a, 0x3a, 0x77, 0x68, 0x55, 0x94, 0xaf, 0x65, 0x1e, 0x39, 0x94, - 0x96, 0xf9, 0x6c, 0x09, 0xce, 0x69, 0x39, 0x4c, 0x67, 0xbf, 0xbb, 0x46, 0x25, 0x11, 0xbb, 0xd6, - 0x89, 0x9f, 0xdb, 0x18, 0xc9, 0x51, 0x3a, 0xcf, 0x4a, 0x41, 0xb0, 0x81, 0xc5, 0x72, 0x8c, 0x48, - 0xc4, 0xca, 0xe8, 0x66, 0x85, 0xf4, 0xb4, 0x68, 0xc7, 0x0a, 0x83, 0xce, 0x2f, 0xfa, 0x5b, 0xe4, - 0x6d, 0x66, 0x8b, 0xc5, 0x4d, 0x6b, 0x10, 0x36, 0xf1, 0xd0, 0xd3, 0x9c, 0x09, 0x13, 0x10, 0x54, - 0x50, 0x0f, 0x8b, 0x7b, 0x5e, 0xa5, 0x4c, 0x50, 0x50, 0xd9, 0x1d, 0x96, 0x4c, 0x56, 0xed, 0xee, - 0x0e, 0x0b, 0x81, 0x52, 0x18, 0xf6, 0xff, 0xb4, 0xe0, 0x7c, 0xee, 0x50, 0xdc, 0x07, 0xe5, 0xbb, - 0x95, 0x56, 0xbe, 0xcb, 0x45, 0x6d, 0x37, 0x8c, 0xb7, 0xe8, 0xa1, 0x88, 0xff, 0xbd, 0x05, 0x23, - 0x1a, 0xff, 0x3e, 0xbc, 0xaa, 0x9b, 0x7e, 0xd5, 0xe2, 0x76, 0x56, 0xf5, 0xae, 0x77, 0xfb, 0xed, - 0x12, 0xa8, 0x02, 0x8e, 0x93, 0x0d, 0x59, 0x1e, 0x77, 0x9f, 0x93, 0xc4, 0x6d, 0x18, 0x60, 0x07, - 0xa1, 0x71, 0x31, 0x41, 0x1e, 0x69, 0xfe, 0xec, 0x50, 0x55, 0x1f, 0x32, 0xb3, 0xbf, 0x31, 0x16, - 0x0c, 0x59, 0x91, 0x67, 0x37, 0xa6, 0xd2, 0xbc, 0x29, 0xd2, 0xb2, 0x74, 0x91, 0x67, 0xd1, 0x8e, - 0x15, 0x06, 0x55, 0x0f, 0x6e, 0x23, 0xf0, 0xa7, 0x3d, 0x27, 0x96, 0x77, 0x19, 0x2a, 0xf5, 0x30, - 0x27, 0x01, 0x58, 0xe3, 0xb0, 0x33, 0x52, 0x37, 0x0e, 0x3d, 0x67, 0xdb, 0xd8, 0x3f, 0x1b, 0xf5, - 0x09, 0x14, 0x08, 0x9b, 0x78, 0x76, 0x1b, 0x46, 0xd3, 0x2f, 0x31, 0x43, 0xd6, 0x58, 0x80, 0x62, - 0x5f, 0xc3, 0x39, 0x01, 0x75, 0x87, 0x3d, 0x35, 0xdf, 0x71, 0xb2, 0x57, 0x90, 0x4f, 0x4a, 0x00, - 0xd6, 0x38, 0xf6, 0xaf, 0x58, 0x70, 0x26, 0x67, 0xd0, 0x0a, 0x4c, 0x7b, 0x4b, 0xb4, 0xb4, 0xc9, - 0x53, 0xec, 0x3f, 0x04, 0x83, 0x4d, 0xb2, 0xe6, 0xc8, 0x10, 0x38, 0x43, 0xb6, 0xcf, 0xf0, 0x66, - 0x2c, 0xe1, 0xf6, 0x7f, 0xb7, 0xe0, 0x64, 0xba, 0xaf, 0x31, 0x4b, 0x25, 0xe1, 0xc3, 0xe4, 0xc6, - 0x8d, 0x60, 0x93, 0x44, 0xdb, 0xf4, 0xcd, 0xad, 0x4c, 0x2a, 0x49, 0x17, 0x06, 0xce, 0x79, 0x8a, - 0x95, 0x6f, 0x6d, 0xaa, 0xd1, 0x96, 0x33, 0xf2, 0x56, 0x91, 0x33, 0x52, 0x7f, 0x4c, 0xf3, 0xb8, - 0x5c, 0xb1, 0xc4, 0x26, 0x7f, 0xfb, 0x3b, 0x15, 0x50, 0x79, 0xb1, 0x2c, 0xfe, 0xa8, 0xa0, 0xe8, - 0xad, 0x83, 0x66, 0x10, 0xa9, 0xc9, 0x50, 0xd9, 0x2b, 0x20, 0x80, 0x7b, 0x49, 0x4c, 0xd7, 0xa5, - 0x7a, 0xc3, 0x15, 0x0d, 0xc2, 0x26, 0x1e, 0xed, 0x89, 0xe7, 0x6e, 0x12, 0xfe, 0xd0, 0x40, 0xba, - 0x27, 0xf3, 0x12, 0x80, 0x35, 0x0e, 0xed, 0x49, 0xd3, 0x5d, 0x5b, 0x13, 0x5b, 0x7e, 0xd5, 0x13, - 0x3a, 0x3a, 0x98, 0x41, 0x78, 0x45, 0xee, 0x60, 0x43, 0x58, 0xc1, 0x46, 0x45, 0xee, 0x60, 0x03, - 0x33, 0x08, 0xb5, 0xdb, 0xfc, 0x20, 0x6a, 0xb3, 0x2b, 0xe2, 0x9b, 0x8a, 0x8b, 0xb0, 0x7e, 0x95, - 0xdd, 0x76, 0xa3, 0x1b, 0x05, 0xe7, 0x3d, 0x47, 0x67, 0x60, 0x18, 0x91, 0xa6, 0xdb, 0x48, 0x4c, - 0x6a, 0x90, 0x9e, 0x81, 0x4b, 0x5d, 0x18, 0x38, 0xe7, 0x29, 0x34, 0x09, 0x27, 0x65, 0x5e, 0xb3, - 0xac, 0x5a, 0x33, 0x94, 0xae, 0x92, 0x81, 0xd3, 0x60, 0x9c, 0xc5, 0xa7, 0x52, 0xad, 0x2d, 0x0a, - 0x56, 0x31, 0x63, 0xd9, 0x90, 0x6a, 0xb2, 0x90, 0x15, 0x56, 0x18, 0xf6, 0xa7, 0xca, 0x54, 0x0b, - 0xf7, 0x28, 0xd4, 0x76, 0xdf, 0xa2, 0x05, 0xd3, 0x33, 0xb2, 0xd2, 0xc7, 0x8c, 0x7c, 0x1e, 0x86, - 0xef, 0xc4, 0x81, 0xaf, 0x22, 0xf1, 0xaa, 0x3d, 0x23, 0xf1, 0x0c, 0xac, 0xfc, 0x48, 0xbc, 0x81, - 0xa2, 0x22, 0xf1, 0x06, 0x0f, 0x19, 0x89, 0xf7, 0xad, 0x2a, 0xa8, 0xab, 0x41, 0x6e, 0x90, 0xe4, - 0x6e, 0x10, 0x6d, 0xb8, 0x7e, 0x8b, 0xe5, 0x83, 0x7f, 0xcd, 0x82, 0x61, 0xbe, 0x5e, 0xe6, 0xcd, - 0x4c, 0xaa, 0xb5, 0x82, 0xee, 0x9c, 0x48, 0x31, 0x1b, 0x5f, 0x31, 0x18, 0x65, 0xae, 0xd2, 0x34, - 0x41, 0x38, 0xd5, 0x23, 0xf4, 0x71, 0x00, 0xe9, 0x1f, 0x5d, 0x93, 0x22, 0x73, 0xae, 0x98, 0xfe, - 0x61, 0xb2, 0xa6, 0x6d, 0xe0, 0x15, 0xc5, 0x04, 0x1b, 0x0c, 0xd1, 0x67, 0x75, 0x96, 0x19, 0x0f, - 0xd9, 0xff, 0xe8, 0xb1, 0x8c, 0x4d, 0x3f, 0x39, 0x66, 0x18, 0x06, 0x5d, 0xbf, 0x45, 0xe7, 0x89, - 0x88, 0x58, 0x7a, 0x57, 0x5e, 0x2d, 0x85, 0xf9, 0xc0, 0x69, 0x4e, 0x39, 0x9e, 0xe3, 0x37, 0x48, - 0x34, 0xc7, 0xd1, 0xcd, 0x0b, 0xa4, 0x59, 0x03, 0x96, 0x84, 0xba, 0x2e, 0x55, 0xa9, 0xf6, 0x73, - 0xa9, 0xca, 0x85, 0x0f, 0xc0, 0xe9, 0xae, 0x8f, 0x79, 0xa0, 0x94, 0xb2, 0xc3, 0x67, 0xa3, 0xd9, - 0xff, 0x62, 0x40, 0x2b, 0xad, 0x1b, 0x41, 0x93, 0x5f, 0xed, 0x11, 0xe9, 0x2f, 0x2a, 0x6c, 0xdc, - 0x02, 0xa7, 0x88, 0x71, 0x09, 0xb5, 0x6a, 0xc4, 0x26, 0x4b, 0x3a, 0x47, 0x43, 0x27, 0x22, 0xfe, - 0x71, 0xcf, 0xd1, 0x25, 0xc5, 0x04, 0x1b, 0x0c, 0xd1, 0x7a, 0x2a, 0xa7, 0xe4, 0xca, 0xd1, 0x73, - 0x4a, 0x58, 0x95, 0xa9, 0xbc, 0x6a, 0xfc, 0x5f, 0xb2, 0x60, 0xc4, 0x4f, 0xcd, 0xdc, 0x62, 0xc2, - 0x48, 0xf3, 0x57, 0x05, 0xbf, 0x59, 0x2a, 0xdd, 0x86, 0x33, 0xfc, 0xf3, 0x54, 0x5a, 0xf5, 0x80, - 0x2a, 0x4d, 0xdf, 0x11, 0x34, 0xd0, 0xeb, 0x8e, 0x20, 0xe4, 0xab, 0x4b, 0xd2, 0x06, 0x0b, 0xbf, - 0x24, 0x0d, 0x72, 0x2e, 0x48, 0xbb, 0x0d, 0xf5, 0x46, 0x44, 0x9c, 0xe4, 0x90, 0xf7, 0x65, 0xb1, - 0x03, 0xfa, 0x69, 0x49, 0x00, 0x6b, 0x5a, 0xf6, 0xff, 0xae, 0xc0, 0x29, 0x39, 0x22, 0x32, 0x04, - 0x9d, 0xea, 0x47, 0xce, 0x57, 0x1b, 0xb7, 0x4a, 0x3f, 0x5e, 0x95, 0x00, 0xac, 0x71, 0xa8, 0x3d, - 0xd6, 0x89, 0xc9, 0x62, 0x48, 0xfc, 0x79, 0x77, 0x35, 0x16, 0xe7, 0x9c, 0x6a, 0xa1, 0xdc, 0xd4, - 0x20, 0x6c, 0xe2, 0x51, 0x63, 0x9c, 0xdb, 0xc5, 0x71, 0x36, 0x7d, 0x45, 0xd8, 0xdb, 0x58, 0xc2, - 0xd1, 0xcf, 0xe7, 0x56, 0x8e, 0x2d, 0x26, 0x71, 0xab, 0x2b, 0xf2, 0xfe, 0x80, 0x57, 0x2c, 0xfe, - 0x6d, 0x0b, 0xce, 0xf1, 0x56, 0x39, 0x92, 0x37, 0xc3, 0xa6, 0x93, 0x90, 0xb8, 0x98, 0x4a, 0xee, - 0x39, 0xfd, 0xd3, 0x4e, 0xde, 0x3c, 0xb6, 0x38, 0xbf, 0x37, 0xe8, 0x4d, 0x0b, 0x4e, 0x6e, 0xa4, - 0x6a, 0x7e, 0x48, 0xd5, 0x71, 0xd4, 0x74, 0xfc, 0x14, 0x51, 0xbd, 0xd4, 0xd2, 0xed, 0x31, 0xce, - 0x72, 0xb7, 0xff, 0xd4, 0x02, 0x53, 0x8c, 0xde, 0xff, 0x52, 0x21, 0x07, 0x37, 0x05, 0xa5, 0x75, - 0x59, 0xed, 0x69, 0x5d, 0x3e, 0x0e, 0xe5, 0x8e, 0xdb, 0x14, 0xfb, 0x0b, 0x7d, 0xfa, 0x3a, 0x37, - 0x83, 0x69, 0xbb, 0xfd, 0x4f, 0xab, 0xda, 0x6f, 0x21, 0xf2, 0xa2, 0xbe, 0x2f, 0x5e, 0x7b, 0x4d, - 0x15, 0x1b, 0xe3, 0x6f, 0x7e, 0xa3, 0xab, 0xd8, 0xd8, 0x8f, 0x1c, 0x3c, 0xed, 0x8d, 0x0f, 0x50, - 0xaf, 0x5a, 0x63, 0x83, 0xfb, 0xe4, 0xbc, 0xdd, 0x81, 0x1a, 0xdd, 0x82, 0x31, 0x07, 0x64, 0x2d, - 0xd5, 0xa9, 0xda, 0x55, 0xd1, 0x7e, 0x6f, 0x67, 0xec, 0x7d, 0x07, 0xef, 0x96, 0x7c, 0x1a, 0x2b, - 0xfa, 0x28, 0x86, 0x3a, 0xfd, 0xcd, 0xd2, 0xf3, 0xc4, 0xe6, 0xee, 0xa6, 0x92, 0x99, 0x12, 0x50, - 0x48, 0xee, 0x9f, 0xe6, 0x83, 0x7c, 0xa8, 0xb3, 0xdb, 0x68, 0x19, 0x53, 0xbe, 0x07, 0x5c, 0x52, - 0x49, 0x72, 0x12, 0x70, 0x6f, 0x67, 0xec, 0xa5, 0x83, 0x33, 0x55, 0x8f, 0x63, 0xcd, 0xc2, 0xfe, - 0x72, 0x45, 0xcf, 0x5d, 0x51, 0x63, 0xee, 0xfb, 0x62, 0xee, 0xbe, 0x98, 0x99, 0xbb, 0x17, 0xbb, - 0xe6, 0xee, 0x88, 0xbe, 0x35, 0x35, 0x35, 0x1b, 0xef, 0xb7, 0x21, 0xb0, 0xbf, 0xbf, 0x81, 0x59, - 0x40, 0xaf, 0x77, 0xdc, 0x88, 0xc4, 0x4b, 0x51, 0xc7, 0x77, 0xfd, 0x16, 0x9b, 0x8e, 0x35, 0xd3, - 0x02, 0x4a, 0x81, 0x71, 0x16, 0x9f, 0x6e, 0xea, 0xe9, 0x37, 0xbf, 0xed, 0x6c, 0xf2, 0x59, 0x65, - 0x94, 0xdd, 0x5a, 0x16, 0xed, 0x58, 0x61, 0xd8, 0xdf, 0x60, 0x67, 0xd9, 0x46, 0x5e, 0x30, 0x9d, - 0x13, 0x1e, 0xbb, 0xfe, 0x97, 0xd7, 0xec, 0x52, 0x73, 0x82, 0xdf, 0xf9, 0xcb, 0x61, 0xe8, 0x2e, - 0x0c, 0xae, 0xf2, 0xfb, 0xef, 0x8a, 0xa9, 0x4f, 0x2e, 0x2e, 0xd3, 0x63, 0xb7, 0x9c, 0xc8, 0x9b, - 0xf5, 0xee, 0xe9, 0x9f, 0x58, 0x72, 0xb3, 0xbf, 0x59, 0x81, 0x93, 0x99, 0x0b, 0x62, 0x53, 0xd5, - 0x52, 0x4b, 0xfb, 0x56, 0x4b, 0xfd, 0x08, 0x40, 0x93, 0x84, 0x5e, 0xb0, 0xcd, 0xcc, 0xb1, 0xca, - 0x81, 0xcd, 0x31, 0x65, 0xc1, 0xcf, 0x28, 0x2a, 0xd8, 0xa0, 0x28, 0x0a, 0x95, 0xf1, 0xe2, 0xab, - 0x99, 0x42, 0x65, 0xc6, 0x2d, 0x06, 0x03, 0xf7, 0xf7, 0x16, 0x03, 0x17, 0x4e, 0xf2, 0x2e, 0xaa, - 0xec, 0xdb, 0x43, 0x24, 0xd9, 0xb2, 0xfc, 0x85, 0x99, 0x34, 0x19, 0x9c, 0xa5, 0xfb, 0x20, 0xef, - 0x7f, 0x46, 0xef, 0x86, 0xba, 0xfc, 0xce, 0xf1, 0x68, 0x5d, 0x57, 0x30, 0x90, 0xd3, 0x80, 0xdd, - 0xcb, 0x2c, 0x7e, 0xda, 0x5f, 0x2c, 0x51, 0xeb, 0x99, 0xff, 0x53, 0x95, 0x68, 0x9e, 0x82, 0x01, - 0xa7, 0x93, 0xac, 0x07, 0x5d, 0x77, 0xe8, 0x4d, 0xb2, 0x56, 0x2c, 0xa0, 0x68, 0x1e, 0x2a, 0x4d, - 0x5d, 0x5d, 0xe4, 0x20, 0xa3, 0xa8, 0x1d, 0x91, 0x4e, 0x42, 0x30, 0xa3, 0x82, 0x1e, 0x83, 0x4a, - 0xe2, 0xb4, 0x64, 0xa2, 0x13, 0x4b, 0x6e, 0x5d, 0x71, 0x5a, 0x31, 0x66, 0xad, 0xa6, 0xd2, 0xac, - 0xec, 0xa3, 0x34, 0x5f, 0x82, 0x13, 0xb1, 0xdb, 0xf2, 0x9d, 0xa4, 0x13, 0x11, 0xe3, 0x70, 0x4d, - 0xc7, 0x4b, 0x98, 0x40, 0x9c, 0xc6, 0xb5, 0x7f, 0x63, 0x18, 0xce, 0x2e, 0x4f, 0x2f, 0xc8, 0x9a, - 0xd9, 0xc7, 0x96, 0xab, 0x94, 0xc7, 0xe3, 0xfe, 0xe5, 0x2a, 0xf5, 0xe0, 0xee, 0x19, 0xb9, 0x4a, - 0x9e, 0x91, 0xab, 0x94, 0x4e, 0x1c, 0x29, 0x17, 0x91, 0x38, 0x92, 0xd7, 0x83, 0x7e, 0x12, 0x47, - 0x8e, 0x2d, 0x79, 0x69, 0xcf, 0x0e, 0x1d, 0x28, 0x79, 0x49, 0x65, 0x76, 0x15, 0x12, 0xd2, 0xdf, - 0xe3, 0x53, 0xe5, 0x66, 0x76, 0xa9, 0xac, 0x1a, 0x9e, 0xae, 0x22, 0x04, 0xec, 0xab, 0xc5, 0x77, - 0xa0, 0x8f, 0xac, 0x1a, 0x91, 0x31, 0x63, 0x66, 0x72, 0x0d, 0x16, 0x91, 0xc9, 0x95, 0xd7, 0x9d, - 0x7d, 0x33, 0xb9, 0x5e, 0x82, 0x13, 0x0d, 0x2f, 0xf0, 0xc9, 0x52, 0x14, 0x24, 0x41, 0x23, 0xf0, - 0x84, 0x31, 0xad, 0x44, 0xc2, 0xb4, 0x09, 0xc4, 0x69, 0xdc, 0x5e, 0x69, 0x60, 0xf5, 0xa3, 0xa6, - 0x81, 0xc1, 0x03, 0x4a, 0x03, 0xfb, 0x19, 0x9d, 0xb0, 0x3c, 0xc4, 0xbe, 0xc8, 0x47, 0x8a, 0xff, - 0x22, 0xfd, 0x64, 0x2d, 0xa3, 0xb7, 0xf8, 0x25, 0x76, 0xd4, 0x1c, 0x9d, 0x0e, 0xda, 0xd4, 0xdc, - 0x1a, 0x66, 0x43, 0xf2, 0xda, 0x31, 0x4c, 0xd8, 0xdb, 0xcb, 0x9a, 0x8d, 0xba, 0xd8, 0x4e, 0x37, - 0xe1, 0x74, 0x47, 0x8e, 0x92, 0x50, 0xfd, 0xd5, 0x12, 0xfc, 0xc0, 0xbe, 0x5d, 0x40, 0x77, 0x01, - 0x12, 0xa7, 0x25, 0x26, 0xaa, 0x38, 0xa6, 0x38, 0x62, 0x50, 0xe3, 0x8a, 0xa4, 0xc7, 0x2b, 0x81, - 0xa8, 0xbf, 0xec, 0x00, 0x40, 0xfe, 0x66, 0xb1, 0x8c, 0x81, 0xd7, 0x55, 0x30, 0x11, 0x07, 0x1e, - 0xc1, 0x0c, 0x42, 0xd5, 0x7f, 0x44, 0x5a, 0xfa, 0xd6, 0x65, 0xf5, 0xf9, 0x30, 0x6b, 0xc5, 0x02, - 0x8a, 0x5e, 0x80, 0x21, 0xc7, 0xf3, 0x78, 0x56, 0x0a, 0x89, 0xc5, 0x2d, 0x36, 0xba, 0x72, 0x9b, - 0x06, 0x61, 0x13, 0xcf, 0xfe, 0x93, 0x12, 0x8c, 0xed, 0x23, 0x53, 0xba, 0xf2, 0xec, 0xaa, 0x7d, - 0xe7, 0xd9, 0x89, 0xcc, 0x80, 0x81, 0x1e, 0x99, 0x01, 0x2f, 0xc0, 0x50, 0x42, 0x9c, 0xb6, 0x08, - 0x83, 0x12, 0xfb, 0x6f, 0x7d, 0xee, 0xaa, 0x41, 0xd8, 0xc4, 0xa3, 0x52, 0x6c, 0xc4, 0x69, 0x34, - 0x48, 0x1c, 0xcb, 0xd0, 0x7f, 0xe1, 0xc3, 0x2c, 0x2c, 0xaf, 0x80, 0xb9, 0x86, 0x27, 0x53, 0x2c, - 0x70, 0x86, 0x65, 0x76, 0xc0, 0xeb, 0x7d, 0x0e, 0xf8, 0xd7, 0x4b, 0xf0, 0xf8, 0x9e, 0xda, 0xad, - 0xef, 0xac, 0x8c, 0x4e, 0x4c, 0xa2, 0xec, 0xc4, 0xb9, 0x19, 0x93, 0x08, 0x33, 0x08, 0x1f, 0xa5, - 0x30, 0x34, 0x6e, 0xb5, 0x2e, 0x3a, 0x65, 0x88, 0x8f, 0x52, 0x8a, 0x05, 0xce, 0xb0, 0x3c, 0xec, - 0xb4, 0xfc, 0xfb, 0x25, 0x78, 0xb2, 0x0f, 0x1b, 0xa0, 0xc0, 0xd4, 0xaa, 0x74, 0x82, 0x5b, 0xf9, - 0x01, 0xe5, 0x21, 0x1e, 0x72, 0xb8, 0xbe, 0x51, 0x82, 0x0b, 0xbd, 0x55, 0x31, 0xfa, 0x51, 0xba, - 0x87, 0x97, 0xb1, 0x4f, 0x66, 0x6e, 0xdc, 0x19, 0xbe, 0x7f, 0x4f, 0x81, 0x70, 0x16, 0x17, 0x8d, - 0x03, 0x84, 0x4e, 0xb2, 0x1e, 0x5f, 0xde, 0x72, 0xe3, 0x44, 0xd4, 0x7e, 0x19, 0xe1, 0x27, 0x46, - 0xb2, 0x15, 0x1b, 0x18, 0x94, 0x1d, 0xfb, 0x37, 0x13, 0xdc, 0x08, 0x12, 0xfe, 0x10, 0xdf, 0x46, - 0x9c, 0x91, 0x37, 0x65, 0x18, 0x20, 0x9c, 0xc5, 0xa5, 0xec, 0xd8, 0x99, 0x24, 0xef, 0x28, 0xdf, - 0x5f, 0x30, 0x76, 0xf3, 0xaa, 0x15, 0x1b, 0x18, 0xd9, 0xac, 0xbf, 0xea, 0xfe, 0x59, 0x7f, 0xf6, - 0x3f, 0x29, 0xc1, 0xf9, 0x9e, 0xa6, 0x5c, 0x7f, 0x0b, 0xf0, 0xe1, 0xcb, 0xd4, 0x3b, 0xdc, 0xdc, - 0x39, 0x60, 0x46, 0xd9, 0x1f, 0xf6, 0x98, 0x69, 0x22, 0xa3, 0xec, 0xf0, 0x29, 0xd9, 0x0f, 0xdf, - 0x78, 0x76, 0x25, 0x91, 0x55, 0x0e, 0x90, 0x44, 0x96, 0xf9, 0x18, 0xd5, 0x3e, 0x17, 0xf2, 0x9f, - 0x95, 0x7b, 0x0e, 0x2f, 0xdd, 0xfa, 0xf5, 0xe5, 0x1d, 0x9d, 0x81, 0x53, 0xae, 0xcf, 0x6e, 0x4d, - 0x5a, 0xee, 0xac, 0x8a, 0x72, 0x20, 0xa5, 0xf4, 0x9d, 0xe5, 0x73, 0x19, 0x38, 0xee, 0x7a, 0xe2, - 0x21, 0x4c, 0xea, 0x3b, 0xdc, 0x90, 0x1e, 0x2c, 0xad, 0x14, 0x2d, 0xc2, 0x39, 0x39, 0x14, 0xeb, - 0x4e, 0x44, 0x9a, 0x42, 0x8d, 0xc4, 0x22, 0x8d, 0xe1, 0x3c, 0x4f, 0x85, 0xc8, 0x41, 0xc0, 0xf9, - 0xcf, 0xb1, 0x8b, 0x6a, 0x82, 0xd0, 0x6d, 0x88, 0x4d, 0x8e, 0xbe, 0xa8, 0x86, 0x36, 0x62, 0x0e, - 0xb3, 0x3f, 0x02, 0x75, 0xf5, 0xfe, 0x3c, 0x98, 0x5a, 0x4d, 0xba, 0xae, 0x60, 0x6a, 0x35, 0xe3, - 0x0c, 0x2c, 0xfa, 0xb5, 0xa8, 0x49, 0x9c, 0x59, 0x3d, 0xd7, 0xc9, 0x36, 0xb3, 0x8f, 0xed, 0xf7, - 0xc0, 0xb0, 0xf2, 0xb3, 0xf4, 0x7b, 0x7d, 0x8f, 0xfd, 0xe5, 0x01, 0x38, 0x91, 0x2a, 0xc9, 0x97, - 0x72, 0x6b, 0x5a, 0xfb, 0xba, 0x35, 0x59, 0x70, 0x7c, 0xc7, 0x97, 0x77, 0x7b, 0x19, 0xc1, 0xf1, - 0x1d, 0x9f, 0x60, 0x0e, 0xa3, 0xe6, 0x6d, 0x33, 0xda, 0xc6, 0x1d, 0x5f, 0x04, 0xb1, 0x2a, 0xf3, - 0x76, 0x86, 0xb5, 0x62, 0x01, 0x45, 0x9f, 0xb4, 0x60, 0x38, 0x66, 0x3e, 0x73, 0xee, 0x14, 0x16, - 0x93, 0xee, 0xda, 0xd1, 0x2b, 0x0e, 0xaa, 0xf2, 0x93, 0x2c, 0x2e, 0xc5, 0x6c, 0xc1, 0x29, 0x8e, - 0xe8, 0x33, 0x16, 0xd4, 0xd5, 0x15, 0x24, 0xe2, 0x02, 0xbe, 0xe5, 0x62, 0x2b, 0x1e, 0x72, 0x6f, - 0xa2, 0x3a, 0x7e, 0x50, 0xa5, 0xe7, 0xb0, 0x66, 0x8c, 0x62, 0xe5, 0xb1, 0x1d, 0x3c, 0x1e, 0x8f, - 0x2d, 0xe4, 0x78, 0x6b, 0xdf, 0x0d, 0xf5, 0xb6, 0xe3, 0xbb, 0x6b, 0x24, 0x4e, 0xb8, 0x13, 0x55, - 0x16, 0x62, 0x95, 0x8d, 0x58, 0xc3, 0xa9, 0x42, 0x8e, 0xd9, 0x8b, 0x25, 0x86, 0xd7, 0x93, 0x29, - 0xe4, 0x65, 0xdd, 0x8c, 0x4d, 0x1c, 0xd3, 0x45, 0x0b, 0x0f, 0xd4, 0x45, 0x3b, 0xb4, 0x8f, 0x8b, - 0xf6, 0x1f, 0x5a, 0x70, 0x2e, 0xf7, 0xab, 0x3d, 0xbc, 0xe1, 0x86, 0xf6, 0x57, 0xaa, 0x70, 0x26, - 0xa7, 0xb6, 0x26, 0xda, 0x36, 0xe7, 0xb3, 0x55, 0xc4, 0xc9, 0x7d, 0xfa, 0x20, 0x5a, 0x0e, 0x63, - 0xce, 0x24, 0x3e, 0xd8, 0x01, 0x89, 0x3e, 0xa4, 0x28, 0xdf, 0xdf, 0x43, 0x0a, 0x63, 0x5a, 0x56, - 0x1e, 0xe8, 0xb4, 0xac, 0xee, 0x3d, 0x2d, 0xd1, 0xaf, 0x5a, 0x30, 0xda, 0xee, 0x51, 0xd0, 0x5d, - 0x38, 0x1e, 0x6f, 0x1d, 0x4f, 0xb9, 0xf8, 0xa9, 0xc7, 0x76, 0x77, 0xc6, 0x7a, 0xd6, 0xd1, 0xc7, - 0x3d, 0x7b, 0x65, 0x7f, 0xa7, 0x0c, 0xac, 0xb0, 0x2b, 0xab, 0x9f, 0xb6, 0x8d, 0x3e, 0x61, 0x96, - 0xe8, 0xb5, 0x8a, 0x2a, 0x27, 0xcb, 0x89, 0xab, 0x12, 0xbf, 0x7c, 0x04, 0xf3, 0x2a, 0xfe, 0x66, - 0x85, 0x56, 0xa9, 0x0f, 0xa1, 0xe5, 0xc9, 0x5a, 0xc8, 0xe5, 0xe2, 0x6b, 0x21, 0xd7, 0xb3, 0x75, - 0x90, 0xf7, 0xfe, 0xc4, 0x95, 0x87, 0xf2, 0x13, 0xff, 0x4d, 0x8b, 0x0b, 0x9e, 0xcc, 0x57, 0xd0, - 0x96, 0x81, 0xb5, 0x87, 0x65, 0xf0, 0x0c, 0xd4, 0x62, 0xe2, 0xad, 0x5d, 0x25, 0x8e, 0x27, 0x2c, - 0x08, 0x7d, 0x6a, 0x2c, 0xda, 0xb1, 0xc2, 0x60, 0x97, 0xa5, 0x7a, 0x5e, 0x70, 0xf7, 0x72, 0x3b, - 0x4c, 0xb6, 0x85, 0x2d, 0xa1, 0x2f, 0x4b, 0x55, 0x10, 0x6c, 0x60, 0xd9, 0x7f, 0xab, 0xc4, 0x67, - 0xa0, 0x08, 0x3d, 0x78, 0x31, 0x73, 0xbd, 0x5d, 0xff, 0xa7, 0xf6, 0x1f, 0x03, 0x68, 0xa8, 0x8b, - 0xe1, 0xc5, 0x99, 0xd0, 0xd5, 0x23, 0xdf, 0x5a, 0x2d, 0xe8, 0xe9, 0xd7, 0xd0, 0x6d, 0xd8, 0xe0, - 0x97, 0x92, 0xa5, 0xe5, 0x7d, 0x65, 0x69, 0x4a, 0xac, 0x54, 0xf6, 0xd1, 0x76, 0x7f, 0x62, 0x41, - 0xca, 0x22, 0x42, 0x21, 0x54, 0x69, 0x77, 0xb7, 0x8b, 0xb9, 0xf3, 0xde, 0x24, 0x4d, 0x45, 0xa3, - 0x98, 0xf6, 0xec, 0x27, 0xe6, 0x8c, 0x90, 0x27, 0x22, 0x14, 0xf8, 0xa8, 0xde, 0x28, 0x8e, 0xe1, - 0xd5, 0x20, 0xd8, 0xe0, 0x07, 0x9b, 0x3a, 0xda, 0xc1, 0x7e, 0x11, 0x4e, 0x77, 0x75, 0x8a, 0xdd, - 0x64, 0x15, 0xc8, 0x8b, 0xfe, 0x8d, 0xe9, 0xca, 0xd2, 0x26, 0x31, 0x87, 0xd9, 0xdf, 0xb0, 0xe0, - 0x54, 0x96, 0x3c, 0x7a, 0xcb, 0x82, 0xd3, 0x71, 0x96, 0xde, 0x71, 0x8d, 0x9d, 0x8a, 0x32, 0xec, - 0x02, 0xe1, 0xee, 0x4e, 0xd8, 0xff, 0x47, 0x4c, 0xfe, 0xdb, 0xae, 0xdf, 0x0c, 0xee, 0x2a, 0xc3, - 0xc4, 0xea, 0x69, 0x98, 0xd0, 0xf5, 0xd8, 0x58, 0x27, 0xcd, 0x8e, 0xd7, 0x95, 0xaf, 0xb9, 0x2c, - 0xda, 0xb1, 0xc2, 0x60, 0xe9, 0x69, 0x1d, 0x51, 0x2c, 0x3d, 0x33, 0x29, 0x67, 0x44, 0x3b, 0x56, - 0x18, 0xe8, 0x79, 0x18, 0x36, 0x5e, 0x52, 0xce, 0x4b, 0x66, 0x90, 0x1b, 0x2a, 0x33, 0xc6, 0x29, - 0x2c, 0x34, 0x0e, 0xa0, 0x8c, 0x1c, 0xa9, 0x22, 0x99, 0xa3, 0x48, 0x49, 0xa2, 0x18, 0x1b, 0x18, - 0x2c, 0x19, 0xd4, 0xeb, 0xc4, 0xcc, 0xc7, 0x3f, 0xa0, 0x0b, 0x78, 0x4e, 0x8b, 0x36, 0xac, 0xa0, - 0x54, 0x9a, 0xb4, 0x1d, 0xbf, 0xe3, 0x78, 0x74, 0x84, 0xc4, 0xd6, 0x4f, 0x2d, 0xc3, 0x05, 0x05, - 0xc1, 0x06, 0x16, 0x7d, 0xe3, 0xc4, 0x6d, 0x93, 0x57, 0x02, 0x5f, 0x46, 0x87, 0xe9, 0x63, 0x1f, - 0xd1, 0x8e, 0x15, 0x86, 0xfd, 0x5f, 0x2d, 0x38, 0xa9, 0x53, 0xcb, 0xf9, 0x9d, 0xd5, 0xe6, 0x4e, - 0xd5, 0xda, 0x77, 0xa7, 0x9a, 0xce, 0xb9, 0x2d, 0xf5, 0x95, 0x73, 0x6b, 0xa6, 0xc3, 0x96, 0xf7, - 0x4c, 0x87, 0xfd, 0x41, 0x7d, 0x1f, 0x2a, 0xcf, 0x9b, 0x1d, 0xca, 0xbb, 0x0b, 0x15, 0xd9, 0x30, - 0xd0, 0x70, 0x54, 0x5d, 0x95, 0x61, 0xbe, 0x77, 0x98, 0x9e, 0x64, 0x48, 0x02, 0x62, 0x2f, 0x42, - 0x5d, 0x9d, 0x7e, 0xc8, 0x8d, 0xaa, 0x95, 0xbf, 0x51, 0xed, 0x2b, 0x2d, 0x6f, 0x6a, 0xf5, 0x9b, - 0xdf, 0x7d, 0xe2, 0x1d, 0xbf, 0xfb, 0xdd, 0x27, 0xde, 0xf1, 0x07, 0xdf, 0x7d, 0xe2, 0x1d, 0x9f, - 0xdc, 0x7d, 0xc2, 0xfa, 0xe6, 0xee, 0x13, 0xd6, 0xef, 0xee, 0x3e, 0x61, 0xfd, 0xc1, 0xee, 0x13, - 0xd6, 0x77, 0x76, 0x9f, 0xb0, 0xbe, 0xf4, 0x9f, 0x9f, 0x78, 0xc7, 0x2b, 0xb9, 0xe1, 0x81, 0xf4, - 0xc7, 0xb3, 0x8d, 0xe6, 0xc4, 0xe6, 0x25, 0x16, 0xa1, 0x46, 0x97, 0xd7, 0x84, 0x31, 0xa7, 0x26, - 0xe4, 0xf2, 0xfa, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0xa1, 0x4f, 0x88, 0x2f, 0x3c, 0xe0, 0x00, - 0x00, + // 10920 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x6f, 0x70, 0x24, 0xc7, + 0x75, 0x18, 0xae, 0xd9, 0x3f, 0xc0, 0xee, 0x03, 0x0e, 0x77, 0xd7, 0x77, 0x47, 0x82, 0x27, 0x92, + 0x38, 0x0f, 0x7f, 0xa6, 0xa8, 0x9f, 0x48, 0xc0, 0x3c, 0x91, 0x0a, 0x23, 0xda, 0x92, 0xb1, 0xc0, + 0xfd, 0xc1, 0x1d, 0x70, 0x00, 0x1b, 0xb8, 0x3b, 0x89, 0x32, 0x45, 0x0d, 0x66, 0x1b, 0x8b, 0x39, + 0xcc, 0xce, 0x0c, 0x67, 0x66, 0x71, 0x00, 0x2d, 0xc9, 0x92, 0x25, 0xd9, 0x4a, 0xf4, 0x87, 0x8a, + 0x94, 0x94, 0xe9, 0x24, 0x72, 0x64, 0xcb, 0x49, 0xc5, 0x95, 0xb0, 0xe2, 0x38, 0x1f, 0xe2, 0xc4, + 0x49, 0xa5, 0x6c, 0xa7, 0x52, 0x4a, 0x29, 0x29, 0xbb, 0x52, 0x2e, 0xcb, 0x49, 0x6c, 0x44, 0xba, + 0x94, 0x2b, 0xa9, 0x54, 0xc5, 0x55, 0x4e, 0xfc, 0xc1, 0xb9, 0xe4, 0x43, 0xaa, 0xff, 0xf7, 0xcc, + 0xee, 0x02, 0x0b, 0x60, 0x70, 0x77, 0x52, 0xf8, 0x6d, 0xb7, 0xdf, 0x9b, 0xf7, 0x7a, 0x7a, 0xba, + 0xdf, 0x7b, 0xfd, 0xfa, 0xbd, 0xd7, 0x30, 0xdf, 0xf2, 0xd2, 0xf5, 0xce, 0xea, 0xa4, 0x1b, 0xb6, + 0xa7, 0x9c, 0xb8, 0x15, 0x46, 0x71, 0x78, 0x8b, 0xfd, 0x78, 0xc6, 0x6d, 0x4e, 0x6d, 0x9e, 0x9f, + 0x8a, 0x36, 0x5a, 0x53, 0x4e, 0xe4, 0x25, 0x53, 0x4e, 0x14, 0xf9, 0x9e, 0xeb, 0xa4, 0x5e, 0x18, + 0x4c, 0x6d, 0x3e, 0xeb, 0xf8, 0xd1, 0xba, 0xf3, 0xec, 0x54, 0x8b, 0x04, 0x24, 0x76, 0x52, 0xd2, + 0x9c, 0x8c, 0xe2, 0x30, 0x0d, 0xd1, 0x8f, 0x6a, 0x6a, 0x93, 0x92, 0x1a, 0xfb, 0xf1, 0xaa, 0xdb, + 0x9c, 0xdc, 0x3c, 0x3f, 0x19, 0x6d, 0xb4, 0x26, 0x29, 0xb5, 0x49, 0x83, 0xda, 0xa4, 0xa4, 0x76, + 0xf6, 0x19, 0xa3, 0x2f, 0xad, 0xb0, 0x15, 0x4e, 0x31, 0xa2, 0xab, 0x9d, 0x35, 0xf6, 0x8f, 0xfd, + 0x61, 0xbf, 0x38, 0xb3, 0xb3, 0xf6, 0xc6, 0x0b, 0xc9, 0xa4, 0x17, 0xd2, 0xee, 0x4d, 0xb9, 0x61, + 0x4c, 0xa6, 0x36, 0xbb, 0x3a, 0x74, 0xf6, 0xb2, 0xc6, 0x21, 0x5b, 0x29, 0x09, 0x12, 0x2f, 0x0c, + 0x92, 0x67, 0x68, 0x17, 0x48, 0xbc, 0x49, 0x62, 0xf3, 0xf5, 0x0c, 0x84, 0x5e, 0x94, 0x9e, 0xd3, + 0x94, 0xda, 0x8e, 0xbb, 0xee, 0x05, 0x24, 0xde, 0xd6, 0x8f, 0xb7, 0x49, 0xea, 0xf4, 0x7a, 0x6a, + 0xaa, 0xdf, 0x53, 0x71, 0x27, 0x48, 0xbd, 0x36, 0xe9, 0x7a, 0xe0, 0x7d, 0x7b, 0x3d, 0x90, 0xb8, + 0xeb, 0xa4, 0xed, 0x74, 0x3d, 0xf7, 0xde, 0x7e, 0xcf, 0x75, 0x52, 0xcf, 0x9f, 0xf2, 0x82, 0x34, + 0x49, 0xe3, 0xfc, 0x43, 0xf6, 0x6b, 0x70, 0x6c, 0xfa, 0xe6, 0xf2, 0x74, 0x27, 0x5d, 0x9f, 0x09, + 0x83, 0x35, 0xaf, 0x85, 0x9e, 0x87, 0x11, 0xd7, 0xef, 0x24, 0x29, 0x89, 0xaf, 0x39, 0x6d, 0x32, + 0x6e, 0x9d, 0xb3, 0x9e, 0xaa, 0x37, 0x4e, 0x7d, 0x6b, 0x67, 0xe2, 0x1d, 0x77, 0x76, 0x26, 0x46, + 0x66, 0x34, 0x08, 0x9b, 0x78, 0xe8, 0xdd, 0x30, 0x1c, 0x87, 0x3e, 0x99, 0xc6, 0xd7, 0xc6, 0x4b, + 0xec, 0x91, 0xe3, 0xe2, 0x91, 0x61, 0xcc, 0x9b, 0xb1, 0x84, 0xdb, 0xbf, 0x5f, 0x02, 0x98, 0x8e, + 0xa2, 0xa5, 0x38, 0xbc, 0x45, 0xdc, 0x14, 0x7d, 0x0c, 0x6a, 0x74, 0xe8, 0x9a, 0x4e, 0xea, 0x30, + 0x6e, 0x23, 0xe7, 0x7f, 0x64, 0x92, 0xbf, 0xc9, 0xa4, 0xf9, 0x26, 0x7a, 0xe2, 0x50, 0xec, 0xc9, + 0xcd, 0x67, 0x27, 0x17, 0x57, 0xe9, 0xf3, 0x0b, 0x24, 0x75, 0x1a, 0x48, 0x30, 0x03, 0xdd, 0x86, + 0x15, 0x55, 0x14, 0x40, 0x25, 0x89, 0x88, 0xcb, 0x3a, 0x36, 0x72, 0x7e, 0x7e, 0xf2, 0x30, 0x33, + 0x74, 0x52, 0xf7, 0x7c, 0x39, 0x22, 0x6e, 0x63, 0x54, 0x70, 0xae, 0xd0, 0x7f, 0x98, 0xf1, 0x41, + 0x9b, 0x30, 0x94, 0xa4, 0x4e, 0xda, 0x49, 0xc6, 0xcb, 0x8c, 0xe3, 0xb5, 0xc2, 0x38, 0x32, 0xaa, + 0x8d, 0x31, 0xc1, 0x73, 0x88, 0xff, 0xc7, 0x82, 0x9b, 0xfd, 0x47, 0x16, 0x8c, 0x69, 0xe4, 0x79, + 0x2f, 0x49, 0xd1, 0x4f, 0x74, 0x0d, 0xee, 0xe4, 0x60, 0x83, 0x4b, 0x9f, 0x66, 0x43, 0x7b, 0x42, + 0x30, 0xab, 0xc9, 0x16, 0x63, 0x60, 0xdb, 0x50, 0xf5, 0x52, 0xd2, 0x4e, 0xc6, 0x4b, 0xe7, 0xca, + 0x4f, 0x8d, 0x9c, 0xbf, 0x5c, 0xd4, 0x7b, 0x36, 0x8e, 0x09, 0xa6, 0xd5, 0x39, 0x4a, 0x1e, 0x73, + 0x2e, 0xf6, 0xaf, 0x8c, 0x9a, 0xef, 0x47, 0x07, 0x1c, 0x3d, 0x0b, 0x23, 0x49, 0xd8, 0x89, 0x5d, + 0x82, 0x49, 0x14, 0x26, 0xe3, 0xd6, 0xb9, 0x32, 0x9d, 0x7a, 0x74, 0xa6, 0x2e, 0xeb, 0x66, 0x6c, + 0xe2, 0xa0, 0x2f, 0x5b, 0x30, 0xda, 0x24, 0x49, 0xea, 0x05, 0x8c, 0xbf, 0xec, 0xfc, 0xca, 0xa1, + 0x3b, 0x2f, 0x1b, 0x67, 0x35, 0xf1, 0xc6, 0x69, 0xf1, 0x22, 0xa3, 0x46, 0x63, 0x82, 0x33, 0xfc, + 0xe9, 0x8a, 0x6b, 0x92, 0xc4, 0x8d, 0xbd, 0x88, 0xfe, 0x67, 0x73, 0xc6, 0x58, 0x71, 0xb3, 0x1a, + 0x84, 0x4d, 0x3c, 0x14, 0x40, 0x95, 0xae, 0xa8, 0x64, 0xbc, 0xc2, 0xfa, 0x3f, 0x77, 0xb8, 0xfe, + 0x8b, 0x41, 0xa5, 0x8b, 0x55, 0x8f, 0x3e, 0xfd, 0x97, 0x60, 0xce, 0x06, 0x7d, 0xc9, 0x82, 0x71, + 0xb1, 0xe2, 0x31, 0xe1, 0x03, 0x7a, 0x73, 0xdd, 0x4b, 0x89, 0xef, 0x25, 0xe9, 0x78, 0x95, 0xf5, + 0x61, 0x6a, 0xb0, 0xb9, 0x75, 0x29, 0x0e, 0x3b, 0xd1, 0x55, 0x2f, 0x68, 0x36, 0xce, 0x09, 0x4e, + 0xe3, 0x33, 0x7d, 0x08, 0xe3, 0xbe, 0x2c, 0xd1, 0xd7, 0x2c, 0x38, 0x1b, 0x38, 0x6d, 0x92, 0x44, + 0x0e, 0xfd, 0xb4, 0x1c, 0xdc, 0xf0, 0x1d, 0x77, 0x83, 0xf5, 0x68, 0xe8, 0x60, 0x3d, 0xb2, 0x45, + 0x8f, 0xce, 0x5e, 0xeb, 0x4b, 0x1a, 0xef, 0xc2, 0x16, 0x7d, 0xd3, 0x82, 0x93, 0x61, 0x1c, 0xad, + 0x3b, 0x01, 0x69, 0x4a, 0x68, 0x32, 0x3e, 0xcc, 0x96, 0xde, 0x47, 0x0f, 0xf7, 0x89, 0x16, 0xf3, + 0x64, 0x17, 0xc2, 0xc0, 0x4b, 0xc3, 0x78, 0x99, 0xa4, 0xa9, 0x17, 0xb4, 0x92, 0xc6, 0x99, 0x3b, + 0x3b, 0x13, 0x27, 0xbb, 0xb0, 0x70, 0x77, 0x7f, 0xd0, 0x4f, 0xc2, 0x48, 0xb2, 0x1d, 0xb8, 0x37, + 0xbd, 0xa0, 0x19, 0xde, 0x4e, 0xc6, 0x6b, 0x45, 0x2c, 0xdf, 0x65, 0x45, 0x50, 0x2c, 0x40, 0xcd, + 0x00, 0x9b, 0xdc, 0x7a, 0x7f, 0x38, 0x3d, 0x95, 0xea, 0x45, 0x7f, 0x38, 0x3d, 0x99, 0x76, 0x61, + 0x8b, 0x7e, 0xd6, 0x82, 0x63, 0x89, 0xd7, 0x0a, 0x9c, 0xb4, 0x13, 0x93, 0xab, 0x64, 0x3b, 0x19, + 0x07, 0xd6, 0x91, 0x2b, 0x87, 0x1c, 0x15, 0x83, 0x64, 0xe3, 0x8c, 0xe8, 0xe3, 0x31, 0xb3, 0x35, + 0xc1, 0x59, 0xbe, 0xbd, 0x16, 0x9a, 0x9e, 0xd6, 0x23, 0xc5, 0x2e, 0x34, 0x3d, 0xa9, 0xfb, 0xb2, + 0x44, 0x3f, 0x0e, 0x27, 0x78, 0x93, 0x1a, 0xd9, 0x64, 0x7c, 0x94, 0x09, 0xda, 0xd3, 0x77, 0x76, + 0x26, 0x4e, 0x2c, 0xe7, 0x60, 0xb8, 0x0b, 0x1b, 0xbd, 0x06, 0x13, 0x11, 0x89, 0xdb, 0x5e, 0xba, + 0x18, 0xf8, 0xdb, 0x52, 0x7c, 0xbb, 0x61, 0x44, 0x9a, 0xa2, 0x3b, 0xc9, 0xf8, 0xb1, 0x73, 0xd6, + 0x53, 0xb5, 0xc6, 0xbb, 0x44, 0x37, 0x27, 0x96, 0x76, 0x47, 0xc7, 0x7b, 0xd1, 0xb3, 0xff, 0x75, + 0x09, 0x4e, 0xe4, 0x15, 0x27, 0xfa, 0x3b, 0x16, 0x1c, 0xbf, 0x75, 0x3b, 0x5d, 0x09, 0x37, 0x48, + 0x90, 0x34, 0xb6, 0xa9, 0x78, 0x63, 0x2a, 0x63, 0xe4, 0xbc, 0x5b, 0xac, 0x8a, 0x9e, 0xbc, 0x92, + 0xe5, 0x72, 0x21, 0x48, 0xe3, 0xed, 0xc6, 0xc3, 0xe2, 0xed, 0x8e, 0x5f, 0xb9, 0xb9, 0x62, 0x42, + 0x71, 0xbe, 0x53, 0x67, 0xbf, 0x60, 0xc1, 0xe9, 0x5e, 0x24, 0xd0, 0x09, 0x28, 0x6f, 0x90, 0x6d, + 0x6e, 0x95, 0x61, 0xfa, 0x13, 0xbd, 0x02, 0xd5, 0x4d, 0xc7, 0xef, 0x10, 0x61, 0xdd, 0x5c, 0x3a, + 0xdc, 0x8b, 0xa8, 0x9e, 0x61, 0x4e, 0xf5, 0xfd, 0xa5, 0x17, 0x2c, 0xfb, 0x77, 0xca, 0x30, 0x62, + 0xe8, 0xb7, 0x7b, 0x60, 0xb1, 0x85, 0x19, 0x8b, 0x6d, 0xa1, 0x30, 0xd5, 0xdc, 0xd7, 0x64, 0xbb, + 0x9d, 0x33, 0xd9, 0x16, 0x8b, 0x63, 0xb9, 0xab, 0xcd, 0x86, 0x52, 0xa8, 0x87, 0x11, 0xb5, 0xc8, + 0xa9, 0xea, 0xaf, 0x14, 0xf1, 0x09, 0x17, 0x25, 0xb9, 0xc6, 0xb1, 0x3b, 0x3b, 0x13, 0x75, 0xf5, + 0x17, 0x6b, 0x46, 0xf6, 0x77, 0x2c, 0x38, 0x6d, 0xf4, 0x71, 0x26, 0x0c, 0x9a, 0x1e, 0xfb, 0xb4, + 0xe7, 0xa0, 0x92, 0x6e, 0x47, 0xd2, 0xec, 0x57, 0x23, 0xb5, 0xb2, 0x1d, 0x11, 0xcc, 0x20, 0xd4, + 0xd0, 0x6f, 0x93, 0x24, 0x71, 0x5a, 0x24, 0x6f, 0xe8, 0x2f, 0xf0, 0x66, 0x2c, 0xe1, 0x28, 0x06, + 0xe4, 0x3b, 0x49, 0xba, 0x12, 0x3b, 0x41, 0xc2, 0xc8, 0xaf, 0x78, 0x6d, 0x22, 0x06, 0xf8, 0xff, + 0x1f, 0x6c, 0xc6, 0xd0, 0x27, 0x1a, 0x0f, 0xdd, 0xd9, 0x99, 0x40, 0xf3, 0x5d, 0x94, 0x70, 0x0f, + 0xea, 0xf6, 0xd7, 0x2c, 0x78, 0xa8, 0xb7, 0x2d, 0x86, 0x9e, 0x84, 0x21, 0xbe, 0xe5, 0x13, 0x6f, + 0xa7, 0x3f, 0x09, 0x6b, 0xc5, 0x02, 0x8a, 0xa6, 0xa0, 0xae, 0xf4, 0x84, 0x78, 0xc7, 0x93, 0x02, + 0xb5, 0xae, 0x95, 0x8b, 0xc6, 0xa1, 0x83, 0x46, 0xff, 0x08, 0xcb, 0x4d, 0x0d, 0x1a, 0xdb, 0x24, + 0x31, 0x88, 0xfd, 0x9f, 0x2c, 0x38, 0x6e, 0xf4, 0xea, 0x1e, 0x98, 0xe6, 0x41, 0xd6, 0x34, 0x9f, + 0x2b, 0x6c, 0x3e, 0xf7, 0xb1, 0xcd, 0xbf, 0x64, 0xc1, 0x59, 0x03, 0x6b, 0xc1, 0x49, 0xdd, 0xf5, + 0x0b, 0x5b, 0x51, 0x4c, 0x12, 0xba, 0x9d, 0x46, 0x8f, 0x19, 0x72, 0xab, 0x31, 0x22, 0x28, 0x94, + 0xaf, 0x92, 0x6d, 0x2e, 0xc4, 0x9e, 0x86, 0x1a, 0x9f, 0x9c, 0x61, 0x2c, 0x46, 0x5c, 0xbd, 0xdb, + 0xa2, 0x68, 0xc7, 0x0a, 0x03, 0xd9, 0x30, 0xc4, 0x84, 0x13, 0x5d, 0xac, 0x54, 0x0d, 0x01, 0xfd, + 0x88, 0x37, 0x58, 0x0b, 0x16, 0x10, 0x3b, 0xc9, 0x74, 0x67, 0x29, 0x26, 0xec, 0xe3, 0x36, 0x2f, + 0x7a, 0xc4, 0x6f, 0x26, 0x74, 0xdb, 0xe0, 0x04, 0x41, 0x98, 0x8a, 0x1d, 0x80, 0xb1, 0x6d, 0x98, + 0xd6, 0xcd, 0xd8, 0xc4, 0xa1, 0x4c, 0x7d, 0x67, 0x95, 0xf8, 0x7c, 0x44, 0x05, 0xd3, 0x79, 0xd6, + 0x82, 0x05, 0xc4, 0xbe, 0x53, 0x62, 0x1b, 0x14, 0xb5, 0xf4, 0xc9, 0xbd, 0xd8, 0xdd, 0xc6, 0x19, + 0x59, 0xb9, 0x54, 0x9c, 0xe0, 0x22, 0xfd, 0x77, 0xb8, 0xaf, 0xe7, 0xc4, 0x25, 0x2e, 0x94, 0xeb, + 0xee, 0xbb, 0xdc, 0xdf, 0x2c, 0xc1, 0x44, 0xf6, 0x81, 0x2e, 0x69, 0x4b, 0xb7, 0x54, 0x06, 0xa3, + 0xbc, 0x13, 0xc3, 0xc0, 0xc7, 0x26, 0x5e, 0x1f, 0x81, 0x55, 0x3a, 0x4a, 0x81, 0x65, 0xca, 0xd3, + 0xf2, 0x1e, 0xf2, 0xf4, 0x49, 0x35, 0xea, 0x95, 0x9c, 0x00, 0xcb, 0xea, 0x94, 0x73, 0x50, 0x49, + 0x52, 0x12, 0x8d, 0x57, 0xb3, 0xf2, 0x68, 0x39, 0x25, 0x11, 0x66, 0x10, 0xfb, 0xbf, 0x95, 0xe0, + 0xe1, 0xec, 0x18, 0x6a, 0x15, 0xf0, 0xc1, 0x8c, 0x0a, 0x78, 0x8f, 0xa9, 0x02, 0xee, 0xee, 0x4c, + 0xbc, 0xb3, 0xcf, 0x63, 0xdf, 0x37, 0x1a, 0x02, 0x5d, 0xca, 0x8d, 0xe2, 0x54, 0x76, 0x14, 0xef, + 0xee, 0x4c, 0x3c, 0xd6, 0xe7, 0x1d, 0x73, 0xc3, 0xfc, 0x24, 0x0c, 0xc5, 0xc4, 0x49, 0xc2, 0x40, + 0x0c, 0xb4, 0xfa, 0x1c, 0x98, 0xb5, 0x62, 0x01, 0xb5, 0xff, 0x5d, 0x3d, 0x3f, 0xd8, 0x97, 0xb8, + 0x13, 0x2e, 0x8c, 0x91, 0x07, 0x15, 0x66, 0xd6, 0x73, 0xd1, 0x70, 0xf5, 0x70, 0xcb, 0x88, 0xaa, + 0x01, 0x45, 0xba, 0x51, 0xa3, 0x5f, 0x8d, 0x36, 0x61, 0xc6, 0x02, 0x6d, 0x41, 0xcd, 0x95, 0xd6, + 0x76, 0xa9, 0x08, 0xbf, 0x94, 0xb0, 0xb5, 0x35, 0xc7, 0x51, 0x2a, 0xaf, 0x95, 0x89, 0xae, 0xb8, + 0x21, 0x02, 0xe5, 0x96, 0x97, 0x8a, 0xcf, 0x7a, 0xc8, 0xfd, 0xd4, 0x25, 0xcf, 0x78, 0xc5, 0x61, + 0xaa, 0x44, 0x2e, 0x79, 0x29, 0xa6, 0xf4, 0xd1, 0xe7, 0x2c, 0x18, 0x49, 0xdc, 0xf6, 0x52, 0x1c, + 0x6e, 0x7a, 0x4d, 0x12, 0x0b, 0x6b, 0xea, 0x90, 0xa2, 0x69, 0x79, 0x66, 0x41, 0x12, 0xd4, 0x7c, + 0xf9, 0xfe, 0x56, 0x43, 0xb0, 0xc9, 0x97, 0xee, 0x32, 0x1e, 0x16, 0xef, 0x3e, 0x4b, 0x5c, 0x8f, + 0xea, 0x3f, 0xb9, 0xa9, 0x62, 0x33, 0xe5, 0xd0, 0xd6, 0xe5, 0x6c, 0xc7, 0xdd, 0xa0, 0xeb, 0x4d, + 0x77, 0xe8, 0x9d, 0x77, 0x76, 0x26, 0x1e, 0x9e, 0xe9, 0xcd, 0x13, 0xf7, 0xeb, 0x0c, 0x1b, 0xb0, + 0xa8, 0xe3, 0xfb, 0x98, 0xbc, 0xd6, 0x21, 0xcc, 0x65, 0x52, 0xc0, 0x80, 0x2d, 0x69, 0x82, 0xb9, + 0x01, 0x33, 0x20, 0xd8, 0xe4, 0x8b, 0x5e, 0x83, 0xa1, 0xb6, 0x93, 0xc6, 0xde, 0x96, 0xf0, 0x93, + 0x1c, 0xd2, 0xde, 0x5f, 0x60, 0xb4, 0x34, 0x73, 0xa6, 0xa9, 0x79, 0x23, 0x16, 0x8c, 0x50, 0x1b, + 0xaa, 0x6d, 0x12, 0xb7, 0xc8, 0x78, 0xad, 0x08, 0x9f, 0xf0, 0x02, 0x25, 0xa5, 0x19, 0xd6, 0xa9, + 0x75, 0xc4, 0xda, 0x30, 0xe7, 0x82, 0x5e, 0x81, 0x5a, 0x42, 0x7c, 0xe2, 0x52, 0xfb, 0xa6, 0xce, + 0x38, 0xbe, 0x77, 0x40, 0x5b, 0x8f, 0x1a, 0x16, 0xcb, 0xe2, 0x51, 0xbe, 0xc0, 0xe4, 0x3f, 0xac, + 0x48, 0xd2, 0x01, 0x8c, 0xfc, 0x4e, 0xcb, 0x0b, 0xc6, 0xa1, 0x88, 0x01, 0x5c, 0x62, 0xb4, 0x72, + 0x03, 0xc8, 0x1b, 0xb1, 0x60, 0x64, 0xff, 0xb1, 0x05, 0x28, 0x2b, 0xd4, 0xee, 0x81, 0x51, 0xfb, + 0x5a, 0xd6, 0xa8, 0x9d, 0x2f, 0xd2, 0xea, 0xe8, 0x63, 0xd7, 0xfe, 0x46, 0x1d, 0x72, 0xea, 0xe0, + 0x1a, 0x49, 0x52, 0xd2, 0x7c, 0x5b, 0x84, 0xbf, 0x2d, 0xc2, 0xdf, 0x16, 0xe1, 0x4a, 0x84, 0xaf, + 0xe6, 0x44, 0xf8, 0x07, 0x8c, 0x55, 0xaf, 0x0f, 0x55, 0x5f, 0x55, 0xa7, 0xae, 0x66, 0x0f, 0x0c, + 0x04, 0x2a, 0x09, 0xae, 0x2c, 0x2f, 0x5e, 0xeb, 0x29, 0xb3, 0x5f, 0xcd, 0xca, 0xec, 0xc3, 0xb2, + 0xf8, 0x7f, 0x41, 0x4a, 0xff, 0x2b, 0x0b, 0xde, 0x95, 0x95, 0x5e, 0x72, 0xe6, 0xcc, 0xb5, 0x82, + 0x30, 0x26, 0xb3, 0xde, 0xda, 0x1a, 0x89, 0x49, 0xe0, 0x92, 0x44, 0x79, 0x31, 0xac, 0x7e, 0x5e, + 0x0c, 0xf4, 0x1c, 0x8c, 0xde, 0x4a, 0xc2, 0x60, 0x29, 0xf4, 0x02, 0x21, 0x82, 0xe8, 0x46, 0xf8, + 0xc4, 0x9d, 0x9d, 0x89, 0x51, 0x3a, 0xa2, 0xb2, 0x1d, 0x67, 0xb0, 0xd0, 0x0c, 0x9c, 0xbc, 0xf5, + 0xda, 0x92, 0x93, 0x1a, 0xee, 0x00, 0xb9, 0x71, 0x67, 0x07, 0x16, 0x57, 0x5e, 0xca, 0x01, 0x71, + 0x37, 0xbe, 0xfd, 0x37, 0x4a, 0xf0, 0x48, 0xee, 0x45, 0x42, 0xdf, 0x0f, 0x3b, 0x29, 0xdd, 0xd4, + 0xa0, 0x5f, 0xb0, 0xe0, 0x44, 0x3b, 0xeb, 0x71, 0x48, 0x84, 0x63, 0xf7, 0x43, 0x85, 0xe9, 0x88, + 0x9c, 0x4b, 0xa3, 0x31, 0x2e, 0x46, 0xe8, 0x44, 0x0e, 0x90, 0xe0, 0xae, 0xbe, 0xa0, 0x57, 0xa0, + 0xde, 0x76, 0xb6, 0xae, 0x47, 0x4d, 0x27, 0x95, 0xfb, 0xc9, 0xfe, 0x6e, 0x80, 0x4e, 0xea, 0xf9, + 0x93, 0xfc, 0xb8, 0x7e, 0x72, 0x2e, 0x48, 0x17, 0xe3, 0xe5, 0x34, 0xf6, 0x82, 0x16, 0x77, 0xe7, + 0x2d, 0x48, 0x32, 0x58, 0x53, 0xb4, 0xbf, 0x6e, 0xe5, 0x95, 0x94, 0x1a, 0x9d, 0xd8, 0x49, 0x49, + 0x6b, 0x1b, 0x7d, 0x1c, 0xaa, 0x74, 0xe3, 0x27, 0x47, 0xe5, 0x66, 0x91, 0x9a, 0xd3, 0xf8, 0x12, + 0x5a, 0x89, 0xd2, 0x7f, 0x09, 0xe6, 0x4c, 0xed, 0x3f, 0xae, 0xe5, 0x8d, 0x05, 0x76, 0x78, 0x7b, + 0x1e, 0xa0, 0x15, 0xae, 0x90, 0x76, 0xe4, 0xd3, 0x61, 0xb1, 0xd8, 0x09, 0x80, 0xf2, 0x75, 0x5c, + 0x52, 0x10, 0x6c, 0x60, 0xa1, 0xbf, 0x64, 0x01, 0xb4, 0xe4, 0x9c, 0x97, 0x86, 0xc0, 0xf5, 0x22, + 0x5f, 0x47, 0xaf, 0x28, 0xdd, 0x17, 0xc5, 0x10, 0x1b, 0xcc, 0xd1, 0x4f, 0x5b, 0x50, 0x4b, 0x65, + 0xf7, 0xb9, 0x6a, 0x5c, 0x29, 0xb2, 0x27, 0xf2, 0xa5, 0xb5, 0x4d, 0xa4, 0x86, 0x44, 0xf1, 0x45, + 0x3f, 0x63, 0x01, 0x24, 0xdb, 0x81, 0xbb, 0x14, 0xfa, 0x9e, 0xbb, 0x2d, 0x34, 0xe6, 0x8d, 0x42, + 0xfd, 0x31, 0x8a, 0x7a, 0x63, 0x8c, 0x8e, 0x86, 0xfe, 0x8f, 0x0d, 0xce, 0xe8, 0x93, 0x50, 0x4b, + 0xc4, 0x74, 0x13, 0x3a, 0x72, 0xa5, 0x58, 0xaf, 0x10, 0xa7, 0x2d, 0xc4, 0xab, 0xf8, 0x87, 0x15, + 0x4f, 0xf4, 0x73, 0x16, 0x1c, 0x8f, 0xb2, 0x7e, 0x3e, 0xa1, 0x0e, 0x8b, 0x93, 0x01, 0x39, 0x3f, + 0x62, 0xe3, 0xd4, 0x9d, 0x9d, 0x89, 0xe3, 0xb9, 0x46, 0x9c, 0xef, 0x05, 0x95, 0x80, 0x7a, 0x06, + 0x2f, 0x46, 0xdc, 0xe7, 0x38, 0xac, 0x25, 0xe0, 0xa5, 0x3c, 0x10, 0x77, 0xe3, 0xa3, 0x25, 0x38, + 0x4d, 0x7b, 0xb7, 0xcd, 0xcd, 0x4f, 0xa9, 0x5e, 0x12, 0xa6, 0x0c, 0x6b, 0x8d, 0x47, 0xc5, 0x0c, + 0x61, 0x5e, 0xfd, 0x3c, 0x0e, 0xee, 0xf9, 0x24, 0xfa, 0x1d, 0x0b, 0x1e, 0xf5, 0x98, 0x1a, 0x30, + 0x1d, 0xe6, 0x5a, 0x23, 0x88, 0x93, 0x58, 0x52, 0xa8, 0xac, 0xe8, 0xa7, 0x7e, 0x1a, 0xff, 0x9f, + 0x78, 0x83, 0x47, 0xe7, 0x76, 0xe9, 0x12, 0xde, 0xb5, 0xc3, 0xf6, 0xb7, 0x4b, 0x99, 0x63, 0x0d, + 0xe5, 0x4b, 0x64, 0x52, 0xc3, 0x95, 0x6e, 0x1c, 0x29, 0x04, 0x0b, 0x95, 0x1a, 0xca, 0x49, 0xa4, + 0xa5, 0x86, 0x6a, 0x4a, 0xb0, 0xc1, 0x9c, 0xda, 0x96, 0x27, 0x9d, 0xbc, 0xc7, 0x52, 0x08, 0xb2, + 0x57, 0x8a, 0xec, 0x52, 0xf7, 0x21, 0xd4, 0x23, 0xa2, 0x6b, 0x27, 0xbb, 0x40, 0xb8, 0xbb, 0x4b, + 0xf6, 0xb7, 0xb3, 0x47, 0x29, 0xc6, 0x1a, 0x1c, 0xe0, 0x98, 0xe8, 0xcb, 0x16, 0x8c, 0xc4, 0xa1, + 0xef, 0x7b, 0x41, 0x8b, 0xca, 0x0b, 0xa1, 0xf4, 0x3e, 0x72, 0x24, 0x7a, 0x47, 0x08, 0x06, 0x66, + 0xa1, 0x62, 0xcd, 0x13, 0x9b, 0x1d, 0xb0, 0xff, 0xc8, 0x82, 0xf1, 0x7e, 0x72, 0x0d, 0x11, 0x78, + 0xa7, 0x5c, 0xb4, 0x2a, 0x48, 0x62, 0x31, 0x98, 0x25, 0x3e, 0x51, 0xfe, 0xe3, 0x5a, 0xe3, 0x09, + 0xf1, 0x9a, 0xef, 0x5c, 0xea, 0x8f, 0x8a, 0x77, 0xa3, 0x83, 0x5e, 0x86, 0x13, 0xc6, 0x7b, 0x25, + 0x6a, 0x60, 0xea, 0x8d, 0x49, 0x6a, 0x48, 0x4c, 0xe7, 0x60, 0x77, 0x77, 0x26, 0x1e, 0xca, 0xb7, + 0x09, 0xc1, 0xdb, 0x45, 0xc7, 0xfe, 0xe5, 0x52, 0xfe, 0x6b, 0x29, 0x9d, 0xf9, 0xa6, 0xd5, 0xb5, + 0x2b, 0xff, 0xd0, 0x51, 0xe8, 0x29, 0xb6, 0x7f, 0x57, 0x71, 0x18, 0xfd, 0x71, 0xee, 0xe3, 0x41, + 0xaf, 0xfd, 0x6f, 0x2a, 0xb0, 0x4b, 0xcf, 0x06, 0x30, 0x82, 0xf7, 0x7d, 0x3a, 0xf8, 0x45, 0x4b, + 0x9d, 0x1c, 0x95, 0xd9, 0x22, 0x6f, 0x1e, 0xd5, 0xd8, 0xf3, 0x7d, 0x48, 0xc2, 0x83, 0x0d, 0x94, + 0x37, 0x3a, 0x7b, 0x46, 0x85, 0xbe, 0x61, 0x65, 0xcf, 0xbe, 0x78, 0xf4, 0x98, 0x77, 0x64, 0x7d, + 0x32, 0x0e, 0xd4, 0x78, 0xc7, 0xf4, 0x31, 0x4c, 0xbf, 0xa3, 0xb6, 0x49, 0x80, 0x35, 0x2f, 0x70, + 0x7c, 0xef, 0x75, 0xba, 0xcb, 0xa8, 0x32, 0x45, 0xc9, 0x2c, 0x8f, 0x8b, 0xaa, 0x15, 0x1b, 0x18, + 0x67, 0xff, 0x22, 0x8c, 0x18, 0x6f, 0xde, 0x23, 0x46, 0xe2, 0xb4, 0x19, 0x23, 0x51, 0x37, 0x42, + 0x1b, 0xce, 0x7e, 0x00, 0x4e, 0xe4, 0x3b, 0xb8, 0x9f, 0xe7, 0xed, 0x3f, 0x1f, 0xce, 0x1f, 0x46, + 0xad, 0x90, 0xb8, 0x4d, 0xbb, 0xf6, 0xb6, 0x83, 0xe8, 0x6d, 0x07, 0xd1, 0xdb, 0x0e, 0x22, 0xd3, + 0xc7, 0x2f, 0x9c, 0x1f, 0xc3, 0xf7, 0xc8, 0xf9, 0x91, 0x71, 0xe7, 0xd4, 0x0a, 0x77, 0xe7, 0xd8, + 0x77, 0xaa, 0x90, 0xb1, 0xa3, 0xf8, 0x78, 0xbf, 0x1b, 0x86, 0x63, 0x12, 0x85, 0xd7, 0xf1, 0xbc, + 0xd0, 0x21, 0x3a, 0x0e, 0x9e, 0x37, 0x63, 0x09, 0xa7, 0xba, 0x26, 0x72, 0xd2, 0x75, 0xa1, 0x44, + 0x94, 0xae, 0x59, 0x72, 0xd2, 0x75, 0xcc, 0x20, 0xe8, 0x03, 0x30, 0x96, 0x3a, 0x71, 0x8b, 0x9a, + 0xcd, 0x9b, 0xec, 0xb3, 0x8a, 0x23, 0xcb, 0x87, 0x04, 0xee, 0xd8, 0x4a, 0x06, 0x8a, 0x73, 0xd8, + 0xe8, 0x35, 0xa8, 0xac, 0x13, 0xbf, 0x2d, 0x86, 0x7c, 0xb9, 0x38, 0x19, 0xcf, 0xde, 0xf5, 0x32, + 0xf1, 0xdb, 0x5c, 0x02, 0xd1, 0x5f, 0x98, 0xb1, 0xa2, 0xf3, 0xad, 0xbe, 0xd1, 0x49, 0xd2, 0xb0, + 0xed, 0xbd, 0x2e, 0x3d, 0x75, 0x1f, 0x2a, 0x98, 0xf1, 0x55, 0x49, 0x9f, 0xbb, 0x44, 0xd4, 0x5f, + 0xac, 0x39, 0xb3, 0x7e, 0x34, 0xbd, 0x98, 0x7d, 0xaa, 0x6d, 0xe1, 0x70, 0x2b, 0xba, 0x1f, 0xb3, + 0x92, 0x3e, 0xef, 0x87, 0xfa, 0x8b, 0x35, 0x67, 0xb4, 0xad, 0xe6, 0xfd, 0x08, 0xeb, 0xc3, 0xf5, + 0x82, 0xfb, 0xc0, 0xe7, 0x7c, 0xcf, 0xf9, 0xff, 0x04, 0x54, 0xdd, 0x75, 0x27, 0x4e, 0xc7, 0x47, + 0xd9, 0xa4, 0x51, 0xae, 0x99, 0x19, 0xda, 0x88, 0x39, 0x0c, 0x3d, 0x06, 0xe5, 0x98, 0xac, 0xb1, + 0xf0, 0x4b, 0x23, 0x30, 0x07, 0x93, 0x35, 0x4c, 0xdb, 0xed, 0x5f, 0x2c, 0x65, 0xcd, 0xa5, 0xec, + 0x7b, 0xf3, 0xd9, 0xee, 0x76, 0xe2, 0x44, 0xba, 0x6f, 0x8c, 0xd9, 0xce, 0x9a, 0xb1, 0x84, 0xa3, + 0x4f, 0x5b, 0x30, 0x7c, 0x2b, 0x09, 0x83, 0x80, 0xa4, 0x42, 0x35, 0xdd, 0x28, 0x78, 0x28, 0xae, + 0x70, 0xea, 0xba, 0x0f, 0xa2, 0x01, 0x4b, 0xbe, 0xb4, 0xbb, 0x64, 0xcb, 0xf5, 0x3b, 0xcd, 0xae, + 0x58, 0x8b, 0x0b, 0xbc, 0x19, 0x4b, 0x38, 0x45, 0xf5, 0x02, 0x8e, 0x5a, 0xc9, 0xa2, 0xce, 0x05, + 0x02, 0x55, 0xc0, 0xed, 0xbf, 0x36, 0x04, 0x67, 0x7a, 0x2e, 0x0e, 0x6a, 0xc8, 0x30, 0x53, 0xe1, + 0xa2, 0xe7, 0x13, 0x19, 0x65, 0xc4, 0x0c, 0x99, 0x1b, 0xaa, 0x15, 0x1b, 0x18, 0xe8, 0xa7, 0x00, + 0x22, 0x27, 0x76, 0xda, 0x44, 0xb9, 0x57, 0x0f, 0x6d, 0x2f, 0xd0, 0x7e, 0x2c, 0x49, 0x9a, 0x7a, + 0x6f, 0xaa, 0x9a, 0x12, 0x6c, 0xb0, 0x44, 0xcf, 0xc3, 0x48, 0x4c, 0x7c, 0xe2, 0x24, 0x2c, 0x7a, + 0x37, 0x9f, 0x8a, 0x80, 0x35, 0x08, 0x9b, 0x78, 0xe8, 0x49, 0x15, 0x90, 0x95, 0x0b, 0x4c, 0xc9, + 0x06, 0x65, 0xa1, 0x37, 0x2c, 0x18, 0x5b, 0xf3, 0x7c, 0xa2, 0xb9, 0x8b, 0xc4, 0x81, 0xc5, 0xc3, + 0xbf, 0xe4, 0x45, 0x93, 0xae, 0x96, 0x90, 0x99, 0xe6, 0x04, 0xe7, 0xd8, 0xd3, 0xcf, 0xbc, 0x49, + 0x62, 0x26, 0x5a, 0x87, 0xb2, 0x9f, 0xf9, 0x06, 0x6f, 0xc6, 0x12, 0x8e, 0xa6, 0xe1, 0x78, 0xe4, + 0x24, 0xc9, 0x4c, 0x4c, 0x9a, 0x24, 0x48, 0x3d, 0xc7, 0xe7, 0x61, 0xfd, 0x35, 0x1d, 0xd6, 0xbb, + 0x94, 0x05, 0xe3, 0x3c, 0x3e, 0xfa, 0x30, 0x3c, 0xcc, 0xfd, 0x17, 0x0b, 0x5e, 0x92, 0x78, 0x41, + 0x4b, 0x4f, 0x03, 0xe1, 0xc6, 0x99, 0x10, 0xa4, 0x1e, 0x9e, 0xeb, 0x8d, 0x86, 0xfb, 0x3d, 0x8f, + 0x9e, 0x86, 0x5a, 0xb2, 0xe1, 0x45, 0x33, 0x71, 0x33, 0x61, 0x67, 0x17, 0x35, 0xed, 0x34, 0x5c, + 0x16, 0xed, 0x58, 0x61, 0x20, 0x17, 0x46, 0xf9, 0x27, 0xe1, 0x11, 0x65, 0x42, 0x3e, 0x3e, 0xd3, + 0x57, 0x3d, 0x8a, 0xcc, 0xb3, 0x49, 0xec, 0xdc, 0xbe, 0x20, 0x4f, 0x52, 0xb8, 0xe3, 0xff, 0x86, + 0x41, 0x06, 0x67, 0x88, 0xda, 0x3f, 0x5f, 0xca, 0xee, 0xb8, 0xcd, 0x45, 0x8a, 0x12, 0xba, 0x14, + 0xd3, 0x1b, 0x4e, 0x2c, 0xbd, 0x31, 0x87, 0xcc, 0x3e, 0x10, 0x74, 0x6f, 0x38, 0xb1, 0xb9, 0xa8, + 0x19, 0x03, 0x2c, 0x39, 0xa1, 0x5b, 0x50, 0x49, 0x7d, 0xa7, 0xa0, 0x74, 0x25, 0x83, 0xa3, 0x76, + 0x80, 0xcc, 0x4f, 0x27, 0x98, 0xf1, 0x40, 0x8f, 0x52, 0xab, 0x7f, 0x55, 0x9e, 0x74, 0x08, 0x43, + 0x7d, 0x35, 0xc1, 0xac, 0xd5, 0xfe, 0xf3, 0x7a, 0x0f, 0xb9, 0xaa, 0x14, 0x19, 0x3a, 0x0f, 0x40, + 0x37, 0x90, 0x4b, 0x31, 0x59, 0xf3, 0xb6, 0x84, 0x21, 0xa1, 0xd6, 0xee, 0x35, 0x05, 0xc1, 0x06, + 0x96, 0x7c, 0x66, 0xb9, 0xb3, 0x46, 0x9f, 0x29, 0x75, 0x3f, 0xc3, 0x21, 0xd8, 0xc0, 0x42, 0xcf, + 0xc1, 0x90, 0xd7, 0x76, 0x5a, 0x2a, 0x92, 0xf2, 0x51, 0xba, 0x68, 0xe7, 0x58, 0xcb, 0xdd, 0x9d, + 0x89, 0x31, 0xd5, 0x21, 0xd6, 0x84, 0x05, 0x2e, 0xfa, 0x65, 0x0b, 0x46, 0xdd, 0xb0, 0xdd, 0x0e, + 0x03, 0xbe, 0xed, 0x12, 0x7b, 0xc8, 0x5b, 0x47, 0xa5, 0xe6, 0x27, 0x67, 0x0c, 0x66, 0x7c, 0x13, + 0xa9, 0xf2, 0xaa, 0x4c, 0x10, 0xce, 0xf4, 0xca, 0x5c, 0xdb, 0xd5, 0x3d, 0xd6, 0xf6, 0xaf, 0x5b, + 0x70, 0x92, 0x3f, 0x6b, 0xec, 0x06, 0x45, 0x0a, 0x51, 0x78, 0xc4, 0xaf, 0xd5, 0xb5, 0x41, 0x56, + 0x5e, 0xba, 0x2e, 0x38, 0xee, 0xee, 0x24, 0xba, 0x04, 0x27, 0xd7, 0xc2, 0xd8, 0x25, 0xe6, 0x40, + 0x08, 0xc1, 0xa4, 0x08, 0x5d, 0xcc, 0x23, 0xe0, 0xee, 0x67, 0xd0, 0x0d, 0x78, 0xc8, 0x68, 0x34, + 0xc7, 0x81, 0xcb, 0xa6, 0xc7, 0x05, 0xb5, 0x87, 0x2e, 0xf6, 0xc4, 0xc2, 0x7d, 0x9e, 0xce, 0x3a, + 0x4c, 0xea, 0x03, 0x38, 0x4c, 0x5e, 0x85, 0x47, 0xdc, 0xee, 0x91, 0xd9, 0x4c, 0x3a, 0xab, 0x09, + 0x97, 0x54, 0xb5, 0xc6, 0x0f, 0x09, 0x02, 0x8f, 0xcc, 0xf4, 0x43, 0xc4, 0xfd, 0x69, 0xa0, 0x8f, + 0x43, 0x2d, 0x26, 0xec, 0xab, 0x24, 0x22, 0x9f, 0xe6, 0x90, 0xbb, 0x64, 0x6d, 0x81, 0x72, 0xb2, + 0x5a, 0xf6, 0x8a, 0x86, 0x04, 0x2b, 0x8e, 0xe8, 0x36, 0x0c, 0x47, 0x4e, 0xea, 0xae, 0x8b, 0x2c, + 0x9a, 0x43, 0x87, 0xb1, 0x28, 0xe6, 0x4b, 0x94, 0xaa, 0x9e, 0xe4, 0x4b, 0x9c, 0x09, 0x96, 0xdc, + 0xce, 0x7e, 0x10, 0x4e, 0x76, 0x2d, 0xa4, 0x7d, 0x39, 0x4b, 0x66, 0xe1, 0xa1, 0xde, 0x53, 0x76, + 0x5f, 0x2e, 0x93, 0x7f, 0x94, 0x8b, 0x3d, 0x35, 0xcc, 0xd8, 0x01, 0xdc, 0x6f, 0x0e, 0x94, 0x49, + 0xb0, 0x29, 0x24, 0xf8, 0xc5, 0xc3, 0x8d, 0xdc, 0x85, 0x60, 0x93, 0xaf, 0x38, 0xe6, 0x63, 0xb8, + 0x10, 0x6c, 0x62, 0x4a, 0x1b, 0x7d, 0xd5, 0xca, 0x98, 0x61, 0xdc, 0x69, 0xf7, 0xd1, 0x23, 0xb1, + 0xdb, 0x07, 0xb6, 0xcc, 0xec, 0x7f, 0x5b, 0x82, 0x73, 0x7b, 0x11, 0x19, 0x60, 0xf8, 0x9e, 0x80, + 0xa1, 0x84, 0x9d, 0x26, 0x0b, 0x91, 0x38, 0x42, 0x67, 0x0a, 0x3f, 0x5f, 0x7e, 0x15, 0x0b, 0x10, + 0xf2, 0xa1, 0xdc, 0x76, 0x22, 0xe1, 0xcb, 0x99, 0x3b, 0x6c, 0x36, 0x0a, 0xfd, 0xef, 0xf8, 0x0b, + 0x4e, 0xc4, 0x3d, 0x04, 0x46, 0x03, 0xa6, 0x6c, 0x50, 0x0a, 0x55, 0x27, 0x8e, 0x1d, 0x79, 0x74, + 0x79, 0xb5, 0x18, 0x7e, 0xd3, 0x94, 0x64, 0xe3, 0xe4, 0x9d, 0x9d, 0x89, 0x63, 0x99, 0x26, 0xcc, + 0x99, 0xd9, 0x5f, 0x1c, 0xce, 0x64, 0x64, 0xb0, 0xf3, 0xe8, 0x04, 0x86, 0x84, 0x0b, 0xc7, 0x2a, + 0x3a, 0x09, 0x88, 0xa7, 0xd4, 0xb1, 0x5d, 0x9a, 0x48, 0x4c, 0x16, 0xac, 0xd0, 0x17, 0x2c, 0x96, + 0xfe, 0x2b, 0xb3, 0x54, 0xc4, 0xde, 0xe8, 0x68, 0xb2, 0x91, 0xcd, 0xa4, 0x62, 0xd9, 0x88, 0x4d, + 0xee, 0x54, 0x67, 0x46, 0x3c, 0x91, 0x2d, 0xbf, 0x43, 0x92, 0x09, 0xc2, 0x12, 0x8e, 0xb6, 0x7a, + 0x9c, 0x3b, 0x17, 0x90, 0x42, 0x3a, 0xc0, 0x49, 0xf3, 0x37, 0x2c, 0x38, 0xe9, 0xe5, 0x0f, 0x10, + 0xc5, 0x4e, 0xe2, 0x90, 0x91, 0x0d, 0xfd, 0xcf, 0x27, 0x95, 0x32, 0xed, 0x02, 0xe1, 0xee, 0xce, + 0xa0, 0x26, 0x54, 0xbc, 0x60, 0x2d, 0x14, 0x26, 0x44, 0xe3, 0x70, 0x9d, 0x9a, 0x0b, 0xd6, 0x42, + 0xbd, 0x9a, 0xe9, 0x3f, 0xcc, 0xa8, 0xa3, 0x79, 0x38, 0x1d, 0x0b, 0x5f, 0xcf, 0x65, 0x2f, 0xa1, + 0x3b, 0xf2, 0x79, 0xaf, 0xed, 0xa5, 0x4c, 0xfd, 0x97, 0x1b, 0xe3, 0x77, 0x76, 0x26, 0x4e, 0xe3, + 0x1e, 0x70, 0xdc, 0xf3, 0x29, 0xf4, 0x3a, 0x0c, 0xcb, 0x7c, 0xe5, 0x5a, 0x11, 0xbb, 0xb2, 0xee, + 0xf9, 0xaf, 0x26, 0xd3, 0xb2, 0x48, 0x4d, 0x96, 0x0c, 0xed, 0x37, 0x46, 0xa0, 0xfb, 0x50, 0x12, + 0x7d, 0x02, 0xea, 0xb1, 0xca, 0xa1, 0xb6, 0x8a, 0x50, 0x96, 0xf2, 0xfb, 0x8a, 0x03, 0x51, 0x65, + 0x88, 0xe8, 0x6c, 0x69, 0xcd, 0x91, 0x6e, 0x17, 0x12, 0x7d, 0x76, 0x59, 0xc0, 0xdc, 0x16, 0x5c, + 0xf5, 0xb9, 0xd4, 0x76, 0xe0, 0x62, 0xc6, 0x03, 0xc5, 0x30, 0xb4, 0x4e, 0x1c, 0x3f, 0x5d, 0x2f, + 0xc6, 0x85, 0x7e, 0x99, 0xd1, 0xca, 0x67, 0xd2, 0xf0, 0x56, 0x2c, 0x38, 0xa1, 0x2d, 0x18, 0x5e, + 0xe7, 0x13, 0x40, 0x58, 0xf0, 0x0b, 0x87, 0x1d, 0xdc, 0xcc, 0xac, 0xd2, 0x9f, 0x5b, 0x34, 0x60, + 0xc9, 0x8e, 0x05, 0xad, 0x18, 0xe7, 0xf1, 0x7c, 0xe9, 0x16, 0x97, 0x44, 0x34, 0xf8, 0x61, 0xfc, + 0xc7, 0x60, 0x34, 0x26, 0x6e, 0x18, 0xb8, 0x9e, 0x4f, 0x9a, 0xd3, 0xd2, 0x3d, 0xbe, 0x9f, 0xd4, + 0x13, 0xb6, 0x0b, 0xc6, 0x06, 0x0d, 0x9c, 0xa1, 0x88, 0x3e, 0x6f, 0xc1, 0x98, 0x4a, 0xbc, 0xa4, + 0x1f, 0x84, 0x08, 0x77, 0xec, 0x7c, 0x41, 0x69, 0x9e, 0x8c, 0x66, 0x03, 0xdd, 0xd9, 0x99, 0x18, + 0xcb, 0xb6, 0xe1, 0x1c, 0x5f, 0xf4, 0x32, 0x40, 0xb8, 0xca, 0x23, 0x53, 0xa6, 0x53, 0xe1, 0x9b, + 0xdd, 0xcf, 0xab, 0x8e, 0xf1, 0x1c, 0x34, 0x49, 0x01, 0x1b, 0xd4, 0xd0, 0x55, 0x00, 0xbe, 0x6c, + 0x56, 0xb6, 0x23, 0x69, 0xe6, 0xcb, 0xdc, 0x21, 0x58, 0x56, 0x90, 0xbb, 0x3b, 0x13, 0xdd, 0xbe, + 0x32, 0x16, 0x36, 0x60, 0x3c, 0x8e, 0x7e, 0x12, 0x86, 0x93, 0x4e, 0xbb, 0xed, 0x28, 0xcf, 0x6d, + 0x81, 0x59, 0x6d, 0x9c, 0xae, 0x21, 0x8a, 0x78, 0x03, 0x96, 0x1c, 0xd1, 0x2d, 0x2a, 0x54, 0x13, + 0xe1, 0xc4, 0x63, 0xab, 0x88, 0xdb, 0x04, 0x23, 0xec, 0x9d, 0xde, 0x27, 0x03, 0x6d, 0x70, 0x0f, + 0x9c, 0xbb, 0x3b, 0x13, 0x0f, 0x65, 0xdb, 0xe7, 0x43, 0x91, 0x67, 0xd6, 0x93, 0x26, 0xba, 0x22, + 0xcb, 0x97, 0xd0, 0xd7, 0x96, 0x59, 0xf5, 0x4f, 0xe9, 0xf2, 0x25, 0xac, 0xb9, 0xff, 0x98, 0x99, + 0x0f, 0xa3, 0x05, 0x38, 0xe5, 0x86, 0x41, 0x1a, 0x87, 0xbe, 0xcf, 0x6b, 0xf2, 0xf0, 0x1d, 0x17, + 0xf7, 0xec, 0xbe, 0x53, 0x74, 0xfb, 0xd4, 0x4c, 0x37, 0x0a, 0xee, 0xf5, 0x9c, 0x1d, 0x64, 0x43, + 0xf6, 0xc4, 0xe0, 0x3c, 0x07, 0xa3, 0x64, 0x2b, 0x25, 0x71, 0xe0, 0xf8, 0xd7, 0xf1, 0xbc, 0xf4, + 0x69, 0xb2, 0x35, 0x70, 0xc1, 0x68, 0xc7, 0x19, 0x2c, 0x64, 0x2b, 0x37, 0x83, 0x91, 0x3b, 0xc9, + 0xdd, 0x0c, 0xd2, 0xa9, 0x60, 0xff, 0xaf, 0x52, 0xc6, 0x20, 0x5b, 0x89, 0x09, 0x41, 0x21, 0x54, + 0x83, 0xb0, 0xa9, 0x64, 0xff, 0x95, 0x62, 0x64, 0xff, 0xb5, 0xb0, 0x69, 0xd4, 0x38, 0xa1, 0xff, + 0x12, 0xcc, 0xf9, 0xb0, 0x22, 0x10, 0xb2, 0x5a, 0x06, 0x03, 0x88, 0x8d, 0x46, 0x91, 0x9c, 0x55, + 0x11, 0x88, 0x45, 0x93, 0x11, 0xce, 0xf2, 0x45, 0x1b, 0x50, 0x5d, 0x0f, 0x93, 0x54, 0x6e, 0x3f, + 0x0e, 0xb9, 0xd3, 0xb9, 0x1c, 0x26, 0x29, 0xb3, 0x22, 0xd4, 0x6b, 0xd3, 0x96, 0x04, 0x73, 0x1e, + 0xf6, 0x7f, 0xb1, 0x32, 0x1e, 0xec, 0x9b, 0x2c, 0x7c, 0x75, 0x93, 0x04, 0x74, 0x59, 0x9b, 0x81, + 0x3e, 0x7f, 0x21, 0x97, 0x0c, 0xf8, 0xae, 0x7e, 0x15, 0xa7, 0x6e, 0x53, 0x0a, 0x93, 0x8c, 0x84, + 0x11, 0x13, 0xf4, 0x29, 0x2b, 0x9b, 0x96, 0x59, 0x2a, 0x62, 0x83, 0x61, 0xa6, 0x26, 0xef, 0x99, + 0xe1, 0x69, 0x7f, 0xd5, 0x82, 0xe1, 0x86, 0xe3, 0x6e, 0x84, 0x6b, 0x6b, 0xe8, 0x69, 0xa8, 0x35, + 0x3b, 0xb1, 0x99, 0x21, 0xaa, 0xb6, 0xed, 0xb3, 0xa2, 0x1d, 0x2b, 0x0c, 0x3a, 0x87, 0xd7, 0x1c, + 0x57, 0x26, 0x28, 0x97, 0xf9, 0x1c, 0xbe, 0xc8, 0x5a, 0xb0, 0x80, 0xa0, 0xe7, 0x61, 0xa4, 0xed, + 0x6c, 0xc9, 0x87, 0xf3, 0xee, 0xf3, 0x05, 0x0d, 0xc2, 0x26, 0x9e, 0xfd, 0x2f, 0x2d, 0x18, 0x6f, + 0x38, 0x89, 0xe7, 0x4e, 0x77, 0xd2, 0xf5, 0x86, 0x97, 0xae, 0x76, 0xdc, 0x0d, 0x92, 0xf2, 0xac, + 0x74, 0xda, 0xcb, 0x4e, 0x42, 0x97, 0x92, 0xda, 0xd7, 0xa9, 0x5e, 0x5e, 0x17, 0xed, 0x58, 0x61, + 0xa0, 0xd7, 0x61, 0x24, 0x72, 0x92, 0xe4, 0x76, 0x18, 0x37, 0x31, 0x59, 0x2b, 0xa6, 0x26, 0xc4, + 0x32, 0x71, 0x63, 0x92, 0x62, 0xb2, 0x26, 0x8e, 0x78, 0x35, 0x7d, 0x6c, 0x32, 0xb3, 0xbf, 0x6c, + 0xc1, 0x23, 0x0d, 0xe2, 0xc4, 0x24, 0x66, 0x25, 0x24, 0xd4, 0x8b, 0xcc, 0xf8, 0x61, 0xa7, 0x89, + 0x5e, 0x83, 0x5a, 0x4a, 0x9b, 0x69, 0xb7, 0xac, 0x62, 0xbb, 0xc5, 0x4e, 0x68, 0x57, 0x04, 0x71, + 0xac, 0xd8, 0xd8, 0x7f, 0xdd, 0x82, 0x51, 0x76, 0xd8, 0x35, 0x4b, 0x52, 0xc7, 0xf3, 0xbb, 0x2a, + 0x2d, 0x59, 0x03, 0x56, 0x5a, 0x3a, 0x07, 0x95, 0xf5, 0xb0, 0x4d, 0xf2, 0x07, 0xb5, 0x97, 0x43, + 0xba, 0xad, 0xa6, 0x10, 0xf4, 0x2c, 0xfd, 0xf0, 0x5e, 0x90, 0x3a, 0x74, 0x09, 0x48, 0x67, 0xea, + 0x71, 0xfe, 0xd1, 0x55, 0x33, 0x36, 0x71, 0xec, 0xdf, 0xac, 0xc3, 0xb0, 0x38, 0xcd, 0x1f, 0xb8, + 0x32, 0x81, 0xdc, 0xdf, 0x97, 0xfa, 0xee, 0xef, 0x13, 0x18, 0x72, 0x59, 0x1d, 0x37, 0x61, 0x46, + 0x5e, 0x2d, 0x24, 0xfc, 0x83, 0x97, 0x86, 0xd3, 0xdd, 0xe2, 0xff, 0xb1, 0x60, 0x85, 0xbe, 0x62, + 0xc1, 0x71, 0x37, 0x0c, 0x02, 0xe2, 0x6a, 0x1b, 0xa7, 0x52, 0xc4, 0x29, 0xff, 0x4c, 0x96, 0xa8, + 0x3e, 0x69, 0xc9, 0x01, 0x70, 0x9e, 0x3d, 0x7a, 0x11, 0x8e, 0xf1, 0x31, 0xbb, 0x91, 0xf1, 0x00, + 0xeb, 0x02, 0x3c, 0x26, 0x10, 0x67, 0x71, 0xd1, 0x24, 0xf7, 0xa4, 0x8b, 0x52, 0x37, 0x43, 0xfa, + 0xd8, 0xce, 0x28, 0x72, 0x63, 0x60, 0xa0, 0x18, 0x50, 0x4c, 0xd6, 0x62, 0x92, 0xac, 0x8b, 0x68, + 0x07, 0x66, 0x5f, 0x0d, 0x1f, 0x2c, 0x8b, 0x19, 0x77, 0x51, 0xc2, 0x3d, 0xa8, 0xa3, 0x0d, 0xb1, + 0xc1, 0xac, 0x15, 0x21, 0x43, 0xc5, 0x67, 0xee, 0xbb, 0xcf, 0x9c, 0x80, 0x6a, 0xb2, 0xee, 0xc4, + 0x4d, 0x66, 0xd7, 0x95, 0x79, 0xe6, 0xcc, 0x32, 0x6d, 0xc0, 0xbc, 0x1d, 0xcd, 0xc2, 0x89, 0x5c, + 0xf9, 0xa0, 0x44, 0x78, 0x6a, 0x55, 0x96, 0x44, 0xae, 0xf0, 0x50, 0x82, 0xbb, 0x9e, 0x30, 0x9d, + 0x0f, 0x23, 0x7b, 0x38, 0x1f, 0xb6, 0x55, 0x4c, 0x1d, 0xf7, 0xa1, 0xbe, 0x54, 0xc8, 0x00, 0x0c, + 0x14, 0x40, 0xf7, 0xa5, 0x5c, 0x00, 0xdd, 0x31, 0xd6, 0x81, 0x1b, 0xc5, 0x74, 0x60, 0xff, 0xd1, + 0x72, 0xf7, 0x33, 0xfa, 0xed, 0xcf, 0x2c, 0x90, 0xdf, 0x75, 0xc6, 0x71, 0xd7, 0x09, 0x9d, 0x32, + 0xe8, 0x03, 0x30, 0xa6, 0xb6, 0xd0, 0x33, 0x61, 0x27, 0xe0, 0x81, 0x6f, 0x65, 0x7d, 0x24, 0x8b, + 0x33, 0x50, 0x9c, 0xc3, 0x46, 0x53, 0x50, 0xa7, 0xe3, 0xc4, 0x1f, 0xe5, 0xba, 0x56, 0x6d, 0xd3, + 0xa7, 0x97, 0xe6, 0xc4, 0x53, 0x1a, 0x07, 0x85, 0x70, 0xd2, 0x77, 0x92, 0x94, 0xf5, 0x80, 0xee, + 0xa8, 0x0f, 0x58, 0x43, 0x80, 0x85, 0xe2, 0xcf, 0xe7, 0x09, 0xe1, 0x6e, 0xda, 0xf6, 0x77, 0x2a, + 0x70, 0x2c, 0x23, 0x19, 0xf7, 0xa9, 0xa4, 0x9f, 0x86, 0x9a, 0xd4, 0x9b, 0xf9, 0x6a, 0x27, 0x4a, + 0xb9, 0x2a, 0x0c, 0xaa, 0xb4, 0x56, 0xb5, 0x56, 0xcd, 0x1b, 0x15, 0x86, 0xc2, 0xc5, 0x26, 0x1e, + 0x13, 0xca, 0xa9, 0x9f, 0xcc, 0xf8, 0x1e, 0x09, 0x52, 0xde, 0xcd, 0x62, 0x84, 0xf2, 0xca, 0xfc, + 0xb2, 0x49, 0x54, 0x0b, 0xe5, 0x1c, 0x00, 0xe7, 0xd9, 0xa3, 0xcf, 0x5a, 0x70, 0xcc, 0xb9, 0x9d, + 0xe8, 0x62, 0xa3, 0x22, 0x54, 0xee, 0x90, 0x4a, 0x2a, 0x53, 0xbf, 0x94, 0xbb, 0x7c, 0x33, 0x4d, + 0x38, 0xcb, 0x14, 0xbd, 0x69, 0x01, 0x22, 0x5b, 0xc4, 0x95, 0xc1, 0x7c, 0xa2, 0x2f, 0x43, 0x45, + 0xec, 0x34, 0x2f, 0x74, 0xd1, 0xe5, 0x52, 0xbd, 0xbb, 0x1d, 0xf7, 0xe8, 0x83, 0xfd, 0x4f, 0xcb, + 0x6a, 0x41, 0xe9, 0xf8, 0x51, 0xc7, 0x88, 0x63, 0xb3, 0x0e, 0x1e, 0xc7, 0xa6, 0xe3, 0x01, 0xba, + 0x53, 0x13, 0x33, 0x99, 0x4c, 0xa5, 0xfb, 0x94, 0xc9, 0xf4, 0xd3, 0x56, 0xa6, 0xae, 0xcf, 0xc8, + 0xf9, 0x97, 0x8b, 0x8d, 0x5d, 0x9d, 0xe4, 0xb1, 0x0a, 0x39, 0xe9, 0x9e, 0x0d, 0x51, 0xa1, 0xd2, + 0xd4, 0x40, 0xdb, 0x97, 0x34, 0xfc, 0x0f, 0x65, 0x18, 0x31, 0x34, 0x69, 0x4f, 0xb3, 0xc8, 0x7a, + 0xc0, 0xcc, 0xa2, 0xd2, 0x3e, 0xcc, 0xa2, 0x9f, 0x82, 0xba, 0x2b, 0xa5, 0x7c, 0x31, 0x95, 0x6d, + 0xf3, 0xba, 0x43, 0x0b, 0x7a, 0xd5, 0x84, 0x35, 0x4f, 0x74, 0x29, 0x93, 0x38, 0x23, 0x34, 0x44, + 0x85, 0x69, 0x88, 0x5e, 0x99, 0x2d, 0x42, 0x53, 0x74, 0x3f, 0xc3, 0xca, 0x3f, 0x45, 0x9e, 0x78, + 0x2f, 0x19, 0x61, 0xce, 0xcb, 0x3f, 0x2d, 0xcd, 0xc9, 0x66, 0x6c, 0xe2, 0xd8, 0xdf, 0xb1, 0xd4, + 0xc7, 0xbd, 0x07, 0x85, 0x0e, 0x6e, 0x65, 0x0b, 0x1d, 0x5c, 0x28, 0x64, 0x98, 0xfb, 0x54, 0x38, + 0xb8, 0x06, 0xc3, 0x33, 0x61, 0xbb, 0xed, 0x04, 0x4d, 0xf4, 0xc3, 0x30, 0xec, 0xf2, 0x9f, 0xc2, + 0xb1, 0xc3, 0x8e, 0x07, 0x05, 0x14, 0x4b, 0x18, 0x7a, 0x14, 0x2a, 0x4e, 0xdc, 0x92, 0xce, 0x1c, + 0x16, 0xda, 0x32, 0x1d, 0xb7, 0x12, 0xcc, 0x5a, 0xed, 0x5f, 0xab, 0x00, 0xcc, 0x84, 0xed, 0xc8, + 0x89, 0x49, 0x73, 0x25, 0x64, 0x95, 0xf5, 0x8e, 0xf4, 0x50, 0x4d, 0x6f, 0x96, 0x1e, 0xe4, 0x83, + 0x35, 0xe3, 0x70, 0xa5, 0x7c, 0x8f, 0x0f, 0x57, 0xfa, 0x9c, 0x97, 0x55, 0x1e, 0xa0, 0xf3, 0x32, + 0xfb, 0x8b, 0x16, 0x20, 0x3a, 0x69, 0xc2, 0x80, 0x04, 0xa9, 0x3e, 0xd0, 0x9e, 0x82, 0xba, 0x2b, + 0x5b, 0x85, 0x61, 0xa5, 0x45, 0x84, 0x04, 0x60, 0x8d, 0x33, 0xc0, 0x0e, 0xf9, 0x09, 0x29, 0xbf, + 0xcb, 0xd9, 0xa8, 0x58, 0x26, 0xf5, 0x85, 0x38, 0xb7, 0x7f, 0xab, 0x04, 0x0f, 0x71, 0x95, 0xbc, + 0xe0, 0x04, 0x4e, 0x8b, 0xb4, 0x69, 0xaf, 0x06, 0x0d, 0x51, 0x70, 0xe9, 0xd6, 0xcc, 0x93, 0x51, + 0xae, 0x87, 0x5d, 0xbb, 0x7c, 0xcd, 0xf1, 0x55, 0x36, 0x17, 0x78, 0x29, 0x66, 0xc4, 0x51, 0x02, + 0x35, 0x59, 0xca, 0x5d, 0xc8, 0xe2, 0x82, 0x18, 0x29, 0xb1, 0x24, 0xf4, 0x26, 0xc1, 0x8a, 0x11, + 0x35, 0x5c, 0xfd, 0xd0, 0xdd, 0xc0, 0x24, 0x0a, 0x99, 0xdc, 0x35, 0x82, 0x0c, 0xe7, 0x45, 0x3b, + 0x56, 0x18, 0xf6, 0x6f, 0x59, 0x90, 0xd7, 0x48, 0x46, 0x09, 0x33, 0x6b, 0xd7, 0x12, 0x66, 0xfb, + 0xa8, 0x21, 0xf6, 0x13, 0x30, 0xe2, 0xa4, 0xd4, 0x88, 0xe0, 0xdb, 0xee, 0xf2, 0xc1, 0x8e, 0x35, + 0x16, 0xc2, 0xa6, 0xb7, 0xe6, 0xb1, 0xed, 0xb6, 0x49, 0xce, 0xfe, 0x1f, 0x15, 0x38, 0xd9, 0x95, + 0x8b, 0x81, 0x5e, 0x80, 0x51, 0x57, 0x4c, 0x8f, 0x48, 0x3a, 0xb4, 0xea, 0x66, 0x50, 0x9a, 0x86, + 0xe1, 0x0c, 0xe6, 0x00, 0x13, 0x74, 0x0e, 0x4e, 0xc5, 0x74, 0xa3, 0xdf, 0x21, 0xd3, 0x6b, 0x29, + 0x89, 0x97, 0x89, 0x1b, 0x06, 0x4d, 0x5e, 0x68, 0xaf, 0xdc, 0x78, 0xf8, 0xce, 0xce, 0xc4, 0x29, + 0xdc, 0x0d, 0xc6, 0xbd, 0x9e, 0x41, 0x11, 0x1c, 0xf3, 0x4d, 0x1b, 0x50, 0x6c, 0x00, 0x0e, 0x64, + 0x3e, 0x2a, 0x1b, 0x21, 0xd3, 0x8c, 0xb3, 0x0c, 0xb2, 0x86, 0x64, 0xf5, 0x3e, 0x19, 0x92, 0x9f, + 0xd1, 0x86, 0x24, 0x3f, 0x7f, 0xff, 0x48, 0xc1, 0xb9, 0x38, 0x47, 0x6d, 0x49, 0xbe, 0x04, 0x35, + 0x19, 0x9b, 0x34, 0x50, 0x4c, 0x8f, 0x49, 0xa7, 0x8f, 0x44, 0xbb, 0x5b, 0x82, 0x1e, 0x9b, 0x10, + 0xba, 0xce, 0xb4, 0xc6, 0xcf, 0xac, 0xb3, 0xfd, 0x69, 0x7d, 0xb4, 0xc5, 0xe3, 0xb2, 0xb8, 0x6e, + 0xfb, 0x70, 0xd1, 0x9b, 0x28, 0x1d, 0xaa, 0xa5, 0x52, 0x14, 0x54, 0xb8, 0xd6, 0x79, 0x00, 0x6d, + 0xa8, 0x89, 0x00, 0x74, 0x75, 0xec, 0xab, 0xed, 0x39, 0x6c, 0x60, 0xd1, 0x3d, 0xb5, 0x17, 0x24, + 0xa9, 0xe3, 0xfb, 0x97, 0xbd, 0x20, 0x15, 0xce, 0x41, 0xa5, 0xc4, 0xe7, 0x34, 0x08, 0x9b, 0x78, + 0x67, 0xdf, 0x67, 0x7c, 0x97, 0xfd, 0x7c, 0xcf, 0x5f, 0x1b, 0x82, 0x51, 0x33, 0xa9, 0x6d, 0x3f, + 0x59, 0x42, 0x9f, 0xa3, 0x66, 0x8c, 0x48, 0xb8, 0xf0, 0xd4, 0x81, 0xd4, 0xb5, 0xe2, 0x32, 0xec, + 0xa8, 0x31, 0x68, 0x18, 0x30, 0x9a, 0x15, 0x36, 0xf9, 0xa2, 0x04, 0xaa, 0x6b, 0x2c, 0x52, 0xbd, + 0x7c, 0x24, 0x1d, 0x50, 0xb3, 0x96, 0xc7, 0xb9, 0x73, 0x5e, 0x54, 0xe1, 0xc4, 0xd9, 0xd4, 0x27, + 0x23, 0xb2, 0x52, 0x24, 0x3d, 0x29, 0x8c, 0x7e, 0x92, 0xb3, 0x7a, 0x00, 0xc9, 0x99, 0x91, 0x63, + 0x43, 0xf7, 0x49, 0x8e, 0xb1, 0x8c, 0x83, 0x74, 0x9d, 0x99, 0x43, 0x22, 0x14, 0x7c, 0x98, 0x0d, + 0x82, 0x91, 0x71, 0x90, 0x01, 0xe3, 0x3c, 0x3e, 0xfa, 0xa4, 0x92, 0x84, 0xb5, 0x22, 0xdc, 0x94, + 0xe6, 0x67, 0x3b, 0x6a, 0x21, 0xf8, 0x2a, 0x9c, 0xc8, 0xcf, 0x12, 0x95, 0x32, 0x67, 0xf5, 0x4d, + 0x99, 0x33, 0x52, 0x7c, 0x4a, 0xd9, 0x8c, 0xa4, 0x7c, 0x8a, 0x8f, 0xfd, 0xc5, 0x12, 0x8c, 0x5d, + 0x0a, 0x3a, 0x4b, 0x97, 0x96, 0x3a, 0xab, 0xbe, 0xe7, 0x5e, 0x25, 0xdb, 0x54, 0x94, 0x6e, 0x90, + 0xed, 0xb9, 0x59, 0xc1, 0x40, 0x4d, 0xca, 0xab, 0xb4, 0x11, 0x73, 0x18, 0x15, 0x1e, 0x6b, 0x5e, + 0xd0, 0x22, 0x71, 0x14, 0x7b, 0xc2, 0x45, 0x69, 0x08, 0x8f, 0x8b, 0x1a, 0x84, 0x4d, 0x3c, 0x4a, + 0x3b, 0xbc, 0x1d, 0x90, 0x38, 0x6f, 0x78, 0x2e, 0xd2, 0x46, 0xcc, 0x61, 0x14, 0x29, 0x8d, 0x3b, + 0x49, 0x2a, 0x66, 0xbb, 0x42, 0x5a, 0xa1, 0x8d, 0x98, 0xc3, 0xe8, 0x3b, 0x26, 0x9d, 0x55, 0x16, + 0x68, 0x91, 0x0b, 0x6c, 0x5f, 0xe6, 0xcd, 0x58, 0xc2, 0x29, 0xea, 0x06, 0xd9, 0x9e, 0xa5, 0xbb, + 0xd4, 0x5c, 0x7e, 0xcb, 0x55, 0xde, 0x8c, 0x25, 0x9c, 0x55, 0xf4, 0xcb, 0x0e, 0xc7, 0xf7, 0x5d, + 0x45, 0xbf, 0x6c, 0xf7, 0xfb, 0xec, 0x77, 0x7f, 0xc9, 0x82, 0x51, 0x33, 0x3c, 0x0a, 0xb5, 0x72, + 0x36, 0xe9, 0x62, 0x57, 0x41, 0xd8, 0x1f, 0xeb, 0x75, 0x43, 0x56, 0xcb, 0x4b, 0xc3, 0x28, 0x79, + 0x86, 0x04, 0x2d, 0x2f, 0x20, 0xec, 0xd4, 0x9b, 0x87, 0x55, 0x65, 0x62, 0xaf, 0x66, 0xc2, 0x26, + 0x39, 0x80, 0x51, 0x6b, 0xdf, 0x84, 0x93, 0x5d, 0x49, 0x4d, 0x03, 0x98, 0x02, 0x7b, 0xa6, 0x94, + 0xda, 0x18, 0x46, 0x28, 0x61, 0x59, 0x55, 0x66, 0x06, 0x4e, 0xf2, 0x95, 0x4a, 0x39, 0x2d, 0xbb, + 0xeb, 0xa4, 0xad, 0x12, 0xd5, 0x98, 0x3f, 0xfc, 0x46, 0x1e, 0x88, 0xbb, 0xf1, 0xed, 0x2f, 0x59, + 0x70, 0x2c, 0x93, 0x67, 0x56, 0x90, 0xd1, 0xc2, 0x56, 0x5a, 0xc8, 0xa2, 0xf5, 0x58, 0xc8, 0x72, + 0x99, 0x2d, 0x68, 0xbd, 0xd2, 0x34, 0x08, 0x9b, 0x78, 0xf6, 0x57, 0x4b, 0x50, 0x93, 0x11, 0x0f, + 0x03, 0x74, 0xe5, 0x0b, 0x16, 0x1c, 0x53, 0x67, 0x10, 0xcc, 0xb9, 0x55, 0x88, 0x8e, 0xa5, 0x3d, + 0x50, 0xdb, 0xe3, 0x60, 0x2d, 0xd4, 0x16, 0x34, 0x36, 0x99, 0xe1, 0x2c, 0x6f, 0x74, 0x03, 0x20, + 0xd9, 0x4e, 0x52, 0xd2, 0x36, 0xdc, 0x6c, 0xb6, 0xb1, 0xe2, 0x26, 0xdd, 0x30, 0x26, 0x74, 0x7d, + 0x5d, 0x0b, 0x9b, 0x64, 0x59, 0x61, 0x6a, 0x93, 0x47, 0xb7, 0x61, 0x83, 0x92, 0xfd, 0x0f, 0x4a, + 0x70, 0x22, 0xdf, 0x25, 0xf4, 0x11, 0x18, 0x95, 0xdc, 0x8d, 0xdb, 0xbe, 0x64, 0x98, 0xc7, 0x28, + 0x36, 0x60, 0x77, 0x77, 0x26, 0x26, 0xba, 0x6f, 0x5b, 0x9b, 0x34, 0x51, 0x70, 0x86, 0x18, 0x3f, + 0x08, 0x12, 0x27, 0x96, 0x8d, 0xed, 0xe9, 0x28, 0x12, 0xa7, 0x39, 0xc6, 0x41, 0x90, 0x09, 0xc5, + 0x39, 0x6c, 0xb4, 0x04, 0xa7, 0x8d, 0x96, 0x6b, 0xc4, 0x6b, 0xad, 0xaf, 0x86, 0xb1, 0xdc, 0x09, + 0x3d, 0xaa, 0x03, 0xb1, 0xba, 0x71, 0x70, 0xcf, 0x27, 0xa9, 0x39, 0xe1, 0x3a, 0x91, 0xe3, 0x7a, + 0xe9, 0xb6, 0xf0, 0x1b, 0x2a, 0xd9, 0x34, 0x23, 0xda, 0xb1, 0xc2, 0xb0, 0x17, 0xa0, 0x32, 0xe0, + 0x0c, 0x1a, 0xc8, 0x02, 0x7f, 0x09, 0x6a, 0x94, 0x9c, 0xd4, 0x63, 0x45, 0x90, 0x0c, 0xa1, 0x26, + 0x2f, 0xec, 0x40, 0x36, 0x94, 0x3d, 0x47, 0x9e, 0xb5, 0xa9, 0xd7, 0x9a, 0x4b, 0x92, 0x0e, 0xdb, + 0xd4, 0x52, 0x20, 0x7a, 0x02, 0xca, 0x64, 0x2b, 0xca, 0x1f, 0xaa, 0x5d, 0xd8, 0x8a, 0xbc, 0x98, + 0x24, 0x14, 0x89, 0x6c, 0x45, 0xe8, 0x2c, 0x94, 0xbc, 0xa6, 0x50, 0x52, 0x20, 0x70, 0x4a, 0x73, + 0xb3, 0xb8, 0xe4, 0x35, 0xed, 0x2d, 0xa8, 0xab, 0x1b, 0x42, 0xd0, 0x86, 0x94, 0xdd, 0x56, 0x11, + 0x21, 0x4a, 0x92, 0x6e, 0x1f, 0xa9, 0xdd, 0x01, 0xd0, 0x09, 0x77, 0x45, 0xc9, 0x97, 0x73, 0x50, + 0x71, 0x43, 0x91, 0x0c, 0x5c, 0xd3, 0x64, 0x98, 0xd0, 0x66, 0x10, 0xfb, 0x26, 0x8c, 0x5d, 0x0d, + 0xc2, 0xdb, 0xac, 0xbc, 0x39, 0xab, 0xe6, 0x45, 0x09, 0xaf, 0xd1, 0x1f, 0x79, 0x13, 0x81, 0x41, + 0x31, 0x87, 0xa9, 0xfa, 0x48, 0xa5, 0x7e, 0xf5, 0x91, 0xec, 0x4f, 0x59, 0x30, 0xaa, 0x32, 0x77, + 0x2e, 0x6d, 0x6e, 0x50, 0xba, 0xad, 0x38, 0xec, 0x44, 0x79, 0xba, 0xec, 0x0e, 0x1f, 0xcc, 0x61, + 0x66, 0x4a, 0x5b, 0x69, 0x8f, 0x94, 0xb6, 0x73, 0x50, 0xd9, 0xf0, 0x82, 0x66, 0xfe, 0x52, 0x8a, + 0xab, 0x5e, 0xd0, 0xc4, 0x0c, 0x42, 0xbb, 0x70, 0x42, 0x75, 0x41, 0x2a, 0x84, 0x17, 0x60, 0x74, + 0xb5, 0xe3, 0xf9, 0x4d, 0x59, 0xa6, 0x2c, 0xe7, 0xd9, 0x68, 0x18, 0x30, 0x9c, 0xc1, 0xa4, 0xfb, + 0xb0, 0x55, 0x2f, 0x70, 0xe2, 0xed, 0x25, 0xad, 0x81, 0x94, 0x50, 0x6a, 0x28, 0x08, 0x36, 0xb0, + 0xec, 0x37, 0xca, 0x30, 0x96, 0xcd, 0x5f, 0x1a, 0xc0, 0xc4, 0x7b, 0x02, 0xaa, 0x2c, 0xa5, 0x29, + 0xff, 0x69, 0xd9, 0xf3, 0x98, 0xc3, 0x50, 0x02, 0x43, 0xbc, 0x18, 0x42, 0x31, 0x17, 0xba, 0xa8, + 0x4e, 0x2a, 0x7f, 0x08, 0x8b, 0xff, 0x12, 0xf5, 0x17, 0x04, 0x2b, 0xf4, 0x59, 0x0b, 0x86, 0xc3, + 0xc8, 0xac, 0xab, 0xf3, 0xe1, 0x22, 0x73, 0xbb, 0x44, 0x72, 0x8b, 0x30, 0xb9, 0xd5, 0xa7, 0x97, + 0x9f, 0x43, 0xb2, 0x3e, 0xfb, 0x7e, 0x18, 0x35, 0x31, 0xf7, 0xb2, 0xba, 0x6b, 0xa6, 0xd5, 0xfd, + 0x05, 0x73, 0x52, 0x88, 0xec, 0xb5, 0x01, 0x96, 0xdb, 0x75, 0xa8, 0xba, 0xea, 0xc0, 0xfe, 0x40, + 0xc5, 0x2d, 0x55, 0x75, 0x02, 0x76, 0x68, 0xc3, 0xa9, 0xd9, 0xdf, 0xb1, 0x8c, 0xf9, 0x81, 0x49, + 0x32, 0xd7, 0x44, 0x31, 0x94, 0x5b, 0x9b, 0x1b, 0xc2, 0x14, 0xbd, 0x52, 0xd0, 0xf0, 0x5e, 0xda, + 0xdc, 0xd0, 0x73, 0xdc, 0x6c, 0xc5, 0x94, 0xd9, 0x00, 0x4e, 0xbb, 0x4c, 0x92, 0x63, 0x79, 0xef, + 0x24, 0x47, 0xfb, 0xcd, 0x12, 0x9c, 0xec, 0x9a, 0x54, 0xe8, 0x75, 0xa8, 0xc6, 0xf4, 0x2d, 0xc5, + 0xeb, 0xcd, 0x17, 0x96, 0x96, 0x98, 0xcc, 0x35, 0xb5, 0xde, 0xcd, 0xb6, 0x63, 0xce, 0x12, 0x5d, + 0x01, 0xa4, 0xc3, 0x4a, 0x94, 0xc7, 0x90, 0xbf, 0xf2, 0x59, 0xf1, 0x28, 0x9a, 0xee, 0xc2, 0xc0, + 0x3d, 0x9e, 0x42, 0x2f, 0xe6, 0x1d, 0x8f, 0xe5, 0xec, 0x39, 0xe3, 0x6e, 0x3e, 0x44, 0xfb, 0x9f, + 0x95, 0xe0, 0x58, 0xa6, 0xcc, 0x11, 0xf2, 0xa1, 0x46, 0x7c, 0xe6, 0x84, 0x97, 0xca, 0xe6, 0xb0, + 0xc5, 0x7f, 0x95, 0x82, 0xbc, 0x20, 0xe8, 0x62, 0xc5, 0xe1, 0xc1, 0x38, 0x0c, 0x7f, 0x01, 0x46, + 0x65, 0x87, 0x3e, 0xec, 0xb4, 0x7d, 0x31, 0x80, 0x6a, 0x8e, 0x5e, 0x30, 0x60, 0x38, 0x83, 0x69, + 0xff, 0x76, 0x19, 0xc6, 0xf9, 0xa9, 0x45, 0x53, 0xcd, 0xbc, 0x05, 0xb9, 0xdf, 0xfa, 0xcb, 0xba, + 0x18, 0x19, 0x1f, 0xc8, 0xd5, 0xc3, 0xd6, 0xda, 0xef, 0xcd, 0x68, 0xa0, 0x48, 0xaa, 0x5f, 0xc8, + 0x45, 0x52, 0x71, 0xb3, 0xbb, 0x75, 0x44, 0x3d, 0xfa, 0xfe, 0x0a, 0xad, 0xfa, 0xbb, 0x25, 0x38, + 0x9e, 0xbb, 0xc8, 0x00, 0xbd, 0x91, 0xad, 0x7d, 0x6b, 0x15, 0xe1, 0xdb, 0xde, 0xb5, 0xb6, 0xfd, + 0xfe, 0x2a, 0xe0, 0xde, 0xa7, 0xa5, 0x62, 0xff, 0x5e, 0x09, 0xc6, 0xb2, 0x37, 0x30, 0x3c, 0x80, + 0x23, 0xf5, 0x1e, 0xa8, 0xb3, 0x22, 0xe3, 0xec, 0x66, 0x49, 0xee, 0x42, 0xe7, 0xf5, 0x9c, 0x65, + 0x23, 0xd6, 0xf0, 0x07, 0xa2, 0xb0, 0xb0, 0xfd, 0xf7, 0x2c, 0x38, 0xc3, 0xdf, 0x32, 0x3f, 0x0f, + 0xff, 0x4a, 0xaf, 0xd1, 0x7d, 0xa5, 0xd8, 0x0e, 0xe6, 0x8a, 0xe8, 0xed, 0x35, 0xbe, 0xec, 0x46, + 0x3b, 0xd1, 0xdb, 0xec, 0x54, 0x78, 0x00, 0x3b, 0xbb, 0xaf, 0xc9, 0x60, 0xff, 0x5e, 0x19, 0xf4, + 0x25, 0x7e, 0xc8, 0x13, 0x39, 0x89, 0x85, 0x14, 0x13, 0x5c, 0xde, 0x0e, 0x5c, 0x7d, 0x5d, 0x60, + 0x2d, 0x97, 0x92, 0xf8, 0xb3, 0x16, 0x8c, 0x78, 0x81, 0x97, 0x7a, 0x0e, 0xdb, 0x46, 0x17, 0x73, + 0xc1, 0x98, 0x62, 0x37, 0xc7, 0x29, 0x87, 0xb1, 0x79, 0xee, 0xa2, 0x98, 0x61, 0x93, 0x33, 0xfa, + 0x98, 0x08, 0x76, 0x2e, 0x17, 0x96, 0x4d, 0x5b, 0xcb, 0x45, 0x38, 0x47, 0xd4, 0xf0, 0x4a, 0xe3, + 0x82, 0x92, 0xd0, 0x31, 0x25, 0xa5, 0xea, 0xd2, 0xea, 0xeb, 0x94, 0x69, 0x33, 0xe6, 0x8c, 0xec, + 0x04, 0x50, 0xf7, 0x58, 0xec, 0x33, 0x90, 0x74, 0x0a, 0xea, 0x4e, 0x27, 0x0d, 0xdb, 0x74, 0x98, + 0x84, 0xbb, 0x5b, 0x87, 0xca, 0x4a, 0x00, 0xd6, 0x38, 0xf6, 0x1b, 0x55, 0xc8, 0x25, 0x09, 0xa2, + 0x2d, 0xf3, 0x02, 0x4a, 0xab, 0xd8, 0x0b, 0x28, 0x55, 0x67, 0x7a, 0x5d, 0x42, 0x89, 0x5a, 0x50, + 0x8d, 0xd6, 0x9d, 0x44, 0x9a, 0xd5, 0x2f, 0xa9, 0x7d, 0x1c, 0x6d, 0xbc, 0xbb, 0x33, 0xf1, 0xe3, + 0x83, 0x79, 0x5d, 0xe9, 0x5c, 0x9d, 0xe2, 0xc5, 0x3e, 0x34, 0x6b, 0x46, 0x03, 0x73, 0xfa, 0xfb, + 0xb9, 0x62, 0xed, 0xd3, 0xa2, 0x9a, 0x3a, 0x26, 0x49, 0xc7, 0x4f, 0xc5, 0x6c, 0x78, 0xa9, 0xc0, + 0x55, 0xc6, 0x09, 0xeb, 0xf4, 0x76, 0xfe, 0x1f, 0x1b, 0x4c, 0xd1, 0x47, 0xa0, 0x9e, 0xa4, 0x4e, + 0x9c, 0x1e, 0x30, 0x21, 0x55, 0x0d, 0xfa, 0xb2, 0x24, 0x82, 0x35, 0x3d, 0xf4, 0x32, 0xab, 0xad, + 0xea, 0x25, 0xeb, 0x07, 0xcc, 0x51, 0x90, 0x75, 0x58, 0x05, 0x05, 0x6c, 0x50, 0x43, 0xe7, 0x01, + 0xd8, 0xdc, 0xe6, 0x81, 0x79, 0x35, 0xe6, 0x65, 0x52, 0xa2, 0x10, 0x2b, 0x08, 0x36, 0xb0, 0xec, + 0x1f, 0x81, 0x6c, 0x7d, 0x06, 0x34, 0x21, 0xcb, 0x41, 0x70, 0x2f, 0x34, 0xcb, 0x35, 0xc8, 0x54, + 0x6e, 0xf8, 0x75, 0x0b, 0xcc, 0x22, 0x12, 0xe8, 0x35, 0x5e, 0xad, 0xc2, 0x2a, 0x22, 0x87, 0xd8, + 0xa0, 0x3b, 0xb9, 0xe0, 0x44, 0xb9, 0x23, 0x67, 0x59, 0xb2, 0xe2, 0xec, 0xfb, 0xa0, 0x26, 0xa1, + 0xfb, 0x32, 0xea, 0x3e, 0x09, 0xa7, 0xf2, 0xd7, 0x73, 0x8b, 0x53, 0xa7, 0xbd, 0x5d, 0x3f, 0xd2, + 0x9f, 0x53, 0xea, 0xe7, 0xcf, 0x19, 0xe0, 0x1a, 0xd2, 0xdf, 0xb0, 0xe0, 0xdc, 0x5e, 0xb7, 0x88, + 0xa3, 0x47, 0xa1, 0x72, 0xdb, 0x89, 0x65, 0xd1, 0x6b, 0x26, 0x28, 0x6f, 0x3a, 0x71, 0x80, 0x59, + 0x2b, 0xda, 0x86, 0x21, 0x1e, 0xbd, 0x25, 0xac, 0xf5, 0x97, 0x8a, 0xbd, 0xd3, 0xfc, 0x2a, 0x31, + 0xb6, 0x0b, 0x3c, 0x72, 0x0c, 0x0b, 0x86, 0xf6, 0x77, 0x2d, 0x40, 0x8b, 0x9b, 0x24, 0x8e, 0xbd, + 0xa6, 0x11, 0x6f, 0xc6, 0x6e, 0x25, 0x31, 0x6e, 0x1f, 0x31, 0x53, 0x52, 0x73, 0xb7, 0x92, 0x18, + 0xff, 0x7a, 0xdf, 0x4a, 0x52, 0xda, 0xdf, 0xad, 0x24, 0x68, 0x11, 0xce, 0xb4, 0xf9, 0x76, 0x83, + 0x57, 0xfa, 0xe7, 0x7b, 0x0f, 0x95, 0x00, 0xf6, 0xc8, 0x9d, 0x9d, 0x89, 0x33, 0x0b, 0xbd, 0x10, + 0x70, 0xef, 0xe7, 0xec, 0xf7, 0x01, 0xe2, 0x61, 0x66, 0x33, 0xbd, 0x62, 0x86, 0xfa, 0xba, 0x5f, + 0xec, 0xaf, 0x57, 0xe1, 0x78, 0xae, 0x24, 0x2a, 0xdd, 0xea, 0x75, 0x07, 0x29, 0x1d, 0x5a, 0x7f, + 0x77, 0x77, 0x6f, 0xa0, 0xb0, 0xa7, 0x00, 0xaa, 0x5e, 0x10, 0x75, 0xd2, 0x62, 0x72, 0x3e, 0x79, + 0x27, 0xe6, 0x28, 0x41, 0xc3, 0x5d, 0x4c, 0xff, 0x62, 0xce, 0xa6, 0xc8, 0x20, 0xaa, 0x8c, 0x31, + 0x5e, 0xb9, 0x4f, 0xee, 0x80, 0x4f, 0xeb, 0x90, 0xa6, 0x6a, 0x11, 0x8e, 0xc5, 0xdc, 0x64, 0x39, + 0xea, 0xb3, 0xfc, 0x5f, 0x2d, 0xc1, 0x88, 0xf1, 0xd1, 0xd0, 0x2f, 0x66, 0x4b, 0x2c, 0x59, 0xc5, + 0xbd, 0x12, 0xa3, 0x3f, 0xa9, 0x8b, 0x28, 0xf1, 0x57, 0x7a, 0xb2, 0xbb, 0xba, 0xd2, 0xdd, 0x9d, + 0x89, 0x13, 0xb9, 0xfa, 0x49, 0x99, 0x8a, 0x4b, 0x67, 0x3f, 0x01, 0xc7, 0x73, 0x64, 0x7a, 0xbc, + 0xf2, 0x4a, 0xf6, 0xf6, 0xf5, 0x43, 0xba, 0xa5, 0xcc, 0x21, 0x7b, 0x8b, 0x0e, 0x99, 0x48, 0x7b, + 0x0b, 0x7d, 0x32, 0x80, 0x0f, 0x36, 0x97, 0xdd, 0x5a, 0x1a, 0x30, 0xbb, 0xf5, 0x29, 0xa8, 0x45, + 0xa1, 0xef, 0xb9, 0x9e, 0xaa, 0x02, 0xc8, 0xf2, 0x69, 0x97, 0x44, 0x1b, 0x56, 0x50, 0x74, 0x1b, + 0xea, 0xea, 0xa2, 0x7a, 0xe1, 0xdf, 0x2e, 0xea, 0xd0, 0x47, 0x19, 0x2d, 0xfa, 0x02, 0x7a, 0xcd, + 0x0b, 0xd9, 0x30, 0xc4, 0x94, 0xa0, 0x0c, 0xd5, 0x67, 0xbe, 0x77, 0xa6, 0x1d, 0x13, 0x2c, 0x20, + 0xf6, 0x37, 0xeb, 0x70, 0xba, 0x57, 0x5d, 0x6a, 0xf4, 0x71, 0x18, 0xe2, 0x7d, 0x2c, 0xe6, 0xea, + 0x83, 0x5e, 0x3c, 0x2e, 0x31, 0x82, 0xa2, 0x5b, 0xec, 0x37, 0x16, 0x3c, 0x05, 0x77, 0xdf, 0x59, + 0x15, 0x33, 0xe4, 0x68, 0xb8, 0xcf, 0x3b, 0x9a, 0xfb, 0xbc, 0xc3, 0xb9, 0xfb, 0xce, 0x2a, 0xda, + 0x82, 0x6a, 0xcb, 0x4b, 0x89, 0x23, 0x9c, 0x08, 0x37, 0x8f, 0x84, 0x39, 0x71, 0xb8, 0x95, 0xc6, + 0x7e, 0x62, 0xce, 0x10, 0x7d, 0xc3, 0x82, 0xe3, 0xab, 0xd9, 0x54, 0x76, 0x21, 0x3c, 0x9d, 0x23, + 0xa8, 0x3d, 0x9e, 0x65, 0xc4, 0xaf, 0xe5, 0xc9, 0x35, 0xe2, 0x7c, 0x77, 0xd0, 0x67, 0x2c, 0x18, + 0x5e, 0xf3, 0x7c, 0xa3, 0x0c, 0xed, 0x11, 0x7c, 0x9c, 0x8b, 0x8c, 0x81, 0xde, 0x71, 0xf0, 0xff, + 0x09, 0x96, 0x9c, 0xfb, 0x69, 0xaa, 0xa1, 0xc3, 0x6a, 0xaa, 0xe1, 0xfb, 0xa4, 0xa9, 0x3e, 0x6f, + 0x41, 0x5d, 0x8d, 0xb4, 0x48, 0x4f, 0xfe, 0xc8, 0x11, 0x7e, 0x72, 0xee, 0x39, 0x51, 0x7f, 0xb1, + 0x66, 0x8e, 0xbe, 0x62, 0xc1, 0x88, 0xf3, 0x7a, 0x27, 0x26, 0x4d, 0xb2, 0x19, 0x46, 0x89, 0xb8, + 0xd3, 0xef, 0x95, 0xe2, 0x3b, 0x33, 0x4d, 0x99, 0xcc, 0x92, 0xcd, 0xc5, 0x28, 0x11, 0x69, 0x44, + 0xba, 0x01, 0x9b, 0x5d, 0xb0, 0x77, 0x4a, 0x30, 0xb1, 0x07, 0x05, 0xf4, 0x02, 0x8c, 0x86, 0x71, + 0xcb, 0x09, 0xbc, 0xd7, 0xcd, 0xda, 0x14, 0xca, 0xca, 0x5a, 0x34, 0x60, 0x38, 0x83, 0x69, 0x26, + 0x50, 0x97, 0xf6, 0x48, 0xa0, 0x3e, 0x07, 0x95, 0x98, 0x44, 0x61, 0x7e, 0xb3, 0xc0, 0x42, 0xf8, + 0x19, 0x04, 0x3d, 0x06, 0x65, 0x27, 0xf2, 0x44, 0x20, 0x9a, 0xda, 0x03, 0x4d, 0x2f, 0xcd, 0x61, + 0xda, 0x9e, 0xa9, 0xe7, 0x50, 0xbd, 0x27, 0xf5, 0x1c, 0x8c, 0x2b, 0xf8, 0x87, 0xfa, 0x5e, 0xc1, + 0xff, 0x66, 0x19, 0x1e, 0xdb, 0x75, 0xbe, 0xe8, 0x38, 0x3c, 0x6b, 0x97, 0x38, 0x3c, 0x39, 0x3c, + 0xa5, 0xbd, 0x86, 0xa7, 0xdc, 0x67, 0x78, 0x3e, 0x43, 0x97, 0x81, 0xac, 0xe9, 0x51, 0xcc, 0xad, + 0x6c, 0xfd, 0x4a, 0x84, 0x88, 0x15, 0x20, 0xa1, 0x58, 0xf3, 0xa5, 0x7b, 0x80, 0x4c, 0xf2, 0x70, + 0xb5, 0x08, 0x35, 0xd0, 0xb7, 0xc6, 0x07, 0x9f, 0xfb, 0xfd, 0x32, 0x92, 0xed, 0x9f, 0x2b, 0xc1, + 0x13, 0x03, 0x48, 0x6f, 0x73, 0x16, 0x5b, 0x03, 0xce, 0xe2, 0xef, 0xef, 0xcf, 0x64, 0xff, 0x55, + 0x0b, 0xce, 0xf6, 0x57, 0x1e, 0xe8, 0x59, 0x18, 0x59, 0x8d, 0x9d, 0xc0, 0x5d, 0x67, 0x37, 0x4d, + 0xca, 0x41, 0x61, 0x63, 0xad, 0x9b, 0xb1, 0x89, 0x43, 0xb7, 0xb7, 0x3c, 0x26, 0xc1, 0xc0, 0x90, + 0xc9, 0x9e, 0x74, 0x7b, 0xbb, 0x92, 0x07, 0xe2, 0x6e, 0x7c, 0xfb, 0x4f, 0x4b, 0xbd, 0xbb, 0xc5, + 0x8d, 0x8c, 0xfd, 0x7c, 0x27, 0xf1, 0x15, 0x4a, 0x03, 0xc8, 0x92, 0xf2, 0xbd, 0x96, 0x25, 0x95, + 0x7e, 0xb2, 0x04, 0xcd, 0xc2, 0x09, 0xe3, 0x0a, 0x13, 0x9e, 0xc0, 0xcb, 0x03, 0x6e, 0x55, 0x55, + 0x8b, 0xa5, 0x1c, 0x1c, 0x77, 0x3d, 0x81, 0x9e, 0x86, 0x9a, 0x17, 0x24, 0xc4, 0xed, 0xc4, 0x3c, + 0x92, 0xdc, 0x48, 0x9a, 0x9a, 0x13, 0xed, 0x58, 0x61, 0xd8, 0xbf, 0x54, 0x82, 0x47, 0xfa, 0xda, + 0x59, 0xf7, 0x48, 0x76, 0x99, 0x9f, 0xa3, 0x72, 0x6f, 0x3e, 0x87, 0x39, 0x48, 0xd5, 0x3d, 0x07, + 0xe9, 0xf7, 0xfb, 0x4f, 0x4c, 0x6a, 0x73, 0xff, 0xc0, 0x8e, 0xd2, 0x8b, 0x70, 0xcc, 0x89, 0x22, + 0x8e, 0xc7, 0xe2, 0x35, 0x73, 0x55, 0x6d, 0xa6, 0x4d, 0x20, 0xce, 0xe2, 0x0e, 0xa4, 0x3d, 0xff, + 0xd0, 0x82, 0x3a, 0x26, 0x6b, 0x5c, 0x3a, 0xa0, 0x5b, 0x62, 0x88, 0xac, 0x22, 0xea, 0x5f, 0xd2, + 0x81, 0x4d, 0x3c, 0x56, 0x17, 0xb2, 0xd7, 0x60, 0x77, 0x5f, 0x75, 0x53, 0xda, 0xd7, 0x55, 0x37, + 0xea, 0xb2, 0x93, 0x72, 0xff, 0xcb, 0x4e, 0xec, 0xb7, 0x86, 0xe9, 0xeb, 0x45, 0xe1, 0x4c, 0x4c, + 0x9a, 0x09, 0xfd, 0xbe, 0x9d, 0xd8, 0x17, 0x93, 0x44, 0x7d, 0xdf, 0xeb, 0x78, 0x1e, 0xd3, 0xf6, + 0xcc, 0x51, 0x4c, 0x69, 0x5f, 0x35, 0x3d, 0xca, 0x7b, 0xd6, 0xf4, 0x78, 0x11, 0x8e, 0x25, 0xc9, + 0xfa, 0x52, 0xec, 0x6d, 0x3a, 0x29, 0xb9, 0x4a, 0xb6, 0x85, 0x95, 0xa5, 0xf3, 0xf0, 0x97, 0x2f, + 0x6b, 0x20, 0xce, 0xe2, 0xa2, 0x4b, 0x70, 0x52, 0x57, 0xd6, 0x20, 0x71, 0xca, 0xa2, 0xfb, 0xf9, + 0x4c, 0x50, 0x49, 0xb7, 0xba, 0x16, 0x87, 0x40, 0xc0, 0xdd, 0xcf, 0x50, 0xf9, 0x96, 0x69, 0xa4, + 0x1d, 0x19, 0xca, 0xca, 0xb7, 0x0c, 0x1d, 0xda, 0x97, 0xae, 0x27, 0xd0, 0x02, 0x9c, 0xe2, 0x13, + 0x63, 0x3a, 0x8a, 0x8c, 0x37, 0x1a, 0xce, 0xd6, 0x1d, 0xbc, 0xd4, 0x8d, 0x82, 0x7b, 0x3d, 0x87, + 0x9e, 0x87, 0x11, 0xd5, 0x3c, 0x37, 0x2b, 0x4e, 0x11, 0x94, 0x17, 0x43, 0x91, 0x99, 0x6b, 0x62, + 0x13, 0x0f, 0x7d, 0x18, 0x1e, 0xd6, 0x7f, 0x79, 0xca, 0x16, 0x3f, 0x5a, 0x9b, 0x15, 0x45, 0x8b, + 0xd4, 0xd5, 0x1a, 0x97, 0x7a, 0xa2, 0x35, 0x71, 0xbf, 0xe7, 0xd1, 0x2a, 0x9c, 0x55, 0xa0, 0x0b, + 0x41, 0xca, 0xf2, 0x39, 0x12, 0xd2, 0x70, 0x12, 0x72, 0x3d, 0xf6, 0x59, 0x99, 0xa3, 0xba, 0xbe, + 0xf5, 0xf0, 0x92, 0x97, 0x5e, 0xee, 0x85, 0x89, 0xe7, 0xf1, 0x2e, 0x54, 0xd0, 0x14, 0xd4, 0x49, + 0xe0, 0xac, 0xfa, 0x64, 0x71, 0x66, 0x8e, 0x15, 0x3f, 0x32, 0x4e, 0xf2, 0x2e, 0x48, 0x00, 0xd6, + 0x38, 0x2a, 0xc2, 0x74, 0xb4, 0xef, 0x0d, 0x9c, 0x4b, 0x70, 0xba, 0xe5, 0x46, 0xd4, 0xf6, 0xf0, + 0x5c, 0x32, 0xed, 0xb2, 0x80, 0x3a, 0xfa, 0x61, 0x78, 0x41, 0x48, 0x15, 0x3e, 0x7d, 0x69, 0x66, + 0xa9, 0x0b, 0x07, 0xf7, 0x7c, 0x92, 0x05, 0x5e, 0xc6, 0xe1, 0xd6, 0xf6, 0xf8, 0xa9, 0x5c, 0xe0, + 0x25, 0x6d, 0xc4, 0x1c, 0x86, 0xae, 0x00, 0x62, 0xb1, 0xf8, 0x97, 0xd3, 0x34, 0x52, 0xc6, 0xce, + 0xf8, 0x69, 0xf6, 0x4a, 0x2a, 0x8c, 0xec, 0x62, 0x17, 0x06, 0xee, 0xf1, 0x94, 0xfd, 0x1f, 0x2d, + 0x38, 0xa6, 0xd6, 0xeb, 0x3d, 0xc8, 0x46, 0xf1, 0xb3, 0xd9, 0x28, 0x97, 0x0e, 0x2f, 0xf1, 0x58, + 0xcf, 0xfb, 0x84, 0x34, 0x7f, 0x6e, 0x04, 0x40, 0x4b, 0x45, 0xa5, 0x90, 0xac, 0xbe, 0x0a, 0xe9, + 0x81, 0x95, 0x48, 0xbd, 0x2a, 0x9d, 0x54, 0xef, 0x6f, 0xa5, 0x93, 0x65, 0x38, 0x23, 0xcd, 0x05, + 0x7e, 0x56, 0x74, 0x39, 0x4c, 0x94, 0x80, 0xab, 0x35, 0x1e, 0x13, 0x84, 0xce, 0xcc, 0xf5, 0x42, + 0xc2, 0xbd, 0x9f, 0xcd, 0x58, 0x29, 0xc3, 0x7b, 0x59, 0x29, 0x7a, 0x4d, 0xcf, 0xaf, 0xc9, 0x3b, + 0x34, 0x72, 0x6b, 0x7a, 0xfe, 0xe2, 0x32, 0xd6, 0x38, 0xbd, 0x05, 0x7b, 0xbd, 0x20, 0xc1, 0x0e, + 0xfb, 0x16, 0xec, 0x52, 0xc4, 0x8c, 0xf4, 0x15, 0x31, 0xd2, 0x27, 0x3d, 0xda, 0xd7, 0x27, 0xfd, + 0x01, 0x18, 0xf3, 0x82, 0x75, 0x12, 0x7b, 0x29, 0x69, 0xb2, 0xb5, 0xc0, 0xc4, 0x4f, 0x4d, 0xab, + 0xf5, 0xb9, 0x0c, 0x14, 0xe7, 0xb0, 0xb3, 0x72, 0x71, 0x6c, 0x00, 0xb9, 0xd8, 0x47, 0x1b, 0x1d, + 0x2f, 0x46, 0x1b, 0x9d, 0x38, 0xbc, 0x36, 0x3a, 0x79, 0xa4, 0xda, 0x08, 0x15, 0xa2, 0x8d, 0x06, + 0x12, 0xf4, 0xc6, 0xf6, 0xef, 0xf4, 0x1e, 0xdb, 0xbf, 0x7e, 0xaa, 0xe8, 0xcc, 0x81, 0x55, 0x51, + 0x6f, 0x2d, 0xf3, 0xd0, 0x81, 0xb4, 0xcc, 0xe7, 0x4b, 0x70, 0x46, 0xcb, 0x61, 0x3a, 0xfb, 0xbd, + 0x35, 0x2a, 0x89, 0xd8, 0x35, 0x4c, 0xfc, 0xdc, 0xc6, 0x48, 0x8e, 0xd2, 0x79, 0x56, 0x0a, 0x82, + 0x0d, 0x2c, 0x96, 0x63, 0x44, 0x62, 0x56, 0xf6, 0x36, 0x2f, 0xa4, 0x67, 0x44, 0x3b, 0x56, 0x18, + 0x74, 0x7e, 0xd1, 0xdf, 0x22, 0x6f, 0x33, 0x5f, 0xdc, 0x6d, 0x46, 0x83, 0xb0, 0x89, 0x87, 0x9e, + 0xe2, 0x4c, 0x98, 0x80, 0xa0, 0x82, 0x7a, 0x54, 0xdc, 0xcb, 0x2a, 0x65, 0x82, 0x82, 0xca, 0xee, + 0xb0, 0x64, 0xb2, 0x6a, 0x77, 0x77, 0x58, 0x08, 0x94, 0xc2, 0xb0, 0xff, 0xa7, 0x05, 0x8f, 0xf4, + 0x1c, 0x8a, 0x7b, 0xa0, 0x7c, 0xb7, 0xb2, 0xca, 0x77, 0xb9, 0xa8, 0xed, 0x86, 0xf1, 0x16, 0x7d, + 0x14, 0xf1, 0xbf, 0xb7, 0x60, 0x4c, 0xe3, 0xdf, 0x83, 0x57, 0xf5, 0xb2, 0xaf, 0x5a, 0xdc, 0xce, + 0xaa, 0xde, 0xf5, 0x6e, 0xbf, 0x5d, 0x02, 0x55, 0x70, 0x71, 0xda, 0x95, 0xe5, 0x6c, 0xf7, 0x38, + 0x49, 0xdc, 0x86, 0x21, 0x76, 0x10, 0x9a, 0x14, 0x13, 0xe4, 0x91, 0xe5, 0xcf, 0x0e, 0x55, 0xf5, + 0x21, 0x33, 0xfb, 0x9b, 0x60, 0xc1, 0x90, 0x15, 0x65, 0xf6, 0x12, 0x2a, 0xcd, 0x9b, 0x22, 0x2d, + 0x4b, 0x17, 0x65, 0x16, 0xed, 0x58, 0x61, 0x50, 0xf5, 0xe0, 0xb9, 0x61, 0x30, 0xe3, 0x3b, 0x89, + 0xbc, 0x7b, 0x50, 0xa9, 0x87, 0x39, 0x09, 0xc0, 0x1a, 0x87, 0x9d, 0x91, 0x7a, 0x49, 0xe4, 0x3b, + 0xdb, 0xc6, 0xfe, 0xd9, 0x28, 0x7e, 0xa0, 0x40, 0xd8, 0xc4, 0xb3, 0xdb, 0x30, 0x9e, 0x7d, 0x89, + 0x59, 0xb2, 0xc6, 0x02, 0x14, 0x07, 0x1a, 0xce, 0x29, 0xa8, 0x3b, 0xec, 0xa9, 0xf9, 0x8e, 0x93, + 0xbf, 0x32, 0x7c, 0x5a, 0x02, 0xb0, 0xc6, 0xb1, 0x7f, 0xc5, 0x82, 0x53, 0x3d, 0x06, 0xad, 0xc0, + 0xb4, 0xb7, 0x54, 0x4b, 0x9b, 0x5e, 0x8a, 0xfd, 0xdd, 0x30, 0xdc, 0x24, 0x6b, 0x8e, 0x0c, 0x81, + 0x33, 0x64, 0xfb, 0x2c, 0x6f, 0xc6, 0x12, 0x6e, 0xff, 0x77, 0x0b, 0x8e, 0x67, 0xfb, 0x9a, 0xb0, + 0x54, 0x12, 0x3e, 0x4c, 0x5e, 0xe2, 0x86, 0x9b, 0x24, 0xde, 0xa6, 0x6f, 0x6e, 0xe5, 0x52, 0x49, + 0xba, 0x30, 0x70, 0x8f, 0xa7, 0x58, 0xb9, 0xd5, 0xa6, 0x1a, 0x6d, 0x39, 0x23, 0x6f, 0x14, 0x39, + 0x23, 0xf5, 0xc7, 0x34, 0x8f, 0xcb, 0x15, 0x4b, 0x6c, 0xf2, 0xb7, 0xbf, 0x5b, 0x01, 0x95, 0x17, + 0xcb, 0xe2, 0x8f, 0x0a, 0x8a, 0xde, 0xda, 0x6f, 0x06, 0x91, 0x9a, 0x0c, 0x95, 0xdd, 0x02, 0x02, + 0xb8, 0x97, 0xc4, 0x74, 0x5d, 0xaa, 0x37, 0x5c, 0xd1, 0x20, 0x6c, 0xe2, 0xd1, 0x9e, 0xf8, 0xde, + 0x26, 0xe1, 0x0f, 0x0d, 0x65, 0x7b, 0x32, 0x2f, 0x01, 0x58, 0xe3, 0xd0, 0x9e, 0x34, 0xbd, 0xb5, + 0x35, 0xb1, 0xe5, 0x57, 0x3d, 0xa1, 0xa3, 0x83, 0x19, 0x84, 0x57, 0xd0, 0x0e, 0x37, 0x84, 0x15, + 0x6c, 0x54, 0xd0, 0x0e, 0x37, 0x30, 0x83, 0x50, 0xbb, 0x2d, 0x08, 0xe3, 0x36, 0xbb, 0xd2, 0xbd, + 0xa9, 0xb8, 0x08, 0xeb, 0x57, 0xd9, 0x6d, 0xd7, 0xba, 0x51, 0x70, 0xaf, 0xe7, 0xe8, 0x0c, 0x8c, + 0x62, 0xd2, 0xf4, 0xdc, 0xd4, 0xa4, 0x06, 0xd9, 0x19, 0xb8, 0xd4, 0x85, 0x81, 0x7b, 0x3c, 0x85, + 0xa6, 0xe1, 0xb8, 0xcc, 0x6b, 0x96, 0x55, 0x66, 0x46, 0xb2, 0x65, 0x38, 0x70, 0x16, 0x8c, 0xf3, + 0xf8, 0x54, 0xaa, 0xb5, 0x45, 0x81, 0x29, 0x66, 0x2c, 0x1b, 0x52, 0x4d, 0x16, 0x9e, 0xc2, 0x0a, + 0xc3, 0xfe, 0x74, 0x99, 0x6a, 0xe1, 0x3e, 0x85, 0xd5, 0xee, 0x59, 0xb4, 0x60, 0x76, 0x46, 0x56, + 0x06, 0x98, 0x91, 0xcf, 0xc1, 0xe8, 0xad, 0x24, 0x0c, 0x54, 0x24, 0x5e, 0xb5, 0x6f, 0x24, 0x9e, + 0x81, 0xd5, 0x3b, 0x12, 0x6f, 0xa8, 0xa8, 0x48, 0xbc, 0xe1, 0x03, 0x46, 0xe2, 0x7d, 0xbb, 0x0a, + 0xea, 0x2a, 0x8f, 0x6b, 0x24, 0xbd, 0x1d, 0xc6, 0x1b, 0x5e, 0xd0, 0x62, 0xf9, 0xe0, 0xdf, 0xb0, + 0x60, 0x94, 0xaf, 0x97, 0x79, 0x33, 0x93, 0x6a, 0xad, 0xa0, 0x3b, 0x22, 0x32, 0xcc, 0x26, 0x57, + 0x0c, 0x46, 0xb9, 0xab, 0x2f, 0x4d, 0x10, 0xce, 0xf4, 0x08, 0x7d, 0x02, 0x40, 0xfa, 0x47, 0xd7, + 0xa4, 0xc8, 0x9c, 0x2b, 0xa6, 0x7f, 0x98, 0xac, 0x69, 0x1b, 0x78, 0x45, 0x31, 0xc1, 0x06, 0x43, + 0xf4, 0x79, 0x9d, 0x65, 0xc6, 0x43, 0xf6, 0x3f, 0x76, 0x24, 0x63, 0x33, 0x48, 0x8e, 0x19, 0x86, + 0x61, 0x2f, 0x68, 0xd1, 0x79, 0x22, 0x22, 0x96, 0xde, 0xd5, 0xab, 0x96, 0xc2, 0x7c, 0xe8, 0x34, + 0x1b, 0x8e, 0xef, 0x04, 0x2e, 0x89, 0xe7, 0x38, 0xba, 0x79, 0xe1, 0x33, 0x6b, 0xc0, 0x92, 0x50, + 0xd7, 0x25, 0x28, 0xd5, 0x41, 0x2e, 0x41, 0x39, 0xfb, 0x41, 0x38, 0xd9, 0xf5, 0x31, 0xf7, 0x95, + 0x52, 0x76, 0xf0, 0x6c, 0x34, 0xfb, 0x9f, 0x0f, 0x69, 0xa5, 0x75, 0x2d, 0x6c, 0xf2, 0xab, 0x38, + 0x62, 0xfd, 0x45, 0x85, 0x8d, 0x5b, 0xe0, 0x14, 0x31, 0x2e, 0x8d, 0x56, 0x8d, 0xd8, 0x64, 0x49, + 0xe7, 0x68, 0xe4, 0xc4, 0x24, 0x38, 0xea, 0x39, 0xba, 0xa4, 0x98, 0x60, 0x83, 0x21, 0x5a, 0xcf, + 0xe4, 0x94, 0x5c, 0x3c, 0x7c, 0x4e, 0x09, 0x2b, 0x63, 0xd5, 0xab, 0x7a, 0xfe, 0x57, 0x2c, 0x18, + 0x0b, 0x32, 0x33, 0xb7, 0x98, 0x30, 0xd2, 0xde, 0xab, 0x82, 0xdf, 0x04, 0x95, 0x6d, 0xc3, 0x39, + 0xfe, 0xbd, 0x54, 0x5a, 0x75, 0x9f, 0x2a, 0x4d, 0xdf, 0xe9, 0x33, 0xd4, 0xef, 0x4e, 0x1f, 0x14, + 0xa8, 0x4b, 0xcd, 0x86, 0x0b, 0xbf, 0xd4, 0x0c, 0x7a, 0x5c, 0x68, 0x76, 0x13, 0xea, 0x6e, 0x4c, + 0x9c, 0xf4, 0x80, 0xf7, 0x5b, 0xb1, 0x03, 0xfa, 0x19, 0x49, 0x00, 0x6b, 0x5a, 0xf6, 0xff, 0xae, + 0xc0, 0x09, 0x39, 0x22, 0x32, 0x04, 0x9d, 0xea, 0x47, 0xce, 0x57, 0x1b, 0xb7, 0x4a, 0x3f, 0x5e, + 0x96, 0x00, 0xac, 0x71, 0xa8, 0x3d, 0xd6, 0x49, 0xc8, 0x62, 0x44, 0x82, 0x79, 0x6f, 0x35, 0x11, + 0xe7, 0x9c, 0x6a, 0xa1, 0x5c, 0xd7, 0x20, 0x6c, 0xe2, 0x51, 0x63, 0x9c, 0xdb, 0xc5, 0x49, 0x3e, + 0x7d, 0x45, 0xd8, 0xdb, 0x58, 0xc2, 0xd1, 0xcf, 0xf7, 0xac, 0xf4, 0x5a, 0x4c, 0xe2, 0x56, 0x57, + 0xe4, 0xfd, 0x3e, 0xaf, 0x44, 0xfc, 0xdb, 0x16, 0x9c, 0xe1, 0xad, 0x72, 0x24, 0xaf, 0x47, 0x4d, + 0x27, 0x25, 0x49, 0x31, 0x95, 0xd7, 0x7b, 0xf4, 0x4f, 0x3b, 0x79, 0x7b, 0xb1, 0xc5, 0xbd, 0x7b, + 0x83, 0xde, 0xb0, 0xe0, 0xf8, 0x46, 0xa6, 0xe6, 0x87, 0x54, 0x1d, 0x87, 0x4d, 0xc7, 0xcf, 0x10, + 0xd5, 0x4b, 0x2d, 0xdb, 0x9e, 0xe0, 0x3c, 0x77, 0xfb, 0x4f, 0x2d, 0x30, 0xc5, 0xe8, 0xbd, 0x2f, + 0x15, 0xb2, 0x7f, 0x53, 0x50, 0x5a, 0x97, 0xd5, 0xbe, 0xd6, 0xe5, 0x63, 0x50, 0xee, 0x78, 0x4d, + 0xb1, 0xbf, 0xd0, 0xa7, 0xaf, 0x73, 0xb3, 0x98, 0xb6, 0xdb, 0xff, 0xa4, 0xaa, 0xfd, 0x16, 0x22, + 0x2f, 0xea, 0x07, 0xe2, 0xb5, 0xd7, 0x54, 0xb1, 0x31, 0xfe, 0xe6, 0xd7, 0xba, 0x8a, 0x8d, 0xfd, + 0xe8, 0xfe, 0xd3, 0xde, 0xf8, 0x00, 0xf5, 0xab, 0x35, 0x36, 0xbc, 0x47, 0xce, 0xdb, 0x2d, 0xa8, + 0xd1, 0x2d, 0x18, 0x73, 0x40, 0xd6, 0x32, 0x9d, 0xaa, 0x5d, 0x16, 0xed, 0x77, 0x77, 0x26, 0xde, + 0xbf, 0xff, 0x6e, 0xc9, 0xa7, 0xb1, 0xa2, 0x8f, 0x12, 0xa8, 0xd3, 0xdf, 0x2c, 0x3d, 0x4f, 0x6c, + 0xee, 0xae, 0x2b, 0x99, 0x29, 0x01, 0x85, 0xe4, 0xfe, 0x69, 0x3e, 0x28, 0x80, 0x3a, 0xbb, 0x3d, + 0x96, 0x31, 0xe5, 0x7b, 0xc0, 0x25, 0x95, 0x24, 0x27, 0x01, 0x77, 0x77, 0x26, 0x5e, 0xdc, 0x3f, + 0x53, 0xf5, 0x38, 0xd6, 0x2c, 0xec, 0xaf, 0x56, 0xf4, 0xdc, 0x15, 0x35, 0xe6, 0x7e, 0x20, 0xe6, + 0xee, 0x0b, 0xb9, 0xb9, 0x7b, 0xae, 0x6b, 0xee, 0x8e, 0xe9, 0x5b, 0x4e, 0x33, 0xb3, 0xf1, 0x5e, + 0x1b, 0x02, 0x7b, 0xfb, 0x1b, 0x98, 0x05, 0xf4, 0x5a, 0xc7, 0x8b, 0x49, 0xb2, 0x14, 0x77, 0x02, + 0x2f, 0x68, 0xb1, 0xe9, 0x58, 0x33, 0x2d, 0xa0, 0x0c, 0x18, 0xe7, 0xf1, 0xe9, 0xa6, 0x9e, 0x7e, + 0xf3, 0x9b, 0xce, 0x26, 0x9f, 0x55, 0x46, 0xd9, 0xad, 0x65, 0xd1, 0x8e, 0x15, 0x86, 0xfd, 0x16, + 0x3b, 0xcb, 0x36, 0xf2, 0x82, 0xe9, 0x9c, 0xf0, 0xd9, 0x75, 0xbd, 0xbc, 0x66, 0x97, 0x9a, 0x13, + 0xfc, 0x8e, 0x5e, 0x0e, 0x43, 0xb7, 0x61, 0x78, 0x95, 0xdf, 0x57, 0x57, 0x4c, 0x3d, 0x71, 0x71, + 0xf9, 0x1d, 0xbb, 0x95, 0x44, 0xde, 0x84, 0x77, 0x57, 0xff, 0xc4, 0x92, 0x9b, 0xfd, 0xad, 0x0a, + 0x1c, 0xcf, 0x5d, 0xe8, 0x9a, 0x29, 0xc7, 0x5a, 0xda, 0xb3, 0x1c, 0xeb, 0x47, 0x01, 0x9a, 0x24, + 0xf2, 0xc3, 0x6d, 0x66, 0x8e, 0x55, 0xf6, 0x6d, 0x8e, 0x29, 0x0b, 0x7e, 0x56, 0x51, 0xc1, 0x06, + 0x45, 0x51, 0xa8, 0x8c, 0x57, 0x77, 0xcd, 0x15, 0x2a, 0x33, 0x6e, 0x1d, 0x18, 0xba, 0xb7, 0xb7, + 0x0e, 0x78, 0x70, 0x9c, 0x77, 0x51, 0x65, 0xdf, 0x1e, 0x20, 0xc9, 0x96, 0xe5, 0x2f, 0xcc, 0x66, + 0xc9, 0xe0, 0x3c, 0xdd, 0xfb, 0x79, 0x5f, 0x33, 0x7a, 0x0f, 0xd4, 0xe5, 0x77, 0x4e, 0xc6, 0xeb, + 0xba, 0x82, 0x81, 0x9c, 0x06, 0xec, 0x1e, 0x65, 0xf1, 0xd3, 0xfe, 0x72, 0x89, 0x5a, 0xcf, 0xfc, + 0x9f, 0xaa, 0x44, 0xf3, 0x24, 0x0c, 0x39, 0x9d, 0x74, 0x3d, 0xec, 0xba, 0xf3, 0x6e, 0x9a, 0xb5, + 0x62, 0x01, 0x45, 0xf3, 0x50, 0x69, 0xea, 0xea, 0x22, 0xfb, 0x19, 0x45, 0xed, 0x88, 0x74, 0x52, + 0x82, 0x19, 0x15, 0xf4, 0x28, 0x54, 0x52, 0xa7, 0x25, 0x13, 0x9d, 0x58, 0x72, 0xeb, 0x8a, 0xd3, + 0x4a, 0x30, 0x6b, 0x35, 0x95, 0x66, 0x65, 0x0f, 0xa5, 0xf9, 0x22, 0x1c, 0x4b, 0xbc, 0x56, 0xe0, + 0xa4, 0x9d, 0x98, 0x18, 0x87, 0x6b, 0x3a, 0x5e, 0xc2, 0x04, 0xe2, 0x2c, 0xae, 0xfd, 0x2f, 0x46, + 0xe1, 0xf4, 0xf2, 0xcc, 0x82, 0xac, 0x71, 0x7d, 0x64, 0xb9, 0x4a, 0xbd, 0x78, 0xdc, 0xbb, 0x5c, + 0xa5, 0x3e, 0xdc, 0x7d, 0x23, 0x57, 0xc9, 0x37, 0x72, 0x95, 0xb2, 0x89, 0x23, 0xe5, 0x22, 0x12, + 0x47, 0x7a, 0xf5, 0x60, 0x90, 0xc4, 0x91, 0x23, 0x4b, 0x5e, 0xda, 0xb5, 0x43, 0xfb, 0x4a, 0x5e, + 0x52, 0x99, 0x5d, 0x85, 0x84, 0xf4, 0xf7, 0xf9, 0x54, 0x3d, 0x33, 0xbb, 0x54, 0x56, 0x0d, 0x4f, + 0x57, 0x11, 0x02, 0xf6, 0x95, 0xe2, 0x3b, 0x30, 0x40, 0x56, 0x8d, 0xc8, 0x98, 0x31, 0x33, 0xb9, + 0x86, 0x8b, 0xc8, 0xe4, 0xea, 0xd5, 0x9d, 0x3d, 0x33, 0xb9, 0x5e, 0x84, 0x63, 0xae, 0x1f, 0x06, + 0x64, 0x29, 0x0e, 0xd3, 0xd0, 0x0d, 0x7d, 0x61, 0x4c, 0x2b, 0x91, 0x30, 0x63, 0x02, 0x71, 0x16, + 0xb7, 0x5f, 0x1a, 0x58, 0xfd, 0xb0, 0x69, 0x60, 0x70, 0x9f, 0xd2, 0xc0, 0x7e, 0x46, 0x27, 0x2c, + 0x8f, 0xb0, 0x2f, 0xf2, 0xd1, 0xe2, 0xbf, 0xc8, 0x20, 0x59, 0xcb, 0xe8, 0x4d, 0x7e, 0xe9, 0x1c, + 0x35, 0x47, 0x67, 0xc2, 0x36, 0x35, 0xb7, 0x46, 0xd9, 0x90, 0xbc, 0x7a, 0x04, 0x13, 0xf6, 0xe6, + 0xb2, 0x66, 0xa3, 0x2e, 0xa2, 0xd3, 0x4d, 0x38, 0xdb, 0x91, 0xc3, 0x24, 0x54, 0x7f, 0xbd, 0x04, + 0x3f, 0xb4, 0x67, 0x17, 0xd0, 0x6d, 0x80, 0xd4, 0x69, 0x89, 0x89, 0x2a, 0x8e, 0x29, 0x0e, 0x19, + 0xd4, 0xb8, 0x22, 0xe9, 0xf1, 0x4a, 0x20, 0xea, 0x2f, 0x3b, 0x00, 0x90, 0xbf, 0x59, 0x2c, 0x63, + 0xe8, 0x77, 0x15, 0x4c, 0xc4, 0xa1, 0x4f, 0x30, 0x83, 0x50, 0xf5, 0x1f, 0x93, 0x96, 0xbe, 0x25, + 0x59, 0x7d, 0x3e, 0xcc, 0x5a, 0xb1, 0x80, 0xa2, 0xe7, 0x61, 0xc4, 0xf1, 0x7d, 0x9e, 0x95, 0x42, + 0x12, 0x71, 0xeb, 0x8c, 0xae, 0xdc, 0xa6, 0x41, 0xd8, 0xc4, 0xb3, 0xff, 0xa4, 0x04, 0x13, 0x7b, + 0xc8, 0x94, 0xae, 0x3c, 0xbb, 0xea, 0xc0, 0x79, 0x76, 0x22, 0x33, 0x60, 0xa8, 0x4f, 0x66, 0xc0, + 0xf3, 0x30, 0x92, 0x12, 0xa7, 0x2d, 0xc2, 0xa0, 0xc4, 0xfe, 0x5b, 0x9f, 0xbb, 0x6a, 0x10, 0x36, + 0xf1, 0xa8, 0x14, 0x1b, 0x73, 0x5c, 0x97, 0x24, 0x89, 0x0c, 0xfd, 0x17, 0x3e, 0xcc, 0xc2, 0xf2, + 0x0a, 0x98, 0x6b, 0x78, 0x3a, 0xc3, 0x02, 0xe7, 0x58, 0xe6, 0x07, 0xbc, 0x3e, 0xe0, 0x80, 0x7f, + 0xb3, 0x04, 0x8f, 0xed, 0xaa, 0xdd, 0x06, 0xce, 0xca, 0xe8, 0x24, 0x24, 0xce, 0x4f, 0x9c, 0xeb, + 0x09, 0x89, 0x31, 0x83, 0xf0, 0x51, 0x8a, 0x22, 0xe3, 0x16, 0xea, 0xa2, 0x53, 0x86, 0xf8, 0x28, + 0x65, 0x58, 0xe0, 0x1c, 0xcb, 0x83, 0x4e, 0xcb, 0xbf, 0x5f, 0x82, 0x27, 0x06, 0xb0, 0x01, 0x0a, + 0x4c, 0xad, 0xca, 0x26, 0xb8, 0x95, 0xef, 0x53, 0x1e, 0xe2, 0x01, 0x87, 0xeb, 0xad, 0x12, 0x9c, + 0xed, 0xaf, 0x8a, 0xd1, 0x8f, 0xd1, 0x3d, 0xbc, 0x8c, 0x7d, 0x32, 0x73, 0xe3, 0x4e, 0xf1, 0xfd, + 0x7b, 0x06, 0x84, 0xf3, 0xb8, 0x68, 0x12, 0x20, 0x72, 0xd2, 0xf5, 0xe4, 0xc2, 0x96, 0x97, 0xa4, + 0xa2, 0xf6, 0xcb, 0x18, 0x3f, 0x31, 0x92, 0xad, 0xd8, 0xc0, 0xa0, 0xec, 0xd8, 0xbf, 0xd9, 0xf0, + 0x5a, 0x98, 0xf2, 0x87, 0xf8, 0x36, 0xe2, 0x94, 0xbc, 0x8a, 0xc3, 0x00, 0xe1, 0x3c, 0x2e, 0x65, + 0xc7, 0xce, 0x24, 0x79, 0x47, 0xf9, 0xfe, 0x82, 0xb1, 0x9b, 0x57, 0xad, 0xd8, 0xc0, 0xc8, 0x67, + 0xfd, 0x55, 0xf7, 0xce, 0xfa, 0xb3, 0xff, 0x71, 0x09, 0x1e, 0xe9, 0x6b, 0xca, 0x0d, 0xb6, 0x00, + 0x1f, 0xbc, 0x4c, 0xbd, 0x83, 0xcd, 0x9d, 0x7d, 0x66, 0x94, 0xfd, 0x61, 0x9f, 0x99, 0x26, 0x32, + 0xca, 0x0e, 0x9e, 0x92, 0xfd, 0xe0, 0x8d, 0x67, 0x57, 0x12, 0x59, 0x65, 0x1f, 0x49, 0x64, 0xb9, + 0x8f, 0x51, 0x1d, 0x70, 0x21, 0xff, 0x59, 0xb9, 0xef, 0xf0, 0xd2, 0xad, 0xdf, 0x40, 0xde, 0xd1, + 0x59, 0x38, 0xe1, 0x05, 0xec, 0xe6, 0x96, 0xe5, 0xce, 0xaa, 0x28, 0x07, 0x52, 0xca, 0xde, 0x31, + 0x3e, 0x97, 0x83, 0xe3, 0xae, 0x27, 0x1e, 0xc0, 0xa4, 0xbe, 0x83, 0x0d, 0xe9, 0xfe, 0xd2, 0x4a, + 0xd1, 0x22, 0x9c, 0x91, 0x43, 0xb1, 0xee, 0xc4, 0xa4, 0x29, 0xd4, 0x48, 0x22, 0xd2, 0x18, 0x1e, + 0xe1, 0xa9, 0x10, 0x3d, 0x10, 0x70, 0xef, 0xe7, 0xd8, 0x45, 0x35, 0x61, 0xe4, 0xb9, 0x62, 0x93, + 0xa3, 0x2f, 0xaa, 0xa1, 0x8d, 0x98, 0xc3, 0xec, 0x8f, 0x42, 0x5d, 0xbd, 0x3f, 0x0f, 0xa6, 0x56, + 0x93, 0xae, 0x2b, 0x98, 0x5a, 0xcd, 0x38, 0x03, 0x8b, 0x7e, 0x2d, 0x6a, 0x12, 0xe7, 0x56, 0xcf, + 0x55, 0xb2, 0xcd, 0xec, 0x63, 0xfb, 0xbd, 0x30, 0xaa, 0xfc, 0x2c, 0x83, 0x5e, 0xdf, 0x63, 0x7f, + 0x75, 0x08, 0x8e, 0x65, 0x4a, 0xf2, 0x65, 0xdc, 0x9a, 0xd6, 0x9e, 0x6e, 0x4d, 0x16, 0x1c, 0xdf, + 0x09, 0xe4, 0xfd, 0x42, 0x46, 0x70, 0x7c, 0x27, 0x20, 0x98, 0xc3, 0xa8, 0x79, 0xdb, 0x8c, 0xb7, + 0x71, 0x27, 0x10, 0x41, 0xac, 0xca, 0xbc, 0x9d, 0x65, 0xad, 0x58, 0x40, 0xd1, 0xa7, 0x2c, 0x18, + 0x4d, 0x98, 0xcf, 0x9c, 0x3b, 0x85, 0xc5, 0xa4, 0xbb, 0x72, 0xf8, 0x8a, 0x83, 0xaa, 0xfc, 0x24, + 0x8b, 0x4b, 0x31, 0x5b, 0x70, 0x86, 0x23, 0xfa, 0xac, 0x05, 0x75, 0x75, 0x05, 0x89, 0xb8, 0x30, + 0x6f, 0xb9, 0xd8, 0x8a, 0x87, 0xdc, 0x9b, 0xa8, 0x8e, 0x1f, 0x54, 0xe9, 0x39, 0xac, 0x19, 0xa3, + 0x44, 0x79, 0x6c, 0x87, 0x8f, 0xc6, 0x63, 0x0b, 0x3d, 0xbc, 0xb5, 0xef, 0x81, 0x7a, 0xdb, 0x09, + 0xbc, 0x35, 0x92, 0xa4, 0xdc, 0x89, 0x2a, 0x0b, 0xb1, 0xca, 0x46, 0xac, 0xe1, 0x54, 0x21, 0x27, + 0xec, 0xc5, 0x52, 0xc3, 0xeb, 0xc9, 0x14, 0xf2, 0xb2, 0x6e, 0xc6, 0x26, 0x8e, 0xe9, 0xa2, 0x85, + 0xfb, 0xea, 0xa2, 0x1d, 0xd9, 0xc3, 0x45, 0xfb, 0x0f, 0x2d, 0x38, 0xd3, 0xf3, 0xab, 0x3d, 0xb8, + 0xe1, 0x86, 0xf6, 0xd7, 0xaa, 0x70, 0xaa, 0x47, 0x6d, 0x4d, 0xb4, 0x6d, 0xce, 0x67, 0xab, 0x88, + 0x93, 0xfb, 0xec, 0x41, 0xb4, 0x1c, 0xc6, 0x1e, 0x93, 0x78, 0x7f, 0x07, 0x24, 0xfa, 0x90, 0xa2, + 0x7c, 0x6f, 0x0f, 0x29, 0x8c, 0x69, 0x59, 0xb9, 0xaf, 0xd3, 0xb2, 0xba, 0xfb, 0xb4, 0x44, 0xbf, + 0x6a, 0xc1, 0x78, 0xbb, 0x4f, 0x41, 0x77, 0xe1, 0x78, 0xbc, 0x71, 0x34, 0xe5, 0xe2, 0x1b, 0x8f, + 0xde, 0xd9, 0x99, 0xe8, 0x5b, 0x47, 0x1f, 0xf7, 0xed, 0x95, 0xfd, 0xdd, 0x32, 0xb0, 0xc2, 0xae, + 0xac, 0x7e, 0xda, 0x36, 0xfa, 0xa4, 0x59, 0xa2, 0xd7, 0x2a, 0xaa, 0x9c, 0x2c, 0x27, 0xae, 0x4a, + 0xfc, 0xf2, 0x11, 0xec, 0x55, 0xf1, 0x37, 0x2f, 0xb4, 0x4a, 0x03, 0x08, 0x2d, 0x5f, 0xd6, 0x42, + 0x2e, 0x17, 0x5f, 0x0b, 0xb9, 0x9e, 0xaf, 0x83, 0xbc, 0xfb, 0x27, 0xae, 0x3c, 0x90, 0x9f, 0xf8, + 0x6f, 0x5a, 0x5c, 0xf0, 0xe4, 0xbe, 0x82, 0xb6, 0x0c, 0xac, 0x5d, 0x2c, 0x83, 0xa7, 0xa1, 0x96, + 0x10, 0x7f, 0xed, 0x32, 0x71, 0x7c, 0x61, 0x41, 0xe8, 0x53, 0x63, 0xd1, 0x8e, 0x15, 0x06, 0xbb, + 0xdc, 0xd4, 0xf7, 0xc3, 0xdb, 0x17, 0xda, 0x51, 0xba, 0x2d, 0x6c, 0x09, 0x7d, 0xb9, 0xa9, 0x82, + 0x60, 0x03, 0xcb, 0xfe, 0x5b, 0x25, 0x3e, 0x03, 0x45, 0xe8, 0xc1, 0x0b, 0xb9, 0xeb, 0xed, 0x06, + 0x3f, 0xb5, 0xff, 0x38, 0x80, 0xab, 0x2e, 0x72, 0x17, 0x67, 0x42, 0x97, 0x0f, 0x7d, 0xcb, 0xb4, + 0xa0, 0xa7, 0x5f, 0x43, 0xb7, 0x61, 0x83, 0x5f, 0x46, 0x96, 0x96, 0xf7, 0x94, 0xa5, 0x19, 0xb1, + 0x52, 0xd9, 0x43, 0xdb, 0xfd, 0x89, 0x05, 0x19, 0x8b, 0x08, 0x45, 0x50, 0xa5, 0xdd, 0xdd, 0x2e, + 0xe6, 0x8e, 0x7a, 0x93, 0x34, 0x15, 0x8d, 0x62, 0xda, 0xb3, 0x9f, 0x98, 0x33, 0x42, 0xbe, 0x88, + 0x50, 0xe0, 0xa3, 0x7a, 0xad, 0x38, 0x86, 0x97, 0xc3, 0x70, 0x83, 0x1f, 0x6c, 0xea, 0x68, 0x07, + 0xfb, 0x05, 0x38, 0xd9, 0xd5, 0x29, 0x76, 0x93, 0x55, 0x28, 0x2f, 0xe6, 0x37, 0xa6, 0x2b, 0x4b, + 0x9b, 0xc4, 0x1c, 0x66, 0xbf, 0x65, 0xc1, 0x89, 0x3c, 0x79, 0xf4, 0xa6, 0x05, 0x27, 0x93, 0x3c, + 0xbd, 0xa3, 0x1a, 0x3b, 0x15, 0x65, 0xd8, 0x05, 0xc2, 0xdd, 0x9d, 0xb0, 0xff, 0x8f, 0x98, 0xfc, + 0x37, 0xbd, 0xa0, 0x19, 0xde, 0x56, 0x86, 0x89, 0xd5, 0xd7, 0x30, 0xa1, 0xeb, 0xd1, 0x5d, 0x27, + 0xcd, 0x8e, 0xdf, 0x95, 0xaf, 0xb9, 0x2c, 0xda, 0xb1, 0xc2, 0x60, 0xe9, 0x69, 0x1d, 0x51, 0x2c, + 0x3d, 0x37, 0x29, 0x67, 0x45, 0x3b, 0x56, 0x18, 0xe8, 0x39, 0x18, 0x35, 0x5e, 0x52, 0xce, 0x4b, + 0x66, 0x90, 0x1b, 0x2a, 0x33, 0xc1, 0x19, 0x2c, 0x34, 0x09, 0xa0, 0x8c, 0x1c, 0xa9, 0x22, 0x99, + 0xa3, 0x48, 0x49, 0xa2, 0x04, 0x1b, 0x18, 0x2c, 0x19, 0xd4, 0xef, 0x24, 0xcc, 0xc7, 0x3f, 0xa4, + 0x0b, 0x78, 0xce, 0x88, 0x36, 0xac, 0xa0, 0x54, 0x9a, 0xb4, 0x9d, 0xa0, 0xe3, 0xf8, 0x74, 0x84, + 0xc4, 0xd6, 0x4f, 0x2d, 0xc3, 0x05, 0x05, 0xc1, 0x06, 0x16, 0x7d, 0xe3, 0xd4, 0x6b, 0x93, 0x97, + 0xc3, 0x40, 0x46, 0x87, 0xe9, 0x63, 0x1f, 0xd1, 0x8e, 0x15, 0x86, 0xfd, 0x5f, 0x2d, 0x38, 0xae, + 0x53, 0xcb, 0xf9, 0x1d, 0xd3, 0xe6, 0x4e, 0xd5, 0xda, 0x73, 0xa7, 0x9a, 0xcd, 0xb9, 0x2d, 0x0d, + 0x94, 0x73, 0x6b, 0xa6, 0xc3, 0x96, 0x77, 0x4d, 0x87, 0xfd, 0x61, 0x7d, 0x1f, 0x2a, 0xcf, 0x9b, + 0x1d, 0xe9, 0x75, 0x17, 0x2a, 0xb2, 0x61, 0xc8, 0x75, 0x54, 0x5d, 0x95, 0x51, 0xbe, 0x77, 0x98, + 0x99, 0x66, 0x48, 0x02, 0x62, 0x2f, 0x42, 0x5d, 0x9d, 0x7e, 0xc8, 0x8d, 0xaa, 0xd5, 0x7b, 0xa3, + 0x3a, 0x50, 0x5a, 0x5e, 0x63, 0xf5, 0x5b, 0xdf, 0x7b, 0xfc, 0x1d, 0xbf, 0xfb, 0xbd, 0xc7, 0xdf, + 0xf1, 0x07, 0xdf, 0x7b, 0xfc, 0x1d, 0x9f, 0xba, 0xf3, 0xb8, 0xf5, 0xad, 0x3b, 0x8f, 0x5b, 0xbf, + 0x7b, 0xe7, 0x71, 0xeb, 0x0f, 0xee, 0x3c, 0x6e, 0x7d, 0xf7, 0xce, 0xe3, 0xd6, 0x57, 0xfe, 0xf3, + 0xe3, 0xef, 0x78, 0xb9, 0x67, 0x78, 0x20, 0xfd, 0xf1, 0x8c, 0xdb, 0x9c, 0xda, 0x3c, 0xcf, 0x22, + 0xd4, 0xe8, 0xf2, 0x9a, 0x32, 0xe6, 0xd4, 0x94, 0x5c, 0x5e, 0xff, 0x37, 0x00, 0x00, 0xff, 0xff, + 0x7b, 0x9f, 0xba, 0x72, 0xec, 0xdf, 0x00, 0x00, } func (m *AWSAuthConfig) Marshal() (dAtA []byte, err error) { @@ -8937,7 +8906,7 @@ func (m *ExecProviderConfig) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } -func (m *GitDirectoryGeneratorItem) Marshal() (dAtA []byte, err error) { +func (m *GitGenerator) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) n, err := m.MarshalToSizedBuffer(dAtA[:size]) @@ -8947,107 +8916,43 @@ func (m *GitDirectoryGeneratorItem) Marshal() (dAtA []byte, err error) { return dAtA[:n], nil } -func (m *GitDirectoryGeneratorItem) MarshalTo(dAtA []byte) (int, error) { +func (m *GitGenerator) MarshalTo(dAtA []byte) (int, error) { size := m.Size() return m.MarshalToSizedBuffer(dAtA[:size]) } -func (m *GitDirectoryGeneratorItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { +func (m *GitGenerator) MarshalToSizedBuffer(dAtA []byte) (int, error) { i := len(dAtA) _ = i var l int _ = l - i-- - if m.Exclude { - dAtA[i] = 1 - } else { - dAtA[i] = 0 + if len(m.Values) > 0 { + keysForValues := make([]string, 0, len(m.Values)) + for k := range m.Values { + keysForValues = append(keysForValues, string(k)) + } + github_com_gogo_protobuf_sortkeys.Strings(keysForValues) + for iNdEx := len(keysForValues) - 1; iNdEx >= 0; iNdEx-- { + v := m.Values[string(keysForValues[iNdEx])] + baseI := i + i -= len(v) + copy(dAtA[i:], v) + i = encodeVarintGenerated(dAtA, i, uint64(len(v))) + i-- + dAtA[i] = 0x12 + i -= len(keysForValues[iNdEx]) + copy(dAtA[i:], keysForValues[iNdEx]) + i = encodeVarintGenerated(dAtA, i, uint64(len(keysForValues[iNdEx]))) + i-- + dAtA[i] = 0xa + i = encodeVarintGenerated(dAtA, i, uint64(baseI-i)) + i-- + dAtA[i] = 0x42 + } } - i-- - dAtA[i] = 0x10 - i -= len(m.Path) - copy(dAtA[i:], m.Path) - i = encodeVarintGenerated(dAtA, i, uint64(len(m.Path))) - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *GitFileGeneratorItem) 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 *GitFileGeneratorItem) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GitFileGeneratorItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - i -= len(m.Path) - copy(dAtA[i:], m.Path) - i = encodeVarintGenerated(dAtA, i, uint64(len(m.Path))) - i-- - dAtA[i] = 0xa - return len(dAtA) - i, nil -} - -func (m *GitGenerator) 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 *GitGenerator) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *GitGenerator) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Values) > 0 { - keysForValues := make([]string, 0, len(m.Values)) - for k := range m.Values { - keysForValues = append(keysForValues, string(k)) - } - github_com_gogo_protobuf_sortkeys.Strings(keysForValues) - for iNdEx := len(keysForValues) - 1; iNdEx >= 0; iNdEx-- { - v := m.Values[string(keysForValues[iNdEx])] - baseI := i - i -= len(v) - copy(dAtA[i:], v) - i = encodeVarintGenerated(dAtA, i, uint64(len(v))) - i-- - dAtA[i] = 0x12 - i -= len(keysForValues[iNdEx]) - copy(dAtA[i:], keysForValues[iNdEx]) - i = encodeVarintGenerated(dAtA, i, uint64(len(keysForValues[iNdEx]))) - i-- - dAtA[i] = 0xa - i = encodeVarintGenerated(dAtA, i, uint64(baseI-i)) - i-- - dAtA[i] = 0x42 - } - } - i -= len(m.PathParamPrefix) - copy(dAtA[i:], m.PathParamPrefix) - i = encodeVarintGenerated(dAtA, i, uint64(len(m.PathParamPrefix))) + i -= len(m.PathParamPrefix) + copy(dAtA[i:], m.PathParamPrefix) + i = encodeVarintGenerated(dAtA, i, uint64(len(m.PathParamPrefix))) i-- dAtA[i] = 0x3a { @@ -9106,6 +9011,42 @@ func (m *GitGenerator) MarshalToSizedBuffer(dAtA []byte) (int, error) { return len(dAtA) - i, nil } +func (m *GitGeneratorItem) 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 *GitGeneratorItem) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *GitGeneratorItem) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + i-- + if m.Exclude { + dAtA[i] = 1 + } else { + dAtA[i] = 0 + } + i-- + dAtA[i] = 0x10 + i -= len(m.Path) + copy(dAtA[i:], m.Path) + i = encodeVarintGenerated(dAtA, i, uint64(len(m.Path))) + i-- + dAtA[i] = 0xa + return len(dAtA) - i, nil +} + func (m *GnuPGPublicKey) Marshal() (dAtA []byte, err error) { size := m.Size() dAtA = make([]byte, size) @@ -15737,29 +15678,6 @@ func (m *ExecProviderConfig) Size() (n int) { return n } -func (m *GitDirectoryGeneratorItem) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Path) - n += 1 + l + sovGenerated(uint64(l)) - n += 2 - return n -} - -func (m *GitFileGeneratorItem) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Path) - n += 1 + l + sovGenerated(uint64(l)) - return n -} - func (m *GitGenerator) Size() (n int) { if m == nil { return 0 @@ -15800,6 +15718,18 @@ func (m *GitGenerator) Size() (n int) { return n } +func (m *GitGeneratorItem) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Path) + n += 1 + l + sovGenerated(uint64(l)) + n += 2 + return n +} + func (m *GnuPGPublicKey) Size() (n int) { if m == nil { return 0 @@ -18809,39 +18739,18 @@ func (this *ExecProviderConfig) String() string { }, "") return s } -func (this *GitDirectoryGeneratorItem) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GitDirectoryGeneratorItem{`, - `Path:` + fmt.Sprintf("%v", this.Path) + `,`, - `Exclude:` + fmt.Sprintf("%v", this.Exclude) + `,`, - `}`, - }, "") - return s -} -func (this *GitFileGeneratorItem) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&GitFileGeneratorItem{`, - `Path:` + fmt.Sprintf("%v", this.Path) + `,`, - `}`, - }, "") - return s -} func (this *GitGenerator) String() string { if this == nil { return "nil" } - repeatedStringForDirectories := "[]GitDirectoryGeneratorItem{" + repeatedStringForDirectories := "[]GitGeneratorItem{" for _, f := range this.Directories { - repeatedStringForDirectories += strings.Replace(strings.Replace(f.String(), "GitDirectoryGeneratorItem", "GitDirectoryGeneratorItem", 1), `&`, ``, 1) + "," + repeatedStringForDirectories += strings.Replace(strings.Replace(f.String(), "GitGeneratorItem", "GitGeneratorItem", 1), `&`, ``, 1) + "," } repeatedStringForDirectories += "}" - repeatedStringForFiles := "[]GitFileGeneratorItem{" + repeatedStringForFiles := "[]GitGeneratorItem{" for _, f := range this.Files { - repeatedStringForFiles += strings.Replace(strings.Replace(f.String(), "GitFileGeneratorItem", "GitFileGeneratorItem", 1), `&`, ``, 1) + "," + repeatedStringForFiles += strings.Replace(strings.Replace(f.String(), "GitGeneratorItem", "GitGeneratorItem", 1), `&`, ``, 1) + "," } repeatedStringForFiles += "}" keysForValues := make([]string, 0, len(this.Values)) @@ -18867,6 +18776,17 @@ func (this *GitGenerator) String() string { }, "") return s } +func (this *GitGeneratorItem) String() string { + if this == nil { + return "nil" + } + s := strings.Join([]string{`&GitGeneratorItem{`, + `Path:` + fmt.Sprintf("%v", this.Path) + `,`, + `Exclude:` + fmt.Sprintf("%v", this.Exclude) + `,`, + `}`, + }, "") + return s +} func (this *GnuPGPublicKey) String() string { if this == nil { return "nil" @@ -32286,190 +32206,6 @@ func (m *ExecProviderConfig) Unmarshal(dAtA []byte) error { } return nil } -func (m *GitDirectoryGeneratorItem) 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 ErrIntOverflowGenerated - } - 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: GitDirectoryGeneratorItem: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GitDirectoryGeneratorItem: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - 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 ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGenerated - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Path = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field Exclude", wireType) - } - var v int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - v |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - m.Exclude = bool(v != 0) - default: - iNdEx = preIndex - skippy, err := skipGenerated(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *GitFileGeneratorItem) 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 ErrIntOverflowGenerated - } - 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: GitFileGeneratorItem: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: GitFileGeneratorItem: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowGenerated - } - 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 ErrInvalidLengthGenerated - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthGenerated - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Path = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipGenerated(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthGenerated - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} func (m *GitGenerator) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 @@ -32560,7 +32296,7 @@ func (m *GitGenerator) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Directories = append(m.Directories, GitDirectoryGeneratorItem{}) + m.Directories = append(m.Directories, GitGeneratorItem{}) if err := m.Directories[len(m.Directories)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -32594,7 +32330,7 @@ func (m *GitGenerator) Unmarshal(dAtA []byte) error { if postIndex > l { return io.ErrUnexpectedEOF } - m.Files = append(m.Files, GitFileGeneratorItem{}) + m.Files = append(m.Files, GitGeneratorItem{}) if err := m.Files[len(m.Files)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { return err } @@ -32864,6 +32600,108 @@ func (m *GitGenerator) Unmarshal(dAtA []byte) error { } return nil } +func (m *GitGeneratorItem) 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 ErrIntOverflowGenerated + } + 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: GitGeneratorItem: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: GitGeneratorItem: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Path", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + 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 ErrInvalidLengthGenerated + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthGenerated + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Path = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + case 2: + if wireType != 0 { + return fmt.Errorf("proto: wrong wireType = %d for field Exclude", wireType) + } + var v int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + v |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + m.Exclude = bool(v != 0) + default: + iNdEx = preIndex + skippy, err := skipGenerated(dAtA[iNdEx:]) + if err != nil { + return err + } + if (skippy < 0) || (iNdEx+skippy) < 0 { + return ErrInvalidLengthGenerated + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} func (m *GnuPGPublicKey) Unmarshal(dAtA []byte) error { l := len(dAtA) iNdEx := 0 diff --git a/pkg/apis/application/v1alpha1/generated.proto b/pkg/apis/application/v1alpha1/generated.proto index a0e6782be69f9..48ca4351250a9 100644 --- a/pkg/apis/application/v1alpha1/generated.proto +++ b/pkg/apis/application/v1alpha1/generated.proto @@ -912,22 +912,12 @@ message ExecProviderConfig { optional string installHint = 5; } -message GitDirectoryGeneratorItem { - optional string path = 1; - - optional bool exclude = 2; -} - -message GitFileGeneratorItem { - optional string path = 1; -} - message GitGenerator { optional string repoURL = 1; - repeated GitDirectoryGeneratorItem directories = 2; + repeated GitGeneratorItem directories = 2; - repeated GitFileGeneratorItem files = 3; + repeated GitGeneratorItem files = 3; optional string revision = 4; @@ -941,6 +931,12 @@ message GitGenerator { map values = 8; } +message GitGeneratorItem { + optional string path = 1; + + optional bool exclude = 2; +} + // GnuPGPublicKey is a representation of a GnuPG public key message GnuPGPublicKey { // KeyID specifies the key ID, in hexadecimal string format diff --git a/pkg/apis/application/v1alpha1/openapi_generated.go b/pkg/apis/application/v1alpha1/openapi_generated.go index 561b361d13d43..28405c25b2edd 100644 --- a/pkg/apis/application/v1alpha1/openapi_generated.go +++ b/pkg/apis/application/v1alpha1/openapi_generated.go @@ -71,9 +71,8 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.DuckTypeGenerator": schema_pkg_apis_application_v1alpha1_DuckTypeGenerator(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.EnvEntry": schema_pkg_apis_application_v1alpha1_EnvEntry(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.ExecProviderConfig": schema_pkg_apis_application_v1alpha1_ExecProviderConfig(ref), - "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitDirectoryGeneratorItem": schema_pkg_apis_application_v1alpha1_GitDirectoryGeneratorItem(ref), - "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitFileGeneratorItem": schema_pkg_apis_application_v1alpha1_GitFileGeneratorItem(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitGenerator": schema_pkg_apis_application_v1alpha1_GitGenerator(ref), + "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitGeneratorItem": schema_pkg_apis_application_v1alpha1_GitGeneratorItem(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GnuPGPublicKey": schema_pkg_apis_application_v1alpha1_GnuPGPublicKey(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GnuPGPublicKeyList": schema_pkg_apis_application_v1alpha1_GnuPGPublicKeyList(ref), "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.HealthStatus": schema_pkg_apis_application_v1alpha1_HealthStatus(ref), @@ -3251,52 +3250,6 @@ func schema_pkg_apis_application_v1alpha1_ExecProviderConfig(ref common.Referenc } } -func schema_pkg_apis_application_v1alpha1_GitDirectoryGeneratorItem(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "path": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - "exclude": { - SchemaProps: spec.SchemaProps{ - Type: []string{"boolean"}, - Format: "", - }, - }, - }, - Required: []string{"path"}, - }, - }, - } -} - -func schema_pkg_apis_application_v1alpha1_GitFileGeneratorItem(ref common.ReferenceCallback) common.OpenAPIDefinition { - return common.OpenAPIDefinition{ - Schema: spec.Schema{ - SchemaProps: spec.SchemaProps{ - Type: []string{"object"}, - Properties: map[string]spec.Schema{ - "path": { - SchemaProps: spec.SchemaProps{ - Default: "", - Type: []string{"string"}, - Format: "", - }, - }, - }, - Required: []string{"path"}, - }, - }, - } -} - func schema_pkg_apis_application_v1alpha1_GitGenerator(ref common.ReferenceCallback) common.OpenAPIDefinition { return common.OpenAPIDefinition{ Schema: spec.Schema{ @@ -3317,7 +3270,7 @@ func schema_pkg_apis_application_v1alpha1_GitGenerator(ref common.ReferenceCallb Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitDirectoryGeneratorItem"), + Ref: ref("github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitGeneratorItem"), }, }, }, @@ -3330,7 +3283,7 @@ func schema_pkg_apis_application_v1alpha1_GitGenerator(ref common.ReferenceCallb Schema: &spec.Schema{ SchemaProps: spec.SchemaProps{ Default: map[string]interface{}{}, - Ref: ref("github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitFileGeneratorItem"), + Ref: ref("github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitGeneratorItem"), }, }, }, @@ -3382,7 +3335,33 @@ func schema_pkg_apis_application_v1alpha1_GitGenerator(ref common.ReferenceCallb }, }, Dependencies: []string{ - "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.ApplicationSetTemplate", "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitDirectoryGeneratorItem", "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitFileGeneratorItem"}, + "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.ApplicationSetTemplate", "github.com/argoproj/argo-cd/v2/pkg/apis/application/v1alpha1.GitGeneratorItem"}, + } +} + +func schema_pkg_apis_application_v1alpha1_GitGeneratorItem(ref common.ReferenceCallback) common.OpenAPIDefinition { + return common.OpenAPIDefinition{ + Schema: spec.Schema{ + SchemaProps: spec.SchemaProps{ + Type: []string{"object"}, + Properties: map[string]spec.Schema{ + "path": { + SchemaProps: spec.SchemaProps{ + Default: "", + Type: []string{"string"}, + Format: "", + }, + }, + "exclude": { + SchemaProps: spec.SchemaProps{ + Type: []string{"boolean"}, + Format: "", + }, + }, + }, + Required: []string{"path"}, + }, + }, } } diff --git a/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go index 8732d2f484996..ab63de45b37e7 100644 --- a/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go @@ -1880,49 +1880,17 @@ func (in *ExecProviderConfig) DeepCopy() *ExecProviderConfig { return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GitDirectoryGeneratorItem) DeepCopyInto(out *GitDirectoryGeneratorItem) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitDirectoryGeneratorItem. -func (in *GitDirectoryGeneratorItem) DeepCopy() *GitDirectoryGeneratorItem { - if in == nil { - return nil - } - out := new(GitDirectoryGeneratorItem) - in.DeepCopyInto(out) - return out -} - -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *GitFileGeneratorItem) DeepCopyInto(out *GitFileGeneratorItem) { - *out = *in - return -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitFileGeneratorItem. -func (in *GitFileGeneratorItem) DeepCopy() *GitFileGeneratorItem { - if in == nil { - return nil - } - out := new(GitFileGeneratorItem) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GitGenerator) DeepCopyInto(out *GitGenerator) { *out = *in if in.Directories != nil { in, out := &in.Directories, &out.Directories - *out = make([]GitDirectoryGeneratorItem, len(*in)) + *out = make([]GitGeneratorItem, len(*in)) copy(*out, *in) } if in.Files != nil { in, out := &in.Files, &out.Files - *out = make([]GitFileGeneratorItem, len(*in)) + *out = make([]GitGeneratorItem, len(*in)) copy(*out, *in) } if in.RequeueAfterSeconds != nil { @@ -1951,6 +1919,22 @@ func (in *GitGenerator) DeepCopy() *GitGenerator { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *GitGeneratorItem) DeepCopyInto(out *GitGeneratorItem) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GitGeneratorItem. +func (in *GitGeneratorItem) DeepCopy() *GitGeneratorItem { + if in == nil { + return nil + } + out := new(GitGeneratorItem) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GnuPGPublicKey) DeepCopyInto(out *GnuPGPublicKey) { *out = *in diff --git a/test/e2e/applicationset_test.go b/test/e2e/applicationset_test.go index f56f9f552e9f6..538cee8c13106 100644 --- a/test/e2e/applicationset_test.go +++ b/test/e2e/applicationset_test.go @@ -784,7 +784,7 @@ func TestSimpleGitDirectoryGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -894,7 +894,7 @@ func TestSimpleGitDirectoryGeneratorGoTemplate(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -1003,7 +1003,7 @@ func TestSimpleGitFilesGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/applicationset.git", - Files: []v1alpha1.GitFileGeneratorItem{ + Files: []v1alpha1.GitGeneratorItem{ { Path: "examples/git-generator-files-discovery/cluster-config/**/config.json", }, @@ -1113,7 +1113,7 @@ func TestSimpleGitFilesGeneratorGoTemplate(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/applicationset.git", - Files: []v1alpha1.GitFileGeneratorItem{ + Files: []v1alpha1.GitGeneratorItem{ { Path: "examples/git-generator-files-discovery/cluster-config/**/config.json", }, @@ -1197,7 +1197,7 @@ func TestSimpleGitFilesPreserveResourcesOnDeletion(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/applicationset.git", - Files: []v1alpha1.GitFileGeneratorItem{ + Files: []v1alpha1.GitGeneratorItem{ { Path: "examples/git-generator-files-discovery/cluster-config/**/config.json", }, @@ -1258,7 +1258,7 @@ func TestSimpleGitFilesPreserveResourcesOnDeletionGoTemplate(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/applicationset.git", - Files: []v1alpha1.GitFileGeneratorItem{ + Files: []v1alpha1.GitGeneratorItem{ { Path: "examples/git-generator-files-discovery/cluster-config/**/config.json", }, @@ -2177,7 +2177,7 @@ func TestGitGeneratorPrivateRepo(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: fixture.RepoURL(fixture.RepoURLTypeHTTPS), - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*kustomize*", }, @@ -2253,7 +2253,7 @@ func TestGitGeneratorPrivateRepoGoTemplate(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: fixture.RepoURL(fixture.RepoURLTypeHTTPS), - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*kustomize*", }, diff --git a/test/e2e/matrix_e2e_test.go b/test/e2e/matrix_e2e_test.go index 9fc023ecaaf69..b3f207c8c70a7 100644 --- a/test/e2e/matrix_e2e_test.go +++ b/test/e2e/matrix_e2e_test.go @@ -92,7 +92,7 @@ func TestListMatrixGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -219,7 +219,7 @@ func TestClusterMatrixGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -350,7 +350,7 @@ func TestMatrixTerminalMatrixGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -395,7 +395,7 @@ func TestMatrixTerminalMatrixGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -485,7 +485,7 @@ func TestMatrixTerminalMergeGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -532,7 +532,7 @@ func TestMatrixTerminalMergeGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, diff --git a/test/e2e/merge_e2e_test.go b/test/e2e/merge_e2e_test.go index 9ad148b65b985..3e8f97d1d72b7 100644 --- a/test/e2e/merge_e2e_test.go +++ b/test/e2e/merge_e2e_test.go @@ -81,7 +81,7 @@ func TestListMergeGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -223,7 +223,7 @@ func TestClusterMergeGenerator(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -350,7 +350,7 @@ func TestMergeTerminalMergeGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", }, @@ -397,7 +397,7 @@ func TestMergeTerminalMergeGeneratorSelector(t *testing.T) { { Git: &v1alpha1.GitGenerator{ RepoURL: "https://github.com/argoproj/argocd-example-apps.git", - Directories: []v1alpha1.GitDirectoryGeneratorItem{ + Directories: []v1alpha1.GitGeneratorItem{ { Path: "*guestbook*", },