all:
  children:
    zuul_unreachable:
      hosts: {}
  hosts:
    debian-bookworm:
      ansible_connection: ssh
      ansible_host: 2a13:1a81:8000:3124:f816:3eff:fe53:33f0
      ansible_port: 22
      ansible_python_interpreter: auto
      ansible_user: zuul
      nodepool:
        az: nova
        cloud: regiocloud-a-ci
        external_id: 8f99f09f-f3c4-4572-8fd6-0ecfe85fceea
        host_id: 5afd8fc909abddfe2ce3a956a91bbe56629648b7209fd0acfa541862
        interface_ip: 2a13:1a81:8000:3124:f816:3eff:fe53:33f0
        label: debian-bookworm
        node_properties: {}
        private_ipv4: 10.128.7.76
        private_ipv6: null
        provider: regiocloud-a
        public_ipv4: 81.163.192.93
        public_ipv6: 2a13:1a81:8000:3124:f816:3eff:fe53:33f0
        region: null
        slot: null
  vars:
    zuul:
      _inheritance_path:
      - '<Job base explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-config/zuul.d/jobs.yaml@main#2>'
      - '<Job yamllint explicit: None implied: {MatchAny:{ImpliedBranchMatcher:main}}
        source: osism/zuul-jobs/.zuul.yaml@main#59>'
      - '<Job yamllint explicit: None implied: None source: osism/release/.zuul.yaml@main#2>'
      ansible_version: '9'
      attempts: 1
      branch: main
      build: dc8c06b9263b489399f4f102e867fbfe
      build_refs:
      - branch: main
        change: '2546'
        change_message: "chore(deps): update dependency purestorage.flasharray to
          v1.43.0\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [purestorage.flasharray](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection)
          | minor | `1.42.0` \u2192 `1.43.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>Everpure-Ansible/FlashArray-Collection
          (purestorage.flasharray)</summary>\n\n### [`v1.43.0`](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/blob/HEAD/CHANGELOG.rst#v1430)\n\n[Compare
          Source](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/compare/1.42.0...1.43.0)\n\n\\=======\n\n##
          Minor Changes\n\n- All Tier 5 modules refactored to use centralized api\\_helpers
          for context-aware API calls.\n- module\\_utils/api\\_helpers - Added centralized
          API helper functions to reduce code duplication across modules\n- module\\_utils/api\\_helpers
          - Added check\\_api\\_version() for cached API version checking\n- module\\_utils/api\\_helpers
          - Added check\\_response() for standardized response validation\n- module\\_utils/api\\_helpers
          - Added get\\_with\\_context() for context-aware API calls eliminating 500+
          duplicated patterns\n- module\\_utils/error\\_handlers - Added handle\\_auth\\_error()
          for improved authentication error messages\n- module\\_utils/error\\_handlers
          - Added safe\\_api\\_call() for comprehensive error handling wrapper\n-
          module\\_utils/error\\_handlers - Added standardized error handling framework
          with FlashArray exception hierarchy\n- purefa - Add API-client token authentication
          as an alternative to `api_token`, via a pre-signed `id_token` or a `private_key_file`
          (with `client_id`, `key_id`, `issuer`, `username`).\n- purefa\\_ad - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_admin - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_alert - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_apiclient - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_arrayname - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_audits - Use get\\_with\\_context() helper and fix
          duplicate code bug.\n- purefa\\_banner - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_cbsexpand - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_certs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_connect -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_console
          - Use get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_default\\_protection
          - Use centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_directory - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_dirsnap - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_dns - Added Fusion support\n- purefa\\_dns - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_ds - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_dsrole - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_dsrole\\_old - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_endpoint - Use centralized api\\_helpers for error
          handling.\n- purefa\\_eradication - Refactored to use centralized api\\_helpers
          for context-aware API calls\n- purefa\\_eradication - Simplified error handling
          using check\\_response() helper\n- purefa\\_eula - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_export - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_file - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fleet - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_hardware -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_hg - Refactored to use centralized api\\_helpers for error handling\n-
          purefa\\_host - Refactored to use centralized `api_helpers` functions (get\\_with\\_context,
          check\\_response) reducing code by 317 lines\n- purefa\\_info - Add the
          tgroups gather\\_subset for topology group reporting.\n- purefa\\_kmip -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_maintenance
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_messages - Use get\\_with\\_context() helper.\n- purefa\\_network
          - Use centralized api\\_helpers for error handling.\n- purefa\\_ntp - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_offload - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_pg - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_pgsched - Use centralized api\\_helpers
          for context-aware API calls and error handling.\n- purefa\\_pgsnap - Added
          `restore=all` option to restore all member volumes from a protection group
          snapshot at once using a single API call instead of iterating through each
          volume individually\n- purefa\\_pgsnap - Refactored to use centralized api\\_helpers
          for error handling\n- purefa\\_phonehome - Refactored to use centralized
          `check_response()` API helper.\n- purefa\\_pod - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_pod\\_replica
          - Refactored to use centralized `check_response()` API helper.\n- purefa\\_proxy
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_ra - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_realm - Use centralized api\\_helpers
          for error handling.\n- purefa\\_saml - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_smis - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_smtp - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_snap - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_snmp - Use
          centralized api\\_helpers for error handling.\n- purefa\\_snmp\\_agent -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_sso - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_subnet - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_syslog - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_syslog\\_settings - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_timeout - Use get\\_with\\_context()
          and check\\_response() helpers.\n- purefa\\_token - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_user - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vg - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_vlan - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vnc - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_volume - Refactored error handling to use centralized check\\_response()
          helper ([Pure-Storage-Ansible#932](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/pull/932))\n-
          purefa\\_volume\\_tags - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_workload - Added custom parameters support\n- purefa\\_workload
          - Use centralized api\\_helpers for error handling.\n\n## Bugfixes\n\n-
          purefa\\_dns - Fixed issue with purefa\\_dns not updating DNS config on
          remote arrays correctly\n- purefa\\_hg - Default an empty context to the
          local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_hg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_host - Fixed issue
          with purefa\\_host not updating host config on remote arrays correctly\n-
          purefa\\_network - Fixed crash when clearing IP address with 0.0.0.0/0 without
          gateway\n- purefa\\_network - Fixed crash when setting gateway without an
          IP address configured\n- purefa\\_offload - Fixed broken required\\_if validation
          that never executed due to comparing argument\\_spec dictionary to string
          instead of parameter value\n- purefa\\_pg - Default an empty context to
          the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pg - Fixed adding hostgroups to empty protection group using wrong
          parameter\n- purefa\\_pg - Only default the context to the local array name
          when the array is a fleet member, so standalone arrays do not send fleet
          context that would fail on stricter Purity releases\n- purefa\\_pgsched
          - Fixed issue where `snap_at` and `replicate_at` parameters were sent to
          the API even when frequency was not a multiple of days, causing API errors.\n-
          purefa\\_pgsched - Fixed replicate\\_at \"\" and snap\\_at \"\" not clearing
          schedule times correctly.\n- purefa\\_pgsnap - Default an empty context
          to the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pgsnap - Only default the context to the local array name when
          the array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_pgsnap - Route context-aware
          API calls through the shared api\\_helpers so context\\_names is only sent
          when a context is set\n- purefa\\_pod - Add idempotency checks for already
          promoted/demoted pods\n- purefa\\_pod - Fix UnboundLocalError when promoting
          pod without undo-demote pod\n- purefa\\_pod - Fix undo-demote pod handling
          during ActiveDR promotion\n- purefa\\_pod - Fixed unreachable `recover_pod()`
          branch in `main()` by reordering conditions to check for destroyed pods
          before creating new ones\n- purefa\\_pod - Fixed unreachable quiescing status
          check in `update_pod()` that was inside a block requiring `promotion_status
          == 'demoted'`\n- purefa\\_pod - Removed duplicate `clone_pod` condition
          in `main()`\n- purefa\\_policy - Added max\\_password\\_age to current\\_pwd\\_policy
          dictionary and PolicyPassword API calls\n- purefa\\_policy - Added missing
          max\\_password\\_age parameter to DOCUMENTATION, argument\\_spec, and password
          policy update logic\n- purefa\\_policy - Added missing min\\_password\\_age
          parameter to DOCUMENTATION, argument\\_spec, and password policy update
          logic\n- purefa\\_policy - Corrected min\\_password\\_age range to 0-7 days
          and max\\_password\\_age range to 0 (disabled) or 1-99999 days per SDK specifications\n-
          purefa\\_policy - Enhanced min\\_password\\_age and max\\_password\\_age
          to accept human-readable time periods (e.g., '1d', '90d', '2h') in addition
          to integer seconds\n- purefa\\_policy - Fixed KeyError when accessing min\\_password\\_age
          and max\\_password\\_age parameters that were used in code but not defined
          in argument\\_spec\n- purefa\\_policy - Fixed `Versions options must be
          the same for all NFS export policy rules` when adding multiple clients to
          an existing NFS policy by adding missing `nfs_version` parameter\n- purefa\\_policy
          - Fixed critical runtime error in quota policy rule deletion (line 942)
          where rules\\[rule].notifications incorrectly used object as dictionary
          key\n- purefa\\_policy - Fixed duplicate condition check (line 2784) where
          changed\\_rule was checked twice in the same if statement\n- purefa\\_policy
          - Fixed duplicate variable initialization in update\\_policy() function
          (line 1509) where changed\\_rule was assigned twice\n- purefa\\_policy -
          Fixed lockout\\_duration not being applied when updating password policy\n-
          purefa\\_policy - Fixed min\\_password\\_age and max\\_password\\_age to
          properly convert from human-readable time periods to milliseconds for SDK
          compatibility\n- purefa\\_policy - Fixed password policy params being set
          to None when updating other params\n- purefa\\_policy - Fixed quota\\_notifications
          normalization using wrong operator\n- purefa\\_smtp - Fixed `KeyError 'user_name'`
          when configuring SMTP with authentication by correcting parameter name from
          `module.params[\"user_name\"]` to `module.params[\"user\"]`\n- purefa\\_snap
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_snap - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_snap - Only send
          context\\_names when a context is set, so standalone arrays do not send
          fleet context that would fail on stricter Purity releases\n- purefa\\_vg
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_vg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_volume - Only default
          the context to the local array name when the array is a fleet member, so
          standalone arrays do not send fleet context that would fail on stricter
          Purity releases\n- purefa\\_volume - Route all context-aware API calls through
          the shared api\\_helpers so context\\_names is only sent when a context
          is set, and fix an inverted version check on the pod-move path\n- purefa\\_workload
          - Fail with a clear error when the array is not a member of a fleet, since
          the module requires a Fusion fleet environment\n\n## New Modules\n\n- purestorage.flasharray.purefa\\_tgroup
          - Manage topology groups on Everpure FlashArrays\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/osism/release).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjIzMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSJdfQ==-->\n"
        change_url: https://github.com/osism/release/pull/2546
        commit_id: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        patchset: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
        src_dir: src/github.com/osism/release
        topic: null
      buildset: f36120f644394f7c9d9f559b5531e263
      buildset_refs:
      - branch: main
        change: '2546'
        change_message: "chore(deps): update dependency purestorage.flasharray to
          v1.43.0\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [purestorage.flasharray](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection)
          | minor | `1.42.0` \u2192 `1.43.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>Everpure-Ansible/FlashArray-Collection
          (purestorage.flasharray)</summary>\n\n### [`v1.43.0`](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/blob/HEAD/CHANGELOG.rst#v1430)\n\n[Compare
          Source](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/compare/1.42.0...1.43.0)\n\n\\=======\n\n##
          Minor Changes\n\n- All Tier 5 modules refactored to use centralized api\\_helpers
          for context-aware API calls.\n- module\\_utils/api\\_helpers - Added centralized
          API helper functions to reduce code duplication across modules\n- module\\_utils/api\\_helpers
          - Added check\\_api\\_version() for cached API version checking\n- module\\_utils/api\\_helpers
          - Added check\\_response() for standardized response validation\n- module\\_utils/api\\_helpers
          - Added get\\_with\\_context() for context-aware API calls eliminating 500+
          duplicated patterns\n- module\\_utils/error\\_handlers - Added handle\\_auth\\_error()
          for improved authentication error messages\n- module\\_utils/error\\_handlers
          - Added safe\\_api\\_call() for comprehensive error handling wrapper\n-
          module\\_utils/error\\_handlers - Added standardized error handling framework
          with FlashArray exception hierarchy\n- purefa - Add API-client token authentication
          as an alternative to `api_token`, via a pre-signed `id_token` or a `private_key_file`
          (with `client_id`, `key_id`, `issuer`, `username`).\n- purefa\\_ad - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_admin - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_alert - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_apiclient - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_arrayname - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_audits - Use get\\_with\\_context() helper and fix
          duplicate code bug.\n- purefa\\_banner - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_cbsexpand - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_certs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_connect -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_console
          - Use get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_default\\_protection
          - Use centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_directory - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_dirsnap - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_dns - Added Fusion support\n- purefa\\_dns - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_ds - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_dsrole - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_dsrole\\_old - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_endpoint - Use centralized api\\_helpers for error
          handling.\n- purefa\\_eradication - Refactored to use centralized api\\_helpers
          for context-aware API calls\n- purefa\\_eradication - Simplified error handling
          using check\\_response() helper\n- purefa\\_eula - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_export - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_file - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fleet - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_hardware -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_hg - Refactored to use centralized api\\_helpers for error handling\n-
          purefa\\_host - Refactored to use centralized `api_helpers` functions (get\\_with\\_context,
          check\\_response) reducing code by 317 lines\n- purefa\\_info - Add the
          tgroups gather\\_subset for topology group reporting.\n- purefa\\_kmip -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_maintenance
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_messages - Use get\\_with\\_context() helper.\n- purefa\\_network
          - Use centralized api\\_helpers for error handling.\n- purefa\\_ntp - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_offload - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_pg - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_pgsched - Use centralized api\\_helpers
          for context-aware API calls and error handling.\n- purefa\\_pgsnap - Added
          `restore=all` option to restore all member volumes from a protection group
          snapshot at once using a single API call instead of iterating through each
          volume individually\n- purefa\\_pgsnap - Refactored to use centralized api\\_helpers
          for error handling\n- purefa\\_phonehome - Refactored to use centralized
          `check_response()` API helper.\n- purefa\\_pod - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_pod\\_replica
          - Refactored to use centralized `check_response()` API helper.\n- purefa\\_proxy
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_ra - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_realm - Use centralized api\\_helpers
          for error handling.\n- purefa\\_saml - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_smis - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_smtp - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_snap - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_snmp - Use
          centralized api\\_helpers for error handling.\n- purefa\\_snmp\\_agent -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_sso - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_subnet - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_syslog - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_syslog\\_settings - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_timeout - Use get\\_with\\_context()
          and check\\_response() helpers.\n- purefa\\_token - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_user - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vg - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_vlan - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vnc - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_volume - Refactored error handling to use centralized check\\_response()
          helper ([Pure-Storage-Ansible#932](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/pull/932))\n-
          purefa\\_volume\\_tags - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_workload - Added custom parameters support\n- purefa\\_workload
          - Use centralized api\\_helpers for error handling.\n\n## Bugfixes\n\n-
          purefa\\_dns - Fixed issue with purefa\\_dns not updating DNS config on
          remote arrays correctly\n- purefa\\_hg - Default an empty context to the
          local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_hg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_host - Fixed issue
          with purefa\\_host not updating host config on remote arrays correctly\n-
          purefa\\_network - Fixed crash when clearing IP address with 0.0.0.0/0 without
          gateway\n- purefa\\_network - Fixed crash when setting gateway without an
          IP address configured\n- purefa\\_offload - Fixed broken required\\_if validation
          that never executed due to comparing argument\\_spec dictionary to string
          instead of parameter value\n- purefa\\_pg - Default an empty context to
          the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pg - Fixed adding hostgroups to empty protection group using wrong
          parameter\n- purefa\\_pg - Only default the context to the local array name
          when the array is a fleet member, so standalone arrays do not send fleet
          context that would fail on stricter Purity releases\n- purefa\\_pgsched
          - Fixed issue where `snap_at` and `replicate_at` parameters were sent to
          the API even when frequency was not a multiple of days, causing API errors.\n-
          purefa\\_pgsched - Fixed replicate\\_at \"\" and snap\\_at \"\" not clearing
          schedule times correctly.\n- purefa\\_pgsnap - Default an empty context
          to the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pgsnap - Only default the context to the local array name when
          the array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_pgsnap - Route context-aware
          API calls through the shared api\\_helpers so context\\_names is only sent
          when a context is set\n- purefa\\_pod - Add idempotency checks for already
          promoted/demoted pods\n- purefa\\_pod - Fix UnboundLocalError when promoting
          pod without undo-demote pod\n- purefa\\_pod - Fix undo-demote pod handling
          during ActiveDR promotion\n- purefa\\_pod - Fixed unreachable `recover_pod()`
          branch in `main()` by reordering conditions to check for destroyed pods
          before creating new ones\n- purefa\\_pod - Fixed unreachable quiescing status
          check in `update_pod()` that was inside a block requiring `promotion_status
          == 'demoted'`\n- purefa\\_pod - Removed duplicate `clone_pod` condition
          in `main()`\n- purefa\\_policy - Added max\\_password\\_age to current\\_pwd\\_policy
          dictionary and PolicyPassword API calls\n- purefa\\_policy - Added missing
          max\\_password\\_age parameter to DOCUMENTATION, argument\\_spec, and password
          policy update logic\n- purefa\\_policy - Added missing min\\_password\\_age
          parameter to DOCUMENTATION, argument\\_spec, and password policy update
          logic\n- purefa\\_policy - Corrected min\\_password\\_age range to 0-7 days
          and max\\_password\\_age range to 0 (disabled) or 1-99999 days per SDK specifications\n-
          purefa\\_policy - Enhanced min\\_password\\_age and max\\_password\\_age
          to accept human-readable time periods (e.g., '1d', '90d', '2h') in addition
          to integer seconds\n- purefa\\_policy - Fixed KeyError when accessing min\\_password\\_age
          and max\\_password\\_age parameters that were used in code but not defined
          in argument\\_spec\n- purefa\\_policy - Fixed `Versions options must be
          the same for all NFS export policy rules` when adding multiple clients to
          an existing NFS policy by adding missing `nfs_version` parameter\n- purefa\\_policy
          - Fixed critical runtime error in quota policy rule deletion (line 942)
          where rules\\[rule].notifications incorrectly used object as dictionary
          key\n- purefa\\_policy - Fixed duplicate condition check (line 2784) where
          changed\\_rule was checked twice in the same if statement\n- purefa\\_policy
          - Fixed duplicate variable initialization in update\\_policy() function
          (line 1509) where changed\\_rule was assigned twice\n- purefa\\_policy -
          Fixed lockout\\_duration not being applied when updating password policy\n-
          purefa\\_policy - Fixed min\\_password\\_age and max\\_password\\_age to
          properly convert from human-readable time periods to milliseconds for SDK
          compatibility\n- purefa\\_policy - Fixed password policy params being set
          to None when updating other params\n- purefa\\_policy - Fixed quota\\_notifications
          normalization using wrong operator\n- purefa\\_smtp - Fixed `KeyError 'user_name'`
          when configuring SMTP with authentication by correcting parameter name from
          `module.params[\"user_name\"]` to `module.params[\"user\"]`\n- purefa\\_snap
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_snap - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_snap - Only send
          context\\_names when a context is set, so standalone arrays do not send
          fleet context that would fail on stricter Purity releases\n- purefa\\_vg
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_vg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_volume - Only default
          the context to the local array name when the array is a fleet member, so
          standalone arrays do not send fleet context that would fail on stricter
          Purity releases\n- purefa\\_volume - Route all context-aware API calls through
          the shared api\\_helpers so context\\_names is only sent when a context
          is set, and fix an inverted version check on the pod-move path\n- purefa\\_workload
          - Fail with a clear error when the array is not a member of a fleet, since
          the module requires a Fusion fleet environment\n\n## New Modules\n\n- purestorage.flasharray.purefa\\_tgroup
          - Manage topology groups on Everpure FlashArrays\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/osism/release).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjIzMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSJdfQ==-->\n"
        change_url: https://github.com/osism/release/pull/2546
        commit_id: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        patchset: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
        src_dir: src/github.com/osism/release
        topic: null
      change: '2546'
      change_message: "chore(deps): update dependency purestorage.flasharray to v1.43.0\n\nThis
        PR contains the following updates:\n\n| Package | Update | Change |\n|---|---|---|\n|
        [purestorage.flasharray](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection)
        | minor | `1.42.0` \u2192 `1.43.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>Everpure-Ansible/FlashArray-Collection
        (purestorage.flasharray)</summary>\n\n### [`v1.43.0`](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/blob/HEAD/CHANGELOG.rst#v1430)\n\n[Compare
        Source](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/compare/1.42.0...1.43.0)\n\n\\=======\n\n##
        Minor Changes\n\n- All Tier 5 modules refactored to use centralized api\\_helpers
        for context-aware API calls.\n- module\\_utils/api\\_helpers - Added centralized
        API helper functions to reduce code duplication across modules\n- module\\_utils/api\\_helpers
        - Added check\\_api\\_version() for cached API version checking\n- module\\_utils/api\\_helpers
        - Added check\\_response() for standardized response validation\n- module\\_utils/api\\_helpers
        - Added get\\_with\\_context() for context-aware API calls eliminating 500+
        duplicated patterns\n- module\\_utils/error\\_handlers - Added handle\\_auth\\_error()
        for improved authentication error messages\n- module\\_utils/error\\_handlers
        - Added safe\\_api\\_call() for comprehensive error handling wrapper\n- module\\_utils/error\\_handlers
        - Added standardized error handling framework with FlashArray exception hierarchy\n-
        purefa - Add API-client token authentication as an alternative to `api_token`,
        via a pre-signed `id_token` or a `private_key_file` (with `client_id`, `key_id`,
        `issuer`, `username`).\n- purefa\\_ad - Refactored to use centralized `check_response()`
        API helper.\n- purefa\\_admin - Refactored to use centralized check\\_response()
        helper for API error handling.\n- purefa\\_alert - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_apiclient - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_arrayname - Use get\\_with\\_context()
        and check\\_response() helpers.\n- purefa\\_audits - Use get\\_with\\_context()
        helper and fix duplicate code bug.\n- purefa\\_banner - Use get\\_with\\_context()
        and check\\_response() helpers.\n- purefa\\_cbsexpand - Refactored to use
        centralized check\\_response() helper for API error handling.\n- purefa\\_certs
        - Refactored to use centralized `check_response()` API helper.\n- purefa\\_connect
        - Refactored to use centralized `check_response()` API helper.\n- purefa\\_console
        - Use get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_default\\_protection
        - Use centralized api\\_helpers for context-aware API calls and error handling.\n-
        purefa\\_directory - Refactored to use centralized `check_response()` API
        helper.\n- purefa\\_dirsnap - Refactored to use centralized `check_response()`
        API helper.\n- purefa\\_dns - Added Fusion support\n- purefa\\_dns - Use centralized
        api\\_helpers for context-aware API calls and error handling.\n- purefa\\_ds
        - Use get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_dsrole
        - Refactored to use centralized `check_response()` API helper.\n- purefa\\_dsrole\\_old
        - Refactored to use centralized `check_response()` API helper.\n- purefa\\_endpoint
        - Use centralized api\\_helpers for error handling.\n- purefa\\_eradication
        - Refactored to use centralized api\\_helpers for context-aware API calls\n-
        purefa\\_eradication - Simplified error handling using check\\_response()
        helper\n- purefa\\_eula - Refactored to use centralized check\\_response()
        helper for API error handling.\n- purefa\\_export - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_file - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_fleet - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_fs - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_hardware - Refactored to use centralized
        check\\_response() helper for API error handling.\n- purefa\\_hg - Refactored
        to use centralized api\\_helpers for error handling\n- purefa\\_host - Refactored
        to use centralized `api_helpers` functions (get\\_with\\_context, check\\_response)
        reducing code by 317 lines\n- purefa\\_info - Add the tgroups gather\\_subset
        for topology group reporting.\n- purefa\\_kmip - Refactored to use centralized
        `check_response()` API helper.\n- purefa\\_maintenance - Refactored to use
        centralized check\\_response() helper for API error handling.\n- purefa\\_messages
        - Use get\\_with\\_context() helper.\n- purefa\\_network - Use centralized
        api\\_helpers for error handling.\n- purefa\\_ntp - Use centralized api\\_helpers
        for context-aware API calls and error handling.\n- purefa\\_offload - Use
        get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_pg - Refactored
        to use centralized check\\_response() helper for API error handling.\n- purefa\\_pgsched
        - Use centralized api\\_helpers for context-aware API calls and error handling.\n-
        purefa\\_pgsnap - Added `restore=all` option to restore all member volumes
        from a protection group snapshot at once using a single API call instead of
        iterating through each volume individually\n- purefa\\_pgsnap - Refactored
        to use centralized api\\_helpers for error handling\n- purefa\\_phonehome
        - Refactored to use centralized `check_response()` API helper.\n- purefa\\_pod
        - Refactored to use centralized check\\_response() helper for API error handling.\n-
        purefa\\_pod\\_replica - Refactored to use centralized `check_response()`
        API helper.\n- purefa\\_proxy - Refactored to use centralized check\\_response()
        helper for API error handling.\n- purefa\\_ra - Refactored to use centralized
        check\\_response() helper for API error handling.\n- purefa\\_realm - Use
        centralized api\\_helpers for error handling.\n- purefa\\_saml - Refactored
        to use centralized `check_response()` API helper.\n- purefa\\_smis - Refactored
        to use centralized check\\_response() helper for API error handling.\n- purefa\\_smtp
        - Refactored to use centralized check\\_response() helper for API error handling.\n-
        purefa\\_snap - Refactored to use centralized api\\_helpers for error handling\n-
        purefa\\_snmp - Use centralized api\\_helpers for error handling.\n- purefa\\_snmp\\_agent
        - Refactored to use centralized check\\_response() helper for API error handling.\n-
        purefa\\_sso - Refactored to use centralized check\\_response() helper for
        API error handling.\n- purefa\\_subnet - Refactored to use centralized `check_response()`
        API helper.\n- purefa\\_syslog - Use get\\_with\\_context() and check\\_response()
        helpers.\n- purefa\\_syslog\\_settings - Use get\\_with\\_context() and check\\_response()
        helpers.\n- purefa\\_timeout - Use get\\_with\\_context() and check\\_response()
        helpers.\n- purefa\\_token - Refactored to use centralized check\\_response()
        helper for API error handling.\n- purefa\\_user - Use centralized api\\_helpers
        for error handling.\n- purefa\\_vg - Refactored to use centralized api\\_helpers
        for error handling\n- purefa\\_vlan - Use centralized api\\_helpers for error
        handling.\n- purefa\\_vnc - Refactored to use centralized check\\_response()
        helper for API error handling.\n- purefa\\_volume - Refactored error handling
        to use centralized check\\_response() helper ([Pure-Storage-Ansible#932](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/pull/932))\n-
        purefa\\_volume\\_tags - Use get\\_with\\_context() and check\\_response()
        helpers.\n- purefa\\_workload - Added custom parameters support\n- purefa\\_workload
        - Use centralized api\\_helpers for error handling.\n\n## Bugfixes\n\n- purefa\\_dns
        - Fixed issue with purefa\\_dns not updating DNS config on remote arrays correctly\n-
        purefa\\_hg - Default an empty context to the local array name to avoid an
        internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
        purefa\\_hg - Only default the context to the local array name when the array
        is a fleet member, so standalone arrays do not send fleet context that would
        fail on stricter Purity releases\n- purefa\\_host - Fixed issue with purefa\\_host
        not updating host config on remote arrays correctly\n- purefa\\_network -
        Fixed crash when clearing IP address with 0.0.0.0/0 without gateway\n- purefa\\_network
        - Fixed crash when setting gateway without an IP address configured\n- purefa\\_offload
        - Fixed broken required\\_if validation that never executed due to comparing
        argument\\_spec dictionary to string instead of parameter value\n- purefa\\_pg
        - Default an empty context to the local array name to avoid an internal error
        on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
        purefa\\_pg - Fixed adding hostgroups to empty protection group using wrong
        parameter\n- purefa\\_pg - Only default the context to the local array name
        when the array is a fleet member, so standalone arrays do not send fleet context
        that would fail on stricter Purity releases\n- purefa\\_pgsched - Fixed issue
        where `snap_at` and `replicate_at` parameters were sent to the API even when
        frequency was not a multiple of days, causing API errors.\n- purefa\\_pgsched
        - Fixed replicate\\_at \"\" and snap\\_at \"\" not clearing schedule times
        correctly.\n- purefa\\_pgsnap - Default an empty context to the local array
        name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
        purefa\\_pgsnap - Only default the context to the local array name when the
        array is a fleet member, so standalone arrays do not send fleet context that
        would fail on stricter Purity releases\n- purefa\\_pgsnap - Route context-aware
        API calls through the shared api\\_helpers so context\\_names is only sent
        when a context is set\n- purefa\\_pod - Add idempotency checks for already
        promoted/demoted pods\n- purefa\\_pod - Fix UnboundLocalError when promoting
        pod without undo-demote pod\n- purefa\\_pod - Fix undo-demote pod handling
        during ActiveDR promotion\n- purefa\\_pod - Fixed unreachable `recover_pod()`
        branch in `main()` by reordering conditions to check for destroyed pods before
        creating new ones\n- purefa\\_pod - Fixed unreachable quiescing status check
        in `update_pod()` that was inside a block requiring `promotion_status == 'demoted'`\n-
        purefa\\_pod - Removed duplicate `clone_pod` condition in `main()`\n- purefa\\_policy
        - Added max\\_password\\_age to current\\_pwd\\_policy dictionary and PolicyPassword
        API calls\n- purefa\\_policy - Added missing max\\_password\\_age parameter
        to DOCUMENTATION, argument\\_spec, and password policy update logic\n- purefa\\_policy
        - Added missing min\\_password\\_age parameter to DOCUMENTATION, argument\\_spec,
        and password policy update logic\n- purefa\\_policy - Corrected min\\_password\\_age
        range to 0-7 days and max\\_password\\_age range to 0 (disabled) or 1-99999
        days per SDK specifications\n- purefa\\_policy - Enhanced min\\_password\\_age
        and max\\_password\\_age to accept human-readable time periods (e.g., '1d',
        '90d', '2h') in addition to integer seconds\n- purefa\\_policy - Fixed KeyError
        when accessing min\\_password\\_age and max\\_password\\_age parameters that
        were used in code but not defined in argument\\_spec\n- purefa\\_policy -
        Fixed `Versions options must be the same for all NFS export policy rules`
        when adding multiple clients to an existing NFS policy by adding missing `nfs_version`
        parameter\n- purefa\\_policy - Fixed critical runtime error in quota policy
        rule deletion (line 942) where rules\\[rule].notifications incorrectly used
        object as dictionary key\n- purefa\\_policy - Fixed duplicate condition check
        (line 2784) where changed\\_rule was checked twice in the same if statement\n-
        purefa\\_policy - Fixed duplicate variable initialization in update\\_policy()
        function (line 1509) where changed\\_rule was assigned twice\n- purefa\\_policy
        - Fixed lockout\\_duration not being applied when updating password policy\n-
        purefa\\_policy - Fixed min\\_password\\_age and max\\_password\\_age to properly
        convert from human-readable time periods to milliseconds for SDK compatibility\n-
        purefa\\_policy - Fixed password policy params being set to None when updating
        other params\n- purefa\\_policy - Fixed quota\\_notifications normalization
        using wrong operator\n- purefa\\_smtp - Fixed `KeyError 'user_name'` when
        configuring SMTP with authentication by correcting parameter name from `module.params[\"user_name\"]`
        to `module.params[\"user\"]`\n- purefa\\_snap - Default an empty context to
        the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
        purefa\\_snap - Only default the context to the local array name when the
        array is a fleet member, so standalone arrays do not send fleet context that
        would fail on stricter Purity releases\n- purefa\\_snap - Only send context\\_names
        when a context is set, so standalone arrays do not send fleet context that
        would fail on stricter Purity releases\n- purefa\\_vg - Default an empty context
        to the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
        purefa\\_vg - Only default the context to the local array name when the array
        is a fleet member, so standalone arrays do not send fleet context that would
        fail on stricter Purity releases\n- purefa\\_volume - Only default the context
        to the local array name when the array is a fleet member, so standalone arrays
        do not send fleet context that would fail on stricter Purity releases\n- purefa\\_volume
        - Route all context-aware API calls through the shared api\\_helpers so context\\_names
        is only sent when a context is set, and fix an inverted version check on the
        pod-move path\n- purefa\\_workload - Fail with a clear error when the array
        is not a member of a fleet, since the module requires a Fusion fleet environment\n\n##
        New Modules\n\n- purestorage.flasharray.purefa\\_tgroup - Manage topology
        groups on Everpure FlashArrays\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/osism/release).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjIzMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSJdfQ==-->\n"
      change_url: https://github.com/osism/release/pull/2546
      child_jobs: []
      commit_id: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
      event_id: d42ff3e0-6c72-11f1-819e-70e89a1ce4d5
      executor:
        hostname: 521e9411259a
        inventory_file: /var/lib/zuul/builds/dc8c06b9263b489399f4f102e867fbfe/ansible/inventory.yaml
        log_root: /var/lib/zuul/builds/dc8c06b9263b489399f4f102e867fbfe/work/logs
        result_data_file: /var/lib/zuul/builds/dc8c06b9263b489399f4f102e867fbfe/work/results.json
        src_root: /var/lib/zuul/builds/dc8c06b9263b489399f4f102e867fbfe/work/src
        work_root: /var/lib/zuul/builds/dc8c06b9263b489399f4f102e867fbfe/work
      include_vars: []
      items:
      - branch: main
        change: '2546'
        change_message: "chore(deps): update dependency purestorage.flasharray to
          v1.43.0\n\nThis PR contains the following updates:\n\n| Package | Update
          | Change |\n|---|---|---|\n| [purestorage.flasharray](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection)
          | minor | `1.42.0` \u2192 `1.43.0` |\n\n---\n\n### Release Notes\n\n<details>\n<summary>Everpure-Ansible/FlashArray-Collection
          (purestorage.flasharray)</summary>\n\n### [`v1.43.0`](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/blob/HEAD/CHANGELOG.rst#v1430)\n\n[Compare
          Source](https://redirect.github.com/Everpure-Ansible/FlashArray-Collection/compare/1.42.0...1.43.0)\n\n\\=======\n\n##
          Minor Changes\n\n- All Tier 5 modules refactored to use centralized api\\_helpers
          for context-aware API calls.\n- module\\_utils/api\\_helpers - Added centralized
          API helper functions to reduce code duplication across modules\n- module\\_utils/api\\_helpers
          - Added check\\_api\\_version() for cached API version checking\n- module\\_utils/api\\_helpers
          - Added check\\_response() for standardized response validation\n- module\\_utils/api\\_helpers
          - Added get\\_with\\_context() for context-aware API calls eliminating 500+
          duplicated patterns\n- module\\_utils/error\\_handlers - Added handle\\_auth\\_error()
          for improved authentication error messages\n- module\\_utils/error\\_handlers
          - Added safe\\_api\\_call() for comprehensive error handling wrapper\n-
          module\\_utils/error\\_handlers - Added standardized error handling framework
          with FlashArray exception hierarchy\n- purefa - Add API-client token authentication
          as an alternative to `api_token`, via a pre-signed `id_token` or a `private_key_file`
          (with `client_id`, `key_id`, `issuer`, `username`).\n- purefa\\_ad - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_admin - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_alert - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_apiclient - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_arrayname - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_audits - Use get\\_with\\_context() helper and fix
          duplicate code bug.\n- purefa\\_banner - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_cbsexpand - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_certs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_connect -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_console
          - Use get\\_with\\_context() and check\\_response() helpers.\n- purefa\\_default\\_protection
          - Use centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_directory - Refactored to use centralized `check_response()` API
          helper.\n- purefa\\_dirsnap - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_dns - Added Fusion support\n- purefa\\_dns - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_ds - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_dsrole - Refactored to use centralized `check_response()` API helper.\n-
          purefa\\_dsrole\\_old - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_endpoint - Use centralized api\\_helpers for error
          handling.\n- purefa\\_eradication - Refactored to use centralized api\\_helpers
          for context-aware API calls\n- purefa\\_eradication - Simplified error handling
          using check\\_response() helper\n- purefa\\_eula - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_export - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_file - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fleet - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_fs - Refactored
          to use centralized `check_response()` API helper.\n- purefa\\_hardware -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_hg - Refactored to use centralized api\\_helpers for error handling\n-
          purefa\\_host - Refactored to use centralized `api_helpers` functions (get\\_with\\_context,
          check\\_response) reducing code by 317 lines\n- purefa\\_info - Add the
          tgroups gather\\_subset for topology group reporting.\n- purefa\\_kmip -
          Refactored to use centralized `check_response()` API helper.\n- purefa\\_maintenance
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_messages - Use get\\_with\\_context() helper.\n- purefa\\_network
          - Use centralized api\\_helpers for error handling.\n- purefa\\_ntp - Use
          centralized api\\_helpers for context-aware API calls and error handling.\n-
          purefa\\_offload - Use get\\_with\\_context() and check\\_response() helpers.\n-
          purefa\\_pg - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_pgsched - Use centralized api\\_helpers
          for context-aware API calls and error handling.\n- purefa\\_pgsnap - Added
          `restore=all` option to restore all member volumes from a protection group
          snapshot at once using a single API call instead of iterating through each
          volume individually\n- purefa\\_pgsnap - Refactored to use centralized api\\_helpers
          for error handling\n- purefa\\_phonehome - Refactored to use centralized
          `check_response()` API helper.\n- purefa\\_pod - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_pod\\_replica
          - Refactored to use centralized `check_response()` API helper.\n- purefa\\_proxy
          - Refactored to use centralized check\\_response() helper for API error
          handling.\n- purefa\\_ra - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_realm - Use centralized api\\_helpers
          for error handling.\n- purefa\\_saml - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_smis - Refactored to use centralized check\\_response()
          helper for API error handling.\n- purefa\\_smtp - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_snap - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_snmp - Use
          centralized api\\_helpers for error handling.\n- purefa\\_snmp\\_agent -
          Refactored to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_sso - Refactored to use centralized check\\_response() helper for
          API error handling.\n- purefa\\_subnet - Refactored to use centralized `check_response()`
          API helper.\n- purefa\\_syslog - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_syslog\\_settings - Use get\\_with\\_context() and
          check\\_response() helpers.\n- purefa\\_timeout - Use get\\_with\\_context()
          and check\\_response() helpers.\n- purefa\\_token - Refactored to use centralized
          check\\_response() helper for API error handling.\n- purefa\\_user - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vg - Refactored
          to use centralized api\\_helpers for error handling\n- purefa\\_vlan - Use
          centralized api\\_helpers for error handling.\n- purefa\\_vnc - Refactored
          to use centralized check\\_response() helper for API error handling.\n-
          purefa\\_volume - Refactored error handling to use centralized check\\_response()
          helper ([Pure-Storage-Ansible#932](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/pull/932))\n-
          purefa\\_volume\\_tags - Use get\\_with\\_context() and check\\_response()
          helpers.\n- purefa\\_workload - Added custom parameters support\n- purefa\\_workload
          - Use centralized api\\_helpers for error handling.\n\n## Bugfixes\n\n-
          purefa\\_dns - Fixed issue with purefa\\_dns not updating DNS config on
          remote arrays correctly\n- purefa\\_hg - Default an empty context to the
          local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_hg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_host - Fixed issue
          with purefa\\_host not updating host config on remote arrays correctly\n-
          purefa\\_network - Fixed crash when clearing IP address with 0.0.0.0/0 without
          gateway\n- purefa\\_network - Fixed crash when setting gateway without an
          IP address configured\n- purefa\\_offload - Fixed broken required\\_if validation
          that never executed due to comparing argument\\_spec dictionary to string
          instead of parameter value\n- purefa\\_pg - Default an empty context to
          the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pg - Fixed adding hostgroups to empty protection group using wrong
          parameter\n- purefa\\_pg - Only default the context to the local array name
          when the array is a fleet member, so standalone arrays do not send fleet
          context that would fail on stricter Purity releases\n- purefa\\_pgsched
          - Fixed issue where `snap_at` and `replicate_at` parameters were sent to
          the API even when frequency was not a multiple of days, causing API errors.\n-
          purefa\\_pgsched - Fixed replicate\\_at \"\" and snap\\_at \"\" not clearing
          schedule times correctly.\n- purefa\\_pgsnap - Default an empty context
          to the local array name to avoid an internal error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_pgsnap - Only default the context to the local array name when
          the array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_pgsnap - Route context-aware
          API calls through the shared api\\_helpers so context\\_names is only sent
          when a context is set\n- purefa\\_pod - Add idempotency checks for already
          promoted/demoted pods\n- purefa\\_pod - Fix UnboundLocalError when promoting
          pod without undo-demote pod\n- purefa\\_pod - Fix undo-demote pod handling
          during ActiveDR promotion\n- purefa\\_pod - Fixed unreachable `recover_pod()`
          branch in `main()` by reordering conditions to check for destroyed pods
          before creating new ones\n- purefa\\_pod - Fixed unreachable quiescing status
          check in `update_pod()` that was inside a block requiring `promotion_status
          == 'demoted'`\n- purefa\\_pod - Removed duplicate `clone_pod` condition
          in `main()`\n- purefa\\_policy - Added max\\_password\\_age to current\\_pwd\\_policy
          dictionary and PolicyPassword API calls\n- purefa\\_policy - Added missing
          max\\_password\\_age parameter to DOCUMENTATION, argument\\_spec, and password
          policy update logic\n- purefa\\_policy - Added missing min\\_password\\_age
          parameter to DOCUMENTATION, argument\\_spec, and password policy update
          logic\n- purefa\\_policy - Corrected min\\_password\\_age range to 0-7 days
          and max\\_password\\_age range to 0 (disabled) or 1-99999 days per SDK specifications\n-
          purefa\\_policy - Enhanced min\\_password\\_age and max\\_password\\_age
          to accept human-readable time periods (e.g., '1d', '90d', '2h') in addition
          to integer seconds\n- purefa\\_policy - Fixed KeyError when accessing min\\_password\\_age
          and max\\_password\\_age parameters that were used in code but not defined
          in argument\\_spec\n- purefa\\_policy - Fixed `Versions options must be
          the same for all NFS export policy rules` when adding multiple clients to
          an existing NFS policy by adding missing `nfs_version` parameter\n- purefa\\_policy
          - Fixed critical runtime error in quota policy rule deletion (line 942)
          where rules\\[rule].notifications incorrectly used object as dictionary
          key\n- purefa\\_policy - Fixed duplicate condition check (line 2784) where
          changed\\_rule was checked twice in the same if statement\n- purefa\\_policy
          - Fixed duplicate variable initialization in update\\_policy() function
          (line 1509) where changed\\_rule was assigned twice\n- purefa\\_policy -
          Fixed lockout\\_duration not being applied when updating password policy\n-
          purefa\\_policy - Fixed min\\_password\\_age and max\\_password\\_age to
          properly convert from human-readable time periods to milliseconds for SDK
          compatibility\n- purefa\\_policy - Fixed password policy params being set
          to None when updating other params\n- purefa\\_policy - Fixed quota\\_notifications
          normalization using wrong operator\n- purefa\\_smtp - Fixed `KeyError 'user_name'`
          when configuring SMTP with authentication by correcting parameter name from
          `module.params[\"user_name\"]` to `module.params[\"user\"]`\n- purefa\\_snap
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_snap - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_snap - Only send
          context\\_names when a context is set, so standalone arrays do not send
          fleet context that would fail on stricter Purity releases\n- purefa\\_vg
          - Default an empty context to the local array name to avoid an internal
          error on newer Purity ([Pure-Storage-Ansible#1005](https://redirect.github.com/Pure-Storage-Ansible/FlashArray-Collection/issues/1005))\n-
          purefa\\_vg - Only default the context to the local array name when the
          array is a fleet member, so standalone arrays do not send fleet context
          that would fail on stricter Purity releases\n- purefa\\_volume - Only default
          the context to the local array name when the array is a fleet member, so
          standalone arrays do not send fleet context that would fail on stricter
          Purity releases\n- purefa\\_volume - Route all context-aware API calls through
          the shared api\\_helpers so context\\_names is only sent when a context
          is set, and fix an inverted version check on the pod-move path\n- purefa\\_workload
          - Fail with a clear error when the array is not a member of a fleet, since
          the module requires a Fusion fleet environment\n\n## New Modules\n\n- purestorage.flasharray.purefa\\_tgroup
          - Manage topology groups on Everpure FlashArrays\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/osism/release).\n<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMzEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjIzMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSJdfQ==-->\n"
        change_url: https://github.com/osism/release/pull/2546
        commit_id: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        patchset: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
        project:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          name: osism/release
          short_name: release
          src_dir: src/github.com/osism/release
        topic: null
      job: yamllint
      jobtags: []
      max_attempts: 3
      message: Y2hvcmUoZGVwcyk6IHVwZGF0ZSBkZXBlbmRlbmN5IHB1cmVzdG9yYWdlLmZsYXNoYXJyYXkgdG8gdjEuNDMuMAoKVGhpcyBQUiBjb250YWlucyB0aGUgZm9sbG93aW5nIHVwZGF0ZXM6Cgp8IFBhY2thZ2UgfCBVcGRhdGUgfCBDaGFuZ2UgfAp8LS0tfC0tLXwtLS18CnwgW3B1cmVzdG9yYWdlLmZsYXNoYXJyYXldKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9FdmVycHVyZS1BbnNpYmxlL0ZsYXNoQXJyYXktQ29sbGVjdGlvbikgfCBtaW5vciB8IGAxLjQyLjBgIOKGkiBgMS40My4wYCB8CgotLS0KCiMjIyBSZWxlYXNlIE5vdGVzCgo8ZGV0YWlscz4KPHN1bW1hcnk+RXZlcnB1cmUtQW5zaWJsZS9GbGFzaEFycmF5LUNvbGxlY3Rpb24gKHB1cmVzdG9yYWdlLmZsYXNoYXJyYXkpPC9zdW1tYXJ5PgoKIyMjIFtgdjEuNDMuMGBdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9FdmVycHVyZS1BbnNpYmxlL0ZsYXNoQXJyYXktQ29sbGVjdGlvbi9ibG9iL0hFQUQvQ0hBTkdFTE9HLnJzdCN2MTQzMCkKCltDb21wYXJlIFNvdXJjZV0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL0V2ZXJwdXJlLUFuc2libGUvRmxhc2hBcnJheS1Db2xsZWN0aW9uL2NvbXBhcmUvMS40Mi4wLi4uMS40My4wKQoKXD09PT09PT0KCiMjIE1pbm9yIENoYW5nZXMKCi0gQWxsIFRpZXIgNSBtb2R1bGVzIHJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgY29udGV4dC1hd2FyZSBBUEkgY2FsbHMuCi0gbW9kdWxlXF91dGlscy9hcGlcX2hlbHBlcnMgLSBBZGRlZCBjZW50cmFsaXplZCBBUEkgaGVscGVyIGZ1bmN0aW9ucyB0byByZWR1Y2UgY29kZSBkdXBsaWNhdGlvbiBhY3Jvc3MgbW9kdWxlcwotIG1vZHVsZVxfdXRpbHMvYXBpXF9oZWxwZXJzIC0gQWRkZWQgY2hlY2tcX2FwaVxfdmVyc2lvbigpIGZvciBjYWNoZWQgQVBJIHZlcnNpb24gY2hlY2tpbmcKLSBtb2R1bGVcX3V0aWxzL2FwaVxfaGVscGVycyAtIEFkZGVkIGNoZWNrXF9yZXNwb25zZSgpIGZvciBzdGFuZGFyZGl6ZWQgcmVzcG9uc2UgdmFsaWRhdGlvbgotIG1vZHVsZVxfdXRpbHMvYXBpXF9oZWxwZXJzIC0gQWRkZWQgZ2V0XF93aXRoXF9jb250ZXh0KCkgZm9yIGNvbnRleHQtYXdhcmUgQVBJIGNhbGxzIGVsaW1pbmF0aW5nIDUwMCsgZHVwbGljYXRlZCBwYXR0ZXJucwotIG1vZHVsZVxfdXRpbHMvZXJyb3JcX2hhbmRsZXJzIC0gQWRkZWQgaGFuZGxlXF9hdXRoXF9lcnJvcigpIGZvciBpbXByb3ZlZCBhdXRoZW50aWNhdGlvbiBlcnJvciBtZXNzYWdlcwotIG1vZHVsZVxfdXRpbHMvZXJyb3JcX2hhbmRsZXJzIC0gQWRkZWQgc2FmZVxfYXBpXF9jYWxsKCkgZm9yIGNvbXByZWhlbnNpdmUgZXJyb3IgaGFuZGxpbmcgd3JhcHBlcgotIG1vZHVsZVxfdXRpbHMvZXJyb3JcX2hhbmRsZXJzIC0gQWRkZWQgc3RhbmRhcmRpemVkIGVycm9yIGhhbmRsaW5nIGZyYW1ld29yayB3aXRoIEZsYXNoQXJyYXkgZXhjZXB0aW9uIGhpZXJhcmNoeQotIHB1cmVmYSAtIEFkZCBBUEktY2xpZW50IHRva2VuIGF1dGhlbnRpY2F0aW9uIGFzIGFuIGFsdGVybmF0aXZlIHRvIGBhcGlfdG9rZW5gLCB2aWEgYSBwcmUtc2lnbmVkIGBpZF90b2tlbmAgb3IgYSBgcHJpdmF0ZV9rZXlfZmlsZWAgKHdpdGggYGNsaWVudF9pZGAsIGBrZXlfaWRgLCBgaXNzdWVyYCwgYHVzZXJuYW1lYCkuCi0gcHVyZWZhXF9hZCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfYWRtaW4gLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX2FsZXJ0IC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9hcGljbGllbnQgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBgY2hlY2tfcmVzcG9uc2UoKWAgQVBJIGhlbHBlci4KLSBwdXJlZmFcX2FycmF5bmFtZSAtIFVzZSBnZXRcX3dpdGhcX2NvbnRleHQoKSBhbmQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVycy4KLSBwdXJlZmFcX2F1ZGl0cyAtIFVzZSBnZXRcX3dpdGhcX2NvbnRleHQoKSBoZWxwZXIgYW5kIGZpeCBkdXBsaWNhdGUgY29kZSBidWcuCi0gcHVyZWZhXF9iYW5uZXIgLSBVc2UgZ2V0XF93aXRoXF9jb250ZXh0KCkgYW5kIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlcnMuCi0gcHVyZWZhXF9jYnNleHBhbmQgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX2NlcnRzIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9jb25uZWN0IC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9jb25zb2xlIC0gVXNlIGdldFxfd2l0aFxfY29udGV4dCgpIGFuZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXJzLgotIHB1cmVmYVxfZGVmYXVsdFxfcHJvdGVjdGlvbiAtIFVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGNvbnRleHQtYXdhcmUgQVBJIGNhbGxzIGFuZCBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX2RpcmVjdG9yeSAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfZGlyc25hcCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfZG5zIC0gQWRkZWQgRnVzaW9uIHN1cHBvcnQKLSBwdXJlZmFcX2RucyAtIFVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGNvbnRleHQtYXdhcmUgQVBJIGNhbGxzIGFuZCBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX2RzIC0gVXNlIGdldFxfd2l0aFxfY29udGV4dCgpIGFuZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXJzLgotIHB1cmVmYVxfZHNyb2xlIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9kc3JvbGVcX29sZCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfZW5kcG9pbnQgLSBVc2UgY2VudHJhbGl6ZWQgYXBpXF9oZWxwZXJzIGZvciBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX2VyYWRpY2F0aW9uIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYXBpXF9oZWxwZXJzIGZvciBjb250ZXh0LWF3YXJlIEFQSSBjYWxscwotIHB1cmVmYVxfZXJhZGljYXRpb24gLSBTaW1wbGlmaWVkIGVycm9yIGhhbmRsaW5nIHVzaW5nIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlcgotIHB1cmVmYVxfZXVsYSAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciBmb3IgQVBJIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfZXhwb3J0IC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9maWxlIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9mbGVldCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfZnMgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBgY2hlY2tfcmVzcG9uc2UoKWAgQVBJIGhlbHBlci4KLSBwdXJlZmFcX2hhcmR3YXJlIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVyIGZvciBBUEkgZXJyb3IgaGFuZGxpbmcuCi0gcHVyZWZhXF9oZyAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgZXJyb3IgaGFuZGxpbmcKLSBwdXJlZmFcX2hvc3QgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBgYXBpX2hlbHBlcnNgIGZ1bmN0aW9ucyAoZ2V0XF93aXRoXF9jb250ZXh0LCBjaGVja1xfcmVzcG9uc2UpIHJlZHVjaW5nIGNvZGUgYnkgMzE3IGxpbmVzCi0gcHVyZWZhXF9pbmZvIC0gQWRkIHRoZSB0Z3JvdXBzIGdhdGhlclxfc3Vic2V0IGZvciB0b3BvbG9neSBncm91cCByZXBvcnRpbmcuCi0gcHVyZWZhXF9rbWlwIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9tYWludGVuYW5jZSAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciBmb3IgQVBJIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfbWVzc2FnZXMgLSBVc2UgZ2V0XF93aXRoXF9jb250ZXh0KCkgaGVscGVyLgotIHB1cmVmYVxfbmV0d29yayAtIFVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfbnRwIC0gVXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgY29udGV4dC1hd2FyZSBBUEkgY2FsbHMgYW5kIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfb2ZmbG9hZCAtIFVzZSBnZXRcX3dpdGhcX2NvbnRleHQoKSBhbmQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVycy4KLSBwdXJlZmFcX3BnIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVyIGZvciBBUEkgZXJyb3IgaGFuZGxpbmcuCi0gcHVyZWZhXF9wZ3NjaGVkIC0gVXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgY29udGV4dC1hd2FyZSBBUEkgY2FsbHMgYW5kIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfcGdzbmFwIC0gQWRkZWQgYHJlc3RvcmU9YWxsYCBvcHRpb24gdG8gcmVzdG9yZSBhbGwgbWVtYmVyIHZvbHVtZXMgZnJvbSBhIHByb3RlY3Rpb24gZ3JvdXAgc25hcHNob3QgYXQgb25jZSB1c2luZyBhIHNpbmdsZSBBUEkgY2FsbCBpbnN0ZWFkIG9mIGl0ZXJhdGluZyB0aHJvdWdoIGVhY2ggdm9sdW1lIGluZGl2aWR1YWxseQotIHB1cmVmYVxfcGdzbmFwIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYXBpXF9oZWxwZXJzIGZvciBlcnJvciBoYW5kbGluZwotIHB1cmVmYVxfcGhvbmVob21lIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgYGNoZWNrX3Jlc3BvbnNlKClgIEFQSSBoZWxwZXIuCi0gcHVyZWZhXF9wb2QgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX3BvZFxfcmVwbGljYSAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfcHJveHkgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX3JhIC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVyIGZvciBBUEkgZXJyb3IgaGFuZGxpbmcuCi0gcHVyZWZhXF9yZWFsbSAtIFVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfc2FtbCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfc21pcyAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciBmb3IgQVBJIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfc210cCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciBmb3IgQVBJIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfc25hcCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgZXJyb3IgaGFuZGxpbmcKLSBwdXJlZmFcX3NubXAgLSBVc2UgY2VudHJhbGl6ZWQgYXBpXF9oZWxwZXJzIGZvciBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX3NubXBcX2FnZW50IC0gUmVmYWN0b3JlZCB0byB1c2UgY2VudHJhbGl6ZWQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVyIGZvciBBUEkgZXJyb3IgaGFuZGxpbmcuCi0gcHVyZWZhXF9zc28gLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX3N1Ym5ldCAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGBjaGVja19yZXNwb25zZSgpYCBBUEkgaGVscGVyLgotIHB1cmVmYVxfc3lzbG9nIC0gVXNlIGdldFxfd2l0aFxfY29udGV4dCgpIGFuZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXJzLgotIHB1cmVmYVxfc3lzbG9nXF9zZXR0aW5ncyAtIFVzZSBnZXRcX3dpdGhcX2NvbnRleHQoKSBhbmQgY2hlY2tcX3Jlc3BvbnNlKCkgaGVscGVycy4KLSBwdXJlZmFcX3RpbWVvdXQgLSBVc2UgZ2V0XF93aXRoXF9jb250ZXh0KCkgYW5kIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlcnMuCi0gcHVyZWZhXF90b2tlbiAtIFJlZmFjdG9yZWQgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciBmb3IgQVBJIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfdXNlciAtIFVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGVycm9yIGhhbmRsaW5nLgotIHB1cmVmYVxfdmcgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBhcGlcX2hlbHBlcnMgZm9yIGVycm9yIGhhbmRsaW5nCi0gcHVyZWZhXF92bGFuIC0gVXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgZXJyb3IgaGFuZGxpbmcuCi0gcHVyZWZhXF92bmMgLSBSZWZhY3RvcmVkIHRvIHVzZSBjZW50cmFsaXplZCBjaGVja1xfcmVzcG9uc2UoKSBoZWxwZXIgZm9yIEFQSSBlcnJvciBoYW5kbGluZy4KLSBwdXJlZmFcX3ZvbHVtZSAtIFJlZmFjdG9yZWQgZXJyb3IgaGFuZGxpbmcgdG8gdXNlIGNlbnRyYWxpemVkIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlciAoW1B1cmUtU3RvcmFnZS1BbnNpYmxlIzkzMl0oaHR0cHM6Ly9yZWRpcmVjdC5naXRodWIuY29tL1B1cmUtU3RvcmFnZS1BbnNpYmxlL0ZsYXNoQXJyYXktQ29sbGVjdGlvbi9wdWxsLzkzMikpCi0gcHVyZWZhXF92b2x1bWVcX3RhZ3MgLSBVc2UgZ2V0XF93aXRoXF9jb250ZXh0KCkgYW5kIGNoZWNrXF9yZXNwb25zZSgpIGhlbHBlcnMuCi0gcHVyZWZhXF93b3JrbG9hZCAtIEFkZGVkIGN1c3RvbSBwYXJhbWV0ZXJzIHN1cHBvcnQKLSBwdXJlZmFcX3dvcmtsb2FkIC0gVXNlIGNlbnRyYWxpemVkIGFwaVxfaGVscGVycyBmb3IgZXJyb3IgaGFuZGxpbmcuCgojIyBCdWdmaXhlcwoKLSBwdXJlZmFcX2RucyAtIEZpeGVkIGlzc3VlIHdpdGggcHVyZWZhXF9kbnMgbm90IHVwZGF0aW5nIEROUyBjb25maWcgb24gcmVtb3RlIGFycmF5cyBjb3JyZWN0bHkKLSBwdXJlZmFcX2hnIC0gRGVmYXVsdCBhbiBlbXB0eSBjb250ZXh0IHRvIHRoZSBsb2NhbCBhcnJheSBuYW1lIHRvIGF2b2lkIGFuIGludGVybmFsIGVycm9yIG9uIG5ld2VyIFB1cml0eSAoW1B1cmUtU3RvcmFnZS1BbnNpYmxlIzEwMDVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9QdXJlLVN0b3JhZ2UtQW5zaWJsZS9GbGFzaEFycmF5LUNvbGxlY3Rpb24vaXNzdWVzLzEwMDUpKQotIHB1cmVmYVxfaGcgLSBPbmx5IGRlZmF1bHQgdGhlIGNvbnRleHQgdG8gdGhlIGxvY2FsIGFycmF5IG5hbWUgd2hlbiB0aGUgYXJyYXkgaXMgYSBmbGVldCBtZW1iZXIsIHNvIHN0YW5kYWxvbmUgYXJyYXlzIGRvIG5vdCBzZW5kIGZsZWV0IGNvbnRleHQgdGhhdCB3b3VsZCBmYWlsIG9uIHN0cmljdGVyIFB1cml0eSByZWxlYXNlcwotIHB1cmVmYVxfaG9zdCAtIEZpeGVkIGlzc3VlIHdpdGggcHVyZWZhXF9ob3N0IG5vdCB1cGRhdGluZyBob3N0IGNvbmZpZyBvbiByZW1vdGUgYXJyYXlzIGNvcnJlY3RseQotIHB1cmVmYVxfbmV0d29yayAtIEZpeGVkIGNyYXNoIHdoZW4gY2xlYXJpbmcgSVAgYWRkcmVzcyB3aXRoIDAuMC4wLjAvMCB3aXRob3V0IGdhdGV3YXkKLSBwdXJlZmFcX25ldHdvcmsgLSBGaXhlZCBjcmFzaCB3aGVuIHNldHRpbmcgZ2F0ZXdheSB3aXRob3V0IGFuIElQIGFkZHJlc3MgY29uZmlndXJlZAotIHB1cmVmYVxfb2ZmbG9hZCAtIEZpeGVkIGJyb2tlbiByZXF1aXJlZFxfaWYgdmFsaWRhdGlvbiB0aGF0IG5ldmVyIGV4ZWN1dGVkIGR1ZSB0byBjb21wYXJpbmcgYXJndW1lbnRcX3NwZWMgZGljdGlvbmFyeSB0byBzdHJpbmcgaW5zdGVhZCBvZiBwYXJhbWV0ZXIgdmFsdWUKLSBwdXJlZmFcX3BnIC0gRGVmYXVsdCBhbiBlbXB0eSBjb250ZXh0IHRvIHRoZSBsb2NhbCBhcnJheSBuYW1lIHRvIGF2b2lkIGFuIGludGVybmFsIGVycm9yIG9uIG5ld2VyIFB1cml0eSAoW1B1cmUtU3RvcmFnZS1BbnNpYmxlIzEwMDVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9QdXJlLVN0b3JhZ2UtQW5zaWJsZS9GbGFzaEFycmF5LUNvbGxlY3Rpb24vaXNzdWVzLzEwMDUpKQotIHB1cmVmYVxfcGcgLSBGaXhlZCBhZGRpbmcgaG9zdGdyb3VwcyB0byBlbXB0eSBwcm90ZWN0aW9uIGdyb3VwIHVzaW5nIHdyb25nIHBhcmFtZXRlcgotIHB1cmVmYVxfcGcgLSBPbmx5IGRlZmF1bHQgdGhlIGNvbnRleHQgdG8gdGhlIGxvY2FsIGFycmF5IG5hbWUgd2hlbiB0aGUgYXJyYXkgaXMgYSBmbGVldCBtZW1iZXIsIHNvIHN0YW5kYWxvbmUgYXJyYXlzIGRvIG5vdCBzZW5kIGZsZWV0IGNvbnRleHQgdGhhdCB3b3VsZCBmYWlsIG9uIHN0cmljdGVyIFB1cml0eSByZWxlYXNlcwotIHB1cmVmYVxfcGdzY2hlZCAtIEZpeGVkIGlzc3VlIHdoZXJlIGBzbmFwX2F0YCBhbmQgYHJlcGxpY2F0ZV9hdGAgcGFyYW1ldGVycyB3ZXJlIHNlbnQgdG8gdGhlIEFQSSBldmVuIHdoZW4gZnJlcXVlbmN5IHdhcyBub3QgYSBtdWx0aXBsZSBvZiBkYXlzLCBjYXVzaW5nIEFQSSBlcnJvcnMuCi0gcHVyZWZhXF9wZ3NjaGVkIC0gRml4ZWQgcmVwbGljYXRlXF9hdCAiIiBhbmQgc25hcFxfYXQgIiIgbm90IGNsZWFyaW5nIHNjaGVkdWxlIHRpbWVzIGNvcnJlY3RseS4KLSBwdXJlZmFcX3Bnc25hcCAtIERlZmF1bHQgYW4gZW1wdHkgY29udGV4dCB0byB0aGUgbG9jYWwgYXJyYXkgbmFtZSB0byBhdm9pZCBhbiBpbnRlcm5hbCBlcnJvciBvbiBuZXdlciBQdXJpdHkgKFtQdXJlLVN0b3JhZ2UtQW5zaWJsZSMxMDA1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vUHVyZS1TdG9yYWdlLUFuc2libGUvRmxhc2hBcnJheS1Db2xsZWN0aW9uL2lzc3Vlcy8xMDA1KSkKLSBwdXJlZmFcX3Bnc25hcCAtIE9ubHkgZGVmYXVsdCB0aGUgY29udGV4dCB0byB0aGUgbG9jYWwgYXJyYXkgbmFtZSB3aGVuIHRoZSBhcnJheSBpcyBhIGZsZWV0IG1lbWJlciwgc28gc3RhbmRhbG9uZSBhcnJheXMgZG8gbm90IHNlbmQgZmxlZXQgY29udGV4dCB0aGF0IHdvdWxkIGZhaWwgb24gc3RyaWN0ZXIgUHVyaXR5IHJlbGVhc2VzCi0gcHVyZWZhXF9wZ3NuYXAgLSBSb3V0ZSBjb250ZXh0LWF3YXJlIEFQSSBjYWxscyB0aHJvdWdoIHRoZSBzaGFyZWQgYXBpXF9oZWxwZXJzIHNvIGNvbnRleHRcX25hbWVzIGlzIG9ubHkgc2VudCB3aGVuIGEgY29udGV4dCBpcyBzZXQKLSBwdXJlZmFcX3BvZCAtIEFkZCBpZGVtcG90ZW5jeSBjaGVja3MgZm9yIGFscmVhZHkgcHJvbW90ZWQvZGVtb3RlZCBwb2RzCi0gcHVyZWZhXF9wb2QgLSBGaXggVW5ib3VuZExvY2FsRXJyb3Igd2hlbiBwcm9tb3RpbmcgcG9kIHdpdGhvdXQgdW5kby1kZW1vdGUgcG9kCi0gcHVyZWZhXF9wb2QgLSBGaXggdW5kby1kZW1vdGUgcG9kIGhhbmRsaW5nIGR1cmluZyBBY3RpdmVEUiBwcm9tb3Rpb24KLSBwdXJlZmFcX3BvZCAtIEZpeGVkIHVucmVhY2hhYmxlIGByZWNvdmVyX3BvZCgpYCBicmFuY2ggaW4gYG1haW4oKWAgYnkgcmVvcmRlcmluZyBjb25kaXRpb25zIHRvIGNoZWNrIGZvciBkZXN0cm95ZWQgcG9kcyBiZWZvcmUgY3JlYXRpbmcgbmV3IG9uZXMKLSBwdXJlZmFcX3BvZCAtIEZpeGVkIHVucmVhY2hhYmxlIHF1aWVzY2luZyBzdGF0dXMgY2hlY2sgaW4gYHVwZGF0ZV9wb2QoKWAgdGhhdCB3YXMgaW5zaWRlIGEgYmxvY2sgcmVxdWlyaW5nIGBwcm9tb3Rpb25fc3RhdHVzID09ICdkZW1vdGVkJ2AKLSBwdXJlZmFcX3BvZCAtIFJlbW92ZWQgZHVwbGljYXRlIGBjbG9uZV9wb2RgIGNvbmRpdGlvbiBpbiBgbWFpbigpYAotIHB1cmVmYVxfcG9saWN5IC0gQWRkZWQgbWF4XF9wYXNzd29yZFxfYWdlIHRvIGN1cnJlbnRcX3B3ZFxfcG9saWN5IGRpY3Rpb25hcnkgYW5kIFBvbGljeVBhc3N3b3JkIEFQSSBjYWxscwotIHB1cmVmYVxfcG9saWN5IC0gQWRkZWQgbWlzc2luZyBtYXhcX3Bhc3N3b3JkXF9hZ2UgcGFyYW1ldGVyIHRvIERPQ1VNRU5UQVRJT04sIGFyZ3VtZW50XF9zcGVjLCBhbmQgcGFzc3dvcmQgcG9saWN5IHVwZGF0ZSBsb2dpYwotIHB1cmVmYVxfcG9saWN5IC0gQWRkZWQgbWlzc2luZyBtaW5cX3Bhc3N3b3JkXF9hZ2UgcGFyYW1ldGVyIHRvIERPQ1VNRU5UQVRJT04sIGFyZ3VtZW50XF9zcGVjLCBhbmQgcGFzc3dvcmQgcG9saWN5IHVwZGF0ZSBsb2dpYwotIHB1cmVmYVxfcG9saWN5IC0gQ29ycmVjdGVkIG1pblxfcGFzc3dvcmRcX2FnZSByYW5nZSB0byAwLTcgZGF5cyBhbmQgbWF4XF9wYXNzd29yZFxfYWdlIHJhbmdlIHRvIDAgKGRpc2FibGVkKSBvciAxLTk5OTk5IGRheXMgcGVyIFNESyBzcGVjaWZpY2F0aW9ucwotIHB1cmVmYVxfcG9saWN5IC0gRW5oYW5jZWQgbWluXF9wYXNzd29yZFxfYWdlIGFuZCBtYXhcX3Bhc3N3b3JkXF9hZ2UgdG8gYWNjZXB0IGh1bWFuLXJlYWRhYmxlIHRpbWUgcGVyaW9kcyAoZS5nLiwgJzFkJywgJzkwZCcsICcyaCcpIGluIGFkZGl0aW9uIHRvIGludGVnZXIgc2Vjb25kcwotIHB1cmVmYVxfcG9saWN5IC0gRml4ZWQgS2V5RXJyb3Igd2hlbiBhY2Nlc3NpbmcgbWluXF9wYXNzd29yZFxfYWdlIGFuZCBtYXhcX3Bhc3N3b3JkXF9hZ2UgcGFyYW1ldGVycyB0aGF0IHdlcmUgdXNlZCBpbiBjb2RlIGJ1dCBub3QgZGVmaW5lZCBpbiBhcmd1bWVudFxfc3BlYwotIHB1cmVmYVxfcG9saWN5IC0gRml4ZWQgYFZlcnNpb25zIG9wdGlvbnMgbXVzdCBiZSB0aGUgc2FtZSBmb3IgYWxsIE5GUyBleHBvcnQgcG9saWN5IHJ1bGVzYCB3aGVuIGFkZGluZyBtdWx0aXBsZSBjbGllbnRzIHRvIGFuIGV4aXN0aW5nIE5GUyBwb2xpY3kgYnkgYWRkaW5nIG1pc3NpbmcgYG5mc192ZXJzaW9uYCBwYXJhbWV0ZXIKLSBwdXJlZmFcX3BvbGljeSAtIEZpeGVkIGNyaXRpY2FsIHJ1bnRpbWUgZXJyb3IgaW4gcXVvdGEgcG9saWN5IHJ1bGUgZGVsZXRpb24gKGxpbmUgOTQyKSB3aGVyZSBydWxlc1xbcnVsZV0ubm90aWZpY2F0aW9ucyBpbmNvcnJlY3RseSB1c2VkIG9iamVjdCBhcyBkaWN0aW9uYXJ5IGtleQotIHB1cmVmYVxfcG9saWN5IC0gRml4ZWQgZHVwbGljYXRlIGNvbmRpdGlvbiBjaGVjayAobGluZSAyNzg0KSB3aGVyZSBjaGFuZ2VkXF9ydWxlIHdhcyBjaGVja2VkIHR3aWNlIGluIHRoZSBzYW1lIGlmIHN0YXRlbWVudAotIHB1cmVmYVxfcG9saWN5IC0gRml4ZWQgZHVwbGljYXRlIHZhcmlhYmxlIGluaXRpYWxpemF0aW9uIGluIHVwZGF0ZVxfcG9saWN5KCkgZnVuY3Rpb24gKGxpbmUgMTUwOSkgd2hlcmUgY2hhbmdlZFxfcnVsZSB3YXMgYXNzaWduZWQgdHdpY2UKLSBwdXJlZmFcX3BvbGljeSAtIEZpeGVkIGxvY2tvdXRcX2R1cmF0aW9uIG5vdCBiZWluZyBhcHBsaWVkIHdoZW4gdXBkYXRpbmcgcGFzc3dvcmQgcG9saWN5Ci0gcHVyZWZhXF9wb2xpY3kgLSBGaXhlZCBtaW5cX3Bhc3N3b3JkXF9hZ2UgYW5kIG1heFxfcGFzc3dvcmRcX2FnZSB0byBwcm9wZXJseSBjb252ZXJ0IGZyb20gaHVtYW4tcmVhZGFibGUgdGltZSBwZXJpb2RzIHRvIG1pbGxpc2Vjb25kcyBmb3IgU0RLIGNvbXBhdGliaWxpdHkKLSBwdXJlZmFcX3BvbGljeSAtIEZpeGVkIHBhc3N3b3JkIHBvbGljeSBwYXJhbXMgYmVpbmcgc2V0IHRvIE5vbmUgd2hlbiB1cGRhdGluZyBvdGhlciBwYXJhbXMKLSBwdXJlZmFcX3BvbGljeSAtIEZpeGVkIHF1b3RhXF9ub3RpZmljYXRpb25zIG5vcm1hbGl6YXRpb24gdXNpbmcgd3Jvbmcgb3BlcmF0b3IKLSBwdXJlZmFcX3NtdHAgLSBGaXhlZCBgS2V5RXJyb3IgJ3VzZXJfbmFtZSdgIHdoZW4gY29uZmlndXJpbmcgU01UUCB3aXRoIGF1dGhlbnRpY2F0aW9uIGJ5IGNvcnJlY3RpbmcgcGFyYW1ldGVyIG5hbWUgZnJvbSBgbW9kdWxlLnBhcmFtc1sidXNlcl9uYW1lIl1gIHRvIGBtb2R1bGUucGFyYW1zWyJ1c2VyIl1gCi0gcHVyZWZhXF9zbmFwIC0gRGVmYXVsdCBhbiBlbXB0eSBjb250ZXh0IHRvIHRoZSBsb2NhbCBhcnJheSBuYW1lIHRvIGF2b2lkIGFuIGludGVybmFsIGVycm9yIG9uIG5ld2VyIFB1cml0eSAoW1B1cmUtU3RvcmFnZS1BbnNpYmxlIzEwMDVdKGh0dHBzOi8vcmVkaXJlY3QuZ2l0aHViLmNvbS9QdXJlLVN0b3JhZ2UtQW5zaWJsZS9GbGFzaEFycmF5LUNvbGxlY3Rpb24vaXNzdWVzLzEwMDUpKQotIHB1cmVmYVxfc25hcCAtIE9ubHkgZGVmYXVsdCB0aGUgY29udGV4dCB0byB0aGUgbG9jYWwgYXJyYXkgbmFtZSB3aGVuIHRoZSBhcnJheSBpcyBhIGZsZWV0IG1lbWJlciwgc28gc3RhbmRhbG9uZSBhcnJheXMgZG8gbm90IHNlbmQgZmxlZXQgY29udGV4dCB0aGF0IHdvdWxkIGZhaWwgb24gc3RyaWN0ZXIgUHVyaXR5IHJlbGVhc2VzCi0gcHVyZWZhXF9zbmFwIC0gT25seSBzZW5kIGNvbnRleHRcX25hbWVzIHdoZW4gYSBjb250ZXh0IGlzIHNldCwgc28gc3RhbmRhbG9uZSBhcnJheXMgZG8gbm90IHNlbmQgZmxlZXQgY29udGV4dCB0aGF0IHdvdWxkIGZhaWwgb24gc3RyaWN0ZXIgUHVyaXR5IHJlbGVhc2VzCi0gcHVyZWZhXF92ZyAtIERlZmF1bHQgYW4gZW1wdHkgY29udGV4dCB0byB0aGUgbG9jYWwgYXJyYXkgbmFtZSB0byBhdm9pZCBhbiBpbnRlcm5hbCBlcnJvciBvbiBuZXdlciBQdXJpdHkgKFtQdXJlLVN0b3JhZ2UtQW5zaWJsZSMxMDA1XShodHRwczovL3JlZGlyZWN0LmdpdGh1Yi5jb20vUHVyZS1TdG9yYWdlLUFuc2libGUvRmxhc2hBcnJheS1Db2xsZWN0aW9uL2lzc3Vlcy8xMDA1KSkKLSBwdXJlZmFcX3ZnIC0gT25seSBkZWZhdWx0IHRoZSBjb250ZXh0IHRvIHRoZSBsb2NhbCBhcnJheSBuYW1lIHdoZW4gdGhlIGFycmF5IGlzIGEgZmxlZXQgbWVtYmVyLCBzbyBzdGFuZGFsb25lIGFycmF5cyBkbyBub3Qgc2VuZCBmbGVldCBjb250ZXh0IHRoYXQgd291bGQgZmFpbCBvbiBzdHJpY3RlciBQdXJpdHkgcmVsZWFzZXMKLSBwdXJlZmFcX3ZvbHVtZSAtIE9ubHkgZGVmYXVsdCB0aGUgY29udGV4dCB0byB0aGUgbG9jYWwgYXJyYXkgbmFtZSB3aGVuIHRoZSBhcnJheSBpcyBhIGZsZWV0IG1lbWJlciwgc28gc3RhbmRhbG9uZSBhcnJheXMgZG8gbm90IHNlbmQgZmxlZXQgY29udGV4dCB0aGF0IHdvdWxkIGZhaWwgb24gc3RyaWN0ZXIgUHVyaXR5IHJlbGVhc2VzCi0gcHVyZWZhXF92b2x1bWUgLSBSb3V0ZSBhbGwgY29udGV4dC1hd2FyZSBBUEkgY2FsbHMgdGhyb3VnaCB0aGUgc2hhcmVkIGFwaVxfaGVscGVycyBzbyBjb250ZXh0XF9uYW1lcyBpcyBvbmx5IHNlbnQgd2hlbiBhIGNvbnRleHQgaXMgc2V0LCBhbmQgZml4IGFuIGludmVydGVkIHZlcnNpb24gY2hlY2sgb24gdGhlIHBvZC1tb3ZlIHBhdGgKLSBwdXJlZmFcX3dvcmtsb2FkIC0gRmFpbCB3aXRoIGEgY2xlYXIgZXJyb3Igd2hlbiB0aGUgYXJyYXkgaXMgbm90IGEgbWVtYmVyIG9mIGEgZmxlZXQsIHNpbmNlIHRoZSBtb2R1bGUgcmVxdWlyZXMgYSBGdXNpb24gZmxlZXQgZW52aXJvbm1lbnQKCiMjIE5ldyBNb2R1bGVzCgotIHB1cmVzdG9yYWdlLmZsYXNoYXJyYXkucHVyZWZhXF90Z3JvdXAgLSBNYW5hZ2UgdG9wb2xvZ3kgZ3JvdXBzIG9uIEV2ZXJwdXJlIEZsYXNoQXJyYXlzCgo8L2RldGFpbHM+CgotLS0KCiMjIyBDb25maWd1cmF0aW9uCgrwn5OFICoqU2NoZWR1bGUqKjogKFVUQykKCi0gQnJhbmNoIGNyZWF0aW9uCiAgLSBBdCBhbnkgdGltZSAobm8gc2NoZWR1bGUgZGVmaW5lZCkKLSBBdXRvbWVyZ2UKICAtIEF0IGFueSB0aW1lIChubyBzY2hlZHVsZSBkZWZpbmVkKQoK8J+apiAqKkF1dG9tZXJnZSoqOiBEaXNhYmxlZCBieSBjb25maWcuIFBsZWFzZSBtZXJnZSB0aGlzIG1hbnVhbGx5IG9uY2UgeW91IGFyZSBzYXRpc2ZpZWQuCgrimbsgKipSZWJhc2luZyoqOiBXaGVuZXZlciBQUiBiZWNvbWVzIGNvbmZsaWN0ZWQsIG9yIHlvdSB0aWNrIHRoZSByZWJhc2UvcmV0cnkgY2hlY2tib3guCgrwn5SVICoqSWdub3JlKio6IENsb3NlIHRoaXMgUFIgYW5kIHlvdSB3b24ndCBiZSByZW1pbmRlZCBhYm91dCB0aGlzIHVwZGF0ZSBhZ2Fpbi4KCi0tLQoKIC0gWyBdIDwhLS0gcmViYXNlLWNoZWNrIC0tPklmIHlvdSB3YW50IHRvIHJlYmFzZS9yZXRyeSB0aGlzIFBSLCBjaGVjayB0aGlzIGJveAoKLS0tCgpUaGlzIFBSIHdhcyBnZW5lcmF0ZWQgYnkgW01lbmQgUmVub3ZhdGVdKGh0dHBzOi8vbWVuZC5pby9yZW5vdmF0ZS8pLiBWaWV3IHRoZSBbcmVwb3NpdG9yeSBqb2IgbG9nXShodHRwczovL2RldmVsb3Blci5tZW5kLmlvL2dpdGh1Yi9vc2lzbS9yZWxlYXNlKS4KPCEtLXJlbm92YXRlLWRlYnVnOmV5SmpjbVZoZEdWa1NXNVdaWElpT2lJME15NHlNekV1TVNJc0luVndaR0YwWldSSmJsWmxjaUk2SWpRekxqSXpNUzR4SWl3aWRHRnlaMlYwUW5KaGJtTm9Jam9pYldGcGJpSXNJbXhoWW1Wc2N5STZXeUp5Wlc1dmRtRjBaU0pkZlE9PS0tPgo=
      patchset: 3692386a50f94d5ed3c03b682ba8c71aab4ee299
      pipeline: check
      playbook_context:
        playbook_projects:
          trusted/project_0/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 3d5c7b5973754999f7005857a00ce9168944f0f1
          trusted/project_1/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 038dd8b856c62af4433c8477c5cb3d0480847059
          trusted/project_2/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 0c74c57cedff2b36bb37ca68a5338d1c49991496
          untrusted/project_0/github.com/osism/zuul-jobs:
            canonical_name: github.com/osism/zuul-jobs
            checkout: main
            commit: 0c74c57cedff2b36bb37ca68a5338d1c49991496
          untrusted/project_1/github.com/osism/zuul-config:
            canonical_name: github.com/osism/zuul-config
            checkout: main
            commit: 3d5c7b5973754999f7005857a00ce9168944f0f1
          untrusted/project_2/github.com/osism/openinfra-zuul-jobs:
            canonical_name: github.com/osism/openinfra-zuul-jobs
            checkout: master
            commit: 038dd8b856c62af4433c8477c5cb3d0480847059
        playbooks:
        - path: untrusted/project_0/github.com/osism/zuul-jobs/playbooks/yamllint/run.yaml
          roles:
          - checkout: main
            checkout_description: zuul branch
            link_name: ansible/playbook_0/role_0/zuul-config
            link_target: untrusted/project_1/github.com/osism/zuul-config
            role_path: ansible/playbook_0/role_0/zuul-config/roles
          - checkout: master
            checkout_description: project default branch
            link_name: ansible/playbook_0/role_1/openinfra-zuul-jobs
            link_target: untrusted/project_2/github.com/osism/openinfra-zuul-jobs
            role_path: ansible/playbook_0/role_1/openinfra-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/osism/zuul-jobs
            role_path: ansible/playbook_0/role_2/zuul-jobs/roles
      post_review: false
      post_timeout: 1800
      pre_timeout: null
      project:
        canonical_hostname: github.com
        canonical_name: github.com/osism/release
        name: osism/release
        short_name: release
        src_dir: src/github.com/osism/release
      projects:
        github.com/osism/release:
          canonical_hostname: github.com
          canonical_name: github.com/osism/release
          checkout: main
          checkout_description: zuul branch
          commit: eb26a01bc2a569b2f9189b0485c3784a75e79410
          name: osism/release
          required: false
          short_name: release
          src_dir: src/github.com/osism/release
      ref: refs/pull/2546/head
      resources: {}
      tenant: osism
      timeout: 1800
      topic: null
      voting: true
