diff --git a/assets/swagger.json b/assets/swagger.json index ce1d12d9be5e8..8e019499d5859 100644 --- a/assets/swagger.json +++ b/assets/swagger.json @@ -7484,6 +7484,9 @@ "$ref": "#/definitions/v1alpha1RevisionHistory" } }, + "lastCompletedNonDryRunOperation": { + "$ref": "#/definitions/v1alpha1OperationState" + }, "observedAt": { "$ref": "#/definitions/v1Time" }, diff --git a/controller/sync.go b/controller/sync.go index ab78dbe88f69c..befe9cf2330bf 100644 --- a/controller/sync.go +++ b/controller/sync.go @@ -444,11 +444,14 @@ func (m *appStateManager) SyncAppState(app *v1alpha1.Application, state *v1alpha logEntry.WithField("duration", time.Since(start)).Info("sync/terminate complete") - if !syncOp.DryRun && len(syncOp.Resources) == 0 && state.Phase.Successful() { - err := m.persistRevisionHistory(app, compareResult.syncStatus.Revision, source, compareResult.syncStatus.Revisions, compareResult.syncStatus.ComparedTo.Sources, isMultiSourceRevision, state.StartedAt, state.Operation.InitiatedBy) - if err != nil { - state.Phase = common.OperationError - state.Message = fmt.Sprintf("failed to record sync to history: %v", err) + if !syncOp.DryRun && state.Phase.Successful() { + app.Status.LastCompletedNonDryRunOperation = state + if len(syncOp.Resources) == 0 { + err := m.persistRevisionHistory(app, compareResult.syncStatus.Revision, source, compareResult.syncStatus.Revisions, compareResult.syncStatus.ComparedTo.Sources, isMultiSourceRevision, state.StartedAt, state.Operation.InitiatedBy) + if err != nil { + state.Phase = common.OperationError + state.Message = fmt.Sprintf("failed to record sync to history: %v", err) + } } } } diff --git a/manifests/core-install-with-hydrator.yaml b/manifests/core-install-with-hydrator.yaml index 208de4f4d87e9..9da4ff98e5774 100644 --- a/manifests/core-install-with-hydrator.yaml +++ b/manifests/core-install-with-hydrator.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/core-install.yaml b/manifests/core-install.yaml index 43a7151b37ecf..23874ab594509 100644 --- a/manifests/core-install.yaml +++ b/manifests/core-install.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/crds/application-crd.yaml b/manifests/crds/application-crd.yaml index 3b828d4a82491..262f37207ba6d 100644 --- a/manifests/crds/application-crd.yaml +++ b/manifests/crds/application-crd.yaml @@ -2827,6 +2827,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/ha/install-with-hydrator.yaml b/manifests/ha/install-with-hydrator.yaml index 8d779384407a7..5d291e45779b8 100644 --- a/manifests/ha/install-with-hydrator.yaml +++ b/manifests/ha/install-with-hydrator.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/ha/install.yaml b/manifests/ha/install.yaml index 5e1211fb3ac3e..c52767db126b1 100644 --- a/manifests/ha/install.yaml +++ b/manifests/ha/install.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/install-with-hydrator.yaml b/manifests/install-with-hydrator.yaml index b8df9d34ff6aa..0971a4612c5bb 100644 --- a/manifests/install-with-hydrator.yaml +++ b/manifests/install-with-hydrator.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/manifests/install.yaml b/manifests/install.yaml index a65e79c66f4f8..9a370a536ff7b 100644 --- a/manifests/install.yaml +++ b/manifests/install.yaml @@ -2828,6 +2828,1888 @@ spec: - id type: object type: array + lastCompletedNonDryRunOperation: + description: OperationState contains information about the last non + dryrun completed operation + properties: + finishedAt: + description: FinishedAt contains time of operation completion + format: date-time + type: string + message: + description: Message holds any pertinent messages when attempting + to perform operation (typically errors). + type: string + operation: + description: Operation is the original requested operation + properties: + info: + description: Info is a list of informational items for this + operation + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + initiatedBy: + description: InitiatedBy contains information about who initiated + the operations + properties: + automated: + description: Automated is set to true if operation was + initiated automatically by the application controller. + type: boolean + username: + description: Username contains the name of a user who + started operation + type: string + type: object + retry: + description: Retry controls the strategy to apply if a sync + fails + properties: + backoff: + description: Backoff controls how to backoff on subsequent + retries of failed syncs + properties: + duration: + description: Duration is the amount to back off. Default + unit is seconds, but could also be a duration (e.g. + "2m", "1h") + type: string + factor: + description: Factor is a factor to multiply the base + duration after each failed retry + format: int64 + type: integer + maxDuration: + description: MaxDuration is the maximum amount of + time allowed for the backoff strategy + type: string + type: object + limit: + description: Limit is the maximum number of attempts for + retrying a failed sync. If set to 0, no retries will + be performed. + format: int64 + type: integer + type: object + sync: + description: Sync contains parameters for the operation + properties: + autoHealAttemptsCount: + description: SelfHealAttemptsCount contains the number + of auto-heal attempts + format: int64 + type: integer + dryRun: + description: DryRun specifies to perform a `kubectl apply + --dry-run` without actually performing the sync + type: boolean + manifests: + description: Manifests is an optional field that overrides + sync source with a local directory for development + items: + type: string + type: array + prune: + description: Prune specifies to delete resources from + the cluster that are no longer tracked in git + type: boolean + resources: + description: Resources describes which resources shall + be part of the sync + items: + description: SyncOperationResource contains resources + to sync. + properties: + group: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + type: array + revision: + description: |- + Revision is the revision (Git) or chart version (Helm) which to sync the application to + If omitted, will use the revision specified in app spec. + type: string + revisions: + description: |- + Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to + If omitted, will use the revision specified in app spec. + items: + type: string + type: array + source: + description: |- + Source overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to + Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles do + not exist locally by not appending them to helm + template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to + the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over + Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a + map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do not + exist locally by not appending them to kustomization + file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates + or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors + or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of + Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in + the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: |- + Sources overrides the source definition set in the application. + This is typically set in a Rollback operation and is nil during a Sync operation + items: + description: ApplicationSource contains all required + information about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must + be specified for applications sourced from a Helm + repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern + to match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern + to match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific + to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet + External Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan + a directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents + helm template from failing when valueFiles + do not exist locally by not appending them + to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults + to the app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter + that's passed to helm template during manifest + generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and + numbers as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the + Helm parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials + to all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release + name to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource + definition installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON + schema validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to + be passed to helm template, typically defined + as a block. ValuesObject takes precedence + over Values, so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as + a map. This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to + use for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific + options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of + additional annotations to add to rendered + manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution + for annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of + kustomize components to add to the kustomization + before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies + whether to force applying common annotations + to resources for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources + for Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents + kustomize from failing when components do + not exist locally by not appending them to + kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies + whether to apply common labels to resource + templates or not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies + whether to apply common labels to resource + selectors or not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended + to resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended + to resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that + Kustomize adds to all resources + type: string + patches: + description: Patches is a list of Kustomize + patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize + Replicas override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version + of Kustomize to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and + is displayed in the UI. It is used in multi-source + Applications. + type: string + path: + description: Path is a directory path within the + Git repository, and is only valid for applications + sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin + specific options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry + in the application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the + variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an + array type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map + type parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a + string type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source + within sources field. This field will not be used + if used with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository + (Git or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + syncOptions: + description: SyncOptions provide per-sync sync-options, + e.g. Validate=false + items: + type: string + type: array + syncStrategy: + description: SyncStrategy describes how to perform the + sync + properties: + apply: + description: Apply will perform a `kubectl apply` + to perform the sync. + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + hook: + description: Hook will submit any referenced resources + to perform the sync. This is the default strategy + properties: + force: + description: |- + Force indicates whether or not to supply the --force flag to `kubectl apply`. + The --force flag deletes and re-create the resource, when PATCH encounters conflict and has + retried for 5 times. + type: boolean + type: object + type: object + type: object + type: object + phase: + description: Phase is the current phase of the operation + type: string + retryCount: + description: RetryCount contains time of operation retries + format: int64 + type: integer + startedAt: + description: StartedAt contains time of operation start + format: date-time + type: string + syncResult: + description: SyncResult is the result of a Sync operation + properties: + managedNamespaceMetadata: + description: ManagedNamespaceMetadata contains the current + sync state of managed namespace metadata + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + resources: + description: Resources contains a list of sync result items + for each individual resource in a sync operation + items: + description: ResourceResult holds the operation result details + of a specific resource + properties: + group: + description: Group specifies the API group of the resource + type: string + hookPhase: + description: |- + HookPhase contains the state of any operation associated with this resource OR hook + This can also contain values for non-hook resources. + type: string + hookType: + description: HookType specifies the type of the hook. + Empty for non-hook resources + type: string + kind: + description: Kind specifies the API kind of the resource + type: string + message: + description: Message contains an informational or error + message for the last sync OR operation + type: string + name: + description: Name specifies the name of the resource + type: string + namespace: + description: Namespace specifies the target namespace + of the resource + type: string + status: + description: Status holds the final result of the sync. + Will be empty if the resources is yet to be applied/pruned + and is always zero-value for hooks + type: string + syncPhase: + description: SyncPhase indicates the particular phase + of the sync that this result was acquired in + type: string + version: + description: Version specifies the API version of the + resource + type: string + required: + - group + - kind + - name + - namespace + - version + type: object + type: array + revision: + description: Revision holds the revision this sync operation + was performed to + type: string + revisions: + description: Revisions holds the revision this sync operation + was performed for respective indexed source in sources field + items: + type: string + type: array + source: + description: Source records the application source information + of the sync, used for comparing auto-sync + properties: + chart: + description: Chart is a Helm chart name, and must be specified + for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific options + properties: + exclude: + description: Exclude contains a glob pattern to match + paths against that should be explicitly excluded + from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to match + paths against that should be explicitly included + during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a directory + recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters to + the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm parameter + type: string + path: + description: Path is the path to the file containing + the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace to + template with. If left empty, defaults to the app's + destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command upon + manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to all + domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value files + to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be passed + to helm template, typically defined as a block. + ValuesObject takes precedence over Values, so use + one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values to + be passed to helm template, defined as a map. This + takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use for + templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies whether + to apply env variables substitution for annotation + values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether to + force applying common labels to resources for Kustomize + apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image override + specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to resources + for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to resources + for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git repository, + and is only valid for applications sourced from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying a + parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used with + a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + sources: + description: Source records the application source information + of the sync, used for comparing auto-sync + items: + description: ApplicationSource contains all required information + about the source of an application + properties: + chart: + description: Chart is a Helm chart name, and must be + specified for applications sourced from a Helm repo. + type: string + directory: + description: Directory holds path/directory specific + options + properties: + exclude: + description: Exclude contains a glob pattern to + match paths against that should be explicitly + excluded from being used during manifest generation + type: string + include: + description: Include contains a glob pattern to + match paths against that should be explicitly + included during manifest generation + type: string + jsonnet: + description: Jsonnet holds options specific to Jsonnet + properties: + extVars: + description: ExtVars is a list of Jsonnet External + Variables + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + libs: + description: Additional library search dirs + items: + type: string + type: array + tlas: + description: TLAS is a list of Jsonnet Top-level + Arguments + items: + description: JsonnetVar represents a variable + to be passed to jsonnet during manifest + generation + properties: + code: + type: boolean + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + type: object + recurse: + description: Recurse specifies whether to scan a + directory recursively for manifests + type: boolean + type: object + helm: + description: Helm holds helm specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + fileParameters: + description: FileParameters are file parameters + to the helm template + items: + description: HelmFileParameter is a file parameter + that's passed to helm template during manifest + generation + properties: + name: + description: Name is the name of the Helm + parameter + type: string + path: + description: Path is the path to the file + containing the values for the Helm parameter + type: string + type: object + type: array + ignoreMissingValueFiles: + description: IgnoreMissingValueFiles prevents helm + template from failing when valueFiles do not exist + locally by not appending them to helm template + --values + type: boolean + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + namespace: + description: Namespace is an optional namespace + to template with. If left empty, defaults to the + app's destination namespace. + type: string + parameters: + description: Parameters is a list of Helm parameters + which are passed to the helm template command + upon manifest generation + items: + description: HelmParameter is a parameter that's + passed to helm template during manifest generation + properties: + forceString: + description: ForceString determines whether + to tell Helm to interpret booleans and numbers + as strings + type: boolean + name: + description: Name is the name of the Helm + parameter + type: string + value: + description: Value is the value for the Helm + parameter + type: string + type: object + type: array + passCredentials: + description: PassCredentials pass credentials to + all domains (Helm's --pass-credentials) + type: boolean + releaseName: + description: ReleaseName is the Helm release name + to use. If omitted it will use the application + name + type: string + skipCrds: + description: SkipCrds skips custom resource definition + installation step (Helm's --skip-crds) + type: boolean + skipSchemaValidation: + description: SkipSchemaValidation skips JSON schema + validation (Helm's --skip-schema-validation) + type: boolean + skipTests: + description: SkipTests skips test manifest installation + step (Helm's --skip-tests). + type: boolean + valueFiles: + description: ValuesFiles is a list of Helm value + files to use when generating a template + items: + type: string + type: array + values: + description: Values specifies Helm values to be + passed to helm template, typically defined as + a block. ValuesObject takes precedence over Values, + so use one or the other. + type: string + valuesObject: + description: ValuesObject specifies Helm values + to be passed to helm template, defined as a map. + This takes precedence over Values. + type: object + x-kubernetes-preserve-unknown-fields: true + version: + description: Version is the Helm version to use + for templating ("3") + type: string + type: object + kustomize: + description: Kustomize holds kustomize specific options + properties: + apiVersions: + description: |- + APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default, + Argo CD uses the API versions of the target cluster. The format is [group/]version/kind. + items: + type: string + type: array + commonAnnotations: + additionalProperties: + type: string + description: CommonAnnotations is a list of additional + annotations to add to rendered manifests + type: object + commonAnnotationsEnvsubst: + description: CommonAnnotationsEnvsubst specifies + whether to apply env variables substitution for + annotation values + type: boolean + commonLabels: + additionalProperties: + type: string + description: CommonLabels is a list of additional + labels to add to rendered manifests + type: object + components: + description: Components specifies a list of kustomize + components to add to the kustomization before + building + items: + type: string + type: array + forceCommonAnnotations: + description: ForceCommonAnnotations specifies whether + to force applying common annotations to resources + for Kustomize apps + type: boolean + forceCommonLabels: + description: ForceCommonLabels specifies whether + to force applying common labels to resources for + Kustomize apps + type: boolean + ignoreMissingComponents: + description: IgnoreMissingComponents prevents kustomize + from failing when components do not exist locally + by not appending them to kustomization file + type: boolean + images: + description: Images is a list of Kustomize image + override specifications + items: + description: KustomizeImage represents a Kustomize + image definition in the format [old_image_name=]: + type: string + type: array + kubeVersion: + description: |- + KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD + uses the Kubernetes version of the target cluster. + type: string + labelIncludeTemplates: + description: LabelIncludeTemplates specifies whether + to apply common labels to resource templates or + not + type: boolean + labelWithoutSelector: + description: LabelWithoutSelector specifies whether + to apply common labels to resource selectors or + not + type: boolean + namePrefix: + description: NamePrefix is a prefix appended to + resources for Kustomize apps + type: string + nameSuffix: + description: NameSuffix is a suffix appended to + resources for Kustomize apps + type: string + namespace: + description: Namespace sets the namespace that Kustomize + adds to all resources + type: string + patches: + description: Patches is a list of Kustomize patches + items: + properties: + options: + additionalProperties: + type: boolean + type: object + patch: + type: string + path: + type: string + target: + properties: + annotationSelector: + type: string + group: + type: string + kind: + type: string + labelSelector: + type: string + name: + type: string + namespace: + type: string + version: + type: string + type: object + type: object + type: array + replicas: + description: Replicas is a list of Kustomize Replicas + override specifications + items: + properties: + count: + anyOf: + - type: integer + - type: string + description: Number of replicas + x-kubernetes-int-or-string: true + name: + description: Name of Deployment or StatefulSet + type: string + required: + - count + - name + type: object + type: array + version: + description: Version controls which version of Kustomize + to use for rendering manifests + type: string + type: object + name: + description: Name is used to refer to a source and is + displayed in the UI. It is used in multi-source Applications. + type: string + path: + description: Path is a directory path within the Git + repository, and is only valid for applications sourced + from Git. + type: string + plugin: + description: Plugin holds config management plugin specific + options + properties: + env: + description: Env is a list of environment variable + entries + items: + description: EnvEntry represents an entry in the + application's environment + properties: + name: + description: Name is the name of the variable, + usually expressed in uppercase + type: string + value: + description: Value is the value of the variable + type: string + required: + - name + - value + type: object + type: array + name: + type: string + parameters: + items: + properties: + array: + description: Array is the value of an array + type parameter. + items: + type: string + type: array + map: + additionalProperties: + type: string + description: Map is the value of a map type + parameter. + type: object + name: + description: Name is the name identifying + a parameter. + type: string + string: + description: String_ is the value of a string + type parameter. + type: string + type: object + type: array + type: object + ref: + description: Ref is reference to another source within + sources field. This field will not be used if used + with a `source` tag. + type: string + repoURL: + description: RepoURL is the URL to the repository (Git + or Helm) that contains the application manifests + type: string + targetRevision: + description: |- + TargetRevision defines the revision of the source to sync the application to. + In case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD. + In case of Helm, this is a semver tag for the Chart's version. + type: string + required: + - repoURL + type: object + type: array + required: + - revision + type: object + required: + - operation + - phase + - startedAt + type: object observedAt: description: |- ObservedAt indicates when the application state was updated without querying latest git state diff --git a/pkg/apiclient/application/forwarder_overwrite.go b/pkg/apiclient/application/forwarder_overwrite.go index 55a8fe7d596e2..8c6497d2726cd 100644 --- a/pkg/apiclient/application/forwarder_overwrite.go +++ b/pkg/apiclient/application/forwarder_overwrite.go @@ -44,6 +44,7 @@ var appFields = map[string]func(app *v1alpha1.Application) any{ } return nil }, + "status.lastNonDryRunOperationState": func(app *v1alpha1.Application) any { return app.GetLastNonDryRunOperationState() }, "status.resources": func(app *v1alpha1.Application) any { if len(app.Status.Resources) > 0 { return app.Status.Resources diff --git a/pkg/apis/application/v1alpha1/generated.pb.go b/pkg/apis/application/v1alpha1/generated.pb.go index 40d752f55533d..01cff1c6785a8 100644 --- a/pkg/apis/application/v1alpha1/generated.pb.go +++ b/pkg/apis/application/v1alpha1/generated.pb.go @@ -4797,230 +4797,230 @@ func init() { } var fileDescriptor_c078c3c476799f44 = []byte{ - // 11997 bytes of a gzipped FileDescriptorProto + // 12043 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xec, 0xbd, 0x7d, 0x6c, 0x24, 0xc9, 0x75, 0x18, 0xae, 0x9e, 0xe1, 0x90, 0x33, 0x8f, 0x5f, 0xbb, 0xb5, 0xbb, 0x77, 0xdc, 0xbd, 0x0f, 0xae, 0xfb, 0xe4, 0xd3, 0xf9, 0xa7, 0x3b, 0xd2, 0xf7, 0x25, 0xef, 0xcf, 0x67, 0x4b, 0xe6, 0xc7, 0x7e, 0x70, 0x97, 0x5c, 0xf2, 0x6a, 0xb8, 0xbb, 0xd2, 0x49, 0xa7, 0x53, 0x73, 0xa6, 0x38, 0xec, 0x65, 0x4f, 0xf7, 0x5c, 0x77, 0x0f, 0x97, 0x73, 0x96, 0x64, 0xc9, 0x92, 0x6c, 0xd9, 0xfa, 0x8c, - 0x64, 0xc4, 0xe7, 0x24, 0x52, 0x64, 0x5b, 0x09, 0x12, 0x04, 0x82, 0x95, 0x18, 0x48, 0x1c, 0xd8, - 0x86, 0x61, 0x3b, 0x31, 0x94, 0x38, 0x81, 0x1d, 0x41, 0xb0, 0x9c, 0xd8, 0x66, 0xa4, 0x4d, 0x02, - 0x19, 0x01, 0x62, 0x20, 0x4e, 0xfe, 0x08, 0x36, 0x41, 0x10, 0xd4, 0x77, 0x75, 0x4f, 0x0f, 0x39, - 0x5c, 0x36, 0xb9, 0x2b, 0xe9, 0xfe, 0x9b, 0xa9, 0xf7, 0xba, 0xde, 0xeb, 0xea, 0xaa, 0xf7, 0x5e, - 0xbd, 0x7a, 0xef, 0x15, 0x2c, 0x36, 0xdc, 0x78, 0xa3, 0xbd, 0x36, 0x55, 0x0b, 0x9a, 0xd3, 0x4e, - 0xd8, 0x08, 0x5a, 0x61, 0x70, 0x93, 0xfd, 0x78, 0xaa, 0x56, 0x9f, 0xde, 0x7a, 0x76, 0xba, 0xb5, - 0xd9, 0x98, 0x76, 0x5a, 0x6e, 0x34, 0xed, 0xb4, 0x5a, 0x9e, 0x5b, 0x73, 0x62, 0x37, 0xf0, 0xa7, - 0xb7, 0x9e, 0x76, 0xbc, 0xd6, 0x86, 0xf3, 0xf4, 0x74, 0x83, 0xf8, 0x24, 0x74, 0x62, 0x52, 0x9f, - 0x6a, 0x85, 0x41, 0x1c, 0xa0, 0x1f, 0xd3, 0xbd, 0x4d, 0xc9, 0xde, 0xd8, 0x8f, 0x57, 0x6a, 0xf5, - 0xa9, 0xad, 0x67, 0xa7, 0x5a, 0x9b, 0x8d, 0x29, 0xda, 0xdb, 0x94, 0xd1, 0xdb, 0x94, 0xec, 0xed, - 0xcc, 0x53, 0x06, 0x2f, 0x8d, 0xa0, 0x11, 0x4c, 0xb3, 0x4e, 0xd7, 0xda, 0xeb, 0xec, 0x1f, 0xfb, - 0xc3, 0x7e, 0x71, 0x62, 0x67, 0xec, 0xcd, 0x73, 0xd1, 0x94, 0x1b, 0x50, 0xf6, 0xa6, 0x6b, 0x41, - 0x48, 0xa6, 0xb7, 0xba, 0x18, 0x3a, 0x73, 0x49, 0xe3, 0x90, 0xed, 0x98, 0xf8, 0x91, 0x1b, 0xf8, - 0xd1, 0x53, 0x94, 0x05, 0x12, 0x6e, 0x91, 0xd0, 0x7c, 0x3d, 0x03, 0x21, 0xab, 0xa7, 0xe7, 0x74, - 0x4f, 0x4d, 0xa7, 0xb6, 0xe1, 0xfa, 0x24, 0xec, 0xe8, 0xc7, 0x9b, 0x24, 0x76, 0xb2, 0x9e, 0x9a, - 0xee, 0xf5, 0x54, 0xd8, 0xf6, 0x63, 0xb7, 0x49, 0xba, 0x1e, 0x78, 0xdb, 0x5e, 0x0f, 0x44, 0xb5, - 0x0d, 0xd2, 0x74, 0xba, 0x9e, 0x7b, 0xb6, 0xd7, 0x73, 0xed, 0xd8, 0xf5, 0xa6, 0x5d, 0x3f, 0x8e, - 0xe2, 0x30, 0xfd, 0x90, 0xfd, 0x77, 0x2c, 0x18, 0x9d, 0xb9, 0x51, 0x9d, 0x69, 0xc7, 0x1b, 0x73, - 0x81, 0xbf, 0xee, 0x36, 0xd0, 0xf3, 0x30, 0x5c, 0xf3, 0xda, 0x51, 0x4c, 0xc2, 0xab, 0x4e, 0x93, - 0x4c, 0x58, 0x67, 0xad, 0x27, 0x2a, 0xb3, 0x27, 0xbe, 0xb6, 0x33, 0xf9, 0xa6, 0xdb, 0x3b, 0x93, - 0xc3, 0x73, 0x1a, 0x84, 0x4d, 0x3c, 0xf4, 0x43, 0x30, 0x14, 0x06, 0x1e, 0x99, 0xc1, 0x57, 0x27, - 0x0a, 0xec, 0x91, 0x71, 0xf1, 0xc8, 0x10, 0xe6, 0xcd, 0x58, 0xc2, 0x29, 0x6a, 0x2b, 0x0c, 0xd6, - 0x5d, 0x8f, 0x4c, 0x14, 0x93, 0xa8, 0x2b, 0xbc, 0x19, 0x4b, 0xb8, 0xfd, 0x27, 0x05, 0x80, 0x99, - 0x56, 0x6b, 0x25, 0x0c, 0x6e, 0x92, 0x5a, 0x8c, 0xde, 0x07, 0x65, 0x3a, 0xcc, 0x75, 0x27, 0x76, - 0x18, 0x63, 0xc3, 0xcf, 0xfc, 0xf0, 0x14, 0x7f, 0xeb, 0x29, 0xf3, 0xad, 0xf5, 0x24, 0xa3, 0xd8, - 0x53, 0x5b, 0x4f, 0x4f, 0x2d, 0xaf, 0xd1, 0xe7, 0x97, 0x48, 0xec, 0xcc, 0x22, 0x41, 0x0c, 0x74, - 0x1b, 0x56, 0xbd, 0x22, 0x1f, 0x06, 0xa2, 0x16, 0xa9, 0xb1, 0x77, 0x18, 0x7e, 0x66, 0x71, 0xea, - 0x20, 0xb3, 0x79, 0x4a, 0x73, 0x5e, 0x6d, 0x91, 0xda, 0xec, 0x88, 0xa0, 0x3c, 0x40, 0xff, 0x61, - 0x46, 0x07, 0x6d, 0xc1, 0x60, 0x14, 0x3b, 0x71, 0x3b, 0x62, 0x43, 0x31, 0xfc, 0xcc, 0xd5, 0xdc, - 0x28, 0xb2, 0x5e, 0x67, 0xc7, 0x04, 0xcd, 0x41, 0xfe, 0x1f, 0x0b, 0x6a, 0xf6, 0x5f, 0x58, 0x30, - 0xa6, 0x91, 0x17, 0xdd, 0x28, 0x46, 0xef, 0xe9, 0x1a, 0xdc, 0xa9, 0xfe, 0x06, 0x97, 0x3e, 0xcd, - 0x86, 0xf6, 0x98, 0x20, 0x56, 0x96, 0x2d, 0xc6, 0xc0, 0x36, 0xa1, 0xe4, 0xc6, 0xa4, 0x19, 0x4d, - 0x14, 0xce, 0x16, 0x9f, 0x18, 0x7e, 0xe6, 0x52, 0x5e, 0xef, 0x39, 0x3b, 0x2a, 0x88, 0x96, 0x16, - 0x68, 0xf7, 0x98, 0x53, 0xb1, 0xff, 0x7a, 0xd4, 0x7c, 0x3f, 0x3a, 0xe0, 0xe8, 0x69, 0x18, 0x8e, - 0x82, 0x76, 0x58, 0x23, 0x98, 0xb4, 0x82, 0x68, 0xc2, 0x3a, 0x5b, 0xa4, 0x53, 0x8f, 0x4e, 0xea, - 0xaa, 0x6e, 0xc6, 0x26, 0x0e, 0xfa, 0xb4, 0x05, 0x23, 0x75, 0x12, 0xc5, 0xae, 0xcf, 0xe8, 0x4b, - 0xe6, 0x57, 0x0f, 0xcc, 0xbc, 0x6c, 0x9c, 0xd7, 0x9d, 0xcf, 0x9e, 0x14, 0x2f, 0x32, 0x62, 0x34, - 0x46, 0x38, 0x41, 0x9f, 0x2e, 0xce, 0x3a, 0x89, 0x6a, 0xa1, 0xdb, 0xa2, 0xff, 0xc5, 0xf2, 0x51, - 0x8b, 0x73, 0x5e, 0x83, 0xb0, 0x89, 0x87, 0x7c, 0x28, 0xd1, 0xc5, 0x17, 0x4d, 0x0c, 0x30, 0xfe, - 0x17, 0x0e, 0xc6, 0xbf, 0x18, 0x54, 0xba, 0xae, 0xf5, 0xe8, 0xd3, 0x7f, 0x11, 0xe6, 0x64, 0xd0, - 0xa7, 0x2c, 0x98, 0x10, 0xc2, 0x01, 0x13, 0x3e, 0xa0, 0x37, 0x36, 0xdc, 0x98, 0x78, 0x6e, 0x14, - 0x4f, 0x94, 0x18, 0x0f, 0xd3, 0xfd, 0xcd, 0xad, 0x8b, 0x61, 0xd0, 0x6e, 0x5d, 0x71, 0xfd, 0xfa, - 0xec, 0x59, 0x41, 0x69, 0x62, 0xae, 0x47, 0xc7, 0xb8, 0x27, 0x49, 0xf4, 0x79, 0x0b, 0xce, 0xf8, - 0x4e, 0x93, 0x44, 0x2d, 0x87, 0x7e, 0x5a, 0x0e, 0x9e, 0xf5, 0x9c, 0xda, 0x26, 0xe3, 0x68, 0xf0, - 0xee, 0x38, 0xb2, 0x05, 0x47, 0x67, 0xae, 0xf6, 0xec, 0x1a, 0xef, 0x42, 0x16, 0xfd, 0xaa, 0x05, - 0xc7, 0x83, 0xb0, 0xb5, 0xe1, 0xf8, 0xa4, 0x2e, 0xa1, 0xd1, 0xc4, 0x10, 0x5b, 0x7a, 0xef, 0x3d, - 0xd8, 0x27, 0x5a, 0x4e, 0x77, 0xbb, 0x14, 0xf8, 0x6e, 0x1c, 0x84, 0x55, 0x12, 0xc7, 0xae, 0xdf, - 0x88, 0x66, 0x4f, 0xdd, 0xde, 0x99, 0x3c, 0xde, 0x85, 0x85, 0xbb, 0xf9, 0x41, 0x3f, 0x09, 0xc3, - 0x51, 0xc7, 0xaf, 0xdd, 0x70, 0xfd, 0x7a, 0x70, 0x2b, 0x9a, 0x28, 0xe7, 0xb1, 0x7c, 0xab, 0xaa, - 0x43, 0xb1, 0x00, 0x35, 0x01, 0x6c, 0x52, 0xcb, 0xfe, 0x70, 0x7a, 0x2a, 0x55, 0xf2, 0xfe, 0x70, - 0x7a, 0x32, 0xed, 0x42, 0x16, 0xfd, 0xac, 0x05, 0xa3, 0x91, 0xdb, 0xf0, 0x9d, 0xb8, 0x1d, 0x92, - 0x2b, 0xa4, 0x13, 0x4d, 0x00, 0x63, 0xe4, 0xf2, 0x01, 0x47, 0xc5, 0xe8, 0x72, 0xf6, 0x94, 0xe0, - 0x71, 0xd4, 0x6c, 0x8d, 0x70, 0x92, 0x6e, 0xd6, 0x42, 0xd3, 0xd3, 0x7a, 0x38, 0xdf, 0x85, 0xa6, - 0x27, 0x75, 0x4f, 0x92, 0xe8, 0x27, 0xe0, 0x18, 0x6f, 0x52, 0x23, 0x1b, 0x4d, 0x8c, 0x30, 0x41, - 0x7b, 0xf2, 0xf6, 0xce, 0xe4, 0xb1, 0x6a, 0x0a, 0x86, 0xbb, 0xb0, 0xd1, 0xab, 0x30, 0xd9, 0x22, - 0x61, 0xd3, 0x8d, 0x97, 0x7d, 0xaf, 0x23, 0xc5, 0x77, 0x2d, 0x68, 0x91, 0xba, 0x60, 0x27, 0x9a, - 0x18, 0x3d, 0x6b, 0x3d, 0x51, 0x9e, 0x7d, 0x8b, 0x60, 0x73, 0x72, 0x65, 0x77, 0x74, 0xbc, 0x57, - 0x7f, 0xe8, 0x0f, 0x2c, 0x38, 0x63, 0x48, 0xd9, 0x2a, 0x09, 0xb7, 0xdc, 0x1a, 0x99, 0xa9, 0xd5, - 0x82, 0xb6, 0x1f, 0x47, 0x13, 0x63, 0x6c, 0x18, 0xd7, 0x0e, 0x43, 0xe6, 0x27, 0x49, 0xe9, 0x79, - 0xd9, 0x13, 0x25, 0xc2, 0xbb, 0x70, 0x6a, 0xff, 0xab, 0x02, 0x1c, 0x4b, 0x5b, 0x00, 0xe8, 0xef, - 0x5b, 0x30, 0x7e, 0xf3, 0x56, 0xbc, 0x1a, 0x6c, 0x12, 0x3f, 0x9a, 0xed, 0x50, 0x39, 0xcd, 0x74, - 0xdf, 0xf0, 0x33, 0xb5, 0x7c, 0x6d, 0x8d, 0xa9, 0xcb, 0x49, 0x2a, 0xe7, 0xfd, 0x38, 0xec, 0xcc, - 0x3e, 0x28, 0xde, 0x69, 0xfc, 0xf2, 0x8d, 0x55, 0x13, 0x8a, 0xd3, 0x4c, 0x9d, 0xf9, 0x84, 0x05, - 0x27, 0xb3, 0xba, 0x40, 0xc7, 0xa0, 0xb8, 0x49, 0x3a, 0xdc, 0x12, 0xc5, 0xf4, 0x27, 0x7a, 0x19, - 0x4a, 0x5b, 0x8e, 0xd7, 0x26, 0xc2, 0x4c, 0xbb, 0x78, 0xb0, 0x17, 0x51, 0x9c, 0x61, 0xde, 0xeb, - 0x8f, 0x16, 0xce, 0x59, 0xf6, 0x1f, 0x15, 0x61, 0xd8, 0xf8, 0x68, 0x47, 0x60, 0x7a, 0x06, 0x09, - 0xd3, 0x73, 0x29, 0xb7, 0xf9, 0xd6, 0xd3, 0xf6, 0xbc, 0x95, 0xb2, 0x3d, 0x97, 0xf3, 0x23, 0xb9, - 0xab, 0xf1, 0x89, 0x62, 0xa8, 0x04, 0x2d, 0xba, 0x0d, 0xa1, 0x36, 0xcc, 0x40, 0x1e, 0x9f, 0x70, - 0x59, 0x76, 0x37, 0x3b, 0x7a, 0x7b, 0x67, 0xb2, 0xa2, 0xfe, 0x62, 0x4d, 0xc8, 0xfe, 0xa6, 0x05, - 0x27, 0x0d, 0x1e, 0xe7, 0x02, 0xbf, 0xee, 0xb2, 0x4f, 0x7b, 0x16, 0x06, 0xe2, 0x4e, 0x4b, 0x6e, - 0x75, 0xd4, 0x48, 0xad, 0x76, 0x5a, 0x04, 0x33, 0x08, 0xdd, 0xb1, 0x34, 0x49, 0x14, 0x39, 0x0d, - 0x92, 0xde, 0xdc, 0x2c, 0xf1, 0x66, 0x2c, 0xe1, 0x28, 0x04, 0xe4, 0x39, 0x51, 0xbc, 0x1a, 0x3a, - 0x7e, 0xc4, 0xba, 0x5f, 0x75, 0x9b, 0x44, 0x0c, 0xf0, 0xff, 0xd7, 0xdf, 0x8c, 0xa1, 0x4f, 0xcc, - 0x3e, 0x70, 0x7b, 0x67, 0x12, 0x2d, 0x76, 0xf5, 0x84, 0x33, 0x7a, 0xb7, 0x3f, 0x6f, 0xc1, 0x03, - 0xd9, 0x02, 0x06, 0x3d, 0x0e, 0x83, 0x7c, 0x9f, 0x2b, 0xde, 0x4e, 0x7f, 0x12, 0xd6, 0x8a, 0x05, - 0x14, 0x4d, 0x43, 0x45, 0x29, 0x3c, 0xf1, 0x8e, 0xc7, 0x05, 0x6a, 0x45, 0x6b, 0x49, 0x8d, 0x43, - 0x07, 0x8d, 0xfe, 0x11, 0x26, 0xa8, 0x1a, 0x34, 0xb6, 0x31, 0x64, 0x10, 0xfb, 0x1b, 0x16, 0xbc, - 0xb9, 0x1f, 0xb1, 0x77, 0x78, 0x3c, 0x56, 0xe1, 0x54, 0x9d, 0xac, 0x3b, 0x6d, 0x2f, 0x4e, 0x52, - 0x14, 0x4c, 0x3f, 0x22, 0x1e, 0x3e, 0x35, 0x9f, 0x85, 0x84, 0xb3, 0x9f, 0xb5, 0xff, 0xa3, 0x05, - 0xe3, 0xc6, 0x6b, 0x1d, 0xc1, 0xd6, 0xc9, 0x4f, 0x6e, 0x9d, 0x16, 0x72, 0x5b, 0xa6, 0x3d, 0xf6, - 0x4e, 0x9f, 0xb2, 0xe0, 0x8c, 0x81, 0xb5, 0xe4, 0xc4, 0xb5, 0x8d, 0xf3, 0xdb, 0xad, 0x90, 0x44, - 0x11, 0x9d, 0x52, 0x8f, 0x18, 0xe2, 0x78, 0x76, 0x58, 0xf4, 0x50, 0xbc, 0x42, 0x3a, 0x5c, 0x36, - 0x3f, 0x09, 0x65, 0xbe, 0xe6, 0x82, 0x50, 0x7c, 0x24, 0xf5, 0x6e, 0xcb, 0xa2, 0x1d, 0x2b, 0x0c, - 0x64, 0xc3, 0x20, 0x93, 0xb9, 0x54, 0x06, 0x51, 0x33, 0x01, 0xe8, 0x77, 0xbf, 0xce, 0x5a, 0xb0, - 0x80, 0xd8, 0x51, 0x82, 0x9d, 0x95, 0x90, 0xb0, 0xf9, 0x50, 0xbf, 0xe0, 0x12, 0xaf, 0x1e, 0xd1, - 0x6d, 0x9d, 0xe3, 0xfb, 0x41, 0x2c, 0x76, 0x68, 0xc6, 0xb6, 0x6e, 0x46, 0x37, 0x63, 0x13, 0x87, - 0x12, 0xf5, 0x9c, 0x35, 0xe2, 0xf1, 0x11, 0x15, 0x44, 0x17, 0x59, 0x0b, 0x16, 0x10, 0xfb, 0x76, - 0x81, 0x6d, 0x20, 0x95, 0x44, 0x23, 0x47, 0xe1, 0x7d, 0x08, 0x13, 0x2a, 0x60, 0x25, 0x3f, 0x79, - 0x4c, 0x7a, 0x7b, 0x20, 0x5e, 0x4b, 0x69, 0x01, 0x9c, 0x2b, 0xd5, 0xdd, 0xbd, 0x10, 0x1f, 0x2a, - 0xc2, 0x64, 0xf2, 0x81, 0x2e, 0x25, 0x42, 0xb7, 0xbc, 0x06, 0xa1, 0xb4, 0x3f, 0xca, 0xc0, 0xc7, - 0x26, 0x5e, 0x0f, 0x39, 0x5c, 0x38, 0x4c, 0x39, 0x6c, 0xaa, 0x89, 0xe2, 0x1e, 0x6a, 0xe2, 0x71, - 0x35, 0xea, 0x03, 0x29, 0x99, 0x97, 0x54, 0x95, 0x67, 0x61, 0x20, 0x8a, 0x49, 0x6b, 0xa2, 0x94, - 0x14, 0xb3, 0xd5, 0x98, 0xb4, 0x30, 0x83, 0xa0, 0x1f, 0x87, 0xf1, 0xd8, 0x09, 0x1b, 0x24, 0x0e, - 0xc9, 0x96, 0xcb, 0x7c, 0x97, 0x6c, 0x3f, 0x5b, 0x99, 0x3d, 0x41, 0xad, 0xae, 0x55, 0x06, 0xc2, - 0x12, 0x84, 0xd3, 0xb8, 0xf6, 0x7f, 0x2d, 0xc0, 0x83, 0xc9, 0x4f, 0xa0, 0x15, 0xe3, 0x3b, 0x12, - 0x8a, 0xf1, 0xad, 0xa6, 0x62, 0xbc, 0xb3, 0x33, 0xf9, 0x50, 0x8f, 0xc7, 0xbe, 0x6b, 0xf4, 0x26, - 0xba, 0x98, 0xfa, 0x08, 0xd3, 0xc9, 0x8f, 0x70, 0x67, 0x67, 0xf2, 0x91, 0x1e, 0xef, 0x98, 0xfa, - 0x4a, 0x8f, 0xc3, 0x60, 0x48, 0x9c, 0x28, 0xf0, 0xc5, 0x77, 0x52, 0x5f, 0x13, 0xb3, 0x56, 0x2c, - 0xa0, 0xf6, 0xd7, 0x2b, 0xe9, 0xc1, 0xbe, 0xc8, 0xfd, 0xb1, 0x41, 0x88, 0x5c, 0x18, 0x60, 0xbb, - 0x36, 0x2e, 0x59, 0xae, 0x1c, 0x6c, 0x15, 0x52, 0x2d, 0xa2, 0xba, 0x9e, 0x2d, 0xd3, 0xaf, 0x46, - 0x9b, 0x30, 0x23, 0x81, 0xb6, 0xa1, 0x5c, 0x93, 0x9b, 0xa9, 0x42, 0x1e, 0x6e, 0x47, 0xb1, 0x95, - 0xd2, 0x14, 0x47, 0xa8, 0xb8, 0x57, 0x3b, 0x30, 0x45, 0x0d, 0x11, 0x28, 0x36, 0xdc, 0x58, 0x7c, - 0xd6, 0x03, 0x6e, 0x97, 0x2f, 0xba, 0xc6, 0x2b, 0x0e, 0x51, 0x1d, 0x74, 0xd1, 0x8d, 0x31, 0xed, - 0x1f, 0x7d, 0xcc, 0x82, 0xe1, 0xa8, 0xd6, 0x5c, 0x09, 0x83, 0x2d, 0xb7, 0x4e, 0x42, 0x61, 0x63, - 0x1e, 0x50, 0xb2, 0x55, 0xe7, 0x96, 0x64, 0x87, 0x9a, 0x2e, 0x77, 0x5f, 0x68, 0x08, 0x36, 0xe9, - 0xd2, 0xbd, 0xd7, 0x83, 0xe2, 0xdd, 0xe7, 0x49, 0x8d, 0xad, 0x38, 0xb9, 0x67, 0x66, 0x33, 0xe5, - 0xc0, 0x36, 0xf7, 0x7c, 0xbb, 0xb6, 0x49, 0xd7, 0x9b, 0x66, 0xe8, 0xa1, 0xdb, 0x3b, 0x93, 0x0f, - 0xce, 0x65, 0xd3, 0xc4, 0xbd, 0x98, 0x61, 0x03, 0xd6, 0x6a, 0x7b, 0x1e, 0x26, 0xaf, 0xb6, 0x09, - 0xf3, 0x88, 0xe5, 0x30, 0x60, 0x2b, 0xba, 0xc3, 0xd4, 0x80, 0x19, 0x10, 0x6c, 0xd2, 0x45, 0xaf, - 0xc2, 0x60, 0xd3, 0x89, 0x43, 0x77, 0x5b, 0xb8, 0xc1, 0x0e, 0xb8, 0x0b, 0x5a, 0x62, 0x7d, 0x69, - 0xe2, 0x4c, 0xd1, 0xf3, 0x46, 0x2c, 0x08, 0xa1, 0x26, 0x94, 0x9a, 0x24, 0x6c, 0x90, 0x89, 0x72, - 0x1e, 0x2e, 0xff, 0x25, 0xda, 0x95, 0x26, 0x58, 0xa1, 0xc6, 0x15, 0x6b, 0xc3, 0x9c, 0x0a, 0x7a, - 0x19, 0xca, 0x11, 0xf1, 0x48, 0x8d, 0x9a, 0x47, 0x15, 0x46, 0xf1, 0xd9, 0x3e, 0x4d, 0x45, 0x6a, - 0x97, 0x54, 0xc5, 0xa3, 0x7c, 0x81, 0xc9, 0x7f, 0x58, 0x75, 0x49, 0x07, 0xb0, 0xe5, 0xb5, 0x1b, - 0xae, 0x3f, 0x01, 0x79, 0x0c, 0xe0, 0x0a, 0xeb, 0x2b, 0x35, 0x80, 0xbc, 0x11, 0x0b, 0x42, 0xf6, - 0x7f, 0xb1, 0x00, 0x25, 0x85, 0xda, 0x11, 0xd8, 0xc4, 0xaf, 0x26, 0x6d, 0xe2, 0xc5, 0x3c, 0x8d, - 0x96, 0x1e, 0x66, 0xf1, 0x6f, 0x56, 0x20, 0xa5, 0x0e, 0xae, 0x92, 0x28, 0x26, 0xf5, 0x37, 0x44, - 0xf8, 0x1b, 0x22, 0xfc, 0x0d, 0x11, 0xae, 0x44, 0xf8, 0x5a, 0x4a, 0x84, 0xbf, 0xdd, 0x58, 0xf5, - 0xfa, 0x7c, 0xfd, 0x15, 0x75, 0x00, 0x6f, 0x72, 0x60, 0x20, 0x50, 0x49, 0x70, 0xb9, 0xba, 0x7c, - 0x35, 0x53, 0x66, 0xbf, 0x92, 0x94, 0xd9, 0x07, 0x25, 0xf1, 0xfd, 0x20, 0xa5, 0xff, 0xc0, 0x82, - 0xb7, 0x24, 0xa5, 0x97, 0x9c, 0x39, 0x0b, 0x0d, 0x3f, 0x08, 0xc9, 0xbc, 0xbb, 0xbe, 0x4e, 0x42, - 0xe2, 0xd7, 0x48, 0xa4, 0x7c, 0x3b, 0x56, 0x2f, 0xdf, 0x0e, 0x7a, 0x0e, 0x46, 0x6e, 0x46, 0x81, - 0xbf, 0x12, 0xb8, 0xbe, 0x10, 0x41, 0x74, 0xc7, 0x71, 0xec, 0xf6, 0xce, 0xe4, 0x08, 0x1d, 0x51, - 0xd9, 0x8e, 0x13, 0x58, 0x68, 0x0e, 0x8e, 0xdf, 0x7c, 0x75, 0xc5, 0x89, 0x0d, 0x6f, 0x82, 0xdc, - 0xf7, 0xb3, 0xf3, 0xa8, 0xcb, 0x2f, 0xa6, 0x80, 0xb8, 0x1b, 0xdf, 0xfe, 0xdb, 0x05, 0x38, 0x9d, - 0x7a, 0x91, 0xc0, 0xf3, 0x82, 0x76, 0x4c, 0xf7, 0x44, 0xe8, 0x8b, 0x16, 0x1c, 0x6b, 0x26, 0x1d, - 0x16, 0x91, 0x70, 0x77, 0xbf, 0x33, 0x37, 0x1d, 0x91, 0xf2, 0x88, 0xcc, 0x4e, 0x88, 0x11, 0x3a, - 0x96, 0x02, 0x44, 0xb8, 0x8b, 0x17, 0xf4, 0x32, 0x54, 0x9a, 0xce, 0xf6, 0xb5, 0x56, 0xdd, 0x89, - 0xe5, 0x76, 0xb4, 0xb7, 0x17, 0xa1, 0x1d, 0xbb, 0xde, 0x14, 0x8f, 0xdc, 0x98, 0x5a, 0xf0, 0xe3, - 0xe5, 0xb0, 0x1a, 0x87, 0xae, 0xdf, 0xe0, 0x4e, 0xce, 0x25, 0xd9, 0x0d, 0xd6, 0x3d, 0xda, 0x5f, - 0xb0, 0xd2, 0x4a, 0x4a, 0x8d, 0x4e, 0xe8, 0xc4, 0xa4, 0xd1, 0x41, 0xef, 0x87, 0x12, 0xdd, 0x37, - 0xca, 0x51, 0xb9, 0x91, 0xa7, 0xe6, 0x34, 0xbe, 0x84, 0x56, 0xa2, 0xf4, 0x5f, 0x84, 0x39, 0x51, - 0xfb, 0x8b, 0x95, 0xb4, 0xb1, 0xc0, 0xce, 0xe6, 0x9f, 0x01, 0x68, 0x04, 0xab, 0xa4, 0xd9, 0xf2, - 0xe8, 0xb0, 0x58, 0xec, 0x80, 0x47, 0xb9, 0x4a, 0x2e, 0x2a, 0x08, 0x36, 0xb0, 0xd0, 0xcf, 0x59, - 0x00, 0x0d, 0x39, 0xe7, 0xa5, 0x21, 0x70, 0x2d, 0xcf, 0xd7, 0xd1, 0x2b, 0x4a, 0xf3, 0xa2, 0x08, - 0x62, 0x83, 0x38, 0xfa, 0x69, 0x0b, 0xca, 0xb1, 0x64, 0x9f, 0xab, 0xc6, 0xd5, 0x3c, 0x39, 0x91, - 0x2f, 0xad, 0x6d, 0x22, 0x35, 0x24, 0x8a, 0x2e, 0xfa, 0x19, 0x0b, 0x20, 0xea, 0xf8, 0xb5, 0x95, - 0xc0, 0x73, 0x6b, 0x1d, 0xa1, 0x31, 0xaf, 0xe7, 0xea, 0xce, 0x51, 0xbd, 0xcf, 0x8e, 0xd1, 0xd1, - 0xd0, 0xff, 0xb1, 0x41, 0x19, 0x7d, 0x10, 0xca, 0x91, 0x98, 0x6e, 0x42, 0x47, 0xae, 0xe6, 0xeb, - 0x54, 0xe2, 0x7d, 0x0b, 0xf1, 0x2a, 0xfe, 0x61, 0x45, 0x13, 0xfd, 0xa2, 0x05, 0xe3, 0xad, 0xa4, - 0x9b, 0x50, 0xa8, 0xc3, 0xfc, 0x64, 0x40, 0xca, 0x0d, 0xc9, 0xbd, 0x2d, 0xa9, 0x46, 0x9c, 0xe6, - 0x82, 0x4a, 0x40, 0x3d, 0x83, 0x97, 0x5b, 0xdc, 0x65, 0x39, 0xa4, 0x25, 0xe0, 0xc5, 0x34, 0x10, - 0x77, 0xe3, 0xa3, 0x15, 0x38, 0x49, 0xb9, 0xeb, 0x70, 0xf3, 0x53, 0xaa, 0x97, 0x88, 0x29, 0xc3, - 0xf2, 0xec, 0xc3, 0x62, 0x86, 0xb0, 0xb3, 0x8e, 0x34, 0x0e, 0xce, 0x7c, 0x12, 0xfd, 0x91, 0x05, - 0x0f, 0xbb, 0x4c, 0x0d, 0x98, 0x0e, 0x7b, 0xad, 0x11, 0xc4, 0x41, 0x3b, 0xc9, 0x55, 0x56, 0xf4, - 0x52, 0x3f, 0xb3, 0x6f, 0x16, 0x6f, 0xf0, 0xf0, 0xc2, 0x2e, 0x2c, 0xe1, 0x5d, 0x19, 0x46, 0x3f, - 0x02, 0xa3, 0x72, 0x5d, 0xac, 0x50, 0x11, 0xcc, 0x14, 0x6d, 0x65, 0xf6, 0xf8, 0xed, 0x9d, 0xc9, - 0xd1, 0x55, 0x13, 0x80, 0x93, 0x78, 0xf6, 0xbf, 0x2e, 0x26, 0x4e, 0x89, 0x94, 0x0f, 0x93, 0x89, - 0x9b, 0x9a, 0xf4, 0xff, 0x48, 0xe9, 0x99, 0xab, 0xb8, 0x51, 0xde, 0x25, 0x2d, 0x6e, 0x54, 0x53, - 0x84, 0x0d, 0xe2, 0xd4, 0x28, 0x3d, 0xee, 0xa4, 0x3d, 0xa5, 0x42, 0x02, 0xbe, 0x9c, 0x27, 0x4b, - 0xdd, 0x67, 0x7a, 0xa7, 0x05, 0x6b, 0xc7, 0xbb, 0x40, 0xb8, 0x9b, 0x25, 0xf4, 0x01, 0xa8, 0x84, - 0x2a, 0xb2, 0xa5, 0x98, 0xc7, 0x56, 0x4d, 0x4e, 0x1b, 0xc1, 0x8e, 0x3a, 0x00, 0xd2, 0x31, 0x2c, - 0x9a, 0xa2, 0xfd, 0x87, 0xc9, 0x83, 0x31, 0x43, 0x76, 0xf4, 0x71, 0xe8, 0xf7, 0x69, 0x0b, 0x86, - 0xc3, 0xc0, 0xf3, 0x5c, 0xbf, 0x41, 0xe5, 0x9c, 0x50, 0xd6, 0xef, 0x3e, 0x14, 0x7d, 0x29, 0x04, - 0x1a, 0xb3, 0xac, 0xb1, 0xa6, 0x89, 0x4d, 0x06, 0xec, 0xbf, 0xb0, 0x60, 0xa2, 0x97, 0x3c, 0x46, - 0x04, 0x1e, 0x92, 0xc2, 0x46, 0x0d, 0xc5, 0xb2, 0x3f, 0x4f, 0x3c, 0xa2, 0xdc, 0xe6, 0xe5, 0xd9, - 0xc7, 0xc4, 0x6b, 0x3e, 0xb4, 0xd2, 0x1b, 0x15, 0xef, 0xd6, 0x0f, 0x7a, 0x09, 0x8e, 0x19, 0xef, - 0x15, 0xa9, 0x81, 0xa9, 0xcc, 0x4e, 0x51, 0x03, 0x68, 0x26, 0x05, 0xbb, 0xb3, 0x33, 0xf9, 0x40, - 0xba, 0x4d, 0x28, 0x8c, 0xae, 0x7e, 0xec, 0x2f, 0x17, 0xd2, 0x5f, 0x4b, 0xe9, 0xfa, 0xd7, 0xad, - 0x2e, 0x6f, 0xc2, 0x3b, 0x0f, 0x43, 0xbf, 0x32, 0xbf, 0x83, 0x0a, 0xc3, 0xe8, 0x8d, 0x73, 0x0f, - 0x8f, 0xed, 0xed, 0x7f, 0x33, 0x00, 0xbb, 0x70, 0xd6, 0x87, 0xf1, 0xbe, 0xef, 0x73, 0xd4, 0x4f, - 0x5a, 0xea, 0xc0, 0x8c, 0xaf, 0xe1, 0xfa, 0x61, 0x8d, 0x3d, 0xdf, 0x3f, 0x45, 0x3c, 0x74, 0x44, - 0x79, 0xd1, 0x93, 0x47, 0x73, 0xe8, 0x4b, 0x56, 0xf2, 0xc8, 0x8f, 0x07, 0x35, 0xba, 0x87, 0xc6, - 0x93, 0x71, 0x8e, 0xc8, 0x19, 0xd3, 0xa7, 0x4f, 0xbd, 0x4e, 0x18, 0xa7, 0x00, 0xd6, 0x5d, 0xdf, - 0xf1, 0xdc, 0xd7, 0xe8, 0xee, 0xa8, 0xc4, 0x14, 0x3c, 0xb3, 0x98, 0x2e, 0xa8, 0x56, 0x6c, 0x60, - 0x9c, 0xf9, 0xff, 0x61, 0xd8, 0x78, 0xf3, 0x8c, 0x88, 0x97, 0x93, 0x66, 0xc4, 0x4b, 0xc5, 0x08, - 0x54, 0x39, 0xf3, 0x76, 0x38, 0x96, 0x66, 0x70, 0x3f, 0xcf, 0xdb, 0xff, 0x6b, 0x28, 0x7d, 0x06, - 0xb7, 0x4a, 0xc2, 0x26, 0x65, 0xed, 0x0d, 0xc7, 0xd6, 0x1b, 0x8e, 0xad, 0x37, 0x1c, 0x5b, 0xe6, - 0xd9, 0x84, 0x70, 0xda, 0x0c, 0x1d, 0x91, 0xd3, 0x26, 0xe1, 0x86, 0x2a, 0xe7, 0xee, 0x86, 0xb2, - 0x3f, 0xd6, 0xe5, 0xb9, 0x5f, 0x0d, 0x09, 0x41, 0x01, 0x94, 0xfc, 0xa0, 0x4e, 0xa4, 0x8d, 0x7b, - 0x39, 0x1f, 0x83, 0xed, 0x6a, 0x50, 0x37, 0xc2, 0xc5, 0xe9, 0xbf, 0x08, 0x73, 0x3a, 0xf6, 0x47, - 0x07, 0x21, 0x61, 0x4e, 0xf2, 0xef, 0xfe, 0x43, 0x30, 0x14, 0x92, 0x56, 0x70, 0x0d, 0x2f, 0x0a, - 0x5d, 0xa6, 0x33, 0x4a, 0x78, 0x33, 0x96, 0x70, 0xaa, 0xf3, 0x5a, 0x4e, 0xbc, 0x21, 0x94, 0x99, - 0xd2, 0x79, 0x2b, 0x4e, 0xbc, 0x81, 0x19, 0x04, 0xbd, 0x1d, 0xc6, 0xe2, 0xc4, 0x51, 0xb8, 0x38, - 0xf2, 0x7d, 0x40, 0xe0, 0x8e, 0x25, 0x0f, 0xca, 0x71, 0x0a, 0x1b, 0xbd, 0x0a, 0x03, 0x1b, 0xc4, - 0x6b, 0x8a, 0x4f, 0x5f, 0xcd, 0x4f, 0xd7, 0xb0, 0x77, 0xbd, 0x44, 0xbc, 0x26, 0x97, 0x84, 0xf4, - 0x17, 0x66, 0xa4, 0xe8, 0xbc, 0xaf, 0x6c, 0xb6, 0xa3, 0x38, 0x68, 0xba, 0xaf, 0x49, 0x4f, 0xe7, - 0x3b, 0x73, 0x26, 0x7c, 0x45, 0xf6, 0xcf, 0x5d, 0x4a, 0xea, 0x2f, 0xd6, 0x94, 0x19, 0x1f, 0x75, - 0x37, 0x64, 0x53, 0xa6, 0x23, 0x1c, 0x96, 0x79, 0xf3, 0x31, 0x2f, 0xfb, 0xe7, 0x7c, 0xa8, 0xbf, - 0x58, 0x53, 0x46, 0x1d, 0xb5, 0xfe, 0x86, 0x19, 0x0f, 0xd7, 0x72, 0xe6, 0x81, 0xaf, 0xbd, 0xcc, - 0x75, 0xf8, 0x18, 0x94, 0x6a, 0x1b, 0x4e, 0x18, 0x4f, 0x8c, 0xb0, 0x49, 0xa3, 0x66, 0xf1, 0x1c, - 0x6d, 0xc4, 0x1c, 0x86, 0x1e, 0x81, 0x62, 0x48, 0xd6, 0x59, 0x74, 0xb2, 0x11, 0x17, 0x85, 0xc9, - 0x3a, 0xa6, 0xed, 0xca, 0x2e, 0x1b, 0xeb, 0x19, 0x30, 0xf7, 0xcb, 0x85, 0xa4, 0x61, 0x97, 0x1c, - 0x19, 0xbe, 0x1e, 0x6a, 0xed, 0x30, 0x92, 0x0e, 0x32, 0x63, 0x3d, 0xb0, 0x66, 0x2c, 0xe1, 0xe8, - 0xc3, 0x16, 0x0c, 0xdd, 0x8c, 0x02, 0xdf, 0x27, 0xb1, 0x50, 0xa2, 0xd7, 0x73, 0x1e, 0xac, 0xcb, - 0xbc, 0x77, 0xcd, 0x83, 0x68, 0xc0, 0x92, 0x2e, 0x65, 0x97, 0x6c, 0xd7, 0xbc, 0x76, 0xbd, 0x2b, - 0x18, 0xe6, 0x3c, 0x6f, 0xc6, 0x12, 0x4e, 0x51, 0x5d, 0x9f, 0xa3, 0x0e, 0x24, 0x51, 0x17, 0x7c, - 0x81, 0x2a, 0xe0, 0xf6, 0xaf, 0x97, 0xe1, 0x54, 0xe6, 0xf2, 0xa1, 0x26, 0x17, 0x33, 0x6a, 0x2e, - 0xb8, 0x1e, 0x91, 0x61, 0x60, 0xcc, 0xe4, 0xba, 0xae, 0x5a, 0xb1, 0x81, 0x81, 0x7e, 0x0a, 0xa0, - 0xe5, 0x84, 0x4e, 0x93, 0x28, 0x07, 0xf6, 0x81, 0x2d, 0x1b, 0xca, 0xc7, 0x8a, 0xec, 0x53, 0x6f, - 0xe2, 0x55, 0x53, 0x84, 0x0d, 0x92, 0xe8, 0x79, 0x18, 0x0e, 0x89, 0x47, 0x9c, 0x88, 0x85, 0xbf, - 0xa7, 0x73, 0x79, 0xb0, 0x06, 0x61, 0x13, 0x0f, 0x3d, 0xae, 0x22, 0xe6, 0x52, 0x91, 0x43, 0xc9, - 0xa8, 0x39, 0xf4, 0x19, 0x0b, 0xc6, 0xd6, 0x5d, 0x8f, 0x68, 0xea, 0x22, 0xf3, 0x66, 0xf9, 0xe0, - 0x2f, 0x79, 0xc1, 0xec, 0x57, 0xcb, 0xd0, 0x44, 0x73, 0x84, 0x53, 0xe4, 0xe9, 0x67, 0xde, 0x22, - 0x21, 0x13, 0xbe, 0x83, 0xc9, 0xcf, 0x7c, 0x9d, 0x37, 0x63, 0x09, 0x47, 0x33, 0x30, 0xde, 0x72, - 0xa2, 0x68, 0x2e, 0x24, 0x75, 0xe2, 0xc7, 0xae, 0xe3, 0xf1, 0xbc, 0x98, 0xb2, 0x0e, 0x27, 0x5f, - 0x49, 0x82, 0x71, 0x1a, 0x1f, 0xbd, 0x0b, 0x1e, 0xe4, 0x1e, 0xa2, 0x25, 0x37, 0x8a, 0x5c, 0xbf, - 0xa1, 0xa7, 0x81, 0x70, 0x94, 0x4d, 0x8a, 0xae, 0x1e, 0x5c, 0xc8, 0x46, 0xc3, 0xbd, 0x9e, 0x47, - 0x4f, 0x42, 0x39, 0xda, 0x74, 0x5b, 0x73, 0x61, 0x3d, 0x62, 0xa7, 0x43, 0x65, 0xed, 0x96, 0xad, - 0x8a, 0x76, 0xac, 0x30, 0x50, 0x0d, 0x46, 0xf8, 0x27, 0xe1, 0x21, 0x7f, 0x42, 0x82, 0x3e, 0xd5, - 0x53, 0x91, 0x8b, 0x34, 0xcf, 0x29, 0xec, 0xdc, 0x3a, 0x2f, 0xcf, 0xaa, 0xf8, 0xd1, 0xca, 0x75, - 0xa3, 0x1b, 0x9c, 0xe8, 0x34, 0xb9, 0xa7, 0x1b, 0xee, 0x63, 0x4f, 0xf7, 0x3c, 0x0c, 0x6f, 0xb6, - 0xd7, 0x88, 0x18, 0x79, 0x21, 0xd8, 0xd4, 0xec, 0xbb, 0xa2, 0x41, 0xd8, 0xc4, 0x63, 0xd1, 0x96, - 0x2d, 0x57, 0xfc, 0x8b, 0x26, 0x46, 0x8d, 0x68, 0xcb, 0x95, 0x05, 0xd9, 0x8c, 0x4d, 0x1c, 0xca, - 0x1a, 0x1d, 0x8b, 0x55, 0x12, 0xb1, 0x64, 0x0a, 0x3a, 0x5c, 0x8a, 0xb5, 0xaa, 0x04, 0x60, 0x8d, - 0x83, 0x56, 0xe0, 0x24, 0xfd, 0x53, 0x65, 0x69, 0xae, 0xd7, 0x1d, 0xcf, 0xad, 0xf3, 0xd0, 0xbf, - 0xf1, 0xa4, 0x7f, 0xb3, 0x9a, 0x81, 0x83, 0x33, 0x9f, 0xb4, 0x7f, 0xa9, 0x90, 0xf4, 0x9c, 0x98, - 0x22, 0x0c, 0x45, 0x54, 0x50, 0xc5, 0xd7, 0x9d, 0x50, 0x1a, 0x3c, 0x07, 0x4c, 0x6e, 0x12, 0xfd, - 0x5e, 0x77, 0x42, 0x53, 0xe4, 0x31, 0x02, 0x58, 0x52, 0x42, 0x37, 0x61, 0x20, 0xf6, 0x9c, 0x9c, - 0xb2, 0x21, 0x0d, 0x8a, 0xda, 0x91, 0xb5, 0x38, 0x13, 0x61, 0x46, 0x03, 0x3d, 0x4c, 0x77, 0x6f, - 0x6b, 0xf2, 0xa4, 0x4d, 0x6c, 0xb8, 0xd6, 0x22, 0xcc, 0x5a, 0xed, 0x5f, 0x18, 0xcd, 0xd0, 0x3a, - 0xca, 0x10, 0x40, 0xcf, 0x00, 0xd0, 0x49, 0xb3, 0x12, 0x92, 0x75, 0x77, 0x5b, 0x18, 0x62, 0x4a, - 0xb2, 0x5d, 0x55, 0x10, 0x6c, 0x60, 0xc9, 0x67, 0xaa, 0xed, 0x75, 0xfa, 0x4c, 0xa1, 0xfb, 0x19, - 0x0e, 0xc1, 0x06, 0x16, 0x7a, 0x0e, 0x06, 0xdd, 0xa6, 0xd3, 0x50, 0x81, 0xc0, 0x0f, 0x53, 0x91, - 0xb6, 0xc0, 0x5a, 0xee, 0xec, 0x4c, 0x8e, 0x29, 0x86, 0x58, 0x13, 0x16, 0xb8, 0xe8, 0xcb, 0x16, + 0x64, 0xc4, 0xe7, 0x24, 0x52, 0xe4, 0x8f, 0x04, 0x09, 0x02, 0xc1, 0x4a, 0x0c, 0x24, 0x0e, 0x64, + 0xc3, 0xb0, 0x9d, 0x18, 0x4a, 0x9c, 0xc0, 0x8e, 0x20, 0x58, 0x4e, 0x6c, 0x33, 0xd2, 0x26, 0x81, + 0x8c, 0x00, 0x31, 0x10, 0x27, 0x7f, 0x04, 0x9b, 0x20, 0x08, 0xea, 0xbb, 0xba, 0xa7, 0x87, 0x1c, + 0x2e, 0x9b, 0xdc, 0x95, 0x74, 0xff, 0xcd, 0xd4, 0x7b, 0x5d, 0xef, 0x75, 0x75, 0xd5, 0x7b, 0xaf, + 0x5e, 0xbd, 0xf7, 0x0a, 0x16, 0x1b, 0x6e, 0xbc, 0xd1, 0x5e, 0x9b, 0xaa, 0x05, 0xcd, 0x69, 0x27, + 0x6c, 0x04, 0xad, 0x30, 0xb8, 0xc9, 0x7e, 0x3c, 0x55, 0xab, 0x4f, 0x6f, 0x3d, 0x3b, 0xdd, 0xda, + 0x6c, 0x4c, 0x3b, 0x2d, 0x37, 0x9a, 0x76, 0x5a, 0x2d, 0xcf, 0xad, 0x39, 0xb1, 0x1b, 0xf8, 0xd3, + 0x5b, 0x4f, 0x3b, 0x5e, 0x6b, 0xc3, 0x79, 0x7a, 0xba, 0x41, 0x7c, 0x12, 0x3a, 0x31, 0xa9, 0x4f, + 0xb5, 0xc2, 0x20, 0x0e, 0xd0, 0x8f, 0xe9, 0xde, 0xa6, 0x64, 0x6f, 0xec, 0xc7, 0x2b, 0xb5, 0xfa, + 0xd4, 0xd6, 0xb3, 0x53, 0xad, 0xcd, 0xc6, 0x14, 0xed, 0x6d, 0xca, 0xe8, 0x6d, 0x4a, 0xf6, 0x76, + 0xe6, 0x29, 0x83, 0x97, 0x46, 0xd0, 0x08, 0xa6, 0x59, 0xa7, 0x6b, 0xed, 0x75, 0xf6, 0x8f, 0xfd, + 0x61, 0xbf, 0x38, 0xb1, 0x33, 0xf6, 0xe6, 0xb9, 0x68, 0xca, 0x0d, 0x28, 0x7b, 0xd3, 0xb5, 0x20, + 0x24, 0xd3, 0x5b, 0x5d, 0x0c, 0x9d, 0xb9, 0xa4, 0x71, 0xc8, 0x76, 0x4c, 0xfc, 0xc8, 0x0d, 0xfc, + 0xe8, 0x29, 0xca, 0x02, 0x09, 0xb7, 0x48, 0x68, 0xbe, 0x9e, 0x81, 0x90, 0xd5, 0xd3, 0x73, 0xba, + 0xa7, 0xa6, 0x53, 0xdb, 0x70, 0x7d, 0x12, 0x76, 0xf4, 0xe3, 0x4d, 0x12, 0x3b, 0x59, 0x4f, 0x4d, + 0xf7, 0x7a, 0x2a, 0x6c, 0xfb, 0xb1, 0xdb, 0x24, 0x5d, 0x0f, 0xbc, 0x6d, 0xaf, 0x07, 0xa2, 0xda, + 0x06, 0x69, 0x3a, 0x5d, 0xcf, 0x3d, 0xdb, 0xeb, 0xb9, 0x76, 0xec, 0x7a, 0xd3, 0xae, 0x1f, 0x47, + 0x71, 0x98, 0x7e, 0xc8, 0xfe, 0x3b, 0x16, 0x8c, 0xce, 0xdc, 0xa8, 0xce, 0xb4, 0xe3, 0x8d, 0xb9, + 0xc0, 0x5f, 0x77, 0x1b, 0xe8, 0x79, 0x18, 0xae, 0x79, 0xed, 0x28, 0x26, 0xe1, 0x55, 0xa7, 0x49, + 0x26, 0xac, 0xb3, 0xd6, 0x13, 0x95, 0xd9, 0x13, 0x5f, 0xdb, 0x99, 0x7c, 0xd3, 0xed, 0x9d, 0xc9, + 0xe1, 0x39, 0x0d, 0xc2, 0x26, 0x1e, 0xfa, 0x21, 0x18, 0x0a, 0x03, 0x8f, 0xcc, 0xe0, 0xab, 0x13, + 0x05, 0xf6, 0xc8, 0xb8, 0x78, 0x64, 0x08, 0xf3, 0x66, 0x2c, 0xe1, 0x14, 0xb5, 0x15, 0x06, 0xeb, + 0xae, 0x47, 0x26, 0x8a, 0x49, 0xd4, 0x15, 0xde, 0x8c, 0x25, 0xdc, 0xfe, 0x93, 0x02, 0xc0, 0x4c, + 0xab, 0xb5, 0x12, 0x06, 0x37, 0x49, 0x2d, 0x46, 0xef, 0x83, 0x32, 0x1d, 0xe6, 0xba, 0x13, 0x3b, + 0x8c, 0xb1, 0xe1, 0x67, 0x7e, 0x78, 0x8a, 0xbf, 0xf5, 0x94, 0xf9, 0xd6, 0x7a, 0x92, 0x51, 0xec, + 0xa9, 0xad, 0xa7, 0xa7, 0x96, 0xd7, 0xe8, 0xf3, 0x4b, 0x24, 0x76, 0x66, 0x91, 0x20, 0x06, 0xba, + 0x0d, 0xab, 0x5e, 0x91, 0x0f, 0x03, 0x51, 0x8b, 0xd4, 0xd8, 0x3b, 0x0c, 0x3f, 0xb3, 0x38, 0x75, + 0x90, 0xd9, 0x3c, 0xa5, 0x39, 0xaf, 0xb6, 0x48, 0x6d, 0x76, 0x44, 0x50, 0x1e, 0xa0, 0xff, 0x30, + 0xa3, 0x83, 0xb6, 0x60, 0x30, 0x8a, 0x9d, 0xb8, 0x1d, 0xb1, 0xa1, 0x18, 0x7e, 0xe6, 0x6a, 0x6e, + 0x14, 0x59, 0xaf, 0xb3, 0x63, 0x82, 0xe6, 0x20, 0xff, 0x8f, 0x05, 0x35, 0xfb, 0x2f, 0x2c, 0x18, + 0xd3, 0xc8, 0x8b, 0x6e, 0x14, 0xa3, 0xf7, 0x74, 0x0d, 0xee, 0x54, 0x7f, 0x83, 0x4b, 0x9f, 0x66, + 0x43, 0x7b, 0x4c, 0x10, 0x2b, 0xcb, 0x16, 0x63, 0x60, 0x9b, 0x50, 0x72, 0x63, 0xd2, 0x8c, 0x26, + 0x0a, 0x67, 0x8b, 0x4f, 0x0c, 0x3f, 0x73, 0x29, 0xaf, 0xf7, 0x9c, 0x1d, 0x15, 0x44, 0x4b, 0x0b, + 0xb4, 0x7b, 0xcc, 0xa9, 0xd8, 0x7f, 0x3d, 0x6a, 0xbe, 0x1f, 0x1d, 0x70, 0xf4, 0x34, 0x0c, 0x47, + 0x41, 0x3b, 0xac, 0x11, 0x4c, 0x5a, 0x41, 0x34, 0x61, 0x9d, 0x2d, 0xd2, 0xa9, 0x47, 0x27, 0x75, + 0x55, 0x37, 0x63, 0x13, 0x07, 0x7d, 0xda, 0x82, 0x91, 0x3a, 0x89, 0x62, 0xd7, 0x67, 0xf4, 0x25, + 0xf3, 0xab, 0x07, 0x66, 0x5e, 0x36, 0xce, 0xeb, 0xce, 0x67, 0x4f, 0x8a, 0x17, 0x19, 0x31, 0x1a, + 0x23, 0x9c, 0xa0, 0x4f, 0x17, 0x67, 0x9d, 0x44, 0xb5, 0xd0, 0x6d, 0xd1, 0xff, 0x62, 0xf9, 0xa8, + 0xc5, 0x39, 0xaf, 0x41, 0xd8, 0xc4, 0x43, 0x3e, 0x94, 0xe8, 0xe2, 0x8b, 0x26, 0x06, 0x18, 0xff, + 0x0b, 0x07, 0xe3, 0x5f, 0x0c, 0x2a, 0x5d, 0xd7, 0x7a, 0xf4, 0xe9, 0xbf, 0x08, 0x73, 0x32, 0xe8, + 0x53, 0x16, 0x4c, 0x08, 0xe1, 0x80, 0x09, 0x1f, 0xd0, 0x1b, 0x1b, 0x6e, 0x4c, 0x3c, 0x37, 0x8a, + 0x27, 0x4a, 0x8c, 0x87, 0xe9, 0xfe, 0xe6, 0xd6, 0xc5, 0x30, 0x68, 0xb7, 0xae, 0xb8, 0x7e, 0x7d, + 0xf6, 0xac, 0xa0, 0x34, 0x31, 0xd7, 0xa3, 0x63, 0xdc, 0x93, 0x24, 0xfa, 0xbc, 0x05, 0x67, 0x7c, + 0xa7, 0x49, 0xa2, 0x96, 0x43, 0x3f, 0x2d, 0x07, 0xcf, 0x7a, 0x4e, 0x6d, 0x93, 0x71, 0x34, 0x78, + 0x77, 0x1c, 0xd9, 0x82, 0xa3, 0x33, 0x57, 0x7b, 0x76, 0x8d, 0x77, 0x21, 0x8b, 0x7e, 0xd5, 0x82, + 0xe3, 0x41, 0xd8, 0xda, 0x70, 0x7c, 0x52, 0x97, 0xd0, 0x68, 0x62, 0x88, 0x2d, 0xbd, 0xf7, 0x1e, + 0xec, 0x13, 0x2d, 0xa7, 0xbb, 0x5d, 0x0a, 0x7c, 0x37, 0x0e, 0xc2, 0x2a, 0x89, 0x63, 0xd7, 0x6f, + 0x44, 0xb3, 0xa7, 0x6e, 0xef, 0x4c, 0x1e, 0xef, 0xc2, 0xc2, 0xdd, 0xfc, 0xa0, 0x9f, 0x84, 0xe1, + 0xa8, 0xe3, 0xd7, 0x6e, 0xb8, 0x7e, 0x3d, 0xb8, 0x15, 0x4d, 0x94, 0xf3, 0x58, 0xbe, 0x55, 0xd5, + 0xa1, 0x58, 0x80, 0x9a, 0x00, 0x36, 0xa9, 0x65, 0x7f, 0x38, 0x3d, 0x95, 0x2a, 0x79, 0x7f, 0x38, + 0x3d, 0x99, 0x76, 0x21, 0x8b, 0x7e, 0xd6, 0x82, 0xd1, 0xc8, 0x6d, 0xf8, 0x4e, 0xdc, 0x0e, 0xc9, + 0x15, 0xd2, 0x89, 0x26, 0x80, 0x31, 0x72, 0xf9, 0x80, 0xa3, 0x62, 0x74, 0x39, 0x7b, 0x4a, 0xf0, + 0x38, 0x6a, 0xb6, 0x46, 0x38, 0x49, 0x37, 0x6b, 0xa1, 0xe9, 0x69, 0x3d, 0x9c, 0xef, 0x42, 0xd3, + 0x93, 0xba, 0x27, 0x49, 0xf4, 0x13, 0x70, 0x8c, 0x37, 0xa9, 0x91, 0x8d, 0x26, 0x46, 0x98, 0xa0, + 0x3d, 0x79, 0x7b, 0x67, 0xf2, 0x58, 0x35, 0x05, 0xc3, 0x5d, 0xd8, 0xe8, 0x55, 0x98, 0x6c, 0x91, + 0xb0, 0xe9, 0xc6, 0xcb, 0xbe, 0xd7, 0x91, 0xe2, 0xbb, 0x16, 0xb4, 0x48, 0x5d, 0xb0, 0x13, 0x4d, + 0x8c, 0x9e, 0xb5, 0x9e, 0x28, 0xcf, 0xbe, 0x45, 0xb0, 0x39, 0xb9, 0xb2, 0x3b, 0x3a, 0xde, 0xab, + 0x3f, 0xf4, 0x07, 0x16, 0x9c, 0x31, 0xa4, 0x6c, 0x95, 0x84, 0x5b, 0x6e, 0x8d, 0xcc, 0xd4, 0x6a, + 0x41, 0xdb, 0x8f, 0xa3, 0x89, 0x31, 0x36, 0x8c, 0x6b, 0x87, 0x21, 0xf3, 0x93, 0xa4, 0xf4, 0xbc, + 0xec, 0x89, 0x12, 0xe1, 0x5d, 0x38, 0xb5, 0xff, 0x55, 0x01, 0x8e, 0xa5, 0x2d, 0x00, 0xf4, 0xf7, + 0x2d, 0x18, 0xbf, 0x79, 0x2b, 0x5e, 0x0d, 0x36, 0x89, 0x1f, 0xcd, 0x76, 0xa8, 0x9c, 0x66, 0xba, + 0x6f, 0xf8, 0x99, 0x5a, 0xbe, 0xb6, 0xc6, 0xd4, 0xe5, 0x24, 0x95, 0xf3, 0x7e, 0x1c, 0x76, 0x66, + 0x1f, 0x14, 0xef, 0x34, 0x7e, 0xf9, 0xc6, 0xaa, 0x09, 0xc5, 0x69, 0xa6, 0xce, 0x7c, 0xc2, 0x82, + 0x93, 0x59, 0x5d, 0xa0, 0x63, 0x50, 0xdc, 0x24, 0x1d, 0x6e, 0x89, 0x62, 0xfa, 0x13, 0xbd, 0x0c, + 0xa5, 0x2d, 0xc7, 0x6b, 0x13, 0x61, 0xa6, 0x5d, 0x3c, 0xd8, 0x8b, 0x28, 0xce, 0x30, 0xef, 0xf5, + 0x47, 0x0b, 0xe7, 0x2c, 0xfb, 0x8f, 0x8a, 0x30, 0x6c, 0x7c, 0xb4, 0x23, 0x30, 0x3d, 0x83, 0x84, + 0xe9, 0xb9, 0x94, 0xdb, 0x7c, 0xeb, 0x69, 0x7b, 0xde, 0x4a, 0xd9, 0x9e, 0xcb, 0xf9, 0x91, 0xdc, + 0xd5, 0xf8, 0x44, 0x31, 0x54, 0x82, 0x16, 0xdd, 0x86, 0x50, 0x1b, 0x66, 0x20, 0x8f, 0x4f, 0xb8, + 0x2c, 0xbb, 0x9b, 0x1d, 0xbd, 0xbd, 0x33, 0x59, 0x51, 0x7f, 0xb1, 0x26, 0x64, 0x7f, 0xd3, 0x82, + 0x93, 0x06, 0x8f, 0x73, 0x81, 0x5f, 0x77, 0xd9, 0xa7, 0x3d, 0x0b, 0x03, 0x71, 0xa7, 0x25, 0xb7, + 0x3a, 0x6a, 0xa4, 0x56, 0x3b, 0x2d, 0x82, 0x19, 0x84, 0xee, 0x58, 0x9a, 0x24, 0x8a, 0x9c, 0x06, + 0x49, 0x6f, 0x6e, 0x96, 0x78, 0x33, 0x96, 0x70, 0x14, 0x02, 0xf2, 0x9c, 0x28, 0x5e, 0x0d, 0x1d, + 0x3f, 0x62, 0xdd, 0xaf, 0xba, 0x4d, 0x22, 0x06, 0xf8, 0xff, 0xeb, 0x6f, 0xc6, 0xd0, 0x27, 0x66, + 0x1f, 0xb8, 0xbd, 0x33, 0x89, 0x16, 0xbb, 0x7a, 0xc2, 0x19, 0xbd, 0xdb, 0x9f, 0xb7, 0xe0, 0x81, + 0x6c, 0x01, 0x83, 0x1e, 0x87, 0x41, 0xbe, 0xcf, 0x15, 0x6f, 0xa7, 0x3f, 0x09, 0x6b, 0xc5, 0x02, + 0x8a, 0xa6, 0xa1, 0xa2, 0x14, 0x9e, 0x78, 0xc7, 0xe3, 0x02, 0xb5, 0xa2, 0xb5, 0xa4, 0xc6, 0xa1, + 0x83, 0x46, 0xff, 0x08, 0x13, 0x54, 0x0d, 0x1a, 0xdb, 0x18, 0x32, 0x88, 0xfd, 0x0d, 0x0b, 0xde, + 0xdc, 0x8f, 0xd8, 0x3b, 0x3c, 0x1e, 0xab, 0x70, 0xaa, 0x4e, 0xd6, 0x9d, 0xb6, 0x17, 0x27, 0x29, + 0x0a, 0xa6, 0x1f, 0x11, 0x0f, 0x9f, 0x9a, 0xcf, 0x42, 0xc2, 0xd9, 0xcf, 0xda, 0xff, 0xd1, 0x82, + 0x71, 0xe3, 0xb5, 0x8e, 0x60, 0xeb, 0xe4, 0x27, 0xb7, 0x4e, 0x0b, 0xb9, 0x2d, 0xd3, 0x1e, 0x7b, + 0xa7, 0x4f, 0x59, 0x70, 0xc6, 0xc0, 0x5a, 0x72, 0xe2, 0xda, 0xc6, 0xf9, 0xed, 0x56, 0x48, 0xa2, + 0x88, 0x4e, 0xa9, 0x47, 0x0c, 0x71, 0x3c, 0x3b, 0x2c, 0x7a, 0x28, 0x5e, 0x21, 0x1d, 0x2e, 0x9b, + 0x9f, 0x84, 0x32, 0x5f, 0x73, 0x41, 0x28, 0x3e, 0x92, 0x7a, 0xb7, 0x65, 0xd1, 0x8e, 0x15, 0x06, + 0xb2, 0x61, 0x90, 0xc9, 0x5c, 0x2a, 0x83, 0xa8, 0x99, 0x00, 0xf4, 0xbb, 0x5f, 0x67, 0x2d, 0x58, + 0x40, 0xec, 0x28, 0xc1, 0xce, 0x4a, 0x48, 0xd8, 0x7c, 0xa8, 0x5f, 0x70, 0x89, 0x57, 0x8f, 0xe8, + 0xb6, 0xce, 0xf1, 0xfd, 0x20, 0x16, 0x3b, 0x34, 0x63, 0x5b, 0x37, 0xa3, 0x9b, 0xb1, 0x89, 0x43, + 0x89, 0x7a, 0xce, 0x1a, 0xf1, 0xf8, 0x88, 0x0a, 0xa2, 0x8b, 0xac, 0x05, 0x0b, 0x88, 0x7d, 0xbb, + 0xc0, 0x36, 0x90, 0x4a, 0xa2, 0x91, 0xa3, 0xf0, 0x3e, 0x84, 0x09, 0x15, 0xb0, 0x92, 0x9f, 0x3c, + 0x26, 0xbd, 0x3d, 0x10, 0xaf, 0xa5, 0xb4, 0x00, 0xce, 0x95, 0xea, 0xee, 0x5e, 0x88, 0x0f, 0x15, + 0x61, 0x32, 0xf9, 0x40, 0x97, 0x12, 0xa1, 0x5b, 0x5e, 0x83, 0x50, 0xda, 0x1f, 0x65, 0xe0, 0x63, + 0x13, 0xaf, 0x87, 0x1c, 0x2e, 0x1c, 0xa6, 0x1c, 0x36, 0xd5, 0x44, 0x71, 0x0f, 0x35, 0xf1, 0xb8, + 0x1a, 0xf5, 0x81, 0x94, 0xcc, 0x4b, 0xaa, 0xca, 0xb3, 0x30, 0x10, 0xc5, 0xa4, 0x35, 0x51, 0x4a, + 0x8a, 0xd9, 0x6a, 0x4c, 0x5a, 0x98, 0x41, 0xd0, 0x8f, 0xc3, 0x78, 0xec, 0x84, 0x0d, 0x12, 0x87, + 0x64, 0xcb, 0x65, 0xbe, 0x4b, 0xb6, 0x9f, 0xad, 0xcc, 0x9e, 0xa0, 0x56, 0xd7, 0x2a, 0x03, 0x61, + 0x09, 0xc2, 0x69, 0x5c, 0xfb, 0xbf, 0x16, 0xe0, 0xc1, 0xe4, 0x27, 0xd0, 0x8a, 0xf1, 0x1d, 0x09, + 0xc5, 0xf8, 0x56, 0x53, 0x31, 0xde, 0xd9, 0x99, 0x7c, 0xa8, 0xc7, 0x63, 0xdf, 0x35, 0x7a, 0x13, + 0x5d, 0x4c, 0x7d, 0x84, 0xe9, 0xe4, 0x47, 0xb8, 0xb3, 0x33, 0xf9, 0x48, 0x8f, 0x77, 0x4c, 0x7d, + 0xa5, 0xc7, 0x61, 0x30, 0x24, 0x4e, 0x14, 0xf8, 0xe2, 0x3b, 0xa9, 0xaf, 0x89, 0x59, 0x2b, 0x16, + 0x50, 0xfb, 0xeb, 0x95, 0xf4, 0x60, 0x5f, 0xe4, 0xfe, 0xd8, 0x20, 0x44, 0x2e, 0x0c, 0xb0, 0x5d, + 0x1b, 0x97, 0x2c, 0x57, 0x0e, 0xb6, 0x0a, 0xa9, 0x16, 0x51, 0x5d, 0xcf, 0x96, 0xe9, 0x57, 0xa3, + 0x4d, 0x98, 0x91, 0x40, 0xdb, 0x50, 0xae, 0xc9, 0xcd, 0x54, 0x21, 0x0f, 0xb7, 0xa3, 0xd8, 0x4a, + 0x69, 0x8a, 0x23, 0x54, 0xdc, 0xab, 0x1d, 0x98, 0xa2, 0x86, 0x08, 0x14, 0x1b, 0x6e, 0x2c, 0x3e, + 0xeb, 0x01, 0xb7, 0xcb, 0x17, 0x5d, 0xe3, 0x15, 0x87, 0xa8, 0x0e, 0xba, 0xe8, 0xc6, 0x98, 0xf6, + 0x8f, 0x3e, 0x66, 0xc1, 0x70, 0x54, 0x6b, 0xae, 0x84, 0xc1, 0x96, 0x5b, 0x27, 0xa1, 0xb0, 0x31, + 0x0f, 0x28, 0xd9, 0xaa, 0x73, 0x4b, 0xb2, 0x43, 0x4d, 0x97, 0xbb, 0x2f, 0x34, 0x04, 0x9b, 0x74, + 0xe9, 0xde, 0xeb, 0x41, 0xf1, 0xee, 0xf3, 0xa4, 0xc6, 0x56, 0x9c, 0xdc, 0x33, 0xb3, 0x99, 0x72, + 0x60, 0x9b, 0x7b, 0xbe, 0x5d, 0xdb, 0xa4, 0xeb, 0x4d, 0x33, 0xf4, 0xd0, 0xed, 0x9d, 0xc9, 0x07, + 0xe7, 0xb2, 0x69, 0xe2, 0x5e, 0xcc, 0xb0, 0x01, 0x6b, 0xb5, 0x3d, 0x0f, 0x93, 0x57, 0xdb, 0x84, + 0x79, 0xc4, 0x72, 0x18, 0xb0, 0x15, 0xdd, 0x61, 0x6a, 0xc0, 0x0c, 0x08, 0x36, 0xe9, 0xa2, 0x57, + 0x61, 0xb0, 0xe9, 0xc4, 0xa1, 0xbb, 0x2d, 0xdc, 0x60, 0x07, 0xdc, 0x05, 0x2d, 0xb1, 0xbe, 0x34, + 0x71, 0xa6, 0xe8, 0x79, 0x23, 0x16, 0x84, 0x50, 0x13, 0x4a, 0x4d, 0x12, 0x36, 0xc8, 0x44, 0x39, + 0x0f, 0x97, 0xff, 0x12, 0xed, 0x4a, 0x13, 0xac, 0x50, 0xe3, 0x8a, 0xb5, 0x61, 0x4e, 0x05, 0xbd, + 0x0c, 0xe5, 0x88, 0x78, 0xa4, 0x46, 0xcd, 0xa3, 0x0a, 0xa3, 0xf8, 0x6c, 0x9f, 0xa6, 0x22, 0xb5, + 0x4b, 0xaa, 0xe2, 0x51, 0xbe, 0xc0, 0xe4, 0x3f, 0xac, 0xba, 0xa4, 0x03, 0xd8, 0xf2, 0xda, 0x0d, + 0xd7, 0x9f, 0x80, 0x3c, 0x06, 0x70, 0x85, 0xf5, 0x95, 0x1a, 0x40, 0xde, 0x88, 0x05, 0x21, 0xfb, + 0xbf, 0x58, 0x80, 0x92, 0x42, 0xed, 0x08, 0x6c, 0xe2, 0x57, 0x93, 0x36, 0xf1, 0x62, 0x9e, 0x46, + 0x4b, 0x0f, 0xb3, 0xf8, 0xab, 0x15, 0x48, 0xa9, 0x83, 0xab, 0x24, 0x8a, 0x49, 0xfd, 0x0d, 0x11, + 0xfe, 0x86, 0x08, 0x7f, 0x43, 0x84, 0x2b, 0x11, 0xbe, 0x96, 0x12, 0xe1, 0x6f, 0x37, 0x56, 0xbd, + 0x3e, 0x5f, 0x7f, 0x45, 0x1d, 0xc0, 0x9b, 0x1c, 0x18, 0x08, 0x54, 0x12, 0x5c, 0xae, 0x2e, 0x5f, + 0xcd, 0x94, 0xd9, 0xaf, 0x24, 0x65, 0xf6, 0x41, 0x49, 0x7c, 0x3f, 0x48, 0xe9, 0x3f, 0xb0, 0xe0, + 0x2d, 0x49, 0xe9, 0x25, 0x67, 0xce, 0x42, 0xc3, 0x0f, 0x42, 0x32, 0xef, 0xae, 0xaf, 0x93, 0x90, + 0xf8, 0x35, 0x12, 0x29, 0xdf, 0x8e, 0xd5, 0xcb, 0xb7, 0x83, 0x9e, 0x83, 0x91, 0x9b, 0x51, 0xe0, + 0xaf, 0x04, 0xae, 0x2f, 0x44, 0x10, 0xdd, 0x71, 0x1c, 0xbb, 0xbd, 0x33, 0x39, 0x42, 0x47, 0x54, + 0xb6, 0xe3, 0x04, 0x16, 0x9a, 0x83, 0xe3, 0x37, 0x5f, 0x5d, 0x71, 0x62, 0xc3, 0x9b, 0x20, 0xf7, + 0xfd, 0xec, 0x3c, 0xea, 0xf2, 0x8b, 0x29, 0x20, 0xee, 0xc6, 0xb7, 0xff, 0x76, 0x01, 0x4e, 0xa7, + 0x5e, 0x24, 0xf0, 0xbc, 0xa0, 0x1d, 0xd3, 0x3d, 0x11, 0xfa, 0xa2, 0x05, 0xc7, 0x9a, 0x49, 0x87, + 0x45, 0x24, 0xdc, 0xdd, 0xef, 0xcc, 0x4d, 0x47, 0xa4, 0x3c, 0x22, 0xb3, 0x13, 0x62, 0x84, 0x8e, + 0xa5, 0x00, 0x11, 0xee, 0xe2, 0x05, 0xbd, 0x0c, 0x95, 0xa6, 0xb3, 0x7d, 0xad, 0x55, 0x77, 0x62, + 0xb9, 0x1d, 0xed, 0xed, 0x45, 0x68, 0xc7, 0xae, 0x37, 0xc5, 0x23, 0x37, 0xa6, 0x16, 0xfc, 0x78, + 0x39, 0xac, 0xc6, 0xa1, 0xeb, 0x37, 0xb8, 0x93, 0x73, 0x49, 0x76, 0x83, 0x75, 0x8f, 0xf6, 0x17, + 0xac, 0xb4, 0x92, 0x52, 0xa3, 0x13, 0x3a, 0x31, 0x69, 0x74, 0xd0, 0xfb, 0xa1, 0x44, 0xf7, 0x8d, + 0x72, 0x54, 0x6e, 0xe4, 0xa9, 0x39, 0x8d, 0x2f, 0xa1, 0x95, 0x28, 0xfd, 0x17, 0x61, 0x4e, 0xd4, + 0xfe, 0x62, 0x25, 0x6d, 0x2c, 0xb0, 0xb3, 0xf9, 0x67, 0x00, 0x1a, 0xc1, 0x2a, 0x69, 0xb6, 0x3c, + 0x3a, 0x2c, 0x16, 0x3b, 0xe0, 0x51, 0xae, 0x92, 0x8b, 0x0a, 0x82, 0x0d, 0x2c, 0xf4, 0x73, 0x16, + 0x40, 0x43, 0xce, 0x79, 0x69, 0x08, 0x5c, 0xcb, 0xf3, 0x75, 0xf4, 0x8a, 0xd2, 0xbc, 0x28, 0x82, + 0xd8, 0x20, 0x8e, 0x7e, 0xda, 0x82, 0x72, 0x2c, 0xd9, 0xe7, 0xaa, 0x71, 0x35, 0x4f, 0x4e, 0xe4, + 0x4b, 0x6b, 0x9b, 0x48, 0x0d, 0x89, 0xa2, 0x8b, 0x7e, 0xc6, 0x02, 0x88, 0x3a, 0x7e, 0x6d, 0x25, + 0xf0, 0xdc, 0x5a, 0x47, 0x68, 0xcc, 0xeb, 0xb9, 0xba, 0x73, 0x54, 0xef, 0xb3, 0x63, 0x74, 0x34, + 0xf4, 0x7f, 0x6c, 0x50, 0x46, 0x1f, 0x84, 0x72, 0x24, 0xa6, 0x9b, 0xd0, 0x91, 0xab, 0xf9, 0x3a, + 0x95, 0x78, 0xdf, 0x42, 0xbc, 0x8a, 0x7f, 0x58, 0xd1, 0x44, 0xbf, 0x68, 0xc1, 0x78, 0x2b, 0xe9, + 0x26, 0x14, 0xea, 0x30, 0x3f, 0x19, 0x90, 0x72, 0x43, 0x72, 0x6f, 0x4b, 0xaa, 0x11, 0xa7, 0xb9, + 0xa0, 0x12, 0x50, 0xcf, 0xe0, 0xe5, 0x16, 0x77, 0x59, 0x0e, 0x69, 0x09, 0x78, 0x31, 0x0d, 0xc4, + 0xdd, 0xf8, 0x68, 0x05, 0x4e, 0x52, 0xee, 0x3a, 0xdc, 0xfc, 0x94, 0xea, 0x25, 0x62, 0xca, 0xb0, + 0x3c, 0xfb, 0xb0, 0x98, 0x21, 0xec, 0xac, 0x23, 0x8d, 0x83, 0x33, 0x9f, 0x44, 0x7f, 0x64, 0xc1, + 0xc3, 0x2e, 0x53, 0x03, 0xa6, 0xc3, 0x5e, 0x6b, 0x04, 0x71, 0xd0, 0x4e, 0x72, 0x95, 0x15, 0xbd, + 0xd4, 0xcf, 0xec, 0x9b, 0xc5, 0x1b, 0x3c, 0xbc, 0xb0, 0x0b, 0x4b, 0x78, 0x57, 0x86, 0xd1, 0x8f, + 0xc0, 0xa8, 0x5c, 0x17, 0x2b, 0x54, 0x04, 0x33, 0x45, 0x5b, 0x99, 0x3d, 0x7e, 0x7b, 0x67, 0x72, + 0x74, 0xd5, 0x04, 0xe0, 0x24, 0x9e, 0xfd, 0xaf, 0x8b, 0x89, 0x53, 0x22, 0xe5, 0xc3, 0x64, 0xe2, + 0xa6, 0x26, 0xfd, 0x3f, 0x52, 0x7a, 0xe6, 0x2a, 0x6e, 0x94, 0x77, 0x49, 0x8b, 0x1b, 0xd5, 0x14, + 0x61, 0x83, 0x38, 0x35, 0x4a, 0x8f, 0x3b, 0x69, 0x4f, 0xa9, 0x90, 0x80, 0x2f, 0xe7, 0xc9, 0x52, + 0xf7, 0x99, 0xde, 0x69, 0xc1, 0xda, 0xf1, 0x2e, 0x10, 0xee, 0x66, 0x09, 0x7d, 0x00, 0x2a, 0xa1, + 0x8a, 0x6c, 0x29, 0xe6, 0xb1, 0x55, 0x93, 0xd3, 0x46, 0xb0, 0xa3, 0x0e, 0x80, 0x74, 0x0c, 0x8b, + 0xa6, 0x68, 0xff, 0x61, 0xf2, 0x60, 0xcc, 0x90, 0x1d, 0x7d, 0x1c, 0xfa, 0x7d, 0xda, 0x82, 0xe1, + 0x30, 0xf0, 0x3c, 0xd7, 0x6f, 0x50, 0x39, 0x27, 0x94, 0xf5, 0xbb, 0x0f, 0x45, 0x5f, 0x0a, 0x81, + 0xc6, 0x2c, 0x6b, 0xac, 0x69, 0x62, 0x93, 0x01, 0xfb, 0x2f, 0x2c, 0x98, 0xe8, 0x25, 0x8f, 0x11, + 0x81, 0x87, 0xa4, 0xb0, 0x51, 0x43, 0xb1, 0xec, 0xcf, 0x13, 0x8f, 0x28, 0xb7, 0x79, 0x79, 0xf6, + 0x31, 0xf1, 0x9a, 0x0f, 0xad, 0xf4, 0x46, 0xc5, 0xbb, 0xf5, 0x83, 0x5e, 0x82, 0x63, 0xc6, 0x7b, + 0x45, 0x6a, 0x60, 0x2a, 0xb3, 0x53, 0xd4, 0x00, 0x9a, 0x49, 0xc1, 0xee, 0xec, 0x4c, 0x3e, 0x90, + 0x6e, 0x13, 0x0a, 0xa3, 0xab, 0x1f, 0xfb, 0xd7, 0x0a, 0xe9, 0xaf, 0xa5, 0x74, 0xfd, 0xeb, 0x56, + 0x97, 0x37, 0xe1, 0x9d, 0x87, 0xa1, 0x5f, 0x99, 0xdf, 0x41, 0x85, 0x61, 0xf4, 0xc6, 0xb9, 0x87, + 0xc7, 0xf6, 0xf6, 0xbf, 0x19, 0x80, 0x5d, 0x38, 0xeb, 0xc3, 0x78, 0xdf, 0xf7, 0x39, 0xea, 0x27, + 0x2d, 0x75, 0x60, 0xc6, 0xd7, 0x70, 0xfd, 0xb0, 0xc6, 0x9e, 0xef, 0x9f, 0x22, 0x1e, 0x3a, 0xa2, + 0xbc, 0xe8, 0xc9, 0xa3, 0x39, 0xf4, 0x25, 0x2b, 0x79, 0xe4, 0xc7, 0x83, 0x1a, 0xdd, 0x43, 0xe3, + 0xc9, 0x38, 0x47, 0xe4, 0x8c, 0xe9, 0xd3, 0xa7, 0x5e, 0x27, 0x8c, 0x53, 0x00, 0xeb, 0xae, 0xef, + 0x78, 0xee, 0x6b, 0x74, 0x77, 0x54, 0x62, 0x0a, 0x9e, 0x59, 0x4c, 0x17, 0x54, 0x2b, 0x36, 0x30, + 0xce, 0xfc, 0xff, 0x30, 0x6c, 0xbc, 0x79, 0x46, 0xc4, 0xcb, 0x49, 0x33, 0xe2, 0xa5, 0x62, 0x04, + 0xaa, 0x9c, 0x79, 0x3b, 0x1c, 0x4b, 0x33, 0xb8, 0x9f, 0xe7, 0xed, 0xff, 0x35, 0x94, 0x3e, 0x83, + 0x5b, 0x25, 0x61, 0x93, 0xb2, 0xf6, 0x86, 0x63, 0xeb, 0x0d, 0xc7, 0xd6, 0x1b, 0x8e, 0x2d, 0xf3, + 0x6c, 0x42, 0x38, 0x6d, 0x86, 0x8e, 0xc8, 0x69, 0x93, 0x70, 0x43, 0x95, 0x73, 0x77, 0x43, 0xd9, + 0x1f, 0xeb, 0xf2, 0xdc, 0xaf, 0x86, 0x84, 0xa0, 0x00, 0x4a, 0x7e, 0x50, 0x27, 0xd2, 0xc6, 0xbd, + 0x9c, 0x8f, 0xc1, 0x76, 0x35, 0xa8, 0x1b, 0xe1, 0xe2, 0xf4, 0x5f, 0x84, 0x39, 0x1d, 0xfb, 0xa3, + 0x83, 0x90, 0x30, 0x27, 0xf9, 0x77, 0xff, 0x21, 0x18, 0x0a, 0x49, 0x2b, 0xb8, 0x86, 0x17, 0x85, + 0x2e, 0xd3, 0x19, 0x25, 0xbc, 0x19, 0x4b, 0x38, 0xd5, 0x79, 0x2d, 0x27, 0xde, 0x10, 0xca, 0x4c, + 0xe9, 0xbc, 0x15, 0x27, 0xde, 0xc0, 0x0c, 0x82, 0xde, 0x0e, 0x63, 0x71, 0xe2, 0x28, 0x5c, 0x1c, + 0xf9, 0x3e, 0x20, 0x70, 0xc7, 0x92, 0x07, 0xe5, 0x38, 0x85, 0x8d, 0x5e, 0x85, 0x81, 0x0d, 0xe2, + 0x35, 0xc5, 0xa7, 0xaf, 0xe6, 0xa7, 0x6b, 0xd8, 0xbb, 0x5e, 0x22, 0x5e, 0x93, 0x4b, 0x42, 0xfa, + 0x0b, 0x33, 0x52, 0x74, 0xde, 0x57, 0x36, 0xdb, 0x51, 0x1c, 0x34, 0xdd, 0xd7, 0xa4, 0xa7, 0xf3, + 0x9d, 0x39, 0x13, 0xbe, 0x22, 0xfb, 0xe7, 0x2e, 0x25, 0xf5, 0x17, 0x6b, 0xca, 0x8c, 0x8f, 0xba, + 0x1b, 0xb2, 0x29, 0xd3, 0x11, 0x0e, 0xcb, 0xbc, 0xf9, 0x98, 0x97, 0xfd, 0x73, 0x3e, 0xd4, 0x5f, + 0xac, 0x29, 0xa3, 0x8e, 0x5a, 0x7f, 0xc3, 0x8c, 0x87, 0x6b, 0x39, 0xf3, 0xc0, 0xd7, 0x5e, 0xe6, + 0x3a, 0x7c, 0x0c, 0x4a, 0xb5, 0x0d, 0x27, 0x8c, 0x27, 0x46, 0xd8, 0xa4, 0x51, 0xb3, 0x78, 0x8e, + 0x36, 0x62, 0x0e, 0x43, 0x8f, 0x40, 0x31, 0x24, 0xeb, 0x2c, 0x3a, 0xd9, 0x88, 0x8b, 0xc2, 0x64, + 0x1d, 0xd3, 0x76, 0x65, 0x97, 0x8d, 0xf5, 0x0c, 0x98, 0xfb, 0xe5, 0x42, 0xd2, 0xb0, 0x4b, 0x8e, + 0x0c, 0x5f, 0x0f, 0xb5, 0x76, 0x18, 0x49, 0x07, 0x99, 0xb1, 0x1e, 0x58, 0x33, 0x96, 0x70, 0xf4, + 0x61, 0x0b, 0x86, 0x6e, 0x46, 0x81, 0xef, 0x93, 0x58, 0x28, 0xd1, 0xeb, 0x39, 0x0f, 0xd6, 0x65, + 0xde, 0xbb, 0xe6, 0x41, 0x34, 0x60, 0x49, 0x97, 0xb2, 0x4b, 0xb6, 0x6b, 0x5e, 0xbb, 0xde, 0x15, + 0x0c, 0x73, 0x9e, 0x37, 0x63, 0x09, 0xa7, 0xa8, 0xae, 0xcf, 0x51, 0x07, 0x92, 0xa8, 0x0b, 0xbe, + 0x40, 0x15, 0x70, 0xfb, 0x37, 0xca, 0x70, 0x2a, 0x73, 0xf9, 0x50, 0x93, 0x8b, 0x19, 0x35, 0x17, + 0x5c, 0x8f, 0xc8, 0x30, 0x30, 0x66, 0x72, 0x5d, 0x57, 0xad, 0xd8, 0xc0, 0x40, 0x3f, 0x05, 0xd0, + 0x72, 0x42, 0xa7, 0x49, 0x94, 0x03, 0xfb, 0xc0, 0x96, 0x0d, 0xe5, 0x63, 0x45, 0xf6, 0xa9, 0x37, + 0xf1, 0xaa, 0x29, 0xc2, 0x06, 0x49, 0xf4, 0x3c, 0x0c, 0x87, 0xc4, 0x23, 0x4e, 0xc4, 0xc2, 0xdf, + 0xd3, 0xb9, 0x3c, 0x58, 0x83, 0xb0, 0x89, 0x87, 0x1e, 0x57, 0x11, 0x73, 0xa9, 0xc8, 0xa1, 0x64, + 0xd4, 0x1c, 0xfa, 0x8c, 0x05, 0x63, 0xeb, 0xae, 0x47, 0x34, 0x75, 0x91, 0x79, 0xb3, 0x7c, 0xf0, + 0x97, 0xbc, 0x60, 0xf6, 0xab, 0x65, 0x68, 0xa2, 0x39, 0xc2, 0x29, 0xf2, 0xf4, 0x33, 0x6f, 0x91, + 0x90, 0x09, 0xdf, 0xc1, 0xe4, 0x67, 0xbe, 0xce, 0x9b, 0xb1, 0x84, 0xa3, 0x19, 0x18, 0x6f, 0x39, + 0x51, 0x34, 0x17, 0x92, 0x3a, 0xf1, 0x63, 0xd7, 0xf1, 0x78, 0x5e, 0x4c, 0x59, 0x87, 0x93, 0xaf, + 0x24, 0xc1, 0x38, 0x8d, 0x8f, 0xde, 0x05, 0x0f, 0x72, 0x0f, 0xd1, 0x92, 0x1b, 0x45, 0xae, 0xdf, + 0xd0, 0xd3, 0x40, 0x38, 0xca, 0x26, 0x45, 0x57, 0x0f, 0x2e, 0x64, 0xa3, 0xe1, 0x5e, 0xcf, 0xa3, + 0x27, 0xa1, 0x1c, 0x6d, 0xba, 0xad, 0xb9, 0xb0, 0x1e, 0xb1, 0xd3, 0xa1, 0xb2, 0x76, 0xcb, 0x56, + 0x45, 0x3b, 0x56, 0x18, 0xa8, 0x06, 0x23, 0xfc, 0x93, 0xf0, 0x90, 0x3f, 0x21, 0x41, 0x9f, 0xea, + 0xa9, 0xc8, 0x45, 0x9a, 0xe7, 0x14, 0x76, 0x6e, 0x9d, 0x97, 0x67, 0x55, 0xfc, 0x68, 0xe5, 0xba, + 0xd1, 0x0d, 0x4e, 0x74, 0x9a, 0xdc, 0xd3, 0x0d, 0xf7, 0xb1, 0xa7, 0x7b, 0x1e, 0x86, 0x37, 0xdb, + 0x6b, 0x44, 0x8c, 0xbc, 0x10, 0x6c, 0x6a, 0xf6, 0x5d, 0xd1, 0x20, 0x6c, 0xe2, 0xb1, 0x68, 0xcb, + 0x96, 0x2b, 0xfe, 0x45, 0x13, 0xa3, 0x46, 0xb4, 0xe5, 0xca, 0x82, 0x6c, 0xc6, 0x26, 0x0e, 0x65, + 0x8d, 0x8e, 0xc5, 0x2a, 0x89, 0x58, 0x32, 0x05, 0x1d, 0x2e, 0xc5, 0x5a, 0x55, 0x02, 0xb0, 0xc6, + 0x41, 0x2b, 0x70, 0x92, 0xfe, 0xa9, 0xb2, 0x34, 0xd7, 0xeb, 0x8e, 0xe7, 0xd6, 0x79, 0xe8, 0xdf, + 0x78, 0xd2, 0xbf, 0x59, 0xcd, 0xc0, 0xc1, 0x99, 0x4f, 0xda, 0xbf, 0x54, 0x48, 0x7a, 0x4e, 0x4c, + 0x11, 0x86, 0x22, 0x2a, 0xa8, 0xe2, 0xeb, 0x4e, 0x28, 0x0d, 0x9e, 0x03, 0x26, 0x37, 0x89, 0x7e, + 0xaf, 0x3b, 0xa1, 0x29, 0xf2, 0x18, 0x01, 0x2c, 0x29, 0xa1, 0x9b, 0x30, 0x10, 0x7b, 0x4e, 0x4e, + 0xd9, 0x90, 0x06, 0x45, 0xed, 0xc8, 0x5a, 0x9c, 0x89, 0x30, 0xa3, 0x81, 0x1e, 0xa6, 0xbb, 0xb7, + 0x35, 0x79, 0xd2, 0x26, 0x36, 0x5c, 0x6b, 0x11, 0x66, 0xad, 0xf6, 0x2f, 0x8c, 0x66, 0x68, 0x1d, + 0x65, 0x08, 0xa0, 0x67, 0x00, 0xe8, 0xa4, 0x59, 0x09, 0xc9, 0xba, 0xbb, 0x2d, 0x0c, 0x31, 0x25, + 0xd9, 0xae, 0x2a, 0x08, 0x36, 0xb0, 0xe4, 0x33, 0xd5, 0xf6, 0x3a, 0x7d, 0xa6, 0xd0, 0xfd, 0x0c, + 0x87, 0x60, 0x03, 0x0b, 0x3d, 0x07, 0x83, 0x6e, 0xd3, 0x69, 0xa8, 0x40, 0xe0, 0x87, 0xa9, 0x48, + 0x5b, 0x60, 0x2d, 0x77, 0x76, 0x26, 0xc7, 0x14, 0x43, 0xac, 0x09, 0x0b, 0x5c, 0xf4, 0x6b, 0x16, 0x8c, 0xd4, 0x82, 0x66, 0x33, 0xf0, 0xf9, 0xf6, 0x59, 0xf8, 0x02, 0x6e, 0x1e, 0x96, 0x99, 0x34, 0x35, 0x67, 0x10, 0xe3, 0xce, 0x00, 0x95, 0xb6, 0x69, 0x82, 0x70, 0x82, 0x2b, 0x53, 0xf2, 0x95, - 0xf6, 0x90, 0x7c, 0xbf, 0x61, 0xc1, 0x71, 0xfe, 0xac, 0xb1, 0xab, 0x17, 0x19, 0x8a, 0xc1, 0x21, + 0xf6, 0x90, 0x7c, 0xbf, 0x69, 0xc1, 0x71, 0xfe, 0xac, 0xb1, 0xab, 0x17, 0x19, 0x8a, 0xc1, 0x21, 0xbf, 0x56, 0x97, 0xa3, 0x43, 0x39, 0x7b, 0xbb, 0xe0, 0xb8, 0x9b, 0x49, 0x74, 0x11, 0x8e, 0xaf, 0x07, 0x61, 0x8d, 0x98, 0x03, 0x21, 0xc4, 0xb6, 0xea, 0xe8, 0x42, 0x1a, 0x01, 0x77, 0x3f, 0x83, 0xae, 0xc3, 0x03, 0x46, 0xa3, 0x39, 0x0e, 0x5c, 0x72, 0x3f, 0x2a, 0x7a, 0x7b, 0xe0, 0x42, 0x26, @@ -5036,7 +5036,7 @@ var fileDescriptor_c078c3c476799f44 = []byte{ 0xf1, 0xbb, 0xd3, 0xac, 0xc7, 0xfa, 0xd0, 0xac, 0x55, 0x38, 0xc5, 0x38, 0x10, 0x56, 0xb2, 0x74, 0x5a, 0x46, 0x13, 0x88, 0x31, 0xaf, 0xf2, 0x5b, 0x16, 0xb3, 0x90, 0x70, 0xf6, 0xb3, 0x67, 0xde, 0x01, 0xc7, 0xbb, 0x84, 0xdc, 0xbe, 0x1c, 0x92, 0xf3, 0xf0, 0x40, 0xb6, 0x38, 0xd9, 0x97, 0x5b, - 0xf2, 0xd7, 0x53, 0x71, 0xe9, 0xc6, 0x16, 0xad, 0x0f, 0x17, 0xb7, 0x03, 0x45, 0xe2, 0x6f, 0x09, + 0xf2, 0x37, 0x52, 0x71, 0xe9, 0xc6, 0x16, 0xad, 0x0f, 0x17, 0xb7, 0x03, 0x45, 0xe2, 0x6f, 0x09, 0xed, 0x7a, 0xe1, 0x60, 0xb3, 0xfa, 0xbc, 0xbf, 0xc5, 0xa5, 0x21, 0xf3, 0xe3, 0x9d, 0xf7, 0xb7, 0x30, 0xed, 0x1b, 0x7d, 0xce, 0x4a, 0x6c, 0x20, 0xb8, 0x63, 0xfc, 0xbd, 0x87, 0xb2, 0x27, 0xed, 0x7b, 0x4f, 0x61, 0xff, 0xdb, 0x02, 0x9c, 0xdd, 0xab, 0x93, 0x3e, 0x86, 0xef, 0x31, 0x18, 0x8c, @@ -5056,498 +5056,501 @@ var fileDescriptor_c078c3c476799f44 = []byte{ 0xd7, 0x60, 0x48, 0x1e, 0xe8, 0x97, 0xf3, 0xf0, 0x27, 0x74, 0xcf, 0x7f, 0x35, 0x99, 0xaa, 0xe2, 0x44, 0x5f, 0x12, 0x44, 0x1f, 0xb7, 0x60, 0x8c, 0xff, 0xbe, 0xd4, 0xa9, 0xf3, 0x14, 0xc3, 0x4a, 0x1e, 0x51, 0xfb, 0xd5, 0x44, 0x9f, 0xb3, 0xe8, 0xf6, 0xce, 0xe4, 0x58, 0xb2, 0x0d, 0xa7, 0xe8, - 0xda, 0x5f, 0x1e, 0x81, 0xee, 0x10, 0x88, 0x64, 0xbc, 0x83, 0x75, 0xd4, 0xf1, 0x0e, 0x74, 0x57, - 0x19, 0xe9, 0x50, 0x85, 0x1c, 0x96, 0x99, 0xa0, 0xaa, 0x8f, 0xa1, 0x3b, 0x7e, 0x0d, 0x33, 0x1a, - 0x28, 0x84, 0xc1, 0x0d, 0xe2, 0x78, 0xf1, 0x46, 0x3e, 0x27, 0x66, 0x97, 0x58, 0x5f, 0xe9, 0x7c, - 0x41, 0xde, 0x8a, 0x05, 0x25, 0xb4, 0x0d, 0x43, 0x1b, 0x7c, 0x2e, 0x8a, 0x8d, 0xde, 0xd2, 0x41, - 0x07, 0x37, 0x31, 0xc1, 0xf5, 0xcc, 0x13, 0x0d, 0x58, 0x92, 0x63, 0xb1, 0x75, 0x46, 0xf4, 0x0f, - 0x97, 0x22, 0xf9, 0xa5, 0x4a, 0xf6, 0x1f, 0xfa, 0xf3, 0x3e, 0x18, 0x09, 0x49, 0x2d, 0xf0, 0x6b, - 0xae, 0x47, 0xea, 0x33, 0xf2, 0x34, 0x6c, 0x3f, 0x19, 0x72, 0xcc, 0x95, 0x84, 0x8d, 0x3e, 0x70, - 0xa2, 0x47, 0xb6, 0xc8, 0x54, 0xd6, 0x3c, 0xfd, 0x20, 0x44, 0x9c, 0x7a, 0x2c, 0xe6, 0x94, 0xa3, - 0xcf, 0xfa, 0xe4, 0x8b, 0x2c, 0xd9, 0x86, 0x53, 0x74, 0xd1, 0x4b, 0x00, 0xc1, 0x1a, 0x0f, 0xa0, - 0x9b, 0x89, 0xc5, 0x11, 0xc8, 0x7e, 0x5e, 0x75, 0x8c, 0x67, 0xda, 0xca, 0x1e, 0xb0, 0xd1, 0x1b, - 0xba, 0x02, 0xc0, 0x97, 0xcd, 0x6a, 0xa7, 0x25, 0x77, 0x83, 0x32, 0xc5, 0x11, 0xaa, 0x0a, 0x72, - 0x67, 0x67, 0xb2, 0xdb, 0xe1, 0xcc, 0xa2, 0x84, 0x8c, 0xc7, 0xd1, 0x4f, 0xc2, 0x50, 0xd4, 0x6e, - 0x36, 0x1d, 0x75, 0x40, 0x92, 0x63, 0xee, 0x2e, 0xef, 0xd7, 0x90, 0x8a, 0xbc, 0x01, 0x4b, 0x8a, - 0xe8, 0x26, 0x95, 0xef, 0x42, 0x3c, 0xf1, 0x55, 0xc4, 0xcd, 0x13, 0xee, 0x06, 0x7c, 0x9b, 0xdc, - 0xc2, 0xe0, 0x0c, 0x9c, 0x3b, 0x3b, 0x93, 0x0f, 0x24, 0xdb, 0x17, 0x03, 0x91, 0x4d, 0x9b, 0xd9, - 0x27, 0xba, 0x2c, 0x8b, 0x68, 0xd1, 0xd7, 0x96, 0xb5, 0x5d, 0x9e, 0xd0, 0x45, 0xb4, 0x58, 0x73, - 0xef, 0x31, 0x33, 0x1f, 0x46, 0x4b, 0x70, 0xa2, 0x16, 0xf8, 0x71, 0x18, 0x78, 0x1e, 0x2f, 0x22, - 0xc7, 0x37, 0xe6, 0xfc, 0x00, 0xe5, 0x21, 0xc1, 0xf6, 0x89, 0xb9, 0x6e, 0x14, 0x9c, 0xf5, 0x1c, - 0x35, 0xc8, 0xd3, 0xca, 0x61, 0x2c, 0x97, 0xb3, 0xf5, 0x44, 0x9f, 0x42, 0x42, 0x29, 0x9f, 0xf7, - 0x1e, 0x6a, 0xc2, 0x4f, 0x9e, 0xb0, 0x8a, 0x2f, 0xf6, 0x1c, 0x8c, 0x90, 0xed, 0x98, 0x84, 0xbe, - 0xe3, 0x5d, 0xc3, 0x8b, 0xf2, 0xb4, 0x82, 0x2d, 0xcc, 0xf3, 0x46, 0x3b, 0x4e, 0x60, 0x21, 0x5b, - 0xb9, 0xc8, 0x8c, 0xb4, 0x75, 0xee, 0x22, 0x93, 0x0e, 0x31, 0xfb, 0xab, 0xc5, 0x84, 0xc1, 0x7a, - 0x4f, 0xce, 0x73, 0x59, 0x7d, 0x24, 0x59, 0x48, 0x8a, 0x01, 0xc4, 0x46, 0x2c, 0x4f, 0xca, 0xaa, - 0x3e, 0xd2, 0xb2, 0x49, 0x08, 0x27, 0xe9, 0xa2, 0x4d, 0x28, 0x6d, 0x04, 0x51, 0x2c, 0xb7, 0x67, - 0x07, 0xdc, 0x09, 0x5e, 0x0a, 0xa2, 0x98, 0x59, 0x59, 0xea, 0xb5, 0x69, 0x4b, 0x84, 0x39, 0x0d, - 0xba, 0xf1, 0x8f, 0x36, 0x9c, 0xb0, 0x1e, 0xcd, 0xb1, 0x22, 0x13, 0x03, 0xcc, 0xbc, 0x52, 0xc6, - 0x74, 0x55, 0x83, 0xb0, 0x89, 0x67, 0x7f, 0xc7, 0x4a, 0x1c, 0x69, 0xdd, 0x60, 0x19, 0x03, 0x5b, - 0xc4, 0xa7, 0x22, 0xca, 0x8c, 0x51, 0xfc, 0x91, 0x54, 0xfe, 0xf5, 0x5b, 0x7a, 0xd5, 0x7b, 0xbc, - 0x45, 0x7b, 0x98, 0x62, 0x5d, 0x18, 0xe1, 0x8c, 0x1f, 0xb2, 0x92, 0x89, 0xf4, 0x85, 0x3c, 0xf6, - 0x6d, 0x66, 0x31, 0x89, 0x3d, 0x73, 0xf2, 0xed, 0xcf, 0x59, 0x30, 0x34, 0xeb, 0xd4, 0x36, 0x83, - 0xf5, 0x75, 0xf4, 0x24, 0x94, 0xeb, 0xed, 0xd0, 0xcc, 0xe9, 0x57, 0x9e, 0xaa, 0x79, 0xd1, 0x8e, - 0x15, 0x06, 0x9d, 0xfa, 0xeb, 0x4e, 0x4d, 0x96, 0x94, 0x28, 0xf2, 0xa9, 0x7f, 0x81, 0xb5, 0x60, - 0x01, 0xa1, 0xc3, 0xdf, 0x74, 0xb6, 0xe5, 0xc3, 0xe9, 0xf3, 0xb4, 0x25, 0x0d, 0xc2, 0x26, 0x9e, - 0xfd, 0x2f, 0x2c, 0x98, 0x98, 0x75, 0x22, 0xb7, 0x36, 0xd3, 0x8e, 0x37, 0x66, 0xdd, 0x78, 0xad, - 0x5d, 0xdb, 0x24, 0x31, 0x2f, 0x3d, 0x42, 0xb9, 0x6c, 0x47, 0x74, 0x05, 0xaa, 0xed, 0xb2, 0xe2, - 0xf2, 0x9a, 0x68, 0xc7, 0x0a, 0x03, 0xbd, 0x06, 0xc3, 0x2d, 0x27, 0x8a, 0x6e, 0x05, 0x61, 0x1d, - 0x93, 0xf5, 0x7c, 0x8a, 0x13, 0x55, 0x49, 0x2d, 0x24, 0x31, 0x26, 0xeb, 0x22, 0x3a, 0x45, 0xf7, - 0x8f, 0x4d, 0x62, 0xf6, 0xcf, 0x59, 0x70, 0x72, 0x96, 0x38, 0x21, 0x09, 0x59, 0x2d, 0x23, 0xf5, - 0x22, 0xe8, 0x55, 0x28, 0xc7, 0xb4, 0x85, 0x72, 0x64, 0xe5, 0xcb, 0x11, 0x8b, 0x2b, 0x59, 0x15, - 0x9d, 0x63, 0x45, 0xc6, 0xfe, 0xb4, 0x05, 0xa7, 0xb3, 0x78, 0x99, 0xf3, 0x82, 0x76, 0xfd, 0x5e, - 0x30, 0xf4, 0xb7, 0x2c, 0x18, 0x61, 0x67, 0xf5, 0xf3, 0x24, 0x76, 0x5c, 0xaf, 0xab, 0x8e, 0xa2, - 0xd5, 0x67, 0x1d, 0xc5, 0xb3, 0x30, 0xb0, 0x11, 0x34, 0x49, 0x3a, 0xce, 0xe4, 0x52, 0xd0, 0x24, - 0x98, 0x41, 0xd0, 0xd3, 0x74, 0x12, 0xba, 0x7e, 0xec, 0xd0, 0xe5, 0x28, 0xcf, 0x32, 0xc6, 0xf9, - 0x04, 0x54, 0xcd, 0xd8, 0xc4, 0xb1, 0x7f, 0xb7, 0x02, 0x43, 0x22, 0x28, 0xaa, 0xef, 0x52, 0x38, - 0xd2, 0x85, 0x53, 0xe8, 0xe9, 0xc2, 0x89, 0x60, 0xb0, 0xc6, 0x0a, 0xba, 0x0a, 0xf3, 0xfc, 0x4a, - 0x2e, 0x51, 0x74, 0xbc, 0x46, 0xac, 0x66, 0x8b, 0xff, 0xc7, 0x82, 0x14, 0xfa, 0xac, 0x05, 0xe3, - 0xb5, 0xc0, 0xf7, 0x49, 0x4d, 0xdb, 0x8e, 0x03, 0x79, 0x04, 0x4b, 0xcd, 0x25, 0x3b, 0xd5, 0xc7, - 0xc0, 0x29, 0x00, 0x4e, 0x93, 0x47, 0x2f, 0xc0, 0x28, 0x1f, 0xb3, 0xeb, 0x89, 0x03, 0x18, 0x5d, - 0x5e, 0xcf, 0x04, 0xe2, 0x24, 0x2e, 0x9a, 0xe2, 0x07, 0x59, 0xa2, 0x90, 0xdd, 0xa0, 0xf6, 0x53, - 0x1b, 0x25, 0xec, 0x0c, 0x0c, 0x14, 0x02, 0x0a, 0xc9, 0x7a, 0x48, 0xa2, 0x0d, 0x11, 0x34, 0xc6, - 0xec, 0xd6, 0xa1, 0xbb, 0x2b, 0x62, 0x81, 0xbb, 0x7a, 0xc2, 0x19, 0xbd, 0xa3, 0x4d, 0xe1, 0x43, - 0x28, 0xe7, 0x21, 0xcf, 0xc5, 0x67, 0xee, 0xe9, 0x4a, 0x98, 0x84, 0x12, 0x53, 0x5d, 0xcc, 0x5e, - 0x2e, 0xf2, 0xc4, 0x49, 0xa6, 0xd8, 0x30, 0x6f, 0x47, 0xf3, 0x70, 0x2c, 0x55, 0x1c, 0x30, 0x12, - 0x07, 0x25, 0x2a, 0x49, 0x2e, 0x55, 0x56, 0x30, 0xc2, 0x5d, 0x4f, 0x98, 0xfe, 0xa5, 0xe1, 0x3d, - 0xfc, 0x4b, 0x1d, 0x15, 0x9a, 0xcc, 0x8f, 0x30, 0x5e, 0xcc, 0x65, 0x00, 0xfa, 0x8a, 0x43, 0xfe, - 0x54, 0x2a, 0x0e, 0x79, 0x94, 0x31, 0x70, 0x3d, 0x1f, 0x06, 0xf6, 0x1f, 0x74, 0x7c, 0x2f, 0x83, - 0x88, 0xff, 0xa7, 0x05, 0xf2, 0xbb, 0xce, 0x39, 0xb5, 0x0d, 0x42, 0xa7, 0x0c, 0x7a, 0x3b, 0x8c, - 0x29, 0xd7, 0x04, 0x37, 0x89, 0x2c, 0x36, 0x6b, 0x94, 0xed, 0x8c, 0x13, 0x50, 0x9c, 0xc2, 0x46, - 0xd3, 0x50, 0xa1, 0xe3, 0xc4, 0x1f, 0xe5, 0x7a, 0x5f, 0xb9, 0x3f, 0x66, 0x56, 0x16, 0xc4, 0x53, - 0x1a, 0x07, 0x05, 0x70, 0xdc, 0x73, 0xa2, 0x98, 0x71, 0x50, 0xed, 0xf8, 0xb5, 0xbb, 0x2c, 0x21, - 0xc3, 0x32, 0xb1, 0x16, 0xd3, 0x1d, 0xe1, 0xee, 0xbe, 0xed, 0x7f, 0x57, 0x82, 0xd1, 0x84, 0x64, - 0xdc, 0xa7, 0xc1, 0xf0, 0x24, 0x94, 0xa5, 0x0e, 0x4f, 0xd7, 0xca, 0x52, 0x8a, 0x5e, 0x61, 0x50, - 0xa5, 0xb5, 0xa6, 0xb5, 0x6a, 0xda, 0xc0, 0x31, 0x14, 0x2e, 0x36, 0xf1, 0x98, 0x50, 0x8e, 0xbd, - 0x68, 0xce, 0x73, 0x89, 0x1f, 0x73, 0x36, 0xf3, 0x11, 0xca, 0xab, 0x8b, 0x55, 0xb3, 0x53, 0x2d, - 0x94, 0x53, 0x00, 0x9c, 0x26, 0x8f, 0x3e, 0x6a, 0xc1, 0xa8, 0x73, 0x2b, 0xd2, 0x55, 0xc7, 0x45, - 0xc4, 0xf1, 0x01, 0x95, 0x54, 0xa2, 0x90, 0x39, 0xf7, 0xea, 0x27, 0x9a, 0x70, 0x92, 0x28, 0x7a, - 0xdd, 0x02, 0x44, 0xb6, 0x49, 0x4d, 0xc6, 0x44, 0x0b, 0x5e, 0x06, 0xf3, 0xd8, 0xc1, 0x9f, 0xef, - 0xea, 0x97, 0x4b, 0xf5, 0xee, 0x76, 0x9c, 0xc1, 0x03, 0xba, 0x0c, 0xa8, 0xee, 0x46, 0xce, 0x9a, - 0x47, 0xe6, 0x82, 0xa6, 0xcc, 0x1e, 0x16, 0x87, 0xe9, 0x67, 0xc4, 0x38, 0xa3, 0xf9, 0x2e, 0x0c, - 0x9c, 0xf1, 0x14, 0x9b, 0x65, 0x61, 0xb0, 0xdd, 0xb9, 0x16, 0x7a, 0x4c, 0x4b, 0x98, 0xb3, 0x4c, - 0xb4, 0x63, 0x85, 0x61, 0xff, 0x65, 0x51, 0x2d, 0x65, 0x9d, 0x00, 0xe0, 0x18, 0x81, 0xc8, 0xd6, - 0xdd, 0x07, 0x22, 0xeb, 0x30, 0xa9, 0xee, 0x9c, 0xf8, 0x44, 0x0a, 0x6d, 0xe1, 0x1e, 0xa5, 0xd0, - 0xfe, 0xb4, 0x95, 0xa8, 0x47, 0x37, 0xfc, 0xcc, 0x4b, 0xf9, 0x26, 0x1f, 0x4c, 0xf1, 0x10, 0xae, - 0x94, 0x5e, 0x49, 0x45, 0xee, 0x3d, 0x09, 0xe5, 0x75, 0xcf, 0x61, 0x55, 0x54, 0xd8, 0x42, 0x35, - 0xc2, 0xcb, 0x2e, 0x88, 0x76, 0xac, 0x30, 0xa8, 0xd4, 0x37, 0x3a, 0xdd, 0x97, 0xd4, 0xfe, 0x0f, - 0x45, 0x18, 0x36, 0x34, 0x7e, 0xa6, 0xf9, 0x66, 0xdd, 0x67, 0xe6, 0x5b, 0x61, 0x1f, 0xe6, 0xdb, - 0x4f, 0x41, 0xa5, 0x26, 0xb5, 0x51, 0x3e, 0xf5, 0xf5, 0xd3, 0x3a, 0x4e, 0x2b, 0x24, 0xd5, 0x84, - 0x35, 0x4d, 0x74, 0x31, 0x91, 0xa6, 0x99, 0xf0, 0x0b, 0x64, 0xe5, 0x51, 0x0a, 0x8d, 0xd6, 0xfd, - 0x4c, 0x3a, 0x38, 0xa0, 0xb4, 0x77, 0x70, 0x80, 0xfd, 0x4d, 0x4b, 0x7d, 0xdc, 0x23, 0xa8, 0xc7, - 0x73, 0x33, 0x59, 0x8f, 0xe7, 0x7c, 0x2e, 0xc3, 0xdc, 0xa3, 0x10, 0xcf, 0x55, 0x18, 0x9a, 0x0b, - 0x9a, 0x4d, 0xc7, 0xaf, 0xa3, 0x1f, 0x84, 0xa1, 0x1a, 0xff, 0x29, 0x7c, 0x68, 0xec, 0xa4, 0x5a, - 0x40, 0xb1, 0x84, 0xa1, 0x87, 0x61, 0xc0, 0x09, 0x1b, 0xd2, 0x6f, 0xc6, 0x22, 0xe0, 0x66, 0xc2, - 0x46, 0x84, 0x59, 0xab, 0xfd, 0x4f, 0x06, 0x80, 0x05, 0x9e, 0x38, 0x21, 0xa9, 0xaf, 0x06, 0xac, - 0x2c, 0xee, 0xa1, 0x9e, 0xef, 0xea, 0x4d, 0xdd, 0xfd, 0x7c, 0xc6, 0x6b, 0x9c, 0xf3, 0x15, 0x8f, - 0xfa, 0x9c, 0x2f, 0xfb, 0xe8, 0x76, 0xe0, 0x3e, 0x3a, 0xba, 0xb5, 0x3f, 0x69, 0x01, 0x52, 0x61, - 0x44, 0x3a, 0xb6, 0x62, 0x1a, 0x2a, 0x2a, 0x6e, 0x49, 0x18, 0x80, 0x5a, 0x44, 0x48, 0x00, 0xd6, - 0x38, 0x7d, 0xec, 0xe4, 0x1f, 0x93, 0xf2, 0xbb, 0x98, 0x4c, 0x3e, 0x60, 0x52, 0x5f, 0x88, 0x73, - 0xfb, 0xf7, 0x0a, 0xf0, 0x00, 0x37, 0x1d, 0x96, 0x1c, 0xdf, 0x69, 0x90, 0x26, 0xe5, 0xaa, 0xdf, - 0x68, 0x99, 0x1a, 0xdd, 0x42, 0xba, 0x32, 0x55, 0xe0, 0xa0, 0x6b, 0x97, 0xaf, 0x39, 0xbe, 0xca, - 0x16, 0x7c, 0x37, 0xc6, 0xac, 0x73, 0x14, 0x41, 0x59, 0x5e, 0x3e, 0x23, 0x64, 0x71, 0x4e, 0x84, - 0x94, 0x58, 0x12, 0x5a, 0x96, 0x60, 0x45, 0x88, 0xaa, 0x52, 0x2f, 0xa8, 0x6d, 0x62, 0xd2, 0x0a, - 0xd2, 0xaa, 0x74, 0x51, 0xb4, 0x63, 0x85, 0x61, 0x37, 0x61, 0x5c, 0x8e, 0x61, 0xeb, 0x0a, 0xe9, - 0x60, 0xb2, 0x4e, 0xf5, 0x4f, 0x4d, 0x36, 0x19, 0xf7, 0xe1, 0x28, 0xfd, 0x33, 0x67, 0x02, 0x71, - 0x12, 0x57, 0x56, 0xca, 0x2d, 0x64, 0x57, 0xca, 0xb5, 0x7f, 0xcf, 0x82, 0xb4, 0x02, 0x34, 0xea, - 0x82, 0x5a, 0xbb, 0xd6, 0x05, 0xdd, 0x47, 0x65, 0xcd, 0xf7, 0xc0, 0xb0, 0x13, 0x53, 0x0b, 0x87, - 0x7b, 0x23, 0x8a, 0x77, 0x77, 0x8a, 0xb6, 0x14, 0xd4, 0xdd, 0x75, 0x97, 0x79, 0x21, 0xcc, 0xee, - 0xec, 0xd7, 0x2d, 0xa8, 0xcc, 0x87, 0x9d, 0xfd, 0xe7, 0x6c, 0x75, 0x67, 0x64, 0x15, 0xf6, 0x95, - 0x91, 0x25, 0x73, 0xbe, 0x8a, 0xbd, 0x72, 0xbe, 0xec, 0xbf, 0x1e, 0x80, 0xe3, 0x5d, 0x49, 0x88, - 0xe8, 0x1c, 0x8c, 0xa8, 0xaf, 0x24, 0x5d, 0x90, 0x15, 0x33, 0x8a, 0x57, 0xc3, 0x70, 0x02, 0xb3, - 0x8f, 0xa5, 0xba, 0x00, 0x27, 0x42, 0xf2, 0x6a, 0x9b, 0xb4, 0xc9, 0xcc, 0x7a, 0x4c, 0xc2, 0x2a, - 0xa9, 0x05, 0x7e, 0x9d, 0x17, 0xd6, 0x2d, 0xce, 0x3e, 0x78, 0x7b, 0x67, 0xf2, 0x04, 0xee, 0x06, - 0xe3, 0xac, 0x67, 0x50, 0x0b, 0x46, 0x3d, 0xd3, 0x76, 0x16, 0x5b, 0xb6, 0xbb, 0x32, 0xbb, 0xd5, - 0x6c, 0x4d, 0x34, 0xe3, 0x24, 0x81, 0xa4, 0x01, 0x5e, 0xba, 0x47, 0x06, 0xf8, 0x47, 0xb4, 0x01, - 0xce, 0x83, 0x62, 0xde, 0x9d, 0x73, 0x12, 0x6a, 0x3f, 0x16, 0xf8, 0x41, 0x6c, 0xea, 0x17, 0xa1, - 0x2c, 0x03, 0x06, 0xfb, 0x0a, 0xb4, 0x33, 0xfb, 0xe9, 0x21, 0xdb, 0x1f, 0x87, 0x37, 0x9f, 0x0f, - 0x43, 0x63, 0x30, 0xaf, 0x06, 0xf1, 0x8c, 0xe7, 0x05, 0xb7, 0xa8, 0xb9, 0x72, 0x2d, 0x22, 0xc2, - 0x27, 0x66, 0xdf, 0x29, 0x40, 0xc6, 0xf6, 0x92, 0xae, 0x49, 0x6d, 0x23, 0x25, 0xd6, 0xe4, 0xfe, - 0xec, 0x24, 0xb4, 0xcd, 0x83, 0x2a, 0xb9, 0x35, 0xf0, 0xae, 0xbc, 0xb7, 0xc7, 0x3a, 0xce, 0x52, - 0x49, 0x4a, 0x15, 0x6b, 0xf9, 0x0c, 0x80, 0x36, 0x6d, 0x45, 0xde, 0x93, 0x0a, 0x94, 0xd0, 0x16, - 0x30, 0x36, 0xb0, 0xd0, 0xf3, 0x30, 0xec, 0xfa, 0x51, 0xec, 0x78, 0xde, 0x25, 0xd7, 0x8f, 0x85, - 0xdb, 0x57, 0x99, 0x3d, 0x0b, 0x1a, 0x84, 0x4d, 0xbc, 0x33, 0x6f, 0x33, 0xbe, 0xdf, 0x7e, 0xbe, - 0xfb, 0x06, 0x9c, 0xbe, 0xe8, 0xc6, 0x2a, 0x5b, 0x4f, 0xcd, 0x37, 0x6a, 0xb9, 0x2a, 0x59, 0x65, - 0xf5, 0xcc, 0x4f, 0x35, 0xb2, 0xe5, 0x0a, 0xc9, 0xe4, 0xbe, 0x74, 0xb6, 0x9c, 0x7d, 0x0e, 0x4e, - 0x5e, 0x74, 0xe3, 0x0b, 0xae, 0x47, 0xf6, 0x49, 0xc4, 0xfe, 0x9d, 0x41, 0x18, 0x31, 0x33, 0xd3, - 0xf7, 0x23, 0xae, 0x3f, 0x4d, 0x8d, 0x53, 0xf1, 0x76, 0xae, 0x3a, 0xd1, 0xbd, 0x71, 0xe0, 0x34, - 0xf9, 0xec, 0x11, 0x33, 0xec, 0x53, 0x4d, 0x13, 0x9b, 0x0c, 0xa0, 0x5b, 0x50, 0x5a, 0x67, 0xd9, - 0x5c, 0xc5, 0x3c, 0x62, 0x71, 0xb2, 0x46, 0x54, 0x2f, 0x47, 0x9e, 0x0f, 0xc6, 0xe9, 0x51, 0x9b, - 0x22, 0x4c, 0x26, 0x11, 0x1b, 0x31, 0xf6, 0x42, 0x59, 0x29, 0x8c, 0x5e, 0x2a, 0xa1, 0x74, 0x17, - 0x2a, 0x21, 0x21, 0xa0, 0x07, 0xef, 0x91, 0x80, 0x66, 0x99, 0x79, 0xf1, 0x06, 0xb3, 0x78, 0x45, - 0x52, 0xd0, 0x10, 0x1b, 0x04, 0x23, 0x33, 0x2f, 0x01, 0xc6, 0x69, 0x7c, 0xf4, 0x41, 0x25, 0xe2, - 0xcb, 0x79, 0x78, 0xcc, 0xcd, 0x19, 0x7d, 0xd8, 0xd2, 0xfd, 0x93, 0x05, 0x18, 0xbb, 0xe8, 0xb7, - 0x57, 0x2e, 0xae, 0xb4, 0xd7, 0x3c, 0xb7, 0x76, 0x85, 0x74, 0xa8, 0x08, 0xdf, 0x24, 0x9d, 0x85, - 0x79, 0xb1, 0x82, 0xd4, 0x9c, 0xb9, 0x42, 0x1b, 0x31, 0x87, 0x51, 0x61, 0xb4, 0xee, 0xfa, 0x0d, - 0x12, 0xb6, 0x42, 0x57, 0x38, 0xb3, 0x0d, 0x61, 0x74, 0x41, 0x83, 0xb0, 0x89, 0x47, 0xfb, 0x0e, - 0x6e, 0xf9, 0x24, 0x4c, 0x9b, 0xfe, 0xcb, 0xb4, 0x11, 0x73, 0x18, 0x45, 0x8a, 0xc3, 0xb6, 0xf0, - 0x15, 0x19, 0x48, 0xab, 0xb4, 0x11, 0x73, 0x18, 0x5d, 0xe9, 0x51, 0x7b, 0x8d, 0x85, 0x3a, 0xa5, - 0x32, 0x90, 0xaa, 0xbc, 0x19, 0x4b, 0x38, 0x45, 0xdd, 0x24, 0x9d, 0x79, 0x27, 0x76, 0xd2, 0x69, - 0x9a, 0x57, 0x78, 0x33, 0x96, 0x70, 0x56, 0xfa, 0x37, 0x39, 0x1c, 0xdf, 0x75, 0xa5, 0x7f, 0x93, - 0xec, 0xf7, 0xf0, 0x38, 0xfc, 0xcd, 0x02, 0x8c, 0x98, 0x01, 0x8a, 0xa8, 0x91, 0x32, 0xd3, 0x97, - 0xbb, 0x2a, 0xc7, 0xff, 0x78, 0xd6, 0xad, 0xaa, 0x0d, 0x37, 0x0e, 0x5a, 0xd1, 0x53, 0xc4, 0x6f, - 0xb8, 0x3e, 0x61, 0xb1, 0x1a, 0x3c, 0xb0, 0x31, 0x11, 0xfd, 0x38, 0x17, 0xd4, 0xc9, 0xdd, 0xd8, - 0xf9, 0xf7, 0xe2, 0xe6, 0x99, 0x1b, 0x70, 0xbc, 0x2b, 0x1f, 0xb8, 0x0f, 0xb3, 0x67, 0xcf, 0x7a, - 0x0d, 0x36, 0x86, 0x61, 0xda, 0xb1, 0x2c, 0x79, 0x37, 0x07, 0xc7, 0xf9, 0xe2, 0xa5, 0x94, 0x58, - 0x7a, 0xa7, 0xca, 0xf1, 0x66, 0xa7, 0x35, 0xd7, 0xd3, 0x40, 0xdc, 0x8d, 0x6f, 0x7f, 0xca, 0x82, - 0xd1, 0x44, 0x8a, 0x76, 0x4e, 0x06, 0x1a, 0x5b, 0xdd, 0x01, 0x8b, 0xd1, 0x65, 0x39, 0x13, 0x45, - 0xa6, 0xc0, 0xf5, 0xea, 0xd6, 0x20, 0x6c, 0xe2, 0xd9, 0x9f, 0x2b, 0x40, 0x59, 0x86, 0x14, 0xf5, - 0xc1, 0xca, 0x27, 0x2c, 0x18, 0x55, 0x27, 0x64, 0xcc, 0xa5, 0x59, 0xc8, 0x23, 0x63, 0x8c, 0x72, - 0xa0, 0x9c, 0x22, 0xfe, 0x7a, 0xa0, 0x77, 0x0b, 0xd8, 0x24, 0x86, 0x93, 0xb4, 0xd1, 0x75, 0x80, - 0xa8, 0x13, 0xc5, 0xa4, 0x69, 0x38, 0x57, 0x6d, 0x63, 0x96, 0x4d, 0xd5, 0x82, 0x90, 0xd0, 0x39, - 0x75, 0x35, 0xa8, 0x93, 0xaa, 0xc2, 0xd4, 0x66, 0x9b, 0x6e, 0xc3, 0x46, 0x4f, 0xf6, 0xaf, 0x15, - 0xe0, 0x58, 0x9a, 0x25, 0xf4, 0x6e, 0x18, 0x91, 0xd4, 0x8d, 0x4d, 0xb8, 0x0c, 0x88, 0x1a, 0xc1, - 0x06, 0xec, 0xce, 0xce, 0xe4, 0x64, 0xf7, 0xad, 0xc0, 0x53, 0x26, 0x0a, 0x4e, 0x74, 0xc6, 0x8f, - 0x29, 0xc5, 0x79, 0xfa, 0x6c, 0x67, 0xa6, 0xd5, 0x12, 0x67, 0x8d, 0xc6, 0x31, 0xa5, 0x09, 0xc5, - 0x29, 0x6c, 0xb4, 0x02, 0x27, 0x8d, 0x96, 0xab, 0xc4, 0x6d, 0x6c, 0xac, 0x05, 0xa1, 0xdc, 0xf5, - 0x3d, 0xac, 0xc3, 0x2f, 0xbb, 0x71, 0x70, 0xe6, 0x93, 0xd4, 0xc2, 0xa8, 0x39, 0x2d, 0xa7, 0xe6, - 0xc6, 0x1d, 0xe1, 0x2d, 0x56, 0xf2, 0x70, 0x4e, 0xb4, 0x63, 0x85, 0x61, 0xff, 0xca, 0x00, 0x1c, - 0xe3, 0xf1, 0x86, 0x44, 0x85, 0xd3, 0xa2, 0x77, 0x43, 0x25, 0x8a, 0x9d, 0x90, 0x6f, 0xf9, 0xad, - 0x7d, 0xcb, 0x00, 0x9d, 0xa0, 0x2d, 0x3b, 0xc1, 0xba, 0x3f, 0xf4, 0x12, 0xab, 0x6e, 0xe5, 0x46, - 0x1b, 0xac, 0xf7, 0xc2, 0xdd, 0x39, 0x14, 0x2e, 0xa8, 0x1e, 0xb0, 0xd1, 0x1b, 0xfa, 0x31, 0x28, - 0xb5, 0x36, 0x9c, 0x48, 0x7a, 0xbb, 0x1e, 0x97, 0x0b, 0x6e, 0x85, 0x36, 0xde, 0xd9, 0x99, 0x3c, - 0x95, 0x7e, 0x55, 0x06, 0xc0, 0xfc, 0x21, 0x53, 0x5c, 0x0e, 0xec, 0x7d, 0x03, 0x4b, 0x3d, 0xec, - 0x54, 0x2f, 0xcd, 0xa4, 0xef, 0xec, 0x98, 0x67, 0xad, 0x58, 0x40, 0xe9, 0xe2, 0xde, 0xe0, 0x24, - 0xeb, 0x14, 0x79, 0x30, 0xa9, 0xba, 0x2f, 0x69, 0x10, 0x36, 0xf1, 0xd0, 0x27, 0xbb, 0xa3, 0x51, - 0x87, 0x0e, 0x21, 0x55, 0xa1, 0xdf, 0x38, 0xd4, 0xf3, 0x50, 0x11, 0xac, 0xae, 0x06, 0xe8, 0x1c, - 0x8c, 0x70, 0x67, 0xca, 0x6c, 0xe8, 0xf8, 0xb5, 0x8d, 0xb4, 0x0b, 0x64, 0xd5, 0x80, 0xe1, 0x04, - 0xa6, 0xbd, 0x04, 0x03, 0x7d, 0x4a, 0xab, 0xbe, 0x76, 0xb6, 0x2f, 0x42, 0x99, 0x76, 0x27, 0xb7, - 0x2f, 0x79, 0x74, 0x19, 0x40, 0x59, 0xde, 0xe7, 0x87, 0x6c, 0x28, 0xba, 0x8e, 0x8c, 0x3a, 0x50, - 0x4b, 0x68, 0x21, 0x8a, 0xda, 0x6c, 0xda, 0x51, 0x20, 0x7a, 0x0c, 0x8a, 0x64, 0xbb, 0x95, 0x0e, - 0x2f, 0x38, 0xbf, 0xdd, 0x72, 0x43, 0x12, 0x51, 0x24, 0xb2, 0xdd, 0x42, 0x67, 0xa0, 0xe0, 0xd6, - 0xc5, 0x8c, 0x04, 0x81, 0x53, 0x58, 0x98, 0xc7, 0x05, 0xb7, 0x6e, 0x6f, 0x43, 0x45, 0x5d, 0x20, - 0x88, 0x36, 0xa5, 0x6d, 0x62, 0xe5, 0x11, 0x6f, 0x2a, 0xfb, 0xed, 0x61, 0x95, 0xb4, 0x01, 0x74, - 0xe6, 0x7f, 0x5e, 0xba, 0xec, 0x2c, 0x0c, 0xd4, 0x02, 0x51, 0xb3, 0xa5, 0xac, 0xbb, 0x61, 0x46, - 0x09, 0x83, 0xd8, 0x37, 0x60, 0xec, 0x8a, 0x1f, 0xdc, 0x62, 0xf7, 0xfc, 0xb0, 0xb2, 0xb6, 0xb4, - 0xe3, 0x75, 0xfa, 0x23, 0x6d, 0x02, 0x33, 0x28, 0xe6, 0x30, 0x55, 0x70, 0xb3, 0xd0, 0xab, 0xe0, - 0xa6, 0xfd, 0x21, 0x0b, 0x46, 0x54, 0x0a, 0xf1, 0xc5, 0xad, 0x4d, 0xda, 0x6f, 0x23, 0x0c, 0xda, - 0xad, 0x74, 0xbf, 0xec, 0xae, 0x52, 0xcc, 0x61, 0x66, 0x6e, 0x7d, 0x61, 0x8f, 0xdc, 0xfa, 0xb3, - 0x30, 0xb0, 0xe9, 0xfa, 0xf5, 0xb4, 0xcb, 0xf0, 0x8a, 0xeb, 0xd7, 0x31, 0x83, 0x50, 0x16, 0x8e, - 0x29, 0x16, 0xa4, 0xf1, 0x71, 0x0e, 0x46, 0xd6, 0xda, 0xae, 0x57, 0x97, 0xf5, 0x7a, 0x53, 0xcb, - 0x65, 0xd6, 0x80, 0xe1, 0x04, 0x26, 0x7a, 0x06, 0x60, 0xcd, 0xf5, 0x9d, 0xb0, 0xb3, 0xa2, 0xad, - 0x1d, 0xa5, 0x00, 0x67, 0x15, 0x04, 0x1b, 0x58, 0xf6, 0x67, 0x8a, 0x30, 0x96, 0x4c, 0xa4, 0xee, - 0xc3, 0x7d, 0xf0, 0x18, 0x94, 0x58, 0x6e, 0x75, 0xfa, 0xd3, 0xf2, 0x12, 0xb7, 0x1c, 0x86, 0x22, - 0x18, 0xe4, 0x8b, 0x39, 0x9f, 0xfb, 0x1e, 0x15, 0x93, 0xca, 0xcf, 0xc8, 0xa2, 0x72, 0x85, 0xdb, - 0x56, 0x90, 0x42, 0x1f, 0xb5, 0x60, 0x28, 0x68, 0x99, 0x85, 0x1a, 0xdf, 0x95, 0x67, 0x92, 0xb9, - 0xc8, 0xe4, 0x14, 0x3b, 0x3e, 0xf5, 0xe9, 0xe5, 0xe7, 0x90, 0xa4, 0xcf, 0xfc, 0x28, 0x8c, 0x98, - 0x98, 0x7b, 0x6d, 0xfa, 0xca, 0xe6, 0xa6, 0xef, 0x13, 0xe6, 0xa4, 0x10, 0x69, 0xf4, 0x7d, 0x2c, - 0xb7, 0x6b, 0x50, 0xaa, 0xa9, 0xd0, 0xa5, 0xbb, 0xaa, 0xf2, 0xae, 0xca, 0x4c, 0xb1, 0x63, 0x61, - 0xde, 0x9b, 0xfd, 0x4d, 0xcb, 0x98, 0x1f, 0x98, 0x44, 0x0b, 0x75, 0x14, 0x42, 0xb1, 0xb1, 0xb5, - 0x29, 0xd4, 0xfc, 0xe5, 0x9c, 0x86, 0xf7, 0xe2, 0xd6, 0xa6, 0x9e, 0xe3, 0x66, 0x2b, 0xa6, 0xc4, - 0xfa, 0x70, 0x86, 0x27, 0xaa, 0x2d, 0x14, 0xf7, 0xae, 0xb6, 0x60, 0xbf, 0x5e, 0x80, 0xe3, 0x5d, - 0x93, 0x0a, 0xbd, 0x06, 0xa5, 0x90, 0xbe, 0xa5, 0x78, 0xbd, 0xc5, 0xdc, 0xea, 0x23, 0x44, 0x0b, - 0x75, 0xad, 0x3e, 0x93, 0xed, 0x98, 0x93, 0x44, 0x97, 0x01, 0xe9, 0x00, 0x3b, 0xe5, 0x89, 0xe7, - 0xaf, 0xac, 0xa2, 0x70, 0x66, 0xba, 0x30, 0x70, 0xc6, 0x53, 0xe8, 0x85, 0xb4, 0x43, 0xbf, 0x98, - 0x3c, 0x49, 0xda, 0xcd, 0x37, 0x6f, 0xff, 0x56, 0x01, 0x46, 0x13, 0x75, 0x33, 0x91, 0x07, 0x65, - 0xe2, 0xb1, 0x63, 0x3e, 0xa9, 0x6c, 0x0e, 0x7a, 0x0b, 0x86, 0x52, 0x90, 0xe7, 0x45, 0xbf, 0x58, - 0x51, 0xb8, 0x3f, 0x82, 0x73, 0xce, 0xc1, 0x88, 0x64, 0xe8, 0x5d, 0x4e, 0xd3, 0x13, 0x03, 0xa8, - 0xe6, 0xe8, 0x79, 0x03, 0x86, 0x13, 0x98, 0xf6, 0xef, 0x17, 0x61, 0x82, 0x9f, 0x8b, 0xd6, 0xd5, - 0xcc, 0x5b, 0x92, 0xfe, 0x84, 0x9f, 0xd7, 0xd5, 0x6d, 0xad, 0x3c, 0xae, 0x7a, 0xee, 0x45, 0xa8, - 0xaf, 0x98, 0xd2, 0x2f, 0xa6, 0x62, 0x4a, 0xf9, 0x16, 0xaf, 0x71, 0x48, 0x1c, 0x7d, 0x77, 0x05, - 0x99, 0xfe, 0x83, 0x02, 0x8c, 0xa7, 0x6e, 0xf4, 0x42, 0x9f, 0x49, 0x5e, 0x02, 0x61, 0xe5, 0x71, - 0x66, 0xb4, 0xeb, 0x25, 0x4f, 0xfb, 0xbb, 0x0a, 0xe2, 0x1e, 0x2d, 0x15, 0xfb, 0x1b, 0x05, 0x18, - 0x4b, 0x5e, 0x45, 0x76, 0x1f, 0x8e, 0xd4, 0x5b, 0xa1, 0xc2, 0x6e, 0xdb, 0x61, 0x37, 0xe8, 0xf3, - 0x23, 0x27, 0x7e, 0xb1, 0x89, 0x6c, 0xc4, 0x1a, 0x7e, 0x5f, 0xdc, 0xb0, 0x61, 0xff, 0x23, 0x0b, - 0x4e, 0xf1, 0xb7, 0x4c, 0xcf, 0xc3, 0xbf, 0x91, 0x35, 0xba, 0x2f, 0xe7, 0xcb, 0x60, 0xaa, 0x2a, - 0xf3, 0x5e, 0xe3, 0xcb, 0x2e, 0xbc, 0x16, 0xdc, 0x26, 0xa7, 0xc2, 0x7d, 0xc8, 0xec, 0xbe, 0x26, - 0x83, 0xfd, 0x8d, 0x22, 0xe8, 0x3b, 0xbe, 0x91, 0x2b, 0xb2, 0xde, 0x73, 0xa9, 0x4e, 0x5d, 0xed, - 0xf8, 0x35, 0x7d, 0x9b, 0x78, 0x39, 0x95, 0xf4, 0xfe, 0xb3, 0x16, 0x0c, 0xbb, 0xbe, 0x1b, 0xbb, - 0x0e, 0x73, 0xd9, 0xe4, 0x73, 0x51, 0xaf, 0x22, 0xb7, 0xc0, 0x7b, 0x0e, 0x42, 0xf3, 0x9c, 0x52, - 0x11, 0xc3, 0x26, 0x65, 0xf4, 0x3e, 0x91, 0xf6, 0x51, 0xcc, 0xad, 0x74, 0x44, 0x39, 0x95, 0xeb, - 0xd1, 0xa2, 0x86, 0x57, 0x1c, 0xe6, 0x54, 0x71, 0x05, 0xd3, 0xae, 0xd4, 0x45, 0x07, 0xca, 0xb4, - 0x65, 0xcd, 0x98, 0x13, 0xb2, 0x23, 0x40, 0xdd, 0x63, 0xb1, 0xcf, 0x90, 0xfa, 0x69, 0xa8, 0x38, - 0xed, 0x38, 0x68, 0xd2, 0x61, 0x12, 0x47, 0xa9, 0x3a, 0x69, 0x40, 0x02, 0xb0, 0xc6, 0xb1, 0x3f, - 0x53, 0x82, 0x54, 0x1a, 0x3a, 0xda, 0x36, 0xef, 0xa7, 0xb7, 0xf2, 0xbd, 0x9f, 0x5e, 0x31, 0x93, - 0x75, 0x47, 0x3d, 0x6a, 0x48, 0xef, 0x17, 0xb7, 0x31, 0x5f, 0x4c, 0x7b, 0xbf, 0x7e, 0xa2, 0xbf, - 0x53, 0x05, 0x3a, 0x57, 0xa7, 0x79, 0xd5, 0xb1, 0xa9, 0x3d, 0x1d, 0x65, 0x7b, 0x5d, 0x55, 0xfc, - 0x61, 0x71, 0xad, 0x10, 0x26, 0x51, 0xdb, 0x8b, 0xc5, 0x6c, 0x78, 0x31, 0xc7, 0x55, 0xc6, 0x3b, - 0xd6, 0xb5, 0x5c, 0xf8, 0x7f, 0x6c, 0x10, 0x4d, 0xba, 0x33, 0x07, 0x0f, 0xd5, 0x9d, 0x39, 0x94, - 0xab, 0x3b, 0xf3, 0x19, 0x00, 0x36, 0xb7, 0x79, 0xe8, 0x6f, 0x99, 0x79, 0x99, 0x94, 0x28, 0xc4, - 0x0a, 0x82, 0x0d, 0x2c, 0xfb, 0x87, 0x21, 0x59, 0x8c, 0x08, 0x4d, 0xca, 0xda, 0x47, 0xfc, 0xc4, - 0x83, 0x65, 0x5d, 0x25, 0xca, 0x14, 0xfd, 0x86, 0x05, 0x66, 0xc5, 0x24, 0xf4, 0x2a, 0x2f, 0xcd, - 0x64, 0xe5, 0x71, 0x32, 0x6e, 0xf4, 0x3b, 0xb5, 0xe4, 0xb4, 0x52, 0x21, 0x1a, 0xb2, 0x3e, 0xd3, - 0x99, 0xb7, 0x41, 0x59, 0x42, 0xf7, 0x65, 0xd4, 0x7d, 0x10, 0x4e, 0xc8, 0x0c, 0x6e, 0xe9, 0xa3, - 0x17, 0xa7, 0xaa, 0x7b, 0xbb, 0x7e, 0xa4, 0x3f, 0xa7, 0xd0, 0xcb, 0x9f, 0xa3, 0x76, 0xa9, 0xc5, - 0x9e, 0x45, 0x97, 0x7f, 0xd3, 0x82, 0xb3, 0x69, 0x06, 0xa2, 0xa5, 0xc0, 0x77, 0xe3, 0x20, 0xac, - 0x92, 0x38, 0x76, 0xfd, 0x06, 0xab, 0xa0, 0x79, 0xcb, 0x09, 0xe5, 0x2d, 0x2a, 0x4c, 0x50, 0xde, - 0x70, 0x42, 0x1f, 0xb3, 0x56, 0xd4, 0x81, 0x41, 0x1e, 0x1f, 0x2a, 0xac, 0xf5, 0x03, 0xae, 0x8d, - 0x8c, 0xe1, 0xd0, 0xdb, 0x05, 0x1e, 0x9b, 0x8a, 0x05, 0x41, 0xfb, 0x5b, 0x16, 0xa0, 0xe5, 0x2d, - 0x12, 0x86, 0x6e, 0xdd, 0x88, 0x68, 0x65, 0xd7, 0xf3, 0x19, 0xd7, 0xf0, 0x99, 0xf5, 0x05, 0x52, - 0xd7, 0xf3, 0x19, 0xff, 0xb2, 0xaf, 0xe7, 0x2b, 0xec, 0xef, 0x7a, 0x3e, 0xb4, 0x0c, 0xa7, 0x9a, - 0x7c, 0xbb, 0xc1, 0xaf, 0xbc, 0xe2, 0x7b, 0x0f, 0x95, 0x0a, 0x7b, 0xfa, 0xf6, 0xce, 0xe4, 0xa9, - 0xa5, 0x2c, 0x04, 0x9c, 0xfd, 0x9c, 0xfd, 0x36, 0x40, 0x3c, 0x90, 0x75, 0x2e, 0x2b, 0x16, 0xaf, - 0xa7, 0xfb, 0xc5, 0xfe, 0x42, 0x09, 0xc6, 0x53, 0x35, 0xf6, 0xe9, 0x56, 0xaf, 0x3b, 0xf8, 0xef, - 0xc0, 0xfa, 0xbb, 0x9b, 0xbd, 0xbe, 0xc2, 0x09, 0x7d, 0x28, 0xb9, 0x7e, 0xab, 0x1d, 0xe7, 0x93, - 0x89, 0xcf, 0x99, 0x58, 0xa0, 0x1d, 0x1a, 0xee, 0x62, 0xfa, 0x17, 0x73, 0x32, 0x79, 0x06, 0x27, - 0x26, 0x8c, 0xf1, 0x81, 0x7b, 0xe4, 0x0e, 0xf8, 0xb0, 0x0e, 0x15, 0x2c, 0xe5, 0xe1, 0x58, 0x4c, - 0x4d, 0x96, 0xc3, 0x0e, 0x25, 0xf9, 0x6a, 0x01, 0x86, 0x8d, 0x8f, 0x86, 0x7e, 0x39, 0x59, 0x4f, - 0xd0, 0xca, 0xef, 0x95, 0x58, 0xff, 0x53, 0xba, 0x62, 0x20, 0x7f, 0xa5, 0xc7, 0xbb, 0x4b, 0x09, - 0xde, 0xd9, 0x99, 0x3c, 0x96, 0x2a, 0x16, 0x98, 0x28, 0x2f, 0x78, 0xe6, 0x03, 0x30, 0x9e, 0xea, - 0x26, 0xe3, 0x95, 0x57, 0xcd, 0x57, 0x3e, 0xb0, 0x5b, 0xca, 0x1c, 0xb2, 0xaf, 0xd0, 0x21, 0x13, - 0x09, 0xc0, 0x81, 0x47, 0xfa, 0xf0, 0xc1, 0xa6, 0xf2, 0xfc, 0x0b, 0x7d, 0xe6, 0xf9, 0x3f, 0x01, - 0xe5, 0x56, 0xe0, 0xb9, 0x35, 0x57, 0x95, 0x23, 0x66, 0x95, 0x05, 0x56, 0x44, 0x1b, 0x56, 0x50, - 0x74, 0x0b, 0x2a, 0x37, 0x6f, 0xc5, 0xfc, 0xf4, 0x47, 0xf8, 0xb7, 0xf3, 0x3a, 0xf4, 0x51, 0x46, - 0x8b, 0x3a, 0x5e, 0xc2, 0x9a, 0x16, 0xb2, 0x61, 0x90, 0x29, 0x41, 0x99, 0x0c, 0xc4, 0x7c, 0xef, - 0x4c, 0x3b, 0x46, 0x58, 0x40, 0xec, 0xef, 0x00, 0x9c, 0xcc, 0xba, 0xe8, 0x04, 0xbd, 0x1f, 0x06, - 0x39, 0x8f, 0xf9, 0xdc, 0xa5, 0x95, 0x45, 0xe3, 0x22, 0xeb, 0x50, 0xb0, 0xc5, 0x7e, 0x63, 0x41, - 0x53, 0x50, 0xf7, 0x9c, 0x35, 0x31, 0x43, 0x0e, 0x87, 0xfa, 0xa2, 0xa3, 0xa9, 0x2f, 0x3a, 0x9c, - 0xba, 0xe7, 0xac, 0xa1, 0x6d, 0x28, 0x35, 0xdc, 0x98, 0x38, 0xc2, 0x89, 0x70, 0xe3, 0x50, 0x88, - 0x13, 0x87, 0x5b, 0x69, 0xec, 0x27, 0xe6, 0x04, 0xd1, 0x97, 0x2c, 0x18, 0x5f, 0x4b, 0x16, 0x18, - 0x11, 0xc2, 0xd3, 0x39, 0x84, 0xcb, 0x6c, 0x92, 0x84, 0xf8, 0xfd, 0x94, 0xa9, 0x46, 0x9c, 0x66, - 0x07, 0x7d, 0xc4, 0x82, 0xa1, 0x75, 0xd7, 0x33, 0x6e, 0x0b, 0x38, 0x84, 0x8f, 0x73, 0x81, 0x11, - 0xd0, 0x3b, 0x0e, 0xfe, 0x3f, 0xc2, 0x92, 0x72, 0x2f, 0x4d, 0x35, 0x78, 0x50, 0x4d, 0x35, 0x74, - 0x8f, 0x34, 0xd5, 0xc7, 0x2d, 0xa8, 0xa8, 0x91, 0x16, 0x85, 0x1a, 0xde, 0x7d, 0x88, 0x9f, 0x9c, - 0x7b, 0x4e, 0xd4, 0x5f, 0xac, 0x89, 0xa3, 0xcf, 0x5a, 0x30, 0xec, 0xbc, 0xd6, 0x0e, 0x49, 0x9d, - 0x6c, 0x05, 0xad, 0x48, 0x94, 0x4f, 0x7c, 0x39, 0x7f, 0x66, 0x66, 0x28, 0x91, 0x79, 0xb2, 0xb5, - 0xdc, 0x8a, 0x44, 0xa2, 0xa2, 0x6e, 0xc0, 0x26, 0x0b, 0xe8, 0x67, 0xb4, 0x1e, 0x87, 0x3c, 0x8a, - 0xe8, 0x66, 0x71, 0x73, 0xd8, 0xca, 0x7c, 0xa7, 0x00, 0x93, 0x7b, 0x8c, 0x02, 0x3a, 0x07, 0x23, - 0x41, 0xd8, 0x70, 0x7c, 0xf7, 0x35, 0xb3, 0xea, 0x91, 0xb2, 0x14, 0x97, 0x0d, 0x18, 0x4e, 0x60, - 0x9a, 0xe5, 0x30, 0x0a, 0x7b, 0x94, 0xc3, 0x38, 0x0b, 0x03, 0x21, 0x69, 0x05, 0xe9, 0x0d, 0x0f, - 0x4b, 0x74, 0x62, 0x10, 0xf4, 0x08, 0x14, 0x9d, 0x96, 0x2b, 0xc2, 0x63, 0xd4, 0x3e, 0x6e, 0x66, - 0x65, 0x01, 0xd3, 0xf6, 0x44, 0x75, 0x9e, 0xd2, 0x91, 0x54, 0xe7, 0xa1, 0xaa, 0x4c, 0x9c, 0xbf, - 0x0c, 0x6a, 0x55, 0x96, 0x3c, 0x17, 0xb1, 0x5f, 0x2f, 0xc2, 0x23, 0xbb, 0xce, 0x79, 0x1d, 0x2b, - 0x6b, 0xed, 0x12, 0x2b, 0x2b, 0x87, 0xa7, 0xb0, 0xd7, 0xf0, 0x14, 0x7b, 0x0c, 0xcf, 0x47, 0xe8, - 0x52, 0x96, 0xd5, 0xa2, 0xf2, 0xb9, 0x62, 0xb9, 0x57, 0xf1, 0x29, 0xb1, 0x8a, 0x25, 0x14, 0x6b, - 0xba, 0x74, 0x1f, 0x93, 0x28, 0x05, 0x51, 0xca, 0x43, 0x95, 0xf5, 0xac, 0xd8, 0xc4, 0xd7, 0x6f, - 0xaf, 0xfa, 0x12, 0xf6, 0x6f, 0x0f, 0xc0, 0x63, 0x7d, 0x68, 0x20, 0x73, 0x16, 0x5b, 0x7d, 0xce, - 0xe2, 0xef, 0xf2, 0xcf, 0xf4, 0xb1, 0xcc, 0xcf, 0x84, 0xf3, 0xff, 0x4c, 0xbb, 0x7f, 0x21, 0xf4, - 0x24, 0x94, 0x5d, 0x3f, 0x22, 0xb5, 0x76, 0xc8, 0xf3, 0x06, 0x8c, 0x2c, 0xc8, 0x05, 0xd1, 0x8e, - 0x15, 0x06, 0xdd, 0x97, 0xd6, 0x1c, 0xba, 0xfc, 0x87, 0x72, 0x4a, 0xfd, 0x37, 0x13, 0x2a, 0xb9, - 0x59, 0x34, 0x37, 0x43, 0x25, 0x00, 0x27, 0x63, 0xff, 0x82, 0x05, 0x67, 0x7a, 0x9b, 0x09, 0xe8, - 0x69, 0x18, 0x5e, 0x63, 0xc1, 0x67, 0xec, 0x72, 0x7d, 0x39, 0x75, 0xd8, 0xfb, 0xea, 0x66, 0x6c, - 0xe2, 0xa0, 0x39, 0x38, 0x6e, 0x46, 0xad, 0x2d, 0x19, 0x91, 0x31, 0xcc, 0x91, 0xb1, 0x9a, 0x06, - 0xe2, 0x6e, 0x7c, 0xfb, 0xdb, 0xc5, 0x6c, 0xb6, 0xb8, 0x39, 0xb9, 0x9f, 0xd9, 0x2c, 0xe6, 0x6a, - 0xa1, 0x0f, 0x89, 0x5b, 0x3c, 0x6a, 0x89, 0x3b, 0xd0, 0x4b, 0xe2, 0xa2, 0x79, 0x38, 0x66, 0xdc, - 0x7e, 0xc8, 0x8b, 0x41, 0xf0, 0x48, 0x49, 0x55, 0xc9, 0x69, 0x25, 0x05, 0xc7, 0x5d, 0x4f, 0xdc, - 0xe7, 0x53, 0xef, 0x57, 0x0a, 0x70, 0xba, 0xa7, 0x05, 0x7f, 0x44, 0x1a, 0xc5, 0xfc, 0xfc, 0x03, - 0x47, 0xf3, 0xf9, 0xcd, 0x8f, 0x52, 0xda, 0xeb, 0xa3, 0xd8, 0x7f, 0x52, 0xe8, 0xb9, 0x10, 0xe8, - 0x6e, 0xee, 0x7b, 0x76, 0x94, 0x5e, 0x80, 0x51, 0xa7, 0xd5, 0xe2, 0x78, 0x2c, 0xea, 0x3c, 0x55, - 0x39, 0x6e, 0xc6, 0x04, 0xe2, 0x24, 0x6e, 0x5f, 0x36, 0xcd, 0x9f, 0x5b, 0x50, 0xc1, 0x64, 0x9d, - 0x4b, 0x23, 0x74, 0x53, 0x0c, 0x91, 0x95, 0x47, 0xed, 0x6e, 0x3a, 0xb0, 0x91, 0xcb, 0x6a, 0x5a, - 0x67, 0x0d, 0xf6, 0x41, 0x73, 0xaf, 0xd5, 0x7d, 0x88, 0xc5, 0xde, 0xf7, 0x21, 0xda, 0xff, 0xad, - 0x4c, 0x5f, 0xaf, 0x15, 0xcc, 0x85, 0xa4, 0x1e, 0xd1, 0xef, 0xdb, 0x0e, 0x3d, 0x31, 0x49, 0xd4, - 0xf7, 0xbd, 0x86, 0x17, 0x31, 0x6d, 0x4f, 0x1c, 0xf2, 0x15, 0xf6, 0x55, 0x37, 0xab, 0xb8, 0x67, - 0xdd, 0xac, 0x17, 0x60, 0x34, 0x8a, 0x36, 0x56, 0x42, 0x77, 0xcb, 0x89, 0xc9, 0x15, 0xd2, 0x11, - 0xb6, 0xaf, 0xae, 0x21, 0x53, 0xbd, 0xa4, 0x81, 0x38, 0x89, 0x8b, 0x2e, 0xc2, 0x71, 0x5d, 0xbd, - 0x8a, 0x84, 0x31, 0xcb, 0x8b, 0xe2, 0x33, 0x41, 0x15, 0x8c, 0xd0, 0xf5, 0xae, 0x04, 0x02, 0xee, - 0x7e, 0x86, 0xca, 0xd3, 0x44, 0x23, 0x65, 0x64, 0x30, 0x29, 0x4f, 0x13, 0xfd, 0x50, 0x5e, 0xba, - 0x9e, 0x40, 0x4b, 0x70, 0x82, 0x4f, 0x8c, 0x99, 0x56, 0xcb, 0x78, 0xa3, 0xa1, 0x64, 0xcd, 0xe4, - 0x8b, 0xdd, 0x28, 0x38, 0xeb, 0x39, 0xf4, 0x3c, 0x0c, 0xab, 0xe6, 0x85, 0x79, 0x71, 0x3e, 0xa5, - 0xfc, 0x63, 0xaa, 0x9b, 0x85, 0x3a, 0x36, 0xf1, 0xd0, 0xbb, 0xe0, 0x41, 0xfd, 0x97, 0x27, 0xcf, - 0xf2, 0x43, 0xdb, 0x79, 0x51, 0x18, 0x50, 0xdd, 0xc7, 0x73, 0x31, 0x13, 0xad, 0x8e, 0x7b, 0x3d, - 0x8f, 0xd6, 0xe0, 0x8c, 0x02, 0x9d, 0xf7, 0x63, 0x96, 0x09, 0x17, 0x91, 0x59, 0x27, 0x22, 0xd7, - 0x42, 0x8f, 0x95, 0x12, 0xac, 0xe8, 0x0b, 0xda, 0x2f, 0xba, 0xf1, 0xa5, 0x2c, 0x4c, 0xbc, 0x88, - 0x77, 0xe9, 0x05, 0x4d, 0x43, 0x85, 0xf8, 0xce, 0x9a, 0x47, 0x96, 0xe7, 0x16, 0x58, 0x81, 0x41, - 0xe3, 0x8c, 0xf8, 0xbc, 0x04, 0x60, 0x8d, 0xa3, 0x62, 0x97, 0x47, 0x7a, 0xc5, 0x2e, 0xa3, 0x15, - 0x38, 0xd9, 0xa8, 0xb5, 0xa8, 0x45, 0xe8, 0xd6, 0xc8, 0x4c, 0x8d, 0x85, 0x6a, 0xd2, 0x0f, 0xc3, - 0x8b, 0x59, 0xab, 0x24, 0x90, 0x8b, 0x73, 0x2b, 0x5d, 0x38, 0x38, 0xf3, 0x49, 0x16, 0xd2, 0x1b, - 0x06, 0xdb, 0x9d, 0x89, 0x13, 0xa9, 0x90, 0x5e, 0xda, 0x88, 0x39, 0x0c, 0x5d, 0x06, 0xc4, 0x32, - 0x8a, 0x2e, 0xc5, 0x71, 0x4b, 0x99, 0xa0, 0x13, 0x27, 0x93, 0x65, 0xc2, 0x2e, 0x74, 0x61, 0xe0, - 0x8c, 0xa7, 0xa8, 0x45, 0xe3, 0x07, 0xac, 0xf7, 0x89, 0x07, 0x93, 0x16, 0xcd, 0x55, 0xde, 0x8c, - 0x25, 0x1c, 0xbd, 0x07, 0x26, 0xda, 0x11, 0x61, 0x9b, 0xdb, 0x1b, 0x41, 0xb8, 0xe9, 0x05, 0x4e, - 0x7d, 0x81, 0x5d, 0xbc, 0x18, 0x77, 0x26, 0x26, 0x18, 0xf1, 0xb3, 0xe2, 0xd9, 0x89, 0x6b, 0x3d, - 0xf0, 0x70, 0xcf, 0x1e, 0xd2, 0x75, 0xee, 0x4e, 0xf7, 0x57, 0xe7, 0xce, 0xfe, 0x33, 0x0b, 0x46, - 0x95, 0xbc, 0x39, 0x82, 0x3c, 0x44, 0x2f, 0x99, 0x87, 0x78, 0xf1, 0xe0, 0x12, 0x9b, 0x71, 0xde, - 0x23, 0xd8, 0xff, 0x5f, 0x8e, 0x00, 0x68, 0xa9, 0xae, 0x14, 0xaa, 0xd5, 0x53, 0xa1, 0xde, 0xb7, - 0x12, 0x35, 0xab, 0xca, 0x58, 0xe9, 0xde, 0x56, 0x19, 0xab, 0xc2, 0x29, 0x69, 0xee, 0xf0, 0x53, - 0xd4, 0x4b, 0x41, 0xa4, 0x04, 0xb4, 0x71, 0x91, 0xd6, 0x42, 0x16, 0x12, 0xce, 0x7e, 0x36, 0x61, - 0x65, 0x0d, 0xed, 0x69, 0xfa, 0x2a, 0x99, 0xb4, 0xb8, 0x2e, 0xaf, 0xb9, 0x4b, 0xc9, 0xa4, 0xc5, - 0x0b, 0x55, 0xac, 0x71, 0xb2, 0x15, 0x53, 0x25, 0x27, 0xc5, 0x04, 0xfb, 0x56, 0x4c, 0x52, 0x44, - 0x0e, 0xf7, 0x14, 0x91, 0xf2, 0xb4, 0x66, 0xa4, 0xe7, 0x69, 0xcd, 0xdb, 0x61, 0xcc, 0xf5, 0x37, - 0x48, 0xe8, 0xc6, 0xa4, 0xce, 0xd6, 0x02, 0x13, 0x9f, 0x65, 0x6d, 0x96, 0x2c, 0x24, 0xa0, 0x38, - 0x85, 0x9d, 0x94, 0xeb, 0x63, 0x7d, 0xc8, 0xf5, 0x1e, 0xda, 0x74, 0x3c, 0x1f, 0x6d, 0x7a, 0xec, - 0xe0, 0xda, 0xf4, 0xf8, 0xa1, 0x6a, 0x53, 0x94, 0x8b, 0x36, 0xed, 0x4b, 0x51, 0x19, 0xdb, 0xe5, - 0x93, 0x7b, 0x6c, 0x97, 0x7b, 0xa9, 0xd2, 0x53, 0x77, 0xad, 0x4a, 0xb3, 0xb5, 0xe4, 0x03, 0xdf, - 0x97, 0x5a, 0xf2, 0xe3, 0x05, 0x38, 0xa5, 0xf5, 0x08, 0x5d, 0xbd, 0xee, 0x3a, 0x95, 0xa4, 0xec, - 0xa6, 0x57, 0x7e, 0x22, 0x6b, 0xa4, 0xd8, 0xea, 0x6c, 0x5d, 0x05, 0xc1, 0x06, 0x16, 0xcb, 0x54, - 0x25, 0x21, 0xbb, 0x66, 0x20, 0xad, 0x64, 0xe6, 0x44, 0x3b, 0x56, 0x18, 0x94, 0x65, 0xfa, 0x5b, - 0x54, 0x1c, 0x48, 0x17, 0xb0, 0x9d, 0xd3, 0x20, 0x6c, 0xe2, 0xa1, 0x27, 0x38, 0x11, 0x26, 0xe0, - 0xa8, 0xa2, 0x19, 0xe1, 0x5b, 0x36, 0x25, 0xd3, 0x14, 0x54, 0xb2, 0xc3, 0x52, 0x92, 0x4b, 0xdd, - 0xec, 0xb0, 0xe0, 0x46, 0x85, 0x61, 0xff, 0x0f, 0x0b, 0x4e, 0x67, 0x0e, 0xc5, 0x11, 0x18, 0x0f, - 0xdb, 0x49, 0xe3, 0xa1, 0x9a, 0xd7, 0x76, 0xcf, 0x78, 0x8b, 0x1e, 0x86, 0xc4, 0xbf, 0xb7, 0x60, - 0x4c, 0xe3, 0x1f, 0xc1, 0xab, 0xba, 0xc9, 0x57, 0xcd, 0x6f, 0x67, 0x5b, 0xe9, 0x7a, 0xb7, 0xdf, - 0x2f, 0x80, 0x2a, 0x2a, 0x3d, 0x53, 0x93, 0x25, 0xfb, 0xf7, 0x88, 0x11, 0xe8, 0xc0, 0x20, 0x0b, - 0x71, 0x88, 0xf2, 0x09, 0xdf, 0x4a, 0xd2, 0x67, 0xe1, 0x12, 0xfa, 0xc4, 0x89, 0xfd, 0x8d, 0xb0, - 0x20, 0xc8, 0x2e, 0xc1, 0xe0, 0xf5, 0x7a, 0xeb, 0x22, 0xe1, 0x52, 0x5f, 0x82, 0x21, 0xda, 0xb1, - 0xc2, 0xa0, 0xea, 0xcd, 0xad, 0x05, 0xfe, 0x9c, 0xe7, 0x44, 0xf2, 0xf2, 0x77, 0xa5, 0xde, 0x16, - 0x24, 0x00, 0x6b, 0x1c, 0x16, 0xfd, 0xe0, 0x46, 0x2d, 0xcf, 0xe9, 0x18, 0xfe, 0x0b, 0xa3, 0xb2, - 0x8e, 0x02, 0x61, 0x13, 0xcf, 0x6e, 0xc2, 0x44, 0xf2, 0x25, 0xe6, 0xc9, 0x3a, 0x0b, 0x3d, 0xee, - 0x6b, 0x38, 0xa7, 0xa1, 0xe2, 0xb0, 0xa7, 0x16, 0xdb, 0x8e, 0x90, 0x09, 0x3a, 0x00, 0x57, 0x02, - 0xb0, 0xc6, 0xb1, 0xff, 0xa1, 0x05, 0x27, 0x32, 0x06, 0x2d, 0xc7, 0x84, 0xd6, 0x58, 0x4b, 0x9b, - 0x2c, 0xc3, 0xe4, 0x87, 0x60, 0xa8, 0x4e, 0xd6, 0x1d, 0x19, 0xdc, 0x6a, 0x88, 0xf4, 0x79, 0xde, - 0x8c, 0x25, 0xdc, 0xfe, 0xad, 0x02, 0x8c, 0x27, 0x79, 0x8d, 0x58, 0x92, 0x18, 0x1f, 0x26, 0x37, - 0xaa, 0x05, 0x5b, 0x24, 0xec, 0xd0, 0x37, 0xb7, 0x52, 0x49, 0x62, 0x5d, 0x18, 0x38, 0xe3, 0x29, - 0x56, 0x52, 0xbe, 0xae, 0x46, 0x5b, 0xce, 0xc8, 0xeb, 0x79, 0xce, 0x48, 0xfd, 0x31, 0xcd, 0x40, - 0x18, 0x45, 0x12, 0x9b, 0xf4, 0xa9, 0x81, 0xc4, 0xa2, 0xee, 0x67, 0xdb, 0xae, 0x17, 0xbb, 0xbe, - 0x78, 0x65, 0x31, 0x57, 0x95, 0x81, 0xb4, 0xd4, 0x8d, 0x82, 0xb3, 0x9e, 0xb3, 0xbf, 0x35, 0x00, - 0xaa, 0x58, 0x03, 0x0b, 0x54, 0xcc, 0x29, 0xcc, 0x73, 0xbf, 0xa9, 0x86, 0x6a, 0x6e, 0x0d, 0xec, - 0x16, 0x39, 0xc4, 0x9d, 0x5e, 0xa6, 0xe7, 0x5b, 0x0d, 0xd8, 0xaa, 0x06, 0x61, 0x13, 0x8f, 0x72, - 0xe2, 0xb9, 0x5b, 0x84, 0x3f, 0x34, 0x98, 0xe4, 0x64, 0x51, 0x02, 0xb0, 0xc6, 0xa1, 0x9c, 0xd4, - 0xdd, 0xf5, 0x75, 0xe1, 0xc1, 0x51, 0x9c, 0xd0, 0xd1, 0xc1, 0x0c, 0xc2, 0x2f, 0x1d, 0x09, 0x36, - 0xc5, 0xa6, 0xc0, 0xb8, 0x74, 0x24, 0xd8, 0xc4, 0x0c, 0x42, 0xbf, 0x92, 0x1f, 0x84, 0x4d, 0xc7, - 0x73, 0x5f, 0x23, 0x75, 0x45, 0x45, 0x6c, 0x06, 0xd4, 0x57, 0xba, 0xda, 0x8d, 0x82, 0xb3, 0x9e, - 0xa3, 0x13, 0xba, 0x15, 0x92, 0xba, 0x5b, 0x8b, 0xcd, 0xde, 0x20, 0x39, 0xa1, 0x57, 0xba, 0x30, - 0x70, 0xc6, 0x53, 0x68, 0x06, 0xc6, 0x65, 0xb1, 0x0d, 0x59, 0xbe, 0x6d, 0x38, 0x59, 0x2e, 0x0a, - 0x27, 0xc1, 0x38, 0x8d, 0x4f, 0x85, 0x64, 0x53, 0x14, 0x9f, 0x64, 0x7b, 0x07, 0x43, 0x48, 0xca, - 0xa2, 0x94, 0x58, 0x61, 0xd8, 0x1f, 0x2e, 0x52, 0xa5, 0xde, 0xa3, 0xc6, 0xeb, 0x91, 0x85, 0x15, - 0x27, 0x67, 0xe4, 0x40, 0x1f, 0x33, 0xf2, 0x39, 0x18, 0xb9, 0x19, 0x05, 0xbe, 0x0a, 0xd9, 0x2d, - 0xf5, 0x0c, 0xd9, 0x35, 0xb0, 0xb2, 0x43, 0x76, 0x07, 0xf3, 0x0a, 0xd9, 0x1d, 0xba, 0xcb, 0x90, - 0xdd, 0x3f, 0x2c, 0x81, 0xba, 0x55, 0xee, 0x2a, 0x89, 0x6f, 0x05, 0xe1, 0xa6, 0xeb, 0x37, 0x58, - 0xe1, 0x88, 0x2f, 0x59, 0xb2, 0xf6, 0xc4, 0xa2, 0x99, 0x72, 0xb9, 0x9e, 0xd3, 0xcd, 0x60, 0x09, - 0x62, 0x53, 0xab, 0x06, 0xa1, 0xd4, 0x65, 0xfd, 0x26, 0x08, 0x27, 0x38, 0x42, 0x1f, 0x00, 0x90, - 0xee, 0xee, 0x75, 0x29, 0x81, 0x17, 0xf2, 0xe1, 0x0f, 0x93, 0x75, 0x6d, 0x52, 0xaf, 0x2a, 0x22, - 0xd8, 0x20, 0x88, 0x3e, 0xae, 0xd3, 0x51, 0x79, 0x6e, 0xcf, 0xfb, 0x0e, 0x65, 0x6c, 0xfa, 0x49, - 0x46, 0xc5, 0x30, 0xe4, 0xfa, 0x0d, 0x3a, 0x4f, 0x44, 0x68, 0xe3, 0x5b, 0xb2, 0x0a, 0xfc, 0x2c, - 0x06, 0x4e, 0x7d, 0xd6, 0xf1, 0x1c, 0xbf, 0x46, 0xc2, 0x05, 0x8e, 0xae, 0x35, 0xa8, 0x68, 0xc0, - 0xb2, 0xa3, 0xae, 0xab, 0xef, 0x4a, 0xfd, 0x5c, 0x7d, 0x77, 0xe6, 0x1d, 0x70, 0xbc, 0xeb, 0x63, - 0xee, 0x2b, 0xf7, 0xf4, 0xee, 0xd3, 0x56, 0xed, 0xdf, 0x1e, 0xd4, 0x4a, 0xeb, 0x6a, 0x50, 0xe7, - 0x37, 0xa9, 0x85, 0xfa, 0x8b, 0x0a, 0x93, 0x39, 0xc7, 0x29, 0xa2, 0xd4, 0x8c, 0xd1, 0x88, 0x4d, - 0x92, 0x74, 0x8e, 0xb6, 0x9c, 0x90, 0xf8, 0x87, 0x3d, 0x47, 0x57, 0x14, 0x11, 0x6c, 0x10, 0x44, - 0x1b, 0x89, 0xe4, 0xb3, 0x0b, 0x07, 0x4f, 0x3e, 0x63, 0xe5, 0x16, 0xb3, 0x2e, 0x1c, 0xfa, 0xac, - 0x05, 0x63, 0x7e, 0x62, 0xe6, 0xe6, 0x13, 0x6f, 0x9e, 0xbd, 0x2a, 0xf8, 0xa5, 0xa4, 0xc9, 0x36, - 0x9c, 0xa2, 0x9f, 0xa5, 0xd2, 0x4a, 0xfb, 0x54, 0x69, 0xfa, 0x26, 0xc7, 0xc1, 0x5e, 0x37, 0x39, - 0x22, 0x5f, 0xdd, 0xaf, 0x3b, 0x94, 0xfb, 0xfd, 0xba, 0x90, 0x71, 0xb7, 0xee, 0x0d, 0xa8, 0xd4, - 0x42, 0xe2, 0xc4, 0x77, 0x79, 0xd5, 0x2a, 0x8b, 0x82, 0x99, 0x93, 0x1d, 0x60, 0xdd, 0x97, 0xfd, - 0xbf, 0x07, 0xe0, 0x98, 0x1c, 0x11, 0x99, 0xab, 0x42, 0xf5, 0x23, 0xa7, 0xab, 0x6d, 0x65, 0xa5, - 0x1f, 0x2f, 0x49, 0x00, 0xd6, 0x38, 0xd4, 0x1e, 0x6b, 0x47, 0x64, 0xb9, 0x45, 0xfc, 0x45, 0x77, - 0x2d, 0x12, 0xc7, 0xd6, 0x6a, 0xa1, 0x5c, 0xd3, 0x20, 0x6c, 0xe2, 0x51, 0xdb, 0xde, 0x31, 0x8c, - 0x56, 0xc3, 0xb6, 0x97, 0x86, 0xaa, 0x84, 0xa3, 0x5f, 0xca, 0x2c, 0x3a, 0x9f, 0x4f, 0x86, 0x67, - 0x57, 0x8a, 0xce, 0x3e, 0x2f, 0x0a, 0xff, 0x7b, 0x16, 0x9c, 0xe2, 0xad, 0x72, 0x24, 0xaf, 0xb5, - 0xea, 0x4e, 0x4c, 0xa2, 0x7c, 0x2e, 0xab, 0xc9, 0xe0, 0x4f, 0xfb, 0xbc, 0xb3, 0xc8, 0xe2, 0x6c, - 0x6e, 0xd0, 0x67, 0x2c, 0x18, 0xdf, 0x4c, 0x14, 0x07, 0x92, 0xaa, 0xe3, 0xa0, 0x75, 0x3b, 0x12, - 0x9d, 0xea, 0xa5, 0x96, 0x6c, 0x8f, 0x70, 0x9a, 0xba, 0xfd, 0xdf, 0x2d, 0x30, 0xc5, 0xe8, 0xd1, - 0xd7, 0x14, 0xda, 0xbf, 0x29, 0x28, 0xad, 0xcb, 0x52, 0x4f, 0xeb, 0xf2, 0x11, 0x28, 0xb6, 0xdd, - 0xba, 0xd8, 0x5f, 0xe8, 0xc3, 0xf4, 0x85, 0x79, 0x4c, 0xdb, 0xed, 0x7f, 0x5e, 0xd2, 0x6e, 0x10, - 0x91, 0x40, 0xf9, 0x3d, 0xf1, 0xda, 0xeb, 0xaa, 0xea, 0x26, 0x7f, 0xf3, 0xab, 0x5d, 0x55, 0x37, - 0x7f, 0x6c, 0xff, 0xf9, 0xb1, 0x7c, 0x80, 0x7a, 0x15, 0xdd, 0x1c, 0xda, 0x23, 0x39, 0xf6, 0x26, - 0x94, 0xe9, 0x16, 0x8c, 0xf9, 0x33, 0xcb, 0x09, 0xa6, 0xca, 0x97, 0x44, 0xfb, 0x9d, 0x9d, 0xc9, - 0x1f, 0xdd, 0x3f, 0x5b, 0xf2, 0x69, 0xac, 0xfa, 0x47, 0x11, 0x54, 0xe8, 0x6f, 0x96, 0xc7, 0x2b, - 0x36, 0x77, 0xd7, 0x94, 0xcc, 0x94, 0x80, 0x5c, 0x92, 0x84, 0x35, 0x1d, 0xe4, 0x43, 0x85, 0x22, - 0x72, 0xa2, 0x7c, 0x0f, 0xb8, 0xa2, 0xb2, 0x69, 0x25, 0xe0, 0xce, 0xce, 0xe4, 0x0b, 0xfb, 0x27, - 0xaa, 0x1e, 0xc7, 0x9a, 0x84, 0xfd, 0x7f, 0x06, 0xf4, 0xdc, 0x15, 0xc5, 0x56, 0xbf, 0x27, 0xe6, - 0xee, 0xb9, 0xd4, 0xdc, 0x3d, 0xdb, 0x35, 0x77, 0xc7, 0xf4, 0x85, 0xfb, 0x89, 0xd9, 0x78, 0xd4, - 0x86, 0xc0, 0xde, 0xfe, 0x06, 0x66, 0x01, 0xbd, 0xda, 0x76, 0x43, 0x12, 0xad, 0x84, 0x6d, 0xdf, - 0xf5, 0x1b, 0x6c, 0x3a, 0x96, 0x4d, 0x0b, 0x28, 0x01, 0xc6, 0x69, 0x7c, 0xba, 0xa9, 0xa7, 0xdf, - 0xfc, 0x86, 0xb3, 0xc5, 0x67, 0x95, 0x51, 0x9f, 0xaf, 0x2a, 0xda, 0xb1, 0xc2, 0x40, 0x1b, 0xf0, - 0xb0, 0xec, 0x60, 0x9e, 0x78, 0x44, 0xdc, 0x98, 0xbf, 0xee, 0x86, 0x4d, 0x1e, 0x4a, 0xcf, 0x63, - 0x38, 0xde, 0x2c, 0x7a, 0x78, 0x18, 0xef, 0x82, 0x8b, 0x77, 0xed, 0xc9, 0xfe, 0x0a, 0x0b, 0x22, - 0x30, 0x4a, 0x15, 0xd0, 0xd9, 0xe7, 0xb9, 0x4d, 0x57, 0x96, 0x11, 0x54, 0xb3, 0x6f, 0x91, 0x36, - 0x62, 0x0e, 0x43, 0xb7, 0x60, 0x68, 0x8d, 0x5f, 0x6c, 0x9c, 0xcf, 0x25, 0x2a, 0xe2, 0x96, 0x64, - 0x56, 0x8b, 0x57, 0x5e, 0x99, 0x7c, 0x47, 0xff, 0xc4, 0x92, 0x9a, 0xfd, 0xf5, 0x12, 0x8c, 0xcb, - 0xb0, 0xac, 0x4b, 0x6e, 0xc4, 0x62, 0x03, 0xcc, 0x02, 0xe5, 0x85, 0x3d, 0x0b, 0x94, 0xbf, 0x17, - 0xa0, 0x4e, 0x5a, 0x5e, 0xd0, 0x61, 0x86, 0xdf, 0xc0, 0xbe, 0x0d, 0x3f, 0xb5, 0x57, 0x98, 0x57, - 0xbd, 0x60, 0xa3, 0x47, 0x51, 0x3b, 0x91, 0xd7, 0x3b, 0x4f, 0xd5, 0x4e, 0x34, 0xae, 0x5a, 0x1a, - 0x3c, 0xda, 0xab, 0x96, 0x5c, 0x18, 0xe7, 0x2c, 0xaa, 0x82, 0x00, 0x77, 0x91, 0xf7, 0xcf, 0x52, - 0xaa, 0xe6, 0x93, 0xdd, 0xe0, 0x74, 0xbf, 0xe6, 0x3d, 0x4a, 0xe5, 0xa3, 0xbe, 0x47, 0xe9, 0xad, - 0x50, 0x91, 0xdf, 0x39, 0x9a, 0xa8, 0xe8, 0xa2, 0x2a, 0x72, 0x1a, 0x44, 0x58, 0xc3, 0xbb, 0x6a, - 0x9b, 0xc0, 0xbd, 0xaa, 0x6d, 0x62, 0x7f, 0xba, 0x40, 0x77, 0x0c, 0x9c, 0x2f, 0x55, 0xa6, 0xeb, - 0x71, 0x18, 0x74, 0xda, 0xf1, 0x46, 0xd0, 0x75, 0x35, 0xf2, 0x0c, 0x6b, 0xc5, 0x02, 0x8a, 0x16, - 0x61, 0xa0, 0xae, 0x4b, 0x2f, 0xed, 0xe7, 0x7b, 0x6a, 0xe7, 0xab, 0x13, 0x13, 0xcc, 0x7a, 0x41, - 0x0f, 0xc3, 0x40, 0xec, 0x34, 0x64, 0x16, 0x28, 0xcb, 0xfc, 0x5f, 0x75, 0x1a, 0x11, 0x66, 0xad, - 0xfb, 0x29, 0x37, 0xfb, 0x02, 0x8c, 0x46, 0x6e, 0xc3, 0x77, 0xe2, 0x76, 0x48, 0x8c, 0xf3, 0x49, - 0x1d, 0x32, 0x63, 0x02, 0x71, 0x12, 0xd7, 0xfe, 0x9d, 0x11, 0x38, 0x59, 0x9d, 0x5b, 0x92, 0x17, - 0x66, 0x1c, 0x5a, 0x22, 0x67, 0x16, 0x8d, 0xa3, 0x4b, 0xe4, 0xec, 0x41, 0xdd, 0x33, 0x12, 0x39, - 0x3d, 0x23, 0x91, 0x33, 0x99, 0x55, 0x57, 0xcc, 0x23, 0xab, 0x2e, 0x8b, 0x83, 0x7e, 0xb2, 0xea, - 0x0e, 0x2d, 0xb3, 0x73, 0x57, 0x86, 0xf6, 0x95, 0xd9, 0xa9, 0xd2, 0x5e, 0x73, 0xc9, 0x15, 0xea, - 0xf1, 0xa9, 0x32, 0xd3, 0x5e, 0x55, 0xca, 0x21, 0xcf, 0x83, 0x13, 0xa2, 0xfe, 0xe5, 0xfc, 0x19, - 0xe8, 0x23, 0xe5, 0x50, 0xa4, 0xe2, 0x99, 0x69, 0xae, 0x43, 0x79, 0xa4, 0xb9, 0x66, 0xb1, 0xb3, - 0x67, 0x9a, 0xeb, 0x0b, 0x30, 0x5a, 0xf3, 0x02, 0x9f, 0xac, 0x84, 0x41, 0x1c, 0xd4, 0x02, 0x79, - 0x39, 0xab, 0xbe, 0x5b, 0xcc, 0x04, 0xe2, 0x24, 0x6e, 0xaf, 0x1c, 0xd9, 0xca, 0x41, 0x73, 0x64, - 0xe1, 0x1e, 0xe5, 0xc8, 0x1a, 0x59, 0xa0, 0xc3, 0x79, 0x64, 0x81, 0x66, 0x7d, 0x91, 0xbe, 0x6e, - 0x5f, 0x7d, 0x9d, 0xdf, 0x4d, 0x4c, 0x4d, 0xf0, 0xb9, 0xa0, 0x49, 0x0d, 0xbf, 0x11, 0x36, 0x24, - 0xaf, 0x1c, 0xc2, 0x84, 0xbd, 0x51, 0xd5, 0x64, 0xd4, 0x7d, 0xc5, 0xba, 0x09, 0x27, 0x19, 0x39, - 0x48, 0x82, 0xea, 0x17, 0x0a, 0xf0, 0x03, 0x7b, 0xb2, 0x80, 0x6e, 0x01, 0xc4, 0x4e, 0x43, 0x4c, - 0x54, 0x71, 0x34, 0x73, 0xc0, 0xb8, 0xd6, 0x55, 0xd9, 0x1f, 0x2f, 0x93, 0xa4, 0xfe, 0xb2, 0x43, - 0x0f, 0xf9, 0x9b, 0x85, 0xb3, 0x06, 0x5e, 0x57, 0x35, 0x59, 0x1c, 0x78, 0x04, 0x33, 0x08, 0x55, - 0xff, 0x21, 0x69, 0x50, 0x93, 0xb6, 0x98, 0x54, 0xff, 0x98, 0xb5, 0x62, 0x01, 0x45, 0xcf, 0xc3, - 0xb0, 0xe3, 0x79, 0x3c, 0x91, 0x8b, 0x44, 0xe2, 0xd2, 0x3f, 0x5d, 0xd6, 0x52, 0x83, 0xb0, 0x89, - 0x67, 0xff, 0x55, 0x01, 0x26, 0xf7, 0x90, 0x29, 0x5d, 0x09, 0xbc, 0xa5, 0xbe, 0x13, 0x78, 0x45, - 0x72, 0xcb, 0x60, 0x8f, 0xe4, 0x96, 0xe7, 0x61, 0x38, 0x26, 0x4e, 0x53, 0x44, 0xc2, 0x09, 0x9f, - 0x83, 0x3e, 0x6b, 0xd6, 0x20, 0x6c, 0xe2, 0x51, 0x29, 0x36, 0xe6, 0xd4, 0x6a, 0x24, 0x8a, 0x64, - 0xf6, 0x8a, 0xf0, 0xdb, 0xe6, 0x96, 0x1a, 0xc3, 0xdc, 0xe1, 0x33, 0x09, 0x12, 0x38, 0x45, 0x32, - 0x3d, 0xe0, 0x95, 0x3e, 0x07, 0xfc, 0x57, 0x0b, 0xf0, 0xc8, 0xae, 0xda, 0xad, 0xef, 0xc4, 0xa2, - 0x76, 0x44, 0xc2, 0xf4, 0xc4, 0xb9, 0x16, 0x91, 0x10, 0x33, 0x08, 0x1f, 0xa5, 0x56, 0x4b, 0x45, - 0x31, 0xe7, 0x9f, 0x65, 0xc7, 0x47, 0x29, 0x41, 0x02, 0xa7, 0x48, 0xde, 0xed, 0xb4, 0xfc, 0xfa, - 0x00, 0x3c, 0xd6, 0x87, 0x0d, 0x90, 0x63, 0x36, 0x62, 0x32, 0x73, 0xb6, 0x78, 0x8f, 0x32, 0x67, - 0xef, 0x6e, 0xb8, 0xde, 0x48, 0xb8, 0xed, 0x2b, 0xeb, 0xf1, 0x2b, 0x05, 0x38, 0xd3, 0xdb, 0x60, - 0x41, 0x3f, 0x0e, 0xe3, 0xa1, 0x0a, 0xb2, 0x33, 0x93, 0x6e, 0x4f, 0x70, 0xcf, 0x4e, 0x02, 0x84, - 0xd3, 0xb8, 0x68, 0x0a, 0xa0, 0xe5, 0xc4, 0x1b, 0xd1, 0xf9, 0x6d, 0x37, 0x8a, 0x45, 0xf9, 0xb0, - 0x31, 0x7e, 0x96, 0x28, 0x5b, 0xb1, 0x81, 0x41, 0xc9, 0xb1, 0x7f, 0xf3, 0xc1, 0xd5, 0x20, 0xe6, - 0x0f, 0xf1, 0xcd, 0xd6, 0x09, 0x79, 0x99, 0x98, 0x01, 0xc2, 0x69, 0x5c, 0x4a, 0x8e, 0x9d, 0x56, - 0x73, 0x46, 0xf9, 0x2e, 0x8c, 0x91, 0x5b, 0x54, 0xad, 0xd8, 0xc0, 0x48, 0xa7, 0x13, 0x97, 0xf6, - 0x4e, 0x27, 0xb6, 0xff, 0x59, 0x01, 0x4e, 0xf7, 0x34, 0x78, 0xfb, 0x13, 0x53, 0xf7, 0x5f, 0x0a, - 0xf0, 0x5d, 0xae, 0xb0, 0xfd, 0xa5, 0x8e, 0xfe, 0x79, 0x8f, 0x99, 0x26, 0x52, 0x47, 0xef, 0xbe, - 0x22, 0xc6, 0xfd, 0x37, 0x9e, 0x5d, 0xd9, 0xa2, 0x03, 0xfb, 0xc8, 0x16, 0x4d, 0x7d, 0x8c, 0x52, - 0x9f, 0xda, 0xe1, 0x3f, 0x0f, 0xf4, 0x1c, 0x5e, 0xba, 0x41, 0xee, 0xcb, 0x6f, 0x3e, 0x0f, 0xc7, - 0x5c, 0x9f, 0x5d, 0x2c, 0x59, 0x6d, 0xaf, 0x89, 0x8a, 0x52, 0xbc, 0x6c, 0xaa, 0xca, 0xfe, 0x58, - 0x48, 0xc1, 0x71, 0xd7, 0x13, 0xf7, 0x61, 0xf6, 0xee, 0xdd, 0x0d, 0xe9, 0x3e, 0x25, 0xf7, 0x32, - 0x9c, 0x92, 0x43, 0xb1, 0xe1, 0x84, 0xa4, 0x2e, 0x94, 0x6d, 0x24, 0xf2, 0x7d, 0x4e, 0xf3, 0x9c, - 0xa1, 0x0c, 0x04, 0x9c, 0xfd, 0x1c, 0xbb, 0xcb, 0x2f, 0x68, 0xb9, 0x35, 0xb1, 0x15, 0xd4, 0x77, - 0xf9, 0xd1, 0x46, 0xcc, 0x61, 0x5a, 0x5f, 0x54, 0x8e, 0x46, 0x5f, 0xbc, 0x17, 0x2a, 0x6a, 0xbc, - 0x79, 0x96, 0x80, 0x9a, 0xe4, 0x5d, 0x59, 0x02, 0x6a, 0x86, 0x1b, 0x58, 0x7b, 0xdd, 0x83, 0xfd, - 0x2c, 0x8c, 0x28, 0xef, 0x57, 0xbf, 0x37, 0x2a, 0xda, 0xff, 0xb7, 0x00, 0xa9, 0x3b, 0x8f, 0xd0, - 0x36, 0x54, 0xea, 0xf2, 0x26, 0xea, 0x7c, 0xca, 0xf6, 0xaa, 0x8b, 0xad, 0xf5, 0xf1, 0x8f, 0x6a, - 0xc2, 0x9a, 0x18, 0x7a, 0x3f, 0xaf, 0x90, 0x2b, 0x48, 0x17, 0xf2, 0xc8, 0xe0, 0xae, 0xaa, 0xfe, - 0xcc, 0x2b, 0xd3, 0x64, 0x1b, 0x36, 0xe8, 0xa1, 0x18, 0x2a, 0x1b, 0xf2, 0x6e, 0xa7, 0x7c, 0xc4, - 0x9d, 0xba, 0x2a, 0x8a, 0x9b, 0x68, 0xea, 0x2f, 0xd6, 0x84, 0xec, 0x3f, 0x2b, 0xc0, 0xc9, 0xe4, - 0x07, 0x10, 0xc7, 0x75, 0xbf, 0x66, 0xc1, 0x83, 0x9e, 0x13, 0xc5, 0xd5, 0x36, 0xdb, 0x28, 0xac, - 0xb7, 0xbd, 0xe5, 0x54, 0x31, 0xe5, 0x83, 0x3a, 0x5b, 0x54, 0xc7, 0xe9, 0xbb, 0xc0, 0x66, 0x1f, - 0xba, 0xbd, 0x33, 0xf9, 0xe0, 0x62, 0x36, 0x71, 0xdc, 0x8b, 0x2b, 0xf4, 0x59, 0x0b, 0x8e, 0xd5, - 0xda, 0x61, 0x48, 0xfc, 0x58, 0xb3, 0xca, 0xbf, 0xe2, 0xd5, 0x5c, 0x06, 0x52, 0x33, 0x78, 0x92, - 0x0a, 0xd4, 0xb9, 0x14, 0x2d, 0xdc, 0x45, 0xdd, 0xfe, 0x79, 0xaa, 0x39, 0x7b, 0xbe, 0xe7, 0xf7, - 0xd9, 0xe5, 0x65, 0xdf, 0x19, 0x84, 0xd1, 0x44, 0xc5, 0xe8, 0xc4, 0x11, 0x97, 0xb5, 0xe7, 0x11, - 0x17, 0xcb, 0x50, 0x6b, 0xfb, 0xf2, 0x6a, 0x65, 0x23, 0x43, 0xad, 0xed, 0x13, 0xcc, 0x61, 0x62, - 0x48, 0x71, 0xdb, 0x17, 0xd1, 0xed, 0xe6, 0x90, 0xe2, 0xb6, 0x8f, 0x05, 0x14, 0x7d, 0xc8, 0x82, - 0x11, 0xb6, 0xf8, 0xc4, 0x01, 0xa1, 0x50, 0x68, 0x97, 0x73, 0x58, 0xee, 0xb2, 0x3a, 0x3a, 0x8b, - 0x86, 0x34, 0x5b, 0x70, 0x82, 0x22, 0xfa, 0xa8, 0x05, 0x15, 0x75, 0x1b, 0xa3, 0xb8, 0x27, 0xbd, - 0x9a, 0x6f, 0x41, 0xee, 0x94, 0xd4, 0x53, 0x95, 0x91, 0xb1, 0x26, 0x8c, 0x22, 0x75, 0x7a, 0x37, - 0x74, 0x38, 0xa7, 0x77, 0x90, 0x71, 0x72, 0xf7, 0x56, 0xa8, 0x34, 0x1d, 0xdf, 0x5d, 0x27, 0x51, - 0xcc, 0x0f, 0xd4, 0xe4, 0x3d, 0x01, 0xb2, 0x11, 0x6b, 0x38, 0x35, 0xf6, 0x23, 0xf6, 0x62, 0xb1, - 0x71, 0x02, 0xc6, 0x8c, 0xfd, 0xaa, 0x6e, 0xc6, 0x26, 0x8e, 0x79, 0x5c, 0x07, 0xf7, 0xf4, 0xb8, - 0x6e, 0x78, 0x8f, 0xe3, 0xba, 0x2a, 0x9c, 0x72, 0xda, 0x71, 0x70, 0x89, 0x38, 0xde, 0x4c, 0x1c, - 0x93, 0x66, 0x2b, 0x8e, 0x78, 0x91, 0xf1, 0x11, 0xe6, 0x02, 0x56, 0xf1, 0x5b, 0x55, 0xe2, 0xad, - 0x77, 0x21, 0xe1, 0xec, 0x67, 0xed, 0x7f, 0x6c, 0xc1, 0xa9, 0xcc, 0xa9, 0x70, 0xff, 0x46, 0xce, - 0xdb, 0x9f, 0x2f, 0xc1, 0x89, 0x8c, 0x7a, 0xf2, 0xa8, 0x63, 0x2e, 0x12, 0x2b, 0x8f, 0x20, 0xb4, - 0x64, 0x4c, 0x95, 0xfc, 0x36, 0x19, 0x2b, 0x63, 0x7f, 0x27, 0xf0, 0xfa, 0x14, 0xbc, 0x78, 0xb4, - 0xa7, 0xe0, 0xc6, 0x5c, 0x1f, 0xb8, 0xa7, 0x73, 0xbd, 0xb4, 0xc7, 0x5c, 0xff, 0xaa, 0x05, 0x13, - 0xcd, 0x1e, 0x97, 0x18, 0x89, 0xf3, 0xa4, 0xeb, 0x87, 0x73, 0x45, 0xd2, 0xec, 0xc3, 0xb7, 0x77, - 0x26, 0x7b, 0xde, 0x1d, 0x85, 0x7b, 0x72, 0x65, 0x7f, 0xab, 0x08, 0xcc, 0x5e, 0x63, 0x35, 0x83, - 0x3b, 0xe8, 0x83, 0xe6, 0xb5, 0x14, 0x56, 0x5e, 0x57, 0x28, 0xf0, 0xce, 0xd5, 0xb5, 0x16, 0x7c, - 0x04, 0xb3, 0x6e, 0xb9, 0x48, 0x4b, 0xc2, 0x42, 0x1f, 0x92, 0xd0, 0x93, 0xf7, 0x7f, 0x14, 0xf3, - 0xbf, 0xff, 0xa3, 0x92, 0xbe, 0xfb, 0x63, 0xf7, 0x4f, 0x3c, 0x70, 0x5f, 0x7e, 0xe2, 0xdf, 0xb5, - 0xb8, 0xe0, 0x49, 0x7d, 0x05, 0x6d, 0x6e, 0x58, 0xbb, 0x98, 0x1b, 0x4f, 0x42, 0x39, 0x12, 0x92, - 0x59, 0x98, 0x25, 0x3a, 0x00, 0x4a, 0xb4, 0x63, 0x85, 0x41, 0x77, 0x5d, 0x8e, 0xe7, 0x05, 0xb7, - 0xce, 0x37, 0x5b, 0x71, 0x47, 0x18, 0x28, 0x6a, 0x5b, 0x30, 0xa3, 0x20, 0xd8, 0xc0, 0x42, 0x8f, - 0xc1, 0x20, 0xaf, 0x74, 0x20, 0x9c, 0x3b, 0xc3, 0x74, 0x1d, 0xf2, 0x32, 0x08, 0x75, 0x2c, 0x40, - 0xf6, 0x06, 0x18, 0xbb, 0x8a, 0xbb, 0xbf, 0x18, 0xb6, 0x8f, 0x1b, 0xbd, 0xff, 0x6e, 0x41, 0x90, - 0xe2, 0xbb, 0x84, 0x73, 0xa9, 0x1b, 0xd4, 0xfb, 0x8f, 0x87, 0x7b, 0x3f, 0x40, 0x2d, 0x68, 0xb6, - 0xe8, 0xbe, 0x79, 0x35, 0xc8, 0x67, 0xb3, 0x35, 0xa7, 0xfa, 0xd3, 0xa3, 0xaa, 0xdb, 0xb0, 0x41, - 0x2f, 0x21, 0xda, 0x8b, 0x7b, 0x8a, 0xf6, 0x84, 0x94, 0x1b, 0xd8, 0x5d, 0xca, 0xd9, 0x7f, 0x65, - 0x41, 0xc2, 0xea, 0x43, 0x2d, 0x28, 0x51, 0x76, 0x3b, 0x42, 0x60, 0x2c, 0xe7, 0x67, 0x62, 0x52, - 0x49, 0x2d, 0x56, 0x21, 0xfb, 0x89, 0x39, 0x21, 0xe4, 0x89, 0xd8, 0xbf, 0x5c, 0x36, 0x3f, 0x26, - 0xc1, 0x4b, 0x41, 0xb0, 0xc9, 0xc3, 0x67, 0x74, 0x1c, 0xa1, 0x7d, 0x0e, 0x8e, 0x77, 0x31, 0xc5, - 0x2e, 0x93, 0x0d, 0xe4, 0x0e, 0xde, 0x58, 0x3d, 0xac, 0x3e, 0x03, 0xe6, 0x30, 0xfb, 0x2b, 0x16, - 0x1c, 0x4b, 0x77, 0x8f, 0x5e, 0xb7, 0xe0, 0x78, 0x94, 0xee, 0xef, 0xb0, 0xc6, 0x4e, 0xc5, 0xef, - 0x77, 0x81, 0x70, 0x37, 0x13, 0xf6, 0x3f, 0x15, 0xda, 0xe0, 0x86, 0xeb, 0xd7, 0x83, 0x5b, 0xca, - 0x4e, 0xb2, 0x7a, 0xda, 0x49, 0x54, 0x3c, 0xd4, 0x36, 0x48, 0xbd, 0xed, 0x75, 0x15, 0x56, 0xa8, - 0x8a, 0x76, 0xac, 0x30, 0x58, 0x1e, 0x79, 0x5b, 0xec, 0x5b, 0x53, 0x93, 0x72, 0x5e, 0xb4, 0x63, - 0x85, 0x81, 0x9e, 0x83, 0x11, 0xe3, 0x25, 0xe5, 0xbc, 0x64, 0x9b, 0x0e, 0x43, 0x83, 0x47, 0x38, - 0x81, 0x85, 0xa6, 0x00, 0x94, 0xcd, 0x25, 0x35, 0x36, 0x73, 0xb4, 0x2b, 0xc1, 0x18, 0x61, 0x03, - 0x83, 0x55, 0x6d, 0xf0, 0xda, 0x11, 0x3b, 0x49, 0x1e, 0xd4, 0x35, 0xf4, 0xe7, 0x44, 0x1b, 0x56, - 0x50, 0x2a, 0xdc, 0x9a, 0x8e, 0xdf, 0x76, 0x3c, 0x3a, 0x42, 0xc2, 0x75, 0xa6, 0x96, 0xe1, 0x92, - 0x82, 0x60, 0x03, 0x8b, 0xbe, 0x71, 0xec, 0x36, 0xc9, 0x4b, 0x81, 0x2f, 0xe3, 0xae, 0x75, 0x70, - 0x81, 0x68, 0xc7, 0x0a, 0x03, 0x9d, 0x83, 0x61, 0xc7, 0xaf, 0x73, 0x03, 0x31, 0x08, 0xc5, 0x19, - 0xa5, 0xda, 0x7d, 0x5e, 0x8b, 0xc8, 0x8c, 0x86, 0x62, 0x13, 0xd5, 0xfe, 0x4b, 0x0b, 0xc6, 0x75, - 0xf5, 0x1b, 0xe6, 0x2a, 0x4b, 0xf8, 0x08, 0xad, 0x3d, 0x7d, 0x84, 0xc9, 0xb2, 0x1a, 0x85, 0xbe, - 0xca, 0x6a, 0x98, 0x15, 0x2f, 0x8a, 0xbb, 0x56, 0xbc, 0xf8, 0x41, 0x18, 0xda, 0x24, 0x1d, 0xa3, - 0x34, 0x06, 0x93, 0xf2, 0x57, 0x78, 0x13, 0x96, 0x30, 0x64, 0xc3, 0x60, 0xcd, 0x51, 0xa5, 0xeb, - 0x46, 0xf8, 0xce, 0x6a, 0x6e, 0x86, 0x21, 0x09, 0x88, 0xbd, 0x0c, 0x15, 0x75, 0x3a, 0x2f, 0x5d, - 0x76, 0x56, 0xb6, 0xcb, 0xae, 0xaf, 0xcc, 0xfb, 0xd9, 0xb5, 0xaf, 0x7d, 0xfb, 0xd1, 0x37, 0xfd, - 0xf1, 0xb7, 0x1f, 0x7d, 0xd3, 0x9f, 0x7e, 0xfb, 0xd1, 0x37, 0x7d, 0xe8, 0xf6, 0xa3, 0xd6, 0xd7, - 0x6e, 0x3f, 0x6a, 0xfd, 0xf1, 0xed, 0x47, 0xad, 0x3f, 0xbd, 0xfd, 0xa8, 0xf5, 0xad, 0xdb, 0x8f, - 0x5a, 0x9f, 0xfd, 0x4f, 0x8f, 0xbe, 0xe9, 0xa5, 0xcc, 0x90, 0x7d, 0xfa, 0xe3, 0xa9, 0x5a, 0x7d, - 0x7a, 0xeb, 0x59, 0x16, 0x35, 0x4e, 0x17, 0xe6, 0xb4, 0x31, 0x1b, 0xa7, 0xe5, 0xc2, 0xfc, 0x7f, - 0x01, 0x00, 0x00, 0xff, 0xff, 0xb7, 0xb0, 0xa6, 0x0c, 0xbd, 0xf8, 0x00, 0x00, + 0xda, 0xb7, 0x47, 0xa1, 0x3b, 0x04, 0x22, 0x19, 0xef, 0x60, 0x1d, 0x75, 0xbc, 0x03, 0xdd, 0x55, + 0x46, 0x3a, 0x54, 0x21, 0x87, 0x65, 0x26, 0xa8, 0xea, 0x63, 0xe8, 0x8e, 0x5f, 0xc3, 0x8c, 0x06, + 0x0a, 0x61, 0x70, 0x83, 0x38, 0x5e, 0xbc, 0x91, 0xcf, 0x89, 0xd9, 0x25, 0xd6, 0x57, 0x3a, 0x5f, + 0x90, 0xb7, 0x62, 0x41, 0x09, 0x6d, 0xc3, 0xd0, 0x06, 0x9f, 0x8b, 0x62, 0xa3, 0xb7, 0x74, 0xd0, + 0xc1, 0x4d, 0x4c, 0x70, 0x3d, 0xf3, 0x44, 0x03, 0x96, 0xe4, 0x58, 0x6c, 0x9d, 0x11, 0xfd, 0xc3, + 0xa5, 0x48, 0x7e, 0xa9, 0x92, 0xfd, 0x87, 0xfe, 0xbc, 0x0f, 0x46, 0x42, 0x52, 0x0b, 0xfc, 0x9a, + 0xeb, 0x91, 0xfa, 0x8c, 0x3c, 0x0d, 0xdb, 0x4f, 0x86, 0x1c, 0x73, 0x25, 0x61, 0xa3, 0x0f, 0x9c, + 0xe8, 0x91, 0x2d, 0x32, 0x95, 0x35, 0x4f, 0x3f, 0x08, 0x11, 0xa7, 0x1e, 0x8b, 0x39, 0xe5, 0xe8, + 0xb3, 0x3e, 0xf9, 0x22, 0x4b, 0xb6, 0xe1, 0x14, 0x5d, 0xf4, 0x12, 0x40, 0xb0, 0xc6, 0x03, 0xe8, + 0x66, 0x62, 0x71, 0x04, 0xb2, 0x9f, 0x57, 0x1d, 0xe3, 0x99, 0xb6, 0xb2, 0x07, 0x6c, 0xf4, 0x86, + 0xae, 0x00, 0xf0, 0x65, 0xb3, 0xda, 0x69, 0xc9, 0xdd, 0xa0, 0x4c, 0x71, 0x84, 0xaa, 0x82, 0xdc, + 0xd9, 0x99, 0xec, 0x76, 0x38, 0xb3, 0x28, 0x21, 0xe3, 0x71, 0xf4, 0x93, 0x30, 0x14, 0xb5, 0x9b, + 0x4d, 0x47, 0x1d, 0x90, 0xe4, 0x98, 0xbb, 0xcb, 0xfb, 0x35, 0xa4, 0x22, 0x6f, 0xc0, 0x92, 0x22, + 0xba, 0x49, 0xe5, 0xbb, 0x10, 0x4f, 0x7c, 0x15, 0x71, 0xf3, 0x84, 0xbb, 0x01, 0xdf, 0x26, 0xb7, + 0x30, 0x38, 0x03, 0xe7, 0xce, 0xce, 0xe4, 0x03, 0xc9, 0xf6, 0xc5, 0x40, 0x64, 0xd3, 0x66, 0xf6, + 0x89, 0x2e, 0xcb, 0x22, 0x5a, 0xf4, 0xb5, 0x65, 0x6d, 0x97, 0x27, 0x74, 0x11, 0x2d, 0xd6, 0xdc, + 0x7b, 0xcc, 0xcc, 0x87, 0xd1, 0x12, 0x9c, 0xa8, 0x05, 0x7e, 0x1c, 0x06, 0x9e, 0xc7, 0x8b, 0xc8, + 0xf1, 0x8d, 0x39, 0x3f, 0x40, 0x79, 0x48, 0xb0, 0x7d, 0x62, 0xae, 0x1b, 0x05, 0x67, 0x3d, 0x47, + 0x0d, 0xf2, 0xb4, 0x72, 0x18, 0xcb, 0xe5, 0x6c, 0x3d, 0xd1, 0xa7, 0x90, 0x50, 0xca, 0xe7, 0xbd, + 0xbb, 0x9a, 0x40, 0x5f, 0xb5, 0x60, 0xd2, 0x73, 0xa2, 0x98, 0xee, 0x38, 0x3d, 0x12, 0x93, 0xfa, + 0xd5, 0xc0, 0x9f, 0x0f, 0x3b, 0xb8, 0xed, 0xab, 0xa9, 0xcf, 0x76, 0x88, 0x79, 0xaf, 0xae, 0xc7, + 0x6e, 0xef, 0x4c, 0x4e, 0x2e, 0xee, 0x4e, 0x18, 0xef, 0xc5, 0x99, 0xed, 0x27, 0xcf, 0x87, 0xc5, + 0x7c, 0x7b, 0x0e, 0x46, 0xc8, 0x76, 0x4c, 0x42, 0xdf, 0xf1, 0xae, 0xe1, 0x45, 0x79, 0xd6, 0xc2, + 0xc4, 0xca, 0x79, 0xa3, 0x1d, 0x27, 0xb0, 0x90, 0xad, 0x1c, 0x7c, 0x46, 0xd2, 0x3d, 0x77, 0xf0, + 0x49, 0x77, 0x9e, 0xfd, 0x95, 0x62, 0xc2, 0xdc, 0xbe, 0x27, 0xa7, 0xd1, 0xac, 0xba, 0x93, 0x2c, + 0x83, 0xc5, 0x00, 0x62, 0x1b, 0x99, 0x27, 0x65, 0x55, 0xdd, 0x69, 0xd9, 0x24, 0x84, 0x93, 0x74, + 0xd1, 0x26, 0x94, 0x36, 0x82, 0x28, 0x96, 0x9b, 0xcb, 0x03, 0xee, 0x63, 0x2f, 0x05, 0x51, 0xcc, + 0x6c, 0x44, 0xf5, 0xda, 0xb4, 0x25, 0xc2, 0x9c, 0x06, 0x7a, 0x1e, 0x86, 0xa3, 0x0d, 0x27, 0xac, + 0x47, 0x73, 0xac, 0x44, 0xc6, 0x00, 0x33, 0x0e, 0xd5, 0x56, 0xa0, 0xaa, 0x41, 0xd8, 0xc4, 0xb3, + 0xbf, 0x63, 0x25, 0x0e, 0xe4, 0x6e, 0xb0, 0x7c, 0x87, 0x2d, 0xe2, 0x53, 0x01, 0x6b, 0x46, 0x58, + 0xfe, 0x48, 0x2a, 0x7b, 0xfc, 0x2d, 0xbd, 0xaa, 0x55, 0xde, 0xa2, 0x3d, 0x4c, 0xb1, 0x2e, 0x8c, + 0x60, 0xcc, 0x0f, 0x59, 0xc9, 0x32, 0x00, 0x85, 0x3c, 0x76, 0x9d, 0x66, 0x29, 0x8c, 0x3d, 0x2b, + 0x0a, 0xd8, 0x9f, 0xb3, 0x60, 0x68, 0xd6, 0xa9, 0x6d, 0x06, 0xeb, 0xeb, 0xe8, 0x49, 0x28, 0xd7, + 0xdb, 0xa1, 0x59, 0x91, 0x40, 0xf9, 0xd9, 0xe6, 0x45, 0x3b, 0x56, 0x18, 0x74, 0xea, 0xaf, 0x3b, + 0x35, 0x59, 0x10, 0xa3, 0xc8, 0xa7, 0xfe, 0x05, 0xd6, 0x82, 0x05, 0x84, 0x0e, 0x7f, 0xd3, 0xd9, + 0x96, 0x0f, 0xa7, 0x4f, 0x03, 0x97, 0x34, 0x08, 0x9b, 0x78, 0xf6, 0xbf, 0xb0, 0x60, 0x62, 0xd6, + 0x89, 0xdc, 0xda, 0x4c, 0x3b, 0xde, 0x98, 0x75, 0xe3, 0xb5, 0x76, 0x6d, 0x93, 0xc4, 0xbc, 0x70, + 0x0a, 0xe5, 0xb2, 0x1d, 0xd1, 0x15, 0xa8, 0x36, 0xfb, 0x8a, 0xcb, 0x6b, 0xa2, 0x1d, 0x2b, 0x0c, + 0xf4, 0x1a, 0x0c, 0xb7, 0x9c, 0x28, 0xba, 0x15, 0x84, 0x75, 0x4c, 0xd6, 0xf3, 0x29, 0xad, 0x54, + 0x25, 0xb5, 0x90, 0xc4, 0x98, 0xac, 0x8b, 0xd8, 0x1a, 0xdd, 0x3f, 0x36, 0x89, 0xd9, 0x3f, 0x67, + 0xc1, 0xc9, 0x59, 0xe2, 0x84, 0x24, 0x64, 0x95, 0x98, 0xd4, 0x8b, 0xa0, 0x57, 0xa1, 0x1c, 0xd3, + 0x16, 0xca, 0x91, 0x95, 0x2f, 0x47, 0x2c, 0x2a, 0x66, 0x55, 0x74, 0x8e, 0x15, 0x19, 0xfb, 0xd3, + 0x16, 0x9c, 0xce, 0xe2, 0x65, 0xce, 0x0b, 0xda, 0xf5, 0x7b, 0xc1, 0xd0, 0xdf, 0xb2, 0x60, 0x84, + 0x45, 0x1a, 0xcc, 0x93, 0xd8, 0x71, 0xbd, 0xae, 0x2a, 0x90, 0x56, 0x9f, 0x55, 0x20, 0xcf, 0xc2, + 0xc0, 0x46, 0xd0, 0x24, 0xe9, 0x28, 0x99, 0x4b, 0x41, 0x93, 0x60, 0x06, 0x41, 0x4f, 0xd3, 0x49, + 0xe8, 0xfa, 0xb1, 0x43, 0x97, 0xa3, 0x3c, 0x89, 0x19, 0xe7, 0x13, 0x50, 0x35, 0x63, 0x13, 0xc7, + 0xfe, 0xdd, 0x0a, 0x0c, 0x89, 0x90, 0xae, 0xbe, 0x0b, 0xf9, 0x48, 0x07, 0x54, 0xa1, 0xa7, 0x03, + 0x2a, 0x82, 0xc1, 0x1a, 0x2b, 0x47, 0x2b, 0x36, 0x17, 0x57, 0x72, 0x89, 0x01, 0xe4, 0x15, 0x6e, + 0x35, 0x5b, 0xfc, 0x3f, 0x16, 0xa4, 0xd0, 0x67, 0x2d, 0x18, 0xaf, 0x05, 0xbe, 0x4f, 0x6a, 0xda, + 0xf2, 0x1d, 0xc8, 0x23, 0xd4, 0x6b, 0x2e, 0xd9, 0xa9, 0x3e, 0xc4, 0x4e, 0x01, 0x70, 0x9a, 0x3c, + 0x7a, 0x01, 0x46, 0xf9, 0x98, 0x5d, 0x4f, 0x1c, 0x1f, 0xe9, 0xe2, 0x80, 0x26, 0x10, 0x27, 0x71, + 0xd1, 0x14, 0x3f, 0x86, 0x13, 0x65, 0xf8, 0x06, 0xb5, 0x97, 0xdd, 0x28, 0xc0, 0x67, 0x60, 0xa0, + 0x10, 0x50, 0x48, 0xd6, 0x43, 0x12, 0x6d, 0x88, 0x90, 0x37, 0x66, 0x75, 0x0f, 0xdd, 0x5d, 0x09, + 0x0e, 0xdc, 0xd5, 0x13, 0xce, 0xe8, 0x1d, 0x6d, 0x0a, 0x0f, 0x48, 0x39, 0x0f, 0x79, 0x2e, 0x3e, + 0x73, 0x4f, 0x47, 0xc8, 0x24, 0x94, 0x98, 0xea, 0x62, 0xd6, 0x7e, 0x91, 0xa7, 0x7d, 0x32, 0xc5, + 0x86, 0x79, 0x3b, 0x9a, 0x87, 0x63, 0xa9, 0xd2, 0x86, 0x91, 0x38, 0xe6, 0x51, 0x29, 0x7e, 0xa9, + 0xa2, 0x88, 0x11, 0xee, 0x7a, 0xc2, 0xf4, 0x8e, 0x0d, 0xef, 0xe1, 0x1d, 0xeb, 0xa8, 0xc0, 0x6a, + 0x7e, 0x00, 0xf3, 0x62, 0x2e, 0x03, 0xd0, 0x57, 0x14, 0xf5, 0xa7, 0x52, 0x51, 0xd4, 0xa3, 0x8c, + 0x81, 0xeb, 0xf9, 0x30, 0xb0, 0xff, 0x90, 0xe9, 0x7b, 0x19, 0x02, 0xfd, 0x3f, 0x2d, 0x90, 0xdf, + 0x75, 0xce, 0xa9, 0x6d, 0x10, 0x3a, 0x65, 0xd0, 0xdb, 0x61, 0x4c, 0x39, 0x56, 0xb8, 0x49, 0x64, + 0xb1, 0x59, 0xa3, 0x2c, 0x7f, 0x9c, 0x80, 0xe2, 0x14, 0x36, 0x9a, 0x86, 0x0a, 0x1d, 0x27, 0xfe, + 0x28, 0xd7, 0xfb, 0xca, 0x79, 0x33, 0xb3, 0xb2, 0x20, 0x9e, 0xd2, 0x38, 0x28, 0x80, 0xe3, 0xcc, + 0x1e, 0xa7, 0x1c, 0x54, 0x3b, 0x7e, 0xed, 0x2e, 0x0b, 0xe0, 0xb0, 0x3c, 0xb2, 0xc5, 0x74, 0x47, + 0xb8, 0xbb, 0x6f, 0xfb, 0xdf, 0x95, 0x60, 0x34, 0x21, 0x19, 0xf7, 0x69, 0x30, 0x3c, 0x09, 0x65, + 0xa9, 0xc3, 0xd3, 0x95, 0xbe, 0x94, 0xa2, 0x57, 0x18, 0x54, 0x69, 0xad, 0x69, 0xad, 0x9a, 0x36, + 0x70, 0x0c, 0x85, 0x8b, 0x4d, 0x3c, 0x26, 0x94, 0x63, 0x2f, 0x9a, 0xf3, 0x5c, 0xe2, 0xc7, 0x9c, + 0xcd, 0x7c, 0x84, 0xf2, 0xea, 0x62, 0xd5, 0xec, 0x54, 0x0b, 0xe5, 0x14, 0x00, 0xa7, 0xc9, 0xa3, + 0x8f, 0x5a, 0x30, 0xea, 0xdc, 0x8a, 0x74, 0xcd, 0x74, 0x11, 0x2f, 0x7d, 0x40, 0x25, 0x95, 0x28, + 0xc3, 0xce, 0xcf, 0x24, 0x12, 0x4d, 0x38, 0x49, 0x14, 0xbd, 0x6e, 0x01, 0x22, 0xdb, 0xa4, 0x26, + 0x23, 0xba, 0x05, 0x2f, 0x83, 0x79, 0xf8, 0x1f, 0xce, 0x77, 0xf5, 0xcb, 0xa5, 0x7a, 0x77, 0x3b, + 0xce, 0xe0, 0x01, 0x5d, 0x06, 0x54, 0x77, 0x23, 0x67, 0xcd, 0x23, 0x74, 0x77, 0x29, 0x72, 0x9f, + 0x45, 0x28, 0xc0, 0x19, 0x31, 0xce, 0x68, 0xbe, 0x0b, 0x03, 0x67, 0x3c, 0xc5, 0x66, 0x59, 0x18, + 0x6c, 0x77, 0xae, 0x85, 0x1e, 0xd3, 0x12, 0xe6, 0x2c, 0x13, 0xed, 0x58, 0x61, 0xd8, 0x7f, 0x59, + 0x54, 0x4b, 0x59, 0xa7, 0x2f, 0x38, 0x46, 0x18, 0xb5, 0x75, 0xf7, 0x61, 0xd4, 0x3a, 0xc8, 0xab, + 0x3b, 0xa3, 0x3f, 0x91, 0x00, 0x5c, 0xb8, 0x47, 0x09, 0xc0, 0x3f, 0x6d, 0x25, 0xaa, 0xe9, 0x0d, + 0x3f, 0xf3, 0x52, 0xbe, 0xa9, 0x13, 0x53, 0x3c, 0x00, 0x2d, 0xa5, 0x57, 0x52, 0x71, 0x87, 0x4f, + 0x42, 0x79, 0xdd, 0x73, 0x58, 0x0d, 0x18, 0xb6, 0x50, 0x8d, 0xe0, 0xb8, 0x0b, 0xa2, 0x1d, 0x2b, + 0x0c, 0x2a, 0xf5, 0x8d, 0x4e, 0xf7, 0x25, 0xb5, 0xff, 0x43, 0x11, 0x86, 0x0d, 0x8d, 0x9f, 0x69, + 0xbe, 0x59, 0xf7, 0x99, 0xf9, 0x56, 0xd8, 0x87, 0xf9, 0xf6, 0x53, 0x50, 0xa9, 0x49, 0x6d, 0x94, + 0xcf, 0xed, 0x00, 0x69, 0x1d, 0xa7, 0x15, 0x92, 0x6a, 0xc2, 0x9a, 0x26, 0xba, 0x98, 0x48, 0x32, + 0x4d, 0xf8, 0x05, 0xb2, 0xb2, 0x40, 0x85, 0x46, 0xeb, 0x7e, 0x26, 0x1d, 0xda, 0x50, 0xda, 0x3b, + 0xb4, 0xc1, 0xfe, 0xa6, 0xa5, 0x3e, 0xee, 0x11, 0x54, 0x13, 0xba, 0x99, 0xac, 0x26, 0x74, 0x3e, + 0x97, 0x61, 0xee, 0x51, 0x46, 0xe8, 0x2a, 0x0c, 0xcd, 0x05, 0xcd, 0xa6, 0xe3, 0xd7, 0xd1, 0x0f, + 0xc2, 0x50, 0x8d, 0xff, 0x14, 0x3e, 0x34, 0x76, 0xce, 0x2e, 0xa0, 0x58, 0xc2, 0xd0, 0xc3, 0x30, + 0xe0, 0x84, 0x0d, 0xe9, 0x37, 0x63, 0xf1, 0x7b, 0x33, 0x61, 0x23, 0xc2, 0xac, 0xd5, 0xfe, 0x27, + 0x03, 0xc0, 0xc2, 0x66, 0x9c, 0x90, 0xd4, 0x57, 0x03, 0x56, 0xd4, 0xf7, 0x50, 0x4f, 0xa7, 0xf5, + 0xa6, 0xee, 0x7e, 0x3e, 0xa1, 0x36, 0x4e, 0x29, 0x8b, 0x47, 0x7d, 0x4a, 0x99, 0x7d, 0xf0, 0x3c, + 0x70, 0x1f, 0x1d, 0x3c, 0xdb, 0x9f, 0xb4, 0x00, 0xa9, 0x20, 0x28, 0x1d, 0x19, 0x32, 0x0d, 0x15, + 0x15, 0x75, 0x25, 0x0c, 0x40, 0x2d, 0x22, 0x24, 0x00, 0x6b, 0x9c, 0x3e, 0x76, 0xf2, 0x8f, 0x49, + 0xf9, 0x5d, 0x4c, 0xa6, 0x4e, 0x30, 0xa9, 0x2f, 0xc4, 0xb9, 0xfd, 0x7b, 0x05, 0x78, 0x80, 0x9b, + 0x0e, 0x4b, 0x8e, 0xef, 0x34, 0x48, 0x93, 0x72, 0xd5, 0x6f, 0xac, 0x4f, 0x8d, 0x6e, 0x21, 0x5d, + 0x99, 0xe8, 0x70, 0xd0, 0xb5, 0xcb, 0xd7, 0x1c, 0x5f, 0x65, 0x0b, 0xbe, 0x1b, 0x63, 0xd6, 0x39, + 0x8a, 0xa0, 0x2c, 0xaf, 0xce, 0x11, 0xb2, 0x38, 0x27, 0x42, 0x4a, 0x2c, 0x09, 0x2d, 0x4b, 0xb0, + 0x22, 0x44, 0x55, 0xa9, 0x17, 0xd4, 0x36, 0x31, 0x69, 0x05, 0x69, 0x55, 0xba, 0x28, 0xda, 0xb1, + 0xc2, 0xb0, 0x9b, 0x30, 0x2e, 0xc7, 0xb0, 0x75, 0x85, 0x74, 0x30, 0x59, 0xa7, 0xfa, 0xa7, 0x26, + 0x9b, 0x8c, 0xdb, 0x7c, 0x94, 0xfe, 0x99, 0x33, 0x81, 0x38, 0x89, 0x2b, 0xeb, 0xfc, 0x16, 0xb2, + 0xeb, 0xfc, 0xda, 0xbf, 0x67, 0x41, 0x5a, 0x01, 0x1a, 0x55, 0x4d, 0xad, 0x5d, 0xab, 0x9a, 0xee, + 0xa3, 0x2e, 0xe8, 0x7b, 0x60, 0xd8, 0x89, 0xa9, 0x85, 0xc3, 0xbd, 0x11, 0xc5, 0xbb, 0x3b, 0x03, + 0x5c, 0x0a, 0xea, 0xee, 0xba, 0xcb, 0xbc, 0x10, 0x66, 0x77, 0xf6, 0xeb, 0x16, 0x54, 0xe6, 0xc3, + 0xce, 0xfe, 0x33, 0xce, 0xba, 0xf3, 0xc9, 0x0a, 0xfb, 0xca, 0x27, 0x93, 0x19, 0x6b, 0xc5, 0x5e, + 0x19, 0x6b, 0xf6, 0x5f, 0x0f, 0xc0, 0xf1, 0xae, 0x14, 0x4a, 0x74, 0x0e, 0x46, 0xd4, 0x57, 0x92, + 0x2e, 0xc8, 0x8a, 0x19, 0x83, 0xac, 0x61, 0x38, 0x81, 0xd9, 0xc7, 0x52, 0x5d, 0x80, 0x13, 0x21, + 0x79, 0xb5, 0x4d, 0xda, 0x64, 0x66, 0x3d, 0x26, 0x61, 0x95, 0xd4, 0x02, 0xbf, 0xce, 0xcb, 0x02, + 0x17, 0x67, 0x1f, 0xbc, 0xbd, 0x33, 0x79, 0x02, 0x77, 0x83, 0x71, 0xd6, 0x33, 0xa8, 0x05, 0xa3, + 0x9e, 0x69, 0x3b, 0x8b, 0x2d, 0xdb, 0x5d, 0x99, 0xdd, 0x6a, 0xb6, 0x26, 0x9a, 0x71, 0x92, 0x40, + 0xd2, 0x00, 0x2f, 0xdd, 0x23, 0x03, 0xfc, 0x23, 0xda, 0x00, 0xe7, 0x21, 0x3d, 0xef, 0xce, 0x39, + 0x85, 0xb6, 0x1f, 0x0b, 0xfc, 0x20, 0x36, 0xf5, 0x8b, 0x50, 0x96, 0xe1, 0x8e, 0x7d, 0x85, 0x09, + 0x9a, 0xfd, 0xf4, 0x90, 0xed, 0x8f, 0xc3, 0x9b, 0xcf, 0x87, 0xa1, 0x31, 0x98, 0x57, 0x83, 0x78, + 0xc6, 0xf3, 0x82, 0x5b, 0xd4, 0x5c, 0xb9, 0x16, 0x11, 0xe1, 0x13, 0xb3, 0xef, 0x14, 0x20, 0x63, + 0x7b, 0x49, 0xd7, 0xa4, 0xb6, 0x91, 0x12, 0x6b, 0x72, 0x7f, 0x76, 0x12, 0xda, 0xe6, 0x21, 0xa1, + 0xdc, 0x1a, 0x78, 0x57, 0xde, 0xdb, 0x63, 0x1d, 0x25, 0xaa, 0x24, 0xa5, 0x8a, 0x14, 0x7d, 0x06, + 0x40, 0x9b, 0xb6, 0x22, 0x6b, 0x4b, 0x85, 0x79, 0x68, 0x0b, 0x18, 0x1b, 0x58, 0xe8, 0x79, 0x18, + 0x76, 0xfd, 0x28, 0x76, 0x3c, 0xef, 0x92, 0xeb, 0xc7, 0xc2, 0xed, 0xab, 0xcc, 0x9e, 0x05, 0x0d, + 0xc2, 0x26, 0xde, 0x99, 0xb7, 0x19, 0xdf, 0x6f, 0x3f, 0xdf, 0x7d, 0x03, 0x4e, 0x5f, 0x74, 0x63, + 0x95, 0x6b, 0xa8, 0xe6, 0x1b, 0xb5, 0x5c, 0x95, 0xac, 0xb2, 0x7a, 0x66, 0xd7, 0x1a, 0xb9, 0x7e, + 0x85, 0x64, 0x6a, 0x62, 0x3a, 0xd7, 0xcf, 0x3e, 0x07, 0x27, 0x2f, 0xba, 0xf1, 0x05, 0xd7, 0x23, + 0xfb, 0x24, 0x62, 0xff, 0xce, 0x20, 0x8c, 0x98, 0x79, 0xf5, 0xfb, 0x11, 0xd7, 0x9f, 0xa6, 0xc6, + 0xa9, 0x78, 0x3b, 0x57, 0x9d, 0xe8, 0xde, 0x38, 0x70, 0x92, 0x7f, 0xf6, 0x88, 0x19, 0xf6, 0xa9, + 0xa6, 0x89, 0x4d, 0x06, 0xd0, 0x2d, 0x28, 0xad, 0xb3, 0x5c, 0xb4, 0x62, 0x1e, 0x91, 0x44, 0x59, + 0x23, 0xaa, 0x97, 0x23, 0xcf, 0x66, 0xe3, 0xf4, 0xa8, 0x4d, 0x11, 0x26, 0x53, 0xa0, 0x8d, 0x0c, + 0x01, 0xa1, 0xac, 0x14, 0x46, 0x2f, 0x95, 0x50, 0xba, 0x0b, 0x95, 0x90, 0x10, 0xd0, 0x83, 0xf7, + 0x48, 0x40, 0xb3, 0xbc, 0xc2, 0x78, 0x83, 0x59, 0xbc, 0x22, 0xa5, 0x69, 0x88, 0x0d, 0x82, 0x91, + 0x57, 0x98, 0x00, 0xe3, 0x34, 0x3e, 0xfa, 0xa0, 0x12, 0xf1, 0xe5, 0x3c, 0x3c, 0xe6, 0xe6, 0x8c, + 0x3e, 0x6c, 0xe9, 0xfe, 0xc9, 0x02, 0x8c, 0x5d, 0xf4, 0xdb, 0x2b, 0x17, 0x57, 0xda, 0x6b, 0x9e, + 0x5b, 0xbb, 0x42, 0x3a, 0x54, 0x84, 0x6f, 0x92, 0xce, 0xc2, 0xbc, 0x58, 0x41, 0x6a, 0xce, 0x5c, + 0xa1, 0x8d, 0x98, 0xc3, 0xa8, 0x30, 0x5a, 0x77, 0xfd, 0x06, 0x09, 0x5b, 0xa1, 0x2b, 0x9c, 0xd9, + 0x86, 0x30, 0xba, 0xa0, 0x41, 0xd8, 0xc4, 0xa3, 0x7d, 0x07, 0xb7, 0x7c, 0x12, 0xa6, 0x4d, 0xff, + 0x65, 0xda, 0x88, 0x39, 0x8c, 0x22, 0xc5, 0x61, 0x5b, 0xf8, 0x8a, 0x0c, 0xa4, 0x55, 0xda, 0x88, + 0x39, 0x8c, 0xae, 0xf4, 0xa8, 0xbd, 0xc6, 0x02, 0xb5, 0x52, 0xf9, 0x53, 0x55, 0xde, 0x8c, 0x25, + 0x9c, 0xa2, 0x6e, 0x92, 0xce, 0xbc, 0x13, 0x3b, 0xe9, 0x24, 0xd3, 0x2b, 0xbc, 0x19, 0x4b, 0x38, + 0x2b, 0x5c, 0x9c, 0x1c, 0x8e, 0xef, 0xba, 0xc2, 0xc5, 0x49, 0xf6, 0x7b, 0x78, 0x1c, 0xfe, 0x66, + 0x01, 0x46, 0xcc, 0xf0, 0x4a, 0xd4, 0x48, 0x99, 0xe9, 0xcb, 0x5d, 0x75, 0xef, 0x7f, 0x3c, 0xeb, + 0x4e, 0xd8, 0x86, 0x1b, 0x07, 0xad, 0xe8, 0x29, 0xe2, 0x37, 0x5c, 0x9f, 0xb0, 0x58, 0x0d, 0x1e, + 0x96, 0x99, 0x88, 0xdd, 0x9c, 0x0b, 0xea, 0xe4, 0x6e, 0xec, 0xfc, 0x7b, 0x71, 0x6f, 0xce, 0x0d, + 0x38, 0xde, 0x95, 0xcd, 0xdc, 0x87, 0xd9, 0xb3, 0x67, 0xb5, 0x09, 0x1b, 0xc3, 0x30, 0xed, 0x58, + 0x16, 0xec, 0x9b, 0x83, 0xe3, 0x7c, 0xf1, 0x52, 0x4a, 0x2c, 0x39, 0x55, 0x65, 0xa8, 0xb3, 0xd3, + 0x9a, 0xeb, 0x69, 0x20, 0xee, 0xc6, 0xb7, 0x3f, 0x65, 0xc1, 0x68, 0x22, 0xc1, 0x3c, 0x27, 0x03, + 0x8d, 0xad, 0xee, 0x80, 0x45, 0x18, 0xb3, 0x8c, 0x8f, 0x22, 0x53, 0xe0, 0x7a, 0x75, 0x6b, 0x10, + 0x36, 0xf1, 0xec, 0xcf, 0x15, 0xa0, 0x2c, 0x43, 0x8a, 0xfa, 0x60, 0xe5, 0x13, 0x16, 0x8c, 0xaa, + 0x13, 0x32, 0xe6, 0xd2, 0x2c, 0xe4, 0x91, 0xef, 0x46, 0x39, 0x50, 0x4e, 0x11, 0x7f, 0x3d, 0xd0, + 0xbb, 0x05, 0x6c, 0x12, 0xc3, 0x49, 0xda, 0xe8, 0x3a, 0x40, 0xd4, 0x89, 0x62, 0xd2, 0x34, 0x9c, + 0xab, 0xb6, 0x31, 0xcb, 0xa6, 0x6a, 0x41, 0x48, 0xe8, 0x9c, 0xba, 0x1a, 0xd4, 0x49, 0x55, 0x61, + 0x6a, 0xb3, 0x4d, 0xb7, 0x61, 0xa3, 0x27, 0xfb, 0xd7, 0x0b, 0x70, 0x2c, 0xcd, 0x12, 0x7a, 0x37, + 0x8c, 0x48, 0xea, 0xc6, 0x26, 0x5c, 0x06, 0x44, 0x8d, 0x60, 0x03, 0x76, 0x67, 0x67, 0x72, 0xb2, + 0xfb, 0x4e, 0xe3, 0x29, 0x13, 0x05, 0x27, 0x3a, 0xe3, 0xc7, 0x94, 0xe2, 0x3c, 0x7d, 0xb6, 0x33, + 0xd3, 0x6a, 0x89, 0xb3, 0x46, 0xe3, 0x98, 0xd2, 0x84, 0xe2, 0x14, 0x36, 0x5a, 0x81, 0x93, 0x46, + 0xcb, 0x55, 0xe2, 0x36, 0x36, 0xd6, 0x82, 0x50, 0xee, 0xfa, 0x1e, 0xd6, 0xc1, 0xa3, 0xdd, 0x38, + 0x38, 0xf3, 0x49, 0x6a, 0x61, 0xd4, 0x9c, 0x96, 0x53, 0x73, 0xe3, 0x8e, 0xf0, 0x16, 0x2b, 0x79, + 0x38, 0x27, 0xda, 0xb1, 0xc2, 0xb0, 0x7f, 0x65, 0x00, 0x8e, 0xf1, 0x68, 0x49, 0xa2, 0xe2, 0x0e, + 0xd1, 0xbb, 0xa1, 0x12, 0xc5, 0x4e, 0xc8, 0xb7, 0xfc, 0xd6, 0xbe, 0x65, 0x80, 0x4e, 0x2f, 0x97, + 0x9d, 0x60, 0xdd, 0x1f, 0x7a, 0x89, 0xd5, 0xe6, 0x72, 0xa3, 0x0d, 0xd6, 0x7b, 0xe1, 0xee, 0x1c, + 0x0a, 0x17, 0x54, 0x0f, 0xd8, 0xe8, 0x0d, 0xfd, 0x18, 0x94, 0x5a, 0x1b, 0x4e, 0x24, 0xbd, 0x5d, + 0x8f, 0xcb, 0x05, 0xb7, 0x42, 0x1b, 0xef, 0xec, 0x4c, 0x9e, 0x4a, 0xbf, 0x2a, 0x03, 0x60, 0xfe, + 0x90, 0x29, 0x2e, 0x07, 0xf6, 0xbe, 0x3f, 0xa6, 0x1e, 0x76, 0xaa, 0x97, 0x66, 0xd2, 0x37, 0x8e, + 0xcc, 0xb3, 0x56, 0x2c, 0xa0, 0x74, 0x71, 0x6f, 0x70, 0x92, 0x75, 0x8a, 0x3c, 0x98, 0x54, 0xdd, + 0x97, 0x34, 0x08, 0x9b, 0x78, 0xe8, 0x93, 0xdd, 0xb1, 0xb4, 0x43, 0x87, 0x90, 0x68, 0xd1, 0x67, + 0x14, 0xad, 0x7d, 0x1e, 0x2a, 0x82, 0xd5, 0xd5, 0x00, 0x9d, 0x83, 0x11, 0xee, 0x4c, 0x99, 0x0d, + 0x1d, 0xbf, 0xb6, 0x91, 0x76, 0x81, 0xac, 0x1a, 0x30, 0x9c, 0xc0, 0xb4, 0x97, 0x60, 0xa0, 0x4f, + 0x69, 0xd5, 0xd7, 0xce, 0xf6, 0x45, 0x28, 0xd3, 0xee, 0xe4, 0xf6, 0x25, 0x8f, 0x2e, 0x03, 0x28, + 0xcb, 0xdb, 0x08, 0x91, 0x0d, 0x45, 0xd7, 0x91, 0x51, 0x07, 0x6a, 0x09, 0x2d, 0x44, 0x51, 0x9b, + 0x4d, 0x3b, 0x0a, 0x44, 0x8f, 0x41, 0x91, 0x6c, 0xb7, 0xd2, 0xe1, 0x05, 0xe7, 0xb7, 0x5b, 0x6e, + 0x48, 0x22, 0x8a, 0x44, 0xb6, 0x5b, 0xe8, 0x0c, 0x14, 0xdc, 0xba, 0x98, 0x91, 0x20, 0x70, 0x0a, + 0x0b, 0xf3, 0xb8, 0xe0, 0xd6, 0xed, 0x6d, 0xa8, 0xa8, 0xeb, 0x0f, 0xd1, 0xa6, 0xb4, 0x4d, 0xac, + 0x3c, 0xe2, 0x4d, 0x65, 0xbf, 0x3d, 0xac, 0x92, 0x36, 0x80, 0xae, 0x5b, 0x90, 0x97, 0x2e, 0x3b, + 0x0b, 0x03, 0xb5, 0x40, 0x54, 0x9c, 0x29, 0xeb, 0x6e, 0x98, 0x51, 0xc2, 0x20, 0xf6, 0x0d, 0x18, + 0xbb, 0xe2, 0x07, 0xb7, 0xd8, 0x2d, 0x45, 0xac, 0x28, 0x2f, 0xed, 0x78, 0x9d, 0xfe, 0x48, 0x9b, + 0xc0, 0x0c, 0x8a, 0x39, 0x4c, 0x95, 0x0b, 0x2d, 0xf4, 0x2a, 0x17, 0x6a, 0x7f, 0xc8, 0x82, 0x11, + 0x95, 0x00, 0x7d, 0x71, 0x6b, 0x93, 0xf6, 0xdb, 0x08, 0x83, 0x76, 0x2b, 0xdd, 0x2f, 0xbb, 0x69, + 0x15, 0x73, 0x98, 0x59, 0x19, 0xa0, 0xb0, 0x47, 0x65, 0x80, 0xb3, 0x30, 0xb0, 0xe9, 0xfa, 0xf5, + 0xb4, 0xcb, 0xf0, 0x8a, 0xeb, 0xd7, 0x31, 0x83, 0x50, 0x16, 0x8e, 0x29, 0x16, 0xa4, 0xf1, 0x71, + 0x0e, 0x46, 0xd6, 0xda, 0xae, 0x57, 0x97, 0xd5, 0x86, 0x53, 0xcb, 0x65, 0xd6, 0x80, 0xe1, 0x04, + 0x26, 0x7a, 0x06, 0x60, 0xcd, 0xf5, 0x9d, 0xb0, 0xb3, 0xa2, 0xad, 0x1d, 0xa5, 0x00, 0x67, 0x15, + 0x04, 0x1b, 0x58, 0xf6, 0x67, 0x8a, 0x30, 0x96, 0x4c, 0x03, 0xef, 0xc3, 0x7d, 0xf0, 0x18, 0x94, + 0x58, 0x66, 0x78, 0xfa, 0xd3, 0xf2, 0x02, 0xbd, 0x1c, 0x86, 0x22, 0x18, 0xe4, 0x8b, 0x39, 0x9f, + 0xdb, 0x2a, 0x15, 0x93, 0xca, 0xcf, 0xc8, 0xa2, 0x72, 0x85, 0xdb, 0x56, 0x90, 0x42, 0x1f, 0xb5, + 0x60, 0x28, 0x68, 0x99, 0x65, 0x26, 0xdf, 0x95, 0x67, 0x8a, 0xbc, 0xc8, 0x43, 0x15, 0x3b, 0x3e, + 0xf5, 0xe9, 0xe5, 0xe7, 0x90, 0xa4, 0xcf, 0xfc, 0x28, 0x8c, 0x98, 0x98, 0x7b, 0x6d, 0xfa, 0xca, + 0xe6, 0xa6, 0xef, 0x13, 0xe6, 0xa4, 0x10, 0x45, 0x00, 0xfa, 0x58, 0x6e, 0xd7, 0xa0, 0x54, 0x53, + 0xa1, 0x4b, 0x77, 0x55, 0xa3, 0x5e, 0x15, 0xc9, 0x62, 0xc7, 0xc2, 0xbc, 0x37, 0xfb, 0x9b, 0x96, + 0x31, 0x3f, 0x30, 0x89, 0x16, 0xea, 0x28, 0x84, 0x62, 0x63, 0x6b, 0x53, 0xa8, 0xf9, 0xcb, 0x39, + 0x0d, 0xef, 0xc5, 0xad, 0x4d, 0x3d, 0xc7, 0xcd, 0x56, 0x4c, 0x89, 0xf5, 0xe1, 0x0c, 0x4f, 0xd4, + 0x8a, 0x28, 0xee, 0x5d, 0x2b, 0xc2, 0x7e, 0xbd, 0x00, 0xc7, 0xbb, 0x26, 0x15, 0x7a, 0x0d, 0x4a, + 0x21, 0x7d, 0x4b, 0xf1, 0x7a, 0x8b, 0xb9, 0x55, 0x77, 0x88, 0x16, 0xea, 0x5a, 0x7d, 0x26, 0xdb, + 0x31, 0x27, 0x89, 0x2e, 0x03, 0xd2, 0x01, 0x76, 0xca, 0x13, 0xcf, 0x5f, 0x59, 0x45, 0xe1, 0xcc, + 0x74, 0x61, 0xe0, 0x8c, 0xa7, 0xd0, 0x0b, 0x69, 0x87, 0x7e, 0x31, 0x79, 0x92, 0xb4, 0x9b, 0x6f, + 0xde, 0xfe, 0xad, 0x02, 0x8c, 0x26, 0xaa, 0x7e, 0x22, 0x0f, 0xca, 0xc4, 0x63, 0xc7, 0x7c, 0x52, + 0xd9, 0x1c, 0xf4, 0x0e, 0x0f, 0xa5, 0x20, 0xcf, 0x8b, 0x7e, 0xb1, 0xa2, 0x70, 0x7f, 0x04, 0xe7, + 0x9c, 0x83, 0x11, 0xc9, 0xd0, 0xbb, 0x9c, 0xa6, 0x27, 0x06, 0x50, 0xcd, 0xd1, 0xf3, 0x06, 0x0c, + 0x27, 0x30, 0xed, 0xdf, 0x2f, 0xc2, 0x04, 0x3f, 0x17, 0xad, 0xab, 0x99, 0xb7, 0x24, 0xfd, 0x09, + 0x3f, 0xaf, 0x6b, 0xf3, 0x5a, 0x79, 0x5c, 0x54, 0xdd, 0x8b, 0x50, 0x5f, 0x31, 0xa5, 0x5f, 0x4c, + 0xc5, 0x94, 0xf2, 0x2d, 0x5e, 0xe3, 0x90, 0x38, 0xfa, 0xee, 0x0a, 0x32, 0xfd, 0x07, 0x05, 0x18, + 0x4f, 0xdd, 0x47, 0x86, 0x3e, 0x93, 0xbc, 0xc2, 0xc2, 0xca, 0xe3, 0xcc, 0x68, 0xd7, 0x2b, 0xaa, + 0xf6, 0x77, 0x91, 0xc5, 0x3d, 0x5a, 0x2a, 0xf6, 0x37, 0x0a, 0x30, 0x96, 0xbc, 0x48, 0xed, 0x3e, + 0x1c, 0xa9, 0xb7, 0x42, 0x85, 0xdd, 0x15, 0xc4, 0xee, 0xff, 0xe7, 0x47, 0x4e, 0xfc, 0x5a, 0x16, + 0xd9, 0x88, 0x35, 0xfc, 0xbe, 0xb8, 0x1f, 0xc4, 0xfe, 0x47, 0x16, 0x9c, 0xe2, 0x6f, 0x99, 0x9e, + 0x87, 0x7f, 0x23, 0x6b, 0x74, 0x5f, 0xce, 0x97, 0xc1, 0x54, 0x4d, 0xe9, 0xbd, 0xc6, 0x97, 0x5d, + 0xd7, 0x2d, 0xb8, 0x4d, 0x4e, 0x85, 0xfb, 0x90, 0xd9, 0x7d, 0x4d, 0x06, 0xfb, 0x1b, 0x45, 0xd0, + 0x37, 0x94, 0x23, 0x57, 0xe4, 0xec, 0xe7, 0x52, 0x5b, 0xbb, 0xda, 0xf1, 0x6b, 0xfa, 0x2e, 0xf4, + 0x72, 0x2a, 0x65, 0xff, 0x67, 0x2d, 0x18, 0x76, 0x7d, 0x37, 0x76, 0x1d, 0xe6, 0xb2, 0xc9, 0xe7, + 0x9a, 0x61, 0x45, 0x6e, 0x81, 0xf7, 0x1c, 0x84, 0xe6, 0x39, 0xa5, 0x22, 0x86, 0x4d, 0xca, 0xe8, + 0x7d, 0x22, 0xed, 0xa3, 0x98, 0x5b, 0xe1, 0x8b, 0x72, 0x2a, 0xd7, 0xa3, 0x45, 0x0d, 0xaf, 0x38, + 0xcc, 0xa9, 0x5e, 0x0c, 0xa6, 0x5d, 0xa9, 0x6b, 0x1a, 0x94, 0x69, 0xcb, 0x9a, 0x31, 0x27, 0x64, + 0x47, 0x80, 0xba, 0xc7, 0x62, 0x9f, 0x21, 0xf5, 0xd3, 0x50, 0x71, 0xda, 0x71, 0xd0, 0xa4, 0xc3, + 0x24, 0x8e, 0x52, 0x75, 0xd2, 0x80, 0x04, 0x60, 0x8d, 0x63, 0x7f, 0xa6, 0x04, 0xa9, 0x24, 0x7a, + 0xb4, 0x6d, 0xde, 0xae, 0x6f, 0xe5, 0x7b, 0xbb, 0xbe, 0x62, 0x26, 0xeb, 0x86, 0x7d, 0xd4, 0x90, + 0xde, 0x2f, 0x6e, 0x63, 0xbe, 0x98, 0xf6, 0x7e, 0xfd, 0x44, 0x7f, 0xa7, 0x0a, 0x74, 0xae, 0x4e, + 0xf3, 0x9a, 0x69, 0x53, 0x7b, 0x3a, 0xca, 0xf6, 0xba, 0x68, 0xf9, 0xc3, 0xe2, 0x52, 0x24, 0x4c, + 0xa2, 0xb6, 0x17, 0x8b, 0xd9, 0xf0, 0x62, 0x8e, 0xab, 0x8c, 0x77, 0xac, 0x2b, 0xd1, 0xf0, 0xff, + 0xd8, 0x20, 0x9a, 0x74, 0x67, 0x0e, 0x1e, 0xaa, 0x3b, 0x73, 0x28, 0x57, 0x77, 0xe6, 0x33, 0x00, + 0x6c, 0x6e, 0xf3, 0xd0, 0xdf, 0x32, 0xf3, 0x32, 0x29, 0x51, 0x88, 0x15, 0x04, 0x1b, 0x58, 0xf6, + 0x0f, 0x43, 0xb2, 0x94, 0x12, 0x9a, 0x94, 0x95, 0x9b, 0xf8, 0x89, 0x07, 0xcb, 0xba, 0x4a, 0x14, + 0x59, 0xfa, 0x4d, 0x0b, 0xcc, 0x7a, 0x4f, 0xe8, 0x55, 0x5e, 0x58, 0xca, 0xca, 0xe3, 0x64, 0xdc, + 0xe8, 0x77, 0x6a, 0xc9, 0x69, 0xa5, 0x42, 0x34, 0x64, 0x75, 0xa9, 0x33, 0x6f, 0x83, 0xb2, 0x84, + 0xee, 0xcb, 0xa8, 0xfb, 0x20, 0x9c, 0x90, 0x19, 0xdc, 0xd2, 0x47, 0x2f, 0x4e, 0x55, 0xf7, 0x76, + 0xfd, 0x48, 0x7f, 0x4e, 0xa1, 0x97, 0x3f, 0x47, 0xed, 0x52, 0x8b, 0x3d, 0x4b, 0x46, 0x7f, 0xd5, + 0x82, 0xb3, 0x69, 0x06, 0xa2, 0xa5, 0xc0, 0x77, 0xe3, 0x20, 0xac, 0x92, 0x38, 0x76, 0xfd, 0x06, + 0xab, 0xff, 0x79, 0xcb, 0x09, 0xe5, 0x1d, 0x30, 0x4c, 0x50, 0xde, 0x70, 0x42, 0x1f, 0xb3, 0x56, + 0xd4, 0x81, 0x41, 0x1e, 0x1f, 0x2a, 0xac, 0xf5, 0x03, 0xae, 0x8d, 0x8c, 0xe1, 0xd0, 0xdb, 0x05, + 0x1e, 0x9b, 0x8a, 0x05, 0x41, 0xfb, 0x5b, 0x16, 0xa0, 0xe5, 0x2d, 0x12, 0x86, 0x6e, 0xdd, 0x88, + 0x68, 0x65, 0x97, 0x0b, 0x1a, 0x97, 0x08, 0x9a, 0xf5, 0x05, 0x52, 0x97, 0x0b, 0x1a, 0xff, 0xb2, + 0x2f, 0x17, 0x2c, 0xec, 0xef, 0x72, 0x41, 0xb4, 0x0c, 0xa7, 0x9a, 0x7c, 0xbb, 0xc1, 0x2f, 0xec, + 0xe2, 0x7b, 0x0f, 0x95, 0x0a, 0x7b, 0xfa, 0xf6, 0xce, 0xe4, 0xa9, 0xa5, 0x2c, 0x04, 0x9c, 0xfd, + 0x9c, 0xfd, 0x36, 0x40, 0x3c, 0x90, 0x75, 0x2e, 0x2b, 0x16, 0xaf, 0xa7, 0xfb, 0xc5, 0xfe, 0x42, + 0x09, 0xc6, 0x53, 0x37, 0x04, 0xd0, 0xad, 0x5e, 0x77, 0xf0, 0xdf, 0x81, 0xf5, 0x77, 0x37, 0x7b, + 0x7d, 0x85, 0x13, 0xfa, 0x50, 0x72, 0xfd, 0x56, 0x3b, 0xce, 0x27, 0x13, 0x9f, 0x33, 0xb1, 0x40, + 0x3b, 0x34, 0xdc, 0xc5, 0xf4, 0x2f, 0xe6, 0x64, 0xf2, 0x0c, 0x4e, 0x4c, 0x18, 0xe3, 0x03, 0xf7, + 0xc8, 0x1d, 0xf0, 0x61, 0x1d, 0x2a, 0x58, 0xca, 0xc3, 0xb1, 0x98, 0x9a, 0x2c, 0x87, 0x1d, 0x4a, + 0xf2, 0x95, 0x02, 0x0c, 0x1b, 0x1f, 0x0d, 0xfd, 0x72, 0xb2, 0x1a, 0xa2, 0x95, 0xdf, 0x2b, 0xb1, + 0xfe, 0xa7, 0x74, 0xbd, 0x43, 0xfe, 0x4a, 0x8f, 0x77, 0x17, 0x42, 0xbc, 0xb3, 0x33, 0x79, 0x2c, + 0x55, 0xea, 0x30, 0x51, 0x1c, 0xf1, 0xcc, 0x07, 0x60, 0x3c, 0xd5, 0x4d, 0xc6, 0x2b, 0xaf, 0x9a, + 0xaf, 0x7c, 0x60, 0xb7, 0x94, 0x39, 0x64, 0x5f, 0xa6, 0x43, 0x26, 0x12, 0x80, 0x03, 0x8f, 0xf4, + 0xe1, 0x83, 0x4d, 0xe5, 0xf9, 0x17, 0xfa, 0xcc, 0xf3, 0x7f, 0x02, 0xca, 0xad, 0xc0, 0x73, 0x6b, + 0xae, 0x2a, 0xa6, 0xcc, 0x2a, 0x0b, 0xac, 0x88, 0x36, 0xac, 0xa0, 0xe8, 0x16, 0x54, 0x6e, 0xde, + 0x8a, 0xf9, 0xe9, 0x8f, 0xf0, 0x6f, 0xe7, 0x75, 0xe8, 0xa3, 0x8c, 0x16, 0x75, 0xbc, 0x84, 0x35, + 0x2d, 0x64, 0xc3, 0x20, 0x53, 0x82, 0x32, 0x19, 0x88, 0xf9, 0xde, 0x99, 0x76, 0x8c, 0xb0, 0x80, + 0xd8, 0xdf, 0x01, 0x38, 0x99, 0x75, 0x4d, 0x0b, 0x7a, 0x3f, 0x0c, 0x72, 0x1e, 0xf3, 0xb9, 0x09, + 0x2c, 0x8b, 0xc6, 0x45, 0xd6, 0xa1, 0x60, 0x8b, 0xfd, 0xc6, 0x82, 0xa6, 0xa0, 0xee, 0x39, 0x6b, + 0x62, 0x86, 0x1c, 0x0e, 0xf5, 0x45, 0x47, 0x53, 0x5f, 0x74, 0x38, 0x75, 0xcf, 0x59, 0x43, 0xdb, + 0x50, 0x6a, 0xb8, 0x31, 0x71, 0x84, 0x13, 0xe1, 0xc6, 0xa1, 0x10, 0x27, 0x0e, 0xb7, 0xd2, 0xd8, + 0x4f, 0xcc, 0x09, 0xa2, 0x2f, 0x59, 0x30, 0xbe, 0x96, 0x2c, 0x30, 0x22, 0x84, 0xa7, 0x73, 0x08, + 0x57, 0xf1, 0x24, 0x09, 0xf1, 0xdb, 0x35, 0x53, 0x8d, 0x38, 0xcd, 0x0e, 0xfa, 0x88, 0x05, 0x43, + 0xeb, 0xae, 0x67, 0xdc, 0x75, 0x70, 0x08, 0x1f, 0xe7, 0x02, 0x23, 0xa0, 0x77, 0x1c, 0xfc, 0x7f, + 0x84, 0x25, 0xe5, 0x5e, 0x9a, 0x6a, 0xf0, 0xa0, 0x9a, 0x6a, 0xe8, 0x1e, 0x69, 0xaa, 0x8f, 0x5b, + 0x50, 0x51, 0x23, 0x2d, 0x0a, 0x35, 0xbc, 0xfb, 0x10, 0x3f, 0x39, 0xf7, 0x9c, 0xa8, 0xbf, 0x58, + 0x13, 0x47, 0x9f, 0xb5, 0x60, 0xd8, 0x79, 0xad, 0x1d, 0x92, 0x3a, 0xd9, 0x0a, 0x5a, 0x91, 0x28, + 0xfe, 0xf8, 0x72, 0xfe, 0xcc, 0xcc, 0x50, 0x22, 0xf3, 0x64, 0x6b, 0xb9, 0x15, 0x89, 0x44, 0x45, + 0xdd, 0x80, 0x4d, 0x16, 0xd0, 0xcf, 0x68, 0x3d, 0x0e, 0x79, 0x94, 0x00, 0xce, 0xe2, 0xe6, 0xb0, + 0x95, 0xf9, 0x4e, 0x01, 0x26, 0xf7, 0x18, 0x05, 0x74, 0x0e, 0x46, 0x82, 0xb0, 0xe1, 0xf8, 0xee, + 0x6b, 0x66, 0xd5, 0x23, 0x65, 0x29, 0x2e, 0x1b, 0x30, 0x9c, 0xc0, 0x34, 0xcb, 0x61, 0x14, 0xf6, + 0x28, 0x87, 0x71, 0x16, 0x06, 0x42, 0xd2, 0x0a, 0xd2, 0x1b, 0x1e, 0x96, 0xe8, 0xc4, 0x20, 0xe8, + 0x11, 0x28, 0x3a, 0x2d, 0x57, 0x84, 0xc7, 0xa8, 0x7d, 0xdc, 0xcc, 0xca, 0x02, 0xa6, 0xed, 0x89, + 0xea, 0x3c, 0xa5, 0x23, 0xa9, 0xce, 0x43, 0x55, 0x99, 0x38, 0x7f, 0x19, 0xd4, 0xaa, 0x2c, 0x79, + 0x2e, 0x62, 0xbf, 0x5e, 0x84, 0x47, 0x76, 0x9d, 0xf3, 0x3a, 0x56, 0xd6, 0xda, 0x25, 0x56, 0x56, + 0x0e, 0x4f, 0x61, 0xaf, 0xe1, 0x29, 0xf6, 0x18, 0x9e, 0x8f, 0xd0, 0xa5, 0x2c, 0xab, 0x45, 0xe5, + 0x73, 0x41, 0x74, 0xaf, 0xe2, 0x53, 0x62, 0x15, 0x4b, 0x28, 0xd6, 0x74, 0xe9, 0x3e, 0x26, 0x51, + 0x0a, 0xa2, 0x94, 0x87, 0x2a, 0xeb, 0x59, 0xb1, 0x89, 0xaf, 0xdf, 0x5e, 0xf5, 0x25, 0xec, 0xdf, + 0x1e, 0x80, 0xc7, 0xfa, 0xd0, 0x40, 0xe6, 0x2c, 0xb6, 0xfa, 0x9c, 0xc5, 0xdf, 0xe5, 0x9f, 0xe9, + 0x63, 0x99, 0x9f, 0x09, 0xe7, 0xff, 0x99, 0x76, 0xff, 0x42, 0xe8, 0x49, 0x28, 0xbb, 0x7e, 0x44, + 0x6a, 0xed, 0x90, 0xe7, 0x0d, 0x18, 0x59, 0x90, 0x0b, 0xa2, 0x1d, 0x2b, 0x0c, 0xba, 0x2f, 0xad, + 0x39, 0x74, 0xf9, 0x0f, 0xe5, 0x94, 0xfa, 0x6f, 0x26, 0x54, 0x72, 0xb3, 0x68, 0x6e, 0x86, 0x4a, + 0x00, 0x4e, 0xc6, 0xfe, 0x05, 0x0b, 0xce, 0xf4, 0x36, 0x13, 0xd0, 0xd3, 0x30, 0xbc, 0xc6, 0x82, + 0xcf, 0x96, 0x58, 0x80, 0x8b, 0x98, 0x3a, 0xec, 0x7d, 0x75, 0x33, 0x36, 0x71, 0xd0, 0x1c, 0x1c, + 0x37, 0xa3, 0xd6, 0x96, 0x8c, 0xc8, 0x18, 0xe6, 0xc8, 0x58, 0x4d, 0x03, 0x71, 0x37, 0xbe, 0xfd, + 0xed, 0x62, 0x36, 0x5b, 0xdc, 0x9c, 0xdc, 0xcf, 0x6c, 0x16, 0x73, 0xb5, 0xd0, 0x87, 0xc4, 0x2d, + 0x1e, 0xb5, 0xc4, 0x1d, 0xe8, 0x25, 0x71, 0xd1, 0x3c, 0x1c, 0x33, 0xee, 0x6e, 0xe4, 0xc5, 0x20, + 0x78, 0xa4, 0xa4, 0xaa, 0xe4, 0xb4, 0x92, 0x82, 0xe3, 0xae, 0x27, 0xee, 0xf3, 0xa9, 0xf7, 0x2b, + 0x05, 0x38, 0xdd, 0xd3, 0x82, 0x3f, 0x22, 0x8d, 0x62, 0x7e, 0xfe, 0x81, 0xa3, 0xf9, 0xfc, 0xe6, + 0x47, 0x29, 0xed, 0xf5, 0x51, 0xec, 0x3f, 0x29, 0xf4, 0x5c, 0x08, 0x74, 0x37, 0xf7, 0x3d, 0x3b, + 0x4a, 0x2f, 0xc0, 0xa8, 0xd3, 0x6a, 0x71, 0x3c, 0x16, 0x75, 0x9e, 0xaa, 0x1c, 0x37, 0x63, 0x02, + 0x71, 0x12, 0xb7, 0x2f, 0x9b, 0xe6, 0xcf, 0x2d, 0xa8, 0x60, 0xb2, 0xce, 0xa5, 0x11, 0xba, 0x29, + 0x86, 0xc8, 0xca, 0xa3, 0xf2, 0x38, 0x1d, 0xd8, 0xc8, 0x65, 0x15, 0xb9, 0xb3, 0x06, 0xfb, 0xa0, + 0xb9, 0xd7, 0xea, 0x36, 0xc7, 0x62, 0xef, 0xdb, 0x1c, 0xed, 0xff, 0x56, 0xa6, 0xaf, 0xd7, 0x0a, + 0xe6, 0x42, 0x52, 0x8f, 0xe8, 0xf7, 0x6d, 0x87, 0x9e, 0x98, 0x24, 0xea, 0xfb, 0x5e, 0xc3, 0x8b, + 0x98, 0xb6, 0x27, 0x0e, 0xf9, 0x0a, 0xfb, 0xaa, 0x9b, 0x55, 0xdc, 0xb3, 0x6e, 0xd6, 0x0b, 0x30, + 0x1a, 0x45, 0x1b, 0x2b, 0xa1, 0xbb, 0xe5, 0xc4, 0xe4, 0x0a, 0xe9, 0x08, 0xdb, 0x57, 0xd7, 0x90, + 0xa9, 0x5e, 0xd2, 0x40, 0x9c, 0xc4, 0x45, 0x17, 0xe1, 0xb8, 0xae, 0x5e, 0x45, 0xc2, 0x98, 0xe5, + 0x45, 0xf1, 0x99, 0xa0, 0x0a, 0x46, 0xe8, 0x7a, 0x57, 0x02, 0x01, 0x77, 0x3f, 0x43, 0xe5, 0x69, + 0xa2, 0x91, 0x32, 0x32, 0x98, 0x94, 0xa7, 0x89, 0x7e, 0x28, 0x2f, 0x5d, 0x4f, 0xa0, 0x25, 0x38, + 0xc1, 0x27, 0xc6, 0x4c, 0xab, 0x65, 0xbc, 0xd1, 0x50, 0xb2, 0xe2, 0xf3, 0xc5, 0x6e, 0x14, 0x9c, + 0xf5, 0x1c, 0x7a, 0x1e, 0x86, 0x55, 0xf3, 0xc2, 0xbc, 0x38, 0x9f, 0x52, 0xfe, 0x31, 0xd5, 0xcd, + 0x42, 0x1d, 0x9b, 0x78, 0xe8, 0x5d, 0xf0, 0xa0, 0xfe, 0xcb, 0x93, 0x67, 0xf9, 0xa1, 0xed, 0xbc, + 0x28, 0x0c, 0xa8, 0x6e, 0x13, 0xba, 0x98, 0x89, 0x56, 0xc7, 0xbd, 0x9e, 0x47, 0x6b, 0x70, 0x46, + 0x81, 0xce, 0xfb, 0x31, 0xcb, 0x84, 0x8b, 0xc8, 0xac, 0x13, 0x91, 0x6b, 0xa1, 0xc7, 0x4a, 0x09, + 0x56, 0xf4, 0xf5, 0xf2, 0x17, 0xdd, 0xf8, 0x52, 0x16, 0x26, 0x5e, 0xc4, 0xbb, 0xf4, 0x82, 0xa6, + 0xa1, 0x42, 0x7c, 0x67, 0xcd, 0x23, 0xcb, 0x73, 0x0b, 0xac, 0xc0, 0xa0, 0x71, 0x46, 0x7c, 0x5e, + 0x02, 0xb0, 0xc6, 0x51, 0xb1, 0xcb, 0x23, 0xbd, 0x62, 0x97, 0xd1, 0x0a, 0x9c, 0x6c, 0xd4, 0x5a, + 0xd4, 0x22, 0x74, 0x6b, 0x64, 0xa6, 0xc6, 0x42, 0x35, 0xe9, 0x87, 0xe1, 0xa5, 0xb8, 0x55, 0x12, + 0xc8, 0xc5, 0xb9, 0x95, 0x2e, 0x1c, 0x9c, 0xf9, 0x24, 0x0b, 0xe9, 0x0d, 0x83, 0xed, 0xce, 0xc4, + 0x89, 0x54, 0x48, 0x2f, 0x6d, 0xc4, 0x1c, 0x86, 0x2e, 0x03, 0x62, 0x19, 0x45, 0x97, 0xe2, 0xb8, + 0xa5, 0x4c, 0xd0, 0x89, 0x93, 0xc9, 0x32, 0x61, 0x17, 0xba, 0x30, 0x70, 0xc6, 0x53, 0xd4, 0xa2, + 0xf1, 0x03, 0xd6, 0xfb, 0xc4, 0x83, 0x49, 0x8b, 0xe6, 0x2a, 0x6f, 0xc6, 0x12, 0x8e, 0xde, 0x03, + 0x13, 0xed, 0x88, 0xb0, 0xcd, 0xed, 0x8d, 0x20, 0xdc, 0xf4, 0x02, 0xa7, 0xbe, 0xc0, 0xae, 0x8d, + 0x8c, 0x3b, 0x13, 0x13, 0x8c, 0xf8, 0x59, 0xf1, 0xec, 0xc4, 0xb5, 0x1e, 0x78, 0xb8, 0x67, 0x0f, + 0xe9, 0x3a, 0x77, 0xa7, 0xfb, 0xab, 0x73, 0x67, 0xff, 0x99, 0x05, 0xa3, 0x4a, 0xde, 0x1c, 0x41, + 0x1e, 0xa2, 0x97, 0xcc, 0x43, 0xbc, 0x78, 0x70, 0x89, 0xcd, 0x38, 0xef, 0x11, 0xec, 0xff, 0x2f, + 0x47, 0x00, 0xb4, 0x54, 0x57, 0x0a, 0xd5, 0xea, 0xa9, 0x50, 0xef, 0x5b, 0x89, 0x9a, 0x55, 0x65, + 0xac, 0x74, 0x6f, 0xab, 0x8c, 0x55, 0xe1, 0x94, 0x34, 0x77, 0xf8, 0x29, 0xea, 0xa5, 0x20, 0x52, + 0x02, 0xda, 0xb8, 0x06, 0x6c, 0x21, 0x0b, 0x09, 0x67, 0x3f, 0x9b, 0xb0, 0xb2, 0x86, 0xf6, 0x34, + 0x7d, 0x95, 0x4c, 0x5a, 0x5c, 0x97, 0x97, 0xf4, 0xa5, 0x64, 0xd2, 0xe2, 0x85, 0x2a, 0xd6, 0x38, + 0xd9, 0x8a, 0xa9, 0x92, 0x93, 0x62, 0x82, 0x7d, 0x2b, 0x26, 0x29, 0x22, 0x87, 0x7b, 0x8a, 0x48, + 0x79, 0x5a, 0x33, 0xd2, 0xf3, 0xb4, 0xe6, 0xed, 0x30, 0xe6, 0xfa, 0x1b, 0x24, 0x74, 0x63, 0x52, + 0x67, 0x6b, 0x81, 0x89, 0xcf, 0xb2, 0x36, 0x4b, 0x16, 0x12, 0x50, 0x9c, 0xc2, 0x4e, 0xca, 0xf5, + 0xb1, 0x3e, 0xe4, 0x7a, 0x0f, 0x6d, 0x3a, 0x9e, 0x8f, 0x36, 0x3d, 0x76, 0x70, 0x6d, 0x7a, 0xfc, + 0x50, 0xb5, 0x29, 0xca, 0x45, 0x9b, 0xf6, 0xa5, 0xa8, 0x8c, 0xed, 0xf2, 0xc9, 0x3d, 0xb6, 0xcb, + 0xbd, 0x54, 0xe9, 0xa9, 0xbb, 0x56, 0xa5, 0xd9, 0x5a, 0xf2, 0x81, 0xef, 0x4b, 0x2d, 0xf9, 0xf1, + 0x02, 0x9c, 0xd2, 0x7a, 0x84, 0xae, 0x5e, 0x77, 0x9d, 0x4a, 0x52, 0x76, 0x4f, 0x2d, 0x3f, 0x91, + 0x35, 0x52, 0x6c, 0x75, 0xb6, 0xae, 0x82, 0x60, 0x03, 0x8b, 0x65, 0xaa, 0x92, 0x90, 0x5d, 0x33, + 0x90, 0x56, 0x32, 0x73, 0xa2, 0x1d, 0x2b, 0x0c, 0xca, 0x32, 0xfd, 0x2d, 0x2a, 0x0e, 0xa4, 0x0b, + 0xd8, 0xce, 0x69, 0x10, 0x36, 0xf1, 0xd0, 0x13, 0x9c, 0x08, 0x13, 0x70, 0x54, 0xd1, 0x8c, 0xf0, + 0x2d, 0x9b, 0x92, 0x69, 0x0a, 0x2a, 0xd9, 0x61, 0x29, 0xc9, 0xa5, 0x6e, 0x76, 0x58, 0x70, 0xa3, + 0xc2, 0xb0, 0xff, 0x87, 0x05, 0xa7, 0x33, 0x87, 0xe2, 0x08, 0x8c, 0x87, 0xed, 0xa4, 0xf1, 0x50, + 0xcd, 0x6b, 0xbb, 0x67, 0xbc, 0x45, 0x0f, 0x43, 0xe2, 0xdf, 0x5b, 0x30, 0xa6, 0xf1, 0x8f, 0xe0, + 0x55, 0xdd, 0xe4, 0xab, 0xe6, 0xb7, 0xb3, 0xad, 0x74, 0xbd, 0xdb, 0xef, 0x17, 0x40, 0x15, 0x95, + 0x9e, 0xa9, 0xc9, 0x92, 0xfd, 0x7b, 0xc4, 0x08, 0x74, 0x60, 0x90, 0x85, 0x38, 0x44, 0xf9, 0x84, + 0x6f, 0x25, 0xe9, 0xb3, 0x70, 0x09, 0x7d, 0xe2, 0xc4, 0xfe, 0x46, 0x58, 0x10, 0x64, 0x97, 0x60, + 0xf0, 0x7a, 0xbd, 0x75, 0x91, 0x70, 0xa9, 0x2f, 0xc1, 0x10, 0xed, 0x58, 0x61, 0x50, 0xf5, 0xe6, + 0xd6, 0x02, 0x7f, 0xce, 0x73, 0x22, 0x79, 0x75, 0xbd, 0x52, 0x6f, 0x0b, 0x12, 0x80, 0x35, 0x0e, + 0x8b, 0x7e, 0x70, 0xa3, 0x96, 0xe7, 0x74, 0x0c, 0xff, 0x85, 0x51, 0x59, 0x47, 0x81, 0xb0, 0x89, + 0x67, 0x37, 0x61, 0x22, 0xf9, 0x12, 0xf3, 0x64, 0x9d, 0x85, 0x1e, 0xf7, 0x35, 0x9c, 0xd3, 0x50, + 0x71, 0xd8, 0x53, 0x8b, 0x6d, 0x47, 0xc8, 0x04, 0x1d, 0x80, 0x2b, 0x01, 0x58, 0xe3, 0xd8, 0xff, + 0xd0, 0x82, 0x13, 0x19, 0x83, 0x96, 0x63, 0x42, 0x6b, 0xac, 0xa5, 0x4d, 0x96, 0x61, 0xf2, 0x43, + 0x30, 0x54, 0x27, 0xeb, 0x8e, 0x0c, 0x6e, 0x35, 0x44, 0xfa, 0x3c, 0x6f, 0xc6, 0x12, 0x6e, 0xff, + 0x56, 0x01, 0xc6, 0x93, 0xbc, 0x46, 0x2c, 0x49, 0x8c, 0x0f, 0x93, 0x1b, 0xd5, 0x82, 0x2d, 0x12, + 0x76, 0xe8, 0x9b, 0x5b, 0xa9, 0x24, 0xb1, 0x2e, 0x0c, 0x9c, 0xf1, 0x14, 0x2b, 0x29, 0x5f, 0x57, + 0xa3, 0x2d, 0x67, 0xe4, 0xf5, 0x3c, 0x67, 0xa4, 0xfe, 0x98, 0x66, 0x20, 0x8c, 0x22, 0x89, 0x4d, + 0xfa, 0xd4, 0x40, 0x62, 0x51, 0xf7, 0xb3, 0x6d, 0xd7, 0x8b, 0x5d, 0x5f, 0xbc, 0xb2, 0x98, 0xab, + 0xca, 0x40, 0x5a, 0xea, 0x46, 0xc1, 0x59, 0xcf, 0xd9, 0xdf, 0x1a, 0x00, 0x55, 0xac, 0x81, 0x05, + 0x2a, 0xe6, 0x14, 0xe6, 0xb9, 0xdf, 0x54, 0x43, 0x35, 0xb7, 0x06, 0x76, 0x8b, 0x1c, 0xe2, 0x4e, + 0x2f, 0xd3, 0xf3, 0xad, 0x06, 0x6c, 0x55, 0x83, 0xb0, 0x89, 0x47, 0x39, 0xf1, 0xdc, 0x2d, 0xc2, + 0x1f, 0x1a, 0x4c, 0x72, 0xb2, 0x28, 0x01, 0x58, 0xe3, 0x50, 0x4e, 0xea, 0xee, 0xfa, 0xba, 0xf0, + 0xe0, 0x28, 0x4e, 0xe8, 0xe8, 0x60, 0x06, 0xe1, 0x97, 0x8e, 0x04, 0x9b, 0x62, 0x53, 0x60, 0x5c, + 0x3a, 0x12, 0x6c, 0x62, 0x06, 0xa1, 0x5f, 0xc9, 0x0f, 0xc2, 0xa6, 0xe3, 0xb9, 0xaf, 0x91, 0xba, + 0xa2, 0x22, 0x36, 0x03, 0xea, 0x2b, 0x5d, 0xed, 0x46, 0xc1, 0x59, 0xcf, 0xd1, 0x09, 0xdd, 0x0a, + 0x49, 0xdd, 0xad, 0xc5, 0x66, 0x6f, 0x90, 0x9c, 0xd0, 0x2b, 0x5d, 0x18, 0x38, 0xe3, 0x29, 0x34, + 0x03, 0xe3, 0xb2, 0xd8, 0x86, 0x2c, 0xdf, 0x36, 0x9c, 0x2c, 0x17, 0x85, 0x93, 0x60, 0x9c, 0xc6, + 0xa7, 0x42, 0xb2, 0x29, 0x8a, 0x4f, 0xb2, 0xbd, 0x83, 0x21, 0x24, 0x65, 0x51, 0x4a, 0xac, 0x30, + 0xec, 0x0f, 0x17, 0xa9, 0x52, 0xef, 0x51, 0xe3, 0xf5, 0xc8, 0xc2, 0x8a, 0x93, 0x33, 0x72, 0xa0, + 0x8f, 0x19, 0xf9, 0x1c, 0x8c, 0xdc, 0x8c, 0x02, 0x5f, 0x85, 0xec, 0x96, 0x7a, 0x86, 0xec, 0x1a, + 0x58, 0xd9, 0x21, 0xbb, 0x83, 0x79, 0x85, 0xec, 0x0e, 0xdd, 0x65, 0xc8, 0xee, 0x1f, 0x96, 0x40, + 0xdd, 0x89, 0x77, 0x95, 0xc4, 0xb7, 0x82, 0x70, 0xd3, 0xf5, 0x1b, 0xac, 0x70, 0xc4, 0x97, 0x2c, + 0x59, 0x7b, 0x62, 0xd1, 0x4c, 0xb9, 0x5c, 0xcf, 0xe9, 0x66, 0xb0, 0x04, 0xb1, 0xa9, 0x55, 0x83, + 0x10, 0x0f, 0xfd, 0x48, 0xd5, 0xb8, 0x10, 0x0e, 0xf9, 0x04, 0x47, 0xe8, 0x03, 0x00, 0xd2, 0xdd, + 0xbd, 0x2e, 0x25, 0xf0, 0x42, 0x3e, 0xfc, 0x61, 0xb2, 0xae, 0x4d, 0xea, 0x55, 0x45, 0x04, 0x1b, + 0x04, 0xd1, 0xc7, 0x75, 0x3a, 0x2a, 0xcf, 0xed, 0x79, 0xdf, 0xa1, 0x8c, 0x4d, 0x3f, 0xc9, 0xa8, + 0x18, 0x86, 0x5c, 0xbf, 0x41, 0xe7, 0x89, 0x08, 0x6d, 0x7c, 0x4b, 0x56, 0x81, 0x9f, 0xc5, 0xc0, + 0xa9, 0xcf, 0x3a, 0x9e, 0xe3, 0xd7, 0x48, 0xb8, 0xc0, 0xd1, 0xb5, 0x06, 0x15, 0x0d, 0x58, 0x76, + 0xd4, 0x75, 0xf5, 0x5d, 0xa9, 0x9f, 0xab, 0xef, 0xce, 0xbc, 0x03, 0x8e, 0x77, 0x7d, 0xcc, 0x7d, + 0xe5, 0x9e, 0xde, 0x7d, 0xda, 0xaa, 0xfd, 0xdb, 0x83, 0x5a, 0x69, 0x5d, 0x0d, 0xea, 0xfc, 0x26, + 0xb5, 0x50, 0x7f, 0x51, 0x61, 0x32, 0xe7, 0x38, 0x45, 0x94, 0x9a, 0x31, 0x1a, 0xb1, 0x49, 0x92, + 0xce, 0xd1, 0x96, 0x13, 0x12, 0xff, 0xb0, 0xe7, 0xe8, 0x8a, 0x22, 0x82, 0x0d, 0x82, 0x68, 0x23, + 0x91, 0x7c, 0x76, 0xe1, 0xe0, 0xc9, 0x67, 0xac, 0xdc, 0x62, 0xd6, 0x85, 0x43, 0x9f, 0xb5, 0x60, + 0xcc, 0x4f, 0xcc, 0xdc, 0x7c, 0xe2, 0xcd, 0xb3, 0x57, 0x05, 0xbf, 0x52, 0x35, 0xd9, 0x86, 0x53, + 0xf4, 0xb3, 0x54, 0x5a, 0x69, 0x9f, 0x2a, 0x4d, 0xdf, 0xe4, 0x38, 0xd8, 0xeb, 0x26, 0x47, 0xe4, + 0xab, 0xdb, 0x81, 0x87, 0x72, 0xbf, 0x1d, 0x18, 0x32, 0x6e, 0x06, 0xbe, 0x01, 0x95, 0x5a, 0x48, + 0x9c, 0xf8, 0x2e, 0x2f, 0x8a, 0x65, 0x51, 0x30, 0x73, 0xb2, 0x03, 0xac, 0xfb, 0xb2, 0xff, 0xf7, + 0x00, 0x1c, 0x93, 0x23, 0x22, 0x73, 0x55, 0xa8, 0x7e, 0xe4, 0x74, 0xb5, 0xad, 0xac, 0xf4, 0xe3, + 0x25, 0x09, 0xc0, 0x1a, 0x87, 0xda, 0x63, 0xed, 0x88, 0x2c, 0xb7, 0x88, 0xbf, 0xe8, 0xae, 0x45, + 0xe2, 0xd8, 0x5a, 0x2d, 0x94, 0x6b, 0x1a, 0x84, 0x4d, 0x3c, 0x6a, 0xdb, 0x3b, 0x86, 0xd1, 0x6a, + 0xd8, 0xf6, 0xd2, 0x50, 0x95, 0x70, 0xf4, 0x4b, 0x99, 0x45, 0xe7, 0xf3, 0xc9, 0xf0, 0xec, 0x4a, + 0xd1, 0xd9, 0xe7, 0x35, 0xe7, 0x7f, 0xcf, 0x82, 0x53, 0xbc, 0x55, 0x8e, 0xe4, 0xb5, 0x56, 0xdd, + 0x89, 0x49, 0x94, 0xcf, 0x65, 0x35, 0x19, 0xfc, 0x69, 0x9f, 0x77, 0x16, 0x59, 0x9c, 0xcd, 0x0d, + 0xfa, 0x8c, 0x05, 0xe3, 0x9b, 0x89, 0xe2, 0x40, 0x52, 0x75, 0x1c, 0xb4, 0x6e, 0x47, 0xa2, 0x53, + 0xbd, 0xd4, 0x92, 0xed, 0x11, 0x4e, 0x53, 0xb7, 0xff, 0xbb, 0x05, 0xa6, 0x18, 0x3d, 0xfa, 0x9a, + 0x42, 0xfb, 0x37, 0x05, 0xa5, 0x75, 0x59, 0xea, 0x69, 0x5d, 0x3e, 0x02, 0xc5, 0xb6, 0x5b, 0x17, + 0xfb, 0x0b, 0x7d, 0x98, 0xbe, 0x30, 0x8f, 0x69, 0xbb, 0xfd, 0xcf, 0x4b, 0xda, 0x0d, 0x22, 0x12, + 0x28, 0xbf, 0x27, 0x5e, 0x7b, 0x5d, 0x55, 0xdd, 0xe4, 0x6f, 0x7e, 0xb5, 0xab, 0xea, 0xe6, 0x8f, + 0xed, 0x3f, 0x3f, 0x96, 0x0f, 0x50, 0xaf, 0xa2, 0x9b, 0x43, 0x7b, 0x24, 0xc7, 0xde, 0x84, 0x32, + 0xdd, 0x82, 0x31, 0x7f, 0x66, 0x39, 0xc1, 0x54, 0xf9, 0x92, 0x68, 0xbf, 0xb3, 0x33, 0xf9, 0xa3, + 0xfb, 0x67, 0x4b, 0x3e, 0x8d, 0x55, 0xff, 0x28, 0x82, 0x0a, 0xfd, 0xcd, 0xf2, 0x78, 0xc5, 0xe6, + 0xee, 0x9a, 0x92, 0x99, 0x12, 0x90, 0x4b, 0x92, 0xb0, 0xa6, 0x83, 0x7c, 0xa8, 0x50, 0x44, 0x4e, + 0x94, 0xef, 0x01, 0x57, 0x54, 0x36, 0xad, 0x04, 0xdc, 0xd9, 0x99, 0x7c, 0x61, 0xff, 0x44, 0xd5, + 0xe3, 0x58, 0x93, 0xb0, 0xff, 0xcf, 0x80, 0x9e, 0xbb, 0xa2, 0xd8, 0xea, 0xf7, 0xc4, 0xdc, 0x3d, + 0x97, 0x9a, 0xbb, 0x67, 0xbb, 0xe6, 0xee, 0x18, 0x1d, 0x8f, 0x8c, 0x12, 0xb0, 0x47, 0x6d, 0x08, + 0xec, 0xed, 0x6f, 0x60, 0x16, 0xd0, 0xab, 0x6d, 0x37, 0x24, 0xd1, 0x4a, 0xd8, 0xf6, 0x5d, 0xbf, + 0xc1, 0xa6, 0x63, 0xd9, 0xb4, 0x80, 0x12, 0x60, 0x9c, 0xc6, 0xa7, 0x9b, 0x7a, 0xfa, 0xcd, 0x6f, + 0x38, 0x5b, 0x7c, 0x56, 0x19, 0xf5, 0xf9, 0xaa, 0xa2, 0x1d, 0x2b, 0x0c, 0xb4, 0x01, 0x0f, 0xcb, + 0x0e, 0xe6, 0x89, 0x47, 0xc4, 0x7d, 0xff, 0xeb, 0x6e, 0xd8, 0xe4, 0xa1, 0xf4, 0x3c, 0x86, 0xe3, + 0xcd, 0xa2, 0x87, 0x87, 0xf1, 0x2e, 0xb8, 0x78, 0xd7, 0x9e, 0xec, 0x2f, 0xb3, 0x20, 0x02, 0xa3, + 0x54, 0x01, 0x9d, 0x7d, 0x9e, 0xdb, 0x74, 0x65, 0x19, 0x41, 0x35, 0xfb, 0x16, 0x69, 0x23, 0xe6, + 0x30, 0x74, 0x0b, 0x86, 0xd6, 0xf8, 0xc5, 0xc6, 0xf9, 0x5c, 0xa2, 0x22, 0x6e, 0x49, 0x66, 0xb5, + 0x78, 0xe5, 0x95, 0xc9, 0x77, 0xf4, 0x4f, 0x2c, 0xa9, 0xd9, 0x5f, 0x2f, 0xc1, 0xb8, 0x0c, 0xcb, + 0xba, 0xe4, 0x46, 0x2c, 0x36, 0xc0, 0x2c, 0x50, 0x5e, 0xd8, 0xb3, 0x40, 0xf9, 0x7b, 0x01, 0xea, + 0xa4, 0xe5, 0x05, 0x1d, 0x66, 0xf8, 0x0d, 0xec, 0xdb, 0xf0, 0x53, 0x7b, 0x85, 0x79, 0xd5, 0x0b, + 0x36, 0x7a, 0x14, 0xb5, 0x13, 0x79, 0xbd, 0xf3, 0x54, 0xed, 0x44, 0xe3, 0xaa, 0xa5, 0xc1, 0xa3, + 0xbd, 0x6a, 0xc9, 0x85, 0x71, 0xce, 0xa2, 0x2a, 0x08, 0x70, 0x17, 0x79, 0xff, 0x2c, 0xa5, 0x6a, + 0x3e, 0xd9, 0x0d, 0x4e, 0xf7, 0x6b, 0xde, 0xa3, 0x54, 0x3e, 0xea, 0x7b, 0x94, 0xde, 0x0a, 0x15, + 0xf9, 0x9d, 0xa3, 0x89, 0x8a, 0x2e, 0xaa, 0x22, 0xa7, 0x41, 0x84, 0x35, 0xbc, 0xab, 0xb6, 0x09, + 0xdc, 0xab, 0xda, 0x26, 0xf6, 0xa7, 0x0b, 0x74, 0xc7, 0xc0, 0xf9, 0x52, 0x65, 0xba, 0x1e, 0x87, + 0x41, 0xa7, 0x1d, 0x6f, 0x04, 0x5d, 0x57, 0x23, 0xcf, 0xb0, 0x56, 0x2c, 0xa0, 0x68, 0x11, 0x06, + 0xea, 0xba, 0xf4, 0xd2, 0x7e, 0xbe, 0xa7, 0x76, 0xbe, 0x3a, 0x31, 0xc1, 0xac, 0x17, 0xf4, 0x30, + 0x0c, 0xc4, 0x4e, 0x43, 0x66, 0x81, 0xb2, 0xcc, 0xff, 0x55, 0xa7, 0x11, 0x61, 0xd6, 0xba, 0x9f, + 0x72, 0xb3, 0x2f, 0xc0, 0x68, 0xe4, 0x36, 0x7c, 0x27, 0x6e, 0x87, 0xc4, 0x38, 0x9f, 0xd4, 0x21, + 0x33, 0x26, 0x10, 0x27, 0x71, 0xed, 0xdf, 0x19, 0x81, 0x93, 0xd5, 0xb9, 0x25, 0x79, 0x61, 0xc6, + 0xa1, 0x25, 0x72, 0x66, 0xd1, 0x38, 0xba, 0x44, 0xce, 0x1e, 0xd4, 0x3d, 0x23, 0x91, 0xd3, 0x33, + 0x12, 0x39, 0x93, 0x59, 0x75, 0xc5, 0x3c, 0xb2, 0xea, 0xb2, 0x38, 0xe8, 0x27, 0xab, 0xee, 0xd0, + 0x32, 0x3b, 0x77, 0x65, 0x68, 0x5f, 0x99, 0x9d, 0x2a, 0xed, 0x35, 0x97, 0x5c, 0xa1, 0x1e, 0x9f, + 0x2a, 0x33, 0xed, 0x55, 0xa5, 0x1c, 0xf2, 0x3c, 0x38, 0x21, 0xea, 0x5f, 0xce, 0x9f, 0x81, 0x3e, + 0x52, 0x0e, 0x45, 0x2a, 0x9e, 0x99, 0xe6, 0x3a, 0x94, 0x47, 0x9a, 0x6b, 0x16, 0x3b, 0x7b, 0xa6, + 0xb9, 0xbe, 0x00, 0xa3, 0x35, 0x2f, 0xf0, 0xc9, 0x4a, 0x18, 0xc4, 0x41, 0x2d, 0x90, 0x97, 0xb3, + 0xea, 0xbb, 0xc5, 0x4c, 0x20, 0x4e, 0xe2, 0xf6, 0xca, 0x91, 0xad, 0x1c, 0x34, 0x47, 0x16, 0xee, + 0x51, 0x8e, 0xac, 0x91, 0x05, 0x3a, 0x9c, 0x47, 0x16, 0x68, 0xd6, 0x17, 0xe9, 0xeb, 0xf6, 0xd5, + 0xd7, 0xf9, 0xdd, 0xc4, 0xd4, 0x04, 0x9f, 0x0b, 0x9a, 0xd4, 0xf0, 0x1b, 0x61, 0x43, 0xf2, 0xca, + 0x21, 0x4c, 0xd8, 0x1b, 0x55, 0x4d, 0x46, 0xdd, 0x57, 0xac, 0x9b, 0x70, 0x92, 0x91, 0x83, 0x24, + 0xa8, 0x7e, 0xa1, 0x00, 0x3f, 0xb0, 0x27, 0x0b, 0xe8, 0x16, 0x40, 0xec, 0x34, 0xc4, 0x44, 0x15, + 0x47, 0x33, 0x07, 0x8c, 0x6b, 0x5d, 0x95, 0xfd, 0xf1, 0x32, 0x49, 0xea, 0x2f, 0x3b, 0xf4, 0x90, + 0xbf, 0x59, 0x38, 0x6b, 0xe0, 0x75, 0x55, 0x93, 0xc5, 0x81, 0x47, 0x30, 0x83, 0x50, 0xf5, 0x1f, + 0x92, 0x06, 0x35, 0x69, 0x8b, 0x49, 0xf5, 0x8f, 0x59, 0x2b, 0x16, 0x50, 0xf4, 0x3c, 0x0c, 0x3b, + 0x9e, 0xc7, 0x13, 0xb9, 0x48, 0x24, 0x2e, 0xfd, 0xd3, 0x65, 0x2d, 0x35, 0x08, 0x9b, 0x78, 0xf6, + 0x5f, 0x15, 0x60, 0x72, 0x0f, 0x99, 0xd2, 0x95, 0xc0, 0x5b, 0xea, 0x3b, 0x81, 0x57, 0x24, 0xb7, + 0x0c, 0xf6, 0x48, 0x6e, 0x79, 0x1e, 0x86, 0x63, 0xe2, 0x34, 0x45, 0x24, 0x9c, 0xf0, 0x39, 0xe8, + 0xb3, 0x66, 0x0d, 0xc2, 0x26, 0x1e, 0x95, 0x62, 0x63, 0x4e, 0xad, 0x46, 0xa2, 0x48, 0x66, 0xaf, + 0x08, 0xbf, 0x6d, 0x6e, 0xa9, 0x31, 0xcc, 0x1d, 0x3e, 0x93, 0x20, 0x81, 0x53, 0x24, 0xd3, 0x03, + 0x5e, 0xe9, 0x73, 0xc0, 0x7f, 0xb5, 0x00, 0x8f, 0xec, 0xaa, 0xdd, 0xfa, 0x4e, 0x2c, 0x6a, 0x47, + 0x24, 0x4c, 0x4f, 0x9c, 0x6b, 0x11, 0x09, 0x31, 0x83, 0xf0, 0x51, 0x6a, 0xb5, 0x54, 0x14, 0x73, + 0xfe, 0x59, 0x76, 0x7c, 0x94, 0x12, 0x24, 0x70, 0x8a, 0xe4, 0xdd, 0x4e, 0xcb, 0xaf, 0x0f, 0xc0, + 0x63, 0x7d, 0xd8, 0x00, 0x39, 0x66, 0x23, 0x26, 0x33, 0x67, 0x8b, 0xf7, 0x28, 0x73, 0xf6, 0xee, + 0x86, 0xeb, 0x8d, 0x84, 0xdb, 0xbe, 0xb2, 0x1e, 0xbf, 0x5c, 0x80, 0x33, 0xbd, 0x0d, 0x16, 0xf4, + 0xe3, 0x30, 0x1e, 0xaa, 0x20, 0x3b, 0x33, 0xe9, 0xf6, 0x04, 0xf7, 0xec, 0x24, 0x40, 0x38, 0x8d, + 0x8b, 0xa6, 0x00, 0x5a, 0x4e, 0xbc, 0x11, 0x9d, 0xdf, 0x76, 0xa3, 0x58, 0x94, 0x0f, 0x1b, 0xe3, + 0x67, 0x89, 0xb2, 0x15, 0x1b, 0x18, 0x94, 0x1c, 0xfb, 0x37, 0x1f, 0x5c, 0x0d, 0x62, 0xfe, 0x10, + 0xdf, 0x6c, 0x9d, 0x90, 0x97, 0x89, 0x19, 0x20, 0x9c, 0xc6, 0xa5, 0xe4, 0xd8, 0x69, 0x35, 0x67, + 0x94, 0xef, 0xc2, 0x18, 0xb9, 0x45, 0xd5, 0x8a, 0x0d, 0x8c, 0x74, 0x3a, 0x71, 0x69, 0xef, 0x74, + 0x62, 0xfb, 0x9f, 0x15, 0xe0, 0x74, 0x4f, 0x83, 0xb7, 0x3f, 0x31, 0x75, 0xff, 0xa5, 0x00, 0xdf, + 0xe5, 0x0a, 0xdb, 0x5f, 0xea, 0xe8, 0x9f, 0xf7, 0x98, 0x69, 0x22, 0x75, 0xf4, 0xee, 0x2b, 0x62, + 0xdc, 0x7f, 0xe3, 0xd9, 0x95, 0x2d, 0x3a, 0xb0, 0x8f, 0x6c, 0xd1, 0xd4, 0xc7, 0x28, 0xf5, 0xa9, + 0x1d, 0xfe, 0xf3, 0x40, 0xcf, 0xe1, 0xa5, 0x1b, 0xe4, 0xbe, 0xfc, 0xe6, 0xf3, 0x70, 0xcc, 0xf5, + 0xd9, 0xc5, 0x92, 0xd5, 0xf6, 0x9a, 0xa8, 0x28, 0xc5, 0xcb, 0xa6, 0xaa, 0xec, 0x8f, 0x85, 0x14, + 0x1c, 0x77, 0x3d, 0x71, 0x1f, 0x66, 0xef, 0xde, 0xdd, 0x90, 0xee, 0x53, 0x72, 0x2f, 0xc3, 0x29, + 0x39, 0x14, 0x1b, 0x4e, 0x48, 0xea, 0x42, 0xd9, 0x46, 0x22, 0xdf, 0xe7, 0x34, 0xcf, 0x19, 0xca, + 0x40, 0xc0, 0xd9, 0xcf, 0xb1, 0xbb, 0xfc, 0x82, 0x96, 0x5b, 0x13, 0x5b, 0x41, 0x7d, 0x97, 0x1f, + 0x6d, 0xc4, 0x1c, 0xa6, 0xf5, 0x45, 0xe5, 0x68, 0xf4, 0xc5, 0x7b, 0xa1, 0xa2, 0xc6, 0x9b, 0x67, + 0x09, 0xa8, 0x49, 0xde, 0x95, 0x25, 0xa0, 0x66, 0xb8, 0x81, 0xb5, 0xd7, 0x3d, 0xd8, 0xcf, 0xc2, + 0x88, 0xf2, 0x7e, 0xf5, 0x7b, 0xa3, 0xa2, 0xfd, 0x7f, 0x0b, 0x90, 0xba, 0xf3, 0x08, 0x6d, 0x43, + 0xa5, 0x2e, 0x6f, 0xa2, 0xce, 0xa7, 0x6c, 0xaf, 0xba, 0xd8, 0x5a, 0x1f, 0xff, 0xa8, 0x26, 0xac, + 0x89, 0xa1, 0xf7, 0xf3, 0x0a, 0xb9, 0x82, 0x74, 0x21, 0x8f, 0x0c, 0xee, 0xaa, 0xea, 0xcf, 0xbc, + 0x32, 0x4d, 0xb6, 0x61, 0x83, 0x1e, 0x8a, 0xa1, 0xb2, 0x21, 0xef, 0x76, 0xca, 0x47, 0xdc, 0xa9, + 0xab, 0xa2, 0xb8, 0x89, 0xa6, 0xfe, 0x62, 0x4d, 0xc8, 0xfe, 0xb3, 0x02, 0x9c, 0x4c, 0x7e, 0x00, + 0x71, 0x5c, 0xf7, 0xeb, 0x16, 0x3c, 0xe8, 0x39, 0x51, 0x5c, 0x6d, 0xb3, 0x8d, 0xc2, 0x7a, 0xdb, + 0x5b, 0x4e, 0x15, 0x53, 0x3e, 0xa8, 0xb3, 0x45, 0x75, 0x9c, 0xbe, 0x0b, 0x6c, 0xf6, 0xa1, 0xdb, + 0x3b, 0x93, 0x0f, 0x2e, 0x66, 0x13, 0xc7, 0xbd, 0xb8, 0x42, 0x9f, 0xb5, 0xe0, 0x58, 0xad, 0x1d, + 0x86, 0xc4, 0x8f, 0x35, 0xab, 0xfc, 0x2b, 0x5e, 0xcd, 0x65, 0x20, 0x35, 0x83, 0x27, 0xa9, 0x40, + 0x9d, 0x4b, 0xd1, 0xc2, 0x5d, 0xd4, 0xed, 0x9f, 0xa7, 0x9a, 0xb3, 0xe7, 0x7b, 0x7e, 0x9f, 0x5d, + 0x5e, 0xf6, 0x9d, 0x41, 0x18, 0x4d, 0x54, 0x8c, 0x4e, 0x1c, 0x71, 0x59, 0x7b, 0x1e, 0x71, 0xb1, + 0x0c, 0xb5, 0xb6, 0x2f, 0xaf, 0x56, 0x36, 0x32, 0xd4, 0xda, 0x3e, 0xc1, 0x1c, 0x26, 0x86, 0x14, + 0xb7, 0x7d, 0x11, 0xdd, 0x6e, 0x0e, 0x29, 0x6e, 0xfb, 0x58, 0x40, 0xd1, 0x87, 0x2c, 0x18, 0x61, + 0x8b, 0x4f, 0x1c, 0x10, 0x0a, 0x85, 0x76, 0x39, 0x87, 0xe5, 0x2e, 0xab, 0xa3, 0xb3, 0x68, 0x48, + 0xb3, 0x05, 0x27, 0x28, 0xa2, 0x8f, 0x5a, 0x50, 0x51, 0xb7, 0x31, 0x8a, 0x7b, 0xd2, 0xab, 0xf9, + 0x16, 0xe4, 0x4e, 0x49, 0x3d, 0x55, 0x19, 0x19, 0x6b, 0xc2, 0x28, 0x52, 0xa7, 0x77, 0x43, 0x87, + 0x73, 0x7a, 0x07, 0x19, 0x27, 0x77, 0x6f, 0x85, 0x4a, 0xd3, 0xf1, 0xdd, 0x75, 0x12, 0xc5, 0xfc, + 0x40, 0x4d, 0xde, 0x13, 0x20, 0x1b, 0xb1, 0x86, 0x53, 0x63, 0x3f, 0x62, 0x2f, 0x16, 0x1b, 0x27, + 0x60, 0xcc, 0xd8, 0xaf, 0xea, 0x66, 0x6c, 0xe2, 0x98, 0xc7, 0x75, 0x70, 0x4f, 0x8f, 0xeb, 0x86, + 0xf7, 0x38, 0xae, 0xab, 0xc2, 0x29, 0xa7, 0x1d, 0x07, 0x97, 0x88, 0xe3, 0xcd, 0xc4, 0x31, 0x69, + 0xb6, 0xe2, 0x88, 0x17, 0x19, 0x1f, 0x61, 0x2e, 0x60, 0x15, 0xbf, 0x55, 0x25, 0xde, 0x7a, 0x17, + 0x12, 0xce, 0x7e, 0xd6, 0xfe, 0xc7, 0x16, 0x9c, 0xca, 0x9c, 0x0a, 0xf7, 0x6f, 0xe4, 0xbc, 0xfd, + 0xf9, 0x12, 0x9c, 0xc8, 0xa8, 0x27, 0x8f, 0x3a, 0xe6, 0x22, 0xb1, 0xf2, 0x08, 0x42, 0x4b, 0xc6, + 0x54, 0xc9, 0x6f, 0x93, 0xb1, 0x32, 0xf6, 0x77, 0x02, 0xaf, 0x4f, 0xc1, 0x8b, 0x47, 0x7b, 0x0a, + 0x6e, 0xcc, 0xf5, 0x81, 0x7b, 0x3a, 0xd7, 0x4b, 0x7b, 0xcc, 0xf5, 0xaf, 0x58, 0x30, 0xd1, 0xec, + 0x71, 0x89, 0x91, 0x38, 0x4f, 0xba, 0x7e, 0x38, 0x57, 0x24, 0xcd, 0x3e, 0x7c, 0x7b, 0x67, 0xb2, + 0xe7, 0xdd, 0x51, 0xb8, 0x27, 0x57, 0xf6, 0xb7, 0x8a, 0xc0, 0xec, 0x35, 0x56, 0x33, 0xb8, 0x83, + 0x3e, 0x68, 0x5e, 0x4b, 0x61, 0xe5, 0x75, 0x85, 0x02, 0xef, 0x5c, 0x5d, 0x6b, 0xc1, 0x47, 0x30, + 0xeb, 0x96, 0x8b, 0xb4, 0x24, 0x2c, 0xf4, 0x21, 0x09, 0x3d, 0x79, 0xff, 0x47, 0x31, 0xff, 0xfb, + 0x3f, 0x2a, 0xe9, 0xbb, 0x3f, 0x76, 0xff, 0xc4, 0x03, 0xf7, 0xe5, 0x27, 0xfe, 0x5d, 0x8b, 0x0b, + 0x9e, 0xd4, 0x57, 0xd0, 0xe6, 0x86, 0xb5, 0x8b, 0xb9, 0xf1, 0x24, 0x94, 0x23, 0x21, 0x99, 0x85, + 0x59, 0xa2, 0x03, 0xa0, 0x44, 0x3b, 0x56, 0x18, 0x74, 0xd7, 0xe5, 0x78, 0x5e, 0x70, 0xeb, 0x7c, + 0xb3, 0x15, 0x77, 0x84, 0x81, 0xa2, 0xb6, 0x05, 0x33, 0x0a, 0x82, 0x0d, 0x2c, 0xf4, 0x18, 0x0c, + 0xf2, 0x4a, 0x07, 0xc2, 0xb9, 0x33, 0x4c, 0xd7, 0x21, 0x2f, 0x83, 0x50, 0xc7, 0x02, 0x64, 0x6f, + 0x80, 0xb1, 0xab, 0xb8, 0xfb, 0x8b, 0x61, 0xfb, 0xb8, 0xd1, 0xfb, 0xef, 0x16, 0x04, 0x29, 0xbe, + 0x4b, 0x38, 0x97, 0xba, 0x41, 0xbd, 0xff, 0x78, 0xb8, 0xf7, 0x03, 0xd4, 0x82, 0x66, 0x8b, 0xee, + 0x9b, 0x57, 0x83, 0x7c, 0x36, 0x5b, 0x73, 0xaa, 0x3f, 0x3d, 0xaa, 0xba, 0x0d, 0x1b, 0xf4, 0x12, + 0xa2, 0xbd, 0xb8, 0xa7, 0x68, 0x4f, 0x48, 0xb9, 0x81, 0xdd, 0xa5, 0x9c, 0xfd, 0x57, 0x16, 0x24, + 0xac, 0x3e, 0xd4, 0x82, 0x12, 0x65, 0xb7, 0x23, 0x04, 0xc6, 0x72, 0x7e, 0x26, 0x26, 0x95, 0xd4, + 0x62, 0x15, 0xb2, 0x9f, 0x98, 0x13, 0x42, 0x9e, 0x88, 0xfd, 0xcb, 0x65, 0xf3, 0x63, 0x12, 0xbc, + 0x14, 0x04, 0x9b, 0x3c, 0x7c, 0x46, 0xc7, 0x11, 0xda, 0xe7, 0xe0, 0x78, 0x17, 0x53, 0xec, 0x32, + 0xd9, 0x40, 0xee, 0xe0, 0x8d, 0xd5, 0xc3, 0xea, 0x33, 0x60, 0x0e, 0xb3, 0xbf, 0x6c, 0xc1, 0xb1, + 0x74, 0xf7, 0xe8, 0x75, 0x0b, 0x8e, 0x47, 0xe9, 0xfe, 0x0e, 0x6b, 0xec, 0x54, 0xfc, 0x7e, 0x17, + 0x08, 0x77, 0x33, 0x61, 0xff, 0x53, 0xa1, 0x0d, 0x6e, 0xb8, 0x7e, 0x3d, 0xb8, 0xa5, 0xec, 0x24, + 0xab, 0xa7, 0x9d, 0x44, 0xc5, 0x43, 0x6d, 0x83, 0xd4, 0xdb, 0x5e, 0x57, 0x61, 0x85, 0xaa, 0x68, + 0xc7, 0x0a, 0x83, 0xe5, 0x91, 0xb7, 0xc5, 0xbe, 0x35, 0x35, 0x29, 0xe7, 0x45, 0x3b, 0x56, 0x18, + 0xe8, 0x39, 0x18, 0x31, 0x5e, 0x52, 0xce, 0x4b, 0xb6, 0xe9, 0x30, 0x34, 0x78, 0x84, 0x13, 0x58, + 0x68, 0x0a, 0x40, 0xd9, 0x5c, 0x52, 0x63, 0x33, 0x47, 0xbb, 0x12, 0x8c, 0x11, 0x36, 0x30, 0x58, + 0xd5, 0x06, 0xaf, 0x1d, 0xb1, 0x93, 0xe4, 0x41, 0x5d, 0x43, 0x7f, 0x4e, 0xb4, 0x61, 0x05, 0xa5, + 0xc2, 0xad, 0xe9, 0xf8, 0x6d, 0xc7, 0xa3, 0x23, 0x24, 0x5c, 0x67, 0x6a, 0x19, 0x2e, 0x29, 0x08, + 0x36, 0xb0, 0xe8, 0x1b, 0xc7, 0x6e, 0x93, 0xbc, 0x14, 0xf8, 0x32, 0xee, 0x5a, 0x07, 0x17, 0x88, + 0x76, 0xac, 0x30, 0xd0, 0x39, 0x18, 0x76, 0xfc, 0x3a, 0x37, 0x10, 0x83, 0x50, 0x9c, 0x51, 0xaa, + 0xdd, 0xe7, 0xb5, 0x88, 0xcc, 0x68, 0x28, 0x36, 0x51, 0xed, 0xbf, 0xb4, 0x60, 0x5c, 0x57, 0xbf, + 0x61, 0xae, 0xb2, 0x84, 0x8f, 0xd0, 0xda, 0xd3, 0x47, 0x98, 0x2c, 0xab, 0x51, 0xe8, 0xab, 0xac, + 0x86, 0x59, 0xf1, 0xa2, 0xb8, 0x6b, 0xc5, 0x8b, 0x1f, 0x84, 0xa1, 0x4d, 0xd2, 0x31, 0x4a, 0x63, + 0x30, 0x29, 0x7f, 0x85, 0x37, 0x61, 0x09, 0x43, 0x36, 0x0c, 0xd6, 0x1c, 0x55, 0xba, 0x6e, 0x84, + 0xef, 0xac, 0xe6, 0x66, 0x18, 0x92, 0x80, 0xd8, 0xcb, 0x50, 0x51, 0xa7, 0xf3, 0xd2, 0x65, 0x67, + 0x65, 0xbb, 0xec, 0xfa, 0xca, 0xbc, 0x9f, 0x5d, 0xfb, 0xda, 0xb7, 0x1f, 0x7d, 0xd3, 0x1f, 0x7f, + 0xfb, 0xd1, 0x37, 0xfd, 0xe9, 0xb7, 0x1f, 0x7d, 0xd3, 0x87, 0x6e, 0x3f, 0x6a, 0x7d, 0xed, 0xf6, + 0xa3, 0xd6, 0x1f, 0xdf, 0x7e, 0xd4, 0xfa, 0xd3, 0xdb, 0x8f, 0x5a, 0xdf, 0xba, 0xfd, 0xa8, 0xf5, + 0xd9, 0xff, 0xf4, 0xe8, 0x9b, 0x5e, 0xca, 0x0c, 0xd9, 0xa7, 0x3f, 0x9e, 0xaa, 0xd5, 0xa7, 0xb7, + 0x9e, 0x65, 0x51, 0xe3, 0x74, 0x61, 0x4e, 0x1b, 0xb3, 0x71, 0x5a, 0x2e, 0xcc, 0xff, 0x17, 0x00, + 0x00, 0xff, 0xff, 0x62, 0x80, 0xab, 0xe0, 0x7b, 0xf9, 0x00, 0x00, } func (m *AWSAuthConfig) Marshal() (dAtA []byte, err error) { @@ -8265,6 +8268,18 @@ func (m *ApplicationStatus) MarshalToSizedBuffer(dAtA []byte) (int, error) { _ = i var l int _ = l + if m.LastCompletedNonDryRunOperation != nil { + { + size, err := m.LastCompletedNonDryRunOperation.MarshalToSizedBuffer(dAtA[:i]) + if err != nil { + return 0, err + } + i -= size + i = encodeVarintGenerated(dAtA, i, uint64(size)) + } + i-- + dAtA[i] = 0x7a + } { size, err := m.SourceHydrator.MarshalToSizedBuffer(dAtA[:i]) if err != nil { @@ -16688,6 +16703,10 @@ func (m *ApplicationStatus) Size() (n int) { n += 1 + l + sovGenerated(uint64(l)) l = m.SourceHydrator.Size() n += 1 + l + sovGenerated(uint64(l)) + if m.LastCompletedNonDryRunOperation != nil { + l = m.LastCompletedNonDryRunOperation.Size() + n += 1 + l + sovGenerated(uint64(l)) + } return n } @@ -20122,6 +20141,7 @@ func (this *ApplicationStatus) String() string { `SourceTypes:` + fmt.Sprintf("%v", this.SourceTypes) + `,`, `ControllerNamespace:` + fmt.Sprintf("%v", this.ControllerNamespace) + `,`, `SourceHydrator:` + strings.Replace(strings.Replace(this.SourceHydrator.String(), "SourceHydratorStatus", "SourceHydratorStatus", 1), `&`, ``, 1) + `,`, + `LastCompletedNonDryRunOperation:` + strings.Replace(this.LastCompletedNonDryRunOperation.String(), "OperationState", "OperationState", 1) + `,`, `}`, }, "") return s @@ -30917,6 +30937,42 @@ func (m *ApplicationStatus) Unmarshal(dAtA []byte) error { return err } iNdEx = postIndex + case 15: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field LastCompletedNonDryRunOperation", wireType) + } + var msglen int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowGenerated + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + msglen |= int(b&0x7F) << shift + if b < 0x80 { + break + } + } + if msglen < 0 { + return ErrInvalidLengthGenerated + } + postIndex := iNdEx + msglen + if postIndex < 0 { + return ErrInvalidLengthGenerated + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + if m.LastCompletedNonDryRunOperation == nil { + m.LastCompletedNonDryRunOperation = &OperationState{} + } + if err := m.LastCompletedNonDryRunOperation.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { + return err + } + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipGenerated(dAtA[iNdEx:]) diff --git a/pkg/apis/application/v1alpha1/generated.proto b/pkg/apis/application/v1alpha1/generated.proto index 25d43b0e4e75d..858f0d45b54ff 100644 --- a/pkg/apis/application/v1alpha1/generated.proto +++ b/pkg/apis/application/v1alpha1/generated.proto @@ -701,6 +701,9 @@ message ApplicationStatus { // SourceHydrator stores information about the current state of source hydration optional SourceHydratorStatus sourceHydrator = 14; + + // OperationState contains information about the last non dryrun completed operation + optional OperationState lastCompletedNonDryRunOperation = 15; } // ApplicationSummary contains information about URLs and container images used by an application diff --git a/pkg/apis/application/v1alpha1/types.go b/pkg/apis/application/v1alpha1/types.go index af3dfaaf2e374..313ff667cc009 100644 --- a/pkg/apis/application/v1alpha1/types.go +++ b/pkg/apis/application/v1alpha1/types.go @@ -1157,6 +1157,8 @@ type ApplicationStatus struct { ControllerNamespace string `json:"controllerNamespace,omitempty" protobuf:"bytes,13,opt,name=controllerNamespace"` // SourceHydrator stores information about the current state of source hydration SourceHydrator SourceHydratorStatus `json:"sourceHydrator,omitempty" protobuf:"bytes,14,opt,name=sourceHydrator"` + // OperationState contains information about the last non dryrun completed operation + LastCompletedNonDryRunOperation *OperationState `json:"lastCompletedNonDryRunOperation,omitempty" protobuf:"bytes,15,opt,name=lastCompletedNonDryRunOperation"` } // SourceHydratorStatus contains information about the current state of source hydration @@ -3214,6 +3216,15 @@ func (app *Application) IsFinalizerPresent(finalizer string) bool { return getFinalizerIndex(app.ObjectMeta, finalizer) > -1 } +// GetLastNonDryRunOperationState returns the last complete or ongoing non dryrun operation if exists or nil in other case +func (app *Application) GetLastNonDryRunOperationState() *OperationState { + if app.Status.OperationState != nil && app.Status.OperationState.Operation.DryRun() { + return app.Status.LastCompletedNonDryRunOperation + } + + return app.Status.OperationState +} + // SetConditions updates the application status conditions for a subset of evaluated types. // If the application has a pre-existing condition of a type that is not in the evaluated list, // it will be preserved. If the application has a pre-existing condition of a type that diff --git a/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go index 3a782c9d0769f..c8e6fc9586ee0 100644 --- a/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/application/v1alpha1/zz_generated.deepcopy.go @@ -1416,6 +1416,11 @@ func (in *ApplicationStatus) DeepCopyInto(out *ApplicationStatus) { copy(*out, *in) } in.SourceHydrator.DeepCopyInto(&out.SourceHydrator) + if in.LastCompletedNonDryRunOperation != nil { + in, out := &in.LastCompletedNonDryRunOperation, &out.LastCompletedNonDryRunOperation + *out = new(OperationState) + (*in).DeepCopyInto(*out) + } return }