gitextract_16i2pstn/ ├── .github/ │ └── workflows/ │ ├── publish.yaml │ └── push.yaml ├── .gitignore ├── .mocharc.json ├── .prettierrc ├── Dockerfile ├── LICENSE ├── README.md ├── contracts/ │ ├── attesters/ │ │ ├── hydra-s1/ │ │ │ ├── HydraS1AccountboundAttester.sol │ │ │ ├── HydraS1SimpleAttester.sol │ │ │ ├── base/ │ │ │ │ ├── HydraS1Base.sol │ │ │ │ └── IHydraS1Base.sol │ │ │ ├── interfaces/ │ │ │ │ ├── IHydraS1AccountboundAttester.sol │ │ │ │ └── IHydraS1SimpleAttester.sol │ │ │ └── libs/ │ │ │ ├── HydraS1AccountboundLib.sol │ │ │ └── HydraS1Lib.sol │ │ └── pythia-1/ │ │ ├── Pythia1SimpleAttester.sol │ │ ├── base/ │ │ │ ├── IPythia1Base.sol │ │ │ └── Pythia1Base.sol │ │ ├── interfaces/ │ │ │ └── IPythia1SimpleAttester.sol │ │ └── libs/ │ │ └── Pythia1Lib.sol │ ├── core/ │ │ ├── AttestationsRegistry.sol │ │ ├── Attester.sol │ │ ├── Badges.sol │ │ ├── Front.sol │ │ ├── interfaces/ │ │ │ ├── IAttestationsRegistry.sol │ │ │ ├── IAttestationsRegistryConfigLogic.sol │ │ │ ├── IAttester.sol │ │ │ ├── IBadges.sol │ │ │ └── IFront.sol │ │ ├── libs/ │ │ │ ├── Structs.sol │ │ │ ├── attestations-registry/ │ │ │ │ ├── AttestationsRegistryConfigLogic.sol │ │ │ │ ├── AttestationsRegistryState.sol │ │ │ │ ├── InitializableLogic.sol │ │ │ │ ├── OwnableLogic.sol │ │ │ │ └── PausableLogic.sol │ │ │ └── utils/ │ │ │ ├── Address.sol │ │ │ ├── Bitmap256Bit.sol │ │ │ ├── Context.sol │ │ │ └── RangeLib.sol │ │ └── utils/ │ │ ├── AddressesProvider.sol │ │ └── interfaces/ │ │ └── IAddressesProvider.sol │ ├── libs/ │ │ ├── SismoLib.sol │ │ └── using-sismo/ │ │ └── UsingSismo.sol │ ├── periphery/ │ │ └── utils/ │ │ ├── AvailableRootsRegistry.sol │ │ ├── CommitmentMapperRegistry.sol │ │ ├── FrontendLib.sol │ │ ├── TransparentUpgradeableProxy.sol │ │ └── interfaces/ │ │ ├── IAvailableRootsRegistry.sol │ │ └── ICommitmentMapperRegistry.sol │ ├── tests/ │ │ ├── MockHydraS1SimpleAttester.sol │ │ └── mocks/ │ │ ├── MockAttestationsRegistry.sol │ │ ├── MockAttester.sol │ │ └── mockContractUsingSismoLib.sol │ └── zkdrop/ │ └── ZKBadgeboundERC721.sol ├── hardhat.config.ts ├── helper-hardhat-config.ts ├── package.json ├── scripts/ │ └── wait-for-local-chain.sh ├── tasks/ │ ├── addresses-provider/ │ │ └── set-batch.task.ts │ ├── available-roots-registry/ │ │ ├── register-for-attester.task.ts │ │ └── unregister-for-attester.task.ts │ ├── deploy-tasks/ │ │ ├── batch/ │ │ │ └── deploy-core.task.ts │ │ ├── deployments-config.ts │ │ ├── full/ │ │ │ ├── 0-deploy-core-and-hydra-s1-simple-and-accountbound-and-pythia1.task.ts │ │ │ ├── 1-deploy-pythia-1-simple.task.ts │ │ │ ├── 2-upgrade-proxies.task.ts │ │ │ ├── 2-upgrade-proxies.test-fork.ts │ │ │ ├── 3-new-hydra-s1-verifier-and-upgrade-hydra-s1-simple-proxy.task.ts │ │ │ ├── 3-new-hydra-s1-verifier-and-upgrade-hydra-s1-simple-proxy.test-fork.ts │ │ │ ├── 4-upgrade-attestations-registry-proxy-and-badges-proxy.task.ts │ │ │ ├── 4-upgrade-attestations-registry-proxy-and-badges-proxy.test-fork.ts │ │ │ ├── 5-upgrade-proxies-with-reinitializer/ │ │ │ │ ├── 5-upgrade-proxies-with-reinitializer-available-roots-registry.test-fork.ts │ │ │ │ ├── 5-upgrade-proxies-with-reinitializer-commitment-mapper-registry.test-fork.ts │ │ │ │ └── 5-upgrade-proxies-with-reinitializer-pythia1.test-fork.ts │ │ │ ├── 5-upgrade-proxies-with-reinitializer.task.ts │ │ │ ├── 6-7-8-fork-test/ │ │ │ │ └── 6-7-8.test-fork.ts │ │ │ ├── 6-deploy-sismo-addresses-provider.task.ts │ │ │ ├── 7-upgrade-hydra-s1-accountbound-and-pythia-1-proxies.task.ts │ │ │ ├── 9-fork-test/ │ │ │ │ └── 9-upgrade-addresses-provider-on-testnets.test-fork.ts │ │ │ ├── 9-upgrade-addresses-provider-on-testnets.task.ts │ │ │ ├── local/ │ │ │ │ └── deploy-full-local.task.ts │ │ │ └── staging/ │ │ │ └── deploy-sismo-addresses-provider-staging.task.ts │ │ ├── tests/ │ │ │ ├── deploy-mock-attestations-registry.task.ts │ │ │ ├── deploy-mock-attester-and-core.task.ts │ │ │ ├── deploy-mock-attester.task.ts │ │ │ ├── deploy-mock-contract-using-sismo-lib.task.ts │ │ │ └── deploy-zk-badgebound-erc721.task.ts │ │ ├── unit/ │ │ │ ├── attesters/ │ │ │ │ ├── hydra-s1/ │ │ │ │ │ ├── deploy-hydra-s1-accountbound-attester.task.ts │ │ │ │ │ ├── deploy-hydra-s1-simple-attester.task.ts │ │ │ │ │ └── deploy-hydra-s1-verifier.task.ts │ │ │ │ └── pythia-1/ │ │ │ │ ├── deploy-pythia-1-simple-attester.task.ts │ │ │ │ └── deploy-pythia-1-verifier.task.ts │ │ │ ├── core/ │ │ │ │ ├── deploy-attestations-registry.task.ts │ │ │ │ ├── deploy-badges.task.ts │ │ │ │ ├── deploy-front.task.ts │ │ │ │ └── deploy-sismo-addresses-provider.task.ts │ │ │ └── periphery/ │ │ │ ├── deploy-available-roots-registry.task.ts │ │ │ ├── deploy-commitment-mapper-registry.task.ts │ │ │ └── deploy-frontend-lib.task.ts │ │ ├── utils/ │ │ │ ├── deployment.ts │ │ │ ├── deployments-config-types.ts │ │ │ └── index.ts │ │ └── zkdrop/ │ │ ├── deploy-mergooor-pass.task.ts │ │ ├── deploy-ziki-pass-staging.task.ts │ │ └── deploy-ziki-pass-testnet.task.ts │ ├── helpers/ │ │ ├── authorizations/ │ │ │ ├── access-control-grant-role.task.ts │ │ │ ├── access-control-revoke-role.task.ts │ │ │ ├── attestations-registry-authorize-range.task.ts │ │ │ ├── attestations-registry-transfer-ownership.task.ts │ │ │ ├── change-proxy-admin.task.ts │ │ │ └── ownable-transfer-ownership.task.ts │ │ ├── forge-create2-transaction.task.ts │ │ ├── print-accounts.task.ts │ │ ├── print-storage-layout.task.ts │ │ ├── proxy/ │ │ │ └── upgrade-proxy.task.ts │ │ └── verify-contract.task.ts │ └── utils/ │ ├── common-options.ts │ ├── confirm.ts │ ├── index.ts │ ├── relayer.ts │ └── types.ts ├── test/ │ ├── e2e/ │ │ └── e2e.test.ts │ ├── unit/ │ │ ├── attesters/ │ │ │ ├── hydra-s1/ │ │ │ │ ├── hydra-s1-accountbound-attester.test.ts │ │ │ │ └── hydra-s1-simple-attester.test.ts │ │ │ └── pythia-1/ │ │ │ └── pythia-1-simple-attester.test.ts │ │ ├── core/ │ │ │ ├── attestations-registry/ │ │ │ │ ├── attestations-registry-config-logic.test.ts │ │ │ │ └── attestations-registry.test.ts │ │ │ ├── badges.test.ts │ │ │ ├── front.test.ts │ │ │ └── utils/ │ │ │ └── sismo-addresses-provider.test.ts │ │ ├── libs/ │ │ │ └── using-sismo/ │ │ │ └── using-sismo.test.ts │ │ ├── periphery/ │ │ │ └── utils/ │ │ │ ├── available-roots-registry.test.ts │ │ │ ├── commitment-mapper-registry.test.ts │ │ │ └── frontend-lib.test.ts │ │ └── zkdrop/ │ │ └── zk-badgebound-erc721.test.ts │ └── utils/ │ ├── attestation-logic.ts │ ├── evm.ts │ ├── expectEvent.ts │ ├── hydra-s1-accountbound.ts │ ├── hydra-s1.ts │ ├── index.ts │ ├── pythia-1.ts │ ├── setup.ts │ └── test-helpers.ts ├── tsconfig.json └── utils/ ├── constants.ts ├── index.ts ├── proxy.ts └── singletonFactory.ts