├── .gitignore ├── README.md ├── alienspaceship ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── foundry.toml │ ├── lib │ │ ├── forge-ctf │ │ │ └── src │ │ │ │ ├── CTFDeployment.sol │ │ │ │ └── CTFSolver.sol │ │ └── forge-std │ │ │ ├── .github │ │ │ └── workflows │ │ │ │ ├── ci.yml │ │ │ │ └── sync.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ └── ds-test │ │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ └── build.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── LICENSE │ │ │ │ ├── Makefile │ │ │ │ ├── default.nix │ │ │ │ ├── demo │ │ │ │ └── demo.sol │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ ├── test.sol │ │ │ │ └── test.t.sol │ │ │ ├── package.json │ │ │ ├── src │ │ │ ├── Base.sol │ │ │ ├── Script.sol │ │ │ ├── StdAssertions.sol │ │ │ ├── StdChains.sol │ │ │ ├── StdCheats.sol │ │ │ ├── StdError.sol │ │ │ ├── StdInvariant.sol │ │ │ ├── StdJson.sol │ │ │ ├── StdMath.sol │ │ │ ├── StdStorage.sol │ │ │ ├── StdStyle.sol │ │ │ ├── StdUtils.sol │ │ │ ├── Test.sol │ │ │ ├── Vm.sol │ │ │ ├── console.sol │ │ │ ├── console2.sol │ │ │ ├── interfaces │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC20.sol │ │ │ │ ├── IERC4626.sol │ │ │ │ ├── IERC721.sol │ │ │ │ └── IMulticall3.sol │ │ │ └── safeconsole.sol │ │ │ └── test │ │ │ ├── StdAssertions.t.sol │ │ │ ├── StdChains.t.sol │ │ │ ├── StdCheats.t.sol │ │ │ ├── StdError.t.sol │ │ │ ├── StdMath.t.sol │ │ │ ├── StdStorage.t.sol │ │ │ ├── StdStyle.t.sol │ │ │ ├── StdUtils.t.sol │ │ │ ├── Vm.t.sol │ │ │ ├── compilation │ │ │ ├── CompilationScript.sol │ │ │ ├── CompilationScriptBase.sol │ │ │ ├── CompilationTest.sol │ │ │ └── CompilationTestBase.sol │ │ │ └── fixtures │ │ │ └── broadcast.log.json │ ├── script │ │ ├── Deploy.s.sol │ │ └── Solve.s.sol │ └── src │ │ ├── AlienSpaceship.sol │ │ └── Challenge.sol │ └── solve.py ├── beef ├── .challengeignore ├── README.md ├── challenge.yaml ├── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ │ ├── .env │ │ ├── .gitignore │ │ ├── foundry.toml │ │ ├── lib │ │ │ ├── forge-ctf │ │ │ │ └── src │ │ │ │ │ ├── CTFDeployment.sol │ │ │ │ │ └── CTFSolver.sol │ │ │ ├── forge-std │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── ci.yml │ │ │ │ │ │ └── sync.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── LICENSE-APACHE │ │ │ │ ├── LICENSE-MIT │ │ │ │ ├── README.md │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ │ └── ds-test │ │ │ │ │ │ ├── .github │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ └── build.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ ├── demo │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── src │ │ │ │ │ │ ├── test.sol │ │ │ │ │ │ └── test.t.sol │ │ │ │ ├── package.json │ │ │ │ ├── src │ │ │ │ │ ├── Base.sol │ │ │ │ │ ├── Script.sol │ │ │ │ │ ├── StdAssertions.sol │ │ │ │ │ ├── StdChains.sol │ │ │ │ │ ├── StdCheats.sol │ │ │ │ │ ├── StdError.sol │ │ │ │ │ ├── StdInvariant.sol │ │ │ │ │ ├── StdJson.sol │ │ │ │ │ ├── StdMath.sol │ │ │ │ │ ├── StdStorage.sol │ │ │ │ │ ├── StdStyle.sol │ │ │ │ │ ├── StdUtils.sol │ │ │ │ │ ├── Test.sol │ │ │ │ │ ├── Vm.sol │ │ │ │ │ ├── console.sol │ │ │ │ │ ├── console2.sol │ │ │ │ │ ├── interfaces │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ └── IMulticall3.sol │ │ │ │ │ └── safeconsole.sol │ │ │ │ └── test │ │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ │ ├── StdChains.t.sol │ │ │ │ │ ├── StdCheats.t.sol │ │ │ │ │ ├── StdError.t.sol │ │ │ │ │ ├── StdMath.t.sol │ │ │ │ │ ├── StdStorage.t.sol │ │ │ │ │ ├── StdStyle.t.sol │ │ │ │ │ ├── StdUtils.t.sol │ │ │ │ │ ├── Vm.t.sol │ │ │ │ │ ├── compilation │ │ │ │ │ ├── CompilationScript.sol │ │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ │ ├── CompilationTest.sol │ │ │ │ │ └── CompilationTestBase.sol │ │ │ │ │ └── fixtures │ │ │ │ │ └── broadcast.log.json │ │ │ └── openzeppelin-contracts │ │ │ │ ├── .changeset │ │ │ │ ├── angry-dodos-grow.md │ │ │ │ ├── config.json │ │ │ │ ├── eleven-planets-relax.md │ │ │ │ └── violet-moons-tell.md │ │ │ │ ├── .codecov.yml │ │ │ │ ├── .editorconfig │ │ │ │ ├── .eslintrc │ │ │ │ ├── .github │ │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ │ ├── bug_report.md │ │ │ │ │ ├── config.yml │ │ │ │ │ └── feature_request.md │ │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ │ ├── actions │ │ │ │ │ ├── gas-compare │ │ │ │ │ │ └── action.yml │ │ │ │ │ ├── setup │ │ │ │ │ │ └── action.yml │ │ │ │ │ └── storage-layout │ │ │ │ │ │ └── action.yml │ │ │ │ └── workflows │ │ │ │ │ ├── actionlint.yml │ │ │ │ │ ├── changeset.yml │ │ │ │ │ ├── checks.yml │ │ │ │ │ ├── docs.yml │ │ │ │ │ ├── formal-verification.yml │ │ │ │ │ ├── release-cycle.yml │ │ │ │ │ └── upgradeable.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── .mocharc.js │ │ │ │ ├── .prettierrc │ │ │ │ ├── .solcover.js │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ │ ├── CONTRIBUTING.md │ │ │ │ ├── FUNDING.json │ │ │ │ ├── GUIDELINES.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── RELEASING.md │ │ │ │ ├── SECURITY.md │ │ │ │ ├── audits │ │ │ │ ├── 2017-03.md │ │ │ │ ├── 2018-10.pdf │ │ │ │ ├── 2022-10-Checkpoints.pdf │ │ │ │ ├── 2022-10-ERC4626.pdf │ │ │ │ ├── 2023-05-v4.9.pdf │ │ │ │ ├── 2023-10-v5.0.pdf │ │ │ │ └── README.md │ │ │ │ ├── certora │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── README.md │ │ │ │ ├── diff │ │ │ │ │ └── access_manager_AccessManager.sol.patch │ │ │ │ ├── harnesses │ │ │ │ │ ├── AccessControlDefaultAdminRulesHarness.sol │ │ │ │ │ ├── AccessControlHarness.sol │ │ │ │ │ ├── AccessManagedHarness.sol │ │ │ │ │ ├── AccessManagerHarness.sol │ │ │ │ │ ├── DoubleEndedQueueHarness.sol │ │ │ │ │ ├── ERC20FlashMintHarness.sol │ │ │ │ │ ├── ERC20PermitHarness.sol │ │ │ │ │ ├── ERC20WrapperHarness.sol │ │ │ │ │ ├── ERC3156FlashBorrowerHarness.sol │ │ │ │ │ ├── ERC721Harness.sol │ │ │ │ │ ├── ERC721ReceiverHarness.sol │ │ │ │ │ ├── EnumerableMapHarness.sol │ │ │ │ │ ├── EnumerableSetHarness.sol │ │ │ │ │ ├── InitializableHarness.sol │ │ │ │ │ ├── NoncesHarness.sol │ │ │ │ │ ├── Ownable2StepHarness.sol │ │ │ │ │ ├── OwnableHarness.sol │ │ │ │ │ ├── PausableHarness.sol │ │ │ │ │ └── TimelockControllerHarness.sol │ │ │ │ ├── reports │ │ │ │ │ ├── 2021-10.pdf │ │ │ │ │ ├── 2022-03.pdf │ │ │ │ │ └── 2022-05.pdf │ │ │ │ ├── run.js │ │ │ │ ├── specs.json │ │ │ │ └── specs │ │ │ │ │ ├── AccessControl.spec │ │ │ │ │ ├── AccessControlDefaultAdminRules.spec │ │ │ │ │ ├── AccessManaged.spec │ │ │ │ │ ├── AccessManager.spec │ │ │ │ │ ├── DoubleEndedQueue.spec │ │ │ │ │ ├── ERC20.spec │ │ │ │ │ ├── ERC20FlashMint.spec │ │ │ │ │ ├── ERC20Wrapper.spec │ │ │ │ │ ├── ERC721.spec │ │ │ │ │ ├── EnumerableMap.spec │ │ │ │ │ ├── EnumerableSet.spec │ │ │ │ │ ├── Initializable.spec │ │ │ │ │ ├── Nonces.spec │ │ │ │ │ ├── Ownable.spec │ │ │ │ │ ├── Ownable2Step.spec │ │ │ │ │ ├── Pausable.spec │ │ │ │ │ ├── TimelockController.spec │ │ │ │ │ ├── helpers │ │ │ │ │ └── helpers.spec │ │ │ │ │ └── methods │ │ │ │ │ ├── IAccessControl.spec │ │ │ │ │ ├── IAccessControlDefaultAdminRules.spec │ │ │ │ │ ├── IAccessManaged.spec │ │ │ │ │ ├── IAccessManager.spec │ │ │ │ │ ├── IERC20.spec │ │ │ │ │ ├── IERC2612.spec │ │ │ │ │ ├── IERC3156FlashBorrower.spec │ │ │ │ │ ├── IERC3156FlashLender.spec │ │ │ │ │ ├── IERC5313.spec │ │ │ │ │ ├── IERC721.spec │ │ │ │ │ ├── IERC721Receiver.spec │ │ │ │ │ ├── IOwnable.spec │ │ │ │ │ └── IOwnable2Step.spec │ │ │ │ ├── contracts │ │ │ │ ├── access │ │ │ │ │ ├── AccessControl.sol │ │ │ │ │ ├── IAccessControl.sol │ │ │ │ │ ├── Ownable.sol │ │ │ │ │ ├── Ownable2Step.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── AccessControlDefaultAdminRules.sol │ │ │ │ │ │ ├── AccessControlEnumerable.sol │ │ │ │ │ │ ├── IAccessControlDefaultAdminRules.sol │ │ │ │ │ │ └── IAccessControlEnumerable.sol │ │ │ │ │ └── manager │ │ │ │ │ │ ├── AccessManaged.sol │ │ │ │ │ │ ├── AccessManager.sol │ │ │ │ │ │ ├── AuthorityUtils.sol │ │ │ │ │ │ ├── IAccessManaged.sol │ │ │ │ │ │ ├── IAccessManager.sol │ │ │ │ │ │ └── IAuthority.sol │ │ │ │ ├── finance │ │ │ │ │ ├── README.adoc │ │ │ │ │ └── VestingWallet.sol │ │ │ │ ├── governance │ │ │ │ │ ├── Governor.sol │ │ │ │ │ ├── IGovernor.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── TimelockController.sol │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ │ │ ├── GovernorPreventLateQuorum.sol │ │ │ │ │ │ ├── GovernorSettings.sol │ │ │ │ │ │ ├── GovernorStorage.sol │ │ │ │ │ │ ├── GovernorTimelockAccess.sol │ │ │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ │ │ ├── GovernorVotes.sol │ │ │ │ │ │ └── GovernorVotesQuorumFraction.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── IVotes.sol │ │ │ │ │ │ └── Votes.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC1155MetadataURI.sol │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ ├── IERC1271.sol │ │ │ │ │ ├── IERC1363.sol │ │ │ │ │ ├── IERC1363Receiver.sol │ │ │ │ │ ├── IERC1363Spender.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ │ ├── IERC1820Registry.sol │ │ │ │ │ ├── IERC1967.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ ├── IERC2309.sol │ │ │ │ │ ├── IERC2612.sol │ │ │ │ │ ├── IERC2981.sol │ │ │ │ │ ├── IERC3156.sol │ │ │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ │ │ ├── IERC3156FlashLender.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC4906.sol │ │ │ │ │ ├── IERC5267.sol │ │ │ │ │ ├── IERC5313.sol │ │ │ │ │ ├── IERC5805.sol │ │ │ │ │ ├── IERC6372.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ ├── IERC777.sol │ │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ │ ├── IERC777Sender.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── draft-IERC1822.sol │ │ │ │ │ └── draft-IERC6093.sol │ │ │ │ ├── metatx │ │ │ │ │ ├── ERC2771Context.sol │ │ │ │ │ ├── ERC2771Forwarder.sol │ │ │ │ │ └── README.adoc │ │ │ │ ├── mocks │ │ │ │ │ ├── AccessManagedTarget.sol │ │ │ │ │ ├── ArraysMock.sol │ │ │ │ │ ├── AuthorityMock.sol │ │ │ │ │ ├── CallReceiverMock.sol │ │ │ │ │ ├── ContextMock.sol │ │ │ │ │ ├── DummyImplementation.sol │ │ │ │ │ ├── EIP712Verifier.sol │ │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ │ ├── ERC165 │ │ │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ │ │ ├── ERC165MaliciousData.sol │ │ │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ │ │ ├── ERC165NotSupported.sol │ │ │ │ │ │ └── ERC165ReturnBomb.sol │ │ │ │ │ ├── ERC2771ContextMock.sol │ │ │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ │ │ ├── EtherReceiverMock.sol │ │ │ │ │ ├── InitializableMock.sol │ │ │ │ │ ├── MulticallHelper.sol │ │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ │ │ ├── PausableMock.sol │ │ │ │ │ ├── ReentrancyAttack.sol │ │ │ │ │ ├── ReentrancyMock.sol │ │ │ │ │ ├── RegressionImplementation.sol │ │ │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ │ │ ├── Stateless.sol │ │ │ │ │ ├── StorageSlotMock.sol │ │ │ │ │ ├── TimelockReentrant.sol │ │ │ │ │ ├── UpgradeableBeaconMock.sol │ │ │ │ │ ├── VotesMock.sol │ │ │ │ │ ├── compound │ │ │ │ │ │ └── CompTimelock.sol │ │ │ │ │ ├── docs │ │ │ │ │ │ ├── ERC20WithAutoMinerReward.sol │ │ │ │ │ │ ├── ERC4626Fees.sol │ │ │ │ │ │ ├── access-control │ │ │ │ │ │ │ ├── AccessControlERC20MintBase.sol │ │ │ │ │ │ │ ├── AccessControlERC20MintMissing.sol │ │ │ │ │ │ │ ├── AccessControlERC20MintOnlyRole.sol │ │ │ │ │ │ │ ├── AccessManagedERC20MintBase.sol │ │ │ │ │ │ │ └── MyContractOwnable.sol │ │ │ │ │ │ └── governance │ │ │ │ │ │ │ ├── MyGovernor.sol │ │ │ │ │ │ │ ├── MyToken.sol │ │ │ │ │ │ │ ├── MyTokenTimestampBased.sol │ │ │ │ │ │ │ └── MyTokenWrapped.sol │ │ │ │ │ ├── governance │ │ │ │ │ │ ├── GovernorMock.sol │ │ │ │ │ │ ├── GovernorPreventLateQuorumMock.sol │ │ │ │ │ │ ├── GovernorStorageMock.sol │ │ │ │ │ │ ├── GovernorTimelockAccessMock.sol │ │ │ │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ │ │ │ ├── GovernorVoteMock.sol │ │ │ │ │ │ └── GovernorWithParamsMock.sol │ │ │ │ │ ├── proxy │ │ │ │ │ │ ├── BadBeacon.sol │ │ │ │ │ │ ├── ClashingImplementation.sol │ │ │ │ │ │ └── UUPSUpgradeableMock.sol │ │ │ │ │ └── token │ │ │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ │ │ ├── ERC20ApprovalMock.sol │ │ │ │ │ │ ├── ERC20DecimalsMock.sol │ │ │ │ │ │ ├── ERC20ExcessDecimalsMock.sol │ │ │ │ │ │ ├── ERC20FlashMintMock.sol │ │ │ │ │ │ ├── ERC20ForceApproveMock.sol │ │ │ │ │ │ ├── ERC20Mock.sol │ │ │ │ │ │ ├── ERC20MulticallMock.sol │ │ │ │ │ │ ├── ERC20NoReturnMock.sol │ │ │ │ │ │ ├── ERC20Reentrant.sol │ │ │ │ │ │ ├── ERC20ReturnFalseMock.sol │ │ │ │ │ │ ├── ERC20VotesLegacyMock.sol │ │ │ │ │ │ ├── ERC20VotesTimestampMock.sol │ │ │ │ │ │ ├── ERC4626LimitsMock.sol │ │ │ │ │ │ ├── ERC4626Mock.sol │ │ │ │ │ │ ├── ERC4626OffsetMock.sol │ │ │ │ │ │ ├── ERC4646FeesMock.sol │ │ │ │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol │ │ │ │ │ │ ├── ERC721ConsecutiveMock.sol │ │ │ │ │ │ ├── ERC721ReceiverMock.sol │ │ │ │ │ │ └── ERC721URIStorageMock.sol │ │ │ │ ├── package.json │ │ │ │ ├── proxy │ │ │ │ │ ├── Clones.sol │ │ │ │ │ ├── ERC1967 │ │ │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ │ │ └── ERC1967Utils.sol │ │ │ │ │ ├── Proxy.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── beacon │ │ │ │ │ │ ├── BeaconProxy.sol │ │ │ │ │ │ ├── IBeacon.sol │ │ │ │ │ │ └── UpgradeableBeacon.sol │ │ │ │ │ ├── transparent │ │ │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── Initializable.sol │ │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ │ ├── token │ │ │ │ │ ├── ERC1155 │ │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ │ │ ├── ERC1155URIStorage.sol │ │ │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── ERC1155Holder.sol │ │ │ │ │ ├── ERC20 │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ │ │ ├── ERC20Permit.sol │ │ │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ │ │ ├── ERC4626.sol │ │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ │ └── IERC20Permit.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── SafeERC20.sol │ │ │ │ │ ├── ERC721 │ │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ │ │ ├── ERC721Consecutive.sol │ │ │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ │ │ ├── ERC721Royalty.sol │ │ │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ │ │ ├── ERC721Votes.sol │ │ │ │ │ │ │ ├── ERC721Wrapper.sol │ │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ │ └── IERC721Metadata.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── ERC721Holder.sol │ │ │ │ │ └── common │ │ │ │ │ │ ├── ERC2981.sol │ │ │ │ │ │ └── README.adoc │ │ │ │ ├── utils │ │ │ │ │ ├── Address.sol │ │ │ │ │ ├── Arrays.sol │ │ │ │ │ ├── Base64.sol │ │ │ │ │ ├── Context.sol │ │ │ │ │ ├── Create2.sol │ │ │ │ │ ├── Multicall.sol │ │ │ │ │ ├── Nonces.sol │ │ │ │ │ ├── Pausable.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── ReentrancyGuard.sol │ │ │ │ │ ├── ShortStrings.sol │ │ │ │ │ ├── StorageSlot.sol │ │ │ │ │ ├── Strings.sol │ │ │ │ │ ├── cryptography │ │ │ │ │ │ ├── ECDSA.sol │ │ │ │ │ │ ├── EIP712.sol │ │ │ │ │ │ ├── MerkleProof.sol │ │ │ │ │ │ ├── MessageHashUtils.sol │ │ │ │ │ │ └── SignatureChecker.sol │ │ │ │ │ ├── introspection │ │ │ │ │ │ ├── ERC165.sol │ │ │ │ │ │ ├── ERC165Checker.sol │ │ │ │ │ │ └── IERC165.sol │ │ │ │ │ ├── math │ │ │ │ │ │ ├── Math.sol │ │ │ │ │ │ ├── SafeCast.sol │ │ │ │ │ │ └── SignedMath.sol │ │ │ │ │ ├── structs │ │ │ │ │ │ ├── BitMaps.sol │ │ │ │ │ │ ├── Checkpoints.sol │ │ │ │ │ │ ├── DoubleEndedQueue.sol │ │ │ │ │ │ ├── EnumerableMap.sol │ │ │ │ │ │ └── EnumerableSet.sol │ │ │ │ │ └── types │ │ │ │ │ │ └── Time.sol │ │ │ │ └── vendor │ │ │ │ │ └── compound │ │ │ │ │ ├── ICompoundTimelock.sol │ │ │ │ │ └── LICENSE │ │ │ │ ├── docs │ │ │ │ ├── README.md │ │ │ │ ├── antora.yml │ │ │ │ ├── config.js │ │ │ │ ├── modules │ │ │ │ │ └── ROOT │ │ │ │ │ │ ├── images │ │ │ │ │ │ ├── access-control-multiple.svg │ │ │ │ │ │ ├── access-manager-functions.svg │ │ │ │ │ │ ├── access-manager.svg │ │ │ │ │ │ ├── erc4626-attack-3a.png │ │ │ │ │ │ ├── erc4626-attack-3b.png │ │ │ │ │ │ ├── erc4626-attack-6.png │ │ │ │ │ │ ├── erc4626-attack.png │ │ │ │ │ │ ├── erc4626-deposit.png │ │ │ │ │ │ ├── erc4626-mint.png │ │ │ │ │ │ ├── erc4626-rate-linear.png │ │ │ │ │ │ ├── erc4626-rate-loglog.png │ │ │ │ │ │ ├── erc4626-rate-loglogext.png │ │ │ │ │ │ ├── tally-exec.png │ │ │ │ │ │ └── tally-vote.png │ │ │ │ │ │ ├── nav.adoc │ │ │ │ │ │ └── pages │ │ │ │ │ │ ├── access-control.adoc │ │ │ │ │ │ ├── backwards-compatibility.adoc │ │ │ │ │ │ ├── crowdsales.adoc │ │ │ │ │ │ ├── drafts.adoc │ │ │ │ │ │ ├── erc1155.adoc │ │ │ │ │ │ ├── erc20-supply.adoc │ │ │ │ │ │ ├── erc20.adoc │ │ │ │ │ │ ├── erc4626.adoc │ │ │ │ │ │ ├── erc721.adoc │ │ │ │ │ │ ├── extending-contracts.adoc │ │ │ │ │ │ ├── faq.adoc │ │ │ │ │ │ ├── governance.adoc │ │ │ │ │ │ ├── index.adoc │ │ │ │ │ │ ├── tokens.adoc │ │ │ │ │ │ ├── upgradeable.adoc │ │ │ │ │ │ ├── utilities.adoc │ │ │ │ │ │ └── wizard.adoc │ │ │ │ └── templates │ │ │ │ │ ├── contract.hbs │ │ │ │ │ ├── helpers.js │ │ │ │ │ ├── page.hbs │ │ │ │ │ └── properties.js │ │ │ │ ├── foundry.toml │ │ │ │ ├── hardhat.config.js │ │ │ │ ├── hardhat │ │ │ │ ├── env-artifacts.js │ │ │ │ ├── env-contract.js │ │ │ │ ├── ignore-unreachable-warnings.js │ │ │ │ ├── skip-foundry-tests.js │ │ │ │ └── task-test-get-files.js │ │ │ │ ├── lib │ │ │ │ ├── erc4626-tests │ │ │ │ │ ├── ERC4626.prop.sol │ │ │ │ │ ├── ERC4626.test.sol │ │ │ │ │ ├── LICENSE │ │ │ │ │ └── README.md │ │ │ │ └── forge-std │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── ci.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── .gitmodules │ │ │ │ │ ├── LICENSE-APACHE │ │ │ │ │ ├── LICENSE-MIT │ │ │ │ │ ├── README.md │ │ │ │ │ ├── foundry.toml │ │ │ │ │ ├── lib │ │ │ │ │ └── ds-test │ │ │ │ │ │ ├── .github │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ └── build.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ ├── demo │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── src │ │ │ │ │ │ ├── test.sol │ │ │ │ │ │ └── test.t.sol │ │ │ │ │ ├── package.json │ │ │ │ │ ├── src │ │ │ │ │ ├── Base.sol │ │ │ │ │ ├── Script.sol │ │ │ │ │ ├── StdAssertions.sol │ │ │ │ │ ├── StdChains.sol │ │ │ │ │ ├── StdCheats.sol │ │ │ │ │ ├── StdError.sol │ │ │ │ │ ├── StdInvariant.sol │ │ │ │ │ ├── StdJson.sol │ │ │ │ │ ├── StdMath.sol │ │ │ │ │ ├── StdStorage.sol │ │ │ │ │ ├── StdStyle.sol │ │ │ │ │ ├── StdUtils.sol │ │ │ │ │ ├── Test.sol │ │ │ │ │ ├── Vm.sol │ │ │ │ │ ├── console.sol │ │ │ │ │ ├── console2.sol │ │ │ │ │ └── interfaces │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ └── IMulticall3.sol │ │ │ │ │ └── test │ │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ │ ├── StdChains.t.sol │ │ │ │ │ ├── StdCheats.t.sol │ │ │ │ │ ├── StdError.t.sol │ │ │ │ │ ├── StdMath.t.sol │ │ │ │ │ ├── StdStorage.t.sol │ │ │ │ │ ├── StdStyle.t.sol │ │ │ │ │ ├── StdUtils.t.sol │ │ │ │ │ ├── compilation │ │ │ │ │ ├── CompilationScript.sol │ │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ │ ├── CompilationTest.sol │ │ │ │ │ └── CompilationTestBase.sol │ │ │ │ │ └── fixtures │ │ │ │ │ └── broadcast.log.json │ │ │ │ ├── logo.svg │ │ │ │ ├── netlify.toml │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ ├── remappings.txt │ │ │ │ ├── renovate.json │ │ │ │ ├── requirements.txt │ │ │ │ ├── scripts │ │ │ │ ├── checks │ │ │ │ │ ├── compare-layout.js │ │ │ │ │ ├── compareGasReports.js │ │ │ │ │ ├── extract-layout.js │ │ │ │ │ ├── generation.sh │ │ │ │ │ └── inheritance-ordering.js │ │ │ │ ├── gen-nav.js │ │ │ │ ├── generate │ │ │ │ │ ├── format-lines.js │ │ │ │ │ ├── run.js │ │ │ │ │ └── templates │ │ │ │ │ │ ├── Checkpoints.js │ │ │ │ │ │ ├── Checkpoints.opts.js │ │ │ │ │ │ ├── Checkpoints.t.js │ │ │ │ │ │ ├── EnumerableMap.js │ │ │ │ │ │ ├── EnumerableMap.opts.js │ │ │ │ │ │ ├── EnumerableSet.js │ │ │ │ │ │ ├── EnumerableSet.opts.js │ │ │ │ │ │ ├── SafeCast.js │ │ │ │ │ │ ├── StorageSlot.js │ │ │ │ │ │ └── conversion.js │ │ │ │ ├── git-user-config.sh │ │ │ │ ├── helpers.js │ │ │ │ ├── prepack.sh │ │ │ │ ├── prepare-docs.sh │ │ │ │ ├── release │ │ │ │ │ ├── format-changelog.js │ │ │ │ │ ├── synchronize-versions.js │ │ │ │ │ ├── update-comment.js │ │ │ │ │ ├── version.sh │ │ │ │ │ └── workflow │ │ │ │ │ │ ├── exit-prerelease.sh │ │ │ │ │ │ ├── github-release.js │ │ │ │ │ │ ├── integrity-check.sh │ │ │ │ │ │ ├── pack.sh │ │ │ │ │ │ ├── publish.sh │ │ │ │ │ │ ├── rerun.js │ │ │ │ │ │ ├── set-changesets-pr-title.js │ │ │ │ │ │ ├── start.sh │ │ │ │ │ │ └── state.js │ │ │ │ ├── remove-ignored-artifacts.js │ │ │ │ ├── solhint-custom │ │ │ │ │ ├── index.js │ │ │ │ │ └── package.json │ │ │ │ ├── update-docs-branch.js │ │ │ │ └── upgradeable │ │ │ │ │ ├── README.md │ │ │ │ │ ├── patch-apply.sh │ │ │ │ │ ├── patch-save.sh │ │ │ │ │ ├── transpile-onto.sh │ │ │ │ │ ├── transpile.sh │ │ │ │ │ └── upgradeable.patch │ │ │ │ ├── slither.config.json │ │ │ │ ├── solhint.config.js │ │ │ │ └── test │ │ │ │ ├── TESTING.md │ │ │ │ ├── access │ │ │ │ ├── AccessControl.behavior.js │ │ │ │ ├── AccessControl.test.js │ │ │ │ ├── Ownable.test.js │ │ │ │ ├── Ownable2Step.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── AccessControlDefaultAdminRules.test.js │ │ │ │ │ └── AccessControlEnumerable.test.js │ │ │ │ └── manager │ │ │ │ │ ├── AccessManaged.test.js │ │ │ │ │ ├── AccessManager.behavior.js │ │ │ │ │ ├── AccessManager.predicate.js │ │ │ │ │ ├── AccessManager.test.js │ │ │ │ │ └── AuthorityUtils.test.js │ │ │ │ ├── finance │ │ │ │ ├── VestingWallet.behavior.js │ │ │ │ └── VestingWallet.test.js │ │ │ │ ├── governance │ │ │ │ ├── Governor.t.sol │ │ │ │ ├── Governor.test.js │ │ │ │ ├── TimelockController.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── GovernorERC721.test.js │ │ │ │ │ ├── GovernorPreventLateQuorum.test.js │ │ │ │ │ ├── GovernorStorage.test.js │ │ │ │ │ ├── GovernorTimelockAccess.test.js │ │ │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ │ │ ├── GovernorTimelockControl.test.js │ │ │ │ │ ├── GovernorVotesQuorumFraction.test.js │ │ │ │ │ └── GovernorWithParams.test.js │ │ │ │ └── utils │ │ │ │ │ ├── ERC6372.behavior.js │ │ │ │ │ ├── Votes.behavior.js │ │ │ │ │ └── Votes.test.js │ │ │ │ ├── helpers │ │ │ │ ├── access-manager.js │ │ │ │ ├── account.js │ │ │ │ ├── constants.js │ │ │ │ ├── eip712-types.js │ │ │ │ ├── eip712.js │ │ │ │ ├── enums.js │ │ │ │ ├── governance.js │ │ │ │ ├── iterate.js │ │ │ │ ├── math.js │ │ │ │ ├── methods.js │ │ │ │ ├── random.js │ │ │ │ ├── storage.js │ │ │ │ ├── time.js │ │ │ │ └── txpool.js │ │ │ │ ├── metatx │ │ │ │ ├── ERC2771Context.test.js │ │ │ │ ├── ERC2771Forwarder.t.sol │ │ │ │ └── ERC2771Forwarder.test.js │ │ │ │ ├── proxy │ │ │ │ ├── Clones.behaviour.js │ │ │ │ ├── Clones.test.js │ │ │ │ ├── ERC1967 │ │ │ │ │ ├── ERC1967Proxy.test.js │ │ │ │ │ └── ERC1967Utils.test.js │ │ │ │ ├── Proxy.behaviour.js │ │ │ │ ├── beacon │ │ │ │ │ ├── BeaconProxy.test.js │ │ │ │ │ └── UpgradeableBeacon.test.js │ │ │ │ ├── transparent │ │ │ │ │ ├── ProxyAdmin.test.js │ │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ │ │ └── TransparentUpgradeableProxy.test.js │ │ │ │ └── utils │ │ │ │ │ ├── Initializable.test.js │ │ │ │ │ └── UUPSUpgradeable.test.js │ │ │ │ ├── sanity.test.js │ │ │ │ ├── token │ │ │ │ ├── ERC1155 │ │ │ │ │ ├── ERC1155.behavior.js │ │ │ │ │ ├── ERC1155.test.js │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ │ │ ├── ERC1155Supply.test.js │ │ │ │ │ │ └── ERC1155URIStorage.test.js │ │ │ │ │ └── utils │ │ │ │ │ │ └── ERC1155Holder.test.js │ │ │ │ ├── ERC20 │ │ │ │ │ ├── ERC20.behavior.js │ │ │ │ │ ├── ERC20.test.js │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ │ │ ├── ERC20Permit.test.js │ │ │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ │ │ ├── ERC4626.t.sol │ │ │ │ │ │ └── ERC4626.test.js │ │ │ │ │ └── utils │ │ │ │ │ │ └── SafeERC20.test.js │ │ │ │ ├── ERC721 │ │ │ │ │ ├── ERC721.behavior.js │ │ │ │ │ ├── ERC721.test.js │ │ │ │ │ ├── ERC721Enumerable.test.js │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ │ │ ├── ERC721Consecutive.t.sol │ │ │ │ │ │ ├── ERC721Consecutive.test.js │ │ │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ │ │ ├── ERC721Royalty.test.js │ │ │ │ │ │ ├── ERC721URIStorage.test.js │ │ │ │ │ │ ├── ERC721Votes.test.js │ │ │ │ │ │ └── ERC721Wrapper.test.js │ │ │ │ │ └── utils │ │ │ │ │ │ └── ERC721Holder.test.js │ │ │ │ └── common │ │ │ │ │ └── ERC2981.behavior.js │ │ │ │ └── utils │ │ │ │ ├── Address.test.js │ │ │ │ ├── Arrays.test.js │ │ │ │ ├── Base64.test.js │ │ │ │ ├── Context.behavior.js │ │ │ │ ├── Context.test.js │ │ │ │ ├── Create2.test.js │ │ │ │ ├── Multicall.test.js │ │ │ │ ├── Nonces.test.js │ │ │ │ ├── Pausable.test.js │ │ │ │ ├── ReentrancyGuard.test.js │ │ │ │ ├── ShortStrings.t.sol │ │ │ │ ├── ShortStrings.test.js │ │ │ │ ├── StorageSlot.test.js │ │ │ │ ├── Strings.test.js │ │ │ │ ├── cryptography │ │ │ │ ├── ECDSA.test.js │ │ │ │ ├── EIP712.test.js │ │ │ │ ├── MerkleProof.test.js │ │ │ │ ├── MessageHashUtils.test.js │ │ │ │ └── SignatureChecker.test.js │ │ │ │ ├── introspection │ │ │ │ ├── ERC165.test.js │ │ │ │ ├── ERC165Checker.test.js │ │ │ │ └── SupportsInterface.behavior.js │ │ │ │ ├── math │ │ │ │ ├── Math.t.sol │ │ │ │ ├── Math.test.js │ │ │ │ ├── SafeCast.test.js │ │ │ │ └── SignedMath.test.js │ │ │ │ ├── structs │ │ │ │ ├── BitMap.test.js │ │ │ │ ├── Checkpoints.t.sol │ │ │ │ ├── Checkpoints.test.js │ │ │ │ ├── DoubleEndedQueue.test.js │ │ │ │ ├── EnumerableMap.behavior.js │ │ │ │ ├── EnumerableMap.test.js │ │ │ │ ├── EnumerableSet.behavior.js │ │ │ │ └── EnumerableSet.test.js │ │ │ │ └── types │ │ │ │ └── Time.test.js │ │ ├── remappings.txt │ │ ├── script │ │ │ ├── Deploy.s.sol │ │ │ └── Solve.s.sol │ │ └── src │ │ │ ├── Beef.sol │ │ │ └── Challenge.sol │ └── solve.py └── image.png ├── dutch-2 ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── foundry.toml │ ├── lib │ │ ├── forge-ctf │ │ │ └── src │ │ │ │ ├── CTFDeployment.sol │ │ │ │ └── CTFSolver.sol │ │ ├── forge-std │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ ├── ci.yml │ │ │ │ │ └── sync.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ └── safeconsole.sol │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── Vm.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ └── fixtures │ │ │ │ └── broadcast.log.json │ │ └── solmate │ │ │ ├── .gas-snapshot │ │ │ ├── .gitattributes │ │ │ ├── .github │ │ │ ├── pull_request_template.md │ │ │ └── workflows │ │ │ │ └── tests.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── .prettierignore │ │ │ ├── .prettierrc │ │ │ ├── .vscode │ │ │ └── settings.json │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── audits │ │ │ └── v6-Fixed-Point-Solutions.pdf │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ └── ds-test │ │ │ │ ├── .gitignore │ │ │ │ ├── LICENSE │ │ │ │ ├── Makefile │ │ │ │ ├── default.nix │ │ │ │ ├── demo │ │ │ │ └── demo.sol │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ └── test.sol │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ └── src │ │ │ ├── auth │ │ │ ├── Auth.sol │ │ │ ├── Owned.sol │ │ │ └── authorities │ │ │ │ ├── MultiRolesAuthority.sol │ │ │ │ └── RolesAuthority.sol │ │ │ ├── test │ │ │ ├── Auth.t.sol │ │ │ ├── Bytes32AddressLib.t.sol │ │ │ ├── CREATE3.t.sol │ │ │ ├── DSTestPlus.t.sol │ │ │ ├── ERC1155.t.sol │ │ │ ├── ERC20.t.sol │ │ │ ├── ERC4626.t.sol │ │ │ ├── ERC6909.t.sol │ │ │ ├── ERC721.t.sol │ │ │ ├── FixedPointMathLib.t.sol │ │ │ ├── LibString.t.sol │ │ │ ├── MerkleProofLib.t.sol │ │ │ ├── MultiRolesAuthority.t.sol │ │ │ ├── Owned.t.sol │ │ │ ├── ReentrancyGuard.t.sol │ │ │ ├── RolesAuthority.t.sol │ │ │ ├── SSTORE2.t.sol │ │ │ ├── SafeCastLib.t.sol │ │ │ ├── SafeTransferLib.t.sol │ │ │ ├── SignedWadMath.t.sol │ │ │ ├── WETH.t.sol │ │ │ └── utils │ │ │ │ ├── DSInvariantTest.sol │ │ │ │ ├── DSTestPlus.sol │ │ │ │ ├── Hevm.sol │ │ │ │ ├── mocks │ │ │ │ ├── MockAuthChild.sol │ │ │ │ ├── MockAuthority.sol │ │ │ │ ├── MockERC1155.sol │ │ │ │ ├── MockERC20.sol │ │ │ │ ├── MockERC4626.sol │ │ │ │ ├── MockERC6909.sol │ │ │ │ ├── MockERC721.sol │ │ │ │ └── MockOwned.sol │ │ │ │ └── weird-tokens │ │ │ │ ├── MissingReturnToken.sol │ │ │ │ ├── ReturnsFalseToken.sol │ │ │ │ ├── ReturnsGarbageToken.sol │ │ │ │ ├── ReturnsTooLittleToken.sol │ │ │ │ ├── ReturnsTooMuchToken.sol │ │ │ │ ├── ReturnsTwoToken.sol │ │ │ │ └── RevertingToken.sol │ │ │ ├── tokens │ │ │ ├── ERC1155.sol │ │ │ ├── ERC20.sol │ │ │ ├── ERC4626.sol │ │ │ ├── ERC6909.sol │ │ │ ├── ERC721.sol │ │ │ └── WETH.sol │ │ │ └── utils │ │ │ ├── Bytes32AddressLib.sol │ │ │ ├── CREATE3.sol │ │ │ ├── FixedPointMathLib.sol │ │ │ ├── LibString.sol │ │ │ ├── MerkleProofLib.sol │ │ │ ├── ReentrancyGuard.sol │ │ │ ├── SSTORE2.sol │ │ │ ├── SafeCastLib.sol │ │ │ ├── SafeTransferLib.sol │ │ │ └── SignedWadMath.sol │ ├── remappings.txt │ ├── script │ │ ├── Deploy.s.sol │ │ └── Solve.s.sol │ └── src │ │ ├── AuctionManager.sol │ │ ├── Challenge.sol │ │ ├── Token.sol │ │ └── util │ │ └── Math.sol │ └── solve.py ├── dutch ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── foundry.toml │ ├── lib │ │ ├── forge-ctf │ │ │ └── src │ │ │ │ ├── CTFDeployment.sol │ │ │ │ └── CTFSolver.sol │ │ ├── forge-std │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ ├── ci.yml │ │ │ │ │ └── sync.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ └── safeconsole.sol │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── Vm.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ └── fixtures │ │ │ │ └── broadcast.log.json │ │ └── snekmate │ │ │ ├── .editorconfig │ │ │ ├── .eslintignore │ │ │ ├── .eslintrc.js │ │ │ ├── .gas-snapshot │ │ │ ├── .github │ │ │ ├── FUNDING.yml │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ ├── bug_report.yml │ │ │ │ └── feature_request.yml │ │ │ ├── dependabot.yml │ │ │ ├── pull_request_template.md │ │ │ └── workflows │ │ │ │ ├── checks.yml │ │ │ │ ├── publish-npm.yml │ │ │ │ ├── publish-pypi.yml │ │ │ │ ├── publish-test-pypi.yml │ │ │ │ └── test-contracts.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── .prettierignore │ │ │ ├── .prettierrc.yml │ │ │ ├── .solhint.json │ │ │ ├── .solhintignore │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── GUIDELINES.md │ │ │ ├── LICENSE │ │ │ ├── MANIFEST.in │ │ │ ├── README.md │ │ │ ├── SECURITY.md │ │ │ ├── ape-config.yaml │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ ├── create-util │ │ │ │ ├── .editorconfig │ │ │ │ ├── .eslintignore │ │ │ │ ├── .eslintrc.js │ │ │ │ ├── .github │ │ │ │ │ ├── dependabot.yml │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── checks.yml │ │ │ │ │ │ └── test-contracts.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .prettierignore │ │ │ │ ├── .prettierrc.yml │ │ │ │ ├── .solcover.js │ │ │ │ ├── .solhint.json │ │ │ │ ├── .solhintignore │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── abis │ │ │ │ │ ├── @openzeppelin │ │ │ │ │ │ └── contracts │ │ │ │ │ │ │ ├── interfaces │ │ │ │ │ │ │ └── draft-IERC6093.sol │ │ │ │ │ │ │ │ ├── IERC1155Errors.json │ │ │ │ │ │ │ │ ├── IERC20Errors.json │ │ │ │ │ │ │ │ └── IERC721Errors.json │ │ │ │ │ │ │ └── token │ │ │ │ │ │ │ └── ERC20 │ │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ │ └── ERC20.json │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ └── IERC20.json │ │ │ │ │ │ │ └── extensions │ │ │ │ │ │ │ └── IERC20Metadata.sol │ │ │ │ │ │ │ └── IERC20Metadata.json │ │ │ │ │ └── contracts │ │ │ │ │ │ ├── Create.sol │ │ │ │ │ │ └── Create.json │ │ │ │ │ │ └── mocks │ │ │ │ │ │ └── ERC20Mock.sol │ │ │ │ │ │ └── ERC20Mock.json │ │ │ │ ├── contracts │ │ │ │ │ ├── Create.sol │ │ │ │ │ └── mocks │ │ │ │ │ │ └── ERC20Mock.sol │ │ │ │ ├── hardhat.config.ts │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ ├── renovate.json │ │ │ │ ├── slither.config.json │ │ │ │ ├── test │ │ │ │ │ └── Create.test.ts │ │ │ │ └── tsconfig.json │ │ │ ├── erc4626-tests │ │ │ │ ├── ERC4626.prop.sol │ │ │ │ ├── ERC4626.test.sol │ │ │ │ ├── LICENSE │ │ │ │ └── README.md │ │ │ ├── forge-std │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── ci.yml │ │ │ │ │ │ └── sync.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── LICENSE-APACHE │ │ │ │ ├── LICENSE-MIT │ │ │ │ ├── README.md │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ │ └── ds-test │ │ │ │ │ │ ├── .github │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ └── build.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ ├── demo │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── src │ │ │ │ │ │ ├── test.sol │ │ │ │ │ │ └── test.t.sol │ │ │ │ ├── package.json │ │ │ │ ├── src │ │ │ │ │ ├── Base.sol │ │ │ │ │ ├── Script.sol │ │ │ │ │ ├── StdAssertions.sol │ │ │ │ │ ├── StdChains.sol │ │ │ │ │ ├── StdCheats.sol │ │ │ │ │ ├── StdError.sol │ │ │ │ │ ├── StdInvariant.sol │ │ │ │ │ ├── StdJson.sol │ │ │ │ │ ├── StdMath.sol │ │ │ │ │ ├── StdStorage.sol │ │ │ │ │ ├── StdStyle.sol │ │ │ │ │ ├── StdUtils.sol │ │ │ │ │ ├── Test.sol │ │ │ │ │ ├── Vm.sol │ │ │ │ │ ├── console.sol │ │ │ │ │ ├── console2.sol │ │ │ │ │ ├── interfaces │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ └── IMulticall3.sol │ │ │ │ │ └── safeconsole.sol │ │ │ │ └── test │ │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ │ ├── StdChains.t.sol │ │ │ │ │ ├── StdCheats.t.sol │ │ │ │ │ ├── StdError.t.sol │ │ │ │ │ ├── StdMath.t.sol │ │ │ │ │ ├── StdStorage.t.sol │ │ │ │ │ ├── StdStyle.t.sol │ │ │ │ │ ├── StdUtils.t.sol │ │ │ │ │ ├── Vm.t.sol │ │ │ │ │ ├── compilation │ │ │ │ │ ├── CompilationScript.sol │ │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ │ ├── CompilationTest.sol │ │ │ │ │ └── CompilationTestBase.sol │ │ │ │ │ └── fixtures │ │ │ │ │ └── broadcast.log.json │ │ │ ├── murky │ │ │ │ ├── .dockerignore │ │ │ │ ├── .gas-snapshot │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── run_tests.yml │ │ │ │ │ │ └── slither.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── Dockerfile.deploy │ │ │ │ ├── README.md │ │ │ │ ├── differential_testing │ │ │ │ │ ├── README.md │ │ │ │ │ ├── scripts │ │ │ │ │ │ ├── generate_root.ts │ │ │ │ │ │ ├── generate_root_cli.ts │ │ │ │ │ │ ├── merkle-tree.ts │ │ │ │ │ │ ├── package-lock.json │ │ │ │ │ │ └── package.json │ │ │ │ │ └── test │ │ │ │ │ │ ├── DifferentialTests.t.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ └── Strings2.sol │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ │ ├── forge-std │ │ │ │ │ │ ├── .github │ │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ │ └── ci.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── .gitmodules │ │ │ │ │ │ ├── LICENSE-APACHE │ │ │ │ │ │ ├── LICENSE-MIT │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── foundry.toml │ │ │ │ │ │ ├── lib │ │ │ │ │ │ │ └── ds-test │ │ │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ │ │ ├── demo │ │ │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ │ └── src │ │ │ │ │ │ │ │ └── test.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── src │ │ │ │ │ │ │ ├── Base.sol │ │ │ │ │ │ │ ├── Script.sol │ │ │ │ │ │ │ ├── StdAssertions.sol │ │ │ │ │ │ │ ├── StdChains.sol │ │ │ │ │ │ │ ├── StdCheats.sol │ │ │ │ │ │ │ ├── StdError.sol │ │ │ │ │ │ │ ├── StdJson.sol │ │ │ │ │ │ │ ├── StdMath.sol │ │ │ │ │ │ │ ├── StdStorage.sol │ │ │ │ │ │ │ ├── StdUtils.sol │ │ │ │ │ │ │ ├── Test.sol │ │ │ │ │ │ │ ├── Vm.sol │ │ │ │ │ │ │ ├── console.sol │ │ │ │ │ │ │ ├── console2.sol │ │ │ │ │ │ │ └── interfaces │ │ │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ │ │ └── IERC721.sol │ │ │ │ │ │ └── test │ │ │ │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ │ │ │ ├── StdChains.t.sol │ │ │ │ │ │ │ ├── StdCheats.t.sol │ │ │ │ │ │ │ ├── StdError.t.sol │ │ │ │ │ │ │ ├── StdMath.t.sol │ │ │ │ │ │ │ ├── StdStorage.t.sol │ │ │ │ │ │ │ ├── StdUtils.t.sol │ │ │ │ │ │ │ ├── compilation │ │ │ │ │ │ │ ├── CompilationScript.sol │ │ │ │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ │ │ │ ├── CompilationTest.sol │ │ │ │ │ │ │ └── CompilationTestBase.sol │ │ │ │ │ │ │ └── fixtures │ │ │ │ │ │ │ └── broadcast.log.json │ │ │ │ │ └── openzeppelin-contracts │ │ │ │ │ │ ├── .codecov.yml │ │ │ │ │ │ ├── .editorconfig │ │ │ │ │ │ ├── .eslintrc │ │ │ │ │ │ ├── .gitattributes │ │ │ │ │ │ ├── .github │ │ │ │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ │ │ │ ├── bug_report.md │ │ │ │ │ │ │ ├── config.yml │ │ │ │ │ │ │ └── feature_request.md │ │ │ │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ ├── docs.yml │ │ │ │ │ │ │ ├── slither.yml │ │ │ │ │ │ │ ├── test.yml │ │ │ │ │ │ │ └── upgradeable.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── .mocharc.js │ │ │ │ │ │ ├── .prettierrc │ │ │ │ │ │ ├── .solcover.js │ │ │ │ │ │ ├── .solhint.json │ │ │ │ │ │ ├── CHANGELOG.md │ │ │ │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ │ │ │ ├── CONTRIBUTING.md │ │ │ │ │ │ ├── DOCUMENTATION.md │ │ │ │ │ │ ├── GUIDELINES.md │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── RELEASING.md │ │ │ │ │ │ ├── SECURITY.md │ │ │ │ │ │ ├── audit │ │ │ │ │ │ ├── 2017-03.md │ │ │ │ │ │ └── 2018-10.pdf │ │ │ │ │ │ ├── certora │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── applyHarness.patch │ │ │ │ │ │ ├── harnesses │ │ │ │ │ │ │ ├── ERC20VotesHarness.sol │ │ │ │ │ │ │ ├── WizardControlFirstPriority.sol │ │ │ │ │ │ │ └── WizardFirstTry.sol │ │ │ │ │ │ ├── munged │ │ │ │ │ │ │ └── .gitignore │ │ │ │ │ │ ├── scripts │ │ │ │ │ │ │ ├── Governor.sh │ │ │ │ │ │ │ ├── GovernorCountingSimple-counting.sh │ │ │ │ │ │ │ ├── WizardControlFirstPriority.sh │ │ │ │ │ │ │ ├── WizardFirstTry.sh │ │ │ │ │ │ │ ├── sanity.sh │ │ │ │ │ │ │ └── verifyAll.sh │ │ │ │ │ │ └── specs │ │ │ │ │ │ │ ├── GovernorBase.spec │ │ │ │ │ │ │ ├── GovernorCountingSimple.spec │ │ │ │ │ │ │ ├── RulesInProgress.spec │ │ │ │ │ │ │ └── sanity.spec │ │ │ │ │ │ ├── contracts │ │ │ │ │ │ ├── access │ │ │ │ │ │ │ ├── AccessControl.sol │ │ │ │ │ │ │ ├── AccessControlCrossChain.sol │ │ │ │ │ │ │ ├── AccessControlEnumerable.sol │ │ │ │ │ │ │ ├── IAccessControl.sol │ │ │ │ │ │ │ ├── IAccessControlEnumerable.sol │ │ │ │ │ │ │ ├── Ownable.sol │ │ │ │ │ │ │ └── README.adoc │ │ │ │ │ │ ├── crosschain │ │ │ │ │ │ │ ├── CrossChainEnabled.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── amb │ │ │ │ │ │ │ │ ├── CrossChainEnabledAMB.sol │ │ │ │ │ │ │ │ └── LibAMB.sol │ │ │ │ │ │ │ ├── arbitrum │ │ │ │ │ │ │ │ ├── CrossChainEnabledArbitrumL1.sol │ │ │ │ │ │ │ │ ├── CrossChainEnabledArbitrumL2.sol │ │ │ │ │ │ │ │ ├── LibArbitrumL1.sol │ │ │ │ │ │ │ │ └── LibArbitrumL2.sol │ │ │ │ │ │ │ ├── errors.sol │ │ │ │ │ │ │ ├── optimism │ │ │ │ │ │ │ │ ├── CrossChainEnabledOptimism.sol │ │ │ │ │ │ │ │ └── LibOptimism.sol │ │ │ │ │ │ │ └── polygon │ │ │ │ │ │ │ │ └── CrossChainEnabledPolygonChild.sol │ │ │ │ │ │ ├── finance │ │ │ │ │ │ │ ├── PaymentSplitter.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ └── VestingWallet.sol │ │ │ │ │ │ ├── governance │ │ │ │ │ │ │ ├── Governor.sol │ │ │ │ │ │ │ ├── IGovernor.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── TimelockController.sol │ │ │ │ │ │ │ ├── compatibility │ │ │ │ │ │ │ │ ├── GovernorCompatibilityBravo.sol │ │ │ │ │ │ │ │ └── IGovernorCompatibilityBravo.sol │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ │ │ │ │ ├── GovernorPreventLateQuorum.sol │ │ │ │ │ │ │ │ ├── GovernorProposalThreshold.sol │ │ │ │ │ │ │ │ ├── GovernorSettings.sol │ │ │ │ │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ │ │ │ │ ├── GovernorVotes.sol │ │ │ │ │ │ │ │ ├── GovernorVotesComp.sol │ │ │ │ │ │ │ │ ├── GovernorVotesQuorumFraction.sol │ │ │ │ │ │ │ │ └── IGovernorTimelock.sol │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ ├── IVotes.sol │ │ │ │ │ │ │ │ └── Votes.sol │ │ │ │ │ │ ├── interfaces │ │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ │ ├── IERC1155MetadataURI.sol │ │ │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ │ │ ├── IERC1271.sol │ │ │ │ │ │ │ ├── IERC1363.sol │ │ │ │ │ │ │ ├── IERC1363Receiver.sol │ │ │ │ │ │ │ ├── IERC1363Spender.sol │ │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ │ │ │ ├── IERC1820Registry.sol │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ │ ├── IERC2981.sol │ │ │ │ │ │ │ ├── IERC3156.sol │ │ │ │ │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ │ │ │ │ ├── IERC3156FlashLender.sol │ │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ │ │ ├── IERC777.sol │ │ │ │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ │ │ │ ├── IERC777Sender.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── draft-IERC1822.sol │ │ │ │ │ │ │ └── draft-IERC2612.sol │ │ │ │ │ │ ├── metatx │ │ │ │ │ │ │ ├── ERC2771Context.sol │ │ │ │ │ │ │ ├── MinimalForwarder.sol │ │ │ │ │ │ │ └── README.adoc │ │ │ │ │ │ ├── mocks │ │ │ │ │ │ │ ├── AccessControlCrossChainMock.sol │ │ │ │ │ │ │ ├── AccessControlEnumerableMock.sol │ │ │ │ │ │ │ ├── AccessControlMock.sol │ │ │ │ │ │ │ ├── AddressImpl.sol │ │ │ │ │ │ │ ├── ArraysImpl.sol │ │ │ │ │ │ │ ├── BadBeacon.sol │ │ │ │ │ │ │ ├── Base64Mock.sol │ │ │ │ │ │ │ ├── BitmapMock.sol │ │ │ │ │ │ │ ├── CallReceiverMock.sol │ │ │ │ │ │ │ ├── CheckpointsImpl.sol │ │ │ │ │ │ │ ├── ClashingImplementation.sol │ │ │ │ │ │ │ ├── ClonesMock.sol │ │ │ │ │ │ │ ├── ConditionalEscrowMock.sol │ │ │ │ │ │ │ ├── ContextMock.sol │ │ │ │ │ │ │ ├── CountersImpl.sol │ │ │ │ │ │ │ ├── Create2Impl.sol │ │ │ │ │ │ │ ├── DoubleEndedQueueMock.sol │ │ │ │ │ │ │ ├── DummyImplementation.sol │ │ │ │ │ │ │ ├── ECDSAMock.sol │ │ │ │ │ │ │ ├── EIP712External.sol │ │ │ │ │ │ │ ├── ERC1155BurnableMock.sol │ │ │ │ │ │ │ ├── ERC1155Mock.sol │ │ │ │ │ │ │ ├── ERC1155PausableMock.sol │ │ │ │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ │ │ │ ├── ERC1155SupplyMock.sol │ │ │ │ │ │ │ ├── ERC1155URIStorageMock.sol │ │ │ │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ │ │ │ ├── ERC165 │ │ │ │ │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ │ │ │ │ └── ERC165NotSupported.sol │ │ │ │ │ │ │ ├── ERC165CheckerMock.sol │ │ │ │ │ │ │ ├── ERC165Mock.sol │ │ │ │ │ │ │ ├── ERC165StorageMock.sol │ │ │ │ │ │ │ ├── ERC1820ImplementerMock.sol │ │ │ │ │ │ │ ├── ERC20BurnableMock.sol │ │ │ │ │ │ │ ├── ERC20CappedMock.sol │ │ │ │ │ │ │ ├── ERC20DecimalsMock.sol │ │ │ │ │ │ │ ├── ERC20FlashMintMock.sol │ │ │ │ │ │ │ ├── ERC20Mock.sol │ │ │ │ │ │ │ ├── ERC20PausableMock.sol │ │ │ │ │ │ │ ├── ERC20PermitMock.sol │ │ │ │ │ │ │ ├── ERC20SnapshotMock.sol │ │ │ │ │ │ │ ├── ERC20VotesCompMock.sol │ │ │ │ │ │ │ ├── ERC20VotesMock.sol │ │ │ │ │ │ │ ├── ERC20WrapperMock.sol │ │ │ │ │ │ │ ├── ERC2771ContextMock.sol │ │ │ │ │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ │ │ │ │ ├── ERC721BurnableMock.sol │ │ │ │ │ │ │ ├── ERC721EnumerableMock.sol │ │ │ │ │ │ │ ├── ERC721Mock.sol │ │ │ │ │ │ │ ├── ERC721PausableMock.sol │ │ │ │ │ │ │ ├── ERC721ReceiverMock.sol │ │ │ │ │ │ │ ├── ERC721RoyaltyMock.sol │ │ │ │ │ │ │ ├── ERC721URIStorageMock.sol │ │ │ │ │ │ │ ├── ERC721VotesMock.sol │ │ │ │ │ │ │ ├── ERC777Mock.sol │ │ │ │ │ │ │ ├── ERC777SenderRecipientMock.sol │ │ │ │ │ │ │ ├── EnumerableMapMock.sol │ │ │ │ │ │ │ ├── EnumerableSetMock.sol │ │ │ │ │ │ │ ├── EtherReceiverMock.sol │ │ │ │ │ │ │ ├── GovernorCompMock.sol │ │ │ │ │ │ │ ├── GovernorCompatibilityBravoMock.sol │ │ │ │ │ │ │ ├── GovernorMock.sol │ │ │ │ │ │ │ ├── GovernorPreventLateQuorumMock.sol │ │ │ │ │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ │ │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ │ │ │ │ ├── GovernorVoteMock.sol │ │ │ │ │ │ │ ├── GovernorWithParamsMock.sol │ │ │ │ │ │ │ ├── InitializableMock.sol │ │ │ │ │ │ │ ├── MathMock.sol │ │ │ │ │ │ │ ├── MerkleProofWrapper.sol │ │ │ │ │ │ │ ├── MulticallTest.sol │ │ │ │ │ │ │ ├── MulticallTokenMock.sol │ │ │ │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ │ │ │ │ ├── OwnableMock.sol │ │ │ │ │ │ │ ├── PausableMock.sol │ │ │ │ │ │ │ ├── PullPaymentMock.sol │ │ │ │ │ │ │ ├── ReentrancyAttack.sol │ │ │ │ │ │ │ ├── ReentrancyMock.sol │ │ │ │ │ │ │ ├── RegressionImplementation.sol │ │ │ │ │ │ │ ├── SafeCastMock.sol │ │ │ │ │ │ │ ├── SafeERC20Helper.sol │ │ │ │ │ │ │ ├── SafeMathMock.sol │ │ │ │ │ │ │ ├── SignatureCheckerMock.sol │ │ │ │ │ │ │ ├── SignedMathMock.sol │ │ │ │ │ │ │ ├── SignedSafeMathMock.sol │ │ │ │ │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ │ │ │ │ ├── StorageSlotMock.sol │ │ │ │ │ │ │ ├── StringsMock.sol │ │ │ │ │ │ │ ├── TimersBlockNumberImpl.sol │ │ │ │ │ │ │ ├── TimersTimestampImpl.sol │ │ │ │ │ │ │ ├── UUPS │ │ │ │ │ │ │ │ ├── UUPSLegacy.sol │ │ │ │ │ │ │ │ └── UUPSUpgradeableMock.sol │ │ │ │ │ │ │ ├── VotesMock.sol │ │ │ │ │ │ │ ├── compound │ │ │ │ │ │ │ │ └── CompTimelock.sol │ │ │ │ │ │ │ ├── crosschain │ │ │ │ │ │ │ │ ├── bridges.sol │ │ │ │ │ │ │ │ └── receivers.sol │ │ │ │ │ │ │ └── wizard │ │ │ │ │ │ │ │ ├── MyGovernor1.sol │ │ │ │ │ │ │ │ ├── MyGovernor2.sol │ │ │ │ │ │ │ │ └── MyGovernor3.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── proxy │ │ │ │ │ │ │ ├── Clones.sol │ │ │ │ │ │ │ ├── ERC1967 │ │ │ │ │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ │ │ │ │ └── ERC1967Upgrade.sol │ │ │ │ │ │ │ ├── Proxy.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── beacon │ │ │ │ │ │ │ │ ├── BeaconProxy.sol │ │ │ │ │ │ │ │ ├── IBeacon.sol │ │ │ │ │ │ │ │ └── UpgradeableBeacon.sol │ │ │ │ │ │ │ ├── transparent │ │ │ │ │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ ├── Initializable.sol │ │ │ │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ │ │ │ ├── security │ │ │ │ │ │ │ ├── Pausable.sol │ │ │ │ │ │ │ ├── PullPayment.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ └── ReentrancyGuard.sol │ │ │ │ │ │ ├── token │ │ │ │ │ │ │ ├── ERC1155 │ │ │ │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ │ │ │ │ ├── ERC1155URIStorage.sol │ │ │ │ │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ │ ├── ERC1155PresetMinterPauser.sol │ │ │ │ │ │ │ │ │ └── README.md │ │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ │ ├── ERC1155Holder.sol │ │ │ │ │ │ │ │ │ └── ERC1155Receiver.sol │ │ │ │ │ │ │ ├── ERC20 │ │ │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ │ │ │ │ ├── ERC20Snapshot.sol │ │ │ │ │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ │ │ │ │ ├── ERC20VotesComp.sol │ │ │ │ │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ │ │ │ ├── draft-ERC20Permit.sol │ │ │ │ │ │ │ │ │ └── draft-IERC20Permit.sol │ │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ │ ├── ERC20PresetFixedSupply.sol │ │ │ │ │ │ │ │ │ ├── ERC20PresetMinterPauser.sol │ │ │ │ │ │ │ │ │ └── README.md │ │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ │ ├── SafeERC20.sol │ │ │ │ │ │ │ │ │ └── TokenTimelock.sol │ │ │ │ │ │ │ ├── ERC721 │ │ │ │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ │ │ │ │ ├── ERC721Royalty.sol │ │ │ │ │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ │ │ │ │ │ └── draft-ERC721Votes.sol │ │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ │ ├── ERC721PresetMinterPauserAutoId.sol │ │ │ │ │ │ │ │ │ └── README.md │ │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ │ └── ERC721Holder.sol │ │ │ │ │ │ │ ├── ERC777 │ │ │ │ │ │ │ │ ├── ERC777.sol │ │ │ │ │ │ │ │ ├── IERC777.sol │ │ │ │ │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ │ │ │ │ ├── IERC777Sender.sol │ │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ │ └── presets │ │ │ │ │ │ │ │ │ └── ERC777PresetFixedSupply.sol │ │ │ │ │ │ │ └── common │ │ │ │ │ │ │ │ ├── ERC2981.sol │ │ │ │ │ │ │ │ └── README.adoc │ │ │ │ │ │ ├── utils │ │ │ │ │ │ │ ├── Address.sol │ │ │ │ │ │ │ ├── Arrays.sol │ │ │ │ │ │ │ ├── Base64.sol │ │ │ │ │ │ │ ├── Checkpoints.sol │ │ │ │ │ │ │ ├── Context.sol │ │ │ │ │ │ │ ├── Counters.sol │ │ │ │ │ │ │ ├── Create2.sol │ │ │ │ │ │ │ ├── Multicall.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── StorageSlot.sol │ │ │ │ │ │ │ ├── Strings.sol │ │ │ │ │ │ │ ├── Timers.sol │ │ │ │ │ │ │ ├── cryptography │ │ │ │ │ │ │ │ ├── ECDSA.sol │ │ │ │ │ │ │ │ ├── MerkleProof.sol │ │ │ │ │ │ │ │ ├── SignatureChecker.sol │ │ │ │ │ │ │ │ └── draft-EIP712.sol │ │ │ │ │ │ │ ├── escrow │ │ │ │ │ │ │ │ ├── ConditionalEscrow.sol │ │ │ │ │ │ │ │ ├── Escrow.sol │ │ │ │ │ │ │ │ └── RefundEscrow.sol │ │ │ │ │ │ │ ├── introspection │ │ │ │ │ │ │ │ ├── ERC165.sol │ │ │ │ │ │ │ │ ├── ERC165Checker.sol │ │ │ │ │ │ │ │ ├── ERC165Storage.sol │ │ │ │ │ │ │ │ ├── ERC1820Implementer.sol │ │ │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ │ │ │ │ └── IERC1820Registry.sol │ │ │ │ │ │ │ ├── math │ │ │ │ │ │ │ │ ├── Math.sol │ │ │ │ │ │ │ │ ├── SafeCast.sol │ │ │ │ │ │ │ │ ├── SafeMath.sol │ │ │ │ │ │ │ │ ├── SignedMath.sol │ │ │ │ │ │ │ │ └── SignedSafeMath.sol │ │ │ │ │ │ │ └── structs │ │ │ │ │ │ │ │ ├── BitMaps.sol │ │ │ │ │ │ │ │ ├── DoubleEndedQueue.sol │ │ │ │ │ │ │ │ ├── EnumerableMap.sol │ │ │ │ │ │ │ │ └── EnumerableSet.sol │ │ │ │ │ │ └── vendor │ │ │ │ │ │ │ ├── amb │ │ │ │ │ │ │ └── IAMB.sol │ │ │ │ │ │ │ ├── arbitrum │ │ │ │ │ │ │ ├── IArbSys.sol │ │ │ │ │ │ │ ├── IBridge.sol │ │ │ │ │ │ │ ├── IInbox.sol │ │ │ │ │ │ │ ├── IMessageProvider.sol │ │ │ │ │ │ │ └── IOutbox.sol │ │ │ │ │ │ │ ├── compound │ │ │ │ │ │ │ ├── ICompoundTimelock.sol │ │ │ │ │ │ │ └── LICENSE │ │ │ │ │ │ │ ├── optimism │ │ │ │ │ │ │ ├── ICrossDomainMessenger.sol │ │ │ │ │ │ │ └── LICENSE │ │ │ │ │ │ │ └── polygon │ │ │ │ │ │ │ └── IFxMessageProcessor.sol │ │ │ │ │ │ ├── docs │ │ │ │ │ │ ├── antora.yml │ │ │ │ │ │ ├── contract.hbs │ │ │ │ │ │ ├── helpers.js │ │ │ │ │ │ ├── modules │ │ │ │ │ │ │ └── ROOT │ │ │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ │ ├── tally-admin.png │ │ │ │ │ │ │ │ └── tally-vote.png │ │ │ │ │ │ │ │ ├── nav.adoc │ │ │ │ │ │ │ │ └── pages │ │ │ │ │ │ │ │ ├── access-control.adoc │ │ │ │ │ │ │ │ ├── crowdsales.adoc │ │ │ │ │ │ │ │ ├── drafts.adoc │ │ │ │ │ │ │ │ ├── erc1155.adoc │ │ │ │ │ │ │ │ ├── erc20-supply.adoc │ │ │ │ │ │ │ │ ├── erc20.adoc │ │ │ │ │ │ │ │ ├── erc721.adoc │ │ │ │ │ │ │ │ ├── erc777.adoc │ │ │ │ │ │ │ │ ├── extending-contracts.adoc │ │ │ │ │ │ │ │ ├── governance.adoc │ │ │ │ │ │ │ │ ├── index.adoc │ │ │ │ │ │ │ │ ├── releases-stability.adoc │ │ │ │ │ │ │ │ ├── tokens.adoc │ │ │ │ │ │ │ │ ├── upgradeable.adoc │ │ │ │ │ │ │ │ ├── utilities.adoc │ │ │ │ │ │ │ │ └── wizard.adoc │ │ │ │ │ │ └── prelude.hbs │ │ │ │ │ │ ├── hardhat.config.js │ │ │ │ │ │ ├── hardhat │ │ │ │ │ │ └── env-contract.js │ │ │ │ │ │ ├── logo.svg │ │ │ │ │ │ ├── migrations │ │ │ │ │ │ └── .gitkeep │ │ │ │ │ │ ├── netlify.toml │ │ │ │ │ │ ├── package-lock.json │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── renovate.json │ │ │ │ │ │ ├── scripts │ │ │ │ │ │ ├── gen-nav.js │ │ │ │ │ │ ├── git-user-config.sh │ │ │ │ │ │ ├── inheritanceOrdering.js │ │ │ │ │ │ ├── migrate-imports.js │ │ │ │ │ │ ├── prepack.sh │ │ │ │ │ │ ├── prepare-contracts-package.sh │ │ │ │ │ │ ├── prepare-docs-solc.js │ │ │ │ │ │ ├── prepare-docs.sh │ │ │ │ │ │ ├── release │ │ │ │ │ │ │ ├── release.sh │ │ │ │ │ │ │ ├── synchronize-versions.js │ │ │ │ │ │ │ ├── update-changelog-release-date.js │ │ │ │ │ │ │ ├── update-comment.js │ │ │ │ │ │ │ └── version.sh │ │ │ │ │ │ ├── remove-ignored-artifacts.js │ │ │ │ │ │ └── update-docs-branch.js │ │ │ │ │ │ ├── slither.config.json │ │ │ │ │ │ └── test │ │ │ │ │ │ ├── TESTING.md │ │ │ │ │ │ ├── access │ │ │ │ │ │ ├── AccessControl.behavior.js │ │ │ │ │ │ ├── AccessControl.test.js │ │ │ │ │ │ ├── AccessControlCrossChain.test.js │ │ │ │ │ │ ├── AccessControlEnumerable.test.js │ │ │ │ │ │ └── Ownable.test.js │ │ │ │ │ │ ├── crosschain │ │ │ │ │ │ └── CrossChainEnabled.test.js │ │ │ │ │ │ ├── finance │ │ │ │ │ │ ├── PaymentSplitter.test.js │ │ │ │ │ │ ├── VestingWallet.behavior.js │ │ │ │ │ │ └── VestingWallet.test.js │ │ │ │ │ │ ├── governance │ │ │ │ │ │ ├── Governor.test.js │ │ │ │ │ │ ├── TimelockController.test.js │ │ │ │ │ │ ├── compatibility │ │ │ │ │ │ │ └── GovernorCompatibilityBravo.test.js │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── GovernorComp.test.js │ │ │ │ │ │ │ ├── GovernorERC721.test.js │ │ │ │ │ │ │ ├── GovernorPreventLateQuorum.test.js │ │ │ │ │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ │ │ │ │ ├── GovernorTimelockControl.test.js │ │ │ │ │ │ │ ├── GovernorWeightQuorumFraction.test.js │ │ │ │ │ │ │ └── GovernorWithParams.test.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ ├── Votes.behavior.js │ │ │ │ │ │ │ └── Votes.test.js │ │ │ │ │ │ ├── helpers │ │ │ │ │ │ ├── crosschain.js │ │ │ │ │ │ ├── customError.js │ │ │ │ │ │ ├── eip712.js │ │ │ │ │ │ ├── enums.js │ │ │ │ │ │ ├── erc1967.js │ │ │ │ │ │ ├── governance.js │ │ │ │ │ │ └── sign.js │ │ │ │ │ │ ├── metatx │ │ │ │ │ │ ├── ERC2771Context.test.js │ │ │ │ │ │ └── MinimalForwarder.test.js │ │ │ │ │ │ ├── migrate-imports.test.js │ │ │ │ │ │ ├── proxy │ │ │ │ │ │ ├── Clones.behaviour.js │ │ │ │ │ │ ├── Clones.test.js │ │ │ │ │ │ ├── ERC1967 │ │ │ │ │ │ │ └── ERC1967Proxy.test.js │ │ │ │ │ │ ├── Proxy.behaviour.js │ │ │ │ │ │ ├── beacon │ │ │ │ │ │ │ ├── BeaconProxy.test.js │ │ │ │ │ │ │ └── UpgradeableBeacon.test.js │ │ │ │ │ │ ├── transparent │ │ │ │ │ │ │ ├── ProxyAdmin.test.js │ │ │ │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ │ │ │ │ └── TransparentUpgradeableProxy.test.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ ├── Initializable.test.js │ │ │ │ │ │ │ └── UUPSUpgradeable.test.js │ │ │ │ │ │ ├── security │ │ │ │ │ │ ├── Pausable.test.js │ │ │ │ │ │ ├── PullPayment.test.js │ │ │ │ │ │ └── ReentrancyGuard.test.js │ │ │ │ │ │ ├── token │ │ │ │ │ │ ├── ERC1155 │ │ │ │ │ │ │ ├── ERC1155.behavior.js │ │ │ │ │ │ │ ├── ERC1155.test.js │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ │ │ │ │ ├── ERC1155Supply.test.js │ │ │ │ │ │ │ │ └── ERC1155URIStorage.test.js │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ └── ERC1155PresetMinterPauser.test.js │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ └── ERC1155Holder.test.js │ │ │ │ │ │ ├── ERC20 │ │ │ │ │ │ │ ├── ERC20.behavior.js │ │ │ │ │ │ │ ├── ERC20.test.js │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC20Burnable.behavior.js │ │ │ │ │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ │ │ │ │ ├── ERC20Capped.behavior.js │ │ │ │ │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ │ │ │ │ ├── ERC20Snapshot.test.js │ │ │ │ │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ │ │ │ │ ├── ERC20VotesComp.test.js │ │ │ │ │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ │ │ │ │ └── draft-ERC20Permit.test.js │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ ├── ERC20PresetFixedSupply.test.js │ │ │ │ │ │ │ │ └── ERC20PresetMinterPauser.test.js │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ ├── SafeERC20.test.js │ │ │ │ │ │ │ │ └── TokenTimelock.test.js │ │ │ │ │ │ ├── ERC721 │ │ │ │ │ │ │ ├── ERC721.behavior.js │ │ │ │ │ │ │ ├── ERC721.test.js │ │ │ │ │ │ │ ├── ERC721Enumerable.test.js │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ │ │ │ │ ├── ERC721Royalty.test.js │ │ │ │ │ │ │ │ ├── ERC721URIStorage.test.js │ │ │ │ │ │ │ │ └── ERC721Votes.test.js │ │ │ │ │ │ │ ├── presets │ │ │ │ │ │ │ │ └── ERC721PresetMinterPauserAutoId.test.js │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ └── ERC721Holder.test.js │ │ │ │ │ │ ├── ERC777 │ │ │ │ │ │ │ ├── ERC777.behavior.js │ │ │ │ │ │ │ ├── ERC777.test.js │ │ │ │ │ │ │ └── presets │ │ │ │ │ │ │ │ └── ERC777PresetFixedSupply.test.js │ │ │ │ │ │ └── common │ │ │ │ │ │ │ └── ERC2981.behavior.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ ├── Address.test.js │ │ │ │ │ │ ├── Arrays.test.js │ │ │ │ │ │ ├── Base64.test.js │ │ │ │ │ │ ├── Checkpoints.test.js │ │ │ │ │ │ ├── Context.behavior.js │ │ │ │ │ │ ├── Context.test.js │ │ │ │ │ │ ├── Counters.test.js │ │ │ │ │ │ ├── Create2.test.js │ │ │ │ │ │ ├── Multicall.test.js │ │ │ │ │ │ ├── StorageSlot.test.js │ │ │ │ │ │ ├── Strings.test.js │ │ │ │ │ │ ├── TimersBlockNumberImpl.test.js │ │ │ │ │ │ ├── TimersTimestamp.test.js │ │ │ │ │ │ ├── cryptography │ │ │ │ │ │ ├── ECDSA.test.js │ │ │ │ │ │ ├── MerkleProof.test.js │ │ │ │ │ │ ├── SignatureChecker.test.js │ │ │ │ │ │ └── draft-EIP712.test.js │ │ │ │ │ │ ├── escrow │ │ │ │ │ │ ├── ConditionalEscrow.test.js │ │ │ │ │ │ ├── Escrow.behavior.js │ │ │ │ │ │ ├── Escrow.test.js │ │ │ │ │ │ └── RefundEscrow.test.js │ │ │ │ │ │ ├── introspection │ │ │ │ │ │ ├── ERC165.test.js │ │ │ │ │ │ ├── ERC165Checker.test.js │ │ │ │ │ │ ├── ERC165Storage.test.js │ │ │ │ │ │ ├── ERC1820Implementer.test.js │ │ │ │ │ │ └── SupportsInterface.behavior.js │ │ │ │ │ │ ├── math │ │ │ │ │ │ ├── Math.test.js │ │ │ │ │ │ ├── SafeCast.test.js │ │ │ │ │ │ ├── SafeMath.test.js │ │ │ │ │ │ ├── SignedMath.test.js │ │ │ │ │ │ └── SignedSafeMath.test.js │ │ │ │ │ │ └── structs │ │ │ │ │ │ ├── BitMap.test.js │ │ │ │ │ │ ├── DoubleEndedQueue.test.js │ │ │ │ │ │ ├── EnumerableMap.behavior.js │ │ │ │ │ │ ├── EnumerableMap.test.js │ │ │ │ │ │ ├── EnumerableSet.behavior.js │ │ │ │ │ │ └── EnumerableSet.test.js │ │ │ │ ├── remappings.txt │ │ │ │ ├── reports │ │ │ │ │ └── murky_gas_report.png │ │ │ │ ├── script │ │ │ │ │ ├── Merkle.s.sol │ │ │ │ │ ├── common │ │ │ │ │ │ └── ScriptHelper.sol │ │ │ │ │ ├── target │ │ │ │ │ │ ├── input.json │ │ │ │ │ │ └── output.json │ │ │ │ │ └── test │ │ │ │ │ │ └── Merkle.s.t.sol │ │ │ │ └── src │ │ │ │ │ ├── Merkle.sol │ │ │ │ │ ├── Xorkle.sol │ │ │ │ │ ├── common │ │ │ │ │ └── MurkyBase.sol │ │ │ │ │ └── test │ │ │ │ │ ├── Merkle.t.sol │ │ │ │ │ ├── MurkyBase.t.sol │ │ │ │ │ ├── StandardInput.t.sol │ │ │ │ │ ├── Xorkle.t.sol │ │ │ │ │ └── standard_data │ │ │ │ │ └── README.md │ │ │ ├── openzeppelin-contracts │ │ │ │ ├── .changeset │ │ │ │ │ ├── config.json │ │ │ │ │ ├── dull-ghosts-sip.md │ │ │ │ │ ├── grumpy-poets-rush.md │ │ │ │ │ ├── purple-squids-attend.md │ │ │ │ │ └── thirty-drinks-happen.md │ │ │ │ ├── .codecov.yml │ │ │ │ ├── .editorconfig │ │ │ │ ├── .eslintrc │ │ │ │ ├── .github │ │ │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ │ │ ├── bug_report.md │ │ │ │ │ │ ├── config.yml │ │ │ │ │ │ └── feature_request.md │ │ │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ │ │ ├── actions │ │ │ │ │ │ ├── gas-compare │ │ │ │ │ │ │ └── action.yml │ │ │ │ │ │ ├── setup │ │ │ │ │ │ │ └── action.yml │ │ │ │ │ │ └── storage-layout │ │ │ │ │ │ │ └── action.yml │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── actionlint.yml │ │ │ │ │ │ ├── changeset.yml │ │ │ │ │ │ ├── checks.yml │ │ │ │ │ │ ├── docs.yml │ │ │ │ │ │ ├── formal-verification.yml │ │ │ │ │ │ ├── release-cycle.yml │ │ │ │ │ │ └── upgradeable.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── .mocharc.js │ │ │ │ ├── .prettierrc │ │ │ │ ├── .solcover.js │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ │ ├── CONTRIBUTING.md │ │ │ │ ├── GUIDELINES.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── RELEASING.md │ │ │ │ ├── SECURITY.md │ │ │ │ ├── audits │ │ │ │ │ ├── 2017-03.md │ │ │ │ │ ├── 2018-10.pdf │ │ │ │ │ ├── 2022-10-Checkpoints.pdf │ │ │ │ │ ├── 2022-10-ERC4626.pdf │ │ │ │ │ ├── 2023-05-v4.9.pdf │ │ │ │ │ ├── 2023-10-v5.0.pdf │ │ │ │ │ └── README.md │ │ │ │ ├── certora │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── README.md │ │ │ │ │ ├── diff │ │ │ │ │ │ └── access_manager_AccessManager.sol.patch │ │ │ │ │ ├── harnesses │ │ │ │ │ │ ├── AccessControlDefaultAdminRulesHarness.sol │ │ │ │ │ │ ├── AccessControlHarness.sol │ │ │ │ │ │ ├── AccessManagedHarness.sol │ │ │ │ │ │ ├── AccessManagerHarness.sol │ │ │ │ │ │ ├── DoubleEndedQueueHarness.sol │ │ │ │ │ │ ├── ERC20FlashMintHarness.sol │ │ │ │ │ │ ├── ERC20PermitHarness.sol │ │ │ │ │ │ ├── ERC20WrapperHarness.sol │ │ │ │ │ │ ├── ERC3156FlashBorrowerHarness.sol │ │ │ │ │ │ ├── ERC721Harness.sol │ │ │ │ │ │ ├── ERC721ReceiverHarness.sol │ │ │ │ │ │ ├── EnumerableMapHarness.sol │ │ │ │ │ │ ├── EnumerableSetHarness.sol │ │ │ │ │ │ ├── InitializableHarness.sol │ │ │ │ │ │ ├── NoncesHarness.sol │ │ │ │ │ │ ├── Ownable2StepHarness.sol │ │ │ │ │ │ ├── OwnableHarness.sol │ │ │ │ │ │ ├── PausableHarness.sol │ │ │ │ │ │ └── TimelockControllerHarness.sol │ │ │ │ │ ├── reports │ │ │ │ │ │ ├── 2021-10.pdf │ │ │ │ │ │ ├── 2022-03.pdf │ │ │ │ │ │ └── 2022-05.pdf │ │ │ │ │ ├── run.js │ │ │ │ │ ├── specs.json │ │ │ │ │ └── specs │ │ │ │ │ │ ├── AccessControl.spec │ │ │ │ │ │ ├── AccessControlDefaultAdminRules.spec │ │ │ │ │ │ ├── AccessManaged.spec │ │ │ │ │ │ ├── AccessManager.spec │ │ │ │ │ │ ├── DoubleEndedQueue.spec │ │ │ │ │ │ ├── ERC20.spec │ │ │ │ │ │ ├── ERC20FlashMint.spec │ │ │ │ │ │ ├── ERC20Wrapper.spec │ │ │ │ │ │ ├── ERC721.spec │ │ │ │ │ │ ├── EnumerableMap.spec │ │ │ │ │ │ ├── EnumerableSet.spec │ │ │ │ │ │ ├── Initializable.spec │ │ │ │ │ │ ├── Nonces.spec │ │ │ │ │ │ ├── Ownable.spec │ │ │ │ │ │ ├── Ownable2Step.spec │ │ │ │ │ │ ├── Pausable.spec │ │ │ │ │ │ ├── TimelockController.spec │ │ │ │ │ │ ├── helpers │ │ │ │ │ │ └── helpers.spec │ │ │ │ │ │ └── methods │ │ │ │ │ │ ├── IAccessControl.spec │ │ │ │ │ │ ├── IAccessControlDefaultAdminRules.spec │ │ │ │ │ │ ├── IAccessManaged.spec │ │ │ │ │ │ ├── IAccessManager.spec │ │ │ │ │ │ ├── IERC20.spec │ │ │ │ │ │ ├── IERC2612.spec │ │ │ │ │ │ ├── IERC3156FlashBorrower.spec │ │ │ │ │ │ ├── IERC3156FlashLender.spec │ │ │ │ │ │ ├── IERC5313.spec │ │ │ │ │ │ ├── IERC721.spec │ │ │ │ │ │ ├── IERC721Receiver.spec │ │ │ │ │ │ ├── IOwnable.spec │ │ │ │ │ │ └── IOwnable2Step.spec │ │ │ │ ├── contracts │ │ │ │ │ ├── access │ │ │ │ │ │ ├── AccessControl.sol │ │ │ │ │ │ ├── IAccessControl.sol │ │ │ │ │ │ ├── Ownable.sol │ │ │ │ │ │ ├── Ownable2Step.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── AccessControlDefaultAdminRules.sol │ │ │ │ │ │ │ ├── AccessControlEnumerable.sol │ │ │ │ │ │ │ ├── IAccessControlDefaultAdminRules.sol │ │ │ │ │ │ │ └── IAccessControlEnumerable.sol │ │ │ │ │ │ └── manager │ │ │ │ │ │ │ ├── AccessManaged.sol │ │ │ │ │ │ │ ├── AccessManager.sol │ │ │ │ │ │ │ ├── AuthorityUtils.sol │ │ │ │ │ │ │ ├── IAccessManaged.sol │ │ │ │ │ │ │ ├── IAccessManager.sol │ │ │ │ │ │ │ └── IAuthority.sol │ │ │ │ │ ├── finance │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ └── VestingWallet.sol │ │ │ │ │ ├── governance │ │ │ │ │ │ ├── Governor.sol │ │ │ │ │ │ ├── IGovernor.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── TimelockController.sol │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ │ │ │ ├── GovernorPreventLateQuorum.sol │ │ │ │ │ │ │ ├── GovernorSettings.sol │ │ │ │ │ │ │ ├── GovernorStorage.sol │ │ │ │ │ │ │ ├── GovernorTimelockAccess.sol │ │ │ │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ │ │ │ ├── GovernorVotes.sol │ │ │ │ │ │ │ └── GovernorVotesQuorumFraction.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ ├── IVotes.sol │ │ │ │ │ │ │ └── Votes.sol │ │ │ │ │ ├── interfaces │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ ├── IERC1155MetadataURI.sol │ │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ │ ├── IERC1271.sol │ │ │ │ │ │ ├── IERC1363.sol │ │ │ │ │ │ ├── IERC1363Receiver.sol │ │ │ │ │ │ ├── IERC1363Spender.sol │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ │ │ ├── IERC1820Registry.sol │ │ │ │ │ │ ├── IERC1967.sol │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ ├── IERC2309.sol │ │ │ │ │ │ ├── IERC2612.sol │ │ │ │ │ │ ├── IERC2981.sol │ │ │ │ │ │ ├── IERC3156.sol │ │ │ │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ │ │ │ ├── IERC3156FlashLender.sol │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ ├── IERC4906.sol │ │ │ │ │ │ ├── IERC5267.sol │ │ │ │ │ │ ├── IERC5313.sol │ │ │ │ │ │ ├── IERC5805.sol │ │ │ │ │ │ ├── IERC6372.sol │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ │ ├── IERC777.sol │ │ │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ │ │ ├── IERC777Sender.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── draft-IERC1822.sol │ │ │ │ │ │ └── draft-IERC6093.sol │ │ │ │ │ ├── metatx │ │ │ │ │ │ ├── ERC2771Context.sol │ │ │ │ │ │ ├── ERC2771Forwarder.sol │ │ │ │ │ │ └── README.adoc │ │ │ │ │ ├── mocks │ │ │ │ │ │ ├── AccessManagedTarget.sol │ │ │ │ │ │ ├── ArraysMock.sol │ │ │ │ │ │ ├── AuthorityMock.sol │ │ │ │ │ │ ├── CallReceiverMock.sol │ │ │ │ │ │ ├── ContextMock.sol │ │ │ │ │ │ ├── DummyImplementation.sol │ │ │ │ │ │ ├── EIP712Verifier.sol │ │ │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ │ │ ├── ERC165 │ │ │ │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ │ │ │ ├── ERC165MaliciousData.sol │ │ │ │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ │ │ │ ├── ERC165NotSupported.sol │ │ │ │ │ │ │ └── ERC165ReturnBomb.sol │ │ │ │ │ │ ├── ERC2771ContextMock.sol │ │ │ │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ │ │ │ ├── EtherReceiverMock.sol │ │ │ │ │ │ ├── InitializableMock.sol │ │ │ │ │ │ ├── MulticallTest.sol │ │ │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ │ │ │ ├── PausableMock.sol │ │ │ │ │ │ ├── ReentrancyAttack.sol │ │ │ │ │ │ ├── ReentrancyMock.sol │ │ │ │ │ │ ├── RegressionImplementation.sol │ │ │ │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ │ │ │ ├── Stateless.sol │ │ │ │ │ │ ├── StorageSlotMock.sol │ │ │ │ │ │ ├── TimelockReentrant.sol │ │ │ │ │ │ ├── UpgradeableBeaconMock.sol │ │ │ │ │ │ ├── VotesMock.sol │ │ │ │ │ │ ├── compound │ │ │ │ │ │ │ └── CompTimelock.sol │ │ │ │ │ │ ├── docs │ │ │ │ │ │ │ ├── ERC20WithAutoMinerReward.sol │ │ │ │ │ │ │ ├── ERC4626Fees.sol │ │ │ │ │ │ │ ├── MyContractOwnable.sol │ │ │ │ │ │ │ └── governance │ │ │ │ │ │ │ │ ├── MyGovernor.sol │ │ │ │ │ │ │ │ ├── MyToken.sol │ │ │ │ │ │ │ │ ├── MyTokenTimestampBased.sol │ │ │ │ │ │ │ │ └── MyTokenWrapped.sol │ │ │ │ │ │ ├── governance │ │ │ │ │ │ │ ├── GovernorMock.sol │ │ │ │ │ │ │ ├── GovernorPreventLateQuorumMock.sol │ │ │ │ │ │ │ ├── GovernorStorageMock.sol │ │ │ │ │ │ │ ├── GovernorTimelockAccessMock.sol │ │ │ │ │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ │ │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ │ │ │ │ ├── GovernorVoteMock.sol │ │ │ │ │ │ │ └── GovernorWithParamsMock.sol │ │ │ │ │ │ ├── proxy │ │ │ │ │ │ │ ├── BadBeacon.sol │ │ │ │ │ │ │ ├── ClashingImplementation.sol │ │ │ │ │ │ │ └── UUPSUpgradeableMock.sol │ │ │ │ │ │ └── token │ │ │ │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ │ │ │ ├── ERC20ApprovalMock.sol │ │ │ │ │ │ │ ├── ERC20DecimalsMock.sol │ │ │ │ │ │ │ ├── ERC20ExcessDecimalsMock.sol │ │ │ │ │ │ │ ├── ERC20FlashMintMock.sol │ │ │ │ │ │ │ ├── ERC20ForceApproveMock.sol │ │ │ │ │ │ │ ├── ERC20Mock.sol │ │ │ │ │ │ │ ├── ERC20MulticallMock.sol │ │ │ │ │ │ │ ├── ERC20NoReturnMock.sol │ │ │ │ │ │ │ ├── ERC20Reentrant.sol │ │ │ │ │ │ │ ├── ERC20ReturnFalseMock.sol │ │ │ │ │ │ │ ├── ERC20VotesLegacyMock.sol │ │ │ │ │ │ │ ├── ERC4626LimitsMock.sol │ │ │ │ │ │ │ ├── ERC4626Mock.sol │ │ │ │ │ │ │ ├── ERC4626OffsetMock.sol │ │ │ │ │ │ │ ├── ERC4646FeesMock.sol │ │ │ │ │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol │ │ │ │ │ │ │ ├── ERC721ConsecutiveMock.sol │ │ │ │ │ │ │ ├── ERC721ReceiverMock.sol │ │ │ │ │ │ │ ├── ERC721URIStorageMock.sol │ │ │ │ │ │ │ └── VotesTimestamp.sol │ │ │ │ │ ├── package.json │ │ │ │ │ ├── proxy │ │ │ │ │ │ ├── Clones.sol │ │ │ │ │ │ ├── ERC1967 │ │ │ │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ │ │ │ └── ERC1967Utils.sol │ │ │ │ │ │ ├── Proxy.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── beacon │ │ │ │ │ │ │ ├── BeaconProxy.sol │ │ │ │ │ │ │ ├── IBeacon.sol │ │ │ │ │ │ │ └── UpgradeableBeacon.sol │ │ │ │ │ │ ├── transparent │ │ │ │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ ├── Initializable.sol │ │ │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ │ │ ├── token │ │ │ │ │ │ ├── ERC1155 │ │ │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ │ │ │ ├── ERC1155URIStorage.sol │ │ │ │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ └── ERC1155Holder.sol │ │ │ │ │ │ ├── ERC20 │ │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ │ │ │ ├── ERC20Permit.sol │ │ │ │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ │ │ │ ├── ERC4626.sol │ │ │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ │ │ └── IERC20Permit.sol │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ └── SafeERC20.sol │ │ │ │ │ │ ├── ERC721 │ │ │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ │ │ │ ├── ERC721Consecutive.sol │ │ │ │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ │ │ │ ├── ERC721Royalty.sol │ │ │ │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ │ │ │ ├── ERC721Votes.sol │ │ │ │ │ │ │ │ ├── ERC721Wrapper.sol │ │ │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ │ │ └── IERC721Metadata.sol │ │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ │ └── ERC721Holder.sol │ │ │ │ │ │ └── common │ │ │ │ │ │ │ ├── ERC2981.sol │ │ │ │ │ │ │ └── README.adoc │ │ │ │ │ ├── utils │ │ │ │ │ │ ├── Address.sol │ │ │ │ │ │ ├── Arrays.sol │ │ │ │ │ │ ├── Base64.sol │ │ │ │ │ │ ├── Context.sol │ │ │ │ │ │ ├── Create2.sol │ │ │ │ │ │ ├── Multicall.sol │ │ │ │ │ │ ├── Nonces.sol │ │ │ │ │ │ ├── Pausable.sol │ │ │ │ │ │ ├── README.adoc │ │ │ │ │ │ ├── ReentrancyGuard.sol │ │ │ │ │ │ ├── ShortStrings.sol │ │ │ │ │ │ ├── StorageSlot.sol │ │ │ │ │ │ ├── Strings.sol │ │ │ │ │ │ ├── cryptography │ │ │ │ │ │ │ ├── ECDSA.sol │ │ │ │ │ │ │ ├── EIP712.sol │ │ │ │ │ │ │ ├── MerkleProof.sol │ │ │ │ │ │ │ ├── MessageHashUtils.sol │ │ │ │ │ │ │ └── SignatureChecker.sol │ │ │ │ │ │ ├── introspection │ │ │ │ │ │ │ ├── ERC165.sol │ │ │ │ │ │ │ ├── ERC165Checker.sol │ │ │ │ │ │ │ └── IERC165.sol │ │ │ │ │ │ ├── math │ │ │ │ │ │ │ ├── Math.sol │ │ │ │ │ │ │ ├── SafeCast.sol │ │ │ │ │ │ │ └── SignedMath.sol │ │ │ │ │ │ ├── structs │ │ │ │ │ │ │ ├── BitMaps.sol │ │ │ │ │ │ │ ├── Checkpoints.sol │ │ │ │ │ │ │ ├── DoubleEndedQueue.sol │ │ │ │ │ │ │ ├── EnumerableMap.sol │ │ │ │ │ │ │ └── EnumerableSet.sol │ │ │ │ │ │ └── types │ │ │ │ │ │ │ └── Time.sol │ │ │ │ │ └── vendor │ │ │ │ │ │ └── compound │ │ │ │ │ │ ├── ICompoundTimelock.sol │ │ │ │ │ │ └── LICENSE │ │ │ │ ├── docs │ │ │ │ │ ├── README.md │ │ │ │ │ ├── antora.yml │ │ │ │ │ ├── config.js │ │ │ │ │ ├── modules │ │ │ │ │ │ └── ROOT │ │ │ │ │ │ │ ├── images │ │ │ │ │ │ │ ├── erc4626-attack-3a.png │ │ │ │ │ │ │ ├── erc4626-attack-3b.png │ │ │ │ │ │ │ ├── erc4626-attack-6.png │ │ │ │ │ │ │ ├── erc4626-attack.png │ │ │ │ │ │ │ ├── erc4626-deposit.png │ │ │ │ │ │ │ ├── erc4626-mint.png │ │ │ │ │ │ │ ├── erc4626-rate-linear.png │ │ │ │ │ │ │ ├── erc4626-rate-loglog.png │ │ │ │ │ │ │ ├── erc4626-rate-loglogext.png │ │ │ │ │ │ │ ├── tally-exec.png │ │ │ │ │ │ │ └── tally-vote.png │ │ │ │ │ │ │ ├── nav.adoc │ │ │ │ │ │ │ └── pages │ │ │ │ │ │ │ ├── access-control.adoc │ │ │ │ │ │ │ ├── backwards-compatibility.adoc │ │ │ │ │ │ │ ├── crowdsales.adoc │ │ │ │ │ │ │ ├── drafts.adoc │ │ │ │ │ │ │ ├── erc1155.adoc │ │ │ │ │ │ │ ├── erc20-supply.adoc │ │ │ │ │ │ │ ├── erc20.adoc │ │ │ │ │ │ │ ├── erc4626.adoc │ │ │ │ │ │ │ ├── erc721.adoc │ │ │ │ │ │ │ ├── extending-contracts.adoc │ │ │ │ │ │ │ ├── faq.adoc │ │ │ │ │ │ │ ├── governance.adoc │ │ │ │ │ │ │ ├── index.adoc │ │ │ │ │ │ │ ├── tokens.adoc │ │ │ │ │ │ │ ├── upgradeable.adoc │ │ │ │ │ │ │ ├── utilities.adoc │ │ │ │ │ │ │ └── wizard.adoc │ │ │ │ │ └── templates │ │ │ │ │ │ ├── contract.hbs │ │ │ │ │ │ ├── helpers.js │ │ │ │ │ │ ├── page.hbs │ │ │ │ │ │ └── properties.js │ │ │ │ ├── foundry.toml │ │ │ │ ├── hardhat.config.js │ │ │ │ ├── hardhat │ │ │ │ │ ├── env-artifacts.js │ │ │ │ │ ├── env-contract.js │ │ │ │ │ ├── ignore-unreachable-warnings.js │ │ │ │ │ ├── skip-foundry-tests.js │ │ │ │ │ └── task-test-get-files.js │ │ │ │ ├── lib │ │ │ │ │ ├── erc4626-tests │ │ │ │ │ │ ├── ERC4626.prop.sol │ │ │ │ │ │ ├── ERC4626.test.sol │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ └── README.md │ │ │ │ │ └── forge-std │ │ │ │ │ │ ├── .github │ │ │ │ │ │ └── workflows │ │ │ │ │ │ │ └── ci.yml │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── .gitmodules │ │ │ │ │ │ ├── LICENSE-APACHE │ │ │ │ │ │ ├── LICENSE-MIT │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── foundry.toml │ │ │ │ │ │ ├── lib │ │ │ │ │ │ └── ds-test │ │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ │ ├── demo │ │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ │ └── src │ │ │ │ │ │ │ └── test.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── src │ │ │ │ │ │ ├── Base.sol │ │ │ │ │ │ ├── Script.sol │ │ │ │ │ │ ├── StdAssertions.sol │ │ │ │ │ │ ├── StdChains.sol │ │ │ │ │ │ ├── StdCheats.sol │ │ │ │ │ │ ├── StdError.sol │ │ │ │ │ │ ├── StdJson.sol │ │ │ │ │ │ ├── StdMath.sol │ │ │ │ │ │ ├── StdStorage.sol │ │ │ │ │ │ ├── StdUtils.sol │ │ │ │ │ │ ├── Test.sol │ │ │ │ │ │ ├── Vm.sol │ │ │ │ │ │ ├── console.sol │ │ │ │ │ │ ├── console2.sol │ │ │ │ │ │ └── interfaces │ │ │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ │ │ └── IERC721.sol │ │ │ │ │ │ └── test │ │ │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ │ │ ├── StdChains.t.sol │ │ │ │ │ │ ├── StdCheats.t.sol │ │ │ │ │ │ ├── StdError.t.sol │ │ │ │ │ │ ├── StdMath.t.sol │ │ │ │ │ │ ├── StdStorage.t.sol │ │ │ │ │ │ ├── StdUtils.t.sol │ │ │ │ │ │ ├── compilation │ │ │ │ │ │ ├── CompilationScript.sol │ │ │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ │ │ ├── CompilationTest.sol │ │ │ │ │ │ └── CompilationTestBase.sol │ │ │ │ │ │ └── fixtures │ │ │ │ │ │ └── broadcast.log.json │ │ │ │ ├── logo.svg │ │ │ │ ├── netlify.toml │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ ├── remappings.txt │ │ │ │ ├── renovate.json │ │ │ │ ├── requirements.txt │ │ │ │ ├── scripts │ │ │ │ │ ├── checks │ │ │ │ │ │ ├── compare-layout.js │ │ │ │ │ │ ├── compareGasReports.js │ │ │ │ │ │ ├── extract-layout.js │ │ │ │ │ │ ├── generation.sh │ │ │ │ │ │ └── inheritance-ordering.js │ │ │ │ │ ├── gen-nav.js │ │ │ │ │ ├── generate │ │ │ │ │ │ ├── format-lines.js │ │ │ │ │ │ ├── run.js │ │ │ │ │ │ └── templates │ │ │ │ │ │ │ ├── Checkpoints.js │ │ │ │ │ │ │ ├── Checkpoints.opts.js │ │ │ │ │ │ │ ├── Checkpoints.t.js │ │ │ │ │ │ │ ├── EnumerableMap.js │ │ │ │ │ │ │ ├── EnumerableSet.js │ │ │ │ │ │ │ ├── SafeCast.js │ │ │ │ │ │ │ ├── StorageSlot.js │ │ │ │ │ │ │ └── conversion.js │ │ │ │ │ ├── git-user-config.sh │ │ │ │ │ ├── helpers.js │ │ │ │ │ ├── prepack.sh │ │ │ │ │ ├── prepare-docs.sh │ │ │ │ │ ├── release │ │ │ │ │ │ ├── format-changelog.js │ │ │ │ │ │ ├── synchronize-versions.js │ │ │ │ │ │ ├── update-comment.js │ │ │ │ │ │ ├── version.sh │ │ │ │ │ │ └── workflow │ │ │ │ │ │ │ ├── exit-prerelease.sh │ │ │ │ │ │ │ ├── github-release.js │ │ │ │ │ │ │ ├── integrity-check.sh │ │ │ │ │ │ │ ├── pack.sh │ │ │ │ │ │ │ ├── publish.sh │ │ │ │ │ │ │ ├── rerun.js │ │ │ │ │ │ │ ├── set-changesets-pr-title.js │ │ │ │ │ │ │ ├── start.sh │ │ │ │ │ │ │ └── state.js │ │ │ │ │ ├── remove-ignored-artifacts.js │ │ │ │ │ ├── solhint-custom │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── update-docs-branch.js │ │ │ │ │ └── upgradeable │ │ │ │ │ │ ├── README.md │ │ │ │ │ │ ├── patch-apply.sh │ │ │ │ │ │ ├── patch-save.sh │ │ │ │ │ │ ├── transpile-onto.sh │ │ │ │ │ │ ├── transpile.sh │ │ │ │ │ │ └── upgradeable.patch │ │ │ │ ├── slither.config.json │ │ │ │ ├── solhint.config.js │ │ │ │ └── test │ │ │ │ │ ├── TESTING.md │ │ │ │ │ ├── access │ │ │ │ │ ├── AccessControl.behavior.js │ │ │ │ │ ├── AccessControl.test.js │ │ │ │ │ ├── Ownable.test.js │ │ │ │ │ ├── Ownable2Step.test.js │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── AccessControlDefaultAdminRules.test.js │ │ │ │ │ │ └── AccessControlEnumerable.test.js │ │ │ │ │ └── manager │ │ │ │ │ │ ├── AccessManaged.test.js │ │ │ │ │ │ ├── AccessManager.behavior.js │ │ │ │ │ │ ├── AccessManager.predicate.js │ │ │ │ │ │ ├── AccessManager.test.js │ │ │ │ │ │ └── AuthorityUtils.test.js │ │ │ │ │ ├── finance │ │ │ │ │ ├── VestingWallet.behavior.js │ │ │ │ │ └── VestingWallet.test.js │ │ │ │ │ ├── governance │ │ │ │ │ ├── Governor.t.sol │ │ │ │ │ ├── Governor.test.js │ │ │ │ │ ├── TimelockController.test.js │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── GovernorERC721.test.js │ │ │ │ │ │ ├── GovernorPreventLateQuorum.test.js │ │ │ │ │ │ ├── GovernorStorage.test.js │ │ │ │ │ │ ├── GovernorTimelockAccess.test.js │ │ │ │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ │ │ │ ├── GovernorTimelockControl.test.js │ │ │ │ │ │ ├── GovernorVotesQuorumFraction.test.js │ │ │ │ │ │ └── GovernorWithParams.test.js │ │ │ │ │ └── utils │ │ │ │ │ │ ├── EIP6372.behavior.js │ │ │ │ │ │ ├── Votes.behavior.js │ │ │ │ │ │ └── Votes.test.js │ │ │ │ │ ├── helpers │ │ │ │ │ ├── access-manager.js │ │ │ │ │ ├── account.js │ │ │ │ │ ├── chainid.js │ │ │ │ │ ├── constants.js │ │ │ │ │ ├── create.js │ │ │ │ │ ├── customError.js │ │ │ │ │ ├── eip712.js │ │ │ │ │ ├── enums.js │ │ │ │ │ ├── erc1967.js │ │ │ │ │ ├── governance.js │ │ │ │ │ ├── iterate.js │ │ │ │ │ ├── math.js │ │ │ │ │ ├── methods.js │ │ │ │ │ ├── namespaced-storage.js │ │ │ │ │ ├── sign.js │ │ │ │ │ ├── time.js │ │ │ │ │ └── txpool.js │ │ │ │ │ ├── metatx │ │ │ │ │ ├── ERC2771Context.test.js │ │ │ │ │ ├── ERC2771Forwarder.t.sol │ │ │ │ │ └── ERC2771Forwarder.test.js │ │ │ │ │ ├── proxy │ │ │ │ │ ├── Clones.behaviour.js │ │ │ │ │ ├── Clones.test.js │ │ │ │ │ ├── ERC1967 │ │ │ │ │ │ ├── ERC1967Proxy.test.js │ │ │ │ │ │ └── ERC1967Utils.test.js │ │ │ │ │ ├── Proxy.behaviour.js │ │ │ │ │ ├── beacon │ │ │ │ │ │ ├── BeaconProxy.test.js │ │ │ │ │ │ └── UpgradeableBeacon.test.js │ │ │ │ │ ├── transparent │ │ │ │ │ │ ├── ProxyAdmin.test.js │ │ │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ │ │ │ └── TransparentUpgradeableProxy.test.js │ │ │ │ │ └── utils │ │ │ │ │ │ ├── Initializable.test.js │ │ │ │ │ │ └── UUPSUpgradeable.test.js │ │ │ │ │ ├── token │ │ │ │ │ ├── ERC1155 │ │ │ │ │ │ ├── ERC1155.behavior.js │ │ │ │ │ │ ├── ERC1155.test.js │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ │ │ │ ├── ERC1155Supply.test.js │ │ │ │ │ │ │ └── ERC1155URIStorage.test.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── ERC1155Holder.test.js │ │ │ │ │ ├── ERC20 │ │ │ │ │ │ ├── ERC20.behavior.js │ │ │ │ │ │ ├── ERC20.test.js │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC20Burnable.behavior.js │ │ │ │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ │ │ │ ├── ERC20Capped.behavior.js │ │ │ │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ │ │ │ ├── ERC20Permit.test.js │ │ │ │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ │ │ │ ├── ERC4626.t.sol │ │ │ │ │ │ │ └── ERC4626.test.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── SafeERC20.test.js │ │ │ │ │ ├── ERC721 │ │ │ │ │ │ ├── ERC721.behavior.js │ │ │ │ │ │ ├── ERC721.test.js │ │ │ │ │ │ ├── ERC721Enumerable.test.js │ │ │ │ │ │ ├── extensions │ │ │ │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ │ │ │ ├── ERC721Consecutive.t.sol │ │ │ │ │ │ │ ├── ERC721Consecutive.test.js │ │ │ │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ │ │ │ ├── ERC721Royalty.test.js │ │ │ │ │ │ │ ├── ERC721URIStorage.test.js │ │ │ │ │ │ │ ├── ERC721Votes.test.js │ │ │ │ │ │ │ └── ERC721Wrapper.test.js │ │ │ │ │ │ └── utils │ │ │ │ │ │ │ └── ERC721Holder.test.js │ │ │ │ │ └── common │ │ │ │ │ │ └── ERC2981.behavior.js │ │ │ │ │ └── utils │ │ │ │ │ ├── Address.test.js │ │ │ │ │ ├── Arrays.test.js │ │ │ │ │ ├── Base64.test.js │ │ │ │ │ ├── Context.behavior.js │ │ │ │ │ ├── Context.test.js │ │ │ │ │ ├── Create2.test.js │ │ │ │ │ ├── Multicall.test.js │ │ │ │ │ ├── Nonces.test.js │ │ │ │ │ ├── Pausable.test.js │ │ │ │ │ ├── ReentrancyGuard.test.js │ │ │ │ │ ├── ShortStrings.t.sol │ │ │ │ │ ├── ShortStrings.test.js │ │ │ │ │ ├── StorageSlot.test.js │ │ │ │ │ ├── Strings.test.js │ │ │ │ │ ├── cryptography │ │ │ │ │ ├── ECDSA.test.js │ │ │ │ │ ├── EIP712.test.js │ │ │ │ │ ├── MerkleProof.test.js │ │ │ │ │ ├── MessageHashUtils.test.js │ │ │ │ │ └── SignatureChecker.test.js │ │ │ │ │ ├── introspection │ │ │ │ │ ├── ERC165.test.js │ │ │ │ │ ├── ERC165Checker.test.js │ │ │ │ │ └── SupportsInterface.behavior.js │ │ │ │ │ ├── math │ │ │ │ │ ├── Math.t.sol │ │ │ │ │ ├── Math.test.js │ │ │ │ │ ├── SafeCast.test.js │ │ │ │ │ └── SignedMath.test.js │ │ │ │ │ ├── structs │ │ │ │ │ ├── BitMap.test.js │ │ │ │ │ ├── Checkpoints.t.sol │ │ │ │ │ ├── Checkpoints.test.js │ │ │ │ │ ├── DoubleEndedQueue.test.js │ │ │ │ │ ├── EnumerableMap.behavior.js │ │ │ │ │ ├── EnumerableMap.test.js │ │ │ │ │ ├── EnumerableSet.behavior.js │ │ │ │ │ └── EnumerableSet.test.js │ │ │ │ │ └── types │ │ │ │ │ └── Time.test.js │ │ │ ├── prb-test │ │ │ │ ├── .editorconfig │ │ │ │ ├── .gitattributes │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── ci.yml │ │ │ │ │ │ ├── release.yml │ │ │ │ │ │ └── sync.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .prettierignore │ │ │ │ ├── .prettierrc.yml │ │ │ │ ├── .solhint.json │ │ │ │ ├── .vscode │ │ │ │ │ └── settings.json │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── LICENSE.md │ │ │ │ ├── README.md │ │ │ │ ├── foundry.toml │ │ │ │ ├── package.json │ │ │ │ ├── pnpm-lock.yaml │ │ │ │ ├── src │ │ │ │ │ ├── Helpers.sol │ │ │ │ │ ├── PRBTest.sol │ │ │ │ │ └── Vm.sol │ │ │ │ └── test │ │ │ │ │ ├── PRBTest.t.sol │ │ │ │ │ ├── PRBTestMock.t.sol │ │ │ │ │ ├── assert-almost-eq │ │ │ │ │ └── assertAlmostEq.t.sol │ │ │ │ │ ├── assert-contains │ │ │ │ │ └── assertContains.t.sol │ │ │ │ │ ├── assert-eq │ │ │ │ │ └── assertEq.t.sol │ │ │ │ │ ├── assert-false │ │ │ │ │ └── assertFalse.t.sol │ │ │ │ │ ├── assert-gt │ │ │ │ │ └── assertGt.t.sol │ │ │ │ │ ├── assert-gte │ │ │ │ │ └── assertGte.t.sol │ │ │ │ │ ├── assert-lt │ │ │ │ │ └── assertLt.t.sol │ │ │ │ │ ├── assert-lte │ │ │ │ │ └── assertLte.t.sol │ │ │ │ │ ├── assert-not-eq │ │ │ │ │ └── assertNotEq.t.sol │ │ │ │ │ ├── assert-true │ │ │ │ │ └── assertTrue.t.sol │ │ │ │ │ └── fail │ │ │ │ │ └── fail.t.sol │ │ │ ├── solady │ │ │ │ ├── .gas-snapshot │ │ │ │ ├── .github │ │ │ │ │ ├── pull_request_template.md │ │ │ │ │ └── workflows │ │ │ │ │ │ ├── ci-all-via-ir.yml │ │ │ │ │ │ ├── ci-woke.yml │ │ │ │ │ │ └── ci.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── LICENSE.txt │ │ │ │ ├── README.md │ │ │ │ ├── audits │ │ │ │ │ ├── ackee-blockchain-solady-report.pdf │ │ │ │ │ ├── cantina-solady-report.pdf │ │ │ │ │ └── shung-solady-erc721-audit.pdf │ │ │ │ ├── ext │ │ │ │ │ └── woke │ │ │ │ │ │ ├── EIP712Mock.sol │ │ │ │ │ │ ├── ERC1155Mock.sol │ │ │ │ │ │ ├── ERC20Mock.sol │ │ │ │ │ │ ├── ERC721Mock.sol │ │ │ │ │ │ ├── MerkleProofMock.sol │ │ │ │ │ │ ├── NoETHMock.sol │ │ │ │ │ │ ├── SignatureCheckerMock.sol │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── test_eip712.py │ │ │ │ │ │ ├── test_eip712_fuzz.py │ │ │ │ │ │ ├── test_erc1155.py │ │ │ │ │ │ ├── test_erc1155_fuzz.py │ │ │ │ │ │ ├── test_erc20.py │ │ │ │ │ │ ├── test_erc721_fuzz.py │ │ │ │ │ │ ├── test_merkle_proof.py │ │ │ │ │ │ ├── test_merkle_proof_fuzz.py │ │ │ │ │ │ ├── test_signature_checker_fuzz.py │ │ │ │ │ │ ├── utils.py │ │ │ │ │ │ ├── weird │ │ │ │ │ │ ├── Approval.sol │ │ │ │ │ │ ├── ApprovalToZero.sol │ │ │ │ │ │ ├── BlockList.sol │ │ │ │ │ │ ├── Bytes32Metadata.sol │ │ │ │ │ │ ├── DaiPermit.sol │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ ├── HighDecimals.sol │ │ │ │ │ │ ├── LowDecimals.sol │ │ │ │ │ │ ├── MissingReturns.sol │ │ │ │ │ │ ├── NoRevert.sol │ │ │ │ │ │ ├── Pausable.sol │ │ │ │ │ │ ├── Proxied.sol │ │ │ │ │ │ ├── Reentrant.sol │ │ │ │ │ │ ├── ReturnsFalse.sol │ │ │ │ │ │ ├── RevertToZero.sol │ │ │ │ │ │ ├── RevertZero.sol │ │ │ │ │ │ ├── TransferFee.sol │ │ │ │ │ │ ├── Uint96.sol │ │ │ │ │ │ └── Upgradable.sol │ │ │ │ │ │ ├── woke-via-ir.toml │ │ │ │ │ │ └── woke.toml │ │ │ │ ├── foundry.toml │ │ │ │ ├── js │ │ │ │ │ ├── solady.d.ts │ │ │ │ │ ├── solady.js │ │ │ │ │ └── solady.test.js │ │ │ │ ├── lib │ │ │ │ │ └── ds-test │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ ├── demo │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ └── src │ │ │ │ │ │ └── test.sol │ │ │ │ ├── logo.svg │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ ├── src │ │ │ │ │ ├── Milady.sol │ │ │ │ │ ├── auth │ │ │ │ │ │ ├── Ownable.sol │ │ │ │ │ │ └── OwnableRoles.sol │ │ │ │ │ ├── tokens │ │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ │ ├── ERC2981.sol │ │ │ │ │ │ ├── ERC4626.sol │ │ │ │ │ │ ├── ERC6909.sol │ │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ │ └── WETH.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── Base64.sol │ │ │ │ │ │ ├── CREATE3.sol │ │ │ │ │ │ ├── Clone.sol │ │ │ │ │ │ ├── DateTimeLib.sol │ │ │ │ │ │ ├── DynamicBufferLib.sol │ │ │ │ │ │ ├── ECDSA.sol │ │ │ │ │ │ ├── EIP712.sol │ │ │ │ │ │ ├── ERC1967Factory.sol │ │ │ │ │ │ ├── ERC1967FactoryConstants.sol │ │ │ │ │ │ ├── FixedPointMathLib.sol │ │ │ │ │ │ ├── JSONParserLib.sol │ │ │ │ │ │ ├── LibBit.sol │ │ │ │ │ │ ├── LibBitmap.sol │ │ │ │ │ │ ├── LibClone.sol │ │ │ │ │ │ ├── LibMap.sol │ │ │ │ │ │ ├── LibPRNG.sol │ │ │ │ │ │ ├── LibRLP.sol │ │ │ │ │ │ ├── LibSort.sol │ │ │ │ │ │ ├── LibString.sol │ │ │ │ │ │ ├── LibZip.sol │ │ │ │ │ │ ├── MerkleProofLib.sol │ │ │ │ │ │ ├── MetadataReaderLib.sol │ │ │ │ │ │ ├── MinHeapLib.sol │ │ │ │ │ │ ├── Multicallable.sol │ │ │ │ │ │ ├── RedBlackTreeLib.sol │ │ │ │ │ │ ├── SSTORE2.sol │ │ │ │ │ │ ├── SafeCastLib.sol │ │ │ │ │ │ ├── SafeTransferLib.sol │ │ │ │ │ │ ├── SignatureCheckerLib.sol │ │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ │ └── test │ │ │ │ │ ├── Base64.t.sol │ │ │ │ │ ├── CREATE3.t.sol │ │ │ │ │ ├── DateTimeLib.t.sol │ │ │ │ │ ├── DynamicBufferLib.t.sol │ │ │ │ │ ├── ECDSA.t.sol │ │ │ │ │ ├── EIP712.t.sol │ │ │ │ │ ├── ERC1155.t.sol │ │ │ │ │ ├── ERC1967Factory.t.sol │ │ │ │ │ ├── ERC20.t.sol │ │ │ │ │ ├── ERC2981.t.sol │ │ │ │ │ ├── ERC4626.t.sol │ │ │ │ │ ├── ERC6909.t.sol │ │ │ │ │ ├── ERC721.t.sol │ │ │ │ │ ├── FixedPointMathLib.t.sol │ │ │ │ │ ├── JSONParserLib.t.sol │ │ │ │ │ ├── LibBit.t.sol │ │ │ │ │ ├── LibBitmap.t.sol │ │ │ │ │ ├── LibClone.t.sol │ │ │ │ │ ├── LibMap.t.sol │ │ │ │ │ ├── LibPRNG.t.sol │ │ │ │ │ ├── LibRLP.t.sol │ │ │ │ │ ├── LibSort.t.sol │ │ │ │ │ ├── LibString.t.sol │ │ │ │ │ ├── LibZip.t.sol │ │ │ │ │ ├── MerkleProofLib.t.sol │ │ │ │ │ ├── MetadataReaderLib.t.sol │ │ │ │ │ ├── MinHeapLib.t.sol │ │ │ │ │ ├── Multicallable.t.sol │ │ │ │ │ ├── Ownable.t.sol │ │ │ │ │ ├── OwnableRoles.t.sol │ │ │ │ │ ├── README.md │ │ │ │ │ ├── RedBlackTree.t.sol │ │ │ │ │ ├── SSTORE2.t.sol │ │ │ │ │ ├── SafeCastLib.t.sol │ │ │ │ │ ├── SafeTransferLib.t.sol │ │ │ │ │ ├── SignatureCheckerLib.t.sol │ │ │ │ │ ├── UUPSUpgradeable.t.sol │ │ │ │ │ ├── WETH.t.sol │ │ │ │ │ └── utils │ │ │ │ │ ├── InvariantTest.sol │ │ │ │ │ ├── SoladyTest.sol │ │ │ │ │ ├── TestPlus.sol │ │ │ │ │ ├── forge-std │ │ │ │ │ ├── Script.sol │ │ │ │ │ ├── Test.sol │ │ │ │ │ ├── Vm.sol │ │ │ │ │ └── console.sol │ │ │ │ │ ├── mocks │ │ │ │ │ ├── MockCd.sol │ │ │ │ │ ├── MockEIP712.sol │ │ │ │ │ ├── MockEIP712Dynamic.sol │ │ │ │ │ ├── MockERC1155.sol │ │ │ │ │ ├── MockERC1271Malicious.sol │ │ │ │ │ ├── MockERC1271Wallet.sol │ │ │ │ │ ├── MockERC20.sol │ │ │ │ │ ├── MockERC20LikeUSDT.sol │ │ │ │ │ ├── MockERC2981.sol │ │ │ │ │ ├── MockERC4626.sol │ │ │ │ │ ├── MockERC6909.sol │ │ │ │ │ ├── MockERC721.sol │ │ │ │ │ ├── MockETHRecipient.sol │ │ │ │ │ ├── MockImplementation.sol │ │ │ │ │ ├── MockMulticallable.sol │ │ │ │ │ ├── MockOwnable.sol │ │ │ │ │ ├── MockOwnableRoles.sol │ │ │ │ │ └── MockUUPSImplementation.sol │ │ │ │ │ └── weird-tokens │ │ │ │ │ ├── MissingReturnToken.sol │ │ │ │ │ ├── ReturnsFalseToken.sol │ │ │ │ │ ├── ReturnsRawBytesToken.sol │ │ │ │ │ ├── ReturnsTooLittleToken.sol │ │ │ │ │ ├── ReturnsTooMuchToken.sol │ │ │ │ │ ├── ReturnsTwoToken.sol │ │ │ │ │ └── RevertingToken.sol │ │ │ ├── solidity-bytes-utils │ │ │ │ ├── .gitattribute │ │ │ │ ├── .gitattributes │ │ │ │ ├── .gitignore │ │ │ │ ├── .npmignore │ │ │ │ ├── .soliumignore │ │ │ │ ├── .soliumrc.json │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── contracts │ │ │ │ │ ├── AssertBytes.sol │ │ │ │ │ ├── BytesLib.sol │ │ │ │ │ └── Migrations.sol │ │ │ │ ├── ethpm.json │ │ │ │ ├── migrations │ │ │ │ │ ├── 1_initial_migration.js │ │ │ │ │ └── 2_deploy_contracts.js │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ ├── test │ │ │ │ │ ├── TestBytesLib1.sol │ │ │ │ │ └── TestBytesLib2.sol │ │ │ │ └── truffle.js │ │ │ ├── solmate │ │ │ │ ├── .gas-snapshot │ │ │ │ ├── .gitattributes │ │ │ │ ├── .github │ │ │ │ │ ├── pull_request_template.md │ │ │ │ │ └── workflows │ │ │ │ │ │ └── tests.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── .prettierignore │ │ │ │ ├── .prettierrc │ │ │ │ ├── .vscode │ │ │ │ │ └── settings.json │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── audits │ │ │ │ │ └── v6-Fixed-Point-Solutions.pdf │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ │ └── ds-test │ │ │ │ │ │ ├── .gitignore │ │ │ │ │ │ ├── LICENSE │ │ │ │ │ │ ├── Makefile │ │ │ │ │ │ ├── default.nix │ │ │ │ │ │ ├── demo │ │ │ │ │ │ └── demo.sol │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── src │ │ │ │ │ │ └── test.sol │ │ │ │ ├── package-lock.json │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ │ ├── auth │ │ │ │ │ ├── Auth.sol │ │ │ │ │ ├── Owned.sol │ │ │ │ │ └── authorities │ │ │ │ │ │ ├── MultiRolesAuthority.sol │ │ │ │ │ │ └── RolesAuthority.sol │ │ │ │ │ ├── mixins │ │ │ │ │ └── ERC4626.sol │ │ │ │ │ ├── test │ │ │ │ │ ├── Auth.t.sol │ │ │ │ │ ├── Bytes32AddressLib.t.sol │ │ │ │ │ ├── CREATE3.t.sol │ │ │ │ │ ├── DSTestPlus.t.sol │ │ │ │ │ ├── ERC1155.t.sol │ │ │ │ │ ├── ERC20.t.sol │ │ │ │ │ ├── ERC4626.t.sol │ │ │ │ │ ├── ERC6909.t.sol │ │ │ │ │ ├── ERC721.t.sol │ │ │ │ │ ├── FixedPointMathLib.t.sol │ │ │ │ │ ├── LibString.t.sol │ │ │ │ │ ├── MerkleProofLib.t.sol │ │ │ │ │ ├── MultiRolesAuthority.t.sol │ │ │ │ │ ├── Owned.t.sol │ │ │ │ │ ├── ReentrancyGuard.t.sol │ │ │ │ │ ├── RolesAuthority.t.sol │ │ │ │ │ ├── SSTORE2.t.sol │ │ │ │ │ ├── SafeCastLib.t.sol │ │ │ │ │ ├── SafeTransferLib.t.sol │ │ │ │ │ ├── SignedWadMath.t.sol │ │ │ │ │ ├── WETH.t.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── DSInvariantTest.sol │ │ │ │ │ │ ├── DSTestPlus.sol │ │ │ │ │ │ ├── Hevm.sol │ │ │ │ │ │ ├── mocks │ │ │ │ │ │ ├── MockAuthChild.sol │ │ │ │ │ │ ├── MockAuthority.sol │ │ │ │ │ │ ├── MockERC1155.sol │ │ │ │ │ │ ├── MockERC20.sol │ │ │ │ │ │ ├── MockERC4626.sol │ │ │ │ │ │ ├── MockERC6909.sol │ │ │ │ │ │ ├── MockERC721.sol │ │ │ │ │ │ └── MockOwned.sol │ │ │ │ │ │ └── weird-tokens │ │ │ │ │ │ ├── MissingReturnToken.sol │ │ │ │ │ │ ├── ReturnsFalseToken.sol │ │ │ │ │ │ ├── ReturnsGarbageToken.sol │ │ │ │ │ │ ├── ReturnsTooLittleToken.sol │ │ │ │ │ │ ├── ReturnsTooMuchToken.sol │ │ │ │ │ │ ├── ReturnsTwoToken.sol │ │ │ │ │ │ └── RevertingToken.sol │ │ │ │ │ ├── tokens │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ ├── ERC6909.sol │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ └── WETH.sol │ │ │ │ │ └── utils │ │ │ │ │ ├── Bytes32AddressLib.sol │ │ │ │ │ ├── CREATE3.sol │ │ │ │ │ ├── FixedPointMathLib.sol │ │ │ │ │ ├── LibString.sol │ │ │ │ │ ├── MerkleProofLib.sol │ │ │ │ │ ├── ReentrancyGuard.sol │ │ │ │ │ ├── SSTORE2.sol │ │ │ │ │ ├── SafeCastLib.sol │ │ │ │ │ ├── SafeTransferLib.sol │ │ │ │ │ └── SignedWadMath.sol │ │ │ └── utils │ │ │ │ └── VyperDeployer.sol │ │ │ ├── package.json │ │ │ ├── pyproject.toml │ │ │ ├── remappings.txt │ │ │ ├── renovate.json │ │ │ ├── scripts │ │ │ └── compile.py │ │ │ ├── src │ │ │ ├── auth │ │ │ │ ├── AccessControl.vy │ │ │ │ ├── Ownable.vy │ │ │ │ ├── Ownable2Step.vy │ │ │ │ └── interfaces │ │ │ │ │ └── IAccessControl.vy │ │ │ ├── extensions │ │ │ │ ├── ERC2981.vy │ │ │ │ ├── ERC4626.vy │ │ │ │ └── interfaces │ │ │ │ │ └── IERC2981.vy │ │ │ ├── tokens │ │ │ │ ├── ERC1155.vy │ │ │ │ ├── ERC20.vy │ │ │ │ ├── ERC721.vy │ │ │ │ └── interfaces │ │ │ │ │ ├── IERC1155.vy │ │ │ │ │ ├── IERC1155MetadataURI.vy │ │ │ │ │ ├── IERC1155Receiver.vy │ │ │ │ │ ├── IERC20Permit.vy │ │ │ │ │ ├── IERC4906.vy │ │ │ │ │ ├── IERC721Enumerable.vy │ │ │ │ │ ├── IERC721Metadata.vy │ │ │ │ │ ├── IERC721Permit.vy │ │ │ │ │ └── IERC721Receiver.vy │ │ │ └── utils │ │ │ │ ├── Base64.vy │ │ │ │ ├── BatchDistributor.vy │ │ │ │ ├── Create2Address.vy │ │ │ │ ├── CreateAddress.vy │ │ │ │ ├── ECDSA.vy │ │ │ │ ├── EIP712DomainSeparator.vy │ │ │ │ ├── Math.vy │ │ │ │ ├── MerkleProofVerification.vy │ │ │ │ ├── Multicall.vy │ │ │ │ ├── SignatureChecker.vy │ │ │ │ └── interfaces │ │ │ │ └── IERC5267.vy │ │ │ ├── test │ │ │ ├── auth │ │ │ │ ├── AccessControl.t.sol │ │ │ │ ├── Ownable.t.sol │ │ │ │ ├── Ownable2Step.t.sol │ │ │ │ └── interfaces │ │ │ │ │ ├── IAccessControlExtended.sol │ │ │ │ │ ├── IOwnable.sol │ │ │ │ │ └── IOwnable2Step.sol │ │ │ ├── extensions │ │ │ │ ├── ERC2981.t.sol │ │ │ │ ├── ERC4626.t.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC2981Extended.sol │ │ │ │ │ └── IERC4626Extended.sol │ │ │ │ └── mocks │ │ │ │ │ └── ERC20ExcessDecimalsMock.sol │ │ │ ├── tokens │ │ │ │ ├── ERC1155.t.sol │ │ │ │ ├── ERC20.t.sol │ │ │ │ ├── ERC721.t.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155Extended.sol │ │ │ │ │ ├── IERC20Extended.sol │ │ │ │ │ ├── IERC4494.sol │ │ │ │ │ └── IERC721Extended.sol │ │ │ │ └── mocks │ │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ │ └── ERC721ReceiverMock.sol │ │ │ └── utils │ │ │ │ ├── Base64.t.sol │ │ │ │ ├── BatchDistributor.t.sol │ │ │ │ ├── Create2Address.t.sol │ │ │ │ ├── CreateAddress.t.sol │ │ │ │ ├── ECDSA.t.sol │ │ │ │ ├── EIP712DomainSeparator.t.sol │ │ │ │ ├── Math.t.sol │ │ │ │ ├── MerkleProofVerification.t.sol │ │ │ │ ├── Multicall.t.sol │ │ │ │ ├── SignatureChecker.t.sol │ │ │ │ ├── interfaces │ │ │ │ ├── IBase64.sol │ │ │ │ ├── IBatchDistributor.sol │ │ │ │ ├── ICreate2Address.sol │ │ │ │ ├── ICreateAddress.sol │ │ │ │ ├── IECDSA.sol │ │ │ │ ├── IEIP712DomainSeparator.sol │ │ │ │ ├── IMath.sol │ │ │ │ ├── IMerkleProofVerification.sol │ │ │ │ ├── IMulticall.sol │ │ │ │ └── ISignatureChecker.sol │ │ │ │ ├── mocks │ │ │ │ ├── Create2Impl.sol │ │ │ │ ├── ERC1271MaliciousMock.sol │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ ├── ERC20Mock.sol │ │ │ │ ├── EtherReceiver.sol │ │ │ │ └── MockCallee.sol │ │ │ │ └── scripts │ │ │ │ ├── elements.js │ │ │ │ ├── generate-bad-multiproof-leaves.js │ │ │ │ ├── generate-bad-multiproof-proof-flags.js │ │ │ │ ├── generate-bad-multiproof.js │ │ │ │ ├── generate-bad-proof.js │ │ │ │ ├── generate-leaf.js │ │ │ │ ├── generate-multiproof-leaves.js │ │ │ │ ├── generate-multiproof-proof-flags.js │ │ │ │ ├── generate-multiproof.js │ │ │ │ ├── generate-no-such-leaf.js │ │ │ │ ├── generate-proof-no-such-leaf.js │ │ │ │ ├── generate-proof.js │ │ │ │ ├── generate-root-no-such-leaf.js │ │ │ │ ├── generate-root.js │ │ │ │ ├── multiproof-bad-elements.js │ │ │ │ ├── multiproof-bad-indices.js │ │ │ │ └── multiproof-indices.js │ │ │ └── yarn.lock │ ├── remappings.txt │ ├── script │ │ ├── Deploy.s.sol │ │ └── Solve.s.sol │ └── src │ │ ├── Art.vy │ │ ├── Auction.vy │ │ ├── Challenge.sol │ │ ├── WETH.vy │ │ └── interfaces │ │ ├── IAuction.sol │ │ └── IWETH.sol │ └── solve.py ├── greedy-sad-man ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── Scarb.lock │ ├── Scarb.toml │ ├── deploy.py │ ├── solve.py │ ├── src │ │ ├── greedy_sad_man.cairo │ │ ├── lib.cairo │ │ ├── solution.cairo │ │ └── storage_array.cairo │ └── target │ │ ├── CACHEDIR.TAG │ │ └── dev │ │ ├── ctf.sierra.json │ │ ├── ctf.starknet_artifacts.json │ │ ├── ctf_GreedySadMan.compiled_contract_class.json │ │ └── ctf_GreedySadMan.contract_class.json │ └── solve.py ├── spacebank ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── foundry.toml │ ├── lib │ │ ├── forge-ctf │ │ │ └── src │ │ │ │ ├── CTFDeployment.sol │ │ │ │ └── CTFSolver.sol │ │ ├── forge-std │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ ├── ci.yml │ │ │ │ │ └── sync.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ └── safeconsole.sol │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── Vm.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ └── fixtures │ │ │ │ └── broadcast.log.json │ │ └── openzeppelin-contracts │ │ │ ├── .changeset │ │ │ ├── angry-dodos-grow.md │ │ │ ├── config.json │ │ │ ├── eleven-planets-relax.md │ │ │ └── violet-moons-tell.md │ │ │ ├── .codecov.yml │ │ │ ├── .editorconfig │ │ │ ├── .eslintrc │ │ │ ├── .github │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ ├── bug_report.md │ │ │ │ ├── config.yml │ │ │ │ └── feature_request.md │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ ├── actions │ │ │ │ ├── gas-compare │ │ │ │ │ └── action.yml │ │ │ │ ├── setup │ │ │ │ │ └── action.yml │ │ │ │ └── storage-layout │ │ │ │ │ └── action.yml │ │ │ └── workflows │ │ │ │ ├── actionlint.yml │ │ │ │ ├── changeset.yml │ │ │ │ ├── checks.yml │ │ │ │ ├── docs.yml │ │ │ │ ├── formal-verification.yml │ │ │ │ ├── release-cycle.yml │ │ │ │ └── upgradeable.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── .mocharc.js │ │ │ ├── .prettierrc │ │ │ ├── .solcover.js │ │ │ ├── CHANGELOG.md │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── FUNDING.json │ │ │ ├── GUIDELINES.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── RELEASING.md │ │ │ ├── SECURITY.md │ │ │ ├── audits │ │ │ ├── 2017-03.md │ │ │ ├── 2018-10.pdf │ │ │ ├── 2022-10-Checkpoints.pdf │ │ │ ├── 2022-10-ERC4626.pdf │ │ │ ├── 2023-05-v4.9.pdf │ │ │ ├── 2023-10-v5.0.pdf │ │ │ └── README.md │ │ │ ├── certora │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── diff │ │ │ │ └── access_manager_AccessManager.sol.patch │ │ │ ├── harnesses │ │ │ │ ├── AccessControlDefaultAdminRulesHarness.sol │ │ │ │ ├── AccessControlHarness.sol │ │ │ │ ├── AccessManagedHarness.sol │ │ │ │ ├── AccessManagerHarness.sol │ │ │ │ ├── DoubleEndedQueueHarness.sol │ │ │ │ ├── ERC20FlashMintHarness.sol │ │ │ │ ├── ERC20PermitHarness.sol │ │ │ │ ├── ERC20WrapperHarness.sol │ │ │ │ ├── ERC3156FlashBorrowerHarness.sol │ │ │ │ ├── ERC721Harness.sol │ │ │ │ ├── ERC721ReceiverHarness.sol │ │ │ │ ├── EnumerableMapHarness.sol │ │ │ │ ├── EnumerableSetHarness.sol │ │ │ │ ├── InitializableHarness.sol │ │ │ │ ├── NoncesHarness.sol │ │ │ │ ├── Ownable2StepHarness.sol │ │ │ │ ├── OwnableHarness.sol │ │ │ │ ├── PausableHarness.sol │ │ │ │ └── TimelockControllerHarness.sol │ │ │ ├── reports │ │ │ │ ├── 2021-10.pdf │ │ │ │ ├── 2022-03.pdf │ │ │ │ └── 2022-05.pdf │ │ │ ├── run.js │ │ │ ├── specs.json │ │ │ └── specs │ │ │ │ ├── AccessControl.spec │ │ │ │ ├── AccessControlDefaultAdminRules.spec │ │ │ │ ├── AccessManaged.spec │ │ │ │ ├── AccessManager.spec │ │ │ │ ├── DoubleEndedQueue.spec │ │ │ │ ├── ERC20.spec │ │ │ │ ├── ERC20FlashMint.spec │ │ │ │ ├── ERC20Wrapper.spec │ │ │ │ ├── ERC721.spec │ │ │ │ ├── EnumerableMap.spec │ │ │ │ ├── EnumerableSet.spec │ │ │ │ ├── Initializable.spec │ │ │ │ ├── Nonces.spec │ │ │ │ ├── Ownable.spec │ │ │ │ ├── Ownable2Step.spec │ │ │ │ ├── Pausable.spec │ │ │ │ ├── TimelockController.spec │ │ │ │ ├── helpers │ │ │ │ └── helpers.spec │ │ │ │ └── methods │ │ │ │ ├── IAccessControl.spec │ │ │ │ ├── IAccessControlDefaultAdminRules.spec │ │ │ │ ├── IAccessManaged.spec │ │ │ │ ├── IAccessManager.spec │ │ │ │ ├── IERC20.spec │ │ │ │ ├── IERC2612.spec │ │ │ │ ├── IERC3156FlashBorrower.spec │ │ │ │ ├── IERC3156FlashLender.spec │ │ │ │ ├── IERC5313.spec │ │ │ │ ├── IERC721.spec │ │ │ │ ├── IERC721Receiver.spec │ │ │ │ ├── IOwnable.spec │ │ │ │ └── IOwnable2Step.spec │ │ │ ├── contracts │ │ │ ├── access │ │ │ │ ├── AccessControl.sol │ │ │ │ ├── IAccessControl.sol │ │ │ │ ├── Ownable.sol │ │ │ │ ├── Ownable2Step.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── extensions │ │ │ │ │ ├── AccessControlDefaultAdminRules.sol │ │ │ │ │ ├── AccessControlEnumerable.sol │ │ │ │ │ ├── IAccessControlDefaultAdminRules.sol │ │ │ │ │ └── IAccessControlEnumerable.sol │ │ │ │ └── manager │ │ │ │ │ ├── AccessManaged.sol │ │ │ │ │ ├── AccessManager.sol │ │ │ │ │ ├── AuthorityUtils.sol │ │ │ │ │ ├── IAccessManaged.sol │ │ │ │ │ ├── IAccessManager.sol │ │ │ │ │ └── IAuthority.sol │ │ │ ├── finance │ │ │ │ ├── README.adoc │ │ │ │ └── VestingWallet.sol │ │ │ ├── governance │ │ │ │ ├── Governor.sol │ │ │ │ ├── IGovernor.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── TimelockController.sol │ │ │ │ ├── extensions │ │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ │ ├── GovernorPreventLateQuorum.sol │ │ │ │ │ ├── GovernorSettings.sol │ │ │ │ │ ├── GovernorStorage.sol │ │ │ │ │ ├── GovernorTimelockAccess.sol │ │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ │ ├── GovernorVotes.sol │ │ │ │ │ └── GovernorVotesQuorumFraction.sol │ │ │ │ └── utils │ │ │ │ │ ├── IVotes.sol │ │ │ │ │ └── Votes.sol │ │ │ ├── interfaces │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC1155MetadataURI.sol │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ ├── IERC1271.sol │ │ │ │ ├── IERC1363.sol │ │ │ │ ├── IERC1363Receiver.sol │ │ │ │ ├── IERC1363Spender.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ ├── IERC1820Registry.sol │ │ │ │ ├── IERC1967.sol │ │ │ │ ├── IERC20.sol │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ ├── IERC2309.sol │ │ │ │ ├── IERC2612.sol │ │ │ │ ├── IERC2981.sol │ │ │ │ ├── IERC3156.sol │ │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ │ ├── IERC3156FlashLender.sol │ │ │ │ ├── IERC4626.sol │ │ │ │ ├── IERC4906.sol │ │ │ │ ├── IERC5267.sol │ │ │ │ ├── IERC5313.sol │ │ │ │ ├── IERC5805.sol │ │ │ │ ├── IERC6372.sol │ │ │ │ ├── IERC721.sol │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ ├── IERC777.sol │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ ├── IERC777Sender.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── draft-IERC1822.sol │ │ │ │ └── draft-IERC6093.sol │ │ │ ├── metatx │ │ │ │ ├── ERC2771Context.sol │ │ │ │ ├── ERC2771Forwarder.sol │ │ │ │ └── README.adoc │ │ │ ├── mocks │ │ │ │ ├── AccessManagedTarget.sol │ │ │ │ ├── ArraysMock.sol │ │ │ │ ├── AuthorityMock.sol │ │ │ │ ├── CallReceiverMock.sol │ │ │ │ ├── ContextMock.sol │ │ │ │ ├── DummyImplementation.sol │ │ │ │ ├── EIP712Verifier.sol │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ ├── ERC165 │ │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ │ ├── ERC165MaliciousData.sol │ │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ │ ├── ERC165NotSupported.sol │ │ │ │ │ └── ERC165ReturnBomb.sol │ │ │ │ ├── ERC2771ContextMock.sol │ │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ │ ├── EtherReceiverMock.sol │ │ │ │ ├── InitializableMock.sol │ │ │ │ ├── MulticallHelper.sol │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ │ ├── PausableMock.sol │ │ │ │ ├── ReentrancyAttack.sol │ │ │ │ ├── ReentrancyMock.sol │ │ │ │ ├── RegressionImplementation.sol │ │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ │ ├── Stateless.sol │ │ │ │ ├── StorageSlotMock.sol │ │ │ │ ├── TimelockReentrant.sol │ │ │ │ ├── UpgradeableBeaconMock.sol │ │ │ │ ├── VotesMock.sol │ │ │ │ ├── compound │ │ │ │ │ └── CompTimelock.sol │ │ │ │ ├── docs │ │ │ │ │ ├── ERC20WithAutoMinerReward.sol │ │ │ │ │ ├── ERC4626Fees.sol │ │ │ │ │ ├── access-control │ │ │ │ │ │ ├── AccessControlERC20MintBase.sol │ │ │ │ │ │ ├── AccessControlERC20MintMissing.sol │ │ │ │ │ │ ├── AccessControlERC20MintOnlyRole.sol │ │ │ │ │ │ ├── AccessManagedERC20MintBase.sol │ │ │ │ │ │ └── MyContractOwnable.sol │ │ │ │ │ └── governance │ │ │ │ │ │ ├── MyGovernor.sol │ │ │ │ │ │ ├── MyToken.sol │ │ │ │ │ │ ├── MyTokenTimestampBased.sol │ │ │ │ │ │ └── MyTokenWrapped.sol │ │ │ │ ├── governance │ │ │ │ │ ├── GovernorMock.sol │ │ │ │ │ ├── GovernorPreventLateQuorumMock.sol │ │ │ │ │ ├── GovernorStorageMock.sol │ │ │ │ │ ├── GovernorTimelockAccessMock.sol │ │ │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ │ │ ├── GovernorVoteMock.sol │ │ │ │ │ └── GovernorWithParamsMock.sol │ │ │ │ ├── proxy │ │ │ │ │ ├── BadBeacon.sol │ │ │ │ │ ├── ClashingImplementation.sol │ │ │ │ │ └── UUPSUpgradeableMock.sol │ │ │ │ └── token │ │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ │ ├── ERC20ApprovalMock.sol │ │ │ │ │ ├── ERC20DecimalsMock.sol │ │ │ │ │ ├── ERC20ExcessDecimalsMock.sol │ │ │ │ │ ├── ERC20FlashMintMock.sol │ │ │ │ │ ├── ERC20ForceApproveMock.sol │ │ │ │ │ ├── ERC20Mock.sol │ │ │ │ │ ├── ERC20MulticallMock.sol │ │ │ │ │ ├── ERC20NoReturnMock.sol │ │ │ │ │ ├── ERC20Reentrant.sol │ │ │ │ │ ├── ERC20ReturnFalseMock.sol │ │ │ │ │ ├── ERC20VotesLegacyMock.sol │ │ │ │ │ ├── ERC20VotesTimestampMock.sol │ │ │ │ │ ├── ERC4626LimitsMock.sol │ │ │ │ │ ├── ERC4626Mock.sol │ │ │ │ │ ├── ERC4626OffsetMock.sol │ │ │ │ │ ├── ERC4646FeesMock.sol │ │ │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol │ │ │ │ │ ├── ERC721ConsecutiveMock.sol │ │ │ │ │ ├── ERC721ReceiverMock.sol │ │ │ │ │ └── ERC721URIStorageMock.sol │ │ │ ├── package.json │ │ │ ├── proxy │ │ │ │ ├── Clones.sol │ │ │ │ ├── ERC1967 │ │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ │ └── ERC1967Utils.sol │ │ │ │ ├── Proxy.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── beacon │ │ │ │ │ ├── BeaconProxy.sol │ │ │ │ │ ├── IBeacon.sol │ │ │ │ │ └── UpgradeableBeacon.sol │ │ │ │ ├── transparent │ │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ │ └── utils │ │ │ │ │ ├── Initializable.sol │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ ├── token │ │ │ │ ├── ERC1155 │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ │ ├── ERC1155URIStorage.sol │ │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ │ └── utils │ │ │ │ │ │ └── ERC1155Holder.sol │ │ │ │ ├── ERC20 │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ │ ├── ERC20Permit.sol │ │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ │ ├── ERC4626.sol │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ └── IERC20Permit.sol │ │ │ │ │ └── utils │ │ │ │ │ │ └── SafeERC20.sol │ │ │ │ ├── ERC721 │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ │ ├── ERC721Consecutive.sol │ │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ │ ├── ERC721Royalty.sol │ │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ │ ├── ERC721Votes.sol │ │ │ │ │ │ ├── ERC721Wrapper.sol │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ └── IERC721Metadata.sol │ │ │ │ │ └── utils │ │ │ │ │ │ └── ERC721Holder.sol │ │ │ │ └── common │ │ │ │ │ ├── ERC2981.sol │ │ │ │ │ └── README.adoc │ │ │ ├── utils │ │ │ │ ├── Address.sol │ │ │ │ ├── Arrays.sol │ │ │ │ ├── Base64.sol │ │ │ │ ├── Context.sol │ │ │ │ ├── Create2.sol │ │ │ │ ├── Multicall.sol │ │ │ │ ├── Nonces.sol │ │ │ │ ├── Pausable.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── ReentrancyGuard.sol │ │ │ │ ├── ShortStrings.sol │ │ │ │ ├── StorageSlot.sol │ │ │ │ ├── Strings.sol │ │ │ │ ├── cryptography │ │ │ │ │ ├── ECDSA.sol │ │ │ │ │ ├── EIP712.sol │ │ │ │ │ ├── MerkleProof.sol │ │ │ │ │ ├── MessageHashUtils.sol │ │ │ │ │ └── SignatureChecker.sol │ │ │ │ ├── introspection │ │ │ │ │ ├── ERC165.sol │ │ │ │ │ ├── ERC165Checker.sol │ │ │ │ │ └── IERC165.sol │ │ │ │ ├── math │ │ │ │ │ ├── Math.sol │ │ │ │ │ ├── SafeCast.sol │ │ │ │ │ └── SignedMath.sol │ │ │ │ ├── structs │ │ │ │ │ ├── BitMaps.sol │ │ │ │ │ ├── Checkpoints.sol │ │ │ │ │ ├── DoubleEndedQueue.sol │ │ │ │ │ ├── EnumerableMap.sol │ │ │ │ │ └── EnumerableSet.sol │ │ │ │ └── types │ │ │ │ │ └── Time.sol │ │ │ └── vendor │ │ │ │ └── compound │ │ │ │ ├── ICompoundTimelock.sol │ │ │ │ └── LICENSE │ │ │ ├── docs │ │ │ ├── README.md │ │ │ ├── antora.yml │ │ │ ├── config.js │ │ │ ├── modules │ │ │ │ └── ROOT │ │ │ │ │ ├── images │ │ │ │ │ ├── access-control-multiple.svg │ │ │ │ │ ├── access-manager-functions.svg │ │ │ │ │ ├── access-manager.svg │ │ │ │ │ ├── erc4626-attack-3a.png │ │ │ │ │ ├── erc4626-attack-3b.png │ │ │ │ │ ├── erc4626-attack-6.png │ │ │ │ │ ├── erc4626-attack.png │ │ │ │ │ ├── erc4626-deposit.png │ │ │ │ │ ├── erc4626-mint.png │ │ │ │ │ ├── erc4626-rate-linear.png │ │ │ │ │ ├── erc4626-rate-loglog.png │ │ │ │ │ ├── erc4626-rate-loglogext.png │ │ │ │ │ ├── tally-exec.png │ │ │ │ │ └── tally-vote.png │ │ │ │ │ ├── nav.adoc │ │ │ │ │ └── pages │ │ │ │ │ ├── access-control.adoc │ │ │ │ │ ├── backwards-compatibility.adoc │ │ │ │ │ ├── crowdsales.adoc │ │ │ │ │ ├── drafts.adoc │ │ │ │ │ ├── erc1155.adoc │ │ │ │ │ ├── erc20-supply.adoc │ │ │ │ │ ├── erc20.adoc │ │ │ │ │ ├── erc4626.adoc │ │ │ │ │ ├── erc721.adoc │ │ │ │ │ ├── extending-contracts.adoc │ │ │ │ │ ├── faq.adoc │ │ │ │ │ ├── governance.adoc │ │ │ │ │ ├── index.adoc │ │ │ │ │ ├── tokens.adoc │ │ │ │ │ ├── upgradeable.adoc │ │ │ │ │ ├── utilities.adoc │ │ │ │ │ └── wizard.adoc │ │ │ └── templates │ │ │ │ ├── contract.hbs │ │ │ │ ├── helpers.js │ │ │ │ ├── page.hbs │ │ │ │ └── properties.js │ │ │ ├── foundry.toml │ │ │ ├── hardhat.config.js │ │ │ ├── hardhat │ │ │ ├── env-artifacts.js │ │ │ ├── env-contract.js │ │ │ ├── ignore-unreachable-warnings.js │ │ │ ├── skip-foundry-tests.js │ │ │ └── task-test-get-files.js │ │ │ ├── lib │ │ │ ├── erc4626-tests │ │ │ │ ├── ERC4626.prop.sol │ │ │ │ ├── ERC4626.test.sol │ │ │ │ ├── LICENSE │ │ │ │ └── README.md │ │ │ └── forge-std │ │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ └── ci.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── LICENSE-APACHE │ │ │ │ ├── LICENSE-MIT │ │ │ │ ├── README.md │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ │ ├── package.json │ │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ └── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ └── fixtures │ │ │ │ └── broadcast.log.json │ │ │ ├── logo.svg │ │ │ ├── netlify.toml │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── remappings.txt │ │ │ ├── renovate.json │ │ │ ├── requirements.txt │ │ │ ├── scripts │ │ │ ├── checks │ │ │ │ ├── compare-layout.js │ │ │ │ ├── compareGasReports.js │ │ │ │ ├── extract-layout.js │ │ │ │ ├── generation.sh │ │ │ │ └── inheritance-ordering.js │ │ │ ├── gen-nav.js │ │ │ ├── generate │ │ │ │ ├── format-lines.js │ │ │ │ ├── run.js │ │ │ │ └── templates │ │ │ │ │ ├── Checkpoints.js │ │ │ │ │ ├── Checkpoints.opts.js │ │ │ │ │ ├── Checkpoints.t.js │ │ │ │ │ ├── EnumerableMap.js │ │ │ │ │ ├── EnumerableMap.opts.js │ │ │ │ │ ├── EnumerableSet.js │ │ │ │ │ ├── EnumerableSet.opts.js │ │ │ │ │ ├── SafeCast.js │ │ │ │ │ ├── StorageSlot.js │ │ │ │ │ └── conversion.js │ │ │ ├── git-user-config.sh │ │ │ ├── helpers.js │ │ │ ├── prepack.sh │ │ │ ├── prepare-docs.sh │ │ │ ├── release │ │ │ │ ├── format-changelog.js │ │ │ │ ├── synchronize-versions.js │ │ │ │ ├── update-comment.js │ │ │ │ ├── version.sh │ │ │ │ └── workflow │ │ │ │ │ ├── exit-prerelease.sh │ │ │ │ │ ├── github-release.js │ │ │ │ │ ├── integrity-check.sh │ │ │ │ │ ├── pack.sh │ │ │ │ │ ├── publish.sh │ │ │ │ │ ├── rerun.js │ │ │ │ │ ├── set-changesets-pr-title.js │ │ │ │ │ ├── start.sh │ │ │ │ │ └── state.js │ │ │ ├── remove-ignored-artifacts.js │ │ │ ├── solhint-custom │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ ├── update-docs-branch.js │ │ │ └── upgradeable │ │ │ │ ├── README.md │ │ │ │ ├── patch-apply.sh │ │ │ │ ├── patch-save.sh │ │ │ │ ├── transpile-onto.sh │ │ │ │ ├── transpile.sh │ │ │ │ └── upgradeable.patch │ │ │ ├── slither.config.json │ │ │ ├── solhint.config.js │ │ │ └── test │ │ │ ├── TESTING.md │ │ │ ├── access │ │ │ ├── AccessControl.behavior.js │ │ │ ├── AccessControl.test.js │ │ │ ├── Ownable.test.js │ │ │ ├── Ownable2Step.test.js │ │ │ ├── extensions │ │ │ │ ├── AccessControlDefaultAdminRules.test.js │ │ │ │ └── AccessControlEnumerable.test.js │ │ │ └── manager │ │ │ │ ├── AccessManaged.test.js │ │ │ │ ├── AccessManager.behavior.js │ │ │ │ ├── AccessManager.predicate.js │ │ │ │ ├── AccessManager.test.js │ │ │ │ └── AuthorityUtils.test.js │ │ │ ├── finance │ │ │ ├── VestingWallet.behavior.js │ │ │ └── VestingWallet.test.js │ │ │ ├── governance │ │ │ ├── Governor.t.sol │ │ │ ├── Governor.test.js │ │ │ ├── TimelockController.test.js │ │ │ ├── extensions │ │ │ │ ├── GovernorERC721.test.js │ │ │ │ ├── GovernorPreventLateQuorum.test.js │ │ │ │ ├── GovernorStorage.test.js │ │ │ │ ├── GovernorTimelockAccess.test.js │ │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ │ ├── GovernorTimelockControl.test.js │ │ │ │ ├── GovernorVotesQuorumFraction.test.js │ │ │ │ └── GovernorWithParams.test.js │ │ │ └── utils │ │ │ │ ├── ERC6372.behavior.js │ │ │ │ ├── Votes.behavior.js │ │ │ │ └── Votes.test.js │ │ │ ├── helpers │ │ │ ├── access-manager.js │ │ │ ├── account.js │ │ │ ├── constants.js │ │ │ ├── eip712-types.js │ │ │ ├── eip712.js │ │ │ ├── enums.js │ │ │ ├── governance.js │ │ │ ├── iterate.js │ │ │ ├── math.js │ │ │ ├── methods.js │ │ │ ├── random.js │ │ │ ├── storage.js │ │ │ ├── time.js │ │ │ └── txpool.js │ │ │ ├── metatx │ │ │ ├── ERC2771Context.test.js │ │ │ ├── ERC2771Forwarder.t.sol │ │ │ └── ERC2771Forwarder.test.js │ │ │ ├── proxy │ │ │ ├── Clones.behaviour.js │ │ │ ├── Clones.test.js │ │ │ ├── ERC1967 │ │ │ │ ├── ERC1967Proxy.test.js │ │ │ │ └── ERC1967Utils.test.js │ │ │ ├── Proxy.behaviour.js │ │ │ ├── beacon │ │ │ │ ├── BeaconProxy.test.js │ │ │ │ └── UpgradeableBeacon.test.js │ │ │ ├── transparent │ │ │ │ ├── ProxyAdmin.test.js │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ │ └── TransparentUpgradeableProxy.test.js │ │ │ └── utils │ │ │ │ ├── Initializable.test.js │ │ │ │ └── UUPSUpgradeable.test.js │ │ │ ├── sanity.test.js │ │ │ ├── token │ │ │ ├── ERC1155 │ │ │ │ ├── ERC1155.behavior.js │ │ │ │ ├── ERC1155.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ │ ├── ERC1155Supply.test.js │ │ │ │ │ └── ERC1155URIStorage.test.js │ │ │ │ └── utils │ │ │ │ │ └── ERC1155Holder.test.js │ │ │ ├── ERC20 │ │ │ │ ├── ERC20.behavior.js │ │ │ │ ├── ERC20.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ │ ├── ERC20Permit.test.js │ │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ │ ├── ERC4626.t.sol │ │ │ │ │ └── ERC4626.test.js │ │ │ │ └── utils │ │ │ │ │ └── SafeERC20.test.js │ │ │ ├── ERC721 │ │ │ │ ├── ERC721.behavior.js │ │ │ │ ├── ERC721.test.js │ │ │ │ ├── ERC721Enumerable.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ │ ├── ERC721Consecutive.t.sol │ │ │ │ │ ├── ERC721Consecutive.test.js │ │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ │ ├── ERC721Royalty.test.js │ │ │ │ │ ├── ERC721URIStorage.test.js │ │ │ │ │ ├── ERC721Votes.test.js │ │ │ │ │ └── ERC721Wrapper.test.js │ │ │ │ └── utils │ │ │ │ │ └── ERC721Holder.test.js │ │ │ └── common │ │ │ │ └── ERC2981.behavior.js │ │ │ └── utils │ │ │ ├── Address.test.js │ │ │ ├── Arrays.test.js │ │ │ ├── Base64.test.js │ │ │ ├── Context.behavior.js │ │ │ ├── Context.test.js │ │ │ ├── Create2.test.js │ │ │ ├── Multicall.test.js │ │ │ ├── Nonces.test.js │ │ │ ├── Pausable.test.js │ │ │ ├── ReentrancyGuard.test.js │ │ │ ├── ShortStrings.t.sol │ │ │ ├── ShortStrings.test.js │ │ │ ├── StorageSlot.test.js │ │ │ ├── Strings.test.js │ │ │ ├── cryptography │ │ │ ├── ECDSA.test.js │ │ │ ├── EIP712.test.js │ │ │ ├── MerkleProof.test.js │ │ │ ├── MessageHashUtils.test.js │ │ │ └── SignatureChecker.test.js │ │ │ ├── introspection │ │ │ ├── ERC165.test.js │ │ │ ├── ERC165Checker.test.js │ │ │ └── SupportsInterface.behavior.js │ │ │ ├── math │ │ │ ├── Math.t.sol │ │ │ ├── Math.test.js │ │ │ ├── SafeCast.test.js │ │ │ └── SignedMath.test.js │ │ │ ├── structs │ │ │ ├── BitMap.test.js │ │ │ ├── Checkpoints.t.sol │ │ │ ├── Checkpoints.test.js │ │ │ ├── DoubleEndedQueue.test.js │ │ │ ├── EnumerableMap.behavior.js │ │ │ ├── EnumerableMap.test.js │ │ │ ├── EnumerableSet.behavior.js │ │ │ └── EnumerableSet.test.js │ │ │ └── types │ │ │ └── Time.test.js │ ├── remappings.txt │ ├── script │ │ ├── Deploy.s.sol │ │ └── Solve.s.sol │ └── src │ │ ├── Challenge.sol │ │ └── SpaceBank.sol │ └── solve.py ├── start.exe ├── README.md ├── challenge.yaml ├── challenge │ └── project │ │ ├── .gitignore │ │ ├── foundry.toml │ │ └── src │ │ └── Challenge.sol └── flag.png ├── wombocombo ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge │ ├── Dockerfile │ ├── challenge.py │ ├── docker-compose.yml │ ├── project │ ├── .gitignore │ ├── foundry.toml │ ├── lib │ │ ├── forge-ctf │ │ │ └── src │ │ │ │ ├── CTFDeployment.sol │ │ │ │ └── CTFSolver.sol │ │ ├── forge-std │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ ├── ci.yml │ │ │ │ │ └── sync.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── foundry.toml │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ ├── package.json │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ └── safeconsole.sol │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── Vm.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ └── fixtures │ │ │ │ └── broadcast.log.json │ │ └── openzeppelin-contracts │ │ │ ├── .codecov.yml │ │ │ ├── .editorconfig │ │ │ ├── .eslintrc │ │ │ ├── .gitattributes │ │ │ ├── .github │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ ├── bug_report.md │ │ │ │ ├── config.yml │ │ │ │ └── feature_request.md │ │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ │ └── workflows │ │ │ │ ├── test.yml │ │ │ │ └── upgradeable.yml │ │ │ ├── .gitignore │ │ │ ├── .mocharc.js │ │ │ ├── .prettierrc │ │ │ ├── .solcover.js │ │ │ ├── .solhint.json │ │ │ ├── CHANGELOG.md │ │ │ ├── CODE_OF_CONDUCT.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── DOCUMENTATION.md │ │ │ ├── GUIDELINES.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── RELEASING.md │ │ │ ├── SECURITY.md │ │ │ ├── audit │ │ │ ├── 2017-03.md │ │ │ └── 2018-10.pdf │ │ │ ├── contracts │ │ │ ├── access │ │ │ │ ├── AccessControl.sol │ │ │ │ ├── AccessControlEnumerable.sol │ │ │ │ ├── IAccessControl.sol │ │ │ │ ├── IAccessControlEnumerable.sol │ │ │ │ ├── Ownable.sol │ │ │ │ └── README.adoc │ │ │ ├── finance │ │ │ │ ├── PaymentSplitter.sol │ │ │ │ ├── README.adoc │ │ │ │ └── VestingWallet.sol │ │ │ ├── governance │ │ │ │ ├── Governor.sol │ │ │ │ ├── IGovernor.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── TimelockController.sol │ │ │ │ ├── compatibility │ │ │ │ │ ├── GovernorCompatibilityBravo.sol │ │ │ │ │ └── IGovernorCompatibilityBravo.sol │ │ │ │ └── extensions │ │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ │ ├── GovernorProposalThreshold.sol │ │ │ │ │ ├── GovernorSettings.sol │ │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ │ ├── GovernorVotes.sol │ │ │ │ │ ├── GovernorVotesComp.sol │ │ │ │ │ ├── GovernorVotesQuorumFraction.sol │ │ │ │ │ └── IGovernorTimelock.sol │ │ │ ├── interfaces │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC1155MetadataURI.sol │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ ├── IERC1271.sol │ │ │ │ ├── IERC1363.sol │ │ │ │ ├── IERC1363Receiver.sol │ │ │ │ ├── IERC1363Spender.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ ├── IERC1820Registry.sol │ │ │ │ ├── IERC20.sol │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ ├── IERC2981.sol │ │ │ │ ├── IERC3156.sol │ │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ │ ├── IERC3156FlashLender.sol │ │ │ │ ├── IERC721.sol │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ ├── IERC777.sol │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ ├── IERC777Sender.sol │ │ │ │ ├── README.adoc │ │ │ │ └── draft-IERC2612.sol │ │ │ ├── metatx │ │ │ │ ├── ERC2771Context.sol │ │ │ │ ├── MinimalForwarder.sol │ │ │ │ └── README.adoc │ │ │ ├── mocks │ │ │ │ ├── AccessControlEnumerableMock.sol │ │ │ │ ├── AccessControlMock.sol │ │ │ │ ├── AddressImpl.sol │ │ │ │ ├── ArraysImpl.sol │ │ │ │ ├── BadBeacon.sol │ │ │ │ ├── BitmapMock.sol │ │ │ │ ├── CallReceiverMock.sol │ │ │ │ ├── ClashingImplementation.sol │ │ │ │ ├── ClonesMock.sol │ │ │ │ ├── ConditionalEscrowMock.sol │ │ │ │ ├── ContextMock.sol │ │ │ │ ├── CountersImpl.sol │ │ │ │ ├── Create2Impl.sol │ │ │ │ ├── DummyImplementation.sol │ │ │ │ ├── ECDSAMock.sol │ │ │ │ ├── EIP712External.sol │ │ │ │ ├── ERC1155BurnableMock.sol │ │ │ │ ├── ERC1155Mock.sol │ │ │ │ ├── ERC1155PausableMock.sol │ │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ │ ├── ERC1155SupplyMock.sol │ │ │ │ ├── ERC1271WalletMock.sol │ │ │ │ ├── ERC165 │ │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ │ └── ERC165NotSupported.sol │ │ │ │ ├── ERC165CheckerMock.sol │ │ │ │ ├── ERC165Mock.sol │ │ │ │ ├── ERC165StorageMock.sol │ │ │ │ ├── ERC1820ImplementerMock.sol │ │ │ │ ├── ERC20BurnableMock.sol │ │ │ │ ├── ERC20CappedMock.sol │ │ │ │ ├── ERC20DecimalsMock.sol │ │ │ │ ├── ERC20FlashMintMock.sol │ │ │ │ ├── ERC20Mock.sol │ │ │ │ ├── ERC20PausableMock.sol │ │ │ │ ├── ERC20PermitMock.sol │ │ │ │ ├── ERC20SnapshotMock.sol │ │ │ │ ├── ERC20VotesCompMock.sol │ │ │ │ ├── ERC20VotesMock.sol │ │ │ │ ├── ERC20WrapperMock.sol │ │ │ │ ├── ERC2771ContextMock.sol │ │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ │ ├── ERC721BurnableMock.sol │ │ │ │ ├── ERC721EnumerableMock.sol │ │ │ │ ├── ERC721Mock.sol │ │ │ │ ├── ERC721PausableMock.sol │ │ │ │ ├── ERC721ReceiverMock.sol │ │ │ │ ├── ERC721URIStorageMock.sol │ │ │ │ ├── ERC777Mock.sol │ │ │ │ ├── ERC777SenderRecipientMock.sol │ │ │ │ ├── EnumerableMapMock.sol │ │ │ │ ├── EnumerableSetMock.sol │ │ │ │ ├── EtherReceiverMock.sol │ │ │ │ ├── GovernorCompMock.sol │ │ │ │ ├── GovernorCompatibilityBravoMock.sol │ │ │ │ ├── GovernorMock.sol │ │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ │ ├── InitializableMock.sol │ │ │ │ ├── MathMock.sol │ │ │ │ ├── MerkleProofWrapper.sol │ │ │ │ ├── MulticallTest.sol │ │ │ │ ├── MulticallTokenMock.sol │ │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ │ ├── OwnableMock.sol │ │ │ │ ├── PausableMock.sol │ │ │ │ ├── PullPaymentMock.sol │ │ │ │ ├── ReentrancyAttack.sol │ │ │ │ ├── ReentrancyMock.sol │ │ │ │ ├── RegressionImplementation.sol │ │ │ │ ├── SafeCastMock.sol │ │ │ │ ├── SafeERC20Helper.sol │ │ │ │ ├── SafeMathMock.sol │ │ │ │ ├── SignatureCheckerMock.sol │ │ │ │ ├── SignedSafeMathMock.sol │ │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ │ ├── StorageSlotMock.sol │ │ │ │ ├── StringsMock.sol │ │ │ │ ├── TimersBlockNumberImpl.sol │ │ │ │ ├── TimersTimestampImpl.sol │ │ │ │ ├── UUPS │ │ │ │ │ └── TestInProd.sol │ │ │ │ ├── compound │ │ │ │ │ └── CompTimelock.sol │ │ │ │ └── wizard │ │ │ │ │ ├── MyGovernor1.sol │ │ │ │ │ ├── MyGovernor2.sol │ │ │ │ │ └── MyGovernor3.sol │ │ │ ├── package.json │ │ │ ├── proxy │ │ │ │ ├── Clones.sol │ │ │ │ ├── ERC1967 │ │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ │ └── ERC1967Upgrade.sol │ │ │ │ ├── Proxy.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── beacon │ │ │ │ │ ├── BeaconProxy.sol │ │ │ │ │ ├── IBeacon.sol │ │ │ │ │ └── UpgradeableBeacon.sol │ │ │ │ ├── transparent │ │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ │ └── utils │ │ │ │ │ ├── Initializable.sol │ │ │ │ │ └── UUPSUpgradeable.sol │ │ │ ├── security │ │ │ │ ├── Pausable.sol │ │ │ │ ├── PullPayment.sol │ │ │ │ ├── README.adoc │ │ │ │ └── ReentrancyGuard.sol │ │ │ ├── token │ │ │ │ ├── ERC1155 │ │ │ │ │ ├── ERC1155.sol │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ │ ├── presets │ │ │ │ │ │ └── ERC1155PresetMinterPauser.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── ERC1155Holder.sol │ │ │ │ │ │ └── ERC1155Receiver.sol │ │ │ │ ├── ERC20 │ │ │ │ │ ├── ERC20.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ │ ├── ERC20Snapshot.sol │ │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ │ ├── ERC20VotesComp.sol │ │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ │ ├── draft-ERC20Permit.sol │ │ │ │ │ │ └── draft-IERC20Permit.sol │ │ │ │ │ ├── presets │ │ │ │ │ │ ├── ERC20PresetFixedSupply.sol │ │ │ │ │ │ └── ERC20PresetMinterPauser.sol │ │ │ │ │ └── utils │ │ │ │ │ │ ├── SafeERC20.sol │ │ │ │ │ │ └── TokenTimelock.sol │ │ │ │ ├── ERC721 │ │ │ │ │ ├── ERC721.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ ├── extensions │ │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ │ └── IERC721Metadata.sol │ │ │ │ │ ├── presets │ │ │ │ │ │ └── ERC721PresetMinterPauserAutoId.sol │ │ │ │ │ └── utils │ │ │ │ │ │ └── ERC721Holder.sol │ │ │ │ └── ERC777 │ │ │ │ │ ├── ERC777.sol │ │ │ │ │ ├── IERC777.sol │ │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ │ ├── IERC777Sender.sol │ │ │ │ │ ├── README.adoc │ │ │ │ │ └── presets │ │ │ │ │ └── ERC777PresetFixedSupply.sol │ │ │ └── utils │ │ │ │ ├── Address.sol │ │ │ │ ├── Arrays.sol │ │ │ │ ├── Context.sol │ │ │ │ ├── Counters.sol │ │ │ │ ├── Create2.sol │ │ │ │ ├── Multicall.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── StorageSlot.sol │ │ │ │ ├── Strings.sol │ │ │ │ ├── Timers.sol │ │ │ │ ├── cryptography │ │ │ │ ├── ECDSA.sol │ │ │ │ ├── MerkleProof.sol │ │ │ │ ├── SignatureChecker.sol │ │ │ │ └── draft-EIP712.sol │ │ │ │ ├── escrow │ │ │ │ ├── ConditionalEscrow.sol │ │ │ │ ├── Escrow.sol │ │ │ │ └── RefundEscrow.sol │ │ │ │ ├── introspection │ │ │ │ ├── ERC165.sol │ │ │ │ ├── ERC165Checker.sol │ │ │ │ ├── ERC165Storage.sol │ │ │ │ ├── ERC1820Implementer.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ └── IERC1820Registry.sol │ │ │ │ ├── math │ │ │ │ ├── Math.sol │ │ │ │ ├── SafeCast.sol │ │ │ │ ├── SafeMath.sol │ │ │ │ └── SignedSafeMath.sol │ │ │ │ └── structs │ │ │ │ ├── BitMaps.sol │ │ │ │ ├── EnumerableMap.sol │ │ │ │ └── EnumerableSet.sol │ │ │ ├── docs │ │ │ ├── antora.yml │ │ │ ├── contract.hbs │ │ │ ├── helpers.js │ │ │ ├── modules │ │ │ │ └── ROOT │ │ │ │ │ ├── images │ │ │ │ │ ├── tally-admin.png │ │ │ │ │ └── tally-vote.png │ │ │ │ │ ├── nav.adoc │ │ │ │ │ └── pages │ │ │ │ │ ├── access-control.adoc │ │ │ │ │ ├── crowdsales.adoc │ │ │ │ │ ├── drafts.adoc │ │ │ │ │ ├── erc1155.adoc │ │ │ │ │ ├── erc20-supply.adoc │ │ │ │ │ ├── erc20.adoc │ │ │ │ │ ├── erc721.adoc │ │ │ │ │ ├── erc777.adoc │ │ │ │ │ ├── extending-contracts.adoc │ │ │ │ │ ├── governance.adoc │ │ │ │ │ ├── index.adoc │ │ │ │ │ ├── releases-stability.adoc │ │ │ │ │ ├── tokens.adoc │ │ │ │ │ ├── upgradeable.adoc │ │ │ │ │ ├── utilities.adoc │ │ │ │ │ └── wizard.adoc │ │ │ └── prelude.hbs │ │ │ ├── hardhat.config.js │ │ │ ├── hardhat │ │ │ └── env-contract.js │ │ │ ├── lib │ │ │ ├── erc4626-tests │ │ │ │ ├── ERC4626.prop.sol │ │ │ │ ├── ERC4626.test.sol │ │ │ │ ├── LICENSE │ │ │ │ └── README.md │ │ │ └── forge-std │ │ │ │ ├── .gitattributes │ │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ ├── ci.yml │ │ │ │ │ └── sync.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── .gitmodules │ │ │ │ ├── LICENSE-APACHE │ │ │ │ ├── LICENSE-MIT │ │ │ │ ├── README.md │ │ │ │ ├── foundry.toml │ │ │ │ ├── lib │ │ │ │ └── ds-test │ │ │ │ │ ├── .github │ │ │ │ │ └── workflows │ │ │ │ │ │ └── build.yml │ │ │ │ │ ├── .gitignore │ │ │ │ │ ├── LICENSE │ │ │ │ │ ├── Makefile │ │ │ │ │ ├── default.nix │ │ │ │ │ ├── demo │ │ │ │ │ └── demo.sol │ │ │ │ │ ├── package.json │ │ │ │ │ └── src │ │ │ │ │ ├── test.sol │ │ │ │ │ └── test.t.sol │ │ │ │ ├── package.json │ │ │ │ ├── scripts │ │ │ │ └── vm.py │ │ │ │ ├── src │ │ │ │ ├── Base.sol │ │ │ │ ├── Script.sol │ │ │ │ ├── StdAssertions.sol │ │ │ │ ├── StdChains.sol │ │ │ │ ├── StdCheats.sol │ │ │ │ ├── StdError.sol │ │ │ │ ├── StdInvariant.sol │ │ │ │ ├── StdJson.sol │ │ │ │ ├── StdMath.sol │ │ │ │ ├── StdStorage.sol │ │ │ │ ├── StdStyle.sol │ │ │ │ ├── StdUtils.sol │ │ │ │ ├── Test.sol │ │ │ │ ├── Vm.sol │ │ │ │ ├── console.sol │ │ │ │ ├── console2.sol │ │ │ │ ├── interfaces │ │ │ │ │ ├── IERC1155.sol │ │ │ │ │ ├── IERC165.sol │ │ │ │ │ ├── IERC20.sol │ │ │ │ │ ├── IERC4626.sol │ │ │ │ │ ├── IERC721.sol │ │ │ │ │ └── IMulticall3.sol │ │ │ │ ├── mocks │ │ │ │ │ ├── MockERC20.sol │ │ │ │ │ └── MockERC721.sol │ │ │ │ └── safeconsole.sol │ │ │ │ └── test │ │ │ │ ├── StdAssertions.t.sol │ │ │ │ ├── StdChains.t.sol │ │ │ │ ├── StdCheats.t.sol │ │ │ │ ├── StdError.t.sol │ │ │ │ ├── StdMath.t.sol │ │ │ │ ├── StdStorage.t.sol │ │ │ │ ├── StdStyle.t.sol │ │ │ │ ├── StdUtils.t.sol │ │ │ │ ├── Vm.t.sol │ │ │ │ ├── compilation │ │ │ │ ├── CompilationScript.sol │ │ │ │ ├── CompilationScriptBase.sol │ │ │ │ ├── CompilationTest.sol │ │ │ │ └── CompilationTestBase.sol │ │ │ │ ├── fixtures │ │ │ │ └── broadcast.log.json │ │ │ │ └── mocks │ │ │ │ ├── MockERC20.t.sol │ │ │ │ └── MockERC721.t.sol │ │ │ ├── logo.svg │ │ │ ├── migrations │ │ │ └── .gitkeep │ │ │ ├── netlify.toml │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── renovate.json │ │ │ ├── scripts │ │ │ ├── gen-nav.js │ │ │ ├── inheritanceOrdering.js │ │ │ ├── migrate-imports.js │ │ │ ├── prepack.sh │ │ │ ├── prepare-contracts-package.sh │ │ │ ├── prepare-docs-solc.js │ │ │ ├── prepare-docs.sh │ │ │ ├── release │ │ │ │ ├── release.sh │ │ │ │ ├── synchronize-versions.js │ │ │ │ ├── update-changelog-release-date.js │ │ │ │ ├── update-comment.js │ │ │ │ └── version.sh │ │ │ └── remove-ignored-artifacts.js │ │ │ └── test │ │ │ ├── TESTING.md │ │ │ ├── access │ │ │ ├── AccessControl.behavior.js │ │ │ ├── AccessControl.test.js │ │ │ ├── AccessControlEnumerable.test.js │ │ │ └── Ownable.test.js │ │ │ ├── finance │ │ │ ├── PaymentSplitter.test.js │ │ │ ├── VestingWallet.behavior.js │ │ │ └── VestingWallet.test.js │ │ │ ├── governance │ │ │ ├── Governor.test.js │ │ │ ├── GovernorWorkflow.behavior.js │ │ │ ├── TimelockController.test.js │ │ │ ├── compatibility │ │ │ │ └── GovernorCompatibilityBravo.test.js │ │ │ └── extensions │ │ │ │ ├── GovernorComp.test.js │ │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ │ ├── GovernorTimelockControl.test.js │ │ │ │ └── GovernorWeightQuorumFraction.test.js │ │ │ ├── helpers │ │ │ ├── eip712.js │ │ │ ├── enums.js │ │ │ └── sign.js │ │ │ ├── metatx │ │ │ ├── ERC2771Context.test.js │ │ │ └── MinimalForwarder.test.js │ │ │ ├── migrate-imports.test.js │ │ │ ├── proxy │ │ │ ├── Clones.behaviour.js │ │ │ ├── Clones.test.js │ │ │ ├── ERC1967 │ │ │ │ └── ERC1967Proxy.test.js │ │ │ ├── Proxy.behaviour.js │ │ │ ├── beacon │ │ │ │ ├── BeaconProxy.test.js │ │ │ │ └── UpgradeableBeacon.test.js │ │ │ ├── transparent │ │ │ │ ├── ProxyAdmin.test.js │ │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ │ └── TransparentUpgradeableProxy.test.js │ │ │ └── utils │ │ │ │ ├── Initializable.test.js │ │ │ │ └── UUPSUpgradeable.test.js │ │ │ ├── security │ │ │ ├── Pausable.test.js │ │ │ ├── PullPayment.test.js │ │ │ └── ReentrancyGuard.test.js │ │ │ ├── token │ │ │ ├── ERC1155 │ │ │ │ ├── ERC1155.behavior.js │ │ │ │ ├── ERC1155.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ │ └── ERC1155Supply.test.js │ │ │ │ ├── presets │ │ │ │ │ └── ERC1155PresetMinterPauser.test.js │ │ │ │ └── utils │ │ │ │ │ └── ERC1155Holder.test.js │ │ │ ├── ERC20 │ │ │ │ ├── ERC20.behavior.js │ │ │ │ ├── ERC20.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC20Burnable.behavior.js │ │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ │ ├── ERC20Capped.behavior.js │ │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ │ ├── ERC20Snapshot.test.js │ │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ │ ├── ERC20VotesComp.test.js │ │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ │ └── draft-ERC20Permit.test.js │ │ │ │ ├── presets │ │ │ │ │ ├── ERC20PresetFixedSupply.test.js │ │ │ │ │ └── ERC20PresetMinterPauser.test.js │ │ │ │ └── utils │ │ │ │ │ ├── SafeERC20.test.js │ │ │ │ │ └── TokenTimelock.test.js │ │ │ ├── ERC721 │ │ │ │ ├── ERC721.behavior.js │ │ │ │ ├── ERC721.test.js │ │ │ │ ├── ERC721Enumerable.test.js │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ │ └── ERC721URIStorage.test.js │ │ │ │ ├── presets │ │ │ │ │ └── ERC721PresetMinterPauserAutoId.test.js │ │ │ │ └── utils │ │ │ │ │ └── ERC721Holder.test.js │ │ │ └── ERC777 │ │ │ │ ├── ERC777.behavior.js │ │ │ │ ├── ERC777.test.js │ │ │ │ └── presets │ │ │ │ └── ERC777PresetFixedSupply.test.js │ │ │ └── utils │ │ │ ├── Address.test.js │ │ │ ├── Arrays.test.js │ │ │ ├── Context.behavior.js │ │ │ ├── Context.test.js │ │ │ ├── Counters.test.js │ │ │ ├── Create2.test.js │ │ │ ├── Multicall.test.js │ │ │ ├── StorageSlot.test.js │ │ │ ├── Strings.test.js │ │ │ ├── TimersBlockNumberImpl.test.js │ │ │ ├── TimersTimestamp.test.js │ │ │ ├── cryptography │ │ │ ├── ECDSA.test.js │ │ │ ├── MerkleProof.test.js │ │ │ ├── SignatureChecker.test.js │ │ │ └── draft-EIP712.test.js │ │ │ ├── escrow │ │ │ ├── ConditionalEscrow.test.js │ │ │ ├── Escrow.behavior.js │ │ │ ├── Escrow.test.js │ │ │ └── RefundEscrow.test.js │ │ │ ├── introspection │ │ │ ├── ERC165.test.js │ │ │ ├── ERC165Checker.test.js │ │ │ ├── ERC165Storage.test.js │ │ │ ├── ERC1820Implementer.test.js │ │ │ └── SupportsInterface.behavior.js │ │ │ ├── math │ │ │ ├── Math.test.js │ │ │ ├── SafeCast.test.js │ │ │ ├── SafeMath.test.js │ │ │ └── SignedSafeMath.test.js │ │ │ └── structs │ │ │ ├── BitMap.test.js │ │ │ ├── EnumerableMap.test.js │ │ │ ├── EnumerableSet.behavior.js │ │ │ └── EnumerableSet.test.js │ ├── remappings.txt │ ├── script │ │ ├── Deploy.s.sol │ │ └── Solve.s.sol │ └── src │ │ ├── Challenge.sol │ │ ├── Forwarder.sol │ │ ├── Staking.sol │ │ ├── Token.sol │ │ └── helpers │ │ └── EIP712WithNonce.sol │ └── solve.py └── xyz ├── .challengeignore ├── README.md ├── challenge.yaml └── challenge ├── Dockerfile ├── challenge.py ├── docker-compose.yml ├── project ├── .gitignore ├── foundry.toml ├── lib │ ├── forge-ctf │ │ └── src │ │ │ ├── CTFDeployment.sol │ │ │ └── CTFSolver.sol │ ├── forge-std │ │ ├── .github │ │ │ └── workflows │ │ │ │ ├── ci.yml │ │ │ │ └── sync.yml │ │ ├── .gitignore │ │ ├── .gitmodules │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── foundry.toml │ │ ├── lib │ │ │ └── ds-test │ │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ └── build.yml │ │ │ │ ├── .gitignore │ │ │ │ ├── LICENSE │ │ │ │ ├── Makefile │ │ │ │ ├── default.nix │ │ │ │ ├── demo │ │ │ │ └── demo.sol │ │ │ │ ├── package.json │ │ │ │ └── src │ │ │ │ ├── test.sol │ │ │ │ └── test.t.sol │ │ ├── package.json │ │ ├── src │ │ │ ├── Base.sol │ │ │ ├── Script.sol │ │ │ ├── StdAssertions.sol │ │ │ ├── StdChains.sol │ │ │ ├── StdCheats.sol │ │ │ ├── StdError.sol │ │ │ ├── StdInvariant.sol │ │ │ ├── StdJson.sol │ │ │ ├── StdMath.sol │ │ │ ├── StdStorage.sol │ │ │ ├── StdStyle.sol │ │ │ ├── StdUtils.sol │ │ │ ├── Test.sol │ │ │ ├── Vm.sol │ │ │ ├── console.sol │ │ │ ├── console2.sol │ │ │ ├── interfaces │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC20.sol │ │ │ │ ├── IERC4626.sol │ │ │ │ ├── IERC721.sol │ │ │ │ └── IMulticall3.sol │ │ │ └── safeconsole.sol │ │ └── test │ │ │ ├── StdAssertions.t.sol │ │ │ ├── StdChains.t.sol │ │ │ ├── StdCheats.t.sol │ │ │ ├── StdError.t.sol │ │ │ ├── StdMath.t.sol │ │ │ ├── StdStorage.t.sol │ │ │ ├── StdStyle.t.sol │ │ │ ├── StdUtils.t.sol │ │ │ ├── Vm.t.sol │ │ │ ├── compilation │ │ │ ├── CompilationScript.sol │ │ │ ├── CompilationScriptBase.sol │ │ │ ├── CompilationTest.sol │ │ │ └── CompilationTestBase.sol │ │ │ └── fixtures │ │ │ └── broadcast.log.json │ └── openzeppelin-contracts │ │ ├── .codecov.yml │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .gitattributes │ │ ├── .github │ │ ├── ISSUE_TEMPLATE │ │ │ ├── bug_report.md │ │ │ ├── config.yml │ │ │ └── feature_request.md │ │ ├── PULL_REQUEST_TEMPLATE.md │ │ ├── actions │ │ │ ├── gas-compare │ │ │ │ └── action.yml │ │ │ └── setup │ │ │ │ └── action.yml │ │ └── workflows │ │ │ ├── changelog.yml │ │ │ ├── checks.yml │ │ │ ├── docs.yml │ │ │ └── upgradeable.yml │ │ ├── .gitignore │ │ ├── .gitmodules │ │ ├── .mocharc.js │ │ ├── .prettierrc │ │ ├── .solcover.js │ │ ├── .solhint.json │ │ ├── CHANGELOG.md │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── DOCUMENTATION.md │ │ ├── GUIDELINES.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── RELEASING.md │ │ ├── SECURITY.md │ │ ├── audit │ │ ├── 2017-03.md │ │ └── 2018-10.pdf │ │ ├── certora │ │ ├── Makefile │ │ ├── README.md │ │ ├── applyHarness.patch │ │ ├── harnesses │ │ │ ├── ERC20VotesHarness.sol │ │ │ ├── WizardControlFirstPriority.sol │ │ │ └── WizardFirstTry.sol │ │ ├── munged │ │ │ └── .gitignore │ │ ├── scripts │ │ │ ├── Governor.sh │ │ │ ├── GovernorCountingSimple-counting.sh │ │ │ ├── WizardControlFirstPriority.sh │ │ │ ├── WizardFirstTry.sh │ │ │ ├── sanity.sh │ │ │ └── verifyAll.sh │ │ └── specs │ │ │ ├── GovernorBase.spec │ │ │ ├── GovernorCountingSimple.spec │ │ │ ├── RulesInProgress.spec │ │ │ └── sanity.spec │ │ ├── contracts │ │ ├── access │ │ │ ├── AccessControl.sol │ │ │ ├── AccessControlCrossChain.sol │ │ │ ├── AccessControlEnumerable.sol │ │ │ ├── IAccessControl.sol │ │ │ ├── IAccessControlEnumerable.sol │ │ │ ├── Ownable.sol │ │ │ ├── Ownable2Step.sol │ │ │ └── README.adoc │ │ ├── crosschain │ │ │ ├── CrossChainEnabled.sol │ │ │ ├── README.adoc │ │ │ ├── amb │ │ │ │ ├── CrossChainEnabledAMB.sol │ │ │ │ └── LibAMB.sol │ │ │ ├── arbitrum │ │ │ │ ├── CrossChainEnabledArbitrumL1.sol │ │ │ │ ├── CrossChainEnabledArbitrumL2.sol │ │ │ │ ├── LibArbitrumL1.sol │ │ │ │ └── LibArbitrumL2.sol │ │ │ ├── errors.sol │ │ │ ├── optimism │ │ │ │ ├── CrossChainEnabledOptimism.sol │ │ │ │ └── LibOptimism.sol │ │ │ └── polygon │ │ │ │ └── CrossChainEnabledPolygonChild.sol │ │ ├── finance │ │ │ ├── PaymentSplitter.sol │ │ │ ├── README.adoc │ │ │ └── VestingWallet.sol │ │ ├── governance │ │ │ ├── Governor.sol │ │ │ ├── IGovernor.sol │ │ │ ├── README.adoc │ │ │ ├── TimelockController.sol │ │ │ ├── compatibility │ │ │ │ ├── GovernorCompatibilityBravo.sol │ │ │ │ └── IGovernorCompatibilityBravo.sol │ │ │ ├── extensions │ │ │ │ ├── GovernorCountingSimple.sol │ │ │ │ ├── GovernorPreventLateQuorum.sol │ │ │ │ ├── GovernorProposalThreshold.sol │ │ │ │ ├── GovernorSettings.sol │ │ │ │ ├── GovernorTimelockCompound.sol │ │ │ │ ├── GovernorTimelockControl.sol │ │ │ │ ├── GovernorVotes.sol │ │ │ │ ├── GovernorVotesComp.sol │ │ │ │ ├── GovernorVotesQuorumFraction.sol │ │ │ │ └── IGovernorTimelock.sol │ │ │ └── utils │ │ │ │ ├── IVotes.sol │ │ │ │ └── Votes.sol │ │ ├── interfaces │ │ │ ├── IERC1155.sol │ │ │ ├── IERC1155MetadataURI.sol │ │ │ ├── IERC1155Receiver.sol │ │ │ ├── IERC1271.sol │ │ │ ├── IERC1363.sol │ │ │ ├── IERC1363Receiver.sol │ │ │ ├── IERC1363Spender.sol │ │ │ ├── IERC165.sol │ │ │ ├── IERC1820Implementer.sol │ │ │ ├── IERC1820Registry.sol │ │ │ ├── IERC20.sol │ │ │ ├── IERC20Metadata.sol │ │ │ ├── IERC2309.sol │ │ │ ├── IERC2981.sol │ │ │ ├── IERC3156.sol │ │ │ ├── IERC3156FlashBorrower.sol │ │ │ ├── IERC3156FlashLender.sol │ │ │ ├── IERC4626.sol │ │ │ ├── IERC721.sol │ │ │ ├── IERC721Enumerable.sol │ │ │ ├── IERC721Metadata.sol │ │ │ ├── IERC721Receiver.sol │ │ │ ├── IERC777.sol │ │ │ ├── IERC777Recipient.sol │ │ │ ├── IERC777Sender.sol │ │ │ ├── README.adoc │ │ │ ├── draft-IERC1822.sol │ │ │ └── draft-IERC2612.sol │ │ ├── metatx │ │ │ ├── ERC2771Context.sol │ │ │ ├── MinimalForwarder.sol │ │ │ └── README.adoc │ │ ├── mocks │ │ │ ├── AccessControlCrossChainMock.sol │ │ │ ├── AccessControlEnumerableMock.sol │ │ │ ├── AccessControlMock.sol │ │ │ ├── AddressImpl.sol │ │ │ ├── ArraysMock.sol │ │ │ ├── BadBeacon.sol │ │ │ ├── Base64Mock.sol │ │ │ ├── BitmapMock.sol │ │ │ ├── CallReceiverMock.sol │ │ │ ├── CheckpointsMock.sol │ │ │ ├── ClashingImplementation.sol │ │ │ ├── ClonesMock.sol │ │ │ ├── ConditionalEscrowMock.sol │ │ │ ├── ContextMock.sol │ │ │ ├── CountersImpl.sol │ │ │ ├── Create2Impl.sol │ │ │ ├── DoubleEndedQueueMock.sol │ │ │ ├── DummyImplementation.sol │ │ │ ├── ECDSAMock.sol │ │ │ ├── EIP712External.sol │ │ │ ├── ERC1155BurnableMock.sol │ │ │ ├── ERC1155Mock.sol │ │ │ ├── ERC1155PausableMock.sol │ │ │ ├── ERC1155ReceiverMock.sol │ │ │ ├── ERC1155SupplyMock.sol │ │ │ ├── ERC1155URIStorageMock.sol │ │ │ ├── ERC1271WalletMock.sol │ │ │ ├── ERC165 │ │ │ │ ├── ERC165InterfacesSupported.sol │ │ │ │ ├── ERC165MaliciousData.sol │ │ │ │ ├── ERC165MissingData.sol │ │ │ │ ├── ERC165NotSupported.sol │ │ │ │ └── ERC165ReturnBomb.sol │ │ │ ├── ERC165CheckerMock.sol │ │ │ ├── ERC165Mock.sol │ │ │ ├── ERC165StorageMock.sol │ │ │ ├── ERC1820ImplementerMock.sol │ │ │ ├── ERC20BurnableMock.sol │ │ │ ├── ERC20CappedMock.sol │ │ │ ├── ERC20DecimalsMock.sol │ │ │ ├── ERC20FlashMintMock.sol │ │ │ ├── ERC20Mock.sol │ │ │ ├── ERC20PausableMock.sol │ │ │ ├── ERC20PermitMock.sol │ │ │ ├── ERC20SnapshotMock.sol │ │ │ ├── ERC20VotesCompMock.sol │ │ │ ├── ERC20VotesMock.sol │ │ │ ├── ERC20WrapperMock.sol │ │ │ ├── ERC2771ContextMock.sol │ │ │ ├── ERC3156FlashBorrowerMock.sol │ │ │ ├── ERC4626Mock.sol │ │ │ ├── ERC721BurnableMock.sol │ │ │ ├── ERC721ConsecutiveEnumerableMock.sol │ │ │ ├── ERC721ConsecutiveMock.sol │ │ │ ├── ERC721EnumerableMock.sol │ │ │ ├── ERC721Mock.sol │ │ │ ├── ERC721PausableMock.sol │ │ │ ├── ERC721ReceiverMock.sol │ │ │ ├── ERC721RoyaltyMock.sol │ │ │ ├── ERC721URIStorageMock.sol │ │ │ ├── ERC721VotesMock.sol │ │ │ ├── ERC777Mock.sol │ │ │ ├── ERC777SenderRecipientMock.sol │ │ │ ├── EnumerableMapMock.sol │ │ │ ├── EnumerableSetMock.sol │ │ │ ├── EtherReceiverMock.sol │ │ │ ├── GovernorCompMock.sol │ │ │ ├── GovernorCompatibilityBravoMock.sol │ │ │ ├── GovernorMock.sol │ │ │ ├── GovernorPreventLateQuorumMock.sol │ │ │ ├── GovernorTimelockCompoundMock.sol │ │ │ ├── GovernorTimelockControlMock.sol │ │ │ ├── GovernorVoteMock.sol │ │ │ ├── GovernorWithParamsMock.sol │ │ │ ├── InitializableMock.sol │ │ │ ├── MathMock.sol │ │ │ ├── MerkleProofWrapper.sol │ │ │ ├── MulticallTest.sol │ │ │ ├── MulticallTokenMock.sol │ │ │ ├── MultipleInheritanceInitializableMocks.sol │ │ │ ├── Ownable2StepMock.sol │ │ │ ├── OwnableMock.sol │ │ │ ├── PausableMock.sol │ │ │ ├── PullPaymentMock.sol │ │ │ ├── ReentrancyAttack.sol │ │ │ ├── ReentrancyMock.sol │ │ │ ├── RegressionImplementation.sol │ │ │ ├── SafeCastMock.sol │ │ │ ├── SafeERC20Helper.sol │ │ │ ├── SafeMathMock.sol │ │ │ ├── SignatureCheckerMock.sol │ │ │ ├── SignedMathMock.sol │ │ │ ├── SignedSafeMathMock.sol │ │ │ ├── SingleInheritanceInitializableMocks.sol │ │ │ ├── StorageSlotMock.sol │ │ │ ├── StringsMock.sol │ │ │ ├── TimersBlockNumberImpl.sol │ │ │ ├── TimersTimestampImpl.sol │ │ │ ├── UUPS │ │ │ │ ├── UUPSLegacy.sol │ │ │ │ └── UUPSUpgradeableMock.sol │ │ │ ├── VotesMock.sol │ │ │ ├── compound │ │ │ │ └── CompTimelock.sol │ │ │ ├── crosschain │ │ │ │ ├── bridges.sol │ │ │ │ └── receivers.sol │ │ │ └── wizard │ │ │ │ ├── MyGovernor1.sol │ │ │ │ ├── MyGovernor2.sol │ │ │ │ └── MyGovernor3.sol │ │ ├── package.json │ │ ├── proxy │ │ │ ├── Clones.sol │ │ │ ├── ERC1967 │ │ │ │ ├── ERC1967Proxy.sol │ │ │ │ └── ERC1967Upgrade.sol │ │ │ ├── Proxy.sol │ │ │ ├── README.adoc │ │ │ ├── beacon │ │ │ │ ├── BeaconProxy.sol │ │ │ │ ├── IBeacon.sol │ │ │ │ └── UpgradeableBeacon.sol │ │ │ ├── transparent │ │ │ │ ├── ProxyAdmin.sol │ │ │ │ └── TransparentUpgradeableProxy.sol │ │ │ └── utils │ │ │ │ ├── Initializable.sol │ │ │ │ └── UUPSUpgradeable.sol │ │ ├── security │ │ │ ├── Pausable.sol │ │ │ ├── PullPayment.sol │ │ │ ├── README.adoc │ │ │ └── ReentrancyGuard.sol │ │ ├── token │ │ │ ├── ERC1155 │ │ │ │ ├── ERC1155.sol │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC1155Receiver.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC1155Burnable.sol │ │ │ │ │ ├── ERC1155Pausable.sol │ │ │ │ │ ├── ERC1155Supply.sol │ │ │ │ │ ├── ERC1155URIStorage.sol │ │ │ │ │ └── IERC1155MetadataURI.sol │ │ │ │ ├── presets │ │ │ │ │ ├── ERC1155PresetMinterPauser.sol │ │ │ │ │ └── README.md │ │ │ │ └── utils │ │ │ │ │ ├── ERC1155Holder.sol │ │ │ │ │ └── ERC1155Receiver.sol │ │ │ ├── ERC20 │ │ │ │ ├── ERC20.sol │ │ │ │ ├── IERC20.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC20Burnable.sol │ │ │ │ │ ├── ERC20Capped.sol │ │ │ │ │ ├── ERC20FlashMint.sol │ │ │ │ │ ├── ERC20Pausable.sol │ │ │ │ │ ├── ERC20Snapshot.sol │ │ │ │ │ ├── ERC20Votes.sol │ │ │ │ │ ├── ERC20VotesComp.sol │ │ │ │ │ ├── ERC20Wrapper.sol │ │ │ │ │ ├── ERC4626.sol │ │ │ │ │ ├── IERC20Metadata.sol │ │ │ │ │ ├── draft-ERC20Permit.sol │ │ │ │ │ └── draft-IERC20Permit.sol │ │ │ │ ├── presets │ │ │ │ │ ├── ERC20PresetFixedSupply.sol │ │ │ │ │ ├── ERC20PresetMinterPauser.sol │ │ │ │ │ └── README.md │ │ │ │ └── utils │ │ │ │ │ ├── SafeERC20.sol │ │ │ │ │ └── TokenTimelock.sol │ │ │ ├── ERC721 │ │ │ │ ├── ERC721.sol │ │ │ │ ├── IERC721.sol │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ ├── README.adoc │ │ │ │ ├── extensions │ │ │ │ │ ├── ERC721Burnable.sol │ │ │ │ │ ├── ERC721Consecutive.sol │ │ │ │ │ ├── ERC721Enumerable.sol │ │ │ │ │ ├── ERC721Pausable.sol │ │ │ │ │ ├── ERC721Royalty.sol │ │ │ │ │ ├── ERC721URIStorage.sol │ │ │ │ │ ├── ERC721Votes.sol │ │ │ │ │ ├── IERC721Enumerable.sol │ │ │ │ │ ├── IERC721Metadata.sol │ │ │ │ │ └── draft-ERC721Votes.sol │ │ │ │ ├── presets │ │ │ │ │ ├── ERC721PresetMinterPauserAutoId.sol │ │ │ │ │ └── README.md │ │ │ │ └── utils │ │ │ │ │ └── ERC721Holder.sol │ │ │ ├── ERC777 │ │ │ │ ├── ERC777.sol │ │ │ │ ├── IERC777.sol │ │ │ │ ├── IERC777Recipient.sol │ │ │ │ ├── IERC777Sender.sol │ │ │ │ ├── README.adoc │ │ │ │ └── presets │ │ │ │ │ └── ERC777PresetFixedSupply.sol │ │ │ └── common │ │ │ │ ├── ERC2981.sol │ │ │ │ └── README.adoc │ │ ├── utils │ │ │ ├── Address.sol │ │ │ ├── Arrays.sol │ │ │ ├── Base64.sol │ │ │ ├── Checkpoints.sol │ │ │ ├── Context.sol │ │ │ ├── Counters.sol │ │ │ ├── Create2.sol │ │ │ ├── Multicall.sol │ │ │ ├── README.adoc │ │ │ ├── StorageSlot.sol │ │ │ ├── Strings.sol │ │ │ ├── Timers.sol │ │ │ ├── cryptography │ │ │ │ ├── ECDSA.sol │ │ │ │ ├── EIP712.sol │ │ │ │ ├── MerkleProof.sol │ │ │ │ ├── SignatureChecker.sol │ │ │ │ └── draft-EIP712.sol │ │ │ ├── escrow │ │ │ │ ├── ConditionalEscrow.sol │ │ │ │ ├── Escrow.sol │ │ │ │ └── RefundEscrow.sol │ │ │ ├── introspection │ │ │ │ ├── ERC165.sol │ │ │ │ ├── ERC165Checker.sol │ │ │ │ ├── ERC165Storage.sol │ │ │ │ ├── ERC1820Implementer.sol │ │ │ │ ├── IERC165.sol │ │ │ │ ├── IERC1820Implementer.sol │ │ │ │ └── IERC1820Registry.sol │ │ │ ├── math │ │ │ │ ├── Math.sol │ │ │ │ ├── SafeCast.sol │ │ │ │ ├── SafeMath.sol │ │ │ │ ├── SignedMath.sol │ │ │ │ └── SignedSafeMath.sol │ │ │ └── structs │ │ │ │ ├── BitMaps.sol │ │ │ │ ├── DoubleEndedQueue.sol │ │ │ │ ├── EnumerableMap.sol │ │ │ │ └── EnumerableSet.sol │ │ └── vendor │ │ │ ├── amb │ │ │ └── IAMB.sol │ │ │ ├── arbitrum │ │ │ ├── IArbSys.sol │ │ │ ├── IBridge.sol │ │ │ ├── IDelayedMessageProvider.sol │ │ │ ├── IInbox.sol │ │ │ └── IOutbox.sol │ │ │ ├── compound │ │ │ ├── ICompoundTimelock.sol │ │ │ └── LICENSE │ │ │ ├── optimism │ │ │ ├── ICrossDomainMessenger.sol │ │ │ └── LICENSE │ │ │ └── polygon │ │ │ └── IFxMessageProcessor.sol │ │ ├── docs │ │ ├── antora.yml │ │ ├── config.js │ │ ├── modules │ │ │ └── ROOT │ │ │ │ ├── images │ │ │ │ ├── tally-admin.png │ │ │ │ └── tally-vote.png │ │ │ │ ├── nav.adoc │ │ │ │ └── pages │ │ │ │ ├── access-control.adoc │ │ │ │ ├── crosschain.adoc │ │ │ │ ├── crowdsales.adoc │ │ │ │ ├── drafts.adoc │ │ │ │ ├── erc1155.adoc │ │ │ │ ├── erc20-supply.adoc │ │ │ │ ├── erc20.adoc │ │ │ │ ├── erc721.adoc │ │ │ │ ├── erc777.adoc │ │ │ │ ├── extending-contracts.adoc │ │ │ │ ├── governance.adoc │ │ │ │ ├── index.adoc │ │ │ │ ├── releases-stability.adoc │ │ │ │ ├── tokens.adoc │ │ │ │ ├── upgradeable.adoc │ │ │ │ ├── utilities.adoc │ │ │ │ └── wizard.adoc │ │ └── templates │ │ │ ├── contract.hbs │ │ │ ├── helpers.js │ │ │ ├── page.hbs │ │ │ └── properties.js │ │ ├── hardhat.config.js │ │ ├── hardhat │ │ ├── env-contract.js │ │ ├── ignore-unreachable-warnings.js │ │ └── skip-foundry-tests.js │ │ ├── lib │ │ ├── erc4626-tests │ │ │ ├── ERC4626.prop.sol │ │ │ ├── ERC4626.test.sol │ │ │ ├── LICENSE │ │ │ └── README.md │ │ └── forge-std │ │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── tests.yml │ │ │ ├── .gitignore │ │ │ ├── .gitmodules │ │ │ ├── LICENSE-APACHE │ │ │ ├── LICENSE-MIT │ │ │ ├── README.md │ │ │ ├── lib │ │ │ └── ds-test │ │ │ │ ├── .gitignore │ │ │ │ ├── LICENSE │ │ │ │ ├── Makefile │ │ │ │ ├── default.nix │ │ │ │ ├── demo │ │ │ │ └── demo.sol │ │ │ │ └── src │ │ │ │ └── test.sol │ │ │ └── src │ │ │ ├── Script.sol │ │ │ ├── StdJson.sol │ │ │ ├── Test.sol │ │ │ ├── Vm.sol │ │ │ ├── console.sol │ │ │ ├── console2.sol │ │ │ └── test │ │ │ ├── Script.t.sol │ │ │ ├── StdAssertions.t.sol │ │ │ ├── StdCheats.t.sol │ │ │ ├── StdError.t.sol │ │ │ ├── StdMath.t.sol │ │ │ ├── StdStorage.t.sol │ │ │ └── fixtures │ │ │ └── broadcast.log.json │ │ ├── logo.svg │ │ ├── netlify.toml │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── renovate.json │ │ ├── scripts │ │ ├── checks │ │ │ ├── compareGasReports.js │ │ │ ├── generation.sh │ │ │ └── inheritance-ordering.js │ │ ├── gen-nav.js │ │ ├── generate │ │ │ ├── format-lines.js │ │ │ ├── run.js │ │ │ └── templates │ │ │ │ ├── Checkpoints.js │ │ │ │ ├── CheckpointsMock.js │ │ │ │ ├── EnumerableMap.js │ │ │ │ ├── EnumerableMapMock.js │ │ │ │ ├── EnumerableSet.js │ │ │ │ ├── EnumerableSetMock.js │ │ │ │ ├── SafeCast.js │ │ │ │ ├── SafeCastMock.js │ │ │ │ └── conversion.js │ │ ├── git-user-config.sh │ │ ├── helpers.js │ │ ├── migrate-imports.js │ │ ├── prepack.sh │ │ ├── prepare-contracts-package.sh │ │ ├── prepare-docs.sh │ │ ├── prepare.sh │ │ ├── release │ │ │ ├── release.sh │ │ │ ├── synchronize-versions.js │ │ │ ├── update-changelog-release-date.js │ │ │ ├── update-comment.js │ │ │ └── version.sh │ │ ├── remove-ignored-artifacts.js │ │ └── update-docs-branch.js │ │ ├── slither.config.json │ │ └── test │ │ ├── TESTING.md │ │ ├── access │ │ ├── AccessControl.behavior.js │ │ ├── AccessControl.test.js │ │ ├── AccessControlCrossChain.test.js │ │ ├── AccessControlEnumerable.test.js │ │ ├── Ownable.test.js │ │ └── Ownable2Step.test.js │ │ ├── crosschain │ │ └── CrossChainEnabled.test.js │ │ ├── finance │ │ ├── PaymentSplitter.test.js │ │ ├── VestingWallet.behavior.js │ │ └── VestingWallet.test.js │ │ ├── governance │ │ ├── Governor.test.js │ │ ├── TimelockController.test.js │ │ ├── compatibility │ │ │ └── GovernorCompatibilityBravo.test.js │ │ ├── extensions │ │ │ ├── GovernorComp.test.js │ │ │ ├── GovernorERC721.test.js │ │ │ ├── GovernorPreventLateQuorum.test.js │ │ │ ├── GovernorTimelockCompound.test.js │ │ │ ├── GovernorTimelockControl.test.js │ │ │ ├── GovernorVotesQuorumFraction.test.js │ │ │ └── GovernorWithParams.test.js │ │ └── utils │ │ │ ├── Votes.behavior.js │ │ │ └── Votes.test.js │ │ ├── helpers │ │ ├── create2.js │ │ ├── crosschain.js │ │ ├── customError.js │ │ ├── eip712.js │ │ ├── enums.js │ │ ├── erc1967.js │ │ ├── governance.js │ │ ├── sign.js │ │ └── txpool.js │ │ ├── metatx │ │ ├── ERC2771Context.test.js │ │ └── MinimalForwarder.test.js │ │ ├── migrate-imports.test.js │ │ ├── proxy │ │ ├── Clones.behaviour.js │ │ ├── Clones.test.js │ │ ├── ERC1967 │ │ │ └── ERC1967Proxy.test.js │ │ ├── Proxy.behaviour.js │ │ ├── beacon │ │ │ ├── BeaconProxy.test.js │ │ │ └── UpgradeableBeacon.test.js │ │ ├── transparent │ │ │ ├── ProxyAdmin.test.js │ │ │ ├── TransparentUpgradeableProxy.behaviour.js │ │ │ └── TransparentUpgradeableProxy.test.js │ │ └── utils │ │ │ ├── Initializable.test.js │ │ │ └── UUPSUpgradeable.test.js │ │ ├── security │ │ ├── Pausable.test.js │ │ ├── PullPayment.test.js │ │ └── ReentrancyGuard.test.js │ │ ├── token │ │ ├── ERC1155 │ │ │ ├── ERC1155.behavior.js │ │ │ ├── ERC1155.test.js │ │ │ ├── extensions │ │ │ │ ├── ERC1155Burnable.test.js │ │ │ │ ├── ERC1155Pausable.test.js │ │ │ │ ├── ERC1155Supply.test.js │ │ │ │ └── ERC1155URIStorage.test.js │ │ │ ├── presets │ │ │ │ └── ERC1155PresetMinterPauser.test.js │ │ │ └── utils │ │ │ │ └── ERC1155Holder.test.js │ │ ├── ERC20 │ │ │ ├── ERC20.behavior.js │ │ │ ├── ERC20.test.js │ │ │ ├── extensions │ │ │ │ ├── ERC20Burnable.behavior.js │ │ │ │ ├── ERC20Burnable.test.js │ │ │ │ ├── ERC20Capped.behavior.js │ │ │ │ ├── ERC20Capped.test.js │ │ │ │ ├── ERC20FlashMint.test.js │ │ │ │ ├── ERC20Pausable.test.js │ │ │ │ ├── ERC20Snapshot.test.js │ │ │ │ ├── ERC20Votes.test.js │ │ │ │ ├── ERC20VotesComp.test.js │ │ │ │ ├── ERC20Wrapper.test.js │ │ │ │ ├── ERC4626.test.js │ │ │ │ └── draft-ERC20Permit.test.js │ │ │ ├── presets │ │ │ │ ├── ERC20PresetFixedSupply.test.js │ │ │ │ └── ERC20PresetMinterPauser.test.js │ │ │ └── utils │ │ │ │ ├── SafeERC20.test.js │ │ │ │ └── TokenTimelock.test.js │ │ ├── ERC721 │ │ │ ├── ERC721.behavior.js │ │ │ ├── ERC721.test.js │ │ │ ├── ERC721Enumerable.test.js │ │ │ ├── extensions │ │ │ │ ├── ERC721Burnable.test.js │ │ │ │ ├── ERC721Consecutive.test.js │ │ │ │ ├── ERC721Pausable.test.js │ │ │ │ ├── ERC721Royalty.test.js │ │ │ │ ├── ERC721URIStorage.test.js │ │ │ │ └── ERC721Votes.test.js │ │ │ ├── presets │ │ │ │ └── ERC721PresetMinterPauserAutoId.test.js │ │ │ └── utils │ │ │ │ └── ERC721Holder.test.js │ │ ├── ERC777 │ │ │ ├── ERC777.behavior.js │ │ │ ├── ERC777.test.js │ │ │ └── presets │ │ │ │ └── ERC777PresetFixedSupply.test.js │ │ └── common │ │ │ └── ERC2981.behavior.js │ │ └── utils │ │ ├── Address.test.js │ │ ├── Arrays.test.js │ │ ├── Base64.test.js │ │ ├── Checkpoints.test.js │ │ ├── Context.behavior.js │ │ ├── Context.test.js │ │ ├── Counters.test.js │ │ ├── Create2.test.js │ │ ├── Multicall.test.js │ │ ├── StorageSlot.test.js │ │ ├── Strings.test.js │ │ ├── TimersBlockNumberImpl.test.js │ │ ├── TimersTimestamp.test.js │ │ ├── cryptography │ │ ├── ECDSA.test.js │ │ ├── EIP712.test.js │ │ ├── MerkleProof.test.js │ │ └── SignatureChecker.test.js │ │ ├── escrow │ │ ├── ConditionalEscrow.test.js │ │ ├── Escrow.behavior.js │ │ ├── Escrow.test.js │ │ └── RefundEscrow.test.js │ │ ├── introspection │ │ ├── ERC165.test.js │ │ ├── ERC165Checker.test.js │ │ ├── ERC165Storage.test.js │ │ ├── ERC1820Implementer.test.js │ │ └── SupportsInterface.behavior.js │ │ ├── math │ │ ├── Math.t.sol │ │ ├── Math.test.js │ │ ├── SafeCast.test.js │ │ ├── SafeMath.test.js │ │ ├── SignedMath.test.js │ │ └── SignedSafeMath.test.js │ │ └── structs │ │ ├── BitMap.test.js │ │ ├── DoubleEndedQueue.test.js │ │ ├── EnumerableMap.behavior.js │ │ ├── EnumerableMap.test.js │ │ ├── EnumerableSet.behavior.js │ │ └── EnumerableSet.test.js ├── remappings.txt ├── script │ ├── Deploy.s.sol │ └── Solve.s.sol └── src │ ├── Challenge.sol │ ├── ERC20Signal.sol │ ├── Manager.sol │ ├── PriceFeed.sol │ ├── Token.sol │ └── helpers │ ├── ManagerAccess.sol │ └── ProtocolMath.sol └── solve.py /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | /artifacts/**/* -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/README.md -------------------------------------------------------------------------------- /alienspaceship/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/.challengeignore -------------------------------------------------------------------------------- /alienspaceship/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/README.md -------------------------------------------------------------------------------- /alienspaceship/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge.yaml -------------------------------------------------------------------------------- /alienspaceship/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/Dockerfile -------------------------------------------------------------------------------- /alienspaceship/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/challenge.py -------------------------------------------------------------------------------- /alienspaceship/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/docker-compose.yml -------------------------------------------------------------------------------- /alienspaceship/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /alienspaceship/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/foundry.toml -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/src/AlienSpaceship.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/src/AlienSpaceship.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /alienspaceship/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/alienspaceship/challenge/solve.py -------------------------------------------------------------------------------- /beef/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/.challengeignore -------------------------------------------------------------------------------- /beef/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/README.md -------------------------------------------------------------------------------- /beef/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge.yaml -------------------------------------------------------------------------------- /beef/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/Dockerfile -------------------------------------------------------------------------------- /beef/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/challenge.py -------------------------------------------------------------------------------- /beef/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/docker-compose.yml -------------------------------------------------------------------------------- /beef/challenge/project/.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/.env -------------------------------------------------------------------------------- /beef/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /beef/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/foundry.toml -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/.github/workflows/ci.yml -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/.github/workflows/sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/.github/workflows/sync.yml -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/default.nix -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/package.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/src/test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/src/test.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IERC165.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IERC165.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IERC20.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IERC721.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IERC721.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/interfaces/IMulticall3.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/interfaces/IMulticall3.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdAssertions.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdAssertions.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.codecov.yml -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.editorconfig -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.eslintrc -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.gitignore -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.gitmodules -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.prettierrc -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/.solcover.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/.solcover.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/CHANGELOG.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/CONTRIBUTING.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/FUNDING.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/FUNDING.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/GUIDELINES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/GUIDELINES.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/LICENSE -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/README.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/RELEASING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/RELEASING.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/SECURITY.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/audits/2017-03.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/audits/2017-03.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/audits/2018-10.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/audits/2018-10.pdf -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/audits/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/audits/README.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/certora/.gitignore: -------------------------------------------------------------------------------- 1 | patched 2 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/certora/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/certora/Makefile -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/certora/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/certora/README.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/certora/run.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/certora/run.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/certora/specs.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/certora/specs.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/docs/README.md -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/docs/antora.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/docs/antora.yml -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/docs/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/docs/config.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/foundry.toml -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/hardhat.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/hardhat.config.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/logo.svg -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/netlify.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/netlify.toml -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/package-lock.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/package.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/remappings.txt -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/renovate.json -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/requirements.txt: -------------------------------------------------------------------------------- 1 | certora-cli==4.13.1 2 | -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/scripts/gen-nav.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/scripts/gen-nav.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/scripts/helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/scripts/helpers.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/scripts/prepack.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/scripts/prepack.sh -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/solhint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/solhint.config.js -------------------------------------------------------------------------------- /beef/challenge/project/lib/openzeppelin-contracts/test/TESTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/lib/openzeppelin-contracts/test/TESTING.md -------------------------------------------------------------------------------- /beef/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/remappings.txt -------------------------------------------------------------------------------- /beef/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /beef/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /beef/challenge/project/src/Beef.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/src/Beef.sol -------------------------------------------------------------------------------- /beef/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /beef/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/challenge/solve.py -------------------------------------------------------------------------------- /beef/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/beef/image.png -------------------------------------------------------------------------------- /dutch-2/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/.challengeignore -------------------------------------------------------------------------------- /dutch-2/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/README.md -------------------------------------------------------------------------------- /dutch-2/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge.yaml -------------------------------------------------------------------------------- /dutch-2/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/Dockerfile -------------------------------------------------------------------------------- /dutch-2/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/challenge.py -------------------------------------------------------------------------------- /dutch-2/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/docker-compose.yml -------------------------------------------------------------------------------- /dutch-2/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /dutch-2/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/foundry.toml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/.github/workflows/ci.yml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/.github/workflows/sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/.github/workflows/sync.yml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/default.nix -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/package.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/src/test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/src/test.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC165.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC165.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC20.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC721.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/interfaces/IERC721.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdAssertions.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdAssertions.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/.gas-snapshot -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.gitattributes: -------------------------------------------------------------------------------- 1 | .gas-snapshot linguist-language=Julia -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.github/workflows/tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/.github/workflows/tests.yml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.gitignore: -------------------------------------------------------------------------------- 1 | /cache 2 | /node_modules 3 | /out -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/.gitmodules -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.prettierignore: -------------------------------------------------------------------------------- 1 | lib -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/.prettierrc -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/.vscode/settings.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/LICENSE -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/README.md -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/foundry.toml -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/Makefile -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/default.nix -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/demo/demo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/demo/demo.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/package.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/lib/ds-test/src/test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/lib/ds-test/src/test.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/package-lock.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/package.json -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/auth/Auth.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/auth/Auth.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/auth/Owned.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/auth/Owned.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/Auth.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/Auth.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/CREATE3.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/CREATE3.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/DSTestPlus.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/DSTestPlus.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ERC1155.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ERC1155.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ERC20.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ERC20.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ERC4626.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ERC4626.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ERC6909.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ERC6909.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ERC721.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ERC721.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/LibString.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/LibString.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/MerkleProofLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/MerkleProofLib.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/Owned.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/Owned.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/ReentrancyGuard.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/ReentrancyGuard.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/RolesAuthority.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/RolesAuthority.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/SSTORE2.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/SSTORE2.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/SafeCastLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/SafeCastLib.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/WETH.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/WETH.t.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/test/utils/Hevm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/test/utils/Hevm.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/ERC1155.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/ERC1155.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/ERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/ERC20.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/ERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/ERC4626.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/ERC6909.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/ERC6909.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/ERC721.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/ERC721.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/tokens/WETH.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/tokens/WETH.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/utils/CREATE3.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/utils/CREATE3.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/utils/LibString.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/utils/LibString.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/utils/SSTORE2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/utils/SSTORE2.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/utils/SafeCastLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/utils/SafeCastLib.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/lib/solmate/src/utils/SignedWadMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/lib/solmate/src/utils/SignedWadMath.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/remappings.txt -------------------------------------------------------------------------------- /dutch-2/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/src/AuctionManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/src/AuctionManager.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/src/Token.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/src/Token.sol -------------------------------------------------------------------------------- /dutch-2/challenge/project/src/util/Math.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/project/src/util/Math.sol -------------------------------------------------------------------------------- /dutch-2/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch-2/challenge/solve.py -------------------------------------------------------------------------------- /dutch/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/.challengeignore -------------------------------------------------------------------------------- /dutch/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/README.md -------------------------------------------------------------------------------- /dutch/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge.yaml -------------------------------------------------------------------------------- /dutch/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/Dockerfile -------------------------------------------------------------------------------- /dutch/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/challenge.py -------------------------------------------------------------------------------- /dutch/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/docker-compose.yml -------------------------------------------------------------------------------- /dutch/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ 4 | .build/ -------------------------------------------------------------------------------- /dutch/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/.github/workflows/ci.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/.github/workflows/sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/.github/workflows/sync.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/default.nix -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/src/test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/src/test.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/interfaces/IERC165.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/interfaces/IERC165.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/interfaces/IERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/interfaces/IERC20.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/interfaces/IERC721.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/interfaces/IERC721.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdAssertions.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdAssertions.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.editorconfig -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.eslintignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.eslintrc.js -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.gas-snapshot -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | custom: https://etherscan.io/address/0x07bF3CDA34aA78d92949bbDce31520714AB5b228 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.github/dependabot.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.github/workflows/checks.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.github/workflows/checks.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.gitignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.prettierignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.prettierrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.prettierrc.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.solhint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.solhint.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/.solhintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/.solhintignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/CHANGELOG.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/CONTRIBUTING.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/GUIDELINES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/GUIDELINES.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/LICENSE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/MANIFEST.in: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/MANIFEST.in -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/SECURITY.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/ape-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/ape-config.yaml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/create-util/.eslintrc.js -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/create-util/.gitignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/.solcover.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | skipFiles: ["mocks/"], 3 | }; 4 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/create-util/LICENSE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/create-util/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/create-util/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/create-util/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/erc4626-tests/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/erc4626-tests/LICENSE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/erc4626-tests/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/erc4626-tests/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/.dockerignore: -------------------------------------------------------------------------------- 1 | out 2 | cache 3 | *.txt -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/.gas-snapshot -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/.gitignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/Dockerfile.deploy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/Dockerfile.deploy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/openzeppelin-contracts/.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/openzeppelin-contracts/certora/munged/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/lib/openzeppelin-contracts/migrations/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/remappings.txt -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/src/Merkle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/src/Merkle.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/murky/src/Xorkle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/murky/src/Xorkle.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/openzeppelin-contracts/certora/.gitignore: -------------------------------------------------------------------------------- 1 | patched 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/openzeppelin-contracts/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/openzeppelin-contracts/requirements.txt: -------------------------------------------------------------------------------- 1 | certora-cli==4.13.1 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/.editorconfig -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.gitattributes: -------------------------------------------------------------------------------- 1 | lib/** linguist-vendored 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/.gitignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/.prettierignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.prettierrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/.prettierrc.yml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/.solhint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/.solhint.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/CHANGELOG.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/LICENSE.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/pnpm-lock.yaml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/src/Helpers.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/src/Helpers.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/src/PRBTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/src/PRBTest.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/prb-test/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/prb-test/src/Vm.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/.gas-snapshot -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/.gitignore -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/LICENSE.txt -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/ext/woke/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/ext/woke/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/ext/woke/utils.py -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/js/solady.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/js/solady.d.ts -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/js/solady.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/js/solady.js -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/js/solady.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/js/solady.test.js -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/logo.svg -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/package-lock.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/src/Milady.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/src/Milady.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/Base64.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/Base64.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/ECDSA.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/ECDSA.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/EIP712.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/EIP712.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/ERC20.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/ERC20.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/ERC721.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/ERC721.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/LibBit.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/LibBit.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/LibMap.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/LibMap.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/LibRLP.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/LibRLP.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/LibZip.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/LibZip.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solady/test/WETH.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solady/test/WETH.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solidity-bytes-utils/.gitattribute: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solidity-bytes-utils/.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solidity-bytes-utils/.soliumignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | coverageEnv 3 | .git 4 | test 5 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/.gas-snapshot -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.gitattributes: -------------------------------------------------------------------------------- 1 | .gas-snapshot linguist-language=Julia -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.gitignore: -------------------------------------------------------------------------------- 1 | /cache 2 | /node_modules 3 | /out -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/.gitmodules -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.prettierignore: -------------------------------------------------------------------------------- 1 | lib -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/.prettierrc -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/LICENSE -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/README.md -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/foundry.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/solmate/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/solmate/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/lib/utils/VyperDeployer.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/lib/utils/VyperDeployer.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/package.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/pyproject.toml -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/remappings.txt -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/renovate.json -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/scripts/compile.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/scripts/compile.py -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/auth/AccessControl.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/auth/AccessControl.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/auth/Ownable.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/auth/Ownable.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/auth/Ownable2Step.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/auth/Ownable2Step.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/extensions/ERC2981.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/extensions/ERC2981.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/extensions/ERC4626.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/extensions/ERC4626.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/tokens/ERC1155.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/tokens/ERC1155.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/tokens/ERC20.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/tokens/ERC20.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/tokens/ERC721.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/tokens/ERC721.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/Base64.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/Base64.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/Create2Address.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/Create2Address.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/CreateAddress.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/CreateAddress.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/ECDSA.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/ECDSA.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/Math.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/Math.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/src/utils/Multicall.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/src/utils/Multicall.vy -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/auth/Ownable.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/auth/Ownable.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/auth/Ownable2Step.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/auth/Ownable2Step.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/tokens/ERC1155.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/tokens/ERC1155.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/tokens/ERC20.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/tokens/ERC20.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/tokens/ERC721.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/tokens/ERC721.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/Base64.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/utils/Base64.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/ECDSA.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/utils/ECDSA.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/Math.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/utils/Math.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/Multicall.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/test/utils/Multicall.t.sol -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/scripts/elements.js: -------------------------------------------------------------------------------- 1 | module.exports = 2 | "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".split(""); 3 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/scripts/multiproof-bad-elements.js: -------------------------------------------------------------------------------- 1 | module.exports = "$£!?àéèç@%&#=+-:;_()/`*°~".split(""); 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/scripts/multiproof-bad-indices.js: -------------------------------------------------------------------------------- 1 | module.exports = [0, 2, 5]; 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/test/utils/scripts/multiproof-indices.js: -------------------------------------------------------------------------------- 1 | module.exports = [0, 1, 4]; 2 | -------------------------------------------------------------------------------- /dutch/challenge/project/lib/snekmate/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/lib/snekmate/yarn.lock -------------------------------------------------------------------------------- /dutch/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/remappings.txt -------------------------------------------------------------------------------- /dutch/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /dutch/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /dutch/challenge/project/src/Art.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/Art.vy -------------------------------------------------------------------------------- /dutch/challenge/project/src/Auction.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/Auction.vy -------------------------------------------------------------------------------- /dutch/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /dutch/challenge/project/src/WETH.vy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/WETH.vy -------------------------------------------------------------------------------- /dutch/challenge/project/src/interfaces/IAuction.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/interfaces/IAuction.sol -------------------------------------------------------------------------------- /dutch/challenge/project/src/interfaces/IWETH.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/project/src/interfaces/IWETH.sol -------------------------------------------------------------------------------- /dutch/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/dutch/challenge/solve.py -------------------------------------------------------------------------------- /greedy-sad-man/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/.challengeignore -------------------------------------------------------------------------------- /greedy-sad-man/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/README.md -------------------------------------------------------------------------------- /greedy-sad-man/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge.yaml -------------------------------------------------------------------------------- /greedy-sad-man/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/Dockerfile -------------------------------------------------------------------------------- /greedy-sad-man/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/challenge.py -------------------------------------------------------------------------------- /greedy-sad-man/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/docker-compose.yml -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/.gitignore -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/Scarb.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/Scarb.lock -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/Scarb.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/Scarb.toml -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/deploy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/deploy.py -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/solve.py -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/src/greedy_sad_man.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/src/greedy_sad_man.cairo -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/src/lib.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/src/lib.cairo -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/src/solution.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/src/solution.cairo -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/src/storage_array.cairo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/src/storage_array.cairo -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/target/CACHEDIR.TAG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/target/CACHEDIR.TAG -------------------------------------------------------------------------------- /greedy-sad-man/challenge/project/target/dev/ctf.sierra.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/project/target/dev/ctf.sierra.json -------------------------------------------------------------------------------- /greedy-sad-man/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/greedy-sad-man/challenge/solve.py -------------------------------------------------------------------------------- /spacebank/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/.challengeignore -------------------------------------------------------------------------------- /spacebank/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/README.md -------------------------------------------------------------------------------- /spacebank/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge.yaml -------------------------------------------------------------------------------- /spacebank/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/Dockerfile -------------------------------------------------------------------------------- /spacebank/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/challenge.py -------------------------------------------------------------------------------- /spacebank/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/docker-compose.yml -------------------------------------------------------------------------------- /spacebank/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /spacebank/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/foundry.toml -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/lib/ds-test/default.nix -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/openzeppelin-contracts/.eslintrc -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/openzeppelin-contracts/.gitignore -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/openzeppelin-contracts/LICENSE -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/openzeppelin-contracts/README.md -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/certora/.gitignore: -------------------------------------------------------------------------------- 1 | patched 2 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/lib/openzeppelin-contracts/logo.svg -------------------------------------------------------------------------------- /spacebank/challenge/project/lib/openzeppelin-contracts/requirements.txt: -------------------------------------------------------------------------------- 1 | certora-cli==4.13.1 2 | -------------------------------------------------------------------------------- /spacebank/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/remappings.txt -------------------------------------------------------------------------------- /spacebank/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /spacebank/challenge/project/src/SpaceBank.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/project/src/SpaceBank.sol -------------------------------------------------------------------------------- /spacebank/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/spacebank/challenge/solve.py -------------------------------------------------------------------------------- /start.exe/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/start.exe/README.md -------------------------------------------------------------------------------- /start.exe/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/start.exe/challenge.yaml -------------------------------------------------------------------------------- /start.exe/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /start.exe/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/start.exe/challenge/project/foundry.toml -------------------------------------------------------------------------------- /start.exe/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/start.exe/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /start.exe/flag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/start.exe/flag.png -------------------------------------------------------------------------------- /wombocombo/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/.challengeignore -------------------------------------------------------------------------------- /wombocombo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/README.md -------------------------------------------------------------------------------- /wombocombo/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge.yaml -------------------------------------------------------------------------------- /wombocombo/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/Dockerfile -------------------------------------------------------------------------------- /wombocombo/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/challenge.py -------------------------------------------------------------------------------- /wombocombo/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/docker-compose.yml -------------------------------------------------------------------------------- /wombocombo/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /wombocombo/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/foundry.toml -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/openzeppelin-contracts/.eslintrc -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/openzeppelin-contracts/LICENSE -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/openzeppelin-contracts/README.md -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/lib/forge-std/.gitattributes: -------------------------------------------------------------------------------- 1 | src/Vm.sol linguist-generated 2 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/lib/openzeppelin-contracts/logo.svg -------------------------------------------------------------------------------- /wombocombo/challenge/project/lib/openzeppelin-contracts/migrations/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /wombocombo/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/remappings.txt -------------------------------------------------------------------------------- /wombocombo/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/src/Forwarder.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/src/Forwarder.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/src/Staking.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/src/Staking.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/src/Token.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/src/Token.sol -------------------------------------------------------------------------------- /wombocombo/challenge/project/src/helpers/EIP712WithNonce.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/project/src/helpers/EIP712WithNonce.sol -------------------------------------------------------------------------------- /wombocombo/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/wombocombo/challenge/solve.py -------------------------------------------------------------------------------- /xyz/.challengeignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/.challengeignore -------------------------------------------------------------------------------- /xyz/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/README.md -------------------------------------------------------------------------------- /xyz/challenge.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge.yaml -------------------------------------------------------------------------------- /xyz/challenge/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/Dockerfile -------------------------------------------------------------------------------- /xyz/challenge/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/challenge.py -------------------------------------------------------------------------------- /xyz/challenge/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/docker-compose.yml -------------------------------------------------------------------------------- /xyz/challenge/project/.gitignore: -------------------------------------------------------------------------------- 1 | broadcast/ 2 | cache/ 3 | out/ -------------------------------------------------------------------------------- /xyz/challenge/project/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/foundry.toml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-ctf/src/CTFDeployment.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-ctf/src/CTFDeployment.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-ctf/src/CTFSolver.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-ctf/src/CTFSolver.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/.github/workflows/ci.yml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/.github/workflows/sync.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/.github/workflows/sync.yml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea 5 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/.gitmodules -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/LICENSE-APACHE -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/LICENSE-MIT -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/README.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/foundry.toml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | /cache/ 5 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/LICENSE -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/Makefile -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/default.nix -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/demo/demo.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/package.json -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/src/test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/src/test.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/lib/ds-test/src/test.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/package.json -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/Base.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/Base.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/Script.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/Script.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdAssertions.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdAssertions.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdChains.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdChains.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdCheats.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdCheats.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdError.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdError.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdInvariant.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdInvariant.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdJson.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdJson.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdMath.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdStorage.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdStorage.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdStyle.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdStyle.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/StdUtils.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/StdUtils.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/Test.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/Vm.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/Vm.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/console.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/console.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/console2.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/console2.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/interfaces/IERC1155.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/interfaces/IERC165.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/interfaces/IERC165.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/interfaces/IERC20.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/interfaces/IERC20.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/interfaces/IERC4626.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/interfaces/IERC721.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/interfaces/IERC721.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/src/safeconsole.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/src/safeconsole.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdAssertions.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdAssertions.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdChains.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdChains.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdCheats.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdCheats.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdError.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdError.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdMath.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdStorage.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdStorage.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdStyle.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdStyle.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/StdUtils.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/StdUtils.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/forge-std/test/Vm.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/forge-std/test/Vm.t.sol -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.codecov.yml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.editorconfig -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.eslintrc -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.gitignore -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.gitmodules -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.mocharc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | require: 'hardhat/register', 3 | timeout: 4000, 4 | }; 5 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.prettierrc -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.solcover.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.solcover.js -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/.solhint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/.solhint.json -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/CHANGELOG.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/CONTRIBUTING.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/DOCUMENTATION.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/DOCUMENTATION.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/GUIDELINES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/GUIDELINES.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/LICENSE -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/README.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/RELEASING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/RELEASING.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/SECURITY.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/audit/2017-03.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/audit/2017-03.md -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/certora/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/certora/Makefile -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/certora/munged/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/docs/antora.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/docs/antora.yml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/docs/config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/docs/config.js -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/lib/forge-std/.gitignore: -------------------------------------------------------------------------------- 1 | cache/ 2 | out/ 3 | .vscode 4 | .idea -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/.gitignore: -------------------------------------------------------------------------------- 1 | /.dapple 2 | /build 3 | /out 4 | -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/logo.svg -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/netlify.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/netlify.toml -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/package.json -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/renovate.json -------------------------------------------------------------------------------- /xyz/challenge/project/lib/openzeppelin-contracts/test/TESTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/lib/openzeppelin-contracts/test/TESTING.md -------------------------------------------------------------------------------- /xyz/challenge/project/remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/remappings.txt -------------------------------------------------------------------------------- /xyz/challenge/project/script/Deploy.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/script/Deploy.s.sol -------------------------------------------------------------------------------- /xyz/challenge/project/script/Solve.s.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/script/Solve.s.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/Challenge.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/Challenge.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/ERC20Signal.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/ERC20Signal.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/Manager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/Manager.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/PriceFeed.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/PriceFeed.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/Token.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/Token.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/helpers/ManagerAccess.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/helpers/ManagerAccess.sol -------------------------------------------------------------------------------- /xyz/challenge/project/src/helpers/ProtocolMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/project/src/helpers/ProtocolMath.sol -------------------------------------------------------------------------------- /xyz/challenge/solve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenZeppelin/ctf-2024/HEAD/xyz/challenge/solve.py --------------------------------------------------------------------------------