all:
  children:
    controllers:
      hosts:
        controller: null
    zuul_unreachable:
      hosts: {}
  hosts:
    controller:
      ansible_connection: ssh
      ansible_host: 162.253.55.159
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      cilium_helm_values:
        operator:
          replicas: 1
      cilium_ipv4_cidr: 172.24.0.0/16
      kube_vip_address: 172.17.0.100
      kube_vip_interface: '{{ ansible_facts[''default_ipv4''].interface }}'
      kubernetes_hostname: '{{ ansible_facts[''default_ipv4''].address }}'
      kubernetes_version: 1.28.13
      molecule_install_collection_siblings: true
      molecule_scenario: secretgen-controller
      nodepool:
        az: yul2
        cloud: public
        external_id: af1503b8-3f42-4708-bdef-5a3721c56ed1
        host_id: 1d424bd1e3409e81e8f473e9b0a820f07f508f30220b87875cb706a5
        interface_ip: 162.253.55.159
        label: ubuntu-noble
        node_properties: {}
        private_ipv4: 162.253.55.159
        private_ipv6: null
        provider: yul1
        public_ipv4: 162.253.55.159
        public_ipv6: 2604:e100:1:0:f816:3eff:fe77:2ef7
        region: ca-ymq-1
        slot: null
      zuul_node:
        az: yul2
        cloud: public
        external_id: af1503b8-3f42-4708-bdef-5a3721c56ed1
        host_id: 1d424bd1e3409e81e8f473e9b0a820f07f508f30220b87875cb706a5
        interface_ip: 162.253.55.159
        label: ubuntu-noble
        node_properties: {}
        private_ipv4: 162.253.55.159
        private_ipv6: null
        provider: yul1
        public_ipv4: 162.253.55.159
        public_ipv6: 2604:e100:1:0:f816:3eff:fe77:2ef7
        region: ca-ymq-1
        slot: null
        uuid: null
  vars:
    cilium_helm_values:
      operator:
        replicas: 1
    kubernetes_version: 1.28.13
    molecule_install_collection_siblings: true
    molecule_scenario: secretgen-controller
    zuul:
      _inheritance_path:
      - '<Job base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-config/zuul.d/jobs.yaml@main#1>'
      - '<Job molecule explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/zuul-jobs/zuul.d/ansible-jobs.yaml@main#1>'
      - '<Job atmosphere-common-molecule explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: vexxhost/atmosphere.common/.zuul.yaml@main#4>'
      - '<Job atmosphere-common-molecule-secretgen-controller explicit: None implied:
        {MatchAny:{ImpliedBranchMatcher:main}} source: vexxhost/atmosphere.common/.zuul.yaml@main#33>'
      - '<Job atmosphere-common-molecule-secretgen-controller explicit: None implied:
        None source: vexxhost/atmosphere.common/.zuul.yaml@main#114>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: 0636888ade7c46d7a5fcb0c7ba6359f5
      build_refs:
      - branch: main
        change: '102'
        change_message: "chore(deps): update dependency fluxcd/flux2 to v2.9.5\n\n>
          \u2139\uFE0F **Note**\n> \n> This PR body was truncated due to platform
          limits.\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2)
          | minor | `2.6.4` \u2192 `2.9.5` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2
          (fluxcd/flux2)</summary>\n\n### [`v2.9.5`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n###
          [`v2.9.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4)\n\n####
          Highlights\n\nFlux v2.9.4 is a patch release that ships various fixes to
          the Flux controllers, covering source-watcher tarball extraction and glob
          expansion limits, the refspecs accepted by `ImageUpdateAutomation`, the
          HTTP request limits of the notification-controller servers, and Helm repository
          index loading, OCI chart digest pinning, `Bucket` error handling and GCS
          static authentication in source-controller. On the CLI side, `flux migrate
          -f` now supports migrating repositories to Flux 2.9. Users are encouraged
          to upgrade for the best experience.\n\nNote that this release contains CRD
          schema changes for `ArtifactGenerator` and `ImageUpdateAutomation`; both
          CRDs must be updated along with the controllers.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Confine tarball extraction and bound glob expansion (source-watcher)\n-
          Disallow force-update and deletion via refspecs (image-automation-controller)\n-
          Unify HTTP server request limits (notification-controller)\n- Align Helm
          repository index loading with upstream Helm v4 (source-controller)\n- Improve
          error handling in `Bucket` reconciliation (source-controller)\n- Pin OCI
          chart verification by digest (source-controller)\n- Limit GCS static authentication
          to service account keys (source-controller)\n- Restrict the `allow-webhooks`
          network policy to the receiver port (flux CLI)\n\nImprovements:\n\n- Add
          support for migrating repositories to 2.9 in `flux migrate -f` (flux CLI)\n-
          Update fluxcd/pkg dependencies, which align the ECR host detection with
          upstream (source-controller, image-reflector-controller, flux CLI)\n- Update
          Bitbucket Cloud receiver guidance (notification-controller)\n\n#### Components
          changelog\n\n- source-controller [v1.9.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.4/CHANGELOG.md)\n-
          source-watcher [v2.2.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.3/CHANGELOG.md)\n-
          notification-controller [v1.9.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.3/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.4/CHANGELOG.md)\n-
          image-automation-controller [v1.2.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.4/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Add support for 2.9 in `migrate -f`
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6021](https://redirect.github.com/fluxcd/flux2/pull/6021)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6026](https://redirect.github.com/fluxcd/flux2/pull/6026)\n-
          \\[release/v2.9.x] fix: restrict `allow-webhooks` netpol to receiver port
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6029](https://redirect.github.com/fluxcd/flux2/pull/6029)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6031](https://redirect.github.com/fluxcd/flux2/pull/6031)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4>\n\n###
          [`v2.9.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3)\n\n####
          Highlights\n\nFlux v2.9.3 is a patch release. It fixes empty lines vanishing
          from rendered Helm chart manifests, HelmReleases being marked as tested
          when their Helm test hooks never ran, and `spec.images` entries that set
          only some image fields discarding the remaining fields already declared
          for the same image in the `kustomization.yaml`. The latter affects both
          kustomize-controller and the `flux build|diff kustomization` commands. Users
          are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix empty lines vanishing from rendered chart manifests (helm-controller)\n-
          Fix `HasBeenTested` for all corner cases, where a release could be marked
          as tested although its Helm test hooks never ran (helm-controller)\n- Fix
          a `spec.images` entry setting only some of the image fields discarding the
          remaining fields already declared for the same image in the `kustomization.yaml`
          at `spec.path`, e.g. overriding only `newName` produced an untagged image
          reference (kustomize-controller, flux CLI)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n- Include source-watcher in the OCI flux-manifests
          artifact\n\n#### Components changelog\n\n- kustomize-controller [v1.9.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.4/CHANGELOG.md)\n-
          helm-controller [v1.6.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Include source-watcher to oci flux-manifests
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5996](https://redirect.github.com/fluxcd/flux2/pull/5996)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6006](https://redirect.github.com/fluxcd/flux2/pull/6006)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6011](https://redirect.github.com/fluxcd/flux2/pull/6011)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3>\n\n###
          [`v2.9.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2)\n\n#####
          Highlights\n\nFlux v2.9.2 is a patch release. The main fix addresses a regression
          introduced in\nv2.9.1 where a Kustomization with `openapi.path` pointing
          to a URL failed to\nreconcile with `failed to read OpenAPI schema`. This
          release also corrects several\nCRD field descriptions that contained inaccurate
          or leaked content. Users are\nencouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a regression where a Kustomization with `openapi.path` pointing to a
          URL failed to reconcile with `failed to read OpenAPI schema` (kustomize-controller)\n-
          Fix the `HelmChart` CRD description for `.status.url`, which pointed users
          at `BucketStatus.Artifact` instead of `HelmChartStatus.Artifact` (source-controller)\n-
          Fix the `ImageRepository` CRD description for `.status.observedExclusionList`,
          which referred to `spec.lastScanResult` instead of `status.lastScanResult`
          (image-reflector-controller)\n- Fix the `ImageUpdateAutomation` CRD description
          for `.status.observedSourceRevision`, which had a stray Go struct declaration
          leaking into it (image-automation-controller)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- source-controller
          [v1.9.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.3/CHANGELOG.md)\n-
          kustomize-controller [v1.9.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.3/CHANGELOG.md)\n-
          helm-controller [v1.6.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.2/CHANGELOG.md)\n-
          notification-controller [v1.9.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.3/CHANGELOG.md)\n-
          image-automation-controller [v1.2.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.3/CHANGELOG.md)\n-
          source-watcher [v2.2.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.2/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5984](https://redirect.github.com/fluxcd/flux2/pull/5984)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5990](https://redirect.github.com/fluxcd/flux2/pull/5990)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5994](https://redirect.github.com/fluxcd/flux2/pull/5994)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2>\n\n###
          [`v2.9.1`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n###
          [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n####
          Highlights\n\nFlux v2.9.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.9 GA blog post](https://fluxcd.io/blog/2026/06/flux-v2.9.0/).\n\nOverview
          of the new features:\n\n- Flux CLI Plugin System with the Mirror and Schema
          plugins (`flux plugin`)\n- Server-Side Apply field ignore rules for fine-grained
          drift control (`Kustomization`)\n- SOPS decryption with the Age post-quantum
          cipher (`Kustomization`)\n- Kubernetes Workload Identity authentication
          for OpenBao and Vault (`Kustomization`)\n- Helm post-render strategies,
          including chart hooks support (`HelmRelease`)\n- Literal mode for Helm values
          references mirroring `helm --set-literal` (`HelmRelease`)\n- Allow empty
          kind in CEL health check expressions (`Kustomization`, `HelmRelease`)\n-
          Git commit signing and verification with SSH keys (`GitRepository`, `ImageUpdateAutomation`)\n-
          AWS CodeCommit authentication using Workload Identity (`GitRepository`)\n-
          Custom Sigstore trusted root for keyless verification in air-gapped environments
          (`OCIRepository`)\n- Path pattern directory discovery for monorepos (`ArtifactGenerator`)\n-
          Secret-less, OIDC-secured webhook Receivers (`Receiver`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`
          \           | `>= 1.35.0`      |\n| `v1.36`            | `>= 1.36.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n#### Upgrade procedure\n\n:warning: The Flux APIs `image.toolkit.fluxcd.io/v1beta2`
          and `notification.toolkit.fluxcd.io/v1beta2`\nhave reached end-of-life and
          have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from older versions of Flux to v2.9.\n\n#### Components
          changelog\n\n- source-controller [v1.9.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.1/CHANGELOG.md)\n-
          kustomize-controller [v1.9.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.1/CHANGELOG.md)\n-
          notification-controller [v1.9.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.1/CHANGELOG.md)\n-
          helm-controller [v1.6.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.1/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.1/CHANGELOG.md)\n-
          image-automation-controller [v1.2.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.1/CHANGELOG.md)\n-
          source-watcher [v2.2.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.1/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Add backport label for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5732](https://redirect.github.com/fluxcd/flux2/pull/5732)\n-
          Remove no longer needed workaround for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5733](https://redirect.github.com/fluxcd/flux2/pull/5733)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5740](https://redirect.github.com/fluxcd/flux2/pull/5740)\n-
          Add missing things to release notes template by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5743](https://redirect.github.com/fluxcd/flux2/pull/5743)\n-
          ci: add top-level permissions to upgrade-fluxcd-pkg workflow by [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          build(deps): bump the ci group across 1 directory with 11 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5764](https://redirect.github.com/fluxcd/flux2/pull/5764)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5766](https://redirect.github.com/fluxcd/flux2/pull/5766)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5769](https://redirect.github.com/fluxcd/flux2/pull/5769)\n-
          Add target branch name to update branch by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5773](https://redirect.github.com/fluxcd/flux2/pull/5773)\n-
          Fix/resume exit code by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5701](https://redirect.github.com/fluxcd/flux2/pull/5701)\n-
          Mark RFC 0010, 0011 and 0012 as implemented by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5776](https://redirect.github.com/fluxcd/flux2/pull/5776)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5780](https://redirect.github.com/fluxcd/flux2/pull/5780)\n-
          Add --resolve-symlinks flag to build and push artifact commands by [@&#8203;rohansood10](https://redirect.github.com/rohansood10)
          in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          fix: validate --source flag in create kustomization command by [@&#8203;gma1k](https://redirect.github.com/gma1k)
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5821](https://redirect.github.com/fluxcd/flux2/pull/5821)\n-
          Add `--show-source` to `flux get ks` and `flux get hr`  by [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco)
          in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          Add `flux create secret receiver` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5835](https://redirect.github.com/fluxcd/flux2/pull/5835)\n-
          fix: handle multiple symlinks to same target in build artifact by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          Add `--in-memory-build` to `flux build ks` and `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          Migrate end-to-end test to latest cloud SDKs  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5840](https://redirect.github.com/fluxcd/flux2/pull/5840)\n-
          docs: Add AI Coding Assistants Guidance  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5841](https://redirect.github.com/fluxcd/flux2/pull/5841)\n-
          Add AI Agents guidance by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5847](https://redirect.github.com/fluxcd/flux2/pull/5847)\n-
          \\[RFC-0013] Flux CLI Plugin System by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5795](https://redirect.github.com/fluxcd/flux2/pull/5795)\n-
          Add `--ignore-not-found` to `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5845](https://redirect.github.com/fluxcd/flux2/pull/5845)\n-
          \\[RFC-0013] Implement plugin system by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5849](https://redirect.github.com/fluxcd/flux2/pull/5849)\n-
          build(deps): bump github.com/go-git/go-git/v5 from 5.17.1 to 5.18.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5853](https://redirect.github.com/fluxcd/flux2/pull/5853)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5856](https://redirect.github.com/fluxcd/flux2/pull/5856)\n-
          Add digest pinning support to `flux plugin install` by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5872](https://redirect.github.com/fluxcd/flux2/pull/5872)\n-
          Add `--ns-follows-kube-context` global flag for using the kubeconfig context
          namespace by [@&#8203;jtyr](https://redirect.github.com/jtyr) in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          include source-watcher in install.yaml manifests by [@&#8203;tmmorin](https://redirect.github.com/tmmorin)
          in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5890](https://redirect.github.com/fluxcd/flux2/pull/5890)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5903](https://redirect.github.com/fluxcd/flux2/pull/5903)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5907](https://redirect.github.com/fluxcd/flux2/pull/5907)\n-
          Validate Helm source URL schemes by [@&#8203;immanuwell](https://redirect.github.com/immanuwell)
          in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          Introduce `flux trigger receiver` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5908](https://redirect.github.com/fluxcd/flux2/pull/5908)\n-
          refactor(api): migrate MakeDependsOn to shared apis/meta func by [@&#8203;vecil](https://redirect.github.com/vecil)
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          Update to Kubernetes 1.36 and Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5924](https://redirect.github.com/fluxcd/flux2/pull/5924)\n-
          build(deps): bump the ci group across 1 directory with 19 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5925](https://redirect.github.com/fluxcd/flux2/pull/5925)\n-
          Run conformance tests for Kubernetes 1.36 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5926](https://redirect.github.com/fluxcd/flux2/pull/5926)\n-
          Add support for AWS CodeCommit to `flux bootstrap git` by [@&#8203;taraspos](https://redirect.github.com/taraspos)
          in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          Validate plugin binary path by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5927](https://redirect.github.com/fluxcd/flux2/pull/5927)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5928](https://redirect.github.com/fluxcd/flux2/pull/5928)\n-
          fix: preserve invalid metadata.labels in `flux build ks` by [@&#8203;raffis](https://redirect.github.com/raffis)
          in [#&#8203;5906](https://redirect.github.com/fluxcd/flux2/pull/5906)\n-
          build: target host arch for local builds/envtest by [@&#8203;stealthybox](https://redirect.github.com/stealthybox)
          in [#&#8203;5932](https://redirect.github.com/fluxcd/flux2/pull/5932)\n-
          build(deps): bump the ci group with 6 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5938](https://redirect.github.com/fluxcd/flux2/pull/5938)\n-
          Support specifing sparseCheckout in flux bootstrap by [@&#8203;piny940](https://redirect.github.com/piny940)
          in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5944](https://redirect.github.com/fluxcd/flux2/pull/5944)\n-
          Honor `ks.spec.postBuild.substituteStrategy` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5945](https://redirect.github.com/fluxcd/flux2/pull/5945)\n-
          Add DriftIgnoreRules support to flux diff kustomization by [@&#8203;dipti-pai](https://redirect.github.com/dipti-pai)
          in [#&#8203;5923](https://redirect.github.com/fluxcd/flux2/pull/5923)\n-
          Allow signing commits using SSH key by [@&#8203;hiddeco](https://redirect.github.com/hiddeco)
          in [#&#8203;5920](https://redirect.github.com/fluxcd/flux2/pull/5920)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5950](https://redirect.github.com/fluxcd/flux2/pull/5950)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5937](https://redirect.github.com/fluxcd/flux2/pull/5937)\n-
          cmd: support `type!=status` in get --status-selector by [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje)
          in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          Fix `flux get all --status-selector` for empty results and notification
          resources by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5954](https://redirect.github.com/fluxcd/flux2/pull/5954)\n-
          Upgrade go-git-providers to v0.27.0 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5956](https://redirect.github.com/fluxcd/flux2/pull/5956)\n-
          Fix using Receiver adapter for ArtifactGenerator by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5957](https://redirect.github.com/fluxcd/flux2/pull/5957)\n-
          feat: Install Plugins alongside Flux setup in gh actions by [@&#8203;gat786](https://redirect.github.com/gat786)
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5960](https://redirect.github.com/fluxcd/flux2/pull/5960)\n-
          Add CLI support for OCIRepository.spec.layerSelector in flux create source
          oci by [@&#8203;dme86](https://redirect.github.com/dme86) in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5963](https://redirect.github.com/fluxcd/flux2/pull/5963)\n\n####
          New Contributors\n\n- [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          made their first contribution in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          [@&#8203;rohansood10](https://redirect.github.com/rohansood10) made their
          first contribution in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          [@&#8203;gma1k](https://redirect.github.com/gma1k) made their first contribution
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco) made their
          first contribution in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          made their first contribution in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          [@&#8203;rycli](https://redirect.github.com/rycli) made their first contribution
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          [@&#8203;jtyr](https://redirect.github.com/jtyr) made their first contribution
          in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          [@&#8203;tmmorin](https://redirect.github.com/tmmorin) made their first
          contribution in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          [@&#8203;immanuwell](https://redirect.github.com/immanuwell) made their
          first contribution in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          [@&#8203;vecil](https://redirect.github.com/vecil) made their first contribution
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          [@&#8203;taraspos](https://redirect.github.com/taraspos) made their first
          contribution in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          [@&#8203;piny940](https://redirect.github.com/piny940) made their first
          contribution in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje) made their first
          contribution in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          [@&#8203;gat786](https://redirect.github.com/gat786) made their first contribution
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          [@&#8203;dme86](https://redirect.github.com/dme86) made their first contribution
          in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.9.0>\n\n###
          [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n#####
          Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via
          go-git v5.19.1 (source-controller, image-automation-controller), reliability
          fixes in helm-controller and source-controller, the move of Helm back to
          upstream v4.2.0, support for GCP sovereign cloud artifact registries, and
          dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Add a configurable HTTP timeout for artifact fetching, preventing fetches
          that could block indefinitely and stall reconciliations (helm-controller)\n-
          Fix unbounded memory growth caused by a Kubernetes client transport retry
          wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying
          non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n-
          Fix the Helm test action failing to find releases with names longer than
          53 characters (helm-controller)\n- Improve path handling in the source reconcilers
          (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository
          tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1
          which fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96)
          and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp)
          (source-controller, image-automation-controller)\n- Move Helm back to upstream
          v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign
          cloud artifact registries (source-controller, image-reflector-controller)\n-
          Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller
          [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n-
          image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n-
          source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n###
          [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n#####
          Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in
          kustomize-controller, a CVE fix in source-controller and image-automation-controller
          via go-git v5.19.0, and dependency updates. Users are encouraged to upgrade
          for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix management of objects annotated with `kustomize.toolkit.fluxcd.io/ssa:
          IfNotPresent` where non-namespaced resources were being deleted and recreated
          on each reconciliation (kustomize-controller)\n\nImprovements:\n\n- Update
          go-git to v5.19.0 which fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp)
          (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies
          (source-controller, kustomize-controller, image-automation-controller)\n\n#####
          Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n-
          kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n###
          [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n####
          Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and
          improvements across helm-controller, image-automation-controller, kustomize-controller,
          notification-controller, and source-controller. Users are encouraged to
          upgrade for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade
          Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n-
          Ignore force replace when server-side apply is enabled (helm-controller)\n-
          Fix a regression where generic providers would not forward commit status
          events (notification-controller)\n- Require the `audience` field on the
          GCR Receiver secret for tighter verification \u2014 will become mandatory
          in Flux v2.9 (notification-controller)\n\nImprovements:\n\n- Introduce the
          `MigrateAPIVersion` feature gate for migrating the API version of resources
          in managed field entries (kustomize-controller)\n- Update go-git to v5.18.0
          bringing performance improvements for Git operations (source-controller,
          image-automation-controller)\n\n#### Components changelog\n\n- helm-controller
          [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n-
          kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n###
          [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n####
          Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and
          improvements across kustomize-controller, source-controller, and notification-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a race condition where a cancelled reconciliation could leave stale
          data in the cache, causing Kustomizations to get stuck (kustomize-controller)\n-
          Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n-
          Improve error message for encrypted SSH keys without password (source-controller)\n-
          Add optional `email` and `audience` fields to the GCR Receiver for tighter
          verification (notification-controller)\n- Add provider manifest example
          for Azure Event Hub managed identity authentication (notification-controller)\n\n####
          Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n-
          source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n###
          [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n####
          Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the
          Flux CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag
          validation in `create kustomization` command\n\n#### CLI changelog\n\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n-
          \\[release/v2.8.x] fix: validate --source flag in create kustomization command
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n###
          [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n####
          Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in
          helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix templating errors for charts that include `---` in the content, e.g.
          YAML separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n####
          Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n###
          [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n#####
          Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix enqueuing new reconciliation requests for events on source Flux objects
          when they are already reconciling the revision present in the watch event
          (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML
          separator `---` getting concatenated to `apiVersion:` by updating to Helm
          4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when
          they don't have a retry strategy configured by introducing a new feature
          gate `DefaultToRetryOnFailure` that improves the experience when the `CancelHealthCheckOnNewRevision`
          is enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry
          to use the ACR-specific scope (source-controller, image-reflector-controller)\n-
          Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138)
          by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n-
          source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n-
          kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n-
          helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n-
          image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n-
          source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across
          1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n-
          Update toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n###
          [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n#####
          Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix Git commit status events being dropped for Kustomizations (notification-controller)\n-
          Fix health check for StatefulSets when the Pods are Pending/Unschedulable
          during rollout (helm-controller, kustomize-controller)\n\n##### Components
          changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n-
          notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n-
          helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround
          for Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n-
          \\[release/v2.8.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n###
          [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n#####
          Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview
          of the new features:\n\n- Helm v4 support, including server-side apply and
          kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of
          Helm-managed objects with CEL expressions (`HelmRelease`)\n- Improved observability
          of Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n-
          Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision`
          feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting
          on Pull Requests directly from Flux notifications (`Provider`)\n- Custom
          SSA apply stages for ordering resource application in kustomize-controller
          (`Kustomization`)\n- Automatic GitHub App installation ID lookup from the
          repository owner (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n-
          Support for Cosign v3 for verifying OCI artifacts and container images (`OCIRepository`)\n-
          ArtifactGenerator support for extracting and modifying Helm charts (`ArtifactGenerator`)\n-
          Bypass cache when fetching source objects via `DirectSourceFetch` feature
          gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`
          \           | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2`
          and `v2beta2` (deprecated in 2024) have reached end-of-life and have been
          removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux
          v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a
          smooth upgrade from older versions of Flux to v2.8.\n\n##### Components
          changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n-
          kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n-
          notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n-
          helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n-
          image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n-
          source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests`
          workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n-
          Add backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n-
          build(deps): bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n-
          Fix `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n-
          Extend `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n-
          Improve `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n-
          Fix `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n-
          Add source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n-
          Fix `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n-
          refactor: convert `Kustomization` resource into unstructured map only once
          during variable substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n-
          Disable AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n-
          Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags
          by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n-
          Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n-
          Restore GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n-
          \\[RFC-0012] Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n-
          fix: handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0)
          in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          Pin cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n-
          \\[RFC-0012] Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n-
          Fix bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n-
          fix: return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          ci: Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n-
          Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n-
          Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n-
          Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n-
          diff: report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d)
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n-
          Allow option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere)
          in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n-
          fix: [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654)
          by checking if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n-
          Added retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu)
          in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          Run conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n-
          fix: normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi)
          in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          Introduce support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n-
          Update dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n-
          Fix resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          Add 2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n-
          Introduce workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n-
          Fix event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n-
          Build with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n-
          Update helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n-
          build(deps): bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n-
          Fix bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey)
          in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n-
          Dump debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n-
          Set Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n-
          Update conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n#####
          New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their
          first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first
          contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          [@&#8203;anshuishere](https://redirect.github.com/anshuishere) made their
          first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made
          their first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their
          first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first
          contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first
          contribution in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n###
          [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n#####
          Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix HelmRelease history truncation when using the `RetryOnFailure` str\n\n>
          \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQ0LjQ5LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->\n"
        change_url: https://github.com/vexxhost/atmosphere.common/pull/102
        commit_id: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        patchset: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/atmosphere.common
          name: vexxhost/atmosphere.common
          short_name: atmosphere.common
          src_dir: src/github.com/vexxhost/atmosphere.common
        src_dir: src/github.com/vexxhost/atmosphere.common
        topic: null
      buildset: 15822a5b3c6c40f981f33e16993e01e5
      buildset_refs:
      - branch: main
        change: '102'
        change_message: "chore(deps): update dependency fluxcd/flux2 to v2.9.5\n\n>
          \u2139\uFE0F **Note**\n> \n> This PR body was truncated due to platform
          limits.\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2)
          | minor | `2.6.4` \u2192 `2.9.5` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2
          (fluxcd/flux2)</summary>\n\n### [`v2.9.5`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n###
          [`v2.9.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4)\n\n####
          Highlights\n\nFlux v2.9.4 is a patch release that ships various fixes to
          the Flux controllers, covering source-watcher tarball extraction and glob
          expansion limits, the refspecs accepted by `ImageUpdateAutomation`, the
          HTTP request limits of the notification-controller servers, and Helm repository
          index loading, OCI chart digest pinning, `Bucket` error handling and GCS
          static authentication in source-controller. On the CLI side, `flux migrate
          -f` now supports migrating repositories to Flux 2.9. Users are encouraged
          to upgrade for the best experience.\n\nNote that this release contains CRD
          schema changes for `ArtifactGenerator` and `ImageUpdateAutomation`; both
          CRDs must be updated along with the controllers.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Confine tarball extraction and bound glob expansion (source-watcher)\n-
          Disallow force-update and deletion via refspecs (image-automation-controller)\n-
          Unify HTTP server request limits (notification-controller)\n- Align Helm
          repository index loading with upstream Helm v4 (source-controller)\n- Improve
          error handling in `Bucket` reconciliation (source-controller)\n- Pin OCI
          chart verification by digest (source-controller)\n- Limit GCS static authentication
          to service account keys (source-controller)\n- Restrict the `allow-webhooks`
          network policy to the receiver port (flux CLI)\n\nImprovements:\n\n- Add
          support for migrating repositories to 2.9 in `flux migrate -f` (flux CLI)\n-
          Update fluxcd/pkg dependencies, which align the ECR host detection with
          upstream (source-controller, image-reflector-controller, flux CLI)\n- Update
          Bitbucket Cloud receiver guidance (notification-controller)\n\n#### Components
          changelog\n\n- source-controller [v1.9.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.4/CHANGELOG.md)\n-
          source-watcher [v2.2.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.3/CHANGELOG.md)\n-
          notification-controller [v1.9.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.3/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.4/CHANGELOG.md)\n-
          image-automation-controller [v1.2.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.4/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Add support for 2.9 in `migrate -f`
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6021](https://redirect.github.com/fluxcd/flux2/pull/6021)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6026](https://redirect.github.com/fluxcd/flux2/pull/6026)\n-
          \\[release/v2.9.x] fix: restrict `allow-webhooks` netpol to receiver port
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6029](https://redirect.github.com/fluxcd/flux2/pull/6029)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6031](https://redirect.github.com/fluxcd/flux2/pull/6031)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4>\n\n###
          [`v2.9.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3)\n\n####
          Highlights\n\nFlux v2.9.3 is a patch release. It fixes empty lines vanishing
          from rendered Helm chart manifests, HelmReleases being marked as tested
          when their Helm test hooks never ran, and `spec.images` entries that set
          only some image fields discarding the remaining fields already declared
          for the same image in the `kustomization.yaml`. The latter affects both
          kustomize-controller and the `flux build|diff kustomization` commands. Users
          are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix empty lines vanishing from rendered chart manifests (helm-controller)\n-
          Fix `HasBeenTested` for all corner cases, where a release could be marked
          as tested although its Helm test hooks never ran (helm-controller)\n- Fix
          a `spec.images` entry setting only some of the image fields discarding the
          remaining fields already declared for the same image in the `kustomization.yaml`
          at `spec.path`, e.g. overriding only `newName` produced an untagged image
          reference (kustomize-controller, flux CLI)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n- Include source-watcher in the OCI flux-manifests
          artifact\n\n#### Components changelog\n\n- kustomize-controller [v1.9.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.4/CHANGELOG.md)\n-
          helm-controller [v1.6.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Include source-watcher to oci flux-manifests
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5996](https://redirect.github.com/fluxcd/flux2/pull/5996)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6006](https://redirect.github.com/fluxcd/flux2/pull/6006)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6011](https://redirect.github.com/fluxcd/flux2/pull/6011)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3>\n\n###
          [`v2.9.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2)\n\n#####
          Highlights\n\nFlux v2.9.2 is a patch release. The main fix addresses a regression
          introduced in\nv2.9.1 where a Kustomization with `openapi.path` pointing
          to a URL failed to\nreconcile with `failed to read OpenAPI schema`. This
          release also corrects several\nCRD field descriptions that contained inaccurate
          or leaked content. Users are\nencouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a regression where a Kustomization with `openapi.path` pointing to a
          URL failed to reconcile with `failed to read OpenAPI schema` (kustomize-controller)\n-
          Fix the `HelmChart` CRD description for `.status.url`, which pointed users
          at `BucketStatus.Artifact` instead of `HelmChartStatus.Artifact` (source-controller)\n-
          Fix the `ImageRepository` CRD description for `.status.observedExclusionList`,
          which referred to `spec.lastScanResult` instead of `status.lastScanResult`
          (image-reflector-controller)\n- Fix the `ImageUpdateAutomation` CRD description
          for `.status.observedSourceRevision`, which had a stray Go struct declaration
          leaking into it (image-automation-controller)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- source-controller
          [v1.9.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.3/CHANGELOG.md)\n-
          kustomize-controller [v1.9.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.3/CHANGELOG.md)\n-
          helm-controller [v1.6.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.2/CHANGELOG.md)\n-
          notification-controller [v1.9.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.3/CHANGELOG.md)\n-
          image-automation-controller [v1.2.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.3/CHANGELOG.md)\n-
          source-watcher [v2.2.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.2/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5984](https://redirect.github.com/fluxcd/flux2/pull/5984)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5990](https://redirect.github.com/fluxcd/flux2/pull/5990)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5994](https://redirect.github.com/fluxcd/flux2/pull/5994)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2>\n\n###
          [`v2.9.1`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n###
          [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n####
          Highlights\n\nFlux v2.9.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.9 GA blog post](https://fluxcd.io/blog/2026/06/flux-v2.9.0/).\n\nOverview
          of the new features:\n\n- Flux CLI Plugin System with the Mirror and Schema
          plugins (`flux plugin`)\n- Server-Side Apply field ignore rules for fine-grained
          drift control (`Kustomization`)\n- SOPS decryption with the Age post-quantum
          cipher (`Kustomization`)\n- Kubernetes Workload Identity authentication
          for OpenBao and Vault (`Kustomization`)\n- Helm post-render strategies,
          including chart hooks support (`HelmRelease`)\n- Literal mode for Helm values
          references mirroring `helm --set-literal` (`HelmRelease`)\n- Allow empty
          kind in CEL health check expressions (`Kustomization`, `HelmRelease`)\n-
          Git commit signing and verification with SSH keys (`GitRepository`, `ImageUpdateAutomation`)\n-
          AWS CodeCommit authentication using Workload Identity (`GitRepository`)\n-
          Custom Sigstore trusted root for keyless verification in air-gapped environments
          (`OCIRepository`)\n- Path pattern directory discovery for monorepos (`ArtifactGenerator`)\n-
          Secret-less, OIDC-secured webhook Receivers (`Receiver`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`
          \           | `>= 1.35.0`      |\n| `v1.36`            | `>= 1.36.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n#### Upgrade procedure\n\n:warning: The Flux APIs `image.toolkit.fluxcd.io/v1beta2`
          and `notification.toolkit.fluxcd.io/v1beta2`\nhave reached end-of-life and
          have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from older versions of Flux to v2.9.\n\n#### Components
          changelog\n\n- source-controller [v1.9.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.1/CHANGELOG.md)\n-
          kustomize-controller [v1.9.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.1/CHANGELOG.md)\n-
          notification-controller [v1.9.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.1/CHANGELOG.md)\n-
          helm-controller [v1.6.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.1/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.1/CHANGELOG.md)\n-
          image-automation-controller [v1.2.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.1/CHANGELOG.md)\n-
          source-watcher [v2.2.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.1/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Add backport label for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5732](https://redirect.github.com/fluxcd/flux2/pull/5732)\n-
          Remove no longer needed workaround for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5733](https://redirect.github.com/fluxcd/flux2/pull/5733)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5740](https://redirect.github.com/fluxcd/flux2/pull/5740)\n-
          Add missing things to release notes template by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5743](https://redirect.github.com/fluxcd/flux2/pull/5743)\n-
          ci: add top-level permissions to upgrade-fluxcd-pkg workflow by [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          build(deps): bump the ci group across 1 directory with 11 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5764](https://redirect.github.com/fluxcd/flux2/pull/5764)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5766](https://redirect.github.com/fluxcd/flux2/pull/5766)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5769](https://redirect.github.com/fluxcd/flux2/pull/5769)\n-
          Add target branch name to update branch by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5773](https://redirect.github.com/fluxcd/flux2/pull/5773)\n-
          Fix/resume exit code by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5701](https://redirect.github.com/fluxcd/flux2/pull/5701)\n-
          Mark RFC 0010, 0011 and 0012 as implemented by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5776](https://redirect.github.com/fluxcd/flux2/pull/5776)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5780](https://redirect.github.com/fluxcd/flux2/pull/5780)\n-
          Add --resolve-symlinks flag to build and push artifact commands by [@&#8203;rohansood10](https://redirect.github.com/rohansood10)
          in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          fix: validate --source flag in create kustomization command by [@&#8203;gma1k](https://redirect.github.com/gma1k)
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5821](https://redirect.github.com/fluxcd/flux2/pull/5821)\n-
          Add `--show-source` to `flux get ks` and `flux get hr`  by [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco)
          in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          Add `flux create secret receiver` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5835](https://redirect.github.com/fluxcd/flux2/pull/5835)\n-
          fix: handle multiple symlinks to same target in build artifact by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          Add `--in-memory-build` to `flux build ks` and `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          Migrate end-to-end test to latest cloud SDKs  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5840](https://redirect.github.com/fluxcd/flux2/pull/5840)\n-
          docs: Add AI Coding Assistants Guidance  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5841](https://redirect.github.com/fluxcd/flux2/pull/5841)\n-
          Add AI Agents guidance by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5847](https://redirect.github.com/fluxcd/flux2/pull/5847)\n-
          \\[RFC-0013] Flux CLI Plugin System by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5795](https://redirect.github.com/fluxcd/flux2/pull/5795)\n-
          Add `--ignore-not-found` to `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5845](https://redirect.github.com/fluxcd/flux2/pull/5845)\n-
          \\[RFC-0013] Implement plugin system by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5849](https://redirect.github.com/fluxcd/flux2/pull/5849)\n-
          build(deps): bump github.com/go-git/go-git/v5 from 5.17.1 to 5.18.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5853](https://redirect.github.com/fluxcd/flux2/pull/5853)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5856](https://redirect.github.com/fluxcd/flux2/pull/5856)\n-
          Add digest pinning support to `flux plugin install` by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5872](https://redirect.github.com/fluxcd/flux2/pull/5872)\n-
          Add `--ns-follows-kube-context` global flag for using the kubeconfig context
          namespace by [@&#8203;jtyr](https://redirect.github.com/jtyr) in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          include source-watcher in install.yaml manifests by [@&#8203;tmmorin](https://redirect.github.com/tmmorin)
          in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5890](https://redirect.github.com/fluxcd/flux2/pull/5890)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5903](https://redirect.github.com/fluxcd/flux2/pull/5903)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5907](https://redirect.github.com/fluxcd/flux2/pull/5907)\n-
          Validate Helm source URL schemes by [@&#8203;immanuwell](https://redirect.github.com/immanuwell)
          in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          Introduce `flux trigger receiver` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5908](https://redirect.github.com/fluxcd/flux2/pull/5908)\n-
          refactor(api): migrate MakeDependsOn to shared apis/meta func by [@&#8203;vecil](https://redirect.github.com/vecil)
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          Update to Kubernetes 1.36 and Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5924](https://redirect.github.com/fluxcd/flux2/pull/5924)\n-
          build(deps): bump the ci group across 1 directory with 19 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5925](https://redirect.github.com/fluxcd/flux2/pull/5925)\n-
          Run conformance tests for Kubernetes 1.36 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5926](https://redirect.github.com/fluxcd/flux2/pull/5926)\n-
          Add support for AWS CodeCommit to `flux bootstrap git` by [@&#8203;taraspos](https://redirect.github.com/taraspos)
          in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          Validate plugin binary path by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5927](https://redirect.github.com/fluxcd/flux2/pull/5927)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5928](https://redirect.github.com/fluxcd/flux2/pull/5928)\n-
          fix: preserve invalid metadata.labels in `flux build ks` by [@&#8203;raffis](https://redirect.github.com/raffis)
          in [#&#8203;5906](https://redirect.github.com/fluxcd/flux2/pull/5906)\n-
          build: target host arch for local builds/envtest by [@&#8203;stealthybox](https://redirect.github.com/stealthybox)
          in [#&#8203;5932](https://redirect.github.com/fluxcd/flux2/pull/5932)\n-
          build(deps): bump the ci group with 6 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5938](https://redirect.github.com/fluxcd/flux2/pull/5938)\n-
          Support specifing sparseCheckout in flux bootstrap by [@&#8203;piny940](https://redirect.github.com/piny940)
          in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5944](https://redirect.github.com/fluxcd/flux2/pull/5944)\n-
          Honor `ks.spec.postBuild.substituteStrategy` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5945](https://redirect.github.com/fluxcd/flux2/pull/5945)\n-
          Add DriftIgnoreRules support to flux diff kustomization by [@&#8203;dipti-pai](https://redirect.github.com/dipti-pai)
          in [#&#8203;5923](https://redirect.github.com/fluxcd/flux2/pull/5923)\n-
          Allow signing commits using SSH key by [@&#8203;hiddeco](https://redirect.github.com/hiddeco)
          in [#&#8203;5920](https://redirect.github.com/fluxcd/flux2/pull/5920)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5950](https://redirect.github.com/fluxcd/flux2/pull/5950)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5937](https://redirect.github.com/fluxcd/flux2/pull/5937)\n-
          cmd: support `type!=status` in get --status-selector by [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje)
          in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          Fix `flux get all --status-selector` for empty results and notification
          resources by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5954](https://redirect.github.com/fluxcd/flux2/pull/5954)\n-
          Upgrade go-git-providers to v0.27.0 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5956](https://redirect.github.com/fluxcd/flux2/pull/5956)\n-
          Fix using Receiver adapter for ArtifactGenerator by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5957](https://redirect.github.com/fluxcd/flux2/pull/5957)\n-
          feat: Install Plugins alongside Flux setup in gh actions by [@&#8203;gat786](https://redirect.github.com/gat786)
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5960](https://redirect.github.com/fluxcd/flux2/pull/5960)\n-
          Add CLI support for OCIRepository.spec.layerSelector in flux create source
          oci by [@&#8203;dme86](https://redirect.github.com/dme86) in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5963](https://redirect.github.com/fluxcd/flux2/pull/5963)\n\n####
          New Contributors\n\n- [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          made their first contribution in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          [@&#8203;rohansood10](https://redirect.github.com/rohansood10) made their
          first contribution in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          [@&#8203;gma1k](https://redirect.github.com/gma1k) made their first contribution
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco) made their
          first contribution in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          made their first contribution in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          [@&#8203;rycli](https://redirect.github.com/rycli) made their first contribution
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          [@&#8203;jtyr](https://redirect.github.com/jtyr) made their first contribution
          in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          [@&#8203;tmmorin](https://redirect.github.com/tmmorin) made their first
          contribution in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          [@&#8203;immanuwell](https://redirect.github.com/immanuwell) made their
          first contribution in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          [@&#8203;vecil](https://redirect.github.com/vecil) made their first contribution
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          [@&#8203;taraspos](https://redirect.github.com/taraspos) made their first
          contribution in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          [@&#8203;piny940](https://redirect.github.com/piny940) made their first
          contribution in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje) made their first
          contribution in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          [@&#8203;gat786](https://redirect.github.com/gat786) made their first contribution
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          [@&#8203;dme86](https://redirect.github.com/dme86) made their first contribution
          in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.9.0>\n\n###
          [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n#####
          Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via
          go-git v5.19.1 (source-controller, image-automation-controller), reliability
          fixes in helm-controller and source-controller, the move of Helm back to
          upstream v4.2.0, support for GCP sovereign cloud artifact registries, and
          dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Add a configurable HTTP timeout for artifact fetching, preventing fetches
          that could block indefinitely and stall reconciliations (helm-controller)\n-
          Fix unbounded memory growth caused by a Kubernetes client transport retry
          wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying
          non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n-
          Fix the Helm test action failing to find releases with names longer than
          53 characters (helm-controller)\n- Improve path handling in the source reconcilers
          (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository
          tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1
          which fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96)
          and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp)
          (source-controller, image-automation-controller)\n- Move Helm back to upstream
          v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign
          cloud artifact registries (source-controller, image-reflector-controller)\n-
          Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller
          [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n-
          image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n-
          source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n###
          [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n#####
          Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in
          kustomize-controller, a CVE fix in source-controller and image-automation-controller
          via go-git v5.19.0, and dependency updates. Users are encouraged to upgrade
          for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix management of objects annotated with `kustomize.toolkit.fluxcd.io/ssa:
          IfNotPresent` where non-namespaced resources were being deleted and recreated
          on each reconciliation (kustomize-controller)\n\nImprovements:\n\n- Update
          go-git to v5.19.0 which fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp)
          (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies
          (source-controller, kustomize-controller, image-automation-controller)\n\n#####
          Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n-
          kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n###
          [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n####
          Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and
          improvements across helm-controller, image-automation-controller, kustomize-controller,
          notification-controller, and source-controller. Users are encouraged to
          upgrade for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade
          Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n-
          Ignore force replace when server-side apply is enabled (helm-controller)\n-
          Fix a regression where generic providers would not forward commit status
          events (notification-controller)\n- Require the `audience` field on the
          GCR Receiver secret for tighter verification \u2014 will become mandatory
          in Flux v2.9 (notification-controller)\n\nImprovements:\n\n- Introduce the
          `MigrateAPIVersion` feature gate for migrating the API version of resources
          in managed field entries (kustomize-controller)\n- Update go-git to v5.18.0
          bringing performance improvements for Git operations (source-controller,
          image-automation-controller)\n\n#### Components changelog\n\n- helm-controller
          [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n-
          kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n###
          [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n####
          Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and
          improvements across kustomize-controller, source-controller, and notification-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a race condition where a cancelled reconciliation could leave stale
          data in the cache, causing Kustomizations to get stuck (kustomize-controller)\n-
          Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n-
          Improve error message for encrypted SSH keys without password (source-controller)\n-
          Add optional `email` and `audience` fields to the GCR Receiver for tighter
          verification (notification-controller)\n- Add provider manifest example
          for Azure Event Hub managed identity authentication (notification-controller)\n\n####
          Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n-
          source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n###
          [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n####
          Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the
          Flux CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag
          validation in `create kustomization` command\n\n#### CLI changelog\n\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n-
          \\[release/v2.8.x] fix: validate --source flag in create kustomization command
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n###
          [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n####
          Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in
          helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix templating errors for charts that include `---` in the content, e.g.
          YAML separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n####
          Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n###
          [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n#####
          Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix enqueuing new reconciliation requests for events on source Flux objects
          when they are already reconciling the revision present in the watch event
          (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML
          separator `---` getting concatenated to `apiVersion:` by updating to Helm
          4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when
          they don't have a retry strategy configured by introducing a new feature
          gate `DefaultToRetryOnFailure` that improves the experience when the `CancelHealthCheckOnNewRevision`
          is enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry
          to use the ACR-specific scope (source-controller, image-reflector-controller)\n-
          Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138)
          by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n-
          source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n-
          kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n-
          helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n-
          image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n-
          source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across
          1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n-
          Update toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n###
          [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n#####
          Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix Git commit status events being dropped for Kustomizations (notification-controller)\n-
          Fix health check for StatefulSets when the Pods are Pending/Unschedulable
          during rollout (helm-controller, kustomize-controller)\n\n##### Components
          changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n-
          notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n-
          helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround
          for Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n-
          \\[release/v2.8.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n###
          [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n#####
          Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview
          of the new features:\n\n- Helm v4 support, including server-side apply and
          kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of
          Helm-managed objects with CEL expressions (`HelmRelease`)\n- Improved observability
          of Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n-
          Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision`
          feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting
          on Pull Requests directly from Flux notifications (`Provider`)\n- Custom
          SSA apply stages for ordering resource application in kustomize-controller
          (`Kustomization`)\n- Automatic GitHub App installation ID lookup from the
          repository owner (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n-
          Support for Cosign v3 for verifying OCI artifacts and container images (`OCIRepository`)\n-
          ArtifactGenerator support for extracting and modifying Helm charts (`ArtifactGenerator`)\n-
          Bypass cache when fetching source objects via `DirectSourceFetch` feature
          gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`
          \           | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2`
          and `v2beta2` (deprecated in 2024) have reached end-of-life and have been
          removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux
          v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a
          smooth upgrade from older versions of Flux to v2.8.\n\n##### Components
          changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n-
          kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n-
          notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n-
          helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n-
          image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n-
          source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests`
          workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n-
          Add backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n-
          build(deps): bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n-
          Fix `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n-
          Extend `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n-
          Improve `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n-
          Fix `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n-
          Add source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n-
          Fix `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n-
          refactor: convert `Kustomization` resource into unstructured map only once
          during variable substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n-
          Disable AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n-
          Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags
          by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n-
          Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n-
          Restore GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n-
          \\[RFC-0012] Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n-
          fix: handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0)
          in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          Pin cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n-
          \\[RFC-0012] Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n-
          Fix bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n-
          fix: return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          ci: Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n-
          Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n-
          Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n-
          Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n-
          diff: report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d)
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n-
          Allow option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere)
          in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n-
          fix: [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654)
          by checking if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n-
          Added retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu)
          in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          Run conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n-
          fix: normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi)
          in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          Introduce support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n-
          Update dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n-
          Fix resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          Add 2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n-
          Introduce workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n-
          Fix event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n-
          Build with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n-
          Update helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n-
          build(deps): bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n-
          Fix bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey)
          in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n-
          Dump debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n-
          Set Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n-
          Update conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n#####
          New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their
          first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first
          contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          [@&#8203;anshuishere](https://redirect.github.com/anshuishere) made their
          first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made
          their first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their
          first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first
          contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first
          contribution in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n###
          [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n#####
          Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix HelmRelease history truncation when using the `RetryOnFailure` str\n\n>
          \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQ0LjQ5LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->\n"
        change_url: https://github.com/vexxhost/atmosphere.common/pull/102
        commit_id: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        patchset: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/atmosphere.common
          name: vexxhost/atmosphere.common
          short_name: atmosphere.common
          src_dir: src/github.com/vexxhost/atmosphere.common
        src_dir: src/github.com/vexxhost/atmosphere.common
        topic: null
      change: '102'
      change_message: "chore(deps): update dependency fluxcd/flux2 to v2.9.5\n\n>
        \u2139\uFE0F **Note**\n> \n> This PR body was truncated due to platform limits.\n\nThis
        PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n|
        [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2) | minor | `2.6.4`
        \u2192 `2.9.5` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2
        (fluxcd/flux2)</summary>\n\n### [`v2.9.5`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n###
        [`v2.9.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.4)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4)\n\n####
        Highlights\n\nFlux v2.9.4 is a patch release that ships various fixes to the
        Flux controllers, covering source-watcher tarball extraction and glob expansion
        limits, the refspecs accepted by `ImageUpdateAutomation`, the HTTP request
        limits of the notification-controller servers, and Helm repository index loading,
        OCI chart digest pinning, `Bucket` error handling and GCS static authentication
        in source-controller. On the CLI side, `flux migrate -f` now supports migrating
        repositories to Flux 2.9. Users are encouraged to upgrade for the best experience.\n\nNote
        that this release contains CRD schema changes for `ArtifactGenerator` and
        `ImageUpdateAutomation`; both CRDs must be updated along with the controllers.\n\n\u2139\uFE0F
        Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Confine tarball extraction and bound glob expansion (source-watcher)\n- Disallow
        force-update and deletion via refspecs (image-automation-controller)\n- Unify
        HTTP server request limits (notification-controller)\n- Align Helm repository
        index loading with upstream Helm v4 (source-controller)\n- Improve error handling
        in `Bucket` reconciliation (source-controller)\n- Pin OCI chart verification
        by digest (source-controller)\n- Limit GCS static authentication to service
        account keys (source-controller)\n- Restrict the `allow-webhooks` network
        policy to the receiver port (flux CLI)\n\nImprovements:\n\n- Add support for
        migrating repositories to 2.9 in `flux migrate -f` (flux CLI)\n- Update fluxcd/pkg
        dependencies, which align the ECR host detection with upstream (source-controller,
        image-reflector-controller, flux CLI)\n- Update Bitbucket Cloud receiver guidance
        (notification-controller)\n\n#### Components changelog\n\n- source-controller
        [v1.9.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.4/CHANGELOG.md)\n-
        source-watcher [v2.2.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.3/CHANGELOG.md)\n-
        notification-controller [v1.9.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.3/CHANGELOG.md)\n-
        image-reflector-controller [v1.2.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.4/CHANGELOG.md)\n-
        image-automation-controller [v1.2.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.4/CHANGELOG.md)\n\n####
        CLI changelog\n\n- \\[release/v2.9.x] Add support for 2.9 in `migrate -f`
        by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6021](https://redirect.github.com/fluxcd/flux2/pull/6021)\n-
        Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;6026](https://redirect.github.com/fluxcd/flux2/pull/6026)\n- \\[release/v2.9.x]
        fix: restrict `allow-webhooks` netpol to receiver port by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;6029](https://redirect.github.com/fluxcd/flux2/pull/6029)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;6031](https://redirect.github.com/fluxcd/flux2/pull/6031)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4>\n\n###
        [`v2.9.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.3)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3)\n\n####
        Highlights\n\nFlux v2.9.3 is a patch release. It fixes empty lines vanishing
        from rendered Helm chart manifests, HelmReleases being marked as tested when
        their Helm test hooks never ran, and `spec.images` entries that set only some
        image fields discarding the remaining fields already declared for the same
        image in the `kustomization.yaml`. The latter affects both kustomize-controller
        and the `flux build|diff kustomization` commands. Users are encouraged to
        upgrade for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade
        Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix empty lines vanishing from rendered chart manifests (helm-controller)\n-
        Fix `HasBeenTested` for all corner cases, where a release could be marked
        as tested although its Helm test hooks never ran (helm-controller)\n- Fix
        a `spec.images` entry setting only some of the image fields discarding the
        remaining fields already declared for the same image in the `kustomization.yaml`
        at `spec.path`, e.g. overriding only `newName` produced an untagged image
        reference (kustomize-controller, flux CLI)\n\nImprovements:\n\n- Update fluxcd/pkg
        dependencies\n- Include source-watcher in the OCI flux-manifests artifact\n\n####
        Components changelog\n\n- kustomize-controller [v1.9.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.4/CHANGELOG.md)\n-
        helm-controller [v1.6.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.3/CHANGELOG.md)\n\n####
        CLI changelog\n\n- \\[release/v2.9.x] Include source-watcher to oci flux-manifests
        by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5996](https://redirect.github.com/fluxcd/flux2/pull/5996)\n-
        Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;6006](https://redirect.github.com/fluxcd/flux2/pull/6006)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;6011](https://redirect.github.com/fluxcd/flux2/pull/6011)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3>\n\n###
        [`v2.9.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.2)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2)\n\n#####
        Highlights\n\nFlux v2.9.2 is a patch release. The main fix addresses a regression
        introduced in\nv2.9.1 where a Kustomization with `openapi.path` pointing to
        a URL failed to\nreconcile with `failed to read OpenAPI schema`. This release
        also corrects several\nCRD field descriptions that contained inaccurate or
        leaked content. Users are\nencouraged to upgrade for the best experience.\n\n\u2139\uFE0F
        Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix a regression where a Kustomization with `openapi.path` pointing to a URL
        failed to reconcile with `failed to read OpenAPI schema` (kustomize-controller)\n-
        Fix the `HelmChart` CRD description for `.status.url`, which pointed users
        at `BucketStatus.Artifact` instead of `HelmChartStatus.Artifact` (source-controller)\n-
        Fix the `ImageRepository` CRD description for `.status.observedExclusionList`,
        which referred to `spec.lastScanResult` instead of `status.lastScanResult`
        (image-reflector-controller)\n- Fix the `ImageUpdateAutomation` CRD description
        for `.status.observedSourceRevision`, which had a stray Go struct declaration
        leaking into it (image-automation-controller)\n\nImprovements:\n\n- Update
        fluxcd/pkg dependencies\n\n##### Components changelog\n\n- source-controller
        [v1.9.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.3/CHANGELOG.md)\n-
        kustomize-controller [v1.9.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.3/CHANGELOG.md)\n-
        helm-controller [v1.6.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.2/CHANGELOG.md)\n-
        notification-controller [v1.9.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.2/CHANGELOG.md)\n-
        image-reflector-controller [v1.2.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.3/CHANGELOG.md)\n-
        image-automation-controller [v1.2.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.3/CHANGELOG.md)\n-
        source-watcher [v2.2.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.2/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5984](https://redirect.github.com/fluxcd/flux2/pull/5984)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5990](https://redirect.github.com/fluxcd/flux2/pull/5990)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5994](https://redirect.github.com/fluxcd/flux2/pull/5994)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2>\n\n###
        [`v2.9.1`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n###
        [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.0)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n####
        Highlights\n\nFlux v2.9.0 is a feature release. Users are encouraged to upgrade
        for the best experience.\n\nFor a compressive overview of new features and
        API changes included in this release, please refer to the [Announcing Flux
        2.9 GA blog post](https://fluxcd.io/blog/2026/06/flux-v2.9.0/).\n\nOverview
        of the new features:\n\n- Flux CLI Plugin System with the Mirror and Schema
        plugins (`flux plugin`)\n- Server-Side Apply field ignore rules for fine-grained
        drift control (`Kustomization`)\n- SOPS decryption with the Age post-quantum
        cipher (`Kustomization`)\n- Kubernetes Workload Identity authentication for
        OpenBao and Vault (`Kustomization`)\n- Helm post-render strategies, including
        chart hooks support (`HelmRelease`)\n- Literal mode for Helm values references
        mirroring `helm --set-literal` (`HelmRelease`)\n- Allow empty kind in CEL
        health check expressions (`Kustomization`, `HelmRelease`)\n- Git commit signing
        and verification with SSH keys (`GitRepository`, `ImageUpdateAutomation`)\n-
        AWS CodeCommit authentication using Workload Identity (`GitRepository`)\n-
        Custom Sigstore trusted root for keyless verification in air-gapped environments
        (`OCIRepository`)\n- Path pattern directory discovery for monorepos (`ArtifactGenerator`)\n-
        Secret-less, OIDC-secured webhook Receivers (`Receiver`)\n\n\u2764\uFE0F Big
        thanks to all the Flux contributors that helped us with this release!\n\n#####
        Kubernetes compatibility\n\nThis release is compatible with the following
        Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
        | ---------------- |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`
        \           | `>= 1.35.0`      |\n| `v1.36`            | `>= 1.36.0`      |\n\n>
        \\[!NOTE]\n> Note that the Flux project offers support only for the latest
        three minor versions of Kubernetes.\n> Backwards compatibility with older
        versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
        that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
        can be installed on Red Hat OpenShift cluster directly from OperatorHub using
        [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator
        allows the configuration of Flux multi-tenancy lockdown, network policies,
        persistent storage, sharding, vertical scaling and the synchronization of
        the cluster state from Git repositories, OCI artifacts, and S3-compatible
        storage.\n\n#### Upgrade procedure\n\n:warning: The Flux APIs `image.toolkit.fluxcd.io/v1beta2`
        and `notification.toolkit.fluxcd.io/v1beta2`\nhave reached end-of-life and
        have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for
        Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for
        a smooth upgrade from older versions of Flux to v2.9.\n\n#### Components changelog\n\n-
        source-controller [v1.9.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.1/CHANGELOG.md)\n-
        kustomize-controller [v1.9.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.1/CHANGELOG.md)\n-
        notification-controller [v1.9.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.1/CHANGELOG.md)\n-
        helm-controller [v1.6.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.1/CHANGELOG.md)\n-
        image-reflector-controller [v1.2.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.1/CHANGELOG.md)\n-
        image-automation-controller [v1.2.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.1/CHANGELOG.md)\n-
        source-watcher [v2.2.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.1/CHANGELOG.md)\n\n####
        CLI changelog\n\n- Add backport label for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5732](https://redirect.github.com/fluxcd/flux2/pull/5732)\n- Remove
        no longer needed workaround for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5733](https://redirect.github.com/fluxcd/flux2/pull/5733)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5740](https://redirect.github.com/fluxcd/flux2/pull/5740)\n- Add
        missing things to release notes template by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5743](https://redirect.github.com/fluxcd/flux2/pull/5743)\n- ci:
        add top-level permissions to upgrade-fluxcd-pkg workflow by [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
        in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n- build(deps):
        bump the ci group across 1 directory with 11 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5764](https://redirect.github.com/fluxcd/flux2/pull/5764)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5766](https://redirect.github.com/fluxcd/flux2/pull/5766)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5769](https://redirect.github.com/fluxcd/flux2/pull/5769)\n- Add
        target branch name to update branch by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5773](https://redirect.github.com/fluxcd/flux2/pull/5773)\n- Fix/resume
        exit code by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) in
        [#&#8203;5701](https://redirect.github.com/fluxcd/flux2/pull/5701)\n- Mark
        RFC 0010, 0011 and 0012 as implemented by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5776](https://redirect.github.com/fluxcd/flux2/pull/5776)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5780](https://redirect.github.com/fluxcd/flux2/pull/5780)\n- Add
        --resolve-symlinks flag to build and push artifact commands by [@&#8203;rohansood10](https://redirect.github.com/rohansood10)
        in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n- fix:
        validate --source flag in create kustomization command by [@&#8203;gma1k](https://redirect.github.com/gma1k)
        in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5821](https://redirect.github.com/fluxcd/flux2/pull/5821)\n- Add
        `--show-source` to `flux get ks` and `flux get hr`  by [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco)
        in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n- Add
        `flux create secret receiver` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5835](https://redirect.github.com/fluxcd/flux2/pull/5835)\n- fix:
        handle multiple symlinks to same target in build artifact by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
        in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n- Add
        `--in-memory-build` to `flux build ks` and `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
        in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n- Migrate
        end-to-end test to latest cloud SDKs  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5840](https://redirect.github.com/fluxcd/flux2/pull/5840)\n- docs:
        Add AI Coding Assistants Guidance  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5841](https://redirect.github.com/fluxcd/flux2/pull/5841)\n- Add
        AI Agents guidance by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5847](https://redirect.github.com/fluxcd/flux2/pull/5847)\n- \\[RFC-0013]
        Flux CLI Plugin System by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5795](https://redirect.github.com/fluxcd/flux2/pull/5795)\n- Add
        `--ignore-not-found` to `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
        in [#&#8203;5845](https://redirect.github.com/fluxcd/flux2/pull/5845)\n- \\[RFC-0013]
        Implement plugin system by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5849](https://redirect.github.com/fluxcd/flux2/pull/5849)\n- build(deps):
        bump github.com/go-git/go-git/v5 from 5.17.1 to 5.18.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5853](https://redirect.github.com/fluxcd/flux2/pull/5853)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5856](https://redirect.github.com/fluxcd/flux2/pull/5856)\n- Add
        digest pinning support to `flux plugin install` by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
        in [#&#8203;5872](https://redirect.github.com/fluxcd/flux2/pull/5872)\n- Add
        `--ns-follows-kube-context` global flag for using the kubeconfig context namespace
        by [@&#8203;jtyr](https://redirect.github.com/jtyr) in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
        include source-watcher in install.yaml manifests by [@&#8203;tmmorin](https://redirect.github.com/tmmorin)
        in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5890](https://redirect.github.com/fluxcd/flux2/pull/5890)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5903](https://redirect.github.com/fluxcd/flux2/pull/5903)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5907](https://redirect.github.com/fluxcd/flux2/pull/5907)\n- Validate
        Helm source URL schemes by [@&#8203;immanuwell](https://redirect.github.com/immanuwell)
        in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n- Introduce
        `flux trigger receiver` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5908](https://redirect.github.com/fluxcd/flux2/pull/5908)\n- refactor(api):
        migrate MakeDependsOn to shared apis/meta func by [@&#8203;vecil](https://redirect.github.com/vecil)
        in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n- Update
        to Kubernetes 1.36 and Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5924](https://redirect.github.com/fluxcd/flux2/pull/5924)\n- build(deps):
        bump the ci group across 1 directory with 19 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5925](https://redirect.github.com/fluxcd/flux2/pull/5925)\n- Run
        conformance tests for Kubernetes 1.36 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5926](https://redirect.github.com/fluxcd/flux2/pull/5926)\n- Add
        support for AWS CodeCommit to `flux bootstrap git` by [@&#8203;taraspos](https://redirect.github.com/taraspos)
        in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n- Validate
        plugin binary path by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5927](https://redirect.github.com/fluxcd/flux2/pull/5927)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5928](https://redirect.github.com/fluxcd/flux2/pull/5928)\n- fix:
        preserve invalid metadata.labels in `flux build ks` by [@&#8203;raffis](https://redirect.github.com/raffis)
        in [#&#8203;5906](https://redirect.github.com/fluxcd/flux2/pull/5906)\n- build:
        target host arch for local builds/envtest by [@&#8203;stealthybox](https://redirect.github.com/stealthybox)
        in [#&#8203;5932](https://redirect.github.com/fluxcd/flux2/pull/5932)\n- build(deps):
        bump the ci group with 6 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5938](https://redirect.github.com/fluxcd/flux2/pull/5938)\n- Support
        specifing sparseCheckout in flux bootstrap by [@&#8203;piny940](https://redirect.github.com/piny940)
        in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5944](https://redirect.github.com/fluxcd/flux2/pull/5944)\n- Honor
        `ks.spec.postBuild.substituteStrategy` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5945](https://redirect.github.com/fluxcd/flux2/pull/5945)\n- Add
        DriftIgnoreRules support to flux diff kustomization by [@&#8203;dipti-pai](https://redirect.github.com/dipti-pai)
        in [#&#8203;5923](https://redirect.github.com/fluxcd/flux2/pull/5923)\n- Allow
        signing commits using SSH key by [@&#8203;hiddeco](https://redirect.github.com/hiddeco)
        in [#&#8203;5920](https://redirect.github.com/fluxcd/flux2/pull/5920)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5950](https://redirect.github.com/fluxcd/flux2/pull/5950)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5937](https://redirect.github.com/fluxcd/flux2/pull/5937)\n- cmd:
        support `type!=status` in get --status-selector by [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje)
        in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n- Fix
        `flux get all --status-selector` for empty results and notification resources
        by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp) in [#&#8203;5954](https://redirect.github.com/fluxcd/flux2/pull/5954)\n-
        Upgrade go-git-providers to v0.27.0 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5956](https://redirect.github.com/fluxcd/flux2/pull/5956)\n- Fix
        using Receiver adapter for ArtifactGenerator by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5957](https://redirect.github.com/fluxcd/flux2/pull/5957)\n- feat:
        Install Plugins alongside Flux setup in gh actions by [@&#8203;gat786](https://redirect.github.com/gat786)
        in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5960](https://redirect.github.com/fluxcd/flux2/pull/5960)\n- Add
        CLI support for OCIRepository.spec.layerSelector in flux create source oci
        by [@&#8203;dme86](https://redirect.github.com/dme86) in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n-
        Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5963](https://redirect.github.com/fluxcd/flux2/pull/5963)\n\n####
        New Contributors\n\n- [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
        made their first contribution in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
        [@&#8203;rohansood10](https://redirect.github.com/rohansood10) made their
        first contribution in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
        [@&#8203;gma1k](https://redirect.github.com/gma1k) made their first contribution
        in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n- [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco)
        made their first contribution in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
        [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh) made
        their first contribution in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
        [@&#8203;rycli](https://redirect.github.com/rycli) made their first contribution
        in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n- [@&#8203;jtyr](https://redirect.github.com/jtyr)
        made their first contribution in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
        [@&#8203;tmmorin](https://redirect.github.com/tmmorin) made their first contribution
        in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n- [@&#8203;immanuwell](https://redirect.github.com/immanuwell)
        made their first contribution in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
        [@&#8203;vecil](https://redirect.github.com/vecil) made their first contribution
        in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n- [@&#8203;taraspos](https://redirect.github.com/taraspos)
        made their first contribution in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
        [@&#8203;piny940](https://redirect.github.com/piny940) made their first contribution
        in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n- [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje)
        made their first contribution in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
        [@&#8203;gat786](https://redirect.github.com/gat786) made their first contribution
        in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n- [@&#8203;dme86](https://redirect.github.com/dme86)
        made their first contribution in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.9.0>\n\n###
        [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n#####
        Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via go-git
        v5.19.1 (source-controller, image-automation-controller), reliability fixes
        in helm-controller and source-controller, the move of Helm back to upstream
        v4.2.0, support for GCP sovereign cloud artifact registries, and dependency
        updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
        Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Add a configurable HTTP timeout for artifact fetching, preventing fetches
        that could block indefinitely and stall reconciliations (helm-controller)\n-
        Fix unbounded memory growth caused by a Kubernetes client transport retry
        wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying
        non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n-
        Fix the Helm test action failing to find releases with names longer than 53
        characters (helm-controller)\n- Improve path handling in the source reconcilers
        (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository
        tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1 which
        fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96)
        and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp)
        (source-controller, image-automation-controller)\n- Move Helm back to upstream
        v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign
        cloud artifact registries (source-controller, image-reflector-controller)\n-
        Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update
        fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller
        [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n-
        image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n-
        image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n-
        source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n###
        [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n#####
        Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in kustomize-controller,
        a CVE fix in source-controller and image-automation-controller via go-git
        v5.19.0, and dependency updates. Users are encouraged to upgrade for the best
        experience.\n\n\u2139\uFE0F Please follow the [Upgrade Procedure for Flux
        v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a smooth
        upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n- Fix management
        of objects annotated with `kustomize.toolkit.fluxcd.io/ssa: IfNotPresent`
        where non-namespaced resources were being deleted and recreated on each reconciliation
        (kustomize-controller)\n\nImprovements:\n\n- Update go-git to v5.19.0 which
        fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp)
        (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies
        (source-controller, kustomize-controller, image-automation-controller)\n\n#####
        Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
        image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n-
        kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n-
        notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
        source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n###
        [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n####
        Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and improvements
        across helm-controller, image-automation-controller, kustomize-controller,
        notification-controller, and source-controller. Users are encouraged to upgrade
        for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade Procedure
        for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n-
        Ignore force replace when server-side apply is enabled (helm-controller)\n-
        Fix a regression where generic providers would not forward commit status events
        (notification-controller)\n- Require the `audience` field on the GCR Receiver
        secret for tighter verification \u2014 will become mandatory in Flux v2.9
        (notification-controller)\n\nImprovements:\n\n- Introduce the `MigrateAPIVersion`
        feature gate for migrating the API version of resources in managed field entries
        (kustomize-controller)\n- Update go-git to v5.18.0 bringing performance improvements
        for Git operations (source-controller, image-automation-controller)\n\n####
        Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
        image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n-
        kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n-
        notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
        source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
        CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n###
        [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n####
        Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and improvements
        across kustomize-controller, source-controller, and notification-controller.
        Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
        follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix a race condition where a cancelled reconciliation could leave stale data
        in the cache, causing Kustomizations to get stuck (kustomize-controller)\n-
        Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n-
        Improve error message for encrypted SSH keys without password (source-controller)\n-
        Add optional `email` and `audience` fields to the GCR Receiver for tighter
        verification (notification-controller)\n- Add provider manifest example for
        Azure Event Hub managed identity authentication (notification-controller)\n\n####
        Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n-
        source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n-
        notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
        CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n###
        [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n####
        Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the Flux
        CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
        Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag validation
        in `create kustomization` command\n\n#### CLI changelog\n\n- Update fluxcd/pkg
        dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n- \\[release/v2.8.x]
        fix: validate --source flag in create kustomization command by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n###
        [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n####
        Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in helm-controller.
        Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
        follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix templating errors for charts that include `---` in the content, e.g. YAML
        separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n####
        Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n####
        CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch
        by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n-
        Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n###
        [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n#####
        Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes.
        Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
        follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix enqueuing new reconciliation requests for events on source Flux objects
        when they are already reconciling the revision present in the watch event
        (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML
        separator `---` getting concatenated to `apiVersion:` by updating to Helm
        4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when they
        don't have a retry strategy configured by introducing a new feature gate `DefaultToRetryOnFailure`
        that improves the experience when the `CancelHealthCheckOnNewRevision` is
        enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry
        to use the ACR-specific scope (source-controller, image-reflector-controller)\n-
        Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138)
        by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n-
        source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n-
        kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n-
        notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n-
        helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n-
        image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n-
        image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n-
        source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across
        1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n- Update
        toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n###
        [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n#####
        Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes.
        Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
        follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix Git commit status events being dropped for Kustomizations (notification-controller)\n-
        Fix health check for StatefulSets when the Pods are Pending/Unschedulable
        during rollout (helm-controller, kustomize-controller)\n\n##### Components
        changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n-
        notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n-
        helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround for
        Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in
        [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n- \\[release/v2.8.x]
        Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n###
        [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n#####
        Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to upgrade
        for the best experience.\n\nFor a compressive overview of new features and
        API changes included in this release, please refer to the [Announcing Flux
        2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview
        of the new features:\n\n- Helm v4 support, including server-side apply and
        kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of Helm-managed
        objects with CEL expressions (`HelmRelease`)\n- Improved observability of
        Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n-
        Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision`
        feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting on
        Pull Requests directly from Flux notifications (`Provider`)\n- Custom SSA
        apply stages for ordering resource application in kustomize-controller (`Kustomization`)\n-
        Automatic GitHub App installation ID lookup from the repository owner (`GitRepository`,
        `ImageUpdateAutomation`, `Provider`)\n- Support for Cosign v3 for verifying
        OCI artifacts and container images (`OCIRepository`)\n- ArtifactGenerator
        support for extracting and modifying Helm charts (`ArtifactGenerator`)\n-
        Bypass cache when fetching source objects via `DirectSourceFetch` feature
        gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\uFE0F
        Big thanks to all the Flux contributors that helped us with this release!\n\n#####
        Kubernetes compatibility\n\nThis release is compatible with the following
        Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
        | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`
        \           | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n>
        \\[!NOTE]\n> Note that the Flux project offers support only for the latest
        three minor versions of Kubernetes.\n> Backwards compatibility with older
        versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
        that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
        can be installed on Red Hat OpenShift cluster directly from OperatorHub using
        [Flux Operator](https://operatorhub.io/operator/flux-operator). The operator
        allows the configuration of Flux multi-tenancy lockdown, network policies,
        persistent storage, sharding, vertical scaling and the synchronization of
        the cluster state from Git repositories, OCI artifacts, and S3-compatible
        storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2` and
        `v2beta2` (deprecated in 2024) have reached end-of-life and have been removed
        from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from older versions of Flux to v2.8.\n\n##### Components
        changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n-
        kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n-
        notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n-
        helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n-
        image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n-
        image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n-
        source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n#####
        CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests`
        workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n- Add
        backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n- build(deps):
        bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n- Fix
        `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n- Extend
        `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n- Improve
        `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n- Fix
        `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n- Add
        source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n- Fix
        `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n- refactor:
        convert `Kustomization` resource into unstructured map only once during variable
        substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1) in
        [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n- Disable
        AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n- Fix
        manifest generation for `--storage-adv-addr` and `--events-addr` flags by
        [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n-
        Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n- Restore
        GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n- \\[RFC-0012]
        Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
        in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n- fix:
        handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0)
        in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n- Pin
        cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n- \\[RFC-0012]
        Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
        in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n- Fix
        bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n- fix:
        return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
        in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n- ci:
        Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n- Add
        source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n- Fix
        panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n- Upgrade
        k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n- diff:
        report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d)
        in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n- Allow
        option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere)
        in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n- fix:
        [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654) by checking
        if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
        in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n- Added
        retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu)
        in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n- Run
        conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n- fix:
        normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi)
        in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n- Introduce
        support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n- Update
        dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n- Fix
        resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
        in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n- Add
        2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n- Introduce
        workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n- Update
        fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n- Fix
        event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n- Build
        with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n- Update
        toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n- Update
        helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
        in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n- build(deps):
        bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
        in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n- Fix
        bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey)
        in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n- Dump
        debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n- Set
        Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
        in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n- Update
        conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
        in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n#####
        New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
        made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
        [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their
        first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
        [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first
        contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
        [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution
        in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n- [@&#8203;anshuishere](https://redirect.github.com/anshuishere)
        made their first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
        [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made their
        first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
        [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their
        first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
        [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first
        contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
        [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first contribution
        in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full
        Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n###
        [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare
        Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n#####
        Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller.
        Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
        follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
        for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
        Fix HelmRelease history truncation when using the `RetryOnFailure` str\n\n>
        \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n###
        Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
        At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
        defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
        manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
        conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
        Close this PR and you won't be reminded about this update again.\n\n---\n\n
        - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
        box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
        View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQ0LjQ5LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->\n"
      change_url: https://github.com/vexxhost/atmosphere.common/pull/102
      child_jobs: []
      commit_id: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
      event_id: 3b283740-a564-11f1-8d91-063946bebca3
      executor:
        hostname: 2d72f0692154
        inventory_file: /var/lib/zuul/builds/0636888ade7c46d7a5fcb0c7ba6359f5/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/0636888ade7c46d7a5fcb0c7ba6359f5/work/logs
        result_data_file: /var/lib/zuul/builds/0636888ade7c46d7a5fcb0c7ba6359f5/work/results.json
        src_root: /var/lib/zuul/builds/0636888ade7c46d7a5fcb0c7ba6359f5/work/src
        work_root: /var/lib/zuul/builds/0636888ade7c46d7a5fcb0c7ba6359f5/work
      include_vars: []
      items:
      - branch: main
        change: '102'
        change_message: "chore(deps): update dependency fluxcd/flux2 to v2.9.5\n\n>
          \u2139\uFE0F **Note**\n> \n> This PR body was truncated due to platform
          limits.\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [fluxcd/flux2](https://redirect.github.com/fluxcd/flux2)
          | minor | `2.6.4` \u2192 `2.9.5` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>fluxcd/flux2
          (fluxcd/flux2)</summary>\n\n### [`v2.9.5`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.4...v2.9.5)\n\n###
          [`v2.9.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4)\n\n####
          Highlights\n\nFlux v2.9.4 is a patch release that ships various fixes to
          the Flux controllers, covering source-watcher tarball extraction and glob
          expansion limits, the refspecs accepted by `ImageUpdateAutomation`, the
          HTTP request limits of the notification-controller servers, and Helm repository
          index loading, OCI chart digest pinning, `Bucket` error handling and GCS
          static authentication in source-controller. On the CLI side, `flux migrate
          -f` now supports migrating repositories to Flux 2.9. Users are encouraged
          to upgrade for the best experience.\n\nNote that this release contains CRD
          schema changes for `ArtifactGenerator` and `ImageUpdateAutomation`; both
          CRDs must be updated along with the controllers.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Confine tarball extraction and bound glob expansion (source-watcher)\n-
          Disallow force-update and deletion via refspecs (image-automation-controller)\n-
          Unify HTTP server request limits (notification-controller)\n- Align Helm
          repository index loading with upstream Helm v4 (source-controller)\n- Improve
          error handling in `Bucket` reconciliation (source-controller)\n- Pin OCI
          chart verification by digest (source-controller)\n- Limit GCS static authentication
          to service account keys (source-controller)\n- Restrict the `allow-webhooks`
          network policy to the receiver port (flux CLI)\n\nImprovements:\n\n- Add
          support for migrating repositories to 2.9 in `flux migrate -f` (flux CLI)\n-
          Update fluxcd/pkg dependencies, which align the ECR host detection with
          upstream (source-controller, image-reflector-controller, flux CLI)\n- Update
          Bitbucket Cloud receiver guidance (notification-controller)\n\n#### Components
          changelog\n\n- source-controller [v1.9.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.4/CHANGELOG.md)\n-
          source-watcher [v2.2.3](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.3/CHANGELOG.md)\n-
          notification-controller [v1.9.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.3/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.4](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.4/CHANGELOG.md)\n-
          image-automation-controller [v1.2.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.4/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Add support for 2.9 in `migrate -f`
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6021](https://redirect.github.com/fluxcd/flux2/pull/6021)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6026](https://redirect.github.com/fluxcd/flux2/pull/6026)\n-
          \\[release/v2.9.x] fix: restrict `allow-webhooks` netpol to receiver port
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;6029](https://redirect.github.com/fluxcd/flux2/pull/6029)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6031](https://redirect.github.com/fluxcd/flux2/pull/6031)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.3...v2.9.4>\n\n###
          [`v2.9.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3)\n\n####
          Highlights\n\nFlux v2.9.3 is a patch release. It fixes empty lines vanishing
          from rendered Helm chart manifests, HelmReleases being marked as tested
          when their Helm test hooks never ran, and `spec.images` entries that set
          only some image fields discarding the remaining fields already declared
          for the same image in the `kustomization.yaml`. The latter affects both
          kustomize-controller and the `flux build|diff kustomization` commands. Users
          are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F Please
          follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix empty lines vanishing from rendered chart manifests (helm-controller)\n-
          Fix `HasBeenTested` for all corner cases, where a release could be marked
          as tested although its Helm test hooks never ran (helm-controller)\n- Fix
          a `spec.images` entry setting only some of the image fields discarding the
          remaining fields already declared for the same image in the `kustomization.yaml`
          at `spec.path`, e.g. overriding only `newName` produced an untagged image
          reference (kustomize-controller, flux CLI)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n- Include source-watcher in the OCI flux-manifests
          artifact\n\n#### Components changelog\n\n- kustomize-controller [v1.9.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.4/CHANGELOG.md)\n-
          helm-controller [v1.6.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.9.x] Include source-watcher to oci flux-manifests
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5996](https://redirect.github.com/fluxcd/flux2/pull/5996)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6006](https://redirect.github.com/fluxcd/flux2/pull/6006)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;6011](https://redirect.github.com/fluxcd/flux2/pull/6011)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.2...v2.9.3>\n\n###
          [`v2.9.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2)\n\n#####
          Highlights\n\nFlux v2.9.2 is a patch release. The main fix addresses a regression
          introduced in\nv2.9.1 where a Kustomization with `openapi.path` pointing
          to a URL failed to\nreconcile with `failed to read OpenAPI schema`. This
          release also corrects several\nCRD field descriptions that contained inaccurate
          or leaked content. Users are\nencouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a regression where a Kustomization with `openapi.path` pointing to a
          URL failed to reconcile with `failed to read OpenAPI schema` (kustomize-controller)\n-
          Fix the `HelmChart` CRD description for `.status.url`, which pointed users
          at `BucketStatus.Artifact` instead of `HelmChartStatus.Artifact` (source-controller)\n-
          Fix the `ImageRepository` CRD description for `.status.observedExclusionList`,
          which referred to `spec.lastScanResult` instead of `status.lastScanResult`
          (image-reflector-controller)\n- Fix the `ImageUpdateAutomation` CRD description
          for `.status.observedSourceRevision`, which had a stray Go struct declaration
          leaking into it (image-automation-controller)\n\nImprovements:\n\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- source-controller
          [v1.9.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.3/CHANGELOG.md)\n-
          kustomize-controller [v1.9.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.3/CHANGELOG.md)\n-
          helm-controller [v1.6.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.2/CHANGELOG.md)\n-
          notification-controller [v1.9.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.3](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.3/CHANGELOG.md)\n-
          image-automation-controller [v1.2.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.3/CHANGELOG.md)\n-
          source-watcher [v2.2.2](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.2/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5984](https://redirect.github.com/fluxcd/flux2/pull/5984)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5990](https://redirect.github.com/fluxcd/flux2/pull/5990)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5994](https://redirect.github.com/fluxcd/flux2/pull/5994)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.9.1...v2.9.2>\n\n###
          [`v2.9.1`](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.9.0...v2.9.1)\n\n###
          [`v2.9.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.9.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.8...v2.9.0)\n\n####
          Highlights\n\nFlux v2.9.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.9 GA blog post](https://fluxcd.io/blog/2026/06/flux-v2.9.0/).\n\nOverview
          of the new features:\n\n- Flux CLI Plugin System with the Mirror and Schema
          plugins (`flux plugin`)\n- Server-Side Apply field ignore rules for fine-grained
          drift control (`Kustomization`)\n- SOPS decryption with the Age post-quantum
          cipher (`Kustomization`)\n- Kubernetes Workload Identity authentication
          for OpenBao and Vault (`Kustomization`)\n- Helm post-render strategies,
          including chart hooks support (`HelmRelease`)\n- Literal mode for Helm values
          references mirroring `helm --set-literal` (`HelmRelease`)\n- Allow empty
          kind in CEL health check expressions (`Kustomization`, `HelmRelease`)\n-
          Git commit signing and verification with SSH keys (`GitRepository`, `ImageUpdateAutomation`)\n-
          AWS CodeCommit authentication using Workload Identity (`GitRepository`)\n-
          Custom Sigstore trusted root for keyless verification in air-gapped environments
          (`OCIRepository`)\n- Path pattern directory discovery for monorepos (`ArtifactGenerator`)\n-
          Secret-less, OIDC-secured webhook Receivers (`Receiver`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.34`            | `>= 1.34.1`      |\n| `v1.35`
          \           | `>= 1.35.0`      |\n| `v1.36`            | `>= 1.36.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n#### Upgrade procedure\n\n:warning: The Flux APIs `image.toolkit.fluxcd.io/v1beta2`
          and `notification.toolkit.fluxcd.io/v1beta2`\nhave reached end-of-life and
          have been removed from the CRDs.\n\nPlease follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from older versions of Flux to v2.9.\n\n#### Components
          changelog\n\n- source-controller [v1.9.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.9.1/CHANGELOG.md)\n-
          kustomize-controller [v1.9.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.9.1/CHANGELOG.md)\n-
          notification-controller [v1.9.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.9.1/CHANGELOG.md)\n-
          helm-controller [v1.6.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.6.1/CHANGELOG.md)\n-
          image-reflector-controller [v1.2.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.2.1/CHANGELOG.md)\n-
          image-automation-controller [v1.2.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.2.1/CHANGELOG.md)\n-
          source-watcher [v2.2.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.2.1/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Add backport label for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5732](https://redirect.github.com/fluxcd/flux2/pull/5732)\n-
          Remove no longer needed workaround for Flux 2.8 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5733](https://redirect.github.com/fluxcd/flux2/pull/5733)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5740](https://redirect.github.com/fluxcd/flux2/pull/5740)\n-
          Add missing things to release notes template by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5743](https://redirect.github.com/fluxcd/flux2/pull/5743)\n-
          ci: add top-level permissions to upgrade-fluxcd-pkg workflow by [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          build(deps): bump the ci group across 1 directory with 11 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5764](https://redirect.github.com/fluxcd/flux2/pull/5764)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5766](https://redirect.github.com/fluxcd/flux2/pull/5766)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5769](https://redirect.github.com/fluxcd/flux2/pull/5769)\n-
          Add target branch name to update branch by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5773](https://redirect.github.com/fluxcd/flux2/pull/5773)\n-
          Fix/resume exit code by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5701](https://redirect.github.com/fluxcd/flux2/pull/5701)\n-
          Mark RFC 0010, 0011 and 0012 as implemented by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5776](https://redirect.github.com/fluxcd/flux2/pull/5776)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5780](https://redirect.github.com/fluxcd/flux2/pull/5780)\n-
          Add --resolve-symlinks flag to build and push artifact commands by [@&#8203;rohansood10](https://redirect.github.com/rohansood10)
          in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          fix: validate --source flag in create kustomization command by [@&#8203;gma1k](https://redirect.github.com/gma1k)
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5821](https://redirect.github.com/fluxcd/flux2/pull/5821)\n-
          Add `--show-source` to `flux get ks` and `flux get hr`  by [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco)
          in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          Add `flux create secret receiver` command by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5835](https://redirect.github.com/fluxcd/flux2/pull/5835)\n-
          fix: handle multiple symlinks to same target in build artifact by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          Add `--in-memory-build` to `flux build ks` and `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          Migrate end-to-end test to latest cloud SDKs  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5840](https://redirect.github.com/fluxcd/flux2/pull/5840)\n-
          docs: Add AI Coding Assistants Guidance  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5841](https://redirect.github.com/fluxcd/flux2/pull/5841)\n-
          Add AI Agents guidance by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5847](https://redirect.github.com/fluxcd/flux2/pull/5847)\n-
          \\[RFC-0013] Flux CLI Plugin System by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5795](https://redirect.github.com/fluxcd/flux2/pull/5795)\n-
          Add `--ignore-not-found` to `flux diff ks` by [@&#8203;rycli](https://redirect.github.com/rycli)
          in [#&#8203;5845](https://redirect.github.com/fluxcd/flux2/pull/5845)\n-
          \\[RFC-0013] Implement plugin system by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5849](https://redirect.github.com/fluxcd/flux2/pull/5849)\n-
          build(deps): bump github.com/go-git/go-git/v5 from 5.17.1 to 5.18.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5853](https://redirect.github.com/fluxcd/flux2/pull/5853)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5856](https://redirect.github.com/fluxcd/flux2/pull/5856)\n-
          Add digest pinning support to `flux plugin install` by [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          in [#&#8203;5872](https://redirect.github.com/fluxcd/flux2/pull/5872)\n-
          Add `--ns-follows-kube-context` global flag for using the kubeconfig context
          namespace by [@&#8203;jtyr](https://redirect.github.com/jtyr) in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          include source-watcher in install.yaml manifests by [@&#8203;tmmorin](https://redirect.github.com/tmmorin)
          in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5890](https://redirect.github.com/fluxcd/flux2/pull/5890)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5903](https://redirect.github.com/fluxcd/flux2/pull/5903)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5907](https://redirect.github.com/fluxcd/flux2/pull/5907)\n-
          Validate Helm source URL schemes by [@&#8203;immanuwell](https://redirect.github.com/immanuwell)
          in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          Introduce `flux trigger receiver` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5908](https://redirect.github.com/fluxcd/flux2/pull/5908)\n-
          refactor(api): migrate MakeDependsOn to shared apis/meta func by [@&#8203;vecil](https://redirect.github.com/vecil)
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          Update to Kubernetes 1.36 and Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5924](https://redirect.github.com/fluxcd/flux2/pull/5924)\n-
          build(deps): bump the ci group across 1 directory with 19 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5925](https://redirect.github.com/fluxcd/flux2/pull/5925)\n-
          Run conformance tests for Kubernetes 1.36 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5926](https://redirect.github.com/fluxcd/flux2/pull/5926)\n-
          Add support for AWS CodeCommit to `flux bootstrap git` by [@&#8203;taraspos](https://redirect.github.com/taraspos)
          in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          Validate plugin binary path by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5927](https://redirect.github.com/fluxcd/flux2/pull/5927)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5928](https://redirect.github.com/fluxcd/flux2/pull/5928)\n-
          fix: preserve invalid metadata.labels in `flux build ks` by [@&#8203;raffis](https://redirect.github.com/raffis)
          in [#&#8203;5906](https://redirect.github.com/fluxcd/flux2/pull/5906)\n-
          build: target host arch for local builds/envtest by [@&#8203;stealthybox](https://redirect.github.com/stealthybox)
          in [#&#8203;5932](https://redirect.github.com/fluxcd/flux2/pull/5932)\n-
          build(deps): bump the ci group with 6 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5938](https://redirect.github.com/fluxcd/flux2/pull/5938)\n-
          Support specifing sparseCheckout in flux bootstrap by [@&#8203;piny940](https://redirect.github.com/piny940)
          in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5944](https://redirect.github.com/fluxcd/flux2/pull/5944)\n-
          Honor `ks.spec.postBuild.substituteStrategy` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5945](https://redirect.github.com/fluxcd/flux2/pull/5945)\n-
          Add DriftIgnoreRules support to flux diff kustomization by [@&#8203;dipti-pai](https://redirect.github.com/dipti-pai)
          in [#&#8203;5923](https://redirect.github.com/fluxcd/flux2/pull/5923)\n-
          Allow signing commits using SSH key by [@&#8203;hiddeco](https://redirect.github.com/hiddeco)
          in [#&#8203;5920](https://redirect.github.com/fluxcd/flux2/pull/5920)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5950](https://redirect.github.com/fluxcd/flux2/pull/5950)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5937](https://redirect.github.com/fluxcd/flux2/pull/5937)\n-
          cmd: support `type!=status` in get --status-selector by [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje)
          in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          Fix `flux get all --status-selector` for empty results and notification
          resources by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5954](https://redirect.github.com/fluxcd/flux2/pull/5954)\n-
          Upgrade go-git-providers to v0.27.0 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5956](https://redirect.github.com/fluxcd/flux2/pull/5956)\n-
          Fix using Receiver adapter for ArtifactGenerator by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5957](https://redirect.github.com/fluxcd/flux2/pull/5957)\n-
          feat: Install Plugins alongside Flux setup in gh actions by [@&#8203;gat786](https://redirect.github.com/gat786)
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5960](https://redirect.github.com/fluxcd/flux2/pull/5960)\n-
          Add CLI support for OCIRepository.spec.layerSelector in flux create source
          oci by [@&#8203;dme86](https://redirect.github.com/dme86) in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5963](https://redirect.github.com/fluxcd/flux2/pull/5963)\n\n####
          New Contributors\n\n- [@&#8203;gaganhr94](https://redirect.github.com/gaganhr94)
          made their first contribution in [#&#8203;5763](https://redirect.github.com/fluxcd/flux2/pull/5763)\n-
          [@&#8203;rohansood10](https://redirect.github.com/rohansood10) made their
          first contribution in [#&#8203;5724](https://redirect.github.com/fluxcd/flux2/pull/5724)\n-
          [@&#8203;gma1k](https://redirect.github.com/gma1k) made their first contribution
          in [#&#8203;5798](https://redirect.github.com/fluxcd/flux2/pull/5798)\n-
          [@&#8203;rafaelperoco](https://redirect.github.com/rafaelperoco) made their
          first contribution in [#&#8203;5828](https://redirect.github.com/fluxcd/flux2/pull/5828)\n-
          [@&#8203;Iam-Karan-Suresh](https://redirect.github.com/Iam-Karan-Suresh)
          made their first contribution in [#&#8203;5833](https://redirect.github.com/fluxcd/flux2/pull/5833)\n-
          [@&#8203;rycli](https://redirect.github.com/rycli) made their first contribution
          in [#&#8203;5794](https://redirect.github.com/fluxcd/flux2/pull/5794)\n-
          [@&#8203;jtyr](https://redirect.github.com/jtyr) made their first contribution
          in [#&#8203;5831](https://redirect.github.com/fluxcd/flux2/pull/5831)\n-
          [@&#8203;tmmorin](https://redirect.github.com/tmmorin) made their first
          contribution in [#&#8203;5881](https://redirect.github.com/fluxcd/flux2/pull/5881)\n-
          [@&#8203;immanuwell](https://redirect.github.com/immanuwell) made their
          first contribution in [#&#8203;5909](https://redirect.github.com/fluxcd/flux2/pull/5909)\n-
          [@&#8203;vecil](https://redirect.github.com/vecil) made their first contribution
          in [#&#8203;5912](https://redirect.github.com/fluxcd/flux2/pull/5912)\n-
          [@&#8203;taraspos](https://redirect.github.com/taraspos) made their first
          contribution in [#&#8203;5868](https://redirect.github.com/fluxcd/flux2/pull/5868)\n-
          [@&#8203;piny940](https://redirect.github.com/piny940) made their first
          contribution in [#&#8203;5918](https://redirect.github.com/fluxcd/flux2/pull/5918)\n-
          [@&#8203;3uzbcqje](https://redirect.github.com/3uzbcqje) made their first
          contribution in [#&#8203;5952](https://redirect.github.com/fluxcd/flux2/pull/5952)\n-
          [@&#8203;gat786](https://redirect.github.com/gat786) made their first contribution
          in [#&#8203;5955](https://redirect.github.com/fluxcd/flux2/pull/5955)\n-
          [@&#8203;dme86](https://redirect.github.com/dme86) made their first contribution
          in [#&#8203;5892](https://redirect.github.com/fluxcd/flux2/pull/5892)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.9.0>\n\n###
          [`v2.8.8`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.8)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8)\n\n#####
          Highlights\n\nFlux v2.8.8 is a patch release that includes CVE fixes via
          go-git v5.19.1 (source-controller, image-automation-controller), reliability
          fixes in helm-controller and source-controller, the move of Helm back to
          upstream v4.2.0, support for GCP sovereign cloud artifact registries, and
          dependency updates. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Add a configurable HTTP timeout for artifact fetching, preventing fetches
          that could block indefinitely and stall reconciliations (helm-controller)\n-
          Fix unbounded memory growth caused by a Kubernetes client transport retry
          wrapper accumulating on every reconcile (helm-controller)\n- Stop force-applying
          non-CRD objects placed under a chart's `crds/` directory (helm-controller)\n-
          Fix the Helm test action failing to find releases with names longer than
          53 characters (helm-controller)\n- Improve path handling in the source reconcilers
          (source-controller)\n- Support Helm semver build-metadata encoding in OCIRepository
          tags (source-controller)\n\nImprovements:\n\n- Update go-git to v5.19.1
          which fixes [CVE-2026-45571](https://redirect.github.com/advisories/GHSA-crhj-59gh-8x96)
          and [CVE-2026-45570](https://redirect.github.com/advisories/GHSA-m7cr-m3pv-hgrp)
          (source-controller, image-automation-controller)\n- Move Helm back to upstream
          v4.2.0 (source-controller, helm-controller)\n- Add support for GCP sovereign
          cloud artifact registries (source-controller, image-reflector-controller)\n-
          Upgrade Kubernetes to 1.36.1 (source-controller, helm-controller)\n- Update
          fluxcd/pkg dependencies\n\n##### Components changelog\n\n- helm-controller
          [v1.5.5](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.5/CHANGELOG.md)\n-
          image-automation-controller [v1.1.4](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.4/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.2](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.2/CHANGELOG.md)\n-
          source-controller [v1.8.5](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.5/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5904](https://redirect.github.com/fluxcd/flux2/pull/5904)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.7...v2.8.8>\n\n###
          [`v2.8.7`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.7)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7)\n\n#####
          Highlights\n\nFlux v2.8.7 is a patch release that includes a bug fix in
          kustomize-controller, a CVE fix in source-controller and image-automation-controller
          via go-git v5.19.0, and dependency updates. Users are encouraged to upgrade
          for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade Procedure
          for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix management of objects annotated with `kustomize.toolkit.fluxcd.io/ssa:
          IfNotPresent` where non-namespaced resources were being deleted and recreated
          on each reconciliation (kustomize-controller)\n\nImprovements:\n\n- Update
          go-git to v5.19.0 which fixes [CVE-2026-45022](https://redirect.github.com/advisories/GHSA-389r-gv7p-r3rp)
          (source-controller, image-automation-controller)\n- Update fluxcd/pkg dependencies
          (source-controller, kustomize-controller, image-automation-controller)\n\n#####
          Components changelog\n\n- helm-controller [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.3](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.3/CHANGELOG.md)\n-
          kustomize-controller [v1.8.5](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.5/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.4](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.4/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5891](https://redirect.github.com/fluxcd/flux2/pull/5891)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.6...v2.8.7>\n\n###
          [`v2.8.6`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.6)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6)\n\n####
          Highlights\n\nFlux v2.8.6 is a patch release that includes bug fixes and
          improvements across helm-controller, image-automation-controller, kustomize-controller,
          notification-controller, and source-controller. Users are encouraged to
          upgrade for the best experience.\n\n\u2139\uFE0F Please follow the [Upgrade
          Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a post-renderer conflict between overlapping hooks and templates (helm-controller)\n-
          Ignore force replace when server-side apply is enabled (helm-controller)\n-
          Fix a regression where generic providers would not forward commit status
          events (notification-controller)\n- Require the `audience` field on the
          GCR Receiver secret for tighter verification \u2014 will become mandatory
          in Flux v2.9 (notification-controller)\n\nImprovements:\n\n- Introduce the
          `MigrateAPIVersion` feature gate for migrating the API version of resources
          in managed field entries (kustomize-controller)\n- Update go-git to v5.18.0
          bringing performance improvements for Git operations (source-controller,
          image-automation-controller)\n\n#### Components changelog\n\n- helm-controller
          [v1.5.4](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.4/CHANGELOG.md)\n-
          image-automation-controller [v1.1.2](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.2/CHANGELOG.md)\n-
          kustomize-controller [v1.8.4](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.4/CHANGELOG.md)\n-
          notification-controller [v1.8.4](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.4/CHANGELOG.md)\n-
          source-controller [v1.8.3](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5857](https://redirect.github.com/fluxcd/flux2/pull/5857)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.5...v2.8.6>\n\n###
          [`v2.8.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5)\n\n####
          Highlights\n\nFlux v2.8.5 is a patch release that includes bug fixes and
          improvements across kustomize-controller, source-controller, and notification-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix a race condition where a cancelled reconciliation could leave stale
          data in the cache, causing Kustomizations to get stuck (kustomize-controller)\n-
          Fix Azure Blob prefix option not being passed to the storage client (source-controller)\n\nImprovements:\n\n-
          Improve error message for encrypted SSH keys without password (source-controller)\n-
          Add optional `email` and `audience` fields to the GCR Receiver for tighter
          verification (notification-controller)\n- Add provider manifest example
          for Azure Event Hub managed identity authentication (notification-controller)\n\n####
          Components changelog\n\n- kustomize-controller [v1.8.3](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.3/CHANGELOG.md)\n-
          source-controller [v1.8.2](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.3](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5822](https://redirect.github.com/fluxcd/flux2/pull/5822)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.4...v2.8.5>\n\n###
          [`v2.8.4`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.4)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4)\n\n####
          Highlights\n\nFlux v2.8.4 is a patch release that includes fixes for the
          Flux CLI. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix `flux build ks` and `flux diff ks` on Windows\n- Fix `--source` flag
          validation in `create kustomization` command\n\n#### CLI changelog\n\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5796](https://redirect.github.com/fluxcd/flux2/pull/5796)\n-
          \\[release/v2.8.x] fix: validate --source flag in create kustomization command
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5799](https://redirect.github.com/fluxcd/flux2/pull/5799)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.3...v2.8.4>\n\n###
          [`v2.8.3`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.3)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3)\n\n####
          Highlights\n\nFlux v2.8.3 is a patch release that fixes a regression in
          helm-controller. Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix templating errors for charts that include `---` in the content, e.g.
          YAML separators, embedded scripts, CAs inside ConfigMaps (helm-controller)\n\n####
          Components changelog\n\n- helm-controller [v1.5.3](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.3/CHANGELOG.md)\n\n####
          CLI changelog\n\n- \\[release/v2.8.x] Add target branch name to update branch
          by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot) in [#&#8203;5774](https://redirect.github.com/fluxcd/flux2/pull/5774)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5779](https://redirect.github.com/fluxcd/flux2/pull/5779)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.2...v2.8.3>\n\n###
          [`v2.8.2`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.2)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2)\n\n#####
          Highlights\n\nFlux v2.8.2 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix enqueuing new reconciliation requests for events on source Flux objects
          when they are already reconciling the revision present in the watch event
          (kustomize-controller, helm-controller)\n- Fix the Go templates bug of YAML
          separator `---` getting concatenated to `apiVersion:` by updating to Helm
          4.1.3 (helm-controller)\n- Fix canceled HelmReleases getting stuck when
          they don't have a retry strategy configured by introducing a new feature
          gate `DefaultToRetryOnFailure` that improves the experience when the `CancelHealthCheckOnNewRevision`
          is enabled (helm-controller)\n- Fix the auth scope for Azure Container Registry
          to use the ACR-specific scope (source-controller, image-reflector-controller)\n-
          Fix potential Denial of Service (DoS) during TLS handshakes (CVE-2026-27138)
          by building all controllers with Go 1.26.1\n\n##### Components changelog\n\n-
          source-controller [v1.8.1](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.1/CHANGELOG.md)\n-
          kustomize-controller [v1.8.2](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.2/CHANGELOG.md)\n-
          notification-controller [v1.8.2](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.2/CHANGELOG.md)\n-
          helm-controller [v1.5.2](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.2/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.1](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.1/CHANGELOG.md)\n-
          image-automation-controller [v1.1.1](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.1/CHANGELOG.md)\n-
          source-watcher [v2.1.1](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] build(deps): bump the ci group across
          1 directory with 11 updates by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5765](https://redirect.github.com/fluxcd/flux2/pull/5765)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5767](https://redirect.github.com/fluxcd/flux2/pull/5767)\n-
          Update toolkit components by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5770](https://redirect.github.com/fluxcd/flux2/pull/5770)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5771](https://redirect.github.com/fluxcd/flux2/pull/5771)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.1...v2.8.2>\n\n###
          [`v2.8.1`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.1)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1)\n\n#####
          Highlights\n\nFlux v2.8.1 is a patch release that comes with various fixes.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix Git commit status events being dropped for Kustomizations (notification-controller)\n-
          Fix health check for StatefulSets when the Pods are Pending/Unschedulable
          during rollout (helm-controller, kustomize-controller)\n\n##### Components
          changelog\n\n- kustomize-controller [v1.8.1](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.1/CHANGELOG.md)\n-
          notification-controller [v1.8.1](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.1/CHANGELOG.md)\n-
          helm-controller [v1.5.1](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.1/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- \\[release/v2.8.x] Remove no longer needed workaround
          for Flux 2.8 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5735](https://redirect.github.com/fluxcd/flux2/pull/5735)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5739](https://redirect.github.com/fluxcd/flux2/pull/5739)\n-
          \\[release/v2.8.x] Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5741](https://redirect.github.com/fluxcd/flux2/pull/5741)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.8.0...v2.8.1>\n\n###
          [`v2.8.0`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.8.0)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.5...v2.8.0)\n\n#####
          Highlights\n\nFlux v2.8.0 is a feature release. Users are encouraged to
          upgrade for the best experience.\n\nFor a compressive overview of new features
          and API changes included in this release, please refer to the [Announcing
          Flux 2.8 GA blog post](https://fluxcd.io/blog/2026/02/flux-v2.8.0/).\n\nOverview
          of the new features:\n\n- Helm v4 support, including server-side apply and
          kstatus-based health checking (`HelmRelease`)\n- Readiness evaluation of
          Helm-managed objects with CEL expressions (`HelmRelease`)\n- Improved observability
          of Helm releases with inventory tracking in `.status.inventory` (`HelmRelease`)\n-
          Reduced the mean time to recovery of Flux-managed applications via `CancelHealthCheckOnNewRevision`
          feature gate (`Kustomization`, `HelmRelease`)\n- Support for commenting
          on Pull Requests directly from Flux notifications (`Provider`)\n- Custom
          SSA apply stages for ordering resource application in kustomize-controller
          (`Kustomization`)\n- Automatic GitHub App installation ID lookup from the
          repository owner (`GitRepository`, `ImageUpdateAutomation`, `Provider`)\n-
          Support for Cosign v3 for verifying OCI artifacts and container images (`OCIRepository`)\n-
          ArtifactGenerator support for extracting and modifying Helm charts (`ArtifactGenerator`)\n-
          Bypass cache when fetching source objects via `DirectSourceFetch` feature
          gate (`Kustomization`, `HelmRelease`, `ArtifactGenerator`)\n\n\u2764\uFE0F
          Big thanks to all the Flux contributors that helped us with this release!\n\n#####
          Kubernetes compatibility\n\nThis release is compatible with the following
          Kubernetes versions:\n\n| Kubernetes version | Minimum required |\n| ------------------
          | ---------------- |\n| `v1.33`            | `>= 1.32.0`      |\n| `v1.34`
          \           | `>= 1.34.1`      |\n| `v1.35`            | `>= 1.35.0`      |\n\n>
          \\[!NOTE]\n> Note that the Flux project offers support only for the latest
          three minor versions of Kubernetes.\n> Backwards compatibility with older
          versions of Kubernetes and OpenShift is offered by vendors such as\n> [ControlPlane](https://control-plane.io/enterprise-for-flux-cd/)
          that provide enterprise support for Flux.\n\n##### OpenShift compatibility\n\nFlux
          can be installed on Red Hat OpenShift cluster directly from OperatorHub
          using [Flux Operator](https://operatorhub.io/operator/flux-operator). The
          operator allows the configuration of Flux multi-tenancy lockdown, network
          policies, persistent storage, sharding, vertical scaling and the synchronization
          of the cluster state from Git repositories, OCI artifacts, and S3-compatible
          storage.\n\n##### Upgrade procedure\n\n:warning: The Flux APIs `v1beta2`
          and `v2beta2` (deprecated in 2024) have reached end-of-life and have been
          removed from the CRDs.\n\nPlease follow the [Upgrade Procedure for Flux
          v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572) for a
          smooth upgrade from older versions of Flux to v2.8.\n\n##### Components
          changelog\n\n- source-controller [v1.8.0](https://redirect.github.com/fluxcd/source-controller/blob/v1.8.0/CHANGELOG.md)\n-
          kustomize-controller [v1.8.0](https://redirect.github.com/fluxcd/kustomize-controller/blob/v1.8.0/CHANGELOG.md)\n-
          notification-controller [v1.8.0](https://redirect.github.com/fluxcd/notification-controller/blob/v1.8.0/CHANGELOG.md)\n-
          helm-controller [v1.5.0](https://redirect.github.com/fluxcd/helm-controller/blob/v1.5.0/CHANGELOG.md)\n-
          image-reflector-controller [v1.1.0](https://redirect.github.com/fluxcd/image-reflector-controller/blob/v1.1.0/CHANGELOG.md)\n-
          image-automation-controller [v1.1.0](https://redirect.github.com/fluxcd/image-automation-controller/blob/v1.1.0/CHANGELOG.md)\n-
          source-watcher [v2.1.0](https://redirect.github.com/fluxcd/source-watcher/blob/v2.1.0/CHANGELOG.md)\n\n#####
          CLI changelog\n\n- ci: Set `GITHUB_TOKEN` in the `release-flux-manifests`
          workflow by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5547](https://redirect.github.com/fluxcd/flux2/pull/5547)\n-
          Add backport label for Flux 2.7 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5550](https://redirect.github.com/fluxcd/flux2/pull/5550)\n-
          build(deps): bump the ci group across 1 directory with 3 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5548](https://redirect.github.com/fluxcd/flux2/pull/5548)\n-
          Fix `flux push artifact` not working with `--provider` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5551](https://redirect.github.com/fluxcd/flux2/pull/5551)\n-
          Extend `flux migrate` to work with local files by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5554](https://redirect.github.com/fluxcd/flux2/pull/5554)\n-
          Improve `flux migrate` for live cluster migrations by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5558](https://redirect.github.com/fluxcd/flux2/pull/5558)\n-
          Fix `flux migrate -f` command to work with comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5560](https://redirect.github.com/fluxcd/flux2/pull/5560)\n-
          Add source-watcher to docs by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5562](https://redirect.github.com/fluxcd/flux2/pull/5562)\n-
          Fix `flux migrate -f` not considering kind comments by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5563](https://redirect.github.com/fluxcd/flux2/pull/5563)\n-
          refactor: convert `Kustomization` resource into unstructured map only once
          during variable substitution by [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5568](https://redirect.github.com/fluxcd/flux2/pull/5568)\n-
          Disable AUR publishing by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5570](https://redirect.github.com/fluxcd/flux2/pull/5570)\n-
          Fix manifest generation for `--storage-adv-addr` and `--events-addr` flags
          by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan) in [#&#8203;5574](https://redirect.github.com/fluxcd/flux2/pull/5574)\n-
          Update dependencies to Kubernetes v1.34.1 and Go 1.25.2 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5576](https://redirect.github.com/fluxcd/flux2/pull/5576)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5578](https://redirect.github.com/fluxcd/flux2/pull/5578)\n-
          Restore GitHub PAT for backports by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5581](https://redirect.github.com/fluxcd/flux2/pull/5581)\n-
          \\[RFC-0012] Add command `flux get source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5555](https://redirect.github.com/fluxcd/flux2/pull/5555)\n-
          fix: handle error when writing password prompt to stdout by [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0)
          in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          Pin cosign to v2.6.1 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5594](https://redirect.github.com/fluxcd/flux2/pull/5594)\n-
          \\[RFC-0012] Add command `flux export source external` by [@&#8203;dgunzy](https://redirect.github.com/dgunzy)
          in [#&#8203;5583](https://redirect.github.com/fluxcd/flux2/pull/5583)\n-
          Fix bootstrap e2e test for image policy by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5604](https://redirect.github.com/fluxcd/flux2/pull/5604)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5603](https://redirect.github.com/fluxcd/flux2/pull/5603)\n-
          fix: return accepted values for flags when calling Values.Type() by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          ci: Include source-watcher in the e2e test suite by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5614](https://redirect.github.com/fluxcd/flux2/pull/5614)\n-
          Add source.extensions.fluxcd.io group to aggregated RBAC roles by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5627](https://redirect.github.com/fluxcd/flux2/pull/5627)\n-
          Fix panic on reconcile with source of ExternalArtifact kind by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5630](https://redirect.github.com/fluxcd/flux2/pull/5630)\n-
          Upgrade k8s to 1.34.2, c-r to 0.22.4 and helm to 3.19.2 by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5633](https://redirect.github.com/fluxcd/flux2/pull/5633)\n-
          diff: report if object is skipped by [@&#8203;hown3d](https://redirect.github.com/hown3d)
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5639](https://redirect.github.com/fluxcd/flux2/pull/5639)\n-
          Allow option to skip tenant namespace creation by [@&#8203;anshuishere](https://redirect.github.com/anshuishere)
          in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5648](https://redirect.github.com/fluxcd/flux2/pull/5648)\n-
          fix: [#&#8203;5654](https://redirect.github.com/fluxcd/flux2/issues/5654)
          by checking if both --chart and --chart-ref are set by [@&#8203;jaxels10](https://redirect.github.com/jaxels10)
          in [#&#8203;5656](https://redirect.github.com/fluxcd/flux2/pull/5656)\n-
          Added retry logic with delays to the Flux CLI download by [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu)
          in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          Run conformance tests for Kubernetes 1.35.0  by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5663](https://redirect.github.com/fluxcd/flux2/pull/5663)\n-
          fix: normalize path for Windows compatibility by [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi)
          in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          Introduce support for looking up GH app installation ID by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5682](https://redirect.github.com/fluxcd/flux2/pull/5682)\n-
          Update dependencies to Kubernetes v1.35.0 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5688](https://redirect.github.com/fluxcd/flux2/pull/5688)\n-
          Fix resume command logging success after reconciliation failure by [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool)
          in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          Add 2.8 to supported versions for `flux migrate -f` by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5713](https://redirect.github.com/fluxcd/flux2/pull/5713)\n-
          Introduce workflow for bumping fluxcd/pkg deps by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5717](https://redirect.github.com/fluxcd/flux2/pull/5717)\n-
          Update fluxcd/pkg dependencies by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5719](https://redirect.github.com/fluxcd/flux2/pull/5719)\n-
          Fix event listing ignoring pagination token by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5721](https://redirect.github.com/fluxcd/flux2/pull/5721)\n-
          Build with Go 1.26 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5723](https://redirect.github.com/fluxcd/flux2/pull/5723)\n-
          Update toolkit components by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5722](https://redirect.github.com/fluxcd/flux2/pull/5722)\n-
          Update helm-controller to v1.5.0 by [@&#8203;fluxcdbot](https://redirect.github.com/fluxcdbot)
          in [#&#8203;5725](https://redirect.github.com/fluxcd/flux2/pull/5725)\n-
          build(deps): bump the ci group across 1 directory with 12 updates by [@&#8203;dependabot](https://redirect.github.com/dependabot)\\[bot]
          in [#&#8203;5720](https://redirect.github.com/fluxcd/flux2/pull/5720)\n-
          Fix bootstrap failure on Windows cross-drive paths by [@&#8203;veeceey](https://redirect.github.com/veeceey)
          in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n-
          Dump debug info on e2e tests by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5729](https://redirect.github.com/fluxcd/flux2/pull/5729)\n-
          Set Kubernetes 1.33 as min supported version by [@&#8203;matheuscscp](https://redirect.github.com/matheuscscp)
          in [#&#8203;5730](https://redirect.github.com/fluxcd/flux2/pull/5730)\n-
          Update conformance tests to min Kubernetes 1.33 by [@&#8203;stefanprodan](https://redirect.github.com/stefanprodan)
          in [#&#8203;5731](https://redirect.github.com/fluxcd/flux2/pull/5731)\n\n#####
          New Contributors\n\n- [@&#8203;ramasai1](https://redirect.github.com/ramasai1)
          made their first contribution in [#&#8203;5566](https://redirect.github.com/fluxcd/flux2/pull/5566)\n-
          [@&#8203;akshatsinha0](https://redirect.github.com/akshatsinha0) made their
          first contribution in [#&#8203;5589](https://redirect.github.com/fluxcd/flux2/pull/5589)\n-
          [@&#8203;jaxels10](https://redirect.github.com/jaxels10) made their first
          contribution in [#&#8203;5602](https://redirect.github.com/fluxcd/flux2/pull/5602)\n-
          [@&#8203;hown3d](https://redirect.github.com/hown3d) made their first contribution
          in [#&#8203;5625](https://redirect.github.com/fluxcd/flux2/pull/5625)\n-
          [@&#8203;anshuishere](https://redirect.github.com/anshuishere) made their
          first contribution in [#&#8203;5597](https://redirect.github.com/fluxcd/flux2/pull/5597)\n-
          [@&#8203;ivan-munteanu](https://redirect.github.com/ivan-munteanu) made
          their first contribution in [#&#8203;5659](https://redirect.github.com/fluxcd/flux2/pull/5659)\n-
          [@&#8203;sibasispadhi](https://redirect.github.com/sibasispadhi) made their
          first contribution in [#&#8203;5674](https://redirect.github.com/fluxcd/flux2/pull/5674)\n-
          [@&#8203;Aman-Cool](https://redirect.github.com/Aman-Cool) made their first
          contribution in [#&#8203;5690](https://redirect.github.com/fluxcd/flux2/pull/5690)\n-
          [@&#8203;veeceey](https://redirect.github.com/veeceey) made their first
          contribution in [#&#8203;5726](https://redirect.github.com/fluxcd/flux2/pull/5726)\n\n**Full
          Changelog**: <https://github.com/fluxcd/flux2/compare/v2.7.0...v2.8.0>\n\n###
          [`v2.7.5`](https://redirect.github.com/fluxcd/flux2/releases/tag/v2.7.5)\n\n[Compare
          Source](https://redirect.github.com/fluxcd/flux2/compare/v2.7.4...v2.7.5)\n\n#####
          Highlights\n\nFlux v2.7.5 is a patch release that comes with fixes to helm-controller.
          Users are encouraged to upgrade for the best experience.\n\n\u2139\uFE0F
          Please follow the [Upgrade Procedure for Flux v2.7+](https://redirect.github.com/fluxcd/flux2/discussions/5572)
          for a smooth upgrade from Flux v2.6 to the latest version.\n\nFixes:\n\n-
          Fix HelmRelease history truncation when using the `RetryOnFailure` str\n\n>
          \u2702 **Note**\n> \n> PR body was truncated to here.\n\n\n</details>\n\n---\n\n###
          Configuration\n\n\U0001F4C5 **Schedule**: (UTC)\n\n- Branch creation\n  -
          At any time (no schedule defined)\n- Automerge\n  - At any time (no schedule
          defined)\n\n\U0001F6A6 **Automerge**: Disabled by config. Please merge this
          manually once you are satisfied.\n\n\u267B **Rebasing**: Whenever PR becomes
          conflicted, or you tick the rebase/retry checkbox.\n\n\U0001F515 **Ignore**:
          Close this PR and you won't be reminded about this update again.\n\n---\n\n
          - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this
          box\n\n---\n\nThis PR was generated by [Mend Renovate](https://mend.io/renovate/).
          View the [repository job log](https://developer.mend.io/github/vexxhost/atmosphere.common).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xMzEuOSIsInVwZGF0ZWRJblZlciI6IjQ0LjQ5LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=-->\n"
        change_url: https://github.com/vexxhost/atmosphere.common/pull/102
        commit_id: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        patchset: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
        project:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/atmosphere.common
          name: vexxhost/atmosphere.common
          short_name: atmosphere.common
          src_dir: src/github.com/vexxhost/atmosphere.common
        topic: null
      job: atmosphere-common-molecule-secretgen-controller
      jobtags: []
      max_attempts: 3
      message: Y2hvcmUoZGVwcyk6IHVwZGF0ZSBkZXBlbmRlbmN5IGZsdXhjZC9mbHV4MiB0byB2Mi45LjUKCj4g4oS577iPICoqTm90ZSoqCj4gCj4gVGhpcyBQUiBib2R5IHdhcyB0cnVuY2F0ZWQgZHVlIHRvIHBsYXRmb3JtIGxpbWl0cy4KClRoaXMgUFIgY29udGFpbnMgdGhlIGZvbGxvd2luZyB1cGRhdGVzOgoKfCBQYWNrYWdlIHwgVXBkYXRlIHwgQ2hhbmdlIHwKfC0tLXwtLS18LS0tfAp8IFtmbHV4Y2QvZmx1eDJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIpIHwgbWlub3IgfCBgMi42LjRgIOKGkiBgMi45LjVgIHwKCi0tLQoKIyMjIFJlbGVhc2UgTm90ZXMKCjxkZXRhaWxzPgo8c3VtbWFyeT5mbHV4Y2QvZmx1eDIgKGZsdXhjZC9mbHV4Mik8L3N1bW1hcnk+CgojIyMgW2B2Mi45LjVgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOS40Li4udjIuOS41KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOS40Li4udjIuOS41KQoKIyMjIFtgdjIuOS40YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuOS40KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOS4zLi4udjIuOS40KQoKIyMjIyBIaWdobGlnaHRzCgpGbHV4IHYyLjkuNCBpcyBhIHBhdGNoIHJlbGVhc2UgdGhhdCBzaGlwcyB2YXJpb3VzIGZpeGVzIHRvIHRoZSBGbHV4IGNvbnRyb2xsZXJzLCBjb3ZlcmluZyBzb3VyY2Utd2F0Y2hlciB0YXJiYWxsIGV4dHJhY3Rpb24gYW5kIGdsb2IgZXhwYW5zaW9uIGxpbWl0cywgdGhlIHJlZnNwZWNzIGFjY2VwdGVkIGJ5IGBJbWFnZVVwZGF0ZUF1dG9tYXRpb25gLCB0aGUgSFRUUCByZXF1ZXN0IGxpbWl0cyBvZiB0aGUgbm90aWZpY2F0aW9uLWNvbnRyb2xsZXIgc2VydmVycywgYW5kIEhlbG0gcmVwb3NpdG9yeSBpbmRleCBsb2FkaW5nLCBPQ0kgY2hhcnQgZGlnZXN0IHBpbm5pbmcsIGBCdWNrZXRgIGVycm9yIGhhbmRsaW5nIGFuZCBHQ1Mgc3RhdGljIGF1dGhlbnRpY2F0aW9uIGluIHNvdXJjZS1jb250cm9sbGVyLiBPbiB0aGUgQ0xJIHNpZGUsIGBmbHV4IG1pZ3JhdGUgLWZgIG5vdyBzdXBwb3J0cyBtaWdyYXRpbmcgcmVwb3NpdG9yaWVzIHRvIEZsdXggMi45LiBVc2VycyBhcmUgZW5jb3VyYWdlZCB0byB1cGdyYWRlIGZvciB0aGUgYmVzdCBleHBlcmllbmNlLgoKTm90ZSB0aGF0IHRoaXMgcmVsZWFzZSBjb250YWlucyBDUkQgc2NoZW1hIGNoYW5nZXMgZm9yIGBBcnRpZmFjdEdlbmVyYXRvcmAgYW5kIGBJbWFnZVVwZGF0ZUF1dG9tYXRpb25gOyBib3RoIENSRHMgbXVzdCBiZSB1cGRhdGVkIGFsb25nIHdpdGggdGhlIGNvbnRyb2xsZXJzLgoK4oS577iPIFBsZWFzZSBmb2xsb3cgdGhlIFtVcGdyYWRlIFByb2NlZHVyZSBmb3IgRmx1eCB2Mi43K10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9kaXNjdXNzaW9ucy81NTcyKSBmb3IgYSBzbW9vdGggdXBncmFkZSBmcm9tIEZsdXggdjIuNiB0byB0aGUgbGF0ZXN0IHZlcnNpb24uCgpGaXhlczoKCi0gQ29uZmluZSB0YXJiYWxsIGV4dHJhY3Rpb24gYW5kIGJvdW5kIGdsb2IgZXhwYW5zaW9uIChzb3VyY2Utd2F0Y2hlcikKLSBEaXNhbGxvdyBmb3JjZS11cGRhdGUgYW5kIGRlbGV0aW9uIHZpYSByZWZzcGVjcyAoaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyKQotIFVuaWZ5IEhUVFAgc2VydmVyIHJlcXVlc3QgbGltaXRzIChub3RpZmljYXRpb24tY29udHJvbGxlcikKLSBBbGlnbiBIZWxtIHJlcG9zaXRvcnkgaW5kZXggbG9hZGluZyB3aXRoIHVwc3RyZWFtIEhlbG0gdjQgKHNvdXJjZS1jb250cm9sbGVyKQotIEltcHJvdmUgZXJyb3IgaGFuZGxpbmcgaW4gYEJ1Y2tldGAgcmVjb25jaWxpYXRpb24gKHNvdXJjZS1jb250cm9sbGVyKQotIFBpbiBPQ0kgY2hhcnQgdmVyaWZpY2F0aW9uIGJ5IGRpZ2VzdCAoc291cmNlLWNvbnRyb2xsZXIpCi0gTGltaXQgR0NTIHN0YXRpYyBhdXRoZW50aWNhdGlvbiB0byBzZXJ2aWNlIGFjY291bnQga2V5cyAoc291cmNlLWNvbnRyb2xsZXIpCi0gUmVzdHJpY3QgdGhlIGBhbGxvdy13ZWJob29rc2AgbmV0d29yayBwb2xpY3kgdG8gdGhlIHJlY2VpdmVyIHBvcnQgKGZsdXggQ0xJKQoKSW1wcm92ZW1lbnRzOgoKLSBBZGQgc3VwcG9ydCBmb3IgbWlncmF0aW5nIHJlcG9zaXRvcmllcyB0byAyLjkgaW4gYGZsdXggbWlncmF0ZSAtZmAgKGZsdXggQ0xJKQotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcywgd2hpY2ggYWxpZ24gdGhlIEVDUiBob3N0IGRldGVjdGlvbiB3aXRoIHVwc3RyZWFtIChzb3VyY2UtY29udHJvbGxlciwgaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIsIGZsdXggQ0xJKQotIFVwZGF0ZSBCaXRidWNrZXQgQ2xvdWQgcmVjZWl2ZXIgZ3VpZGFuY2UgKG5vdGlmaWNhdGlvbi1jb250cm9sbGVyKQoKIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBzb3VyY2UtY29udHJvbGxlciBbdjEuOS40XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS1jb250cm9sbGVyL2Jsb2IvdjEuOS40L0NIQU5HRUxPRy5tZCkKLSBzb3VyY2Utd2F0Y2hlciBbdjIuMi4zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS13YXRjaGVyL2Jsb2IvdjIuMi4zL0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOS4zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOS4zL0NIQU5HRUxPRy5tZCkKLSBpbWFnZS1yZWZsZWN0b3ItY29udHJvbGxlciBbdjEuMi40XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyL2Jsb2IvdjEuMi40L0NIQU5HRUxPRy5tZCkKLSBpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIgW3YxLjIuNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9pbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIvYmxvYi92MS4yLjQvQ0hBTkdFTE9HLm1kKQoKIyMjIyBDTEkgY2hhbmdlbG9nCgotIFxbcmVsZWFzZS92Mi45LnhdIEFkZCBzdXBwb3J0IGZvciAyLjkgaW4gYG1pZ3JhdGUgLWZgIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NjAyMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzYwMjEpCi0gVXBkYXRlIGZsdXhjZC9wa2cgZGVwZW5kZW5jaWVzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NjAyNl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzYwMjYpCi0gXFtyZWxlYXNlL3YyLjkueF0gZml4OiByZXN0cmljdCBgYWxsb3ctd2ViaG9va3NgIG5ldHBvbCB0byByZWNlaXZlciBwb3J0IGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NjAyOV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzYwMjkpCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzYwMzFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC82MDMxKQoKKipGdWxsIENoYW5nZWxvZyoqOiA8aHR0cHM6Ly9naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjkuMy4uLnYyLjkuND4KCiMjIyBbYHYyLjkuM2BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcmVsZWFzZXMvdGFnL3YyLjkuMykKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjkuMi4uLnYyLjkuMykKCiMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi45LjMgaXMgYSBwYXRjaCByZWxlYXNlLiBJdCBmaXhlcyBlbXB0eSBsaW5lcyB2YW5pc2hpbmcgZnJvbSByZW5kZXJlZCBIZWxtIGNoYXJ0IG1hbmlmZXN0cywgSGVsbVJlbGVhc2VzIGJlaW5nIG1hcmtlZCBhcyB0ZXN0ZWQgd2hlbiB0aGVpciBIZWxtIHRlc3QgaG9va3MgbmV2ZXIgcmFuLCBhbmQgYHNwZWMuaW1hZ2VzYCBlbnRyaWVzIHRoYXQgc2V0IG9ubHkgc29tZSBpbWFnZSBmaWVsZHMgZGlzY2FyZGluZyB0aGUgcmVtYWluaW5nIGZpZWxkcyBhbHJlYWR5IGRlY2xhcmVkIGZvciB0aGUgc2FtZSBpbWFnZSBpbiB0aGUgYGt1c3RvbWl6YXRpb24ueWFtbGAuIFRoZSBsYXR0ZXIgYWZmZWN0cyBib3RoIGt1c3RvbWl6ZS1jb250cm9sbGVyIGFuZCB0aGUgYGZsdXggYnVpbGR8ZGlmZiBrdXN0b21pemF0aW9uYCBjb21tYW5kcy4gVXNlcnMgYXJlIGVuY291cmFnZWQgdG8gdXBncmFkZSBmb3IgdGhlIGJlc3QgZXhwZXJpZW5jZS4KCuKEue+4jyBQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBGbHV4IHYyLjYgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLgoKRml4ZXM6CgotIEZpeCBlbXB0eSBsaW5lcyB2YW5pc2hpbmcgZnJvbSByZW5kZXJlZCBjaGFydCBtYW5pZmVzdHMgKGhlbG0tY29udHJvbGxlcikKLSBGaXggYEhhc0JlZW5UZXN0ZWRgIGZvciBhbGwgY29ybmVyIGNhc2VzLCB3aGVyZSBhIHJlbGVhc2UgY291bGQgYmUgbWFya2VkIGFzIHRlc3RlZCBhbHRob3VnaCBpdHMgSGVsbSB0ZXN0IGhvb2tzIG5ldmVyIHJhbiAoaGVsbS1jb250cm9sbGVyKQotIEZpeCBhIGBzcGVjLmltYWdlc2AgZW50cnkgc2V0dGluZyBvbmx5IHNvbWUgb2YgdGhlIGltYWdlIGZpZWxkcyBkaXNjYXJkaW5nIHRoZSByZW1haW5pbmcgZmllbGRzIGFscmVhZHkgZGVjbGFyZWQgZm9yIHRoZSBzYW1lIGltYWdlIGluIHRoZSBga3VzdG9taXphdGlvbi55YW1sYCBhdCBgc3BlYy5wYXRoYCwgZS5nLiBvdmVycmlkaW5nIG9ubHkgYG5ld05hbWVgIHByb2R1Y2VkIGFuIHVudGFnZ2VkIGltYWdlIHJlZmVyZW5jZSAoa3VzdG9taXplLWNvbnRyb2xsZXIsIGZsdXggQ0xJKQoKSW1wcm92ZW1lbnRzOgoKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMKLSBJbmNsdWRlIHNvdXJjZS13YXRjaGVyIGluIHRoZSBPQ0kgZmx1eC1tYW5pZmVzdHMgYXJ0aWZhY3QKCiMjIyMgQ29tcG9uZW50cyBjaGFuZ2Vsb2cKCi0ga3VzdG9taXplLWNvbnRyb2xsZXIgW3YxLjkuNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9rdXN0b21pemUtY29udHJvbGxlci9ibG9iL3YxLjkuNC9DSEFOR0VMT0cubWQpCi0gaGVsbS1jb250cm9sbGVyIFt2MS42LjNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaGVsbS1jb250cm9sbGVyL2Jsb2IvdjEuNi4zL0NIQU5HRUxPRy5tZCkKCiMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBcW3JlbGVhc2UvdjIuOS54XSBJbmNsdWRlIHNvdXJjZS13YXRjaGVyIHRvIG9jaSBmbHV4LW1hbmlmZXN0cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU5OTZdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTk2KQotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzYwMDZdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC82MDA2KQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs2MDExXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNjAxMSkKCioqRnVsbCBDaGFuZ2Vsb2cqKjogPGh0dHBzOi8vZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi45LjIuLi52Mi45LjM+CgojIyMgW2B2Mi45LjJgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3JlbGVhc2VzL3RhZy92Mi45LjIpCgpbQ29tcGFyZSBTb3VyY2VdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi45LjEuLi52Mi45LjIpCgojIyMjIyBIaWdobGlnaHRzCgpGbHV4IHYyLjkuMiBpcyBhIHBhdGNoIHJlbGVhc2UuIFRoZSBtYWluIGZpeCBhZGRyZXNzZXMgYSByZWdyZXNzaW9uIGludHJvZHVjZWQgaW4KdjIuOS4xIHdoZXJlIGEgS3VzdG9taXphdGlvbiB3aXRoIGBvcGVuYXBpLnBhdGhgIHBvaW50aW5nIHRvIGEgVVJMIGZhaWxlZCB0bwpyZWNvbmNpbGUgd2l0aCBgZmFpbGVkIHRvIHJlYWQgT3BlbkFQSSBzY2hlbWFgLiBUaGlzIHJlbGVhc2UgYWxzbyBjb3JyZWN0cyBzZXZlcmFsCkNSRCBmaWVsZCBkZXNjcmlwdGlvbnMgdGhhdCBjb250YWluZWQgaW5hY2N1cmF0ZSBvciBsZWFrZWQgY29udGVudC4gVXNlcnMgYXJlCmVuY291cmFnZWQgdG8gdXBncmFkZSBmb3IgdGhlIGJlc3QgZXhwZXJpZW5jZS4KCuKEue+4jyBQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBGbHV4IHYyLjYgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLgoKRml4ZXM6CgotIEZpeCBhIHJlZ3Jlc3Npb24gd2hlcmUgYSBLdXN0b21pemF0aW9uIHdpdGggYG9wZW5hcGkucGF0aGAgcG9pbnRpbmcgdG8gYSBVUkwgZmFpbGVkIHRvIHJlY29uY2lsZSB3aXRoIGBmYWlsZWQgdG8gcmVhZCBPcGVuQVBJIHNjaGVtYWAgKGt1c3RvbWl6ZS1jb250cm9sbGVyKQotIEZpeCB0aGUgYEhlbG1DaGFydGAgQ1JEIGRlc2NyaXB0aW9uIGZvciBgLnN0YXR1cy51cmxgLCB3aGljaCBwb2ludGVkIHVzZXJzIGF0IGBCdWNrZXRTdGF0dXMuQXJ0aWZhY3RgIGluc3RlYWQgb2YgYEhlbG1DaGFydFN0YXR1cy5BcnRpZmFjdGAgKHNvdXJjZS1jb250cm9sbGVyKQotIEZpeCB0aGUgYEltYWdlUmVwb3NpdG9yeWAgQ1JEIGRlc2NyaXB0aW9uIGZvciBgLnN0YXR1cy5vYnNlcnZlZEV4Y2x1c2lvbkxpc3RgLCB3aGljaCByZWZlcnJlZCB0byBgc3BlYy5sYXN0U2NhblJlc3VsdGAgaW5zdGVhZCBvZiBgc3RhdHVzLmxhc3RTY2FuUmVzdWx0YCAoaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIpCi0gRml4IHRoZSBgSW1hZ2VVcGRhdGVBdXRvbWF0aW9uYCBDUkQgZGVzY3JpcHRpb24gZm9yIGAuc3RhdHVzLm9ic2VydmVkU291cmNlUmV2aXNpb25gLCB3aGljaCBoYWQgYSBzdHJheSBHbyBzdHJ1Y3QgZGVjbGFyYXRpb24gbGVha2luZyBpbnRvIGl0IChpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIpCgpJbXByb3ZlbWVudHM6CgotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcwoKIyMjIyMgQ29tcG9uZW50cyBjaGFuZ2Vsb2cKCi0gc291cmNlLWNvbnRyb2xsZXIgW3YxLjkuM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9zb3VyY2UtY29udHJvbGxlci9ibG9iL3YxLjkuMy9DSEFOR0VMT0cubWQpCi0ga3VzdG9taXplLWNvbnRyb2xsZXIgW3YxLjkuM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9rdXN0b21pemUtY29udHJvbGxlci9ibG9iL3YxLjkuMy9DSEFOR0VMT0cubWQpCi0gaGVsbS1jb250cm9sbGVyIFt2MS42LjJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaGVsbS1jb250cm9sbGVyL2Jsb2IvdjEuNi4yL0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOS4yXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOS4yL0NIQU5HRUxPRy5tZCkKLSBpbWFnZS1yZWZsZWN0b3ItY29udHJvbGxlciBbdjEuMi4zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyL2Jsb2IvdjEuMi4zL0NIQU5HRUxPRy5tZCkKLSBpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIgW3YxLjIuM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9pbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIvYmxvYi92MS4yLjMvQ0hBTkdFTE9HLm1kKQotIHNvdXJjZS13YXRjaGVyIFt2Mi4yLjJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Qvc291cmNlLXdhdGNoZXIvYmxvYi92Mi4yLjIvQ0hBTkdFTE9HLm1kKQoKIyMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTg0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk4NCkKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTkwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk5MCkKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTk5NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5OTQpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOS4xLi4udjIuOS4yPgoKIyMjIFtgdjIuOS4xYF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjkuMC4uLnYyLjkuMSkKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjkuMC4uLnYyLjkuMSkKCiMjIyBbYHYyLjkuMGBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcmVsZWFzZXMvdGFnL3YyLjkuMCkKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguOC4uLnYyLjkuMCkKCiMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi45LjAgaXMgYSBmZWF0dXJlIHJlbGVhc2UuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgpGb3IgYSBjb21wcmVzc2l2ZSBvdmVydmlldyBvZiBuZXcgZmVhdHVyZXMgYW5kIEFQSSBjaGFuZ2VzIGluY2x1ZGVkIGluIHRoaXMgcmVsZWFzZSwgcGxlYXNlIHJlZmVyIHRvIHRoZSBbQW5ub3VuY2luZyBGbHV4IDIuOSBHQSBibG9nIHBvc3RdKGh0dHBzOi8vZmx1eGNkLmlvL2Jsb2cvMjAyNi8wNi9mbHV4LXYyLjkuMC8pLgoKT3ZlcnZpZXcgb2YgdGhlIG5ldyBmZWF0dXJlczoKCi0gRmx1eCBDTEkgUGx1Z2luIFN5c3RlbSB3aXRoIHRoZSBNaXJyb3IgYW5kIFNjaGVtYSBwbHVnaW5zIChgZmx1eCBwbHVnaW5gKQotIFNlcnZlci1TaWRlIEFwcGx5IGZpZWxkIGlnbm9yZSBydWxlcyBmb3IgZmluZS1ncmFpbmVkIGRyaWZ0IGNvbnRyb2wgKGBLdXN0b21pemF0aW9uYCkKLSBTT1BTIGRlY3J5cHRpb24gd2l0aCB0aGUgQWdlIHBvc3QtcXVhbnR1bSBjaXBoZXIgKGBLdXN0b21pemF0aW9uYCkKLSBLdWJlcm5ldGVzIFdvcmtsb2FkIElkZW50aXR5IGF1dGhlbnRpY2F0aW9uIGZvciBPcGVuQmFvIGFuZCBWYXVsdCAoYEt1c3RvbWl6YXRpb25gKQotIEhlbG0gcG9zdC1yZW5kZXIgc3RyYXRlZ2llcywgaW5jbHVkaW5nIGNoYXJ0IGhvb2tzIHN1cHBvcnQgKGBIZWxtUmVsZWFzZWApCi0gTGl0ZXJhbCBtb2RlIGZvciBIZWxtIHZhbHVlcyByZWZlcmVuY2VzIG1pcnJvcmluZyBgaGVsbSAtLXNldC1saXRlcmFsYCAoYEhlbG1SZWxlYXNlYCkKLSBBbGxvdyBlbXB0eSBraW5kIGluIENFTCBoZWFsdGggY2hlY2sgZXhwcmVzc2lvbnMgKGBLdXN0b21pemF0aW9uYCwgYEhlbG1SZWxlYXNlYCkKLSBHaXQgY29tbWl0IHNpZ25pbmcgYW5kIHZlcmlmaWNhdGlvbiB3aXRoIFNTSCBrZXlzIChgR2l0UmVwb3NpdG9yeWAsIGBJbWFnZVVwZGF0ZUF1dG9tYXRpb25gKQotIEFXUyBDb2RlQ29tbWl0IGF1dGhlbnRpY2F0aW9uIHVzaW5nIFdvcmtsb2FkIElkZW50aXR5IChgR2l0UmVwb3NpdG9yeWApCi0gQ3VzdG9tIFNpZ3N0b3JlIHRydXN0ZWQgcm9vdCBmb3Iga2V5bGVzcyB2ZXJpZmljYXRpb24gaW4gYWlyLWdhcHBlZCBlbnZpcm9ubWVudHMgKGBPQ0lSZXBvc2l0b3J5YCkKLSBQYXRoIHBhdHRlcm4gZGlyZWN0b3J5IGRpc2NvdmVyeSBmb3IgbW9ub3JlcG9zIChgQXJ0aWZhY3RHZW5lcmF0b3JgKQotIFNlY3JldC1sZXNzLCBPSURDLXNlY3VyZWQgd2ViaG9vayBSZWNlaXZlcnMgKGBSZWNlaXZlcmApCgrinaTvuI8gQmlnIHRoYW5rcyB0byBhbGwgdGhlIEZsdXggY29udHJpYnV0b3JzIHRoYXQgaGVscGVkIHVzIHdpdGggdGhpcyByZWxlYXNlIQoKIyMjIyMgS3ViZXJuZXRlcyBjb21wYXRpYmlsaXR5CgpUaGlzIHJlbGVhc2UgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBmb2xsb3dpbmcgS3ViZXJuZXRlcyB2ZXJzaW9uczoKCnwgS3ViZXJuZXRlcyB2ZXJzaW9uIHwgTWluaW11bSByZXF1aXJlZCB8CnwgLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLSB8CnwgYHYxLjM0YCAgICAgICAgICAgIHwgYD49IDEuMzQuMWAgICAgICB8CnwgYHYxLjM1YCAgICAgICAgICAgIHwgYD49IDEuMzUuMGAgICAgICB8CnwgYHYxLjM2YCAgICAgICAgICAgIHwgYD49IDEuMzYuMGAgICAgICB8Cgo+IFxbIU5PVEVdCj4gTm90ZSB0aGF0IHRoZSBGbHV4IHByb2plY3Qgb2ZmZXJzIHN1cHBvcnQgb25seSBmb3IgdGhlIGxhdGVzdCB0aHJlZSBtaW5vciB2ZXJzaW9ucyBvZiBLdWJlcm5ldGVzLgo+IEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgS3ViZXJuZXRlcyBhbmQgT3BlblNoaWZ0IGlzIG9mZmVyZWQgYnkgdmVuZG9ycyBzdWNoIGFzCj4gW0NvbnRyb2xQbGFuZV0oaHR0cHM6Ly9jb250cm9sLXBsYW5lLmlvL2VudGVycHJpc2UtZm9yLWZsdXgtY2QvKSB0aGF0IHByb3ZpZGUgZW50ZXJwcmlzZSBzdXBwb3J0IGZvciBGbHV4LgoKIyMjIyMgT3BlblNoaWZ0IGNvbXBhdGliaWxpdHkKCkZsdXggY2FuIGJlIGluc3RhbGxlZCBvbiBSZWQgSGF0IE9wZW5TaGlmdCBjbHVzdGVyIGRpcmVjdGx5IGZyb20gT3BlcmF0b3JIdWIgdXNpbmcgW0ZsdXggT3BlcmF0b3JdKGh0dHBzOi8vb3BlcmF0b3JodWIuaW8vb3BlcmF0b3IvZmx1eC1vcGVyYXRvcikuIFRoZSBvcGVyYXRvciBhbGxvd3MgdGhlIGNvbmZpZ3VyYXRpb24gb2YgRmx1eCBtdWx0aS10ZW5hbmN5IGxvY2tkb3duLCBuZXR3b3JrIHBvbGljaWVzLCBwZXJzaXN0ZW50IHN0b3JhZ2UsIHNoYXJkaW5nLCB2ZXJ0aWNhbCBzY2FsaW5nIGFuZCB0aGUgc3luY2hyb25pemF0aW9uIG9mIHRoZSBjbHVzdGVyIHN0YXRlIGZyb20gR2l0IHJlcG9zaXRvcmllcywgT0NJIGFydGlmYWN0cywgYW5kIFMzLWNvbXBhdGlibGUgc3RvcmFnZS4KCiMjIyMgVXBncmFkZSBwcm9jZWR1cmUKCjp3YXJuaW5nOiBUaGUgRmx1eCBBUElzIGBpbWFnZS50b29sa2l0LmZsdXhjZC5pby92MWJldGEyYCBhbmQgYG5vdGlmaWNhdGlvbi50b29sa2l0LmZsdXhjZC5pby92MWJldGEyYApoYXZlIHJlYWNoZWQgZW5kLW9mLWxpZmUgYW5kIGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIENSRHMuCgpQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBvbGRlciB2ZXJzaW9ucyBvZiBGbHV4IHRvIHYyLjkuCgojIyMjIENvbXBvbmVudHMgY2hhbmdlbG9nCgotIHNvdXJjZS1jb250cm9sbGVyIFt2MS45LjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Qvc291cmNlLWNvbnRyb2xsZXIvYmxvYi92MS45LjEvQ0hBTkdFTE9HLm1kKQotIGt1c3RvbWl6ZS1jb250cm9sbGVyIFt2MS45LjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Qva3VzdG9taXplLWNvbnRyb2xsZXIvYmxvYi92MS45LjEvQ0hBTkdFTE9HLm1kKQotIG5vdGlmaWNhdGlvbi1jb250cm9sbGVyIFt2MS45LjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Qvbm90aWZpY2F0aW9uLWNvbnRyb2xsZXIvYmxvYi92MS45LjEvQ0hBTkdFTE9HLm1kKQotIGhlbG0tY29udHJvbGxlciBbdjEuNi4xXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2hlbG0tY29udHJvbGxlci9ibG9iL3YxLjYuMS9DSEFOR0VMT0cubWQpCi0gaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIgW3YxLjIuMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9pbWFnZS1yZWZsZWN0b3ItY29udHJvbGxlci9ibG9iL3YxLjIuMS9DSEFOR0VMT0cubWQpCi0gaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyIFt2MS4yLjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuMi4xL0NIQU5HRUxPRy5tZCkKLSBzb3VyY2Utd2F0Y2hlciBbdjIuMi4xXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS13YXRjaGVyL2Jsb2IvdjIuMi4xL0NIQU5HRUxPRy5tZCkKCiMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBBZGQgYmFja3BvcnQgbGFiZWwgZm9yIEZsdXggMi44IGJ5IFtAJiM4MjAzO21hdGhldXNjc2NwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vbWF0aGV1c2NzY3ApIGluIFsjJiM4MjAzOzU3MzJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzMyKQotIFJlbW92ZSBubyBsb25nZXIgbmVlZGVkIHdvcmthcm91bmQgZm9yIEZsdXggMi44IGJ5IFtAJiM4MjAzO21hdGhldXNjc2NwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vbWF0aGV1c2NzY3ApIGluIFsjJiM4MjAzOzU3MzNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzMzKQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzQwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc0MCkKLSBBZGQgbWlzc2luZyB0aGluZ3MgdG8gcmVsZWFzZSBub3RlcyB0ZW1wbGF0ZSBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzQzXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc0MykKLSBjaTogYWRkIHRvcC1sZXZlbCBwZXJtaXNzaW9ucyB0byB1cGdyYWRlLWZsdXhjZC1wa2cgd29ya2Zsb3cgYnkgW0AmIzgyMDM7Z2FnYW5ocjk0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZ2FnYW5ocjk0KSBpbiBbIyYjODIwMzs1NzYzXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc2MykKLSBidWlsZChkZXBzKTogYnVtcCB0aGUgY2kgZ3JvdXAgYWNyb3NzIDEgZGlyZWN0b3J5IHdpdGggMTEgdXBkYXRlcyBieSBbQCYjODIwMztkZXBlbmRhYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZGVwZW5kYWJvdClcW2JvdF0gaW4gWyMmIzgyMDM7NTc2NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NjQpCi0gVXBkYXRlIGZsdXhjZC9wa2cgZGVwZW5kZW5jaWVzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTc2Nl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NjYpCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU3NjldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzY5KQotIEFkZCB0YXJnZXQgYnJhbmNoIG5hbWUgdG8gdXBkYXRlIGJyYW5jaCBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzczXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc3MykKLSBGaXgvcmVzdW1lIGV4aXQgY29kZSBieSBbQCYjODIwMztBbWFuLUNvb2xdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9BbWFuLUNvb2wpIGluIFsjJiM4MjAzOzU3MDFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzAxKQotIE1hcmsgUkZDIDAwMTAsIDAwMTEgYW5kIDAwMTIgYXMgaW1wbGVtZW50ZWQgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1Nzc2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc3NikKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTc4MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3ODApCi0gQWRkIC0tcmVzb2x2ZS1zeW1saW5rcyBmbGFnIHRvIGJ1aWxkIGFuZCBwdXNoIGFydGlmYWN0IGNvbW1hbmRzIGJ5IFtAJiM4MjAzO3JvaGFuc29vZDEwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vcm9oYW5zb29kMTApIGluIFsjJiM4MjAzOzU3MjRdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzI0KQotIGZpeDogdmFsaWRhdGUgLS1zb3VyY2UgZmxhZyBpbiBjcmVhdGUga3VzdG9taXphdGlvbiBjb21tYW5kIGJ5IFtAJiM4MjAzO2dtYTFrXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZ21hMWspIGluIFsjJiM4MjAzOzU3OThdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81Nzk4KQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1ODIxXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTgyMSkKLSBBZGQgYC0tc2hvdy1zb3VyY2VgIHRvIGBmbHV4IGdldCBrc2AgYW5kIGBmbHV4IGdldCBocmAgIGJ5IFtAJiM4MjAzO3JhZmFlbHBlcm9jb10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3JhZmFlbHBlcm9jbykgaW4gWyMmIzgyMDM7NTgyOF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4MjgpCi0gQWRkIGBmbHV4IGNyZWF0ZSBzZWNyZXQgcmVjZWl2ZXJgIGNvbW1hbmQgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1ODM1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTgzNSkKLSBmaXg6IGhhbmRsZSBtdWx0aXBsZSBzeW1saW5rcyB0byBzYW1lIHRhcmdldCBpbiBidWlsZCBhcnRpZmFjdCBieSBbQCYjODIwMztJYW0tS2FyYW4tU3VyZXNoXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vSWFtLUthcmFuLVN1cmVzaCkgaW4gWyMmIzgyMDM7NTgzM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4MzMpCi0gQWRkIGAtLWluLW1lbW9yeS1idWlsZGAgdG8gYGZsdXggYnVpbGQga3NgIGFuZCBgZmx1eCBkaWZmIGtzYCBieSBbQCYjODIwMztyeWNsaV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3J5Y2xpKSBpbiBbIyYjODIwMzs1Nzk0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc5NCkKLSBNaWdyYXRlIGVuZC10by1lbmQgdGVzdCB0byBsYXRlc3QgY2xvdWQgU0RLcyAgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1ODQwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg0MCkKLSBkb2NzOiBBZGQgQUkgQ29kaW5nIEFzc2lzdGFudHMgR3VpZGFuY2UgIGJ5IFtAJiM4MjAzO3N0ZWZhbnByb2Rhbl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3N0ZWZhbnByb2RhbikgaW4gWyMmIzgyMDM7NTg0MV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4NDEpCi0gQWRkIEFJIEFnZW50cyBndWlkYW5jZSBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU4NDddKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81ODQ3KQotIFxbUkZDLTAwMTNdIEZsdXggQ0xJIFBsdWdpbiBTeXN0ZW0gYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1Nzk1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc5NSkKLSBBZGQgYC0taWdub3JlLW5vdC1mb3VuZGAgdG8gYGZsdXggZGlmZiBrc2AgYnkgW0AmIzgyMDM7cnljbGldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9yeWNsaSkgaW4gWyMmIzgyMDM7NTg0NV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4NDUpCi0gXFtSRkMtMDAxM10gSW1wbGVtZW50IHBsdWdpbiBzeXN0ZW0gYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1ODQ5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg0OSkKLSBidWlsZChkZXBzKTogYnVtcCBnaXRodWIuY29tL2dvLWdpdC9nby1naXQvdjUgZnJvbSA1LjE3LjEgdG8gNS4xOC4wIGJ5IFtAJiM4MjAzO2RlcGVuZGFib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9kZXBlbmRhYm90KVxbYm90XSBpbiBbIyYjODIwMzs1ODUzXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg1MykKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTg1Nl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4NTYpCi0gQWRkIGRpZ2VzdCBwaW5uaW5nIHN1cHBvcnQgdG8gYGZsdXggcGx1Z2luIGluc3RhbGxgIGJ5IFtAJiM4MjAzO0lhbS1LYXJhbi1TdXJlc2hdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9JYW0tS2FyYW4tU3VyZXNoKSBpbiBbIyYjODIwMzs1ODcyXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg3MikKLSBBZGQgYC0tbnMtZm9sbG93cy1rdWJlLWNvbnRleHRgIGdsb2JhbCBmbGFnIGZvciB1c2luZyB0aGUga3ViZWNvbmZpZyBjb250ZXh0IG5hbWVzcGFjZSBieSBbQCYjODIwMztqdHlyXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vanR5cikgaW4gWyMmIzgyMDM7NTgzMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4MzEpCi0gaW5jbHVkZSBzb3VyY2Utd2F0Y2hlciBpbiBpbnN0YWxsLnlhbWwgbWFuaWZlc3RzIGJ5IFtAJiM4MjAzO3RtbW9yaW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90bW1vcmluKSBpbiBbIyYjODIwMzs1ODgxXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg4MSkKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTg5MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4OTApCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU5MDNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTAzKQotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU5MDddKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTA3KQotIFZhbGlkYXRlIEhlbG0gc291cmNlIFVSTCBzY2hlbWVzIGJ5IFtAJiM4MjAzO2ltbWFudXdlbGxdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9pbW1hbnV3ZWxsKSBpbiBbIyYjODIwMzs1OTA5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTkwOSkKLSBJbnRyb2R1Y2UgYGZsdXggdHJpZ2dlciByZWNlaXZlcmAgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTkwOF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MDgpCi0gcmVmYWN0b3IoYXBpKTogbWlncmF0ZSBNYWtlRGVwZW5kc09uIHRvIHNoYXJlZCBhcGlzL21ldGEgZnVuYyBieSBbQCYjODIwMzt2ZWNpbF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3ZlY2lsKSBpbiBbIyYjODIwMzs1OTEyXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTkxMikKLSBVcGRhdGUgdG8gS3ViZXJuZXRlcyAxLjM2IGFuZCBHbyAxLjI2IGJ5IFtAJiM4MjAzO3N0ZWZhbnByb2Rhbl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3N0ZWZhbnByb2RhbikgaW4gWyMmIzgyMDM7NTkyNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MjQpCi0gYnVpbGQoZGVwcyk6IGJ1bXAgdGhlIGNpIGdyb3VwIGFjcm9zcyAxIGRpcmVjdG9yeSB3aXRoIDE5IHVwZGF0ZXMgYnkgW0AmIzgyMDM7ZGVwZW5kYWJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2RlcGVuZGFib3QpXFtib3RdIGluIFsjJiM4MjAzOzU5MjVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTI1KQotIFJ1biBjb25mb3JtYW5jZSB0ZXN0cyBmb3IgS3ViZXJuZXRlcyAxLjM2IGJ5IFtAJiM4MjAzO3N0ZWZhbnByb2Rhbl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3N0ZWZhbnByb2RhbikgaW4gWyMmIzgyMDM7NTkyNl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MjYpCi0gQWRkIHN1cHBvcnQgZm9yIEFXUyBDb2RlQ29tbWl0IHRvIGBmbHV4IGJvb3RzdHJhcCBnaXRgIGJ5IFtAJiM4MjAzO3RhcmFzcG9zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdGFyYXNwb3MpIGluIFsjJiM4MjAzOzU4NjhdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81ODY4KQotIFZhbGlkYXRlIHBsdWdpbiBiaW5hcnkgcGF0aCBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU5MjddKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTI3KQotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU5MjhdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTI4KQotIGZpeDogcHJlc2VydmUgaW52YWxpZCBtZXRhZGF0YS5sYWJlbHMgaW4gYGZsdXggYnVpbGQga3NgIGJ5IFtAJiM4MjAzO3JhZmZpc10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3JhZmZpcykgaW4gWyMmIzgyMDM7NTkwNl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MDYpCi0gYnVpbGQ6IHRhcmdldCBob3N0IGFyY2ggZm9yIGxvY2FsIGJ1aWxkcy9lbnZ0ZXN0IGJ5IFtAJiM4MjAzO3N0ZWFsdGh5Ym94XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlYWx0aHlib3gpIGluIFsjJiM4MjAzOzU5MzJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTMyKQotIGJ1aWxkKGRlcHMpOiBidW1wIHRoZSBjaSBncm91cCB3aXRoIDYgdXBkYXRlcyBieSBbQCYjODIwMztkZXBlbmRhYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZGVwZW5kYWJvdClcW2JvdF0gaW4gWyMmIzgyMDM7NTkzOF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MzgpCi0gU3VwcG9ydCBzcGVjaWZpbmcgc3BhcnNlQ2hlY2tvdXQgaW4gZmx1eCBib290c3RyYXAgYnkgW0AmIzgyMDM7cGlueTk0MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Bpbnk5NDApIGluIFsjJiM4MjAzOzU5MThdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTE4KQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTQ0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk0NCkKLSBIb25vciBga3Muc3BlYy5wb3N0QnVpbGQuc3Vic3RpdHV0ZVN0cmF0ZWd5YCBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1OTQ1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk0NSkKLSBBZGQgRHJpZnRJZ25vcmVSdWxlcyBzdXBwb3J0IHRvIGZsdXggZGlmZiBrdXN0b21pemF0aW9uIGJ5IFtAJiM4MjAzO2RpcHRpLXBhaV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2RpcHRpLXBhaSkgaW4gWyMmIzgyMDM7NTkyM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MjMpCi0gQWxsb3cgc2lnbmluZyBjb21taXRzIHVzaW5nIFNTSCBrZXkgYnkgW0AmIzgyMDM7aGlkZGVjb10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2hpZGRlY28pIGluIFsjJiM4MjAzOzU5MjBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTIwKQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTUwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk1MCkKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTM3XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTkzNykKLSBjbWQ6IHN1cHBvcnQgYHR5cGUhPXN0YXR1c2AgaW4gZ2V0IC0tc3RhdHVzLXNlbGVjdG9yIGJ5IFtAJiM4MjAzOzN1emJjcWplXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vM3V6YmNxamUpIGluIFsjJiM4MjAzOzU5NTJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTUyKQotIEZpeCBgZmx1eCBnZXQgYWxsIC0tc3RhdHVzLXNlbGVjdG9yYCBmb3IgZW1wdHkgcmVzdWx0cyBhbmQgbm90aWZpY2F0aW9uIHJlc291cmNlcyBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1OTU0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk1NCkKLSBVcGdyYWRlIGdvLWdpdC1wcm92aWRlcnMgdG8gdjAuMjcuMCBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1OTU2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk1NikKLSBGaXggdXNpbmcgUmVjZWl2ZXIgYWRhcHRlciBmb3IgQXJ0aWZhY3RHZW5lcmF0b3IgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTk1N10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5NTcpCi0gZmVhdDogSW5zdGFsbCBQbHVnaW5zIGFsb25nc2lkZSBGbHV4IHNldHVwIGluIGdoIGFjdGlvbnMgYnkgW0AmIzgyMDM7Z2F0Nzg2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZ2F0Nzg2KSBpbiBbIyYjODIwMzs1OTU1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk1NSkKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1OTYwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTk2MCkKLSBBZGQgQ0xJIHN1cHBvcnQgZm9yIE9DSVJlcG9zaXRvcnkuc3BlYy5sYXllclNlbGVjdG9yIGluIGZsdXggY3JlYXRlIHNvdXJjZSBvY2kgYnkgW0AmIzgyMDM7ZG1lODZdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9kbWU4NikgaW4gWyMmIzgyMDM7NTg5Ml0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4OTIpCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU5NjNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTYzKQoKIyMjIyBOZXcgQ29udHJpYnV0b3JzCgotIFtAJiM4MjAzO2dhZ2FuaHI5NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2dhZ2FuaHI5NCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTc2M10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NjMpCi0gW0AmIzgyMDM7cm9oYW5zb29kMTBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9yb2hhbnNvb2QxMCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTcyNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3MjQpCi0gW0AmIzgyMDM7Z21hMWtdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9nbWExaykgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTc5OF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3OTgpCi0gW0AmIzgyMDM7cmFmYWVscGVyb2NvXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vcmFmYWVscGVyb2NvKSBtYWRlIHRoZWlyIGZpcnN0IGNvbnRyaWJ1dGlvbiBpbiBbIyYjODIwMzs1ODI4XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTgyOCkKLSBbQCYjODIwMztJYW0tS2FyYW4tU3VyZXNoXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vSWFtLUthcmFuLVN1cmVzaCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTgzM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4MzMpCi0gW0AmIzgyMDM7cnljbGldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9yeWNsaSkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTc5NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3OTQpCi0gW0AmIzgyMDM7anR5cl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2p0eXIpIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU4MzFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81ODMxKQotIFtAJiM4MjAzO3RtbW9yaW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90bW1vcmluKSBtYWRlIHRoZWlyIGZpcnN0IGNvbnRyaWJ1dGlvbiBpbiBbIyYjODIwMzs1ODgxXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTg4MSkKLSBbQCYjODIwMztpbW1hbnV3ZWxsXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vaW1tYW51d2VsbCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTkwOV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MDkpCi0gW0AmIzgyMDM7dmVjaWxdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS92ZWNpbCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTkxMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MTIpCi0gW0AmIzgyMDM7dGFyYXNwb3NdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS90YXJhc3BvcykgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTg2OF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4NjgpCi0gW0AmIzgyMDM7cGlueTk0MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3Bpbnk5NDApIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU5MThdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTE4KQotIFtAJiM4MjAzOzN1emJjcWplXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vM3V6YmNxamUpIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU5NTJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81OTUyKQotIFtAJiM4MjAzO2dhdDc4Nl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2dhdDc4NikgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTk1NV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5NTUpCi0gW0AmIzgyMDM7ZG1lODZdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9kbWU4NikgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTg5Ml0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4OTIpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC4wLi4udjIuOS4wPgoKIyMjIFtgdjIuOC44YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuOC44KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC43Li4udjIuOC44KQoKIyMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjggaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgaW5jbHVkZXMgQ1ZFIGZpeGVzIHZpYSBnby1naXQgdjUuMTkuMSAoc291cmNlLWNvbnRyb2xsZXIsIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlciksIHJlbGlhYmlsaXR5IGZpeGVzIGluIGhlbG0tY29udHJvbGxlciBhbmQgc291cmNlLWNvbnRyb2xsZXIsIHRoZSBtb3ZlIG9mIEhlbG0gYmFjayB0byB1cHN0cmVhbSB2NC4yLjAsIHN1cHBvcnQgZm9yIEdDUCBzb3ZlcmVpZ24gY2xvdWQgYXJ0aWZhY3QgcmVnaXN0cmllcywgYW5kIGRlcGVuZGVuY3kgdXBkYXRlcy4gVXNlcnMgYXJlIGVuY291cmFnZWQgdG8gdXBncmFkZSBmb3IgdGhlIGJlc3QgZXhwZXJpZW5jZS4KCuKEue+4jyBQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBGbHV4IHYyLjYgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLgoKRml4ZXM6CgotIEFkZCBhIGNvbmZpZ3VyYWJsZSBIVFRQIHRpbWVvdXQgZm9yIGFydGlmYWN0IGZldGNoaW5nLCBwcmV2ZW50aW5nIGZldGNoZXMgdGhhdCBjb3VsZCBibG9jayBpbmRlZmluaXRlbHkgYW5kIHN0YWxsIHJlY29uY2lsaWF0aW9ucyAoaGVsbS1jb250cm9sbGVyKQotIEZpeCB1bmJvdW5kZWQgbWVtb3J5IGdyb3d0aCBjYXVzZWQgYnkgYSBLdWJlcm5ldGVzIGNsaWVudCB0cmFuc3BvcnQgcmV0cnkgd3JhcHBlciBhY2N1bXVsYXRpbmcgb24gZXZlcnkgcmVjb25jaWxlIChoZWxtLWNvbnRyb2xsZXIpCi0gU3RvcCBmb3JjZS1hcHBseWluZyBub24tQ1JEIG9iamVjdHMgcGxhY2VkIHVuZGVyIGEgY2hhcnQncyBgY3Jkcy9gIGRpcmVjdG9yeSAoaGVsbS1jb250cm9sbGVyKQotIEZpeCB0aGUgSGVsbSB0ZXN0IGFjdGlvbiBmYWlsaW5nIHRvIGZpbmQgcmVsZWFzZXMgd2l0aCBuYW1lcyBsb25nZXIgdGhhbiA1MyBjaGFyYWN0ZXJzIChoZWxtLWNvbnRyb2xsZXIpCi0gSW1wcm92ZSBwYXRoIGhhbmRsaW5nIGluIHRoZSBzb3VyY2UgcmVjb25jaWxlcnMgKHNvdXJjZS1jb250cm9sbGVyKQotIFN1cHBvcnQgSGVsbSBzZW12ZXIgYnVpbGQtbWV0YWRhdGEgZW5jb2RpbmcgaW4gT0NJUmVwb3NpdG9yeSB0YWdzIChzb3VyY2UtY29udHJvbGxlcikKCkltcHJvdmVtZW50czoKCi0gVXBkYXRlIGdvLWdpdCB0byB2NS4xOS4xIHdoaWNoIGZpeGVzIFtDVkUtMjAyNi00NTU3MV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2Fkdmlzb3JpZXMvR0hTQS1jcmhqLTU5Z2gtOHg5NikgYW5kIFtDVkUtMjAyNi00NTU3MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2Fkdmlzb3JpZXMvR0hTQS1tN2NyLW0zcHYtaGdycCkgKHNvdXJjZS1jb250cm9sbGVyLCBpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIpCi0gTW92ZSBIZWxtIGJhY2sgdG8gdXBzdHJlYW0gdjQuMi4wIChzb3VyY2UtY29udHJvbGxlciwgaGVsbS1jb250cm9sbGVyKQotIEFkZCBzdXBwb3J0IGZvciBHQ1Agc292ZXJlaWduIGNsb3VkIGFydGlmYWN0IHJlZ2lzdHJpZXMgKHNvdXJjZS1jb250cm9sbGVyLCBpbWFnZS1yZWZsZWN0b3ItY29udHJvbGxlcikKLSBVcGdyYWRlIEt1YmVybmV0ZXMgdG8gMS4zNi4xIChzb3VyY2UtY29udHJvbGxlciwgaGVsbS1jb250cm9sbGVyKQotIFVwZGF0ZSBmbHV4Y2QvcGtnIGRlcGVuZGVuY2llcwoKIyMjIyMgQ29tcG9uZW50cyBjaGFuZ2Vsb2cKCi0gaGVsbS1jb250cm9sbGVyIFt2MS41LjVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaGVsbS1jb250cm9sbGVyL2Jsb2IvdjEuNS41L0NIQU5HRUxPRy5tZCkKLSBpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIgW3YxLjEuNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9pbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIvYmxvYi92MS4xLjQvQ0hBTkdFTE9HLm1kKQotIGltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyIFt2MS4xLjJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIvYmxvYi92MS4xLjIvQ0hBTkdFTE9HLm1kKQotIHNvdXJjZS1jb250cm9sbGVyIFt2MS44LjVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Qvc291cmNlLWNvbnRyb2xsZXIvYmxvYi92MS44LjUvQ0hBTkdFTE9HLm1kKQoKIyMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTkwNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU5MDQpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC43Li4udjIuOC44PgoKIyMjIFtgdjIuOC43YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuOC43KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC42Li4udjIuOC43KQoKIyMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjcgaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgaW5jbHVkZXMgYSBidWcgZml4IGluIGt1c3RvbWl6ZS1jb250cm9sbGVyLCBhIENWRSBmaXggaW4gc291cmNlLWNvbnRyb2xsZXIgYW5kIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlciB2aWEgZ28tZ2l0IHY1LjE5LjAsIGFuZCBkZXBlbmRlbmN5IHVwZGF0ZXMuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgrihLnvuI8gUGxlYXNlIGZvbGxvdyB0aGUgW1VwZ3JhZGUgUHJvY2VkdXJlIGZvciBGbHV4IHYyLjcrXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2Rpc2N1c3Npb25zLzU1NzIpIGZvciBhIHNtb290aCB1cGdyYWRlIGZyb20gRmx1eCB2Mi42IHRvIHRoZSBsYXRlc3QgdmVyc2lvbi4KCkZpeGVzOgoKLSBGaXggbWFuYWdlbWVudCBvZiBvYmplY3RzIGFubm90YXRlZCB3aXRoIGBrdXN0b21pemUudG9vbGtpdC5mbHV4Y2QuaW8vc3NhOiBJZk5vdFByZXNlbnRgIHdoZXJlIG5vbi1uYW1lc3BhY2VkIHJlc291cmNlcyB3ZXJlIGJlaW5nIGRlbGV0ZWQgYW5kIHJlY3JlYXRlZCBvbiBlYWNoIHJlY29uY2lsaWF0aW9uIChrdXN0b21pemUtY29udHJvbGxlcikKCkltcHJvdmVtZW50czoKCi0gVXBkYXRlIGdvLWdpdCB0byB2NS4xOS4wIHdoaWNoIGZpeGVzIFtDVkUtMjAyNi00NTAyMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2Fkdmlzb3JpZXMvR0hTQS0zODlyLWd2N3AtcjNycCkgKHNvdXJjZS1jb250cm9sbGVyLCBpbWFnZS1hdXRvbWF0aW9uLWNvbnRyb2xsZXIpCi0gVXBkYXRlIGZsdXhjZC9wa2cgZGVwZW5kZW5jaWVzIChzb3VyY2UtY29udHJvbGxlciwga3VzdG9taXplLWNvbnRyb2xsZXIsIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlcikKCiMjIyMjIENvbXBvbmVudHMgY2hhbmdlbG9nCgotIGhlbG0tY29udHJvbGxlciBbdjEuNS40XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2hlbG0tY29udHJvbGxlci9ibG9iL3YxLjUuNC9DSEFOR0VMT0cubWQpCi0gaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyIFt2MS4xLjNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuMS4zL0NIQU5HRUxPRy5tZCkKLSBrdXN0b21pemUtY29udHJvbGxlciBbdjEuOC41XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2t1c3RvbWl6ZS1jb250cm9sbGVyL2Jsb2IvdjEuOC41L0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOC40XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOC40L0NIQU5HRUxPRy5tZCkKLSBzb3VyY2UtY29udHJvbGxlciBbdjEuOC40XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS1jb250cm9sbGVyL2Jsb2IvdjEuOC40L0NIQU5HRUxPRy5tZCkKCiMjIyMjIENMSSBjaGFuZ2Vsb2cKCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU4OTFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81ODkxKQoKKipGdWxsIENoYW5nZWxvZyoqOiA8aHR0cHM6Ly9naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguNi4uLnYyLjguNz4KCiMjIyBbYHYyLjguNmBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcmVsZWFzZXMvdGFnL3YyLjguNikKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguNS4uLnYyLjguNikKCiMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjYgaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgaW5jbHVkZXMgYnVnIGZpeGVzIGFuZCBpbXByb3ZlbWVudHMgYWNyb3NzIGhlbG0tY29udHJvbGxlciwgaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyLCBrdXN0b21pemUtY29udHJvbGxlciwgbm90aWZpY2F0aW9uLWNvbnRyb2xsZXIsIGFuZCBzb3VyY2UtY29udHJvbGxlci4gVXNlcnMgYXJlIGVuY291cmFnZWQgdG8gdXBncmFkZSBmb3IgdGhlIGJlc3QgZXhwZXJpZW5jZS4KCuKEue+4jyBQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBGbHV4IHYyLjYgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLgoKRml4ZXM6CgotIEZpeCBhIHBvc3QtcmVuZGVyZXIgY29uZmxpY3QgYmV0d2VlbiBvdmVybGFwcGluZyBob29rcyBhbmQgdGVtcGxhdGVzIChoZWxtLWNvbnRyb2xsZXIpCi0gSWdub3JlIGZvcmNlIHJlcGxhY2Ugd2hlbiBzZXJ2ZXItc2lkZSBhcHBseSBpcyBlbmFibGVkIChoZWxtLWNvbnRyb2xsZXIpCi0gRml4IGEgcmVncmVzc2lvbiB3aGVyZSBnZW5lcmljIHByb3ZpZGVycyB3b3VsZCBub3QgZm9yd2FyZCBjb21taXQgc3RhdHVzIGV2ZW50cyAobm90aWZpY2F0aW9uLWNvbnRyb2xsZXIpCi0gUmVxdWlyZSB0aGUgYGF1ZGllbmNlYCBmaWVsZCBvbiB0aGUgR0NSIFJlY2VpdmVyIHNlY3JldCBmb3IgdGlnaHRlciB2ZXJpZmljYXRpb24g4oCUIHdpbGwgYmVjb21lIG1hbmRhdG9yeSBpbiBGbHV4IHYyLjkgKG5vdGlmaWNhdGlvbi1jb250cm9sbGVyKQoKSW1wcm92ZW1lbnRzOgoKLSBJbnRyb2R1Y2UgdGhlIGBNaWdyYXRlQVBJVmVyc2lvbmAgZmVhdHVyZSBnYXRlIGZvciBtaWdyYXRpbmcgdGhlIEFQSSB2ZXJzaW9uIG9mIHJlc291cmNlcyBpbiBtYW5hZ2VkIGZpZWxkIGVudHJpZXMgKGt1c3RvbWl6ZS1jb250cm9sbGVyKQotIFVwZGF0ZSBnby1naXQgdG8gdjUuMTguMCBicmluZ2luZyBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgZm9yIEdpdCBvcGVyYXRpb25zIChzb3VyY2UtY29udHJvbGxlciwgaW1hZ2UtYXV0b21hdGlvbi1jb250cm9sbGVyKQoKIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBoZWxtLWNvbnRyb2xsZXIgW3YxLjUuNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9oZWxtLWNvbnRyb2xsZXIvYmxvYi92MS41LjQvQ0hBTkdFTE9HLm1kKQotIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlciBbdjEuMS4yXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlci9ibG9iL3YxLjEuMi9DSEFOR0VMT0cubWQpCi0ga3VzdG9taXplLWNvbnRyb2xsZXIgW3YxLjguNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9rdXN0b21pemUtY29udHJvbGxlci9ibG9iL3YxLjguNC9DSEFOR0VMT0cubWQpCi0gbm90aWZpY2F0aW9uLWNvbnRyb2xsZXIgW3YxLjguNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9ub3RpZmljYXRpb24tY29udHJvbGxlci9ibG9iL3YxLjguNC9DSEFOR0VMT0cubWQpCi0gc291cmNlLWNvbnRyb2xsZXIgW3YxLjguM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9zb3VyY2UtY29udHJvbGxlci9ibG9iL3YxLjguMy9DSEFOR0VMT0cubWQpCgojIyMjIENMSSBjaGFuZ2Vsb2cKCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU4NTddKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81ODU3KQoKKipGdWxsIENoYW5nZWxvZyoqOiA8aHR0cHM6Ly9naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguNS4uLnYyLjguNj4KCiMjIyBbYHYyLjguNWBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcmVsZWFzZXMvdGFnL3YyLjguNSkKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguNC4uLnYyLjguNSkKCiMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjUgaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgaW5jbHVkZXMgYnVnIGZpeGVzIGFuZCBpbXByb3ZlbWVudHMgYWNyb3NzIGt1c3RvbWl6ZS1jb250cm9sbGVyLCBzb3VyY2UtY29udHJvbGxlciwgYW5kIG5vdGlmaWNhdGlvbi1jb250cm9sbGVyLiBVc2VycyBhcmUgZW5jb3VyYWdlZCB0byB1cGdyYWRlIGZvciB0aGUgYmVzdCBleHBlcmllbmNlLgoK4oS577iPIFBsZWFzZSBmb2xsb3cgdGhlIFtVcGdyYWRlIFByb2NlZHVyZSBmb3IgRmx1eCB2Mi43K10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9kaXNjdXNzaW9ucy81NTcyKSBmb3IgYSBzbW9vdGggdXBncmFkZSBmcm9tIEZsdXggdjIuNiB0byB0aGUgbGF0ZXN0IHZlcnNpb24uCgpGaXhlczoKCi0gRml4IGEgcmFjZSBjb25kaXRpb24gd2hlcmUgYSBjYW5jZWxsZWQgcmVjb25jaWxpYXRpb24gY291bGQgbGVhdmUgc3RhbGUgZGF0YSBpbiB0aGUgY2FjaGUsIGNhdXNpbmcgS3VzdG9taXphdGlvbnMgdG8gZ2V0IHN0dWNrIChrdXN0b21pemUtY29udHJvbGxlcikKLSBGaXggQXp1cmUgQmxvYiBwcmVmaXggb3B0aW9uIG5vdCBiZWluZyBwYXNzZWQgdG8gdGhlIHN0b3JhZ2UgY2xpZW50IChzb3VyY2UtY29udHJvbGxlcikKCkltcHJvdmVtZW50czoKCi0gSW1wcm92ZSBlcnJvciBtZXNzYWdlIGZvciBlbmNyeXB0ZWQgU1NIIGtleXMgd2l0aG91dCBwYXNzd29yZCAoc291cmNlLWNvbnRyb2xsZXIpCi0gQWRkIG9wdGlvbmFsIGBlbWFpbGAgYW5kIGBhdWRpZW5jZWAgZmllbGRzIHRvIHRoZSBHQ1IgUmVjZWl2ZXIgZm9yIHRpZ2h0ZXIgdmVyaWZpY2F0aW9uIChub3RpZmljYXRpb24tY29udHJvbGxlcikKLSBBZGQgcHJvdmlkZXIgbWFuaWZlc3QgZXhhbXBsZSBmb3IgQXp1cmUgRXZlbnQgSHViIG1hbmFnZWQgaWRlbnRpdHkgYXV0aGVudGljYXRpb24gKG5vdGlmaWNhdGlvbi1jb250cm9sbGVyKQoKIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBrdXN0b21pemUtY29udHJvbGxlciBbdjEuOC4zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2t1c3RvbWl6ZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4zL0NIQU5HRUxPRy5tZCkKLSBzb3VyY2UtY29udHJvbGxlciBbdjEuOC4yXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4yL0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOC4zXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOC4zL0NIQU5HRUxPRy5tZCkKCiMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTgyMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU4MjIpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC40Li4udjIuOC41PgoKIyMjIFtgdjIuOC40YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuOC40KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC4zLi4udjIuOC40KQoKIyMjIyBIaWdobGlnaHRzCgpGbHV4IHYyLjguNCBpcyBhIHBhdGNoIHJlbGVhc2UgdGhhdCBpbmNsdWRlcyBmaXhlcyBmb3IgdGhlIEZsdXggQ0xJLiBVc2VycyBhcmUgZW5jb3VyYWdlZCB0byB1cGdyYWRlIGZvciB0aGUgYmVzdCBleHBlcmllbmNlLgoK4oS577iPIFBsZWFzZSBmb2xsb3cgdGhlIFtVcGdyYWRlIFByb2NlZHVyZSBmb3IgRmx1eCB2Mi43K10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9kaXNjdXNzaW9ucy81NTcyKSBmb3IgYSBzbW9vdGggdXBncmFkZSBmcm9tIEZsdXggdjIuNiB0byB0aGUgbGF0ZXN0IHZlcnNpb24uCgpGaXhlczoKCi0gRml4IGBmbHV4IGJ1aWxkIGtzYCBhbmQgYGZsdXggZGlmZiBrc2Agb24gV2luZG93cwotIEZpeCBgLS1zb3VyY2VgIGZsYWcgdmFsaWRhdGlvbiBpbiBgY3JlYXRlIGt1c3RvbWl6YXRpb25gIGNvbW1hbmQKCiMjIyMgQ0xJIGNoYW5nZWxvZwoKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1Nzk2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc5NikKLSBcW3JlbGVhc2UvdjIuOC54XSBmaXg6IHZhbGlkYXRlIC0tc291cmNlIGZsYWcgaW4gY3JlYXRlIGt1c3RvbWl6YXRpb24gY29tbWFuZCBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU3OTldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81Nzk5KQoKKipGdWxsIENoYW5nZWxvZyoqOiA8aHR0cHM6Ly9naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguMy4uLnYyLjguND4KCiMjIyBbYHYyLjguM2BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcmVsZWFzZXMvdGFnL3YyLjguMykKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9jb21wYXJlL3YyLjguMi4uLnYyLjguMykKCiMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjMgaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgZml4ZXMgYSByZWdyZXNzaW9uIGluIGhlbG0tY29udHJvbGxlci4gVXNlcnMgYXJlIGVuY291cmFnZWQgdG8gdXBncmFkZSBmb3IgdGhlIGJlc3QgZXhwZXJpZW5jZS4KCuKEue+4jyBQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBGbHV4IHYyLjYgdG8gdGhlIGxhdGVzdCB2ZXJzaW9uLgoKRml4ZXM6CgotIEZpeCB0ZW1wbGF0aW5nIGVycm9ycyBmb3IgY2hhcnRzIHRoYXQgaW5jbHVkZSBgLS0tYCBpbiB0aGUgY29udGVudCwgZS5nLiBZQU1MIHNlcGFyYXRvcnMsIGVtYmVkZGVkIHNjcmlwdHMsIENBcyBpbnNpZGUgQ29uZmlnTWFwcyAoaGVsbS1jb250cm9sbGVyKQoKIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBoZWxtLWNvbnRyb2xsZXIgW3YxLjUuM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9oZWxtLWNvbnRyb2xsZXIvYmxvYi92MS41LjMvQ0hBTkdFTE9HLm1kKQoKIyMjIyBDTEkgY2hhbmdlbG9nCgotIFxbcmVsZWFzZS92Mi44LnhdIEFkZCB0YXJnZXQgYnJhbmNoIG5hbWUgdG8gdXBkYXRlIGJyYW5jaCBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU3NzRdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81Nzc0KQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1Nzc5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc3OSkKCioqRnVsbCBDaGFuZ2Vsb2cqKjogPGh0dHBzOi8vZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi44LjIuLi52Mi44LjM+CgojIyMgW2B2Mi44LjJgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3JlbGVhc2VzL3RhZy92Mi44LjIpCgpbQ29tcGFyZSBTb3VyY2VdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi44LjEuLi52Mi44LjIpCgojIyMjIyBIaWdobGlnaHRzCgpGbHV4IHYyLjguMiBpcyBhIHBhdGNoIHJlbGVhc2UgdGhhdCBjb21lcyB3aXRoIHZhcmlvdXMgZml4ZXMuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgrihLnvuI8gUGxlYXNlIGZvbGxvdyB0aGUgW1VwZ3JhZGUgUHJvY2VkdXJlIGZvciBGbHV4IHYyLjcrXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2Rpc2N1c3Npb25zLzU1NzIpIGZvciBhIHNtb290aCB1cGdyYWRlIGZyb20gRmx1eCB2Mi42IHRvIHRoZSBsYXRlc3QgdmVyc2lvbi4KCkZpeGVzOgoKLSBGaXggZW5xdWV1aW5nIG5ldyByZWNvbmNpbGlhdGlvbiByZXF1ZXN0cyBmb3IgZXZlbnRzIG9uIHNvdXJjZSBGbHV4IG9iamVjdHMgd2hlbiB0aGV5IGFyZSBhbHJlYWR5IHJlY29uY2lsaW5nIHRoZSByZXZpc2lvbiBwcmVzZW50IGluIHRoZSB3YXRjaCBldmVudCAoa3VzdG9taXplLWNvbnRyb2xsZXIsIGhlbG0tY29udHJvbGxlcikKLSBGaXggdGhlIEdvIHRlbXBsYXRlcyBidWcgb2YgWUFNTCBzZXBhcmF0b3IgYC0tLWAgZ2V0dGluZyBjb25jYXRlbmF0ZWQgdG8gYGFwaVZlcnNpb246YCBieSB1cGRhdGluZyB0byBIZWxtIDQuMS4zIChoZWxtLWNvbnRyb2xsZXIpCi0gRml4IGNhbmNlbGVkIEhlbG1SZWxlYXNlcyBnZXR0aW5nIHN0dWNrIHdoZW4gdGhleSBkb24ndCBoYXZlIGEgcmV0cnkgc3RyYXRlZ3kgY29uZmlndXJlZCBieSBpbnRyb2R1Y2luZyBhIG5ldyBmZWF0dXJlIGdhdGUgYERlZmF1bHRUb1JldHJ5T25GYWlsdXJlYCB0aGF0IGltcHJvdmVzIHRoZSBleHBlcmllbmNlIHdoZW4gdGhlIGBDYW5jZWxIZWFsdGhDaGVja09uTmV3UmV2aXNpb25gIGlzIGVuYWJsZWQgKGhlbG0tY29udHJvbGxlcikKLSBGaXggdGhlIGF1dGggc2NvcGUgZm9yIEF6dXJlIENvbnRhaW5lciBSZWdpc3RyeSB0byB1c2UgdGhlIEFDUi1zcGVjaWZpYyBzY29wZSAoc291cmNlLWNvbnRyb2xsZXIsIGltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyKQotIEZpeCBwb3RlbnRpYWwgRGVuaWFsIG9mIFNlcnZpY2UgKERvUykgZHVyaW5nIFRMUyBoYW5kc2hha2VzIChDVkUtMjAyNi0yNzEzOCkgYnkgYnVpbGRpbmcgYWxsIGNvbnRyb2xsZXJzIHdpdGggR28gMS4yNi4xCgojIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBzb3VyY2UtY29udHJvbGxlciBbdjEuOC4xXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4xL0NIQU5HRUxPRy5tZCkKLSBrdXN0b21pemUtY29udHJvbGxlciBbdjEuOC4yXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2t1c3RvbWl6ZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4yL0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOC4yXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOC4yL0NIQU5HRUxPRy5tZCkKLSBoZWxtLWNvbnRyb2xsZXIgW3YxLjUuMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9oZWxtLWNvbnRyb2xsZXIvYmxvYi92MS41LjIvQ0hBTkdFTE9HLm1kKQotIGltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyIFt2MS4xLjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIvYmxvYi92MS4xLjEvQ0hBTkdFTE9HLm1kKQotIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlciBbdjEuMS4xXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlci9ibG9iL3YxLjEuMS9DSEFOR0VMT0cubWQpCi0gc291cmNlLXdhdGNoZXIgW3YyLjEuMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9zb3VyY2Utd2F0Y2hlci9ibG9iL3YyLjEuMS9DSEFOR0VMT0cubWQpCgojIyMjIyBDTEkgY2hhbmdlbG9nCgotIFxbcmVsZWFzZS92Mi44LnhdIGJ1aWxkKGRlcHMpOiBidW1wIHRoZSBjaSBncm91cCBhY3Jvc3MgMSBkaXJlY3Rvcnkgd2l0aCAxMSB1cGRhdGVzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTc2NV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NjUpCi0gVXBkYXRlIGZsdXhjZC9wa2cgZGVwZW5kZW5jaWVzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTc2N10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NjcpCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzcwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc3MCkKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzcxXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTc3MSkKCioqRnVsbCBDaGFuZ2Vsb2cqKjogPGh0dHBzOi8vZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi44LjEuLi52Mi44LjI+CgojIyMgW2B2Mi44LjFgXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3JlbGVhc2VzL3RhZy92Mi44LjEpCgpbQ29tcGFyZSBTb3VyY2VdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvY29tcGFyZS92Mi44LjAuLi52Mi44LjEpCgojIyMjIyBIaWdobGlnaHRzCgpGbHV4IHYyLjguMSBpcyBhIHBhdGNoIHJlbGVhc2UgdGhhdCBjb21lcyB3aXRoIHZhcmlvdXMgZml4ZXMuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgrihLnvuI8gUGxlYXNlIGZvbGxvdyB0aGUgW1VwZ3JhZGUgUHJvY2VkdXJlIGZvciBGbHV4IHYyLjcrXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2Rpc2N1c3Npb25zLzU1NzIpIGZvciBhIHNtb290aCB1cGdyYWRlIGZyb20gRmx1eCB2Mi42IHRvIHRoZSBsYXRlc3QgdmVyc2lvbi4KCkZpeGVzOgoKLSBGaXggR2l0IGNvbW1pdCBzdGF0dXMgZXZlbnRzIGJlaW5nIGRyb3BwZWQgZm9yIEt1c3RvbWl6YXRpb25zIChub3RpZmljYXRpb24tY29udHJvbGxlcikKLSBGaXggaGVhbHRoIGNoZWNrIGZvciBTdGF0ZWZ1bFNldHMgd2hlbiB0aGUgUG9kcyBhcmUgUGVuZGluZy9VbnNjaGVkdWxhYmxlIGR1cmluZyByb2xsb3V0IChoZWxtLWNvbnRyb2xsZXIsIGt1c3RvbWl6ZS1jb250cm9sbGVyKQoKIyMjIyMgQ29tcG9uZW50cyBjaGFuZ2Vsb2cKCi0ga3VzdG9taXplLWNvbnRyb2xsZXIgW3YxLjguMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9rdXN0b21pemUtY29udHJvbGxlci9ibG9iL3YxLjguMS9DSEFOR0VMT0cubWQpCi0gbm90aWZpY2F0aW9uLWNvbnRyb2xsZXIgW3YxLjguMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9ub3RpZmljYXRpb24tY29udHJvbGxlci9ibG9iL3YxLjguMS9DSEFOR0VMT0cubWQpCi0gaGVsbS1jb250cm9sbGVyIFt2MS41LjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaGVsbS1jb250cm9sbGVyL2Jsb2IvdjEuNS4xL0NIQU5HRUxPRy5tZCkKCiMjIyMjIENMSSBjaGFuZ2Vsb2cKCi0gXFtyZWxlYXNlL3YyLjgueF0gUmVtb3ZlIG5vIGxvbmdlciBuZWVkZWQgd29ya2Fyb3VuZCBmb3IgRmx1eCAyLjggYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzM1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTczNSkKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzM5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTczOSkKLSBcW3JlbGVhc2UvdjIuOC54XSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTc0MV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3NDEpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuOC4wLi4udjIuOC4xPgoKIyMjIFtgdjIuOC4wYF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuOC4wKQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuNy41Li4udjIuOC4wKQoKIyMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi44LjAgaXMgYSBmZWF0dXJlIHJlbGVhc2UuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgpGb3IgYSBjb21wcmVzc2l2ZSBvdmVydmlldyBvZiBuZXcgZmVhdHVyZXMgYW5kIEFQSSBjaGFuZ2VzIGluY2x1ZGVkIGluIHRoaXMgcmVsZWFzZSwgcGxlYXNlIHJlZmVyIHRvIHRoZSBbQW5ub3VuY2luZyBGbHV4IDIuOCBHQSBibG9nIHBvc3RdKGh0dHBzOi8vZmx1eGNkLmlvL2Jsb2cvMjAyNi8wMi9mbHV4LXYyLjguMC8pLgoKT3ZlcnZpZXcgb2YgdGhlIG5ldyBmZWF0dXJlczoKCi0gSGVsbSB2NCBzdXBwb3J0LCBpbmNsdWRpbmcgc2VydmVyLXNpZGUgYXBwbHkgYW5kIGtzdGF0dXMtYmFzZWQgaGVhbHRoIGNoZWNraW5nIChgSGVsbVJlbGVhc2VgKQotIFJlYWRpbmVzcyBldmFsdWF0aW9uIG9mIEhlbG0tbWFuYWdlZCBvYmplY3RzIHdpdGggQ0VMIGV4cHJlc3Npb25zIChgSGVsbVJlbGVhc2VgKQotIEltcHJvdmVkIG9ic2VydmFiaWxpdHkgb2YgSGVsbSByZWxlYXNlcyB3aXRoIGludmVudG9yeSB0cmFja2luZyBpbiBgLnN0YXR1cy5pbnZlbnRvcnlgIChgSGVsbVJlbGVhc2VgKQotIFJlZHVjZWQgdGhlIG1lYW4gdGltZSB0byByZWNvdmVyeSBvZiBGbHV4LW1hbmFnZWQgYXBwbGljYXRpb25zIHZpYSBgQ2FuY2VsSGVhbHRoQ2hlY2tPbk5ld1JldmlzaW9uYCBmZWF0dXJlIGdhdGUgKGBLdXN0b21pemF0aW9uYCwgYEhlbG1SZWxlYXNlYCkKLSBTdXBwb3J0IGZvciBjb21tZW50aW5nIG9uIFB1bGwgUmVxdWVzdHMgZGlyZWN0bHkgZnJvbSBGbHV4IG5vdGlmaWNhdGlvbnMgKGBQcm92aWRlcmApCi0gQ3VzdG9tIFNTQSBhcHBseSBzdGFnZXMgZm9yIG9yZGVyaW5nIHJlc291cmNlIGFwcGxpY2F0aW9uIGluIGt1c3RvbWl6ZS1jb250cm9sbGVyIChgS3VzdG9taXphdGlvbmApCi0gQXV0b21hdGljIEdpdEh1YiBBcHAgaW5zdGFsbGF0aW9uIElEIGxvb2t1cCBmcm9tIHRoZSByZXBvc2l0b3J5IG93bmVyIChgR2l0UmVwb3NpdG9yeWAsIGBJbWFnZVVwZGF0ZUF1dG9tYXRpb25gLCBgUHJvdmlkZXJgKQotIFN1cHBvcnQgZm9yIENvc2lnbiB2MyBmb3IgdmVyaWZ5aW5nIE9DSSBhcnRpZmFjdHMgYW5kIGNvbnRhaW5lciBpbWFnZXMgKGBPQ0lSZXBvc2l0b3J5YCkKLSBBcnRpZmFjdEdlbmVyYXRvciBzdXBwb3J0IGZvciBleHRyYWN0aW5nIGFuZCBtb2RpZnlpbmcgSGVsbSBjaGFydHMgKGBBcnRpZmFjdEdlbmVyYXRvcmApCi0gQnlwYXNzIGNhY2hlIHdoZW4gZmV0Y2hpbmcgc291cmNlIG9iamVjdHMgdmlhIGBEaXJlY3RTb3VyY2VGZXRjaGAgZmVhdHVyZSBnYXRlIChgS3VzdG9taXphdGlvbmAsIGBIZWxtUmVsZWFzZWAsIGBBcnRpZmFjdEdlbmVyYXRvcmApCgrinaTvuI8gQmlnIHRoYW5rcyB0byBhbGwgdGhlIEZsdXggY29udHJpYnV0b3JzIHRoYXQgaGVscGVkIHVzIHdpdGggdGhpcyByZWxlYXNlIQoKIyMjIyMgS3ViZXJuZXRlcyBjb21wYXRpYmlsaXR5CgpUaGlzIHJlbGVhc2UgaXMgY29tcGF0aWJsZSB3aXRoIHRoZSBmb2xsb3dpbmcgS3ViZXJuZXRlcyB2ZXJzaW9uczoKCnwgS3ViZXJuZXRlcyB2ZXJzaW9uIHwgTWluaW11bSByZXF1aXJlZCB8CnwgLS0tLS0tLS0tLS0tLS0tLS0tIHwgLS0tLS0tLS0tLS0tLS0tLSB8CnwgYHYxLjMzYCAgICAgICAgICAgIHwgYD49IDEuMzIuMGAgICAgICB8CnwgYHYxLjM0YCAgICAgICAgICAgIHwgYD49IDEuMzQuMWAgICAgICB8CnwgYHYxLjM1YCAgICAgICAgICAgIHwgYD49IDEuMzUuMGAgICAgICB8Cgo+IFxbIU5PVEVdCj4gTm90ZSB0aGF0IHRoZSBGbHV4IHByb2plY3Qgb2ZmZXJzIHN1cHBvcnQgb25seSBmb3IgdGhlIGxhdGVzdCB0aHJlZSBtaW5vciB2ZXJzaW9ucyBvZiBLdWJlcm5ldGVzLgo+IEJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkZXIgdmVyc2lvbnMgb2YgS3ViZXJuZXRlcyBhbmQgT3BlblNoaWZ0IGlzIG9mZmVyZWQgYnkgdmVuZG9ycyBzdWNoIGFzCj4gW0NvbnRyb2xQbGFuZV0oaHR0cHM6Ly9jb250cm9sLXBsYW5lLmlvL2VudGVycHJpc2UtZm9yLWZsdXgtY2QvKSB0aGF0IHByb3ZpZGUgZW50ZXJwcmlzZSBzdXBwb3J0IGZvciBGbHV4LgoKIyMjIyMgT3BlblNoaWZ0IGNvbXBhdGliaWxpdHkKCkZsdXggY2FuIGJlIGluc3RhbGxlZCBvbiBSZWQgSGF0IE9wZW5TaGlmdCBjbHVzdGVyIGRpcmVjdGx5IGZyb20gT3BlcmF0b3JIdWIgdXNpbmcgW0ZsdXggT3BlcmF0b3JdKGh0dHBzOi8vb3BlcmF0b3JodWIuaW8vb3BlcmF0b3IvZmx1eC1vcGVyYXRvcikuIFRoZSBvcGVyYXRvciBhbGxvd3MgdGhlIGNvbmZpZ3VyYXRpb24gb2YgRmx1eCBtdWx0aS10ZW5hbmN5IGxvY2tkb3duLCBuZXR3b3JrIHBvbGljaWVzLCBwZXJzaXN0ZW50IHN0b3JhZ2UsIHNoYXJkaW5nLCB2ZXJ0aWNhbCBzY2FsaW5nIGFuZCB0aGUgc3luY2hyb25pemF0aW9uIG9mIHRoZSBjbHVzdGVyIHN0YXRlIGZyb20gR2l0IHJlcG9zaXRvcmllcywgT0NJIGFydGlmYWN0cywgYW5kIFMzLWNvbXBhdGlibGUgc3RvcmFnZS4KCiMjIyMjIFVwZ3JhZGUgcHJvY2VkdXJlCgo6d2FybmluZzogVGhlIEZsdXggQVBJcyBgdjFiZXRhMmAgYW5kIGB2MmJldGEyYCAoZGVwcmVjYXRlZCBpbiAyMDI0KSBoYXZlIHJlYWNoZWQgZW5kLW9mLWxpZmUgYW5kIGhhdmUgYmVlbiByZW1vdmVkIGZyb20gdGhlIENSRHMuCgpQbGVhc2UgZm9sbG93IHRoZSBbVXBncmFkZSBQcm9jZWR1cmUgZm9yIEZsdXggdjIuNytdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvZGlzY3Vzc2lvbnMvNTU3MikgZm9yIGEgc21vb3RoIHVwZ3JhZGUgZnJvbSBvbGRlciB2ZXJzaW9ucyBvZiBGbHV4IHRvIHYyLjguCgojIyMjIyBDb21wb25lbnRzIGNoYW5nZWxvZwoKLSBzb3VyY2UtY29udHJvbGxlciBbdjEuOC4wXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL3NvdXJjZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4wL0NIQU5HRUxPRy5tZCkKLSBrdXN0b21pemUtY29udHJvbGxlciBbdjEuOC4wXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2t1c3RvbWl6ZS1jb250cm9sbGVyL2Jsb2IvdjEuOC4wL0NIQU5HRUxPRy5tZCkKLSBub3RpZmljYXRpb24tY29udHJvbGxlciBbdjEuOC4wXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL25vdGlmaWNhdGlvbi1jb250cm9sbGVyL2Jsb2IvdjEuOC4wL0NIQU5HRUxPRy5tZCkKLSBoZWxtLWNvbnRyb2xsZXIgW3YxLjUuMF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9oZWxtLWNvbnRyb2xsZXIvYmxvYi92MS41LjAvQ0hBTkdFTE9HLm1kKQotIGltYWdlLXJlZmxlY3Rvci1jb250cm9sbGVyIFt2MS4xLjBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvaW1hZ2UtcmVmbGVjdG9yLWNvbnRyb2xsZXIvYmxvYi92MS4xLjAvQ0hBTkdFTE9HLm1kKQotIGltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlciBbdjEuMS4wXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ltYWdlLWF1dG9tYXRpb24tY29udHJvbGxlci9ibG9iL3YxLjEuMC9DSEFOR0VMT0cubWQpCi0gc291cmNlLXdhdGNoZXIgW3YyLjEuMF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9zb3VyY2Utd2F0Y2hlci9ibG9iL3YyLjEuMC9DSEFOR0VMT0cubWQpCgojIyMjIyBDTEkgY2hhbmdlbG9nCgotIGNpOiBTZXQgYEdJVEhVQl9UT0tFTmAgaW4gdGhlIGByZWxlYXNlLWZsdXgtbWFuaWZlc3RzYCB3b3JrZmxvdyBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU1NDddKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTQ3KQotIEFkZCBiYWNrcG9ydCBsYWJlbCBmb3IgRmx1eCAyLjcgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTU1MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NTApCi0gYnVpbGQoZGVwcyk6IGJ1bXAgdGhlIGNpIGdyb3VwIGFjcm9zcyAxIGRpcmVjdG9yeSB3aXRoIDMgdXBkYXRlcyBieSBbQCYjODIwMztkZXBlbmRhYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZGVwZW5kYWJvdClcW2JvdF0gaW4gWyMmIzgyMDM7NTU0OF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NDgpCi0gRml4IGBmbHV4IHB1c2ggYXJ0aWZhY3RgIG5vdCB3b3JraW5nIHdpdGggYC0tcHJvdmlkZXJgIGJ5IFtAJiM4MjAzO21hdGhldXNjc2NwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vbWF0aGV1c2NzY3ApIGluIFsjJiM4MjAzOzU1NTFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTUxKQotIEV4dGVuZCBgZmx1eCBtaWdyYXRlYCB0byB3b3JrIHdpdGggbG9jYWwgZmlsZXMgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTU1NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NTQpCi0gSW1wcm92ZSBgZmx1eCBtaWdyYXRlYCBmb3IgbGl2ZSBjbHVzdGVyIG1pZ3JhdGlvbnMgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1NTU4XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU1OCkKLSBGaXggYGZsdXggbWlncmF0ZSAtZmAgY29tbWFuZCB0byB3b3JrIHdpdGggY29tbWVudHMgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTU2MF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NjApCi0gQWRkIHNvdXJjZS13YXRjaGVyIHRvIGRvY3MgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1NTYyXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU2MikKLSBGaXggYGZsdXggbWlncmF0ZSAtZmAgbm90IGNvbnNpZGVyaW5nIGtpbmQgY29tbWVudHMgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTU2M10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NjMpCi0gcmVmYWN0b3I6IGNvbnZlcnQgYEt1c3RvbWl6YXRpb25gIHJlc291cmNlIGludG8gdW5zdHJ1Y3R1cmVkIG1hcCBvbmx5IG9uY2UgZHVyaW5nIHZhcmlhYmxlIHN1YnN0aXR1dGlvbiBieSBbQCYjODIwMztyYW1hc2FpMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3JhbWFzYWkxKSBpbiBbIyYjODIwMzs1NTY2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU2NikKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTU2OF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NjgpCi0gRGlzYWJsZSBBVVIgcHVibGlzaGluZyBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU1NzBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTcwKQotIEZpeCBtYW5pZmVzdCBnZW5lcmF0aW9uIGZvciBgLS1zdG9yYWdlLWFkdi1hZGRyYCBhbmQgYC0tZXZlbnRzLWFkZHJgIGZsYWdzIGJ5IFtAJiM4MjAzO3N0ZWZhbnByb2Rhbl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3N0ZWZhbnByb2RhbikgaW4gWyMmIzgyMDM7NTU3NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1NzQpCi0gVXBkYXRlIGRlcGVuZGVuY2llcyB0byBLdWJlcm5ldGVzIHYxLjM0LjEgYW5kIEdvIDEuMjUuMiBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU1NzZdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTc2KQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NTc4XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU3OCkKLSBSZXN0b3JlIEdpdEh1YiBQQVQgZm9yIGJhY2twb3J0cyBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NTgxXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU4MSkKLSBcW1JGQy0wMDEyXSBBZGQgY29tbWFuZCBgZmx1eCBnZXQgc291cmNlIGV4dGVybmFsYCBieSBbQCYjODIwMztkZ3VuenldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9kZ3VuenkpIGluIFsjJiM4MjAzOzU1NTVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTU1KQotIGZpeDogaGFuZGxlIGVycm9yIHdoZW4gd3JpdGluZyBwYXNzd29yZCBwcm9tcHQgdG8gc3Rkb3V0IGJ5IFtAJiM4MjAzO2Frc2hhdHNpbmhhMF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2Frc2hhdHNpbmhhMCkgaW4gWyMmIzgyMDM7NTU4OV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1ODkpCi0gUGluIGNvc2lnbiB0byB2Mi42LjEgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTU5NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1OTQpCi0gXFtSRkMtMDAxMl0gQWRkIGNvbW1hbmQgYGZsdXggZXhwb3J0IHNvdXJjZSBleHRlcm5hbGAgYnkgW0AmIzgyMDM7ZGd1bnp5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZGd1bnp5KSBpbiBbIyYjODIwMzs1NTgzXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU4MykKLSBGaXggYm9vdHN0cmFwIGUyZSB0ZXN0IGZvciBpbWFnZSBwb2xpY3kgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTYwNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MDQpCi0gVXBkYXRlIHRvb2xraXQgY29tcG9uZW50cyBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU2MDNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NjAzKQotIGZpeDogcmV0dXJuIGFjY2VwdGVkIHZhbHVlcyBmb3IgZmxhZ3Mgd2hlbiBjYWxsaW5nIFZhbHVlcy5UeXBlKCkgYnkgW0AmIzgyMDM7amF4ZWxzMTBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9qYXhlbHMxMCkgaW4gWyMmIzgyMDM7NTYwMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MDIpCi0gY2k6IEluY2x1ZGUgc291cmNlLXdhdGNoZXIgaW4gdGhlIGUyZSB0ZXN0IHN1aXRlIGJ5IFtAJiM4MjAzO3N0ZWZhbnByb2Rhbl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3N0ZWZhbnByb2RhbikgaW4gWyMmIzgyMDM7NTYxNF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MTQpCi0gQWRkIHNvdXJjZS5leHRlbnNpb25zLmZsdXhjZC5pbyBncm91cCB0byBhZ2dyZWdhdGVkIFJCQUMgcm9sZXMgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTYyN10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MjcpCi0gRml4IHBhbmljIG9uIHJlY29uY2lsZSB3aXRoIHNvdXJjZSBvZiBFeHRlcm5hbEFydGlmYWN0IGtpbmQgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTYzMF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MzApCi0gVXBncmFkZSBrOHMgdG8gMS4zNC4yLCBjLXIgdG8gMC4yMi40IGFuZCBoZWxtIHRvIDMuMTkuMiBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NjMzXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTYzMykKLSBkaWZmOiByZXBvcnQgaWYgb2JqZWN0IGlzIHNraXBwZWQgYnkgW0AmIzgyMDM7aG93bjNkXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vaG93bjNkKSBpbiBbIyYjODIwMzs1NjI1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTYyNSkKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTYzOV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MzkpCi0gQWxsb3cgb3B0aW9uIHRvIHNraXAgdGVuYW50IG5hbWVzcGFjZSBjcmVhdGlvbiBieSBbQCYjODIwMzthbnNodWlzaGVyZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2Fuc2h1aXNoZXJlKSBpbiBbIyYjODIwMzs1NTk3XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU5NykKLSBVcGRhdGUgdG9vbGtpdCBjb21wb25lbnRzIGJ5IFtAJiM4MjAzO2ZsdXhjZGJvdF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZGJvdCkgaW4gWyMmIzgyMDM7NTY0OF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2NDgpCi0gZml4OiBbIyYjODIwMzs1NjU0XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2lzc3Vlcy81NjU0KSBieSBjaGVja2luZyBpZiBib3RoIC0tY2hhcnQgYW5kIC0tY2hhcnQtcmVmIGFyZSBzZXQgYnkgW0AmIzgyMDM7amF4ZWxzMTBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9qYXhlbHMxMCkgaW4gWyMmIzgyMDM7NTY1Nl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2NTYpCi0gQWRkZWQgcmV0cnkgbG9naWMgd2l0aCBkZWxheXMgdG8gdGhlIEZsdXggQ0xJIGRvd25sb2FkIGJ5IFtAJiM4MjAzO2l2YW4tbXVudGVhbnVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9pdmFuLW11bnRlYW51KSBpbiBbIyYjODIwMzs1NjU5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTY1OSkKLSBSdW4gY29uZm9ybWFuY2UgdGVzdHMgZm9yIEt1YmVybmV0ZXMgMS4zNS4wICBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU2NjNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NjYzKQotIGZpeDogbm9ybWFsaXplIHBhdGggZm9yIFdpbmRvd3MgY29tcGF0aWJpbGl0eSBieSBbQCYjODIwMztzaWJhc2lzcGFkaGldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zaWJhc2lzcGFkaGkpIGluIFsjJiM4MjAzOzU2NzRdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81Njc0KQotIEludHJvZHVjZSBzdXBwb3J0IGZvciBsb29raW5nIHVwIEdIIGFwcCBpbnN0YWxsYXRpb24gSUQgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTY4Ml0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2ODIpCi0gVXBkYXRlIGRlcGVuZGVuY2llcyB0byBLdWJlcm5ldGVzIHYxLjM1LjAgYnkgW0AmIzgyMDM7c3RlZmFucHJvZGFuXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vc3RlZmFucHJvZGFuKSBpbiBbIyYjODIwMzs1Njg4XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTY4OCkKLSBGaXggcmVzdW1lIGNvbW1hbmQgbG9nZ2luZyBzdWNjZXNzIGFmdGVyIHJlY29uY2lsaWF0aW9uIGZhaWx1cmUgYnkgW0AmIzgyMDM7QW1hbi1Db29sXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vQW1hbi1Db29sKSBpbiBbIyYjODIwMzs1NjkwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTY5MCkKLSBBZGQgMi44IHRvIHN1cHBvcnRlZCB2ZXJzaW9ucyBmb3IgYGZsdXggbWlncmF0ZSAtZmAgYnkgW0AmIzgyMDM7bWF0aGV1c2NzY3BdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9tYXRoZXVzY3NjcCkgaW4gWyMmIzgyMDM7NTcxM10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3MTMpCi0gSW50cm9kdWNlIHdvcmtmbG93IGZvciBidW1waW5nIGZsdXhjZC9wa2cgZGVwcyBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzE3XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTcxNykKLSBVcGRhdGUgZmx1eGNkL3BrZyBkZXBlbmRlbmNpZXMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzE5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTcxOSkKLSBGaXggZXZlbnQgbGlzdGluZyBpZ25vcmluZyBwYWdpbmF0aW9uIHRva2VuIGJ5IFtAJiM4MjAzO21hdGhldXNjc2NwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vbWF0aGV1c2NzY3ApIGluIFsjJiM4MjAzOzU3MjFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzIxKQotIEJ1aWxkIHdpdGggR28gMS4yNiBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU3MjNdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzIzKQotIFVwZGF0ZSB0b29sa2l0IGNvbXBvbmVudHMgYnkgW0AmIzgyMDM7Zmx1eGNkYm90XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkYm90KSBpbiBbIyYjODIwMzs1NzIyXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTcyMikKLSBVcGRhdGUgaGVsbS1jb250cm9sbGVyIHRvIHYxLjUuMCBieSBbQCYjODIwMztmbHV4Y2Rib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2Rib3QpIGluIFsjJiM4MjAzOzU3MjVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzI1KQotIGJ1aWxkKGRlcHMpOiBidW1wIHRoZSBjaSBncm91cCBhY3Jvc3MgMSBkaXJlY3Rvcnkgd2l0aCAxMiB1cGRhdGVzIGJ5IFtAJiM4MjAzO2RlcGVuZGFib3RdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9kZXBlbmRhYm90KVxbYm90XSBpbiBbIyYjODIwMzs1NzIwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTcyMCkKLSBGaXggYm9vdHN0cmFwIGZhaWx1cmUgb24gV2luZG93cyBjcm9zcy1kcml2ZSBwYXRocyBieSBbQCYjODIwMzt2ZWVjZWV5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdmVlY2VleSkgaW4gWyMmIzgyMDM7NTcyNl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3MjYpCi0gRHVtcCBkZWJ1ZyBpbmZvIG9uIGUyZSB0ZXN0cyBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzI5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTcyOSkKLSBTZXQgS3ViZXJuZXRlcyAxLjMzIGFzIG1pbiBzdXBwb3J0ZWQgdmVyc2lvbiBieSBbQCYjODIwMzttYXRoZXVzY3NjcF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL21hdGhldXNjc2NwKSBpbiBbIyYjODIwMzs1NzMwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTczMCkKLSBVcGRhdGUgY29uZm9ybWFuY2UgdGVzdHMgdG8gbWluIEt1YmVybmV0ZXMgMS4zMyBieSBbQCYjODIwMztzdGVmYW5wcm9kYW5dKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9zdGVmYW5wcm9kYW4pIGluIFsjJiM4MjAzOzU3MzFdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NzMxKQoKIyMjIyMgTmV3IENvbnRyaWJ1dG9ycwoKLSBbQCYjODIwMztyYW1hc2FpMV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3JhbWFzYWkxKSBtYWRlIHRoZWlyIGZpcnN0IGNvbnRyaWJ1dGlvbiBpbiBbIyYjODIwMzs1NTY2XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTU2NikKLSBbQCYjODIwMztha3NoYXRzaW5oYTBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9ha3NoYXRzaW5oYTApIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU1ODldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NTg5KQotIFtAJiM4MjAzO2pheGVsczEwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vamF4ZWxzMTApIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU2MDJdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NjAyKQotIFtAJiM4MjAzO2hvd24zZF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2hvd24zZCkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTYyNV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2MjUpCi0gW0AmIzgyMDM7YW5zaHVpc2hlcmVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9hbnNodWlzaGVyZSkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTU5N10oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU1OTcpCi0gW0AmIzgyMDM7aXZhbi1tdW50ZWFudV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2l2YW4tbXVudGVhbnUpIG1hZGUgdGhlaXIgZmlyc3QgY29udHJpYnV0aW9uIGluIFsjJiM4MjAzOzU2NTldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9mbHV4Y2QvZmx1eDIvcHVsbC81NjU5KQotIFtAJiM4MjAzO3NpYmFzaXNwYWRoaV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL3NpYmFzaXNwYWRoaSkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTY3NF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU2NzQpCi0gW0AmIzgyMDM7QW1hbi1Db29sXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vQW1hbi1Db29sKSBtYWRlIHRoZWlyIGZpcnN0IGNvbnRyaWJ1dGlvbiBpbiBbIyYjODIwMzs1NjkwXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL3B1bGwvNTY5MCkKLSBbQCYjODIwMzt2ZWVjZWV5XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vdmVlY2VleSkgbWFkZSB0aGVpciBmaXJzdCBjb250cmlidXRpb24gaW4gWyMmIzgyMDM7NTcyNl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9wdWxsLzU3MjYpCgoqKkZ1bGwgQ2hhbmdlbG9nKio6IDxodHRwczovL2dpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuNy4wLi4udjIuOC4wPgoKIyMjIFtgdjIuNy41YF0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL2ZsdXhjZC9mbHV4Mi9yZWxlYXNlcy90YWcvdjIuNy41KQoKW0NvbXBhcmUgU291cmNlXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2NvbXBhcmUvdjIuNy40Li4udjIuNy41KQoKIyMjIyMgSGlnaGxpZ2h0cwoKRmx1eCB2Mi43LjUgaXMgYSBwYXRjaCByZWxlYXNlIHRoYXQgY29tZXMgd2l0aCBmaXhlcyB0byBoZWxtLWNvbnRyb2xsZXIuIFVzZXJzIGFyZSBlbmNvdXJhZ2VkIHRvIHVwZ3JhZGUgZm9yIHRoZSBiZXN0IGV4cGVyaWVuY2UuCgrihLnvuI8gUGxlYXNlIGZvbGxvdyB0aGUgW1VwZ3JhZGUgUHJvY2VkdXJlIGZvciBGbHV4IHYyLjcrXShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vZmx1eGNkL2ZsdXgyL2Rpc2N1c3Npb25zLzU1NzIpIGZvciBhIHNtb290aCB1cGdyYWRlIGZyb20gRmx1eCB2Mi42IHRvIHRoZSBsYXRlc3QgdmVyc2lvbi4KCkZpeGVzOgoKLSBGaXggSGVsbVJlbGVhc2UgaGlzdG9yeSB0cnVuY2F0aW9uIHdoZW4gdXNpbmcgdGhlIGBSZXRyeU9uRmFpbHVyZWAgc3RyCgo+IOKcgiAqKk5vdGUqKgo+IAo+IFBSIGJvZHkgd2FzIHRydW5jYXRlZCB0byBoZXJlLgoKCjwvZGV0YWlscz4KCi0tLQoKIyMjIENvbmZpZ3VyYXRpb24KCvCfk4UgKipTY2hlZHVsZSoqOiAoVVRDKQoKLSBCcmFuY2ggY3JlYXRpb24KICAtIEF0IGFueSB0aW1lIChubyBzY2hlZHVsZSBkZWZpbmVkKQotIEF1dG9tZXJnZQogIC0gQXQgYW55IHRpbWUgKG5vIHNjaGVkdWxlIGRlZmluZWQpCgrwn5qmICoqQXV0b21lcmdlKio6IERpc2FibGVkIGJ5IGNvbmZpZy4gUGxlYXNlIG1lcmdlIHRoaXMgbWFudWFsbHkgb25jZSB5b3UgYXJlIHNhdGlzZmllZC4KCuKZuyAqKlJlYmFzaW5nKio6IFdoZW5ldmVyIFBSIGJlY29tZXMgY29uZmxpY3RlZCwgb3IgeW91IHRpY2sgdGhlIHJlYmFzZS9yZXRyeSBjaGVja2JveC4KCvCflJUgKipJZ25vcmUqKjogQ2xvc2UgdGhpcyBQUiBhbmQgeW91IHdvbid0IGJlIHJlbWluZGVkIGFib3V0IHRoaXMgdXBkYXRlIGFnYWluLgoKLS0tCgogLSBbIF0gPCEtLSByZWJhc2UtY2hlY2sgLS0+SWYgeW91IHdhbnQgdG8gcmViYXNlL3JldHJ5IHRoaXMgUFIsIGNoZWNrIHRoaXMgYm94CgotLS0KClRoaXMgUFIgd2FzIGdlbmVyYXRlZCBieSBbTWVuZCBSZW5vdmF0ZV0oaHR0cHM6Ly9tZW5kLmlvL3Jlbm92YXRlLykuIFZpZXcgdGhlIFtyZXBvc2l0b3J5IGpvYiBsb2ddKGh0dHBzOi8vZGV2ZWxvcGVyLm1lbmQuaW8vZ2l0aHViL3ZleHhob3N0L2F0bW9zcGhlcmUuY29tbW9uKS4KPCEtLXJlbm92YXRlLWRlYnVnOmV5SmpjbVZoZEdWa1NXNVdaWElpT2lJME1TNHhNekV1T1NJc0luVndaR0YwWldSSmJsWmxjaUk2SWpRMExqUTVMakFpTENKMFlYSm5aWFJDY21GdVkyZ2lPaUp0WVdsdUlpd2liR0ZpWld4eklqcGJYWDA9LS0+Cg==
      patchset: 81d78f20d6b8b6498e6ff2a32986b184e88bb3ca
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          trusted/project_1/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: a05b0fb6ac6a681e93e59e18661eadc80ed996f8
          trusted/project_2/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: c286bf94224b5660b8e49e9a058289e61062a9a0
          untrusted/project_0/github.com/vexxhost/zuul-jobs:
            canonical_name: github.com/vexxhost/zuul-jobs
            checkout: main
            commit: c286bf94224b5660b8e49e9a058289e61062a9a0
          untrusted/project_1/github.com/vexxhost/zuul-config:
            canonical_name: github.com/vexxhost/zuul-config
            checkout: main
            commit: 298983cd1253e6833abdb49d87d912527e0e6597
          untrusted/project_2/opendev.org/zuul/zuul-jobs:
            canonical_name: opendev.org/zuul/zuul-jobs
            checkout: master
            commit: a05b0fb6ac6a681e93e59e18661eadc80ed996f8
          untrusted/project_3/github.com/vexxhost/atmosphere.common:
            canonical_name: github.com/vexxhost/atmosphere.common
            checkout: main
            commit: f24a6c545c72ad8eaeb8ffa2f818e3ebd8fde952
          untrusted/project_4/opendev.org/openstack/openstack-helm:
            canonical_name: opendev.org/openstack/openstack-helm
            checkout: master
            commit: 7c81bea7cb7b6792b26807ac217099e0f50d520b
        playbooks:
        - path: untrusted/project_0/github.com/vexxhost/zuul-jobs/playbooks/molecule/run.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/playbook_0/role_1/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/playbook_0/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/playbook_0/role_2/zuul-jobs
            link_target: untrusted/project_0/github.com/vexxhost/zuul-jobs
            role_path: ansible/playbook_0/role_2/zuul-jobs/roles
        post_playbooks:
        - path: untrusted/project_3/github.com/vexxhost/atmosphere.common/test-playbooks/molecule/post.yml
          roles:
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/post_playbook_0/role_0/atmosphere.common
            link_target: untrusted/project_3/github.com/vexxhost/atmosphere.common
            role_path: ansible/post_playbook_0/role_0/atmosphere.common/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_0/role_1/openstack-helm
            link_target: untrusted/project_4/opendev.org/openstack/openstack-helm
            role_path: ansible/post_playbook_0/role_1/openstack-helm/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_0/role_3/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_0/role_3/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_0/role_4/zuul-jobs
            link_target: untrusted/project_0/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_0/role_4/zuul-jobs/roles
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_1/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_1/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_1/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_1/role_2/zuul-jobs/roles
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/post-logs.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/post_playbook_2/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/post_playbook_2/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/post_playbook_2/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/post_playbook_2/role_2/zuul-jobs/roles
        pre_playbooks:
        - path: trusted/project_0/github.com/vexxhost/zuul-config/playbooks/base/pre.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_0/role_1/zuul-jobs
            link_target: trusted/project_1/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_0/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_0/role_2/zuul-jobs
            link_target: trusted/project_2/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_0/role_2/zuul-jobs/roles
        - path: untrusted/project_0/github.com/vexxhost/zuul-jobs/playbooks/molecule/pre.yaml
          roles:
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_1/role_1/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_1/role_1/zuul-jobs/roles
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/pre_playbook_1/role_2/zuul-jobs
            link_target: untrusted/project_0/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_1/role_2/zuul-jobs/roles
        - path: untrusted/project_3/github.com/vexxhost/atmosphere.common/test-playbooks/molecule/pre.yml
          roles:
          - checkout: main
            checkout_description: playbook branch
            link_name: ansible/pre_playbook_2/role_0/atmosphere.common
            link_target: untrusted/project_3/github.com/vexxhost/atmosphere.common
            role_path: ansible/pre_playbook_2/role_0/atmosphere.common/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_2/role_1/openstack-helm
            link_target: untrusted/project_4/opendev.org/openstack/openstack-helm
            role_path: ansible/pre_playbook_2/role_1/openstack-helm/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/pre_playbook_2/role_3/zuul-jobs
            link_target: untrusted/project_2/opendev.org/zuul/zuul-jobs
            role_path: ansible/pre_playbook_2/role_3/zuul-jobs/roles
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/pre_playbook_2/role_4/zuul-jobs
            link_target: untrusted/project_0/github.com/vexxhost/zuul-jobs
            role_path: ansible/pre_playbook_2/role_4/zuul-jobs/roles
      post_review: false
      post_timeout: null
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/vexxhost/atmosphere.common
        name: vexxhost/atmosphere.common
        short_name: atmosphere.common
        src_dir: src/github.com/vexxhost/atmosphere.common
      projects:
        github.com/vexxhost/atmosphere.common:
          canonical_hostname: github.com
          canonical_name: github.com/vexxhost/atmosphere.common
          checkout: main
          checkout_description: zuul branch
          commit: f24a6c545c72ad8eaeb8ffa2f818e3ebd8fde952
          name: vexxhost/atmosphere.common
          required: false
          short_name: atmosphere.common
          src_dir: src/github.com/vexxhost/atmosphere.common
      ref: refs/pull/102/head
      resources: {}
      tenant: oss
      timeout: 1800
      topic: null
      voting: true
